@macedon-technologies/batman 1.17.1 → 1.17.3

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
@@ -123,7 +123,7 @@
123
123
  "kind": "interface",
124
124
  "locationInModule": {
125
125
  "filename": "src/Application.ts",
126
- "line": 20
126
+ "line": 21
127
127
  },
128
128
  "name": "ApplicationEnvironmentConfig",
129
129
  "properties": [
@@ -135,7 +135,7 @@
135
135
  "immutable": true,
136
136
  "locationInModule": {
137
137
  "filename": "src/Application.ts",
138
- "line": 21
138
+ "line": 22
139
139
  },
140
140
  "name": "githubActionRoleArn",
141
141
  "type": {
@@ -918,13 +918,13 @@
918
918
  "docs": {
919
919
  "remarks": "zizmor flags unpinned `uses:` references as a high-severity finding\n(https://docs.zizmor.sh/audits/#unpinned-uses) because a mutable tag can be\nrepointed to different code after review. Every field here can be\noverridden by consumers who need a different pinned SHA (e.g. to pick up a\nnewer release before this package does).",
920
920
  "stability": "stable",
921
- "summary": "SHA-pinned action references used by the generated deploy/cleanup workflows."
921
+ "summary": "SHA-pinned action references used by the generated deploy/cleanup workflows, and applied to the workflows AwsCdkTypeScriptApp generates on its own (upgrade.yml, pull-request-lint.yml) via `hardenProjenGeneratedWorkflows` — see `ProjenWorkflowHardening.ts`."
922
922
  },
923
923
  "fqn": "@macedon-technologies/batman.WorkflowActionVersions",
924
924
  "kind": "interface",
925
925
  "locationInModule": {
926
926
  "filename": "src/WorkflowActionVersions.ts",
927
- "line": 10
927
+ "line": 12
928
928
  },
929
929
  "name": "WorkflowActionVersions",
930
930
  "properties": [
@@ -938,7 +938,7 @@
938
938
  "immutable": true,
939
939
  "locationInModule": {
940
940
  "filename": "src/WorkflowActionVersions.ts",
941
- "line": 16
941
+ "line": 18
942
942
  },
943
943
  "name": "checkout",
944
944
  "optional": true,
@@ -956,7 +956,7 @@
956
956
  "immutable": true,
957
957
  "locationInModule": {
958
958
  "filename": "src/WorkflowActionVersions.ts",
959
- "line": 30
959
+ "line": 32
960
960
  },
961
961
  "name": "configureAwsCredentials",
962
962
  "optional": true,
@@ -964,6 +964,42 @@
964
964
  "primitive": "string"
965
965
  }
966
966
  },
967
+ {
968
+ "abstract": true,
969
+ "docs": {
970
+ "default": "'peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1' // v8.1.1",
971
+ "stability": "stable",
972
+ "summary": "The `peter-evans/create-pull-request` action reference, used by projen's built-in dependency-upgrade workflow to open the upgrade PR."
973
+ },
974
+ "immutable": true,
975
+ "locationInModule": {
976
+ "filename": "src/WorkflowActionVersions.ts",
977
+ "line": 54
978
+ },
979
+ "name": "createPullRequest",
980
+ "optional": true,
981
+ "type": {
982
+ "primitive": "string"
983
+ }
984
+ },
985
+ {
986
+ "abstract": true,
987
+ "docs": {
988
+ "default": "'actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c' // v8",
989
+ "stability": "stable",
990
+ "summary": "The `actions/download-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs."
991
+ },
992
+ "immutable": true,
993
+ "locationInModule": {
994
+ "filename": "src/WorkflowActionVersions.ts",
995
+ "line": 70
996
+ },
997
+ "name": "downloadArtifact",
998
+ "optional": true,
999
+ "type": {
1000
+ "primitive": "string"
1001
+ }
1002
+ },
967
1003
  {
968
1004
  "abstract": true,
969
1005
  "docs": {
@@ -974,7 +1010,7 @@
974
1010
  "immutable": true,
975
1011
  "locationInModule": {
976
1012
  "filename": "src/WorkflowActionVersions.ts",
977
- "line": 44
1013
+ "line": 46
978
1014
  },
979
1015
  "name": "githubScript",
980
1016
  "optional": true,
@@ -992,7 +1028,7 @@
992
1028
  "immutable": true,
993
1029
  "locationInModule": {
994
1030
  "filename": "src/WorkflowActionVersions.ts",
995
- "line": 37
1031
+ "line": 39
996
1032
  },
997
1033
  "name": "pnpmActionSetup",
998
1034
  "optional": true,
@@ -1000,6 +1036,24 @@
1000
1036
  "primitive": "string"
1001
1037
  }
1002
1038
  },
1039
+ {
1040
+ "abstract": true,
1041
+ "docs": {
1042
+ "default": "'amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50' // v6.1.1",
1043
+ "stability": "stable",
1044
+ "summary": "The `amannn/action-semantic-pull-request` action reference, used by projen's built-in pull-request-lint workflow to validate PR titles."
1045
+ },
1046
+ "immutable": true,
1047
+ "locationInModule": {
1048
+ "filename": "src/WorkflowActionVersions.ts",
1049
+ "line": 78
1050
+ },
1051
+ "name": "semanticPullRequest",
1052
+ "optional": true,
1053
+ "type": {
1054
+ "primitive": "string"
1055
+ }
1056
+ },
1003
1057
  {
1004
1058
  "abstract": true,
1005
1059
  "docs": {
@@ -1010,13 +1064,31 @@
1010
1064
  "immutable": true,
1011
1065
  "locationInModule": {
1012
1066
  "filename": "src/WorkflowActionVersions.ts",
1013
- "line": 23
1067
+ "line": 25
1014
1068
  },
1015
1069
  "name": "setupNode",
1016
1070
  "optional": true,
1017
1071
  "type": {
1018
1072
  "primitive": "string"
1019
1073
  }
1074
+ },
1075
+ {
1076
+ "abstract": true,
1077
+ "docs": {
1078
+ "default": "'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' // v7",
1079
+ "stability": "stable",
1080
+ "summary": "The `actions/upload-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs."
1081
+ },
1082
+ "immutable": true,
1083
+ "locationInModule": {
1084
+ "filename": "src/WorkflowActionVersions.ts",
1085
+ "line": 62
1086
+ },
1087
+ "name": "uploadArtifact",
1088
+ "optional": true,
1089
+ "type": {
1090
+ "primitive": "string"
1091
+ }
1020
1092
  }
1021
1093
  ],
1022
1094
  "symbolId": "src/WorkflowActionVersions:WorkflowActionVersions"
@@ -1068,6 +1140,6 @@
1068
1140
  "symbolId": "src/WorkflowAutoDiscover:WorkflowAutoDiscover"
1069
1141
  }
1070
1142
  },
1071
- "version": "1.17.1",
1072
- "fingerprint": "fyPjXmeb31PpX2/PpsUoxaFflgtAp8hko3jqNAUb6W0="
1143
+ "version": "1.17.3",
1144
+ "fingerprint": "P+oTgE5PvMlTAfLt/cPc3/R0/p+eE8VKJnnVlGRzP4Y="
1073
1145
  }
package/API.md CHANGED
@@ -10648,7 +10648,7 @@ Overrides for the pinned action versions used by this workflow.
10648
10648
 
10649
10649
  ### WorkflowActionVersions <a name="WorkflowActionVersions" id="@macedon-technologies/batman.WorkflowActionVersions"></a>
10650
10650
 
10651
- SHA-pinned action references used by the generated deploy/cleanup workflows.
10651
+ SHA-pinned action references used by the generated deploy/cleanup workflows, and applied to the workflows AwsCdkTypeScriptApp generates on its own (upgrade.yml, pull-request-lint.yml) via `hardenProjenGeneratedWorkflows` — see `ProjenWorkflowHardening.ts`.
10652
10652
 
10653
10653
  zizmor flags unpinned `uses:` references as a high-severity finding
10654
10654
  (https://docs.zizmor.sh/audits/#unpinned-uses) because a mutable tag can be
@@ -10670,9 +10670,13 @@ const workflowActionVersions: WorkflowActionVersions = { ... }
10670
10670
  | --- | --- | --- |
10671
10671
  | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.checkout">checkout</a></code> | <code>string</code> | The `actions/checkout` action reference. |
10672
10672
  | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.configureAwsCredentials">configureAwsCredentials</a></code> | <code>string</code> | The `aws-actions/configure-aws-credentials` action reference. |
10673
+ | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.createPullRequest">createPullRequest</a></code> | <code>string</code> | The `peter-evans/create-pull-request` action reference, used by projen's built-in dependency-upgrade workflow to open the upgrade PR. |
10674
+ | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.downloadArtifact">downloadArtifact</a></code> | <code>string</code> | The `actions/download-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs. |
10673
10675
  | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.githubScript">githubScript</a></code> | <code>string</code> | The `actions/github-script` action reference. |
10674
10676
  | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.pnpmActionSetup">pnpmActionSetup</a></code> | <code>string</code> | The `pnpm/action-setup` action reference, used when the project's package manager is pnpm. |
10677
+ | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.semanticPullRequest">semanticPullRequest</a></code> | <code>string</code> | The `amannn/action-semantic-pull-request` action reference, used by projen's built-in pull-request-lint workflow to validate PR titles. |
10675
10678
  | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.setupNode">setupNode</a></code> | <code>string</code> | The `actions/setup-node` action reference. |
10679
+ | <code><a href="#@macedon-technologies/batman.WorkflowActionVersions.property.uploadArtifact">uploadArtifact</a></code> | <code>string</code> | The `actions/upload-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs. |
10676
10680
 
10677
10681
  ---
10678
10682
 
@@ -10702,6 +10706,32 @@ The `aws-actions/configure-aws-credentials` action reference.
10702
10706
 
10703
10707
  ---
10704
10708
 
10709
+ ##### `createPullRequest`<sup>Optional</sup> <a name="createPullRequest" id="@macedon-technologies/batman.WorkflowActionVersions.property.createPullRequest"></a>
10710
+
10711
+ ```typescript
10712
+ public readonly createPullRequest: string;
10713
+ ```
10714
+
10715
+ - *Type:* string
10716
+ - *Default:* 'peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1' // v8.1.1
10717
+
10718
+ The `peter-evans/create-pull-request` action reference, used by projen's built-in dependency-upgrade workflow to open the upgrade PR.
10719
+
10720
+ ---
10721
+
10722
+ ##### `downloadArtifact`<sup>Optional</sup> <a name="downloadArtifact" id="@macedon-technologies/batman.WorkflowActionVersions.property.downloadArtifact"></a>
10723
+
10724
+ ```typescript
10725
+ public readonly downloadArtifact: string;
10726
+ ```
10727
+
10728
+ - *Type:* string
10729
+ - *Default:* 'actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c' // v8
10730
+
10731
+ The `actions/download-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs.
10732
+
10733
+ ---
10734
+
10705
10735
  ##### `githubScript`<sup>Optional</sup> <a name="githubScript" id="@macedon-technologies/batman.WorkflowActionVersions.property.githubScript"></a>
10706
10736
 
10707
10737
  ```typescript
@@ -10728,6 +10758,19 @@ The `pnpm/action-setup` action reference, used when the project's package manage
10728
10758
 
10729
10759
  ---
10730
10760
 
10761
+ ##### `semanticPullRequest`<sup>Optional</sup> <a name="semanticPullRequest" id="@macedon-technologies/batman.WorkflowActionVersions.property.semanticPullRequest"></a>
10762
+
10763
+ ```typescript
10764
+ public readonly semanticPullRequest: string;
10765
+ ```
10766
+
10767
+ - *Type:* string
10768
+ - *Default:* 'amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50' // v6.1.1
10769
+
10770
+ The `amannn/action-semantic-pull-request` action reference, used by projen's built-in pull-request-lint workflow to validate PR titles.
10771
+
10772
+ ---
10773
+
10731
10774
  ##### `setupNode`<sup>Optional</sup> <a name="setupNode" id="@macedon-technologies/batman.WorkflowActionVersions.property.setupNode"></a>
10732
10775
 
10733
10776
  ```typescript
@@ -10741,5 +10784,18 @@ The `actions/setup-node` action reference.
10741
10784
 
10742
10785
  ---
10743
10786
 
10787
+ ##### `uploadArtifact`<sup>Optional</sup> <a name="uploadArtifact" id="@macedon-technologies/batman.WorkflowActionVersions.property.uploadArtifact"></a>
10788
+
10789
+ ```typescript
10790
+ public readonly uploadArtifact: string;
10791
+ ```
10792
+
10793
+ - *Type:* string
10794
+ - *Default:* 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' // v7
10795
+
10796
+ The `actions/upload-artifact` action reference, used by projen's built-in dependency-upgrade workflow to pass the upgrade patch between jobs.
10797
+
10798
+ ---
10799
+
10744
10800
 
10745
10801
 
@@ -1,14 +1,14 @@
1
1
  /**
2
- * Synthesizes a representative BatmanProject and scans the GitHub Actions
3
- * workflows it generates for downstream consumer repos with zizmor, so
4
- * regressions in PrDeployWorkflow.ts/PrCleanupWorkflow.ts/etc. are caught
5
- * here rather than shipping to every consumer of this construct.
2
+ * Synthesizes a representative BatmanProject and scans every GitHub Actions
3
+ * workflow it generates for downstream consumer repos with zizmor, so
4
+ * regressions in PrDeployWorkflow.ts/PrCleanupWorkflow.ts/ProjenWorkflowHardening.ts/etc.
5
+ * are caught here rather than shipping to every consumer of this construct.
6
6
  *
7
- * Only scans the workflow files this package hand-authors (pr-deploy.yml,
8
- * pr-cleanup.yml, staging-deploy.yml, production-deploy.yml). Other files
9
- * BatmanProject generates (e.g. upgrade.yml) come from AwsCdkTypeScriptApp's
10
- * built-in GithubWorkflow defaults, which use unpinned action tags we don't
11
- * control here overriding those is out of scope for this scan.
7
+ * This includes upgrade.yml and pull-request-lint.yml, which AwsCdkTypeScriptApp
8
+ * generates on its own with unpinned action tags and (for pull-request-lint.yml) a
9
+ * pull_request_target trigger see macedon-technologies/exman#13, where those
10
+ * defaults leaked into a consumer repo unpinned. `Application` corrects both via
11
+ * `hardenProjenGeneratedWorkflows`, and this scan is what would have caught it.
12
12
  */
13
13
  import { execFileSync } from 'child_process';
14
14
  import { mkdtempSync, rmSync } from 'fs';
@@ -42,8 +42,15 @@ try {
42
42
  prod: ENV,
43
43
  });
