truemark-cdk-lib 0.0.16 → 0.0.17

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.
@@ -1,2 +1 @@
1
- export * from "./domain-name";
2
1
  export * from "./website";
@@ -10,6 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./domain-name"), exports);
14
13
  __exportStar(require("./website"), exports);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxnREFBOEI7QUFDOUIsNENBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZG9tYWluLW5hbWVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3dlYnNpdGVcIjtcbiJdfQ==
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSw0Q0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi93ZWJzaXRlXCI7XG4iXX0=
@@ -1,10 +1,19 @@
1
1
  import { Construct } from "constructs";
2
- import { DomainName } from "./domain-name";
3
2
  import { IBucket } from "aws-cdk-lib/aws-s3";
4
3
  import { OriginAccessIdentity, Function, Distribution, HttpVersion, SecurityPolicyProtocol, PriceClass } from "aws-cdk-lib/aws-cloudfront";
5
4
  import { ARecord } from "aws-cdk-lib/aws-route53";
6
5
  import { BucketDeployment } from "aws-cdk-lib/aws-s3-deployment";
7
- import { Duration } from "aws-cdk-lib";
6
+ import { BundlingOptions, Duration } from "aws-cdk-lib";
7
+ export declare enum SourceType {
8
+ Custom = "Custom",
9
+ Hugo = "Hugo",
10
+ Static = "Static"
11
+ }
12
+ export interface DomainNameProps {
13
+ prefix: string;
14
+ zone: string;
15
+ createRecord?: boolean;
16
+ }
8
17
  export interface WebsiteProps {
9
18
  /**
10
19
  * Bucket to use to store website content. If one is not provided, one will be generated.
@@ -18,7 +27,13 @@ export interface WebsiteProps {
18
27
  /**
19
28
  * The domain names to be serviced. The first domain name in the list is treated as the apex domain.
20
29
  */
21
- readonly domainNames?: DomainName[];
30
+ readonly domainNames?: DomainNameProps[];
31
+ /**
32
+ * Redirect traffic to the first domain in the list of domainNames.
33
+ *
34
+ * @default true
35
+ */
36
+ readonly redirectToApexDomain?: boolean;
22
37
  /**
23
38
  * Price class for the CloudFront distribution.
24
39
  *
@@ -43,12 +58,24 @@ export interface WebsiteProps {
43
58
  * @default Duration.minutes(60)
44
59
  */
45
60
  readonly maxAge?: Duration;
61
+ /**
62
+ * The source type of the website.
63
+ *
64
+ * @default SourceType.Static
65
+ */
66
+ readonly sourceType?: SourceType;
46
67
  /**
47
68
  * The directory where the website sources are located.
48
69
  */
49
- readonly websiteSourceDirectory: string;
70
+ readonly sourceDirectory: string;
71
+ /**
72
+ * Custom bundling options to use to bundle website sources. The sourceType
73
+ * must be set to SourceType.Custom.
74
+ */
75
+ readonly sourceBundlingOptions?: BundlingOptions;
50
76
  }
