@depup/eslint-plugin-jsdoc 62.8.0-depup.0
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/LICENSE +24 -0
- package/README.md +33 -0
- package/changes.json +18 -0
- package/dist/WarnSettings.cjs +38 -0
- package/dist/WarnSettings.cjs.map +1 -0
- package/dist/WarnSettings.d.ts +17 -0
- package/dist/alignTransform.cjs +402 -0
- package/dist/alignTransform.cjs.map +1 -0
- package/dist/alignTransform.d.ts +34 -0
- package/dist/buildForbidRuleDefinition.cjs +101 -0
- package/dist/buildForbidRuleDefinition.cjs.map +1 -0
- package/dist/buildForbidRuleDefinition.d.ts +15 -0
- package/dist/buildRejectOrPreferRuleDefinition.cjs +352 -0
- package/dist/buildRejectOrPreferRuleDefinition.cjs.map +1 -0
- package/dist/buildRejectOrPreferRuleDefinition.d.ts +9 -0
- package/dist/cjs/WarnSettings.d.ts +16 -0
- package/dist/cjs/alignTransform.d.ts +33 -0
- package/dist/cjs/buildForbidRuleDefinition.d.ts +14 -0
- package/dist/cjs/buildRejectOrPreferRuleDefinition.d.ts +8 -0
- package/dist/cjs/defaultTagOrder.d.ts +4 -0
- package/dist/cjs/exportParser.d.ts +40 -0
- package/dist/cjs/getDefaultTagStructureForMode.d.ts +10 -0
- package/dist/cjs/getJsdocProcessorPlugin.d.cts +5 -0
- package/dist/cjs/getJsdocProcessorPlugin.d.ts +66 -0
- package/dist/cjs/index-cjs.d.ts +23 -0
- package/dist/cjs/index.cjs.d.cts +2 -0
- package/dist/cjs/iterateJsdoc.d.cts +7 -0
- package/dist/cjs/iterateJsdoc.d.ts +495 -0
- package/dist/cjs/jsdocUtils.d.ts +493 -0
- package/dist/cjs/rules/checkAccess.d.ts +2 -0
- package/dist/cjs/rules/checkAlignment.d.ts +2 -0
- package/dist/cjs/rules/checkExamples.d.ts +3 -0
- package/dist/cjs/rules/checkIndentation.d.ts +2 -0
- package/dist/cjs/rules/checkLineAlignment.d.ts +9 -0
- package/dist/cjs/rules/checkParamNames.d.ts +2 -0
- package/dist/cjs/rules/checkPropertyNames.d.ts +2 -0
- package/dist/cjs/rules/checkSyntax.d.ts +2 -0
- package/dist/cjs/rules/checkTagNames.d.ts +2 -0
- package/dist/cjs/rules/checkTemplateNames.d.ts +2 -0
- package/dist/cjs/rules/checkTypes.d.ts +7 -0
- package/dist/cjs/rules/checkValues.d.ts +2 -0
- package/dist/cjs/rules/convertToJsdocComments.d.ts +266 -0
- package/dist/cjs/rules/emptyTags.d.ts +2 -0
- package/dist/cjs/rules/escapeInlineTags.d.ts +2 -0
- package/dist/cjs/rules/implementsOnClasses.d.ts +2 -0
- package/dist/cjs/rules/importsAsDependencies.d.ts +2 -0
- package/dist/cjs/rules/informativeDocs.d.ts +2 -0
- package/dist/cjs/rules/linesBeforeBlock.d.ts +2 -0
- package/dist/cjs/rules/matchDescription.d.ts +2 -0
- package/dist/cjs/rules/matchName.d.ts +2 -0
- package/dist/cjs/rules/multilineBlocks.d.ts +2 -0
- package/dist/cjs/rules/noBadBlocks.d.ts +2 -0
- package/dist/cjs/rules/noBlankBlockDescriptions.d.ts +2 -0
- package/dist/cjs/rules/noBlankBlocks.d.ts +2 -0
- package/dist/cjs/rules/noDefaults.d.ts +2 -0
- package/dist/cjs/rules/noMissingSyntax.d.ts +9 -0
- package/dist/cjs/rules/noMultiAsterisks.d.ts +2 -0
- package/dist/cjs/rules/noRestrictedSyntax.d.ts +2 -0
- package/dist/cjs/rules/noTypes.d.ts +2 -0
- package/dist/cjs/rules/noUndefinedTypes.d.ts +2 -0
- package/dist/cjs/rules/preferImportTag.d.ts +2 -0
- package/dist/cjs/rules/requireAsteriskPrefix.d.ts +2 -0
- package/dist/cjs/rules/requireDescription.d.ts +2 -0
- package/dist/cjs/rules/requireDescriptionCompleteSentence.d.ts +2 -0
- package/dist/cjs/rules/requireExample.d.ts +2 -0
- package/dist/cjs/rules/requireFileOverview.d.ts +2 -0
- package/dist/cjs/rules/requireHyphenBeforeParamDescription.d.ts +2 -0
- package/dist/cjs/rules/requireJsdoc.d.ts +24 -0
- package/dist/cjs/rules/requireParam.d.ts +3 -0
- package/dist/cjs/rules/requireParamDescription.d.ts +2 -0
- package/dist/cjs/rules/requireParamName.d.ts +2 -0
- package/dist/cjs/rules/requireParamType.d.ts +2 -0
- package/dist/cjs/rules/requireProperty.d.ts +2 -0
- package/dist/cjs/rules/requirePropertyDescription.d.ts +2 -0
- package/dist/cjs/rules/requirePropertyName.d.ts +2 -0
- package/dist/cjs/rules/requirePropertyType.d.ts +2 -0
- package/dist/cjs/rules/requireRejects.d.ts +2 -0
- package/dist/cjs/rules/requireReturns.d.ts +2 -0
- package/dist/cjs/rules/requireReturnsCheck.d.ts +2 -0
- package/dist/cjs/rules/requireReturnsDescription.d.ts +2 -0
- package/dist/cjs/rules/requireReturnsType.d.ts +2 -0
- package/dist/cjs/rules/requireTags.d.ts +2 -0
- package/dist/cjs/rules/requireTemplate.d.ts +2 -0
- package/dist/cjs/rules/requireThrows.d.ts +2 -0
- package/dist/cjs/rules/requireYields.d.ts +2 -0
- package/dist/cjs/rules/requireYieldsCheck.d.ts +2 -0
- package/dist/cjs/rules/sortTags.d.ts +2 -0
- package/dist/cjs/rules/tagLines.d.ts +2 -0
- package/dist/cjs/rules/textEscaping.d.ts +2 -0
- package/dist/cjs/rules/tsMethodSignatureStyle.d.ts +2 -0
- package/dist/cjs/rules/tsNoEmptyObjectType.d.ts +2 -0
- package/dist/cjs/rules/tsNoUnnecessaryTemplateExpression.d.ts +2 -0
- package/dist/cjs/rules/tsPreferFunctionType.d.ts +2 -0
- package/dist/cjs/rules/typeFormatting.d.ts +2 -0
- package/dist/cjs/rules/validTypes.d.ts +2 -0
- package/dist/cjs/tagNames.d.ts +15 -0
- package/dist/cjs/utils/hasReturnValue.d.ts +19 -0
- package/dist/defaultTagOrder.cjs +46 -0
- package/dist/defaultTagOrder.cjs.map +1 -0
- package/dist/defaultTagOrder.d.ts +5 -0
- package/dist/exportParser.cjs +732 -0
- package/dist/exportParser.cjs.map +1 -0
- package/dist/exportParser.d.ts +41 -0
- package/dist/generateDocs.cjs +342 -0
- package/dist/generateDocs.cjs.map +1 -0
- package/dist/generateOptions.cjs +62 -0
- package/dist/generateOptions.cjs.map +1 -0
- package/dist/generateRule.cjs +248 -0
- package/dist/generateRule.cjs.map +1 -0
- package/dist/generateRuleTypes.cjs +24 -0
- package/dist/generateRuleTypes.cjs.map +1 -0
- package/dist/getDefaultTagStructureForMode.cjs +289 -0
- package/dist/getDefaultTagStructureForMode.cjs.map +1 -0
- package/dist/getDefaultTagStructureForMode.d.ts +11 -0
- package/dist/getJsdocProcessorPlugin.cjs +587 -0
- package/dist/getJsdocProcessorPlugin.cjs.map +1 -0
- package/dist/getJsdocProcessorPlugin.cts +5 -0
- package/dist/getJsdocProcessorPlugin.d.ts +67 -0
- package/dist/index-cjs.cjs +595 -0
- package/dist/index-cjs.cjs.map +1 -0
- package/dist/index-cjs.d.ts +24 -0
- package/dist/index-esm.cjs +162 -0
- package/dist/index-esm.cjs.map +1 -0
- package/dist/index-esm.d.ts +72 -0
- package/dist/index.cjs +743 -0
- package/dist/index.cjs.cts +3 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +93 -0
- package/dist/iterateJsdoc.cjs +2150 -0
- package/dist/iterateJsdoc.cjs.map +1 -0
- package/dist/iterateJsdoc.cts +7 -0
- package/dist/iterateJsdoc.d.ts +496 -0
- package/dist/jsdocUtils.cjs +1725 -0
- package/dist/jsdocUtils.cjs.map +1 -0
- package/dist/jsdocUtils.d.ts +494 -0
- package/dist/rules/checkAccess.cjs +40 -0
- package/dist/rules/checkAccess.cjs.map +1 -0
- package/dist/rules/checkAccess.d.ts +3 -0
- package/dist/rules/checkAlignment.cjs +78 -0
- package/dist/rules/checkAlignment.cjs.map +1 -0
- package/dist/rules/checkAlignment.d.ts +3 -0
- package/dist/rules/checkExamples.cjs +521 -0
- package/dist/rules/checkExamples.cjs.map +1 -0
- package/dist/rules/checkExamples.d.ts +4 -0
- package/dist/rules/checkIndentation.cjs +170 -0
- package/dist/rules/checkIndentation.cjs.map +1 -0
- package/dist/rules/checkIndentation.d.ts +3 -0
- package/dist/rules/checkLineAlignment.cjs +398 -0
- package/dist/rules/checkLineAlignment.cjs.map +1 -0
- package/dist/rules/checkLineAlignment.d.ts +10 -0
- package/dist/rules/checkParamNames.cjs +407 -0
- package/dist/rules/checkParamNames.cjs.map +1 -0
- package/dist/rules/checkParamNames.d.ts +3 -0
- package/dist/rules/checkPropertyNames.cjs +135 -0
- package/dist/rules/checkPropertyNames.cjs.map +1 -0
- package/dist/rules/checkPropertyNames.d.ts +3 -0
- package/dist/rules/checkSyntax.cjs +38 -0
- package/dist/rules/checkSyntax.cjs.map +1 -0
- package/dist/rules/checkSyntax.d.ts +3 -0
- package/dist/rules/checkTagNames.cjs +312 -0
- package/dist/rules/checkTagNames.cjs.map +1 -0
- package/dist/rules/checkTagNames.d.ts +3 -0
- package/dist/rules/checkTemplateNames.cjs +185 -0
- package/dist/rules/checkTemplateNames.cjs.map +1 -0
- package/dist/rules/checkTemplateNames.d.ts +3 -0
- package/dist/rules/checkTypes.cjs +111 -0
- package/dist/rules/checkTypes.cjs.map +1 -0
- package/dist/rules/checkTypes.d.ts +8 -0
- package/dist/rules/checkValues.cjs +166 -0
- package/dist/rules/checkValues.cjs.map +1 -0
- package/dist/rules/checkValues.d.ts +3 -0
- package/dist/rules/convertToJsdocComments.cjs +356 -0
- package/dist/rules/convertToJsdocComments.cjs.map +1 -0
- package/dist/rules/convertToJsdocComments.d.ts +267 -0
- package/dist/rules/emptyTags.cjs +85 -0
- package/dist/rules/emptyTags.cjs.map +1 -0
- package/dist/rules/emptyTags.d.ts +3 -0
- package/dist/rules/escapeInlineTags.cjs +149 -0
- package/dist/rules/escapeInlineTags.cjs.map +1 -0
- package/dist/rules/escapeInlineTags.d.ts +3 -0
- package/dist/rules/implementsOnClasses.cjs +74 -0
- package/dist/rules/implementsOnClasses.cjs.map +1 -0
- package/dist/rules/implementsOnClasses.d.ts +3 -0
- package/dist/rules/importsAsDependencies.cjs +104 -0
- package/dist/rules/importsAsDependencies.cjs.map +1 -0
- package/dist/rules/importsAsDependencies.d.ts +3 -0
- package/dist/rules/informativeDocs.cjs +187 -0
- package/dist/rules/informativeDocs.cjs.map +1 -0
- package/dist/rules/informativeDocs.d.ts +3 -0
- package/dist/rules/linesBeforeBlock.cjs +120 -0
- package/dist/rules/linesBeforeBlock.cjs.map +1 -0
- package/dist/rules/linesBeforeBlock.d.ts +3 -0
- package/dist/rules/matchDescription.cjs +356 -0
- package/dist/rules/matchDescription.cjs.map +1 -0
- package/dist/rules/matchDescription.d.ts +3 -0
- package/dist/rules/matchName.cjs +160 -0
- package/dist/rules/matchName.cjs.map +1 -0
- package/dist/rules/matchName.d.ts +3 -0
- package/dist/rules/multilineBlocks.cjs +431 -0
- package/dist/rules/multilineBlocks.cjs.map +1 -0
- package/dist/rules/multilineBlocks.d.ts +3 -0
- package/dist/rules/noBadBlocks.cjs +100 -0
- package/dist/rules/noBadBlocks.cjs.map +1 -0
- package/dist/rules/noBadBlocks.d.ts +3 -0
- package/dist/rules/noBlankBlockDescriptions.cjs +63 -0
- package/dist/rules/noBlankBlockDescriptions.cjs.map +1 -0
- package/dist/rules/noBlankBlockDescriptions.d.ts +3 -0
- package/dist/rules/noBlankBlocks.cjs +54 -0
- package/dist/rules/noBlankBlocks.cjs.map +1 -0
- package/dist/rules/noBlankBlocks.d.ts +3 -0
- package/dist/rules/noDefaults.cjs +102 -0
- package/dist/rules/noDefaults.cjs.map +1 -0
- package/dist/rules/noDefaults.d.ts +3 -0
- package/dist/rules/noMissingSyntax.cjs +196 -0
- package/dist/rules/noMissingSyntax.cjs.map +1 -0
- package/dist/rules/noMissingSyntax.d.ts +10 -0
- package/dist/rules/noMultiAsterisks.cjs +126 -0
- package/dist/rules/noMultiAsterisks.cjs.map +1 -0
- package/dist/rules/noMultiAsterisks.d.ts +3 -0
- package/dist/rules/noRestrictedSyntax.cjs +68 -0
- package/dist/rules/noRestrictedSyntax.cjs.map +1 -0
- package/dist/rules/noRestrictedSyntax.d.ts +3 -0
- package/dist/rules/noTypes.cjs +101 -0
- package/dist/rules/noTypes.cjs.map +1 -0
- package/dist/rules/noTypes.d.ts +3 -0
- package/dist/rules/noUndefinedTypes.cjs +588 -0
- package/dist/rules/noUndefinedTypes.cjs.map +1 -0
- package/dist/rules/noUndefinedTypes.d.ts +3 -0
- package/dist/rules/preferImportTag.cjs +362 -0
- package/dist/rules/preferImportTag.cjs.map +1 -0
- package/dist/rules/preferImportTag.d.ts +3 -0
- package/dist/rules/requireAsteriskPrefix.cjs +190 -0
- package/dist/rules/requireAsteriskPrefix.cjs.map +1 -0
- package/dist/rules/requireAsteriskPrefix.d.ts +3 -0
- package/dist/rules/requireDescription.cjs +164 -0
- package/dist/rules/requireDescription.cjs.map +1 -0
- package/dist/rules/requireDescription.d.ts +3 -0
- package/dist/rules/requireDescriptionCompleteSentence.cjs +321 -0
- package/dist/rules/requireDescriptionCompleteSentence.cjs.map +1 -0
- package/dist/rules/requireDescriptionCompleteSentence.d.ts +3 -0
- package/dist/rules/requireExample.cjs +133 -0
- package/dist/rules/requireExample.cjs.map +1 -0
- package/dist/rules/requireExample.d.ts +3 -0
- package/dist/rules/requireFileOverview.cjs +194 -0
- package/dist/rules/requireFileOverview.cjs.map +1 -0
- package/dist/rules/requireFileOverview.d.ts +3 -0
- package/dist/rules/requireHyphenBeforeParamDescription.cjs +166 -0
- package/dist/rules/requireHyphenBeforeParamDescription.cjs.map +1 -0
- package/dist/rules/requireHyphenBeforeParamDescription.d.ts +3 -0
- package/dist/rules/requireJsdoc.cjs +722 -0
- package/dist/rules/requireJsdoc.cjs.map +1 -0
- package/dist/rules/requireJsdoc.d.ts +25 -0
- package/dist/rules/requireParam.cjs +772 -0
- package/dist/rules/requireParam.cjs.map +1 -0
- package/dist/rules/requireParam.d.ts +4 -0
- package/dist/rules/requireParamDescription.cjs +105 -0
- package/dist/rules/requireParamDescription.cjs.map +1 -0
- package/dist/rules/requireParamDescription.d.ts +3 -0
- package/dist/rules/requireParamName.cjs +68 -0
- package/dist/rules/requireParamName.cjs.map +1 -0
- package/dist/rules/requireParamName.d.ts +3 -0
- package/dist/rules/requireParamType.cjs +104 -0
- package/dist/rules/requireParamType.cjs.map +1 -0
- package/dist/rules/requireParamType.d.ts +3 -0
- package/dist/rules/requireProperty.cjs +63 -0
- package/dist/rules/requireProperty.cjs.map +1 -0
- package/dist/rules/requireProperty.d.ts +3 -0
- package/dist/rules/requirePropertyDescription.cjs +29 -0
- package/dist/rules/requirePropertyDescription.cjs.map +1 -0
- package/dist/rules/requirePropertyDescription.d.ts +3 -0
- package/dist/rules/requirePropertyName.cjs +29 -0
- package/dist/rules/requirePropertyName.cjs.map +1 -0
- package/dist/rules/requirePropertyName.d.ts +3 -0
- package/dist/rules/requirePropertyType.cjs +29 -0
- package/dist/rules/requirePropertyType.cjs.map +1 -0
- package/dist/rules/requirePropertyType.d.ts +3 -0
- package/dist/rules/requireRejects.cjs +226 -0
- package/dist/rules/requireRejects.cjs.map +1 -0
- package/dist/rules/requireRejects.d.ts +3 -0
- package/dist/rules/requireReturns.cjs +262 -0
- package/dist/rules/requireReturns.cjs.map +1 -0
- package/dist/rules/requireReturns.d.ts +3 -0
- package/dist/rules/requireReturnsCheck.cjs +140 -0
- package/dist/rules/requireReturnsCheck.cjs.map +1 -0
- package/dist/rules/requireReturnsCheck.d.ts +3 -0
- package/dist/rules/requireReturnsDescription.cjs +72 -0
- package/dist/rules/requireReturnsDescription.cjs.map +1 -0
- package/dist/rules/requireReturnsDescription.d.ts +3 -0
- package/dist/rules/requireReturnsType.cjs +68 -0
- package/dist/rules/requireReturnsType.cjs.map +1 -0
- package/dist/rules/requireReturnsType.d.ts +3 -0
- package/dist/rules/requireTags.cjs +74 -0
- package/dist/rules/requireTags.cjs.map +1 -0
- package/dist/rules/requireTags.d.ts +3 -0
- package/dist/rules/requireTemplate.cjs +220 -0
- package/dist/rules/requireTemplate.cjs.map +1 -0
- package/dist/rules/requireTemplate.d.ts +3 -0
- package/dist/rules/requireThrows.cjs +118 -0
- package/dist/rules/requireThrows.cjs.map +1 -0
- package/dist/rules/requireThrows.d.ts +3 -0
- package/dist/rules/requireYields.cjs +224 -0
- package/dist/rules/requireYields.cjs.map +1 -0
- package/dist/rules/requireYields.d.ts +3 -0
- package/dist/rules/requireYieldsCheck.cjs +179 -0
- package/dist/rules/requireYieldsCheck.cjs.map +1 -0
- package/dist/rules/requireYieldsCheck.d.ts +3 -0
- package/dist/rules/sortTags.cjs +656 -0
- package/dist/rules/sortTags.cjs.map +1 -0
- package/dist/rules/sortTags.d.ts +3 -0
- package/dist/rules/tagLines.cjs +374 -0
- package/dist/rules/tagLines.cjs.map +1 -0
- package/dist/rules/tagLines.d.ts +3 -0
- package/dist/rules/textEscaping.cjs +141 -0
- package/dist/rules/textEscaping.cjs.map +1 -0
- package/dist/rules/textEscaping.d.ts +3 -0
- package/dist/rules/tsMethodSignatureStyle.cjs +240 -0
- package/dist/rules/tsMethodSignatureStyle.cjs.map +1 -0
- package/dist/rules/tsMethodSignatureStyle.d.ts +3 -0
- package/dist/rules/tsNoEmptyObjectType.cjs +62 -0
- package/dist/rules/tsNoEmptyObjectType.cjs.map +1 -0
- package/dist/rules/tsNoEmptyObjectType.d.ts +3 -0
- package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs +104 -0
- package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs.map +1 -0
- package/dist/rules/tsNoUnnecessaryTemplateExpression.d.ts +3 -0
- package/dist/rules/tsPreferFunctionType.cjs +110 -0
- package/dist/rules/tsPreferFunctionType.cjs.map +1 -0
- package/dist/rules/tsPreferFunctionType.d.ts +3 -0
- package/dist/rules/typeFormatting.cjs +607 -0
- package/dist/rules/typeFormatting.cjs.map +1 -0
- package/dist/rules/typeFormatting.d.ts +3 -0
- package/dist/rules/validTypes.cjs +328 -0
- package/dist/rules/validTypes.cjs.map +1 -0
- package/dist/rules/validTypes.d.ts +3 -0
- package/dist/rules.d.ts +3203 -0
- package/dist/tagNames.cjs +244 -0
- package/dist/tagNames.cjs.map +1 -0
- package/dist/tagNames.d.ts +16 -0
- package/dist/to-valid-identifier.cjs +263 -0
- package/dist/utils/hasReturnValue.cjs +495 -0
- package/dist/utils/hasReturnValue.cjs.map +1 -0
- package/dist/utils/hasReturnValue.d.ts +20 -0
- package/package.json +220 -0
- package/rollup.config.js +16 -0
- package/src/WarnSettings.js +34 -0
- package/src/alignTransform.js +444 -0
- package/src/buildForbidRuleDefinition.js +106 -0
- package/src/buildRejectOrPreferRuleDefinition.js +481 -0
- package/src/defaultTagOrder.js +169 -0
- package/src/exportParser.js +973 -0
- package/src/getDefaultTagStructureForMode.js +968 -0
- package/src/getJsdocProcessorPlugin.cts +5 -0
- package/src/getJsdocProcessorPlugin.js +692 -0
- package/src/index-cjs.js +755 -0
- package/src/index-esm.js +196 -0
- package/src/index.cjs.cts +3 -0
- package/src/index.js +940 -0
- package/src/iterateJsdoc.cts +7 -0
- package/src/iterateJsdoc.js +2612 -0
- package/src/jsdocUtils.js +2158 -0
- package/src/rules/checkAccess.js +45 -0
- package/src/rules/checkAlignment.js +82 -0
- package/src/rules/checkExamples.js +613 -0
- package/src/rules/checkIndentation.js +176 -0
- package/src/rules/checkLineAlignment.js +453 -0
- package/src/rules/checkParamNames.js +541 -0
- package/src/rules/checkPropertyNames.js +174 -0
- package/src/rules/checkSyntax.js +30 -0
- package/src/rules/checkTagNames.js +414 -0
- package/src/rules/checkTemplateNames.js +208 -0
- package/src/rules/checkTypes.js +130 -0
- package/src/rules/checkValues.js +264 -0
- package/src/rules/convertToJsdocComments.js +444 -0
- package/src/rules/emptyTags.js +106 -0
- package/src/rules/escapeInlineTags.js +189 -0
- package/src/rules/implementsOnClasses.js +78 -0
- package/src/rules/importsAsDependencies.js +132 -0
- package/src/rules/informativeDocs.js +228 -0
- package/src/rules/linesBeforeBlock.js +144 -0
- package/src/rules/matchDescription.js +413 -0
- package/src/rules/matchName.js +179 -0
- package/src/rules/multilineBlocks.js +562 -0
- package/src/rules/noBadBlocks.js +127 -0
- package/src/rules/noBlankBlockDescriptions.js +69 -0
- package/src/rules/noBlankBlocks.js +55 -0
- package/src/rules/noDefaults.js +104 -0
- package/src/rules/noMissingSyntax.js +215 -0
- package/src/rules/noMultiAsterisks.js +162 -0
- package/src/rules/noRestrictedSyntax.js +72 -0
- package/src/rules/noTypes.js +108 -0
- package/src/rules/noUndefinedTypes.js +797 -0
- package/src/rules/preferImportTag.js +521 -0
- package/src/rules/requireAsteriskPrefix.js +217 -0
- package/src/rules/requireDescription.js +190 -0
- package/src/rules/requireDescriptionCompleteSentence.js +376 -0
- package/src/rules/requireExample.js +143 -0
- package/src/rules/requireFileOverview.js +213 -0
- package/src/rules/requireHyphenBeforeParamDescription.js +210 -0
- package/src/rules/requireJsdoc.js +897 -0
- package/src/rules/requireParam.js +848 -0
- package/src/rules/requireParamDescription.js +110 -0
- package/src/rules/requireParamName.js +69 -0
- package/src/rules/requireParamType.js +109 -0
- package/src/rules/requireProperty.js +66 -0
- package/src/rules/requirePropertyDescription.js +25 -0
- package/src/rules/requirePropertyName.js +25 -0
- package/src/rules/requirePropertyType.js +25 -0
- package/src/rules/requireRejects.js +246 -0
- package/src/rules/requireReturns.js +291 -0
- package/src/rules/requireReturnsCheck.js +180 -0
- package/src/rules/requireReturnsDescription.js +73 -0
- package/src/rules/requireReturnsType.js +65 -0
- package/src/rules/requireTags.js +85 -0
- package/src/rules/requireTemplate.js +246 -0
- package/src/rules/requireThrows.js +128 -0
- package/src/rules/requireYields.js +265 -0
- package/src/rules/requireYieldsCheck.js +226 -0
- package/src/rules/sortTags.js +766 -0
- package/src/rules/tagLines.js +486 -0
- package/src/rules/textEscaping.js +158 -0
- package/src/rules/tsMethodSignatureStyle.js +300 -0
- package/src/rules/tsNoEmptyObjectType.js +61 -0
- package/src/rules/tsNoUnnecessaryTemplateExpression.js +130 -0
- package/src/rules/tsPreferFunctionType.js +127 -0
- package/src/rules/typeFormatting.js +690 -0
- package/src/rules/validTypes.js +466 -0
- package/src/rules.d.ts +3203 -0
- package/src/tagNames.js +301 -0
- package/src/utils/hasReturnValue.js +572 -0
- package/typings/babel__eslint-parser.d.ts +1 -0
- package/typings/gitdown.d.ts +16 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _buildRejectOrPreferRuleDefinition = require("../buildRejectOrPreferRuleDefinition.cjs");
|
|
8
|
+
var _jsdocUtils = require("../jsdocUtils.cjs");
|
|
9
|
+
/**
|
|
10
|
+
* @callback CheckNativeTypes
|
|
11
|
+
* Iterates strict types to see if any should be added to `invalidTypes` (and
|
|
12
|
+
* the the relevant strict type returned as the new preferred type).
|
|
13
|
+
* @param {import('../iterateJsdoc.js').PreferredTypes} preferredTypes
|
|
14
|
+
* @param {string} typeNodeName
|
|
15
|
+
* @param {string|undefined} preferred
|
|
16
|
+
* @param {import('jsdoc-type-pratt-parser').NonRootResult|undefined} parentNode
|
|
17
|
+
* @param {(string|false|undefined)[][]} invalidTypes
|
|
18
|
+
* @returns {string|undefined} The `preferred` type string, optionally changed
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/** @type {CheckNativeTypes} */
|
|
22
|
+
const checkNativeTypes = (preferredTypes, typeNodeName, preferred, parentNode, invalidTypes) => {
|
|
23
|
+
let changedPreferred = preferred;
|
|
24
|
+
for (const strictNativeType of _jsdocUtils.strictNativeTypes) {
|
|
25
|
+
if (strictNativeType === 'object' && (
|
|
26
|
+
// This is not set to remap with exact type match (e.g.,
|
|
27
|
+
// `object: 'Object'`), so can ignore (including if circular)
|
|
28
|
+
!preferredTypes?.[typeNodeName] ||
|
|
29
|
+
// Although present on `preferredTypes` for remapping, this is a
|
|
30
|
+
// parent object without a parent match (and not
|
|
31
|
+
// `unifyParentAndChildTypeChecks`) and we don't want
|
|
32
|
+
// `object<>` given TypeScript issue https://github.com/microsoft/TypeScript/issues/20555
|
|
33
|
+
/**
|
|
34
|
+
* @type {import('jsdoc-type-pratt-parser').GenericResult}
|
|
35
|
+
*/
|
|
36
|
+
parentNode?.elements?.length && (
|
|
37
|
+
/**
|
|
38
|
+
* @type {import('jsdoc-type-pratt-parser').GenericResult}
|
|
39
|
+
*/
|
|
40
|
+
parentNode?.left?.type === 'JsdocTypeName' &&
|
|
41
|
+
/**
|
|
42
|
+
* @type {import('jsdoc-type-pratt-parser').GenericResult}
|
|
43
|
+
*/
|
|
44
|
+
parentNode?.left?.value === 'Object'))) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
if (strictNativeType !== typeNodeName && strictNativeType.toLowerCase() === typeNodeName.toLowerCase() && (
|
|
48
|
+
// Don't report if user has own map for a strict native type
|
|
49
|
+
!preferredTypes || preferredTypes?.[strictNativeType] === undefined)) {
|
|
50
|
+
changedPreferred = strictNativeType;
|
|
51
|
+
invalidTypes.push([typeNodeName, changedPreferred]);
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return changedPreferred;
|
|
56
|
+
};
|
|
57
|
+
var _default = exports.default = (0, _buildRejectOrPreferRuleDefinition.buildRejectOrPreferRuleDefinition)({
|
|
58
|
+
checkNativeTypes,
|
|
59
|
+
schema: [{
|
|
60
|
+
additionalProperties: false,
|
|
61
|
+
properties: {
|
|
62
|
+
exemptTagContexts: {
|
|
63
|
+
description: 'Avoids reporting when a bad type is found on a specified tag.',
|
|
64
|
+
items: {
|
|
65
|
+
additionalProperties: false,
|
|
66
|
+
properties: {
|
|
67
|
+
tag: {
|
|
68
|
+
description: 'Set a key `tag` to the tag to exempt',
|
|
69
|
+
type: 'string'
|
|
70
|
+
},
|
|
71
|
+
types: {
|
|
72
|
+
description: `Set to \`true\` to indicate that any types on that tag will be allowed,
|
|
73
|
+
or to an array of strings which will only allow specific bad types.
|
|
74
|
+
If an array of strings is given, these must match the type exactly,
|
|
75
|
+
e.g., if you only allow \`"object"\`, it will not allow
|
|
76
|
+
\`"object<string, string>"\`. Note that this is different from the
|
|
77
|
+
behavior of \`settings.jsdoc.preferredTypes\`. This option is useful
|
|
78
|
+
for normally restricting generic types like \`object\` with
|
|
79
|
+
\`preferredTypes\`, but allowing \`typedef\` to indicate that its base
|
|
80
|
+
type is \`object\`.`,
|
|
81
|
+
oneOf: [{
|
|
82
|
+
type: 'boolean'
|
|
83
|
+
}, {
|
|
84
|
+
items: {
|
|
85
|
+
type: 'string'
|
|
86
|
+
},
|
|
87
|
+
type: 'array'
|
|
88
|
+
}]
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
type: 'object'
|
|
92
|
+
},
|
|
93
|
+
type: 'array'
|
|
94
|
+
},
|
|
95
|
+
noDefaults: {
|
|
96
|
+
description: `Insists that only the supplied option type
|
|
97
|
+
map is to be used, and that the default preferences (such as "string"
|
|
98
|
+
over "String") will not be enforced. The option's default is \`false\`.`,
|
|
99
|
+
type: 'boolean'
|
|
100
|
+
},
|
|
101
|
+
unifyParentAndChildTypeChecks: {
|
|
102
|
+
description: `@deprecated Use the \`preferredTypes[preferredType]\` setting of the same name instead.
|
|
103
|
+
If this option is \`true\`, will currently override \`unifyParentAndChildTypeChecks\` on the \`preferredTypes\` setting.`,
|
|
104
|
+
type: 'boolean'
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
type: 'object'
|
|
108
|
+
}]
|
|
109
|
+
});
|
|
110
|
+
module.exports = exports.default;
|
|
111
|
+
//# sourceMappingURL=checkTypes.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkTypes.cjs","names":["_buildRejectOrPreferRuleDefinition","require","_jsdocUtils","checkNativeTypes","preferredTypes","typeNodeName","preferred","parentNode","invalidTypes","changedPreferred","strictNativeType","strictNativeTypes","elements","length","left","type","value","toLowerCase","undefined","push","_default","exports","default","buildRejectOrPreferRuleDefinition","schema","additionalProperties","properties","exemptTagContexts","description","items","tag","types","oneOf","noDefaults","unifyParentAndChildTypeChecks","module"],"sources":["../../src/rules/checkTypes.js"],"sourcesContent":["import {\n buildRejectOrPreferRuleDefinition,\n} from '../buildRejectOrPreferRuleDefinition.js';\nimport {\n strictNativeTypes,\n} from '../jsdocUtils.js';\n\n/**\n * @callback CheckNativeTypes\n * Iterates strict types to see if any should be added to `invalidTypes` (and\n * the the relevant strict type returned as the new preferred type).\n * @param {import('../iterateJsdoc.js').PreferredTypes} preferredTypes\n * @param {string} typeNodeName\n * @param {string|undefined} preferred\n * @param {import('jsdoc-type-pratt-parser').NonRootResult|undefined} parentNode\n * @param {(string|false|undefined)[][]} invalidTypes\n * @returns {string|undefined} The `preferred` type string, optionally changed\n */\n\n/** @type {CheckNativeTypes} */\nconst checkNativeTypes = (preferredTypes, typeNodeName, preferred, parentNode, invalidTypes) => {\n let changedPreferred = preferred;\n for (const strictNativeType of strictNativeTypes) {\n if (\n strictNativeType === 'object' &&\n (\n // This is not set to remap with exact type match (e.g.,\n // `object: 'Object'`), so can ignore (including if circular)\n !preferredTypes?.[typeNodeName] ||\n // Although present on `preferredTypes` for remapping, this is a\n // parent object without a parent match (and not\n // `unifyParentAndChildTypeChecks`) and we don't want\n // `object<>` given TypeScript issue https://github.com/microsoft/TypeScript/issues/20555\n /**\n * @type {import('jsdoc-type-pratt-parser').GenericResult}\n */\n (\n parentNode\n )?.elements?.length && (\n /**\n * @type {import('jsdoc-type-pratt-parser').GenericResult}\n */\n (\n parentNode\n )?.left?.type === 'JsdocTypeName' &&\n /**\n * @type {import('jsdoc-type-pratt-parser').GenericResult}\n */\n (parentNode)?.left?.value === 'Object'\n )\n )\n ) {\n continue;\n }\n\n if (strictNativeType !== typeNodeName &&\n strictNativeType.toLowerCase() === typeNodeName.toLowerCase() &&\n\n // Don't report if user has own map for a strict native type\n (!preferredTypes || preferredTypes?.[strictNativeType] === undefined)\n ) {\n changedPreferred = strictNativeType;\n invalidTypes.push([\n typeNodeName, changedPreferred,\n ]);\n break;\n }\n }\n\n return changedPreferred;\n};\n\nexport default buildRejectOrPreferRuleDefinition({\n checkNativeTypes,\n schema: [\n {\n additionalProperties: false,\n properties: {\n exemptTagContexts: {\n description: 'Avoids reporting when a bad type is found on a specified tag.',\n items: {\n additionalProperties: false,\n properties: {\n tag: {\n description: 'Set a key `tag` to the tag to exempt',\n type: 'string',\n },\n types: {\n description: `Set to \\`true\\` to indicate that any types on that tag will be allowed,\nor to an array of strings which will only allow specific bad types.\nIf an array of strings is given, these must match the type exactly,\ne.g., if you only allow \\`\"object\"\\`, it will not allow\n\\`\"object<string, string>\"\\`. Note that this is different from the\nbehavior of \\`settings.jsdoc.preferredTypes\\`. This option is useful\nfor normally restricting generic types like \\`object\\` with\n\\`preferredTypes\\`, but allowing \\`typedef\\` to indicate that its base\ntype is \\`object\\`.`,\n oneOf: [\n {\n type: 'boolean',\n },\n {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n ],\n },\n },\n type: 'object',\n },\n type: 'array',\n },\n noDefaults: {\n description: `Insists that only the supplied option type\nmap is to be used, and that the default preferences (such as \"string\"\nover \"String\") will not be enforced. The option's default is \\`false\\`.`,\n type: 'boolean',\n },\n unifyParentAndChildTypeChecks: {\n description: `@deprecated Use the \\`preferredTypes[preferredType]\\` setting of the same name instead.\nIf this option is \\`true\\`, will currently override \\`unifyParentAndChildTypeChecks\\` on the \\`preferredTypes\\` setting.`,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n});\n"],"mappings":";;;;;;AAAA,IAAAA,kCAAA,GAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAME,gBAAgB,GAAGA,CAACC,cAAc,EAAEC,YAAY,EAAEC,SAAS,EAAEC,UAAU,EAAEC,YAAY,KAAK;EAC9F,IAAIC,gBAAgB,GAAGH,SAAS;EAChC,KAAK,MAAMI,gBAAgB,IAAIC,6BAAiB,EAAE;IAChD,IACED,gBAAgB,KAAK,QAAQ;IAE3B;IACA;IACA,CAACN,cAAc,GAAGC,YAAY,CAAC;IAC/B;IACA;IACA;IACA;IACA;AACR;AACA;IAEUE,UAAU,EACTK,QAAQ,EAAEC,MAAM;IACnB;AACR;AACA;IAEYN,UAAU,EACTO,IAAI,EAAEC,IAAI,KAAK,eAAe;IACjC;AACV;AACA;IACWR,UAAU,EAAGO,IAAI,EAAEE,KAAK,KAAK,QAAQ,CACvC,CACF,EACD;MACA;IACF;IAEA,IAAIN,gBAAgB,KAAKL,YAAY,IACnCK,gBAAgB,CAACO,WAAW,CAAC,CAAC,KAAKZ,YAAY,CAACY,WAAW,CAAC,CAAC;IAE7D;IACC,CAACb,cAAc,IAAIA,cAAc,GAAGM,gBAAgB,CAAC,KAAKQ,SAAS,CAAC,EACrE;MACAT,gBAAgB,GAAGC,gBAAgB;MACnCF,YAAY,CAACW,IAAI,CAAC,CAChBd,YAAY,EAAEI,gBAAgB,CAC/B,CAAC;MACF;IACF;EACF;EAEA,OAAOA,gBAAgB;AACzB,CAAC;AAAC,IAAAW,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa,IAAAC,oEAAiC,EAAC;EAC/CpB,gBAAgB;EAChBqB,MAAM,EAAE,CACN;IACEC,oBAAoB,EAAE,KAAK;IAC3BC,UAAU,EAAE;MACVC,iBAAiB,EAAE;QACjBC,WAAW,EAAE,+DAA+D;QAC5EC,KAAK,EAAE;UACLJ,oBAAoB,EAAE,KAAK;UAC3BC,UAAU,EAAE;YACVI,GAAG,EAAE;cACHF,WAAW,EAAE,sCAAsC;cACnDb,IAAI,EAAE;YACR,CAAC;YACDgB,KAAK,EAAE;cACLH,WAAW,EAAE;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;cACJI,KAAK,EAAE,CACL;gBACEjB,IAAI,EAAE;cACR,CAAC,EACD;gBACEc,KAAK,EAAE;kBACLd,IAAI,EAAE;gBACR,CAAC;gBACDA,IAAI,EAAE;cACR,CAAC;YAEL;UACF,CAAC;UACDA,IAAI,EAAE;QACR,CAAC;QACDA,IAAI,EAAE;MACR,CAAC;MACDkB,UAAU,EAAE;QACVL,WAAW,EAAE;AACvB;AACA,wEAAwE;QAC9Db,IAAI,EAAE;MACR,CAAC;MACDmB,6BAA6B,EAAE;QAC7BN,WAAW,EAAE;AACvB,yHAAyH;QAC/Gb,IAAI,EAAE;MACR;IACF,CAAC;IACDA,IAAI,EAAE;EACR,CAAC;AAEL,CAAC,CAAC;AAAAoB,MAAA,CAAAd,OAAA,GAAAA,OAAA,CAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
declare const _default: import("eslint").Rule.RuleModule;
|
|
2
|
+
export default _default;
|
|
3
|
+
/**
|
|
4
|
+
* Iterates strict types to see if any should be added to `invalidTypes` (and
|
|
5
|
+
* the the relevant strict type returned as the new preferred type).
|
|
6
|
+
*/
|
|
7
|
+
export type CheckNativeTypes = (preferredTypes: import("../iterateJsdoc.js").PreferredTypes, typeNodeName: string, preferred: string | undefined, parentNode: import("jsdoc-type-pratt-parser").NonRootResult | undefined, invalidTypes: (string | false | undefined)[][]) => string | undefined;
|
|
8
|
+
//# sourceMappingURL=checkTypes.d.ts.map
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc.cjs"));
|
|
8
|
+
var _parseImportsExports = require("parse-imports-exports");
|
|
9
|
+
var _semver = _interopRequireDefault(require("semver"));
|
|
10
|
+
var _spdxExpressionParse = _interopRequireDefault(require("spdx-expression-parse"));
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const allowedKinds = new Set(['class', 'constant', 'event', 'external', 'file', 'function', 'member', 'mixin', 'module', 'namespace', 'typedef']);
|
|
13
|
+
var _default = exports.default = (0, _iterateJsdoc.default)(({
|
|
14
|
+
context,
|
|
15
|
+
report,
|
|
16
|
+
settings,
|
|
17
|
+
utils
|
|
18
|
+
}) => {
|
|
19
|
+
const options = context.options[0] || {};
|
|
20
|
+
const {
|
|
21
|
+
allowedAuthors = null,
|
|
22
|
+
allowedLicenses = null,
|
|
23
|
+
licensePattern = '/([^\n\r]*)/gv',
|
|
24
|
+
numericOnlyVariation = false
|
|
25
|
+
} = options;
|
|
26
|
+
utils.forEachPreferredTag('version', (jsdocParameter, targetTagName) => {
|
|
27
|
+
const version = /** @type {string} */utils.getTagDescription(jsdocParameter).trim();
|
|
28
|
+
if (!version) {
|
|
29
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
30
|
+
} else if (!_semver.default.valid(version)) {
|
|
31
|
+
report(`Invalid JSDoc @${targetTagName}: "${utils.getTagDescription(jsdocParameter)}".`, null, jsdocParameter);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
utils.forEachPreferredTag('kind', (jsdocParameter, targetTagName) => {
|
|
35
|
+
const kind = /** @type {string} */utils.getTagDescription(jsdocParameter).trim();
|
|
36
|
+
if (!kind) {
|
|
37
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
38
|
+
} else if (!allowedKinds.has(kind)) {
|
|
39
|
+
report(`Invalid JSDoc @${targetTagName}: "${utils.getTagDescription(jsdocParameter)}"; ` + `must be one of: ${[...allowedKinds].join(', ')}.`, null, jsdocParameter);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
if (numericOnlyVariation) {
|
|
43
|
+
utils.forEachPreferredTag('variation', (jsdocParameter, targetTagName) => {
|
|
44
|
+
const variation = /** @type {string} */utils.getTagDescription(jsdocParameter).trim();
|
|
45
|
+
if (!variation) {
|
|
46
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
47
|
+
} else if (!Number.isInteger(Number(variation)) || Number(variation) <= 0) {
|
|
48
|
+
report(`Invalid JSDoc @${targetTagName}: "${utils.getTagDescription(jsdocParameter)}".`, null, jsdocParameter);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
utils.forEachPreferredTag('since', (jsdocParameter, targetTagName) => {
|
|
53
|
+
const version = /** @type {string} */utils.getTagDescription(jsdocParameter).trim();
|
|
54
|
+
if (!version) {
|
|
55
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
56
|
+
} else if (!_semver.default.valid(version)) {
|
|
57
|
+
report(`Invalid JSDoc @${targetTagName}: "${utils.getTagDescription(jsdocParameter)}".`, null, jsdocParameter);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
utils.forEachPreferredTag('license', (jsdocParameter, targetTagName) => {
|
|
61
|
+
const licenseRegex = utils.getRegexFromString(licensePattern, 'g');
|
|
62
|
+
const matches = /** @type {string} */utils.getTagDescription(jsdocParameter).matchAll(licenseRegex);
|
|
63
|
+
let positiveMatch = false;
|
|
64
|
+
for (const match of matches) {
|
|
65
|
+
const license = match[1] || match[0];
|
|
66
|
+
if (license) {
|
|
67
|
+
positiveMatch = true;
|
|
68
|
+
}
|
|
69
|
+
if (!license.trim()) {
|
|
70
|
+
// Avoid reporting again as empty match
|
|
71
|
+
if (positiveMatch) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
75
|
+
} else if (allowedLicenses) {
|
|
76
|
+
if (allowedLicenses !== true && !allowedLicenses.includes(license)) {
|
|
77
|
+
report(`Invalid JSDoc @${targetTagName}: "${license}"; expected one of ${allowedLicenses.join(', ')}.`, null, jsdocParameter);
|
|
78
|
+
}
|
|
79
|
+
} else {
|
|
80
|
+
try {
|
|
81
|
+
(0, _spdxExpressionParse.default)(license);
|
|
82
|
+
} catch {
|
|
83
|
+
report(`Invalid JSDoc @${targetTagName}: "${license}"; expected SPDX expression: https://spdx.org/licenses/.`, null, jsdocParameter);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
if (settings.mode === 'typescript') {
|
|
89
|
+
utils.forEachPreferredTag('import', tag => {
|
|
90
|
+
const {
|
|
91
|
+
description,
|
|
92
|
+
name,
|
|
93
|
+
type
|
|
94
|
+
} = tag;
|
|
95
|
+
const typePart = type ? `{${type}} ` : '';
|
|
96
|
+
const imprt = 'import ' + (description ? `${typePart}${name} ${description}` : `${typePart}${name}`);
|
|
97
|
+
const importsExports = (0, _parseImportsExports.parseImportsExports)(imprt.trim());
|
|
98
|
+
if (importsExports.errors) {
|
|
99
|
+
report('Bad @import tag', null, tag);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
utils.forEachPreferredTag('author', (jsdocParameter, targetTagName) => {
|
|
104
|
+
const author = /** @type {string} */utils.getTagDescription(jsdocParameter).trim();
|
|
105
|
+
if (!author) {
|
|
106
|
+
report(`Missing JSDoc @${targetTagName} value.`, null, jsdocParameter);
|
|
107
|
+
} else if (allowedAuthors && !allowedAuthors.includes(author)) {
|
|
108
|
+
report(`Invalid JSDoc @${targetTagName}: "${utils.getTagDescription(jsdocParameter)}"; expected one of ${allowedAuthors.join(', ')}.`, null, jsdocParameter);
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}, {
|
|
112
|
+
iterateAllJsdocs: true,
|
|
113
|
+
meta: {
|
|
114
|
+
docs: {
|
|
115
|
+
description: 'This rule checks the values for a handful of tags: `@version`, `@since`, `@license` and `@author`.',
|
|
116
|
+
url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-values.md#repos-sticky-header'
|
|
117
|
+
},
|
|
118
|
+
schema: [{
|
|
119
|
+
additionalProperties: false,
|
|
120
|
+
properties: {
|
|
121
|
+
allowedAuthors: {
|
|
122
|
+
description: `An array of allowable author values. If absent, only non-whitespace will
|
|
123
|
+
be checked for.`,
|
|
124
|
+
items: {
|
|
125
|
+
type: 'string'
|
|
126
|
+
},
|
|
127
|
+
type: 'array'
|
|
128
|
+
},
|
|
129
|
+
allowedLicenses: {
|
|
130
|
+
anyOf: [{
|
|
131
|
+
items: {
|
|
132
|
+
type: 'string'
|
|
133
|
+
},
|
|
134
|
+
type: 'array'
|
|
135
|
+
}, {
|
|
136
|
+
type: 'boolean'
|
|
137
|
+
}],
|
|
138
|
+
description: `An array of allowable license values or \`true\` to allow any license text.
|
|
139
|
+
If present as an array, will be used in place of [SPDX identifiers](https://spdx.org/licenses/).`
|
|
140
|
+
},
|
|
141
|
+
licensePattern: {
|
|
142
|
+
description: `A string to be converted into a \`RegExp\` (with \`v\` flag) and whose first
|
|
143
|
+
parenthetical grouping, if present, will match the portion of the license
|
|
144
|
+
description to check (if no grouping is present, then the whole portion
|
|
145
|
+
matched will be used). Defaults to \`/([^\\n\\r]*)/gv\`, i.e., the SPDX expression
|
|
146
|
+
is expected before any line breaks.
|
|
147
|
+
|
|
148
|
+
Note that the \`/\` delimiters are optional, but necessary to add flags.
|
|
149
|
+
|
|
150
|
+
Defaults to using the \`v\` flag, so to add your own flags, encapsulate
|
|
151
|
+
your expression as a string, but like a literal, e.g., \`/^mit$/vi\`.`,
|
|
152
|
+
type: 'string'
|
|
153
|
+
},
|
|
154
|
+
numericOnlyVariation: {
|
|
155
|
+
description: `Whether to enable validation that \`@variation\` must be a number. Defaults to
|
|
156
|
+
\`false\`.`,
|
|
157
|
+
type: 'boolean'
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
type: 'object'
|
|
161
|
+
}],
|
|
162
|
+
type: 'suggestion'
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
module.exports = exports.default;
|
|
166
|
+
//# sourceMappingURL=checkValues.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkValues.cjs","names":["_iterateJsdoc","_interopRequireDefault","require","_parseImportsExports","_semver","_spdxExpressionParse","e","__esModule","default","allowedKinds","Set","_default","exports","iterateJsdoc","context","report","settings","utils","options","allowedAuthors","allowedLicenses","licensePattern","numericOnlyVariation","forEachPreferredTag","jsdocParameter","targetTagName","version","getTagDescription","trim","semver","valid","kind","has","join","variation","Number","isInteger","licenseRegex","getRegexFromString","matches","matchAll","positiveMatch","match","license","includes","spdxExpressionParse","mode","tag","description","name","type","typePart","imprt","importsExports","parseImportsExports","errors","author","iterateAllJsdocs","meta","docs","url","schema","additionalProperties","properties","items","anyOf","module"],"sources":["../../src/rules/checkValues.js"],"sourcesContent":["import iterateJsdoc from '../iterateJsdoc.js';\nimport {\n parseImportsExports,\n} from 'parse-imports-exports';\nimport semver from 'semver';\nimport spdxExpressionParse from 'spdx-expression-parse';\n\nconst allowedKinds = new Set([\n 'class',\n 'constant',\n 'event',\n 'external',\n 'file',\n 'function',\n 'member',\n 'mixin',\n 'module',\n 'namespace',\n 'typedef',\n]);\n\nexport default iterateJsdoc(({\n context,\n report,\n settings,\n utils,\n}) => {\n const options = context.options[0] || {};\n const {\n allowedAuthors = null,\n allowedLicenses = null,\n licensePattern = '/([^\\n\\r]*)/gv',\n numericOnlyVariation = false,\n } = options;\n\n utils.forEachPreferredTag('version', (jsdocParameter, targetTagName) => {\n const version = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).trim();\n if (!version) {\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (!semver.valid(version)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${utils.getTagDescription(jsdocParameter)}\".`,\n null,\n jsdocParameter,\n );\n }\n });\n\n utils.forEachPreferredTag('kind', (jsdocParameter, targetTagName) => {\n const kind = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).trim();\n if (!kind) {\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (!allowedKinds.has(kind)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${utils.getTagDescription(jsdocParameter)}\"; ` +\n `must be one of: ${[\n ...allowedKinds,\n ].join(', ')}.`,\n null,\n jsdocParameter,\n );\n }\n });\n\n if (numericOnlyVariation) {\n utils.forEachPreferredTag('variation', (jsdocParameter, targetTagName) => {\n const variation = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).trim();\n if (!variation) {\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (\n !Number.isInteger(Number(variation)) ||\n Number(variation) <= 0\n ) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${utils.getTagDescription(jsdocParameter)}\".`,\n null,\n jsdocParameter,\n );\n }\n });\n }\n\n utils.forEachPreferredTag('since', (jsdocParameter, targetTagName) => {\n const version = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).trim();\n if (!version) {\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (!semver.valid(version)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${utils.getTagDescription(jsdocParameter)}\".`,\n null,\n jsdocParameter,\n );\n }\n });\n utils.forEachPreferredTag('license', (jsdocParameter, targetTagName) => {\n const licenseRegex = utils.getRegexFromString(licensePattern, 'g');\n const matches = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).matchAll(licenseRegex);\n let positiveMatch = false;\n for (const match of matches) {\n const license = match[1] || match[0];\n if (license) {\n positiveMatch = true;\n }\n\n if (!license.trim()) {\n // Avoid reporting again as empty match\n if (positiveMatch) {\n return;\n }\n\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (allowedLicenses) {\n if (allowedLicenses !== true && !allowedLicenses.includes(license)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${license}\"; expected one of ${allowedLicenses.join(', ')}.`,\n null,\n jsdocParameter,\n );\n }\n } else {\n try {\n spdxExpressionParse(license);\n } catch {\n report(\n `Invalid JSDoc @${targetTagName}: \"${license}\"; expected SPDX expression: https://spdx.org/licenses/.`,\n null,\n jsdocParameter,\n );\n }\n }\n }\n });\n\n if (settings.mode === 'typescript') {\n utils.forEachPreferredTag('import', (tag) => {\n const {\n description,\n name,\n type,\n } = tag;\n const typePart = type ? `{${type}} ` : '';\n const imprt = 'import ' + (description ?\n `${typePart}${name} ${description}` :\n `${typePart}${name}`);\n\n const importsExports = parseImportsExports(imprt.trim());\n\n if (importsExports.errors) {\n report(\n 'Bad @import tag',\n null,\n tag,\n );\n }\n });\n }\n\n utils.forEachPreferredTag('author', (jsdocParameter, targetTagName) => {\n const author = /** @type {string} */ (\n utils.getTagDescription(jsdocParameter)\n ).trim();\n if (!author) {\n report(\n `Missing JSDoc @${targetTagName} value.`,\n null,\n jsdocParameter,\n );\n } else if (allowedAuthors && !allowedAuthors.includes(author)) {\n report(\n `Invalid JSDoc @${targetTagName}: \"${utils.getTagDescription(jsdocParameter)}\"; expected one of ${allowedAuthors.join(', ')}.`,\n null,\n jsdocParameter,\n );\n }\n });\n}, {\n iterateAllJsdocs: true,\n meta: {\n docs: {\n description: 'This rule checks the values for a handful of tags: `@version`, `@since`, `@license` and `@author`.',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-values.md#repos-sticky-header',\n },\n schema: [\n {\n additionalProperties: false,\n properties: {\n allowedAuthors: {\n description: `An array of allowable author values. If absent, only non-whitespace will\nbe checked for.`,\n items: {\n type: 'string',\n },\n type: 'array',\n },\n allowedLicenses: {\n anyOf: [\n {\n items: {\n type: 'string',\n },\n type: 'array',\n },\n {\n type: 'boolean',\n },\n ],\n description: `An array of allowable license values or \\`true\\` to allow any license text.\nIf present as an array, will be used in place of [SPDX identifiers](https://spdx.org/licenses/).`,\n },\n licensePattern: {\n description: `A string to be converted into a \\`RegExp\\` (with \\`v\\` flag) and whose first\nparenthetical grouping, if present, will match the portion of the license\ndescription to check (if no grouping is present, then the whole portion\nmatched will be used). Defaults to \\`/([^\\\\n\\\\r]*)/gv\\`, i.e., the SPDX expression\nis expected before any line breaks.\n\nNote that the \\`/\\` delimiters are optional, but necessary to add flags.\n\nDefaults to using the \\`v\\` flag, so to add your own flags, encapsulate\nyour expression as a string, but like a literal, e.g., \\`/^mit$/vi\\`.`,\n type: 'string',\n },\n numericOnlyVariation: {\n description: `Whether to enable validation that \\`@variation\\` must be a number. Defaults to\n\\`false\\`.`,\n type: 'boolean',\n },\n },\n type: 'object',\n },\n ],\n type: 'suggestion',\n },\n});\n"],"mappings":"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","ignoreList":[]}
|