@thethracian/oxlint-config 0.2.0 → 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 +13 -0
  2. package/README.md +125 -19
  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 +157 -95
  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 -120
  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 -458
  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 +198 -637
  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 +46 -24
  176. package/dist/rules/effect-rule-core.d.ts.map +1 -1
  177. package/dist/rules/effect-rule-core.js +263 -303
  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 -333
  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 +377 -297
  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 +124 -246
  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 -661
  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 +62 -7
  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 +3 -121
  252. package/dist/rules/plugin.d.ts.map +1 -1
  253. package/dist/rules/plugin.js +195 -201
  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 +404 -218
  274. package/dist/rules/require-function-doc.js.map +1 -1
  275. package/dist/rules/source-cache.d.ts +19 -0
  276. package/dist/rules/source-cache.d.ts.map +1 -0
  277. package/dist/rules/source-cache.js +63 -0
  278. package/dist/rules/source-cache.js.map +1 -0
  279. package/package.json +15 -10
@@ -5,5 +5,5 @@ export default function isPascalCase(name: string): boolean;
5
5
  /**
6
6
  * Convert a name to PascalCase.
7
7
  */
8
- export declare function toPascalCase(name: string): string;
8
+ export declare const toPascalCase: (name: string) => string;
9
9
  //# sourceMappingURL=pascal-case-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pascal-case-types.d.ts","sourceRoot":"","sources":["../../src/rules/pascal-case-types.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CA0B1D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAwCjD"}
1
+ {"version":3,"file":"pascal-case-types.d.ts","sourceRoot":"","sources":["../../src/rules/pascal-case-types.ts"],"names":[],"mappings":"AA0EA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAe1D;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAU3C,CAAC"}
@@ -1,7 +1,65 @@
1
- import { CHAR_CLASS, CLS_UPPER, CLS_LOWER } from './char-class.js';
1
+ /* -------------------------------------------------------------------------- */
2
+ /* PascalCase naming helpers for type-like declarations. */
3
+ /* -------------------------------------------------------------------------- */
4
+ import { CHAR_CLASS, CLS_LOWER, CLS_UPPER } from './char-class.js';
5
+ const CHAR_CODE_UNDERSCORE = 95;
2
6
  const isUp = (code) => (CHAR_CLASS[code] & CLS_UPPER) !== 0;
3
7
  const isLo = (code) => (CHAR_CLASS[code] & CLS_LOWER) !== 0;
4
8
  const isLt = (code) => (CHAR_CLASS[code] & (CLS_UPPER | CLS_LOWER)) !== 0;
9
+ const hasLowercaseLetter = (name) => {
10
+ for (let idx = 0; idx < name.length; idx++) {
11
+ if (isLo(name.charCodeAt(idx))) {
12
+ return true;
13
+ }
14
+ }
15
+ return false;
16
+ };
17
+ const alphaLetterCount = (name) => {
18
+ let count = 0;
19
+ for (let idx = 0; idx < name.length; idx++) {
20
+ if (isLt(name.charCodeAt(idx))) {
21
+ count++;
22
+ }
23
+ }
24
+ return count;
25
+ };
26
+ const nextSegmentStart = (name, start) => {
27
+ let segmentStart = start;
28
+ while (segmentStart < name.length && name.charCodeAt(segmentStart) === CHAR_CODE_UNDERSCORE) {
29
+ segmentStart++;
30
+ }
31
+ return segmentStart;
32
+ };
33
+ const nextSegmentEnd = (name, start) => {
34
+ let segmentEnd = start;
35
+ while (segmentEnd < name.length && name.charCodeAt(segmentEnd) !== CHAR_CODE_UNDERSCORE) {
36
+ segmentEnd++;
37
+ }
38
+ return segmentEnd;
39
+ };
40
+ const pascalSegment = (name, start, end) => name.charAt(start).toUpperCase() + name.slice(start + 1, end).toLowerCase();
41
+ const appendPascalSegments = (name, result, start) => {
42
+ let output = result;
43
+ let segStart = start;
44
+ while (segStart < name.length) {
45
+ segStart = nextSegmentStart(name, segStart);
46
+ if (segStart >= name.length) {
47
+ break;
48
+ }
49
+ const segEnd = nextSegmentEnd(name, segStart);
50
+ output += pascalSegment(name, segStart, segEnd);
51
+ segStart = segEnd + 1;
52
+ }
53
+ return output;
54
+ };
55
+ const underscoreNameToPascalCase = (name) => {
56
+ const start = nextSegmentStart(name, 0);
57
+ if (start >= name.length) {
58
+ return '';
59
+ }
60
+ const end = nextSegmentEnd(name, start);
61
+ return appendPascalSegments(name, pascalSegment(name, start, end), end + 1);
62
+ };
5
63
  /**
6
64
  * Check if a name follows PascalCase convention.
7
65
  */
