truemark-cdk-lib 1.2.4-alpha.2 → 1.2.4-alpha.5

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.
@@ -1,5 +1,7 @@
1
1
  export * from "./extended-stack";
2
+ export * from "./single-env-app";
2
3
  export * from "./standard-app";
3
4
  export * from "./standard-environment";
4
5
  export * from "./standard-stack";
6
+ export * from "./standard-stage";
5
7
  export * from "./standard-tags";
@@ -11,8 +11,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./extended-stack"), exports);
14
+ __exportStar(require("./single-env-app"), exports);
14
15
  __exportStar(require("./standard-app"), exports);
15
16
  __exportStar(require("./standard-environment"), exports);
16
17
  __exportStar(require("./standard-stack"), exports);
18
+ __exportStar(require("./standard-stage"), exports);
17
19
  __exportStar(require("./standard-tags"), exports);
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsaURBQStCO0FBQy9CLHlEQUF1QztBQUN2QyxtREFBaUM7QUFDakMsa0RBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vZXh0ZW5kZWQtc3RhY2tcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtZW52aXJvbm1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLXN0YWNrXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdGFuZGFyZC10YWdzXCI7XG4iXX0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsbURBQWlDO0FBQ2pDLGlEQUErQjtBQUMvQix5REFBdUM7QUFDdkMsbURBQWlDO0FBQ2pDLG1EQUFpQztBQUNqQyxrREFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9leHRlbmRlZC1zdGFja1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2luZ2xlLWVudi1hcHBcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtZW52aXJvbm1lbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3N0YW5kYXJkLXN0YWNrXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdGFuZGFyZC1zdGFnZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RhbmRhcmQtdGFnc1wiO1xuIl19
@@ -0,0 +1,28 @@
1
+ import { StandardApp, StandardAppProps } from "./standard-app";
2
+ /**
3
+ * Properties for SingleEnvApp
4
+ */
5
+ export interface SingleEnvAppProps extends StandardAppProps {
6
+ /**
7
+ * The name of the property in the context where the environment name is stored.
8
+ * Default is "env".
9
+ *
10
+ * @default - env
11
+ */
12
+ readonly environmentPropertyName?: string;
13
+ }
14
+ /**
15
+ * Extension of StandardApp that supports a standard way to declare environment names.
16
+ */
17
+ export declare class SingleEnvApp extends StandardApp {
18
+ readonly environmentName: string;
19
+ constructor(props?: SingleEnvAppProps);
20
+ /**
21
+ * Returns the name of the environment.
22
+ */
23
+ getEnvironmentName(): string;
24
+ /**
25
+ * Returns the name of the environment in title case.
26
+ */
27
+ getEnvironmentNameTitleCase(): string;
28
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SingleEnvApp = void 0;
4
+ const standard_app_1 = require("./standard-app");
5
+ const helpers_1 = require("../../helpers");
6
+ /**
7
+ * Extension of StandardApp that supports a standard way to declare environment names.
8
+ */
9
+ class SingleEnvApp extends standard_app_1.StandardApp {
10
+ constructor(props) {
11
+ var _a;
12
+ super();
13
+ const environmentPropertyName = (_a = props === null || props === void 0 ? void 0 : props.environmentPropertyName) !== null && _a !== void 0 ? _a : "env";
14
+ this.environmentName = this.node.tryGetContext(environmentPropertyName);
15
+ if (!this.environmentName) {
16
+ throw new Error(`Environment is missing. Please add \"-c ${environmentPropertyName}=<name>\" to your CDK command`);
17
+ }
18
+ if (!helpers_1.StringHelper.isLowerAlphanumeric(this.environmentName)) {
19
+ throw new Error("Environment name must be lower case alpha numeric");
20
+ }
21
+ }
22
+ /**
23
+ * Returns the name of the environment.
24
+ */
25
+ getEnvironmentName() {
26
+ return this.environmentName;
27
+ }
28
+ /**
29
+ * Returns the name of the environment in title case.
30
+ */
31
+ getEnvironmentNameTitleCase() {
32
+ return helpers_1.StringHelper.toPascalCase(this.environmentName);
33
+ }
34
+ }
35
+ exports.SingleEnvApp = SingleEnvApp;
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLWVudi1hcHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzaW5nbGUtZW52LWFwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpREFBNkQ7QUFDN0QsMkNBQTJDO0FBZ0IzQzs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLDBCQUFXO0lBSTNDLFlBQVksS0FBeUI7O1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBQ1IsTUFBTSx1QkFBdUIsU0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsdUJBQXVCLG1DQUFJLEtBQUssQ0FBQztRQUN4RSxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsdUJBQXVCLCtCQUErQixDQUFDLENBQUM7U0FDcEg7UUFDRCxJQUFJLENBQUMsc0JBQVksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDM0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCwyQkFBMkI7UUFDekIsT0FBTyxzQkFBWSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGO0FBN0JELG9DQTZCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U3RhbmRhcmRBcHAsIFN0YW5kYXJkQXBwUHJvcHN9IGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuaW1wb3J0IHtTdHJpbmdIZWxwZXJ9IGZyb20gXCIuLi8uLi9oZWxwZXJzXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgU2luZ2xlRW52QXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2luZ2xlRW52QXBwUHJvcHMgZXh0ZW5kcyBTdGFuZGFyZEFwcFByb3BzIHtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IGluIHRoZSBjb250ZXh0IHdoZXJlIHRoZSBlbnZpcm9ubWVudCBuYW1lIGlzIHN0b3JlZC5cbiAgICogRGVmYXVsdCBpcyBcImVudlwiLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGVudlxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRQcm9wZXJ0eU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRXh0ZW5zaW9uIG9mIFN0YW5kYXJkQXBwIHRoYXQgc3VwcG9ydHMgYSBzdGFuZGFyZCB3YXkgdG8gZGVjbGFyZSBlbnZpcm9ubWVudCBuYW1lcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNpbmdsZUVudkFwcCBleHRlbmRzIFN0YW5kYXJkQXBwIHtcblxuICByZWFkb25seSBlbnZpcm9ubWVudE5hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm9wcz86IFNpbmdsZUVudkFwcFByb3BzKSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCBlbnZpcm9ubWVudFByb3BlcnR5TmFtZSA9IHByb3BzPy5lbnZpcm9ubWVudFByb3BlcnR5TmFtZSA/PyBcImVudlwiO1xuICAgIHRoaXMuZW52aXJvbm1lbnROYW1lID0gdGhpcy5ub2RlLnRyeUdldENvbnRleHQoZW52aXJvbm1lbnRQcm9wZXJ0eU5hbWUpO1xuICAgIGlmICghdGhpcy5lbnZpcm9ubWVudE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRW52aXJvbm1lbnQgaXMgbWlzc2luZy4gUGxlYXNlIGFkZCBcXFwiLWMgJHtlbnZpcm9ubWVudFByb3BlcnR5TmFtZX09PG5hbWU+XFxcIiB0byB5b3VyIENESyBjb21tYW5kYCk7XG4gICAgfVxuICAgIGlmICghU3RyaW5nSGVscGVyLmlzTG93ZXJBbHBoYW51bWVyaWModGhpcy5lbnZpcm9ubWVudE5hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbnZpcm9ubWVudCBuYW1lIG11c3QgYmUgbG93ZXIgY2FzZSBhbHBoYSBudW1lcmljXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudC5cbiAgICovXG4gIGdldEVudmlyb25tZW50TmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmVudmlyb25tZW50TmFtZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCBpbiB0aXRsZSBjYXNlLlxuICAgKi9cbiAgZ2V0RW52aXJvbm1lbnROYW1lVGl0bGVDYXNlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFN0cmluZ0hlbHBlci50b1Bhc2NhbENhc2UodGhpcy5lbnZpcm9ubWVudE5hbWUpO1xuICB9XG59XG4iXX0=
@@ -15,5 +15,5 @@ export declare class StandardApp extends App {
15
15
  readonly securityTags?: SecurityTagsProps;
16
16
  readonly teamTags?: TeamTagsProps;
17
17
  readonly suppressTags?: boolean;
18
- constructor(props: StandardAppProps);
18
+ constructor(props?: StandardAppProps);
19
19
  }
@@ -2,26 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StandardApp = void 0;
4
4
  const aws_cdk_lib_1 = require("aws-cdk-lib");
5
- const helpers_1 = require("../../helpers");
6
5
  /**
7
6
  * Extends App providing support for tags and a standard for environment names.
8
7
  */
9
8
  class StandardApp extends aws_cdk_lib_1.App {
10
9
  constructor(props) {
11
10
  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;
11
+ this.automationTags = props === null || props === void 0 ? void 0 : props.automationTags;
12
+ this.costCenterTags = props === null || props === void 0 ? void 0 : props.costCenterTags;
13
+ this.securityTags = props === null || props === void 0 ? void 0 : props.securityTags;
14
+ this.teamTags = props === null || props === void 0 ? void 0 : props.teamTags;
15
+ this.suppressTags = props === null || props === void 0 ? void 0 : props.suppressTags;
24
16
  }
25
17
  }
26
18
  exports.StandardApp = StandardApp;
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhcmQtYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE2QztBQU83QywyQ0FBMkM7QUFTM0M7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxpQkFBRztJQVNsQyxZQUFZLEtBQXVCO1FBQ2pDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN6QixNQUFNLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7U0FDN0Y7UUFDRCxJQUFJLENBQUMsc0JBQVksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUU7WUFDM0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1NBQ3hEO1FBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQzNDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUMzQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztJQUN6QyxDQUFDO0NBQ0Y7QUF4QkQsa0NBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHAsIEVudmlyb25tZW50fSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLCBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcbmltcG9ydCB7U3RyaW5nSGVscGVyfSBmcm9tIFwiLi4vLi4vaGVscGVyc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIFN0YW5kYXJkQXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhbmRhcmRBcHBQcm9wcyBleHRlbmRzIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogRXh0ZW5kcyBBcHAgcHJvdmlkaW5nIHN1cHBvcnQgZm9yIHRhZ3MgYW5kIGEgc3RhbmRhcmQgZm9yIGVudmlyb25tZW50IG5hbWVzLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRBcHAgZXh0ZW5kcyBBcHAge1xuXG4gIHJlYWRvbmx5IGVudmlyb25tZW50TmFtZTogc3RyaW5nO1xuICByZWFkb25seSBhdXRvbWF0aW9uVGFncz86IEF1dG9tYXRpb25UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdzPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wczogU3RhbmRhcmRBcHBQcm9wcykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5lbnZpcm9ubWVudE5hbWUgPSB0aGlzLm5vZGUudHJ5R2V0Q29udGV4dChcImVudlwiKTtcbiAgICBpZiAoIXRoaXMuZW52aXJvbm1lbnROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbnZpcm9ubWVudCBpcyBtaXNzaW5nLiBQbGVhc2UgYWRkIFxcXCItYyBlbnY9PG5hbWU+XFxcIiB0byB5b3VyIENESyBjb21tYW5kXCIpO1xuICAgIH1cbiAgICBpZiAoIVN0cmluZ0hlbHBlci5pc0xvd2VyQWxwaGFudW1lcmljKHRoaXMuZW52aXJvbm1lbnROYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRW52aXJvbm1lbnQgbmFtZSBtdXN0IGJlIGxvd2VyIGNhc2VcIik7XG4gICAgfVxuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcy5hdXRvbWF0aW9uVGFncztcbiAgICB0aGlzLmNvc3RDZW50ZXJUYWdzID0gcHJvcHMuY29zdENlbnRlclRhZ3M7XG4gICAgdGhpcy5zZWN1cml0eVRhZ3MgPSBwcm9wcy5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzLnRlYW1UYWdzO1xuICAgIHRoaXMuc3VwcHJlc3NUYWdzID0gcHJvcHMuc3VwcHJlc3NUYWdzO1xuICB9XG59XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhcmQtYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE2QztBQWdCN0M7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxpQkFBRztJQVNsQyxZQUFZLEtBQXdCO1FBQ2xDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsY0FBYyxDQUFDO1FBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGNBQWMsQ0FBQztRQUM1QyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsUUFBUSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVksQ0FBQztJQUMxQyxDQUFDO0NBQ0Y7QUFqQkQsa0NBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHAsIEVudmlyb25tZW50fSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLCBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcbmltcG9ydCB7U3RyaW5nSGVscGVyfSBmcm9tIFwiLi4vLi4vaGVscGVyc1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIFN0YW5kYXJkQXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhbmRhcmRBcHBQcm9wcyBleHRlbmRzIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogRXh0ZW5kcyBBcHAgcHJvdmlkaW5nIHN1cHBvcnQgZm9yIHRhZ3MgYW5kIGEgc3RhbmRhcmQgZm9yIGVudmlyb25tZW50IG5hbWVzLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRBcHAgZXh0ZW5kcyBBcHAge1xuXG4gIHJlYWRvbmx5IGVudmlyb25tZW50TmFtZTogc3RyaW5nO1xuICByZWFkb25seSBhdXRvbWF0aW9uVGFncz86IEF1dG9tYXRpb25UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdzPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcm9wcz86IFN0YW5kYXJkQXBwUHJvcHMpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcz8uYXV0b21hdGlvblRhZ3M7XG4gICAgdGhpcy5jb3N0Q2VudGVyVGFncyA9IHByb3BzPy5jb3N0Q2VudGVyVGFncztcbiAgICB0aGlzLnNlY3VyaXR5VGFncyA9IHByb3BzPy5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzPy50ZWFtVGFncztcbiAgICB0aGlzLnN1cHByZXNzVGFncyA9IHByb3BzPy5zdXBwcmVzc1RhZ3M7XG4gIH1cbn1cbiJdfQ==
@@ -1,16 +1,10 @@
1
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
2
  import { AutomationTagsProps, CostCenterTagsProps, SecurityTagsProps, StandardTagsOptions, TeamTagsProps } from "./standard-tags";
3
+ import { Construct } from "constructs";
6
4
  /**
7
5
  * Properties for StandardStack.
8
6
  */
9
7
  export interface StandardStackProps extends ExtendedStackProps, StandardTagsOptions {
10
- /**
11
- * Environment the stack will be deployed to.
12
- */
13
- readonly env: StandardEnvironment;
14
8
  }
15
9
  /**
16
10
  * Adds support for tags and environment names.
@@ -21,5 +15,5 @@ export declare class StandardStack extends ExtendedStack {
21
15
  readonly securityTags?: SecurityTagsProps;
22
16
  readonly teamTags?: TeamTagsProps;
23
17
  readonly suppressTags?: boolean;
24
- constructor(scope: StandardApp | StandardStage, stackName: string, props: StandardStackProps);
18
+ constructor(scope: Construct, id: string, props: StandardStackProps);
25
19
  }
@@ -2,23 +2,24 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StandardStack = void 0;
4
4
  const extended_stack_1 = require("./extended-stack");
5
+ const standard_app_1 = require("./standard-app");
6
+ const standard_stage_1 = require("./standard-stage");
5
7
  const helpers_1 = require("../../helpers");
6
8
  const standard_tags_1 = require("./standard-tags");
7
9
  /**
8
10
  * Adds support for tags and environment names.
9
11
  */
10
12
  class StandardStack extends extended_stack_1.ExtendedStack {
11
- constructor(scope, stackName, props) {
13
+ constructor(scope, id, props) {
12
14
  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;
15
+ super(scope, id, props);
16
+ const standardScope = scope instanceof standard_app_1.StandardApp || scope instanceof standard_stage_1.StandardStage || scope instanceof StandardStack
17
+ ? scope : undefined;
18
+ this.automationTags = (_a = props.automationTags) !== null && _a !== void 0 ? _a : standardScope === null || standardScope === void 0 ? void 0 : standardScope.automationTags;
19
+ this.costCenterTags = (_b = props.costCenterTags) !== null && _b !== void 0 ? _b : standardScope === null || standardScope === void 0 ? void 0 : standardScope.costCenterTags;
20
+ this.securityTags = (_c = props.securityTags) !== null && _c !== void 0 ? _c : standardScope === null || standardScope === void 0 ? void 0 : standardScope.securityTags;
21
+ this.teamTags = (_d = props.teamTags) !== null && _d !== void 0 ? _d : standardScope === null || standardScope === void 0 ? void 0 : standardScope.teamTags;
22
+ this.suppressTags = (_e = props.suppressTags) !== null && _e !== void 0 ? _e : standardScope === null || standardScope === void 0 ? void 0 : standardScope.suppressTags;
22
23
  new standard_tags_1.StandardTags(this, { suppress: props.suppressTags })
23
24
  .addAutomationComponentTags({
24
25
  url: helpers_1.CDK_NPMJS_URL,
@@ -32,4 +33,4 @@ class StandardStack extends extended_stack_1.ExtendedStack {
32
33
  }
33
34
  }
34
35
  exports.StandardStack = StandardStack;
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBbUU7QUFJbkUsMkNBQXNFO0FBQ3RFLG1EQU95QjtBQWF6Qjs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLDhCQUFhO0lBUTlDLFlBQVksS0FBa0MsRUFBRSxTQUFpQixFQUFFLEtBQXlCOztRQUUxRixJQUFJLENBQUMsc0JBQVksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLFNBQVMsR0FBRyxzQkFBWSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLENBQUMsY0FBYyxtQ0FBSSxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLFNBQUcsS0FBSyxDQUFDLGNBQWMsbUNBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUNuRSxJQUFJLENBQUMsWUFBWSxTQUFHLEtBQUssQ0FBQyxZQUFZLG1DQUFJLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsU0FBRyxLQUFLLENBQUMsUUFBUSxtQ0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pELElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksS0FBSyxDQUFDLFlBQVksQ0FBQztRQUU3RCxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUMsQ0FBQzthQUNuRCwwQkFBMEIsQ0FBQztZQUMxQixHQUFHLEVBQUUsdUJBQWE7WUFDbEIsTUFBTSxFQUFFLG9CQUFVO1lBQ2xCLG9CQUFvQixFQUFFLENBQUMsNEJBQTRCLENBQUM7U0FDckQsQ0FBQzthQUNELGlCQUFpQixDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7YUFDdkMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQzthQUN2QyxlQUFlLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQzthQUNuQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7Q0FDRjtBQS9CRCxzQ0ErQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0V4dGVuZGVkU3RhY2ssIEV4dGVuZGVkU3RhY2tQcm9wc30gZnJvbSBcIi4vZXh0ZW5kZWQtc3RhY2tcIjtcbmltcG9ydCB7U3RhbmRhcmRBcHB9IGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuaW1wb3J0IHtTdGFuZGFyZFN0YWdlfSBmcm9tIFwiLi9zdGFuZGFyZC1zdGFnZVwiO1xuaW1wb3J0IHtTdGFuZGFyZEVudmlyb25tZW50fSBmcm9tIFwiLi9zdGFuZGFyZC1lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHtDREtfTlBNSlNfVVJMLCBDREtfVkVORE9SLCBTdHJpbmdIZWxwZXJ9IGZyb20gXCIuLi8uLi9oZWxwZXJzXCI7XG5pbXBvcnQge1xuICBBdXRvbWF0aW9uVGFnc1Byb3BzLFxuICBDb3N0Q2VudGVyVGFnc1Byb3BzLFxuICBTZWN1cml0eVRhZ3NQcm9wcyxcbiAgU3RhbmRhcmRUYWdzLFxuICBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBTdGFuZGFyZFN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkU3RhY2tQcm9wcyBleHRlbmRzIEV4dGVuZGVkU3RhY2tQcm9wcywgU3RhbmRhcmRUYWdzT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIEVudmlyb25tZW50IHRoZSBzdGFjayB3aWxsIGJlIGRlcGxveWVkIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52OiBTdGFuZGFyZEVudmlyb25tZW50O1xufVxuXG4vKipcbiAqIEFkZHMgc3VwcG9ydCBmb3IgdGFncyBhbmQgZW52aXJvbm1lbnQgbmFtZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFyZFN0YWNrIGV4dGVuZHMgRXh0ZW5kZWRTdGFjayB7XG5cbiAgcmVhZG9ubHkgYXV0b21hdGlvblRhZ3M/OiBBdXRvbWF0aW9uVGFnc1Byb3BzO1xuICByZWFkb25seSBjb3N0Q2VudGVyVGFncz86IENvc3RDZW50ZXJUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHNlY3VyaXR5VGFncz86IFNlY3VyaXR5VGFnc1Byb3BzO1xuICByZWFkb25seSB0ZWFtVGFncz86IFRlYW1UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHN1cHByZXNzVGFncz86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IFN0YW5kYXJkQXBwIHwgU3RhbmRhcmRTdGFnZSwgc3RhY2tOYW1lOiBzdHJpbmcsIHByb3BzOiBTdGFuZGFyZFN0YWNrUHJvcHMpIHtcblxuICAgIGlmICghU3RyaW5nSGVscGVyLmlzUGFzY2FsQ2FzZShzdGFja05hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJzdGFja05hbWUgbXVzdCBiZSBQYXNjYWxDYXNlXCIpO1xuICAgIH1cbiAgICBzdXBlcihzY29wZSwgYCR7c3RhY2tOYW1lfSR7U3RyaW5nSGVscGVyLnRvUGFzY2FsQ2FzZShwcm9wcy5lbnYubmFtZSl9YCwgcHJvcHMpO1xuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcy5hdXRvbWF0aW9uVGFncyA/PyBzY29wZS5hdXRvbWF0aW9uVGFncztcbiAgICB0aGlzLmNvc3RDZW50ZXJUYWdzID0gcHJvcHMuY29zdENlbnRlclRhZ3MgPz8gc2NvcGUuY29zdENlbnRlclRhZ3M7XG4gICAgdGhpcy5zZWN1cml0eVRhZ3MgPSBwcm9wcy5zZWN1cml0eVRhZ3MgPz8gc2NvcGUuc2VjdXJpdHlUYWdzO1xuICAgIHRoaXMudGVhbVRhZ3MgPSBwcm9wcy50ZWFtVGFncyA/PyBzY29wZS50ZWFtVGFncztcbiAgICB0aGlzLnN1cHByZXNzVGFncyA9IHByb3BzLnN1cHByZXNzVGFncyA/PyBzY29wZS5zdXBwcmVzc1RhZ3M7XG5cbiAgICBuZXcgU3RhbmRhcmRUYWdzKHRoaXMsIHtzdXBwcmVzczogcHJvcHMuc3VwcHJlc3NUYWdzfSlcbiAgICAgIC5hZGRBdXRvbWF0aW9uQ29tcG9uZW50VGFncyh7XG4gICAgICAgIHVybDogQ0RLX05QTUpTX1VSTCxcbiAgICAgICAgdmVuZG9yOiBDREtfVkVORE9SLFxuICAgICAgICBpbmNsdWRlUmVzb3VyY2VUeXBlczogW1wiQVdTOjpDbG91ZEZvcm1hdGlvbjo6U3RhY2tcIl1cbiAgICAgIH0pXG4gICAgICAuYWRkQXV0b21hdGlvblRhZ3MocHJvcHMuYXV0b21hdGlvblRhZ3MpXG4gICAgICAuYWRkQ29zdENlbnRlclRhZ3MocHJvcHMuY29zdENlbnRlclRhZ3MpXG4gICAgICAuYWRkU2VjdXJpdHlUYWdzKHByb3BzLnNlY3VyaXR5VGFncylcbiAgICAgIC5hZGRUZWFtVGFncyhwcm9wcy50ZWFtVGFncyk7XG4gIH1cbn1cbiJdfQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBbUU7QUFDbkUsaURBQTJDO0FBQzNDLHFEQUErQztBQUUvQywyQ0FBc0U7QUFDdEUsbURBT3lCO0FBVXpCOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsOEJBQWE7SUFROUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF5Qjs7UUFDakUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsTUFBTSxhQUFhLEdBQ2pCLEtBQUssWUFBWSwwQkFBVyxJQUFJLEtBQUssWUFBWSw4QkFBYSxJQUFJLEtBQUssWUFBWSxhQUFhO1lBQzlGLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUV4QixJQUFJLENBQUMsY0FBYyxTQUFHLEtBQUssQ0FBQyxjQUFjLG1DQUFJLGFBQWEsYUFBYixhQUFhLHVCQUFiLGFBQWEsQ0FBRSxjQUFjLENBQUM7UUFDNUUsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLENBQUMsY0FBYyxtQ0FBSSxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsY0FBYyxDQUFDO1FBQzVFLElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksYUFBYSxhQUFiLGFBQWEsdUJBQWIsYUFBYSxDQUFFLFlBQVksQ0FBQztRQUN0RSxJQUFJLENBQUMsUUFBUSxTQUFHLEtBQUssQ0FBQyxRQUFRLG1DQUFJLGFBQWEsYUFBYixhQUFhLHVCQUFiLGFBQWEsQ0FBRSxRQUFRLENBQUM7UUFDMUQsSUFBSSxDQUFDLFlBQVksU0FBRyxLQUFLLENBQUMsWUFBWSxtQ0FBSSxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsWUFBWSxDQUFDO1FBRXRFLElBQUksNEJBQVksQ0FBQyxJQUFJLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFBQyxDQUFDO2FBQ25ELDBCQUEwQixDQUFDO1lBQzFCLEdBQUcsRUFBRSx1QkFBYTtZQUNsQixNQUFNLEVBQUUsb0JBQVU7WUFDbEIsb0JBQW9CLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztTQUNyRCxDQUFDO2FBQ0QsaUJBQWlCLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQzthQUN2QyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDO2FBQ3ZDLGVBQWUsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO2FBQ25DLFdBQVcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakMsQ0FBQztDQUNGO0FBaENELHNDQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXh0ZW5kZWRTdGFjaywgRXh0ZW5kZWRTdGFja1Byb3BzfSBmcm9tIFwiLi9leHRlbmRlZC1zdGFja1wiO1xuaW1wb3J0IHtTdGFuZGFyZEFwcH0gZnJvbSBcIi4vc3RhbmRhcmQtYXBwXCI7XG5pbXBvcnQge1N0YW5kYXJkU3RhZ2V9IGZyb20gXCIuL3N0YW5kYXJkLXN0YWdlXCI7XG5pbXBvcnQge1N0YW5kYXJkRW52aXJvbm1lbnR9IGZyb20gXCIuL3N0YW5kYXJkLWVudmlyb25tZW50XCI7XG5pbXBvcnQge0NES19OUE1KU19VUkwsIENES19WRU5ET1IsIFN0cmluZ0hlbHBlcn0gZnJvbSBcIi4uLy4uL2hlbHBlcnNcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLFxuICBTdGFuZGFyZFRhZ3MsXG4gIFN0YW5kYXJkVGFnc09wdGlvbnMsXG4gIFRlYW1UYWdzUHJvcHNcbn0gZnJvbSBcIi4vc3RhbmRhcmQtdGFnc1wiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgU3RhbmRhcmRTdGFjay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFuZGFyZFN0YWNrUHJvcHMgZXh0ZW5kcyBFeHRlbmRlZFN0YWNrUHJvcHMsIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogQWRkcyBzdXBwb3J0IGZvciB0YWdzIGFuZCBlbnZpcm9ubWVudCBuYW1lcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0YW5kYXJkU3RhY2sgZXh0ZW5kcyBFeHRlbmRlZFN0YWNrIHtcblxuICByZWFkb25seSBhdXRvbWF0aW9uVGFncz86IEF1dG9tYXRpb25UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdzPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3RhbmRhcmRTdGFja1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCBzdGFuZGFyZFNjb3BlOiBTdGFuZGFyZEFwcCB8IFN0YW5kYXJkU3RhZ2UgfCBTdGFuZGFyZFN0YWNrIHwgdW5kZWZpbmVkID1cbiAgICAgIHNjb3BlIGluc3RhbmNlb2YgU3RhbmRhcmRBcHAgfHwgc2NvcGUgaW5zdGFuY2VvZiBTdGFuZGFyZFN0YWdlIHx8IHNjb3BlIGluc3RhbmNlb2YgU3RhbmRhcmRTdGFja1xuICAgICAgICA/IHNjb3BlIDogdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5hdXRvbWF0aW9uVGFncyA9IHByb3BzLmF1dG9tYXRpb25UYWdzID8/IHN0YW5kYXJkU2NvcGU/LmF1dG9tYXRpb25UYWdzO1xuICAgIHRoaXMuY29zdENlbnRlclRhZ3MgPSBwcm9wcy5jb3N0Q2VudGVyVGFncyA/PyBzdGFuZGFyZFNjb3BlPy5jb3N0Q2VudGVyVGFncztcbiAgICB0aGlzLnNlY3VyaXR5VGFncyA9IHByb3BzLnNlY3VyaXR5VGFncyA/PyBzdGFuZGFyZFNjb3BlPy5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzLnRlYW1UYWdzID8/IHN0YW5kYXJkU2NvcGU/LnRlYW1UYWdzO1xuICAgIHRoaXMuc3VwcHJlc3NUYWdzID0gcHJvcHMuc3VwcHJlc3NUYWdzID8/IHN0YW5kYXJkU2NvcGU/LnN1cHByZXNzVGFncztcblxuICAgIG5ldyBTdGFuZGFyZFRhZ3ModGhpcywge3N1cHByZXNzOiBwcm9wcy5zdXBwcmVzc1RhZ3N9KVxuICAgICAgLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHtcbiAgICAgICAgdXJsOiBDREtfTlBNSlNfVVJMLFxuICAgICAgICB2ZW5kb3I6IENES19WRU5ET1IsXG4gICAgICAgIGluY2x1ZGVSZXNvdXJjZVR5cGVzOiBbXCJBV1M6OkNsb3VkRm9ybWF0aW9uOjpTdGFja1wiXVxuICAgICAgfSlcbiAgICAgIC5hZGRBdXRvbWF0aW9uVGFncyhwcm9wcy5hdXRvbWF0aW9uVGFncylcbiAgICAgIC5hZGRDb3N0Q2VudGVyVGFncyhwcm9wcy5jb3N0Q2VudGVyVGFncylcbiAgICAgIC5hZGRTZWN1cml0eVRhZ3MocHJvcHMuc2VjdXJpdHlUYWdzKVxuICAgICAgLmFkZFRlYW1UYWdzKHByb3BzLnRlYW1UYWdzKTtcbiAgfVxufVxuIl19
@@ -1,20 +1,19 @@
1
1
  import { Stage, StageProps } from "aws-cdk-lib";
2
- import { StandardApp } from "./standard-app";
3
2
  import { AutomationTagsProps, CostCenterTagsProps, SecurityTagsProps, StandardTagsOptions, TeamTagsProps } from "./standard-tags";
3
+ import { Construct } from "constructs";
4
4
  /**
5
5
  * Properties for StandardStage.
6
6
  */
7
7
  export interface StandardStageProps extends StageProps, StandardTagsOptions {
8
8
  }
9
9
  /**
10
- * Adds support for tags.
10
+ * Extends Stage adding support for things like standard tagging.
11
11
  */
12
12
  export declare class StandardStage extends Stage {
13
- private readonly app;
14
13
  readonly automationTags?: AutomationTagsProps;
15
14
  readonly costCenterTags?: CostCenterTagsProps;
16
15
  readonly securityTags?: SecurityTagsProps;
17
16
  readonly teamTags?: TeamTagsProps;
18
17
  readonly suppressTags?: boolean;
19
- constructor(scope: StandardApp, id: string, props: StandardStageProps);
18
+ constructor(scope: Construct, id: string, props?: StandardStageProps);
20
19
  }
@@ -2,20 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StandardStage = void 0;
4
4
  const aws_cdk_lib_1 = require("aws-cdk-lib");
5
+ const standard_app_1 = require("./standard-app");
6
+ const standard_stack_1 = require("./standard-stack");
5
7
  /**
6
- * Adds support for tags.
8
+ * Extends Stage adding support for things like standard tagging.
7
9
  */
8
10
  class StandardStage extends aws_cdk_lib_1.Stage {
9
11
  constructor(scope, id, props) {
10
12
  var _a, _b, _c, _d, _e;
11
13
  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;
14
+ const standardScope = scope instanceof standard_app_1.StandardApp || scope instanceof StandardStage || scope instanceof standard_stack_1.StandardStack
15
+ ? scope : undefined;
16
+ this.automationTags = (_a = props === null || props === void 0 ? void 0 : props.automationTags) !== null && _a !== void 0 ? _a : standardScope === null || standardScope === void 0 ? void 0 : standardScope.automationTags;
17
+ this.costCenterTags = (_b = props === null || props === void 0 ? void 0 : props.costCenterTags) !== null && _b !== void 0 ? _b : standardScope === null || standardScope === void 0 ? void 0 : standardScope.costCenterTags;
18
+ this.securityTags = (_c = props === null || props === void 0 ? void 0 : props.securityTags) !== null && _c !== void 0 ? _c : standardScope === null || standardScope === void 0 ? void 0 : standardScope.securityTags;
19
+ this.teamTags = (_d = props === null || props === void 0 ? void 0 : props.teamTags) !== null && _d !== void 0 ? _d : standardScope === null || standardScope === void 0 ? void 0 : standardScope.teamTags;
20
+ this.suppressTags = (_e = props === null || props === void 0 ? void 0 : props.suppressTags) !== null && _e !== void 0 ? _e : standardScope === null || standardScope === void 0 ? void 0 : standardScope.suppressTags;
18
21
  }
19
22
  }
20
23
  exports.StandardStage = StandardStage;
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBOEM7QUFpQjlDOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUJBQUs7SUFTdEMsWUFBWSxLQUFrQixFQUFFLEVBQVUsRUFBRSxLQUF5Qjs7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLENBQUMsY0FBYyxtQ0FBSSxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQ25FLElBQUksQ0FBQyxjQUFjLFNBQUcsS0FBSyxDQUFDLGNBQWMsbUNBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUNuRSxJQUFJLENBQUMsWUFBWSxTQUFHLEtBQUssQ0FBQyxZQUFZLG1DQUFJLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDN0QsSUFBSSxDQUFDLFFBQVEsU0FBRyxLQUFLLENBQUMsUUFBUSxtQ0FBSSxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pELElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxDQUFDLFlBQVksbUNBQUksS0FBSyxDQUFDLFlBQVksQ0FBQztJQUMvRCxDQUFDO0NBQ0Y7QUFsQkQsc0NBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdGFnZSwgU3RhZ2VQcm9wc30gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1N0YW5kYXJkQXBwfSBmcm9tIFwiLi9zdGFuZGFyZC1hcHBcIjtcbmltcG9ydCB7XG4gIEF1dG9tYXRpb25UYWdzUHJvcHMsXG4gIENvc3RDZW50ZXJUYWdzUHJvcHMsXG4gIFNlY3VyaXR5VGFnc1Byb3BzLFxuICBTdGFuZGFyZFRhZ3NPcHRpb25zLFxuICBUZWFtVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBTdGFuZGFyZFN0YWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYXJkU3RhZ2VQcm9wcyBleHRlbmRzIFN0YWdlUHJvcHMsIFN0YW5kYXJkVGFnc09wdGlvbnMge1xuXG59XG5cbi8qKlxuICogQWRkcyBzdXBwb3J0IGZvciB0YWdzLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRTdGFnZSBleHRlbmRzIFN0YWdlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFwcDogU3RhbmRhcmRBcHA7XG4gIHJlYWRvbmx5IGF1dG9tYXRpb25UYWdzPzogQXV0b21hdGlvblRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgY29zdENlbnRlclRhZ3M/OiBDb3N0Q2VudGVyVGFnc1Byb3BzO1xuICByZWFkb25seSBzZWN1cml0eVRhZ3M/OiBTZWN1cml0eVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgdGVhbVRhZ3M/OiBUZWFtVGFnc1Byb3BzO1xuICByZWFkb25seSBzdXBwcmVzc1RhZ3M/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBTdGFuZGFyZEFwcCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YW5kYXJkU3RhZ2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuICAgIHRoaXMuYXBwID0gc2NvcGU7XG4gICAgdGhpcy5hdXRvbWF0aW9uVGFncyA9IHByb3BzLmF1dG9tYXRpb25UYWdzID8/IHNjb3BlLmF1dG9tYXRpb25UYWdzO1xuICAgIHRoaXMuY29zdENlbnRlclRhZ3MgPSBwcm9wcy5jb3N0Q2VudGVyVGFncyA/PyBzY29wZS5jb3N0Q2VudGVyVGFncztcbiAgICB0aGlzLnNlY3VyaXR5VGFncyA9IHByb3BzLnNlY3VyaXR5VGFncyA/PyBzY29wZS5zZWN1cml0eVRhZ3M7XG4gICAgdGhpcy50ZWFtVGFncyA9IHByb3BzLnRlYW1UYWdzID8/IHNjb3BlLnRlYW1UYWdzO1xuICAgIHRoaXMuc3VwcHJlc3NUYWdzID0gcHJvcHMuc3VwcHJlc3NUYWdzID8/IHNjb3BlLnN1cHByZXNzVGFncztcbiAgfVxufVxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtc3RhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzdGFuZGFyZC1zdGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBOEM7QUFTOUMsaURBQTJDO0FBQzNDLHFEQUErQztBQVMvQzs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLG1CQUFLO0lBUXRDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7O1FBQ2xFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLE1BQU0sYUFBYSxHQUNqQixLQUFLLFlBQVksMEJBQVcsSUFBSSxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFBWSw4QkFBYTtZQUM5RixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFeEIsSUFBSSxDQUFDLGNBQWMsU0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsY0FBYyxtQ0FBSSxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsY0FBYyxDQUFDO1FBQzdFLElBQUksQ0FBQyxjQUFjLFNBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGNBQWMsbUNBQUksYUFBYSxhQUFiLGFBQWEsdUJBQWIsYUFBYSxDQUFFLGNBQWMsQ0FBQztRQUM3RSxJQUFJLENBQUMsWUFBWSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLG1DQUFJLGFBQWEsYUFBYixhQUFhLHVCQUFiLGFBQWEsQ0FBRSxZQUFZLENBQUM7UUFDdkUsSUFBSSxDQUFDLFFBQVEsU0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsUUFBUSxtQ0FBSSxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsUUFBUSxDQUFDO1FBQzNELElBQUksQ0FBQyxZQUFZLFNBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVksbUNBQUksYUFBYSxhQUFiLGFBQWEsdUJBQWIsYUFBYSxDQUFFLFlBQVksQ0FBQztJQUN6RSxDQUFDO0NBQ0Y7QUFyQkQsc0NBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdGFnZSwgU3RhZ2VQcm9wc30gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQge1xuICBBdXRvbWF0aW9uVGFnc1Byb3BzLFxuICBDb3N0Q2VudGVyVGFnc1Byb3BzLFxuICBTZWN1cml0eVRhZ3NQcm9wcyxcbiAgU3RhbmRhcmRUYWdzT3B0aW9ucyxcbiAgVGVhbVRhZ3NQcm9wc1xufSBmcm9tIFwiLi9zdGFuZGFyZC10YWdzXCI7XG5pbXBvcnQge0NvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7U3RhbmRhcmRBcHB9IGZyb20gXCIuL3N0YW5kYXJkLWFwcFwiO1xuaW1wb3J0IHtTdGFuZGFyZFN0YWNrfSBmcm9tIFwiLi9zdGFuZGFyZC1zdGFja1wiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIFN0YW5kYXJkU3RhZ2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhbmRhcmRTdGFnZVByb3BzIGV4dGVuZHMgU3RhZ2VQcm9wcywgU3RhbmRhcmRUYWdzT3B0aW9ucyB7XG5cbn1cblxuLyoqXG4gKiBFeHRlbmRzIFN0YWdlIGFkZGluZyBzdXBwb3J0IGZvciB0aGluZ3MgbGlrZSBzdGFuZGFyZCB0YWdnaW5nLlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRTdGFnZSBleHRlbmRzIFN0YWdlIHtcblxuICByZWFkb25seSBhdXRvbWF0aW9uVGFncz86IEF1dG9tYXRpb25UYWdzUHJvcHM7XG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc2VjdXJpdHlUYWdzPzogU2VjdXJpdHlUYWdzUHJvcHM7XG4gIHJlYWRvbmx5IHRlYW1UYWdzPzogVGVhbVRhZ3NQcm9wcztcbiAgcmVhZG9ubHkgc3VwcHJlc3NUYWdzPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wcz86IFN0YW5kYXJkU3RhZ2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgY29uc3Qgc3RhbmRhcmRTY29wZTogU3RhbmRhcmRBcHAgfCBTdGFuZGFyZFN0YWdlIHwgU3RhbmRhcmRTdGFjayB8IHVuZGVmaW5lZCA9XG4gICAgICBzY29wZSBpbnN0YW5jZW9mIFN0YW5kYXJkQXBwIHx8IHNjb3BlIGluc3RhbmNlb2YgU3RhbmRhcmRTdGFnZSB8fCBzY29wZSBpbnN0YW5jZW9mIFN0YW5kYXJkU3RhY2tcbiAgICAgICAgPyBzY29wZSA6IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuYXV0b21hdGlvblRhZ3MgPSBwcm9wcz8uYXV0b21hdGlvblRhZ3MgPz8gc3RhbmRhcmRTY29wZT8uYXV0b21hdGlvblRhZ3M7XG4gICAgdGhpcy5jb3N0Q2VudGVyVGFncyA9IHByb3BzPy5jb3N0Q2VudGVyVGFncyA/PyBzdGFuZGFyZFNjb3BlPy5jb3N0Q2VudGVyVGFncztcbiAgICB0aGlzLnNlY3VyaXR5VGFncyA9IHByb3BzPy5zZWN1cml0eVRhZ3MgPz8gc3RhbmRhcmRTY29wZT8uc2VjdXJpdHlUYWdzO1xuICAgIHRoaXMudGVhbVRhZ3MgPSBwcm9wcz8udGVhbVRhZ3MgPz8gc3RhbmRhcmRTY29wZT8udGVhbVRhZ3M7XG4gICAgdGhpcy5zdXBwcmVzc1RhZ3MgPSBwcm9wcz8uc3VwcHJlc3NUYWdzID8/IHN0YW5kYXJkU2NvcGU/LnN1cHByZXNzVGFncztcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "truemark-cdk-lib",
3
- "version": "1.2.4-alpha.2+367beb1",
3
+ "version": "1.2.4-alpha.5+4f0699e",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "scripts": {
@@ -62,5 +62,5 @@
62
62
  "publishConfig": {
63
63
  "access": "public"
64
64
  },
65
- "gitHead": "367beb1d4eb4d2e214098666f8c59019425530a3"
65
+ "gitHead": "4f0699e009c431120965f684776e0d3863cc41a2"
66
66
  }