@thethracian/oxlint-config 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +124 -18
  3. package/dist/codemod-fix/cli.d.ts +3 -0
  4. package/dist/codemod-fix/cli.d.ts.map +1 -0
  5. package/dist/codemod-fix/cli.js +22 -0
  6. package/dist/codemod-fix/cli.js.map +1 -0
  7. package/dist/codemod-fix/index.d.ts +44 -0
  8. package/dist/codemod-fix/index.d.ts.map +1 -0
  9. package/dist/codemod-fix/index.js +110 -0
  10. package/dist/codemod-fix/index.js.map +1 -0
  11. package/dist/codemods/arrow-body-style.d.ts +7 -0
  12. package/dist/codemods/arrow-body-style.d.ts.map +1 -0
  13. package/dist/codemods/arrow-body-style.js +106 -0
  14. package/dist/codemods/arrow-body-style.js.map +1 -0
  15. package/dist/codemods/comment-format.d.ts +24 -0
  16. package/dist/codemods/comment-format.d.ts.map +1 -0
  17. package/dist/codemods/comment-format.js +100 -0
  18. package/dist/codemods/comment-format.js.map +1 -0
  19. package/dist/codemods/explicit-return-types.d.ts +7 -0
  20. package/dist/codemods/explicit-return-types.d.ts.map +1 -0
  21. package/dist/codemods/explicit-return-types.js +350 -0
  22. package/dist/codemods/explicit-return-types.js.map +1 -0
  23. package/dist/codemods/format-file-header.d.ts +7 -0
  24. package/dist/codemods/format-file-header.d.ts.map +1 -0
  25. package/dist/codemods/format-file-header.js +163 -0
  26. package/dist/codemods/format-file-header.js.map +1 -0
  27. package/dist/codemods/format-jsdoc-comments.d.ts +7 -0
  28. package/dist/codemods/format-jsdoc-comments.d.ts.map +1 -0
  29. package/dist/codemods/format-jsdoc-comments.js +129 -0
  30. package/dist/codemods/format-jsdoc-comments.js.map +1 -0
  31. package/dist/codemods/function-declarations.d.ts +7 -0
  32. package/dist/codemods/function-declarations.d.ts.map +1 -0
  33. package/dist/codemods/function-declarations.js +202 -0
  34. package/dist/codemods/function-declarations.js.map +1 -0
  35. package/dist/codemods/inline-export-lists.d.ts +7 -0
  36. package/dist/codemods/inline-export-lists.d.ts.map +1 -0
  37. package/dist/codemods/inline-export-lists.js +168 -0
  38. package/dist/codemods/inline-export-lists.js.map +1 -0
  39. package/dist/codemods/internal-export-docs.d.ts +7 -0
  40. package/dist/codemods/internal-export-docs.d.ts.map +1 -0
  41. package/dist/codemods/internal-export-docs.js +93 -0
  42. package/dist/codemods/internal-export-docs.js.map +1 -0
  43. package/dist/codemods/no-ternary-branch-initializers.d.ts +14 -0
  44. package/dist/codemods/no-ternary-branch-initializers.d.ts.map +1 -0
  45. package/dist/codemods/no-ternary-branch-initializers.js +240 -0
  46. package/dist/codemods/no-ternary-branch-initializers.js.map +1 -0
  47. package/dist/codemods/no-ternary-variable-initializers.d.ts +14 -0
  48. package/dist/codemods/no-ternary-variable-initializers.d.ts.map +1 -0
  49. package/dist/codemods/no-ternary-variable-initializers.js +235 -0
  50. package/dist/codemods/no-ternary-variable-initializers.js.map +1 -0
  51. package/dist/codemods/no-ternary.d.ts +7 -0
  52. package/dist/codemods/no-ternary.d.ts.map +1 -0
  53. package/dist/codemods/no-ternary.js +215 -0
  54. package/dist/codemods/no-ternary.js.map +1 -0
  55. package/dist/codemods/rename-acronyms.d.ts +8 -0
  56. package/dist/codemods/rename-acronyms.d.ts.map +1 -0
  57. package/dist/codemods/rename-acronyms.js +193 -0
  58. package/dist/codemods/rename-acronyms.js.map +1 -0
  59. package/dist/codemods/run.d.ts +2 -0
  60. package/dist/codemods/run.d.ts.map +1 -0
  61. package/dist/codemods/run.js +14 -0
  62. package/dist/codemods/run.js.map +1 -0
  63. package/dist/codemods/sort-imports.d.ts +7 -0
  64. package/dist/codemods/sort-imports.d.ts.map +1 -0
  65. package/dist/codemods/sort-imports.js +235 -0
  66. package/dist/codemods/sort-imports.js.map +1 -0
  67. package/dist/index.d.ts +30 -96
  68. package/dist/index.d.ts.map +1 -1
  69. package/dist/index.js +156 -94
  70. package/dist/index.js.map +1 -1
  71. package/dist/rules/acronym-case.d.ts +7 -3
  72. package/dist/rules/acronym-case.d.ts.map +1 -1
  73. package/dist/rules/acronym-case.js +129 -118
  74. package/dist/rules/acronym-case.js.map +1 -1
  75. package/dist/rules/acronyms-1.d.ts +3 -0
  76. package/dist/rules/acronyms-1.d.ts.map +1 -0
  77. package/dist/rules/acronyms-1.js +407 -0
  78. package/dist/rules/acronyms-1.js.map +1 -0
  79. package/dist/rules/acronyms-2.d.ts +3 -0
  80. package/dist/rules/acronyms-2.d.ts.map +1 -0
  81. package/dist/rules/acronyms-2.js +407 -0
  82. package/dist/rules/acronyms-2.js.map +1 -0
  83. package/dist/rules/acronyms-3.d.ts +3 -0
  84. package/dist/rules/acronyms-3.d.ts.map +1 -0
  85. package/dist/rules/acronyms-3.js +407 -0
  86. package/dist/rules/acronyms-3.js.map +1 -0
  87. package/dist/rules/acronyms-4.d.ts +3 -0
  88. package/dist/rules/acronyms-4.d.ts.map +1 -0
  89. package/dist/rules/acronyms-4.js +377 -0
  90. package/dist/rules/acronyms-4.js.map +1 -0
  91. package/dist/rules/acronyms.d.ts +1 -8
  92. package/dist/rules/acronyms.d.ts.map +1 -1
  93. package/dist/rules/acronyms.js +14 -1578
  94. package/dist/rules/acronyms.js.map +1 -1
  95. package/dist/rules/boolean-prefix.d.ts +11 -2
  96. package/dist/rules/boolean-prefix.d.ts.map +1 -1
  97. package/dist/rules/boolean-prefix.js +95 -59
  98. package/dist/rules/boolean-prefix.js.map +1 -1
  99. package/dist/rules/camel-case-identifiers.d.ts +3 -4
  100. package/dist/rules/camel-case-identifiers.d.ts.map +1 -1
  101. package/dist/rules/camel-case-identifiers.js +59 -40
  102. package/dist/rules/camel-case-identifiers.js.map +1 -1
  103. package/dist/rules/char-class.d.ts +26 -13
  104. package/dist/rules/char-class.d.ts.map +1 -1
  105. package/dist/rules/char-class.js +56 -24
  106. package/dist/rules/char-class.js.map +1 -1
  107. package/dist/rules/diagnostic-guidance.d.ts +91 -0
  108. package/dist/rules/diagnostic-guidance.d.ts.map +1 -0
  109. package/dist/rules/diagnostic-guidance.js +243 -0
  110. package/dist/rules/diagnostic-guidance.js.map +1 -0
  111. package/dist/rules/effect-default-ast.d.ts +89 -0
  112. package/dist/rules/effect-default-ast.d.ts.map +1 -0
  113. package/dist/rules/effect-default-ast.js +208 -0
  114. package/dist/rules/effect-default-ast.js.map +1 -0
  115. package/dist/rules/effect-default-compat-rules.d.ts +76 -0
  116. package/dist/rules/effect-default-compat-rules.d.ts.map +1 -0
  117. package/dist/rules/effect-default-compat-rules.js +270 -0
  118. package/dist/rules/effect-default-compat-rules.js.map +1 -0
  119. package/dist/rules/effect-default-env-rules.d.ts +60 -0
  120. package/dist/rules/effect-default-env-rules.d.ts.map +1 -0
  121. package/dist/rules/effect-default-env-rules.js +259 -0
  122. package/dist/rules/effect-default-env-rules.js.map +1 -0
  123. package/dist/rules/effect-default-fiber-helpers.d.ts +13 -0
  124. package/dist/rules/effect-default-fiber-helpers.d.ts.map +1 -0
  125. package/dist/rules/effect-default-fiber-helpers.js +76 -0
  126. package/dist/rules/effect-default-fiber-helpers.js.map +1 -0
  127. package/dist/rules/effect-default-floating-helpers.d.ts +7 -0
  128. package/dist/rules/effect-default-floating-helpers.d.ts.map +1 -0
  129. package/dist/rules/effect-default-floating-helpers.js +113 -0
  130. package/dist/rules/effect-default-floating-helpers.js.map +1 -0
  131. package/dist/rules/effect-default-helpers.d.ts +8 -32
  132. package/dist/rules/effect-default-helpers.d.ts.map +1 -1
  133. package/dist/rules/effect-default-helpers.js +11 -535
  134. package/dist/rules/effect-default-helpers.js.map +1 -1
  135. package/dist/rules/effect-default-resource-helpers.d.ts +18 -4
  136. package/dist/rules/effect-default-resource-helpers.d.ts.map +1 -1
  137. package/dist/rules/effect-default-resource-helpers.js +30 -13
  138. package/dist/rules/effect-default-resource-helpers.js.map +1 -1
  139. package/dist/rules/effect-default-safety-helpers.d.ts +43 -0
  140. package/dist/rules/effect-default-safety-helpers.d.ts.map +1 -0
  141. package/dist/rules/effect-default-safety-helpers.js +126 -0
  142. package/dist/rules/effect-default-safety-helpers.js.map +1 -0
  143. package/dist/rules/effect-default-scan-helpers.d.ts +43 -0
  144. package/dist/rules/effect-default-scan-helpers.d.ts.map +1 -0
  145. package/dist/rules/effect-default-scan-helpers.js +141 -0
  146. package/dist/rules/effect-default-scan-helpers.js.map +1 -0
  147. package/dist/rules/effect-default-schema-helpers.d.ts +37 -0
  148. package/dist/rules/effect-default-schema-helpers.d.ts.map +1 -0
  149. package/dist/rules/effect-default-schema-helpers.js +104 -0
  150. package/dist/rules/effect-default-schema-helpers.js.map +1 -0
  151. package/dist/rules/effect-default-test-helpers.d.ts +18 -4
  152. package/dist/rules/effect-default-test-helpers.d.ts.map +1 -1
  153. package/dist/rules/effect-default-test-helpers.js +41 -20
  154. package/dist/rules/effect-default-test-helpers.js.map +1 -1
  155. package/dist/rules/effect-default-workflow-helpers.d.ts +91 -0
  156. package/dist/rules/effect-default-workflow-helpers.d.ts.map +1 -0
  157. package/dist/rules/effect-default-workflow-helpers.js +247 -0
  158. package/dist/rules/effect-default-workflow-helpers.js.map +1 -0
  159. package/dist/rules/effect-default.d.ts +1 -1
  160. package/dist/rules/effect-default.d.ts.map +1 -1
  161. package/dist/rules/effect-default.js +105 -680
  162. package/dist/rules/effect-default.js.map +1 -1
  163. package/dist/rules/effect-exported-declarations.d.ts +19 -0
  164. package/dist/rules/effect-exported-declarations.d.ts.map +1 -0
  165. package/dist/rules/effect-exported-declarations.js +237 -0
  166. package/dist/rules/effect-exported-declarations.js.map +1 -0
  167. package/dist/rules/effect-path-options.d.ts +49 -11
  168. package/dist/rules/effect-path-options.d.ts.map +1 -1
  169. package/dist/rules/effect-path-options.js +85 -52
  170. package/dist/rules/effect-path-options.js.map +1 -1
  171. package/dist/rules/effect-rule-aliases.d.ts +55 -0
  172. package/dist/rules/effect-rule-aliases.d.ts.map +1 -0
  173. package/dist/rules/effect-rule-aliases.js +278 -0
  174. package/dist/rules/effect-rule-aliases.js.map +1 -0
  175. package/dist/rules/effect-rule-core.d.ts +38 -24
  176. package/dist/rules/effect-rule-core.d.ts.map +1 -1
  177. package/dist/rules/effect-rule-core.js +157 -344
  178. package/dist/rules/effect-rule-core.js.map +1 -1
  179. package/dist/rules/effect-rule-names.d.ts +12 -3
  180. package/dist/rules/effect-rule-names.d.ts.map +1 -1
  181. package/dist/rules/effect-rule-names.js +15 -3
  182. package/dist/rules/effect-rule-names.js.map +1 -1
  183. package/dist/rules/effect-source-comments.d.ts +7 -0
  184. package/dist/rules/effect-source-comments.d.ts.map +1 -0
  185. package/dist/rules/effect-source-comments.js +227 -0
  186. package/dist/rules/effect-source-comments.js.map +1 -0
  187. package/dist/rules/effect-source-helpers.d.ts +4 -9
  188. package/dist/rules/effect-source-helpers.d.ts.map +1 -1
  189. package/dist/rules/effect-source-helpers.js +7 -358
  190. package/dist/rules/effect-source-helpers.js.map +1 -1
  191. package/dist/rules/effect-source-navigation.d.ts +25 -0
  192. package/dist/rules/effect-source-navigation.d.ts.map +1 -0
  193. package/dist/rules/effect-source-navigation.js +244 -0
  194. package/dist/rules/effect-source-navigation.js.map +1 -0
  195. package/dist/rules/effect-source-scan.d.ts +30 -7
  196. package/dist/rules/effect-source-scan.d.ts.map +1 -1
  197. package/dist/rules/effect-source-scan.js +372 -300
  198. package/dist/rules/effect-source-scan.js.map +1 -1
  199. package/dist/rules/effect-strict-ast-specs.d.ts +8 -0
  200. package/dist/rules/effect-strict-ast-specs.d.ts.map +1 -0
  201. package/dist/rules/effect-strict-ast-specs.js +166 -0
  202. package/dist/rules/effect-strict-ast-specs.js.map +1 -0
  203. package/dist/rules/effect-strict-boundary-helpers.d.ts +25 -0
  204. package/dist/rules/effect-strict-boundary-helpers.d.ts.map +1 -0
  205. package/dist/rules/effect-strict-boundary-helpers.js +127 -0
  206. package/dist/rules/effect-strict-boundary-helpers.js.map +1 -0
  207. package/dist/rules/effect-strict-core-specs.d.ts +8 -0
  208. package/dist/rules/effect-strict-core-specs.d.ts.map +1 -0
  209. package/dist/rules/effect-strict-core-specs.js +334 -0
  210. package/dist/rules/effect-strict-core-specs.js.map +1 -0
  211. package/dist/rules/effect-strict-external-helpers.d.ts +25 -0
  212. package/dist/rules/effect-strict-external-helpers.d.ts.map +1 -0
  213. package/dist/rules/effect-strict-external-helpers.js +87 -0
  214. package/dist/rules/effect-strict-external-helpers.js.map +1 -0
  215. package/dist/rules/effect-strict-helpers.d.ts +75 -33
  216. package/dist/rules/effect-strict-helpers.d.ts.map +1 -1
  217. package/dist/rules/effect-strict-helpers.js +93 -384
  218. package/dist/rules/effect-strict-helpers.js.map +1 -1
  219. package/dist/rules/effect-strict-internals.d.ts +198 -0
  220. package/dist/rules/effect-strict-internals.d.ts.map +1 -0
  221. package/dist/rules/effect-strict-internals.js +477 -0
  222. package/dist/rules/effect-strict-internals.js.map +1 -0
  223. package/dist/rules/effect-strict-segment-helpers.d.ts +79 -0
  224. package/dist/rules/effect-strict-segment-helpers.d.ts.map +1 -0
  225. package/dist/rules/effect-strict-segment-helpers.js +308 -0
  226. package/dist/rules/effect-strict-segment-helpers.js.map +1 -0
  227. package/dist/rules/effect-strict.d.ts +1 -1
  228. package/dist/rules/effect-strict.d.ts.map +1 -1
  229. package/dist/rules/effect-strict.js +10 -725
  230. package/dist/rules/effect-strict.js.map +1 -1
  231. package/dist/rules/max-import-depth.d.ts +2 -2
  232. package/dist/rules/max-import-depth.d.ts.map +1 -1
  233. package/dist/rules/max-import-depth.js +52 -17
  234. package/dist/rules/max-import-depth.js.map +1 -1
  235. package/dist/rules/max-line-length.d.ts +9 -2
  236. package/dist/rules/max-line-length.d.ts.map +1 -1
  237. package/dist/rules/max-line-length.js +52 -15
  238. package/dist/rules/max-line-length.js.map +1 -1
  239. package/dist/rules/no-commented-out-code.d.ts +3 -7
  240. package/dist/rules/no-commented-out-code.d.ts.map +1 -1
  241. package/dist/rules/no-commented-out-code.js +157 -102
  242. package/dist/rules/no-commented-out-code.js.map +1 -1
  243. package/dist/rules/pascal-case-types.d.ts +1 -1
  244. package/dist/rules/pascal-case-types.d.ts.map +1 -1
  245. package/dist/rules/pascal-case-types.js +65 -46
  246. package/dist/rules/pascal-case-types.js.map +1 -1
  247. package/dist/rules/plugin-commented-out-code-rule.d.ts +32 -0
  248. package/dist/rules/plugin-commented-out-code-rule.d.ts.map +1 -0
  249. package/dist/rules/plugin-commented-out-code-rule.js +135 -0
  250. package/dist/rules/plugin-commented-out-code-rule.js.map +1 -0
  251. package/dist/rules/plugin.d.ts +1 -0
  252. package/dist/rules/plugin.d.ts.map +1 -1
  253. package/dist/rules/plugin.js +164 -154
  254. package/dist/rules/plugin.js.map +1 -1
  255. package/dist/rules/private-underscore.d.ts +1 -1
  256. package/dist/rules/private-underscore.d.ts.map +1 -1
  257. package/dist/rules/private-underscore.js +11 -4
  258. package/dist/rules/private-underscore.js.map +1 -1
  259. package/dist/rules/require-file-doc.d.ts +5 -6
  260. package/dist/rules/require-file-doc.d.ts.map +1 -1
  261. package/dist/rules/require-file-doc.js +127 -78
  262. package/dist/rules/require-file-doc.js.map +1 -1
  263. package/dist/rules/require-function-doc-ignored-text.d.ts +7 -0
  264. package/dist/rules/require-function-doc-ignored-text.d.ts.map +1 -0
  265. package/dist/rules/require-function-doc-ignored-text.js +67 -0
  266. package/dist/rules/require-function-doc-ignored-text.js.map +1 -0
  267. package/dist/rules/require-function-doc-local-exports.d.ts +7 -0
  268. package/dist/rules/require-function-doc-local-exports.d.ts.map +1 -0
  269. package/dist/rules/require-function-doc-local-exports.js +114 -0
  270. package/dist/rules/require-function-doc-local-exports.js.map +1 -0
  271. package/dist/rules/require-function-doc.d.ts +3 -18
  272. package/dist/rules/require-function-doc.d.ts.map +1 -1
  273. package/dist/rules/require-function-doc.js +396 -221
  274. package/dist/rules/require-function-doc.js.map +1 -1
  275. package/dist/rules/source-cache.d.ts +13 -5
  276. package/dist/rules/source-cache.d.ts.map +1 -1
  277. package/dist/rules/source-cache.js +35 -22
  278. package/dist/rules/source-cache.js.map +1 -1
  279. package/package.json +10 -2
