@eslinted/core 13.4.0-rc.0 → 13.4.0-rc.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/dist/factory/index.d.ts +9 -8
- package/dist/factory/index.d.ts.map +1 -1
- package/dist/factory/index.js +12 -6
- package/dist/factory/index.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/scopes/tree.d.ts +1 -10
- package/dist/scopes/tree.d.ts.map +1 -1
- package/dist/scopes/tree.js +6 -10
- package/dist/scopes/tree.js.map +1 -1
- package/package.json +1 -1
- package/src/factory/index.ts +18 -5
- package/src/index.ts +2 -2
- package/src/scopes/tree.ts +6 -10
package/dist/factory/index.d.ts
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
import { ScopeSettings } from "./settings.js";
|
2
2
|
import type { Input } from "../interface/index.js";
|
3
|
+
import type { tree as Tree } from "../scopes/index.js";
|
3
4
|
export declare class Factory {
|
4
5
|
readonly parsers: Input["imports"]["parsers"];
|
5
6
|
readonly common: {
|
@@ -20,16 +21,16 @@ export declare class Factory {
|
|
20
21
|
};
|
21
22
|
};
|
22
23
|
readonly scopes: {
|
23
|
-
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
24
|
-
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
25
|
-
readonly rules: Readonly<Record<"svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
24
|
+
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>;
|
25
|
+
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>;
|
26
|
+
readonly rules: Readonly<Record<"svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", import("../interface/shared/config/rule/index.js").NamedBag[]>>;
|
26
27
|
};
|
27
|
-
constructor(parsers: Input["imports"]["parsers"], { settings: defaultSettings, files: defaultFiles, ignores: defaultIgnores, rules: defaultRules, }: Input["defaults"], { "*": commonExtension, ...scopeExtensions }?: Input["extensions"]);
|
28
|
+
constructor(tree: typeof Tree, parsers: Input["imports"]["parsers"], { settings: defaultSettings, files: defaultFiles, ignores: defaultIgnores, rules: defaultRules, }: Input["defaults"], { "*": commonExtension, ...scopeExtensions }?: Input["extensions"]);
|
28
29
|
scope<S extends keyof typeof ScopeSettings>(scope: S): readonly [
|
29
30
|
] | ({
|
30
31
|
readonly name: `linted/${S}/${string}`;
|
31
|
-
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
32
|
-
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
32
|
+
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>[S];
|
33
|
+
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>[S];
|
33
34
|
readonly rules: Readonly<Record<string, import("../interface/shared/config/rule/index.js").State | readonly [
|
34
35
|
import("../interface/shared/config/rule/index.js").State,
|
35
36
|
...unknown[]
|
@@ -37,8 +38,8 @@ export declare class Factory {
|
|
37
38
|
} | {
|
38
39
|
readonly processor?: "svelte/svelte";
|
39
40
|
readonly name: `linted/${S}/settings`;
|
40
|
-
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
41
|
-
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "
|
41
|
+
readonly files: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>[S];
|
42
|
+
readonly ignores: Readonly<Record<"*" | "svelte" | "mocha" | "jsonc" | "yml" | "ts" | "html" | "json" | "js", string[]>>[S];
|
42
43
|
readonly languageOptions: {
|
43
44
|
parser: unknown;
|
44
45
|
readonly parserOptions?: {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAE9C,qBAAa,OAAO;aAMA,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;IALtD,SAAgB,MAAM;;;;;;;;;;;;;;;;MAAC;IACvB,SAAgB,MAAM;;;;MAAC;gBAGrB,IAAI,EAAE,OAAO,IAAI,EACD,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,EACpD,EACE,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,GACpB,EAAE,KAAK,CAAC,UAAU,CAAC,EACpB,EAAE,GAAG,EAAE,eAAoB,EAAE,GAAG,eAAe,EAAE,GAAE,KAAK,CAAC,YAAY,CAAe;IA2D/E,KAAK,CAAC,CAAC,SAAS,MAAM,OAAO,aAAa,EAAE,KAAK,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiD5D"}
|
package/dist/factory/index.js
CHANGED
@@ -3,7 +3,7 @@ export class Factory {
|
|
3
3
|
parsers;
|
4
4
|
common;
|
5
5
|
scopes;
|
6
|
-
constructor(parsers, { settings: defaultSettings, files: defaultFiles, ignores: defaultIgnores, rules: defaultRules, }, { "*": commonExtension = {}, ...scopeExtensions } = {}) {
|
6
|
+
constructor(tree, parsers, { settings: defaultSettings, files: defaultFiles, ignores: defaultIgnores, rules: defaultRules, }, { "*": commonExtension = {}, ...scopeExtensions } = {}) {
|
7
7
|
this.parsers = parsers;
|
8
8
|
const { noInlineConfig = defaultSettings.noInlineConfig, reportUnusedDisableDirectives = defaultSettings.reportUnusedDisableDirectives, sourceType = defaultSettings.sourceType, ecmaVersion = defaultSettings.ecmaVersion, ignores = [], override = false, } = commonExtension;
|
9
9
|
this.common = {
|
@@ -25,12 +25,18 @@ export class Factory {
|
|
25
25
|
ignores: defaultIgnores,
|
26
26
|
rules: defaultRules,
|
27
27
|
};
|
28
|
-
for (const
|
29
|
-
const { [
|
30
|
-
this.scopes.files[
|
31
|
-
this.scopes.ignores[
|
28
|
+
for (const scope in scopeExtensions) {
|
29
|
+
const { [scope]: { files: moreFiles = [], ignores: moreIgnores = [], rules: moreRules = null, } = {}, } = scopeExtensions;
|
30
|
+
this.scopes.files[scope].push(...moreFiles);
|
31
|
+
this.scopes.ignores[scope].push(...moreIgnores);
|
32
32
|
if (moreRules !== null)
|
33
|
-
this.scopes.rules[
|
33
|
+
this.scopes.rules[scope].push([`${scope}:override`, moreRules]);
|
34
|
+
tree.forEach(([scope, parents]) => {
|
35
|
+
parents.forEach(parent => {
|
36
|
+
this.scopes.files[parent].push(...this.scopes.files[scope]);
|
37
|
+
this.scopes.ignores[parent].push(...this.scopes.ignores[scope]);
|
38
|
+
});
|
39
|
+
});
|
34
40
|
}
|
35
41
|
}
|
36
42
|
scope(scope) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
import { scopes } from "./scopes/index.js";
|
1
|
+
import { scopes, tree } from "./scopes/index.js";
|
2
2
|
import { Factory } from "./factory/index.js";
|
3
3
|
export default function ({ imports: { plugins, parsers }, defaults, extensions, }) {
|
4
4
|
try {
|
5
|
-
const factory = new Factory(parsers, defaults, extensions);
|
5
|
+
const factory = new Factory(tree, parsers, defaults, extensions);
|
6
6
|
return [
|
7
7
|
{ name: `linted/*/plugins`, plugins },
|
8
8
|
factory.common.settings,
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,MAAM,CAAC,OAAO,WAAW,EACvB,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAC7B,QAAQ,EACR,UAAU,GACJ;IACN,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAEjE,OAAO;YACL,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAW;YAC9C,OAAO,CAAC,MAAM,CAAC,QAAQ;YACvB,OAAO,CAAC,MAAM,CAAC,OAAO;YACtB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACxC,CAAC;IACb,CAAC;IACD,OAAO,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
|
package/dist/scopes/tree.d.ts
CHANGED
@@ -1,11 +1,2 @@
|
|
1
|
-
export declare const tree:
|
2
|
-
readonly js: readonly [];
|
3
|
-
readonly ts: readonly ["js"];
|
4
|
-
readonly svelte: readonly ["ts"];
|
5
|
-
readonly mocha: readonly ["ts"];
|
6
|
-
readonly html: readonly [];
|
7
|
-
readonly json: readonly [];
|
8
|
-
readonly jsonc: readonly ["json"];
|
9
|
-
readonly yml: readonly [];
|
10
|
-
};
|
1
|
+
export declare const tree: readonly [readonly ["jsonc", readonly ["json"]], readonly ["mocha", readonly ["ts"]], readonly ["svelte", readonly ["ts"]], readonly ["ts", readonly ["js"]]];
|
11
2
|
//# sourceMappingURL=tree.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/scopes/tree.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/scopes/tree.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,+JAKP,CAAC"}
|
package/dist/scopes/tree.js
CHANGED
@@ -1,11 +1,7 @@
|
|
1
|
-
export const tree =
|
2
|
-
|
3
|
-
|
4
|
-
svelte
|
5
|
-
|
6
|
-
|
7
|
-
json: [],
|
8
|
-
jsonc: ["json"],
|
9
|
-
yml: [],
|
10
|
-
};
|
1
|
+
export const tree = [
|
2
|
+
["jsonc", ["json"]],
|
3
|
+
["mocha", ["ts"]],
|
4
|
+
["svelte", ["ts"]],
|
5
|
+
["ts", ["js"]],
|
6
|
+
];
|
11
7
|
//# sourceMappingURL=tree.js.map
|
package/dist/scopes/tree.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/scopes/tree.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,
|
1
|
+
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/scopes/tree.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,CAAC,OAAO,EAAE,CAAC,MAAM,CAAU,CAAU;IACrC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAU,CAAU;IACnC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAU,CAAU;IACpC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAU,CAAU;CACxB,CAAC"}
|
package/package.json
CHANGED
package/src/factory/index.ts
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
import { ScopeSettings } from "./settings";
|
2
2
|
import type { Input } from "../interface";
|
3
|
+
import type { tree as Tree } from "../scopes";
|
3
4
|
|
4
5
|
export class Factory {
|
5
6
|
public readonly common;
|
6
7
|
public readonly scopes;
|
7
8
|
|
8
9
|
constructor(
|
10
|
+
tree: typeof Tree,
|
9
11
|
public readonly parsers: Input["imports"]["parsers"],
|
10
12
|
{
|
11
13
|
settings: defaultSettings,
|
@@ -44,20 +46,31 @@ export class Factory {
|
|
44
46
|
rules: defaultRules,
|
45
47
|
} as const;
|
46
48
|
|
47
|
-
for (const
|
49
|
+
for (const scope in scopeExtensions) {
|
48
50
|
const {
|
49
|
-
[
|
51
|
+
[scope as keyof typeof scopeExtensions]: {
|
50
52
|
files: moreFiles = [],
|
51
53
|
ignores: moreIgnores = [],
|
52
54
|
rules: moreRules = null,
|
53
55
|
} = {} as const,
|
54
56
|
} = scopeExtensions;
|
55
57
|
|
56
|
-
this.scopes.files[
|
57
|
-
this.scopes.ignores[
|
58
|
+
this.scopes.files[scope as keyof typeof scopeExtensions].push(...moreFiles);
|
59
|
+
this.scopes.ignores[scope as keyof typeof scopeExtensions].push(...moreIgnores);
|
58
60
|
|
59
61
|
if (moreRules !== null)
|
60
|
-
this.scopes.rules[
|
62
|
+
this.scopes.rules[scope as keyof typeof scopeExtensions].push([`${scope}:override`, moreRules]);
|
63
|
+
|
64
|
+
tree.forEach(([scope, parents]) => {
|
65
|
+
parents.forEach(parent => {
|
66
|
+
this.scopes.files[parent].push(
|
67
|
+
...this.scopes.files[scope],
|
68
|
+
);
|
69
|
+
this.scopes.ignores[parent].push(
|
70
|
+
...this.scopes.ignores[scope],
|
71
|
+
);
|
72
|
+
});
|
73
|
+
});
|
61
74
|
}
|
62
75
|
}
|
63
76
|
|
package/src/index.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { Input, Output } from "./interface";
|
2
|
-
import { scopes } from "./scopes";
|
2
|
+
import { scopes, tree } from "./scopes";
|
3
3
|
import { Factory } from "./factory";
|
4
4
|
|
5
5
|
export type * from "./interface";
|
@@ -10,7 +10,7 @@ export default function ({
|
|
10
10
|
extensions,
|
11
11
|
}: Input): Output {
|
12
12
|
try {
|
13
|
-
const factory = new Factory(parsers, defaults, extensions);
|
13
|
+
const factory = new Factory(tree, parsers, defaults, extensions);
|
14
14
|
|
15
15
|
return [
|
16
16
|
{ name: `linted/*/plugins`, plugins } as const,
|
package/src/scopes/tree.ts
CHANGED
@@ -1,10 +1,6 @@
|
|
1
|
-
export const tree =
|
2
|
-
|
3
|
-
|
4
|
-
svelte
|
5
|
-
|
6
|
-
|
7
|
-
json: [],
|
8
|
-
jsonc: ["json"],
|
9
|
-
yml: [],
|
10
|
-
} as const;
|
1
|
+
export const tree = [
|
2
|
+
["jsonc", ["json"] as const] as const,
|
3
|
+
["mocha", ["ts"] as const] as const,
|
4
|
+
["svelte", ["ts"] as const] as const,
|
5
|
+
["ts", ["js"] as const] as const,
|
6
|
+
] as const;
|