eslint-plugin-tsdoc-require-2 1.2.1 → 1.2.3

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 (316) hide show
  1. package/README.md +103 -101
  2. package/dist/internal/require-tag-factory.cjs +40 -48
  3. package/dist/internal/require-tag-factory.d.ts +7 -8
  4. package/dist/internal/require-tag-factory.d.ts.map +1 -1
  5. package/dist/internal/require-tag-factory.js +41 -49
  6. package/dist/internal/require-tag-factory.js.map +1 -1
  7. package/dist/plugin.cjs +9 -2
  8. package/dist/plugin.d.ts.map +1 -1
  9. package/dist/plugin.js +9 -2
  10. package/dist/plugin.js.map +1 -1
  11. package/dist/rules/require-tag-rules.js +112 -112
  12. package/dist/rules/require.cjs +39 -47
  13. package/dist/rules/require.d.ts +3 -3
  14. package/dist/rules/require.d.ts.map +1 -1
  15. package/dist/rules/require.js +40 -48
  16. package/dist/rules/require.js.map +1 -1
  17. package/dist/rules/required-tags/require-abstract.cjs +1 -3
  18. package/dist/rules/required-tags/require-abstract.d.ts.map +1 -1
  19. package/dist/rules/required-tags/require-abstract.js +1 -3
  20. package/dist/rules/required-tags/require-abstract.js.map +1 -1
  21. package/dist/rules/required-tags/require-alpha.cjs +1 -3
  22. package/dist/rules/required-tags/require-alpha.d.ts.map +1 -1
  23. package/dist/rules/required-tags/require-alpha.js +1 -3
  24. package/dist/rules/required-tags/require-alpha.js.map +1 -1
  25. package/dist/rules/required-tags/require-author.cjs +1 -3
  26. package/dist/rules/required-tags/require-author.d.ts.map +1 -1
  27. package/dist/rules/required-tags/require-author.js +1 -3
  28. package/dist/rules/required-tags/require-author.js.map +1 -1
  29. package/dist/rules/required-tags/require-beta.cjs +1 -3
  30. package/dist/rules/required-tags/require-beta.d.ts.map +1 -1
  31. package/dist/rules/required-tags/require-beta.js +1 -3
  32. package/dist/rules/required-tags/require-beta.js.map +1 -1
  33. package/dist/rules/required-tags/require-category.cjs +1 -3
  34. package/dist/rules/required-tags/require-category.d.ts.map +1 -1
  35. package/dist/rules/required-tags/require-category.js +1 -3
  36. package/dist/rules/required-tags/require-category.js.map +1 -1
  37. package/dist/rules/required-tags/require-class.cjs +1 -3
  38. package/dist/rules/required-tags/require-class.d.ts.map +1 -1
  39. package/dist/rules/required-tags/require-class.js +1 -3
  40. package/dist/rules/required-tags/require-class.js.map +1 -1
  41. package/dist/rules/required-tags/require-decorator.cjs +1 -3
  42. package/dist/rules/required-tags/require-decorator.d.ts.map +1 -1
  43. package/dist/rules/required-tags/require-decorator.js +1 -3
  44. package/dist/rules/required-tags/require-decorator.js.map +1 -1
  45. package/dist/rules/required-tags/require-default-value.cjs +1 -3
  46. package/dist/rules/required-tags/require-default-value.d.ts.map +1 -1
  47. package/dist/rules/required-tags/require-default-value.js +1 -3
  48. package/dist/rules/required-tags/require-default-value.js.map +1 -1
  49. package/dist/rules/required-tags/require-deprecated.cjs +1 -3
  50. package/dist/rules/required-tags/require-deprecated.d.ts.map +1 -1
  51. package/dist/rules/required-tags/require-deprecated.js +1 -3
  52. package/dist/rules/required-tags/require-deprecated.js.map +1 -1
  53. package/dist/rules/required-tags/require-document.cjs +1 -3
  54. package/dist/rules/required-tags/require-document.d.ts.map +1 -1
  55. package/dist/rules/required-tags/require-document.js +1 -3
  56. package/dist/rules/required-tags/require-document.js.map +1 -1
  57. package/dist/rules/required-tags/require-enum.cjs +1 -3
  58. package/dist/rules/required-tags/require-enum.d.ts.map +1 -1
  59. package/dist/rules/required-tags/require-enum.js +1 -3
  60. package/dist/rules/required-tags/require-enum.js.map +1 -1
  61. package/dist/rules/required-tags/require-event-property.cjs +1 -3
  62. package/dist/rules/required-tags/require-event-property.d.ts.map +1 -1
  63. package/dist/rules/required-tags/require-event-property.js +1 -3
  64. package/dist/rules/required-tags/require-event-property.js.map +1 -1
  65. package/dist/rules/required-tags/require-event.cjs +1 -3
  66. package/dist/rules/required-tags/require-event.d.ts.map +1 -1
  67. package/dist/rules/required-tags/require-event.js +1 -3
  68. package/dist/rules/required-tags/require-event.js.map +1 -1
  69. package/dist/rules/required-tags/require-example.cjs +1 -3
  70. package/dist/rules/required-tags/require-example.d.ts.map +1 -1
  71. package/dist/rules/required-tags/require-example.js +1 -3
  72. package/dist/rules/required-tags/require-example.js.map +1 -1
  73. package/dist/rules/required-tags/require-expand.cjs +1 -3
  74. package/dist/rules/required-tags/require-expand.d.ts.map +1 -1
  75. package/dist/rules/required-tags/require-expand.js +1 -3
  76. package/dist/rules/required-tags/require-expand.js.map +1 -1
  77. package/dist/rules/required-tags/require-experimental.cjs +1 -3
  78. package/dist/rules/required-tags/require-experimental.d.ts.map +1 -1
  79. package/dist/rules/required-tags/require-experimental.js +1 -3
  80. package/dist/rules/required-tags/require-experimental.js.map +1 -1
  81. package/dist/rules/required-tags/require-function.cjs +1 -3
  82. package/dist/rules/required-tags/require-function.d.ts.map +1 -1
  83. package/dist/rules/required-tags/require-function.js +1 -3
  84. package/dist/rules/required-tags/require-function.js.map +1 -1
  85. package/dist/rules/required-tags/require-group.cjs +1 -3
  86. package/dist/rules/required-tags/require-group.d.ts.map +1 -1
  87. package/dist/rules/required-tags/require-group.js +1 -3
  88. package/dist/rules/required-tags/require-group.js.map +1 -1
  89. package/dist/rules/required-tags/require-hidden.cjs +1 -3
  90. package/dist/rules/required-tags/require-hidden.d.ts.map +1 -1
  91. package/dist/rules/required-tags/require-hidden.js +1 -3
  92. package/dist/rules/required-tags/require-hidden.js.map +1 -1
  93. package/dist/rules/required-tags/require-hideconstructor.cjs +1 -3
  94. package/dist/rules/required-tags/require-hideconstructor.d.ts.map +1 -1
  95. package/dist/rules/required-tags/require-hideconstructor.js +1 -3
  96. package/dist/rules/required-tags/require-hideconstructor.js.map +1 -1
  97. package/dist/rules/required-tags/require-ignore.cjs +1 -3
  98. package/dist/rules/required-tags/require-ignore.d.ts.map +1 -1
  99. package/dist/rules/required-tags/require-ignore.js +1 -3
  100. package/dist/rules/required-tags/require-ignore.js.map +1 -1
  101. package/dist/rules/required-tags/require-import.cjs +1 -3
  102. package/dist/rules/required-tags/require-import.d.ts.map +1 -1
  103. package/dist/rules/required-tags/require-import.js +1 -3
  104. package/dist/rules/required-tags/require-import.js.map +1 -1
  105. package/dist/rules/required-tags/require-include.cjs +1 -3
  106. package/dist/rules/required-tags/require-include.d.ts.map +1 -1
  107. package/dist/rules/required-tags/require-include.js +1 -3
  108. package/dist/rules/required-tags/require-include.js.map +1 -1
  109. package/dist/rules/required-tags/require-inherit-doc.cjs +1 -3
  110. package/dist/rules/required-tags/require-inherit-doc.d.ts.map +1 -1
  111. package/dist/rules/required-tags/require-inherit-doc.js +1 -3
  112. package/dist/rules/required-tags/require-inherit-doc.js.map +1 -1
  113. package/dist/rules/required-tags/require-inline.cjs +1 -3
  114. package/dist/rules/required-tags/require-inline.d.ts.map +1 -1
  115. package/dist/rules/required-tags/require-inline.js +1 -3
  116. package/dist/rules/required-tags/require-inline.js.map +1 -1
  117. package/dist/rules/required-tags/require-interface.cjs +1 -3
  118. package/dist/rules/required-tags/require-interface.d.ts.map +1 -1
  119. package/dist/rules/required-tags/require-interface.js +1 -3
  120. package/dist/rules/required-tags/require-interface.js.map +1 -1
  121. package/dist/rules/required-tags/require-internal.cjs +1 -3
  122. package/dist/rules/required-tags/require-internal.d.ts.map +1 -1
  123. package/dist/rules/required-tags/require-internal.js +1 -3
  124. package/dist/rules/required-tags/require-internal.js.map +1 -1
  125. package/dist/rules/required-tags/require-label.cjs +1 -3
  126. package/dist/rules/required-tags/require-label.d.ts.map +1 -1
  127. package/dist/rules/required-tags/require-label.js +1 -3
  128. package/dist/rules/required-tags/require-label.js.map +1 -1
  129. package/dist/rules/required-tags/require-license.cjs +1 -3
  130. package/dist/rules/required-tags/require-license.d.ts.map +1 -1
  131. package/dist/rules/required-tags/require-license.js +1 -3
  132. package/dist/rules/required-tags/require-license.js.map +1 -1
  133. package/dist/rules/required-tags/require-link.cjs +1 -3
  134. package/dist/rules/required-tags/require-link.d.ts.map +1 -1
  135. package/dist/rules/required-tags/require-link.js +1 -3
  136. package/dist/rules/required-tags/require-link.js.map +1 -1
  137. package/dist/rules/required-tags/require-merge-module-with.cjs +1 -3
  138. package/dist/rules/required-tags/require-merge-module-with.d.ts.map +1 -1
  139. package/dist/rules/required-tags/require-merge-module-with.js +1 -3
  140. package/dist/rules/required-tags/require-merge-module-with.js.map +1 -1
  141. package/dist/rules/required-tags/require-module.cjs +1 -3
  142. package/dist/rules/required-tags/require-module.d.ts.map +1 -1
  143. package/dist/rules/required-tags/require-module.js +1 -3
  144. package/dist/rules/required-tags/require-module.js.map +1 -1
  145. package/dist/rules/required-tags/require-namespace.cjs +1 -3
  146. package/dist/rules/required-tags/require-namespace.d.ts.map +1 -1
  147. package/dist/rules/required-tags/require-namespace.js +1 -3
  148. package/dist/rules/required-tags/require-namespace.js.map +1 -1
  149. package/dist/rules/required-tags/require-overload.cjs +1 -3
  150. package/dist/rules/required-tags/require-overload.d.ts.map +1 -1
  151. package/dist/rules/required-tags/require-overload.js +1 -3
  152. package/dist/rules/required-tags/require-overload.js.map +1 -1
  153. package/dist/rules/required-tags/require-override.cjs +1 -3
  154. package/dist/rules/required-tags/require-override.d.ts.map +1 -1
  155. package/dist/rules/required-tags/require-override.js +1 -3
  156. package/dist/rules/required-tags/require-override.js.map +1 -1
  157. package/dist/rules/required-tags/require-package-documentation.cjs +1 -3
  158. package/dist/rules/required-tags/require-package-documentation.d.ts.map +1 -1
  159. package/dist/rules/required-tags/require-package-documentation.js +1 -3
  160. package/dist/rules/required-tags/require-package-documentation.js.map +1 -1
  161. package/dist/rules/required-tags/require-param.cjs +1 -3
  162. package/dist/rules/required-tags/require-param.d.ts.map +1 -1
  163. package/dist/rules/required-tags/require-param.js +1 -3
  164. package/dist/rules/required-tags/require-param.js.map +1 -1
  165. package/dist/rules/required-tags/require-primary-export.cjs +1 -3
  166. package/dist/rules/required-tags/require-primary-export.d.ts.map +1 -1
  167. package/dist/rules/required-tags/require-primary-export.js +1 -3
  168. package/dist/rules/required-tags/require-primary-export.js.map +1 -1
  169. package/dist/rules/required-tags/require-private-remarks.cjs +1 -3
  170. package/dist/rules/required-tags/require-private-remarks.d.ts.map +1 -1
  171. package/dist/rules/required-tags/require-private-remarks.js +1 -3
  172. package/dist/rules/required-tags/require-private-remarks.js.map +1 -1
  173. package/dist/rules/required-tags/require-private.cjs +1 -3
  174. package/dist/rules/required-tags/require-private.d.ts.map +1 -1
  175. package/dist/rules/required-tags/require-private.js +1 -3
  176. package/dist/rules/required-tags/require-private.js.map +1 -1
  177. package/dist/rules/required-tags/require-property.cjs +1 -3
  178. package/dist/rules/required-tags/require-property.d.ts.map +1 -1
  179. package/dist/rules/required-tags/require-property.js +1 -3
  180. package/dist/rules/required-tags/require-property.js.map +1 -1
  181. package/dist/rules/required-tags/require-protected.cjs +1 -3
  182. package/dist/rules/required-tags/require-protected.d.ts.map +1 -1
  183. package/dist/rules/required-tags/require-protected.js +1 -3
  184. package/dist/rules/required-tags/require-protected.js.map +1 -1
  185. package/dist/rules/required-tags/require-public.cjs +1 -3
  186. package/dist/rules/required-tags/require-public.d.ts.map +1 -1
  187. package/dist/rules/required-tags/require-public.js +1 -3
  188. package/dist/rules/required-tags/require-public.js.map +1 -1
  189. package/dist/rules/required-tags/require-readonly.cjs +1 -3
  190. package/dist/rules/required-tags/require-readonly.d.ts.map +1 -1
  191. package/dist/rules/required-tags/require-readonly.js +1 -3
  192. package/dist/rules/required-tags/require-readonly.js.map +1 -1
  193. package/dist/rules/required-tags/require-remarks.cjs +1 -3
  194. package/dist/rules/required-tags/require-remarks.d.ts.map +1 -1
  195. package/dist/rules/required-tags/require-remarks.js +1 -3
  196. package/dist/rules/required-tags/require-remarks.js.map +1 -1
  197. package/dist/rules/required-tags/require-returns.cjs +1 -3
  198. package/dist/rules/required-tags/require-returns.d.ts.map +1 -1
  199. package/dist/rules/required-tags/require-returns.js +1 -3
  200. package/dist/rules/required-tags/require-returns.js.map +1 -1
  201. package/dist/rules/required-tags/require-sealed.cjs +1 -3
  202. package/dist/rules/required-tags/require-sealed.d.ts.map +1 -1
  203. package/dist/rules/required-tags/require-sealed.js +1 -3
  204. package/dist/rules/required-tags/require-sealed.js.map +1 -1
  205. package/dist/rules/required-tags/require-see.cjs +1 -3
  206. package/dist/rules/required-tags/require-see.d.ts.map +1 -1
  207. package/dist/rules/required-tags/require-see.js +1 -3
  208. package/dist/rules/required-tags/require-see.js.map +1 -1
  209. package/dist/rules/required-tags/require-since.cjs +1 -3
  210. package/dist/rules/required-tags/require-since.d.ts.map +1 -1
  211. package/dist/rules/required-tags/require-since.js +1 -3
  212. package/dist/rules/required-tags/require-since.js.map +1 -1
  213. package/dist/rules/required-tags/require-sort-strategy.cjs +1 -3
  214. package/dist/rules/required-tags/require-sort-strategy.d.ts.map +1 -1
  215. package/dist/rules/required-tags/require-sort-strategy.js +1 -3
  216. package/dist/rules/required-tags/require-sort-strategy.js.map +1 -1
  217. package/dist/rules/required-tags/require-summary.cjs +1 -3
  218. package/dist/rules/required-tags/require-summary.d.ts.map +1 -1
  219. package/dist/rules/required-tags/require-summary.js +1 -3
  220. package/dist/rules/required-tags/require-summary.js.map +1 -1
  221. package/dist/rules/required-tags/require-template.cjs +1 -3
  222. package/dist/rules/required-tags/require-template.d.ts.map +1 -1
  223. package/dist/rules/required-tags/require-template.js +1 -3
  224. package/dist/rules/required-tags/require-template.js.map +1 -1
  225. package/dist/rules/required-tags/require-throws.cjs +1 -3
  226. package/dist/rules/required-tags/require-throws.d.ts.map +1 -1
  227. package/dist/rules/required-tags/require-throws.js +1 -3
  228. package/dist/rules/required-tags/require-throws.js.map +1 -1
  229. package/dist/rules/required-tags/require-type-param.cjs +1 -3
  230. package/dist/rules/required-tags/require-type-param.d.ts.map +1 -1
  231. package/dist/rules/required-tags/require-type-param.js +1 -3
  232. package/dist/rules/required-tags/require-type-param.js.map +1 -1
  233. package/dist/rules/required-tags/require-use-declared-type.cjs +1 -3
  234. package/dist/rules/required-tags/require-use-declared-type.d.ts.map +1 -1
  235. package/dist/rules/required-tags/require-use-declared-type.js +1 -3
  236. package/dist/rules/required-tags/require-use-declared-type.js.map +1 -1
  237. package/dist/rules/required-tags/require-virtual.cjs +1 -3
  238. package/dist/rules/required-tags/require-virtual.d.ts.map +1 -1
  239. package/dist/rules/required-tags/require-virtual.js +1 -3
  240. package/dist/rules/required-tags/require-virtual.js.map +1 -1
  241. package/dist/rules/restrict-tags.cjs +40 -48
  242. package/dist/rules/restrict-tags.d.ts +3 -3
  243. package/dist/rules/restrict-tags.d.ts.map +1 -1
  244. package/dist/rules/restrict-tags.js +41 -49
  245. package/dist/rules/restrict-tags.js.map +1 -1
  246. package/docs/rules/getting-started.md +27 -27
  247. package/docs/rules/index.md +22 -22
  248. package/docs/rules/presets/all.md +1 -3
  249. package/docs/rules/presets/detailed.md +1 -3
  250. package/docs/rules/presets/index.md +75 -75
  251. package/docs/rules/presets/jsdoc.md +1 -3
  252. package/docs/rules/presets/packages.md +1 -3
  253. package/docs/rules/presets/recommended.md +1 -3
  254. package/docs/rules/presets/tsdoc.md +1 -3
  255. package/docs/rules/presets/typedoc-strict.md +1 -3
  256. package/docs/rules/presets/typedoc.md +1 -3
  257. package/docs/rules/require.md +53 -44
  258. package/docs/rules/required-tags/require-abstract.md +31 -30
  259. package/docs/rules/required-tags/require-alpha.md +18 -9
  260. package/docs/rules/required-tags/require-author.md +31 -30
  261. package/docs/rules/required-tags/require-beta.md +18 -9
  262. package/docs/rules/required-tags/require-category.md +30 -31
  263. package/docs/rules/required-tags/require-class.md +11 -10
  264. package/docs/rules/required-tags/require-decorator.md +18 -9
  265. package/docs/rules/required-tags/require-default-value.md +18 -9
  266. package/docs/rules/required-tags/require-deprecated.md +18 -9
  267. package/docs/rules/required-tags/require-document.md +31 -30
  268. package/docs/rules/required-tags/require-enum.md +13 -12
  269. package/docs/rules/required-tags/require-event-property.md +18 -9
  270. package/docs/rules/required-tags/require-event.md +31 -30
  271. package/docs/rules/required-tags/require-example.md +17 -10
  272. package/docs/rules/required-tags/require-expand.md +31 -30
  273. package/docs/rules/required-tags/require-experimental.md +18 -9
  274. package/docs/rules/required-tags/require-function.md +11 -13
  275. package/docs/rules/required-tags/require-group.md +31 -30
  276. package/docs/rules/required-tags/require-hidden.md +32 -31
  277. package/docs/rules/required-tags/require-hideconstructor.md +31 -30
  278. package/docs/rules/required-tags/require-ignore.md +31 -30
  279. package/docs/rules/required-tags/require-import.md +30 -31
  280. package/docs/rules/required-tags/require-include.md +31 -32
  281. package/docs/rules/required-tags/require-inherit-doc.md +18 -9
  282. package/docs/rules/required-tags/require-inline.md +31 -30
  283. package/docs/rules/required-tags/require-interface.md +14 -13
  284. package/docs/rules/required-tags/require-internal.md +18 -9
  285. package/docs/rules/required-tags/require-label.md +18 -9
  286. package/docs/rules/required-tags/require-license.md +31 -30
  287. package/docs/rules/required-tags/require-link.md +18 -9
  288. package/docs/rules/required-tags/require-merge-module-with.md +31 -30
  289. package/docs/rules/required-tags/require-module.md +14 -13
  290. package/docs/rules/required-tags/require-namespace.md +31 -30
  291. package/docs/rules/required-tags/require-overload.md +31 -30
  292. package/docs/rules/required-tags/require-override.md +18 -9
  293. package/docs/rules/required-tags/require-package-documentation.md +14 -13
  294. package/docs/rules/required-tags/require-param.md +14 -13
  295. package/docs/rules/required-tags/require-primary-export.md +31 -30
  296. package/docs/rules/required-tags/require-private-remarks.md +18 -11
  297. package/docs/rules/required-tags/require-private.md +31 -30
  298. package/docs/rules/required-tags/require-property.md +31 -30
  299. package/docs/rules/required-tags/require-protected.md +31 -30
  300. package/docs/rules/required-tags/require-public.md +19 -10
  301. package/docs/rules/required-tags/require-readonly.md +19 -10
  302. package/docs/rules/required-tags/require-remarks.md +12 -10
  303. package/docs/rules/required-tags/require-returns.md +14 -13
  304. package/docs/rules/required-tags/require-sealed.md +19 -10
  305. package/docs/rules/required-tags/require-see.md +19 -10
  306. package/docs/rules/required-tags/require-since.md +30 -31
  307. package/docs/rules/required-tags/require-sort-strategy.md +31 -30
  308. package/docs/rules/required-tags/require-summary.md +31 -30
  309. package/docs/rules/required-tags/require-template.md +31 -30
  310. package/docs/rules/required-tags/require-throws.md +20 -19
  311. package/docs/rules/required-tags/require-type-param.md +14 -13
  312. package/docs/rules/required-tags/require-use-declared-type.md +31 -30
  313. package/docs/rules/required-tags/require-virtual.md +20 -11
  314. package/docs/rules/required-tags.md +40 -38
  315. package/docs/rules/restrict-tags.md +68 -60
  316. package/package.json +67 -80
