eslint-plugin-jsdoc 48.8.3 → 48.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -60,6 +60,7 @@ var _sortTags = _interopRequireDefault(require("./rules/sortTags.cjs"));
60
60
  var _tagLines = _interopRequireDefault(require("./rules/tagLines.cjs"));
61
61
  var _textEscaping = _interopRequireDefault(require("./rules/textEscaping.cjs"));
62
62
  var _validTypes = _interopRequireDefault(require("./rules/validTypes.cjs"));
63
+ var _getJsdocProcessorPlugin = require("./getJsdocProcessorPlugin.cjs");
63
64
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
64
65
  /**
65
66
  * @type {import('eslint').ESLint.Plugin & {
@@ -272,6 +273,83 @@ index.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRulese
272
273
  index.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');
273
274
  index.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');
274
275
  index.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');
276
+ index.configs.examples = /** @type {import('eslint').Linter.FlatConfig[]} */[{
277
+ name: 'jsdoc/examples/processor',
278
+ files: ['**/*.js'],
279
+ plugins: {
280
+ examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)()
281
+ },
282
+ processor: 'examples/examples'
283
+ }, {
284
+ name: 'jsdoc/examples/rules',
285
+ files: ['**/*.md/*.js'],
286
+ rules: {
287
+ // "always" newline rule at end unlikely in sample code
288
+ 'eol-last': 0,
289
+ // Wouldn't generally expect example paths to resolve relative to JS file
290
+ 'import/no-unresolved': 0,
291
+ // Snippets likely too short to always include import/export info
292
+ 'import/unambiguous': 0,
293
+ 'jsdoc/require-file-overview': 0,
294
+ // The end of a multiline comment would end the comment the example is in.
295
+ 'jsdoc/require-jsdoc': 0,
296
+ // Unlikely to have inadvertent debugging within examples
297
+ 'no-console': 0,
298
+ // Often wish to start `@example` code after newline; also may use
299
+ // empty lines for spacing
300
+ 'no-multiple-empty-lines': 0,
301
+ // Many variables in examples will be `undefined`
302
+ 'no-undef': 0,
303
+ // Common to define variables for clarity without always using them
304
+ 'no-unused-vars': 0,
305
+ // See import/no-unresolved
306
+ 'node/no-missing-import': 0,
307
+ 'node/no-missing-require': 0,
308
+ // Can generally look nicer to pad a little even if code imposes more stringency
309
+ 'padded-blocks': 0
310
+ }
311
+ }];
312
+ index.configs['default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */[{
313
+ files: ['**/*.js'],
314
+ name: 'jsdoc/default-expressions/processor',
315
+ plugins: {
316
+ examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)({
317
+ checkDefaults: true,
318
+ checkParams: true,
319
+ checkProperties: true
320
+ })
321
+ },
322
+ processor: 'examples/examples'
323
+ }, {
324
+ name: 'jsdoc/default-expressions/rules',
325
+ files: ['**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties'],
326
+ rules: {
327
+ ...index.configs.examples[1].rules,
328
+ 'chai-friendly/no-unused-expressions': 0,
329
+ 'no-empty-function': 0,
330
+ 'no-new': 0,
331
+ 'no-unused-expressions': 0,
332
+ quotes: ['error', 'double'],
333
+ semi: ['error', 'never'],
334
+ strict: 0
335
+ }
336
+ }];
337
+ index.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */[{
338
+ name: 'jsdoc/examples-and-default-expressions',
339
+ plugins: {
340
+ examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)({
341
+ checkDefaults: true,
342
+ checkParams: true,
343
+ checkProperties: true
344
+ })
345
+ }
346
+ }, ...index.configs.examples.map(config => {
347
+ delete config.plugins;
348
+ return config;
349
+ }), ...index.configs['default-expressions'].map(config => {
350
+ delete config.plugins;
351
+ return config;
352
+ })];
275
353
  var _default = exports.default = index;
276
354
  module.exports = exports.default;