51
77
  export declare class Website extends Construct {
78
+ static readonly HUGO_BUNDLING_OPTIONS: BundlingOptions;
52
79
  readonly bucket: IBucket;
53
80
  readonly originAccessIdentity: OriginAccessIdentity;
54
81
  readonly apexDomain: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Website = void 0;
3
+ exports.Website = exports.SourceType = void 0;
4
4
  const constructs_1 = require("constructs");
5
5
  const aws_cloudfront_1 = require("aws-cdk-lib/aws-cloudfront");
6
6
  const aws_cloudfront_origins_1 = require("aws-cdk-lib/aws-cloudfront-origins");
@@ -11,9 +11,15 @@ const aws_s3_deployment_1 = require("aws-cdk-lib/aws-s3-deployment");
11
11
  const aws_cdk_lib_1 = require("aws-cdk-lib");
12
12
  const aws_cdk_lib_2 = require("aws-cdk-lib");
13
13
  const aws_s3_1 = require("../../aws-s3");
14
+ var SourceType;
15
+ (function (SourceType) {
16
+ SourceType["Custom"] = "Custom";
17
+ SourceType["Hugo"] = "Hugo";
18
+ SourceType["Static"] = "Static";
19
+ })(SourceType = exports.SourceType || (exports.SourceType = {}));
14
20
  class Website extends constructs_1.Construct {
15
21
  constructor(scope, id, props) {
16
- var _a, _b, _c, _d, _e, _f, _g;
22
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
17
23
  super(scope, id);
18
24
  this.bucket = (_a = props.bucket) !== null && _a !== void 0 ? _a : new aws_s3_1.StandardBucket(this, 'Bucket');
19
25
  this.originAccessIdentity = new aws_cloudfront_1.OriginAccessIdentity(this, 'Access');
@@ -40,7 +46,7 @@ function handler(event) {
40
46
  return event.request;
41
47
  }`
42
48
  .replace(/APEX_DOMAIN/g, this.apexDomain)
43
- .replace(/MATCH_APEX/g, this.apexDomain !== '' ? 'true' : 'false'))
49
+ .replace(/MATCH_APEX/g, this.apexDomain !== '' && ((_c = props.redirectToApexDomain) !== null && _c !== void 0 ? _c : true) ? 'true' : 'false'))
44
50
  });
45
51
  this.distribution = new aws_cloudfront_1.Distribution(this, 'Distribution', {
46
52
  defaultBehavior: {
@@ -62,45 +68,68 @@ function handler(event) {
62
68
  responsePagePath: '/404.html'
63
69
  }
64
70
  ],
65
- httpVersion: (_c = props.httpVersion) !== null && _c !== void 0 ? _c : aws_cloudfront_1.HttpVersion.HTTP1_1,
66
- minimumProtocolVersion: (_d = props.minimumProtocolVersion) !== null && _d !== void 0 ? _d : aws_cloudfront_1.SecurityPolicyProtocol.TLS_V1_2_2021,
71
+ httpVersion: (_d = props.httpVersion) !== null && _d !== void 0 ? _d : aws_cloudfront_1.HttpVersion.HTTP1_1,
72
+ minimumProtocolVersion: (_e = props.minimumProtocolVersion) !== null && _e !== void 0 ? _e : aws_cloudfront_1.SecurityPolicyProtocol.TLS_V1_2_2021,
67
73
  defaultRootObject: "index.html",
68
74
  certificate: (props === null || props === void 0 ? void 0 : props.certificateArn) == undefined ? undefined : aws_certificatemanager_1.Certificate.fromCertificateArn(this, 'Certificate', props.certificateArn),
69
- domainNames: (_e = props === null || props === void 0 ? void 0 : props.domainNames) === null || _e === void 0 ? void 0 : _e.map((domainName) => domainName.toString()),
75
+ domainNames: (_f = props === null || props === void 0 ? void 0 : props.domainNames) === null || _f === void 0 ? void 0 : _f.map((domainName) => domainName.toString()),
70
76
  enableIpv6: true,
71
- priceClass: (_f = props.priceClass) !== null && _f !== void 0 ? _f : aws_cloudfront_1.PriceClass.PRICE_CLASS_100
77
+ priceClass: (_g = props.priceClass) !== null && _g !== void 0 ? _g : aws_cloudfront_1.PriceClass.PRICE_CLASS_100
72
78
  });
73
79
  this.distributionUrl = `https://${(this.apexDomain != '' ? this.apexDomain : this.distribution.distributionDomainName)}`;
74
80
  this.aRecords = [];
75
81
  if ((props === null || props === void 0 ? void 0 : props.domainNames) != undefined && props.domainNames.length > 0) {
76
82
  for (let domainName of props.domainNames) {
77
- let zone = aws_route53_1.HostedZone.fromLookup(this, 'zone-' + domainName.toIdentifier(), {
78
- domainName: domainName.zone
79
- });
80
- this.aRecords.push(new aws_route53_1.ARecord(this, domainName.toIdentifier(), {
81
- zone: zone,
82
- recordName: domainName.toString(),
83
- target: aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution))
84
- }));
83
+ if ((_h = domainName.createRecord) !== null && _h !== void 0 ? _h : true) {
84
+ const domainNameStr = (domainName.prefix === '' ? '' : domainName.prefix + ".") + domainName.zone;
85
+ const domainNameId = domainNameStr.replace(/\./g, '-');
86
+ let zone = aws_route53_1.HostedZone.fromLookup(this, 'zone-' + domainNameId, {
87
+ domainName: domainName.zone
88
+ });
89
+ this.aRecords.push(new aws_route53_1.ARecord(this, domainNameId, {
90
+ zone: zone,
91
+ recordName: domainNameStr,
92
+ target: aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution))
93
+ }));
94
+ }
95
+ }
96
+ }
97
+ let bundlingOptions = undefined;
98
+ if (props.sourceType === SourceType.Custom) {
99
+ if (!props.sourceBundlingOptions) {
100
+ throw new Error("sourceBundlingOptions is required if source type is Custom");
101
+ }
102
+ bundlingOptions = props.sourceBundlingOptions;
103
+ }
104
+ if (props.sourceType === SourceType.Static) {
105
+ if (props.sourceBundlingOptions) {
106
+ throw new Error("Cannot use sourceBundlingOptions with source type Static");
107
+ }
108
+ }
109
+ if (props.sourceType === SourceType.Hugo) {
110
+ bundlingOptions = Website.HUGO_BUNDLING_OPTIONS;
111
+ if (props.sourceBundlingOptions) {
112
+ throw new Error("Cannot use sourceBundlingOptions with source type Hugo");
85
113
  }
86
114
  }
87
115
  this.deployment = new aws_s3_deployment_1.BucketDeployment(this, 'Assets', {
88
116
  sources: [
89
- aws_s3_deployment_1.Source.asset(props.websiteSourceDirectory, {
90
- bundling: {
91
- image: aws_cdk_lib_2.DockerImage.fromRegistry('klakegg/hugo:latest-ext'),
92
- command: [
93
- '-d', '/asset-output'
94
- ]
95
- }
117
+ aws_s3_deployment_1.Source.asset(props.sourceDirectory, {
118
+ bundling: bundlingOptions
96
119
  })
97
120
  ],
98
121
  destinationBucket: this.bucket,
99
122
  distribution: this.distribution,
100
- cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((_g = props.maxAge) !== null && _g !== void 0 ? _g : aws_cdk_lib_1.Duration.minutes(60))],
123
+ cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((_j = props.maxAge) !== null && _j !== void 0 ? _j : aws_cdk_lib_1.Duration.minutes(60))],
101
124
  prune: false
102
125
  });
103
126
  }
104
127
  }
