@btc-embedded/cdk-extensions 0.8.4 → 0.9.1

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 (68) hide show
  1. package/.jsii +2606 -468
  2. package/API.md +5443 -1563
  3. package/CHANGELOG.md +42 -0
  4. package/lib/constructs/EventPipe.d.ts +119 -0
  5. package/lib/constructs/EventPipe.js +103 -0
  6. package/lib/constructs/S3Bucket.d.ts +10 -0
  7. package/lib/constructs/S3Bucket.js +39 -0
  8. package/lib/constructs/SecureRestApi.d.ts +3 -0
  9. package/lib/constructs/SecureRestApi.js +5 -2
  10. package/lib/constructs/SecureRestApiV2.d.ts +32 -0
  11. package/lib/constructs/SecureRestApiV2.js +64 -0
  12. package/lib/constructs/index.d.ts +3 -0
  13. package/lib/constructs/index.js +4 -1
  14. package/lib/extensions/ApiGatewayExtension.d.ts +1 -0
  15. package/lib/extensions/ApiGatewayExtension.js +3 -2
  16. package/lib/extensions/ApplicationLoadBalancerExtension.d.ts +3 -0
  17. package/lib/extensions/ApplicationLoadBalancerExtension.js +5 -2
  18. package/lib/extensions/ApplicationLoadBalancerExtensionV2.d.ts +24 -0
  19. package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +79 -0
  20. package/lib/extensions/CloudMapExtension.js +1 -1
  21. package/lib/extensions/DeactivatableServiceExtension.d.ts +10 -0
  22. package/lib/extensions/DeactivatableServiceExtension.js +32 -0
  23. package/lib/extensions/DocumentDbAccessExtension.js +1 -1
  24. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  25. package/lib/extensions/ExtraContainerExtension.js +1 -1
  26. package/lib/extensions/HTTPApiExtension.d.ts +44 -0
  27. package/lib/extensions/HTTPApiExtension.js +116 -0
  28. package/lib/extensions/LogExtension.js +1 -1
  29. package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
  30. package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
  31. package/lib/extensions/OpenTelemetryExtension.js +1 -1
  32. package/lib/extensions/PostgresDbAccessExtension.js +1 -1
  33. package/lib/extensions/SharedVolumeExtension.js +1 -1
  34. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  35. package/lib/extensions/index.d.ts +3 -0
  36. package/lib/extensions/index.js +4 -1
  37. package/lib/platform/ApiGateway.d.ts +1 -1
  38. package/lib/platform/ApiGateway.js +3 -3
  39. package/lib/platform/ApiGatewayV2.d.ts +28 -0
  40. package/lib/platform/ApiGatewayV2.js +55 -0
  41. package/lib/platform/ApiUserPoolClient.d.ts +32 -0
  42. package/lib/platform/ApiUserPoolClient.js +47 -0
  43. package/lib/platform/ApplicationLoadBalancer.d.ts +3 -0
  44. package/lib/platform/ApplicationLoadBalancer.js +5 -2
  45. package/lib/platform/ApplicationLoadBalancerV2.d.ts +58 -0
  46. package/lib/platform/ApplicationLoadBalancerV2.js +97 -0
  47. package/lib/platform/ApplicationUserPoolClient.d.ts +51 -0
  48. package/lib/platform/ApplicationUserPoolClient.js +66 -0
  49. package/lib/platform/CognitoUserPool.d.ts +14 -0
  50. package/lib/platform/CognitoUserPool.js +28 -0
  51. package/lib/platform/DefaultUserPoolClients.d.ts +1 -0
  52. package/lib/platform/DefaultUserPoolClients.js +3 -2
  53. package/lib/platform/DocumentDB.js +1 -1
  54. package/lib/platform/PrivateDnsNamespace.js +1 -1
  55. package/lib/platform/ResourceServer.d.ts +34 -0
  56. package/lib/platform/ResourceServer.js +43 -0
  57. package/lib/platform/Vpc.js +1 -1
  58. package/lib/platform/index.d.ts +6 -0
  59. package/lib/platform/index.js +7 -1
  60. package/lib/utils/ImportValue.js +2 -1
  61. package/lib/utils/configFileParsing.d.ts +7 -0
  62. package/lib/utils/configFileParsing.js +31 -2
  63. package/lib/utils/deactivatedConstruct.d.ts +6 -0
  64. package/lib/utils/deactivatedConstruct.js +25 -0
  65. package/lib/utils/index.d.ts +1 -0
  66. package/lib/utils/index.js +2 -1
  67. package/package.json +2 -1
  68. package/rfcs/002-developer-stacks.md +268 -0