@@ -3,9 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const require_tag_factory_js_1 = require("../../internal/require-tag-factory.cjs");
4
4
  /** Rule module for `tsdoc-require-2/require-use-declared-type`. */
5
5
  const RequireUseDeclaredTypeRule = (0, require_tag_factory_js_1.createTagRule)({
6
- create(context) {
7
- return (0, require_tag_factory_js_1.createRequireTagRuleListener)(context, "@useDeclaredType");
8
- },
6
+ create: (context) => (0, require_tag_factory_js_1.createRequireTagRuleListener)(context, "@useDeclaredType"),
9
7
  meta: {
10
8
  defaultOptions: [
11
9
  {
@@ -1 +1 @@
1
- {"version":3,"file":"require-use-declared-type.d.ts","sourceRoot":"","sources":["../../../src/rules/required-tags/require-use-declared-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,aAAa,EAErB,MAAM,uCAAuC,CAAC;AAE/C,mEAAmE;AACnE,QAAA,MAAM,0BAA0B,EAAE,aA8BhC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"require-use-declared-type.d.ts","sourceRoot":"","sources":["../../../src/rules/required-tags/require-use-declared-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,aAAa,EAErB,MAAM,uCAAuC,CAAC;AAE/C,mEAAmE;AACnE,QAAA,MAAM,0BAA0B,EAAE,aA6BhC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
@@ -1,9 +1,7 @@
1
1
  import { createRequireTagRuleListener, createTagRule, enforceableEntityKinds, optionSchema, } from "../../internal/require-tag-factory.js";
2
2
  /** Rule module for `tsdoc-require-2/require-use-declared-type`. */
3
3
  const RequireUseDeclaredTypeRule = createTagRule({
4
- create(context) {
5
- return createRequireTagRuleListener(context, "@useDeclaredType");
6
- },
4
+ create: (context) => createRequireTagRuleListener(context, "@useDeclaredType"),
7
5
  meta: {
8
6
  defaultOptions: [
9
7
  {
@@ -1 +1 @@
1
- {"version":3,"file":"require-use-declared-type.js","sourceRoot":"","sources":["../../../src/rules/required-tags/require-use-declared-type.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,YAAY,GAKf,MAAM,uCAAuC,CAAC;AAE/C,mEAAmE;AACnE,MAAM,0BAA0B,GAAkB,aAAa,CAG7D;IACE,MAAM,CAAC,OAAuB;QAC1B,OAAO,4BAA4B,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,EAAE;QACF,cAAc,EAAE;YACZ;gBACI,UAAU,EAAE,CAAC,GAAG,sBAAsB,CAAC;gBACvC,kBAAkB,EAAE,KAAK;aAC5B;SACJ;QACD,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,WAAW,EACP,yGAAyG;YAC7G,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,6HAA6H;SACrI;QACD,QAAQ,EAAE;YACN,UAAU,EACN,wEAAwE;SAC/E;QACD,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,2BAA2B;CACpC,CAAC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"require-use-declared-type.js","sourceRoot":"","sources":["../../../src/rules/required-tags/require-use-declared-type.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,YAAY,GAKf,MAAM,uCAAuC,CAAC;AAE/C,mEAAmE;AACnE,MAAM,0BAA0B,GAAkB,aAAa,CAG7D;IACE,MAAM,EAAE,CAAC,OAAuB,EAAE,EAAE,CAChC,4BAA4B,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAC7D,IAAI,EAAE;QACF,cAAc,EAAE;YACZ;gBACI,UAAU,EAAE,CAAC,GAAG,sBAAsB,CAAC;gBACvC,kBAAkB,EAAE,KAAK;aAC5B;SACJ;QACD,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,WAAW,EACP,yGAAyG;YAC7G,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,6HAA6H;SACrI;QACD,QAAQ,EAAE;YACN,UAAU,EACN,wEAAwE;SAC/E;QACD,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,2BAA2B;CACpC,CAAC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
@@ -3,9 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const require_tag_factory_js_1 = require("../../internal/require-tag-factory.cjs");
4
4
  /** Rule module for `tsdoc-require-2/require-virtual`. */
5
5
  const RequireVirtualRule = (0, require_tag_factory_js_1.createTagRule)({
6
- create(context) {
7
- return (0, require_tag_factory_js_1.createRequireTagRuleListener)(context, "@virtual");
8
- },
6
+ create: (context) => (0, require_tag_factory_js_1.createRequireTagRuleListener)(context, "@virtual"),
9
7
  meta: {
10
8
  defaultOptions: [
11
9
  {
@@ -1 +1 @@
1
- {"version":3,"file":"require-virtual.d.ts","sourceRoot":"","sources":["../../../src/rules/required-tags/require-virtual.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,aAAa,EAErB,MAAM,uCAAuC,CAAC;AAE/C,yDAAyD;AACzD,QAAA,MAAM,kBAAkB,EAAE,aA8BxB,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"require-virtual.d.ts","sourceRoot":"","sources":["../../../src/rules/required-tags/require-virtual.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,KAAK,aAAa,EAErB,MAAM,uCAAuC,CAAC;AAE/C,yDAAyD;AACzD,QAAA,MAAM,kBAAkB,EAAE,aA6BxB,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
@@ -1,9 +1,7 @@
1
1
  import { createRequireTagRuleListener, createTagRule, enforceableEntityKinds, optionSchema, } from "../../internal/require-tag-factory.js";
2
2
  /** Rule module for `tsdoc-require-2/require-virtual`. */
3
3
  const RequireVirtualRule = createTagRule({
4
- create(context) {
5
- return createRequireTagRuleListener(context, "@virtual");
6
- },
4
+ create: (context) => createRequireTagRuleListener(context, "@virtual"),
7
5
  meta: {
8
6
  defaultOptions: [
9
7
  {
@@ -1 +1 @@
1
- {"version":3,"file":"require-virtual.js","sourceRoot":"","sources":["../../../src/rules/required-tags/require-virtual.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,YAAY,GAKf,MAAM,uCAAuC,CAAC;AAE/C,yDAAyD;AACzD,MAAM,kBAAkB,GAAkB,aAAa,CAGrD;IACE,MAAM,CAAC,OAAuB;QAC1B,OAAO,4BAA4B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,EAAE;QACF,cAAc,EAAE;YACZ;gBACI,UAAU,EAAE,CAAC,GAAG,sBAAsB,CAAC;gBACvC,kBAAkB,EAAE,KAAK;aAC5B;SACJ;QACD,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,WAAW,EACP,uFAAuF;YAC3F,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,mHAAmH;SAC3H;QACD,QAAQ,EAAE;YACN,UAAU,EACN,gEAAgE;SACvE;QACD,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,iBAAiB;CAC1B,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"require-virtual.js","sourceRoot":"","sources":["../../../src/rules/required-tags/require-virtual.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,YAAY,GAKf,MAAM,uCAAuC,CAAC;AAE/C,yDAAyD;AACzD,MAAM,kBAAkB,GAAkB,aAAa,CAGrD;IACE,MAAM,EAAE,CAAC,OAAuB,EAAE,EAAE,CAChC,4BAA4B,CAAC,OAAO,EAAE,UAAU,CAAC;IACrD,IAAI,EAAE;QACF,cAAc,EAAE;YACZ;gBACI,UAAU,EAAE,CAAC,GAAG,sBAAsB,CAAC;gBACvC,kBAAkB,EAAE,KAAK;aAC5B;SACJ;QACD,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,WAAW,EACP,uFAAuF;YAC3F,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,mHAAmH;SAC3H;QACD,QAAQ,EAAE;YACN,UAAU,EACN,gEAAgE;SACvE;QACD,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,iBAAiB;CAC1B,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
@@ -2,6 +2,24 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("@typescript-eslint/utils");
4
4
  const ts_extras_1 = require("ts-extras");
5
+ const exportedDeclarationModes = ["all", "exported"];
6
+ const nonExportedDeclarationModes = ["all", "non-exported"];
7
+ const supportedDeclarationNodeTypes = [
8
+ utils_1.AST_NODE_TYPES.ClassDeclaration,
9
+ utils_1.AST_NODE_TYPES.FunctionDeclaration,
10
+ utils_1.AST_NODE_TYPES.TSDeclareFunction,
11
+ utils_1.AST_NODE_TYPES.TSEnumDeclaration,
12
+ utils_1.AST_NODE_TYPES.TSInterfaceDeclaration,
13
+ utils_1.AST_NODE_TYPES.TSModuleDeclaration,
14
+ utils_1.AST_NODE_TYPES.TSTypeAliasDeclaration,
15
+ utils_1.AST_NODE_TYPES.VariableDeclaration,
16
+ ];
17
+ const supportedDefaultExportExpressionNodeTypes = [
18
+ utils_1.AST_NODE_TYPES.ArrowFunctionExpression,
19
+ utils_1.AST_NODE_TYPES.ClassExpression,
20
+ utils_1.AST_NODE_TYPES.FunctionExpression,
21
+ utils_1.AST_NODE_TYPES.ObjectExpression,
22
+ ];
5
23
  const enforceableEntityKinds = [
6
24
  "class",
7
25
  "enum",
@@ -72,24 +90,12 @@ const resolveExportMode = (ruleOption) => {
72
90
  }
73
91
  return ruleOption?.exportMode ?? "exported";
74
92
  };
75
- const shouldCheckExportedDeclarations = (exportMode) => exportMode === "all" || exportMode === "exported";
76
- const shouldCheckNonExportedDeclarations = (exportMode) => exportMode === "all" || exportMode === "non-exported";
77
- const assertUnreachable = (value) => {
78
- throw new Error(`Unexpected node type: ${String(value)}`);
79
- };
80
- const createRule = utils_1.ESLintUtils.RuleCreator((ruleName) => `https://github.com/Nick2bad4u/eslint-plugin-tsdoc-require-2/blob/main/docs/rules/${ruleName}.md`);
81
- const isSupportedDeclaration = (node) => node.type === utils_1.AST_NODE_TYPES.ClassDeclaration ||
82
- node.type === utils_1.AST_NODE_TYPES.FunctionDeclaration ||
83
- node.type === utils_1.AST_NODE_TYPES.TSDeclareFunction ||
84
- node.type === utils_1.AST_NODE_TYPES.TSEnumDeclaration ||
85
- node.type === utils_1.AST_NODE_TYPES.TSInterfaceDeclaration ||
86
- node.type === utils_1.AST_NODE_TYPES.TSModuleDeclaration ||
87
- node.type === utils_1.AST_NODE_TYPES.TSTypeAliasDeclaration ||
88
- node.type === utils_1.AST_NODE_TYPES.VariableDeclaration;
89
- const isSupportedDefaultExportExpression = (node) => node.type === utils_1.AST_NODE_TYPES.ArrowFunctionExpression ||
90
- node.type === utils_1.AST_NODE_TYPES.ClassExpression ||
91
- node.type === utils_1.AST_NODE_TYPES.FunctionExpression ||
92
- node.type === utils_1.AST_NODE_TYPES.ObjectExpression;
93
+ const shouldCheckExportedDeclarations = (exportMode) => (0, ts_extras_1.arrayIncludes)(exportedDeclarationModes, exportMode);
94
+ const shouldCheckNonExportedDeclarations = (exportMode) => (0, ts_extras_1.arrayIncludes)(nonExportedDeclarationModes, exportMode);
95
+ const ruleCreator = utils_1.ESLintUtils.RuleCreator;
96
+ const createRule = ruleCreator((ruleName) => `https://github.com/Nick2bad4u/eslint-plugin-tsdoc-require-2/blob/main/docs/rules/${ruleName}.md`);
97
+ const isSupportedDeclaration = (node) => (0, ts_extras_1.arrayIncludes)(supportedDeclarationNodeTypes, node.type);
98
+ const isSupportedDefaultExportExpression = (node) => (0, ts_extras_1.arrayIncludes)(supportedDefaultExportExpressionNodeTypes, node.type);
93
99
  const getExpressionKind = (node) => {
94
100
  if (node.type === utils_1.AST_NODE_TYPES.ArrowFunctionExpression ||
95
101
  node.type === utils_1.AST_NODE_TYPES.FunctionExpression) {
@@ -98,10 +104,7 @@ const getExpressionKind = (node) => {
98
104
  if (node.type === utils_1.AST_NODE_TYPES.ClassExpression) {
99
105
  return "class";
100
106
  }
101
- if (node.type === utils_1.AST_NODE_TYPES.ObjectExpression) {
102
- return "object";
103
- }
104
- return assertUnreachable(node);
107
+ return "object";
105
108
  };
106
109
  const getEntityDisplayName = (name) => name ?? "<default export>";
107
110
  const isTopLevelNode = (node) => node.parent?.type === utils_1.AST_NODE_TYPES.Program;
@@ -127,12 +130,7 @@ const getTSDocCommentNode = (sourceCode, node) => {
127
130
  if (!nearestComment.value.startsWith("*")) {
128
131
  return null;
129
132
  }
130
- const nearestCommentLoc = nearestComment.loc;
131
- const nodeLoc = node.loc;
132
- if (nearestCommentLoc === null || nodeLoc === null) {
133
- return null;
134
- }
135
- const lineGap = nodeLoc.start.line - nearestCommentLoc.end.line;
133
+ const lineGap = node.loc.start.line - nearestComment.loc.end.line;
136
134
  if (lineGap < 0 || lineGap > 1) {
137
135
  return null;
138
136
  }
@@ -204,29 +202,26 @@ const declarationTargets = (declaration) => {
204
202
  },
205
203
  ];
206
204
  }
207
- if (declaration.type === utils_1.AST_NODE_TYPES.VariableDeclaration) {
208
- return declaration.declarations.flatMap((declarator) => {
209
- if (declarator.id.type !== utils_1.AST_NODE_TYPES.Identifier) {
210
- return [];
211
- }
212
- return [
213
- {
214
- commentNode: declaration,
215
- kind: "variable",
216
- name: declarator.id.name,
217
- reportNode: declarator,
218
- },
219
- ];
220
- });
221
- }
222
- return assertUnreachable(declaration);
205
+ return declaration.declarations.flatMap((declarator) => {
206
+ if (declarator.id.type !== utils_1.AST_NODE_TYPES.Identifier) {
207
+ return [];
208
+ }
209
+ return [
210
+ {
211
+ commentNode: declaration,
212
+ kind: "variable",
213
+ name: declarator.id.name,
214
+ reportNode: declarator,
215
+ },
216
+ ];
217
+ });
223
218
  };
224
219
  const declarationTargetsWithCommentNode = (declaration, commentNode) => declarationTargets(declaration).map((target) => ({
225
220
  ...target,
226
221
  commentNode,
227
222
  }));
228
223
  const extractTagNames = (commentText) => {
229
- const tagPattern = /(?:^|\W)@(?<tagName>[A-Za-z][-0-9A-Za-z]*)/gu;
224
+ const tagPattern = /(?:^|\W)@(?<tagName>[A-Za-z][\-0-9A-Za-z]*)/gv;
230
225
  const extractedTagNames = new Set();
231
226
  for (const match of commentText.matchAll(tagPattern)) {
232
227
  const rawTagName = match.groups?.["tagName"];
@@ -356,9 +351,6 @@ const restrictTagsRule = createRule({
356
351
  return;
357
352
  }
358
353
  for (const specifier of exportNode.specifiers) {
359
- if (specifier.type !== utils_1.AST_NODE_TYPES.ExportSpecifier) {
360
- continue;
361
- }
362
354
  checkIdentifierExport(specifier.local);
363
355
  }
364
356
  },
@@ -1,16 +1,16 @@
1
- import type { TSESLint } from "@typescript-eslint/utils";
1
+ import { type TSESLint } from "@typescript-eslint/utils";
2
2
  type EntityKind = "class" | "enum" | "function" | "interface" | "namespace" | "object" | "type" | "variable";
3
3
  type ExportMode = "all" | "exported" | "non-exported";
4
4
  type MessageIds = "disallowedTag" | "tagNotAllowed";
5
5
  type Options = [RuleOption];
6
6
  type RestrictMode = "allow" | "deny";
7
- type RuleOption = {
7
+ interface RuleOption {
8
8
  enforceFor?: readonly EntityKind[];
9
9
  exportMode?: ExportMode;
10
10
  includeNonExported?: boolean;
11
11
  mode?: RestrictMode;
12
12
  tags?: readonly `@${string}`[];
13
- };
13
+ }
14
14
  /** ESLint rule module implementing tsdoc-require-2/restrict-tags. */
15
15
  declare const restrictTagsRule: TSESLint.RuleModule<MessageIds, Options>;
16
16
  export default restrictTagsRule;
@@ -1 +1 @@
1
- {"version":3,"file":"restrict-tags.d.ts","sourceRoot":"","sources":["../../src/rules/restrict-tags.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAS/E,KAAK,UAAU,GACT,OAAO,GACP,MAAM,GACN,UAAU,GACV,WAAW,GACX,WAAW,GACX,QAAQ,GACR,MAAM,GACN,UAAU,CAAC;AACjB,KAAK,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,cAAc,CAAC;AACtD,KAAK,UAAU,GAAG,eAAe,GAAG,eAAe,CAAC;AAEpD,KAAK,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC;AAC5B,KAAK,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAMrC,KAAK,UAAU,GAAG;IACd,UAAU,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACnC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,IAAI,MAAM,EAAE,EAAE,CAAC;CAClC,CAAC;AA2VF,qEAAqE;AACrE,QAAA,MAAM,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CA2O7D,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"restrict-tags.d.ts","sourceRoot":"","sources":["../../src/rules/restrict-tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,KAAK,QAAQ,EAEhB,MAAM,0BAA0B,CAAC;AAUlC,KAAK,UAAU,GACT,OAAO,GACP,MAAM,GACN,UAAU,GACV,WAAW,GACX,WAAW,GACX,QAAQ,GACR,MAAM,GACN,UAAU,CAAC;AACjB,KAAK,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,cAAc,CAAC;AACtD,KAAK,UAAU,GAAG,eAAe,GAAG,eAAe,CAAC;AAEpD,KAAK,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC;AAC5B,KAAK,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAMrC,UAAU,UAAU;IAChB,UAAU,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACnC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,IAAI,MAAM,EAAE,EAAE,CAAC;CAClC;AAoVD,qEAAqE;AACrE,QAAA,MAAM,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAuO7D,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
@@ -1,5 +1,23 @@
1
1
  import { AST_NODE_TYPES, AST_TOKEN_TYPES, ESLintUtils, } from "@typescript-eslint/utils";
2
- import { arrayAt, arrayJoin, isDefined, isEmpty, setHas } from "ts-extras";
2
+ import { arrayAt, arrayIncludes, arrayJoin, isDefined, isEmpty, setHas, } from "ts-extras";
3
+ const exportedDeclarationModes = ["all", "exported"];
4
+ const nonExportedDeclarationModes = ["all", "non-exported"];
5
+ const supportedDeclarationNodeTypes = [
6
+ AST_NODE_TYPES.ClassDeclaration,
7
+ AST_NODE_TYPES.FunctionDeclaration,
8
+ AST_NODE_TYPES.TSDeclareFunction,
9
+ AST_NODE_TYPES.TSEnumDeclaration,
10
+ AST_NODE_TYPES.TSInterfaceDeclaration,
11
+ AST_NODE_TYPES.TSModuleDeclaration,
12
+ AST_NODE_TYPES.TSTypeAliasDeclaration,
13
+ AST_NODE_TYPES.VariableDeclaration,
14
+ ];
15
+ const supportedDefaultExportExpressionNodeTypes = [
16
+ AST_NODE_TYPES.ArrowFunctionExpression,
17
+ AST_NODE_TYPES.ClassExpression,
18
+ AST_NODE_TYPES.FunctionExpression,
19
+ AST_NODE_TYPES.ObjectExpression,
20
+ ];
3
21
  const enforceableEntityKinds = [
4
22
  "class",
5
23
  "enum",
@@ -70,24 +88,12 @@ const resolveExportMode = (ruleOption) => {
70
88
  }
71
89
  return ruleOption?.exportMode ?? "exported";
72
90
  };
73
- const shouldCheckExportedDeclarations = (exportMode) => exportMode === "all" || exportMode === "exported";
74
- const shouldCheckNonExportedDeclarations = (exportMode) => exportMode === "all" || exportMode === "non-exported";
75
- const assertUnreachable = (value) => {
76
- throw new Error(`Unexpected node type: ${String(value)}`);
77
- };
78
- const createRule = ESLintUtils.RuleCreator((ruleName) => `https://github.com/Nick2bad4u/eslint-plugin-tsdoc-require-2/blob/main/docs/rules/${ruleName}.md`);
79
- const isSupportedDeclaration = (node) => node.type === AST_NODE_TYPES.ClassDeclaration ||
80
- node.type === AST_NODE_TYPES.FunctionDeclaration ||
81
- node.type === AST_NODE_TYPES.TSDeclareFunction ||
82
- node.type === AST_NODE_TYPES.TSEnumDeclaration ||
83
- node.type === AST_NODE_TYPES.TSInterfaceDeclaration ||
84
- node.type === AST_NODE_TYPES.TSModuleDeclaration ||
85
- node.type === AST_NODE_TYPES.TSTypeAliasDeclaration ||
86
- node.type === AST_NODE_TYPES.VariableDeclaration;
87
- const isSupportedDefaultExportExpression = (node) => node.type === AST_NODE_TYPES.ArrowFunctionExpression ||
88
- node.type === AST_NODE_TYPES.ClassExpression ||
89
- node.type === AST_NODE_TYPES.FunctionExpression ||
90
- node.type === AST_NODE_TYPES.ObjectExpression;
91
+ const shouldCheckExportedDeclarations = (exportMode) => arrayIncludes(exportedDeclarationModes, exportMode);
92
+ const shouldCheckNonExportedDeclarations = (exportMode) => arrayIncludes(nonExportedDeclarationModes, exportMode);
93
+ const ruleCreator = ESLintUtils.RuleCreator;
94
+ const createRule = ruleCreator((ruleName) => `https://github.com/Nick2bad4u/eslint-plugin-tsdoc-require-2/blob/main/docs/rules/${ruleName}.md`);
95
+ const isSupportedDeclaration = (node) => arrayIncludes(supportedDeclarationNodeTypes, node.type);
96
+ const isSupportedDefaultExportExpression = (node) => arrayIncludes(supportedDefaultExportExpressionNodeTypes, node.type);
91
97
  const getExpressionKind = (node) => {
92
98
  if (node.type === AST_NODE_TYPES.ArrowFunctionExpression ||
93
99
  node.type === AST_NODE_TYPES.FunctionExpression) {
@@ -96,10 +102,7 @@ const getExpressionKind = (node) => {
96
102
  if (node.type === AST_NODE_TYPES.ClassExpression) {
97
103
  return "class";
98
104
  }
99
- if (node.type === AST_NODE_TYPES.ObjectExpression) {
100
- return "object";
101
- }
102
- return assertUnreachable(node);
105
+ return "object";
103
106
  };
104
107
  const getEntityDisplayName = (name) => name ?? "<default export>";
105
108
  const isTopLevelNode = (node) => node.parent?.type === AST_NODE_TYPES.Program;
@@ -125,12 +128,7 @@ const getTSDocCommentNode = (sourceCode, node) => {
125
128
  if (!nearestComment.value.startsWith("*")) {
126
129
  return null;
127
130
  }
128
- const nearestCommentLoc = nearestComment.loc;
129
- const nodeLoc = node.loc;
130
- if (nearestCommentLoc === null || nodeLoc === null) {
131
- return null;
132
- }
133
- const lineGap = nodeLoc.start.line - nearestCommentLoc.end.line;
131
+ const lineGap = node.loc.start.line - nearestComment.loc.end.line;
134
132
  if (lineGap < 0 || lineGap > 1) {
135
133
  return null;
136
134
  }
@@ -202,29 +200,26 @@ const declarationTargets = (declaration) => {
202
200
  },
203
201
  ];
204
202
  }
205
- if (declaration.type === AST_NODE_TYPES.VariableDeclaration) {
206
- return declaration.declarations.flatMap((declarator) => {
207
- if (declarator.id.type !== AST_NODE_TYPES.Identifier) {
208
- return [];
209
- }
210
- return [
211
- {
212
- commentNode: declaration,
213
- kind: "variable",
214
- name: declarator.id.name,
215
- reportNode: declarator,
216
- },
217
- ];
218
- });
219
- }
220
- return assertUnreachable(declaration);
203
+ return declaration.declarations.flatMap((declarator) => {
204
+ if (declarator.id.type !== AST_NODE_TYPES.Identifier) {
205
+ return [];
206
+ }
207
+ return [
208
+ {
209
+ commentNode: declaration,
210
+ kind: "variable",
211
+ name: declarator.id.name,
212
+ reportNode: declarator,
213
+ },
214
+ ];
215
+ });
221
216
  };
222
217
  const declarationTargetsWithCommentNode = (declaration, commentNode) => declarationTargets(declaration).map((target) => ({
223
218
  ...target,
224
219
  commentNode,
225
220
  }));
226
221
  const extractTagNames = (commentText) => {
227
- const tagPattern = /(?:^|\W)@(?<tagName>[A-Za-z][-0-9A-Za-z]*)/gu;
222
+ const tagPattern = /(?:^|\W)@(?<tagName>[A-Za-z][\-0-9A-Za-z]*)/gv;
228
223
  const extractedTagNames = new Set();
229
224
  for (const match of commentText.matchAll(tagPattern)) {
230
225
  const rawTagName = match.groups?.["tagName"];
@@ -354,9 +349,6 @@ const restrictTagsRule = createRule({
354
349
  return;
355
350
  }
356
351
  for (const specifier of exportNode.specifiers) {
357
- if (specifier.type !== AST_NODE_TYPES.ExportSpecifier) {
358
- continue;
359
- }
360
352
  checkIdentifierExport(specifier.local);
361
353
  }
362
354
  },
@@ -1 +1 @@
1
- {"version":3,"file":"restrict-tags.js","sourceRoot":"","sources":["../../src/rules/restrict-tags.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restrict-tags.js","sourceRoot":"","sources":["../../src/rules/restrict-tags.ts"],"names":[],"mappings":"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"}
@@ -18,16 +18,16 @@ npm install --save-dev eslint-plugin-tsdoc-require-2
18
18
 
19
19
  Pick **one** preset as your starting point:
20
20
 
21
- | Preset | Best for |
22
- | --- | --- |
23
- | [`recommended`](./presets/recommended.md) | Minimal rollout: require TSDoc comments only. |
24
- | [`detailed`](./presets/detailed.md) | Require comments + `@remarks` for richer docs. |
25
- | [`packages`](./presets/packages.md) | Package/library docs including `@packageDocumentation`. |
26
- | [`jsdoc`](./presets/jsdoc.md) | Function-tag baseline (`@param`, `@returns`, `@throws`) with JSDoc-friendly behavior. |
27
- | [`tsdoc`](./presets/tsdoc.md) | Strong TSDoc baseline with tag requirements + compatibility-tag restrictions. |
28
- | [`typedoc`](./presets/typedoc.md) | TypeDoc-oriented declaration-kind tag enforcement. |
29
- | [`typedoc-strict`](./presets/typedoc-strict.md) | Stricter TypeDoc baseline with module remarks and restricted tags. |
30
- | [`all`](./presets/all.md) | Every rule. Useful for audits, usually too strict for day-one adoption. |
21
+ | Preset | Best for |
22
+ | ----------------------------------------------- | ------------------------------------------------------------------------------------- |
23
+ | [`recommended`](./presets/recommended.md) | Minimal rollout: require TSDoc comments only. |
24
+ | [`detailed`](./presets/detailed.md) | Require comments + `@remarks` for richer docs. |
25
+ | [`packages`](./presets/packages.md) | Package/library docs including `@packageDocumentation`. |
26
+ | [`jsdoc`](./presets/jsdoc.md) | Function-tag baseline (`@param`, `@returns`, `@throws`) with JSDoc-friendly behavior. |
27
+ | [`tsdoc`](./presets/tsdoc.md) | Strong TSDoc baseline with tag requirements + compatibility-tag restrictions. |
28
+ | [`typedoc`](./presets/typedoc.md) | TypeDoc-oriented declaration-kind tag enforcement. |
29
+ | [`typedoc-strict`](./presets/typedoc-strict.md) | Stricter TypeDoc baseline with module remarks and restricted tags. |
30
+ | [`all`](./presets/all.md) | Every rule. Useful for audits, usually too strict for day-one adoption. |
31
31
 
32
32
  ## 3) Enable a preset in Flat Config
33
33
 
@@ -45,25 +45,25 @@ After selecting a preset, add a second config block to tune scope/options.
45
45
  import tsdocRequire from "eslint-plugin-tsdoc-require-2";
46
46
 
47
47
  export default [
48
- tsdocRequire.configs.tsdoc,
48
+ tsdocRequire.configs.tsdoc,
49
+ {
50
+ rules: {
51
+ "tsdoc-require-2/require": [
52
+ "error",
49
53
  {
50
- rules: {
51
- "tsdoc-require-2/require": [
52
- "error",
53
- {
54
- exportMode: "all",
55
- },
56
- ],
57
- "tsdoc-require-2/restrict-tags": [
58
- "error",
59
- {
60
- exportMode: "all",
61
- mode: "deny",
62
- tags: ["@typedef", "@callback"],
63
- },
64
- ],
65
- },
54
+ exportMode: "all",
66
55
  },
56
+ ],
57
+ "tsdoc-require-2/restrict-tags": [
58
+ "error",
59
+ {
60
+ exportMode: "all",
61
+ mode: "deny",
62
+ tags: ["@typedef", "@callback"],
63
+ },
64
+ ],
65
+ },
66
+ },
67
67
  ];
68
68
  ```
69
69
 
@@ -10,11 +10,11 @@ description: Explore the comprehensive set of rules provided by eslint-plugin-ts
10
10
 
11
11
  ## Rule family overview
12
12
 
13
- | Family | Purpose | Start here when |
14
- | --- | --- | --- |
15
- | [`require`](./require.md) | Require a TSDoc block (`/** ... */`) on selected declarations. | You need a documentation baseline first. |
16
- | [`required-tags`](./required-tags.md) | Require specific tags (for example `@param`, `@returns`, `@remarks`) through individual `require-*` rules. | You want documentation completeness and consistency. |
17
- | [`restrict-tags`](./restrict-tags.md) | Allow-list or deny-list tags to control vocabulary and compatibility. | You need a strict tag policy (for example strict TSDoc vs loose JSDoc/TypeDoc tags). |
13
+ | Family | Purpose | Start here when |
14
+ | ------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
15
+ | [`require`](./require.md) | Require a TSDoc block (`/** ... */`) on selected declarations. | You need a documentation baseline first. |
16
+ | [`required-tags`](./required-tags.md) | Require specific tags (for example `@param`, `@returns`, `@remarks`) through individual `require-*` rules. | You want documentation completeness and consistency. |
17
+ | [`restrict-tags`](./restrict-tags.md) | Allow-list or deny-list tags to control vocabulary and compatibility. | You need a strict tag policy (for example strict TSDoc vs loose JSDoc/TypeDoc tags). |
18
18
 
19
19
  ## How the families work together
20
20
 
@@ -34,20 +34,20 @@ Use a preset for the baseline, then add focused overrides.
34
34
  import tsdocRequire from "eslint-plugin-tsdoc-require-2";
35
35
 
36
36
  export default [
37
- tsdocRequire.configs.recommended,
38
- {
39
- rules: {
40
- "tsdoc-require-2/require-param": ["error", { enforceFor: ["function"] }],
41
- "tsdoc-require-2/require-returns": ["error", { enforceFor: ["function"] }],
42
- "tsdoc-require-2/restrict-tags": [
43
- "error",
44
- {
45
- mode: "deny",
46
- tags: ["@typedef", "@callback"],
47
- },
48
- ],
49
- },
50
- },
37
+ tsdocRequire.configs.recommended,
38
+ {
39
+ rules: {
40
+ "tsdoc-require-2/require-param": ["error", { enforceFor: ["function"] }],
41
+ "tsdoc-require-2/require-returns": ["error", { enforceFor: ["function"] }],
42
+ "tsdoc-require-2/restrict-tags": [
43
+ "error",
44
+ {
45
+ mode: "deny",
46
+ tags: ["@typedef", "@callback"],
47
+ },
48
+ ],
49
+ },
50
+ },
51
51
  ];
52
52
  ```
53
53
 
@@ -56,6 +56,6 @@ export default [
56
56
  - New adoption: [Getting Started](./getting-started.md)
57
57
  - Preset selection: [Presets Overview](./presets/index.md)
58
58
  - Rule family details:
59
- - [`tsdoc-require-2/require`](./require.md)
60
- - [`tsdoc-require-2/required-tags` family](./required-tags.md)
61
- - [`tsdoc-require-2/restrict-tags`](./restrict-tags.md)
59
+ - [`tsdoc-require-2/require`](./require.md)
60
+ - [`tsdoc-require-2/required-tags` family](./required-tags.md)
61
+ - [`tsdoc-require-2/restrict-tags`](./restrict-tags.md)
@@ -29,9 +29,7 @@ A safer pattern is to start with `recommended`, `tsdoc`, or `typedoc-strict`, th
29
29
  ```ts
30
30
  import tsdocRequire from "eslint-plugin-tsdoc-require-2";
31
31
 
32
- export default [
33
- tsdocRequire.configs.all,
34
- ];
32
+ export default [tsdocRequire.configs.all];
35
33
  ```
36
34
 
37
35
  ## Adoption tip
@@ -28,9 +28,7 @@ Compared to `recommended`, this adds structural pressure for richer docs without
28
28
  ```ts
29
29
  import tsdocRequire from "eslint-plugin-tsdoc-require-2";
30
30
 
31
- export default [
32
- tsdocRequire.configs.detailed,
33
- ];
31
+ export default [tsdocRequire.configs.detailed];
34
32
  ```
35
33
 
36
34
  ## Trade-offs