@macedon-technologies/batman 1.17.0 → 1.17.2

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
@@ -1068,6 +1068,6 @@
1068
1068
  "symbolId": "src/WorkflowAutoDiscover:WorkflowAutoDiscover"
1069
1069
  }
1070
1070
  },
1071
- "version": "1.17.0",
1072
- "fingerprint": "OwVVqacOUGXRkZ/aqaxqn/CsA3Evw/Cz/58oz7nSrlA="
1071
+ "version": "1.17.2",
1072
+ "fingerprint": "ZfbdZhVv86lL7QQw6Z2sxLhOGoFmUs9U2ntYWD90Xpw="
1073
1073
  }
@@ -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.0" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.17.2" };
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.0" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.17.2" };
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.0" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.17.2" };
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.0" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.17.2" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -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.0" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.17.2" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -2,10 +2,28 @@
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';
26
+ import { createHash } from 'crypto';
9
27
  import { DockerImage, Duration, RemovalPolicy } from 'aws-cdk-lib';
10
28
  import { RestApi } from 'aws-cdk-lib/aws-apigateway';
11
29
  import { Certificate, CertificateValidation } from 'aws-cdk-lib/aws-certificatemanager';
@@ -24,6 +42,29 @@ import { BlockPublicAccess, Bucket, BucketAccessControl } from 'aws-cdk-lib/aws-
24
42
  import { BucketDeployment, Source } from 'aws-cdk-lib/aws-s3-deployment';
25
43
  import { Construct } from 'constructs';
26
44
 
