@codeperfect/eslint-config 1.2.0 → 1.4.0
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 +21 -3
- package/dist/.tsbuildinfo +1 -1
- package/dist/codeperfect-eslint-config-1.0.0.tgz +0 -0
- package/dist/domain/config-composition.d.ts +8 -0
- package/dist/domain/config-composition.d.ts.map +1 -0
- package/dist/domain/config-composition.js +55 -0
- package/dist/domain/index.d.ts +3 -1
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +3 -2
- package/dist/{module-taxonomy.d.ts → domain/module-taxonomy.d.ts} +3 -3
- package/dist/domain/module-taxonomy.d.ts.map +1 -0
- package/dist/domain/module-taxonomy.js +22 -0
- package/dist/{types.d.ts → domain/types.d.ts} +31 -6
- package/dist/domain/types.d.ts.map +1 -0
- package/dist/domain/types.js +2 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/infrastructure/architecture/boundaries.d.ts +22 -0
- package/dist/infrastructure/architecture/boundaries.d.ts.map +1 -0
- package/dist/infrastructure/architecture/boundaries.js +175 -0
- package/dist/infrastructure/architecture/import-x.d.ts.map +1 -0
- package/dist/infrastructure/architecture/import-x.js +79 -0
- package/dist/infrastructure/architecture/index.d.ts +3 -0
- package/dist/infrastructure/architecture/index.d.ts.map +1 -0
- package/dist/infrastructure/architecture/index.js +3 -0
- package/dist/{config-factory.d.ts → infrastructure/config-factory.d.ts} +1 -1
- package/dist/infrastructure/config-factory.d.ts.map +1 -0
- package/dist/infrastructure/config-factory.js +44 -0
- package/dist/infrastructure/configs/index.d.ts +7 -0
- package/dist/infrastructure/configs/index.d.ts.map +1 -0
- package/dist/infrastructure/configs/index.js +7 -0
- package/dist/infrastructure/core/codeperfect.d.ts.map +1 -0
- package/dist/infrastructure/core/codeperfect.js +14 -0
- package/dist/infrastructure/core/eslint.d.ts.map +1 -0
- package/dist/infrastructure/core/eslint.js +62 -0
- package/dist/infrastructure/core/index.d.ts +5 -0
- package/dist/infrastructure/core/index.d.ts.map +1 -0
- package/dist/infrastructure/core/index.js +5 -0
- package/dist/infrastructure/core/resolver.d.ts.map +1 -0
- package/dist/infrastructure/core/resolver.js +27 -0
- package/dist/infrastructure/core/typescript.d.ts.map +1 -0
- package/dist/infrastructure/core/typescript.js +63 -0
- package/dist/{diagnostics.d.ts → infrastructure/diagnostics.d.ts} +13 -3
- package/dist/infrastructure/diagnostics.d.ts.map +1 -0
- package/dist/infrastructure/diagnostics.js +90 -0
- package/dist/infrastructure/docs/comments.d.ts.map +1 -0
- package/dist/infrastructure/docs/comments.js +30 -0
- package/dist/infrastructure/docs/index.d.ts +3 -0
- package/dist/infrastructure/docs/index.d.ts.map +1 -0
- package/dist/infrastructure/docs/index.js +3 -0
- package/dist/infrastructure/docs/jsdoc-config.d.ts +14 -0
- package/dist/infrastructure/docs/jsdoc-config.d.ts.map +1 -0
- package/dist/infrastructure/docs/jsdoc-config.js +126 -0
- package/dist/infrastructure/docs/jsdoc.d.ts.map +1 -0
- package/dist/infrastructure/docs/jsdoc.js +15 -0
- package/dist/infrastructure/index.d.ts +5 -0
- package/dist/infrastructure/index.d.ts.map +1 -0
- package/dist/infrastructure/index.js +4 -0
- package/dist/{plugin-loaders.d.ts → infrastructure/plugin-loaders.d.ts} +2 -2
- package/dist/infrastructure/plugin-loaders.d.ts.map +1 -0
- package/dist/infrastructure/plugin-loaders.js +115 -0
- package/dist/infrastructure/plugin-state.d.ts +26 -0
- package/dist/infrastructure/plugin-state.d.ts.map +1 -0
- package/dist/infrastructure/plugin-state.js +54 -0
- package/dist/infrastructure/rxjs-x.d.ts.map +1 -0
- package/dist/infrastructure/rxjs-x.js +27 -0
- package/dist/infrastructure/style/index.d.ts +5 -0
- package/dist/infrastructure/style/index.d.ts.map +1 -0
- package/dist/infrastructure/style/index.js +5 -0
- package/dist/infrastructure/style/perfectionist.d.ts.map +1 -0
- package/dist/infrastructure/style/perfectionist.js +31 -0
- package/dist/infrastructure/style/prettier.d.ts.map +1 -0
- package/dist/infrastructure/style/prettier.js +15 -0
- package/dist/infrastructure/style/stylistic.d.ts.map +1 -0
- package/dist/infrastructure/style/stylistic.js +17 -0
- package/dist/infrastructure/style/unicorn.d.ts.map +1 -0
- package/dist/infrastructure/style/unicorn.js +15 -0
- package/dist/infrastructure/testing/index.d.ts +5 -0
- package/dist/infrastructure/testing/index.d.ts.map +1 -0
- package/dist/infrastructure/testing/index.js +5 -0
- package/dist/infrastructure/testing/jasmine.d.ts.map +1 -0
- package/dist/infrastructure/testing/jasmine.js +25 -0
- package/dist/infrastructure/testing/jest.d.ts.map +1 -0
- package/dist/infrastructure/testing/jest.js +27 -0
- package/dist/infrastructure/testing/playwright.d.ts.map +1 -0
- package/dist/infrastructure/testing/playwright.js +29 -0
- package/dist/infrastructure/testing/vitest.d.ts.map +1 -0
- package/dist/infrastructure/testing/vitest.js +33 -0
- package/dist/{utilities.d.ts → infrastructure/utilities.d.ts} +2 -13
- package/dist/infrastructure/utilities.d.ts.map +1 -0
- package/dist/infrastructure/utilities.js +112 -0
- package/package.json +43 -37
- package/dist/architecture/boundaries.d.ts +0 -17
- package/dist/architecture/boundaries.d.ts.map +0 -1
- package/dist/architecture/boundaries.js +0 -69
- package/dist/architecture/import-x.d.ts.map +0 -1
- package/dist/architecture/import-x.js +0 -80
- package/dist/architecture/index.d.ts +0 -3
- package/dist/architecture/index.d.ts.map +0 -1
- package/dist/architecture/index.js +0 -3
- package/dist/config-composition.d.ts +0 -6
- package/dist/config-composition.d.ts.map +0 -1
- package/dist/config-composition.js +0 -39
- package/dist/config-factory.d.ts.map +0 -1
- package/dist/config-factory.js +0 -42
- package/dist/configs/index.d.ts +0 -7
- package/dist/configs/index.d.ts.map +0 -1
- package/dist/configs/index.js +0 -7
- package/dist/core/codeperfect.d.ts.map +0 -1
- package/dist/core/codeperfect.js +0 -14
- package/dist/core/eslint.d.ts.map +0 -1
- package/dist/core/eslint.js +0 -58
- package/dist/core/index.d.ts +0 -5
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -5
- package/dist/core/resolver.d.ts.map +0 -1
- package/dist/core/resolver.js +0 -27
- package/dist/core/typescript.d.ts.map +0 -1
- package/dist/core/typescript.js +0 -63
- package/dist/diagnostics.d.ts.map +0 -1
- package/dist/diagnostics.js +0 -74
- package/dist/docs/comments.d.ts.map +0 -1
- package/dist/docs/comments.js +0 -30
- package/dist/docs/index.d.ts +0 -3
- package/dist/docs/index.d.ts.map +0 -1
- package/dist/docs/index.js +0 -3
- package/dist/docs/jsdoc.d.ts.map +0 -1
- package/dist/docs/jsdoc.js +0 -126
- package/dist/domain/rxjs-x.d.ts.map +0 -1
- package/dist/domain/rxjs-x.js +0 -27
- package/dist/module-taxonomy.d.ts.map +0 -1
- package/dist/module-taxonomy.js +0 -22
- package/dist/plugin-loaders.d.ts.map +0 -1
- package/dist/plugin-loaders.js +0 -115
- package/dist/style/index.d.ts +0 -5
- package/dist/style/index.d.ts.map +0 -1
- package/dist/style/index.js +0 -5
- package/dist/style/perfectionist.d.ts.map +0 -1
- package/dist/style/perfectionist.js +0 -31
- package/dist/style/prettier.d.ts.map +0 -1
- package/dist/style/prettier.js +0 -15
- package/dist/style/stylistic.d.ts.map +0 -1
- package/dist/style/stylistic.js +0 -17
- package/dist/style/unicorn.d.ts.map +0 -1
- package/dist/style/unicorn.js +0 -15
- package/dist/testing/index.d.ts +0 -5
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js +0 -5
- package/dist/testing/jasmine.d.ts.map +0 -1
- package/dist/testing/jasmine.js +0 -25
- package/dist/testing/jest.d.ts.map +0 -1
- package/dist/testing/jest.js +0 -27
- package/dist/testing/playwright.d.ts.map +0 -1
- package/dist/testing/playwright.js +0 -29
- package/dist/testing/vitest.d.ts.map +0 -1
- package/dist/testing/vitest.js +0 -33
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/utilities.d.ts.map +0 -1
- package/dist/utilities.js +0 -125
- /package/dist/{architecture → infrastructure/architecture}/import-x.d.ts +0 -0
- /package/dist/{core → infrastructure/core}/codeperfect.d.ts +0 -0
- /package/dist/{core → infrastructure/core}/eslint.d.ts +0 -0
- /package/dist/{core → infrastructure/core}/resolver.d.ts +0 -0
- /package/dist/{core → infrastructure/core}/typescript.d.ts +0 -0
- /package/dist/{docs → infrastructure/docs}/comments.d.ts +0 -0
- /package/dist/{docs → infrastructure/docs}/jsdoc.d.ts +0 -0
- /package/dist/{domain → infrastructure}/rxjs-x.d.ts +0 -0
- /package/dist/{style → infrastructure/style}/perfectionist.d.ts +0 -0
- /package/dist/{style → infrastructure/style}/prettier.d.ts +0 -0
- /package/dist/{style → infrastructure/style}/stylistic.d.ts +0 -0
- /package/dist/{style → infrastructure/style}/unicorn.d.ts +0 -0
- /package/dist/{testing → infrastructure/testing}/jasmine.d.ts +0 -0
- /package/dist/{testing → infrastructure/testing}/jest.d.ts +0 -0
- /package/dist/{testing → infrastructure/testing}/playwright.d.ts +0 -0
- /package/dist/{testing → infrastructure/testing}/vitest.d.ts +0 -0
package/dist/testing/vitest.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { defineConfig } from "eslint/config";
|
|
2
|
-
/**
|
|
3
|
-
* Load Vitest plugin configuration when available.
|
|
4
|
-
* @returns Return value output.
|
|
5
|
-
* @example
|
|
6
|
-
* ```typescript
|
|
7
|
-
* await vitest();
|
|
8
|
-
* ```
|
|
9
|
-
*/
|
|
10
|
-
export async function vitest() {
|
|
11
|
-
const vitestModule = await import("@vitest/eslint-plugin");
|
|
12
|
-
const plugin = vitestModule.default;
|
|
13
|
-
const allConfig = plugin?.configs?.all;
|
|
14
|
-
if (allConfig === void 0) {
|
|
15
|
-
return [];
|
|
16
|
-
}
|
|
17
|
-
return defineConfig({ settings: { vitest: { typecheck: true } } }, {
|
|
18
|
-
extends: [allConfig],
|
|
19
|
-
files: ["**/*.{spec,test}.ts"],
|
|
20
|
-
name: "vitest/custom",
|
|
21
|
-
rules: {
|
|
22
|
-
"vitest/consistent-test-filename": [
|
|
23
|
-
"error",
|
|
24
|
-
{ pattern: String.raw `.*\.spec\.[tj]sx?$` },
|
|
25
|
-
],
|
|
26
|
-
"vitest/no-hooks": "off",
|
|
27
|
-
"vitest/prefer-expect-assertions": "off",
|
|
28
|
-
"vitest/require-mock-type-parameters": "off",
|
|
29
|
-
"vitest/unbound-method": "off",
|
|
30
|
-
},
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3Rpbmcvdml0ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0M7Ozs7Ozs7R0FPRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTTtJQUMxQixNQUFNLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzNELE1BQU0sTUFBTSxHQUNWLFlBVUQsQ0FBQyxPQUFPLENBQUM7SUFDVixNQUFNLFNBQVMsR0FBRyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsQ0FBQztJQUV2QyxJQUFJLFNBQVMsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE9BQU8sWUFBWSxDQUNqQixFQUFFLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQzdDO1FBQ0UsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3BCLEtBQUssRUFBRSxDQUFDLHFCQUFxQixDQUFDO1FBQzlCLElBQUksRUFBRSxlQUFlO1FBQ3JCLEtBQUssRUFBRTtZQUNMLGlDQUFpQyxFQUFFO2dCQUNqQyxPQUFPO2dCQUNQLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUEsb0JBQW9CLEVBQUU7YUFDNUM7WUFDRCxpQkFBaUIsRUFBRSxLQUFLO1lBQ3hCLGlDQUFpQyxFQUFFLEtBQUs7WUFDeEMscUNBQXFDLEVBQUUsS0FBSztZQUM1Qyx1QkFBdUIsRUFBRSxLQUFLO1NBQy9CO0tBQ0YsQ0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTGludGVyIH0gZnJvbSBcImVzbGludFwiO1xuXG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwiZXNsaW50L2NvbmZpZ1wiO1xuXG4vKipcbiAqIExvYWQgVml0ZXN0IHBsdWdpbiBjb25maWd1cmF0aW9uIHdoZW4gYXZhaWxhYmxlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBhd2FpdCB2aXRlc3QoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdml0ZXN0KCk6IFByb21pc2U8TGludGVyLkNvbmZpZ1tdPiB7XG4gIGNvbnN0IHZpdGVzdE1vZHVsZSA9IGF3YWl0IGltcG9ydChcIkB2aXRlc3QvZXNsaW50LXBsdWdpblwiKTtcbiAgY29uc3QgcGx1Z2luID0gKFxuICAgIHZpdGVzdE1vZHVsZSBhcyB7XG4gICAgICAvKiogRGVmYXVsdCBoZWxwZXIgdmFsdWUuICovXG4gICAgICBkZWZhdWx0Pzoge1xuICAgICAgICAvKiogQ29uZmlncyBoZWxwZXIgdmFsdWUuICovXG4gICAgICAgIGNvbmZpZ3M/OiB7XG4gICAgICAgICAgLyoqIEFsbCBoZWxwZXIgdmFsdWUuICovXG4gICAgICAgICAgYWxsPzogTGludGVyLkNvbmZpZztcbiAgICAgICAgfTtcbiAgICAgIH07XG4gICAgfVxuICApLmRlZmF1bHQ7XG4gIGNvbnN0IGFsbENvbmZpZyA9IHBsdWdpbj8uY29uZmlncz8uYWxsO1xuXG4gIGlmIChhbGxDb25maWcgPT09IHZvaWQgMCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHJldHVybiBkZWZpbmVDb25maWcoXG4gICAgeyBzZXR0aW5nczogeyB2aXRlc3Q6IHsgdHlwZWNoZWNrOiB0cnVlIH0gfSB9LFxuICAgIHtcbiAgICAgIGV4dGVuZHM6IFthbGxDb25maWddLFxuICAgICAgZmlsZXM6IFtcIioqLyoue3NwZWMsdGVzdH0udHNcIl0sXG4gICAgICBuYW1lOiBcInZpdGVzdC9jdXN0b21cIixcbiAgICAgIHJ1bGVzOiB7XG4gICAgICAgIFwidml0ZXN0L2NvbnNpc3RlbnQtdGVzdC1maWxlbmFtZVwiOiBbXG4gICAgICAgICAgXCJlcnJvclwiLFxuICAgICAgICAgIHsgcGF0dGVybjogU3RyaW5nLnJhd2AuKlxcLnNwZWNcXC5bdGpdc3g/JGAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgXCJ2aXRlc3Qvbm8taG9va3NcIjogXCJvZmZcIixcbiAgICAgICAgXCJ2aXRlc3QvcHJlZmVyLWV4cGVjdC1hc3NlcnRpb25zXCI6IFwib2ZmXCIsXG4gICAgICAgIFwidml0ZXN0L3JlcXVpcmUtbW9jay10eXBlLXBhcmFtZXRlcnNcIjogXCJvZmZcIixcbiAgICAgICAgXCJ2aXRlc3QvdW5ib3VuZC1tZXRob2RcIjogXCJvZmZcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgKTtcbn1cbiJdfQ==
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EACV,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAElC,qCAAqC;AACrC,KAAK,sBAAsB,GAAG,YAAY,GAAG,UAAU,CAAC;AAExD,qCAAqC;AACrC,UAAU,gBAAgB;IACxB,oEAAoE;IACpE,QAAQ,EAAE,kBAAkB,CAAC;IAE7B,2EAA2E;IAE3E,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAE1D,iEAAiE;IACjE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAEzB,mFAAmF;IACnF,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED,qCAAqC;AACrC,UAAU,aAAa;IACrB,gFAAgF;IAChF,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B,wEAAwE;IACxE,eAAe,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAExC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;CAC5B;AAED,qCAAqC;AACrC,KAAK,cAAc,GAAG,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;AAE3E,qCAAqC;AACrC,KAAK,uBAAuB,GAAG,UAAU,GAAG,OAAO,CAAC;AAEpD,qCAAqC;AACrC,KAAK,gBAAgB,GAAG,QAAQ,CAAC;AAEjC,qCAAqC;AACrC,KAAK,UAAU,GACX,sBAAsB,GACtB,cAAc,GACd,uBAAuB,GACvB,gBAAgB,GAChB,eAAe,GACf,iBAAiB,CAAC;AAEtB,qCAAqC;AACrC,KAAK,eAAe,GAAG,eAAe,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,CAAC;AAE9E,qCAAqC;AACrC,KAAK,iBAAiB,GAAG,SAAS,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEtE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC"}
|
package/dist/types.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTGludGVyIH0gZnJvbSBcImVzbGludFwiO1xuaW1wb3J0IHR5cGUge1xuICBEZXBlbmRlbmNpZXNSdWxlT3B0aW9ucyxcbiAgRWxlbWVudERlc2NyaXB0b3JzLFxufSBmcm9tIFwiZXNsaW50LXBsdWdpbi1ib3VuZGFyaWVzXCI7XG5cbi8qKiBUeXBlIGRlZmluaXRpb24gZm9yIHJ1bGUgZGF0YS4gKi9cbnR5cGUgQXJjaGl0ZWN0dXJlUGx1Z2luTmFtZSA9IFwiYm91bmRhcmllc1wiIHwgXCJpbXBvcnQteFwiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG5pbnRlcmZhY2UgQm91bmRhcmllc0NvbmZpZyB7XG4gIC8qKiBSZXBvc2l0b3J5LW93bmVkIGVsZW1lbnQgZGVzY3JpcHRvcnMgZm9yIGJvdW5kYXJpZXMgYW5hbHlzaXMuICovXG4gIGVsZW1lbnRzOiBFbGVtZW50RGVzY3JpcHRvcnM7XG5cbiAgLyoqIFJlcG9zaXRvcnktb3duZWQgZGVwZW5kZW5jeSBkaXJlY3Rpb24gcnVsZXMgZm9yIGJvdW5kYXJpZXMgYW5hbHlzaXMuICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5uZWNlc3NhcnktdHlwZS1hcmd1bWVudHMgLS0tIFRoaXMgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSBjb3JyZWN0IHR5cGluZyBvZiB0aGUgcnVsZSBvcHRpb25zLlxuICBlbGVtZW50VHlwZXM6IExpbnRlci5SdWxlRW50cnk8RGVwZW5kZW5jaWVzUnVsZU9wdGlvbnNbXT47XG5cbiAgLyoqIEZpbGVzIGluY2x1ZGVkIGluIHJlcG9zaXRvcnktc3BlY2lmaWMgYm91bmRhcmllcyBhbmFseXNpcy4gKi9cbiAgZmlsZXM6IHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4gIC8qKiBPcHRpb25hbCBpZ25vcmUgZ2xvYnMgZXhjbHVkZWQgZnJvbSByZXBvc2l0b3J5LXNwZWNpZmljIGJvdW5kYXJpZXMgYW5hbHlzaXMuICovXG4gIGlnbm9yZXM/OiByZWFkb25seSBzdHJpbmdbXTtcbn1cblxuLyoqIFR5cGUgZGVmaW5pdGlvbiBmb3IgcnVsZSBkYXRhLiAqL1xuaW50ZXJmYWNlIENvbmZpZ09wdGlvbnMge1xuICAvKiogUmVwb3NpdG9yeS1vd25lZCBhcmNoaXRlY3R1cmUgaW5wdXQgZm9yIHRoZSBvcHRpb25hbCBgYm91bmRhcmllc2AgbW9kdWxlLiAqL1xuICBib3VuZGFyaWVzPzogQm91bmRhcmllc0NvbmZpZztcblxuICAvKiogTGlzdCBvZiBuYW1lZCBtb2R1bGVzIHRvIGRpc2FibGUgZnJvbSB0aGUgY29tcG9zZWQgY29uZmlndXJhdGlvbi4gKi9cbiAgZGlzYWJsZWRQbHVnaW5zPzogcmVhZG9ubHkgUGx1Z2luTmFtZVtdO1xuXG4gIC8qKlxuICAgKiBSdWxlcyB0byBkaXNhYmxlIG9yIG92ZXJyaWRlLlxuICAgKiBVc2UgJ29mZicgdG8gZGlzYWJsZSwgb3IgcHJvdmlkZSBjdXN0b20gY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHJ1bGVzPzogTGludGVyLlJ1bGVzUmVjb3JkO1xufVxuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIENvcmVQbHVnaW5OYW1lID0gXCJjb2RlcGVyZmVjdFwiIHwgXCJlc2xpbnRcIiB8IFwicmVzb2x2ZXJcIiB8IFwidHlwZXNjcmlwdFwiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIERvY3VtZW50YXRpb25QbHVnaW5OYW1lID0gXCJjb21tZW50c1wiIHwgXCJqc2RvY1wiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIERvbWFpblBsdWdpbk5hbWUgPSBcInJ4anMteFwiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIFBsdWdpbk5hbWUgPVxuICB8IEFyY2hpdGVjdHVyZVBsdWdpbk5hbWVcbiAgfCBDb3JlUGx1Z2luTmFtZVxuICB8IERvY3VtZW50YXRpb25QbHVnaW5OYW1lXG4gIHwgRG9tYWluUGx1Z2luTmFtZVxuICB8IFN0eWxlUGx1Z2luTmFtZVxuICB8IFRlc3RpbmdQbHVnaW5OYW1lO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIFN0eWxlUGx1Z2luTmFtZSA9IFwicGVyZmVjdGlvbmlzdFwiIHwgXCJwcmV0dGllclwiIHwgXCJzdHlsaXN0aWNcIiB8IFwidW5pY29yblwiO1xuXG4vKiogVHlwZSBkZWZpbml0aW9uIGZvciBydWxlIGRhdGEuICovXG50eXBlIFRlc3RpbmdQbHVnaW5OYW1lID0gXCJqYXNtaW5lXCIgfCBcImplc3RcIiB8IFwicGxheXdyaWdodFwiIHwgXCJ2aXRlc3RcIjtcblxuZXhwb3J0IHR5cGUgeyBCb3VuZGFyaWVzQ29uZmlnLCBDb25maWdPcHRpb25zLCBQbHVnaW5OYW1lIH07XG4iXX0=
|
package/dist/utilities.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../src/utilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAI1C,uDAAuD;AACvD,KAAK,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;AAExC;;;;;;;;;;GAUG;AACH,iBAAS,kBAAkB,CACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EACvB,aAAa,CAAC,EAAE,MAAM,CAAC,WAAW,EAClC,gBAAgB,GAAE,WAAW,CAAC,MAAM,CAAa,GAChD,MAAM,CAAC,MAAM,EAAE,CAcjB;AAED;;;;;;;;GAQG;AACH,iBAAS,uBAAuB,CAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GACvB,WAAW,CAAC,MAAM,CAAC,CAYrB;AA+BD;;;;;;;;;GASG;AACH,iBAAS,gBAAgB,CACvB,UAAU,EAAE,UAAU,EACtB,eAAe,CAAC,EAAE,SAAS,UAAU,EAAE,GACtC,OAAO,CAET;AAED;;;;;;;;;;GAUG;AACH,iBAAe,gBAAgB,CAC7B,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EACxD,IAAI,GAAE,QAAqB,GAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAY1B;AA4BD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,GACjB,CAAC;AAEF,YAAY,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/utilities.js
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { reportPluginLoadIssue, reportRuleOverrideSkip } from "./diagnostics";
|
|
2
|
-
/**
|
|
3
|
-
* Applies rule overrides to a configuration array.
|
|
4
|
-
* @param config Input config value.
|
|
5
|
-
* @param ruleOverrides Input ruleOverrides value.
|
|
6
|
-
* @param availablePlugins Input availablePlugins value.
|
|
7
|
-
* @returns Return value output.
|
|
8
|
-
* @example
|
|
9
|
-
* ```typescript
|
|
10
|
-
* applyRuleOverrides([], { "no-console": "off" });
|
|
11
|
-
* ```
|
|
12
|
-
*/
|
|
13
|
-
function applyRuleOverrides(config, ruleOverrides, availablePlugins = new Set()) {
|
|
14
|
-
const filteredRules = filterRuleOverrides(ruleOverrides, availablePlugins);
|
|
15
|
-
if (filteredRules === void 0) {
|
|
16
|
-
return config;
|
|
17
|
-
}
|
|
18
|
-
return [
|
|
19
|
-
...config,
|
|
20
|
-
{
|
|
21
|
-
name: "custom/rule-overrides",
|
|
22
|
-
rules: filteredRules,
|
|
23
|
-
},
|
|
24
|
-
];
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Collects plugin names from config entries.
|
|
28
|
-
* @param configs Input configs value.
|
|
29
|
-
* @returns Return value output.
|
|
30
|
-
* @example
|
|
31
|
-
* ```typescript
|
|
32
|
-
* collectAvailablePlugins();
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
function collectAvailablePlugins(configs) {
|
|
36
|
-
const plugins = new Set();
|
|
37
|
-
for (const config of configs) {
|
|
38
|
-
if (config.plugins !== void 0) {
|
|
39
|
-
for (const pluginName of Object.keys(config.plugins)) {
|
|
40
|
-
plugins.add(pluginName);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return plugins;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Filters rule overrides to those that can be applied.
|
|
48
|
-
* @param ruleOverrides Input ruleOverrides value.
|
|
49
|
-
* @param availablePlugins Input availablePlugins value.
|
|
50
|
-
* @returns Return value output.
|
|
51
|
-
* @example
|
|
52
|
-
* ```typescript
|
|
53
|
-
* filterRuleOverrides();
|
|
54
|
-
* ```
|
|
55
|
-
*/
|
|
56
|
-
function filterRuleOverrides(ruleOverrides, availablePlugins) {
|
|
57
|
-
if (ruleOverrides === void 0 || Object.keys(ruleOverrides).length === 0) {
|
|
58
|
-
return void 0;
|
|
59
|
-
}
|
|
60
|
-
const filteredRules = {};
|
|
61
|
-
for (const [ruleName, ruleValue] of Object.entries(ruleOverrides)) {
|
|
62
|
-
if (!shouldSkipRuleOverride(ruleName, availablePlugins)) {
|
|
63
|
-
filteredRules[ruleName] = ruleValue;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return Object.keys(filteredRules).length === 0 ? void 0 : filteredRules;
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Checks if a plugin is disabled in the options.
|
|
70
|
-
* @param pluginName Input pluginName value.
|
|
71
|
-
* @param disabledPlugins Input disabledPlugins value.
|
|
72
|
-
* @returns Return value output.
|
|
73
|
-
* @example
|
|
74
|
-
* ```typescript
|
|
75
|
-
* isPluginDisabled();
|
|
76
|
-
* ```
|
|
77
|
-
*/
|
|
78
|
-
function isPluginDisabled(pluginName, disabledPlugins) {
|
|
79
|
-
return disabledPlugins?.includes(pluginName) === true;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Loads a plugin config with a helpful, colorful error message on failure.
|
|
83
|
-
* @param pluginName Input pluginName value.
|
|
84
|
-
* @param loader Input loader value.
|
|
85
|
-
* @param mode Specifies whether loader failures are fatal or skippable.
|
|
86
|
-
* @returns Return value output.
|
|
87
|
-
* @example
|
|
88
|
-
* ```typescript
|
|
89
|
-
* loadPluginConfig();
|
|
90
|
-
* ```
|
|
91
|
-
*/
|
|
92
|
-
async function loadPluginConfig(pluginName, loader, mode = "optional") {
|
|
93
|
-
try {
|
|
94
|
-
return await loader();
|
|
95
|
-
}
|
|
96
|
-
catch (error) {
|
|
97
|
-
reportPluginLoadIssue(pluginName, error, mode);
|
|
98
|
-
if (mode === "required") {
|
|
99
|
-
throw error;
|
|
100
|
-
}
|
|
101
|
-
return [];
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Determines whether a rule override should be skipped.
|
|
106
|
-
* @param ruleName Input ruleName value.
|
|
107
|
-
* @param availablePlugins Input availablePlugins value.
|
|
108
|
-
* @returns Return value output.
|
|
109
|
-
* @example
|
|
110
|
-
* ```typescript
|
|
111
|
-
* shouldSkipRuleOverride();
|
|
112
|
-
* ```
|
|
113
|
-
*/
|
|
114
|
-
function shouldSkipRuleOverride(ruleName, availablePlugins) {
|
|
115
|
-
const [pluginName = ""] = ruleName.split("/");
|
|
116
|
-
const isPluginRule = ruleName.includes("/");
|
|
117
|
-
const hasPlugin = availablePlugins.has(pluginName);
|
|
118
|
-
if (isPluginRule && !hasPlugin) {
|
|
119
|
-
reportRuleOverrideSkip(ruleName, pluginName);
|
|
120
|
-
return true;
|
|
121
|
-
}
|
|
122
|
-
return false;
|
|
123
|
-
}
|
|
124
|
-
export { applyRuleOverrides, collectAvailablePlugins, isPluginDisabled, loadPluginConfig, };
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3V0aWxpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLOUU7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQVMsa0JBQWtCLENBQ3pCLE1BQXVCLEVBQ3ZCLGFBQWtDLEVBQ2xDLG1CQUF3QyxJQUFJLEdBQUcsRUFBRTtJQUVqRCxNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUUzRSxJQUFJLGFBQWEsS0FBSyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzdCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxPQUFPO1FBQ0wsR0FBRyxNQUFNO1FBQ1Q7WUFDRSxJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLEtBQUssRUFBRSxhQUFhO1NBQ0o7S0FDbkIsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILFNBQVMsdUJBQXVCLENBQzlCLE9BQXdCO0lBRXhCLE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFFbEMsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5QixLQUFLLE1BQU0sVUFBVSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ3JELE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsbUJBQW1CLENBQzFCLGFBQTZDLEVBQzdDLGdCQUFxQztJQUVyQyxJQUFJLGFBQWEsS0FBSyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN4RSxPQUFPLEtBQUssQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLGFBQWEsR0FBdUIsRUFBRSxDQUFDO0lBRTdDLEtBQUssTUFBTSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDeEQsYUFBYSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0FBQzFFLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFTLGdCQUFnQixDQUN2QixVQUFzQixFQUN0QixlQUF1QztJQUV2QyxPQUFPLGVBQWUsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssSUFBSSxDQUFDO0FBQ3hELENBQUM7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsS0FBSyxVQUFVLGdCQUFnQixDQUM3QixVQUFzQixFQUN0QixNQUF3RCxFQUN4RCxPQUFpQixVQUFVO0lBRTNCLElBQUksQ0FBQztRQUNILE9BQU8sTUFBTSxNQUFNLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLHFCQUFxQixDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFL0MsSUFBSSxJQUFJLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDeEIsTUFBTSxLQUFLLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQVMsc0JBQXNCLENBQzdCLFFBQWdCLEVBQ2hCLGdCQUFxQztJQUVyQyxNQUFNLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM1QyxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFbkQsSUFBSSxZQUFZLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMvQixzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsT0FBTyxFQUNMLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixHQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMaW50ZXIgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmltcG9ydCB0eXBlIHsgUGx1Z2luTmFtZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmltcG9ydCB7IHJlcG9ydFBsdWdpbkxvYWRJc3N1ZSwgcmVwb3J0UnVsZU92ZXJyaWRlU2tpcCB9IGZyb20gXCIuL2RpYWdub3N0aWNzXCI7XG5cbi8qKiBSdW50aW1lIGxvYWRpbmcgbW9kZXMgZm9yIHBsdWdpbiBjb25maWcgbG9hZGVycy4gKi9cbnR5cGUgTG9hZE1vZGUgPSBcIm9wdGlvbmFsXCIgfCBcInJlcXVpcmVkXCI7XG5cbi8qKlxuICogQXBwbGllcyBydWxlIG92ZXJyaWRlcyB0byBhIGNvbmZpZ3VyYXRpb24gYXJyYXkuXG4gKiBAcGFyYW0gY29uZmlnIElucHV0IGNvbmZpZyB2YWx1ZS5cbiAqIEBwYXJhbSBydWxlT3ZlcnJpZGVzIElucHV0IHJ1bGVPdmVycmlkZXMgdmFsdWUuXG4gKiBAcGFyYW0gYXZhaWxhYmxlUGx1Z2lucyBJbnB1dCBhdmFpbGFibGVQbHVnaW5zIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBhcHBseVJ1bGVPdmVycmlkZXMoW10sIHsgXCJuby1jb25zb2xlXCI6IFwib2ZmXCIgfSk7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gYXBwbHlSdWxlT3ZlcnJpZGVzKFxuICBjb25maWc6IExpbnRlci5Db25maWdbXSxcbiAgcnVsZU92ZXJyaWRlcz86IExpbnRlci5SdWxlc1JlY29yZCxcbiAgYXZhaWxhYmxlUGx1Z2luczogUmVhZG9ubHlTZXQ8c3RyaW5nPiA9IG5ldyBTZXQoKSxcbik6IExpbnRlci5Db25maWdbXSB7XG4gIGNvbnN0IGZpbHRlcmVkUnVsZXMgPSBmaWx0ZXJSdWxlT3ZlcnJpZGVzKHJ1bGVPdmVycmlkZXMsIGF2YWlsYWJsZVBsdWdpbnMpO1xuXG4gIGlmIChmaWx0ZXJlZFJ1bGVzID09PSB2b2lkIDApIHtcbiAgICByZXR1cm4gY29uZmlnO1xuICB9XG5cbiAgcmV0dXJuIFtcbiAgICAuLi5jb25maWcsXG4gICAge1xuICAgICAgbmFtZTogXCJjdXN0b20vcnVsZS1vdmVycmlkZXNcIixcbiAgICAgIHJ1bGVzOiBmaWx0ZXJlZFJ1bGVzLFxuICAgIH0gYXMgTGludGVyLkNvbmZpZyxcbiAgXTtcbn1cblxuLyoqXG4gKiBDb2xsZWN0cyBwbHVnaW4gbmFtZXMgZnJvbSBjb25maWcgZW50cmllcy5cbiAqIEBwYXJhbSBjb25maWdzIElucHV0IGNvbmZpZ3MgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbGxlY3RBdmFpbGFibGVQbHVnaW5zKCk7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gY29sbGVjdEF2YWlsYWJsZVBsdWdpbnMoXG4gIGNvbmZpZ3M6IExpbnRlci5Db25maWdbXSxcbik6IFJlYWRvbmx5U2V0PHN0cmluZz4ge1xuICBjb25zdCBwbHVnaW5zID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgZm9yIChjb25zdCBjb25maWcgb2YgY29uZmlncykge1xuICAgIGlmIChjb25maWcucGx1Z2lucyAhPT0gdm9pZCAwKSB7XG4gICAgICBmb3IgKGNvbnN0IHBsdWdpbk5hbWUgb2YgT2JqZWN0LmtleXMoY29uZmlnLnBsdWdpbnMpKSB7XG4gICAgICAgIHBsdWdpbnMuYWRkKHBsdWdpbk5hbWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBwbHVnaW5zO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgcnVsZSBvdmVycmlkZXMgdG8gdGhvc2UgdGhhdCBjYW4gYmUgYXBwbGllZC5cbiAqIEBwYXJhbSBydWxlT3ZlcnJpZGVzIElucHV0IHJ1bGVPdmVycmlkZXMgdmFsdWUuXG4gKiBAcGFyYW0gYXZhaWxhYmxlUGx1Z2lucyBJbnB1dCBhdmFpbGFibGVQbHVnaW5zIHZhbHVlLlxuICogQHJldHVybnMgUmV0dXJuIHZhbHVlIG91dHB1dC5cbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBmaWx0ZXJSdWxlT3ZlcnJpZGVzKCk7XG4gKiBgYGBcbiAqL1xuZnVuY3Rpb24gZmlsdGVyUnVsZU92ZXJyaWRlcyhcbiAgcnVsZU92ZXJyaWRlczogTGludGVyLlJ1bGVzUmVjb3JkIHwgdW5kZWZpbmVkLFxuICBhdmFpbGFibGVQbHVnaW5zOiBSZWFkb25seVNldDxzdHJpbmc+LFxuKTogTGludGVyLlJ1bGVzUmVjb3JkIHwgdW5kZWZpbmVkIHtcbiAgaWYgKHJ1bGVPdmVycmlkZXMgPT09IHZvaWQgMCB8fCBPYmplY3Qua2V5cyhydWxlT3ZlcnJpZGVzKS5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdm9pZCAwO1xuICB9XG5cbiAgY29uc3QgZmlsdGVyZWRSdWxlczogTGludGVyLlJ1bGVzUmVjb3JkID0ge307XG5cbiAgZm9yIChjb25zdCBbcnVsZU5hbWUsIHJ1bGVWYWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocnVsZU92ZXJyaWRlcykpIHtcbiAgICBpZiAoIXNob3VsZFNraXBSdWxlT3ZlcnJpZGUocnVsZU5hbWUsIGF2YWlsYWJsZVBsdWdpbnMpKSB7XG4gICAgICBmaWx0ZXJlZFJ1bGVzW3J1bGVOYW1lXSA9IHJ1bGVWYWx1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gT2JqZWN0LmtleXMoZmlsdGVyZWRSdWxlcykubGVuZ3RoID09PSAwID8gdm9pZCAwIDogZmlsdGVyZWRSdWxlcztcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBwbHVnaW4gaXMgZGlzYWJsZWQgaW4gdGhlIG9wdGlvbnMuXG4gKiBAcGFyYW0gcGx1Z2luTmFtZSBJbnB1dCBwbHVnaW5OYW1lIHZhbHVlLlxuICogQHBhcmFtIGRpc2FibGVkUGx1Z2lucyBJbnB1dCBkaXNhYmxlZFBsdWdpbnMgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXR1cm4gdmFsdWUgb3V0cHV0LlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGlzUGx1Z2luRGlzYWJsZWQoKTtcbiAqIGBgYFxuICovXG5mdW5jdGlvbiBpc1BsdWdpbkRpc2FibGVkKFxuICBwbHVnaW5OYW1lOiBQbHVnaW5OYW1lLFxuICBkaXNhYmxlZFBsdWdpbnM/OiByZWFkb25seSBQbHVnaW5OYW1lW10sXG4pOiBib29sZWFuIHtcbiAgcmV0dXJuIGRpc2FibGVkUGx1Z2lucz8uaW5jbHVkZXMocGx1Z2luTmFtZSkgPT09IHRydWU7XG59XG5cbi8qKlxuICogTG9hZHMgYSBwbHVnaW4gY29uZmlnIHdpdGggYSBoZWxwZnVsLCBjb2xvcmZ1bCBlcnJvciBtZXNzYWdlIG9uIGZhaWx1cmUuXG4gKiBAcGFyYW0gcGx1Z2luTmFtZSBJbnB1dCBwbHVnaW5OYW1lIHZhbHVlLlxuICogQHBhcmFtIGxvYWRlciBJbnB1dCBsb2FkZXIgdmFsdWUuXG4gKiBAcGFyYW0gbW9kZSBTcGVjaWZpZXMgd2hldGhlciBsb2FkZXIgZmFpbHVyZXMgYXJlIGZhdGFsIG9yIHNraXBwYWJsZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogbG9hZFBsdWdpbkNvbmZpZygpO1xuICogYGBgXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGxvYWRQbHVnaW5Db25maWcoXG4gIHBsdWdpbk5hbWU6IFBsdWdpbk5hbWUsXG4gIGxvYWRlcjogKCkgPT4gTGludGVyLkNvbmZpZ1tdIHwgUHJvbWlzZTxMaW50ZXIuQ29uZmlnW10+LFxuICBtb2RlOiBMb2FkTW9kZSA9IFwib3B0aW9uYWxcIixcbik6IFByb21pc2U8TGludGVyLkNvbmZpZ1tdPiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGxvYWRlcigpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHJlcG9ydFBsdWdpbkxvYWRJc3N1ZShwbHVnaW5OYW1lLCBlcnJvciwgbW9kZSk7XG5cbiAgICBpZiAobW9kZSA9PT0gXCJyZXF1aXJlZFwiKSB7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9XG5cbiAgICByZXR1cm4gW107XG4gIH1cbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBydWxlIG92ZXJyaWRlIHNob3VsZCBiZSBza2lwcGVkLlxuICogQHBhcmFtIHJ1bGVOYW1lIElucHV0IHJ1bGVOYW1lIHZhbHVlLlxuICogQHBhcmFtIGF2YWlsYWJsZVBsdWdpbnMgSW5wdXQgYXZhaWxhYmxlUGx1Z2lucyB2YWx1ZS5cbiAqIEByZXR1cm5zIFJldHVybiB2YWx1ZSBvdXRwdXQuXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogc2hvdWxkU2tpcFJ1bGVPdmVycmlkZSgpO1xuICogYGBgXG4gKi9cbmZ1bmN0aW9uIHNob3VsZFNraXBSdWxlT3ZlcnJpZGUoXG4gIHJ1bGVOYW1lOiBzdHJpbmcsXG4gIGF2YWlsYWJsZVBsdWdpbnM6IFJlYWRvbmx5U2V0PHN0cmluZz4sXG4pOiBib29sZWFuIHtcbiAgY29uc3QgW3BsdWdpbk5hbWUgPSBcIlwiXSA9IHJ1bGVOYW1lLnNwbGl0KFwiL1wiKTtcbiAgY29uc3QgaXNQbHVnaW5SdWxlID0gcnVsZU5hbWUuaW5jbHVkZXMoXCIvXCIpO1xuICBjb25zdCBoYXNQbHVnaW4gPSBhdmFpbGFibGVQbHVnaW5zLmhhcyhwbHVnaW5OYW1lKTtcblxuICBpZiAoaXNQbHVnaW5SdWxlICYmICFoYXNQbHVnaW4pIHtcbiAgICByZXBvcnRSdWxlT3ZlcnJpZGVTa2lwKHJ1bGVOYW1lLCBwbHVnaW5OYW1lKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cblxuZXhwb3J0IHtcbiAgYXBwbHlSdWxlT3ZlcnJpZGVzLFxuICBjb2xsZWN0QXZhaWxhYmxlUGx1Z2lucyxcbiAgaXNQbHVnaW5EaXNhYmxlZCxcbiAgbG9hZFBsdWdpbkNvbmZpZyxcbn07XG5cbmV4cG9ydCB0eXBlIHsgTG9hZE1vZGUgfTtcbiJdfQ==
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|