@@ -1,87 +1,59 @@
1
- import { eslintCompatPlugin } from '@oxlint/plugins';
2
- import isCommentedOutCode from './no-commented-out-code.js';
3
- import isPascalCase, { toPascalCase } from './pascal-case-types.js';
4
- import { isCamelCase, isUpperCase, toCamelCase } from './camel-case-identifiers.js';
5
- import hasBooleanPrefix, { suggestBooleanName } from './boolean-prefix.js';
6
- import hasLeadingUnderscore, { suggestPrivateName } from './private-underscore.js';
1
+ /* -------------------------------------------------------------------------- */
2
+ /* Oxlint JavaScript plugin entry for The Thracian custom rules. */
3
+ /* -------------------------------------------------------------------------- */
4
+ import { acronymDiagnosticMessage, booleanDiagnosticMessage, constantDiagnosticMessage, fileDocDiagnosticMessage, functionDocDiagnosticMessage, importDepthDiagnosticMessage, jsExtensionDiagnosticMessage, lineLengthDiagnosticMessage, localExportListDiagnosticMessage, privateMemberDiagnosticMessage, renameDiagnosticMessage, typeDiagnosticMessage, } from './diagnostic-guidance.js';
7
5
  import findMisCasedAcronyms, { fixAcronymCase } from './acronym-case.js';