@@ -0,0 +1,51 @@
1
+ import { IUserPool, IUserPoolClient } from "aws-cdk-lib/aws-cognito";
2
+ import { Construct } from "constructs";
3
+ import { CognitoUserPool } from "./CognitoUserPool";
4
+ import { ResourceServer } from "./ResourceServer";
5
+ export interface ApplicationUserPoolClientProps {
6
+ /**
7
+ * The user pool which should be attached to the clients.
8
+ */
9
+ readonly cognitoUserPool: CognitoUserPool;
10
+ /**
11
+ * The fully qualified domain name which the ALB will listen to.
12
+ *
13
+ * This setting is used to configure the correct callback URL for user pool
14
+ * client such that the ALB can perform authentication.
15
+ *
16
+ */
17
+ readonly fqdn: string;
18
+ /**
19
+ * The resource server associated with the user pool client.
20
+ * This is used to define OAuth scopes for the client.
21
+ */
22
+ readonly resourceServer: ResourceServer;
23
+ /**
24
+ * Specify valid logout URLs which should be added to the frontend user pool client.
25
+ */
26
+ readonly logoutUrls?: string[];
27
+ /**
28
+ * Specify additional callback URLs which the frontend uses for OIDC authentication.
29
+ *
30
+ */
31
+ readonly callbackUrls?: string[];
32
+ /**
33
+ * Specify additional user pool identity providers to enable federated login.
34
+ */
35
+ readonly additonalUserPoolIdentityProviders?: string[];
36
+ }
37
+ /**
38
+ * A construct that creates a Cognito User Pool Client for frontend and API access.
39
+ *
40
+ * This construct:
41
+ * - Creates a user pool client with authorization code grant flow enabled.
42
+ * - Configures OAuth scopes, callback URLs, and logout URLs for the client.
43
+ * - Supports additional identity providers for federated login.
44
+ * - Exports the client ID as a CloudFormation output for use in other constructs.
45
+ */
46
+ export declare class ApplicationUserPoolClient extends Construct {
47
+ client: IUserPoolClient;
48
+ private cognitoUserPool;
49
+ constructor(scope: Construct, id: string, props: ApplicationUserPoolClientProps);
50
+ get userPool(): IUserPool;
51
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ApplicationUserPoolClient = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
7
+ const constructs_1 = require("constructs");
8
+ const utils_1 = require("../utils");
9
+ /**
10
+ * A construct that creates a Cognito User Pool Client for frontend and API access.
11
+ *
12
+ * This construct:
13
+ * - Creates a user pool client with authorization code grant flow enabled.
14
+ * - Configures OAuth scopes, callback URLs, and logout URLs for the client.
15
+ * - Supports additional identity providers for federated login.
16
+ * - Exports the client ID as a CloudFormation output for use in other constructs.
17
+ */
18
+ class ApplicationUserPoolClient extends constructs_1.Construct {
19
+ constructor(scope, id, props) {
20
+ super(scope, id);
21
+ this.cognitoUserPool = props.cognitoUserPool;
22
+ const providerNames = props.additonalUserPoolIdentityProviders?.map((name) => aws_cognito_1.UserPoolClientIdentityProvider.custom(name)) ?? [];
23
+ const callbackUrls = props.callbackUrls ?? [];
24
+ this.client = new aws_cognito_1.UserPoolClient(this, "FrontendUserPoolClient", {
25
+ userPool: props.cognitoUserPool.userPool,
26
+ // Required minimal configuration for use with an ELB
27
+ generateSecret: true,
28
+ authFlows: {
29
+ userPassword: true,
30
+ },
31
+ oAuth: {
32
+ flows: {
33
+ authorizationCodeGrant: true,
34
+ },
35
+ scopes: [
36
+ aws_cognito_1.OAuthScope.OPENID,
37
+ aws_cognito_1.OAuthScope.PROFILE,
38
+ ...props.resourceServer.createOAuthScopes(),
39
+ ],
40
+ callbackUrls: [
41
+ // add callback URL for ALB
42
+ `https://${props.fqdn}/oauth2/idpresponse`,
43
+ ...callbackUrls,
44
+ ],
45
+ logoutUrls: props.logoutUrls,
46
+ },
47
+ supportedIdentityProviders: [
48
+ aws_cognito_1.UserPoolClientIdentityProvider.COGNITO,
49
+ ...providerNames,
50
+ ],
51
+ });
52
+ const exportValue = (0, utils_1.createExporter)(this, "cognito-v2");
53
+ exportValue({
54
+ name: "Cognito Application Client Id",
55
+ key: "application-client-id",
56
+ value: this.client.userPoolClientId,
57
+ });
58
+ }
59
+ get userPool() {
60
+ return this.cognitoUserPool.userPool;
61
+ }
62
+ }
63
+ exports.ApplicationUserPoolClient = ApplicationUserPoolClient;
64
+ _a = JSII_RTTI_SYMBOL_1;
65
+ ApplicationUserPoolClient[_a] = { fqn: "@btc-embedded/cdk-extensions.ApplicationUserPoolClient", version: "0.9.1" };
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb25Vc2VyUG9vbENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9BcHBsaWNhdGlvblVzZXJQb29sQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseURBTWlDO0FBQ2pDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUEyQzFDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSx5QkFBMEIsU0FBUSxzQkFBUztJQUd0RCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFxQztRQUVyQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUM3QyxNQUFNLGFBQWEsR0FDakIsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3JELDRDQUE4QixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDNUMsSUFBSSxFQUFFLENBQUM7UUFFVixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQztRQUU5QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksNEJBQWMsQ0FBQyxJQUFJLEVBQUUsd0JBQXdCLEVBQUU7WUFDL0QsUUFBUSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsUUFBUTtZQUV4QyxxREFBcUQ7WUFDckQsY0FBYyxFQUFFLElBQUk7WUFDcEIsU0FBUyxFQUFFO2dCQUNULFlBQVksRUFBRSxJQUFJO2FBQ25CO1lBRUQsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxzQkFBc0IsRUFBRSxJQUFJO2lCQUM3QjtnQkFDRCxNQUFNLEVBQUU7b0JBQ04sd0JBQVUsQ0FBQyxNQUFNO29CQUNqQix3QkFBVSxDQUFDLE9BQU87b0JBQ2xCLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRTtpQkFDNUM7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLDJCQUEyQjtvQkFDM0IsV0FBVyxLQUFLLENBQUMsSUFBSSxxQkFBcUI7b0JBQzFDLEdBQUcsWUFBWTtpQkFDaEI7Z0JBQ0QsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2FBQzdCO1lBQ0QsMEJBQTBCLEVBQUU7Z0JBQzFCLDRDQUE4QixDQUFDLE9BQU87Z0JBQ3RDLEdBQUcsYUFBYTthQUNqQjtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFFdkQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLCtCQUErQjtZQUNyQyxHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQjtTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUN2QyxDQUFDOztBQTNESCw4REE0REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJVXNlclBvb2wsXG4gIElVc2VyUG9vbENsaWVudCxcbiAgT0F1dGhTY29wZSxcbiAgVXNlclBvb2xDbGllbnQsXG4gIFVzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlcixcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2duaXRvXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwb3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHNcIjtcbmltcG9ydCB7IENvZ25pdG9Vc2VyUG9vbCB9IGZyb20gXCIuL0NvZ25pdG9Vc2VyUG9vbFwiO1xuaW1wb3J0IHsgUmVzb3VyY2VTZXJ2ZXIgfSBmcm9tIFwiLi9SZXNvdXJjZVNlcnZlclwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uVXNlclBvb2xDbGllbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdXNlciBwb29sIHdoaWNoIHNob3VsZCBiZSBhdHRhY2hlZCB0byB0aGUgY2xpZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IGNvZ25pdG9Vc2VyUG9vbDogQ29nbml0b1VzZXJQb29sO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbHkgcXVhbGlmaWVkIGRvbWFpbiBuYW1lIHdoaWNoIHRoZSBBTEIgd2lsbCBsaXN0ZW4gdG8uXG4gICAqXG4gICAqIFRoaXMgc2V0dGluZyBpcyB1c2VkIHRvIGNvbmZpZ3VyZSB0aGUgY29ycmVjdCBjYWxsYmFjayBVUkwgZm9yIHVzZXIgcG9vbFxuICAgKiBjbGllbnQgc3VjaCB0aGF0IHRoZSBBTEIgY2FuIHBlcmZvcm0gYXV0aGVudGljYXRpb24uXG4gICAqXG4gICAqL1xuXG4gIHJlYWRvbmx5IGZxZG46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHJlc291cmNlIHNlcnZlciBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgcG9vbCBjbGllbnQuXG4gICAqIFRoaXMgaXMgdXNlZCB0byBkZWZpbmUgT0F1dGggc2NvcGVzIGZvciB0aGUgY2xpZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VTZXJ2ZXI6IFJlc291cmNlU2VydmVyO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IHZhbGlkIGxvZ291dCBVUkxzIHdoaWNoIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZnJvbnRlbmQgdXNlciBwb29sIGNsaWVudC5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ291dFVybHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogU3BlY2lmeSBhZGRpdGlvbmFsIGNhbGxiYWNrIFVSTHMgd2hpY2ggdGhlIGZyb250ZW5kIHVzZXMgZm9yIE9JREMgYXV0aGVudGljYXRpb24uXG4gICAqXG4gICAqL1xuICByZWFkb25seSBjYWxsYmFja1VybHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogU3BlY2lmeSBhZGRpdGlvbmFsIHVzZXIgcG9vbCBpZGVudGl0eSBwcm92aWRlcnMgdG8gZW5hYmxlIGZlZGVyYXRlZCBsb2dpbi5cbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0b25hbFVzZXJQb29sSWRlbnRpdHlQcm92aWRlcnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBBIGNvbnN0cnVjdCB0aGF0IGNyZWF0ZXMgYSBDb2duaXRvIFVzZXIgUG9vbCBDbGllbnQgZm9yIGZyb250ZW5kIGFuZCBBUEkgYWNjZXNzLlxuICpcbiAqIFRoaXMgY29uc3RydWN0OlxuICogLSBDcmVhdGVzIGEgdXNlciBwb29sIGNsaWVudCB3aXRoIGF1dGhvcml6YXRpb24gY29kZSBncmFudCBmbG93IGVuYWJsZWQuXG4gKiAtIENvbmZpZ3VyZXMgT0F1dGggc2NvcGVzLCBjYWxsYmFjayBVUkxzLCBhbmQgbG9nb3V0IFVSTHMgZm9yIHRoZSBjbGllbnQuXG4gKiAtIFN1cHBvcnRzIGFkZGl0aW9uYWwgaWRlbnRpdHkgcHJvdmlkZXJzIGZvciBmZWRlcmF0ZWQgbG9naW4uXG4gKiAtIEV4cG9ydHMgdGhlIGNsaWVudCBJRCBhcyBhIENsb3VkRm9ybWF0aW9uIG91dHB1dCBmb3IgdXNlIGluIG90aGVyIGNvbnN0cnVjdHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvblVzZXJQb29sQ2xpZW50IGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIGNsaWVudDogSVVzZXJQb29sQ2xpZW50O1xuICBwcml2YXRlIGNvZ25pdG9Vc2VyUG9vbDogQ29nbml0b1VzZXJQb29sO1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IEFwcGxpY2F0aW9uVXNlclBvb2xDbGllbnRQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLmNvZ25pdG9Vc2VyUG9vbCA9IHByb3BzLmNvZ25pdG9Vc2VyUG9vbDtcbiAgICBjb25zdCBwcm92aWRlck5hbWVzID1cbiAgICAgIHByb3BzLmFkZGl0b25hbFVzZXJQb29sSWRlbnRpdHlQcm92aWRlcnM/Lm1hcCgobmFtZSkgPT5cbiAgICAgICAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLmN1c3RvbShuYW1lKSxcbiAgICAgICkgPz8gW107XG5cbiAgICBjb25zdCBjYWxsYmFja1VybHMgPSBwcm9wcy5jYWxsYmFja1VybHMgPz8gW107XG5cbiAgICB0aGlzLmNsaWVudCA9IG5ldyBVc2VyUG9vbENsaWVudCh0aGlzLCBcIkZyb250ZW5kVXNlclBvb2xDbGllbnRcIiwge1xuICAgICAgdXNlclBvb2w6IHByb3BzLmNvZ25pdG9Vc2VyUG9vbC51c2VyUG9vbCxcblxuICAgICAgLy8gUmVxdWlyZWQgbWluaW1hbCBjb25maWd1cmF0aW9uIGZvciB1c2Ugd2l0aCBhbiBFTEJcbiAgICAgIGdlbmVyYXRlU2VjcmV0OiB0cnVlLFxuICAgICAgYXV0aEZsb3dzOiB7XG4gICAgICAgIHVzZXJQYXNzd29yZDogdHJ1ZSxcbiAgICAgIH0sXG5cbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgYXV0aG9yaXphdGlvbkNvZGVHcmFudDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NvcGVzOiBbXG4gICAgICAgICAgT0F1dGhTY29wZS5PUEVOSUQsXG4gICAgICAgICAgT0F1dGhTY29wZS5QUk9GSUxFLFxuICAgICAgICAgIC4uLnByb3BzLnJlc291cmNlU2VydmVyLmNyZWF0ZU9BdXRoU2NvcGVzKCksXG4gICAgICAgIF0sXG4gICAgICAgIGNhbGxiYWNrVXJsczogW1xuICAgICAgICAgIC8vIGFkZCBjYWxsYmFjayBVUkwgZm9yIEFMQlxuICAgICAgICAgIGBodHRwczovLyR7cHJvcHMuZnFkbn0vb2F1dGgyL2lkcHJlc3BvbnNlYCxcbiAgICAgICAgICAuLi5jYWxsYmFja1VybHMsXG4gICAgICAgIF0sXG4gICAgICAgIGxvZ291dFVybHM6IHByb3BzLmxvZ291dFVybHMsXG4gICAgICB9LFxuICAgICAgc3VwcG9ydGVkSWRlbnRpdHlQcm92aWRlcnM6IFtcbiAgICAgICAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLkNPR05JVE8sXG4gICAgICAgIC4uLnByb3ZpZGVyTmFtZXMsXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZXhwb3J0VmFsdWUgPSBjcmVhdGVFeHBvcnRlcih0aGlzLCBcImNvZ25pdG8tdjJcIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkNvZ25pdG8gQXBwbGljYXRpb24gQ2xpZW50IElkXCIsXG4gICAgICBrZXk6IFwiYXBwbGljYXRpb24tY2xpZW50LWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5jbGllbnQudXNlclBvb2xDbGllbnRJZCxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCB1c2VyUG9vbCgpOiBJVXNlclBvb2wge1xuICAgIHJldHVybiB0aGlzLmNvZ25pdG9Vc2VyUG9vbC51c2VyUG9vbDtcbiAgfVxufVxuIl19
@@ -0,0 +1,14 @@
1
+ import { IUserPool } from "aws-cdk-lib/aws-cognito";
2
+ import { Construct } from "constructs";
3
+ export interface CognitoUserPoolProps {
4
+ /**
5
+ * The ID of the Cognito User Pool to be imported.
6
+ */
7
+ readonly userPoolId: string;
8
+ }
9
+ export declare class CognitoUserPool extends Construct {
10
+ userPool: IUserPool;
11
+ private readonly OUTPUT_PARAMETER_PREFIX;
12
+ constructor(scope: Construct, id: string, props: CognitoUserPoolProps);
13
+ private exposeParameters;
14
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.CognitoUserPool = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
7
+ const constructs_1 = require("constructs");
8
+ const utils_1 = require("../utils");
9
+ class CognitoUserPool extends constructs_1.Construct {
10
+ constructor(scope, id, props) {
11
+ super(scope, id);
12
+ this.OUTPUT_PARAMETER_PREFIX = "cognito-v2";
13
+ this.userPool = aws_cognito_1.UserPool.fromUserPoolId(this, "ImportedUserPool", props.userPoolId);
14
+ this.exposeParameters();
15
+ }
16
+ exposeParameters() {
17
+ const exportValue = (0, utils_1.createExporter)(this, this.OUTPUT_PARAMETER_PREFIX);
18
+ exportValue({
19
+ name: "Cognito User Pool Id",
20
+ key: "user-pool-id",
21
+ value: this.userPool.userPoolId,
22
+ });
23
+ }
24
+ }
25
+ exports.CognitoUserPool = CognitoUserPool;
26
+ _a = JSII_RTTI_SYMBOL_1;
27
+ CognitoUserPool[_a] = { fqn: "@btc-embedded/cdk-extensions.CognitoUserPool", version: "0.9.1" };
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29nbml0b1VzZXJQb29sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BsYXRmb3JtL0NvZ25pdG9Vc2VyUG9vbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlEQUE4RDtBQUM5RCwyQ0FBdUM7QUFDdkMsb0NBQTBDO0FBUTFDLE1BQWEsZUFBZ0IsU0FBUSxzQkFBUztJQUk1QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTJCO1FBQ25FLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFIRiw0QkFBdUIsR0FBRyxZQUFZLENBQUM7UUFJdEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxzQkFBUSxDQUFDLGNBQWMsQ0FDckMsSUFBSSxFQUNKLGtCQUFrQixFQUNsQixLQUFLLENBQUMsVUFBVSxDQUNMLENBQUM7UUFDZCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFFdkUsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLHNCQUFzQjtZQUM1QixHQUFHLEVBQUUsY0FBYztZQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdEJILDBDQXVCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElVc2VyUG9vbCwgVXNlclBvb2wgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNvZ25pdG9cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBjcmVhdGVFeHBvcnRlciB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvZ25pdG9Vc2VyUG9vbFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQ29nbml0byBVc2VyIFBvb2wgdG8gYmUgaW1wb3J0ZWQuXG4gICAqL1xuICByZWFkb25seSB1c2VyUG9vbElkOiBzdHJpbmc7XG59XG5leHBvcnQgY2xhc3MgQ29nbml0b1VzZXJQb29sIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHVzZXJQb29sOiBJVXNlclBvb2w7XG4gIHByaXZhdGUgcmVhZG9ubHkgT1VUUFVUX1BBUkFNRVRFUl9QUkVGSVggPSBcImNvZ25pdG8tdjJcIjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ29nbml0b1VzZXJQb29sUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMudXNlclBvb2wgPSBVc2VyUG9vbC5mcm9tVXNlclBvb2xJZChcbiAgICAgIHRoaXMsXG4gICAgICBcIkltcG9ydGVkVXNlclBvb2xcIixcbiAgICAgIHByb3BzLnVzZXJQb29sSWQsXG4gICAgKSBhcyBVc2VyUG9vbDtcbiAgICB0aGlzLmV4cG9zZVBhcmFtZXRlcnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgZXhwb3NlUGFyYW1ldGVycygpIHtcbiAgICBjb25zdCBleHBvcnRWYWx1ZSA9IGNyZWF0ZUV4cG9ydGVyKHRoaXMsIHRoaXMuT1VUUFVUX1BBUkFNRVRFUl9QUkVGSVgpO1xuXG4gICAgZXhwb3J0VmFsdWUoe1xuICAgICAgbmFtZTogXCJDb2duaXRvIFVzZXIgUG9vbCBJZFwiLFxuICAgICAga2V5OiBcInVzZXItcG9vbC1pZFwiLFxuICAgICAgdmFsdWU6IHRoaXMudXNlclBvb2wudXNlclBvb2xJZCxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -29,6 +29,7 @@ export interface DefaultUserPoolClientsProps {
29
29
  }
30
30
  /**
31
31
  * Create default user pool clients for the frontend and API access.
32
+ * @deprecated Use {@link ApiUserPoolClient} or {@link ApplicationUserPoolClient} instead
32
33
  */
33
34
  export declare class DefaultUserPoolClients extends Construct {
34
35
  frontendClient: IUserPoolClient;
@@ -8,6 +8,7 @@ const constructs_1 = require("constructs");
8
8
  const utils_1 = require("../utils");
9
9
  /**
10
10
  * Create default user pool clients for the frontend and API access.
11
+ * @deprecated Use {@link ApiUserPoolClient} or {@link ApplicationUserPoolClient} instead
11
12
  */
12
13
  class DefaultUserPoolClients extends constructs_1.Construct {
13
14
  constructor(scope, id, props) {
@@ -75,5 +76,5 @@ class DefaultUserPoolClients extends constructs_1.Construct {
75
76
  }
76
77
  exports.DefaultUserPoolClients = DefaultUserPoolClients;
77
78
  _a = JSII_RTTI_SYMBOL_1;
78
- DefaultUserPoolClients[_a] = { fqn: "@btc-embedded/cdk-extensions.DefaultUserPoolClients", version: "0.8.4" };
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFVzZXJQb29sQ2xpZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9EZWZhdWx0VXNlclBvb2xDbGllbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseURBT2lDO0FBQ2pDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFrQzFDOztHQUVHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxzQkFBUztJQUluRCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sY0FBYyxHQUFHLElBQUksaUNBQW1CLENBQUM7WUFDN0MsU0FBUyxFQUFFLFlBQVk7WUFDdkIsZ0JBQWdCLEVBQUUsNEJBQTRCO1NBQy9DLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLEVBQUU7WUFDdkUsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTO1lBQzFCLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQztTQUN6QixDQUFDLENBQUM7UUFFSCxNQUFNLGFBQWEsR0FDakIsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3JELDRDQUE4QixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDNUMsSUFBSSxFQUFFLENBQUM7UUFFVixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQztRQUU5QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksNEJBQWMsQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLEVBQUU7WUFDakUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLEtBQUssRUFBRTtnQkFDTCxLQUFLLEVBQUU7b0JBQ0wsaUJBQWlCLEVBQUUsSUFBSTtpQkFDeEI7Z0JBQ0QsTUFBTSxFQUFFLENBQUMsd0JBQVUsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2FBQzVEO1lBQ0QsMEJBQTBCLEVBQUU7Z0JBQzFCLDRDQUE4QixDQUFDLE9BQU87Z0JBQ3RDLEdBQUcsYUFBYTthQUNqQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSx3QkFBd0IsRUFBRTtZQUN2RSxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFFeEIscURBQXFEO1lBQ3JELGNBQWMsRUFBRSxJQUFJO1lBQ3BCLFNBQVMsRUFBRTtnQkFDVCxZQUFZLEVBQUUsSUFBSTthQUNuQjtZQUVELEtBQUssRUFBRTtnQkFDTCxLQUFLLEVBQUU7b0JBQ0wsc0JBQXNCLEVBQUUsSUFBSTtpQkFDN0I7Z0JBQ0QsTUFBTSxFQUFFLENBQUMsd0JBQVUsQ0FBQyxNQUFNLEVBQUUsd0JBQVUsQ0FBQyxPQUFPLENBQUM7Z0JBQy9DLFlBQVksRUFBRTtvQkFDWiwyQkFBMkI7b0JBQzNCLFdBQVcsS0FBSyxDQUFDLElBQUkscUJBQXFCO29CQUMxQyxHQUFHLFlBQVk7aUJBQ2hCO2dCQUNELFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTthQUM3QjtZQUNELDBCQUEwQixFQUFFO2dCQUMxQiw0Q0FBOEIsQ0FBQyxPQUFPO2dCQUN0QyxHQUFHLGFBQWE7YUFDakI7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLFdBQVcsR0FBRyxJQUFBLHNCQUFjLEVBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRXBELFdBQVcsQ0FBQztZQUNWLElBQUksRUFBRSwrQkFBK0I7WUFDckMsR0FBRyxFQUFFLHVCQUF1QjtZQUM1QixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0I7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLDZCQUE2QjtZQUNuQyxHQUFHLEVBQUUscUJBQXFCO1lBQzFCLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQjtTQUM1QyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQW5GSCx3REFvRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJVXNlclBvb2wsXG4gIElVc2VyUG9vbENsaWVudCxcbiAgT0F1dGhTY29wZSxcbiAgUmVzb3VyY2VTZXJ2ZXJTY29wZSxcbiAgVXNlclBvb2xDbGllbnQsXG4gIFVzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlcixcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jb2duaXRvXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwb3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEZWZhdWx0VXNlclBvb2xDbGllbnRzUHJvcHMge1xuICAvKipcbiAgICogVGhlIHVzZXIgcG9vbCB3aGljaCBzaG91bGQgYmUgYXR0YWNoZWQgdG8gdGhlIGNsaWVudHMuXG4gICAqL1xuICByZWFkb25seSB1c2VyUG9vbDogSVVzZXJQb29sO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbHkgcXVhbGlmaWVkIGRvbWFpbiBuYW1lIHdoaWNoIHRoZSBBTEIgd2lsbCBsaXN0ZW4gdG8uXG4gICAqXG4gICAqIFRoaXMgc2V0dGluZyBpcyB1c2VkIHRvIGNvbmZpZ3VyZSB0aGUgY29ycmVjdCBjYWxsYmFjayBVUkwgZm9yIHVzZXIgcG9vbFxuICAgKiBjbGllbnQgc3VjaCB0aGF0IHRoZSBBTEIgY2FuIHBlcmZvcm0gYXV0aGVudGljYXRpb24uXG4gICAqXG4gICAqL1xuICByZWFkb25seSBmcWRuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgdmFsaWQgbG9nb3V0IFVSTHMgd2hpY2ggc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBmcm9udGVuZCB1c2VyIHBvb2wgY2xpZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgbG9nb3V0VXJscz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGFkZGl0aW9uYWwgY2FsbGJhY2sgVVJMcyB3aGljaCB0aGUgZnJvbnRlbmQgdXNlcyBmb3IgT0lEQyBhdXRoZW50aWNhdGlvbi5cbiAgICpcbiAgICovXG4gIHJlYWRvbmx5IGNhbGxiYWNrVXJscz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IGFkZGl0aW9uYWwgdXNlciBwb29sIGlkZW50aXR5IHByb3ZpZGVycyB0byBlbmFibGUgZmVkZXJhdGVkIGxvZ2luLlxuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRvbmFsVXNlclBvb2xJZGVudGl0eVByb3ZpZGVycz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENyZWF0ZSBkZWZhdWx0IHVzZXIgcG9vbCBjbGllbnRzIGZvciB0aGUgZnJvbnRlbmQgYW5kIEFQSSBhY2Nlc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBEZWZhdWx0VXNlclBvb2xDbGllbnRzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIGZyb250ZW5kQ2xpZW50OiBJVXNlclBvb2xDbGllbnQ7XG4gIHB1YmxpYyBhcGlDbGllbnQ6IElVc2VyUG9vbENsaWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IERlZmF1bHRVc2VyUG9vbENsaWVudHNQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGFwaUFjY2Vzc1Njb3BlID0gbmV3IFJlc291cmNlU2VydmVyU2NvcGUoe1xuICAgICAgc2NvcGVOYW1lOiBcImFwaV9hY2Nlc3NcIixcbiAgICAgIHNjb3BlRGVzY3JpcHRpb246IFwiUkVTVCBBUEkgZnVsbCBhY2Nlc3Mgc2NvcGVcIixcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlcnZlciA9IHByb3BzLnVzZXJQb29sLmFkZFJlc291cmNlU2VydmVyKFwiUkVTVEFQSVJlc291cmNlU2VydmVyXCIsIHtcbiAgICAgIGlkZW50aWZpZXI6IGAke2lkfVJFU1RBUElgLFxuICAgICAgc2NvcGVzOiBbYXBpQWNjZXNzU2NvcGVdLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcHJvdmlkZXJOYW1lcyA9XG4gICAgICBwcm9wcy5hZGRpdG9uYWxVc2VyUG9vbElkZW50aXR5UHJvdmlkZXJzPy5tYXAoKG5hbWUpID0+XG4gICAgICAgIFVzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlci5jdXN0b20obmFtZSksXG4gICAgICApID8/IFtdO1xuXG4gICAgY29uc3QgY2FsbGJhY2tVcmxzID0gcHJvcHMuY2FsbGJhY2tVcmxzID8/IFtdO1xuXG4gICAgdGhpcy5hcGlDbGllbnQgPSBuZXcgVXNlclBvb2xDbGllbnQodGhpcywgXCJSRVNUQVBJVXNlclBvb2xDbGllbnRcIiwge1xuICAgICAgdXNlclBvb2w6IHByb3BzLnVzZXJQb29sLFxuICAgICAgZ2VuZXJhdGVTZWNyZXQ6IHRydWUsXG4gICAgICBvQXV0aDoge1xuICAgICAgICBmbG93czoge1xuICAgICAgICAgIGNsaWVudENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBzY29wZXM6IFtPQXV0aFNjb3BlLnJlc291cmNlU2VydmVyKHNlcnZlciwgYXBpQWNjZXNzU2NvcGUpXSxcbiAgICAgIH0sXG4gICAgICBzdXBwb3J0ZWRJZGVudGl0eVByb3ZpZGVyczogW1xuICAgICAgICBVc2VyUG9vbENsaWVudElkZW50aXR5UHJvdmlkZXIuQ09HTklUTyxcbiAgICAgICAgLi4ucHJvdmlkZXJOYW1lcyxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmZyb250ZW5kQ2xpZW50ID0gbmV3IFVzZXJQb29sQ2xpZW50KHRoaXMsIFwiRnJvbnRlbmRVc2VyUG9vbENsaWVudFwiLCB7XG4gICAgICB1c2VyUG9vbDogcHJvcHMudXNlclBvb2wsXG5cbiAgICAgIC8vIFJlcXVpcmVkIG1pbmltYWwgY29uZmlndXJhdGlvbiBmb3IgdXNlIHdpdGggYW4gRUxCXG4gICAgICBnZW5lcmF0ZVNlY3JldDogdHJ1ZSxcbiAgICAgIGF1dGhGbG93czoge1xuICAgICAgICB1c2VyUGFzc3dvcmQ6IHRydWUsXG4gICAgICB9LFxuXG4gICAgICBvQXV0aDoge1xuICAgICAgICBmbG93czoge1xuICAgICAgICAgIGF1dGhvcml6YXRpb25Db2RlR3JhbnQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHNjb3BlczogW09BdXRoU2NvcGUuT1BFTklELCBPQXV0aFNjb3BlLlBST0ZJTEVdLFxuICAgICAgICBjYWxsYmFja1VybHM6IFtcbiAgICAgICAgICAvLyBhZGQgY2FsbGJhY2sgVVJMIGZvciBBTEJcbiAgICAgICAgICBgaHR0cHM6Ly8ke3Byb3BzLmZxZG59L29hdXRoMi9pZHByZXNwb25zZWAsXG4gICAgICAgICAgLi4uY2FsbGJhY2tVcmxzLFxuICAgICAgICBdLFxuICAgICAgICBsb2dvdXRVcmxzOiBwcm9wcy5sb2dvdXRVcmxzLFxuICAgICAgfSxcbiAgICAgIHN1cHBvcnRlZElkZW50aXR5UHJvdmlkZXJzOiBbXG4gICAgICAgIFVzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlci5DT0dOSVRPLFxuICAgICAgICAuLi5wcm92aWRlck5hbWVzLFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJjb2duaXRvXCIpO1xuXG4gICAgZXhwb3J0VmFsdWUoe1xuICAgICAgbmFtZTogXCJDb2duaXRvIEZ1bGwgQWNjZXNzIENsaWVudCBJZFwiLFxuICAgICAga2V5OiBcImZ1bGwtYWNjZXNzLWNsaWVudC1pZFwiLFxuICAgICAgdmFsdWU6IHRoaXMuYXBpQ2xpZW50LnVzZXJQb29sQ2xpZW50SWQsXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkNvZ25pdG8gVXNlciBQb29sIENsaWVudCBJZFwiLFxuICAgICAga2V5OiBcInVzZXItcG9vbC1jbGllbnQtaWRcIixcbiAgICAgIHZhbHVlOiB0aGlzLmZyb250ZW5kQ2xpZW50LnVzZXJQb29sQ2xpZW50SWQsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
79
+ DefaultUserPoolClients[_a] = { fqn: "@btc-embedded/cdk-extensions.DefaultUserPoolClients", version: "0.9.1" };
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdFVzZXJQb29sQ2xpZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9EZWZhdWx0VXNlclBvb2xDbGllbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEseURBT2lDO0FBQ2pDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFrQzFDOzs7R0FHRztBQUNILE1BQWEsc0JBQXVCLFNBQVEsc0JBQVM7SUFJbkQsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1YsS0FBa0M7UUFFbEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLGNBQWMsR0FBRyxJQUFJLGlDQUFtQixDQUFDO1lBQzdDLFNBQVMsRUFBRSxZQUFZO1lBQ3ZCLGdCQUFnQixFQUFFLDRCQUE0QjtTQUMvQyxDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixFQUFFO1lBQ3ZFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUztZQUMxQixNQUFNLEVBQUUsQ0FBQyxjQUFjLENBQUM7U0FDekIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxhQUFhLEdBQ2pCLEtBQUssQ0FBQyxrQ0FBa0MsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNyRCw0Q0FBOEIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQzVDLElBQUksRUFBRSxDQUFDO1FBRVYsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7UUFFOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLDRCQUFjLENBQUMsSUFBSSxFQUFFLHVCQUF1QixFQUFFO1lBQ2pFLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixjQUFjLEVBQUUsSUFBSTtZQUNwQixLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFO29CQUNMLGlCQUFpQixFQUFFLElBQUk7aUJBQ3hCO2dCQUNELE1BQU0sRUFBRSxDQUFDLHdCQUFVLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQzthQUM1RDtZQUNELDBCQUEwQixFQUFFO2dCQUMxQiw0Q0FBOEIsQ0FBQyxPQUFPO2dCQUN0QyxHQUFHLGFBQWE7YUFDakI7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksNEJBQWMsQ0FBQyxJQUFJLEVBQUUsd0JBQXdCLEVBQUU7WUFDdkUsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBRXhCLHFEQUFxRDtZQUNyRCxjQUFjLEVBQUUsSUFBSTtZQUNwQixTQUFTLEVBQUU7Z0JBQ1QsWUFBWSxFQUFFLElBQUk7YUFDbkI7WUFFRCxLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFO29CQUNMLHNCQUFzQixFQUFFLElBQUk7aUJBQzdCO2dCQUNELE1BQU0sRUFBRSxDQUFDLHdCQUFVLENBQUMsTUFBTSxFQUFFLHdCQUFVLENBQUMsT0FBTyxDQUFDO2dCQUMvQyxZQUFZLEVBQUU7b0JBQ1osMkJBQTJCO29CQUMzQixXQUFXLEtBQUssQ0FBQyxJQUFJLHFCQUFxQjtvQkFDMUMsR0FBRyxZQUFZO2lCQUNoQjtnQkFDRCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7YUFDN0I7WUFDRCwwQkFBMEIsRUFBRTtnQkFDMUIsNENBQThCLENBQUMsT0FBTztnQkFDdEMsR0FBRyxhQUFhO2FBQ2pCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxXQUFXLEdBQUcsSUFBQSxzQkFBYyxFQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUVwRCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsK0JBQStCO1lBQ3JDLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCO1NBQ3ZDLENBQUMsQ0FBQztRQUVILFdBQVcsQ0FBQztZQUNWLElBQUksRUFBRSw2QkFBNkI7WUFDbkMsR0FBRyxFQUFFLHFCQUFxQjtZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0I7U0FDNUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFuRkgsd0RBb0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSVVzZXJQb29sLFxuICBJVXNlclBvb2xDbGllbnQsXG4gIE9BdXRoU2NvcGUsXG4gIFJlc291cmNlU2VydmVyU2NvcGUsXG4gIFVzZXJQb29sQ2xpZW50LFxuICBVc2VyUG9vbENsaWVudElkZW50aXR5UHJvdmlkZXIsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29nbml0b1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGNyZWF0ZUV4cG9ydGVyIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdFVzZXJQb29sQ2xpZW50c1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSB1c2VyIHBvb2wgd2hpY2ggc2hvdWxkIGJlIGF0dGFjaGVkIHRvIHRoZSBjbGllbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlclBvb2w6IElVc2VyUG9vbDtcblxuICAvKipcbiAgICogVGhlIGZ1bGx5IHF1YWxpZmllZCBkb21haW4gbmFtZSB3aGljaCB0aGUgQUxCIHdpbGwgbGlzdGVuIHRvLlxuICAgKlxuICAgKiBUaGlzIHNldHRpbmcgaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIGNvcnJlY3QgY2FsbGJhY2sgVVJMIGZvciB1c2VyIHBvb2xcbiAgICogY2xpZW50IHN1Y2ggdGhhdCB0aGUgQUxCIGNhbiBwZXJmb3JtIGF1dGhlbnRpY2F0aW9uLlxuICAgKlxuICAgKi9cbiAgcmVhZG9ubHkgZnFkbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IHZhbGlkIGxvZ291dCBVUkxzIHdoaWNoIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZnJvbnRlbmQgdXNlciBwb29sIGNsaWVudC5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ291dFVybHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogU3BlY2lmeSBhZGRpdGlvbmFsIGNhbGxiYWNrIFVSTHMgd2hpY2ggdGhlIGZyb250ZW5kIHVzZXMgZm9yIE9JREMgYXV0aGVudGljYXRpb24uXG4gICAqXG4gICAqL1xuICByZWFkb25seSBjYWxsYmFja1VybHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogU3BlY2lmeSBhZGRpdGlvbmFsIHVzZXIgcG9vbCBpZGVudGl0eSBwcm92aWRlcnMgdG8gZW5hYmxlIGZlZGVyYXRlZCBsb2dpbi5cbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0b25hbFVzZXJQb29sSWRlbnRpdHlQcm92aWRlcnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBDcmVhdGUgZGVmYXVsdCB1c2VyIHBvb2wgY2xpZW50cyBmb3IgdGhlIGZyb250ZW5kIGFuZCBBUEkgYWNjZXNzLlxuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBBcGlVc2VyUG9vbENsaWVudH0gb3Ige0BsaW5rIEFwcGxpY2F0aW9uVXNlclBvb2xDbGllbnR9IGluc3RlYWRcbiAqL1xuZXhwb3J0IGNsYXNzIERlZmF1bHRVc2VyUG9vbENsaWVudHMgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgZnJvbnRlbmRDbGllbnQ6IElVc2VyUG9vbENsaWVudDtcbiAgcHVibGljIGFwaUNsaWVudDogSVVzZXJQb29sQ2xpZW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogRGVmYXVsdFVzZXJQb29sQ2xpZW50c1Byb3BzLFxuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgYXBpQWNjZXNzU2NvcGUgPSBuZXcgUmVzb3VyY2VTZXJ2ZXJTY29wZSh7XG4gICAgICBzY29wZU5hbWU6IFwiYXBpX2FjY2Vzc1wiLFxuICAgICAgc2NvcGVEZXNjcmlwdGlvbjogXCJSRVNUIEFQSSBmdWxsIGFjY2VzcyBzY29wZVwiLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2VydmVyID0gcHJvcHMudXNlclBvb2wuYWRkUmVzb3VyY2VTZXJ2ZXIoXCJSRVNUQVBJUmVzb3VyY2VTZXJ2ZXJcIiwge1xuICAgICAgaWRlbnRpZmllcjogYCR7aWR9UkVTVEFQSWAsXG4gICAgICBzY29wZXM6IFthcGlBY2Nlc3NTY29wZV0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBwcm92aWRlck5hbWVzID1cbiAgICAgIHByb3BzLmFkZGl0b25hbFVzZXJQb29sSWRlbnRpdHlQcm92aWRlcnM/Lm1hcCgobmFtZSkgPT5cbiAgICAgICAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLmN1c3RvbShuYW1lKSxcbiAgICAgICkgPz8gW107XG5cbiAgICBjb25zdCBjYWxsYmFja1VybHMgPSBwcm9wcy5jYWxsYmFja1VybHMgPz8gW107XG5cbiAgICB0aGlzLmFwaUNsaWVudCA9IG5ldyBVc2VyUG9vbENsaWVudCh0aGlzLCBcIlJFU1RBUElVc2VyUG9vbENsaWVudFwiLCB7XG4gICAgICB1c2VyUG9vbDogcHJvcHMudXNlclBvb2wsXG4gICAgICBnZW5lcmF0ZVNlY3JldDogdHJ1ZSxcbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgY2xpZW50Q3JlZGVudGlhbHM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHNjb3BlczogW09BdXRoU2NvcGUucmVzb3VyY2VTZXJ2ZXIoc2VydmVyLCBhcGlBY2Nlc3NTY29wZSldLFxuICAgICAgfSxcbiAgICAgIHN1cHBvcnRlZElkZW50aXR5UHJvdmlkZXJzOiBbXG4gICAgICAgIFVzZXJQb29sQ2xpZW50SWRlbnRpdHlQcm92aWRlci5DT0dOSVRPLFxuICAgICAgICAuLi5wcm92aWRlck5hbWVzLFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIHRoaXMuZnJvbnRlbmRDbGllbnQgPSBuZXcgVXNlclBvb2xDbGllbnQodGhpcywgXCJGcm9udGVuZFVzZXJQb29sQ2xpZW50XCIsIHtcbiAgICAgIHVzZXJQb29sOiBwcm9wcy51c2VyUG9vbCxcblxuICAgICAgLy8gUmVxdWlyZWQgbWluaW1hbCBjb25maWd1cmF0aW9uIGZvciB1c2Ugd2l0aCBhbiBFTEJcbiAgICAgIGdlbmVyYXRlU2VjcmV0OiB0cnVlLFxuICAgICAgYXV0aEZsb3dzOiB7XG4gICAgICAgIHVzZXJQYXNzd29yZDogdHJ1ZSxcbiAgICAgIH0sXG5cbiAgICAgIG9BdXRoOiB7XG4gICAgICAgIGZsb3dzOiB7XG4gICAgICAgICAgYXV0aG9yaXphdGlvbkNvZGVHcmFudDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgc2NvcGVzOiBbT0F1dGhTY29wZS5PUEVOSUQsIE9BdXRoU2NvcGUuUFJPRklMRV0sXG4gICAgICAgIGNhbGxiYWNrVXJsczogW1xuICAgICAgICAgIC8vIGFkZCBjYWxsYmFjayBVUkwgZm9yIEFMQlxuICAgICAgICAgIGBodHRwczovLyR7cHJvcHMuZnFkbn0vb2F1dGgyL2lkcHJlc3BvbnNlYCxcbiAgICAgICAgICAuLi5jYWxsYmFja1VybHMsXG4gICAgICAgIF0sXG4gICAgICAgIGxvZ291dFVybHM6IHByb3BzLmxvZ291dFVybHMsXG4gICAgICB9LFxuICAgICAgc3VwcG9ydGVkSWRlbnRpdHlQcm92aWRlcnM6IFtcbiAgICAgICAgVXNlclBvb2xDbGllbnRJZGVudGl0eVByb3ZpZGVyLkNPR05JVE8sXG4gICAgICAgIC4uLnByb3ZpZGVyTmFtZXMsXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZXhwb3J0VmFsdWUgPSBjcmVhdGVFeHBvcnRlcih0aGlzLCBcImNvZ25pdG9cIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkNvZ25pdG8gRnVsbCBBY2Nlc3MgQ2xpZW50IElkXCIsXG4gICAgICBrZXk6IFwiZnVsbC1hY2Nlc3MtY2xpZW50LWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5hcGlDbGllbnQudXNlclBvb2xDbGllbnRJZCxcbiAgICB9KTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiQ29nbml0byBVc2VyIFBvb2wgQ2xpZW50IElkXCIsXG4gICAgICBrZXk6IFwidXNlci1wb29sLWNsaWVudC1pZFwiLFxuICAgICAgdmFsdWU6IHRoaXMuZnJvbnRlbmRDbGllbnQudXNlclBvb2xDbGllbnRJZCxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -43,5 +43,5 @@ class DocumentDB extends constructs_1.Construct {
43
43
  }
44
44
  exports.DocumentDB = DocumentDB;
45
45
  _a = JSII_RTTI_SYMBOL_1;
46
- DocumentDB[_a] = { fqn: "@btc-embedded/cdk-extensions.DocumentDB", version: "0.8.4" };
46
+ DocumentDB[_a] = { fqn: "@btc-embedded/cdk-extensions.DocumentDB", version: "0.9.1" };
47
47
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRG9jdW1lbnREQi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9Eb2N1bWVudERCLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTBDO0FBQzFDLHFEQUF3RDtBQUN4RCxpREFLNkI7QUFDN0IsdUVBQXdEO0FBQ3hELDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFTMUMsTUFBYSxVQUFXLFNBQVEsc0JBQVM7SUFHdkMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUM5RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSwyQkFBZSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDckQsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtnQkFDeEIsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUM1QixpQkFBaUIsRUFBRSxrQ0FBa0M7YUFDdEQ7WUFDRCxZQUFZLEVBQUUsc0JBQVksQ0FBQyxFQUFFLENBQUMsdUJBQWEsQ0FBQyxFQUFFLEVBQUUsc0JBQVksQ0FBQyxNQUFNLENBQUM7WUFDcEUsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsTUFBTSxRQUFRLEdBQUcsMkJBQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUM7YUFDdkUsbUJBQW1CLENBQUMsVUFBVSxDQUFDO1lBQ2hDLDRFQUE0RTthQUMzRSxZQUFZLEVBQUUsQ0FBQztRQUVsQixNQUFNLE1BQU0sR0FBRyxJQUFJLDJCQUFNLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUMvQyxpQkFBaUIsRUFBRSxJQUFJLHlCQUFXLENBQ2hDLGFBQWEsS0FBSyxDQUFDLFFBQVEsSUFBSSxRQUFRLElBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFFBQy9CLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLCtFQUErRSxDQUMvSDtTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFFeEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLDhCQUE4QjtZQUNwQyxHQUFHLEVBQUUsbUJBQW1CO1lBQ3hCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWU7U0FDcEMsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixHQUFHLEVBQUUsWUFBWTtZQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLFNBQVM7U0FDeEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUExQ0gsZ0NBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VjcmV0VmFsdWUgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IERhdGFiYXNlQ2x1c3RlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZG9jZGJcIjtcbmltcG9ydCB7XG4gIElWcGMsXG4gIEluc3RhbmNlQ2xhc3MsXG4gIEluc3RhbmNlU2l6ZSxcbiAgSW5zdGFuY2VUeXBlLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgU2VjcmV0IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlclwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGNyZWF0ZUV4cG9ydGVyIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnREQlByb3BzIHtcbiAgcmVhZG9ubHkgc3RhY2tOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNlY3JldE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xufVxuXG5leHBvcnQgY2xhc3MgRG9jdW1lbnREQiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHByaXZhdGUgY2x1c3RlcjogRGF0YWJhc2VDbHVzdGVyO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBEb2N1bWVudERCUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5jbHVzdGVyID0gbmV3IERhdGFiYXNlQ2x1c3Rlcih0aGlzLCBgRG9jdW1lbnREYmAsIHtcbiAgICAgIG1hc3RlclVzZXI6IHtcbiAgICAgICAgdXNlcm5hbWU6IHByb3BzLnVzZXJuYW1lLFxuICAgICAgICBzZWNyZXROYW1lOiBwcm9wcy5zZWNyZXROYW1lLFxuICAgICAgICBleGNsdWRlQ2hhcmFjdGVyczogXCJcXFwiQCUmL1xcXFx7fSgpW108PnxgJyw6Oys/fio9IV4jXy1cIixcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZS5vZihJbnN0YW5jZUNsYXNzLlQzLCBJbnN0YW5jZVNpemUuTUVESVVNKSxcbiAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcGFzc3dvcmQgPSBTZWNyZXQuZnJvbVNlY3JldE5hbWVWMih0aGlzLCBcIlNlY3JldFwiLCBwcm9wcy5zZWNyZXROYW1lKVxuICAgICAgLnNlY3JldFZhbHVlRnJvbUpzb24oXCJwYXNzd29yZFwiKVxuICAgICAgLy8gVW5zYWZlIHVud3JhcCBpcyBva2F5LCBzaW5jZSB0aGUgb25seSB1c2UgaXMgdG8gd3JhcCBpdCBpbiBhbm90aGVyIHNlY3JldFxuICAgICAgLnVuc2FmZVVud3JhcCgpO1xuXG4gICAgY29uc3Qgc2VjcmV0ID0gbmV3IFNlY3JldCh0aGlzLCBcImRiLXVybC1zZWNyZXRcIiwge1xuICAgICAgc2VjcmV0U3RyaW5nVmFsdWU6IG5ldyBTZWNyZXRWYWx1ZShcbiAgICAgICAgYG1vbmdvZGI6Ly8ke3Byb3BzLnVzZXJuYW1lfToke3Bhc3N3b3JkfUAke1xuICAgICAgICAgIHRoaXMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQuaG9zdG5hbWVcbiAgICAgICAgfToke3RoaXMuY2x1c3Rlci5jbHVzdGVyRW5kcG9pbnQucG9ydEFzU3RyaW5nKCl9Lz90bHM9dHJ1ZSZyZXBsaWNhU2V0PXJzMCZyZWFkUHJlZmVyZW5jZT1zZWNvbmRhcnlQcmVmZXJyZWQmcmV0cnlXcml0ZXM9ZmFsc2VgLFxuICAgICAgKSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJkb2N1bWVudC1kYlwiKTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiRG9jdW1lbnREQiBTZWN1cml0eSBHcm91cCBJZFwiLFxuICAgICAga2V5OiBcInNlY3VyaXR5LWdyb3VwLWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5jbHVzdGVyLnNlY3VyaXR5R3JvdXBJZCxcbiAgICB9KTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiRG9jdW1lbnREQiBTZWNyZXQgQVJOXCIsXG4gICAgICBrZXk6IFwic2VjcmV0LWFyblwiLFxuICAgICAgdmFsdWU6IHNlY3JldC5zZWNyZXRBcm4sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -46,5 +46,5 @@ class PrivateDnsNamespace extends constructs_1.Construct {
46
46
  }
47
47
  exports.PrivateDnsNamespace = PrivateDnsNamespace;
48
48
  _a = JSII_RTTI_SYMBOL_1;
49
- PrivateDnsNamespace[_a] = { fqn: "@btc-embedded/cdk-extensions.PrivateDnsNamespace", version: "0.8.4" };
49
+ PrivateDnsNamespace[_a] = { fqn: "@btc-embedded/cdk-extensions.PrivateDnsNamespace", version: "0.9.1" };
50
50
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJpdmF0ZURuc05hbWVzcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbGF0Zm9ybS9Qcml2YXRlRG5zTmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsMkVBRzBDO0FBQzFDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFjMUMsTUFBYSxtQkFBb0IsU0FBUSxzQkFBUztJQUVoRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxLQUFLLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsU0FBUyxHQUFHLDBDQUFtQixDQUFDLGlDQUFpQyxDQUNwRSxJQUFJLEVBQ0osWUFBWSxFQUNaO2dCQUNFLGFBQWEsRUFBRSxLQUFLLENBQUMsMEJBQTBCLENBQUMsU0FBUztnQkFDekQsV0FBVyxFQUFFLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxFQUFFO2dCQUNoRCxZQUFZLEVBQUUsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEdBQUc7YUFDbkQsQ0FDRixDQUFDO1FBQ0osQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSwwQ0FBbUIsQ0FBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUU7Z0JBQ3BFLElBQUksRUFBRSxLQUFLLENBQUMsYUFBYTtnQkFDekIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO2dCQUNkLFdBQVcsRUFBRSxtQkFBbUI7YUFDakMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUNiLHVFQUF1RSxDQUN4RSxDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFFdEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLGVBQWU7WUFDckIsR0FBRyxFQUFFLEtBQUs7WUFDVixLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZO1NBQ25DLENBQUMsQ0FBQztRQUVILFdBQVcsQ0FBQztZQUNWLElBQUksRUFBRSxjQUFjO1lBQ3BCLEdBQUcsRUFBRSxJQUFJO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVztTQUNsQyxDQUFDLENBQUM7UUFFSCxXQUFXLENBQUM7WUFDVixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEdBQUcsRUFBRSxNQUFNO1lBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYTtTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTdDSCxrREE4Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVnBjIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7XG4gIFByaXZhdGVEbnNOYW1lc3BhY2UgYXMgQVdTUHJpdmF0ZU5hbWVzcGFjZSxcbiAgSVByaXZhdGVEbnNOYW1lc3BhY2UsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc2VydmljZWRpc2NvdmVyeVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGNyZWF0ZUV4cG9ydGVyIH0gZnJvbSBcIi4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJlZGVmaW5lZFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcyB7XG4gIHJlYWRvbmx5IGFybjogc3RyaW5nO1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBuYW1lc3BhY2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcml2YXRlRG5zTmFtZXNwYWNlUHJvcHMge1xuICByZWFkb25seSBkZWZpbmVkUHJpdmF0ZURuc05hbWVzcGFjZT86IFByZWRlZmluZWRQcml2YXRlRG5zTmFtZXNwYWNlUHJvcHM7XG4gIHJlYWRvbmx5IG5hbWVzcGFjZU5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZwYzogSVZwYztcbn1cblxuZXhwb3J0IGNsYXNzIFByaXZhdGVEbnNOYW1lc3BhY2UgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgbmFtZXNwYWNlOiBJUHJpdmF0ZURuc05hbWVzcGFjZTtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFByaXZhdGVEbnNOYW1lc3BhY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMuZGVmaW5lZFByaXZhdGVEbnNOYW1lc3BhY2UpIHtcbiAgICAgIHRoaXMubmFtZXNwYWNlID0gQVdTUHJpdmF0ZU5hbWVzcGFjZS5mcm9tUHJpdmF0ZURuc05hbWVzcGFjZUF0dHJpYnV0ZXMoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiUHJpdmF0ZURuc1wiLFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZXNwYWNlTmFtZTogcHJvcHMuZGVmaW5lZFByaXZhdGVEbnNOYW1lc3BhY2UubmFtZXNwYWNlLFxuICAgICAgICAgIG5hbWVzcGFjZUlkOiBwcm9wcy5kZWZpbmVkUHJpdmF0ZURuc05hbWVzcGFjZS5pZCxcbiAgICAgICAgICBuYW1lc3BhY2VBcm46IHByb3BzLmRlZmluZWRQcml2YXRlRG5zTmFtZXNwYWNlLmFybixcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChwcm9wcy5uYW1lc3BhY2VOYW1lKSB7XG4gICAgICB0aGlzLm5hbWVzcGFjZSA9IG5ldyBBV1NQcml2YXRlTmFtZXNwYWNlKHRoaXMsIFwiUHJpdmF0ZURuc05hbWVzcGFjZVwiLCB7XG4gICAgICAgIG5hbWU6IHByb3BzLm5hbWVzcGFjZU5hbWUsXG4gICAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgICAgICBkZXNjcmlwdGlvbjogXCJQcml2YXRlIE5hbWVzcGFjZVwiLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJFaXRoZXIgYSBkZWZpbmVkUHJpdmF0ZURuc05hbWVzcGFjZSBvciBhIG5hbWVzcGFjZU5hbWUgaGFzIHRvIGJlIHNldC5cIixcbiAgICAgICk7XG4gICAgfVxuICAgIGNvbnN0IGV4cG9ydFZhbHVlID0gY3JlYXRlRXhwb3J0ZXIodGhpcywgXCJuYW1lc3BhY2VcIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBBUk5cIixcbiAgICAgIGtleTogXCJhcm5cIixcbiAgICAgIHZhbHVlOiB0aGlzLm5hbWVzcGFjZS5uYW1lc3BhY2VBcm4sXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBJRFwiLFxuICAgICAga2V5OiBcImlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy5uYW1lc3BhY2UubmFtZXNwYWNlSWQsXG4gICAgfSk7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIk5hbWVzcGFjZSBOYW1lXCIsXG4gICAgICBrZXk6IFwibmFtZVwiLFxuICAgICAgdmFsdWU6IHRoaXMubmFtZXNwYWNlLm5hbWVzcGFjZU5hbWUsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ import { IUserPool, IUserPoolResourceServer, OAuthScope, ResourceServerScope } from "aws-cdk-lib/aws-cognito";
2
+ import { Construct } from "constructs";
3
+ export interface ResourceServerProps {
4
+ /**
5
+ * The Cognito User Pool to which the resource server will be added.
6
+ */
7
+ readonly userPool: IUserPool;
8
+ /**
9
+ * The fully qualified domain name (FQDN) used as the identifier for the resource server.
10
+ */
11
+ readonly fqdn: string;
12
+ /**
13
+ * Optional custom scopes to define for the resource server.
14
+ * If not provided, default scopes for "read_api" and "write_api" will be created.
15
+ *
16
+ * @default - Default scopes for "read_api" and "write_api" are used.
17
+ */
18
+ readonly scopes?: Array<ResourceServerScope>;
19
+ }
20
+ /**
21
+ * A construct that creates a Cognito Resource Server for managing OAuth scopes.
22
+ *
23
+ * This construct:
24
+ * - Adds a resource server to the specified Cognito User Pool.
25
+ * - Defines OAuth scopes for the resource server, either using provided custom scopes
26
+ * or defaulting to "read_api" and "write_api" scopes.
27
+ * - Provides a method to generate OAuthScope objects for use in API Gateway.
28
+ */
29
+ export declare class ResourceServer extends Construct {
30
+ resourceServerInstance: IUserPoolResourceServer;
31
+ private scopes;
32
+ constructor(scope: Construct, id: string, props: ResourceServerProps);
33
+ createOAuthScopes(): OAuthScope[];
34
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResourceServer = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const aws_cognito_1 = require("aws-cdk-lib/aws-cognito");
7
+ const constructs_1 = require("constructs");
8
+ /**
9
+ * A construct that creates a Cognito Resource Server for managing OAuth scopes.
10
+ *
11
+ * This construct:
12
+ * - Adds a resource server to the specified Cognito User Pool.
13
+ * - Defines OAuth scopes for the resource server, either using provided custom scopes
14
+ * or defaulting to "read_api" and "write_api" scopes.
15
+ * - Provides a method to generate OAuthScope objects for use in API Gateway.
16
+ */
17
+ class ResourceServer extends constructs_1.Construct {
18
+ constructor(scope, id, props) {
19
+ super(scope, id);
20
+ this.scopes = props.scopes ?? [
21
+ new aws_cognito_1.ResourceServerScope({
22
+ scopeName: "read_api",
23
+ scopeDescription: "REST API read access scope",
24
+ }),
25
+ new aws_cognito_1.ResourceServerScope({
26
+ scopeName: "write_api",
27
+ scopeDescription: "REST API write access scope",
28
+ }),
29
+ ];
30
+ this.resourceServerInstance = props.userPool.addResourceServer("RESTAPIResourceServer", {
31
+ userPoolResourceServerName: `${id}-resource-server`,
32
+ identifier: `https://api.${props.fqdn}`,
33
+ scopes: this.scopes,
34
+ });
35
+ }
36
+ createOAuthScopes() {
37
+ return this.scopes.map((scope) => aws_cognito_1.OAuthScope.resourceServer(this.resourceServerInstance, scope));
38
+ }
39
+ }
40
+ exports.ResourceServer = ResourceServer;
41
+ _a = JSII_RTTI_SYMBOL_1;
42
+ ResourceServer[_a] = { fqn: "@btc-embedded/cdk-extensions.ResourceServer", version: "0.9.1" };
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VTZXJ2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGxhdGZvcm0vUmVzb3VyY2VTZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5REFLaUM7QUFDakMsMkNBQXVDO0FBc0J2Qzs7Ozs7Ozs7R0FRRztBQUNILE1BQWEsY0FBZSxTQUFRLHNCQUFTO0lBRzNDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUk7WUFDNUIsSUFBSSxpQ0FBbUIsQ0FBQztnQkFDdEIsU0FBUyxFQUFFLFVBQVU7Z0JBQ3JCLGdCQUFnQixFQUFFLDRCQUE0QjthQUMvQyxDQUFDO1lBQ0YsSUFBSSxpQ0FBbUIsQ0FBQztnQkFDdEIsU0FBUyxFQUFFLFdBQVc7Z0JBQ3RCLGdCQUFnQixFQUFFLDZCQUE2QjthQUNoRCxDQUFDO1NBQ0gsQ0FBQztRQUVGLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUM1RCx1QkFBdUIsRUFDdkI7WUFDRSwwQkFBMEIsRUFBRSxHQUFHLEVBQUUsa0JBQWtCO1lBQ25ELFVBQVUsRUFBRSxlQUFlLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDdkMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQy9CLHdCQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FDOUQsQ0FBQztJQUNKLENBQUM7O0FBOUJILHdDQStCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIElVc2VyUG9vbCxcbiAgSVVzZXJQb29sUmVzb3VyY2VTZXJ2ZXIsXG4gIE9BdXRoU2NvcGUsXG4gIFJlc291cmNlU2VydmVyU2NvcGUsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29nbml0b1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZVNlcnZlclByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBDb2duaXRvIFVzZXIgUG9vbCB0byB3aGljaCB0aGUgcmVzb3VyY2Ugc2VydmVyIHdpbGwgYmUgYWRkZWQuXG4gICAqL1xuICByZWFkb25seSB1c2VyUG9vbDogSVVzZXJQb29sO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbHkgcXVhbGlmaWVkIGRvbWFpbiBuYW1lIChGUUROKSB1c2VkIGFzIHRoZSBpZGVudGlmaWVyIGZvciB0aGUgcmVzb3VyY2Ugc2VydmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgZnFkbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBjdXN0b20gc2NvcGVzIHRvIGRlZmluZSBmb3IgdGhlIHJlc291cmNlIHNlcnZlci5cbiAgICogSWYgbm90IHByb3ZpZGVkLCBkZWZhdWx0IHNjb3BlcyBmb3IgXCJyZWFkX2FwaVwiIGFuZCBcIndyaXRlX2FwaVwiIHdpbGwgYmUgY3JlYXRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBEZWZhdWx0IHNjb3BlcyBmb3IgXCJyZWFkX2FwaVwiIGFuZCBcIndyaXRlX2FwaVwiIGFyZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgc2NvcGVzPzogQXJyYXk8UmVzb3VyY2VTZXJ2ZXJTY29wZT47XG59XG5cbi8qKlxuICogQSBjb25zdHJ1Y3QgdGhhdCBjcmVhdGVzIGEgQ29nbml0byBSZXNvdXJjZSBTZXJ2ZXIgZm9yIG1hbmFnaW5nIE9BdXRoIHNjb3Blcy5cbiAqXG4gKiBUaGlzIGNvbnN0cnVjdDpcbiAqIC0gQWRkcyBhIHJlc291cmNlIHNlcnZlciB0byB0aGUgc3BlY2lmaWVkIENvZ25pdG8gVXNlciBQb29sLlxuICogLSBEZWZpbmVzIE9BdXRoIHNjb3BlcyBmb3IgdGhlIHJlc291cmNlIHNlcnZlciwgZWl0aGVyIHVzaW5nIHByb3ZpZGVkIGN1c3RvbSBzY29wZXNcbiAqICAgb3IgZGVmYXVsdGluZyB0byBcInJlYWRfYXBpXCIgYW5kIFwid3JpdGVfYXBpXCIgc2NvcGVzLlxuICogLSBQcm92aWRlcyBhIG1ldGhvZCB0byBnZW5lcmF0ZSBPQXV0aFNjb3BlIG9iamVjdHMgZm9yIHVzZSBpbiBBUEkgR2F0ZXdheS5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlc291cmNlU2VydmVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlc291cmNlU2VydmVySW5zdGFuY2U6IElVc2VyUG9vbFJlc291cmNlU2VydmVyO1xuICBwcml2YXRlIHNjb3BlczogQXJyYXk8UmVzb3VyY2VTZXJ2ZXJTY29wZT47XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSZXNvdXJjZVNlcnZlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnNjb3BlcyA9IHByb3BzLnNjb3BlcyA/PyBbXG4gICAgICBuZXcgUmVzb3VyY2VTZXJ2ZXJTY29wZSh7XG4gICAgICAgIHNjb3BlTmFtZTogXCJyZWFkX2FwaVwiLFxuICAgICAgICBzY29wZURlc2NyaXB0aW9uOiBcIlJFU1QgQVBJIHJlYWQgYWNjZXNzIHNjb3BlXCIsXG4gICAgICB9KSxcbiAgICAgIG5ldyBSZXNvdXJjZVNlcnZlclNjb3BlKHtcbiAgICAgICAgc2NvcGVOYW1lOiBcIndyaXRlX2FwaVwiLFxuICAgICAgICBzY29wZURlc2NyaXB0aW9uOiBcIlJFU1QgQVBJIHdyaXRlIGFjY2VzcyBzY29wZVwiLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIHRoaXMucmVzb3VyY2VTZXJ2ZXJJbnN0YW5jZSA9IHByb3BzLnVzZXJQb29sLmFkZFJlc291cmNlU2VydmVyKFxuICAgICAgXCJSRVNUQVBJUmVzb3VyY2VTZXJ2ZXJcIixcbiAgICAgIHtcbiAgICAgICAgdXNlclBvb2xSZXNvdXJjZVNlcnZlck5hbWU6IGAke2lkfS1yZXNvdXJjZS1zZXJ2ZXJgLFxuICAgICAgICBpZGVudGlmaWVyOiBgaHR0cHM6Ly9hcGkuJHtwcm9wcy5mcWRufWAsXG4gICAgICAgIHNjb3BlczogdGhpcy5zY29wZXMsXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlT0F1dGhTY29wZXMoKTogT0F1dGhTY29wZVtdIHtcbiAgICByZXR1cm4gdGhpcy5zY29wZXMubWFwKChzY29wZSkgPT5cbiAgICAgIE9BdXRoU2NvcGUucmVzb3VyY2VTZXJ2ZXIodGhpcy5yZXNvdXJjZVNlcnZlckluc3RhbmNlLCBzY29wZSksXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -67,5 +67,5 @@ class Vpc extends constructs_1.Construct {
67
67
  }
68
68
  exports.Vpc = Vpc;
69
69
  _a = JSII_RTTI_SYMBOL_1;
70
- Vpc[_a] = { fqn: "@btc-embedded/cdk-extensions.Vpc", version: "0.8.4" };
70
+ Vpc[_a] = { fqn: "@btc-embedded/cdk-extensions.Vpc", version: "0.9.1" };
71
71
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVnBjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BsYXRmb3JtL1ZwYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUF3RTtBQUN4RSxpREFBNEQ7QUFDNUQsaURBQTBDO0FBQzFDLDJDQUF1QztBQUN2QyxvQ0FBMEM7QUFTMUMsTUFBYSxHQUFJLFNBQVEsc0JBQVM7SUFJaEM7Ozs7Ozs7O09BUUc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWU7UUFDdkQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLGFBQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtnQkFDaEQsT0FBTyxFQUFFLEtBQUssQ0FBQyxjQUFjO2FBQzlCLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksYUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUU7Z0JBQ3pDLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUM7Z0JBQ3pCLFdBQVcsRUFBRSxLQUFLLENBQUMsT0FBTzthQUMzQixDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUVELE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyx1QkFBdUIsSUFBSSxLQUFLLENBQUM7UUFDL0QsTUFBTSxZQUFZLEdBQWlCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU1RSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUJBQU8sQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRTFELE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsRUFBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFFcEQsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLGdCQUFnQjtZQUN0QixHQUFHLEVBQUUsUUFBUTtZQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7U0FDOUIsQ0FBQyxDQUFDO1FBRUgsV0FBVyxDQUFDO1lBQ1YsSUFBSSxFQUFFLGNBQWM7WUFDcEIsR0FBRyxFQUFFLE1BQU07WUFDWCxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxlQUF3QjtRQUNqRCxNQUFNLFNBQVMsR0FBRztZQUNoQixHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDdEIsQ0FBQztRQUVGLElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGFBQUcsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ3ZELGlCQUFpQixFQUFFLElBQUk7YUFDeEIsQ0FBQyxDQUFDO1lBRUgsT0FBTztnQkFDTCxHQUFHLFNBQVM7Z0JBQ1osMkJBQTJCLEVBQUUsRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUU7YUFDMUQsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOztBQWxFSCxrQkFtRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWcGMgYXMgQVdTVnBjLCBJSXBBZGRyZXNzZXMsIElWcGMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgQ2x1c3RlciwgQ2x1c3RlclByb3BzIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCB7IEtleSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mta21zXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlRXhwb3J0ZXIgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBWcGNQcm9wcyB7XG4gIHJlYWRvbmx5IGRlZmluZWRWcGNOYW1lPzogc3RyaW5nO1xuICByZWFkb25seSB2cGNDaWRyPzogSUlwQWRkcmVzc2VzO1xuICByZWFkb25seSBtYXhBenM/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGNyZWF0ZUttc0V4ZWNDb21tYW5kS2V5PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIFZwYyBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyB2cGNJbnN0YW5jZTogSVZwYztcbiAgcHVibGljIGNsdXN0ZXI6IENsdXN0ZXI7XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSBUaGUgcGFyZW50IGNvbnN0cnVjdCB0aGlzIGlzIHBhcnQgb2ZcbiAgICogQHBhcmFtIGlkIElkIG9mIHRoaXMgY29uc3RydWN0IGZvciBDbG91ZGZvcm1hdGlvblxuICAgKiBAcGFyYW0gcHJvcHMgUHJvcGVydGllcyBhbGxvd2luZyB0byBzZXQgYSBwcmVkZWZpbmVkIFZQQ05hbWUsIElQQWRyZXNzQmxvZyxcbiAgICogICAgICAgICAgICAgIG1heE51bWJlciBvZiBBWnMgYW5kIGRlY2lzaW9uIHdldGhlciB0byBjcmVhdGUgYSBLTVNLZXkgZm9yIHVzYWdlXG4gICAqICAgICAgICAgICAgICB3aXRoIHRoZSBFeGVjIGV4dGVuc2lvbi4gRGVmYXVsdHMgdG8gYW4gZW1wdHkgb2JqZWN0IGNyZWF0aW5nIGFcbiAgICogICAgICAgICAgICAgIGRlZGljYXRlZCBWUEMsIHdpdGggbWF4IDIgQVpTIGFuZCBOTyBLZXkgZm9yIEV4ZWNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBWcGNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMuZGVmaW5lZFZwY05hbWUpIHtcbiAgICAgIHRoaXMudnBjSW5zdGFuY2UgPSBBV1NWcGMuZnJvbUxvb2t1cCh0aGlzLCBcIlZwY1wiLCB7XG4gICAgICAgIHZwY05hbWU6IHByb3BzLmRlZmluZWRWcGNOYW1lLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChwcm9wcy52cGNDaWRyKSB7XG4gICAgICB0aGlzLnZwY0luc3RhbmNlID0gbmV3IEFXU1ZwYyh0aGlzLCBcIlZwY1wiLCB7XG4gICAgICAgIG1heEF6czogcHJvcHMubWF4QXpzID8/IDIsXG4gICAgICAgIGlwQWRkcmVzc2VzOiBwcm9wcy52cGNDaWRyLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yKFwiRWl0aGVyIGRlZmluZWRWcGNOYW1lIG9yIHZwY0NpZHIgaGF2ZSB0byBiZSBzZXQuXCIpO1xuICAgIH1cblxuICAgIGNvbnN0IHNob3VsZENyZWF0ZUtleSA9IHByb3BzLmNyZWF0ZUttc0V4ZWNDb21tYW5kS2V5ID8/IGZhbHNlO1xuICAgIGNvbnN0IGNsdXN0ZXJQcm9wczogQ2x1c3RlclByb3BzID0gdGhpcy5jcmVhdGVDbHVzdGVyUHJvcHMoc2hvdWxkQ3JlYXRlS2V5KTtcblxuICAgIHRoaXMuY2x1c3RlciA9IG5ldyBDbHVzdGVyKHRoaXMsIFwiQ2x1c3RlclwiLCBjbHVzdGVyUHJvcHMpO1xuXG4gICAgY29uc3QgZXhwb3J0VmFsdWUgPSBjcmVhdGVFeHBvcnRlcih0aGlzLCBcImNsdXN0ZXJcIik7XG5cbiAgICBleHBvcnRWYWx1ZSh7XG4gICAgICBuYW1lOiBcIkNsdXN0ZXIgVlBDIElEXCIsXG4gICAgICBrZXk6IFwidnBjLWlkXCIsXG4gICAgICB2YWx1ZTogdGhpcy52cGNJbnN0YW5jZS52cGNJZCxcbiAgICB9KTtcblxuICAgIGV4cG9ydFZhbHVlKHtcbiAgICAgIG5hbWU6IFwiQ2x1c3RlciBOYW1lXCIsXG4gICAgICBrZXk6IFwibmFtZVwiLFxuICAgICAgdmFsdWU6IHRoaXMuY2x1c3Rlci5jbHVzdGVyTmFtZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ2x1c3RlclByb3BzKHNob3VsZENyZWF0ZUtleTogYm9vbGVhbik6IENsdXN0ZXJQcm9wcyB7XG4gICAgY29uc3QgYmFzZVByb3BzID0ge1xuICAgICAgdnBjOiB0aGlzLnZwY0luc3RhbmNlLFxuICAgIH07XG5cbiAgICBpZiAoc2hvdWxkQ3JlYXRlS2V5KSB7XG4gICAgICBjb25zdCBrbXNFbmNyeXB0aW9uS2V5ID0gbmV3IEtleSh0aGlzLCBcIkNsdXN0ZXJFeGVjS2V5XCIsIHtcbiAgICAgICAgZW5hYmxlS2V5Um90YXRpb246IHRydWUsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uYmFzZVByb3BzLFxuICAgICAgICBleGVjdXRlQ29tbWFuZENvbmZpZ3VyYXRpb246IHsga21zS2V5OiBrbXNFbmNyeXB0aW9uS2V5IH0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBiYXNlUHJvcHM7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,12 @@
1
1
  export * from "./ApiGateway";
2
+ export * from "./ApiGatewayV2";
2
3
  export * from "./ApplicationLoadBalancer";
4
+ export * from "./ApplicationLoadBalancerV2";
3
5
  export * from "./DefaultUserPoolClients";
6
+ export * from "./ApiUserPoolClient";
7
+ export * from "./ApplicationUserPoolClient";
8
+ export * from "./ResourceServer";
4
9
  export * from "./DocumentDB";
5
10
  export * from "./PrivateDnsNamespace";
6
11
  export * from "./Vpc";
12
+ export * from "./CognitoUserPool";
@@ -15,9 +15,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./ApiGateway"), exports);
18
+ __exportStar(require("./ApiGatewayV2"), exports);
18
19
  __exportStar(require("./ApplicationLoadBalancer"), exports);
20
+ __exportStar(require("./ApplicationLoadBalancerV2"), exports);
19
21
  __exportStar(require("./DefaultUserPoolClients"), exports);
22
+ __exportStar(require("./ApiUserPoolClient"), exports);
23
+ __exportStar(require("./ApplicationUserPoolClient"), exports);
24
+ __exportStar(require("./ResourceServer"), exports);
20
25
  __exportStar(require("./DocumentDB"), exports);
21
26
  __exportStar(require("./PrivateDnsNamespace"), exports);
22
27
  __exportStar(require("./Vpc"), exports);
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGxhdGZvcm0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3Qiw0REFBMEM7QUFDMUMsMkRBQXlDO0FBQ3pDLCtDQUE2QjtBQUM3Qix3REFBc0M7QUFDdEMsd0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vQXBpR2F0ZXdheVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0RlZmF1bHRVc2VyUG9vbENsaWVudHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0RvY3VtZW50REJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1ByaXZhdGVEbnNOYW1lc3BhY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1ZwY1wiO1xuIl19
28
+ __exportStar(require("./CognitoUserPool"), exports);
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGxhdGZvcm0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3QixpREFBK0I7QUFDL0IsNERBQTBDO0FBQzFDLDhEQUE0QztBQUM1QywyREFBeUM7QUFDekMsc0RBQW9DO0FBQ3BDLDhEQUE0QztBQUM1QyxtREFBaUM7QUFDakMsK0NBQTZCO0FBQzdCLHdEQUFzQztBQUN0Qyx3Q0FBc0I7QUFDdEIsb0RBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vQXBpR2F0ZXdheVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vQXBpR2F0ZXdheVYyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9BcHBsaWNhdGlvbkxvYWRCYWxhbmNlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJWMlwiO1xuZXhwb3J0ICogZnJvbSBcIi4vRGVmYXVsdFVzZXJQb29sQ2xpZW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vQXBpVXNlclBvb2xDbGllbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0FwcGxpY2F0aW9uVXNlclBvb2xDbGllbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1Jlc291cmNlU2VydmVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9Eb2N1bWVudERCXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9Qcml2YXRlRG5zTmFtZXNwYWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9WcGNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0NvZ25pdG9Vc2VyUG9vbFwiO1xuIl19
@@ -30,9 +30,10 @@ function createExporter(scope, prefix) {
30
30
  }
31
31
  return new aws_cdk_lib_1.CfnOutput(scope, name, {
32
32
  value,
33
+ description: name,
33
34
  // filter any falsy values
34
35
  exportName: `${[stackNamePrefix, prefix, key].filter(Boolean).join(":")}`,
35
36
  });
36
37
  };
37
38
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0VmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvSW1wb3J0VmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxrQ0FFQztBQUVELHdDQUdDO0FBVUQsd0NBMEJDO0FBL0NELDZDQUFtRDtBQUVuRCxtQ0FBbUM7QUFFbkMsU0FBZ0IsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFZLEVBQUUsR0FBRyxJQUFjO0lBQ3pFLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsR0FBRyxNQUFnQjtJQUNoRCxPQUFPLENBQUMsR0FBRyxLQUFlLEVBQUUsRUFBRSxDQUM1QixnQkFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLEtBQWdCLEVBQUUsTUFBZTtJQUM5RCxNQUFNLGVBQWUsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFFbEQsSUFBSSxNQUFNLElBQUksSUFBQSxrQkFBUyxFQUFDLE1BQU0sQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUNOLElBQUksRUFDSixHQUFHLEVBQ0gsS0FBSyxHQUtOLEVBQUUsRUFBRTtRQUNILElBQUksSUFBQSxrQkFBUyxFQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUVELE9BQU8sSUFBSSx1QkFBUyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsS0FBSztZQUNMLDBCQUEwQjtZQUMxQixVQUFVLEVBQUUsR0FBRyxDQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtTQUMxRSxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBGbiwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBrZWJhYkNhc2UgfSBmcm9tIFwibG9kYXNoXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbXBvcnRWYWx1ZShwcmVmaXg6IHN0cmluZywgbmFtZTogc3RyaW5nLCAuLi5yZXN0OiBzdHJpbmdbXSkge1xuICByZXR1cm4gY3JlYXRlSW1wb3J0ZXIocHJlZml4KSguLi5bbmFtZSwgLi4ucmVzdF0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW1wb3J0ZXIoLi4ucHJlZml4OiBzdHJpbmdbXSkge1xuICByZXR1cm4gKC4uLnBhcnRzOiBzdHJpbmdbXSkgPT5cbiAgICBGbi5pbXBvcnRWYWx1ZShgJHtbLi4ucHJlZml4LCAuLi5wYXJ0c10uam9pbihcIjpcIil9YCk7XG59XG5cbi8qKlxuICpcbiAqIFJldHVybnMgYSBmdW5jdGlvbiB0byBzaW1wbGlmeSB2YWx1ZSBleHBvcnQgYnkgZW5mb3JjaW5nIHRoZSBuYW1pbmcgc2NoZW1hLlxuICpcbiAqIEBwYXJhbSBzY29wZSB0aGUgc2NvcGUgdW5kZXIgd2hpY2ggdGhlIENmbiBjb25zdHJ1Y3Qgd2lsbCBiZSBjcmVhdGVkXG4gKiBAcGFyYW0gcHJlZml4IGFuIG9wdGlvbmFsIGlkZW50aWZpZXIgdG8gcHJlZml4IHRoZSBleHBvcnRlZCBwYXJhbWV0ZXJcbiAqIEByZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBjcmVhdGVzIGEgQ2ZuT3V0cHV0IHdpdGggdGhlIGdpdmVuIGtleSBhbmQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUV4cG9ydGVyKHNjb3BlOiBDb25zdHJ1Y3QsIHByZWZpeD86IHN0cmluZykge1xuICBjb25zdCBzdGFja05hbWVQcmVmaXggPSBTdGFjay5vZihzY29wZSkuc3RhY2tOYW1lO1xuXG4gIGlmIChwcmVmaXggJiYga2ViYWJDYXNlKHByZWZpeCkgIT09IHByZWZpeCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgUGFyYW1ldGVyIHByZWZpeCBtdXN0IGJlIGtlYmFiLWNhc2UsIGdvdDogJHtwcmVmaXh9YCk7XG4gIH1cblxuICByZXR1cm4gKHtcbiAgICBuYW1lLFxuICAgIGtleSxcbiAgICB2YWx1ZSxcbiAgfToge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICB9KSA9PiB7XG4gICAgaWYgKGtlYmFiQ2FzZShrZXkpICE9PSBrZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUGFyYW1ldGVyIGV4cG9ydCBrZXkgbXVzdCBiZSBrZWJhYi1jYXNlLCBnb3Q6ICR7a2V5fWApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgQ2ZuT3V0cHV0KHNjb3BlLCBuYW1lLCB7XG4gICAgICB2YWx1ZSxcbiAgICAgIC8vIGZpbHRlciBhbnkgZmFsc3kgdmFsdWVzXG4gICAgICBleHBvcnROYW1lOiBgJHtbc3RhY2tOYW1lUHJlZml4LCBwcmVmaXgsIGtleV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oXCI6XCIpfWAsXG4gICAgfSk7XG4gIH07XG59XG4iXX0=
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1wb3J0VmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvSW1wb3J0VmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFJQSxrQ0FFQztBQUVELHdDQUdDO0FBVUQsd0NBMkJDO0FBaERELDZDQUFtRDtBQUVuRCxtQ0FBbUM7QUFFbkMsU0FBZ0IsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFZLEVBQUUsR0FBRyxJQUFjO0lBQ3pFLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsR0FBRyxNQUFnQjtJQUNoRCxPQUFPLENBQUMsR0FBRyxLQUFlLEVBQUUsRUFBRSxDQUM1QixnQkFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLEtBQWdCLEVBQUUsTUFBZTtJQUM5RCxNQUFNLGVBQWUsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFFbEQsSUFBSSxNQUFNLElBQUksSUFBQSxrQkFBUyxFQUFDLE1BQU0sQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELE9BQU8sQ0FBQyxFQUNOLElBQUksRUFDSixHQUFHLEVBQ0gsS0FBSyxHQUtOLEVBQUUsRUFBRTtRQUNILElBQUksSUFBQSxrQkFBUyxFQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUVELE9BQU8sSUFBSSx1QkFBUyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUU7WUFDaEMsS0FBSztZQUNMLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLDBCQUEwQjtZQUMxQixVQUFVLEVBQUUsR0FBRyxDQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtTQUMxRSxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBGbiwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBrZWJhYkNhc2UgfSBmcm9tIFwibG9kYXNoXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbXBvcnRWYWx1ZShwcmVmaXg6IHN0cmluZywgbmFtZTogc3RyaW5nLCAuLi5yZXN0OiBzdHJpbmdbXSkge1xuICByZXR1cm4gY3JlYXRlSW1wb3J0ZXIocHJlZml4KSguLi5bbmFtZSwgLi4ucmVzdF0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW1wb3J0ZXIoLi4ucHJlZml4OiBzdHJpbmdbXSkge1xuICByZXR1cm4gKC4uLnBhcnRzOiBzdHJpbmdbXSkgPT5cbiAgICBGbi5pbXBvcnRWYWx1ZShgJHtbLi4ucHJlZml4LCAuLi5wYXJ0c10uam9pbihcIjpcIil9YCk7XG59XG5cbi8qKlxuICpcbiAqIFJldHVybnMgYSBmdW5jdGlvbiB0byBzaW1wbGlmeSB2YWx1ZSBleHBvcnQgYnkgZW5mb3JjaW5nIHRoZSBuYW1pbmcgc2NoZW1hLlxuICpcbiAqIEBwYXJhbSBzY29wZSB0aGUgc2NvcGUgdW5kZXIgd2hpY2ggdGhlIENmbiBjb25zdHJ1Y3Qgd2lsbCBiZSBjcmVhdGVkXG4gKiBAcGFyYW0gcHJlZml4IGFuIG9wdGlvbmFsIGlkZW50aWZpZXIgdG8gcHJlZml4IHRoZSBleHBvcnRlZCBwYXJhbWV0ZXJcbiAqIEByZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBjcmVhdGVzIGEgQ2ZuT3V0cHV0IHdpdGggdGhlIGdpdmVuIGtleSBhbmQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUV4cG9ydGVyKHNjb3BlOiBDb25zdHJ1Y3QsIHByZWZpeD86IHN0cmluZykge1xuICBjb25zdCBzdGFja05hbWVQcmVmaXggPSBTdGFjay5vZihzY29wZSkuc3RhY2tOYW1lO1xuXG4gIGlmIChwcmVmaXggJiYga2ViYWJDYXNlKHByZWZpeCkgIT09IHByZWZpeCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgUGFyYW1ldGVyIHByZWZpeCBtdXN0IGJlIGtlYmFiLWNhc2UsIGdvdDogJHtwcmVmaXh9YCk7XG4gIH1cblxuICByZXR1cm4gKHtcbiAgICBuYW1lLFxuICAgIGtleSxcbiAgICB2YWx1ZSxcbiAgfToge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICB9KSA9PiB7XG4gICAgaWYgKGtlYmFiQ2FzZShrZXkpICE9PSBrZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUGFyYW1ldGVyIGV4cG9ydCBrZXkgbXVzdCBiZSBrZWJhYi1jYXNlLCBnb3Q6ICR7a2V5fWApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgQ2ZuT3V0cHV0KHNjb3BlLCBuYW1lLCB7XG4gICAgICB2YWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBuYW1lLFxuICAgICAgLy8gZmlsdGVyIGFueSBmYWxzeSB2YWx1ZXNcbiAgICAgIGV4cG9ydE5hbWU6IGAke1tzdGFja05hbWVQcmVmaXgsIHByZWZpeCwga2V5XS5maWx0ZXIoQm9vbGVhbikuam9pbihcIjpcIil9YCxcbiAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
@@ -26,6 +26,13 @@ export declare function getStageConfigurations<T extends z.ZodTypeAny>({ directo
26
26
  name: string;
27
27
  config: z.TypeOf<T>;
28
28
  }[];
29
+ /**
30
+ * Test, if the current deployment is that of a developer stack. This might be of interest for
31
+ * some constructs, as a different behavior is expected in the developer environment.
32
+ *
33
+ * @returns `true`, if a developer stack instance is deployed.
34
+ */
35
+ export declare function isDeveloperStack(): boolean;
29
36
  /**
30
37
  * Create an AWS CDK app.
31
38
  *
@@ -2,12 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseConfigFile = parseConfigFile;
4
4
  exports.getStageConfigurations = getStageConfigurations;
5
+ exports.isDeveloperStack = isDeveloperStack;
5
6
  exports.createApp = createApp;
6
7
  const fs = require("fs");
7
8
  const path = require("path/posix");
8
9
  const aws_cdk_lib_1 = require("aws-cdk-lib");
9
10
  const yaml = require("yaml");
10
11
  const zod_1 = require("zod");
12
+ const stageSuffixVariable = "DEVELOPER_STAGE_SUFFIX";
11
13
  /**
12
14
  * Parse a YAML configuration file and validate it against the given schema.
13
15
  *
@@ -51,6 +53,33 @@ function getStageConfigurations({ directory, schema, stageName, }) {
51
53
  };
52
54
  });
53
55
  }
56
+ /**
57
+ * Generate a custom stack ID, if the variable defined in {@link stageSuffixVariable} is set.
58
+ * The value will be appended as suffix to the ID. If the variable is not set, the original
59
+ * ID is returned.
60
+ *
61
+ * @param id The original ID to be used ad base.
62
+ * @returns The suffixed ID or the original ID, if no custom stack instance is created.
63
+ */
64
+ function generateId(id) {
65
+ let stageSuffixValue = process.env[stageSuffixVariable];
66
+ if (stageSuffixValue !== undefined) {
67
+ if (!stageSuffixValue.match(/^[a-zA-Z0-9]+$/)) {
68
+ throw new Error(`The value set in ${stageSuffixVariable} may not be empty and may only contain alphanumeric characters.`);
69
+ }
70
+ return `${id}-${stageSuffixValue}`;
71
+ }
72
+ return id;
73
+ }
74
+ /**
75
+ * Test, if the current deployment is that of a developer stack. This might be of interest for
76
+ * some constructs, as a different behavior is expected in the developer environment.
77
+ *
78
+ * @returns `true`, if a developer stack instance is deployed.
79
+ */
80
+ function isDeveloperStack() {
81
+ return process.env[stageSuffixVariable] !== undefined;
82
+ }
54
83
  /**
55
84
  * Create an AWS CDK app.
56
85
  *
@@ -71,7 +100,7 @@ function createApp({ directory, schema, createStack, }) {
71
100
  }
72
101
  class AppStage extends aws_cdk_lib_1.Stage {
73
102
  constructor(scope, id, props, stackConfig) {
74
- super(scope, id, props);
103
+ super(scope, generateId(id), props);
75
104
  createStack(this, stackConfig);
76
105
  }
77
106
  }
@@ -81,4 +110,4 @@ function createApp({ directory, schema, createStack, }) {
81
110
  });
82
111
  return app;
83
112
  }
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnRmlsZVBhcnNpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29uZmlnRmlsZVBhcnNpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFjQSwwQ0FrQkM7QUFXRCx3REFzQkM7QUFlRCw4QkFzQ0M7QUF0SEQseUJBQXlCO0FBQ3pCLG1DQUFtQztBQUNuQyw2Q0FBNEQ7QUFFNUQsNkJBQTZCO0FBQzdCLDZCQUF3QjtBQUV4Qjs7Ozs7O0dBTUc7QUFDSCxTQUFnQixlQUFlLENBQzdCLElBQVksRUFDWixNQUFTO0lBRVQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzlELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQWUsQ0FBQztJQUNoRCxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxZQUFZLE9BQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksS0FBSyxDQUNiLCtCQUErQixJQUFJLE9BQU87Z0JBQ3hDLENBQUMsQ0FBQyxNQUFNO3FCQUNMLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsQ0FDbEIsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQztJQUNWLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQixzQkFBc0IsQ0FBeUIsRUFDN0QsU0FBUyxFQUNULE1BQU0sRUFDTixTQUFTLEdBS1Y7SUFDQyxPQUFPLEVBQUU7U0FDTixXQUFXLENBQUMsU0FBUyxDQUFDO1NBQ3RCLE1BQU0sQ0FDTCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ1AsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FDL0Q7U0FDQSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUNaLE9BQU87WUFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDO1NBQzVELENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxTQUFnQixTQUFTLENBQXlCLEVBQ2hELFNBQVMsRUFDVCxNQUFNLEVBQ04sV0FBVyxHQUtaO0lBQ0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDO0lBRXJELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQ1YseUdBQXlHLENBQzFHLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxRQUFTLFNBQVEsbUJBQUs7UUFDMUIsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1YsS0FBaUIsRUFDakIsV0FBYztZQUVkLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLFdBQVcsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDakMsQ0FBQztLQUNGO0lBRUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxpQkFBRyxFQUFFLENBQUM7SUFFdEIsc0JBQXNCLENBQUMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUM5RCxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7UUFDbkIsSUFBSSxRQUFRLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUMsQ0FDRixDQUFDO0lBRUYsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoL3Bvc2l4XCI7XG5pbXBvcnQgeyBBcHAsIFN0YWNrLCBTdGFnZSwgU3RhZ2VQcm9wcyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIHlhbWwgZnJvbSBcInlhbWxcIjtcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbi8qKlxuICogUGFyc2UgYSBZQU1MIGNvbmZpZ3VyYXRpb24gZmlsZSBhbmQgdmFsaWRhdGUgaXQgYWdhaW5zdCB0aGUgZ2l2ZW4gc2NoZW1hLlxuICpcbiAqIEBwYXJhbSBmaWxlIHRoZSBmaWxlIHRvIHBhcnNlXG4gKiBAcGFyYW0gc2NoZW1hIHRoZSBzY2hlbWEgdG8gdmFsaWRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZVxuICogQHJldHVybnMgdGhlIHBhcnNlZCBjb25maWd1cmF0aW9uIG9iamVjdFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VDb25maWdGaWxlPFQgZXh0ZW5kcyB6LlpvZFR5cGVBbnk+KFxuICBmaWxlOiBzdHJpbmcsXG4gIHNjaGVtYTogVCxcbikge1xuICB0cnkge1xuICAgIGNvbnN0IGNvbmZpZ0RhdGEgPSB5YW1sLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhmaWxlLCBcInV0Zi04XCIpKTtcbiAgICByZXR1cm4gc2NoZW1hLnBhcnNlKGNvbmZpZ0RhdGEpIGFzIHouaW5mZXI8VD47XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIHouWm9kRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYHVuYWJsZSB0byBwYXJzZSBjb25maWcgZmlsZSAke2ZpbGV9OlxcblxcdGAgK1xuICAgICAgICAgIGUuZXJyb3JzXG4gICAgICAgICAgICAubWFwKChlcnIpID0+IGBhdCAnJHtlcnIucGF0aC5qb2luKFwiL1wiKX0nOiAke2Vyci5tZXNzYWdlfWApXG4gICAgICAgICAgICAuam9pbihcIlxcblxcdFwiKSxcbiAgICAgICk7XG4gICAgfVxuICAgIHRocm93IGU7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIHN0YWdlIGNvbmZpZ3VyYXRpb25zIGF2YWlsYWJsZSBpbiB0aGUgcHJvdmlkZWQgY29uZmlnIGRpcmVjdG9yeS5cbiAqXG4gKiBAcGFyYW0gZGlyZWN0b3J5IHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgc3RhZ2UgY29uZmlndXJhdGlvbnNcbiAqIEBwYXJhbSBzY2hlbWEgdGhlIHNjaGVtYSB0byB2YWxpZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBmaWxlc1xuICogQHBhcmFtIHN0YWdlTmFtZSB0aGUgbmFtZSBvZiB0aGUgc3RhZ2UsIGxlYXZlIHVuZGVmaW5lZCB0byByZXR1cm4gYWxsIHN0YWdlc1xuICpcbiAqIEByZXR1cm5zIGEgbGlzdCBvZiBzdGFnZSBuYW1lIGFuZCBwYXJzZWQgY29uZmlnIGNvbnRlbnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTdGFnZUNvbmZpZ3VyYXRpb25zPFQgZXh0ZW5kcyB6LlpvZFR5cGVBbnk+KHtcbiAgZGlyZWN0b3J5LFxuICBzY2hlbWEsXG4gIHN0YWdlTmFtZSxcbn06IHtcbiAgZGlyZWN0b3J5OiBzdHJpbmc7XG4gIHNjaGVtYTogVDtcbiAgc3RhZ2VOYW1lPzogc3RyaW5nO1xufSkge1xuICByZXR1cm4gZnNcbiAgICAucmVhZGRpclN5bmMoZGlyZWN0b3J5KVxuICAgIC5maWx0ZXIoXG4gICAgICAoZmlsZSkgPT5cbiAgICAgICAgL1xcLih5YT9tbCkkLy50ZXN0KGZpbGUpICYmXG4gICAgICAgICghc3RhZ2VOYW1lIHx8IGZpbGUucmVwbGFjZSgvXFwuKHlhP21sKSQvLCBcIlwiKSA9PT0gc3RhZ2VOYW1lKSxcbiAgICApXG4gICAgLm1hcCgoZmlsZSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogZmlsZS5yZXBsYWNlKC9cXC4oeWE/bWwpJC8sIFwiXCIpLFxuICAgICAgICBjb25maWc6IHBhcnNlQ29uZmlnRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LCBmaWxlKSwgc2NoZW1hKSxcbiAgICAgIH07XG4gICAgfSk7XG59XG5cbi8qKlxuICogQ3JlYXRlIGFuIEFXUyBDREsgYXBwLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gd2lsbCBjcmVhdGUgYSBDREsgYXBwIHdpdGggdGhlIHN0YWdlIGNvbmZpZ3VyYXRpb25zIGZyb20gdGhlXG4gKiBnaXZlbiBkaXJlY3RvcnkuICBUaGUgc3RhZ2UgaXMgY2hvc2VuIGJhc2VkIG9uIHRoZSBDREtfU1RBR0UgZW52aXJvbm1lbnRcbiAqIHZhcmlhYmxlLiBJZiBubyBzdGFnZSBpcyBzcGVjaWZpZWQsIGFsbCBzdGFnZXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgYXBwLlxuICpcbiAqIEBwYXJhbSBkaXJlY3RvcnkgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBzdGFnZSBjb25maWd1cmF0aW9uc1xuICogQHBhcmFtIHNjaGVtYSB0aGUgc2NoZW1hIHRvIHZhbGlkYXRlIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzXG4gKiBAcGFyYW0gY3JlYXRlU3RhY2sgYSBmdW5jdGlvbiB3aGljaCBpbnN0YW50aWF0ZXMgYSB1c2VyLXByb3ZpZGVkIHN0YWNrXG4gKlxuICogQHJldHVybnMgdGhlIGFwcFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQXBwPFQgZXh0ZW5kcyB6LlpvZFR5cGVBbnk+KHtcbiAgZGlyZWN0b3J5LFxuICBzY2hlbWEsXG4gIGNyZWF0ZVN0YWNrLFxufToge1xuICBkaXJlY3Rvcnk6IHN0cmluZztcbiAgc2NoZW1hOiBUO1xuICBjcmVhdGVTdGFjazogKHNjb3BlOiBDb25zdHJ1Y3QsIGNvbmZpZzogei5pbmZlcjxUPikgPT4gU3RhY2s7XG59KSB7XG4gIGNvbnN0IHN0YWdlTmFtZSA9IHByb2Nlc3MuZW52LkNES19TVEFHRSB8fCB1bmRlZmluZWQ7XG5cbiAgaWYgKCFzdGFnZU5hbWUpIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICBcIndhcm5pbmc6IG5vIHN0YWdlIHNwZWNpZmllZCB2aWEgQ0RLX1NUQUdFLCBzeW50aGVzaXppbmcgYWxsIHN0YWdlcy4gVGhpcyBpcyBwcm9iYWJseSBub3Qgd2hhdCB5b3Ugd2FudC5cIixcbiAgICApO1xuICB9XG5cbiAgY2xhc3MgQXBwU3RhZ2UgZXh0ZW5kcyBTdGFnZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICBzY29wZTogQ29uc3RydWN0LFxuICAgICAgaWQ6IHN0cmluZyxcbiAgICAgIHByb3BzOiBTdGFnZVByb3BzLFxuICAgICAgc3RhY2tDb25maWc6IFQsXG4gICAgKSB7XG4gICAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcbiAgICAgIGNyZWF0ZVN0YWNrKHRoaXMsIHN0YWNrQ29uZmlnKTtcbiAgICB9XG4gIH1cblxuICBjb25zdCBhcHAgPSBuZXcgQXBwKCk7XG5cbiAgZ2V0U3RhZ2VDb25maWd1cmF0aW9ucyh7IGRpcmVjdG9yeSwgc2NoZW1hLCBzdGFnZU5hbWUgfSkuZm9yRWFjaChcbiAgICAoeyBuYW1lLCBjb25maWcgfSkgPT4ge1xuICAgICAgbmV3IEFwcFN0YWdlKGFwcCwgbmFtZSwgY29uZmlnLmVudiwgY29uZmlnKTtcbiAgICB9LFxuICApO1xuXG4gIHJldHVybiBhcHA7XG59XG4iXX0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnRmlsZVBhcnNpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY29uZmlnRmlsZVBhcnNpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFnQkEsMENBa0JDO0FBV0Qsd0RBc0JDO0FBNkJELDRDQUVDO0FBZUQsOEJBc0NDO0FBdkpELHlCQUF5QjtBQUN6QixtQ0FBbUM7QUFDbkMsNkNBQTREO0FBRTVELDZCQUE2QjtBQUM3Qiw2QkFBd0I7QUFFeEIsTUFBTSxtQkFBbUIsR0FBRyx3QkFBd0IsQ0FBQztBQUVyRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQixlQUFlLENBQzdCLElBQVksRUFDWixNQUFTO0lBRVQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzlELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQWUsQ0FBQztJQUNoRCxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxZQUFZLE9BQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksS0FBSyxDQUNiLCtCQUErQixJQUFJLE9BQU87Z0JBQ3hDLENBQUMsQ0FBQyxNQUFNO3FCQUNMLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7cUJBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsQ0FDbEIsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQztJQUNWLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQixzQkFBc0IsQ0FBeUIsRUFDN0QsU0FBUyxFQUNULE1BQU0sRUFDTixTQUFTLEdBS1Y7SUFDQyxPQUFPLEVBQUU7U0FDTixXQUFXLENBQUMsU0FBUyxDQUFDO1NBQ3RCLE1BQU0sQ0FDTCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ1AsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FDL0Q7U0FDQSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUNaLE9BQU87WUFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDO1NBQzVELENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBUyxVQUFVLENBQUMsRUFBVTtJQUM1QixJQUFJLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN4RCxJQUFJLGdCQUFnQixLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQzlDLE1BQU0sSUFBSSxLQUFLLENBQ2Isb0JBQW9CLG1CQUFtQixpRUFBaUUsQ0FDekcsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLEdBQUcsRUFBRSxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFDckMsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBZ0IsZ0JBQWdCO0lBQzlCLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLFNBQVMsQ0FBQztBQUN4RCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsU0FBZ0IsU0FBUyxDQUF5QixFQUNoRCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFdBQVcsR0FLWjtJQUNDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQztJQUVyRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsSUFBSSxDQUNWLHlHQUF5RyxDQUMxRyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sUUFBUyxTQUFRLG1CQUFLO1FBQzFCLFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQWlCLEVBQ2pCLFdBQWM7WUFFZCxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwQyxXQUFXLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLENBQUM7S0FDRjtJQUVELE1BQU0sR0FBRyxHQUFHLElBQUksaUJBQUcsRUFBRSxDQUFDO0lBRXRCLHNCQUFzQixDQUFDLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FDOUQsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFO1FBQ25CLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM5QyxDQUFDLENBQ0YsQ0FBQztJQUVGLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aC9wb3NpeFwiO1xuaW1wb3J0IHsgQXBwLCBTdGFjaywgU3RhZ2UsIFN0YWdlUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyB5YW1sIGZyb20gXCJ5YW1sXCI7XG5pbXBvcnQgeyB6IH0gZnJvbSBcInpvZFwiO1xuXG5jb25zdCBzdGFnZVN1ZmZpeFZhcmlhYmxlID0gXCJERVZFTE9QRVJfU1RBR0VfU1VGRklYXCI7XG5cbi8qKlxuICogUGFyc2UgYSBZQU1MIGNvbmZpZ3VyYXRpb24gZmlsZSBhbmQgdmFsaWRhdGUgaXQgYWdhaW5zdCB0aGUgZ2l2ZW4gc2NoZW1hLlxuICpcbiAqIEBwYXJhbSBmaWxlIHRoZSBmaWxlIHRvIHBhcnNlXG4gKiBAcGFyYW0gc2NoZW1hIHRoZSBzY2hlbWEgdG8gdmFsaWRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZVxuICogQHJldHVybnMgdGhlIHBhcnNlZCBjb25maWd1cmF0aW9uIG9iamVjdFxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VDb25maWdGaWxlPFQgZXh0ZW5kcyB6LlpvZFR5cGVBbnk+KFxuICBmaWxlOiBzdHJpbmcsXG4gIHNjaGVtYTogVCxcbikge1xuICB0cnkge1xuICAgIGNvbnN0IGNvbmZpZ0RhdGEgPSB5YW1sLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhmaWxlLCBcInV0Zi04XCIpKTtcbiAgICByZXR1cm4gc2NoZW1hLnBhcnNlKGNvbmZpZ0RhdGEpIGFzIHouaW5mZXI8VD47XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIHouWm9kRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYHVuYWJsZSB0byBwYXJzZSBjb25maWcgZmlsZSAke2ZpbGV9OlxcblxcdGAgK1xuICAgICAgICAgIGUuZXJyb3JzXG4gICAgICAgICAgICAubWFwKChlcnIpID0+IGBhdCAnJHtlcnIucGF0aC5qb2luKFwiL1wiKX0nOiAke2Vyci5tZXNzYWdlfWApXG4gICAgICAgICAgICAuam9pbihcIlxcblxcdFwiKSxcbiAgICAgICk7XG4gICAgfVxuICAgIHRocm93IGU7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXR1cm5zIHN0YWdlIGNvbmZpZ3VyYXRpb25zIGF2YWlsYWJsZSBpbiB0aGUgcHJvdmlkZWQgY29uZmlnIGRpcmVjdG9yeS5cbiAqXG4gKiBAcGFyYW0gZGlyZWN0b3J5IHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgc3RhZ2UgY29uZmlndXJhdGlvbnNcbiAqIEBwYXJhbSBzY2hlbWEgdGhlIHNjaGVtYSB0byB2YWxpZGF0ZSB0aGUgY29uZmlndXJhdGlvbiBmaWxlc1xuICogQHBhcmFtIHN0YWdlTmFtZSB0aGUgbmFtZSBvZiB0aGUgc3RhZ2UsIGxlYXZlIHVuZGVmaW5lZCB0byByZXR1cm4gYWxsIHN0YWdlc1xuICpcbiAqIEByZXR1cm5zIGEgbGlzdCBvZiBzdGFnZSBuYW1lIGFuZCBwYXJzZWQgY29uZmlnIGNvbnRlbnRzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTdGFnZUNvbmZpZ3VyYXRpb25zPFQgZXh0ZW5kcyB6LlpvZFR5cGVBbnk+KHtcbiAgZGlyZWN0b3J5LFxuICBzY2hlbWEsXG4gIHN0YWdlTmFtZSxcbn06IHtcbiAgZGlyZWN0b3J5OiBzdHJpbmc7XG4gIHNjaGVtYTogVDtcbiAgc3RhZ2VOYW1lPzogc3RyaW5nO1xufSkge1xuICByZXR1cm4gZnNcbiAgICAucmVhZGRpclN5bmMoZGlyZWN0b3J5KVxuICAgIC5maWx0ZXIoXG4gICAgICAoZmlsZSkgPT5cbiAgICAgICAgL1xcLih5YT9tbCkkLy50ZXN0KGZpbGUpICYmXG4gICAgICAgICghc3RhZ2VOYW1lIHx8IGZpbGUucmVwbGFjZSgvXFwuKHlhP21sKSQvLCBcIlwiKSA9PT0gc3RhZ2VOYW1lKSxcbiAgICApXG4gICAgLm1hcCgoZmlsZSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogZmlsZS5yZXBsYWNlKC9cXC4oeWE/bWwpJC8sIFwiXCIpLFxuICAgICAgICBjb25maWc6IHBhcnNlQ29uZmlnRmlsZShwYXRoLmpvaW4oZGlyZWN0b3J5LCBmaWxlKSwgc2NoZW1hKSxcbiAgICAgIH07XG4gICAgfSk7XG59XG5cbi8qKlxuICogR2VuZXJhdGUgYSBjdXN0b20gc3RhY2sgSUQsIGlmIHRoZSB2YXJpYWJsZSBkZWZpbmVkIGluIHtAbGluayBzdGFnZVN1ZmZpeFZhcmlhYmxlfSBpcyBzZXQuXG4gKiBUaGUgdmFsdWUgd2lsbCBiZSBhcHBlbmRlZCBhcyBzdWZmaXggdG8gdGhlIElELiBJZiB0aGUgdmFyaWFibGUgaXMgbm90IHNldCwgdGhlIG9yaWdpbmFsXG4gKiBJRCBpcyByZXR1cm5lZC5cbiAqXG4gKiBAcGFyYW0gaWQgVGhlIG9yaWdpbmFsIElEIHRvIGJlIHVzZWQgYWQgYmFzZS5cbiAqIEByZXR1cm5zIFRoZSBzdWZmaXhlZCBJRCBvciB0aGUgb3JpZ2luYWwgSUQsIGlmIG5vIGN1c3RvbSBzdGFjayBpbnN0YW5jZSBpcyBjcmVhdGVkLlxuICovXG5mdW5jdGlvbiBnZW5lcmF0ZUlkKGlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgc3RhZ2VTdWZmaXhWYWx1ZSA9IHByb2Nlc3MuZW52W3N0YWdlU3VmZml4VmFyaWFibGVdO1xuICBpZiAoc3RhZ2VTdWZmaXhWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgaWYgKCFzdGFnZVN1ZmZpeFZhbHVlLm1hdGNoKC9eW2EtekEtWjAtOV0rJC8pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUaGUgdmFsdWUgc2V0IGluICR7c3RhZ2VTdWZmaXhWYXJpYWJsZX0gbWF5IG5vdCBiZSBlbXB0eSBhbmQgbWF5IG9ubHkgY29udGFpbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycy5gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGAke2lkfS0ke3N0YWdlU3VmZml4VmFsdWV9YDtcbiAgfVxuICByZXR1cm4gaWQ7XG59XG5cbi8qKlxuICogVGVzdCwgaWYgdGhlIGN1cnJlbnQgZGVwbG95bWVudCBpcyB0aGF0IG9mIGEgZGV2ZWxvcGVyIHN0YWNrLiBUaGlzIG1pZ2h0IGJlIG9mIGludGVyZXN0IGZvclxuICogc29tZSBjb25zdHJ1Y3RzLCBhcyBhIGRpZmZlcmVudCBiZWhhdmlvciBpcyBleHBlY3RlZCBpbiB0aGUgZGV2ZWxvcGVyIGVudmlyb25tZW50LlxuICpcbiAqIEByZXR1cm5zIGB0cnVlYCwgaWYgYSBkZXZlbG9wZXIgc3RhY2sgaW5zdGFuY2UgaXMgZGVwbG95ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RldmVsb3BlclN0YWNrKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gcHJvY2Vzcy5lbnZbc3RhZ2VTdWZmaXhWYXJpYWJsZV0gIT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYW4gQVdTIENESyBhcHAuXG4gKlxuICogVGhpcyBmdW5jdGlvbiB3aWxsIGNyZWF0ZSBhIENESyBhcHAgd2l0aCB0aGUgc3RhZ2UgY29uZmlndXJhdGlvbnMgZnJvbSB0aGVcbiAqIGdpdmVuIGRpcmVjdG9yeS4gIFRoZSBzdGFnZSBpcyBjaG9zZW4gYmFzZWQgb24gdGhlIENES19TVEFHRSBlbnZpcm9ubWVudFxuICogdmFyaWFibGUuIElmIG5vIHN0YWdlIGlzIHNwZWNpZmllZCwgYWxsIHN0YWdlcyB3aWxsIGJlIGFkZGVkIHRvIHRoZSBhcHAuXG4gKlxuICogQHBhcmFtIGRpcmVjdG9yeSB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIHN0YWdlIGNvbmZpZ3VyYXRpb25zXG4gKiBAcGFyYW0gc2NoZW1hIHRoZSBzY2hlbWEgdG8gdmFsaWRhdGUgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXNcbiAqIEBwYXJhbSBjcmVhdGVTdGFjayBhIGZ1bmN0aW9uIHdoaWNoIGluc3RhbnRpYXRlcyBhIHVzZXItcHJvdmlkZWQgc3RhY2tcbiAqXG4gKiBAcmV0dXJucyB0aGUgYXBwXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBcHA8VCBleHRlbmRzIHouWm9kVHlwZUFueT4oe1xuICBkaXJlY3RvcnksXG4gIHNjaGVtYSxcbiAgY3JlYXRlU3RhY2ssXG59OiB7XG4gIGRpcmVjdG9yeTogc3RyaW5nO1xuICBzY2hlbWE6IFQ7XG4gIGNyZWF0ZVN0YWNrOiAoc2NvcGU6IENvbnN0cnVjdCwgY29uZmlnOiB6LmluZmVyPFQ+KSA9PiBTdGFjaztcbn0pIHtcbiAgY29uc3Qgc3RhZ2VOYW1lID0gcHJvY2Vzcy5lbnYuQ0RLX1NUQUdFIHx8IHVuZGVmaW5lZDtcblxuICBpZiAoIXN0YWdlTmFtZSkge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIFwid2FybmluZzogbm8gc3RhZ2Ugc3BlY2lmaWVkIHZpYSBDREtfU1RBR0UsIHN5bnRoZXNpemluZyBhbGwgc3RhZ2VzLiBUaGlzIGlzIHByb2JhYmx5IG5vdCB3aGF0IHlvdSB3YW50LlwiLFxuICAgICk7XG4gIH1cblxuICBjbGFzcyBBcHBTdGFnZSBleHRlbmRzIFN0YWdlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgICBpZDogc3RyaW5nLFxuICAgICAgcHJvcHM6IFN0YWdlUHJvcHMsXG4gICAgICBzdGFja0NvbmZpZzogVCxcbiAgICApIHtcbiAgICAgIHN1cGVyKHNjb3BlLCBnZW5lcmF0ZUlkKGlkKSwgcHJvcHMpO1xuICAgICAgY3JlYXRlU3RhY2sodGhpcywgc3RhY2tDb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGFwcCA9IG5ldyBBcHAoKTtcblxuICBnZXRTdGFnZUNvbmZpZ3VyYXRpb25zKHsgZGlyZWN0b3J5LCBzY2hlbWEsIHN0YWdlTmFtZSB9KS5mb3JFYWNoKFxuICAgICh7IG5hbWUsIGNvbmZpZyB9KSA9PiB7XG4gICAgICBuZXcgQXBwU3RhZ2UoYXBwLCBuYW1lLCBjb25maWcuZW52LCBjb25maWcpO1xuICAgIH0sXG4gICk7XG5cbiAgcmV0dXJuIGFwcDtcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Test, if a given construct is marked as deactivated by the environment variable.
3
+ * @param name The name/id of the construct to test.
4
+ * @returns `true`, if the construct is contained in the list of deactivated constructs.
5
+ */
6
+ export declare function isDeactivatedConstruct(name: string): boolean;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDeactivatedConstruct = isDeactivatedConstruct;
4
+ /**
5
+ * The name of the environment variable that contains the deactivated constructs.
6
+ */
7
+ const deactivatedConstructsVariable = "DEACTIVATED_CONSTRUCTS";
8
+ /**
9
+ * Test, if a given construct is marked as deactivated by the environment variable.
10
+ * @param name The name/id of the construct to test.
11
+ * @returns `true`, if the construct is contained in the list of deactivated constructs.
12
+ */
13
+ function isDeactivatedConstruct(name) {
14
+ let deactivatedConstructsValue = process.env[deactivatedConstructsVariable];
15
+ if (deactivatedConstructsValue) {
16
+ const deactivatedComponents = deactivatedConstructsValue
17
+ ? deactivatedConstructsValue.split(/\s+/)
18
+ : [];
19
+ if (deactivatedComponents.includes(name)) {
20
+ return true;
21
+ }
22
+ }
23
+ return false;
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhY3RpdmF0ZWRDb25zdHJ1Y3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZGVhY3RpdmF0ZWRDb25zdHJ1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFVQSx3REFXQztBQXJCRDs7R0FFRztBQUNILE1BQU0sNkJBQTZCLEdBQUcsd0JBQXdCLENBQUM7QUFFL0Q7Ozs7R0FJRztBQUNILFNBQWdCLHNCQUFzQixDQUFDLElBQVk7SUFDakQsSUFBSSwwQkFBMEIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDNUUsSUFBSSwwQkFBMEIsRUFBRSxDQUFDO1FBQy9CLE1BQU0scUJBQXFCLEdBQUcsMEJBQTBCO1lBQ3RELENBQUMsQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxJQUFJLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBkZWFjdGl2YXRlZCBjb25zdHJ1Y3RzLlxuICovXG5jb25zdCBkZWFjdGl2YXRlZENvbnN0cnVjdHNWYXJpYWJsZSA9IFwiREVBQ1RJVkFURURfQ09OU1RSVUNUU1wiO1xuXG4vKipcbiAqIFRlc3QsIGlmIGEgZ2l2ZW4gY29uc3RydWN0IGlzIG1hcmtlZCBhcyBkZWFjdGl2YXRlZCBieSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUuXG4gKiBAcGFyYW0gbmFtZSBUaGUgbmFtZS9pZCBvZiB0aGUgY29uc3RydWN0IHRvIHRlc3QuXG4gKiBAcmV0dXJucyBgdHJ1ZWAsIGlmIHRoZSBjb25zdHJ1Y3QgaXMgY29udGFpbmVkIGluIHRoZSBsaXN0IG9mIGRlYWN0aXZhdGVkIGNvbnN0cnVjdHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RlYWN0aXZhdGVkQ29uc3RydWN0KG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBsZXQgZGVhY3RpdmF0ZWRDb25zdHJ1Y3RzVmFsdWUgPSBwcm9jZXNzLmVudltkZWFjdGl2YXRlZENvbnN0cnVjdHNWYXJpYWJsZV07XG4gIGlmIChkZWFjdGl2YXRlZENvbnN0cnVjdHNWYWx1ZSkge1xuICAgIGNvbnN0IGRlYWN0aXZhdGVkQ29tcG9uZW50cyA9IGRlYWN0aXZhdGVkQ29uc3RydWN0c1ZhbHVlXG4gICAgICA/IGRlYWN0aXZhdGVkQ29uc3RydWN0c1ZhbHVlLnNwbGl0KC9cXHMrLylcbiAgICAgIDogW107XG4gICAgaWYgKGRlYWN0aXZhdGVkQ29tcG9uZW50cy5pbmNsdWRlcyhuYW1lKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIHJldHVybiBmYWxzZTtcbn1cbiJdfQ==
@@ -1,3 +1,4 @@
1
1
  export * from "./configFileParsing";
2
+ export * from "./deactivatedConstruct";
2
3
  export * from "./functions";
3
4
  export * from "./ImportValue";
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./configFileParsing"), exports);
18
+ __exportStar(require("./deactivatedConstruct"), exports);
18
19
  __exportStar(require("./functions"), exports);
19
20
  __exportStar(require("./ImportValue"), exports);
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUFvQztBQUNwQyw4Q0FBNEI7QUFDNUIsZ0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vY29uZmlnRmlsZVBhcnNpbmdcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Z1bmN0aW9uc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vSW1wb3J0VmFsdWVcIjtcbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUFvQztBQUNwQyx5REFBdUM7QUFDdkMsOENBQTRCO0FBQzVCLGdEQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2NvbmZpZ0ZpbGVQYXJzaW5nXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9kZWFjdGl2YXRlZENvbnN0cnVjdFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZnVuY3Rpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9JbXBvcnRWYWx1ZVwiO1xuIl19
package/package.json CHANGED
@@ -87,9 +87,10 @@
87
87
  ],
88
88
  "main": "lib/index.js",
89
89
  "license": "Apache-2.0",
90
- "version": "0.8.4",
90
+ "version": "0.9.1",
91
91
  "jest": {
92
92
  "coverageProvider": "v8",
93
+ "maxWorkers": 4,
93
94
  "testMatch": [
94
95
  "<rootDir>/@(src|test)/**/*(*.)@(spec|test).ts?(x)",
95
96
  "<rootDir>/@(src|test)/**/__tests__/**/*.ts?(x)",