@cdklabs/eslint-plugin 1.0.0 → 1.1.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.
@@ -0,0 +1 @@
1
+ throw new ValidationError('<insert error message>', this);
@@ -0,0 +1 @@
1
+ throw new ValidationError('My error', this);
package/lib/index.d.ts CHANGED
@@ -7,5 +7,6 @@ export declare const rules: {
7
7
  'invalid-cfn-imports': any;
8
8
  'no-literal-partition': any;
9
9
  'no-invalid-path': any;
10
+ 'no-throw-default-error': any;
10
11
  'promiseall-no-unbounded-parallelism': any;
11
12
  };
package/lib/index.js CHANGED
@@ -11,6 +11,7 @@ exports.rules = {
11
11
  'invalid-cfn-imports': require('./rules/invalid-cfn-imports'),
12
12
  'no-literal-partition': require('./rules/no-literal-partition'),
13
13
  'no-invalid-path': require('./rules/no-invalid-path'),
14
+ 'no-throw-default-error': require('./rules/no-throw-default-error'),
14
15
  'promiseall-no-unbounded-parallelism': require('./rules/promiseall-no-unbounded-parallelism'),
15
16
  };
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBEQUEwRDs7O0FBRTdDLFFBQUEsSUFBSSxHQUFHO0lBQ2xCLElBQUksRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJO0lBQ3JDLE9BQU8sRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPO0NBQzVDLENBQUM7QUFFVyxRQUFBLEtBQUssR0FBRztJQUNuQixtQkFBbUIsRUFBRSxPQUFPLENBQUMsMkJBQTJCLENBQUM7SUFDekQscUJBQXFCLEVBQUUsT0FBTyxDQUFDLDZCQUE2QixDQUFDO0lBQzdELHNCQUFzQixFQUFFLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQztJQUMvRCxpQkFBaUIsRUFBRSxPQUFPLENBQUMseUJBQXlCLENBQUM7SUFDckQscUNBQXFDLEVBQUUsT0FBTyxDQUFDLDZDQUE2QyxDQUFDO0NBQzlGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzICovXG5cbmV4cG9ydCBjb25zdCBtZXRhID0ge1xuICBuYW1lOiByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS5uYW1lLFxuICB2ZXJzaW9uOiByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uLFxufTtcblxuZXhwb3J0IGNvbnN0IHJ1bGVzID0ge1xuICAnbm8tY29yZS1jb25zdHJ1Y3QnOiByZXF1aXJlKCcuL3J1bGVzL25vLWNvcmUtY29uc3RydWN0JyksXG4gICdpbnZhbGlkLWNmbi1pbXBvcnRzJzogcmVxdWlyZSgnLi9ydWxlcy9pbnZhbGlkLWNmbi1pbXBvcnRzJyksXG4gICduby1saXRlcmFsLXBhcnRpdGlvbic6IHJlcXVpcmUoJy4vcnVsZXMvbm8tbGl0ZXJhbC1wYXJ0aXRpb24nKSxcbiAgJ25vLWludmFsaWQtcGF0aCc6IHJlcXVpcmUoJy4vcnVsZXMvbm8taW52YWxpZC1wYXRoJyksXG4gICdwcm9taXNlYWxsLW5vLXVuYm91bmRlZC1wYXJhbGxlbGlzbSc6IHJlcXVpcmUoJy4vcnVsZXMvcHJvbWlzZWFsbC1uby11bmJvdW5kZWQtcGFyYWxsZWxpc20nKSxcbn07XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBEQUEwRDs7O0FBRTdDLFFBQUEsSUFBSSxHQUFHO0lBQ2xCLElBQUksRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJO0lBQ3JDLE9BQU8sRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPO0NBQzVDLENBQUM7QUFFVyxRQUFBLEtBQUssR0FBRztJQUNuQixtQkFBbUIsRUFBRSxPQUFPLENBQUMsMkJBQTJCLENBQUM7SUFDekQscUJBQXFCLEVBQUUsT0FBTyxDQUFDLDZCQUE2QixDQUFDO0lBQzdELHNCQUFzQixFQUFFLE9BQU8sQ0FBQyw4QkFBOEIsQ0FBQztJQUMvRCxpQkFBaUIsRUFBRSxPQUFPLENBQUMseUJBQXlCLENBQUM7SUFDckQsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLGdDQUFnQyxDQUFDO0lBQ25FLHFDQUFxQyxFQUFFLE9BQU8sQ0FBQyw2Q0FBNkMsQ0FBQztDQUM5RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0cyAqL1xuXG5leHBvcnQgY29uc3QgbWV0YSA9IHtcbiAgbmFtZTogcmVxdWlyZSgnLi4vcGFja2FnZS5qc29uJykubmFtZSxcbiAgdmVyc2lvbjogcmVxdWlyZSgnLi4vcGFja2FnZS5qc29uJykudmVyc2lvbixcbn07XG5cbmV4cG9ydCBjb25zdCBydWxlcyA9IHtcbiAgJ25vLWNvcmUtY29uc3RydWN0JzogcmVxdWlyZSgnLi9ydWxlcy9uby1jb3JlLWNvbnN0cnVjdCcpLFxuICAnaW52YWxpZC1jZm4taW1wb3J0cyc6IHJlcXVpcmUoJy4vcnVsZXMvaW52YWxpZC1jZm4taW1wb3J0cycpLFxuICAnbm8tbGl0ZXJhbC1wYXJ0aXRpb24nOiByZXF1aXJlKCcuL3J1bGVzL25vLWxpdGVyYWwtcGFydGl0aW9uJyksXG4gICduby1pbnZhbGlkLXBhdGgnOiByZXF1aXJlKCcuL3J1bGVzL25vLWludmFsaWQtcGF0aCcpLFxuICAnbm8tdGhyb3ctZGVmYXVsdC1lcnJvcic6IHJlcXVpcmUoJy4vcnVsZXMvbm8tdGhyb3ctZGVmYXVsdC1lcnJvcicpLFxuICAncHJvbWlzZWFsbC1uby11bmJvdW5kZWQtcGFyYWxsZWxpc20nOiByZXF1aXJlKCcuL3J1bGVzL3Byb21pc2VhbGwtbm8tdW5ib3VuZGVkLXBhcmFsbGVsaXNtJyksXG59O1xuIl19
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  Object.defineProperty(exports, "__esModule", { value: true });
26
36
  exports.ImportCache = void 0;
