@fenge/eslint-config 0.5.13 → 0.6.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/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @fenge/eslint-config
2
2
 
3
+ ## 0.6.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 28d8553: chore: required node ^18.20.0 or >=20.10.0
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [28d8553]
12
+ - eslint-plugin-pkg-json@0.3.0
13
+ - eslint-plugin-publint@0.2.0
14
+ - eslint-plugin-esm@0.8.0
15
+ - @fenge/eslint-plugin-ts@0.4.0
16
+ - @fenge/eslint-plugin@0.4.0
17
+
3
18
  ## 0.5.13
4
19
 
5
20
  ### Patch Changes
@@ -1,4 +1,4 @@
1
1
  import type { Linter } from "eslint";
2
2
  export type BaseOptions = Linter.LinterOptions;
3
- export declare function base(options?: BaseOptions, enabled?: ("js" | "ts" | "pkg")[]): Linter.Config[];
3
+ export declare function base(options: BaseOptions, enabled: Set<"js" | "ts" | "pkg">): Linter.Config[];
4
4
  //# sourceMappingURL=base.d.ts.map
@@ -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;AAErC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC;AAE/C,wBAAgB,IAAI,CAClB,OAAO,GAAE,WAAgB,EACzB,OAAO,GAAE,CAAC,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,EAAO,GACpC,MAAM,CAAC,MAAM,EAAE,CA+CjB"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/config/base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,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,CA+CjB"}
@@ -1,11 +1,11 @@
1
1
  import childProcess from "node:child_process";