105
128
  exports.Website = Website;
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnNpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXFDO0FBR3JDLCtEQU1vQztBQUNwQywrRUFBNEQ7QUFDNUQsK0VBQStEO0FBQy9ELHlEQUEwRTtBQUMxRSx5RUFBaUU7QUFDakUscUVBQXFGO0FBQ3JGLDZDQUFxQztBQUNyQyw2Q0FBd0M7QUFDeEMseUNBQTRDO0FBc0Q1QyxNQUFhLE9BQVEsU0FBUSxzQkFBUztJQVdwQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW1COztRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxNQUFNLFNBQUcsS0FBSyxDQUFDLE1BQU0sbUNBQUUsSUFBSSx1QkFBYyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUUvRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxxQ0FBb0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxXQUFXLDBDQUFHLENBQUMsRUFBRSxRQUFRLE9BQU0sRUFBRSxDQUFDO1FBRTNELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLHlCQUFRLENBQUMsSUFBSSxFQUFFLHVCQUF1QixFQUFFO1lBQ3ZFLElBQUksRUFBRSw2QkFBWSxDQUFDLFVBQVUsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBa0JsQztpQkFDTyxPQUFPLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7aUJBQ3hDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFD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QUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRTtvQkFDekMsUUFBUSxFQUFFO3dCQUNSLEtBQUssRUFBRSx5QkFBVyxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDMUQsT0FBTyxFQUFFOzRCQUNQLElBQUksRUFBRSxlQUFlO3lCQUN0QjtxQkFDRjtpQkFDRixDQUFDO2FBQ0g7WUFDRCxpQkFBaUIsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUM5QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsWUFBWSxFQUFFLENBQUMsZ0NBQVksQ0FBQyxNQUFNLE9BQUMsS0FBSyxDQUFDLE1BQU0sbUNBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN2RSxLQUFLLEVBQUUsS0FBSztTQUNiLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTVHRCwwQkE0R0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7RG9tYWluTmFtZX0gZnJvbSBcIi4vZG9tYWluLW5hbWVcIjtcbmltcG9ydCB7SUJ1Y2tldH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zM1wiO1xuaW1wb3J0IHtcbiAgRnVuY3Rpb25Db2RlLFxuICBPcmlnaW5BY2Nlc3NJZGVudGl0eSxcbiAgRnVuY3Rpb24sXG4gIERpc3RyaWJ1dGlvbixcbiAgVmlld2VyUHJvdG9jb2xQb2xpY3ksIEZ1bmN0aW9uRXZlbnRUeXBlLCBIdHRwVmVyc2lvbiwgU2VjdXJpdHlQb2xpY3lQcm90b2NvbCwgUHJpY2VDbGFzc1xufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcbmltcG9ydCB7UzNPcmlnaW59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udC1vcmlnaW5zXCI7XG5pbXBvcnQge0NlcnRpZmljYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHtBUmVjb3JkLCBIb3N0ZWRab25lLCBSZWNvcmRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtDbG91ZEZyb250VGFyZ2V0fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0c1wiO1xuaW1wb3J0IHtCdWNrZXREZXBsb3ltZW50LCBDYWNoZUNvbnRyb2wsIFNvdXJjZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zMy1kZXBsb3ltZW50XCI7XG5pbXBvcnQge0R1cmF0aW9ufSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7RG9ja2VySW1hZ2V9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtTdGFuZGFyZEJ1Y2tldH0gZnJvbSBcIi4uLy4uL2F3cy1zM1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFdlYnNpdGVQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEJ1Y2tldCB0byB1c2UgdG8gc3RvcmUgd2Vic2l0ZSBjb250ZW50LiBJZiBvbmUgaXMgbm90IHByb3ZpZGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIHRvIHRoZSBBQ00gQ2VydGlmaWNhdGUgdG8gdXNlIG9uIHRoZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi4gSWYgb25lIGlzIG5vdFxuICAgKiBwcm92aWRlZCBhbmQgZG9tYWluTmFtZXMgaXMgcG9wdWxhdGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZUFybj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWVzIHRvIGJlIHNlcnZpY2VkLiBUaGUgZmlyc3QgZG9tYWluIG5hbWUgaW4gdGhlIGxpc3QgaXMgdHJlYXRlZCBhcyB0aGUgYXBleCBkb21haW4uXG4gICAqL1xuICByZWFkb25seSBkb21haW5OYW1lcz86IERvbWFpbk5hbWVbXVxuXG4gIC8qKlxuICAgKiBQcmljZSBjbGFzcyBmb3IgdGhlIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBQcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMFxuICAgKi9cbiAgcmVhZG9ubHkgcHJpY2VDbGFzcz86IFByaWNlQ2xhc3NcblxuICAvKipcbiAgICogTWluaW11bSBwcm90b2NvbCB2ZXJzaW9uIHRvIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBTZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAqL1xuICByZWFkb25seSBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uPzogU2VjdXJpdHlQb2xpY3lQcm90b2NvbDtcblxuICAvKipcbiAgICogTWluaW11bSBIVFRQIHZlcnNpb24gdG8gYWxsb3cuXG4gICAqXG4gICAqIEBkZWZhdWx0IEh0dHBWZXJzaW9uLkhUVFAxXzFcbiAgICovXG4gIHJlYWRvbmx5IGh0dHBWZXJzaW9uPzogSHR0cFZlcnNpb247XG5cbiAgLyoqXG4gICAqIENhY2hlLWNvbnRyb2wgbWF4IGFnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcyg2MClcbiAgICovXG4gIHJlYWRvbmx5IG1heEFnZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0b3J5IHdoZXJlIHRoZSB3ZWJzaXRlIHNvdXJjZXMgYXJlIGxvY2F0ZWQuXG4gICAqL1xuICByZWFkb25seSB3ZWJzaXRlU291cmNlRGlyZWN0b3J5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBXZWJzaXRlIGV4dGVuZHMgQ29uc3RydWN0IHtcblxuICByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG4gIHJlYWRvbmx5IG9yaWdpbkFjY2Vzc0lkZW50aXR5OiBPcmlnaW5BY2Nlc3NJZGVudGl0eTtcbiAgcmVhZG9ubHkgYXBleERvbWFpbjogc3RyaW5nO1xuICByZWFkb25seSB2aWV3ZXJSZXF1ZXN0RnVuY3Rpb246IEZ1bmN0aW9uO1xuICByZWFkb25seSBkaXN0cmlidXRpb246IERpc3RyaWJ1dGlvbjtcbiAgcmVhZG9ubHkgZGlzdHJpYnV0aW9uVXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFSZWNvcmRzOiBBUmVjb3JkW107XG4gIHJlYWRvbmx5IGRlcGxveW1lbnQ6IEJ1Y2tldERlcGxveW1lbnQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFdlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmJ1Y2tldCA9IHByb3BzLmJ1Y2tldD8/bmV3IFN0YW5kYXJkQnVja2V0KHRoaXMsICdCdWNrZXQnKTtcblxuICAgIHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHkgPSBuZXcgT3JpZ2luQWNjZXNzSWRlbnRpdHkodGhpcywgJ0FjY2VzcycpO1xuICAgIHRoaXMuYnVja2V0LmdyYW50UmVhZCh0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5KTtcblxuICAgIHRoaXMuYXBleERvbWFpbiA9IHByb3BzPy5kb21haW5OYW1lcz8uWzBdLnRvU3RyaW5nKCkgfHwgJyc7XG5cbiAgICB0aGlzLnZpZXdlclJlcXVlc3RGdW5jdGlvbiA9IG5ldyBGdW5jdGlvbih0aGlzLCAnVmlld2VyUmVxdWVzdEZ1bmN0aW9uJywge1xuICAgICAgY29kZTogRnVuY3Rpb25Db2RlLmZyb21JbmxpbmUoYFxuZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICB2YXIgaG9zdCA9IGV2ZW50LnJlcXVlc3QuaGVhZGVycy5ob3N0LnZhbHVlO1xuICB2YXIgdXJpID0gZXZlbnQucmVxdWVzdC51cmk7XG4gIHZhciBtYXRjaEFwZXggPSBNQVRDSF9BUEVYO1xuICBpZiAobWF0Y2hBcGV4ICYmIGhvc3QgIT09ICdBUEVYX0RPTUFJTicpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RhdHVzQ29kZTogMzAxLFxuICAgICAgc3RhdHVzRGVzY3JpcHRpb246ICdQZXJtYW5lbnRseSBtb3ZlZCcsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwibG9jYXRpb25cIjogeyBcInZhbHVlXCI6IFwiaHR0cHM6Ly9BUEVYX0RPTUFJTlwiICsgdXJpIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaWYgKHVyaS5lbmRzV2l0aCgnLycpKSB7XG4gICAgZXZlbnQucmVxdWVzdC51cmkgPSB1cmkgKyAnaW5kZXguaHRtbCc7XG4gIH1cbiAgcmV0dXJuIGV2ZW50LnJlcXVlc3Q7XG59YFxuICAgICAgICAucmVwbGFjZSgvQVBFWF9ET01BSU4vZywgdGhpcy5hcGV4RG9tYWluKVxuICAgICAgICAucmVwbGFjZSgvTUFUQ0hfQVBFWC9nLCB0aGlzLmFwZXhEb21haW4gIT09ICcnID8gJ3RydWUnIDogJ2ZhbHNlJykpXG4gICAgfSk7XG5cbiAgICB0aGlzLmRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgJ0Rpc3RyaWJ1dGlvbicsIHtcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IG5ldyBTM09yaWdpbih0aGlzLmJ1Y2tldCwge1xuICAgICAgICAgIG9yaWdpbkFjY2Vzc0lkZW50aXR5OiB0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5XG4gICAgICAgIH0pLFxuICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZnVuY3Rpb246IHRoaXMudmlld2VyUmVxdWVzdEZ1bmN0aW9uLFxuICAgICAgICAgICAgZXZlbnRUeXBlOiBGdW5jdGlvbkV2ZW50VHlwZS5WSUVXRVJfUkVRVUVTVFxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSxcbiAgICAgIGVycm9yUmVzcG9uc2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VIdHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy80MDQuaHRtbCdcbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIGh0dHBWZXJzaW9uOiBwcm9wcy5odHRwVmVyc2lvbj8/SHR0cFZlcnNpb24uSFRUUDFfMSxcbiAgICAgIG1pbmltdW1Qcm90b2NvbFZlcnNpb246IHByb3BzLm1pbmltdW1Qcm90b2NvbFZlcnNpb24/P1NlY3VyaXR5UG9saWN5UHJvdG9jb2wuVExTX1YxXzJfMjAyMSxcbiAgICAgIGRlZmF1bHRSb290T2JqZWN0OiBcImluZGV4Lmh0bWxcIixcbiAgICAgIGNlcnRpZmljYXRlOiBwcm9wcz8uY2VydGlmaWNhdGVBcm4gPT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogQ2VydGlmaWNhdGUuZnJvbUNlcnRpZmljYXRlQXJuKHRoaXMsICdDZXJ0aWZpY2F0ZScsIHByb3BzLmNlcnRpZmljYXRlQXJuKSxcbiAgICAgIGRvbWFpbk5hbWVzOiBwcm9wcz8uZG9tYWluTmFtZXM/Lm1hcCgoZG9tYWluTmFtZSkgPT4gZG9tYWluTmFtZS50b1N0cmluZygpKSxcbiAgICAgIGVuYWJsZUlwdjY6IHRydWUsXG4gICAgICBwcmljZUNsYXNzOiBwcm9wcy5wcmljZUNsYXNzPz9QcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMFxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXN0cmlidXRpb25VcmwgPSBgaHR0cHM6Ly8keyh0aGlzLmFwZXhEb21haW4gIT0gJycgPyB0aGlzLmFwZXhEb21haW4gOiB0aGlzLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25Eb21haW5OYW1lKX1gXG5cbiAgICB0aGlzLmFSZWNvcmRzID0gW107XG5cbiAgICBpZiAocHJvcHM/LmRvbWFpbk5hbWVzICE9IHVuZGVmaW5lZCAmJiBwcm9wcy5kb21haW5OYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKGxldCBkb21haW5OYW1lIG9mIHByb3BzLmRvbWFpbk5hbWVzKSB7XG4gICAgICAgIGxldCB6b25lID0gSG9zdGVkWm9uZS5mcm9tTG9va3VwKHRoaXMsICd6b25lLScgKyBkb21haW5OYW1lLnRvSWRlbnRpZmllcigpLCB7XG4gICAgICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZS56b25lXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFSZWNvcmRzLnB1c2gobmV3IEFSZWNvcmQodGhpcywgZG9tYWluTmFtZS50b0lkZW50aWZpZXIoKSwge1xuICAgICAgICAgIHpvbmU6IHpvbmUsXG4gICAgICAgICAgcmVjb3JkTmFtZTogZG9tYWluTmFtZS50b1N0cmluZygpLFxuICAgICAgICAgIHRhcmdldDogUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgQ2xvdWRGcm9udFRhcmdldCh0aGlzLmRpc3RyaWJ1dGlvbikpXG4gICAgICAgIH0pKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmRlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQXNzZXRzJywge1xuICAgICAgc291cmNlczogW1xuICAgICAgICBTb3VyY2UuYXNzZXQocHJvcHMud2Vic2l0ZVNvdXJjZURpcmVjdG9yeSwge1xuICAgICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgICBpbWFnZTogRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdrbGFrZWdnL2h1Z286bGF0ZXN0LWV4dCcpLFxuICAgICAgICAgICAgY29tbWFuZDogW1xuICAgICAgICAgICAgICAnLWQnLCAnL2Fzc2V0LW91dHB1dCdcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICBdLFxuICAgICAgZGVzdGluYXRpb25CdWNrZXQ6IHRoaXMuYnVja2V0LFxuICAgICAgZGlzdHJpYnV0aW9uOiB0aGlzLmRpc3RyaWJ1dGlvbixcbiAgICAgIGNhY2hlQ29udHJvbDogW0NhY2hlQ29udHJvbC5tYXhBZ2UocHJvcHMubWF4QWdlPz9EdXJhdGlvbi5taW51dGVzKDYwKSldLFxuICAgICAgcHJ1bmU6IGZhbHNlXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
129
+ Website.HUGO_BUNDLING_OPTIONS = {
130
+ image: aws_cdk_lib_2.DockerImage.fromRegistry("klakegg/hugo:latest-ext"),
131
+ command: [
132
+ '-d', '/asset-output'
133
+ ]
134
+ };
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnNpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXFDO0FBRXJDLCtEQU1vQztBQUNwQywrRUFBNEQ7QUFDNUQsK0VBQStEO0FBQy9ELHlEQUEwRTtBQUMxRSx5RUFBaUU7QUFDakUscUVBQXFGO0FBQ3JGLDZDQUFzRDtBQUN0RCw2Q0FBd0M7QUFDeEMseUNBQTRDO0FBRTVDLElBQVksVUFJWDtBQUpELFdBQVksVUFBVTtJQUNwQiwrQkFBaUIsQ0FBQTtJQUNqQiwyQkFBYSxDQUFBO0lBQ2IsK0JBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBSXJCO0FBZ0ZELE1BQWEsT0FBUSxTQUFRLHNCQUFTO0lBa0JwQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW1COztRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxNQUFNLFNBQUcsS0FBSyxDQUFDLE1BQU0sbUNBQUUsSUFBSSx1QkFBYyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUUvRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxxQ0FBb0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxXQUFXLDBDQUFHLENBQUMsRUFBRSxRQUFRLE9BQU0sRUFBRSxDQUFDO1FBRTNELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLHlCQUFRLENBQUMsSUFBSSxFQUFFLHVCQUF1QixFQUFFO1lBQ3ZFLElBQUksRUFBRSw2QkFBWSxDQUFDLFVBQVUsQ0FBQzs7Ozs7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TyxFQUFFO2dCQUNQLDBCQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUU7b0JBQ2xDLFFBQVEsRUFBRSxlQUFlO2lCQUMxQixDQUFDO2FBQ0g7WUFDRCxpQkFBaUIsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUM5QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsWUFBWSxFQUFFLENBQUMsZ0NBQVksQ0FBQyxNQUFNLE9BQUMsS0FBSyxDQUFDLE1BQU0sbUNBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN2RSxLQUFLLEVBQUUsS0FBSztTQUNiLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdklILDBCQXdJQztBQXRJaUIsNkJBQXFCLEdBQW9CO0lBQ3ZELEtBQUssRUFBRSx5QkFBVyxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQztJQUMxRCxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUUsZUFBZTtLQUN0QjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7SUJ1Y2tldH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zM1wiO1xuaW1wb3J0IHtcbiAgRnVuY3Rpb25Db2RlLFxuICBPcmlnaW5BY2Nlc3NJZGVudGl0eSxcbiAgRnVuY3Rpb24sXG4gIERpc3RyaWJ1dGlvbixcbiAgVmlld2VyUHJvdG9jb2xQb2xpY3ksIEZ1bmN0aW9uRXZlbnRUeXBlLCBIdHRwVmVyc2lvbiwgU2VjdXJpdHlQb2xpY3lQcm90b2NvbCwgUHJpY2VDbGFzc1xufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcbmltcG9ydCB7UzNPcmlnaW59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udC1vcmlnaW5zXCI7XG5pbXBvcnQge0NlcnRpZmljYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHtBUmVjb3JkLCBIb3N0ZWRab25lLCBSZWNvcmRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtDbG91ZEZyb250VGFyZ2V0fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0c1wiO1xuaW1wb3J0IHtCdWNrZXREZXBsb3ltZW50LCBDYWNoZUNvbnRyb2wsIFNvdXJjZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zMy1kZXBsb3ltZW50XCI7XG5pbXBvcnQge0J1bmRsaW5nT3B0aW9ucywgRHVyYXRpb259IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtEb2NrZXJJbWFnZX0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1N0YW5kYXJkQnVja2V0fSBmcm9tIFwiLi4vLi4vYXdzLXMzXCI7XG5cbmV4cG9ydCBlbnVtIFNvdXJjZVR5cGUge1xuICBDdXN0b20gPSBcIkN1c3RvbVwiLFxuICBIdWdvID0gXCJIdWdvXCIsXG4gIFN0YXRpYyA9IFwiU3RhdGljXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEb21haW5OYW1lUHJvcHMge1xuICBwcmVmaXg6IHN0cmluZztcbiAgem9uZTogc3RyaW5nO1xuICBjcmVhdGVSZWNvcmQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlYnNpdGVQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEJ1Y2tldCB0byB1c2UgdG8gc3RvcmUgd2Vic2l0ZSBjb250ZW50LiBJZiBvbmUgaXMgbm90IHByb3ZpZGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIHRvIHRoZSBBQ00gQ2VydGlmaWNhdGUgdG8gdXNlIG9uIHRoZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi4gSWYgb25lIGlzIG5vdFxuICAgKiBwcm92aWRlZCBhbmQgZG9tYWluTmFtZXMgaXMgcG9wdWxhdGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZUFybj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWVzIHRvIGJlIHNlcnZpY2VkLiBUaGUgZmlyc3QgZG9tYWluIG5hbWUgaW4gdGhlIGxpc3QgaXMgdHJlYXRlZCBhcyB0aGUgYXBleCBkb21haW4uXG4gICAqL1xuICByZWFkb25seSBkb21haW5OYW1lcz86IERvbWFpbk5hbWVQcm9wc1tdXG5cbiAgLyoqXG4gICAqIFJlZGlyZWN0IHRyYWZmaWMgdG8gdGhlIGZpcnN0IGRvbWFpbiBpbiB0aGUgbGlzdCBvZiBkb21haW5OYW1lcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVkaXJlY3RUb0FwZXhEb21haW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcmljZSBjbGFzcyBmb3IgdGhlIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBQcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMFxuICAgKi9cbiAgcmVhZG9ubHkgcHJpY2VDbGFzcz86IFByaWNlQ2xhc3NcblxuICAvKipcbiAgICogTWluaW11bSBwcm90b2NvbCB2ZXJzaW9uIHRvIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBTZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAqL1xuICByZWFkb25seSBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uPzogU2VjdXJpdHlQb2xpY3lQcm90b2NvbDtcblxuICAvKipcbiAgICogTWluaW11bSBIVFRQIHZlcnNpb24gdG8gYWxsb3cuXG4gICAqXG4gICAqIEBkZWZhdWx0IEh0dHBWZXJzaW9uLkhUVFAxXzFcbiAgICovXG4gIHJlYWRvbmx5IGh0dHBWZXJzaW9uPzogSHR0cFZlcnNpb247XG5cbiAgLyoqXG4gICAqIENhY2hlLWNvbnRyb2wgbWF4IGFnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcyg2MClcbiAgICovXG4gIHJlYWRvbmx5IG1heEFnZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgc291cmNlIHR5cGUgb2YgdGhlIHdlYnNpdGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IFNvdXJjZVR5cGUuU3RhdGljXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VUeXBlPzogU291cmNlVHlwZTtcblxuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgd2Vic2l0ZSBzb3VyY2VzIGFyZSBsb2NhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlRGlyZWN0b3J5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBidW5kbGluZyBvcHRpb25zIHRvIHVzZSB0byBidW5kbGUgd2Vic2l0ZSBzb3VyY2VzLiBUaGUgc291cmNlVHlwZVxuICAgKiBtdXN0IGJlIHNldCB0byBTb3VyY2VUeXBlLkN1c3RvbS5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZUJ1bmRsaW5nT3B0aW9ucz86IEJ1bmRsaW5nT3B0aW9uc1xufVxuXG5leHBvcnQgY2xhc3MgV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgc3RhdGljIHJlYWRvbmx5IEhVR09fQlVORExJTkdfT1BUSU9OUzogQnVuZGxpbmdPcHRpb25zID0ge1xuICAgIGltYWdlOiBEb2NrZXJJbWFnZS5mcm9tUmVnaXN0cnkoXCJrbGFrZWdnL2h1Z286bGF0ZXN0LWV4dFwiKSxcbiAgICBjb21tYW5kOiBbXG4gICAgICAnLWQnLCAnL2Fzc2V0LW91dHB1dCdcbiAgICBdXG4gIH1cblxuICByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG4gIHJlYWRvbmx5IG9yaWdpbkFjY2Vzc0lkZW50aXR5OiBPcmlnaW5BY2Nlc3NJZGVudGl0eTtcbiAgcmVhZG9ubHkgYXBleERvbWFpbjogc3RyaW5nO1xuICByZWFkb25seSB2aWV3ZXJSZXF1ZXN0RnVuY3Rpb246IEZ1bmN0aW9uO1xuICByZWFkb25seSBkaXN0cmlidXRpb246IERpc3RyaWJ1dGlvbjtcbiAgcmVhZG9ubHkgZGlzdHJpYnV0aW9uVXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFSZWNvcmRzOiBBUmVjb3JkW107XG4gIHJlYWRvbmx5IGRlcGxveW1lbnQ6IEJ1Y2tldERlcGxveW1lbnQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFdlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmJ1Y2tldCA9IHByb3BzLmJ1Y2tldD8/bmV3IFN0YW5kYXJkQnVja2V0KHRoaXMsICdCdWNrZXQnKTtcblxuICAgIHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHkgPSBuZXcgT3JpZ2luQWNjZXNzSWRlbnRpdHkodGhpcywgJ0FjY2VzcycpO1xuICAgIHRoaXMuYnVja2V0LmdyYW50UmVhZCh0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5KTtcblxuICAgIHRoaXMuYXBleERvbWFpbiA9IHByb3BzPy5kb21haW5OYW1lcz8uWzBdLnRvU3RyaW5nKCkgfHwgJyc7XG5cbiAgICB0aGlzLnZpZXdlclJlcXVlc3RGdW5jdGlvbiA9IG5ldyBGdW5jdGlvbih0aGlzLCAnVmlld2VyUmVxdWVzdEZ1bmN0aW9uJywge1xuICAgICAgY29kZTogRnVuY3Rpb25Db2RlLmZyb21JbmxpbmUoYFxuZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICB2YXIgaG9zdCA9IGV2ZW50LnJlcXVlc3QuaGVhZGVycy5ob3N0LnZhbHVlO1xuICB2YXIgdXJpID0gZXZlbnQucmVxdWVzdC51cmk7XG4gIHZhciBtYXRjaEFwZXggPSBNQVRDSF9BUEVYO1xuICBpZiAobWF0Y2hBcGV4ICYmIGhvc3QgIT09ICdBUEVYX0RPTUFJTicpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RhdHVzQ29kZTogMzAxLFxuICAgICAgc3RhdHVzRGVzY3JpcHRpb246ICdQZXJtYW5lbnRseSBtb3ZlZCcsXG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwibG9jYXRpb25cIjogeyBcInZhbHVlXCI6IFwiaHR0cHM6Ly9BUEVYX0RPTUFJTlwiICsgdXJpIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaWYgKHVyaS5lbmRzV2l0aCgnLycpKSB7XG4gICAgZXZlbnQucmVxdWVzdC51cmkgPSB1cmkgKyAnaW5kZXguaHRtbCc7XG4gIH1cbiAgcmV0dXJuIGV2ZW50LnJlcXVlc3Q7XG59YFxuICAgICAgICAucmVwbGFjZSgvQVBFWF9ET01BSU4vZywgdGhpcy5hcGV4RG9tYWluKVxuICAgICAgICAucmVwbGFjZSgvTUFUQ0hfQVBFWC9nLCB0aGlzLmFwZXhEb21haW4gIT09ICcnICYmIChwcm9wcy5yZWRpcmVjdFRvQXBleERvbWFpbj8/dHJ1ZSkgPyAndHJ1ZScgOiAnZmFsc2UnKSlcbiAgICB9KTtcblxuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gbmV3IERpc3RyaWJ1dGlvbih0aGlzLCAnRGlzdHJpYnV0aW9uJywge1xuICAgICAgZGVmYXVsdEJlaGF2aW9yOiB7XG4gICAgICAgIG9yaWdpbjogbmV3IFMzT3JpZ2luKHRoaXMuYnVja2V0LCB7XG4gICAgICAgICAgb3JpZ2luQWNjZXNzSWRlbnRpdHk6IHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHlcbiAgICAgICAgfSksXG4gICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgICAgZnVuY3Rpb25Bc3NvY2lhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmdW5jdGlvbjogdGhpcy52aWV3ZXJSZXF1ZXN0RnVuY3Rpb24sXG4gICAgICAgICAgICBldmVudFR5cGU6IEZ1bmN0aW9uRXZlbnRUeXBlLlZJRVdFUl9SRVFVRVNUXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgZXJyb3JSZXNwb25zZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGh0dHBTdGF0dXM6IDQwNCxcbiAgICAgICAgICByZXNwb25zZUh0dHBTdGF0dXM6IDQwNCxcbiAgICAgICAgICByZXNwb25zZVBhZ2VQYXRoOiAnLzQwNC5odG1sJ1xuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgaHR0cFZlcnNpb246IHByb3BzLmh0dHBWZXJzaW9uPz9IdHRwVmVyc2lvbi5IVFRQMV8xLFxuICAgICAgbWluaW11bVByb3RvY29sVmVyc2lvbjogcHJvcHMubWluaW11bVByb3RvY29sVmVyc2lvbj8/U2VjdXJpdHlQb2xpY3lQcm90b2NvbC5UTFNfVjFfMl8yMDIxLFxuICAgICAgZGVmYXVsdFJvb3RPYmplY3Q6IFwiaW5kZXguaHRtbFwiLFxuICAgICAgY2VydGlmaWNhdGU6IHByb3BzPy5jZXJ0aWZpY2F0ZUFybiA9PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBDZXJ0aWZpY2F0ZS5mcm9tQ2VydGlmaWNhdGVBcm4odGhpcywgJ0NlcnRpZmljYXRlJywgcHJvcHMuY2VydGlmaWNhdGVBcm4pLFxuICAgICAgZG9tYWluTmFtZXM6IHByb3BzPy5kb21haW5OYW1lcz8ubWFwKChkb21haW5OYW1lKSA9PiBkb21haW5OYW1lLnRvU3RyaW5nKCkpLFxuICAgICAgZW5hYmxlSXB2NjogdHJ1ZSxcbiAgICAgIHByaWNlQ2xhc3M6IHByb3BzLnByaWNlQ2xhc3M/P1ByaWNlQ2xhc3MuUFJJQ0VfQ0xBU1NfMTAwXG4gICAgfSk7XG5cbiAgICB0aGlzLmRpc3RyaWJ1dGlvblVybCA9IGBodHRwczovLyR7KHRoaXMuYXBleERvbWFpbiAhPSAnJyA/IHRoaXMuYXBleERvbWFpbiA6IHRoaXMuZGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbkRvbWFpbk5hbWUpfWBcblxuICAgIHRoaXMuYVJlY29yZHMgPSBbXTtcblxuICAgIGlmIChwcm9wcz8uZG9tYWluTmFtZXMgIT0gdW5kZWZpbmVkICYmIHByb3BzLmRvbWFpbk5hbWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAobGV0IGRvbWFpbk5hbWUgb2YgcHJvcHMuZG9tYWluTmFtZXMpIHtcbiAgICAgICAgaWYgKGRvbWFpbk5hbWUuY3JlYXRlUmVjb3JkPz90cnVlKSB7XG4gICAgICAgICAgY29uc3QgZG9tYWluTmFtZVN0ciA9IChkb21haW5OYW1lLnByZWZpeCA9PT0gJycgPyAnJyA6IGRvbWFpbk5hbWUucHJlZml4ICsgXCIuXCIpICsgZG9tYWluTmFtZS56b25lO1xuICAgICAgICAgIGNvbnN0IGRvbWFpbk5hbWVJZCA9IGRvbWFpbk5hbWVTdHIucmVwbGFjZSgvXFwuL2csICctJyk7XG4gICAgICAgICAgbGV0IHpvbmUgPSBIb3N0ZWRab25lLmZyb21Mb29rdXAodGhpcywgJ3pvbmUtJyArIGRvbWFpbk5hbWVJZCwge1xuICAgICAgICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZS56b25lXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5hUmVjb3Jkcy5wdXNoKG5ldyBBUmVjb3JkKHRoaXMsIGRvbWFpbk5hbWVJZCwge1xuICAgICAgICAgICAgem9uZTogem9uZSxcbiAgICAgICAgICAgIHJlY29yZE5hbWU6IGRvbWFpbk5hbWVTdHIsXG4gICAgICAgICAgICB0YXJnZXQ6IFJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IENsb3VkRnJvbnRUYXJnZXQodGhpcy5kaXN0cmlidXRpb24pKVxuICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBidW5kbGluZ09wdGlvbnM6IEJ1bmRsaW5nT3B0aW9ucyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZFxuXG4gICAgaWYgKHByb3BzLnNvdXJjZVR5cGUgPT09IFNvdXJjZVR5cGUuQ3VzdG9tKSB7XG4gICAgICBpZiAoIXByb3BzLnNvdXJjZUJ1bmRsaW5nT3B0aW9ucykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJzb3VyY2VCdW5kbGluZ09wdGlvbnMgaXMgcmVxdWlyZWQgaWYgc291cmNlIHR5cGUgaXMgQ3VzdG9tXCIpO1xuICAgICAgfVxuICAgICAgYnVuZGxpbmdPcHRpb25zID0gcHJvcHMuc291cmNlQnVuZGxpbmdPcHRpb25zXG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNvdXJjZVR5cGUgPT09IFNvdXJjZVR5cGUuU3RhdGljKSB7XG4gICAgICBpZiAocHJvcHMuc291cmNlQnVuZGxpbmdPcHRpb25zKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCB1c2Ugc291cmNlQnVuZGxpbmdPcHRpb25zIHdpdGggc291cmNlIHR5cGUgU3RhdGljXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwcm9wcy5zb3VyY2VUeXBlID09PSBTb3VyY2VUeXBlLkh1Z28pIHtcbiAgICAgIGJ1bmRsaW5nT3B0aW9ucyA9IFdlYnNpdGUuSFVHT19CVU5ETElOR19PUFRJT05TXG4gICAgICBpZiAocHJvcHMuc291cmNlQnVuZGxpbmdPcHRpb25zKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCB1c2Ugc291cmNlQnVuZGxpbmdPcHRpb25zIHdpdGggc291cmNlIHR5cGUgSHVnb1wiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmRlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQXNzZXRzJywge1xuICAgICAgc291cmNlczogW1xuICAgICAgICBTb3VyY2UuYXNzZXQocHJvcHMuc291cmNlRGlyZWN0b3J5LCB7XG4gICAgICAgICAgYnVuZGxpbmc6IGJ1bmRsaW5nT3B0aW9uc1xuICAgICAgICB9KVxuICAgICAgXSxcbiAgICAgIGRlc3RpbmF0aW9uQnVja2V0OiB0aGlzLmJ1Y2tldCxcbiAgICAgIGRpc3RyaWJ1dGlvbjogdGhpcy5kaXN0cmlidXRpb24sXG4gICAgICBjYWNoZUNvbnRyb2w6IFtDYWNoZUNvbnRyb2wubWF4QWdlKHByb3BzLm1heEFnZT8/RHVyYXRpb24ubWludXRlcyg2MCkpXSxcbiAgICAgIHBydW5lOiBmYWxzZVxuICAgIH0pO1xuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "truemark-cdk-lib",
3
- "version": "0.0.16",
3
+ "version": "0.0.17",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "scripts": {
@@ -45,5 +45,5 @@
45
45
  "@aws-cdk/aws-synthetics-alpha": "^2.18.0-alpha.0",
46
46
  "cdk-monitoring-constructs": "^1.6.4"
47
47
  },