277
355
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["_checkAccess","_interopRequireDefault","require","_checkAlignment","_checkExamples","_checkIndentation","_checkLineAlignment","_checkParamNames","_checkPropertyNames","_checkSyntax","_checkTagNames","_checkTemplateNames","_checkTypes","_checkValues","_convertToJsdocComments","_emptyTags","_implementsOnClasses","_importsAsDependencies","_informativeDocs","_matchDescription","_matchName","_multilineBlocks","_noBadBlocks","_noBlankBlockDescriptions","_noBlankBlocks","_noDefaults","_noMissingSyntax","_noMultiAsterisks","_noRestrictedSyntax","_noTypes","_noUndefinedTypes","_requireAsteriskPrefix","_requireDescription","_requireDescriptionCompleteSentence","_requireExample","_requireFileOverview","_requireHyphenBeforeParamDescription","_requireJsdoc","_requireParam","_requireParamDescription","_requireParamName","_requireParamType","_requireProperty","_requirePropertyDescription","_requirePropertyName","_requirePropertyType","_requireReturns","_requireReturnsCheck","_requireReturnsDescription","_requireReturnsType","_requireTemplate","_requireThrows","_requireYields","_requireYieldsCheck","_sortTags","_tagLines","_textEscaping","_validTypes","e","__esModule","default","index","configs","rules","checkAccess","checkAlignment","checkExamples","checkIndentation","checkLineAlignment","checkParamNames","checkPropertyNames","checkSyntax","checkTagNames","checkTemplateNames","checkTypes","checkValues","convertToJsdocComments","emptyTags","implementsOnClasses","importsAsDependencies","informativeDocs","matchDescription","matchName","multilineBlocks","noBadBlocks","noBlankBlockDescriptions","noBlankBlocks","noDefaults","noMissingSyntax","noMultiAsterisks","noRestrictedSyntax","noTypes","noUndefinedTypes","requireAsteriskPrefix","requireDescription","requireDescriptionCompleteSentence","requireExample","requireFileOverview","requireHyphenBeforeParamDescription","requireJsdoc","requireParam","requireParamDescription","requireParamName","requireParamType","requireProperty","requirePropertyDescription","requirePropertyName","requirePropertyType","requireReturns","requireReturnsCheck","requireReturnsDescription","requireReturnsType","requireTemplate","requireThrows","requireYields","requireYieldsCheck","sortTags","tagLines","textEscaping","validTypes","createRecommendedRuleset","warnOrError","flatName","name","plugins","jsdoc","createRecommendedTypeScriptRuleset","ruleset","typed","createRecommendedTypeScriptFlavorRuleset","Error","recommended","_default","exports","module"],"sources":["../src/index.js"],"sourcesContent":["import checkAccess from './rules/checkAccess.js';\nimport checkAlignment from './rules/checkAlignment.js';\nimport checkExamples from './rules/checkExamples.js';\nimport checkIndentation from './rules/checkIndentation.js';\nimport checkLineAlignment from './rules/checkLineAlignment.js';\nimport checkParamNames from './rules/checkParamNames.js';\nimport checkPropertyNames from './rules/checkPropertyNames.js';\nimport checkSyntax from './rules/checkSyntax.js';\nimport checkTagNames from './rules/checkTagNames.js';\nimport checkTemplateNames from './rules/checkTemplateNames.js';\nimport checkTypes from './rules/checkTypes.js';\nimport checkValues from './rules/checkValues.js';\nimport convertToJsdocComments from './rules/convertToJsdocComments.js';\nimport emptyTags from './rules/emptyTags.js';\nimport implementsOnClasses from './rules/implementsOnClasses.js';\nimport importsAsDependencies from './rules/importsAsDependencies.js';\nimport informativeDocs from './rules/informativeDocs.js';\nimport matchDescription from './rules/matchDescription.js';\nimport matchName from './rules/matchName.js';\nimport multilineBlocks from './rules/multilineBlocks.js';\nimport noBadBlocks from './rules/noBadBlocks.js';\nimport noBlankBlockDescriptions from './rules/noBlankBlockDescriptions.js';\nimport noBlankBlocks from './rules/noBlankBlocks.js';\nimport noDefaults from './rules/noDefaults.js';\nimport noMissingSyntax from './rules/noMissingSyntax.js';\nimport noMultiAsterisks from './rules/noMultiAsterisks.js';\nimport noRestrictedSyntax from './rules/noRestrictedSyntax.js';\nimport noTypes from './rules/noTypes.js';\nimport noUndefinedTypes from './rules/noUndefinedTypes.js';\nimport requireAsteriskPrefix from './rules/requireAsteriskPrefix.js';\nimport requireDescription from './rules/requireDescription.js';\nimport requireDescriptionCompleteSentence from './rules/requireDescriptionCompleteSentence.js';\nimport requireExample from './rules/requireExample.js';\nimport requireFileOverview from './rules/requireFileOverview.js';\nimport requireHyphenBeforeParamDescription from './rules/requireHyphenBeforeParamDescription.js';\nimport requireJsdoc from './rules/requireJsdoc.js';\nimport requireParam from './rules/requireParam.js';\nimport requireParamDescription from './rules/requireParamDescription.js';\nimport requireParamName from './rules/requireParamName.js';\nimport requireParamType from './rules/requireParamType.js';\nimport requireProperty from './rules/requireProperty.js';\nimport requirePropertyDescription from './rules/requirePropertyDescription.js';\nimport requirePropertyName from './rules/requirePropertyName.js';\nimport requirePropertyType from './rules/requirePropertyType.js';\nimport requireReturns from './rules/requireReturns.js';\nimport requireReturnsCheck from './rules/requireReturnsCheck.js';\nimport requireReturnsDescription from './rules/requireReturnsDescription.js';\nimport requireReturnsType from './rules/requireReturnsType.js';\nimport requireTemplate from './rules/requireTemplate.js';\nimport requireThrows from './rules/requireThrows.js';\nimport requireYields from './rules/requireYields.js';\nimport requireYieldsCheck from './rules/requireYieldsCheck.js';\nimport sortTags from './rules/sortTags.js';\nimport tagLines from './rules/tagLines.js';\nimport textEscaping from './rules/textEscaping.js';\nimport validTypes from './rules/validTypes.js';\n\n/**\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<\n * \"recommended\"|\"recommended-error\"|\"recommended-typescript\"|\n * \"recommended-typescript-error\"|\"recommended-typescript-flavor\"|\n * \"recommended-typescript-flavor-error\"|\"flat/recommended\"|\n * \"flat/recommended-error\"|\"flat/recommended-typescript\"|\n * \"flat/recommended-typescript-error\"|\n * \"flat/recommended-typescript-flavor\"|\n * \"flat/recommended-typescript-flavor-error\",\n * import('eslint').Linter.FlatConfig\n * >\n * }}\n */\nconst index = {\n // @ts-expect-error Ok\n configs: {},\n rules: {\n 'check-access': checkAccess,\n 'check-alignment': checkAlignment,\n 'check-examples': checkExamples,\n 'check-indentation': checkIndentation,\n 'check-line-alignment': checkLineAlignment,\n 'check-param-names': checkParamNames,\n 'check-property-names': checkPropertyNames,\n 'check-syntax': checkSyntax,\n 'check-tag-names': checkTagNames,\n 'check-template-names': checkTemplateNames,\n 'check-types': checkTypes,\n 'check-values': checkValues,\n 'convert-to-jsdoc-comments': convertToJsdocComments,\n 'empty-tags': emptyTags,\n 'implements-on-classes': implementsOnClasses,\n 'imports-as-dependencies': importsAsDependencies,\n 'informative-docs': informativeDocs,\n 'match-description': matchDescription,\n 'match-name': matchName,\n 'multiline-blocks': multilineBlocks,\n 'no-bad-blocks': noBadBlocks,\n 'no-blank-block-descriptions': noBlankBlockDescriptions,\n 'no-blank-blocks': noBlankBlocks,\n 'no-defaults': noDefaults,\n 'no-missing-syntax': noMissingSyntax,\n 'no-multi-asterisks': noMultiAsterisks,\n 'no-restricted-syntax': noRestrictedSyntax,\n 'no-types': noTypes,\n 'no-undefined-types': noUndefinedTypes,\n 'require-asterisk-prefix': requireAsteriskPrefix,\n 'require-description': requireDescription,\n 'require-description-complete-sentence': requireDescriptionCompleteSentence,\n 'require-example': requireExample,\n 'require-file-overview': requireFileOverview,\n 'require-hyphen-before-param-description': requireHyphenBeforeParamDescription,\n 'require-jsdoc': requireJsdoc,\n 'require-param': requireParam,\n 'require-param-description': requireParamDescription,\n 'require-param-name': requireParamName,\n 'require-param-type': requireParamType,\n 'require-property': requireProperty,\n 'require-property-description': requirePropertyDescription,\n 'require-property-name': requirePropertyName,\n 'require-property-type': requirePropertyType,\n 'require-returns': requireReturns,\n 'require-returns-check': requireReturnsCheck,\n 'require-returns-description': requireReturnsDescription,\n 'require-returns-type': requireReturnsType,\n 'require-template': requireTemplate,\n 'require-throws': requireThrows,\n 'require-yields': requireYields,\n 'require-yields-check': requireYieldsCheck,\n 'sort-tags': sortTags,\n 'tag-lines': tagLines,\n 'text-escaping': textEscaping,\n 'valid-types': validTypes,\n },\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {name: 'jsdoc/' + flatName} : {}),\n // @ts-expect-error Ok\n plugins:\n flatName ? {\n jsdoc: index,\n } : [\n 'jsdoc',\n ],\n rules: {\n 'jsdoc/check-access': warnOrError,\n 'jsdoc/check-alignment': warnOrError,\n 'jsdoc/check-examples': 'off',\n 'jsdoc/check-indentation': 'off',\n 'jsdoc/check-line-alignment': 'off',\n 'jsdoc/check-param-names': warnOrError,\n 'jsdoc/check-property-names': warnOrError,\n 'jsdoc/check-syntax': 'off',\n 'jsdoc/check-tag-names': warnOrError,\n 'jsdoc/check-template-names': 'off',\n 'jsdoc/check-types': warnOrError,\n 'jsdoc/check-values': warnOrError,\n 'jsdoc/convert-to-jsdoc-comments': 'off',\n 'jsdoc/empty-tags': warnOrError,\n 'jsdoc/implements-on-classes': warnOrError,\n 'jsdoc/imports-as-dependencies': 'off',\n 'jsdoc/informative-docs': 'off',\n 'jsdoc/match-description': 'off',\n 'jsdoc/match-name': 'off',\n 'jsdoc/multiline-blocks': warnOrError,\n 'jsdoc/no-bad-blocks': 'off',\n 'jsdoc/no-blank-block-descriptions': 'off',\n 'jsdoc/no-blank-blocks': 'off',\n 'jsdoc/no-defaults': warnOrError,\n 'jsdoc/no-missing-syntax': 'off',\n 'jsdoc/no-multi-asterisks': warnOrError,\n 'jsdoc/no-restricted-syntax': 'off',\n 'jsdoc/no-types': 'off',\n 'jsdoc/no-undefined-types': warnOrError,\n 'jsdoc/require-asterisk-prefix': 'off',\n 'jsdoc/require-description': 'off',\n 'jsdoc/require-description-complete-sentence': 'off',\n 'jsdoc/require-example': 'off',\n 'jsdoc/require-file-overview': 'off',\n 'jsdoc/require-hyphen-before-param-description': 'off',\n 'jsdoc/require-jsdoc': warnOrError,\n 'jsdoc/require-param': warnOrError,\n 'jsdoc/require-param-description': warnOrError,\n 'jsdoc/require-param-name': warnOrError,\n 'jsdoc/require-param-type': warnOrError,\n 'jsdoc/require-property': warnOrError,\n 'jsdoc/require-property-description': warnOrError,\n 'jsdoc/require-property-name': warnOrError,\n 'jsdoc/require-property-type': warnOrError,\n 'jsdoc/require-returns': warnOrError,\n 'jsdoc/require-returns-check': warnOrError,\n 'jsdoc/require-returns-description': warnOrError,\n 'jsdoc/require-returns-type': warnOrError,\n 'jsdoc/require-template': 'off',\n 'jsdoc/require-throws': 'off',\n 'jsdoc/require-yields': warnOrError,\n 'jsdoc/require-yields-check': warnOrError,\n 'jsdoc/sort-tags': 'off',\n 'jsdoc/tag-lines': warnOrError,\n 'jsdoc/text-escaping': 'off',\n 'jsdoc/valid-types': warnOrError,\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/check-tag-names': [\n warnOrError, {\n typed: true,\n },\n ],\n 'jsdoc/no-types': warnOrError,\n 'jsdoc/no-undefined-types': 'off',\n 'jsdoc/require-param-type': 'off',\n 'jsdoc/require-property-type': 'off',\n 'jsdoc/require-returns-type': 'off',\n /* eslint-enable indent */\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/no-undefined-types': 'off',\n /* eslint-enable indent */\n },\n };\n};\n\n/* c8 ignore next 3 -- TS */\nif (!index.configs) {\n throw new Error('TypeScript guard');\n}\n\nindex.configs.recommended = createRecommendedRuleset('warn');\nindex.configs['recommended-error'] = createRecommendedRuleset('error');\nindex.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');\nindex.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');\nindex.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');\nindex.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');\n\nindex.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');\nindex.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');\nindex.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');\nindex.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');\nindex.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');\nindex.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');\n\nexport default index;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.cjs","names":["_checkAccess","_interopRequireDefault","require","_checkAlignment","_checkExamples","_checkIndentation","_checkLineAlignment","_checkParamNames","_checkPropertyNames","_checkSyntax","_checkTagNames","_checkTemplateNames","_checkTypes","_checkValues","_convertToJsdocComments","_emptyTags","_implementsOnClasses","_importsAsDependencies","_informativeDocs","_matchDescription","_matchName","_multilineBlocks","_noBadBlocks","_noBlankBlockDescriptions","_noBlankBlocks","_noDefaults","_noMissingSyntax","_noMultiAsterisks","_noRestrictedSyntax","_noTypes","_noUndefinedTypes","_requireAsteriskPrefix","_requireDescription","_requireDescriptionCompleteSentence","_requireExample","_requireFileOverview","_requireHyphenBeforeParamDescription","_requireJsdoc","_requireParam","_requireParamDescription","_requireParamName","_requireParamType","_requireProperty","_requirePropertyDescription","_requirePropertyName","_requirePropertyType","_requireReturns","_requireReturnsCheck","_requireReturnsDescription","_requireReturnsType","_requireTemplate","_requireThrows","_requireYields","_requireYieldsCheck","_sortTags","_tagLines","_textEscaping","_validTypes","_getJsdocProcessorPlugin","e","__esModule","default","index","configs","rules","checkAccess","checkAlignment","checkExamples","checkIndentation","checkLineAlignment","checkParamNames","checkPropertyNames","checkSyntax","checkTagNames","checkTemplateNames","checkTypes","checkValues","convertToJsdocComments","emptyTags","implementsOnClasses","importsAsDependencies","informativeDocs","matchDescription","matchName","multilineBlocks","noBadBlocks","noBlankBlockDescriptions","noBlankBlocks","noDefaults","noMissingSyntax","noMultiAsterisks","noRestrictedSyntax","noTypes","noUndefinedTypes","requireAsteriskPrefix","requireDescription","requireDescriptionCompleteSentence","requireExample","requireFileOverview","requireHyphenBeforeParamDescription","requireJsdoc","requireParam","requireParamDescription","requireParamName","requireParamType","requireProperty","requirePropertyDescription","requirePropertyName","requirePropertyType","requireReturns","requireReturnsCheck","requireReturnsDescription","requireReturnsType","requireTemplate","requireThrows","requireYields","requireYieldsCheck","sortTags","tagLines","textEscaping","validTypes","createRecommendedRuleset","warnOrError","flatName","name","plugins","jsdoc","createRecommendedTypeScriptRuleset","ruleset","typed","createRecommendedTypeScriptFlavorRuleset","Error","recommended","examples","files","getJsdocProcessorPlugin","processor","checkDefaults","checkParams","checkProperties","quotes","semi","strict","map","config","_default","exports","module"],"sources":["../src/index.js"],"sourcesContent":["import checkAccess from './rules/checkAccess.js';\nimport checkAlignment from './rules/checkAlignment.js';\nimport checkExamples from './rules/checkExamples.js';\nimport checkIndentation from './rules/checkIndentation.js';\nimport checkLineAlignment from './rules/checkLineAlignment.js';\nimport checkParamNames from './rules/checkParamNames.js';\nimport checkPropertyNames from './rules/checkPropertyNames.js';\nimport checkSyntax from './rules/checkSyntax.js';\nimport checkTagNames from './rules/checkTagNames.js';\nimport checkTemplateNames from './rules/checkTemplateNames.js';\nimport checkTypes from './rules/checkTypes.js';\nimport checkValues from './rules/checkValues.js';\nimport convertToJsdocComments from './rules/convertToJsdocComments.js';\nimport emptyTags from './rules/emptyTags.js';\nimport implementsOnClasses from './rules/implementsOnClasses.js';\nimport importsAsDependencies from './rules/importsAsDependencies.js';\nimport informativeDocs from './rules/informativeDocs.js';\nimport matchDescription from './rules/matchDescription.js';\nimport matchName from './rules/matchName.js';\nimport multilineBlocks from './rules/multilineBlocks.js';\nimport noBadBlocks from './rules/noBadBlocks.js';\nimport noBlankBlockDescriptions from './rules/noBlankBlockDescriptions.js';\nimport noBlankBlocks from './rules/noBlankBlocks.js';\nimport noDefaults from './rules/noDefaults.js';\nimport noMissingSyntax from './rules/noMissingSyntax.js';\nimport noMultiAsterisks from './rules/noMultiAsterisks.js';\nimport noRestrictedSyntax from './rules/noRestrictedSyntax.js';\nimport noTypes from './rules/noTypes.js';\nimport noUndefinedTypes from './rules/noUndefinedTypes.js';\nimport requireAsteriskPrefix from './rules/requireAsteriskPrefix.js';\nimport requireDescription from './rules/requireDescription.js';\nimport requireDescriptionCompleteSentence from './rules/requireDescriptionCompleteSentence.js';\nimport requireExample from './rules/requireExample.js';\nimport requireFileOverview from './rules/requireFileOverview.js';\nimport requireHyphenBeforeParamDescription from './rules/requireHyphenBeforeParamDescription.js';\nimport requireJsdoc from './rules/requireJsdoc.js';\nimport requireParam from './rules/requireParam.js';\nimport requireParamDescription from './rules/requireParamDescription.js';\nimport requireParamName from './rules/requireParamName.js';\nimport requireParamType from './rules/requireParamType.js';\nimport requireProperty from './rules/requireProperty.js';\nimport requirePropertyDescription from './rules/requirePropertyDescription.js';\nimport requirePropertyName from './rules/requirePropertyName.js';\nimport requirePropertyType from './rules/requirePropertyType.js';\nimport requireReturns from './rules/requireReturns.js';\nimport requireReturnsCheck from './rules/requireReturnsCheck.js';\nimport requireReturnsDescription from './rules/requireReturnsDescription.js';\nimport requireReturnsType from './rules/requireReturnsType.js';\nimport requireTemplate from './rules/requireTemplate.js';\nimport requireThrows from './rules/requireThrows.js';\nimport requireYields from './rules/requireYields.js';\nimport requireYieldsCheck from './rules/requireYieldsCheck.js';\nimport sortTags from './rules/sortTags.js';\nimport tagLines from './rules/tagLines.js';\nimport textEscaping from './rules/textEscaping.js';\nimport validTypes from './rules/validTypes.js';\n\nimport { getJsdocProcessorPlugin } from './getJsdocProcessorPlugin.js';\n\n/**\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<\n * \"recommended\"|\"recommended-error\"|\"recommended-typescript\"|\n * \"recommended-typescript-error\"|\"recommended-typescript-flavor\"|\n * \"recommended-typescript-flavor-error\"|\"flat/recommended\"|\n * \"flat/recommended-error\"|\"flat/recommended-typescript\"|\n * \"flat/recommended-typescript-error\"|\n * \"flat/recommended-typescript-flavor\"|\n * \"flat/recommended-typescript-flavor-error\",\n * import('eslint').Linter.FlatConfig\n * >\n * }}\n */\nconst index = {\n // @ts-expect-error Ok\n configs: {},\n rules: {\n 'check-access': checkAccess,\n 'check-alignment': checkAlignment,\n 'check-examples': checkExamples,\n 'check-indentation': checkIndentation,\n 'check-line-alignment': checkLineAlignment,\n 'check-param-names': checkParamNames,\n 'check-property-names': checkPropertyNames,\n 'check-syntax': checkSyntax,\n 'check-tag-names': checkTagNames,\n 'check-template-names': checkTemplateNames,\n 'check-types': checkTypes,\n 'check-values': checkValues,\n 'convert-to-jsdoc-comments': convertToJsdocComments,\n 'empty-tags': emptyTags,\n 'implements-on-classes': implementsOnClasses,\n 'imports-as-dependencies': importsAsDependencies,\n 'informative-docs': informativeDocs,\n 'match-description': matchDescription,\n 'match-name': matchName,\n 'multiline-blocks': multilineBlocks,\n 'no-bad-blocks': noBadBlocks,\n 'no-blank-block-descriptions': noBlankBlockDescriptions,\n 'no-blank-blocks': noBlankBlocks,\n 'no-defaults': noDefaults,\n 'no-missing-syntax': noMissingSyntax,\n 'no-multi-asterisks': noMultiAsterisks,\n 'no-restricted-syntax': noRestrictedSyntax,\n 'no-types': noTypes,\n 'no-undefined-types': noUndefinedTypes,\n 'require-asterisk-prefix': requireAsteriskPrefix,\n 'require-description': requireDescription,\n 'require-description-complete-sentence': requireDescriptionCompleteSentence,\n 'require-example': requireExample,\n 'require-file-overview': requireFileOverview,\n 'require-hyphen-before-param-description': requireHyphenBeforeParamDescription,\n 'require-jsdoc': requireJsdoc,\n 'require-param': requireParam,\n 'require-param-description': requireParamDescription,\n 'require-param-name': requireParamName,\n 'require-param-type': requireParamType,\n 'require-property': requireProperty,\n 'require-property-description': requirePropertyDescription,\n 'require-property-name': requirePropertyName,\n 'require-property-type': requirePropertyType,\n 'require-returns': requireReturns,\n 'require-returns-check': requireReturnsCheck,\n 'require-returns-description': requireReturnsDescription,\n 'require-returns-type': requireReturnsType,\n 'require-template': requireTemplate,\n 'require-throws': requireThrows,\n 'require-yields': requireYields,\n 'require-yields-check': requireYieldsCheck,\n 'sort-tags': sortTags,\n 'tag-lines': tagLines,\n 'text-escaping': textEscaping,\n 'valid-types': validTypes,\n },\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {name: 'jsdoc/' + flatName} : {}),\n // @ts-expect-error Ok\n plugins:\n flatName ? {\n jsdoc: index,\n } : [\n 'jsdoc',\n ],\n rules: {\n 'jsdoc/check-access': warnOrError,\n 'jsdoc/check-alignment': warnOrError,\n 'jsdoc/check-examples': 'off',\n 'jsdoc/check-indentation': 'off',\n 'jsdoc/check-line-alignment': 'off',\n 'jsdoc/check-param-names': warnOrError,\n 'jsdoc/check-property-names': warnOrError,\n 'jsdoc/check-syntax': 'off',\n 'jsdoc/check-tag-names': warnOrError,\n 'jsdoc/check-template-names': 'off',\n 'jsdoc/check-types': warnOrError,\n 'jsdoc/check-values': warnOrError,\n 'jsdoc/convert-to-jsdoc-comments': 'off',\n 'jsdoc/empty-tags': warnOrError,\n 'jsdoc/implements-on-classes': warnOrError,\n 'jsdoc/imports-as-dependencies': 'off',\n 'jsdoc/informative-docs': 'off',\n 'jsdoc/match-description': 'off',\n 'jsdoc/match-name': 'off',\n 'jsdoc/multiline-blocks': warnOrError,\n 'jsdoc/no-bad-blocks': 'off',\n 'jsdoc/no-blank-block-descriptions': 'off',\n 'jsdoc/no-blank-blocks': 'off',\n 'jsdoc/no-defaults': warnOrError,\n 'jsdoc/no-missing-syntax': 'off',\n 'jsdoc/no-multi-asterisks': warnOrError,\n 'jsdoc/no-restricted-syntax': 'off',\n 'jsdoc/no-types': 'off',\n 'jsdoc/no-undefined-types': warnOrError,\n 'jsdoc/require-asterisk-prefix': 'off',\n 'jsdoc/require-description': 'off',\n 'jsdoc/require-description-complete-sentence': 'off',\n 'jsdoc/require-example': 'off',\n 'jsdoc/require-file-overview': 'off',\n 'jsdoc/require-hyphen-before-param-description': 'off',\n 'jsdoc/require-jsdoc': warnOrError,\n 'jsdoc/require-param': warnOrError,\n 'jsdoc/require-param-description': warnOrError,\n 'jsdoc/require-param-name': warnOrError,\n 'jsdoc/require-param-type': warnOrError,\n 'jsdoc/require-property': warnOrError,\n 'jsdoc/require-property-description': warnOrError,\n 'jsdoc/require-property-name': warnOrError,\n 'jsdoc/require-property-type': warnOrError,\n 'jsdoc/require-returns': warnOrError,\n 'jsdoc/require-returns-check': warnOrError,\n 'jsdoc/require-returns-description': warnOrError,\n 'jsdoc/require-returns-type': warnOrError,\n 'jsdoc/require-template': 'off',\n 'jsdoc/require-throws': 'off',\n 'jsdoc/require-yields': warnOrError,\n 'jsdoc/require-yields-check': warnOrError,\n 'jsdoc/sort-tags': 'off',\n 'jsdoc/tag-lines': warnOrError,\n 'jsdoc/text-escaping': 'off',\n 'jsdoc/valid-types': warnOrError,\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/check-tag-names': [\n warnOrError, {\n typed: true,\n },\n ],\n 'jsdoc/no-types': warnOrError,\n 'jsdoc/no-undefined-types': 'off',\n 'jsdoc/require-param-type': 'off',\n 'jsdoc/require-property-type': 'off',\n 'jsdoc/require-returns-type': 'off',\n /* eslint-enable indent */\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/no-undefined-types': 'off',\n /* eslint-enable indent */\n },\n };\n};\n\n/* c8 ignore next 3 -- TS */\nif (!index.configs) {\n throw new Error('TypeScript guard');\n}\n\nindex.configs.recommended = createRecommendedRuleset('warn');\nindex.configs['recommended-error'] = createRecommendedRuleset('error');\nindex.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');\nindex.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');\nindex.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');\nindex.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');\n\nindex.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');\nindex.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');\nindex.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');\nindex.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');\nindex.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');\nindex.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');\n\nindex.configs.examples = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\n {\n name: 'jsdoc/examples/processor',\n files: ['**/*.js'],\n plugins: {\n examples: getJsdocProcessorPlugin()\n },\n processor: 'examples/examples',\n },\n {\n name: 'jsdoc/examples/rules',\n files: ['**/*.md/*.js'],\n rules: {\n // \"always\" newline rule at end unlikely in sample code\n 'eol-last': 0,\n\n // Wouldn't generally expect example paths to resolve relative to JS file\n 'import/no-unresolved': 0,\n\n // Snippets likely too short to always include import/export info\n 'import/unambiguous': 0,\n\n 'jsdoc/require-file-overview': 0,\n\n // The end of a multiline comment would end the comment the example is in.\n 'jsdoc/require-jsdoc': 0,\n\n // Unlikely to have inadvertent debugging within examples\n 'no-console': 0,\n\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n 'no-multiple-empty-lines': 0,\n\n // Many variables in examples will be `undefined`\n 'no-undef': 0,\n\n // Common to define variables for clarity without always using them\n 'no-unused-vars': 0,\n\n // See import/no-unresolved\n 'node/no-missing-import': 0,\n 'node/no-missing-require': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n 'padded-blocks': 0,\n }\n }\n]);\n\nindex.configs['default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\n {\n files: ['**/*.js'],\n name: 'jsdoc/default-expressions/processor',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true\n })\n },\n processor: 'examples/examples'\n },\n {\n name: 'jsdoc/default-expressions/rules',\n files: ['**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties'],\n rules: {\n ...index.configs.examples[1].rules,\n 'chai-friendly/no-unused-expressions': 0,\n 'no-empty-function': 0,\n 'no-new': 0,\n 'no-unused-expressions': 0,\n quotes: [\n 'error', 'double',\n ],\n semi: [\n 'error', 'never',\n ],\n strict: 0\n },\n }\n]);\n\nindex.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\n {\n name: 'jsdoc/examples-and-default-expressions',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true\n })\n },\n },\n ...index.configs.examples.map((config) => {\n delete config.plugins;\n return config;\n }),\n ...index.configs['default-expressions'].map((config) => {\n delete config.plugins;\n return config;\n })\n]);\n\nexport default index;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":";AAyDA;;;;;;;;;;;;;GAaG;AACH,qBAbU,OAAO,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG;IAC1C,OAAW,EAAE,MAAM,CACnB,aAAmB,GAAC,mBAAmB,GAAC,wBAAwB,GAChE,8BAAsC,GAAC,+BAA+B,GACtE,qCAA6C,GAAC,kBAAkB,GAChE,wBAAgC,GAAC,6BAA6B,GAC9D,mCAA2C,GAC3C,oCAA4C,GAC5C,0CAAkD,EAClD,OAAa,QAAQ,EAAE,MAAM,CAAC,UAAU,CACnC,CAAA;CACF,CA+DF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":";AA2DA;;;;;;;;;;;;;GAaG;AACH,qBAbU,OAAO,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG;IAC1C,OAAW,EAAE,MAAM,CACnB,aAAmB,GAAC,mBAAmB,GAAC,wBAAwB,GAChE,8BAAsC,GAAC,+BAA+B,GACtE,qCAA6C,GAAC,kBAAkB,GAChE,wBAAgC,GAAC,6BAA6B,GAC9D,mCAA2C,GAC3C,oCAA4C,GAC5C,0CAAkD,EAClD,OAAa,QAAQ,EAAE,MAAM,CAAC,UAAU,CACnC,CAAA;CACF,CA+DF"}
@@ -11,11 +11,13 @@ Object.defineProperty(exports, "parseComment", {
11
11
  return _jsdoccomment.parseComment;
12
12
  }
13
13
  });