27
37
  const crypto = __importStar(require("crypto"));
@@ -49,4 +59,4 @@ function hashed(key) {
49
59
  hash.update(JSON.stringify(key));
50
60
  return hash.digest('hex');
51
61
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ByaXZhdGUvaW1wb3J0LWNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBaUJqQyxNQUFhLFdBQVc7SUFBeEI7UUFDVSxZQUFPLEdBQXlDLEVBQUUsQ0FBQztJQWlCN0QsQ0FBQztJQWZRLE1BQU0sQ0FBQyxNQUF5QjtRQUNyQyxNQUFNLEdBQUcsR0FBbUI7WUFDMUIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO1lBQ3pCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtTQUMxQixDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVNLElBQUksQ0FBQyxHQUFtQjtRQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQWxCRCxrQ0FrQkM7QUFFRCxTQUFTLE1BQU0sQ0FBQyxHQUFPO0lBQ3JCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDakMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjcnlwdG8gZnJvbSAnY3J5cHRvJztcblxuZXhwb3J0IGludGVyZmFjZSBJbXBvcnRDYWNoZUtleSB7XG4gIHJlYWRvbmx5IGZpbGVOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHR5cGVOYW1lOiBzdHJpbmc7XG59XG5cbi8vIGBub2RlYCBpcyBhIHR5cGUgZnJvbSBAdHlwZXNjcmlwdC1lc2xpbnQvdHlwZXNjcmlwdC1lc3RyZWUsIGJ1dCB1c2luZyAnYW55JyBmb3Igbm93XG4vLyBzaW5jZSBpdCdzIGluY29tcGF0aWJsZSB3aXRoIGVzbGludC5SdWxlIG5hbWVzcGFjZS4gV2FpdGluZyBmb3IgYmV0dGVyIGNvbXBhdGliaWxpdHkgaW5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90eXBlc2NyaXB0LWVzbGludC90eXBlc2NyaXB0LWVzbGludC90cmVlLzE3NjVhMTc4ZTQ1NmIxNTJiZDQ4MTkyZWI1ZGI3ZTg1NDFlMmFkZjIvcGFja2FnZXMvZXhwZXJpbWVudGFsLXV0aWxzI25vdGVcbmV4cG9ydCB0eXBlIE5vZGUgPSBhbnk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW1wb3J0Q2FjaGVSZWNvcmQgZXh0ZW5kcyBJbXBvcnRDYWNoZUtleSB7XG4gIHJlYWRvbmx5IGltcG9ydE5vZGU6IE5vZGU7XG4gIHJlYWRvbmx5IGxvY2FsTmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgSW1wb3J0Q2FjaGUge1xuICBwcml2YXRlIHJlY29yZHM6IHsgW2tleTogc3RyaW5nXTogSW1wb3J0Q2FjaGVSZWNvcmQgfSA9IHt9O1xuXG4gIHB1YmxpYyByZWNvcmQocmVjb3JkOiBJbXBvcnRDYWNoZVJlY29yZCk6IHZvaWQge1xuICAgIGNvbnN0IGtleTogSW1wb3J0Q2FjaGVLZXkgPSB7XG4gICAgICBmaWxlTmFtZTogcmVjb3JkLmZpbGVOYW1lLFxuICAgICAgdHlwZU5hbWU6IHJlY29yZC50eXBlTmFtZSxcbiAgICB9O1xuICAgIHRoaXMucmVjb3Jkc1toYXNoZWQoa2V5KV0gPSByZWNvcmQ7XG4gIH1cblxuICBwdWJsaWMgZmluZChrZXk6IEltcG9ydENhY2hlS2V5KTogSW1wb3J0Q2FjaGVSZWNvcmQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnJlY29yZHNbaGFzaGVkKGtleSldO1xuICB9XG5cbiAgcHVibGljIGdldCBpbXBvcnRzKCk6IEltcG9ydENhY2hlUmVjb3JkW10ge1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKHRoaXMucmVjb3Jkcyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gaGFzaGVkKGtleToge30pOiBzdHJpbmcge1xuICBjb25zdCBoYXNoID0gY3J5cHRvLmNyZWF0ZUhhc2goJ21kNScpO1xuICBoYXNoLnVwZGF0ZShKU09OLnN0cmluZ2lmeShrZXkpKTtcbiAgcmV0dXJuIGhhc2guZGlnZXN0KCdoZXgnKTtcbn0iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LWNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ByaXZhdGUvaW1wb3J0LWNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUFpQztBQWlCakMsTUFBYSxXQUFXO0lBQXhCO1FBQ1UsWUFBTyxHQUF5QyxFQUFFLENBQUM7SUFpQjdELENBQUM7SUFmUSxNQUFNLENBQUMsTUFBeUI7UUFDckMsTUFBTSxHQUFHLEdBQW1CO1lBQzFCLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtZQUN6QixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7U0FDMUIsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxJQUFJLENBQUMsR0FBbUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0Y7QUFsQkQsa0NBa0JDO0FBRUQsU0FBUyxNQUFNLENBQUMsR0FBTztJQUNyQixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW1wb3J0Q2FjaGVLZXkge1xuICByZWFkb25seSBmaWxlTmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlTmFtZTogc3RyaW5nO1xufVxuXG4vLyBgbm9kZWAgaXMgYSB0eXBlIGZyb20gQHR5cGVzY3JpcHQtZXNsaW50L3R5cGVzY3JpcHQtZXN0cmVlLCBidXQgdXNpbmcgJ2FueScgZm9yIG5vd1xuLy8gc2luY2UgaXQncyBpbmNvbXBhdGlibGUgd2l0aCBlc2xpbnQuUnVsZSBuYW1lc3BhY2UuIFdhaXRpbmcgZm9yIGJldHRlciBjb21wYXRpYmlsaXR5IGluXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHlwZXNjcmlwdC1lc2xpbnQvdHlwZXNjcmlwdC1lc2xpbnQvdHJlZS8xNzY1YTE3OGU0NTZiMTUyYmQ0ODE5MmViNWRiN2U4NTQxZTJhZGYyL3BhY2thZ2VzL2V4cGVyaW1lbnRhbC11dGlscyNub3RlXG5leHBvcnQgdHlwZSBOb2RlID0gYW55O1xuXG5leHBvcnQgaW50ZXJmYWNlIEltcG9ydENhY2hlUmVjb3JkIGV4dGVuZHMgSW1wb3J0Q2FjaGVLZXkge1xuICByZWFkb25seSBpbXBvcnROb2RlOiBOb2RlO1xuICByZWFkb25seSBsb2NhbE5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEltcG9ydENhY2hlIHtcbiAgcHJpdmF0ZSByZWNvcmRzOiB7IFtrZXk6IHN0cmluZ106IEltcG9ydENhY2hlUmVjb3JkIH0gPSB7fTtcblxuICBwdWJsaWMgcmVjb3JkKHJlY29yZDogSW1wb3J0Q2FjaGVSZWNvcmQpOiB2b2lkIHtcbiAgICBjb25zdCBrZXk6IEltcG9ydENhY2hlS2V5ID0ge1xuICAgICAgZmlsZU5hbWU6IHJlY29yZC5maWxlTmFtZSxcbiAgICAgIHR5cGVOYW1lOiByZWNvcmQudHlwZU5hbWUsXG4gICAgfTtcbiAgICB0aGlzLnJlY29yZHNbaGFzaGVkKGtleSldID0gcmVjb3JkO1xuICB9XG5cbiAgcHVibGljIGZpbmQoa2V5OiBJbXBvcnRDYWNoZUtleSk6IEltcG9ydENhY2hlUmVjb3JkIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5yZWNvcmRzW2hhc2hlZChrZXkpXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaW1wb3J0cygpOiBJbXBvcnRDYWNoZVJlY29yZFtdIHtcbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLnJlY29yZHMpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGhhc2hlZChrZXk6IHt9KTogc3RyaW5nIHtcbiAgY29uc3QgaGFzaCA9IGNyeXB0by5jcmVhdGVIYXNoKCdtZDUnKTtcbiAgaGFzaC51cGRhdGUoSlNPTi5zdHJpbmdpZnkoa2V5KSk7XG4gIHJldHVybiBoYXNoLmRpZ2VzdCgnaGV4Jyk7XG59Il19
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  Object.defineProperty(exports, "__esModule", { value: true });
26
36
  exports.isProdFile = isProdFile;
27
37
  const path = __importStar(require("path"));
@@ -34,4 +44,4 @@ function isProdFile(filename) {
34
44
  const isInOurTestFolder = path.resolve(filename).startsWith(path.resolve(__dirname, '..', '..', 'test'));
35
45
  return (!isInTestFolder && !isTestingPackage) || isInOurTestFolder;
36
46
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcHJvZC1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ByaXZhdGUvaXMtcHJvZC1maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFLQSxnQ0FPQztBQVpELDJDQUE2QjtBQUU3Qjs7R0FFRztBQUNILFNBQWdCLFVBQVUsQ0FBQyxRQUFnQjtJQUN6QyxNQUFNLGNBQWMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUV2RSxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUV6RyxPQUFPLENBQUMsQ0FBQyxjQUFjLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLGlCQUFpQixDQUFDO0FBQ3JFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG4vKipcbiAqIFdlIGRvbid0IGNhcmUgYWJvdXQgcHJvamVjdCB0ZXN0IGZpbGVzIChpbiBhIC90ZXN0LyBkaXJlY3RvcnksIGV4Y2x1ZGluZyBvdXIgZml4dHVyZXMpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Byb2RGaWxlKGZpbGVuYW1lOiBzdHJpbmcpIHtcbiAgY29uc3QgaXNJblRlc3RGb2xkZXIgPSBuZXcgUmVnRXhwKC9cXC90ZXN0XFwvLykudGVzdChmaWxlbmFtZSk7XG4gIGNvbnN0IGlzVGVzdGluZ1BhY2thZ2UgPSBuZXcgUmVnRXhwKC9AYXdzLWNkay10ZXN0aW5nLykudGVzdChmaWxlbmFtZSk7XG5cbiAgY29uc3QgaXNJbk91clRlc3RGb2xkZXIgPSBwYXRoLnJlc29sdmUoZmlsZW5hbWUpLnN0YXJ0c1dpdGgocGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4uJywgJy4uJywgJ3Rlc3QnKSk7XG5cbiAgcmV0dXJuICghaXNJblRlc3RGb2xkZXIgJiYgIWlzVGVzdGluZ1BhY2thZ2UpIHx8IGlzSW5PdXJUZXN0Rm9sZGVyO1xufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcHJvZC1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ByaXZhdGUvaXMtcHJvZC1maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBS0EsZ0NBT0M7QUFaRCwyQ0FBNkI7QUFFN0I7O0dBRUc7QUFDSCxTQUFnQixVQUFVLENBQUMsUUFBZ0I7SUFDekMsTUFBTSxjQUFjLEdBQUcsSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdkUsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFekcsT0FBTyxDQUFDLENBQUMsY0FBYyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxpQkFBaUIsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcblxuLyoqXG4gKiBXZSBkb24ndCBjYXJlIGFib3V0IHByb2plY3QgdGVzdCBmaWxlcyAoaW4gYSAvdGVzdC8gZGlyZWN0b3J5LCBleGNsdWRpbmcgb3VyIGZpeHR1cmVzKVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQcm9kRmlsZShmaWxlbmFtZTogc3RyaW5nKSB7XG4gIGNvbnN0IGlzSW5UZXN0Rm9sZGVyID0gbmV3IFJlZ0V4cCgvXFwvdGVzdFxcLy8pLnRlc3QoZmlsZW5hbWUpO1xuICBjb25zdCBpc1Rlc3RpbmdQYWNrYWdlID0gbmV3IFJlZ0V4cCgvQGF3cy1jZGstdGVzdGluZy8pLnRlc3QoZmlsZW5hbWUpO1xuXG4gIGNvbnN0IGlzSW5PdXJUZXN0Rm9sZGVyID0gcGF0aC5yZXNvbHZlKGZpbGVuYW1lKS5zdGFydHNXaXRoKHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuLicsICcuLicsICd0ZXN0JykpO1xuXG4gIHJldHVybiAoIWlzSW5UZXN0Rm9sZGVyICYmICFpc1Rlc3RpbmdQYWNrYWdlKSB8fCBpc0luT3VyVGVzdEZvbGRlcjtcbn1cbiJdfQ==
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  Object.defineProperty(exports, "__esModule", { value: true });
26
36
  exports.create = create;
27
37
  const fs = __importStar(require("fs"));
@@ -99,4 +109,4 @@ function create(context) {
99
109
  },
100
110
  };
101
111
  }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8taW52YWxpZC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3J1bGVzL25vLWludmFsaWQtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0NBLHdCQXNEQztBQTFGRCx1Q0FBeUI7QUFDekIsMkNBQTZCO0FBRzdCLFNBQVMsa0JBQWtCLENBQUMsSUFBUzs7SUFDbkMsT0FBTyxDQUNMLENBQUEsTUFBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFFBQVEsMENBQUUsSUFBSSxNQUFLLE1BQU07UUFDdEMsQ0FBQyxDQUFBLE1BQUEsTUFBQSxNQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsVUFBVSwwQ0FBRSxNQUFNLDBDQUFFLE1BQU0sMENBQUUsSUFBSSxNQUFLLE1BQU07YUFDekQsTUFBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFNBQVMsMENBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsZUFBQyxPQUFBLENBQUEsTUFBQSxNQUFBLENBQUMsQ0FBQyxNQUFNLDBDQUFFLE1BQU0sMENBQUUsSUFBSSxNQUFLLE1BQU0sQ0FBQSxFQUFBLENBQUMsQ0FBQSxDQUFDLENBQzdFLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxJQUFTO0lBQ3BDLGlFQUFpRTtJQUNqRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUM7QUFDN0QsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFDLElBQWM7SUFDaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMs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QUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7d0JBQzlGLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDOzRCQUMxQix1RUFBdUU7NEJBQ3ZFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQywySkFBMkosRUFBRSxDQUFDLENBQUM7NEJBQ3BOLE9BQU87d0JBQ1QsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IFJ1bGUgfSBmcm9tICdlc2xpbnQnO1xuXG5mdW5jdGlvbiBpc1BhdGhKb2luRnVuY0NhbGwobm9kZTogYW55KTogYm9vbGVhbiB7XG4gIHJldHVybiAoXG4gICAgbm9kZS5jYWxsZWU/LnByb3BlcnR5Py5uYW1lID09PSAnam9pbicgJiZcbiAgICAobm9kZS5wYXJlbnQ/LmV4cHJlc3Npb24/LmNhbGxlZT8ub2JqZWN0Py5uYW1lID09PSAncGF0aCcgfHxcbiAgICBub2RlLnBhcmVudD8uYXJndW1lbnRzPy5zb21lKChhOiBhbnkpID0+IGEuY2FsbGVlPy5vYmplY3Q/Lm5hbWUgPT09ICdwYXRoJykpXG4gICk7XG59XG5cbmZ1bmN0aW9uIG5vQXJndW1lbnRWYXJpYWJsZXMobm9kZTogYW55KTogYm9vbGVhbiB7XG4gIC8vIE91dHNpZGUgb2YgdGhlIGZpcnN0IGFyZ3VtZW50LCBhbGwgYXJndW1lbnRzIHNob3VsZCBiZSBzdHJpbmdzXG4gIGNvbnN0IGNvbXBvbmVudHMgPSBub2RlLmFyZ3VtZW50cy5zbGljZSgxKTtcbiAgcmV0dXJuIGNvbXBvbmVudHMuZXZlcnkoKGE6IGFueSkgPT4gYS52YWx1ZSAhPT0gdW5kZWZpbmVkKTtcbn1cblxuZnVuY3Rpb24gaGFzU2xhc2hlcyhhcmdzOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICByZXR1cm4gYXJncy5zb21lKChhKSA9PiBhLmluY2x1ZGVzKCcvJykpO1xufVxuXG5mdW5jdGlvbiBmaXJzdEFyZ0lzRGlybmFtZShub2RlOiBhbnkpOiBib29sZWFuIHtcbiAgcmV0dXJuIG5vZGUuYXJndW1lbnRzWzBdLm5hbWUgJiYgbm9kZS5hcmd1bWVudHNbMF0ubmFtZSA9PT0gJ19fZGlybmFtZSc7XG59XG5cbmZ1bmN0aW9uIGFyZ3VtZW50TGlzdChub2RlOiBhbnkpOiBzdHJpbmdbXSB7XG4gIC8vIEFscmVhZHkgY29uZmlybWVkIHRoYXQgZmlyc3QgYXJndW1lbnQgaXMgJ19fZGlybmFtZScsIHNvIGNhbiBzYWZlbHkgcmVtb3ZlIGl0XG4gIGNvbnN0IGFyZ3M6IHN0cmluZ1tdID0gbm9kZS5hcmd1bWVudHMuc2xpY2UoMSkubWFwKChhOiBhbnkpID0+IHsgcmV0dXJuIGEudmFsdWU7IH0pO1xuICByZXR1cm4gYXJncztcbn1cblxuZnVuY3Rpb24gcmVjcmVhdGVQYXRoKGFyZ3M6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgcmV0dXJuIGBwYXRoLmpvaW4oX19kaXJuYW1lLCAnJHthcmdzLmpvaW4oJ1xcJywgXFwnJyl9JylgO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlKGNvbnRleHQ6IFJ1bGUuUnVsZUNvbnRleHQpOiBSdWxlLk5vZGVMaXN0ZW5lciB7XG4gIHJldHVybiB7XG4gICAgQ2FsbEV4cHJlc3Npb24obm9kZTogYW55KSB7XG4gICAgICBpZiAoaXNQYXRoSm9pbkZ1bmNDYWxsKG5vZGUpKSB7XG4gICAgICAgIGlmIChub2RlLmFyZ3VtZW50cy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAvLyBFUlJPUjogdGhpcyBpcyAncGF0aC5qb2luKCknXG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiAnXFwncGF0aC5qb2luKClcXCcgaXMgbm90IGEgdmFsaWQgcGF0aC4gWW91IG11c3Qgc3BlY2lmeSBhcmd1bWVudHMgaW50byB0aGUgZnVuY3Rpb24uJyB9KTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIW5vQXJndW1lbnRWYXJpYWJsZXMobm9kZSkpIHtcbiAgICAgICAgICAvLyBXQVJOSU5HOiB1bmV4cGVjdGVkIG5vbi1zdHJpbmcgaW4gdGhlIGFyZ3VtZW50IGxpc3QuIFRoaXMgaGFwcGVucyBpZiBwYXJ0IG9mIHRoZSBhcmd1bWVudCBsaXN0IGlzIGEgdmFyaWFibGUsIGkuZS4gYHBhdGguam9pbihfX2Rpcm5hbWUsIG15UGF0aClgLlxuICAgICAgICAgIC8vIFdlIG1heSBiZSBhYmxlIHRvIGRvIHNvbWV0aGluZyBhYm91dCB0aGlzLCBidXQgd2UgY3VycmVudGx5IGFyZSBqdXN0IGdvaW5nIHRvIGxldCBpdCBwYXNzLlxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdlIGN1cnJlbnRseSBkbyBub3QgbGludCBhbnkgcGF0aC5qb2luIHdpdGhvdXQgJ19fZGlybmFtZScgYXMgdGhlIGZpcnN0IGFyZ3VtZW50XG4gICAgICAgIGlmICghZmlyc3RBcmdJc0Rpcm5hbWUobm9kZSkpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhcmdzID0gYXJndW1lbnRMaXN0KG5vZGUpO1xuXG4gICAgICAgIGlmIChoYXNTbGFzaGVzKGFyZ3MpKSB7XG4gICAgICAgICAgLy8gRVJST1I6IFRoaXMgcGF0aCBsb29rcyBsaWtlICdwYXRoLmpvaW4oX19kaXJuYW1lLCAnYS9iJyknIGFuZCBzaG91bGQgYmUgY2hhbmdlZCB0byAncGF0aC5qb2luKF9fZGlybmFtZSwgJ2EnLCAnYicpJ1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogYCR7cmVjcmVhdGVQYXRoKGFyZ3MpfSBpcyBub3QgYSB2YWxpZCBwYXRoLiBJdCBoYXMgJy8nIGluIHRoZSBhcmd1bWVudHMgd2hpY2ggaXMgbm90IGFsbG93ZWQuIEVhY2ggZGlyZWN0b3J5IHNob3VsZCBiZSBpdHMgb3duIHNlcGFyYXRlIGFyZ3VtZW50LmAgfSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlyc3REb3duRGlyID0gYXJncy5maW5kSW5kZXgoKHApID0+IHAgIT09ICcuLicpO1xuXG4gICAgICAgIC8vIENvbmZpcm0gcGF0aCBkb2VzIG5vdCBoYXZlIGFueSB1bm5lY2Vzc2FyeSAnLi4nIHBhdGhzXG4gICAgICAgIC8vIFRoaXMgYWxsb3dzIHVzIHRvIHZhbGlkYXRlIHN1YnNlcXVlbnQgY2hlY2tzXG4gICAgICAgIGlmIChmaXJzdERvd25EaXIgPiAwICYmIGFyZ3Muc29tZSgocCwgaSkgPT4gcCA9PT0gJy4uJyAmJiBpID4gZmlyc3REb3duRGlyKSkge1xuICAgICAgICAgIC8vIEVSUk9SOiBUaGlzIHBhdGggb3NjaWxsYXRlcyBiZXR3ZWVuIHVwIGFuZCBkb3duIGNvbW1hbmRzXG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoeyBub2RlLCBtZXNzYWdlOiBgJHtyZWNyZWF0ZVBhdGgoYXJncyl9IGlzIG5vdCBhIHZhbGlkIHBhdGguIEl0IGdvZXMgYmFja3dhcmRzIGFuZCBmb3J3YXJkcyBhbmQgYmFja3dhcmRzIGFnYWluLCBhbmQgY2FuIGJlIHNpbXBsaWZpZWQuYCB9KTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFeGNsdWRlIHRoZSBjYXNlIHdoZXJlIHRoZXJlIGFyZSBubyAnLi4nIGF0IGFsbCBpbiB0aGUgcGF0aCAtLSB0aG9zZSBhcmUgbmV2ZXIgaW52YWxpZFxuICAgICAgICBjb25zdCBjdXJyZW50RmlsZSA9IGNvbnRleHQuZ2V0RmlsZW5hbWUoKTtcbiAgICAgICAgaWYgKGZpcnN0RG93bkRpciA+IDApIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGZpcnN0RG93bkRpcjsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBwakZpbGUgPSBwYXRoLmpvaW4oLi4uW3BhdGguZGlybmFtZShjdXJyZW50RmlsZSksIC4uLmFyZ3Muc2xpY2UoMCwgaSksICdwYWNrYWdlLmpzb24nXSk7XG4gICAgICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyhwakZpbGUpKSB7XG4gICAgICAgICAgICAgIC8vIEVSUk9SOiB0aGlzIHBhdGggd2lsbCBlbmQgdXAgZ29pbmcgb3V0IG9mIHRoZSBwYWNrYWdlLmpzb24gZGlyZWN0b3J5XG4gICAgICAgICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogYCR7cmVjcmVhdGVQYXRoKGFyZ3MpfSBpcyBub3QgYSB2YWxpZCBwYXRoLiBJdCBnb2VzIGJleW9uZCB0aGUgcGFyZW50IGxpYnJhcnkncyBwYWNrYWdlLmpzb24gZmlsZSBzbyB0aGUgZmlsZSBpdCBwb2ludHMgdG8gd2lsbCBub3QgYmUgYXZhaWxhYmxlIGFmdGVyIHRoZSBsaWJyYXJ5IGlzIHBhY2thZ2VkLmAgfSk7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICB9O1xufVxuIl19
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8taW52YWxpZC1wYXRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3J1bGVzL25vLWludmFsaWQtcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9DQSx3QkFzREM7QUExRkQsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUc3QixTQUFTLGtCQUFrQixDQUFDLElBQVM7O0lBQ25DLE9BQU8sQ0FDTCxDQUFBLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxRQUFRLDBDQUFFLElBQUksTUFBSyxNQUFNO1FBQ3RDLENBQUMsQ0FBQSxNQUFBLE1BQUEsTUFBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLFVBQVUsMENBQUUsTUFBTSwwQ0FBRSxNQUFNLDBDQUFFLElBQUksTUFBSyxNQUFNO2FBQ3pELE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxTQUFTLDBDQUFFLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLGVBQUMsT0FBQSxDQUFBLE1BQUEsTUFBQSxDQUFDLENBQUMsTUFBTSwwQ0FBRSxNQUFNLDBDQUFFLElBQUksTUFBSyxNQUFNLENBQUEsRUFBQSxDQUFDLENBQUEsQ0FBQyxDQUM3RSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsSUFBUztJQUNwQyxpRUFBaUU7SUFDakUsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0MsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxJQUFjO0lBQ2hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMs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QUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDO3dCQUM5RixJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQzs0QkFDMUIsdUVBQXVFOzRCQUN2RSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsMkpBQTJKLEVBQUUsQ0FBQyxDQUFDOzRCQUNwTixPQUFPO3dCQUNULENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBSdWxlIH0gZnJvbSAnZXNsaW50JztcblxuZnVuY3Rpb24gaXNQYXRoSm9pbkZ1bmNDYWxsKG5vZGU6IGFueSk6IGJvb2xlYW4ge1xuICByZXR1cm4gKFxuICAgIG5vZGUuY2FsbGVlPy5wcm9wZXJ0eT8ubmFtZSA9PT0gJ2pvaW4nICYmXG4gICAgKG5vZGUucGFyZW50Py5leHByZXNzaW9uPy5jYWxsZWU/Lm9iamVjdD8ubmFtZSA9PT0gJ3BhdGgnIHx8XG4gICAgbm9kZS5wYXJlbnQ/LmFyZ3VtZW50cz8uc29tZSgoYTogYW55KSA9PiBhLmNhbGxlZT8ub2JqZWN0Py5uYW1lID09PSAncGF0aCcpKVxuICApO1xufVxuXG5mdW5jdGlvbiBub0FyZ3VtZW50VmFyaWFibGVzKG5vZGU6IGFueSk6IGJvb2xlYW4ge1xuICAvLyBPdXRzaWRlIG9mIHRoZSBmaXJzdCBhcmd1bWVudCwgYWxsIGFyZ3VtZW50cyBzaG91bGQgYmUgc3RyaW5nc1xuICBjb25zdCBjb21wb25lbnRzID0gbm9kZS5hcmd1bWVudHMuc2xpY2UoMSk7XG4gIHJldHVybiBjb21wb25lbnRzLmV2ZXJ5KChhOiBhbnkpID0+IGEudmFsdWUgIT09IHVuZGVmaW5lZCk7XG59XG5cbmZ1bmN0aW9uIGhhc1NsYXNoZXMoYXJnczogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgcmV0dXJuIGFyZ3Muc29tZSgoYSkgPT4gYS5pbmNsdWRlcygnLycpKTtcbn1cblxuZnVuY3Rpb24gZmlyc3RBcmdJc0Rpcm5hbWUobm9kZTogYW55KTogYm9vbGVhbiB7XG4gIHJldHVybiBub2RlLmFyZ3VtZW50c1swXS5uYW1lICYmIG5vZGUuYXJndW1lbnRzWzBdLm5hbWUgPT09ICdfX2Rpcm5hbWUnO1xufVxuXG5mdW5jdGlvbiBhcmd1bWVudExpc3Qobm9kZTogYW55KTogc3RyaW5nW10ge1xuICAvLyBBbHJlYWR5IGNvbmZpcm1lZCB0aGF0IGZpcnN0IGFyZ3VtZW50IGlzICdfX2Rpcm5hbWUnLCBzbyBjYW4gc2FmZWx5IHJlbW92ZSBpdFxuICBjb25zdCBhcmdzOiBzdHJpbmdbXSA9IG5vZGUuYXJndW1lbnRzLnNsaWNlKDEpLm1hcCgoYTogYW55KSA9PiB7IHJldHVybiBhLnZhbHVlOyB9KTtcbiAgcmV0dXJuIGFyZ3M7XG59XG5cbmZ1bmN0aW9uIHJlY3JlYXRlUGF0aChhcmdzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gIHJldHVybiBgcGF0aC5qb2luKF9fZGlybmFtZSwgJyR7YXJncy5qb2luKCdcXCcsIFxcJycpfScpYDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZShjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0KTogUnVsZS5Ob2RlTGlzdGVuZXIge1xuICByZXR1cm4ge1xuICAgIENhbGxFeHByZXNzaW9uKG5vZGU6IGFueSkge1xuICAgICAgaWYgKGlzUGF0aEpvaW5GdW5jQ2FsbChub2RlKSkge1xuICAgICAgICBpZiAobm9kZS5hcmd1bWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgLy8gRVJST1I6IHRoaXMgaXMgJ3BhdGguam9pbigpJ1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogJ1xcJ3BhdGguam9pbigpXFwnIGlzIG5vdCBhIHZhbGlkIHBhdGguIFlvdSBtdXN0IHNwZWNpZnkgYXJndW1lbnRzIGludG8gdGhlIGZ1bmN0aW9uLicgfSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFub0FyZ3VtZW50VmFyaWFibGVzKG5vZGUpKSB7XG4gICAgICAgICAgLy8gV0FSTklORzogdW5leHBlY3RlZCBub24tc3RyaW5nIGluIHRoZSBhcmd1bWVudCBsaXN0LiBUaGlzIGhhcHBlbnMgaWYgcGFydCBvZiB0aGUgYXJndW1lbnQgbGlzdCBpcyBhIHZhcmlhYmxlLCBpLmUuIGBwYXRoLmpvaW4oX19kaXJuYW1lLCBteVBhdGgpYC5cbiAgICAgICAgICAvLyBXZSBtYXkgYmUgYWJsZSB0byBkbyBzb21ldGhpbmcgYWJvdXQgdGhpcywgYnV0IHdlIGN1cnJlbnRseSBhcmUganVzdCBnb2luZyB0byBsZXQgaXQgcGFzcy5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBXZSBjdXJyZW50bHkgZG8gbm90IGxpbnQgYW55IHBhdGguam9pbiB3aXRob3V0ICdfX2Rpcm5hbWUnIGFzIHRoZSBmaXJzdCBhcmd1bWVudFxuICAgICAgICBpZiAoIWZpcnN0QXJnSXNEaXJuYW1lKG5vZGUpKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXJncyA9IGFyZ3VtZW50TGlzdChub2RlKTtcblxuICAgICAgICBpZiAoaGFzU2xhc2hlcyhhcmdzKSkge1xuICAgICAgICAgIC8vIEVSUk9SOiBUaGlzIHBhdGggbG9va3MgbGlrZSAncGF0aC5qb2luKF9fZGlybmFtZSwgJ2EvYicpJyBhbmQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gJ3BhdGguam9pbihfX2Rpcm5hbWUsICdhJywgJ2InKSdcbiAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7IG5vZGUsIG1lc3NhZ2U6IGAke3JlY3JlYXRlUGF0aChhcmdzKX0gaXMgbm90IGEgdmFsaWQgcGF0aC4gSXQgaGFzICcvJyBpbiB0aGUgYXJndW1lbnRzIHdoaWNoIGlzIG5vdCBhbGxvd2VkLiBFYWNoIGRpcmVjdG9yeSBzaG91bGQgYmUgaXRzIG93biBzZXBhcmF0ZSBhcmd1bWVudC5gIH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpcnN0RG93bkRpciA9IGFyZ3MuZmluZEluZGV4KChwKSA9PiBwICE9PSAnLi4nKTtcblxuICAgICAgICAvLyBDb25maXJtIHBhdGggZG9lcyBub3QgaGF2ZSBhbnkgdW5uZWNlc3NhcnkgJy4uJyBwYXRoc1xuICAgICAgICAvLyBUaGlzIGFsbG93cyB1cyB0byB2YWxpZGF0ZSBzdWJzZXF1ZW50IGNoZWNrc1xuICAgICAgICBpZiAoZmlyc3REb3duRGlyID4gMCAmJiBhcmdzLnNvbWUoKHAsIGkpID0+IHAgPT09ICcuLicgJiYgaSA+IGZpcnN0RG93bkRpcikpIHtcbiAgICAgICAgICAvLyBFUlJPUjogVGhpcyBwYXRoIG9zY2lsbGF0ZXMgYmV0d2VlbiB1cCBhbmQgZG93biBjb21tYW5kc1xuICAgICAgICAgIGNvbnRleHQucmVwb3J0KHsgbm9kZSwgbWVzc2FnZTogYCR7cmVjcmVhdGVQYXRoKGFyZ3MpfSBpcyBub3QgYSB2YWxpZCBwYXRoLiBJdCBnb2VzIGJhY2t3YXJkcyBhbmQgZm9yd2FyZHMgYW5kIGJhY2t3YXJkcyBhZ2FpbiwgYW5kIGNhbiBiZSBzaW1wbGlmaWVkLmAgfSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRXhjbHVkZSB0aGUgY2FzZSB3aGVyZSB0aGVyZSBhcmUgbm8gJy4uJyBhdCBhbGwgaW4gdGhlIHBhdGggLS0gdGhvc2UgYXJlIG5ldmVyIGludmFsaWRcbiAgICAgICAgY29uc3QgY3VycmVudEZpbGUgPSBjb250ZXh0LmdldEZpbGVuYW1lKCk7XG4gICAgICAgIGlmIChmaXJzdERvd25EaXIgPiAwKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaXJzdERvd25EaXI7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgcGpGaWxlID0gcGF0aC5qb2luKC4uLltwYXRoLmRpcm5hbWUoY3VycmVudEZpbGUpLCAuLi5hcmdzLnNsaWNlKDAsIGkpLCAncGFja2FnZS5qc29uJ10pO1xuICAgICAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmMocGpGaWxlKSkge1xuICAgICAgICAgICAgICAvLyBFUlJPUjogdGhpcyBwYXRoIHdpbGwgZW5kIHVwIGdvaW5nIG91dCBvZiB0aGUgcGFja2FnZS5qc29uIGRpcmVjdG9yeVxuICAgICAgICAgICAgICBjb250ZXh0LnJlcG9ydCh7IG5vZGUsIG1lc3NhZ2U6IGAke3JlY3JlYXRlUGF0aChhcmdzKX0gaXMgbm90IGEgdmFsaWQgcGF0aC4gSXQgZ29lcyBiZXlvbmQgdGhlIHBhcmVudCBsaWJyYXJ5J3MgcGFja2FnZS5qc29uIGZpbGUgc28gdGhlIGZpbGUgaXQgcG9pbnRzIHRvIHdpbGwgbm90IGJlIGF2YWlsYWJsZSBhZnRlciB0aGUgbGlicmFyeSBpcyBwYWNrYWdlZC5gIH0pO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { Rule } from 'eslint';
2
+ export declare const meta: {
3
+ hasSuggestions: boolean;
4
+ };
5
+ export declare function create(context: Rule.RuleContext): Rule.NodeListener;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.meta = void 0;
4
+ exports.create = create;
5
+ exports.meta = {
6
+ hasSuggestions: true,
7
+ };
8
+ function create(context) {
9
+ return {
10
+ ThrowStatement(node) {
11
+ if (node.argument.type !== 'NewExpression') {
12
+ return;
13
+ }
14
+ const newExpr = node.argument;
15
+ if (newExpr.callee &&
16
+ newExpr.callee.type === 'Identifier' &&
17
+ newExpr.callee.name === 'Error') {
18
+ context.report({
19
+ node: newExpr,
20
+ message: 'Expected a non-default error object to be thrown.',
21
+ suggest: [
22
+ {
23
+ desc: 'Replace with `ValidationError`',
24
+ fix: (fixer) => {
25
+ var _a;
26
+ // no existing args
27
+ if (newExpr.arguments.length === 0) {
28
+ return fixer.replaceText(newExpr, "new ValidationError('<insert error message>', this)");
29
+ }
30
+ const fixes = [
31
+ fixer.replaceText(newExpr.callee, 'ValidationError'),
32
+ ];
33
+ const last = (_a = newExpr.arguments.at(-1)) === null || _a === void 0 ? void 0 : _a.range;
34
+ if (last) {
35
+ fixes.push(fixer.insertTextAfterRange(last, ', this'));
36
+ }
37
+ return fixes;
38
+ },
39
+ },
40
+ ],
41
+ });
42
+ }
43
+ },
44
+ };
45
+ }
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tdGhyb3ctZGVmYXVsdC1lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby10aHJvdy1kZWZhdWx0LWVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU9BLHdCQTRDQztBQWhEWSxRQUFBLElBQUksR0FBRztJQUNsQixjQUFjLEVBQUUsSUFBSTtDQUNyQixDQUFDO0FBRUYsU0FBZ0IsTUFBTSxDQUFDLE9BQXlCO0lBQzlDLE9BQU87UUFDTCxjQUFjLENBQUMsSUFBb0I7WUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUUsQ0FBQztnQkFDM0MsT0FBTztZQUNULENBQUM7WUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBeUIsQ0FBQztZQUMvQyxJQUNFLE9BQU8sQ0FBQyxNQUFNO2dCQUNkLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLFlBQVk7Z0JBQ3BDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFDL0IsQ0FBQztnQkFDRCxPQUFPLENBQUMsTUFBTSxDQUFDO29CQUNiLElBQUksRUFBRSxPQUFPO29CQUNiLE9BQU8sRUFBRSxtREFBbUQ7b0JBQzVELE9BQU8sRUFBRTt3QkFDUDs0QkFDRSxJQUFJLEVBQUUsZ0NBQWdDOzRCQUN0QyxHQUFHLEVBQUUsQ0FBQyxLQUFxQixFQUFFLEVBQUU7O2dDQUM3QixtQkFBbUI7Z0NBQ25CLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0NBQ25DLE9BQU8sS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUscURBQXFELENBQUMsQ0FBQztnQ0FDM0YsQ0FBQztnQ0FFRCxNQUFNLEtBQUssR0FBRztvQ0FDWixLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLENBQUM7aUNBQ3JELENBQUM7Z0NBRUYsTUFBTSxJQUFJLEdBQUcsTUFBQSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQywwQ0FBRSxLQUFLLENBQUM7Z0NBQzdDLElBQUksSUFBSSxFQUFFLENBQUM7b0NBQ1QsS0FBSyxDQUFDLElBQUksQ0FDUixLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUMzQyxDQUFDO2dDQUNKLENBQUM7Z0NBRUQsT0FBTyxLQUFLLENBQUM7NEJBQ2YsQ0FBQzt5QkFDRjtxQkFDRjtpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUnVsZSB9IGZyb20gJ2VzbGludCc7XG5pbXBvcnQgdHlwZSB7IE5ld0V4cHJlc3Npb24sIFRocm93U3RhdGVtZW50IH0gZnJvbSAnZXN0cmVlJztcblxuZXhwb3J0IGNvbnN0IG1ldGEgPSB7XG4gIGhhc1N1Z2dlc3Rpb25zOiB0cnVlLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZShjb250ZXh0OiBSdWxlLlJ1bGVDb250ZXh0KTogUnVsZS5Ob2RlTGlzdGVuZXIge1xuICByZXR1cm4ge1xuICAgIFRocm93U3RhdGVtZW50KG5vZGU6IFRocm93U3RhdGVtZW50KSB7XG4gICAgICBpZiAobm9kZS5hcmd1bWVudC50eXBlICE9PSAnTmV3RXhwcmVzc2lvbicpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBuZXdFeHByID0gbm9kZS5hcmd1bWVudCBhcyBOZXdFeHByZXNzaW9uO1xuICAgICAgaWYgKFxuICAgICAgICBuZXdFeHByLmNhbGxlZSAmJlxuICAgICAgICBuZXdFeHByLmNhbGxlZS50eXBlID09PSAnSWRlbnRpZmllcicgJiZcbiAgICAgICAgbmV3RXhwci5jYWxsZWUubmFtZSA9PT0gJ0Vycm9yJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KHtcbiAgICAgICAgICBub2RlOiBuZXdFeHByLFxuICAgICAgICAgIG1lc3NhZ2U6ICdFeHBlY3RlZCBhIG5vbi1kZWZhdWx0IGVycm9yIG9iamVjdCB0byBiZSB0aHJvd24uJyxcbiAgICAgICAgICBzdWdnZXN0OiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGRlc2M6ICdSZXBsYWNlIHdpdGggYFZhbGlkYXRpb25FcnJvcmAnLFxuICAgICAgICAgICAgICBmaXg6IChmaXhlcjogUnVsZS5SdWxlRml4ZXIpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBubyBleGlzdGluZyBhcmdzXG4gICAgICAgICAgICAgICAgaWYgKG5ld0V4cHIuYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpeGVyLnJlcGxhY2VUZXh0KG5ld0V4cHIsIFwibmV3IFZhbGlkYXRpb25FcnJvcignPGluc2VydCBlcnJvciBtZXNzYWdlPicsIHRoaXMpXCIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IGZpeGVzID0gW1xuICAgICAgICAgICAgICAgICAgZml4ZXIucmVwbGFjZVRleHQobmV3RXhwci5jYWxsZWUsICdWYWxpZGF0aW9uRXJyb3InKSxcbiAgICAgICAgICAgICAgICBdO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdCA9IG5ld0V4cHIuYXJndW1lbnRzLmF0KC0xKT8ucmFuZ2U7XG4gICAgICAgICAgICAgICAgaWYgKGxhc3QpIHtcbiAgICAgICAgICAgICAgICAgIGZpeGVzLnB1c2goXG4gICAgICAgICAgICAgICAgICAgIGZpeGVyLmluc2VydFRleHRBZnRlclJhbmdlKGxhc3QsICcsIHRoaXMnKSxcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZpeGVzO1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xufVxuIl19
package/package.json CHANGED
@@ -34,14 +34,15 @@
34
34
  "organization": true