2
- export function base(options = {}, enabled = []) {
2
+ export function base(options, enabled) {
3
3
  const filesMap = {
4
4
  js: "**/*.{js,cjs,mjs,jsx}",
5
5
  ts: "**/*.{ts,cts,mts,tsx}",
6
6
  pkg: "package.json",
7
7
  };
8
- const files = enabled.map((key) => filesMap[key]);
8
+ const files = [...enabled].map((key) => filesMap[key]);
9
9
  return [
10
10
  // Global ignore. Refer: https://eslint.org/docs/latest/use/configure/configuration-files#specifying-files-and-ignores.
11
11
  {
@@ -41,4 +41,4 @@ export function base(options = {}, enabled = []) {
41
41
  },
42
42
  ];
43
43
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSxvQkFBb0IsQ0FBQztBQUs5QyxNQUFNLFVBQVUsSUFBSSxDQUNsQixVQUF1QixFQUFFLEVBQ3pCLFVBQW1DLEVBQUU7SUFFckMsTUFBTSxRQUFRLEdBQUc7UUFDZixFQUFFLEVBQUUsdUJBQXVCO1FBQzNCLEVBQUUsRUFBRSx1QkFBdUI7UUFDM0IsR0FBRyxFQUFFLGNBQWM7S0FDWCxDQUFDO0lBQ1gsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbEQsT0FBTztRQUNMLHVIQUF1SDtRQUN2SDtZQUNFLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsOERBQThEO1lBQzlELHNEQUFzRDtZQUN0RCx3R0FBd0c7WUFDeEcsT0FBTyxFQUFFLENBQ1AsWUFBWSxDQUFDLFNBQVMsQ0FDcEIsS0FBSyxFQUNMO2dCQUNFLFVBQVU7Z0JBQ1YsVUFBVTtnQkFDVixXQUFXO2dCQUNYLG9CQUFvQjtnQkFDcEIsYUFBYTthQUNkLEVBQ0QsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQ3JCLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FDZjtpQkFDRSxLQUFLLENBQUMsSUFBSSxDQUFDO2lCQUNYLE1BQU0sQ0FBQyxPQUFPLENBQUM7U0FDbkI7UUFDRDtZQUNFLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUs7WUFDTCxhQUFhLEVBQUUsT0FBTztTQUN2QjtRQUNELDRCQUE0QjtRQUM1Qix3R0FBd0c7UUFDeEc7WUFDRSxJQUFJLEVBQUUsY0FBYztZQUNwQixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxtQ0FBbUM7WUFDbEQsT0FBTyxFQUFFLEtBQUs7WUFDZCxTQUFTLEVBQUU7Z0JBQ1QsVUFBVSxFQUFFLENBQUMsS0FBYSxFQUFFLFNBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN0RCxXQUFXLEVBQUUsQ0FBQyxTQUFzQixFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsNkNBQTZDO2FBQzNGO1NBQ0Y7S0FDTyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBjaGlsZFByb2Nlc3MgZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHR5cGUgeyBMaW50ZXIgfSBmcm9tIFwiZXNsaW50XCI7XG5cbmV4cG9ydCB0eXBlIEJhc2VPcHRpb25zID0gTGludGVyLkxpbnRlck9wdGlvbnM7XG5cbmV4cG9ydCBmdW5jdGlvbiBiYXNlKFxuICBvcHRpb25zOiBCYXNlT3B0aW9ucyA9IHt9LFxuICBlbmFibGVkOiAoXCJqc1wiIHwgXCJ0c1wiIHwgXCJwa2dcIilbXSA9IFtdLFxuKTogTGludGVyLkNvbmZpZ1tdIHtcbiAgY29uc3QgZmlsZXNNYXAgPSB7XG4gICAganM6IFwiKiovKi57anMsY2pzLG1qcyxqc3h9XCIsXG4gICAgdHM6IFwiKiovKi57dHMsY3RzLG10cyx0c3h9XCIsXG4gICAgcGtnOiBcInBhY2thZ2UuanNvblwiLFxuICB9IGFzIGNvbnN0O1xuICBjb25zdCBmaWxlcyA9IGVuYWJsZWQubWFwKChrZXkpID0+IGZpbGVzTWFwW2tleV0pO1xuICByZXR1cm4gW1xuICAgIC8vIEdsb2JhbCBpZ25vcmUuIFJlZmVyOiBodHRwczovL2VzbGludC5vcmcvZG9jcy9sYXRlc3QvdXNlL2NvbmZpZ3VyZS9jb25maWd1cmF0aW9uLWZpbGVzI3NwZWNpZnlpbmctZmlsZXMtYW5kLWlnbm9yZXMuXG4gICAge1xuICAgICAgbmFtZTogXCJmZW5nZS9naXRpZ25vcmVcIixcbiAgICAgIC8vIFRoZXJlIGFyZSAyIGtpbmRzIG9mIGV4Y2VwdGlvbiB3aGVuIHJ1bm5pbmcgYGdpdCBscy1maWxlc2A6XG4gICAgICAvLyAxLiBHaXQgaXMgbm90IGluc3RhbGxlZC4gVGhlIGBzdGRvdXRgIHdpbGwgYmUgbnVsbC5cbiAgICAgIC8vIDIuIFRoZSBydW5uaW5nIGRpcmVjdG9yeSBpcyBub3QgaW5pdGlhbGl6ZWQgYnkgYGdpdCBpbml0YCBjb21tYW5kLiBUaGUgYHN0ZG91dGAgd2lsbCBhbiBlbXB0eSBzdHJpbmcuXG4gICAgICBpZ25vcmVzOiAoXG4gICAgICAgIGNoaWxkUHJvY2Vzcy5zcGF3blN5bmMoXG4gICAgICAgICAgXCJnaXRcIixcbiAgICAgICAgICBbXG4gICAgICAgICAgICBcImxzLWZpbGVzXCIsXG4gICAgICAgICAgICBcIi0tb3RoZXJzXCIsXG4gICAgICAgICAgICBcIi0taWdub3JlZFwiLFxuICAgICAgICAgICAgXCItLWV4Y2x1ZGUtc3RhbmRhcmRcIixcbiAgICAgICAgICAgIFwiLS1kaXJlY3RvcnlcIixcbiAgICAgICAgICBdLFxuICAgICAgICAgIHsgZW5jb2Rpbmc6IFwidXRmOFwiIH0sXG4gICAgICAgICkuc3Rkb3V0IHx8IFwiXCJcbiAgICAgIClcbiAgICAgICAgLnNwbGl0KFwiXFxuXCIpXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbiksXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiBcImZlbmdlL2NvbW1vblwiLFxuICAgICAgZmlsZXMsXG4gICAgICBsaW50ZXJPcHRpb25zOiBvcHRpb25zLFxuICAgIH0sXG4gICAgLy8gSWdub3JlIHVuc3VwcG9ydGVkIGZpbGVzLlxuICAgIC8vIFRoaXMgY29uZmlnIGlzIGZvciBzdXBwcmVzc2luZyBlcnJvciB3aGVuIGxpbnRpbmcgYSBkaXJlY3Rvcnkgd2hpY2ggZG9lcyBub3QgY29udGFpbiBzdXBwb3J0ZWQgZmlsZXMuXG4gICAge1xuICAgICAgbmFtZTogXCJmZW5nZS9pZ25vcmVcIixcbiAgICAgIGZpbGVzOiBbXCIqKlwiXSwgLy8gSSd2ZSB0cmllZCBhbGwuIE9ubHkgJyoqJyB3b3Jrcy5cbiAgICAgIGlnbm9yZXM6IGZpbGVzLFxuICAgICAgcHJvY2Vzc29yOiB7XG4gICAgICAgIHByZXByb2Nlc3M6IChfdGV4dDogc3RyaW5nLCBfZmlsZW5hbWU6IHN0cmluZykgPT4gW1wiXCJdLFxuICAgICAgICBwb3N0cHJvY2VzczogKF9tZXNzYWdlczogdW5rbm93bltdW10pID0+IFtdLCAvLyBSZXR1cm5pbmcgZW1wdHkgYXJyYXkgdG8gaWdub3JlIGFsbCBlcnJvcnNcbiAgICAgIH0sXG4gICAgfSxcbiAgXSBhcyBjb25zdDtcbn1cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFlBQVksTUFBTSxvQkFBb0IsQ0FBQztBQUs5QyxNQUFNLFVBQVUsSUFBSSxDQUNsQixPQUFvQixFQUNwQixPQUFpQztJQUVqQyxNQUFNLFFBQVEsR0FBRztRQUNmLEVBQUUsRUFBRSx1QkFBdUI7UUFDM0IsRUFBRSxFQUFFLHVCQUF1QjtRQUMzQixHQUFHLEVBQUUsY0FBYztLQUNYLENBQUM7SUFDWCxNQUFNLEtBQUssR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2RCxPQUFPO1FBQ0wsdUhBQXVIO1FBQ3ZIO1lBQ0UsSUFBSSxFQUFFLGlCQUFpQjtZQUN2Qiw4REFBOEQ7WUFDOUQsc0RBQXNEO1lBQ3RELHdHQUF3RztZQUN4RyxPQUFPLEVBQUUsQ0FDUCxZQUFZLENBQUMsU0FBUyxDQUNwQixLQUFLLEVBQ0w7Z0JBQ0UsVUFBVTtnQkFDVixVQUFVO2dCQUNWLFdBQVc7Z0JBQ1gsb0JBQW9CO2dCQUNwQixhQUFhO2FBQ2QsRUFDRCxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FDckIsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUNmO2lCQUNFLEtBQUssQ0FBQyxJQUFJLENBQUM7aUJBQ1gsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNuQjtRQUNEO1lBQ0UsSUFBSSxFQUFFLGNBQWM7WUFDcEIsS0FBSztZQUNMLGFBQWEsRUFBRSxPQUFPO1NBQ3ZCO1FBQ0QsNEJBQTRCO1FBQzVCLHdHQUF3RztRQUN4RztZQUNFLElBQUksRUFBRSxjQUFjO1lBQ3BCLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLG1DQUFtQztZQUNsRCxPQUFPLEVBQUUsS0FBSztZQUNkLFNBQVMsRUFBRTtnQkFDVCxVQUFVLEVBQUUsQ0FBQyxLQUFhLEVBQUUsU0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RELFdBQVcsRUFBRSxDQUFDLFNBQXNCLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSw2Q0FBNkM7YUFDM0Y7U0FDRjtLQUNPLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNoaWxkUHJvY2VzcyBmcm9tIFwibm9kZTpjaGlsZF9wcm9jZXNzXCI7XG5pbXBvcnQgdHlwZSB7IExpbnRlciB9IGZyb20gXCJlc2xpbnRcIjtcblxuZXhwb3J0IHR5cGUgQmFzZU9wdGlvbnMgPSBMaW50ZXIuTGludGVyT3B0aW9ucztcblxuZXhwb3J0IGZ1bmN0aW9uIGJhc2UoXG4gIG9wdGlvbnM6IEJhc2VPcHRpb25zLFxuICBlbmFibGVkOiBTZXQ8XCJqc1wiIHwgXCJ0c1wiIHwgXCJwa2dcIj4sXG4pOiBMaW50ZXIuQ29uZmlnW10ge1xuICBjb25zdCBmaWxlc01hcCA9IHtcbiAgICBqczogXCIqKi8qLntqcyxjanMsbWpzLGpzeH1cIixcbiAgICB0czogXCIqKi8qLnt0cyxjdHMsbXRzLHRzeH1cIixcbiAgICBwa2c6IFwicGFja2FnZS5qc29uXCIsXG4gIH0gYXMgY29uc3Q7XG4gIGNvbnN0IGZpbGVzID0gWy4uLmVuYWJsZWRdLm1hcCgoa2V5KSA9PiBmaWxlc01hcFtrZXldKTtcbiAgcmV0dXJuIFtcbiAgICAvLyBHbG9iYWwgaWdub3JlLiBSZWZlcjogaHR0cHM6Ly9lc2xpbnQub3JnL2RvY3MvbGF0ZXN0L3VzZS9jb25maWd1cmUvY29uZmlndXJhdGlvbi1maWxlcyNzcGVjaWZ5aW5nLWZpbGVzLWFuZC1pZ25vcmVzLlxuICAgIHtcbiAgICAgIG5hbWU6IFwiZmVuZ2UvZ2l0aWdub3JlXCIsXG4gICAgICAvLyBUaGVyZSBhcmUgMiBraW5kcyBvZiBleGNlcHRpb24gd2hlbiBydW5uaW5nIGBnaXQgbHMtZmlsZXNgOlxuICAgICAgLy8gMS4gR2l0IGlzIG5vdCBpbnN0YWxsZWQuIFRoZSBgc3Rkb3V0YCB3aWxsIGJlIG51bGwuXG4gICAgICAvLyAyLiBUaGUgcnVubmluZyBkaXJlY3RvcnkgaXMgbm90IGluaXRpYWxpemVkIGJ5IGBnaXQgaW5pdGAgY29tbWFuZC4gVGhlIGBzdGRvdXRgIHdpbGwgYW4gZW1wdHkgc3RyaW5nLlxuICAgICAgaWdub3JlczogKFxuICAgICAgICBjaGlsZFByb2Nlc3Muc3Bhd25TeW5jKFxuICAgICAgICAgIFwiZ2l0XCIsXG4gICAgICAgICAgW1xuICAgICAgICAgICAgXCJscy1maWxlc1wiLFxuICAgICAgICAgICAgXCItLW90aGVyc1wiLFxuICAgICAgICAgICAgXCItLWlnbm9yZWRcIixcbiAgICAgICAgICAgIFwiLS1leGNsdWRlLXN0YW5kYXJkXCIsXG4gICAgICAgICAgICBcIi0tZGlyZWN0b3J5XCIsXG4gICAgICAgICAgXSxcbiAgICAgICAgICB7IGVuY29kaW5nOiBcInV0ZjhcIiB9LFxuICAgICAgICApLnN0ZG91dCB8fCBcIlwiXG4gICAgICApXG4gICAgICAgIC5zcGxpdChcIlxcblwiKVxuICAgICAgICAuZmlsdGVyKEJvb2xlYW4pLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogXCJmZW5nZS9jb21tb25cIixcbiAgICAgIGZpbGVzLFxuICAgICAgbGludGVyT3B0aW9uczogb3B0aW9ucyxcbiAgICB9LFxuICAgIC8vIElnbm9yZSB1bnN1cHBvcnRlZCBmaWxlcy5cbiAgICAvLyBUaGlzIGNvbmZpZyBpcyBmb3Igc3VwcHJlc3NpbmcgZXJyb3Igd2hlbiBsaW50aW5nIGEgZGlyZWN0b3J5IHdoaWNoIGRvZXMgbm90IGNvbnRhaW4gc3VwcG9ydGVkIGZpbGVzLlxuICAgIHtcbiAgICAgIG5hbWU6IFwiZmVuZ2UvaWdub3JlXCIsXG4gICAgICBmaWxlczogW1wiKipcIl0sIC8vIEkndmUgdHJpZWQgYWxsLiBPbmx5ICcqKicgd29ya3MuXG4gICAgICBpZ25vcmVzOiBmaWxlcyxcbiAgICAgIHByb2Nlc3Nvcjoge1xuICAgICAgICBwcmVwcm9jZXNzOiAoX3RleHQ6IHN0cmluZywgX2ZpbGVuYW1lOiBzdHJpbmcpID0+IFtcIlwiXSxcbiAgICAgICAgcG9zdHByb2Nlc3M6IChfbWVzc2FnZXM6IHVua25vd25bXVtdKSA9PiBbXSwgLy8gUmV0dXJuaW5nIGVtcHR5IGFycmF5IHRvIGlnbm9yZSBhbGwgZXJyb3JzXG4gICAgICB9LFxuICAgIH0sXG4gIF0gYXMgY29uc3Q7XG59XG4iXX0=
@@ -10,7 +10,7 @@ export class Builder {
10
10
  this.options = options;
11
11
  }
12
12
  toConfig() {
13
- return [...base(this.options, [...this.enabled]), ...this.configs];
13
+ return [...base(this.options, this.enabled), ...this.configs];
14
14
  }
15
15
  setup(configItems, { pick, omit }) {
16
16
  const select = (ruleKey) => {
@@ -56,4 +56,4 @@ export default new Builder()
56
56
  .enableJavaScript()
57
57
  .enableTypeScript()
58
58
  .toConfig();
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNsaW50LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lc2xpbnQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQW9CLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUE2QnBELE1BQU0sT0FBTyxPQUFPO0lBQ0QsT0FBTyxHQUFvQixFQUFFLENBQUM7SUFDOUIsT0FBTyxDQUFpQjtJQUV4QixPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7SUFFMUQsWUFBWSxVQUEwQixFQUFFO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxLQUFLLENBQ1gsV0FBeUMsRUFDekMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFxQjtRQUVqQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO2lCQUFNLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNoQyxDQUFDO2lCQUFNLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDM0QsQ0FBQztRQUNILENBQUMsQ0FBQztRQUNGLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUMsR0FBRyxVQUFVO1lBQ2IsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUN4RTtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQkFBZ0IsQ0FBd0IsVUFBc0IsRUFBRTtRQUM5RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGdCQUFnQixDQUF3QixVQUFzQixFQUFFO1FBQzlELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsaUJBQWlCLENBQXlCLFVBQXNCLEVBQUU7UUFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBa0I7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0Y7QUFFRCxlQUFlLElBQUksT0FBTyxFQUFFO0tBQ3pCLGlCQUFpQixFQUFFO0tBQ25CLGdCQUFnQixFQUFFO0tBQ2xCLGdCQUFnQixFQUFFO0tBQ2xCLFFBQVEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMaW50ZXIgfSBmcm9tIFwiZXNsaW50XCI7XG5pbXBvcnQgeyBiYXNlLCB0eXBlIEJhc2VPcHRpb25zIH0gZnJvbSBcIi4vY29uZmlnL2Jhc2UudHNcIjtcbmltcG9ydCB7IGphdmFzY3JpcHQgfSBmcm9tIFwiLi9jb25maWcvamF2YXNjcmlwdC50c1wiO1xuaW1wb3J0IHsgcGFja2FnZWpzb24gfSBmcm9tIFwiLi9jb25maWcvcGFja2FnZWpzb24udHNcIjtcbmltcG9ydCB7IHR5cGVzY3JpcHQgfSBmcm9tIFwiLi9jb25maWcvdHlwZXNjcmlwdC50c1wiO1xuXG50eXBlIE5vRHVwbGljYXRlPEEgZXh0ZW5kcyB1bmtub3duW10+ID0ge1xuICBbSSBpbiBrZXlvZiBBXTogdHJ1ZSBleHRlbmRzIHtcbiAgICBbSiBpbiBrZXlvZiBBXTogSiBleHRlbmRzIEkgPyBmYWxzZSA6IEFbSl0gZXh0ZW5kcyBBW0ldID8gdHJ1ZSA6IGZhbHNlO1xuICB9W251bWJlcl1cbiAgICA/IG5ldmVyXG4gICAgOiBBW0ldO1xufTtcblxudHlwZSBKc1J1bGVLZXkgPSBrZXlvZiBSZXR1cm5UeXBlPHR5cGVvZiBqYXZhc2NyaXB0PlswXVtcInJ1bGVzXCJdO1xudHlwZSBUc1J1bGVLZXkgPSBrZXlvZiBSZXR1cm5UeXBlPHR5cGVvZiB0eXBlc2NyaXB0PlswXVtcInJ1bGVzXCJdO1xudHlwZSBQa2dSdWxlS2V5ID0ga2V5b2YgUmV0dXJuVHlwZTx0eXBlb2YgcGFja2FnZWpzb24+WzBdW1wicnVsZXNcIl07XG5cbnR5cGUgUnVsZVZhbHVlID0gXCJlcnJvclwiIHwgXCJ3YXJuXCIgfCBcIm9mZlwiIHwgW1wiZXJyb3JcIiB8IFwid2FyblwiLCAuLi51bmtub3duW11dO1xuaW50ZXJmYWNlIE9wdGlvbnM8VCBleHRlbmRzIHN0cmluZ1tdPiB7XG4gIHBpY2s/OiBOb0R1cGxpY2F0ZTxUPjtcbiAgb21pdD86IE5vRHVwbGljYXRlPFQ+O1xufVxuaW50ZXJmYWNlIENvbmZpZ0l0ZW0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGZpbGVzOiBzdHJpbmdbXTtcbiAgcGx1Z2lucz86IFJlY29yZDxzdHJpbmcsIG9iamVjdD47XG4gIHJ1bGVzOlxuICAgIHwgUGFydGlhbDxSZWNvcmQ8UGtnUnVsZUtleSB8IEpzUnVsZUtleSB8IFRzUnVsZUtleSwgUnVsZVZhbHVlPj5cbiAgICB8IFJlY29yZDxzdHJpbmcsIFJ1bGVWYWx1ZT47XG59XG5cbmV4cG9ydCB0eXBlIEJ1aWxkZXJPcHRpb25zID0gQmFzZU9wdGlvbnM7XG5leHBvcnQgY2xhc3MgQnVpbGRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnczogTGludGVyLkNvbmZpZ1tdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQnVpbGRlck9wdGlvbnM7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbmFibGVkID0gbmV3IFNldDxcImpzXCIgfCBcInRzXCIgfCBcInBrZ1wiPigpO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEJ1aWxkZXJPcHRpb25zID0ge30pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgdG9Db25maWcoKSB7XG4gICAgcmV0dXJuIFsuLi5iYXNlKHRoaXMub3B0aW9ucywgWy4uLnRoaXMuZW5hYmxlZF0pLCAuLi50aGlzLmNvbmZpZ3NdO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cChcbiAgICBjb25maWdJdGVtczogcmVhZG9ubHkgeyBydWxlczogb2JqZWN0IH1bXSxcbiAgICB7IHBpY2ssIG9taXQgfTogT3B0aW9uczxzdHJpbmdbXT4sXG4gICkge1xuICAgIGNvbnN0IHNlbGVjdCA9IChydWxlS2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmICghcGljayAmJiAhb21pdCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAocGljayAmJiAhb21pdCkge1xuICAgICAgICByZXR1cm4gcGljay5pbmNsdWRlcyhydWxlS2V5KTtcbiAgICAgIH0gZWxzZSBpZiAoIXBpY2sgJiYgb21pdCkge1xuICAgICAgICByZXR1cm4gIW9taXQuaW5jbHVkZXMocnVsZUtleSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJZb3UgY2Fubm90IHNwZWNpZnkgYm90aCBwaWNrIGFuZCBvbWl0XCIpO1xuICAgICAgfVxuICAgIH07XG4gICAgY29uc3QgcmVzdWx0ID0gY29uZmlnSXRlbXMubWFwKChjb25maWdJdGVtKSA9PiAoe1xuICAgICAgLi4uY29uZmlnSXRlbSxcbiAgICAgIHJ1bGVzOiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICAgIE9iamVjdC5lbnRyaWVzKGNvbmZpZ0l0ZW0ucnVsZXMpLmZpbHRlcigoW3J1bGVLZXldKSA9PiBzZWxlY3QocnVsZUtleSkpLFxuICAgICAgKSxcbiAgICB9KSk7XG4gICAgdGhpcy5jb25maWdzLnB1c2goLi4ucmVzdWx0KTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZW5hYmxlVHlwZVNjcmlwdDxUIGV4dGVuZHMgVHNSdWxlS2V5W10+KG9wdGlvbnM6IE9wdGlvbnM8VD4gPSB7fSkge1xuICAgIHRoaXMuZW5hYmxlZC5hZGQoXCJ0c1wiKTtcbiAgICByZXR1cm4gdGhpcy5zZXR1cCh0eXBlc2NyaXB0KCksIG9wdGlvbnMpO1xuICB9XG5cbiAgZW5hYmxlSmF2YVNjcmlwdDxUIGV4dGVuZHMgSnNSdWxlS2V5W10+KG9wdGlvbnM6IE9wdGlvbnM8VD4gPSB7fSkge1xuICAgIHRoaXMuZW5hYmxlZC5hZGQoXCJqc1wiKTtcbiAgICByZXR1cm4gdGhpcy5zZXR1cChqYXZhc2NyaXB0KCksIG9wdGlvbnMpO1xuICB9XG5cbiAgZW5hYmxlUGFja2FnZUpzb248VCBleHRlbmRzIFBrZ1J1bGVLZXlbXT4ob3B0aW9uczogT3B0aW9uczxUPiA9IHt9KSB7XG4gICAgdGhpcy5lbmFibGVkLmFkZChcInBrZ1wiKTtcbiAgICByZXR1cm4gdGhpcy5zZXR1cChwYWNrYWdlanNvbigpLCBvcHRpb25zKTtcbiAgfVxuXG4gIGFwcGVuZChjb25maWc6IENvbmZpZ0l0ZW0pIHtcbiAgICB0aGlzLmNvbmZpZ3MucHVzaChjb25maWcpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBCdWlsZGVyKClcbiAgLmVuYWJsZVBhY2thZ2VKc29uKClcbiAgLmVuYWJsZUphdmFTY3JpcHQoKVxuICAuZW5hYmxlVHlwZVNjcmlwdCgpXG4gIC50b0NvbmZpZygpO1xuIl19
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNsaW50LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lc2xpbnQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQW9CLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUE2QnBELE1BQU0sT0FBTyxPQUFPO0lBQ0QsT0FBTyxHQUFvQixFQUFFLENBQUM7SUFDOUIsT0FBTyxDQUFpQjtJQUV4QixPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7SUFFMUQsWUFBWSxVQUEwQixFQUFFO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxLQUFLLENBQ1gsV0FBeUMsRUFDekMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFxQjtRQUVqQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE9BQWUsRUFBRSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO2lCQUFNLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNoQyxDQUFDO2lCQUFNLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDM0QsQ0FBQztRQUNILENBQUMsQ0FBQztRQUNGLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUMsR0FBRyxVQUFVO1lBQ2IsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUN4RTtTQUNGLENBQUMsQ0FBQyxDQUFDO1FBQ0osSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnQkFBZ0IsQ0FBd0IsVUFBc0IsRUFBRTtRQUM5RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELGdCQUFnQixDQUF3QixVQUFzQixFQUFFO1FBQzlELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsaUJBQWlCLENBQXlCLFVBQXNCLEVBQUU7UUFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBa0I7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0Y7QUFFRCxlQUFlLElBQUksT0FBTyxFQUFFO0tBQ3pCLGlCQUFpQixFQUFFO0tBQ25CLGdCQUFnQixFQUFFO0tBQ2xCLGdCQUFnQixFQUFFO0tBQ2xCLFFBQVEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMaW50ZXIgfSBmcm9tIFwiZXNsaW50XCI7XG5pbXBvcnQgeyBiYXNlLCB0eXBlIEJhc2VPcHRpb25zIH0gZnJvbSBcIi4vY29uZmlnL2Jhc2UudHNcIjtcbmltcG9ydCB7IGphdmFzY3JpcHQgfSBmcm9tIFwiLi9jb25maWcvamF2YXNjcmlwdC50c1wiO1xuaW1wb3J0IHsgcGFja2FnZWpzb24gfSBmcm9tIFwiLi9jb25maWcvcGFja2FnZWpzb24udHNcIjtcbmltcG9ydCB7IHR5cGVzY3JpcHQgfSBmcm9tIFwiLi9jb25maWcvdHlwZXNjcmlwdC50c1wiO1xuXG50eXBlIE5vRHVwbGljYXRlPEEgZXh0ZW5kcyB1bmtub3duW10+ID0ge1xuICBbSSBpbiBrZXlvZiBBXTogdHJ1ZSBleHRlbmRzIHtcbiAgICBbSiBpbiBrZXlvZiBBXTogSiBleHRlbmRzIEkgPyBmYWxzZSA6IEFbSl0gZXh0ZW5kcyBBW0ldID8gdHJ1ZSA6IGZhbHNlO1xuICB9W251bWJlcl1cbiAgICA/IG5ldmVyXG4gICAgOiBBW0ldO1xufTtcblxudHlwZSBKc1J1bGVLZXkgPSBrZXlvZiBSZXR1cm5UeXBlPHR5cGVvZiBqYXZhc2NyaXB0PlswXVtcInJ1bGVzXCJdO1xudHlwZSBUc1J1bGVLZXkgPSBrZXlvZiBSZXR1cm5UeXBlPHR5cGVvZiB0eXBlc2NyaXB0PlswXVtcInJ1bGVzXCJdO1xudHlwZSBQa2dSdWxlS2V5ID0ga2V5b2YgUmV0dXJuVHlwZTx0eXBlb2YgcGFja2FnZWpzb24+WzBdW1wicnVsZXNcIl07XG5cbnR5cGUgUnVsZVZhbHVlID0gXCJlcnJvclwiIHwgXCJ3YXJuXCIgfCBcIm9mZlwiIHwgW1wiZXJyb3JcIiB8IFwid2FyblwiLCAuLi51bmtub3duW11dO1xuaW50ZXJmYWNlIE9wdGlvbnM8VCBleHRlbmRzIHN0cmluZ1tdPiB7XG4gIHBpY2s/OiBOb0R1cGxpY2F0ZTxUPjtcbiAgb21pdD86IE5vRHVwbGljYXRlPFQ+O1xufVxuaW50ZXJmYWNlIENvbmZpZ0l0ZW0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGZpbGVzOiBzdHJpbmdbXTtcbiAgcGx1Z2lucz86IFJlY29yZDxzdHJpbmcsIG9iamVjdD47XG4gIHJ1bGVzOlxuICAgIHwgUGFydGlhbDxSZWNvcmQ8UGtnUnVsZUtleSB8IEpzUnVsZUtleSB8IFRzUnVsZUtleSwgUnVsZVZhbHVlPj5cbiAgICB8IFJlY29yZDxzdHJpbmcsIFJ1bGVWYWx1ZT47XG59XG5cbmV4cG9ydCB0eXBlIEJ1aWxkZXJPcHRpb25zID0gQmFzZU9wdGlvbnM7XG5leHBvcnQgY2xhc3MgQnVpbGRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnczogTGludGVyLkNvbmZpZ1tdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogQnVpbGRlck9wdGlvbnM7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbmFibGVkID0gbmV3IFNldDxcImpzXCIgfCBcInRzXCIgfCBcInBrZ1wiPigpO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEJ1aWxkZXJPcHRpb25zID0ge30pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgdG9Db25maWcoKSB7XG4gICAgcmV0dXJuIFsuLi5iYXNlKHRoaXMub3B0aW9ucywgdGhpcy5lbmFibGVkKSwgLi4udGhpcy5jb25maWdzXTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXAoXG4gICAgY29uZmlnSXRlbXM6IHJlYWRvbmx5IHsgcnVsZXM6IG9iamVjdCB9W10sXG4gICAgeyBwaWNrLCBvbWl0IH06IE9wdGlvbnM8c3RyaW5nW10+LFxuICApIHtcbiAgICBjb25zdCBzZWxlY3QgPSAocnVsZUtleTogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAoIXBpY2sgJiYgIW9taXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9IGVsc2UgaWYgKHBpY2sgJiYgIW9taXQpIHtcbiAgICAgICAgcmV0dXJuIHBpY2suaW5jbHVkZXMocnVsZUtleSk7XG4gICAgICB9IGVsc2UgaWYgKCFwaWNrICYmIG9taXQpIHtcbiAgICAgICAgcmV0dXJuICFvbWl0LmluY2x1ZGVzKHJ1bGVLZXkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiWW91IGNhbm5vdCBzcGVjaWZ5IGJvdGggcGljayBhbmQgb21pdFwiKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGNvbmZpZ0l0ZW1zLm1hcCgoY29uZmlnSXRlbSkgPT4gKHtcbiAgICAgIC4uLmNvbmZpZ0l0ZW0sXG4gICAgICBydWxlczogT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgICBPYmplY3QuZW50cmllcyhjb25maWdJdGVtLnJ1bGVzKS5maWx0ZXIoKFtydWxlS2V5XSkgPT4gc2VsZWN0KHJ1bGVLZXkpKSxcbiAgICAgICksXG4gICAgfSkpO1xuICAgIHRoaXMuY29uZmlncy5wdXNoKC4uLnJlc3VsdCk7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGVuYWJsZVR5cGVTY3JpcHQ8VCBleHRlbmRzIFRzUnVsZUtleVtdPihvcHRpb25zOiBPcHRpb25zPFQ+ID0ge30pIHtcbiAgICB0aGlzLmVuYWJsZWQuYWRkKFwidHNcIik7XG4gICAgcmV0dXJuIHRoaXMuc2V0dXAodHlwZXNjcmlwdCgpLCBvcHRpb25zKTtcbiAgfVxuXG4gIGVuYWJsZUphdmFTY3JpcHQ8VCBleHRlbmRzIEpzUnVsZUtleVtdPihvcHRpb25zOiBPcHRpb25zPFQ+ID0ge30pIHtcbiAgICB0aGlzLmVuYWJsZWQuYWRkKFwianNcIik7XG4gICAgcmV0dXJuIHRoaXMuc2V0dXAoamF2YXNjcmlwdCgpLCBvcHRpb25zKTtcbiAgfVxuXG4gIGVuYWJsZVBhY2thZ2VKc29uPFQgZXh0ZW5kcyBQa2dSdWxlS2V5W10+KG9wdGlvbnM6IE9wdGlvbnM8VD4gPSB7fSkge1xuICAgIHRoaXMuZW5hYmxlZC5hZGQoXCJwa2dcIik7XG4gICAgcmV0dXJuIHRoaXMuc2V0dXAocGFja2FnZWpzb24oKSwgb3B0aW9ucyk7XG4gIH1cblxuICBhcHBlbmQoY29uZmlnOiBDb25maWdJdGVtKSB7XG4gICAgdGhpcy5jb25maWdzLnB1c2goY29uZmlnKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBuZXcgQnVpbGRlcigpXG4gIC5lbmFibGVQYWNrYWdlSnNvbigpXG4gIC5lbmFibGVKYXZhU2NyaXB0KClcbiAgLmVuYWJsZVR5cGVTY3JpcHQoKVxuICAudG9Db25maWcoKTtcbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fenge/eslint-config",
3
- "version": "0.5.13",
3
+ "version": "0.6.0",
4
4
  "description": "A super strict eslint config for linting js/ts/package.json.",
5
5
  "keywords": [
6
6
  "opinionated",
@@ -38,11 +38,11 @@
38
38
  "eslint-plugin-sonarjs": "1.0.4",
39
39
  "eslint-plugin-unicorn": "56.0.1",
40
40
  "globals": "16.0.0",
41
- "@fenge/eslint-plugin": "0.3.0",
42
- "eslint-plugin-esm": "0.7.0",
43
- "@fenge/eslint-plugin-ts": "0.3.0",
44
- "eslint-plugin-pkg-json": "0.2.0",
45
- "eslint-plugin-publint": "0.1.3"
41
+ "@fenge/eslint-plugin": "0.4.0",
42
+ "eslint-plugin-esm": "0.8.0",
43
+ "@fenge/eslint-plugin-ts": "0.4.0",
44
+ "eslint-plugin-publint": "0.2.0",
45
+ "eslint-plugin-pkg-json": "0.3.0"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@types/node": "22.13.10",
@@ -58,7 +58,7 @@
58
58
  }
59
59
  },
60
60
  "engines": {
61
- "node": ">=18.0.0"
61
+ "node": "^18.20.0 || >=20.10.0"
62
62
  },
63
63
  "scripts": {
64
64
  "build": "tsc",
@@ -4,15 +4,15 @@ import type { Linter } from "eslint";
4
4
  export type BaseOptions = Linter.LinterOptions;
5
5
 
6
6
  export function base(
7
- options: BaseOptions = {},
8
- enabled: ("js" | "ts" | "pkg")[] = [],
7
+ options: BaseOptions,
8
+ enabled: Set<"js" | "ts" | "pkg">,
9
9
  ): Linter.Config[] {
10
10
  const filesMap = {
11
11
  js: "**/*.{js,cjs,mjs,jsx}",
12
12
  ts: "**/*.{ts,cts,mts,tsx}",
13
13
  pkg: "package.json",
14
14
  } as const;
15
- const files = enabled.map((key) => filesMap[key]);
15
+ const files = [...enabled].map((key) => filesMap[key]);
16
16
  return [
17
17
  // Global ignore. Refer: https://eslint.org/docs/latest/use/configure/configuration-files#specifying-files-and-ignores.
18
18
  {
@@ -42,7 +42,7 @@ export class Builder {
42
42
  }
43
43
 
44
44
  toConfig() {
45
- return [...base(this.options, [...this.enabled]), ...this.configs];
45
+ return [...base(this.options, this.enabled), ...this.configs];
46
46
  }
47
47
 
48
48
  private setup(