truemark-cdk-lib 1.2.3-alpha.1 → 1.2.4-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/aws-apigatewayv2/lib/standard-domain-name.js +3 -3
  2. package/{aws-tags → aws-cdk}/index.d.ts +0 -0
  3. package/{aws-tags → aws-cdk}/index.js +0 -0
  4. package/{aws-codepipeline → aws-cdk}/lib/extended-stack.d.ts +1 -1
  5. package/aws-cdk/lib/extended-stack.js +72 -0
  6. package/aws-cdk/lib/index.d.ts +5 -0
  7. package/{aws-tags → aws-cdk}/lib/index.js +5 -1
  8. package/aws-cdk/lib/standard-app.d.ts +19 -0
  9. package/aws-cdk/lib/standard-app.js +27 -0
  10. package/aws-cdk/lib/standard-environment.d.ts +10 -0
  11. package/aws-cdk/lib/standard-environment.js +3 -0
  12. package/aws-cdk/lib/standard-stack.d.ts +25 -0
  13. package/aws-cdk/lib/standard-stack.js +35 -0
  14. package/aws-cdk/lib/standard-stage.d.ts +20 -0
  15. package/aws-cdk/lib/standard-stage.js +21 -0
  16. package/{aws-tags → aws-cdk}/lib/standard-tags.d.ts +33 -5
  17. package/aws-cdk/lib/standard-tags.js +178 -0
  18. package/aws-centergauge/lib/alerts-topic.js +3 -3
  19. package/aws-codepipeline/lib/index.d.ts +1 -1
  20. package/aws-codepipeline/lib/index.js +2 -2
  21. package/aws-dynamodb/lib/standard-table.js +3 -3
  22. package/aws-ecs/lib/standard-fargate-cluster.js +3 -3
  23. package/aws-ecs/lib/standard-fargate-service.js +3 -3
  24. package/aws-sqs/lib/standard-queue.d.ts +11 -0
  25. package/aws-sqs/lib/standard-queue.js +10 -8
  26. package/aws-vpc/lib/network-parameters.js +3 -3
  27. package/helpers/lib/string-helper.d.ts +12 -0
  28. package/helpers/lib/string-helper.js +23 -1
  29. package/index.d.ts +1 -1
  30. package/index.js +2 -2
  31. package/package.json +3 -2
  32. package/test/aws-lambda/extended-python-function.test.js +11 -14
  33. package/test/aws-lambda/standard-python-function.test.js +10 -11
  34. package/test/aws-website/website.test.js +3 -3
  35. package/test/helpers/string-helper.test.js +15 -1
  36. package/aws-codepipeline/lib/extended-stack.js +0 -72
  37. package/aws-tags/lib/index.d.ts +0 -1
  38. package/aws-tags/lib/standard-tags.js +0 -178
@@ -6,8 +6,8 @@ const tmroute53 = require("../../aws-route53");
6
6
  const targets = require("aws-cdk-lib/aws-route53-targets");
7
7
  const aws_apigatewayv2_alpha_1 = require("@aws-cdk/aws-apigatewayv2-alpha");
8
8
  const aws_route53_1 = require("aws-cdk-lib/aws-route53");
9
- const aws_tags_1 = require("../../aws-tags");
10
9
  const helpers_1 = require("../../helpers");
10
+ const aws_cdk_1 = require("../../aws-cdk");
11
11
  /**
12
12
  * Standard construct used to create an API Gateway V2 Domain Name.
13
13
  */
@@ -23,7 +23,7 @@ class StandardDomainName extends constructs_1.Construct {
23
23
  securityPolicy: props.securityPolicy
24
24
  });
25
25
  this.recordTarget = aws_route53_1.RecordTarget.fromAlias(new targets.ApiGatewayv2DomainProperties(this.gatewayDomainName.regionalDomainName, this.gatewayDomainName.regionalHostedZoneId));
