truemark-cdk-lib 0.0.35 → 0.0.36-alpha.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/aws-codepipeline/lib/cdk-pipeline.js +3 -2
- package/aws-route53/lib/domain-name.d.ts +119 -0
- package/aws-route53/lib/domain-name.js +171 -0
- package/aws-route53/lib/index.d.ts +1 -0
- package/aws-route53/lib/index.js +2 -1
- package/aws-website/lib/website.d.ts +7 -8
- package/aws-website/lib/website.js +30 -37
- package/package.json +2 -2
- package/test/aws-website/website.test.js +19 -5
|
@@ -38,8 +38,9 @@ class CdkPipeline extends constructs_1.Construct {
|
|
|
38
38
|
input,
|
|
39
39
|
commands: (_d = props.commands) !== null && _d !== void 0 ? _d : [
|
|
40
40
|
'mkdir /tmp/npm-cache',
|
|
41
|
+
'npm config set fund false',
|
|
41
42
|
'npm config set cache /tmp/npm-cache --location=global',
|
|
42
|
-
'npm ci --prefer-offline
|
|
43
|
+
'npm ci --prefer-offline',
|
|
43
44
|
'npm run build',
|
|
44
45
|
'npm run test',
|
|
45
46
|
`npx cdk synth ${stackName}`
|
|
@@ -81,4 +82,4 @@ class CdkPipeline extends constructs_1.Construct {
|
|
|
81
82
|
}
|
|
82
83
|
}
|
|
83
84
|
exports.CdkPipeline = CdkPipeline;
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXBpcGVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrLXBpcGVsaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUFxQztBQUNyQyxtRUFBc0Q7QUFDdEQsaURBQXdDO0FBQ3hDLHVEQUFpRDtBQUNqRCxxREFRK0I7QUFDL0IsNkRBQW1IO0FBQ25ILDZFQUFzRTtBQUN0RSw2Q0FBeUM7QUE2RnpDOztHQUVHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsc0JBQVM7SUFLeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1Qjs7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTFFLE1BQU0sY0FBYyxHQUFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDaEUsYUFBYTtZQUNiLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtTQUM3QixDQUFDLENBQUM7UUFFSCxNQUFNLGtCQUFrQixHQUFHLElBQUksMkJBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3hELGNBQWM7U0FDZixDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssR0FBRyw4QkFBa0IsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3BFLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNuQyxDQUFDLENBQUM7UUFFSCxNQUFNLFNBQVMsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHdCQUFZLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNyRCxZQUFZLEVBQUUsa0JBQWtCO1lBQ2hDLFlBQVksUUFBRSxLQUFLLENBQUMsWUFBWSxtQ0FBRSxJQUFJO1lBQ3RDLHFCQUFxQixRQUFFLEtBQUssQ0FBQyxxQkFBcUIsbUNBQUUsSUFBSTtZQUN4RCw0QkFBNEIsUUFBRSxLQUFLLENBQUMsNEJBQTRCLG1DQUFFLElBQUk7WUFDdEUsS0FBSyxFQUFFLElBQUkscUJBQVMsQ0FBQyxPQUFPLEVBQUU7Z0JBQzVCLHNCQUFzQixFQUFFLFNBQVM7Z0JBQ2pDLEtBQUs7Z0JBQ0wsUUFBUSxRQUFFLEtBQUssQ0FBQyxRQUFRLG1DQUFFO29CQUN4QixzQkFBc0I7b0JBQ3RCLHVEQUF1RDtvQkFDdkQsbUNBQW1DO29CQUNuQyxlQUFlO29CQUNmLGNBQWM7b0JBQ2QsaUJBQWlCLFNBQVMsRUFBRTtpQkFDN0I7Z0JBQ0QsZ0JBQWdCLFFBQUUsS0FBSyxDQUFDLGdCQUFnQixtQ0FBRSxFQUFFO2FBQzdDLENBQUM7WUFDRixzQkFBc0IsRUFBRTtnQkFDdEIsZ0JBQWdCLEVBQUUseUJBQVMsQ0FBQyxVQUFVLENBQUM7b0JBQ3JDLEtBQUssRUFBRTt3QkFDTCxLQUFLLEVBQUUsZ0JBQWdCO3FCQUN4QjtvQkFDRCxNQUFNLEVBQUU7d0JBQ04sT0FBTyxFQUFFOzRCQUNQLFFBQVEsRUFBRTtnQ0FDUixNQUFNO2dDQUNOLDJDQUEyQyxDQUFDLDBCQUEwQjs2QkFDdkU7eUJBQ0Y7cUJBQ0Y7aUJBQ0YsQ0FBQztnQkFDRixnQkFBZ0IsRUFBRTtvQkFDaEIsV0FBVyxRQUFFLEtBQUssQ0FBQyxXQUFXLG1DQUFFLDJCQUFXLENBQUMsS0FBSztvQkFDakQsVUFBVSxRQUFFLEtBQUssQ0FBQyxVQUFVLG1DQUFFLCtCQUFlLENBQUMsZ0JBQWdCO2lCQUMvRDthQUNGO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxLQUFLLENBQUMsNEJBQTRCLEVBQUU7WUFDdEMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUkscURBQXdCLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtnQkFDakYsTUFBTSxFQUFFLGtCQUFrQjtnQkFDMUIsNEJBQTRCLEVBQUUsS0FBSyxDQUFDLDRCQUE0QjthQUNqRSxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsS0FBWSxFQUFFLE9BQXNCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxPQUFPLENBQUMsRUFBVSxFQUFFLE9BQXFCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRjtBQTlFRCxrQ0E4RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7UGlwZWxpbmV9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29kZXBpcGVsaW5lXCI7XG5pbXBvcnQge0tleX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1rbXNcIjtcbmltcG9ydCB7QXJ0aWZhY3RCdWNrZXR9IGZyb20gXCIuL2FydGlmYWN0LWJ1Y2tldFwiO1xuaW1wb3J0IHtcbiAgQWRkU3RhZ2VPcHRzLFxuICBDb2RlUGlwZWxpbmUsXG4gIENvZGVQaXBlbGluZVNvdXJjZSxcbiAgU2hlbGxTdGVwLFxuICBTdGFnZURlcGxveW1lbnQsXG4gIFdhdmUsXG4gIFdhdmVPcHRpb25zXG59IGZyb20gXCJhd3MtY2RrLWxpYi9waXBlbGluZXNcIjtcbmltcG9ydCB7QnVpbGRTcGVjLCBDb21wdXRlVHlwZSwgSUJ1aWxkSW1hZ2UsIExpbnV4QXJtQnVpbGRJbWFnZSwgTGludXhCdWlsZEltYWdlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNvZGVidWlsZFwiO1xuaW1wb3J0IHtQaXBlbGluZU5vdGlmaWNhdGlvblJ1bGV9IGZyb20gXCIuL3BpcGVsaW5lLW5vdGlmaWNhdGlvbi1ydWxlXCI7XG5pbXBvcnQge1N0YWNrLCBTdGFnZX0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge0lGaWxlU2V0UHJvZHVjZXJ9IGZyb20gXCJhd3MtY2RrLWxpYi9waXBlbGluZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBDZGtQaXBlbGluZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENka1BpcGVsaW5lUHJvcHMge1xuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCBDREsgd2lsbCBjcmVhdGUgS01TIGtleXMgZm9yIGNyb3NzIGFjY291bnQgZGVwbG95bWVudHMuIFRoaXNcbiAgICogY2FuIGJlIGNvc3RseSBpZiB5b3UgaGF2ZSBhIGxhcmdlIG51bWJlciBvZiBwaXBlbGluZXMuIFRoaXMgcHJvcGVydHlcbiAgICogYWxsb3dzIGEgY29tbW9uIGtleSB0byBiZSBzaGFyZWQgYWNyb3NzIHBpcGVsaW5lcy5cbiAgICovXG4gIHJlYWRvbmx5IGtleUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGFjY291bnQgSURzIHRoaXMgcGlwZWxpbmUgd2lsbCBkZXBsb3kgaW50by5cbiAgICovXG4gIHJlYWRvbmx5IGFjY291bnRJZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQXJuIG9mIHRoZSBDb2RlU3RhciBjb25uZWN0aW9uIHVzZWQgdG8gYWNjZXNzIHRoZSBzb3VyY2UgY29kZSByZXBvc2l0b3J5LlxuICAgKi9cbiAgcmVhZG9ubHkgY29ubmVjdGlvbkFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBzb3VyY2UgY29kZSByZXBvc2l0b3J5LlxuICAgKi9cbiAgcmVhZG9ubHkgcmVwbzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCcmFuY2ggdG8gdXNlIGluc2lkZSB0aGUgc291cmNlIGNvZGUgcmVwb3NpdG9yeS5cbiAgICovXG4gIHJlYWRvbmx5IGJyYW5jaDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgb3IgZGlzYWJsZSBzZWxmLW11dGF0aW9uLiBVc2VmdWwgZm9yIGNkayBwaXBlbGluZSBkZXZlbG9wbWVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VsZk11dGF0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRW5hYmxlIGRvY2tlciBmb3IgdGhlICdzeW50aCcgc3RlcC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9ja2VyRW5hYmxlZEZvclN5bnRoPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRW5hYmxlIGRvY2tlciBmb3IgdGhlIHNlbGYtbXV0YXRlIHN0ZXAuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRvY2tlckVuYWJsZWRGb3JTZWxmTXV0YXRpb24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGNvbXB1dGUgdG8gdXNlIGZvciB0aGlzIGJ1aWxkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBDb21wdXRlVHlwZS5TTUFMTFxuICAgKi9cbiAgcmVhZG9ubHkgY29tcHV0ZVR5cGU/OiBDb21wdXRlVHlwZTtcblxuICAvKipcbiAgICogVGhlIGltYWdlIHRvIHVzZSBmb3IgYnVpbGRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBMaW51eEJ1aWxkSW1hZ2UuQU1BWk9OX0xJTlVYXzJfM1xuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRJbWFnZT86IElCdWlsZEltYWdlO1xuXG4gIC8qKlxuICAgKiBUaGUgU2xhY2sgY2hhbm5lbCBjb25maWd1cmF0aW9uIHRvIHVzZSBmb3Igbm90aWZpY2F0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IHNsYWNrQ2hhbm5lbENvbmZpZ3VyYXRpb25Bcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIG5vdGlmaWNhdGlvbiBldmVudHMgdG8gcmVjZWl2ZS4gQnkgZGVmYXVsdCwgdGhpcyBpcyBhbGwgbm90aWZpY2F0aW9ucy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZHRjb25zb2xlL2xhdGVzdC91c2VyZ3VpZGUvY29uY2VwdHMuaHRtbCNldmVudHMtcmVmLXBpcGVsaW5lXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25FdmVudHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBGaWxlU2V0cyB0byBwdXQgaW4gb3RoZXIgZGlyZWN0b3JpZXNcbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxJbnB1dHM/OiBSZWNvcmQ8c3RyaW5nLCBJRmlsZVNldFByb2R1Y2VyPjtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIGRlZmF1bHQgY29tbWFuZHMuXG4gICAqL1xuICByZWFkb25seSBjb21tYW5kcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEFuIGFic3RyYWN0aW9uIHRvIGVhc2UgQ0RLIHBpcGVsaW5lIGNyZWF0aW9uIGFuZCBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgQ2RrUGlwZWxpbmUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIHJlYWRvbmx5IHBpcGVsaW5lOiBDb2RlUGlwZWxpbmU7XG4gIHJlYWRvbmx5IHBpcGVsaW5lTm90aWZpY2F0aW9uUnVsZTogUGlwZWxpbmVOb3RpZmljYXRpb25SdWxlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZGtQaXBlbGluZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGVuY3J5cHRpb25LZXkgPSBLZXkuZnJvbUtleUFybih0aGlzLCAnRW5jcnlwdGlvbktleScsIHByb3BzLmtleUFybik7XG5cbiAgICBjb25zdCBhcnRpZmFjdEJ1Y2tldCA9IG5ldyBBcnRpZmFjdEJ1Y2tldCh0aGlzLCAnQXJ0aWZhY3RCdWNrZXQnLCB7XG4gICAgICBlbmNyeXB0aW9uS2V5LFxuICAgICAgYWNjb3VudElkczogcHJvcHMuYWNjb3VudElkc1xuICAgIH0pO1xuXG4gICAgY29uc3QgdW5kZXJseWluZ1BpcGVsaW5lID0gbmV3IFBpcGVsaW5lKHRoaXMsICdQaXBlbGluZScsIHtcbiAgICAgIGFydGlmYWN0QnVja2V0XG4gICAgfSk7XG5cbiAgICBjb25zdCBpbnB1dCA9IENvZGVQaXBlbGluZVNvdXJjZS5jb25uZWN0aW9uKHByb3BzLnJlcG8sIHByb3BzLmJyYW5jaCwge1xuICAgICAgY29ubmVjdGlvbkFybjogcHJvcHMuY29ubmVjdGlvbkFyblxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3RhY2tOYW1lID0gU3RhY2sub2YodGhpcykuc3RhY2tOYW1lO1xuXG4gICAgdGhpcy5waXBlbGluZSA9IG5ldyBDb2RlUGlwZWxpbmUodGhpcywgJ0NvZGVQaXBlbGluZScsIHtcbiAgICAgIGNvZGVQaXBlbGluZTogdW5kZXJseWluZ1BpcGVsaW5lLFxuICAgICAgc2VsZk11dGF0aW9uOiBwcm9wcy5zZWxmTXV0YXRpb24/P3RydWUsXG4gICAgICBkb2NrZXJFbmFibGVkRm9yU3ludGg6IHByb3BzLmRvY2tlckVuYWJsZWRGb3JTeW50aD8/dHJ1ZSxcbiAgICAgIGRvY2tlckVuYWJsZWRGb3JTZWxmTXV0YXRpb246IHByb3BzLmRvY2tlckVuYWJsZWRGb3JTZWxmTXV0YXRpb24/P3RydWUsXG4gICAgICBzeW50aDogbmV3IFNoZWxsU3RlcCgnU3ludGgnLCB7XG4gICAgICAgIHByaW1hcnlPdXRwdXREaXJlY3Rvcnk6ICdjZGsub3V0JyxcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIGNvbW1hbmRzOiBwcm9wcy5jb21tYW5kcz8/W1xuICAgICAgICAgICdta2RpciAvdG1wL25wbS1jYWNoZScsXG4gICAgICAgICAgJ25wbSBjb25maWcgc2V0IGNhY2hlIC90bXAvbnBtLWNhY2hlIC0tbG9jYXRpb249Z2xvYmFsJyxcbiAgICAgICAgICAnbnBtIGNpIC0tcHJlZmVyLW9mZmxpbmUgLS1uby1mdW5kJyxcbiAgICAgICAgICAnbnBtIHJ1biBidWlsZCcsXG4gICAgICAgICAgJ25wbSBydW4gdGVzdCcsXG4gICAgICAgICAgYG5weCBjZGsgc3ludGggJHtzdGFja05hbWV9YFxuICAgICAgICBdLFxuICAgICAgICBhZGRpdGlvbmFsSW5wdXRzOiBwcm9wcy5hZGRpdGlvbmFsSW5wdXRzPz97fVxuICAgICAgfSksXG4gICAgICBzeW50aENvZGVCdWlsZERlZmF1bHRzOiB7XG4gICAgICAgIHBhcnRpYWxCdWlsZFNwZWM6IEJ1aWxkU3BlYy5mcm9tT2JqZWN0KHtcbiAgICAgICAgICBjYWNoZToge1xuICAgICAgICAgICAgcGF0aHM6IFwiL3RtcC9ucG0tY2FjaGVcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGhhc2VzOiB7XG4gICAgICAgICAgICBpbnN0YWxsOiB7XG4gICAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgICAgXCJuIDE2XCIsIC8vIEluc3RhbGwgTm9kZSB2MTZcbiAgICAgICAgICAgICAgICBcIm5wbSBpIC0tbG9jYXRpb249Z2xvYmFsIC0tbm8tZnVuZCBlc2J1aWxkXCIgLy8gSW5zdGFsbCBlc2J1aWxkIGxvY2FsbHlcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIGJ1aWxkRW52aXJvbm1lbnQ6IHtcbiAgICAgICAgICBjb21wdXRlVHlwZTogcHJvcHMuY29tcHV0ZVR5cGU/P0NvbXB1dGVUeXBlLlNNQUxMLFxuICAgICAgICAgIGJ1aWxkSW1hZ2U6IHByb3BzLmJ1aWxkSW1hZ2U/P0xpbnV4QnVpbGRJbWFnZS5BTUFaT05fTElOVVhfMl8zXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAocHJvcHMuc2xhY2tDaGFubmVsQ29uZmlndXJhdGlvbkFybikge1xuICAgICAgdGhpcy5waXBlbGluZU5vdGlmaWNhdGlvblJ1bGUgPSBuZXcgUGlwZWxpbmVOb3RpZmljYXRpb25SdWxlKHRoaXMsICdOb3RpZmljYXRpb24nLCB7XG4gICAgICAgIHNvdXJjZTogdW5kZXJseWluZ1BpcGVsaW5lLFxuICAgICAgICBzbGFja0NoYW5uZWxDb25maWd1cmF0aW9uQXJuOiBwcm9wcy5zbGFja0NoYW5uZWxDb25maWd1cmF0aW9uQXJuXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhZGRTdGFnZShzdGFnZTogU3RhZ2UsIG9wdGlvbnM/OiBBZGRTdGFnZU9wdHMpOiBTdGFnZURlcGxveW1lbnQge1xuICAgIHJldHVybiB0aGlzLnBpcGVsaW5lLmFkZFN0YWdlKHN0YWdlLCBvcHRpb25zKTtcbiAgfVxuXG4gIGFkZFdhdmUoaWQ6IHN0cmluZywgb3B0aW9ucz86IFdhdmVPcHRpb25zKTogV2F2ZSB7XG4gICAgcmV0dXJuIHRoaXMucGlwZWxpbmUuYWRkV2F2ZShpZCwgb3B0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXBpcGVsaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2RrLXBpcGVsaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUFxQztBQUNyQyxtRUFBc0Q7QUFDdEQsaURBQXdDO0FBQ3hDLHVEQUFpRDtBQUNqRCxxREFRK0I7QUFDL0IsNkRBQW1IO0FBQ25ILDZFQUFzRTtBQUN0RSw2Q0FBeUM7QUE2RnpDOztHQUVHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsc0JBQVM7SUFLeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1Qjs7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGFBQWEsR0FBRyxhQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTFFLE1BQU0sY0FBYyxHQUFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDaEUsYUFBYTtZQUNiLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtTQUM3QixDQUFDLENBQUM7UUFFSCxNQUFNLGtCQUFrQixHQUFHLElBQUksMkJBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3hELGNBQWM7U0FDZixDQUFDLENBQUM7UUFFSCxNQUFNLEtBQUssR0FBRyw4QkFBa0IsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ3BFLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtTQUNuQyxDQUFDLENBQUM7UUFFSCxNQUFNLFNBQVMsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHdCQUFZLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNyRCxZQUFZLEVBQUUsa0JBQWtCO1lBQ2hDLFlBQVksUUFBRSxLQUFLLENBQUMsWUFBWSxtQ0FBRSxJQUFJO1lBQ3RDLHFCQUFxQixRQUFFLEtBQUssQ0FBQyxxQkFBcUIsbUNBQUUsSUFBSTtZQUN4RCw0QkFBNEIsUUFBRSxLQUFLLENBQUMsNEJBQTRCLG1DQUFFLElBQUk7WUFDdEUsS0FBSyxFQUFFLElBQUkscUJBQVMsQ0FBQyxPQUFPLEVBQUU7Z0JBQzVCLHNCQUFzQixFQUFFLFNBQVM7Z0JBQ2pDLEtBQUs7Z0JBQ0wsUUFBUSxRQUFFLEtBQUssQ0FBQyxRQUFRLG1DQUFFO29CQUN4QixzQkFBc0I7b0JBQ3RCLDJCQUEyQjtvQkFDM0IsdURBQXVEO29CQUN2RCx5QkFBeUI7b0JBQ3pCLGVBQWU7b0JBQ2YsY0FBYztvQkFDZCxpQkFBaUIsU0FBUyxFQUFFO2lCQUM3QjtnQkFDRCxnQkFBZ0IsUUFBRSxLQUFLLENBQUMsZ0JBQWdCLG1DQUFFLEVBQUU7YUFDN0MsQ0FBQztZQUNGLHNCQUFzQixFQUFFO2dCQUN0QixnQkFBZ0IsRUFBRSx5QkFBUyxDQUFDLFVBQVUsQ0FBQztvQkFDckMsS0FBSyxFQUFFO3dCQUNMLEtBQUssRUFBRSxnQkFBZ0I7cUJBQ3hCO29CQUNELE1BQU0sRUFBRTt3QkFDTixPQUFPLEVBQUU7NEJBQ1AsUUFBUSxFQUFFO2dDQUNSLE1BQU07Z0NBQ04sMkNBQTJDLENBQUMsMEJBQTBCOzZCQUN2RTt5QkFDRjtxQkFDRjtpQkFDRixDQUFDO2dCQUNGLGdCQUFnQixFQUFFO29CQUNoQixXQUFXLFFBQUUsS0FBSyxDQUFDLFdBQVcsbUNBQUUsMkJBQVcsQ0FBQyxLQUFLO29CQUNqRCxVQUFVLFFBQUUsS0FBSyxDQUFDLFVBQVUsbUNBQUUsK0JBQWUsQ0FBQyxnQkFBZ0I7aUJBQy9EO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsRUFBRTtZQUN0QyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxxREFBd0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO2dCQUNqRixNQUFNLEVBQUUsa0JBQWtCO2dCQUMxQiw0QkFBNEIsRUFBRSxLQUFLLENBQUMsNEJBQTRCO2FBQ2pFLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFZLEVBQUUsT0FBc0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUFVLEVBQUUsT0FBcUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBL0VELGtDQStFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtQaXBlbGluZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2RlcGlwZWxpbmVcIjtcbmltcG9ydCB7S2V5fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWttc1wiO1xuaW1wb3J0IHtBcnRpZmFjdEJ1Y2tldH0gZnJvbSBcIi4vYXJ0aWZhY3QtYnVja2V0XCI7XG5pbXBvcnQge1xuICBBZGRTdGFnZU9wdHMsXG4gIENvZGVQaXBlbGluZSxcbiAgQ29kZVBpcGVsaW5lU291cmNlLFxuICBTaGVsbFN0ZXAsXG4gIFN0YWdlRGVwbG95bWVudCxcbiAgV2F2ZSxcbiAgV2F2ZU9wdGlvbnNcbn0gZnJvbSBcImF3cy1jZGstbGliL3BpcGVsaW5lc1wiO1xuaW1wb3J0IHtCdWlsZFNwZWMsIENvbXB1dGVUeXBlLCBJQnVpbGRJbWFnZSwgTGludXhBcm1CdWlsZEltYWdlLCBMaW51eEJ1aWxkSW1hZ2V9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29kZWJ1aWxkXCI7XG5pbXBvcnQge1BpcGVsaW5lTm90aWZpY2F0aW9uUnVsZX0gZnJvbSBcIi4vcGlwZWxpbmUtbm90aWZpY2F0aW9uLXJ1bGVcIjtcbmltcG9ydCB7U3RhY2ssIFN0YWdlfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7SUZpbGVTZXRQcm9kdWNlcn0gZnJvbSBcImF3cy1jZGstbGliL3BpcGVsaW5lc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIENka1BpcGVsaW5lXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrUGlwZWxpbmVQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEJ5IGRlZmF1bHQsIENESyB3aWxsIGNyZWF0ZSBLTVMga2V5cyBmb3IgY3Jvc3MgYWNjb3VudCBkZXBsb3ltZW50cy4gVGhpc1xuICAgKiBjYW4gYmUgY29zdGx5IGlmIHlvdSBoYXZlIGEgbGFyZ2UgbnVtYmVyIG9mIHBpcGVsaW5lcy4gVGhpcyBwcm9wZXJ0eVxuICAgKiBhbGxvd3MgYSBjb21tb24ga2V5IHRvIGJlIHNoYXJlZCBhY3Jvc3MgcGlwZWxpbmVzLlxuICAgKi9cbiAgcmVhZG9ubHkga2V5QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgYWNjb3VudCBJRHMgdGhpcyBwaXBlbGluZSB3aWxsIGRlcGxveSBpbnRvLlxuICAgKi9cbiAgcmVhZG9ubHkgYWNjb3VudElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBcm4gb2YgdGhlIENvZGVTdGFyIGNvbm5lY3Rpb24gdXNlZCB0byBhY2Nlc3MgdGhlIHNvdXJjZSBjb2RlIHJlcG9zaXRvcnkuXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHNvdXJjZSBjb2RlIHJlcG9zaXRvcnkuXG4gICAqL1xuICByZWFkb25seSByZXBvOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEJyYW5jaCB0byB1c2UgaW5zaWRlIHRoZSBzb3VyY2UgY29kZSByZXBvc2l0b3J5LlxuICAgKi9cbiAgcmVhZG9ubHkgYnJhbmNoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBvciBkaXNhYmxlIHNlbGYtbXV0YXRpb24uIFVzZWZ1bCBmb3IgY2RrIHBpcGVsaW5lIGRldmVsb3BtZW50LlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzZWxmTXV0YXRpb24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgZG9ja2VyIGZvciB0aGUgJ3N5bnRoJyBzdGVwLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkb2NrZXJFbmFibGVkRm9yU3ludGg/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgZG9ja2VyIGZvciB0aGUgc2VsZi1tdXRhdGUgc3RlcC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9ja2VyRW5hYmxlZEZvclNlbGZNdXRhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgY29tcHV0ZSB0byB1c2UgZm9yIHRoaXMgYnVpbGQuXG4gICAqXG4gICAqIEBkZWZhdWx0IENvbXB1dGVUeXBlLlNNQUxMXG4gICAqL1xuICByZWFkb25seSBjb21wdXRlVHlwZT86IENvbXB1dGVUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgaW1hZ2UgdG8gdXNlIGZvciBidWlsZHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IExpbnV4QnVpbGRJbWFnZS5BTUFaT05fTElOVVhfMl8zXG4gICAqL1xuICByZWFkb25seSBidWlsZEltYWdlPzogSUJ1aWxkSW1hZ2U7XG5cbiAgLyoqXG4gICAqIFRoZSBTbGFjayBjaGFubmVsIGNvbmZpZ3VyYXRpb24gdG8gdXNlIGZvciBub3RpZmljYXRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgc2xhY2tDaGFubmVsQ29uZmlndXJhdGlvbkFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGxpc3Qgb2Ygbm90aWZpY2F0aW9uIGV2ZW50cyB0byByZWNlaXZlLiBCeSBkZWZhdWx0LCB0aGlzIGlzIGFsbCBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9kdGNvbnNvbGUvbGF0ZXN0L3VzZXJndWlkZS9jb25jZXB0cy5odG1sI2V2ZW50cy1yZWYtcGlwZWxpbmVcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbkV2ZW50cz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIEZpbGVTZXRzIHRvIHB1dCBpbiBvdGhlciBkaXJlY3Rvcmllc1xuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbElucHV0cz86IFJlY29yZDxzdHJpbmcsIElGaWxlU2V0UHJvZHVjZXI+O1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgZGVmYXVsdCBjb21tYW5kcy5cbiAgICovXG4gIHJlYWRvbmx5IGNvbW1hbmRzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogQW4gYWJzdHJhY3Rpb24gdG8gZWFzZSBDREsgcGlwZWxpbmUgY3JlYXRpb24gYW5kIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBDZGtQaXBlbGluZSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgcmVhZG9ubHkgcGlwZWxpbmU6IENvZGVQaXBlbGluZTtcbiAgcmVhZG9ubHkgcGlwZWxpbmVOb3RpZmljYXRpb25SdWxlOiBQaXBlbGluZU5vdGlmaWNhdGlvblJ1bGU7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IENka1BpcGVsaW5lUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgZW5jcnlwdGlvbktleSA9IEtleS5mcm9tS2V5QXJuKHRoaXMsICdFbmNyeXB0aW9uS2V5JywgcHJvcHMua2V5QXJuKTtcblxuICAgIGNvbnN0IGFydGlmYWN0QnVja2V0ID0gbmV3IEFydGlmYWN0QnVja2V0KHRoaXMsICdBcnRpZmFjdEJ1Y2tldCcsIHtcbiAgICAgIGVuY3J5cHRpb25LZXksXG4gICAgICBhY2NvdW50SWRzOiBwcm9wcy5hY2NvdW50SWRzXG4gICAgfSk7XG5cbiAgICBjb25zdCB1bmRlcmx5aW5nUGlwZWxpbmUgPSBuZXcgUGlwZWxpbmUodGhpcywgJ1BpcGVsaW5lJywge1xuICAgICAgYXJ0aWZhY3RCdWNrZXRcbiAgICB9KTtcblxuICAgIGNvbnN0IGlucHV0ID0gQ29kZVBpcGVsaW5lU291cmNlLmNvbm5lY3Rpb24ocHJvcHMucmVwbywgcHJvcHMuYnJhbmNoLCB7XG4gICAgICBjb25uZWN0aW9uQXJuOiBwcm9wcy5jb25uZWN0aW9uQXJuXG4gICAgfSk7XG5cbiAgICBjb25zdCBzdGFja05hbWUgPSBTdGFjay5vZih0aGlzKS5zdGFja05hbWU7XG5cbiAgICB0aGlzLnBpcGVsaW5lID0gbmV3IENvZGVQaXBlbGluZSh0aGlzLCAnQ29kZVBpcGVsaW5lJywge1xuICAgICAgY29kZVBpcGVsaW5lOiB1bmRlcmx5aW5nUGlwZWxpbmUsXG4gICAgICBzZWxmTXV0YXRpb246IHByb3BzLnNlbGZNdXRhdGlvbj8/dHJ1ZSxcbiAgICAgIGRvY2tlckVuYWJsZWRGb3JTeW50aDogcHJvcHMuZG9ja2VyRW5hYmxlZEZvclN5bnRoPz90cnVlLFxuICAgICAgZG9ja2VyRW5hYmxlZEZvclNlbGZNdXRhdGlvbjogcHJvcHMuZG9ja2VyRW5hYmxlZEZvclNlbGZNdXRhdGlvbj8/dHJ1ZSxcbiAgICAgIHN5bnRoOiBuZXcgU2hlbGxTdGVwKCdTeW50aCcsIHtcbiAgICAgICAgcHJpbWFyeU91dHB1dERpcmVjdG9yeTogJ2Nkay5vdXQnLFxuICAgICAgICBpbnB1dCxcbiAgICAgICAgY29tbWFuZHM6IHByb3BzLmNvbW1hbmRzPz9bXG4gICAgICAgICAgJ21rZGlyIC90bXAvbnBtLWNhY2hlJyxcbiAgICAgICAgICAnbnBtIGNvbmZpZyBzZXQgZnVuZCBmYWxzZScsXG4gICAgICAgICAgJ25wbSBjb25maWcgc2V0IGNhY2hlIC90bXAvbnBtLWNhY2hlIC0tbG9jYXRpb249Z2xvYmFsJyxcbiAgICAgICAgICAnbnBtIGNpIC0tcHJlZmVyLW9mZmxpbmUnLFxuICAgICAgICAgICducG0gcnVuIGJ1aWxkJyxcbiAgICAgICAgICAnbnBtIHJ1biB0ZXN0JyxcbiAgICAgICAgICBgbnB4IGNkayBzeW50aCAke3N0YWNrTmFtZX1gXG4gICAgICAgIF0sXG4gICAgICAgIGFkZGl0aW9uYWxJbnB1dHM6IHByb3BzLmFkZGl0aW9uYWxJbnB1dHM/P3t9XG4gICAgICB9KSxcbiAgICAgIHN5bnRoQ29kZUJ1aWxkRGVmYXVsdHM6IHtcbiAgICAgICAgcGFydGlhbEJ1aWxkU3BlYzogQnVpbGRTcGVjLmZyb21PYmplY3Qoe1xuICAgICAgICAgIGNhY2hlOiB7XG4gICAgICAgICAgICBwYXRoczogXCIvdG1wL25wbS1jYWNoZVwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaGFzZXM6IHtcbiAgICAgICAgICAgIGluc3RhbGw6IHtcbiAgICAgICAgICAgICAgY29tbWFuZHM6IFtcbiAgICAgICAgICAgICAgICBcIm4gMTZcIiwgLy8gSW5zdGFsbCBOb2RlIHYxNlxuICAgICAgICAgICAgICAgIFwibnBtIGkgLS1sb2NhdGlvbj1nbG9iYWwgLS1uby1mdW5kIGVzYnVpbGRcIiAvLyBJbnN0YWxsIGVzYnVpbGQgbG9jYWxseVxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgYnVpbGRFbnZpcm9ubWVudDoge1xuICAgICAgICAgIGNvbXB1dGVUeXBlOiBwcm9wcy5jb21wdXRlVHlwZT8/Q29tcHV0ZVR5cGUuU01BTEwsXG4gICAgICAgICAgYnVpbGRJbWFnZTogcHJvcHMuYnVpbGRJbWFnZT8/TGludXhCdWlsZEltYWdlLkFNQVpPTl9MSU5VWF8yXzNcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIGlmIChwcm9wcy5zbGFja0NoYW5uZWxDb25maWd1cmF0aW9uQXJuKSB7XG4gICAgICB0aGlzLnBpcGVsaW5lTm90aWZpY2F0aW9uUnVsZSA9IG5ldyBQaXBlbGluZU5vdGlmaWNhdGlvblJ1bGUodGhpcywgJ05vdGlmaWNhdGlvbicsIHtcbiAgICAgICAgc291cmNlOiB1bmRlcmx5aW5nUGlwZWxpbmUsXG4gICAgICAgIHNsYWNrQ2hhbm5lbENvbmZpZ3VyYXRpb25Bcm46IHByb3BzLnNsYWNrQ2hhbm5lbENvbmZpZ3VyYXRpb25Bcm5cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGFkZFN0YWdlKHN0YWdlOiBTdGFnZSwgb3B0aW9ucz86IEFkZFN0YWdlT3B0cyk6IFN0YWdlRGVwbG95bWVudCB7XG4gICAgcmV0dXJuIHRoaXMucGlwZWxpbmUuYWRkU3RhZ2Uoc3RhZ2UsIG9wdGlvbnMpO1xuICB9XG5cbiAgYWRkV2F2ZShpZDogc3RyaW5nLCBvcHRpb25zPzogV2F2ZU9wdGlvbnMpOiBXYXZlIHtcbiAgICByZXR1cm4gdGhpcy5waXBlbGluZS5hZGRXYXZlKGlkLCBvcHRpb25zKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { ARecord, IHostedZone, RecordTarget } from "aws-cdk-lib/aws-route53";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
/**
|
|
4
|
+
* Properties for DomainName
|
|
5
|
+
*/
|
|
6
|
+
export interface DomainNameProps {
|
|
7
|
+
readonly prefix: string;
|
|
8
|
+
readonly zone: string | IHostedZone;
|
|
9
|
+
readonly privateZone?: boolean;
|
|
10
|
+
readonly vpcId?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Utility class for holding domain name information and
|
|
14
|
+
* doing useful things with it.
|
|
15
|
+
*/
|
|
16
|
+
export declare class DomainName {
|
|
17
|
+
protected readonly prefix: string;
|
|
18
|
+
protected readonly zone: string;
|
|
19
|
+
protected hostedZone?: IHostedZone;
|
|
20
|
+
protected readonly privateZone: boolean;
|
|
21
|
+
protected readonly vpcId?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Creates a new DomainName.
|
|
24
|
+
*
|
|
25
|
+
* @param props the properties of the domain name
|
|
26
|
+
*/
|
|
27
|
+
constructor(props: DomainNameProps);
|
|
28
|
+
/**
|
|
29
|
+
* Returns the prefix for this domain name.
|
|
30
|
+
*/
|
|
31
|
+
getPrefix(): string;
|
|
32
|
+
/**
|
|
33
|
+
* Returns true if the zone is private. False if otherwise.
|
|
34
|
+
*/
|
|
35
|
+
inPrivateZone(): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Returns the vpc ID for this zone or undefined if one does not exist
|
|
38
|
+
*/
|
|
39
|
+
getVpcId(): string | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Returns true if the props match the domain name. False if otherwise.
|
|
42
|
+
*
|
|
43
|
+
* @param props the props to compare
|
|
44
|
+
*/
|
|
45
|
+
propsMatch(props: DomainNameProps): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Returns the string version of this domain name.
|
|
48
|
+
*/
|
|
49
|
+
toString(): string;
|
|
50
|
+
/**
|
|
51
|
+
* Returns a friendly identifier for this domain name.
|
|
52
|
+
*/
|
|
53
|
+
toIdentifier(): string;
|
|
54
|
+
/**
|
|
55
|
+
* Returns the zone associated with this domain name.
|
|
56
|
+
*
|
|
57
|
+
* @param scope the scope to use if a lookup is required
|
|
58
|
+
* @param id an optional ID if a lookup is required; one is generated if not provided
|
|
59
|
+
*/
|
|
60
|
+
getHostedZone(scope: Construct, id?: string): IHostedZone;
|
|
61
|
+
/**
|
|
62
|
+
* Creates a Route53 ARecord for this domain name.
|
|
63
|
+
*
|
|
64
|
+
* @param scope the scope to create the record in
|
|
65
|
+
* @param target the target of the record
|
|
66
|
+
*/
|
|
67
|
+
createARecord(scope: Construct, target: RecordTarget): ARecord;
|
|
68
|
+
/**
|
|
69
|
+
* Converts an array of DomainNameProps to DomainName. This function will return an empty array
|
|
70
|
+
* if domainNameProps is undefined.
|
|
71
|
+
*
|
|
72
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
73
|
+
*/
|
|
74
|
+
static fromProps(domainNameProps?: DomainNameProps[]): DomainName[];
|
|
75
|
+
/**
|
|
76
|
+
* Converts an array of DomainName objects to an array of strings. This function will return an
|
|
77
|
+
* empty array if domainNames is undefined.
|
|
78
|
+
*
|
|
79
|
+
* @param domainNames the DomainName objects to convert
|
|
80
|
+
*/
|
|
81
|
+
static toStrings(domainNames?: DomainName[]): string[];
|
|
82
|
+
/**
|
|
83
|
+
* Converts an array of DomainNameProps to an array of strings. This function will
|
|
84
|
+
* return an empty array if domainNameProps is undefined.
|
|
85
|
+
*
|
|
86
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
87
|
+
*/
|
|
88
|
+
static toStringsFromProps(domainNameProps?: DomainNameProps[]): string[];
|
|
89
|
+
/**
|
|
90
|
+
* Converts an array of DomainName objects to a map where the key is the domain name string and the value
|
|
91
|
+
* is an IHostedZone. This method will return an empty map if domainNames is undefined. This function
|
|
92
|
+
* is useful when used in conjunction with functions like CertificateValidation.fromDnsMultiZone.
|
|
93
|
+
*
|
|
94
|
+
* @param scope the scope used if a zone lookup is required
|
|
95
|
+
* @param domainNames the DomainName objects to convert
|
|
96
|
+
*/
|
|
97
|
+
static toZoneMap(scope: Construct, domainNames?: DomainName[]): {
|
|
98
|
+
[domainName: string]: IHostedZone;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Converts an arry of DomainNameProps objects to a map where the key is the domain name string and the
|
|
102
|
+
* value is an IHostedZone. This method will return an empty map if domainNameProps is undefined. This
|
|
103
|
+
* function is useful when used in conjunction with functions like CertificateValidation.fromDnsMultiZone.
|
|
104
|
+
*
|
|
105
|
+
* @param scope the scope used if a zone lookup is required
|
|
106
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
107
|
+
*/
|
|
108
|
+
static toZoneMapFromProps(scope: Construct, domainNameProps: DomainNameProps[]): {
|
|
109
|
+
[domainName: string]: IHostedZone;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Finds the domain name matching the given properties in an array of DomainName objects.
|
|
113
|
+
*
|
|
114
|
+
* @param props the properties to compare
|
|
115
|
+
* @param domainNames the domain names to search
|
|
116
|
+
* @return the matching domain name or undefined
|
|
117
|
+
*/
|
|
118
|
+
static findDomainName(props: DomainNameProps, domainNames?: DomainName[]): DomainName | undefined;
|
|
119
|
+
}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DomainName = void 0;
|
|
4
|
+
const aws_route53_1 = require("aws-cdk-lib/aws-route53");
|
|
5
|
+
/**
|
|
6
|
+
* Utility class for holding domain name information and
|
|
7
|
+
* doing useful things with it.
|
|
8
|
+
*/
|
|
9
|
+
class DomainName {
|
|
10
|
+
/**
|
|
11
|
+
* Creates a new DomainName.
|
|
12
|
+
*
|
|
13
|
+
* @param props the properties of the domain name
|
|
14
|
+
*/
|
|
15
|
+
constructor(props) {
|
|
16
|
+
var _a;
|
|
17
|
+
this.prefix = props.prefix;
|
|
18
|
+
if (typeof props.zone === "string") {
|
|
19
|
+
this.zone = props.zone;
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
this.hostedZone = props.zone;
|
|
23
|
+
this.zone = this.hostedZone.zoneName;
|
|
24
|
+
}
|
|
25
|
+
this.privateZone = (_a = props.privateZone) !== null && _a !== void 0 ? _a : false;
|
|
26
|
+
this.vpcId = props.vpcId;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Returns the prefix for this domain name.
|
|
30
|
+
*/
|
|
31
|
+
getPrefix() {
|
|
32
|
+
return this.prefix;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns true if the zone is private. False if otherwise.
|
|
36
|
+
*/
|
|
37
|
+
inPrivateZone() {
|
|
38
|
+
return this.privateZone;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Returns the vpc ID for this zone or undefined if one does not exist
|
|
42
|
+
*/
|
|
43
|
+
getVpcId() {
|
|
44
|
+
return this.vpcId;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Returns true if the props match the domain name. False if otherwise.
|
|
48
|
+
*
|
|
49
|
+
* @param props the props to compare
|
|
50
|
+
*/
|
|
51
|
+
propsMatch(props) {
|
|
52
|
+
let propZoneStr = typeof props.zone === "string" ? props.zone : props.zone.zoneName;
|
|
53
|
+
return this.prefix === props.prefix
|
|
54
|
+
&& this.zone === propZoneStr
|
|
55
|
+
&& this.privateZone === props.privateZone
|
|
56
|
+
&& this.vpcId === props.vpcId;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Returns the string version of this domain name.
|
|
60
|
+
*/
|
|
61
|
+
toString() {
|
|
62
|
+
return (this.prefix == "" ? "" : this.prefix + ".") + this.zone;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Returns a friendly identifier for this domain name.
|
|
66
|
+
*/
|
|
67
|
+
toIdentifier() {
|
|
68
|
+
return this.toString().replace(".", "-");
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Returns the zone associated with this domain name.
|
|
72
|
+
*
|
|
73
|
+
* @param scope the scope to use if a lookup is required
|
|
74
|
+
* @param id an optional ID if a lookup is required; one is generated if not provided
|
|
75
|
+
*/
|
|
76
|
+
getHostedZone(scope, id) {
|
|
77
|
+
if (this.hostedZone === undefined) {
|
|
78
|
+
this.hostedZone = aws_route53_1.HostedZone.fromLookup(scope, id !== null && id !== void 0 ? id : `${this.toIdentifier()}-zone`, {
|
|
79
|
+
domainName: this.zone,
|
|
80
|
+
privateZone: this.privateZone,
|
|
81
|
+
vpcId: this.vpcId
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
return this.hostedZone;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Creates a Route53 ARecord for this domain name.
|
|
88
|
+
*
|
|
89
|
+
* @param scope the scope to create the record in
|
|
90
|
+
* @param target the target of the record
|
|
91
|
+
*/
|
|
92
|
+
createARecord(scope, target) {
|
|
93
|
+
return new aws_route53_1.ARecord(scope, `${this.toIdentifier()}-arecord`, {
|
|
94
|
+
zone: this.getHostedZone(scope),
|
|
95
|
+
recordName: this.toString(),
|
|
96
|
+
target
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Converts an array of DomainNameProps to DomainName. This function will return an empty array
|
|
101
|
+
* if domainNameProps is undefined.
|
|
102
|
+
*
|
|
103
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
104
|
+
*/
|
|
105
|
+
static fromProps(domainNameProps) {
|
|
106
|
+
return domainNameProps === undefined ? [] : domainNameProps.map(p => new DomainName(p));
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Converts an array of DomainName objects to an array of strings. This function will return an
|
|
110
|
+
* empty array if domainNames is undefined.
|
|
111
|
+
*
|
|
112
|
+
* @param domainNames the DomainName objects to convert
|
|
113
|
+
*/
|
|
114
|
+
static toStrings(domainNames) {
|
|
115
|
+
return domainNames === undefined ? [] : domainNames.map(d => d.toString());
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Converts an array of DomainNameProps to an array of strings. This function will
|
|
119
|
+
* return an empty array if domainNameProps is undefined.
|
|
120
|
+
*
|
|
121
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
122
|
+
*/
|
|
123
|
+
static toStringsFromProps(domainNameProps) {
|
|
124
|
+
return domainNameProps === undefined ? [] : DomainName.toStrings(DomainName.fromProps(domainNameProps));
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Converts an array of DomainName objects to a map where the key is the domain name string and the value
|
|
128
|
+
* is an IHostedZone. This method will return an empty map if domainNames is undefined. This function
|
|
129
|
+
* is useful when used in conjunction with functions like CertificateValidation.fromDnsMultiZone.
|
|
130
|
+
*
|
|
131
|
+
* @param scope the scope used if a zone lookup is required
|
|
132
|
+
* @param domainNames the DomainName objects to convert
|
|
133
|
+
*/
|
|
134
|
+
static toZoneMap(scope, domainNames) {
|
|
135
|
+
const map = {};
|
|
136
|
+
if (domainNames !== undefined) {
|
|
137
|
+
domainNames.forEach(d => {
|
|
138
|
+
map[d.toString()] = d.getHostedZone(scope);
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
return map;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Converts an arry of DomainNameProps objects to a map where the key is the domain name string and the
|
|
145
|
+
* value is an IHostedZone. This method will return an empty map if domainNameProps is undefined. This
|
|
146
|
+
* function is useful when used in conjunction with functions like CertificateValidation.fromDnsMultiZone.
|
|
147
|
+
*
|
|
148
|
+
* @param scope the scope used if a zone lookup is required
|
|
149
|
+
* @param domainNameProps the DomainNameProps objects to convert
|
|
150
|
+
*/
|
|
151
|
+
static toZoneMapFromProps(scope, domainNameProps) {
|
|
152
|
+
return DomainName.toZoneMap(scope, DomainName.fromProps(domainNameProps));
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Finds the domain name matching the given properties in an array of DomainName objects.
|
|
156
|
+
*
|
|
157
|
+
* @param props the properties to compare
|
|
158
|
+
* @param domainNames the domain names to search
|
|
159
|
+
* @return the matching domain name or undefined
|
|
160
|
+
*/
|
|
161
|
+
static findDomainName(props, domainNames) {
|
|
162
|
+
for (let domainName of domainNames !== null && domainNames !== void 0 ? domainNames : []) {
|
|
163
|
+
if (domainName.propsMatch(props)) {
|
|
164
|
+
return domainName;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
exports.DomainName = DomainName;
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tYWluLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkb21haW4tbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBdUY7QUFhdkY7OztHQUdHO0FBQ0gsTUFBYSxVQUFVO0lBUXJCOzs7O09BSUc7SUFDSCxZQUFZLEtBQXNCOztRQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxPQUFPLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztTQUN4QjthQUFNO1lBQ0wsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQzdCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDdEM7UUFDRCxJQUFJLENBQUMsV0FBVyxTQUFHLEtBQUssQ0FBQyxXQUFXLG1DQUFJLEtBQUssQ0FBQztRQUM5QyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsS0FBc0I7UUFDL0IsSUFBSSxXQUFXLEdBQUcsT0FBTyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDcEYs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RyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQzVDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEtBQWdCLEVBQUUsZUFBa0M7UUFDNUUsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBc0IsRUFBRSxXQUEwQjtRQUN0RSxLQUFLLElBQUksVUFBVSxJQUFJLFdBQVcsYUFBWCxXQUFXLGNBQVgsV0FBVyxHQUFJLEVBQUUsRUFBRTtZQUN4QyxJQUFJLFVBQVUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2hDLE9BQU8sVUFBVSxDQUFDO2FBQ25CO1NBQ0Y7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUFuTEQsZ0NBbUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBUmVjb3JkLCBIb3N0ZWRab25lLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTNcIjtcbmltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIERvbWFpbk5hbWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb21haW5OYW1lUHJvcHMge1xuICByZWFkb25seSBwcmVmaXg6IHN0cmluZztcbiAgcmVhZG9ubHkgem9uZTogc3RyaW5nIHwgSUhvc3RlZFpvbmU7XG4gIHJlYWRvbmx5IHByaXZhdGVab25lPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgdnBjSWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogVXRpbGl0eSBjbGFzcyBmb3IgaG9sZGluZyBkb21haW4gbmFtZSBpbmZvcm1hdGlvbiBhbmRcbiAqIGRvaW5nIHVzZWZ1bCB0aGluZ3Mgd2l0aCBpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIERvbWFpbk5hbWUge1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBwcmVmaXg6IHN0cmluZztcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHpvbmU6IHN0cmluZztcbiAgcHJvdGVjdGVkIGhvc3RlZFpvbmU/OiBJSG9zdGVkWm9uZTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHByaXZhdGVab25lOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdnBjSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgRG9tYWluTmFtZS5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBkb21haW4gbmFtZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM6IERvbWFpbk5hbWVQcm9wcykge1xuICAgIHRoaXMucHJlZml4ID0gcHJvcHMucHJlZml4O1xuICAgIGlmICh0eXBlb2YgcHJvcHMuem9uZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgdGhpcy56b25lID0gcHJvcHMuem9uZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5ob3N0ZWRab25lID0gcHJvcHMuem9uZTtcbiAgICAgIHRoaXMuem9uZSA9IHRoaXMuaG9zdGVkWm9uZS56b25lTmFtZTtcbiAgICB9XG4gICAgdGhpcy5wcml2YXRlWm9uZSA9IHByb3BzLnByaXZhdGVab25lID8/IGZhbHNlO1xuICAgIHRoaXMudnBjSWQgPSBwcm9wcy52cGNJZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBwcmVmaXggZm9yIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqL1xuICBnZXRQcmVmaXgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5wcmVmaXg7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIHRoZSB6b25lIGlzIHByaXZhdGUuIEZhbHNlIGlmIG90aGVyd2lzZS5cbiAgICovXG4gIGluUHJpdmF0ZVpvbmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHJpdmF0ZVpvbmU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdnBjIElEIGZvciB0aGlzIHpvbmUgb3IgdW5kZWZpbmVkIGlmIG9uZSBkb2VzIG5vdCBleGlzdFxuICAgKi9cbiAgZ2V0VnBjSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52cGNJZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgdGhlIHByb3BzIG1hdGNoIHRoZSBkb21haW4gbmFtZS4gRmFsc2UgaWYgb3RoZXJ3aXNlLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgdGhlIHByb3BzIHRvIGNvbXBhcmVcbiAgICovXG4gIHByb3BzTWF0Y2gocHJvcHM6IERvbWFpbk5hbWVQcm9wcyk6IGJvb2xlYW4ge1xuICAgIGxldCBwcm9wWm9uZVN0ciA9IHR5cGVvZiBwcm9wcy56b25lID09PSBcInN0cmluZ1wiID8gcHJvcHMuem9uZSA6IHByb3BzLnpvbmUuem9uZU5hbWU7XG4gICAgcmV0dXJuIHRoaXMucHJlZml4ID09PSBwcm9wcy5wcmVmaXhcbiAgICAgICYmIHRoaXMuem9uZSA9PT0gcHJvcFpvbmVTdHJcbiAgICAgICYmIHRoaXMucHJpdmF0ZVpvbmUgPT09IHByb3BzLnByaXZhdGVab25lXG4gICAgICAmJiB0aGlzLnZwY0lkID09PSBwcm9wcy52cGNJZFxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHN0cmluZyB2ZXJzaW9uIG9mIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqL1xuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiAodGhpcy5wcmVmaXggPT0gXCJcIiA/IFwiXCIgOiB0aGlzLnByZWZpeCArIFwiLlwiKSArIHRoaXMuem9uZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgZnJpZW5kbHkgaWRlbnRpZmllciBmb3IgdGhpcyBkb21haW4gbmFtZS5cbiAgICovXG4gIHRvSWRlbnRpZmllcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRvU3RyaW5nKCkucmVwbGFjZShcIi5cIiwgXCItXCIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHpvbmUgYXNzb2NpYXRlZCB3aXRoIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSB0aGUgc2NvcGUgdG8gdXNlIGlmIGEgbG9va3VwIGlzIHJlcXVpcmVkXG4gICAqIEBwYXJhbSBpZCBhbiBvcHRpb25hbCBJRCBpZiBhIGxvb2t1cCBpcyByZXF1aXJlZDsgb25lIGlzIGdlbmVyYXRlZCBpZiBub3QgcHJvdmlkZWRcbiAgICovXG4gIGdldEhvc3RlZFpvbmUoc2NvcGU6IENvbnN0cnVjdCwgaWQ/OiBzdHJpbmcpIDogSUhvc3RlZFpvbmUge1xuICAgIGlmICh0aGlzLmhvc3RlZFpvbmUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5ob3N0ZWRab25lID0gSG9zdGVkWm9uZS5mcm9tTG9va3VwKHNjb3BlLCBpZCA/PyBgJHt0aGlzLnRvSWRlbnRpZmllcigpfS16b25lYCwge1xuICAgICAgICBkb21haW5OYW1lOiB0aGlzLnpvbmUsXG4gICAgICAgIHByaXZhdGVab25lOiB0aGlzLnByaXZhdGVab25lLFxuICAgICAgICB2cGNJZDogdGhpcy52cGNJZFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmhvc3RlZFpvbmU7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIFJvdXRlNTMgQVJlY29yZCBmb3IgdGhpcyBkb21haW4gbmFtZS5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIHRoZSBzY29wZSB0byBjcmVhdGUgdGhlIHJlY29yZCBpblxuICAgKiBAcGFyYW0gdGFyZ2V0IHRoZSB0YXJnZXQgb2YgdGhlIHJlY29yZFxuICAgKi9cbiAgY3JlYXRlQVJlY29yZChzY29wZTogQ29uc3RydWN0LCB0YXJnZXQ6IFJlY29yZFRhcmdldCk6IEFSZWNvcmQge1xuICAgIHJldHVybiBuZXcgQVJlY29yZChzY29wZSwgYCR7dGhpcy50b0lkZW50aWZpZXIoKX0tYXJlY29yZGAsIHtcbiAgICAgIHpvbmU6IHRoaXMuZ2V0SG9zdGVkWm9uZShzY29wZSksXG4gICAgICByZWNvcmROYW1lOiB0aGlzLnRvU3RyaW5nKCksXG4gICAgICB0YXJnZXRcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhbiBhcnJheSBvZiBEb21haW5OYW1lUHJvcHMgdG8gRG9tYWluTmFtZS4gVGhpcyBmdW5jdGlvbiB3aWxsIHJldHVybiBhbiBlbXB0eSBhcnJheVxuICAgKiBpZiBkb21haW5OYW1lUHJvcHMgaXMgdW5kZWZpbmVkLlxuICAgKlxuICAgKiBAcGFyYW0gZG9tYWluTmFtZVByb3BzIHRoZSBEb21haW5OYW1lUHJvcHMgb2JqZWN0cyB0byBjb252ZXJ0XG4gICAqL1xuICBzdGF0aWMgZnJvbVByb3BzKGRvbWFpbk5hbWVQcm9wcz86IERvbWFpbk5hbWVQcm9wc1tdKSA6IERvbWFpbk5hbWVbXSB7XG4gICAgcmV0dXJuIGRvbWFpbk5hbWVQcm9wcyA9PT0gdW5kZWZpbmVkID8gW10gOiBkb21haW5OYW1lUHJvcHMubWFwKHAgPT4gbmV3IERvbWFpbk5hbWUocCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGFuIGFycmF5IG9mIERvbWFpbk5hbWUgb2JqZWN0cyB0byBhbiBhcnJheSBvZiBzdHJpbmdzLiBUaGlzIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGFuXG4gICAqIGVtcHR5IGFycmF5IGlmIGRvbWFpbk5hbWVzIGlzIHVuZGVmaW5lZC5cbiAgICpcbiAgICogQHBhcmFtIGRvbWFpbk5hbWVzIHRoZSBEb21haW5OYW1lIG9iamVjdHMgdG8gY29udmVydFxuICAgKi9cbiAgc3RhdGljIHRvU3RyaW5ncyhkb21haW5OYW1lcz86IERvbWFpbk5hbWVbXSkgOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIGRvbWFpbk5hbWVzID09PSB1bmRlZmluZWQgPyBbXSA6IGRvbWFpbk5hbWVzLm1hcChkID0+IGQudG9TdHJpbmcoKSk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYW4gYXJyYXkgb2YgRG9tYWluTmFtZVByb3BzIHRvIGFuIGFycmF5IG9mIHN0cmluZ3MuIFRoaXMgZnVuY3Rpb24gd2lsbFxuICAgKiByZXR1cm4gYW4gZW1wdHkgYXJyYXkgaWYgZG9tYWluTmFtZVByb3BzIGlzIHVuZGVmaW5lZC5cbiAgICpcbiAgICogQHBhcmFtIGRvbWFpbk5hbWVQcm9wcyB0aGUgRG9tYWluTmFtZVByb3BzIG9iamVjdHMgdG8gY29udmVydFxuICAgKi9cbiAgc3RhdGljIHRvU3RyaW5nc0Zyb21Qcm9wcyhkb21haW5OYW1lUHJvcHM/OiBEb21haW5OYW1lUHJvcHNbXSkgOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIGRvbWFpbk5hbWVQcm9wcyA9PT0gdW5kZWZpbmVkID8gW10gOiBEb21haW5OYW1lLnRvU3RyaW5ncyhEb21haW5OYW1lLmZyb21Qcm9wcyhkb21haW5OYW1lUHJvcHMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhbiBhcnJheSBvZiBEb21haW5OYW1lIG9iamVjdHMgdG8gYSBtYXAgd2hlcmUgdGhlIGtleSBpcyB0aGUgZG9tYWluIG5hbWUgc3RyaW5nIGFuZCB0aGUgdmFsdWVcbiAgICogaXMgYW4gSUhvc3RlZFpvbmUuIFRoaXMgbWV0aG9kIHdpbGwgcmV0dXJuIGFuIGVtcHR5IG1hcCBpZiBkb21haW5OYW1lcyBpcyB1bmRlZmluZWQuIFRoaXMgZnVuY3Rpb25cbiAgICogaXMgdXNlZnVsIHdoZW4gdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGZ1bmN0aW9ucyBsaWtlIENlcnRpZmljYXRlVmFsaWRhdGlvbi5mcm9tRG5zTXVsdGlab25lLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIHNjb3BlIHVzZWQgaWYgYSB6b25lIGxvb2t1cCBpcyByZXF1aXJlZFxuICAgKiBAcGFyYW0gZG9tYWluTmFtZXMgdGhlIERvbWFpbk5hbWUgb2JqZWN0cyB0byBjb252ZXJ0XG4gICAqL1xuICBzdGF0aWMgdG9ab25lTWFwKHNjb3BlOiBDb25zdHJ1Y3QsIGRvbWFpbk5hbWVzPzogRG9tYWluTmFtZVtdKSA6IHsgW2RvbWFpbk5hbWU6IHN0cmluZ106IElIb3N0ZWRab25lIH0ge1xuICAgIGNvbnN0IG1hcDoge1trZXk6IHN0cmluZ106IElIb3N0ZWRab25lfSA9IHt9XG4gICAgaWYgKGRvbWFpbk5hbWVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGRvbWFpbk5hbWVzLmZvckVhY2goZCA9PiB7XG4gICAgICAgIG1hcFtkLnRvU3RyaW5nKCldID0gZC5nZXRIb3N0ZWRab25lKHNjb3BlKVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBtYXA7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYW4gYXJyeSBvZiBEb21haW5OYW1lUHJvcHMgb2JqZWN0cyB0byBhIG1hcCB3aGVyZSB0aGUga2V5IGlzIHRoZSBkb21haW4gbmFtZSBzdHJpbmcgYW5kIHRoZVxuICAgKiB2YWx1ZSBpcyBhbiBJSG9zdGVkWm9uZS4gVGhpcyBtZXRob2Qgd2lsbCByZXR1cm4gYW4gZW1wdHkgbWFwIGlmIGRvbWFpbk5hbWVQcm9wcyBpcyB1bmRlZmluZWQuIFRoaXNcbiAgICogZnVuY3Rpb24gaXMgdXNlZnVsIHdoZW4gdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGZ1bmN0aW9ucyBsaWtlIENlcnRpZmljYXRlVmFsaWRhdGlvbi5mcm9tRG5zTXVsdGlab25lLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgdGhlIHNjb3BlIHVzZWQgaWYgYSB6b25lIGxvb2t1cCBpcyByZXF1aXJlZFxuICAgKiBAcGFyYW0gZG9tYWluTmFtZVByb3BzIHRoZSBEb21haW5OYW1lUHJvcHMgb2JqZWN0cyB0byBjb252ZXJ0XG4gICAqL1xuICBzdGF0aWMgdG9ab25lTWFwRnJvbVByb3BzKHNjb3BlOiBDb25zdHJ1Y3QsIGRvbWFpbk5hbWVQcm9wczogRG9tYWluTmFtZVByb3BzW10pIDogeyBbZG9tYWluTmFtZTogc3RyaW5nXTogSUhvc3RlZFpvbmUgfSB7XG4gICAgcmV0dXJuIERvbWFpbk5hbWUudG9ab25lTWFwKHNjb3BlLCBEb21haW5OYW1lLmZyb21Qcm9wcyhkb21haW5OYW1lUHJvcHMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kcyB0aGUgZG9tYWluIG5hbWUgbWF0Y2hpbmcgdGhlIGdpdmVuIHByb3BlcnRpZXMgaW4gYW4gYXJyYXkgb2YgRG9tYWluTmFtZSBvYmplY3RzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgdGhlIHByb3BlcnRpZXMgdG8gY29tcGFyZVxuICAgKiBAcGFyYW0gZG9tYWluTmFtZXMgdGhlIGRvbWFpbiBuYW1lcyB0byBzZWFyY2hcbiAgICogQHJldHVybiB0aGUgbWF0Y2hpbmcgZG9tYWluIG5hbWUgb3IgdW5kZWZpbmVkXG4gICAqL1xuICBzdGF0aWMgZmluZERvbWFpbk5hbWUocHJvcHM6IERvbWFpbk5hbWVQcm9wcywgZG9tYWluTmFtZXM/OiBEb21haW5OYW1lW10pOiBEb21haW5OYW1lIHwgdW5kZWZpbmVkIHtcbiAgICBmb3IgKGxldCBkb21haW5OYW1lIG9mIGRvbWFpbk5hbWVzID8/IFtdKSB7XG4gICAgICBpZiAoZG9tYWluTmFtZS5wcm9wc01hdGNoKHByb3BzKSkge1xuICAgICAgICByZXR1cm4gZG9tYWluTmFtZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|
package/aws-route53/lib/index.js
CHANGED
|
@@ -13,4 +13,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
__exportStar(require("./latency-a-record"), exports);
|
|
14
14
|
__exportStar(require("./weighted-a-record"), exports);
|
|
15
15
|
__exportStar(require("./weighted-latency-a-record"), exports);
|
|
16
|
-
|
|
16
|
+
__exportStar(require("./domain-name"), exports);
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxxREFBbUM7QUFDbkMsc0RBQW9DO0FBQ3BDLDhEQUE0QztBQUM1QyxnREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xhdGVuY3ktYS1yZWNvcmQnO1xuZXhwb3J0ICogZnJvbSAnLi93ZWlnaHRlZC1hLXJlY29yZCc7XG5leHBvcnQgKiBmcm9tICcuL3dlaWdodGVkLWxhdGVuY3ktYS1yZWNvcmQnO1xuZXhwb3J0ICogZnJvbSBcIi4vZG9tYWluLW5hbWVcIjtcbiJdfQ==
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import { Construct } from "constructs";
|
|
2
2
|
import { IBucket } from "aws-cdk-lib/aws-s3";
|
|
3
3
|
import { Distribution, Function, HttpVersion, OriginAccessIdentity, PriceClass, SecurityPolicyProtocol } from "aws-cdk-lib/aws-cloudfront";
|
|
4
|
-
import { ARecord
|
|
4
|
+
import { ARecord } from "aws-cdk-lib/aws-route53";
|
|
5
5
|
import { BucketDeployment } from "aws-cdk-lib/aws-s3-deployment";
|
|
6
6
|
import { BundlingOptions, Duration } from "aws-cdk-lib";
|
|
7
|
+
import { DomainNameProps } from "../../aws-route53";
|
|
7
8
|
export declare enum SourceType {
|
|
8
9
|
Custom = "Custom",
|
|
9
10
|
Hugo = "Hugo",
|
|
10
11
|
NpmDist = "NpmDist",
|
|
11
12
|
Static = "Static"
|
|
12
13
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Properties for WebsiteDomainName.
|
|
16
|
+
*/
|
|
17
|
+
export interface WebsiteDomainNameProps extends DomainNameProps {
|
|
16
18
|
readonly createRecord?: boolean;
|
|
17
|
-
constructor(prefix: string, zone: string | IHostedZone, createRecord?: boolean);
|
|
18
|
-
toString(): string;
|
|
19
|
-
toIdentifier(): string;
|
|
20
19
|
}
|
|
21
20
|
export interface WebsiteProps {
|
|
22
21
|
/**
|
|
@@ -35,7 +34,7 @@ export interface WebsiteProps {
|
|
|
35
34
|
/**
|
|
36
35
|
* The domain names to be serviced. The first domain name in the list is treated as the apex domain.
|
|
37
36
|
*/
|
|
38
|
-
readonly domainNames?:
|
|
37
|
+
readonly domainNames?: WebsiteDomainNameProps[];
|
|
39
38
|
/**
|
|
40
39
|
* Redirect traffic to the first domain in the list of domainNames.
|
|
41
40
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Website = exports.
|
|
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");
|
|
@@ -10,6 +10,7 @@ const aws_route53_targets_1 = require("aws-cdk-lib/aws-route53-targets");
|
|
|
10
10
|
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_s3_1 = require("../../aws-s3");
|
|
13
|
+
const aws_route53_2 = require("../../aws-route53");
|
|
13
14
|
var SourceType;
|
|
14
15
|
(function (SourceType) {
|
|
15
16
|
SourceType["Custom"] = "Custom";
|
|
@@ -17,24 +18,22 @@ var SourceType;
|
|
|
17
18
|
SourceType["NpmDist"] = "NpmDist";
|
|
18
19
|
SourceType["Static"] = "Static";
|
|
19
20
|
})(SourceType = exports.SourceType || (exports.SourceType = {}));
|
|
20
|
-
class DomainName {
|
|
21
|
-
constructor(prefix, zone, createRecord) {
|
|
22
|
-
this.prefix = prefix;
|
|
23
|
-
this.zone = zone;
|
|
24
|
-
this.createRecord = createRecord;
|
|
25
|
-
}
|
|
26
|
-
toString() {
|
|
27
|
-
return (this.prefix == "" ? "" : this.prefix + ".") + this.zone;
|
|
28
|
-
}
|
|
29
|
-
toIdentifier() {
|
|
30
|
-
return this.toString().replace(".", "-");
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.DomainName = DomainName;
|
|
34
21
|
class Website extends constructs_1.Construct {
|
|
35
22
|
constructor(scope, id, props) {
|
|
36
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j
|
|
23
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
37
24
|
super(scope, id);
|
|
25
|
+
const domainNames = aws_route53_2.DomainName.fromProps(props.domainNames);
|
|
26
|
+
let certificate = undefined;
|
|
27
|
+
if (props.certificateArn !== undefined) {
|
|
28
|
+
certificate = aws_certificatemanager_1.Certificate.fromCertificateArn(this, "Certificate", props.certificateArn);
|
|
29
|
+
}
|
|
30
|
+
else if (domainNames.length > 0) {
|
|
31
|
+
certificate = new aws_certificatemanager_1.Certificate(this, "Certificate", {
|
|
32
|
+
domainName: domainNames[0].toString(),
|
|
33
|
+
subjectAlternativeNames: aws_route53_2.DomainName.toStrings(domainNames).slice(1),
|
|
34
|
+
validation: aws_certificatemanager_1.CertificateValidation.fromDnsMultiZone(aws_route53_2.DomainName.toZoneMap(this, domainNames))
|
|
35
|
+
});
|
|
36
|
+
}
|
|
38
37
|
this.bucket = (_a = props.bucket) !== null && _a !== void 0 ? _a : new aws_s3_1.ExtendedBucket(this, "Bucket", {
|
|
39
38
|
removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY,
|
|
40
39
|
autoDeleteObjects: true
|
|
@@ -45,7 +44,7 @@ class Website extends constructs_1.Construct {
|
|
|
45
44
|
if (this.fallbackBucket) {
|
|
46
45
|
this.fallbackBucket.grantRead(this.originAccessIdentity);
|
|
47
46
|
}
|
|
48
|
-
this.apexDomain =
|
|
47
|
+
this.apexDomain = domainNames.length > 0 ? domainNames[0].toString() : "";
|
|
49
48
|
this.viewerRequestFunction = new aws_cloudfront_1.Function(this, "ViewerRequestFunction", {
|
|
50
49
|
code: aws_cloudfront_1.FunctionCode.fromInline(`
|
|
51
50
|
function handler(event) {
|
|
@@ -67,7 +66,7 @@ function handler(event) {
|
|
|
67
66
|
return event.request;
|
|
68
67
|
}`
|
|
69
68
|
.replace(/APEX_DOMAIN/g, this.apexDomain)
|
|
70
|
-
.replace(/MATCH_APEX/g, this.apexDomain !== "" && ((
|
|
69
|
+
.replace(/MATCH_APEX/g, this.apexDomain !== "" && ((_b = props.redirectToApexDomain) !== null && _b !== void 0 ? _b : true) ? "true" : "false"))
|
|
71
70
|
});
|
|
72
71
|
const bucketOrigin = new aws_cloudfront_origins_1.S3Origin(this.bucket, {
|
|
73
72
|
originAccessIdentity: this.originAccessIdentity
|
|
@@ -97,27 +96,21 @@ function handler(event) {
|
|
|
97
96
|
responsePagePath: "/404.html"
|
|
98
97
|
}
|
|
99
98
|
],
|
|
100
|
-
httpVersion: (
|
|
101
|
-
minimumProtocolVersion: (
|
|
99
|
+
httpVersion: (_c = props.httpVersion) !== null && _c !== void 0 ? _c : aws_cloudfront_1.HttpVersion.HTTP1_1,
|
|
100
|
+
minimumProtocolVersion: (_d = props.minimumProtocolVersion) !== null && _d !== void 0 ? _d : aws_cloudfront_1.SecurityPolicyProtocol.TLS_V1_2_2021,
|
|
102
101
|
defaultRootObject: "index.html",
|
|
103
|
-
certificate
|
|
104
|
-
domainNames:
|
|
102
|
+
certificate,
|
|
103
|
+
domainNames: aws_route53_2.DomainName.toStrings(domainNames),
|
|
105
104
|
enableIpv6: true,
|
|
106
|
-
priceClass: (
|
|
105
|
+
priceClass: (_e = props.priceClass) !== null && _e !== void 0 ? _e : aws_cloudfront_1.PriceClass.PRICE_CLASS_100
|
|
107
106
|
});
|
|
108
107
|
this.distributionUrl = `https://${(this.apexDomain != "" ? this.apexDomain : this.distribution.distributionDomainName)}`;
|
|
109
108
|
this.aRecords = [];
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
});
|
|
116
|
-
this.aRecords.push(new aws_route53_1.ARecord(this, domainName.toIdentifier(), {
|
|
117
|
-
zone: zone,
|
|
118
|
-
recordName: domainName.toString(),
|
|
119
|
-
target: aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution))
|
|
120
|
-
}));
|
|
109
|
+
for (let domainNameProps of (_f = props.domainNames) !== null && _f !== void 0 ? _f : []) {
|
|
110
|
+
if ((_g = domainNameProps.createRecord) !== null && _g !== void 0 ? _g : true) {
|
|
111
|
+
let domainName = aws_route53_2.DomainName.findDomainName(domainNameProps, domainNames);
|
|
112
|
+
if (domainName !== undefined) {
|
|
113
|
+
this.aRecords.push(domainName.createARecord(this, aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution))));
|
|
121
114
|
}
|
|
122
115
|
}
|
|
123
116
|
}
|
|
@@ -152,14 +145,14 @@ function handler(event) {
|
|
|
152
145
|
sources: [source],
|
|
153
146
|
destinationBucket: this.bucket,
|
|
154
147
|
distribution: this.distribution,
|
|
155
|
-
cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((
|
|
148
|
+
cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((_h = props.maxAge) !== null && _h !== void 0 ? _h : aws_cdk_lib_1.Duration.minutes(60))],
|
|
156
149
|
prune: false
|
|
157
150
|
});
|
|
158
151
|
if (this.fallbackBucket) {
|
|
159
152
|
this.fallbackDeployment = new aws_s3_deployment_1.BucketDeployment(this, "FallbackAssets", {
|
|
160
153
|
sources: [source],
|
|
161
154
|
destinationBucket: this.fallbackBucket,
|
|
162
|
-
cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((
|
|
155
|
+
cacheControl: [aws_s3_deployment_1.CacheControl.maxAge((_j = props.maxAge) !== null && _j !== void 0 ? _j : aws_cdk_lib_1.Duration.minutes(60))],
|
|
163
156
|
prune: false
|
|
164
157
|
});
|
|
165
158
|
}
|
|
@@ -190,4 +183,4 @@ Website.NPM_DIST_BUNDLING_OPTIONS = {
|
|
|
190
183
|
].join(" && ")
|
|
191
184
|
]
|
|
192
185
|
};
|
|
193
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnNpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXFDO0FBRXJDLCtEQVVvQztBQUNwQywrRUFBeUU7QUFDekUsK0VBQStEO0FBQy9ELHlEQUF1RjtBQUN2Rix5RUFBaUU7QUFDakUscUVBQXFGO0FBQ3JGLDZDQUFrRjtBQUNsRix5Q0FBNEM7QUFFNUMsSUFBWSxVQUtYO0FBTEQsV0FBWSxVQUFVO0lBQ3BCLCtCQUFpQixDQUFBO0lBQ2pCLDJCQUFhLENBQUE7SUFDYixpQ0FBbUIsQ0FBQTtJQUNuQiwrQkFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBTFcsVUFBVSxHQUFWLGtCQUFVLEtBQVYsa0JBQVUsUUFLckI7QUFFRCxNQUFhLFVBQVU7SUFLckIsWUFBWSxNQUFjLEVBQUUsSUFBMEIsRUFBRSxZQUFzQjtRQUM1RSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtJQUNsQyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbEUsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQWxCRCxnQ0FrQkM7QUErRUQsTUFBYSxPQUFRLFNBQVEsc0JBQVM7SUF1Q3BDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBbUI7O1FBQzNELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLE1BQU0sU0FBRyxLQUFLLENBQUMsTUFBTSxtQ0FBSSxJQUFJLHVCQUFjLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUMvRCxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO1lBQ3BDLGlCQUFpQixFQUFFLElBQUk7U0FDeEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO1FBRTNDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLHFDQUFvQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDMUQ7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFdBQVcsMENBQUcsQ0FBQyxFQUFFLFFBQVEsT0FBTSxFQUFFLENBQUM7UUFFM0QsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUkseUJBQVEsQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUU7WUFDdkUsSUFBSSxFQUFFLDZCQUFZLENBQUMsVUFBVSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFrQmxDO2lCQUNPLE9BQU8sQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQztpQkFDeEMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsVUFBVSxLQUFLLEVBQUUsSUFBSSxPQUFDLEtBQUssQ0FBQyxvQkFBb0IsbUNBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDNUcsQ0FBQyxDQUFDO1FBRUgsTUFBTSxZQUFZLEdBQUcsSUFBSSxpQ0FBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDN0Msb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtTQUNoRCxDQUFDLENBQUM7UUFFSCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksaUNBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQzdHLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7U0FDaEQsQ0FBQyxDQUFDO1FBRUgsTUFBTSxhQUFhLEdBQUcsb0JBQW9CLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksb0NBQVcsQ0FBQztZQUN4RixhQUFhLEVBQUUsWUFBWTtZQUMzQixjQUFjLEVBQUUsb0JBQW9CO1NBQ3JDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2QkFBWSxDQUFDLElBQUksRUFBRSxjQUFjLEVBQUU7WUFDekQsZUFBZSxFQUFFO2dCQUNmLE1BQU0sRUFBRSxhQUFhO2dCQUNyQixvQkFBb0IsRUFBRSxxQ0FBb0IsQ0FBQyxpQkFBaUI7Z0JBQzVELG9CQUFvQixFQUFFO29CQUNwQjt3QkFDRSxRQUFRLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjt3QkFDcEMsU0FBUyxFQUFFLGtDQUFpQixDQUFDLGNBQWM7cUJBQzVDO2lCQUNGO2FBQ0Y7WUFDRCxjQUFjLEVBQUU7Z0JBQ2Q7b0JBQ0UsVUFBVSxFQUFFLEdBQUc7b0JBQ2Ysa0JBQWtCLEVBQUUsR0FBRztvQkFDdkIsZ0JBQWdCLEVBQUUsV0FBVztpQkFDOUI7YUFDRjtZQUNELFdBQVcsUUFBRSxLQUFLLENBQUMsV0FBVyxtQ0FBRSw0QkFBVyxDQUFDLE9BQU87WUFDbkQsc0JBQXNCLFFBQUUsS0FBSyxDQUFDLHNCQUFzQixtQ0FBRSx1Q0FBc0IsQ0FBQyxhQUFhO1lBQzFGLGlCQUFpQixFQUFFLFlBQVk7WUFDL0IsV0FBVyxFQUFFLENBQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGNBQWMsS0FBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsb0NBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDdkksV0FBVyxRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxXQUFXLDBDQUFFLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzNFLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFVBQVUsUUFBRSxLQUFLLENBQUMsVUFBVSxtQ0FBRSwyQkFBVSxDQUFDLGVBQWU7U0FDekQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGVBQWUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFBO1FBRXhILElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRW5CLElBQUksQ0FBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsV0FBVyxLQUFJLFNBQVMsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkUsS0FBSyxJQUFJLFVBQVUsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO2dCQUN4QyxVQUFJLFVBQVUsQ0FBQyxZQUFZLG1DQUFFLElBQUksRUFBRTtvQkFDakMsSUFBSSxJQUFJLEdBQUcsT0FBTyxVQUFVLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsd0JBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE9BQU8sR0FBRyxVQUFVLENBQUMsWUFBWSxFQUFFLEVBQUU7d0JBQ2xJLFVBQVUsRUFBRSxVQUFVLENBQUMsSUFBSTtxQkFDNUIsQ0FBQyxDQUFDO29CQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUkscUJBQU8sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFlBQVksRUFBRSxFQUFFO3dCQUM5RCxJQUFJLEVBQUUsSUFBSTt3QkFDVixVQUFVLEVBQUUsVUFBVSxDQUFDLFFBQVEsRUFBRTt3QkFDakMsTUFBTSxFQUFFLDBCQUFZLENBQUMsU0FBUyxDQUFDLElBQUksc0NBQWdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO3FCQUN4RSxDQUFDLENBQUMsQ0FBQztpQkFDTDthQUNGO1NBQ0Y7UUFFRCxJQUFJLGVBQWUsR0FBZ0MsU0FBUyxDQUFBO1FBRTVELElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUU7Z0JBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNERBQTRELENBQUMsQ0FBQzthQUMvRTtZQUNELGVBQWUsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUE7U0FDOUM7UUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUMxQyxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsRUFBRTtnQkFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO2FBQzdFO1NBQ0Y7UUFFRCxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLElBQUksRUFBRTtZQUN4QyxlQUFlLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFBO1lBQy9DLElBQUksS0FBSyxDQUFDLHFCQUFxQixFQUFFO2dCQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7YUFDM0U7U0FDRjthQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxVQUFVLENBQUMsT0FBTyxFQUFFO1lBQ2xELGVBQWUsR0FBRyxPQUFPLENBQUMseUJBQXlCLENBQUE7WUFDbkQsSUFBSSxLQUFLLENBQUMscUJBQXFCLEVBQUU7Z0JBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQzthQUM5RTtTQUNGO1FBRUQsTUFBTSxNQUFNLEdBQUcsMEJBQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRTtZQUNqRCxRQUFRLEVBQUUsZUFBZTtTQUMxQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksb0NBQWdCLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUNyRCxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUM7WUFDakIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDOUIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLFlBQVksRUFBRSxDQUFDLGdDQUFZLENBQUMsTUFBTSxPQUFDLEtBQUssQ0FBQyxNQUFNLG1DQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkUsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksb0NBQWdCLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUNyRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0JBQ2pCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUN0QyxZQUFZLEVBQUUsQ0FBQyxnQ0FBWSxDQUFDLE1BQU0sT0FBQyxLQUFLLENBQUMsTUFBTSxtQ0FBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUN2RSxLQUFLLEVBQUUsS0FBSzthQUNiLENBQUMsQ0FBQTtTQUNIO0lBQ0gsQ0FBQzs7QUExTEgsMEJBMkxDO0FBekxDOztHQUVHO0FBQ2EsNkJBQXFCLEdBQW9CO0lBQ3ZELEtBQUssRUFBRSx5QkFBVyxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQztJQUMxRCxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUUsZUFBZTtLQUN0QjtDQUNGLENBQUE7QUFFRDs7O0dBR0c7QUFDYSxpQ0FBeUIsR0FBb0I7SUFDM0QsS0FBSyxFQUFFLHlCQUFXLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pELE9BQU8sRUFBRTtRQUNQLHlDQUF5QztRQUN6QyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ1Ysb0JBQW9CO1lBQ3BCLDJDQUEyQztZQUMzQyxjQUFjO1NBQ2YsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0tBQ2Y7Q0FDRixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0J1Y2tldCwgSUJ1Y2tldH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zM1wiO1xuaW1wb3J0IHtcbiAgRGlzdHJpYnV0aW9uLFxuICBGdW5jdGlvbixcbiAgRnVuY3Rpb25Db2RlLFxuICBGdW5jdGlvbkV2ZW50VHlwZSxcbiAgSHR0cFZlcnNpb24sXG4gIE9yaWdpbkFjY2Vzc0lkZW50aXR5LFxuICBQcmljZUNsYXNzLFxuICBTZWN1cml0eVBvbGljeVByb3RvY29sLFxuICBWaWV3ZXJQcm90b2NvbFBvbGljeVxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcbmltcG9ydCB7T3JpZ2luR3JvdXAsIFMzT3JpZ2lufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQtb3JpZ2luc1wiO1xuaW1wb3J0IHtDZXJ0aWZpY2F0ZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXJcIjtcbmltcG9ydCB7QVJlY29yZCwgSG9zdGVkWm9uZSwgSUhvc3RlZFpvbmUsIFJlY29yZFRhcmdldH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzXCI7XG5pbXBvcnQge0Nsb3VkRnJvbnRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1My10YXJnZXRzXCI7XG5pbXBvcnQge0J1Y2tldERlcGxveW1lbnQsIENhY2hlQ29udHJvbCwgU291cmNlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXMzLWRlcGxveW1lbnRcIjtcbmltcG9ydCB7QnVuZGxpbmdPcHRpb25zLCBEb2NrZXJJbWFnZSwgRHVyYXRpb24sIFJlbW92YWxQb2xpY3l9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtFeHRlbmRlZEJ1Y2tldH0gZnJvbSBcIi4uLy4uL2F3cy1zM1wiO1xuXG5leHBvcnQgZW51bSBTb3VyY2VUeXBlIHtcbiAgQ3VzdG9tID0gXCJDdXN0b21cIixcbiAgSHVnbyA9IFwiSHVnb1wiLFxuICBOcG1EaXN0ID0gXCJOcG1EaXN0XCIsXG4gIFN0YXRpYyA9IFwiU3RhdGljXCJcbn1cblxuZXhwb3J0IGNsYXNzIERvbWFpbk5hbWUge1xuICByZWFkb25seSBwcmVmaXg6IHN0cmluZztcbiAgcmVhZG9ubHkgem9uZTogc3RyaW5nIHwgSUhvc3RlZFpvbmU7XG4gIHJlYWRvbmx5IGNyZWF0ZVJlY29yZD86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJlZml4OiBzdHJpbmcsIHpvbmU6IHN0cmluZyB8IElIb3N0ZWRab25lLCBjcmVhdGVSZWNvcmQ/OiBib29sZWFuKSB7XG4gICAgdGhpcy5wcmVmaXggPSBwcmVmaXg7XG4gICAgdGhpcy56b25lID0gem9uZTtcbiAgICB0aGlzLmNyZWF0ZVJlY29yZCA9IGNyZWF0ZVJlY29yZFxuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgcmV0dXJuICh0aGlzLnByZWZpeCA9PSBcIlwiID8gXCJcIiA6IHRoaXMucHJlZml4ICsgXCIuXCIpICsgdGhpcy56b25lO1xuICB9XG5cbiAgdG9JZGVudGlmaWVyKCkge1xuICAgIHJldHVybiB0aGlzLnRvU3RyaW5nKCkucmVwbGFjZShcIi5cIiwgXCItXCIpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2Vic2l0ZVByb3BzIHtcblxuICAvKipcbiAgICogQnVja2V0IHRvIHVzZSB0byBzdG9yZSB3ZWJzaXRlIGNvbnRlbnQuIElmIG9uZSBpcyBub3QgcHJvdmlkZWQsIG9uZSB3aWxsIGJlIGdlbmVyYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldD86IElCdWNrZXQ7XG5cbiAgLyoqXG4gICAqIEJ1Y2tldCB0byB1c2UgaWYgdGhlIHByaW1hcnkgYnVja2V0IGZhaWxzLiBJZiBvbmUgaXMgbm90IHByb3ZpZGVkIGEgZmFsbGJhY2sgaXMgbm90IHNldHVwLlxuICAgKi9cbiAgcmVhZG9ubHkgZmFsbGJhY2tCdWNrZXQ/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIHRvIHRoZSBBQ00gQ2VydGlmaWNhdGUgdG8gdXNlIG9uIHRoZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi4gSWYgb25lIGlzIG5vdFxuICAgKiBwcm92aWRlZCBhbmQgZG9tYWluTmFtZXMgaXMgcG9wdWxhdGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZUFybj86IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWVzIHRvIGJlIHNlcnZpY2VkLiBUaGUgZmlyc3QgZG9tYWluIG5hbWUgaW4gdGhlIGxpc3QgaXMgdHJlYXRlZCBhcyB0aGUgYXBleCBkb21haW4uXG4gICAqL1xuICByZWFkb25seSBkb21haW5OYW1lcz86IERvbWFpbk5hbWVbXVxuXG4gIC8qKlxuICAgKiBSZWRpcmVjdCB0cmFmZmljIHRvIHRoZSBmaXJzdCBkb21haW4gaW4gdGhlIGxpc3Qgb2YgZG9tYWluTmFtZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHJlZGlyZWN0VG9BcGV4RG9tYWluPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJpY2UgY2xhc3MgZm9yIHRoZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgUHJpY2VDbGFzcy5QUklDRV9DTEFTU18xMDBcbiAgICovXG4gIHJlYWRvbmx5IHByaWNlQ2xhc3M/OiBQcmljZUNsYXNzXG5cbiAgLyoqXG4gICAqIE1pbmltdW0gcHJvdG9jb2wgdmVyc2lvbiB0byBhbGxvdy5cbiAgICpcbiAgICogQGRlZmF1bHQgU2VjdXJpdHlQb2xpY3lQcm90b2NvbC5UTFNfVjFfMl8yMDIxLFxuICAgKi9cbiAgcmVhZG9ubHkgbWluaW11bVByb3RvY29sVmVyc2lvbj86IFNlY3VyaXR5UG9saWN5UHJvdG9jb2w7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gSFRUUCB2ZXJzaW9uIHRvIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBIdHRwVmVyc2lvbi5IVFRQMV8xXG4gICAqL1xuICByZWFkb25seSBodHRwVmVyc2lvbj86IEh0dHBWZXJzaW9uO1xuXG4gIC8qKlxuICAgKiBDYWNoZS1jb250cm9sIG1heCBhZ2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IER1cmF0aW9uLm1pbnV0ZXMoNjApXG4gICAqL1xuICByZWFkb25seSBtYXhBZ2U/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIHNvdXJjZSB0eXBlIG9mIHRoZSB3ZWJzaXRlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBTb3VyY2VUeXBlLlN0YXRpY1xuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlVHlwZT86IFNvdXJjZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIHdlYnNpdGUgc291cmNlcyBhcmUgbG9jYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZURpcmVjdG9yeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gYnVuZGxpbmcgb3B0aW9ucyB0byB1c2UgdG8gYnVuZGxlIHdlYnNpdGUgc291cmNlcy4gVGhlIHNvdXJjZVR5cGVcbiAgICogbXVzdCBiZSBzZXQgdG8gU291cmNlVHlwZS5DdXN0b20uXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VCdW5kbGluZ09wdGlvbnM/OiBCdW5kbGluZ09wdGlvbnNcbn1cblxuZXhwb3J0IGNsYXNzIFdlYnNpdGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBidW5kbGluZyBvcHRpb25zIGZvciBTb3VyY2VUeXBlLkh1Z28uXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgSFVHT19CVU5ETElOR19PUFRJT05TOiBCdW5kbGluZ09wdGlvbnMgPSB7XG4gICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeShcImtsYWtlZ2cvaHVnbzpsYXRlc3QtZXh0XCIpLFxuICAgIGNvbW1hbmQ6IFtcbiAgICAgIFwiLWRcIiwgXCIvYXNzZXQtb3V0cHV0XCJcbiAgICBdXG4gIH1cblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgYnVuZGxpbmcgb3B0aW9ucyBmb3IgU291cmNlVHlwZS5OcG1EaXN0LiBJdFwicyBleHBlY3RlZCB0aGF0IFwibnBtIHJ1biBkaXN0XCIgY29tbWFuZFxuICAgKiB3aWxsIHBsYWNlIGZpbGVzIGluICR7Q0RLX0JVTkRMSU5HX09VVFBVVF9ESVJ9LiBFeGFtcGxlOiBcIm5nIGJ1aWxkIC0tb3V0cHV0LXBhdGg9L2Fzc2V0LW91dHB1dFwiXG4gICAqL1xuICBzdGF0aWMgcmVhZG9ubHkgTlBNX0RJU1RfQlVORExJTkdfT1BUSU9OUzogQnVuZGxpbmdPcHRpb25zID0ge1xuICAgIGltYWdlOiBEb2NrZXJJbWFnZS5mcm9tUmVnaXN0cnkoXCJub2RlOjE2LWFscGluZVwiKSxcbiAgICBjb21tYW5kOiBbXG4gICAgICAvLyBUT0RPIEZpZ3VyZSBvdXQgaG93IHRvIGNhY2hlIC5ucG1jYWNoZVxuICAgICAgXCJzaFwiLCBcIi1jXCIsIFtcbiAgICAgICAgXCJta2RpciAtcCAubnBtY2FjaGVcIixcbiAgICAgICAgXCJucG0gY2kgLS1jYWNoZSAubnBtY2FjaGUgLS1wcmVmZXItb2ZmbGluZVwiLFxuICAgICAgICBcIm5wbSBydW4gZGlzdFwiXG4gICAgICBdLmpvaW4oXCIgJiYgXCIpXG4gICAgXVxuICB9XG5cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuICByZWFkb25seSBmYWxsYmFja0J1Y2tldD86IElCdWNrZXQ7XG4gIHJlYWRvbmx5IG9yaWdpbkFjY2Vzc0lkZW50aXR5OiBPcmlnaW5BY2Nlc3NJZGVudGl0eTtcbiAgcmVhZG9ubHkgYXBleERvbWFpbjogc3RyaW5nO1xuICByZWFkb25seSB2aWV3ZXJSZXF1ZXN0RnVuY3Rpb246IEZ1bmN0aW9uO1xuICByZWFkb25seSBkaXN0cmlidXRpb246IERpc3RyaWJ1dGlvbjtcbiAgcmVhZG9ubHkgZGlzdHJpYnV0aW9uVXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFSZWNvcmRzOiBBUmVjb3JkW107XG4gIHJlYWRvbmx5IGRlcGxveW1lbnQ6IEJ1Y2tldERlcGxveW1lbnQ7XG4gIHJlYWRvbmx5IGZhbGxiYWNrRGVwbG95bWVudD86IEJ1Y2tldERlcGxveW1lbnQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFdlYnNpdGVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmJ1Y2tldCA9IHByb3BzLmJ1Y2tldCA/PyBuZXcgRXh0ZW5kZWRCdWNrZXQodGhpcywgXCJCdWNrZXRcIiwge1xuICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgICAgYXV0b0RlbGV0ZU9iamVjdHM6IHRydWVcbiAgICB9KTtcbiAgICB0aGlzLmZhbGxiYWNrQnVja2V0ID0gcHJvcHMuZmFsbGJhY2tCdWNrZXQ7XG5cbiAgICB0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5ID0gbmV3IE9yaWdpbkFjY2Vzc0lkZW50aXR5KHRoaXMsIFwiQWNjZXNzXCIpO1xuICAgIHRoaXMuYnVja2V0LmdyYW50UmVhZCh0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5KTtcbiAgICBpZiAodGhpcy5mYWxsYmFja0J1Y2tldCkge1xuICAgICAgdGhpcy5mYWxsYmFja0J1Y2tldC5ncmFudFJlYWQodGhpcy5vcmlnaW5BY2Nlc3NJZGVudGl0eSk7XG4gICAgfVxuXG4gICAgdGhpcy5hcGV4RG9tYWluID0gcHJvcHM/LmRvbWFpbk5hbWVzPy5bMF0udG9TdHJpbmcoKSB8fCBcIlwiO1xuXG4gICAgdGhpcy52aWV3ZXJSZXF1ZXN0RnVuY3Rpb24gPSBuZXcgRnVuY3Rpb24odGhpcywgXCJWaWV3ZXJSZXF1ZXN0RnVuY3Rpb25cIiwge1xuICAgICAgY29kZTogRnVuY3Rpb25Db2RlLmZyb21JbmxpbmUoYFxuZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICB2YXIgaG9zdCA9IGV2ZW50LnJlcXVlc3QuaGVhZGVycy5ob3N0LnZhbHVlO1xuICB2YXIgdXJpID0gZXZlbnQucmVxdWVzdC51cmk7XG4gIHZhciBtYXRjaEFwZXggPSBNQVRDSF9BUEVYO1xuICBpZiAobWF0Y2hBcGV4ICYmIGhvc3QgIT09IFwiQVBFWF9ET01BSU5cIikge1xuICAgIHJldHVybiB7XG4gICAgICBzdGF0dXNDb2RlOiAzMDEsXG4gICAgICBzdGF0dXNEZXNjcmlwdGlvbjogXCJQZXJtYW5lbnRseSBtb3ZlZFwiLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICBcImxvY2F0aW9uXCI6IHsgXCJ2YWx1ZVwiOiBcImh0dHBzOi8vQVBFWF9ET01BSU5cIiArIHVyaSB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGlmICh1cmkuZW5kc1dpdGgoXCIvXCIpKSB7XG4gICAgZXZlbnQucmVxdWVzdC51cmkgPSB1cmkgKyBcImluZGV4Lmh0bWxcIjtcbiAgfVxuICByZXR1cm4gZXZlbnQucmVxdWVzdDtcbn1gXG4gICAgICAgIC5yZXBsYWNlKC9BUEVYX0RPTUFJTi9nLCB0aGlzLmFwZXhEb21haW4pXG4gICAgICAgIC5yZXBsYWNlKC9NQVRDSF9BUEVYL2csIHRoaXMuYXBleERvbWFpbiAhPT0gXCJcIiAmJiAocHJvcHMucmVkaXJlY3RUb0FwZXhEb21haW4/P3RydWUpID8gXCJ0cnVlXCIgOiBcImZhbHNlXCIpKVxuICAgIH0pO1xuXG4gICAgY29uc3QgYnVja2V0T3JpZ2luID0gbmV3IFMzT3JpZ2luKHRoaXMuYnVja2V0LCB7XG4gICAgICBvcmlnaW5BY2Nlc3NJZGVudGl0eTogdGhpcy5vcmlnaW5BY2Nlc3NJZGVudGl0eVxuICAgIH0pO1xuXG4gICAgY29uc3QgZmFsbGJhY2tCdWNrZXRPcmlnaW4gPSB0aGlzLmZhbGxiYWNrQnVja2V0ID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBuZXcgUzNPcmlnaW4odGhpcy5mYWxsYmFja0J1Y2tldCwge1xuICAgICAgb3JpZ2luQWNjZXNzSWRlbnRpdHk6IHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHlcbiAgICB9KTtcblxuICAgIGNvbnN0IGRlZmF1bHRPcmlnaW4gPSBmYWxsYmFja0J1Y2tldE9yaWdpbiA9PT0gdW5kZWZpbmVkID8gYnVja2V0T3JpZ2luIDogbmV3IE9yaWdpbkdyb3VwKHtcbiAgICAgIHByaW1hcnlPcmlnaW46IGJ1Y2tldE9yaWdpbixcbiAgICAgIGZhbGxiYWNrT3JpZ2luOiBmYWxsYmFja0J1Y2tldE9yaWdpblxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXN0cmlidXRpb24gPSBuZXcgRGlzdHJpYnV0aW9uKHRoaXMsIFwiRGlzdHJpYnV0aW9uXCIsIHtcbiAgICAgIGRlZmF1bHRCZWhhdmlvcjoge1xuICAgICAgICBvcmlnaW46IGRlZmF1bHRPcmlnaW4sXG4gICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgICAgZnVuY3Rpb25Bc3NvY2lhdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBmdW5jdGlvbjogdGhpcy52aWV3ZXJSZXF1ZXN0RnVuY3Rpb24sXG4gICAgICAgICAgICBldmVudFR5cGU6IEZ1bmN0aW9uRXZlbnRUeXBlLlZJRVdFUl9SRVFVRVNUXG4gICAgICAgICAgfVxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgZXJyb3JSZXNwb25zZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGh0dHBTdGF0dXM6IDQwNCxcbiAgICAgICAgICByZXNwb25zZUh0dHBTdGF0dXM6IDQwNCxcbiAgICAgICAgICByZXNwb25zZVBhZ2VQYXRoOiBcIi80MDQuaHRtbFwiXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBodHRwVmVyc2lvbjogcHJvcHMuaHR0cFZlcnNpb24/P0h0dHBWZXJzaW9uLkhUVFAxXzEsXG4gICAgICBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uOiBwcm9wcy5taW5pbXVtUHJvdG9jb2xWZXJzaW9uPz9TZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAgICBkZWZhdWx0Um9vdE9iamVjdDogXCJpbmRleC5odG1sXCIsXG4gICAgICBjZXJ0aWZpY2F0ZTogcHJvcHM/LmNlcnRpZmljYXRlQXJuID09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IENlcnRpZmljYXRlLmZyb21DZXJ0aWZpY2F0ZUFybih0aGlzLCBcIkNlcnRpZmljYXRlXCIsIHByb3BzLmNlcnRpZmljYXRlQXJuKSxcbiAgICAgIGRvbWFpbk5hbWVzOiBwcm9wcz8uZG9tYWluTmFtZXM/Lm1hcCgoZG9tYWluTmFtZSkgPT4gZG9tYWluTmFtZS50b1N0cmluZygpKSxcbiAgICAgIGVuYWJsZUlwdjY6IHRydWUsXG4gICAgICBwcmljZUNsYXNzOiBwcm9wcy5wcmljZUNsYXNzPz9QcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMFxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXN0cmlidXRpb25VcmwgPSBgaHR0cHM6Ly8keyh0aGlzLmFwZXhEb21haW4gIT0gXCJcIiA/IHRoaXMuYXBleERvbWFpbiA6IHRoaXMuZGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbkRvbWFpbk5hbWUpfWBcblxuICAgIHRoaXMuYVJlY29yZHMgPSBbXTtcblxuICAgIGlmIChwcm9wcz8uZG9tYWluTmFtZXMgIT0gdW5kZWZpbmVkICYmIHByb3BzLmRvbWFpbk5hbWVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAobGV0IGRvbWFpbk5hbWUgb2YgcHJvcHMuZG9tYWluTmFtZXMpIHtcbiAgICAgICAgaWYgKGRvbWFpbk5hbWUuY3JlYXRlUmVjb3JkPz90cnVlKSB7XG4gICAgICAgICAgbGV0IHpvbmUgPSB0eXBlb2YgZG9tYWluTmFtZS56b25lICE9PSBcInN0cmluZ1wiID8gZG9tYWluTmFtZS56b25lIDogSG9zdGVkWm9uZS5mcm9tTG9va3VwKHRoaXMsIFwiem9uZS1cIiArIGRvbWFpbk5hbWUudG9JZGVudGlmaWVyKCksIHtcbiAgICAgICAgICAgIGRvbWFpbk5hbWU6IGRvbWFpbk5hbWUuem9uZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuYVJlY29yZHMucHVzaChuZXcgQVJlY29yZCh0aGlzLCBkb21haW5OYW1lLnRvSWRlbnRpZmllcigpLCB7XG4gICAgICAgICAgICB6b25lOiB6b25lLFxuICAgICAgICAgICAgcmVjb3JkTmFtZTogZG9tYWluTmFtZS50b1N0cmluZygpLFxuICAgICAgICAgICAgdGFyZ2V0OiBSZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyBDbG91ZEZyb250VGFyZ2V0KHRoaXMuZGlzdHJpYnV0aW9uKSlcbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgYnVuZGxpbmdPcHRpb25zOiBCdW5kbGluZ09wdGlvbnMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWRcblxuICAgIGlmIChwcm9wcy5zb3VyY2VUeXBlID09PSBTb3VyY2VUeXBlLkN1c3RvbSkge1xuICAgICAgaWYgKCFwcm9wcy5zb3VyY2VCdW5kbGluZ09wdGlvbnMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwic291cmNlQnVuZGxpbmdPcHRpb25zIGlzIHJlcXVpcmVkIGlmIHNvdXJjZSB0eXBlIGlzIEN1c3RvbVwiKTtcbiAgICAgIH1cbiAgICAgIGJ1bmRsaW5nT3B0aW9ucyA9IHByb3BzLnNvdXJjZUJ1bmRsaW5nT3B0aW9uc1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5zb3VyY2VUeXBlID09PSBTb3VyY2VUeXBlLlN0YXRpYykge1xuICAgICAgaWYgKHByb3BzLnNvdXJjZUJ1bmRsaW5nT3B0aW9ucykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgdXNlIHNvdXJjZUJ1bmRsaW5nT3B0aW9ucyB3aXRoIHNvdXJjZSB0eXBlIFN0YXRpY1wiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuc291cmNlVHlwZSA9PT0gU291cmNlVHlwZS5IdWdvKSB7XG4gICAgICBidW5kbGluZ09wdGlvbnMgPSBXZWJzaXRlLkhVR09fQlVORExJTkdfT1BUSU9OU1xuICAgICAgaWYgKHByb3BzLnNvdXJjZUJ1bmRsaW5nT3B0aW9ucykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgdXNlIHNvdXJjZUJ1bmRsaW5nT3B0aW9ucyB3aXRoIHNvdXJjZSB0eXBlIEh1Z29cIik7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChwcm9wcy5zb3VyY2VUeXBlID09PSBTb3VyY2VUeXBlLk5wbURpc3QpIHtcbiAgICAgIGJ1bmRsaW5nT3B0aW9ucyA9IFdlYnNpdGUuTlBNX0RJU1RfQlVORExJTkdfT1BUSU9OU1xuICAgICAgaWYgKHByb3BzLnNvdXJjZUJ1bmRsaW5nT3B0aW9ucykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgdXNlIHNvdXJjZUJ1bmRsaW5nT3B0aW9ucyB3aXRoIHNvdXJjZSB0eXBlIE5wbURpc3RcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgc291cmNlID0gU291cmNlLmFzc2V0KHByb3BzLnNvdXJjZURpcmVjdG9yeSwge1xuICAgICAgYnVuZGxpbmc6IGJ1bmRsaW5nT3B0aW9uc1xuICAgIH0pO1xuXG4gICAgdGhpcy5kZXBsb3ltZW50ID0gbmV3IEJ1Y2tldERlcGxveW1lbnQodGhpcywgXCJBc3NldHNcIiwge1xuICAgICAgc291cmNlczogW3NvdXJjZV0sXG4gICAgICBkZXN0aW5hdGlvbkJ1Y2tldDogdGhpcy5idWNrZXQsXG4gICAgICBkaXN0cmlidXRpb246IHRoaXMuZGlzdHJpYnV0aW9uLFxuICAgICAgY2FjaGVDb250cm9sOiBbQ2FjaGVDb250cm9sLm1heEFnZShwcm9wcy5tYXhBZ2U/P0R1cmF0aW9uLm1pbnV0ZXMoNjApKV0sXG4gICAgICBwcnVuZTogZmFsc2VcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmZhbGxiYWNrQnVja2V0KSB7XG4gICAgICB0aGlzLmZhbGxiYWNrRGVwbG95bWVudCA9IG5ldyBCdWNrZXREZXBsb3ltZW50KHRoaXMsIFwiRmFsbGJhY2tBc3NldHNcIiwge1xuICAgICAgICBzb3VyY2VzOiBbc291cmNlXSxcbiAgICAgICAgZGVzdGluYXRpb25CdWNrZXQ6IHRoaXMuZmFsbGJhY2tCdWNrZXQsXG4gICAgICAgIGNhY2hlQ29udHJvbDogW0NhY2hlQ29udHJvbC5tYXhBZ2UocHJvcHMubWF4QWdlPz9EdXJhdGlvbi5taW51dGVzKDYwKSldLFxuICAgICAgICBwcnVuZTogZmFsc2VcbiAgICAgIH0pXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnNpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXFDO0FBRXJDLCtEQVVvQztBQUNwQywrRUFBeUU7QUFDekUsK0VBQW9HO0FBQ3BHLHlEQUE4RDtBQUM5RCx5RUFBaUU7QUFDakUscUVBQXFGO0FBQ3JGLDZDQUFrRjtBQUNsRix5Q0FBNEM7QUFDNUMsbURBQThEO0FBRTlELElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQiwrQkFBaUIsQ0FBQTtJQUNqQiwyQkFBYSxDQUFBO0lBQ2IsaUNBQW1CLENBQUE7SUFDbkIsK0JBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLFVBQVUsR0FBVixrQkFBVSxLQUFWLGtCQUFVLFFBS3JCO0FBd0ZELE1BQWEsT0FBUSxTQUFRLHNCQUFTO0lBdUNwQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW1COztRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sV0FBVyxHQUFHLHdCQUFVLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU1RCxJQUFJLFdBQVcsR0FBNkIsU0FBUyxDQUFDO1FBQ3RELElBQUksS0FBSyxDQUFDLGNBQWMsS0FBSyxTQUFTLEVBQUU7WUFDdEMsV0FBVyxHQUFHLG9DQUFXLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUE7U0FDeEY7YUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2pDLFdBQVcsR0FBRyxJQUFJLG9DQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtnQkFDakQsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3JDLHVCQUF1QixFQUFFLHdCQUFVLENBQUMsU0FBUyxDQUFD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RUFBRSxDQUFDLGdDQUFZLENBQUMsTUFBTSxPQUFDLEtBQUssQ0FBQyxNQUFNLG1DQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkUsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksb0NBQWdCLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUNyRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0JBQ2pCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUN0QyxZQUFZLEVBQUUsQ0FBQyxnQ0FBWSxDQUFDLE1BQU0sT0FBQyxLQUFLLENBQUMsTUFBTSxtQ0FBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUN2RSxLQUFLLEVBQUUsS0FBSzthQUNiLENBQUMsQ0FBQTtTQUNIO0lBQ0gsQ0FBQzs7QUFsTUgsMEJBbU1DO0FBak1DOztHQUVHO0FBQ2EsNkJBQXFCLEdBQW9CO0lBQ3ZELEtBQUssRUFBRSx5QkFBVyxDQUFDLFlBQVksQ0FBQyx5QkFBeUIsQ0FBQztJQUMxRCxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUUsZUFBZTtLQUN0QjtDQUNGLENBQUE7QUFFRDs7O0dBR0c7QUFDYSxpQ0FBeUIsR0FBb0I7SUFDM0QsS0FBSyxFQUFFLHlCQUFXLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pELE9BQU8sRUFBRTtRQUNQLHlDQUF5QztRQUN6QyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQ1Ysb0JBQW9CO1lBQ3BCLDJDQUEyQztZQUMzQyxjQUFjO1NBQ2YsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0tBQ2Y7Q0FDRixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0lCdWNrZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCB7XG4gIERpc3RyaWJ1dGlvbixcbiAgRnVuY3Rpb24sXG4gIEZ1bmN0aW9uQ29kZSxcbiAgRnVuY3Rpb25FdmVudFR5cGUsXG4gIEh0dHBWZXJzaW9uLFxuICBPcmlnaW5BY2Nlc3NJZGVudGl0eSxcbiAgUHJpY2VDbGFzcyxcbiAgU2VjdXJpdHlQb2xpY3lQcm90b2NvbCxcbiAgVmlld2VyUHJvdG9jb2xQb2xpY3lcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250XCI7XG5pbXBvcnQge09yaWdpbkdyb3VwLCBTM09yaWdpbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnNcIjtcbmltcG9ydCB7Q2VydGlmaWNhdGUsIENlcnRpZmljYXRlVmFsaWRhdGlvbiwgSUNlcnRpZmljYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHtBUmVjb3JkLCBSZWNvcmRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtDbG91ZEZyb250VGFyZ2V0fSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0c1wiO1xuaW1wb3J0IHtCdWNrZXREZXBsb3ltZW50LCBDYWNoZUNvbnRyb2wsIFNvdXJjZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zMy1kZXBsb3ltZW50XCI7XG5pbXBvcnQge0J1bmRsaW5nT3B0aW9ucywgRG9ja2VySW1hZ2UsIER1cmF0aW9uLCBSZW1vdmFsUG9saWN5fSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7RXh0ZW5kZWRCdWNrZXR9IGZyb20gXCIuLi8uLi9hd3MtczNcIjtcbmltcG9ydCB7RG9tYWluTmFtZSwgRG9tYWluTmFtZVByb3BzfSBmcm9tIFwiLi4vLi4vYXdzLXJvdXRlNTNcIjtcblxuZXhwb3J0IGVudW0gU291cmNlVHlwZSB7XG4gIEN1c3RvbSA9IFwiQ3VzdG9tXCIsXG4gIEh1Z28gPSBcIkh1Z29cIixcbiAgTnBtRGlzdCA9IFwiTnBtRGlzdFwiLFxuICBTdGF0aWMgPSBcIlN0YXRpY1wiXG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgV2Vic2l0ZURvbWFpbk5hbWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV2Vic2l0ZURvbWFpbk5hbWVQcm9wcyBleHRlbmRzIERvbWFpbk5hbWVQcm9wcyB7XG5cbiAgcmVhZG9ubHkgY3JlYXRlUmVjb3JkPzogYm9vbGVhbjtcblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlYnNpdGVQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEJ1Y2tldCB0byB1c2UgdG8gc3RvcmUgd2Vic2l0ZSBjb250ZW50LiBJZiBvbmUgaXMgbm90IHByb3ZpZGVkLCBvbmUgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ/OiBJQnVja2V0O1xuXG4gIC8qKlxuICAgKiBCdWNrZXQgdG8gdXNlIGlmIHRoZSBwcmltYXJ5IGJ1Y2tldCBmYWlscy4gSWYgb25lIGlzIG5vdCBwcm92aWRlZCBhIGZhbGxiYWNrIGlzIG5vdCBzZXR1cC5cbiAgICovXG4gIHJlYWRvbmx5IGZhbGxiYWNrQnVja2V0PzogSUJ1Y2tldDtcblxuICAvKipcbiAgICogVGhlIEFSTiB0byB0aGUgQUNNIENlcnRpZmljYXRlIHRvIHVzZSBvbiB0aGUgQ2xvdWRGcm9udCBkaXN0cmlidXRpb24uIElmIG9uZSBpcyBub3RcbiAgICogcHJvdmlkZWQgYW5kIGRvbWFpbk5hbWVzIGlzIHBvcHVsYXRlZCwgb25lIHdpbGwgYmUgZ2VuZXJhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY2VydGlmaWNhdGVBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkb21haW4gbmFtZXMgdG8gYmUgc2VydmljZWQuIFRoZSBmaXJzdCBkb21haW4gbmFtZSBpbiB0aGUgbGlzdCBpcyB0cmVhdGVkIGFzIHRoZSBhcGV4IGRvbWFpbi5cbiAgICovXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVzPzogV2Vic2l0ZURvbWFpbk5hbWVQcm9wc1tdXG5cbiAgLyoqXG4gICAqIFJlZGlyZWN0IHRyYWZmaWMgdG8gdGhlIGZpcnN0IGRvbWFpbiBpbiB0aGUgbGlzdCBvZiBkb21haW5OYW1lcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVkaXJlY3RUb0FwZXhEb21haW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcmljZSBjbGFzcyBmb3IgdGhlIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBQcmljZUNsYXNzLlBSSUNFX0NMQVNTXzEwMFxuICAgKi9cbiAgcmVhZG9ubHkgcHJpY2VDbGFzcz86IFByaWNlQ2xhc3NcblxuICAvKipcbiAgICogTWluaW11bSBwcm90b2NvbCB2ZXJzaW9uIHRvIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBTZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAqL1xuICByZWFkb25seSBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uPzogU2VjdXJpdHlQb2xpY3lQcm90b2NvbDtcblxuICAvKipcbiAgICogTWluaW11bSBIVFRQIHZlcnNpb24gdG8gYWxsb3cuXG4gICAqXG4gICAqIEBkZWZhdWx0IEh0dHBWZXJzaW9uLkhUVFAxXzFcbiAgICovXG4gIHJlYWRvbmx5IGh0dHBWZXJzaW9uPzogSHR0cFZlcnNpb247XG5cbiAgLyoqXG4gICAqIENhY2hlLWNvbnRyb2wgbWF4IGFnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24ubWludXRlcyg2MClcbiAgICovXG4gIHJlYWRvbmx5IG1heEFnZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgc291cmNlIHR5cGUgb2YgdGhlIHdlYnNpdGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IFNvdXJjZVR5cGUuU3RhdGljXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VUeXBlPzogU291cmNlVHlwZTtcblxuICAvKipcbiAgICogVGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgd2Vic2l0ZSBzb3VyY2VzIGFyZSBsb2NhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlRGlyZWN0b3J5OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBidW5kbGluZyBvcHRpb25zIHRvIHVzZSB0byBidW5kbGUgd2Vic2l0ZSBzb3VyY2VzLiBUaGUgc291cmNlVHlwZVxuICAgKiBtdXN0IGJlIHNldCB0byBTb3VyY2VUeXBlLkN1c3RvbS5cbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZUJ1bmRsaW5nT3B0aW9ucz86IEJ1bmRsaW5nT3B0aW9uc1xufVxuXG5leHBvcnQgY2xhc3MgV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGJ1bmRsaW5nIG9wdGlvbnMgZm9yIFNvdXJjZVR5cGUuSHVnby5cbiAgICovXG4gIHN0YXRpYyByZWFkb25seSBIVUdPX0JVTkRMSU5HX09QVElPTlM6IEJ1bmRsaW5nT3B0aW9ucyA9IHtcbiAgICBpbWFnZTogRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KFwia2xha2VnZy9odWdvOmxhdGVzdC1leHRcIiksXG4gICAgY29tbWFuZDogW1xuICAgICAgXCItZFwiLCBcIi9hc3NldC1vdXRwdXRcIlxuICAgIF1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBidW5kbGluZyBvcHRpb25zIGZvciBTb3VyY2VUeXBlLk5wbURpc3QuIEl0XCJzIGV4cGVjdGVkIHRoYXQgXCJucG0gcnVuIGRpc3RcIiBjb21tYW5kXG4gICAqIHdpbGwgcGxhY2UgZmlsZXMgaW4gJHtDREtfQlVORExJTkdfT1VUUFVUX0RJUn0uIEV4YW1wbGU6IFwibmcgYnVpbGQgLS1vdXRwdXQtcGF0aD0vYXNzZXQtb3V0cHV0XCJcbiAgICovXG4gIHN0YXRpYyByZWFkb25seSBOUE1fRElTVF9CVU5ETElOR19PUFRJT05TOiBCdW5kbGluZ09wdGlvbnMgPSB7XG4gICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeShcIm5vZGU6MTYtYWxwaW5lXCIpLFxuICAgIGNvbW1hbmQ6IFtcbiAgICAgIC8vIFRPRE8gRmlndXJlIG91dCBob3cgdG8gY2FjaGUgLm5wbWNhY2hlXG4gICAgICBcInNoXCIsIFwiLWNcIiwgW1xuICAgICAgICBcIm1rZGlyIC1wIC5ucG1jYWNoZVwiLFxuICAgICAgICBcIm5wbSBjaSAtLWNhY2hlIC5ucG1jYWNoZSAtLXByZWZlci1vZmZsaW5lXCIsXG4gICAgICAgIFwibnBtIHJ1biBkaXN0XCJcbiAgICAgIF0uam9pbihcIiAmJiBcIilcbiAgICBdXG4gIH1cblxuICByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG4gIHJlYWRvbmx5IGZhbGxiYWNrQnVja2V0PzogSUJ1Y2tldDtcbiAgcmVhZG9ubHkgb3JpZ2luQWNjZXNzSWRlbnRpdHk6IE9yaWdpbkFjY2Vzc0lkZW50aXR5O1xuICByZWFkb25seSBhcGV4RG9tYWluOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZpZXdlclJlcXVlc3RGdW5jdGlvbjogRnVuY3Rpb247XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICByZWFkb25seSBkaXN0cmlidXRpb25Vcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgYVJlY29yZHM6IEFSZWNvcmRbXTtcbiAgcmVhZG9ubHkgZGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcmVhZG9ubHkgZmFsbGJhY2tEZXBsb3ltZW50PzogQnVja2V0RGVwbG95bWVudDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogV2Vic2l0ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGRvbWFpbk5hbWVzID0gRG9tYWluTmFtZS5mcm9tUHJvcHMocHJvcHMuZG9tYWluTmFtZXMpO1xuXG4gICAgbGV0IGNlcnRpZmljYXRlOiBJQ2VydGlmaWNhdGUgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKHByb3BzLmNlcnRpZmljYXRlQXJuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNlcnRpZmljYXRlID0gQ2VydGlmaWNhdGUuZnJvbUNlcnRpZmljYXRlQXJuKHRoaXMsIFwiQ2VydGlmaWNhdGVcIiwgcHJvcHMuY2VydGlmaWNhdGVBcm4pXG4gICAgfSBlbHNlIGlmIChkb21haW5OYW1lcy5sZW5ndGggPiAwKSB7XG4gICAgICBjZXJ0aWZpY2F0ZSA9IG5ldyBDZXJ0aWZpY2F0ZSh0aGlzLCBcIkNlcnRpZmljYXRlXCIsIHtcbiAgICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZXNbMF0udG9TdHJpbmcoKSxcbiAgICAgICAgc3ViamVjdEFsdGVybmF0aXZlTmFtZXM6IERvbWFpbk5hbWUudG9TdHJpbmdzKGRvbWFpbk5hbWVzKS5zbGljZSgxKSxcbiAgICAgICAgdmFsaWRhdGlvbjogQ2VydGlmaWNhdGVWYWxpZGF0aW9uLmZyb21EbnNNdWx0aVpvbmUoRG9tYWluTmFtZS50b1pvbmVNYXAodGhpcywgZG9tYWluTmFtZXMpKVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5idWNrZXQgPSBwcm9wcy5idWNrZXQgPz8gbmV3IEV4dGVuZGVkQnVja2V0KHRoaXMsIFwiQnVja2V0XCIsIHtcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgIGF1dG9EZWxldGVPYmplY3RzOiB0cnVlXG4gICAgfSk7XG4gICAgdGhpcy5mYWxsYmFja0J1Y2tldCA9IHByb3BzLmZhbGxiYWNrQnVja2V0O1xuXG4gICAgdGhpcy5vcmlnaW5BY2Nlc3NJZGVudGl0eSA9IG5ldyBPcmlnaW5BY2Nlc3NJZGVudGl0eSh0aGlzLCBcIkFjY2Vzc1wiKTtcbiAgICB0aGlzLmJ1Y2tldC5ncmFudFJlYWQodGhpcy5vcmlnaW5BY2Nlc3NJZGVudGl0eSk7XG4gICAgaWYgKHRoaXMuZmFsbGJhY2tCdWNrZXQpIHtcbiAgICAgIHRoaXMuZmFsbGJhY2tCdWNrZXQuZ3JhbnRSZWFkKHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHkpO1xuICAgIH1cblxuICAgIHRoaXMuYXBleERvbWFpbiA9IGRvbWFpbk5hbWVzLmxlbmd0aCA+IDAgPyBkb21haW5OYW1lc1swXS50b1N0cmluZygpIDogXCJcIjtcblxuICAgIHRoaXMudmlld2VyUmVxdWVzdEZ1bmN0aW9uID0gbmV3IEZ1bmN0aW9uKHRoaXMsIFwiVmlld2VyUmVxdWVzdEZ1bmN0aW9uXCIsIHtcbiAgICAgIGNvZGU6IEZ1bmN0aW9uQ29kZS5mcm9tSW5saW5lKGBcbmZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQpIHtcbiAgdmFyIGhvc3QgPSBldmVudC5yZXF1ZXN0LmhlYWRlcnMuaG9zdC52YWx1ZTtcbiAgdmFyIHVyaSA9IGV2ZW50LnJlcXVlc3QudXJpO1xuICB2YXIgbWF0Y2hBcGV4ID0gTUFUQ0hfQVBFWDtcbiAgaWYgKG1hdGNoQXBleCAmJiBob3N0ICE9PSBcIkFQRVhfRE9NQUlOXCIpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc3RhdHVzQ29kZTogMzAxLFxuICAgICAgc3RhdHVzRGVzY3JpcHRpb246IFwiUGVybWFuZW50bHkgbW92ZWRcIixcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgXCJsb2NhdGlvblwiOiB7IFwidmFsdWVcIjogXCJodHRwczovL0FQRVhfRE9NQUlOXCIgKyB1cmkgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBpZiAodXJpLmVuZHNXaXRoKFwiL1wiKSkge1xuICAgIGV2ZW50LnJlcXVlc3QudXJpID0gdXJpICsgXCJpbmRleC5odG1sXCI7XG4gIH1cbiAgcmV0dXJuIGV2ZW50LnJlcXVlc3Q7XG59YFxuICAgICAgICAucmVwbGFjZSgvQVBFWF9ET01BSU4vZywgdGhpcy5hcGV4RG9tYWluKVxuICAgICAgICAucmVwbGFjZSgvTUFUQ0hfQVBFWC9nLCB0aGlzLmFwZXhEb21haW4gIT09IFwiXCIgJiYgKHByb3BzLnJlZGlyZWN0VG9BcGV4RG9tYWluPz90cnVlKSA/IFwidHJ1ZVwiIDogXCJmYWxzZVwiKSlcbiAgICB9KTtcblxuICAgIGNvbnN0IGJ1Y2tldE9yaWdpbiA9IG5ldyBTM09yaWdpbih0aGlzLmJ1Y2tldCwge1xuICAgICAgb3JpZ2luQWNjZXNzSWRlbnRpdHk6IHRoaXMub3JpZ2luQWNjZXNzSWRlbnRpdHlcbiAgICB9KTtcblxuICAgIGNvbnN0IGZhbGxiYWNrQnVja2V0T3JpZ2luID0gdGhpcy5mYWxsYmFja0J1Y2tldCA9PT0gdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogbmV3IFMzT3JpZ2luKHRoaXMuZmFsbGJhY2tCdWNrZXQsIHtcbiAgICAgIG9yaWdpbkFjY2Vzc0lkZW50aXR5OiB0aGlzLm9yaWdpbkFjY2Vzc0lkZW50aXR5XG4gICAgfSk7XG5cbiAgICBjb25zdCBkZWZhdWx0T3JpZ2luID0gZmFsbGJhY2tCdWNrZXRPcmlnaW4gPT09IHVuZGVmaW5lZCA/IGJ1Y2tldE9yaWdpbiA6IG5ldyBPcmlnaW5Hcm91cCh7XG4gICAgICBwcmltYXJ5T3JpZ2luOiBidWNrZXRPcmlnaW4sXG4gICAgICBmYWxsYmFja09yaWdpbjogZmFsbGJhY2tCdWNrZXRPcmlnaW5cbiAgICB9KTtcblxuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gbmV3IERpc3RyaWJ1dGlvbih0aGlzLCBcIkRpc3RyaWJ1dGlvblwiLCB7XG4gICAgICBkZWZhdWx0QmVoYXZpb3I6IHtcbiAgICAgICAgb3JpZ2luOiBkZWZhdWx0T3JpZ2luLFxuICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgZnVuY3Rpb246IHRoaXMudmlld2VyUmVxdWVzdEZ1bmN0aW9uLFxuICAgICAgICAgICAgZXZlbnRUeXBlOiBGdW5jdGlvbkV2ZW50VHlwZS5WSUVXRVJfUkVRVUVTVFxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSxcbiAgICAgIGVycm9yUmVzcG9uc2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VIdHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogXCIvNDA0Lmh0bWxcIlxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgaHR0cFZlcnNpb246IHByb3BzLmh0dHBWZXJzaW9uPz9IdHRwVmVyc2lvbi5IVFRQMV8xLFxuICAgICAgbWluaW11bVByb3RvY29sVmVyc2lvbjogcHJvcHMubWluaW11bVByb3RvY29sVmVyc2lvbj8/U2VjdXJpdHlQb2xpY3lQcm90b2NvbC5UTFNfVjFfMl8yMDIxLFxuICAgICAgZGVmYXVsdFJvb3RPYmplY3Q6IFwiaW5kZXguaHRtbFwiLFxuICAgICAgY2VydGlmaWNhdGUsXG4gICAgICBkb21haW5OYW1lczogRG9tYWluTmFtZS50b1N0cmluZ3MoZG9tYWluTmFtZXMpLFxuICAgICAgZW5hYmxlSXB2NjogdHJ1ZSxcbiAgICAgIHByaWNlQ2xhc3M6IHByb3BzLnByaWNlQ2xhc3M/P1ByaWNlQ2xhc3MuUFJJQ0VfQ0xBU1NfMTAwXG4gICAgfSk7XG5cbiAgICB0aGlzLmRpc3RyaWJ1dGlvblVybCA9IGBodHRwczovLyR7KHRoaXMuYXBleERvbWFpbiAhPSBcIlwiID8gdGhpcy5hcGV4RG9tYWluIDogdGhpcy5kaXN0cmlidXRpb24uZGlzdHJpYnV0aW9uRG9tYWluTmFtZSl9YFxuXG4gICAgdGhpcy5hUmVjb3JkcyA9IFtdO1xuXG4gICAgZm9yIChsZXQgZG9tYWluTmFtZVByb3BzIG9mIHByb3BzLmRvbWFpbk5hbWVzID8/IFtdKSB7XG4gICAgICBpZiAoZG9tYWluTmFtZVByb3BzLmNyZWF0ZVJlY29yZCA/PyB0cnVlKSB7XG4gICAgICAgIGxldCBkb21haW5OYW1lID0gRG9tYWluTmFtZS5maW5kRG9tYWluTmFtZShkb21haW5OYW1lUHJvcHMsIGRvbWFpbk5hbWVzKTtcbiAgICAgICAgaWYgKGRvbWFpbk5hbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuYVJlY29yZHMucHVzaChkb21haW5OYW1lLmNyZWF0ZUFSZWNvcmQodGhpcyxcbiAgICAgICAgICAgIFJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IENsb3VkRnJvbnRUYXJnZXQodGhpcy5kaXN0cmlidXRpb24pKSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGJ1bmRsaW5nT3B0aW9uczogQnVuZGxpbmdPcHRpb25zIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkXG5cbiAgICBpZiAocHJvcHMuc291cmNlVHlwZSA9PT0gU291cmNlVHlwZS5DdXN0b20pIHtcbiAgICAgIGlmICghcHJvcHMuc291cmNlQnVuZGxpbmdPcHRpb25zKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInNvdXJjZUJ1bmRsaW5nT3B0aW9ucyBpcyByZXF1aXJlZCBpZiBzb3VyY2UgdHlwZSBpcyBDdXN0b21cIik7XG4gICAgICB9XG4gICAgICBidW5kbGluZ09wdGlvbnMgPSBwcm9wcy5zb3VyY2VCdW5kbGluZ09wdGlvbnNcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuc291cmNlVHlwZSA9PT0gU291cmNlVHlwZS5TdGF0aWMpIHtcbiAgICAgIGlmIChwcm9wcy5zb3VyY2VCdW5kbGluZ09wdGlvbnMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IHVzZSBzb3VyY2VCdW5kbGluZ09wdGlvbnMgd2l0aCBzb3VyY2UgdHlwZSBTdGF0aWNcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnNvdXJjZVR5cGUgPT09IFNvdXJjZVR5cGUuSHVnbykge1xuICAgICAgYnVuZGxpbmdPcHRpb25zID0gV2Vic2l0ZS5IVUdPX0JVTkRMSU5HX09QVElPTlNcbiAgICAgIGlmIChwcm9wcy5zb3VyY2VCdW5kbGluZ09wdGlvbnMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IHVzZSBzb3VyY2VCdW5kbGluZ09wdGlvbnMgd2l0aCBzb3VyY2UgdHlwZSBIdWdvXCIpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocHJvcHMuc291cmNlVHlwZSA9PT0gU291cmNlVHlwZS5OcG1EaXN0KSB7XG4gICAgICBidW5kbGluZ09wdGlvbnMgPSBXZWJzaXRlLk5QTV9ESVNUX0JVTkRMSU5HX09QVElPTlNcbiAgICAgIGlmIChwcm9wcy5zb3VyY2VCdW5kbGluZ09wdGlvbnMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IHVzZSBzb3VyY2VCdW5kbGluZ09wdGlvbnMgd2l0aCBzb3VyY2UgdHlwZSBOcG1EaXN0XCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHNvdXJjZSA9IFNvdXJjZS5hc3NldChwcm9wcy5zb3VyY2VEaXJlY3RvcnksIHtcbiAgICAgIGJ1bmRsaW5nOiBidW5kbGluZ09wdGlvbnNcbiAgICB9KTtcblxuICAgIHRoaXMuZGVwbG95bWVudCA9IG5ldyBCdWNrZXREZXBsb3ltZW50KHRoaXMsIFwiQXNzZXRzXCIsIHtcbiAgICAgIHNvdXJjZXM6IFtzb3VyY2VdLFxuICAgICAgZGVzdGluYXRpb25CdWNrZXQ6IHRoaXMuYnVja2V0LFxuICAgICAgZGlzdHJpYnV0aW9uOiB0aGlzLmRpc3RyaWJ1dGlvbixcbiAgICAgIGNhY2hlQ29udHJvbDogW0NhY2hlQ29udHJvbC5tYXhBZ2UocHJvcHMubWF4QWdlPz9EdXJhdGlvbi5taW51dGVzKDYwKSldLFxuICAgICAgcHJ1bmU6IGZhbHNlXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5mYWxsYmFja0J1Y2tldCkge1xuICAgICAgdGhpcy5mYWxsYmFja0RlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCBcIkZhbGxiYWNrQXNzZXRzXCIsIHtcbiAgICAgICAgc291cmNlczogW3NvdXJjZV0sXG4gICAgICAgIGRlc3RpbmF0aW9uQnVja2V0OiB0aGlzLmZhbGxiYWNrQnVja2V0LFxuICAgICAgICBjYWNoZUNvbnRyb2w6IFtDYWNoZUNvbnRyb2wubWF4QWdlKHByb3BzLm1heEFnZT8/RHVyYXRpb24ubWludXRlcyg2MCkpXSxcbiAgICAgICAgcHJ1bmU6IGZhbHNlXG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "truemark-cdk-lib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.36-alpha.2+0e98502",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"@aws-cdk/aws-synthetics-alpha": "^2.18.0-alpha.0",
|
|
50
50
|
"cdk-monitoring-constructs": "^1.10.0"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "0e98502d0108c83436efd235e6e55737c70dc752"
|
|
53
53
|
}
|
|
@@ -12,15 +12,29 @@ test("Hugo Website Test", () => {
|
|
|
12
12
|
const template = assertions_1.Template.fromStack(stack);
|
|
13
13
|
template.hasResourceProperties("AWS::CloudFront::Distribution", {});
|
|
14
14
|
});
|
|
15
|
-
// TODO
|
|
15
|
+
// TODO We need to speed this up
|
|
16
16
|
// test("Npm Dist Website Test", () => {
|
|
17
|
-
// const
|
|
18
|
-
// const stack = new cdk.Stack(app, "TestStack");
|
|
17
|
+
// const stack = TestHelper.stack();
|
|
19
18
|
// new Website(stack, "TestWebsite", {
|
|
20
19
|
// sourceType: SourceType.NpmDist,
|
|
21
|
-
// sourceDirectory:
|
|
20
|
+
// sourceDirectory: TestHelper.resolveTestFiles("angular-website")
|
|
22
21
|
// });
|
|
23
22
|
// const template = Template.fromStack(stack);
|
|
24
23
|
// template.hasResourceProperties("AWS::CloudFront::Distribution", {});
|
|
25
24
|
// });
|
|
26
|
-
|
|
25
|
+
// TODO Need to fix
|
|
26
|
+
// test("Website Certificate Test", () => {
|
|
27
|
+
// const stack = TestHelper.stack();
|
|
28
|
+
// new Website(stack, "TestWebsite", {
|
|
29
|
+
// sourceType: SourceType.Hugo,
|
|
30
|
+
// sourceDirectory: TestHelper.resolveTestFiles("hugo-website"),
|
|
31
|
+
// domainNames: [
|
|
32
|
+
// new DomainName("test", "example.com"),
|
|
33
|
+
// new DomainName("test2", "example.com")
|
|
34
|
+
// ]
|
|
35
|
+
// });
|
|
36
|
+
// const template = Template.fromStack(stack);
|
|
37
|
+
// console.log(template.toJSON());
|
|
38
|
+
// // TestHelper.logResources()
|
|
39
|
+
// });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic2l0ZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid2Vic2l0ZS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbURBQXNEO0FBQ3RELHVEQUFnRDtBQUNoRCxnREFBMEM7QUFHMUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRTtJQUM3QixNQUFNLEtBQUssR0FBRyx3QkFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pDLElBQUkscUJBQU8sQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFO1FBQ2hDLFVBQVUsRUFBRSx3QkFBVSxDQUFDLElBQUk7UUFDM0IsZUFBZSxFQUFFLHdCQUFVLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO0tBQzdELENBQUMsQ0FBQztJQUNILE1BQU0sUUFBUSxHQUFHLHFCQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQywrQkFBK0IsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN0RSxDQUFDLENBQUMsQ0FBQztBQUVILGdDQUFnQztBQUNoQyx3Q0FBd0M7QUFDeEMsc0NBQXNDO0FBQ3RDLHdDQUF3QztBQUN4QyxzQ0FBc0M7QUFDdEMsc0VBQXNFO0FBQ3RFLFFBQVE7QUFDUixnREFBZ0Q7QUFDaEQseUVBQXlFO0FBQ3pFLE1BQU07QUFFTixtQkFBbUI7QUFDbkIsMkNBQTJDO0FBQzNDLHNDQUFzQztBQUN0Qyx3Q0FBd0M7QUFDeEMsbUNBQW1DO0FBQ25DLG9FQUFvRTtBQUNwRSxxQkFBcUI7QUFDckIsK0NBQStDO0FBQy9DLCtDQUErQztBQUMvQyxRQUFRO0FBQ1IsUUFBUTtBQUNSLGdEQUFnRDtBQUNoRCxvQ0FBb0M7QUFDcEMsaUNBQWlDO0FBQ2pDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NvdXJjZVR5cGUsIFdlYnNpdGV9IGZyb20gXCIuLi8uLi9hd3Mtd2Vic2l0ZVwiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcbmltcG9ydCB7VGVzdEhlbHBlcn0gZnJvbSBcIi4uL3Rlc3QtaGVscGVyXCI7XG5pbXBvcnQge0RvbWFpbk5hbWV9IGZyb20gXCIuLi8uLi9hd3Mtcm91dGU1M1wiO1xuXG50ZXN0KFwiSHVnbyBXZWJzaXRlIFRlc3RcIiwgKCkgPT4ge1xuICBjb25zdCBzdGFjayA9IFRlc3RIZWxwZXIuc3RhY2soKTtcbiAgbmV3IFdlYnNpdGUoc3RhY2ssICdUZXN0V2Vic2l0ZScsIHtcbiAgICBzb3VyY2VUeXBlOiBTb3VyY2VUeXBlLkh1Z28sXG4gICAgc291cmNlRGlyZWN0b3J5OiBUZXN0SGVscGVyLnJlc29sdmVUZXN0RmlsZXMoXCJodWdvLXdlYnNpdGVcIilcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpDbG91ZEZyb250OjpEaXN0cmlidXRpb25cIiwge30pO1xufSk7XG5cbi8vIFRPRE8gV2UgbmVlZCB0byBzcGVlZCB0aGlzIHVwXG4vLyB0ZXN0KFwiTnBtIERpc3QgV2Vic2l0ZSBUZXN0XCIsICgpID0+IHtcbi8vICAgY29uc3Qgc3RhY2sgPSBUZXN0SGVscGVyLnN0YWNrKCk7XG4vLyAgIG5ldyBXZWJzaXRlKHN0YWNrLCBcIlRlc3RXZWJzaXRlXCIsIHtcbi8vICAgICBzb3VyY2VUeXBlOiBTb3VyY2VUeXBlLk5wbURpc3QsXG4vLyAgICAgc291cmNlRGlyZWN0b3J5OiBUZXN0SGVscGVyLnJlc29sdmVUZXN0RmlsZXMoXCJhbmd1bGFyLXdlYnNpdGVcIilcbi8vICAgfSk7XG4vLyAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbi8vICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFwiQVdTOjpDbG91ZEZyb250OjpEaXN0cmlidXRpb25cIiwge30pO1xuLy8gfSk7XG5cbi8vIFRPRE8gTmVlZCB0byBmaXhcbi8vIHRlc3QoXCJXZWJzaXRlIENlcnRpZmljYXRlIFRlc3RcIiwgKCkgPT4ge1xuLy8gICBjb25zdCBzdGFjayA9IFRlc3RIZWxwZXIuc3RhY2soKTtcbi8vICAgbmV3IFdlYnNpdGUoc3RhY2ssIFwiVGVzdFdlYnNpdGVcIiwge1xuLy8gICAgIHNvdXJjZVR5cGU6IFNvdXJjZVR5cGUuSHVnbyxcbi8vICAgICBzb3VyY2VEaXJlY3Rvcnk6IFRlc3RIZWxwZXIucmVzb2x2ZVRlc3RGaWxlcyhcImh1Z28td2Vic2l0ZVwiKSxcbi8vICAgICBkb21haW5OYW1lczogW1xuLy8gICAgICAgbmV3IERvbWFpbk5hbWUoXCJ0ZXN0XCIsIFwiZXhhbXBsZS5jb21cIiksXG4vLyAgICAgICBuZXcgRG9tYWluTmFtZShcInRlc3QyXCIsIFwiZXhhbXBsZS5jb21cIilcbi8vICAgICBdXG4vLyAgIH0pO1xuLy8gICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4vLyAgIGNvbnNvbGUubG9nKHRlbXBsYXRlLnRvSlNPTigpKTtcbi8vICAgLy8gVGVzdEhlbHBlci5sb2dSZXNvdXJjZXMoKVxuLy8gfSk7XG4iXX0=
|