deployable-awscdk-app-ts 0.1.466 → 0.1.467
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 +2 -2
- package/API.md +20 -20
- package/lib/index.js +1 -1
- package/package.json +1 -1
package/.jsii
CHANGED
package/API.md
CHANGED
|
@@ -76,7 +76,7 @@ Returns a string representation of this construct.
|
|
|
76
76
|
##### `addExcludeFromCleanup` <a name="addExcludeFromCleanup" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addExcludeFromCleanup"></a>
|
|
77
77
|
|
|
78
78
|
```typescript
|
|
79
|
-
public addExcludeFromCleanup(globs: string): void
|
|
79
|
+
public addExcludeFromCleanup(globs: ...string[]): void
|
|
80
80
|
```
|
|
81
81
|
|
|
82
82
|
Exclude the matching files from pre-synth cleanup.
|
|
@@ -86,7 +86,7 @@ source files include the projen marker and we don't want them to be erased durin
|
|
|
86
86
|
|
|
87
87
|
###### `globs`<sup>Required</sup> <a name="globs" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addExcludeFromCleanup.parameter.globs"></a>
|
|
88
88
|
|
|
89
|
-
- *Type:* string
|
|
89
|
+
- *Type:* ...string[]
|
|
90
90
|
|
|
91
91
|
The glob patterns to match.
|
|
92
92
|
|
|
@@ -342,7 +342,7 @@ public addBins(bins: {[ key: string ]: string}): void
|
|
|
342
342
|
##### `addBundledDeps` <a name="addBundledDeps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addBundledDeps"></a>
|
|
343
343
|
|
|
344
344
|
```typescript
|
|
345
|
-
public addBundledDeps(deps: string): void
|
|
345
|
+
public addBundledDeps(deps: ...string[]): void
|
|
346
346
|
```
|
|
347
347
|
|
|
348
348
|
Defines bundled dependencies.
|
|
@@ -352,7 +352,7 @@ Bundled dependencies will be added as normal dependencies as well as to the
|
|
|
352
352
|
|
|
353
353
|
###### `deps`<sup>Required</sup> <a name="deps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addBundledDeps.parameter.deps"></a>
|
|
354
354
|
|
|
355
|
-
- *Type:* string
|
|
355
|
+
- *Type:* ...string[]
|
|
356
356
|
|
|
357
357
|
Names modules to install.
|
|
358
358
|
|
|
@@ -367,28 +367,28 @@ add/upgrade`. If you wish to specify a version range use this syntax:
|
|
|
367
367
|
##### ~~`addCompileCommand`~~ <a name="addCompileCommand" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addCompileCommand"></a>
|
|
368
368
|
|
|
369
369
|
```typescript
|
|
370
|
-
public addCompileCommand(commands: string): void
|
|
370
|
+
public addCompileCommand(commands: ...string[]): void
|
|
371
371
|
```
|
|
372
372
|
|
|
373
373
|
DEPRECATED.
|
|
374
374
|
|
|
375
375
|
###### `commands`<sup>Required</sup> <a name="commands" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addCompileCommand.parameter.commands"></a>
|
|
376
376
|
|
|
377
|
-
- *Type:* string
|
|
377
|
+
- *Type:* ...string[]
|
|
378
378
|
|
|
379
379
|
---
|
|
380
380
|
|
|
381
381
|
##### `addDeps` <a name="addDeps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addDeps"></a>
|
|
382
382
|
|
|
383
383
|
```typescript
|
|
384
|
-
public addDeps(deps: string): void
|
|
384
|
+
public addDeps(deps: ...string[]): void
|
|
385
385
|
```
|
|
386
386
|
|
|
387
387
|
Defines normal dependencies.
|
|
388
388
|
|
|
389
389
|
###### `deps`<sup>Required</sup> <a name="deps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addDeps.parameter.deps"></a>
|
|
390
390
|
|
|
391
|
-
- *Type:* string
|
|
391
|
+
- *Type:* ...string[]
|
|
392
392
|
|
|
393
393
|
Names modules to install.
|
|
394
394
|
|
|
@@ -403,14 +403,14 @@ add/upgrade`. If you wish to specify a version range use this syntax:
|
|
|
403
403
|
##### `addDevDeps` <a name="addDevDeps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addDevDeps"></a>
|
|
404
404
|
|
|
405
405
|
```typescript
|
|
406
|
-
public addDevDeps(deps: string): void
|
|
406
|
+
public addDevDeps(deps: ...string[]): void
|
|
407
407
|
```
|
|
408
408
|
|
|
409
409
|
Defines development/test dependencies.
|
|
410
410
|
|
|
411
411
|
###### `deps`<sup>Required</sup> <a name="deps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addDevDeps.parameter.deps"></a>
|
|
412
412
|
|
|
413
|
-
- *Type:* string
|
|
413
|
+
- *Type:* ...string[]
|
|
414
414
|
|
|
415
415
|
Names modules to install.
|
|
416
416
|
|
|
@@ -441,14 +441,14 @@ The fields to set.
|
|
|
441
441
|
##### `addKeywords` <a name="addKeywords" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addKeywords"></a>
|
|
442
442
|
|
|
443
443
|
```typescript
|
|
444
|
-
public addKeywords(keywords: string): void
|
|
444
|
+
public addKeywords(keywords: ...string[]): void
|
|
445
445
|
```
|
|
446
446
|
|
|
447
447
|
Adds keywords to package.json (deduplicated).
|
|
448
448
|
|
|
449
449
|
###### `keywords`<sup>Required</sup> <a name="keywords" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addKeywords.parameter.keywords"></a>
|
|
450
450
|
|
|
451
|
-
- *Type:* string
|
|
451
|
+
- *Type:* ...string[]
|
|
452
452
|
|
|
453
453
|
The keywords to add.
|
|
454
454
|
|
|
@@ -457,7 +457,7 @@ The keywords to add.
|
|
|
457
457
|
##### `addPeerDeps` <a name="addPeerDeps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addPeerDeps"></a>
|
|
458
458
|
|
|
459
459
|
```typescript
|
|
460
|
-
public addPeerDeps(deps: string): void
|
|
460
|
+
public addPeerDeps(deps: ...string[]): void
|
|
461
461
|
```
|
|
462
462
|
|
|
463
463
|
Defines peer dependencies.
|
|
@@ -468,7 +468,7 @@ your code against the minimum version required from your consumers.
|
|
|
468
468
|
|
|
469
469
|
###### `deps`<sup>Required</sup> <a name="deps" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addPeerDeps.parameter.deps"></a>
|
|
470
470
|
|
|
471
|
-
- *Type:* string
|
|
471
|
+
- *Type:* ...string[]
|
|
472
472
|
|
|
473
473
|
Names modules to install.
|
|
474
474
|
|
|
@@ -499,14 +499,14 @@ The scripts to set.
|
|
|
499
499
|
##### ~~`addTestCommand`~~ <a name="addTestCommand" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addTestCommand"></a>
|
|
500
500
|
|
|
501
501
|
```typescript
|
|
502
|
-
public addTestCommand(commands: string): void
|
|
502
|
+
public addTestCommand(commands: ...string[]): void
|
|
503
503
|
```
|
|
504
504
|
|
|
505
505
|
DEPRECATED.
|
|
506
506
|
|
|
507
507
|
###### `commands`<sup>Required</sup> <a name="commands" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addTestCommand.parameter.commands"></a>
|
|
508
508
|
|
|
509
|
-
- *Type:* string
|
|
509
|
+
- *Type:* ...string[]
|
|
510
510
|
|
|
511
511
|
---
|
|
512
512
|
|
|
@@ -585,14 +585,14 @@ The command to execute.
|
|
|
585
585
|
##### `addCdkDependency` <a name="addCdkDependency" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addCdkDependency"></a>
|
|
586
586
|
|
|
587
587
|
```typescript
|
|
588
|
-
public addCdkDependency(modules: string): void
|
|
588
|
+
public addCdkDependency(modules: ...string[]): void
|
|
589
589
|
```
|
|
590
590
|
|
|
591
591
|
Adds an AWS CDK module dependencies.
|
|
592
592
|
|
|
593
593
|
###### `modules`<sup>Required</sup> <a name="modules" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addCdkDependency.parameter.modules"></a>
|
|
594
594
|
|
|
595
|
-
- *Type:* string
|
|
595
|
+
- *Type:* ...string[]
|
|
596
596
|
|
|
597
597
|
The list of modules to depend on.
|
|
598
598
|
|
|
@@ -601,14 +601,14 @@ The list of modules to depend on.
|
|
|
601
601
|
##### `addEnvironments` <a name="addEnvironments" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addEnvironments"></a>
|
|
602
602
|
|
|
603
603
|
```typescript
|
|
604
|
-
public addEnvironments(items: EnvironmentOptions): void
|
|
604
|
+
public addEnvironments(items: ...EnvironmentOptions[]): void
|
|
605
605
|
```
|
|
606
606
|
|
|
607
607
|
Add new environments to the application.
|
|
608
608
|
|
|
609
609
|
###### `items`<sup>Required</sup> <a name="items" id="deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp.addEnvironments.parameter.items"></a>
|
|
610
610
|
|
|
611
|
-
- *Type:*
|
|
611
|
+
- *Type:* ...<a href="#deployable-awscdk-app-ts.EnvironmentOptions">EnvironmentOptions</a>[]
|
|
612
612
|
|
|
613
613
|
list of environment options.
|
|
614
614
|
|
package/lib/index.js
CHANGED
|
@@ -194,5 +194,5 @@ class DeployableAwsCdkTypeScriptApp extends projen_1.awscdk.AwsCdkTypeScriptApp
|
|
|
194
194
|
}
|
|
195
195
|
exports.DeployableAwsCdkTypeScriptApp = DeployableAwsCdkTypeScriptApp;
|
|
196
196
|
_a = JSII_RTTI_SYMBOL_1;
|
|
197
|
-
DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.
|
|
197
|
+
DeployableAwsCdkTypeScriptApp[_a] = { fqn: "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp", version: "0.1.467" };
|
|
198
198
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUE2QztBQUM3Qyx1RUFBb0U7QUFDcEUsc0RBQWdHO0FBQ2hHLGlDQUFnQztBQUVoQyxtQ0FBMkM7QUFFM0MsMENBQXVCO0FBQ3ZCLG1DQUFnQztBQUVoQyxNQUFhLDZCQUE4QixTQUFRLGVBQU0sQ0FBQyxtQkFBbUI7SUFjM0UsWUFBWSxPQUE2QztRQUN2RCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQTtRQUMxQyxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUM1QixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFBO1FBQ2xELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUMscUJBQXFCLElBQUksS0FBSyxDQUFBO1FBQ25FLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLEVBQUMsWUFBWSxFQUFFLEVBQUUsRUFBQyxDQUFBO1FBQ2hFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUE7UUFDdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBRTNDLElBQUksQ0FBQyxVQUFVO1lBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUZBQWlGLENBQUMsQ0FBQTtRQUVyRyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ2pELElBQUksQ0FBQyxtQkFB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QUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRSwyQkFBMkIsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFBO1FBRWhKLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFBO1FBQzFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQTtRQUN2RyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQTtRQUUzRyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUMsQ0FBQyxDQUFBO0lBRWhELENBQUM7O0FBck5ILHNFQXNOQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YXdzY2RrLCBUYXNrLCBUZXh0RmlsZX0gZnJvbSAncHJvamVuJ1xuaW1wb3J0IHtKb2IsIEpvYlBlcm1pc3Npb259IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViL3dvcmtmbG93cy1tb2RlbCdcbmltcG9ydCB7Q29kZUFydGlmYWN0QXV0aFByb3ZpZGVyLCBDb2RlQXJ0aWZhY3RPcHRpb25zLCBOb2RlUHJvamVjdH0gZnJvbSAncHJvamVuL2xpYi9qYXZhc2NyaXB0J1xuaW1wb3J0ICogYXMgc3RlcHMgZnJvbSAnLi9zdGVwcydcbmltcG9ydCB7RGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zLCBEZXBsb3lPcHRpb25zLCBFbnZpcm9ubWVudE9wdGlvbnN9IGZyb20gJy4vdHlwZXMnXG5pbXBvcnQge2dldE1ham9yTm9kZVZlcnNpb259IGZyb20gJy4vdXRpbHMnXG5cbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnXG5leHBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzJ1xuXG5leHBvcnQgY2xhc3MgRGVwbG95YWJsZUF3c0Nka1R5cGVTY3JpcHRBcHAgZXh0ZW5kcyBhd3NjZGsuQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG5cbiAgLyoqXG4gICAqIFRhc2sgdG8gZGVwbG95IHlvdXIgYXBwLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlcGxveVdvcmtmbG93VGFzazogVGFza1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVwbG95YWJsZTogYm9vbGVhblxuICBwcml2YXRlIHJlYWRvbmx5IGdlbmVyYXRlTnZtcmM6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSBjaGVja0FjdGl2ZURlcGxveW1lbnQ6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvd05vZGVWZXJzaW9uPzogc3RyaW5nXG4gIHByb3RlY3RlZCBkZXBsb3lPcHRpb25zOiBEZXBsb3lPcHRpb25zXG4gIHByaXZhdGUgcmVhZG9ubHkgY29kZUFydGlmYWN0T3B0aW9ucz86IENvZGVBcnRpZmFjdE9wdGlvbnNcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBEZXBsb3lhYmxlQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMpIHtcbiAgICBjb25zdCBkZXBsb3lhYmxlID0gb3B0aW9ucy5yZWxlYXNlID8/IHRydWVcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcmVsZWFzZTogZGVwbG95YWJsZSxcbiAgICB9KVxuICAgIHRoaXMuZGVwbG95YWJsZSA9IGRlcGxveWFibGVcbiAgICB0aGlzLmdlbmVyYXRlTnZtcmMgPSBvcHRpb25zLmdlbmVyYXRlTnZtcmMgPz8gdHJ1ZVxuICAgIHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50ID0gb3B0aW9ucy5jaGVja0FjdGl2ZURlcGxveW1lbnQgPz8gZmFsc2VcbiAgICB0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPSBvcHRpb25zLndvcmtmbG93Tm9kZVZlcnNpb25cbiAgICB0aGlzLmRlcGxveU9wdGlvbnMgPSBvcHRpb25zLmRlcGxveU9wdGlvbnMgPz8ge2Vudmlyb25tZW50czogW119XG4gICAgdGhpcy5jb2RlQXJ0aWZhY3RPcHRpb25zID0gb3B0aW9ucy5jb2RlQXJ0aWZhY3RPcHRpb25zXG4gICAgdGhpcy5hZGREZXZEZXBzKCdkZXBsb3lhYmxlLWF3c2Nkay1hcHAtdHMnKVxuXG4gICAgaWYgKCFkZXBsb3lhYmxlKVxuICAgICAgdGhpcy5sb2dnZXIud2FybignVGhlIHByb2plY3QgaXMgZXhwbGljaXRseSBzZXQgdG8gbm90IHJlbGVhc2UsIG1ha2Ugc3VyZSB0aGlzIGlzIGRlc2lyZWQgc2V0dGluZycpXG5cbiAgICBpZiAodGhpcy5nZW5lcmF0ZU52bXJjICYmICF0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24pXG4gICAgICB0aGlzLndvcmtmbG93Tm9kZVZlcnNpb24gPSAnMTQuMTguMSdcblxuICAgIGlmICh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQgJiYgdGhpcy5tYWpvck5vZGVWZXJzaW9uID49IDE4KVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBucG1Db25maWdFbnZpcm9ubWVudCBpcyBub3Qgc3VwcG9ydGVkIGZvciBub2RlIHZlcnNpb25zIGFib3ZlIHZlcnNpb24gMTguIEN1cnJlbnQgdmVyc2lvbiBpcyAke3RoaXMubm9kZVZlcnNpb259YClcblxuICAgIGNvbnN0IGRlcGxveUFyZ3VtZW50ID0gdGhpcy5kZXBsb3lPcHRpb25zLnN0YWNrUGF0dGVybiA/IGAgJHt0aGlzLmRlcGxveU9wdGlvbnMuc3RhY2tQYXR0ZXJufWA6ICcnXG4gICAgY29uc3QgZGVwbG95Q29tbWFuZCA9IGBjZGsgZGVwbG95JHtkZXBsb3lBcmd1bWVudH0gJHt0aGlzLmdldE1ldGhvZEFyZ3VtZW50KCl9IC0tcmVxdWlyZS1hcHByb3ZhbCBuZXZlcmBcbiAgICBjb25zdCByZXF1aXJlZEVudiA9IHRoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudCA/IFtgbnBtX2NvbmZpZ18ke3RoaXMuZGVwbG95T3B0aW9ucy5ucG1Db25maWdFbnZpcm9ubWVudH1gXSA6IHVuZGVmaW5lZFxuICAgIHRoaXMuZGVwbG95V29ya2Zsb3dUYXNrID0gdGhpcy5hZGRUYXNrKCdkZXBsb3k6d29ya2Zsb3cnLCB7XG4gICAgICByZXF1aXJlZEVudixcbiAgICAgIGV4ZWM6IGRlcGxveUNvbW1hbmQsXG4gICAgfSlcbiAgICB0aGlzLmFkZFRhc2soJ2RlcGxveTpob3Rzd2FwJywge1xuICAgICAgcmVxdWlyZWRFbnYsXG4gICAgICBleGVjOiBgJHtkZXBsb3lDb21tYW5kfSAtLWhvdHN3YXBgLFxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogcmV0dXJuIHRoZSBtYWpvciBub2RlIHZlcnNpb24gc2V0IGZvciB0aGUgcHJvamVjdFxuICAgKiBAZGVmYXVsdCAxNlxuICAgKi9cbiAgZ2V0IG1ham9yTm9kZVZlcnNpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZ2V0TWFqb3JOb2RlVmVyc2lvbih0aGlzLm5vZGVWZXJzaW9uKVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZXRob2RBcmd1bWVudCgpIHtcbiAgICByZXR1cm4gYC0tbWV0aG9kICR7dGhpcy5kZXBsb3lPcHRpb25zLm1ldGhvZCA/PyAnY2hhbmdlLXNldCd9YFxuICB9XG5cbiAgc3ludGgoKSB7XG4gICAgaWYgKHRoaXMuZGVwbG95YWJsZSlcbiAgICAgIHRoaXMuYWRkRGVwbG95Sm9icygpXG5cbiAgICBpZiAodGhpcy5nZW5lcmF0ZU52bXJjKVxuICAgICAgbmV3IFRleHRGaWxlKHRoaXMsICcubnZtcmMnLCB7XG4gICAgICAgIGxpbmVzOiBbdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID8/ICcnXSxcbiAgICAgIH0pXG5cbiAgICBzdXBlci5zeW50aCgpXG4gIH1cblxuICAvKipcbiAgICogQWRkIG5ldyBlbnZpcm9ubWVudHMgdG8gdGhlIGFwcGxpY2F0aW9uXG4gICAqIEBwYXJhbSBpdGVtcyBsaXN0IG9mIGVudmlyb25tZW50IG9wdGlvbnNcbiAgICovXG4gIGFkZEVudmlyb25tZW50cyguLi5pdGVtczogRW52aXJvbm1lbnRPcHRpb25zW10pIHtcbiAgICB0aGlzLmRlcGxveU9wdGlvbnMuZW52aXJvbm1lbnRzLnB1c2goLi4uaXRlbXMpXG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUVudmlyb25tZW50cyhuZXdFbnZpcm9ubWVudHM6IEVudmlyb25tZW50T3B0aW9uc1tdKSB7XG4gICAgdGhpcy5kZXBsb3lPcHRpb25zID0ge1xuICAgICAgLi4udGhpcy5kZXBsb3lPcHRpb25zLFxuICAgICAgZW52aXJvbm1lbnRzOiBuZXdFbnZpcm9ubWVudHMsXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIHBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdCBmb3IgZW52aXJvbm1lbnRzXG4gICAqIEBwYXJhbSBzY3JpcHQgdGhlIHNjcmlwdCB0byBiZSBhZGRlZCwgZm9yIGV4YW1wbGUgXCJwb3N0OmRlcGxveVwiXG4gICAqIEBwYXJhbSBlbnZpcm9ubWVudE5hbWVGaWx0ZXIgdGhlIG5hbWUgb2YgZW52aXJvbm1lbnRzIHRvIGFkZCB0aGUgc2NyaXB0cyB0bywgaWYgbm90IHByb3ZpZGVkIG9yIGVtcHR5IHdpbGwgdXBkYXRlIGFsbFxuICAgKi9cbiAgdXBkYXRlUG9zdERlcGxveVdvcmtmbG93U2NyaXB0VG9FbnZpcm9ubWVudHMoc2NyaXB0OiBzdHJpbmcsIGVudmlyb25tZW50TmFtZUZpbHRlcj86IHN0cmluZ1tdKSB7XG4gICAgY29uc3QgbmV3RW52aXJvbm1lbnRzID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5tYXAoZW52aXJvbm1lbnQgPT4ge1xuICAgICAgaWYgKGVudmlyb25tZW50TmFtZUZpbHRlciAmJiBlbnZpcm9ubWVudE5hbWVGaWx0ZXIubGVuZ3RoID4gMCAmJiAhZW52aXJvbm1lbnROYW1lRmlsdGVyLmluY2x1ZGVzKGVudmlyb25tZW50Lm5hbWUpKVxuICAgICAgICByZXR1cm4gZW52aXJvbm1lbnRcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZW52aXJvbm1lbnQsXG4gICAgICAgIHBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdDogc2NyaXB0LFxuICAgICAgfVxuICAgIH0pXG4gICAgdGhpcy51cGRhdGVFbnZpcm9ubWVudHMobmV3RW52aXJvbm1lbnRzKVxuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIHByZURlcGxveVdvcmtmbG93U2NyaXB0IGZvciBlbnZpcm9ubWVudHNcbiAgICogQHBhcmFtIHNjcmlwdCB0aGUgc2NyaXB0IHRvIGJlIGFkZGVkLCBmb3IgZXhhbXBsZSBcInByZTpkZXBsb3lcIlxuICAgKiBAcGFyYW0gZW52aXJvbm1lbnROYW1lRmlsdGVyIHRoZSBuYW1lIG9mIGVudmlyb25tZW50cyB0byBhZGQgdGhlIHNjcmlwdHMgdG8sIGlmIG5vdCBwcm92aWRlZCBvciBlbXB0eSB3aWxsIHVwZGF0ZSBhbGxcbiAgICovXG4gIHVwZGF0ZVByZURlcGxveVdvcmtmbG93U2NyaXB0VG9FbnZpcm9ubWVudHMoc2NyaXB0OiBzdHJpbmcsIGVudmlyb25tZW50TmFtZUZpbHRlcj86IHN0cmluZ1tdKSB7XG4gICAgY29uc3QgbmV3RW52aXJvbm1lbnRzID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5tYXAoZW52aXJvbm1lbnQgPT4ge1xuICAgICAgaWYgKGVudmlyb25tZW50TmFtZUZpbHRlciAmJiBlbnZpcm9ubWVudE5hbWVGaWx0ZXIubGVuZ3RoID4gMCAmJiAhZW52aXJvbm1lbnROYW1lRmlsdGVyLmluY2x1ZGVzKGVudmlyb25tZW50Lm5hbWUpKVxuICAgICAgICByZXR1cm4gZW52aXJvbm1lbnRcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZW52aXJvbm1lbnQsXG4gICAgICAgIHByZURlcGxveVdvcmtmbG93U2NyaXB0OiBzY3JpcHQsXG4gICAgICB9XG4gICAgfSlcbiAgICB0aGlzLnVwZGF0ZUVudmlyb25tZW50cyhuZXdFbnZpcm9ubWVudHMpXG4gIH1cblxuICBwcml2YXRlIGFkZERlcGxveUpvYnMoKSB7XG5cbiAgICBpZiAodGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5sZW5ndGggPT09IDApXG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdUaGUgcHJvamVjdCBkb2VzIG5vdCBoYXZlIGFueSBlbnZpcm9ubWVudCBzZXQsIG1ha2Ugc3VyZSB0aGlzIGlzIGRlc2lyZWQgc2V0dGluZycpXG5cbiAgICBjb25zdCBpbmNsdWRlID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50cy5tYXAoZW52aXJvbm1lbnRPcHRpb25zID0+IHtcbiAgICAgIGNvbnN0IHthd3NDcmVkZW50aWFsc30gPSBlbnZpcm9ubWVudE9wdGlvbnNcblxuICAgICAgY29uc3QgYXNzdW1lUm9sZSA9IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSA/ICd0cnVlJyA6ICdmYWxzZSdcblxuICAgICAgY29uc3QgYXNzdW1lUm9sZVNldHRpbmdzID0gYXdzQ3JlZGVudGlhbHMucm9sZVRvQXNzdW1lID8ge1xuICAgICAgICByb2xlVG9Bc3N1bWU6IGF3c0NyZWRlbnRpYWxzLnJvbGVUb0Fzc3VtZSxcbiAgICAgICAgYXNzdW1lUm9sZUR1cmF0aW9uU2Vjb25kczogYXdzQ3JlZGVudGlhbHMuYXNzdW1lUm9sZUR1cmF0aW9uU2Vjb25kcyB8fCA5MDAsXG4gICAgICB9OiB1bmRlZmluZWRcblxuICAgICAgY29uc3QgYWNjZXNzS2V5SWRTZWNyZXROYW1lID0gYXdzQ3JlZGVudGlhbHMuYWNjZXNzS2V5SWRTZWNyZXROYW1lID8/ICdBV1NfQUNDRVNTX0tFWV9JRCdcbiAgICAgIGNvbnN0IHNlY3JldEFjY2Vzc0tleVNlY3JldE5hbWUgPSBhd3NDcmVkZW50aWFscy5zZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lID8/ICdBV1NfU0VDUkVUX0FDQ0VTU19LRVknXG5cbiAgICAgIGNvbnN0IGhhc1Bvc3REZXBsb3lUYXNrID0gZW52aXJvbm1lbnRPcHRpb25zLnBvc3REZXBsb3lXb3JrZmxvd1NjcmlwdCA/ICd0cnVlJyA6ICdmYWxzZSdcbiAgICAgIGNvbnN0IGhhc1ByZURlcGxveVRhc2sgPSBlbnZpcm9ubWVudE9wdGlvbnMucHJlRGVwbG95V29ya2Zsb3dTY3JpcHQgPyAndHJ1ZScgOiAnZmFsc2UnXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGVudmlyb25tZW50OiBlbnZpcm9ubWVudE9wdGlvbnMubmFtZSxcbiAgICAgICAgYWNjZXNzS2V5SWRTZWNyZXROYW1lLFxuICAgICAgICBzZWNyZXRBY2Nlc3NLZXlTZWNyZXROYW1lLFxuICAgICAgICByZWdpb246IGF3c0NyZWRlbnRpYWxzLnJlZ2lvbixcbiAgICAgICAgYXNzdW1lUm9sZSxcbiAgICAgICAgaGFzUG9zdERlcGxveVRhc2ssXG4gICAgICAgIHBvc3REZXBsb3ltZW50U2NyaXB0OiBlbnZpcm9ubWVudE9wdGlvbnMucG9zdERlcGxveVdvcmtmbG93U2NyaXB0IHx8ICcnLFxuICAgICAgICBoYXNQcmVEZXBsb3lUYXNrLFxuICAgICAgICBwcmVEZXBsb3ltZW50U2NyaXB0OiBlbnZpcm9ubWVudE9wdGlvbnMucHJlRGVwbG95V29ya2Zsb3dTY3JpcHQgfHwgJycsXG4gICAgICAgIC4uLmFzc3VtZVJvbGVTZXR0aW5ncyxcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgY29uc3QgZGVwbG95Sm9iRW52ID0gdGhpcy5kZXBsb3lPcHRpb25zLmVudmlyb25tZW50VmFyaWFibGVOYW1lID8ge1xuICAgICAgW3RoaXMuZGVwbG95T3B0aW9ucy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZV06ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JyxcbiAgICB9IDogdW5kZWZpbmVkXG5cbiAgICBjb25zdCBqb2JEZWZpbml0aW9uOiBKb2IgPSB7XG4gICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgY29uY3VycmVuY3k6ICcke3sgbWF0cml4LmVudmlyb25tZW50IH19LWRlcGxveScsXG4gICAgICBuZWVkczogW1xuICAgICAgICAncmVsZWFzZV9naXRodWInLFxuICAgICAgXSxcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgIGRlcGxveW1lbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgIGlkVG9rZW46IHRoaXMuY29kZUFydGlmYWN0T3B0aW9ucz8uYXV0aFByb3ZpZGVyID09PSBDb2RlQXJ0aWZhY3RBdXRoUHJvdmlkZXIuR0lUSFVCX09JREMgPyBKb2JQZXJtaXNzaW9uLldSSVRFIDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICAgIHN0cmF0ZWd5OiB7XG4gICAgICAgIG1heFBhcmFsbGVsOiAxLFxuICAgICAgICBtYXRyaXg6IHtcbiAgICAgICAgICBkb21haW46IHtcbiAgICAgICAgICAgIGVudmlyb25tZW50OiBpbmNsdWRlLm1hcChlID0+IGUuZW52aXJvbm1lbnQpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgaW5jbHVkZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBuYW1lOiAnJHt7IG1hdHJpeC5lbnZpcm9ubWVudCB9fScsXG4gICAgICB9LFxuICAgICAgZW52OiBkZXBsb3lKb2JFbnYsXG4gICAgICBzdGVwczogW10sXG4gICAgfVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrb3V0U3RlcCgpKVxuXG4gICAgY29uc3Qge3Rhc2tUb1J1blByZUluc3RhbGx9ID0gdGhpcy5kZXBsb3lPcHRpb25zXG4gICAgaWYgKHRhc2tUb1J1blByZUluc3RhbGwpXG4gICAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucHJlSW5zdGFsbERlcGVuZGVuY2llc1N0ZXAodGFza1RvUnVuUHJlSW5zdGFsbCwgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKC4uLih0aGlzLnBhY2thZ2UucHJvamVjdCBhcyBOb2RlUHJvamVjdCkucmVuZGVyV29ya2Zsb3dTZXR1cCgpKVxuXG4gICAgaWYgKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLmNoZWNrQWN0aXZlRGVwbG95bWVudFN0ZXAoKSlcblxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaCguLi5zdGVwcy5zZXRBd3NDcmVkZW50aWFsc1N0ZXBzKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLmNvZGVBcnRpZmFjdE9wdGlvbnM/LmF1dGhQcm92aWRlcikpXG5cbiAgICBpZiAodGhpcy5kZXBsb3lPcHRpb25zLm5wbUNvbmZpZ0Vudmlyb25tZW50KVxuICAgICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnNldE5wbUNvbmZpZyh0aGlzLmRlcGxveU9wdGlvbnMubnBtQ29uZmlnRW52aXJvbm1lbnQsICcke3sgbWF0cml4LmVudmlyb25tZW50IH19JywgdGhpcy5jaGVja0FjdGl2ZURlcGxveW1lbnQpKVxuXG4gICAgam9iRGVmaW5pdGlvbi5zdGVwcy5wdXNoKHN0ZXBzLnByZURlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuICAgIGpvYkRlZmluaXRpb24uc3RlcHMucHVzaChzdGVwcy5kZXBsb3ltZW50U3RlcCh0aGlzLmNoZWNrQWN0aXZlRGVwbG95bWVudCwgdGhpcy5wYWNrYWdlLnBhY2thZ2VNYW5hZ2VyKSlcbiAgICBqb2JEZWZpbml0aW9uLnN0ZXBzLnB1c2goc3RlcHMucG9zdERlcGxveW1lbnRTdGVwKHRoaXMuY2hlY2tBY3RpdmVEZXBsb3ltZW50LCB0aGlzLnBhY2thZ2UucGFja2FnZU1hbmFnZXIpKVxuXG4gICAgdGhpcy5yZWxlYXNlPy5hZGRKb2JzKHtkZXBsb3k6IGpvYkRlZmluaXRpb259KVxuXG4gIH1cbn0iXX0=
|