35
35
  },
36
36
  "devDependencies": {
37
+ "@stylistic/eslint-plugin": "^2",
37
38
  "@types/eslint": "^8",
38
39
  "@types/estree": "^1.0.6",
39
40
  "@types/fs-extra": "^11.0.4",
40
- "@types/jest": "^29.5.13",
41
+ "@types/jest": "^29.5.14",
41
42
  "@types/node": "^18",
42
- "@typescript-eslint/eslint-plugin": "^7",
43
- "@typescript-eslint/parser": "^7",
44
- "cdklabs-projen-project-types": "^0.1.205",
43
+ "@typescript-eslint/eslint-plugin": "^8",
44
+ "@typescript-eslint/parser": "^8",
45
+ "cdklabs-projen-project-types": "^0.1.211",
45
46
  "commit-and-tag-version": "^12",
46
47
  "constructs": "^10.0.0",
47
48
  "eslint": "^8",
@@ -49,10 +50,10 @@
49
50
  "eslint-plugin-import": "^2.31.0",
50
51
  "jest": "^29.7.0",
51
52
  "jest-junit": "^15",
52
- "projen": "^0.88.0",
53
+ "projen": "^0.90.5",
53
54
  "ts-jest": "^29.2.5",
54
55
  "ts-node": "^10.9.2",
55
- "typescript": "^5.6.2"
56
+ "typescript": "^5.7.2"
56
57
  },
57
58
  "peerDependencies": {
58
59
  "@typescript-eslint/parser": "^7.18.0",
@@ -69,7 +70,7 @@
69
70
  "publishConfig": {
70
71
  "access": "public"
71
72
  },
72
- "version": "1.0.0",
73
+ "version": "1.1.0",
73
74
  "jest": {
74
75
  "coverageProvider": "v8",
75
76
  "testMatch": [