@btc-embedded/cdk-extensions 0.20.10 → 0.21.0

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.
Files changed (85) hide show
  1. package/.jsii +286 -121
  2. package/API.md +1464 -194
  3. package/CHANGELOG.md +15 -0
  4. package/README.md +45 -0
  5. package/assets/constructs/api-keys/lambdas/pre-token.lambda/index.js +16 -13
  6. package/lib/constructs/EventPipe.js +1 -1
  7. package/lib/constructs/ExportedService.js +4 -4
  8. package/lib/constructs/S3Bucket.js +1 -1
  9. package/lib/constructs/SecureRestApi.d.ts +1 -1
  10. package/lib/constructs/SecureRestApi.js +9 -5
  11. package/lib/constructs/SecureRestApiV2.d.ts +1 -1
  12. package/lib/constructs/SecureRestApiV2.js +2 -2
  13. package/lib/constructs/api-keys/ApiKeyClientAuthorization.js +1 -1
  14. package/lib/constructs/api-keys/ApiKeyManagement.js +1 -1
  15. package/lib/constructs/api-keys/ApiKeyPreTokenHandler.js +1 -1
  16. package/lib/constructs/api-keys/ApiKeyStore.js +1 -1
  17. package/lib/constructs/api-keys/lambdas/pre-token.lambda.js +16 -17
  18. package/lib/extensions/ApiGatewayExtension.d.ts +1 -1
  19. package/lib/extensions/ApiGatewayExtension.js +33 -11
  20. package/lib/extensions/ApplicationLoadBalancerExtension.d.ts +2 -2
  21. package/lib/extensions/ApplicationLoadBalancerExtension.js +28 -9
  22. package/lib/extensions/ApplicationLoadBalancerExtensionV2.d.ts +1 -1
  23. package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +5 -5
  24. package/lib/extensions/CloudMapExtension.d.ts +1 -1
  25. package/lib/extensions/CloudMapExtension.js +3 -3
  26. package/lib/extensions/DeactivatableServiceExtension.js +1 -1
  27. package/lib/extensions/DeploymentConfigExtension.js +1 -1
  28. package/lib/extensions/DocumentDbAccessExtension.d.ts +1 -1
  29. package/lib/extensions/DocumentDbAccessExtension.js +2 -2
  30. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  31. package/lib/extensions/EfsMountExtension.js +1 -1
  32. package/lib/extensions/ExtraContainerExtension.js +1 -1
  33. package/lib/extensions/HTTPApiExtension.d.ts +1 -1
  34. package/lib/extensions/HTTPApiExtension.js +5 -5
  35. package/lib/extensions/LogExtension.d.ts +1 -1
  36. package/lib/extensions/LogExtension.js +5 -5
  37. package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
  38. package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
  39. package/lib/extensions/OpenIdExtension.d.ts +1 -1
  40. package/lib/extensions/OpenIdExtension.js +3 -3
  41. package/lib/extensions/OpenTelemetryExtension.js +1 -1
  42. package/lib/extensions/PostgresDbAccessExtension.d.ts +1 -1
  43. package/lib/extensions/PostgresDbAccessExtension.js +22 -6
  44. package/lib/extensions/SharedVolumeExtension.js +1 -1
  45. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  46. package/lib/index.d.ts +1 -0
  47. package/lib/index.js +2 -1
  48. package/lib/platform/ApiGateway.js +1 -1
  49. package/lib/platform/ApiGatewayVpcLink.d.ts +1 -1
  50. package/lib/platform/ApiGatewayVpcLink.js +6 -6
  51. package/lib/platform/ApplicationLoadBalancer.js +1 -1
  52. package/lib/platform/ApplicationLoadBalancerV2.d.ts +2 -2
  53. package/lib/platform/ApplicationLoadBalancerV2.js +6 -6
  54. package/lib/platform/BTCLogGroup.d.ts +2 -2
  55. package/lib/platform/BTCLogGroup.js +4 -4
  56. package/lib/platform/CognitoUserPool.d.ts +1 -1
  57. package/lib/platform/CognitoUserPool.js +9 -9
  58. package/lib/platform/DefaultUserPoolClients.js +1 -1
  59. package/lib/platform/DocumentDB.d.ts +1 -1
  60. package/lib/platform/DocumentDB.js +5 -5
  61. package/lib/platform/EcsCluster.d.ts +1 -1
  62. package/lib/platform/EcsCluster.js +3 -3
  63. package/lib/platform/EfsFileSystem.d.ts +2 -2
  64. package/lib/platform/EfsFileSystem.js +4 -4
  65. package/lib/platform/HostedZone.d.ts +1 -1
  66. package/lib/platform/HostedZone.js +4 -4
  67. package/lib/platform/PrivateDnsNamespace.d.ts +1 -1
  68. package/lib/platform/PrivateDnsNamespace.js +5 -5
  69. package/lib/platform/ResourceServer.js +1 -1
  70. package/lib/platform/Vpc.d.ts +1 -1
  71. package/lib/platform/Vpc.js +4 -4
  72. package/lib/platform/VpcV2.js +1 -1
  73. package/lib/stacks/ApplicationStack.d.ts +8 -0
  74. package/lib/stacks/ApplicationStack.js +17 -0
  75. package/lib/stacks/index.d.ts +1 -0
  76. package/lib/stacks/index.js +18 -0
  77. package/lib/utils/BasePlatformStackResolver.d.ts +5 -0
  78. package/lib/utils/BasePlatformStackResolver.js +24 -0
  79. package/lib/utils/StackParameter.d.ts +8 -1
  80. package/lib/utils/StackParameter.js +13 -4
  81. package/lib/utils/configFileParsing.d.ts +26 -0
  82. package/lib/utils/configFileParsing.js +36 -1
  83. package/lib/utils/index.d.ts +1 -0
  84. package/lib/utils/index.js +2 -1
  85. package/package.json +1 -1
