eslint-plugin-etc-misc 1.0.2 → 1.0.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 (370) hide show
  1. package/CHANGELOG.md +2 -4
  2. package/README.md +197 -151
  3. package/dist/_internal/casing.d.ts.map +1 -1
  4. package/dist/_internal/casing.js +6 -6
  5. package/dist/_internal/casing.js.map +1 -1
  6. package/dist/_internal/create-external-rule.d.ts +2 -1
  7. package/dist/_internal/create-external-rule.d.ts.map +1 -1
  8. package/dist/_internal/create-external-rule.js +20 -22
  9. package/dist/_internal/create-external-rule.js.map +1 -1
  10. package/dist/_internal/create-import-pattern-rule.d.ts.map +1 -1
  11. package/dist/_internal/create-import-pattern-rule.js +2 -1
  12. package/dist/_internal/create-import-pattern-rule.js.map +1 -1
  13. package/dist/_internal/get-core-rule.d.ts +2 -1
  14. package/dist/_internal/get-core-rule.d.ts.map +1 -1
  15. package/dist/_internal/get-core-rule.js +2 -1
  16. package/dist/_internal/get-core-rule.js.map +1 -1
  17. package/dist/_internal/identifier-blocks.d.ts.map +1 -1
  18. package/dist/_internal/identifier-blocks.js +4 -4
  19. package/dist/_internal/identifier-blocks.js.map +1 -1
  20. package/dist/_internal/ignore-patterns.d.ts.map +1 -1
  21. package/dist/_internal/ignore-patterns.js +2 -1
  22. package/dist/_internal/ignore-patterns.js.map +1 -1
  23. package/dist/_internal/rule-creator.d.ts +2 -1
  24. package/dist/_internal/rule-creator.d.ts.map +1 -1
  25. package/dist/_internal/rule-creator.js.map +1 -1
  26. package/dist/_internal/rule-deprecation.d.ts +2 -1
  27. package/dist/_internal/rule-deprecation.d.ts.map +1 -1
  28. package/dist/_internal/rule-deprecation.js +3 -2
  29. package/dist/_internal/rule-deprecation.js.map +1 -1
  30. package/dist/_internal/symbol-usage.d.ts.map +1 -1
  31. package/dist/_internal/symbol-usage.js +11 -10
  32. package/dist/_internal/symbol-usage.js.map +1 -1
  33. package/dist/_internal/syntax-selectors.d.ts.map +1 -1
  34. package/dist/_internal/syntax-selectors.js +13 -8
  35. package/dist/_internal/syntax-selectors.js.map +1 -1
  36. package/dist/configs/all-strict.d.ts.map +1 -1
  37. package/dist/configs/all-strict.js +3 -2
  38. package/dist/configs/all-strict.js.map +1 -1
  39. package/dist/configs/all.d.ts.map +1 -1
  40. package/dist/configs/all.js +3 -2
  41. package/dist/configs/all.js.map +1 -1
  42. package/dist/configs/minimal.d.ts +22 -0
  43. package/dist/configs/minimal.d.ts.map +1 -0
  44. package/dist/configs/minimal.js +22 -0
  45. package/dist/configs/minimal.js.map +1 -0
  46. package/dist/configs/strict-type-checked.d.ts.map +1 -1
  47. package/dist/configs/strict-type-checked.js +8 -10
  48. package/dist/configs/strict-type-checked.js.map +1 -1
  49. package/dist/configs/strict.d.ts.map +1 -1
  50. package/dist/configs/strict.js +3 -2
  51. package/dist/configs/strict.js.map +1 -1
  52. package/dist/configs.d.ts +2 -0
  53. package/dist/configs.d.ts.map +1 -1
  54. package/dist/configs.js +2 -0
  55. package/dist/configs.js.map +1 -1
  56. package/dist/rules/comment-spacing.d.ts.map +1 -1
  57. package/dist/rules/comment-spacing.js +3 -2
  58. package/dist/rules/comment-spacing.js.map +1 -1
  59. package/dist/rules/consistent-empty-lines.d.ts.map +1 -1
  60. package/dist/rules/consistent-empty-lines.js +3 -2
  61. package/dist/rules/consistent-empty-lines.js.map +1 -1
  62. package/dist/rules/consistent-filename.d.ts.map +1 -1
  63. package/dist/rules/consistent-filename.js +2 -1
  64. package/dist/rules/consistent-filename.js.map +1 -1
  65. package/dist/rules/consistent-import.d.ts.map +1 -1
  66. package/dist/rules/consistent-import.js +2 -1
  67. package/dist/rules/consistent-import.js.map +1 -1
  68. package/dist/rules/consistent-optional-props.d.ts.map +1 -1
  69. package/dist/rules/consistent-optional-props.js +6 -5
  70. package/dist/rules/consistent-optional-props.js.map +1 -1
  71. package/dist/rules/export-matching-filename-only.d.ts.map +1 -1
  72. package/dist/rules/export-matching-filename-only.js +2 -1
  73. package/dist/rules/export-matching-filename-only.js.map +1 -1
  74. package/dist/rules/match-filename.d.ts.map +1 -1
  75. package/dist/rules/match-filename.js +2 -1
  76. package/dist/rules/match-filename.js.map +1 -1
  77. package/dist/rules/max-identifier-blocks.d.ts.map +1 -1
  78. package/dist/rules/max-identifier-blocks.js +2 -4
  79. package/dist/rules/max-identifier-blocks.js.map +1 -1
  80. package/dist/rules/no-assign-mutated-array.d.ts.map +1 -1
  81. package/dist/rules/no-assign-mutated-array.js +2 -1
  82. package/dist/rules/no-assign-mutated-array.js.map +1 -1
  83. package/dist/rules/no-commented-out-code.d.ts.map +1 -1
  84. package/dist/rules/no-commented-out-code.js +22 -25
  85. package/dist/rules/no-commented-out-code.js.map +1 -1
  86. package/dist/rules/no-const-enum.d.ts.map +1 -1
  87. package/dist/rules/no-const-enum.js +2 -1
  88. package/dist/rules/no-const-enum.js.map +1 -1
  89. package/dist/rules/no-deprecated.d.ts.map +1 -1
  90. package/dist/rules/no-deprecated.js +4 -3
  91. package/dist/rules/no-deprecated.js.map +1 -1
  92. package/dist/rules/no-expression-empty-lines.d.ts.map +1 -1
  93. package/dist/rules/no-expression-empty-lines.js +3 -2
  94. package/dist/rules/no-expression-empty-lines.js.map +1 -1
  95. package/dist/rules/no-foreach.d.ts.map +1 -1
  96. package/dist/rules/no-foreach.js +2 -1
  97. package/dist/rules/no-foreach.js.map +1 -1
  98. package/dist/rules/no-implicit-any-catch.d.ts.map +1 -1
  99. package/dist/rules/no-implicit-any-catch.js +3 -2
  100. package/dist/rules/no-implicit-any-catch.js.map +1 -1
  101. package/dist/rules/no-internal.d.ts.map +1 -1
  102. package/dist/rules/no-internal.js +4 -3
  103. package/dist/rules/no-internal.js.map +1 -1
  104. package/dist/rules/no-language-mixing.d.ts.map +1 -1
  105. package/dist/rules/no-language-mixing.js +3 -2
  106. package/dist/rules/no-language-mixing.js.map +1 -1
  107. package/dist/rules/no-misused-generics.d.ts.map +1 -1
  108. package/dist/rules/no-misused-generics.js +5 -4
  109. package/dist/rules/no-misused-generics.js.map +1 -1
  110. package/dist/rules/no-negated-conditions.d.ts.map +1 -1
  111. package/dist/rules/no-negated-conditions.js +2 -1
  112. package/dist/rules/no-negated-conditions.js.map +1 -1
  113. package/dist/rules/no-param-reassign.d.ts.map +1 -1
  114. package/dist/rules/no-param-reassign.js +2 -1
  115. package/dist/rules/no-param-reassign.js.map +1 -1
  116. package/dist/rules/no-restricted-syntax.d.ts.map +1 -1
  117. package/dist/rules/no-restricted-syntax.js +2 -1
  118. package/dist/rules/no-restricted-syntax.js.map +1 -1
  119. package/dist/rules/no-self-import.d.ts.map +1 -1
  120. package/dist/rules/no-self-import.js +2 -1
  121. package/dist/rules/no-self-import.js.map +1 -1
  122. package/dist/rules/no-underscore-export.d.ts.map +1 -1
  123. package/dist/rules/no-underscore-export.js +3 -2
  124. package/dist/rules/no-underscore-export.js.map +1 -1
  125. package/dist/rules/no-unnecessary-break.d.ts.map +1 -1
  126. package/dist/rules/no-unnecessary-break.js +4 -3
  127. package/dist/rules/no-unnecessary-break.js.map +1 -1
  128. package/dist/rules/no-unnecessary-initialization.d.ts.map +1 -1
  129. package/dist/rules/no-unnecessary-initialization.js +3 -2
  130. package/dist/rules/no-unnecessary-initialization.js.map +1 -1
  131. package/dist/rules/no-unnecessary-template-literal.d.ts.map +1 -1
  132. package/dist/rules/no-unnecessary-template-literal.js +3 -2
  133. package/dist/rules/no-unnecessary-template-literal.js.map +1 -1
  134. package/dist/rules/only-export-name.d.ts.map +1 -1
  135. package/dist/rules/only-export-name.js +13 -10
  136. package/dist/rules/only-export-name.js.map +1 -1
  137. package/dist/rules/prefer-interface.d.ts.map +1 -1
  138. package/dist/rules/prefer-interface.js +5 -8
  139. package/dist/rules/prefer-interface.js.map +1 -1
  140. package/dist/rules/require-jsdoc.d.ts.map +1 -1
  141. package/dist/rules/require-jsdoc.js +7 -7
  142. package/dist/rules/require-jsdoc.js.map +1 -1
  143. package/dist/rules/require-syntax.d.ts.map +1 -1
  144. package/dist/rules/require-syntax.js +2 -1
  145. package/dist/rules/require-syntax.js.map +1 -1
  146. package/dist/rules/sort-array.d.ts.map +1 -1
  147. package/dist/rules/sort-array.js +8 -7
  148. package/dist/rules/sort-array.js.map +1 -1
  149. package/dist/rules/sort-class-members.d.ts.map +1 -1
  150. package/dist/rules/sort-class-members.js +2 -1
  151. package/dist/rules/sort-class-members.js.map +1 -1
  152. package/dist/rules/sort-export-specifiers.d.ts.map +1 -1
  153. package/dist/rules/sort-export-specifiers.js +6 -6
  154. package/dist/rules/sort-export-specifiers.js.map +1 -1
  155. package/dist/rules/sort-keys.d.ts.map +1 -1
  156. package/dist/rules/sort-keys.js +5 -5
  157. package/dist/rules/sort-keys.js.map +1 -1
  158. package/dist/rules/sort-top-comments.d.ts.map +1 -1
  159. package/dist/rules/sort-top-comments.js +7 -8
  160. package/dist/rules/sort-top-comments.js.map +1 -1
  161. package/dist/rules/switch-case-spacing.d.ts.map +1 -1
  162. package/dist/rules/switch-case-spacing.js +2 -2
  163. package/dist/rules/switch-case-spacing.js.map +1 -1
  164. package/dist/rules/template-literal-format.d.ts.map +1 -1
  165. package/dist/rules/template-literal-format.js +11 -13
  166. package/dist/rules/template-literal-format.js.map +1 -1
  167. package/dist/rules/throw-error.d.ts.map +1 -1
  168. package/dist/rules/throw-error.js +6 -4
  169. package/dist/rules/throw-error.js.map +1 -1
  170. package/dist/rules/typescript-array-callback-return-type.d.ts.map +1 -1
  171. package/dist/rules/typescript-array-callback-return-type.js +3 -2
  172. package/dist/rules/typescript-array-callback-return-type.js.map +1 -1
  173. package/dist/rules/typescript-class-methods-use-this.d.ts.map +1 -1
  174. package/dist/rules/typescript-class-methods-use-this.js +4 -3
  175. package/dist/rules/typescript-class-methods-use-this.js.map +1 -1
  176. package/dist/rules/typescript-no-boolean-literal-type.d.ts.map +1 -1
  177. package/dist/rules/typescript-no-boolean-literal-type.js +3 -2
  178. package/dist/rules/typescript-no-boolean-literal-type.js.map +1 -1
  179. package/dist/rules/typescript-no-inferrable-types.d.ts.map +1 -1
  180. package/dist/rules/typescript-no-inferrable-types.js +3 -2
  181. package/dist/rules/typescript-no-inferrable-types.js.map +1 -1
  182. package/dist/rules/typescript-no-redundant-undefined-const.d.ts.map +1 -1
  183. package/dist/rules/typescript-no-redundant-undefined-const.js +4 -3
  184. package/dist/rules/typescript-no-redundant-undefined-const.js.map +1 -1
  185. package/dist/rules/typescript-no-redundant-undefined-default-parameter.d.ts.map +1 -1
  186. package/dist/rules/typescript-no-redundant-undefined-default-parameter.js +4 -3
  187. package/dist/rules/typescript-no-redundant-undefined-default-parameter.js.map +1 -1
  188. package/dist/rules/typescript-no-redundant-undefined-let.d.ts.map +1 -1
  189. package/dist/rules/typescript-no-redundant-undefined-let.js +4 -3
  190. package/dist/rules/typescript-no-redundant-undefined-let.js.map +1 -1
  191. package/dist/rules/typescript-no-redundant-undefined-optional.d.ts.map +1 -1
  192. package/dist/rules/typescript-no-redundant-undefined-optional.js +6 -5
  193. package/dist/rules/typescript-no-redundant-undefined-optional.js.map +1 -1
  194. package/dist/rules/typescript-no-redundant-undefined-promise-return-type.d.ts.map +1 -1
  195. package/dist/rules/typescript-no-redundant-undefined-promise-return-type.js +6 -5
  196. package/dist/rules/typescript-no-redundant-undefined-promise-return-type.js.map +1 -1
  197. package/dist/rules/typescript-no-redundant-undefined-readonly-property.d.ts.map +1 -1
  198. package/dist/rules/typescript-no-redundant-undefined-readonly-property.js +4 -3
  199. package/dist/rules/typescript-no-redundant-undefined-readonly-property.js.map +1 -1
  200. package/dist/rules/typescript-no-redundant-undefined-return-type.d.ts.map +1 -1
  201. package/dist/rules/typescript-no-redundant-undefined-return-type.js +6 -5
  202. package/dist/rules/typescript-no-redundant-undefined-return-type.js.map +1 -1
  203. package/dist/rules/typescript-no-redundant-undefined-var.d.ts.map +1 -1
  204. package/dist/rules/typescript-no-redundant-undefined-var.js +4 -3
  205. package/dist/rules/typescript-no-redundant-undefined-var.js.map +1 -1
  206. package/dist/rules/typescript-prefer-enum.d.ts.map +1 -1
  207. package/dist/rules/typescript-prefer-enum.js +6 -5
  208. package/dist/rules/typescript-prefer-enum.js.map +1 -1
  209. package/dist/rules/typescript-prefer-readonly-array.d.ts.map +1 -1
  210. package/dist/rules/typescript-prefer-readonly-array.js +3 -2
  211. package/dist/rules/typescript-prefer-readonly-array.js.map +1 -1
  212. package/dist/rules/typescript-prefer-readonly-property.d.ts.map +1 -1
  213. package/dist/rules/typescript-prefer-readonly-property.js +5 -4
  214. package/dist/rules/typescript-prefer-readonly-property.js.map +1 -1
  215. package/dist/rules/typescript-require-prop-type-annotation.d.ts.map +1 -1
  216. package/dist/rules/typescript-require-prop-type-annotation.js +5 -4
  217. package/dist/rules/typescript-require-prop-type-annotation.js.map +1 -1
  218. package/dist/rules/typescript-require-this-void.d.ts.map +1 -1
  219. package/dist/rules/typescript-require-this-void.js +2 -1
  220. package/dist/rules/typescript-require-this-void.js.map +1 -1
  221. package/dist/rules.d.ts +2 -1
  222. package/dist/rules.d.ts.map +1 -1
  223. package/dist/rules.js +14 -7
  224. package/dist/rules.js.map +1 -1
  225. package/docs/docusaurus/blog/2026-03-09-docs-site-online.md +3 -3
  226. package/docs/docusaurus/blog/2026-03-11-adr-driven-docs-roadmap.md +3 -3
  227. package/docs/docusaurus/docusaurus.config.ts +2 -3
  228. package/docs/docusaurus/sidebars.rules.ts +8 -0
  229. package/docs/docusaurus/site-docs/getting-started.md +2 -3
  230. package/docs/docusaurus/site-docs/guides/blog-post-backlog.md +12 -12
  231. package/docs/docusaurus/site-docs/guides/migration-from-etc-and-misc.md +7 -7
  232. package/docs/docusaurus/site-docs/intro.md +1 -1
  233. package/docs/rules/array-type.md +6 -6
  234. package/docs/rules/class-match-filename.md +6 -6
  235. package/docs/rules/comment-spacing.md +9 -9
  236. package/docs/rules/consistent-empty-lines.md +8 -9
  237. package/docs/rules/consistent-enum-members.md +17 -16
  238. package/docs/rules/consistent-filename.md +12 -10
  239. package/docs/rules/consistent-import.md +11 -11
  240. package/docs/rules/consistent-optional-props.md +12 -12
  241. package/docs/rules/consistent-source-extension.md +6 -6
  242. package/docs/rules/consistent-symbol-description.md +6 -6
  243. package/docs/rules/default-case.md +20 -20
  244. package/docs/rules/disallow-import.md +11 -9
  245. package/docs/rules/export-matching-filename-only.md +12 -10
  246. package/docs/rules/getting-started.md +7 -6
  247. package/docs/rules/match-filename.md +13 -13
  248. package/docs/rules/max-identifier-blocks.md +7 -7
  249. package/docs/rules/no-assign-mutated-array.md +31 -11
  250. package/docs/rules/no-at-sign-import.md +9 -9
  251. package/docs/rules/no-at-sign-internal-import.md +9 -9
  252. package/docs/rules/no-chain-coalescence-mixture.md +6 -6
  253. package/docs/rules/no-commented-out-code.md +12 -12
  254. package/docs/rules/no-const-enum.md +13 -13
  255. package/docs/rules/no-deprecated.md +26 -26
  256. package/docs/rules/no-enum.md +14 -14
  257. package/docs/rules/no-expression-empty-lines.md +12 -20
  258. package/docs/rules/no-foreach.md +14 -10
  259. package/docs/rules/no-implicit-any-catch.md +31 -31
  260. package/docs/rules/no-index-import.md +9 -9
  261. package/docs/rules/no-internal-modules.md +9 -9
  262. package/docs/rules/no-internal.md +26 -26
  263. package/docs/rules/no-language-mixing.md +6 -6
  264. package/docs/rules/no-misused-generics.md +8 -8
  265. package/docs/rules/no-mixed-enums.md +14 -14
  266. package/docs/rules/no-negated-conditions.md +16 -12
  267. package/docs/rules/no-nodejs-modules.md +9 -9
  268. package/docs/rules/no-param-reassign.md +19 -19
  269. package/docs/rules/no-relative-parent-import.md +12 -12
  270. package/docs/rules/no-restricted-syntax.md +24 -23
  271. package/docs/rules/no-secret.md +6 -6
  272. package/docs/rules/no-self-import.md +6 -6
  273. package/docs/rules/no-shadow.md +12 -12
  274. package/docs/rules/no-sibling-import.md +8 -8
  275. package/docs/rules/no-single-line-comment.md +10 -10
  276. package/docs/rules/no-t.md +15 -15
  277. package/docs/rules/no-underscore-export.md +6 -6
  278. package/docs/rules/no-unnecessary-as-const.md +8 -8
  279. package/docs/rules/no-unnecessary-break.md +19 -19
  280. package/docs/rules/no-unnecessary-initialization.md +8 -8
  281. package/docs/rules/no-unnecessary-template-literal.md +7 -7
  282. package/docs/rules/no-unused-disable.md +6 -6
  283. package/docs/rules/no-useless-generics.md +10 -10
  284. package/docs/rules/no-value-tostring.md +6 -6
  285. package/docs/rules/no-writeonly.md +26 -26
  286. package/docs/rules/object-format.md +16 -16
  287. package/docs/rules/only-export-name.md +10 -8
  288. package/docs/rules/overview.md +8 -7
  289. package/docs/rules/prefer-arrow-function-property.md +24 -24
  290. package/docs/rules/prefer-const-require.md +8 -8
  291. package/docs/rules/prefer-includes.md +17 -8
  292. package/docs/rules/prefer-interface.md +24 -24
  293. package/docs/rules/prefer-less-than.md +10 -10
  294. package/docs/rules/prefer-object-has-own.md +6 -6
  295. package/docs/rules/prefer-only-export.md +6 -6
  296. package/docs/rules/presets/all-strict.md +1 -1
  297. package/docs/rules/presets/minimal.md +44 -0
  298. package/docs/rules/presets/recommended.md +3 -1
  299. package/docs/rules/presets/strict-type-checked.md +1 -1
  300. package/docs/rules/presets/strict.md +1 -1
  301. package/docs/rules/require-jsdoc.md +29 -17
  302. package/docs/rules/require-syntax.md +23 -19
  303. package/docs/rules/restrict-identifier-characters.md +6 -6
  304. package/docs/rules/sort-array.md +16 -8
  305. package/docs/rules/sort-call-signature.md +16 -16
  306. package/docs/rules/sort-class-members.md +14 -14
  307. package/docs/rules/sort-construct-signature.md +14 -14
  308. package/docs/rules/sort-export-specifiers.md +6 -6
  309. package/docs/rules/sort-keys.md +15 -15
  310. package/docs/rules/sort-top-comments.md +6 -6
  311. package/docs/rules/switch-case-spacing.md +20 -18
  312. package/docs/rules/template-literal-format.md +6 -6
  313. package/docs/rules/throw-error.md +6 -6
  314. package/docs/rules/throw-new-error.md +6 -6
  315. package/docs/rules/typescript-array-callback-return-type.md +22 -10
  316. package/docs/rules/typescript-class-methods-use-this.md +21 -21
  317. package/docs/rules/typescript-consistent-array-type-name.md +6 -6
  318. package/docs/rules/typescript-define-function-in-one-statement.md +6 -6
  319. package/docs/rules/typescript-exhaustive-switch.md +20 -20
  320. package/docs/rules/typescript-no-boolean-literal-type.md +10 -10
  321. package/docs/rules/typescript-no-complex-declarator-type.md +15 -15
  322. package/docs/rules/typescript-no-complex-return-type.md +9 -9
  323. package/docs/rules/typescript-no-empty-interfaces.md +7 -7
  324. package/docs/rules/typescript-no-inferrable-types.md +10 -10
  325. package/docs/rules/typescript-no-multi-type-tuples.md +6 -6
  326. package/docs/rules/typescript-no-never.md +8 -8
  327. package/docs/rules/typescript-no-redundant-undefined-const.md +6 -6
  328. package/docs/rules/typescript-no-redundant-undefined-default-parameter.md +11 -11
  329. package/docs/rules/typescript-no-redundant-undefined-let.md +6 -6
  330. package/docs/rules/typescript-no-redundant-undefined-optional.md +9 -9
  331. package/docs/rules/typescript-no-redundant-undefined-promise-return-type.md +17 -17
  332. package/docs/rules/typescript-no-redundant-undefined-readonly-property.md +14 -14
  333. package/docs/rules/typescript-no-redundant-undefined-return-type.md +16 -16
  334. package/docs/rules/typescript-no-redundant-undefined-var.md +6 -6
  335. package/docs/rules/typescript-no-restricted-syntax.md +10 -10
  336. package/docs/rules/typescript-no-unsafe-object-assign.md +6 -6
  337. package/docs/rules/typescript-no-unsafe-object-assignment.md +6 -6
  338. package/docs/rules/typescript-prefer-array-type-alias.md +6 -6
  339. package/docs/rules/typescript-prefer-class-method.md +9 -9
  340. package/docs/rules/typescript-prefer-enum.md +11 -11
  341. package/docs/rules/typescript-prefer-named-tuple-members.md +6 -6
  342. package/docs/rules/typescript-prefer-readonly-array-parameter.md +8 -8
  343. package/docs/rules/typescript-prefer-readonly-array.md +6 -6
  344. package/docs/rules/typescript-prefer-readonly-index-signature.md +12 -12
  345. package/docs/rules/typescript-prefer-readonly-map.md +6 -6
  346. package/docs/rules/typescript-prefer-readonly-property.md +10 -10
  347. package/docs/rules/typescript-prefer-readonly-record.md +9 -7
  348. package/docs/rules/typescript-prefer-readonly-set.md +6 -6
  349. package/docs/rules/typescript-require-prop-type-annotation.md +12 -12
  350. package/docs/rules/typescript-require-readonly-array-property-type.md +12 -12
  351. package/docs/rules/typescript-require-readonly-array-return-type.md +11 -11
  352. package/docs/rules/typescript-require-readonly-array-type-alias.md +6 -6
  353. package/docs/rules/typescript-require-readonly-map-parameter-type.md +9 -9
  354. package/docs/rules/typescript-require-readonly-map-property-type.md +13 -13
  355. package/docs/rules/typescript-require-readonly-map-return-type.md +13 -13
  356. package/docs/rules/typescript-require-readonly-map-type-alias.md +7 -7
  357. package/docs/rules/typescript-require-readonly-record-parameter-type.md +8 -8
  358. package/docs/rules/typescript-require-readonly-record-property-type.md +12 -12
  359. package/docs/rules/typescript-require-readonly-record-return-type.md +12 -12
  360. package/docs/rules/typescript-require-readonly-record-type-alias.md +6 -6
  361. package/docs/rules/typescript-require-readonly-set-parameter-type.md +8 -8
  362. package/docs/rules/typescript-require-readonly-set-property-type.md +12 -12
  363. package/docs/rules/typescript-require-readonly-set-return-type.md +12 -12
  364. package/docs/rules/typescript-require-readonly-set-type-alias.md +6 -6
  365. package/docs/rules/typescript-require-this-void.md +14 -14
  366. package/docs/rules/underscore-internal.md +10 -10
  367. package/docs/rules/unused-internal-properties.md +14 -14
  368. package/docs/rules/uppercase-iife.md +8 -8
  369. package/docs/rules/words.md +6 -6
  370. package/package.json +19 -13