45
+ /**
46
+ * Sanitizes an arbitrary string (e.g. a git branch name) into a value that is safe to use
47
+ * as a DNS label and short enough that \`\${hostname}.\${zoneName}\` stays within the 64
48
+ * character domain name limit enforced by ACM certificates.
49
+ */
50
+ function sanitizeHostname(rawHostname: string, zoneName: string): string {
51
+ const normalized = rawHostname
52
+ .toLowerCase()
53
+ .replace(/[^a-z0-9-]+/g, '-')
54
+ .replace(/-{2,}/g, '-')
55
+ .replace(/^-+|-+$/g, '') || 'host';
56
+
57
+ const maxLength = 63 - zoneName.length;
58
+ if (normalized.length <= maxLength) {
59
+ return normalized;
60
+ }
61
+
62
+ const hash = createHash('sha256').update(rawHostname).digest('hex').slice(0, 8);
63
+ const prefixLength = Math.max(maxLength - hash.length - 1, 0);
64
+ const prefix = normalized.slice(0, prefixLength).replace(/-+$/, '');
65
+ return prefix ? \`\${prefix}-\${hash}\` : hash;
66
+ }
67
+
27
68
  export interface StaticWebsiteProps {
28
69
  readonly bucketName?: string;
29
70
  readonly hostedZone: IHostedZone;
@@ -45,7 +86,7 @@ export class StaticWebsite extends Construct {
45
86
  super(scope, id);
46
87
 
47
88
  const domainName = props.hostedZone.zoneName;
48
- const hostname = props.hostname || 'mvp';
89
+ const hostname = sanitizeHostname(props.hostname || 'mvp', domainName);
49
90
  this.hostname = \`\${hostname}.\${domainName}\`;
50
91
 
51
92
  this.createCertificate();
@@ -165,19 +206,20 @@ export class StaticWebsite extends Construct {
165
206
 
166
207
  protected createBucketDeployment() {
167
208
  this.bucketDeployment = new BucketDeployment(this, 'BucketDeployment', {
168
- sources: [Source.asset(path.join(__dirname, '../..'), {
209
+ sources: [Source.asset(path.join(__dirname, '../../web'), {
169
210
  bundling: {
170
- image: DockerImage.fromRegistry('node:20-alpine'),
211
+ image: DockerImage.fromRegistry('node:24-alpine'),
171
212
  environment: {
172
213
  npm_config_cache: '/tmp/.npm',
214
+ HOME: '/tmp',
215
+ CI: 'true',
173
216
  },
174
217
  command: [
175
218
  'sh',
176
219
  '-c',
177
220
  [
178
- 'cd /asset-input/web',
179
- 'yarn install --frozen-lockfile --cache-folder /tmp/.yarn',
180
- 'yarn build',
221
+ '${install}',
222
+ '${build}',
181
223
  \`sed -i 's|"apiBaseUrl": "[^"]*"|"apiBaseUrl": "https://\${this.hostname}/api"|g' dist/config.json\`,
182
224
  'cp -r dist/* /asset-output/',
183
225
  ].join(' && '),
@@ -196,4 +238,4 @@ export class StaticWebsite extends Construct {
196
238
  }
197
239
  }
198
240
  exports.StaticWebsiteConstructFile = StaticWebsiteConstructFile;
199
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBR3BDLE1BQWEsMEJBQTJCLFNBQVEsbUJBQVU7SUFDeEQsWUFBWSxPQUE0QjtRQUN0QyxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBMExmO1NBQ0ksQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBaE1ELGdFQWdNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNhbXBsZUZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcblxuZXhwb3J0IGNsYXNzIFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlIGV4dGVuZHMgU2FtcGxlRmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvU3RhdGljV2Vic2l0ZS50cycsIHtcbiAgICAgIGNvbnRlbnRzOiBgaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IERvY2tlckltYWdlLCBEdXJhdGlvbiwgUmVtb3ZhbFBvbGljeSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFJlc3RBcGkgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBDZXJ0aWZpY2F0ZSwgQ2VydGlmaWNhdGVWYWxpZGF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlcic7XG5pbXBvcnQge1xuICBBbGxvd2VkTWV0aG9kcyxcbiAgQ2FjaGVIZWFkZXJCZWhhdmlvcixcbiAgQ2FjaGVQb2xpY3ksXG4gIERpc3RyaWJ1dGlvbixcbiAgVmlld2VyUHJvdG9jb2xQb2xpY3ksXG59IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250JztcbmltcG9ydCB7IFJlc3RBcGlPcmlnaW4sIFMzQnVja2V0T3JpZ2luIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQtb3JpZ2lucyc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQsIFNlcnZpY2VQcmluY2lwYWwgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCB7IEFSZWNvcmQsIElIb3N0ZWRab25lLCBSZWNvcmRUYXJnZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1Myc7XG5pbXBvcnQgeyBDbG91ZEZyb250VGFyZ2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0cyc7XG5pbXBvcnQgeyBCbG9ja1B1YmxpY0FjY2VzcywgQnVja2V0LCBCdWNrZXRBY2Nlc3NDb250cm9sIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCB7IEJ1Y2tldERlcGxveW1lbnQsIFNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMy1kZXBsb3ltZW50JztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpY1dlYnNpdGVQcm9wcyB7XG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGhvc3RlZFpvbmU6IElIb3N0ZWRab25lO1xuICByZWFkb25seSBhcGk6IFJlc3RBcGk7XG4gIHJlYWRvbmx5IGhvc3RuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBidWNrZXQ6IEJ1Y2tldDtcbiAgcHVibGljIGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IENlcnRpZmljYXRlO1xuXG4gIHByaXZhdGUgYXBpQ2FjaGVQb2xpY3k6IENhY2hlUG9saWN5O1xuICBwcml2YXRlIGFSZWNvcmQ6IEFSZWNvcmQ7XG4gIHByaXZhdGUgYnVja2V0RGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcHJpdmF0ZSBob3N0bmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByaXZhdGUgcHJvcHM6IFN0YXRpY1dlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBkb21haW5OYW1lID0gcHJvcHMuaG9zdGVkWm9uZS56b25lTmFtZTtcbiAgICBjb25zdCBob3N0bmFtZSA9IHByb3BzLmhvc3RuYW1lIHx8ICdtdnAnO1xuICAgIHRoaXMuaG9zdG5hbWUgPSBcXGBcXCR7aG9zdG5hbWV9LlxcJHtkb21haW5OYW1lfVxcYDtcblxuICAgIHRoaXMuY3JlYXRlQ2VydGlmaWNhdGUoKTtcbiAgICBpZiAoIXRoaXMuY2VydGlmaWNhdGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBjZXJ0aWZpY2F0ZScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQnVja2V0KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXBpQ2FjaGVQb2xpY3koKTtcbiAgICBpZiAoIXRoaXMuYXBpQ2FjaGVQb2xpY3kpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBBUEkgY2FjaGUgcG9saWN5Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEaXN0cmlidXRpb24oKTtcbiAgICBpZiAoIXRoaXMuZGlzdHJpYnV0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgZGlzdHJpYnV0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEbnNSZWNvcmQoKTtcbiAgICBpZiAoIXRoaXMuYVJlY29yZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEROUyBBIHJlY29yZCcpO1xuICAgIH1cblxuICAgIHRoaXMuYWRkQnVja2V0UG9saWN5KCk7XG4gICAgdGhpcy5jcmVhdGVCdWNrZXREZXBsb3ltZW50KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldERlcGxveW1lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBidWNrZXQgZGVwbG95bWVudCcpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDZXJ0aWZpY2F0ZSgpIHtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gbmV3IENlcnRpZmljYXRlKHRoaXMsICdDZXJ0aWZpY2F0ZScsIHtcbiAgICAgIGRvbWFpbk5hbWU6IHRoaXMuaG9zdG5hbWUsXG4gICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURucyh0aGlzLnByb3BzLmhvc3RlZFpvbmUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJ1Y2tldCgpIHtcbiAgICB0aGlzLmJ1Y2tldCA9IG5ldyBCdWNrZXQodGhpcywgJ0J1Y2tldCcsIHtcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBCbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgICBhY2Nlc3NDb250cm9sOiBCdWNrZXRBY2Nlc3NDb250cm9sLlBSSVZBVEUsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICBhdXRvRGVsZXRlT2JqZWN0czogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVBcGlDYWNoZVBvbGljeSgpIHtcbiAgICB0aGlzLmFwaUNhY2hlUG9saWN5ID0gbmV3IENhY2hlUG9saWN5KHRoaXMsICdBcGlDYWNoZVBvbGljeScsIHtcbiAgICAgIGNvbW1lbnQ6ICdDYWNoZSBwb2xpY3kgZm9yIEFQSSBHYXRld2F5IHdpdGggZHluYW1pYyBjb250ZW50JyxcbiAgICAgIGRlZmF1bHRUdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBtYXhUdGw6IER1cmF0aW9uLnNlY29uZHMoMSksXG4gICAgICBtaW5UdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nR3ppcDogdHJ1ZSxcbiAgICAgIGhlYWRlckJlaGF2aW9yOiBDYWNoZUhlYWRlckJlaGF2aW9yLmFsbG93TGlzdCgnQXV0aG9yaXphdGlvbicpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZURpc3RyaWJ1dGlvbigpIHtcbiAgICB0aGlzLmRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRvbWFpbk5hbWVzOiBbdGhpcy5ob3N0bmFtZV0sXG4gICAgICBjZXJ0aWZpY2F0ZTogdGhpcy5jZXJ0aWZpY2F0ZSxcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IFMzQnVja2V0T3JpZ2luLndpdGhPcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMuYnVja2V0KSxcbiAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgfSxcbiAgICAgIGFkZGl0aW9uYWxCZWhhdmlvcnM6IHtcbiAgICAgICAgJy9hcGkvKic6IHtcbiAgICAgICAgICBvcmlnaW46IG5ldyBSZXN0QXBpT3JpZ2luKHRoaXMucHJvcHMuYXBpKSxcbiAgICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0FMTCxcbiAgICAgICAgICBjYWNoZVBvbGljeTogdGhpcy5hcGlDYWNoZVBvbGljeSxcblxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlZmF1bHRSb290T2JqZWN0OiAnaW5kZXguaHRtbCcsXG4gICAgICBlcnJvclJlc3BvbnNlczogW1xuICAgICAgICB7XG4gICAgICAgICAgaHR0cFN0YXR1czogNDA0LFxuICAgICAgICAgIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDMsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRG5zUmVjb3JkKCkge1xuICAgIHRoaXMuYVJlY29yZCA9IG5ldyBBUmVjb3JkKHRoaXMsICdBUmVjb3JkJywge1xuICAgICAgem9uZTogdGhpcy5wcm9wcy5ob3N0ZWRab25lLFxuICAgICAgcmVjb3JkTmFtZTogdGhpcy5ob3N0bmFtZSxcbiAgICAgIHRhcmdldDogUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgQ2xvdWRGcm9udFRhcmdldCh0aGlzLmRpc3RyaWJ1dGlvbikpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFkZEJ1Y2tldFBvbGljeSgpIHtcbiAgICB0aGlzLmJ1Y2tldC5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIHNpZDogJ0FsbG93Q2xvdWRGcm9udFNlcnZpY2VQcmluY2lwYWwnLFxuICAgICAgICBhY3Rpb25zOiBbJ3MzOkdldE9iamVjdCddLFxuICAgICAgICByZXNvdXJjZXM6IFtcXGBcXCR7dGhpcy5idWNrZXQuYnVja2V0QXJufS8qXFxgXSxcbiAgICAgICAgcHJpbmNpcGFsczogW25ldyBTZXJ2aWNlUHJpbmNpcGFsKCdjbG91ZGZyb250LmFtYXpvbmF3cy5jb20nKV0sXG4gICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICdBV1M6U291cmNlQXJuJzogXFxgYXJuOmF3czpjbG91ZGZyb250OjpcXCR7dGhpcy5idWNrZXQuc3RhY2suYWNjb3VudH06ZGlzdHJpYnV0aW9uL1xcJHt0aGlzLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25JZH1cXGAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQnVja2V0RGVwbG95bWVudCgpIHtcbiAgICB0aGlzLmJ1Y2tldERlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQnVja2V0RGVwbG95bWVudCcsIHtcbiAgICAgIHNvdXJjZXM6IFtTb3VyY2UuYXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uJyksIHtcbiAgICAgICAgYnVuZGxpbmc6IHtcbiAgICAgICAgICBpbWFnZTogRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdub2RlOjIwLWFscGluZScpLFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBucG1fY29uZmlnX2NhY2hlOiAnL3RtcC8ubnBtJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGNvbW1hbmQ6IFtcbiAgICAgICAgICAgICdzaCcsXG4gICAgICAgICAgICAnLWMnLFxuICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAnY2QgL2Fzc2V0LWlucHV0L3dlYicsXG4gICAgICAgICAgICAgICd5YXJuIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUgLS1jYWNoZS1mb2xkZXIgL3RtcC8ueWFybicsXG4gICAgICAgICAgICAgICd5YXJuIGJ1aWxkJyxcbiAgICAgICAgICAgICAgXFxgc2VkIC1pICdzfFwiYXBpQmFzZVVybFwiOiBcIlteXCJdKlwifFwiYXBpQmFzZVVybFwiOiBcImh0dHBzOi8vXFwke3RoaXMuaG9zdG5hbWV9L2FwaVwifGcnIGRpc3QvY29uZmlnLmpzb25cXGAsXG4gICAgICAgICAgICAgICdjcCAtciBkaXN0LyogL2Fzc2V0LW91dHB1dC8nLFxuICAgICAgICAgICAgXS5qb2luKCcgJiYgJyksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0pXSxcbiAgICAgIGRlc3RpbmF0aW9uQnVja2V0OiB0aGlzLmJ1Y2tldCxcbiAgICAgIGRpc3RyaWJ1dGlvbjogdGhpcy5kaXN0cmlidXRpb24sXG4gICAgICBkaXN0cmlidXRpb25QYXRoczogWycvKiddLFxuICAgICAgbWVtb3J5TGltaXQ6IDI1NlxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBRXBDLHNEQUEyRDtBQUUzRDs7OztHQUlHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxjQUFrQztJQUMxRCxRQUFRLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUM7UUFDdkQsS0FBSywrQkFBa0IsQ0FBQyxJQUFJO1lBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFDOUY7WUFDRSxPQUFPLEVBQUUsT0FBTyxFQUFFLG1FQUFtRSxFQUFFLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQzFILENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBYSwwQkFBMkIsU0FBUSxtQkFBVTtJQUN4RCxZQUFZLE9BQTRCO1FBQ3RDLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQkFvTUMsT0FBTztpQkFDUCxLQUFLOzs7Ozs7Ozs7Ozs7OztDQWNyQjtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTFORCxnRUEwTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGluc3RhbGwvYnVpbGQgY29tbWFuZHMgdXNlZCBpbnNpZGUgdGhlIGJ1Y2tldC1kZXBsb3ltZW50IGJ1bmRsaW5nIGNvbnRhaW5lci5cbiAqIFRoZSBjb250YWluZXIgb25seSBoYXMgbm9kZSwgbnBtLCBhbmQgY29yZXBhY2sgYmFrZWQgaW4gKG5vIHByZS1pbnN0YWxsZWQgeWFybi9wbnBtIGJpbmFyaWVzKSxcbiAqIHNvIHlhcm4gYW5kIHBucG0gbXVzdCBiZSBpbnZva2VkIHRocm91Z2ggY29yZXBhY2suXG4gKi9cbmZ1bmN0aW9uIGJ1bmRsaW5nQ29tbWFuZHMocGFja2FnZU1hbmFnZXI6IE5vZGVQYWNrYWdlTWFuYWdlcik6IHsgaW5zdGFsbDogc3RyaW5nOyBidWlsZDogc3RyaW5nIH0ge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ25wbSBjaScsIGJ1aWxkOiAnbnBtIHJ1biBidWlsZCcgfTtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHBucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZScsIGJ1aWxkOiAnY29yZXBhY2sgcG5wbSBidWlsZCcgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAtLWNhY2hlLWZvbGRlciAvdG1wLy55YXJuJywgYnVpbGQ6ICdjb3JlcGFjayB5YXJuIGJ1aWxkJyB9O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwKSB7XG4gICAgY29uc3QgeyBpbnN0YWxsLCBidWlsZCB9ID0gYnVuZGxpbmdDb21tYW5kcyhwcm9qZWN0LnBhY2thZ2UucGFja2FnZU1hbmFnZXIpO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9TdGF0aWNXZWJzaXRlLnRzJywge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBEb2NrZXJJbWFnZSwgRHVyYXRpb24sIFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBSZXN0QXBpIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0IHsgQ2VydGlmaWNhdGUsIENlcnRpZmljYXRlVmFsaWRhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0IHtcbiAgQWxsb3dlZE1ldGhvZHMsXG4gIENhY2hlSGVhZGVyQmVoYXZpb3IsXG4gIENhY2hlUG9saWN5LFxuICBEaXN0cmlidXRpb24sXG4gIFZpZXdlclByb3RvY29sUG9saWN5LFxufSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgeyBSZXN0QXBpT3JpZ2luLCBTM0J1Y2tldE9yaWdpbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBBUmVjb3JkLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgQ2xvdWRGcm9udFRhcmdldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0IHsgQmxvY2tQdWJsaWNBY2Nlc3MsIEJ1Y2tldCwgQnVja2V0QWNjZXNzQ29udHJvbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBCdWNrZXREZXBsb3ltZW50LCBTb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudCc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBTYW5pdGl6ZXMgYW4gYXJiaXRyYXJ5IHN0cmluZyAoZS5nLiBhIGdpdCBicmFuY2ggbmFtZSkgaW50byBhIHZhbHVlIHRoYXQgaXMgc2FmZSB0byB1c2VcbiAqIGFzIGEgRE5TIGxhYmVsIGFuZCBzaG9ydCBlbm91Z2ggdGhhdCBcXGBcXCR7aG9zdG5hbWV9LlxcJHt6b25lTmFtZX1cXGAgc3RheXMgd2l0aGluIHRoZSA2NFxuICogY2hhcmFjdGVyIGRvbWFpbiBuYW1lIGxpbWl0IGVuZm9yY2VkIGJ5IEFDTSBjZXJ0aWZpY2F0ZXMuXG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplSG9zdG5hbWUocmF3SG9zdG5hbWU6IHN0cmluZywgem9uZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSByYXdIb3N0bmFtZVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1teYS16MC05LV0rL2csICctJylcbiAgICAucmVwbGFjZSgvLXsyLH0vZywgJy0nKVxuICAgIC5yZXBsYWNlKC9eLSt8LSskL2csICcnKSB8fCAnaG9zdCc7XG5cbiAgY29uc3QgbWF4TGVuZ3RoID0gNjMgLSB6b25lTmFtZS5sZW5ndGg7XG4gIGlmIChub3JtYWxpemVkLmxlbmd0aCA8PSBtYXhMZW5ndGgpIHtcbiAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgfVxuXG4gIGNvbnN0IGhhc2ggPSBjcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUocmF3SG9zdG5hbWUpLmRpZ2VzdCgnaGV4Jykuc2xpY2UoMCwgOCk7XG4gIGNvbnN0IHByZWZpeExlbmd0aCA9IE1hdGgubWF4KG1heExlbmd0aCAtIGhhc2gubGVuZ3RoIC0gMSwgMCk7XG4gIGNvbnN0IHByZWZpeCA9IG5vcm1hbGl6ZWQuc2xpY2UoMCwgcHJlZml4TGVuZ3RoKS5yZXBsYWNlKC8tKyQvLCAnJyk7XG4gIHJldHVybiBwcmVmaXggPyBcXGBcXCR7cHJlZml4fS1cXCR7aGFzaH1cXGAgOiBoYXNoO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpY1dlYnNpdGVQcm9wcyB7XG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGhvc3RlZFpvbmU6IElIb3N0ZWRab25lO1xuICByZWFkb25seSBhcGk6IFJlc3RBcGk7XG4gIHJlYWRvbmx5IGhvc3RuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBidWNrZXQ6IEJ1Y2tldDtcbiAgcHVibGljIGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IENlcnRpZmljYXRlO1xuXG4gIHByaXZhdGUgYXBpQ2FjaGVQb2xpY3k6IENhY2hlUG9saWN5O1xuICBwcml2YXRlIGFSZWNvcmQ6IEFSZWNvcmQ7XG4gIHByaXZhdGUgYnVja2V0RGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcHJpdmF0ZSBob3N0bmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByaXZhdGUgcHJvcHM6IFN0YXRpY1dlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBkb21haW5OYW1lID0gcHJvcHMuaG9zdGVkWm9uZS56b25lTmFtZTtcbiAgICBjb25zdCBob3N0bmFtZSA9IHNhbml0aXplSG9zdG5hbWUocHJvcHMuaG9zdG5hbWUgfHwgJ212cCcsIGRvbWFpbk5hbWUpO1xuICAgIHRoaXMuaG9zdG5hbWUgPSBcXGBcXCR7aG9zdG5hbWV9LlxcJHtkb21haW5OYW1lfVxcYDtcblxuICAgIHRoaXMuY3JlYXRlQ2VydGlmaWNhdGUoKTtcbiAgICBpZiAoIXRoaXMuY2VydGlmaWNhdGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBjZXJ0aWZpY2F0ZScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQnVja2V0KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXBpQ2FjaGVQb2xpY3koKTtcbiAgICBpZiAoIXRoaXMuYXBpQ2FjaGVQb2xpY3kpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBBUEkgY2FjaGUgcG9saWN5Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEaXN0cmlidXRpb24oKTtcbiAgICBpZiAoIXRoaXMuZGlzdHJpYnV0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgZGlzdHJpYnV0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVEbnNSZWNvcmQoKTtcbiAgICBpZiAoIXRoaXMuYVJlY29yZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEROUyBBIHJlY29yZCcpO1xuICAgIH1cblxuICAgIHRoaXMuYWRkQnVja2V0UG9saWN5KCk7XG4gICAgdGhpcy5jcmVhdGVCdWNrZXREZXBsb3ltZW50KCk7XG4gICAgaWYgKCF0aGlzLmJ1Y2tldERlcGxveW1lbnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBidWNrZXQgZGVwbG95bWVudCcpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVDZXJ0aWZpY2F0ZSgpIHtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gbmV3IENlcnRpZmljYXRlKHRoaXMsICdDZXJ0aWZpY2F0ZScsIHtcbiAgICAgIGRvbWFpbk5hbWU6IHRoaXMuaG9zdG5hbWUsXG4gICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURucyh0aGlzLnByb3BzLmhvc3RlZFpvbmUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJ1Y2tldCgpIHtcbiAgICB0aGlzLmJ1Y2tldCA9IG5ldyBCdWNrZXQodGhpcywgJ0J1Y2tldCcsIHtcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBCbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgICBhY2Nlc3NDb250cm9sOiBCdWNrZXRBY2Nlc3NDb250cm9sLlBSSVZBVEUsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICBhdXRvRGVsZXRlT2JqZWN0czogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVBcGlDYWNoZVBvbGljeSgpIHtcbiAgICB0aGlzLmFwaUNhY2hlUG9saWN5ID0gbmV3IENhY2hlUG9saWN5KHRoaXMsICdBcGlDYWNoZVBvbGljeScsIHtcbiAgICAgIGNvbW1lbnQ6ICdDYWNoZSBwb2xpY3kgZm9yIEFQSSBHYXRld2F5IHdpdGggZHluYW1pYyBjb250ZW50JyxcbiAgICAgIGRlZmF1bHRUdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBtYXhUdGw6IER1cmF0aW9uLnNlY29uZHMoMSksXG4gICAgICBtaW5UdGw6IER1cmF0aW9uLnNlY29uZHMoMCksXG4gICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nR3ppcDogdHJ1ZSxcbiAgICAgIGhlYWRlckJlaGF2aW9yOiBDYWNoZUhlYWRlckJlaGF2aW9yLmFsbG93TGlzdCgnQXV0aG9yaXphdGlvbicpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZURpc3RyaWJ1dGlvbigpIHtcbiAgICB0aGlzLmRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRvbWFpbk5hbWVzOiBbdGhpcy5ob3N0bmFtZV0sXG4gICAgICBjZXJ0aWZpY2F0ZTogdGhpcy5jZXJ0aWZpY2F0ZSxcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IFMzQnVja2V0T3JpZ2luLndpdGhPcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMuYnVja2V0KSxcbiAgICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgfSxcbiAgICAgIGFkZGl0aW9uYWxCZWhhdmlvcnM6IHtcbiAgICAgICAgJy9hcGkvKic6IHtcbiAgICAgICAgICBvcmlnaW46IG5ldyBSZXN0QXBpT3JpZ2luKHRoaXMucHJvcHMuYXBpKSxcbiAgICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0FMTCxcbiAgICAgICAgICBjYWNoZVBvbGljeTogdGhpcy5hcGlDYWNoZVBvbGljeSxcblxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGRlZmF1bHRSb290T2JqZWN0OiAnaW5kZXguaHRtbCcsXG4gICAgICBlcnJvclJlc3BvbnNlczogW1xuICAgICAgICB7XG4gICAgICAgICAgaHR0cFN0YXR1czogNDA0LFxuICAgICAgICAgIHJlc3BvbnNlUGFnZVBhdGg6ICcvaW5kZXguaHRtbCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDMsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRG5zUmVjb3JkKCkge1xuICAgIHRoaXMuYVJlY29yZCA9IG5ldyBBUmVjb3JkKHRoaXMsICdBUmVjb3JkJywge1xuICAgICAgem9uZTogdGhpcy5wcm9wcy5ob3N0ZWRab25lLFxuICAgICAgcmVjb3JkTmFtZTogdGhpcy5ob3N0bmFtZSxcbiAgICAgIHRhcmdldDogUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgQ2xvdWRGcm9udFRhcmdldCh0aGlzLmRpc3RyaWJ1dGlvbikpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFkZEJ1Y2tldFBvbGljeSgpIHtcbiAgICB0aGlzLmJ1Y2tldC5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIHNpZDogJ0FsbG93Q2xvdWRGcm9udFNlcnZpY2VQcmluY2lwYWwnLFxuICAgICAgICBhY3Rpb25zOiBbJ3MzOkdldE9iamVjdCddLFxuICAgICAgICByZXNvdXJjZXM6IFtcXGBcXCR7dGhpcy5idWNrZXQuYnVja2V0QXJufS8qXFxgXSxcbiAgICAgICAgcHJpbmNpcGFsczogW25ldyBTZXJ2aWNlUHJpbmNpcGFsKCdjbG91ZGZyb250LmFtYXpvbmF3cy5jb20nKV0sXG4gICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICdBV1M6U291cmNlQXJuJzogXFxgYXJuOmF3czpjbG91ZGZyb250OjpcXCR7dGhpcy5idWNrZXQuc3RhY2suYWNjb3VudH06ZGlzdHJpYnV0aW9uL1xcJHt0aGlzLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25JZH1cXGAsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQnVja2V0RGVwbG95bWVudCgpIHtcbiAgICB0aGlzLmJ1Y2tldERlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQnVja2V0RGVwbG95bWVudCcsIHtcbiAgICAgIHNvdXJjZXM6IFtTb3VyY2UuYXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uL3dlYicpLCB7XG4gICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnbm9kZToyNC1hbHBpbmUnKSxcbiAgICAgICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAgICAgbnBtX2NvbmZpZ19jYWNoZTogJy90bXAvLm5wbScsXG4gICAgICAgICAgICBIT01FOiAnL3RtcCcsXG4gICAgICAgICAgICBDSTogJ3RydWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tbWFuZDogW1xuICAgICAgICAgICAgJ3NoJyxcbiAgICAgICAgICAgICctYycsXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICcke2luc3RhbGx9JyxcbiAgICAgICAgICAgICAgJyR7YnVpbGR9JyxcbiAgICAgICAgICAgICAgXFxgc2VkIC1pICdzfFwiYXBpQmFzZVVybFwiOiBcIlteXCJdKlwifFwiYXBpQmFzZVVybFwiOiBcImh0dHBzOi8vXFwke3RoaXMuaG9zdG5hbWV9L2FwaVwifGcnIGRpc3QvY29uZmlnLmpzb25cXGAsXG4gICAgICAgICAgICAgICdjcCAtciBkaXN0LyogL2Fzc2V0LW91dHB1dC8nLFxuICAgICAgICAgICAgXS5qb2luKCcgJiYgJyksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0pXSxcbiAgICAgIGRlc3RpbmF0aW9uQnVja2V0OiB0aGlzLmJ1Y2tldCxcbiAgICAgIGRpc3RyaWJ1dGlvbjogdGhpcy5kaXN0cmlidXRpb24sXG4gICAgICBkaXN0cmlidXRpb25QYXRoczogWycvKiddLFxuICAgICAgbWVtb3J5TGltaXQ6IDI1NlxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -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.0" };
42
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.17.2" };
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.0",
52
+ "version": "1.17.2",
53
53
  "jest": {
54
54
  "coverageProvider": "v8",
55
55
  "testMatch": [