48
- "gitHead": "fdd3bcd18a5eb7fb6a498c46919512ffa2884335"
48
+ "gitHead": "e65cba1e3be05dda492c1c12e87da1dec5bc93b9"
49
49
  }
@@ -8,9 +8,9 @@ test("Create Website Test", () => {
8
8
  const app = new cdk.App();
9
9
  const stack = new cdk.Stack(app, "TestStack");
10
10
  new aws_website_1.Website(stack, 'TestWebsite', {
11
- websiteSourceDirectory: path.join(__dirname, "example-website")
11
+ sourceDirectory: path.join(__dirname, "hugo-website")
12
12
  });
13
13
  const template = assertions_1.Template.fromStack(stack);
14
14
  template.hasResourceProperties("AWS::CloudFront::Distribution", {});
15
15
  });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid2Vic2l0ZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQW1DO0FBQ25DLG1EQUEwQztBQUMxQyw2QkFBNkI7QUFDN0IsdURBQWdEO0FBRWhELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDMUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM5QyxJQUFJLHFCQUFPLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRTtRQUNoQyxzQkFBc0IsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQztLQUNoRSxDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMscUJBQXFCLENBQUMsK0JBQStCLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1dlYnNpdGV9IGZyb20gXCIuLi8uLi9hd3Mtd2Vic2l0ZVwiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcblxudGVzdChcIkNyZWF0ZSBXZWJzaXRlIFRlc3RcIiwgKCkgPT4ge1xuICBjb25zdCBhcHAgPSBuZXcgY2RrLkFwcCgpO1xuICBjb25zdCBzdGFjayA9IG5ldyBjZGsuU3RhY2soYXBwLCBcIlRlc3RTdGFja1wiKTtcbiAgbmV3IFdlYnNpdGUoc3RhY2ssICdUZXN0V2Vic2l0ZScsIHtcbiAgICB3ZWJzaXRlU291cmNlRGlyZWN0b3J5OiBwYXRoLmpvaW4oX19kaXJuYW1lLCBcImV4YW1wbGUtd2Vic2l0ZVwiKVxuICB9KTtcbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoXCJBV1M6OkNsb3VkRnJvbnQ6OkRpc3RyaWJ1dGlvblwiLCB7fSk7XG59KTtcbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid2Vic2l0ZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQW1DO0FBQ25DLG1EQUEwQztBQUMxQyw2QkFBNkI7QUFDN0IsdURBQWdEO0FBRWhELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDMUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM5QyxJQUFJLHFCQUFPLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRTtRQUNoQyxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDO0tBQ3RELENBQUMsQ0FBQztJQUNILE1BQU0sUUFBUSxHQUFHLHFCQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQywrQkFBK0IsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN0RSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7V2Vic2l0ZX0gZnJvbSBcIi4uLy4uL2F3cy13ZWJzaXRlXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuXG50ZXN0KFwiQ3JlYXRlIFdlYnNpdGUgVGVzdFwiLCAoKSA9PiB7XG4gIGNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKCk7XG4gIGNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjayhhcHAsIFwiVGVzdFN0YWNrXCIpO1xuICBuZXcgV2Vic2l0ZShzdGFjaywgJ1Rlc3RXZWJzaXRlJywge1xuICAgIHNvdXJjZURpcmVjdG9yeTogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJodWdvLXdlYnNpdGVcIilcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpDbG91ZEZyb250OjpEaXN0cmlidXRpb25cIiwge30pO1xufSk7XG4iXX0=
