From b36ccd5bbe81c3ee967a85024456c4aa1a2cf3d5 Mon Sep 17 00:00:00 2001 From: Jeff Williams Date: Sun, 22 Jan 2023 08:46:16 -0800 Subject: [PATCH] refactor: move augment module to `@jsdoc/doclet` package --- packages/jsdoc-doclet/index.js | 2 ++ packages/{jsdoc/lib/jsdoc => jsdoc-doclet/lib}/augment.js | 3 +-- .../specs/jsdoc => jsdoc-doclet/test/specs}/augment.js | 5 +++-- packages/jsdoc-doclet/test/specs/index.js | 8 ++++++++ packages/jsdoc/cli.js | 4 ++-- packages/jsdoc/test/fixtures/augmentstag4.js | 2 +- packages/jsdoc/test/helpers/jsdoc.js | 2 +- packages/jsdoc/test/specs/documentation/mixins.js | 4 ++-- 8 files changed, 20 insertions(+), 10 deletions(-) rename packages/{jsdoc/lib/jsdoc => jsdoc-doclet/lib}/augment.js (99%) rename packages/{jsdoc/test/specs/jsdoc => jsdoc-doclet/test/specs}/augment.js (96%) diff --git a/packages/jsdoc-doclet/index.js b/packages/jsdoc-doclet/index.js index 2146d38e..98baae75 100644 --- a/packages/jsdoc-doclet/index.js +++ b/packages/jsdoc-doclet/index.js @@ -13,12 +13,14 @@ See the License for the specific language governing permissions and limitations under the License. */ +const augment = require('./lib/augment'); const { combine: combineDoclets, Doclet } = require('./lib/doclet'); const { Package } = require('./lib/package'); const { resolveBorrows } = require('./lib/borrow'); const schema = require('./lib/schema'); module.exports = { + augment, combineDoclets, Doclet, Package, diff --git a/packages/jsdoc/lib/jsdoc/augment.js b/packages/jsdoc-doclet/lib/augment.js similarity index 99% rename from packages/jsdoc/lib/jsdoc/augment.js rename to packages/jsdoc-doclet/lib/augment.js index 487eabdc..9700821c 100644 --- a/packages/jsdoc/lib/jsdoc/augment.js +++ b/packages/jsdoc-doclet/lib/augment.js @@ -15,12 +15,11 @@ */ /** * Provides methods for augmenting the parse results based on their content. - * @module jsdoc/augment */ const _ = require('lodash'); +const { combine: combineDoclets } = require('./doclet'); const { fromParts, SCOPE, toParts } = require('@jsdoc/core').name; -const { combineDoclets } = require('@jsdoc/doclet'); function mapDependencies(index, propertyName) { const dependencies = {}; diff --git a/packages/jsdoc/test/specs/jsdoc/augment.js b/packages/jsdoc-doclet/test/specs/augment.js similarity index 96% rename from packages/jsdoc/test/specs/jsdoc/augment.js rename to packages/jsdoc-doclet/test/specs/augment.js index 48cf34bd..96d95cb6 100644 --- a/packages/jsdoc/test/specs/jsdoc/augment.js +++ b/packages/jsdoc-doclet/test/specs/augment.js @@ -13,10 +13,11 @@ See the License for the specific language governing permissions and limitations under the License. */ -describe('jsdoc/augment', () => { +/* global jsdoc */ +describe('@jsdoc/doclet/lib/augment', () => { // TODO: more tests - const augment = require('jsdoc/augment'); + const augment = require('../../lib/augment'); it('should exist', () => { expect(augment).toBeObject(); diff --git a/packages/jsdoc-doclet/test/specs/index.js b/packages/jsdoc-doclet/test/specs/index.js index 87776ae7..bc988278 100644 --- a/packages/jsdoc-doclet/test/specs/index.js +++ b/packages/jsdoc-doclet/test/specs/index.js @@ -20,6 +20,14 @@ describe('@jsdoc/doclet', () => { expect(doclet).toBeObject(); }); + describe('augment', () => { + it('is lib/augment', () => { + const augment = require('../../lib/augment'); + + expect(doclet.augment).toBe(augment); + }); + }); + describe('combineDoclets', () => { it('is lib/doclet.combine', () => { const { combine } = require('../../lib/doclet'); diff --git a/packages/jsdoc/cli.js b/packages/jsdoc/cli.js index 3dcce3e2..fdb94e3a 100644 --- a/packages/jsdoc/cli.js +++ b/packages/jsdoc/cli.js @@ -338,7 +338,7 @@ module.exports = (() => { cli.parseFiles = () => { // Must be imported after the config is loaded. - const augment = require('jsdoc/augment'); + const { augmentAll } = require('@jsdoc/doclet').augment; let docs; const env = dependencies.get('env'); @@ -353,7 +353,7 @@ module.exports = (() => { docs.push(packageDocs); log.debug('Adding inherited symbols, mixins, and interface implementations...'); - augment.augmentAll(docs); + augmentAll(docs); log.debug('Adding borrowed doclets...'); resolveBorrows(docs); log.debug('Post-processing complete.'); diff --git a/packages/jsdoc/test/fixtures/augmentstag4.js b/packages/jsdoc/test/fixtures/augmentstag4.js index 41a4f5d4..fa9c6f4b 100644 --- a/packages/jsdoc/test/fixtures/augmentstag4.js +++ b/packages/jsdoc/test/fixtures/augmentstag4.js @@ -1,4 +1,4 @@ -// used to test jsdoc/augments module directly +// used to test @jsdoc/doclet.augments module directly /** * @constructor diff --git a/packages/jsdoc/test/helpers/jsdoc.js b/packages/jsdoc/test/helpers/jsdoc.js index 04db4dca..90e8e6f4 100644 --- a/packages/jsdoc/test/helpers/jsdoc.js +++ b/packages/jsdoc/test/helpers/jsdoc.js @@ -13,7 +13,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -const { augmentAll } = require('jsdoc/augment'); +const { augmentAll } = require('@jsdoc/doclet').augment; const { createParser } = require('jsdoc/src/parser'); const { EventBus } = require('@jsdoc/util'); const fs = require('fs'); diff --git a/packages/jsdoc/test/specs/documentation/mixins.js b/packages/jsdoc/test/specs/documentation/mixins.js index 82f31919..8b59590d 100644 --- a/packages/jsdoc/test/specs/documentation/mixins.js +++ b/packages/jsdoc/test/specs/documentation/mixins.js @@ -13,14 +13,14 @@ See the License for the specific language governing permissions and limitations under the License. */ -const augment = require('jsdoc/augment'); +const { augmentAll } = require('@jsdoc/doclet').augment; const { SCOPE } = require('@jsdoc/core').name; describe('mixins', () => { describe('doclet augmentation', () => { const docSet = jsdoc.getDocSetFromFile('test/fixtures/mixintag2.js'); - augment.augmentAll(docSet.doclets); + augmentAll(docSet.doclets); it('should create doclets for mixed-in symbols', () => { const objectBMethod = docSet.getByLongname('module:mixy.ObjectB.method')[0];