@xpertss/projen-types 0.0.20 → 0.0.21
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 +134 -26
- package/API.md +258 -6
- package/README.md +6 -1
- package/lib/actions/action-build-workflow.js +1 -1
- package/lib/actions/action-dogfood-workflow.js +1 -1
- package/lib/actions/action-sonar-workflow.js +1 -1
- package/lib/actions/github-action-project.d.ts +10 -0
- package/lib/actions/github-action-project.js +4 -3
- package/lib/cdk/app-runtime-scaffold.js +1 -1
- package/lib/cdk/cdk-app-project.js +1 -1
- package/lib/cdk/cdk-infra-project.js +1 -1
- package/lib/cdk/cdk-typescript-base.js +13 -2
- package/lib/cdk/components/ecr-ecs-constructs.js +1 -1
- package/lib/cdk/components/edge-networking-constructs.js +1 -1
- package/lib/cdk/database-component.js +1 -1
- package/lib/cdk/options.d.ts +20 -0
- package/lib/cdk/options.js +1 -1
- package/lib/common/projen-drift-check-workflow.js +1 -1
- package/lib/common/workflow-change-notice-workflow.js +1 -1
- package/lib/java/components/cdk-deploy-hook.js +1 -1
- package/lib/java/components/code-index-workflow.js +1 -1
- package/lib/java/components/docker-publish.js +1 -1
- package/lib/java/components/flyway-migration.js +1 -1
- package/lib/java/components/github-packages-publish.js +1 -1
- package/lib/java/components/maven-central-publish.js +1 -1
- package/lib/java/components/maven-upgrade-report.js +1 -1
- package/lib/java/java-app-project.js +1 -1
- package/lib/java/java-library-project.js +1 -1
- package/lib/java/java-maven-base.js +3 -3
- package/lib/java/java-service-project.js +1 -1
- package/lib/java/java-spring-boot-project.js +1 -1
- package/lib/java/maven/maven-module.js +1 -1
- package/lib/java/maven/maven-pom.js +1 -1
- package/lib/java/options.d.ts +1 -1
- package/lib/java/options.js +1 -1
- package/package.json +1 -1
package/API.md
CHANGED
|
@@ -15288,8 +15288,12 @@ const cdkAppProjectOptions: CdkAppProjectOptions = { ... }
|
|
|
15288
15288
|
| --- | --- | --- |
|
|
15289
15289
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.name">name</a></code> | <code>string</code> | *No description.* |
|
|
15290
15290
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.cdkVersion">cdkVersion</a></code> | <code>string</code> | *No description.* |
|
|
15291
|
+
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | Copyright owner named in the `LICENSE`. |
|
|
15292
|
+
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | Copyright period named in the `LICENSE`. |
|
|
15291
15293
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.editorconfig">editorconfig</a></code> | <code>boolean</code> | Write a projen-managed `.editorconfig`. |
|
|
15292
15294
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.gheTokenSecret">gheTokenSecret</a></code> | <code>string</code> | *No description.* |
|
|
15295
|
+
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.license">license</a></code> | <code>string</code> | SPDX identifier for the generated `LICENSE`. |
|
|
15296
|
+
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.licensed">licensed</a></code> | <code>boolean</code> | Write a `LICENSE`. |
|
|
15293
15297
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.ecrEcs">ecrEcs</a></code> | <code><a href="#@xpertss/projen-types.EcrEcsOptions">EcrEcsOptions</a></code> | *No description.* |
|
|
15294
15298
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.edgeResources">edgeResources</a></code> | <code>string[]</code> | *No description.* |
|
|
15295
15299
|
| <code><a href="#@xpertss/projen-types.CdkAppProjectOptions.property.environments">environments</a></code> | <code>string \| <a href="#@xpertss/projen-types.EnvironmentOptions">EnvironmentOptions</a>[]</code> | Deploy targets for the manual-dispatch deploy workflow, e.g. ["dev", "stage", "prod"]. No `deploy` workflow is generated when this is empty or omitted. |
|
|
@@ -15319,6 +15323,32 @@ public readonly cdkVersion: string;
|
|
|
15319
15323
|
|
|
15320
15324
|
---
|
|
15321
15325
|
|
|
15326
|
+
##### `copyrightOwner`<sup>Optional</sup> <a name="copyrightOwner" id="@xpertss/projen-types.CdkAppProjectOptions.property.copyrightOwner"></a>
|
|
15327
|
+
|
|
15328
|
+
```typescript
|
|
15329
|
+
public readonly copyrightOwner: string;
|
|
15330
|
+
```
|
|
15331
|
+
|
|
15332
|
+
- *Type:* string
|
|
15333
|
+
- *Default:* "Xpert Software"
|
|
15334
|
+
|
|
15335
|
+
Copyright owner named in the `LICENSE`.
|
|
15336
|
+
|
|
15337
|
+
---
|
|
15338
|
+
|
|
15339
|
+
##### `copyrightPeriod`<sup>Optional</sup> <a name="copyrightPeriod" id="@xpertss/projen-types.CdkAppProjectOptions.property.copyrightPeriod"></a>
|
|
15340
|
+
|
|
15341
|
+
```typescript
|
|
15342
|
+
public readonly copyrightPeriod: string;
|
|
15343
|
+
```
|
|
15344
|
+
|
|
15345
|
+
- *Type:* string
|
|
15346
|
+
- *Default:* the current year
|
|
15347
|
+
|
|
15348
|
+
Copyright period named in the `LICENSE`.
|
|
15349
|
+
|
|
15350
|
+
---
|
|
15351
|
+
|
|
15322
15352
|
##### `editorconfig`<sup>Optional</sup> <a name="editorconfig" id="@xpertss/projen-types.CdkAppProjectOptions.property.editorconfig"></a>
|
|
15323
15353
|
|
|
15324
15354
|
```typescript
|
|
@@ -15343,6 +15373,32 @@ public readonly gheTokenSecret: string;
|
|
|
15343
15373
|
|
|
15344
15374
|
---
|
|
15345
15375
|
|
|
15376
|
+
##### `license`<sup>Optional</sup> <a name="license" id="@xpertss/projen-types.CdkAppProjectOptions.property.license"></a>
|
|
15377
|
+
|
|
15378
|
+
```typescript
|
|
15379
|
+
public readonly license: string;
|
|
15380
|
+
```
|
|
15381
|
+
|
|
15382
|
+
- *Type:* string
|
|
15383
|
+
- *Default:* "MIT"
|
|
15384
|
+
|
|
15385
|
+
SPDX identifier for the generated `LICENSE`.
|
|
15386
|
+
|
|
15387
|
+
---
|
|
15388
|
+
|
|
15389
|
+
##### `licensed`<sup>Optional</sup> <a name="licensed" id="@xpertss/projen-types.CdkAppProjectOptions.property.licensed"></a>
|
|
15390
|
+
|
|
15391
|
+
```typescript
|
|
15392
|
+
public readonly licensed: boolean;
|
|
15393
|
+
```
|
|
15394
|
+
|
|
15395
|
+
- *Type:* boolean
|
|
15396
|
+
- *Default:* true
|
|
15397
|
+
|
|
15398
|
+
Write a `LICENSE`.
|
|
15399
|
+
|
|
15400
|
+
---
|
|
15401
|
+
|
|
15346
15402
|
##### `ecrEcs`<sup>Optional</sup> <a name="ecrEcs" id="@xpertss/projen-types.CdkAppProjectOptions.property.ecrEcs"></a>
|
|
15347
15403
|
|
|
15348
15404
|
```typescript
|
|
@@ -15450,8 +15506,12 @@ const cdkInfraProjectOptions: CdkInfraProjectOptions = { ... }
|
|
|
15450
15506
|
| --- | --- | --- |
|
|
15451
15507
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.name">name</a></code> | <code>string</code> | *No description.* |
|
|
15452
15508
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.cdkVersion">cdkVersion</a></code> | <code>string</code> | *No description.* |
|
|
15509
|
+
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | Copyright owner named in the `LICENSE`. |
|
|
15510
|
+
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | Copyright period named in the `LICENSE`. |
|
|
15453
15511
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.editorconfig">editorconfig</a></code> | <code>boolean</code> | Write a projen-managed `.editorconfig`. |
|
|
15454
15512
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.gheTokenSecret">gheTokenSecret</a></code> | <code>string</code> | *No description.* |
|
|
15513
|
+
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.license">license</a></code> | <code>string</code> | SPDX identifier for the generated `LICENSE`. |
|
|
15514
|
+
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.licensed">licensed</a></code> | <code>boolean</code> | Write a `LICENSE`. |
|
|
15455
15515
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.ecrEcs">ecrEcs</a></code> | <code><a href="#@xpertss/projen-types.EcrEcsOptions">EcrEcsOptions</a></code> | *No description.* |
|
|
15456
15516
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.edgeResources">edgeResources</a></code> | <code>string[]</code> | *No description.* |
|
|
15457
15517
|
| <code><a href="#@xpertss/projen-types.CdkInfraProjectOptions.property.environments">environments</a></code> | <code>string \| <a href="#@xpertss/projen-types.EnvironmentOptions">EnvironmentOptions</a>[]</code> | Deploy targets for the manual-dispatch deploy workflow, e.g. ["dev", "stage", "prod"]. No `deploy` workflow is generated when this is empty or omitted. |
|
|
@@ -15479,6 +15539,32 @@ public readonly cdkVersion: string;
|
|
|
15479
15539
|
|
|
15480
15540
|
---
|
|
15481
15541
|
|
|
15542
|
+
##### `copyrightOwner`<sup>Optional</sup> <a name="copyrightOwner" id="@xpertss/projen-types.CdkInfraProjectOptions.property.copyrightOwner"></a>
|
|
15543
|
+
|
|
15544
|
+
```typescript
|
|
15545
|
+
public readonly copyrightOwner: string;
|
|
15546
|
+
```
|
|
15547
|
+
|
|
15548
|
+
- *Type:* string
|
|
15549
|
+
- *Default:* "Xpert Software"
|
|
15550
|
+
|
|
15551
|
+
Copyright owner named in the `LICENSE`.
|
|
15552
|
+
|
|
15553
|
+
---
|
|
15554
|
+
|
|
15555
|
+
##### `copyrightPeriod`<sup>Optional</sup> <a name="copyrightPeriod" id="@xpertss/projen-types.CdkInfraProjectOptions.property.copyrightPeriod"></a>
|
|
15556
|
+
|
|
15557
|
+
```typescript
|
|
15558
|
+
public readonly copyrightPeriod: string;
|
|
15559
|
+
```
|
|
15560
|
+
|
|
15561
|
+
- *Type:* string
|
|
15562
|
+
- *Default:* the current year
|
|
15563
|
+
|
|
15564
|
+
Copyright period named in the `LICENSE`.
|
|
15565
|
+
|
|
15566
|
+
---
|
|
15567
|
+
|
|
15482
15568
|
##### `editorconfig`<sup>Optional</sup> <a name="editorconfig" id="@xpertss/projen-types.CdkInfraProjectOptions.property.editorconfig"></a>
|
|
15483
15569
|
|
|
15484
15570
|
```typescript
|
|
@@ -15503,6 +15589,32 @@ public readonly gheTokenSecret: string;
|
|
|
15503
15589
|
|
|
15504
15590
|
---
|
|
15505
15591
|
|
|
15592
|
+
##### `license`<sup>Optional</sup> <a name="license" id="@xpertss/projen-types.CdkInfraProjectOptions.property.license"></a>
|
|
15593
|
+
|
|
15594
|
+
```typescript
|
|
15595
|
+
public readonly license: string;
|
|
15596
|
+
```
|
|
15597
|
+
|
|
15598
|
+
- *Type:* string
|
|
15599
|
+
- *Default:* "MIT"
|
|
15600
|
+
|
|
15601
|
+
SPDX identifier for the generated `LICENSE`.
|
|
15602
|
+
|
|
15603
|
+
---
|
|
15604
|
+
|
|
15605
|
+
##### `licensed`<sup>Optional</sup> <a name="licensed" id="@xpertss/projen-types.CdkInfraProjectOptions.property.licensed"></a>
|
|
15606
|
+
|
|
15607
|
+
```typescript
|
|
15608
|
+
public readonly licensed: boolean;
|
|
15609
|
+
```
|
|
15610
|
+
|
|
15611
|
+
- *Type:* boolean
|
|
15612
|
+
- *Default:* true
|
|
15613
|
+
|
|
15614
|
+
Write a `LICENSE`.
|
|
15615
|
+
|
|
15616
|
+
---
|
|
15617
|
+
|
|
15506
15618
|
##### `ecrEcs`<sup>Optional</sup> <a name="ecrEcs" id="@xpertss/projen-types.CdkInfraProjectOptions.property.ecrEcs"></a>
|
|
15507
15619
|
|
|
15508
15620
|
```typescript
|
|
@@ -15558,8 +15670,12 @@ const cdkTypescriptProjectOptions: CdkTypescriptProjectOptions = { ... }
|
|
|
15558
15670
|
| --- | --- | --- |
|
|
15559
15671
|
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.name">name</a></code> | <code>string</code> | *No description.* |
|
|
15560
15672
|
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.cdkVersion">cdkVersion</a></code> | <code>string</code> | *No description.* |
|
|
15673
|
+
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | Copyright owner named in the `LICENSE`. |
|
|
15674
|
+
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | Copyright period named in the `LICENSE`. |
|
|
15561
15675
|
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.editorconfig">editorconfig</a></code> | <code>boolean</code> | Write a projen-managed `.editorconfig`. |
|
|
15562
15676
|
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.gheTokenSecret">gheTokenSecret</a></code> | <code>string</code> | *No description.* |
|
|
15677
|
+
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.license">license</a></code> | <code>string</code> | SPDX identifier for the generated `LICENSE`. |
|
|
15678
|
+
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.licensed">licensed</a></code> | <code>boolean</code> | Write a `LICENSE`. |
|
|
15563
15679
|
| <code><a href="#@xpertss/projen-types.CdkTypescriptProjectOptions.property.environments">environments</a></code> | <code>string \| <a href="#@xpertss/projen-types.EnvironmentOptions">EnvironmentOptions</a>[]</code> | *No description.* |
|
|
15564
15680
|
|
|
15565
15681
|
---
|
|
@@ -15585,6 +15701,32 @@ public readonly cdkVersion: string;
|
|
|
15585
15701
|
|
|
15586
15702
|
---
|
|
15587
15703
|
|
|
15704
|
+
##### `copyrightOwner`<sup>Optional</sup> <a name="copyrightOwner" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.copyrightOwner"></a>
|
|
15705
|
+
|
|
15706
|
+
```typescript
|
|
15707
|
+
public readonly copyrightOwner: string;
|
|
15708
|
+
```
|
|
15709
|
+
|
|
15710
|
+
- *Type:* string
|
|
15711
|
+
- *Default:* "Xpert Software"
|
|
15712
|
+
|
|
15713
|
+
Copyright owner named in the `LICENSE`.
|
|
15714
|
+
|
|
15715
|
+
---
|
|
15716
|
+
|
|
15717
|
+
##### `copyrightPeriod`<sup>Optional</sup> <a name="copyrightPeriod" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.copyrightPeriod"></a>
|
|
15718
|
+
|
|
15719
|
+
```typescript
|
|
15720
|
+
public readonly copyrightPeriod: string;
|
|
15721
|
+
```
|
|
15722
|
+
|
|
15723
|
+
- *Type:* string
|
|
15724
|
+
- *Default:* the current year
|
|
15725
|
+
|
|
15726
|
+
Copyright period named in the `LICENSE`.
|
|
15727
|
+
|
|
15728
|
+
---
|
|
15729
|
+
|
|
15588
15730
|
##### `editorconfig`<sup>Optional</sup> <a name="editorconfig" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.editorconfig"></a>
|
|
15589
15731
|
|
|
15590
15732
|
```typescript
|
|
@@ -15609,6 +15751,32 @@ public readonly gheTokenSecret: string;
|
|
|
15609
15751
|
|
|
15610
15752
|
---
|
|
15611
15753
|
|
|
15754
|
+
##### `license`<sup>Optional</sup> <a name="license" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.license"></a>
|
|
15755
|
+
|
|
15756
|
+
```typescript
|
|
15757
|
+
public readonly license: string;
|
|
15758
|
+
```
|
|
15759
|
+
|
|
15760
|
+
- *Type:* string
|
|
15761
|
+
- *Default:* "MIT"
|
|
15762
|
+
|
|
15763
|
+
SPDX identifier for the generated `LICENSE`.
|
|
15764
|
+
|
|
15765
|
+
---
|
|
15766
|
+
|
|
15767
|
+
##### `licensed`<sup>Optional</sup> <a name="licensed" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.licensed"></a>
|
|
15768
|
+
|
|
15769
|
+
```typescript
|
|
15770
|
+
public readonly licensed: boolean;
|
|
15771
|
+
```
|
|
15772
|
+
|
|
15773
|
+
- *Type:* boolean
|
|
15774
|
+
- *Default:* true
|
|
15775
|
+
|
|
15776
|
+
Write a `LICENSE`.
|
|
15777
|
+
|
|
15778
|
+
---
|
|
15779
|
+
|
|
15612
15780
|
##### `environments`<sup>Optional</sup> <a name="environments" id="@xpertss/projen-types.CdkTypescriptProjectOptions.property.environments"></a>
|
|
15613
15781
|
|
|
15614
15782
|
```typescript
|
|
@@ -15635,8 +15803,12 @@ const commonCdkOptions: CommonCdkOptions = { ... }
|
|
|
15635
15803
|
| --- | --- | --- |
|
|
15636
15804
|
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.name">name</a></code> | <code>string</code> | *No description.* |
|
|
15637
15805
|
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.cdkVersion">cdkVersion</a></code> | <code>string</code> | *No description.* |
|
|
15806
|
+
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | Copyright owner named in the `LICENSE`. |
|
|
15807
|
+
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | Copyright period named in the `LICENSE`. |
|
|
15638
15808
|
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.editorconfig">editorconfig</a></code> | <code>boolean</code> | Write a projen-managed `.editorconfig`. |
|
|
15639
15809
|
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.gheTokenSecret">gheTokenSecret</a></code> | <code>string</code> | *No description.* |
|
|
15810
|
+
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.license">license</a></code> | <code>string</code> | SPDX identifier for the generated `LICENSE`. |
|
|
15811
|
+
| <code><a href="#@xpertss/projen-types.CommonCdkOptions.property.licensed">licensed</a></code> | <code>boolean</code> | Write a `LICENSE`. |
|
|
15640
15812
|
|
|
15641
15813
|
---
|
|
15642
15814
|
|
|
@@ -15661,6 +15833,32 @@ public readonly cdkVersion: string;
|
|
|
15661
15833
|
|
|
15662
15834
|
---
|
|
15663
15835
|
|
|
15836
|
+
##### `copyrightOwner`<sup>Optional</sup> <a name="copyrightOwner" id="@xpertss/projen-types.CommonCdkOptions.property.copyrightOwner"></a>
|
|
15837
|
+
|
|
15838
|
+
```typescript
|
|
15839
|
+
public readonly copyrightOwner: string;
|
|
15840
|
+
```
|
|
15841
|
+
|
|
15842
|
+
- *Type:* string
|
|
15843
|
+
- *Default:* "Xpert Software"
|
|
15844
|
+
|
|
15845
|
+
Copyright owner named in the `LICENSE`.
|
|
15846
|
+
|
|
15847
|
+
---
|
|
15848
|
+
|
|
15849
|
+
##### `copyrightPeriod`<sup>Optional</sup> <a name="copyrightPeriod" id="@xpertss/projen-types.CommonCdkOptions.property.copyrightPeriod"></a>
|
|
15850
|
+
|
|
15851
|
+
```typescript
|
|
15852
|
+
public readonly copyrightPeriod: string;
|
|
15853
|
+
```
|
|
15854
|
+
|
|
15855
|
+
- *Type:* string
|
|
15856
|
+
- *Default:* the current year
|
|
15857
|
+
|
|
15858
|
+
Copyright period named in the `LICENSE`.
|
|
15859
|
+
|
|
15860
|
+
---
|
|
15861
|
+
|
|
15664
15862
|
##### `editorconfig`<sup>Optional</sup> <a name="editorconfig" id="@xpertss/projen-types.CommonCdkOptions.property.editorconfig"></a>
|
|
15665
15863
|
|
|
15666
15864
|
```typescript
|
|
@@ -15685,6 +15883,32 @@ public readonly gheTokenSecret: string;
|
|
|
15685
15883
|
|
|
15686
15884
|
---
|
|
15687
15885
|
|
|
15886
|
+
##### `license`<sup>Optional</sup> <a name="license" id="@xpertss/projen-types.CommonCdkOptions.property.license"></a>
|
|
15887
|
+
|
|
15888
|
+
```typescript
|
|
15889
|
+
public readonly license: string;
|
|
15890
|
+
```
|
|
15891
|
+
|
|
15892
|
+
- *Type:* string
|
|
15893
|
+
- *Default:* "MIT"
|
|
15894
|
+
|
|
15895
|
+
SPDX identifier for the generated `LICENSE`.
|
|
15896
|
+
|
|
15897
|
+
---
|
|
15898
|
+
|
|
15899
|
+
##### `licensed`<sup>Optional</sup> <a name="licensed" id="@xpertss/projen-types.CommonCdkOptions.property.licensed"></a>
|
|
15900
|
+
|
|
15901
|
+
```typescript
|
|
15902
|
+
public readonly licensed: boolean;
|
|
15903
|
+
```
|
|
15904
|
+
|
|
15905
|
+
- *Type:* boolean
|
|
15906
|
+
- *Default:* true
|
|
15907
|
+
|
|
15908
|
+
Write a `LICENSE`.
|
|
15909
|
+
|
|
15910
|
+
---
|
|
15911
|
+
|
|
15688
15912
|
### CommonJavaOptions <a name="CommonJavaOptions" id="@xpertss/projen-types.CommonJavaOptions"></a>
|
|
15689
15913
|
|
|
15690
15914
|
#### Initializer <a name="Initializer" id="@xpertss/projen-types.CommonJavaOptions.Initializer"></a>
|
|
@@ -15760,7 +15984,7 @@ public readonly copyrightOwner: string;
|
|
|
15760
15984
|
```
|
|
15761
15985
|
|
|
15762
15986
|
- *Type:* string
|
|
15763
|
-
- *Default:* "
|
|
15987
|
+
- *Default:* "Xpert Software"
|
|
15764
15988
|
|
|
15765
15989
|
Copyright owner named in the `LICENSE`.
|
|
15766
15990
|
|
|
@@ -16228,6 +16452,8 @@ const gitHubActionProjectOptions: GitHubActionProjectOptions = { ... }
|
|
|
16228
16452
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.staleOptions">staleOptions</a></code> | <code>projen.github.StaleOptions</code> | Auto-close stale issues and pull requests. |
|
|
16229
16453
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.vscode">vscode</a></code> | <code>boolean</code> | Enable VSCode integration. |
|
|
16230
16454
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.sonarHostUrl">sonarHostUrl</a></code> | <code>string</code> | URL of the org's SonarCloud instance (e.g. `https://sonarcloud.io`). MUST be reachable from github.com-hosted (public) runners (AD-001). Required, no default: a guessed server is worse than a loud failure. |
|
|
16455
|
+
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | Copyright owner named in the `LICENSE`. |
|
|
16456
|
+
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | Copyright period named in the `LICENSE`. |
|
|
16231
16457
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.description">description</a></code> | <code>string</code> | One-line description of the action. |
|
|
16232
16458
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.dogfood">dogfood</a></code> | <code><a href="#@xpertss/projen-types.ActionDogfoodOptions">ActionDogfoodOptions</a></code> | The dogfood scenario (AD-001). |
|
|
16233
16459
|
| <code><a href="#@xpertss/projen-types.GitHubActionProjectOptions.property.editorconfig">editorconfig</a></code> | <code>boolean</code> | Write a projen-managed `.editorconfig`. |
|
|
@@ -16619,6 +16845,32 @@ URL of the org's SonarCloud instance (e.g. `https://sonarcloud.io`). MUST be rea
|
|
|
16619
16845
|
|
|
16620
16846
|
---
|
|
16621
16847
|
|
|
16848
|
+
##### `copyrightOwner`<sup>Optional</sup> <a name="copyrightOwner" id="@xpertss/projen-types.GitHubActionProjectOptions.property.copyrightOwner"></a>
|
|
16849
|
+
|
|
16850
|
+
```typescript
|
|
16851
|
+
public readonly copyrightOwner: string;
|
|
16852
|
+
```
|
|
16853
|
+
|
|
16854
|
+
- *Type:* string
|
|
16855
|
+
- *Default:* "Xpert Software"
|
|
16856
|
+
|
|
16857
|
+
Copyright owner named in the `LICENSE`.
|
|
16858
|
+
|
|
16859
|
+
---
|
|
16860
|
+
|
|
16861
|
+
##### `copyrightPeriod`<sup>Optional</sup> <a name="copyrightPeriod" id="@xpertss/projen-types.GitHubActionProjectOptions.property.copyrightPeriod"></a>
|
|
16862
|
+
|
|
16863
|
+
```typescript
|
|
16864
|
+
public readonly copyrightPeriod: string;
|
|
16865
|
+
```
|
|
16866
|
+
|
|
16867
|
+
- *Type:* string
|
|
16868
|
+
- *Default:* the current year
|
|
16869
|
+
|
|
16870
|
+
Copyright period named in the `LICENSE`.
|
|
16871
|
+
|
|
16872
|
+
---
|
|
16873
|
+
|
|
16622
16874
|
##### `description`<sup>Optional</sup> <a name="description" id="@xpertss/projen-types.GitHubActionProjectOptions.property.description"></a>
|
|
16623
16875
|
|
|
16624
16876
|
```typescript
|
|
@@ -16843,7 +17095,7 @@ public readonly copyrightOwner: string;
|
|
|
16843
17095
|
```
|
|
16844
17096
|
|
|
16845
17097
|
- *Type:* string
|
|
16846
|
-
- *Default:* "
|
|
17098
|
+
- *Default:* "Xpert Software"
|
|
16847
17099
|
|
|
16848
17100
|
Copyright owner named in the `LICENSE`.
|
|
16849
17101
|
|
|
@@ -17172,7 +17424,7 @@ public readonly copyrightOwner: string;
|
|
|
17172
17424
|
```
|
|
17173
17425
|
|
|
17174
17426
|
- *Type:* string
|
|
17175
|
-
- *Default:* "
|
|
17427
|
+
- *Default:* "Xpert Software"
|
|
17176
17428
|
|
|
17177
17429
|
Copyright owner named in the `LICENSE`.
|
|
17178
17430
|
|
|
@@ -17513,7 +17765,7 @@ public readonly copyrightOwner: string;
|
|
|
17513
17765
|
```
|
|
17514
17766
|
|
|
17515
17767
|
- *Type:* string
|
|
17516
|
-
- *Default:* "
|
|
17768
|
+
- *Default:* "Xpert Software"
|
|
17517
17769
|
|
|
17518
17770
|
Copyright owner named in the `LICENSE`.
|
|
17519
17771
|
|
|
@@ -17835,7 +18087,7 @@ public readonly copyrightOwner: string;
|
|
|
17835
18087
|
```
|
|
17836
18088
|
|
|
17837
18089
|
- *Type:* string
|
|
17838
|
-
- *Default:* "
|
|
18090
|
+
- *Default:* "Xpert Software"
|
|
17839
18091
|
|
|
17840
18092
|
Copyright owner named in the `LICENSE`.
|
|
17841
18093
|
|
|
@@ -18235,7 +18487,7 @@ public readonly copyrightOwner: string;
|
|
|
18235
18487
|
```
|
|
18236
18488
|
|
|
18237
18489
|
- *Type:* string
|
|
18238
|
-
- *Default:* "
|
|
18490
|
+
- *Default:* "Xpert Software"
|
|
18239
18491
|
|
|
18240
18492
|
Copyright owner named in the `LICENSE`.
|
|
18241
18493
|
|
package/README.md
CHANGED
|
@@ -214,6 +214,7 @@ You get:
|
|
|
214
214
|
- `cdk.json`, `cdk synth` / `cdk diff` / `cdk deploy` tasks, and the standard `AwsCdkTypeScriptApp` layout (CDK 2.189.1 by default).
|
|
215
215
|
- `.github/workflows/build.yml` - PR build that hard-fails on projen drift.
|
|
216
216
|
- `.github/workflows/deploy.yml` - manual dispatch with one `deploy-<env>` job per environment (runs `cdk deploy --all` with `--context environment=<env>`); `requiresApproval` environments get a GitHub Environment approval gate.
|
|
217
|
+
- `LICENSE` (MIT by default), `.editorconfig`, and the projen drift check.
|
|
217
218
|
- `src/constructs/edge-networking.ts` - helper constructs only for the requested `edgeResources` (`cloudfront`, `route53`, `apigateway`, `cognito`, `sqs`).
|
|
218
219
|
- `src/constructs/ecr-ecs.ts` when `ecrEcs.enabled` - ECR repo + Fargate service; `externalImageSource: true` (default) means the service pulls an image built outside this repo.
|
|
219
220
|
|
|
@@ -609,6 +610,9 @@ CDK project types (`CdkInfraProjectOptions` / `CdkAppProjectOptions`):
|
|
|
609
610
|
| `name` | - (required) | Project name; must match `package.json` |
|
|
610
611
|
| `cdkVersion` | `2.189.1` | AWS CDK version |
|
|
611
612
|
| `gheTokenSecret` | `PROJEN_GITHUB_TOKEN` | GitHub secret holding projen's PAT |
|
|
613
|
+
| `licensed` | `true` | Write a `LICENSE` |
|
|
614
|
+
| `license` | `MIT` | SPDX identifier for the `LICENSE` |
|
|
615
|
+
| `copyrightOwner` / `copyrightPeriod` | `Xpert Software` / current year | Named in the `LICENSE` |
|
|
612
616
|
| `environments` | - (no `deploy` workflow) | Deploy targets for the `deploy` workflow; strings or `EnvironmentOptions` |
|
|
613
617
|
| `ecrEcs` | - | `EcrEcsOptions` - `enabled`, `externalImageSource` (default `true`) |
|
|
614
618
|
| `edgeResources` | - | Subset of `cloudfront`, `route53`, `apigateway`, `cognito`, `sqs` |
|
|
@@ -633,7 +637,7 @@ Java project types (`JavaMavenProjectOptions` and everything built on it - `Java
|
|
|
633
637
|
| `pluginVersions` | - | Exact-version overrides for this package's defaults, keyed by `groupId/artifactId` |
|
|
634
638
|
| `licensed` | `true` | Write a `LICENSE` |
|
|
635
639
|
| `license` | `MIT` | SPDX identifier for the `LICENSE` |
|
|
636
|
-
| `copyrightOwner` / `copyrightPeriod` | `
|
|
640
|
+
| `copyrightOwner` / `copyrightPeriod` | `Xpert Software` / current year | Named in the `LICENSE` |
|
|
637
641
|
| `editorconfig` | `true` | Write a projen-managed `.editorconfig` (also on the CDK and action types) |
|
|
638
642
|
| `upgradeWorkflow` | `true` | Generate the nightly update report (`upgrade.yml`) |
|
|
639
643
|
| `sonarProjectKey` | - | SonarQube project key; the sonar step is skipped when unset |
|
|
@@ -694,6 +698,7 @@ Plain strings (`'dev'`) are shorthand for `{ name: 'dev' }`.
|
|
|
694
698
|
| `sonarPullRequestGate` | `true` | Whether `sonar.yml` also runs on `pull_request` as a pass/fail gate |
|
|
695
699
|
| `dogfood` | - (a `test-dogfood.yml` that fails until you declare one) | `ActionDogfoodOptions` - the scenario that exercises the action end-to-end via `uses: ./` |
|
|
696
700
|
| `license` | `MIT` | SPDX identifier for the generated `LICENSE` |
|
|
701
|
+
| `copyrightOwner` / `copyrightPeriod` | `Xpert Software` / current year | Named in the `LICENSE` |
|
|
697
702
|
| `gheTokenSecret` | `PROJEN_GITHUB_TOKEN` | GitHub secret holding projen's PAT (drift-check PR comments); a dogfood that passes a `token` input must reference this secret in the step's `inputs` |
|
|
698
703
|
|
|
699
704
|
`ActionDogfoodOptions`/`ActionDogfoodStep` - the dogfood scenario (`test-dogfood.yml`):
|
|
@@ -20,7 +20,7 @@ const ACTIONLINT_SHA256 = '8aca8db96f1b94770f1b0d72b6dddcb1ebb8123cb3712530b08cc
|
|
|
20
20
|
* the release build job, so the lint commands exist in exactly one place.
|
|
21
21
|
*/
|
|
22
22
|
class ActionBuildWorkflow extends projen_1.Component {
|
|
23
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionBuildWorkflow", version: "0.0.
|
|
23
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionBuildWorkflow", version: "0.0.21" };
|
|
24
24
|
task;
|
|
25
25
|
workflow;
|
|
26
26
|
constructor(scope) {
|
|
@@ -41,7 +41,7 @@ const UNCONFIGURED_STEPS = [
|
|
|
41
41
|
* error: if you wrote a scenario by hand, you can write its cleanup too.
|
|
42
42
|
*/
|
|
43
43
|
class ActionDogfoodWorkflow extends projen_1.Component {
|
|
44
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionDogfoodWorkflow", version: "0.0.
|
|
44
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionDogfoodWorkflow", version: "0.0.21" };
|
|
45
45
|
workflow;
|
|
46
46
|
constructor(scope, options) {
|
|
47
47
|
super(scope, 'ActionDogfoodWorkflow');
|
|
@@ -15,7 +15,7 @@ const SONAR_SCANNER_SHA256 = 'bb8f709f9cb73352f8d1260a3b3c506c0f41146754bc630762
|
|
|
15
15
|
* inclusions may skip `action.yml` outside `.github/`.
|
|
16
16
|
*/
|
|
17
17
|
class ActionSonarWorkflow extends projen_1.Component {
|
|
18
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionSonarWorkflow", version: "0.0.
|
|
18
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.ActionSonarWorkflow", version: "0.0.21" };
|
|
19
19
|
workflow;
|
|
20
20
|
constructor(scope, options) {
|
|
21
21
|
super(scope, 'ActionSonarWorkflow');
|
|
@@ -57,6 +57,16 @@ export interface GitHubActionProjectOptions extends github.GitHubProjectOptions
|
|
|
57
57
|
* @default "MIT"
|
|
58
58
|
*/
|
|
59
59
|
readonly license?: string;
|
|
60
|
+
/**
|
|
61
|
+
* Copyright owner named in the `LICENSE`.
|
|
62
|
+
* @default "Xpert Software"
|
|
63
|
+
*/
|
|
64
|
+
readonly copyrightOwner?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Copyright period named in the `LICENSE`.
|
|
67
|
+
* @default - the current year
|
|
68
|
+
*/
|
|
69
|
+
readonly copyrightPeriod?: string;
|
|
60
70
|
/**
|
|
61
71
|
* Write a projen-managed `.editorconfig`.
|
|
62
72
|
* @default true
|
|
@@ -64,7 +64,7 @@ hand-committed.
|
|
|
64
64
|
* per the action's own F### spec - this type only lints it.
|
|
65
65
|
*/
|
|
66
66
|
class GitHubActionProject extends projen_1.github.GitHubProject {
|
|
67
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubActionProject", version: "0.0.
|
|
67
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.GitHubActionProject", version: "0.0.21" };
|
|
68
68
|
buildWorkflow;
|
|
69
69
|
dogfoodWorkflow;
|
|
70
70
|
sonarWorkflow;
|
|
@@ -104,7 +104,8 @@ class GitHubActionProject extends projen_1.github.GitHubProject {
|
|
|
104
104
|
new workflow_change_notice_workflow_1.WorkflowChangeNoticeWorkflow(this);
|
|
105
105
|
(0, license_file_1.addLicenseFile)(this, {
|
|
106
106
|
spdx: options.license ?? 'MIT',
|
|
107
|
-
copyrightOwner: '
|
|
107
|
+
copyrightOwner: options.copyrightOwner ?? 'Xpert Software',
|
|
108
|
+
copyrightPeriod: options.copyrightPeriod,
|
|
108
109
|
});
|
|
109
110
|
// `.projenrc.ts` + `npx projen`, same as every other type here. A bare
|
|
110
111
|
// GitHubProject has no default task that runs a projenrc on its own, so
|
|
@@ -170,4 +171,4 @@ class GitHubActionProject extends projen_1.github.GitHubProject {
|
|
|
170
171
|
}
|
|
171
172
|
}
|
|
172
173
|
exports.GitHubActionProject = GitHubActionProject;
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLWFjdGlvbi1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvZ2l0aHViLWFjdGlvbi1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FNZ0I7QUFDaEIsbUVBQThEO0FBQzlELHVFQUF3RjtBQUN4RixtRUFBOEQ7QUFDOUQsbURBQStEO0FBQy9ELHlEQUF5RDtBQUN6RCxpRUFBMEU7QUFDMUUseURBQXdEO0FBQ3hELHVGQUFpRjtBQUNqRix1REFBaUU7QUFDakUsK0ZBQXlGO0FBQ3pGLGlFQUFpRTtBQUVqRSwyRUFBMkU7QUFDM0UseUVBQXlFO0FBQ3pFLCtEQUErRDtBQUMvRCx5RUFBeUU7QUFDekUsb0VBQW9FO0FBQ3BFLGtFQUFrRTtBQUNsRSxpRUFBaUU7QUFDakUsTUFBTSxjQUFjLEdBQVcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMsT0FBTyxDQUFDO0FBQ3RFLGlFQUFpRTtBQUNqRSxNQUFNLG9CQUFvQixHQUFXLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQUUzRSx3RUFBd0U7QUFDeEUsNEVBQTRFO0FBQzVFLG1DQUFtQztBQUNuQyxNQUFNLHNCQUFzQixHQUFHLFFBQVEsQ0FBQztBQXlFeEMsU0FBUyxxQkFBcUIsQ0FBQyxPQUFtQztJQUNoRSxPQUFPLEtBQUssT0FBTyxDQUFDLElBQUk7O0VBRXhCLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRTs7Ozs7a0JBS1QsT0FBTyxDQUFDLElBQUk7Ozs7Ozs7Ozs7Ozs7OztDQWU3QixDQUFDO0FBQ0YsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsZUFBTSxDQUFDLGFBQWE7O0lBQzNDLGFBQWEsQ0FBc0I7SUFDbkMsZUFBZSxDQUF3QjtJQUN2QyxhQUFhLENBQXNCO0lBQ25DLE9BQU8sQ0FBa0I7SUFFekMsWUFBWSxPQUFtQztRQUM3QyxJQUFJ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WTtZQUNsQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1lBQzVDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7WUFDMUMsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtTQUNuRCxDQUFDLENBQUM7UUFFSCxxREFBcUQ7UUFDckQsa0VBQWtFO1FBQ2xFLGtFQUFrRTtRQUNsRSxxRUFBcUU7UUFDckUsOERBQThEO1FBQzlELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxnQkFBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDdkMsTUFBTSxFQUFFLE1BQU07WUFDZCxtRUFBbUU7WUFDbkUsd0RBQXdEO1lBQ3hELGtCQUFrQixFQUFFLE1BQU07WUFDMUIsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7WUFDaEMsV0FBVyxFQUFFLGNBQWM7WUFDM0IsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsZ0JBQWdCLEVBQUU7WUFDdkQsY0FBYyxFQUFFLGdCQUFPLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRTtZQUNuRCxXQUFXLEVBQUUsMEJBQTBCLHNCQUFzQixFQUFFO1lBQy9ELHlCQUF5QixFQUFFO2dCQUN6QixFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFO2FBQ2hEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsbUVBQW1FO1FBQ25FLHNFQUFzRTtRQUN0RSxrRUFBa0U7UUFDbEUsNkNBQTZDO1FBQzdDLElBQUEsc0NBQW1CLEVBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMsK0JBQStCLENBQUMsRUFDakQscUZBQXFGLENBQ3RGLENBQUM7SUFDSixDQUFDOztBQTNISCxrREE0SEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBKc29uRmlsZSxcbiAgUmVsZWFzYWJsZUNvbW1pdHMsXG4gIFlhbWxGaWxlLFxuICBnaXRodWIsXG4gIHJlbGVhc2UsXG59IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBY3Rpb25CdWlsZFdvcmtmbG93IH0gZnJvbSAnLi9hY3Rpb24tYnVpbGQtd29ya2Zsb3cnO1xuaW1wb3J0IHsgQWN0aW9uRG9nZm9vZE9wdGlvbnMsIEFjdGlvbkRvZ2Zvb2RXb3JrZmxvdyB9IGZyb20gJy4vYWN0aW9uLWRvZ2Zvb2Qtd29ya2Zsb3cnO1xuaW1wb3J0IHsgQWN0aW9uU29uYXJXb3JrZmxvdyB9IGZyb20gJy4vYWN0aW9uLXNvbmFyLXdvcmtmbG93JztcbmltcG9ydCB7IERFRkFVTFRfR0hFX1RPS0VOX1NFQ1JFVCB9IGZyb20gJy4uL2NvbW1vbi9jb25zdGFudHMnO1xuaW1wb3J0IHsgYWRkRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi4vY29tbW9uL2VkaXRvcmNvbmZpZyc7XG5pbXBvcnQgeyBhcHBseUludGVybmFsQWN0aW9uT3ZlcnJpZGVzIH0gZnJvbSAnLi4vY29tbW9uL2ludGVybmFsLWFjdGlvbnMnO1xuaW1wb3J0IHsgYWRkTGljZW5zZUZpbGUgfSBmcm9tICcuLi9jb21tb24vbGljZW5zZS1maWxlJztcbmltcG9ydCB7IFByb2plbkRyaWZ0Q2hlY2tXb3JrZmxvdyB9IGZyb20gJy4uL2NvbW1vbi9wcm9qZW4tZHJpZnQtY2hlY2std29ya2Zsb3cnO1xuaW1wb3J0IHsgYXR0YWNoVHlwZVNjcmlwdFByb2plbnJjIH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbnJjLXRzJztcbmltcG9ydCB7IFdvcmtmbG93Q2hhbmdlTm90aWNlV29ya2Zsb3cgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctY2hhbmdlLW5vdGljZS13b3JrZmxvdyc7XG5pbXBvcnQgeyBub3RlV29ya2Zsb3dQdXJwb3NlIH0gZnJvbSAnLi4vY29tbW9uL3dvcmtmbG93LXB1cnBvc2UnO1xuXG4vLyBgcmVxdWlyZSgncHJvamVuL3BhY2thZ2UuanNvbicpYC9gcmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJylgIHJlc29sdmVcbi8vIHZpYSBOb2RlJ3Mgbm9ybWFsIG1vZHVsZSByZXNvbHV0aW9uLCBzbyBpbiBhICpwdWJsaXNoZWQqIHBhY2thZ2UgdGhlc2Vcbi8vIHJlYWQgdGhlIHZlcnNpb25zIGFjdHVhbGx5IGluc3RhbGxlZCBpbiB0aGUgY29uc3VtaW5nIHJlcG8nc1xuLy8gbm9kZV9tb2R1bGVzIC0gZXhhY3RseSB0aGUgXCJQUk9KRU5fVkVSU0lPTiBvZiB0aGUgc3ludGhcIiAvIFwidmVyc2lvbiBvZlxuLy8gdGhpcyBwYWNrYWdlIHRoYXQgc2NhZmZvbGRlZCB0aGUgcmVwb1wiIHRoZSBwcml2YXRlIHBhY2thZ2UuanNvbidzXG4vLyBkZXZEZXBlbmRlbmNpZXMgbmVlZCB0byBwaW4gKHNlZSBGMDEwIENJLWRlcGVuZGVuY2llcyBzZWN0aW9uKS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG5jb25zdCBQUk9KRU5fVkVSU0lPTjogc3RyaW5nID0gcmVxdWlyZSgncHJvamVuL3BhY2thZ2UuanNvbicpLnZlcnNpb247XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuY29uc3QgUFJPSkVOX1RZUEVTX1ZFUlNJT046IHN0cmluZyA9IHJlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpLnZlcnNpb247XG5cbi8vIEV4YWN0IHBpbiwgcmVjb3JkZWQgYXMgYSBjb21wb25lbnQgY29uc3RhbnQgKEFELTAwMTogbm8gbGF0ZXN0L21vdmluZ1xuLy8gdGFnL3NlbXZlciByYW5nZSBpbiBhbnl0aGluZyBhIGdlbmVyYXRlZCByZXBvIGRlcGVuZHMgb24pLiBVcGdyYWRpbmcgdGhpc1xuLy8gaXMgYSByZXZpZXdlZCBkaWZmIG9mIHRoaXMgZmlsZS5cbmNvbnN0IENPTU1JVF9BTkRfVEFHX1ZFUlNJT04gPSAnMTMuMi4xJztcblxuZXhwb3J0IGludGVyZmFjZSBHaXRIdWJBY3Rpb25Qcm9qZWN0T3B0aW9uc1xuICBleHRlbmRzIGdpdGh1Yi5HaXRIdWJQcm9qZWN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPbmUtbGluZSBkZXNjcmlwdGlvbiBvZiB0aGUgYWN0aW9uLiBVc2VkIGluIHRoZSBkZWZhdWx0IFJFQURNRVxuICAgKiB0ZW1wbGF0ZSBhbmQgcmVjb3JkZWQgaW4gdGhlIHByaXZhdGUgYHBhY2thZ2UuanNvbmAuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgR2l0SHViIEFjdGlvbnMgc2VjcmV0IGhvbGRpbmcgdGhlIFBBVCB1c2VkIGZvclxuICAgKiBwcm9qZW4tYXV0b21hdGlvbiBQUiBjb21tZW50cyAoRjAwMykgYW5kIHRoZSBkcmlmdC1jaGVjaydzIFBSIGNvbW1lbnRzLlxuICAgKiBJdCBpcyAqKm5vdCoqIHdpcmVkIGludG8gdGhlIGRvZ2Zvb2QgYXV0b21hdGljYWxseTogYSBkb2dmb29kIHRoYXQgaW52b2tlc1xuICAgKiBhbiBhY3Rpb24gd2l0aCBhIGB0b2tlbmAgaW5wdXQgbXVzdCByZWZlcmVuY2UgdGhpcyBzZWNyZXQgaW4gdGhlIHN0ZXAnc1xuICAgKiBgaW5wdXRzYCAoZS5nLiBgdG9rZW46ICcke3sgc2VjcmV0cy5QUk9KRU5fR0lUSFVCX1RPS0VOIH19J2ApLlxuICAgKiBAZGVmYXVsdCBcIlBST0pFTl9HSVRIVUJfVE9LRU5cIlxuICAgKi9cbiAgcmVhZG9ubHkgZ2hlVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVSTCBvZiB0aGUgb3JnJ3MgU29uYXJDbG91ZCBpbnN0YW5jZSAoZS5nLiBgaHR0cHM6Ly9zb25hcmNsb3VkLmlvYCkuXG4gICAqIE1VU1QgYmUgcmVhY2hhYmxlIGZyb20gZ2l0aHViLmNvbS1ob3N0ZWQgKHB1YmxpYykgcnVubmVycyAoQUQtMDAxKS5cbiAgICogUmVxdWlyZWQsIG5vIGRlZmF1bHQ6IGEgZ3Vlc3NlZCBzZXJ2ZXIgaXMgd29yc2UgdGhhbiBhIGxvdWQgZmFpbHVyZS5cbiAgICovXG4gIHJlYWRvbmx5IHNvbmFySG9zdFVybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTb25hckNsb3VkIG9yZ2FuaXphdGlvbiBrZXkgKGBzb25hci5vcmdhbml6YXRpb25gKSwgcmVxdWlyZWQgYnkgdGhlXG4gICAqIFNjYW5uZXIgQ0xJIG9uIFNvbmFyQ2xvdWQuXG4gICAqIEBkZWZhdWx0IFwieHBlcnRzc1wiXG4gICAqL1xuICByZWFkb25seSBzb25hck9yZ2FuaXphdGlvbj86IHN0cmluZztcblxuICAvKiogQGRlZmF1bHQgXCJTT05BUl9UT0tFTlwiICovXG4gIHJlYWRvbmx5IHNvbmFyVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYHNvbmFyLnltbGAgYWxzbyBydW5zIG9uIGBwdWxsX3JlcXVlc3RgIGFzIGEgcGFzcy9mYWlsIGdhdGUuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHNvbmFyUHVsbFJlcXVlc3RHYXRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIGRvZ2Zvb2Qgc2NlbmFyaW8gKEFELTAwMSkuIFdoYXQgZml4dHVyZSBzdGF0ZSwgd2hhdCB0byBhc3NlcnQsIGFuZFxuICAgKiBob3cgdG8gY2xlYW4gdXAgYXJlIHNwZWNpZmllZCBieSB0aGUgYWN0aW9uJ3Mgb3duIEYjIyMgc3BlYyAtIHRoZVxuICAgKiBoaWdoZXN0LXJpc2sgYmVoYXZpb3Igb2YgdGhhdCBhY3Rpb24uXG4gICAqXG4gICAqIEl0cyB0eXBlIGlzIGEgc3RydWN0LCB3aGljaCBwcm9qZW4ncyBDTEkgY2Fubm90IHJlbmRlciBpbnRvIGEgcHJvamVucmMsXG4gICAqIHNvIGl0IGNhbiBvbmx5IGJlIHdyaXR0ZW4gYnkgaGFuZCAtIGl0IGlzIHRoZXJlZm9yZSBvcHRpb25hbCwgYmVjYXVzZSBhXG4gICAqICpyZXF1aXJlZCogb3B0aW9uIGBwcm9qZW4gbmV3YCBjYW5ub3Qgc3VwcGx5IHdvdWxkIG1ha2UgdGhpcyBwcm9qZWN0XG4gICAqIHR5cGUgaW1wb3NzaWJsZSB0byBzY2FmZm9sZC4gQUQtMDAxJ3MgXCJuZXZlciBhIHNpbGVudCBuby1vcCBkb2dmb29kXCJcbiAgICogcnVsZSBpcyBlbmZvcmNlZCBpbnN0ZWFkIGJ5IHRoZSB3b3JrZmxvdyBpdCBnZW5lcmF0ZXMgaW4gdGhhdCBjYXNlOiBhXG4gICAqIHNpbmdsZSBzdGVwIHRoYXQgZmFpbHMgb24gZXZlcnkgUFIgdW50aWwgYSBzY2VuYXJpbyBpcyBkZWNsYXJlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBgdGVzdC1kb2dmb29kLnltbGAgcnVucyBvbmUgZmFpbGluZyBzdGVwIHRoYXQgdGVsbHMgeW91IHRvXG4gICAqIGRlY2xhcmUgYSBzY2VuYXJpb1xuICAgKi9cbiAgcmVhZG9ubHkgZG9nZm9vZD86IEFjdGlvbkRvZ2Zvb2RPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBTUERYIGlkZW50aWZpZXIgZm9yIHRoZSBnZW5lcmF0ZWQgYExJQ0VOU0VgLlxuICAgKiBAZGVmYXVsdCBcIk1JVFwiXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXcml0ZSBhIHByb2plbi1tYW5hZ2VkIGAuZWRpdG9yY29uZmlnYC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZWRpdG9yY29uZmlnPzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gZGVmYXVsdFJlYWRtZUNvbnRlbnRzKG9wdGlvbnM6IEdpdEh1YkFjdGlvblByb2plY3RPcHRpb25zKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAjICR7b3B0aW9ucy5uYW1lfVxuXG4ke29wdGlvbnMuZGVzY3JpcHRpb24gPz8gJyd9XG5cbiMjIFVzYWdlXG5cblxcYFxcYFxcYHlhbWxcbi0gdXNlczogeHBlcnRzcy8ke29wdGlvbnMubmFtZX1APHJlZj5cblxcYFxcYFxcYFxuXG4jIyBCdW1waW5nXG5cbkEgXFxgZmVhdDpcXGAvXFxgZml4OlxcYCBjb21taXQgcHVzaGVkIHRvIFxcYG1haW5cXGAgaXMgcmVsZWFzZWQgYXV0b21hdGljYWxseTogYnVtcCxcbnRhZyBcXGB2WC5ZLlpcXGAsIEdpdEh1YiBSZWxlYXNlLiBTZWUgXFxgLmdpdGh1Yi93b3JrZmxvd3MvcmVsZWFzZS55bWxcXGAuXG5cbiMjIFRydXN0IGNvbnRyYWN0XG5cblRoaXMgaXMgYSBjb21wb3NpdGUgKHNoZWxsKSBhY3Rpb24gLSBubyBOb2RlL25wbSBhdCBydW50aW1lLCBubyBEb2NrZXIuIEl0c1xuQ0kgbGludCBnYXRlIChcXGBidWlsZC55bWxcXGApLCBkb2dmb29kIHRlc3QgKFxcYHRlc3QtZG9nZm9vZC55bWxcXGApLCBhbmQgU29uYXJcbnNjYW4gKFxcYHNvbmFyLnltbFxcYCkgYXJlIHNjYWZmb2xkZWQgYnkgXFxgQHhwZXJ0c3MvcHJvamVuLXR5cGVzXFxgJ1xuXFxgR2l0SHViQWN0aW9uUHJvamVjdFxcYDsgb25seSBcXGBhY3Rpb24ueW1sXFxgIGFuZCBpdHMgc2hlbGwgc2NyaXB0cyBhcmVcbmhhbmQtY29tbWl0dGVkLlxuYDtcbn1cblxuLyoqXG4gKiBTY2FmZm9sZHMgdGhlIHJlcG8gbGlmZWN5Y2xlIChBRC0wMDEpIGFyb3VuZCBhIGhhbmQtY29tbWl0dGVkLCBjb21wb3NpdGVcbiAqIChzaGVsbCkgR2l0SHViIEFjdGlvbjogdGhlIGBidWlsZGAvYHRlc3QtZG9nZm9vZGAvYHNvbmFyYC9gcmVsZWFzZWBcbiAgKiB3b3JrZmxvd3MsIHZlcnNpb25pbmcgYW5kIHJlbGVhc2UgZGlzY2lwbGluZSwgdGhlIEYwMDMgdmVyaWZ5IGNvbXBvbmVudHMsXG4gICogYW5kIHJlcG8gYm9pbGVycGxhdGUgKGEgcHJpdmF0ZSB2ZXJzaW9uLXNvdXJjZSBgcGFja2FnZS5qc29uYCwgYC55YW1sbGludGAsXG4gICogYExJQ0VOU0VgLCBhbmQgYSBgUkVBRE1FLm1kYCB0ZW1wbGF0ZSkuIFRoZVxuICogYWN0aW9uJ3Mgb3duIGNvbnRlbnRcbiAqIChgYWN0aW9uLnltbGAsIGl0cyBzaGVsbCBzY3JpcHRzLCBgdGVzdC9gIGZpeHR1cmVzKSBpcyBhdXRob3JlZCBieSBoYW5kXG4gKiBwZXIgdGhlIGFjdGlvbidzIG93biBGIyMjIHNwZWMgLSB0aGlzIHR5cGUgb25seSBsaW50cyBpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEdpdEh1YkFjdGlvblByb2plY3QgZXh0ZW5kcyBnaXRodWIuR2l0SHViUHJvamVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBidWlsZFdvcmtmbG93OiBBY3Rpb25CdWlsZFdvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgZG9nZm9vZFdvcmtmbG93OiBBY3Rpb25Eb2dmb29kV29ya2Zsb3c7XG4gIHB1YmxpYyByZWFkb25seSBzb25hcldvcmtmbG93OiBBY3Rpb25Tb25hcldvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgcmVsZWFzZTogcmVsZWFzZS5SZWxlYXNlO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEdpdEh1YkFjdGlvblByb2plY3RPcHRpb25zKSB7XG4gICAgaWYgKCFvcHRpb25zLnNvbmFySG9zdFVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdHaXRIdWJBY3Rpb25Qcm9qZWN0IHJlcXVpcmVzIHNvbmFySG9zdFVybCcpO1xuICAgIH1cbiAgICAvLyBBIGRlY2xhcmVkLWJ1dC1pbmNvbXBsZXRlIGRvZ2Zvb2QgaXMgc3RpbGwgYW4gZXJyb3IgLSBzZWVcbiAgICAvLyBgQWN0aW9uRG9nZm9vZFdvcmtmbG93YCwgd2hpY2ggb3ducyB0aGF0IGNoZWNrIChhbmQgdGhlXG4gICAgLy8gbm8tZG9nZm9vZC1kZWNsYXJlZCBjYXNlKS5cblxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAvLyBQUiB0aXRsZXMgYXJlIG5vdCBnYXRlZDogYGZlYXQ6YC9gZml4OmAgbWF0dGVyIG9ubHkgYmVjYXVzZSB0aGV5IGRyaXZlXG4gICAgICAvLyB0aGUgcmVsZWFzZSB3b3JrZmxvdyAodmlhIGByZWxlYXNhYmxlQ29tbWl0c2ApLCBub3QgUFIgY2hlY2tzLiBUaGVcbiAgICAgIC8vIGNvbnZlbnRpb25hbC1jb21taXQgUFItdGl0bGUgbGludCBpcyBhZGRlZCBieSB0aGUgYEdpdEh1YmAgY29tcG9uZW50XG4gICAgICAvLyB1bmxlc3MgYGdpdGh1Yk9wdGlvbnMucHVsbFJlcXVlc3RMaW50YCBpcyBgZmFsc2VgIChpdCBkZWZhdWx0cyB0cnVlKS5cbiAgICAgIGdpdGh1Yk9wdGlvbnM6IHsgLi4ub3B0aW9ucy5naXRodWJPcHRpb25zLCBwdWxsUmVxdWVzdExpbnQ6IGZhbHNlIH0sXG4gICAgICByZWFkbWU6IG9wdGlvbnMucmVhZG1lID8/IHsgY29udGVudHM6IGRlZmF1bHRSZWFkbWVDb250ZW50cyhvcHRpb25zKSB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgZ2ggPSB0aGlzLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdHaXRIdWJBY3Rpb25Qcm9qZWN0IHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbiB0byBiZSBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuICAgIGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMoZ2gpO1xuXG4gICAgLy8gSmV0QnJhaW5zIElERSBzdGF0ZSAoLmlkZWEvKSBpcyBuZXZlciB0cmFja2VkIGluIGdlbmVyYXRlZCByZXBvcywgYW5kXG4gICAgLy8gbmVpdGhlciBpcyAvc3BlYy8gKGxvY2FsIHBsYW5zIGFuZCBzcGVjczsgdGhlIHBhdHRlcm4gY292ZXJzIGV2ZXJ5XG4gICAgLy8gc3ViZGlyZWN0b3J5KS5cbiAgICB0aGlzLmFkZEdpdElnbm9yZSgnLy5pZGVhLyonKTtcbiAgICB0aGlzLmFkZEdpdElnbm9yZSgnL3NwZWMvJyk7XG5cbiAgICBpZiAob3B0aW9ucy5lZGl0b3Jjb25maWcgPz8gdHJ1ZSkge1xuICAgICAgYWRkRWRpdG9yQ29uZmlnKHRoaXMpO1xuICAgIH1cblxuICAgIG5ldyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3codGhpcywge1xuICAgICAgZ2hlVG9rZW5TZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgIH0pO1xuICAgIG5ldyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93KHRoaXMpO1xuXG4gICAgYWRkTGljZW5zZUZpbGUodGhpcywge1xuICAgICAgc3BkeDogb3B0aW9ucy5saWNlbnNlID8/ICdNSVQnLFxuICAgICAgY29weXJpZ2h0T3duZXI6ICd4cGVydHNzJyxcbiAgICB9KTtcblxuICAgIC8vIGAucHJvamVucmMudHNgICsgYG5weCBwcm9qZW5gLCBzYW1lIGFzIGV2ZXJ5IG90aGVyIHR5cGUgaGVyZS4gQSBiYXJlXG4gICAgLy8gR2l0SHViUHJvamVjdCBoYXMgbm8gZGVmYXVsdCB0YXNrIHRoYXQgcnVucyBhIHByb2plbnJjIG9uIGl0cyBvd24sIHNvXG4gICAgLy8gdGhpcyBpcyB3aGF0IG1ha2VzIGBucHggcHJvamVuYCB3b3JrIGluIHRoZSBnZW5lcmF0ZWQgcmVwbyBhdCBhbGwuXG4gICAgYXR0YWNoVHlwZVNjcmlwdFByb2plbnJjKHRoaXMpO1xuXG4gICAgLy8gcHJvamVuIG1hcmtzIGdlbmVyYXRlZCBmaWxlcyByZWFkLW9ubHkgKDA0NDQpIG9uIGRpc2sgYnkgZGVmYXVsdCwgYnV0XG4gICAgLy8gdGhpcyBvbmUgbXVzdCBzdGF5IG93bmVyLXdyaXRhYmxlOiB0aGUgZG9jdW1lbnRlZCB1cGRhdGUgZmxvd1xuICAgIC8vIChgbnBtIGkgLUQgQHhwZXJ0c3MvcHJvamVuLXR5cGVzQGxhdGVzdGApIG5lZWRzIG5wbSB0byByZXdyaXRlIHRoZVxuICAgIC8vIHBpbm5lZCB2ZXJzaW9ucyBpbiBhbiBleGlzdGluZyByZXBvLiBIYW5kLWVkaXRzIGFyZSBzdGlsbCBjYXVnaHQgYnlcbiAgICAvLyB0aGUgZHJpZnQgY2hlY2suXG4gICAgbmV3IEpzb25GaWxlKHRoaXMsICdwYWNrYWdlLmpzb24nLCB7XG4gICAgICBvYmo6IHtcbiAgICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgICB2ZXJzaW9uOiAnMC4wLjAnLFxuICAgICAgICBwcml2YXRlOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogb3B0aW9ucy5kZXNjcmlwdGlvbixcbiAgICAgICAgZGV2RGVwZW5kZW5jaWVzOiB7XG4gICAgICAgICAgJ3Byb2plbic6IFBST0pFTl9WRVJTSU9OLFxuICAgICAgICAgICdAeHBlcnRzcy9wcm9qZW4tdHlwZXMnOiBQUk9KRU5fVFlQRVNfVkVSU0lPTixcbiAgICAgICAgICAnY29tbWl0LWFuZC10YWctdmVyc2lvbic6IENPTU1JVF9BTkRfVEFHX1ZFUlNJT04sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgcmVhZG9ubHk6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgbmV3IFlhbWxGaWxlKHRoaXMsICcueWFtbGxpbnQnLCB7XG4gICAgICBvYmo6IHtcbiAgICAgICAgZXh0ZW5kczogJ2RlZmF1bHQnLFxuICAgICAgICBydWxlczogeyAnbGluZS1sZW5ndGgnOiB7IG1heDogMTIwIH0gfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmJ1aWxkV29ya2Zsb3cgPSBuZXcgQWN0aW9uQnVpbGRXb3JrZmxvdyh0aGlzKTtcblxuICAgIHRoaXMuZG9nZm9vZFdvcmtmbG93ID0gbmV3IEFjdGlvbkRvZ2Zvb2RXb3JrZmxvdyh0aGlzLCBvcHRpb25zLmRvZ2Zvb2QpO1xuXG4gICAgdGhpcy5zb25hcldvcmtmbG93ID0gbmV3IEFjdGlvblNvbmFyV29ya2Zsb3codGhpcywge1xuICAgICAgc29uYXJIb3N0VXJsOiBvcHRpb25zLnNvbmFySG9zdFVybCxcbiAgICAgIHNvbmFyT3JnYW5pemF0aW9uOiBvcHRpb25zLnNvbmFyT3JnYW5pemF0aW9uLFxuICAgICAgc29uYXJUb2tlblNlY3JldDogb3B0aW9ucy5zb25hclRva2VuU2VjcmV0LFxuICAgICAgc29uYXJQdWxsUmVxdWVzdEdhdGU6IG9wdGlvbnMuc29uYXJQdWxsUmVxdWVzdEdhdGUsXG4gICAgfSk7XG5cbiAgICAvLyBgZ2l0aHViUmVsZWFzZWAgZGVmYXVsdHMgdG8gdHJ1ZSwgd2hpY2ggYXV0by13aXJlc1xuICAgIC8vIGBwdWJsaXNoVG9HaXRIdWJSZWxlYXNlc2AgLSBpdHMgYGdoIHJlbGVhc2UgY3JlYXRlIC4uLiAtLXRhcmdldFxuICAgIC8vICRHSVRIVUJfU0hBYCBjcmVhdGVzIHRoZSB0YWcgKmFuZCogdGhlIHJlbGVhc2UgdG9nZXRoZXIgZm9yIG91clxuICAgIC8vIGNvbnRpbnVvdXMgKHB1c2gtdG8tbWFpbikgdHJpZ2dlci4gTm8gc2VwYXJhdGUgYHB1Ymxpc2hUb0dpdGAgY2FsbFxuICAgIC8vIG5lZWRlZCAodGhhdCBwYXRoIG9ubHkgZmlyZXMgZm9yIGEgbWFudWFsIHJlbGVhc2UgdHJpZ2dlcikuXG4gICAgdGhpcy5yZWxlYXNlID0gbmV3IHJlbGVhc2UuUmVsZWFzZSh0aGlzLCB7XG4gICAgICBicmFuY2g6ICdtYWluJyxcbiAgICAgIC8vIE5vIGJ1aWxkIGFydGlmYWN0IGZvciBhIGNvbXBvc2l0ZSBhY3Rpb24gKEFELTAwMSkgLSB0aGlzIGlzIG9ubHlcbiAgICAgIC8vIHdoZXJlIFJlbGVhc2Ugc3RhZ2VzIGl0cyBvd24gdmVyc2lvbi9jaGFuZ2Vsb2cgZmlsZXMuXG4gICAgICBhcnRpZmFjdHNEaXJlY3Rvcnk6ICdkaXN0JyxcbiAgICAgIHRhc2tzOiBbdGhpcy5idWlsZFdvcmtmbG93LnRhc2tdLFxuICAgICAgdmVyc2lvbkZpbGU6ICdwYWNrYWdlLmpzb24nLFxuICAgICAgcmVsZWFzYWJsZUNvbW1pdHM6IFJlbGVhc2FibGVDb21taXRzLmZlYXR1cmVzQW5kRml4ZXMoKSxcbiAgICAgIHJlbGVhc2VUcmlnZ2VyOiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyLmNvbnRpbnVvdXMoKSxcbiAgICAgIGJ1bXBQYWNrYWdlOiBgY29tbWl0LWFuZC10YWctdmVyc2lvbkAke0NPTU1JVF9BTkRfVEFHX1ZFUlNJT059YCxcbiAgICAgIHJlbGVhc2VXb3JrZmxvd1NldHVwU3RlcHM6IFtcbiAgICAgICAgeyBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLCBydW46ICducG0gY2knIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgLy8gVGhlIHJlbGVhc2Ugd29ya2Zsb3cgaXMgY3JlYXRlZCBpbnNpZGUgYHJlbGVhc2UuUmVsZWFzZWAgKHByb2plblxuICAgIC8vIGludGVybmFsKSwgbm90IGJ5IHRoaXMgdHlwZSAtIHJlYWNoIGl0cyBmaWxlIGJ5IHBhdGggdG8gYW5ub3RhdGUgaXRcbiAgICAvLyBsaWtlIGV2ZXJ5IG90aGVyIGdlbmVyYXRlZCB3b3JrZmxvdy4gVGhpcyB0eXBlIGlzIGFsd2F5cyBhIHJvb3RcbiAgICAvLyBwcm9qZWN0LCBzbyBwcm9qZW4gbmFtZXMgaXQgYHJlbGVhc2UueW1sYC5cbiAgICBub3RlV29ya2Zsb3dQdXJwb3NlKFxuICAgICAgdGhpcy50cnlGaW5kRmlsZSgnLmdpdGh1Yi93b3JrZmxvd3MvcmVsZWFzZS55bWwnKSxcbiAgICAgICdDb250aW51b3VzIHJlbGVhc2Ugb24gcHVzaCB0byBtYWluOiBidW1wIHZlcnNpb24sIHRhZywgYW5kIGNyZWF0ZSBhIEdpdEh1YiBSZWxlYXNlLicsXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLWFjdGlvbi1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvZ2l0aHViLWFjdGlvbi1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxtQ0FNZ0I7QUFDaEIsbUVBQThEO0FBQzlELHVFQUF3RjtBQUN4RixtRUFBOEQ7QUFDOUQsbURBQStEO0FBQy9ELHlEQUF5RDtBQUN6RCxpRUFBMEU7QUFDMUUseURBQXdEO0FBQ3hELHVGQUFpRjtBQUNqRix1REFBaUU7QUFDakUsK0ZBQXlGO0FBQ3pGLGlFQUFpRTtBQUVqRSwyRUFBMkU7QUFDM0UseUVBQXlFO0FBQ3pFLCtEQUErRDtBQUMvRCx5RUFBeUU7QUFDekUsb0VBQW9FO0FBQ3BFLGtFQUFrRTtBQUNsRSxpRUFBaUU7QUFDakUsTUFBTSxjQUFjLEdBQVcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMsT0FBTyxDQUFDO0FBQ3RFLGlFQUFpRTtBQUNqRSxNQUFNLG9CQUFvQixHQUFXLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztBQUUzRSx3RUFBd0U7QUFDeEUsNEVBQTRFO0FBQzVFLG1DQUFtQztBQUNuQyxNQUFNLHNCQUFzQixHQUFHLFFBQVEsQ0FBQztBQXFGeEMsU0FBUyxxQkFBcUIsQ0FBQyxPQUFtQztJQUNoRSxPQUFPLEtBQUssT0FBTyxDQUFDLElBQUk7O0VBRXhCLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRTs7Ozs7a0JBS1QsT0FBTyxDQUFDLElBQUk7Ozs7Ozs7Ozs7Ozs7OztDQWU3QixDQUFDO0FBQ0YsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsZUFBTSxDQUFDLGFBQWE7O0lBQzNDLGFBQWEsQ0FBc0I7SUFDbkMsZUFBZSxDQUF3QjtJQUN2QyxhQUFhLENBQXNCO0lBQ25DLE9BQU8sQ0FBa0I7SUFFekMsWUFBWSxPQUFtQztRQUM3QyxJQUFJ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SSwyQ0FBbUIsQ0FBQyxJQUFJLEVBQUU7WUFDakQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO1lBQ2xDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxpQkFBaUI7WUFDNUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQjtZQUMxQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsb0JBQW9CO1NBQ25ELENBQUMsQ0FBQztRQUVILHFEQUFxRDtRQUNyRCxrRUFBa0U7UUFDbEUsa0VBQWtFO1FBQ2xFLHFFQUFxRTtRQUNyRSw4REFBOEQ7UUFDOUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGdCQUFPLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtZQUN2QyxNQUFNLEVBQUUsTUFBTTtZQUNkLG1FQUFtRTtZQUNuRSx3REFBd0Q7WUFDeEQsa0JBQWtCLEVBQUUsTUFBTTtZQUMxQixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUNoQyxXQUFXLEVBQUUsY0FBYztZQUMzQixpQkFBaUIsRUFBRSwwQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2RCxjQUFjLEVBQUUsZ0JBQU8sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFO1lBQ25ELFdBQVcsRUFBRSwwQkFBMEIsc0JBQXNCLEVBQUU7WUFDL0QseUJBQXlCLEVBQUU7Z0JBQ3pCLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUU7YUFDaEQ7U0FDRixDQUFDLENBQUM7UUFFSCxtRUFBbUU7UUFDbkUsc0VBQXNFO1FBQ3RFLGtFQUFrRTtRQUNsRSw2Q0FBNkM7UUFDN0MsSUFBQSxzQ0FBbUIsRUFDakIsSUFBSSxDQUFDLFdBQVcsQ0FBQywrQkFBK0IsQ0FBQyxFQUNqRCxxRkFBcUYsQ0FDdEYsQ0FBQztJQUNKLENBQUM7O0FBNUhILGtEQTZIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEpzb25GaWxlLFxuICBSZWxlYXNhYmxlQ29tbWl0cyxcbiAgWWFtbEZpbGUsXG4gIGdpdGh1YixcbiAgcmVsZWFzZSxcbn0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEFjdGlvbkJ1aWxkV29ya2Zsb3cgfSBmcm9tICcuL2FjdGlvbi1idWlsZC13b3JrZmxvdyc7XG5pbXBvcnQgeyBBY3Rpb25Eb2dmb29kT3B0aW9ucywgQWN0aW9uRG9nZm9vZFdvcmtmbG93IH0gZnJvbSAnLi9hY3Rpb24tZG9nZm9vZC13b3JrZmxvdyc7XG5pbXBvcnQgeyBBY3Rpb25Tb25hcldvcmtmbG93IH0gZnJvbSAnLi9hY3Rpb24tc29uYXItd29ya2Zsb3cnO1xuaW1wb3J0IHsgREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVUIH0gZnJvbSAnLi4vY29tbW9uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBhZGRFZGl0b3JDb25maWcgfSBmcm9tICcuLi9jb21tb24vZWRpdG9yY29uZmlnJztcbmltcG9ydCB7IGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMgfSBmcm9tICcuLi9jb21tb24vaW50ZXJuYWwtYWN0aW9ucyc7XG5pbXBvcnQgeyBhZGRMaWNlbnNlRmlsZSB9IGZyb20gJy4uL2NvbW1vbi9saWNlbnNlLWZpbGUnO1xuaW1wb3J0IHsgUHJvamVuRHJpZnRDaGVja1dvcmtmbG93IH0gZnJvbSAnLi4vY29tbW9uL3Byb2plbi1kcmlmdC1jaGVjay13b3JrZmxvdyc7XG5pbXBvcnQgeyBhdHRhY2hUeXBlU2NyaXB0UHJvamVucmMgfSBmcm9tICcuLi9jb21tb24vcHJvamVucmMtdHMnO1xuaW1wb3J0IHsgV29ya2Zsb3dDaGFuZ2VOb3RpY2VXb3JrZmxvdyB9IGZyb20gJy4uL2NvbW1vbi93b3JrZmxvdy1jaGFuZ2Utbm90aWNlLXdvcmtmbG93JztcbmltcG9ydCB7IG5vdGVXb3JrZmxvd1B1cnBvc2UgfSBmcm9tICcuLi9jb21tb24vd29ya2Zsb3ctcHVycG9zZSc7XG5cbi8vIGByZXF1aXJlKCdwcm9qZW4vcGFja2FnZS5qc29uJylgL2ByZXF1aXJlKCcuLi8uLi9wYWNrYWdlLmpzb24nKWAgcmVzb2x2ZVxuLy8gdmlhIE5vZGUncyBub3JtYWwgbW9kdWxlIHJlc29sdXRpb24sIHNvIGluIGEgKnB1Ymxpc2hlZCogcGFja2FnZSB0aGVzZVxuLy8gcmVhZCB0aGUgdmVyc2lvbnMgYWN0dWFsbHkgaW5zdGFsbGVkIGluIHRoZSBjb25zdW1pbmcgcmVwbydzXG4vLyBub2RlX21vZHVsZXMgLSBleGFjdGx5IHRoZSBcIlBST0pFTl9WRVJTSU9OIG9mIHRoZSBzeW50aFwiIC8gXCJ2ZXJzaW9uIG9mXG4vLyB0aGlzIHBhY2thZ2UgdGhhdCBzY2FmZm9sZGVkIHRoZSByZXBvXCIgdGhlIHByaXZhdGUgcGFja2FnZS5qc29uJ3Ncbi8vIGRldkRlcGVuZGVuY2llcyBuZWVkIHRvIHBpbiAoc2VlIEYwMTAgQ0ktZGVwZW5kZW5jaWVzIHNlY3Rpb24pLlxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbmNvbnN0IFBST0pFTl9WRVJTSU9OOiBzdHJpbmcgPSByZXF1aXJlKCdwcm9qZW4vcGFja2FnZS5qc29uJykudmVyc2lvbjtcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG5jb25zdCBQUk9KRU5fVFlQRVNfVkVSU0lPTjogc3RyaW5nID0gcmVxdWlyZSgnLi4vLi4vcGFja2FnZS5qc29uJykudmVyc2lvbjtcblxuLy8gRXhhY3QgcGluLCByZWNvcmRlZCBhcyBhIGNvbXBvbmVudCBjb25zdGFudCAoQUQtMDAxOiBubyBsYXRlc3QvbW92aW5nXG4vLyB0YWcvc2VtdmVyIHJhbmdlIGluIGFueXRoaW5nIGEgZ2VuZXJhdGVkIHJlcG8gZGVwZW5kcyBvbikuIFVwZ3JhZGluZyB0aGlzXG4vLyBpcyBhIHJldmlld2VkIGRpZmYgb2YgdGhpcyBmaWxlLlxuY29uc3QgQ09NTUlUX0FORF9UQUdfVkVSU0lPTiA9ICcxMy4yLjEnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdpdEh1YkFjdGlvblByb2plY3RPcHRpb25zXG4gIGV4dGVuZHMgZ2l0aHViLkdpdEh1YlByb2plY3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIE9uZS1saW5lIGRlc2NyaXB0aW9uIG9mIHRoZSBhY3Rpb24uIFVzZWQgaW4gdGhlIGRlZmF1bHQgUkVBRE1FXG4gICAqIHRlbXBsYXRlIGFuZCByZWNvcmRlZCBpbiB0aGUgcHJpdmF0ZSBgcGFja2FnZS5qc29uYC5cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBHaXRIdWIgQWN0aW9ucyBzZWNyZXQgaG9sZGluZyB0aGUgUEFUIHVzZWQgZm9yXG4gICAqIHByb2plbi1hdXRvbWF0aW9uIFBSIGNvbW1lbnRzIChGMDAzKSBhbmQgdGhlIGRyaWZ0LWNoZWNrJ3MgUFIgY29tbWVudHMuXG4gICAqIEl0IGlzICoqbm90Kiogd2lyZWQgaW50byB0aGUgZG9nZm9vZCBhdXRvbWF0aWNhbGx5OiBhIGRvZ2Zvb2QgdGhhdCBpbnZva2VzXG4gICAqIGFuIGFjdGlvbiB3aXRoIGEgYHRva2VuYCBpbnB1dCBtdXN0IHJlZmVyZW5jZSB0aGlzIHNlY3JldCBpbiB0aGUgc3RlcCdzXG4gICAqIGBpbnB1dHNgIChlLmcuIGB0b2tlbjogJyR7eyBzZWNyZXRzLlBST0pFTl9HSVRIVUJfVE9LRU4gfX0nYCkuXG4gICAqIEBkZWZhdWx0IFwiUFJPSkVOX0dJVEhVQl9UT0tFTlwiXG4gICAqL1xuICByZWFkb25seSBnaGVUb2tlblNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogVVJMIG9mIHRoZSBvcmcncyBTb25hckNsb3VkIGluc3RhbmNlIChlLmcuIGBodHRwczovL3NvbmFyY2xvdWQuaW9gKS5cbiAgICogTVVTVCBiZSByZWFjaGFibGUgZnJvbSBnaXRodWIuY29tLWhvc3RlZCAocHVibGljKSBydW5uZXJzIChBRC0wMDEpLlxuICAgKiBSZXF1aXJlZCwgbm8gZGVmYXVsdDogYSBndWVzc2VkIHNlcnZlciBpcyB3b3JzZSB0aGFuIGEgbG91ZCBmYWlsdXJlLlxuICAgKi9cbiAgcmVhZG9ubHkgc29uYXJIb3N0VXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNvbmFyQ2xvdWQgb3JnYW5pemF0aW9uIGtleSAoYHNvbmFyLm9yZ2FuaXphdGlvbmApLCByZXF1aXJlZCBieSB0aGVcbiAgICogU2Nhbm5lciBDTEkgb24gU29uYXJDbG91ZC5cbiAgICogQGRlZmF1bHQgXCJ4cGVydHNzXCJcbiAgICovXG4gIHJlYWRvbmx5IHNvbmFyT3JnYW5pemF0aW9uPzogc3RyaW5nO1xuXG4gIC8qKiBAZGVmYXVsdCBcIlNPTkFSX1RPS0VOXCIgKi9cbiAgcmVhZG9ubHkgc29uYXJUb2tlblNlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciBgc29uYXIueW1sYCBhbHNvIHJ1bnMgb24gYHB1bGxfcmVxdWVzdGAgYXMgYSBwYXNzL2ZhaWwgZ2F0ZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc29uYXJQdWxsUmVxdWVzdEdhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZG9nZm9vZCBzY2VuYXJpbyAoQUQtMDAxKS4gV2hhdCBmaXh0dXJlIHN0YXRlLCB3aGF0IHRvIGFzc2VydCwgYW5kXG4gICAqIGhvdyB0byBjbGVhbiB1cCBhcmUgc3BlY2lmaWVkIGJ5IHRoZSBhY3Rpb24ncyBvd24gRiMjIyBzcGVjIC0gdGhlXG4gICAqIGhpZ2hlc3QtcmlzayBiZWhhdmlvciBvZiB0aGF0IGFjdGlvbi5cbiAgICpcbiAgICogSXRzIHR5cGUgaXMgYSBzdHJ1Y3QsIHdoaWNoIHByb2plbidzIENMSSBjYW5ub3QgcmVuZGVyIGludG8gYSBwcm9qZW5yYyxcbiAgICogc28gaXQgY2FuIG9ubHkgYmUgd3JpdHRlbiBieSBoYW5kIC0gaXQgaXMgdGhlcmVmb3JlIG9wdGlvbmFsLCBiZWNhdXNlIGFcbiAgICogKnJlcXVpcmVkKiBvcHRpb24gYHByb2plbiBuZXdgIGNhbm5vdCBzdXBwbHkgd291bGQgbWFrZSB0aGlzIHByb2plY3RcbiAgICogdHlwZSBpbXBvc3NpYmxlIHRvIHNjYWZmb2xkLiBBRC0wMDEncyBcIm5ldmVyIGEgc2lsZW50IG5vLW9wIGRvZ2Zvb2RcIlxuICAgKiBydWxlIGlzIGVuZm9yY2VkIGluc3RlYWQgYnkgdGhlIHdvcmtmbG93IGl0IGdlbmVyYXRlcyBpbiB0aGF0IGNhc2U6IGFcbiAgICogc2luZ2xlIHN0ZXAgdGhhdCBmYWlscyBvbiBldmVyeSBQUiB1bnRpbCBhIHNjZW5hcmlvIGlzIGRlY2xhcmVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGB0ZXN0LWRvZ2Zvb2QueW1sYCBydW5zIG9uZSBmYWlsaW5nIHN0ZXAgdGhhdCB0ZWxscyB5b3UgdG9cbiAgICogZGVjbGFyZSBhIHNjZW5hcmlvXG4gICAqL1xuICByZWFkb25seSBkb2dmb29kPzogQWN0aW9uRG9nZm9vZE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFNQRFggaWRlbnRpZmllciBmb3IgdGhlIGdlbmVyYXRlZCBgTElDRU5TRWAuXG4gICAqIEBkZWZhdWx0IFwiTUlUXCJcbiAgICovXG4gIHJlYWRvbmx5IGxpY2Vuc2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvcHlyaWdodCBvd25lciBuYW1lZCBpbiB0aGUgYExJQ0VOU0VgLlxuICAgKiBAZGVmYXVsdCBcIlhwZXJ0IFNvZnR3YXJlXCJcbiAgICovXG4gIHJlYWRvbmx5IGNvcHlyaWdodE93bmVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb3B5cmlnaHQgcGVyaW9kIG5hbWVkIGluIHRoZSBgTElDRU5TRWAuXG4gICAqIEBkZWZhdWx0IC0gdGhlIGN1cnJlbnQgeWVhclxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0UGVyaW9kPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXcml0ZSBhIHByb2plbi1tYW5hZ2VkIGAuZWRpdG9yY29uZmlnYC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZWRpdG9yY29uZmlnPzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gZGVmYXVsdFJlYWRtZUNvbnRlbnRzKG9wdGlvbnM6IEdpdEh1YkFjdGlvblByb2plY3RPcHRpb25zKTogc3RyaW5nIHtcbiAgcmV0dXJuIGAjICR7b3B0aW9ucy5uYW1lfVxuXG4ke29wdGlvbnMuZGVzY3JpcHRpb24gPz8gJyd9XG5cbiMjIFVzYWdlXG5cblxcYFxcYFxcYHlhbWxcbi0gdXNlczogeHBlcnRzcy8ke29wdGlvbnMubmFtZX1APHJlZj5cblxcYFxcYFxcYFxuXG4jIyBCdW1waW5nXG5cbkEgXFxgZmVhdDpcXGAvXFxgZml4OlxcYCBjb21taXQgcHVzaGVkIHRvIFxcYG1haW5cXGAgaXMgcmVsZWFzZWQgYXV0b21hdGljYWxseTogYnVtcCxcbnRhZyBcXGB2WC5ZLlpcXGAsIEdpdEh1YiBSZWxlYXNlLiBTZWUgXFxgLmdpdGh1Yi93b3JrZmxvd3MvcmVsZWFzZS55bWxcXGAuXG5cbiMjIFRydXN0IGNvbnRyYWN0XG5cblRoaXMgaXMgYSBjb21wb3NpdGUgKHNoZWxsKSBhY3Rpb24gLSBubyBOb2RlL25wbSBhdCBydW50aW1lLCBubyBEb2NrZXIuIEl0c1xuQ0kgbGludCBnYXRlIChcXGBidWlsZC55bWxcXGApLCBkb2dmb29kIHRlc3QgKFxcYHRlc3QtZG9nZm9vZC55bWxcXGApLCBhbmQgU29uYXJcbnNjYW4gKFxcYHNvbmFyLnltbFxcYCkgYXJlIHNjYWZmb2xkZWQgYnkgXFxgQHhwZXJ0c3MvcHJvamVuLXR5cGVzXFxgJ1xuXFxgR2l0SHViQWN0aW9uUHJvamVjdFxcYDsgb25seSBcXGBhY3Rpb24ueW1sXFxgIGFuZCBpdHMgc2hlbGwgc2NyaXB0cyBhcmVcbmhhbmQtY29tbWl0dGVkLlxuYDtcbn1cblxuLyoqXG4gKiBTY2FmZm9sZHMgdGhlIHJlcG8gbGlmZWN5Y2xlIChBRC0wMDEpIGFyb3VuZCBhIGhhbmQtY29tbWl0dGVkLCBjb21wb3NpdGVcbiAqIChzaGVsbCkgR2l0SHViIEFjdGlvbjogdGhlIGBidWlsZGAvYHRlc3QtZG9nZm9vZGAvYHNvbmFyYC9gcmVsZWFzZWBcbiAgKiB3b3JrZmxvd3MsIHZlcnNpb25pbmcgYW5kIHJlbGVhc2UgZGlzY2lwbGluZSwgdGhlIEYwMDMgdmVyaWZ5IGNvbXBvbmVudHMsXG4gICogYW5kIHJlcG8gYm9pbGVycGxhdGUgKGEgcHJpdmF0ZSB2ZXJzaW9uLXNvdXJjZSBgcGFja2FnZS5qc29uYCwgYC55YW1sbGludGAsXG4gICogYExJQ0VOU0VgLCBhbmQgYSBgUkVBRE1FLm1kYCB0ZW1wbGF0ZSkuIFRoZVxuICogYWN0aW9uJ3Mgb3duIGNvbnRlbnRcbiAqIChgYWN0aW9uLnltbGAsIGl0cyBzaGVsbCBzY3JpcHRzLCBgdGVzdC9gIGZpeHR1cmVzKSBpcyBhdXRob3JlZCBieSBoYW5kXG4gKiBwZXIgdGhlIGFjdGlvbidzIG93biBGIyMjIHNwZWMgLSB0aGlzIHR5cGUgb25seSBsaW50cyBpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEdpdEh1YkFjdGlvblByb2plY3QgZXh0ZW5kcyBnaXRodWIuR2l0SHViUHJvamVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBidWlsZFdvcmtmbG93OiBBY3Rpb25CdWlsZFdvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgZG9nZm9vZFdvcmtmbG93OiBBY3Rpb25Eb2dmb29kV29ya2Zsb3c7XG4gIHB1YmxpYyByZWFkb25seSBzb25hcldvcmtmbG93OiBBY3Rpb25Tb25hcldvcmtmbG93O1xuICBwdWJsaWMgcmVhZG9ubHkgcmVsZWFzZTogcmVsZWFzZS5SZWxlYXNlO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEdpdEh1YkFjdGlvblByb2plY3RPcHRpb25zKSB7XG4gICAgaWYgKCFvcHRpb25zLnNvbmFySG9zdFVybCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdHaXRIdWJBY3Rpb25Qcm9qZWN0IHJlcXVpcmVzIHNvbmFySG9zdFVybCcpO1xuICAgIH1cbiAgICAvLyBBIGRlY2xhcmVkLWJ1dC1pbmNvbXBsZXRlIGRvZ2Zvb2QgaXMgc3RpbGwgYW4gZXJyb3IgLSBzZWVcbiAgICAvLyBgQWN0aW9uRG9nZm9vZFdvcmtmbG93YCwgd2hpY2ggb3ducyB0aGF0IGNoZWNrIChhbmQgdGhlXG4gICAgLy8gbm8tZG9nZm9vZC1kZWNsYXJlZCBjYXNlKS5cblxuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAvLyBQUiB0aXRsZXMgYXJlIG5vdCBnYXRlZDogYGZlYXQ6YC9gZml4OmAgbWF0dGVyIG9ubHkgYmVjYXVzZSB0aGV5IGRyaXZlXG4gICAgICAvLyB0aGUgcmVsZWFzZSB3b3JrZmxvdyAodmlhIGByZWxlYXNhYmxlQ29tbWl0c2ApLCBub3QgUFIgY2hlY2tzLiBUaGVcbiAgICAgIC8vIGNvbnZlbnRpb25hbC1jb21taXQgUFItdGl0bGUgbGludCBpcyBhZGRlZCBieSB0aGUgYEdpdEh1YmAgY29tcG9uZW50XG4gICAgICAvLyB1bmxlc3MgYGdpdGh1Yk9wdGlvbnMucHVsbFJlcXVlc3RMaW50YCBpcyBgZmFsc2VgIChpdCBkZWZhdWx0cyB0cnVlKS5cbiAgICAgIGdpdGh1Yk9wdGlvbnM6IHsgLi4ub3B0aW9ucy5naXRodWJPcHRpb25zLCBwdWxsUmVxdWVzdExpbnQ6IGZhbHNlIH0sXG4gICAgICByZWFkbWU6IG9wdGlvbnMucmVhZG1lID8/IHsgY29udGVudHM6IGRlZmF1bHRSZWFkbWVDb250ZW50cyhvcHRpb25zKSB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgZ2ggPSB0aGlzLmdpdGh1YjtcbiAgICBpZiAoIWdoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdHaXRIdWJBY3Rpb25Qcm9qZWN0IHJlcXVpcmVzIEdpdEh1YiBpbnRlZ3JhdGlvbiB0byBiZSBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuICAgIGFwcGx5SW50ZXJuYWxBY3Rpb25PdmVycmlkZXMoZ2gpO1xuXG4gICAgLy8gSmV0QnJhaW5zIElERSBzdGF0ZSAoLmlkZWEvKSBpcyBuZXZlciB0cmFja2VkIGluIGdlbmVyYXRlZCByZXBvcywgYW5kXG4gICAgLy8gbmVpdGhlciBpcyAvc3BlYy8gKGxvY2FsIHBsYW5zIGFuZCBzcGVjczsgdGhlIHBhdHRlcm4gY292ZXJzIGV2ZXJ5XG4gICAgLy8gc3ViZGlyZWN0b3J5KS5cbiAgICB0aGlzLmFkZEdpdElnbm9yZSgnLy5pZGVhLyonKTtcbiAgICB0aGlzLmFkZEdpdElnbm9yZSgnL3NwZWMvJyk7XG5cbiAgICBpZiAob3B0aW9ucy5lZGl0b3Jjb25maWcgPz8gdHJ1ZSkge1xuICAgICAgYWRkRWRpdG9yQ29uZmlnKHRoaXMpO1xuICAgIH1cblxuICAgIG5ldyBQcm9qZW5EcmlmdENoZWNrV29ya2Zsb3codGhpcywge1xuICAgICAgZ2hlVG9rZW5TZWNyZXQ6IG9wdGlvbnMuZ2hlVG9rZW5TZWNyZXQgPz8gREVGQVVMVF9HSEVfVE9LRU5fU0VDUkVULFxuICAgIH0pO1xuICAgIG5ldyBXb3JrZmxvd0NoYW5nZU5vdGljZVdvcmtmbG93KHRoaXMpO1xuXG4gICAgYWRkTGljZW5zZUZpbGUodGhpcywge1xuICAgICAgc3BkeDogb3B0aW9ucy5saWNlbnNlID8/ICdNSVQnLFxuICAgICAgY29weXJpZ2h0T3duZXI6IG9wdGlvbnMuY29weXJpZ2h0T3duZXIgPz8gJ1hwZXJ0IFNvZnR3YXJlJyxcbiAgICAgIGNvcHlyaWdodFBlcmlvZDogb3B0aW9ucy5jb3B5cmlnaHRQZXJpb2QsXG4gICAgfSk7XG5cbiAgICAvLyBgLnByb2plbnJjLnRzYCArIGBucHggcHJvamVuYCwgc2FtZSBhcyBldmVyeSBvdGhlciB0eXBlIGhlcmUuIEEgYmFyZVxuICAgIC8vIEdpdEh1YlByb2plY3QgaGFzIG5vIGRlZmF1bHQgdGFzayB0aGF0IHJ1bnMgYSBwcm9qZW5yYyBvbiBpdHMgb3duLCBzb1xuICAgIC8vIHRoaXMgaXMgd2hhdCBtYWtlcyBgbnB4IHByb2plbmAgd29yayBpbiB0aGUgZ2VuZXJhdGVkIHJlcG8gYXQgYWxsLlxuICAgIGF0dGFjaFR5cGVTY3JpcHRQcm9qZW5yYyh0aGlzKTtcblxuICAgIC8vIHByb2plbiBtYXJrcyBnZW5lcmF0ZWQgZmlsZXMgcmVhZC1vbmx5ICgwNDQ0KSBvbiBkaXNrIGJ5IGRlZmF1bHQsIGJ1dFxuICAgIC8vIHRoaXMgb25lIG11c3Qgc3RheSBvd25lci13cml0YWJsZTogdGhlIGRvY3VtZW50ZWQgdXBkYXRlIGZsb3dcbiAgICAvLyAoYG5wbSBpIC1EIEB4cGVydHNzL3Byb2plbi10eXBlc0BsYXRlc3RgKSBuZWVkcyBucG0gdG8gcmV3cml0ZSB0aGVcbiAgICAvLyBwaW5uZWQgdmVyc2lvbnMgaW4gYW4gZXhpc3RpbmcgcmVwby4gSGFuZC1lZGl0cyBhcmUgc3RpbGwgY2F1Z2h0IGJ5XG4gICAgLy8gdGhlIGRyaWZ0IGNoZWNrLlxuICAgIG5ldyBKc29uRmlsZSh0aGlzLCAncGFja2FnZS5qc29uJywge1xuICAgICAgb2JqOiB7XG4gICAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgICAgdmVyc2lvbjogJzAuMC4wJyxcbiAgICAgICAgcHJpdmF0ZTogdHJ1ZSxcbiAgICAgICAgZGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb24sXG4gICAgICAgIGRldkRlcGVuZGVuY2llczoge1xuICAgICAgICAgICdwcm9qZW4nOiBQUk9KRU5fVkVSU0lPTixcbiAgICAgICAgICAnQHhwZXJ0c3MvcHJvamVuLXR5cGVzJzogUFJPSkVOX1RZUEVTX1ZFUlNJT04sXG4gICAgICAgICAgJ2NvbW1pdC1hbmQtdGFnLXZlcnNpb24nOiBDT01NSVRfQU5EX1RBR19WRVJTSU9OLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHJlYWRvbmx5OiBmYWxzZSxcbiAgICB9KTtcblxuICAgIG5ldyBZYW1sRmlsZSh0aGlzLCAnLnlhbWxsaW50Jywge1xuICAgICAgb2JqOiB7XG4gICAgICAgIGV4dGVuZHM6ICdkZWZhdWx0JyxcbiAgICAgICAgcnVsZXM6IHsgJ2xpbmUtbGVuZ3RoJzogeyBtYXg6IDEyMCB9IH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy5idWlsZFdvcmtmbG93ID0gbmV3IEFjdGlvbkJ1aWxkV29ya2Zsb3codGhpcyk7XG5cbiAgICB0aGlzLmRvZ2Zvb2RXb3JrZmxvdyA9IG5ldyBBY3Rpb25Eb2dmb29kV29ya2Zsb3codGhpcywgb3B0aW9ucy5kb2dmb29kKTtcblxuICAgIHRoaXMuc29uYXJXb3JrZmxvdyA9IG5ldyBBY3Rpb25Tb25hcldvcmtmbG93KHRoaXMsIHtcbiAgICAgIHNvbmFySG9zdFVybDogb3B0aW9ucy5zb25hckhvc3RVcmwsXG4gICAgICBzb25hck9yZ2FuaXphdGlvbjogb3B0aW9ucy5zb25hck9yZ2FuaXphdGlvbixcbiAgICAgIHNvbmFyVG9rZW5TZWNyZXQ6IG9wdGlvbnMuc29uYXJUb2tlblNlY3JldCxcbiAgICAgIHNvbmFyUHVsbFJlcXVlc3RHYXRlOiBvcHRpb25zLnNvbmFyUHVsbFJlcXVlc3RHYXRlLFxuICAgIH0pO1xuXG4gICAgLy8gYGdpdGh1YlJlbGVhc2VgIGRlZmF1bHRzIHRvIHRydWUsIHdoaWNoIGF1dG8td2lyZXNcbiAgICAvLyBgcHVibGlzaFRvR2l0SHViUmVsZWFzZXNgIC0gaXRzIGBnaCByZWxlYXNlIGNyZWF0ZSAuLi4gLS10YXJnZXRcbiAgICAvLyAkR0lUSFVCX1NIQWAgY3JlYXRlcyB0aGUgdGFnICphbmQqIHRoZSByZWxlYXNlIHRvZ2V0aGVyIGZvciBvdXJcbiAgICAvLyBjb250aW51b3VzIChwdXNoLXRvLW1haW4pIHRyaWdnZXIuIE5vIHNlcGFyYXRlIGBwdWJsaXNoVG9HaXRgIGNhbGxcbiAgICAvLyBuZWVkZWQgKHRoYXQgcGF0aCBvbmx5IGZpcmVzIGZvciBhIG1hbnVhbCByZWxlYXNlIHRyaWdnZXIpLlxuICAgIHRoaXMucmVsZWFzZSA9IG5ldyByZWxlYXNlLlJlbGVhc2UodGhpcywge1xuICAgICAgYnJhbmNoOiAnbWFpbicsXG4gICAgICAvLyBObyBidWlsZCBhcnRpZmFjdCBmb3IgYSBjb21wb3NpdGUgYWN0aW9uIChBRC0wMDEpIC0gdGhpcyBpcyBvbmx5XG4gICAgICAvLyB3aGVyZSBSZWxlYXNlIHN0YWdlcyBpdHMgb3duIHZlcnNpb24vY2hhbmdlbG9nIGZpbGVzLlxuICAgICAgYXJ0aWZhY3RzRGlyZWN0b3J5OiAnZGlzdCcsXG4gICAgICB0YXNrczogW3RoaXMuYnVpbGRXb3JrZmxvdy50YXNrXSxcbiAgICAgIHZlcnNpb25GaWxlOiAncGFja2FnZS5qc29uJyxcbiAgICAgIHJlbGVhc2FibGVDb21taXRzOiBSZWxlYXNhYmxlQ29tbWl0cy5mZWF0dXJlc0FuZEZpeGVzKCksXG4gICAgICByZWxlYXNlVHJpZ2dlcjogcmVsZWFzZS5SZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKCksXG4gICAgICBidW1wUGFja2FnZTogYGNvbW1pdC1hbmQtdGFnLXZlcnNpb25AJHtDT01NSVRfQU5EX1RBR19WRVJTSU9OfWAsXG4gICAgICByZWxlYXNlV29ya2Zsb3dTZXR1cFN0ZXBzOiBbXG4gICAgICAgIHsgbmFtZTogJ0luc3RhbGwgZGVwZW5kZW5jaWVzJywgcnVuOiAnbnBtIGNpJyB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIC8vIFRoZSByZWxlYXNlIHdvcmtmbG93IGlzIGNyZWF0ZWQgaW5zaWRlIGByZWxlYXNlLlJlbGVhc2VgIChwcm9qZW5cbiAgICAvLyBpbnRlcm5hbCksIG5vdCBieSB0aGlzIHR5cGUgLSByZWFjaCBpdHMgZmlsZSBieSBwYXRoIHRvIGFubm90YXRlIGl0XG4gICAgLy8gbGlrZSBldmVyeSBvdGhlciBnZW5lcmF0ZWQgd29ya2Zsb3cuIFRoaXMgdHlwZSBpcyBhbHdheXMgYSByb290XG4gICAgLy8gcHJvamVjdCwgc28gcHJvamVuIG5hbWVzIGl0IGByZWxlYXNlLnltbGAuXG4gICAgbm90ZVdvcmtmbG93UHVycG9zZShcbiAgICAgIHRoaXMudHJ5RmluZEZpbGUoJy5naXRodWIvd29ya2Zsb3dzL3JlbGVhc2UueW1sJyksXG4gICAgICAnQ29udGludW91cyByZWxlYXNlIG9uIHB1c2ggdG8gbWFpbjogYnVtcCB2ZXJzaW9uLCB0YWcsIGFuZCBjcmVhdGUgYSBHaXRIdWIgUmVsZWFzZS4nLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -8,7 +8,7 @@ const projen_1 = require("projen");
|
|
|
8
8
|
* layered on top of `CdkTypescriptProject`'s pure-infra scaffold.
|
|
9
9
|
*/
|
|
10
10
|
class AppRuntimeScaffold extends projen_1.Component {
|
|
11
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.AppRuntimeScaffold", version: "0.0.
|
|
11
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.AppRuntimeScaffold", version: "0.0.21" };
|
|
12
12
|
constructor(project, appEntryPoint = 'src/app.ts') {
|
|
13
13
|
super(project, 'AppRuntimeScaffold');
|
|
14
14
|
const app = new projen_1.SourceCode(project, appEntryPoint);
|
|
@@ -13,7 +13,7 @@ const workflow_purpose_1 = require("../common/workflow-purpose");
|
|
|
13
13
|
* application source, a database, and an app-level build/test workflow.
|
|
14
14
|
*/
|
|
15
15
|
class CdkAppProject extends cdk_infra_project_1.CdkInfraProject {
|
|
16
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkAppProject", version: "0.0.
|
|
16
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkAppProject", version: "0.0.21" };
|
|
17
17
|
constructor(options) {
|
|
18
18
|
super(options);
|
|
19
19
|
new app_runtime_scaffold_1.AppRuntimeScaffold(this, options.appEntryPoint ?? 'src/app.ts');
|
|
@@ -11,7 +11,7 @@ const edge_networking_constructs_1 = require("./components/edge-networking-const
|
|
|
11
11
|
* externally-built images). Reference example: SimulcastAVDelivery.
|
|
12
12
|
*/
|
|
13
13
|
class CdkInfraProject extends cdk_typescript_base_1.CdkTypescriptProject {
|
|
14
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkInfraProject", version: "0.0.
|
|
14
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@xpertss/projen-types.CdkInfraProject", version: "0.0.21" };
|
|
15
15
|
constructor(options) {
|
|
16
16
|
super(options);
|
|
17
17
|
if (options.ecrEcs?.enabled) {
|