@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,6 +1,7 @@
1
1
  /* -------------------------------------------------------------------------- */
2
2
  /* Effect import, alias, and runtime-call helpers for source-backed rules. */
3
3
  /* -------------------------------------------------------------------------- */
4
+ import { Array, HashSet, Option, pipe } from 'effect';
4
5
  import { stripComments, stripCommentsAndStrings } from './effect-source-helpers.js';
5
6
  /**
6
7
  * Internal helper exported for package-local composition.
@@ -17,24 +18,18 @@ const runtimeFunctionAliasCache = new Map();
17
18
  const canonicalSourceCache = new Map();
18
19
  const effectSignalCache = new Map();
19
20
  const runtimeCallCache = new Map();
20
- const cachedAliases = (cache, source) => cache.get(source);
21
+ const cachedAliases = (cache, source) => pipe(Option.fromNullable(cache.get(source)), Option.getOrUndefined);
21
22
  const cacheAliases = (cache, source, value) => {
22
23
  if (cache.size >= ALIAS_CACHE_MAX) {
23
- const firstKey = cache.keys().next().value;
24
- if (firstKey !== undefined) {
25
- cache.delete(firstKey);
26
- }
24
+ pipe(Option.fromNullable(cache.keys().next().value), Option.map((firstKey) => cache.delete(firstKey)));
27
25
  }
28
26
  cache.set(source, value);
29
27
  return value;
30
28
  };
31
- const cachedBoolean = (cache, source) => cache.get(source);
29
+ const cachedBoolean = (cache, source) => pipe(Option.fromNullable(cache.get(source)), Option.getOrUndefined);
32
30
  const cacheBoolean = (cache, source, value) => {
33
31
  if (cache.size >= BOOLEAN_CACHE_MAX) {
34
- const firstKey = cache.keys().next().value;
35
- if (firstKey !== undefined) {
36
- cache.delete(firstKey);
37
- }
32
+ pipe(Option.fromNullable(cache.keys().next().value), Option.map((firstKey) => cache.delete(firstKey)));
38
33
  }
39
34
  cache.set(source, value);
40
35
  return value;
@@ -43,57 +38,48 @@ const escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, String.raw
43
38
  const hasLocalEffectBinding = (source) => /\b(?:const|let|var|function|class|namespace)\s+Effect\b/.test(stripCommentsAndStrings(source));
44
39
  const importSpecifierNames = (specifier) => {
45
40
  const trimmed = specifier.trim();
46
- if (trimmed.startsWith('type ')) {
47
- return undefined;
48
- }
49
- const parts = trimmed.split(/\s+as\s+/);
50
- const importedName = parts[0]?.trim();
51
- const localName = parts[1]?.trim() ?? importedName;
52
- if (importedName && localName) {
53
- return { importedName, localName };
54
- }
55
- return undefined;
41
+ return pipe(Option.some(trimmed), Option.filter((value) => !value.startsWith('type ')), Option.flatMap((value) => {
42
+ const parts = value.split(/\s+as\s+/);
43
+ const importedName = parts[0]?.trim();
44
+ const localName = parts[1]?.trim() ?? importedName;
45
+ if (importedName && localName) {
46
+ return Option.some({ importedName, localName });
47
+ }
48
+ return Option.none();
49
+ }), Option.getOrUndefined);
56
50
  };
57
51
  const namedEffectImportLists = (source, modulePath = 'effect') => {
58
52
  const escapedModule = escapeRegExp(modulePath);
59
53
  return [
60
54
  ...source.matchAll(new RegExp(`(?:^|\\n)\\s*import\\s+(?!type\\b)\\s*{([^}]+)}\\s*from\\s*['"]${escapedModule}['"]`, 'g')),
61
- ].map((match) => match[1] ?? '');
55
+ ].map((match) => pipe(Option.fromNullable(match[1]), Option.getOrElse(() => '')));
62
56
  };
63
57
  const addMatchingNamedImports = (aliases, importList, predicate) => {
64
- for (const specifier of importList.split(',')) {
65
- const names = importSpecifierNames(specifier);
66
- if (names && predicate(names)) {
67
- aliases.add(names.localName);
68
- }
69
- }
58
+ pipe(importList.split(','), Array.filterMap((specifier) => Option.fromNullable(importSpecifierNames(specifier))), Array.filter(predicate), Array.map((names) => aliases.add(names.localName)));
70
59
  };
71
60
  const effectNamespaceImportPattern = (APIName) => new RegExp(`(?:^|\\n)\\s*import\\s+(?!type\\b)\\*\\s+as\\s+([A-Za-z_$][\\w$]*)\\s+from\\s*['"]effect/${escapeRegExp(APIName)}['"]`, 'g');
72
61
  const addRootEffectAliases = (aliases, source) => {
73
- for (const importList of namedEffectImportLists(source)) {
62
+ pipe(namedEffectImportLists(source), Array.map((importList) => {
74
63
  addMatchingNamedImports(aliases, importList, (names) => names.importedName === 'Effect');
75
64
  if (aliases.size > 0) {
76
- aliases.add('Effect');
65
+ return aliases.add('Effect');
77
66
  }
78
- }
67
+ return aliases;
68
+ }));
79
69
  };
80
70
  const addNamespaceEffectAliases = (aliases, source) => {
81
- for (const match of source.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s*['"]effect(?:\/Effect)?['"]/g)) {
71
+ pipe(Array.fromIterable(source.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s*['"]effect(?:\/Effect)?['"]/g)), Array.map((match) => {
82
72
  aliases.add('Effect');
83
- aliases.add(match[1]);
84
- }
73
+ return aliases.add(match[1]);
74
+ }));
85
75
  };
86
76
  const hasAnyEffectImport = (source) => /(?:^|\n)\s*import(?:\s+type)?(?:[\s\S]*?\s+from\s*)?['"](?:effect(?:\/[^'"]+)?|@effect\/[^'"]+)['"]/.test(stripComments(source));
87
77
  const hasEffectValueImport = (source) => {
88
78
  const commentFreeSource = stripComments(source);
89
- for (const match of commentFreeSource.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\s*{([^}]+)}\s*from\s*['"]effect['"]/g)) {
90
- if (match[1]
91
- .split(',')
92
- .some((specifier) => importSpecifierNames(specifier)?.importedName === 'Effect')) {
93
- return true;
94
- }
95
- }
96
- return (/(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+[A-Za-z_$][\w$]*\s+from\s*['"]effect(?:\/Effect)?['"]/.test(commentFreeSource) || effectFunctionAliases(source, 'Effect').length > 0);
79
+ const hasNamedEffectImport = pipe(Array.fromIterable(commentFreeSource.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\s*{([^}]+)}\s*from\s*['"]effect['"]/g)), Array.some((match) => pipe((match[1] ?? '').split(','), Array.some((specifier) => importSpecifierNames(specifier)?.importedName === 'Effect'))));
80
+ return (hasNamedEffectImport ||
81
+ /(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+[A-Za-z_$][\w$]*\s+from\s*['"]effect(?:\/Effect)?['"]/.test(commentFreeSource) ||
82
+ effectFunctionAliases(source, 'Effect').length > 0);
97
83
  };
98
84
  /**
99
85
  * Internal helper exported for package-local composition.
@@ -122,12 +108,8 @@ export const effectImportAliases = (source) => {
122
108
  export const effectAPIAliases = (source, APIName) => {
123
109
  const aliases = new Set();
124
110
  const commentFreeSource = stripComments(source);
125
- for (const importList of namedEffectImportLists(commentFreeSource)) {
126
- addMatchingNamedImports(aliases, importList, (names) => names.importedName === APIName);
127
- }
128
- for (const match of commentFreeSource.matchAll(effectNamespaceImportPattern(APIName))) {
129
- aliases.add(match[1]);
130
- }
111
+ pipe(namedEffectImportLists(commentFreeSource), Array.map((importList) => addMatchingNamedImports(aliases, importList, (names) => names.importedName === APIName)));
112
+ pipe(Array.fromIterable(commentFreeSource.matchAll(effectNamespaceImportPattern(APIName))), Array.map((match) => aliases.add(match[1])));
131
113
  if (aliases.size === 0 && !hasAnyEffectImport(source)) {
132
114
  aliases.add(APIName);
133
115
  }
@@ -141,51 +123,23 @@ export const effectAPIAliases = (source, APIName) => {
141
123
  export const effectFunctionAliases = (source, moduleName, functionName) => {
142
124
  const aliases = new Set();
143
125
  const commentFreeSource = stripComments(source);
144
- for (const importList of namedEffectImportLists(commentFreeSource, `effect/${moduleName}`)) {
145
- addMatchingNamedImports(aliases, importList, (names) => !functionName || names.importedName === functionName);
146
- }
126
+ pipe(namedEffectImportLists(commentFreeSource, `effect/${moduleName}`), Array.map((importList) => addMatchingNamedImports(aliases, importList, (names) => !functionName || names.importedName === functionName)));
147
127
  return [...aliases];
148
128
  };
149
- const canonicalNames = new Set([
150
- 'Config',
151
- 'Context',
152
- 'Effect',
153
- 'Fiber',
154
- 'Layer',
155
- 'Queue',
156
- 'Schedule',
157
- 'Schema',
158
- 'Scope',
159
- 'Stream',
160
- 'TestClock',
161
- ]);
129
+ const canonicalNames = HashSet.make('Config', 'Context', 'Effect', 'Fiber', 'Layer', 'Queue', 'Schedule', 'Schema', 'Scope', 'Stream', 'TestClock');
162
130
  const addCanonicalNamedImportAliases = (aliases, importList) => {
163
- for (const specifier of importList.split(',')) {
164
- const names = importSpecifierNames(specifier);
165
- const importedName = names?.importedName;
166
- const localName = names?.localName;
167
- if (importedName &&
168
- localName &&
169
- canonicalNames.has(importedName) &&
170
- localName !== importedName) {
171
- aliases.set(localName, importedName);
172
- }
173
- }
131
+ pipe(importList.split(','), Array.filterMap((specifier) => Option.fromNullable(importSpecifierNames(specifier))), Array.filter((names) => HashSet.has(canonicalNames, names.importedName) && names.localName !== names.importedName), Array.map((names) => aliases.set(names.localName, names.importedName)));
174
132
  };
175
133
  const addCanonicalNamespaceAliases = (aliases, source) => {
176
- for (const match of source.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s*['"]effect\/([A-Za-z]+)['"]/g)) {
177
- const [, localName, moduleName] = match;
178
- if (canonicalNames.has(moduleName) && localName !== moduleName) {
179
- aliases.set(localName, moduleName);
180
- }
181
- }
134
+ pipe(Array.fromIterable(source.matchAll(/(?:^|\n)\s*import\s+(?!type\b)\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s*['"]effect\/([A-Za-z]+)['"]/g)), Array.map((match) => ({
135
+ localName: match[1],
136
+ moduleName: match[2],
137
+ })), Array.filter(({ localName, moduleName }) => HashSet.has(canonicalNames, moduleName) && localName !== moduleName), Array.map(({ localName, moduleName }) => aliases.set(localName, moduleName)));
182
138
  };
183
139
  const canonicalImportAliases = (source) => {
184
140
  const aliases = new Map();
185
141
  const commentFreeSource = stripComments(source);
186
- for (const importList of namedEffectImportLists(commentFreeSource)) {
187
- addCanonicalNamedImportAliases(aliases, importList);
188
- }
142
+ pipe(namedEffectImportLists(commentFreeSource), Array.map((importList) => addCanonicalNamedImportAliases(aliases, importList)));
189
143
  addCanonicalNamespaceAliases(aliases, commentFreeSource);
190
144
  return aliases;
191
145
  };
@@ -193,30 +147,20 @@ const evictCanonicalSourceCache = () => {
193
147
  if (canonicalSourceCache.size < ALIAS_CACHE_MAX) {
194
148
  return;
195
149
  }
196
- const firstKey = canonicalSourceCache.keys().next().value;
197
- if (firstKey !== undefined) {
198
- canonicalSourceCache.delete(firstKey);
199
- }
150
+ pipe(Option.fromNullable(canonicalSourceCache.keys().next().value), Option.map((firstKey) => canonicalSourceCache.delete(firstKey)));
200
151
  };
201
152
  /**
202
153
  * Internal helper exported for package-local composition.
203
154
  *
204
155
  * @internal
205
156
  */