@@ -29,11 +29,8 @@ const attributesSchema = zod_1.default.object({
29
29
  */
30
30
  const handler = async (event) => {
31
31
  try {
32
- // ignore any non m2m calls.
33
- if (event.userName !== "ClientCredentials") {
34
- return event;
35
- }
36
- logger.info("Triggering pre-token lambda for m2m.");
32
+ const clientRequest = event.userName === "ClientCredentials";
33
+ logger.info(`Triggering pre-token lambda for ${clientRequest ? "m2m" : "user"}.`);
37
34
  if (!process.env.DYNAMODB_TABLE_NAME) {
38
35
  throw new Error("DYNAMODB_TABLE_NAME environment variable is not set");
39
36
  }
@@ -45,10 +42,8 @@ const handler = async (event) => {
45
42
  throw new Error("ATTRIBUTES environment variable contains invalid JSON");
46
43
  }
47
44
  const { attributes } = result.data;
48
- // Extract the client ID
49
- const clientId = retrieveClientId(event);
50
- const claims = clientId
51
- ? await generateApiClientClaims(clientId, attributes)
45
+ const claims = clientRequest
46
+ ? await generateApiClientClaims(event, attributes)
52
47
  : generateUserClaims(event, attributes);
53
48
  logger.debug("Claims to overwrite:", {
54
49
  ...claims,
@@ -73,39 +68,43 @@ const handler = async (event) => {
73
68
  }
74
69
  };
75
70
  exports.handler = handler;
76
- async function generateApiClientClaims(clientId, attributes) {
77
- const user = API_CLIENT_PREFIX + clientId;
71
+ async function generateApiClientClaims(event, attributes) {
72
+ const apiKey = retrieveApiKey(event);
78
73
  const tableName = process.env.DYNAMODB_TABLE_NAME;
79
- logger.debug("Client ID:", clientId);
74
+ logger.debug("API key:", apiKey ?? "none");
75
+ if (!apiKey) {
76
+ throw new Error("No API key has been provided.");
77
+ }
80
78
  // Query DynamoDB for client information
81
79
  const getCommand = new lib_dynamodb_1.GetCommand({
82
80
  TableName: tableName,
83
81
  Key: {
84
- id: clientId,
82
+ id: apiKey,
85
83
  },
86
84
  });
87
85
  const response = await docClient.send(getCommand);
88
86
  if (!response.Item) {
89
- throw new Error(`Client ID ${clientId} is invalid`);
87
+ throw new Error(`Api key ${apiKey} is invalid`);
90
88
  }
89
+ const user = API_CLIENT_PREFIX + apiKey;
91
90
  return attributes.reduce((prev, cur) => ({
92
91
  ...prev,
93
92
  [cur.name]: response.Item[cur.apiName] ?? cur.defaultValue,
94
93
  }), { user });
95
94
  }
96
95
  function generateUserClaims(event, attributes) {
97
- const user = event.request.userAttributes["cognito:username"];
96
+ const user = event.request.userAttributes["cognito:username"] ?? event.userName;
98
97
  logger.debug("User:", user);
99
98
  return attributes.reduce((prev, cur) => ({
100
99
  ...prev,
101
100
  [cur.name]: event.request.userAttributes[cur.cognitoName] ?? cur.defaultValue,
102
101
  }), { user });
103
102
  }
104
- function retrieveClientId(event) {
103
+ function retrieveApiKey(event) {
105
104
  const clientId = event.request.clientMetadata?.["api-key"];
106
105
  // Remove API_CLIENT_PREFIX, if present
107
106
  return clientId?.startsWith(API_CLIENT_PREFIX)
108
107
  ? clientId.substring(API_CLIENT_PREFIX.length)
109
108
  : clientId;
110
109
  }
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlLXRva2VuLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb25zdHJ1Y3RzL2FwaS1rZXlzL2xhbWJkYXMvcHJlLXRva2VuLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBaUU7QUFDakUsOERBQTBEO0FBQzFELHdEQUEyRTtBQUszRSw2QkFBb0I7QUFFcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFNLENBQUM7SUFDeEIsV0FBVyxFQUFFLGlDQUFpQztJQUM5QyxRQUFRLEVBQUUsaUJBQVEsQ0FBQyxJQUFJO0NBQ3hCLENBQUMsQ0FBQztBQUNILE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDO0FBRWpDLE1BQU0sTUFBTSxHQUFHLElBQUksZ0NBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN0QyxNQUFNLFNBQVMsR0FBRyxxQ0FBc0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFdEQsTUFBTSxlQUFlLEdBQUcsYUFBQyxDQUFDLEtBQUssQ0FDN0IsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNQLElBQUksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2hCLE9BQU8sRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ25CLFdBQVcsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ3ZCLFlBQVksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztDQUNyQyxDQUFDLENBQ0gsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNoQyxVQUFVLEVBQUUsZUFBZTtDQUM1QixDQUFDLENBQUM7QUFFSDs7Ozs7R0FLRztBQUNJLE1BQU0sT0FBTyxHQUF1QyxLQUFLLEVBQzlELEtBQXVDLEVBQ3ZDLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCw0QkFBNEI7UUFDNUIsSUFBSSxLQUFLLENB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d2VydG9vbHMvbG9nZ2VyXCI7XG5pbXBvcnQgeyBEeW5hbW9EQkNsaWVudCB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtZHluYW1vZGJcIjtcbmltcG9ydCB7IER5bmFtb0RCRG9jdW1lbnRDbGllbnQsIEdldENvbW1hbmQgfSBmcm9tIFwiQGF3cy1zZGsvbGliLWR5bmFtb2RiXCI7XG5pbXBvcnQge1xuICBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbiAgUHJlVG9rZW5HZW5lcmF0aW9uVjNUcmlnZ2VySGFuZGxlcixcbn0gZnJvbSBcImF3cy1sYW1iZGFcIjtcbmltcG9ydCB6IGZyb20gXCJ6b2RcIjtcblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcih7XG4gIHNlcnZpY2VOYW1lOiBcImFwaS1jbGllbnQtYXV0aG9yaXphdGlvbi5sYW1iZGFcIixcbiAgbG9nTGV2ZWw6IExvZ0xldmVsLklORk8sXG59KTtcbmNvbnN0IEFQSV9DTElFTlRfUFJFRklYID0gXCJhcGk6XCI7XG5cbmNvbnN0IGNsaWVudCA9IG5ldyBEeW5hbW9EQkNsaWVudCh7fSk7XG5jb25zdCBkb2NDbGllbnQgPSBEeW5hbW9EQkRvY3VtZW50Q2xpZW50LmZyb20oY2xpZW50KTtcblxuY29uc3QgYXR0cmlidXRlU2NoZW1hID0gei5hcnJheShcbiAgei5vYmplY3Qoe1xuICAgIG5hbWU6IHouc3RyaW5nKCksXG4gICAgYXBpTmFtZTogei5zdHJpbmcoKSxcbiAgICBjb2duaXRvTmFtZTogei5zdHJpbmcoKSxcbiAgICBkZWZhdWx0VmFsdWU6IHouc3RyaW5nKCkuZGVmYXVsdChcIlwiKSxcbiAgfSksXG4pO1xuXG5jb25zdCBhdHRyaWJ1dGVzU2NoZW1hID0gei5vYmplY3Qoe1xuICBhdHRyaWJ1dGVzOiBhdHRyaWJ1dGVTY2hlbWEsXG59KTtcblxuLyoqXG4gKiBMYW1iZGEgdGhhdCBvdmVyd3JpdGVzIGF0dHJpYnV0ZXMgaW4gdGhlIGlkIHRva2VuIGFuZCBhY2Nlc3MgdG9rZW4uIERvIG5vdCB1c2VcbiAqIGRpcmVjdGx5LCBhZGQgaXQgdG8geW91ciBzdGFjayB2aWEgdGhlIHtAbGluayBBcGlLZXlBY2Nlc3NUb2tlbkVuaGFuY2VtZW50fSBjb21wb25lbnQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIHByZS10b2tlbiBldmVudC5cbiAqIEByZXR1cm5zIFRoZSBhZGp1c3RlZCBldmVudC5cbiAqL1xuZXhwb3J0IGNvbnN0IGhhbmRsZXI6IFByZVRva2VuR2VuZXJhdGlvblYzVHJpZ2dlckhhbmRsZXIgPSBhc3luYyAoXG4gIGV2ZW50OiBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbikgPT4ge1xuICB0cnkge1xuICAgIC8vIGlnbm9yZSBhbnkgbm9uIG0ybSBjYWxscy5cbiAgICBpZiAoZXZlbnQudXNlck5hbWUgIT09IFwiQ2xpZW50Q3JlZGVudGlhbHNcIikge1xuICAgICAgcmV0dXJuIGV2ZW50O1xuICAgIH1cblxuICAgIGxvZ2dlci5pbmZvKFwiVHJpZ2dlcmluZyBwcmUtdG9rZW4gbGFtYmRhIGZvciBtMm0uXCIpO1xuXG4gICAgaWYgKCFwcm9jZXNzLmVudi5EWU5BTU9EQl9UQUJMRV9OQU1FKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJEWU5BTU9EQl9UQUJMRV9OQU1FIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBzZXRcIik7XG4gICAgfVxuICAgIGlmICghcHJvY2Vzcy5lbnYuQVRUUklCVVRFUykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQVRUUklCVVRFUyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3Qgc2V0XCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGF0dHJpYnV0ZXNTY2hlbWEuc2FmZVBhcnNlKFxuICAgICAgSlNPTi5wYXJzZShwcm9jZXNzLmVudi5BVFRSSUJVVEVTKSxcbiAgICApO1xuXG4gICAgaWYgKCFyZXN1bHQuc3VjY2Vzcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQVRUUklCVVRFUyBlbnZpcm9ubWVudCB2YXJpYWJsZSBjb250YWlucyBpbnZhbGlkIEpTT05cIik7XG4gICAgfVxuXG4gICAgY29uc3QgeyBhdHRyaWJ1dGVzIH0gPSByZXN1bHQuZGF0YTtcblxuICAgIC8vIEV4dHJhY3QgdGhlIGNsaWVudCBJRFxuICAgIGNvbnN0IGNsaWVudElkID0gcmV0cmlldmVDbGllbnRJZChldmVudCk7XG4gICAgY29uc3QgY2xhaW1zID0gY2xpZW50SWRcbiAgICAgID8gYXdhaXQgZ2VuZXJhdGVBcGlDbGllbnRDbGFpbXMoY2xpZW50SWQsIGF0dHJpYnV0ZXMpXG4gICAgICA6IGdlbmVyYXRlVXNlckNsYWltcyhldmVudCwgYXR0cmlidXRlcyk7XG5cbiAgICBsb2dnZXIuZGVidWcoXCJDbGFpbXMgdG8gb3ZlcndyaXRlOlwiLCB7XG4gICAgICAuLi5jbGFpbXMsXG4gICAgfSk7XG5cbiAgICBldmVudC5yZXNwb25zZS5jbGFpbXNBbmRTY29wZU92ZXJyaWRlRGV0YWlscyA9IHtcbiAgICAgIGlkVG9rZW5HZW5lcmF0aW9uOiB7XG4gICAgICAgIGNsYWltc1RvQWRkT3JPdmVycmlkZToge1xuICAgICAgICAgIC4uLmNsYWltcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBhY2Nlc3NUb2tlbkdlbmVyYXRpb246IHtcbiAgICAgICAgY2xhaW1zVG9BZGRPck92ZXJyaWRlOiB7XG4gICAgICAgICAgLi4uY2xhaW1zLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGV2ZW50O1xuICB9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuICAgIGxvZ2dlci5lcnJvcihcbiAgICAgIFwiRXJyb3IgaW4gcHJlLXRva2VuIGdlbmVyYXRpb246XCIsXG4gICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IEpTT04uc3RyaW5naWZ5KGVycm9yKSxcbiAgICApO1xuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG5hc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUFwaUNsaWVudENsYWltcyhcbiAgY2xpZW50SWQ6IHN0cmluZyxcbiAgYXR0cmlidXRlczogei5pbmZlcjx0eXBlb2YgYXR0cmlidXRlU2NoZW1hPixcbik6IFByb21pc2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuICBjb25zdCB1c2VyID0gQVBJX0NMSUVOVF9QUkVGSVggKyBjbGllbnRJZDtcblxuICBjb25zdCB0YWJsZU5hbWUgPSBwcm9jZXNzLmVudi5EWU5BTU9EQl9UQUJMRV9OQU1FO1xuXG4gIGxvZ2dlci5kZWJ1ZyhcIkNsaWVudCBJRDpcIiwgY2xpZW50SWQpO1xuXG4gIC8vIFF1ZXJ5IER5bmFtb0RCIGZvciBjbGllbnQgaW5mb3JtYXRpb25cbiAgY29uc3QgZ2V0Q29tbWFuZCA9IG5ldyBHZXRDb21tYW5kKHtcbiAgICBUYWJsZU5hbWU6IHRhYmxlTmFtZSxcbiAgICBLZXk6IHtcbiAgICAgIGlkOiBjbGllbnRJZCxcbiAgICB9LFxuICB9KTtcblxuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGRvY0NsaWVudC5zZW5kKGdldENvbW1hbmQpO1xuXG4gIGlmICghcmVzcG9uc2UuSXRlbSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ2xpZW50IElEICR7Y2xpZW50SWR9IGlzIGludmFsaWRgKTtcbiAgfVxuXG4gIHJldHVybiBhdHRyaWJ1dGVzLnJlZHVjZShcbiAgICAocHJldiwgY3VyKSA9PiAoe1xuICAgICAgLi4ucHJldixcbiAgICAgIFtjdXIubmFtZV06IHJlc3BvbnNlLkl0ZW0hW2N1ci5hcGlOYW1lXSA/PyBjdXIuZGVmYXVsdFZhbHVlLFxuICAgIH0pLFxuICAgIHsgdXNlciB9LFxuICApO1xufVxuXG5mdW5jdGlvbiBnZW5lcmF0ZVVzZXJDbGFpbXMoXG4gIGV2ZW50OiBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbiAgYXR0cmlidXRlczogei5pbmZlcjx0eXBlb2YgYXR0cmlidXRlU2NoZW1hPixcbik6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICBjb25zdCB1c2VyID0gZXZlbnQucmVxdWVzdC51c2VyQXR0cmlidXRlc1tcImNvZ25pdG86dXNlcm5hbWVcIl07XG4gIGxvZ2dlci5kZWJ1ZyhcIlVzZXI6XCIsIHVzZXIpO1xuXG4gIHJldHVybiBhdHRyaWJ1dGVzLnJlZHVjZShcbiAgICAocHJldiwgY3VyKSA9PiAoe1xuICAgICAgLi4ucHJldixcbiAgICAgIFtjdXIubmFtZV06XG4gICAgICAgIGV2ZW50LnJlcXVlc3QudXNlckF0dHJpYnV0ZXNbY3VyLmNvZ25pdG9OYW1lXSA/PyBjdXIuZGVmYXVsdFZhbHVlLFxuICAgIH0pLFxuICAgIHsgdXNlciB9LFxuICApO1xufVxuXG5mdW5jdGlvbiByZXRyaWV2ZUNsaWVudElkKFxuICBldmVudDogUHJlVG9rZW5HZW5lcmF0aW9uVjNUcmlnZ2VyRXZlbnQsXG4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBjbGllbnRJZCA9IGV2ZW50LnJlcXVlc3QuY2xpZW50TWV0YWRhdGE/LltcImFwaS1rZXlcIl07XG4gIC8vIFJlbW92ZSBBUElfQ0xJRU5UX1BSRUZJWCwgaWYgcHJlc2VudFxuICByZXR1cm4gY2xpZW50SWQ/LnN0YXJ0c1dpdGgoQVBJX0NMSUVOVF9QUkVGSVgpXG4gICAgPyBjbGllbnRJZC5zdWJzdHJpbmcoQVBJX0NMSUVOVF9QUkVGSVgubGVuZ3RoKVxuICAgIDogY2xpZW50SWQ7XG59XG4iXX0=
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlLXRva2VuLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb25zdHJ1Y3RzL2FwaS1rZXlzL2xhbWJkYXMvcHJlLXRva2VuLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBaUU7QUFDakUsOERBQTBEO0FBQzFELHdEQUEyRTtBQUszRSw2QkFBb0I7QUFFcEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFNLENBQUM7SUFDeEIsV0FBVyxFQUFFLGlDQUFpQztJQUM5QyxRQUFRLEVBQUUsaUJBQVEsQ0FBQyxJQUFJO0NBQ3hCLENBQUMsQ0FBQztBQUNILE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDO0FBRWpDLE1BQU0sTUFBTSxHQUFHLElBQUksZ0NBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN0QyxNQUFNLFNBQVMsR0FBRyxxQ0FBc0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFdEQsTUFBTSxlQUFlLEdBQUcsYUFBQyxDQUFDLEtBQUssQ0FDN0IsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNQLElBQUksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ2hCLE9BQU8sRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ25CLFdBQVcsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFO0lBQ3ZCLFlBQVksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztDQUNyQyxDQUFDLENBQ0gsQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsYUFBQyxDQUFDLE1BQU0sQ0FBQztJQUNoQyxVQUFVLEVBQUUsZUFBZTtDQUM1QixDQUFDLENBQUM7QUFFSDs7Ozs7R0FLRztBQUNJLE1BQU0sT0FBTyxHQUF1QyxLQUFLLEVBQzlELEtBQXVDLEVBQ3ZDLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMs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QUM7UUFDOUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dnZXIsIExvZ0xldmVsIH0gZnJvbSBcIkBhd3MtbGFtYmRhLXBvd2VydG9vbHMvbG9nZ2VyXCI7XG5pbXBvcnQgeyBEeW5hbW9EQkNsaWVudCB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtZHluYW1vZGJcIjtcbmltcG9ydCB7IER5bmFtb0RCRG9jdW1lbnRDbGllbnQsIEdldENvbW1hbmQgfSBmcm9tIFwiQGF3cy1zZGsvbGliLWR5bmFtb2RiXCI7XG5pbXBvcnQge1xuICBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbiAgUHJlVG9rZW5HZW5lcmF0aW9uVjNUcmlnZ2VySGFuZGxlcixcbn0gZnJvbSBcImF3cy1sYW1iZGFcIjtcbmltcG9ydCB6IGZyb20gXCJ6b2RcIjtcblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcih7XG4gIHNlcnZpY2VOYW1lOiBcImFwaS1jbGllbnQtYXV0aG9yaXphdGlvbi5sYW1iZGFcIixcbiAgbG9nTGV2ZWw6IExvZ0xldmVsLklORk8sXG59KTtcbmNvbnN0IEFQSV9DTElFTlRfUFJFRklYID0gXCJhcGk6XCI7XG5cbmNvbnN0IGNsaWVudCA9IG5ldyBEeW5hbW9EQkNsaWVudCh7fSk7XG5jb25zdCBkb2NDbGllbnQgPSBEeW5hbW9EQkRvY3VtZW50Q2xpZW50LmZyb20oY2xpZW50KTtcblxuY29uc3QgYXR0cmlidXRlU2NoZW1hID0gei5hcnJheShcbiAgei5vYmplY3Qoe1xuICAgIG5hbWU6IHouc3RyaW5nKCksXG4gICAgYXBpTmFtZTogei5zdHJpbmcoKSxcbiAgICBjb2duaXRvTmFtZTogei5zdHJpbmcoKSxcbiAgICBkZWZhdWx0VmFsdWU6IHouc3RyaW5nKCkuZGVmYXVsdChcIlwiKSxcbiAgfSksXG4pO1xuXG5jb25zdCBhdHRyaWJ1dGVzU2NoZW1hID0gei5vYmplY3Qoe1xuICBhdHRyaWJ1dGVzOiBhdHRyaWJ1dGVTY2hlbWEsXG59KTtcblxuLyoqXG4gKiBMYW1iZGEgdGhhdCBvdmVyd3JpdGVzIGF0dHJpYnV0ZXMgaW4gdGhlIGlkIHRva2VuIGFuZCBhY2Nlc3MgdG9rZW4uIERvIG5vdCB1c2VcbiAqIGRpcmVjdGx5LCBhZGQgaXQgdG8geW91ciBzdGFjayB2aWEgdGhlIHtAbGluayBBcGlLZXlBY2Nlc3NUb2tlbkVuaGFuY2VtZW50fSBjb21wb25lbnQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIHByZS10b2tlbiBldmVudC5cbiAqIEByZXR1cm5zIFRoZSBhZGp1c3RlZCBldmVudC5cbiAqL1xuZXhwb3J0IGNvbnN0IGhhbmRsZXI6IFByZVRva2VuR2VuZXJhdGlvblYzVHJpZ2dlckhhbmRsZXIgPSBhc3luYyAoXG4gIGV2ZW50OiBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbikgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGNsaWVudFJlcXVlc3QgPSBldmVudC51c2VyTmFtZSA9PT0gXCJDbGllbnRDcmVkZW50aWFsc1wiO1xuXG4gICAgbG9nZ2VyLmluZm8oXG4gICAgICBgVHJpZ2dlcmluZyBwcmUtdG9rZW4gbGFtYmRhIGZvciAke2NsaWVudFJlcXVlc3QgPyBcIm0ybVwiIDogXCJ1c2VyXCJ9LmAsXG4gICAgKTtcblxuICAgIGlmICghcHJvY2Vzcy5lbnYuRFlOQU1PREJfVEFCTEVfTkFNRSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRFlOQU1PREJfVEFCTEVfTkFNRSBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3Qgc2V0XCIpO1xuICAgIH1cbiAgICBpZiAoIXByb2Nlc3MuZW52LkFUVFJJQlVURVMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkFUVFJJQlVURVMgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IHNldFwiKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSBhdHRyaWJ1dGVzU2NoZW1hLnNhZmVQYXJzZShcbiAgICAgIEpTT04ucGFyc2UocHJvY2Vzcy5lbnYuQVRUUklCVVRFUyksXG4gICAgKTtcblxuICAgIGlmICghcmVzdWx0LnN1Y2Nlc3MpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkFUVFJJQlVURVMgZW52aXJvbm1lbnQgdmFyaWFibGUgY29udGFpbnMgaW52YWxpZCBKU09OXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHsgYXR0cmlidXRlcyB9ID0gcmVzdWx0LmRhdGE7XG5cbiAgICBjb25zdCBjbGFpbXMgPSBjbGllbnRSZXF1ZXN0XG4gICAgICA/IGF3YWl0IGdlbmVyYXRlQXBpQ2xpZW50Q2xhaW1zKGV2ZW50LCBhdHRyaWJ1dGVzKVxuICAgICAgOiBnZW5lcmF0ZVVzZXJDbGFpbXMoZXZlbnQsIGF0dHJpYnV0ZXMpO1xuXG4gICAgbG9nZ2VyLmRlYnVnKFwiQ2xhaW1zIHRvIG92ZXJ3cml0ZTpcIiwge1xuICAgICAgLi4uY2xhaW1zLFxuICAgIH0pO1xuXG4gICAgZXZlbnQucmVzcG9uc2UuY2xhaW1zQW5kU2NvcGVPdmVycmlkZURldGFpbHMgPSB7XG4gICAgICBpZFRva2VuR2VuZXJhdGlvbjoge1xuICAgICAgICBjbGFpbXNUb0FkZE9yT3ZlcnJpZGU6IHtcbiAgICAgICAgICAuLi5jbGFpbXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgYWNjZXNzVG9rZW5HZW5lcmF0aW9uOiB7XG4gICAgICAgIGNsYWltc1RvQWRkT3JPdmVycmlkZToge1xuICAgICAgICAgIC4uLmNsYWltcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcblxuICAgIHJldHVybiBldmVudDtcbiAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICBsb2dnZXIuZXJyb3IoXG4gICAgICBcIkVycm9yIGluIHByZS10b2tlbiBnZW5lcmF0aW9uOlwiLFxuICAgICAgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiBKU09OLnN0cmluZ2lmeShlcnJvciksXG4gICAgKTtcbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdGVBcGlDbGllbnRDbGFpbXMoXG4gIGV2ZW50OiBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbiAgYXR0cmlidXRlczogei5pbmZlcjx0eXBlb2YgYXR0cmlidXRlU2NoZW1hPixcbik6IFByb21pc2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4ge1xuICBjb25zdCBhcGlLZXkgPSByZXRyaWV2ZUFwaUtleShldmVudCk7XG5cbiAgY29uc3QgdGFibGVOYW1lID0gcHJvY2Vzcy5lbnYuRFlOQU1PREJfVEFCTEVfTkFNRTtcblxuICBsb2dnZXIuZGVidWcoXCJBUEkga2V5OlwiLCBhcGlLZXkgPz8gXCJub25lXCIpO1xuXG4gIGlmICghYXBpS2V5KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gQVBJIGtleSBoYXMgYmVlbiBwcm92aWRlZC5cIik7XG4gIH1cblxuICAvLyBRdWVyeSBEeW5hbW9EQiBmb3IgY2xpZW50IGluZm9ybWF0aW9uXG4gIGNvbnN0IGdldENvbW1hbmQgPSBuZXcgR2V0Q29tbWFuZCh7XG4gICAgVGFibGVOYW1lOiB0YWJsZU5hbWUsXG4gICAgS2V5OiB7XG4gICAgICBpZDogYXBpS2V5LFxuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZG9jQ2xpZW50LnNlbmQoZ2V0Q29tbWFuZCk7XG5cbiAgaWYgKCFyZXNwb25zZS5JdGVtKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBBcGkga2V5ICR7YXBpS2V5fSBpcyBpbnZhbGlkYCk7XG4gIH1cblxuICBjb25zdCB1c2VyID0gQVBJX0NMSUVOVF9QUkVGSVggKyBhcGlLZXk7XG5cbiAgcmV0dXJuIGF0dHJpYnV0ZXMucmVkdWNlKFxuICAgIChwcmV2LCBjdXIpID0+ICh7XG4gICAgICAuLi5wcmV2LFxuICAgICAgW2N1ci5uYW1lXTogcmVzcG9uc2UuSXRlbSFbY3VyLmFwaU5hbWVdID8/IGN1ci5kZWZhdWx0VmFsdWUsXG4gICAgfSksXG4gICAgeyB1c2VyIH0sXG4gICk7XG59XG5cbmZ1bmN0aW9uIGdlbmVyYXRlVXNlckNsYWltcyhcbiAgZXZlbnQ6IFByZVRva2VuR2VuZXJhdGlvblYzVHJpZ2dlckV2ZW50LFxuICBhdHRyaWJ1dGVzOiB6LmluZmVyPHR5cGVvZiBhdHRyaWJ1dGVTY2hlbWE+LFxuKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IHVzZXIgPVxuICAgIGV2ZW50LnJlcXVlc3QudXNlckF0dHJpYnV0ZXNbXCJjb2duaXRvOnVzZXJuYW1lXCJdID8/IGV2ZW50LnVzZXJOYW1lO1xuICBsb2dnZXIuZGVidWcoXCJVc2VyOlwiLCB1c2VyKTtcblxuICByZXR1cm4gYXR0cmlidXRlcy5yZWR1Y2UoXG4gICAgKHByZXYsIGN1cikgPT4gKHtcbiAgICAgIC4uLnByZXYsXG4gICAgICBbY3VyLm5hbWVdOlxuICAgICAgICBldmVudC5yZXF1ZXN0LnVzZXJBdHRyaWJ1dGVzW2N1ci5jb2duaXRvTmFtZV0gPz8gY3VyLmRlZmF1bHRWYWx1ZSxcbiAgICB9KSxcbiAgICB7IHVzZXIgfSxcbiAgKTtcbn1cblxuZnVuY3Rpb24gcmV0cmlldmVBcGlLZXkoXG4gIGV2ZW50OiBQcmVUb2tlbkdlbmVyYXRpb25WM1RyaWdnZXJFdmVudCxcbik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGNsaWVudElkID0gZXZlbnQucmVxdWVzdC5jbGllbnRNZXRhZGF0YT8uW1wiYXBpLWtleVwiXTtcbiAgLy8gUmVtb3ZlIEFQSV9DTElFTlRfUFJFRklYLCBpZiBwcmVzZW50XG4gIHJldHVybiBjbGllbnRJZD8uc3RhcnRzV2l0aChBUElfQ0xJRU5UX1BSRUZJWClcbiAgICA/IGNsaWVudElkLnN1YnN0cmluZyhBUElfQ0xJRU5UX1BSRUZJWC5sZW5ndGgpXG4gICAgOiBjbGllbnRJZDtcbn1cbiJdfQ==
@@ -8,7 +8,7 @@ export interface ApiGatewayExtensionProps {
8
8
  /**
9
9
  * The name of the base platform stack.
10
10
  */
11
- readonly platformStackName: string;
11
+ readonly basePlatformStackName?: string;
12
12
  /**
13
13
  * The security group ID of the API Gateway which should be allowed to connect to the service.
14
14
  */
@@ -9,7 +9,7 @@ const aws_apigatewayv2_authorizers_1 = require("aws-cdk-lib/aws-apigatewayv2-aut
9
9
  const aws_apigatewayv2_integrations_1 = require("aws-cdk-lib/aws-apigatewayv2-integrations");
10
10
  const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
11
11
  const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
12
- const ImportValue_1 = require("../utils/ImportValue");
12
+ const StackParameter_1 = require("../utils/StackParameter");
13
13
  /**
14
14
  * Configures the service to be reachable via an API Gateway.
15
15
  * @deprecated Use {@link HTTPApiExtension} instead
@@ -24,8 +24,30 @@ class ApiGatewayExtension extends ecs_service_extensions_1.ServiceExtension {
24
24
  this.props = props;
25
25
  }
26
26
  useService(service) {
27
- const importValue = (0, ImportValue_1.createImporter)(this.props.platformStackName, "api-gateway");
28
- const importCognito = (0, ImportValue_1.createImporter)(this.props.platformStackName, "cognito");
27
+ const vpcLinkIdParameter = new StackParameter_1.StackParameter({
28
+ prefix: "api-gateway",
29
+ key: "vpc-link-id",
30
+ });
31
+ const apiGatewayIdParameter = new StackParameter_1.StackParameter({
32
+ prefix: "api-gateway",
33
+ key: "id",
34
+ });
35
+ const cognitoFullAccessClientParameter = new StackParameter_1.StackParameter({
36
+ prefix: "cognito",
37
+ key: "full-access-client-id",
38
+ });
39
+ const cognitoUserPoolClientParameter = new StackParameter_1.StackParameter({
40
+ prefix: "cognito",
41
+ key: "user-pool-client-id",
42
+ });
43
+ const cognitoUserPoolIdParameter = new StackParameter_1.StackParameter({
44
+ prefix: "cognito",
45
+ key: "user-pool-id",
46
+ });
47
+ const fqdnParameter = new StackParameter_1.StackParameter({
48
+ prefix: "fqdn",
49
+ key: "fqdn",
50
+ });
29
51
  if (!service.cloudMapService) {
30
52
  throw new Error("This extension requires the CloudMap extension to be added");
31
53
  }
@@ -35,19 +57,19 @@ class ApiGatewayExtension extends ecs_service_extensions_1.ServiceExtension {
35
57
  }
36
58
  const vpcLink = aws_apigatewayv2_1.VpcLink.fromVpcLinkAttributes(this.scope, `${this.parentService.id}VpcLink`, {
37
59
  vpc: this.parentService.vpc,
38
- vpcLinkId: importValue("vpc-link-id"),
60
+ vpcLinkId: vpcLinkIdParameter.import(service, this.props.basePlatformStackName),
39
61
  });
40
62
  const httpApi = aws_apigatewayv2_1.HttpApi.fromHttpApiAttributes(this.scope, `${this.parentService.id}HttpApi`, {
41
- httpApiId: importValue("id"),
63
+ httpApiId: apiGatewayIdParameter.import(service, this.props.basePlatformStackName),
42
64
  });
43
65
  const integration = new aws_apigatewayv2_integrations_1.HttpServiceDiscoveryIntegration(`${this.parentService.id}ServiceDiscoveryIntegration`, service.cloudMapService, {
44
66
  method: aws_apigatewayv2_1.HttpMethod.ANY,
45
67
  vpcLink,
46
68
  parameterMapping: new aws_apigatewayv2_1.ParameterMapping().overwritePath(aws_apigatewayv2_1.MappingValue.custom("/$request.path.proxy")),
47
69
  });
48
- const userPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(this.scope, `${this.parentService.id}ApiUserPoolClient`, importCognito("full-access-client-id"));
49
- const appUserPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(this.scope, `${this.parentService.id}AppUserPoolClient`, importCognito("user-pool-client-id"));
50
- const userPool = aws_cognito_1.UserPool.fromUserPoolId(this.scope, `${this.parentService.id}ApiGWUserPool`, importCognito("user-pool-id"));
70
+ const userPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(this.scope, `${this.parentService.id}ApiUserPoolClient`, cognitoFullAccessClientParameter.import(service, this.props.basePlatformStackName));
71
+ const appUserPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(this.scope, `${this.parentService.id}AppUserPoolClient`, cognitoUserPoolClientParameter.import(service, this.props.basePlatformStackName));
72
+ const userPool = aws_cognito_1.UserPool.fromUserPoolId(this.scope, `${this.parentService.id}ApiGWUserPool`, cognitoUserPoolIdParameter.import(service, this.props.basePlatformStackName));
51
73
  const authorizer = new aws_apigatewayv2_authorizers_1.HttpUserPoolAuthorizer(`${this.parentService.id}Authorizer`, userPool, {
52
74
  userPoolClients: [userPoolClient, appUserPoolClient],
53
75
  });
@@ -59,11 +81,11 @@ class ApiGatewayExtension extends ecs_service_extensions_1.ServiceExtension {
59
81
  });
60
82
  const apiGwSecurityGroup = aws_ec2_1.SecurityGroup.fromLookupById(this.scope, `${this.parentService.id}ApiGatewaySecurityGroup`, this.props.securityGroupId);
61
83
  apiGwSecurityGroup.connections.allowTo(service, aws_ec2_1.Port.tcp(container.trafficPort), `Allow traffic from API GW to ${this.parentService.id}`);
62
- const fqdn = (0, ImportValue_1.createImporter)(this.props.platformStackName)("fqdn");
84
+ const fqdn = fqdnParameter.import(service, this.props.basePlatformStackName);
63
85
  this.parentService.addURL("public", `https://api.${fqdn}${this.props.prefix}`);
64
86
  }
65
87
  }
66
88
  exports.ApiGatewayExtension = ApiGatewayExtension;
67
89
  _a = JSII_RTTI_SYMBOL_1;
68
- ApiGatewayExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.ApiGatewayExtension", version: "0.20.10" };
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpR2F0ZXdheUV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL0FwaUdhdGV3YXlFeHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFHb0Q7QUFDcEQsbUVBUXNDO0FBQ3RDLDJGQUFrRjtBQUNsRiw2RkFBNEY7QUFDNUYseURBQW1FO0FBQ25FLGlEQUEwRDtBQUUxRCxzREFBc0Q7QUFtQnREOzs7R0FHRztBQUNILE1BQWEsbUJBQW9CLFNBQVEseUNBQWdCO0lBR3ZEOzs7T0FHRztJQUNILFlBQVksS0FBK0I7UUFDekMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQztRQUM3QyxNQUFNLFdBQVcsR0FBRyxJQUFBLDRCQUFjLEVBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEVBQzVCLGFBQWEsQ0FDZCxDQUFDO1FBRUYsTUFBTSxhQUFhLEdBQUcsSUFBQSw0QkFBYyxFQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUM1QixTQUFTLENBQ1YsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FDYiw0REFBNEQsQ0FDN0QsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FDekQsbUJBQW1CLENBQ1AsQ0FBQztRQUNmLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FDYixpRUFBaUUsQ0FDbEUsQ0FBQztRQUNKLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBRywwQkFBTyxDQUFDLHFCQUFx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QUFLLENBQUMsTUFBTSxFQUFFLENBQzFDLENBQUM7SUFDSixDQUFDOztBQXpISCxrREEwSEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250YWluZXIsXG4gIFNlcnZpY2VFeHRlbnNpb24sXG59IGZyb20gXCJAYXdzLWNkay1jb250YWluZXJzL2Vjcy1zZXJ2aWNlLWV4dGVuc2lvbnNcIjtcbmltcG9ydCB7XG4gIEh0dHBBcGksXG4gIEh0dHBNZXRob2QsXG4gIEh0dHBSb3V0ZSxcbiAgSHR0cFJvdXRlS2V5LFxuICBNYXBwaW5nVmFsdWUsXG4gIFBhcmFtZXRlck1hcHBpbmcsXG4gIFZwY0xpbmssXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheXYyXCI7XG5pbXBvcnQgeyBIdHRwVXNlclBvb2xBdXRob3JpemVyIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5djItYXV0aG9yaXplcnNcIjtcbmltcG9ydCB7IEh0dHBTZXJ2aWNlRGlzY292ZXJ5SW50ZWdyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXl2Mi1pbnRlZ3JhdGlvbnNcIjtcbmltcG9ydCB7IFVzZXJQb29sLCBVc2VyUG9vbENsaWVudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29nbml0b1wiO1xuaW1wb3J0IHsgUG9ydCwgU2VjdXJpdHlHcm91cCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgeyBFYzJTZXJ2aWNlLCBGYXJnYXRlU2VydmljZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWNzXCI7XG5pbXBvcnQgeyBjcmVhdGVJbXBvcnRlciB9IGZyb20gXCIuLi91dGlscy9JbXBvcnRWYWx1ZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUdhdGV3YXlFeHRlbnNpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IGZvciB0aGUgQVBJIEdhdGV3YXkgZW5kcG9pbnQuXG4gICAqL1xuICByZWFkb25seSBwcmVmaXg6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGJhc2UgcGxhdGZvcm0gc3RhY2suXG4gICAqL1xuICByZWFkb25seSBwbGF0Zm9ybVN0YWNrTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VjdXJpdHkgZ3JvdXAgSUQgb2YgdGhlIEFQSSBHYXRld2F5IHdoaWNoIHNob3VsZCBiZSBhbGxvd2VkIHRvIGNvbm5lY3QgdG8gdGhlIHNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwSWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb25maWd1cmVzIHRoZSBzZXJ2aWNlIHRvIGJlIHJlYWNoYWJsZSB2aWEgYW4gQVBJIEdhdGV3YXkuXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIEhUVFBBcGlFeHRlbnNpb259IGluc3RlYWRcbiAqL1xuZXhwb3J0IGNsYXNzIEFwaUdhdGV3YXlFeHRlbnNpb24gZXh0ZW5kcyBTZXJ2aWNlRXh0ZW5zaW9uIHtcbiAgcmVhZG9ubHkgcHJvcHM6IEFwaUdhdGV3YXlFeHRlbnNpb25Qcm9wcztcblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHByb3BzXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wczogQXBpR2F0ZXdheUV4dGVuc2lvblByb3BzKSB7XG4gICAgc3VwZXIoXCJhcGktZ2F0ZXdheS1leHRlbnNpb25cIik7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB9XG5cbiAgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBpbXBvcnRWYWx1ZSA9IGNyZWF0ZUltcG9ydGVyKFxuICAgICAgdGhpcy5wcm9wcy5wbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICAgIFwiYXBpLWdhdGV3YXlcIixcbiAgICApO1xuXG4gICAgY29uc3QgaW1wb3J0Q29nbml0byA9IGNyZWF0ZUltcG9ydGVyKFxuICAgICAgdGhpcy5wcm9wcy5wbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICAgIFwiY29nbml0b1wiLFxuICAgICk7XG5cbiAgICBpZiAoIXNlcnZpY2UuY2xvdWRNYXBTZXJ2aWNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhpcyBleHRlbnNpb24gcmVxdWlyZXMgdGhlIENsb3VkTWFwIGV4dGVuc2lvbiB0byBiZSBhZGRlZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLnBhcmVudFNlcnZpY2Uuc2VydmljZURlc2NyaXB0aW9uLmdldChcbiAgICAgIFwic2VydmljZS1jb250YWluZXJcIixcbiAgICApIGFzIENvbnRhaW5lcjtcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhY29udGFpbmVyLnRyYWZmaWNQb3J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQ2Fubm90IGFwcGx5IEFQSSBHYXRld2F5IEV4dGVuc2lvbiwgbm8gbWFpbiBhcHAgY29udGFpbmVyIGZvdW5kXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHZwY0xpbmsgPSBWcGNMaW5rLmZyb21WcGNMaW5rQXR0cmlidXRlcyhcbiAgICAgIHRoaXMuc2NvcGUsXG4gICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9VnBjTGlua2AsXG4gICAgICB7XG4gICAgICAgIHZwYzogdGhpcy5wYXJlbnRTZXJ2aWNlLnZwYyxcbiAgICAgICAgdnBjTGlua0lkOiBpbXBvcnRWYWx1ZShcInZwYy1saW5rLWlkXCIpLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgY29uc3QgaHR0cEFwaSA9IEh0dHBBcGkuZnJvbUh0dHBBcGlBdHRyaWJ1dGVzKFxuICAgICAgdGhpcy5zY29wZSxcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1IdHRwQXBpYCxcbiAgICAgIHtcbiAgICAgICAgaHR0cEFwaUlkOiBpbXBvcnRWYWx1ZShcImlkXCIpLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgY29uc3QgaW50ZWdyYXRpb24gPSBuZXcgSHR0cFNlcnZpY2VEaXNjb3ZlcnlJbnRlZ3JhdGlvbihcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1TZXJ2aWNlRGlzY292ZXJ5SW50ZWdyYXRpb25gLFxuICAgICAgc2VydmljZS5jbG91ZE1hcFNlcnZpY2UsXG4gICAgICB7XG4gICAgICAgIG1ldGhvZDogSHR0cE1ldGhvZC5BTlksXG4gICAgICAgIHZwY0xpbmssXG4gICAgICAgIHBhcmFtZXRlck1hcHBpbmc6IG5ldyBQYXJhbWV0ZXJNYXBwaW5nKCkub3ZlcndyaXRlUGF0aChcbiAgICAgICAgICBNYXBwaW5nVmFsdWUuY3VzdG9tKFwiLyRyZXF1ZXN0LnBhdGgucHJveHlcIiksXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBjb25zdCB1c2VyUG9vbENsaWVudCA9IFVzZXJQb29sQ2xpZW50LmZyb21Vc2VyUG9vbENsaWVudElkKFxuICAgICAgdGhpcy5zY29wZSxcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1BcGlVc2VyUG9vbENsaWVudGAsXG4gICAgICBpbXBvcnRDb2duaXRvKFwiZnVsbC1hY2Nlc3MtY2xpZW50LWlkXCIpLFxuICAgICk7XG5cbiAgICBjb25zdCBhcHBVc2VyUG9vbENsaWVudCA9IFVzZXJQb29sQ2xpZW50LmZyb21Vc2VyUG9vbENsaWVudElkKFxuICAgICAgdGhpcy5zY29wZSxcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1BcHBVc2VyUG9vbENsaWVudGAsXG4gICAgICBpbXBvcnRDb2duaXRvKFwidXNlci1wb29sLWNsaWVudC1pZFwiKSxcbiAgICApO1xuXG4gICAgY29uc3QgdXNlclBvb2wgPSBVc2VyUG9vbC5mcm9tVXNlclBvb2xJZChcbiAgICAgIHRoaXMuc2NvcGUsXG4gICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9QXBpR1dVc2VyUG9vbGAsXG4gICAgICBpbXBvcnRDb2duaXRvKFwidXNlci1wb29sLWlkXCIpLFxuICAgICk7XG5cbiAgICBjb25zdCBhdXRob3JpemVyID0gbmV3IEh0dHBVc2VyUG9vbEF1dGhvcml6ZXIoXG4gICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9QXV0aG9yaXplcmAsXG4gICAgICB1c2VyUG9vbCxcbiAgICAgIHtcbiAgICAgICAgdXNlclBvb2xDbGllbnRzOiBbdXNlclBvb2xDbGllbnQsIGFwcFVzZXJQb29sQ2xpZW50XSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIG5ldyBIdHRwUm91dGUodGhpcy5zY29wZSwgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfUh0dHBSb3V0ZWAsIHtcbiAgICAgIGh0dHBBcGksXG4gICAgICBpbnRlZ3JhdGlvbixcbiAgICAgIHJvdXRlS2V5OiBIdHRwUm91dGVLZXkud2l0aChcbiAgICAgICAgYCR7dGhpcy5wcm9wcy5wcmVmaXh9L3twcm94eSt9YCxcbiAgICAgICAgSHR0cE1ldGhvZC5BTlksXG4gICAgICApLFxuICAgICAgYXV0aG9yaXplcixcbiAgICB9KTtcblxuICAgIGNvbnN0IGFwaUd3U2VjdXJpdHlHcm91cCA9IFNlY3VyaXR5R3JvdXAuZnJvbUxvb2t1cEJ5SWQoXG4gICAgICB0aGlzLnNjb3BlLFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfUFwaUdhdGV3YXlTZWN1cml0eUdyb3VwYCxcbiAgICAgIHRoaXMucHJvcHMuc2VjdXJpdHlHcm91cElkLFxuICAgICk7XG5cbiAgICBhcGlHd1NlY3VyaXR5R3JvdXAuY29ubmVjdGlvbnMuYWxsb3dUbyhcbiAgICAgIHNlcnZpY2UsXG4gICAgICBQb3J0LnRjcChjb250YWluZXIudHJhZmZpY1BvcnQpLFxuICAgICAgYEFsbG93IHRyYWZmaWMgZnJvbSBBUEkgR1cgdG8gJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9YCxcbiAgICApO1xuXG4gICAgY29uc3QgZnFkbiA9IGNyZWF0ZUltcG9ydGVyKHRoaXMucHJvcHMucGxhdGZvcm1TdGFja05hbWUpKFwiZnFkblwiKTtcblxuICAgIHRoaXMucGFyZW50U2VydmljZS5hZGRVUkwoXG4gICAgICBcInB1YmxpY1wiLFxuICAgICAgYGh0dHBzOi8vYXBpLiR7ZnFkbn0ke3RoaXMucHJvcHMucHJlZml4fWAsXG4gICAgKTtcbiAgfVxufVxuIl19
90
+ ApiGatewayExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.ApiGatewayExtension", version: "0.21.0" };
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpR2F0ZXdheUV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL0FwaUdhdGV3YXlFeHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFHb0Q7QUFDcEQsbUVBUXNDO0FBQ3RDLDJGQUFrRjtBQUNsRiw2RkFBNEY7QUFDNUYseURBQW1FO0FBQ25FLGlEQUEwRDtBQUUxRCw0REFBeUQ7QUFtQnpEOzs7R0FHRztBQUNILE1BQWEsbUJBQW9CLFNBQVEseUNBQWdCO0lBR3ZEOzs7T0FHRztJQUNILFlBQVksS0FBK0I7UUFDekMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQztRQUM3QyxNQUFNLGtCQUFrQixHQUFHLElBQUksK0JBQWMsQ0FBQztZQUM1QyxNQUFNLEVBQUUsYUFBYTtZQUNyQixHQUFHLEVBQUUsYUFBYTtTQUNuQixDQUFDLENBQUM7UUFDSCxNQUFNLHFCQUFxQixHQUFHLElBQUksK0JBQWMsQ0FBQztZQUMvQyxNQUFNLEVBQUUsYUFBYTtZQUNyQixHQUFHLEVBQUUsSUFBSTtTQUNWLENBQUMsQ0FBQztRQUNILE1BQU0sZ0NBQWdDLEdBQUcsSUFBSSwrQkFBYyxDQUFDO1lBQzFELE1BQU0sRUFBRSxTQUFTO1lBQ2pCLEdBQUcsRUFBRSx1QkFBdUI7U0FDN0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSw4QkFBOEIsR0FBRyxJQUFJLCtCQUFjLENBQUM7WUFDeEQsTUFBTSxFQUFFLFNBQVM7WUFDakIsR0FBRyxFQUFFLHFCQUFxQjtTQUMzQixDQUFDLENBQUM7UUFDSCxNQUFNLDBCQUEwQixHQUFHLElBQUksK0JBQWMsQ0FBQztZQUNwRCxNQUFNLEVBQUUsU0FBUztZQUNqQixHQUFHLEVBQUUsY0FBYztTQUNwQixDQUFDLENBQUM7UUFDSCxN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SUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLFdBQVcsRUFBRTtZQUM3RCxPQUFPO1lBQ1AsV0FBVztZQUNYLFFBQVEsRUFBRSwrQkFBWSxDQUFDLElBQUksQ0FDekIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sV0FBVyxFQUMvQiw2QkFBVSxDQUFDLEdBQUcsQ0FDZjtZQUNELFVBQVU7U0FDWCxDQUFDLENBQUM7UUFFSCxNQUFNLGtCQUFrQixHQUFHLHVCQUFhLENBQUMsY0FBYyxDQUNyRCxJQUFJLENBQUMsS0FBSyxFQUNWLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLHlCQUF5QixFQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FDM0IsQ0FBQztRQUVGLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQ3BDLE9BQU8sRUFDUCxjQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsRUFDL0IsZ0NBQWdDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLENBQ3hELENBQUM7UUFFRixNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsTUFBTSxDQUMvQixPQUFPLEVBQ1AsSUFBSSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FDakMsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUN2QixRQUFRLEVBQ1IsZUFBZSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FDMUMsQ0FBQztJQUNKLENBQUM7O0FBMUpILGtEQTJKQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnRhaW5lcixcbiAgU2VydmljZUV4dGVuc2lvbixcbn0gZnJvbSBcIkBhd3MtY2RrLWNvbnRhaW5lcnMvZWNzLXNlcnZpY2UtZXh0ZW5zaW9uc1wiO1xuaW1wb3J0IHtcbiAgSHR0cEFwaSxcbiAgSHR0cE1ldGhvZCxcbiAgSHR0cFJvdXRlLFxuICBIdHRwUm91dGVLZXksXG4gIE1hcHBpbmdWYWx1ZSxcbiAgUGFyYW1ldGVyTWFwcGluZyxcbiAgVnBjTGluayxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5djJcIjtcbmltcG9ydCB7IEh0dHBVc2VyUG9vbEF1dGhvcml6ZXIgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXl2Mi1hdXRob3JpemVyc1wiO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2VEaXNjb3ZlcnlJbnRlZ3JhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheXYyLWludGVncmF0aW9uc1wiO1xuaW1wb3J0IHsgVXNlclBvb2wsIFVzZXJQb29sQ2xpZW50IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2duaXRvXCI7XG5pbXBvcnQgeyBQb3J0LCBTZWN1cml0eUdyb3VwIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IEVjMlNlcnZpY2UsIEZhcmdhdGVTZXJ2aWNlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCB7IFN0YWNrUGFyYW1ldGVyIH0gZnJvbSBcIi4uL3V0aWxzL1N0YWNrUGFyYW1ldGVyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBpR2F0ZXdheUV4dGVuc2lvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggZm9yIHRoZSBBUEkgR2F0ZXdheSBlbmRwb2ludC5cbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgYmFzZSBwbGF0Zm9ybSBzdGFjay5cbiAgICovXG4gIHJlYWRvbmx5IGJhc2VQbGF0Zm9ybVN0YWNrTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNlY3VyaXR5IGdyb3VwIElEIG9mIHRoZSBBUEkgR2F0ZXdheSB3aGljaCBzaG91bGQgYmUgYWxsb3dlZCB0byBjb25uZWN0IHRvIHRoZSBzZXJ2aWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29uZmlndXJlcyB0aGUgc2VydmljZSB0byBiZSByZWFjaGFibGUgdmlhIGFuIEFQSSBHYXRld2F5LlxuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBIVFRQQXBpRXh0ZW5zaW9ufSBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjbGFzcyBBcGlHYXRld2F5RXh0ZW5zaW9uIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHJlYWRvbmx5IHByb3BzOiBBcGlHYXRld2F5RXh0ZW5zaW9uUHJvcHM7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wc1xuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM6IEFwaUdhdGV3YXlFeHRlbnNpb25Qcm9wcykge1xuICAgIHN1cGVyKFwiYXBpLWdhdGV3YXktZXh0ZW5zaW9uXCIpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIHVzZVNlcnZpY2Uoc2VydmljZTogRWMyU2VydmljZSB8IEZhcmdhdGVTZXJ2aWNlKTogdm9pZCB7XG4gICAgY29uc3QgdnBjTGlua0lkUGFyYW1ldGVyID0gbmV3IFN0YWNrUGFyYW1ldGVyKHtcbiAgICAgIHByZWZpeDogXCJhcGktZ2F0ZXdheVwiLFxuICAgICAga2V5OiBcInZwYy1saW5rLWlkXCIsXG4gICAgfSk7XG4gICAgY29uc3QgYXBpR2F0ZXdheUlkUGFyYW1ldGVyID0gbmV3IFN0YWNrUGFyYW1ldGVyKHtcbiAgICAgIHByZWZpeDogXCJhcGktZ2F0ZXdheVwiLFxuICAgICAga2V5OiBcImlkXCIsXG4gICAgfSk7XG4gICAgY29uc3QgY29nbml0b0Z1bGxBY2Nlc3NDbGllbnRQYXJhbWV0ZXIgPSBuZXcgU3RhY2tQYXJhbWV0ZXIoe1xuICAgICAgcHJlZml4OiBcImNvZ25pdG9cIixcbiAgICAgIGtleTogXCJmdWxsLWFjY2Vzcy1jbGllbnQtaWRcIixcbiAgICB9KTtcbiAgICBjb25zdCBjb2duaXRvVXNlclBvb2xDbGllbnRQYXJhbWV0ZXIgPSBuZXcgU3RhY2tQYXJhbWV0ZXIoe1xuICAgICAgcHJlZml4OiBcImNvZ25pdG9cIixcbiAgICAgIGtleTogXCJ1c2VyLXBvb2wtY2xpZW50LWlkXCIsXG4gICAgfSk7XG4gICAgY29uc3QgY29nbml0b1VzZXJQb29sSWRQYXJhbWV0ZXIgPSBuZXcgU3RhY2tQYXJhbWV0ZXIoe1xuICAgICAgcHJlZml4OiBcImNvZ25pdG9cIixcbiAgICAgIGtleTogXCJ1c2VyLXBvb2wtaWRcIixcbiAgICB9KTtcbiAgICBjb25zdCBmcWRuUGFyYW1ldGVyID0gbmV3IFN0YWNrUGFyYW1ldGVyKHtcbiAgICAgIHByZWZpeDogXCJmcWRuXCIsXG4gICAgICBrZXk6IFwiZnFkblwiLFxuICAgIH0pO1xuXG4gICAgaWYgKCFzZXJ2aWNlLmNsb3VkTWFwU2VydmljZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoaXMgZXh0ZW5zaW9uIHJlcXVpcmVzIHRoZSBDbG91ZE1hcCBleHRlbnNpb24gdG8gYmUgYWRkZWRcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5wYXJlbnRTZXJ2aWNlLnNlcnZpY2VEZXNjcmlwdGlvbi5nZXQoXG4gICAgICBcInNlcnZpY2UtY29udGFpbmVyXCIsXG4gICAgKSBhcyBDb250YWluZXI7XG4gICAgaWYgKCFjb250YWluZXIgfHwgIWNvbnRhaW5lci50cmFmZmljUG9ydCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhcHBseSBBUEkgR2F0ZXdheSBFeHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB2cGNMaW5rID0gVnBjTGluay5mcm9tVnBjTGlua0F0dHJpYnV0ZXMoXG4gICAgICB0aGlzLnNjb3BlLFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfVZwY0xpbmtgLFxuICAgICAge1xuICAgICAgICB2cGM6IHRoaXMucGFyZW50U2VydmljZS52cGMsXG4gICAgICAgIHZwY0xpbmtJZDogdnBjTGlua0lkUGFyYW1ldGVyLmltcG9ydChcbiAgICAgICAgICBzZXJ2aWNlLFxuICAgICAgICAgIHRoaXMucHJvcHMuYmFzZVBsYXRmb3JtU3RhY2tOYW1lLFxuICAgICAgICApLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgY29uc3QgaHR0cEFwaSA9IEh0dHBBcGkuZnJvbUh0dHBBcGlBdHRyaWJ1dGVzKFxuICAgICAgdGhpcy5zY29wZSxcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1IdHRwQXBpYCxcbiAgICAgIHtcbiAgICAgICAgaHR0cEFwaUlkOiBhcGlHYXRld2F5SWRQYXJhbWV0ZXIuaW1wb3J0KFxuICAgICAgICAgIHNlcnZpY2UsXG4gICAgICAgICAgdGhpcy5wcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUsXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBjb25zdCBpbnRlZ3JhdGlvbiA9IG5ldyBIdHRwU2VydmljZURpc2NvdmVyeUludGVncmF0aW9uKFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfVNlcnZpY2VEaXNjb3ZlcnlJbnRlZ3JhdGlvbmAsXG4gICAgICBzZXJ2aWNlLmNsb3VkTWFwU2VydmljZSxcbiAgICAgIHtcbiAgICAgICAgbWV0aG9kOiBIdHRwTWV0aG9kLkFOWSxcbiAgICAgICAgdnBjTGluayxcbiAgICAgICAgcGFyYW1ldGVyTWFwcGluZzogbmV3IFBhcmFtZXRlck1hcHBpbmcoKS5vdmVyd3JpdGVQYXRoKFxuICAgICAgICAgIE1hcHBpbmdWYWx1ZS5jdXN0b20oXCIvJHJlcXVlc3QucGF0aC5wcm94eVwiKSxcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIGNvbnN0IHVzZXJQb29sQ2xpZW50ID0gVXNlclBvb2xDbGllbnQuZnJvbVVzZXJQb29sQ2xpZW50SWQoXG4gICAgICB0aGlzLnNjb3BlLFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfUFwaVVzZXJQb29sQ2xpZW50YCxcbiAgICAgIGNvZ25pdG9GdWxsQWNjZXNzQ2xpZW50UGFyYW1ldGVyLmltcG9ydChcbiAgICAgICAgc2VydmljZSxcbiAgICAgICAgdGhpcy5wcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUsXG4gICAgICApLFxuICAgICk7XG5cbiAgICBjb25zdCBhcHBVc2VyUG9vbENsaWVudCA9IFVzZXJQb29sQ2xpZW50LmZyb21Vc2VyUG9vbENsaWVudElkKFxuICAgICAgdGhpcy5zY29wZSxcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1BcHBVc2VyUG9vbENsaWVudGAsXG4gICAgICBjb2duaXRvVXNlclBvb2xDbGllbnRQYXJhbWV0ZXIuaW1wb3J0KFxuICAgICAgICBzZXJ2aWNlLFxuICAgICAgICB0aGlzLnByb3BzLmJhc2VQbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICAgICksXG4gICAgKTtcblxuICAgIGNvbnN0IHVzZXJQb29sID0gVXNlclBvb2wuZnJvbVVzZXJQb29sSWQoXG4gICAgICB0aGlzLnNjb3BlLFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfUFwaUdXVXNlclBvb2xgLFxuICAgICAgY29nbml0b1VzZXJQb29sSWRQYXJhbWV0ZXIuaW1wb3J0KFxuICAgICAgICBzZXJ2aWNlLFxuICAgICAgICB0aGlzLnByb3BzLmJhc2VQbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICAgICksXG4gICAgKTtcblxuICAgIGNvbnN0IGF1dGhvcml6ZXIgPSBuZXcgSHR0cFVzZXJQb29sQXV0aG9yaXplcihcbiAgICAgIGAke3RoaXMucGFyZW50U2VydmljZS5pZH1BdXRob3JpemVyYCxcbiAgICAgIHVzZXJQb29sLFxuICAgICAge1xuICAgICAgICB1c2VyUG9vbENsaWVudHM6IFt1c2VyUG9vbENsaWVudCwgYXBwVXNlclBvb2xDbGllbnRdLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgbmV3IEh0dHBSb3V0ZSh0aGlzLnNjb3BlLCBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9SHR0cFJvdXRlYCwge1xuICAgICAgaHR0cEFwaSxcbiAgICAgIGludGVncmF0aW9uLFxuICAgICAgcm91dGVLZXk6IEh0dHBSb3V0ZUtleS53aXRoKFxuICAgICAgICBgJHt0aGlzLnByb3BzLnByZWZpeH0ve3Byb3h5K31gLFxuICAgICAgICBIdHRwTWV0aG9kLkFOWSxcbiAgICAgICksXG4gICAgICBhdXRob3JpemVyLFxuICAgIH0pO1xuXG4gICAgY29uc3QgYXBpR3dTZWN1cml0eUdyb3VwID0gU2VjdXJpdHlHcm91cC5mcm9tTG9va3VwQnlJZChcbiAgICAgIHRoaXMuc2NvcGUsXG4gICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9QXBpR2F0ZXdheVNlY3VyaXR5R3JvdXBgLFxuICAgICAgdGhpcy5wcm9wcy5zZWN1cml0eUdyb3VwSWQsXG4gICAgKTtcblxuICAgIGFwaUd3U2VjdXJpdHlHcm91cC5jb25uZWN0aW9ucy5hbGxvd1RvKFxuICAgICAgc2VydmljZSxcbiAgICAgIFBvcnQudGNwKGNvbnRhaW5lci50cmFmZmljUG9ydCksXG4gICAgICBgQWxsb3cgdHJhZmZpYyBmcm9tIEFQSSBHVyB0byAke3RoaXMucGFyZW50U2VydmljZS5pZH1gLFxuICAgICk7XG5cbiAgICBjb25zdCBmcWRuID0gZnFkblBhcmFtZXRlci5pbXBvcnQoXG4gICAgICBzZXJ2aWNlLFxuICAgICAgdGhpcy5wcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUsXG4gICAgKTtcblxuICAgIHRoaXMucGFyZW50U2VydmljZS5hZGRVUkwoXG4gICAgICBcInB1YmxpY1wiLFxuICAgICAgYGh0dHBzOi8vYXBpLiR7ZnFkbn0ke3RoaXMucHJvcHMucHJlZml4fWAsXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -4,7 +4,7 @@ import { Ec2Service, FargateService } from "aws-cdk-lib/aws-ecs";
4
4
  import { IApplicationListener } from "aws-cdk-lib/aws-elasticloadbalancingv2";
5
5
  import { Construct } from "constructs";
6
6
  export interface ApplicationLoadBalancerExtensionProps {
7
- readonly platformStackName: string;
7
+ readonly basePlatformStackName?: string;
8
8
  readonly userPoolClientSecret: string;
9
9
  readonly securityGroupId: string;
10
10
  readonly clientScope: string;
@@ -21,7 +21,7 @@ export declare class ApplicationLoadBalancerExtension extends ServiceExtension {
21
21
  userPool: IUserPool;
22
22
  userPoolClient: IUserPoolClient;
23
23
  userPoolDomain: IUserPoolDomain;
24
- readonly fqdn: string;
24
+ fqdn: string;
25
25
  constructor(props: ApplicationLoadBalancerExtensionProps);
26
26
  addHooks(): void;
27
27
  prehook(service: Service, _scope: Construct): void;
@@ -9,7 +9,7 @@ const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
9
9
  const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
10
10
  const aws_elasticloadbalancingv2_1 = require("aws-cdk-lib/aws-elasticloadbalancingv2");
11
11
  const aws_elasticloadbalancingv2_actions_1 = require("aws-cdk-lib/aws-elasticloadbalancingv2-actions");
12
- const ImportValue_1 = require("../utils/ImportValue");
12
+ const StackParameter_1 = require("../utils/StackParameter");
13
13
  class AddOidcVarsHook extends ecs_service_extensions_1.ContainerMutatingHook {
14
14
  constructor(props) {
15
15
  super();
@@ -36,7 +36,6 @@ class ApplicationLoadBalancerExtension extends ecs_service_extensions_1.ServiceE
36
36
  constructor(props) {
37
37
  super("application-load-balancer");
38
38
  this.props = props;
39
- this.fqdn = (0, ImportValue_1.importValue)(this.props.platformStackName, "fqdn");
40
39
  }
41
40
  addHooks() {
42
41
  const container = this.parentService.serviceDescription.get("service-container");
@@ -53,8 +52,28 @@ class ApplicationLoadBalancerExtension extends ecs_service_extensions_1.ServiceE
53
52
  }
54
53
  prehook(service, _scope) {
55
54
  this.parentService = service;
56
- const importCognitoValue = (0, ImportValue_1.createImporter)(this.props.platformStackName, "cognito");
57
- const albListenerArn = (0, ImportValue_1.importValue)(this.props.platformStackName, "alb", "listener-arn");
55
+ const fqdnParameter = new StackParameter_1.StackParameter({
56
+ key: "fqdn",
57
+ prefix: "fqdn",
58
+ });
59
+ const albListenerArnParameter = new StackParameter_1.StackParameter({
60
+ prefix: ["alb"],
61
+ key: "listener-arn",
62
+ });
63
+ const cognitoUserPoolIdParameter = new StackParameter_1.StackParameter({
64
+ prefix: "cognito",
65
+ key: "user-pool-id",
66
+ });
67
+ const cognitoUserPoolClientParameter = new StackParameter_1.StackParameter({
68
+ prefix: "cognito",
69
+ key: "user-pool-client-id",
70
+ });
71
+ const cognitoDomainPrefixParameter = new StackParameter_1.StackParameter({
72
+ prefix: "cognito",
73
+ key: "domain-prefix",
74
+ });
75
+ this.fqdn = fqdnParameter.import(service, this.props.basePlatformStackName);
76
+ const albListenerArn = albListenerArnParameter.import(service, this.props.basePlatformStackName);
58
77
  if (this.props.listener) {
59
78
  this.listener = this.props.listener;
60
79
  }
@@ -64,9 +83,9 @@ class ApplicationLoadBalancerExtension extends ecs_service_extensions_1.ServiceE
64
83
  securityGroup: aws_ec2_1.SecurityGroup.fromLookupById(service, "ALBSecurityGroup", this.props.securityGroupId),
65
84
  });
66
85
  }
67
- this.userPool = aws_cognito_1.UserPool.fromUserPoolId(service, "ALBUserPool", importCognitoValue("user-pool-id"));
68
- this.userPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(service, "UserPoolClient", importCognitoValue("user-pool-client-id"));
69
- this.userPoolDomain = aws_cognito_1.UserPoolDomain.fromDomainName(service, "UserPoolDomain", importCognitoValue("domain-prefix"));
86
+ this.userPool = aws_cognito_1.UserPool.fromUserPoolId(service, "ALBUserPool", cognitoUserPoolIdParameter.import(service, this.props.basePlatformStackName));
87
+ this.userPoolClient = aws_cognito_1.UserPoolClient.fromUserPoolClientId(service, "UserPoolClient", cognitoUserPoolClientParameter.import(service, this.props.basePlatformStackName));
88
+ this.userPoolDomain = aws_cognito_1.UserPoolDomain.fromDomainName(service, "UserPoolDomain", cognitoDomainPrefixParameter.import(service, this.props.basePlatformStackName));
70
89
  }
71
90
  modifyServiceProps(props) {
72
91
  return {
@@ -106,5 +125,5 @@ class ApplicationLoadBalancerExtension extends ecs_service_extensions_1.ServiceE
106
125
  }
107
126
  exports.ApplicationLoadBalancerExtension = ApplicationLoadBalancerExtension;
108
127
  _a = JSII_RTTI_SYMBOL_1;
109
- ApplicationLoadBalancerExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationLoadBalancerExtension", version: "0.20.10" };
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXh0ZW5zaW9ucy9BcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQU1vRDtBQUNwRCw2Q0FBNEM7QUFDNUMseURBT2lDO0FBQ2pDLGlEQUFvRDtBQU1wRCx1RkFRZ0Q7QUFDaEQsdUdBQTJGO0FBRTNGLHNEQUFtRTtBQW9CbkUsTUFBTSxlQUFnQixTQUFRLDhDQUFxQjtJQUVqRCxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELHlCQUF5QixDQUN2QixLQUFpQztRQUVqQyxPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsV0FBVyxFQUFFO2dCQUNYLEdBQUcsS0FBSyxDQUFDLFdBQVc7Z0JBQ3BCLGVBQWUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVM7Z0JBQ3JDLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVE7Z0JBQ25DLGtCQUFrQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtnQkFDM0MsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUNyRCxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2FBQ25DO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUNEOztHQUVHO0FBQ0gsTUFBYSxnQ0FBaUMsU0FBUSx5Q0FBZ0I7SUFVcEUsWUFBWSxLQUE0QztRQUN0RCxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUEseUJBQVcsRUFBQyxJQUFJLENBQUMsS0FBSyxDQUFD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QUUsV0FBVyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDOztBQXRJSCw0RUF1SUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250YWluZXIsXG4gIENvbnRhaW5lck11dGF0aW5nSG9vayxcbiAgU2VydmljZSxcbiAgU2VydmljZUJ1aWxkLFxuICBTZXJ2aWNlRXh0ZW5zaW9uLFxufSBmcm9tIFwiQGF3cy1jZGstY29udGFpbmVycy9lY3Mtc2VydmljZS1leHRlbnNpb25zXCI7XG5pbXBvcnQgeyBBd3MsIER1cmF0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1xuICBJVXNlclBvb2wsXG4gIElVc2VyUG9vbENsaWVudCxcbiAgSVVzZXJQb29sRG9tYWluLFxuICBVc2VyUG9vbCxcbiAgVXNlclBvb2xDbGllbnQsXG4gIFVzZXJQb29sRG9tYWluLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNvZ25pdG9cIjtcbmltcG9ydCB7IFNlY3VyaXR5R3JvdXAgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHtcbiAgQ29udGFpbmVyRGVmaW5pdGlvbk9wdGlvbnMsXG4gIEVjMlNlcnZpY2UsXG4gIEZhcmdhdGVTZXJ2aWNlLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25MaXN0ZW5lcixcbiAgQXBwbGljYXRpb25Qcm90b2NvbCxcbiAgQXBwbGljYXRpb25UYXJnZXRHcm91cCxcbiAgSUFwcGxpY2F0aW9uTGlzdGVuZXIsXG4gIExpc3RlbmVyQWN0aW9uLFxuICBMaXN0ZW5lckNvbmRpdGlvbixcbiAgVW5hdXRoZW50aWNhdGVkQWN0aW9uLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjJcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZUNvZ25pdG9BY3Rpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjItYWN0aW9uc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGNyZWF0ZUltcG9ydGVyLCBpbXBvcnRWYWx1ZSB9IGZyb20gXCIuLi91dGlscy9JbXBvcnRWYWx1ZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uUHJvcHMge1xuICByZWFkb25seSBwbGF0Zm9ybVN0YWNrTmFtZTogc3RyaW5nO1xuICByZWFkb25seSB1c2VyUG9vbENsaWVudFNlY3JldDogc3RyaW5nO1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwSWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgY2xpZW50U2NvcGU6IHN0cmluZztcbiAgcmVhZG9ubHkgaGVhbHRDaGVja1BhdGg/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBhdGg/OiBzdHJpbmc7IC8vIHBhdGggdG8gcmVkaXJlY3QgdGhlIGNsaWVudCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uXG4gIHJlYWRvbmx5IGxpc3RlbmVyPzogSUFwcGxpY2F0aW9uTGlzdGVuZXI7XG59XG5cbmludGVyZmFjZSBPaWRjVmFyc0hvb2tQcm9wcyB7XG4gIHJlYWRvbmx5IGlzc3VlclVybDogc3RyaW5nO1xuICByZWFkb25seSBjbGllbnRJZDogc3RyaW5nO1xuICByZWFkb25seSBjbGllbnRTZWNyZXQ6IHN0cmluZztcbiAgcmVhZG9ubHkgY2xpZW50U2NvcGU6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVkaXJlY3RVcmk6IHN0cmluZztcbn1cblxuY2xhc3MgQWRkT2lkY1ZhcnNIb29rIGV4dGVuZHMgQ29udGFpbmVyTXV0YXRpbmdIb29rIHtcbiAgcmVhZG9ubHkgcHJvcHM6IE9pZGNWYXJzSG9va1Byb3BzO1xuICBjb25zdHJ1Y3Rvcihwcm9wczogT2lkY1ZhcnNIb29rUHJvcHMpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIG11dGF0ZUNvbnRhaW5lckRlZmluaXRpb24oXG4gICAgcHJvcHM6IENvbnRhaW5lckRlZmluaXRpb25PcHRpb25zLFxuICApOiBDb250YWluZXJEZWZpbml0aW9uT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgLi4ucHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICAgIE9JRENfSVNTVUVSX1VSTDogdGhpcy5wcm9wcy5pc3N1ZXJVcmwsXG4gICAgICAgIE9JRENfQ0xJRU5UX0lEOiB0aGlzLnByb3BzLmNsaWVudElkLFxuICAgICAgICBPSURDX0NMSUVOVF9TRUNSRVQ6IHRoaXMucHJvcHMuY2xpZW50U2VjcmV0LFxuICAgICAgICBPSURDX1BPU1RfTE9HT1VUX1JFRElSRUNUX1VSSTogdGhpcy5wcm9wcy5yZWRpcmVjdFVyaSxcbiAgICAgICAgT0lEQ19TQ09QRTogdGhpcy5wcm9wcy5jbGllbnRTY29wZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uVjJ9IGluc3RlYWRcbiAqL1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByaXZhdGUgbGlzdGVuZXIhOiBJQXBwbGljYXRpb25MaXN0ZW5lcjtcbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wcztcblxuICB1c2VyUG9vbCE6IElVc2VyUG9vbDtcbiAgdXNlclBvb2xDbGllbnQhOiBJVXNlclBvb2xDbGllbnQ7XG4gIHVzZXJQb29sRG9tYWluITogSVVzZXJQb29sRG9tYWluO1xuXG4gIHJlYWRvbmx5IGZxZG46IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wcykge1xuICAgIHN1cGVyKFwiYXBwbGljYXRpb24tbG9hZC1iYWxhbmNlclwiKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5mcWRuID0gaW1wb3J0VmFsdWUodGhpcy5wcm9wcy5wbGF0Zm9ybVN0YWNrTmFtZSwgXCJmcWRuXCIpO1xuICB9XG5cbiAgYWRkSG9va3MoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5wYXJlbnRTZXJ2aWNlLnNlcnZpY2VEZXNjcmlwdGlvbi5nZXQoXG4gICAgICBcInNlcnZpY2UtY29udGFpbmVyXCIsXG4gICAgKSBhcyBDb250YWluZXI7XG5cbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhY29udGFpbmVyLnRyYWZmaWNQb3J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQ2Fubm90IGFwcGx5IEFMQiBFeHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb250YWluZXIuYWRkQ29udGFpbmVyTXV0YXRpbmdIb29rKFxuICAgICAgbmV3IEFkZE9pZGNWYXJzSG9vayh7XG4gICAgICAgIGNsaWVudElkOiB0aGlzLnVzZXJQb29sQ2xpZW50LnVzZXJQb29sQ2xpZW50SWQsXG4gICAgICAgIGNsaWVudFNlY3JldDogdGhpcy5wcm9wcy51c2VyUG9vbENsaWVudFNlY3JldCxcbiAgICAgICAgY2xpZW50U2NvcGU6IHRoaXMucHJvcHMuY2xpZW50U2NvcGUsXG4gICAgICAgIGlzc3VlclVybDogYGh0dHBzOi8vY29nbml0by1pZHAuJHtBd3MuUkVHSU9OfS5hbWF6b25hd3MuY29tLyR7dGhpcy51c2VyUG9vbC51c2VyUG9vbElkfWAsXG4gICAgICAgIHJlZGlyZWN0VXJpOiBgaHR0cHM6Ly8ke3RoaXMuZnFkbn0ke3RoaXMucHJvcHMucGF0aCA/PyBcIlwifWAsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJlaG9vayhzZXJ2aWNlOiBTZXJ2aWNlLCBfc2NvcGU6IENvbnN0cnVjdCk6IHZvaWQge1xuICAgIHRoaXMucGFyZW50U2VydmljZSA9IHNlcnZpY2U7XG5cbiAgICBjb25zdCBpbXBvcnRDb2duaXRvVmFsdWUgPSBjcmVhdGVJbXBvcnRlcihcbiAgICAgIHRoaXMucHJvcHMucGxhdGZvcm1TdGFja05hbWUsXG4gICAgICBcImNvZ25pdG9cIixcbiAgICApO1xuXG4gICAgY29uc3QgYWxiTGlzdGVuZXJBcm4gPSBpbXBvcnRWYWx1ZShcbiAgICAgIHRoaXMucHJvcHMucGxhdGZvcm1TdGFja05hbWUsXG4gICAgICBcImFsYlwiLFxuICAgICAgXCJsaXN0ZW5lci1hcm5cIixcbiAgICApO1xuXG4gICAgaWYgKHRoaXMucHJvcHMubGlzdGVuZXIpIHtcbiAgICAgIHRoaXMubGlzdGVuZXIgPSB0aGlzLnByb3BzLmxpc3RlbmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxpc3RlbmVyID0gQXBwbGljYXRpb25MaXN0ZW5lci5mcm9tQXBwbGljYXRpb25MaXN0ZW5lckF0dHJpYnV0ZXMoXG4gICAgICAgIHNlcnZpY2UsXG4gICAgICAgIFwiQUxCTGlzdGVuZXJcIixcbiAgICAgICAge1xuICAgICAgICAgIGxpc3RlbmVyQXJuOiBhbGJMaXN0ZW5lckFybixcbiAgICAgICAgICBzZWN1cml0eUdyb3VwOiBTZWN1cml0eUdyb3VwLmZyb21Mb29rdXBCeUlkKFxuICAgICAgICAgICAgc2VydmljZSxcbiAgICAgICAgICAgIFwiQUxCU2VjdXJpdHlHcm91cFwiLFxuICAgICAgICAgICAgdGhpcy5wcm9wcy5zZWN1cml0eUdyb3VwSWQsXG4gICAgICAgICAgKSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy51c2VyUG9vbCA9IFVzZXJQb29sLmZyb21Vc2VyUG9vbElkKFxuICAgICAgc2VydmljZSxcbiAgICAgIFwiQUxCVXNlclBvb2xcIixcbiAgICAgIGltcG9ydENvZ25pdG9WYWx1ZShcInVzZXItcG9vbC1pZFwiKSxcbiAgICApO1xuXG4gICAgdGhpcy51c2VyUG9vbENsaWVudCA9IFVzZXJQb29sQ2xpZW50LmZyb21Vc2VyUG9vbENsaWVudElkKFxuICAgICAgc2VydmljZSxcbiAgICAgIFwiVXNlclBvb2xDbGllbnRcIixcbiAgICAgIGltcG9ydENvZ25pdG9WYWx1ZShcInVzZXItcG9vbC1jbGllbnQtaWRcIiksXG4gICAgKTtcblxuICAgIHRoaXMudXNlclBvb2xEb21haW4gPSBVc2VyUG9vbERvbWFpbi5mcm9tRG9tYWluTmFtZShcbiAgICAgIHNlcnZpY2UsXG4gICAgICBcIlVzZXJQb29sRG9tYWluXCIsXG4gICAgICBpbXBvcnRDb2duaXRvVmFsdWUoXCJkb21haW4tcHJlZml4XCIpLFxuICAgICk7XG4gIH1cblxuICBtb2RpZnlTZXJ2aWNlUHJvcHMocHJvcHM6IFNlcnZpY2VCdWlsZCk6IFNlcnZpY2VCdWlsZCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgaGVhbHRoQ2hlY2tHcmFjZVBlcmlvZDogRHVyYXRpb24ubWludXRlcygxKSxcbiAgICB9IHNhdGlzZmllcyBTZXJ2aWNlQnVpbGQ7XG4gIH1cblxuICBwdWJsaWMgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLnBhcmVudFNlcnZpY2Uuc2VydmljZURlc2NyaXB0aW9uLmdldChcbiAgICAgIFwic2VydmljZS1jb250YWluZXJcIixcbiAgICApIGFzIENvbnRhaW5lcjtcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhY29udGFpbmVyLnRyYWZmaWNQb3J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQ2Fubm90IGFwcGx5IEFMQiBFeHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB0YXJnZXRHcm91cCA9IG5ldyBBcHBsaWNhdGlvblRhcmdldEdyb3VwKFxuICAgICAgdGhpcy5wYXJlbnRTZXJ2aWNlLFxuICAgICAgYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfVRhcmdldEdyb3VwYCxcbiAgICAgIHtcbiAgICAgICAgdnBjOiB0aGlzLnBhcmVudFNlcnZpY2UudnBjLFxuICAgICAgICBwb3J0OiBjb250YWluZXIudHJhZmZpY1BvcnQsXG4gICAgICAgIHByb3RvY29sOiBBcHBsaWNhdGlvblByb3RvY29sLkhUVFAsXG4gICAgICAgIGRlcmVnaXN0cmF0aW9uRGVsYXk6IER1cmF0aW9uLnNlY29uZHMoMTApLFxuICAgICAgICB0YXJnZXRzOiBbc2VydmljZV0sXG4gICAgICAgIGhlYWx0aENoZWNrOiB7XG4gICAgICAgICAgcGF0aDogdGhpcy5wcm9wcy5oZWFsdENoZWNrUGF0aCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHRoaXMubGlzdGVuZXIuYWRkQWN0aW9uKGAke3RoaXMucGFyZW50U2VydmljZS5pZH1BY3Rpb25gLCB7XG4gICAgICBwcmlvcml0eTogNTUsXG4gICAgICBjb25kaXRpb25zOiBbTGlzdGVuZXJDb25kaXRpb24uaG9zdEhlYWRlcnMoW3RoaXMuZnFkbl0pXSxcbiAgICAgIGFjdGlvbjogbmV3IEF1dGhlbnRpY2F0ZUNvZ25pdG9BY3Rpb24oe1xuICAgICAgICB1c2VyUG9vbDogdGhpcy51c2VyUG9vbCxcbiAgICAgICAgdXNlclBvb2xDbGllbnQ6IHRoaXMudXNlclBvb2xDbGllbnQsXG4gICAgICAgIHVzZXJQb29sRG9tYWluOiB0aGlzLnVzZXJQb29sRG9tYWluLFxuICAgICAgICBuZXh0OiBMaXN0ZW5lckFjdGlvbi5mb3J3YXJkKFt0YXJnZXRHcm91cF0pLFxuICAgICAgICBvblVuYXV0aGVudGljYXRlZFJlcXVlc3Q6IFVuYXV0aGVudGljYXRlZEFjdGlvbi5BVVRIRU5USUNBVEUsXG4gICAgICB9KSxcbiAgICB9KTtcblxuICAgIHRoaXMucGFyZW50U2VydmljZS50YXJnZXRHcm91cCA9IHRhcmdldEdyb3VwO1xuICAgIHRoaXMucGFyZW50U2VydmljZS5hZGRVUkwoXCJwdWJsaWNcIiwgYGh0dHBzOi8vJHt0aGlzLmZxZG59YCk7XG4gIH1cbn1cbiJdfQ==
128
+ ApplicationLoadBalancerExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationLoadBalancerExtension", version: "0.21.0" };
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXh0ZW5zaW9ucy9BcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQU1vRDtBQUNwRCw2Q0FBNEM7QUFDNUMseURBT2lDO0FBQ2pDLGlEQUFvRDtBQU1wRCx1RkFRZ0Q7QUFDaEQsdUdBQTJGO0FBRTNGLDREQUF5RDtBQW9CekQsTUFBTSxlQUFnQixTQUFRLDhDQUFxQjtJQUVqRCxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELHlCQUF5QixDQUN2QixLQUFpQztRQUVqQyxPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsV0FBVyxFQUFFO2dCQUNYLEdBQUcsS0FBSyxDQUFDLFdBQVc7Z0JBQ3BCLGVBQWUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVM7Z0JBQ3JDLGNBQWMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVE7Z0JBQ25DLGtCQUFrQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtnQkFDM0MsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUNyRCxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2FBQ25DO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUNEOztHQUVHO0FBQ0gsTUFBYSxnQ0FBaUMsU0FBUSx5Q0FBZ0I7SUFTcEUsWUFBWSxLQUE0QztRQUN0RCxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMs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QztTQUNGLENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLFFBQVEsRUFBRTtZQUN4RCxRQUFRLEVBQUUsRUFBRTtZQUNaLFVBQVUsRUFBRSxDQUFDLDhDQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sRUFBRSxJQUFJLDhEQUF5QixDQUFDO2dCQUNwQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7Z0JBQ3ZCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztnQkFDbkMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxJQUFJLEVBQUUsMkNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDM0Msd0JBQXdCLEVBQUUsa0RBQXFCLENBQUMsWUFBWTthQUM3RCxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7O0FBOUpILDRFQStKQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnRhaW5lcixcbiAgQ29udGFpbmVyTXV0YXRpbmdIb29rLFxuICBTZXJ2aWNlLFxuICBTZXJ2aWNlQnVpbGQsXG4gIFNlcnZpY2VFeHRlbnNpb24sXG59IGZyb20gXCJAYXdzLWNkay1jb250YWluZXJzL2Vjcy1zZXJ2aWNlLWV4dGVuc2lvbnNcIjtcbmltcG9ydCB7IEF3cywgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIElVc2VyUG9vbCxcbiAgSVVzZXJQb29sQ2xpZW50LFxuICBJVXNlclBvb2xEb21haW4sXG4gIFVzZXJQb29sLFxuICBVc2VyUG9vbENsaWVudCxcbiAgVXNlclBvb2xEb21haW4sXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29nbml0b1wiO1xuaW1wb3J0IHsgU2VjdXJpdHlHcm91cCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQge1xuICBDb250YWluZXJEZWZpbml0aW9uT3B0aW9ucyxcbiAgRWMyU2VydmljZSxcbiAgRmFyZ2F0ZVNlcnZpY2UsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWNzXCI7XG5pbXBvcnQge1xuICBBcHBsaWNhdGlvbkxpc3RlbmVyLFxuICBBcHBsaWNhdGlvblByb3RvY29sLFxuICBBcHBsaWNhdGlvblRhcmdldEdyb3VwLFxuICBJQXBwbGljYXRpb25MaXN0ZW5lcixcbiAgTGlzdGVuZXJBY3Rpb24sXG4gIExpc3RlbmVyQ29uZGl0aW9uLFxuICBVbmF1dGhlbnRpY2F0ZWRBY3Rpb24sXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlQ29nbml0b0FjdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi1hY3Rpb25zXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgU3RhY2tQYXJhbWV0ZXIgfSBmcm9tIFwiLi4vdXRpbHMvU3RhY2tQYXJhbWV0ZXJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvblByb3BzIHtcbiAgcmVhZG9ubHkgYmFzZVBsYXRmb3JtU3RhY2tOYW1lPzogc3RyaW5nO1xuICByZWFkb25seSB1c2VyUG9vbENsaWVudFNlY3JldDogc3RyaW5nO1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwSWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgY2xpZW50U2NvcGU6IHN0cmluZztcbiAgcmVhZG9ubHkgaGVhbHRDaGVja1BhdGg/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBhdGg/OiBzdHJpbmc7IC8vIHBhdGggdG8gcmVkaXJlY3QgdGhlIGNsaWVudCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uXG4gIHJlYWRvbmx5IGxpc3RlbmVyPzogSUFwcGxpY2F0aW9uTGlzdGVuZXI7XG59XG5cbmludGVyZmFjZSBPaWRjVmFyc0hvb2tQcm9wcyB7XG4gIHJlYWRvbmx5IGlzc3VlclVybDogc3RyaW5nO1xuICByZWFkb25seSBjbGllbnRJZDogc3RyaW5nO1xuICByZWFkb25seSBjbGllbnRTZWNyZXQ6IHN0cmluZztcbiAgcmVhZG9ubHkgY2xpZW50U2NvcGU6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVkaXJlY3RVcmk6IHN0cmluZztcbn1cblxuY2xhc3MgQWRkT2lkY1ZhcnNIb29rIGV4dGVuZHMgQ29udGFpbmVyTXV0YXRpbmdIb29rIHtcbiAgcmVhZG9ubHkgcHJvcHM6IE9pZGNWYXJzSG9va1Byb3BzO1xuICBjb25zdHJ1Y3Rvcihwcm9wczogT2lkY1ZhcnNIb29rUHJvcHMpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIG11dGF0ZUNvbnRhaW5lckRlZmluaXRpb24oXG4gICAgcHJvcHM6IENvbnRhaW5lckRlZmluaXRpb25PcHRpb25zLFxuICApOiBDb250YWluZXJEZWZpbml0aW9uT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgLi4ucHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICAgIE9JRENfSVNTVUVSX1VSTDogdGhpcy5wcm9wcy5pc3N1ZXJVcmwsXG4gICAgICAgIE9JRENfQ0xJRU5UX0lEOiB0aGlzLnByb3BzLmNsaWVudElkLFxuICAgICAgICBPSURDX0NMSUVOVF9TRUNSRVQ6IHRoaXMucHJvcHMuY2xpZW50U2VjcmV0LFxuICAgICAgICBPSURDX1BPU1RfTE9HT1VUX1JFRElSRUNUX1VSSTogdGhpcy5wcm9wcy5yZWRpcmVjdFVyaSxcbiAgICAgICAgT0lEQ19TQ09QRTogdGhpcy5wcm9wcy5jbGllbnRTY29wZSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uVjJ9IGluc3RlYWRcbiAqL1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByaXZhdGUgbGlzdGVuZXIhOiBJQXBwbGljYXRpb25MaXN0ZW5lcjtcbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wcztcblxuICB1c2VyUG9vbCE6IElVc2VyUG9vbDtcbiAgdXNlclBvb2xDbGllbnQhOiBJVXNlclBvb2xDbGllbnQ7XG4gIHVzZXJQb29sRG9tYWluITogSVVzZXJQb29sRG9tYWluO1xuICBmcWRuITogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvblByb3BzKSB7XG4gICAgc3VwZXIoXCJhcHBsaWNhdGlvbi1sb2FkLWJhbGFuY2VyXCIpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIGFkZEhvb2tzKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMucGFyZW50U2VydmljZS5zZXJ2aWNlRGVzY3JpcHRpb24uZ2V0KFxuICAgICAgXCJzZXJ2aWNlLWNvbnRhaW5lclwiLFxuICAgICkgYXMgQ29udGFpbmVyO1xuXG4gICAgaWYgKCFjb250YWluZXIgfHwgIWNvbnRhaW5lci50cmFmZmljUG9ydCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhcHBseSBBTEIgRXh0ZW5zaW9uLCBubyBtYWluIGFwcCBjb250YWluZXIgZm91bmRcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29udGFpbmVyLmFkZENvbnRhaW5lck11dGF0aW5nSG9vayhcbiAgICAgIG5ldyBBZGRPaWRjVmFyc0hvb2soe1xuICAgICAgICBjbGllbnRJZDogdGhpcy51c2VyUG9vbENsaWVudC51c2VyUG9vbENsaWVudElkLFxuICAgICAgICBjbGllbnRTZWNyZXQ6IHRoaXMucHJvcHMudXNlclBvb2xDbGllbnRTZWNyZXQsXG4gICAgICAgIGNsaWVudFNjb3BlOiB0aGlzLnByb3BzLmNsaWVudFNjb3BlLFxuICAgICAgICBpc3N1ZXJVcmw6IGBodHRwczovL2NvZ25pdG8taWRwLiR7QXdzLlJFR0lPTn0uYW1hem9uYXdzLmNvbS8ke3RoaXMudXNlclBvb2wudXNlclBvb2xJZH1gLFxuICAgICAgICByZWRpcmVjdFVyaTogYGh0dHBzOi8vJHt0aGlzLmZxZG59JHt0aGlzLnByb3BzLnBhdGggPz8gXCJcIn1gLFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByZWhvb2soc2VydmljZTogU2VydmljZSwgX3Njb3BlOiBDb25zdHJ1Y3QpOiB2b2lkIHtcbiAgICB0aGlzLnBhcmVudFNlcnZpY2UgPSBzZXJ2aWNlO1xuXG4gICAgY29uc3QgZnFkblBhcmFtZXRlciA9IG5ldyBTdGFja1BhcmFtZXRlcih7XG4gICAgICBrZXk6IFwiZnFkblwiLFxuICAgICAgcHJlZml4OiBcImZxZG5cIixcbiAgICB9KTtcbiAgICBjb25zdCBhbGJMaXN0ZW5lckFyblBhcmFtZXRlciA9IG5ldyBTdGFja1BhcmFtZXRlcih7XG4gICAgICBwcmVmaXg6IFtcImFsYlwiXSxcbiAgICAgIGtleTogXCJsaXN0ZW5lci1hcm5cIixcbiAgICB9KTtcbiAgICBjb25zdCBjb2duaXRvVXNlclBvb2xJZFBhcmFtZXRlciA9IG5ldyBTdGFja1BhcmFtZXRlcih7XG4gICAgICBwcmVmaXg6IFwiY29nbml0b1wiLFxuICAgICAga2V5OiBcInVzZXItcG9vbC1pZFwiLFxuICAgIH0pO1xuICAgIGNvbnN0IGNvZ25pdG9Vc2VyUG9vbENsaWVudFBhcmFtZXRlciA9IG5ldyBTdGFja1BhcmFtZXRlcih7XG4gICAgICBwcmVmaXg6IFwiY29nbml0b1wiLFxuICAgICAga2V5OiBcInVzZXItcG9vbC1jbGllbnQtaWRcIixcbiAgICB9KTtcbiAgICBjb25zdCBjb2duaXRvRG9tYWluUHJlZml4UGFyYW1ldGVyID0gbmV3IFN0YWNrUGFyYW1ldGVyKHtcbiAgICAgIHByZWZpeDogXCJjb2duaXRvXCIsXG4gICAgICBrZXk6IFwiZG9tYWluLXByZWZpeFwiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5mcWRuID0gZnFkblBhcmFtZXRlci5pbXBvcnQoc2VydmljZSwgdGhpcy5wcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUpO1xuXG4gICAgY29uc3QgYWxiTGlzdGVuZXJBcm4gPSBhbGJMaXN0ZW5lckFyblBhcmFtZXRlci5pbXBvcnQoXG4gICAgICBzZXJ2aWNlLFxuICAgICAgdGhpcy5wcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUsXG4gICAgKTtcblxuICAgIGlmICh0aGlzLnByb3BzLmxpc3RlbmVyKSB7XG4gICAgICB0aGlzLmxpc3RlbmVyID0gdGhpcy5wcm9wcy5saXN0ZW5lcjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5saXN0ZW5lciA9IEFwcGxpY2F0aW9uTGlzdGVuZXIuZnJvbUFwcGxpY2F0aW9uTGlzdGVuZXJBdHRyaWJ1dGVzKFxuICAgICAgICBzZXJ2aWNlLFxuICAgICAgICBcIkFMQkxpc3RlbmVyXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBsaXN0ZW5lckFybjogYWxiTGlzdGVuZXJBcm4sXG4gICAgICAgICAgc2VjdXJpdHlHcm91cDogU2VjdXJpdHlHcm91cC5mcm9tTG9va3VwQnlJZChcbiAgICAgICAgICAgIHNlcnZpY2UsXG4gICAgICAgICAgICBcIkFMQlNlY3VyaXR5R3JvdXBcIixcbiAgICAgICAgICAgIHRoaXMucHJvcHMuc2VjdXJpdHlHcm91cElkLFxuICAgICAgICAgICksXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudXNlclBvb2wgPSBVc2VyUG9vbC5mcm9tVXNlclBvb2xJZChcbiAgICAgIHNlcnZpY2UsXG4gICAgICBcIkFMQlVzZXJQb29sXCIsXG4gICAgICBjb2duaXRvVXNlclBvb2xJZFBhcmFtZXRlci5pbXBvcnQoXG4gICAgICAgIHNlcnZpY2UsXG4gICAgICAgIHRoaXMucHJvcHMuYmFzZVBsYXRmb3JtU3RhY2tOYW1lLFxuICAgICAgKSxcbiAgICApO1xuXG4gICAgdGhpcy51c2VyUG9vbENsaWVudCA9IFVzZXJQb29sQ2xpZW50LmZyb21Vc2VyUG9vbENsaWVudElkKFxuICAgICAgc2VydmljZSxcbiAgICAgIFwiVXNlclBvb2xDbGllbnRcIixcbiAgICAgIGNvZ25pdG9Vc2VyUG9vbENsaWVudFBhcmFtZXRlci5pbXBvcnQoXG4gICAgICAgIHNlcnZpY2UsXG4gICAgICAgIHRoaXMucHJvcHMuYmFzZVBsYXRmb3JtU3RhY2tOYW1lLFxuICAgICAgKSxcbiAgICApO1xuXG4gICAgdGhpcy51c2VyUG9vbERvbWFpbiA9IFVzZXJQb29sRG9tYWluLmZyb21Eb21haW5OYW1lKFxuICAgICAgc2VydmljZSxcbiAgICAgIFwiVXNlclBvb2xEb21haW5cIixcbiAgICAgIGNvZ25pdG9Eb21haW5QcmVmaXhQYXJhbWV0ZXIuaW1wb3J0KFxuICAgICAgICBzZXJ2aWNlLFxuICAgICAgICB0aGlzLnByb3BzLmJhc2VQbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIG1vZGlmeVNlcnZpY2VQcm9wcyhwcm9wczogU2VydmljZUJ1aWxkKTogU2VydmljZUJ1aWxkIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBoZWFsdGhDaGVja0dyYWNlUGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDEpLFxuICAgIH0gc2F0aXNmaWVzIFNlcnZpY2VCdWlsZDtcbiAgfVxuXG4gIHB1YmxpYyB1c2VTZXJ2aWNlKHNlcnZpY2U6IEVjMlNlcnZpY2UgfCBGYXJnYXRlU2VydmljZSk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMucGFyZW50U2VydmljZS5zZXJ2aWNlRGVzY3JpcHRpb24uZ2V0KFxuICAgICAgXCJzZXJ2aWNlLWNvbnRhaW5lclwiLFxuICAgICkgYXMgQ29udGFpbmVyO1xuICAgIGlmICghY29udGFpbmVyIHx8ICFjb250YWluZXIudHJhZmZpY1BvcnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJDYW5ub3QgYXBwbHkgQUxCIEV4dGVuc2lvbiwgbm8gbWFpbiBhcHAgY29udGFpbmVyIGZvdW5kXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHRhcmdldEdyb3VwID0gbmV3IEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAoXG4gICAgICB0aGlzLnBhcmVudFNlcnZpY2UsXG4gICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9VGFyZ2V0R3JvdXBgLFxuICAgICAge1xuICAgICAgICB2cGM6IHRoaXMucGFyZW50U2VydmljZS52cGMsXG4gICAgICAgIHBvcnQ6IGNvbnRhaW5lci50cmFmZmljUG9ydCxcbiAgICAgICAgcHJvdG9jb2w6IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUCxcbiAgICAgICAgZGVyZWdpc3RyYXRpb25EZWxheTogRHVyYXRpb24uc2Vjb25kcygxMCksXG4gICAgICAgIHRhcmdldHM6IFtzZXJ2aWNlXSxcbiAgICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgICBwYXRoOiB0aGlzLnByb3BzLmhlYWx0Q2hlY2tQYXRoLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgdGhpcy5saXN0ZW5lci5hZGRBY3Rpb24oYCR7dGhpcy5wYXJlbnRTZXJ2aWNlLmlkfUFjdGlvbmAsIHtcbiAgICAgIHByaW9yaXR5OiA1NSxcbiAgICAgIGNvbmRpdGlvbnM6IFtMaXN0ZW5lckNvbmRpdGlvbi5ob3N0SGVhZGVycyhbdGhpcy5mcWRuXSldLFxuICAgICAgYWN0aW9uOiBuZXcgQXV0aGVudGljYXRlQ29nbml0b0FjdGlvbih7XG4gICAgICAgIHVzZXJQb29sOiB0aGlzLnVzZXJQb29sLFxuICAgICAgICB1c2VyUG9vbENsaWVudDogdGhpcy51c2VyUG9vbENsaWVudCxcbiAgICAgICAgdXNlclBvb2xEb21haW46IHRoaXMudXNlclBvb2xEb21haW4sXG4gICAgICAgIG5leHQ6IExpc3RlbmVyQWN0aW9uLmZvcndhcmQoW3RhcmdldEdyb3VwXSksXG4gICAgICAgIG9uVW5hdXRoZW50aWNhdGVkUmVxdWVzdDogVW5hdXRoZW50aWNhdGVkQWN0aW9uLkFVVEhFTlRJQ0FURSxcbiAgICAgIH0pLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wYXJlbnRTZXJ2aWNlLnRhcmdldEdyb3VwID0gdGFyZ2V0R3JvdXA7XG4gICAgdGhpcy5wYXJlbnRTZXJ2aWNlLmFkZFVSTChcInB1YmxpY1wiLCBgaHR0cHM6Ly8ke3RoaXMuZnFkbn1gKTtcbiAgfVxufVxuIl19
@@ -3,7 +3,7 @@ import { Ec2Service, FargateService } from "aws-cdk-lib/aws-ecs";
3
3
  import { Construct } from "constructs";
4
4
  import { ApplicationLoadBalancerV2 } from "../platform";
5
5
  export interface ApplicationLoadBalancerExtensionPropsV2 {
6
- readonly platformStackName?: string;
6
+ readonly basePlatformStackName?: string;
7
7
  readonly loadBalancer?: ApplicationLoadBalancerV2;
8
8
  }
9
9
  export declare class ApplicationLoadBalancerExtensionV2 extends ServiceExtension {
@@ -9,8 +9,8 @@ const platform_1 = require("../platform");
9
9
  class ApplicationLoadBalancerExtensionV2 extends ecs_service_extensions_1.ServiceExtension {
10
10
  constructor(props) {
11
11
  super("application-load-balancer");
12
- if (!props.platformStackName && !props.loadBalancer) {
13
- throw new Error("Either platformStackName or loadBalancer must be provided");
12
+ if (!props.basePlatformStackName && !props.loadBalancer) {
13
+ throw new Error("Either basePlatformStackName or loadBalancer must be provided");
14
14
  }
15
15
  this.props = props;
16
16
  }
@@ -30,7 +30,7 @@ class ApplicationLoadBalancerExtensionV2 extends ecs_service_extensions_1.Servic
30
30
  }
31
31
  const alb = this.props.loadBalancer ??
32
32
  platform_1.ApplicationLoadBalancerV2.fromBasePlatform(service, "ApplicationLoadBalancerV2", {
33
- basePlatform: this.props.platformStackName,
33
+ basePlatformStackName: this.props.basePlatformStackName,
34
34
  });
35
35
  alb.addTarget(service);
36
36
  this.parentService.addURL("public", `https://${alb.domainName}`);
@@ -38,5 +38,5 @@ class ApplicationLoadBalancerExtensionV2 extends ecs_service_extensions_1.Servic
38
38
  }
39
39
  exports.ApplicationLoadBalancerExtensionV2 = ApplicationLoadBalancerExtensionV2;
40
40
  _a = JSII_RTTI_SYMBOL_1;
41
- ApplicationLoadBalancerExtensionV2[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationLoadBalancerExtensionV2", version: "0.20.10" };
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25WMi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL0FwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uVjIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFLb0Q7QUFDcEQsNkNBQXVDO0FBR3ZDLDBDQUF3RDtBQU94RCxNQUFhLGtDQUFtQyxTQUFRLHlDQUFnQjtJQUd0RSxZQUFZLEtBQThDO1FBQ3hELEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FDYiwyREFBMkQsQ0FDNUQsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWdCLEVBQUUsTUFBaUI7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQW1CO1FBQ3BDLE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixzQkFBc0IsRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDckIsQ0FBQztJQUMzQixDQUFDO0lBRU0sVUFBVSxDQUFDLE9BQW9DO1FBQ3BELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUN6RCxtQkFBbUIsQ0FDUCxDQUFDO1FBQ2YsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUNiLHlEQUF5RCxDQUMxRCxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sR0FBRyxHQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtZQUN2QixvQ0FBeUIsQ0FBQyxnQkFBZ0IsQ0FDeEMsT0FBTyxFQUNQLDJCQUEyQixFQUMzQjtnQkFDRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBa0I7YUFDNUMsQ0FDRixDQUFDO1FBRUosR0FBRyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV2QixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsV0FBVyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDOztBQWpESCxnRkFrREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250YWluZXIsXG4gIFNlcnZpY2UsXG4gIFNlcnZpY2VCdWlsZCxcbiAgU2VydmljZUV4dGVuc2lvbixcbn0gZnJvbSBcIkBhd3MtY2RrLWNvbnRhaW5lcnMvZWNzLXNlcnZpY2UtZXh0ZW5zaW9uc1wiO1xuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEVjMlNlcnZpY2UsIEZhcmdhdGVTZXJ2aWNlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlclYyIH0gZnJvbSBcIi4uL3BsYXRmb3JtXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wc1YyIHtcbiAgcmVhZG9ubHkgcGxhdGZvcm1TdGFja05hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlcj86IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyVjI7XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvblYyIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uUHJvcHNWMjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wc1YyKSB7XG4gICAgc3VwZXIoXCJhcHBsaWNhdGlvbi1sb2FkLWJhbGFuY2VyXCIpO1xuXG4gICAgaWYgKCFwcm9wcy5wbGF0Zm9ybVN0YWNrTmFtZSAmJiAhcHJvcHMubG9hZEJhbGFuY2VyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiRWl0aGVyIHBsYXRmb3JtU3RhY2tOYW1lIG9yIGxvYWRCYWxhbmNlciBtdXN0IGJlIHByb3ZpZGVkXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIHByZWhvb2soc2VydmljZTogU2VydmljZSwgX3Njb3BlOiBDb25zdHJ1Y3QpOiB2b2lkIHtcbiAgICB0aGlzLnBhcmVudFNlcnZpY2UgPSBzZXJ2aWNlO1xuICB9XG5cbiAgbW9kaWZ5U2VydmljZVByb3BzKHByb3BzOiBTZXJ2aWNlQnVpbGQpOiBTZXJ2aWNlQnVpbGQge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGhlYWx0aENoZWNrR3JhY2VQZXJpb2Q6IER1cmF0aW9uLm1pbnV0ZXMoMSksXG4gICAgfSBzYXRpc2ZpZXMgU2VydmljZUJ1aWxkO1xuICB9XG5cbiAgcHVibGljIHVzZVNlcnZpY2Uoc2VydmljZTogRWMyU2VydmljZSB8IEZhcmdhdGVTZXJ2aWNlKTogdm9pZCB7XG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5wYXJlbnRTZXJ2aWNlLnNlcnZpY2VEZXNjcmlwdGlvbi5nZXQoXG4gICAgICBcInNlcnZpY2UtY29udGFpbmVyXCIsXG4gICAgKSBhcyBDb250YWluZXI7XG4gICAgaWYgKCFjb250YWluZXIgfHwgIWNvbnRhaW5lci50cmFmZmljUG9ydCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhcHBseSBBTEIgRXh0ZW5zaW9uLCBubyBtYWluIGFwcCBjb250YWluZXIgZm91bmRcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgYWxiID1cbiAgICAgIHRoaXMucHJvcHMubG9hZEJhbGFuY2VyID8/XG4gICAgICBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlclYyLmZyb21CYXNlUGxhdGZvcm0oXG4gICAgICAgIHNlcnZpY2UsXG4gICAgICAgIFwiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJWMlwiLFxuICAgICAgICB7XG4gICAgICAgICAgYmFzZVBsYXRmb3JtOiB0aGlzLnByb3BzLnBsYXRmb3JtU3RhY2tOYW1lISxcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICBhbGIuYWRkVGFyZ2V0KHNlcnZpY2UpO1xuXG4gICAgdGhpcy5wYXJlbnRTZXJ2aWNlLmFkZFVSTChcInB1YmxpY1wiLCBgaHR0cHM6Ly8ke2FsYi5kb21haW5OYW1lfWApO1xuICB9XG59XG4iXX0=
41
+ ApplicationLoadBalancerExtensionV2[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationLoadBalancerExtensionV2", version: "0.21.0" };
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25WMi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL0FwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uVjIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFLb0Q7QUFDcEQsNkNBQXVDO0FBR3ZDLDBDQUF3RDtBQU94RCxNQUFhLGtDQUFtQyxTQUFRLHlDQUFnQjtJQUd0RSxZQUFZLEtBQThDO1FBQ3hELEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDeEQsTUFBTSxJQUFJLEtBQUssQ0FDYiwrREFBK0QsQ0FDaEUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWdCLEVBQUUsTUFBaUI7UUFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQW1CO1FBQ3BDLE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixzQkFBc0IsRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDckIsQ0FBQztJQUMzQixDQUFDO0lBRU0sVUFBVSxDQUFDLE9BQW9DO1FBQ3BELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUN6RCxtQkFBbUIsQ0FDUCxDQUFDO1FBQ2YsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUNiLHlEQUF5RCxDQUMxRCxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sR0FBRyxHQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtZQUN2QixvQ0FBeUIsQ0FBQyxnQkFBZ0IsQ0FDeEMsT0FBTyxFQUNQLDJCQUEyQixFQUMzQjtnQkFDRSxxQkFBcUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQjthQUN4RCxDQUNGLENBQUM7UUFFSixHQUFHLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXZCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7O0FBakRILGdGQWtEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnRhaW5lcixcbiAgU2VydmljZSxcbiAgU2VydmljZUJ1aWxkLFxuICBTZXJ2aWNlRXh0ZW5zaW9uLFxufSBmcm9tIFwiQGF3cy1jZGstY29udGFpbmVycy9lY3Mtc2VydmljZS1leHRlbnNpb25zXCI7XG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgRWMyU2VydmljZSwgRmFyZ2F0ZVNlcnZpY2UgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyVjIgfSBmcm9tIFwiLi4vcGxhdGZvcm1cIjtcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvblByb3BzVjIge1xuICByZWFkb25seSBiYXNlUGxhdGZvcm1TdGFja05hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxvYWRCYWxhbmNlcj86IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyVjI7XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlckV4dGVuc2lvblYyIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyRXh0ZW5zaW9uUHJvcHNWMjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJFeHRlbnNpb25Qcm9wc1YyKSB7XG4gICAgc3VwZXIoXCJhcHBsaWNhdGlvbi1sb2FkLWJhbGFuY2VyXCIpO1xuXG4gICAgaWYgKCFwcm9wcy5iYXNlUGxhdGZvcm1TdGFja05hbWUgJiYgIXByb3BzLmxvYWRCYWxhbmNlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkVpdGhlciBiYXNlUGxhdGZvcm1TdGFja05hbWUgb3IgbG9hZEJhbGFuY2VyIG11c3QgYmUgcHJvdmlkZWRcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB9XG5cbiAgcHJlaG9vayhzZXJ2aWNlOiBTZXJ2aWNlLCBfc2NvcGU6IENvbnN0cnVjdCk6IHZvaWQge1xuICAgIHRoaXMucGFyZW50U2VydmljZSA9IHNlcnZpY2U7XG4gIH1cblxuICBtb2RpZnlTZXJ2aWNlUHJvcHMocHJvcHM6IFNlcnZpY2VCdWlsZCk6IFNlcnZpY2VCdWlsZCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgaGVhbHRoQ2hlY2tHcmFjZVBlcmlvZDogRHVyYXRpb24ubWludXRlcygxKSxcbiAgICB9IHNhdGlzZmllcyBTZXJ2aWNlQnVpbGQ7XG4gIH1cblxuICBwdWJsaWMgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLnBhcmVudFNlcnZpY2Uuc2VydmljZURlc2NyaXB0aW9uLmdldChcbiAgICAgIFwic2VydmljZS1jb250YWluZXJcIixcbiAgICApIGFzIENvbnRhaW5lcjtcbiAgICBpZiAoIWNvbnRhaW5lciB8fCAhY29udGFpbmVyLnRyYWZmaWNQb3J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQ2Fubm90IGFwcGx5IEFMQiBFeHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBhbGIgPVxuICAgICAgdGhpcy5wcm9wcy5sb2FkQmFsYW5jZXIgPz9cbiAgICAgIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyVjIuZnJvbUJhc2VQbGF0Zm9ybShcbiAgICAgICAgc2VydmljZSxcbiAgICAgICAgXCJBcHBsaWNhdGlvbkxvYWRCYWxhbmNlclYyXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBiYXNlUGxhdGZvcm1TdGFja05hbWU6IHRoaXMucHJvcHMuYmFzZVBsYXRmb3JtU3RhY2tOYW1lLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgIGFsYi5hZGRUYXJnZXQoc2VydmljZSk7XG5cbiAgICB0aGlzLnBhcmVudFNlcnZpY2UuYWRkVVJMKFwicHVibGljXCIsIGBodHRwczovLyR7YWxiLmRvbWFpbk5hbWV9YCk7XG4gIH1cbn1cbiJdfQ==
@@ -5,7 +5,7 @@ export interface CloudMapExtensionProps {
5
5
  /**
6
6
  * The name of the platform stack to import the namespace parameter details from.
7
7
  */
8
- readonly platformStackName: string;
8
+ readonly basePlatformStackName?: string;
9
9
  /**
10
10
  * Whether to export this service for cross-stack consumption.
11
11
  *
@@ -21,7 +21,7 @@ class CloudMapExtension extends ecs_service_extensions_1.ServiceExtension {
21
21
  throw new Error("You must add a container before configuring the CloudMap extension");
22
22
  }
23
23
  this.serviceName = (0, common_1.kebabCase)(this.parentService.id);
24
- const namespace = platform_1.PrivateDnsNamespace.fromBasePlatform(this.scope, this.serviceName + "PrivateDnsNamespace", this.props.platformStackName);
24
+ const namespace = platform_1.PrivateDnsNamespace.fromBasePlatform(this.scope, this.serviceName + "PrivateDnsNamespace", this.props.basePlatformStackName);
25
25
  return {
26
26
  ...props,
27
27
  cloudMapOptions: {
@@ -78,5 +78,5 @@ class CloudMapExtension extends ecs_service_extensions_1.ServiceExtension {
78
78
  }
79
79
  exports.CloudMapExtension = CloudMapExtension;
80
80
  _a = JSII_RTTI_SYMBOL_1;
81
- CloudMapExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.CloudMapExtension", version: "0.20.10" };
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRNYXBFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXh0ZW5zaW9ucy9DbG91ZE1hcEV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQU1vRDtBQUNwRCw2Q0FBdUM7QUFDdkMsaURBQTJDO0FBRTNDLDJFQUE2RTtBQUM3RSw4Q0FBZ0Q7QUFDaEQsMENBQWtEO0FBQ2xELDRDQUE0QztBQW9CNUMsTUFBYSxpQkFBa0IsU0FBUSx5Q0FBZ0I7SUFXckQsWUFBWSxLQUE2QjtRQUN2QyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBbUI7UUFDcEMsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0VBQW9FLENBQ3JFLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFBLGtCQUFTLEVBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRCxNQUFNLFNBQVMsR0FBRyw4QkFBbUIsQ0FBQyxnQkFBZ0IsQ0FDcEQsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixFQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUM3QixDQUFDO1FBRUYsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLGVBQWUsRUFBRTtnQkFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQ3RCLGFBQWEsRUFBRSxvQ0FBYSxDQUFDLEdBQUc7Z0JBQ2hDLE1BQU0sRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLGFBQWEsRUFBRSxhQUFhLENBQUMsYUFBYTtnQkFDMUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLFNBQVM7YUFDdkM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQztRQUM3QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FDekQsbUJBQW1CLENBQ1AsQ0FBQztRQUVmLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFFRCxNQUFNLEVBQ0osZUFBZSxFQUFFLEVBQ2YsU0FBUyxFQUFFLEVBQUUsYUFBYSxFQUFFLEdBQzdCLEdBQ0YsR0FBRyxPQUFPLENBQUM7UUFFWixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FDdkIsVUFBVSxFQUNWLFVBQVUsSUFBSSxDQUFDLFdBQVcsSUFBSSxhQUFhLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUN2RSxDQUFDO1FBRUYsc0NBQXNDO1FBRXRDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFlBQTBCLENBQUM7UUFDNUUsVUFBVSxDQUFDLFNBQVMsR0FBRztZQUNyQixHQUFHLFVBQVUsQ0FBQyxTQUFTO1lBQ3ZCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxHQUFHLEVBQUUsRUFBRTtvQkFDUCxJQUFJLEVBQUUsR0FBRztpQkFDVjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsRUFBRTtvQkFDUCxJQUFJLEVBQUUsS0FBSztpQkFDWjthQUNGO1NBQ0YsQ0FBQztRQUVGLG1DQUFtQztRQUNuQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksNEJBQWUsQ0FDakQsSUFBSSxDQUFDLEtBQUssRUFDVixHQUFHLElBQUksQ0FBQyxXQUFXLGlCQUFpQixFQUNwQztnQkFDRSxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLGFBQWEsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BELGFBQWE7YUFDZCxDQUNGLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILGdCQUFnQixDQUFDLE9BQWdCLEVBQUUsZUFBZ0M7UUFDakUsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FDOUMsbUJBQW1CLENBQ1AsQ0FBQztRQUNmLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FDYix1RUFBdUUsQ0FDeEUsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQ3RDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUM3QixjQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FDaEMsQ0FBQztJQUNKLENBQUM7O0FBbkhILDhDQW9IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbm5lY3RUb1Byb3BzLFxuICBDb250YWluZXIsXG4gIFNlcnZpY2UsXG4gIFNlcnZpY2VCdWlsZCxcbiAgU2VydmljZUV4dGVuc2lvbixcbn0gZnJvbSBcIkBhd3MtY2RrLWNvbnRhaW5lcnMvZWNzLXNlcnZpY2UtZXh0ZW5zaW9uc1wiO1xuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFBvcnQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgRWMyU2VydmljZSwgRmFyZ2F0ZVNlcnZpY2UgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHsgQ2ZuU2VydmljZSwgRG5zUmVjb3JkVHlwZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VydmljZWRpc2NvdmVyeVwiO1xuaW1wb3J0IHsgRXhwb3J0ZWRTZXJ2aWNlIH0gZnJvbSBcIi4uL2NvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFByaXZhdGVEbnNOYW1lc3BhY2UgfSBmcm9tIFwiLi4vcGxhdGZvcm1cIjtcbmltcG9ydCB7IGtlYmFiQ2FzZSB9IGZyb20gXCIuLi91dGlscy9jb21tb25cIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbG91ZE1hcEV4dGVuc2lvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBwbGF0Zm9ybSBzdGFjayB0byBpbXBvcnQgdGhlIG5hbWVzcGFjZSBwYXJhbWV0ZXIgZGV0YWlscyBmcm9tLlxuICAgKi9cbiAgcmVhZG9ubHkgcGxhdGZvcm1TdGFja05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0byBleHBvcnQgdGhpcyBzZXJ2aWNlIGZvciBjcm9zcy1zdGFjayBjb25zdW1wdGlvbi5cbiAgICpcbiAgICogV2hlbiBlbmFibGVkLCB0aGUgc2VydmljZSBtZXRhZGF0YSAoc2VjdXJpdHkgZ3JvdXAsIG5hbWVzcGFjZSwgcG9ydCkgaXNcbiAgICogZXhwb3J0ZWQgYXMgc3RhY2sgcGFyYW1ldGVycywgYWxsb3dpbmcgb3RoZXIgc3RhY2tzIHRvIGltcG9ydCBhbmQgY29ubmVjdFxuICAgKiB0byB0aGlzIHNlcnZpY2UgdXNpbmcgRXhwb3J0ZWRTZXJ2aWNlLmZyb21BdHRyaWJ1dGVzKCkuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBleHBvcnRTZXJ2aWNlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIENsb3VkTWFwRXh0ZW5zaW9uIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByb3BzOiBDbG91ZE1hcEV4dGVuc2lvblByb3BzO1xuXG4gIHNlcnZpY2VOYW1lITogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZXhwb3J0ZWQgc2VydmljZSBjb25zdHJ1Y3QsIGlmIGV4cG9ydFNlcnZpY2UgaXMgZW5hYmxlZC5cbiAgICogQXZhaWxhYmxlIGFmdGVyIHRoZSBzZXJ2aWNlIGhhcyBiZWVuIGNvbmZpZ3VyZWQuXG4gICAqL1xuICBleHBvcnRlZFNlcnZpY2VDb25zdHJ1Y3Q/OiBFeHBvcnRlZFNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IENsb3VkTWFwRXh0ZW5zaW9uUHJvcHMpIHtcbiAgICBzdXBlcihcImNsb3VkbWFwLWV4dGVuc2lvblwiKTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIG1vZGlmeVNlcnZpY2VQcm9wcyhwcm9wczogU2VydmljZUJ1aWxkKTogU2VydmljZUJ1aWxkIHtcbiAgICBjb25zdCBtYWluQ29udGFpbmVyID0gcHJvcHMudGFza0RlZmluaXRpb24uZmluZENvbnRhaW5lcihcImFwcFwiKTtcblxuICAgIGlmICghbWFpbkNvbnRhaW5lcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIllvdSBtdXN0IGFkZCBhIGNvbnRhaW5lciBiZWZvcmUgY29uZmlndXJpbmcgdGhlIENsb3VkTWFwIGV4dGVuc2lvblwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLnNlcnZpY2VOYW1lID0ga2ViYWJDYXNlKHRoaXMucGFyZW50U2VydmljZS5pZCk7XG5cbiAgICBjb25zdCBuYW1lc3BhY2UgPSBQcml2YXRlRG5zTmFtZXNwYWNlLmZyb21CYXNlUGxhdGZvcm0oXG4gICAgICB0aGlzLnNjb3BlLFxuICAgICAgdGhpcy5zZXJ2aWNlTmFtZSArIFwiUHJpdmF0ZURuc05hbWVzcGFjZVwiLFxuICAgICAgdGhpcy5wcm9wcy5wbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY2xvdWRNYXBPcHRpb25zOiB7XG4gICAgICAgIG5hbWU6IHRoaXMuc2VydmljZU5hbWUsXG4gICAgICAgIGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGUuU1JWLFxuICAgICAgICBkbnNUdGw6IER1cmF0aW9uLnNlY29uZHMoNjApLFxuICAgICAgICBjb250YWluZXJQb3J0OiBtYWluQ29udGFpbmVyLmNvbnRhaW5lclBvcnQsXG4gICAgICAgIGNsb3VkTWFwTmFtZXNwYWNlOiBuYW1lc3BhY2UubmFtZXNwYWNlLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLnBhcmVudFNlcnZpY2Uuc2VydmljZURlc2NyaXB0aW9uLmdldChcbiAgICAgIFwic2VydmljZS1jb250YWluZXJcIixcbiAgICApIGFzIENvbnRhaW5lcjtcblxuICAgIGlmICghc2VydmljZS5jbG91ZE1hcFNlcnZpY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkV4cGVjdGVkIHRoZSBjbG91ZCBtYXAgc2V0dGluZ3MgdG8gYmUgYXZhaWxhYmxlXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHtcbiAgICAgIGNsb3VkTWFwU2VydmljZToge1xuICAgICAgICBuYW1lc3BhY2U6IHsgbmFtZXNwYWNlTmFtZSB9LFxuICAgICAgfSxcbiAgICB9ID0gc2VydmljZTtcblxuICAgIHRoaXMucGFyZW50U2VydmljZS5hZGRVUkwoXG4gICAgICBcImludGVybmFsXCIsXG4gICAgICBgaHR0cDovLyR7dGhpcy5zZXJ2aWNlTmFtZX0uJHtuYW1lc3BhY2VOYW1lfToke2NvbnRhaW5lci50cmFmZmljUG9ydH1gLFxuICAgICk7XG5cbiAgICAvLyBhZGQgaGFjayB0byBzdXBwb3J0IFNSViArIEEgcmVjb3Jkc1xuXG4gICAgY29uc3QgY2ZuU2VydmljZSA9IHNlcnZpY2UuY2xvdWRNYXBTZXJ2aWNlPy5ub2RlLmRlZmF1bHRDaGlsZCBhcyBDZm5TZXJ2aWNlO1xuICAgIGNmblNlcnZpY2UuZG5zQ29uZmlnID0ge1xuICAgICAgLi4uY2ZuU2VydmljZS5kbnNDb25maWcsXG4gICAgICBkbnNSZWNvcmRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0dGw6IDYwLFxuICAgICAgICAgIHR5cGU6IFwiQVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHRsOiA2MCxcbiAgICAgICAgICB0eXBlOiBcIlNSVlwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgLy8gRXhwb3J0IHRoZSBzZXJ2aWNlIGlmIGNvbmZpZ3VyZWRcbiAgICBpZiAodGhpcy5wcm9wcy5leHBvcnRTZXJ2aWNlKSB7XG4gICAgICB0aGlzLmV4cG9ydGVkU2VydmljZUNvbnN0cnVjdCA9IG5ldyBFeHBvcnRlZFNlcnZpY2UoXG4gICAgICAgIHRoaXMuc2NvcGUsXG4gICAgICAgIGAke3RoaXMuc2VydmljZU5hbWV9RXhwb3J0ZWRTZXJ2aWNlYCxcbiAgICAgICAge1xuICAgICAgICAgIHNlcnZpY2VOYW1lOiB0aGlzLnNlcnZpY2VOYW1lLFxuICAgICAgICAgIHNlY3VyaXR5R3JvdXA6IHNlcnZpY2UuY29ubmVjdGlvbnMuc2VjdXJpdHlHcm91cHNbMF0sXG4gICAgICAgICAgbmFtZXNwYWNlTmFtZSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkanVzdCB0aGUgc2VjdXJpdHkgZ3JvdXAgb2YgdGhlIGdpdmVuIHNlcnZpY2UgdG8gYWxsb3cgdHJhZmZpYyBmcm9tIHRoaXMgc2VydmljZS5cbiAgICpcbiAgICovXG4gIGNvbm5lY3RUb1NlcnZpY2Uoc2VydmljZTogU2VydmljZSwgX2Nvbm5lY3RUb1Byb3BzPzogQ29ubmVjdFRvUHJvcHMpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSBzZXJ2aWNlLnNlcnZpY2VEZXNjcmlwdGlvbi5nZXQoXG4gICAgICBcInNlcnZpY2UtY29udGFpbmVyXCIsXG4gICAgKSBhcyBDb250YWluZXI7XG4gICAgaWYgKCFjb250YWluZXIgfHwgIWNvbnRhaW5lci50cmFmZmljUG9ydCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhcHBseSBleHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZCBpbiB0YXJnZXQgc2VydmljZVwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBzZXJ2aWNlLmVjc1NlcnZpY2UuY29ubmVjdGlvbnMuYWxsb3dGcm9tKFxuICAgICAgdGhpcy5wYXJlbnRTZXJ2aWNlLmVjc1NlcnZpY2UsXG4gICAgICBQb3J0LnRjcChjb250YWluZXIudHJhZmZpY1BvcnQpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
81
+ CloudMapExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.CloudMapExtension", version: "0.21.0" };
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xvdWRNYXBFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXh0ZW5zaW9ucy9DbG91ZE1hcEV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQU1vRDtBQUNwRCw2Q0FBdUM7QUFDdkMsaURBQTJDO0FBRTNDLDJFQUE2RTtBQUM3RSw4Q0FBZ0Q7QUFDaEQsMENBQWtEO0FBQ2xELDRDQUE0QztBQW9CNUMsTUFBYSxpQkFBa0IsU0FBUSx5Q0FBZ0I7SUFXckQsWUFBWSxLQUE2QjtRQUN2QyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUU1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBbUI7UUFDcEMsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0VBQW9FLENBQ3JFLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFBLGtCQUFTLEVBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRCxNQUFNLFNBQVMsR0FBRyw4QkFBbUIsQ0FBQyxnQkFBZ0IsQ0FDcEQsSUFBSSxDQUFDLEtBQUssRUFDVixJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixFQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUNqQyxDQUFDO1FBRUYsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLGVBQWUsRUFBRTtnQkFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQ3RCLGFBQWEsRUFBRSxvQ0FBYSxDQUFDLEdBQUc7Z0JBQ2hDLE1BQU0sRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLGFBQWEsRUFBRSxhQUFhLENBQUMsYUFBYTtnQkFDMUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLFNBQVM7YUFDdkM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQztRQUM3QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FDekQsbUJBQW1CLENBQ1AsQ0FBQztRQUVmLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFFRCxNQUFNLEVBQ0osZUFBZSxFQUFFLEVBQ2YsU0FBUyxFQUFFLEVBQUUsYUFBYSxFQUFFLEdBQzdCLEdBQ0YsR0FBRyxPQUFPLENBQUM7UUFFWixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FDdkIsVUFBVSxFQUNWLFVBQVUsSUFBSSxDQUFDLFdBQVcsSUFBSSxhQUFhLElBQUksU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUN2RSxDQUFDO1FBRUYsc0NBQXNDO1FBRXRDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLFlBQTBCLENBQUM7UUFDNUUsVUFBVSxDQUFDLFNBQVMsR0FBRztZQUNyQixHQUFHLFVBQVUsQ0FBQyxTQUFTO1lBQ3ZCLFVBQVUsRUFBRTtnQkFDVjtvQkFDRSxHQUFHLEVBQUUsRUFBRTtvQkFDUCxJQUFJLEVBQUUsR0FBRztpQkFDVjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsRUFBRTtvQkFDUCxJQUFJLEVBQUUsS0FBSztpQkFDWjthQUNGO1NBQ0YsQ0FBQztRQUVGLG1DQUFtQztRQUNuQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksNEJBQWUsQ0FDakQsSUFBSSxDQUFDLEtBQUssRUFDVixHQUFHLElBQUksQ0FBQyxXQUFXLGlCQUFpQixFQUNwQztnQkFDRSxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLGFBQWEsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BELGFBQWE7YUFDZCxDQUNGLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILGdCQUFnQixDQUFDLE9BQWdCLEVBQUUsZUFBZ0M7UUFDakUsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FDOUMsbUJBQW1CLENBQ1AsQ0FBQztRQUNmLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FDYix1RUFBdUUsQ0FDeEUsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQ3RDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUM3QixjQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FDaEMsQ0FBQztJQUNKLENBQUM7O0FBbkhILDhDQW9IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbm5lY3RUb1Byb3BzLFxuICBDb250YWluZXIsXG4gIFNlcnZpY2UsXG4gIFNlcnZpY2VCdWlsZCxcbiAgU2VydmljZUV4dGVuc2lvbixcbn0gZnJvbSBcIkBhd3MtY2RrLWNvbnRhaW5lcnMvZWNzLXNlcnZpY2UtZXh0ZW5zaW9uc1wiO1xuaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFBvcnQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgRWMyU2VydmljZSwgRmFyZ2F0ZVNlcnZpY2UgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHsgQ2ZuU2VydmljZSwgRG5zUmVjb3JkVHlwZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VydmljZWRpc2NvdmVyeVwiO1xuaW1wb3J0IHsgRXhwb3J0ZWRTZXJ2aWNlIH0gZnJvbSBcIi4uL2NvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFByaXZhdGVEbnNOYW1lc3BhY2UgfSBmcm9tIFwiLi4vcGxhdGZvcm1cIjtcbmltcG9ydCB7IGtlYmFiQ2FzZSB9IGZyb20gXCIuLi91dGlscy9jb21tb25cIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbG91ZE1hcEV4dGVuc2lvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBwbGF0Zm9ybSBzdGFjayB0byBpbXBvcnQgdGhlIG5hbWVzcGFjZSBwYXJhbWV0ZXIgZGV0YWlscyBmcm9tLlxuICAgKi9cbiAgcmVhZG9ubHkgYmFzZVBsYXRmb3JtU3RhY2tOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGV4cG9ydCB0aGlzIHNlcnZpY2UgZm9yIGNyb3NzLXN0YWNrIGNvbnN1bXB0aW9uLlxuICAgKlxuICAgKiBXaGVuIGVuYWJsZWQsIHRoZSBzZXJ2aWNlIG1ldGFkYXRhIChzZWN1cml0eSBncm91cCwgbmFtZXNwYWNlLCBwb3J0KSBpc1xuICAgKiBleHBvcnRlZCBhcyBzdGFjayBwYXJhbWV0ZXJzLCBhbGxvd2luZyBvdGhlciBzdGFja3MgdG8gaW1wb3J0IGFuZCBjb25uZWN0XG4gICAqIHRvIHRoaXMgc2VydmljZSB1c2luZyBFeHBvcnRlZFNlcnZpY2UuZnJvbUF0dHJpYnV0ZXMoKS5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGV4cG9ydFNlcnZpY2U/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY2xhc3MgQ2xvdWRNYXBFeHRlbnNpb24gZXh0ZW5kcyBTZXJ2aWNlRXh0ZW5zaW9uIHtcbiAgcHJvcHM6IENsb3VkTWFwRXh0ZW5zaW9uUHJvcHM7XG5cbiAgc2VydmljZU5hbWUhOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBleHBvcnRlZCBzZXJ2aWNlIGNvbnN0cnVjdCwgaWYgZXhwb3J0U2VydmljZSBpcyBlbmFibGVkLlxuICAgKiBBdmFpbGFibGUgYWZ0ZXIgdGhlIHNlcnZpY2UgaGFzIGJlZW4gY29uZmlndXJlZC5cbiAgICovXG4gIGV4cG9ydGVkU2VydmljZUNvbnN0cnVjdD86IEV4cG9ydGVkU2VydmljZTtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogQ2xvdWRNYXBFeHRlbnNpb25Qcm9wcykge1xuICAgIHN1cGVyKFwiY2xvdWRtYXAtZXh0ZW5zaW9uXCIpO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB9XG5cbiAgbW9kaWZ5U2VydmljZVByb3BzKHByb3BzOiBTZXJ2aWNlQnVpbGQpOiBTZXJ2aWNlQnVpbGQge1xuICAgIGNvbnN0IG1haW5Db250YWluZXIgPSBwcm9wcy50YXNrRGVmaW5pdGlvbi5maW5kQ29udGFpbmVyKFwiYXBwXCIpO1xuXG4gICAgaWYgKCFtYWluQ29udGFpbmVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiWW91IG11c3QgYWRkIGEgY29udGFpbmVyIGJlZm9yZSBjb25maWd1cmluZyB0aGUgQ2xvdWRNYXAgZXh0ZW5zaW9uXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuc2VydmljZU5hbWUgPSBrZWJhYkNhc2UodGhpcy5wYXJlbnRTZXJ2aWNlLmlkKTtcblxuICAgIGNvbnN0IG5hbWVzcGFjZSA9IFByaXZhdGVEbnNOYW1lc3BhY2UuZnJvbUJhc2VQbGF0Zm9ybShcbiAgICAgIHRoaXMuc2NvcGUsXG4gICAgICB0aGlzLnNlcnZpY2VOYW1lICsgXCJQcml2YXRlRG5zTmFtZXNwYWNlXCIsXG4gICAgICB0aGlzLnByb3BzLmJhc2VQbGF0Zm9ybVN0YWNrTmFtZSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY2xvdWRNYXBPcHRpb25zOiB7XG4gICAgICAgIG5hbWU6IHRoaXMuc2VydmljZU5hbWUsXG4gICAgICAgIGRuc1JlY29yZFR5cGU6IERuc1JlY29yZFR5cGUuU1JWLFxuICAgICAgICBkbnNUdGw6IER1cmF0aW9uLnNlY29uZHMoNjApLFxuICAgICAgICBjb250YWluZXJQb3J0OiBtYWluQ29udGFpbmVyLmNvbnRhaW5lclBvcnQsXG4gICAgICAgIGNsb3VkTWFwTmFtZXNwYWNlOiBuYW1lc3BhY2UubmFtZXNwYWNlLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLnBhcmVudFNlcnZpY2Uuc2VydmljZURlc2NyaXB0aW9uLmdldChcbiAgICAgIFwic2VydmljZS1jb250YWluZXJcIixcbiAgICApIGFzIENvbnRhaW5lcjtcblxuICAgIGlmICghc2VydmljZS5jbG91ZE1hcFNlcnZpY2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkV4cGVjdGVkIHRoZSBjbG91ZCBtYXAgc2V0dGluZ3MgdG8gYmUgYXZhaWxhYmxlXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHtcbiAgICAgIGNsb3VkTWFwU2VydmljZToge1xuICAgICAgICBuYW1lc3BhY2U6IHsgbmFtZXNwYWNlTmFtZSB9LFxuICAgICAgfSxcbiAgICB9ID0gc2VydmljZTtcblxuICAgIHRoaXMucGFyZW50U2VydmljZS5hZGRVUkwoXG4gICAgICBcImludGVybmFsXCIsXG4gICAgICBgaHR0cDovLyR7dGhpcy5zZXJ2aWNlTmFtZX0uJHtuYW1lc3BhY2VOYW1lfToke2NvbnRhaW5lci50cmFmZmljUG9ydH1gLFxuICAgICk7XG5cbiAgICAvLyBhZGQgaGFjayB0byBzdXBwb3J0IFNSViArIEEgcmVjb3Jkc1xuXG4gICAgY29uc3QgY2ZuU2VydmljZSA9IHNlcnZpY2UuY2xvdWRNYXBTZXJ2aWNlPy5ub2RlLmRlZmF1bHRDaGlsZCBhcyBDZm5TZXJ2aWNlO1xuICAgIGNmblNlcnZpY2UuZG5zQ29uZmlnID0ge1xuICAgICAgLi4uY2ZuU2VydmljZS5kbnNDb25maWcsXG4gICAgICBkbnNSZWNvcmRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0dGw6IDYwLFxuICAgICAgICAgIHR5cGU6IFwiQVwiLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHRsOiA2MCxcbiAgICAgICAgICB0eXBlOiBcIlNSVlwiLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgLy8gRXhwb3J0IHRoZSBzZXJ2aWNlIGlmIGNvbmZpZ3VyZWRcbiAgICBpZiAodGhpcy5wcm9wcy5leHBvcnRTZXJ2aWNlKSB7XG4gICAgICB0aGlzLmV4cG9ydGVkU2VydmljZUNvbnN0cnVjdCA9IG5ldyBFeHBvcnRlZFNlcnZpY2UoXG4gICAgICAgIHRoaXMuc2NvcGUsXG4gICAgICAgIGAke3RoaXMuc2VydmljZU5hbWV9RXhwb3J0ZWRTZXJ2aWNlYCxcbiAgICAgICAge1xuICAgICAgICAgIHNlcnZpY2VOYW1lOiB0aGlzLnNlcnZpY2VOYW1lLFxuICAgICAgICAgIHNlY3VyaXR5R3JvdXA6IHNlcnZpY2UuY29ubmVjdGlvbnMuc2VjdXJpdHlHcm91cHNbMF0sXG4gICAgICAgICAgbmFtZXNwYWNlTmFtZSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkanVzdCB0aGUgc2VjdXJpdHkgZ3JvdXAgb2YgdGhlIGdpdmVuIHNlcnZpY2UgdG8gYWxsb3cgdHJhZmZpYyBmcm9tIHRoaXMgc2VydmljZS5cbiAgICpcbiAgICovXG4gIGNvbm5lY3RUb1NlcnZpY2Uoc2VydmljZTogU2VydmljZSwgX2Nvbm5lY3RUb1Byb3BzPzogQ29ubmVjdFRvUHJvcHMpOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSBzZXJ2aWNlLnNlcnZpY2VEZXNjcmlwdGlvbi5nZXQoXG4gICAgICBcInNlcnZpY2UtY29udGFpbmVyXCIsXG4gICAgKSBhcyBDb250YWluZXI7XG4gICAgaWYgKCFjb250YWluZXIgfHwgIWNvbnRhaW5lci50cmFmZmljUG9ydCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBhcHBseSBleHRlbnNpb24sIG5vIG1haW4gYXBwIGNvbnRhaW5lciBmb3VuZCBpbiB0YXJnZXQgc2VydmljZVwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBzZXJ2aWNlLmVjc1NlcnZpY2UuY29ubmVjdGlvbnMuYWxsb3dGcm9tKFxuICAgICAgdGhpcy5wYXJlbnRTZXJ2aWNlLmVjc1NlcnZpY2UsXG4gICAgICBQb3J0LnRjcChjb250YWluZXIudHJhZmZpY1BvcnQpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -28,5 +28,5 @@ class DeactivatableServiceExtension extends ecs_service_extensions_1.ServiceExte
28
28
  }
29
29
  exports.DeactivatableServiceExtension = DeactivatableServiceExtension;
30
30
  _a = JSII_RTTI_SYMBOL_1;
31
- DeactivatableServiceExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.DeactivatableServiceExtension", version: "0.20.10" };
31
+ DeactivatableServiceExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.DeactivatableServiceExtension", version: "0.21.0" };
32
32
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVhY3RpdmF0YWJsZVNlcnZpY2VFeHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXh0ZW5zaW9ucy9EZWFjdGl2YXRhYmxlU2VydmljZUV4dGVuc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHVGQUdvRDtBQUNwRCw2Q0FBMEM7QUFDMUMsd0VBQXVFO0FBRXZFOzs7O0dBSUc7QUFDSCxNQUFhLDZCQUE4QixTQUFRLHlDQUFnQjtJQUNqRTtRQUNFLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFtQjtRQUNwQyxJQUFJLElBQUEsNkNBQXNCLEVBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2xELHlCQUFXLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQ3hDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLDRCQUE0QixDQUNyRCxDQUFDO1lBQ0YsT0FBTztnQkFDTCxHQUFHLEtBQUs7Z0JBQ1IsWUFBWSxFQUFFLENBQUM7YUFDaEIsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O0FBaEJILHNFQWlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFNlcnZpY2VCdWlsZCxcbiAgU2VydmljZUV4dGVuc2lvbixcbn0gZnJvbSBcIkBhd3MtY2RrLWNvbnRhaW5lcnMvZWNzLXNlcnZpY2UtZXh0ZW5zaW9uc1wiO1xuaW1wb3J0IHsgQW5ub3RhdGlvbnMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IGlzRGVhY3RpdmF0ZWRDb25zdHJ1Y3QgfSBmcm9tIFwiLi4vdXRpbHMvZGVhY3RpdmF0ZWRDb25zdHJ1Y3RcIjtcblxuLyoqXG4gKiBFeHRlbnNpb24gdGhhdCBhbGxvd3MgdGhlIHNlcnZpY2UgdG8gYmUgZGVhY3RpdmF0ZWQsIGlmIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBjb250YWluc1xuICogaXRzIElELiBEZWFjdGl2YXRpb24gaXMgaW1wbGVtZW50ZWQgYnkgc2V0dGluZyB0aGUgZGVzaXJlZCBjb3VudCB0byB6ZXJvLCBpLmUuIHRoZVxuICogY29uc3RydWN0IGlzIHN0aWxsIHByZXNlbnQgaW4gdGhlIHN0YWNrLlxuICovXG5leHBvcnQgY2xhc3MgRGVhY3RpdmF0YWJsZVNlcnZpY2VFeHRlbnNpb24gZXh0ZW5kcyBTZXJ2aWNlRXh0ZW5zaW9uIHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoXCJkZWFjdGl2YXRhYmxlLXNlcnZpY2VcIik7XG4gIH1cblxuICBtb2RpZnlTZXJ2aWNlUHJvcHMocHJvcHM6IFNlcnZpY2VCdWlsZCk6IFNlcnZpY2VCdWlsZCB7XG4gICAgaWYgKGlzRGVhY3RpdmF0ZWRDb25zdHJ1Y3QodGhpcy5wYXJlbnRTZXJ2aWNlLmlkKSkge1xuICAgICAgQW5ub3RhdGlvbnMub2YodGhpcy5wYXJlbnRTZXJ2aWNlKS5hZGRJbmZvKFxuICAgICAgICBgJHt0aGlzLnBhcmVudFNlcnZpY2UuaWR9IGlzIHNldCB0byBiZSBkZWFjdGl2YXRlZC5gLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICBkZXNpcmVkQ291bnQ6IDAsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gcHJvcHM7XG4gIH1cbn1cbiJdfQ==
@@ -83,5 +83,5 @@ class DeploymentConfigExtension extends ecs_service_extensions_1.ServiceExtensio
83
83
  }
84
84
  exports.DeploymentConfigExtension = DeploymentConfigExtension;
85
85
  _a = JSII_RTTI_SYMBOL_1;
86
- DeploymentConfigExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.DeploymentConfigExtension", version: "0.20.10" };
86
+ DeploymentConfigExtension[_a] = { fqn: "@btc-embedded/cdk-extensions.DeploymentConfigExtension", version: "0.21.0" };
87
87
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVwbG95bWVudENvbmZpZ0V4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leHRlbnNpb25zL0RlcGxveW1lbnRDb25maWdFeHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx1RkFHb0Q7QUFDcEQsNkNBQTBDO0FBNkUxQzs7Ozs7Ozs7R0FRRztBQUNILE1BQWEseUJBQTBCLFNBQVEseUNBQWdCO0lBRzdELFlBQVksUUFBd0MsRUFBRTtRQUNwRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCLENBQUMsS0FBbUI7UUFDcEMsOENBQThDO1FBQzlDLE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLElBQUk7Z0JBQ2hELGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCO2FBQ2hELENBQUM7WUFDRixHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLElBQUk7Z0JBQ2hELGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCO2FBQ2hELENBQUM7U0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQztRQUM3QyxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQTBCLENBQUM7UUFFM0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztRQUN0RSxDQUFDO1FBRUQsaURBQWlEO1FBQ2pELE1BQU0sb0JBQW9CLEdBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEtBQUssU0FBUztZQUMzQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0I7WUFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUVYLElBQUksb0JBQW9CLEVBQUUsQ0FBQztZQUN6QixNQUFNLFFBQVEsR0FDWixJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixLQUFLLFNBQVM7Z0JBQzdDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQjtnQkFDbkMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUVYLFVBQVUsQ0FBQyx1QkFBdUIsR0FBRztnQkFDbkMsR0FBRyxVQUFVLENBQUMsdUJBQXVCO2dCQUNyQyx3QkFBd0IsRUFBRTtvQkFDeEIsTUFBTSxFQUFFLElBQUk7b0JBQ1osUUFBUTtpQkFDVDthQUNGLENBQUM7WUFFRix5QkFBVyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQzdCLHFEQUFxRCxRQUFRLEdBQUcsQ0FDakUsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBQztZQUNsRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixJQUFJLENBQUMsQ0FBQztZQUV0RCw4Q0FBOEM7WUFDOUMsVUFBVSxDQUFDLHdCQUF3QixHQUFHO2dCQUNwQztvQkFDRSxnQkFBZ0IsRUFBRSxjQUFjO29CQUNoQyxNQUFNO29CQUNOLElBQUk7aUJBQ0w7YUFDRixDQUFDO1lBRUYscUVBQXFFO1lBQ3JFLFVBQVUsQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1lBRWxDLHlCQUFXLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FDN0IsbUVBQW1FLElBQUksYUFBYSxNQUFNLEdBQUcsQ0FDOUYsQ0FBQztRQUNKLENBQUM7UUFFRCx3REFBd0Q7UUFDeEQsTUFBTSxjQUFjLEdBQWEsRUFBRSxDQUFDO1FBQ3BDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMvQyxjQUFjLENBQUMsSUFBSSxDQUNqQixzQkFBc0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxDQUN0RCxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMvQyxjQUFjLENBQUMsSUFBSSxDQUNqQixzQkFBc0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsR0FBRyxDQUN0RCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5Qix5QkFBVyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQzdCLHFDQUFxQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2pFLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQzs7QUE1RkgsOERBNkZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgU2VydmljZUJ1aWxkLFxuICBTZXJ2aWNlRXh0ZW5zaW9uLFxufSBmcm9tIFwiQGF3cy1jZGstY29udGFpbmVycy9lY3Mtc2VydmljZS1leHRlbnNpb25zXCI7XG5pbXBvcnQgeyBBbm5vdGF0aW9ucyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgQ2ZuU2VydmljZSwgRWMyU2VydmljZSwgRmFyZ2F0ZVNlcnZpY2UgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvbmZpZ3VyaW5nIHNlcnZpY2UgZGVwbG95bWVudCBhbmQgY2FwYWNpdHkgcHJvdmlkZXIgc3RyYXRlZ3kuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudENvbmZpZ0V4dGVuc2lvblByb3BzIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gdXNlIHRoZSBjbHVzdGVyJ3MgRkFSR0FURV9TUE9UIGNhcGFjaXR5IHByb3ZpZGVyIHN0cmF0ZWd5LlxuICAgKlxuICAgKiBXaGVuIGVuYWJsZWQsIHRoZSBzZXJ2aWNlIHdpbGwgdXNlIHRoZSBjYXBhY2l0eSBwcm92aWRlciBzdHJhdGVneVxuICAgKiBjb25maWd1cmVkIGF0IHRoZSBjbHVzdGVyIGxldmVsIChlLmcuLCBGQVJHQVRFX1NQT1QpLlxuICAgKlxuICAgKiAqKlJlcXVpcmVtZW50czoqKlxuICAgKiAtIFRoZSBFQ1MgY2x1c3RlciBtdXN0IGhhdmUgY2FwYWNpdHkgcHJvdmlkZXJzIGVuYWJsZWRcbiAgICogICAoc2V0IGBlbmFibGVGYXJnYXRlU3BvdENhcGFjaXR5UHJvdmlkZXI6IHRydWVgIGluIEVjc0NsdXN0ZXIpXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSB1c2VGYXJnYXRlU3BvdEluc3RhbmNlcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBiYXNlIHZhbHVlIGZvciB0aGUgRkFSR0FURV9TUE9UIGNhcGFjaXR5IHByb3ZpZGVyLlxuICAgKiBUaGlzIGlzIHRoZSBtaW5pbXVtIG51bWJlciBvZiB0YXNrcyB0aGF0IHNob3VsZCB1c2UgRmFyZ2F0ZSBTcG90LlxuICAgKiBPbmx5IHVzZWQgd2hlbiB1c2VDYXBhY2l0eVByb3ZpZGVyIGlzIHRydWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IGNhcGFjaXR5UHJvdmlkZXJCYXNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgd2VpZ2h0IHZhbHVlIGZvciB0aGUgRkFSR0FURV9TUE9UIGNhcGFjaXR5IHByb3ZpZGVyLlxuICAgKiBIaWdoZXIgdmFsdWVzIG1lYW4gbW9yZSB0YXNrcyB3aWxsIHVzZSBGYXJnYXRlIFNwb3QuXG4gICAqIE9ubHkgdXNlZCB3aGVuIHVzZUNhcGFjaXR5UHJvdmlkZXIgaXMgdHJ1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgY2FwYWNpdHlQcm92aWRlcldlaWdodD86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gaGVhbHRoeSBwZXJjZW50IGZvciB0aGUgc2VydmljZSBkZXBsb3ltZW50LlxuICAgKiBTZXQgdG8gMCB0byBhbGxvdyBhbGwgdGFza3MgdG8gYmUgcmVwbGFjZWQgYXQgb25jZSBmb3IgZmFzdGVyIGRlcGxveW1lbnRzXG4gICAqIHdoZXJlIHNlcnZpY2UgaW50ZXJydXB0aW9uIGlzIGFjY2VwdGFibGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDEwMFxuICAgKi9cbiAgcmVhZG9ubHkgbWluSGVhbHRoeVBlcmNlbnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIGhlYWx0aHkgcGVyY2VudCBmb3IgdGhlIHNlcnZpY2UgZGVwbG95bWVudC5cbiAgICogQ29udHJvbHMgaG93IG1hbnkgYWRkaXRpb25hbCB0YXNrcyBjYW4gYmUgc3RhcnRlZCBkdXJpbmcgZGVwbG95bWVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgMjAwXG4gICAqL1xuICByZWFkb25seSBtYXhIZWFsdGh5UGVyY2VudD86IG51bWJlcjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgdGhlIEVDUyBkZXBsb3ltZW50IGNpcmN1aXQgYnJlYWtlci5cbiAgICpcbiAgICogVGhlIGNpcmN1aXQgYnJlYWtlciBtb25pdG9ycyBuZXcgZGVwbG95bWVudHMgYW5kIGF1dG9tYXRpY2FsbHkgcm9sbHMgYmFja1xuICAgKiBpZiB0YXNrcyBmYWlsIHRvIHN0YXJ0IG9yIGJlY29tZSB1bmhlYWx0aHkuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUNpcmN1aXRCcmVha2VyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgY2lyY3VpdCBicmVha2VyIHNob3VsZCBhdXRvbWF0aWNhbGx5IHJvbGwgYmFjayBmYWlsZWQgZGVwbG95bWVudHMuXG4gICAqXG4gICAqIFdoZW4gZW5hYmxlZCwgRUNTIHdpbGwgYXV0b21hdGljYWxseSByb2xsIGJhY2sgdG8gdGhlIHByZXZpb3VzIHRhc2sgZGVmaW5pdGlvblxuICAgKiBpZiB0aGUgbmV3IGRlcGxveW1lbnQgZmFpbHMuIE9ubHkgYXBwbGllcyB3aGVuIGVuYWJsZUNpcmN1aXRCcmVha2VyIGlzIHRydWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWUgKGlmIGNpcmN1aXQgYnJlYWtlciBpcyBlbmFibGVkKVxuICAgKi9cbiAgcmVhZG9ubHkgY2lyY3VpdEJyZWFrZXJSb2xsYmFjaz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogRXh0ZW5zaW9uIHRoYXQgY29uZmlndXJlcyBFQ1Mgc2VydmljZSBkZXBsb3ltZW50IG9wdGlvbnMgYW5kIGNhcGFjaXR5IHByb3ZpZGVyIHN0cmF0ZWd5LlxuICpcbiAqIFRoaXMgZXh0ZW5zaW9uIGFsbG93cyB5b3UgdG86XG4gKiAxLiBDb25maWd1cmUgZGVwbG95bWVudCBwYXJhbWV0ZXJzIGZvciBmYXN0ZXIgb3Igc2FmZXIgZGVwbG95bWVudHNcbiAqIDIuIEVuYWJsZSB0aGUgdXNlIG9mIGNsdXN0ZXIncyBGQVJHQVRFX1NQT1QgY2FwYWNpdHkgcHJvdmlkZXIgc3RyYXRlZ3lcbiAqIDMuIEVuYWJsZSBFQ1MgZGVwbG95bWVudCBjaXJjdWl0IGJyZWFrZXIgd2l0aCBhdXRvbWF0aWMgcm9sbGJhY2tcbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBEZXBsb3ltZW50Q29uZmlnRXh0ZW5zaW9uIGV4dGVuZHMgU2VydmljZUV4dGVuc2lvbiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IERlcGxveW1lbnRDb25maWdFeHRlbnNpb25Qcm9wcztcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogRGVwbG95bWVudENvbmZpZ0V4dGVuc2lvblByb3BzID0ge30pIHtcbiAgICBzdXBlcihcImRlcGxveW1lbnQtY29uZmlnXCIpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxuXG4gIG1vZGlmeVNlcnZpY2VQcm9wcyhwcm9wczogU2VydmljZUJ1aWxkKTogU2VydmljZUJ1aWxkIHtcbiAgICAvLyBBcHBseSBkZXBsb3ltZW50IGNvbmZpZ3VyYXRpb24gaWYgc3BlY2lmaWVkXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgLi4uKHRoaXMucHJvcHMubWluSGVhbHRoeVBlcmNlbnQgIT09IHVuZGVmaW5lZCAmJiB7XG4gICAgICAgIG1pbkhlYWx0aHlQZXJjZW50OiB0aGlzLnByb3BzLm1pbkhlYWx0aHlQZXJjZW50LFxuICAgICAgfSksXG4gICAgICAuLi4odGhpcy5wcm9wcy5tYXhIZWFsdGh5UGVyY2VudCAhPT0gdW5kZWZpbmVkICYmIHtcbiAgICAgICAgbWF4SGVhbHRoeVBlcmNlbnQ6IHRoaXMucHJvcHMubWF4SGVhbHRoeVBlcmNlbnQsXG4gICAgICB9KSxcbiAgICB9O1xuICB9XG5cbiAgdXNlU2VydmljZShzZXJ2aWNlOiBFYzJTZXJ2aWNlIHwgRmFyZ2F0ZVNlcnZpY2UpOiB2b2lkIHtcbiAgICBjb25zdCBjZm5TZXJ2aWNlID0gc2VydmljZS5ub2RlLmRlZmF1bHRDaGlsZCBhcyBDZm5TZXJ2aWNlO1xuXG4gICAgaWYgKCFjZm5TZXJ2aWNlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbmFibGUgdG8gYWNjZXNzIHVuZGVybHlpbmcgQ0ZOIHNlcnZpY2UgcmVzb3VyY2VcIik7XG4gICAgfVxuXG4gICAgLy8gQ29uZmlndXJlIGNpcmN1aXQgYnJlYWtlciAoZW5hYmxlZCBieSBkZWZhdWx0KVxuICAgIGNvbnN0IGVuYWJsZUNpcmN1aXRCcmVha2VyID1cbiAgICAgIHRoaXMucHJvcHMuZW5hYmxlQ2lyY3VpdEJyZWFrZXIgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IHRoaXMucHJvcHMuZW5hYmxlQ2lyY3VpdEJyZWFrZXJcbiAgICAgICAgOiB0cnVlO1xuXG4gICAgaWYgKGVuYWJsZUNpcmN1aXRCcmVha2VyKSB7XG4gICAgICBjb25zdCByb2xsYmFjayA9XG4gICAgICAgIHRoaXMucHJvcHMuY2lyY3VpdEJyZWFrZXJSb2xsYmFjayAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyB0aGlzLnByb3BzLmNpcmN1aXRCcmVha2VyUm9sbGJhY2tcbiAgICAgICAgICA6IHRydWU7XG5cbiAgICAgIGNmblNlcnZpY2UuZGVwbG95bWVudENvbmZpZ3VyYXRpb24gPSB7XG4gICAgICAgIC4uLmNmblNlcnZpY2UuZGVwbG95bWVudENvbmZpZ3VyYXRpb24sXG4gICAgICAgIGRlcGxveW1lbnRDaXJjdWl0QnJlYWtlcjoge1xuICAgICAgICAgIGVuYWJsZTogdHJ1ZSxcbiAgICAgICAgICByb2xsYmFjayxcbiAgICAgICAgfSxcbiAgICAgIH07XG5cbiAgICAgIEFubm90YXRpb25zLm9mKHNlcnZpY2UpLmFkZEluZm8oXG4gICAgICAgIGBFQ1MgZGVwbG95bWVudCBjaXJjdWl0IGJyZWFrZXIgZW5hYmxlZCAocm9sbGJhY2s6ICR7cm9sbGJhY2t9KWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnByb3BzLnVzZUZhcmdhdGVTcG90SW5zdGFuY2VzKSB7XG4gICAgICBjb25zdCBiYXNlID0gdGhpcy5wcm9wcy5jYXBhY2l0eVByb3ZpZGVyQmFzZSA/PyAwO1xuICAgICAgY29uc3Qgd2VpZ2h0ID0gdGhpcy5wcm9wcy5jYXBhY2l0eVByb3ZpZGVyV2VpZ2h0ID8/IDE7XG5cbiAgICAgIC8vIFNldCBGQVJHQVRFX1NQT1QgY2FwYWNpdHkgcHJvdmlkZXIgc3RyYXRlZ3lcbiAgICAgIGNmblNlcnZpY2UuY2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5ID0gW1xuICAgICAgICB7XG4gICAgICAgICAgY2FwYWNpdHlQcm92aWRlcjogXCJGQVJHQVRFX1NQT1RcIixcbiAgICAgICAgICB3ZWlnaHQsXG4gICAgICAgICAgYmFzZSxcbiAgICAgICAgfSxcbiAgICAgIF07XG5cbiAgICAgIC8vIFJlbW92ZSBsYXVuY2ggdHlwZSBhcyBpdCBjb25mbGljdHMgd2l0aCBjYXBhY2l0eSBwcm92aWRlciBzdHJhdGVneVxuICAgICAgY2ZuU2VydmljZS5sYXVuY2hUeXBlID0gdW5kZWZpbmVkO1xuXG4gICAgICBBbm5vdGF0aW9ucy5vZihzZXJ2aWNlKS5hZGRJbmZvKFxuICAgICAgICBgU2VydmljZSBjb25maWd1cmVkIHRvIHVzZSBGQVJHQVRFX1NQT1QgY2FwYWNpdHkgcHJvdmlkZXIgKGJhc2U6ICR7YmFzZX0sIHdlaWdodDogJHt3ZWlnaHR9KWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIEFkZCBpbmZvIGFib3V0IGRlcGxveW1lbnQgY29uZmlndXJhdGlvbiBpZiBjdXN0b21pemVkXG4gICAgY29uc3QgZGVwbG95bWVudEluZm86IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMucHJvcHMubWluSGVhbHRoeVBlcmNlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZGVwbG95bWVudEluZm8ucHVzaChcbiAgICAgICAgYG1pbkhlYWx0aHlQZXJjZW50OiAke3RoaXMucHJvcHMubWluSGVhbHRoeVBlcmNlbnR9JWAsXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAodGhpcy5wcm9wcy5tYXhIZWFsdGh5UGVyY2VudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBkZXBsb3ltZW50SW5mby5wdXNoKFxuICAgICAgICBgbWF4SGVhbHRoeVBlcmNlbnQ6ICR7dGhpcy5wcm9wcy5tYXhIZWFsdGh5UGVyY2VudH0lYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGRlcGxveW1lbnRJbmZvLmxlbmd0aCA+IDApIHtcbiAgICAgIEFubm90YXRpb25zLm9mKHNlcnZpY2UpLmFkZEluZm8oXG4gICAgICAgIGBTZXJ2aWNlIGRlcGxveW1lbnQgY29uZmlndXJhdGlvbjogJHtkZXBsb3ltZW50SW5mby5qb2luKFwiLCBcIil9YCxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -3,7 +3,7 @@ import * as ecs from "aws-cdk-lib/aws-ecs";
3
3
  import { Construct } from "constructs";
4
4
  import { IDocumentDB } from "../platform";
5
5
  export interface DocumentDbAccessExtensionProps {
6
- readonly basePlatformStackName: string;
6
+ readonly basePlatformStackName?: string;
7
7
  readonly securityGroupId: string;
8
8
  }
9
9
  export declare class DocumentDbAccessExtension extends ServiceExtension {