deployable-awscdk-app-ts 0.1.229 → 0.1.230

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/.jsii CHANGED
@@ -366,15 +366,19 @@
366
366
  "methods": [
367
367
  {
368
368
  "docs": {
369
- "stability": "stable"
369
+ "stability": "stable",
370
+ "summary": "Add new environments to the application."
370
371
  },
371
372
  "locationInModule": {
372
373
  "filename": "src/index.ts",
373
- "line": 79
374
+ "line": 83
374
375
  },
375
376
  "name": "addEnvironments",
376
377
  "parameters": [
377
378
  {
379
+ "docs": {
380
+ "summary": "list of environment options."
381
+ },
378
382
  "name": "items",
379
383
  "type": {
380
384
  "fqn": "deployable-awscdk-app-ts.EnvironmentOptions"
@@ -396,6 +400,80 @@
396
400
  },
397
401
  "name": "synth",
398
402
  "overrides": "projen.Project"
403
+ },
404
+ {
405
+ "docs": {
406
+ "stability": "stable",
407
+ "summary": "Updates the postDeployWorkflowScript for environments."
408
+ },
409
+ "locationInModule": {
410
+ "filename": "src/index.ts",
411
+ "line": 99
412
+ },
413
+ "name": "updatePostDeployWorkflowScriptToEnvironments",
414
+ "parameters": [
415
+ {
416
+ "docs": {
417
+ "summary": "the script to be added, for example \"post:deploy\"."
418
+ },
419
+ "name": "script",
420
+ "type": {
421
+ "primitive": "string"
422
+ }
423
+ },
424
+ {
425
+ "docs": {
426
+ "summary": "the name of environments to add the scripts to, if not provided or empty will update all."
427
+ },
428
+ "name": "environmentNameFilter",
429
+ "optional": true,
430
+ "type": {
431
+ "collection": {
432
+ "elementtype": {
433
+ "primitive": "string"
434
+ },
435
+ "kind": "array"
436
+ }
437
+ }
438
+ }
439
+ ]
440
+ },
441
+ {
442
+ "docs": {
443
+ "stability": "stable",
444
+ "summary": "Updates the preDeployWorkflowScript for environments."
445
+ },
446
+ "locationInModule": {
447
+ "filename": "src/index.ts",
448
+ "line": 117
449
+ },
450
+ "name": "updatePreDeployWorkflowScriptToEnvironments",
451
+ "parameters": [
452
+ {
453
+ "docs": {
454
+ "summary": "the script to be added, for example \"pre:deploy\"."
455
+ },
456
+ "name": "script",
457
+ "type": {
458
+ "primitive": "string"
459
+ }
460
+ },
461
+ {
462
+ "docs": {
463
+ "summary": "the name of environments to add the scripts to, if not provided or empty will update all."
464
+ },
465
+ "name": "environmentNameFilter",
466
+ "optional": true,
467
+ "type": {
468
+ "collection": {
469
+ "elementtype": {
470
+ "primitive": "string"
471
+ },
472
+ "kind": "array"
473
+ }
474
+ }
475
+ }
476
+ ]
399
477
  }
400
478
  ],
401
479
  "name": "DeployableAwsCdkTypeScriptApp",
@@ -430,6 +508,20 @@
430
508
  "type": {
431
509
  "primitive": "number"
432
510
  }
511
+ },
512
+ {
513
+ "docs": {
514
+ "stability": "stable"
515
+ },
516
+ "locationInModule": {
517
+ "filename": "src/index.ts",
518
+ "line": 22
519
+ },
520
+ "name": "deployOptions",
521
+ "protected": true,
522
+ "type": {
523
+ "fqn": "deployable-awscdk-app-ts.DeployOptions"
524
+ }
433
525
  }
434
526
  ],
435
527
  "symbolId": "src/index:DeployableAwsCdkTypeScriptApp"
@@ -594,6 +686,6 @@
594
686
  "symbolId": "src/types:EnvironmentOptions"
595
687
  }
596
688
  },
597
- "version": "0.1.229",
598
- "fingerprint": "cA4jMwlZGGxy+S0da+V7OlRPxzp+nZJZvFz140NVKgc="
689
+ "version": "0.1.230",
690
+ "fingerprint": "2YydAy4lemrLttZUdSj/MoZto9mBivWhdjKW7sRXK10="
599
691
  }
