@thethracian/oxlint-config 0.3.0 → 0.3.2

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 (205) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/codemods/arrow-body-style.d.ts.map +1 -1
  3. package/dist/codemods/arrow-body-style.js +29 -68
  4. package/dist/codemods/arrow-body-style.js.map +1 -1
  5. package/dist/codemods/comment-format.d.ts.map +1 -1
  6. package/dist/codemods/comment-format.js +22 -32
  7. package/dist/codemods/comment-format.js.map +1 -1
  8. package/dist/codemods/explicit-return-types.d.ts.map +1 -1
  9. package/dist/codemods/explicit-return-types.js +58 -167
  10. package/dist/codemods/explicit-return-types.js.map +1 -1
  11. package/dist/codemods/format-file-header.d.ts.map +1 -1
  12. package/dist/codemods/format-file-header.js +33 -72
  13. package/dist/codemods/format-file-header.js.map +1 -1
  14. package/dist/codemods/format-jsdoc-comments.d.ts.map +1 -1
  15. package/dist/codemods/format-jsdoc-comments.js +58 -66
  16. package/dist/codemods/format-jsdoc-comments.js.map +1 -1
  17. package/dist/codemods/function-declarations.d.ts.map +1 -1
  18. package/dist/codemods/function-declarations.js +45 -80
  19. package/dist/codemods/function-declarations.js.map +1 -1
  20. package/dist/codemods/inline-export-lists.d.ts.map +1 -1
  21. package/dist/codemods/inline-export-lists.js +60 -108
  22. package/dist/codemods/inline-export-lists.js.map +1 -1
  23. package/dist/codemods/internal-export-docs.d.ts.map +1 -1
  24. package/dist/codemods/internal-export-docs.js +21 -59
  25. package/dist/codemods/internal-export-docs.js.map +1 -1
  26. package/dist/codemods/no-ternary-branch-initializers.d.ts.map +1 -1
  27. package/dist/codemods/no-ternary-branch-initializers.js +72 -144
  28. package/dist/codemods/no-ternary-branch-initializers.js.map +1 -1
  29. package/dist/codemods/no-ternary-variable-initializers.d.ts.map +1 -1
  30. package/dist/codemods/no-ternary-variable-initializers.js +69 -152
  31. package/dist/codemods/no-ternary-variable-initializers.js.map +1 -1
  32. package/dist/codemods/no-ternary.d.ts.map +1 -1
  33. package/dist/codemods/no-ternary.js +44 -108
  34. package/dist/codemods/no-ternary.js.map +1 -1
  35. package/dist/codemods/rename-acronyms.d.ts.map +1 -1
  36. package/dist/codemods/rename-acronyms.js +73 -99
  37. package/dist/codemods/rename-acronyms.js.map +1 -1
  38. package/dist/codemods/run.d.ts.map +1 -1
  39. package/dist/codemods/run.js +15 -7
  40. package/dist/codemods/run.js.map +1 -1
  41. package/dist/codemods/sort-imports.d.ts.map +1 -1
  42. package/dist/codemods/sort-imports.js +52 -94
  43. package/dist/codemods/sort-imports.js.map +1 -1
  44. package/dist/rules/acronym-case.d.ts.map +1 -1
  45. package/dist/rules/acronym-case.js +68 -141
  46. package/dist/rules/acronym-case.js.map +1 -1
  47. package/dist/rules/acronyms-1.d.ts +1 -1
  48. package/dist/rules/acronyms-1.d.ts.map +1 -1
  49. package/dist/rules/acronyms-1.js +2 -402
  50. package/dist/rules/acronyms-1.js.map +1 -1
  51. package/dist/rules/acronyms-2.d.ts +1 -1
  52. package/dist/rules/acronyms-2.d.ts.map +1 -1
  53. package/dist/rules/acronyms-2.js +2 -402
  54. package/dist/rules/acronyms-2.js.map +1 -1
  55. package/dist/rules/acronyms-3.d.ts +1 -1
  56. package/dist/rules/acronyms-3.d.ts.map +1 -1
  57. package/dist/rules/acronyms-3.js +2 -402
  58. package/dist/rules/acronyms-3.js.map +1 -1
  59. package/dist/rules/acronyms-4.d.ts +1 -1
  60. package/dist/rules/acronyms-4.d.ts.map +1 -1
  61. package/dist/rules/acronyms-4.js +2 -372
  62. package/dist/rules/acronyms-4.js.map +1 -1
  63. package/dist/rules/acronyms.d.ts.map +1 -1
  64. package/dist/rules/acronyms.js +3 -6
  65. package/dist/rules/acronyms.js.map +1 -1
  66. package/dist/rules/boolean-prefix.d.ts.map +1 -1
  67. package/dist/rules/boolean-prefix.js +25 -71
  68. package/dist/rules/boolean-prefix.js.map +1 -1
  69. package/dist/rules/camel-case-identifiers.d.ts.map +1 -1
  70. package/dist/rules/camel-case-identifiers.js +15 -54
  71. package/dist/rules/camel-case-identifiers.js.map +1 -1
  72. package/dist/rules/char-class.d.ts +1 -1
  73. package/dist/rules/char-class.d.ts.map +1 -1
  74. package/dist/rules/char-class.js +16 -16
  75. package/dist/rules/char-class.js.map +1 -1
  76. package/dist/rules/diagnostic-guidance.d.ts.map +1 -1
  77. package/dist/rules/diagnostic-guidance.js +11 -20
  78. package/dist/rules/diagnostic-guidance.js.map +1 -1
  79. package/dist/rules/effect-default-ast.d.ts.map +1 -1
  80. package/dist/rules/effect-default-ast.js +35 -116
  81. package/dist/rules/effect-default-ast.js.map +1 -1
  82. package/dist/rules/effect-default-compat-rules.d.ts.map +1 -1
  83. package/dist/rules/effect-default-compat-rules.js +41 -79
  84. package/dist/rules/effect-default-compat-rules.js.map +1 -1
  85. package/dist/rules/effect-default-env-rules.d.ts.map +1 -1
  86. package/dist/rules/effect-default-env-rules.js +23 -29
  87. package/dist/rules/effect-default-env-rules.js.map +1 -1
  88. package/dist/rules/effect-default-fiber-helpers.d.ts.map +1 -1
  89. package/dist/rules/effect-default-fiber-helpers.js +12 -26
  90. package/dist/rules/effect-default-fiber-helpers.js.map +1 -1
  91. package/dist/rules/effect-default-floating-helpers.d.ts.map +1 -1
  92. package/dist/rules/effect-default-floating-helpers.js +59 -67
  93. package/dist/rules/effect-default-floating-helpers.js.map +1 -1
  94. package/dist/rules/effect-default-resource-helpers.d.ts.map +1 -1
  95. package/dist/rules/effect-default-resource-helpers.js +36 -44
  96. package/dist/rules/effect-default-resource-helpers.js.map +1 -1
  97. package/dist/rules/effect-default-safety-helpers.d.ts.map +1 -1
  98. package/dist/rules/effect-default-safety-helpers.js +29 -68
  99. package/dist/rules/effect-default-safety-helpers.js.map +1 -1
  100. package/dist/rules/effect-default-scan-helpers.d.ts.map +1 -1
  101. package/dist/rules/effect-default-scan-helpers.js +51 -70
  102. package/dist/rules/effect-default-scan-helpers.js.map +1 -1
  103. package/dist/rules/effect-default-schema-helpers.d.ts.map +1 -1
  104. package/dist/rules/effect-default-schema-helpers.js +32 -43
  105. package/dist/rules/effect-default-schema-helpers.js.map +1 -1
  106. package/dist/rules/effect-default-test-helpers.d.ts.map +1 -1
  107. package/dist/rules/effect-default-test-helpers.js +13 -25
  108. package/dist/rules/effect-default-test-helpers.js.map +1 -1
  109. package/dist/rules/effect-default-workflow-helpers.d.ts.map +1 -1
  110. package/dist/rules/effect-default-workflow-helpers.js +53 -113
  111. package/dist/rules/effect-default-workflow-helpers.js.map +1 -1
  112. package/dist/rules/effect-exported-declarations.d.ts.map +1 -1
  113. package/dist/rules/effect-exported-declarations.js +90 -177
  114. package/dist/rules/effect-exported-declarations.js.map +1 -1
  115. package/dist/rules/effect-path-options.d.ts.map +1 -1
  116. package/dist/rules/effect-path-options.js +48 -58
  117. package/dist/rules/effect-path-options.js.map +1 -1
  118. package/dist/rules/effect-rule-aliases.d.ts.map +1 -1
  119. package/dist/rules/effect-rule-aliases.js +43 -101
  120. package/dist/rules/effect-rule-aliases.js.map +1 -1
  121. package/dist/rules/effect-rule-core.d.ts.map +1 -1
  122. package/dist/rules/effect-rule-core.js +42 -78
  123. package/dist/rules/effect-rule-core.js.map +1 -1
  124. package/dist/rules/effect-rule-names.d.ts +2 -2
  125. package/dist/rules/effect-rule-names.d.ts.map +1 -1
  126. package/dist/rules/effect-rule-names.js +3 -145
  127. package/dist/rules/effect-rule-names.js.map +1 -1
  128. package/dist/rules/effect-source-comments.d.ts.map +1 -1
  129. package/dist/rules/effect-source-comments.js +112 -167
  130. package/dist/rules/effect-source-comments.js.map +1 -1
  131. package/dist/rules/effect-source-navigation.d.ts.map +1 -1
  132. package/dist/rules/effect-source-navigation.js +103 -185
  133. package/dist/rules/effect-source-navigation.js.map +1 -1
  134. package/dist/rules/effect-source-regex-scan.d.ts +13 -0
  135. package/dist/rules/effect-source-regex-scan.d.ts.map +1 -0
  136. package/dist/rules/effect-source-regex-scan.js +126 -0
  137. package/dist/rules/effect-source-regex-scan.js.map +1 -0
  138. package/dist/rules/effect-source-scan.d.ts +1 -12
  139. package/dist/rules/effect-source-scan.d.ts.map +1 -1
  140. package/dist/rules/effect-source-scan.js +93 -239
  141. package/dist/rules/effect-source-scan.js.map +1 -1
  142. package/dist/rules/effect-strict-ast-specs.d.ts.map +1 -1
  143. package/dist/rules/effect-strict-ast-specs.js +11 -8
  144. package/dist/rules/effect-strict-ast-specs.js.map +1 -1
  145. package/dist/rules/effect-strict-boundary-helpers.d.ts.map +1 -1
  146. package/dist/rules/effect-strict-boundary-helpers.js +51 -87
  147. package/dist/rules/effect-strict-boundary-helpers.js.map +1 -1
  148. package/dist/rules/effect-strict-core-specs.d.ts.map +1 -1
  149. package/dist/rules/effect-strict-core-specs.js +8 -6
  150. package/dist/rules/effect-strict-core-specs.js.map +1 -1
  151. package/dist/rules/effect-strict-external-helpers.d.ts.map +1 -1
  152. package/dist/rules/effect-strict-external-helpers.js +20 -40
  153. package/dist/rules/effect-strict-external-helpers.js.map +1 -1
  154. package/dist/rules/effect-strict-helpers.d.ts.map +1 -1
  155. package/dist/rules/effect-strict-helpers.js +47 -72
  156. package/dist/rules/effect-strict-helpers.js.map +1 -1
  157. package/dist/rules/effect-strict-internals.d.ts.map +1 -1
  158. package/dist/rules/effect-strict-internals.js +46 -101
  159. package/dist/rules/effect-strict-internals.js.map +1 -1
  160. package/dist/rules/effect-strict-segment-helpers.d.ts.map +1 -1
  161. package/dist/rules/effect-strict-segment-helpers.js +103 -174
  162. package/dist/rules/effect-strict-segment-helpers.js.map +1 -1
  163. package/dist/rules/effect-strict.d.ts.map +1 -1
  164. package/dist/rules/effect-strict.js +3 -2
  165. package/dist/rules/effect-strict.js.map +1 -1
  166. package/dist/rules/max-import-depth.d.ts +2 -1
  167. package/dist/rules/max-import-depth.d.ts.map +1 -1
  168. package/dist/rules/max-import-depth.js +13 -15
  169. package/dist/rules/max-import-depth.js.map +1 -1
  170. package/dist/rules/max-line-length.d.ts.map +1 -1
  171. package/dist/rules/max-line-length.js +26 -39
  172. package/dist/rules/max-line-length.js.map +1 -1
  173. package/dist/rules/no-commented-out-code.d.ts.map +1 -1
  174. package/dist/rules/no-commented-out-code.js +53 -156
  175. package/dist/rules/no-commented-out-code.js.map +1 -1
  176. package/dist/rules/pascal-case-types.d.ts.map +1 -1
  177. package/dist/rules/pascal-case-types.js +16 -70
  178. package/dist/rules/pascal-case-types.js.map +1 -1
  179. package/dist/rules/plugin-commented-out-code-rule.d.ts.map +1 -1
  180. package/dist/rules/plugin-commented-out-code-rule.js +50 -77
  181. package/dist/rules/plugin-commented-out-code-rule.js.map +1 -1
  182. package/dist/rules/plugin.d.ts +5 -1
  183. package/dist/rules/plugin.d.ts.map +1 -1
  184. package/dist/rules/plugin.js +19 -36
  185. package/dist/rules/plugin.js.map +1 -1
  186. package/dist/rules/private-underscore.d.ts +3 -1
  187. package/dist/rules/private-underscore.d.ts.map +1 -1
  188. package/dist/rules/private-underscore.js +7 -9
  189. package/dist/rules/private-underscore.js.map +1 -1
  190. package/dist/rules/require-file-doc.d.ts.map +1 -1
  191. package/dist/rules/require-file-doc.js +28 -94
  192. package/dist/rules/require-file-doc.js.map +1 -1
  193. package/dist/rules/require-function-doc-ignored-text.d.ts.map +1 -1
  194. package/dist/rules/require-function-doc-ignored-text.js +6 -9
  195. package/dist/rules/require-function-doc-ignored-text.js.map +1 -1
  196. package/dist/rules/require-function-doc-local-exports.d.ts.map +1 -1
  197. package/dist/rules/require-function-doc-local-exports.js +16 -58
  198. package/dist/rules/require-function-doc-local-exports.js.map +1 -1
  199. package/dist/rules/require-function-doc.d.ts.map +1 -1
  200. package/dist/rules/require-function-doc.js +87 -196
  201. package/dist/rules/require-function-doc.js.map +1 -1
  202. package/dist/rules/source-cache.d.ts.map +1 -1
  203. package/dist/rules/source-cache.js +23 -33
  204. package/dist/rules/source-cache.js.map +1 -1
  205. package/package.json +3 -1