14
- var _jsdocUtils = _interopRequireDefault(require("./jsdocUtils.cjs"));
14
+ var jsdocUtils = _interopRequireWildcard(require("./jsdocUtils.cjs"));
15
15
  var _jsdoccomment = require("@es-joy/jsdoccomment");
16
16
  var _commentParser = require("comment-parser");
17
17
  var _esquery = _interopRequireDefault(require("esquery"));
18
18
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
21
  /**
20
22
  * @typedef {number} Integer
21
23
  */
@@ -625,15 +627,15 @@ const getBasicUtils = (context, {
625
627
 
626
628
  /** @type {ParseClosureTemplateTag} */
627
629
  utils.parseClosureTemplateTag = tag => {
628
- return _jsdocUtils.default.parseClosureTemplateTag(tag);
630
+ return jsdocUtils.parseClosureTemplateTag(tag);
629
631
  };
630
- utils.pathDoesNotBeginWith = _jsdocUtils.default.pathDoesNotBeginWith;
632
+ utils.pathDoesNotBeginWith = jsdocUtils.pathDoesNotBeginWith;
631
633
 
632
634
  /** @type {GetPreferredTagNameObject} */
633
635
  utils.getPreferredTagNameObject = ({
634
636
  tagName
635
637
  }) => {
636
- const ret = _jsdocUtils.default.getPreferredTagName(context, /** @type {import('./jsdocUtils.js').ParserMode} */mode, tagName, tagNamePreference);
638
+ const ret = jsdocUtils.getPreferredTagNameSimple(tagName, /** @type {import('./jsdocUtils.js').ParserMode} */mode, tagNamePreference, context);
637
639
  const isObject = ret && typeof ret === 'object';
638
640
  if (ret === false || isObject && !ret.replacement) {
639
641
  return {
@@ -732,41 +734,12 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
732
734
 
733
735
  /** @type {GetRegexFromString} */
734
736
  utils.getRegexFromString = (str, requiredFlags) => {
735
- return _jsdocUtils.default.getRegexFromString(str, requiredFlags);
737
+ return jsdocUtils.getRegexFromString(str, requiredFlags);
736
738
  };
737
739
 
738
740
  /** @type {GetTagDescription} */
739
741
  utils.getTagDescription = (tg, returnArray) => {
740
- /**
741
- * @type {string[]}
742
- */
743
- const descriptions = [];
744
- tg.source.some(({
745
- tokens: {
746
- end,
747
- lineEnd,
748
- postDelimiter,
749
- tag,
750
- postTag,
751
- name,
752
- type,
753
- description
754
- }
755
- }) => {
756
- const desc = (tag && postTag || !tag && !name && !type && postDelimiter || ''
757
-
758
- // Remove space
759
- ).slice(1) + (description || '') + (lineEnd || '');
760
- if (end) {
761
- if (desc) {
762
- descriptions.push(desc);
763
- }
764
- return true;
765
- }
766
- descriptions.push(desc);
767
- return false;
768
- });
769
- return returnArray ? descriptions : descriptions.join('\n');
742
+ return jsdocUtils.getTagDescription(tg, returnArray);
770
743
  };
771
744
 
772
745
  /** @type {SetTagDescription} */
@@ -1188,16 +1161,16 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1188
1161
  /**
1189
1162
  * @type {import('./jsdocUtils.js').FlattenRoots}
1190
1163
  */
1191
- utils.flattenRoots = _jsdocUtils.default.flattenRoots;
1164
+ utils.flattenRoots = jsdocUtils.flattenRoots;
1192
1165
 
1193
1166
  /** @type {GetFunctionParameterNames} */
1194
1167
  utils.getFunctionParameterNames = useDefaultObjectProperties => {
1195
- return _jsdocUtils.default.getFunctionParameterNames(node, useDefaultObjectProperties);
1168
+ return jsdocUtils.getFunctionParameterNames(node, useDefaultObjectProperties);
1196
1169
  };
1197
1170
 
1198
1171
  /** @type {HasParams} */
1199
1172
  utils.hasParams = () => {
1200
- return _jsdocUtils.default.hasParams( /** @type {Node} */node);
1173
+ return jsdocUtils.hasParams( /** @type {Node} */node);
1201
1174
  };
1202
1175
 
1203
1176
  /** @type {IsGenerator} */
@@ -1218,7 +1191,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1218
1191
 
1219
1192
  /** @type {IsConstructor} */
1220
1193
  utils.isConstructor = () => {
1221
- return _jsdocUtils.default.isConstructor( /** @type {Node} */node);
1194
+ return jsdocUtils.isConstructor( /** @type {Node} */node);
1222
1195
  };
1223
1196
 
1224
1197
  /** @type {GetJsdocTagsDeep} */
@@ -1229,55 +1202,43 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1229
1202
  if (!name) {
1230
1203
  return false;
1231
1204
  }
1232
- return _jsdocUtils.default.getJsdocTagsDeep(jsdoc, name);
1205
+ return jsdocUtils.getJsdocTagsDeep(jsdoc, name);
1233
1206
  };
1234
1207
 
1235
1208
  /** @type {GetPreferredTagName} */
1236
- utils.getPreferredTagName = ({
1237
- tagName,
1238
- skipReportingBlockedTag = false,
1239
- allowObjectReturn = false,
1240
- defaultMessage = `Unexpected tag \`@${tagName}\``
1241
- }) => {
1242
- const ret = _jsdocUtils.default.getPreferredTagName(context, mode, tagName, tagNamePreference);
1243
- const isObject = ret && typeof ret === 'object';
1244
- if (utils.hasTag(tagName) && (ret === false || isObject && !ret.replacement)) {
1245
- if (skipReportingBlockedTag) {
1246
- return {
1247
- blocked: true,
1248
- tagName
1249
- };
1250
- }
1251
- const message = isObject && ret.message || defaultMessage;
1252
- report(message, null, utils.getTags(tagName)[0]);
1253
- return false;
1254
- }
1255
- return isObject && !allowObjectReturn ? ret.replacement : ret;
1209
+ utils.getPreferredTagName = args => {
1210
+ return jsdocUtils.getPreferredTagName(jsdoc, {
1211
+ ...args,
1212
+ context,
1213
+ mode,
1214
+ report,
1215
+ tagNamePreference
1216
+ });
1256
1217
  };
1257
1218
 
1258
1219
  /** @type {IsValidTag} */
1259
1220
  utils.isValidTag = (name, definedTags) => {
1260
- return _jsdocUtils.default.isValidTag(context, mode, name, definedTags);
1221
+ return jsdocUtils.isValidTag(context, mode, name, definedTags);
1261
1222
  };
1262
1223
 
1263
1224
  /** @type {HasATag} */
1264
1225
  utils.hasATag = names => {
1265
- return _jsdocUtils.default.hasATag(jsdoc, names);
1226
+ return jsdocUtils.hasATag(jsdoc, names);
1266
1227
  };
1267
1228
 
1268
1229
  /** @type {HasTag} */
1269
1230
  utils.hasTag = name => {
1270
- return _jsdocUtils.default.hasTag(jsdoc, name);
1231
+ return jsdocUtils.hasTag(jsdoc, name);
1271
1232
  };
1272
1233
 
1273
1234
  /** @type {ComparePaths} */
1274
1235
  utils.comparePaths = name => {
1275
- return _jsdocUtils.default.comparePaths(name);
1236
+ return jsdocUtils.comparePaths(name);
1276
1237
  };
1277
1238
 
1278
1239
  /** @type {DropPathSegmentQuotes} */
1279
1240
  utils.dropPathSegmentQuotes = name => {
1280
- return _jsdocUtils.default.dropPathSegmentQuotes(name);
1241
+ return jsdocUtils.dropPathSegmentQuotes(name);
1281
1242
  };
1282
1243
 
1283
1244
  /** @type {AvoidDocs} */
@@ -1286,7 +1247,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1286
1247
  if (ignoreReplacesDocs !== false && (utils.hasTag('ignore') || utils.classHasTag('ignore')) || overrideReplacesDocs !== false && (utils.hasTag('override') || utils.classHasTag('override')) || implementsReplacesDocs !== false && (utils.hasTag('implements') || utils.classHasTag('implements')) || augmentsExtendsReplacesDocs && (utils.hasATag(['augments', 'extends']) || utils.classHasTag('augments') || utils.classHasTag('extends'))) {
1287
1248
  return true;
1288
1249
  }
1289
- if (_jsdocUtils.default.exemptSpeciaMethods(jsdoc, node, context, /** @type {import('json-schema').JSONSchema4|import('json-schema').JSONSchema4[]} */
1250
+ if (jsdocUtils.exemptSpeciaMethods(jsdoc, node, context, /** @type {import('json-schema').JSONSchema4|import('json-schema').JSONSchema4[]} */
1290
1251
  ruleConfig.meta.schema)) {
1291
1252
  return true;
1292
1253
  }
@@ -1300,7 +1261,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1300
1261
  /** @type {TagMightHaveNamePositionTypePosition} */
1301
1262
  utils[( /** @type {"tagMightHaveNamePosition"|"tagMightHaveTypePosition"} */
1302
1263
  method)] = (tagName, otherModeMaps) => {
1303
- const result = _jsdocUtils.default[( /** @type {"tagMightHaveNamePosition"|"tagMightHaveTypePosition"} */
1264
+ const result = jsdocUtils[( /** @type {"tagMightHaveNamePosition"|"tagMightHaveTypePosition"} */
1304
1265
  method)](tagName);
1305
1266
  if (result) {
1306
1267
  return true;
@@ -1309,7 +1270,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1309
1270
  return false;
1310
1271
  }
1311
1272
  const otherResult = otherModeMaps.some(otherModeMap => {
1312
- return _jsdocUtils.default[( /** @type {"tagMightHaveNamePosition"|"tagMightHaveTypePosition"} */
1273
+ return jsdocUtils[( /** @type {"tagMightHaveNamePosition"|"tagMightHaveTypePosition"} */
1313
1274
  method)](tagName, otherModeMap);
1314
1275
  });
1315
1276
  return otherResult ? {
@@ -1320,12 +1281,12 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1320
1281
 
1321
1282
  /** @type {TagMissingRequiredTypeOrNamepath} */
1322
1283
  utils.tagMissingRequiredTypeOrNamepath = (tagName, otherModeMaps) => {
1323
- const result = _jsdocUtils.default.tagMissingRequiredTypeOrNamepath(tagName);
1284
+ const result = jsdocUtils.tagMissingRequiredTypeOrNamepath(tagName);
1324
1285
  if (!result) {
1325
1286
  return false;
1326
1287
  }
1327
1288
  const otherResult = otherModeMaps.every(otherModeMap => {
1328
- return _jsdocUtils.default.tagMissingRequiredTypeOrNamepath(tagName, otherModeMap);
1289
+ return jsdocUtils.tagMissingRequiredTypeOrNamepath(tagName, otherModeMap);
1329
1290
  });
1330
1291
  return otherResult ? true : {
1331
1292
  otherMode: false
@@ -1335,7 +1296,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1335
1296
  /** @type {TagMustHave} */
1336
1297
  utils[( /** @type {"tagMustHaveNamePosition"|"tagMustHaveTypePosition"} */
1337
1298
  method)] = (tagName, otherModeMaps) => {
1338
- const result = _jsdocUtils.default[( /** @type {"tagMustHaveNamePosition"|"tagMustHaveTypePosition"} */
1299
+ const result = jsdocUtils[( /** @type {"tagMustHaveNamePosition"|"tagMustHaveTypePosition"} */
1339
1300
  method)](tagName);
1340
1301
  if (!result) {
1341
1302
  return false;
@@ -1344,7 +1305,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1344
1305
  // if (!otherModeMaps) { return true; }
1345
1306
 
1346
1307
  const otherResult = otherModeMaps.every(otherModeMap => {
1347
- return _jsdocUtils.default[( /** @type {"tagMustHaveNamePosition"|"tagMustHaveTypePosition"} */
1308
+ return jsdocUtils[( /** @type {"tagMustHaveNamePosition"|"tagMustHaveTypePosition"} */
1348
1309
  method)](tagName, otherModeMap);
1349
1310
  });
1350
1311
  return otherResult ? true : {
@@ -1356,44 +1317,44 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1356
1317
  /** @type {IsNamepathX} */
1357
1318
  utils[( /** @type {"isNamepathDefiningTag"|"isNamepathReferencingTag"|"isNamepathOrUrlReferencingTag"|"tagMightHaveNamepath"} */
1358
1319
  method)] = tagName => {
1359
- return _jsdocUtils.default[( /** @type {"isNamepathDefiningTag"|"isNamepathReferencingTag"|"isNamepathOrUrlReferencingTag"|"tagMightHaveNamepath"} */
1320
+ return jsdocUtils[( /** @type {"isNamepathDefiningTag"|"isNamepathReferencingTag"|"isNamepathOrUrlReferencingTag"|"tagMightHaveNamepath"} */
1360
1321
  method)](tagName);
1361
1322
  };
1362
1323
  }
1363
1324
 
1364
1325
  /** @type {GetTagStructureForMode} */
1365
1326
  utils.getTagStructureForMode = mde => {
1366
- return _jsdocUtils.default.getTagStructureForMode(mde, settings.structuredTags);
1327
+ return jsdocUtils.getTagStructureForMode(mde, settings.structuredTags);
1367
1328
  };
1368
1329
 
1369
1330
  /** @type {MayBeUndefinedTypeTag} */
1370
1331
  utils.mayBeUndefinedTypeTag = tag => {
1371
- return _jsdocUtils.default.mayBeUndefinedTypeTag(tag, settings.mode);
1332
+ return jsdocUtils.mayBeUndefinedTypeTag(tag, settings.mode);
1372
1333
  };
1373
1334
 
1374
1335
  /** @type {HasValueOrExecutorHasNonEmptyResolveValue} */
1375
1336
  utils.hasValueOrExecutorHasNonEmptyResolveValue = (anyPromiseAsReturn, allBranches) => {
1376
- return _jsdocUtils.default.hasValueOrExecutorHasNonEmptyResolveValue( /** @type {Node} */node, anyPromiseAsReturn, allBranches);
1337
+ return jsdocUtils.hasValueOrExecutorHasNonEmptyResolveValue( /** @type {Node} */node, anyPromiseAsReturn, allBranches);
1377
1338
  };
1378
1339
 
1379
1340
  /** @type {HasYieldValue} */
1380
1341
  utils.hasYieldValue = () => {
1381
1342
  if (['ExportNamedDeclaration', 'ExportDefaultDeclaration'].includes( /** @type {Node} */node.type)) {
1382
- return _jsdocUtils.default.hasYieldValue( /** @type {import('estree').Declaration|import('estree').Expression} */
1343
+ return jsdocUtils.hasYieldValue( /** @type {import('estree').Declaration|import('estree').Expression} */
1383
1344
  /** @type {import('estree').ExportNamedDeclaration|import('estree').ExportDefaultDeclaration} */
1384
1345
  node.declaration);
1385
1346
  }
1386
- return _jsdocUtils.default.hasYieldValue( /** @type {Node} */node);
1347
+ return jsdocUtils.hasYieldValue( /** @type {Node} */node);
1387
1348
  };
1388
1349
 
1389
1350
  /** @type {HasYieldReturnValue} */
1390
1351
  utils.hasYieldReturnValue = () => {
1391
- return _jsdocUtils.default.hasYieldValue( /** @type {Node} */node, true);
1352
+ return jsdocUtils.hasYieldValue( /** @type {Node} */node, true);
1392
1353
  };
1393
1354
 
1394
1355
  /** @type {HasThrowValue} */
1395
1356
  utils.hasThrowValue = () => {
1396
- return _jsdocUtils.default.hasThrowValue(node);
1357
+ return jsdocUtils.hasThrowValue(node);
1397
1358
  };
1398
1359
 
1399
1360
  /** @type {IsAsync} */
@@ -1403,28 +1364,26 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1403
1364
 
1404
1365
  /** @type {GetTags} */
1405
1366
  utils.getTags = tagName => {
1406
- return utils.filterTags(item => {
1407
- return item.tag === tagName;
1408
- });
1367
+ return jsdocUtils.getTags(jsdoc, tagName);
1409
1368
  };
1410
1369
 
1411
1370
  /** @type {GetPresentTags} */
1412
1371
  utils.getPresentTags = tagList => {
1413
- return utils.filterTags(tag => {
1372
+ return jsdocUtils.filterTags(jsdoc, tag => {
1414
1373
  return tagList.includes(tag.tag);
1415
1374
  });
1416
1375
  };
1417
1376
 
1418
1377
  /** @type {FilterTags} */
1419
1378
  utils.filterTags = filter => {
1420
- return jsdoc.tags.filter(tag => {
1379
+ return jsdocUtils.filterTags(jsdoc, tag => {
1421
1380
  return filter(tag);
1422
1381
  });
1423
1382
  };
1424
1383
 
1425
1384
  /** @type {FilterAllTags} */
1426
1385
  utils.filterAllTags = filter => {
1427
- const tags = _jsdocUtils.default.getAllTags(jsdoc);
1386
+ const tags = jsdocUtils.getAllTags(jsdoc);
1428
1387
  return tags.filter(tag => {
1429
1388
  return filter(tag);
1430
1389
  });
@@ -1432,7 +1391,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1432
1391
 
1433
1392
  /** @type {GetTagsByType} */
1434
1393
  utils.getTagsByType = tags => {
1435
- return _jsdocUtils.default.getTagsByType(context, mode, tags);
1394
+ return jsdocUtils.getTagsByType(context, mode, tags);
1436
1395
  };
1437
1396
 
1438
1397
  /** @type {HasOptionTag} */
@@ -1469,31 +1428,18 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, sc, iterati
1469
1428
  /** @type {ClassHasTag} */
1470
1429
  utils.classHasTag = tagName => {
1471
1430
  const classJsdoc = utils.getClassJsdoc();
1472
- return classJsdoc !== null && _jsdocUtils.default.hasTag(classJsdoc, tagName);
1431
+ return classJsdoc !== null && jsdocUtils.hasTag(classJsdoc, tagName);
1473
1432
  };
1474
1433
 
1475
1434
  /** @type {ForEachPreferredTag} */
1476
- utils.forEachPreferredTag = (tagName, arrayHandler, skipReportingBlockedTag = false) => {
1477
- const targetTagName = /** @type {string|false} */
1478
- utils.getPreferredTagName({
1435
+ utils.forEachPreferredTag = (tagName, arrayHandler, skipReportingBlockedTag) => {
1436
+ return jsdocUtils.forEachPreferredTag(jsdoc, tagName, arrayHandler, {
1479
1437
  skipReportingBlockedTag,
1480
- tagName
1481
- });
1482
- if (!targetTagName || skipReportingBlockedTag && targetTagName && typeof targetTagName === 'object') {
1483
- return;
1484
- }
1485
- const matchingJsdocTags = jsdoc.tags.filter(({
1486
- tag
1487
- }) => {
1488
- return tag === targetTagName;
1438
+ context,
1439
+ mode,
1440
+ report,
1441
+ tagNamePreference
1489
1442
  });
1490
- for (const matchingJsdocTag of matchingJsdocTags) {
1491
- arrayHandler(
1492
- /**
1493
- * @type {import('@es-joy/jsdoccomment').JsdocTagWithInline}
1494
- */
1495
- matchingJsdocTag, targetTagName);
1496
- }
1497
1443
  };
1498
1444
 
1499
1445
  /** @type {FindContext} */
@@ -1580,9 +1526,9 @@ const getSettings = context => {
1580
1526
  };
1581
1527
  /* dslint-enable canonical/sort-keys */
1582
1528
 
1583
- _jsdocUtils.default.setTagStructure(settings.mode);
1529
+ jsdocUtils.setTagStructure(settings.mode);
1584
1530
  try {
1585
- _jsdocUtils.default.overrideTagStructure(settings.structuredTags);
1531
+ jsdocUtils.overrideTagStructure(settings.structuredTags);
1586
1532
  } catch (error) {
1587
1533
  context.report({
1588
1534
  loc: {
@@ -1730,7 +1676,7 @@ const iterate = (info, indent, jsdoc, ruleConfig, context, jsdocNode, node, sett
1730
1676
  if (!ruleConfig.checkInternal && settings.ignoreInternal && utils.hasTag('internal')) {
1731
1677
  return;
1732
1678
  }
1733
- if (!ruleConfig.checkPrivate && settings.ignorePrivate && (utils.hasTag('private') || jsdoc.tags.filter(({
1679
+ if (!ruleConfig.checkPrivate && settings.ignorePrivate && (utils.hasTag('private') || jsdocUtils.filterTags(jsdoc, ({
1734
1680
  tag
1735
1681
  }) => {
1736
1682
  return tag === 'access';
@@ -2034,7 +1980,7 @@ function iterateJsdoc(iterator, ruleConfig) {
2034
1980
  let contexts;
2035
1981
  if (ruleConfig.contextDefaults || ruleConfig.contextSelected || ruleConfig.matchContext) {
2036
1982
  var _context$options$2, _contexts, _contexts2;
2037
- contexts = ruleConfig.matchContext && (_context$options$2 = context.options[0]) !== null && _context$options$2 !== void 0 && _context$options$2.match ? context.options[0].match : _jsdocUtils.default.enforcedContexts(context, ruleConfig.contextDefaults, ruleConfig.nonGlobalSettings ? {} : settings);
1983
+ contexts = ruleConfig.matchContext && (_context$options$2 = context.options[0]) !== null && _context$options$2 !== void 0 && _context$options$2.match ? context.options[0].match : jsdocUtils.enforcedContexts(context, ruleConfig.contextDefaults, ruleConfig.nonGlobalSettings ? {} : settings);
2038
1984
  if (contexts) {
2039
1985
  contexts = contexts.map(obj => {
2040
1986
  if (typeof obj === 'object' && !obj.context) {
@@ -2091,7 +2037,7 @@ function iterateJsdoc(iterator, ruleConfig) {
2091
2037
  /** @type {import('eslint').Rule.RuleListener} */
2092
2038
  let contextObject = {};
2093
2039
  if (contexts && (ruleConfig.contextDefaults || ruleConfig.contextSelected || ruleConfig.matchContext)) {
2094
- contextObject = _jsdocUtils.default.getContextObject(contexts, checkJsdoc, (0, _jsdoccomment.commentHandler)(settings));
2040
+ contextObject = jsdocUtils.getContextObject(contexts, checkJsdoc, (0, _jsdoccomment.commentHandler)(settings));
2095
2041
  } else {
2096
2042
  for (const prop of ['ArrowFunctionExpression', 'FunctionDeclaration', 'FunctionExpression', 'TSDeclareFunction']) {
2097
2043
  contextObject[prop] = checkJsdoc.bind(null, {