@@ -1,17 +1,18 @@
1
+ import { arrayFirst, isDefined } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  const disallowedSelector = "SwitchCase:last-child > BreakStatement.consequent";
3
4
  const createTrailingBreakRemovalFix = (sourceCode, node) => {
4
5
  const previousToken = sourceCode.getTokenBefore(node);
5
6
  const previousTokenLine = previousToken?.loc.end.line;
6
7
  const breakLine = node.loc.start.line;
7
- const shouldRemoveLeadingWhitespace = previousTokenLine !== undefined && previousTokenLine === breakLine;
8
+ const shouldRemoveLeadingWhitespace = isDefined(previousTokenLine) && previousTokenLine === breakLine;
8
9
  if (previousToken === null || !shouldRemoveLeadingWhitespace) {
9
10
  return (fixer) => fixer.remove(node);
10
11
  }
11
- const leadingText = sourceCode.text.slice(previousToken.range[1], node.range[0]);
12
+ const leadingText = sourceCode.text.slice(previousToken.range[1], arrayFirst(node.range));
12
13
  const leadingWhitespaceLength = /^[\t ]*/u.exec(leadingText)?.[0].length ?? 0;
13
14
  return (fixer) => fixer.removeRange([
14
- node.range[0] - leadingWhitespaceLength,
15
+ arrayFirst(node.range) - leadingWhitespaceLength,
15
16
  node.range[1],
16
17
  ]);
17
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-break.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-break.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,kBAAkB,GAAG,mDAAmD,CAAC;AAE/E,MAAM,6BAA6B,GAAG,CAClC,UAAyC,EACzC,IAAiC,EACP,EAAE;IAC5B,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IACtC,MAAM,6BAA6B,GAC/B,iBAAiB,KAAK,SAAS,IAAI,iBAAiB,KAAK,SAAS,CAAC;IAEvE,IAAI,aAAa,KAAK,IAAI,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAC3D,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EACtB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAChB,CAAC;IACF,MAAM,uBAAuB,GACzB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;IAElD,OAAO,CAAC,KAAK,EAAE,EAAE,CACb,KAAK,CAAC,WAAW,CAAC;QACd,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,uBAAuB;QACvC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KAChB,CAAC,CAAC;AACX,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,OAAO;YACH,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;gBACpD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBACxD,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,GAAG,6BAA6B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAE5D,OAAO,CAAC,MAAM,CAAC;oBACX,GAAG;oBACH,SAAS,EAAE,WAAW;oBACtB,IAAI;oBACJ,OAAO,EAAE;wBACL;4BACI,GAAG;4BACH,SAAS,EAAE,eAAe;yBAC7B;qBACJ;iBACJ,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,iDAAiD;YAC9D,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,qFAAqF;SAC7F;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE;YACN,SAAS,EACL,yDAAyD;YAC7D,aAAa,EACT,gEAAgE;SACvE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,sBAAsB;CAC/B,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"no-unnecessary-break.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-break.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,kBAAkB,GAAG,mDAAmD,CAAC;AAE/E,MAAM,6BAA6B,GAAG,CAClC,UAAyC,EACzC,IAAiC,EACP,EAAE;IAC5B,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IACtC,MAAM,6BAA6B,GAC/B,SAAS,CAAC,iBAAiB,CAAC,IAAI,iBAAiB,KAAK,SAAS,CAAC;IAEpE,IAAI,aAAa,KAAK,IAAI,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAC3D,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CACrC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EACtB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CACzB,CAAC;IACF,MAAM,uBAAuB,GACzB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;IAElD,OAAO,CAAC,KAAK,EAAE,EAAE,CACb,KAAK,CAAC,WAAW,CAAC;QACd,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,uBAAuB;QAChD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KAChB,CAAC,CAAC;AACX,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,OAAO;YACH,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;gBACpD,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBACxD,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,GAAG,6BAA6B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAE5D,OAAO,CAAC,MAAM,CAAC;oBACX,GAAG;oBACH,SAAS,EAAE,WAAW;oBACtB,IAAI;oBACJ,OAAO,EAAE;wBACL;4BACI,GAAG;4BACH,SAAS,EAAE,eAAe;yBAC7B;qBACJ;iBACJ,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,iDAAiD;YAC9D,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,qFAAqF;SAC7F;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE;YACN,SAAS,EACL,yDAAyD;YAC7D,aAAa,EACT,gEAAgE;SACvE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,sBAAsB;CAC/B,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-initialization.d.ts","sourceRoot":"","sources":["../../src/rules/no-unnecessary-initialization.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAgC3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgD5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"no-unnecessary-initialization.d.ts","sourceRoot":"","sources":["../../src/rules/no-unnecessary-initialization.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAgC3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgD5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { arrayFirst, isDefined } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  const disallowedSelector = "PropertyDefinition > Identifier.value[name='undefined'], VariableDeclarator > Identifier.init[name='undefined']";
3
4
  const getUndefinedInitializationRemovalRange = (sourceCode, node) => {
@@ -7,7 +8,7 @@ const getUndefinedInitializationRemovalRange = (sourceCode, node) => {
7
8
  if (equalsToken === null) {
8
9
  return undefined;
9
10
  }
10
- let fixStartIndex = equalsToken.range[0];
11
+ let fixStartIndex = arrayFirst(equalsToken.range);
11
12
  const sourceText = sourceCode.text;
12
13
  while (fixStartIndex > 0) {
13
14
  const previousCharacter = sourceText.at(fixStartIndex - 1);
@@ -27,7 +28,7 @@ const rule = ruleCreator({
27
28
  return {
28
29
  [disallowedSelector]: (node) => {
29
30
  const removalRange = getUndefinedInitializationRemovalRange(sourceCode, node);
30
- if (removalRange === undefined) {
31
+ if (!isDefined(removalRange)) {
31
32
  return;
32
33
  }
33
34
  const fix = (fixer) => fixer.removeRange(removalRange);
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-initialization.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-initialization.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,kBAAkB,GACpB,iHAAiH,CAAC;AAEtH,MAAM,sCAAsC,GAAG,CAC3C,UAAyC,EACzC,IAAuB,EACc,EAAE;IACvC,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE;QAChD,MAAM,EAAE,CAAC,KAAK,EAAW,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG;KAClD,CAAC,CAAC;IAEH,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC;IAEnC,OAAO,aAAa,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,iBAAiB,GAAG,UAAU,CAAC,EAAE,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;QAC3D,IAAI,iBAAiB,KAAK,GAAG,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAC1D,MAAM;QACV,CAAC;QAED,aAAa,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,OAAO;YACH,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;gBACpD,MAAM,YAAY,GAAG,sCAAsC,CACvD,UAAU,EACV,IAAI,CACP,CAAC;gBAEF,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,GAA+B,CAAC,KAAK,EAAE,EAAE,CAC9C,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAEpC,OAAO,CAAC,MAAM,CAAC;oBACX,GAAG;oBACH,SAAS,EAAE,WAAW;oBACtB,IAAI;iBACP,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,mDAAmD;YAChE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,8FAA8F;SACtG;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE;YACN,SAAS,EAAE,0CAA0C;SACxD;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,+BAA+B;CACxC,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"no-unnecessary-initialization.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-initialization.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,kBAAkB,GACpB,iHAAiH,CAAC;AAEtH,MAAM,sCAAsC,GAAG,CAC3C,UAAyC,EACzC,IAAuB,EACc,EAAE;IACvC,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE;QAChD,MAAM,EAAE,CAAC,KAAK,EAAW,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG;KAClD,CAAC,CAAC;IAEH,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC;IAEnC,OAAO,aAAa,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,iBAAiB,GAAG,UAAU,CAAC,EAAE,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;QAC3D,IAAI,iBAAiB,KAAK,GAAG,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAC1D,MAAM;QACV,CAAC;QAED,aAAa,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,OAAO;YACH,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;gBACpD,MAAM,YAAY,GAAG,sCAAsC,CACvD,UAAU,EACV,IAAI,CACP,CAAC;gBAEF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC3B,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,GAA+B,CAAC,KAAK,EAAE,EAAE,CAC9C,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;gBAEpC,OAAO,CAAC,MAAM,CAAC;oBACX,GAAG;oBACH,SAAS,EAAE,WAAW;oBACtB,IAAI;iBACP,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,mDAAmD;YAChE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,8FAA8F;SACtG;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE;YACN,SAAS,EAAE,0CAA0C;SACxD;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,+BAA+B;CACxC,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-template-literal.d.ts","sourceRoot":"","sources":["../../src/rules/no-unnecessary-template-literal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAa3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgD5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"no-unnecessary-template-literal.d.ts","sourceRoot":"","sources":["../../src/rules/no-unnecessary-template-literal.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAa3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgD5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,7 +1,8 @@
1
+ import { arrayFirst } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  const selector = "TemplateLiteral[expressions.length=0] > TemplateElement";
3
- const toSafeStringLiteralText = (templateLiteral) => JSON.stringify(templateLiteral.quasis[0]?.value.cooked ??
4
- templateLiteral.quasis[0]?.value.raw ??
4
+ const toSafeStringLiteralText = (templateLiteral) => JSON.stringify(arrayFirst(templateLiteral.quasis)?.value.cooked ??
5
+ arrayFirst(templateLiteral.quasis)?.value.raw ??
5
6
  "");
6
7
  /**
7
8
  * Disallow template literals with no expressions.
@@ -1 +1 @@
1
- {"version":3,"file":"no-unnecessary-template-literal.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-template-literal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,QAAQ,GAAG,yDAAyD,CAAC;AAE3E,MAAM,uBAAuB,GAAG,CAC5B,eAA6C,EACvC,EAAE,CACR,IAAI,CAAC,SAAS,CACV,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM;IACnC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG;IACpC,EAAE,CACT,CAAC;AAEN;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClB,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;YAC1C,MAAM,eAAe,GACjB,IAAI,CAAC,IAAI,KAAK,iBAAiB;gBAC/B,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,iBAAiB;gBACnC,CAAC,CAAC,IAAI,CAAC,MAAM;gBACb,CAAC,CAAC,SAAS,CAAC;YAEpB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO;YACX,CAAC;YAED,OAAO,CAAC,MAAM,CAAC;gBACX,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACX,KAAK,CAAC,WAAW,CACb,eAAe,EACf,uBAAuB,CAAC,eAAe,CAAC,CAC3C;gBACL,SAAS,EAAE,WAAW;gBACtB,IAAI;aACP,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;IACF,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EACP,mEAAmE;YACvE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,gGAAgG;SACxG;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE;YACN,SAAS,EACL,sEAAsE;SAC7E;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,iCAAiC;CAC1C,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"no-unnecessary-template-literal.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-template-literal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,QAAQ,GAAG,yDAAyD,CAAC;AAE3E,MAAM,uBAAuB,GAAG,CAC5B,eAA6C,EACvC,EAAE,CACR,IAAI,CAAC,SAAS,CACV,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM;IAC5C,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG;IAC7C,EAAE,CACT,CAAC;AAEN;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClB,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAuB,EAAQ,EAAE;YAC1C,MAAM,eAAe,GACjB,IAAI,CAAC,IAAI,KAAK,iBAAiB;gBAC/B,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,iBAAiB;gBACnC,CAAC,CAAC,IAAI,CAAC,MAAM;gBACb,CAAC,CAAC,SAAS,CAAC;YAEpB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO;YACX,CAAC;YAED,OAAO,CAAC,MAAM,CAAC;gBACX,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CACX,KAAK,CAAC,WAAW,CACb,eAAe,EACf,uBAAuB,CAAC,eAAe,CAAC,CAC3C;gBACL,SAAS,EAAE,WAAW;gBACtB,IAAI;aACP,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;IACF,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EACP,mEAAmE;YACvE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,gGAAgG;SACxG;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE;YACN,SAAS,EACL,sEAAsE;SAC7E;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,iCAAiC;CAC1C,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"only-export-name.d.ts","sourceRoot":"","sources":["../../src/rules/only-export-name.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACtC,CAAC;CACL,CAAC;AA+CF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAkF5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"only-export-name.d.ts","sourceRoot":"","sources":["../../src/rules/only-export-name.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,WAAW,CAAC;AAE9B,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACtC,CAAC;CACL,CAAC;AA+CF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAkF5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { setHas } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  const getExportedNames = (node) => {
3
4
  if (node.specifiers.length > 0) {
@@ -37,7 +38,7 @@ const rule = ruleCreator({
37
38
  const allowedNames = new Set(options.names ?? ["default"]);
38
39
  return {
39
40
  ExportDefaultDeclaration: (node) => {
40
- if (allowedNames.has("default")) {
41
+ if (setHas(allowedNames, "default")) {
41
42
  return;
42
43
  }
43
44
  context.report({
@@ -50,17 +51,19 @@ const rule = ruleCreator({
50
51
  },
51
52
  ExportNamedDeclaration: (node) => {
52
53
  const exportedNames = getExportedNames(node);
53
- if (exportedNames.every((name) => allowedNames.has(name))) {
54
+ for (const name of exportedNames) {
55
+ if (setHas(allowedNames, name)) {
56
+ continue;
57
+ }
58
+ context.report({
59
+ data: {
60
+ name,
61
+ },
62
+ messageId: "forbidden",
63
+ node,
64
+ });
54
65
  return;
55
66
  }
56
- const disallowedName = exportedNames.find((name) => !allowedNames.has(name));
57
- context.report({
58
- data: {
59
- name: disallowedName ?? "<unknown>",
60
- },
61
- messageId: "forbidden",
62
- node,
63
- });
64
67
  },
65
68
  };
66
69
  },
@@ -1 +1 @@
1
- {"version":3,"file":"only-export-name.js","sourceRoot":"","sources":["../../src/rules/only-export-name.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"only-export-name.js","sourceRoot":"","sources":["../../src/rules/only-export-name.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prefer-interface.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-interface.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;AAEvC,KAAK,WAAW,GAAG,QAAQ,CAAC;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC,CAAC;AA2JH;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAmJ5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAgB3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"prefer-interface.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-interface.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;AAEvC,KAAK,WAAW,GAAG,QAAQ,CAAC;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC,CAAC;AAiKH;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAmJ5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAgB3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { getConstrainedTypeAtLocation } from "@typescript-eslint/type-utils";
2
2
  import { ESLintUtils } from "@typescript-eslint/utils";
3
+ import { arrayFirst, arrayJoin, isDefined } from "ts-extras";
3
4
  import * as tsutils from "tsutils";
4
5
  import { ruleCreator } from "../_internal/rule-creator.js";
5
6
  import { createReplacementRuleInfo, withDeprecatedRuleLifecycle, } from "../_internal/rule-deprecation.js";
@@ -16,9 +17,7 @@ const createTypeLiteralFixText = (sourceCode, typeAliasDeclaration, typeLiteralN
16
17
  const createFunctionTypeFixText = (sourceCode, typeAliasDeclaration, functionTypeNode) => {
17
18
  const aliasTypeParameters = formatTypeParameters(sourceCode, typeAliasDeclaration.typeParameters);
18
19
  const functionTypeParameters = formatTypeParameters(sourceCode, functionTypeNode.typeParameters);
19
- const parametersText = functionTypeNode.params
20
- .map((parameter) => sourceCode.getText(parameter))
21
- .join(", ");
20
+ const parametersText = arrayJoin(functionTypeNode.params.map((parameter) => sourceCode.getText(parameter)), ", ");
22
21
  const returnTypeText = functionTypeNode.returnType === undefined
23
22
  ? "void"
24
23
  : sourceCode.getText(functionTypeNode.returnType.typeAnnotation);
@@ -26,9 +25,7 @@ const createFunctionTypeFixText = (sourceCode, typeAliasDeclaration, functionTyp
26
25
  };
27
26
  const createIntersectionFixText = (sourceCode, typeAliasDeclaration, literalNode, referenceNodes) => {
28
27
  const aliasTypeParameters = formatTypeParameters(sourceCode, typeAliasDeclaration.typeParameters);
29
- const baseTypesText = referenceNodes
30
- .map((referenceNode) => sourceCode.getText(referenceNode))
31
- .join(", ");
28
+ const baseTypesText = arrayJoin(referenceNodes.map((referenceNode) => sourceCode.getText(referenceNode)), ", ");
32
29
  const extendsClause = baseTypesText.length > 0 ? ` extends ${baseTypesText}` : "";
33
30
  const bodyText = literalNode === undefined ? "{}" : sourceCode.getText(literalNode);
34
31
  return `interface ${typeAliasDeclaration.id.name}${aliasTypeParameters}${extendsClause} ${bodyText}`;
@@ -111,10 +108,10 @@ const rule = ruleCreator({
111
108
  return;
112
109
  }
113
110
  const conversion = canSafelyConvertIntersection(intersectionTypeNode, typedParserServices);
114
- if (conversion === undefined) {
111
+ if (!isDefined(conversion)) {
115
112
  return;
116
113
  }
117
- reportTypeAlias(context, typeAliasDeclaration, createIntersectionFixText(sourceCode, typeAliasDeclaration, conversion.literals[0], conversion.references));
114
+ reportTypeAlias(context, typeAliasDeclaration, createIntersectionFixText(sourceCode, typeAliasDeclaration, arrayFirst(conversion.literals), conversion.references));
118
115
  },
119
116
  "TSTypeAliasDeclaration > TSTypeLiteral": (typeLiteralNode) => {
120
117
  const typeAliasDeclaration = getTypeAliasDeclarationParent(typeLiteralNode.parent);
@@ -1 +1 @@
1
- {"version":3,"file":"prefer-interface.js","sourceRoot":"","sources":["../../src/rules/prefer-interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prefer-interface.js","sourceRoot":"","sources":["../../src/rules/prefer-interface.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"require-jsdoc.d.ts","sourceRoot":"","sources":["../../src/rules/require-jsdoc.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,SAAS,GAAG,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7E,KAAK,UAAU,GAAG,SAAS,CAAC;AAE5B,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACzC,CAAC;CACL,CAAC;AAuCF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAwG5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAe3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"require-jsdoc.d.ts","sourceRoot":"","sources":["../../src/rules/require-jsdoc.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,SAAS,GAAG,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7E,KAAK,UAAU,GAAG,SAAS,CAAC;AAE5B,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;KACzC,CAAC;CACL,CAAC;AAuCF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAwG5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAe3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { arrayLast, setHas } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  import { createReplacementRuleInfo, withDeprecatedRuleLifecycle, } from "../_internal/rule-deprecation.js";
3
4
  const defaultKinds = [
@@ -9,8 +10,7 @@ const defaultKinds = [
9
10
  ];
10
11
  const hasJSDocComment = (sourceCode, node) => {
11
12
  const comments = sourceCode.getCommentsBefore(node);
12
- // eslint-disable-next-line unicorn/prefer-at -- Node >=16.0 support baseline
13
- const comment = comments[comments.length - 1];
13
+ const comment = arrayLast(comments);
14
14
  return comment?.type === "Block" && comment.value.startsWith("*");
15
15
  };
16
16
  const reportMissingJSDoc = (context, node) => {
@@ -30,19 +30,19 @@ const rule = ruleCreator({
30
30
  const kinds = new Set(options.kinds ?? defaultKinds);
31
31
  return {
32
32
  ClassDeclaration: (node) => {
33
- if (!kinds.has("class") || node.id === null) {
33
+ if (!setHas(kinds, "class") || node.id === null) {
34
34
  return;
35
35
  }
36
36
  reportMissingJSDoc(context, node);
37
37
  },
38
38
  FunctionDeclaration: (node) => {
39
- if (!kinds.has("function") || node.id === null) {
39
+ if (!setHas(kinds, "function") || node.id === null) {
40
40
  return;
41
41
  }
42
42
  reportMissingJSDoc(context, node);
43
43
  },
44
44
  MethodDefinition: (node) => {
45
- if (!kinds.has("method") ||
45
+ if (!setHas(kinds, "method") ||
46
46
  node.kind === "constructor" ||
47
47
  node.key.type !== "Identifier") {
48
48
  return;
@@ -50,7 +50,7 @@ const rule = ruleCreator({
50
50
  reportMissingJSDoc(context, node);
51
51
  },
52
52
  "TSTypeAliasDeclaration, TSInterfaceDeclaration": (node) => {
53
- if (!kinds.has("type")) {
53
+ if (!setHas(kinds, "type")) {
54
54
  return;
55
55
  }
56
56
  if (node.type === "TSInterfaceDeclaration" ||
@@ -59,7 +59,7 @@ const rule = ruleCreator({
59
59
  }
60
60
  },
61
61
  VariableDeclarator: (node) => {
62
- if (!kinds.has("arrow-function") ||
62
+ if (!setHas(kinds, "arrow-function") ||
63
63
  node.id.type !== "Identifier" ||
64
64
  node.init?.type !== "ArrowFunctionExpression" ||
65
65
  node.parent.type !== "VariableDeclaration" ||
@@ -1 +1 @@
1
- {"version":3,"file":"require-jsdoc.js","sourceRoot":"","sources":["../../src/rules/require-jsdoc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"require-jsdoc.js","sourceRoot":"","sources":["../../src/rules/require-jsdoc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"require-syntax.d.ts","sourceRoot":"","sources":["../../src/rules/require-syntax.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAEH,KAAK,oBAAoB,EAC5B,MAAM,kCAAkC,CAAC;AAE1C,KAAK,UAAU,GAAG,eAAe,GAAG,SAAS,CAAC;AAE9C,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;KACxD,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAiH5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"require-syntax.d.ts","sourceRoot":"","sources":["../../src/rules/require-syntax.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAEH,KAAK,oBAAoB,EAC5B,MAAM,kCAAkC,CAAC;AAE1C,KAAK,UAAU,GAAG,eAAe,GAAG,SAAS,CAAC;AAE9C,KAAK,OAAO,GAAG,SAAS;IACpB,QAAQ,CAAC;QACL,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;KACxD,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAiH5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { isDefined } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  import { normalizeSyntaxSelector, } from "../_internal/syntax-selectors.js";
3
4
  /**
@@ -25,7 +26,7 @@ const rule = ruleCreator({
25
26
  if (count > 0) {
26
27
  continue;
27
28
  }
28
- if (entry.message !== undefined) {
29
+ if (isDefined(entry.message)) {
29
30
  context.report({
30
31
  data: {
31
32
  message: entry.message,
@@ -1 +1 @@
1
- {"version":3,"file":"require-syntax.js","sourceRoot":"","sources":["../../src/rules/require-syntax.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"require-syntax.js","sourceRoot":"","sources":["../../src/rules/require-syntax.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sort-array.d.ts","sourceRoot":"","sources":["../../src/rules/sort-array.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAmC3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"sort-array.d.ts","sourceRoot":"","sources":["../../src/rules/sort-array.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAoC3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAgE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types -- ESLint fixer API callback signatures. */
2
+ import { arrayAt, arrayFirst, arrayJoin, isDefined, isPresent, } from "ts-extras";
2
3
  import { ruleCreator } from "../_internal/rule-creator.js";
3
4
  const getSortableValue = (element) => {
4
5
  if (element.type === "Literal") {
@@ -7,14 +8,14 @@ const getSortableValue = (element) => {
7
8
  return undefined;
8
9
  };
9
10
  const buildFix = (sourceCode, node, sorted) => (fixer) => {
10
- const [first, last] = [node.elements[0], node.elements.at(-1)];
11
- if (first === null ||
12
- first === undefined ||
13
- last === null ||
14
- last === undefined) {
11
+ const [first, last] = [
12
+ arrayFirst(node.elements),
13
+ arrayAt(node.elements, -1),
14
+ ];
15
+ if (!isPresent(first) || !isPresent(last)) {
15
16
  return fixer.replaceText(node, sourceCode.getText(node));
16
17
  }
17
- return fixer.replaceTextRange([first.range[0], last.range[1]], sorted.map((element) => sourceCode.getText(element)).join(", "));
18
+ return fixer.replaceTextRange([arrayFirst(first.range), last.range[1]], arrayJoin(sorted.map((element) => sourceCode.getText(element)), ", "));
18
19
  };
19
20
  /**
20
21
  * Enforce alphabetical sorting for literal array elements.
@@ -32,7 +33,7 @@ const rule = ruleCreator({
32
33
  return;
33
34
  }
34
35
  const sortKeys = elements.map((element) => getSortableValue(element));
35
- if (sortKeys.includes(undefined)) {
36
+ if (sortKeys.some((sortKey) => !isDefined(sortKey))) {
36
37
  return;
37
38
  }
38
39
  // eslint-disable-next-line unicorn/no-array-sort -- Node >=16.0 support baseline
@@ -1 +1 @@
1
- {"version":3,"file":"sort-array.js","sourceRoot":"","sources":["../../src/rules/sort-array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-array.js","sourceRoot":"","sources":["../../src/rules/sort-array.ts"],"names":[],"mappings":"AAAA,gHAAgH;AAIhH,OAAO,EACH,OAAO,EACP,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,MAAM,gBAAgB,GAAG,CACrB,OAAmD,EACjC,EAAE;IACpB,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,QAAQ,GACV,CACI,UAAyC,EACzC,IAAkC,EAClC,MAAqD,EAC3B,EAAE,CAChC,CAAC,KAAK,EAAoB,EAAE;IACxB,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG;QAClB,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;KAC7B,CAAC;IACF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,KAAK,CAAC,gBAAgB,CACzB,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACxC,SAAS,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EACpD,IAAI,CACP,CACJ,CAAC;AACN,CAAC,CAAC;AAEN;;GAEG;AACH,MAAM,IAAI,GAAwD,WAAW,CAG3E;IACE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClB,eAAe,EAAE,CAAC,IAAkC,EAAQ,EAAE;YAC1D,IAAI,QAAQ,GAAkD,EAAE,CAAC;YACjE,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACnB,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACtC,CAAC;YACL,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACtC,gBAAgB,CAAC,OAAO,CAAC,CAC5B,CAAC;YACF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBAClD,OAAO;YACX,CAAC;YAED,iFAAiF;YACjF,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACvC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,aAAa,CACrC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAC5B,CACJ,CAAC;YACF,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAC5B,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,CAChD,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACZ,OAAO;YACX,CAAC;YAED,OAAO,CAAC,MAAM,CAAC;gBACX,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC;gBAC/C,SAAS,EAAE,kBAAkB;gBAC7B,IAAI;aACP,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;IACF,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,UAAU,EAAE,KAAK;YACjB,WAAW,EACP,0DAA0D;YAC9D,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,2EAA2E;SACnF;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE;YACN,gBAAgB,EACZ,yDAAyD;SAChE;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,YAAY;CACrB,CAAC,CAAC;AAEH,eAAe,IAAI,CAAC;AAEpB,qIAAqI"}
@@ -1 +1 @@
1
- {"version":3,"file":"sort-class-members.d.ts","sourceRoot":"","sources":["../../src/rules/sort-class-members.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,UAAU,GAAG,uBAAuB,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAgB3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CA8D5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAsB3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"sort-class-members.d.ts","sourceRoot":"","sources":["../../src/rules/sort-class-members.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAM3D,KAAK,UAAU,GAAG,uBAAuB,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAgB3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CA8D5D,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,cAAc,EAAE,OAAO,IAsB3B,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { isDefined } from "ts-extras";
1
2
  import { ruleCreator } from "../_internal/rule-creator.js";
2
3
  import { createReplacementRuleInfo, withDeprecatedRuleLifecycle, } from "../_internal/rule-deprecation.js";
3
4
  const memberName = (member) => {
@@ -26,7 +27,7 @@ const rule = ruleCreator({
26
27
  let hasPreviousName = false;
27
28
  for (const member of members) {
28
29
  const currentName = memberName(member);
29
- if (currentName === undefined) {
30
+ if (!isDefined(currentName)) {
30
31
  continue;
31
32
  }
32
33
  if (hasPreviousName &&
@@ -1 +1 @@
1
- {"version":3,"file":"sort-class-members.js","sourceRoot":"","sources":["../../src/rules/sort-class-members.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-class-members.js","sourceRoot":"","sources":["../../src/rules/sort-class-members.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sort-export-specifiers.d.ts","sourceRoot":"","sources":["../../src/rules/sort-export-specifiers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,uBAAuB,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAuB3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CA0D5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"sort-export-specifiers.d.ts","sourceRoot":"","sources":["../../src/rules/sort-export-specifiers.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,uBAAuB,CAAC;AAE1C,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAyB3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CA0D5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,14 +1,14 @@
1
1
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types -- ESLint fixer API callback signatures. */
2
+ import { arrayFirst, arrayJoin, arrayLast } from "ts-extras";
2
3
  import { ruleCreator } from "../_internal/rule-creator.js";
3
4
  const toName = (specifier) => specifier.exported.type === "Identifier"
4
5
  ? specifier.exported.name
5
6
  : specifier.exported.value;
6
- const buildFix = (fixer, node, sourceCode, sorted) => fixer.replaceTextRange([
7
- node.specifiers[0]?.range[0] ?? node.range[0],
8
- // eslint-disable-next-line unicorn/prefer-at -- Node >=16.0 support baseline
9
- node.specifiers[node.specifiers.length - 1]?.range[1] ??
10
- node.range[1],
11
- ], sorted.map((specifier) => sourceCode.getText(specifier)).join(", "));
7
+ const buildFix = (fixer, node, sourceCode, sorted) => {
8
+ const startRange = arrayFirst(node.specifiers)?.range ?? node.range;
9
+ const endRange = arrayLast(node.specifiers)?.range ?? node.range;
10
+ return fixer.replaceTextRange([arrayFirst(startRange), arrayLast(endRange)], arrayJoin(sorted.map((specifier) => sourceCode.getText(specifier)), ", "));
11
+ };
12
12
  /**
13
13
  * Enforce alphabetical sorting of named export specifiers.
14
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sort-export-specifiers.js","sourceRoot":"","sources":["../../src/rules/sort-export-specifiers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-export-specifiers.js","sourceRoot":"","sources":["../../src/rules/sort-export-specifiers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sort-keys.d.ts","sourceRoot":"","sources":["../../src/rules/sort-keys.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAyC3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAiE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"sort-keys.d.ts","sourceRoot":"","sources":["../../src/rules/sort-keys.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AA4C3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAiE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -1,4 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/prefer-readonly-parameter-types -- ESLint fixer API callback signatures. */
2
+ import { arrayFirst, arrayJoin, arrayLast, isDefined } from "ts-extras";
2
3
  import { ruleCreator } from "../_internal/rule-creator.js";
3
4
  const keyName = (property) => {
4
5
  if (property.key.type === "Identifier") {
@@ -11,15 +12,14 @@ const keyName = (property) => {
11
12
  return undefined;
12
13
  };
13
14
  const buildFix = (sourceCode, properties) => (fixer) => {
14
- const first = properties[0];
15
- // eslint-disable-next-line unicorn/prefer-at -- Node >=16.0 support baseline
16
- const last = properties[properties.length - 1];
15
+ const first = arrayFirst(properties);
16
+ const last = arrayLast(properties);
17
17
  if (first === undefined || last === undefined) {
18
18
  return fixer.insertTextAfterRange([0, 0], "");
19
19
  }
20
20
  // eslint-disable-next-line unicorn/no-array-sort -- Node >=16.0 support baseline
21
21
  const sorted = [...properties].sort((a, b) => (keyName(a) ?? "").localeCompare(keyName(b) ?? ""));
22
- return fixer.replaceTextRange([first.range[0], last.range[1]], sorted.map((property) => sourceCode.getText(property)).join(", "));
22
+ return fixer.replaceTextRange([arrayFirst(first.range), last.range[1]], arrayJoin(sorted.map((property) => sourceCode.getText(property)), ", "));
23
23
  };
24
24
  /**
25
25
  * Enforce alphabetical sorting of object literal keys.
@@ -42,7 +42,7 @@ const rule = ruleCreator({
42
42
  let hasPreviousName = false;
43
43
  for (const property of properties) {
44
44
  const currentName = keyName(property);
45
- if (currentName === undefined) {
45
+ if (!isDefined(currentName)) {
46
46
  return;
47
47
  }
48
48
  if (hasPreviousName &&
@@ -1 +1 @@
1
- {"version":3,"file":"sort-keys.js","sourceRoot":"","sources":["../../src/rules/sort-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-keys.js","sourceRoot":"","sources":["../../src/rules/sort-keys.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sort-top-comments.d.ts","sourceRoot":"","sources":["../../src/rules/sort-top-comments.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAe3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAuE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"sort-top-comments.d.ts","sourceRoot":"","sources":["../../src/rules/sort-top-comments.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,KAAK,UAAU,GAAG,kBAAkB,CAAC;AAErC,KAAK,OAAO,GAAG,SAAS,EAAE,CAAC;AAiB3B;;GAEG;AACH,QAAA,MAAM,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAsE5D,CAAC;AAEH,eAAe,IAAI,CAAC"}