@@ -1,25 +1,17 @@
1
1
  /* -------------------------------------------------------------------------- */
2
2
  /* Source scanning utilities for Effect lint rules. */
3
3
  /* -------------------------------------------------------------------------- */
4
- import { CHAR_CLASS, CLS_DIGIT, CLS_LOWER, CLS_UNDER, CLS_UPPER } from './char-class.js';
5
- const regexPrefixChars = new Set(['(', '[', '{', '=', ':', ',', ';', '!', '?', '&', '|']);
6
- const regexPrefixWords = new Set(['case', 'delete', 'return', 'throw', 'typeof', 'void', 'yield']);
4
+ import { Array, Option, pipe } from 'effect';
5
+ import { findREGEXLiteralEnd, isREGEXLiteralStart } from './effect-source-regex-scan.js';
6
+ export { findREGEXLiteralEnd, isREGEXLiteralStart } from './effect-source-regex-scan.js';
7
7
  const STRIP_CACHE_MAX = 256;
8
8
  const codeOnlyCache = new Map();
9
- const IDENTIFIER_MASK = CLS_UPPER | CLS_LOWER | CLS_DIGIT | CLS_UNDER;
10
- const CHAR_CODE_SPACE = 32;
11
- const CHAR_CODE_TAB = 9;
12
- const CHAR_CODE_NEWLINE = 10;
13
- const CHAR_CODE_CARRIAGE_RETURN = 13;
14
- const CHAR_CODE_VERTICAL_TAB = 11;
15
- const CHAR_CODE_FORM_FEED = 12;
16
- const CHAR_CODE_DOLLAR = 36;
17
- const isWhitespaceCode = (code) => code === CHAR_CODE_SPACE ||
18
- code === CHAR_CODE_TAB ||
19
- code === CHAR_CODE_NEWLINE ||
20
- code === CHAR_CODE_CARRIAGE_RETURN ||
21
- code === CHAR_CODE_VERTICAL_TAB ||
22
- code === CHAR_CODE_FORM_FEED;
9
+ const scanIndexes = (startIndex, endIndex) => {
10
+ if (startIndex > endIndex) {
11
+ return [];
12
+ }
13
+ return Array.range(startIndex, endIndex);
14
+ };
23
15
  const appendNewlineOrBlank = (output, char) => {
24
16
  if (char === '\n') {
25
17
  return output + char;
@@ -34,16 +26,9 @@ const appendPreservedOrBlank = (output, shouldPreserve, char) => {
34
26
  };
35
27
  const lineCommentStep = (state, char) => {
36
28
  if (char === '\n') {
37
- return {
38
- ...state,
39
- isLineComment: false,
40
- stripped: state.stripped + char,
41
- };
29
+ return { ...state, isLineComment: false, stripped: state.stripped + char };
42
30
  }
43
- return {
44
- ...state,
45
- stripped: `${state.stripped} `,
46
- };
31
+ return { ...state, stripped: `${state.stripped} ` };
47
32
  };
48
33
  const blockCommentStep = (state, char, nextChar) => {
49
34
  if (char === '*' && nextChar === '/') {
@@ -54,10 +39,7 @@ const blockCommentStep = (state, char, nextChar) => {
54
39
  stripped: `${state.stripped} `,
55
40
  };
56
41
  }
57
- return {
58
- ...state,
59
- stripped: appendNewlineOrBlank(state.stripped, char),
60
- };
42
+ return { ...state, stripped: appendNewlineOrBlank(state.stripped, char) };
61
43
  };
62
44
  const templateInterpolationStartStep = (state) => ({
63
45
  ...state,
@@ -67,34 +49,21 @@ const templateInterpolationStartStep = (state) => ({
67
49
  templateExpressionDepth: state.templateExpressionDepth + 1,
68
50
  });
69
51
  const quotedStep = (state, char, nextChar) => {
70
- const shouldPreserve = char === '\n';
71
52
  if (state.quote === '`' && char === '$' && nextChar === '{' && !state.isEscaped) {
72
53
  return templateInterpolationStartStep(state);
73
54
  }
74
55
  if (state.isEscaped) {
75
- return {
76
- ...state,
77
- isEscaped: false,
78
- stripped: appendNewlineOrBlank(state.stripped, char),
79
- };
56
+ return { ...state, isEscaped: false, stripped: appendNewlineOrBlank(state.stripped, char) };
80
57
  }
81
58
  if (char === '\\') {
82
- return {
83
- ...state,
84
- isEscaped: true,
85
- stripped: appendNewlineOrBlank(state.stripped, char),
86
- };
59
+ return { ...state, isEscaped: true, stripped: appendNewlineOrBlank(state.stripped, char) };
87
60
  }
88
61
  if (char === state.quote) {
89
- return {
90
- ...state,
91
- quote: '',
92
- stripped: state.stripped + char,
93
- };
62
+ return { ...state, quote: '', stripped: state.stripped + char };
94
63
  }
95
64
  return {
96
65
  ...state,
97
- stripped: appendPreservedOrBlank(state.stripped, shouldPreserve || char === state.quote, char),
66
+ stripped: appendPreservedOrBlank(state.stripped, char === '\n' || char === state.quote, char),
98
67
  };
99
68
  };
100
69
  const templateBraceStep = (state, char) => {
@@ -113,18 +82,9 @@ const templateBraceStep = (state, char) => {
113
82
  }
114
83
  const templateExpressionDepth = state.templateExpressionDepth - 1;
115
84
  if (templateExpressionDepth === 0) {
116
- return {
117
- ...state,
118
- quote: '`',
119
- stripped: `${state.stripped} `,
120
- templateExpressionDepth,
121
- };
85
+ return { ...state, quote: '`', stripped: `${state.stripped} `, templateExpressionDepth };
122
86
  }
123
- return {
124
- ...state,
125
- stripped: state.stripped + char,
126
- templateExpressionDepth,
127
- };
87
+ return { ...state, stripped: state.stripped + char, templateExpressionDepth };
128
88
  };
129
89
  const codeStep = (source, state, char, nextChar) => {
130
90
  if (char === '/' && nextChar === '/') {
@@ -168,7 +128,7 @@ const stripCodeOnlyStep = (source, state) => {
168
128
  if (state.quote) {
169
129
  return quotedStep(state, char, nextChar);
170
130
  }
171
- return templateBraceStep(state, char) ?? codeStep(source, state, char, nextChar);
131
+ return pipe(Option.fromNullable(templateBraceStep(state, char)), Option.getOrElse(() => codeStep(source, state, char, nextChar)));
172
132
  };
173
133
  const initialStripState = () => ({
174
134
  index: 0,
@@ -179,15 +139,6 @@ const initialStripState = () => ({
179
139
  stripped: '',
180
140
  templateExpressionDepth: 0,
181
141
  });
182
- const isASCIIIdentifierChar = (source, index) => {
183
- const code = source.charCodeAt(index);
184
- return (code === CHAR_CODE_DOLLAR ||
185
- (code < CHAR_CLASS.length && (CHAR_CLASS[code] & IDENTIFIER_MASK) !== 0));
186
- };
187
- const isASCIILetter = (source, index) => {
188
- const code = source.charCodeAt(index);
189
- return code < CHAR_CLASS.length && (CHAR_CLASS[code] & (CLS_UPPER | CLS_LOWER)) !== 0;
190
- };
191
142
  const quoteStart = (char) => {
192
143
  if (char === '"' || char === "'" || char === '`') {
193
144
  return char;
@@ -206,125 +157,25 @@ const nextQuoteState = (state, char) => {
206
157
  }
207
158
  return state;
208
159
  };
209
- const cached = (cache, source) => cache.get(source);
210
160
  const cacheResult = (cache, source, value) => {
211
161
  if (cache.size >= STRIP_CACHE_MAX) {
212
- const firstKey = cache.keys().next().value;
213
- if (firstKey !== undefined) {
214
- cache.delete(firstKey);
215
- }
162
+ pipe(Option.fromNullable(cache.keys().next().value), Option.map((firstKey) => cache.delete(firstKey)));
216
163
  }
217
164
  cache.set(source, value);
218
165
  return value;
219
166
  };
220
- const previousSignificantIndex = (source, index) => {
221
- for (let cursor = index - 1; cursor >= 0; cursor--) {
222
- if (!isWhitespaceCode(source.charCodeAt(cursor))) {
223
- return cursor;
224
- }
225
- }
226
- return -1;
227
- };
228
- const wordBefore = (source, index) => {
229
- const endIndex = previousSignificantIndex(source, index);
230
- if (endIndex === -1 || !isASCIIIdentifierChar(source, endIndex)) {
231
- return '';
232
- }
233
- let startIndex = endIndex;
234
- while (startIndex > 0 && isASCIIIdentifierChar(source, startIndex - 1)) {
235
- startIndex--;
236
- }
237
- return source.slice(startIndex, endIndex + 1);
238
- };
239
- /**
240
- * Internal helper exported for package-local composition.
241
- *
242
- * @internal
243
- */
244
- export const isREGEXLiteralStart = (source, index) => {
245
- if (source[index] !== '/' || source[index + 1] === '/' || source[index + 1] === '*') {
246
- return false;
247
- }
248
- const previousIndex = previousSignificantIndex(source, index);
249
- if (previousIndex === -1) {
250
- return true;
251
- }
252
- return (regexPrefixChars.has(source[previousIndex]) || regexPrefixWords.has(wordBefore(source, index)));
253
- };
254
- const regexFlagsEndIndex = (source, index) => {
255
- let flagsEndIndex = index;
256
- while (isASCIILetter(source, flagsEndIndex + 1)) {
257
- flagsEndIndex++;
258
- }
259
- return flagsEndIndex;
260
- };
261
- const scanREGEXDelimiter = (source, index, isCharacterClass) => {
262
- const char = source[index];
263
- if (char === '\n') {
264
- return { endIndex: -1, isCharacterClass, isEscaped: false };
265
- }
266
- if (char === '/' && !isCharacterClass) {
267
- return { endIndex: regexFlagsEndIndex(source, index), isCharacterClass, isEscaped: false };
268
- }
269
- return undefined;
270
- };
271
- const scanREGEXCharacterClass = (char, isCharacterClass) => {
272
- if (char === '[') {
273
- return { isCharacterClass: true, isEscaped: false };
274
- }
275
- if (char === ']') {
276
- return { isCharacterClass: false, isEscaped: false };
277
- }
278
- return { isCharacterClass, isEscaped: false };
279
- };
280
- const scanREGEXLiteralChar = (source, index, isEscaped, isCharacterClass) => {
281
- const char = source[index];
282
- if (isEscaped) {
283
- return { isCharacterClass, isEscaped: false };
284
- }
285
- if (char === '\\') {
286
- return { isCharacterClass, isEscaped: true };
287
- }
288
- const delimiter = scanREGEXDelimiter(source, index, isCharacterClass);
289
- if (delimiter) {
290
- return delimiter;
291
- }
292
- return scanREGEXCharacterClass(char, isCharacterClass);
293
- };
294
- /**
295
- * Internal helper exported for package-local composition.
296
- *
297
- * @internal
298
- */
299
- export const findREGEXLiteralEnd = (source, startIndex) => {
300
- let isEscaped = false;
301
- let isCharacterClass = false;
302
- for (let index = startIndex + 1; index < source.length; index++) {
303
- const result = scanREGEXLiteralChar(source, index, isEscaped, isCharacterClass);
304
- if (result.endIndex === -1) {
305
- return startIndex;
306
- }
307
- if (result.endIndex !== undefined) {
308
- return result.endIndex;
309
- }
310
- ({ isCharacterClass, isEscaped } = result);
311
- }
312
- return startIndex;
313
- };
314
- const skipLineCommentIndex = (source, index) => {
315
- const newlineIndex = source.indexOf('\n', index + 2);
167
+ const skipLineCommentIndex = (source, index) => pipe(Option.fromNullable(source.indexOf('\n', index + 2)), Option.map((newlineIndex) => {
316
168
  if (newlineIndex === -1) {
317
169
  return source.length;
318
170
  }
319
171
  return newlineIndex;
320
- };
321
- const skipBlockCommentIndex = (source, index) => {
322
- const commentEnd = source.indexOf('*/', index + 2);
172
+ }), Option.getOrElse(() => source.length));
173
+ const skipBlockCommentIndex = (source, index) => pipe(Option.fromNullable(source.indexOf('*/', index + 2)), Option.map((commentEnd) => {
323
174
  if (commentEnd === -1) {
324
175
  return source.length;
325
176
  }
326
177
  return commentEnd + 1;
327
- };
178
+ }), Option.getOrElse(() => source.length));
328
179
  const skipNonCodeIndex = (source, index) => {
329
180
  const char = source[index];
330
181
  const nextChar = source[index + 1];
@@ -348,89 +199,92 @@ const quoteOrNonCodeScan = (source, index, quoteState) => {
348
199
  if (quote) {
349
200
  return { index, quoteState: { isEscaped: false, quote } };
350
201
  }
351
- const nonCodeIndex = skipNonCodeIndex(source, index);
352
- if (nonCodeIndex !== undefined) {
353
- return { index: nonCodeIndex, quoteState };
354
- }
355
- return undefined;
202
+ return pipe(Option.fromNullable(skipNonCodeIndex(source, index)), Option.map((nonCodeIndex) => ({ index: nonCodeIndex, quoteState })), Option.getOrUndefined);
356
203
  };
357
- const nextBalancedCallScan = (source, index, depth, quoteState) => {
358
- const quoteOrNonCode = quoteOrNonCodeScan(source, index, quoteState);
359
- if (quoteOrNonCode) {
360
- return { ...quoteOrNonCode, depth, isEnd: false };
361
- }
362
- const char = source[index];
363
- if (char === '(') {
364
- return { depth: depth + 1, index, isEnd: false, quoteState };
365
- }
366
- if (char !== ')') {
204
+ const nextBalancedCallScan = (source, index, depth, quoteState) => pipe(Option.fromNullable(quoteOrNonCodeScan(source, index, quoteState)), Option.match({
205
+ onNone: () => {
206
+ const char = source[index];
207
+ if (char === '(') {
208
+ return { depth: depth + 1, index, isEnd: false, quoteState };
209
+ }
210
+ if (char === ')') {
211
+ return { depth: depth - 1, index, isEnd: depth - 1 === 0, quoteState };
212
+ }
367
213
  return { depth, index, isEnd: false, quoteState };
368
- }
369
- return { depth: depth - 1, index, isEnd: depth - 1 === 0, quoteState };
370
- };
214
+ },
215
+ onSome: (quoteOrNonCode) => ({ ...quoteOrNonCode, depth, isEnd: false }),
216
+ }));
371
217
  /**
372
218
  * Internal helper exported for package-local composition.
373
219
  *
374
220
  * @internal
375
221
  */
376
- export const findBalancedCallEnd = (source, openParenIndex) => {
377
- let depth = 0;
378
- let quoteState = { isEscaped: false, quote: '' };
379
- for (let index = openParenIndex; index < source.length; index++) {
380
- const next = nextBalancedCallScan(source, index, depth, quoteState);
381
- if (next.isEnd) {
382
- return index;
222
+ export const findBalancedCallEnd = (source, openParenIndex) => pipe(scanIndexes(openParenIndex, source.length - 1), Array.reduce({
223
+ depth: 0,
224
+ endIndex: source.length - 1,
225
+ index: openParenIndex,
226
+ isEnd: false,
227
+ quoteState: { isEscaped: false, quote: '' },
228
+ }, (state, scanIndex) => {
229
+ if (state.isEnd || scanIndex < state.index) {
230
+ return state;
231
+ }
232
+ const next = nextBalancedCallScan(source, scanIndex, state.depth, state.quoteState);
233
+ if (next.isEnd) {
234
+ return { ...next, endIndex: scanIndex };
235
+ }
236
+ return { ...next, endIndex: state.endIndex };
237
+ }), (state) => state.endIndex);
238
+ const nextBraceScan = (source, index, depth, quoteState) => pipe(Option.fromNullable(quoteOrNonCodeScan(source, index, quoteState)), Option.match({
239
+ onNone: () => {
240
+ const char = source[index];
241
+ if (char === '{') {
242
+ return { depth: depth + 1, index, isEnd: false, quoteState };
243
+ }
244
+ if (char === '}') {
245
+ return { depth: depth - 1, index, isEnd: depth - 1 === 0, quoteState };
383
246
  }
384
- ({ depth, index, quoteState } = next);
385
- }
386
- return source.length - 1;
387
- };
388
- const nextBraceScan = (source, index, depth, quoteState) => {
389
- const quoteOrNonCode = quoteOrNonCodeScan(source, index, quoteState);
390
- if (quoteOrNonCode) {
391
- return { ...quoteOrNonCode, depth, isEnd: false };
392
- }
393
- const char = source[index];
394
- if (char === '{') {
395
- return { depth: depth + 1, index, isEnd: false, quoteState };
396
- }
397
- if (char !== '}') {
398
247
  return { depth, index, isEnd: false, quoteState };
399
- }
400
- return { depth: depth - 1, index, isEnd: depth - 1 === 0, quoteState };
401
- };
248
+ },
249
+ onSome: (quoteOrNonCode) => ({ ...quoteOrNonCode, depth, isEnd: false }),
250
+ }));
402
251
  /**
403
252
  * Internal helper exported for package-local composition.
404
253
  *
405
254
  * @internal
406
255
  */
407
- export const stripCommentsAndStrings = (source) => {
408
- const cachedValue = cached(codeOnlyCache, source);
409
- if (cachedValue !== undefined) {
410
- return cachedValue;
411
- }
412
- let state = initialStripState();
413
- while (state.index < source.length) {
414
- const stepped = stripCodeOnlyStep(source, state);
415
- state = { ...stepped, index: stepped.index + 1 };
416
- }
417
- return cacheResult(codeOnlyCache, source, state.stripped);
418
- };
256
+ export const stripCommentsAndStrings = (source) => pipe(Option.fromNullable(codeOnlyCache.get(source)), Option.match({
257
+ onNone: () => {
258
+ const state = pipe(scanIndexes(0, source.length - 1), Array.reduce(initialStripState(), (currentState, scanIndex) => {
259
+ if (scanIndex < currentState.index) {
260
+ return currentState;
261
+ }
262
+ const stepped = stripCodeOnlyStep(source, currentState);
263
+ return { ...stepped, index: stepped.index + 1 };
264
+ }));
265
+ return cacheResult(codeOnlyCache, source, state.stripped);
266
+ },
267
+ onSome: (value) => value,
268
+ }));
419
269
  /**
420
270
  * Internal helper exported for package-local composition.
421
271
  *
422
272
  * @internal
423
273
  */
424
- export const findMatchingBrace = (source, openIndex) => {
425
- let depth = 0;
426
- let quoteState = { isEscaped: false, quote: '' };
427
- for (let index = openIndex; index < source.length; index++) {
428
- const next = nextBraceScan(source, index, depth, quoteState);
429
- if (next.isEnd) {
430
- return index;
431
- }
432
- ({ depth, index, quoteState } = next);
433
- }
434
- return -1;
435
- };
274
+ export const findMatchingBrace = (source, openIndex) => pipe(scanIndexes(openIndex, source.length - 1), Array.reduce({
275
+ depth: 0,
276
+ endIndex: -1,
277
+ index: openIndex,
278
+ isEnd: false,
279
+ quoteState: { isEscaped: false, quote: '' },
280
+ }, (state, scanIndex) => {
281
+ if (state.isEnd || scanIndex < state.index) {
282
+ return state;
283
+ }
284
+ const next = nextBraceScan(source, scanIndex, state.depth, state.quoteState);
285
+ if (next.isEnd) {
286
+ return { ...next, endIndex: scanIndex };
287
+ }
288
+ return { ...next, endIndex: state.endIndex };
289
+ }), (state) => state.endIndex);
436
290
  //# sourceMappingURL=effect-source-scan.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"effect-source-scan.js","sourceRoot":"","sources":["../../src/rules/effect-source-scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effect-source-scan.js","sourceRoot":"","sources":["../../src/rules/effect-source-scan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"effect-strict-ast-specs.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict-ast-specs.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,QAAQ,EAuMrB,CAAC"}
1
+ {"version":3,"file":"effect-strict-ast-specs.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict-ast-specs.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAInD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,QAAQ,EAuNnD,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /* -------------------------------------------------------------------------- */
2
2
  /* AST-backed opt-in strict custom Effect lint rule specs. */
3
3
  /* -------------------------------------------------------------------------- */
4
+ import { Array, Option, pipe } from 'effect';
4
5
  import { arrayValue, effectCallPredicate, effectWrapperStatement, hasCryptoRandomUUID, hasEffectSucceedWithVoid, hasGlobalFetch, hasLayerEffectWithScope, hasMapFlatten, hasMapToVoid, hasMultipleProvideChain, hasNonDeterministicServiceKey, hasSchemaInstanceof, hasSchemaStructWithTag, hasSchemaUnionOfLiterals, identifierName, isMember, isSchemaMember, isVoidZero, literalValue, nodeType, objectValue, reportAST, serviceKeyFromClass, } from './effect-strict-internals.js';
5
6
  import { isConfiguredPath } from './effect-path-options.js';
6
7
  import { stripCommentsAndStrings } from './effect-source-helpers.js';
@@ -9,7 +10,7 @@ import { stripCommentsAndStrings } from './effect-source-helpers.js';
9
10
  *
10
11
  * @internal
11
12
  */
12
- export const effectStrictASTSpecs = [
13
+ export const effectStrictASTSpecs = pipe([
13
14
  {
14
15
  ast: (context) => ({
15
16
  CallExpression(node) {
@@ -44,13 +45,13 @@ export const effectStrictASTSpecs = [
44
45
  ast: (context, source) => ({
45
46
  CallExpression(node) {
46
47
  const callArguments = arrayValue(objectValue(node, 'arguments'));
47
- const [firstArg] = callArguments;
48
+ const firstArg = pipe(callArguments, Array.head, Option.getOrUndefined);
48
49
  if (!isSchemaMember(objectValue(node, 'callee'), source, 'Struct') ||
49
50
  nodeType(firstArg) !== 'ObjectExpression') {
50
51
  return;
51
52
  }
52
- if (arrayValue(objectValue(firstArg, 'properties')).some((property) => identifierName(objectValue(property, 'key')) === '_tag' &&
53
- isSchemaMember(objectValue(objectValue(property, 'value'), 'callee'), source, 'Literal'))) {
53
+ if (pipe(arrayValue(objectValue(firstArg, 'properties')), Array.some((property) => identifierName(objectValue(property, 'key')) === '_tag' &&
54
+ isSchemaMember(objectValue(objectValue(property, 'value'), 'callee'), source, 'Literal')))) {
54
55
  reportAST(context, 'Use Schema.TaggedStruct or Schema.TaggedClass instead of Struct with _tag.', node);
55
56
  }
56
57
  },
@@ -64,7 +65,7 @@ export const effectStrictASTSpecs = [
64
65
  ast: (context, source) => ({
65
66
  CallExpression(node) {
66
67
  const callArguments = arrayValue(objectValue(node, 'arguments'));
67
- const literalArgCount = callArguments.filter((argument) => isSchemaMember(objectValue(argument, 'callee'), source, 'Literal')).length;
68
+ const literalArgCount = pipe(callArguments, Array.filter((argument) => isSchemaMember(objectValue(argument, 'callee'), source, 'Literal')), Array.length);
68
69
  if (isSchemaMember(objectValue(node, 'callee'), source, 'Union') && literalArgCount > 1) {
69
70
  reportAST(context, 'Combine literal alternatives into one Schema.Literal call.', node);
70
71
  }
@@ -121,7 +122,9 @@ export const effectStrictASTSpecs = [
121
122
  CallExpression(node) {
122
123
  const calleeName = identifierName(objectValue(node, 'callee'));
123
124
  const wrappedFetch = effectWrapperStatement(stripCommentsAndStrings(source), node.start ?? 0);
124
- if (calleeName === 'fetch' && !isConfiguredPath(context, 'adapterLayers') && wrappedFetch) {
125
+ if (calleeName === 'fetch' &&
126
+ !isConfiguredPath(context, 'adapterLayers') &&
127
+ wrappedFetch) {
125
128
  reportAST(context, 'Use the Effect HTTP client or an adapter service instead of global fetch.', node);
126
129
  }
127
130
  },
@@ -137,7 +140,7 @@ export const effectStrictASTSpecs = [
137
140
  return {
138
141
  CallExpression(node) {
139
142
  const callArguments = arrayValue(objectValue(node, 'arguments'));
140
- const [firstArg] = callArguments;
143
+ const firstArg = pipe(callArguments, Array.head, Option.getOrUndefined);
141
144
  if (isEffectSucceed(objectValue(node, 'callee')) &&
142
145
  (!firstArg || identifierName(firstArg) === 'undefined' || isVoidZero(firstArg))) {
143
146
  reportAST(context, 'Use Effect.void instead of Effect.succeed(undefined).', node);
@@ -162,5 +165,5 @@ export const effectStrictASTSpecs = [
162
165
  name: 'effect-prefer-flatMap-over-map-flatten',
163
166
  tokens: ['Effect', 'effect'],
164
167
  },
165
- ];
168
+ ], Array.map((spec) => spec));
166
169
  //# sourceMappingURL=effect-strict-ast-specs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"effect-strict-ast-specs.js","sourceRoot":"","sources":["../../src/rules/effect-strict-ast-specs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effect-strict-ast-specs.js","sourceRoot":"","sources":["../../src/rules/effect-strict-ast-specs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"effect-strict-boundary-helpers.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict-boundary-helpers.ts"],"names":[],"mappings":"AAqCA;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,GAAI,QAAQ,MAAM,KAAG,OAoB7D,CAAC;AAqBF;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,GAAI,QAAQ,MAAM,KAAG,OAiBlE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAI,QAAQ,MAAM,KAAG,OAgChE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,MAAM,KAAG,OAuB/D,CAAC"}
1
+ {"version":3,"file":"effect-strict-boundary-helpers.d.ts","sourceRoot":"","sources":["../../src/rules/effect-strict-boundary-helpers.ts"],"names":[],"mappings":"AA4CA;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,GAAI,QAAQ,MAAM,KAAG,OAiB3D,CAAC;AAoCJ;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,GAAI,QAAQ,MAAM,KAAG,OAqBhE,CAAC;AAwBJ;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAI,QAAQ,MAAM,KAAG,OAqB9D,CAAC;AAEJ;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,MAAM,KAAG,OAwB7D,CAAC"}