26
- new aws_tags_1.StandardTags(this, {
26
+ new aws_cdk_1.StandardTags(this, {
27
27
  suppress: props === null || props === void 0 ? void 0 : props.suppressTagging
28
28
  }).addAutomationComponentTags({
29
29
  url: helpers_1.CDK_NPMJS_URL,
@@ -66,4 +66,4 @@ class StandardDomainName extends constructs_1.Construct {
66
66
  }
67
67
  }
68
68
  exports.StandardDomainName = StandardDomainName;
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtZG9tYWluLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1kb21haW4tbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBcUM7QUFDckMsK0NBQStDO0FBQy9DLDJEQUEyRDtBQUUzRCw0RUFBMkU7QUFDM0UseURBQThEO0FBRTlELDZDQUE0QztBQUM1QywyQ0FBd0Q7QUEyQnhEOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQU8vQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQThCOztRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxXQUFXLFNBQUcsS0FBSyxDQUFDLFdBQVcsbUNBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxtQ0FBVSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDdkQsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFO1lBQ3RDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7U0FDckMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRywwQkFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyw0QkFBNEIsQ0FDakYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7UUFFM0YsSUFBSSx1QkFBWSxDQUFDLElBQUksRUFBRTtZQUNyQixRQUFRLEVBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGVBQWU7U0FDakMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDO1lBQzVCLEdBQUcsRUFBRSx1QkFBYTtZQUNsQixNQUFNLEVBQUUsb0JBQVU7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHFCQUFxQixDQUFDLE1BQWU7UUFDbkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILDRCQUE0QixDQUFDLE1BQWU7UUFDMUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLDRCQUE0QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBakVELGdEQWlFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgdG1yb3V0ZTUzIGZyb20gXCIuLi8uLi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0ICogYXMgdGFyZ2V0cyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0c1wiO1xuaW1wb3J0IHtJQ2VydGlmaWNhdGV9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyXCI7XG5pbXBvcnQge0RvbWFpbk5hbWUsIFNlY3VyaXR5UG9saWN5fSBmcm9tIFwiQGF3cy1jZGsvYXdzLWFwaWdhdGV3YXl2Mi1hbHBoYVwiO1xuaW1wb3J0IHtBUmVjb3JkLCBSZWNvcmRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtXZWlnaHRlZExhdGVuY3lBUmVjb3JkfSBmcm9tIFwiLi4vLi4vYXdzLXJvdXRlNTNcIjtcbmltcG9ydCB7U3RhbmRhcmRUYWdzfSBmcm9tIFwiLi4vLi4vYXdzLXRhZ3NcIjtcbmltcG9ydCB7Q0RLX05QTUpTX1VSTCwgQ0RLX1ZFTkRPUn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBTdGFuZGFyZERvbWFpbk5hbWVQcm9wcyBleHRlbmRzIHRtcm91dGU1My5Eb21haW5OYW1lUHJvcHMge1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uYWwgQUNNIGNlcnRpZmljYXRlIGZvciB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBvbmUgaXMgZ2VuZXJhdGVkXG4gICAqL1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZT86IElDZXJ0aWZpY2F0ZTtcblxuICAvKipcbiAgICogVGhlIFRyYW5zcG9ydCBMYXllciBTZWN1cml0eSAoVExTKSB2ZXJzaW9uICsgY2lwaGVyIHN1aXRlIGZvciB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBTZWN1cml0eVBvbGljeS5UTFNfMV8yXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eVBvbGljeT86IFNlY3VyaXR5UG9saWN5O1xuXG4gIC8qKlxuICAgKiBTZXR0aW5nIHRoaXMgdG8gdHJ1ZSB3aWxsIHN1cHByZXNzIHRoZSBjcmVhdGlvbiBvZiBkZWZhdWx0IHRhZ3Mgb24gcmVzb3VyY2VzXG4gICAqIGNyZWF0ZWQgYnkgdGhpcyBjb25zdHJ1Y3QuIERlZmF1bHQgaXMgZmFsc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzVGFnZ2luZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogU3RhbmRhcmQgY29uc3RydWN0IHVzZWQgdG8gY3JlYXRlIGFuIEFQSSBHYXRld2F5IFYyIERvbWFpbiBOYW1lLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmREb21haW5OYW1lIGV4dGVuZHMgQ29uc3RydWN0IHtcblxuICByZWFkb25seSBkb21haW5OYW1lOiB0bXJvdXRlNTMuRG9tYWluTmFtZTtcbiAgcmVhZG9ubHkgY2VydGlmaWNhdGU6IElDZXJ0aWZpY2F0ZTtcbiAgcmVhZG9ubHkgcmVjb3JkVGFyZ2V0OiBSZWNvcmRUYXJnZXQ7XG4gIHJlYWRvbmx5IGdhdGV3YXlEb21haW5OYW1lOiBEb21haW5OYW1lO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTdGFuZGFyZERvbWFpbk5hbWVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5kb21haW5OYW1lID0gbmV3IHRtcm91dGU1My5Eb21haW5OYW1lKHByb3BzKTtcbiAgICB0aGlzLmNlcnRpZmljYXRlID0gcHJvcHMuY2VydGlmaWNhdGUgPz8gdGhpcy5kb21haW5OYW1lLmNyZWF0ZUNlcnRpZmljYXRlKHNjb3BlKTtcbiAgICB0aGlzLmdhdGV3YXlEb21haW5OYW1lID0gbmV3IERvbWFpbk5hbWUodGhpcywgXCJEZWZhdWx0XCIsIHtcbiAgICAgIGRvbWFpbk5hbWU6IHRoaXMuZG9tYWluTmFtZS50b1N0cmluZygpLFxuICAgICAgY2VydGlmaWNhdGU6IHRoaXMuY2VydGlmaWNhdGUsXG4gICAgICBzZWN1cml0eVBvbGljeTogcHJvcHMuc2VjdXJpdHlQb2xpY3lcbiAgICB9KTtcbiAgICB0aGlzLnJlY29yZFRhcmdldCA9IFJlY29yZFRhcmdldC5mcm9tQWxpYXMobmV3IHRhcmdldHMuQXBpR2F0ZXdheXYyRG9tYWluUHJvcGVydGllcyhcbiAgICAgIHRoaXMuZ2F0ZXdheURvbWFpbk5hbWUucmVnaW9uYWxEb21haW5OYW1lLCB0aGlzLmdhdGV3YXlEb21haW5OYW1lLnJlZ2lvbmFsSG9zdGVkWm9uZUlkKSk7XG5cbiAgICBuZXcgU3RhbmRhcmRUYWdzKHRoaXMsIHtcbiAgICAgIHN1cHByZXNzOiBwcm9wcz8uc3VwcHJlc3NUYWdnaW5nXG4gICAgfSkuYWRkQXV0b21hdGlvbkNvbXBvbmVudFRhZ3Moe1xuICAgICAgdXJsOiBDREtfTlBNSlNfVVJMLFxuICAgICAgdmVuZG9yOiBDREtfVkVORE9SXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHJvdXRlNTMgQVJlY29yZCBwb2ludGluZyB0byB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKi9cbiAgY3JlYXRlQVJlY29yZCgpOiBBUmVjb3JkIHtcbiAgICByZXR1cm4gdGhpcy5kb21haW5OYW1lLmNyZWF0ZUFSZWNvcmQodGhpcywgdGhpcy5yZWNvcmRUYXJnZXQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSByb3V0ZTUzIHdlaWdodGVkIHJlY29yZCBwb2ludGluZyB0byB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKlxuICAgKiBAcGFyYW0gd2VpZ2h0IHRoZSBpbml0aWFsIHdlaWdodDsgZGVmYXVsdHMgdG8gMFxuICAgKi9cbiAgY3JlYXRlV2VpZ2h0ZWRBUmVjb3JkKHdlaWdodD86IG51bWJlcik6IEFSZWNvcmQge1xuICAgIHJldHVybiB0aGlzLmRvbWFpbk5hbWUuY3JlYXRlV2VpZ2h0ZWRBUmVjb3JkKHRoaXMsIHRoaXMucmVjb3JkVGFyZ2V0LCB3ZWlnaHQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSByb3V0ZTUzIGxhdGVuY3kgcmVjb3JkIHBvaW50aW5nIHRvIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqL1xuICBjcmVhdGVMYXRlbmN5QVJlY29yZCgpOiBBUmVjb3JkIHtcbiAgICByZXR1cm4gdGhpcy5kb21haW5OYW1lLmNyZWF0ZUxhdGVuY3lBUmVjb3JkKHRoaXMsIHRoaXMucmVjb3JkVGFyZ2V0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcm91dGU1MyB3ZWlnaHRlZCBsYXRlbmN5IHJlY29yZCBwb2ludGluZyB0byB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKlxuICAgKiBAcGFyYW0gd2VpZ2h0IHRoZSBpbml0aWFsIHdlaWdodDsgZGVmYXVsdHMgdG8gMFxuICAgKi9cbiAgY3JlYXRlV2VpZ2h0ZWRMYXRlbmN5QVJlY29yZCh3ZWlnaHQ/OiBudW1iZXIpOiBXZWlnaHRlZExhdGVuY3lBUmVjb3JkIHtcbiAgICByZXR1cm4gdGhpcy5kb21haW5OYW1lLmNyZWF0ZVdlaWdodGVkTGF0ZW5jeUFSZWNvcmQodGhpcywgdGhpcy5yZWNvcmRUYXJnZXQsIHdlaWdodCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgRlFETiBvZiB0aGlzIGRvbWFpbiBuYW1lLlxuICAgKi9cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kb21haW5OYW1lLnRvU3RyaW5nKCk7XG4gIH1cbn1cbiJdfQ==
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtZG9tYWluLW5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1kb21haW4tbmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBcUM7QUFDckMsK0NBQStDO0FBQy9DLDJEQUEyRDtBQUUzRCw0RUFBMkU7QUFDM0UseURBQThEO0FBRTlELDJDQUF3RDtBQUN4RCwyQ0FBMkM7QUEyQjNDOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQU8vQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQThCOztRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxTQUFTLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxXQUFXLFNBQUcsS0FBSyxDQUFDLFdBQVcsbUNBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxtQ0FBVSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDdkQsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFO1lBQ3RDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7U0FDckMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRywwQkFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyw0QkFBNEIsQ0FDakYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7UUFFM0YsSUFBSSxzQkFBWSxDQUFDLElBQUksRUFBRTtZQUNyQixRQUFRLEVBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGVBQWU7U0FDakMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDO1lBQzVCLEdBQUcsRUFBRSx1QkFBYTtZQUNsQixNQUFNLEVBQUUsb0JBQVU7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHFCQUFxQixDQUFDLE1BQWU7UUFDbkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILDRCQUE0QixDQUFDLE1BQWU7UUFDMUMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLDRCQUE0QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBakVELGdEQWlFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgdG1yb3V0ZTUzIGZyb20gXCIuLi8uLi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0ICogYXMgdGFyZ2V0cyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXJvdXRlNTMtdGFyZ2V0c1wiO1xuaW1wb3J0IHtJQ2VydGlmaWNhdGV9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyXCI7XG5pbXBvcnQge0RvbWFpbk5hbWUsIFNlY3VyaXR5UG9saWN5fSBmcm9tIFwiQGF3cy1jZGsvYXdzLWFwaWdhdGV3YXl2Mi1hbHBoYVwiO1xuaW1wb3J0IHtBUmVjb3JkLCBSZWNvcmRUYXJnZXR9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtcm91dGU1M1wiO1xuaW1wb3J0IHtXZWlnaHRlZExhdGVuY3lBUmVjb3JkfSBmcm9tIFwiLi4vLi4vYXdzLXJvdXRlNTNcIjtcbmltcG9ydCB7Q0RLX05QTUpTX1VSTCwgQ0RLX1ZFTkRPUn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7U3RhbmRhcmRUYWdzfSBmcm9tIFwiLi4vLi4vYXdzLWNka1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkRG9tYWluTmFtZVByb3BzIGV4dGVuZHMgdG1yb3V0ZTUzLkRvbWFpbk5hbWVQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBvcHRpb25hbCBBQ00gY2VydGlmaWNhdGUgZm9yIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IG9uZSBpcyBnZW5lcmF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNlcnRpZmljYXRlPzogSUNlcnRpZmljYXRlO1xuXG4gIC8qKlxuICAgKiBUaGUgVHJhbnNwb3J0IExheWVyIFNlY3VyaXR5IChUTFMpIHZlcnNpb24gKyBjaXBoZXIgc3VpdGUgZm9yIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IFNlY3VyaXR5UG9saWN5LlRMU18xXzJcbiAgICovXG4gIHJlYWRvbmx5IHNlY3VyaXR5UG9saWN5PzogU2VjdXJpdHlQb2xpY3k7XG5cbiAgLyoqXG4gICAqIFNldHRpbmcgdGhpcyB0byB0cnVlIHdpbGwgc3VwcHJlc3MgdGhlIGNyZWF0aW9uIG9mIGRlZmF1bHQgdGFncyBvbiByZXNvdXJjZXNcbiAgICogY3JlYXRlZCBieSB0aGlzIGNvbnN0cnVjdC4gRGVmYXVsdCBpcyBmYWxzZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdnaW5nPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTdGFuZGFyZCBjb25zdHJ1Y3QgdXNlZCB0byBjcmVhdGUgYW4gQVBJIEdhdGV3YXkgVjIgRG9tYWluIE5hbWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZERvbWFpbk5hbWUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIHJlYWRvbmx5IGRvbWFpbk5hbWU6IHRtcm91dGU1My5Eb21haW5OYW1lO1xuICByZWFkb25seSBjZXJ0aWZpY2F0ZTogSUNlcnRpZmljYXRlO1xuICByZWFkb25seSByZWNvcmRUYXJnZXQ6IFJlY29yZFRhcmdldDtcbiAgcmVhZG9ubHkgZ2F0ZXdheURvbWFpbk5hbWU6IERvbWFpbk5hbWU7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YW5kYXJkRG9tYWluTmFtZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLmRvbWFpbk5hbWUgPSBuZXcgdG1yb3V0ZTUzLkRvbWFpbk5hbWUocHJvcHMpO1xuICAgIHRoaXMuY2VydGlmaWNhdGUgPSBwcm9wcy5jZXJ0aWZpY2F0ZSA/PyB0aGlzLmRvbWFpbk5hbWUuY3JlYXRlQ2VydGlmaWNhdGUoc2NvcGUpO1xuICAgIHRoaXMuZ2F0ZXdheURvbWFpbk5hbWUgPSBuZXcgRG9tYWluTmFtZSh0aGlzLCBcIkRlZmF1bHRcIiwge1xuICAgICAgZG9tYWluTmFtZTogdGhpcy5kb21haW5OYW1lLnRvU3RyaW5nKCksXG4gICAgICBjZXJ0aWZpY2F0ZTogdGhpcy5jZXJ0aWZpY2F0ZSxcbiAgICAgIHNlY3VyaXR5UG9saWN5OiBwcm9wcy5zZWN1cml0eVBvbGljeVxuICAgIH0pO1xuICAgIHRoaXMucmVjb3JkVGFyZ2V0ID0gUmVjb3JkVGFyZ2V0LmZyb21BbGlhcyhuZXcgdGFyZ2V0cy5BcGlHYXRld2F5djJEb21haW5Qcm9wZXJ0aWVzKFxuICAgICAgdGhpcy5nYXRld2F5RG9tYWluTmFtZS5yZWdpb25hbERvbWFpbk5hbWUsIHRoaXMuZ2F0ZXdheURvbWFpbk5hbWUucmVnaW9uYWxIb3N0ZWRab25lSWQpKTtcblxuICAgIG5ldyBTdGFuZGFyZFRhZ3ModGhpcywge1xuICAgICAgc3VwcHJlc3M6IHByb3BzPy5zdXBwcmVzc1RhZ2dpbmdcbiAgICB9KS5hZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyh7XG4gICAgICB1cmw6IENES19OUE1KU19VUkwsXG4gICAgICB2ZW5kb3I6IENES19WRU5ET1JcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcm91dGU1MyBBUmVjb3JkIHBvaW50aW5nIHRvIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqL1xuICBjcmVhdGVBUmVjb3JkKCk6IEFSZWNvcmQge1xuICAgIHJldHVybiB0aGlzLmRvbWFpbk5hbWUuY3JlYXRlQVJlY29yZCh0aGlzLCB0aGlzLnJlY29yZFRhcmdldCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHJvdXRlNTMgd2VpZ2h0ZWQgcmVjb3JkIHBvaW50aW5nIHRvIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSB3ZWlnaHQgdGhlIGluaXRpYWwgd2VpZ2h0OyBkZWZhdWx0cyB0byAwXG4gICAqL1xuICBjcmVhdGVXZWlnaHRlZEFSZWNvcmQod2VpZ2h0PzogbnVtYmVyKTogQVJlY29yZCB7XG4gICAgcmV0dXJuIHRoaXMuZG9tYWluTmFtZS5jcmVhdGVXZWlnaHRlZEFSZWNvcmQodGhpcywgdGhpcy5yZWNvcmRUYXJnZXQsIHdlaWdodCk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHJvdXRlNTMgbGF0ZW5jeSByZWNvcmQgcG9pbnRpbmcgdG8gdGhpcyBkb21haW4gbmFtZS5cbiAgICovXG4gIGNyZWF0ZUxhdGVuY3lBUmVjb3JkKCk6IEFSZWNvcmQge1xuICAgIHJldHVybiB0aGlzLmRvbWFpbk5hbWUuY3JlYXRlTGF0ZW5jeUFSZWNvcmQodGhpcywgdGhpcy5yZWNvcmRUYXJnZXQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSByb3V0ZTUzIHdlaWdodGVkIGxhdGVuY3kgcmVjb3JkIHBvaW50aW5nIHRvIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSB3ZWlnaHQgdGhlIGluaXRpYWwgd2VpZ2h0OyBkZWZhdWx0cyB0byAwXG4gICAqL1xuICBjcmVhdGVXZWlnaHRlZExhdGVuY3lBUmVjb3JkKHdlaWdodD86IG51bWJlcik6IFdlaWdodGVkTGF0ZW5jeUFSZWNvcmQge1xuICAgIHJldHVybiB0aGlzLmRvbWFpbk5hbWUuY3JlYXRlV2VpZ2h0ZWRMYXRlbmN5QVJlY29yZCh0aGlzLCB0aGlzLnJlY29yZFRhcmdldCwgd2VpZ2h0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBGUUROIG9mIHRoaXMgZG9tYWluIG5hbWUuXG4gICAqL1xuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRvbWFpbk5hbWUudG9TdHJpbmcoKTtcbiAgfVxufVxuIl19
File without changes
File without changes
@@ -1,5 +1,5 @@
1
1
  import { CfnOutput, Duration, Stack, StackProps } from "aws-cdk-lib";
2
- import { ParameterStore, ParameterStoreOptions } from "../../aws-ssm";
2
+ import { ParameterStore, ParameterStoreOptions } from "../../aws-ssm/index";
3
3
  import { Construct } from "constructs";
4
4
  import { StringParameter } from "aws-cdk-lib/aws-ssm";
5
5
  import { DashboardRenderingPreference, MonitoringFacade } from "cdk-monitoring-constructs";
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExtendedStack = void 0;
4
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
5
+ const index_1 = require("../../aws-ssm/index");
6
+ const cdk_monitoring_constructs_1 = require("cdk-monitoring-constructs");
7
+ const index_2 = require("../../helpers/index");
8
+ const standard_tags_1 = require("./standard-tags");
9
+ /**
10
+ * Extended version of Stack providing functionality for parameter exports and monitoring.
11
+ */
12
+ class ExtendedStack extends aws_cdk_lib_1.Stack {
13
+ constructor(scope, id, props) {
14
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15
+ super(scope, id, props);
16
+ const stageName = (_a = aws_cdk_lib_1.Stage.of(this)) === null || _a === void 0 ? void 0 : _a.stageName;
17
+ this.parameterExportOptions = {
18
+ prefix: (_b = props === null || props === void 0 ? void 0 : props.parameterExportsPrefix) !== null && _b !== void 0 ? _b : (stageName === undefined ? "" : `/${stageName}`) + `/${id}/Exports/`,
19
+ region: this.region
20
+ };
21
+ this.parameterExports = new index_1.ParameterStore(this, "ParameterExports", this.parameterExportOptions);
22
+ if ((_c = props === null || props === void 0 ? void 0 : props.createMonitoringFacade) !== null && _c !== void 0 ? _c : true) {
23
+ const dashboardFactory = new cdk_monitoring_constructs_1.DefaultDashboardFactory(this, "DashboardFactory", {
24
+ dashboardNamePrefix: (_d = props === null || props === void 0 ? void 0 : props.dashboardNamePrefix) !== null && _d !== void 0 ? _d : this.stackName,
25
+ createAlarmDashboard: (_e = props === null || props === void 0 ? void 0 : props.createAlarmDashboard) !== null && _e !== void 0 ? _e : false,
26
+ createDashboard: (_f = props === null || props === void 0 ? void 0 : props.createDashboard) !== null && _f !== void 0 ? _f : false,
27
+ createSummaryDashboard: (_g = props === null || props === void 0 ? void 0 : props.createSummaryDashboard) !== null && _g !== void 0 ? _g : false,
28
+ renderingPreference: (_h = props === null || props === void 0 ? void 0 : props.dashboardRenderingPreference) !== null && _h !== void 0 ? _h : cdk_monitoring_constructs_1.DashboardRenderingPreference.INTERACTIVE_ONLY
29
+ });
30
+ this.monitoringFacade = new cdk_monitoring_constructs_1.MonitoringFacade(this, "Monitoring", {
31
+ metricFactoryDefaults: {
32
+ namespace: props === null || props === void 0 ? void 0 : props.metricNamespace,
33
+ period: props === null || props === void 0 ? void 0 : props.metricPeriod
34
+ },
35
+ alarmFactoryDefaults: {
36
+ actionsEnabled: (_j = props === null || props === void 0 ? void 0 : props.alarmActionsEnabled) !== null && _j !== void 0 ? _j : true,
37
+ alarmNamePrefix: this.stackName
38
+ },
39
+ dashboardFactory: dashboardFactory
40
+ });
41
+ }
42
+ new standard_tags_1.StandardTags(this, {
43
+ suppress: props === null || props === void 0 ? void 0 : props.suppressTagging
44
+ }).addAutomationComponentTags({
45
+ url: index_2.CDK_NPMJS_URL,
46
+ vendor: index_2.CDK_VENDOR,
47
+ includeResourceTypes: ["AWS::CloudFormation::Stack"]
48
+ });
49
+ }
50
+ /**
51
+ * Helper method to exports a parameter as an SSM Parameter.
52
+ *
53
+ * @param name the parameter name
54
+ * @param value the parameter value
55
+ */
56
+ exportParameter(name, value) {
57
+ return this.parameterExports.write(name, value);
58
+ }
59
+ /**
60
+ * Helper method to output a parameter as a CfnOutput.
61
+ *
62
+ * @param name the parameter name
63
+ * @param value the parameter value
64
+ */
65
+ outputParameter(name, value) {
66
+ return new aws_cdk_lib_1.CfnOutput(this, name, {
67
+ value
68
+ });
69
+ }
70
+ }
71
+ exports.ExtendedStack = ExtendedStack;
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJleHRlbmRlZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBMEU7QUFDMUUsK0NBQTBFO0FBRzFFLHlFQUltQztBQUNuQywrQ0FBOEQ7QUFDOUQsbURBQTZDO0FBZ0c3Qzs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLG1CQUFLO0lBTXRDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7O1FBQ2xFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLE1BQU0sU0FBUyxTQUFHLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywwQ0FBRSxTQUFTLENBQUM7UUFDNUMsSUFBSSxDQUFDLHNCQUFzQixHQUFHO1lBQzVCLE1BQU0sUUFBRSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsc0JBQXNCLG1DQUFFLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLFdBQVc7WUFDM0csTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxzQkFBYyxDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUVsRyxVQUFJLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxzQkFBc0IsbUNBQUksSUFBSSxFQUFFO1lBQ3pDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxtREFBdUIsQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUU7Z0JBQzdFLG1CQUFtQixRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxtQkFBbUIsbUNBQUksSUFBSSxDQUFDLFNBQVM7Z0JBQ2pFLG9CQUFvQixRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxvQkFBb0IsbUNBQUksS0FBSztnQkFDMUQsZUFBZSxRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLEtBQUs7Z0JBQ2hELHNCQUFzQixRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxzQkFBc0IsbUNBQUksS0FBSztnQkFDOUQsbUJBQW1CLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLDRCQUE0QixtQ0FBSSx3REFBNEIsQ0FBQyxnQkFBZ0I7YUFDMUcsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksNENBQWdCLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRTtnQkFDL0QscUJBQXFCLEVBQUU7b0JBQ3JCLFNBQVMsRUFBRSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsZUFBZTtvQkFDakMsTUFBTSxFQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZO2lCQUM1QjtnQkFDRCxvQkFBb0IsRUFBRTtvQkFDcEIsY0FBYyxRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxtQkFBbUIsbUNBQUksSUFBSTtvQkFDbEQsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTO2lCQUNoQztnQkFDRCxnQkFBZ0IsRUFBRSxnQkFBZ0I7YUFDbkMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3JCLFFBQVEsRUFBRSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsZUFBZTtTQUNqQyxDQUFDLENBQUMsMEJBQTBCLENBQUM7WUFDNUIsR0FBRyxFQUFFLHFCQUFhO1lBQ2xCLE1BQU0sRUFBRSxrQkFBVTtZQUNsQixvQkFBb0IsRUFBRSxDQUFDLDRCQUE0QixDQUFDO1NBQ3JELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQy9CLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFuRUQsc0NBbUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDZm5PdXRwdXQsIER1cmF0aW9uLCBTdGFjaywgU3RhY2tQcm9wcywgU3RhZ2V9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtQYXJhbWV0ZXJTdG9yZSwgUGFyYW1ldGVyU3RvcmVPcHRpb25zfSBmcm9tIFwiLi4vLi4vYXdzLXNzbS9pbmRleFwiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1N0cmluZ1BhcmFtZXRlcn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zc21cIjtcbmltcG9ydCB7XG4gIERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UsXG4gIERlZmF1bHREYXNoYm9hcmRGYWN0b3J5LFxuICBNb25pdG9yaW5nRmFjYWRlXG59IGZyb20gXCJjZGstbW9uaXRvcmluZy1jb25zdHJ1Y3RzXCI7XG5pbXBvcnQge0NES19OUE1KU19VUkwsIENES19WRU5ET1J9IGZyb20gXCIuLi8uLi9oZWxwZXJzL2luZGV4XCI7XG5pbXBvcnQge1N0YW5kYXJkVGFnc30gZnJvbSBcIi4vc3RhbmRhcmQtdGFnc1wiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIEV4dFN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4dGVuZGVkU3RhY2tPcHRpb25zIHtcblxuICAvKipcbiAgICogUHJlZml4IHRvIGJlIHVzZWQgYnkgcGFyYW1ldGVyIGV4cG9ydHMgdG8gYmUgc3RvcmVkIGluIHRoZVxuICAgKiBTeXN0ZW1zIE1hbmFnZXIgUGFyYW1ldGVyIFN0b3JlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAke3N0YWdlTmFtZX0vJHtzdGFja0lkfS9FeHBvcnRzL1xuICAgKi9cbiAgcmVhZG9ubHkgcGFyYW1ldGVyRXhwb3J0c1ByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgYSBkZWZhdWx0IE1vbml0b3JpbmdGYWNhZGUgYW5kXG4gICAqIERlZmF1bHREYXNoYm9hcmRGYWN0b3J5IHNob3VsZCBiZSBjcmVhdGVkIGluIHRoaXMgc3RhY2suXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZU1vbml0b3JpbmdGYWNhZGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcmVmaXggYWRkZWQgdG8gZWFjaCBkYXNoYm9hcmQgbmFtZS5cbiAgICpcbiAgICogQGRlZmF1bHQgc3RhY2tOYW1lXG4gICAqL1xuICByZWFkb25seSBkYXNoYm9hcmROYW1lUHJlZml4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRvIGRldGVybWluZSBpZiB0aGUgZGVmYXVsdCBkYXNoYm9hcmQgc2hvdWxkIGJlIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVEYXNoYm9hcmQ/OiBib29sZWFuXG5cbiAgLyoqXG4gICAqIEZsYWcgdG8gZGV0ZXJtaW5lIGlmIHRoZSBzdW1tYXJ5IGRhc2hib2FyZCBzaG91bGQgYmUgY3JlYXRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZVN1bW1hcnlEYXNoYm9hcmQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRvIGRldGVybWluZSBpZiB0aGUgYWxhcm0gZGFzaGJvYXJkIHNob3VsZCBiZSBjcmV0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVBbGFybURhc2hib2FyZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJlbmRlcmluZyBwcmVmZXJlbmNlIHRvIGRhc2hib2FyZHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UuSU5URVJBQ1RJVkVfT05MWVxuICAgKi9cbiAgcmVhZG9ubHkgZGFzaGJvYXJkUmVuZGVyaW5nUHJlZmVyZW5jZT86IERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2U7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgbmFtZXNwYWNlIGZvciBtZXRyaWNzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljTmFtZXNwYWNlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG1ldHJpYyBwZXJpb2RcbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY1BlcmlvZD86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBQcmVmaXggZm9yIGdlbmVyYXRlZCBhbGFybXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgYWxhcm1OYW1lUHJlZml4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbmFibGVzIGFsYXJtIGFjdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtQWN0aW9uc0VuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTZXR0aW5nIHRoaXMgdG8gdHJ1ZSB3aWxsIHN1cHByZXNzIHRoZSBjcmVhdGlvbiBvZiBkZWZhdWx0IHRhZ3Mgb24gcmVzb3VyY2VzXG4gICAqIGNyZWF0ZWQgYnkgdGhpcyBjb25zdHJ1Y3QuIERlZmF1bHQgaXMgZmFsc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHN1cHByZXNzVGFnZ2luZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgRXh0U3RhY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5kZWRTdGFja1Byb3BzIGV4dGVuZHMgRXh0ZW5kZWRTdGFja09wdGlvbnMsIFN0YWNrUHJvcHMge31cblxuLyoqXG4gKiBFeHRlbmRlZCB2ZXJzaW9uIG9mIFN0YWNrIHByb3ZpZGluZyBmdW5jdGlvbmFsaXR5IGZvciBwYXJhbWV0ZXIgZXhwb3J0cyBhbmQgbW9uaXRvcmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4dGVuZGVkU3RhY2sgZXh0ZW5kcyBTdGFjayB7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHBhcmFtZXRlckV4cG9ydHM6IFBhcmFtZXRlclN0b3JlO1xuICByZWFkb25seSBwYXJhbWV0ZXJFeHBvcnRPcHRpb25zOiBQYXJhbWV0ZXJTdG9yZU9wdGlvbnM7XG4gIHJlYWRvbmx5IG1vbml0b3JpbmdGYWNhZGU/OiBNb25pdG9yaW5nRmFjYWRlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogRXh0ZW5kZWRTdGFja1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG4gICAgY29uc3Qgc3RhZ2VOYW1lID0gU3RhZ2Uub2YodGhpcyk/LnN0YWdlTmFtZTtcbiAgICB0aGlzLnBhcmFtZXRlckV4cG9ydE9wdGlvbnMgPSB7XG4gICAgICBwcmVmaXg6IHByb3BzPy5wYXJhbWV0ZXJFeHBvcnRzUHJlZml4Pz8oc3RhZ2VOYW1lID09PSB1bmRlZmluZWQgPyBcIlwiIDogYC8ke3N0YWdlTmFtZX1gKSArIGAvJHtpZH0vRXhwb3J0cy9gLFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvblxuICAgIH07XG4gICAgdGhpcy5wYXJhbWV0ZXJFeHBvcnRzID0gbmV3IFBhcmFtZXRlclN0b3JlKHRoaXMsIFwiUGFyYW1ldGVyRXhwb3J0c1wiLCB0aGlzLnBhcmFtZXRlckV4cG9ydE9wdGlvbnMpO1xuXG4gICAgaWYgKHByb3BzPy5jcmVhdGVNb25pdG9yaW5nRmFjYWRlID8/IHRydWUpIHtcbiAgICAgIGNvbnN0IGRhc2hib2FyZEZhY3RvcnkgPSBuZXcgRGVmYXVsdERhc2hib2FyZEZhY3RvcnkodGhpcywgXCJEYXNoYm9hcmRGYWN0b3J5XCIsIHtcbiAgICAgICAgZGFzaGJvYXJkTmFtZVByZWZpeDogcHJvcHM/LmRhc2hib2FyZE5hbWVQcmVmaXggPz8gdGhpcy5zdGFja05hbWUsXG4gICAgICAgIGNyZWF0ZUFsYXJtRGFzaGJvYXJkOiBwcm9wcz8uY3JlYXRlQWxhcm1EYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIGNyZWF0ZURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZURhc2hib2FyZCA/PyBmYWxzZSxcbiAgICAgICAgY3JlYXRlU3VtbWFyeURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZVN1bW1hcnlEYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIHJlbmRlcmluZ1ByZWZlcmVuY2U6IHByb3BzPy5kYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlID8/IERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UuSU5URVJBQ1RJVkVfT05MWVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubW9uaXRvcmluZ0ZhY2FkZSA9IG5ldyBNb25pdG9yaW5nRmFjYWRlKHRoaXMsIFwiTW9uaXRvcmluZ1wiLCB7XG4gICAgICAgIG1ldHJpY0ZhY3RvcnlEZWZhdWx0czoge1xuICAgICAgICAgIG5hbWVzcGFjZTogcHJvcHM/Lm1ldHJpY05hbWVzcGFjZSxcbiAgICAgICAgICBwZXJpb2Q6IHByb3BzPy5tZXRyaWNQZXJpb2RcbiAgICAgICAgfSxcbiAgICAgICAgYWxhcm1GYWN0b3J5RGVmYXVsdHM6IHtcbiAgICAgICAgICBhY3Rpb25zRW5hYmxlZDogcHJvcHM/LmFsYXJtQWN0aW9uc0VuYWJsZWQgPz8gdHJ1ZSxcbiAgICAgICAgICBhbGFybU5hbWVQcmVmaXg6IHRoaXMuc3RhY2tOYW1lXG4gICAgICAgIH0sXG4gICAgICAgIGRhc2hib2FyZEZhY3Rvcnk6IGRhc2hib2FyZEZhY3RvcnlcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIG5ldyBTdGFuZGFyZFRhZ3ModGhpcywge1xuICAgICAgc3VwcHJlc3M6IHByb3BzPy5zdXBwcmVzc1RhZ2dpbmdcbiAgICB9KS5hZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyh7XG4gICAgICB1cmw6IENES19OUE1KU19VUkwsXG4gICAgICB2ZW5kb3I6IENES19WRU5ET1IsXG4gICAgICBpbmNsdWRlUmVzb3VyY2VUeXBlczogW1wiQVdTOjpDbG91ZEZvcm1hdGlvbjo6U3RhY2tcIl1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgbWV0aG9kIHRvIGV4cG9ydHMgYSBwYXJhbWV0ZXIgYXMgYW4gU1NNIFBhcmFtZXRlci5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgdGhlIHBhcmFtZXRlciBuYW1lXG4gICAqIEBwYXJhbSB2YWx1ZSB0aGUgcGFyYW1ldGVyIHZhbHVlXG4gICAqL1xuICBleHBvcnRQYXJhbWV0ZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogU3RyaW5nUGFyYW1ldGVyIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJFeHBvcnRzLndyaXRlKG5hbWUsIHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgbWV0aG9kIHRvIG91dHB1dCBhIHBhcmFtZXRlciBhcyBhIENmbk91dHB1dC5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgdGhlIHBhcmFtZXRlciBuYW1lXG4gICAqIEBwYXJhbSB2YWx1ZSB0aGUgcGFyYW1ldGVyIHZhbHVlXG4gICAqL1xuICBvdXRwdXRQYXJhbWV0ZXIobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogQ2ZuT3V0cHV0IHtcbiAgICByZXR1cm4gbmV3IENmbk91dHB1dCh0aGlzLCBuYW1lLCB7XG4gICAgICB2YWx1ZVxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ export * from "./extended-stack";
2
+ export * from "./standard-app";
3
+ export * from "./standard-environment";
4
+ export * from "./standard-stack";
5
+ export * from "./standard-tags";
@@ -10,5 +10,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./extended-stack"), exports);
14
+ __exportStar(require("./standard-app"), exports);
15
+ __exportStar(require("./standard-environment"), exports);
16
+ __exportStar(require("./standard-stack"), exports);
13
17
  __exportStar(require("./standard-tags"), exports);
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxrREFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9zdGFuZGFyZC10YWdzXCI7XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsaURBQStCO0FBQy9CLHlEQUF1QztBQUN2QyxtREFBaUM7QUFDakMsa0RBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZXh0ZW5kZWQtc3RhY2tcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtZW52aXJvbm1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLXN0YWNrXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdGFuZGFyZC10YWdzXCI7XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { App } from "aws-cdk-lib";
2
+ import { AutomationTagsProps, CostCenterTagsProps, SecurityTagsProps, StandardTagsOptions, TeamTagsProps } from "./standard-tags";
3
+ /**
4
+ * Properties for StandardApp
5
+ */
6
+ export interface StandardAppProps extends StandardTagsOptions {
7
+ }
8
+ /**
9
+ * Extends App providing support for tags and a standard for environment names.
10
+ */
11
+ export declare class StandardApp extends App {
12
+ readonly environmentName: string;
13
+ readonly automationTags?: AutomationTagsProps;
14
+ readonly costCenterTags?: CostCenterTagsProps;
15
+ readonly securityTags?: SecurityTagsProps;
16
+ readonly teamTags?: TeamTagsProps;
17
+ readonly suppressTags?: boolean;
18
+ constructor(props: StandardAppProps);
19
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandardApp = void 0;
4
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
5
+ const helpers_1 = require("../../helpers");
6
+ /**
7
+ * Extends App providing support for tags and a standard for environment names.
8
+ */
9
+ class StandardApp extends aws_cdk_lib_1.App {
10
+ constructor(props) {
11
+ super();
12
+ this.environmentName = this.node.tryGetContext("env");
13
+ if (!this.environmentName) {
14
+ throw new Error("Environment is missing. Please add \"-c env=<name>\" to your CDK command");
15
+ }
16
+ if (!helpers_1.StringHelper.isLowerAlphanumeric(this.environmentName)) {
17
+ throw new Error("Environment name must be lower case");
18
+ }
19
+ this.automationTags = props.automationTags;
20
+ this.costCenterTags = props.costCenterTags;
21
+ this.securityTags = props.securityTags;
22
+ this.teamTags = props.teamTags;
23
+ this.suppressTags = props.suppressTags;
24
+ }
25
+ }
26
+ exports.StandardApp = StandardApp;
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhcmQtYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE2QztBQU83QywyQ0FBMkM7QUFTM0M7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxpQkFBRztJQVNsQyxZQUFZLEtBQXVCO1FBQ2pDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7U0FDN0Y7UUFDRCxJQUFJLENBQUMsc0JBQVksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDM0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQzNDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztJQUN6QyxDQUFDO0NBQ0Y7QUF4QkQsa0NBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHAsIEVudmlyb25tZW50fSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLCBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcbmltcG9ydCB7U3RyaW5nSGVscGVyfSBmcm9tIFwiLi4vLi4vaGVscGVyc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIFN0YW5kYXJkQXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhbmRhcmRBcHBQcm9wcyBleHRlbmRzIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogRXh0ZW5kcyBBcHAgcHJvdmlkaW5nIHN1cHBvcnQgZm9yIHRhZ3MgYW5kIGEgc3RhbmRhcmQgZm9yIGVudmlyb25tZW50IG5hbWVzLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRBcHAgZXh0ZW5kcyBBcHAge1xuXG4gIHJlYWRvbmx5IGVudmlyb25tZW50TmFtZTogc3RyaW5nO1xuICByZWFkb25seSBhdXRvbWF0aW9uVGFncz86IEF1dG9tYXRpb25UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdzPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogU3RhbmRhcmRBcHBQcm9wcykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5lbnZpcm9ubWVudE5hbWUgPSB0aGlzLm5vZGUudHJ5R2V0Q29udGV4dChcImVudlwiKTtcbiAgICBpZiAoIXRoaXMuZW52aXJvbm1lbnROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbnZpcm9ubWVudCBpcyBtaXNzaW5nLiBQbGVhc2UgYWRkIFxcXCItYyBlbnY9PG5hbWU+XFxcIiB0byB5b3VyIENESyBjb21tYW5kXCIpO1xuICAgIH1cbiAgICBpZiAoIVN0cmluZ0hlbHBlci5pc0xvd2VyQWxwaGFudW1lcmljKHRoaXMuZW52aXJvbm1lbnROYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRW52aXJvbm1lbnQgbmFtZSBtdXN0IGJlIGxvd2VyIGNhc2VcIik7XG4gICAgfVxuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcy5hdXRvbWF0aW9uVGFncztcbiAgICB0aGlzLmNvc3RDZW50ZXJUYWdzID0gcHJvcHMuY29zdENlbnRlclRhZ3M7XG4gICAgdGhpcy5zZWN1cml0eVRhZ3MgPSBwcm9wcy5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzLnRlYW1UYWdzO1xuICAgIHRoaXMuc3VwcHJlc3NUYWdzID0gcHJvcHMuc3VwcHJlc3NUYWdzO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,10 @@
1
+ import { Environment } from "aws-cdk-lib";
2
+ /**
3
+ * Adds a name to the environment properties used by StandardStack.
4
+ */
5
+ export interface StandardEnvironment extends Environment {
6
+ /**
7
+ * Name of the environment.
8
+ */
9
+ readonly name: string;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbnZpcm9ubWVudH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5cbi8qKlxuICogQWRkcyBhIG5hbWUgdG8gdGhlIGVudmlyb25tZW50IHByb3BlcnRpZXMgdXNlZCBieSBTdGFuZGFyZFN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkRW52aXJvbm1lbnQgZXh0ZW5kcyBFbnZpcm9ubWVudCB7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGVudmlyb25tZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG59XG4iXX0=
@@ -0,0 +1,25 @@
1
+ import { ExtendedStack, ExtendedStackProps } from "./extended-stack";
2
+ import { StandardApp } from "./standard-app";
3
+ import { StandardStage } from "./standard-stage";
4
+ import { StandardEnvironment } from "./standard-environment";
5
+ import { AutomationTagsProps, CostCenterTagsProps, SecurityTagsProps, StandardTagsOptions, TeamTagsProps } from "./standard-tags";
6
+ /**
7
+ * Properties for StandardStack.
8
+ */
9
+ export interface StandardStackProps extends ExtendedStackProps, StandardTagsOptions {
10
+ /**
11
+ * Environment the stack will be deployed to.
12
+ */
13
+ readonly env: StandardEnvironment;
14
+ }
15
+ /**
16
+ * Adds support for tags and environment names.
17
+ */
18
+ export declare class StandardStack extends ExtendedStack {
19
+ readonly automationTags?: AutomationTagsProps;
20
+ readonly costCenterTags?: CostCenterTagsProps;
21
+ readonly securityTags?: SecurityTagsProps;
22
+ readonly teamTags?: TeamTagsProps;
23
+ readonly suppressTags?: boolean;
24
+ constructor(scope: StandardApp | StandardStage, stackName: string, props: StandardStackProps);
25
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandardStack = void 0;
4
+ const extended_stack_1 = require("./extended-stack");
5
+ const helpers_1 = require("../../helpers");
6
+ const standard_tags_1 = require("./standard-tags");
7
+ /**
8
+ * Adds support for tags and environment names.
9
+ */
10
+ class StandardStack extends extended_stack_1.ExtendedStack {
11
+ constructor(scope, stackName, props) {
12
+ var _a, _b, _c, _d, _e;
13
+ if (!helpers_1.StringHelper.isPascalCase(stackName)) {
14
+ throw new Error("stackName must be PascalCase");
15
+ }
16
+ super(scope, `${stackName}${helpers_1.StringHelper.toPascalCase(props.env.name)}`, props);
17
+ this.automationTags = (_a = props.automationTags) !== null && _a !== void 0 ? _a : scope.automationTags;
18
+ this.costCenterTags = (_b = props.costCenterTags) !== null && _b !== void 0 ? _b : scope.costCenterTags;
19
+ this.securityTags = (_c = props.securityTags) !== null && _c !== void 0 ? _c : scope.securityTags;
20
+ this.teamTags = (_d = props.teamTags) !== null && _d !== void 0 ? _d : scope.teamTags;
21
+ this.suppressTags = (_e = props.suppressTags) !== null && _e !== void 0 ? _e : scope.suppressTags;
22
+ new standard_tags_1.StandardTags(this, { suppress: props.suppressTags })
23
+ .addAutomationComponentTags({
24
+ url: helpers_1.CDK_NPMJS_URL,
25
+ vendor: helpers_1.CDK_VENDOR,
26
+ includeResourceTypes: ["AWS::CloudFormation::Stack"]
27
+ })
28
+ .addAutomationTags(props.automationTags)
29
+ .addCostCenterTags(props.costCenterTags)
30
+ .addSecurityTags(props.securityTags)
31
+ .addTeamTags(props.teamTags);
32
+ }
33
+ }
34
+ exports.StandardStack = StandardStack;
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBbUU7QUFJbkUsMkNBQXNFO0FBQ3RFLG1EQU95QjtBQWF6Qjs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLDhCQUFhO0lBUTlDLFlBQVksS0FBa0MsRUFBRSxTQUFpQixFQUFFLEtBQXlCOztRQUUxRixJQUFJLENBQUMsc0JBQVksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLFNBQVMsR0FBRyxzQkFBWSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLENBQUMsY0FBYyxtQ0FBSSxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLFNBQUcsS0FBSyxDQUFDLGNBQWMsbUNBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUNuRSxJQUFJLENBQUMsWUFBWSxTQUFHLEtBQUssQ0FBQyxZQUFZLG1DQUFJLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsU0FBRyxLQUFLLENBQUMsUUFBUSxtQ0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pELElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksS0FBSyxDQUFDLFlBQVksQ0FBQztRQUU3RCxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUMsQ0FBQzthQUNuRCwwQkFBMEIsQ0FBQztZQUMxQixHQUFHLEVBQUUsdUJBQWE7WUFDbEIsTUFBTSxFQUFFLG9CQUFVO1lBQ2xCLG9CQUFvQixFQUFFLENBQUMsNEJBQTRCLENBQUM7U0FDckQsQ0FBQzthQUNELGlCQUFpQixDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7YUFDdkMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQzthQUN2QyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQzthQUNuQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7Q0FDRjtBQS9CRCxzQ0ErQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0V4dGVuZGVkU3RhY2ssIEV4dGVuZGVkU3RhY2tQcm9wc30gZnJvbSBcIi4vZXh0ZW5kZWQtc3RhY2tcIjtcbmltcG9ydCB7U3RhbmRhcmRBcHB9IGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuaW1wb3J0IHtTdGFuZGFyZFN0YWdlfSBmcm9tIFwiLi9zdGFuZGFyZC1zdGFnZVwiO1xuaW1wb3J0IHtTdGFuZGFyZEVudmlyb25tZW50fSBmcm9tIFwiLi9zdGFuZGFyZC1lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHtDREtfTlBNSlNfVVJMLCBDREtfVkVORE9SLCBTdHJpbmdIZWxwZXJ9IGZyb20gXCIuLi8uLi9oZWxwZXJzXCI7XG5pbXBvcnQge1xuICBBdXRvbWF0aW9uVGFnc1Byb3BzLFxuICBDb3N0Q2VudGVyVGFnc1Byb3BzLFxuICBTZWN1cml0eVRhZ3NQcm9wcyxcbiAgU3RhbmRhcmRUYWdzLFxuICBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBTdGFuZGFyZFN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkU3RhY2tQcm9wcyBleHRlbmRzIEV4dGVuZGVkU3RhY2tQcm9wcywgU3RhbmRhcmRUYWdzT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIEVudmlyb25tZW50IHRoZSBzdGFjayB3aWxsIGJlIGRlcGxveWVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52OiBTdGFuZGFyZEVudmlyb25tZW50O1xufVxuXG4vKipcbiAqIEFkZHMgc3VwcG9ydCBmb3IgdGFncyBhbmQgZW52aXJvbm1lbnQgbmFtZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFN0YWNrIGV4dGVuZHMgRXh0ZW5kZWRTdGFjayB7XG5cbiAgcmVhZG9ubHkgYXV0b21hdGlvblRhZ3M/OiBBdXRvbWF0aW9uVGFnc1Byb3BzO1xuICByZWFkb25seSBjb3N0Q2VudGVyVGFncz86IENvc3RDZW50ZXJUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHNlY3VyaXR5VGFncz86IFNlY3VyaXR5VGFnc1Byb3BzO1xuICByZWFkb25seSB0ZWFtVGFncz86IFRlYW1UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHN1cHByZXNzVGFncz86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IFN0YW5kYXJkQXBwIHwgU3RhbmRhcmRTdGFnZSwgc3RhY2tOYW1lOiBzdHJpbmcsIHByb3BzOiBTdGFuZGFyZFN0YWNrUHJvcHMpIHtcblxuICAgIGlmICghU3RyaW5nSGVscGVyLmlzUGFzY2FsQ2FzZShzdGFja05hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdGFja05hbWUgbXVzdCBiZSBQYXNjYWxDYXNlXCIpO1xuICAgIH1cbiAgICBzdXBlcihzY29wZSwgYCR7c3RhY2tOYW1lfSR7U3RyaW5nSGVscGVyLnRvUGFzY2FsQ2FzZShwcm9wcy5lbnYubmFtZSl9YCwgcHJvcHMpO1xuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcy5hdXRvbWF0aW9uVGFncyA/PyBzY29wZS5hdXRvbWF0aW9uVGFncztcbiAgICB0aGlzLmNvc3RDZW50ZXJUYWdzID0gcHJvcHMuY29zdENlbnRlclRhZ3MgPz8gc2NvcGUuY29zdENlbnRlclRhZ3M7XG4gICAgdGhpcy5zZWN1cml0eVRhZ3MgPSBwcm9wcy5zZWN1cml0eVRhZ3MgPz8gc2NvcGUuc2VjdXJpdHlUYWdzO1xuICAgIHRoaXMudGVhbVRhZ3MgPSBwcm9wcy50ZWFtVGFncyA/PyBzY29wZS50ZWFtVGFncztcbiAgICB0aGlzLnN1cHByZXNzVGFncyA9IHByb3BzLnN1cHByZXNzVGFncyA/PyBzY29wZS5zdXBwcmVzc1RhZ3M7XG5cbiAgICBuZXcgU3RhbmRhcmRUYWdzKHRoaXMsIHtzdXBwcmVzczogcHJvcHMuc3VwcHJlc3NUYWdzfSlcbiAgICAgIC5hZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyh7XG4gICAgICAgIHVybDogQ0RLX05QTUpTX1VSTCxcbiAgICAgICAgdmVuZG9yOiBDREtfVkVORE9SLFxuICAgICAgICBpbmNsdWRlUmVzb3VyY2VUeXBlczogW1wiQVdTOjpDbG91ZEZvcm1hdGlvbjo6U3RhY2tcIl1cbiAgICAgIH0pXG4gICAgICAuYWRkQXV0b21hdGlvblRhZ3MocHJvcHMuYXV0b21hdGlvblRhZ3MpXG4gICAgICAuYWRkQ29zdENlbnRlclRhZ3MocHJvcHMuY29zdENlbnRlclRhZ3MpXG4gICAgICAuYWRkU2VjdXJpdHlUYWdzKHByb3BzLnNlY3VyaXR5VGFncylcbiAgICAgIC5hZGRUZWFtVGFncyhwcm9wcy50ZWFtVGFncyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,20 @@
1
+ import { Stage, StageProps } from "aws-cdk-lib";
2
+ import { StandardApp } from "./standard-app";
3
+ import { AutomationTagsProps, CostCenterTagsProps, SecurityTagsProps, StandardTagsOptions, TeamTagsProps } from "./standard-tags";
4
+ /**
5
+ * Properties for StandardStage.
6
+ */
7
+ export interface StandardStageProps extends StageProps, StandardTagsOptions {
8
+ }
9
+ /**
10
+ * Adds support for tags.
11
+ */
12
+ export declare class StandardStage extends Stage {
13
+ private readonly app;
14
+ readonly automationTags?: AutomationTagsProps;
15
+ readonly costCenterTags?: CostCenterTagsProps;
16
+ readonly securityTags?: SecurityTagsProps;
17
+ readonly teamTags?: TeamTagsProps;
18
+ readonly suppressTags?: boolean;
19
+ constructor(scope: StandardApp, id: string, props: StandardStageProps);
20
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StandardStage = void 0;
4
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
5
+ /**
6
+ * Adds support for tags.
7
+ */
8
+ class StandardStage extends aws_cdk_lib_1.Stage {
9
+ constructor(scope, id, props) {
10
+ var _a, _b, _c, _d, _e;
11
+ super(scope, id, props);
12
+ this.app = scope;
13
+ this.automationTags = (_a = props.automationTags) !== null && _a !== void 0 ? _a : scope.automationTags;
14
+ this.costCenterTags = (_b = props.costCenterTags) !== null && _b !== void 0 ? _b : scope.costCenterTags;
15
+ this.securityTags = (_c = props.securityTags) !== null && _c !== void 0 ? _c : scope.securityTags;
16
+ this.teamTags = (_d = props.teamTags) !== null && _d !== void 0 ? _d : scope.teamTags;
17
+ this.suppressTags = (_e = props.suppressTags) !== null && _e !== void 0 ? _e : scope.suppressTags;
18
+ }
19
+ }
20
+ exports.StandardStage = StandardStage;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBOEM7QUFpQjlDOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUJBQUs7SUFTdEMsWUFBWSxLQUFrQixFQUFFLEVBQVUsRUFBRSxLQUF5Qjs7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLENBQUMsY0FBYyxtQ0FBSSxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLFNBQUcsS0FBSyxDQUFDLGNBQWMsbUNBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUNuRSxJQUFJLENBQUMsWUFBWSxTQUFHLEtBQUssQ0FBQyxZQUFZLG1DQUFJLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsU0FBRyxLQUFLLENBQUMsUUFBUSxtQ0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pELElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksS0FBSyxDQUFDLFlBQVksQ0FBQztJQUMvRCxDQUFDO0NBQ0Y7QUFsQkQsc0NBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdGFnZSwgU3RhZ2VQcm9wc30gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1N0YW5kYXJkQXBwfSBmcm9tIFwiLi9zdGFuZGFyZC1hcHBcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLFxuICBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBTdGFuZGFyZFN0YWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkU3RhZ2VQcm9wcyBleHRlbmRzIFN0YWdlUHJvcHMsIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogQWRkcyBzdXBwb3J0IGZvciB0YWdzLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRTdGFnZSBleHRlbmRzIFN0YWdlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFwcDogU3RhbmRhcmRBcHA7XG4gIHJlYWRvbmx5IGF1dG9tYXRpb25UYWdzPzogQXV0b21hdGlvblRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgY29zdENlbnRlclRhZ3M/OiBDb3N0Q2VudGVyVGFnc1Byb3BzO1xuICByZWFkb25seSBzZWN1cml0eVRhZ3M/OiBTZWN1cml0eVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgdGVhbVRhZ3M/OiBUZWFtVGFnc1Byb3BzO1xuICByZWFkb25seSBzdXBwcmVzc1RhZ3M/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBTdGFuZGFyZEFwcCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YW5kYXJkU3RhZ2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIHRoaXMuYXBwID0gc2NvcGU7XG4gICAgdGhpcy5hdXRvbWF0aW9uVGFncyA9IHByb3BzLmF1dG9tYXRpb25UYWdzID8/IHNjb3BlLmF1dG9tYXRpb25UYWdzO1xuICAgIHRoaXMuY29zdENlbnRlclRhZ3MgPSBwcm9wcy5jb3N0Q2VudGVyVGFncyA/PyBzY29wZS5jb3N0Q2VudGVyVGFncztcbiAgICB0aGlzLnNlY3VyaXR5VGFncyA9IHByb3BzLnNlY3VyaXR5VGFncyA/PyBzY29wZS5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzLnRlYW1UYWdzID8/IHNjb3BlLnRlYW1UYWdzO1xuICAgIHRoaXMuc3VwcHJlc3NUYWdzID0gcHJvcHMuc3VwcHJlc3NUYWdzID8/IHNjb3BlLnN1cHByZXNzVGFncztcbiAgfVxufVxuIl19
@@ -208,29 +208,57 @@ export declare class StandardTags {
208
208
  *
209
209
  * @param props optional properties for the tags
210
210
  */
211
- addAutomationComponentTags(props: AutomationComponentTagsProps): StandardTags;
211
+ addAutomationComponentTags(props?: AutomationComponentTagsProps): StandardTags;
212
212
  /**
213
213
  * Adds automation tags.
214
214
  *
215
215
  * @param props properties for the tags
216
216
  */
217
- addAutomationTags(props: AutomationTagsProps): StandardTags;
217
+ addAutomationTags(props?: AutomationTagsProps): StandardTags;
218
218
  /**
219
219
  * Adds cost center tags.
220
220
  *
221
221
  * @param props properties for the tags
222
222
  */
223
- addCostCenterTags(props: CostCenterTagsProps): StandardTags;
223
+ addCostCenterTags(props?: CostCenterTagsProps): StandardTags;
224
224
  /**
225
225
  * Adds security tags.
226
226
  *
227
227
  * @param props properties for security tags
228
228
  */
229
- addSecurityTags(props: SecurityTagsProps): StandardTags;
229
+ addSecurityTags(props?: SecurityTagsProps): StandardTags;
230
230
  /**
231
231
  * Adds team tags.
232
232
  *
233
233
  * @param props properties for team tags
234
234
  */
235
- addTeamTags(props: TeamTagsProps): StandardTags;
235
+ addTeamTags(props?: TeamTagsProps): StandardTags;
236
+ }
237
+ /**
238
+ * Contains standard tagging options.
239
+ */
240
+ export interface StandardTagsOptions {
241
+ /**
242
+ * Automation tags to apply to created resources.
243
+ */
244
+ readonly automationTags?: AutomationTagsProps;
245
+ /**
246
+ * Cost center tags to apply to created resources.
247
+ */
248
+ readonly costCenterTags?: CostCenterTagsProps;
249
+ /**
250
+ * Security tags to apply to created resources.
251
+ */
252
+ readonly securityTags?: SecurityTagsProps;
253
+ /**
254
+ * Team tags to apply to created resources.
255
+ */
256
+ readonly teamTags?: TeamTagsProps;
257
+ /**
258
+ * Setting this to true will suppress the creation of tags this resource creates.
259
+ * Default value is false.
260
+ *
261
+ * @default - false
262
+ */
263
+ readonly suppressTags?: boolean;
236
264
  }