@thethracian/oxlint-config 0.1.0 → 0.2.1
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.
- package/CHANGELOG.md +19 -0
- package/README.md +62 -2
- package/dist/index.d.ts +34 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +73 -2
- package/dist/index.js.map +1 -1
- package/dist/rules/acronym-case.d.ts.map +1 -1
- package/dist/rules/acronym-case.js +0 -2
- package/dist/rules/acronym-case.js.map +1 -1
- package/dist/rules/effect-default-helpers.d.ts +33 -0
- package/dist/rules/effect-default-helpers.d.ts.map +1 -0
- package/dist/rules/effect-default-helpers.js +536 -0
- package/dist/rules/effect-default-helpers.js.map +1 -0
- package/dist/rules/effect-default-resource-helpers.d.ts +5 -0
- package/dist/rules/effect-default-resource-helpers.d.ts.map +1 -0
- package/dist/rules/effect-default-resource-helpers.js +65 -0
- package/dist/rules/effect-default-resource-helpers.js.map +1 -0
- package/dist/rules/effect-default-test-helpers.d.ts +5 -0
- package/dist/rules/effect-default-test-helpers.d.ts.map +1 -0
- package/dist/rules/effect-default-test-helpers.js +46 -0
- package/dist/rules/effect-default-test-helpers.js.map +1 -0
- package/dist/rules/effect-default.d.ts +3 -0
- package/dist/rules/effect-default.d.ts.map +1 -0
- package/dist/rules/effect-default.js +882 -0
- package/dist/rules/effect-default.js.map +1 -0
- package/dist/rules/effect-path-options.d.ts +59 -0
- package/dist/rules/effect-path-options.d.ts.map +1 -0
- package/dist/rules/effect-path-options.js +114 -0
- package/dist/rules/effect-path-options.js.map +1 -0
- package/dist/rules/effect-rule-core.d.ts +60 -0
- package/dist/rules/effect-rule-core.d.ts.map +1 -0
- package/dist/rules/effect-rule-core.js +509 -0
- package/dist/rules/effect-rule-core.js.map +1 -0
- package/dist/rules/effect-rule-names.d.ts +4 -0
- package/dist/rules/effect-rule-names.d.ts.map +1 -0
- package/dist/rules/effect-rule-names.js +147 -0
- package/dist/rules/effect-rule-names.js.map +1 -0
- package/dist/rules/effect-source-helpers.d.ts +10 -0
- package/dist/rules/effect-source-helpers.d.ts.map +1 -0
- package/dist/rules/effect-source-helpers.js +359 -0
- package/dist/rules/effect-source-helpers.js.map +1 -0
- package/dist/rules/effect-source-scan.d.ts +8 -0
- package/dist/rules/effect-source-scan.d.ts.map +1 -0
- package/dist/rules/effect-source-scan.js +364 -0
- package/dist/rules/effect-source-scan.js.map +1 -0
- package/dist/rules/effect-strict-helpers.d.ts +34 -0
- package/dist/rules/effect-strict-helpers.d.ts.map +1 -0
- package/dist/rules/effect-strict-helpers.js +500 -0
- package/dist/rules/effect-strict-helpers.js.map +1 -0
- package/dist/rules/effect-strict.d.ts +3 -0
- package/dist/rules/effect-strict.d.ts.map +1 -0
- package/dist/rules/effect-strict.js +727 -0
- package/dist/rules/effect-strict.js.map +1 -0
- package/dist/rules/max-line-length.d.ts.map +1 -1
- package/dist/rules/max-line-length.js +25 -7
- package/dist/rules/max-line-length.js.map +1 -1
- package/dist/rules/plugin.d.ts +2 -121
- package/dist/rules/plugin.d.ts.map +1 -1
- package/dist/rules/plugin.js +94 -101
- package/dist/rules/plugin.js.map +1 -1
- package/dist/rules/require-function-doc.d.ts.map +1 -1
- package/dist/rules/require-function-doc.js +32 -21
- package/dist/rules/require-function-doc.js.map +1 -1
- package/dist/rules/source-cache.d.ts +11 -0
- package/dist/rules/source-cache.d.ts.map +1 -0
- package/dist/rules/source-cache.js +50 -0
- package/dist/rules/source-cache.js.map +1 -0
- package/package.json +13 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-default-resource-helpers.js","sourceRoot":"","sources":["../../src/rules/effect-default-resource-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
declare function hasForkBeforeTestClockAdjust(source: string): boolean;
|
|
2
|
+
declare function hasRealSleepWithoutTestClock(source: string): boolean;
|
|
3
|
+
declare function hasTestClockWithoutEffectContext(source: string): boolean;
|
|
4
|
+
export { hasForkBeforeTestClockAdjust, hasRealSleepWithoutTestClock, hasTestClockWithoutEffectContext, };
|
|
5
|
+
//# sourceMappingURL=effect-default-test-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-default-test-helpers.d.ts","sourceRoot":"","sources":["../../src/rules/effect-default-test-helpers.ts"],"names":[],"mappings":"AAEA,iBAAS,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAgB7D;AAED,iBAAS,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAgB7D;AAED,iBAAS,gCAAgC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAgBjE;AAED,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,GACjC,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { stripCommentsAndStrings } from './effect-source-helpers.js';
|
|
2
|
+
function hasForkBeforeTestClockAdjust(source) {
|
|
3
|
+
const code = stripCommentsAndStrings(source);
|
|
4
|
+
const adjustMatches = [...code.matchAll(/TestClock\.adjust\s*\(/g)];
|
|
5
|
+
if (adjustMatches.length === 0) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
return adjustMatches.every((match) => {
|
|
9
|
+
const adjustIndex = match.index;
|
|
10
|
+
const testStart = Math.max(code.lastIndexOf('it.effect', adjustIndex), code.lastIndexOf('it(', adjustIndex));
|
|
11
|
+
const segment = code.slice(testStart === -1 ? 0 : testStart, adjustIndex);
|
|
12
|
+
return /Effect\.fork(?:Scoped)?\b/.test(segment);
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function hasRealSleepWithoutTestClock(source) {
|
|
16
|
+
const code = stripCommentsAndStrings(source);
|
|
17
|
+
const testStartPattern = /\bit(?:\.effect)?\s*\(/g;
|
|
18
|
+
const testStarts = [...code.matchAll(testStartPattern)].map((match) => match.index);
|
|
19
|
+
for (const sleepMatch of code.matchAll(/Effect\.sleep\s*\(/g)) {
|
|
20
|
+
const previousStarts = testStarts.filter((start) => start < sleepMatch.index);
|
|
21
|
+
const testStart = previousStarts.at(-1) ?? 0;
|
|
22
|
+
const nextTestStart = testStarts.find((start) => start > sleepMatch.index) ?? code.length;
|
|
23
|
+
const testBody = code.slice(testStart, nextTestStart);
|
|
24
|
+
if (!/TestClock\./.test(testBody)) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
function hasTestClockWithoutEffectContext(source) {
|
|
31
|
+
const code = stripCommentsAndStrings(source);
|
|
32
|
+
const testStartPattern = /\bit(?:\.effect)?\s*\(/g;
|
|
33
|
+
const testStarts = [...code.matchAll(testStartPattern)].map((match) => match.index);
|
|
34
|
+
for (const clockMatch of code.matchAll(/TestClock\./g)) {
|
|
35
|
+
const previousStarts = testStarts.filter((start) => start < clockMatch.index);
|
|
36
|
+
const testStart = previousStarts.at(-1) ?? 0;
|
|
37
|
+
const nextTestStart = testStarts.find((start) => start > clockMatch.index) ?? code.length;
|
|
38
|
+
const testBody = code.slice(testStart, nextTestStart);
|
|
39
|
+
if (!/(?:it\.effect|TestContext)/.test(testBody)) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
export { hasForkBeforeTestClockAdjust, hasRealSleepWithoutTestClock, hasTestClockWithoutEffectContext, };
|
|
46
|
+
//# sourceMappingURL=effect-default-test-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-default-test-helpers.js","sourceRoot":"","sources":["../../src/rules/effect-default-test-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"effect-default.d.ts","sourceRoot":"","sources":["../../src/rules/effect-default.ts"],"names":[],"mappings":"AA4iCA,QAAA,MAAM,kBAAkB,4DAGtB,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
|