eslint-plugin-jsdoc 63.3.3 → 64.0.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.
Files changed (269) hide show
  1. package/package.json +23 -48
  2. package/src/index.js +3 -6
  3. package/dist/WarnSettings.cjs +0 -38
  4. package/dist/WarnSettings.cjs.map +0 -1
  5. package/dist/alignTransform.cjs +0 -402
  6. package/dist/alignTransform.cjs.map +0 -1
  7. package/dist/buildForbidRuleDefinition.cjs +0 -101
  8. package/dist/buildForbidRuleDefinition.cjs.map +0 -1
  9. package/dist/buildRejectOrPreferRuleDefinition.cjs +0 -352
  10. package/dist/buildRejectOrPreferRuleDefinition.cjs.map +0 -1
  11. package/dist/cjs/WarnSettings.d.ts +0 -16
  12. package/dist/cjs/alignTransform.d.ts +0 -33
  13. package/dist/cjs/buildForbidRuleDefinition.d.ts +0 -14
  14. package/dist/cjs/buildRejectOrPreferRuleDefinition.d.ts +0 -8
  15. package/dist/cjs/defaultTagOrder.d.ts +0 -4
  16. package/dist/cjs/exportParser.d.ts +0 -40
  17. package/dist/cjs/getDefaultTagStructureForMode.d.ts +0 -10
  18. package/dist/cjs/getJsdocProcessorPlugin.d.cts +0 -5
  19. package/dist/cjs/getJsdocProcessorPlugin.d.ts +0 -66
  20. package/dist/cjs/index-cjs.d.ts +0 -26
  21. package/dist/cjs/index.cjs.d.cts +0 -2
  22. package/dist/cjs/iterateJsdoc.d.cts +0 -7
  23. package/dist/cjs/iterateJsdoc.d.ts +0 -495
  24. package/dist/cjs/jsdocUtils.d.ts +0 -500
  25. package/dist/cjs/rules/checkAccess.d.ts +0 -2
  26. package/dist/cjs/rules/checkAlignment.d.ts +0 -2
  27. package/dist/cjs/rules/checkExamples.d.ts +0 -3
  28. package/dist/cjs/rules/checkIndentation.d.ts +0 -2
  29. package/dist/cjs/rules/checkLineAlignment.d.ts +0 -9
  30. package/dist/cjs/rules/checkParamNames.d.ts +0 -2
  31. package/dist/cjs/rules/checkPropertyNames.d.ts +0 -2
  32. package/dist/cjs/rules/checkSyntax.d.ts +0 -2
  33. package/dist/cjs/rules/checkTagNames.d.ts +0 -2
  34. package/dist/cjs/rules/checkTemplateNames.d.ts +0 -2
  35. package/dist/cjs/rules/checkTypes.d.ts +0 -7
  36. package/dist/cjs/rules/checkValues.d.ts +0 -2
  37. package/dist/cjs/rules/convertToJsdocComments.d.ts +0 -266
  38. package/dist/cjs/rules/emptyTags.d.ts +0 -2
  39. package/dist/cjs/rules/escapeInlineTags.d.ts +0 -2
  40. package/dist/cjs/rules/implementsOnClasses.d.ts +0 -2
  41. package/dist/cjs/rules/importsAsDependencies.d.ts +0 -2
  42. package/dist/cjs/rules/informativeDocs.d.ts +0 -2
  43. package/dist/cjs/rules/linesBeforeBlock.d.ts +0 -2
  44. package/dist/cjs/rules/matchDescription.d.ts +0 -2
  45. package/dist/cjs/rules/matchName.d.ts +0 -2
  46. package/dist/cjs/rules/multilineBlocks.d.ts +0 -2
  47. package/dist/cjs/rules/noBadBlocks.d.ts +0 -2
  48. package/dist/cjs/rules/noBlankBlockDescriptions.d.ts +0 -2
  49. package/dist/cjs/rules/noBlankBlocks.d.ts +0 -2
  50. package/dist/cjs/rules/noDefaults.d.ts +0 -2
  51. package/dist/cjs/rules/noMissingSyntax.d.ts +0 -9
  52. package/dist/cjs/rules/noMultiAsterisks.d.ts +0 -2
  53. package/dist/cjs/rules/noRestrictedSyntax.d.ts +0 -2
  54. package/dist/cjs/rules/noTypes.d.ts +0 -2
  55. package/dist/cjs/rules/noUndefinedTypes.d.ts +0 -2
  56. package/dist/cjs/rules/normalizeSeeLinks.d.ts +0 -2
  57. package/dist/cjs/rules/preferImportTag.d.ts +0 -2
  58. package/dist/cjs/rules/requireAsteriskPrefix.d.ts +0 -2
  59. package/dist/cjs/rules/requireDescription.d.ts +0 -2
  60. package/dist/cjs/rules/requireDescriptionCompleteSentence.d.ts +0 -2
  61. package/dist/cjs/rules/requireExample.d.ts +0 -2
  62. package/dist/cjs/rules/requireFileOverview.d.ts +0 -2
  63. package/dist/cjs/rules/requireHyphenBeforeParamDescription.d.ts +0 -2
  64. package/dist/cjs/rules/requireJsdoc.d.ts +0 -24
  65. package/dist/cjs/rules/requireParam.d.ts +0 -3
  66. package/dist/cjs/rules/requireParamDescription.d.ts +0 -2
  67. package/dist/cjs/rules/requireParamName.d.ts +0 -2
  68. package/dist/cjs/rules/requireParamType.d.ts +0 -2
  69. package/dist/cjs/rules/requireProperty.d.ts +0 -2
  70. package/dist/cjs/rules/requirePropertyDescription.d.ts +0 -2
  71. package/dist/cjs/rules/requirePropertyName.d.ts +0 -2
  72. package/dist/cjs/rules/requirePropertyType.d.ts +0 -2
  73. package/dist/cjs/rules/requireRejects.d.ts +0 -2
  74. package/dist/cjs/rules/requireReturns.d.ts +0 -2
  75. package/dist/cjs/rules/requireReturnsCheck.d.ts +0 -2
  76. package/dist/cjs/rules/requireReturnsDescription.d.ts +0 -2
  77. package/dist/cjs/rules/requireReturnsType.d.ts +0 -2
  78. package/dist/cjs/rules/requireTags.d.ts +0 -2
  79. package/dist/cjs/rules/requireTemplate.d.ts +0 -2
  80. package/dist/cjs/rules/requireThrows.d.ts +0 -2
  81. package/dist/cjs/rules/requireYields.d.ts +0 -2
  82. package/dist/cjs/rules/requireYieldsCheck.d.ts +0 -2
  83. package/dist/cjs/rules/sortTags.d.ts +0 -2
  84. package/dist/cjs/rules/tagLines.d.ts +0 -2
  85. package/dist/cjs/rules/textEscaping.d.ts +0 -2
  86. package/dist/cjs/rules/tsMethodSignatureStyle.d.ts +0 -2
  87. package/dist/cjs/rules/tsNoEmptyObjectType.d.ts +0 -2
  88. package/dist/cjs/rules/tsNoUnnecessaryTemplateExpression.d.ts +0 -2
  89. package/dist/cjs/rules/tsPreferFunctionType.d.ts +0 -2
  90. package/dist/cjs/rules/typeFormatting.d.ts +0 -2
  91. package/dist/cjs/rules/validTypes.d.ts +0 -2
  92. package/dist/cjs/tagNames.d.ts +0 -15
  93. package/dist/cjs/utils/hasReturnValue.d.ts +0 -19
  94. package/dist/defaultTagOrder.cjs +0 -46
  95. package/dist/defaultTagOrder.cjs.map +0 -1
  96. package/dist/exportParser.cjs +0 -732
  97. package/dist/exportParser.cjs.map +0 -1
  98. package/dist/generateDocs.cjs +0 -342
  99. package/dist/generateDocs.cjs.map +0 -1
  100. package/dist/generateOptions.cjs +0 -62
  101. package/dist/generateOptions.cjs.map +0 -1
  102. package/dist/generateRule.cjs +0 -248
  103. package/dist/generateRule.cjs.map +0 -1
  104. package/dist/generateRuleTypes.cjs +0 -24
  105. package/dist/generateRuleTypes.cjs.map +0 -1
  106. package/dist/getDefaultTagStructureForMode.cjs +0 -289
  107. package/dist/getDefaultTagStructureForMode.cjs.map +0 -1
  108. package/dist/getJsdocProcessorPlugin.cjs +0 -587
  109. package/dist/getJsdocProcessorPlugin.cjs.map +0 -1
  110. package/dist/getJsdocProcessorPlugin.cts +0 -5
  111. package/dist/index-cjs.cjs +0 -600
  112. package/dist/index-cjs.cjs.map +0 -1
  113. package/dist/index-cjs.d.ts +0 -27
  114. package/dist/index-esm.cjs +0 -162
  115. package/dist/index-esm.cjs.map +0 -1
  116. package/dist/index-esm.d.ts +0 -72
  117. package/dist/index.cjs +0 -748
  118. package/dist/index.cjs.cts +0 -3
  119. package/dist/index.cjs.map +0 -1
  120. package/dist/iterateJsdoc.cjs +0 -2150
  121. package/dist/iterateJsdoc.cjs.map +0 -1
  122. package/dist/iterateJsdoc.cts +0 -7
  123. package/dist/jsdocUtils.cjs +0 -1786
  124. package/dist/jsdocUtils.cjs.map +0 -1
  125. package/dist/rules/checkAccess.cjs +0 -40
  126. package/dist/rules/checkAccess.cjs.map +0 -1
  127. package/dist/rules/checkAlignment.cjs +0 -78
  128. package/dist/rules/checkAlignment.cjs.map +0 -1
  129. package/dist/rules/checkExamples.cjs +0 -521
  130. package/dist/rules/checkExamples.cjs.map +0 -1
  131. package/dist/rules/checkIndentation.cjs +0 -170
  132. package/dist/rules/checkIndentation.cjs.map +0 -1
  133. package/dist/rules/checkLineAlignment.cjs +0 -398
  134. package/dist/rules/checkLineAlignment.cjs.map +0 -1
  135. package/dist/rules/checkParamNames.cjs +0 -407
  136. package/dist/rules/checkParamNames.cjs.map +0 -1
  137. package/dist/rules/checkPropertyNames.cjs +0 -135
  138. package/dist/rules/checkPropertyNames.cjs.map +0 -1
  139. package/dist/rules/checkSyntax.cjs +0 -38
  140. package/dist/rules/checkSyntax.cjs.map +0 -1
  141. package/dist/rules/checkTagNames.cjs +0 -312
  142. package/dist/rules/checkTagNames.cjs.map +0 -1
  143. package/dist/rules/checkTemplateNames.cjs +0 -192
  144. package/dist/rules/checkTemplateNames.cjs.map +0 -1
  145. package/dist/rules/checkTypes.cjs +0 -111
  146. package/dist/rules/checkTypes.cjs.map +0 -1
  147. package/dist/rules/checkValues.cjs +0 -166
  148. package/dist/rules/checkValues.cjs.map +0 -1
  149. package/dist/rules/convertToJsdocComments.cjs +0 -356
  150. package/dist/rules/convertToJsdocComments.cjs.map +0 -1
  151. package/dist/rules/emptyTags.cjs +0 -98
  152. package/dist/rules/emptyTags.cjs.map +0 -1
  153. package/dist/rules/escapeInlineTags.cjs +0 -234
  154. package/dist/rules/escapeInlineTags.cjs.map +0 -1
  155. package/dist/rules/implementsOnClasses.cjs +0 -74
  156. package/dist/rules/implementsOnClasses.cjs.map +0 -1
  157. package/dist/rules/importsAsDependencies.cjs +0 -104
  158. package/dist/rules/importsAsDependencies.cjs.map +0 -1
  159. package/dist/rules/informativeDocs.cjs +0 -187
  160. package/dist/rules/informativeDocs.cjs.map +0 -1
  161. package/dist/rules/linesBeforeBlock.cjs +0 -120
  162. package/dist/rules/linesBeforeBlock.cjs.map +0 -1
  163. package/dist/rules/matchDescription.cjs +0 -356
  164. package/dist/rules/matchDescription.cjs.map +0 -1
  165. package/dist/rules/matchName.cjs +0 -160
  166. package/dist/rules/matchName.cjs.map +0 -1
  167. package/dist/rules/multilineBlocks.cjs +0 -431
  168. package/dist/rules/multilineBlocks.cjs.map +0 -1
  169. package/dist/rules/noBadBlocks.cjs +0 -100
  170. package/dist/rules/noBadBlocks.cjs.map +0 -1
  171. package/dist/rules/noBlankBlockDescriptions.cjs +0 -63
  172. package/dist/rules/noBlankBlockDescriptions.cjs.map +0 -1
  173. package/dist/rules/noBlankBlocks.cjs +0 -54
  174. package/dist/rules/noBlankBlocks.cjs.map +0 -1
  175. package/dist/rules/noDefaults.cjs +0 -102
  176. package/dist/rules/noDefaults.cjs.map +0 -1
  177. package/dist/rules/noMissingSyntax.cjs +0 -196
  178. package/dist/rules/noMissingSyntax.cjs.map +0 -1
  179. package/dist/rules/noMultiAsterisks.cjs +0 -126
  180. package/dist/rules/noMultiAsterisks.cjs.map +0 -1
  181. package/dist/rules/noRestrictedSyntax.cjs +0 -68
  182. package/dist/rules/noRestrictedSyntax.cjs.map +0 -1
  183. package/dist/rules/noTypes.cjs +0 -101
  184. package/dist/rules/noTypes.cjs.map +0 -1
  185. package/dist/rules/noUndefinedTypes.cjs +0 -616
  186. package/dist/rules/noUndefinedTypes.cjs.map +0 -1
  187. package/dist/rules/normalizeSeeLinks.cjs +0 -271
  188. package/dist/rules/normalizeSeeLinks.cjs.map +0 -1
  189. package/dist/rules/preferImportTag.cjs +0 -362
  190. package/dist/rules/preferImportTag.cjs.map +0 -1
  191. package/dist/rules/requireAsteriskPrefix.cjs +0 -190
  192. package/dist/rules/requireAsteriskPrefix.cjs.map +0 -1
  193. package/dist/rules/requireDescription.cjs +0 -164
  194. package/dist/rules/requireDescription.cjs.map +0 -1
  195. package/dist/rules/requireDescriptionCompleteSentence.cjs +0 -321
  196. package/dist/rules/requireDescriptionCompleteSentence.cjs.map +0 -1
  197. package/dist/rules/requireExample.cjs +0 -136
  198. package/dist/rules/requireExample.cjs.map +0 -1
  199. package/dist/rules/requireFileOverview.cjs +0 -194
  200. package/dist/rules/requireFileOverview.cjs.map +0 -1
  201. package/dist/rules/requireHyphenBeforeParamDescription.cjs +0 -166
  202. package/dist/rules/requireHyphenBeforeParamDescription.cjs.map +0 -1
  203. package/dist/rules/requireJsdoc.cjs +0 -721
  204. package/dist/rules/requireJsdoc.cjs.map +0 -1
  205. package/dist/rules/requireParam.cjs +0 -772
  206. package/dist/rules/requireParam.cjs.map +0 -1
  207. package/dist/rules/requireParamDescription.cjs +0 -105
  208. package/dist/rules/requireParamDescription.cjs.map +0 -1
  209. package/dist/rules/requireParamName.cjs +0 -68
  210. package/dist/rules/requireParamName.cjs.map +0 -1
  211. package/dist/rules/requireParamType.cjs +0 -104
  212. package/dist/rules/requireParamType.cjs.map +0 -1
  213. package/dist/rules/requireProperty.cjs +0 -63
  214. package/dist/rules/requireProperty.cjs.map +0 -1
  215. package/dist/rules/requirePropertyDescription.cjs +0 -29
  216. package/dist/rules/requirePropertyDescription.cjs.map +0 -1
  217. package/dist/rules/requirePropertyName.cjs +0 -29
  218. package/dist/rules/requirePropertyName.cjs.map +0 -1
  219. package/dist/rules/requirePropertyType.cjs +0 -29
  220. package/dist/rules/requirePropertyType.cjs.map +0 -1
  221. package/dist/rules/requireRejects.cjs +0 -226
  222. package/dist/rules/requireRejects.cjs.map +0 -1
  223. package/dist/rules/requireReturns.cjs +0 -262
  224. package/dist/rules/requireReturns.cjs.map +0 -1
  225. package/dist/rules/requireReturnsCheck.cjs +0 -225
  226. package/dist/rules/requireReturnsCheck.cjs.map +0 -1
  227. package/dist/rules/requireReturnsDescription.cjs +0 -72
  228. package/dist/rules/requireReturnsDescription.cjs.map +0 -1
  229. package/dist/rules/requireReturnsType.cjs +0 -68
  230. package/dist/rules/requireReturnsType.cjs.map +0 -1
  231. package/dist/rules/requireTags.cjs +0 -74
  232. package/dist/rules/requireTags.cjs.map +0 -1
  233. package/dist/rules/requireTemplate.cjs +0 -220
  234. package/dist/rules/requireTemplate.cjs.map +0 -1
  235. package/dist/rules/requireThrows.cjs +0 -118
  236. package/dist/rules/requireThrows.cjs.map +0 -1
  237. package/dist/rules/requireYields.cjs +0 -224
  238. package/dist/rules/requireYields.cjs.map +0 -1
  239. package/dist/rules/requireYieldsCheck.cjs +0 -179
  240. package/dist/rules/requireYieldsCheck.cjs.map +0 -1
  241. package/dist/rules/sortTags.cjs +0 -656
  242. package/dist/rules/sortTags.cjs.map +0 -1
  243. package/dist/rules/tagLines.cjs +0 -374
  244. package/dist/rules/tagLines.cjs.map +0 -1
  245. package/dist/rules/textEscaping.cjs +0 -141
  246. package/dist/rules/textEscaping.cjs.map +0 -1
  247. package/dist/rules/tsMethodSignatureStyle.cjs +0 -240
  248. package/dist/rules/tsMethodSignatureStyle.cjs.map +0 -1
  249. package/dist/rules/tsNoEmptyObjectType.cjs +0 -62
  250. package/dist/rules/tsNoEmptyObjectType.cjs.map +0 -1
  251. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs +0 -104
  252. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs.map +0 -1
  253. package/dist/rules/tsPreferFunctionType.cjs +0 -110
  254. package/dist/rules/tsPreferFunctionType.cjs.map +0 -1
  255. package/dist/rules/typeFormatting.cjs +0 -607
  256. package/dist/rules/typeFormatting.cjs.map +0 -1
  257. package/dist/rules/validTypes.cjs +0 -324
  258. package/dist/rules/validTypes.cjs.map +0 -1
  259. package/dist/tagNames.cjs +0 -244
  260. package/dist/tagNames.cjs.map +0 -1
  261. package/dist/to-valid-identifier.cjs +0 -263
  262. package/dist/utils/hasReturnValue.cjs +0 -495
  263. package/dist/utils/hasReturnValue.cjs.map +0 -1
  264. package/rollup.config.js +0 -16
  265. package/src/getJsdocProcessorPlugin.cts +0 -5
  266. package/src/index-cjs.js +0 -760
  267. package/src/index-esm.js +0 -196
  268. package/src/index.cjs.cts +0 -3
  269. package/src/iterateJsdoc.cts +0 -7
