@pwrdrvr/microapps-cdk 0.0.29 → 0.2.6

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.
@@ -3,20 +3,21 @@ var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.MicroAppsAPIGwy = void 0;
5
5
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
- const apigwy = require("@aws-cdk/aws-apigatewayv2");
7
- const iam = require("@aws-cdk/aws-iam");
8
- const logs = require("@aws-cdk/aws-logs");
9
- const r53 = require("@aws-cdk/aws-route53");
10
- const r53targets = require("@aws-cdk/aws-route53-targets");
11
- const cdk = require("@aws-cdk/core");
6
+ const apigwy = require("@aws-cdk/aws-apigatewayv2-alpha");
7
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
8
+ const iam = require("aws-cdk-lib/aws-iam");
9
+ const logs = require("aws-cdk-lib/aws-logs");
10
+ const r53 = require("aws-cdk-lib/aws-route53");
11
+ const r53targets = require("aws-cdk-lib/aws-route53-targets");
12
+ const constructs_1 = require("constructs");
12
13
  /**
13
- * @stability stable
14
+ * (experimental) Create a new MicroApps API Gateway HTTP API endpoint.
15
+ *
16
+ * @experimental
14
17
  */
15
- class MicroAppsAPIGwy extends cdk.Construct {
18
+ class MicroAppsAPIGwy extends constructs_1.Construct {
16
19
  /**
17
- * MicroApps - Create just API Gateway.
18
- *
19
- * @stability stable
20
+ * @experimental
20
21
  */
21
22
  constructor(scope, id, props) {
22
23
  super(scope, id);
@@ -40,7 +41,7 @@ class MicroAppsAPIGwy extends cdk.Construct {
40
41
  // any randomization... we have to make sure the name is unique-ish
41
42
  const apigatewayName = assetNameRoot
42
43
  ? `${assetNameRoot}${assetNameSuffix}`
43
- : `${cdk.Stack.of(this).stackName}-microapps`;
44
+ : `${aws_cdk_lib_1.Stack.of(this).stackName}-microapps`;
44
45
  //
45
46
  // APIGateway domain names for CloudFront and origin
46
47
  //
@@ -156,17 +157,17 @@ class MicroAppsAPIGwy extends cdk.Construct {
156
157
  }
157
158
  }
158
159
  /**
159
- * Domain Name applied to API Gateway origin.
160
+ * (experimental) Domain Name applied to API Gateway origin.
160
161
  *
161
- * @stability stable
162
+ * @experimental
162
163
  */
163
164
  get dnAppsOrigin() {
164
165
  return this._dnAppsOrigin;
165
166
  }
166
167
  /**
167
- * API Gateway.
168
+ * (experimental) API Gateway.
168
169
  *
169
- * @stability stable
170
+ * @experimental
170
171
  */
171
172
  get httpApi() {
172
173
  return this._httpApi;
@@ -174,5 +175,5 @@ class MicroAppsAPIGwy extends cdk.Construct {
174
175
  }
175
176
  exports.MicroAppsAPIGwy = MicroAppsAPIGwy;
176
177
  _a = JSII_RTTI_SYMBOL_1;
177
- MicroAppsAPIGwy[_a] = { fqn: "@pwrdrvr/microapps-cdk.MicroAppsAPIGwy", version: "0.0.29" };
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9BcHBzQVBJR3d5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01pY3JvQXBwc0FQSUd3eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUFvRDtBQUVwRCx3Q0FBd0M7QUFDeEMsMENBQTBDO0FBQzFDLDRDQUE0QztBQUM1QywyREFBMkQ7QUFDM0QscUNBQXFDOzs7O0FBb0NyQyxNQUFhLGVBQWdCLFNBQVEsR0FBRyxDQUFDLFNBQVM7Ozs7OztJQVloRCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQTRCO1FBQ3hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUM5QztRQUVELElBQ0UsQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsY0FBYyxLQUFLLFNBQVMsQ0FBQztZQUNuRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxjQUFjLEtBQUssU0FBUyxDQUFDLEVBQ25FO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FBQywyRUFBMkUsQ0FBQyxDQUFDO1NBQzlGO1FBRUQsSUFDRSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxTQUFTLENBQUM7WUFDeEUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDLEVBQ3hFO1lBQ0EsTUFBTSxJQUFJLEtBQUssQ0FDYixnRkFBZ0YsQ0FDakYsQ0FBQztTQUNIO1FBRUQsSUFDRSxDQUFDLEtBQUssQ0FBQyxjQUFjLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDO1lBQ3RFLENBQUMsS0FB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QUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7O0FBVEgsMENBOExDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXBpZ3d5IGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5djInO1xuaW1wb3J0ICogYXMgYWNtIGZyb20gJ0Bhd3MtY2RrL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ0Bhd3MtY2RrL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdAYXdzLWNkay9hd3MtbG9ncyc7XG5pbXBvcnQgKiBhcyByNTMgZnJvbSAnQGF3cy1jZGsvYXdzLXJvdXRlNTMnO1xuaW1wb3J0ICogYXMgcjUzdGFyZ2V0cyBmcm9tICdAYXdzLWNkay9hd3Mtcm91dGU1My10YXJnZXRzJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdAYXdzLWNkay9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBNaWNyb0FwcHNBUElHd3lQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlbW92YWxQb2xpY3k/OiBjZGsuUmVtb3ZhbFBvbGljeTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVFZGdlPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVPcmlnaW4/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lUm9vdD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lU3VmZml4Pzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNlcnRPcmlnaW4/OiBhY20uSUNlcnRpZmljYXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcjUzWm9uZT86IHI1My5JSG9zdGVkWm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJvb3RQYXRoUHJlZml4Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNaWNyb0FwcHNBUElHd3kge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBkbkFwcHNPcmlnaW4/OiBhcGlnd3kuSURvbWFpbk5hbWU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgaHR0cEFwaTogYXBpZ3d5Lkh0dHBBcGk7XG59XG5cbmV4cG9ydCBjbGFzcyBNaWNyb0FwcHNBUElHd3kgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IGltcGxlbWVudHMgSU1pY3JvQXBwc0FQSUd3eSB7XG4gIHByaXZhdGUgX2RuQXBwc09yaWdpbjogYXBpZ3d5LkRvbWFpbk5hbWUgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBnZXQgZG5BcHBzT3JpZ2luKCk6IGFwaWd3eS5JRG9tYWluTmFtZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2RuQXBwc09yaWdpbjtcbiAgfVxuXG4gIHByaXZhdGUgX2h0dHBBcGk6IGFwaWd3eS5IdHRwQXBpO1xuICBwdWJsaWMgZ2V0IGh0dHBBcGkoKTogYXBpZ3d5Lkh0dHBBcGkge1xuICAgIHJldHVybiB0aGlzLl9odHRwQXBpO1xuICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogTWljcm9BcHBzQVBJR3d5UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncHJvcHMgY2Fubm90IGJlIHVuZGVmaW5lZCcpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChwcm9wcy5yNTNab25lID09PSB1bmRlZmluZWQgJiYgcHJvcHMuZG9tYWluTmFtZUVkZ2UgIT09IHVuZGVmaW5lZCkgfHxcbiAgICAgIChwcm9wcy5yNTNab25lICE9PSB1bmRlZmluZWQgJiYgcHJvcHMuZG9tYWluTmFtZUVkZ2UgPT09IHVuZGVmaW5lZClcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSWYgZWl0aGVyIG9mIHI1M1pvbmUgb3IgZG9tYWluTmFtZUVkZ2UgYXJlIHNldCB0aGVuIHRoZSBvdGhlciBtdXN0IGJlIHNldCcpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChwcm9wcy5kb21haW5OYW1lT3JpZ2luID09PSB1bmRlZmluZWQgJiYgcHJvcHMuY2VydE9yaWdpbiAhPT0gdW5kZWZpbmVkKSB8fFxuICAgICAgKHByb3BzLmRvbWFpbk5hbWVPcmlnaW4gIT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luID09PSB1bmRlZmluZWQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdJZiBlaXRoZXIgb2YgZG9tYWluTmFtZU9yaWdpbiBvciBjZXJ0T3JpZ2luIGFyZSBzZXQgdGhlbiB0aGUgb3RoZXIgbXVzdCBiZSBzZXQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAocHJvcHMuZG9tYWluTmFtZUVkZ2UgPT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luICE9PSB1bmRlZmluZWQpIHx8XG4gICAgICAocHJvcHMuZG9tYWluTmFtZUVkZ2UgIT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luID09PSB1bmRlZmluZWQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdJZiBlaXRoZXIgb2YgZG9tYWluTmFtZU9yaWdpbiBvciBjZXJ0T3JpZ2luIGFyZSBzZXQgdGhlbiB0aGUgb3RoZXIgbXVzdCBiZSBzZXQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB7XG4gICAgICByNTNab25lLFxuICAgICAgZG9tYWluTmFtZUVkZ2UsXG4gICAgICBkb21haW5OYW1lT3JpZ2luLFxuICAgICAgY2VydE9yaWdpbixcbiAgICAgIHJlbW92YWxQb2xpY3ksXG4gICAgICBhc3NldE5hbWVSb290LFxuICAgICAgYXNzZXROYW1lU3VmZml4LFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgfSA9IHByb3BzO1xuXG4gICAgLy8gQVBJIEdhdGV3YXkgdXNlcyB0aGUgYGlkYCBzdHJpbmcgYXMgdGhlIGdhdGV3YXkgbmFtZSB3aXRob3V0XG4gICAgLy8gYW55IHJhbmRvbWl6YXRpb24uLi4gd2UgaGF2ZSB0byBtYWtlIHN1cmUgdGhlIG5hbWUgaXMgdW5pcXVlLWlzaFxuICAgIGNvbnN0IGFwaWdhdGV3YXlOYW1lID0gYXNzZXROYW1lUm9vdFxuICAgICAgPyBgJHthc3NldE5hbWVSb290fSR7YXNzZXROYW1lU3VmZml4fWBcbiAgICAgIDogYCR7Y2RrLlN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZX0tbWljcm9hcHBzYDtcblxuICAgIC8vXG4gICAgLy8gQVBJR2F0ZXdheSBkb21haW4gbmFtZXMgZm9yIENsb3VkRnJvbnQgYW5kIG9yaWdpblxuICAgIC8vXG4gICAgdGhpcy5faHR0cEFwaSA9IG5ldyBhcGlnd3kuSHR0cEFwaSh0aGlzLCAnZ3d5Jywge1xuICAgICAgYXBpTmFtZTogYXBpZ2F0ZXdheU5hbWUsXG4gICAgICBjcmVhdGVEZWZhdWx0U3RhZ2U6IGZhbHNlLFxuICAgIH0pO1xuICAgIGlmIChyZW1vdmFsUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuX2h0dHBBcGkuYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSB0aGUgc3RhZ2VcbiAgICBjb25zdCBzdGFnZSA9IG5ldyBhcGlnd3kuSHR0cFN0YWdlKHRoaXMsICdzdGFnZScsIHtcbiAgICAgIGh0dHBBcGk6IHRoaXMuX2h0dHBBcGksXG4gICAgICBhdXRvRGVwbG95OiB0cnVlLFxuICAgICAgLy8gSWYgcm9vdFBhdGhQcmVmaXggaXMgbm90IGRlZmluZWQgdGhpcyB3aWxsIGJlIHRoZSAkZGVmYXVsdCBzdGFnZVxuICAgICAgc3RhZ2VOYW1lOiByb290UGF0aFByZWZpeCxcbiAgICB9KTtcblxuICAgIGlmIChkb21haW5OYW1lRWRnZSAhPT0gdW5kZWZpbmVkICYmIGNlcnRPcmlnaW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQ3JlYXRlIEN1c3RvbSBEb21haW5zIGZvciBBUEkgR2F0ZXdheVxuICAgICAgY29uc3QgZG5BcHBzRWRnZSA9IG5ldyBhcGlnd3kuRG9tYWluTmFtZSh0aGlzLCAnbWljcm9hcHBzLWFwcHMtZWRnZS1kbicsIHtcbiAgICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZUVkZ2UsXG4gICAgICAgIGNlcnRpZmljYXRlOiBjZXJ0T3JpZ2luLFxuICAgICAgfSk7XG4gICAgICBpZiAocmVtb3ZhbFBvbGljeSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRuQXBwc0VkZ2UuYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgICAgfVxuXG4gICAgICAvLyBDcmVhdGUgdGhlIGVkZ2UgZG9tYWluIG5hbWUgbWFwcGluZyBmb3IgdGhlIEFQSVxuICAgICAgY29uc3QgYXBpTWFwcGluZyA9IG5ldyBhcGlnd3kuQXBpTWFwcGluZyh0aGlzLCAnbWFwcGluZycsIHtcbiAgICAgICAgYXBpOiB0aGlzLl9odHRwQXBpLFxuICAgICAgICBkb21haW5OYW1lOiBkbkFwcHNFZGdlLFxuICAgICAgICBzdGFnZSxcbiAgICAgIH0pO1xuICAgICAgLy8gMjAyMi0wMS0xNiAtIENESyBpcyBzdGlsbCBnZW5lcmF0aW5nIENsb3VkRm9ybWF0aW9uIHdpdGggbm8gZGVwZW5kZW5jeVxuICAgICAgLy8gYmV0d2VlbiB0aGUgUjUzIFJlY29yZFNldCBhbmQgdGhlIE1hcHBpbmdcbiAgICAgIGFwaU1hcHBpbmcubm9kZS5hZGREZXBlbmRlbmN5KGRuQXBwc0VkZ2UpO1xuICAgIH1cblxuICAgIGlmIChkb21haW5OYW1lT3JpZ2luICE9PSB1bmRlZmluZWQgJiYgY2VydE9yaWdpbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9kbkFwcHNPcmlnaW4gPSBuZXcgYXBpZ3d5LkRvbWFpbk5hbWUodGhpcywgJ29yaWdpbi1kbicsIHtcbiAgICAgICAgZG9tYWluTmFtZTogZG9tYWluTmFtZU9yaWdpbixcbiAgICAgICAgY2VydGlmaWNhdGU6IGNlcnRPcmlnaW4sXG4gICAgICB9KTtcbiAgICAgIGlmIChyZW1vdmFsUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5fZG5BcHBzT3JpZ2luLmFwcGx5UmVtb3ZhbFBvbGljeShyZW1vdmFsUG9saWN5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFbmFibGUgYWNjZXNzIGxvZ3Mgb24gQVBJIEdhdGV3YXlcbiAgICBjb25zdCBhcGlBY2Nlc3NMb2dzID0gbmV3IGxvZ3MuTG9nR3JvdXAodGhpcywgJ2xvZ3MnLCB7XG4gICAgICBsb2dHcm91cE5hbWU6IGFwaWdhdGV3YXlOYW1lXG4gICAgICAgID8gYC9hd3MvYXBpZ3d5LyR7YXBpZ2F0ZXdheU5hbWV9YFxuICAgICAgICA6IGAvYXdzL2FwaWd3eS8ke3RoaXMuaHR0cEFwaS5odHRwQXBpTmFtZX1gLFxuICAgICAgcmV0ZW50aW9uOiBsb2dzLlJldGVudGlvbkRheXMuVFdPX1dFRUtTLFxuICAgIH0pO1xuICAgIGlmIChyZW1vdmFsUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGFwaUFjY2Vzc0xvZ3MuYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgIH1cbiAgICAvLyBjb25zdCBzdGFnZSA9IHRoaXMuX2h0dHBBcGkuZGVmYXVsdFN0YWdlPy5ub2RlLmRlZmF1bHRDaGlsZCBhcyBhcGlnd3kuQ2ZuU3RhZ2U7XG4gICAgKHN0YWdlIGFzIHVua25vd24gYXMgYXBpZ3d5LkNmblN0YWdlKS5hY2Nlc3NMb2dTZXR0aW5ncyA9IHtcbiAgICAgIGRlc3RpbmF0aW9uQXJuOiBhcGlBY2Nlc3NMb2dzLmxvZ0dyb3VwQXJuLFxuICAgICAgZm9ybWF0OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHJlcXVlc3RJZDogJyRjb250ZXh0LnJlcXVlc3RJZCcsXG4gICAgICAgIHVzZXJBZ2VudDogJyRjb250ZXh0LmlkZW50aXR5LnVzZXJBZ2VudCcsXG4gICAgICAgIHNvdXJjZUlwOiAnJGNvbnRleHQuaWRlbnRpdHkuc291cmNlSXAnLFxuICAgICAgICByZXF1ZXN0VGltZTogJyRjb250ZXh0LnJlcXVlc3RUaW1lJyxcbiAgICAgICAgcmVxdWVzdFRpbWVFcG9jaDogJyRjb250ZXh0LnJlcXVlc3RUaW1lRXBvY2gnLFxuICAgICAgICBodHRwTWV0aG9kOiAnJGNvbnRleHQuaHR0cE1ldGhvZCcsXG4gICAgICAgIHBhdGg6ICckY29udGV4dC5wYXRoJyxcbiAgICAgICAgc3RhdHVzOiAnJGNvbnRleHQuc3RhdHVzJyxcbiAgICAgICAgcHJvdG9jb2w6ICckY29udGV4dC5wcm90b2NvbCcsXG4gICAgICAgIHJlc3BvbnNlTGVuZ3RoOiAnJGNvbnRleHQucmVzcG9uc2VMZW5ndGgnLFxuICAgICAgICBkb21haW5OYW1lOiAnJGNvbnRleHQuZG9tYWluTmFtZScsXG4gICAgICB9KSxcbiAgICB9O1xuXG4gICAgLy8gQ3JlYXRlIGEgbG9nZ2luZyByb2xlXG4gICAgLy8gVGlwczogaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8xMTEwMFxuICAgIGNvbnN0IGFwaUd3eUxvZ1JvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgJ2xvZ3Mtcm9sZScsIHtcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW1xuICAgICAgICBpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoXG4gICAgICAgICAgJ3NlcnZpY2Utcm9sZS9BbWF6b25BUElHYXRld2F5UHVzaFRvQ2xvdWRXYXRjaExvZ3MnLFxuICAgICAgICApLFxuICAgICAgXSxcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdhcGlnYXRld2F5LmFtYXpvbmF3cy5jb20nKSxcbiAgICB9KTtcbiAgICBhcGlBY2Nlc3NMb2dzLmdyYW50V3JpdGUoYXBpR3d5TG9nUm9sZSk7XG5cbiAgICAvL1xuICAgIC8vIExldCBBUEkgR2F0ZXdheSBhY2NlcHQgcmVxdWVzdHMgdXNpbmcgZG9tYWluTmFtZU9yaWdpblxuICAgIC8vIFRoYXQgaXMgdGhlIG9yaWdpbiBVUkkgdGhhdCBDbG91ZEZyb250IHVzZXMgZm9yIHRoaXMgZ2F0ZXdheS5cbiAgICAvLyBUaGUgZ2F0ZXdheSB3aWxsIHJlZnVzZSB0aGUgdHJhZmZpYyBpZiBpdCBkb2Vzbid0IGhhdmUgdGhlXG4gICAgLy8gZG9tYWluIG5hbWUgcmVnaXN0ZXJlZC5cbiAgICAvL1xuICAgIGlmICh0aGlzLl9kbkFwcHNPcmlnaW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgbWFwcGluZ0FwcHNBcGlzID0gbmV3IGFwaWd3eS5BcGlNYXBwaW5nKHRoaXMsICdhcGktbWFwLW9yaWdpbicsIHtcbiAgICAgICAgYXBpOiB0aGlzLl9odHRwQXBpLFxuICAgICAgICBkb21haW5OYW1lOiB0aGlzLl9kbkFwcHNPcmlnaW4sXG4gICAgICAgIHN0YWdlLFxuICAgICAgfSk7XG4gICAgICAvLyAyMDIyLTAxLTE2IC0gQ0RLIGlzIHN0aWxsIGdlbmVyYXRpbmcgQ2xvdWRGb3JtYXRpb24gd2l0aCBubyBkZXBlbmRlbmN5XG4gICAgICAvLyBiZXR3ZWVuIHRoZSBSNTMgUmVjb3JkU2V0IGFuZCB0aGUgTWFwcGluZ1xuICAgICAgbWFwcGluZ0FwcHNBcGlzLm5vZGUuYWRkRGVwZW5kZW5jeSh0aGlzLl9kbkFwcHNPcmlnaW4pO1xuICAgICAgaWYgKHJlbW92YWxQb2xpY3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBtYXBwaW5nQXBwc0FwaXMuYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vXG4gICAgLy8gQ3JlYXRlIHRoZSBvcmlnaW4gbmFtZSBmb3IgQVBJIEdhdGV3YXlcbiAgICAvL1xuICAgIGlmIChyNTNab25lICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fZG5BcHBzT3JpZ2luKSB7XG4gICAgICBjb25zdCByckFwcHNPcmlnaW4gPSBuZXcgcjUzLkFSZWNvcmQodGhpcywgJ29yaWdpbi1hcmVjb3JkJywge1xuICAgICAgICB6b25lOiByNTNab25lLFxuICAgICAgICByZWNvcmROYW1lOiBkb21haW5OYW1lT3JpZ2luLFxuICAgICAgICB0YXJnZXQ6IHI1My5SZWNvcmRUYXJnZXQuZnJvbUFsaWFzKFxuICAgICAgICAgIG5ldyByNTN0YXJnZXRzLkFwaUdhdGV3YXl2MkRvbWFpblByb3BlcnRpZXMoXG4gICAgICAgICAgICB0aGlzLl9kbkFwcHNPcmlnaW4ucmVnaW9uYWxEb21haW5OYW1lLFxuICAgICAgICAgICAgdGhpcy5fZG5BcHBzT3JpZ2luLnJlZ2lvbmFsSG9zdGVkWm9uZUlkLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICB9KTtcbiAgICAgIGlmIChyZW1vdmFsUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcnJBcHBzT3JpZ2luLmFwcGx5UmVtb3ZhbFBvbGljeShyZW1vdmFsUG9saWN5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
178
+ MicroAppsAPIGwy[_a] = { fqn: "@pwrdrvr/microapps-cdk.MicroAppsAPIGwy", version: "0.2.6" };
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWljcm9BcHBzQVBJR3d5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01pY3JvQXBwc0FQSUd3eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBEQUEwRDtBQUMxRCw2Q0FBbUQ7QUFHbkQsMkNBQTJDO0FBQzNDLDZDQUE2QztBQUM3QywrQ0FBK0M7QUFDL0MsOERBQThEO0FBQzlELDJDQUF1Qzs7Ozs7O0FBdUN2QyxNQUFhLGVBQWdCLFNBQVEsc0JBQVM7Ozs7SUFXNUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE0QjtRQUNwRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7U0FDOUM7UUFFRCxJQUNFLENBQUMsS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLGNBQWMsS0FBSyxTQUFTLENBQUM7WUFDbkUsQ0FBQyxLQUFLLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsY0FBYyxLQUFLLFNBQVMsQ0FBQyxFQUNuRTtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQUMsMkVBQTJFLENBQUMsQ0FBQztTQUM5RjtRQUVELElBQ0UsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDO1lBQ3hFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQyxFQUN4RTtZQUNBLE1BQU0sSUFBSSxLQUFLLENBQ2IsZ0ZBQWdGLENBQ2pGLENBQUM7U0FDSDtRQUVELElBQ0UsQ0FBQyxLQUFLLENBQUMsY0FBYyxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQztZQUN0RSxDQUFD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QUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDOztBQVRILDBDQTZMQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFwaWd3eSBmcm9tICdAYXdzLWNkay9hd3MtYXBpZ2F0ZXdheXYyLWFscGhhJztcbmltcG9ydCB7IFJlbW92YWxQb2xpY3ksIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgYXBpZ3d5Y2ZuIGZyb20gJ2F3cy1jZGstbGliL2F3cy1hcGlnYXRld2F5djInO1xuaW1wb3J0ICogYXMgYWNtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgKiBhcyByNTMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0ICogYXMgcjUzdGFyZ2V0cyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtcm91dGU1My10YXJnZXRzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgTWljcm9BcHBzQVBJR3d5UHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSByZW1vdmFsUG9saWN5PzogUmVtb3ZhbFBvbGljeTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVFZGdlPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWVPcmlnaW4/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lUm9vdD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXNzZXROYW1lU3VmZml4Pzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNlcnRPcmlnaW4/OiBhY20uSUNlcnRpZmljYXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcjUzWm9uZT86IHI1My5JSG9zdGVkWm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJvb3RQYXRoUHJlZml4Pzogc3RyaW5nO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgSU1pY3JvQXBwc0FQSUd3eSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRuQXBwc09yaWdpbj86IGFwaWd3eS5JRG9tYWluTmFtZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBodHRwQXBpOiBhcGlnd3kuSHR0cEFwaTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIE1pY3JvQXBwc0FQSUd3eSBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIElNaWNyb0FwcHNBUElHd3kge1xuICBwcml2YXRlIF9kbkFwcHNPcmlnaW46IGFwaWd3eS5Eb21haW5OYW1lIHwgdW5kZWZpbmVkO1xuICBwdWJsaWMgZ2V0IGRuQXBwc09yaWdpbigpOiBhcGlnd3kuSURvbWFpbk5hbWUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9kbkFwcHNPcmlnaW47XG4gIH1cblxuICBwcml2YXRlIF9odHRwQXBpOiBhcGlnd3kuSHR0cEFwaTtcbiAgcHVibGljIGdldCBodHRwQXBpKCk6IGFwaWd3eS5IdHRwQXBpIHtcbiAgICByZXR1cm4gdGhpcy5faHR0cEFwaTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogTWljcm9BcHBzQVBJR3d5UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgaWYgKHByb3BzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncHJvcHMgY2Fubm90IGJlIHVuZGVmaW5lZCcpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChwcm9wcy5yNTNab25lID09PSB1bmRlZmluZWQgJiYgcHJvcHMuZG9tYWluTmFtZUVkZ2UgIT09IHVuZGVmaW5lZCkgfHxcbiAgICAgIChwcm9wcy5yNTNab25lICE9PSB1bmRlZmluZWQgJiYgcHJvcHMuZG9tYWluTmFtZUVkZ2UgPT09IHVuZGVmaW5lZClcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSWYgZWl0aGVyIG9mIHI1M1pvbmUgb3IgZG9tYWluTmFtZUVkZ2UgYXJlIHNldCB0aGVuIHRoZSBvdGhlciBtdXN0IGJlIHNldCcpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIChwcm9wcy5kb21haW5OYW1lT3JpZ2luID09PSB1bmRlZmluZWQgJiYgcHJvcHMuY2VydE9yaWdpbiAhPT0gdW5kZWZpbmVkKSB8fFxuICAgICAgKHByb3BzLmRvbWFpbk5hbWVPcmlnaW4gIT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luID09PSB1bmRlZmluZWQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdJZiBlaXRoZXIgb2YgZG9tYWluTmFtZU9yaWdpbiBvciBjZXJ0T3JpZ2luIGFyZSBzZXQgdGhlbiB0aGUgb3RoZXIgbXVzdCBiZSBzZXQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAocHJvcHMuZG9tYWluTmFtZUVkZ2UgPT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luICE9PSB1bmRlZmluZWQpIHx8XG4gICAgICAocHJvcHMuZG9tYWluTmFtZUVkZ2UgIT09IHVuZGVmaW5lZCAmJiBwcm9wcy5jZXJ0T3JpZ2luID09PSB1bmRlZmluZWQpXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdJZiBlaXRoZXIgb2YgZG9tYWluTmFtZU9yaWdpbiBvciBjZXJ0T3JpZ2luIGFyZSBzZXQgdGhlbiB0aGUgb3RoZXIgbXVzdCBiZSBzZXQnLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB7XG4gICAgICByNTNab25lLFxuICAgICAgZG9tYWluTmFtZUVkZ2UsXG4gICAgICBkb21haW5OYW1lT3JpZ2luLFxuICAgICAgY2VydE9yaWdpbixcbiAgICAgIHJlbW92YWxQb2xpY3ksXG4gICAgICBhc3NldE5hbWVSb290LFxuICAgICAgYXNzZXROYW1lU3VmZml4LFxuICAgICAgcm9vdFBhdGhQcmVmaXgsXG4gICAgfSA9IHByb3BzO1xuXG4gICAgLy8gQVBJIEdhdGV3YXkgdXNlcyB0aGUgYGlkYCBzdHJpbmcgYXMgdGhlIGdhdGV3YXkgbmFtZSB3aXRob3V0XG4gICAgLy8gYW55IHJhbmRvbWl6YXRpb24uLi4gd2UgaGF2ZSB0byBtYWtlIHN1cmUgdGhlIG5hbWUgaXMgdW5pcXVlLWlzaFxuICAgIGNvbnN0IGFwaWdhdGV3YXlOYW1lID0gYXNzZXROYW1lUm9vdFxuICAgICAgPyBgJHthc3NldE5hbWVSb290fSR7YXNzZXROYW1lU3VmZml4fWBcbiAgICAgIDogYCR7U3RhY2sub2YodGhpcykuc3RhY2tOYW1lfS1taWNyb2FwcHNgO1xuXG4gICAgLy9cbiAgICAvLyBBUElHYXRld2F5IGRvbWFpbiBuYW1lcyBmb3IgQ2xvdWRGcm9udCBhbmQgb3JpZ2luXG4gICAgLy9cbiAgICB0aGlzLl9odHRwQXBpID0gbmV3IGFwaWd3eS5IdHRwQXBpKHRoaXMsICdnd3knLCB7XG4gICAgICBhcGlOYW1lOiBhcGlnYXRld2F5TmFtZSxcbiAgICAgIGNyZWF0ZURlZmF1bHRTdGFnZTogZmFsc2UsXG4gICAgfSk7XG4gICAgaWYgKHJlbW92YWxQb2xpY3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5faHR0cEFwaS5hcHBseVJlbW92YWxQb2xpY3kocmVtb3ZhbFBvbGljeSk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIHRoZSBzdGFnZVxuICAgIGNvbnN0IHN0YWdlID0gbmV3IGFwaWd3eS5IdHRwU3RhZ2UodGhpcywgJ3N0YWdlJywge1xuICAgICAgaHR0cEFwaTogdGhpcy5faHR0cEFwaSxcbiAgICAgIGF1dG9EZXBsb3k6IHRydWUsXG4gICAgICAvLyBJZiByb290UGF0aFByZWZpeCBpcyBub3QgZGVmaW5lZCB0aGlzIHdpbGwgYmUgdGhlICRkZWZhdWx0IHN0YWdlXG4gICAgICBzdGFnZU5hbWU6IHJvb3RQYXRoUHJlZml4LFxuICAgIH0pO1xuXG4gICAgaWYgKGRvbWFpbk5hbWVFZGdlICE9PSB1bmRlZmluZWQgJiYgY2VydE9yaWdpbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBDcmVhdGUgQ3VzdG9tIERvbWFpbnMgZm9yIEFQSSBHYXRld2F5XG4gICAgICBjb25zdCBkbkFwcHNFZGdlID0gbmV3IGFwaWd3eS5Eb21haW5OYW1lKHRoaXMsICdtaWNyb2FwcHMtYXBwcy1lZGdlLWRuJywge1xuICAgICAgICBkb21haW5OYW1lOiBkb21haW5OYW1lRWRnZSxcbiAgICAgICAgY2VydGlmaWNhdGU6IGNlcnRPcmlnaW4sXG4gICAgICB9KTtcbiAgICAgIGlmIChyZW1vdmFsUG9saWN5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgZG5BcHBzRWRnZS5hcHBseVJlbW92YWxQb2xpY3kocmVtb3ZhbFBvbGljeSk7XG4gICAgICB9XG5cbiAgICAgIC8vIENyZWF0ZSB0aGUgZWRnZSBkb21haW4gbmFtZSBtYXBwaW5nIGZvciB0aGUgQVBJXG4gICAgICBjb25zdCBhcGlNYXBwaW5nID0gbmV3IGFwaWd3eS5BcGlNYXBwaW5nKHRoaXMsICdtYXBwaW5nJywge1xuICAgICAgICBhcGk6IHRoaXMuX2h0dHBBcGksXG4gICAgICAgIGRvbWFpbk5hbWU6IGRuQXBwc0VkZ2UsXG4gICAgICAgIHN0YWdlLFxuICAgICAgfSk7XG4gICAgICAvLyAyMDIyLTAxLTE2IC0gQ0RLIGlzIHN0aWxsIGdlbmVyYXRpbmcgQ2xvdWRGb3JtYXRpb24gd2l0aCBubyBkZXBlbmRlbmN5XG4gICAgICAvLyBiZXR3ZWVuIHRoZSBSNTMgUmVjb3JkU2V0IGFuZCB0aGUgTWFwcGluZ1xuICAgICAgYXBpTWFwcGluZy5ub2RlLmFkZERlcGVuZGVuY3koZG5BcHBzRWRnZSk7XG4gICAgfVxuXG4gICAgaWYgKGRvbWFpbk5hbWVPcmlnaW4gIT09IHVuZGVmaW5lZCAmJiBjZXJ0T3JpZ2luICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuX2RuQXBwc09yaWdpbiA9IG5ldyBhcGlnd3kuRG9tYWluTmFtZSh0aGlzLCAnb3JpZ2luLWRuJywge1xuICAgICAgICBkb21haW5OYW1lOiBkb21haW5OYW1lT3JpZ2luLFxuICAgICAgICBjZXJ0aWZpY2F0ZTogY2VydE9yaWdpbixcbiAgICAgIH0pO1xuICAgICAgaWYgKHJlbW92YWxQb2xpY3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLl9kbkFwcHNPcmlnaW4uYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEVuYWJsZSBhY2Nlc3MgbG9ncyBvbiBBUEkgR2F0ZXdheVxuICAgIGNvbnN0IGFwaUFjY2Vzc0xvZ3MgPSBuZXcgbG9ncy5Mb2dHcm91cCh0aGlzLCAnbG9ncycsIHtcbiAgICAgIGxvZ0dyb3VwTmFtZTogYXBpZ2F0ZXdheU5hbWVcbiAgICAgICAgPyBgL2F3cy9hcGlnd3kvJHthcGlnYXRld2F5TmFtZX1gXG4gICAgICAgIDogYC9hd3MvYXBpZ3d5LyR7dGhpcy5odHRwQXBpLmh0dHBBcGlOYW1lfWAsXG4gICAgICByZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5UV09fV0VFS1MsXG4gICAgfSk7XG4gICAgaWYgKHJlbW92YWxQb2xpY3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgYXBpQWNjZXNzTG9ncy5hcHBseVJlbW92YWxQb2xpY3kocmVtb3ZhbFBvbGljeSk7XG4gICAgfVxuICAgIC8vIGNvbnN0IHN0YWdlID0gdGhpcy5faHR0cEFwaS5kZWZhdWx0U3RhZ2U/Lm5vZGUuZGVmYXVsdENoaWxkIGFzIGFwaWd3eS5DZm5TdGFnZTtcbiAgICAoc3RhZ2UgYXMgdW5rbm93biBhcyBhcGlnd3ljZm4uQ2ZuU3RhZ2UpLmFjY2Vzc0xvZ1NldHRpbmdzID0ge1xuICAgICAgZGVzdGluYXRpb25Bcm46IGFwaUFjY2Vzc0xvZ3MubG9nR3JvdXBBcm4sXG4gICAgICBmb3JtYXQ6IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgcmVxdWVzdElkOiAnJGNvbnRleHQucmVxdWVzdElkJyxcbiAgICAgICAgdXNlckFnZW50OiAnJGNvbnRleHQuaWRlbnRpdHkudXNlckFnZW50JyxcbiAgICAgICAgc291cmNlSXA6ICckY29udGV4dC5pZGVudGl0eS5zb3VyY2VJcCcsXG4gICAgICAgIHJlcXVlc3RUaW1lOiAnJGNvbnRleHQucmVxdWVzdFRpbWUnLFxuICAgICAgICByZXF1ZXN0VGltZUVwb2NoOiAnJGNvbnRleHQucmVxdWVzdFRpbWVFcG9jaCcsXG4gICAgICAgIGh0dHBNZXRob2Q6ICckY29udGV4dC5odHRwTWV0aG9kJyxcbiAgICAgICAgcGF0aDogJyRjb250ZXh0LnBhdGgnLFxuICAgICAgICBzdGF0dXM6ICckY29udGV4dC5zdGF0dXMnLFxuICAgICAgICBwcm90b2NvbDogJyRjb250ZXh0LnByb3RvY29sJyxcbiAgICAgICAgcmVzcG9uc2VMZW5ndGg6ICckY29udGV4dC5yZXNwb25zZUxlbmd0aCcsXG4gICAgICAgIGRvbWFpbk5hbWU6ICckY29udGV4dC5kb21haW5OYW1lJyxcbiAgICAgIH0pLFxuICAgIH07XG5cbiAgICAvLyBDcmVhdGUgYSBsb2dnaW5nIHJvbGVcbiAgICAvLyBUaXBzOiBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvaXNzdWVzLzExMTAwXG4gICAgY29uc3QgYXBpR3d5TG9nUm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCAnbG9ncy1yb2xlJywge1xuICAgICAgbWFuYWdlZFBvbGljaWVzOiBbXG4gICAgICAgIGlhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZShcbiAgICAgICAgICAnc2VydmljZS1yb2xlL0FtYXpvbkFQSUdhdGV3YXlQdXNoVG9DbG91ZFdhdGNoTG9ncycsXG4gICAgICAgICksXG4gICAgICBdLFxuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2FwaWdhdGV3YXkuYW1hem9uYXdzLmNvbScpLFxuICAgIH0pO1xuICAgIGFwaUFjY2Vzc0xvZ3MuZ3JhbnRXcml0ZShhcGlHd3lMb2dSb2xlKTtcblxuICAgIC8vXG4gICAgLy8gTGV0IEFQSSBHYXRld2F5IGFjY2VwdCByZXF1ZXN0cyB1c2luZyBkb21haW5OYW1lT3JpZ2luXG4gICAgLy8gVGhhdCBpcyB0aGUgb3JpZ2luIFVSSSB0aGF0IENsb3VkRnJvbnQgdXNlcyBmb3IgdGhpcyBnYXRld2F5LlxuICAgIC8vIFRoZSBnYXRld2F5IHdpbGwgcmVmdXNlIHRoZSB0cmFmZmljIGlmIGl0IGRvZXNuJ3QgaGF2ZSB0aGVcbiAgICAvLyBkb21haW4gbmFtZSByZWdpc3RlcmVkLlxuICAgIC8vXG4gICAgaWYgKHRoaXMuX2RuQXBwc09yaWdpbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBtYXBwaW5nQXBwc0FwaXMgPSBuZXcgYXBpZ3d5LkFwaU1hcHBpbmcodGhpcywgJ2FwaS1tYXAtb3JpZ2luJywge1xuICAgICAgICBhcGk6IHRoaXMuX2h0dHBBcGksXG4gICAgICAgIGRvbWFpbk5hbWU6IHRoaXMuX2RuQXBwc09yaWdpbixcbiAgICAgICAgc3RhZ2UsXG4gICAgICB9KTtcbiAgICAgIC8vIDIwMjItMDEtMTYgLSBDREsgaXMgc3RpbGwgZ2VuZXJhdGluZyBDbG91ZEZvcm1hdGlvbiB3aXRoIG5vIGRlcGVuZGVuY3lcbiAgICAgIC8vIGJldHdlZW4gdGhlIFI1MyBSZWNvcmRTZXQgYW5kIHRoZSBNYXBwaW5nXG4gICAgICBtYXBwaW5nQXBwc0FwaXMubm9kZS5hZGREZXBlbmRlbmN5KHRoaXMuX2RuQXBwc09yaWdpbik7XG4gICAgICBpZiAocmVtb3ZhbFBvbGljeSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG1hcHBpbmdBcHBzQXBpcy5hcHBseVJlbW92YWxQb2xpY3kocmVtb3ZhbFBvbGljeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBDcmVhdGUgdGhlIG9yaWdpbiBuYW1lIGZvciBBUEkgR2F0ZXdheVxuICAgIC8vXG4gICAgaWYgKHI1M1pvbmUgIT09IHVuZGVmaW5lZCAmJiB0aGlzLl9kbkFwcHNPcmlnaW4pIHtcbiAgICAgIGNvbnN0IHJyQXBwc09yaWdpbiA9IG5ldyByNTMuQVJlY29yZCh0aGlzLCAnb3JpZ2luLWFyZWNvcmQnLCB7XG4gICAgICAgIHpvbmU6IHI1M1pvbmUsXG4gICAgICAgIHJlY29yZE5hbWU6IGRvbWFpbk5hbWVPcmlnaW4sXG4gICAgICAgIHRhcmdldDogcjUzLlJlY29yZFRhcmdldC5mcm9tQWxpYXMoXG4gICAgICAgICAgbmV3IHI1M3RhcmdldHMuQXBpR2F0ZXdheXYyRG9tYWluUHJvcGVydGllcyhcbiAgICAgICAgICAgIHRoaXMuX2RuQXBwc09yaWdpbi5yZWdpb25hbERvbWFpbk5hbWUsXG4gICAgICAgICAgICB0aGlzLl9kbkFwcHNPcmlnaW4ucmVnaW9uYWxIb3N0ZWRab25lSWQsXG4gICAgICAgICAgKSxcbiAgICAgICAgKSxcbiAgICAgIH0pO1xuICAgICAgaWYgKHJlbW92YWxQb2xpY3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByckFwcHNPcmlnaW4uYXBwbHlSZW1vdmFsUG9saWN5KHJlbW92YWxQb2xpY3kpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -1,162 +1,222 @@
1
- import * as apigwy from '@aws-cdk/aws-apigatewayv2';
2
- import * as acm from '@aws-cdk/aws-certificatemanager';
3
- import * as cf from '@aws-cdk/aws-cloudfront';
4
- import * as cforigins from '@aws-cdk/aws-cloudfront-origins';
5
- import * as r53 from '@aws-cdk/aws-route53';
6
- import * as s3 from '@aws-cdk/aws-s3';
7
- import * as cdk from '@aws-cdk/core';
1
+ import * as apigwy from '@aws-cdk/aws-apigatewayv2-alpha';
2
+ import { RemovalPolicy } from 'aws-cdk-lib';
3
+ import * as acm from 'aws-cdk-lib/aws-certificatemanager';
4
+ import * as cf from 'aws-cdk-lib/aws-cloudfront';
5
+ import * as cforigins from 'aws-cdk-lib/aws-cloudfront-origins';
6
+ import * as r53 from 'aws-cdk-lib/aws-route53';
7
+ import * as s3 from 'aws-cdk-lib/aws-s3';
8
+ import { Construct } from 'constructs';
8
9
  /**
9
- * @stability stable
10
+ * (experimental) Represents a MicroApps CloudFront.
11
+ *
12
+ * @experimental
10
13
  */
11
14
  export interface IMicroAppsCF {
12
15
  /**
13
- * @stability stable
16
+ * @experimental
14
17
  */
15
18
  readonly cloudFrontDistro: cf.Distribution;
16
19
  }
17
20
  /**
18
- * @stability stable
21
+ * (experimental) Properties to initialize an instance of `MicroAppsCF`.
22
+ *
23
+ * @experimental
19
24
  */
20
25
  export interface MicroAppsCFProps {
21
26
  /**
22
- * RemovalPolicy override for child resources.
27
+ * (experimental) RemovalPolicy override for child resources.
23
28
  *
24
29
  * Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true`
25
30
  *
26
31
  * @default - per resource default
27
- * @stability stable
32
+ * @experimental
28
33
  */
29
- readonly removalPolicy?: cdk.RemovalPolicy;
34
+ readonly removalPolicy?: RemovalPolicy;
30
35
  /**
31
- * S3 bucket origin for deployed applications.
36
+ * (experimental) S3 bucket origin for deployed applications.
32
37
  *
33
- * @stability stable
38
+ * @experimental
34
39
  */
35
40
  readonly bucketAppsOrigin: cforigins.S3Origin;
36
41
  /**
37
- * S3 bucket for CloudFront logs.
42
+ * (experimental) S3 bucket for CloudFront logs.
38
43
  *
39
- * @stability stable
44
+ * @experimental
40
45
  */
41
46
  readonly bucketLogs?: s3.IBucket;
42
47
  /**
43
- * CloudFront Distribution domain name.
48
+ * (experimental) CloudFront Distribution domain name.
44
49
  *
45
50
  * @default auto-assigned
46
- * @stability stable
51
+ * @experimental
47
52
  * @example
48
53
  *
49
54
  * apps.pwrdrvr.com
50
55
  */
51
56
  readonly domainNameEdge?: string;
52
57
  /**
53
- * API Gateway custom origin domain name.
58
+ * (experimental) API Gateway custom origin domain name.
54
59
  *
55
60
  * @default - retrieved from httpApi, if possible
56
- * @stability stable
61
+ * @experimental
57
62
  * @example
58
63
  *
59
64
  * apps.pwrdrvr.com
60
65
  */
61
66
  readonly domainNameOrigin?: string;
62
67
  /**
63
- * API Gateway v2 HTTP API for apps.
68
+ * (experimental) API Gateway v2 HTTP API for apps.
64
69
  *
65
- * @stability stable
70
+ * @experimental
66
71
  */
67
72
  readonly httpApi: apigwy.HttpApi;
68
73
  /**
69
- * Optional asset name root.
74
+ * (experimental) Optional asset name root.
70
75
  *
71
76
  * @default - resource names auto assigned
72
- * @stability stable
77
+ * @experimental
73
78
  * @example
74
79
  *
75
80
  * microapps
76
81
  */
77
82
  readonly assetNameRoot?: string;
78
83
  /**
79
- * Optional asset name suffix.
84
+ * (experimental) Optional asset name suffix.
80
85
  *
81
86
  * @default none
82
- * @stability stable
87
+ * @experimental
83
88
  * @example
84
89
  *
85
90
  * -dev-pr-12
86
91
  */
87
92
  readonly assetNameSuffix?: string;
88
93
  /**
89
- * ACM Certificate that covers `domainNameEdge` name.
94
+ * (experimental) ACM Certificate that covers `domainNameEdge` name.
90
95
  *
91
- * @stability stable
96
+ * @experimental
92
97
  */
93
98
  readonly certEdge?: acm.ICertificate;
94
99
  /**
95
- * Route53 zone in which to create optional `domainNameEdge` record.
100
+ * (experimental) Route53 zone in which to create optional `domainNameEdge` record.
96
101
  *
97
- * @stability stable
102
+ * @experimental
98
103
  */
99
104
  readonly r53Zone?: r53.IHostedZone;
100
105
  /**
101
- * Path prefix on the root of the CloudFront distribution.
106
+ * (experimental) Path prefix on the root of the CloudFront distribution.
102
107
  *
103
- * @stability stable
108
+ * @experimental
104
109
  * @example
105
110
  *
106
111
  * dev/
107
112
  */
108
113
  readonly rootPathPrefix?: string;
114
+ /**
115
+ * (experimental) Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
116
+ *
117
+ * When false API routes with a period in the path will get routed to S3.
118
+ *
119
+ * When true API routes that contain /api/ in the path will get routed to API Gateway
120
+ * even if they have a period in the path.
121
+ *
122
+ * @default true
123
+ * @experimental
124
+ */
125
+ readonly createAPIPathRoute?: boolean;
109
126
  }
110
127
  /**
111
- * @stability stable
128
+ * (experimental) Options for the `CreateAPIOriginPolicy`.
129
+ *
130
+ * @experimental
112
131
  */
113
132
  export interface CreateAPIOriginPolicyOptions {
114
133
  /**
115
- * @stability stable
134
+ * (experimental) Optional asset name root.
135
+ *
136
+ * @default - resource names auto assigned
137
+ * @experimental
138
+ * @example
139
+ *
140
+ * microapps
116
141
  */
117
142
  readonly assetNameRoot?: string;
118
143
  /**
119
- * @stability stable
144
+ * (experimental) Optional asset name suffix.
145
+ *
146
+ * @default none
147
+ * @experimental
148
+ * @example
149
+ *
150
+ * -dev-pr-12
120
151
  */
121
152
  readonly assetNameSuffix?: string;
122
153
  /**
123
- * Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will be created that prevents the Host header from being passed to the origin.
154
+ * (experimental) Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will be created that prevents the Host header from being passed to the origin.
124
155
  *
125
- * @stability stable
156
+ * @experimental
126
157
  */
127
158
  readonly domainNameEdge?: string;
128
159
  }
129
160
  /**
130
- * @stability stable
161
+ * (experimental) Options for `AddRoutes`.
162
+ *
163
+ * @experimental
131
164
  */
132
165
  export interface AddRoutesOptions {
133
166
  /**
134
- * @stability stable
167
+ * (experimental) API Gateway CloudFront Origin for API calls.
168
+ *
169
+ * @experimental
135
170
  */
136
171
  readonly apiGwyOrigin: cf.IOrigin;
137
172
  /**
138
- * @stability stable
173
+ * (experimental) S3 Bucket CloudFront Origin for static assets.
174
+ *
175
+ * @experimental
139
176
  */
140
177
  readonly bucketAppsOrigin: cforigins.S3Origin;
141
178
  /**
142
- * @stability stable
179
+ * (experimental) CloudFront Distribution to add the Behaviors (Routes) to.
180
+ *
181
+ * @experimental
143
182
  */
144
183
  readonly distro: cf.Distribution;
145
184
  /**
146
- * @stability stable
185
+ * (experimental) Origin Request policy for API Gateway Origin.
186
+ *
187
+ * @experimental
147
188
  */
148
189
  readonly apigwyOriginRequestPolicy: cf.IOriginRequestPolicy;
149
190
  /**
150
- * @stability stable
191
+ * (experimental) Path prefix on the root of the CloudFront distribution.
192
+ *
193
+ * @experimental
194
+ * @example
195
+ *
196
+ * dev/
151
197
  */
152
198
  readonly rootPathPrefix?: string;
199
+ /**
200
+ * (experimental) Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
201
+ *
202
+ * When false API routes with a period in the path will get routed to S3.
203
+ *
204
+ * When true API routes that contain /api/ in the path will get routed to API Gateway
205
+ * even if they have a period in the path.
206
+ *
207
+ * @default true
208
+ * @experimental
209
+ */
210
+ readonly createAPIPathRoute?: boolean;
153
211
  }
154
212
  /**
155
- * @stability stable
213
+ * (experimental) Create a new MicroApps CloudFront Distribution.
214
+ *
215
+ * @experimental
156
216
  */
157
- export declare class MicroAppsCF extends cdk.Construct implements IMicroAppsCF {
217
+ export declare class MicroAppsCF extends Construct implements IMicroAppsCF {
158
218
  /**
159
- * Create or get the origin request policy.
219
+ * (experimental) Create or get the origin request policy.
160
220
  *
161
221
  * If a custom domain name is NOT used for the origin then a policy
162
222
  * will be created.
@@ -165,24 +225,22 @@ export declare class MicroAppsCF extends cdk.Construct implements IMicroAppsCF {
165
225
  * policy will be returned. This policy passes the Host header to the
166
226
  * origin, which is fine when using a custom domain name on the origin.
167
227
  *
168
- * @stability stable
228
+ * @experimental
169
229
  */
170
- static createAPIOriginPolicy(scope: cdk.Construct, props: CreateAPIOriginPolicyOptions): cf.IOriginRequestPolicy;
230
+ static createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicyOptions): cf.IOriginRequestPolicy;
171
231
  /**
172
- * Add API Gateway and S3 routes to an existing CloudFront Distribution.
232
+ * (experimental) Add API Gateway and S3 routes to an existing CloudFront Distribution.
173
233
  *
174
- * @stability stable
234
+ * @experimental
175
235
  */
176
- static addRoutes(_scope: cdk.Construct, props: AddRoutesOptions): void;
236
+ static addRoutes(_scope: Construct, props: AddRoutesOptions): void;
177
237
  private _cloudFrontDistro;
178
238
  /**
179
- * @stability stable
239
+ * @experimental
180
240
  */
181
241
  get cloudFrontDistro(): cf.Distribution;
182
242
  /**
183
- * MicroApps - Create just CloudFront resources.
184
- *
185
- * @stability stable
243
+ * @experimental
186
244
  */
187
- constructor(scope: cdk.Construct, id: string, props: MicroAppsCFProps);
245
+ constructor(scope: Construct, id: string, props: MicroAppsCFProps);
188
246
  }