@fenge/eslint-config 0.6.13 → 0.6.15
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/README.md +1 -1
- package/dist/config/base.d.ts.map +1 -1
- package/dist/config/base.js +6 -23
- package/dist/config/javascript.d.ts +13 -11
- package/dist/config/javascript.d.ts.map +1 -1
- package/dist/config/js/base.d.ts +13 -12
- package/dist/config/js/base.d.ts.map +1 -1
- package/dist/config/js/base.js +15 -17
- package/dist/config/ts/base.d.ts +25 -12
- package/dist/config/ts/base.d.ts.map +1 -1
- package/dist/config/ts/base.js +16 -1
- package/dist/config/typescript.d.ts +25 -12
- package/dist/config/typescript.d.ts.map +1 -1
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ A strict eslint config preset containing a comprehensive set of rules for lintin
|
|
|
11
11
|
## Feature
|
|
12
12
|
|
|
13
13
|
- Lint `js` / `mjs` / `cjs` / `jsx` / `ts` / `mts` / `cts` / `tsx` / `package.json` files only.
|
|
14
|
-
- Strict. More than
|
|
14
|
+
- Strict. More than 400+ rules.
|
|
15
15
|
- Highly customizable by omitting unwanted.
|
|
16
16
|
- Type safe. TypeScript friendly.
|
|
17
17
|
- Pure JavaScript project friendly.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/config/base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC;AAE/C,wBAAgB,IAAI,CAClB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,GAChC,MAAM,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/config/base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC;AAE/C,wBAAgB,IAAI,CAClB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,GAChC,MAAM,CAAC,MAAM,EAAE,CAuDjB"}
|
package/dist/config/base.js
CHANGED
|
@@ -4,12 +4,15 @@ export function base(options, enabled) {
|
|
|
4
4
|
const filesMap = {
|
|
5
5
|
js: "**/*.{js,cjs,mjs,jsx}",
|
|
6
6
|
ts: "**/*.{ts,cts,mts,tsx}",
|
|
7
|
-
pkg: "package.json",
|
|
7
|
+
pkg: "**/package.json",
|
|
8
8
|
};
|
|
9
9
|
const blockedFilesMap = {
|
|
10
10
|
"**/.env.*": ".*.env",
|
|
11
11
|
"**/.*rc": "*.config.js",
|
|
12
12
|
"**/.*rc.*": "*.config.*",
|
|
13
|
+
"**/*.{cjs,mjs,cts,mts}": "*.{js,ts}",
|
|
14
|
+
"**/*.spec.{js,cjs,mjs,jsx,ts,cts,mts,tsx}": "*.test.{js,cjs,mjs,jsx,ts,cts,mts,tsx}", // Node.js built-in support *.test.js. See https://nodejs.org/api/test.html#running-tests-from-the-command-line.
|
|
15
|
+
"**/.*.{js,cjs,mjs,jsx,ts,cts,mts,tsx}": "*.{js,cjs,mjs,jsx,ts,cts,mts,tsx}",
|
|
13
16
|
};
|
|
14
17
|
const enabledPatterns = [...enabled].map((key) => filesMap[key]);
|
|
15
18
|
const blockedPatterns = Object.keys(blockedFilesMap);
|
|
@@ -32,17 +35,8 @@ export function base(options, enabled) {
|
|
|
32
35
|
},
|
|
33
36
|
{
|
|
34
37
|
name: "fenge/common",
|
|
35
|
-
files: enabledPatterns,
|
|
38
|
+
files: [...enabledPatterns, ...blockedPatterns],
|
|
36
39
|
linterOptions: options,
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
name: "fenge/disallowed-files",
|
|
40
|
-
files: blockedPatterns,
|
|
41
|
-
ignores: enabledPatterns,
|
|
42
|
-
processor: {
|
|
43
|
-
preprocess: (_text, _filename) => [""],
|
|
44
|
-
postprocess: (messages) => messages[0] ?? [],
|
|
45
|
-
},
|
|
46
40
|
plugins: {
|
|
47
41
|
"check-file": checkFilePlugin,
|
|
48
42
|
},
|
|
@@ -50,17 +44,6 @@ export function base(options, enabled) {
|
|
|
50
44
|
"check-file/filename-blocklist": ["error", blockedFilesMap],
|
|
51
45
|
},
|
|
52
46
|
},
|
|
53
|
-
// Ignore unsupported files.
|
|
54
|
-
// This config is for suppressing error when linting a directory which does not contain supported files.
|
|
55
|
-
{
|
|
56
|
-
name: "fenge/ignore",
|
|
57
|
-
files: ["**"], // I've tried all. Only '**' works.
|
|
58
|
-
ignores: [...enabledPatterns, ...blockedPatterns],
|
|
59
|
-
processor: {
|
|
60
|
-
preprocess: (_text, _filename) => [""],
|
|
61
|
-
postprocess: (_messages) => [], // Returning empty array to ignore all errors
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
47
|
];
|
|
65
48
|
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSxvQkFBb0IsQ0FBQztBQUU5QyxPQUFPLGVBQWUsTUFBTSwwQkFBMEIsQ0FBQztBQUl2RCxNQUFNLFVBQVUsSUFBSSxDQUNsQixPQUFvQixFQUNwQixPQUFpQztJQUVqQyxNQUFNLFFBQVEsR0FBRztRQUNmLEVBQUUsRUFBRSx1QkFBdUI7UUFDM0IsRUFBRSxFQUFFLHVCQUF1QjtRQUMzQixHQUFHLEVBQUUsaUJBQWlCO0tBQ2QsQ0FBQztJQUNYLE1BQU0sZUFBZSxHQUFHO1FBQ3RCLFdBQVcsRUFBRSxRQUFRO1FBQ3JCLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLFdBQVcsRUFBRSxZQUFZO1FBRXpCLHdCQUF3QixFQUFFLFdBQVc7UUFDckMsMkNBQTJDLEVBQ3pDLHdDQUF3QyxFQUFFLGdIQUFnSDtRQUM1Six1Q0FBdUMsRUFDckMsbUNBQW1DO0tBQzdCLENBQUM7SUFFWCxNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRSxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JELE9BQU87UUFDTCx1SEFBdUg7UUFDdkg7WUFDRSxJQUFJLEVBQUUsaUJBQWlCO1lBQ3ZCLDhEQUE4RDtZQUM5RCxzREFBc0Q7WUFDdEQsd0dBQXdHO1lBQ3hHLE9BQU8sRUFBRSxDQUNQLFlBQVksQ0FBQyxTQUFTLENBQ3BCLEtBQUssRUFDTDtnQkFDRSxVQUFVO2dCQUNWLFVBQVU7Z0JBQ1YsV0FBVztnQkFDWCxvQkFBb0I7Z0JBQ3BCLGFBQWE7YUFDZCxFQUNELEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUNyQixDQUFDLE1BQU0sSUFBSSxFQUFFLENBQ2Y7aUJBQ0UsS0FBSyxDQUFDLElBQUksQ0FBQztpQkFDWCxNQUFNLENBQUMsT0FBTyxDQUFDO1NBQ25CO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixLQUFLLEVBQUUsQ0FBQyxHQUFHLGVBQWUsRUFBRSxHQUFHLGVBQWUsQ0FBQztZQUMvQyxhQUFhLEVBQUUsT0FBTztZQUN0QixPQUFPLEVBQUU7Z0JBQ1AsWUFBWSxFQUFFLGVBQWU7YUFDOUI7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsK0JBQStCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDO2FBQzVEO1NBQ0Y7S0FDTyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjaGlsZFByb2Nlc3MgZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHR5cGUgeyBMaW50ZXIgfSBmcm9tIFwiZXNsaW50XCI7XG5pbXBvcnQgY2hlY2tGaWxlUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLWNoZWNrLWZpbGVcIjtcblxuZXhwb3J0IHR5cGUgQmFzZU9wdGlvbnMgPSBMaW50ZXIuTGludGVyT3B0aW9ucztcblxuZXhwb3J0IGZ1bmN0aW9uIGJhc2UoXG4gIG9wdGlvbnM6IEJhc2VPcHRpb25zLFxuICBlbmFibGVkOiBTZXQ8XCJqc1wiIHwgXCJ0c1wiIHwgXCJwa2dcIj4sXG4pOiBMaW50ZXIuQ29uZmlnW10ge1xuICBjb25zdCBmaWxlc01hcCA9IHtcbiAgICBqczogXCIqKi8qLntqcyxjanMsbWpzLGpzeH1cIixcbiAgICB0czogXCIqKi8qLnt0cyxjdHMsbXRzLHRzeH1cIixcbiAgICBwa2c6IFwiKiovcGFja2FnZS5qc29uXCIsXG4gIH0gYXMgY29uc3Q7XG4gIGNvbnN0IGJsb2NrZWRGaWxlc01hcCA9IHtcbiAgICBcIioqLy5lbnYuKlwiOiBcIi4qLmVudlwiLFxuICAgIFwiKiovLipyY1wiOiBcIiouY29uZmlnLmpzXCIsXG4gICAgXCIqKi8uKnJjLipcIjogXCIqLmNvbmZpZy4qXCIsXG5cbiAgICBcIioqLyoue2NqcyxtanMsY3RzLG10c31cIjogXCIqLntqcyx0c31cIixcbiAgICBcIioqLyouc3BlYy57anMsY2pzLG1qcyxqc3gsdHMsY3RzLG10cyx0c3h9XCI6XG4gICAgICBcIioudGVzdC57anMsY2pzLG1qcyxqc3gsdHMsY3RzLG10cyx0c3h9XCIsIC8vIE5vZGUuanMgYnVpbHQtaW4gc3VwcG9ydCAqLnRlc3QuanMuIFNlZSBodHRwczovL25vZGVqcy5vcmcvYXBpL3Rlc3QuaHRtbCNydW5uaW5nLXRlc3RzLWZyb20tdGhlLWNvbW1hbmQtbGluZS5cbiAgICBcIioqLy4qLntqcyxjanMsbWpzLGpzeCx0cyxjdHMsbXRzLHRzeH1cIjpcbiAgICAgIFwiKi57anMsY2pzLG1qcyxqc3gsdHMsY3RzLG10cyx0c3h9XCIsXG4gIH0gYXMgY29uc3Q7XG5cbiAgY29uc3QgZW5hYmxlZFBhdHRlcm5zID0gWy4uLmVuYWJsZWRdLm1hcCgoa2V5KSA9PiBmaWxlc01hcFtrZXldKTtcbiAgY29uc3QgYmxvY2tlZFBhdHRlcm5zID0gT2JqZWN0LmtleXMoYmxvY2tlZEZpbGVzTWFwKTtcbiAgcmV0dXJuIFtcbiAgICAvLyBHbG9iYWwgaWdub3JlLiBSZWZlcjogaHR0cHM6Ly9lc2xpbnQub3JnL2RvY3MvbGF0ZXN0L3VzZS9jb25maWd1cmUvY29uZmlndXJhdGlvbi1maWxlcyNzcGVjaWZ5aW5nLWZpbGVzLWFuZC1pZ25vcmVzLlxuICAgIHtcbiAgICAgIG5hbWU6IFwiZmVuZ2UvZ2l0aWdub3JlXCIsXG4gICAgICAvLyBUaGVyZSBhcmUgMiBraW5kcyBvZiBleGNlcHRpb24gd2hlbiBydW5uaW5nIGBnaXQgbHMtZmlsZXNgOlxuICAgICAgLy8gMS4gR2l0IGlzIG5vdCBpbnN0YWxsZWQuIFRoZSBgc3Rkb3V0YCB3aWxsIGJlIG51bGwuXG4gICAgICAvLyAyLiBUaGUgcnVubmluZyBkaXJlY3RvcnkgaXMgbm90IGluaXRpYWxpemVkIGJ5IGBnaXQgaW5pdGAgY29tbWFuZC4gVGhlIGBzdGRvdXRgIHdpbGwgYW4gZW1wdHkgc3RyaW5nLlxuICAgICAgaWdub3JlczogKFxuICAgICAgICBjaGlsZFByb2Nlc3Muc3Bhd25TeW5jKFxuICAgICAgICAgIFwiZ2l0XCIsXG4gICAgICAgICAgW1xuICAgICAgICAgICAgXCJscy1maWxlc1wiLFxuICAgICAgICAgICAgXCItLW90aGVyc1wiLFxuICAgICAgICAgICAgXCItLWlnbm9yZWRcIixcbiAgICAgICAgICAgIFwiLS1leGNsdWRlLXN0YW5kYXJkXCIsXG4gICAgICAgICAgICBcIi0tZGlyZWN0b3J5XCIsXG4gICAgICAgICAgXSxcbiAgICAgICAgICB7IGVuY29kaW5nOiBcInV0ZjhcIiB9LFxuICAgICAgICApLnN0ZG91dCB8fCBcIlwiXG4gICAgICApXG4gICAgICAgIC5zcGxpdChcIlxcblwiKVxuICAgICAgICAuZmlsdGVyKEJvb2xlYW4pLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogXCJmZW5nZS9jb21tb25cIixcbiAgICAgIGZpbGVzOiBbLi4uZW5hYmxlZFBhdHRlcm5zLCAuLi5ibG9ja2VkUGF0dGVybnNdLFxuICAgICAgbGludGVyT3B0aW9uczogb3B0aW9ucyxcbiAgICAgIHBsdWdpbnM6IHtcbiAgICAgICAgXCJjaGVjay1maWxlXCI6IGNoZWNrRmlsZVBsdWdpbixcbiAgICAgIH0sXG4gICAgICBydWxlczoge1xuICAgICAgICBcImNoZWNrLWZpbGUvZmlsZW5hbWUtYmxvY2tsaXN0XCI6IFtcImVycm9yXCIsIGJsb2NrZWRGaWxlc01hcF0sXG4gICAgICB9LFxuICAgIH0sXG4gIF0gYXMgY29uc3Q7XG59XG4iXX0=
|
|
@@ -16,7 +16,6 @@ export declare function javascript(): readonly [{
|
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
18
|
readonly plugins: {
|
|
19
|
-
readonly "check-file": typeof import("eslint-plugin-check-file").default;
|
|
20
19
|
readonly fp: unknown;
|
|
21
20
|
readonly n: import("eslint").ESLint.Plugin & {
|
|
22
21
|
configs: import("eslint-plugin-n").Configs;
|
|
@@ -346,7 +345,9 @@ export declare function javascript(): readonly [{
|
|
|
346
345
|
readonly disallowTemplateShorthand: true;
|
|
347
346
|
readonly allow: readonly ["!!"];
|
|
348
347
|
}];
|
|
349
|
-
readonly "no-inner-declarations": "error"
|
|
348
|
+
readonly "no-inner-declarations": readonly ["error", "functions", {
|
|
349
|
+
readonly blockScopedFunctions: "disallow";
|
|
350
|
+
}];
|
|
350
351
|
readonly "no-invalid-this": "error";
|
|
351
352
|
readonly "no-lonely-if": "error";
|
|
352
353
|
readonly "no-multi-assign": "error";
|
|
@@ -371,15 +372,6 @@ export declare function javascript(): readonly [{
|
|
|
371
372
|
readonly "prefer-object-has-own": "error";
|
|
372
373
|
readonly "prefer-spread": "error";
|
|
373
374
|
readonly "prefer-template": "error";
|
|
374
|
-
readonly "check-file/filename-blocklist": readonly ["error", {
|
|
375
|
-
readonly "**/{.,}*.mjs": "*.js";
|
|
376
|
-
readonly "**/{.,}*.cjs": "*.js";
|
|
377
|
-
readonly "**/{.,}*.mts": "*.ts";
|
|
378
|
-
readonly "**/{.,}*.cts": "*.ts";
|
|
379
|
-
readonly "**/{.,}*.spec.*": "*.test.*";
|
|
380
|
-
readonly "**/.*rc.js": "*.config.js";
|
|
381
|
-
readonly "**/.*rc.ts": "*.config.ts";
|
|
382
|
-
}];
|
|
383
375
|
readonly "es-x/no-accessor-properties": "error";
|
|
384
376
|
readonly "es-x/no-async-iteration": "error";
|
|
385
377
|
readonly "es-x/no-generators": "error";
|
|
@@ -387,6 +379,7 @@ export declare function javascript(): readonly [{
|
|
|
387
379
|
readonly "es-x/no-legacy-object-prototype-accessor-methods": "error";
|
|
388
380
|
readonly "es-x/no-top-level-await": "error";
|
|
389
381
|
readonly "esm/existing-file-imports": "error";
|
|
382
|
+
readonly "esm/no-circular-imports": "error";
|
|
390
383
|
readonly "esm/no-declaration-file-imports": "error";
|
|
391
384
|
readonly "esm/no-directory-imports": "error";
|
|
392
385
|
readonly "esm/no-dynamic-imports": "error";
|
|
@@ -460,6 +453,9 @@ export declare function javascript(): readonly [{
|
|
|
460
453
|
readonly "sonarjs/no-nested-switch": "error";
|
|
461
454
|
readonly "sonarjs/no-useless-catch": "error";
|
|
462
455
|
readonly "sonarjs/prefer-immediate-return": "error";
|
|
456
|
+
readonly "unicorn/catch-error-name": readonly ["error", {
|
|
457
|
+
readonly ignore: readonly ["^e$", "^err$"];
|
|
458
|
+
}];
|
|
463
459
|
readonly "unicorn/consistent-assert": "error";
|
|
464
460
|
readonly "unicorn/consistent-date-clone": "error";
|
|
465
461
|
readonly "unicorn/consistent-destructuring": "error";
|
|
@@ -528,9 +524,12 @@ export declare function javascript(): readonly [{
|
|
|
528
524
|
readonly "unicorn/no-thenable": "error";
|
|
529
525
|
readonly "unicorn/no-this-assignment": "error";
|
|
530
526
|
readonly "unicorn/no-typeof-undefined": "error";
|
|
527
|
+
readonly "unicorn/no-unnecessary-array-flat-depth": "error";
|
|
528
|
+
readonly "unicorn/no-unnecessary-await": "error";
|
|
531
529
|
readonly "unicorn/no-unreadable-array-destructuring": "error";
|
|
532
530
|
readonly "unicorn/no-unreadable-iife": "error";
|
|
533
531
|
readonly "unicorn/no-useless-fallback-in-spread": "error";
|
|
532
|
+
readonly "unicorn/no-useless-promise-resolve-reject": "error";
|
|
534
533
|
readonly "unicorn/no-useless-spread": "error";
|
|
535
534
|
readonly "unicorn/no-useless-switch-case": "error";
|
|
536
535
|
readonly "unicorn/no-zero-fractions": "error";
|
|
@@ -546,6 +545,7 @@ export declare function javascript(): readonly [{
|
|
|
546
545
|
readonly "unicorn/prefer-number-properties": "error";
|
|
547
546
|
readonly "unicorn/prefer-object-from-entries": "error";
|
|
548
547
|
readonly "unicorn/prefer-optional-catch-binding": "error";
|
|
548
|
+
readonly "unicorn/prefer-prototype-methods": "error";
|
|
549
549
|
readonly "unicorn/prefer-reflect-apply": "error";
|
|
550
550
|
readonly "unicorn/prefer-regexp-test": "error";
|
|
551
551
|
readonly "unicorn/prefer-string-replace-all": "error";
|
|
@@ -649,12 +649,14 @@ export declare function javascript(): readonly [{
|
|
|
649
649
|
readonly "no-obj-calls": "error";
|
|
650
650
|
readonly "no-octal": "error";
|
|
651
651
|
readonly "no-octal-escape": "error";
|
|
652
|
+
readonly "no-promise-executor-return": "error";
|
|
652
653
|
readonly "no-proto": "error";
|
|
653
654
|
readonly "no-redeclare": readonly ["error", {
|
|
654
655
|
readonly builtinGlobals: false;
|
|
655
656
|
}];
|
|
656
657
|
readonly "no-regex-spaces": "error";
|
|
657
658
|
readonly "no-return-assign": readonly ["error", "except-parens"];
|
|
659
|
+
readonly "no-script-url": "error";
|
|
658
660
|
readonly "no-self-assign": readonly ["error", {
|
|
659
661
|
readonly props: true;
|
|
660
662
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/config/javascript.ts"],"names":[],"mappings":"AAKA,wBAAgB,UAAU
|
|
1
|
+
{"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/config/javascript.ts"],"names":[],"mappings":"AAKA,wBAAgB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAEzB"}
|
package/dist/config/js/base.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as fengePlugin from "@fenge/eslint-plugin";
|
|
2
|
-
import checkFilePlugin from "eslint-plugin-check-file";
|
|
3
2
|
import * as esmPlugin from "eslint-plugin-esm";
|
|
4
3
|
import nPlugin from "eslint-plugin-n";
|
|
5
4
|
import reactPlugin from "eslint-plugin-react";
|
|
@@ -23,7 +22,6 @@ export declare function getJsBase(): {
|
|
|
23
22
|
};
|
|
24
23
|
};
|
|
25
24
|
readonly plugins: {
|
|
26
|
-
readonly "check-file": typeof checkFilePlugin;
|
|
27
25
|
readonly fp: unknown;
|
|
28
26
|
readonly n: import("eslint").ESLint.Plugin & {
|
|
29
27
|
configs: nPlugin.Configs;
|
|
@@ -353,7 +351,9 @@ export declare function getJsBase(): {
|
|
|
353
351
|
readonly disallowTemplateShorthand: true;
|
|
354
352
|
readonly allow: readonly ["!!"];
|
|
355
353
|
}];
|
|
356
|
-
readonly "no-inner-declarations": "error"
|
|
354
|
+
readonly "no-inner-declarations": readonly ["error", "functions", {
|
|
355
|
+
readonly blockScopedFunctions: "disallow";
|
|
356
|
+
}];
|
|
357
357
|
readonly "no-invalid-this": "error";
|
|
358
358
|
readonly "no-lonely-if": "error";
|
|
359
359
|
readonly "no-multi-assign": "error";
|
|
@@ -378,15 +378,6 @@ export declare function getJsBase(): {
|
|
|
378
378
|
readonly "prefer-object-has-own": "error";
|
|
379
379
|
readonly "prefer-spread": "error";
|
|
380
380
|
readonly "prefer-template": "error";
|
|
381
|
-
readonly "check-file/filename-blocklist": readonly ["error", {
|
|
382
|
-
readonly "**/{.,}*.mjs": "*.js";
|
|
383
|
-
readonly "**/{.,}*.cjs": "*.js";
|
|
384
|
-
readonly "**/{.,}*.mts": "*.ts";
|
|
385
|
-
readonly "**/{.,}*.cts": "*.ts";
|
|
386
|
-
readonly "**/{.,}*.spec.*": "*.test.*";
|
|
387
|
-
readonly "**/.*rc.js": "*.config.js";
|
|
388
|
-
readonly "**/.*rc.ts": "*.config.ts";
|
|
389
|
-
}];
|
|
390
381
|
readonly "es-x/no-accessor-properties": "error";
|
|
391
382
|
readonly "es-x/no-async-iteration": "error";
|
|
392
383
|
readonly "es-x/no-generators": "error";
|
|
@@ -394,6 +385,7 @@ export declare function getJsBase(): {
|
|
|
394
385
|
readonly "es-x/no-legacy-object-prototype-accessor-methods": "error";
|
|
395
386
|
readonly "es-x/no-top-level-await": "error";
|
|
396
387
|
readonly "esm/existing-file-imports": "error";
|
|
388
|
+
readonly "esm/no-circular-imports": "error";
|
|
397
389
|
readonly "esm/no-declaration-file-imports": "error";
|
|
398
390
|
readonly "esm/no-directory-imports": "error";
|
|
399
391
|
readonly "esm/no-dynamic-imports": "error";
|
|
@@ -471,6 +463,9 @@ export declare function getJsBase(): {
|
|
|
471
463
|
readonly "sonarjs/no-nested-switch": "error";
|
|
472
464
|
readonly "sonarjs/no-useless-catch": "error";
|
|
473
465
|
readonly "sonarjs/prefer-immediate-return": "error";
|
|
466
|
+
readonly "unicorn/catch-error-name": readonly ["error", {
|
|
467
|
+
readonly ignore: readonly ["^e$", "^err$"];
|
|
468
|
+
}];
|
|
474
469
|
readonly "unicorn/consistent-assert": "error";
|
|
475
470
|
readonly "unicorn/consistent-date-clone": "error";
|
|
476
471
|
readonly "unicorn/consistent-destructuring": "error";
|
|
@@ -539,9 +534,12 @@ export declare function getJsBase(): {
|
|
|
539
534
|
readonly "unicorn/no-thenable": "error";
|
|
540
535
|
readonly "unicorn/no-this-assignment": "error";
|
|
541
536
|
readonly "unicorn/no-typeof-undefined": "error";
|
|
537
|
+
readonly "unicorn/no-unnecessary-array-flat-depth": "error";
|
|
538
|
+
readonly "unicorn/no-unnecessary-await": "error";
|
|
542
539
|
readonly "unicorn/no-unreadable-array-destructuring": "error";
|
|
543
540
|
readonly "unicorn/no-unreadable-iife": "error";
|
|
544
541
|
readonly "unicorn/no-useless-fallback-in-spread": "error";
|
|
542
|
+
readonly "unicorn/no-useless-promise-resolve-reject": "error";
|
|
545
543
|
readonly "unicorn/no-useless-spread": "error";
|
|
546
544
|
readonly "unicorn/no-useless-switch-case": "error";
|
|
547
545
|
readonly "unicorn/no-zero-fractions": "error";
|
|
@@ -557,6 +555,7 @@ export declare function getJsBase(): {
|
|
|
557
555
|
readonly "unicorn/prefer-number-properties": "error";
|
|
558
556
|
readonly "unicorn/prefer-object-from-entries": "error";
|
|
559
557
|
readonly "unicorn/prefer-optional-catch-binding": "error";
|
|
558
|
+
readonly "unicorn/prefer-prototype-methods": "error";
|
|
560
559
|
readonly "unicorn/prefer-reflect-apply": "error";
|
|
561
560
|
readonly "unicorn/prefer-regexp-test": "error";
|
|
562
561
|
readonly "unicorn/prefer-string-replace-all": "error";
|
|
@@ -660,12 +659,14 @@ export declare function getJsBase(): {
|
|
|
660
659
|
readonly "no-obj-calls": "error";
|
|
661
660
|
readonly "no-octal": "error";
|
|
662
661
|
readonly "no-octal-escape": "error";
|
|
662
|
+
readonly "no-promise-executor-return": "error";
|
|
663
663
|
readonly "no-proto": "error";
|
|
664
664
|
readonly "no-redeclare": readonly ["error", {
|
|
665
665
|
readonly builtinGlobals: false;
|
|
666
666
|
}];
|
|
667
667
|
readonly "no-regex-spaces": "error";
|
|
668
668
|
readonly "no-return-assign": readonly ["error", "except-parens"];
|
|
669
|
+
readonly "no-script-url": "error";
|
|
669
670
|
readonly "no-self-assign": readonly ["error", {
|
|
670
671
|
readonly props: true;
|
|
671
672
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/config/js/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/config/js/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,sBAAsB,CAAC;AAIpD,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAG/C,OAAO,OAAO,MAAM,iBAAiB,CAAC;AAEtC,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAC9C,OAAO,gBAAgB,MAAM,2BAA2B,CAAC;AAEzD,OAAO,aAAa,MAAM,uBAAuB,CAAC;AAIlD,wBAAgB,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsSnB;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkKR"}
|
package/dist/config/js/base.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as fengePlugin from "@fenge/eslint-plugin";
|
|
2
2
|
import tsPlugin from "@typescript-eslint/eslint-plugin";
|
|
3
3
|
import confusingKeys from "confusing-browser-globals";
|
|
4
|
-
import checkFilePlugin from "eslint-plugin-check-file";
|
|
5
4
|
import esxPlugin from "eslint-plugin-es-x";
|
|
6
5
|
import * as esmPlugin from "eslint-plugin-esm";
|
|
7
6
|
import fpPlugin from "eslint-plugin-fp";
|
|
@@ -90,10 +89,12 @@ export function getJsBase() {
|
|
|
90
89
|
"no-obj-calls": "error",
|
|
91
90
|
"no-octal": "error",
|
|
92
91
|
"no-octal-escape": "error",
|
|
92
|
+
"no-promise-executor-return": "error",
|
|
93
93
|
"no-proto": "error",
|
|
94
94
|
"no-redeclare": ["error", { builtinGlobals: false }],
|
|
95
95
|
"no-regex-spaces": "error",
|
|
96
96
|
"no-return-assign": ["error", "except-parens"],
|
|
97
|
+
"no-script-url": "error",
|
|
97
98
|
"no-self-assign": ["error", { props: true }],
|
|
98
99
|
"no-self-compare": "error",
|
|
99
100
|
"no-sequences": "error",
|
|
@@ -177,7 +178,6 @@ export function getJsBase() {
|
|
|
177
178
|
},
|
|
178
179
|
},
|
|
179
180
|
plugins: {
|
|
180
|
-
"check-file": checkFilePlugin,
|
|
181
181
|
fp: fpPlugin,
|
|
182
182
|
n: nPlugin,
|
|
183
183
|
import: importPlugin,
|
|
@@ -232,7 +232,11 @@ export function getJsBase() {
|
|
|
232
232
|
"error",
|
|
233
233
|
{ disallowTemplateShorthand: true, allow: ["!!"] },
|
|
234
234
|
], // forbid code like `const num = +str`;
|
|
235
|
-
"no-inner-declarations":
|
|
235
|
+
"no-inner-declarations": [
|
|
236
|
+
"error",
|
|
237
|
+
"functions",
|
|
238
|
+
{ blockScopedFunctions: "disallow" },
|
|
239
|
+
],
|
|
236
240
|
"no-invalid-this": "error",
|
|
237
241
|
"no-lonely-if": "error",
|
|
238
242
|
"no-multi-assign": "error",
|
|
@@ -257,19 +261,6 @@ export function getJsBase() {
|
|
|
257
261
|
// "prefer-object-spread": "error",
|
|
258
262
|
"prefer-spread": "error",
|
|
259
263
|
"prefer-template": "error",
|
|
260
|
-
// check-file
|
|
261
|
-
"check-file/filename-blocklist": [
|
|
262
|
-
"error",
|
|
263
|
-
{
|
|
264
|
-
"**/{.,}*.mjs": "*.js",
|
|
265
|
-
"**/{.,}*.cjs": "*.js",
|
|
266
|
-
"**/{.,}*.mts": "*.ts",
|
|
267
|
-
"**/{.,}*.cts": "*.ts",
|
|
268
|
-
"**/{.,}*.spec.*": "*.test.*", // Node.js built-in support *.test.js. See https://nodejs.org/api/test.html#running-tests-from-the-command-line.
|
|
269
|
-
"**/.*rc.js": "*.config.js",
|
|
270
|
-
"**/.*rc.ts": "*.config.ts",
|
|
271
|
-
},
|
|
272
|
-
],
|
|
273
264
|
// es
|
|
274
265
|
"es-x/no-accessor-properties": "error",
|
|
275
266
|
"es-x/no-async-iteration": "error",
|
|
@@ -279,6 +270,7 @@ export function getJsBase() {
|
|
|
279
270
|
"es-x/no-top-level-await": "error",
|
|
280
271
|
// esm
|
|
281
272
|
"esm/existing-file-imports": "error",
|
|
273
|
+
"esm/no-circular-imports": "error",
|
|
282
274
|
"esm/no-declaration-file-imports": "error",
|
|
283
275
|
"esm/no-directory-imports": "error",
|
|
284
276
|
"esm/no-dynamic-imports": "error",
|
|
@@ -370,6 +362,7 @@ export function getJsBase() {
|
|
|
370
362
|
"sonarjs/prefer-immediate-return": "error",
|
|
371
363
|
// unicorn
|
|
372
364
|
// 'unicorn/no-null': 'error', // null can be useful when interact with json.
|
|
365
|
+
"unicorn/catch-error-name": ["error", { ignore: ["^e$", "^err$"] }],
|
|
373
366
|
"unicorn/consistent-assert": "error",
|
|
374
367
|
"unicorn/consistent-date-clone": "error",
|
|
375
368
|
"unicorn/consistent-destructuring": "error",
|
|
@@ -417,9 +410,12 @@ export function getJsBase() {
|
|
|
417
410
|
"unicorn/no-thenable": "error",
|
|
418
411
|
"unicorn/no-this-assignment": "error",
|
|
419
412
|
"unicorn/no-typeof-undefined": "error",
|
|
413
|
+
"unicorn/no-unnecessary-array-flat-depth": "error",
|
|
414
|
+
"unicorn/no-unnecessary-await": "error",
|
|
420
415
|
"unicorn/no-unreadable-array-destructuring": "error",
|
|
421
416
|
"unicorn/no-unreadable-iife": "error",
|
|
422
417
|
"unicorn/no-useless-fallback-in-spread": "error",
|
|
418
|
+
"unicorn/no-useless-promise-resolve-reject": "error",
|
|
423
419
|
"unicorn/no-useless-spread": "error",
|
|
424
420
|
"unicorn/no-useless-switch-case": "error",
|
|
425
421
|
"unicorn/no-zero-fractions": "error",
|
|
@@ -435,11 +431,13 @@ export function getJsBase() {
|
|
|
435
431
|
"unicorn/prefer-number-properties": "error",
|
|
436
432
|
"unicorn/prefer-object-from-entries": "error",
|
|
437
433
|
"unicorn/prefer-optional-catch-binding": "error",
|
|
434
|
+
"unicorn/prefer-prototype-methods": "error",
|
|
438
435
|
"unicorn/prefer-reflect-apply": "error", // https://github.com/sindresorhus/eslint-plugin-unicorn/issues/2365
|
|
439
436
|
"unicorn/prefer-regexp-test": "error",
|
|
440
437
|
"unicorn/prefer-string-replace-all": "error",
|
|
441
438
|
"unicorn/prefer-string-slice": "error",
|
|
442
439
|
"unicorn/prefer-ternary": "error",
|
|
440
|
+
// "unicorn/prefer-type-error": "error",
|
|
443
441
|
"unicorn/require-array-join-separator": "error",
|
|
444
442
|
"unicorn/require-number-to-fixed-digits-argument": "error",
|
|
445
443
|
"unicorn/text-encoding-identifier-case": "error",
|
|
@@ -466,4 +464,4 @@ export function getJsBase() {
|
|
|
466
464
|
},
|
|
467
465
|
};
|
|
468
466
|
}
|
|
469
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvanMvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssV0FBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sUUFBUSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3hELE9BQU8sYUFBYSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sZUFBZSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sS0FBSyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxRQUFRLE1BQU0sa0JBQWtCLENBQUM7QUFDeEMsT0FBTyxZQUFZLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxPQUFPLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxhQUFhLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxXQUFXLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxnQkFBZ0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLHNCQUFzQixNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sYUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xELE9BQU8sYUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xELE9BQU8sT0FBTyxNQUFNLFNBQVMsQ0FBQztBQUU5QixNQUFNLFVBQVUsU0FBUztJQUN2QiwwRkFBMEY7SUFDMUYsTUFBTSxtQkFBbUIsR0FBRztRQUMxQixRQUFRLEVBQUUsT0FBTztRQUNqQixrQkFBa0IsRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUM7UUFFM0MsZ0JBQWdCLEVBQUU7WUFDaEIsT0FBTztZQUNQLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxJQUFJLEVBQUU7U0FDdEQ7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixPQUFPO1lBQ1A7Z0JBQ0Us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NEJBQTRCLEVBQUUsT0FBTztZQUNyQyxvQ0FBb0MsRUFBRSxPQUFPO1lBQzdDLGtDQUFrQyxFQUFFLE9BQU87WUFDM0MsdUNBQXVDLEVBQUUsT0FBTztZQUVoRCxtQ0FBbUMsRUFBRTtnQkFDbkMsT0FBTztnQkFDUDtvQkFDRSxpQkFBaUIsRUFBRSxJQUFJO29CQUN2QixXQUFXLEVBQUUsSUFBSTtvQkFDakIsWUFBWSxFQUFFLElBQUk7aUJBQ25CO2FBQ0Y7WUFDRCxrQ0FBa0MsRUFBRSxPQUFPO1lBQzNDLDRDQUE0QyxFQUFFLE9BQU87WUFDckQsa0NBQWtDLEVBQUUsT0FBTztTQUM1QztLQUNPLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZmVuZ2VQbHVnaW4gZnJvbSBcIkBmZW5nZS9lc2xpbnQtcGx1Z2luXCI7XG5pbXBvcnQgdHNQbHVnaW4gZnJvbSBcIkB0eXBlc2NyaXB0LWVzbGludC9lc2xpbnQtcGx1Z2luXCI7XG5pbXBvcnQgY29uZnVzaW5nS2V5cyBmcm9tIFwiY29uZnVzaW5nLWJyb3dzZXItZ2xvYmFsc1wiO1xuaW1wb3J0IGNoZWNrRmlsZVBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1jaGVjay1maWxlXCI7XG5pbXBvcnQgZXN4UGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLWVzLXhcIjtcbmltcG9ydCAqIGFzIGVzbVBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1lc21cIjtcbmltcG9ydCBmcFBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1mcFwiO1xuaW1wb3J0IGltcG9ydFBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1pbXBvcnRcIjtcbmltcG9ydCBuUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLW5cIjtcbmltcG9ydCBwcm9taXNlUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLXByb21pc2VcIjtcbmltcG9ydCByZWFjdFBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1yZWFjdFwiO1xuaW1wb3J0IHJlYWN0SG9va3NQbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tcmVhY3QtaG9va3NcIjtcbmltcG9ydCBzaW1wbGVJbXBvcnRTb3J0UGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLXNpbXBsZS1pbXBvcnQtc29ydFwiO1xuaW1wb3J0IHNvbmFyanNQbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tc29uYXJqc1wiO1xuaW1wb3J0IHVuaWNvcm5QbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tdW5pY29yblwiO1xuaW1wb3J0IGdsb2JhbHMgZnJvbSBcImdsb2JhbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEpzQmFzZSgpIHtcbiAgLy8gY29waWVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3N0YW5kYXJkL2VzbGludC1jb25maWctc3RhbmRhcmQvYmxvYi9tYXN0ZXIvc3JjL2luZGV4LnRzXG4gIGNvbnN0IHN0YW5kYXJkQ29uZmlnUnVsZXMgPSB7XG4gICAgXCJuby12YXJcIjogXCJlcnJvclwiLFxuICAgIFwib2JqZWN0LXNob3J0aGFuZFwiOiBbXCJlcnJvclwiLCBcInByb3BlcnRpZXNcIl0sXG5cbiAgICBcImFjY2Vzc29yLXBhaXJzXCI6IFtcbiAgICAgIFwiZXJyb3JcIixcbiAgICAgIHsgc2V0V2l0aG91dEdldDogdHJ1ZSwgZW5mb3JjZUZvckNsYXNzTWVtYmVyczogdHJ1ZSB9LFxuICAgIF0sXG4gICAgXCJhcnJheS1jYWxsYmFjay1yZXR1cm5cIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAge1xuICAgICAgICBhbGxvd0ltcGxpY2l0OiBmYWxzZSxcbiAgICAgICAgY2hlY2tGb3JFYWNoOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBjYW1lbGNhc2U6IFtcbiAgICAgIFwiZXJyb3JcIixcbiAgICAgIHtcbiAgICAgICAgYWxsb3c6IFtcIl5VTlNBRkVfXCJdLFxuICAgICAgICBwcm9wZXJ0aWVzOiBcIm5ldmVyXCIsXG4gICAgICAgIGlnbm9yZUdsb2JhbHM6IHRydWUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgXCJjb25zdHJ1Y3Rvci1zdXBlclwiOiBcImVycm9yXCIsXG4gICAgXCJkZWZhdWx0LWNhc2UtbGFzdFwiOiBcImVycm9yXCIsXG4gICAgLy8gJ2RvdC1ub3RhdGlvbic6IFsnZXJyb3InLCB7IGFsbG93S2V5d29yZHM6IHRydWUgfV0sIC8vIFRPRE86IFRoaXMgc2hvdWxkIGJlIGVuYWJsZWQuIERpc2FibGUgaXQgYXMgaXQgY29uZmxpY3RzIHdpdGggdHMgd2hlbiBlbmFibGluZyB0cy1jaGVja1xuICAgIGVxZXFlcTogW1wiZXJyb3JcIiwgXCJhbHdheXNcIiwgeyBudWxsOiBcImlnbm9yZVwiIH1dLFxuICAgIFwibmV3LWNhcFwiOiBbXCJlcnJvclwiLCB7IG5ld0lzQ2FwOiB0cnVlLCBjYXBJc05ldzogZmFsc2UsIHByb3BlcnRpZXM6IHRydWUgfV0sXG4gICAgLy8gJ25ldy1wYXJlbnMnOiAnZXJyb3InLFxuICAgIFwibm8tYXJyYXktY29uc3RydWN0b3JcIjogXCJlcnJvclwiLFxuICAgIFwibm8tYXN5bmMtcHJvbWlzZS1leGVjdXRvclwiOiBcImVycm9yXCIsXG4gICAgXCJuby1jYWxsZXJcIjogXCJlcnJvclwiLFxuICAgIFwibm8tY2FzZS1kZWNsYXJhdGlvbnNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tY2xhc3MtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNvbXBhcmUtbmVnLXplcm9cIjogXCJlcnJvclwiLFxuICAgIFwibm8tY29uZC1hc3NpZ25cIjogXCJlcnJvclwiLFxuICAgIFwibm8tY29uc3QtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNvbnN0YW50LWNvbmRpdGlvblwiOiBbXCJlcnJvclwiLCB7IGNoZWNrTG9vcHM6IGZhbHNlIH1dLFxuICAgIFwibm8tY29udHJvbC1yZWdleFwiOiBcImVycm9yXCIsXG4gICAgXCJuby1kZWJ1Z2dlclwiOiBcImVycm9yXCIsXG4gICAgXCJuby1kZWxldGUtdmFyXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWR1cGUtYXJnc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1kdXBlLWNsYXNzLW1lbWJlcnNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZHVwZS1rZXlzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWR1cGxpY2F0ZS1jYXNlXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVzZWxlc3MtYmFja3JlZmVyZW5jZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby1lbXB0eVwiOiBbXCJlcnJvclwiLCB7IGFsbG93RW1wdHlDYXRjaDogdHJ1ZSB9XSxcbiAgICBcIm5vLWVtcHR5LWNoYXJhY3Rlci1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1lbXB0eS1wYXR0ZXJuXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWV2YWxcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZXgtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWV4dGVuZC1uYXRpdmVcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZXh0cmEtYmluZFwiOiBcImVycm9yXCIsXG4gICAgXCJuby1leHRyYS1ib29sZWFuLWNhc3RcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZmFsbHRocm91Z2hcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZnVuYy1hc3NpZ25cIjogXCJlcnJvclwiLFxuICAgIFwibm8tZ2xvYmFsLWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1pbXBsaWVkLWV2YWxcIjogXCJlcnJvclwiLFxuICAgIFwibm8taW1wb3J0LWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1pbnZhbGlkLXJlZ2V4cFwiOiBcImVycm9yXCIsXG4gICAgXCJuby1pcnJlZ3VsYXItd2hpdGVzcGFjZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby1pdGVyYXRvclwiOiBcImVycm9yXCIsXG4gICAgXCJuby1sYWJlbHNcIjogW1wiZXJyb3JcIiwgeyBhbGxvd0xvb3A6IGZhbHNlLCBhbGxvd1N3aXRjaDogZmFsc2UgfV0sXG4gICAgXCJuby1sb25lLWJsb2Nrc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1sb3NzLW9mLXByZWNpc2lvblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1taXNsZWFkaW5nLWNoYXJhY3Rlci1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1wcm90b3R5cGUtYnVpbHRpbnNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdXNlbGVzcy1jYXRjaFwiOiBcImVycm9yXCIsXG4gICAgXCJuby1tdWx0aS1zdHJcIjogXCJlcnJvclwiLFxuICAgIFwibm8tbmV3XCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLW5ldy1mdW5jXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLW5ldy13cmFwcGVyc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1vYmotY2FsbHNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tb2N0YWxcIjogXCJlcnJvclwiLFxuICAgIFwibm8tb2N0YWwtZXNjYXBlXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXByb3RvXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXJlZGVjbGFyZVwiOiBbXCJlcnJvclwiLCB7IGJ1aWx0aW5HbG9iYWxzOiBmYWxzZSB9XSxcbiAgICBcIm5vLXJlZ2V4LXNwYWNlc1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1yZXR1cm4tYXNzaWduXCI6IFtcImVycm9yXCIsIFwiZXhjZXB0LXBhcmVuc1wiXSxcbiAgICBcIm5vLXNlbGYtYXNzaWduXCI6IFtcImVycm9yXCIsIHsgcHJvcHM6IHRydWUgfV0sXG4gICAgXCJuby1zZWxmLWNvbXBhcmVcIjogXCJlcnJvclwiLFxuICAgIFwibm8tc2VxdWVuY2VzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXNoYWRvdy1yZXN0cmljdGVkLW5hbWVzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXNwYXJzZS1hcnJheXNcIjogXCJlcnJvclwiLFxuICAgIC8vICduby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmcnOiAnZXJyb3InLCAvLyBWU0NvZGUgYW4gV2ViU3Rvcm0gY2FuIGRldGVjdCBpdC4gRW5hYmxpbmcgdGhpcyB3aWxsIGRlY3JlYXNlIGZsZXhpYmlsaXR5LiBGb3IgZXhhbXBsZSwgbG9uZyBjb250ZW50IGNvbnRhaW5pbmcgJHtmb299IGlzIHJlYXNvbmFibGUuXG4gICAgXCJuby10aGlzLWJlZm9yZS1zdXBlclwiOiBcImVycm9yXCIsXG4gICAgXCJuby10aHJvdy1saXRlcmFsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVuZGVmXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVubW9kaWZpZWQtbG9vcC1jb25kaXRpb25cIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5uZWVkZWQtdGVybmFyeVwiOiBbXCJlcnJvclwiLCB7IGRlZmF1bHRBc3NpZ25tZW50OiBmYWxzZSB9XSxcbiAgICBcIm5vLXVucmVhY2hhYmxlXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVucmVhY2hhYmxlLWxvb3BcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5zYWZlLWZpbmFsbHlcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5zYWZlLW5lZ2F0aW9uXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVudXNlZC1leHByZXNzaW9uc1wiOiBbXG4gICAgICBcImVycm9yXCIsXG4gICAgICB7XG4gICAgICAgIGVuZm9yY2VGb3JKU1g6IHRydWUsXG4gICAgICAgIGFsbG93U2hvcnRDaXJjdWl0OiB0cnVlLFxuICAgICAgICBhbGxvd1Rlcm5hcnk6IHRydWUsXG4gICAgICAgIGFsbG93VGFnZ2VkVGVtcGxhdGVzOiB0cnVlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFwibm8tdW51c2VkLXZhcnNcIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAge1xuICAgICAgICBhcmdzOiBcIm5vbmVcIixcbiAgICAgICAgY2F1Z2h0RXJyb3JzOiBcIm5vbmVcIixcbiAgICAgICAgaWdub3JlUmVzdFNpYmxpbmdzOiB0cnVlLFxuICAgICAgICB2YXJzOiBcImFsbFwiLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFwibm8tdXNlLWJlZm9yZS1kZWZpbmVcIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAgeyBmdW5jdGlvbnM6IGZhbHNlLCBjbGFzc2VzOiBmYWxzZSwgdmFyaWFibGVzOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgXCJuby11c2VsZXNzLWNhbGxcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdXNlbGVzcy1jb21wdXRlZC1rZXlcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdXNlbGVzcy1jb25zdHJ1Y3RvclwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLWVzY2FwZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLXJlbmFtZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgXCJuby12b2lkXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXdpdGhcIjogXCJlcnJvclwiLFxuICAgIFwib25lLXZhclwiOiBbXCJlcnJvclwiLCB7IGluaXRpYWxpemVkOiBcIm5ldmVyXCIgfV0sXG4gICAgXCJwcmVmZXItY29uc3RcIjogW1wiZXJyb3JcIiwgeyBkZXN0cnVjdHVyaW5nOiBcImFsbFwiIH1dLFxuICAgIFwicHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1wiOiBcImVycm9yXCIsXG4gICAgXCJwcmVmZXItcmVnZXgtbGl0ZXJhbHNcIjogW1wiZXJyb3JcIiwgeyBkaXNhbGxvd1JlZHVuZGFudFdyYXBwaW5nOiB0cnVlIH1dLFxuICAgIFwic3ltYm9sLWRlc2NyaXB0aW9uXCI6IFwiZXJyb3JcIixcbiAgICBcInVuaWNvZGUtYm9tXCI6IFtcImVycm9yXCIsIFwibmV2ZXJcIl0sXG4gICAgXCJ1c2UtaXNuYW5cIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAge1xuICAgICAgICBlbmZvcmNlRm9yU3dpdGNoQ2FzZTogdHJ1ZSxcbiAgICAgICAgZW5mb3JjZUZvckluZGV4T2Y6IHRydWUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgXCJ2YWxpZC10eXBlb2ZcIjogW1wiZXJyb3JcIiwgeyByZXF1aXJlU3RyaW5nTGl0ZXJhbHM6IHRydWUgfV0sXG4gICAgeW9kYTogW1wiZXJyb3JcIiwgXCJuZXZlclwiXSxcbiAgfSBhcyBjb25zdDtcblxuICByZXR1cm4ge1xuICAgIG5hbWU6IFwiZmVuZ2UvamF2YXNjcmlwdFwiLFxuICAgIGZpbGVzOiBbXCIqKi8qLntqcyxjanMsbWpzLGpzeH1cIl0sXG4gICAgLy8gaHR0cHM6Ly9lc2xpbnQub3JnL2RvY3MvbGF0ZXN0L3VzZS9jb25maWd1cmUvbGFuZ3VhZ2Utb3B0aW9uc1xuICAgIGxhbmd1YWdlT3B0aW9uczoge1xuICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICBzb3VyY2VUeXBlOiBcIm1vZHVsZVwiLFxuICAgICAgcGFyc2VyT3B0aW9uczoge1xuICAgICAgICAvLyBUT0RPIGBlY21hVmVyc2lvbmAgYW5kIGBzb3VyY2VUeXBlYCBhcmUgbm8gc3RhbmRhcmQgaGVyZS4gaW1wb3J0L25vLWRlZmF1bHQtZXhwb3J0IHJlcXVpcmVkIHRoaXNcbiAgICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICAgIHNvdXJjZVR5cGU6IFwibW9kdWxlXCIsXG4gICAgICAgIGVjbWFGZWF0dXJlczoge1xuICAgICAgICAgIGpzeDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBnbG9iYWxzOiB7XG4gICAgICAgIC4uLk9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICBPYmplY3QuZW50cmllcyhnbG9iYWxzLmJyb3dzZXIpXG4gICAgICAgICAgICAuZmlsdGVyKChba10pID0+ICFjb25mdXNpbmdLZXlzLmluY2x1ZGVzKGspKVxuICAgICAgICAgICAgLmZpbHRlcigoW2tdKSA9PiAhW1wic2VsZlwiLCBcImdsb2JhbFwiXS5pbmNsdWRlcyhrKSksIC8vIHByZWZlciBgZ2xvYmFsVGhpc2BcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBwbHVnaW5zOiB7XG4gICAgICBcImNoZWNrLWZpbGVcIjogY2hlY2tGaWxlUGx1Z2luLFxuICAgICAgZnA6IGZwUGx1Z2luLFxuICAgICAgbjogblBsdWdpbixcbiAgICAgIGltcG9ydDogaW1wb3J0UGx1Z2luLFxuICAgICAgcHJvbWlzZTogcHJvbWlzZVBsdWdpbixcbiAgICAgIHJlYWN0OiByZWFjdFBsdWdpbixcbiAgICAgIFwicmVhY3QtaG9va3NcIjogcmVhY3RIb29rc1BsdWdpbixcbiAgICAgIHNvbmFyanM6IHNvbmFyanNQbHVnaW4sXG4gICAgICB1bmljb3JuOiB1bmljb3JuUGx1Z2luLFxuICAgICAgXCJlcy14XCI6IGVzeFBsdWdpbixcbiAgICAgIGVzbTogZXNtUGx1Z2luLFxuICAgICAgXCJzaW1wbGUtaW1wb3J0LXNvcnRcIjogc2ltcGxlSW1wb3J0U29ydFBsdWdpbixcbiAgICAgIFwiQGZlbmdlXCI6IGZlbmdlUGx1Z2luLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnRcIjogeyBydWxlczogdHNQbHVnaW4ucnVsZXMgfSwgLy8gVE9ETzogVWdseS4gU3VibWl0IGEgcHIgdG8gdHlwZXNjcmlwdC1wbHVnaW4gdG8gZml4IGl0LlxuICAgIH0sXG4gICAgcnVsZXM6IHtcbiAgICAgIC8vIDEuIHN0YW5kYXJkIGNvbmZpZyBydWxlc1xuICAgICAgLi4uc3RhbmRhcmRDb25maWdSdWxlcyxcblxuICAgICAgLy8gMi4gY29kZSBzdHlsZSBmb3IgYSBiZXR0ZXIgcmVhZGFiaWxpdHlcbiAgICAgIFwiYXJyb3ctYm9keS1zdHlsZVwiOiBbXCJlcnJvclwiLCBcImFzLW5lZWRlZFwiXSxcbiAgICAgIC8vIFNvcnQgaW1wb3J0cyBieSBwcmV0dGllci4gVHVybiBpbiBvZmYuXG4gICAgICAvLyBcInNpbXBsZS1pbXBvcnQtc29ydC9pbXBvcnRzXCI6IFtcbiAgICAgIC8vICAgXCJlcnJvclwiLFxuICAgICAgLy8gICB7IGdyb3VwczogW1tcIl5cXFxcdTAwMDBcIiwgXCJebm9kZTpcIiwgXCJeQD9cXFxcd1wiLCBcIl5cIiwgXCJeXFxcXC5cIl1dIH0sXG4gICAgICAvLyBdLFxuICAgICAgXCJzaW1wbGUtaW1wb3J0LXNvcnQvZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLW5vZGUtcHJvdG9jb2xcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2VzY2FwZS1jYXNlXCI6IFwiZXJyb3JcIiwgLy8gJ1xcdWQ4MzQnIC0+ICdcXHVEODM0J1xuICAgICAgLy8gXCJ1bmljb3JuL251bWJlci1saXRlcmFsLWNhc2VcIjogXCJlcnJvclwiLCAvLyAwWEZGIC0+IDB4RkYgLy8gY29uZmxpY3Qgd2l0aCBwcmV0dGllclxuXG4gICAgICAvLyAzLiBiYW4gc29tZSBzeW50YXhlcyB0byByZWR1Y2UgbWlzdGFrZXNcbiAgICAgIFwiZGVmYXVsdC1wYXJhbS1sYXN0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZm9yLWRpcmVjdGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcImZ1bmMtbmFtZS1tYXRjaGluZ1wiOiBcImVycm9yXCIsXG4gICAgICBcImZ1bmMtbmFtZXNcIjogXCJlcnJvclwiLCAvLyBhbHdheXMgcmVxdWlyZSBhIG5hbWUgZm9yIGZ1bmN0aW9uIGRlY2xhcmF0aW9uXG4gICAgICBcImZ1bmMtc3R5bGVcIjogW1wiZXJyb3JcIiwgXCJkZWNsYXJhdGlvblwiLCB7IGFsbG93QXJyb3dGdW5jdGlvbnM6IHRydWUgfV0sXG4gICAgICBcImdldHRlci1yZXR1cm5cIjogXCJlcnJvclwiLFxuICAgICAgXCJpbml0LWRlY2xhcmF0aW9uc1wiOiBcImVycm9yXCIsXG4gICAgICBcImxvZ2ljYWwtYXNzaWdubWVudC1vcGVyYXRvcnNcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIFwiYWx3YXlzXCIsXG4gICAgICAgIHsgZW5mb3JjZUZvcklmU3RhdGVtZW50czogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICAgIFwibWF4LWRlcHRoXCI6IFtcImVycm9yXCIsIHsgbWF4OiA1IH1dLFxuICAgICAgXCJtYXgtcGFyYW1zXCI6IFtcImVycm9yXCIsIHsgbWF4OiA0IH1dLFxuICAgICAgXCJuby1iaXR3aXNlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tY29uc29sZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLWNvbnN0YW50LWJpbmFyeS1leHByZXNzaW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tZHVwZS1lbHNlLWlmXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tZHVwbGljYXRlLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1lbXB0eS1zdGF0aWMtYmxvY2tcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1lbXB0eS1mdW5jdGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLWltcGxpY2l0LWNvZXJjaW9uXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7IGRpc2FsbG93VGVtcGxhdGVTaG9ydGhhbmQ6IHRydWUsIGFsbG93OiBbXCIhIVwiXSB9LFxuICAgICAgXSwgLy8gZm9yYmlkIGNvZGUgbGlrZSBgY29uc3QgbnVtID0gK3N0cmA7XG4gICAgICBcIm5vLWlubmVyLWRlY2xhcmF0aW9uc1wiOiBcImVycm9yXCIsIC8vIFRPRE86IGNoYW5nZSB0aGUgcnVsZSB2YWx1ZSB0byBgW1wiZXJyb3JcIixcImZ1bmN0aW9uc1wiLHtibG9ja1Njb3BlZEZ1bmN0aW9uczpcImRpc2FsbG93XCJ9XWAgd2hlbiBlc2xpbnQgaXMgdjlcbiAgICAgIFwibm8taW52YWxpZC10aGlzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tbG9uZWx5LWlmXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tbXVsdGktYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tbmV3LW5hdGl2ZS1ub25jb25zdHJ1Y3RvclwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLW5vbm9jdGFsLWRlY2ltYWwtZXNjYXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tb2JqZWN0LWNvbnN0cnVjdG9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tcGFyYW0tcmVhc3NpZ25cIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1wbHVzcGx1c1wiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLXNldHRlci1yZXR1cm5cIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1zaGFkb3dcIjogW1wiZXJyb3JcIiwgeyBpZ25vcmVPbkluaXRpYWxpemF0aW9uOiB0cnVlIH1dLFxuICAgICAgXCJuby11bnNhZmUtb3B0aW9uYWwtY2hhaW5pbmdcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHsgZGlzYWxsb3dBcml0aG1ldGljT3BlcmF0b3JzOiB0cnVlIH0sXG4gICAgICBdLFxuICAgICAgXCJuby11bnVzZWQtbGFiZWxzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tdW51c2VkLXByaXZhdGUtY2xhc3MtbWVtYmVyc1wiOiBcImVycm9yXCIsXG4gICAgICBcInJlcXVpcmUtYXdhaXRcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZXF1aXJlLXlpZWxkXCI6IFwiZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLWFycm93LWNhbGxiYWNrXCI6IFwiZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLWV4cG9uZW50aWF0aW9uLW9wZXJhdG9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLW9iamVjdC1oYXMtb3duXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIFwicHJlZmVyLW9iamVjdC1zcHJlYWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJwcmVmZXItc3ByZWFkXCI6IFwiZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLXRlbXBsYXRlXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIGNoZWNrLWZpbGVcbiAgICAgIFwiY2hlY2stZmlsZS9maWxlbmFtZS1ibG9ja2xpc3RcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBcIioqL3suLH0qLm1qc1wiOiBcIiouanNcIixcbiAgICAgICAgICBcIioqL3suLH0qLmNqc1wiOiBcIiouanNcIixcbiAgICAgICAgICBcIioqL3suLH0qLm10c1wiOiBcIioudHNcIixcbiAgICAgICAgICBcIioqL3suLH0qLmN0c1wiOiBcIioudHNcIixcblxuICAgICAgICAgIFwiKiovey4sfSouc3BlYy4qXCI6IFwiKi50ZXN0LipcIiwgLy8gTm9kZS5qcyBidWlsdC1pbiBzdXBwb3J0ICoudGVzdC5qcy4gU2VlIGh0dHBzOi8vbm9kZWpzLm9yZy9hcGkvdGVzdC5odG1sI3J1bm5pbmctdGVzdHMtZnJvbS10aGUtY29tbWFuZC1saW5lLlxuXG4gICAgICAgICAgXCIqKi8uKnJjLmpzXCI6IFwiKi5jb25maWcuanNcIixcbiAgICAgICAgICBcIioqLy4qcmMudHNcIjogXCIqLmNvbmZpZy50c1wiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIC8vIGVzXG4gICAgICBcImVzLXgvbm8tYWNjZXNzb3ItcHJvcGVydGllc1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzLXgvbm8tYXN5bmMtaXRlcmF0aW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXMteC9uby1nZW5lcmF0b3JzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXMteC9uby1oYXNoYmFuZ1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzLXgvbm8tbGVnYWN5LW9iamVjdC1wcm90b3R5cGUtYWNjZXNzb3ItbWV0aG9kc1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzLXgvbm8tdG9wLWxldmVsLWF3YWl0XCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIGVzbVxuICAgICAgXCJlc20vZXhpc3RpbmctZmlsZS1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXNtL25vLWRlY2xhcmF0aW9uLWZpbGUtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1kaXJlY3RvcnktaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1keW5hbWljLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tZW1wdHktZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1naXQtaWdub3JlZC1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXNtL25vLXBoYW50b20tZGVwLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcXVlcnktc3VmZml4ZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVuYW1lLWV4cG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVuYW1lLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tc2lkZS1lZmZlY3QtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby11c2VsZXNzLXBhdGgtc2VnbWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vcmVxdWlyZWQtZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS90b3Atc2lkZS1lZmZlY3QtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICAvLyBmcFxuICAgICAgXCJmcC9uby1hcmd1bWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJmcC9uby1kZWxldGVcIjogXCJlcnJvclwiLFxuICAgICAgLy8gaW1wb3J0XG4gICAgICBcImltcG9ydC9leHBvcnRcIjogXCJlcnJvclwiLFxuICAgICAgXCJpbXBvcnQvZmlyc3RcIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJpbXBvcnQvbmV3bGluZS1hZnRlci1pbXBvcnRcIjogXCJlcnJvclwiLCAvLyBhbHJlYWR5IGhhbmRsZWQgYnkgcHJldHRpZXIncyBwbHVnaW4gYEBpYW52cy9wcmV0dGllci1wbHVnaW4tc29ydC1pbXBvcnRzYFxuICAgICAgXCJpbXBvcnQvbm8tYWJzb2x1dGUtcGF0aFwiOiBcImVycm9yXCIsXG4gICAgICBcImltcG9ydC9uby1jb21tb25qc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIGFsbG93UmVxdWlyZTogZmFsc2UsXG4gICAgICAgICAgYWxsb3dDb25kaXRpb25hbFJlcXVpcmU6IGZhbHNlLFxuICAgICAgICAgIGFsbG93UHJpbWl0aXZlTW9kdWxlczogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgLyoqXG4gICAgICAgKiAxLiBUaGUgRVNNIHNwZWNpZmljYXRpb24gZGlkbuKAmXQgc2F5IGFueXRoaW5nIGFib3V0IGludGVyb3BlcmFiaWxpdHkgd2l0aCBDb21tb25KUy4gU2VlOiBodHRwczovL2Jsb2cuYW5kcmV3YnJhbi5jaC9kZWZhdWx0LWV4cG9ydHMtaW4tY29tbW9uanMtbGlicmFyaWVzL1xuICAgICAgICogMi4gUmVleHBvcnRpbmcgbGlrZSBgZXhwb3J0ICogZnJvbSAnZm9vJ2Agd2lsbCBiZSBkaWZmaWN1bHQuXG4gICAgICAgKi9cbiAgICAgIFwiaW1wb3J0L25vLWRlZmF1bHQtZXhwb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLWR1cGxpY2F0ZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJpbXBvcnQvbm8tZHluYW1pYy1yZXF1aXJlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLWVtcHR5LW5hbWVkLWJsb2Nrc1wiOiBcImVycm9yXCIsIC8vIFRoZSBmZWF0dXJlIG9mIHRoaXMgcnVsZSBpcyBhbHJlYWR5IGhhbmRsZWQgYnkgUHJldHRpZXIuIEJ1dCB3ZSBzdGlsbCBwdXQgaXQgaGVyZS5cbiAgICAgIFwiaW1wb3J0L25vLW11dGFibGUtZXhwb3J0c1wiOiBcImVycm9yXCIsIC8vIGZvcmJpZCBjb2RlIGxpa2UgYGV4cG9ydCBsZXQgY291bnQgPSAzYFxuICAgICAgXCJpbXBvcnQvbm8tbmFtZWQtZGVmYXVsdFwiOiBcImVycm9yXCIsXG4gICAgICBcImltcG9ydC9uby1yZWxhdGl2ZS1wYWNrYWdlc1wiOiBcImVycm9yXCIsIC8vIGZvcmJpZCB0byBpbXBvcnQgbW9kdWxlIGZyb20gb3RoZXIgbW9ub3JlcG8gcGFja2FnZXMgYnkgcmVsYXRpdmUgcGF0aHNcbiAgICAgIFwiaW1wb3J0L25vLXNlbGYtaW1wb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLXdlYnBhY2stbG9hZGVyLXN5bnRheFwiOiBcImVycm9yXCIsXG4gICAgICAvLyBuXG4gICAgICBcIm4vaGFuZGxlLWNhbGxiYWNrLWVyclwiOiBbXCJlcnJvclwiLCBcIl4oZXJyfGVycm9yKSRcIl0sXG4gICAgICBcIm4vbm8tY2FsbGJhY2stbGl0ZXJhbFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tZGVwcmVjYXRlZC1hcGlcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL25vLWV4cG9ydHMtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9uby1uZXctcmVxdWlyZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tcGF0aC1jb25jYXRcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL25vLXByb2Nlc3MtZXhpdFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tdW5wdWJsaXNoZWQtYmluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9wcmVmZXItZ2xvYmFsL2J1ZmZlclwiOiBbXCJlcnJvclwiLCBcIm5ldmVyXCJdLFxuICAgICAgXCJuL3ByZWZlci1nbG9iYWwvY29uc29sZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC9wcm9jZXNzXCI6IFtcImVycm9yXCIsIFwibmV2ZXJcIl0sXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC90ZXh0LWRlY29kZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL3ByZWZlci1nbG9iYWwvdGV4dC1lbmNvZGVyXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9wcmVmZXItZ2xvYmFsL3VybFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC91cmwtc2VhcmNoLXBhcmFtc1wiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJvY2Vzcy1leGl0LWFzLXRocm93XCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHByb21pc2VcbiAgICAgIFwicHJvbWlzZS9uby1yZXR1cm4td3JhcFwiOiBcImVycm9yXCIsXG4gICAgICBcInByb21pc2UvcGFyYW0tbmFtZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJwcm9taXNlL3ByZWZlci1jYXRjaFwiOiBcImVycm9yXCIsXG4gICAgICAvLyByZWFjdFxuICAgICAgLy8gXCJyZWFjdC9ob29rLXVzZS1zdGF0ZVwiOiBcImVycm9yXCIsIC8vIFRoaXMgcnVsZSB3aWxsIGNhdXNlIHNvbWUgd2FybmluZ3MgYmVjYXVzZSB3ZSBkb24ndCBzcGVjaWZ5IHRoZSB2ZXJzaW9uIG9mIHJlYWN0LlxuICAgICAgXCJyZWFjdC9qc3gtZmlsZW5hbWUtZXh0ZW5zaW9uXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7IGFsbG93OiBcImFzLW5lZWRlZFwiLCBleHRlbnNpb25zOiBbXCIuanN4XCIsIFwiLnRzeFwiXSB9LFxuICAgICAgXSxcbiAgICAgIFwicmVhY3QvanN4LWtleVwiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0L2pzeC1uby1kdXBsaWNhdGUtcHJvcHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtbm8tdW5kZWZcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtbm8tdXNlbGVzcy1mcmFnbWVudFwiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWQtbXVsdGlcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtdXNlcy12YXJzXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHJlYWN0LWhvb2tzXG4gICAgICBcInJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1wiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0LWhvb2tzL3J1bGVzLW9mLWhvb2tzXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHNvbmFyanNcbiAgICAgIFwic29uYXJqcy9uby1jb2xsYXBzaWJsZS1pZlwiOiBcImVycm9yXCIsXG4gICAgICBcInNvbmFyanMvbm8tYWxsLWR1cGxpY2F0ZWQtYnJhbmNoZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJzb25hcmpzL25vLWlkZW50aWNhbC1jb25kaXRpb25zXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1pZGVudGljYWwtZXhwcmVzc2lvbnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJzb25hcmpzL25vLWlnbm9yZWQtcmV0dXJuXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1pbnZlcnRlZC1ib29sZWFuLWNoZWNrXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1uZXN0ZWQtc3dpdGNoXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby11c2VsZXNzLWNhdGNoXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9wcmVmZXItaW1tZWRpYXRlLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgICAvLyB1bmljb3JuXG4gICAgICAvLyAndW5pY29ybi9uby1udWxsJzogJ2Vycm9yJywgLy8gbnVsbCBjYW4gYmUgdXNlZnVsIHdoZW4gaW50ZXJhY3Qgd2l0aCBqc29uLlxuICAgICAgXCJ1bmljb3JuL2NvbnNpc3RlbnQtYXNzZXJ0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9jb25zaXN0ZW50LWRhdGUtY2xvbmVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2NvbnNpc3RlbnQtZGVzdHJ1Y3R1cmluZ1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vY29uc2lzdGVudC1lbXB0eS1hcnJheS1zcHJlYWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2Vycm9yLW1lc3NhZ2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2V4cGxpY2l0LWxlbmd0aC1jaGVja1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vZmlsZW5hbWUtY2FzZVwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyBjYXNlczogeyBrZWJhYkNhc2U6IHRydWUsIHBhc2NhbENhc2U6IHRydWUgfSB9LFxuICAgICAgXSxcbiAgICAgIFwidW5pY29ybi9pbXBvcnQtc3R5bGVcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBzdHlsZXM6IHtcbiAgICAgICAgICAgIHJlYWN0OiB7IG5hbWVkOiB0cnVlIH0sXG5cbiAgICAgICAgICAgIGNoaWxkX3Byb2Nlc3M6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgZnM6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJmcy9wcm9taXNlc1wiOiB7IGRlZmF1bHQ6IHRydWUgfSxcbiAgICAgICAgICAgIHByb2Nlc3M6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJ1dGlsL3R5cGVzXCI6IHsgbmFtZWQ6IHRydWUgfSxcbiAgICAgICAgICAgIFwibm9kZTpjaGlsZF9wcm9jZXNzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOmZzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOmZzL3Byb21pc2VzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOnByb2Nlc3NcIjogeyBkZWZhdWx0OiB0cnVlIH0sXG4gICAgICAgICAgICBcIm5vZGU6dXRpbC90eXBlc1wiOiB7IG5hbWVkOiB0cnVlIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcInVuaWNvcm4vbmV3LWZvci1idWlsdGluc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tYWJ1c2l2ZS1lc2xpbnQtZGlzYWJsZVwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tYWNjZXNzb3ItcmVjdXJzaW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1hcnJheS1jYWxsYmFjay1yZWZlcmVuY2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLWFycmF5LW1ldGhvZC10aGlzLWFyZ3VtZW50XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1hd2FpdC1pbi1wcm9taXNlLW1ldGhvZHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLWZvci1sb29wXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1pbnN0YW5jZW9mLWJ1aWx0aW5zXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1sb25lbHktaWZcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5hbWVkLWRlZmF1bHRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5lZ2F0aW9uLWluLWVxdWFsaXR5LWNoZWNrXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1uZXctYXJyYXlcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5ldy1idWZmZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXByb2Nlc3MtZXhpdFwiOiBcImVycm9yXCIsIC8vIFByZWZlciBgbi9uby1wcm9jZXNzLWV4aXRgLCBidXQgYXQgdGhlIHNhbWUgdGltZSB1c2luZyB0aGlzIHJ1bGUgc2VlbXMgaGF2ZSBubyBwcm9ibGVtXG4gICAgICBcInVuaWNvcm4vbm8tc2luZ2xlLXByb21pc2UtaW4tcHJvbWlzZS1tZXRob2RzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1zdGF0aWMtb25seS1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdGhlbmFibGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXRoaXMtYXNzaWdubWVudFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdHlwZW9mLXVuZGVmaW5lZFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdW5yZWFkYWJsZS1hcnJheS1kZXN0cnVjdHVyaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby11bnJlYWRhYmxlLWlpZmVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXVzZWxlc3MtZmFsbGJhY2staW4tc3ByZWFkXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby11c2VsZXNzLXNwcmVhZFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdXNlbGVzcy1zd2l0Y2gtY2FzZVwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8temVyby1mcmFjdGlvbnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1hcnJheS1mbGF0LW1hcFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLWRhdGUtbm93XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItZXhwb3J0LWZyb21cIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1nbG9iYWwtdGhpc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLWluY2x1ZGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItbG9naWNhbC1vcGVyYXRvci1vdmVyLXRlcm5hcnlcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1tYXRoLW1pbi1tYXhcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1tb2R1bGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1uZWdhdGl2ZS1pbmRleFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLW51bWJlci1wcm9wZXJ0aWVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItb2JqZWN0LWZyb20tZW50cmllc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLW9wdGlvbmFsLWNhdGNoLWJpbmRpbmdcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1yZWZsZWN0LWFwcGx5XCI6IFwiZXJyb3JcIiwgLy8gaHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9lc2xpbnQtcGx1Z2luLXVuaWNvcm4vaXNzdWVzLzIzNjVcbiAgICAgIFwidW5pY29ybi9wcmVmZXItcmVnZXhwLXRlc3RcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1zdHJpbmctcmVwbGFjZS1hbGxcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1zdHJpbmctc2xpY2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci10ZXJuYXJ5XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9yZXF1aXJlLWFycmF5LWpvaW4tc2VwYXJhdG9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9yZXF1aXJlLW51bWJlci10by1maXhlZC1kaWdpdHMtYXJndW1lbnRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3RleHQtZW5jb2RpbmctaWRlbnRpZmllci1jYXNlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi90aHJvdy1uZXctZXJyb3JcIjogXCJlcnJvclwiLFxuXG4gICAgICBcIkBmZW5nZS9jYWxsLWFyZ3VtZW50cy1sZW5ndGhcIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8taW5zdGFuY2VvZi1idWlsdGluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlL25vLW5lc3RlZC1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby1uZXN0ZWQtZnVuY3Rpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8tcmVzdHJpY3RlZC1sb29wc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby10b3AtbGV2ZWwtYXJyb3ctZnVuY3Rpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8tdHJpcGxlLXNsYXNoLWRpcmVjdGl2ZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby11bm5lY2Vzc2FyeS10ZW1wbGF0ZS1zdHJpbmdcIjogXCJlcnJvclwiLFxuXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIFwidHMtZXhwZWN0LWVycm9yXCI6IHRydWUsXG4gICAgICAgICAgXCJ0cy1pZ25vcmVcIjogdHJ1ZSxcbiAgICAgICAgICBcInRzLW5vY2hlY2tcIjogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZWxlc3MtZW1wdHktZXhwb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1mb3Itb2ZcIjogXCJlcnJvclwiLFxuICAgIH0sXG4gIH0gYXMgY29uc3Q7XG59XG4iXX0=
|
|
467
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvanMvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssV0FBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sUUFBUSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3hELE9BQU8sYUFBYSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sU0FBUyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sS0FBSyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxRQUFRLE1BQU0sa0JBQWtCLENBQUM7QUFDeEMsT0FBTyxZQUFZLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxPQUFPLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxhQUFhLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxXQUFXLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxnQkFBZ0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLHNCQUFzQixNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sYUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xELE9BQU8sYUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xELE9BQU8sT0FBTyxNQUFNLFNBQVMsQ0FBQztBQUU5QixNQUFNLFVBQVUsU0FBUztJQUN2QiwwRkFBMEY7SUFDMUYsTUFBTSxtQkFBbUIsR0FBRztRQUMxQixRQUFRLEVBQUUsT0FBTztRQUNqQixrQkFBa0IsRUFBRSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUM7UUFFM0MsZ0JBQWdCLEVBQUU7WUFDaEIsT0FBTztZQUNQLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxJQUFJLEVBQUU7U0FDdEQ7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixPQUFPO1lBQ1A7Z0JBQ0UsYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLFlBQVksRUFBRSxL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QUEyQixFQUFFLE9BQU87WUFDcEMsNEJBQTRCLEVBQUUsT0FBTztZQUNyQyxvQ0FBb0MsRUFBRSxPQUFPO1lBQzdDLGtDQUFrQyxFQUFFLE9BQU87WUFDM0MsdUNBQXVDLEVBQUUsT0FBTztZQUVoRCxtQ0FBbUMsRUFBRTtnQkFDbkMsT0FBTztnQkFDUDtvQkFDRSxpQkFBaUIsRUFBRSxJQUFJO29CQUN2QixXQUFXLEVBQUUsSUFBSTtvQkFDakIsWUFBWSxFQUFFLElBQUk7aUJBQ25CO2FBQ0Y7WUFDRCxrQ0FBa0MsRUFBRSxPQUFPO1lBQzNDLDRDQUE0QyxFQUFFLE9BQU87WUFDckQsa0NBQWtDLEVBQUUsT0FBTztTQUM1QztLQUNPLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZmVuZ2VQbHVnaW4gZnJvbSBcIkBmZW5nZS9lc2xpbnQtcGx1Z2luXCI7XG5pbXBvcnQgdHNQbHVnaW4gZnJvbSBcIkB0eXBlc2NyaXB0LWVzbGludC9lc2xpbnQtcGx1Z2luXCI7XG5pbXBvcnQgY29uZnVzaW5nS2V5cyBmcm9tIFwiY29uZnVzaW5nLWJyb3dzZXItZ2xvYmFsc1wiO1xuaW1wb3J0IGVzeFBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1lcy14XCI7XG5pbXBvcnQgKiBhcyBlc21QbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tZXNtXCI7XG5pbXBvcnQgZnBQbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tZnBcIjtcbmltcG9ydCBpbXBvcnRQbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4taW1wb3J0XCI7XG5pbXBvcnQgblBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1uXCI7XG5pbXBvcnQgcHJvbWlzZVBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1wcm9taXNlXCI7XG5pbXBvcnQgcmVhY3RQbHVnaW4gZnJvbSBcImVzbGludC1wbHVnaW4tcmVhY3RcIjtcbmltcG9ydCByZWFjdEhvb2tzUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLXJlYWN0LWhvb2tzXCI7XG5pbXBvcnQgc2ltcGxlSW1wb3J0U29ydFBsdWdpbiBmcm9tIFwiZXNsaW50LXBsdWdpbi1zaW1wbGUtaW1wb3J0LXNvcnRcIjtcbmltcG9ydCBzb25hcmpzUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLXNvbmFyanNcIjtcbmltcG9ydCB1bmljb3JuUGx1Z2luIGZyb20gXCJlc2xpbnQtcGx1Z2luLXVuaWNvcm5cIjtcbmltcG9ydCBnbG9iYWxzIGZyb20gXCJnbG9iYWxzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRKc0Jhc2UoKSB7XG4gIC8vIGNvcGllZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9zdGFuZGFyZC9lc2xpbnQtY29uZmlnLXN0YW5kYXJkL2Jsb2IvbWFzdGVyL3NyYy9pbmRleC50c1xuICBjb25zdCBzdGFuZGFyZENvbmZpZ1J1bGVzID0ge1xuICAgIFwibm8tdmFyXCI6IFwiZXJyb3JcIixcbiAgICBcIm9iamVjdC1zaG9ydGhhbmRcIjogW1wiZXJyb3JcIiwgXCJwcm9wZXJ0aWVzXCJdLFxuXG4gICAgXCJhY2Nlc3Nvci1wYWlyc1wiOiBbXG4gICAgICBcImVycm9yXCIsXG4gICAgICB7IHNldFdpdGhvdXRHZXQ6IHRydWUsIGVuZm9yY2VGb3JDbGFzc01lbWJlcnM6IHRydWUgfSxcbiAgICBdLFxuICAgIFwiYXJyYXktY2FsbGJhY2stcmV0dXJuXCI6IFtcbiAgICAgIFwiZXJyb3JcIixcbiAgICAgIHtcbiAgICAgICAgYWxsb3dJbXBsaWNpdDogZmFsc2UsXG4gICAgICAgIGNoZWNrRm9yRWFjaDogZmFsc2UsXG4gICAgICB9LFxuICAgIF0sXG4gICAgY2FtZWxjYXNlOiBbXG4gICAgICBcImVycm9yXCIsXG4gICAgICB7XG4gICAgICAgIGFsbG93OiBbXCJeVU5TQUZFX1wiXSxcbiAgICAgICAgcHJvcGVydGllczogXCJuZXZlclwiLFxuICAgICAgICBpZ25vcmVHbG9iYWxzOiB0cnVlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFwiY29uc3RydWN0b3Itc3VwZXJcIjogXCJlcnJvclwiLFxuICAgIFwiZGVmYXVsdC1jYXNlLWxhc3RcIjogXCJlcnJvclwiLFxuICAgIC8vICdkb3Qtbm90YXRpb24nOiBbJ2Vycm9yJywgeyBhbGxvd0tleXdvcmRzOiB0cnVlIH1dLCAvLyBUT0RPOiBUaGlzIHNob3VsZCBiZSBlbmFibGVkLiBEaXNhYmxlIGl0IGFzIGl0IGNvbmZsaWN0cyB3aXRoIHRzIHdoZW4gZW5hYmxpbmcgdHMtY2hlY2tcbiAgICBlcWVxZXE6IFtcImVycm9yXCIsIFwiYWx3YXlzXCIsIHsgbnVsbDogXCJpZ25vcmVcIiB9XSxcbiAgICBcIm5ldy1jYXBcIjogW1wiZXJyb3JcIiwgeyBuZXdJc0NhcDogdHJ1ZSwgY2FwSXNOZXc6IGZhbHNlLCBwcm9wZXJ0aWVzOiB0cnVlIH1dLFxuICAgIC8vICduZXctcGFyZW5zJzogJ2Vycm9yJyxcbiAgICBcIm5vLWFycmF5LWNvbnN0cnVjdG9yXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWFzeW5jLXByb21pc2UtZXhlY3V0b3JcIjogXCJlcnJvclwiLFxuICAgIFwibm8tY2FsbGVyXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNhc2UtZGVjbGFyYXRpb25zXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNsYXNzLWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1jb21wYXJlLW5lZy16ZXJvXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNvbmQtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWNvbnN0LWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1jb25zdGFudC1jb25kaXRpb25cIjogW1wiZXJyb3JcIiwgeyBjaGVja0xvb3BzOiBmYWxzZSB9XSxcbiAgICBcIm5vLWNvbnRyb2wtcmVnZXhcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZGVidWdnZXJcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZGVsZXRlLXZhclwiOiBcImVycm9yXCIsXG4gICAgXCJuby1kdXBlLWFyZ3NcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZHVwZS1jbGFzcy1tZW1iZXJzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWR1cGUta2V5c1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1kdXBsaWNhdGUtY2FzZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLWJhY2tyZWZlcmVuY2VcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZW1wdHlcIjogW1wiZXJyb3JcIiwgeyBhbGxvd0VtcHR5Q2F0Y2g6IHRydWUgfV0sXG4gICAgXCJuby1lbXB0eS1jaGFyYWN0ZXItY2xhc3NcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZW1wdHktcGF0dGVyblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1ldmFsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWV4LWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1leHRlbmQtbmF0aXZlXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWV4dHJhLWJpbmRcIjogXCJlcnJvclwiLFxuICAgIFwibm8tZXh0cmEtYm9vbGVhbi1jYXN0XCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWZhbGx0aHJvdWdoXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWZ1bmMtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWdsb2JhbC1hc3NpZ25cIjogXCJlcnJvclwiLFxuICAgIFwibm8taW1wbGllZC1ldmFsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLWltcG9ydC1hc3NpZ25cIjogXCJlcnJvclwiLFxuICAgIFwibm8taW52YWxpZC1yZWdleHBcIjogXCJlcnJvclwiLFxuICAgIFwibm8taXJyZWd1bGFyLXdoaXRlc3BhY2VcIjogXCJlcnJvclwiLFxuICAgIFwibm8taXRlcmF0b3JcIjogXCJlcnJvclwiLFxuICAgIFwibm8tbGFiZWxzXCI6IFtcImVycm9yXCIsIHsgYWxsb3dMb29wOiBmYWxzZSwgYWxsb3dTd2l0Y2g6IGZhbHNlIH1dLFxuICAgIFwibm8tbG9uZS1ibG9ja3NcIjogXCJlcnJvclwiLFxuICAgIFwibm8tbG9zcy1vZi1wcmVjaXNpb25cIjogXCJlcnJvclwiLFxuICAgIFwibm8tbWlzbGVhZGluZy1jaGFyYWN0ZXItY2xhc3NcIjogXCJlcnJvclwiLFxuICAgIFwibm8tcHJvdG90eXBlLWJ1aWx0aW5zXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVzZWxlc3MtY2F0Y2hcIjogXCJlcnJvclwiLFxuICAgIFwibm8tbXVsdGktc3RyXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLW5ld1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1uZXctZnVuY1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1uZXctd3JhcHBlcnNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tb2JqLWNhbGxzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLW9jdGFsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLW9jdGFsLWVzY2FwZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby1wcm9taXNlLWV4ZWN1dG9yLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgXCJuby1wcm90b1wiOiBcImVycm9yXCIsXG4gICAgXCJuby1yZWRlY2xhcmVcIjogW1wiZXJyb3JcIiwgeyBidWlsdGluR2xvYmFsczogZmFsc2UgfV0sXG4gICAgXCJuby1yZWdleC1zcGFjZXNcIjogXCJlcnJvclwiLFxuICAgIFwibm8tcmV0dXJuLWFzc2lnblwiOiBbXCJlcnJvclwiLCBcImV4Y2VwdC1wYXJlbnNcIl0sXG4gICAgXCJuby1zY3JpcHQtdXJsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXNlbGYtYXNzaWduXCI6IFtcImVycm9yXCIsIHsgcHJvcHM6IHRydWUgfV0sXG4gICAgXCJuby1zZWxmLWNvbXBhcmVcIjogXCJlcnJvclwiLFxuICAgIFwibm8tc2VxdWVuY2VzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXNoYWRvdy1yZXN0cmljdGVkLW5hbWVzXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXNwYXJzZS1hcnJheXNcIjogXCJlcnJvclwiLFxuICAgIC8vICduby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmcnOiAnZXJyb3InLCAvLyBWU0NvZGUgYW4gV2ViU3Rvcm0gY2FuIGRldGVjdCBpdC4gRW5hYmxpbmcgdGhpcyB3aWxsIGRlY3JlYXNlIGZsZXhpYmlsaXR5LiBGb3IgZXhhbXBsZSwgbG9uZyBjb250ZW50IGNvbnRhaW5pbmcgJHtmb299IGlzIHJlYXNvbmFibGUuXG4gICAgXCJuby10aGlzLWJlZm9yZS1zdXBlclwiOiBcImVycm9yXCIsXG4gICAgXCJuby10aHJvdy1saXRlcmFsXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVuZGVmXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVubW9kaWZpZWQtbG9vcC1jb25kaXRpb25cIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5uZWVkZWQtdGVybmFyeVwiOiBbXCJlcnJvclwiLCB7IGRlZmF1bHRBc3NpZ25tZW50OiBmYWxzZSB9XSxcbiAgICBcIm5vLXVucmVhY2hhYmxlXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVucmVhY2hhYmxlLWxvb3BcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5zYWZlLWZpbmFsbHlcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdW5zYWZlLW5lZ2F0aW9uXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXVudXNlZC1leHByZXNzaW9uc1wiOiBbXG4gICAgICBcImVycm9yXCIsXG4gICAgICB7XG4gICAgICAgIGVuZm9yY2VGb3JKU1g6IHRydWUsXG4gICAgICAgIGFsbG93U2hvcnRDaXJjdWl0OiB0cnVlLFxuICAgICAgICBhbGxvd1Rlcm5hcnk6IHRydWUsXG4gICAgICAgIGFsbG93VGFnZ2VkVGVtcGxhdGVzOiB0cnVlLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFwibm8tdW51c2VkLXZhcnNcIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAge1xuICAgICAgICBhcmdzOiBcIm5vbmVcIixcbiAgICAgICAgY2F1Z2h0RXJyb3JzOiBcIm5vbmVcIixcbiAgICAgICAgaWdub3JlUmVzdFNpYmxpbmdzOiB0cnVlLFxuICAgICAgICB2YXJzOiBcImFsbFwiLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFwibm8tdXNlLWJlZm9yZS1kZWZpbmVcIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAgeyBmdW5jdGlvbnM6IGZhbHNlLCBjbGFzc2VzOiBmYWxzZSwgdmFyaWFibGVzOiBmYWxzZSB9LFxuICAgIF0sXG4gICAgXCJuby11c2VsZXNzLWNhbGxcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdXNlbGVzcy1jb21wdXRlZC1rZXlcIjogXCJlcnJvclwiLFxuICAgIFwibm8tdXNlbGVzcy1jb25zdHJ1Y3RvclwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLWVzY2FwZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLXJlbmFtZVwiOiBcImVycm9yXCIsXG4gICAgXCJuby11c2VsZXNzLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgXCJuby12b2lkXCI6IFwiZXJyb3JcIixcbiAgICBcIm5vLXdpdGhcIjogXCJlcnJvclwiLFxuICAgIFwib25lLXZhclwiOiBbXCJlcnJvclwiLCB7IGluaXRpYWxpemVkOiBcIm5ldmVyXCIgfV0sXG4gICAgXCJwcmVmZXItY29uc3RcIjogW1wiZXJyb3JcIiwgeyBkZXN0cnVjdHVyaW5nOiBcImFsbFwiIH1dLFxuICAgIFwicHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1wiOiBcImVycm9yXCIsXG4gICAgXCJwcmVmZXItcmVnZXgtbGl0ZXJhbHNcIjogW1wiZXJyb3JcIiwgeyBkaXNhbGxvd1JlZHVuZGFudFdyYXBwaW5nOiB0cnVlIH1dLFxuICAgIFwic3ltYm9sLWRlc2NyaXB0aW9uXCI6IFwiZXJyb3JcIixcbiAgICBcInVuaWNvZGUtYm9tXCI6IFtcImVycm9yXCIsIFwibmV2ZXJcIl0sXG4gICAgXCJ1c2UtaXNuYW5cIjogW1xuICAgICAgXCJlcnJvclwiLFxuICAgICAge1xuICAgICAgICBlbmZvcmNlRm9yU3dpdGNoQ2FzZTogdHJ1ZSxcbiAgICAgICAgZW5mb3JjZUZvckluZGV4T2Y6IHRydWUsXG4gICAgICB9LFxuICAgIF0sXG4gICAgXCJ2YWxpZC10eXBlb2ZcIjogW1wiZXJyb3JcIiwgeyByZXF1aXJlU3RyaW5nTGl0ZXJhbHM6IHRydWUgfV0sXG4gICAgeW9kYTogW1wiZXJyb3JcIiwgXCJuZXZlclwiXSxcbiAgfSBhcyBjb25zdDtcblxuICByZXR1cm4ge1xuICAgIG5hbWU6IFwiZmVuZ2UvamF2YXNjcmlwdFwiLFxuICAgIGZpbGVzOiBbXCIqKi8qLntqcyxjanMsbWpzLGpzeH1cIl0sXG4gICAgLy8gaHR0cHM6Ly9lc2xpbnQub3JnL2RvY3MvbGF0ZXN0L3VzZS9jb25maWd1cmUvbGFuZ3VhZ2Utb3B0aW9uc1xuICAgIGxhbmd1YWdlT3B0aW9uczoge1xuICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICBzb3VyY2VUeXBlOiBcIm1vZHVsZVwiLFxuICAgICAgcGFyc2VyT3B0aW9uczoge1xuICAgICAgICAvLyBUT0RPIGBlY21hVmVyc2lvbmAgYW5kIGBzb3VyY2VUeXBlYCBhcmUgbm8gc3RhbmRhcmQgaGVyZS4gaW1wb3J0L25vLWRlZmF1bHQtZXhwb3J0IHJlcXVpcmVkIHRoaXNcbiAgICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICAgIHNvdXJjZVR5cGU6IFwibW9kdWxlXCIsXG4gICAgICAgIGVjbWFGZWF0dXJlczoge1xuICAgICAgICAgIGpzeDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBnbG9iYWxzOiB7XG4gICAgICAgIC4uLk9iamVjdC5mcm9tRW50cmllcyhcbiAgICAgICAgICBPYmplY3QuZW50cmllcyhnbG9iYWxzLmJyb3dzZXIpXG4gICAgICAgICAgICAuZmlsdGVyKChba10pID0+ICFjb25mdXNpbmdLZXlzLmluY2x1ZGVzKGspKVxuICAgICAgICAgICAgLmZpbHRlcigoW2tdKSA9PiAhW1wic2VsZlwiLCBcImdsb2JhbFwiXS5pbmNsdWRlcyhrKSksIC8vIHByZWZlciBgZ2xvYmFsVGhpc2BcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBwbHVnaW5zOiB7XG4gICAgICBmcDogZnBQbHVnaW4sXG4gICAgICBuOiBuUGx1Z2luLFxuICAgICAgaW1wb3J0OiBpbXBvcnRQbHVnaW4sXG4gICAgICBwcm9taXNlOiBwcm9taXNlUGx1Z2luLFxuICAgICAgcmVhY3Q6IHJlYWN0UGx1Z2luLFxuICAgICAgXCJyZWFjdC1ob29rc1wiOiByZWFjdEhvb2tzUGx1Z2luLFxuICAgICAgc29uYXJqczogc29uYXJqc1BsdWdpbixcbiAgICAgIHVuaWNvcm46IHVuaWNvcm5QbHVnaW4sXG4gICAgICBcImVzLXhcIjogZXN4UGx1Z2luLFxuICAgICAgZXNtOiBlc21QbHVnaW4sXG4gICAgICBcInNpbXBsZS1pbXBvcnQtc29ydFwiOiBzaW1wbGVJbXBvcnRTb3J0UGx1Z2luLFxuICAgICAgXCJAZmVuZ2VcIjogZmVuZ2VQbHVnaW4sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludFwiOiB7IHJ1bGVzOiB0c1BsdWdpbi5ydWxlcyB9LCAvLyBUT0RPOiBVZ2x5LiBTdWJtaXQgYSBwciB0byB0eXBlc2NyaXB0LXBsdWdpbiB0byBmaXggaXQuXG4gICAgfSxcbiAgICBydWxlczoge1xuICAgICAgLy8gMS4gc3RhbmRhcmQgY29uZmlnIHJ1bGVzXG4gICAgICAuLi5zdGFuZGFyZENvbmZpZ1J1bGVzLFxuXG4gICAgICAvLyAyLiBjb2RlIHN0eWxlIGZvciBhIGJldHRlciByZWFkYWJpbGl0eVxuICAgICAgXCJhcnJvdy1ib2R5LXN0eWxlXCI6IFtcImVycm9yXCIsIFwiYXMtbmVlZGVkXCJdLFxuICAgICAgLy8gU29ydCBpbXBvcnRzIGJ5IHByZXR0aWVyLiBUdXJuIGluIG9mZi5cbiAgICAgIC8vIFwic2ltcGxlLWltcG9ydC1zb3J0L2ltcG9ydHNcIjogW1xuICAgICAgLy8gICBcImVycm9yXCIsXG4gICAgICAvLyAgIHsgZ3JvdXBzOiBbW1wiXlxcXFx1MDAwMFwiLCBcIl5ub2RlOlwiLCBcIl5AP1xcXFx3XCIsIFwiXlwiLCBcIl5cXFxcLlwiXV0gfSxcbiAgICAgIC8vIF0sXG4gICAgICBcInNpbXBsZS1pbXBvcnQtc29ydC9leHBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItbm9kZS1wcm90b2NvbFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vZXNjYXBlLWNhc2VcIjogXCJlcnJvclwiLCAvLyAnXFx1ZDgzNCcgLT4gJ1xcdUQ4MzQnXG4gICAgICAvLyBcInVuaWNvcm4vbnVtYmVyLWxpdGVyYWwtY2FzZVwiOiBcImVycm9yXCIsIC8vIDBYRkYgLT4gMHhGRiAvLyBjb25mbGljdCB3aXRoIHByZXR0aWVyXG5cbiAgICAgIC8vIDMuIGJhbiBzb21lIHN5bnRheGVzIHRvIHJlZHVjZSBtaXN0YWtlc1xuICAgICAgXCJkZWZhdWx0LXBhcmFtLWxhc3RcIjogXCJlcnJvclwiLFxuICAgICAgXCJmb3ItZGlyZWN0aW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZnVuYy1uYW1lLW1hdGNoaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZnVuYy1uYW1lc1wiOiBcImVycm9yXCIsIC8vIGFsd2F5cyByZXF1aXJlIGEgbmFtZSBmb3IgZnVuY3Rpb24gZGVjbGFyYXRpb25cbiAgICAgIFwiZnVuYy1zdHlsZVwiOiBbXCJlcnJvclwiLCBcImRlY2xhcmF0aW9uXCIsIHsgYWxsb3dBcnJvd0Z1bmN0aW9uczogdHJ1ZSB9XSxcbiAgICAgIFwiZ2V0dGVyLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgICBcImluaXQtZGVjbGFyYXRpb25zXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibG9naWNhbC1hc3NpZ25tZW50LW9wZXJhdG9yc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgXCJhbHdheXNcIixcbiAgICAgICAgeyBlbmZvcmNlRm9ySWZTdGF0ZW1lbnRzOiB0cnVlIH0sXG4gICAgICBdLFxuICAgICAgXCJtYXgtZGVwdGhcIjogW1wiZXJyb3JcIiwgeyBtYXg6IDUgfV0sXG4gICAgICBcIm1heC1wYXJhbXNcIjogW1wiZXJyb3JcIiwgeyBtYXg6IDQgfV0sXG4gICAgICBcIm5vLWJpdHdpc2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1jb25zb2xlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tY29uc3RhbnQtYmluYXJ5LWV4cHJlc3Npb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1kdXBlLWVsc2UtaWZcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1kdXBsaWNhdGUtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLWVtcHR5LXN0YXRpYy1ibG9ja1wiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLWVtcHR5LWZ1bmN0aW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8taW1wbGljaXQtY29lcmNpb25cIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHsgZGlzYWxsb3dUZW1wbGF0ZVNob3J0aGFuZDogdHJ1ZSwgYWxsb3c6IFtcIiEhXCJdIH0sXG4gICAgICBdLCAvLyBmb3JiaWQgY29kZSBsaWtlIGBjb25zdCBudW0gPSArc3RyYDtcbiAgICAgIFwibm8taW5uZXItZGVjbGFyYXRpb25zXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICBcImZ1bmN0aW9uc1wiLFxuICAgICAgICB7IGJsb2NrU2NvcGVkRnVuY3Rpb25zOiBcImRpc2FsbG93XCIgfSxcbiAgICAgIF0sXG4gICAgICBcIm5vLWludmFsaWQtdGhpc1wiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLWxvbmVseS1pZlwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLW11bHRpLWFzc2lnblwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLW5ldy1uYXRpdmUtbm9uY29uc3RydWN0b3JcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1ub25vY3RhbC1kZWNpbWFsLWVzY2FwZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLW9iamVjdC1jb25zdHJ1Y3RvclwiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLXBhcmFtLXJlYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tcGx1c3BsdXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJuby1zZXR0ZXItcmV0dXJuXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibm8tc2hhZG93XCI6IFtcImVycm9yXCIsIHsgaWdub3JlT25Jbml0aWFsaXphdGlvbjogdHJ1ZSB9XSxcbiAgICAgIFwibm8tdW5zYWZlLW9wdGlvbmFsLWNoYWluaW5nXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7IGRpc2FsbG93QXJpdGhtZXRpY09wZXJhdG9yczogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICAgIFwibm8tdW51c2VkLWxhYmVsc1wiOiBcImVycm9yXCIsXG4gICAgICBcIm5vLXVudXNlZC1wcml2YXRlLWNsYXNzLW1lbWJlcnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZXF1aXJlLWF3YWl0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwicmVxdWlyZS15aWVsZFwiOiBcImVycm9yXCIsXG4gICAgICBcInByZWZlci1hcnJvdy1jYWxsYmFja1wiOiBcImVycm9yXCIsXG4gICAgICBcInByZWZlci1leHBvbmVudGlhdGlvbi1vcGVyYXRvclwiOiBcImVycm9yXCIsXG4gICAgICBcInByZWZlci1vYmplY3QtaGFzLW93blwiOiBcImVycm9yXCIsXG4gICAgICAvLyBcInByZWZlci1vYmplY3Qtc3ByZWFkXCI6IFwiZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLXNwcmVhZFwiOiBcImVycm9yXCIsXG4gICAgICBcInByZWZlci10ZW1wbGF0ZVwiOiBcImVycm9yXCIsXG4gICAgICAvLyBlc1xuICAgICAgXCJlcy14L25vLWFjY2Vzc29yLXByb3BlcnRpZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlcy14L25vLWFzeW5jLWl0ZXJhdGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcImVzLXgvbm8tZ2VuZXJhdG9yc1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzLXgvbm8taGFzaGJhbmdcIjogXCJlcnJvclwiLFxuICAgICAgXCJlcy14L25vLWxlZ2FjeS1vYmplY3QtcHJvdG90eXBlLWFjY2Vzc29yLW1ldGhvZHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlcy14L25vLXRvcC1sZXZlbC1hd2FpdFwiOiBcImVycm9yXCIsXG4gICAgICAvLyBlc21cbiAgICAgIFwiZXNtL2V4aXN0aW5nLWZpbGUtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1jaXJjdWxhci1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXNtL25vLWRlY2xhcmF0aW9uLWZpbGUtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1kaXJlY3RvcnktaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1keW5hbWljLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tZW1wdHktZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby1naXQtaWdub3JlZC1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiZXNtL25vLXBoYW50b20tZGVwLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcXVlcnktc3VmZml4ZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVsYXRpdmUtcGFyZW50LWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVuYW1lLWV4cG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tcmVuYW1lLWltcG9ydHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vbm8tc2lkZS1lZmZlY3QtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS9uby11c2VsZXNzLXBhdGgtc2VnbWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJlc20vcmVxdWlyZWQtZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcImVzbS90b3Atc2lkZS1lZmZlY3QtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICAvLyBmcFxuICAgICAgXCJmcC9uby1hcmd1bWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJmcC9uby1kZWxldGVcIjogXCJlcnJvclwiLFxuICAgICAgLy8gaW1wb3J0XG4gICAgICBcImltcG9ydC9leHBvcnRcIjogXCJlcnJvclwiLFxuICAgICAgXCJpbXBvcnQvZmlyc3RcIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJpbXBvcnQvbmV3bGluZS1hZnRlci1pbXBvcnRcIjogXCJlcnJvclwiLCAvLyBhbHJlYWR5IGhhbmRsZWQgYnkgcHJldHRpZXIncyBwbHVnaW4gYEBpYW52cy9wcmV0dGllci1wbHVnaW4tc29ydC1pbXBvcnRzYFxuICAgICAgXCJpbXBvcnQvbm8tYWJzb2x1dGUtcGF0aFwiOiBcImVycm9yXCIsXG4gICAgICBcImltcG9ydC9uby1jb21tb25qc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIGFsbG93UmVxdWlyZTogZmFsc2UsXG4gICAgICAgICAgYWxsb3dDb25kaXRpb25hbFJlcXVpcmU6IGZhbHNlLFxuICAgICAgICAgIGFsbG93UHJpbWl0aXZlTW9kdWxlczogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgLyoqXG4gICAgICAgKiAxLiBUaGUgRVNNIHNwZWNpZmljYXRpb24gZGlkbuKAmXQgc2F5IGFueXRoaW5nIGFib3V0IGludGVyb3BlcmFiaWxpdHkgd2l0aCBDb21tb25KUy4gU2VlOiBodHRwczovL2Jsb2cuYW5kcmV3YnJhbi5jaC9kZWZhdWx0LWV4cG9ydHMtaW4tY29tbW9uanMtbGlicmFyaWVzL1xuICAgICAgICogMi4gUmVleHBvcnRpbmcgbGlrZSBgZXhwb3J0ICogZnJvbSAnZm9vJ2Agd2lsbCBiZSBkaWZmaWN1bHQuXG4gICAgICAgKi9cbiAgICAgIFwiaW1wb3J0L25vLWRlZmF1bHQtZXhwb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLWR1cGxpY2F0ZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJpbXBvcnQvbm8tZHluYW1pYy1yZXF1aXJlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLWVtcHR5LW5hbWVkLWJsb2Nrc1wiOiBcImVycm9yXCIsIC8vIFRoZSBmZWF0dXJlIG9mIHRoaXMgcnVsZSBpcyBhbHJlYWR5IGhhbmRsZWQgYnkgUHJldHRpZXIuIEJ1dCB3ZSBzdGlsbCBwdXQgaXQgaGVyZS5cbiAgICAgIFwiaW1wb3J0L25vLW11dGFibGUtZXhwb3J0c1wiOiBcImVycm9yXCIsIC8vIGZvcmJpZCBjb2RlIGxpa2UgYGV4cG9ydCBsZXQgY291bnQgPSAzYFxuICAgICAgXCJpbXBvcnQvbm8tbmFtZWQtZGVmYXVsdFwiOiBcImVycm9yXCIsXG4gICAgICBcImltcG9ydC9uby1yZWxhdGl2ZS1wYWNrYWdlc1wiOiBcImVycm9yXCIsIC8vIGZvcmJpZCB0byBpbXBvcnQgbW9kdWxlIGZyb20gb3RoZXIgbW9ub3JlcG8gcGFja2FnZXMgYnkgcmVsYXRpdmUgcGF0aHNcbiAgICAgIFwiaW1wb3J0L25vLXNlbGYtaW1wb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiaW1wb3J0L25vLXdlYnBhY2stbG9hZGVyLXN5bnRheFwiOiBcImVycm9yXCIsXG4gICAgICAvLyBuXG4gICAgICBcIm4vaGFuZGxlLWNhbGxiYWNrLWVyclwiOiBbXCJlcnJvclwiLCBcIl4oZXJyfGVycm9yKSRcIl0sXG4gICAgICBcIm4vbm8tY2FsbGJhY2stbGl0ZXJhbFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tZGVwcmVjYXRlZC1hcGlcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL25vLWV4cG9ydHMtYXNzaWduXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9uby1uZXctcmVxdWlyZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tcGF0aC1jb25jYXRcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL25vLXByb2Nlc3MtZXhpdFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vbm8tdW5wdWJsaXNoZWQtYmluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9wcmVmZXItZ2xvYmFsL2J1ZmZlclwiOiBbXCJlcnJvclwiLCBcIm5ldmVyXCJdLFxuICAgICAgXCJuL3ByZWZlci1nbG9iYWwvY29uc29sZVwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC9wcm9jZXNzXCI6IFtcImVycm9yXCIsIFwibmV2ZXJcIl0sXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC90ZXh0LWRlY29kZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJuL3ByZWZlci1nbG9iYWwvdGV4dC1lbmNvZGVyXCI6IFwiZXJyb3JcIixcbiAgICAgIFwibi9wcmVmZXItZ2xvYmFsL3VybFwiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJlZmVyLWdsb2JhbC91cmwtc2VhcmNoLXBhcmFtc1wiOiBcImVycm9yXCIsXG4gICAgICBcIm4vcHJvY2Vzcy1leGl0LWFzLXRocm93XCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHByb21pc2VcbiAgICAgIFwicHJvbWlzZS9uby1yZXR1cm4td3JhcFwiOiBcImVycm9yXCIsXG4gICAgICBcInByb21pc2UvcGFyYW0tbmFtZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJwcm9taXNlL3ByZWZlci1jYXRjaFwiOiBcImVycm9yXCIsXG4gICAgICAvLyByZWFjdFxuICAgICAgLy8gXCJyZWFjdC9ob29rLXVzZS1zdGF0ZVwiOiBcImVycm9yXCIsIC8vIFRoaXMgcnVsZSB3aWxsIGNhdXNlIHNvbWUgd2FybmluZ3MgYmVjYXVzZSB3ZSBkb24ndCBzcGVjaWZ5IHRoZSB2ZXJzaW9uIG9mIHJlYWN0LlxuICAgICAgXCJyZWFjdC9qc3gtZmlsZW5hbWUtZXh0ZW5zaW9uXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7IGFsbG93OiBcImFzLW5lZWRlZFwiLCBleHRlbnNpb25zOiBbXCIuanN4XCIsIFwiLnRzeFwiXSB9LFxuICAgICAgXSxcbiAgICAgIFwicmVhY3QvanN4LWtleVwiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0L2pzeC1uby1kdXBsaWNhdGUtcHJvcHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtbm8tdW5kZWZcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtbm8tdXNlbGVzcy1mcmFnbWVudFwiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWQtbXVsdGlcIjogXCJlcnJvclwiLFxuICAgICAgXCJyZWFjdC9qc3gtdXNlcy12YXJzXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHJlYWN0LWhvb2tzXG4gICAgICBcInJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1wiOiBcImVycm9yXCIsXG4gICAgICBcInJlYWN0LWhvb2tzL3J1bGVzLW9mLWhvb2tzXCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHNvbmFyanNcbiAgICAgIFwic29uYXJqcy9uby1jb2xsYXBzaWJsZS1pZlwiOiBcImVycm9yXCIsXG4gICAgICBcInNvbmFyanMvbm8tYWxsLWR1cGxpY2F0ZWQtYnJhbmNoZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJzb25hcmpzL25vLWlkZW50aWNhbC1jb25kaXRpb25zXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1pZGVudGljYWwtZXhwcmVzc2lvbnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJzb25hcmpzL25vLWlnbm9yZWQtcmV0dXJuXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1pbnZlcnRlZC1ib29sZWFuLWNoZWNrXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby1uZXN0ZWQtc3dpdGNoXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9uby11c2VsZXNzLWNhdGNoXCI6IFwiZXJyb3JcIixcbiAgICAgIFwic29uYXJqcy9wcmVmZXItaW1tZWRpYXRlLXJldHVyblwiOiBcImVycm9yXCIsXG4gICAgICAvLyB1bmljb3JuXG4gICAgICAvLyAndW5pY29ybi9uby1udWxsJzogJ2Vycm9yJywgLy8gbnVsbCBjYW4gYmUgdXNlZnVsIHdoZW4gaW50ZXJhY3Qgd2l0aCBqc29uLlxuICAgICAgXCJ1bmljb3JuL2NhdGNoLWVycm9yLW5hbWVcIjogW1wiZXJyb3JcIiwgeyBpZ25vcmU6IFtcIl5lJFwiLCBcIl5lcnIkXCJdIH1dLFxuICAgICAgXCJ1bmljb3JuL2NvbnNpc3RlbnQtYXNzZXJ0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9jb25zaXN0ZW50LWRhdGUtY2xvbmVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2NvbnNpc3RlbnQtZGVzdHJ1Y3R1cmluZ1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vY29uc2lzdGVudC1lbXB0eS1hcnJheS1zcHJlYWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2Vycm9yLW1lc3NhZ2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL2V4cGxpY2l0LWxlbmd0aC1jaGVja1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vZmlsZW5hbWUtY2FzZVwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyBjYXNlczogeyBrZWJhYkNhc2U6IHRydWUsIHBhc2NhbENhc2U6IHRydWUgfSB9LFxuICAgICAgXSxcbiAgICAgIFwidW5pY29ybi9pbXBvcnQtc3R5bGVcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBzdHlsZXM6IHtcbiAgICAgICAgICAgIHJlYWN0OiB7IG5hbWVkOiB0cnVlIH0sXG5cbiAgICAgICAgICAgIGNoaWxkX3Byb2Nlc3M6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgZnM6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJmcy9wcm9taXNlc1wiOiB7IGRlZmF1bHQ6IHRydWUgfSxcbiAgICAgICAgICAgIHByb2Nlc3M6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJ1dGlsL3R5cGVzXCI6IHsgbmFtZWQ6IHRydWUgfSxcbiAgICAgICAgICAgIFwibm9kZTpjaGlsZF9wcm9jZXNzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOmZzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOmZzL3Byb21pc2VzXCI6IHsgZGVmYXVsdDogdHJ1ZSB9LFxuICAgICAgICAgICAgXCJub2RlOnByb2Nlc3NcIjogeyBkZWZhdWx0OiB0cnVlIH0sXG4gICAgICAgICAgICBcIm5vZGU6dXRpbC90eXBlc1wiOiB7IG5hbWVkOiB0cnVlIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcInVuaWNvcm4vbmV3LWZvci1idWlsdGluc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tYWJ1c2l2ZS1lc2xpbnQtZGlzYWJsZVwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tYWNjZXNzb3ItcmVjdXJzaW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1hcnJheS1jYWxsYmFjay1yZWZlcmVuY2VcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLWFycmF5LW1ldGhvZC10aGlzLWFyZ3VtZW50XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1hd2FpdC1pbi1wcm9taXNlLW1ldGhvZHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLWZvci1sb29wXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1pbnN0YW5jZW9mLWJ1aWx0aW5zXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1sb25lbHktaWZcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5hbWVkLWRlZmF1bHRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5lZ2F0aW9uLWluLWVxdWFsaXR5LWNoZWNrXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1uZXctYXJyYXlcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLW5ldy1idWZmZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXByb2Nlc3MtZXhpdFwiOiBcImVycm9yXCIsIC8vIFByZWZlciBgbi9uby1wcm9jZXNzLWV4aXRgLCBidXQgYXQgdGhlIHNhbWUgdGltZSB1c2luZyB0aGlzIHJ1bGUgc2VlbXMgaGF2ZSBubyBwcm9ibGVtXG4gICAgICBcInVuaWNvcm4vbm8tc2luZ2xlLXByb21pc2UtaW4tcHJvbWlzZS1tZXRob2RzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby1zdGF0aWMtb25seS1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdGhlbmFibGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXRoaXMtYXNzaWdubWVudFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdHlwZW9mLXVuZGVmaW5lZFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdW5uZWNlc3NhcnktYXJyYXktZmxhdC1kZXB0aFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdW5uZWNlc3NhcnktYXdhaXRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL25vLXVucmVhZGFibGUtYXJyYXktZGVzdHJ1Y3R1cmluZ1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdW5yZWFkYWJsZS1paWZlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby11c2VsZXNzLWZhbGxiYWNrLWluLXNwcmVhZFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdXNlbGVzcy1wcm9taXNlLXJlc29sdmUtcmVqZWN0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9uby11c2VsZXNzLXNwcmVhZFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8tdXNlbGVzcy1zd2l0Y2gtY2FzZVwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vbm8temVyby1mcmFjdGlvbnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1hcnJheS1mbGF0LW1hcFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLWRhdGUtbm93XCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItZXhwb3J0LWZyb21cIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1nbG9iYWwtdGhpc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLWluY2x1ZGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItbG9naWNhbC1vcGVyYXRvci1vdmVyLXRlcm5hcnlcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1tYXRoLW1pbi1tYXhcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1tb2R1bGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1uZWdhdGl2ZS1pbmRleFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLW51bWJlci1wcm9wZXJ0aWVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9wcmVmZXItb2JqZWN0LWZyb20tZW50cmllc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLW9wdGlvbmFsLWNhdGNoLWJpbmRpbmdcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1wcm90b3R5cGUtbWV0aG9kc1wiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLXJlZmxlY3QtYXBwbHlcIjogXCJlcnJvclwiLCAvLyBodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL2VzbGludC1wbHVnaW4tdW5pY29ybi9pc3N1ZXMvMjM2NVxuICAgICAgXCJ1bmljb3JuL3ByZWZlci1yZWdleHAtdGVzdFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLXN0cmluZy1yZXBsYWNlLWFsbFwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLXN0cmluZy1zbGljZVwiOiBcImVycm9yXCIsXG4gICAgICBcInVuaWNvcm4vcHJlZmVyLXRlcm5hcnlcIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJ1bmljb3JuL3ByZWZlci10eXBlLWVycm9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9yZXF1aXJlLWFycmF5LWpvaW4tc2VwYXJhdG9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi9yZXF1aXJlLW51bWJlci10by1maXhlZC1kaWdpdHMtYXJndW1lbnRcIjogXCJlcnJvclwiLFxuICAgICAgXCJ1bmljb3JuL3RleHQtZW5jb2RpbmctaWRlbnRpZmllci1jYXNlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwidW5pY29ybi90aHJvdy1uZXctZXJyb3JcIjogXCJlcnJvclwiLFxuXG4gICAgICBcIkBmZW5nZS9jYWxsLWFyZ3VtZW50cy1sZW5ndGhcIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8taW5zdGFuY2VvZi1idWlsdGluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlL25vLW5lc3RlZC1jbGFzc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby1uZXN0ZWQtZnVuY3Rpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8tcmVzdHJpY3RlZC1sb29wc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby10b3AtbGV2ZWwtYXJyb3ctZnVuY3Rpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2Uvbm8tdHJpcGxlLXNsYXNoLWRpcmVjdGl2ZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS9uby11bm5lY2Vzc2FyeS10ZW1wbGF0ZS1zdHJpbmdcIjogXCJlcnJvclwiLFxuXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIFwidHMtZXhwZWN0LWVycm9yXCI6IHRydWUsXG4gICAgICAgICAgXCJ0cy1pZ25vcmVcIjogdHJ1ZSxcbiAgICAgICAgICBcInRzLW5vY2hlY2tcIjogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby10aGlzLWFsaWFzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZWxlc3MtZW1wdHktZXhwb3J0XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1mb3Itb2ZcIjogXCJlcnJvclwiLFxuICAgIH0sXG4gIH0gYXMgY29uc3Q7XG59XG4iXX0=
|
package/dist/config/ts/base.d.ts
CHANGED
|
@@ -21,7 +21,6 @@ export declare function getTsBase(): {
|
|
|
21
21
|
};
|
|
22
22
|
readonly plugins: {
|
|
23
23
|
readonly "@fenge-ts": typeof fengeTsPlugin;
|
|
24
|
-
readonly "check-file": typeof import("eslint-plugin-check-file").default;
|
|
25
24
|
readonly fp: unknown;
|
|
26
25
|
readonly n: import("eslint").ESLint.Plugin & {
|
|
27
26
|
configs: import("eslint-plugin-n").Configs;
|
|
@@ -366,6 +365,9 @@ export declare function getTsBase(): {
|
|
|
366
365
|
readonly ignoredTypeNames: readonly [];
|
|
367
366
|
}];
|
|
368
367
|
readonly "@typescript-eslint/no-confusing-non-null-assertion": "error";
|
|
368
|
+
readonly "@typescript-eslint/no-confusing-void-expression": readonly ["error", {
|
|
369
|
+
readonly ignoreArrowShorthand: true;
|
|
370
|
+
}];
|
|
369
371
|
readonly "@typescript-eslint/no-deprecated": "error";
|
|
370
372
|
readonly "@typescript-eslint/no-duplicate-enum-values": "error";
|
|
371
373
|
readonly "@typescript-eslint/no-duplicate-type-constituents": "error";
|
|
@@ -395,6 +397,8 @@ export declare function getTsBase(): {
|
|
|
395
397
|
readonly "@typescript-eslint/no-unnecessary-type-arguments": "error";
|
|
396
398
|
readonly "@typescript-eslint/no-unnecessary-type-assertion": "error";
|
|
397
399
|
readonly "@typescript-eslint/no-unnecessary-type-constraint": "error";
|
|
400
|
+
readonly "@typescript-eslint/no-unnecessary-type-conversion": "error";
|
|
401
|
+
readonly "@typescript-eslint/no-unsafe-call": "error";
|
|
398
402
|
readonly "@typescript-eslint/no-unsafe-declaration-merging": "error";
|
|
399
403
|
readonly "@typescript-eslint/no-unsafe-enum-comparison": "error";
|
|
400
404
|
readonly "@typescript-eslint/no-unsafe-function-type": "error";
|
|
@@ -402,14 +406,20 @@ export declare function getTsBase(): {
|
|
|
402
406
|
readonly "@typescript-eslint/no-unsafe-unary-minus": "error";
|
|
403
407
|
readonly "@typescript-eslint/no-wrapper-object-types": "error";
|
|
404
408
|
readonly "@typescript-eslint/non-nullable-type-assertion-style": "error";
|
|
409
|
+
readonly "@typescript-eslint/only-throw-error": readonly ["error", {
|
|
410
|
+
readonly allowThrowingUnknown: false;
|
|
411
|
+
}];
|
|
405
412
|
readonly "@typescript-eslint/prefer-as-const": "error";
|
|
406
413
|
readonly "@typescript-eslint/prefer-function-type": "error";
|
|
414
|
+
readonly "@typescript-eslint/prefer-includes": "error";
|
|
407
415
|
readonly "@typescript-eslint/prefer-literal-enum-member": "error";
|
|
408
416
|
readonly "@typescript-eslint/prefer-namespace-keyword": "error";
|
|
409
417
|
readonly "@typescript-eslint/prefer-nullish-coalescing": "error";
|
|
410
418
|
readonly "@typescript-eslint/prefer-optional-chain": "error";
|
|
411
419
|
readonly "@typescript-eslint/prefer-readonly": "error";
|
|
420
|
+
readonly "@typescript-eslint/prefer-regexp-exec": "error";
|
|
412
421
|
readonly "@typescript-eslint/prefer-return-this-type": "error";
|
|
422
|
+
readonly "@typescript-eslint/promise-function-async": "error";
|
|
413
423
|
readonly "@typescript-eslint/restrict-plus-operands": readonly ["error", {
|
|
414
424
|
readonly allowBoolean: false;
|
|
415
425
|
readonly allowNullish: false;
|
|
@@ -431,6 +441,7 @@ export declare function getTsBase(): {
|
|
|
431
441
|
}];
|
|
432
442
|
readonly "@typescript-eslint/unbound-method": "error";
|
|
433
443
|
readonly "@typescript-eslint/unified-signatures": "error";
|
|
444
|
+
readonly "@typescript-eslint/use-unknown-in-catch-callback-variable": "error";
|
|
434
445
|
readonly "default-param-last": "off";
|
|
435
446
|
readonly "init-declarations": "off";
|
|
436
447
|
readonly "max-params": "off";
|
|
@@ -482,7 +493,6 @@ export declare function getTsBase(): {
|
|
|
482
493
|
readonly variables: false;
|
|
483
494
|
}];
|
|
484
495
|
readonly "@typescript-eslint/no-useless-constructor": "error";
|
|
485
|
-
readonly "@typescript-eslint/only-throw-error": "error";
|
|
486
496
|
readonly "@typescript-eslint/prefer-promise-reject-errors": "error";
|
|
487
497
|
readonly "@typescript-eslint/require-await": "error";
|
|
488
498
|
readonly "arrow-body-style": readonly ["error", "as-needed"];
|
|
@@ -512,7 +522,9 @@ export declare function getTsBase(): {
|
|
|
512
522
|
readonly disallowTemplateShorthand: true;
|
|
513
523
|
readonly allow: readonly ["!!"];
|
|
514
524
|
}];
|
|
515
|
-
readonly "no-inner-declarations": "error"
|
|
525
|
+
readonly "no-inner-declarations": readonly ["error", "functions", {
|
|
526
|
+
readonly blockScopedFunctions: "disallow";
|
|
527
|
+
}];
|
|
516
528
|
readonly "no-lonely-if": "error";
|
|
517
529
|
readonly "no-multi-assign": "error";
|
|
518
530
|
readonly "no-new-native-nonconstructor": "error";
|
|
@@ -532,15 +544,6 @@ export declare function getTsBase(): {
|
|
|
532
544
|
readonly "prefer-object-has-own": "error";
|
|
533
545
|
readonly "prefer-spread": "error";
|
|
534
546
|
readonly "prefer-template": "error";
|
|
535
|
-
readonly "check-file/filename-blocklist": readonly ["error", {
|
|
536
|
-
readonly "**/{.,}*.mjs": "*.js";
|
|
537
|
-
readonly "**/{.,}*.cjs": "*.js";
|
|
538
|
-
readonly "**/{.,}*.mts": "*.ts";
|
|
539
|
-
readonly "**/{.,}*.cts": "*.ts";
|
|
540
|
-
readonly "**/{.,}*.spec.*": "*.test.*";
|
|
541
|
-
readonly "**/.*rc.js": "*.config.js";
|
|
542
|
-
readonly "**/.*rc.ts": "*.config.ts";
|
|
543
|
-
}];
|
|
544
547
|
readonly "es-x/no-accessor-properties": "error";
|
|
545
548
|
readonly "es-x/no-async-iteration": "error";
|
|
546
549
|
readonly "es-x/no-generators": "error";
|
|
@@ -548,6 +551,7 @@ export declare function getTsBase(): {
|
|
|
548
551
|
readonly "es-x/no-legacy-object-prototype-accessor-methods": "error";
|
|
549
552
|
readonly "es-x/no-top-level-await": "error";
|
|
550
553
|
readonly "esm/existing-file-imports": "error";
|
|
554
|
+
readonly "esm/no-circular-imports": "error";
|
|
551
555
|
readonly "esm/no-declaration-file-imports": "error";
|
|
552
556
|
readonly "esm/no-directory-imports": "error";
|
|
553
557
|
readonly "esm/no-dynamic-imports": "error";
|
|
@@ -621,6 +625,9 @@ export declare function getTsBase(): {
|
|
|
621
625
|
readonly "sonarjs/no-nested-switch": "error";
|
|
622
626
|
readonly "sonarjs/no-useless-catch": "error";
|
|
623
627
|
readonly "sonarjs/prefer-immediate-return": "error";
|
|
628
|
+
readonly "unicorn/catch-error-name": readonly ["error", {
|
|
629
|
+
readonly ignore: readonly ["^e$", "^err$"];
|
|
630
|
+
}];
|
|
624
631
|
readonly "unicorn/consistent-assert": "error";
|
|
625
632
|
readonly "unicorn/consistent-date-clone": "error";
|
|
626
633
|
readonly "unicorn/consistent-destructuring": "error";
|
|
@@ -689,9 +696,12 @@ export declare function getTsBase(): {
|
|
|
689
696
|
readonly "unicorn/no-thenable": "error";
|
|
690
697
|
readonly "unicorn/no-this-assignment": "error";
|
|
691
698
|
readonly "unicorn/no-typeof-undefined": "error";
|
|
699
|
+
readonly "unicorn/no-unnecessary-array-flat-depth": "error";
|
|
700
|
+
readonly "unicorn/no-unnecessary-await": "error";
|
|
692
701
|
readonly "unicorn/no-unreadable-array-destructuring": "error";
|
|
693
702
|
readonly "unicorn/no-unreadable-iife": "error";
|
|
694
703
|
readonly "unicorn/no-useless-fallback-in-spread": "error";
|
|
704
|
+
readonly "unicorn/no-useless-promise-resolve-reject": "error";
|
|
695
705
|
readonly "unicorn/no-useless-spread": "error";
|
|
696
706
|
readonly "unicorn/no-useless-switch-case": "error";
|
|
697
707
|
readonly "unicorn/no-zero-fractions": "error";
|
|
@@ -707,6 +717,7 @@ export declare function getTsBase(): {
|
|
|
707
717
|
readonly "unicorn/prefer-number-properties": "error";
|
|
708
718
|
readonly "unicorn/prefer-object-from-entries": "error";
|
|
709
719
|
readonly "unicorn/prefer-optional-catch-binding": "error";
|
|
720
|
+
readonly "unicorn/prefer-prototype-methods": "error";
|
|
710
721
|
readonly "unicorn/prefer-reflect-apply": "error";
|
|
711
722
|
readonly "unicorn/prefer-regexp-test": "error";
|
|
712
723
|
readonly "unicorn/prefer-string-replace-all": "error";
|
|
@@ -807,9 +818,11 @@ export declare function getTsBase(): {
|
|
|
807
818
|
readonly "no-obj-calls": "error";
|
|
808
819
|
readonly "no-octal": "error";
|
|
809
820
|
readonly "no-octal-escape": "error";
|
|
821
|
+
readonly "no-promise-executor-return": "error";
|
|
810
822
|
readonly "no-proto": "error";
|
|
811
823
|
readonly "no-regex-spaces": "error";
|
|
812
824
|
readonly "no-return-assign": readonly ["error", "except-parens"];
|
|
825
|
+
readonly "no-script-url": "error";
|
|
813
826
|
readonly "no-self-assign": readonly ["error", {
|
|
814
827
|
readonly props: true;
|
|
815
828
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/config/ts/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,yBAAyB,CAAC;AACzD,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AAGjD,wBAAgB,SAAS
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/config/ts/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,yBAAyB,CAAC;AACzD,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AAGjD,wBAAgB,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6PxB"}
|
package/dist/config/ts/base.js
CHANGED
|
@@ -129,10 +129,15 @@ export function getTsBase() {
|
|
|
129
129
|
{ ignoredTypeNames: [] },
|
|
130
130
|
],
|
|
131
131
|
"@typescript-eslint/no-confusing-non-null-assertion": "error",
|
|
132
|
+
"@typescript-eslint/no-confusing-void-expression": [
|
|
133
|
+
"error",
|
|
134
|
+
{ ignoreArrowShorthand: true },
|
|
135
|
+
],
|
|
132
136
|
"@typescript-eslint/no-deprecated": "error",
|
|
133
137
|
"@typescript-eslint/no-duplicate-enum-values": "error",
|
|
134
138
|
"@typescript-eslint/no-duplicate-type-constituents": "error",
|
|
135
139
|
"@typescript-eslint/no-empty-object-type": "error",
|
|
140
|
+
// "@typescript-eslint/no-explicit-any": "warn",
|
|
136
141
|
"@typescript-eslint/no-extra-non-null-assertion": "error",
|
|
137
142
|
// "@typescript-eslint/no-extraneous-class": "error", // Classes have only static member is reasonable sometimes. Nestjs modules use it a lot.
|
|
138
143
|
"@typescript-eslint/no-floating-promises": [
|
|
@@ -162,6 +167,8 @@ export function getTsBase() {
|
|
|
162
167
|
"@typescript-eslint/no-unnecessary-type-arguments": "error",
|
|
163
168
|
"@typescript-eslint/no-unnecessary-type-assertion": "error",
|
|
164
169
|
"@typescript-eslint/no-unnecessary-type-constraint": "error",
|
|
170
|
+
"@typescript-eslint/no-unnecessary-type-conversion": "error",
|
|
171
|
+
"@typescript-eslint/no-unsafe-call": "error",
|
|
165
172
|
"@typescript-eslint/no-unsafe-declaration-merging": "error",
|
|
166
173
|
"@typescript-eslint/no-unsafe-enum-comparison": "error",
|
|
167
174
|
"@typescript-eslint/no-unsafe-function-type": "error",
|
|
@@ -169,14 +176,21 @@ export function getTsBase() {
|
|
|
169
176
|
"@typescript-eslint/no-unsafe-unary-minus": "error",
|
|
170
177
|
"@typescript-eslint/no-wrapper-object-types": "error",
|
|
171
178
|
"@typescript-eslint/non-nullable-type-assertion-style": "error",
|
|
179
|
+
"@typescript-eslint/only-throw-error": [
|
|
180
|
+
"error",
|
|
181
|
+
{ allowThrowingUnknown: false },
|
|
182
|
+
],
|
|
172
183
|
"@typescript-eslint/prefer-as-const": "error",
|
|
173
184
|
"@typescript-eslint/prefer-function-type": "error",
|
|
185
|
+
"@typescript-eslint/prefer-includes": "error",
|
|
174
186
|
"@typescript-eslint/prefer-literal-enum-member": "error",
|
|
175
187
|
"@typescript-eslint/prefer-namespace-keyword": "error",
|
|
176
188
|
"@typescript-eslint/prefer-nullish-coalescing": "error",
|
|
177
189
|
"@typescript-eslint/prefer-optional-chain": "error",
|
|
178
190
|
"@typescript-eslint/prefer-readonly": "error",
|
|
191
|
+
"@typescript-eslint/prefer-regexp-exec": "error",
|
|
179
192
|
"@typescript-eslint/prefer-return-this-type": "error",
|
|
193
|
+
"@typescript-eslint/promise-function-async": "error",
|
|
180
194
|
"@typescript-eslint/restrict-plus-operands": [
|
|
181
195
|
"error",
|
|
182
196
|
{
|
|
@@ -208,7 +222,8 @@ export function getTsBase() {
|
|
|
208
222
|
],
|
|
209
223
|
"@typescript-eslint/unbound-method": "error",
|
|
210
224
|
"@typescript-eslint/unified-signatures": "error",
|
|
225
|
+
"@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
|
|
211
226
|
},
|
|
212
227
|
};
|
|
213
228
|
}
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvdHMvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssYUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sUUFBUSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsTUFBTSxVQUFVLFNBQVM7SUFDdkIsTUFBTSxNQUFNLEdBQUcsU0FBUyxFQUFFLENBQUM7SUFFM0IsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLEVBQUU7UUFDL0IsbUNBQW1DO1FBQ25DLGlEQUFpRDtRQUNqRCxNQUFNLGdCQUFnQixHQUFHO1lBQ3ZCLHdCQUF3QixFQUFFLDJDQUEyQztZQUNyRSxtQkFBbUIsRUFBRSxzQ0FBc0M7WUFDM0Qsb0JBQW9CLEVBQUUsdUNBQXVDO1lBQzdELGNBQWMsRUFBRSxpQ0FBaUM7WUFDakQsbUJBQW1CLEVBQUUsc0NBQXNDO1lBQzNELFlBQVksRUFBRSwrQkFBK0I7WUFDN0Msc0JBQXNCLEVBQUUseUNBQXlDO1lBQ2pFLHVCQUF1QixFQUFFLDBDQUEwQztZQUNuRSxtQkFBbUIsRUFBRSxzQ0FBc0M7WUFDM0QsaUJBQWlCLEVBQUUsb0NBQW9DO1lBQ3ZELGlCQUFpQixFQUFFLG9DQUFvQztZQUN2RCxjQUFjLEVBQUUsaUNBQWlDO1lBQ2pELHNHQUFzRztZQUN0RyxrQkFBa0IsRUFBRSxxQ0FBcUM7WUFDekQsY0FBYyxFQUFFLGlDQUFpQztZQUNqRCx1QkFBdUIsRUFBRSwwQ0FBMEM7WUFDbkUsV0FBVyxFQUFFLDhCQUE4QjtZQUMzQyx1QkFBdUIsRUFBRSwwQ0FBMEM7WUFDbkUsZ0JBQWdCLEVBQUUsbUNBQW1DO1lBQ3JELHNCQUFzQixFQUFFLHlDQUF5QztZQUNqRSx3QkFBd0IsRUFBRSwyQ0FBMkM7WUFDckUsa0JBQWtCLEVBQUUscUNBQXFDO1lBQ3pELHNC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QUNGO1lBQ0QsZ0RBQWdELEVBQUUsT0FBTztZQUN6RCxpQ0FBaUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7WUFDdEQsZ0RBQWdELEVBQUU7Z0JBQ2hELE9BQU87Z0JBQ1AsRUFBRSx5QkFBeUIsRUFBRSxJQUFJLEVBQUU7YUFDcEM7WUFDRCxtQ0FBbUMsRUFBRSxPQUFPO1lBQzVDLHVDQUF1QyxFQUFFLE9BQU87U0FDakQ7S0FDTyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZlbmdlVHNQbHVnaW4gZnJvbSBcIkBmZW5nZS9lc2xpbnQtcGx1Z2luLXRzXCI7XG5pbXBvcnQgdHNQYXJzZXIgZnJvbSBcIkB0eXBlc2NyaXB0LWVzbGludC9wYXJzZXJcIjtcbmltcG9ydCB7IGdldEpzQmFzZSB9IGZyb20gXCIuLi9qcy9iYXNlLnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUc0Jhc2UoKSB7XG4gIGNvbnN0IGpzQmFzZSA9IGdldEpzQmFzZSgpO1xuXG4gIGNvbnN0IGdldFRzRXh0ZW5zaW9uUnVsZXMgPSAoKSA9PiB7XG4gICAgLy8gS2V5IGlzIGpzIHJ1bGUsIHZhbHVlIGlzIHRzIHJ1bGVcbiAgICAvLyBodHRwczovL3R5cGVzY3JpcHQtZXNsaW50LmlvL3J1bGVzLz89ZXh0ZW5zaW9uXG4gICAgY29uc3QgZXh0ZW5zaW9uUnVsZU1hcCA9IHtcbiAgICAgIFwiY2xhc3MtbWV0aG9kcy11c2UtdGhpc1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9jbGFzcy1tZXRob2RzLXVzZS10aGlzXCIsXG4gICAgICBcImNvbnNpc3RlbnQtcmV0dXJuXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtcmV0dXJuXCIsXG4gICAgICBcImRlZmF1bHQtcGFyYW0tbGFzdFwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9kZWZhdWx0LXBhcmFtLWxhc3RcIixcbiAgICAgIFwiZG90LW5vdGF0aW9uXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L2RvdC1ub3RhdGlvblwiLFxuICAgICAgXCJpbml0LWRlY2xhcmF0aW9uc1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9pbml0LWRlY2xhcmF0aW9uc1wiLFxuICAgICAgXCJtYXgtcGFyYW1zXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L21heC1wYXJhbXNcIixcbiAgICAgIFwibm8tYXJyYXktY29uc3RydWN0b3JcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYXJyYXktY29uc3RydWN0b3JcIixcbiAgICAgIFwibm8tZHVwZS1jbGFzcy1tZW1iZXJzXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWR1cGUtY2xhc3MtbWVtYmVyc1wiLFxuICAgICAgXCJuby1lbXB0eS1mdW5jdGlvblwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblwiLFxuICAgICAgXCJuby1pbXBsaWVkLWV2YWxcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8taW1wbGllZC1ldmFsXCIsXG4gICAgICBcIm5vLWludmFsaWQtdGhpc1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1pbnZhbGlkLXRoaXNcIixcbiAgICAgIFwibm8tbG9vcC1mdW5jXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWxvb3AtZnVuY1wiLFxuICAgICAgLy8gXCJuby1sb3NzLW9mLXByZWNpc2lvblwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1sb3NzLW9mLXByZWNpc2lvblwiLCAvLyBUaGlzIHJ1bGUgaGFzIGJlZW4gZGVwcmVjYXRlZFxuICAgICAgXCJuby1tYWdpYy1udW1iZXJzXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW1hZ2ljLW51bWJlcnNcIixcbiAgICAgIFwibm8tcmVkZWNsYXJlXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlZGVjbGFyZVwiLFxuICAgICAgXCJuby1yZXN0cmljdGVkLWltcG9ydHNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVzdHJpY3RlZC1pbXBvcnRzXCIsXG4gICAgICBcIm5vLXNoYWRvd1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcIixcbiAgICAgIFwibm8tdW51c2VkLWV4cHJlc3Npb25zXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC1leHByZXNzaW9uc1wiLFxuICAgICAgXCJuby11bnVzZWQtdmFyc1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1wiLFxuICAgICAgXCJuby11c2UtYmVmb3JlLWRlZmluZVwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11c2UtYmVmb3JlLWRlZmluZVwiLFxuICAgICAgXCJuby11c2VsZXNzLWNvbnN0cnVjdG9yXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZWxlc3MtY29uc3RydWN0b3JcIixcbiAgICAgIFwibm8tdGhyb3ctbGl0ZXJhbFwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9vbmx5LXRocm93LWVycm9yXCIsXG4gICAgICBcInByZWZlci1kZXN0cnVjdHVyaW5nXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1kZXN0cnVjdHVyaW5nXCIsXG4gICAgICBcInByZWZlci1wcm9taXNlLXJlamVjdC1lcnJvcnNcIjpcbiAgICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1wiLFxuICAgICAgXCJyZXF1aXJlLWF3YWl0XCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L3JlcXVpcmUtYXdhaXRcIixcbiAgICAgIFwibm8tcmV0dXJuLWF3YWl0XCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L3JldHVybi1hd2FpdFwiLCAvLyBuby1yZXR1cm4tYXdhaXQgaGFzIGJlZW4gZGVwcmVjYXRlZFxuICAgIH0gYXMgY29uc3Q7XG5cbiAgICB0eXBlIEpzMlRzUnVsZU1hcCA9IHR5cGVvZiBleHRlbnNpb25SdWxlTWFwO1xuICAgIHR5cGUgVHMySnNSdWxlTWFwID0ge1xuICAgICAgW0sgaW4ga2V5b2YgSnMyVHNSdWxlTWFwIGFzIEpzMlRzUnVsZU1hcFtLXV06IEs7IC8vIHJldmVyc2VcbiAgICB9O1xuXG4gICAgdHlwZSBKc0V4dGVuc2lvbktleSA9IEV4dHJhY3Q8XG4gICAgICBrZXlvZiBKczJUc1J1bGVNYXAsXG4gICAgICBrZXlvZiB0eXBlb2YganNCYXNlLnJ1bGVzXG4gICAgPjsgLy8gRXh0cmFjdFxuICAgIHR5cGUgVHNFeHRlbnNpb25LZXkgPSBKczJUc1J1bGVNYXBbSnNFeHRlbnNpb25LZXldO1xuXG4gICAgdHlwZSBKc1Jlc3VsdCA9IFJlY29yZDxKc0V4dGVuc2lvbktleSwgXCJvZmZcIj47XG4gICAgdHlwZSBUc1Jlc3VsdCA9IHtcbiAgICAgIFtLZXkgaW4gVHNFeHRlbnNpb25LZXldOiAodHlwZW9mIGpzQmFzZS5ydWxlcylbVHMySnNSdWxlTWFwW0tleV1dO1xuICAgIH07XG4gICAgdHlwZSBSZXN1bHQgPSBKc1Jlc3VsdCAmIFRzUmVzdWx0O1xuXG4gICAgY29uc3QgaXNJbkV4dGVuc2lvblJ1bGVNYXAgPSAoXG4gICAgICBrZXk6IHN0cmluZyxcbiAgICApOiBrZXkgaXMga2V5b2YgdHlwZW9mIGV4dGVuc2lvblJ1bGVNYXAgPT4ga2V5IGluIGV4dGVuc2lvblJ1bGVNYXA7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGpzQmFzZS5ydWxlcykucmVkdWNlKFxuICAgICAgKHJlc3VsdCwgW2pzUnVsZUtleSwganNSdWxlVmFsdWVdKSA9PlxuICAgICAgICBpc0luRXh0ZW5zaW9uUnVsZU1hcChqc1J1bGVLZXkpXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgICAgW2pzUnVsZUtleV06IFwib2ZmXCIsXG4gICAgICAgICAgICAgIFtleHRlbnNpb25SdWxlTWFwW2pzUnVsZUtleV1dOiBqc1J1bGVWYWx1ZSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHJlc3VsdCxcbiAgICAgIHt9IGFzIFJlc3VsdCxcbiAgICApO1xuICB9O1xuXG4gIHJldHVybiB7XG4gICAgLi4uanNCYXNlLFxuICAgIG5hbWU6IFwiZmVuZ2UvdHlwZXNjcmlwdFwiLFxuICAgIGZpbGVzOiBbXCIqKi8qLnt0cyxjdHMsbXRzLHRzeH1cIl0sXG4gICAgbGFuZ3VhZ2VPcHRpb25zOiB7XG4gICAgICAuLi5qc0Jhc2UubGFuZ3VhZ2VPcHRpb25zLFxuICAgICAgcGFyc2VyOiB0c1BhcnNlciwgLy8gVW5mb3J0dW5hdGVseSBwYXJzZXIgY2Fubm90IGJlIGEgc3RyaW5nLiBFc2xpbnQgc2hvdWxkIHN1cHBvcnQgaXQuIGh0dHBzOi8vZXNsaW50Lm9yZy9kb2NzL2xhdGVzdC91c2UvY29uZmlndXJlL2NvbmZpZ3VyYXRpb24tZmlsZXMtbmV3I2NvbmZpZ3VyaW5nLWEtY3VzdG9tLXBhcnNlci1hbmQtaXRzLW9wdGlvbnNcbiAgICAgIHBhcnNlck9wdGlvbnM6IHtcbiAgICAgICAgLi4uanNCYXNlLmxhbmd1YWdlT3B0aW9ucy5wYXJzZXJPcHRpb25zLFxuICAgICAgICAvLyBTZXR0aW5nIGBwcm9qZWN0U2VydmljZTogdHJ1ZWAgb3IgYHByb2plY3Q6IHRydWVgIGlzIHByZXR0eSBzbG93IHdoZW4gbGludCBhIG1vbm9yZXBvIHdpdGggbWFueSB0c2NvbmZpZy5qc29uIGZpbGVzIGluIGVhY2ggc3ViLWFwcC5cbiAgICAgICAgLy8gQnV0IHNldHRpbmcgYHByb2plY3Q6IFwidHNjb25maWcuanNvblwiYCB3aWxsIGNhdXNlIHBhcnNlciBlcnJvciB3aGVuIHRoZSBwcm9qZWN0IHJvb3QgdHNjb25maWcuanNvbiBpcyBgeyBleHRlbmRzOiBcImZlbmdlL3RzY29uZmlnXCIgfWBcbiAgICAgICAgcHJvamVjdFNlcnZpY2U6IHRydWUsXG4gICAgICB9LFxuICAgICAgZ2xvYmFsczoge1xuICAgICAgICAuLi5qc0Jhc2UubGFuZ3VhZ2VPcHRpb25zLmdsb2JhbHMsXG4gICAgICAgIE5vZGVKUzogZmFsc2UsXG4gICAgICB9LFxuICAgIH0sXG4gICAgcGx1Z2luczoge1xuICAgICAgLi4uanNCYXNlLnBsdWdpbnMsXG4gICAgICBcIkBmZW5nZS10c1wiOiBmZW5nZVRzUGx1Z2luLFxuICAgIH0sXG4gICAgcnVsZXM6IHtcbiAgICAgIC4uLmpzQmFzZS5ydWxlcyxcbiAgICAgIC4uLmdldFRzRXh0ZW5zaW9uUnVsZXMoKSxcblxuICAgICAgLy8gZmVuZ2VcbiAgICAgIFwiQGZlbmdlLXRzL2V4YWN0LW1hcC1zZXQtdHlwZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS10cy9uby1jb25zdC1lbnVtXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLWRlY2xhcmVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLWV4cG9ydC1hc3NpZ25tZW50XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLW1pc3VzZS1zcHJlYWRpbmctcGFyYW1ldGVyXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLXByb3BlcnR5LWRlY29yYXRvclwiOiBcImVycm9yXCIsXG4gICAgICBcIkBmZW5nZS10cy9uby11bnR5cGVkLWVtcHR5LWFycmF5XCI6IFwiZXJyb3JcIixcbiAgICAgIC8vIHR5cGVzY3JpcHRcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2FkamFjZW50LW92ZXJsb2FkLXNpZ25hdHVyZXNcIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJAdHlwZXNjcmlwdC1lc2xpbnQvYXJyYXktdHlwZVwiOiBbXCJlcnJvclwiLCAnYXJyYXktc2ltcGxlJ10sIC8vIFRoZSBkZWZhdWx0IG9wdGlvbiBpcyAnYXJyYXknLiBOb3QgdmVyeSBzdXJlIGlmIHdlIG5lZWQgdG8gY2hhbmdlIHRoZSBvcHRpb24uIFNvIGRpc2FibGVkIGl0LlxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvYXdhaXQtdGhlbmFibGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvY2xhc3MtbGl0ZXJhbC1wcm9wZXJ0eS1zdHlsZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LWdlbmVyaWMtY29uc3RydWN0b3JzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtaW5kZXhlZC1vYmplY3Qtc3R5bGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC10eXBlLWFzc2VydGlvbnNcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBhc3NlcnRpb25TdHlsZTogXCJhc1wiLFxuICAgICAgICAgIG9iamVjdExpdGVyYWxUeXBlQXNzZXJ0aW9uczogXCJhbGxvdy1hcy1wYXJhbWV0ZXJcIixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtZGVmaW5pdGlvbnNcIjogW1wiZXJyb3JcIiwgXCJpbnRlcmZhY2VcIl0sIC8vIFRPRE8gc2hvdWxkIHdlIGNoYW5nZSB0byAndHlwZSc/XG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtZXhwb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtaW1wb3J0c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9kb3Qtbm90YXRpb25cIjogW1wiZXJyb3JcIiwgeyBhbGxvd0tleXdvcmRzOiB0cnVlIH1dLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbWV0aG9kLXNpZ25hdHVyZS1zdHlsZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIHNlbGVjdG9yOiBcImZ1bmN0aW9uXCIsXG4gICAgICAgICAgZm9ybWF0OiBbXCJjYW1lbENhc2VcIiwgXCJQYXNjYWxDYXNlXCJdLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc2VsZWN0b3I6IFwidmFyaWFibGVcIixcbiAgICAgICAgICB0eXBlczogW1wiZnVuY3Rpb25cIl0sXG4gICAgICAgICAgZm9ybWF0OiBbXCJjYW1lbENhc2VcIiwgXCJQYXNjYWxDYXNlXCJdLCAvLyBkZWNvcmF0b3JzIG5lZWQgUGFzY2FsQ2FzZVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc2VsZWN0b3I6IFwiY2xhc3NcIixcbiAgICAgICAgICBmb3JtYXQ6IFtcIlBhc2NhbENhc2VcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzZWxlY3RvcjogXCJpbnRlcmZhY2VcIixcbiAgICAgICAgICBmb3JtYXQ6IFtcIlBhc2NhbENhc2VcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzZWxlY3RvcjogXCJ0eXBlQWxpYXNcIixcbiAgICAgICAgICBmb3JtYXQ6IFtcIlBhc2NhbENhc2VcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzZWxlY3RvcjogXCJ0eXBlUGFyYW1ldGVyXCIsXG4gICAgICAgICAgZm9ybWF0OiBbXCJVUFBFUl9DQVNFXCIsIFwiUGFzY2FsQ2FzZVwiXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1hcnJheS1kZWxldGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tYmFzZS10by1zdHJpbmdcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHsgaWdub3JlZFR5cGVOYW1lczogW10gfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1jb25mdXNpbmctbm9uLW51bGwtYXNzZXJ0aW9uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWRlcHJlY2F0ZWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHVwbGljYXRlLWVudW0tdmFsdWVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWR1cGxpY2F0ZS10eXBlLWNvbnN0aXR1ZW50c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1leHRyYS1ub24tbnVsbC1hc3NlcnRpb25cIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXh0cmFuZW91cy1jbGFzc1wiOiBcImVycm9yXCIsIC8vIENsYXNzZXMgaGF2ZSBvbmx5IHN0YXRpYyBtZW1iZXIgaXMgcmVhc29uYWJsZSBzb21ldGltZXMuIE5lc3RqcyBtb2R1bGVzIHVzZSBpdCBhIGxvdC5cbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7XG4gICAgICAgICAgaWdub3JlVm9pZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZm9yLWluLWFycmF5XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWltcG9ydC10eXBlLXNpZGUtZWZmZWN0c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1pbmZlcnJhYmxlLXR5cGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWludmFsaWQtdm9pZC10eXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW1pc3VzZWQtbmV3XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW1pc3VzZWQtcHJvbWlzZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWlzdXNlZC1zcHJlYWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWl4ZWQtZW51bXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbmFtZXNwYWNlXCI6IFwiZXJyb3JcIiwgLy8gY29uc2lkZXIgdG8gYWRkIG9wdGlvbiBge1wiYWxsb3dEZWZpbml0aW9uRmlsZXNcIjogZmFsc2V9YCB0byBzdHJpY3RseSBmb3JiaWQgYG5hbWVzcGFjZWAga2V5d29yZFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0ZWQtbnVsbGlzaC1jb2FsZXNjaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGVkLW9wdGlvbmFsLWNoYWluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1yZWR1bmRhbnQtdHlwZS1jb25zdGl0dWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWJvb2xlYW4tbGl0ZXJhbC1jb21wYXJlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWNvbmRpdGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS1wYXJhbWV0ZXItcHJvcGVydHktYXNzaWdubWVudFwiOlxuICAgICAgICBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10ZW1wbGF0ZS1leHByZXNzaW9uXCI6IFwiZXJyb3JcIiwgLy8ganMgYWxzbyBuZWVkIHRoaXMgcnVsZVxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1hcmd1bWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1hc3NlcnRpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1jb25zdHJhaW50XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1kZWNsYXJhdGlvbi1tZXJnaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1lbnVtLWNvbXBhcmlzb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLWZ1bmN0aW9uLXR5cGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXJldHVyblwiOiBcImVycm9yXCIsIC8vIFRoaXMgcnVsZSBpcyBub3QgdmVyeSBwZXJmZWN0LiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R5cGVzY3JpcHQtZXNsaW50L3R5cGVzY3JpcHQtZXNsaW50L2lzc3Vlcy8xMDQzOVxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLXVuYXJ5LW1pbnVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXdyYXBwZXItb2JqZWN0LXR5cGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vbi1udWxsYWJsZS10eXBlLWFzc2VydGlvbi1zdHlsZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItYXMtY29uc3RcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWZ1bmN0aW9uLXR5cGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWxpdGVyYWwtZW51bS1tZW1iZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW5hbWVzcGFjZS1rZXl3b3JkXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1udWxsaXNoLWNvYWxlc2NpbmdcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLW9wdGlvbmFsLWNoYWluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1yZWFkb25seVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItcmV0dXJuLXRoaXMtdHlwZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9yZXN0cmljdC1wbHVzLW9wZXJhbmRzXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7XG4gICAgICAgICAgLy8gYWxsb3dBbnk6IGZhbHNlLFxuICAgICAgICAgIGFsbG93Qm9vbGVhbjogZmFsc2UsXG4gICAgICAgICAgYWxsb3dOdWxsaXNoOiBmYWxzZSxcbiAgICAgICAgICBhbGxvd051bWJlckFuZFN0cmluZzogZmFsc2UsXG4gICAgICAgICAgYWxsb3dSZWdFeHA6IGZhbHNlLFxuICAgICAgICAgIHNraXBDb21wb3VuZEFzc2lnbm1lbnRzOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9yZXN0cmljdC10ZW1wbGF0ZS1leHByZXNzaW9uc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIGFsbG93OiBbXSxcbiAgICAgICAgICAvLyBhbGxvd0FueTogZmFsc2UsXG4gICAgICAgICAgYWxsb3dCb29sZWFuOiBmYWxzZSxcbiAgICAgICAgICBhbGxvd05ldmVyOiBmYWxzZSxcbiAgICAgICAgICBhbGxvd051bGxpc2g6IGZhbHNlLFxuICAgICAgICAgIC8vIGFsbG93TnVtYmVyOiBmYWxzZSxcbiAgICAgICAgICBhbGxvd1JlZ0V4cDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcmVsYXRlZC1nZXR0ZXItc2V0dGVyLXBhaXJzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3JldHVybi1hd2FpdFwiOiBbXCJlcnJvclwiLCBcImFsd2F5c1wiXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3N3aXRjaC1leGhhdXN0aXZlbmVzcy1jaGVja1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyByZXF1aXJlRGVmYXVsdEZvck5vblVuaW9uOiB0cnVlIH0sXG4gICAgICBdLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvdW5ib3VuZC1tZXRob2RcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvdW5pZmllZC1zaWduYXR1cmVzXCI6IFwiZXJyb3JcIixcbiAgICB9LFxuICB9IGFzIGNvbnN0O1xufVxuIl19
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvdHMvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssYUFBYSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sUUFBUSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsTUFBTSxVQUFVLFNBQVM7SUFDdkIsTUFBTSxNQUFNLEdBQUcsU0FBUyxFQUFFLENBQUM7SUFFM0IsTUFBTSxtQkFBbUIsR0FBRyxHQUFHLEVBQUU7UUFDL0IsbUNBQW1DO1FBQ25DLGlEQUFpRDtRQUNqRCxNQUFNLGdCQUFnQixHQUFHO1lBQ3ZCLHdCQUF3QixFQUFFLDJDQUEyQztZQUNyRSxtQkFBbUIsRUFBRSxzQ0FBc0M7WUFDM0Qsb0JBQW9CLEVBQUUsdUNBQXVDO1lBQzdELGNBQWMsRUFBRSxpQ0FBaUM7WUFDakQsbUJBQW1CLEVBQUUsc0NBQXNDO1lBQzNELFlBQVksRUFBRSwrQkFBK0I7WUFDN0Msc0JBQXNCLEVBQUUseUNBQXlDO1lBQ2pFLHVCQUF1QixFQUFFLDBDQUEwQztZQUNuRSxtQkFBbUIsRUFBRSxzQ0FBc0M7WUFDM0QsaUJBQWlCLEVBQUUsb0NBQW9DO1lBQ3ZELGlCQUFpQixFQUFFLG9DQUFvQztZQUN2RCxjQUFjLEVBQUUsaUNBQWlDO1lBQ2pELHNHQUFzRztZQUN0RyxrQkFBa0IsRUFBRSxxQ0FBcUM7WUFDekQsY0FBYyxFQUFFLGlDQUFpQztZQUNqRCx1QkFBdUIsRUFBRSwwQ0FBMEM7WUFDbkUsV0FBVyxFQUFFLDhCQUE4QjtZQUMzQyx1QkFBdUIsRUFBRSwwQ0FBMEM7WUFDbkUsZ0JBQWdCLEVBQUUsbUNBQW1DO1lBQ3JELHNCQUFzQixFQUFFLHlDQUF5QztZQUNqRSx3QkFBd0IsRUFBRSwyQ0FBMkM7WUFDckUsa0JBQWtCLEVBQUUscUNBQXFDO1lBQ3pELHNC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QUs7b0JBQ25CLG9CQUFvQixFQUFFLEtBQUs7b0JBQzNCLFdBQVcsRUFBRSxLQUFLO29CQUNsQix1QkFBdUIsRUFBRSxLQUFLO2lCQUMvQjthQUNGO1lBQ0Qsa0RBQWtELEVBQUU7Z0JBQ2xELE9BQU87Z0JBQ1A7b0JBQ0UsS0FBSyxFQUFFLEVBQUU7b0JBQ1QsbUJBQW1CO29CQUNuQixZQUFZLEVBQUUsS0FBSztvQkFDbkIsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFlBQVksRUFBRSxLQUFLO29CQUNuQixzQkFBc0I7b0JBQ3RCLFdBQVcsRUFBRSxLQUFLO2lCQUNuQjthQUNGO1lBQ0QsZ0RBQWdELEVBQUUsT0FBTztZQUN6RCxpQ0FBaUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7WUFDdEQsZ0RBQWdELEVBQUU7Z0JBQ2hELE9BQU87Z0JBQ1AsRUFBRSx5QkFBeUIsRUFBRSxJQUFJLEVBQUU7YUFDcEM7WUFDRCxtQ0FBbUMsRUFBRSxPQUFPO1lBQzVDLHVDQUF1QyxFQUFFLE9BQU87WUFDaEQsMkRBQTJELEVBQUUsT0FBTztTQUNyRTtLQUNPLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZmVuZ2VUc1BsdWdpbiBmcm9tIFwiQGZlbmdlL2VzbGludC1wbHVnaW4tdHNcIjtcbmltcG9ydCB0c1BhcnNlciBmcm9tIFwiQHR5cGVzY3JpcHQtZXNsaW50L3BhcnNlclwiO1xuaW1wb3J0IHsgZ2V0SnNCYXNlIH0gZnJvbSBcIi4uL2pzL2Jhc2UudHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRzQmFzZSgpIHtcbiAgY29uc3QganNCYXNlID0gZ2V0SnNCYXNlKCk7XG5cbiAgY29uc3QgZ2V0VHNFeHRlbnNpb25SdWxlcyA9ICgpID0+IHtcbiAgICAvLyBLZXkgaXMganMgcnVsZSwgdmFsdWUgaXMgdHMgcnVsZVxuICAgIC8vIGh0dHBzOi8vdHlwZXNjcmlwdC1lc2xpbnQuaW8vcnVsZXMvPz1leHRlbnNpb25cbiAgICBjb25zdCBleHRlbnNpb25SdWxlTWFwID0ge1xuICAgICAgXCJjbGFzcy1tZXRob2RzLXVzZS10aGlzXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L2NsYXNzLW1ldGhvZHMtdXNlLXRoaXNcIixcbiAgICAgIFwiY29uc2lzdGVudC1yZXR1cm5cIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC1yZXR1cm5cIixcbiAgICAgIFwiZGVmYXVsdC1wYXJhbS1sYXN0XCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L2RlZmF1bHQtcGFyYW0tbGFzdFwiLFxuICAgICAgXCJkb3Qtbm90YXRpb25cIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvZG90LW5vdGF0aW9uXCIsXG4gICAgICBcImluaXQtZGVjbGFyYXRpb25zXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L2luaXQtZGVjbGFyYXRpb25zXCIsXG4gICAgICBcIm1heC1wYXJhbXNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbWF4LXBhcmFtc1wiLFxuICAgICAgXCJuby1hcnJheS1jb25zdHJ1Y3RvclwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1hcnJheS1jb25zdHJ1Y3RvclwiLFxuICAgICAgXCJuby1kdXBlLWNsYXNzLW1lbWJlcnNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHVwZS1jbGFzcy1tZW1iZXJzXCIsXG4gICAgICBcIm5vLWVtcHR5LWZ1bmN0aW9uXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXCIsXG4gICAgICBcIm5vLWltcGxpZWQtZXZhbFwiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1pbXBsaWVkLWV2YWxcIixcbiAgICAgIFwibm8taW52YWxpZC10aGlzXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWludmFsaWQtdGhpc1wiLFxuICAgICAgXCJuby1sb29wLWZ1bmNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbG9vcC1mdW5jXCIsXG4gICAgICAvLyBcIm5vLWxvc3Mtb2YtcHJlY2lzaW9uXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWxvc3Mtb2YtcHJlY2lzaW9uXCIsIC8vIFRoaXMgcnVsZSBoYXMgYmVlbiBkZXByZWNhdGVkXG4gICAgICBcIm5vLW1hZ2ljLW51bWJlcnNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWFnaWMtbnVtYmVyc1wiLFxuICAgICAgXCJuby1yZWRlY2xhcmVcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVkZWNsYXJlXCIsXG4gICAgICBcIm5vLXJlc3RyaWN0ZWQtaW1wb3J0c1wiOiBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1yZXN0cmljdGVkLWltcG9ydHNcIixcbiAgICAgIFwibm8tc2hhZG93XCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvd1wiLFxuICAgICAgXCJuby11bnVzZWQtZXhwcmVzc2lvbnNcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLWV4cHJlc3Npb25zXCIsXG4gICAgICBcIm5vLXVudXNlZC12YXJzXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXCIsXG4gICAgICBcIm5vLXVzZS1iZWZvcmUtZGVmaW5lXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVzZS1iZWZvcmUtZGVmaW5lXCIsXG4gICAgICBcIm5vLXVzZWxlc3MtY29uc3RydWN0b3JcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlbGVzcy1jb25zdHJ1Y3RvclwiLFxuICAgICAgXCJuby10aHJvdy1saXRlcmFsXCI6IFwiQHR5cGVzY3JpcHQtZXNsaW50L29ubHktdGhyb3ctZXJyb3JcIixcbiAgICAgIFwicHJlZmVyLWRlc3RydWN0dXJpbmdcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWRlc3RydWN0dXJpbmdcIixcbiAgICAgIFwicHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1wiOlxuICAgICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItcHJvbWlzZS1yZWplY3QtZXJyb3JzXCIsXG4gICAgICBcInJlcXVpcmUtYXdhaXRcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvcmVxdWlyZS1hd2FpdFwiLFxuICAgICAgXCJuby1yZXR1cm4tYXdhaXRcIjogXCJAdHlwZXNjcmlwdC1lc2xpbnQvcmV0dXJuLWF3YWl0XCIsIC8vIG5vLXJldHVybi1hd2FpdCBoYXMgYmVlbiBkZXByZWNhdGVkXG4gICAgfSBhcyBjb25zdDtcblxuICAgIHR5cGUgSnMyVHNSdWxlTWFwID0gdHlwZW9mIGV4dGVuc2lvblJ1bGVNYXA7XG4gICAgdHlwZSBUczJKc1J1bGVNYXAgPSB7XG4gICAgICBbSyBpbiBrZXlvZiBKczJUc1J1bGVNYXAgYXMgSnMyVHNSdWxlTWFwW0tdXTogSzsgLy8gcmV2ZXJzZVxuICAgIH07XG5cbiAgICB0eXBlIEpzRXh0ZW5zaW9uS2V5ID0gRXh0cmFjdDxcbiAgICAgIGtleW9mIEpzMlRzUnVsZU1hcCxcbiAgICAgIGtleW9mIHR5cGVvZiBqc0Jhc2UucnVsZXNcbiAgICA+OyAvLyBFeHRyYWN0XG4gICAgdHlwZSBUc0V4dGVuc2lvbktleSA9IEpzMlRzUnVsZU1hcFtKc0V4dGVuc2lvbktleV07XG5cbiAgICB0eXBlIEpzUmVzdWx0ID0gUmVjb3JkPEpzRXh0ZW5zaW9uS2V5LCBcIm9mZlwiPjtcbiAgICB0eXBlIFRzUmVzdWx0ID0ge1xuICAgICAgW0tleSBpbiBUc0V4dGVuc2lvbktleV06ICh0eXBlb2YganNCYXNlLnJ1bGVzKVtUczJKc1J1bGVNYXBbS2V5XV07XG4gICAgfTtcbiAgICB0eXBlIFJlc3VsdCA9IEpzUmVzdWx0ICYgVHNSZXN1bHQ7XG5cbiAgICBjb25zdCBpc0luRXh0ZW5zaW9uUnVsZU1hcCA9IChcbiAgICAgIGtleTogc3RyaW5nLFxuICAgICk6IGtleSBpcyBrZXlvZiB0eXBlb2YgZXh0ZW5zaW9uUnVsZU1hcCA9PiBrZXkgaW4gZXh0ZW5zaW9uUnVsZU1hcDtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoanNCYXNlLnJ1bGVzKS5yZWR1Y2UoXG4gICAgICAocmVzdWx0LCBbanNSdWxlS2V5LCBqc1J1bGVWYWx1ZV0pID0+XG4gICAgICAgIGlzSW5FeHRlbnNpb25SdWxlTWFwKGpzUnVsZUtleSlcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgICBbanNSdWxlS2V5XTogXCJvZmZcIixcbiAgICAgICAgICAgICAgW2V4dGVuc2lvblJ1bGVNYXBbanNSdWxlS2V5XV06IGpzUnVsZVZhbHVlLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDogcmVzdWx0LFxuICAgICAge30gYXMgUmVzdWx0LFxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5qc0Jhc2UsXG4gICAgbmFtZTogXCJmZW5nZS90eXBlc2NyaXB0XCIsXG4gICAgZmlsZXM6IFtcIioqLyoue3RzLGN0cyxtdHMsdHN4fVwiXSxcbiAgICBsYW5ndWFnZU9wdGlvbnM6IHtcbiAgICAgIC4uLmpzQmFzZS5sYW5ndWFnZU9wdGlvbnMsXG4gICAgICBwYXJzZXI6IHRzUGFyc2VyLCAvLyBVbmZvcnR1bmF0ZWx5IHBhcnNlciBjYW5ub3QgYmUgYSBzdHJpbmcuIEVzbGludCBzaG91bGQgc3VwcG9ydCBpdC4gaHR0cHM6Ly9lc2xpbnQub3JnL2RvY3MvbGF0ZXN0L3VzZS9jb25maWd1cmUvY29uZmlndXJhdGlvbi1maWxlcy1uZXcjY29uZmlndXJpbmctYS1jdXN0b20tcGFyc2VyLWFuZC1pdHMtb3B0aW9uc1xuICAgICAgcGFyc2VyT3B0aW9uczoge1xuICAgICAgICAuLi5qc0Jhc2UubGFuZ3VhZ2VPcHRpb25zLnBhcnNlck9wdGlvbnMsXG4gICAgICAgIC8vIFNldHRpbmcgYHByb2plY3RTZXJ2aWNlOiB0cnVlYCBvciBgcHJvamVjdDogdHJ1ZWAgaXMgcHJldHR5IHNsb3cgd2hlbiBsaW50IGEgbW9ub3JlcG8gd2l0aCBtYW55IHRzY29uZmlnLmpzb24gZmlsZXMgaW4gZWFjaCBzdWItYXBwLlxuICAgICAgICAvLyBCdXQgc2V0dGluZyBgcHJvamVjdDogXCJ0c2NvbmZpZy5qc29uXCJgIHdpbGwgY2F1c2UgcGFyc2VyIGVycm9yIHdoZW4gdGhlIHByb2plY3Qgcm9vdCB0c2NvbmZpZy5qc29uIGlzIGB7IGV4dGVuZHM6IFwiZmVuZ2UvdHNjb25maWdcIiB9YFxuICAgICAgICBwcm9qZWN0U2VydmljZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBnbG9iYWxzOiB7XG4gICAgICAgIC4uLmpzQmFzZS5sYW5ndWFnZU9wdGlvbnMuZ2xvYmFscyxcbiAgICAgICAgTm9kZUpTOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBwbHVnaW5zOiB7XG4gICAgICAuLi5qc0Jhc2UucGx1Z2lucyxcbiAgICAgIFwiQGZlbmdlLXRzXCI6IGZlbmdlVHNQbHVnaW4sXG4gICAgfSxcbiAgICBydWxlczoge1xuICAgICAgLi4uanNCYXNlLnJ1bGVzLFxuICAgICAgLi4uZ2V0VHNFeHRlbnNpb25SdWxlcygpLFxuXG4gICAgICAvLyBmZW5nZVxuICAgICAgXCJAZmVuZ2UtdHMvZXhhY3QtbWFwLXNldC10eXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLWNvbnN0LWVudW1cIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2UtdHMvbm8tZGVjbGFyZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2UtdHMvbm8tZXhwb3J0LWFzc2lnbm1lbnRcIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2UtdHMvbm8tbWlzdXNlLXNwcmVhZGluZy1wYXJhbWV0ZXJcIjogXCJlcnJvclwiLFxuICAgICAgXCJAZmVuZ2UtdHMvbm8tcHJvcGVydHktZGVjb3JhdG9yXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQGZlbmdlLXRzL25vLXVudHlwZWQtZW1wdHktYXJyYXlcIjogXCJlcnJvclwiLFxuICAgICAgLy8gdHlwZXNjcmlwdFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvYWRqYWNlbnQtb3ZlcmxvYWQtc2lnbmF0dXJlc1wiOiBcImVycm9yXCIsXG4gICAgICAvLyBcIkB0eXBlc2NyaXB0LWVzbGludC9hcnJheS10eXBlXCI6IFtcImVycm9yXCIsICdhcnJheS1zaW1wbGUnXSwgLy8gVGhlIGRlZmF1bHQgb3B0aW9uIGlzICdhcnJheScuIE5vdCB2ZXJ5IHN1cmUgaWYgd2UgbmVlZCB0byBjaGFuZ2UgdGhlIG9wdGlvbi4gU28gZGlzYWJsZWQgaXQuXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9hd2FpdC10aGVuYWJsZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jbGFzcy1saXRlcmFsLXByb3BlcnR5LXN0eWxlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtZ2VuZXJpYy1jb25zdHJ1Y3RvcnNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC1pbmRleGVkLW9iamVjdC1zdHlsZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9jb25zaXN0ZW50LXR5cGUtYXNzZXJ0aW9uc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIGFzc2VydGlvblN0eWxlOiBcImFzXCIsXG4gICAgICAgICAgb2JqZWN0TGl0ZXJhbFR5cGVBc3NlcnRpb25zOiBcImFsbG93LWFzLXBhcmFtZXRlclwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtdHlwZS1kZWZpbml0aW9uc1wiOiBbXCJlcnJvclwiLCBcImludGVyZmFjZVwiXSwgLy8gVE9ETyBzaG91bGQgd2UgY2hhbmdlIHRvICd0eXBlJz9cbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtdHlwZS1leHBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2NvbnNpc3RlbnQtdHlwZS1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L2RvdC1ub3RhdGlvblwiOiBbXCJlcnJvclwiLCB7IGFsbG93S2V5d29yZHM6IHRydWUgfV0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9tZXRob2Qtc2lnbmF0dXJlLXN0eWxlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7XG4gICAgICAgICAgc2VsZWN0b3I6IFwiZnVuY3Rpb25cIixcbiAgICAgICAgICBmb3JtYXQ6IFtcImNhbWVsQ2FzZVwiLCBcIlBhc2NhbENhc2VcIl0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzZWxlY3RvcjogXCJ2YXJpYWJsZVwiLFxuICAgICAgICAgIHR5cGVzOiBbXCJmdW5jdGlvblwiXSxcbiAgICAgICAgICBmb3JtYXQ6IFtcImNhbWVsQ2FzZVwiLCBcIlBhc2NhbENhc2VcIl0sIC8vIGRlY29yYXRvcnMgbmVlZCBQYXNjYWxDYXNlXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBzZWxlY3RvcjogXCJjbGFzc1wiLFxuICAgICAgICAgIGZvcm1hdDogW1wiUGFzY2FsQ2FzZVwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHNlbGVjdG9yOiBcImludGVyZmFjZVwiLFxuICAgICAgICAgIGZvcm1hdDogW1wiUGFzY2FsQ2FzZVwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHNlbGVjdG9yOiBcInR5cGVBbGlhc1wiLFxuICAgICAgICAgIGZvcm1hdDogW1wiUGFzY2FsQ2FzZVwiXSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHNlbGVjdG9yOiBcInR5cGVQYXJhbWV0ZXJcIixcbiAgICAgICAgICBmb3JtYXQ6IFtcIlVQUEVSX0NBU0VcIiwgXCJQYXNjYWxDYXNlXCJdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWFycmF5LWRlbGV0ZVwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1iYXNlLXRvLXN0cmluZ1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyBpZ25vcmVkVHlwZU5hbWVzOiBbXSB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWNvbmZ1c2luZy1ub24tbnVsbC1hc3NlcnRpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tY29uZnVzaW5nLXZvaWQtZXhwcmVzc2lvblwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyBpZ25vcmVBcnJvd1Nob3J0aGFuZDogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWRlcHJlY2F0ZWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZHVwbGljYXRlLWVudW0tdmFsdWVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWR1cGxpY2F0ZS10eXBlLWNvbnN0aXR1ZW50c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVwiOiBcImVycm9yXCIsXG4gICAgICAvLyBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcIjogXCJ3YXJuXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1leHRyYS1ub24tbnVsbC1hc3NlcnRpb25cIjogXCJlcnJvclwiLFxuICAgICAgLy8gXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXh0cmFuZW91cy1jbGFzc1wiOiBcImVycm9yXCIsIC8vIENsYXNzZXMgaGF2ZSBvbmx5IHN0YXRpYyBtZW1iZXIgaXMgcmVhc29uYWJsZSBzb21ldGltZXMuIE5lc3RqcyBtb2R1bGVzIHVzZSBpdCBhIGxvdC5cbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzXCI6IFtcbiAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICB7XG4gICAgICAgICAgaWdub3JlVm9pZDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZm9yLWluLWFycmF5XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWltcG9ydC10eXBlLXNpZGUtZWZmZWN0c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1pbmZlcnJhYmxlLXR5cGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLWludmFsaWQtdm9pZC10eXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW1pc3VzZWQtbmV3XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW1pc3VzZWQtcHJvbWlzZXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWlzdXNlZC1zcHJlYWRcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbWl4ZWQtZW51bXNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbmFtZXNwYWNlXCI6IFwiZXJyb3JcIiwgLy8gY29uc2lkZXIgdG8gYWRkIG9wdGlvbiBge1wiYWxsb3dEZWZpbml0aW9uRmlsZXNcIjogZmFsc2V9YCB0byBzdHJpY3RseSBmb3JiaWQgYG5hbWVzcGFjZWAga2V5d29yZFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0ZWQtbnVsbGlzaC1jb2FsZXNjaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGVkLW9wdGlvbmFsLWNoYWluXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby1yZWR1bmRhbnQtdHlwZS1jb25zdGl0dWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWJvb2xlYW4tbGl0ZXJhbC1jb21wYXJlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWNvbmRpdGlvblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS1wYXJhbWV0ZXItcHJvcGVydHktYXNzaWdubWVudFwiOlxuICAgICAgICBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bm5lY2Vzc2FyeS10ZW1wbGF0ZS1leHByZXNzaW9uXCI6IFwiZXJyb3JcIiwgLy8ganMgYWxzbyBuZWVkIHRoaXMgcnVsZVxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1hcmd1bWVudHNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1hc3NlcnRpb25cIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1jb25zdHJhaW50XCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LXR5cGUtY29udmVyc2lvblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtY2FsbFwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtZGVjbGFyYXRpb24tbWVyZ2luZ1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby11bnNhZmUtZW51bS1jb21wYXJpc29uXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1mdW5jdGlvbi10eXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS1yZXR1cm5cIjogXCJlcnJvclwiLCAvLyBUaGlzIHJ1bGUgaXMgbm90IHZlcnkgcGVyZmVjdC4gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90eXBlc2NyaXB0LWVzbGludC90eXBlc2NyaXB0LWVzbGludC9pc3N1ZXMvMTA0MzlcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L25vLXVuc2FmZS11bmFyeS1taW51c1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9uby13cmFwcGVyLW9iamVjdC10eXBlc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9ub24tbnVsbGFibGUtdHlwZS1hc3NlcnRpb24tc3R5bGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvb25seS10aHJvdy1lcnJvclwiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAgeyBhbGxvd1Rocm93aW5nVW5rbm93bjogZmFsc2UgfSxcbiAgICAgIF0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItYXMtY29uc3RcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWZ1bmN0aW9uLXR5cGVcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLWluY2x1ZGVzXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1saXRlcmFsLWVudW0tbWVtYmVyXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1uYW1lc3BhY2Uta2V5d29yZFwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItbnVsbGlzaC1jb2FsZXNjaW5nXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1vcHRpb25hbC1jaGFpblwiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItcmVhZG9ubHlcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLXJlZ2V4cC1leGVjXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3ByZWZlci1yZXR1cm4tdGhpcy10eXBlXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3Byb21pc2UtZnVuY3Rpb24tYXN5bmNcIjogXCJlcnJvclwiLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcmVzdHJpY3QtcGx1cy1vcGVyYW5kc1wiOiBbXG4gICAgICAgIFwiZXJyb3JcIixcbiAgICAgICAge1xuICAgICAgICAgIC8vIGFsbG93QW55OiBmYWxzZSxcbiAgICAgICAgICBhbGxvd0Jvb2xlYW46IGZhbHNlLFxuICAgICAgICAgIGFsbG93TnVsbGlzaDogZmFsc2UsXG4gICAgICAgICAgYWxsb3dOdW1iZXJBbmRTdHJpbmc6IGZhbHNlLFxuICAgICAgICAgIGFsbG93UmVnRXhwOiBmYWxzZSxcbiAgICAgICAgICBza2lwQ29tcG91bmRBc3NpZ25tZW50czogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgXCJAdHlwZXNjcmlwdC1lc2xpbnQvcmVzdHJpY3QtdGVtcGxhdGUtZXhwcmVzc2lvbnNcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBhbGxvdzogW10sXG4gICAgICAgICAgLy8gYWxsb3dBbnk6IGZhbHNlLFxuICAgICAgICAgIGFsbG93Qm9vbGVhbjogZmFsc2UsXG4gICAgICAgICAgYWxsb3dOZXZlcjogZmFsc2UsXG4gICAgICAgICAgYWxsb3dOdWxsaXNoOiBmYWxzZSxcbiAgICAgICAgICAvLyBhbGxvd051bWJlcjogZmFsc2UsXG4gICAgICAgICAgYWxsb3dSZWdFeHA6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3JlbGF0ZWQtZ2V0dGVyLXNldHRlci1wYWlyc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9yZXR1cm4tYXdhaXRcIjogW1wiZXJyb3JcIiwgXCJhbHdheXNcIl0sXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC9zd2l0Y2gtZXhoYXVzdGl2ZW5lc3MtY2hlY2tcIjogW1xuICAgICAgICBcImVycm9yXCIsXG4gICAgICAgIHsgcmVxdWlyZURlZmF1bHRGb3JOb25VbmlvbjogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3VuYm91bmQtbWV0aG9kXCI6IFwiZXJyb3JcIixcbiAgICAgIFwiQHR5cGVzY3JpcHQtZXNsaW50L3VuaWZpZWQtc2lnbmF0dXJlc1wiOiBcImVycm9yXCIsXG4gICAgICBcIkB0eXBlc2NyaXB0LWVzbGludC91c2UtdW5rbm93bi1pbi1jYXRjaC1jYWxsYmFjay12YXJpYWJsZVwiOiBcImVycm9yXCIsXG4gICAgfSxcbiAgfSBhcyBjb25zdDtcbn1cbiJdfQ==
|
|
@@ -19,7 +19,6 @@ export declare function typescript(): readonly [{
|
|
|
19
19
|
};
|
|
20
20
|
readonly plugins: {
|
|
21
21
|
readonly "@fenge-ts": typeof import("@fenge/eslint-plugin-ts");
|
|
22
|
-
readonly "check-file": typeof import("eslint-plugin-check-file").default;
|
|
23
22
|
readonly fp: unknown;
|
|
24
23
|
readonly n: import("eslint").ESLint.Plugin & {
|
|
25
24
|
configs: import("eslint-plugin-n").Configs;
|
|
@@ -364,6 +363,9 @@ export declare function typescript(): readonly [{
|
|
|
364
363
|
readonly ignoredTypeNames: readonly [];
|
|
365
364
|
}];
|
|
366
365
|
readonly "@typescript-eslint/no-confusing-non-null-assertion": "error";
|
|
366
|
+
readonly "@typescript-eslint/no-confusing-void-expression": readonly ["error", {
|
|
367
|
+
readonly ignoreArrowShorthand: true;
|
|
368
|
+
}];
|
|
367
369
|
readonly "@typescript-eslint/no-deprecated": "error";
|
|
368
370
|
readonly "@typescript-eslint/no-duplicate-enum-values": "error";
|
|
369
371
|
readonly "@typescript-eslint/no-duplicate-type-constituents": "error";
|
|
@@ -393,6 +395,8 @@ export declare function typescript(): readonly [{
|
|
|
393
395
|
readonly "@typescript-eslint/no-unnecessary-type-arguments": "error";
|
|
394
396
|
readonly "@typescript-eslint/no-unnecessary-type-assertion": "error";
|
|
395
397
|
readonly "@typescript-eslint/no-unnecessary-type-constraint": "error";
|
|
398
|
+
readonly "@typescript-eslint/no-unnecessary-type-conversion": "error";
|
|
399
|
+
readonly "@typescript-eslint/no-unsafe-call": "error";
|
|
396
400
|
readonly "@typescript-eslint/no-unsafe-declaration-merging": "error";
|
|
397
401
|
readonly "@typescript-eslint/no-unsafe-enum-comparison": "error";
|
|
398
402
|
readonly "@typescript-eslint/no-unsafe-function-type": "error";
|
|
@@ -400,14 +404,20 @@ export declare function typescript(): readonly [{
|
|
|
400
404
|
readonly "@typescript-eslint/no-unsafe-unary-minus": "error";
|
|
401
405
|
readonly "@typescript-eslint/no-wrapper-object-types": "error";
|
|
402
406
|
readonly "@typescript-eslint/non-nullable-type-assertion-style": "error";
|
|
407
|
+
readonly "@typescript-eslint/only-throw-error": readonly ["error", {
|
|
408
|
+
readonly allowThrowingUnknown: false;
|
|
409
|
+
}];
|
|
403
410
|
readonly "@typescript-eslint/prefer-as-const": "error";
|
|
404
411
|
readonly "@typescript-eslint/prefer-function-type": "error";
|
|
412
|
+
readonly "@typescript-eslint/prefer-includes": "error";
|
|
405
413
|
readonly "@typescript-eslint/prefer-literal-enum-member": "error";
|
|
406
414
|
readonly "@typescript-eslint/prefer-namespace-keyword": "error";
|
|
407
415
|
readonly "@typescript-eslint/prefer-nullish-coalescing": "error";
|
|
408
416
|
readonly "@typescript-eslint/prefer-optional-chain": "error";
|
|
409
417
|
readonly "@typescript-eslint/prefer-readonly": "error";
|
|
418
|
+
readonly "@typescript-eslint/prefer-regexp-exec": "error";
|
|
410
419
|
readonly "@typescript-eslint/prefer-return-this-type": "error";
|
|
420
|
+
readonly "@typescript-eslint/promise-function-async": "error";
|
|
411
421
|
readonly "@typescript-eslint/restrict-plus-operands": readonly ["error", {
|
|
412
422
|
readonly allowBoolean: false;
|
|
413
423
|
readonly allowNullish: false;
|
|
@@ -429,6 +439,7 @@ export declare function typescript(): readonly [{
|
|
|
429
439
|
}];
|
|
430
440
|
readonly "@typescript-eslint/unbound-method": "error";
|
|
431
441
|
readonly "@typescript-eslint/unified-signatures": "error";
|
|
442
|
+
readonly "@typescript-eslint/use-unknown-in-catch-callback-variable": "error";
|
|
432
443
|
readonly "default-param-last": "off";
|
|
433
444
|
readonly "init-declarations": "off";
|
|
434
445
|
readonly "max-params": "off";
|
|
@@ -480,7 +491,6 @@ export declare function typescript(): readonly [{
|
|
|
480
491
|
readonly variables: false;
|
|
481
492
|
}];
|
|
482
493
|
readonly "@typescript-eslint/no-useless-constructor": "error";
|
|
483
|
-
readonly "@typescript-eslint/only-throw-error": "error";
|
|
484
494
|
readonly "@typescript-eslint/prefer-promise-reject-errors": "error";
|
|
485
495
|
readonly "@typescript-eslint/require-await": "error";
|
|
486
496
|
readonly "arrow-body-style": readonly ["error", "as-needed"];
|
|
@@ -510,7 +520,9 @@ export declare function typescript(): readonly [{
|
|
|
510
520
|
readonly disallowTemplateShorthand: true;
|
|
511
521
|
readonly allow: readonly ["!!"];
|
|
512
522
|
}];
|
|
513
|
-
readonly "no-inner-declarations": "error"
|
|
523
|
+
readonly "no-inner-declarations": readonly ["error", "functions", {
|
|
524
|
+
readonly blockScopedFunctions: "disallow";
|
|
525
|
+
}];
|
|
514
526
|
readonly "no-lonely-if": "error";
|
|
515
527
|
readonly "no-multi-assign": "error";
|
|
516
528
|
readonly "no-new-native-nonconstructor": "error";
|
|
@@ -530,15 +542,6 @@ export declare function typescript(): readonly [{
|
|
|
530
542
|
readonly "prefer-object-has-own": "error";
|
|
531
543
|
readonly "prefer-spread": "error";
|
|
532
544
|
readonly "prefer-template": "error";
|
|
533
|
-
readonly "check-file/filename-blocklist": readonly ["error", {
|
|
534
|
-
readonly "**/{.,}*.mjs": "*.js";
|
|
535
|
-
readonly "**/{.,}*.cjs": "*.js";
|
|
536
|
-
readonly "**/{.,}*.mts": "*.ts";
|
|
537
|
-
readonly "**/{.,}*.cts": "*.ts";
|
|
538
|
-
readonly "**/{.,}*.spec.*": "*.test.*";
|
|
539
|
-
readonly "**/.*rc.js": "*.config.js";
|
|
540
|
-
readonly "**/.*rc.ts": "*.config.ts";
|
|
541
|
-
}];
|
|
542
545
|
readonly "es-x/no-accessor-properties": "error";
|
|
543
546
|
readonly "es-x/no-async-iteration": "error";
|
|
544
547
|
readonly "es-x/no-generators": "error";
|
|
@@ -546,6 +549,7 @@ export declare function typescript(): readonly [{
|
|
|
546
549
|
readonly "es-x/no-legacy-object-prototype-accessor-methods": "error";
|
|
547
550
|
readonly "es-x/no-top-level-await": "error";
|
|
548
551
|
readonly "esm/existing-file-imports": "error";
|
|
552
|
+
readonly "esm/no-circular-imports": "error";
|
|
549
553
|
readonly "esm/no-declaration-file-imports": "error";
|
|
550
554
|
readonly "esm/no-directory-imports": "error";
|
|
551
555
|
readonly "esm/no-dynamic-imports": "error";
|
|
@@ -619,6 +623,9 @@ export declare function typescript(): readonly [{
|
|
|
619
623
|
readonly "sonarjs/no-nested-switch": "error";
|
|
620
624
|
readonly "sonarjs/no-useless-catch": "error";
|
|
621
625
|
readonly "sonarjs/prefer-immediate-return": "error";
|
|
626
|
+
readonly "unicorn/catch-error-name": readonly ["error", {
|
|
627
|
+
readonly ignore: readonly ["^e$", "^err$"];
|
|
628
|
+
}];
|
|
622
629
|
readonly "unicorn/consistent-assert": "error";
|
|
623
630
|
readonly "unicorn/consistent-date-clone": "error";
|
|
624
631
|
readonly "unicorn/consistent-destructuring": "error";
|
|
@@ -687,9 +694,12 @@ export declare function typescript(): readonly [{
|
|
|
687
694
|
readonly "unicorn/no-thenable": "error";
|
|
688
695
|
readonly "unicorn/no-this-assignment": "error";
|
|
689
696
|
readonly "unicorn/no-typeof-undefined": "error";
|
|
697
|
+
readonly "unicorn/no-unnecessary-array-flat-depth": "error";
|
|
698
|
+
readonly "unicorn/no-unnecessary-await": "error";
|
|
690
699
|
readonly "unicorn/no-unreadable-array-destructuring": "error";
|
|
691
700
|
readonly "unicorn/no-unreadable-iife": "error";
|
|
692
701
|
readonly "unicorn/no-useless-fallback-in-spread": "error";
|
|
702
|
+
readonly "unicorn/no-useless-promise-resolve-reject": "error";
|
|
693
703
|
readonly "unicorn/no-useless-spread": "error";
|
|
694
704
|
readonly "unicorn/no-useless-switch-case": "error";
|
|
695
705
|
readonly "unicorn/no-zero-fractions": "error";
|
|
@@ -705,6 +715,7 @@ export declare function typescript(): readonly [{
|
|
|
705
715
|
readonly "unicorn/prefer-number-properties": "error";
|
|
706
716
|
readonly "unicorn/prefer-object-from-entries": "error";
|
|
707
717
|
readonly "unicorn/prefer-optional-catch-binding": "error";
|
|
718
|
+
readonly "unicorn/prefer-prototype-methods": "error";
|
|
708
719
|
readonly "unicorn/prefer-reflect-apply": "error";
|
|
709
720
|
readonly "unicorn/prefer-regexp-test": "error";
|
|
710
721
|
readonly "unicorn/prefer-string-replace-all": "error";
|
|
@@ -805,9 +816,11 @@ export declare function typescript(): readonly [{
|
|
|
805
816
|
readonly "no-obj-calls": "error";
|
|
806
817
|
readonly "no-octal": "error";
|
|
807
818
|
readonly "no-octal-escape": "error";
|
|
819
|
+
readonly "no-promise-executor-return": "error";
|
|
808
820
|
readonly "no-proto": "error";
|
|
809
821
|
readonly "no-regex-spaces": "error";
|
|
810
822
|
readonly "no-return-assign": readonly ["error", "except-parens"];
|
|
823
|
+
readonly "no-script-url": "error";
|
|
811
824
|
readonly "no-self-assign": readonly ["error", {
|
|
812
825
|
readonly props: true;
|
|
813
826
|
}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/config/typescript.ts"],"names":[],"mappings":"AAMA,wBAAgB,UAAU
|
|
1
|
+
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/config/typescript.ts"],"names":[],"mappings":"AAMA,wBAAgB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAQzB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fenge/eslint-config",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.15",
|
|
4
4
|
"description": "A super strict eslint config for linting js/ts/package.json.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"opinionated",
|
|
@@ -26,26 +26,26 @@
|
|
|
26
26
|
"dist"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
30
|
-
"@typescript-eslint/parser": "8.
|
|
29
|
+
"@typescript-eslint/eslint-plugin": "8.33.1",
|
|
30
|
+
"@typescript-eslint/parser": "8.33.1",
|
|
31
31
|
"confusing-browser-globals": "1.0.11",
|
|
32
32
|
"eslint-plugin-check-file": "3.2.0",
|
|
33
33
|
"eslint-plugin-es-x": "8.6.2",
|
|
34
34
|
"eslint-plugin-fp": "2.3.0",
|
|
35
35
|
"eslint-plugin-import": "2.31.0",
|
|
36
|
-
"eslint-plugin-n": "17.
|
|
36
|
+
"eslint-plugin-n": "17.19.0",
|
|
37
37
|
"eslint-plugin-promise": "7.2.1",
|
|
38
38
|
"eslint-plugin-react": "7.37.5",
|
|
39
39
|
"eslint-plugin-react-hooks": "5.2.0",
|
|
40
40
|
"eslint-plugin-simple-import-sort": "12.1.1",
|
|
41
|
-
"eslint-plugin-sonarjs": "
|
|
41
|
+
"eslint-plugin-sonarjs": "3.0.2",
|
|
42
42
|
"eslint-plugin-unicorn": "59.0.1",
|
|
43
43
|
"globals": "16.2.0",
|
|
44
44
|
"@fenge/eslint-plugin": "0.4.1",
|
|
45
|
-
"@fenge/eslint-plugin-ts": "0.4.
|
|
46
|
-
"eslint-plugin-esm": "0.8.
|
|
47
|
-
"eslint-plugin-
|
|
48
|
-
"eslint-plugin-
|
|
45
|
+
"@fenge/eslint-plugin-ts": "0.4.1",
|
|
46
|
+
"eslint-plugin-esm": "0.8.3",
|
|
47
|
+
"eslint-plugin-publint": "0.2.4",
|
|
48
|
+
"eslint-plugin-pkg-json": "0.3.3"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@types/node": "22.14.1",
|