eslint-plugin-drizzle 0.1.5 → 0.1.6
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/package.json +29 -29
- package/src/configs/all.d.ts +16 -0
- package/src/configs/all.d.ts.map +1 -0
- package/src/configs/all.js +15 -13
- package/src/configs/all.js.map +1 -0
- package/src/configs/recommended.d.ts +16 -0
- package/src/configs/recommended.d.ts.map +1 -0
- package/src/configs/recommended.js +15 -13
- package/src/configs/recommended.js.map +1 -0
- package/src/enforce-delete-with-where.d.ts.map +1 -0
- package/src/enforce-delete-with-where.js.map +1 -0
- package/src/enforce-update-with-where.d.ts.map +1 -0
- package/src/enforce-update-with-where.js.map +1 -0
- package/src/index.d.ts +40 -0
- package/src/index.d.ts.map +1 -0
- package/{dist → src}/index.js +6 -5
- package/src/index.js.map +1 -0
- package/.github/workflows/npm-publish-github-packages.yml +0 -36
- package/.prettierrc +0 -1
- package/dist/configs/all.d.ts +0 -13
- package/dist/configs/all.d.ts.map +0 -1
- package/dist/configs/all.js +0 -17
- package/dist/configs/all.js.map +0 -1
- package/dist/configs/recommended.d.ts +0 -13
- package/dist/configs/recommended.d.ts.map +0 -1
- package/dist/configs/recommended.js +0 -17
- package/dist/configs/recommended.js.map +0 -1
- package/dist/enforce-delete-with-where.d.ts.map +0 -1
- package/dist/enforce-delete-with-where.js.map +0 -1
- package/dist/enforce-update-with-where.d.ts.map +0 -1
- package/dist/enforce-update-with-where.js.map +0 -1
- package/dist/index.d.ts +0 -10
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/readme.md +0 -71
- package/src/enforce-delete-with-where.ts +0 -41
- package/src/enforce-update-with-where.ts +0 -48
- package/src/index.ts +0 -13
- package/tests/delete.test.ts +0 -39
- package/tests/update.test.ts +0 -46
- package/tsconfig.json +0 -34
- package/tsconfig.tsbuildinfo +0 -1
- package/vitest.config.ts +0 -8
- /package/{dist → src}/enforce-delete-with-where.d.ts +0 -0
- /package/{dist → src}/enforce-delete-with-where.js +0 -0
- /package/{dist → src}/enforce-update-with-where.d.ts +0 -0
- /package/{dist → src}/enforce-update-with-where.js +0 -0
package/package.json
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
2
|
+
"name": "eslint-plugin-drizzle",
|
|
3
|
+
"version": "0.1.6",
|
|
4
|
+
"description": "Eslint plugin for drizzle users to avoid common pitfalls",
|
|
5
|
+
"main": "src/index.js",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"test": "vitest",
|
|
8
|
+
"build": "npx tsc -b"
|
|
9
|
+
},
|
|
10
|
+
"keywords": [
|
|
11
|
+
"eslint",
|
|
12
|
+
"eslintplugin",
|
|
13
|
+
"eslint-plugin",
|
|
14
|
+
"drizzle"
|
|
15
|
+
],
|
|
16
|
+
"author": "Angelelz",
|
|
17
|
+
"license": "ISC",
|
|
18
|
+
"dependencies": {},
|
|
19
|
+
"devDependencies": {
|
|
20
|
+
"@typescript-eslint/utils": "^6.10.0",
|
|
21
|
+
"@typescript-eslint/parser": "^6.10.0",
|
|
22
|
+
"@typescript-eslint/rule-tester": "^6.10.0",
|
|
23
|
+
"eslint": "^8.53.0",
|
|
24
|
+
"prettier": "3.0.3",
|
|
25
|
+
"typescript": "^5.2.2",
|
|
26
|
+
"vitest": "^0.34.6"
|
|
27
|
+
},
|
|
28
|
+
"peerDependencies": {
|
|
29
|
+
"eslint": ">=8.0.0"
|
|
30
|
+
}
|
|
31
31
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
env: {
|
|
3
|
+
es2024: boolean;
|
|
4
|
+
};
|
|
5
|
+
parserOptions: {
|
|
6
|
+
ecmaVersion: string;
|
|
7
|
+
sourceType: string;
|
|
8
|
+
};
|
|
9
|
+
plugins: string[];
|
|
10
|
+
rules: {
|
|
11
|
+
"drizzle/enforce-delete-with-where": string;
|
|
12
|
+
"drizzle/enforce-update-with-where": string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=all.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../../src/configs/all.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wBAaE"}
|
package/src/configs/all.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = {
|
|
4
|
+
env: {
|
|
5
|
+
es2024: true,
|
|
6
|
+
},
|
|
7
|
+
parserOptions: {
|
|
8
|
+
ecmaVersion: "latest",
|
|
9
|
+
sourceType: "module",
|
|
10
|
+
},
|
|
11
|
+
plugins: ["drizzle"],
|
|
12
|
+
rules: {
|
|
13
|
+
"drizzle/enforce-delete-with-where": "error",
|
|
14
|
+
"drizzle/enforce-update-with-where": "error",
|
|
15
|
+
},
|
|
15
16
|
};
|
|
17
|
+
//# sourceMappingURL=all.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../../src/configs/all.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACb,GAAG,EAAE;QACH,MAAM,EAAE,IAAI;KACb;IACD,aAAa,EAAE;QACb,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,QAAQ;KACrB;IACD,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,KAAK,EAAE;QACL,mCAAmC,EAAE,OAAO;QAC5C,mCAAmC,EAAE,OAAO;KAC7C;CACF,CAAC","sourcesContent":["export default {\n env: {\n es2024: true,\n },\n parserOptions: {\n ecmaVersion: \"latest\",\n sourceType: \"module\",\n },\n plugins: [\"drizzle\"],\n rules: {\n \"drizzle/enforce-delete-with-where\": \"error\",\n \"drizzle/enforce-update-with-where\": \"error\",\n },\n};\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
env: {
|
|
3
|
+
es2024: boolean;
|
|
4
|
+
};
|
|
5
|
+
parserOptions: {
|
|
6
|
+
ecmaVersion: string;
|
|
7
|
+
sourceType: string;
|
|
8
|
+
};
|
|
9
|
+
plugins: string[];
|
|
10
|
+
rules: {
|
|
11
|
+
"drizzle/enforce-delete-with-where": string;
|
|
12
|
+
"drizzle/enforce-update-with-where": string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=recommended.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recommended.d.ts","sourceRoot":"","sources":["../../../src/configs/recommended.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wBAaE"}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = {
|
|
4
|
+
env: {
|
|
5
|
+
es2024: true,
|
|
6
|
+
},
|
|
7
|
+
parserOptions: {
|
|
8
|
+
ecmaVersion: "latest",
|
|
9
|
+
sourceType: "module",
|
|
10
|
+
},
|
|
11
|
+
plugins: ["drizzle"],
|
|
12
|
+
rules: {
|
|
13
|
+
"drizzle/enforce-delete-with-where": "error",
|
|
14
|
+
"drizzle/enforce-update-with-where": "error",
|
|
15
|
+
},
|
|
15
16
|
};
|
|
17
|
+
//# sourceMappingURL=recommended.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../../src/configs/recommended.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACb,GAAG,EAAE;QACH,MAAM,EAAE,IAAI;KACb;IACD,aAAa,EAAE;QACb,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,QAAQ;KACrB;IACD,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,KAAK,EAAE;QACL,mCAAmC,EAAE,OAAO;QAC5C,mCAAmC,EAAE,OAAO;KAC7C;CACF,CAAC","sourcesContent":["export default {\n env: {\n es2024: true,\n },\n parserOptions: {\n ecmaVersion: \"latest\",\n sourceType: \"module\",\n },\n plugins: [\"drizzle\"],\n rules: {\n \"drizzle/enforce-delete-with-where\": \"error\",\n \"drizzle/enforce-update-with-where\": \"error\",\n },\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enforce-delete-with-where.d.ts","sourceRoot":"","sources":["../../src/enforce-delete-with-where.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,KAAK,UAAU,GAAG,wBAAwB,CAAC;AAI3C,QAAA,MAAM,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAgC/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enforce-delete-with-where.js","sourceRoot":"","sources":["../../src/enforce-delete-with-where.ts"],"names":[],"mappings":";;AAIA,IAAI,YAAY,GAAW,EAAE,CAAC;AAE9B,MAAM,UAAU,GAAoC;IAClD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8FAA8F;YAChG,GAAG,EAAE,uDAAuD;SAC7D;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,sBAAsB,EACpB,kFAAkF;SACrF;QACD,MAAM,EAAE,EAAE;KACX;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE;oBACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,KAAK,OAAO,EAAE;wBAC/D,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,wBAAwB;yBACpC,CAAC,CAAC;qBACJ;oBACD,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;iBACnC;gBACD,OAAO;YACT,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\n\ntype MessageIds = \"enforceDeleteWithWhere\";\n\nlet lastNodeName: string = \"\";\n\nconst deleteRule: TSESLint.RuleModule<MessageIds> = {\n defaultOptions: [],\n meta: {\n type: \"problem\",\n docs: {\n description:\n \"Enforce that `delete` method is used with `where` to avoid deleting all the rows in a table.\",\n url: \"https://github.com/drizzle-team/eslint-plugin-drizzle\",\n },\n fixable: \"code\",\n messages: {\n enforceDeleteWithWhere:\n \"Avoid deleting all the rows in a table. Use `db.delete(...).where(...)` instead.\",\n },\n schema: [],\n },\n create(context) {\n return {\n MemberExpression: (node) => {\n if (node.property.type === \"Identifier\") {\n if (node.property.name === \"delete\" && lastNodeName !== \"where\") {\n context.report({\n node,\n messageId: \"enforceDeleteWithWhere\",\n });\n }\n lastNodeName = node.property.name;\n }\n return;\n },\n };\n },\n};\n\nexport default deleteRule;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enforce-update-with-where.d.ts","sourceRoot":"","sources":["../../src/enforce-update-with-where.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,KAAK,UAAU,GAAG,wBAAwB,CAAC;AAI3C,QAAA,MAAM,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAuC/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enforce-update-with-where.js","sourceRoot":"","sources":["../../src/enforce-update-with-where.ts"],"names":[],"mappings":";;AAIA,IAAI,YAAY,GAAW,EAAE,CAAC;AAE9B,MAAM,UAAU,GAAoC;IAClD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8FAA8F;YAChG,GAAG,EAAE,uDAAuD;SAC7D;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,sBAAsB,EACpB,2FAA2F;SAC9F;QACD,MAAM,EAAE,EAAE;KACX;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE;oBACvC,IACE,YAAY,KAAK,OAAO;wBACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK;wBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,gBAAgB;wBACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;wBAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;wBACjD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAC7C;wBACA,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,wBAAwB;yBACpC,CAAC,CAAC;qBACJ;oBACD,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;iBACnC;gBACD,OAAO;YACT,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\n\ntype MessageIds = \"enforceUpdateWithWhere\";\n\nlet lastNodeName: string = \"\";\n\nconst deleteRule: TSESLint.RuleModule<MessageIds> = {\n defaultOptions: [],\n meta: {\n type: \"problem\",\n docs: {\n description:\n \"Enforce that `update` method is used with `where` to avoid deleting all the rows in a table.\",\n url: \"https://github.com/drizzle-team/eslint-plugin-drizzle\",\n },\n fixable: \"code\",\n messages: {\n enforceUpdateWithWhere:\n \"Avoid updating all the rows in a table. Use `db.update(...).set(...).where(...)` instead.\",\n },\n schema: [],\n },\n create(context) {\n return {\n MemberExpression: (node) => {\n if (node.property.type === \"Identifier\") {\n if (\n lastNodeName !== \"where\" &&\n node.property.name === \"set\" &&\n node.object.type === \"CallExpression\" &&\n node.object.callee.type === \"MemberExpression\" &&\n node.object.callee.property.type === \"Identifier\" &&\n node.object.callee.property.name === \"update\"\n ) {\n context.report({\n node,\n messageId: \"enforceUpdateWithWhere\",\n });\n }\n lastNodeName = node.property.name;\n }\n return;\n },\n };\n },\n};\n\nexport default deleteRule;\n"]}
|
package/src/index.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
|
+
export declare const rules: {
|
|
3
|
+
"enforce-delete-with-where": TSESLint.RuleModule<"enforceDeleteWithWhere", [], TSESLint.RuleListener>;
|
|
4
|
+
"enforce-update-with-where": TSESLint.RuleModule<"enforceUpdateWithWhere", [], TSESLint.RuleListener>;
|
|
5
|
+
};
|
|
6
|
+
export declare const configs: {
|
|
7
|
+
all: {
|
|
8
|
+
env: {
|
|
9
|
+
es2024: boolean;
|
|
10
|
+
};
|
|
11
|
+
parserOptions: {
|
|
12
|
+
ecmaVersion: string;
|
|
13
|
+
sourceType: string;
|
|
14
|
+
};
|
|
15
|
+
plugins: string[];
|
|
16
|
+
rules: {
|
|
17
|
+
"drizzle/enforce-delete-with-where": string;
|
|
18
|
+
"drizzle/enforce-update-with-where": string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
recommended: {
|
|
22
|
+
env: {
|
|
23
|
+
es2024: boolean;
|
|
24
|
+
};
|
|
25
|
+
parserOptions: {
|
|
26
|
+
ecmaVersion: string;
|
|
27
|
+
sourceType: string;
|
|
28
|
+
};
|
|
29
|
+
plugins: string[];
|
|
30
|
+
rules: {
|
|
31
|
+
"drizzle/enforce-delete-with-where": string;
|
|
32
|
+
"drizzle/enforce-update-with-where": string;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export declare const meta: {
|
|
37
|
+
name: string;
|
|
38
|
+
version: string;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAOzD,eAAO,MAAM,KAAK;;;CAGqD,CAAC;AAExE,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAuB,CAAC;AAE5C,eAAO,MAAM,IAAI;;;CAAoB,CAAC"}
|
package/{dist → src}/index.js
RENAMED
|
@@ -3,15 +3,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.configs = exports.rules = void 0;
|
|
6
|
+
exports.meta = exports.configs = exports.rules = void 0;
|
|
7
7
|
const enforce_delete_with_where_1 = __importDefault(require("./enforce-delete-with-where"));
|
|
8
8
|
const enforce_update_with_where_1 = __importDefault(require("./enforce-update-with-where"));
|
|
9
|
+
const package_json_1 = require("../package.json");
|
|
10
|
+
const all_1 = __importDefault(require("./configs/all"));
|
|
11
|
+
const recommended_1 = __importDefault(require("./configs/recommended"));
|
|
9
12
|
exports.rules = {
|
|
10
13
|
"enforce-delete-with-where": enforce_delete_with_where_1.default,
|
|
11
14
|
"enforce-update-with-where": enforce_update_with_where_1.default,
|
|
12
15
|
};
|
|
13
|
-
exports.configs = {
|
|
14
|
-
|
|
15
|
-
recommended: require("./configs/recommended"),
|
|
16
|
-
};
|
|
16
|
+
exports.configs = { all: all_1.default, recommended: recommended_1.default };
|
|
17
|
+
exports.meta = { name: package_json_1.name, version: package_json_1.version };
|
|
17
18
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AACA,4FAAqD;AACrD,4FAAqD;AACrD,kDAAgD;AAChD,wDAAgC;AAChC,wEAAgD;AAEnC,QAAA,KAAK,GAAG;IACnB,2BAA2B,EAAE,mCAAU;IACvC,2BAA2B,EAAE,mCAAU;CAC8B,CAAC;AAE3D,QAAA,OAAO,GAAG,EAAE,GAAG,EAAH,aAAG,EAAE,WAAW,EAAX,qBAAW,EAAE,CAAC;AAE/B,QAAA,IAAI,GAAG,EAAE,IAAI,EAAJ,mBAAI,EAAE,OAAO,EAAP,sBAAO,EAAE,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\nimport deleteRule from \"./enforce-delete-with-where\";\nimport updateRule from \"./enforce-update-with-where\";\nimport { name, version } from \"../package.json\";\nimport all from \"./configs/all\";\nimport recommended from \"./configs/recommended\";\n\nexport const rules = {\n \"enforce-delete-with-where\": deleteRule,\n \"enforce-update-with-where\": updateRule,\n} satisfies Record<string, TSESLint.RuleModule<string, Array<unknown>>>;\n\nexport const configs = { all, recommended };\n\nexport const meta = { name, version };\n"]}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
|
|
2
|
-
# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages
|
|
3
|
-
|
|
4
|
-
name: Node.js Package
|
|
5
|
-
|
|
6
|
-
on:
|
|
7
|
-
release:
|
|
8
|
-
types: [created]
|
|
9
|
-
|
|
10
|
-
jobs:
|
|
11
|
-
build:
|
|
12
|
-
runs-on: ubuntu-latest
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v3
|
|
15
|
-
- uses: actions/setup-node@v3
|
|
16
|
-
with:
|
|
17
|
-
node-version: 16
|
|
18
|
-
- run: npm ci && npm run build
|
|
19
|
-
- run: npm test
|
|
20
|
-
|
|
21
|
-
publish-gpr:
|
|
22
|
-
needs: build
|
|
23
|
-
runs-on: ubuntu-latest
|
|
24
|
-
permissions:
|
|
25
|
-
contents: read
|
|
26
|
-
packages: write
|
|
27
|
-
steps:
|
|
28
|
-
- uses: actions/checkout@v3
|
|
29
|
-
- uses: actions/setup-node@v3
|
|
30
|
-
with:
|
|
31
|
-
node-version: 16
|
|
32
|
-
registry-url: "https://registry.npmjs.org"
|
|
33
|
-
- run: npm ci && npm run build
|
|
34
|
-
- run: npm publish
|
|
35
|
-
env:
|
|
36
|
-
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
|
package/.prettierrc
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{}
|
package/dist/configs/all.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export namespace env {
|
|
2
|
-
let es2024: boolean;
|
|
3
|
-
}
|
|
4
|
-
export namespace parserOptions {
|
|
5
|
-
let ecmaVersion: string;
|
|
6
|
-
let sourceType: string;
|
|
7
|
-
}
|
|
8
|
-
export let plugins: string[];
|
|
9
|
-
export let rules: {
|
|
10
|
-
"drizzle/enforce-delete-with-where": string;
|
|
11
|
-
"drizzle/enforce-update-with-where": string;
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=all.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"all.d.ts","sourceRoot":"","sources":["../../src/configs/all.js"],"names":[],"mappings":""}
|
package/dist/configs/all.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
module.exports = {
|
|
4
|
-
env: {
|
|
5
|
-
es2024: true,
|
|
6
|
-
},
|
|
7
|
-
parserOptions: {
|
|
8
|
-
ecmaVersion: "latest",
|
|
9
|
-
sourceType: "module",
|
|
10
|
-
},
|
|
11
|
-
plugins: ["drizzle"],
|
|
12
|
-
rules: {
|
|
13
|
-
"drizzle/enforce-delete-with-where": "error",
|
|
14
|
-
"drizzle/enforce-update-with-where": "error",
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=all.js.map
|
package/dist/configs/all.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"all.js","sourceRoot":"","sources":["../../src/configs/all.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,MAAM,CAAC,OAAO,GAAG;IACf,GAAG,EAAE;QACH,MAAM,EAAE,IAAI;KACb;IACD,aAAa,EAAE;QACb,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,QAAQ;KACrB;IACD,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,KAAK,EAAE;QACL,mCAAmC,EAAE,OAAO;QAC5C,mCAAmC,EAAE,OAAO;KAC7C;CACF,CAAC","sourcesContent":["\"use strict\";\nmodule.exports = {\n env: {\n es2024: true,\n },\n parserOptions: {\n ecmaVersion: \"latest\",\n sourceType: \"module\",\n },\n plugins: [\"drizzle\"],\n rules: {\n \"drizzle/enforce-delete-with-where\": \"error\",\n \"drizzle/enforce-update-with-where\": \"error\",\n },\n};\n"]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export namespace env {
|
|
2
|
-
let es2024: boolean;
|
|
3
|
-
}
|
|
4
|
-
export namespace parserOptions {
|
|
5
|
-
let ecmaVersion: string;
|
|
6
|
-
let sourceType: string;
|
|
7
|
-
}
|
|
8
|
-
export let plugins: string[];
|
|
9
|
-
export let rules: {
|
|
10
|
-
"drizzle/enforce-delete-with-where": string;
|
|
11
|
-
"drizzle/enforce-update-with-where": string;
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=recommended.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recommended.d.ts","sourceRoot":"","sources":["../../src/configs/recommended.js"],"names":[],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
module.exports = {
|
|
4
|
-
env: {
|
|
5
|
-
es2024: true,
|
|
6
|
-
},
|
|
7
|
-
parserOptions: {
|
|
8
|
-
ecmaVersion: "latest",
|
|
9
|
-
sourceType: "module",
|
|
10
|
-
},
|
|
11
|
-
plugins: ["drizzle"],
|
|
12
|
-
rules: {
|
|
13
|
-
"drizzle/enforce-delete-with-where": "error",
|
|
14
|
-
"drizzle/enforce-update-with-where": "error",
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=recommended.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../src/configs/recommended.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,MAAM,CAAC,OAAO,GAAG;IACf,GAAG,EAAE;QACH,MAAM,EAAE,IAAI;KACb;IACD,aAAa,EAAE;QACb,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,QAAQ;KACrB;IACD,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,KAAK,EAAE;QACL,mCAAmC,EAAE,OAAO;QAC5C,mCAAmC,EAAE,OAAO;KAC7C;CACF,CAAC","sourcesContent":["\"use strict\";\nmodule.exports = {\n env: {\n es2024: true,\n },\n parserOptions: {\n ecmaVersion: \"latest\",\n sourceType: \"module\",\n },\n plugins: [\"drizzle\"],\n rules: {\n \"drizzle/enforce-delete-with-where\": \"error\",\n \"drizzle/enforce-update-with-where\": \"error\",\n },\n};\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-delete-with-where.d.ts","sourceRoot":"","sources":["../src/enforce-delete-with-where.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,KAAK,UAAU,GAAG,wBAAwB,CAAC;AAI3C,QAAA,MAAM,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAgC/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-delete-with-where.js","sourceRoot":"","sources":["../src/enforce-delete-with-where.ts"],"names":[],"mappings":";;AAIA,IAAI,YAAY,GAAW,EAAE,CAAC;AAE9B,MAAM,UAAU,GAAoC;IAClD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8FAA8F;YAChG,GAAG,EAAE,uDAAuD;SAC7D;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,sBAAsB,EACpB,kFAAkF;SACrF;QACD,MAAM,EAAE,EAAE;KACX;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE;oBACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,KAAK,OAAO,EAAE;wBAC/D,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,wBAAwB;yBACpC,CAAC,CAAC;qBACJ;oBACD,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;iBACnC;gBACD,OAAO;YACT,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\n\ntype MessageIds = \"enforceDeleteWithWhere\";\n\nlet lastNodeName: string = \"\";\n\nconst deleteRule: TSESLint.RuleModule<MessageIds> = {\n defaultOptions: [],\n meta: {\n type: \"problem\",\n docs: {\n description:\n \"Enforce that `delete` method is used with `where` to avoid deleting all the rows in a table.\",\n url: \"https://github.com/drizzle-team/eslint-plugin-drizzle\",\n },\n fixable: \"code\",\n messages: {\n enforceDeleteWithWhere:\n \"Avoid deleting all the rows in a table. Use `db.delete(...).where(...)` instead.\",\n },\n schema: [],\n },\n create(context) {\n return {\n MemberExpression: (node) => {\n if (node.property.type === \"Identifier\") {\n if (node.property.name === \"delete\" && lastNodeName !== \"where\") {\n context.report({\n node,\n messageId: \"enforceDeleteWithWhere\",\n });\n }\n lastNodeName = node.property.name;\n }\n return;\n },\n };\n },\n};\n\nexport default deleteRule;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-update-with-where.d.ts","sourceRoot":"","sources":["../src/enforce-update-with-where.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,KAAK,UAAU,GAAG,wBAAwB,CAAC;AAI3C,QAAA,MAAM,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU,CAuC/C,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-update-with-where.js","sourceRoot":"","sources":["../src/enforce-update-with-where.ts"],"names":[],"mappings":";;AAIA,IAAI,YAAY,GAAW,EAAE,CAAC;AAE9B,MAAM,UAAU,GAAoC;IAClD,cAAc,EAAE,EAAE;IAClB,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE;YACJ,WAAW,EACT,8FAA8F;YAChG,GAAG,EAAE,uDAAuD;SAC7D;QACD,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE;YACR,sBAAsB,EACpB,2FAA2F;SAC9F;QACD,MAAM,EAAE,EAAE;KACX;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE;oBACvC,IACE,YAAY,KAAK,OAAO;wBACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK;wBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,gBAAgB;wBACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB;wBAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY;wBACjD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAC7C;wBACA,OAAO,CAAC,MAAM,CAAC;4BACb,IAAI;4BACJ,SAAS,EAAE,wBAAwB;yBACpC,CAAC,CAAC;qBACJ;oBACD,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;iBACnC;gBACD,OAAO;YACT,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\n\ntype MessageIds = \"enforceUpdateWithWhere\";\n\nlet lastNodeName: string = \"\";\n\nconst deleteRule: TSESLint.RuleModule<MessageIds> = {\n defaultOptions: [],\n meta: {\n type: \"problem\",\n docs: {\n description:\n \"Enforce that `update` method is used with `where` to avoid deleting all the rows in a table.\",\n url: \"https://github.com/drizzle-team/eslint-plugin-drizzle\",\n },\n fixable: \"code\",\n messages: {\n enforceUpdateWithWhere:\n \"Avoid updating all the rows in a table. Use `db.update(...).set(...).where(...)` instead.\",\n },\n schema: [],\n },\n create(context) {\n return {\n MemberExpression: (node) => {\n if (node.property.type === \"Identifier\") {\n if (\n lastNodeName !== \"where\" &&\n node.property.name === \"set\" &&\n node.object.type === \"CallExpression\" &&\n node.object.callee.type === \"MemberExpression\" &&\n node.object.callee.property.type === \"Identifier\" &&\n node.object.callee.property.name === \"update\"\n ) {\n context.report({\n node,\n messageId: \"enforceUpdateWithWhere\",\n });\n }\n lastNodeName = node.property.name;\n }\n return;\n },\n };\n },\n};\n\nexport default deleteRule;\n"]}
|
package/dist/index.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
|
-
export declare const rules: {
|
|
3
|
-
"enforce-delete-with-where": TSESLint.RuleModule<"enforceDeleteWithWhere", [], TSESLint.RuleListener>;
|
|
4
|
-
"enforce-update-with-where": TSESLint.RuleModule<"enforceUpdateWithWhere", [], TSESLint.RuleListener>;
|
|
5
|
-
};
|
|
6
|
-
export declare const configs: {
|
|
7
|
-
all: any;
|
|
8
|
-
recommended: any;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIzD,eAAO,MAAM,KAAK;;;CAGqD,CAAC;AAExE,eAAO,MAAM,OAAO;;;CAGnB,CAAC"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,4FAAqD;AACrD,4FAAqD;AAExC,QAAA,KAAK,GAAG;IACnB,2BAA2B,EAAE,mCAAU;IACvC,2BAA2B,EAAE,mCAAU;CAC8B,CAAC;AAE3D,QAAA,OAAO,GAAG;IACrB,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC,uBAAuB,CAAC;CAC9C,CAAC","sourcesContent":["import type { TSESLint } from \"@typescript-eslint/utils\";\nimport deleteRule from \"./enforce-delete-with-where\";\nimport updateRule from \"./enforce-update-with-where\";\n\nexport const rules = {\n \"enforce-delete-with-where\": deleteRule,\n \"enforce-update-with-where\": updateRule,\n} satisfies Record<string, TSESLint.RuleModule<string, Array<unknown>>>;\n\nexport const configs = {\n all: require(\"./configs/all\"),\n recommended: require(\"./configs/recommended\"),\n};\n"]}
|
package/readme.md
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
# eslint-plugin-drizzle
|
|
2
|
-
|
|
3
|
-
eslint plugin for drizzle users to avoid common pitfalls
|
|
4
|
-
|
|
5
|
-
## Install
|
|
6
|
-
|
|
7
|
-
```sh
|
|
8
|
-
{ npm | yarn | pnpm | bun } install eslint eslint-plugin-drizzle
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Usage
|
|
12
|
-
|
|
13
|
-
Use a [preset config](#preset-configs) or configure each rule in `package.json` or `eslint.config.js`.
|
|
14
|
-
|
|
15
|
-
If you don't use the preset, ensure you use the same `env` and `parserOptions` config as below.
|
|
16
|
-
|
|
17
|
-
```json
|
|
18
|
-
{
|
|
19
|
-
"name": "my-awesome-project",
|
|
20
|
-
"eslintConfig": {
|
|
21
|
-
"env": {
|
|
22
|
-
"es2024": true
|
|
23
|
-
},
|
|
24
|
-
"parserOptions": {
|
|
25
|
-
"ecmaVersion": "latest",
|
|
26
|
-
"sourceType": "module"
|
|
27
|
-
},
|
|
28
|
-
"plugins": ["drizzle"],
|
|
29
|
-
"rules": {
|
|
30
|
-
"drizzle/enforce-delete-with-where": "error",
|
|
31
|
-
"drizzle/enforce-update-with-where": "error"
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Rules
|
|
38
|
-
|
|
39
|
-
**enforce-delete-with-where**: Enforce using `delete` with `where` in `DELETE` statement
|
|
40
|
-
|
|
41
|
-
**enforce-update-with-where**: Enforce using `update` with `where` in `UPDATE` statement
|
|
42
|
-
|
|
43
|
-
## Preset configs
|
|
44
|
-
|
|
45
|
-
### Recommended config
|
|
46
|
-
|
|
47
|
-
This plugin exports a [`recommended` config](src/configs/recommended.js) that enforces good practices.
|
|
48
|
-
|
|
49
|
-
```json
|
|
50
|
-
{
|
|
51
|
-
"name": "my-awesome-project",
|
|
52
|
-
"eslintConfig": {
|
|
53
|
-
"extends": "plugin:drizzle/recommended"
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
### All config
|
|
59
|
-
|
|
60
|
-
This plugin exports an [`all` config](src/configs/all.js) that makes use of all rules (except for deprecated ones).
|
|
61
|
-
|
|
62
|
-
```json
|
|
63
|
-
{
|
|
64
|
-
"name": "my-awesome-project",
|
|
65
|
-
"eslintConfig": {
|
|
66
|
-
"extends": "plugin:drizzle/all"
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
At the moment, `all` is equivalent to `recommended`.
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
|
-
|
|
3
|
-
type MessageIds = "enforceDeleteWithWhere";
|
|
4
|
-
|
|
5
|
-
let lastNodeName: string = "";
|
|
6
|
-
|
|
7
|
-
const deleteRule: TSESLint.RuleModule<MessageIds> = {
|
|
8
|
-
defaultOptions: [],
|
|
9
|
-
meta: {
|
|
10
|
-
type: "problem",
|
|
11
|
-
docs: {
|
|
12
|
-
description:
|
|
13
|
-
"Enforce that `delete` method is used with `where` to avoid deleting all the rows in a table.",
|
|
14
|
-
url: "https://github.com/drizzle-team/eslint-plugin-drizzle",
|
|
15
|
-
},
|
|
16
|
-
fixable: "code",
|
|
17
|
-
messages: {
|
|
18
|
-
enforceDeleteWithWhere:
|
|
19
|
-
"Avoid deleting all the rows in a table. Use `db.delete(...).where(...)` instead.",
|
|
20
|
-
},
|
|
21
|
-
schema: [],
|
|
22
|
-
},
|
|
23
|
-
create(context) {
|
|
24
|
-
return {
|
|
25
|
-
MemberExpression: (node) => {
|
|
26
|
-
if (node.property.type === "Identifier") {
|
|
27
|
-
if (node.property.name === "delete" && lastNodeName !== "where") {
|
|
28
|
-
context.report({
|
|
29
|
-
node,
|
|
30
|
-
messageId: "enforceDeleteWithWhere",
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
lastNodeName = node.property.name;
|
|
34
|
-
}
|
|
35
|
-
return;
|
|
36
|
-
},
|
|
37
|
-
};
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
export default deleteRule;
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
|
-
|
|
3
|
-
type MessageIds = "enforceUpdateWithWhere";
|
|
4
|
-
|
|
5
|
-
let lastNodeName: string = "";
|
|
6
|
-
|
|
7
|
-
const deleteRule: TSESLint.RuleModule<MessageIds> = {
|
|
8
|
-
defaultOptions: [],
|
|
9
|
-
meta: {
|
|
10
|
-
type: "problem",
|
|
11
|
-
docs: {
|
|
12
|
-
description:
|
|
13
|
-
"Enforce that `update` method is used with `where` to avoid deleting all the rows in a table.",
|
|
14
|
-
url: "https://github.com/drizzle-team/eslint-plugin-drizzle",
|
|
15
|
-
},
|
|
16
|
-
fixable: "code",
|
|
17
|
-
messages: {
|
|
18
|
-
enforceUpdateWithWhere:
|
|
19
|
-
"Avoid updating all the rows in a table. Use `db.update(...).set(...).where(...)` instead.",
|
|
20
|
-
},
|
|
21
|
-
schema: [],
|
|
22
|
-
},
|
|
23
|
-
create(context) {
|
|
24
|
-
return {
|
|
25
|
-
MemberExpression: (node) => {
|
|
26
|
-
if (node.property.type === "Identifier") {
|
|
27
|
-
if (
|
|
28
|
-
lastNodeName !== "where" &&
|
|
29
|
-
node.property.name === "set" &&
|
|
30
|
-
node.object.type === "CallExpression" &&
|
|
31
|
-
node.object.callee.type === "MemberExpression" &&
|
|
32
|
-
node.object.callee.property.type === "Identifier" &&
|
|
33
|
-
node.object.callee.property.name === "update"
|
|
34
|
-
) {
|
|
35
|
-
context.report({
|
|
36
|
-
node,
|
|
37
|
-
messageId: "enforceUpdateWithWhere",
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
lastNodeName = node.property.name;
|
|
41
|
-
}
|
|
42
|
-
return;
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
export default deleteRule;
|
package/src/index.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { TSESLint } from "@typescript-eslint/utils";
|
|
2
|
-
import deleteRule from "./enforce-delete-with-where";
|
|
3
|
-
import updateRule from "./enforce-update-with-where";
|
|
4
|
-
|
|
5
|
-
export const rules = {
|
|
6
|
-
"enforce-delete-with-where": deleteRule,
|
|
7
|
-
"enforce-update-with-where": updateRule,
|
|
8
|
-
} satisfies Record<string, TSESLint.RuleModule<string, Array<unknown>>>;
|
|
9
|
-
|
|
10
|
-
export const configs = {
|
|
11
|
-
all: require("./configs/all"),
|
|
12
|
-
recommended: require("./configs/recommended"),
|
|
13
|
-
};
|
package/tests/delete.test.ts
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
// @ts-ignore
|
|
2
|
-
import { RuleTester } from "@typescript-eslint/rule-tester";
|
|
3
|
-
|
|
4
|
-
import myRule from "../src/enforce-delete-with-where";
|
|
5
|
-
|
|
6
|
-
const parserResolver = require.resolve("@typescript-eslint/parser");
|
|
7
|
-
|
|
8
|
-
const ruleTester = new RuleTester({
|
|
9
|
-
parser: parserResolver,
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
ruleTester.run("my-rule", myRule, {
|
|
13
|
-
valid: [
|
|
14
|
-
"const a = db.delete({}).where({});",
|
|
15
|
-
"delete db.something",
|
|
16
|
-
`dataSource
|
|
17
|
-
.delete()
|
|
18
|
-
.where()`,
|
|
19
|
-
],
|
|
20
|
-
invalid: [
|
|
21
|
-
{
|
|
22
|
-
code: "db.delete({})",
|
|
23
|
-
errors: [{ messageId: "enforceDeleteWithWhere" }],
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
code: "const a = await db.delete({})",
|
|
27
|
-
errors: [{ messageId: "enforceDeleteWithWhere" }],
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
code: "const a = db.delete({})",
|
|
31
|
-
errors: [{ messageId: "enforceDeleteWithWhere" }],
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
code: `const a = database
|
|
35
|
-
.delete({})`,
|
|
36
|
-
errors: [{ messageId: "enforceDeleteWithWhere" }],
|
|
37
|
-
},
|
|
38
|
-
],
|
|
39
|
-
});
|
package/tests/update.test.ts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// @ts-ignore
|
|
2
|
-
import { RuleTester } from "@typescript-eslint/rule-tester";
|
|
3
|
-
|
|
4
|
-
import myRule from "../src/enforce-update-with-where";
|
|
5
|
-
|
|
6
|
-
const parserResolver = require.resolve("@typescript-eslint/parser");
|
|
7
|
-
|
|
8
|
-
const ruleTester = new RuleTester({
|
|
9
|
-
parser: parserResolver,
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
ruleTester.run("my-rule", myRule, {
|
|
13
|
-
valid: [
|
|
14
|
-
"const a = db.update({}).set().where({});",
|
|
15
|
-
"const a = db.update();",
|
|
16
|
-
"update()",
|
|
17
|
-
`da
|
|
18
|
-
.update()
|
|
19
|
-
.set()
|
|
20
|
-
.where()`,
|
|
21
|
-
`dataSource
|
|
22
|
-
.update()
|
|
23
|
-
.set()
|
|
24
|
-
.where()`,
|
|
25
|
-
],
|
|
26
|
-
invalid: [
|
|
27
|
-
{
|
|
28
|
-
code: "db.update({}).set()",
|
|
29
|
-
errors: [{ messageId: "enforceUpdateWithWhere" }],
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
code: "const a = await db.update({}).set()",
|
|
33
|
-
errors: [{ messageId: "enforceUpdateWithWhere" }],
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
code: "const a = db.update({}).set",
|
|
37
|
-
errors: [{ messageId: "enforceUpdateWithWhere" }],
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
code: `const a = database
|
|
41
|
-
.update({})
|
|
42
|
-
.set()`,
|
|
43
|
-
errors: [{ messageId: "enforceUpdateWithWhere" }],
|
|
44
|
-
},
|
|
45
|
-
],
|
|
46
|
-
});
|
package/tsconfig.json
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"sourceMap": true,
|
|
4
|
-
"inlineSources": true,
|
|
5
|
-
"strict": true,
|
|
6
|
-
"noUnusedLocals": true,
|
|
7
|
-
"noUnusedParameters": true,
|
|
8
|
-
"noImplicitReturns": true,
|
|
9
|
-
"noFallthroughCasesInSwitch": true,
|
|
10
|
-
"moduleResolution": "nodenext",
|
|
11
|
-
"esModuleInterop": true,
|
|
12
|
-
"forceConsistentCasingInFileNames": true,
|
|
13
|
-
"allowJs": true,
|
|
14
|
-
"resolveJsonModule": true,
|
|
15
|
-
"lib": [
|
|
16
|
-
"esnext"
|
|
17
|
-
],
|
|
18
|
-
"composite": true,
|
|
19
|
-
"incremental": true,
|
|
20
|
-
"declaration": true,
|
|
21
|
-
"declarationMap": true,
|
|
22
|
-
"rootDir": "src",
|
|
23
|
-
"skipLibCheck": true,
|
|
24
|
-
"outDir": "dist",
|
|
25
|
-
"module": "nodenext",
|
|
26
|
-
"target": "es6",
|
|
27
|
-
"exactOptionalPropertyTypes": true,
|
|
28
|
-
"noUncheckedIndexedAccess": true
|
|
29
|
-
},
|
|
30
|
-
"include": [
|
|
31
|
-
"src/**/*.ts",
|
|
32
|
-
"src/**/*.js"
|
|
33
|
-
],
|
|
34
|
-
}
|
package/tsconfig.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"program":{"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.es2021.d.ts","./node_modules/typescript/lib/lib.es2022.d.ts","./node_modules/typescript/lib/lib.es2023.d.ts","./node_modules/typescript/lib/lib.esnext.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.es2021.promise.d.ts","./node_modules/typescript/lib/lib.es2021.string.d.ts","./node_modules/typescript/lib/lib.es2021.weakref.d.ts","./node_modules/typescript/lib/lib.es2021.intl.d.ts","./node_modules/typescript/lib/lib.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.es2022.regexp.d.ts","./node_modules/typescript/lib/lib.es2023.array.d.ts","./node_modules/typescript/lib/lib.es2023.collection.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/typescript/lib/typescript.d.ts","./node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts","./node_modules/@typescript-eslint/types/dist/lib.d.ts","./node_modules/@typescript-eslint/types/dist/parser-options.d.ts","./node_modules/@typescript-eslint/types/dist/ts-estree.d.ts","./node_modules/@typescript-eslint/types/dist/index.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/parser.d.ts","./node_modules/@typescript-eslint/visitor-keys/dist/get-keys.d.ts","./node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.d.ts","./node_modules/@typescript-eslint/visitor-keys/dist/index.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.d.ts","./node_modules/typescript/lib/tsserverlibrary.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/node-utils.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.d.ts","./node_modules/@typescript-eslint/typescript-estree/dist/index.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-estree.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.d.ts","./node_modules/@typescript-eslint/utils/dist/json-schema.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/DefinitionType.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/DefinitionBase.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/CatchClauseDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/ClassNameDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/FunctionNameDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/ImplicitGlobalVariableDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/ImportBindingDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/ParameterDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/TSEnumMemberDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/TSEnumNameDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/TSModuleNameDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/TypeDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/VariableDefinition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/Definition.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/definition/index.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/variable/VariableBase.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/variable/ESLintScopeVariable.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/variable/Variable.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/variable/ImplicitLibVariable.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/variable/index.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/Reference.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeType.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/GlobalScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ModuleScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/TSModuleScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeBase.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/CatchScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ClassScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ClassStaticBlockScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ConditionalTypeScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ForScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionExpressionNameScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionTypeScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/MappedTypeScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/SwitchScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/TSEnumScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/TypeScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/WithScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/Scope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/ClassFieldInitializerScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/BlockScope.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/scope/index.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/VisitorBase.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/Visitor.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/referencer/index.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/analyze.d.ts","./node_modules/@typescript-eslint/scope-manager/dist/index.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/CLIEngine.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-eslint/index.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/misc.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts","./node_modules/@typescript-eslint/utils/dist/ast-utils/index.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts","./node_modules/@typescript-eslint/utils/dist/eslint-utils/index.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.d.ts","./node_modules/@typescript-eslint/utils/dist/ts-utils/index.d.ts","./node_modules/@typescript-eslint/utils/dist/index.d.ts","./src/enforce-delete-with-where.ts","./src/enforce-update-with-where.ts","./src/index.ts","./src/configs/all.js","./src/configs/recommended.js","./node_modules/@types/chai/index.d.ts","./node_modules/@types/chai-subset/index.d.ts","./node_modules/@types/json-schema/index.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/dom-events.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/globals.global.d.ts","./node_modules/@types/node/index.d.ts","./node_modules/@types/semver/classes/semver.d.ts","./node_modules/@types/semver/functions/parse.d.ts","./node_modules/@types/semver/functions/valid.d.ts","./node_modules/@types/semver/functions/clean.d.ts","./node_modules/@types/semver/functions/inc.d.ts","./node_modules/@types/semver/functions/diff.d.ts","./node_modules/@types/semver/functions/major.d.ts","./node_modules/@types/semver/functions/minor.d.ts","./node_modules/@types/semver/functions/patch.d.ts","./node_modules/@types/semver/functions/prerelease.d.ts","./node_modules/@types/semver/functions/compare.d.ts","./node_modules/@types/semver/functions/rcompare.d.ts","./node_modules/@types/semver/functions/compare-loose.d.ts","./node_modules/@types/semver/functions/compare-build.d.ts","./node_modules/@types/semver/functions/sort.d.ts","./node_modules/@types/semver/functions/rsort.d.ts","./node_modules/@types/semver/functions/gt.d.ts","./node_modules/@types/semver/functions/lt.d.ts","./node_modules/@types/semver/functions/eq.d.ts","./node_modules/@types/semver/functions/neq.d.ts","./node_modules/@types/semver/functions/gte.d.ts","./node_modules/@types/semver/functions/lte.d.ts","./node_modules/@types/semver/functions/cmp.d.ts","./node_modules/@types/semver/functions/coerce.d.ts","./node_modules/@types/semver/classes/comparator.d.ts","./node_modules/@types/semver/classes/range.d.ts","./node_modules/@types/semver/functions/satisfies.d.ts","./node_modules/@types/semver/ranges/max-satisfying.d.ts","./node_modules/@types/semver/ranges/min-satisfying.d.ts","./node_modules/@types/semver/ranges/to-comparators.d.ts","./node_modules/@types/semver/ranges/min-version.d.ts","./node_modules/@types/semver/ranges/valid.d.ts","./node_modules/@types/semver/ranges/outside.d.ts","./node_modules/@types/semver/ranges/gtr.d.ts","./node_modules/@types/semver/ranges/ltr.d.ts","./node_modules/@types/semver/ranges/intersects.d.ts","./node_modules/@types/semver/ranges/simplify.d.ts","./node_modules/@types/semver/ranges/subset.d.ts","./node_modules/@types/semver/internals/identifiers.d.ts","./node_modules/@types/semver/index.d.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","impliedFormat":1},{"version":"bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c","impliedFormat":1},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true,"impliedFormat":1},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true,"impliedFormat":1},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true,"impliedFormat":1},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true,"impliedFormat":1},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"375387db607fc72d59f4e65e3cfd86cbfa636aecf33d9d4c6015fd7d95ca42af","impliedFormat":1},{"version":"25e4c8f6fcd620ff6f57d56a754e504eead145ddc06c87370b1b3c515582ea2b","impliedFormat":1},{"version":"ac5c6aefe784ae554ccef97ab165378535dc055402198667b75a4909387e7e8a","impliedFormat":1},{"version":"35b04d2c49afd9ce2742e3aeb54996ef3938101b656de07595bbac71a6ad3264","impliedFormat":1},{"version":"fcf764882c18b958c2a487ad1093d6c9630df63f1e90995b157fe052e9fcc632","impliedFormat":1},{"version":"92ebc3261b20037c4e078cd3d26bccedb719b3eec653925e103b6ced4a936c0d","impliedFormat":1},{"version":"09281df25923a9c185d228d64dc7df00c20bbeb939d097792a9be48dd459ba84","impliedFormat":1},{"version":"09ead3c1c5fa27523924f52730691a7e4e6caa925374f23037e17e84940319be","impliedFormat":1},{"version":"7c6ad54ea23ada6d5573084dd2cc7a4e5850245ec6e39bd3af6a09572cef6ff4","impliedFormat":1},{"version":"31573cbc2e73e351a7c7f65ef1b98500e0370feea1fd0d542e8e25ca89acdffa","impliedFormat":1},{"version":"4db3355a7ec7c08b53f649f1cb202940d296a3664edc636da349f778be092a58","impliedFormat":1},{"version":"b181ff38cfb4c79fb7aa7ef163c06e84fe5b0c3b7a286848a0eaa5b2ec38c706","impliedFormat":1},{"version":"a8c65d6931f57824f95012e902b3c4aaed39aa655183d13a7f7487dcb1bcbf00","impliedFormat":1},{"version":"9a5cece9b6895a117590afa088b6b91db167e25b00e5de1cb5885898fad0a270","impliedFormat":1},{"version":"4d567f85f7734b209da4129603c0ceb307209d9de0e4abdae83ba2916032ce29","impliedFormat":1},{"version":"f9c2563439fc156b5d08d92ba998db0cd1302e65f8bb29a21eae42f97ff4ee6c","impliedFormat":1},{"version":"9cc8c4df4bfed4e4b9da63e18d1568e1b885f38e73f735e447c0ce0d8c0b848b","impliedFormat":1},{"version":"daccf8e3adc587b94fa66367cab7c1d2380165d90139c09394f7003d736c4b67","impliedFormat":1},{"version":"29ac96666b3a92086e8a704580f5f8437337ad80ef948be324de25637d56b3c4","impliedFormat":1},{"version":"3884455a26771bbc6f010da73045949047b5949fc24881e21fafdca913fb40cf","impliedFormat":1},{"version":"2c757867a2d1c49a365da450bd4dbaf0c5facc7f0434c5ce647a8293e49dc453","impliedFormat":1},{"version":"87a714642be4042162972ed9aa51c52893325e707e1a0343ef6372815f42d4df","impliedFormat":1},{"version":"5d1201e776c3167527653c835035e4ad29cd79e0d6b139aa250ca74899e0741e","impliedFormat":1},{"version":"f56ac570386d21d28403947863db9d4a248a9235d5afd519547e8937cf7887fc","impliedFormat":1},{"version":"9acc441d14a127dea0228cd2645203c3285b296f452f723f850dc2941d2b9c7e","impliedFormat":1},{"version":"dc8405dfcfcf77ddfff1cdf02bbc715733618325559d30f228d116b7c3a591f5","impliedFormat":1},{"version":"bac5187f95f7b26f068c22b90693d33a659eb402f15bcc6dd7e1006b534c5105","impliedFormat":1},{"version":"0e7a46e217fb2dbf1058e5abcd5dfe9ea7d7060cbe54d92e0bb56f2aa2b8672d","impliedFormat":1},{"version":"17a3603c479b3ec90e1d0b39112dee575c8127b7148a24144ce8d8593ed2f672","impliedFormat":1},{"version":"2a79737ec344a4e233e1259992eea87f5c218be345fb5f9c9610bd6f5a6a9d8b","impliedFormat":1},{"version":"857864124c3a81507e55dcd7ed8cfa3f0c0f14dcee7acf94ed598cb25526d278","impliedFormat":1},{"version":"0fa6d3bf24b1d056c43e7c1c8f27819b6bad234c647a78e6ce70f8ff5615c70d","impliedFormat":1},{"version":"55e5a83c57e75329952d4138a50cf1564ac2dfd0669c2e01fa9f50ee68196ced","impliedFormat":1},{"version":"50b410acd8c96105e69d93826137269413e120758411ba1dbb992b901e6a2e55","impliedFormat":1},{"version":"0d4e5400743b35d420d83f1a33add04e1be352d45c98f2777708ca40cbb525e6","impliedFormat":1},{"version":"a49a99c6fc351fa5491d7b7efa0dc5666f1400b57f2063ed8f362a93f2f98797","impliedFormat":1},{"version":"e4f5face52c9781d20d2127cf405288a8007cf2e15e87574f677916e534e706a","impliedFormat":1},{"version":"892bf5856b242f0769a7a87c05ca17a7f2075450cbaa0ab589b8944b03804a93","impliedFormat":1},{"version":"34bc4ae02c19ebf98cefa8f4505bcb87413a60fd2544d7d4e6193acbc4108dda","impliedFormat":1},{"version":"5eee4649c790eaab36ab3e1aa60c807ce0e8aaf9a025c90fb40e60b5f5684e6c","impliedFormat":1},{"version":"30d6dc9b525dd82df213f2ce4a2aa0b2935b3ae5366ea164f96e6c08f0968ac2","impliedFormat":1},{"version":"ebe7db5bd9df714d7dddaf077a0a5ab6cf33740c1e39ca0274beeb96bc86828c","impliedFormat":1},{"version":"4a091e7847acab6fe0536b507db54b71270d22fe98513728658e446b08941c8e","impliedFormat":1},{"version":"c467f362b3da83f87dff5bae2f330f17c8086eba5f8eb5240b12b049a7f77db5","impliedFormat":1},{"version":"ad42060f3e0f92a294748f19d9490a8a6a980fb40dda0fd4627991d1361862cc","impliedFormat":1},{"version":"ecbfb361d752394a3728d319a93d0a208c5a00960ec1e5763d23b5944a00e35d","impliedFormat":1},{"version":"60a6e14c616a9977e7e0e196977721232e6977952d0324be4fb932a07d1679e1","impliedFormat":1},{"version":"bd76bdc3263ffb0ca3353fb6a525e8d14323768e48b91927f9ba87183d20fff1","impliedFormat":1},{"version":"2d94e74a3f71bbafeab55ec22b10151b89ae85587bc65f00b83344899ee52e2c","impliedFormat":1},{"version":"711789984a100da43d3e498c17ae14d9702f03fa0fc32cb07bd789a405bf4ab6","impliedFormat":1},{"version":"281d01063c2dd246078dd4079bd7827d2680e74cfc19490d3705675022336683","impliedFormat":1},{"version":"1a9cdf3bfd9f257233439cb40238352fe1c6128005290ecabf5c09633d58e1bd","impliedFormat":1},{"version":"f92d1a32779136c5707ea3a9bfcaa66c719598b7221da13d7b4843d60b7cb1ce","impliedFormat":1},{"version":"abc44e24a9e4d448c16be0592efe21c226348f2cabc4a29baaca1a9d20603e48","impliedFormat":1},{"version":"6d6a44413b5561347e604b9136c09074efd84fac96f105b9e1b65ce2e1c4a105","impliedFormat":1},{"version":"0471d30e55be2eca003ccde4240963c61ed191ef664704aa9d714f66518004ae","impliedFormat":1},{"version":"d1a685ef40d9553092a6da3f019344e9555808f8c79cd837a2b1479a89aff86e","impliedFormat":1},{"version":"78febe79c300eb4e36b21a5f92c64b55659f9b1b4fdac3cccb9481b28e2572a2","impliedFormat":1},{"version":"9a0dbf7e661a3dc3d1842bd0fa64e001037e9086b5c6c3d46c34400afb9c8689","impliedFormat":1},{"version":"b8dffdc3b519083310f3405512c60e673170dd0cef15407f65f9e82790091b1a","impliedFormat":1},{"version":"0cf8620ca1bb4e8b07545a3ae165f49db3daf0fd184e435e0eb1aa16ba512174","impliedFormat":1},{"version":"3c72d7ec3a861bfbc632454bf0bfc514aa965ed26ec1f9450108258a3b6430a7","impliedFormat":1},{"version":"024e0a74ebd335b4c675747eee99453b53813d5ff3ad6cbaa81942a4f4ed57da","impliedFormat":1},{"version":"1eee1bcd570bda3524753ec72a47e4b1597d5fc362a6a83ec4bdc3195320f281","impliedFormat":1},{"version":"3416ba78c03a35b340a9f76647353292a656110f5327c2145fec97ff71f61ba6","impliedFormat":1},{"version":"0e0be8210df9c573b64f81f18a1c284c83d72b472abdfc840cf40cc0a1db3465","impliedFormat":1},{"version":"5199370d76f8fcb993ce69295f10a287d633de43a64a78fd5d2a367a31c4b258","impliedFormat":1},{"version":"aae56a4211c19ab565a4377a606ed2ff444264399560aa9f52b308e650880ecb","impliedFormat":1},{"version":"5b717f6f0f351120cdf828e55537e3e61ea96f82a1a160faa5b9ae39a75c6f68","impliedFormat":1},{"version":"083ae29c6fb50d676b29fd5965144fa7950ac4e3ee4fdf57c587bb3194013ae8","impliedFormat":1},{"version":"7c6b13ae7496db0387dea584ed361ed5ad7f9ee3426da3305a1526c4eedf8c5e","impliedFormat":1},{"version":"830bdfdf80f77b0579625d71c7a810cd07650261990cdbf25c4f6797ee883b1b","impliedFormat":1},{"version":"16bb3683a72c89bbc51886628bbd22522148d2aa3615422eba481bcade151df7","impliedFormat":1},{"version":"55fa234a04eacdf253e0b46d72f6e3bd8a044339c43547a29cf3b9f29ccd050d","impliedFormat":1},{"version":"7be205d4105a61ee771ec1563c6003bcdd7e17bd4a69bd43e0f49756f09e2587","impliedFormat":1},{"version":"f7a240307887227c5dafbea0de4e10ec4726f75b95704965853c7101fcd7e741","impliedFormat":1},{"version":"d2312207819e8646ffd59367976ee611f0865c5b1d1518269a005f58eaf1ccf2","impliedFormat":1},{"version":"0e002469c8f37a8eb2cb874bdbddd2099f0fd0b2f8cd8eec879740d1c1fae256","impliedFormat":1},{"version":"20173928a097871e7ce47443e237a9b34c38f80d62e025d831699ea7671458a0","impliedFormat":1},{"version":"d21aceffdb1f9352ca7867c5d31de852de9fb756564f1eb56afeebcb7016444f","impliedFormat":1},{"version":"ae826fd8f6c1c292b6134b449344f2d2ef7af2386b067293396e6f10435d256c","impliedFormat":1},{"version":"f459d3a7885bb253c3ee856df1d803f3c10a0c40026fbba1692706a44c16250b","impliedFormat":1},{"version":"89a9486323de94ddd3756c1eddd79afe44a503bc6e4a124e871330d1957dbc4c","impliedFormat":1},{"version":"e4ee78d09f1cf85b98ee93c3a7687ba99225c18ab247eb847bbcc2bcaab720f2","impliedFormat":1},{"version":"3e06cb270db9d24be116909e202bb95d8b8f8217d42f9e7fba2fa94a916c50c1","impliedFormat":1},{"version":"828c8fa27ae26629cce25c9cc378198766e6c1966438ad3bd2e52807b5b6cf93","impliedFormat":1},{"version":"12f9dadef22c6042610a08324198df6acc08a42104e750e01cf3744a3deac1cc","impliedFormat":1},{"version":"4fc9a9e2734a295b7ae8dc298c1c2890eb9c287c36c44f22b1534c03aa36deab","impliedFormat":1},{"version":"ad9008da988f63bb7b2fd85a58ae667cdd8d978536bb630a84b6a694be10a5d0","impliedFormat":1},{"version":"aca83cac8fe43118ecfe54444c2ef2bdb336423ccd862977771e89343f40a4c4","impliedFormat":1},{"version":"0cc1286108470352e586a04ad379421501ad5d548aa2106b831faa4d32d07947","impliedFormat":1},{"version":"890f3f3432ebdd5d189e8d6f7331ec491eaa8509bbc3a4317e2eddc4456be74f","impliedFormat":1},{"version":"4ac4ec0b295bca800f86f2959e9ebfe82f29dcf527d3fa67b677f67af73e89d6","impliedFormat":1},{"version":"e54a2a6f1738dc52e9dbfa3c2735fc13d82e2a525d1b66c3852490becc5f1917","impliedFormat":1},{"version":"a97990e77a23aea39060610aef4b4bb92154d5330ecb0b557324ba4c14a1db41","impliedFormat":1},{"version":"8dfdf1096703a2f6bea9cea3c20174aa81f9871b391cd24bf49e46f1b5e7d571","impliedFormat":1},{"version":"4888f20319cb26b99def6b5a9cadc99043fa873ad73c7f26c1ef8caff3cb2fb7","impliedFormat":1},{"version":"e88c3b64c454ef0217daa9dc33bf50321122bfe90fbeb1554351a443f0b2d905","impliedFormat":1},{"version":"b90283ab6c36fc580b06cb293629a9b37eaba24e17ff9ae2f0d874a3f3a962a1","impliedFormat":1},{"version":"79129be37db7700e76de4bb0871234a32e30ae918f2ee344fb5b199dcb411a5d","impliedFormat":1},{"version":"3fb726be8191982a491831b5b05e07f1fa559f1fc598e35fd3900e5858fcc87a","impliedFormat":1},{"version":"417ef79fe6efb251f3bb9db0ee97369a5deae34d06bab67ee47652692bb70ebc","impliedFormat":1},{"version":"eaa22a1079aed7c9c6c466dd72fc6e3daf82401ee8cd9bc5250aefe188d90b59","impliedFormat":1},{"version":"ad8b4616cf417549fa0e88803ab8ecdae1e9be932ad21f2e1d33e9fff2697c02","impliedFormat":1},{"version":"1d6184940abe741966bf954c47e84de3f714cb65cc3bd2af3c819819e6443052","impliedFormat":1},{"version":"1133d81507762b29ae29162f46e1569aa5d2724d40b5adc77830f08e6abe1bf8","impliedFormat":1},{"version":"79e7eb72b4d9ca2d268460d35fa7bfe01db96e93659752bd5fc5cbf5c5be8294","impliedFormat":1},{"version":"9e972232b831687462c01ab9d949a53f3b2799a0b9f7825078240d22319f038a","impliedFormat":1},{"version":"2da2b946df1f0ac928ed168d49420401775ce8175bca15addad490544bcde612","impliedFormat":1},{"version":"00c10594074b7b3012e5ab992607b32e7055b075b871665af8234b198345859d","signature":"b80c35f2ba118f584dd63c0446e9d19aa9312fd025793638aa5f96c4c9b60d7d","impliedFormat":1},{"version":"9a22175610c4dc9a69e2287a6d81bf4d134c9984d52b7420b005f936b02f1281","signature":"6c31f11c292dd1d88e94ee1226cc21c9f317e3a6055e1a41bca61b726c2cdce8","impliedFormat":1},{"version":"dbd1c338414bdb423b69ac98e045978871e913e368875ba5db7ff9cb2089158f","signature":"195f02eaa5c1cc682eff78a61284c251d22b9be061db72a4acacbdcb38b75159","impliedFormat":1},{"version":"911051ce4a26a476b1a46d9289fa1e093093b311c4ff0b6dcfc128e7b2cd335a","signature":"628fc4425460dbe9ce76e0e43f1fe77d0c42d77399d3e762b460aaff98b23eb3","impliedFormat":1},{"version":"911051ce4a26a476b1a46d9289fa1e093093b311c4ff0b6dcfc128e7b2cd335a","signature":"628fc4425460dbe9ce76e0e43f1fe77d0c42d77399d3e762b460aaff98b23eb3","impliedFormat":1},{"version":"1501609e517a632d22e61a7bf3e8c73cd801260baba54203435387c1fef9d9d6","affectsGlobalScope":true,"impliedFormat":1},{"version":"54db406753da16e177f094aa66da79840f447de6d87ddd1543a80c9418c52545","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"09df3b4f1c937f02e7fee2836d4c4d7a63e66db70fd4d4e97126f4542cc21d9d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","impliedFormat":1},{"version":"3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","impliedFormat":1},{"version":"e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","impliedFormat":1},{"version":"471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","impliedFormat":1},{"version":"c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","impliedFormat":1},{"version":"40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","impliedFormat":1},{"version":"8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","impliedFormat":1},{"version":"4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1","impliedFormat":1},{"version":"4d719cfab49ae4045d15cb6bed0f38ad3d7d6eb7f277d2603502a0f862ca3182","affectsGlobalScope":true,"impliedFormat":1},{"version":"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c","impliedFormat":1},{"version":"5a856afb15f9dc9983faa391dde989826995a33983c1cccb173e9606688e9709","affectsGlobalScope":true,"impliedFormat":1},{"version":"546ab07e19116d935ad982e76a223275b53bff7771dab94f433b7ab04652936e","impliedFormat":1},{"version":"7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba","impliedFormat":1},{"version":"aefb5a4a209f756b580eb53ea771cca8aad411603926f307a5e5b8ec6b16dcf6","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"f5a8b7ec4b798c88679194a8ebc25dcb6f5368e6e5811fcda9fe12b0d445b8db","impliedFormat":1},{"version":"b86e1a45b29437f3a99bad4147cb9fe2357617e8008c0484568e5bb5138d6e13","impliedFormat":1},{"version":"b5b719a47968cd61a6f83f437236bb6fe22a39223b6620da81ef89f5d7a78fb7","impliedFormat":1},{"version":"42c431e7965b641106b5e25ab3283aa4865ca7bb9909610a2abfa6226e4348be","impliedFormat":1},{"version":"0b7e732af0a9599be28c091d6bd1cb22c856ec0d415d4749c087c3881ca07a56","impliedFormat":1},{"version":"b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e","impliedFormat":1},{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d6138a264ddc6f94f16e99d4e117a2d6eb31b217891cf091b6437a2f114d561","affectsGlobalScope":true,"impliedFormat":1},{"version":"3b4c85eea12187de9929a76792b98406e8778ce575caca8c574f06da82622c54","impliedFormat":1},{"version":"f788131a39c81e0c9b9e463645dd7132b5bc1beb609b0e31e5c1ceaea378b4df","impliedFormat":1},{"version":"0c236069ce7bded4f6774946e928e4b3601894d294054af47a553f7abcafe2c1","impliedFormat":1},{"version":"21894466693f64957b9bd4c80fa3ec7fdfd4efa9d1861e070aca23f10220c9b2","impliedFormat":1},{"version":"396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","impliedFormat":1},{"version":"21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac","impliedFormat":1},{"version":"6ec93c745c5e3e25e278fa35451bf18ef857f733de7e57c15e7920ac463baa2a","affectsGlobalScope":true,"impliedFormat":1},{"version":"a5fe4cc622c3bf8e09ababde5f4096ceac53163eefcd95e9cd53f062ff9bb67a","impliedFormat":1},{"version":"30c2ec6abf6aaa60eb4f32fb1235531506b7961c6d1bdc7430711aec8fd85295","impliedFormat":1},{"version":"0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7","impliedFormat":1},{"version":"308b84e1943ef30015469770e931eb21b795348893b2a6562ca54ea8f0b3c41c","affectsGlobalScope":true,"impliedFormat":1},{"version":"d48009cbe8a30a504031cc82e1286f78fed33b7a42abf7602c23b5547b382563","affectsGlobalScope":true,"impliedFormat":1},{"version":"7aaeb5e62f90e1b2be0fc4844df78cdb1be15c22b427bc6c39d57308785b8f10","impliedFormat":1},{"version":"3ba30205a029ebc0c91d7b1ab4da73f6277d730ca1fc6692d5a9144c6772c76b","impliedFormat":1},{"version":"d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","impliedFormat":1},{"version":"8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","impliedFormat":1},{"version":"01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","impliedFormat":1},{"version":"458b216959c231df388a5de9dcbcafd4b4ca563bc3784d706d0455467d7d4942","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"f8c87b19eae111f8720b0345ab301af8d81add39621b63614dfc2d15fd6f140a","impliedFormat":1},{"version":"831c22d257717bf2cbb03afe9c4bcffc5ccb8a2074344d4238bf16d3a857bb12","impliedFormat":1},{"version":"24ba151e213906027e2b1f5223d33575a3612b0234a0e2b56119520bbe0e594b","affectsGlobalScope":true,"impliedFormat":1},{"version":"cbf046714f3a3ba2544957e1973ac94aa819fa8aa668846fa8de47eb1c41b0b2","affectsGlobalScope":true,"impliedFormat":1},{"version":"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","impliedFormat":1},{"version":"eae74e3d50820f37c72c0679fed959cd1e63c98f6a146a55b8c4361582fa6a52","impliedFormat":1},{"version":"7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","impliedFormat":1},{"version":"7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df","impliedFormat":1},{"version":"aed89e3c18f4c659ee8153a76560dffda23e2d801e1e60d7a67abd84bc555f8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ed13c80faeb2b7160bffb4926ff299c468e67a37a645b3ae0917ba0db633c1b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e393915d3dc385e69c0e2390739c87b2d296a610662eb0b1cb85224e55992250","impliedFormat":1},{"version":"2f940651c2f30e6b29f8743fae3f40b7b1c03615184f837132b56ea75edad08b","impliedFormat":1},{"version":"5749c327c3f789f658072f8340786966c8b05ea124a56c1d8d60e04649495a4d","impliedFormat":1},{"version":"c9d62b2a51b2ff166314d8be84f6881a7fcbccd37612442cf1c70d27d5352f50","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","impliedFormat":1},{"version":"cc0700b1b97e18a3d5d9184470502d8762ec85158819d662730c3a8c5d702584","impliedFormat":1},{"version":"9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","impliedFormat":1},{"version":"c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","impliedFormat":1},{"version":"8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","impliedFormat":1},{"version":"86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","impliedFormat":1},{"version":"42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","impliedFormat":1},{"version":"ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","impliedFormat":1},{"version":"83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","impliedFormat":1},{"version":"1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","impliedFormat":1},{"version":"0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","impliedFormat":1},{"version":"cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","impliedFormat":1},{"version":"c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","impliedFormat":1},{"version":"f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","impliedFormat":1},{"version":"0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","impliedFormat":1},{"version":"7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","impliedFormat":1},{"version":"bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","impliedFormat":1},{"version":"52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","impliedFormat":1},{"version":"770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","impliedFormat":1},{"version":"d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","impliedFormat":1},{"version":"799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","impliedFormat":1},{"version":"2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","impliedFormat":1},{"version":"9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","impliedFormat":1},{"version":"397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","impliedFormat":1},{"version":"a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","impliedFormat":1},{"version":"a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","impliedFormat":1},{"version":"f77ff4cd234d3fd18ddd5aeadb6f94374511931976d41f4b9f594cb71f7ce6f3","impliedFormat":1},{"version":"4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","impliedFormat":1},{"version":"4f18b4e6081e5e980ef53ddf57b9c959d36cffe1eb153865f512a01aeffb5e1e","impliedFormat":1},{"version":"7f17d4846a88eca5fe71c4474ef687ee89c4acf9b5372ab9b2ee68644b7e0fe0","impliedFormat":1},{"version":"b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","impliedFormat":1},{"version":"c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","impliedFormat":1},{"version":"14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","impliedFormat":1},{"version":"a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","impliedFormat":1},{"version":"f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","impliedFormat":1},{"version":"3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","impliedFormat":1},{"version":"662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","impliedFormat":1},{"version":"c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","impliedFormat":1},{"version":"2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"85f8ebd7f245e8bf29da270e8b53dcdd17528826ffd27176c5fc7e426213ef5a","impliedFormat":1}],"root":[[173,177]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"exactOptionalPropertyTypes":true,"inlineSources":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":2},"fileIdsList":[[178,259],[259],[181,259],[216,259],[217,222,250,259],[218,229,230,237,247,258,259],[218,219,229,237,259],[220,259],[221,222,230,238,259],[222,247,255,259],[223,225,229,237,259],[224,259],[225,226,259],[229,259],[227,229,259],[216,229,259],[229,230,231,247,258,259],[229,230,231,244,247,250,259],[214,259,263],[225,229,232,237,247,258,259],[229,230,232,233,237,247,255,258,259],[232,234,247,255,258,259],[181,182,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265],[229,235,259],[236,258,259,263],[225,229,237,247,259],[238,259],[239,259],[216,240,259],[241,257,259,263],[242,259],[243,259],[229,244,245,259],[244,246,259,261],[217,229,247,248,249,250,259],[217,247,249,259],[247,248,259],[250,259],[251,259],[216,247,259],[229,253,254,259],[253,254,259],[222,237,247,255,259],[256,259],[237,257,259],[217,232,243,258,259],[222,259],[247,259,260],[236,259,261],[259,262],[217,222,229,231,240,247,258,259,261,263],[247,259,264],[259,267,306],[259,267,291,306],[259,306],[259,267],[259,267,292,306],[259,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305],[259,292,306],[69,113,123,134,137,259],[69,135,142,259],[69,94,95,259],[96,97,98,99,100,101,102,103,104,105,106,259],[69,94,259],[94,96,97,98,99,100,101,102,103,104,105,106,107,259],[108,113,114,135,137,139,140,143,259],[69,138,259],[69,113,137,259],[69,114,135,137,140,259],[69,138,139,259],[69,77,259],[141,259],[69,115,120,133,135,259],[69,113,114,115,120,133,135,259],[69,113,115,120,133,135,259],[116,117,118,119,121,122,123,124,125,126,127,128,129,130,131,132,134,136,259],[69,108,113,114,115,116,117,118,119,133,135,259],[115,116,117,118,119,121,122,124,125,126,127,128,129,130,131,132,133,134,136,259],[69,109,259],[110,111,137,259],[109,259],[69,108,114,137,259],[110,111,112,259],[64,259],[65,66,67,68,259],[64,66,259],[65,68,259],[64,81,259],[64,82,259],[72,73,74,78,82,83,84,85,86,87,88,259],[64,72,259],[69,259],[64,72,79,80,82,259],[64,69,72,259],[64,72,73,259],[72,77,259],[64,69,70,259],[69,70,71,259],[90,152,259],[153,154,155,156,157,259],[90,259],[158,159,160,161,259],[152,259],[147,259],[163,164,165,166,167,168,259],[90,93,152,162,169,171,259],[147,148,259],[148,259],[90,92,145,146,147,259],[90,91,93,145,146,148,259],[90,92,147,148,259],[144,259],[90,145,259],[91,92,145,146,147,148,149,150,151,259],[69,89,259],[170,259],[75,76,259],[191,195,258,259],[191,247,258,259],[186,259],[188,191,255,258,259],[237,255,259],[259,266],[186,259,266],[188,191,237,258,259],[183,184,187,190,217,229,247,258,259],[183,189,259],[187,191,217,250,258,259,266],[217,259,266],[207,217,259,266],[185,186,259,266],[191,259],[185,186,187,188,189,190,191,192,193,195,196,197,198,199,200,201,202,203,204,205,206,208,209,210,211,212,213,259],[191,198,199,259],[189,191,199,200,259],[190,259],[183,186,191,259],[191,195,199,200,259],[195,259],[189,191,194,258,259],[183,188,189,191,195,198,259],[217,247,259],[186,191,207,217,259,263,266],[172,259],[172,173,174,259],[172]],"referencedMap":[[179,1],[178,2],[180,2],[181,3],[182,3],[216,4],[217,5],[218,6],[219,7],[220,8],[221,9],[222,10],[223,11],[224,12],[225,13],[226,13],[228,14],[227,15],[229,16],[230,17],[231,18],[215,19],[265,2],[232,20],[233,21],[234,22],[266,23],[235,24],[236,25],[237,26],[238,27],[239,28],[240,29],[241,30],[242,31],[243,32],[244,33],[245,33],[246,34],[247,35],[249,36],[248,37],[250,38],[251,39],[252,40],[253,41],[254,42],[255,43],[256,44],[257,45],[258,46],[259,47],[260,48],[261,49],[262,50],[263,51],[264,52],[291,53],[292,54],[267,55],[270,55],[289,53],[290,53],[280,53],[279,56],[277,53],[272,53],[285,53],[283,53],[287,53],[271,53],[284,53],[288,53],[273,53],[274,53],[286,53],[268,53],[275,53],[276,53],[278,53],[282,53],[293,57],[281,53],[269,53],[306,58],[305,2],[300,57],[302,59],[301,57],[294,57],[295,57],[297,57],[299,57],[303,59],[304,59],[296,59],[298,59],[135,60],[143,61],[96,62],[97,62],[107,63],[95,64],[94,2],[98,62],[99,62],[100,62],[101,62],[102,62],[103,62],[104,62],[105,62],[106,62],[108,65],[144,66],[139,67],[114,68],[141,69],[140,70],[138,71],[142,72],[136,73],[121,73],[134,73],[122,73],[123,73],[124,73],[125,73],[126,73],[116,74],[127,73],[117,75],[128,73],[118,73],[133,76],[120,77],[115,2],[129,73],[130,73],[119,73],[131,73],[132,73],[137,78],[110,79],[112,80],[111,81],[109,82],[113,83],[65,84],[69,85],[66,2],[67,86],[68,87],[88,2],[84,84],[82,88],[83,89],[86,84],[89,90],[87,91],[80,92],[81,93],[73,94],[74,95],[78,96],[71,97],[72,98],[70,84],[85,2],[154,2],[156,99],[153,99],[158,100],[155,101],[157,99],[159,101],[162,102],[160,101],[161,101],[165,103],[166,104],[163,2],[167,2],[164,99],[169,105],[168,2],[172,106],[93,2],[91,101],[149,107],[150,108],[148,109],[92,92],[147,110],[151,111],[145,112],[146,113],[152,114],[90,115],[171,116],[170,2],[75,92],[77,117],[76,2],[62,2],[63,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[22,2],[26,2],[23,2],[24,2],[25,2],[27,2],[28,2],[29,2],[5,2],[30,2],[31,2],[32,2],[33,2],[6,2],[37,2],[34,2],[35,2],[36,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[56,2],[54,2],[55,2],[57,2],[58,2],[10,2],[1,2],[11,2],[61,2],[60,2],[59,2],[79,2],[64,2],[198,118],[205,119],[197,118],[212,120],[189,121],[188,122],[211,123],[206,124],[209,125],[191,126],[190,127],[186,128],[185,129],[208,130],[187,131],[192,132],[193,2],[196,132],[183,2],[214,133],[213,132],[200,134],[201,135],[203,136],[199,137],[202,138],[207,123],[194,139],[195,140],[204,141],[184,142],[210,143],[176,2],[177,2],[173,144],[174,144],[175,145]],"exportedModulesMap":[[179,1],[178,2],[180,2],[181,3],[182,3],[216,4],[217,5],[218,6],[219,7],[220,8],[221,9],[222,10],[223,11],[224,12],[225,13],[226,13],[228,14],[227,15],[229,16],[230,17],[231,18],[215,19],[265,2],[232,20],[233,21],[234,22],[266,23],[235,24],[236,25],[237,26],[238,27],[239,28],[240,29],[241,30],[242,31],[243,32],[244,33],[245,33],[246,34],[247,35],[249,36],[248,37],[250,38],[251,39],[252,40],[253,41],[254,42],[255,43],[256,44],[257,45],[258,46],[259,47],[260,48],[261,49],[262,50],[263,51],[264,52],[291,53],[292,54],[267,55],[270,55],[289,53],[290,53],[280,53],[279,56],[277,53],[272,53],[285,53],[283,53],[287,53],[271,53],[284,53],[288,53],[273,53],[274,53],[286,53],[268,53],[275,53],[276,53],[278,53],[282,53],[293,57],[281,53],[269,53],[306,58],[305,2],[300,57],[302,59],[301,57],[294,57],[295,57],[297,57],[299,57],[303,59],[304,59],[296,59],[298,59],[135,60],[143,61],[96,62],[97,62],[107,63],[95,64],[94,2],[98,62],[99,62],[100,62],[101,62],[102,62],[103,62],[104,62],[105,62],[106,62],[108,65],[144,66],[139,67],[114,68],[141,69],[140,70],[138,71],[142,72],[136,73],[121,73],[134,73],[122,73],[123,73],[124,73],[125,73],[126,73],[116,74],[127,73],[117,75],[128,73],[118,73],[133,76],[120,77],[115,2],[129,73],[130,73],[119,73],[131,73],[132,73],[137,78],[110,79],[112,80],[111,81],[109,82],[113,83],[65,84],[69,85],[66,2],[67,86],[68,87],[88,2],[84,84],[82,88],[83,89],[86,84],[89,90],[87,91],[80,92],[81,93],[73,94],[74,95],[78,96],[71,97],[72,98],[70,84],[85,2],[154,2],[156,99],[153,99],[158,100],[155,101],[157,99],[159,101],[162,102],[160,101],[161,101],[165,103],[166,104],[163,2],[167,2],[164,99],[169,105],[168,2],[172,106],[93,2],[91,101],[149,107],[150,108],[148,109],[92,92],[147,110],[151,111],[145,112],[146,113],[152,114],[90,115],[171,116],[170,2],[75,92],[77,117],[76,2],[62,2],[63,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[22,2],[26,2],[23,2],[24,2],[25,2],[27,2],[28,2],[29,2],[5,2],[30,2],[31,2],[32,2],[33,2],[6,2],[37,2],[34,2],[35,2],[36,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[56,2],[54,2],[55,2],[57,2],[58,2],[10,2],[1,2],[11,2],[61,2],[60,2],[59,2],[79,2],[64,2],[198,118],[205,119],[197,118],[212,120],[189,121],[188,122],[211,123],[206,124],[209,125],[191,126],[190,127],[186,128],[185,129],[208,130],[187,131],[192,132],[193,2],[196,132],[183,2],[214,133],[213,132],[200,134],[201,135],[203,136],[199,137],[202,138],[207,123],[194,139],[195,140],[204,141],[184,142],[210,143],[173,146],[174,146],[175,146]],"semanticDiagnosticsPerFile":[179,178,180,181,182,216,217,218,219,220,221,222,223,224,225,226,228,227,229,230,231,215,265,232,233,234,266,235,236,237,238,239,240,241,242,243,244,245,246,247,249,248,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,291,292,267,270,289,290,280,279,277,272,285,283,287,271,284,288,273,274,286,268,275,276,278,282,293,281,269,306,305,300,302,301,294,295,297,299,303,304,296,298,135,143,96,97,107,95,94,98,99,100,101,102,103,104,105,106,108,144,139,114,141,140,138,142,136,121,134,122,123,124,125,126,116,127,117,128,118,133,120,115,129,130,119,131,132,137,110,112,111,109,113,65,69,66,67,68,88,84,82,83,86,89,87,80,81,73,74,78,71,72,70,85,154,156,153,158,155,157,159,162,160,161,165,166,163,167,164,169,168,172,93,91,149,150,148,92,147,151,145,146,152,90,171,170,75,77,76,62,63,13,12,2,14,15,16,17,18,19,20,21,3,4,22,26,23,24,25,27,28,29,5,30,31,32,33,6,37,34,35,36,38,7,39,44,45,40,41,42,43,8,49,46,47,48,50,9,51,52,53,56,54,55,57,58,10,1,11,61,60,59,79,64,198,205,197,212,189,188,211,206,209,191,190,186,185,208,187,192,193,196,183,214,213,200,201,203,199,202,207,194,195,204,184,210,176,177,173,174,175],"latestChangedDtsFile":"./dist/configs/recommended.d.ts"},"version":"5.2.2"}
|
package/vitest.config.ts
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|