package/.projenrc.ts CHANGED
@@ -30,6 +30,7 @@ const project = new cdk.JsiiProject({
30
30
  devDeps: [
31
31
  'fs-extra',
32
32
  '@types/fs-extra',
33
+ 'yaml',
33
34
  ],
34
35
  workflowNodeVersion: nodeVersion,
35
36
  publishTasks: true,
package/API.md CHANGED
@@ -2910,7 +2910,9 @@ new DeployableAwsCdkTypeScriptApp(options: DeployableAwsCdkTypeScriptAppOptions)
2910
2910
  | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.renderWorkflowSetup">renderWorkflowSetup</a></code> | Returns the set of workflow steps which should be executed to bootstrap a workflow. |
2911
2911
  | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.setScript">setScript</a></code> | Replaces the contents of an npm package.json script. |
2912
2912
  | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addCdkDependency">addCdkDependency</a></code> | Adds an AWS CDK module dependencies. |
2913
- | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addEnvironments">addEnvironments</a></code> | *No description.* |
2913
+ | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addEnvironments">addEnvironments</a></code> | Add new environments to the application. |
2914
+ | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePostDeployWorkflowScriptToEnvironments">updatePostDeployWorkflowScriptToEnvironments</a></code> | Updates the postDeployWorkflowScript for environments. |
2915
+ | <code><a href="#deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePreDeployWorkflowScriptToEnvironments">updatePreDeployWorkflowScriptToEnvironments</a></code> | Updates the preDeployWorkflowScript for environments. |
2914
2916
 
2915
2917
  ---
2916
2918
 
@@ -3446,10 +3448,62 @@ The list of modules to depend on.
3446
3448
  public addEnvironments(items: EnvironmentOptions): void
3447
3449
  ```
3448
3450
 
3451
+ Add new environments to the application.
3452
+
3449
3453
  ###### `items`<sup>Required</sup> <a name="items" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addEnvironments.parameter.items"></a>
3450
3454
 
3451
3455
  - *Type:* <a href="#deployable-awscdk-app-ts.EnvironmentOptions">EnvironmentOptions</a>
3452
3456
 
3457
+ list of environment options.
3458
+
3459
+ ---
3460
+
3461
+ ##### `updatePostDeployWorkflowScriptToEnvironments` <a name="updatePostDeployWorkflowScriptToEnvironments" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePostDeployWorkflowScriptToEnvironments"></a>
3462
+
3463
+ ```typescript
3464
+ public updatePostDeployWorkflowScriptToEnvironments(script: string, environmentNameFilter?: string[]): void
3465
+ ```
3466
+
3467
+ Updates the postDeployWorkflowScript for environments.
3468
+
3469
+ ###### `script`<sup>Required</sup> <a name="script" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePostDeployWorkflowScriptToEnvironments.parameter.script"></a>
3470
+
3471
+ - *Type:* string
3472
+
3473
+ the script to be added, for example "post:deploy".
3474
+
3475
+ ---
3476
+
3477
+ ###### `environmentNameFilter`<sup>Optional</sup> <a name="environmentNameFilter" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePostDeployWorkflowScriptToEnvironments.parameter.environmentNameFilter"></a>
3478
+
3479
+ - *Type:* string[]
3480
+
3481
+ the name of environments to add the scripts to, if not provided or empty will update all.
3482
+
3483
+ ---
3484
+
3485
+ ##### `updatePreDeployWorkflowScriptToEnvironments` <a name="updatePreDeployWorkflowScriptToEnvironments" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePreDeployWorkflowScriptToEnvironments"></a>
3486
+
3487
+ ```typescript
3488
+ public updatePreDeployWorkflowScriptToEnvironments(script: string, environmentNameFilter?: string[]): void
3489
+ ```
3490
+
3491
+ Updates the preDeployWorkflowScript for environments.
3492
+
3493
+ ###### `script`<sup>Required</sup> <a name="script" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePreDeployWorkflowScriptToEnvironments.parameter.script"></a>
3494
+
3495
+ - *Type:* string
3496
+
3497
+ the script to be added, for example "pre:deploy".
3498
+
3499
+ ---
3500
+
3501
+ ###### `environmentNameFilter`<sup>Optional</sup> <a name="environmentNameFilter" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.updatePreDeployWorkflowScriptToEnvironments.parameter.environmentNameFilter"></a>
3502
+
3503
+ - *Type:* string[]
3504
+
3505
+ the name of environments to add the scripts to, if not provided or empty will update all.
3506
+
3453
3507
  ---
3454
3508
 
3455
3509
 
package/lib/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { awscdk, Task } from 'projen';
2
- import { DeployableAwsCdkTypeScriptAppOptions, EnvironmentOptions } from './types';
2
+ import { DeployableAwsCdkTypeScriptAppOptions, DeployOptions, EnvironmentOptions } from './types';
3
3
  export * from './types';
4
4
  export * as utils from './utils';
5
5
  export declare class DeployableAwsCdkTypeScriptApp extends awscdk.AwsCdkTypeScriptApp {
@@ -11,7 +11,7 @@ export declare class DeployableAwsCdkTypeScriptApp extends awscdk.AwsCdkTypeScri
11
11
  private readonly generateNvmrc;
12
12
  private readonly checkActiveDeployment;
13
13
  private readonly workflowNodeVersion?;
14
- private readonly deployOptions;
14
+ protected deployOptions: DeployOptions;
15
15
  private readonly codeArtifactOptions?;
16
16
  constructor(options: DeployableAwsCdkTypeScriptAppOptions);
17
17
  /**
@@ -21,6 +21,23 @@ export declare class DeployableAwsCdkTypeScriptApp extends awscdk.AwsCdkTypeScri
21
21
  get majorNodeVersion(): number;
22
22
  private getMethodArgument;
23
23
  synth(): void;
24
+ /**
25
+ * Add new environments to the application
26
+ * @param items list of environment options
27
+ */
24
28
  addEnvironments(...items: EnvironmentOptions[]): void;
29
+ private updateEnvironments;
30
+ /**
31
+ * Updates the postDeployWorkflowScript for environments
32
+ * @param script the script to be added, for example "post:deploy"
33
+ * @param environmentNameFilter the name of environments to add the scripts to, if not provided or empty will update all
34
+ */
35
+ updatePostDeployWorkflowScriptToEnvironments(script: string, environmentNameFilter?: string[]): void;
36
+ /**
37
+ * Updates the preDeployWorkflowScript for environments
38
+ * @param script the script to be added, for example "pre:deploy"
39
+ * @param environmentNameFilter the name of environments to add the scripts to, if not provided or empty will update all
40
+ */
41
+ updatePreDeployWorkflowScriptToEnvironments(script: string, environmentNameFilter?: string[]): void;
25
42
  private addDeployJobs;
26
43
  }
package/lib/index.js CHANGED
@@ -69,9 +69,51 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
69
69
  });
70
70
  super.synth();
71
71
  }
72
+ /**
73
+ * Add new environments to the application
74
+ * @param items list of environment options
75
+ */
72
76
  addEnvironments(...items) {
73
77
  this.deployOptions.environments.push(...items);
74
78
  }
79
+ updateEnvironments(newEnvironments) {
80
+ this.deployOptions = {
81
+ ...this.deployOptions,
82
+ environments: newEnvironments,
83
+ };
84
+ }
85
+ /**
86
+ * Updates the postDeployWorkflowScript for environments
87
+ * @param script the script to be added, for example "post:deploy"
88
+ * @param environmentNameFilter the name of environments to add the scripts to, if not provided or empty will update all
89
+ */
90
+ updatePostDeployWorkflowScriptToEnvironments(script, environmentNameFilter) {
91
+ const newEnvironments = this.deployOptions.environments.map(environment => {
92
+ if (environmentNameFilter && environmentNameFilter.length > 0 && !environmentNameFilter.includes(environment.name))
93
+ return environment;
94
+ return {
95
+ ...environment,
96
+ postDeployWorkflowScript: script,
97
+ };
98
+ });
99
+ this.updateEnvironments(newEnvironments);
100
+ }
101
+ /**
102
+ * Updates the preDeployWorkflowScript for environments
103
+ * @param script the script to be added, for example "pre:deploy"
104
+ * @param environmentNameFilter the name of environments to add the scripts to, if not provided or empty will update all
105
+ */
106
+ updatePreDeployWorkflowScriptToEnvironments(script, environmentNameFilter) {
107
+ const newEnvironments = this.deployOptions.environments.map(environment => {
108
+ if (environmentNameFilter && environmentNameFilter.length > 0 && !environmentNameFilter.includes(environment.name))
109
+ return environment;
110
+ return {
111
+ ...environment,
112
+ preDeployWorkflowScript: script,
113
+ };
114
+ });
115
+ this.updateEnvironments(newEnvironments);
116
+ }
75
117
  addDeployJobs() {
76
118
  if (this.deployOptions.environments.length === 0)
77
119
  this.logger.warn('The project does not have any environment set, make sure this is desired setting');
@@ -146,5 +188,5 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
146
188
  }
147
189
  exports.DeployableAwsCdkTypeScriptApp = DeployableAwsCdkTypeScriptApp;
148
190
  _a = JSII_RTTI_SYMBOL_1;
149
- DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.229" };
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUE2QztBQUM3Qyx1RUFBb0U7QUFDcEUsc0RBQWdHO0FBQ2hHLGlDQUFnQztBQUVoQyxtQ0FBMkM7QUFFM0MsMENBQXVCO0FBQ3ZCLG1DQUFnQztBQUVoQyxNQUFhLDZCQUE4QixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7SUFjM0UsWUFBWSxPQUE2QztRQUN2RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQTtRQUMxQyxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFBO1FBQ2xELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUMscUJBQXFCLElBQUksS0FBSyxDQUFBO1FBQ25FLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUFBO1FBQ2hFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBRTNDLElBQUksQ0FBQyxVQUFVO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUZBQWlGLENBQUMsQ0FBQTtRQUVyRyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ2pELElBQUksQ0FBQyxtQkFB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Q0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUE7UUFDMUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQ3ZHLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBRTNHLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUMsTUFBTSxFQUFFLGFBQWEsRUFBQyxDQUFDLENBQUE7SUFFaEQsQ0FBQzs7QUFoS0gsc0VBaUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthd3NjZGssIFRhc2ssIFRleHRGaWxlfSBmcm9tICdwcm9qZW4nXG5pbXBvcnQge0pvYiwgSm9iUGVybWlzc2lvbn0gZnJvbSAncHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsJ1xuaW1wb3J0IHtDb2RlQXJ0aWZhY3RBdXRoUHJvdmlkZXIsIENvZGVBcnRpZmFjdE9wdGlvbnMsIE5vZGVQcm9qZWN0fSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnXG5pbXBvcnQgKiBhcyBzdGVwcyBmcm9tICcuL3N0ZXBzJ1xuaW1wb3J0IHtEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMsIERlcGxveU9wdGlvbnMsIEVudmlyb25tZW50T3B0aW9uc30gZnJvbSAnLi90eXBlcydcbmltcG9ydCB7Z2V0TWFqb3JOb2RlVmVyc2lvbn0gZnJvbSAnLi91dGlscydcblxuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcbmV4cG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCBjbGFzcyBEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcCBleHRlbmRzIGF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwIHtcblxuICAvKipcbiAgICogVGFzayB0byBkZXBsb3kgeW91ciBhcHAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVwbG95V29ya2Zsb3dUYXNrOiBUYXNrXG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXBsb3lhYmxlOiBib29sZWFuXG4gIHByaXZhdGUgcmVhZG9ubHkgZ2VuZXJhdGVOdm1yYzogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrQWN0aXZlRGVwbG95bWVudDogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IHdvcmtmbG93Tm9kZVZlcnNpb24/OiBzdHJpbmdcbiAgcHJpdmF0ZSByZWFkb25seSBkZXBsb3lPcHRpb25zOiBEZXBsb3lPcHRpb25zXG4gIHByaXZhdGUgcmVhZG9ubHkgY29kZUFydGlmYWN0T3B0aW9ucz86IENvZGVBcnRpZmFjdE9wdGlvbnNcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMpIHtcbiAgICBjb25zdCBkZXBsb3lhYmxlID0gb3B0aW9ucy5yZWxlYXNlID8/IHRydWVcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVsZWFzZTogZGVwbG95YWJsZSxcbiAgICB9KVxuICAgIHRoaXMuZGVwbG95YWJsZSA9IGRlcGxveWFibGVcbiAgICB0aGlzLmdlbmVyYXRlTnZtcmMgPSBvcHRpb25zLmdlbmVyYXRlTnZtcmMgPz8gdHJ1ZVxuICAgIHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50ID0gb3B0aW9ucy5jaGVja0FjdGl2ZURlcGxveW1lbnQgPz8gZmFsc2VcbiAgICB0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPSBvcHRpb25zLndvcmtmbG93Tm9kZVZlcnNpb25cbiAgICB0aGlzLmRlcGxveU9wdGlvbnMgPSBvcHRpb25zLmRlcGxveU9wdGlvbnMgPz8ge2Vudmlyb25tZW50czogW119XG4gICAgdGhpcy5jb2RlQXJ0aWZhY3RPcHRpb25zID0gb3B0aW9ucy5jb2RlQXJ0aWZhY3RPcHRpb25zXG4gICAgdGhpcy5hZGREZXZEZXBzKCdkZXBsb3lhYmxlLWF3c2Nkay1hcHAtdHMnKVxuXG4gICAgaWYgKCFkZXBsb3lhYmxlKVxuICAgICAgdGhpcy5sb2dnZXIud2FybignVGhlIHByb2plY3QgaXMgZXhwbGljaXRseSBzZXQgdG8gbm90IHJlbGVhc2UsIG1ha2Ugc3VyZSB0aGlzIGlzIGRlc2lyZWQgc2V0dGluZycpXG5cbiAgICBpZiAodGhpcy5nZW5lcmF0ZU52bXJjICYmICF0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24pXG4gICAgICB0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPSAnMTQuMTguMSdcblxuICAgIGlmICh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQgJiYgdGhpcy5tYWpvck5vZGVWZXJzaW9uID49IDE4KVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBucG1Db25maWdFbnZpcm9ubWVudCBpcyBub3Qgc3VwcG9ydGVkIGZvciBub2RlIHZlcnNpb25zIGFib3ZlIHZlcnNpb24gMTguIEN1cnJlbnQgdmVyc2lvbiBpcyAke3RoaXMubm9kZVZlcnNpb259YClcblxuICAgIGNvbnN0IGRlcGxveUFyZ3VtZW50ID0gdGhpcy5kZXBsb3lPcHRpb25zLnN0YWNrUGF0dGVybiA/IGAgJHt0aGlzLmRlcGxveU9wdGlvbnMuc3RhY2tQYXR0ZXJufWA6ICcnXG4gICAgdGhpcy5kZXBsb3lXb3JrZmxvd1Rhc2sgPSB0aGlzLmFkZFRhc2soJ2RlcGxveTp3b3JrZmxvdycsIHtcbiAgICAgIHJlcXVpcmVkRW52OiB0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQgPyBbYG5wbV9jb25maWdfJHt0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnR9YF0gOiB1bmRlZmluZWQsXG4gICAgICBleGVjOiBgY2RrIGRlcGxveSR7ZGVwbG95QXJndW1lbnR9ICR7dGhpcy5nZXRNZXRob2RBcmd1bWVudCgpfSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXJgLFxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogcmV0dXJuIHRoZSBtYWpvciBub2RlIHZlcnNpb24gc2V0IGZvciB0aGUgcHJvamVjdFxuICAgKiBAZGVmYXVsdCAxNlxuICAgKi9cbiAgZ2V0IG1ham9yTm9kZVZlcnNpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZ2V0TWFqb3JOb2RlVmVyc2lvbih0aGlzLm5vZGVWZXJzaW9uKVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZXRob2RBcmd1bWVudCgpIHtcbiAgICByZXR1cm4gYC0tbWV0aG9kICR7dGhpcy5kZXBsb3lPcHRpb25zLm1ldGhvZCA/PyAnY2hhbmdlLXNldCd9YFxuICB9XG5cbiAgc3ludGgoKSB7XG4gICAgaWYgKHRoaXMuZGVwbG95YWJsZSlcbiAgICAgIHRoaXMuYWRkRGVwbG95Sm9icygpXG5cbiAgICBpZiAodGhpcy5nZW5lcmF0ZU52bXJjKVxuICAgICAgbmV3IFRleHRGaWxlKHRoaXMsICcubnZtcmMnLCB7XG4gICAgICAgIGxpbmVzOiBbdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID8/ICcnXSxcbiAgICAgIH0pXG5cbiAgICBzdXBlci5zeW50aCgpXG4gIH1cblxuICBhZGRFbnZpcm9ubWVudHMoLi4uaXRlbXM6IEVudmlyb25tZW50T3B0aW9uc1tdKSB7XG4gICAgdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5wdXNoKC4uLml0ZW1zKVxuICB9XG5cbiAgcHJpdmF0ZSBhZGREZXBsb3lKb2JzKCkge1xuXG4gICAgaWYgKHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudHMubGVuZ3RoID09PSAwKVxuICAgICAgdGhpcy5sb2dnZXIud2FybignVGhlIHByb2plY3QgZG9lcyBub3QgaGF2ZSBhbnkgZW52aXJvbm1lbnQgc2V0LCBtYWtlIHN1cmUgdGhpcyBpcyBkZXNpcmVkIHNldHRpbmcnKVxuXG4gICAgY29uc3QgaW5jbHVkZSA9IHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudHMubWFwKGVudmlyb25tZW50T3B0aW9ucyA9PiB7XG4gICAgICBjb25zdCB7YXdzQ3JlZGVudGlhbHN9ID0gZW52aXJvbm1lbnRPcHRpb25zXG5cbiAgICAgIGNvbnN0IGFzc3VtZVJvbGUgPSBhd3NDcmVkZW50aWFscy5yb2xlVG9Bc3N1bWUgPyAndHJ1ZScgOiAnZmFsc2UnXG5cbiAgICAgIGNvbnN0IGFzc3VtZVJvbGVTZXR0aW5ncyA9IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSA/IHtcbiAgICAgICAgcm9sZVRvQXNzdW1lOiBhd3NDcmVkZW50aWFscy5yb2xlVG9Bc3N1bWUsXG4gICAgICAgIGFzc3VtZVJvbGVEdXJhdGlvblNlY29uZHM6IGF3c0NyZWRlbnRpYWxzLmFzc3VtZVJvbGVEdXJhdGlvblNlY29uZHMgfHwgOTAwLFxuICAgICAgfTogdW5kZWZpbmVkXG5cbiAgICAgIGNvbnN0IGFjY2Vzc0tleUlkU2VjcmV0TmFtZSA9IGF3c0NyZWRlbnRpYWxzLmFjY2Vzc0tleUlkU2VjcmV0TmFtZSA/PyAnQVdTX0FDQ0VTU19LRVlfSUQnXG4gICAgICBjb25zdCBzZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lID0gYXdzQ3JlZGVudGlhbHMuc2VjcmV0QWNjZXNzS2V5U2VjcmV0TmFtZSA/PyAnQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZJ1xuXG4gICAgICBjb25zdCBoYXNQb3N0RGVwbG95VGFzayA9IGVudmlyb25tZW50T3B0aW9ucy5wb3N0RGVwbG95V29ya2Zsb3dTY3JpcHQgPyAndHJ1ZScgOiAnZmFsc2UnXG4gICAgICBjb25zdCBoYXNQcmVEZXBsb3lUYXNrID0gZW52aXJvbm1lbnRPcHRpb25zLnByZURlcGxveVdvcmtmbG93U2NyaXB0ID8gJ3RydWUnIDogJ2ZhbHNlJ1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBlbnZpcm9ubWVudDogZW52aXJvbm1lbnRPcHRpb25zLm5hbWUsXG4gICAgICAgIGFjY2Vzc0tleUlkU2VjcmV0TmFtZSxcbiAgICAgICAgc2VjcmV0QWNjZXNzS2V5U2VjcmV0TmFtZSxcbiAgICAgICAgcmVnaW9uOiBhd3NDcmVkZW50aWFscy5yZWdpb24sXG4gICAgICAgIGFzc3VtZVJvbGUsXG4gICAgICAgIGhhc1Bvc3REZXBsb3lUYXNrLFxuICAgICAgICBwb3N0RGVwbG95bWVudFNjcmlwdDogZW52aXJvbm1lbnRPcHRpb25zLnBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdCB8fCAnJyxcbiAgICAgICAgaGFzUHJlRGVwbG95VGFzayxcbiAgICAgICAgcHJlRGVwbG95bWVudFNjcmlwdDogZW52aXJvbm1lbnRPcHRpb25zLnByZURlcGxveVdvcmtmbG93U2NyaXB0IHx8ICcnLFxuICAgICAgICAuLi5hc3N1bWVSb2xlU2V0dGluZ3MsXG4gICAgICB9XG4gICAgfSlcblxuICAgIGNvbnN0IGRlcGxveUpvYkVudiA9IHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZSA/IHtcbiAgICAgIFt0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRWYXJpYWJsZU5hbWVdOiAnJHt7IG1hdHJpeC5lbnZpcm9ubWVudCB9fScsXG4gICAgfSA6IHVuZGVmaW5lZFxuXG4gICAgY29uc3Qgam9iRGVmaW5pdGlvbjogSm9iID0ge1xuICAgICAgcnVuc09uOiBbJ3VidW50dS1sYXRlc3QnXSxcbiAgICAgIGNvbmN1cnJlbmN5OiAnJHt7IG1hdHJpeC5lbnZpcm9ubWVudCB9fS1kZXBsb3knLFxuICAgICAgbmVlZHM6IFtcbiAgICAgICAgJ3JlbGVhc2VfZ2l0aHViJyxcbiAgICAgIF0sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICBkZXBsb3ltZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICBpZFRva2VuOiB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnM/LmF1dGhQcm92aWRlciA9PT0gQ29kZUFydGlmYWN0QXV0aFByb3ZpZGVyLkdJVEhVQl9PSURDID8gSm9iUGVybWlzc2lvbi5XUklURSA6IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgICBzdHJhdGVneToge1xuICAgICAgICBtYXhQYXJhbGxlbDogMSxcbiAgICAgICAgbWF0cml4OiB7XG4gICAgICAgICAgZG9tYWluOiB7XG4gICAgICAgICAgICBlbnZpcm9ubWVudDogaW5jbHVkZS5tYXAoZSA9PiBlLmVudmlyb25tZW50KSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGluY2x1ZGUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgbmFtZTogJyR7eyBtYXRyaXguZW52aXJvbm1lbnQgfX0nLFxuICAgICAgfSxcbiAgICAgIGVudjogZGVwbG95Sm9iRW52LFxuICAgICAgc3RlcHM6IFtdLFxuICAgIH1cblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5jaGVja291dFN0ZXAoKSlcblxuICAgIGNvbnN0IHt0YXNrVG9SdW5QcmVJbnN0YWxsfSA9IHRoaXMuZGVwbG95T3B0aW9uc1xuICAgIGlmICh0YXNrVG9SdW5QcmVJbnN0YWxsKVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnByZUluc3RhbGxEZXBlbmRlbmNpZXNTdGVwKHRhc2tUb1J1blByZUluc3RhbGwsIHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50KSlcblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaCguLi4odGhpcy5wYWNrYWdlLnByb2plY3QgYXMgTm9kZVByb2plY3QpLnJlbmRlcldvcmtmbG93U2V0dXAoKSlcblxuICAgIGlmICh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudClcbiAgICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5jaGVja0FjdGl2ZURlcGxveW1lbnRTdGVwKCkpXG5cbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goLi4uc3RlcHMuc2V0QXdzQ3JlZGVudGlhbHNTdGVwcyh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5jb2RlQXJ0aWZhY3RPcHRpb25zPy5hdXRoUHJvdmlkZXIpKVxuXG4gICAgaWYgKHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudClcbiAgICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5zZXROcG1Db25maWcodGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50LCAnJHt7IG1hdHJpeC5lbnZpcm9ubWVudCB9fScsIHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50KSlcblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5wcmVEZXBsb3ltZW50U3RlcCh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5wYWNrYWdlLnBhY2thZ2VNYW5hZ2VyKSlcbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMuZGVwbG95bWVudFN0ZXAodGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQsIHRoaXMucGFja2FnZS5wYWNrYWdlTWFuYWdlcikpXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnBvc3REZXBsb3ltZW50U3RlcCh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5wYWNrYWdlLnBhY2thZ2VNYW5hZ2VyKSlcblxuICAgIHRoaXMucmVsZWFzZT8uYWRkSm9icyh7ZGVwbG95OiBqb2JEZWZpbml0aW9ufSlcblxuICB9XG59Il19
191
+ DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.230" };
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUE2QztBQUM3Qyx1RUFBb0U7QUFDcEUsc0RBQWdHO0FBQ2hHLGlDQUFnQztBQUVoQyxtQ0FBMkM7QUFFM0MsMENBQXVCO0FBQ3ZCLG1DQUFnQztBQUVoQyxNQUFhLDZCQUE4QixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7SUFjM0UsWUFBWSxPQUE2QztRQUN2RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQTtRQUMxQyxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFBO1FBQ2xELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUMscUJBQXFCLElBQUksS0FBSyxDQUFBO1FBQ25FLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUFBO1FBQ2hFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBRTNDLElBQUksQ0FBQyxVQUFVO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUZBQWlGLENBQUMsQ0FBQTtRQUVyRyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ2pELElBQUksQ0FBQyxtQkFB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LENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUE7UUFDMUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQ3ZHLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBRTNHLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUMsTUFBTSxFQUFFLGFBQWEsRUFBQyxDQUFDLENBQUE7SUFFaEQsQ0FBQzs7QUEvTUgsc0VBZ05DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthd3NjZGssIFRhc2ssIFRleHRGaWxlfSBmcm9tICdwcm9qZW4nXG5pbXBvcnQge0pvYiwgSm9iUGVybWlzc2lvbn0gZnJvbSAncHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsJ1xuaW1wb3J0IHtDb2RlQXJ0aWZhY3RBdXRoUHJvdmlkZXIsIENvZGVBcnRpZmFjdE9wdGlvbnMsIE5vZGVQcm9qZWN0fSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnXG5pbXBvcnQgKiBhcyBzdGVwcyBmcm9tICcuL3N0ZXBzJ1xuaW1wb3J0IHtEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMsIERlcGxveU9wdGlvbnMsIEVudmlyb25tZW50T3B0aW9uc30gZnJvbSAnLi90eXBlcydcbmltcG9ydCB7Z2V0TWFqb3JOb2RlVmVyc2lvbn0gZnJvbSAnLi91dGlscydcblxuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcbmV4cG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCBjbGFzcyBEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcCBleHRlbmRzIGF3c2Nkay5Bd3NDZGtUeXBlU2NyaXB0QXBwIHtcblxuICAvKipcbiAgICogVGFzayB0byBkZXBsb3kgeW91ciBhcHAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZGVwbG95V29ya2Zsb3dUYXNrOiBUYXNrXG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXBsb3lhYmxlOiBib29sZWFuXG4gIHByaXZhdGUgcmVhZG9ubHkgZ2VuZXJhdGVOdm1yYzogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrQWN0aXZlRGVwbG95bWVudDogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IHdvcmtmbG93Tm9kZVZlcnNpb24/OiBzdHJpbmdcbiAgcHJvdGVjdGVkIGRlcGxveU9wdGlvbnM6IERlcGxveU9wdGlvbnNcbiAgcHJpdmF0ZSByZWFkb25seSBjb2RlQXJ0aWZhY3RPcHRpb25zPzogQ29kZUFydGlmYWN0T3B0aW9uc1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IERlcGxveWFibGVBd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucykge1xuICAgIGNvbnN0IGRlcGxveWFibGUgPSBvcHRpb25zLnJlbGVhc2UgPz8gdHJ1ZVxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICByZWxlYXNlOiBkZXBsb3lhYmxlLFxuICAgIH0pXG4gICAgdGhpcy5kZXBsb3lhYmxlID0gZGVwbG95YWJsZVxuICAgIHRoaXMuZ2VuZXJhdGVOdm1yYyA9IG9wdGlvbnMuZ2VuZXJhdGVOdm1yYyA/PyB0cnVlXG4gICAgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQgPSBvcHRpb25zLmNoZWNrQWN0aXZlRGVwbG95bWVudCA/PyBmYWxzZVxuICAgIHRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbiA9IG9wdGlvbnMud29ya2Zsb3dOb2RlVmVyc2lvblxuICAgIHRoaXMuZGVwbG95T3B0aW9ucyA9IG9wdGlvbnMuZGVwbG95T3B0aW9ucyA/PyB7ZW52aXJvbm1lbnRzOiBbXX1cbiAgICB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnMgPSBvcHRpb25zLmNvZGVBcnRpZmFjdE9wdGlvbnNcbiAgICB0aGlzLmFkZERldkRlcHMoJ2RlcGxveWFibGUtYXdzY2RrLWFwcC10cycpXG5cbiAgICBpZiAoIWRlcGxveWFibGUpXG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdUaGUgcHJvamVjdCBpcyBleHBsaWNpdGx5IHNldCB0byBub3QgcmVsZWFzZSwgbWFrZSBzdXJlIHRoaXMgaXMgZGVzaXJlZCBzZXR0aW5nJylcblxuICAgIGlmICh0aGlzLmdlbmVyYXRlTnZtcmMgJiYgIXRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbilcbiAgICAgIHRoaXMud29ya2Zsb3dOb2RlVmVyc2lvbiA9ICcxNC4xOC4xJ1xuXG4gICAgaWYgKHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudCAmJiB0aGlzLm1ham9yTm9kZVZlcnNpb24gPj0gMTgpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYG5wbUNvbmZpZ0Vudmlyb25tZW50IGlzIG5vdCBzdXBwb3J0ZWQgZm9yIG5vZGUgdmVyc2lvbnMgYWJvdmUgdmVyc2lvbiAxOC4gQ3VycmVudCB2ZXJzaW9uIGlzICR7dGhpcy5ub2RlVmVyc2lvbn1gKVxuXG4gICAgY29uc3QgZGVwbG95QXJndW1lbnQgPSB0aGlzLmRlcGxveU9wdGlvbnMuc3RhY2tQYXR0ZXJuID8gYCAke3RoaXMuZGVwbG95T3B0aW9ucy5zdGFja1BhdHRlcm59YDogJydcbiAgICB0aGlzLmRlcGxveVdvcmtmbG93VGFzayA9IHRoaXMuYWRkVGFzaygnZGVwbG95OndvcmtmbG93Jywge1xuICAgICAgcmVxdWlyZWRFbnY6IHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudCA/IFtgbnBtX2NvbmZpZ18ke3RoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudH1gXSA6IHVuZGVmaW5lZCxcbiAgICAgIGV4ZWM6IGBjZGsgZGVwbG95JHtkZXBsb3lBcmd1bWVudH0gJHt0aGlzLmdldE1ldGhvZEFyZ3VtZW50KCl9IC0tcmVxdWlyZS1hcHByb3ZhbCBuZXZlcmAsXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiByZXR1cm4gdGhlIG1ham9yIG5vZGUgdmVyc2lvbiBzZXQgZm9yIHRoZSBwcm9qZWN0XG4gICAqIEBkZWZhdWx0IDE2XG4gICAqL1xuICBnZXQgbWFqb3JOb2RlVmVyc2lvbigpOiBudW1iZXIge1xuICAgIHJldHVybiBnZXRNYWpvck5vZGVWZXJzaW9uKHRoaXMubm9kZVZlcnNpb24pXG4gIH1cblxuICBwcml2YXRlIGdldE1ldGhvZEFyZ3VtZW50KCkge1xuICAgIHJldHVybiBgLS1tZXRob2QgJHt0aGlzLmRlcGxveU9wdGlvbnMubWV0aG9kID8/ICdjaGFuZ2Utc2V0J31gXG4gIH1cblxuICBzeW50aCgpIHtcbiAgICBpZiAodGhpcy5kZXBsb3lhYmxlKVxuICAgICAgdGhpcy5hZGREZXBsb3lKb2JzKClcblxuICAgIGlmICh0aGlzLmdlbmVyYXRlTnZtcmMpXG4gICAgICBuZXcgVGV4dEZpbGUodGhpcywgJy5udm1yYycsIHtcbiAgICAgICAgbGluZXM6IFt0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPz8gJyddLFxuICAgICAgfSlcblxuICAgIHN1cGVyLnN5bnRoKClcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgbmV3IGVudmlyb25tZW50cyB0byB0aGUgYXBwbGljYXRpb25cbiAgICogQHBhcmFtIGl0ZW1zIGxpc3Qgb2YgZW52aXJvbm1lbnQgb3B0aW9uc1xuICAgKi9cbiAgYWRkRW52aXJvbm1lbnRzKC4uLml0ZW1zOiBFbnZpcm9ubWVudE9wdGlvbnNbXSkge1xuICAgIHRoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudHMucHVzaCguLi5pdGVtcylcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRW52aXJvbm1lbnRzKG5ld0Vudmlyb25tZW50czogRW52aXJvbm1lbnRPcHRpb25zW10pIHtcbiAgICB0aGlzLmRlcGxveU9wdGlvbnMgPSB7XG4gICAgICAuLi50aGlzLmRlcGxveU9wdGlvbnMsXG4gICAgICBlbnZpcm9ubWVudHM6IG5ld0Vudmlyb25tZW50cyxcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgcG9zdERlcGxveVdvcmtmbG93U2NyaXB0IGZvciBlbnZpcm9ubWVudHNcbiAgICogQHBhcmFtIHNjcmlwdCB0aGUgc2NyaXB0IHRvIGJlIGFkZGVkLCBmb3IgZXhhbXBsZSBcInBvc3Q6ZGVwbG95XCJcbiAgICogQHBhcmFtIGVudmlyb25tZW50TmFtZUZpbHRlciB0aGUgbmFtZSBvZiBlbnZpcm9ubWVudHMgdG8gYWRkIHRoZSBzY3JpcHRzIHRvLCBpZiBub3QgcHJvdmlkZWQgb3IgZW1wdHkgd2lsbCB1cGRhdGUgYWxsXG4gICAqL1xuICB1cGRhdGVQb3N0RGVwbG95V29ya2Zsb3dTY3JpcHRUb0Vudmlyb25tZW50cyhzY3JpcHQ6IHN0cmluZywgZW52aXJvbm1lbnROYW1lRmlsdGVyPzogc3RyaW5nW10pIHtcbiAgICBjb25zdCBuZXdFbnZpcm9ubWVudHMgPSB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLm1hcChlbnZpcm9ubWVudCA9PiB7XG4gICAgICBpZiAoZW52aXJvbm1lbnROYW1lRmlsdGVyICYmIGVudmlyb25tZW50TmFtZUZpbHRlci5sZW5ndGggPiAwICYmICFlbnZpcm9ubWVudE5hbWVGaWx0ZXIuaW5jbHVkZXMoZW52aXJvbm1lbnQubmFtZSkpXG4gICAgICAgIHJldHVybiBlbnZpcm9ubWVudFxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5lbnZpcm9ubWVudCxcbiAgICAgICAgcG9zdERlcGxveVdvcmtmbG93U2NyaXB0OiBzY3JpcHQsXG4gICAgICB9XG4gICAgfSlcbiAgICB0aGlzLnVwZGF0ZUVudmlyb25tZW50cyhuZXdFbnZpcm9ubWVudHMpXG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgcHJlRGVwbG95V29ya2Zsb3dTY3JpcHQgZm9yIGVudmlyb25tZW50c1xuICAgKiBAcGFyYW0gc2NyaXB0IHRoZSBzY3JpcHQgdG8gYmUgYWRkZWQsIGZvciBleGFtcGxlIFwicHJlOmRlcGxveVwiXG4gICAqIEBwYXJhbSBlbnZpcm9ubWVudE5hbWVGaWx0ZXIgdGhlIG5hbWUgb2YgZW52aXJvbm1lbnRzIHRvIGFkZCB0aGUgc2NyaXB0cyB0bywgaWYgbm90IHByb3ZpZGVkIG9yIGVtcHR5IHdpbGwgdXBkYXRlIGFsbFxuICAgKi9cbiAgdXBkYXRlUHJlRGVwbG95V29ya2Zsb3dTY3JpcHRUb0Vudmlyb25tZW50cyhzY3JpcHQ6IHN0cmluZywgZW52aXJvbm1lbnROYW1lRmlsdGVyPzogc3RyaW5nW10pIHtcbiAgICBjb25zdCBuZXdFbnZpcm9ubWVudHMgPSB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLm1hcChlbnZpcm9ubWVudCA9PiB7XG4gICAgICBpZiAoZW52aXJvbm1lbnROYW1lRmlsdGVyICYmIGVudmlyb25tZW50TmFtZUZpbHRlci5sZW5ndGggPiAwICYmICFlbnZpcm9ubWVudE5hbWVGaWx0ZXIuaW5jbHVkZXMoZW52aXJvbm1lbnQubmFtZSkpXG4gICAgICAgIHJldHVybiBlbnZpcm9ubWVudFxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5lbnZpcm9ubWVudCxcbiAgICAgICAgcHJlRGVwbG95V29ya2Zsb3dTY3JpcHQ6IHNjcmlwdCxcbiAgICAgIH1cbiAgICB9KVxuICAgIHRoaXMudXBkYXRlRW52aXJvbm1lbnRzKG5ld0Vudmlyb25tZW50cylcbiAgfVxuXG4gIHByaXZhdGUgYWRkRGVwbG95Sm9icygpIHtcblxuICAgIGlmICh0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLmxlbmd0aCA9PT0gMClcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ1RoZSBwcm9qZWN0IGRvZXMgbm90IGhhdmUgYW55IGVudmlyb25tZW50IHNldCwgbWFrZSBzdXJlIHRoaXMgaXMgZGVzaXJlZCBzZXR0aW5nJylcblxuICAgIGNvbnN0IGluY2x1ZGUgPSB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLm1hcChlbnZpcm9ubWVudE9wdGlvbnMgPT4ge1xuICAgICAgY29uc3Qge2F3c0NyZWRlbnRpYWxzfSA9IGVudmlyb25tZW50T3B0aW9uc1xuXG4gICAgICBjb25zdCBhc3N1bWVSb2xlID0gYXdzQ3JlZGVudGlhbHMucm9sZVRvQXNzdW1lID8gJ3RydWUnIDogJ2ZhbHNlJ1xuXG4gICAgICBjb25zdCBhc3N1bWVSb2xlU2V0dGluZ3MgPSBhd3NDcmVkZW50aWFscy5yb2xlVG9Bc3N1bWUgPyB7XG4gICAgICAgIHJvbGVUb0Fzc3VtZTogYXdzQ3JlZGVudGlhbHMucm9sZVRvQXNzdW1lLFxuICAgICAgICBhc3N1bWVSb2xlRHVyYXRpb25TZWNvbmRzOiBhd3NDcmVkZW50aWFscy5hc3N1bWVSb2xlRHVyYXRpb25TZWNvbmRzIHx8IDkwMCxcbiAgICAgIH06IHVuZGVmaW5lZFxuXG4gICAgICBjb25zdCBhY2Nlc3NLZXlJZFNlY3JldE5hbWUgPSBhd3NDcmVkZW50aWFscy5hY2Nlc3NLZXlJZFNlY3JldE5hbWUgPz8gJ0FXU19BQ0NFU1NfS0VZX0lEJ1xuICAgICAgY29uc3Qgc2VjcmV0QWNjZXNzS2V5U2VjcmV0TmFtZSA9IGF3c0NyZWRlbnRpYWxzLnNlY3JldEFjY2Vzc0tleVNlY3JldE5hbWUgPz8gJ0FXU19TRUNSRVRfQUNDRVNTX0tFWSdcblxuICAgICAgY29uc3QgaGFzUG9zdERlcGxveVRhc2sgPSBlbnZpcm9ubWVudE9wdGlvbnMucG9zdERlcGxveVdvcmtmbG93U2NyaXB0ID8gJ3RydWUnIDogJ2ZhbHNlJ1xuICAgICAgY29uc3QgaGFzUHJlRGVwbG95VGFzayA9IGVudmlyb25tZW50T3B0aW9ucy5wcmVEZXBsb3lXb3JrZmxvd1NjcmlwdCA/ICd0cnVlJyA6ICdmYWxzZSdcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZW52aXJvbm1lbnQ6IGVudmlyb25tZW50T3B0aW9ucy5uYW1lLFxuICAgICAgICBhY2Nlc3NLZXlJZFNlY3JldE5hbWUsXG4gICAgICAgIHNlY3JldEFjY2Vzc0tleVNlY3JldE5hbWUsXG4gICAgICAgIHJlZ2lvbjogYXdzQ3JlZGVudGlhbHMucmVnaW9uLFxuICAgICAgICBhc3N1bWVSb2xlLFxuICAgICAgICBoYXNQb3N0RGVwbG95VGFzayxcbiAgICAgICAgcG9zdERlcGxveW1lbnRTY3JpcHQ6IGVudmlyb25tZW50T3B0aW9ucy5wb3N0RGVwbG95V29ya2Zsb3dTY3JpcHQgfHwgJycsXG4gICAgICAgIGhhc1ByZURlcGxveVRhc2ssXG4gICAgICAgIHByZURlcGxveW1lbnRTY3JpcHQ6IGVudmlyb25tZW50T3B0aW9ucy5wcmVEZXBsb3lXb3JrZmxvd1NjcmlwdCB8fCAnJyxcbiAgICAgICAgLi4uYXNzdW1lUm9sZVNldHRpbmdzLFxuICAgICAgfVxuICAgIH0pXG5cbiAgICBjb25zdCBkZXBsb3lKb2JFbnYgPSB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRWYXJpYWJsZU5hbWUgPyB7XG4gICAgICBbdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50VmFyaWFibGVOYW1lXTogJyR7eyBtYXRyaXguZW52aXJvbm1lbnQgfX0nLFxuICAgIH0gOiB1bmRlZmluZWRcblxuICAgIGNvbnN0IGpvYkRlZmluaXRpb246IEpvYiA9IHtcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBjb25jdXJyZW5jeTogJyR7eyBtYXRyaXguZW52aXJvbm1lbnQgfX0tZGVwbG95JyxcbiAgICAgIG5lZWRzOiBbXG4gICAgICAgICdyZWxlYXNlX2dpdGh1YicsXG4gICAgICBdLFxuICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgY29udGVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgZGVwbG95bWVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgaWRUb2tlbjogdGhpcy5jb2RlQXJ0aWZhY3RPcHRpb25zPy5hdXRoUHJvdmlkZXIgPT09IENvZGVBcnRpZmFjdEF1dGhQcm92aWRlci5HSVRIVUJfT0lEQyA/IEpvYlBlcm1pc3Npb24uV1JJVEUgOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgICAgc3RyYXRlZ3k6IHtcbiAgICAgICAgbWF4UGFyYWxsZWw6IDEsXG4gICAgICAgIG1hdHJpeDoge1xuICAgICAgICAgIGRvbWFpbjoge1xuICAgICAgICAgICAgZW52aXJvbm1lbnQ6IGluY2x1ZGUubWFwKGUgPT4gZS5lbnZpcm9ubWVudCksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpbmNsdWRlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIG5hbWU6ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JyxcbiAgICAgIH0sXG4gICAgICBlbnY6IGRlcGxveUpvYkVudixcbiAgICAgIHN0ZXBzOiBbXSxcbiAgICB9XG5cbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMuY2hlY2tvdXRTdGVwKCkpXG5cbiAgICBjb25zdCB7dGFza1RvUnVuUHJlSW5zdGFsbH0gPSB0aGlzLmRlcGxveU9wdGlvbnNcbiAgICBpZiAodGFza1RvUnVuUHJlSW5zdGFsbClcbiAgICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5wcmVJbnN0YWxsRGVwZW5kZW5jaWVzU3RlcCh0YXNrVG9SdW5QcmVJbnN0YWxsLCB0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCkpXG5cbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goLi4uKHRoaXMucGFja2FnZS5wcm9qZWN0IGFzIE5vZGVQcm9qZWN0KS5yZW5kZXJXb3JrZmxvd1NldHVwKCkpXG5cbiAgICBpZiAodGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpXG4gICAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMuY2hlY2tBY3RpdmVEZXBsb3ltZW50U3RlcCgpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKC4uLnN0ZXBzLnNldEF3c0NyZWRlbnRpYWxzU3RlcHModGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQsIHRoaXMuY29kZUFydGlmYWN0T3B0aW9ucz8uYXV0aFByb3ZpZGVyKSlcblxuICAgIGlmICh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQpXG4gICAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMuc2V0TnBtQ29uZmlnKHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudCwgJyR7eyBtYXRyaXguZW52aXJvbm1lbnQgfX0nLCB0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCkpXG5cbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucHJlRGVwbG95bWVudFN0ZXAodGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQsIHRoaXMucGFja2FnZS5wYWNrYWdlTWFuYWdlcikpXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmRlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5wb3N0RGVwbG95bWVudFN0ZXAodGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQsIHRoaXMucGFja2FnZS5wYWNrYWdlTWFuYWdlcikpXG5cbiAgICB0aGlzLnJlbGVhc2U/LmFkZEpvYnMoe2RlcGxveTogam9iRGVmaW5pdGlvbn0pXG5cbiAgfVxufSJdfQ==
package/package.json CHANGED
@@ -59,7 +59,8 @@
59
59
  "standard-version": "^9",
60
60
  "ts-jest": "^29",
61
61
  "ts-node": "^10.9.1",
62
- "typescript": "^5.2.2"
62
+ "typescript": "^5.2.2",
63
+ "yaml": "^2.3.2"
63
64
  },
64
65
  "peerDependencies": {
65
66
  "projen": "^0.73.24"
@@ -79,7 +80,7 @@
79
80
  ],
80
81
  "main": "lib/index.js",
81
82
  "license": "Apache-2.0",
82
- "version": "0.1.229",
83
+ "version": "0.1.230",
83
84
  "jest": {
84
85
  "testMatch": [
85
86
  "<rootDir>/src/**/__tests__/**/*.ts?(x)",