@sylvesterllc/aws-constructs 1.0.12 → 1.0.14

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.
@@ -9,7 +9,7 @@ export declare class AppConfig implements IAppConfig {
9
9
  API: ApiAppConfig;
10
10
  GLOBALS: GlobalAppConfig;
11
11
  RESOURCES: ResourceAppConfig;
12
- DNS: TsgDnsAppConfig;
12
+ DNS?: TsgDnsAppConfig;
13
13
  lambdaConfigs: TsgLambdaProp[];
14
14
  dynamoConfigs: TsgDynamoProp[];
15
15
  get AppName(): string;
@@ -58,4 +58,4 @@ class AppConfig {
58
58
  }
59
59
  }
60
60
  exports.AppConfig = AppConfig;
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9BcHBDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBVUEsTUFBYSxTQUFTO0lBV2xCLElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0UsQ0FBQztJQUVELFlBQVksTUFBa0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRU8sUUFBUSxDQUFDLE1BQWtCO1FBQy9CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBR25DLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxNQUFrQjtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ1gsR0FBRyxNQUFNLENBQUMsT0FBTztTQUNwQixDQUFDO0lBQ04sQ0FBQztJQUVPLGlCQUFpQixDQUFDLE1BQWtCO1FBRXhDLElBQUksTUFBTSxDQUFDLEdBQUc7WUFDVixJQUFJLENBQUMsR0FBRyxHQUFHO2dCQUNQLEdBQUcsTUFBTSxDQUFDLEdBQUc7YUFDaEIsQ0FBQztJQUNWLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxNQUFrQjtRQUN4QyxJQUFJLENBQUMsU0FBUyxHQUFHO1lBQ2IsR0FBRyxNQUFNLENBQUMsU0FBUztTQUN0QixDQUFDO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUc7WUFDcEIsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU07U0FDN0IsQ0FBQztRQUVGLElBQUksQ0FBQyxHQUFHLEdBQUc7WUFDUCxHQUFHLE1BQU0sQ0FBQyxHQUFHO1NBQ2hCLENBQUM7SUFDTixDQUFDO0lBQ0QsbUdBQW1HO0lBQ25HLDBHQUEwRztJQUMxRyxJQUFJO0lBRUksZUFBZSxDQUFPLE1BQVcsRUFBRSxNQUEwQjtRQUVqRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFPLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sTUFBTSxDQUFDO0lBRWxCLENBQUM7SUFFTyxXQUFXLENBQU8sSUFBdUI7UUFFN0MsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGFBQWE7UUFDYixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3QyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3RCO1FBQ0QsT0FBTyxNQUFhLENBQUM7SUFDekIsQ0FBQztDQUNKO0FBakZELDhCQWlGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmZpZyB9IGZyb20gXCJwcm9jZXNzXCI7XG5pbXBvcnQgeyBBcGlBcHBDb25maWcgfSBmcm9tIFwiLi9jdXN0b21Db25maWdzL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4vY3VzdG9tQ29uZmlncy9HbG9iYWxBcHBDb25maWdcIjtcbmltcG9ydCB7IElBcHBDb25maWcgfSBmcm9tIFwiLi9jdXN0b21Db25maWdzL0lBcHBDb25maWdcIjtcbmltcG9ydCB7IFJlc291cmNlQXBwQ29uZmlnIH0gZnJvbSBcIi4vY3VzdG9tQ29uZmlncy9SZXNvdXJjZUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgVHNnRHluYW1vUHJvcCB9IGZyb20gXCIuL3R5cGVzXCI7XG5pbXBvcnQgeyBUc2dEbnNBcHBDb25maWcgfSBmcm9tIFwiLi90eXBlcy9Uc2dEbnNDb25maWdcIjtcbmltcG9ydCB7IFRzZ0xhbWJkYU5hbWUgfSBmcm9tIFwiLi90eXBlcy9Uc2dMYW1iZGFOYW1lXCI7XG5pbXBvcnQgeyBUc2dMYW1iZGFQcm9wIH0gZnJvbSBcIi4vdHlwZXMvVHNnTGFtYmRhUHJvcFwiO1xuXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnIGltcGxlbWVudHMgSUFwcENvbmZpZyB7XG5cbiAgICBwdWJsaWMgQVBJOiBBcGlBcHBDb25maWc7XG4gICAgcHVibGljIEdMT0JBTFM6IEdsb2JhbEFwcENvbmZpZztcbiAgICBwdWJsaWMgUkVTT1VSQ0VTOiBSZXNvdXJjZUFwcENvbmZpZztcbiAgICBwdWJsaWMgRE5TOiBUc2dEbnNBcHBDb25maWc7XG5cblxuICAgIHB1YmxpYyBsYW1iZGFDb25maWdzOiBUc2dMYW1iZGFQcm9wW107XG4gICAgcHVibGljIGR5bmFtb0NvbmZpZ3M6IFRzZ0R5bmFtb1Byb3BbXTtcblxuICAgIGdldCBBcHBOYW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5HTE9CQUxTLm5hbWU7XG4gICAgfVxuXG4gICAgZ2V0IEFwcFByZWZpeCgpIHtcbiAgICAgICAgcmV0dXJuICh0aGlzLkdMT0JBTFMucHJlZml4KSA/IHRoaXMuR0xPQkFMUy5wcmVmaXggOiB0aGlzLkdMT0JBTFMubmFtZTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihjb25maWc6IElBcHBDb25maWcpIHtcbiAgICAgICAgdGhpcy5wb3B1bGF0ZShjb25maWcpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcG9wdWxhdGUoY29uZmlnOiBJQXBwQ29uZmlnKSB7XG4gICAgICAgIHRoaXMucG9wdWxhdGVHbG9iYWxDb25maWcoY29uZmlnKTtcbiAgICAgICAgdGhpcy5wb3B1bGF0ZUFwaUNvbmZpZyhjb25maWcpO1xuICAgICAgICB0aGlzLnBvcHVsYXRlUmVzb3VyY2VzKGNvbmZpZyk7XG5cblxuICAgIH1cblxuICAgIHByaXZhdGUgcG9wdWxhdGVHbG9iYWxDb25maWcoY29uZmlnOiBJQXBwQ29uZmlnKSB7XG4gICAgICAgIHRoaXMuR0xPQkFMUyA9IHtcbiAgICAgICAgICAgIC4uLmNvbmZpZy5HTE9CQUxTXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwb3B1bGF0ZUFwaUNvbmZpZyhjb25maWc6IElBcHBDb25maWcpIHtcblxuICAgICAgICBpZiAoY29uZmlnLkFQSSlcbiAgICAgICAgICAgIHRoaXMuQVBJID0ge1xuICAgICAgICAgICAgICAgIC4uLmNvbmZpZy5BUElcbiAgICAgICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBwb3B1bGF0ZVJlc291cmNlcyhjb25maWc6IElBcHBDb25maWcpIHtcbiAgICAgICAgdGhpcy5SRVNPVVJDRVMgPSB7XG4gICAgICAgICAgICAuLi5jb25maWcuUkVTT1VSQ0VTXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuUkVTT1VSQ0VTLkRZTkFNTyA9IHtcbiAgICAgICAgICAgIC4uLmNvbmZpZy5SRVNPVVJDRVMuRFlOQU1PXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5ETlMgPSB7XG4gICAgICAgICAgICAuLi5jb25maWcuRE5TXG4gICAgICAgIH07XG4gICAgfVxuICAgIC8vICAgICB0aGlzLmxhbWJkYUNvbmZpZ3MgPSB0aGlzLmV4cGFuZFByb3BzPFRzZ0xhbWJkYU5hbWUsIFRzZ0xhbWJkYVByb3A+KHRoaXMuUkVTT1VSQ0VTLkxBTUJEQSEpO1xuICAgIC8vICAgICB0aGlzLmR5bmFtb0NvbmZpZ3MgPSB0aGlzLmV4cGFuZFByb3BzPFRzZ1RhYmxlTmFtZSwgVHNnRHluYW1vUHJvcD4odGhpcy5SRVNPVVJDRVMuRFlOQU1PPy5UQUJMRVMhKTtcbiAgICAvLyB9XG5cbiAgICBwcml2YXRlIHBvcHVsYXRlQ29uZmlnczxULCBSPihyZXN1bHQ6IFJbXSwgcmVjb3JkPzogUmVjb3JkPHN0cmluZywgUj4pIHtcblxuICAgICAgICBpZiAoIXJlY29yZCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXN1bHQgPSB0aGlzLmV4cGFuZFByb3BzPFQsIFI+KHJlY29yZCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG5cbiAgICB9XG5cbiAgICBwcml2YXRlIGV4cGFuZFByb3BzPFQsIFI+KGRhdGE6IFJlY29yZDxzdHJpbmcsIFI+KSB7XG4gICAgICAgIFxuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhkYXRhKSkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2godmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQgYXMgUltdO1xuICAgIH1cbn0iXX0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9BcHBDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBVUEsTUFBYSxTQUFTO0lBV2xCLElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0UsQ0FBQztJQUVELFlBQVksTUFBa0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRU8sUUFBUSxDQUFDLE1BQWtCO1FBQy9CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBR25DLENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxNQUFrQjtRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHO1lBQ1gsR0FBRyxNQUFNLENBQUMsT0FBTztTQUNwQixDQUFDO0lBQ04sQ0FBQztJQUVPLGlCQUFpQixDQUFDLE1BQWtCO1FBRXhDLElBQUksTUFBTSxDQUFDLEdBQUc7WUFDVixJQUFJLENBQUMsR0FBRyxHQUFHO2dCQUNQLEdBQUcsTUFBTSxDQUFDLEdBQUc7YUFDaEIsQ0FBQztJQUNWLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxNQUFrQjtRQUN4QyxJQUFJLENBQUMsU0FBUyxHQUFHO1lBQ2IsR0FBRyxNQUFNLENBQUMsU0FBUztTQUN0QixDQUFDO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUc7WUFDcEIsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU07U0FDN0IsQ0FBQztRQUVGLElBQUksQ0FBQyxHQUFHLEdBQUc7WUFDUCxHQUFHLE1BQU0sQ0FBQyxHQUFJO1NBQ2pCLENBQUM7SUFDTixDQUFDO0lBQ0QsbUdBQW1HO0lBQ25HLDBHQUEwRztJQUMxRyxJQUFJO0lBRUksZUFBZSxDQUFPLE1BQVcsRUFBRSxNQUEwQjtRQUVqRSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFPLE1BQU0sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sTUFBTSxDQUFDO0lBRWxCLENBQUM7SUFFTyxXQUFXLENBQU8sSUFBdUI7UUFFN0MsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGFBQWE7UUFDYixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3QyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3RCO1FBQ0QsT0FBTyxNQUFhLENBQUM7SUFDekIsQ0FBQztDQUNKO0FBakZELDhCQWlGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbmZpZyB9IGZyb20gXCJwcm9jZXNzXCI7XG5pbXBvcnQgeyBBcGlBcHBDb25maWcgfSBmcm9tIFwiLi9jdXN0b21Db25maWdzL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4vY3VzdG9tQ29uZmlncy9HbG9iYWxBcHBDb25maWdcIjtcbmltcG9ydCB7IElBcHBDb25maWcgfSBmcm9tIFwiLi9jdXN0b21Db25maWdzL0lBcHBDb25maWdcIjtcbmltcG9ydCB7IFJlc291cmNlQXBwQ29uZmlnIH0gZnJvbSBcIi4vY3VzdG9tQ29uZmlncy9SZXNvdXJjZUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgVHNnRHluYW1vUHJvcCB9IGZyb20gXCIuL3R5cGVzXCI7XG5pbXBvcnQgeyBUc2dEbnNBcHBDb25maWcgfSBmcm9tIFwiLi90eXBlcy9Uc2dEbnNDb25maWdcIjtcbmltcG9ydCB7IFRzZ0xhbWJkYU5hbWUgfSBmcm9tIFwiLi90eXBlcy9Uc2dMYW1iZGFOYW1lXCI7XG5pbXBvcnQgeyBUc2dMYW1iZGFQcm9wIH0gZnJvbSBcIi4vdHlwZXMvVHNnTGFtYmRhUHJvcFwiO1xuXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnIGltcGxlbWVudHMgSUFwcENvbmZpZyB7XG5cbiAgICBwdWJsaWMgQVBJOiBBcGlBcHBDb25maWc7XG4gICAgcHVibGljIEdMT0JBTFM6IEdsb2JhbEFwcENvbmZpZztcbiAgICBwdWJsaWMgUkVTT1VSQ0VTOiBSZXNvdXJjZUFwcENvbmZpZztcbiAgICBwdWJsaWMgRE5TPzogVHNnRG5zQXBwQ29uZmlnO1xuXG5cbiAgICBwdWJsaWMgbGFtYmRhQ29uZmlnczogVHNnTGFtYmRhUHJvcFtdO1xuICAgIHB1YmxpYyBkeW5hbW9Db25maWdzOiBUc2dEeW5hbW9Qcm9wW107XG5cbiAgICBnZXQgQXBwTmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuR0xPQkFMUy5uYW1lO1xuICAgIH1cblxuICAgIGdldCBBcHBQcmVmaXgoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5HTE9CQUxTLnByZWZpeCkgPyB0aGlzLkdMT0JBTFMucHJlZml4IDogdGhpcy5HTE9CQUxTLm5hbWU7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBJQXBwQ29uZmlnKSB7XG4gICAgICAgIHRoaXMucG9wdWxhdGUoY29uZmlnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHBvcHVsYXRlKGNvbmZpZzogSUFwcENvbmZpZykge1xuICAgICAgICB0aGlzLnBvcHVsYXRlR2xvYmFsQ29uZmlnKGNvbmZpZyk7XG4gICAgICAgIHRoaXMucG9wdWxhdGVBcGlDb25maWcoY29uZmlnKTtcbiAgICAgICAgdGhpcy5wb3B1bGF0ZVJlc291cmNlcyhjb25maWcpO1xuXG5cbiAgICB9XG5cbiAgICBwcml2YXRlIHBvcHVsYXRlR2xvYmFsQ29uZmlnKGNvbmZpZzogSUFwcENvbmZpZykge1xuICAgICAgICB0aGlzLkdMT0JBTFMgPSB7XG4gICAgICAgICAgICAuLi5jb25maWcuR0xPQkFMU1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgcG9wdWxhdGVBcGlDb25maWcoY29uZmlnOiBJQXBwQ29uZmlnKSB7XG5cbiAgICAgICAgaWYgKGNvbmZpZy5BUEkpXG4gICAgICAgICAgICB0aGlzLkFQSSA9IHtcbiAgICAgICAgICAgICAgICAuLi5jb25maWcuQVBJXG4gICAgICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgcG9wdWxhdGVSZXNvdXJjZXMoY29uZmlnOiBJQXBwQ29uZmlnKSB7XG4gICAgICAgIHRoaXMuUkVTT1VSQ0VTID0ge1xuICAgICAgICAgICAgLi4uY29uZmlnLlJFU09VUkNFU1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLlJFU09VUkNFUy5EWU5BTU8gPSB7XG4gICAgICAgICAgICAuLi5jb25maWcuUkVTT1VSQ0VTLkRZTkFNT1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuRE5TID0ge1xuICAgICAgICAgICAgLi4uY29uZmlnLkROUyFcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLy8gICAgIHRoaXMubGFtYmRhQ29uZmlncyA9IHRoaXMuZXhwYW5kUHJvcHM8VHNnTGFtYmRhTmFtZSwgVHNnTGFtYmRhUHJvcD4odGhpcy5SRVNPVVJDRVMuTEFNQkRBISk7XG4gICAgLy8gICAgIHRoaXMuZHluYW1vQ29uZmlncyA9IHRoaXMuZXhwYW5kUHJvcHM8VHNnVGFibGVOYW1lLCBUc2dEeW5hbW9Qcm9wPih0aGlzLlJFU09VUkNFUy5EWU5BTU8/LlRBQkxFUyEpO1xuICAgIC8vIH1cblxuICAgIHByaXZhdGUgcG9wdWxhdGVDb25maWdzPFQsIFI+KHJlc3VsdDogUltdLCByZWNvcmQ/OiBSZWNvcmQ8c3RyaW5nLCBSPikge1xuXG4gICAgICAgIGlmICghcmVjb3JkKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdCA9IHRoaXMuZXhwYW5kUHJvcHM8VCwgUj4ocmVjb3JkKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcblxuICAgIH1cblxuICAgIHByaXZhdGUgZXhwYW5kUHJvcHM8VCwgUj4oZGF0YTogUmVjb3JkPHN0cmluZywgUj4pIHtcbiAgICAgICAgXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGEpKSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdCBhcyBSW107XG4gICAgfVxufSJdfQ==
@@ -6,5 +6,5 @@ export interface IAppConfig {
6
6
  GLOBALS: GlobalAppConfig;
7
7
  API?: ApiAppConfig;
8
8
  RESOURCES: ResourceAppConfig;
9
- DNS: TsgDnsAppConfig;
9
+ DNS?: TsgDnsAppConfig;
10
10
  }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUFwcENvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvY3VzdG9tQ29uZmlncy9JQXBwQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gXCIuLi9FbnZpcm9ubWVudHNcIjtcbmltcG9ydCB7IFRzZ0Ruc0FwcENvbmZpZyB9IGZyb20gXCIuLi90eXBlcy9Uc2dEbnNDb25maWdcIjtcbmltcG9ydCB7IEFwaUFwcENvbmZpZyB9IGZyb20gXCIuL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4vR2xvYmFsQXBwQ29uZmlnXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUFwcENvbmZpZyB9IGZyb20gXCIuL1Jlc291cmNlQXBwQ29uZmlnXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFwcENvbmZpZyB7XG4gICAgXG4gICAgR0xPQkFMUzogR2xvYmFsQXBwQ29uZmlnO1xuICAgIEFQST86IEFwaUFwcENvbmZpZztcbiAgICBSRVNPVVJDRVM6IFJlc291cmNlQXBwQ29uZmlnO1xuICAgIEROUzogVHNnRG5zQXBwQ29uZmlnO1xufSJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUFwcENvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvY3VzdG9tQ29uZmlncy9JQXBwQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gXCIuLi9FbnZpcm9ubWVudHNcIjtcbmltcG9ydCB7IFRzZ0Ruc0FwcENvbmZpZyB9IGZyb20gXCIuLi90eXBlcy9Uc2dEbnNDb25maWdcIjtcbmltcG9ydCB7IEFwaUFwcENvbmZpZyB9IGZyb20gXCIuL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4vR2xvYmFsQXBwQ29uZmlnXCI7XG5pbXBvcnQgeyBSZXNvdXJjZUFwcENvbmZpZyB9IGZyb20gXCIuL1Jlc291cmNlQXBwQ29uZmlnXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUFwcENvbmZpZyB7XG4gICAgXG4gICAgR0xPQkFMUzogR2xvYmFsQXBwQ29uZmlnO1xuICAgIEFQST86IEFwaUFwcENvbmZpZztcbiAgICBSRVNPVVJDRVM6IFJlc291cmNlQXBwQ29uZmlnO1xuICAgIEROUz86IFRzZ0Ruc0FwcENvbmZpZztcbn0iXX0=