44
44
  project.synth();
45
- const HAND_AUTHORED_WORKFLOWS = ['pr-deploy.yml', 'pr-cleanup.yml', 'staging-deploy.yml', 'production-deploy.yml'];
46
- const paths = HAND_AUTHORED_WORKFLOWS.map((f) => join(outdir, '.github', 'workflows', f));
45
+ const GENERATED_WORKFLOWS = [
46
+ 'pr-deploy.yml',
47
+ 'pr-cleanup.yml',
48
+ 'staging-deploy.yml',
49
+ 'production-deploy.yml',
50
+ 'upgrade.yml',
51
+ 'pull-request-lint.yml',
52
+ ];
53
+ const paths = GENERATED_WORKFLOWS.map((f) => join(outdir, '.github', 'workflows', f));
47
54
  execFileSync('uvx', [`zizmor@${ZIZMOR_VERSION}`, ...paths], { stdio: 'inherit' });
48
55
  } finally {
49
56
  rmSync(outdir, { recursive: true, force: true });
@@ -13,6 +13,7 @@ const MainTestFile_1 = require("./MainTestFile");
13
13
  const PrCleanupWorkflow_1 = require("./PrCleanupWorkflow");
14
14
  const PrDeployWorkflow_1 = require("./PrDeployWorkflow");
15
15
  const ProductionDeployWorkflow_1 = require("./ProductionDeployWorkflow");
16
+ const ProjenWorkflowHardening_1 = require("./ProjenWorkflowHardening");
16
17
  const StagingDeployWorkflow_1 = require("./StagingDeployWorkflow");
17
18
  const StaticWebsiteConstructFile_1 = require("./StaticWebsiteConstructFile");
18
19
  const WorkflowAutoDiscover_1 = require("./WorkflowAutoDiscover");
@@ -81,7 +82,11 @@ class Application {
81
82
  clerkPublishableKey: options.prod.clerkPublishableKey,
82
83
  actionVersions: options.actionVersions,
83
84
  });
85
+ // Harden the workflows AwsCdkTypeScriptApp generates on its own (upgrade.yml,
86
+ // pull-request-lint.yml), which otherwise ship with unpinned actions and a
87
+ // pull_request_target trigger zizmor flags on every consumer of this construct.
88
+ (0, ProjenWorkflowHardening_1.hardenProjenGeneratedWorkflows)(project, options.actionVersions);
84
89
  }
85
90
  }
86
91
  exports.Application = Application;
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQXBwbGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTBDO0FBQzFDLHlEQUFzRDtBQUN0RCxpRUFBOEQ7QUFDOUQseUVBQXNFO0FBQ3RFLHFEQUFrRDtBQUNsRCxpRUFBOEQ7QUFDOUQsbURBQWdEO0FBQ2hELHlDQUF5RDtBQUN6RCxpREFBOEM7QUFDOUMsMkRBQXdEO0FBQ3hELHlEQUFzRDtBQUN0RCx5RUFBc0U7QUFDdEUsbUVBQWdFO0FBQ2hFLDZFQUEwRTtBQUUxRSxpRUFBOEQ7QUFDOUQseURBQTBEO0FBMkIxRDs7R0FFRztBQUNILE1BQWEsV0FBVztJQUN0QixZQUFZLE9BQTRCLEVBQUUsT0FBMkI7UUFDbkUsZ0NBQWdDO1FBRWhDLElBQUksbUJBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDcEIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRztZQUNoQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLDZCQUFhLENBQUMsT0FBTyxFQUFFO1lBQ3pCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7U0FDakIsQ0FBQyxDQUFDO1FBRUgscUJBQXFCO1FBQ3JCLElBQUksMkNBQW9CLENBQUMsT0FBTyxFQUFFO1lBQ2hDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7U0FDM0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxtREFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN0QyxJQUFJLDJDQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWxDLHlCQUF5QjtRQUN6QixJQUFJLG1DQUFnQixDQUFDLE9BQU8sRUFBRSxFQUFFLHVCQUF1QixFQUFFLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUM7UUFDNUYsSUFBSSx1REFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4QyxxQkFBcUI7UUFDckIsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDL0QsSUFBSSx1Q0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxJQUFJLDJDQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFFRCxtREFBbUQ7UUFDbkQsSUFBSSxtQkFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXRCLG9CQUFvQjtRQUNwQixJQUFJLDJCQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFMUIsc0JBQXNCO1FBQ3RCLElBQUksK0JBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU1QixrQ0FBa0M7UUFDbEMsSUFBSSxtQ0FBZ0IsQ0FBQyxPQUFPLEVBQUU7WUFDNUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3hDLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDN0IsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7WUFDcEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUkscUNBQWlCLENBQUMsT0FBTyxFQUFFO1lBQzdCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUN4QyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNO1lBQzdCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSw2Q0FBcUIsQ0FBQyxPQUFPLEVBQUU7WUFDakMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsbUJBQW1CO1lBQzVDLFNBQVMsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU07WUFDakMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsbUJBQW1CO1lBQ3hELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLG1EQUF3QixDQUFDLE9BQU8sRUFBRTtZQUNwQyxPQUFPLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFDekMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTTtZQUM5QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUI7WUFDckQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTNFRCxrQ0EyRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuaW1wb3J0IHsgQXBpRmlsZXMgfSBmcm9tICcuL0FwaS9BcGlGaWxlcyc7XG5pbXBvcnQgeyBBcGlDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9BcGlDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uU3RhY2tGaWxlIH0gZnJvbSAnLi9BcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jhc2VBcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBDb2RlUmFiYml0RmlsZSB9IGZyb20gJy4vQ29kZVJhYmJpdEZpbGUnO1xuaW1wb3J0IHsgR2l0SHViUm9sZXNTdGFja0ZpbGUgfSBmcm9tICcuL0dpdEh1YlJvbGVzU3RhY2tGaWxlJztcbmltcG9ydCB7IExvY2FsRGV2RmlsZXMgfSBmcm9tICcuL0xvY2FsRGV2RmlsZXMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRDb25maWcsIE1haW5GaWxlIH0gZnJvbSAnLi9NYWluRmlsZSc7XG5pbXBvcnQgeyBNYWluVGVzdEZpbGUgfSBmcm9tICcuL01haW5UZXN0RmlsZSc7XG5pbXBvcnQgeyBQckNsZWFudXBXb3JrZmxvdyB9IGZyb20gJy4vUHJDbGVhbnVwV29ya2Zsb3cnO1xuaW1wb3J0IHsgUHJEZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJEZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9kdWN0aW9uRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuL1Byb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBTdGFnaW5nRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuL1N0YWdpbmdEZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSB9IGZyb20gJy4vU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUnO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyB9IGZyb20gJy4vV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyc7XG5pbXBvcnQgeyBXb3JrZmxvd0F1dG9EaXNjb3ZlciB9IGZyb20gJy4vV29ya2Zsb3dBdXRvRGlzY292ZXInO1xuaW1wb3J0IHsgV29ya2Zsb3dQcm92aWRlckZpbGUgfSBmcm9tICcuL1dvcmtmbG93UHJvdmlkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWcgZXh0ZW5kcyBFbnZpcm9ubWVudENvbmZpZyB7XG4gIHJlYWRvbmx5IGdpdGh1YkFjdGlvblJvbGVBcm46IGBhcm46YXdzOmlhbTo6JHtzdHJpbmd9OnJvbGUvJHtzdHJpbmd9YDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbk9wdGlvbnMge1xuICByZWFkb25seSBnaXRodWJSZXBvc2l0b3J5OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRldjogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcbiAgcmVhZG9ubHkgc3RhZ2luZzogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcbiAgcmVhZG9ubHkgcHJvZDogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcbiAgcmVhZG9ubHkgYWRkaXRpb25hbFRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICByZWFkb25seSBuOG5Xb3JrZmxvd3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgZm9yIHRoZSBwaW5uZWQgYWN0aW9uIHZlcnNpb25zIHVzZWQgYnkgdGhlIGdlbmVyYXRlZCBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3MuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25WZXJzaW9ucz86IFdvcmtmbG93QWN0aW9uVmVyc2lvbnM7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyB0aGUgcGlubmVkIFMzIG9iamVjdCB2ZXJzaW9uIG9mIHRoZSBjbGVyay1hdXRob3JpemVyIExhbWJkYSBkZXBsb3ltZW50IHBhY2thZ2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIGRlZmF1bHQgcGlubmVkIGluIEFwaUNvbnN0cnVjdEZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFwcGxpY2F0aW9uIGNvbnN0cnVjdCB0aGF0IGNyZWF0ZXMgYWxsIHN0YW5kYXJkIHByb2plY3QgZmlsZXNcbiAqL1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogQXdzQ2RrVHlwZVNjcmlwdEFwcCwgb3B0aW9uczogQXBwbGljYXRpb25PcHRpb25zKSB7XG4gICAgLy8gQ3JlYXRlIG1haW4gZW50cnkgcG9pbnQgZmlsZXNcblxuICAgIG5ldyBNYWluRmlsZShwcm9qZWN0LCB7XG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgZGV2OiBvcHRpb25zLmRldixcbiAgICAgIHN0YWdpbmc6IG9wdGlvbnMuc3RhZ2luZyxcbiAgICAgIHByb2Q6IG9wdGlvbnMucHJvZCxcbiAgICAgIGFkZGl0aW9uYWxUYWdzOiBvcHRpb25zLmFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuXG4gICAgbmV3IExvY2FsRGV2RmlsZXMocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgfSk7XG5cbiAgICAvLyBDcmVhdGUgc3RhY2sgZmlsZXNcbiAgICBuZXcgR2l0SHViUm9sZXNTdGFja0ZpbGUocHJvamVjdCwge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogb3B0aW9ucy5naXRodWJSZXBvc2l0b3J5LFxuICAgIH0pO1xuXG4gICAgbmV3IEJhc2VBcHBsaWNhdGlvblN0YWNrRmlsZShwcm9qZWN0KTtcbiAgICBuZXcgQXBwbGljYXRpb25TdGFja0ZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgY29uc3RydWN0IGZpbGVzXG4gICAgbmV3IEFwaUNvbnN0cnVjdEZpbGUocHJvamVjdCwgeyBhdXRob3JpemVyT2JqZWN0VmVyc2lvbjogb3B0aW9ucy5hdXRob3JpemVyT2JqZWN0VmVyc2lvbiB9KTtcbiAgICBuZXcgU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBuOG4gd29ya2Zsb3cgZmlsZXNcbiAgICBpZiAob3B0aW9ucy5uOG5Xb3JrZmxvd3MgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLm44bldvcmtmbG93cykge1xuICAgICAgbmV3IFdvcmtmbG93UHJvdmlkZXJGaWxlKHByb2plY3QpO1xuICAgICAgbmV3IFdvcmtmbG93QXV0b0Rpc2NvdmVyKHByb2plY3QpO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSBoYW5kbGVyIGZpbGVzIGFuZCBBUEkgYmFja2VuZCBsb2dpYyBmaWxlc1xuICAgIG5ldyBBcGlGaWxlcyhwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSB0ZXN0IGZpbGVzXG4gICAgbmV3IE1haW5UZXN0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSBjb25maWcgZmlsZXNcbiAgICBuZXcgQ29kZVJhYmJpdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzXG4gICAgbmV3IFByRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5kZXYuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5kZXYucmVnaW9uLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5kZXYuY2xlcmtQdWJsaXNoYWJsZUtleSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgbmV3IFByQ2xlYW51cFdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuZGV2LmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuZGV2LnJlZ2lvbixcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBTdGFnaW5nRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5zdGFnaW5nLmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuc3RhZ2luZy5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5zdGFnaW5nLmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBQcm9kdWN0aW9uRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5wcm9kLmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMucHJvZC5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5wcm9kLmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcbiAgfVxufVxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQXBwbGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTBDO0FBQzFDLHlEQUFzRDtBQUN0RCxpRUFBOEQ7QUFDOUQseUVBQXNFO0FBQ3RFLHFEQUFrRDtBQUNsRCxpRUFBOEQ7QUFDOUQsbURBQWdEO0FBQ2hELHlDQUF5RDtBQUN6RCxpREFBOEM7QUFDOUMsMkRBQXdEO0FBQ3hELHlEQUFzRDtBQUN0RCx5RUFBc0U7QUFDdEUsdUVBQTJFO0FBQzNFLG1FQUFnRTtBQUNoRSw2RUFBMEU7QUFFMUUsaUVBQThEO0FBQzlELHlEQUEwRDtBQTJCMUQ7O0dBRUc7QUFDSCxNQUFhLFdBQVc7SUFDdEIsWUFBWSxPQUE0QixFQUFFLE9BQTJCO1FBQ25FLGdDQUFnQztRQUVoQyxJQUFJLG1CQUFRLENBQUMsT0FBTyxFQUFFO1lBQ3BCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7WUFDaEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSw2QkFBYSxDQUFDLE9BQU8sRUFBRTtZQUN6QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1NBQ2pCLENBQUMsQ0FBQztRQUVILHFCQUFxQjtRQUNyQixJQUFJLDJDQUFvQixDQUFDLE9BQU8sRUFBRTtZQUNoQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsZ0JBQWdCO1NBQzNDLENBQUMsQ0FBQztRQUVILElBQUksbURBQXdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEMsSUFBSSwyQ0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVsQyx5QkFBeUI7UUFDekIsSUFBSSxtQ0FBZ0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDO1FBQzVGLElBQUksdURBQTBCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFeEMscUJBQXFCO1FBQ3JCLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQy9ELElBQUksdUNBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsSUFBSSwyQ0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsbURBQW1EO1FBQ25ELElBQUksbUJBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV0QixvQkFBb0I7UUFDcEIsSUFBSSwyQkFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFCLHNCQUFzQjtRQUN0QixJQUFJLCtCQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUIsa0NBQWtDO1FBQ2xDLElBQUksbUNBQWdCLENBQUMsT0FBTyxFQUFFO1lBQzVCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUN4QyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNO1lBQzdCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3BELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLHFDQUFpQixDQUFDLE9BQU8sRUFBRTtZQUM3QixPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7WUFDeEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUM3QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUksNkNBQXFCLENBQUMsT0FBTyxFQUFFO1lBQ2pDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUM1QyxTQUFTLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQ2pDLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixtQkFBbUIsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUN4RCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxtREFBd0IsQ0FBQyxPQUFPLEVBQUU7WUFDcEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3pDLFNBQVMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDOUIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3JELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCw4RUFBOEU7UUFDOUUsMkVBQTJFO1FBQzNFLGdGQUFnRjtRQUNoRixJQUFBLHdEQUE4QixFQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEUsQ0FBQztDQUNGO0FBaEZELGtDQWdGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBBcGlGaWxlcyB9IGZyb20gJy4vQXBpL0FwaUZpbGVzJztcbmltcG9ydCB7IEFwaUNvbnN0cnVjdEZpbGUgfSBmcm9tICcuL0FwaUNvbnN0cnVjdEZpbGUnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0FwcGxpY2F0aW9uU3RhY2tGaWxlJztcbmltcG9ydCB7IEJhc2VBcHBsaWNhdGlvblN0YWNrRmlsZSB9IGZyb20gJy4vQmFzZUFwcGxpY2F0aW9uU3RhY2tGaWxlJztcbmltcG9ydCB7IENvZGVSYWJiaXRGaWxlIH0gZnJvbSAnLi9Db2RlUmFiYml0RmlsZSc7XG5pbXBvcnQgeyBHaXRIdWJSb2xlc1N0YWNrRmlsZSB9IGZyb20gJy4vR2l0SHViUm9sZXNTdGFja0ZpbGUnO1xuaW1wb3J0IHsgTG9jYWxEZXZGaWxlcyB9IGZyb20gJy4vTG9jYWxEZXZGaWxlcyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudENvbmZpZywgTWFpbkZpbGUgfSBmcm9tICcuL01haW5GaWxlJztcbmltcG9ydCB7IE1haW5UZXN0RmlsZSB9IGZyb20gJy4vTWFpblRlc3RGaWxlJztcbmltcG9ydCB7IFByQ2xlYW51cFdvcmtmbG93IH0gZnJvbSAnLi9QckNsZWFudXBXb3JrZmxvdyc7XG5pbXBvcnQgeyBQckRlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9QckRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFByb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IGhhcmRlblByb2plbkdlbmVyYXRlZFdvcmtmbG93cyB9IGZyb20gJy4vUHJvamVuV29ya2Zsb3dIYXJkZW5pbmcnO1xuaW1wb3J0IHsgU3RhZ2luZ0RlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9TdGFnaW5nRGVwbG95V29ya2Zsb3cnO1xuaW1wb3J0IHsgU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUgfSBmcm9tICcuL1N0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuaW1wb3J0IHsgV29ya2Zsb3dBdXRvRGlzY292ZXIgfSBmcm9tICcuL1dvcmtmbG93QXV0b0Rpc2NvdmVyJztcbmltcG9ydCB7IFdvcmtmbG93UHJvdmlkZXJGaWxlIH0gZnJvbSAnLi9Xb3JrZmxvd1Byb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnIGV4dGVuZHMgRW52aXJvbm1lbnRDb25maWcge1xuICByZWFkb25seSBnaXRodWJBY3Rpb25Sb2xlQXJuOiBgYXJuOmF3czppYW06OiR7c3RyaW5nfTpyb2xlLyR7c3RyaW5nfWA7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25PcHRpb25zIHtcbiAgcmVhZG9ubHkgZ2l0aHViUmVwb3NpdG9yeTogc3RyaW5nO1xuICByZWFkb25seSBkZXY6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHN0YWdpbmc6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHByb2Q6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxUYWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgcmVhZG9ubHkgbjhuV29ya2Zsb3dzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIGZvciB0aGUgcGlubmVkIGFjdGlvbiB2ZXJzaW9ucyB1c2VkIGJ5IHRoZSBnZW5lcmF0ZWQgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uVmVyc2lvbnM/OiBXb3JrZmxvd0FjdGlvblZlcnNpb25zO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIHBpbm5lZCBTMyBvYmplY3QgdmVyc2lvbiBvZiB0aGUgY2xlcmstYXV0aG9yaXplciBMYW1iZGEgZGVwbG95bWVudCBwYWNrYWdlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBkZWZhdWx0IHBpbm5lZCBpbiBBcGlDb25zdHJ1Y3RGaWxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JpemVyT2JqZWN0VmVyc2lvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBcHBsaWNhdGlvbiBjb25zdHJ1Y3QgdGhhdCBjcmVhdGVzIGFsbCBzdGFuZGFyZCBwcm9qZWN0IGZpbGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIG9wdGlvbnM6IEFwcGxpY2F0aW9uT3B0aW9ucykge1xuICAgIC8vIENyZWF0ZSBtYWluIGVudHJ5IHBvaW50IGZpbGVzXG5cbiAgICBuZXcgTWFpbkZpbGUocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgICBzdGFnaW5nOiBvcHRpb25zLnN0YWdpbmcsXG4gICAgICBwcm9kOiBvcHRpb25zLnByb2QsXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICB9KTtcblxuICAgIG5ldyBMb2NhbERldkZpbGVzKHByb2plY3QsIHtcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBkZXY6IG9wdGlvbnMuZGV2LFxuICAgIH0pO1xuXG4gICAgLy8gQ3JlYXRlIHN0YWNrIGZpbGVzXG4gICAgbmV3IEdpdEh1YlJvbGVzU3RhY2tGaWxlKHByb2plY3QsIHtcbiAgICAgIGdpdGh1YlJlcG9zaXRvcnk6IG9wdGlvbnMuZ2l0aHViUmVwb3NpdG9yeSxcbiAgICB9KTtcblxuICAgIG5ldyBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUocHJvamVjdCk7XG4gICAgbmV3IEFwcGxpY2F0aW9uU3RhY2tGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIGNvbnN0cnVjdCBmaWxlc1xuICAgIG5ldyBBcGlDb25zdHJ1Y3RGaWxlKHByb2plY3QsIHsgYXV0aG9yaXplck9iamVjdFZlcnNpb246IG9wdGlvbnMuYXV0aG9yaXplck9iamVjdFZlcnNpb24gfSk7XG4gICAgbmV3IFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gbjhuIHdvcmtmbG93IGZpbGVzXG4gICAgaWYgKG9wdGlvbnMubjhuV29ya2Zsb3dzID09PSB1bmRlZmluZWQgfHwgb3B0aW9ucy5uOG5Xb3JrZmxvd3MpIHtcbiAgICAgIG5ldyBXb3JrZmxvd1Byb3ZpZGVyRmlsZShwcm9qZWN0KTtcbiAgICAgIG5ldyBXb3JrZmxvd0F1dG9EaXNjb3Zlcihwcm9qZWN0KTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgaGFuZGxlciBmaWxlcyBhbmQgQVBJIGJhY2tlbmQgbG9naWMgZmlsZXNcbiAgICBuZXcgQXBpRmlsZXMocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgdGVzdCBmaWxlc1xuICAgIG5ldyBNYWluVGVzdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgY29uZmlnIGZpbGVzXG4gICAgbmV3IENvZGVSYWJiaXRGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93c1xuICAgIG5ldyBQckRlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuZGV2LmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuZGV2LnJlZ2lvbixcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMuZGV2LmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBQckNsZWFudXBXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgU3RhZ2luZ0RlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuc3RhZ2luZy5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnN0YWdpbmcucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMuc3RhZ2luZy5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMucHJvZC5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnByb2QucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMucHJvZC5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICAvLyBIYXJkZW4gdGhlIHdvcmtmbG93cyBBd3NDZGtUeXBlU2NyaXB0QXBwIGdlbmVyYXRlcyBvbiBpdHMgb3duICh1cGdyYWRlLnltbCxcbiAgICAvLyBwdWxsLXJlcXVlc3QtbGludC55bWwpLCB3aGljaCBvdGhlcndpc2Ugc2hpcCB3aXRoIHVucGlubmVkIGFjdGlvbnMgYW5kIGFcbiAgICAvLyBwdWxsX3JlcXVlc3RfdGFyZ2V0IHRyaWdnZXIgeml6bW9yIGZsYWdzIG9uIGV2ZXJ5IGNvbnN1bWVyIG9mIHRoaXMgY29uc3RydWN0LlxuICAgIGhhcmRlblByb2plbkdlbmVyYXRlZFdvcmtmbG93cyhwcm9qZWN0LCBvcHRpb25zLmFjdGlvblZlcnNpb25zKTtcbiAgfVxufVxuIl19
@@ -11,7 +11,7 @@ const GitHubRolesFile_1 = require("./GitHubRolesFile");
11
11
  const utils_1 = require("./utils");