@@ -1,7 +0,0 @@
1
- export declare class DomainName {
2
- prefix: string;
3
- zone: string;
4
- constructor(prefix: string, zone: string);
5
- toString(): string;
6
- toIdentifier(): string;
7
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DomainName = void 0;
4
- class DomainName {
5
- constructor(prefix, zone) {
6
- this.prefix = prefix;
7
- this.zone = zone;
8
- }
9
- toString() {
10
- return (this.prefix == '' ? '' : this.prefix + '.') + this.zone;
11
- }
12
- toIdentifier() {
13
- return this.toString().replace('.', '-');
14
- }
15
- }
16
- exports.DomainName = DomainName;
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tYWluLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkb21haW4tbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxNQUFhLFVBQVU7SUFJckIsWUFBWSxNQUFjLEVBQUUsSUFBWTtRQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbEUsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQWhCRCxnQ0FnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgRG9tYWluTmFtZSB7XG4gIHByZWZpeDogc3RyaW5nXG4gIHpvbmU6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKHByZWZpeDogc3RyaW5nLCB6b25lOiBzdHJpbmcpIHtcbiAgICB0aGlzLnByZWZpeCA9IHByZWZpeDtcbiAgICB0aGlzLnpvbmUgPSB6b25lO1xuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuICh0aGlzLnByZWZpeCA9PSAnJyA/ICcnIDogdGhpcy5wcmVmaXggKyAnLicpICsgdGhpcy56b25lO1xuICB9XG5cbiAgdG9JZGVudGlmaWVyKCkge1xuICAgIHJldHVybiB0aGlzLnRvU3RyaW5nKCkucmVwbGFjZSgnLicsICctJyk7XG4gIH1cbn1cbiJdfQ==