deployable-awscdk-app-ts 0.1.207 → 0.1.209

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.
Files changed (68) hide show
  1. package/.jsii +43 -22
  2. package/.projenrc.ts +3 -0
  3. package/API.md +16 -0
  4. package/lib/index.d.ts +1 -0
  5. package/lib/index.js +18 -2
  6. package/lib/types.d.ts +8 -0
  7. package/lib/types.js +1 -1
  8. package/node_modules/semver/LICENSE +15 -0
  9. package/node_modules/semver/README.md +637 -0
  10. package/node_modules/semver/bin/semver.js +197 -0
  11. package/node_modules/semver/classes/comparator.js +141 -0
  12. package/node_modules/semver/classes/index.js +5 -0
  13. package/node_modules/semver/classes/range.js +539 -0
  14. package/node_modules/semver/classes/semver.js +302 -0
  15. package/node_modules/semver/functions/clean.js +6 -0
  16. package/node_modules/semver/functions/cmp.js +52 -0
  17. package/node_modules/semver/functions/coerce.js +52 -0
  18. package/node_modules/semver/functions/compare-build.js +7 -0
  19. package/node_modules/semver/functions/compare-loose.js +3 -0
  20. package/node_modules/semver/functions/compare.js +5 -0
  21. package/node_modules/semver/functions/diff.js +65 -0
  22. package/node_modules/semver/functions/eq.js +3 -0
  23. package/node_modules/semver/functions/gt.js +3 -0
  24. package/node_modules/semver/functions/gte.js +3 -0
  25. package/node_modules/semver/functions/inc.js +19 -0
  26. package/node_modules/semver/functions/lt.js +3 -0
  27. package/node_modules/semver/functions/lte.js +3 -0
  28. package/node_modules/semver/functions/major.js +3 -0
  29. package/node_modules/semver/functions/minor.js +3 -0
  30. package/node_modules/semver/functions/neq.js +3 -0
  31. package/node_modules/semver/functions/parse.js +16 -0
  32. package/node_modules/semver/functions/patch.js +3 -0
  33. package/node_modules/semver/functions/prerelease.js +6 -0
  34. package/node_modules/semver/functions/rcompare.js +3 -0
  35. package/node_modules/semver/functions/rsort.js +3 -0
  36. package/node_modules/semver/functions/satisfies.js +10 -0
  37. package/node_modules/semver/functions/sort.js +3 -0
  38. package/node_modules/semver/functions/valid.js +6 -0
  39. package/node_modules/semver/index.js +89 -0
  40. package/node_modules/semver/internal/constants.js +35 -0
  41. package/node_modules/semver/internal/debug.js +9 -0
  42. package/node_modules/semver/internal/identifiers.js +23 -0
  43. package/node_modules/semver/internal/parse-options.js +15 -0
  44. package/node_modules/semver/internal/re.js +212 -0
  45. package/node_modules/semver/node_modules/lru-cache/LICENSE +15 -0
  46. package/node_modules/semver/node_modules/lru-cache/README.md +166 -0
  47. package/node_modules/semver/node_modules/lru-cache/index.js +334 -0
  48. package/node_modules/semver/node_modules/lru-cache/package.json +34 -0
  49. package/node_modules/semver/node_modules/yallist/LICENSE +15 -0
  50. package/node_modules/semver/node_modules/yallist/README.md +204 -0
  51. package/node_modules/semver/node_modules/yallist/iterator.js +8 -0
  52. package/node_modules/semver/node_modules/yallist/package.json +29 -0
  53. package/node_modules/semver/node_modules/yallist/yallist.js +426 -0
  54. package/node_modules/semver/package.json +87 -0
  55. package/node_modules/semver/preload.js +2 -0
  56. package/node_modules/semver/range.bnf +16 -0
  57. package/node_modules/semver/ranges/gtr.js +4 -0
  58. package/node_modules/semver/ranges/intersects.js +7 -0
  59. package/node_modules/semver/ranges/ltr.js +4 -0
  60. package/node_modules/semver/ranges/max-satisfying.js +25 -0
  61. package/node_modules/semver/ranges/min-satisfying.js +24 -0
  62. package/node_modules/semver/ranges/min-version.js +61 -0
  63. package/node_modules/semver/ranges/outside.js +80 -0
  64. package/node_modules/semver/ranges/simplify.js +47 -0
  65. package/node_modules/semver/ranges/subset.js +247 -0
  66. package/node_modules/semver/ranges/to-comparators.js +8 -0
  67. package/node_modules/semver/ranges/valid.js +11 -0
  68. package/package.json +6 -2
package/.jsii CHANGED
@@ -6,6 +6,9 @@
6
6
  "author"
7
7
  ]
8
8
  },
9
+ "bundled": {
10
+ "semver": "^7.5.4"
11
+ },
9
12
  "dependencies": {
10
13
  "projen": "^0.72.1"
11
14
  },
@@ -96,7 +99,7 @@
96
99
  "kind": "interface",
97
100
  "locationInModule": {
98
101
  "filename": "src/types.ts",
99
- "line": 89
102
+ "line": 98
100
103
  },
101
104
  "name": "AWSCredentials",
102
105
  "properties": [
@@ -110,7 +113,7 @@
110
113
  "immutable": true,
111
114
  "locationInModule": {
112
115
  "filename": "src/types.ts",
113
- "line": 117
116
+ "line": 126
114
117
  },
115
118
  "name": "region",
116
119
  "type": {
@@ -127,7 +130,7 @@
127
130
  "immutable": true,
128
131
  "locationInModule": {
129
132
  "filename": "src/types.ts",
130
- "line": 94
133
+ "line": 103
131
134
  },
132
135
  "name": "accessKeyIdSecretName",
133
136
  "optional": true,
@@ -145,7 +148,7 @@
145
148
  "immutable": true,
146
149
  "locationInModule": {
147
150
  "filename": "src/types.ts",
148
- "line": 111
151
+ "line": 120
149
152
  },
150
153
  "name": "assumeRoleDurationSeconds",
151
154
  "optional": true,
@@ -162,7 +165,7 @@
162
165
  "immutable": true,
163
166
  "locationInModule": {
164
167
  "filename": "src/types.ts",
165
- "line": 105
168
+ "line": 114
166
169
  },
167
170
  "name": "roleToAssume",
168
171
  "optional": true,
@@ -180,7 +183,7 @@
180
183
  "immutable": true,
181
184
  "locationInModule": {
182
185
  "filename": "src/types.ts",
183
- "line": 100
186
+ "line": 109
184
187
  },
185
188
  "name": "secretAccessKeySecretName",
186
189
  "optional": true,
@@ -226,6 +229,24 @@
226
229
  }
227
230
  }
228
231
  },