8
- import findLongLines from './max-line-length.js';
6
+ import hasLeadingUnderscore, { suggestPrivateName } from './private-underscore.js';
7
+ import { isCamelCase, isUpperCase, toCamelCase } from './camel-case-identifiers.js';
8
+ import isPascalCase, { toPascalCase } from './pascal-case-types.js';
9
9
  import countImportDepth from './max-import-depth.js';
10
+ import effectDefaultRules from './effect-default.js';
11
+ import effectStrictRules from './effect-strict.js';
12
+ import { eslintCompatPlugin } from '@oxlint/plugins';
13
+ import findLongLines from './max-line-length.js';
14
+ import hasBooleanPrefix from './boolean-prefix.js';
10
15
  import hasRequiredFileDoc from './require-file-doc.js';
11
16
  import hasRequiredFunctionDocs from './require-function-doc.js';
17
+ import noCommentedOutCodeRule from './plugin-commented-out-code-rule.js';
12
18
  import { readCachedSource } from './source-cache.js';
13
- import effectDefaultRules from './effect-default.js';
14
- import effectStrictRules from './effect-strict.js';
15
- function getIdentifierName(node) {
16
- return typeof node?.name === 'string' ? node.name : undefined;
17
- }
18
- function readSource(context) {
19
- return readCachedSource(context);
20
- }
21
- function withCreateOnce(rule) {
22
- return Object.assign(rule, { create: rule.createOnce });
23
- }
24
- function reportCommentedOutCode(context, node, source) {
25
- let searchStart = 0;
26
- while (searchStart < source.length) {
27
- const lineCommentStart = source.indexOf('//', searchStart);
28
- const blockCommentStart = source.indexOf('/*', searchStart);
29
- if (lineCommentStart === -1 && blockCommentStart === -1) {
30
- return;
31
- }
32
- if (blockCommentStart !== -1 &&
33
- (lineCommentStart === -1 || blockCommentStart < lineCommentStart)) {
34
- const bodyStart = blockCommentStart + 2;
35
- const bodyEnd = source.indexOf('*/', bodyStart);
36
- const commentEnd = bodyEnd === -1 ? source.length : bodyEnd;
37
- if (isCommentedOutCode(source.slice(bodyStart, commentEnd))) {
38
- context.report({
39
- message: 'Remove this commented-out code instead of leaving it dead.',
40
- node,
41
- });
42
- }
43
- searchStart = bodyEnd === -1 ? source.length : bodyEnd + 2;
44
- continue;
45
- }
46
- const bodyStart = lineCommentStart + 2;
47
- const bodyEnd = source.indexOf('\n', bodyStart);
48
- const commentEnd = bodyEnd === -1 ? source.length : bodyEnd;
49
- if (isCommentedOutCode(source.slice(bodyStart, commentEnd))) {
50
- context.report({
51
- message: 'Remove this commented-out code instead of leaving it dead.',
52
- node,
53
- });
54
- }
55
- searchStart = bodyEnd === -1 ? source.length : bodyEnd + 1;
19
+ const getIdentifierName = (node) => {
20
+ if (typeof node?.name === 'string') {
21
+ return node.name;
56
22
  }
57
- }
58
- const noCommentedOutCodeRule = withCreateOnce({
59
- createOnce(context) {
60
- return {
61
- Program(node) {
62
- const source = readSource(context);
63
- if (!source) {
64
- return;
65
- }
66
- reportCommentedOutCode(context, node, source);
67
- },
68
- };
69
- },
70
- });
23
+ return undefined;
24
+ };
25
+ const readSource = (context) => readCachedSource(context);
26
+ const isBooleanVar = (node) => {
27
+ if (node.typeAnnotation &&
28
+ node.typeAnnotation.typeAnnotation &&
29
+ node.typeAnnotation.typeAnnotation.type === 'TSBooleanKeyword') {
30
+ return true;
31
+ }
32
+ if (node.init && node.init.type === 'Literal' && typeof node.init.value === 'boolean') {
33
+ return true;
34
+ }
35
+ return false;
36
+ };
37
+ const withCreateOnce = (rule) => Object.assign(rule, { create: rule.createOnce });
71
38
  const pascalCaseTypesRule = withCreateOnce({
72
39
  createOnce(context) {
73
- function reportType(kind, name, node) {
40
+ const reportType = (kind, name, node) => {
74
41
  context.report({
75
- message: `Rename ${kind} from '${name}' to '${toPascalCase(name)}' (PascalCase required for types).`,
42
+ message: typeDiagnosticMessage(kind, name, toPascalCase(name)),
76
43
  node,
77
44
  });
78
- }
45
+ };
79
46
  return {
80
47
  ClassDeclaration(node) {
81
48
  if (node.id && !isPascalCase(node.id.name)) {
82
49
  reportType('class', node.id.name, node);
83
50
  }
84
51
  },
52
+ TSEnumDeclaration(node) {
53
+ if (node.id && !isPascalCase(node.id.name)) {
54
+ reportType('enum', node.id.name, node);
55
+ }
56
+ },
85
57
  TSInterfaceDeclaration(node) {
86
58
  if (node.id && !isPascalCase(node.id.name)) {
87
59
  reportType('interface', node.id.name, node);
@@ -92,60 +64,32 @@ const pascalCaseTypesRule = withCreateOnce({
92
64
  reportType('type', node.id.name, node);
93
65
  }
94
66
  },
95
- TSEnumDeclaration(node) {
96
- if (node.id && !isPascalCase(node.id.name)) {
97
- reportType('enum', node.id.name, node);
98
- }
99
- },
100
67
  };
101
68
  },
102
69
  });
103
70
  const camelCaseIdentifiersRule = withCreateOnce({
104
71
  createOnce(context) {
105
72
  return {
106
- VariableDeclarator(node) {
107
- const name = getIdentifierName(node.id);
108
- if (!name) {
109
- return;
110
- }
111
- const isConst = node.parent && node.parent.kind === 'const';
112
- if (isConst) {
113
- if (!isCamelCase(name) && !isUpperCase(name)) {
114
- context.report({
115
- message: `Rename constant '${name}' to '${toCamelCase(name)}' for camelCase, or '${name.toUpperCase()}' for UPPER_CASE convention.`,
116
- node,
117
- });
118
- }
119
- }
120
- else {
121
- if (!isCamelCase(name)) {
122
- context.report({
123
- message: `Rename variable '${name}' to '${toCamelCase(name)}' (camelCase required).`,
124
- node,
125
- });
126
- }
127
- }
128
- },
129
73
  FunctionDeclaration(node) {
130
74
  if (node.id && !isCamelCase(node.id.name)) {
131
75
  context.report({
132
- message: `Rename function '${node.id.name}' to '${toCamelCase(node.id.name)}' (camelCase required).`,
76
+ message: renameDiagnosticMessage('function', node.id.name, toCamelCase(node.id.name)),
133
77
  node,
134
78
  });
135
79
  }
136
80
  },
137
- Parameter(node) {
138
- if (node.type === 'Identifier' && node.value && !isCamelCase(node.value.name)) {
81
+ MethodDefinition(node) {
82
+ if (node.key && !isCamelCase(node.key.name)) {
139
83
  context.report({
140
- message: `Rename parameter '${node.value.name}' to '${toCamelCase(node.value.name)}' (camelCase required).`,
84
+ message: renameDiagnosticMessage('method', node.key.name, toCamelCase(node.key.name)),
141
85
  node,
142
86
  });
143
87
  }
144
88
  },
145
- MethodDefinition(node) {
146
- if (node.key && !isCamelCase(node.key.name)) {
89
+ Parameter(node) {
90
+ if (node.type === 'Identifier' && node.value && !isCamelCase(node.value.name)) {
147
91
  context.report({
148
- message: `Rename method '${node.key.name}' to '${toCamelCase(node.key.name)}' (camelCase required).`,
92
+ message: renameDiagnosticMessage('parameter', node.value.name, toCamelCase(node.value.name)),
149
93
  node,
150
94
  });
151
95
  }
@@ -153,27 +97,39 @@ const camelCaseIdentifiersRule = withCreateOnce({
153
97
  PropertyDefinition(node) {
154
98
  if (node.key && !isCamelCase(node.key.name)) {
155
99
  context.report({
156
- message: `Rename property '${node.key.name}' to '${toCamelCase(node.key.name)}' (camelCase required).`,
100
+ message: renameDiagnosticMessage('property', node.key.name, toCamelCase(node.key.name)),
157
101
  node,
158
102
  });
159
103
  }
160
104
  },
105
+ VariableDeclarator(node) {
106
+ const name = getIdentifierName(node.id);
107
+ if (!name) {
108
+ return;
109
+ }
110
+ const isConst = node.parent && node.parent.kind === 'const';
111
+ if (isConst) {
112
+ if (!isCamelCase(name) && !isUpperCase(name)) {
113
+ context.report({
114
+ message: constantDiagnosticMessage(name, toCamelCase(name)),
115
+ node,
116
+ });
117
+ }
118
+ }
119
+ else {
120
+ if (!isCamelCase(name)) {
121
+ context.report({
122
+ message: renameDiagnosticMessage('variable', name, toCamelCase(name)),
123
+ node,
124
+ });
125
+ }
126
+ }
127
+ },
161
128
  };
162
129
  },
163
130
  });
164
131
  const booleanPrefixRule = withCreateOnce({
165
132
  createOnce(context) {
166
- function isBooleanVar(node) {
167
- if (node.typeAnnotation &&
168
- node.typeAnnotation.typeAnnotation &&
169
- node.typeAnnotation.typeAnnotation.type === 'TSBooleanKeyword') {
170
- return true;
171
- }
172
- if (node.init && node.init.type === 'Literal' && typeof node.init.value === 'boolean') {
173
- return true;
174
- }
175
- return false;
176
- }
177
133
  return {
178
134
  VariableDeclarator(node) {
179
135
  const name = getIdentifierName(node.id);
@@ -182,7 +138,7 @@ const booleanPrefixRule = withCreateOnce({
182
138
  }
183
139
  if (isBooleanVar(node) && !hasBooleanPrefix(name)) {
184
140
  context.report({
185
- message: `Rename boolean '${name}' to '${suggestBooleanName(name)}' (is_/has_/should_ prefix required for boolean variables).`,
141
+ message: booleanDiagnosticMessage(name),
186
142
  node,
187
143
  });
188
144
  }
@@ -193,18 +149,20 @@ const booleanPrefixRule = withCreateOnce({
193
149
  const privateUnderscoreRule = withCreateOnce({
194
150
  createOnce(context) {
195
151
  return {
196
- PropertyDefinition(node) {
152
+ MethodDefinition(node) {
197
153
  if (node.key && node.accessibility === 'private' && !hasLeadingUnderscore(node.key.name)) {
154
+ const replacement = suggestPrivateName(node.key.name);
198
155
  context.report({
199
- message: `Rename private property '${node.key.name}' to '${suggestPrivateName(node.key.name)}' (leading underscore required for private members).`,
156
+ message: privateMemberDiagnosticMessage('method', node.key.name, replacement),
200
157
  node,
201
158
  });
202
159
  }
203
160
  },
204
- MethodDefinition(node) {
161
+ PropertyDefinition(node) {
205
162
  if (node.key && node.accessibility === 'private' && !hasLeadingUnderscore(node.key.name)) {
163
+ const replacement = suggestPrivateName(node.key.name);
206
164
  context.report({
207
- message: `Rename private method '${node.key.name}' to '${suggestPrivateName(node.key.name)}' (leading underscore required for private members).`,
165
+ message: privateMemberDiagnosticMessage('property', node.key.name, replacement),
208
166
  node,
209
167
  });
210
168
  }
@@ -214,29 +172,23 @@ const privateUnderscoreRule = withCreateOnce({
214
172
  });
215
173
  const acronymCaseRule = withCreateOnce({
216
174
  createOnce(context) {
217
- function checkAcronyms(name, node) {
175
+ const checkAcronyms = (name, node) => {
218
176
  const violations = findMisCasedAcronyms(name);
219
177
  if (violations.length > 0) {
220
- const listed = violations.map((acr) => `'${acr}'`).join(', ');
178
+ const replacement = fixAcronymCase(name);
221
179
  context.report({
222
- message: `Rename '${name}' to '${fixAcronymCase(name)}' acronym${violations.length > 1 ? 's' : ''} ${listed} must be uppercase.`,
180
+ message: acronymDiagnosticMessage(name, replacement, violations),
223
181
  node,
224
182
  });
225
183
  }
226
- }
184
+ };
227
185
  return {
228
- VariableDeclarator(node) {
229
- const name = getIdentifierName(node.id);
230
- if (name) {
231
- checkAcronyms(name, node);
232
- }
233
- },
234
- FunctionDeclaration(node) {
186
+ ClassDeclaration(node) {
235
187
  if (node.id) {
236
188
  checkAcronyms(node.id.name, node);
237
189
  }
238
190
  },
239
- ClassDeclaration(node) {
191
+ FunctionDeclaration(node) {
240
192
  if (node.id) {
241
193
  checkAcronyms(node.id.name, node);
242
194
  }
@@ -246,15 +198,64 @@ const acronymCaseRule = withCreateOnce({
246
198
  checkAcronyms(node.key.name, node);
247
199
  }
248
200
  },
201
+ Parameter(node) {
202
+ if (node.type === 'Identifier' && node.value) {
203
+ checkAcronyms(node.value.name, node);
204
+ }
205
+ },
249
206
  PropertyDefinition(node) {
250
207
  if (node.key) {
251
208
  checkAcronyms(node.key.name, node);
252
209
  }
253
210
  },
254
- Parameter(node) {
255
- if (node.type === 'Identifier' && node.value) {
256
- checkAcronyms(node.value.name, node);
211
+ VariableDeclarator(node) {
212
+ const name = getIdentifierName(node.id);
213
+ if (name) {
214
+ checkAcronyms(name, node);
215
+ }
216
+ },
217
+ };
218
+ },
219
+ });
220
+ const isJavaScriptSpecifier = (specifier) => typeof specifier === 'string' && specifier.endsWith('.js');
221
+ const reportJavaScriptSpecifier = (context, node, specifier) => {
222
+ context.report({
223
+ message: jsExtensionDiagnosticMessage(specifier),
224
+ node,
225
+ });
226
+ };
227
+ const noDynamicJSExtensionImportsRule = withCreateOnce({
228
+ createOnce(context) {
229
+ return {
230
+ CallExpression(node) {
231
+ if (node.callee?.name !== 'require') {
232
+ return;
233
+ }
234
+ const firstArgument = node.arguments?.[0]?.value;
235
+ if (isJavaScriptSpecifier(firstArgument)) {
236
+ reportJavaScriptSpecifier(context, node, firstArgument);
237
+ }
238
+ },
239
+ ImportExpression(node) {
240
+ const source = node.source?.value;
241
+ if (isJavaScriptSpecifier(source)) {
242
+ reportJavaScriptSpecifier(context, node, source);
243
+ }
244
+ },
245
+ };
246
+ },
247
+ });
248
+ const noLocalExportListRule = withCreateOnce({
249
+ createOnce(context) {
250
+ return {
251
+ ExportNamedDeclaration(node) {
252
+ if (node.source || node.declaration || !node.specifiers || node.specifiers.length === 0) {
253
+ return;
257
254
  }
255
+ context.report({
256
+ message: localExportListDiagnosticMessage(),
257
+ node,
258
+ });
258
259
  },
259
260
  };
260
261
  },
@@ -262,21 +263,16 @@ const acronymCaseRule = withCreateOnce({
262
263
  const maxImportDepthRule = withCreateOnce({
263
264
  createOnce(context) {
264
265
  const MAX_DEPTH = 4;
265
- function checkPath(importPath, node) {
266
+ const checkPath = (importPath, node) => {
266
267
  const depth = countImportDepth(importPath);
267
268
  if (depth > MAX_DEPTH) {
268
269
  context.report({
269
- message: `Import path depth ${depth} exceeds maximum of ${MAX_DEPTH} (found '${importPath}'). Use a flatter directory structure or path alias.`,
270
+ message: importDepthDiagnosticMessage(depth, MAX_DEPTH, importPath),
270
271
  node,
271
272
  });
272
273
  }
273
- }
274
+ };
274
275
  return {
275
- ImportDeclaration(node) {
276
- if (node.source?.value) {
277
- checkPath(node.source.value, node);
278
- }
279
- },
280
276
  CallExpression(node) {
281
277
  if (node.callee?.name === 'require' &&
282
278
  node.arguments &&
@@ -285,6 +281,11 @@ const maxImportDepthRule = withCreateOnce({
285
281
  checkPath(node.arguments[0].value, node);
286
282
  }
287
283
  },
284
+ ImportDeclaration(node) {
285
+ if (node.source?.value) {
286
+ checkPath(node.source.value, node);
287
+ }
288
+ },
288
289
  };
289
290
  },
290
291
  });
@@ -295,7 +296,7 @@ const maxLineLengthRule = withCreateOnce({
295
296
  const source = readSource(context);
296
297
  for (const violation of findLongLines(source)) {
297
298
  context.report({
298
- message: `Line ${violation.line} has ${violation.length} characters, exceeding the maximum of 150.`,
299
+ message: lineLengthDiagnosticMessage(violation.line, violation.length),
299
300
  node,
300
301
  });
301
302
  }
@@ -313,9 +314,7 @@ const requireFileDocRule = withCreateOnce({
313
314
  }
314
315
  if (!hasRequiredFileDoc(source)) {
315
316
  context.report({
316
- message: 'File must have a JSDoc header comment (' +
317
- '/** ... */)' +
318
- ' describing its purpose. Use // @internal to opt out for internal modules.',
317
+ message: fileDocDiagnosticMessage(),
319
318
  node,
320
319
  });
321
320
  }
@@ -333,9 +332,7 @@ const requireFunctionDocRule = withCreateOnce({
333
332
  }
334
333
  if (!hasRequiredFunctionDocs(source)) {
335
334
  context.report({
336
- message: 'Missing JSDoc on an exported declaration. Every public function, class, type, ' +
337
- 'interface, enum, and const must have a non-empty /** ... */ JSDoc comment with ' +
338
- 'a description of its purpose, parameters, return value, and error conditions.',
335
+ message: functionDocDiagnosticMessage(),
339
336
  node,
340
337
  });
341
338
  }
@@ -348,19 +345,32 @@ const plugin = {
348
345
  name: 'thethracian',
349
346
  },
350
347
  rules: {
351
- 'no-commented-out-code': noCommentedOutCodeRule,
352
- 'pascal-case-types': pascalCaseTypesRule,
353
- 'camel-case-identifiers': camelCaseIdentifiersRule,
354
- 'boolean-prefix': booleanPrefixRule,
355
- 'private-underscore': privateUnderscoreRule,
356
348
  'acronym-case': acronymCaseRule,
349
+ 'boolean-prefix': booleanPrefixRule,
350
+ 'camel-case-identifiers': camelCaseIdentifiersRule,
357
351
  'max-import-depth': maxImportDepthRule,
358
352
  'max-line-length': maxLineLengthRule,
353
+ 'no-commented-out-code': noCommentedOutCodeRule,
354
+ 'no-dynamic-js-extension-imports': noDynamicJSExtensionImportsRule,
355
+ 'no-local-export-list': noLocalExportListRule,
356
+ 'pascal-case-types': pascalCaseTypesRule,
357
+ 'private-underscore': privateUnderscoreRule,
359
358
  'require-file-doc': requireFileDocRule,
360
359
  'require-function-doc': requireFunctionDocRule,
361
360
  ...effectDefaultRules,
362
361
  ...effectStrictRules,
363
362
  },
364
363
  };
364
+ const isPlugin = (value) => {
365
+ if (typeof value !== 'object' || value === null) {
366
+ return false;
367
+ }
368
+ const rules = Reflect.get(value, 'rules');
369
+ return typeof rules === 'object' && rules !== null;
370
+ };
371
+ if (!isPlugin(plugin)) {
372
+ throw new TypeError('Invalid The Thracian Oxlint plugin shape.');
373
+ }
374
+ /** @internal Oxlint-compatible JavaScript plugin containing The Thracian custom rules. */
365
375
  export default eslintCompatPlugin(plugin);
366
376
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/rules/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/rules/plugin.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,5 @@ export default function hasLeadingUnderscore(name: string): boolean;
5
5
  /**
6
6
  * Suggest a private-underscore-prefixed name.
7
7
  */
8
- export declare function suggestPrivateName(name: string): string;
8
+ export declare const suggestPrivateName: (name: string) => string;
9
9
  //# sourceMappingURL=private-underscore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"private-underscore.d.ts","sourceRoot":"","sources":["../../src/rules/private-underscore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"private-underscore.d.ts","sourceRoot":"","sources":["../../src/rules/private-underscore.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,KAAG,MAKjD,CAAC"}
@@ -1,13 +1,20 @@
1
+ /* -------------------------------------------------------------------------- */
2
+ /* Private member naming helper for underscore-prefixed names. */
3
+ /* -------------------------------------------------------------------------- */
4
+ const CHAR_CODE_UNDERSCORE = 95;
1
5
  /**
2
6
  * Check if a name has a leading underscore (private member convention).
3
7
  */
4
8
  export default function hasLeadingUnderscore(name) {
5
- return name.length > 1 && name.charCodeAt(0) === 95;
9
+ return name.length > 1 && name.charCodeAt(0) === CHAR_CODE_UNDERSCORE;
6
10
  }
7
11
  /**
8
12
  * Suggest a private-underscore-prefixed name.
9
13
  */
10
- export function suggestPrivateName(name) {
11
- return name.length === 0 ? '_field' : `_${name}`;
12
- }
14
+ export const suggestPrivateName = (name) => {
15
+ if (name.length === 0) {
16
+ return '_field';
17
+ }
18
+ return `_${name}`;
19
+ };
13
20
  //# sourceMappingURL=private-underscore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"private-underscore.js","sourceRoot":"","sources":["../../src/rules/private-underscore.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAY;IACvD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"private-underscore.js","sourceRoot":"","sources":["../../src/rules/private-underscore.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAEhF,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAY;IACvD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE;IACzD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,IAAI,EAAE,CAAC;AACpB,CAAC,CAAC"}
@@ -1,12 +1,11 @@
1
1
  /**
2
- * Extract the JSDoc file header comment from source text.
3
- * Skips leading shebang lines and whitespace.
4
- * Returns the full JSDoc block or null.
2
+ * Extract the JSDoc file header comment from source text. Skips leading shebang lines and whitespace.
3
+ * Returns the full JSDoc block or undefined.
5
4
  */
6
- export declare function extractDocHeader(source: string): string | null;
5
+ export declare const extractDocHeader: (source: string) => string | undefined;
7
6
  /**
8
- * Returns true if the source file satisfies the file doc requirement.
9
- * Requires: JSDoc header, opt-out marker, or empty/whitespace-only.
7
+ * Returns true if the source file satisfies the file doc requirement. Requires: divider header,
8
+ * opt-out marker, or empty/whitespace-only.
10
9
  */
11
10
  export default function hasRequiredFileDoc(source: string): boolean;
12
11
  //# sourceMappingURL=require-file-doc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"require-file-doc.d.ts","sourceRoot":"","sources":["../../src/rules/require-file-doc.ts"],"names":[],"mappings":"AAYA;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA2C9D;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAsDlE"}
1
+ {"version":3,"file":"require-file-doc.d.ts","sourceRoot":"","sources":["../../src/rules/require-file-doc.ts"],"names":[],"mappings":"AA0IA;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,SAO1D,CAAC;AAiBF;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAWlE"}