eslint-plugin-jsdoc 54.7.0 → 55.0.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/README.md +75 -9
- package/dist/generateRule.cjs +1 -1
- package/dist/generateRule.cjs.map +1 -1
- package/dist/index-cjs.cjs +409 -0
- package/dist/index-cjs.cjs.map +1 -0
- package/dist/index.cjs +44 -394
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +15 -10
- package/dist/index.d.ts.map +1 -1
- package/package.json +6 -8
- package/src/index-cjs.js +528 -0
- package/src/index.js +62 -517
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-cjs.cjs","names":["_getJsdocProcessorPlugin","require","_checkAccess","_interopRequireDefault","_checkAlignment","_checkExamples","_checkIndentation","_checkLineAlignment","_checkParamNames","_checkPropertyNames","_checkSyntax","_checkTagNames","_checkTemplateNames","_checkTypes","_checkValues","_convertToJsdocComments","_emptyTags","_implementsOnClasses","_importsAsDependencies","_informativeDocs","_linesBeforeBlock","_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","linesBeforeBlock","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","createStandaloneRulesetFactory","ruleNames","Object","fromEntries","map","ruleName","slice","contentsRules","escapeHTML","createContentsTypescriptRuleset","createContentsTypescriptFlavorRuleset","logicalRules","createLogicalTypescriptRuleset","createLogicalTypescriptFlavorRuleset","requirementsRules","createRequirementsTypeScriptRuleset","createRequirementsTypeScriptFlavorRuleset","stylisticRules","createStylisticTypeScriptRuleset","createStylisticTypeScriptFlavorRuleset","Error","recommended","examples","files","getJsdocProcessorPlugin","processor","checkDefaults","checkParams","checkProperties","quotes","semi","strict","config","_default","exports","module"],"sources":["../src/index-cjs.js"],"sourcesContent":["import {\n getJsdocProcessorPlugin,\n} from './getJsdocProcessorPlugin.js';\nimport 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 linesBeforeBlock from './rules/linesBeforeBlock.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/* eslint-disable jsdoc/valid-types -- Bug */\n/**\n * @typedef {\"recommended\" | \"stylistic\" | \"contents\" | \"logical\" | \"requirements\"} ConfigGroups\n * @typedef {\"\" | \"-typescript\" | \"-typescript-flavor\"} ConfigVariants\n * @typedef {\"\" | \"-error\"} ErrorLevelVariants\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}`,\n * import('eslint').Linter.Config>\n * }}\n */\nconst index = {};\n/* eslint-enable jsdoc/valid-types -- Bug */\nindex.configs = {};\nindex.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 'lines-before-block': linesBeforeBlock,\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 * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {\n name: 'jsdoc/' + flatName,\n } : {}),\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/lines-before-block': '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.Config}\n */\nconst createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/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 @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/no-undefined-types': 'off',\n /* eslint-enable @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {(string | unknown[])[]} ruleNames\n */\nconst createStandaloneRulesetFactory = (ruleNames) => {\n /**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\n return (warnOrError, flatName) => {\n return {\n name: 'jsdoc/' + flatName,\n plugins: {\n jsdoc: index,\n },\n rules: Object.fromEntries(\n ruleNames.map(\n (ruleName) => {\n return (typeof ruleName === 'string' ?\n [\n ruleName, warnOrError,\n ] :\n [\n ruleName[0], [\n warnOrError, ...ruleName.slice(1),\n ],\n ]);\n },\n ),\n ),\n };\n };\n};\n\nconst contentsRules = [\n 'jsdoc/informative-docs',\n 'jsdoc/match-description',\n 'jsdoc/no-blank-block-descriptions',\n 'jsdoc/no-blank-blocks',\n [\n 'jsdoc/text-escaping', {\n escapeHTML: true,\n },\n ],\n];\n\nconst createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst logicalRules = [\n 'jsdoc/check-access',\n 'jsdoc/check-param-names',\n 'jsdoc/check-property-names',\n 'jsdoc/check-syntax',\n 'jsdoc/check-tag-names',\n 'jsdoc/check-template-names',\n 'jsdoc/check-types',\n 'jsdoc/check-values',\n 'jsdoc/empty-tags',\n 'jsdoc/implements-on-classes',\n 'jsdoc/require-returns-check',\n 'jsdoc/require-yields-check',\n 'jsdoc/no-bad-blocks',\n 'jsdoc/no-defaults',\n 'jsdoc/no-types',\n 'jsdoc/no-undefined-types',\n 'jsdoc/valid-types',\n];\n\nconst createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst requirementsRules = [\n 'jsdoc/require-example',\n 'jsdoc/require-jsdoc',\n 'jsdoc/require-param',\n 'jsdoc/require-param-description',\n 'jsdoc/require-param-name',\n 'jsdoc/require-property',\n 'jsdoc/require-property-description',\n 'jsdoc/require-property-name',\n 'jsdoc/require-returns',\n 'jsdoc/require-returns-description',\n 'jsdoc/require-yields',\n];\n\nconst createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);\n\nconst createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([\n ...requirementsRules,\n 'jsdoc/require-param-type',\n 'jsdoc/require-property-type',\n 'jsdoc/require-returns-type',\n 'jsdoc/require-template',\n]);\n\nconst stylisticRules = [\n 'jsdoc/check-alignment',\n 'jsdoc/check-line-alignment',\n 'jsdoc/lines-before-block',\n 'jsdoc/multiline-blocks',\n 'jsdoc/no-multi-asterisks',\n 'jsdoc/require-asterisk-prefix',\n [\n 'jsdoc/require-hyphen-before-param-description', 'never',\n ],\n 'jsdoc/tag-lines',\n];\n\nconst createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);\n\nconst createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);\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['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');\nindex.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');\nindex.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');\nindex.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');\nindex.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');\nindex.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');\nindex.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');\nindex.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');\nindex.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');\nindex.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');\nindex.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');\nindex.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');\nindex.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');\nindex.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');\nindex.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');\nindex.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');\n\nindex.configs.examples = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\n name: 'jsdoc/examples/processor',\n plugins: {\n examples: getJsdocProcessorPlugin(),\n },\n processor: 'examples/examples',\n },\n {\n files: [\n '**/*.md/*.js',\n ],\n name: 'jsdoc/examples/rules',\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.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\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 files: [\n '**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties',\n ],\n name: 'jsdoc/default-expressions/rules',\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.Config[]} */ ([\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 return {\n ...config,\n plugins: {},\n };\n }),\n ...index.configs['default-expressions'].map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n]);\n\nexport default index;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/index.cjs
CHANGED
|
@@ -3,409 +3,59 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var _checkAlignment = _interopRequireDefault(require("./rules/checkAlignment.cjs"));
|
|
10
|
-
var _checkExamples = _interopRequireDefault(require("./rules/checkExamples.cjs"));
|
|
11
|
-
var _checkIndentation = _interopRequireDefault(require("./rules/checkIndentation.cjs"));
|
|
12
|
-
var _checkLineAlignment = _interopRequireDefault(require("./rules/checkLineAlignment.cjs"));
|
|
13
|
-
var _checkParamNames = _interopRequireDefault(require("./rules/checkParamNames.cjs"));
|
|
14
|
-
var _checkPropertyNames = _interopRequireDefault(require("./rules/checkPropertyNames.cjs"));
|
|
15
|
-
var _checkSyntax = _interopRequireDefault(require("./rules/checkSyntax.cjs"));
|
|
16
|
-
var _checkTagNames = _interopRequireDefault(require("./rules/checkTagNames.cjs"));
|
|
17
|
-
var _checkTemplateNames = _interopRequireDefault(require("./rules/checkTemplateNames.cjs"));
|
|
18
|
-
var _checkTypes = _interopRequireDefault(require("./rules/checkTypes.cjs"));
|
|
19
|
-
var _checkValues = _interopRequireDefault(require("./rules/checkValues.cjs"));
|
|
20
|
-
var _convertToJsdocComments = _interopRequireDefault(require("./rules/convertToJsdocComments.cjs"));
|
|
21
|
-
var _emptyTags = _interopRequireDefault(require("./rules/emptyTags.cjs"));
|
|
22
|
-
var _implementsOnClasses = _interopRequireDefault(require("./rules/implementsOnClasses.cjs"));
|
|
23
|
-
var _importsAsDependencies = _interopRequireDefault(require("./rules/importsAsDependencies.cjs"));
|
|
24
|
-
var _informativeDocs = _interopRequireDefault(require("./rules/informativeDocs.cjs"));
|
|
25
|
-
var _linesBeforeBlock = _interopRequireDefault(require("./rules/linesBeforeBlock.cjs"));
|
|
26
|
-
var _matchDescription = _interopRequireDefault(require("./rules/matchDescription.cjs"));
|
|
27
|
-
var _matchName = _interopRequireDefault(require("./rules/matchName.cjs"));
|
|
28
|
-
var _multilineBlocks = _interopRequireDefault(require("./rules/multilineBlocks.cjs"));
|
|
29
|
-
var _noBadBlocks = _interopRequireDefault(require("./rules/noBadBlocks.cjs"));
|
|
30
|
-
var _noBlankBlockDescriptions = _interopRequireDefault(require("./rules/noBlankBlockDescriptions.cjs"));
|
|
31
|
-
var _noBlankBlocks = _interopRequireDefault(require("./rules/noBlankBlocks.cjs"));
|
|
32
|
-
var _noDefaults = _interopRequireDefault(require("./rules/noDefaults.cjs"));
|
|
33
|
-
var _noMissingSyntax = _interopRequireDefault(require("./rules/noMissingSyntax.cjs"));
|
|
34
|
-
var _noMultiAsterisks = _interopRequireDefault(require("./rules/noMultiAsterisks.cjs"));
|
|
35
|
-
var _noRestrictedSyntax = _interopRequireDefault(require("./rules/noRestrictedSyntax.cjs"));
|
|
36
|
-
var _noTypes = _interopRequireDefault(require("./rules/noTypes.cjs"));
|
|
37
|
-
var _noUndefinedTypes = _interopRequireDefault(require("./rules/noUndefinedTypes.cjs"));
|
|
38
|
-
var _requireAsteriskPrefix = _interopRequireDefault(require("./rules/requireAsteriskPrefix.cjs"));
|
|
39
|
-
var _requireDescription = _interopRequireDefault(require("./rules/requireDescription.cjs"));
|
|
40
|
-
var _requireDescriptionCompleteSentence = _interopRequireDefault(require("./rules/requireDescriptionCompleteSentence.cjs"));
|
|
41
|
-
var _requireExample = _interopRequireDefault(require("./rules/requireExample.cjs"));
|
|
42
|
-
var _requireFileOverview = _interopRequireDefault(require("./rules/requireFileOverview.cjs"));
|
|
43
|
-
var _requireHyphenBeforeParamDescription = _interopRequireDefault(require("./rules/requireHyphenBeforeParamDescription.cjs"));
|
|
44
|
-
var _requireJsdoc = _interopRequireDefault(require("./rules/requireJsdoc.cjs"));
|
|
45
|
-
var _requireParam = _interopRequireDefault(require("./rules/requireParam.cjs"));
|
|
46
|
-
var _requireParamDescription = _interopRequireDefault(require("./rules/requireParamDescription.cjs"));
|
|
47
|
-
var _requireParamName = _interopRequireDefault(require("./rules/requireParamName.cjs"));
|
|
48
|
-
var _requireParamType = _interopRequireDefault(require("./rules/requireParamType.cjs"));
|
|
49
|
-
var _requireProperty = _interopRequireDefault(require("./rules/requireProperty.cjs"));
|
|
50
|
-
var _requirePropertyDescription = _interopRequireDefault(require("./rules/requirePropertyDescription.cjs"));
|
|
51
|
-
var _requirePropertyName = _interopRequireDefault(require("./rules/requirePropertyName.cjs"));
|
|
52
|
-
var _requirePropertyType = _interopRequireDefault(require("./rules/requirePropertyType.cjs"));
|
|
53
|
-
var _requireReturns = _interopRequireDefault(require("./rules/requireReturns.cjs"));
|
|
54
|
-
var _requireReturnsCheck = _interopRequireDefault(require("./rules/requireReturnsCheck.cjs"));
|
|
55
|
-
var _requireReturnsDescription = _interopRequireDefault(require("./rules/requireReturnsDescription.cjs"));
|
|
56
|
-
var _requireReturnsType = _interopRequireDefault(require("./rules/requireReturnsType.cjs"));
|
|
57
|
-
var _requireTemplate = _interopRequireDefault(require("./rules/requireTemplate.cjs"));
|
|
58
|
-
var _requireThrows = _interopRequireDefault(require("./rules/requireThrows.cjs"));
|
|
59
|
-
var _requireYields = _interopRequireDefault(require("./rules/requireYields.cjs"));
|
|
60
|
-
var _requireYieldsCheck = _interopRequireDefault(require("./rules/requireYieldsCheck.cjs"));
|
|
61
|
-
var _sortTags = _interopRequireDefault(require("./rules/sortTags.cjs"));
|
|
62
|
-
var _tagLines = _interopRequireDefault(require("./rules/tagLines.cjs"));
|
|
63
|
-
var _textEscaping = _interopRequireDefault(require("./rules/textEscaping.cjs"));
|
|
64
|
-
var _validTypes = _interopRequireDefault(require("./rules/validTypes.cjs"));
|
|
6
|
+
exports.jsdoc = exports.default = void 0;
|
|
7
|
+
var _indexCjs = _interopRequireDefault(require("./index-cjs.cjs"));
|
|
8
|
+
var _objectDeepMerge = require("object-deep-merge");
|
|
65
9
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
// eslint-disable-next-line unicorn/prefer-export-from --- Reusing `index`
|
|
11
|
+
var _default = exports.default = _indexCjs.default;
|
|
66
12
|
/* eslint-disable jsdoc/valid-types -- Bug */
|
|
67
13
|
/**
|
|
68
|
-
* @
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
14
|
+
* @type {((
|
|
15
|
+
* cfg?: {
|
|
16
|
+
* mergeSettings?: boolean,
|
|
17
|
+
* config?: `flat/${import('./index-cjs.js').ConfigGroups}${import('./index-cjs.js').ConfigVariants}${import('./index-cjs.js').ErrorLevelVariants}`,
|
|
18
|
+
* settings?: Partial<import('./iterateJsdoc.js').Settings>
|
|
19
|
+
* }
|
|
20
|
+
* ) => import('eslint').Linter.Config) & import('eslint').ESLint.Plugin & {
|
|
21
|
+
* configs: Record<`flat/${import('./index-cjs.js').ConfigGroups}${import('./index-cjs.js').ConfigVariants}${import('./index-cjs.js').ErrorLevelVariants}`,
|
|
73
22
|
* import('eslint').Linter.Config>
|
|
74
23
|
* }}
|
|
75
24
|
*/
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
'check-examples': _checkExamples.default,
|
|
84
|
-
'check-indentation': _checkIndentation.default,
|
|
85
|
-
'check-line-alignment': _checkLineAlignment.default,
|
|
86
|
-
'check-param-names': _checkParamNames.default,
|
|
87
|
-
'check-property-names': _checkPropertyNames.default,
|
|
88
|
-
'check-syntax': _checkSyntax.default,
|
|
89
|
-
'check-tag-names': _checkTagNames.default,
|
|
90
|
-
'check-template-names': _checkTemplateNames.default,
|
|
91
|
-
'check-types': _checkTypes.default,
|
|
92
|
-
'check-values': _checkValues.default,
|
|
93
|
-
'convert-to-jsdoc-comments': _convertToJsdocComments.default,
|
|
94
|
-
'empty-tags': _emptyTags.default,
|
|
95
|
-
'implements-on-classes': _implementsOnClasses.default,
|
|
96
|
-
'imports-as-dependencies': _importsAsDependencies.default,
|
|
97
|
-
'informative-docs': _informativeDocs.default,
|
|
98
|
-
'lines-before-block': _linesBeforeBlock.default,
|
|
99
|
-
'match-description': _matchDescription.default,
|
|
100
|
-
'match-name': _matchName.default,
|
|
101
|
-
'multiline-blocks': _multilineBlocks.default,
|
|
102
|
-
'no-bad-blocks': _noBadBlocks.default,
|
|
103
|
-
'no-blank-block-descriptions': _noBlankBlockDescriptions.default,
|
|
104
|
-
'no-blank-blocks': _noBlankBlocks.default,
|
|
105
|
-
'no-defaults': _noDefaults.default,
|
|
106
|
-
'no-missing-syntax': _noMissingSyntax.default,
|
|
107
|
-
'no-multi-asterisks': _noMultiAsterisks.default,
|
|
108
|
-
'no-restricted-syntax': _noRestrictedSyntax.default,
|
|
109
|
-
'no-types': _noTypes.default,
|
|
110
|
-
'no-undefined-types': _noUndefinedTypes.default,
|
|
111
|
-
'require-asterisk-prefix': _requireAsteriskPrefix.default,
|
|
112
|
-
'require-description': _requireDescription.default,
|
|
113
|
-
'require-description-complete-sentence': _requireDescriptionCompleteSentence.default,
|
|
114
|
-
'require-example': _requireExample.default,
|
|
115
|
-
'require-file-overview': _requireFileOverview.default,
|
|
116
|
-
'require-hyphen-before-param-description': _requireHyphenBeforeParamDescription.default,
|
|
117
|
-
'require-jsdoc': _requireJsdoc.default,
|
|
118
|
-
'require-param': _requireParam.default,
|
|
119
|
-
'require-param-description': _requireParamDescription.default,
|
|
120
|
-
'require-param-name': _requireParamName.default,
|
|
121
|
-
'require-param-type': _requireParamType.default,
|
|
122
|
-
'require-property': _requireProperty.default,
|
|
123
|
-
'require-property-description': _requirePropertyDescription.default,
|
|
124
|
-
'require-property-name': _requirePropertyName.default,
|
|
125
|
-
'require-property-type': _requirePropertyType.default,
|
|
126
|
-
'require-returns': _requireReturns.default,
|
|
127
|
-
'require-returns-check': _requireReturnsCheck.default,
|
|
128
|
-
'require-returns-description': _requireReturnsDescription.default,
|
|
129
|
-
'require-returns-type': _requireReturnsType.default,
|
|
130
|
-
'require-template': _requireTemplate.default,
|
|
131
|
-
'require-throws': _requireThrows.default,
|
|
132
|
-
'require-yields': _requireYields.default,
|
|
133
|
-
'require-yields-check': _requireYieldsCheck.default,
|
|
134
|
-
'sort-tags': _sortTags.default,
|
|
135
|
-
'tag-lines': _tagLines.default,
|
|
136
|
-
'text-escaping': _textEscaping.default,
|
|
137
|
-
'valid-types': _validTypes.default
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* @param {"warn"|"error"} warnOrError
|
|
143
|
-
* @param {string} [flatName]
|
|
144
|
-
* @returns {import('eslint').Linter.Config}
|
|
145
|
-
*/
|
|
146
|
-
const createRecommendedRuleset = (warnOrError, flatName) => {
|
|
147
|
-
return {
|
|
148
|
-
...(flatName ? {
|
|
149
|
-
name: 'jsdoc/' + flatName
|
|
150
|
-
} : {}),
|
|
151
|
-
// @ts-expect-error Ok
|
|
152
|
-
plugins: flatName ? {
|
|
153
|
-
jsdoc: index
|
|
154
|
-
} : ['jsdoc'],
|
|
155
|
-
rules: {
|
|
156
|
-
'jsdoc/check-access': warnOrError,
|
|
157
|
-
'jsdoc/check-alignment': warnOrError,
|
|
158
|
-
'jsdoc/check-examples': 'off',
|
|
159
|
-
'jsdoc/check-indentation': 'off',
|
|
160
|
-
'jsdoc/check-line-alignment': 'off',
|
|
161
|
-
'jsdoc/check-param-names': warnOrError,
|
|
162
|
-
'jsdoc/check-property-names': warnOrError,
|
|
163
|
-
'jsdoc/check-syntax': 'off',
|
|
164
|
-
'jsdoc/check-tag-names': warnOrError,
|
|
165
|
-
'jsdoc/check-template-names': 'off',
|
|
166
|
-
'jsdoc/check-types': warnOrError,
|
|
167
|
-
'jsdoc/check-values': warnOrError,
|
|
168
|
-
'jsdoc/convert-to-jsdoc-comments': 'off',
|
|
169
|
-
'jsdoc/empty-tags': warnOrError,
|
|
170
|
-
'jsdoc/implements-on-classes': warnOrError,
|
|
171
|
-
'jsdoc/imports-as-dependencies': 'off',
|
|
172
|
-
'jsdoc/informative-docs': 'off',
|
|
173
|
-
'jsdoc/lines-before-block': 'off',
|
|
174
|
-
'jsdoc/match-description': 'off',
|
|
175
|
-
'jsdoc/match-name': 'off',
|
|
176
|
-
'jsdoc/multiline-blocks': warnOrError,
|
|
177
|
-
'jsdoc/no-bad-blocks': 'off',
|
|
178
|
-
'jsdoc/no-blank-block-descriptions': 'off',
|
|
179
|
-
'jsdoc/no-blank-blocks': 'off',
|
|
180
|
-
'jsdoc/no-defaults': warnOrError,
|
|
181
|
-
'jsdoc/no-missing-syntax': 'off',
|
|
182
|
-
'jsdoc/no-multi-asterisks': warnOrError,
|
|
183
|
-
'jsdoc/no-restricted-syntax': 'off',
|
|
184
|
-
'jsdoc/no-types': 'off',
|
|
185
|
-
'jsdoc/no-undefined-types': warnOrError,
|
|
186
|
-
'jsdoc/require-asterisk-prefix': 'off',
|
|
187
|
-
'jsdoc/require-description': 'off',
|
|
188
|
-
'jsdoc/require-description-complete-sentence': 'off',
|
|
189
|
-
'jsdoc/require-example': 'off',
|
|
190
|
-
'jsdoc/require-file-overview': 'off',
|
|
191
|
-
'jsdoc/require-hyphen-before-param-description': 'off',
|
|
192
|
-
'jsdoc/require-jsdoc': warnOrError,
|
|
193
|
-
'jsdoc/require-param': warnOrError,
|
|
194
|
-
'jsdoc/require-param-description': warnOrError,
|
|
195
|
-
'jsdoc/require-param-name': warnOrError,
|
|
196
|
-
'jsdoc/require-param-type': warnOrError,
|
|
197
|
-
'jsdoc/require-property': warnOrError,
|
|
198
|
-
'jsdoc/require-property-description': warnOrError,
|
|
199
|
-
'jsdoc/require-property-name': warnOrError,
|
|
200
|
-
'jsdoc/require-property-type': warnOrError,
|
|
201
|
-
'jsdoc/require-returns': warnOrError,
|
|
202
|
-
'jsdoc/require-returns-check': warnOrError,
|
|
203
|
-
'jsdoc/require-returns-description': warnOrError,
|
|
204
|
-
'jsdoc/require-returns-type': warnOrError,
|
|
205
|
-
'jsdoc/require-template': 'off',
|
|
206
|
-
'jsdoc/require-throws': 'off',
|
|
207
|
-
'jsdoc/require-yields': warnOrError,
|
|
208
|
-
'jsdoc/require-yields-check': warnOrError,
|
|
209
|
-
'jsdoc/sort-tags': 'off',
|
|
210
|
-
'jsdoc/tag-lines': warnOrError,
|
|
211
|
-
'jsdoc/text-escaping': 'off',
|
|
212
|
-
'jsdoc/valid-types': warnOrError
|
|
25
|
+
/* eslint-enable jsdoc/valid-types -- Bug */
|
|
26
|
+
// @ts-expect-error Ok
|
|
27
|
+
const jsdoc = function (cfg) {
|
|
28
|
+
/** @type {import('eslint').Linter.Config} */
|
|
29
|
+
let outputConfig = {
|
|
30
|
+
plugins: {
|
|
31
|
+
jsdoc: _indexCjs.default
|
|
213
32
|
}
|
|
214
33
|
};
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
* @param {string} [flatName]
|
|
220
|
-
* @returns {import('eslint').Linter.Config}
|
|
221
|
-
*/
|
|
222
|
-
const createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {
|
|
223
|
-
const ruleset = createRecommendedRuleset(warnOrError, flatName);
|
|
224
|
-
return {
|
|
225
|
-
...ruleset,
|
|
226
|
-
rules: {
|
|
227
|
-
...ruleset.rules,
|
|
228
|
-
/* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */
|
|
229
|
-
'jsdoc/check-tag-names': [warnOrError, {
|
|
230
|
-
typed: true
|
|
231
|
-
}],
|
|
232
|
-
'jsdoc/no-types': warnOrError,
|
|
233
|
-
'jsdoc/no-undefined-types': 'off',
|
|
234
|
-
'jsdoc/require-param-type': 'off',
|
|
235
|
-
'jsdoc/require-property-type': 'off',
|
|
236
|
-
'jsdoc/require-returns-type': 'off'
|
|
237
|
-
/* eslint-enable @stylistic/indent */
|
|
34
|
+
if (cfg?.config) {
|
|
35
|
+
// @ts-expect-error Security check
|
|
36
|
+
if (cfg.config === '__proto__') {
|
|
37
|
+
throw new TypeError('Disallowed config value');
|
|
238
38
|
}
|
|
239
|
-
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
/**
|
|
243
|
-
* @param {"warn"|"error"} warnOrError
|
|
244
|
-
* @param {string} [flatName]
|
|
245
|
-
* @returns {import('eslint').Linter.Config}
|
|
246
|
-
*/
|
|
247
|
-
const createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {
|
|
248
|
-
const ruleset = createRecommendedRuleset(warnOrError, flatName);
|
|
249
|
-
return {
|
|
250
|
-
...ruleset,
|
|
251
|
-
rules: {
|
|
252
|
-
...ruleset.rules,
|
|
253
|
-
/* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */
|
|
254
|
-
'jsdoc/no-undefined-types': 'off'
|
|
255
|
-
/* eslint-enable @stylistic/indent */
|
|
256
|
-
}
|
|
257
|
-
};
|
|
258
|
-
};
|
|
259
|
-
|
|
260
|
-
/**
|
|
261
|
-
* @param {(string | unknown[])[]} ruleNames
|
|
262
|
-
*/
|
|
263
|
-
const createStandaloneRulesetFactory = ruleNames => {
|
|
264
|
-
/**
|
|
265
|
-
* @param {"warn"|"error"} warnOrError
|
|
266
|
-
* @param {string} [flatName]
|
|
267
|
-
* @returns {import('eslint').Linter.Config}
|
|
268
|
-
*/
|
|
269
|
-
return (warnOrError, flatName) => {
|
|
270
|
-
return {
|
|
271
|
-
name: 'jsdoc/' + flatName,
|
|
272
|
-
plugins: {
|
|
273
|
-
jsdoc: index
|
|
274
|
-
},
|
|
275
|
-
rules: Object.fromEntries(ruleNames.map(ruleName => {
|
|
276
|
-
return typeof ruleName === 'string' ? [ruleName, warnOrError] : [ruleName[0], [warnOrError, ...ruleName.slice(1)]];
|
|
277
|
-
}))
|
|
278
|
-
};
|
|
279
|
-
};
|
|
280
|
-
};
|
|
281
|
-
const contentsRules = ['jsdoc/informative-docs', 'jsdoc/match-description', 'jsdoc/no-blank-block-descriptions', 'jsdoc/no-blank-blocks', ['jsdoc/text-escaping', {
|
|
282
|
-
escapeHTML: true
|
|
283
|
-
}]];
|
|
284
|
-
const createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);
|
|
285
|
-
const createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);
|
|
286
|
-
const logicalRules = ['jsdoc/check-access', 'jsdoc/check-param-names', 'jsdoc/check-property-names', 'jsdoc/check-syntax', 'jsdoc/check-tag-names', 'jsdoc/check-template-names', 'jsdoc/check-types', 'jsdoc/check-values', 'jsdoc/empty-tags', 'jsdoc/implements-on-classes', 'jsdoc/require-returns-check', 'jsdoc/require-yields-check', 'jsdoc/no-bad-blocks', 'jsdoc/no-defaults', 'jsdoc/no-types', 'jsdoc/no-undefined-types', 'jsdoc/valid-types'];
|
|
287
|
-
const createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);
|
|
288
|
-
const createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);
|
|
289
|
-
const requirementsRules = ['jsdoc/require-example', 'jsdoc/require-jsdoc', 'jsdoc/require-param', 'jsdoc/require-param-description', 'jsdoc/require-param-name', 'jsdoc/require-property', 'jsdoc/require-property-description', 'jsdoc/require-property-name', 'jsdoc/require-returns', 'jsdoc/require-returns-description', 'jsdoc/require-yields'];
|
|
290
|
-
const createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);
|
|
291
|
-
const createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([...requirementsRules, 'jsdoc/require-param-type', 'jsdoc/require-property-type', 'jsdoc/require-returns-type', 'jsdoc/require-template']);
|
|
292
|
-
const stylisticRules = ['jsdoc/check-alignment', 'jsdoc/check-line-alignment', 'jsdoc/lines-before-block', 'jsdoc/multiline-blocks', 'jsdoc/no-multi-asterisks', 'jsdoc/require-asterisk-prefix', ['jsdoc/require-hyphen-before-param-description', 'never'], 'jsdoc/tag-lines'];
|
|
293
|
-
const createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);
|
|
294
|
-
const createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);
|
|
295
|
-
|
|
296
|
-
/* c8 ignore next 3 -- TS */
|
|
297
|
-
if (!index.configs) {
|
|
298
|
-
throw new Error('TypeScript guard');
|
|
299
|
-
}
|
|
300
|
-
index.configs.recommended = createRecommendedRuleset('warn');
|
|
301
|
-
index.configs['recommended-error'] = createRecommendedRuleset('error');
|
|
302
|
-
index.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');
|
|
303
|
-
index.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');
|
|
304
|
-
index.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');
|
|
305
|
-
index.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');
|
|
306
|
-
index.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');
|
|
307
|
-
index.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');
|
|
308
|
-
index.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');
|
|
309
|
-
index.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');
|
|
310
|
-
index.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');
|
|
311
|
-
index.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');
|
|
312
|
-
index.configs['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');
|
|
313
|
-
index.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');
|
|
314
|
-
index.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');
|
|
315
|
-
index.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');
|
|
316
|
-
index.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');
|
|
317
|
-
index.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');
|
|
318
|
-
index.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');
|
|
319
|
-
index.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');
|
|
320
|
-
index.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');
|
|
321
|
-
index.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');
|
|
322
|
-
index.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');
|
|
323
|
-
index.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');
|
|
324
|
-
index.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');
|
|
325
|
-
index.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');
|
|
326
|
-
index.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');
|
|
327
|
-
index.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');
|
|
328
|
-
index.configs.examples = /** @type {import('eslint').Linter.Config[]} */[{
|
|
329
|
-
files: ['**/*.js'],
|
|
330
|
-
name: 'jsdoc/examples/processor',
|
|
331
|
-
plugins: {
|
|
332
|
-
examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)()
|
|
333
|
-
},
|
|
334
|
-
processor: 'examples/examples'
|
|
335
|
-
}, {
|
|
336
|
-
files: ['**/*.md/*.js'],
|
|
337
|
-
name: 'jsdoc/examples/rules',
|
|
338
|
-
rules: {
|
|
339
|
-
// "always" newline rule at end unlikely in sample code
|
|
340
|
-
'eol-last': 0,
|
|
341
|
-
// Wouldn't generally expect example paths to resolve relative to JS file
|
|
342
|
-
'import/no-unresolved': 0,
|
|
343
|
-
// Snippets likely too short to always include import/export info
|
|
344
|
-
'import/unambiguous': 0,
|
|
345
|
-
'jsdoc/require-file-overview': 0,
|
|
346
|
-
// The end of a multiline comment would end the comment the example is in.
|
|
347
|
-
'jsdoc/require-jsdoc': 0,
|
|
348
|
-
// Unlikely to have inadvertent debugging within examples
|
|
349
|
-
'no-console': 0,
|
|
350
|
-
// Often wish to start `@example` code after newline; also may use
|
|
351
|
-
// empty lines for spacing
|
|
352
|
-
'no-multiple-empty-lines': 0,
|
|
353
|
-
// Many variables in examples will be `undefined`
|
|
354
|
-
'no-undef': 0,
|
|
355
|
-
// Common to define variables for clarity without always using them
|
|
356
|
-
'no-unused-vars': 0,
|
|
357
|
-
// See import/no-unresolved
|
|
358
|
-
'node/no-missing-import': 0,
|
|
359
|
-
'node/no-missing-require': 0,
|
|
360
|
-
// Can generally look nicer to pad a little even if code imposes more stringency
|
|
361
|
-
'padded-blocks': 0
|
|
362
|
-
}
|
|
363
|
-
}];
|
|
364
|
-
index.configs['default-expressions'] = /** @type {import('eslint').Linter.Config[]} */[{
|
|
365
|
-
files: ['**/*.js'],
|
|
366
|
-
name: 'jsdoc/default-expressions/processor',
|
|
367
|
-
plugins: {
|
|
368
|
-
examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)({
|
|
369
|
-
checkDefaults: true,
|
|
370
|
-
checkParams: true,
|
|
371
|
-
checkProperties: true
|
|
372
|
-
})
|
|
373
|
-
},
|
|
374
|
-
processor: 'examples/examples'
|
|
375
|
-
}, {
|
|
376
|
-
files: ['**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties'],
|
|
377
|
-
name: 'jsdoc/default-expressions/rules',
|
|
378
|
-
rules: {
|
|
379
|
-
...index.configs.examples[1].rules,
|
|
380
|
-
'chai-friendly/no-unused-expressions': 0,
|
|
381
|
-
'no-empty-function': 0,
|
|
382
|
-
'no-new': 0,
|
|
383
|
-
'no-unused-expressions': 0,
|
|
384
|
-
quotes: ['error', 'double'],
|
|
385
|
-
semi: ['error', 'never'],
|
|
386
|
-
strict: 0
|
|
39
|
+
outputConfig = _indexCjs.default.configs[cfg.config];
|
|
387
40
|
}
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
},
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
}
|
|
404
|
-
return {
|
|
405
|
-
...config,
|
|
406
|
-
plugins: {}
|
|
41
|
+
outputConfig.settings = {
|
|
42
|
+
jsdoc: cfg?.mergeSettings === false ? cfg.settings : (0, _objectDeepMerge.merge)({}, cfg?.settings ?? {}, cfg?.config?.includes('recommended') ? {
|
|
43
|
+
// We may need to drop these for "typescript" (non-"flavor") configs,
|
|
44
|
+
// if support is later added: https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html
|
|
45
|
+
structuredTags: {
|
|
46
|
+
next: {
|
|
47
|
+
required: ['type']
|
|
48
|
+
},
|
|
49
|
+
throws: {
|
|
50
|
+
required: ['type']
|
|
51
|
+
},
|
|
52
|
+
yields: {
|
|
53
|
+
required: ['type']
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
} : {})
|
|
407
57
|
};
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
58
|
+
return outputConfig;
|
|
59
|
+
};
|
|
60
|
+
exports.jsdoc = jsdoc;
|
|
411
61
|
//# sourceMappingURL=index.cjs.map
|