232
+ {
233
+ "abstract": true,
234
+ "docs": {
235
+ "default": "undefined",
236
+ "stability": "stable",
237
+ "summary": "Name of the environment variable used to set the deploy environment name."
238
+ },
239
+ "immutable": true,
240
+ "locationInModule": {
241
+ "filename": "src/types.ts",
242
+ "line": 54
243
+ },
244
+ "name": "environmentVariableName",
245
+ "optional": true,
246
+ "type": {
247
+ "primitive": "string"
248
+ }
249
+ },
229
250
  {
230
251
  "abstract": true,
231
252
  "docs": {
@@ -237,7 +258,7 @@
237
258
  "immutable": true,
238
259
  "locationInModule": {
239
260
  "filename": "src/types.ts",
240
- "line": 58
261
+ "line": 67
241
262
  },
242
263
  "name": "method",
243
264
  "optional": true,
@@ -249,14 +270,14 @@
249
270
  "abstract": true,
250
271
  "docs": {
251
272
  "default": "undefined",
252
- "remarks": "if not provided will not set",
273
+ "remarks": "Does not support node versions above 18.\n\nif not provided will not set",
253
274
  "stability": "stable",
254
275
  "summary": "npm config name to set as the environment name This might be useful in deployment process."
255
276
  },
256
277
  "immutable": true,
257
278
  "locationInModule": {
258
279
  "filename": "src/types.ts",
259
- "line": 45
280
+ "line": 47
260
281
  },
261
282
  "name": "npmConfigEnvironment",
262
283
  "optional": true,
@@ -293,7 +314,7 @@
293
314
  "immutable": true,
294
315
  "locationInModule": {
295
316
  "filename": "src/types.ts",
296
- "line": 52
317
+ "line": 61
297
318
  },
298
319
  "name": "taskToRunPreInstall",
299
320
  "optional": true,
@@ -317,7 +338,7 @@
317
338
  },
318
339
  "locationInModule": {
319
340
  "filename": "src/index.ts",
320
- "line": 23
341
+ "line": 24
321
342
  },
322
343
  "parameters": [
323
344
  {
@@ -331,7 +352,7 @@
331
352
  "kind": "class",
332
353
  "locationInModule": {
333
354
  "filename": "src/index.ts",
334
- "line": 9
355
+ "line": 10
335
356
  },
336
357
  "methods": [
337
358
  {
@@ -340,7 +361,7 @@
340
361
  },
341
362
  "locationInModule": {
342
363
  "filename": "src/index.ts",
343
- "line": 66
364
+ "line": 81
344
365
  },
345
366
  "name": "addEnvironments",
346
367
  "parameters": [
@@ -362,7 +383,7 @@
362
383
  },
363
384
  "locationInModule": {
364
385
  "filename": "src/index.ts",
365
- "line": 54
386
+ "line": 69
366
387
  },
367
388
  "name": "synth",
368
389
  "overrides": "projen.Project"
@@ -378,7 +399,7 @@
378
399
  "immutable": true,
379
400
  "locationInModule": {
380
401
  "filename": "src/index.ts",
381
- "line": 14
402
+ "line": 15
382
403
  },
383
404
  "name": "deployWorkflowTask",
384
405
  "type": {
@@ -472,7 +493,7 @@
472
493
  "kind": "interface",
473
494
  "locationInModule": {
474
495
  "filename": "src/types.ts",
475
- "line": 61
496
+ "line": 70
476
497
  },
477
498
  "name": "EnvironmentOptions",
478
499
  "properties": [
@@ -485,7 +506,7 @@
485
506
  "immutable": true,
486
507
  "locationInModule": {
487
508
  "filename": "src/types.ts",
488
- "line": 70
509
+ "line": 79
489
510
  },
490
511
  "name": "awsCredentials",
491
512
  "type": {
@@ -501,7 +522,7 @@
501
522
  "immutable": true,
502
523
  "locationInModule": {
503
524
  "filename": "src/types.ts",
504
- "line": 65
525
+ "line": 74
505
526
  },
506
527
  "name": "name",
507
528
  "type": {
@@ -518,7 +539,7 @@
518
539
  "immutable": true,
519
540
  "locationInModule": {
520
541
  "filename": "src/types.ts",
521
- "line": 78
542
+ "line": 87
522
543
  },
523
544
  "name": "postDeployWorkflowScript",
524
545
  "optional": true,
@@ -536,7 +557,7 @@
536
557
  "immutable": true,
537
558
  "locationInModule": {
538
559
  "filename": "src/types.ts",
539
- "line": 86
560
+ "line": 95
540
561
  },
541
562
  "name": "preDeployWorkflowScript",
542
563
  "optional": true,
@@ -548,6 +569,6 @@
548
569
  "symbolId": "src/types:EnvironmentOptions"
549
570
  }
550
571
  },
551
- "version": "0.1.207",
552
- "fingerprint": "hEEQYuJEXEkzjWnDAMgEr51wG4WYL9yDUM1LIrzn1cQ="
572
+ "version": "0.1.209",
573
+ "fingerprint": "kP8/0Ey5LZRdML4DKY38dzNEbrtIrgUTvfNbO+bt9Mc="
553
574
  }
package/.projenrc.ts CHANGED
@@ -21,6 +21,9 @@ const project = new cdk.JsiiProject({
21
21
  deps: [
22
22
  'projen',
23
23
  ],
24
+ bundledDeps: [
25
+ 'semver',
26
+ ],
24
27
  peerDeps: [
25
28
  'projen',
26
29
  ],
package/API.md CHANGED
@@ -2663,6 +2663,7 @@ const deployOptions: DeployOptions = { ... }
2663
2663
  | **Name** | **Type** | **Description** |
2664
2664
  | --- | --- | --- |
2665
2665
  | <code><a href="#deployable-awscdk-app-ts.DeployOptions.property.environments">environments</a></code> | <code><a href="#deployable-awscdk-app-ts.EnvironmentOptions">EnvironmentOptions</a>[]</code> | Environment settings to deploy to. |
2666
+ | <code><a href="#deployable-awscdk-app-ts.DeployOptions.property.environmentVariableName">environmentVariableName</a></code> | <code>string</code> | Name of the environment variable used to set the deploy environment name. |
2666
2667
  | <code><a href="#deployable-awscdk-app-ts.DeployOptions.property.method">method</a></code> | <code>string</code> | How to perform the deployment. |
2667
2668
  | <code><a href="#deployable-awscdk-app-ts.DeployOptions.property.npmConfigEnvironment">npmConfigEnvironment</a></code> | <code>string</code> | npm config name to set as the environment name This might be useful in deployment process. |
2668
2669
  | <code><a href="#deployable-awscdk-app-ts.DeployOptions.property.stackPattern">stackPattern</a></code> | <code>string</code> | Regex for stacks to be deployed. |
@@ -2682,6 +2683,19 @@ Environment settings to deploy to.
2682
2683
 
2683
2684
  ---
2684
2685
 
2686
+ ##### `environmentVariableName`<sup>Optional</sup> <a name="environmentVariableName" id="deployable-awscdk-app-ts.DeployOptions.property.environmentVariableName"></a>
2687
+
2688
+ ```typescript
2689
+ public readonly environmentVariableName: string;
2690
+ ```
2691
+
2692
+ - *Type:* string
2693
+ - *Default:* undefined
2694
+
2695
+ Name of the environment variable used to set the deploy environment name.
2696
+
2697
+ ---
2698
+
2685
2699
  ##### `method`<sup>Optional</sup> <a name="method" id="deployable-awscdk-app-ts.DeployOptions.property.method"></a>
2686
2700
 
2687
2701
  ```typescript
@@ -2708,6 +2722,8 @@ public readonly npmConfigEnvironment: string;
2708
2722
 
2709
2723
  npm config name to set as the environment name This might be useful in deployment process.
2710
2724
 
2725
+ Does not support node versions above 18.
2726
+
2711
2727
  if not provided will not set
2712
2728
 
2713
2729
  ---
package/lib/index.d.ts CHANGED
@@ -13,6 +13,7 @@ export declare class DeployableAwsCdkTypeScriptApp extends awscdk.AwsCdkTypeScri
13
13
  private readonly deployOptions;
14
14
  private readonly codeArtifactOptions?;
15
15
  constructor(options: DeployableAwsCdkTypeScriptAppOptions);
16
+ private getMajorNodeVersion;
16
17
  private getMethodArgument;
17
18
  synth(): void;
18
19
  addEnvironments(...items: EnvironmentOptions[]): void;
package/lib/index.js CHANGED
@@ -20,6 +20,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
20
20
  const projen_1 = require("projen");
21
21
  const workflows_model_1 = require("projen/lib/github/workflows-model");
22
22
  const javascript_1 = require("projen/lib/javascript");
23
+ const semver = require("semver");
23
24
  const steps = require("./steps");
24
25
  __exportStar(require("./types"), exports);
25
26
  class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp {
@@ -40,12 +41,23 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
40
41
  this.logger.warn('The project is explicitly set to not release, make sure this is desired setting');
41
42
  if (this.generateNvmrc && !this.workflowNodeVersion)
42
43
  this.workflowNodeVersion = '14.18.1';
44
+ const majorNodeVersion = this.getMajorNodeVersion(this.nodeVersion);
45
+ if (this.deployOptions.npmConfigEnvironment && majorNodeVersion >= 18)
46
+ throw new Error(`npmConfigEnvironment is not supported for node versions above version 18. Current version is ${this.nodeVersion}`);
43
47
  const deployArgument = this.deployOptions.stackPattern ? ` ${this.deployOptions.stackPattern}` : '';
44
48
  this.deployWorkflowTask = this.addTask('deploy:workflow', {
45
49
  requiredEnv: this.deployOptions.npmConfigEnvironment ? [`npm_config_${this.deployOptions.npmConfigEnvironment}`] : undefined,
46
50
  exec: `cdk deploy${deployArgument} ${this.getMethodArgument()} --require-approval never`,
47
51
  });
48
52
  }
53
+ getMajorNodeVersion(nodeVersion) {
54
+ if (!nodeVersion)
55
+ return 16;
56
+ const parsed = semver.coerce(nodeVersion);
57
+ if (!parsed)
58
+ throw new Error(`Could not parse node version ${nodeVersion}`);
59
+ return parsed.major;
60
+ }
49
61
  getMethodArgument() {
50
62
  return `--method ${this.deployOptions.method ?? 'change-set'}`;
51
63
  }
@@ -88,6 +100,9 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
88
100
  ...assumeRoleSettings,
89
101
  };
90
102
  });
103
+ const deployJobEnv = this.deployOptions.environmentVariableName ? {
104
+ [this.deployOptions.environmentVariableName]: '${{ matrix.environment }}',
105
+ } : undefined;
91
106
  const jobDefinition = {
92
107
  runsOn: ['ubuntu-latest'],
93
108
  concurrency: '${{ matrix.environment }}-deploy',
@@ -111,6 +126,7 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
111
126
  environment: {
112
127
  name: '${{ matrix.environment }}',
113
128
  },
129
+ env: deployJobEnv,
114
130
  steps: [],
115
131
  };
116
132
  jobDefinition.steps.push(steps.checkoutStep());
@@ -131,5 +147,5 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
131
147
  }
132
148
  exports.DeployableAwsCdkTypeScriptApp = DeployableAwsCdkTypeScriptApp;
133
149
  _a = JSII_RTTI_SYMBOL_1;
134
- DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.207" };
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUE2QztBQUM3Qyx1RUFBb0U7QUFDcEUsc0RBQWdHO0FBQ2hHLGlDQUFnQztBQUdoQywwQ0FBdUI7QUFFdkIsTUFBYSw2QkFBOEIsU0FBUSxlQUFNLENBQUMsbUJBQW1CO0lBYzNFLFlBQVksT0FBNkM7UUFDdkQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUE7UUFDMUMsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsT0FBTyxFQUFFLFVBQVU7U0FDcEIsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQTtRQUNsRCxJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixJQUFJLEtBQUssQ0FBQTtRQUNuRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFBO1FBQ3RELElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsSUFBSSxFQUFDLFlBQVksRUFBRSxFQUFFLEVBQUMsQ0FBQTtRQUNoRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFBO1FBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQTtRQUUzQyxJQUFJLENBQUMsVUFBVTtZQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlGQUFpRixDQUFDLENBQUE7UUFFckcsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtZQUNqRCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsU0FBUyxDQUFBO1FBRXRDLE1B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QWhKSCxzRUFpSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2F3c2NkaywgVGFzaywgVGV4dEZpbGV9IGZyb20gJ3Byb2plbidcbmltcG9ydCB7Sm9iLCBKb2JQZXJtaXNzaW9ufSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnXG5pbXBvcnQge0NvZGVBcnRpZmFjdEF1dGhQcm92aWRlciwgQ29kZUFydGlmYWN0T3B0aW9ucywgTm9kZVByb2plY3R9IGZyb20gJ3Byb2plbi9saWIvamF2YXNjcmlwdCdcbmltcG9ydCAqIGFzIHN0ZXBzIGZyb20gJy4vc3RlcHMnXG5pbXBvcnQge0RlcGxveWFibGVBd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucywgRGVwbG95T3B0aW9ucywgRW52aXJvbm1lbnRPcHRpb25zfSBmcm9tICcuL3R5cGVzJ1xuXG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJ1xuXG5leHBvcnQgY2xhc3MgRGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHAgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG5cbiAgLyoqXG4gICAqIFRhc2sgdG8gZGVwbG95IHlvdXIgYXBwLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlcGxveVdvcmtmbG93VGFzazogVGFza1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVwbG95YWJsZTogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IGdlbmVyYXRlTnZtcmM6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSBjaGVja0FjdGl2ZURlcGxveW1lbnQ6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvd05vZGVWZXJzaW9uPzogc3RyaW5nXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVwbG95T3B0aW9uczogRGVwbG95T3B0aW9uc1xuICBwcml2YXRlIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBDb2RlQXJ0aWZhY3RPcHRpb25zXG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogRGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zKSB7XG4gICAgY29uc3QgZGVwbG95YWJsZSA9IG9wdGlvbnMucmVsZWFzZSA/PyB0cnVlXG4gICAgc3VwZXIoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHJlbGVhc2U6IGRlcGxveWFibGUsXG4gICAgfSlcbiAgICB0aGlzLmRlcGxveWFibGUgPSBkZXBsb3lhYmxlXG4gICAgdGhpcy5nZW5lcmF0ZU52bXJjID0gb3B0aW9ucy5nZW5lcmF0ZU52bXJjID8/IHRydWVcbiAgICB0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCA9IG9wdGlvbnMuY2hlY2tBY3RpdmVEZXBsb3ltZW50ID8/IGZhbHNlXG4gICAgdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID0gb3B0aW9ucy53b3JrZmxvd05vZGVWZXJzaW9uXG4gICAgdGhpcy5kZXBsb3lPcHRpb25zID0gb3B0aW9ucy5kZXBsb3lPcHRpb25zID8/IHtlbnZpcm9ubWVudHM6IFtdfVxuICAgIHRoaXMuY29kZUFydGlmYWN0T3B0aW9ucyA9IG9wdGlvbnMuY29kZUFydGlmYWN0T3B0aW9uc1xuICAgIHRoaXMuYWRkRGV2RGVwcygnZGVwbG95YWJsZS1hd3NjZGstYXBwLXRzJylcblxuICAgIGlmICghZGVwbG95YWJsZSlcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ1RoZSBwcm9qZWN0IGlzIGV4cGxpY2l0bHkgc2V0IHRvIG5vdCByZWxlYXNlLCBtYWtlIHN1cmUgdGhpcyBpcyBkZXNpcmVkIHNldHRpbmcnKVxuXG4gICAgaWYgKHRoaXMuZ2VuZXJhdGVOdm1yYyAmJiAhdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uKVxuICAgICAgdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID0gJzE0LjE4LjEnXG5cbiAgICBjb25zdCBkZXBsb3lBcmd1bWVudCA9IHRoaXMuZGVwbG95T3B0aW9ucy5zdGFja1BhdHRlcm4gPyBgICR7dGhpcy5kZXBsb3lPcHRpb25zLnN0YWNrUGF0dGVybn1gOiAnJ1xuICAgIHRoaXMuZGVwbG95V29ya2Zsb3dUYXNrID0gdGhpcy5hZGRUYXNrKCdkZXBsb3k6d29ya2Zsb3cnLCB7XG4gICAgICByZXF1aXJlZEVudjogdGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50ID8gW2BucG1fY29uZmlnXyR7dGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50fWBdIDogdW5kZWZpbmVkLFxuICAgICAgZXhlYzogYGNkayBkZXBsb3kke2RlcGxveUFyZ3VtZW50fSAke3RoaXMuZ2V0TWV0aG9kQXJndW1lbnQoKX0gLS1yZXF1aXJlLWFwcHJvdmFsIG5ldmVyYCxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZXRob2RBcmd1bWVudCgpIHtcbiAgICByZXR1cm4gYC0tbWV0aG9kICR7dGhpcy5kZXBsb3lPcHRpb25zLm1ldGhvZCA/PyAnY2hhbmdlLXNldCd9YFxuICB9XG5cbiAgc3ludGgoKSB7XG4gICAgaWYgKHRoaXMuZGVwbG95YWJsZSlcbiAgICAgIHRoaXMuYWRkRGVwbG95Sm9icygpXG5cbiAgICBpZiAodGhpcy5nZW5lcmF0ZU52bXJjKVxuICAgICAgbmV3IFRleHRGaWxlKHRoaXMsICcubnZtcmMnLCB7XG4gICAgICAgIGxpbmVzOiBbdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID8/ICcnXSxcbiAgICAgIH0pXG5cbiAgICBzdXBlci5zeW50aCgpXG4gIH1cblxuICBhZGRFbnZpcm9ubWVudHMoLi4uaXRlbXM6IEVudmlyb25tZW50T3B0aW9uc1tdKSB7XG4gICAgdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5wdXNoKC4uLml0ZW1zKVxuICB9XG5cbiAgcHJpdmF0ZSBhZGREZXBsb3lKb2JzKCkge1xuXG4gICAgaWYgKHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudHMubGVuZ3RoID09PSAwKVxuICAgICAgdGhpcy5sb2dnZXIud2FybignVGhlIHByb2plY3QgZG9lcyBub3QgaGF2ZSBhbnkgZW52aXJvbm1lbnQgc2V0LCBtYWtlIHN1cmUgdGhpcyBpcyBkZXNpcmVkIHNldHRpbmcnKVxuXG4gICAgY29uc3QgaW5jbHVkZSA9IHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudHMubWFwKGVudmlyb25tZW50T3B0aW9ucyA9PiB7XG4gICAgICBjb25zdCB7YXdzQ3JlZGVudGlhbHN9ID0gZW52aXJvbm1lbnRPcHRpb25zXG5cbiAgICAgIGNvbnN0IGFzc3VtZVJvbGUgPSBhd3NDcmVkZW50aWFscy5yb2xlVG9Bc3N1bWUgPyAndHJ1ZScgOiAnZmFsc2UnXG5cbiAgICAgIGNvbnN0IGFzc3VtZVJvbGVTZXR0aW5ncyA9IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSA/IHtcbiAgICAgICAgcm9sZVRvQXNzdW1lOiBhd3NDcmVkZW50aWFscy5yb2xlVG9Bc3N1bWUsXG4gICAgICAgIGFzc3VtZVJvbGVEdXJhdGlvblNlY29uZHM6IGF3c0NyZWRlbnRpYWxzLmFzc3VtZVJvbGVEdXJhdGlvblNlY29uZHMgfHwgOTAwLFxuICAgICAgfTogdW5kZWZpbmVkXG5cbiAgICAgIGNvbnN0IGFjY2Vzc0tleUlkU2VjcmV0TmFtZSA9IGF3c0NyZWRlbnRpYWxzLmFjY2Vzc0tleUlkU2VjcmV0TmFtZSA/PyAnQVdTX0FDQ0VTU19LRVlfSUQnXG4gICAgICBjb25zdCBzZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lID0gYXdzQ3JlZGVudGlhbHMuc2VjcmV0QWNjZXNzS2V5U2VjcmV0TmFtZSA/PyAnQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZJ1xuXG4gICAgICBjb25zdCBoYXNQb3N0RGVwbG95VGFzayA9IGVudmlyb25tZW50T3B0aW9ucy5wb3N0RGVwbG95V29ya2Zsb3dTY3JpcHQgPyAndHJ1ZScgOiAnZmFsc2UnXG4gICAgICBjb25zdCBoYXNQcmVEZXBsb3lUYXNrID0gZW52aXJvbm1lbnRPcHRpb25zLnByZURlcGxveVdvcmtmbG93U2NyaXB0ID8gJ3RydWUnIDogJ2ZhbHNlJ1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBlbnZpcm9ubWVudDogZW52aXJvbm1lbnRPcHRpb25zLm5hbWUsXG4gICAgICAgIGFjY2Vzc0tleUlkU2VjcmV0TmFtZSxcbiAgICAgICAgc2VjcmV0QWNjZXNzS2V5U2VjcmV0TmFtZSxcbiAgICAgICAgcmVnaW9uOiBhd3NDcmVkZW50aWFscy5yZWdpb24sXG4gICAgICAgIGFzc3VtZVJvbGUsXG4gICAgICAgIGhhc1Bvc3REZXBsb3lUYXNrLFxuICAgICAgICBwb3N0RGVwbG95bWVudFNjcmlwdDogZW52aXJvbm1lbnRPcHRpb25zLnBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdCB8fCAnJyxcbiAgICAgICAgaGFzUHJlRGVwbG95VGFzayxcbiAgICAgICAgcHJlRGVwbG95bWVudFNjcmlwdDogZW52aXJvbm1lbnRPcHRpb25zLnByZURlcGxveVdvcmtmbG93U2NyaXB0IHx8ICcnLFxuICAgICAgICAuLi5hc3N1bWVSb2xlU2V0dGluZ3MsXG4gICAgICB9XG4gICAgfSlcblxuICAgIGNvbnN0IGpvYkRlZmluaXRpb246IEpvYiA9IHtcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBjb25jdXJyZW5jeTogJyR7eyBtYXRyaXguZW52aXJvbm1lbnQgfX0tZGVwbG95JyxcbiAgICAgIG5lZWRzOiBbXG4gICAgICAgICdyZWxlYXNlX2dpdGh1YicsXG4gICAgICBdLFxuICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgY29udGVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgZGVwbG95bWVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgaWRUb2tlbjogdGhpcy5jb2RlQXJ0aWZhY3RPcHRpb25zPy5hdXRoUHJvdmlkZXIgPT09IENvZGVBcnRpZmFjdEF1dGhQcm92aWRlci5HSVRIVUJfT0lEQyA/IEpvYlBlcm1pc3Npb24uV1JJVEUgOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgICAgc3RyYXRlZ3k6IHtcbiAgICAgICAgbWF4UGFyYWxsZWw6IDEsXG4gICAgICAgIG1hdHJpeDoge1xuICAgICAgICAgIGRvbWFpbjoge1xuICAgICAgICAgICAgZW52aXJvbm1lbnQ6IGluY2x1ZGUubWFwKGUgPT4gZS5lbnZpcm9ubWVudCksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpbmNsdWRlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIG5hbWU6ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JyxcbiAgICAgIH0sXG4gICAgICBzdGVwczogW10sXG4gICAgfVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrb3V0U3RlcCgpKVxuXG4gICAgY29uc3Qge3Rhc2tUb1J1blByZUluc3RhbGx9ID0gdGhpcy5kZXBsb3lPcHRpb25zXG4gICAgaWYgKHRhc2tUb1J1blByZUluc3RhbGwpXG4gICAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucHJlSW5zdGFsbERlcGVuZGVuY2llc1N0ZXAodGFza1RvUnVuUHJlSW5zdGFsbCwgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKC4uLih0aGlzLnBhY2thZ2UucHJvamVjdCBhcyBOb2RlUHJvamVjdCkucmVuZGVyV29ya2Zsb3dTZXR1cCgpKVxuXG4gICAgaWYgKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrQWN0aXZlRGVwbG95bWVudFN0ZXAoKSlcblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaCguLi5zdGVwcy5zZXRBd3NDcmVkZW50aWFsc1N0ZXBzKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnM/LmF1dGhQcm92aWRlcikpXG5cbiAgICBpZiAodGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnNldE5wbUNvbmZpZyh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQsICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JywgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnByZURlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5kZXBsb3ltZW50U3RlcCh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5wYWNrYWdlLnBhY2thZ2VNYW5hZ2VyKSlcbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucG9zdERlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuXG4gICAgdGhpcy5yZWxlYXNlPy5hZGRKb2JzKHtkZXBsb3k6IGpvYkRlZmluaXRpb259KVxuXG4gIH1cbn0iXX0=
150
+ DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.209" };
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUE2QztBQUM3Qyx1RUFBb0U7QUFDcEUsc0RBQWdHO0FBQ2hHLGlDQUFnQztBQUNoQyxpQ0FBZ0M7QUFHaEMsMENBQXVCO0FBRXZCLE1BQWEsNkJBQThCLFNBQVEsZUFBTSxDQUFDLG1CQUFtQjtJQWMzRSxZQUFZLE9BQTZDO1FBQ3ZELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFBO1FBQzFDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLE9BQU8sRUFBRSxVQUFVO1NBQ3BCLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFBO1FBQzVCLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUE7UUFDbEQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsSUFBSSxLQUFLLENBQUE7UUFDbkUsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQTtRQUN0RCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksRUFBQyxZQUFZLEVBQUUsRUFBRSxFQUFDLENBQUE7UUFDaEUsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQTtRQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFFM0MsSUFBSSxDQUFDLFVBQVU7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxpRkFBaUYsQ0FBQyxDQUFBO1FBRXJHLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFDakQsSUFBSSxDQUFDLG1CQUFtQixHQUFHLFNBQVMs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N0gsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQjtZQUN6QyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLEVBQUUsMkJBQTJCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQTtRQUVoSixhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQTtRQUMxRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUE7UUFDdkcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUE7UUFFM0csSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsRUFBQyxNQUFNLEVBQUUsYUFBYSxFQUFDLENBQUMsQ0FBQTtJQUVoRCxDQUFDOztBQW5LSCxzRUFvS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2F3c2NkaywgVGFzaywgVGV4dEZpbGV9IGZyb20gJ3Byb2plbidcbmltcG9ydCB7Sm9iLCBKb2JQZXJtaXNzaW9ufSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnXG5pbXBvcnQge0NvZGVBcnRpZmFjdEF1dGhQcm92aWRlciwgQ29kZUFydGlmYWN0T3B0aW9ucywgTm9kZVByb2plY3R9IGZyb20gJ3Byb2plbi9saWIvamF2YXNjcmlwdCdcbmltcG9ydCAqIGFzIHNlbXZlciBmcm9tICdzZW12ZXInXG5pbXBvcnQgKiBhcyBzdGVwcyBmcm9tICcuL3N0ZXBzJ1xuaW1wb3J0IHtEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMsIERlcGxveU9wdGlvbnMsIEVudmlyb25tZW50T3B0aW9uc30gZnJvbSAnLi90eXBlcydcblxuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcblxuZXhwb3J0IGNsYXNzIERlcGxveWFibGVBd3NDZGtUeXBlU2NyaXB0QXBwIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHAge1xuXG4gIC8qKlxuICAgKiBUYXNrIHRvIGRlcGxveSB5b3VyIGFwcC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkZXBsb3lXb3JrZmxvd1Rhc2s6IFRhc2tcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlcGxveWFibGU6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSBnZW5lcmF0ZU52bXJjOiBib29sZWFuXG4gIHByaXZhdGUgcmVhZG9ubHkgY2hlY2tBY3RpdmVEZXBsb3ltZW50OiBib29sZWFuXG4gIHByaXZhdGUgcmVhZG9ubHkgd29ya2Zsb3dOb2RlVmVyc2lvbj86IHN0cmluZ1xuICBwcml2YXRlIHJlYWRvbmx5IGRlcGxveU9wdGlvbnM6IERlcGxveU9wdGlvbnNcbiAgcHJpdmF0ZSByZWFkb25seSBjb2RlQXJ0aWZhY3RPcHRpb25zPzogQ29kZUFydGlmYWN0T3B0aW9uc1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IERlcGxveWFibGVBd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucykge1xuICAgIGNvbnN0IGRlcGxveWFibGUgPSBvcHRpb25zLnJlbGVhc2UgPz8gdHJ1ZVxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICByZWxlYXNlOiBkZXBsb3lhYmxlLFxuICAgIH0pXG4gICAgdGhpcy5kZXBsb3lhYmxlID0gZGVwbG95YWJsZVxuICAgIHRoaXMuZ2VuZXJhdGVOdm1yYyA9IG9wdGlvbnMuZ2VuZXJhdGVOdm1yYyA/PyB0cnVlXG4gICAgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQgPSBvcHRpb25zLmNoZWNrQWN0aXZlRGVwbG95bWVudCA/PyBmYWxzZVxuICAgIHRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbiA9IG9wdGlvbnMud29ya2Zsb3dOb2RlVmVyc2lvblxuICAgIHRoaXMuZGVwbG95T3B0aW9ucyA9IG9wdGlvbnMuZGVwbG95T3B0aW9ucyA/PyB7ZW52aXJvbm1lbnRzOiBbXX1cbiAgICB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnMgPSBvcHRpb25zLmNvZGVBcnRpZmFjdE9wdGlvbnNcbiAgICB0aGlzLmFkZERldkRlcHMoJ2RlcGxveWFibGUtYXdzY2RrLWFwcC10cycpXG5cbiAgICBpZiAoIWRlcGxveWFibGUpXG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdUaGUgcHJvamVjdCBpcyBleHBsaWNpdGx5IHNldCB0byBub3QgcmVsZWFzZSwgbWFrZSBzdXJlIHRoaXMgaXMgZGVzaXJlZCBzZXR0aW5nJylcblxuICAgIGlmICh0aGlzLmdlbmVyYXRlTnZtcmMgJiYgIXRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbilcbiAgICAgIHRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbiA9ICcxNC4xOC4xJ1xuXG4gICAgY29uc3QgbWFqb3JOb2RlVmVyc2lvbiA9IHRoaXMuZ2V0TWFqb3JOb2RlVmVyc2lvbih0aGlzLm5vZGVWZXJzaW9uKVxuXG4gICAgaWYgKHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudCAmJiBtYWpvck5vZGVWZXJzaW9uID49IDE4KVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBucG1Db25maWdFbnZpcm9ubWVudCBpcyBub3Qgc3VwcG9ydGVkIGZvciBub2RlIHZlcnNpb25zIGFib3ZlIHZlcnNpb24gMTguIEN1cnJlbnQgdmVyc2lvbiBpcyAke3RoaXMubm9kZVZlcnNpb259YClcblxuICAgIGNvbnN0IGRlcGxveUFyZ3VtZW50ID0gdGhpcy5kZXBsb3lPcHRpb25zLnN0YWNrUGF0dGVybiA/IGAgJHt0aGlzLmRlcGxveU9wdGlvbnMuc3RhY2tQYXR0ZXJufWA6ICcnXG4gICAgdGhpcy5kZXBsb3lXb3JrZmxvd1Rhc2sgPSB0aGlzLmFkZFRhc2soJ2RlcGxveTp3b3JrZmxvdycsIHtcbiAgICAgIHJlcXVpcmVkRW52OiB0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQgPyBbYG5wbV9jb25maWdfJHt0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnR9YF0gOiB1bmRlZmluZWQsXG4gICAgICBleGVjOiBgY2RrIGRlcGxveSR7ZGVwbG95QXJndW1lbnR9ICR7dGhpcy5nZXRNZXRob2RBcmd1bWVudCgpfSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXJgLFxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGdldE1ham9yTm9kZVZlcnNpb24obm9kZVZlcnNpb246IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIGlmICghbm9kZVZlcnNpb24pXG4gICAgICByZXR1cm4gMTZcbiAgICBjb25zdCBwYXJzZWQgPSBzZW12ZXIuY29lcmNlKG5vZGVWZXJzaW9uKVxuICAgIGlmICghcGFyc2VkKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgcGFyc2Ugbm9kZSB2ZXJzaW9uICR7bm9kZVZlcnNpb259YClcbiAgICByZXR1cm4gcGFyc2VkLm1ham9yXG4gIH1cblxuICBwcml2YXRlIGdldE1ldGhvZEFyZ3VtZW50KCkge1xuICAgIHJldHVybiBgLS1tZXRob2QgJHt0aGlzLmRlcGxveU9wdGlvbnMubWV0aG9kID8/ICdjaGFuZ2Utc2V0J31gXG4gIH1cblxuICBzeW50aCgpIHtcbiAgICBpZiAodGhpcy5kZXBsb3lhYmxlKVxuICAgICAgdGhpcy5hZGREZXBsb3lKb2JzKClcblxuICAgIGlmICh0aGlzLmdlbmVyYXRlTnZtcmMpXG4gICAgICBuZXcgVGV4dEZpbGUodGhpcywgJy5udm1yYycsIHtcbiAgICAgICAgbGluZXM6IFt0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPz8gJyddLFxuICAgICAgfSlcblxuICAgIHN1cGVyLnN5bnRoKClcbiAgfVxuXG4gIGFkZEVudmlyb25tZW50cyguLi5pdGVtczogRW52aXJvbm1lbnRPcHRpb25zW10pIHtcbiAgICB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLnB1c2goLi4uaXRlbXMpXG4gIH1cblxuICBwcml2YXRlIGFkZERlcGxveUpvYnMoKSB7XG5cbiAgICBpZiAodGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5sZW5ndGggPT09IDApXG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdUaGUgcHJvamVjdCBkb2VzIG5vdCBoYXZlIGFueSBlbnZpcm9ubWVudCBzZXQsIG1ha2Ugc3VyZSB0aGlzIGlzIGRlc2lyZWQgc2V0dGluZycpXG5cbiAgICBjb25zdCBpbmNsdWRlID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5tYXAoZW52aXJvbm1lbnRPcHRpb25zID0+IHtcbiAgICAgIGNvbnN0IHthd3NDcmVkZW50aWFsc30gPSBlbnZpcm9ubWVudE9wdGlvbnNcblxuICAgICAgY29uc3QgYXNzdW1lUm9sZSA9IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSA/ICd0cnVlJyA6ICdmYWxzZSdcblxuICAgICAgY29uc3QgYXNzdW1lUm9sZVNldHRpbmdzID0gYXdzQ3JlZGVudGlhbHMucm9sZVRvQXNzdW1lID8ge1xuICAgICAgICByb2xlVG9Bc3N1bWU6IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSxcbiAgICAgICAgYXNzdW1lUm9sZUR1cmF0aW9uU2Vjb25kczogYXdzQ3JlZGVudGlhbHMuYXNzdW1lUm9sZUR1cmF0aW9uU2Vjb25kcyB8fCA5MDAsXG4gICAgICB9OiB1bmRlZmluZWRcblxuICAgICAgY29uc3QgYWNjZXNzS2V5SWRTZWNyZXROYW1lID0gYXdzQ3JlZGVudGlhbHMuYWNjZXNzS2V5SWRTZWNyZXROYW1lID8/ICdBV1NfQUNDRVNTX0tFWV9JRCdcbiAgICAgIGNvbnN0IHNlY3JldEFjY2Vzc0tleVNlY3JldE5hbWUgPSBhd3NDcmVkZW50aWFscy5zZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lID8/ICdBV1NfU0VDUkVUX0FDQ0VTU19LRVknXG5cbiAgICAgIGNvbnN0IGhhc1Bvc3REZXBsb3lUYXNrID0gZW52aXJvbm1lbnRPcHRpb25zLnBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdCA/ICd0cnVlJyA6ICdmYWxzZSdcbiAgICAgIGNvbnN0IGhhc1ByZURlcGxveVRhc2sgPSBlbnZpcm9ubWVudE9wdGlvbnMucHJlRGVwbG95V29ya2Zsb3dTY3JpcHQgPyAndHJ1ZScgOiAnZmFsc2UnXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGVudmlyb25tZW50OiBlbnZpcm9ubWVudE9wdGlvbnMubmFtZSxcbiAgICAgICAgYWNjZXNzS2V5SWRTZWNyZXROYW1lLFxuICAgICAgICBzZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lLFxuICAgICAgICByZWdpb246IGF3c0NyZWRlbnRpYWxzLnJlZ2lvbixcbiAgICAgICAgYXNzdW1lUm9sZSxcbiAgICAgICAgaGFzUG9zdERlcGxveVRhc2ssXG4gICAgICAgIHBvc3REZXBsb3ltZW50U2NyaXB0OiBlbnZpcm9ubWVudE9wdGlvbnMucG9zdERlcGxveVdvcmtmbG93U2NyaXB0IHx8ICcnLFxuICAgICAgICBoYXNQcmVEZXBsb3lUYXNrLFxuICAgICAgICBwcmVEZXBsb3ltZW50U2NyaXB0OiBlbnZpcm9ubWVudE9wdGlvbnMucHJlRGVwbG95V29ya2Zsb3dTY3JpcHQgfHwgJycsXG4gICAgICAgIC4uLmFzc3VtZVJvbGVTZXR0aW5ncyxcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY29uc3QgZGVwbG95Sm9iRW52ID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50VmFyaWFibGVOYW1lID8ge1xuICAgICAgW3RoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZV06ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JyxcbiAgICB9IDogdW5kZWZpbmVkXG5cbiAgICBjb25zdCBqb2JEZWZpbml0aW9uOiBKb2IgPSB7XG4gICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgY29uY3VycmVuY3k6ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19LWRlcGxveScsXG4gICAgICBuZWVkczogW1xuICAgICAgICAncmVsZWFzZV9naXRodWInLFxuICAgICAgXSxcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgIGRlcGxveW1lbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgIGlkVG9rZW46IHRoaXMuY29kZUFydGlmYWN0T3B0aW9ucz8uYXV0aFByb3ZpZGVyID09PSBDb2RlQXJ0aWZhY3RBdXRoUHJvdmlkZXIuR0lUSFVCX09JREMgPyBKb2JQZXJtaXNzaW9uLldSSVRFIDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICAgIHN0cmF0ZWd5OiB7XG4gICAgICAgIG1heFBhcmFsbGVsOiAxLFxuICAgICAgICBtYXRyaXg6IHtcbiAgICAgICAgICBkb21haW46IHtcbiAgICAgICAgICAgIGVudmlyb25tZW50OiBpbmNsdWRlLm1hcChlID0+IGUuZW52aXJvbm1lbnQpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgaW5jbHVkZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBuYW1lOiAnJHt7IG1hdHJpeC5lbnZpcm9ubWVudCB9fScsXG4gICAgICB9LFxuICAgICAgZW52OiBkZXBsb3lKb2JFbnYsXG4gICAgICBzdGVwczogW10sXG4gICAgfVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrb3V0U3RlcCgpKVxuXG4gICAgY29uc3Qge3Rhc2tUb1J1blByZUluc3RhbGx9ID0gdGhpcy5kZXBsb3lPcHRpb25zXG4gICAgaWYgKHRhc2tUb1J1blByZUluc3RhbGwpXG4gICAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucHJlSW5zdGFsbERlcGVuZGVuY2llc1N0ZXAodGFza1RvUnVuUHJlSW5zdGFsbCwgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKC4uLih0aGlzLnBhY2thZ2UucHJvamVjdCBhcyBOb2RlUHJvamVjdCkucmVuZGVyV29ya2Zsb3dTZXR1cCgpKVxuXG4gICAgaWYgKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrQWN0aXZlRGVwbG95bWVudFN0ZXAoKSlcblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaCguLi5zdGVwcy5zZXRBd3NDcmVkZW50aWFsc1N0ZXBzKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnM/LmF1dGhQcm92aWRlcikpXG5cbiAgICBpZiAodGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnNldE5wbUNvbmZpZyh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQsICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JywgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnByZURlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5kZXBsb3ltZW50U3RlcCh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5wYWNrYWdlLnBhY2thZ2VNYW5hZ2VyKSlcbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucG9zdERlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuXG4gICAgdGhpcy5yZWxlYXNlPy5hZGRKb2JzKHtkZXBsb3k6IGpvYkRlZmluaXRpb259KVxuXG4gIH1cbn0iXX0=
package/lib/types.d.ts CHANGED
@@ -33,10 +33,18 @@ export interface DeployOptions {
33
33
  * npm config name to set as the environment name
34
34
  * This might be useful in deployment process
35
35
  *
36
+ * Does not support node versions above 18.
37
+ *
36
38
  * if not provided will not set
37
39
  * @default undefined
38
40
  */
39
41
  readonly npmConfigEnvironment?: string;
42
+ /**
43
+ * Name of the environment variable used to set the deploy environment name.
44
+ *
45
+ * @default undefined
46
+ */
47
+ readonly environmentVariableName?: string;
40
48
  /**
41
49
  * task name to run prior to installation in deploy job of workflow
42
50
  * if not provided will not add to workflow
package/lib/types.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YXdzY2RrfSBmcm9tICdwcm9qZW4nXG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHtcbiAgLyoqXG4gICAqIERlcGxveW1lbnQgb3B0aW9uc1xuICAgKiBAZGVmYXVsdCBcImNvbmZpZyB3aXRoIGVtcHR5IGxpc3Qgb2YgZW52aXJvbm1lbnRzXCJcbiAgICovXG4gIHJlYWRvbmx5IGRlcGxveU9wdGlvbnM/OiBEZXBsb3lPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGdlbmVyYXRlIG52bXJjIGZpbGUgZm9yIHRoZSBub2RlIHZlcnNpb24gb2YgdGhlIHByb2plY3RcbiAgICogaWYgc2V0IHRvIHRydWUsIGFuZCBubyBcIndvcmtmbG93Tm9kZVZlcnNpb25cIiBpcyBzcGVjaWZpZWQgd2lsbCB1c2UgdmVyc2lvbiAxNC4xOC4xXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGdlbmVyYXRlTnZtcmM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNoZWNrIGFuZCBza2lwIHRoZSBkZXBsb3ltZW50IGZvciBlbnZpcm9ubWVudHMgdGhhdCBoYXZlIGFjdGl2ZSBkZXBsb3ltZW50IG9mIHRoZSBzYW1lIGNvbW1pdFxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY2hlY2tBY3RpdmVEZXBsb3ltZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lPcHRpb25zIHtcbiAgLyoqXG4gICAqIEVudmlyb25tZW50IHNldHRpbmdzIHRvIGRlcGxveSB0b1xuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudE9wdGlvbnNbXTtcblxuICAvKipcbiAgICogUmVnZXggZm9yIHN0YWNrcyB0byBiZSBkZXBsb3llZFxuICAgKlxuICAgKiBpZiBub3QgcHJvdmlkZWQgbWF0Y2hlcyBhbGwgb2YgdGhlIHN0YWNrcyBpbiB0aGUgQ0RLIEFwcC5cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBzdGFja1BhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIG5wbSBjb25maWcgbmFtZSB0byBzZXQgYXMgdGhlIGVudmlyb25tZW50IG5hbWVcbiAgICogVGhpcyBtaWdodCBiZSB1c2VmdWwgaW4gZGVwbG95bWVudCBwcm9jZXNzXG4gICAqXG4gICAqIGlmIG5vdCBwcm92aWRlZCB3aWxsIG5vdCBzZXRcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBucG1Db25maWdFbnZpcm9ubWVudD86IHN0cmluZztcblxuICAvKipcbiAgICogdGFzayBuYW1lIHRvIHJ1biBwcmlvciB0byBpbnN0YWxsYXRpb24gaW4gZGVwbG95IGpvYiBvZiB3b3JrZmxvd1xuICAgKiBpZiBub3QgcHJvdmlkZWQgd2lsbCBub3QgYWRkIHRvIHdvcmtmbG93XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcmVhZG9ubHkgdGFza1RvUnVuUHJlSW5zdGFsbD86IHN0cmluZztcblxuICAvKipcbiAgICogSG93IHRvIHBlcmZvcm0gdGhlIGRlcGxveW1lbnQuIERpcmVjdCBpcyBhIGJpdCBmYXN0ZXIgYnV0IGxhY2tzIHByb2dyZXNzIGluZm9ybWF0aW9uXG4gICAqIEBkZWZhdWx0IFwiY2hhbmdlLXNldFwiXG4gICAqL1xuICByZWFkb25seSBtZXRob2Q/OiAnZGlyZWN0JyB8ICdjaGFuZ2Utc2V0JyB8ICdwcmVwYXJlLWNoYW5nZS1zZXQnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBFbnZpcm9ubWVudCBuYW1lIHRvIGRlcGxveSB0b1xuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBV1MgY3JlZGVudGlhbCBkZXRhaWxzIGZvciBkZXBsb3ltZW50XG4gICAqL1xuICByZWFkb25seSBhd3NDcmVkZW50aWFsczogQVdTQ3JlZGVudGlhbHM7XG5cbiAgLyoqXG4gICAqIFRoZSBzY3JpcHQvdGFzayB0byBydW4gYWZ0ZXIgZGVwbG95bWVudCBvZiB0aGUgZW52aXJvbm1lbnQgaW4gdGhlIHdvcmtmbG93XG4gICAqIElmIG5vdCBwcmVzZW50LCB0aGUgd29ya2Zsb3cgd2lsbCBub3QgZXhlY3V0ZSB0aGF0XG4gICAqXG4gICAqIEBleGFtcGxlIFwicG9zdDpkZXBsb3lcIlxuICAgKi9cbiAgcmVhZG9ubHkgcG9zdERlcGxveVdvcmtmbG93U2NyaXB0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc2NyaXB0L3Rhc2sgdG8gcnVuIGJlZm9yZSBkZXBsb3ltZW50IG9mIHRoZSBlbnZpcm9ubWVudCBpbiB0aGUgd29ya2Zsb3dcbiAgICogSWYgbm90IHByZXNlbnQsIHRoZSB3b3JrZmxvdyB3aWxsIG5vdCBleGVjdXRlIHRoYXRcbiAgICpcbiAgICogQGV4YW1wbGUgXCJwcmU6ZGVwbG95XCJcbiAgICovXG4gIHJlYWRvbmx5IHByZURlcGxveVdvcmtmbG93U2NyaXB0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFXU0NyZWRlbnRpYWxzIHtcbiAgLyoqXG4gICAqIEdpdEh1YiBTZWNyZXQgbmFtZSBmb3IgQVdTIEFjY2VzcyBLZXkgSWRcbiAgICogQGRlZmF1bHQgXCJBV1NfQUNDRVNTX0tFWV9JRFwiXG4gICAqL1xuICByZWFkb25seSBhY2Nlc3NLZXlJZFNlY3JldE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdpdEh1YiBTZWNyZXQgbmFtZSBmb3IgQVdTIFNlY3JldCBBY2Nlc3MgS2V5XG4gICAqIEBkZWZhdWx0IFwiQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZXCJcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldEFjY2Vzc0tleVNlY3JldE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFSTiBvZiBBV1Mgcm9sZSB0byBiZSBhc3N1bWVkXG4gICAqL1xuICByZWFkb25seSByb2xlVG9Bc3N1bWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIER1cmF0aW9uIG9mIGFzc3VtZSByb2xlIHNlc3Npb25cbiAgICogQGRlZmF1bHQgOTAwXG4gICAqL1xuICByZWFkb25seSBhc3N1bWVSb2xlRHVyYXRpb25TZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IEFXUyByZWdpb24gZm9yIHRoZSBhY2NvdW50XG4gICAqIEBleGFtcGxlIFwidXMtZWFzdC0yXCJcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YXdzY2RrfSBmcm9tICdwcm9qZW4nXG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIGV4dGVuZHMgYXdzY2RrLkF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHtcbiAgLyoqXG4gICAqIERlcGxveW1lbnQgb3B0aW9uc1xuICAgKiBAZGVmYXVsdCBcImNvbmZpZyB3aXRoIGVtcHR5IGxpc3Qgb2YgZW52aXJvbm1lbnRzXCJcbiAgICovXG4gIHJlYWRvbmx5IGRlcGxveU9wdGlvbnM/OiBEZXBsb3lPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGdlbmVyYXRlIG52bXJjIGZpbGUgZm9yIHRoZSBub2RlIHZlcnNpb24gb2YgdGhlIHByb2plY3RcbiAgICogaWYgc2V0IHRvIHRydWUsIGFuZCBubyBcIndvcmtmbG93Tm9kZVZlcnNpb25cIiBpcyBzcGVjaWZpZWQgd2lsbCB1c2UgdmVyc2lvbiAxNC4xOC4xXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGdlbmVyYXRlTnZtcmM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNoZWNrIGFuZCBza2lwIHRoZSBkZXBsb3ltZW50IGZvciBlbnZpcm9ubWVudHMgdGhhdCBoYXZlIGFjdGl2ZSBkZXBsb3ltZW50IG9mIHRoZSBzYW1lIGNvbW1pdFxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY2hlY2tBY3RpdmVEZXBsb3ltZW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lPcHRpb25zIHtcbiAgLyoqXG4gICAqIEVudmlyb25tZW50IHNldHRpbmdzIHRvIGRlcGxveSB0b1xuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudE9wdGlvbnNbXTtcblxuICAvKipcbiAgICogUmVnZXggZm9yIHN0YWNrcyB0byBiZSBkZXBsb3llZFxuICAgKlxuICAgKiBpZiBub3QgcHJvdmlkZWQgbWF0Y2hlcyBhbGwgb2YgdGhlIHN0YWNrcyBpbiB0aGUgQ0RLIEFwcC5cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBzdGFja1BhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIG5wbSBjb25maWcgbmFtZSB0byBzZXQgYXMgdGhlIGVudmlyb25tZW50IG5hbWVcbiAgICogVGhpcyBtaWdodCBiZSB1c2VmdWwgaW4gZGVwbG95bWVudCBwcm9jZXNzXG4gICAqXG4gICAqIERvZXMgbm90IHN1cHBvcnQgbm9kZSB2ZXJzaW9ucyBhYm92ZSAxOC5cbiAgICpcbiAgICogaWYgbm90IHByb3ZpZGVkIHdpbGwgbm90IHNldFxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIHJlYWRvbmx5IG5wbUNvbmZpZ0Vudmlyb25tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB1c2VkIHRvIHNldCB0aGUgZGVwbG95IGVudmlyb25tZW50IG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRWYXJpYWJsZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHRhc2sgbmFtZSB0byBydW4gcHJpb3IgdG8gaW5zdGFsbGF0aW9uIGluIGRlcGxveSBqb2Igb2Ygd29ya2Zsb3dcbiAgICogaWYgbm90IHByb3ZpZGVkIHdpbGwgbm90IGFkZCB0byB3b3JrZmxvd1xuICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICovXG4gIHJlYWRvbmx5IHRhc2tUb1J1blByZUluc3RhbGw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEhvdyB0byBwZXJmb3JtIHRoZSBkZXBsb3ltZW50LiBEaXJlY3QgaXMgYSBiaXQgZmFzdGVyIGJ1dCBsYWNrcyBwcm9ncmVzcyBpbmZvcm1hdGlvblxuICAgKiBAZGVmYXVsdCBcImNoYW5nZS1zZXRcIlxuICAgKi9cbiAgcmVhZG9ubHkgbWV0aG9kPzogJ2RpcmVjdCcgfCAnY2hhbmdlLXNldCcgfCAncHJlcGFyZS1jaGFuZ2Utc2V0Jztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudE9wdGlvbnMge1xuICAvKipcbiAgICogRW52aXJvbm1lbnQgbmFtZSB0byBkZXBsb3kgdG9cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQVdTIGNyZWRlbnRpYWwgZGV0YWlscyBmb3IgZGVwbG95bWVudFxuICAgKi9cbiAgcmVhZG9ubHkgYXdzQ3JlZGVudGlhbHM6IEFXU0NyZWRlbnRpYWxzO1xuXG4gIC8qKlxuICAgKiBUaGUgc2NyaXB0L3Rhc2sgdG8gcnVuIGFmdGVyIGRlcGxveW1lbnQgb2YgdGhlIGVudmlyb25tZW50IGluIHRoZSB3b3JrZmxvd1xuICAgKiBJZiBub3QgcHJlc2VudCwgdGhlIHdvcmtmbG93IHdpbGwgbm90IGV4ZWN1dGUgdGhhdFxuICAgKlxuICAgKiBAZXhhbXBsZSBcInBvc3Q6ZGVwbG95XCJcbiAgICovXG4gIHJlYWRvbmx5IHBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNjcmlwdC90YXNrIHRvIHJ1biBiZWZvcmUgZGVwbG95bWVudCBvZiB0aGUgZW52aXJvbm1lbnQgaW4gdGhlIHdvcmtmbG93XG4gICAqIElmIG5vdCBwcmVzZW50LCB0aGUgd29ya2Zsb3cgd2lsbCBub3QgZXhlY3V0ZSB0aGF0XG4gICAqXG4gICAqIEBleGFtcGxlIFwicHJlOmRlcGxveVwiXG4gICAqL1xuICByZWFkb25seSBwcmVEZXBsb3lXb3JrZmxvd1NjcmlwdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBV1NDcmVkZW50aWFscyB7XG4gIC8qKlxuICAgKiBHaXRIdWIgU2VjcmV0IG5hbWUgZm9yIEFXUyBBY2Nlc3MgS2V5IElkXG4gICAqIEBkZWZhdWx0IFwiQVdTX0FDQ0VTU19LRVlfSURcIlxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXNzS2V5SWRTZWNyZXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBHaXRIdWIgU2VjcmV0IG5hbWUgZm9yIEFXUyBTZWNyZXQgQWNjZXNzIEtleVxuICAgKiBAZGVmYXVsdCBcIkFXU19TRUNSRVRfQUNDRVNTX0tFWVwiXG4gICAqL1xuICByZWFkb25seSBzZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUk4gb2YgQVdTIHJvbGUgdG8gYmUgYXNzdW1lZFxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZVRvQXNzdW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEdXJhdGlvbiBvZiBhc3N1bWUgcm9sZSBzZXNzaW9uXG4gICAqIEBkZWZhdWx0IDkwMFxuICAgKi9cbiAgcmVhZG9ubHkgYXNzdW1lUm9sZUR1cmF0aW9uU2Vjb25kcz86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVmYXVsdCBBV1MgcmVnaW9uIGZvciB0aGUgYWNjb3VudFxuICAgKiBAZXhhbXBsZSBcInVzLWVhc3QtMlwiXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,15 @@
1
+ The ISC License
2
+
3
+ Copyright (c) Isaac Z. Schlueter and Contributors
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted, provided that the above
7
+ copyright notice and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15
+ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.