206
- export const canonicalizeEffectAPIAliases = (source) => {
207
- const cachedValue = canonicalSourceCache.get(source);
208
- if (cachedValue !== undefined) {
209
- return cachedValue;
210
- }
211
- let canonicalSource = source;
212
- for (const [localName, canonicalName] of canonicalImportAliases(source)) {
213
- canonicalSource = canonicalSource.replace(new RegExp(`\\b${escapeRegExp(localName)}\\.`, 'g'), `${canonicalName}.`);
214
- }
157
+ export const canonicalizeEffectAPIAliases = (source) => pipe(Option.fromNullable(canonicalSourceCache.get(source)), Option.getOrElse(() => {
158
+ const canonicalSource = pipe(Array.fromIterable(canonicalImportAliases(source)), Array.reduce(source, (currentSource, [localName, canonicalName]) => currentSource.replace(new RegExp(`\\b${escapeRegExp(localName)}\\.`, 'g'), `${canonicalName}.`)));
215
159
  evictCanonicalSourceCache();
216
160
  canonicalSourceCache.set(source, canonicalSource);
217
161
  return canonicalSource;
218
- };
219
- const runtimeNames = new Set(['runFork', 'runPromise', 'runPromiseExit', 'runSync', 'runSyncExit']);
162
+ }));
163
+ const runtimeNames = HashSet.make('runFork', 'runPromise', 'runPromiseExit', 'runSync', 'runSyncExit');
220
164
  const effectRuntimeFunctionAliases = (source) => {
221
165
  const cachedValue = cachedAliases(runtimeFunctionAliasCache, source);
222
166
  if (cachedValue) {
@@ -224,9 +168,7 @@ const effectRuntimeFunctionAliases = (source) => {
224
168
  }
225
169
  const aliases = new Set();
226
170
  const commentFreeSource = stripComments(source);
227
- for (const importList of namedEffectImportLists(commentFreeSource, 'effect/Effect')) {
228
- addMatchingNamedImports(aliases, importList, (names) => runtimeNames.has(names.importedName));
229
- }
171
+ pipe(namedEffectImportLists(commentFreeSource, 'effect/Effect'), Array.map((importList) => addMatchingNamedImports(aliases, importList, (names) => HashSet.has(runtimeNames, names.importedName))));
230
172
  return cacheAliases(runtimeFunctionAliasCache, source, [...aliases]);
231
173
  };
232
174
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"effect-rule-aliases.js","sourceRoot":"","sources":["../../src/rules/effect-rule-aliases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effect-rule-aliases.js","sourceRoot":"","sources":["../../src/rules/effect-rule-aliases.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAChF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAEjF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAC7B,+GAA+G,CAAC;AAClH,MAAM,mBAAmB,GAAG,oDAAoD,CAAC;AACjF,MAAM,eAAe,GAAG,wBAAwB,CAAC;AACjD,MAAM,eAAe,GAAG,GAAG,CAAC;AAC5B,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;AACrD,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAoB,CAAC;AAC9D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAkB,CAAC;AACvD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmB,CAAC;AACrD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAmB,CAAC;AAEpD,MAAM,aAAa,GAAG,CAAC,KAA4B,EAAE,MAAc,EAAwB,EAAE,CAC3F,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;AAEtE,MAAM,YAAY,GAAG,CAAC,KAA4B,EAAE,MAAc,EAAE,KAAe,EAAY,EAAE;IAC/F,IAAI,KAAK,CAAC,IAAI,IAAI,eAAe,EAAE,CAAC;QAClC,IAAI,CACF,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAC9C,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC1D,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,KAA2B,EAAE,MAAc,EAAuB,EAAE,CACzF,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;AAEtE,MAAM,YAAY,GAAG,CAAC,KAA2B,EAAE,MAAc,EAAE,KAAc,EAAW,EAAE;IAC5F,IAAI,KAAK,CAAC,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACpC,IAAI,CACF,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAC9C,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAW,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC1D,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE,CAC7C,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAA,KAAK,CAAC,CAAC;AAExD,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAW,EAAE,CACxD,yDAAyD,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;AAElG,MAAM,oBAAoB,GAAG,CAC3B,SAAiB,EACwC,EAAE;IAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;IACjC,OAAO,IAAI,CACT,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EACpB,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAW,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAC7D,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACvB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,YAAY,CAAC;QACnD,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;YAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,EAA+C,CAAC;IACpE,CAAC,CAAC,EACF,MAAM,CAAC,cAAc,CACtB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAE,UAAU,GAAG,QAAQ,EAAY,EAAE;IACjF,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO;QACL,GAAG,MAAM,CAAC,QAAQ,CAChB,IAAI,MAAM,CACR,kEAAkE,aAAa,MAAM,EACrF,GAAG,CACJ,CACF;KACF,CAAC,GAAG,CAAC,CAAC,KAAK,EAAU,EAAE,CACtB,IAAI,CACF,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC7B,MAAM,CAAC,SAAS,CAAC,GAAW,EAAE,CAAC,EAAE,CAAC,CACnC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,OAAoB,EACpB,UAAkB,EAClB,SAA0E,EACpE,EAAE;IACR,IAAI,CACF,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EACrB,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,EACpF,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EACvB,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,OAAe,EAAU,EAAE,CAC/D,IAAI,MAAM,CACR,4FAA4F,YAAY,CAAC,OAAO,CAAC,MAAM,EACvH,GAAG,CACJ,CAAC;AAEJ,MAAM,oBAAoB,GAAG,CAAC,OAAoB,EAAE,MAAc,EAAQ,EAAE;IAC1E,IAAI,CACF,sBAAsB,CAAC,MAAM,CAAC,EAC9B,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAe,EAAE;QACpC,uBAAuB,CACrB,OAAO,EACP,UAAU,EACV,CAAC,KAAK,EAAW,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CACpD,CAAC;QACF,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,OAAoB,EAAE,MAAc,EAAQ,EAAE;IAC/E,IAAI,CACF,KAAK,CAAC,YAAY,CAChB,MAAM,CAAC,QAAQ,CACb,kGAAkG,CACnG,CACF,EACD,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAe,EAAE;QAC/B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAW,EAAE,CACrD,qGAAqG,CAAC,IAAI,CACxG,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;AAEJ,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAW,EAAE;IACvD,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,oBAAoB,GAAG,IAAI,CAC/B,KAAK,CAAC,YAAY,CAChB,iBAAiB,CAAC,QAAQ,CACxB,qEAAqE,CACtE,CACF,EACD,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAW,EAAE,CAC5B,IAAI,CACF,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAC3B,KAAK,CAAC,IAAI,CACR,CAAC,SAAS,EAAW,EAAE,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,YAAY,KAAK,QAAQ,CACnF,CACF,CACF,CACF,CAAC;IAEF,OAAO,CACL,oBAAoB;QACpB,+FAA+F,CAAC,IAAI,CAClG,iBAAiB,CAClB;QACD,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CACnD,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAc,EAAY,EAAE;IAC9D,MAAM,WAAW,GAAG,aAAa,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC5D,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACjD,yBAAyB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAEtD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;QACxF,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,YAAY,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,OAAe,EAAY,EAAE;IAC5E,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,CACF,sBAAsB,CAAC,iBAAiB,CAAC,EACzC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAQ,EAAE,CAC7B,uBAAuB,CACrB,OAAO,EACP,UAAU,EACV,CAAC,KAAK,EAAW,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,OAAO,CACnD,CACF,CACF,CAAC;IAEF,IAAI,CACF,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC,CAAC,EACrF,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAe,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACzD,CAAC;IAEF,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AACtB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,MAAc,EACd,UAAkB,EAClB,YAAqB,EACX,EAAE;IACZ,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,CACF,sBAAsB,CAAC,iBAAiB,EAAE,UAAU,UAAU,EAAE,CAAC,EACjE,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAQ,EAAE,CAC7B,uBAAuB,CACrB,OAAO,EACP,UAAU,EACV,CAAC,KAAK,EAAW,EAAE,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,KAAK,YAAY,CACzE,CACF,CACF,CAAC;IAEF,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CACjC,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,OAAO,EACP,OAAO,EACP,OAAO,EACP,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,WAAW,CACZ,CAAC;AAEF,MAAM,8BAA8B,GAAG,CAAC,OAA4B,EAAE,UAAkB,EAAQ,EAAE;IAChG,IAAI,CACF,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EACrB,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,EACpF,KAAK,CAAC,MAAM,CACV,CAAC,KAAK,EAAW,EAAE,CACjB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,YAAY,CAC5F,EACD,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAuB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAC5F,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,OAA4B,EAAE,MAAc,EAAQ,EAAE;IAC1F,IAAI,CACF,KAAK,CAAC,YAAY,CAChB,MAAM,CAAC,QAAQ,CACb,kGAAkG,CACnG,CACF,EACD,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAA6C,EAAE,CAAC,CAAC;QAC/D,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;QACnB,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;KACrB,CAAC,CAAC,EACH,KAAK,CAAC,MAAM,CACV,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAW,EAAE,CACrC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,IAAI,SAAS,KAAK,UAAU,CACtE,EACD,KAAK,CAAC,GAAG,CACP,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAuB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CACvF,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAuB,EAAE;IACrE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,CACF,sBAAsB,CAAC,iBAAiB,CAAC,EACzC,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAQ,EAAE,CAAC,8BAA8B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CACrF,CAAC;IACF,4BAA4B,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAEzD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,GAAS,EAAE;IAC3C,IAAI,oBAAoB,CAAC,IAAI,GAAG,eAAe,EAAE,CAAC;QAChD,OAAO;IACT,CAAC;IACD,IAAI,CACF,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAC7D,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAW,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,MAAc,EAAU,EAAE,CACrE,IAAI,CACF,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EACrD,MAAM,CAAC,SAAS,CAAC,GAAW,EAAE;IAC5B,MAAM,eAAe,GAAG,IAAI,CAC1B,KAAK,CAAC,YAAY,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,EAClD,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,EAAU,EAAE,CACzE,aAAa,CAAC,OAAO,CACnB,IAAI,MAAM,CAAC,MAAM,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,EACnD,GAAG,aAAa,GAAG,CACpB,CACF,CACF,CAAC;IAEF,yBAAyB,EAAE,CAAC;IAC5B,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAClD,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC,CACH,CAAC;AAEJ,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAC/B,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,aAAa,CACd,CAAC;AAEF,MAAM,4BAA4B,GAAG,CAAC,MAAc,EAAY,EAAE;IAChE,MAAM,WAAW,GAAG,aAAa,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;IACrE,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,CACF,sBAAsB,CAAC,iBAAiB,EAAE,eAAe,CAAC,EAC1D,KAAK,CAAC,GAAG,CAAC,CAAC,UAAU,EAAQ,EAAE,CAC7B,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CACrD,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,CAC9C,CACF,CACF,CAAC;IAEF,OAAO,YAAY,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAW,EAAE;IACxD,MAAM,WAAW,GAAG,aAAa,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC5D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,YAAY,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,YAAY,CACjB,gBAAgB,EAChB,MAAM,EACN,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAW,EAAE,CAClD,IAAI,MAAM,CACR,MAAM,KAAK,qEAAqE,CACjF,CAAC,IAAI,CAAC,IAAI,CAAC,CACb;QACC,4BAA4B,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAW,EAAE,CAC3D,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5C,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAc,EAAW,EAAE;IACzD,MAAM,WAAW,GAAG,aAAa,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC7D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,OAAO,YAAY,CAAC,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,YAAY,CACjB,iBAAiB,EACjB,MAAM,EACN,oBAAoB,CAAC,MAAM,CAAC;QAC1B,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAW,EAAE,CAClD,IAAI,MAAM,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/D,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAA4B,EAAW,EAAE,CACtE,OAAO,CAAC,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAA4B,EAAW,EAAE,CAClE,OAAO,CAAC,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"effect-rule-core.d.ts","sourceRoot":"","sources":["../../src/rules/effect-rule-core.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,CAAC,UAAU,EAAE;QACnB,GAAG,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE;YACL,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IACF,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;QAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;QACzD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACjC,CAAC;IACF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;QACjC,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;QACzD,MAAM,CAAC,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC;QAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACjC,CAAC;CACH;AAED,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC7C,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,GAAG,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACpF;AAID,UAAU,gBAAgB;IACxB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAuYD;;;;GAIG;AACH,eAAO,MAAM,SAAS,GACpB,OAAO,SAAS,QAAQ,EAAE,EAC1B,UAAS,gBAAqB,KAC7B,MAAM,CAAC,MAAM,EAAE,UAAU,CAC0D,CAAC;AAEvF,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"effect-rule-core.d.ts","sourceRoot":"","sources":["../../src/rules/effect-rule-core.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,CAAC,UAAU,EAAE;QACnB,GAAG,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE;YACL,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,SAAS,CAAC;KACjB,CAAC;IACF,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;QAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;QACzD,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACjC,CAAC;IACF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;QACjC,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;QACzD,MAAM,CAAC,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC;QAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;KACjC,CAAC;CACH;AAED,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,UAAU,CAAC;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC7C,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,GAAG,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACpF;AAID,UAAU,gBAAgB;IACxB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA8ZD;;;;GAIG;AACH,eAAO,MAAM,SAAS,GACpB,OAAO,SAAS,QAAQ,EAAE,EAC1B,UAAS,gBAAqB,KAC7B,MAAM,CAAC,MAAM,EAAE,UAAU,CASzB,CAAC;AAEJ,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,cAAc,EACd,UAAU,EACV,kBAAkB,GACnB,MAAM,uBAAuB,CAAC"}
@@ -1,63 +1,41 @@
1
1
  /* -------------------------------------------------------------------------- */
2
2
  /* Core runtime for source-backed and AST-backed Effect lint rules. */
3
3
  /* -------------------------------------------------------------------------- */
4
+ import { Array, Option, String, pipe } from 'effect';
4
5
  import { canonicalizeEffectAPIAliases } from './effect-rule-aliases.js';
5
6
  import { effectDiagnosticMessage } from './diagnostic-guidance.js';
6
7
  import { readCachedSource } from './source-cache.js';
7
8
  import { stripCommentsAndStrings } from './effect-source-helpers.js';
8
9
  const LINE_START_CACHE_MAX = 256;
9
10
  const TOKEN_GATE_CACHE_MAX = 512;
10
- const CHAR_CODE_NEWLINE = 10;
11
11
  const lineStartCache = new Map();
12
12
  const globalPatternCache = new WeakMap();
13
13
  const tokenGateCache = new WeakMap();
14
14
  const sourceTokenPresenceCache = new Map();
15
15
  const readSource = (context) => readCachedSource(context);
16
+ const matchesIn = (source, pattern) => pipe(source.matchAll(pattern), Array.fromIterable);
16
17
  const isCodeAt = (strippedSource, index) => strippedSource[index]?.trim() !== '';
17
18
  const hasPattern = (source, patterns) => {
18
19
  let strippedSource = undefined;
19
- return patterns.some((pattern) => {
20
- for (const match of source.matchAll(toGlobalRegExp(pattern))) {
21
- strippedSource ??= stripCommentsAndStrings(source);
22
- if (isCodeAt(strippedSource, match.index)) {
23
- return true;
24
- }
25
- }
26
- return false;
27
- });
20
+ return pipe(patterns, Array.some((pattern) => pipe(matchesIn(source, toGlobalRegExp(pattern)), Array.some((match) => {
21
+ strippedSource ??= stripCommentsAndStrings(source);
22
+ return isCodeAt(strippedSource, match.index);
23
+ }))));
28
24
  };
29
- const toGlobalRegExp = (pattern) => {
30
- const cachedPattern = globalPatternCache.get(pattern);
31
- if (cachedPattern !== undefined) {
32
- return cachedPattern;
33
- }
34
- let { flags } = pattern;
35
- if (!flags.includes('g')) {
36
- flags = `${flags}g`;
37
- }
25
+ const toGlobalRegExp = (pattern) => pipe(Option.fromNullable(globalPatternCache.get(pattern)), Option.getOrElse(() => {
26
+ const flags = pipe(pattern.flags, Option.liftPredicate((value) => pipe(value, String.includes('g'))), Option.getOrElse(() => `${pattern.flags}g`));
38
27
  const globalPattern = new RegExp(pattern.source, flags);
39
28
  globalPatternCache.set(pattern, globalPattern);
40
29
  return globalPattern;
41
- };
30
+ }));
42
31
  const cachedLineStarts = (source) => lineStartCache.get(source);
43
32
  const evictFirstLineStart = () => {
44
33
  if (lineStartCache.size < LINE_START_CACHE_MAX) {
45
34
  return;
46
35
  }
47
- const firstKey = lineStartCache.keys().next().value;
48
- if (firstKey !== undefined) {
49
- lineStartCache.delete(firstKey);
50
- }
51
- };
52
- const computeLineStarts = (source) => {
53
- const starts = [0];
54
- for (let position = 0; position < source.length; position++) {
55
- if (source.charCodeAt(position) === CHAR_CODE_NEWLINE) {
56
- starts.push(position + 1);
57
- }
58
- }
59
- return starts;
36
+ pipe(Option.fromNullable(lineStartCache.keys().next().value), Option.map((firstKey) => lineStartCache.delete(firstKey)));
60
37
  };
38
+ const computeLineStarts = (source) => pipe(matchesIn(source, /\n/g), Array.map((match) => match.index + 1), Array.prepend(0));
61
39
  const lineStartsFor = (source) => {
62
40
  const cachedStarts = cachedLineStarts(source);
63
41
  if (cachedStarts !== undefined) {
@@ -92,15 +70,10 @@ const locFromIndex = (source, index) => {
92
70
  };
93
71
  const firstPatternLOC = (source, patterns) => {
94
72
  let strippedSource = undefined;
95
- for (const pattern of patterns) {
96
- for (const match of source.matchAll(toGlobalRegExp(pattern))) {
97
- strippedSource ??= stripCommentsAndStrings(source);
98
- if (isCodeAt(strippedSource, match.index)) {
99
- return locFromIndex(source, match.index);
100
- }
101
- }
102
- }
103
- return undefined;
73
+ return pipe(patterns, Array.filterMap((pattern) => pipe(matchesIn(source, toGlobalRegExp(pattern)), Array.findFirst((match) => {
74
+ strippedSource ??= stripCommentsAndStrings(source);
75
+ return isCodeAt(strippedSource, match.index);
76
+ }), Option.map((match) => locFromIndex(source, match.index)))), Array.head, Option.getOrUndefined);
104
77
  };
105
78
  const reportPatternMatches = (input) => {
106
79
  const { context, node, source, spec } = input;
@@ -118,18 +91,16 @@ const reportPatternMatches = (input) => {
118
91
  const reportCountedPatternMatches = (input, message) => {
119
92
  const { context, node, source, spec } = input;
120
93
  let strippedSource = undefined;
121
- for (const pattern of spec.countPatterns ?? []) {
122
- for (const match of source.matchAll(toGlobalRegExp(pattern))) {
123
- strippedSource ??= stripCommentsAndStrings(source);
124
- if (isCodeAt(strippedSource, match.index)) {
125
- context.report({
126
- loc: locFromIndex(source, match.index),
127
- message,
128
- node,
129
- });
130
- }
94
+ pipe(spec.countPatterns ?? [], Array.flatMap((pattern) => matchesIn(source, toGlobalRegExp(pattern))), Array.forEach((match) => {
95
+ strippedSource ??= stripCommentsAndStrings(source);
96
+ if (isCodeAt(strippedSource, match.index)) {
97
+ context.report({
98
+ loc: locFromIndex(source, match.index),
99
+ message,
100
+ node,
101
+ });
131
102
  }
132
- }
103
+ }));
133
104
  };
134
105
  const checkResultIndex = (result) => {
135
106
  if (typeof result === 'number') {
@@ -146,44 +117,34 @@ const isCheckViolation = (result) => {
146
117
  }
147
118
  return true;
148
119
  };
149
- const cachedSourceTokenPresence = (source) => {
150
- let tokenPresence = sourceTokenPresenceCache.get(source);
151
- if (tokenPresence !== undefined) {
152
- return tokenPresence;
153
- }
120
+ const cachedSourceTokenPresence = (source) => pipe(Option.fromNullable(sourceTokenPresenceCache.get(source)), Option.getOrElse(() => {
154
121
  if (sourceTokenPresenceCache.size >= TOKEN_GATE_CACHE_MAX) {
155
- const firstKey = sourceTokenPresenceCache.keys().next().value;
156
- if (firstKey !== undefined) {
157
- sourceTokenPresenceCache.delete(firstKey);
158
- }
122
+ pipe(Option.fromNullable(sourceTokenPresenceCache.keys().next().value), Option.map((firstKey) => sourceTokenPresenceCache.delete(firstKey)));
159
123
  }
160
- tokenPresence = new Map();
124
+ const tokenPresence = new Map();
161
125
  sourceTokenPresenceCache.set(source, tokenPresence);
162
126
  return tokenPresence;
163
- };
127
+ }));
164
128
  const hasTokenInSourceCached = (source, token) => {
165
129
  const tokenPresence = cachedSourceTokenPresence(source);
166
130
  const cachedValue = tokenPresence.get(token);
167
131
  if (cachedValue !== undefined) {
168
132
  return cachedValue;
169
133
  }
170
- const hasToken = source.includes(token);
134
+ const hasToken = pipe(source, String.includes(token));
171
135
  tokenPresence.set(token, hasToken);
172
136
  return hasToken;
173
137
  };
174
- const hasAnyToken = (source, tokens) => tokens.some((token) => hasTokenInSourceCached(source, token));
138
+ const hasAnyToken = (source, tokens) => pipe(tokens, Array.some((token) => hasTokenInSourceCached(source, token)));
175
139
  const cachedTokenGate = (source, tokens) => tokenGateCache.get(tokens)?.get(source);
176
140
  const cacheTokenGate = (source, tokens, hasToken) => {
177
- let sourceCache = tokenGateCache.get(tokens);
178
- if (!sourceCache) {
179
- sourceCache = new Map();
180
- tokenGateCache.set(tokens, sourceCache);
181
- }
141
+ const sourceCache = pipe(Option.fromNullable(tokenGateCache.get(tokens)), Option.getOrElse(() => {
142
+ const newSourceCache = new Map();
143
+ tokenGateCache.set(tokens, newSourceCache);
144
+ return newSourceCache;
145
+ }));
182
146
  if (sourceCache.size >= TOKEN_GATE_CACHE_MAX) {
183
- const firstKey = sourceCache.keys().next().value;
184
- if (firstKey !== undefined) {
185
- sourceCache.delete(firstKey);
186
- }
147
+ pipe(Option.fromNullable(sourceCache.keys().next().value), Option.map((firstKey) => sourceCache.delete(firstKey)));
187
148
  }
188
149
  sourceCache.set(source, hasToken);
189
150
  return hasToken;
@@ -195,7 +156,7 @@ const hasAnyTokenCached = (source, tokens) => {
195
156
  }
196
157
  return cacheTokenGate(source, tokens, hasAnyToken(source, tokens));
197
158
  };
198
- const hasEveryTokenGroup = (source, tokenGroups) => tokenGroups.every((group) => hasAnyTokenCached(source, group));
159
+ const hasEveryTokenGroup = (source, tokenGroups) => pipe(tokenGroups, Array.every((group) => hasAnyTokenCached(source, group)));
199
160
  const shouldSkipSource = (source, requiredTokens, requiredTokenGroups) => source === '' ||
200
161
  Boolean(requiredTokens && !hasAnyTokenCached(source, requiredTokens)) ||
201
162
  Boolean(requiredTokenGroups && !hasEveryTokenGroup(source, requiredTokenGroups));
@@ -289,7 +250,7 @@ const makeASTCapableRule = (spec, options) => {
289
250
  return {
290
251
  ...astVisitors,
291
252
  Program(node) {
292
- if (spec.ast && Array.isArray(node.body)) {
253
+ if (spec.ast && globalThis.Array.isArray(node.body)) {
293
254
  return;
294
255
  }
295
256
  runProgramRule({ context, node, source, spec });
@@ -317,6 +278,9 @@ const makeProgramRule = (spec, options) => {
317
278
  *
318
279
  * @internal
319
280
  */
320
- export const makeRules = (specs, options = {}) => Object.fromEntries(specs.map((spec) => [spec.name, makeProgramRule(spec, options)]));
281
+ export const makeRules = (specs, options = {}) => Object.fromEntries(pipe(specs, Array.map((spec) => [
282
+ spec.name,
283
+ makeProgramRule(spec, options),
284
+ ])));
321
285
  export { effectAPIAliases, effectFunctionAliases, effectImportAliases, hasEffectSignal, hasRuntimeCall, isBoundaryFile, isTestFile, runtimeCallPattern, } from './effect-rule-aliases.js';
322
286
  //# sourceMappingURL=effect-rule-core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"effect-rule-core.js","sourceRoot":"","sources":["../../src/rules/effect-rule-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effect-rule-core.js","sourceRoot":"","sources":["../../src/rules/effect-rule-core.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,11 @@
3
3
  *
4
4
  * @internal
5
5
  */
6
- export declare const effectDefaultRuleNames: readonly ["effect-no-floating-effect", "effect-require-yield-star", "effect-require-return-yield-star", "effect-prefer-gen-for-nested-flatmap", "effect-no-function-returning-gen", "effect-prefer-effect-fn-for-exported-effects", "effect-no-unnecessary-gen", "effect-no-effect-in-array-foreach", "effect-no-effect-in-promise-callback", "effect-no-floating-fiber", "effect-require-suspend-for-recursion", "effect-require-suspend-for-lazy-evaluation", "effect-no-async-await-in-effect", "effect-no-promise-then-in-effect", "effect-no-throw", "effect-no-string-errors", "effect-no-untagged-errors", "effect-no-silent-error-swallowing", "effect-require-typed-error-in-trypromise", "effect-prefer-catchTag-over-catchAll", "effect-no-catchAll-with-mapError", "effect-prefer-mapError-over-catchAll-rethrow", "effect-require-error-cause-preserved", "effect-prefer-ignore-logged", "effect-prefer-catchTags-for-multiple-tags", "effect-no-error-channel-widening-to-unknown", "effect-no-run-inside-effect", "effect-no-runpromise-in-exported-api", "effect-no-runfork-without-observer", "effect-no-sync-for-promise", "effect-no-sync-for-throwing-ops", "effect-no-console-log-in-effect-code", "effect-no-process-env-in-effect-code", "effect-no-date-now-in-effect-code", "effect-no-math-random-in-effect-code", "effect-no-json-parse-cast", "effect-schema-prefer-decodeUnknown-effect", "effect-schema-require-parse-error-handling", "effect-schema-use-decodeUnknown-for-external-data", "effect-schema-no-unsafe-sync-decode-in-effect-code", "effect-schema-require-parseJson-for-json-strings", "effect-schema-correct-number-type-for-parsed-json", "effect-schema-prefer-taggedClass-over-manual-tag", "effect-schema-avoid-old-type-names", "effect-schema-no-cast-after-decode", "effect-require-acquire-release", "effect-require-scoped-for-acquireRelease", "effect-require-scoped-for-resources", "effect-no-fork-daemon-without-cleanup", "effect-prefer-fork-scoped-for-listeners", "effect-require-restore-for-fork-in-uninterruptible", "effect-require-bounded-concurrency", "effect-require-bounded-flatMap-concurrency", "effect-no-unbounded-queue", "effect-no-unbounded-stream-buffer", "effect-test-no-runpromise", "effect-prefer-it-effect-for-unit-tests", "effect-testClock-requires-fork", "effect-testClock-requires-testContext", "effect-no-real-sleep-in-tests", "effect-use-exit-for-failure-tests", "effect-no-focused-effect-tests", "effect-no-skipped-effect-tests", "effect-no-obsolete-imports", "effect-no-known-fake-api", "effect-prefer-gen-over-do", "effect-prefer-direct-yield-star", "effect-prefer-config-redacted", "effect-no-deprecated-schema-package", "effect-no-deprecated-context-tag-function", "effect-no-global-error-channel", "effect-use-duration-constructors", "effect-no-mixed-effect-import-styles", "effect-prefer-effect-is", "effect-no-try-catch-in-effect-gen", "effect-no-new-promise", "effect-no-global-timers", "effect-no-native-error-classes", "effect-no-unsafe-effect-type-assertion", "effect-require-service-self-match", "effect-no-effect-fn-iife"];
6
+ export declare const effectDefaultRuleNames: [string, ...string[]];
7
7
  /**
8
8
  * Internal helper exported for package-local composition.
9
9
  *
10
10
  * @internal
11
11
  */
12
- export declare const effectStrictRuleNames: readonly ["effect-no-run-outside-entrypoints", "effect-require-platform-runmain-at-entrypoints", "effect-no-runSync-in-server-request-handlers", "effect-no-promise-returning-public-api", "effect-no-direct-process-env-outside-config-layer", "effect-no-direct-clock-random-outside-adapters", "effect-no-direct-http-fs-outside-platform-services", "effect-require-service-class-pattern", "effect-require-tag-identifier", "effect-no-leaked-service-dependencies", "effect-no-duplicate-layer-instances", "effect-require-centralized-provision", "effect-no-provide-in-domain-modules", "effect-require-layer-memoization-constant", "effect-require-suspend-for-circular-deps", "effect-avoid-layer-explosion", "effect-prefer-succeed-for-static-layers", "effect-require-scoped-for-resource-layers", "effect-no-service-construction-outside-layer", "effect-schema-require-validation-at-input-boundaries", "effect-schema-require-validation-at-output-boundaries", "effect-schema-require-http-client-response-schema", "effect-schema-require-http-server-request-schema", "effect-schema-require-config-schema", "effect-schema-require-persistence-schema", "effect-schema-require-public-command-schema", "effect-schema-no-unknown-crossing-boundary", "effect-require-timeout-on-external-effects", "effect-require-retry-policy-for-idempotent-external-effects", "effect-require-schedule-jitter-for-retries", "effect-require-span-external", "effect-require-semaphore-for-shared-resources", "effect-require-ref-for-shared-mutable-state", "effect-require-scoped-in-loops", "effect-require-onExit-for-cleanup", "effect-require-stream-resource-safety", "effect-require-stream-termination", "effect-require-explicit-asyncPush-buffer", "effect-require-batching-for-resolver", "effect-use-batched-resolver-for-n-plus-one", "effect-prefer-pubsub-for-broadcast", "effect-require-provided-services-in-tests", "effect-prefer-in-memory-implementations", "effect-no-live-services-in-unit-tests", "effect-require-testclock-for-time-code", "effect-no-test-runtime-leakage", "effect-no-ad-hoc-effect-wrapper-abstractions", "effect-require-effect-suppression-reason-and-ticket", "effect-no-crypto-randomUUID", "effect-require-schema-is-over-instanceof", "effect-prefer-schema-tagged-struct", "effect-prefer-single-schema-literal-union", "effect-require-deterministic-service-keys", "effect-no-multiple-provide-chain", "effect-require-layer-scoped-when-scope-required", "effect-no-node-builtins-when-effect-platform-exists", "effect-no-global-fetch", "effect-prefer-effect-void", "effect-prefer-asVoid", "effect-prefer-flatMap-over-map-flatten"];
12
+ export declare const effectStrictRuleNames: [string, ...string[]];
13
13
  //# sourceMappingURL=effect-rule-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"effect-rule-names.d.ts","sourceRoot":"","sources":["../../src/rules/effect-rule-names.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,y+FAkFzB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,0iFA6DxB,CAAC"}
1
+ {"version":3,"file":"effect-rule-names.d.ts","sourceRoot":"","sources":["../../src/rules/effect-rule-names.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,uBAkFlC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,uBA6DjC,CAAC"}