@@ -13,62 +71,23 @@ export default function isPascalCase(name) {
13
71
  if (!isUp(name.charCodeAt(0))) {
14
72
  return false;
15
73
  }
16
- if (name.indexOf('_') !== -1) {
74
+ if (name.includes('_')) {
17
75
  return false;
18
76
  }
19
77
  // Must not be entirely uppercase (that's the constant convention).
20
78
  // Digits are fine — only check alphabetic characters.
21
- let alphaCount = 0;
22
- let allUpper = true;
23
- for (let idx = 0; idx < len; idx++) {
24
- const code = name.charCodeAt(idx);
25
- if (isLt(code)) {
26
- alphaCount++;
27
- if (isLo(code)) {
28
- allUpper = false;
29
- }
30
- }
31
- }
32
- return !(allUpper && alphaCount > 1);
79
+ return hasLowercaseLetter(name) || alphaLetterCount(name) <= 1;
33
80
  }
34
81
  /**
35
82
  * Convert a name to PascalCase.
36
83
  */
37
- export function toPascalCase(name) {
84
+ export const toPascalCase = (name) => {
38
85
  if (name.length === 0) {
39
86
  return '';
40
87
  }
41
- if (name.indexOf('_') !== -1) {
42
- let start = 0;
43
- while (start < name.length && name.charCodeAt(start) === 95) {
44
- start++;
45
- }
46
- if (start >= name.length) {
47
- return '';
48
- }
49
- let end = start;
50
- while (end < name.length && name.charCodeAt(end) !== 95) {
51
- end++;
52
- }
53
- let result = name.charAt(start).toUpperCase() + name.slice(start + 1, end).toLowerCase();
54
- let segStart = end + 1;
55
- while (segStart < name.length) {
56
- while (segStart < name.length && name.charCodeAt(segStart) === 95) {
57
- segStart++;
58
- }
59
- if (segStart >= name.length) {
60
- break;
61
- }
62
- let segEnd = segStart;
63
- while (segEnd < name.length && name.charCodeAt(segEnd) !== 95) {
64
- segEnd++;
65
- }
66
- result +=
67
- name.charAt(segStart).toUpperCase() + name.slice(segStart + 1, segEnd).toLowerCase();
68
- segStart = segEnd + 1;
69
- }
70
- return result;
88
+ if (name.includes('_')) {
89
+ return underscoreNameToPascalCase(name);
71
90
  }
72
91
  return name.charAt(0).toUpperCase() + name.slice(1);
73
- }
92
+ };
74
93
  //# sourceMappingURL=pascal-case-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pascal-case-types.js","sourceRoot":"","sources":["../../src/rules/pascal-case-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pascal-case-types.js","sourceRoot":"","sources":["../../src/rules/pascal-case-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ interface Fix {
2
+ range: [number, number];
3
+ text: string;
4
+ }
5
+ interface Fixer {
6
+ removeRange(range: [number, number]): Fix;
7
+ }
8
+ type FixFunction = (fixer: Fixer) => Fix;
9
+ interface ReportDescriptor {
10
+ fix?: FixFunction;
11
+ message: string;
12
+ node: object;
13
+ }
14
+ interface Context {
15
+ report: (descriptor: ReportDescriptor) => void;
16
+ filename?: string;
17
+ }
18
+ declare const noCommentedOutCodeRule: {
19
+ createOnce(context: Context): {
20
+ Program(node: object): void;
21
+ };
22
+ meta: {
23
+ fixable: string;
24
+ type: string;
25
+ };
26
+ } & {
27
+ create: (context: Context) => {
28
+ Program(node: object): void;
29
+ };
30
+ };
31
+ export default noCommentedOutCodeRule;
32
+ //# sourceMappingURL=plugin-commented-out-code-rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-commented-out-code-rule.d.ts","sourceRoot":"","sources":["../../src/rules/plugin-commented-out-code-rule.ts"],"names":[],"mappings":"AAOA,UAAU,GAAG;IACX,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,KAAK;IACb,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC;CAC3C;AAED,KAAK,WAAW,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC;AAEzC,UAAU,gBAAgB;IACxB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,OAAO;IACf,MAAM,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAqKD,QAAA,MAAM,sBAAsB;wBACN,OAAO;sBAET,MAAM,GAAG,IAAI;;;;;;;sBAFX,OAAO;sBAET,MAAM,GAAG,IAAI;;CAc/B,CAAC;AAEH,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,135 @@
1
+ /* -------------------------------------------------------------------------- */
2
+ /* Oxlint plugin rule for removing commented-out code. */
3
+ /* -------------------------------------------------------------------------- */
4
+ import { diagnosticMessage } from './diagnostic-guidance.js';
5
+ import isCommentedOutCode from './no-commented-out-code.js';
6
+ import { readCachedSource } from './source-cache.js';
7
+ const readSource = (context) => readCachedSource(context);
8
+ const removeRangeFix = (range) => (fixer) => fixer.removeRange(range);
9
+ const nextIndexInQuote = (char, quote, index) => {
10
+ if (char === '\\') {
11
+ return { index: index + 2, quote };
12
+ }
13
+ if (char === quote) {
14
+ return { index: index + 1, quote: '' };
15
+ }
16
+ return { index: index + 1, quote };
17
+ };
18
+ const quoteStart = (char) => {
19
+ if (char === "'" || char === '"' || char === '`') {
20
+ return char;
21
+ }
22
+ return undefined;
23
+ };
24
+ const commentStartAt = (source, index) => {
25
+ if (source[index] === '/' && source[index + 1] === '/') {
26
+ return { index, kind: 'line' };
27
+ }
28
+ if (source[index] === '/' && source[index + 1] === '*') {
29
+ return { index, kind: 'block' };
30
+ }
31
+ return undefined;
32
+ };
33
+ const nextCommentScanStep = (source, index, quote) => {
34
+ const char = source[index];
35
+ if (quote !== '') {
36
+ return nextIndexInQuote(char, quote, index);
37
+ }
38
+ const nextQuote = quoteStart(char);
39
+ if (nextQuote) {
40
+ return { index: index + 1, quote: nextQuote };
41
+ }
42
+ const commentStart = commentStartAt(source, index);
43
+ if (commentStart) {
44
+ return { commentStart, index, quote };
45
+ }
46
+ return { index: index + 1, quote };
47
+ };
48
+ const findNextCommentStart = (source, start) => {
49
+ let index = start;
50
+ let quote = '';
51
+ while (index < source.length) {
52
+ const step = nextCommentScanStep(source, index, quote);
53
+ if (step.commentStart) {
54
+ return step.commentStart;
55
+ }
56
+ ({ index, quote } = step);
57
+ }
58
+ return undefined;
59
+ };
60
+ const withCreateOnce = (rule) => Object.assign(rule, { create: rule.createOnce });
61
+ const rangeEndForComment = (bodyEnd, sourceLength, suffixLength) => {
62
+ if (bodyEnd === -1) {
63
+ return sourceLength;
64
+ }
65
+ return bodyEnd + suffixLength;
66
+ };
67
+ const nextSearchStart = (bodyEnd, sourceLength, suffixLength) => rangeEndForComment(bodyEnd, sourceLength, suffixLength);
68
+ const reportBlockCommentedOutCode = (context, node, source, start) => {
69
+ const bodyStart = start + 2;
70
+ const bodyEnd = source.indexOf('*/', bodyStart);
71
+ const commentEnd = rangeEndForComment(bodyEnd, source.length, 0);
72
+ if (isCommentedOutCode(source.slice(bodyStart, commentEnd))) {
73
+ context.report({
74
+ fix: removeRangeFix([start, rangeEndForComment(bodyEnd, source.length, 2)]),
75
+ message: diagnosticMessage({
76
+ example: 'const live = computeValue();',
77
+ fix: 'Delete the commented code. If it is still needed, restore it as live code with tests.',
78
+ summary: 'Commented-out code is dead code and wastes agent context.',
79
+ }),
80
+ node,
81
+ });
82
+ }
83
+ return nextSearchStart(bodyEnd, source.length, 2);
84
+ };
85
+ const reportLineCommentedOutCode = (context, node, source, start) => {
86
+ const bodyStart = start + 2;
87
+ const bodyEnd = source.indexOf('\n', bodyStart);
88
+ const commentEnd = rangeEndForComment(bodyEnd, source.length, 0);
89
+ if (isCommentedOutCode(source.slice(bodyStart, commentEnd))) {
90
+ context.report({
91
+ fix: removeRangeFix([start, rangeEndForComment(bodyEnd, source.length, 1)]),
92
+ message: diagnosticMessage({
93
+ example: 'const live = computeValue();',
94
+ fix: 'Delete the commented code. If it is still needed, restore it as live code with tests.',
95
+ summary: 'Commented-out code is dead code and wastes agent context.',
96
+ }),
97
+ node,
98
+ });
99
+ }
100
+ return nextSearchStart(bodyEnd, source.length, 1);
101
+ };
102
+ const reportCommentedOutCode = (context, node, source) => {
103
+ let searchStart = 0;
104
+ while (searchStart < source.length) {
105
+ const commentStart = findNextCommentStart(source, searchStart);
106
+ if (!commentStart) {
107
+ return;
108
+ }
109
+ if (commentStart.kind === 'block') {
110
+ searchStart = reportBlockCommentedOutCode(context, node, source, commentStart.index);
111
+ }
112
+ else {
113
+ searchStart = reportLineCommentedOutCode(context, node, source, commentStart.index);
114
+ }
115
+ }
116
+ };
117
+ const noCommentedOutCodeRule = withCreateOnce({
118
+ createOnce(context) {
119
+ return {
120
+ Program(node) {
121
+ const source = readSource(context);
122
+ if (!source) {
123
+ return;
124
+ }
125
+ reportCommentedOutCode(context, node, source);
126
+ },
127
+ };
128
+ },
129
+ meta: {
130
+ fixable: 'code',
131
+ type: 'problem',
132
+ },
133
+ });
134
+ export default noCommentedOutCodeRule;
135
+ //# sourceMappingURL=plugin-commented-out-code-rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-commented-out-code-rule.js","sourceRoot":"","sources":["../../src/rules/plugin-commented-out-code-rule.ts"],"names":[],"mappings":"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"}
@@ -1,122 +1,4 @@
1
- /**
2
- * Oxlint plugin for The Thracian custom rules.
3
- */
4
- interface NamedNode {
5
- id?: {
6
- name: string;
7
- } | null;
8
- key?: {
9
- name: string;
10
- };
11
- }
12
- type Context = {
13
- report: (descriptor: {
14
- message: string;
15
- node: object;
16
- }) => void;
17
- filename?: string;
18
- };
19
- interface DeclNode extends NamedNode {
20
- parent?: {
21
- kind: string;
22
- };
23
- init?: {
24
- type: string;
25
- value: unknown;
26
- };
27
- typeAnnotation?: {
28
- typeAnnotation: {
29
- type: string;
30
- };
31
- };
32
- accessibility?: string;
33
- type?: string;
34
- value?: {
35
- name: string;
36
- };
37
- }
38
- interface ImportNode {
39
- source?: {
40
- value: string;
41
- raw: string;
42
- } | null;
43
- arguments?: Array<{
44
- value: string;
45
- }>;
46
- callee?: {
47
- name: string;
48
- };
49
- }
50
- declare const plugin: {
51
- meta: {
52
- name: string;
53
- };
54
- rules: {
55
- 'no-commented-out-code': {
56
- create(context: Context): {
57
- Program(node: object): void;
58
- };
59
- };
60
- 'pascal-case-types': {
61
- create(context: Context): {
62
- ClassDeclaration(node: NamedNode): void;
63
- TSInterfaceDeclaration(node: NamedNode): void;
64
- TSTypeAliasDeclaration(node: NamedNode): void;
65
- TSEnumDeclaration(node: NamedNode): void;
66
- };
67
- };
68
- 'camel-case-identifiers': {
69
- create(context: Context): {
70
- VariableDeclarator(node: DeclNode): void;
71
- FunctionDeclaration(node: NamedNode): void;
72
- Parameter(node: DeclNode): void;
73
- MethodDefinition(node: NamedNode): void;
74
- PropertyDefinition(node: NamedNode): void;
75
- };
76
- };
77
- 'boolean-prefix': {
78
- create(context: Context): {
79
- VariableDeclarator(node: DeclNode): void;
80
- };
81
- };
82
- 'private-underscore': {
83
- create(context: Context): {
84
- PropertyDefinition(node: DeclNode): void;
85
- MethodDefinition(node: DeclNode): void;
86
- };
87
- };
88
- 'acronym-case': {
89
- create(context: Context): {
90
- VariableDeclarator(node: NamedNode): void;
91
- FunctionDeclaration(node: NamedNode): void;
92
- ClassDeclaration(node: NamedNode): void;
93
- MethodDefinition(node: NamedNode): void;
94
- PropertyDefinition(node: NamedNode): void;
95
- Parameter(node: DeclNode): void;
96
- };
97
- };
98
- 'max-import-depth': {
99
- create(context: Context): {
100
- ImportDeclaration(node: ImportNode): void;
101
- CallExpression(node: ImportNode): void;
102
- };
103
- };
104
- 'max-line-length': {
105
- create(context: Context): {
106
- Program(node: object): void;
107
- };
108
- };
109
- 'require-file-doc': {
110
- create(context: Context): {
111
- Program(node: object): void;
112
- };
113
- };
114
- 'require-function-doc': {
115
- create(context: Context): {
116
- Program(node: object): void;
117
- };
118
- };
119
- };
120
- };
121
- export default plugin;
1
+ /** @internal Oxlint-compatible JavaScript plugin containing The Thracian custom rules. */
2
+ declare const _default: import("@oxlint/plugins").Plugin;
3
+ export default _default;
122
4
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/rules/plugin.ts"],"names":[],"mappings":"AAcA;;GAEG;AAEH,UAAU,SAAS;IACjB,EAAE,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7B,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACxB;AAMD,KAAK,OAAO,GAAG;IACb,MAAM,EAAE,CAAC,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAiFF,UAAU,QAAS,SAAQ,SAAS;IAClC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IACxC,cAAc,CAAC,EAAE;QAAE,cAAc,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAwKD,UAAU,UAAU;IAClB,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B;AA8HD,QAAA,MAAM,MAAM;;;;;;4BA/XM,OAAO;8BAEL,MAAM;;;;4BA2CR,OAAO;uCASI,SAAS;6CAKH,SAAS;6CAKT,SAAS;wCAKd,SAAS;;;;4BAmBrB,OAAO;yCAEM,QAAQ;0CAsBP,SAAS;gCAQnB,QAAQ;uCAQD,SAAS;yCAQP,SAAS;;;;4BAatB,OAAO;yCAgBM,QAAQ;;;;4BAiBrB,OAAO;yCAEM,QAAQ;uCAQV,QAAQ;;;;4BAanB,OAAO;yCAaM,SAAS;0CAMR,SAAS;uCAKZ,SAAS;uCAKT,SAAS;yCAKP,SAAS;gCAKlB,QAAQ;;;;4BAgBZ,OAAO;wCAcK,UAAU;qCAKb,UAAU;;;;4BAenB,OAAO;8BAEL,MAAM;;;;4BAwBR,OAAO;8BAEL,MAAM;;;;4BA8BR,OAAO;8BAEL,MAAM;;;;CA+CzB,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/rules/plugin.ts"],"names":[],"mappings":"AA2dA,0FAA0F;;AAC1F,wBAA0C"}