12
12
  const ViteReactProject_1 = require("./ViteReactProject");
13
13
  class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.17.1" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.17.3" };
15
15
  constructor(options) {
16
16
  super({
17
17
  ...options,
@@ -11,7 +11,7 @@ const GitHubRolesFile_1 = require("./GitHubRolesFile");
11
11
  const utils_1 = require("./utils");
12
12
  const ViteReactProject_1 = require("./ViteReactProject");
13
13
  class BootcampProject extends awscdk_1.AwsCdkTypeScriptApp {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.17.1" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.17.3" };
15
15
  constructor(options) {
16
16
  super({
17
17
  ...options,
@@ -4,7 +4,7 @@ exports.CodeOwnersFile = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
6
  class CodeOwnersFile extends projen_1.TextFile {
7
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.17.1" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.17.3" };
8
8
  constructor(project, options = {}) {
9
9
  const defaultOwners = ['* @macedon-technologies/platform'];
10
10
  const allOwners = [...defaultOwners, ...(options.additionalOwners || [])];
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
7
7
  const utils_1 = require("./utils");
8
8
  const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
9
9
  class ProductionDeployWorkflow extends projen_1.YamlFile {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.17.1" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.17.3" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -0,0 +1,18 @@
1
+ import { AwsCdkTypeScriptApp } from 'projen/lib/awscdk';
2
+ import { WorkflowActionVersions } from './WorkflowActionVersions';
3
+ /**
4
+ * Hardens the GitHub Actions workflows that `AwsCdkTypeScriptApp` generates on its own
5
+ * (`upgrade.yml`, `pull-request-lint.yml`, ...) against the zizmor findings raised on
6
+ * consumer repos (e.g. macedon-technologies/exman#13).
7
+ *
8
+ * These workflows aren't hand-authored by this package the way `PrDeployWorkflow`/
9
+ * `PrCleanupWorkflow`/etc. are, so they can't be pinned by writing a literal SHA into a
10
+ * `uses:` string. projen exposes `project.github.actions` for exactly this case: every
11
+ * `uses:` rendered by a `GithubWorkflow`/`Job` (including projen's own built-in
12
+ * components) is resolved through it at synthesis time.
13
+ *
14
+ * `persist-credentials` and the `pull_request_target` trigger aren't covered by that
15
+ * registry (it only rewrites `uses:`), so those are corrected with a `JsonPatch` against
16
+ * the synthesized workflow file instead.
17
+ */
18
+ export declare function hardenProjenGeneratedWorkflows(project: AwsCdkTypeScriptApp, actionVersions?: WorkflowActionVersions): void;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hardenProjenGeneratedWorkflows = hardenProjenGeneratedWorkflows;
4
+ const projen_1 = require("projen");
5
+ const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
6
+ /**
7
+ * Hardens the GitHub Actions workflows that `AwsCdkTypeScriptApp` generates on its own
8
+ * (`upgrade.yml`, `pull-request-lint.yml`, ...) against the zizmor findings raised on
9
+ * consumer repos (e.g. macedon-technologies/exman#13).
10
+ *
11
+ * These workflows aren't hand-authored by this package the way `PrDeployWorkflow`/
12
+ * `PrCleanupWorkflow`/etc. are, so they can't be pinned by writing a literal SHA into a
13
+ * `uses:` string. projen exposes `project.github.actions` for exactly this case: every
14
+ * `uses:` rendered by a `GithubWorkflow`/`Job` (including projen's own built-in
15
+ * components) is resolved through it at synthesis time.
16
+ *
17
+ * `persist-credentials` and the `pull_request_target` trigger aren't covered by that
18
+ * registry (it only rewrites `uses:`), so those are corrected with a `JsonPatch` against
19
+ * the synthesized workflow file instead.
20
+ */
21
+ function hardenProjenGeneratedWorkflows(project, actionVersions) {
22
+ const versions = (0, WorkflowActionVersions_1.resolveActionVersions)(actionVersions);
23
+ const github = project.github;
24
+ if (!github) {
25
+ return;
26
+ }
27
+ // zizmor: unpinned-uses (high) — projen's built-in workflows reference these actions by
28
+ // mutable tag (e.g. `actions/checkout@v6`). Overriding by bare action name repoints every
29
+ // usage projen renders, without touching the hand-authored workflows above (which already
30
+ // embed a resolved SHA literal and never go through this registry). upload-artifact,
31
+ // download-artifact and action-semantic-pull-request weren't reported in #13, but are the
32
+ // same finding on the same two files, so they're pinned here too rather than left ticking.
33
+ github.actions.set('actions/checkout', versions.checkout);
34
+ github.actions.set('actions/setup-node', versions.setupNode);
35
+ github.actions.set('pnpm/action-setup', versions.pnpmActionSetup);
36
+ github.actions.set('actions/github-script', versions.githubScript);
37
+ github.actions.set('peter-evans/create-pull-request', versions.createPullRequest);
38
+ github.actions.set('actions/upload-artifact', versions.uploadArtifact);
39
+ github.actions.set('actions/download-artifact', versions.downloadArtifact);
40
+ github.actions.set('amannn/action-semantic-pull-request', versions.semanticPullRequest);
41
+ // zizmor: artipacked (low) — actions/checkout persists git credentials to disk by
42
+ // default. Neither of upgrade.yml's checkout steps need to push from that checkout
43
+ // (the "pr" job's push happens via peter-evans/create-pull-request with its own token).
44
+ const upgrade = github.tryFindWorkflow('upgrade');
45
+ upgrade?.file?.patch(projen_1.JsonPatch.add('/jobs/upgrade/steps/0/with', { 'persist-credentials': false }), projen_1.JsonPatch.add('/jobs/pr/steps/0/with', { 'persist-credentials': false }));
46
+ // zizmor: dangerous-triggers (high) — pull-request-lint.yml only validates the PR title;
47
+ // it doesn't need pull_request_target's access to secrets/write permissions against
48
+ // untrusted fork content. `pull_request` covers the same title-changed events without
49
+ // the risk. (If a consumer ever needs this check to comment on forked PRs, that consumer
50
+ // should override `pullRequestLintOptions` accordingly instead of reverting this globally.)
51
+ const pullRequestLint = github.tryFindWorkflow('pull-request-lint');
52
+ pullRequestLint?.file?.patch(projen_1.JsonPatch.replace('/on', {
53
+ pull_request: {
54
+ types: ['labeled', 'opened', 'synchronize', 'reopened', 'ready_for_review', 'edited'],
55
+ },
56
+ merge_group: {},
57
+ }));
58
+ }
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvamVuV29ya2Zsb3dIYXJkZW5pbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvUHJvamVuV29ya2Zsb3dIYXJkZW5pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFtQkEsd0VBNkNDO0FBaEVELG1DQUFtQztBQUVuQyxxRUFBeUY7QUFFekY7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxTQUFnQiw4QkFBOEIsQ0FBQyxPQUE0QixFQUFFLGNBQXVDO0lBQ2xILE1BQU0sUUFBUSxHQUFHLElBQUEsOENBQXFCLEVBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUM5QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPO0lBQ1QsQ0FBQztJQUVELHdGQUF3RjtJQUN4RiwwRkFBMEY7SUFDMUYsMEZBQTBGO0lBQzFGLHFGQUFxRjtJQUNyRiwwRkFBMEY7SUFDMUYsMkZBQTJGO0lBQzNGLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxRCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNuRSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQ0FBaUMsRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNsRixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRSxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDM0UsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMscUNBQXFDLEVBQUUsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFeEYsa0ZBQWtGO0lBQ2xGLG1GQUFtRjtJQUNuRix3RkFBd0Y7SUFDeEYsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FDbEIsa0JBQVMsQ0FBQyxHQUFHLENBQUMsNEJBQTRCLEVBQUUsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUM3RSxrQkFBUyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBRSxDQUFDLENBQ3pFLENBQUM7SUFFRix5RkFBeUY7SUFDekYsb0ZBQW9GO0lBQ3BGLHNGQUFzRjtJQUN0Rix5RkFBeUY7SUFDekYsNEZBQTRGO0lBQzVGLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNwRSxlQUFlLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FDMUIsa0JBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFO1FBQ3ZCLFlBQVksRUFBRTtZQUNaLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxrQkFBa0IsRUFBRSxRQUFRLENBQUM7U0FDdEY7UUFDRCxXQUFXLEVBQUUsRUFBRTtLQUNoQixDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBKc29uUGF0Y2ggfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcbmltcG9ydCB7IHJlc29sdmVBY3Rpb25WZXJzaW9ucywgV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyB9IGZyb20gJy4vV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyc7XG5cbi8qKlxuICogSGFyZGVucyB0aGUgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIHRoYXQgYEF3c0Nka1R5cGVTY3JpcHRBcHBgIGdlbmVyYXRlcyBvbiBpdHMgb3duXG4gKiAoYHVwZ3JhZGUueW1sYCwgYHB1bGwtcmVxdWVzdC1saW50LnltbGAsIC4uLikgYWdhaW5zdCB0aGUgeml6bW9yIGZpbmRpbmdzIHJhaXNlZCBvblxuICogY29uc3VtZXIgcmVwb3MgKGUuZy4gbWFjZWRvbi10ZWNobm9sb2dpZXMvZXhtYW4jMTMpLlxuICpcbiAqIFRoZXNlIHdvcmtmbG93cyBhcmVuJ3QgaGFuZC1hdXRob3JlZCBieSB0aGlzIHBhY2thZ2UgdGhlIHdheSBgUHJEZXBsb3lXb3JrZmxvd2AvXG4gKiBgUHJDbGVhbnVwV29ya2Zsb3dgL2V0Yy4gYXJlLCBzbyB0aGV5IGNhbid0IGJlIHBpbm5lZCBieSB3cml0aW5nIGEgbGl0ZXJhbCBTSEEgaW50byBhXG4gKiBgdXNlczpgIHN0cmluZy4gcHJvamVuIGV4cG9zZXMgYHByb2plY3QuZ2l0aHViLmFjdGlvbnNgIGZvciBleGFjdGx5IHRoaXMgY2FzZTogZXZlcnlcbiAqIGB1c2VzOmAgcmVuZGVyZWQgYnkgYSBgR2l0aHViV29ya2Zsb3dgL2BKb2JgIChpbmNsdWRpbmcgcHJvamVuJ3Mgb3duIGJ1aWx0LWluXG4gKiBjb21wb25lbnRzKSBpcyByZXNvbHZlZCB0aHJvdWdoIGl0IGF0IHN5bnRoZXNpcyB0aW1lLlxuICpcbiAqIGBwZXJzaXN0LWNyZWRlbnRpYWxzYCBhbmQgdGhlIGBwdWxsX3JlcXVlc3RfdGFyZ2V0YCB0cmlnZ2VyIGFyZW4ndCBjb3ZlcmVkIGJ5IHRoYXRcbiAqIHJlZ2lzdHJ5IChpdCBvbmx5IHJld3JpdGVzIGB1c2VzOmApLCBzbyB0aG9zZSBhcmUgY29ycmVjdGVkIHdpdGggYSBgSnNvblBhdGNoYCBhZ2FpbnN0XG4gKiB0aGUgc3ludGhlc2l6ZWQgd29ya2Zsb3cgZmlsZSBpbnN0ZWFkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFyZGVuUHJvamVuR2VuZXJhdGVkV29ya2Zsb3dzKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIGFjdGlvblZlcnNpb25zPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyk6IHZvaWQge1xuICBjb25zdCB2ZXJzaW9ucyA9IHJlc29sdmVBY3Rpb25WZXJzaW9ucyhhY3Rpb25WZXJzaW9ucyk7XG4gIGNvbnN0IGdpdGh1YiA9IHByb2plY3QuZ2l0aHViO1xuICBpZiAoIWdpdGh1Yikge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8vIHppem1vcjogdW5waW5uZWQtdXNlcyAoaGlnaCkg4oCUIHByb2plbidzIGJ1aWx0LWluIHdvcmtmbG93cyByZWZlcmVuY2UgdGhlc2UgYWN0aW9ucyBieVxuICAvLyBtdXRhYmxlIHRhZyAoZS5nLiBgYWN0aW9ucy9jaGVja291dEB2NmApLiBPdmVycmlkaW5nIGJ5IGJhcmUgYWN0aW9uIG5hbWUgcmVwb2ludHMgZXZlcnlcbiAgLy8gdXNhZ2UgcHJvamVuIHJlbmRlcnMsIHdpdGhvdXQgdG91Y2hpbmcgdGhlIGhhbmQtYXV0aG9yZWQgd29ya2Zsb3dzIGFib3ZlICh3aGljaCBhbHJlYWR5XG4gIC8vIGVtYmVkIGEgcmVzb2x2ZWQgU0hBIGxpdGVyYWwgYW5kIG5ldmVyIGdvIHRocm91Z2ggdGhpcyByZWdpc3RyeSkuIHVwbG9hZC1hcnRpZmFjdCxcbiAgLy8gZG93bmxvYWQtYXJ0aWZhY3QgYW5kIGFjdGlvbi1zZW1hbnRpYy1wdWxsLXJlcXVlc3Qgd2VyZW4ndCByZXBvcnRlZCBpbiAjMTMsIGJ1dCBhcmUgdGhlXG4gIC8vIHNhbWUgZmluZGluZyBvbiB0aGUgc2FtZSB0d28gZmlsZXMsIHNvIHRoZXkncmUgcGlubmVkIGhlcmUgdG9vIHJhdGhlciB0aGFuIGxlZnQgdGlja2luZy5cbiAgZ2l0aHViLmFjdGlvbnMuc2V0KCdhY3Rpb25zL2NoZWNrb3V0JywgdmVyc2lvbnMuY2hlY2tvdXQpO1xuICBnaXRodWIuYWN0aW9ucy5zZXQoJ2FjdGlvbnMvc2V0dXAtbm9kZScsIHZlcnNpb25zLnNldHVwTm9kZSk7XG4gIGdpdGh1Yi5hY3Rpb25zLnNldCgncG5wbS9hY3Rpb24tc2V0dXAnLCB2ZXJzaW9ucy5wbnBtQWN0aW9uU2V0dXApO1xuICBnaXRodWIuYWN0aW9ucy5zZXQoJ2FjdGlvbnMvZ2l0aHViLXNjcmlwdCcsIHZlcnNpb25zLmdpdGh1YlNjcmlwdCk7XG4gIGdpdGh1Yi5hY3Rpb25zLnNldCgncGV0ZXItZXZhbnMvY3JlYXRlLXB1bGwtcmVxdWVzdCcsIHZlcnNpb25zLmNyZWF0ZVB1bGxSZXF1ZXN0KTtcbiAgZ2l0aHViLmFjdGlvbnMuc2V0KCdhY3Rpb25zL3VwbG9hZC1hcnRpZmFjdCcsIHZlcnNpb25zLnVwbG9hZEFydGlmYWN0KTtcbiAgZ2l0aHViLmFjdGlvbnMuc2V0KCdhY3Rpb25zL2Rvd25sb2FkLWFydGlmYWN0JywgdmVyc2lvbnMuZG93bmxvYWRBcnRpZmFjdCk7XG4gIGdpdGh1Yi5hY3Rpb25zLnNldCgnYW1hbm5uL2FjdGlvbi1zZW1hbnRpYy1wdWxsLXJlcXVlc3QnLCB2ZXJzaW9ucy5zZW1hbnRpY1B1bGxSZXF1ZXN0KTtcblxuICAvLyB6aXptb3I6IGFydGlwYWNrZWQgKGxvdykg4oCUIGFjdGlvbnMvY2hlY2tvdXQgcGVyc2lzdHMgZ2l0IGNyZWRlbnRpYWxzIHRvIGRpc2sgYnlcbiAgLy8gZGVmYXVsdC4gTmVpdGhlciBvZiB1cGdyYWRlLnltbCdzIGNoZWNrb3V0IHN0ZXBzIG5lZWQgdG8gcHVzaCBmcm9tIHRoYXQgY2hlY2tvdXRcbiAgLy8gKHRoZSBcInByXCIgam9iJ3MgcHVzaCBoYXBwZW5zIHZpYSBwZXRlci1ldmFucy9jcmVhdGUtcHVsbC1yZXF1ZXN0IHdpdGggaXRzIG93biB0b2tlbikuXG4gIGNvbnN0IHVwZ3JhZGUgPSBnaXRodWIudHJ5RmluZFdvcmtmbG93KCd1cGdyYWRlJyk7XG4gIHVwZ3JhZGU/LmZpbGU/LnBhdGNoKFxuICAgIEpzb25QYXRjaC5hZGQoJy9qb2JzL3VwZ3JhZGUvc3RlcHMvMC93aXRoJywgeyAncGVyc2lzdC1jcmVkZW50aWFscyc6IGZhbHNlIH0pLFxuICAgIEpzb25QYXRjaC5hZGQoJy9qb2JzL3ByL3N0ZXBzLzAvd2l0aCcsIHsgJ3BlcnNpc3QtY3JlZGVudGlhbHMnOiBmYWxzZSB9KSxcbiAgKTtcblxuICAvLyB6aXptb3I6IGRhbmdlcm91cy10cmlnZ2VycyAoaGlnaCkg4oCUIHB1bGwtcmVxdWVzdC1saW50LnltbCBvbmx5IHZhbGlkYXRlcyB0aGUgUFIgdGl0bGU7XG4gIC8vIGl0IGRvZXNuJ3QgbmVlZCBwdWxsX3JlcXVlc3RfdGFyZ2V0J3MgYWNjZXNzIHRvIHNlY3JldHMvd3JpdGUgcGVybWlzc2lvbnMgYWdhaW5zdFxuICAvLyB1bnRydXN0ZWQgZm9yayBjb250ZW50LiBgcHVsbF9yZXF1ZXN0YCBjb3ZlcnMgdGhlIHNhbWUgdGl0bGUtY2hhbmdlZCBldmVudHMgd2l0aG91dFxuICAvLyB0aGUgcmlzay4gKElmIGEgY29uc3VtZXIgZXZlciBuZWVkcyB0aGlzIGNoZWNrIHRvIGNvbW1lbnQgb24gZm9ya2VkIFBScywgdGhhdCBjb25zdW1lclxuICAvLyBzaG91bGQgb3ZlcnJpZGUgYHB1bGxSZXF1ZXN0TGludE9wdGlvbnNgIGFjY29yZGluZ2x5IGluc3RlYWQgb2YgcmV2ZXJ0aW5nIHRoaXMgZ2xvYmFsbHkuKVxuICBjb25zdCBwdWxsUmVxdWVzdExpbnQgPSBnaXRodWIudHJ5RmluZFdvcmtmbG93KCdwdWxsLXJlcXVlc3QtbGludCcpO1xuICBwdWxsUmVxdWVzdExpbnQ/LmZpbGU/LnBhdGNoKFxuICAgIEpzb25QYXRjaC5yZXBsYWNlKCcvb24nLCB7XG4gICAgICBwdWxsX3JlcXVlc3Q6IHtcbiAgICAgICAgdHlwZXM6IFsnbGFiZWxlZCcsICdvcGVuZWQnLCAnc3luY2hyb25pemUnLCAncmVvcGVuZWQnLCAncmVhZHlfZm9yX3JldmlldycsICdlZGl0ZWQnXSxcbiAgICAgIH0sXG4gICAgICBtZXJnZV9ncm91cDoge30sXG4gICAgfSksXG4gICk7XG59XG4iXX0=
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
7
7
  const utils_1 = require("./utils");
8
8
  const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
9
9
  class StagingDeployWorkflow extends projen_1.YamlFile {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.17.1" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.17.3" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -2,8 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StaticWebsiteConstructFile = void 0;
4
4
  const projen_1 = require("projen");
5
+ const javascript_1 = require("projen/lib/javascript");
6
+ /**
7
+ * Renders the install/build commands used inside the bucket-deployment bundling container.
8
+ * The container only has node, npm, and corepack baked in (no pre-installed yarn/pnpm binaries),
9
+ * so yarn and pnpm must be invoked through corepack.
10
+ */
11
+ function bundlingCommands(packageManager) {
12
+ switch (packageManager) {
13
+ case javascript_1.NodePackageManager.NPM:
14
+ return { install: 'npm ci', build: 'npm run build' };
15
+ case javascript_1.NodePackageManager.PNPM:
16
+ return { install: 'corepack pnpm install --frozen-lockfile', build: 'corepack pnpm build' };
17
+ default:
18
+ return { install: 'corepack yarn install --frozen-lockfile --cache-folder /tmp/.yarn', build: 'corepack yarn build' };
19
+ }
20
+ }
5
21
  class StaticWebsiteConstructFile extends projen_1.SampleFile {
6
22
  constructor(project) {
23
+ const { install, build } = bundlingCommands(project.package.packageManager);
7
24
  super(project, 'src/constructs/StaticWebsite.ts', {
8
25
  contents: `import * as path from 'path';
9
26
  import { createHash } from 'crypto';
@@ -189,19 +206,20 @@ export class StaticWebsite extends Construct {
189
206
 
190
207
  protected createBucketDeployment() {
191
208
  this.bucketDeployment = new BucketDeployment(this, 'BucketDeployment', {
192
- sources: [Source.asset(path.join(__dirname, '../..'), {
209
+ sources: [Source.asset(path.join(__dirname, '../../web'), {
193
210
  bundling: {
194
- image: DockerImage.fromRegistry('node:20-alpine'),
211
+ image: DockerImage.fromRegistry('node:24-alpine'),
195
212
  environment: {
196
213
  npm_config_cache: '/tmp/.npm',
214
+ HOME: '/tmp',
215
+ CI: 'true',
197
216
  },
198
217
  command: [
199
218
  'sh',
200
219
  '-c',
201
220
  [
202
- 'cd /asset-input/web',
203
- 'yarn install --frozen-lockfile --cache-folder /tmp/.yarn',
204
- 'yarn build',
221
+ '${install}',
222
+ '${build}',
205
223
  \`sed -i 's|"apiBaseUrl": "[^"]*"|"apiBaseUrl": "https://\${this.hostname}/api"|g' dist/config.json\`,
206
224
  'cp -r dist/* /asset-output/',
207
225
  ].join(' && '),
@@ -220,4 +238,4 @@ export class StaticWebsite extends Construct {
220
238
  }
221
239
  }
222
240
  exports.StaticWebsiteConstructFile = StaticWebsiteConstructFile;
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBR3BDLE1BQWEsMEJBQTJCLFNBQVEsbUJBQVU7SUFDeEQsWUFBWSxPQUE0QjtRQUN0QyxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBa05mO1NBQ0ksQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBeE5ELGdFQXdOQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNhbXBsZUZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcblxuZXhwb3J0IGNsYXNzIFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlIGV4dGVuZHMgU2FtcGxlRmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvU3RhdGljV2Vic2l0ZS50cycsIHtcbiAgICAgIGNvbnRlbnRzOiBgaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IGNyZWF0ZUhhc2ggfSBmcm9tICdjcnlwdG8nO1xuaW1wb3J0IHsgRG9ja2VySW1hZ2UsIER1cmF0aW9uLCBSZW1vdmFsUG9saWN5IH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgUmVzdEFwaSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5JztcbmltcG9ydCB7IENlcnRpZmljYXRlLCBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24gfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyJztcbmltcG9ydCB7XG4gIEFsbG93ZWRNZXRob2RzLFxuICBDYWNoZUhlYWRlckJlaGF2aW9yLFxuICBDYWNoZVBvbGljeSxcbiAgRGlzdHJpYnV0aW9uLFxuICBWaWV3ZXJQcm90b2NvbFBvbGljeSxcbn0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQnO1xuaW1wb3J0IHsgUmVzdEFwaU9yaWdpbiwgUzNCdWNrZXRPcmlnaW4gfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udC1vcmlnaW5zJztcbmltcG9ydCB7IFBvbGljeVN0YXRlbWVudCwgU2VydmljZVByaW5jaXBhbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQVJlY29yZCwgSUhvc3RlZFpvbmUsIFJlY29yZFRhcmdldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzJztcbmltcG9ydCB7IENsb3VkRnJvbnRUYXJnZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1My10YXJnZXRzJztcbmltcG9ydCB7IEJsb2NrUHVibGljQWNjZXNzLCBCdWNrZXQsIEJ1Y2tldEFjY2Vzc0NvbnRyb2wgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQnVja2V0RGVwbG95bWVudCwgU291cmNlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzLWRlcGxveW1lbnQnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogU2FuaXRpemVzIGFuIGFyYml0cmFyeSBzdHJpbmcgKGUuZy4gYSBnaXQgYnJhbmNoIG5hbWUpIGludG8gYSB2YWx1ZSB0aGF0IGlzIHNhZmUgdG8gdXNlXG4gKiBhcyBhIEROUyBsYWJlbCBhbmQgc2hvcnQgZW5vdWdoIHRoYXQgXFxgXFwke2hvc3RuYW1lfS5cXCR7em9uZU5hbWV9XFxgIHN0YXlzIHdpdGhpbiB0aGUgNjRcbiAqIGNoYXJhY3RlciBkb21haW4gbmFtZSBsaW1pdCBlbmZvcmNlZCBieSBBQ00gY2VydGlmaWNhdGVzLlxuICovXG5mdW5jdGlvbiBzYW5pdGl6ZUhvc3RuYW1lKHJhd0hvc3RuYW1lOiBzdHJpbmcsIHpvbmVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBub3JtYWxpemVkID0gcmF3SG9zdG5hbWVcbiAgICAudG9Mb3dlckNhc2UoKVxuICAgIC5yZXBsYWNlKC9bXmEtejAtOS1dKy9nLCAnLScpXG4gICAgLnJlcGxhY2UoLy17Mix9L2csICctJylcbiAgICAucmVwbGFjZSgvXi0rfC0rJC9nLCAnJykgfHwgJ2hvc3QnO1xuXG4gIGNvbnN0IG1heExlbmd0aCA9IDYzIC0gem9uZU5hbWUubGVuZ3RoO1xuICBpZiAobm9ybWFsaXplZC5sZW5ndGggPD0gbWF4TGVuZ3RoKSB7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gIH1cblxuICBjb25zdCBoYXNoID0gY3JlYXRlSGFzaCgnc2hhMjU2JykudXBkYXRlKHJhd0hvc3RuYW1lKS5kaWdlc3QoJ2hleCcpLnNsaWNlKDAsIDgpO1xuICBjb25zdCBwcmVmaXhMZW5ndGggPSBNYXRoLm1heChtYXhMZW5ndGggLSBoYXNoLmxlbmd0aCAtIDEsIDApO1xuICBjb25zdCBwcmVmaXggPSBub3JtYWxpemVkLnNsaWNlKDAsIHByZWZpeExlbmd0aCkucmVwbGFjZSgvLSskLywgJycpO1xuICByZXR1cm4gcHJlZml4ID8gXFxgXFwke3ByZWZpeH0tXFwke2hhc2h9XFxgIDogaGFzaDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGF0aWNXZWJzaXRlUHJvcHMge1xuICByZWFkb25seSBidWNrZXROYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBob3N0ZWRab25lOiBJSG9zdGVkWm9uZTtcbiAgcmVhZG9ubHkgYXBpOiBSZXN0QXBpO1xuICByZWFkb25seSBob3N0bmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFN0YXRpY1dlYnNpdGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgYnVja2V0OiBCdWNrZXQ7XG4gIHB1YmxpYyBkaXN0cmlidXRpb246IERpc3RyaWJ1dGlvbjtcbiAgcHVibGljIGNlcnRpZmljYXRlOiBDZXJ0aWZpY2F0ZTtcblxuICBwcml2YXRlIGFwaUNhY2hlUG9saWN5OiBDYWNoZVBvbGljeTtcbiAgcHJpdmF0ZSBhUmVjb3JkOiBBUmVjb3JkO1xuICBwcml2YXRlIGJ1Y2tldERlcGxveW1lbnQ6IEJ1Y2tldERlcGxveW1lbnQ7XG4gIHByaXZhdGUgaG9zdG5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcml2YXRlIHByb3BzOiBTdGF0aWNXZWJzaXRlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgZG9tYWluTmFtZSA9IHByb3BzLmhvc3RlZFpvbmUuem9uZU5hbWU7XG4gICAgY29uc3QgaG9zdG5hbWUgPSBzYW5pdGl6ZUhvc3RuYW1lKHByb3BzLmhvc3RuYW1lIHx8ICdtdnAnLCBkb21haW5OYW1lKTtcbiAgICB0aGlzLmhvc3RuYW1lID0gXFxgXFwke2hvc3RuYW1lfS5cXCR7ZG9tYWluTmFtZX1cXGA7XG5cbiAgICB0aGlzLmNyZWF0ZUNlcnRpZmljYXRlKCk7XG4gICAgaWYgKCF0aGlzLmNlcnRpZmljYXRlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgY2VydGlmaWNhdGUnKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUJ1Y2tldCgpO1xuICAgIGlmICghdGhpcy5idWNrZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBidWNrZXQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUFwaUNhY2hlUG9saWN5KCk7XG4gICAgaWYgKCF0aGlzLmFwaUNhY2hlUG9saWN5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgQVBJIGNhY2hlIHBvbGljeScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlRGlzdHJpYnV0aW9uKCk7XG4gICAgaWYgKCF0aGlzLmRpc3RyaWJ1dGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGRpc3RyaWJ1dGlvbicpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlRG5zUmVjb3JkKCk7XG4gICAgaWYgKCF0aGlzLmFSZWNvcmQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBETlMgQSByZWNvcmQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmFkZEJ1Y2tldFBvbGljeSgpO1xuICAgIHRoaXMuY3JlYXRlQnVja2V0RGVwbG95bWVudCgpO1xuICAgIGlmICghdGhpcy5idWNrZXREZXBsb3ltZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgYnVja2V0IGRlcGxveW1lbnQnKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ2VydGlmaWNhdGUoKSB7XG4gICAgdGhpcy5jZXJ0aWZpY2F0ZSA9IG5ldyBDZXJ0aWZpY2F0ZSh0aGlzLCAnQ2VydGlmaWNhdGUnLCB7XG4gICAgICBkb21haW5OYW1lOiB0aGlzLmhvc3RuYW1lLFxuICAgICAgdmFsaWRhdGlvbjogQ2VydGlmaWNhdGVWYWxpZGF0aW9uLmZyb21EbnModGhpcy5wcm9wcy5ob3N0ZWRab25lKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVCdWNrZXQoKSB7XG4gICAgdGhpcy5idWNrZXQgPSBuZXcgQnVja2V0KHRoaXMsICdCdWNrZXQnLCB7XG4gICAgICBibG9ja1B1YmxpY0FjY2VzczogQmxvY2tQdWJsaWNBY2Nlc3MuQkxPQ0tfQUxMLFxuICAgICAgYWNjZXNzQ29udHJvbDogQnVja2V0QWNjZXNzQ29udHJvbC5QUklWQVRFLFxuICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgICAgYXV0b0RlbGV0ZU9iamVjdHM6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQXBpQ2FjaGVQb2xpY3koKSB7XG4gICAgdGhpcy5hcGlDYWNoZVBvbGljeSA9IG5ldyBDYWNoZVBvbGljeSh0aGlzLCAnQXBpQ2FjaGVQb2xpY3knLCB7XG4gICAgICBjb21tZW50OiAnQ2FjaGUgcG9saWN5IGZvciBBUEkgR2F0ZXdheSB3aXRoIGR5bmFtaWMgY29udGVudCcsXG4gICAgICBkZWZhdWx0VHRsOiBEdXJhdGlvbi5zZWNvbmRzKDApLFxuICAgICAgbWF4VHRsOiBEdXJhdGlvbi5zZWNvbmRzKDEpLFxuICAgICAgbWluVHRsOiBEdXJhdGlvbi5zZWNvbmRzKDApLFxuICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdCcm90bGk6IHRydWUsXG4gICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0d6aXA6IHRydWUsXG4gICAgICBoZWFkZXJCZWhhdmlvcjogQ2FjaGVIZWFkZXJCZWhhdmlvci5hbGxvd0xpc3QoJ0F1dGhvcml6YXRpb24nKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVEaXN0cmlidXRpb24oKSB7XG4gICAgdGhpcy5kaXN0cmlidXRpb24gPSBuZXcgRGlzdHJpYnV0aW9uKHRoaXMsICdEaXN0cmlidXRpb24nLCB7XG4gICAgICBkb21haW5OYW1lczogW3RoaXMuaG9zdG5hbWVdLFxuICAgICAgY2VydGlmaWNhdGU6IHRoaXMuY2VydGlmaWNhdGUsXG4gICAgICBkZWZhdWx0QmVoYXZpb3I6IHtcbiAgICAgICAgb3JpZ2luOiBTM0J1Y2tldE9yaWdpbi53aXRoT3JpZ2luQWNjZXNzQ29udHJvbCh0aGlzLmJ1Y2tldCksXG4gICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgIH0sXG4gICAgICBhZGRpdGlvbmFsQmVoYXZpb3JzOiB7XG4gICAgICAgICcvYXBpLyonOiB7XG4gICAgICAgICAgb3JpZ2luOiBuZXcgUmVzdEFwaU9yaWdpbih0aGlzLnByb3BzLmFwaSksXG4gICAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgICAgIGFsbG93ZWRNZXRob2RzOiBBbGxvd2VkTWV0aG9kcy5BTExPV19BTEwsXG4gICAgICAgICAgY2FjaGVQb2xpY3k6IHRoaXMuYXBpQ2FjaGVQb2xpY3ksXG5cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBkZWZhdWx0Um9vdE9iamVjdDogJ2luZGV4Lmh0bWwnLFxuICAgICAgZXJyb3JSZXNwb25zZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGh0dHBTdGF0dXM6IDQwNCxcbiAgICAgICAgICByZXNwb25zZVBhZ2VQYXRoOiAnL2luZGV4Lmh0bWwnLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgaHR0cFN0YXR1czogNDAzLFxuICAgICAgICAgIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZURuc1JlY29yZCgpIHtcbiAgICB0aGlzLmFSZWNvcmQgPSBuZXcgQVJlY29yZCh0aGlzLCAnQVJlY29yZCcsIHtcbiAgICAgIHpvbmU6IHRoaXMucHJvcHMuaG9zdGVkWm9uZSxcbiAgICAgIHJlY29yZE5hbWU6IHRoaXMuaG9zdG5hbWUsXG4gICAgICB0YXJnZXQ6IFJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IENsb3VkRnJvbnRUYXJnZXQodGhpcy5kaXN0cmlidXRpb24pKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhZGRCdWNrZXRQb2xpY3koKSB7XG4gICAgdGhpcy5idWNrZXQuYWRkVG9SZXNvdXJjZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBzaWQ6ICdBbGxvd0Nsb3VkRnJvbnRTZXJ2aWNlUHJpbmNpcGFsJyxcbiAgICAgICAgYWN0aW9uczogWydzMzpHZXRPYmplY3QnXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbXFxgXFwke3RoaXMuYnVja2V0LmJ1Y2tldEFybn0vKlxcYF0sXG4gICAgICAgIHByaW5jaXBhbHM6IFtuZXcgU2VydmljZVByaW5jaXBhbCgnY2xvdWRmcm9udC5hbWF6b25hd3MuY29tJyldLFxuICAgICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgICAgU3RyaW5nRXF1YWxzOiB7XG4gICAgICAgICAgICAnQVdTOlNvdXJjZUFybic6IFxcYGFybjphd3M6Y2xvdWRmcm9udDo6XFwke3RoaXMuYnVja2V0LnN0YWNrLmFjY291bnR9OmRpc3RyaWJ1dGlvbi9cXCR7dGhpcy5kaXN0cmlidXRpb24uZGlzdHJpYnV0aW9uSWR9XFxgLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJ1Y2tldERlcGxveW1lbnQoKSB7XG4gICAgdGhpcy5idWNrZXREZXBsb3ltZW50ID0gbmV3IEJ1Y2tldERlcGxveW1lbnQodGhpcywgJ0J1Y2tldERlcGxveW1lbnQnLCB7XG4gICAgICBzb3VyY2VzOiBbU291cmNlLmFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi8uLicpLCB7XG4gICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnbm9kZToyMC1hbHBpbmUnKSxcbiAgICAgICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAgICAgbnBtX2NvbmZpZ19jYWNoZTogJy90bXAvLm5wbScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBjb21tYW5kOiBbXG4gICAgICAgICAgICAnc2gnLFxuICAgICAgICAgICAgJy1jJyxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgJ2NkIC9hc3NldC1pbnB1dC93ZWInLFxuICAgICAgICAgICAgICAneWFybiBpbnN0YWxsIC0tZnJvemVuLWxvY2tmaWxlIC0tY2FjaGUtZm9sZGVyIC90bXAvLnlhcm4nLFxuICAgICAgICAgICAgICAneWFybiBidWlsZCcsXG4gICAgICAgICAgICAgIFxcYHNlZCAtaSAnc3xcImFwaUJhc2VVcmxcIjogXCJbXlwiXSpcInxcImFwaUJhc2VVcmxcIjogXCJodHRwczovL1xcJHt0aGlzLmhvc3RuYW1lfS9hcGlcInxnJyBkaXN0L2NvbmZpZy5qc29uXFxgLFxuICAgICAgICAgICAgICAnY3AgLXIgZGlzdC8qIC9hc3NldC1vdXRwdXQvJyxcbiAgICAgICAgICAgIF0uam9pbignICYmICcpLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9KV0sXG4gICAgICBkZXN0aW5hdGlvbkJ1Y2tldDogdGhpcy5idWNrZXQsXG4gICAgICBkaXN0cmlidXRpb246IHRoaXMuZGlzdHJpYnV0aW9uLFxuICAgICAgZGlzdHJpYnV0aW9uUGF0aHM6IFsnLyonXSxcbiAgICAgIG1lbW9yeUxpbWl0OiAyNTZcbiAgICB9KTtcbiAgfVxufVxuYCxcbiAgICB9KTtcbiAgfVxufVxuIl19
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBRXBDLHNEQUEyRDtBQUUzRDs7OztHQUlHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxjQUFrQztJQUMxRCxRQUFRLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUM7UUFDdkQsS0FBSywrQkFBa0IsQ0FBQyxJQUFJO1lBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFDOUY7WUFDRSxPQUFPLEVBQUUsT0FBTyxFQUFFLG1FQUFtRSxFQUFFLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQzFILENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBYSwwQkFBMkIsU0FBUSxtQkFBVTtJQUN4RCxZQUFZLE9BQTRCO1FBQ3RDLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQkFvTUMsT0FBTztpQkFDUCxLQUFLOzs7Ozs7Ozs7Ozs7OztDQWNyQjtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTFORCxnRUEwTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGluc3RhbGwvYnVpbGQgY29tbWFuZHMgdXNlZCBpbnNpZGUgdGhlIGJ1Y2tldC1kZXBsb3ltZW50IGJ1bmRsaW5nIGNvbnRhaW5lci5cbiAqIFRoZSBjb250YWluZXIgb25seSBoYXMgbm9kZSwgbnBtLCBhbmQgY29yZXBhY2sgYmFrZWQgaW4gKG5vIHByZS1pbnN0YWxsZWQgeWFybi9wbnBtIGJpbmFyaWVzKSxcbiAqIHNvIHlhcm4gYW5kIHBucG0gbXVzdCBiZSBpbnZva2VkIHRocm91Z2ggY29yZXBhY2suXG4gKi9cbmZ1bmN0aW9uIGJ1bmRsaW5nQ29tbWFuZHMocGFja2FnZU1hbmFnZXI6IE5vZGVQYWNrYWdlTWFuYWdlcik6IHsgaW5zdGFsbDogc3RyaW5nOyBidWlsZDogc3RyaW5nIH0ge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ25wbSBjaScsIGJ1aWxkOiAnbnBtIHJ1biBidWlsZCcgfTtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHBucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZScsIGJ1aWxkOiAnY29yZXBhY2sgcG5wbSBidWlsZCcgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAtLWNhY2hlLWZvbGRlciAvdG1wLy55YXJuJywgYnVpbGQ6ICdjb3JlcGFjayB5YXJuIGJ1aWxkJyB9O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwKSB7XG4gICAgY29uc3QgeyBpbnN0YWxsLCBidWlsZCB9ID0gYnVuZGxpbmdDb21tYW5kcyhwcm9qZWN0LnBhY2thZ2UucGFja2FnZU1hbmFnZXIpO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9TdGF0aWNXZWJzaXRlLnRzJywge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBEb2NrZXJJbWFnZSwgRHVyYXRpb24sIFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBSZXN0QXBpIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0IHsgQ2VydGlmaWNhdGUsIENlcnRpZmljYXRlVmFsaWRhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0IHtcbiAgQWxsb3dlZE1ldGhvZHMsXG4gIENhY2hlSGVhZGVyQmVoYXZpb3IsXG4gIENhY2hlUG9saWN5LFxuICBEaXN0cmlidXRpb24sXG4gIFZpZXdlclByb3RvY29sUG9saWN5LFxufSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgeyBSZXN0QXBpT3JpZ2luLCBTM0J1Y2tldE9yaWdpbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBBUmVjb3JkLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgQ2xvdWRGcm9udFRhcmdldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0IHsgQmxvY2tQdWJsaWNBY2Nlc3MsIEJ1Y2tldCwgQnVja2V0QWNjZXNzQ29udHJvbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBCdWNrZXREZXBsb3ltZW50LCBTb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudCc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBTYW5pdGl6ZXMgYW4gYXJiaXRyYXJ5IHN0cmluZyAoZS5nLiBhIGdpdCBicmFuY2ggbmFtZSkgaW50byBhIHZhbHVlIHRoYXQgaXMgc2FmZSB0byB1c2VcbiAqIGFzIGEgRE5TIGxhYmVsIGFuZCBzaG9ydCBlbm91Z2ggdGhhdCBcXGBcXCR7aG9zdG5hbWV9LlxcJHt6b25lTmFtZX1cXGAgc3RheXMgd2l0aGluIHRoZSA2NFxuICogY2hhcmFjdGVyIGRvbWFpbiBuYW1lIGxpbWl0IGVuZm9yY2VkIGJ5IEFDTSBjZXJ0aWZpY2F0ZXMuXG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplSG9zdG5hbWUocmF3SG9zdG5hbWU6IHN0cmluZywgem9uZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSByYXdIb3N0bmFtZVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1teYS16MC05LV0rL2csICctJylcbiAgICAucmVwbGFjZSgvLXsyLH0vZywgJy0nKVxuICAgIC5yZXBsYWNlKC9eLSt8LSskL2csICcnKSB8fCAnaG9zdCc7XG5cbiAgY29uc3QgbWF4TGVuZ3RoID0gNjMgLSB6b25lTmFtZS5sZW5ndGg7XG4gIGlmIChub3JtYWxpemVkLmxlbmd0aCA8PSBtYXhMZW5ndGgpIHtcbiAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgfVxuXG4gIGNvbnN0IGhhc2ggPSBjcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUocmF3SG9zdG5hbWUpLmRpZ2VzdCgnaGV4Jykuc2xpY2UoMCwgOCk7XG4gIGNvbnN0IHByZWZpeExlbmd0aCA9IE1hdGgubWF4KG1heExlbmd0aCAtIGhhc2gubGVuZ3RoIC0gMSwgMCk7XG4gIGNvbnN0IHByZWZpeCA9IG5vcm1hbGl6ZWQuc2xpY2UoMCwgcHJlZml4TGVuZ3RoKS5yZXBsYWNlKC8tKyQvLCAnJyk7XG4gIHJldHVybiBwcmVmaXggPyBcXGBcXCR7cHJlZml4fS1cXCR7aGFzaH1cXGAgOiBoYXNoO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpY1dlYnNpdGVQcm9wcyB7XG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGhvc3RlZFpvbmU6IElIb3N0ZWRab25lO1xuICByZWFkb25seSBhcGk6IFJlc3RBcGk7XG4gIHJlYWRvbmx5IGhvc3RuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBidWNrZXQ6IEJ1Y2tldDtcbiAgcHVibGljIGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IENlcnRpZmljYXRlO1xuXG4gIHByaXZhdGUgYXBpQ2FjaGVQb2xpY3k6IENhY2hlUG9saWN5O1xuICBwcml2YXRlIGFSZWNvcmQ6IEFSZWNvcmQ7XG4gIHByaXZhdGUgYnVja2V0RGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcHJpdmF0ZSBob3N0bmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByaXZhdGUgcHJvcHM6IFN0YXRpY1dlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBkb21haW5OYW1lID0gcHJvcHMuaG9zdGVkWm9uZS56b25lTmFtZTtcbiAgICBjb25zdCBob3N0bmFtZSA9IHNhbml0aXplSG9zdG5hbWUocHJvcHMuaG9zdG5hbWUgfHwgJ212cCcsIGRvbWFpbk5hbWUpO1xuICAgIHRoaXMuaG9zdG5hbWUgPSBcXGBcXCR7aG9zdG5hbWV9LlxcJHtkb21haW5OYW1lfVxcYDtcblxuICAgIHRoaXMuY3JlYXRlQ2VydGlmaWNhdGUoKTtcbiAgICBpZiAoIXRoaXMuY2VydGlmaWNhdGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBjZXJ0aWZpY2F0ZScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQnVja2V0KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXBpQ2FjaGVQb2xpY3koKTtcbiAgICBpZiAoIXRoaXMuYXBpQ2FjaGVQb2xpY3kpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBBUEkgY2FjaGUgcG9saWN5Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEaXN0cmlidXRpb24oKTtcbiAgICBpZiAoIXRoaXMuZGlzdHJpYnV0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgZGlzdHJpYnV0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEbnNSZWNvcmQoKTtcbiAgICBpZiAoIXRoaXMuYVJlY29yZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEROUyBBIHJlY29yZCcpO1xuICAgIH1cblxuICAgIHRoaXMuYWRkQnVja2V0UG9saWN5KCk7XG4gICAgdGhpcy5jcmVhdGVCdWNrZXREZXBsb3ltZW50KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldERlcGxveW1lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBidWNrZXQgZGVwbG95bWVudCcpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDZXJ0aWZpY2F0ZSgpIHtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gbmV3IENlcnRpZmljYXRlKHRoaXMsICdDZXJ0aWZpY2F0ZScsIHtcbiAgICAgIGRvbWFpbk5hbWU6IHRoaXMuaG9zdG5hbWUsXG4gICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURucyh0aGlzLnByb3BzLmhvc3RlZFpvbmUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJ1Y2tldCgpIHtcbiAgICB0aGlzLmJ1Y2tldCA9IG5ldyBCdWNrZXQodGhpcywgJ0J1Y2tldCcsIHtcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBCbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgICBhY2Nlc3NDb250cm9sOiBCdWNrZXRBY2Nlc3NDb250cm9sLlBSSVZBVEUsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICBhdXRvRGVsZXRlT2JqZWN0czogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVBcGlDYWNoZVBvbGljeSgpIHtcbiAgICB0aGlzLmFwaUNhY2hlUG9saWN5ID0gbmV3IENhY2hlUG9saWN5KHRoaXMsICdBcGlDYWNoZVBvbGljeScsIHtcbiAgICAgIGNvbW1lbnQ6ICdDYWNoZSBwb2xpY3kgZm9yIEFQSSBHYXRld2F5IHdpdGggZHluYW1pYyBjb250ZW50JyxcbiAgICAgIGRlZmF1bHRUdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBtYXhUdGw6IER1cmF0aW9uLnNlY29uZHMoMSksXG4gICAgICBtaW5UdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nR3ppcDogdHJ1ZSxcbiAgICAgIGhlYWRlckJlaGF2aW9yOiBDYWNoZUhlYWRlckJlaGF2aW9yLmFsbG93TGlzdCgnQXV0aG9yaXphdGlvbicpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZURpc3RyaWJ1dGlvbigpIHtcbiAgICB0aGlzLmRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRvbWFpbk5hbWVzOiBbdGhpcy5ob3N0bmFtZV0sXG4gICAgICBjZXJ0aWZpY2F0ZTogdGhpcy5jZXJ0aWZpY2F0ZSxcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IFMzQnVja2V0T3JpZ2luLndpdGhPcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMuYnVja2V0KSxcbiAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgfSxcbiAgICAgIGFkZGl0aW9uYWxCZWhhdmlvcnM6IHtcbiAgICAgICAgJy9hcGkvKic6IHtcbiAgICAgICAgICBvcmlnaW46IG5ldyBSZXN0QXBpT3JpZ2luKHRoaXMucHJvcHMuYXBpKSxcbiAgICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0FMTCxcbiAgICAgICAgICBjYWNoZVBvbGljeTogdGhpcy5hcGlDYWNoZVBvbGljeSxcblxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlZmF1bHRSb290T2JqZWN0OiAnaW5kZXguaHRtbCcsXG4gICAgICBlcnJvclJlc3BvbnNlczogW1xuICAgICAgICB7XG4gICAgICAgICAgaHR0cFN0YXR1czogNDA0LFxuICAgICAgICAgIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDMsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRG5zUmVjb3JkKCkge1xuICAgIHRoaXMuYVJlY29yZCA9IG5ldyBBUmVjb3JkKHRoaXMsICdBUmVjb3JkJywge1xuICAgICAgem9uZTogdGhpcy5wcm9wcy5ob3N0ZWRab25lLFxuICAgICAgcmVjb3JkTmFtZTogdGhpcy5ob3N0bmFtZSxcbiAgICAgIHRhcmdldDogUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgQ2xvdWRGcm9udFRhcmdldCh0aGlzLmRpc3RyaWJ1dGlvbikpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFkZEJ1Y2tldFBvbGljeSgpIHtcbiAgICB0aGlzLmJ1Y2tldC5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIHNpZDogJ0FsbG93Q2xvdWRGcm9udFNlcnZpY2VQcmluY2lwYWwnLFxuICAgICAgICBhY3Rpb25zOiBbJ3MzOkdldE9iamVjdCddLFxuICAgICAgICByZXNvdXJjZXM6IFtcXGBcXCR7dGhpcy5idWNrZXQuYnVja2V0QXJufS8qXFxgXSxcbiAgICAgICAgcHJpbmNpcGFsczogW25ldyBTZXJ2aWNlUHJpbmNpcGFsKCdjbG91ZGZyb250LmFtYXpvbmF3cy5jb20nKV0sXG4gICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICdBV1M6U291cmNlQXJuJzogXFxgYXJuOmF3czpjbG91ZGZyb250OjpcXCR7dGhpcy5idWNrZXQuc3RhY2suYWNjb3VudH06ZGlzdHJpYnV0aW9uL1xcJHt0aGlzLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25JZH1cXGAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQnVja2V0RGVwbG95bWVudCgpIHtcbiAgICB0aGlzLmJ1Y2tldERlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQnVja2V0RGVwbG95bWVudCcsIHtcbiAgICAgIHNvdXJjZXM6IFtTb3VyY2UuYXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uL3dlYicpLCB7XG4gICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnbm9kZToyNC1hbHBpbmUnKSxcbiAgICAgICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAgICAgbnBtX2NvbmZpZ19jYWNoZTogJy90bXAvLm5wbScsXG4gICAgICAgICAgICBIT01FOiAnL3RtcCcsXG4gICAgICAgICAgICBDSTogJ3RydWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tbWFuZDogW1xuICAgICAgICAgICAgJ3NoJyxcbiAgICAgICAgICAgICctYycsXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICcke2luc3RhbGx9JyxcbiAgICAgICAgICAgICAgJyR7YnVpbGR9JyxcbiAgICAgICAgICAgICAgXFxgc2VkIC1pICdzfFwiYXBpQmFzZVVybFwiOiBcIlteXCJdKlwifFwiYXBpQmFzZVVybFwiOiBcImh0dHBzOi8vXFwke3RoaXMuaG9zdG5hbWV9L2FwaVwifGcnIGRpc3QvY29uZmlnLmpzb25cXGAsXG4gICAgICAgICAgICAgICdjcCAtciBkaXN0LyogL2Fzc2V0LW91dHB1dC8nLFxuICAgICAgICAgICAgXS5qb2luKCcgJiYgJyksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0pXSxcbiAgICAgIGRlc3RpbmF0aW9uQnVja2V0OiB0aGlzLmJ1Y2tldCxcbiAgICAgIGRpc3RyaWJ1dGlvbjogdGhpcy5kaXN0cmlidXRpb24sXG4gICAgICBkaXN0cmlidXRpb25QYXRoczogWycvKiddLFxuICAgICAgbWVtb3J5TGltaXQ6IDI1NlxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,5 +1,7 @@
1
1
  /**
2
- * SHA-pinned action references used by the generated deploy/cleanup workflows.
2
+ * SHA-pinned action references used by the generated deploy/cleanup workflows, and applied
3
+ * to the workflows AwsCdkTypeScriptApp generates on its own (upgrade.yml, pull-request-lint.yml)
4
+ * via `hardenProjenGeneratedWorkflows` — see `ProjenWorkflowHardening.ts`.
3
5
  *
4
6
  * zizmor flags unpinned `uses:` references as a high-severity finding
5
7
  * (https://docs.zizmor.sh/audits/#unpinned-uses) because a mutable tag can be
@@ -38,6 +40,34 @@ export interface WorkflowActionVersions {
38
40
  * @default 'actions/github-script@d746ffe35508b1917358783b479e04febd2b8f71' // v9.0.0
39
41
  */
40
42
  readonly githubScript?: string;
43
+ /**
44
+ * The `peter-evans/create-pull-request` action reference, used by projen's built-in
45
+ * dependency-upgrade workflow to open the upgrade PR.
46
+ *
47
+ * @default 'peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1' // v8.1.1
48
+ */
49
+ readonly createPullRequest?: string;
50
+ /**
51
+ * The `actions/upload-artifact` action reference, used by projen's built-in
52
+ * dependency-upgrade workflow to pass the upgrade patch between jobs.
53
+ *
54
+ * @default 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a' // v7
55
+ */
56
+ readonly uploadArtifact?: string;
57
+ /**
58
+ * The `actions/download-artifact` action reference, used by projen's built-in
59
+ * dependency-upgrade workflow to pass the upgrade patch between jobs.
60
+ *
61
+ * @default 'actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c' // v8
62
+ */
63
+ readonly downloadArtifact?: string;
64
+ /**
65
+ * The `amannn/action-semantic-pull-request` action reference, used by projen's
66
+ * built-in pull-request-lint workflow to validate PR titles.
67
+ *
68
+ * @default 'amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50' // v6.1.1
69
+ */
70
+ readonly semanticPullRequest?: string;
41
71
  }
42
72
  export declare const DEFAULT_WORKFLOW_ACTION_VERSIONS: Required<WorkflowActionVersions>;
43
73
  export declare function resolveActionVersions(overrides?: WorkflowActionVersions): Required<WorkflowActionVersions>;
@@ -8,6 +8,10 @@ exports.DEFAULT_WORKFLOW_ACTION_VERSIONS = {
8
8
  configureAwsCredentials: 'aws-actions/configure-aws-credentials@7474bc4690e29a8392af63c5b98e7449536d5c3a', // v4.3.1
9
9
  pnpmActionSetup: 'pnpm/action-setup@0977fd99725f1db4007ccb2928dbb4e90d06cc86', // v6.0.10
10
10
  githubScript: 'actions/github-script@d746ffe35508b1917358783b479e04febd2b8f71', // v9.0.0
11
+ createPullRequest: 'peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1', // v8.1.1
12
+ uploadArtifact: 'actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a', // v7
13
+ downloadArtifact: 'actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c', // v8
14
+ semanticPullRequest: 'amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50', // v6.1.1
11
15
  };
12
16
  function resolveActionVersions(overrides) {
13
17
  return {
@@ -15,4 +19,4 @@ function resolveActionVersions(overrides) {
15
19
  ...overrides,
16
20
  };
17
21
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29ya2Zsb3dBY3Rpb25WZXJzaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Xb3JrZmxvd0FjdGlvblZlcnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXNEQSxzREFLQztBQWJZLFFBQUEsZ0NBQWdDLEdBQXFDO0lBQ2hGLFFBQVEsRUFBRSwyREFBMkQsRUFBRSxTQUFTO0lBQ2hGLFNBQVMsRUFBRSw2REFBNkQsRUFBRSxTQUFTO0lBQ25GLHVCQUF1QixFQUFFLGdGQUFnRixFQUFFLFNBQVM7SUFDcEgsZUFBZSxFQUFFLDREQUE0RCxFQUFFLFVBQVU7SUFDekYsWUFBWSxFQUFFLGdFQUFnRSxFQUFFLFNBQVM7Q0FDMUYsQ0FBQztBQUVGLFNBQWdCLHFCQUFxQixDQUFDLFNBQWtDO0lBQ3RFLE9BQU87UUFDTCxHQUFHLHdDQUFnQztRQUNuQyxHQUFHLFNBQVM7S0FDYixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU0hBLXBpbm5lZCBhY3Rpb24gcmVmZXJlbmNlcyB1c2VkIGJ5IHRoZSBnZW5lcmF0ZWQgZGVwbG95L2NsZWFudXAgd29ya2Zsb3dzLlxuICpcbiAqIHppem1vciBmbGFncyB1bnBpbm5lZCBgdXNlczpgIHJlZmVyZW5jZXMgYXMgYSBoaWdoLXNldmVyaXR5IGZpbmRpbmdcbiAqIChodHRwczovL2RvY3Mueml6bW9yLnNoL2F1ZGl0cy8jdW5waW5uZWQtdXNlcykgYmVjYXVzZSBhIG11dGFibGUgdGFnIGNhbiBiZVxuICogcmVwb2ludGVkIHRvIGRpZmZlcmVudCBjb2RlIGFmdGVyIHJldmlldy4gRXZlcnkgZmllbGQgaGVyZSBjYW4gYmVcbiAqIG92ZXJyaWRkZW4gYnkgY29uc3VtZXJzIHdobyBuZWVkIGEgZGlmZmVyZW50IHBpbm5lZCBTSEEgKGUuZy4gdG8gcGljayB1cCBhXG4gKiBuZXdlciByZWxlYXNlIGJlZm9yZSB0aGlzIHBhY2thZ2UgZG9lcykuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgYGFjdGlvbnMvY2hlY2tvdXRgIGFjdGlvbiByZWZlcmVuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdhY3Rpb25zL2NoZWNrb3V0QGZiYzZmMzk5MmQyNGI3OTZkNWEwNDhmZjI3M2Y3ZmNjNGE3YjZjMDknIC8vIHY1LjEuMFxuICAgKi9cbiAgcmVhZG9ubHkgY2hlY2tvdXQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBgYWN0aW9ucy9zZXR1cC1ub2RlYCBhY3Rpb24gcmVmZXJlbmNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnYWN0aW9ucy9zZXR1cC1ub2RlQGEwODUzYzI0NTQ0NjI3ZjY1ZGRmMjU5YWJlNzNiMWQxOGE1OTE0NDQnIC8vIHY1LjAuMFxuICAgKi9cbiAgcmVhZG9ubHkgc2V0dXBOb2RlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYGF3cy1hY3Rpb25zL2NvbmZpZ3VyZS1hd3MtY3JlZGVudGlhbHNgIGFjdGlvbiByZWZlcmVuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQDc0NzRiYzQ2OTBlMjlhODM5MmFmNjNjNWI5OGU3NDQ5NTM2ZDVjM2EnIC8vIHY0LjMuMVxuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlndXJlQXdzQ3JlZGVudGlhbHM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBgcG5wbS9hY3Rpb24tc2V0dXBgIGFjdGlvbiByZWZlcmVuY2UsIHVzZWQgd2hlbiB0aGUgcHJvamVjdCdzIHBhY2thZ2UgbWFuYWdlciBpcyBwbnBtLlxuICAgKlxuICAgKiBAZGVmYXVsdCAncG5wbS9hY3Rpb24tc2V0dXBAMDk3N2ZkOTk3MjVmMWRiNDAwN2NjYjI5MjhkYmI0ZTkwZDA2Y2M4NicgLy8gdjYuMC4xMFxuICAgKi9cbiAgcmVhZG9ubHkgcG5wbUFjdGlvblNldHVwPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYGFjdGlvbnMvZ2l0aHViLXNjcmlwdGAgYWN0aW9uIHJlZmVyZW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2FjdGlvbnMvZ2l0aHViLXNjcmlwdEBkNzQ2ZmZlMzU1MDhiMTkxNzM1ODc4M2I0NzllMDRmZWJkMmI4ZjcxJyAvLyB2OS4wLjBcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1YlNjcmlwdD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfV09SS0ZMT1dfQUNUSU9OX1ZFUlNJT05TOiBSZXF1aXJlZDxXb3JrZmxvd0FjdGlvblZlcnNpb25zPiA9IHtcbiAgY2hlY2tvdXQ6ICdhY3Rpb25zL2NoZWNrb3V0QGZiYzZmMzk5MmQyNGI3OTZkNWEwNDhmZjI3M2Y3ZmNjNGE3YjZjMDknLCAvLyB2NS4xLjBcbiAgc2V0dXBOb2RlOiAnYWN0aW9ucy9zZXR1cC1ub2RlQGEwODUzYzI0NTQ0NjI3ZjY1ZGRmMjU5YWJlNzNiMWQxOGE1OTE0NDQnLCAvLyB2NS4wLjBcbiAgY29uZmlndXJlQXdzQ3JlZGVudGlhbHM6ICdhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQDc0NzRiYzQ2OTBlMjlhODM5MmFmNjNjNWI5OGU3NDQ5NTM2ZDVjM2EnLCAvLyB2NC4zLjFcbiAgcG5wbUFjdGlvblNldHVwOiAncG5wbS9hY3Rpb24tc2V0dXBAMDk3N2ZkOTk3MjVmMWRiNDAwN2NjYjI5MjhkYmI0ZTkwZDA2Y2M4NicsIC8vIHY2LjAuMTBcbiAgZ2l0aHViU2NyaXB0OiAnYWN0aW9ucy9naXRodWItc2NyaXB0QGQ3NDZmZmUzNTUwOGIxOTE3MzU4NzgzYjQ3OWUwNGZlYmQyYjhmNzEnLCAvLyB2OS4wLjBcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQWN0aW9uVmVyc2lvbnMob3ZlcnJpZGVzPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyk6IFJlcXVpcmVkPFdvcmtmbG93QWN0aW9uVmVyc2lvbnM+IHtcbiAgcmV0dXJuIHtcbiAgICAuLi5ERUZBVUxUX1dPUktGTE9XX0FDVElPTl9WRVJTSU9OUyxcbiAgICAuLi5vdmVycmlkZXMsXG4gIH07XG59XG4iXX0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29ya2Zsb3dBY3Rpb25WZXJzaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Xb3JrZmxvd0FjdGlvblZlcnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTRGQSxzREFLQztBQWpCWSxRQUFBLGdDQUFnQyxHQUFxQztJQUNoRixRQUFRLEVBQUUsMkRBQTJELEVBQUUsU0FBUztJQUNoRixTQUFTLEVBQUUsNkRBQTZELEVBQUUsU0FBUztJQUNuRix1QkFBdUIsRUFBRSxnRkFBZ0YsRUFBRSxTQUFTO0lBQ3BILGVBQWUsRUFBRSw0REFBNEQsRUFBRSxVQUFVO0lBQ3pGLFlBQVksRUFBRSxnRUFBZ0UsRUFBRSxTQUFTO0lBQ3pGLGlCQUFpQixFQUFFLDBFQUEwRSxFQUFFLFNBQVM7SUFDeEcsY0FBYyxFQUFFLGtFQUFrRSxFQUFFLEtBQUs7SUFDekYsZ0JBQWdCLEVBQUUsb0VBQW9FLEVBQUUsS0FBSztJQUM3RixtQkFBbUIsRUFBRSw4RUFBOEUsRUFBRSxTQUFTO0NBQy9HLENBQUM7QUFFRixTQUFnQixxQkFBcUIsQ0FBQyxTQUFrQztJQUN0RSxPQUFPO1FBQ0wsR0FBRyx3Q0FBZ0M7UUFDbkMsR0FBRyxTQUFTO0tBQ2IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNIQS1waW5uZWQgYWN0aW9uIHJlZmVyZW5jZXMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIGRlcGxveS9jbGVhbnVwIHdvcmtmbG93cywgYW5kIGFwcGxpZWRcbiAqIHRvIHRoZSB3b3JrZmxvd3MgQXdzQ2RrVHlwZVNjcmlwdEFwcCBnZW5lcmF0ZXMgb24gaXRzIG93biAodXBncmFkZS55bWwsIHB1bGwtcmVxdWVzdC1saW50LnltbClcbiAqIHZpYSBgaGFyZGVuUHJvamVuR2VuZXJhdGVkV29ya2Zsb3dzYCDigJQgc2VlIGBQcm9qZW5Xb3JrZmxvd0hhcmRlbmluZy50c2AuXG4gKlxuICogeml6bW9yIGZsYWdzIHVucGlubmVkIGB1c2VzOmAgcmVmZXJlbmNlcyBhcyBhIGhpZ2gtc2V2ZXJpdHkgZmluZGluZ1xuICogKGh0dHBzOi8vZG9jcy56aXptb3Iuc2gvYXVkaXRzLyN1bnBpbm5lZC11c2VzKSBiZWNhdXNlIGEgbXV0YWJsZSB0YWcgY2FuIGJlXG4gKiByZXBvaW50ZWQgdG8gZGlmZmVyZW50IGNvZGUgYWZ0ZXIgcmV2aWV3LiBFdmVyeSBmaWVsZCBoZXJlIGNhbiBiZVxuICogb3ZlcnJpZGRlbiBieSBjb25zdW1lcnMgd2hvIG5lZWQgYSBkaWZmZXJlbnQgcGlubmVkIFNIQSAoZS5nLiB0byBwaWNrIHVwIGFcbiAqIG5ld2VyIHJlbGVhc2UgYmVmb3JlIHRoaXMgcGFja2FnZSBkb2VzKS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd0FjdGlvblZlcnNpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBgYWN0aW9ucy9jaGVja291dGAgYWN0aW9uIHJlZmVyZW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2FjdGlvbnMvY2hlY2tvdXRAZmJjNmYzOTkyZDI0Yjc5NmQ1YTA0OGZmMjczZjdmY2M0YTdiNmMwOScgLy8gdjUuMS4wXG4gICAqL1xuICByZWFkb25seSBjaGVja291dD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGBhY3Rpb25zL3NldHVwLW5vZGVgIGFjdGlvbiByZWZlcmVuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdhY3Rpb25zL3NldHVwLW5vZGVAYTA4NTNjMjQ1NDQ2MjdmNjVkZGYyNTlhYmU3M2IxZDE4YTU5MTQ0NCcgLy8gdjUuMC4wXG4gICAqL1xuICByZWFkb25seSBzZXR1cE5vZGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBgYXdzLWFjdGlvbnMvY29uZmlndXJlLWF3cy1jcmVkZW50aWFsc2AgYWN0aW9uIHJlZmVyZW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2F3cy1hY3Rpb25zL2NvbmZpZ3VyZS1hd3MtY3JlZGVudGlhbHNANzQ3NGJjNDY5MGUyOWE4MzkyYWY2M2M1Yjk4ZTc0NDk1MzZkNWMzYScgLy8gdjQuMy4xXG4gICAqL1xuICByZWFkb25seSBjb25maWd1cmVBd3NDcmVkZW50aWFscz86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGBwbnBtL2FjdGlvbi1zZXR1cGAgYWN0aW9uIHJlZmVyZW5jZSwgdXNlZCB3aGVuIHRoZSBwcm9qZWN0J3MgcGFja2FnZSBtYW5hZ2VyIGlzIHBucG0uXG4gICAqXG4gICAqIEBkZWZhdWx0ICdwbnBtL2FjdGlvbi1zZXR1cEAwOTc3ZmQ5OTcyNWYxZGI0MDA3Y2NiMjkyOGRiYjRlOTBkMDZjYzg2JyAvLyB2Ni4wLjEwXG4gICAqL1xuICByZWFkb25seSBwbnBtQWN0aW9uU2V0dXA/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBgYWN0aW9ucy9naXRodWItc2NyaXB0YCBhY3Rpb24gcmVmZXJlbmNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnYWN0aW9ucy9naXRodWItc2NyaXB0QGQ3NDZmZmUzNTUwOGIxOTE3MzU4NzgzYjQ3OWUwNGZlYmQyYjhmNzEnIC8vIHY5LjAuMFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViU2NyaXB0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYHBldGVyLWV2YW5zL2NyZWF0ZS1wdWxsLXJlcXVlc3RgIGFjdGlvbiByZWZlcmVuY2UsIHVzZWQgYnkgcHJvamVuJ3MgYnVpbHQtaW5cbiAgICogZGVwZW5kZW5jeS11cGdyYWRlIHdvcmtmbG93IHRvIG9wZW4gdGhlIHVwZ3JhZGUgUFIuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdwZXRlci1ldmFucy9jcmVhdGUtcHVsbC1yZXF1ZXN0QDVmNjk3OGZhZjA4OWQ0ZDIwYjAwYzc3NjY5ODlkMDc2YmIyZmM3ZjEnIC8vIHY4LjEuMVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlUHVsbFJlcXVlc3Q/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBgYWN0aW9ucy91cGxvYWQtYXJ0aWZhY3RgIGFjdGlvbiByZWZlcmVuY2UsIHVzZWQgYnkgcHJvamVuJ3MgYnVpbHQtaW5cbiAgICogZGVwZW5kZW5jeS11cGdyYWRlIHdvcmtmbG93IHRvIHBhc3MgdGhlIHVwZ3JhZGUgcGF0Y2ggYmV0d2VlbiBqb2JzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnYWN0aW9ucy91cGxvYWQtYXJ0aWZhY3RAMDQzZmI0NmQxYTkzYzc3YWFlNjU2ZTdjMWM2NGE4NzVkMWZjNmEwYScgLy8gdjdcbiAgICovXG4gIHJlYWRvbmx5IHVwbG9hZEFydGlmYWN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYGFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RgIGFjdGlvbiByZWZlcmVuY2UsIHVzZWQgYnkgcHJvamVuJ3MgYnVpbHQtaW5cbiAgICogZGVwZW5kZW5jeS11cGdyYWRlIHdvcmtmbG93IHRvIHBhc3MgdGhlIHVwZ3JhZGUgcGF0Y2ggYmV0d2VlbiBqb2JzLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnYWN0aW9ucy9kb3dubG9hZC1hcnRpZmFjdEAzZTVmNDViMmNmYjkxNzIwNTRiNDA4N2E0MGU4ZTBiNWE1NDYxZTdjJyAvLyB2OFxuICAgKi9cbiAgcmVhZG9ubHkgZG93bmxvYWRBcnRpZmFjdD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGBhbWFubm4vYWN0aW9uLXNlbWFudGljLXB1bGwtcmVxdWVzdGAgYWN0aW9uIHJlZmVyZW5jZSwgdXNlZCBieSBwcm9qZW4nc1xuICAgKiBidWlsdC1pbiBwdWxsLXJlcXVlc3QtbGludCB3b3JrZmxvdyB0byB2YWxpZGF0ZSBQUiB0aXRsZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdhbWFubm4vYWN0aW9uLXNlbWFudGljLXB1bGwtcmVxdWVzdEA0OGYyNTYyODRiZDQ2Y2RhYWIxMDQ4YzM3MjEzNjBlODA4MzM1ZDUwJyAvLyB2Ni4xLjFcbiAgICovXG4gIHJlYWRvbmx5IHNlbWFudGljUHVsbFJlcXVlc3Q/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1dPUktGTE9XX0FDVElPTl9WRVJTSU9OUzogUmVxdWlyZWQ8V29ya2Zsb3dBY3Rpb25WZXJzaW9ucz4gPSB7XG4gIGNoZWNrb3V0OiAnYWN0aW9ucy9jaGVja291dEBmYmM2ZjM5OTJkMjRiNzk2ZDVhMDQ4ZmYyNzNmN2ZjYzRhN2I2YzA5JywgLy8gdjUuMS4wXG4gIHNldHVwTm9kZTogJ2FjdGlvbnMvc2V0dXAtbm9kZUBhMDg1M2MyNDU0NDYyN2Y2NWRkZjI1OWFiZTczYjFkMThhNTkxNDQ0JywgLy8gdjUuMC4wXG4gIGNvbmZpZ3VyZUF3c0NyZWRlbnRpYWxzOiAnYXdzLWFjdGlvbnMvY29uZmlndXJlLWF3cy1jcmVkZW50aWFsc0A3NDc0YmM0NjkwZTI5YTgzOTJhZjYzYzViOThlNzQ0OTUzNmQ1YzNhJywgLy8gdjQuMy4xXG4gIHBucG1BY3Rpb25TZXR1cDogJ3BucG0vYWN0aW9uLXNldHVwQDA5NzdmZDk5NzI1ZjFkYjQwMDdjY2IyOTI4ZGJiNGU5MGQwNmNjODYnLCAvLyB2Ni4wLjEwXG4gIGdpdGh1YlNjcmlwdDogJ2FjdGlvbnMvZ2l0aHViLXNjcmlwdEBkNzQ2ZmZlMzU1MDhiMTkxNzM1ODc4M2I0NzllMDRmZWJkMmI4ZjcxJywgLy8gdjkuMC4wXG4gIGNyZWF0ZVB1bGxSZXF1ZXN0OiAncGV0ZXItZXZhbnMvY3JlYXRlLXB1bGwtcmVxdWVzdEA1ZjY5NzhmYWYwODlkNGQyMGIwMGM3NzY2OTg5ZDA3NmJiMmZjN2YxJywgLy8gdjguMS4xXG4gIHVwbG9hZEFydGlmYWN0OiAnYWN0aW9ucy91cGxvYWQtYXJ0aWZhY3RAMDQzZmI0NmQxYTkzYzc3YWFlNjU2ZTdjMWM2NGE4NzVkMWZjNmEwYScsIC8vIHY3XG4gIGRvd25sb2FkQXJ0aWZhY3Q6ICdhY3Rpb25zL2Rvd25sb2FkLWFydGlmYWN0QDNlNWY0NWIyY2ZiOTE3MjA1NGI0MDg3YTQwZThlMGI1YTU0NjFlN2MnLCAvLyB2OFxuICBzZW1hbnRpY1B1bGxSZXF1ZXN0OiAnYW1hbm5uL2FjdGlvbi1zZW1hbnRpYy1wdWxsLXJlcXVlc3RANDhmMjU2Mjg0YmQ0NmNkYWFiMTA0OGMzNzIxMzYwZTgwODMzNWQ1MCcsIC8vIHY2LjEuMVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVBY3Rpb25WZXJzaW9ucyhvdmVycmlkZXM/OiBXb3JrZmxvd0FjdGlvblZlcnNpb25zKTogUmVxdWlyZWQ8V29ya2Zsb3dBY3Rpb25WZXJzaW9ucz4ge1xuICByZXR1cm4ge1xuICAgIC4uLkRFRkFVTFRfV09SS0ZMT1dfQUNUSU9OX1ZFUlNJT05TLFxuICAgIC4uLm92ZXJyaWRlcyxcbiAgfTtcbn1cbiJdfQ==
@@ -39,7 +39,7 @@ const fs = __importStar(require("fs"));
39
39
  const path = __importStar(require("path"));
40
40
  const projen_1 = require("projen");
41
41
  class WorkflowAutoDiscover extends projen_1.Component {
42
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.17.1" };
42
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.17.3" };
43
43
  constructor(project) {
44
44
  super(project);
45
45
  }
package/package.json CHANGED
@@ -49,7 +49,7 @@
49
49
  "main": "lib/index.js",
50
50
  "license": "Apache-2.0",
51
51
  "stability": "stable",
52
- "version": "1.17.1",
52
+ "version": "1.17.3",
53
53
  "jest": {
54
54
  "coverageProvider": "v8",
55
55
  "testMatch": [