@@ -19,11 +19,11 @@ class MicroService extends constructs_1.Construct {
19
19
  }
20
20
  onInit(scope, props) {
21
21
  let tables = undefined;
22
- if (!process.env.SECRET_MANAGER_ARN) {
23
- throw new Error(`You must provide the ARN for the your Configuration Secret
24
- Manager`);
22
+ if (process.env.SECRET_MANAGER_ARN) {
23
+ // throw new Error(`You must provide the ARN for the your Configuration Secret
24
+ // Manager`);
25
+ const secretMgr = (0, securityManager_1.getSecretManager)(scope, props, process.env.SECRET_MANAGER_ARN);
25
26
  }
26
- const secretMgr = (0, securityManager_1.getSecretManager)(scope, props, process.env.SECRET_MANAGER_ARN);
27
27
  // const commonLayer = createCommonLayer(scope, props);
28
28
  const gateway = new createApi_1.Api(scope, this.appConfig).APIs;
29
29
  const layers = undefined; // [commonLayer];
@@ -33,7 +33,7 @@ class MicroService extends constructs_1.Construct {
33
33
  tables = dynamo.CreatedTables;
34
34
  }
35
35
  // props.RESOURCES.LAMBDA.forEach((lambdaProp: TsgLambdaProp) => {
36
- const result = new createMicroServiceBundle_1.CreateMicroServiceBundle(scope, gateway[0], props, this.appConfig, tables, secretMgr, layers);
36
+ const result = new createMicroServiceBundle_1.CreateMicroServiceBundle(scope, gateway[0], props, this.appConfig, tables, null, layers);
37
37
  // });
38
38
  }
39
39
  createTag(scope) {
@@ -42,4 +42,4 @@ class MicroService extends constructs_1.Construct {
42
42
  }
43
43
  }
44
44
  exports.MicroService = MicroService;
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9TZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0cnVjdHMvTWljcm9TZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJDQUF1QztBQUV2Qyw0RkFBeUY7QUFDekYscUVBQW9FO0FBQ3BFLDhEQUFxRDtBQUNyRCxrRUFBZ0U7QUFFaEUsbURBQWdEO0FBQ2hELDZDQUFtQztBQUluQyxNQUFhLFlBQWEsU0FBUSxzQkFBUztJQUt2QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLHFCQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsTUFBTTtZQUN0RCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUU3RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN6QixDQUFDO0lBRU8sTUFBTSxDQUFDLEtBQWdCLEVBQUUsS0FBZ0I7UUFFN0MsSUFBSSxNQUFNLEdBQXdCLFNBQVMsQ0FBQztRQUU1QyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRTtZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDO3dCQUNKLENBQUMsQ0FBQztTQUNqQjtRQUVELE1BQU0sU0FBUyxHQUFHLElBQUEsa0NBQWdCLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFakYsdURBQXVEO1FBRXZELE1BQU0sT0FBTyxHQUFHLElBQUksZUFBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRXBELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDLGlCQUFpQjtRQUUzQyxzQ0FBc0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSw2QkFBYyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFekQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7U0FDakM7UUFFRCxrRUFBa0U7UUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxLQUFLLEVBQ3pDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3RFLE1BQU07SUFHVixDQUFDO0lBRVMsU0FBUyxDQUFDLEtBQWdCO1FBQ2hDLGtCQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEUsQ0FBQztDQUNKO0FBdkRELG9DQXVEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhYmxlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1keW5hbW9kYlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE1pY3Jvc2VydmljZVByb3BzIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvTWljcm9zZXJ2aWNlUHJvcHNcIjtcbmltcG9ydCB7IENyZWF0ZU1pY3JvU2VydmljZUJ1bmRsZSB9IGZyb20gXCIuLi9yZXNvdXJjZXMvZ2F0ZXdheS9jcmVhdGVNaWNyb1NlcnZpY2VCdW5kbGVcIjtcbmltcG9ydCB7IENyZWF0ZUR5bmFtb0RiIH0gZnJvbSBcIi4uL3Jlc291cmNlcy9keW5hbW9kYi9DcmVhdGVEeW5hbW9cIjtcbmltcG9ydCB7IEFwaSB9IGZyb20gXCIuLi9yZXNvdXJjZXMvZ2F0ZXdheS9jcmVhdGVBcGlcIjtcbmltcG9ydCB7IGdldFNlY3JldE1hbmFnZXIgfSBmcm9tIFwiLi4vcmVzb3VyY2VzL3NlY3VyaXR5TWFuYWdlclwiO1xuaW1wb3J0IHsgY3JlYXRlQ29tbW9uTGF5ZXIgfSBmcm9tIFwiLi4vcmVzb3VyY2VzL2hlbHBlcnMvY3JlYXRlQ29tbW9uTGF5ZXJcIjtcbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gXCIuLi9jb25maWcvQXBwQ29uZmlnXCI7XG5pbXBvcnQgeyBUYWdzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBUc2dMYW1iZGFQcm9wcyB9IGZyb20gXCIuLi9jb25maWcvdHlwZXMvVHNnTGFtYmRhUHJvcHNcIjtcbmltcG9ydCB7IFRzZ0xhbWJkYVByb3AgfSBmcm9tIFwiLi4vY29uZmlnL3R5cGVzXCI7XG5cbmV4cG9ydCBjbGFzcyBNaWNyb1NlcnZpY2UgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlcXVpcmVEeW5hbW9UYWJsZXM6IGJvb2xlYW47ICBcbiAgICBwcm90ZWN0ZWQgYXBwQ29uZmlnOiBBcHBDb25maWc7XG5cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWljcm9zZXJ2aWNlUHJvcHMpIHtcbiAgICAgICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgICAgICB0aGlzLmFwcENvbmZpZyA9IG5ldyBBcHBDb25maWcocHJvcHMpO1xuXG4gICAgICAgIHRoaXMucmVxdWlyZUR5bmFtb1RhYmxlcyA9IChwcm9wcy5SRVNPVVJDRVMuRFlOQU1PPy5UQUJMRVMgJiZcbiAgICAgICAgICAgIHByb3BzLlJFU09VUkNFUy5EWU5BTU8uVEFCTEVTLmxlbmd0aCA+IDApID8gdHJ1ZSA6IGZhbHNlO1xuXG4gICAgICAgIHRoaXMub25Jbml0KHNjb3BlLCB0aGlzLmFwcENvbmZpZyk7XG5cbiAgICAgICAgdGhpcy5jcmVhdGVUYWcoc2NvcGUpXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkluaXQoc2NvcGU6IENvbnN0cnVjdCwgcHJvcHM6IEFwcENvbmZpZykge1xuXG4gICAgICAgIGxldCB0YWJsZXM6IFRhYmxlW10gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgaWYgKCFwcm9jZXNzLmVudi5TRUNSRVRfTUFOQUdFUl9BUk4pIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgWW91IG11c3QgcHJvdmlkZSB0aGUgQVJOIGZvciB0aGUgeW91ciBDb25maWd1cmF0aW9uIFNlY3JldCBcbiAgICAgICAgICAgICAgICBNYW5hZ2VyYCk7ICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzZWNyZXRNZ3IgPSBnZXRTZWNyZXRNYW5hZ2VyKHNjb3BlLCBwcm9wcywgcHJvY2Vzcy5lbnYuU0VDUkVUX01BTkFHRVJfQVJOKTtcblxuICAgICAgICAvLyBjb25zdCBjb21tb25MYXllciA9IGNyZWF0ZUNvbW1vbkxheWVyKHNjb3BlLCBwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgZ2F0ZXdheSA9IG5ldyBBcGkoc2NvcGUsIHRoaXMuYXBwQ29uZmlnKS5BUElzO1xuXG4gICAgICAgIGNvbnN0IGxheWVycyA9IHVuZGVmaW5lZDsgLy8gW2NvbW1vbkxheWVyXTtcblxuICAgICAgICAvLyBDcmVhdGVzIER5bmFtb0RiIFRhYmxlcyBpZiByZXF1aXJlZFxuICAgICAgICBpZiAodGhpcy5yZXF1aXJlRHluYW1vVGFibGVzKSB7XG4gICAgICAgICAgICBjb25zdCBkeW5hbW8gPSBuZXcgQ3JlYXRlRHluYW1vRGIoc2NvcGUsIHRoaXMuYXBwQ29uZmlnKTtcblxuICAgICAgICAgICAgdGFibGVzID0gZHluYW1vLkNyZWF0ZWRUYWJsZXM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBwcm9wcy5SRVNPVVJDRVMuTEFNQkRBLmZvckVhY2goKGxhbWJkYVByb3A6IFRzZ0xhbWJkYVByb3ApID0+IHtcbiAgICAgICAgICAgIFxuICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgQ3JlYXRlTWljcm9TZXJ2aWNlQnVuZGxlKHNjb3BlLCBcbiAgICAgICAgICAgICAgICBnYXRld2F5WzBdLCBwcm9wcywgdGhpcy5hcHBDb25maWcsIHRhYmxlcywgc2VjcmV0TWdyLCBsYXllcnMpO1xuICAgICAgICAvLyB9KTtcblxuICAgICAgICBcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVGFnKHNjb3BlOiBDb25zdHJ1Y3QpIHtcbiAgICAgICAgVGFncy5vZihzY29wZSkuYWRkKCdBcHAnLCB0aGlzLmFwcENvbmZpZy5BcHBOYW1lKTtcbiAgICAgICAgVGFncy5vZihzY29wZSkuYWRkKCdSZXNvdWNlUHJlZml4JywgdGhpcy5hcHBDb25maWcuQXBwUHJlZml4KTtcbiAgICB9XG59Il19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9TZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0cnVjdHMvTWljcm9TZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJDQUF1QztBQUV2Qyw0RkFBeUY7QUFDekYscUVBQW9FO0FBQ3BFLDhEQUFxRDtBQUNyRCxrRUFBZ0U7QUFFaEUsbURBQWdEO0FBQ2hELDZDQUFtQztBQUluQyxNQUFhLFlBQWEsU0FBUSxzQkFBUztJQUt2QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLHFCQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsTUFBTTtZQUN0RCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUU3RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN6QixDQUFDO0lBRU8sTUFBTSxDQUFDLEtBQWdCLEVBQUUsS0FBZ0I7UUFFN0MsSUFBSSxNQUFNLEdBQXdCLFNBQVMsQ0FBQztRQUc1QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEVBQUU7WUFDaEMsK0VBQStFO1lBQy9FLHVCQUF1QjtZQUN0QixNQUFNLFNBQVMsR0FBRyxJQUFBLGtDQUFnQixFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3JGO1FBSUQsdURBQXVEO1FBRXZELE1BQU0sT0FBTyxHQUFHLElBQUksZUFBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRXBELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDLGlCQUFpQjtRQUUzQyxzQ0FBc0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDMUIsTUFBTSxNQUFNLEdBQUcsSUFBSSw2QkFBYyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFekQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7U0FDakM7UUFFRCxrRUFBa0U7UUFFbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxLQUFLLEVBQ3pDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2pFLE1BQU07SUFHVixDQUFDO0lBRVMsU0FBUyxDQUFDLEtBQWdCO1FBQ2hDLGtCQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEUsQ0FBQztDQUNKO0FBekRELG9DQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhYmxlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1keW5hbW9kYlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE1pY3Jvc2VydmljZVByb3BzIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvTWljcm9zZXJ2aWNlUHJvcHNcIjtcbmltcG9ydCB7IENyZWF0ZU1pY3JvU2VydmljZUJ1bmRsZSB9IGZyb20gXCIuLi9yZXNvdXJjZXMvZ2F0ZXdheS9jcmVhdGVNaWNyb1NlcnZpY2VCdW5kbGVcIjtcbmltcG9ydCB7IENyZWF0ZUR5bmFtb0RiIH0gZnJvbSBcIi4uL3Jlc291cmNlcy9keW5hbW9kYi9DcmVhdGVEeW5hbW9cIjtcbmltcG9ydCB7IEFwaSB9IGZyb20gXCIuLi9yZXNvdXJjZXMvZ2F0ZXdheS9jcmVhdGVBcGlcIjtcbmltcG9ydCB7IGdldFNlY3JldE1hbmFnZXIgfSBmcm9tIFwiLi4vcmVzb3VyY2VzL3NlY3VyaXR5TWFuYWdlclwiO1xuaW1wb3J0IHsgY3JlYXRlQ29tbW9uTGF5ZXIgfSBmcm9tIFwiLi4vcmVzb3VyY2VzL2hlbHBlcnMvY3JlYXRlQ29tbW9uTGF5ZXJcIjtcbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gXCIuLi9jb25maWcvQXBwQ29uZmlnXCI7XG5pbXBvcnQgeyBUYWdzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBUc2dMYW1iZGFQcm9wcyB9IGZyb20gXCIuLi9jb25maWcvdHlwZXMvVHNnTGFtYmRhUHJvcHNcIjtcbmltcG9ydCB7IFRzZ0xhbWJkYVByb3AgfSBmcm9tIFwiLi4vY29uZmlnL3R5cGVzXCI7XG5cbmV4cG9ydCBjbGFzcyBNaWNyb1NlcnZpY2UgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlcXVpcmVEeW5hbW9UYWJsZXM6IGJvb2xlYW47ICBcbiAgICBwcm90ZWN0ZWQgYXBwQ29uZmlnOiBBcHBDb25maWc7XG5cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTWljcm9zZXJ2aWNlUHJvcHMpIHtcbiAgICAgICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgICAgICB0aGlzLmFwcENvbmZpZyA9IG5ldyBBcHBDb25maWcocHJvcHMpO1xuXG4gICAgICAgIHRoaXMucmVxdWlyZUR5bmFtb1RhYmxlcyA9IChwcm9wcy5SRVNPVVJDRVMuRFlOQU1PPy5UQUJMRVMgJiZcbiAgICAgICAgICAgIHByb3BzLlJFU09VUkNFUy5EWU5BTU8uVEFCTEVTLmxlbmd0aCA+IDApID8gdHJ1ZSA6IGZhbHNlO1xuXG4gICAgICAgIHRoaXMub25Jbml0KHNjb3BlLCB0aGlzLmFwcENvbmZpZyk7XG5cbiAgICAgICAgdGhpcy5jcmVhdGVUYWcoc2NvcGUpXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkluaXQoc2NvcGU6IENvbnN0cnVjdCwgcHJvcHM6IEFwcENvbmZpZykge1xuXG4gICAgICAgIGxldCB0YWJsZXM6IFRhYmxlW10gfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cblxuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuU0VDUkVUX01BTkFHRVJfQVJOKSB7XG4gICAgICAgICAgICAvLyB0aHJvdyBuZXcgRXJyb3IoYFlvdSBtdXN0IHByb3ZpZGUgdGhlIEFSTiBmb3IgdGhlIHlvdXIgQ29uZmlndXJhdGlvbiBTZWNyZXQgXG4gICAgICAgICAgICAvLyAgICAgTWFuYWdlcmApOyAgICAgIFxuICAgICAgICAgICAgIGNvbnN0IHNlY3JldE1nciA9IGdldFNlY3JldE1hbmFnZXIoc2NvcGUsIHByb3BzLCBwcm9jZXNzLmVudi5TRUNSRVRfTUFOQUdFUl9BUk4pOyAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICBcblxuICAgICAgICAvLyBjb25zdCBjb21tb25MYXllciA9IGNyZWF0ZUNvbW1vbkxheWVyKHNjb3BlLCBwcm9wcyk7XG5cbiAgICAgICAgY29uc3QgZ2F0ZXdheSA9IG5ldyBBcGkoc2NvcGUsIHRoaXMuYXBwQ29uZmlnKS5BUElzO1xuXG4gICAgICAgIGNvbnN0IGxheWVycyA9IHVuZGVmaW5lZDsgLy8gW2NvbW1vbkxheWVyXTtcblxuICAgICAgICAvLyBDcmVhdGVzIER5bmFtb0RiIFRhYmxlcyBpZiByZXF1aXJlZFxuICAgICAgICBpZiAodGhpcy5yZXF1aXJlRHluYW1vVGFibGVzKSB7XG4gICAgICAgICAgICBjb25zdCBkeW5hbW8gPSBuZXcgQ3JlYXRlRHluYW1vRGIoc2NvcGUsIHRoaXMuYXBwQ29uZmlnKTtcblxuICAgICAgICAgICAgdGFibGVzID0gZHluYW1vLkNyZWF0ZWRUYWJsZXM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBwcm9wcy5SRVNPVVJDRVMuTEFNQkRBLmZvckVhY2goKGxhbWJkYVByb3A6IFRzZ0xhbWJkYVByb3ApID0+IHtcbiAgICAgICAgICAgIFxuICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgQ3JlYXRlTWljcm9TZXJ2aWNlQnVuZGxlKHNjb3BlLCBcbiAgICAgICAgICAgICAgICBnYXRld2F5WzBdLCBwcm9wcywgdGhpcy5hcHBDb25maWcsIHRhYmxlcywgbnVsbCwgbGF5ZXJzKTtcbiAgICAgICAgLy8gfSk7XG5cbiAgICAgICAgXG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhZyhzY29wZTogQ29uc3RydWN0KSB7XG4gICAgICAgIFRhZ3Mub2Yoc2NvcGUpLmFkZCgnQXBwJywgdGhpcy5hcHBDb25maWcuQXBwTmFtZSk7XG4gICAgICAgIFRhZ3Mub2Yoc2NvcGUpLmFkZCgnUmVzb3VjZVByZWZpeCcsIHRoaXMuYXBwQ29uZmlnLkFwcFByZWZpeCk7XG4gICAgfVxufSJdfQ==
@@ -6,5 +6,5 @@ export interface MicroserviceProps {
6
6
  API: ApiAppConfig;
7
7
  GLOBALS: GlobalAppConfig;
8
8
  RESOURCES: ResourceAppConfig;
9
- DNS: TsgDnsAppConfig;
9
+ DNS?: TsgDnsAppConfig;
10
10
  }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9zZXJ2aWNlUHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9NaWNyb3NlcnZpY2VQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBpQXBwQ29uZmlnIH0gZnJvbSBcIi4uL2NvbmZpZy9jdXN0b21Db25maWdzL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4uL2NvbmZpZy9jdXN0b21Db25maWdzL0dsb2JhbEFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgUmVzb3VyY2VBcHBDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL2N1c3RvbUNvbmZpZ3MvUmVzb3VyY2VBcHBDb25maWdcIjtcbmltcG9ydCB7IFRzZ0Ruc0FwcENvbmZpZyB9IGZyb20gXCIuLi9jb25maWcvdHlwZXMvVHNnRG5zQ29uZmlnXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWljcm9zZXJ2aWNlUHJvcHMge1xuICAgIEFQSTogQXBpQXBwQ29uZmlnO1xuICAgIEdMT0JBTFM6IEdsb2JhbEFwcENvbmZpZztcbiAgICBSRVNPVVJDRVM6IFJlc291cmNlQXBwQ29uZmlnO1xuICAgIEROUzogVHNnRG5zQXBwQ29uZmlnO1xufSJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9zZXJ2aWNlUHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9NaWNyb3NlcnZpY2VQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBpQXBwQ29uZmlnIH0gZnJvbSBcIi4uL2NvbmZpZy9jdXN0b21Db25maWdzL0FwaUFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgR2xvYmFsQXBwQ29uZmlnIH0gZnJvbSBcIi4uL2NvbmZpZy9jdXN0b21Db25maWdzL0dsb2JhbEFwcENvbmZpZ1wiO1xuaW1wb3J0IHsgUmVzb3VyY2VBcHBDb25maWcgfSBmcm9tIFwiLi4vY29uZmlnL2N1c3RvbUNvbmZpZ3MvUmVzb3VyY2VBcHBDb25maWdcIjtcbmltcG9ydCB7IFRzZ0Ruc0FwcENvbmZpZyB9IGZyb20gXCIuLi9jb25maWcvdHlwZXMvVHNnRG5zQ29uZmlnXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWljcm9zZXJ2aWNlUHJvcHMge1xuICAgIEFQSTogQXBpQXBwQ29uZmlnO1xuICAgIEdMT0JBTFM6IEdsb2JhbEFwcENvbmZpZztcbiAgICBSRVNPVVJDRVM6IFJlc291cmNlQXBwQ29uZmlnO1xuICAgIEROUz86IFRzZ0Ruc0FwcENvbmZpZztcbn0iXX0=
@@ -15,15 +15,15 @@ class CreateCertificate {
15
15
  // region: props.GLOBALS.region || "us-east-1"
16
16
  // });
17
17
  const appType = "spa-app";
18
- const cert = new aws_certificatemanager_1.Certificate(scope, `${props.DNS.ZoneNameWithoutPeriod}-${appType}-certificate`, {
19
- domainName: `${props.API.DomainPrefix}.${props.DNS.ZoneName}`,
20
- subjectAlternativeNames: [`${props.API.DomainPrefix}.${props.DNS.ZoneName}`],
18
+ const cert = new aws_certificatemanager_1.Certificate(scope, `${props.DNS?.ZoneNameWithoutPeriod}-${appType}-certificate`, {
19
+ domainName: `${props.API.DomainPrefix}.${props.DNS?.ZoneName}`,
20
+ subjectAlternativeNames: [`${props.API.DomainPrefix}.${props.DNS?.ZoneName}`],
21
21
  validation: aws_certificatemanager_1.CertificateValidation.fromDnsMultiZone({
22
- [`${props.API.DomainPrefix}.${props.DNS.ZoneName}`]: hostedZone,
22
+ [`${props.API.DomainPrefix}.${props.DNS?.ZoneName}`]: hostedZone,
23
23
  }),
24
24
  });
25
25
  return cert;
26
26
  }
27
27
  }
28
28
  exports.CreateCertificate = CreateCertificate;
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlQ2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVzb3VyY2VzL2NlcnRpZmljYXRlL2NyZWF0ZUNlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE0QztBQUM1QywrRUFBK0g7QUFNL0gsTUFBYSxpQkFBaUI7SUFJMUIsWUFBWSxLQUFnQixFQUFFLEtBQXdCLEVBQUUsVUFBdUI7UUFFM0UsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUV0RSxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLDJCQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFL0QsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQWdCLEVBQUUsS0FBd0IsRUFBRSxVQUF1QjtRQUVuRiw4R0FBOEc7UUFDOUcscUVBQXFFO1FBQ3JFLGtCQUFrQjtRQUNsQixrREFBa0Q7UUFDbEQsU0FBUztRQUVQLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztRQUUxQixNQUFNLElBQUksR0FBRyxJQUFJLG9DQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsSUFBSSxPQUFPLGNBQWMsRUFBRTtZQUMvRixVQUFVLEVBQUUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtZQUM3RCx1QkFBdUIsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1RSxVQUFVLEVBQUUsOENBQXFCLENBQUMsZ0JBQWdCLENBQUM7Z0JBQzNDLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUcsVUFBVTthQUN2RSxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUM7SUFDbEIsQ0FBQztDQUNKO0FBaENELDhDQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENlcnRpZmljYXRlLCBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24sIERuc1ZhbGlkYXRlZENlcnRpZmljYXRlLCBJQ2VydGlmaWNhdGUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHsgSUhvc3RlZFpvbmUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBNaWNyb3NlcnZpY2VQcm9wcyB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL01pY3Jvc2VydmljZVByb3BzXCI7XG5cblxuZXhwb3J0IGNsYXNzIENyZWF0ZUNlcnRpZmljYXRlIHtcblxuICAgIHB1YmxpYyBjZXJ0aWZpY2F0ZTogSUNlcnRpZmljYXRlO1xuXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgcHJvcHM6IE1pY3Jvc2VydmljZVByb3BzLCBob3N0ZWRab25lOiBJSG9zdGVkWm9uZSkge1xuXG4gICAgICAgIHRoaXMuY2VydGlmaWNhdGUgPSB0aGlzLmdlbmVyYXRlQ2VydGlmaWNhdGUoc2NvcGUsIHByb3BzLCBob3N0ZWRab25lKTtcblxuICAgICAgICB0aGlzLmNlcnRpZmljYXRlLmFwcGx5UmVtb3ZhbFBvbGljeShSZW1vdmFsUG9saWN5LkRFU1RST1kpO1xuICAgICAgICBcbiAgICB9XG5cbiAgICBnZW5lcmF0ZUNlcnRpZmljYXRlKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzOiBNaWNyb3NlcnZpY2VQcm9wcywgaG9zdGVkWm9uZTogSUhvc3RlZFpvbmUpIHtcblxuICAgICAgICAvLyBjb25zdCBjZXJ0ID0gbmV3IERuc1ZhbGlkYXRlZENlcnRpZmljYXRlKHNjb3BlLCBgJHtwcm9wcy5ETlMuWm9uZU5hbWVXaXRob3V0UGVyaW9kfS1zcGEtYXBwLWNlcnRpZmljYXRlYCwge1xuICAgICAgICAvLyAgICAgZG9tYWluTmFtZTogYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlMuWm9uZU5hbWV9YCxcbiAgICAgICAgLy8gICAgIGhvc3RlZFpvbmUsXG4gICAgICAgIC8vICAgICByZWdpb246IHByb3BzLkdMT0JBTFMucmVnaW9uIHx8IFwidXMtZWFzdC0xXCJcbiAgICAgICAgLy8gICB9KTsgXG5cbiAgICAgICAgICBjb25zdCBhcHBUeXBlID0gXCJzcGEtYXBwXCI7XG5cbiAgICAgICAgICBjb25zdCBjZXJ0ID0gbmV3IENlcnRpZmljYXRlKHNjb3BlLCBgJHtwcm9wcy5ETlMuWm9uZU5hbWVXaXRob3V0UGVyaW9kfS0ke2FwcFR5cGV9LWNlcnRpZmljYXRlYCwge1xuICAgICAgICAgICAgZG9tYWluTmFtZTogYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlMuWm9uZU5hbWV9YCxcbiAgICAgICAgICAgIHN1YmplY3RBbHRlcm5hdGl2ZU5hbWVzOiBbYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlMuWm9uZU5hbWV9YF0sXG4gICAgICAgICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURuc011bHRpWm9uZSh7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBbYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlMuWm9uZU5hbWV9YF0gOiBob3N0ZWRab25lICwgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHJldHVybiBjZXJ0O1xuICAgIH1cbn0iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlQ2VydGlmaWNhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVzb3VyY2VzL2NlcnRpZmljYXRlL2NyZWF0ZUNlcnRpZmljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE0QztBQUM1QywrRUFBK0g7QUFNL0gsTUFBYSxpQkFBaUI7SUFJMUIsWUFBWSxLQUFnQixFQUFFLEtBQXdCLEVBQUUsVUFBdUI7UUFFM0UsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUV0RSxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLDJCQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFL0QsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQWdCLEVBQUUsS0FBd0IsRUFBRSxVQUF1QjtRQUVuRiw4R0FBOEc7UUFDOUcscUVBQXFFO1FBQ3JFLGtCQUFrQjtRQUNsQixrREFBa0Q7UUFDbEQsU0FBUztRQUVQLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztRQUUxQixNQUFNLElBQUksR0FBRyxJQUFJLG9DQUFXLENBQUMsS0FBSyxFQUFFLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsSUFBSSxPQUFPLGNBQWMsRUFBRTtZQUNoRyxVQUFVLEVBQUUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRTtZQUM5RCx1QkFBdUIsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsQ0FBQztZQUM3RSxVQUFVLEVBQUUsOENBQXFCLENBQUMsZ0JBQWdCLENBQUM7Z0JBQzNDLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUcsVUFBVTthQUN4RSxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUM7SUFDbEIsQ0FBQztDQUNKO0FBaENELDhDQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENlcnRpZmljYXRlLCBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24sIERuc1ZhbGlkYXRlZENlcnRpZmljYXRlLCBJQ2VydGlmaWNhdGUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHsgSUhvc3RlZFpvbmUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBNaWNyb3NlcnZpY2VQcm9wcyB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL01pY3Jvc2VydmljZVByb3BzXCI7XG5cblxuZXhwb3J0IGNsYXNzIENyZWF0ZUNlcnRpZmljYXRlIHtcblxuICAgIHB1YmxpYyBjZXJ0aWZpY2F0ZTogSUNlcnRpZmljYXRlO1xuXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgcHJvcHM6IE1pY3Jvc2VydmljZVByb3BzLCBob3N0ZWRab25lOiBJSG9zdGVkWm9uZSkge1xuXG4gICAgICAgIHRoaXMuY2VydGlmaWNhdGUgPSB0aGlzLmdlbmVyYXRlQ2VydGlmaWNhdGUoc2NvcGUsIHByb3BzLCBob3N0ZWRab25lKTtcblxuICAgICAgICB0aGlzLmNlcnRpZmljYXRlLmFwcGx5UmVtb3ZhbFBvbGljeShSZW1vdmFsUG9saWN5LkRFU1RST1kpO1xuICAgICAgICBcbiAgICB9XG5cbiAgICBnZW5lcmF0ZUNlcnRpZmljYXRlKHNjb3BlOiBDb25zdHJ1Y3QsIHByb3BzOiBNaWNyb3NlcnZpY2VQcm9wcywgaG9zdGVkWm9uZTogSUhvc3RlZFpvbmUpIHtcblxuICAgICAgICAvLyBjb25zdCBjZXJ0ID0gbmV3IERuc1ZhbGlkYXRlZENlcnRpZmljYXRlKHNjb3BlLCBgJHtwcm9wcy5ETlMuWm9uZU5hbWVXaXRob3V0UGVyaW9kfS1zcGEtYXBwLWNlcnRpZmljYXRlYCwge1xuICAgICAgICAvLyAgICAgZG9tYWluTmFtZTogYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlMuWm9uZU5hbWV9YCxcbiAgICAgICAgLy8gICAgIGhvc3RlZFpvbmUsXG4gICAgICAgIC8vICAgICByZWdpb246IHByb3BzLkdMT0JBTFMucmVnaW9uIHx8IFwidXMtZWFzdC0xXCJcbiAgICAgICAgLy8gICB9KTsgXG5cbiAgICAgICAgICBjb25zdCBhcHBUeXBlID0gXCJzcGEtYXBwXCI7XG5cbiAgICAgICAgICBjb25zdCBjZXJ0ID0gbmV3IENlcnRpZmljYXRlKHNjb3BlLCBgJHtwcm9wcy5ETlM/LlpvbmVOYW1lV2l0aG91dFBlcmlvZH0tJHthcHBUeXBlfS1jZXJ0aWZpY2F0ZWAsIHtcbiAgICAgICAgICAgIGRvbWFpbk5hbWU6IGAke3Byb3BzLkFQSS5Eb21haW5QcmVmaXh9LiR7cHJvcHMuRE5TPy5ab25lTmFtZX1gLFxuICAgICAgICAgICAgc3ViamVjdEFsdGVybmF0aXZlTmFtZXM6IFtgJHtwcm9wcy5BUEkuRG9tYWluUHJlZml4fS4ke3Byb3BzLkROUz8uWm9uZU5hbWV9YF0sXG4gICAgICAgICAgICB2YWxpZGF0aW9uOiBDZXJ0aWZpY2F0ZVZhbGlkYXRpb24uZnJvbURuc011bHRpWm9uZSh7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICBbYCR7cHJvcHMuQVBJLkRvbWFpblByZWZpeH0uJHtwcm9wcy5ETlM/LlpvbmVOYW1lfWBdIDogaG9zdGVkWm9uZSAsICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICByZXR1cm4gY2VydDtcbiAgICB9XG59Il19
@@ -22,7 +22,7 @@ class CreateDynamoDb extends baseResource_1.BaseResource {
22
22
  const tables = props?.map((prop, idx) => {
23
23
  const dbTable = new aws_dynamodb_1.Table(scope, `${prop.tableName}`, {
24
24
  ...prop,
25
- removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY
25
+ removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY,
26
26
  });
27
27
  this.config.RESOURCES.DYNAMO?.TABLES?.[idx].indexes.map((gsi) => {
28
28
  const gsiProps = {
@@ -84,4 +84,4 @@ CreateDynamoDb.ReadWriteActions = [
84
84
  "dynamodb:UpdateItem",
85
85
  ];
86
86
  exports.CreateDynamoDb = CreateDynamoDb;
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlRHluYW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9keW5hbW9kYi9DcmVhdGVEeW5hbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBQ3ZELDJEQUF1RjtBQUd2Rix1REFBb0Q7QUFHcEQsTUFBYSxjQUFlLFNBQVEsMkJBQW1CO0lBaUJuRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsWUFBc0IsS0FBZ0IsRUFBWSxNQUFpQjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBREgsVUFBSyxHQUFMLEtBQUssQ0FBVztRQUFZLFdBQU0sR0FBTixNQUFNLENBQVc7UUFHL0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbkQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDbkQ7SUFDTCxDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQWdCO1FBRWpDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVqQyxNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEdBQVcsRUFBRSxFQUFFO1lBQ2pELE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2xELEdBQUcsSUFBSTtnQkFDUCxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO2FBQ3ZDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBRTVELE1BQU0sUUFBUSxHQUE4QjtvQkFDeEMsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztvQkFDN0MsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO29CQUM5QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87b0JBQ3BCLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztpQkFFckMsQ0FBQztnQkFFRixPQUFPLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxJQUFJLEVBQUUsQ0FBQztJQUk1QixDQUFDO0lBR1MsWUFBWSxDQUFJLEtBQWdCLEVBQUUsYUFBa0I7UUFDMUQsSUFBSSxDQUFDLGdCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUN0QyxJQUFJLHVCQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsR0FBRyxFQUFFLEVBQUU7Z0JBQ3RDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUzthQUNyQixDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxXQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUUzRCxNQUFNLElBQUksR0FBUSxFQUFFLENBQUM7WUFFckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVsRCxJQUFJLENBQUMsWUFBWSxHQUFHO2dCQUNoQixJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO2dCQUN2QixJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO2FBQzFCLENBQUM7WUFFRixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUM7WUFFakMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFO2dCQUNYLElBQUksQ0FBQyxPQUFPLEdBQUc7b0JBQ1gsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSTtvQkFDcEIsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSTtpQkFDdkIsQ0FBQTthQUNKO1lBQ0QsT0FBTyxJQUFrQixDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxTQUFpQjtRQUNwQyw4REFBOEQ7UUFDOUQsT0FBTyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBRXRCLGtEQUFrRDtJQUN0RCxDQUFDOztBQXBHTSwrQkFBZ0IsR0FBYTtJQUNoQyx1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDZCQUE2QjtJQUM3QixxQkFBcUI7SUFDckIsd0JBQXdCO0lBQ3hCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsMkJBQTJCO0lBQzNCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHFCQUFxQjtDQUN4QixDQUFDO0FBZk8sd0NBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEdsb2JhbFNlY29uZGFyeUluZGV4UHJvcHMsVGFibGUsIFRhYmxlUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWR5bmFtb2RiXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2NvbmZpZy9BcHBDb25maWdcIjtcbmltcG9ydCB7IEJhc2VSZXNvdXJjZSB9IGZyb20gXCIuLi9iYXNlL2Jhc2VSZXNvdXJjZVwiO1xuXG5cbmV4cG9ydCBjbGFzcyBDcmVhdGVEeW5hbW9EYiBleHRlbmRzIEJhc2VSZXNvdXJjZTxUYWJsZT4ge1xuXG4gICAgc3RhdGljIFJlYWRXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuICAgICAgICBcImR5bmFtb2RiOkJhdGNoR2V0SXRlbVwiLFxuICAgICAgICBcImR5bmFtb2RiOkJhdGNoV3JpdGVJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6Q29uZGl0aW9uQ2hlY2tJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6RGVsZXRlSXRlbVwiLFxuICAgICAgICBcImR5bmFtb2RiOkRlc2NyaWJlVGFibGVcIixcbiAgICAgICAgXCJkeW5hbW9kYjpHZXRJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6R2V0UmVjb3Jkc1wiLFxuICAgICAgICBcImR5bmFtb2RiOkdldFNoYXJkSXRlcmF0b3JcIixcbiAgICAgICAgXCJkeW5hbW9kYjpQdXRJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6UXVlcnlcIixcbiAgICAgICAgXCJkeW5hbW9kYjpTY2FuXCIsXG4gICAgICAgIFwiZHluYW1vZGI6VXBkYXRlSXRlbVwiLFxuICAgIF07XG5cbiAgICBnZXQgQ3JlYXRlZFRhYmxlcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlZFJlc291cmNlcztcbiAgICB9XG4gICAgXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHNjb3BlOiBDb25zdHJ1Y3QsIHByb3RlY3RlZCBjb25maWc6IEFwcENvbmZpZykge1xuICAgICAgICBzdXBlcihzY29wZSwgY29uZmlnKTtcblxuICAgICAgICB0aGlzLmNyZWF0ZWRSZXNvdXJjZXMgPSB0aGlzLmNyZWF0ZVJlc291cmNlKHNjb3BlKTtcblxuICAgICAgICBpZiAodGhpcy5jcmVhdGVkUmVzb3VyY2VzKSB7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dChzY29wZSwgdGhpcy5jcmVhdGVkUmVzb3VyY2VzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBjcmVhdGVSZXNvdXJjZShzY29wZTogQ29uc3RydWN0KTogVGFibGVbXSB7XG4gICAgICAgIFxuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB0aGlzLmNyZWF0ZVByb3BzKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHRhYmxlcyA9IHByb3BzPy5tYXAoKHByb3A6IGFueSwgaWR4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYlRhYmxlID0gbmV3IFRhYmxlKHNjb3BlLCBgJHtwcm9wLnRhYmxlTmFtZX1gLCB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnByb3AsXG4gICAgICAgICAgICAgICAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWVxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWcuUkVTT1VSQ0VTLkRZTkFNTz8uVEFCTEVTPy5baWR4XS5pbmRleGVzLm1hcCgoZ3NpKSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZ3NpUHJvcHM6IEdsb2JhbFNlY29uZGFyeUluZGV4UHJvcHMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleE5hbWU6IHRoaXMuZ2VuZXJhdGVEYk5hbWUoZ3NpLmluZGV4TmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXJ0aXRpb25LZXk6IGdzaS5wYXJ0aXRpb25LZXksXG4gICAgICAgICAgICAgICAgICAgICAgICBzb3J0S2V5OiBnc2kuc29ydEtleSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2plY3Rpb25UeXBlOiBnc2kucHJvamVjdGlvblR5cGVcblxuICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgIGRiVGFibGUuYWRkR2xvYmFsU2Vjb25kYXJ5SW5kZXgoZ3NpUHJvcHMpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIHJldHVybiBkYlRhYmxlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHJldHVybiB0YWJsZXMgPz8gW107XG4gICAgICAgXG5cbiAgICAgICBcbiAgICB9XG5cblxuICAgIHByb3RlY3RlZCBjcmVhdGVPdXRwdXQ8VD4oc2NvcGU6IENvbnN0cnVjdCwgY3JlYXRlZEFzc2V0czogVFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3JlYXRlZFJlc291cmNlcyEuZm9yRWFjaCgoeCwgaWR4KSA9PiB7XG4gICAgICAgICAgICBuZXcgQ2ZuT3V0cHV0KHNjb3BlLCBgZHluYW1vVGFibGUke2lkeH1gLCB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHgudGFibGVOYW1lXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVQcm9wcygpIHtcbiAgICAgICAgY29uc3QgcHJvcHMgPSB0aGlzLmNvbmZpZy5SRVNPVVJDRVM/LkRZTkFNTz8uVEFCTEVTPy5tYXAoKHgpID0+IHtcblxuICAgICAgICAgICAgY29uc3QgcHJvcDogYW55ID0ge307XG5cbiAgICAgICAgICAgIHByb3AudGFibGVOYW1lID0gdGhpcy5nZW5lcmF0ZURiTmFtZSh4LnRhYmxlTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIHByb3AucGFydGl0aW9uS2V5ID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IHgucHJpbWFyeUtleS5uYW1lLFxuICAgICAgICAgICAgICAgIHR5cGU6IHgucHJpbWFyeUtleS50eXBlXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBwcm9wLmJpbGxpbmdNb2RlID0geC5iaWxsaW5nTW9kZTtcblxuICAgICAgICAgICAgaWYgKHguc29ydEtleSkge1xuICAgICAgICAgICAgICAgIHByb3Auc29ydEtleSA9IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogeC5zb3J0S2V5Lm5hbWUsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IHguc29ydEtleS50eXBlLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBwcm9wIGFzIFRhYmxlUHJvcHM7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBwcm9wcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdlbmVyYXRlRGJOYW1lKHRhYmxlTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIC8vIFRPRE86ICBSZW1vdmUgdGhpcyBsYXRlciAgdGFibGUgbmFtZXMgc2hvdWxkIGhhdmUgYXBwUHJlZml4XG4gICAgICAgIHJldHVybiBgJHt0YWJsZU5hbWV9YDtcbiAgICAgICAgXG4gICAgICAgIC8vIHJldHVybiBgJHt0aGlzLmNvbmZpZy5BcHBQcmVmaXh9LSR7dGFibGVOYW1lfWA7XG4gICAgfVxufSJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRlRHluYW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9keW5hbW9kYi9DcmVhdGVEeW5hbW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQXVEO0FBQ3ZELDJEQUFzRztBQUd0Ryx1REFBb0Q7QUFHcEQsTUFBYSxjQUFlLFNBQVEsMkJBQW1CO0lBaUJuRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsWUFBc0IsS0FBZ0IsRUFBWSxNQUFpQjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBREgsVUFBSyxHQUFMLEtBQUssQ0FBVztRQUFZLFdBQU0sR0FBTixNQUFNLENBQVc7UUFHL0QsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbkQsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDbkQ7SUFDTCxDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQWdCO1FBRWpDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUVqQyxNQUFNLE1BQU0sR0FBRyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEdBQVcsRUFBRSxFQUFFO1lBQ2pELE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2xELEdBQUcsSUFBSTtnQkFDUCxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO2FBRXZDLENBQUMsQ0FBQztZQUlILElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBRTVELE1BQU0sUUFBUSxHQUE4QjtvQkFDeEMsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztvQkFDN0MsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO29CQUM5QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87b0JBQ3BCLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztpQkFFckMsQ0FBQztnQkFFRixPQUFPLENBQUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDOUMsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxJQUFJLEVBQUUsQ0FBQztJQUk1QixDQUFDO0lBR1MsWUFBWSxDQUFJLEtBQWdCLEVBQUUsYUFBa0I7UUFDMUQsSUFBSSxDQUFDLGdCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUN0QyxJQUFJLHVCQUFTLENBQUMsS0FBSyxFQUFFLGNBQWMsR0FBRyxFQUFFLEVBQUU7Z0JBQ3RDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUzthQUNyQixDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxXQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUUzRCxNQUFNLElBQUksR0FBUSxFQUFFLENBQUM7WUFFckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVsRCxJQUFJLENBQUMsWUFBWSxHQUFHO2dCQUNoQixJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO2dCQUN2QixJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJO2FBQzFCLENBQUM7WUFFRixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUM7WUFFakMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFO2dCQUNYLElBQUksQ0FBQyxPQUFPLEdBQUc7b0JBQ1gsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSTtvQkFDcEIsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSTtpQkFDdkIsQ0FBQTthQUNKO1lBQ0QsT0FBTyxJQUFrQixDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxTQUFpQjtRQUNwQyw4REFBOEQ7UUFDOUQsT0FBTyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBRXRCLGtEQUFrRDtJQUN0RCxDQUFDOztBQXZHTSwrQkFBZ0IsR0FBYTtJQUNoQyx1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDZCQUE2QjtJQUM3QixxQkFBcUI7SUFDckIsd0JBQXdCO0lBQ3hCLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIsMkJBQTJCO0lBQzNCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHFCQUFxQjtDQUN4QixDQUFDO0FBZk8sd0NBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZm5PdXRwdXQsIFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEdsb2JhbFNlY29uZGFyeUluZGV4UHJvcHMsU3RyZWFtVmlld1R5cGUsVGFibGUsIFRhYmxlUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWR5bmFtb2RiXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2NvbmZpZy9BcHBDb25maWdcIjtcbmltcG9ydCB7IEJhc2VSZXNvdXJjZSB9IGZyb20gXCIuLi9iYXNlL2Jhc2VSZXNvdXJjZVwiO1xuXG5cbmV4cG9ydCBjbGFzcyBDcmVhdGVEeW5hbW9EYiBleHRlbmRzIEJhc2VSZXNvdXJjZTxUYWJsZT4ge1xuXG4gICAgc3RhdGljIFJlYWRXcml0ZUFjdGlvbnM6IHN0cmluZ1tdID0gW1xuICAgICAgICBcImR5bmFtb2RiOkJhdGNoR2V0SXRlbVwiLFxuICAgICAgICBcImR5bmFtb2RiOkJhdGNoV3JpdGVJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6Q29uZGl0aW9uQ2hlY2tJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6RGVsZXRlSXRlbVwiLFxuICAgICAgICBcImR5bmFtb2RiOkRlc2NyaWJlVGFibGVcIixcbiAgICAgICAgXCJkeW5hbW9kYjpHZXRJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6R2V0UmVjb3Jkc1wiLFxuICAgICAgICBcImR5bmFtb2RiOkdldFNoYXJkSXRlcmF0b3JcIixcbiAgICAgICAgXCJkeW5hbW9kYjpQdXRJdGVtXCIsXG4gICAgICAgIFwiZHluYW1vZGI6UXVlcnlcIixcbiAgICAgICAgXCJkeW5hbW9kYjpTY2FuXCIsXG4gICAgICAgIFwiZHluYW1vZGI6VXBkYXRlSXRlbVwiLFxuICAgIF07XG5cbiAgICBnZXQgQ3JlYXRlZFRhYmxlcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlZFJlc291cmNlcztcbiAgICB9XG4gICAgXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHNjb3BlOiBDb25zdHJ1Y3QsIHByb3RlY3RlZCBjb25maWc6IEFwcENvbmZpZykge1xuICAgICAgICBzdXBlcihzY29wZSwgY29uZmlnKTtcblxuICAgICAgICB0aGlzLmNyZWF0ZWRSZXNvdXJjZXMgPSB0aGlzLmNyZWF0ZVJlc291cmNlKHNjb3BlKTtcblxuICAgICAgICBpZiAodGhpcy5jcmVhdGVkUmVzb3VyY2VzKSB7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dChzY29wZSwgdGhpcy5jcmVhdGVkUmVzb3VyY2VzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBjcmVhdGVSZXNvdXJjZShzY29wZTogQ29uc3RydWN0KTogVGFibGVbXSB7XG4gICAgICAgIFxuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB0aGlzLmNyZWF0ZVByb3BzKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHRhYmxlcyA9IHByb3BzPy5tYXAoKHByb3A6IGFueSwgaWR4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkYlRhYmxlID0gbmV3IFRhYmxlKHNjb3BlLCBgJHtwcm9wLnRhYmxlTmFtZX1gLCB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnByb3AsXG4gICAgICAgICAgICAgICAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLlJFU09VUkNFUy5EWU5BTU8/LlRBQkxFUz8uW2lkeF0uaW5kZXhlcy5tYXAoKGdzaSkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdzaVByb3BzOiBHbG9iYWxTZWNvbmRhcnlJbmRleFByb3BzID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXhOYW1lOiB0aGlzLmdlbmVyYXRlRGJOYW1lKGdzaS5pbmRleE5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFydGl0aW9uS2V5OiBnc2kucGFydGl0aW9uS2V5LFxuICAgICAgICAgICAgICAgICAgICAgICAgc29ydEtleTogZ3NpLnNvcnRLZXksXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9qZWN0aW9uVHlwZTogZ3NpLnByb2plY3Rpb25UeXBlXG5cbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBkYlRhYmxlLmFkZEdsb2JhbFNlY29uZGFyeUluZGV4KGdzaVByb3BzKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gZGJUYWJsZTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gdGFibGVzID8/IFtdO1xuICAgICAgIFxuXG4gICAgICAgXG4gICAgfVxuXG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlT3V0cHV0PFQ+KHNjb3BlOiBDb25zdHJ1Y3QsIGNyZWF0ZWRBc3NldHM6IFRbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNyZWF0ZWRSZXNvdXJjZXMhLmZvckVhY2goKHgsIGlkeCkgPT4ge1xuICAgICAgICAgICAgbmV3IENmbk91dHB1dChzY29wZSwgYGR5bmFtb1RhYmxlJHtpZHh9YCwge1xuICAgICAgICAgICAgICAgIHZhbHVlOiB4LnRhYmxlTmFtZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlUHJvcHMoKSB7XG4gICAgICAgIGNvbnN0IHByb3BzID0gdGhpcy5jb25maWcuUkVTT1VSQ0VTPy5EWU5BTU8/LlRBQkxFUz8ubWFwKCh4KSA9PiB7XG5cbiAgICAgICAgICAgIGNvbnN0IHByb3A6IGFueSA9IHt9O1xuXG4gICAgICAgICAgICBwcm9wLnRhYmxlTmFtZSA9IHRoaXMuZ2VuZXJhdGVEYk5hbWUoeC50YWJsZU5hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICBwcm9wLnBhcnRpdGlvbktleSA9IHtcbiAgICAgICAgICAgICAgICBuYW1lOiB4LnByaW1hcnlLZXkubmFtZSxcbiAgICAgICAgICAgICAgICB0eXBlOiB4LnByaW1hcnlLZXkudHlwZVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcHJvcC5iaWxsaW5nTW9kZSA9IHguYmlsbGluZ01vZGU7XG5cbiAgICAgICAgICAgIGlmICh4LnNvcnRLZXkpIHtcbiAgICAgICAgICAgICAgICBwcm9wLnNvcnRLZXkgPSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IHguc29ydEtleS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiB4LnNvcnRLZXkudHlwZSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcHJvcCBhcyBUYWJsZVByb3BzO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gcHJvcHM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZW5lcmF0ZURiTmFtZSh0YWJsZU5hbWU6IHN0cmluZykge1xuICAgICAgICAvLyBUT0RPOiAgUmVtb3ZlIHRoaXMgbGF0ZXIgIHRhYmxlIG5hbWVzIHNob3VsZCBoYXZlIGFwcFByZWZpeFxuICAgICAgICByZXR1cm4gYCR7dGFibGVOYW1lfWA7XG4gICAgICAgIFxuICAgICAgICAvLyByZXR1cm4gYCR7dGhpcy5jb25maWcuQXBwUHJlZml4fS0ke3RhYmxlTmFtZX1gO1xuICAgIH1cbn0iXX0=
@@ -9,8 +9,6 @@ export declare class Api extends BaseResource<IRestApi> {
9
9
  private createApi;
10
10
  private createApiProps;
11
11
  private createDefaultCorsOptions;
12
- private createCustomDomain;
13
- private attachDomainToApi;
14
12
  private getZone;
15
13
  private createCertificate;
16
14
  private createARecord;
@@ -17,30 +17,46 @@ class Api extends baseResource_1.BaseResource {
17
17
  this.createdResources = this.createResource(scope);
18
18
  }
19
19
  createApi(scope) {
20
- const zone = this.getZone(this.scope, this.config);
21
- const api = new aws_apigateway_1.RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps(zone));
22
- this.createARecord(scope, zone, api);
23
- return api;
20
+ if (this.config.DNS) {
21
+ const zone = this.getZone(this.scope, this.config);
22
+ const api = new aws_apigateway_1.RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps(zone));
23
+ this.createARecord(scope, zone, api);
24
+ return api;
25
+ }
26
+ else {
27
+ const api = new aws_apigateway_1.RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps());
28
+ return api;
29
+ }
24
30
  }
25
31
  createApiProps(zone) {
26
- const cert = this.createCertificate(this.scope, zone, this.config);
27
- const props = {
28
- restApiName: `gs-api-${this.config.AppPrefix}-${this.config.API.Name}`,
29
- description: this.config.API.Description,
30
- domainName: {
31
- domainName: `${this.config.API.DomainPrefix}.${this.config.DNS.ZoneName}`,
32
- certificate: cert.certificate,
33
- endpointType: aws_apigateway_1.EndpointType.EDGE,
34
- securityPolicy: aws_apigateway_1.SecurityPolicy.TLS_1_2
35
- },
36
- // TODO: ADD CUSTOM DOMAIN HERE
37
- // defaultDomainMapping: {
38
- // domainName: domain,
39
- // },
40
- // domainName: '',
41
- defaultCorsPreflightOptions: this.corsOptions
42
- };
43
- return props;
32
+ if (this.config.DNS) {
33
+ const cert = this.createCertificate(this.scope, zone, this.config);
34
+ const props = {
35
+ restApiName: `${this.config.AppPrefix}-${this.config.API.Name}`,
36
+ description: this.config.API.Description,
37
+ domainName: {
38
+ domainName: `${this.config.API.DomainPrefix}.${this.config.DNS.ZoneName}`,
39
+ certificate: cert.certificate,
40
+ endpointType: aws_apigateway_1.EndpointType.EDGE,
41
+ securityPolicy: aws_apigateway_1.SecurityPolicy.TLS_1_2
42
+ },
43
+ // TODO: ADD CUSTOM DOMAIN HERE
44
+ // defaultDomainMapping: {
45
+ // domainName: domain,
46
+ // },
47
+ // domainName: '',
48
+ defaultCorsPreflightOptions: this.corsOptions
49
+ };
50
+ return props;
51
+ }
52
+ else {
53
+ const props = {
54
+ restApiName: `${this.config.AppPrefix}-${this.config.API.Name}`,
55
+ description: this.config.API.Description,
56
+ defaultCorsPreflightOptions: this.corsOptions
57
+ };
58
+ return props;
59
+ }
44
60
  }
45
61
  createDefaultCorsOptions() {
46
62
  const corsOptions = {
@@ -53,24 +69,24 @@ class Api extends baseResource_1.BaseResource {
53
69
  };
54
70
  return corsOptions;
55
71
  }
56
- createCustomDomain(scope, config) {
57
- const domainName = aws_apigateway_1.DomainName.fromDomainNameAttributes(scope, `${config.API.Name}-custom-domain`, {
58
- domainName: config.DNS.ZoneName,
59
- domainNameAliasHostedZoneId: config.DNS.ZoneId,
60
- domainNameAliasTarget: config.API.DomainPrefix,
61
- });
62
- return domainName;
63
- }
64
- attachDomainToApi(scope, api, domain, config) {
65
- return new aws_apigateway_1.BasePathMapping(scope, `${config.API.Name}-basePathMapping`, {
66
- domainName: domain,
67
- restApi: api,
68
- });
69
- }
72
+ // private createCustomDomain(scope: Construct, config: MicroserviceProps) {
73
+ // const domainName = DomainName.fromDomainNameAttributes(scope, `${config.API.Name}-custom-domain`, {
74
+ // domainName: config.DNS?.ZoneName,
75
+ // domainNameAliasHostedZoneId: config.DNS.ZoneId!,
76
+ // domainNameAliasTarget: config.API.DomainPrefix!,
77
+ // });
78
+ // return domainName
79
+ // }
80
+ // private attachDomainToApi(scope: Construct, api: IRestApi, domain: IDomainName, config: MicroserviceProps) {
81
+ // return new BasePathMapping(scope, `${config.API.Name}-basePathMapping`, {
82
+ // domainName: domain,
83
+ // restApi: api,
84
+ // });
85
+ // }
70
86
  getZone(scope, config) {
71
- return aws_route53_1.HostedZone.fromHostedZoneAttributes(scope, `${config.DNS.ZoneName}-zone`, {
72
- zoneName: config.DNS.ZoneName,
73
- hostedZoneId: config.DNS.ZoneId
87
+ return aws_route53_1.HostedZone.fromHostedZoneAttributes(scope, `${config.DNS?.ZoneName}-zone`, {
88
+ zoneName: config.DNS?.ZoneName,
89
+ hostedZoneId: config.DNS?.ZoneId
74
90
  });
75
91
  }
76
92
  createCertificate(scope, zone, config) {
@@ -103,4 +119,4 @@ class Api extends baseResource_1.BaseResource {
103
119
  }
104
120
  }
105
121
  exports.Api = Api;
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlQXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9nYXRld2F5L2NyZWF0ZUFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBNEQ7QUFDNUQsK0RBQXVMO0FBQ3ZMLHlEQUF5RjtBQUN6Rix5RUFBK0U7QUFLL0UsdURBQW9EO0FBQ3BELHdFQUFxRTtBQUVyRSxNQUFhLEdBQUksU0FBUSwyQkFBc0I7SUFLM0MsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVELFlBQVksS0FBZ0IsRUFBRSxNQUFpQjtRQUMzQyxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7UUFFbkQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFnQjtRQUM5QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5ELE1BQU0sR0FBRyxHQUFHLElBQUksd0JBQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFcEcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXJDLE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztJQUVPLGNBQWMsQ0FBQyxJQUFpQjtRQUVwQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxD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Q0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuRCxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWTtTQUMzQyxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsa0JBQWtCLENBQUMsMkJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQWdCO1FBRXJDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsNENBQTRDO1FBQzVDLDhEQUE4RDtRQUU5RCwyRUFBMkU7UUFJM0UsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFUyxZQUFZLENBQUksS0FBZ0IsRUFBRSxhQUFrQjtRQUMxRCxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBRS9CLElBQUksdUJBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRTtnQkFDOUIsYUFBYTtnQkFDYixLQUFLLEVBQUUsR0FBRyxDQUFDLEdBQUc7YUFDakIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBRUo7QUFoSUQsa0JBZ0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBSZW1vdmFsUG9saWN5LCBUYWcgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEJhc2VQYXRoTWFwcGluZywgQ29ycywgQ29yc09wdGlvbnMsIERvbWFpbk5hbWUsIEVuZHBvaW50VHlwZSwgSURvbWFpbk5hbWUsIElSZXN0QXBpLCBNZXRob2RPcHRpb25zLCBSZXN0QXBpLCBSZXN0QXBpUHJvcHMsIFNlY3VyaXR5UG9saWN5IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5XCI7XG5pbXBvcnQgeyBBUmVjb3JkLCBIb3N0ZWRab25lLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzXCI7XG5pbXBvcnQgeyBBcGlHYXRld2F5LCBBcGlHYXRld2F5RG9tYWluIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBcHBDb25maWcgfSBmcm9tIFwiLi4vLi4vY29uZmlnL0FwcENvbmZpZ1wiO1xuaW1wb3J0IHsgTWljcm9zZXJ2aWNlUHJvcHMgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9NaWNyb3NlcnZpY2VQcm9wc1wiO1xuXG5pbXBvcnQgeyBCYXNlUmVzb3VyY2UgfSBmcm9tIFwiLi4vYmFzZS9iYXNlUmVzb3VyY2VcIjtcbmltcG9ydCB7IENyZWF0ZUNlcnRpZmljYXRlIH0gZnJvbSBcIi4uL2NlcnRpZmljYXRlL2NyZWF0ZUNlcnRpZmljYXRlXCI7XG5cbmV4cG9ydCBjbGFzcyBBcGkgZXh0ZW5kcyBCYXNlUmVzb3VyY2U8SVJlc3RBcGk+IHtcbiAgICBcbiAgICBwcml2YXRlIGNvcnNPcHRpb25zOiBDb3JzT3B0aW9ucztcbiAgICBcblxuICAgIGdldCBBUElzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVkUmVzb3VyY2VzO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGNvbmZpZzogQXBwQ29uZmlnKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBjb25maWcpO1xuXG4gICAgICAgIHRoaXMuY29yc09wdGlvbnMgPSB0aGlzLmNyZWF0ZURlZmF1bHRDb3JzT3B0aW9ucygpOyAgXG4gICAgICAgIFxuICAgICAgICB0aGlzLmNyZWF0ZWRSZXNvdXJjZXMgPSB0aGlzLmNyZWF0ZVJlc291cmNlKHNjb3BlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFwaShzY29wZTogQ29uc3RydWN0KSB7XG4gICAgICAgIGNvbnN0IHpvbmUgPSB0aGlzLmdldFpvbmUodGhpcy5zY29wZSwgdGhpcy5jb25maWcpO1xuXG4gICAgICAgIGNvbnN0IGFwaSA9IG5ldyBSZXN0QXBpKHRoaXMuc2NvcGUsIGAke3RoaXMuY29uZmlnLkFwcFByZWZpeH0tcmVzdC1hcGlgLCB0aGlzLmNyZWF0ZUFwaVByb3BzKHpvbmUpKTtcblxuICAgICAgICB0aGlzLmNyZWF0ZUFSZWNvcmQoc2NvcGUsIHpvbmUsIGFwaSk7XG5cbiAgICAgICAgcmV0dXJuIGFwaTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFwaVByb3BzKHpvbmU6IElIb3N0ZWRab25lKTogUmVzdEFwaVByb3BzIHtcbiAgICAgICAgXG4gICAgICAgIGNvbnN0IGNlcnQgPSB0aGlzLmNyZWF0ZUNlcnRpZmljYXRlKHRoaXMuc2NvcGUsIHpvbmUsIHRoaXMuY29uZmlnKTtcblxuICAgICAgICBjb25zdCBwcm9wczogUmVzdEFwaVByb3BzID0ge1xuICAgICAgICAgICAgcmVzdEFwaU5hbWU6IGBncy1hcGktJHt0aGlzLmNvbmZpZy5BcHBQcmVmaXh9LSR7dGhpcy5jb25maWcuQVBJLk5hbWV9YCwgXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5jb25maWcuQVBJLkRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgZG9tYWluTmFtZToge1xuICAgICAgICAgICAgICAgIGRvbWFpbk5hbWU6IGAke3RoaXMuY29uZmlnLkFQSS5Eb21haW5QcmVmaXh9LiR7dGhpcy5jb25maWcuRE5TLlpvbmVOYW1lfWAsXG4gICAgICAgICAgICAgICAgY2VydGlmaWNhdGU6IGNlcnQuY2VydGlmaWNhdGUsXG4gICAgICAgICAgICAgICAgZW5kcG9pbnRUeXBlOiBFbmRwb2ludFR5cGUuRURHRSxcbiAgICAgICAgICAgICAgICBzZWN1cml0eVBvbGljeTogU2VjdXJpdHlQb2xpY3kuVExTXzFfMlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC8vIFRPRE86ICBBREQgQ1VTVE9NIERPTUFJTiBIRVJFXG4gICAgICAgICAgICAvLyBkZWZhdWx0RG9tYWluTWFwcGluZzoge1xuICAgICAgICAgICAgLy8gICAgIGRvbWFpbk5hbWU6IGRvbWFpbiwgICAgICAgICAgICBcbiAgICAgICAgICAgIC8vICAgfSxcbiAgICAgICAgICAgIC8vIGRvbWFpbk5hbWU6ICcnLFxuICAgICAgICAgICAgZGVmYXVsdENvcnNQcmVmbGlnaHRPcHRpb25zOiB0aGlzLmNvcnNPcHRpb25zXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHByb3BzO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlRGVmYXVsdENvcnNPcHRpb25zKCkge1xuXG4gICAgICAgIGNvbnN0IGNvcnNPcHRpb25zOiBDb3JzT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGFsbG93SGVhZGVyczogW1xuICAgICAgICAgICAgICAgICcqJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBhbGxvd01ldGhvZHM6IENvcnMuQUxMX01FVEhPRFMsXG4gICAgICAgICAgICBhbGxvd0NyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgICAgICAgYWxsb3dPcmlnaW5zOiBDb3JzLkFMTF9PUklHSU5TLFxuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBjb3JzT3B0aW9ucztcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBjcmVhdGVDdXN0b21Eb21haW4oc2NvcGU6IENvbnN0cnVjdCwgY29uZmlnOiBNaWNyb3NlcnZpY2VQcm9wcykge1xuICAgICAgICBjb25zdCBkb21haW5OYW1lID0gRG9tYWluTmFtZS5mcm9tRG9tYWluTmFtZUF0dHJpYnV0ZXMoc2NvcGUsIGAke2NvbmZpZy5BUEkuTmFtZX0tY3VzdG9tLWRvbWFpbmAsIHtcbiAgICAgICAgICAgIGRvbWFpbk5hbWU6IGNvbmZpZy5ETlMuWm9uZU5hbWUsXG4gICAgICAgICAgICBkb21haW5OYW1lQWxpYXNIb3N0ZWRab25lSWQ6IGNvbmZpZy5ETlMuWm9uZUlkISxcbiAgICAgICAgICAgIGRvbWFpbk5hbWVBbGlhc1RhcmdldDogY29uZmlnLkFQSS5Eb21haW5QcmVmaXghLFxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgcmV0dXJuIGRvbWFpbk5hbWVcbiAgICB9XG4gICBcbiAgICBwcml2YXRlIGF0dGFjaERvbWFpblRvQXBpKHNjb3BlOiBDb25zdHJ1Y3QsIGFwaTogSVJlc3RBcGksIGRvbWFpbjogSURvbWFpbk5hbWUsIGNvbmZpZzogTWljcm9zZXJ2aWNlUHJvcHMpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBCYXNlUGF0aE1hcHBpbmcoc2NvcGUsIGAke2NvbmZpZy5BUEkuTmFtZX0tYmFzZVBhdGhNYXBwaW5nYCwge1xuICAgICAgICAgICAgZG9tYWluTmFtZTogZG9tYWluLFxuICAgICAgICAgICAgcmVzdEFwaTogYXBpLFxuICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Wm9uZShzY29wZTogQ29uc3RydWN0LCBjb25maWc6IE1pY3Jvc2VydmljZVByb3BzKSB7XG4gICAgICAgIHJldHVybiBIb3N0ZWRab25lLmZyb21Ib3N0ZWRab25lQXR0cmlidXRlcyhzY29wZSwgYCR7Y29uZmlnLkROUy5ab25lTmFtZX0tem9uZWAsIHtcbiAgICAgICAgICAgIHpvbmVOYW1lOiBjb25maWcuRE5TLlpvbmVOYW1lLFxuICAgICAgICAgICAgaG9zdGVkWm9uZUlkOiBjb25maWcuRE5TLlpvbmVJZCFcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDZXJ0aWZpY2F0ZShzY29wZTogQ29uc3RydWN0LCB6b25lOiBJSG9zdGVkWm9uZSwgY29uZmlnOiBNaWNyb3NlcnZpY2VQcm9wcykge1xuICAgICAgICBjb25zdCBjZXJ0ID0gbmV3IENyZWF0ZUNlcnRpZmljYXRlKHNjb3BlLCBjb25maWcsIHpvbmUpO1xuICAgICAgICByZXR1cm4gY2VydDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFSZWNvcmQoc2NvcGU6IENvbnN0cnVjdCwgem9uZTogSUhvc3RlZFpvbmUsIGFwaTogUmVzdEFwaSkge1xuICAgICAgICBjb25zdCBhUmVjb3JkID0gIG5ldyBBUmVjb3JkKHNjb3BlLCBcIkFwaVJlY29yZFwiLCB7XG4gICAgICAgICAgICB6b25lLFxuICAgICAgICAgICAgdGFyZ2V0OiBSZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyBBcGlHYXRld2F5KGFwaSkpLFxuICAgICAgICAgICAgcmVjb3JkTmFtZTogdGhpcy5jb25maWcuQVBJLkRvbWFpblByZWZpeFxuICAgICAgICB9KTtcbiAgICAgICAgICAgIFxuICAgICAgICBhUmVjb3JkLmFwcGx5UmVtb3ZhbFBvbGljeShSZW1vdmFsUG9saWN5LkRFU1RST1kpO1xuICAgICAgICByZXR1cm4gYVJlY29yZDtcbiAgICB9ICAgIFxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVJlc291cmNlKHNjb3BlOiBDb25zdHJ1Y3QpIHsgICAgICAgIFxuXG4gICAgICAgIGNvbnN0IGFwaSA9IHRoaXMuY3JlYXRlQXBpKHNjb3BlKTtcbiAgICAgICAgLy8gVE9ETzogIE9OTFkgSUYgQ1VTVE9NIE1BUFBJTkcgSVMgUkVRVUlSRURcbiAgICAgICAgLy8gY29uc3QgZG9tYWluID0gdGhpcy5jcmVhdGVDdXN0b21Eb21haW4oc2NvcGUsIHRoaXMuY29uZmlnKTtcblxuICAgICAgICAvLyBjb25zdCBtYXBwaW5nID0gdGhpcy5hdHRhY2hEb21haW5Ub0FwaShzY29wZSwgYXBpLCBkb21haW4sIHRoaXMuY29uZmlnKTtcblxuICAgICAgICBcblxuICAgICAgICByZXR1cm4gW2FwaV07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZU91dHB1dDxUPihzY29wZTogQ29uc3RydWN0LCBjcmVhdGVkQXNzZXRzOiBUW10pOiB2b2lkIHtcbiAgICAgICAgY3JlYXRlZEFzc2V0cy5mb3JFYWNoKChhcGksIGlkeCkgPT4ge1xuXG4gICAgICAgICAgICBuZXcgQ2ZuT3V0cHV0KHNjb3BlLCBgYXBpJHtpZHh9YCwgeyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgdmFsdWU6IGFwaS51cmxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgXG59Il19
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlQXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9nYXRld2F5L2NyZWF0ZUFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBNEQ7QUFDNUQsK0RBQXVMO0FBQ3ZMLHlEQUF5RjtBQUN6Rix5RUFBK0U7QUFLL0UsdURBQW9EO0FBQ3BELHdFQUFxRTtBQUVyRSxNQUFhLEdBQUksU0FBUSwyQkFBc0I7SUFLM0MsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVELFlBQVksS0FBZ0IsRUFBRSxNQUFpQjtRQUMzQyxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7UUFFbkQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFnQjtRQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSx3QkFBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUVwRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFckMsT0FBTyxHQUFHLENBQUM7U0FDZDthQUFNO1lBRUgsTUFBTSxHQUFHLEdBQUcsSUFBSSx3QkFB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aEIsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFnQixFQUFFLElBQWlCLEVBQUUsR0FBWTtRQUNuRSxNQUFNLE9BQU8sR0FBRyxJQUFJLHFCQUFPLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRTtZQUM1QyxJQUFJO1lBQ0osTUFBTSxFQUFFLDBCQUFZLENBQUMsU0FBUyxDQUFDLElBQUksZ0NBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNuRCxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWTtTQUMzQyxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsa0JBQWtCLENBQUMsMkJBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQWdCO1FBRXJDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsNENBQTRDO1FBQzVDLDhEQUE4RDtRQUU5RCwyRUFBMkU7UUFJM0UsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFUyxZQUFZLENBQUksS0FBZ0IsRUFBRSxhQUFrQjtRQUMxRCxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBRS9CLElBQUksdUJBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLEVBQUUsRUFBRTtnQkFDOUIsYUFBYTtnQkFDYixLQUFLLEVBQUUsR0FBRyxDQUFDLEdBQUc7YUFDakIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBRUo7QUFsSkQsa0JBa0pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBSZW1vdmFsUG9saWN5LCBUYWcgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEJhc2VQYXRoTWFwcGluZywgQ29ycywgQ29yc09wdGlvbnMsIERvbWFpbk5hbWUsIEVuZHBvaW50VHlwZSwgSURvbWFpbk5hbWUsIElSZXN0QXBpLCBNZXRob2RPcHRpb25zLCBSZXN0QXBpLCBSZXN0QXBpUHJvcHMsIFNlY3VyaXR5UG9saWN5IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5XCI7XG5pbXBvcnQgeyBBUmVjb3JkLCBIb3N0ZWRab25lLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzXCI7XG5pbXBvcnQgeyBBcGlHYXRld2F5LCBBcGlHYXRld2F5RG9tYWluIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBcHBDb25maWcgfSBmcm9tIFwiLi4vLi4vY29uZmlnL0FwcENvbmZpZ1wiO1xuaW1wb3J0IHsgTWljcm9zZXJ2aWNlUHJvcHMgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9NaWNyb3NlcnZpY2VQcm9wc1wiO1xuXG5pbXBvcnQgeyBCYXNlUmVzb3VyY2UgfSBmcm9tIFwiLi4vYmFzZS9iYXNlUmVzb3VyY2VcIjtcbmltcG9ydCB7IENyZWF0ZUNlcnRpZmljYXRlIH0gZnJvbSBcIi4uL2NlcnRpZmljYXRlL2NyZWF0ZUNlcnRpZmljYXRlXCI7XG5cbmV4cG9ydCBjbGFzcyBBcGkgZXh0ZW5kcyBCYXNlUmVzb3VyY2U8SVJlc3RBcGk+IHtcblxuICAgIHByaXZhdGUgY29yc09wdGlvbnM6IENvcnNPcHRpb25zO1xuXG5cbiAgICBnZXQgQVBJcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlZFJlc291cmNlcztcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBjb25maWc6IEFwcENvbmZpZykge1xuICAgICAgICBzdXBlcihzY29wZSwgY29uZmlnKTtcblxuICAgICAgICB0aGlzLmNvcnNPcHRpb25zID0gdGhpcy5jcmVhdGVEZWZhdWx0Q29yc09wdGlvbnMoKTtcblxuICAgICAgICB0aGlzLmNyZWF0ZWRSZXNvdXJjZXMgPSB0aGlzLmNyZWF0ZVJlc291cmNlKHNjb3BlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFwaShzY29wZTogQ29uc3RydWN0KSB7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5ETlMpIHtcbiAgICAgICAgICAgIGNvbnN0IHpvbmUgPSB0aGlzLmdldFpvbmUodGhpcy5zY29wZSwgdGhpcy5jb25maWcpO1xuXG4gICAgICAgICAgICBjb25zdCBhcGkgPSBuZXcgUmVzdEFwaSh0aGlzLnNjb3BlLCBgJHt0aGlzLmNvbmZpZy5BcHBQcmVmaXh9LXJlc3QtYXBpYCwgdGhpcy5jcmVhdGVBcGlQcm9wcyh6b25lKSk7XG5cbiAgICAgICAgICAgIHRoaXMuY3JlYXRlQVJlY29yZChzY29wZSwgem9uZSwgYXBpKTtcblxuICAgICAgICAgICAgcmV0dXJuIGFwaTtcbiAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgICAgY29uc3QgYXBpID0gbmV3IFJlc3RBcGkodGhpcy5zY29wZSwgYCR7dGhpcy5jb25maWcuQXBwUHJlZml4fS1yZXN0LWFwaWAsIHRoaXMuY3JlYXRlQXBpUHJvcHMoKSk7XG5cbiAgICAgICAgICAgIHJldHVybiBhcGk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFwaVByb3BzKHpvbmU/OiBJSG9zdGVkWm9uZSk6IFJlc3RBcGlQcm9wcyB7XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLkROUykge1xuXG4gICAgICAgICAgICBjb25zdCBjZXJ0ID0gdGhpcy5jcmVhdGVDZXJ0aWZpY2F0ZSh0aGlzLnNjb3BlLCB6b25lISwgdGhpcy5jb25maWcpO1xuXG4gICAgICAgICAgICBjb25zdCBwcm9wczogUmVzdEFwaVByb3BzID0ge1xuICAgICAgICAgICAgICAgIHJlc3RBcGlOYW1lOiBgJHt0aGlzLmNvbmZpZy5BcHBQcmVmaXh9LSR7dGhpcy5jb25maWcuQVBJLk5hbWV9YCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5jb25maWcuQVBJLkRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGRvbWFpbk5hbWU6IHtcbiAgICAgICAgICAgICAgICAgICAgZG9tYWluTmFtZTogYCR7dGhpcy5jb25maWcuQVBJLkRvbWFpblByZWZpeH0uJHt0aGlzLmNvbmZpZy5ETlMuWm9uZU5hbWV9YCxcbiAgICAgICAgICAgICAgICAgICAgY2VydGlmaWNhdGU6IGNlcnQuY2VydGlmaWNhdGUsXG4gICAgICAgICAgICAgICAgICAgIGVuZHBvaW50VHlwZTogRW5kcG9pbnRUeXBlLkVER0UsXG4gICAgICAgICAgICAgICAgICAgIHNlY3VyaXR5UG9saWN5OiBTZWN1cml0eVBvbGljeS5UTFNfMV8yXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAvLyBUT0RPOiAgQUREIENVU1RPTSBET01BSU4gSEVSRVxuICAgICAgICAgICAgICAgIC8vIGRlZmF1bHREb21haW5NYXBwaW5nOiB7XG4gICAgICAgICAgICAgICAgLy8gICAgIGRvbWFpbk5hbWU6IGRvbWFpbiwgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAvLyAgIH0sXG4gICAgICAgICAgICAgICAgLy8gZG9tYWluTmFtZTogJycsXG4gICAgICAgICAgICAgICAgZGVmYXVsdENvcnNQcmVmbGlnaHRPcHRpb25zOiB0aGlzLmNvcnNPcHRpb25zXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICByZXR1cm4gcHJvcHM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBwcm9wczogUmVzdEFwaVByb3BzID0ge1xuICAgICAgICAgICAgICAgIHJlc3RBcGlOYW1lOiBgJHt0aGlzLmNvbmZpZy5BcHBQcmVmaXh9LSR7dGhpcy5jb25maWcuQVBJLk5hbWV9YCxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5jb25maWcuQVBJLkRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgIGRlZmF1bHRDb3JzUHJlZmxpZ2h0T3B0aW9uczogdGhpcy5jb3JzT3B0aW9uc1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcmV0dXJuIHByb3BzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEZWZhdWx0Q29yc09wdGlvbnMoKSB7XG5cbiAgICAgICAgY29uc3QgY29yc09wdGlvbnM6IENvcnNPcHRpb25zID0ge1xuICAgICAgICAgICAgYWxsb3dIZWFkZXJzOiBbXG4gICAgICAgICAgICAgICAgJyonLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGFsbG93TWV0aG9kczogQ29ycy5BTExfTUVUSE9EUyxcbiAgICAgICAgICAgIGFsbG93Q3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgICAgICBhbGxvd09yaWdpbnM6IENvcnMuQUxMX09SSUdJTlMsXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIGNvcnNPcHRpb25zO1xuICAgIH1cblxuICAgIC8vIHByaXZhdGUgY3JlYXRlQ3VzdG9tRG9tYWluKHNjb3BlOiBDb25zdHJ1Y3QsIGNvbmZpZzogTWljcm9zZXJ2aWNlUHJvcHMpIHtcbiAgICAvLyAgICAgY29uc3QgZG9tYWluTmFtZSA9IERvbWFpbk5hbWUuZnJvbURvbWFpbk5hbWVBdHRyaWJ1dGVzKHNjb3BlLCBgJHtjb25maWcuQVBJLk5hbWV9LWN1c3RvbS1kb21haW5gLCB7XG4gICAgLy8gICAgICAgICBkb21haW5OYW1lOiBjb25maWcuRE5TPy5ab25lTmFtZSxcbiAgICAvLyAgICAgICAgIGRvbWFpbk5hbWVBbGlhc0hvc3RlZFpvbmVJZDogY29uZmlnLkROUy5ab25lSWQhLFxuICAgIC8vICAgICAgICAgZG9tYWluTmFtZUFsaWFzVGFyZ2V0OiBjb25maWcuQVBJLkRvbWFpblByZWZpeCEsXG4gICAgLy8gICAgIH0pO1xuXG4gICAgLy8gICAgIHJldHVybiBkb21haW5OYW1lXG4gICAgLy8gfVxuXG4gICAgLy8gcHJpdmF0ZSBhdHRhY2hEb21haW5Ub0FwaShzY29wZTogQ29uc3RydWN0LCBhcGk6IElSZXN0QXBpLCBkb21haW46IElEb21haW5OYW1lLCBjb25maWc6IE1pY3Jvc2VydmljZVByb3BzKSB7XG4gICAgLy8gICAgIHJldHVybiBuZXcgQmFzZVBhdGhNYXBwaW5nKHNjb3BlLCBgJHtjb25maWcuQVBJLk5hbWV9LWJhc2VQYXRoTWFwcGluZ2AsIHtcbiAgICAvLyAgICAgICAgIGRvbWFpbk5hbWU6IGRvbWFpbixcbiAgICAvLyAgICAgICAgIHJlc3RBcGk6IGFwaSxcbiAgICAvLyAgICAgfSk7XG4gICAgLy8gfVxuXG4gICAgcHJpdmF0ZSBnZXRab25lKHNjb3BlOiBDb25zdHJ1Y3QsIGNvbmZpZzogTWljcm9zZXJ2aWNlUHJvcHMpIHtcbiAgICAgICAgcmV0dXJuIEhvc3RlZFpvbmUuZnJvbUhvc3RlZFpvbmVBdHRyaWJ1dGVzKHNjb3BlLCBgJHtjb25maWcuRE5TPy5ab25lTmFtZX0tem9uZWAsIHtcbiAgICAgICAgICAgIHpvbmVOYW1lOiBjb25maWcuRE5TPy5ab25lTmFtZSEsXG4gICAgICAgICAgICBob3N0ZWRab25lSWQ6IGNvbmZpZy5ETlM/LlpvbmVJZCFcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDZXJ0aWZpY2F0ZShzY29wZTogQ29uc3RydWN0LCB6b25lOiBJSG9zdGVkWm9uZSwgY29uZmlnOiBNaWNyb3NlcnZpY2VQcm9wcykge1xuICAgICAgICBjb25zdCBjZXJ0ID0gbmV3IENyZWF0ZUNlcnRpZmljYXRlKHNjb3BlLCBjb25maWcsIHpvbmUpO1xuICAgICAgICByZXR1cm4gY2VydDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFSZWNvcmQoc2NvcGU6IENvbnN0cnVjdCwgem9uZTogSUhvc3RlZFpvbmUsIGFwaTogUmVzdEFwaSkge1xuICAgICAgICBjb25zdCBhUmVjb3JkID0gbmV3IEFSZWNvcmQoc2NvcGUsIFwiQXBpUmVjb3JkXCIsIHtcbiAgICAgICAgICAgIHpvbmUsXG4gICAgICAgICAgICB0YXJnZXQ6IFJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IEFwaUdhdGV3YXkoYXBpKSksXG4gICAgICAgICAgICByZWNvcmROYW1lOiB0aGlzLmNvbmZpZy5BUEkuRG9tYWluUHJlZml4XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGFSZWNvcmQuYXBwbHlSZW1vdmFsUG9saWN5KFJlbW92YWxQb2xpY3kuREVTVFJPWSk7XG4gICAgICAgIHJldHVybiBhUmVjb3JkO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjcmVhdGVSZXNvdXJjZShzY29wZTogQ29uc3RydWN0KSB7XG5cbiAgICAgICAgY29uc3QgYXBpID0gdGhpcy5jcmVhdGVBcGkoc2NvcGUpO1xuICAgICAgICAvLyBUT0RPOiAgT05MWSBJRiBDVVNUT00gTUFQUElORyBJUyBSRVFVSVJFRFxuICAgICAgICAvLyBjb25zdCBkb21haW4gPSB0aGlzLmNyZWF0ZUN1c3RvbURvbWFpbihzY29wZSwgdGhpcy5jb25maWcpO1xuXG4gICAgICAgIC8vIGNvbnN0IG1hcHBpbmcgPSB0aGlzLmF0dGFjaERvbWFpblRvQXBpKHNjb3BlLCBhcGksIGRvbWFpbiwgdGhpcy5jb25maWcpO1xuXG5cblxuICAgICAgICByZXR1cm4gW2FwaV07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZU91dHB1dDxUPihzY29wZTogQ29uc3RydWN0LCBjcmVhdGVkQXNzZXRzOiBUW10pOiB2b2lkIHtcbiAgICAgICAgY3JlYXRlZEFzc2V0cy5mb3JFYWNoKChhcGksIGlkeCkgPT4ge1xuXG4gICAgICAgICAgICBuZXcgQ2ZuT3V0cHV0KHNjb3BlLCBgYXBpJHtpZHh9YCwge1xuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICB2YWx1ZTogYXBpLnVybFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxufSJdfQ==
@@ -14,7 +14,7 @@ export declare class CreateMicroServiceBundle {
14
14
  private readonly layers?;
15
15
  protected readonly requireDynamoTableRefs: boolean;
16
16
  protected readonly requireAuthorizer: boolean;
17
- constructor(scope: Construct, gatewayApi: IRestApi, props: MicroserviceProps, appConfig: AppConfig, tables?: Table[] | undefined, secretMgr?: ISecret | undefined, layers?: LayerVersion[] | undefined);
17
+ constructor(scope: Construct, gatewayApi: IRestApi, props: MicroserviceProps, appConfig: AppConfig, tables?: Table[] | undefined, secretMgr?: ISecret | null | undefined, layers?: LayerVersion[] | undefined);
18
18
  private onInit;
19
19
  private AssignAccessToTables;
20
20
  private AssignAccessToTableRefs;
@@ -126,4 +126,4 @@ class CreateMicroServiceBundle {
126
126
  }
127
127
  }
128
128
  exports.CreateMicroServiceBundle = CreateMicroServiceBundle;
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlTWljcm9TZXJ2aWNlQnVuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9nYXRld2F5L2NyZWF0ZU1pY3JvU2VydmljZUJ1bmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyREFBeUQ7QUFFekQsaURBQThEO0FBSzlELGtFQUErRDtBQUMvRCwwREFBaUQ7QUFDakQseURBQXNEO0FBQ3RELDZDQUE2RDtBQUM3RCwyREFBMEQ7QUFNMUQsTUFBYSx3QkFBd0I7SUFLakMsWUFBWSxLQUFnQixFQUNQLFVBQW9CLEVBQ3BCLEtBQXdCLEVBQ3hCLFNBQW9CLEVBQ3BCLE1BQWdCLEVBQ2hCLFNBQW1CLEVBQ25CLE1BQXVCO1FBTHZCLGVBQVUsR0FBVixVQUFVLENBQVU7UUFDcEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBaUI7UUFHeEMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ25HLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxLQUFnQjtRQUczQixJQUFJLFVBQVUsR0FBOEIsU0FBUyxDQUFDO1FBRXRELG9CQUFvQjtRQUNwQixJ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QUU7WUFFcEQsTUFBTSxRQUFRLEdBQUcsMkJBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVuRSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQzthQUN4QztZQUNELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQztZQUU3RCxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQzthQUN4RDtZQUVELHFCQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRWpFLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLDJCQUEyQixDQUFDLE1BQWUsRUFBRSxPQUF5QjtRQUUxRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDdkIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU1QyxDQUFDLENBQUMsQ0FBQztJQUVQLENBQUM7Q0FFSjtBQTFLRCw0REEwS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUmVzdEFwaSwgVG9rZW5BdXRob3JpemVyIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5XCI7XG5pbXBvcnQgeyBJVGFibGUsIFRhYmxlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1keW5hbW9kYlwiO1xuaW1wb3J0IHsgTm9kZWpzRnVuY3Rpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanNcIjtcbmltcG9ydCB7IEVmZmVjdCwgUG9saWN5U3RhdGVtZW50IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUc2dEeW5hbW9UYWJsZVJlZiwgVHNnTGFtYmRhUHJvcCB9IGZyb20gXCIuLi8uLi9jb25maWcvdHlwZXNcIjtcbmltcG9ydCB7IFRzZ0xhbWJkYVByb3BzIH0gZnJvbSBcIi4uLy4uL2NvbmZpZy90eXBlcy9Uc2dMYW1iZGFQcm9wc1wiO1xuaW1wb3J0IHsgTWljcm9zZXJ2aWNlUHJvcHMgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9NaWNyb3NlcnZpY2VQcm9wc1wiO1xuaW1wb3J0IHsgQ3JlYXRlQXV0aG9yaXplciB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZUF1dGhvcml6ZXJcIjtcbmltcG9ydCB7IFJvdXRlcyB9IGZyb20gXCIuLi9oZWxwZXJzL2NyZWF0ZVJvdXRlc1wiO1xuaW1wb3J0IHsgQ3JlYXRlTGFtYmRhIH0gZnJvbSBcIi4uL2xhbWJkYS9jcmVhdGVMYW1iZGFcIjtcbmltcG9ydCB7IER1cmF0aW9uLCBSZW1vdmFsUG9saWN5LCBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgQ3JlYXRlRHluYW1vRGIgfSBmcm9tIFwiLi4vZHluYW1vZGIvQ3JlYXRlRHluYW1vXCI7XG5pbXBvcnQgeyBJU2VjcmV0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlclwiO1xuaW1wb3J0IHsgTGF5ZXJWZXJzaW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IEFwcENvbmZpZyB9IGZyb20gXCIuLi8uLi9jb25maWcvQXBwQ29uZmlnXCI7XG5pbXBvcnQgeyBNZXRyaWNPcHRpb25zIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoXCI7XG5cbmV4cG9ydCBjbGFzcyBDcmVhdGVNaWNyb1NlcnZpY2VCdW5kbGUge1xuICAgIFxuICAgIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlRHluYW1vVGFibGVSZWZzOiBib29sZWFuO1xuICAgIHByb3RlY3RlZCByZWFkb25seSByZXF1aXJlQXV0aG9yaXplcjogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGdhdGV3YXlBcGk6IElSZXN0QXBpLCBcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogTWljcm9zZXJ2aWNlUHJvcHMsICAgICAgICBcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBhcHBDb25maWc6IEFwcENvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0YWJsZXM/OiBUYWJsZVtdLCBcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzZWNyZXRNZ3I/OiBJU2VjcmV0LCBcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBsYXllcnM/OiBMYXllclZlcnNpb25bXSwgICAgICAgIFxuICAgICAgICApIHtcbiAgICAgICAgXG4gICAgICAgIHRoaXMucmVxdWlyZUR5bmFtb1RhYmxlUmVmcyA9IChwcm9wcy5SRVNPVVJDRVMuRFlOQU1PPy5UQUJMRV9SRUZTPy5sZW5ndGggPz8gMCA+IDApID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLnJlcXVpcmVBdXRob3JpemVyID0gKHByb3BzLlJFU09VUkNFUy5BVVRIT1JJWkVSKSA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkluaXQoc2NvcGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25Jbml0KHNjb3BlOiBDb25zdHJ1Y3QpIHtcblxuICAgICAgICBcbiAgICAgICAgbGV0IGF1dGhvcml6ZXI6IFRva2VuQXV0aG9yaXplcnx1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgICAgICAgLy8gQ3JlYXRlIEF1dGhvcml6ZXJcbiAgICAgICAgaWYgKHRoaXMucmVxdWlyZUF1dGhvcml6ZXIpIHtcbiAgICAgICAgICAgIGF1dGhvcml6ZXIgPSBuZXcgQ3JlYXRlQXV0aG9yaXplcihzY29wZSwgdGhpcy5hcHBDb25maWcsIHRoaXMucHJvcHMuUkVTT1VSQ0VTLkFVVEhPUklaRVIhKS5Kd3RBdXRob3JpemVyO1xuICAgICAgICAgICAgYXV0aG9yaXplci5fYXR0YWNoVG9BcGkodGhpcy5nYXRld2F5QXBpKTsgICBcbiAgICAgICAgICAgIGF1dGhvcml6ZXIuYXBwbHlSZW1vdmFsUG9saWN5KFJlbW92YWxQb2xpY3kuREVTVFJPWSk7XG4gICAgICAgIH0gICAgICAgIFxuXG4gICAgICAgIC8vIENyZWF0ZSBMYW1iZGFzXG4gICAgICAgIGNvbnN0IGxhbWJkYVByb3A6IFRzZ0xhbWJkYVByb3BzID0ge1xuICAgICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgICBwcm9wOiB0aGlzLnByb3BzLCAgICAgICAgICAgIFxuICAgICAgICAgICAgbGF5ZXJzOiB0aGlzLmxheWVycyxcbiAgICAgICAgICAgIGFwcENvbmZpZzogdGhpcy5hcHBDb25maWdcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBsYW1iZGFzID0gbmV3IENyZWF0ZUxhbWJkYShsYW1iZGFQcm9wLCB0aGlzLmFwcENvbmZpZyk7XG5cbiAgICAgICAgaWYgKHRoaXMudGFibGVzKSB7XG4gICAgICAgICAgICB0aGlzLkFzc2lnbkFjY2Vzc1RvVGFibGVzKHRoaXMudGFibGVzLCBsYW1iZGFzLkxhbWJkYXMpO1xuICAgICAgICB9ICAgICAgICBcblxuICAgICAgICAvLyBBbGxvdyBhY2Nlc3MgdG8gZXhpc3RpbmcgdGFibGVzXG4gICAgICAgIGlmICh0aGlzLnJlcXVpcmVEeW5hbW9UYWJsZVJlZnMpIHtcbiAgICAgICAgICAgIHRoaXMuQXNzaWduQWNjZXNzVG9UYWJsZVJlZnMoc2NvcGUsIHRoaXMucHJvcHMuUkVTT1VSQ0VTLkRZTkFNTz8uVEFCTEVfUkVGUywgbGFtYmRhcy5MYW1iZGFzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnNlY3JldE1ncikge1xuICAgICAgICAgICAgdGhpcy5Bc3NpZ25BY2Nlc3NUb1NlY3JldE1hbmFnZXIodGhpcy5zZWNyZXRNZ3IsIGxhbWJkYXMuTGFtYmRhcyk7XG4gICAgICAgIH0gICAgICAgIFxuXG4gICAgICAgIC8vIGxhbWJkYXMuTGFtYmRhcy5tYXAoKGxhbWJkYSkgPT4ge1xuICAgICAgICAvLyAgICAgbGFtYmRhLm1ldHJpY0Vycm9ycyh7ICAgICAgICAgICAgICAgIFxuICAgICAgICAvLyAgICAgICAgICAgICBsYWJlbDogYCR7bGFtYmRhLmZ1bmN0aW9uTmFtZX0tZXJyb3JzYCwgXG4gICAgICAgIC8vICAgICAgICAgICAgIHBlcmlvZDogRHVyYXRpb24ubWludXRlcygzKSAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIC8vICAgICB9KVxuICAgICAgICAvLyB9KTtcblxuICAgICAgICB0aGlzLkFkZFJvdXRlcyh0aGlzLnByb3BzLCB0aGlzLmdhdGV3YXlBcGksIGxhbWJkYXMuTGFtYmRhcywgYXV0aG9yaXplcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBBc3NpZ25BY2Nlc3NUb1RhYmxlcyh0YWJsZXM6IFRhYmxlW10sIGxhbWJkYXM6IE5vZGVqc0Z1bmN0aW9uW10pIHtcblxuICAgICAgICBpZiAodGFibGVzKSB7XG4gICAgICAgICAgICB0YWJsZXMuZm9yRWFjaCgodGFibGU6IElUYWJsZSkgPT4ge1xuXG4gICAgICAgICAgICAgICAgbGFtYmRhcy5mb3JFYWNoKChsYW1iZGE6IE5vZGVqc0Z1bmN0aW9uKSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gIFRoaXMgaXMgYSBDREsgYnVnOiBJdCBkb2Vzbid0IHByb3ZpZGVcbiAgICAgICAgICAgICAgICAgICAgLy8gIGFjY2VzcyB0byB0aGUgaW5kZXhlcy5cbiAgICAgICAgICAgICAgICAgICAgLy90YWJsZS5ncmFudFJlYWRXcml0ZURhdGEobGFtYmRhKTtcblxuICAgICAgICAgICAgICAgICAgICAvLyAgV29ya2Fyb3VuZDpcbiAgICAgICAgICAgICAgICAgICAgbGFtYmRhLmFkZFRvUm9sZVBvbGljeShcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbnM6IENyZWF0ZUR5bmFtb0RiLlJlYWRXcml0ZUFjdGlvbnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlLnRhYmxlQXJuLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHt0YWJsZS50YWJsZUFybn0vKmAsIC8vIFRoaXMgaXMgbm90IHJlY29nbml6ZWQgYnkgY2RrLCBidXQgdGFibGUgaXMuICB3aHk/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgQXNzaWduQWNjZXNzVG9UYWJsZVJlZnMoc2NvcGU6IENvbnN0cnVjdCwgdGFibGVSZWZzOiBUc2dEeW5hbW9UYWJsZVJlZltdIHwgdW5kZWZpbmVkLCBsYW1iZGFzOiBOb2RlanNGdW5jdGlvbltdKSB7XG5cbiAgICAgICAgaWYgKHRhYmxlUmVmcykge1xuICAgICAgICAgICAgdGFibGVSZWZzLmZvckVhY2goKHRhYmxlUmVmOiBUc2dEeW5hbW9UYWJsZVJlZikgPT4ge1xuXG4gICAgICAgICAgICAgICAgaWYgKHRhYmxlUmVmLnJlZ2lvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkFzc2lnblJlYWRXcml0ZUFjY2Vzc1RvVGFibGVJblJlZ2lvbihzY29wZSwgdGFibGVSZWYsIGxhbWJkYXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5Bc3NpZ25SZWFkV3JpdGVBY2Nlc3NUb1RhYmxlKHNjb3BlLCB0YWJsZVJlZiwgbGFtYmRhcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIEFzc2lnblJlYWRXcml0ZUFjY2Vzc1RvVGFibGVJblJlZ2lvbihzY29wZTogQ29uc3RydWN0LCB0YWJsZVJlZjogVHNnRHluYW1vVGFibGVSZWYsIGxhbWJkYXM6IE5vZGVqc0Z1bmN0aW9uW10pIHtcbiAgICAgICAgbGFtYmRhcy5mb3JFYWNoKChsYW1iZGE6IE5vZGVqc0Z1bmN0aW9uKSA9PiB7XG5cbiAgICAgICAgICAgIGxldCB0YWJsZUFybiA9IFwiYXJuOmF3czpkeW5hbW9kYjpcIiArIHRhYmxlUmVmLnJlZ2lvbiArIFwiOlwiICsgKChzY29wZSBhcyBTdGFjaykuYWNjb3VudCkgKyBcIjp0YWJsZS9cIiArIHRhYmxlUmVmLnRhYmxlTmFtZTtcbiAgICAgICAgICAgIGxldCBzdGF0ZW1lbnQgPSBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgICBlZmZlY3Q6IEVmZmVjdC5BTExPVyxcbiAgICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgdGFibGVBcm4sXG4gICAgICAgICAgICAgICAgICAgIHRhYmxlQXJuICsgXCIvaW5kZXgvKlwiLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgYWN0aW9uczogQ3JlYXRlRHluYW1vRGIuUmVhZFdyaXRlQWN0aW9ucyxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBsYW1iZGEucm9sZT8uYWRkVG9QcmluY2lwYWxQb2xpY3koc3RhdGVtZW50KTtcbiAgICAgICAgICAgIFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIEFzc2lnblJlYWRXcml0ZUFjY2Vzc1RvVGFibGUoc2NvcGU6IENvbnN0cnVjdCwgdGFibGVSZWY6IFRzZ0R5bmFtb1RhYmxlUmVmLCBsYW1iZGFzOiBOb2RlanNGdW5jdGlvbltdKSB7XG4gICAgICAgIGxldCB0YWJsZTogSVRhYmxlID0gVGFibGUuZnJvbVRhYmxlTmFtZShzY29wZSwgdGFibGVSZWYudGFibGVOYW1lLCB0YWJsZVJlZi50YWJsZU5hbWUpO1xuXG4gICAgICAgIGxhbWJkYXMuZm9yRWFjaCgobGFtYmRhOiBOb2RlanNGdW5jdGlvbikgPT4ge1xuICAgICAgICAgICAgdGFibGUuZ3JhbnRSZWFkV3JpdGVEYXRhKGxhbWJkYSlcbiAgICAgICAgICAgIFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIEFkZFJvdXRlcyhwcm9wczogTWljcm9zZXJ2aWNlUHJvcHMsIFxuICAgICAgICBnYXRld2F5OiBJUmVzdEFwaSwgXG4gICAgICAgIGxhbWJkYXM6IE5vZGVqc0Z1bmN0aW9uW10sIFxuICAgICAgICBhdXRob3JpemVyPzogVG9rZW5BdXRob3JpemVyKSB7XG5cbiAgICAgICAgcHJvcHMuUkVTT1VSQ0VTLkxBTUJEQT8uZm9yRWFjaCgocHJvcDogVHNnTGFtYmRhUHJvcCkgPT4ge1xuXG4gICAgICAgICAgICBjb25zdCBsYW1iZGFJZCA9IENyZWF0ZUxhbWJkYS5nZXRJZEZvckxhbWJkYShwcm9wLCB0aGlzLmFwcENvbmZpZyk7XG5cbiAgICAgICAgICAgIGlmICghbGFtYmRhSWQpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbid0IGZpbmQgbGFtYmRhYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBsYW1iZGFOb2RlID0gbGFtYmRhcy5maW5kKHggPT4geC5ub2RlLmlkID09PSBsYW1iZGFJZCk7XG5cbiAgICAgICAgICAgIGlmICghbGFtYmRhTm9kZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGZpbmQgdGhlIExhbWJkYSBJbnRlZ3JhdGlvblwiKTsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFJvdXRlcy5jcmVhdGVSZXNvdXJjZShwcm9wLCBnYXRld2F5LCBsYW1iZGFOb2RlLCBhdXRob3JpemVyKTtcbiAgICAgICAgXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgQXNzaWduQWNjZXNzVG9TZWNyZXRNYW5hZ2VyKHNlY3JldDogSVNlY3JldCwgbGFtYmRhczogTm9kZWpzRnVuY3Rpb25bXSkge1xuXG4gICAgICAgIGxhbWJkYXMuZm9yRWFjaCgobGFtYmRhKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBzZWNyZXQuZ3JhbnRSZWFkKGxhbWJkYSk7XG4gICAgICAgICAgICBcbiAgICAgICAgfSk7XG4gICAgICAgIFxuICAgIH1cblxufSJdfQ==
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlTWljcm9TZXJ2aWNlQnVuZGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Jlc291cmNlcy9nYXRld2F5L2NyZWF0ZU1pY3JvU2VydmljZUJ1bmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwyREFBeUQ7QUFFekQsaURBQThEO0FBSzlELGtFQUErRDtBQUMvRCwwREFBaUQ7QUFDakQseURBQXNEO0FBQ3RELDZDQUE2RDtBQUM3RCwyREFBMEQ7QUFNMUQsTUFBYSx3QkFBd0I7SUFLakMsWUFBWSxLQUFnQixFQUNQLFVBQW9CLEVBQ3BCLEtBQXdCLEVBQ3hCLFNBQW9CLEVBQ3BCLE1BQWdCLEVBQ2hCLFNBQTBCLEVBQzFCLE1BQXVCO1FBTHZCLGVBQVUsR0FBVixVQUFVLENBQVU7UUFDcEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQzFCLFdBQU0sR0FBTixNQUFNLENBQWlCO1FBR3hDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNuRyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxNQUFNLENBQUMsS0FBZ0I7UUFHM0IsSUFBSSxVQUFVLEdBQThCLFNBQVMsQ0FBQztRQUV0RCxvQkFBb0I7UUFDcEIs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QUFFO1lBRXBELE1BQU0sUUFBUSxHQUFHLDJCQUFZLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFbkUsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDWCxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7YUFDeEM7WUFDRCxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUM7WUFFN0QsSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDYixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7YUFDeEQ7WUFFRCxxQkFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVqRSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTywyQkFBMkIsQ0FBQyxNQUFlLEVBQUUsT0FBeUI7UUFFMUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFNUMsQ0FBQyxDQUFDLENBQUM7SUFFUCxDQUFDO0NBRUo7QUExS0QsNERBMEtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlc3RBcGksIFRva2VuQXV0aG9yaXplciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheVwiO1xuaW1wb3J0IHsgSVRhYmxlLCBUYWJsZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZHluYW1vZGJcIjtcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGEtbm9kZWpzXCI7XG5pbXBvcnQgeyBFZmZlY3QsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgVHNnRHluYW1vVGFibGVSZWYsIFRzZ0xhbWJkYVByb3AgfSBmcm9tIFwiLi4vLi4vY29uZmlnL3R5cGVzXCI7XG5pbXBvcnQgeyBUc2dMYW1iZGFQcm9wcyB9IGZyb20gXCIuLi8uLi9jb25maWcvdHlwZXMvVHNnTGFtYmRhUHJvcHNcIjtcbmltcG9ydCB7IE1pY3Jvc2VydmljZVByb3BzIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvTWljcm9zZXJ2aWNlUHJvcHNcIjtcbmltcG9ydCB7IENyZWF0ZUF1dGhvcml6ZXIgfSBmcm9tIFwiLi4vaGVscGVycy9jcmVhdGVBdXRob3JpemVyXCI7XG5pbXBvcnQgeyBSb3V0ZXMgfSBmcm9tIFwiLi4vaGVscGVycy9jcmVhdGVSb3V0ZXNcIjtcbmltcG9ydCB7IENyZWF0ZUxhbWJkYSB9IGZyb20gXCIuLi9sYW1iZGEvY3JlYXRlTGFtYmRhXCI7XG5pbXBvcnQgeyBEdXJhdGlvbiwgUmVtb3ZhbFBvbGljeSwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENyZWF0ZUR5bmFtb0RiIH0gZnJvbSBcIi4uL2R5bmFtb2RiL0NyZWF0ZUR5bmFtb1wiO1xuaW1wb3J0IHsgSVNlY3JldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXJcIjtcbmltcG9ydCB7IExheWVyVmVyc2lvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgeyBBcHBDb25maWcgfSBmcm9tIFwiLi4vLi4vY29uZmlnL0FwcENvbmZpZ1wiO1xuaW1wb3J0IHsgTWV0cmljT3B0aW9ucyB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaFwiO1xuXG5leHBvcnQgY2xhc3MgQ3JlYXRlTWljcm9TZXJ2aWNlQnVuZGxlIHtcbiAgICBcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVxdWlyZUR5bmFtb1RhYmxlUmVmczogYm9vbGVhbjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVxdWlyZUF1dGhvcml6ZXI6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBnYXRld2F5QXBpOiBJUmVzdEFwaSwgXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IE1pY3Jvc2VydmljZVByb3BzLCAgICAgICAgXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwQ29uZmlnOiBBcHBDb25maWcsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdGFibGVzPzogVGFibGVbXSwgXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2VjcmV0TWdyPzogSVNlY3JldCB8IG51bGwsIFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGxheWVycz86IExheWVyVmVyc2lvbltdLCAgICAgICAgXG4gICAgICAgICkge1xuICAgICAgICBcbiAgICAgICAgdGhpcy5yZXF1aXJlRHluYW1vVGFibGVSZWZzID0gKHByb3BzLlJFU09VUkNFUy5EWU5BTU8/LlRBQkxFX1JFRlM/Lmxlbmd0aCA/PyAwID4gMCkgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIHRoaXMucmVxdWlyZUF1dGhvcml6ZXIgPSAocHJvcHMuUkVTT1VSQ0VTLkFVVEhPUklaRVIpID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB0aGlzLm9uSW5pdChzY29wZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkluaXQoc2NvcGU6IENvbnN0cnVjdCkge1xuXG4gICAgICAgIFxuICAgICAgICBsZXQgYXV0aG9yaXplcjogVG9rZW5BdXRob3JpemVyfHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICAgICAgICAvLyBDcmVhdGUgQXV0aG9yaXplclxuICAgICAgICBpZiAodGhpcy5yZXF1aXJlQXV0aG9yaXplcikge1xuICAgICAgICAgICAgYXV0aG9yaXplciA9IG5ldyBDcmVhdGVBdXRob3JpemVyKHNjb3BlLCB0aGlzLmFwcENvbmZpZywgdGhpcy5wcm9wcy5SRVNPVVJDRVMuQVVUSE9SSVpFUiEpLkp3dEF1dGhvcml6ZXI7XG4gICAgICAgICAgICBhdXRob3JpemVyLl9hdHRhY2hUb0FwaSh0aGlzLmdhdGV3YXlBcGkpOyAgIFxuICAgICAgICAgICAgYXV0aG9yaXplci5hcHBseVJlbW92YWxQb2xpY3koUmVtb3ZhbFBvbGljeS5ERVNUUk9ZKTtcbiAgICAgICAgfSAgICAgICAgXG5cbiAgICAgICAgLy8gQ3JlYXRlIExhbWJkYXNcbiAgICAgICAgY29uc3QgbGFtYmRhUHJvcDogVHNnTGFtYmRhUHJvcHMgPSB7XG4gICAgICAgICAgICBzY29wZSxcbiAgICAgICAgICAgIHByb3A6IHRoaXMucHJvcHMsICAgICAgICAgICAgXG4gICAgICAgICAgICBsYXllcnM6IHRoaXMubGF5ZXJzLFxuICAgICAgICAgICAgYXBwQ29uZmlnOiB0aGlzLmFwcENvbmZpZ1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGxhbWJkYXMgPSBuZXcgQ3JlYXRlTGFtYmRhKGxhbWJkYVByb3AsIHRoaXMuYXBwQ29uZmlnKTtcblxuICAgICAgICBpZiAodGhpcy50YWJsZXMpIHtcbiAgICAgICAgICAgIHRoaXMuQXNzaWduQWNjZXNzVG9UYWJsZXModGhpcy50YWJsZXMsIGxhbWJkYXMuTGFtYmRhcyk7XG4gICAgICAgIH0gICAgICAgIFxuXG4gICAgICAgIC8vIEFsbG93IGFjY2VzcyB0byBleGlzdGluZyB0YWJsZXNcbiAgICAgICAgaWYgKHRoaXMucmVxdWlyZUR5bmFtb1RhYmxlUmVmcykge1xuICAgICAgICAgICAgdGhpcy5Bc3NpZ25BY2Nlc3NUb1RhYmxlUmVmcyhzY29wZSwgdGhpcy5wcm9wcy5SRVNPVVJDRVMuRFlOQU1PPy5UQUJMRV9SRUZTLCBsYW1iZGFzLkxhbWJkYXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuc2VjcmV0TWdyKSB7XG4gICAgICAgICAgICB0aGlzLkFzc2lnbkFjY2Vzc1RvU2VjcmV0TWFuYWdlcih0aGlzLnNlY3JldE1nciwgbGFtYmRhcy5MYW1iZGFzKTtcbiAgICAgICAgfSAgICAgICAgXG5cbiAgICAgICAgLy8gbGFtYmRhcy5MYW1iZGFzLm1hcCgobGFtYmRhKSA9PiB7XG4gICAgICAgIC8vICAgICBsYW1iZGEubWV0cmljRXJyb3JzKHsgICAgICAgICAgICAgICAgXG4gICAgICAgIC8vICAgICAgICAgICAgIGxhYmVsOiBgJHtsYW1iZGEuZnVuY3Rpb25OYW1lfS1lcnJvcnNgLCBcbiAgICAgICAgLy8gICAgICAgICAgICAgcGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDMpICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgLy8gICAgIH0pXG4gICAgICAgIC8vIH0pO1xuXG4gICAgICAgIHRoaXMuQWRkUm91dGVzKHRoaXMucHJvcHMsIHRoaXMuZ2F0ZXdheUFwaSwgbGFtYmRhcy5MYW1iZGFzLCBhdXRob3JpemVyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIEFzc2lnbkFjY2Vzc1RvVGFibGVzKHRhYmxlczogVGFibGVbXSwgbGFtYmRhczogTm9kZWpzRnVuY3Rpb25bXSkge1xuXG4gICAgICAgIGlmICh0YWJsZXMpIHtcbiAgICAgICAgICAgIHRhYmxlcy5mb3JFYWNoKCh0YWJsZTogSVRhYmxlKSA9PiB7XG5cbiAgICAgICAgICAgICAgICBsYW1iZGFzLmZvckVhY2goKGxhbWJkYTogTm9kZWpzRnVuY3Rpb24pID0+IHtcblxuICAgICAgICAgICAgICAgICAgICAvLyAgVGhpcyBpcyBhIENESyBidWc6IEl0IGRvZXNuJ3QgcHJvdmlkZVxuICAgICAgICAgICAgICAgICAgICAvLyAgYWNjZXNzIHRvIHRoZSBpbmRleGVzLlxuICAgICAgICAgICAgICAgICAgICAvL3RhYmxlLmdyYW50UmVhZFdyaXRlRGF0YShsYW1iZGEpO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vICBXb3JrYXJvdW5kOlxuICAgICAgICAgICAgICAgICAgICBsYW1iZGEuYWRkVG9Sb2xlUG9saWN5KFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uczogQ3JlYXRlRHluYW1vRGIuUmVhZFdyaXRlQWN0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFibGUudGFibGVBcm4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAke3RhYmxlLnRhYmxlQXJufS8qYCwgLy8gVGhpcyBpcyBub3QgcmVjb2duaXplZCBieSBjZGssIGJ1dCB0YWJsZSBpcy4gIHdoeT9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBBc3NpZ25BY2Nlc3NUb1RhYmxlUmVmcyhzY29wZTogQ29uc3RydWN0LCB0YWJsZVJlZnM6IFRzZ0R5bmFtb1RhYmxlUmVmW10gfCB1bmRlZmluZWQsIGxhbWJkYXM6IE5vZGVqc0Z1bmN0aW9uW10pIHtcblxuICAgICAgICBpZiAodGFibGVSZWZzKSB7XG4gICAgICAgICAgICB0YWJsZVJlZnMuZm9yRWFjaCgodGFibGVSZWY6IFRzZ0R5bmFtb1RhYmxlUmVmKSA9PiB7XG5cbiAgICAgICAgICAgICAgICBpZiAodGFibGVSZWYucmVnaW9uKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuQXNzaWduUmVhZFdyaXRlQWNjZXNzVG9UYWJsZUluUmVnaW9uKHNjb3BlLCB0YWJsZVJlZiwgbGFtYmRhcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkFzc2lnblJlYWRXcml0ZUFjY2Vzc1RvVGFibGUoc2NvcGUsIHRhYmxlUmVmLCBsYW1iZGFzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgQXNzaWduUmVhZFdyaXRlQWNjZXNzVG9UYWJsZUluUmVnaW9uKHNjb3BlOiBDb25zdHJ1Y3QsIHRhYmxlUmVmOiBUc2dEeW5hbW9UYWJsZVJlZiwgbGFtYmRhczogTm9kZWpzRnVuY3Rpb25bXSkge1xuICAgICAgICBsYW1iZGFzLmZvckVhY2goKGxhbWJkYTogTm9kZWpzRnVuY3Rpb24pID0+IHtcblxuICAgICAgICAgICAgbGV0IHRhYmxlQXJuID0gXCJhcm46YXdzOmR5bmFtb2RiOlwiICsgdGFibGVSZWYucmVnaW9uICsgXCI6XCIgKyAoKHNjb3BlIGFzIFN0YWNrKS5hY2NvdW50KSArIFwiOnRhYmxlL1wiICsgdGFibGVSZWYudGFibGVOYW1lO1xuICAgICAgICAgICAgbGV0IHN0YXRlbWVudCA9IG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICAgICAgICAgIHJlc291cmNlczogW1xuICAgICAgICAgICAgICAgICAgICB0YWJsZUFybixcbiAgICAgICAgICAgICAgICAgICAgdGFibGVBcm4gKyBcIi9pbmRleC8qXCIsXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICBhY3Rpb25zOiBDcmVhdGVEeW5hbW9EYi5SZWFkV3JpdGVBY3Rpb25zLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGxhbWJkYS5yb2xlPy5hZGRUb1ByaW5jaXBhbFBvbGljeShzdGF0ZW1lbnQpO1xuICAgICAgICAgICAgXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgQXNzaWduUmVhZFdyaXRlQWNjZXNzVG9UYWJsZShzY29wZTogQ29uc3RydWN0LCB0YWJsZVJlZjogVHNnRHluYW1vVGFibGVSZWYsIGxhbWJkYXM6IE5vZGVqc0Z1bmN0aW9uW10pIHtcbiAgICAgICAgbGV0IHRhYmxlOiBJVGFibGUgPSBUYWJsZS5mcm9tVGFibGVOYW1lKHNjb3BlLCB0YWJsZVJlZi50YWJsZU5hbWUsIHRhYmxlUmVmLnRhYmxlTmFtZSk7XG5cbiAgICAgICAgbGFtYmRhcy5mb3JFYWNoKChsYW1iZGE6IE5vZGVqc0Z1bmN0aW9uKSA9PiB7XG4gICAgICAgICAgICB0YWJsZS5ncmFudFJlYWRXcml0ZURhdGEobGFtYmRhKVxuICAgICAgICAgICAgXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgQWRkUm91dGVzKHByb3BzOiBNaWNyb3NlcnZpY2VQcm9wcywgXG4gICAgICAgIGdhdGV3YXk6IElSZXN0QXBpLCBcbiAgICAgICAgbGFtYmRhczogTm9kZWpzRnVuY3Rpb25bXSwgXG4gICAgICAgIGF1dGhvcml6ZXI/OiBUb2tlbkF1dGhvcml6ZXIpIHtcblxuICAgICAgICBwcm9wcy5SRVNPVVJDRVMuTEFNQkRBPy5mb3JFYWNoKChwcm9wOiBUc2dMYW1iZGFQcm9wKSA9PiB7XG5cbiAgICAgICAgICAgIGNvbnN0IGxhbWJkYUlkID0gQ3JlYXRlTGFtYmRhLmdldElkRm9yTGFtYmRhKHByb3AsIHRoaXMuYXBwQ29uZmlnKTtcblxuICAgICAgICAgICAgaWYgKCFsYW1iZGFJZCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2FuJ3QgZmluZCBsYW1iZGFgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGxhbWJkYU5vZGUgPSBsYW1iZGFzLmZpbmQoeCA9PiB4Lm5vZGUuaWQgPT09IGxhbWJkYUlkKTtcblxuICAgICAgICAgICAgaWYgKCFsYW1iZGFOb2RlKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2FuJ3QgZmluZCB0aGUgTGFtYmRhIEludGVncmF0aW9uXCIpOyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgUm91dGVzLmNyZWF0ZVJlc291cmNlKHByb3AsIGdhdGV3YXksIGxhbWJkYU5vZGUsIGF1dGhvcml6ZXIpO1xuICAgICAgICBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBBc3NpZ25BY2Nlc3NUb1NlY3JldE1hbmFnZXIoc2VjcmV0OiBJU2VjcmV0LCBsYW1iZGFzOiBOb2RlanNGdW5jdGlvbltdKSB7XG5cbiAgICAgICAgbGFtYmRhcy5mb3JFYWNoKChsYW1iZGEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHNlY3JldC5ncmFudFJlYWQobGFtYmRhKTtcbiAgICAgICAgICAgIFxuICAgICAgICB9KTtcbiAgICAgICAgXG4gICAgfVxuXG59Il19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sylvesterllc/aws-constructs",
3
- "version": "1.0.12",
3
+ "version": "1.0.14",
4
4
  "description": "AWS Constructs",
5
5
  "main": "dist/index.js",
6
6
  "keywords": [
@@ -13,7 +13,7 @@ export class AppConfig implements IAppConfig {
13
13
  public API: ApiAppConfig;
14
14
  public GLOBALS: GlobalAppConfig;
15
15
  public RESOURCES: ResourceAppConfig;
16
- public DNS: TsgDnsAppConfig;
16
+ public DNS?: TsgDnsAppConfig;
17
17
 
18
18
 
19
19
  public lambdaConfigs: TsgLambdaProp[];
@@ -62,7 +62,7 @@ export class AppConfig implements IAppConfig {
62
62
  };
63
63
 
64
64
  this.DNS = {
65
- ...config.DNS
65
+ ...config.DNS!
66
66
  };
67
67
  }
68
68
  // this.lambdaConfigs = this.expandProps<TsgLambdaName, TsgLambdaProp>(this.RESOURCES.LAMBDA!);
@@ -9,5 +9,5 @@ export interface IAppConfig {
9
9
  GLOBALS: GlobalAppConfig;
10
10
  API?: ApiAppConfig;
11
11
  RESOURCES: ResourceAppConfig;
12
- DNS: TsgDnsAppConfig;
12
+ DNS?: TsgDnsAppConfig;
13
13
  }
@@ -33,12 +33,14 @@ export class MicroService extends Construct {
33
33
 
34
34
  let tables: Table[] | undefined = undefined;
35
35
 
36
- if (!process.env.SECRET_MANAGER_ARN) {
37
- throw new Error(`You must provide the ARN for the your Configuration Secret
38
- Manager`);
36
+
37
+ if (process.env.SECRET_MANAGER_ARN) {
38
+ // throw new Error(`You must provide the ARN for the your Configuration Secret
39
+ // Manager`);
40
+ const secretMgr = getSecretManager(scope, props, process.env.SECRET_MANAGER_ARN);
39
41
  }
40
42
 
41
- const secretMgr = getSecretManager(scope, props, process.env.SECRET_MANAGER_ARN);
43
+
42
44
 
43
45
  // const commonLayer = createCommonLayer(scope, props);
44
46
 
@@ -56,7 +58,7 @@ export class MicroService extends Construct {
56
58
  // props.RESOURCES.LAMBDA.forEach((lambdaProp: TsgLambdaProp) => {
57
59
 
58
60
  const result = new CreateMicroServiceBundle(scope,
59
- gateway[0], props, this.appConfig, tables, secretMgr, layers);
61
+ gateway[0], props, this.appConfig, tables, null, layers);
60
62
  // });
61
63
 
62
64
 
@@ -7,5 +7,5 @@ export interface MicroserviceProps {
7
7
  API: ApiAppConfig;
8
8
  GLOBALS: GlobalAppConfig;
9
9
  RESOURCES: ResourceAppConfig;
10
- DNS: TsgDnsAppConfig;
10
+ DNS?: TsgDnsAppConfig;
11
11
  }
@@ -27,11 +27,11 @@ export class CreateCertificate {
27
27
 
28
28
  const appType = "spa-app";
29
29
 
30
- const cert = new Certificate(scope, `${props.DNS.ZoneNameWithoutPeriod}-${appType}-certificate`, {
31
- domainName: `${props.API.DomainPrefix}.${props.DNS.ZoneName}`,
32
- subjectAlternativeNames: [`${props.API.DomainPrefix}.${props.DNS.ZoneName}`],
30
+ const cert = new Certificate(scope, `${props.DNS?.ZoneNameWithoutPeriod}-${appType}-certificate`, {
31
+ domainName: `${props.API.DomainPrefix}.${props.DNS?.ZoneName}`,
32
+ subjectAlternativeNames: [`${props.API.DomainPrefix}.${props.DNS?.ZoneName}`],
33
33
  validation: CertificateValidation.fromDnsMultiZone({
34
- [`${props.API.DomainPrefix}.${props.DNS.ZoneName}`] : hostedZone ,
34
+ [`${props.API.DomainPrefix}.${props.DNS?.ZoneName}`] : hostedZone ,
35
35
  }),
36
36
  });
37
37
 
@@ -1,5 +1,5 @@
1
1
  import { CfnOutput, RemovalPolicy } from "aws-cdk-lib";
2
- import { GlobalSecondaryIndexProps,Table, TableProps } from "aws-cdk-lib/aws-dynamodb";
2
+ import { GlobalSecondaryIndexProps,StreamViewType,Table, TableProps } from "aws-cdk-lib/aws-dynamodb";
3
3
  import { Construct } from "constructs";
4
4
  import { AppConfig } from "../../config/AppConfig";
5
5
  import { BaseResource } from "../base/baseResource";
@@ -43,9 +43,12 @@ export class CreateDynamoDb extends BaseResource<Table> {
43
43
  const tables = props?.map((prop: any, idx: number) => {
44
44
  const dbTable = new Table(scope, `${prop.tableName}`, {
45
45
  ...prop,
46
- removalPolicy: RemovalPolicy.DESTROY
46
+ removalPolicy: RemovalPolicy.DESTROY,
47
+
47
48
  });
48
49
 
50
+
51
+
49
52
  this.config.RESOURCES.DYNAMO?.TABLES?.[idx].indexes.map((gsi) => {
50
53
 
51
54
  const gsiProps: GlobalSecondaryIndexProps = {
@@ -10,9 +10,9 @@ import { BaseResource } from "../base/baseResource";
10
10
  import { CreateCertificate } from "../certificate/createCertificate";
11
11
 
12
12
  export class Api extends BaseResource<IRestApi> {
13
-
13
+
14
14
  private corsOptions: CorsOptions;
15
-
15
+
16
16
 
17
17
  get APIs() {
18
18
  return this.createdResources;
@@ -21,43 +21,61 @@ export class Api extends BaseResource<IRestApi> {
21
21
  constructor(scope: Construct, config: AppConfig) {
22
22
  super(scope, config);
23
23
 
24
- this.corsOptions = this.createDefaultCorsOptions();
25
-
24
+ this.corsOptions = this.createDefaultCorsOptions();
25
+
26
26
  this.createdResources = this.createResource(scope);
27
27
  }
28
28
 
29
29
  private createApi(scope: Construct) {
30
- const zone = this.getZone(this.scope, this.config);
30
+ if (this.config.DNS) {
31
+ const zone = this.getZone(this.scope, this.config);
31
32
 
32
- const api = new RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps(zone));
33
+ const api = new RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps(zone));
33
34
 
34
- this.createARecord(scope, zone, api);
35
+ this.createARecord(scope, zone, api);
35
36
 
36
- return api;
37
- }
37
+ return api;
38
+ } else {
38
39
 
39
- private createApiProps(zone: IHostedZone): RestApiProps {
40
-
41
- const cert = this.createCertificate(this.scope, zone, this.config);
42
-
43
- const props: RestApiProps = {
44
- restApiName: `gs-api-${this.config.AppPrefix}-${this.config.API.Name}`,
45
- description: this.config.API.Description,
46
- domainName: {
47
- domainName: `${this.config.API.DomainPrefix}.${this.config.DNS.ZoneName}`,
48
- certificate: cert.certificate,
49
- endpointType: EndpointType.EDGE,
50
- securityPolicy: SecurityPolicy.TLS_1_2
51
- },
52
- // TODO: ADD CUSTOM DOMAIN HERE
53
- // defaultDomainMapping: {
54
- // domainName: domain,
55
- // },
56
- // domainName: '',
57
- defaultCorsPreflightOptions: this.corsOptions
58
- };
40
+ const api = new RestApi(this.scope, `${this.config.AppPrefix}-rest-api`, this.createApiProps());
41
+
42
+ return api;
43
+ }
44
+ }
59
45
 
60
- return props;
46
+ private createApiProps(zone?: IHostedZone): RestApiProps {
47
+
48
+ if (this.config.DNS) {
49
+
50
+ const cert = this.createCertificate(this.scope, zone!, this.config);
51
+
52
+ const props: RestApiProps = {
53
+ restApiName: `${this.config.AppPrefix}-${this.config.API.Name}`,
54
+ description: this.config.API.Description,
55
+ domainName: {
56
+ domainName: `${this.config.API.DomainPrefix}.${this.config.DNS.ZoneName}`,
57
+ certificate: cert.certificate,
58
+ endpointType: EndpointType.EDGE,
59
+ securityPolicy: SecurityPolicy.TLS_1_2
60
+ },
61
+ // TODO: ADD CUSTOM DOMAIN HERE
62
+ // defaultDomainMapping: {
63
+ // domainName: domain,
64
+ // },
65
+ // domainName: '',
66
+ defaultCorsPreflightOptions: this.corsOptions
67
+ };
68
+
69
+ return props;
70
+ } else {
71
+ const props: RestApiProps = {
72
+ restApiName: `${this.config.AppPrefix}-${this.config.API.Name}`,
73
+ description: this.config.API.Description,
74
+ defaultCorsPreflightOptions: this.corsOptions
75
+ };
76
+
77
+ return props;
78
+ }
61
79
  }
62
80
 
63
81
  private createDefaultCorsOptions() {
@@ -73,28 +91,28 @@ export class Api extends BaseResource<IRestApi> {
73
91
 
74
92
  return corsOptions;
75
93
  }
76
-
77
- private createCustomDomain(scope: Construct, config: MicroserviceProps) {
78
- const domainName = DomainName.fromDomainNameAttributes(scope, `${config.API.Name}-custom-domain`, {
79
- domainName: config.DNS.ZoneName,
80
- domainNameAliasHostedZoneId: config.DNS.ZoneId!,
81
- domainNameAliasTarget: config.API.DomainPrefix!,
82
- });
83
-
84
- return domainName
85
- }
86
-
87
- private attachDomainToApi(scope: Construct, api: IRestApi, domain: IDomainName, config: MicroserviceProps) {
88
- return new BasePathMapping(scope, `${config.API.Name}-basePathMapping`, {
89
- domainName: domain,
90
- restApi: api,
91
- });
92
- }
94
+
95
+ // private createCustomDomain(scope: Construct, config: MicroserviceProps) {
96
+ // const domainName = DomainName.fromDomainNameAttributes(scope, `${config.API.Name}-custom-domain`, {
97
+ // domainName: config.DNS?.ZoneName,
98
+ // domainNameAliasHostedZoneId: config.DNS.ZoneId!,
99
+ // domainNameAliasTarget: config.API.DomainPrefix!,
100
+ // });
101
+
102
+ // return domainName
103
+ // }
104
+
105
+ // private attachDomainToApi(scope: Construct, api: IRestApi, domain: IDomainName, config: MicroserviceProps) {
106
+ // return new BasePathMapping(scope, `${config.API.Name}-basePathMapping`, {
107
+ // domainName: domain,
108
+ // restApi: api,
109
+ // });
110
+ // }
93
111
 
94
112
  private getZone(scope: Construct, config: MicroserviceProps) {
95
- return HostedZone.fromHostedZoneAttributes(scope, `${config.DNS.ZoneName}-zone`, {
96
- zoneName: config.DNS.ZoneName,
97
- hostedZoneId: config.DNS.ZoneId!
113
+ return HostedZone.fromHostedZoneAttributes(scope, `${config.DNS?.ZoneName}-zone`, {
114
+ zoneName: config.DNS?.ZoneName!,
115
+ hostedZoneId: config.DNS?.ZoneId!
98
116
  });
99
117
  }
100
118
 
@@ -104,17 +122,17 @@ export class Api extends BaseResource<IRestApi> {
104
122
  }
105
123
 
106
124
  private createARecord(scope: Construct, zone: IHostedZone, api: RestApi) {
107
- const aRecord = new ARecord(scope, "ApiRecord", {
125
+ const aRecord = new ARecord(scope, "ApiRecord", {
108
126
  zone,
109
127
  target: RecordTarget.fromAlias(new ApiGateway(api)),
110
128
  recordName: this.config.API.DomainPrefix
111
129
  });
112
-
130
+
113
131
  aRecord.applyRemovalPolicy(RemovalPolicy.DESTROY);
114
132
  return aRecord;
115
- }
133
+ }
116
134
 
117
- protected createResource(scope: Construct) {
135
+ protected createResource(scope: Construct) {
118
136
 
119
137
  const api = this.createApi(scope);
120
138
  // TODO: ONLY IF CUSTOM MAPPING IS REQUIRED
@@ -122,7 +140,7 @@ export class Api extends BaseResource<IRestApi> {
122
140
 
123
141
  // const mapping = this.attachDomainToApi(scope, api, domain, this.config);
124
142
 
125
-
143
+
126
144
 
127
145
  return [api];
128
146
  }
@@ -130,11 +148,11 @@ export class Api extends BaseResource<IRestApi> {
130
148
  protected createOutput<T>(scope: Construct, createdAssets: T[]): void {
131
149
  createdAssets.forEach((api, idx) => {
132
150
 
133
- new CfnOutput(scope, `api${idx}`, {
151
+ new CfnOutput(scope, `api${idx}`, {
134
152
  // @ts-ignore
135
153
  value: api.url
136
154
  });
137
155
  });
138
156
  }
139
-
157
+
140
158
  }
@@ -26,7 +26,7 @@ export class CreateMicroServiceBundle {
26
26
  private readonly props: MicroserviceProps,
27
27
  private readonly appConfig: AppConfig,
28
28
  private readonly tables?: Table[],
29
- private readonly secretMgr?: ISecret,
29
+ private readonly secretMgr?: ISecret | null,
30
30
  private readonly layers?: LayerVersion[],
31
31
  ) {
32
32