package/dist/index.cjs DELETED
@@ -1,748 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- Object.defineProperty(exports, "getJsdocProcessorPlugin", {
8
- enumerable: true,
9
- get: function () {
10
- return _getJsdocProcessorPlugin.getJsdocProcessorPlugin;
11
- }
12
- });
13
- exports.jsdoc = void 0;
14
- var _objectDeepMerge = require("object-deep-merge");
15
- var _buildForbidRuleDefinition = require("./buildForbidRuleDefinition.cjs");
16
- var _buildRejectOrPreferRuleDefinition = require("./buildRejectOrPreferRuleDefinition.cjs");
17
- var _getJsdocProcessorPlugin = require("./getJsdocProcessorPlugin.cjs");
18
- var _checkAccess = _interopRequireDefault(require("./rules/checkAccess.cjs"));
19
- var _checkAlignment = _interopRequireDefault(require("./rules/checkAlignment.cjs"));
20
- var _checkExamples = _interopRequireDefault(require("./rules/checkExamples.cjs"));
21
- var _checkIndentation = _interopRequireDefault(require("./rules/checkIndentation.cjs"));
22
- var _checkLineAlignment = _interopRequireDefault(require("./rules/checkLineAlignment.cjs"));
23
- var _checkParamNames = _interopRequireDefault(require("./rules/checkParamNames.cjs"));
24
- var _checkPropertyNames = _interopRequireDefault(require("./rules/checkPropertyNames.cjs"));
25
- var _checkSyntax = _interopRequireDefault(require("./rules/checkSyntax.cjs"));
26
- var _checkTagNames = _interopRequireDefault(require("./rules/checkTagNames.cjs"));
27
- var _checkTemplateNames = _interopRequireDefault(require("./rules/checkTemplateNames.cjs"));
28
- var _checkTypes = _interopRequireDefault(require("./rules/checkTypes.cjs"));
29
- var _checkValues = _interopRequireDefault(require("./rules/checkValues.cjs"));
30
- var _convertToJsdocComments = _interopRequireDefault(require("./rules/convertToJsdocComments.cjs"));
31
- var _emptyTags = _interopRequireDefault(require("./rules/emptyTags.cjs"));
32
- var _escapeInlineTags = _interopRequireDefault(require("./rules/escapeInlineTags.cjs"));
33
- var _implementsOnClasses = _interopRequireDefault(require("./rules/implementsOnClasses.cjs"));
34
- var _importsAsDependencies = _interopRequireDefault(require("./rules/importsAsDependencies.cjs"));
35
- var _informativeDocs = _interopRequireDefault(require("./rules/informativeDocs.cjs"));
36
- var _linesBeforeBlock = _interopRequireDefault(require("./rules/linesBeforeBlock.cjs"));
37
- var _matchDescription = _interopRequireDefault(require("./rules/matchDescription.cjs"));
38
- var _matchName = _interopRequireDefault(require("./rules/matchName.cjs"));
39
- var _multilineBlocks = _interopRequireDefault(require("./rules/multilineBlocks.cjs"));
40
- var _noBadBlocks = _interopRequireDefault(require("./rules/noBadBlocks.cjs"));
41
- var _noBlankBlockDescriptions = _interopRequireDefault(require("./rules/noBlankBlockDescriptions.cjs"));
42
- var _noBlankBlocks = _interopRequireDefault(require("./rules/noBlankBlocks.cjs"));
43
- var _noDefaults = _interopRequireDefault(require("./rules/noDefaults.cjs"));
44
- var _noMissingSyntax = _interopRequireDefault(require("./rules/noMissingSyntax.cjs"));
45
- var _noMultiAsterisks = _interopRequireDefault(require("./rules/noMultiAsterisks.cjs"));
46
- var _noRestrictedSyntax = _interopRequireDefault(require("./rules/noRestrictedSyntax.cjs"));
47
- var _normalizeSeeLinks = _interopRequireDefault(require("./rules/normalizeSeeLinks.cjs"));
48
- var _noTypes = _interopRequireDefault(require("./rules/noTypes.cjs"));
49
- var _noUndefinedTypes = _interopRequireDefault(require("./rules/noUndefinedTypes.cjs"));
50
- var _preferImportTag = _interopRequireDefault(require("./rules/preferImportTag.cjs"));
51
- var _requireAsteriskPrefix = _interopRequireDefault(require("./rules/requireAsteriskPrefix.cjs"));
52
- var _requireDescription = _interopRequireDefault(require("./rules/requireDescription.cjs"));
53
- var _requireDescriptionCompleteSentence = _interopRequireDefault(require("./rules/requireDescriptionCompleteSentence.cjs"));
54
- var _requireExample = _interopRequireDefault(require("./rules/requireExample.cjs"));
55
- var _requireFileOverview = _interopRequireDefault(require("./rules/requireFileOverview.cjs"));
56
- var _requireHyphenBeforeParamDescription = _interopRequireDefault(require("./rules/requireHyphenBeforeParamDescription.cjs"));
57
- var _requireJsdoc = _interopRequireDefault(require("./rules/requireJsdoc.cjs"));
58
- var _requireParam = _interopRequireDefault(require("./rules/requireParam.cjs"));
59
- var _requireParamDescription = _interopRequireDefault(require("./rules/requireParamDescription.cjs"));
60
- var _requireParamName = _interopRequireDefault(require("./rules/requireParamName.cjs"));
61
- var _requireParamType = _interopRequireDefault(require("./rules/requireParamType.cjs"));
62
- var _requireProperty = _interopRequireDefault(require("./rules/requireProperty.cjs"));
63
- var _requirePropertyDescription = _interopRequireDefault(require("./rules/requirePropertyDescription.cjs"));
64
- var _requirePropertyName = _interopRequireDefault(require("./rules/requirePropertyName.cjs"));
65
- var _requirePropertyType = _interopRequireDefault(require("./rules/requirePropertyType.cjs"));
66
- var _requireRejects = _interopRequireDefault(require("./rules/requireRejects.cjs"));
67
- var _requireReturns = _interopRequireDefault(require("./rules/requireReturns.cjs"));
68
- var _requireReturnsCheck = _interopRequireDefault(require("./rules/requireReturnsCheck.cjs"));
69
- var _requireReturnsDescription = _interopRequireDefault(require("./rules/requireReturnsDescription.cjs"));
70
- var _requireReturnsType = _interopRequireDefault(require("./rules/requireReturnsType.cjs"));
71
- var _requireTags = _interopRequireDefault(require("./rules/requireTags.cjs"));
72
- var _requireTemplate = _interopRequireDefault(require("./rules/requireTemplate.cjs"));
73
- var _requireThrows = _interopRequireDefault(require("./rules/requireThrows.cjs"));
74
- var _requireYields = _interopRequireDefault(require("./rules/requireYields.cjs"));
75
- var _requireYieldsCheck = _interopRequireDefault(require("./rules/requireYieldsCheck.cjs"));
76
- var _sortTags = _interopRequireDefault(require("./rules/sortTags.cjs"));
77
- var _tagLines = _interopRequireDefault(require("./rules/tagLines.cjs"));
78
- var _textEscaping = _interopRequireDefault(require("./rules/textEscaping.cjs"));
79
- var _tsMethodSignatureStyle = _interopRequireDefault(require("./rules/tsMethodSignatureStyle.cjs"));
80
- var _tsNoEmptyObjectType = _interopRequireDefault(require("./rules/tsNoEmptyObjectType.cjs"));
81
- var _tsNoUnnecessaryTemplateExpression = _interopRequireDefault(require("./rules/tsNoUnnecessaryTemplateExpression.cjs"));
82
- var _tsPreferFunctionType = _interopRequireDefault(require("./rules/tsPreferFunctionType.cjs"));
83
- var _typeFormatting = _interopRequireDefault(require("./rules/typeFormatting.cjs"));
84
- var _validTypes = _interopRequireDefault(require("./rules/validTypes.cjs"));
85
- var _eslint = require("eslint");
86
- var _semver = _interopRequireDefault(require("semver"));
87
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
88
- /* AUTO-GENERATED BY build SCRIPT */
89
- /* eslint-disable perfectionist/sort-imports -- For auto-generate; Do not remove */
90
-
91
- /**
92
- * @typedef {"recommended" | "stylistic" | "contents" | "logical" | "requirements"} ConfigGroups
93
- * @typedef {"" | "-typescript" | "-typescript-flavor"} ConfigVariants
94
- * @typedef {"" | "-error"} ErrorLevelVariants
95
- * @typedef {`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}` |
96
- * "flat/recommended-tsdoc" | "flat/recommended-tsdoc-error"} FlatConfigNames
97
- * @type {import('eslint').ESLint.Plugin & {
98
- * configs: Record<
99
- * FlatConfigNames,
100
- * import('eslint').Linter.Config
101
- * > &
102
- * Record<
103
- * "examples"|"default-expressions"|"examples-and-default-expressions",
104
- * import('eslint').Linter.Config[]
105
- * > &
106
- * Record<"flat/recommended-mixed", import('eslint').Linter.Config[]>
107
- * }}
108
- */
109
- const index = {};
110
- index.configs = {};
111
- index.rules = {
112
- 'check-access': _checkAccess.default,
113
- 'check-alignment': _checkAlignment.default,
114
- 'check-examples': _checkExamples.default,
115
- 'check-indentation': _checkIndentation.default,
116
- 'check-line-alignment': _checkLineAlignment.default,
117
- 'check-param-names': _checkParamNames.default,
118
- 'check-property-names': _checkPropertyNames.default,
119
- 'check-syntax': _checkSyntax.default,
120
- 'check-tag-names': _checkTagNames.default,
121
- 'check-template-names': _checkTemplateNames.default,
122
- 'check-types': _checkTypes.default,
123
- 'check-values': _checkValues.default,
124
- 'convert-to-jsdoc-comments': _convertToJsdocComments.default,
125
- 'empty-tags': _emptyTags.default,
126
- 'escape-inline-tags': _escapeInlineTags.default,
127
- 'implements-on-classes': _implementsOnClasses.default,
128
- 'imports-as-dependencies': _importsAsDependencies.default,
129
- 'informative-docs': _informativeDocs.default,
130
- 'lines-before-block': _linesBeforeBlock.default,
131
- 'match-description': _matchDescription.default,
132
- 'match-name': _matchName.default,
133
- 'multiline-blocks': _multilineBlocks.default,
134
- 'no-bad-blocks': _noBadBlocks.default,
135
- 'no-blank-block-descriptions': _noBlankBlockDescriptions.default,
136
- 'no-blank-blocks': _noBlankBlocks.default,
137
- 'no-defaults': _noDefaults.default,
138
- 'no-missing-syntax': _noMissingSyntax.default,
139
- 'no-multi-asterisks': _noMultiAsterisks.default,
140
- 'no-restricted-syntax': _noRestrictedSyntax.default,
141
- 'no-types': _noTypes.default,
142
- 'no-undefined-types': _noUndefinedTypes.default,
143
- 'normalize-see-links': _normalizeSeeLinks.default,
144
- 'prefer-import-tag': _preferImportTag.default,
145
- 'reject-any-type': (0, _buildRejectOrPreferRuleDefinition.buildRejectOrPreferRuleDefinition)({
146
- description: 'Reports use of `any` or `*` type',
147
- overrideSettings: {
148
- '*': {
149
- message: 'Prefer a more specific type to `*`',
150
- replacement: false,
151
- unifyParentAndChildTypeChecks: true
152
- },
153
- any: {
154
- message: 'Prefer a more specific type to `any`',
155
- replacement: false,
156
- unifyParentAndChildTypeChecks: true
157
- }
158
- },
159
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-any-type.md#repos-sticky-header'
160
- }),
161
- 'reject-function-type': (0, _buildRejectOrPreferRuleDefinition.buildRejectOrPreferRuleDefinition)({
162
- description: 'Reports use of `Function` type',
163
- overrideSettings: {
164
- Function: {
165
- message: 'Prefer a more specific type to `Function`',
166
- replacement: false,
167
- unifyParentAndChildTypeChecks: true
168
- }
169
- },
170
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-function-type.md#repos-sticky-header'
171
- }),
172
- 'require-asterisk-prefix': _requireAsteriskPrefix.default,
173
- 'require-description': _requireDescription.default,
174
- 'require-description-complete-sentence': _requireDescriptionCompleteSentence.default,
175
- 'require-example': _requireExample.default,
176
- 'require-file-overview': _requireFileOverview.default,
177
- 'require-hyphen-before-param-description': _requireHyphenBeforeParamDescription.default,
178
- 'require-jsdoc': _requireJsdoc.default,
179
- 'require-next-description': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
180
- contexts: [{
181
- comment: 'JsdocBlock:has(JsdocTag[tag=next]:not([name!=""]):not([description!=""]))',
182
- context: 'any',
183
- message: '@next should have a description'
184
- }],
185
- description: 'Requires a description for `@next` tags',
186
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-description.md#repos-sticky-header'
187
- }),
188
- 'require-next-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
189
- contexts: [{
190
- comment: 'JsdocBlock:has(JsdocTag[tag=next]:not([parsedType.type]))',
191
- context: 'any',
192
- message: '@next should have a type'
193
- }],
194
- description: 'Requires a type for `@next` tags',
195
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header'
196
- }),
197
- 'require-param': _requireParam.default,
198
- 'require-param-description': _requireParamDescription.default,
199
- 'require-param-name': _requireParamName.default,
200
- 'require-param-type': _requireParamType.default,
201
- 'require-property': _requireProperty.default,
202
- 'require-property-description': _requirePropertyDescription.default,
203
- 'require-property-name': _requirePropertyName.default,
204
- 'require-property-type': _requirePropertyType.default,
205
- 'require-rejects': _requireRejects.default,
206
- 'require-returns': _requireReturns.default,
207
- 'require-returns-check': _requireReturnsCheck.default,
208
- 'require-returns-description': _requireReturnsDescription.default,
209
- 'require-returns-type': _requireReturnsType.default,
210
- 'require-tags': _requireTags.default,
211
- 'require-template': _requireTemplate.default,
212
- 'require-template-description': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
213
- contexts: [{
214
- comment: 'JsdocBlock:has(JsdocTag[tag=template]:not([description!=""]))',
215
- context: 'any',
216
- message: '@template should have a description'
217
- }],
218
- description: 'Requires a description for `@template` tags',
219
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template-description.md#repos-sticky-header'
220
- }),
221
- 'require-throws': _requireThrows.default,
222
- 'require-throws-description': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
223
- contexts: [{
224
- comment: 'JsdocBlock:has(JsdocTag[tag=/^(?:throws|exception)$/]:not([description!=""]))',
225
- context: 'any',
226
- message: '@throws should have a description'
227
- }],
228
- description: 'Requires a description for `@throws` tags',
229
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-description.md#repos-sticky-header'
230
- }),
231
- 'require-throws-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
232
- contexts: [{
233
- comment: 'JsdocBlock:has(JsdocTag[tag=/^(?:throws|exception)$/]:not([parsedType.type]))',
234
- context: 'any',
235
- message: '@throws should have a type'
236
- }],
237
- description: 'Requires a type for `@throws` tags',
238
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header'
239
- }),
240
- 'require-yields': _requireYields.default,
241
- 'require-yields-check': _requireYieldsCheck.default,
242
- 'require-yields-description': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
243
- contexts: [{
244
- comment: 'JsdocBlock:has(JsdocTag[tag=/^yields?$/]:not([name!=""]):not([description!=""]))',
245
- context: 'any',
246
- message: '@yields should have a description'
247
- }],
248
- description: 'Requires a description for `@yields` tags',
249
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-description.md#repos-sticky-header'
250
- }),
251
- 'require-yields-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
252
- contexts: [{
253
- comment: 'JsdocBlock:has(JsdocTag[tag=/^yields?$/]:not([parsedType.type]))',
254
- context: 'any',
255
- message: '@yields should have a type'
256
- }],
257
- description: 'Requires a type for `@yields` tags',
258
- url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header'
259
- }),
260
- 'sort-tags': _sortTags.default,
261
- 'tag-lines': _tagLines.default,
262
- 'text-escaping': _textEscaping.default,
263
- 'ts-method-signature-style': _tsMethodSignatureStyle.default,
264
- 'ts-no-empty-object-type': _tsNoEmptyObjectType.default,
265
- 'ts-no-unnecessary-template-expression': _tsNoUnnecessaryTemplateExpression.default,
266
- 'ts-prefer-function-type': _tsPreferFunctionType.default,
267
- 'type-formatting': _typeFormatting.default,
268
- 'valid-types': _validTypes.default
269
- };
270
-
271
- /**
272
- * @param {"warn"|"error"} warnOrError
273
- * @param {string} [flatName]
274
- * @returns {import('eslint').Linter.Config}
275
- */
276
- const createRecommendedRuleset = (warnOrError, flatName) => {
277
- return {
278
- ...(flatName ? {
279
- name: 'jsdoc/' + flatName
280
- } : {}),
281
- // @ts-expect-error ESLint 8 plugins
282
- plugins: flatName ? {
283
- jsdoc: index
284
- } : ['jsdoc'],
285
- rules: {
286
- 'jsdoc/check-access': warnOrError,
287
- 'jsdoc/check-alignment': warnOrError,
288
- 'jsdoc/check-examples': 'off',
289
- 'jsdoc/check-indentation': 'off',
290
- 'jsdoc/check-line-alignment': 'off',
291
- 'jsdoc/check-param-names': warnOrError,
292
- 'jsdoc/check-property-names': warnOrError,
293
- 'jsdoc/check-syntax': 'off',
294
- 'jsdoc/check-tag-names': warnOrError,
295
- 'jsdoc/check-template-names': 'off',
296
- 'jsdoc/check-types': warnOrError,
297
- 'jsdoc/check-values': warnOrError,
298
- 'jsdoc/convert-to-jsdoc-comments': 'off',
299
- 'jsdoc/empty-tags': warnOrError,
300
- 'jsdoc/escape-inline-tags': warnOrError,
301
- 'jsdoc/implements-on-classes': warnOrError,
302
- 'jsdoc/imports-as-dependencies': 'off',
303
- 'jsdoc/informative-docs': 'off',
304
- 'jsdoc/lines-before-block': 'off',
305
- 'jsdoc/match-description': 'off',
306
- 'jsdoc/match-name': 'off',
307
- 'jsdoc/multiline-blocks': warnOrError,
308
- 'jsdoc/no-bad-blocks': 'off',
309
- 'jsdoc/no-blank-block-descriptions': 'off',
310
- 'jsdoc/no-blank-blocks': 'off',
311
- 'jsdoc/no-defaults': warnOrError,
312
- 'jsdoc/no-missing-syntax': 'off',
313
- 'jsdoc/no-multi-asterisks': warnOrError,
314
- 'jsdoc/no-restricted-syntax': 'off',
315
- 'jsdoc/no-types': 'off',
316
- 'jsdoc/no-undefined-types': warnOrError,
317
- 'jsdoc/normalize-see-links': 'off',
318
- 'jsdoc/prefer-import-tag': 'off',
319
- 'jsdoc/reject-any-type': warnOrError,
320
- 'jsdoc/reject-function-type': warnOrError,
321
- 'jsdoc/require-asterisk-prefix': 'off',
322
- 'jsdoc/require-description': 'off',
323
- 'jsdoc/require-description-complete-sentence': 'off',
324
- 'jsdoc/require-example': 'off',
325
- 'jsdoc/require-file-overview': 'off',
326
- 'jsdoc/require-hyphen-before-param-description': 'off',
327
- 'jsdoc/require-jsdoc': warnOrError,
328
- 'jsdoc/require-next-description': 'off',
329
- 'jsdoc/require-next-type': warnOrError,
330
- 'jsdoc/require-param': warnOrError,
331
- 'jsdoc/require-param-description': warnOrError,
332
- 'jsdoc/require-param-name': warnOrError,
333
- 'jsdoc/require-param-type': warnOrError,
334
- 'jsdoc/require-property': warnOrError,
335
- 'jsdoc/require-property-description': warnOrError,
336
- 'jsdoc/require-property-name': warnOrError,
337
- 'jsdoc/require-property-type': warnOrError,
338
- 'jsdoc/require-rejects': 'off',
339
- 'jsdoc/require-returns': warnOrError,
340
- 'jsdoc/require-returns-check': warnOrError,
341
- 'jsdoc/require-returns-description': warnOrError,
342
- 'jsdoc/require-returns-type': warnOrError,
343
- 'jsdoc/require-tags': 'off',
344
- 'jsdoc/require-template': 'off',
345
- 'jsdoc/require-template-description': 'off',
346
- 'jsdoc/require-throws': 'off',
347
- 'jsdoc/require-throws-description': 'off',
348
- 'jsdoc/require-throws-type': warnOrError,
349
- 'jsdoc/require-yields': warnOrError,
350
- 'jsdoc/require-yields-check': warnOrError,
351
- 'jsdoc/require-yields-description': 'off',
352
- 'jsdoc/require-yields-type': warnOrError,
353
- 'jsdoc/sort-tags': 'off',
354
- 'jsdoc/tag-lines': warnOrError,
355
- 'jsdoc/text-escaping': 'off',
356
- 'jsdoc/ts-method-signature-style': 'off',
357
- 'jsdoc/ts-no-empty-object-type': warnOrError,
358
- 'jsdoc/ts-no-unnecessary-template-expression': 'off',
359
- 'jsdoc/ts-prefer-function-type': 'off',
360
- 'jsdoc/type-formatting': 'off',
361
- 'jsdoc/valid-types': warnOrError
362
- }
363
- };
364
- };
365
-
366
- /**
367
- * @param {"warn"|"error"} warnOrError
368
- * @param {string} [flatName]
369
- * @returns {import('eslint').Linter.Config}
370
- */
371
- const createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {
372
- const ruleset = createRecommendedRuleset(warnOrError, flatName);
373
- return {
374
- ...ruleset,
375
- rules: {
376
- ...ruleset.rules,
377
- /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */
378
- 'jsdoc/check-tag-names': [warnOrError, {
379
- typed: true
380
- }],
381
- 'jsdoc/no-types': warnOrError,
382
- 'jsdoc/no-undefined-types': 'off',
383
- 'jsdoc/require-param-type': 'off',
384
- 'jsdoc/require-property-type': 'off',
385
- 'jsdoc/require-returns-type': 'off'
386
- /* eslint-enable @stylistic/indent */
387
- }
388
- };
389
- };
390
-
391
- /**
392
- * @param {"warn"|"error"} warnOrError
393
- * @param {string} [flatName]
394
- * @returns {import('eslint').Linter.Config}
395
- */
396
- const createRecommendedTsDocRuleset = (warnOrError, flatName) => {
397
- const ruleset = createRecommendedTypeScriptRuleset(warnOrError, flatName);
398
- return {
399
- ...ruleset,
400
- rules: {
401
- ...ruleset.rules,
402
- /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */
403
- 'jsdoc/require-next-type': 'off',
404
- 'jsdoc/require-throws-type': 'off',
405
- 'jsdoc/require-yields-type': 'off'
406
- /* eslint-enable @stylistic/indent */
407
- }
408
- };
409
- };
410
-
411
- /**
412
- * @param {"warn"|"error"} warnOrError
413
- * @param {string} [flatName]
414
- * @returns {import('eslint').Linter.Config}
415
- */
416
- const createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {
417
- const ruleset = createRecommendedRuleset(warnOrError, flatName);
418
- return {
419
- ...ruleset,
420
- rules: {
421
- ...ruleset.rules,
422
- /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */
423
- 'jsdoc/no-undefined-types': 'off'
424
- /* eslint-enable @stylistic/indent */
425
- }
426
- };
427
- };
428
-
429
- /**
430
- * @param {(string | unknown[])[]} ruleNames
431
- */
432
- const createStandaloneRulesetFactory = ruleNames => {
433
- /**
434
- * @param {"warn"|"error"} warnOrError
435
- * @param {string} [flatName]
436
- * @returns {import('eslint').Linter.Config}
437
- */
438
- return (warnOrError, flatName) => {
439
- return {
440
- name: 'jsdoc/' + flatName,
441
- plugins: {
442
- jsdoc: index
443
- },
444
- rules: Object.fromEntries(ruleNames.map(ruleName => {
445
- return typeof ruleName === 'string' ? [ruleName, warnOrError] : [ruleName[0], [warnOrError, ...ruleName.slice(1)]];
446
- }))
447
- };
448
- };
449
- };
450
- const contentsRules = ['jsdoc/informative-docs', 'jsdoc/match-description', 'jsdoc/no-blank-block-descriptions', 'jsdoc/no-blank-blocks', ['jsdoc/text-escaping', {
451
- escapeHTML: true
452
- }]];
453
- const createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);
454
- const createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);
455
- 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/escape-inline-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'];
456
- const createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);
457
- const createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);
458
- const requirementsRules = ['jsdoc/require-example', 'jsdoc/require-jsdoc', 'jsdoc/require-next-type', '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-throws-type', 'jsdoc/require-yields', 'jsdoc/require-yields-type'];
459
- const createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);
460
- const createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([...requirementsRules, 'jsdoc/require-param-type', 'jsdoc/require-property-type', 'jsdoc/require-returns-type', 'jsdoc/require-template']);
461
- 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'];
462
- const createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);
463
- const createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);
464
-
465
- /* c8 ignore next 3 -- TS */
466
- if (!index.configs) {
467
- throw new Error('TypeScript guard');
468
- }
469
- index.configs.recommended = createRecommendedRuleset('warn');
470
- index.configs['recommended-error'] = createRecommendedRuleset('error');
471
- index.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');
472
- index.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');
473
- index.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');
474
- index.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');
475
- index.configs['recommended-tsdoc'] = createRecommendedTsDocRuleset('warn');
476
- index.configs['recommended-tsdoc-error'] = createRecommendedTsDocRuleset('error');
477
- index.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');
478
- index.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');
479
- index.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');
480
- index.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');
481
- index.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');
482
- index.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');
483
- index.configs['flat/recommended-tsdoc'] = createRecommendedTsDocRuleset('warn', 'flat/recommended-tsdoc');
484
- index.configs['flat/recommended-tsdoc-error'] = createRecommendedTsDocRuleset('error', 'flat/recommended-tsdoc-error');
485
- index.configs['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');
486
- index.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');
487
- index.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');
488
- index.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');
489
- index.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');
490
- index.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');
491
- index.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');
492
- index.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');
493
- index.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');
494
- index.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');
495
- index.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');
496
- index.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');
497
- index.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');
498
- index.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');
499
- index.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');
500
- index.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');
501
- index.configs.examples = /** @type {import('eslint').Linter.Config[]} */[{
502
- files: ['**/*.js'],
503
- name: 'jsdoc/examples/processor',
504
- plugins: {
505
- examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)()
506
- },
507
- processor: 'examples/examples'
508
- }, {
509
- files: ['**/*.md/*.js'],
510
- name: 'jsdoc/examples/rules',
511
- rules: {
512
- // "always" newline rule at end unlikely in sample code
513
- '@stylistic/eol-last': 0,
514
- // Often wish to start `@example` code after newline; also may use
515
- // empty lines for spacing
516
- '@stylistic/no-multiple-empty-lines': 0,
517
- // Can generally look nicer to pad a little even if code imposes more stringency
518
- '@stylistic/padded-blocks': 0,
519
- '@typescript-eslint/no-unused-vars': 0,
520
- // Wouldn't generally expect example paths to resolve relative to JS file
521
- 'import/no-unresolved': 0,
522
- // Snippets likely too short to always include import/export info
523
- 'import/unambiguous': 0,
524
- 'jsdoc/require-file-overview': 0,
525
- // The end of a multiline comment would end the comment the example is in.
526
- 'jsdoc/require-jsdoc': 0,
527
- // See import/no-unresolved
528
- 'n/no-missing-import': 0,
529
- 'n/no-missing-require': 0,
530
- // Unlikely to have inadvertent debugging within examples
531
- 'no-console': 0,
532
- /* c8 ignore next 11 -- Coercion should work */
533
- ...(_semver.default.gte(_semver.default.coerce(_eslint.ESLint.version) ?? '9.0.0', '9.0.0') ? {} : {
534
- // "always" newline rule at end unlikely in sample code
535
- 'eol-last': 0,
536
- // Often wish to start `@example` code after newline; also may use
537
- // empty lines for spacing
538
- 'no-multiple-empty-lines': 0,
539
- // Can generally look nicer to pad a little even if code imposes more stringency
540
- 'padded-blocks': 0
541
- }),
542
- // Many variables in examples will be `undefined`
543
- 'no-undef': 0,
544
- // Common to define variables for clarity without always using them
545
- 'no-unused-vars': 0,
546
- // See import/no-unresolved
547
- 'node/no-missing-import': 0,
548
- 'node/no-missing-require': 0
549
- }
550
- }];
551
- index.configs['default-expressions'] = /** @type {import('eslint').Linter.Config[]} */[{
552
- files: ['**/*.js'],
553
- name: 'jsdoc/default-expressions/processor',
554
- plugins: {
555
- examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)({
556
- checkDefaults: true,
557
- checkParams: true,
558
- checkProperties: true
559
- })
560
- },
561
- processor: 'examples/examples'
562
- }, {
563
- files: ['**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties'],
564
- name: 'jsdoc/default-expressions/rules',
565
- rules: {
566
- ...index.configs.examples[1].rules,
567
- '@stylistic/quotes': ['error', 'double'],
568
- '@stylistic/semi': ['error', 'never'],
569
- '@typescript-eslint/no-unused-expressions': 0,
570
- 'chai-friendly/no-unused-expressions': 0,
571
- 'no-empty-function': 0,
572
- 'no-new': 0,
573
- 'no-unused-expressions': 0,
574
- /* c8 ignore next 8 -- Coercion should work */
575
- ...(_semver.default.gte(_semver.default.coerce(_eslint.ESLint.version) ?? '9.0.0', '9.0.0') ? {} : {
576
- quotes: ['error', 'double'],
577
- semi: ['error', 'never']
578
- }),
579
- strict: 0
580
- }
581
- }];
582
- index.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.Config[]} */[{
583
- name: 'jsdoc/examples-and-default-expressions',
584
- plugins: {
585
- examples: (0, _getJsdocProcessorPlugin.getJsdocProcessorPlugin)({
586
- checkDefaults: true,
587
- checkParams: true,
588
- checkProperties: true
589
- })
590
- }
591
- }, ...index.configs.examples.map(config => {
592
- return {
593
- ...config,
594
- plugins: {}
595
- };
596
- }), ...index.configs['default-expressions'].map(config => {
597
- return {
598
- ...config,
599
- plugins: {}
600
- };
601
- })];
602
- index.configs['flat/recommended-mixed'] = [{
603
- ...index.configs['flat/recommended-typescript-flavor'],
604
- files: ['**/*.{js,jsx,cjs,mjs}']
605
- }, {
606
- ...index.configs['flat/recommended-typescript'],
607
- files: ['**/*.{ts,tsx,cts,mts}']
608
- }];
609
- var _default = exports.default = index;
610
- /**
611
- * @type {((
612
- * cfg?: import('eslint').Linter.Config & {
613
- * config?: FlatConfigNames,
614
- * mergeSettings?: boolean,
615
- * settings?: Partial<import('./iterateJsdoc.js').Settings>,
616
- * rules?: {[key in keyof import('./rules.d.ts').Rules]?: import('eslint').Linter.RuleEntry<import('./rules.d.ts').Rules[key]>},
617
- * extraRuleDefinitions?: {
618
- * forbid?: {
619
- * [contextName: string]: {
620
- * description?: string,
621
- * url?: string,
622
- * contexts: (string|{
623
- * message: string,
624
- * context: string,
625
- * comment: string
626
- * })[]
627
- * }
628
- * },
629
- * preferTypes?: {
630
- * [typeName: string]: {
631
- * description: string,
632
- * overrideSettings: {
633
- * [typeNodeName: string]: {
634
- * message: string,
635
- * replacement?: false|string,
636
- * unifyParentAndChildTypeChecks?: boolean,
637
- * }
638
- * },
639
- * url: string,
640
- * }
641
- * }
642
- * }
643
- * }
644
- * ) => import('eslint').Linter.Config)}
645
- */
646
- const jsdoc = function (cfg) {
647
- /** @type {import('eslint').Linter.Config} */
648
- let outputConfig = {
649
- plugins: {
650
- jsdoc: index
651
- }
652
- };
653
- if (cfg) {
654
- if (cfg.config) {
655
- // @ts-expect-error Security check
656
- if (cfg.config === '__proto__') {
657
- throw new TypeError('Disallowed config value');
658
- }
659
- outputConfig = /** @type {import('eslint').Linter.Config} */index.configs[cfg.config];
660
- }
661
- if (cfg.rules) {
662
- outputConfig.rules = {
663
- ...outputConfig.rules,
664
- ...cfg.rules
665
- };
666
- }
667
- if (cfg.plugins) {
668
- outputConfig.plugins = {
669
- ...outputConfig.plugins,
670
- ...cfg.plugins
671
- };
672
- }
673
- if (cfg.name) {
674
- outputConfig.name = cfg.name;
675
- }
676
- if (cfg.basePath) {
677
- outputConfig.basePath = cfg.basePath;
678
- }
679
- if (cfg.files) {
680
- outputConfig.files = cfg.files;
681
- }
682
- if (cfg.ignores) {
683
- outputConfig.ignores = cfg.ignores;
684
- }
685
- if (cfg.language) {
686
- outputConfig.language = cfg.language;
687
- }
688
- if (cfg.languageOptions) {
689
- outputConfig.languageOptions = cfg.languageOptions;
690
- }
691
- if (cfg.linterOptions) {
692
- outputConfig.linterOptions = cfg.linterOptions;
693
- }
694
- if (cfg.processor) {
695
- outputConfig.processor = cfg.processor;
696
- }
697
- if (cfg.extraRuleDefinitions) {
698
- if (!outputConfig.plugins?.jsdoc?.rules) {
699
- throw new Error('JSDoc plugin required for `extraRuleDefinitions`');
700
- }
701
- if (cfg.extraRuleDefinitions.forbid) {
702
- for (const [contextName, {
703
- contexts,
704
- description,
705
- url
706
- }] of Object.entries(cfg.extraRuleDefinitions.forbid)) {
707
- outputConfig.plugins.jsdoc.rules[`forbid-${contextName}`] = (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
708
- contextName,
709
- contexts,
710
- description,
711
- url
712
- });
713
- }
714
- }
715
- if (cfg.extraRuleDefinitions.preferTypes) {
716
- for (const [typeName, {
717
- description,
718
- overrideSettings,
719
- url
720
- }] of Object.entries(cfg.extraRuleDefinitions.preferTypes)) {
721
- outputConfig.plugins.jsdoc.rules[`prefer-type-${typeName}`] = (0, _buildRejectOrPreferRuleDefinition.buildRejectOrPreferRuleDefinition)({
722
- description,
723
- overrideSettings,
724
- typeName,
725
- url
726
- });
727
- }
728
- }
729
- }
730
- }
731
- outputConfig.settings = {
732
- jsdoc: cfg?.mergeSettings === false ? cfg.settings : (0, _objectDeepMerge.merge)({}, cfg?.settings ?? {}, cfg?.config?.includes('recommended') ? {
733
- // We may need to drop these for "typescript" (non-"flavor") configs,
734
- // if support is later added: https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html
735
- structuredTags: {
736
- next: {
737
- required: ['type']
738
- },
739
- rejects: {
740
- required: ['type']
741
- }
742
- }
743
- } : {})
744
- };
745
- return outputConfig;
746
- };
747
- exports.jsdoc = jsdoc;
748
- //# sourceMappingURL=index.cjs.map