@alma-cdk/construct-library 0.0.1 → 0.0.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.
package/API.md CHANGED
@@ -29,7 +29,6 @@ new AlmaCdkConstructLibrary(options: AlmaCdkConstructLibraryOptions)
29
29
  | **Name** | **Description** |
30
30
  | --- | --- |
31
31
  | <code><a href="#@alma-cdk/construct-library.AlmaCdkConstructLibrary.toString">toString</a></code> | Returns a string representation of this construct. |
32
- | <code><a href="#@alma-cdk/construct-library.AlmaCdkConstructLibrary.with">with</a></code> | Applies one or more mixins to this construct. |
33
32
  | <code><a href="#@alma-cdk/construct-library.AlmaCdkConstructLibrary.addExcludeFromCleanup">addExcludeFromCleanup</a></code> | Exclude the matching files from pre-synth cleanup. |
34
33
  | <code><a href="#@alma-cdk/construct-library.AlmaCdkConstructLibrary.addGitIgnore">addGitIgnore</a></code> | Adds a .gitignore pattern. |
35
34
  | <code><a href="#@alma-cdk/construct-library.AlmaCdkConstructLibrary.addPackageIgnore">addPackageIgnore</a></code> | Adds patterns to be ignored by npm. |
@@ -72,27 +71,6 @@ public toString(): string
72
71
 
73
72
  Returns a string representation of this construct.
74
73
 
75
- ##### `with` <a name="with" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.with"></a>
76
-
77
- ```typescript
78
- public with(mixins: ...IMixin[]): IConstruct
79
- ```
80
-
81
- Applies one or more mixins to this construct.
82
-
83
- Mixins are applied in order. The list of constructs is captured at the
84
- start of the call, so constructs added by a mixin will not be visited.
85
- Use multiple `with()` calls if subsequent mixins should apply to added
86
- constructs.
87
-
88
- ###### `mixins`<sup>Required</sup> <a name="mixins" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.with.parameter.mixins"></a>
89
-
90
- - *Type:* ...constructs.IMixin[]
91
-
92
- The mixins to apply.
93
-
94
- ---
95
-
96
74
  ##### `addExcludeFromCleanup` <a name="addExcludeFromCleanup" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.addExcludeFromCleanup"></a>
97
75
 
98
76
  ```typescript
@@ -646,7 +624,7 @@ names of cdk modules (e.g. `@aws-cdk/aws-lambda`).
646
624
 
647
625
  ---
648
626
 
649
- ##### `isConstruct` <a name="isConstruct" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.isConstruct"></a>
627
+ ##### ~~`isConstruct`~~ <a name="isConstruct" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.isConstruct"></a>
650
628
 
651
629
  ```typescript
652
630
  import { AlmaCdkConstructLibrary } from '@alma-cdk/construct-library'
@@ -656,20 +634,6 @@ AlmaCdkConstructLibrary.isConstruct(x: any)
656
634
 
657
635
  Checks if `x` is a construct.
658
636
 
659
- Use this method instead of `instanceof` to properly detect `Construct`
660
- instances, even when the construct library is symlinked.
661
-
662
- Explanation: in JavaScript, multiple copies of the `constructs` library on
663
- disk are seen as independent, completely different libraries. As a
664
- consequence, the class `Construct` in each copy of the `constructs` library
665
- is seen as a different class, and an instance of one class will not test as
666
- `instanceof` the other class. `npm install` will not create installations
667
- like this, but users may manually symlink construct libraries together or
668
- use a monorepo tool: in those cases, multiple copies of the `constructs`
669
- library can be accidentally installed, and `instanceof` will behave
670
- unpredictably. It is safest to avoid using `instanceof`, and using
671
- this type-testing method instead.
672
-
673
637
  ###### `x`<sup>Required</sup> <a name="x" id="@alma-cdk/construct-library.AlmaCdkConstructLibrary.isConstruct.parameter.x"></a>
674
638
 
675
639
  - *Type:* any
package/README.md CHANGED
@@ -13,4 +13,43 @@
13
13
  <hr/>
14
14
  </div>
15
15
 
16
- Custom [Projen Project Type](https://projen.io/docs/concepts/projects/building-your-own/) to manage all the `alma-cdk/*` CDK construts.
16
+ Custom [Projen Project Type](https://projen.io/docs/concepts/projects/building-your-own/) to manage all the `alma-cdk/*` CDK construts.
17
+
18
+ ## Installation
19
+
20
+ 1. Install with `npm`:
21
+ ```sh
22
+ npm i -D @alma-cdk/construct-library
23
+ ```
24
+
25
+ 2. Import the custom Projen project type:
26
+ ```diff
27
+ - import { AwsCdkConstructLibrary } from 'projen/lib/awscdk';
28
+ + import { AlmaCdkConstructLibrary } from "@alma-cdk/construct-library";
29
+ ```
30
+
31
+ 3. Initialize and define (at least) minimum required configuration:
32
+ ```ts
33
+ const project = new AlmaCdkConstructLibrary({
34
+ name: "<SCOPE>/<PACKAGE_NAME>",
35
+ author: "<AUTHOR_ORGANIZATION_NAME>",
36
+ authorAddress: "<AUTHOR_ORGANIZATION_EMAIL>",
37
+ description: "<PACKAGE_DESCRIPTION>",
38
+ repositoryUrl: "https://<GIT_URL>.git",
39
+ stability: cdk.Stability.EXPERIMENTAL, // or STABLE or DEPRECATED
40
+ majorVersion: 0, // 1, 2, ...
41
+ releaseEnvironment: "production",
42
+ });
43
+
44
+ project.synth();
45
+ ```
46
+
47
+ 4. Install `pnpm`
48
+
49
+ 5. Run `projen` with `pnpm`:
50
+ ```sh
51
+ pnpm exec projen
52
+ ```
53
+
54
+ 6. Ensure correct Node version: `fnm use`
55
+
@@ -97,5 +97,5 @@ class AlmaCdkConstructLibrary extends projen_1.awscdk.AwsCdkConstructLibrary {
97
97
  }
98
98
  exports.AlmaCdkConstructLibrary = AlmaCdkConstructLibrary;
99
99
  _a = JSII_RTTI_SYMBOL_1;
100
- AlmaCdkConstructLibrary[_a] = { fqn: "@alma-cdk/construct-library.AlmaCdkConstructLibrary", version: "0.0.1" };
100
+ AlmaCdkConstructLibrary[_a] = { fqn: "@alma-cdk/construct-library.AlmaCdkConstructLibrary", version: "0.0.2" };
101
101
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxtYUNka0NvbnN0cnVjdExpYnJhcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQWxtYUNka0NvbnN0cnVjdExpYnJhcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBNEM7QUFDNUMsc0RBQXVEO0FBQ3ZELDZDQUEwQztBQUMxQyw2RkFHa0Q7QUFDbEQseUNBQXdEO0FBQ3hELHlFQUFzRTtBQUl0RSxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUM7QUFDOUIsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7QUFDcEMsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDO0FBQzlCLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQztBQUUzQixNQUFhLHVCQUF3QixTQUFRLGVBQU0sQ0FBQyxzQkFBc0I7SUFHeEUsWUFBWSxPQUF1QztRQUNqRCxNQUFNLGdCQUFnQixHQUNwQixxRUFBb0MsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEQsTUFBTSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEdBQUcsSUFBQSw2QkFBc0IsRUFDakUsZ0JBQWdCLENBQUMsSUFBSSxDQUN0QixDQUFDO1FBRUYsTUFBTSxJQUFJLEdBQXlDO1lBQ2pELEdBQUcsZ0JBQWdCO1lBQ25CLDJCQUEyQjtZQUMzQixhQUFhLEVBQUUsa0JBQWtCO1lBQ2pDLGtCQUFrQixFQUFFLElBQUk7WUFDeEIsb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixjQUFjLEVBQUUsbUJBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJO1lBQ2xELFNBQVMsRUFBRSxtQkFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNO1lBQ3RDLG9CQUFvQixFQUFFLElBQUk7WUFDMUIsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLFlBQVk7WUFDekIsUUFBUSxFQUFFLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDO1lBQzdDLFdBQVcsRUFBRTtnQkFDWCxXQUFXLEVBQUUsWUFBWTtnQkFDekIsY0FBYyxFQUFFLDJCQUFjLENBQUMsS0FBSzthQUNyQztZQUNELDBCQUEwQjtZQUMxQixRQUFRLEVBQUUsSUFBSTtZQUNkLGVBQWUsRUFBRTtnQkFDZixpQkFBaUIsRUFBRTtvQkFDakIsY0FBYyxFQUFFO3dCQUNkLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxNQUFNO3dCQUNOLGVBQWU7cUJBQ2hCO2lCQUNGO2FBQ0Y7WUFDRCxhQUFhO1lBQ2IsYUFBYSxFQUFFO2dCQUNiLFFBQVEsRUFBRSxHQUFHLFlBQVksSUFBSSxXQUFXLEVBQUU7Z0JBQzFDLE1BQU0sRUFBRSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUM1RSxpQkFBaUIsRUFBRSxJQUFJO2FBQ3hCO1lBQ0QsV0FBVyxFQUFFO2dCQUNYLFVBQVUsRUFBRSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEtBQUs7YUFDL0Y7WUFDRCxNQUFNO1lBQ04sVUFBVSxFQUFFLFdBQVc7WUFDdkIsaUJBQWlCLEVBQUUsa0JBQWtCO1lBQ3JDLFlBQVk7WUFDWixTQUFTLEVBQUU7Z0JBQ1QsV0FBVztnQkFDWCwrQkFBK0I7Z0JBQy9CLDJCQUEyQjtnQkFDM0Isc0JBQXNCO2dCQUN0QixtQkFBbUI7Z0JBQ25CLFNBQVM7Z0JBQ1QsZUFBZTtnQkFDZixpQkFBaUI7Z0JBQ2pCLHFCQUFxQjthQUN0QjtZQUNELFdBQVcsRUFBRTtnQkFDWCxPQUFPLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQzthQUM3QztTQUNGLENBQUM7UUFFRixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFWixxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLGdCQUFnQixDQUFDLG1CQUFvQixDQUFDO1FBRWpFLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLHNDQUFzQztRQUMxRSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBRWpELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVoQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUNyQixJQUFJLEVBQUUsb0JBQW9CO1NBQzNCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsK0JBQStCLEVBQUU7WUFDNUMsV0FBVyxFQUNULDZFQUE2RTtZQUMvRSxJQUFJLEVBQUUsa0RBQWtEO1NBQ3pELENBQUMsQ0FBQztRQUVILElBQUksbURBQXdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFbkMsSUFBSSx1QkFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7O0FBaEdILDBEQWlHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c2NkaywgamF2YXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBVcGRhdGVTbmFwc2hvdCB9IGZyb20gJ3Byb2plbi9saWIvamF2YXNjcmlwdCc7XG5pbXBvcnQgeyBOb2RlQ29uZmlnIH0gZnJvbSAnLi9Ob2RlQ29uZmlnJztcbmltcG9ydCB7XG4gIGFsbWFDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9uc1NjaGVtYSxcbiAgdHlwZSBBbG1hQ2RrQ29uc3RydWN0TGlicmFyeU9wdGlvbnMsXG59IGZyb20gJy4vc2NoZW1hcy9hbG1hQ2RrQ29uc3RydWN0TGlicmFyeU9wdGlvbnMnO1xuaW1wb3J0IHsgcGFyc2VTY29wZWRQYWNrYWdlTmFtZSB9IGZyb20gJy4vc2NoZW1hcy9uYW1lJztcbmltcG9ydCB7IFNvbmFyQ2xvdWRSZXBvcnRXb3JrZmxvdyB9IGZyb20gJy4vU29uYXJDbG91ZFJlcG9ydFdvcmtmbG93JztcblxuZXhwb3J0IHR5cGUgeyBBbG1hQ2RrQ29uc3RydWN0TGlicmFyeU9wdGlvbnMgfSBmcm9tICcuL3NjaGVtYXMvYWxtYUNka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zJztcblxuY29uc3QgQ0RLX1ZFUlNJT04gPSAnMi4yMjAuMCc7XG5jb25zdCBDT05TVFJVQ1RTX1ZFUlNJT04gPSAnMTAuMy4wJztcbmNvbnN0IEpTSUlfVkVSU0lPTiA9ICd+NS45LjAnO1xuY29uc3QgSkVTVF9WRVJTSU9OID0gJ14zMCc7XG5cbmV4cG9ydCBjbGFzcyBBbG1hQ2RrQ29uc3RydWN0TGlicmFyeSBleHRlbmRzIGF3c2Nkay5Bd3NDZGtDb25zdHJ1Y3RMaWJyYXJ5IHtcbiAgcHVibGljIHJlYWRvbmx5IHdvcmtmbG93Tm9kZVZlcnNpb246IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBBbG1hQ2RrQ29uc3RydWN0TGlicmFyeU9wdGlvbnMpIHtcbiAgICBjb25zdCB2YWxpZGF0ZWRPcHRpb25zID1cbiAgICAgIGFsbWFDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9uc1NjaGVtYS5wYXJzZShvcHRpb25zKTtcblxuICAgIGNvbnN0IHsgc2NvcGU6IHBhY2thZ2VTY29wZSwgcGFja2FnZU5hbWUgfSA9IHBhcnNlU2NvcGVkUGFja2FnZU5hbWUoXG4gICAgICB2YWxpZGF0ZWRPcHRpb25zLm5hbWUsXG4gICAgKTtcblxuICAgIGNvbnN0IG9wdHM6IGF3c2Nkay5Bd3NDZGtDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyA9IHtcbiAgICAgIC4uLnZhbGlkYXRlZE9wdGlvbnMsXG4gICAgICAvLyBQYWNrYWdlIG1hbmFnZXIgJiBwcm9qZW5cbiAgICAgIHByb2plbkNvbW1hbmQ6ICdwbnBtIGV4ZWMgcHJvamVuJyxcbiAgICAgIGF1dGhvck9yZ2FuaXphdGlvbjogdHJ1ZSxcbiAgICAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiAnbWFpbicsXG4gICAgICBwYWNrYWdlTWFuYWdlcjogamF2YXNjcmlwdC5Ob2RlUGFja2FnZU1hbmFnZXIuUE5QTSxcbiAgICAgIG5wbUFjY2VzczogamF2YXNjcmlwdC5OcG1BY2Nlc3MuUFVCTElDLFxuICAgICAgbnBtVHJ1c3RlZFB1Ymxpc2hpbmc6IHRydWUsXG4gICAgICBwcm9qZW5yY1RzOiB0cnVlLFxuICAgICAganNpaVZlcnNpb246IEpTSUlfVkVSU0lPTixcbiAgICAgIGtleXdvcmRzOiBbJ2NkaycsICdhd3MtY2RrJywgJ2F3c2NkaycsICdhd3MnXSxcbiAgICAgIGplc3RPcHRpb25zOiB7XG4gICAgICAgIGplc3RWZXJzaW9uOiBKRVNUX1ZFUlNJT04sXG4gICAgICAgIHVwZGF0ZVNuYXBzaG90OiBVcGRhdGVTbmFwc2hvdC5ORVZFUixcbiAgICAgIH0sXG4gICAgICAvLyBDb2RlIHF1YWxpdHkgKFByZXR0aWVyKVxuICAgICAgcHJldHRpZXI6IHRydWUsXG4gICAgICBwcmV0dGllck9wdGlvbnM6IHtcbiAgICAgICAgaWdub3JlRmlsZU9wdGlvbnM6IHtcbiAgICAgICAgICBpZ25vcmVQYXR0ZXJuczogW1xuICAgICAgICAgICAgJy5naXRodWIvKiovKicsXG4gICAgICAgICAgICAnLnByb2plbi8qKi8qJyxcbiAgICAgICAgICAgICcudnNjb2RlLyoqLyonLFxuICAgICAgICAgICAgJ2NvdmVyYWdlLyoqLyonLFxuICAgICAgICAgICAgJ2Rpc3QvKiovKicsXG4gICAgICAgICAgICAnLyouKicsXG4gICAgICAgICAgICAnIS5wcm9qZW5yYy50cycsXG4gICAgICAgICAgXSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICAvLyBQdWJsaXNoaW5nXG4gICAgICBwdWJsaXNoVG9QeXBpOiB7XG4gICAgICAgIGRpc3ROYW1lOiBgJHtwYWNrYWdlU2NvcGV9LiR7cGFja2FnZU5hbWV9YCxcbiAgICAgICAgbW9kdWxlOiBgJHtwYWNrYWdlU2NvcGUucmVwbGFjZSgnLScsICdfJyl9LiR7cGFja2FnZU5hbWUucmVwbGFjZSgnLScsICdfJyl9YCxcbiAgICAgICAgdHJ1c3RlZFB1Ymxpc2hpbmc6IHRydWUsXG4gICAgICB9LFxuICAgICAgcHVibGlzaFRvR286IHtcbiAgICAgICAgbW9kdWxlTmFtZTogYCR7dmFsaWRhdGVkT3B0aW9ucy5yZXBvc2l0b3J5VXJsLnJlcGxhY2UoJ2h0dHBzOi8vJywgJycpLnJlcGxhY2UoJy5naXQnLCAnJyl9LWdvYCxcbiAgICAgIH0sXG4gICAgICAvLyBDREtcbiAgICAgIGNka1ZlcnNpb246IENES19WRVJTSU9OLFxuICAgICAgY29uc3RydWN0c1ZlcnNpb246IENPTlNUUlVDVFNfVkVSU0lPTixcbiAgICAgIC8vIEdpdCAmIGRldlxuICAgICAgZ2l0aWdub3JlOiBbXG4gICAgICAgICcuRFNfU3RvcmUnLFxuICAgICAgICAnL2V4YW1wbGVzLyoqL2Nkay5jb250ZXh0Lmpzb24nLFxuICAgICAgICAnL2V4YW1wbGVzLyoqL25vZGVfbW9kdWxlcycsXG4gICAgICAgICcvZXhhbXBsZXMvKiovY2RrLm91dCcsXG4gICAgICAgICcvZXhhbXBsZXMvKiovLmdpdCcsXG4gICAgICAgICdUT0RPLm1kJyxcbiAgICAgICAgJy5zY2FubmVyd29yay8nLFxuICAgICAgICAnKiovKi5kcmF3aW8uYmtwJyxcbiAgICAgICAgJyoqLyouYWZkZXNpZ25+bG9ja34nLFxuICAgICAgXSxcbiAgICAgIHRzY29uZmlnRGV2OiB7XG4gICAgICAgIGluY2x1ZGU6IFsnQWxtYUNka0NvbnN0cnVjdExpYnJhcnkvKiovKi50cyddLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgc3VwZXIob3B0cyk7XG5cbiAgICAvLyBTY2hlbWEgZGVmYXVsdCBlbnN1cmVzIHRoaXMgaXMgc2V0XG4gICAgdGhpcy53b3JrZmxvd05vZGVWZXJzaW9uID0gdmFsaWRhdGVkT3B0aW9ucy53b3JrZmxvd05vZGVWZXJzaW9uITtcblxuICAgIHRoaXMuYWRkRGV2RGVwcygndHlwZXNjcmlwdEBeNS45Jyk7IC8vIERlZmF1bHRzIHRvIHZlcnkgb2xkIHR5cGVzY3JpcHRANC45XG4gICAgdGhpcy5hZGREZXZEZXBzKCdAdHlwZXMvc2VtdmVyQF43Jyk7XG4gICAgdGhpcy5hZGREZXZEZXBzKCdqc29uLXNjaGVtYS10by10eXBlc2NyaXB0QF4xNScpO1xuXG4gICAgdGhpcy5hZGRCdW5kbGVkRGVwcygnem9kQDQnKTtcbiAgICB0aGlzLmFkZEJ1bmRsZWREZXBzKCdzZW12ZXJANycpO1xuXG4gICAgdGhpcy5hZGRUYXNrKCdmb3JtYXQnLCB7XG4gICAgICBleGVjOiAncHJldHRpZXIgLS13cml0ZSAuJyxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnZ2VuZXJhdGU6cG5wbS13b3Jrc3BhY2UtdHlwZXMnLCB7XG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgJ0Rvd25sb2FkIHBucG0td29ya3NwYWNlIEpTT04gc2NoZW1hIGFuZCBnZW5lcmF0ZSBwbnBtLXdvcmtzcGFjZS1zY2hlbWEuZC50cycsXG4gICAgICBleGVjOiAndHMtbm9kZSBzY3JpcHRzL2dlbmVyYXRlLXBucG0td29ya3NwYWNlLXR5cGVzLnRzJyxcbiAgICB9KTtcblxuICAgIG5ldyBTb25hckNsb3VkUmVwb3J0V29ya2Zsb3codGhpcyk7XG5cbiAgICBuZXcgTm9kZUNvbmZpZyh0aGlzKTtcbiAgfVxufVxuIl19
package/lib/NodeConfig.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NodeConfig = void 0;
4
- const aws_cdk_lib_1 = require("aws-cdk-lib");
5
4
  const projen_1 = require("projen");
5
+ const daysToMinutes_1 = require("./daysToMinutes");
6
6
  class NodeConfig {
7
7
  /**
8
8
  * @param project - The CDK construct library project; must expose `workflowNodeVersion` (e.g. AlmaCdkConstructLibrary).
@@ -13,9 +13,9 @@ class NodeConfig {
13
13
  });
14
14
  new projen_1.YamlFile(project, 'pnpm-workspace.yaml', {
15
15
  obj: {
16
- minimumReleaseAge: aws_cdk_lib_1.Duration.days(3).toMinutes(),
16
+ minimumReleaseAge: (0, daysToMinutes_1.daysToMinutes)(3),
17
17
  trustPolicy: 'no-downgrade',
18
- trustPolicyIgnoreAfter: aws_cdk_lib_1.Duration.days(14).toMinutes(),
18
+ trustPolicyIgnoreAfter: (0, daysToMinutes_1.daysToMinutes)(14),
19
19
  trustPolicyExclude: ['jsii@5.9.26'],
20
20
  nodeLinker: 'hoisted', // required for bundled deps
21
21
  resolutionMode: 'highest',
@@ -30,4 +30,4 @@ class NodeConfig {
30
30
  }
31
31
  }
32
32
  exports.NodeConfig = NodeConfig;
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9kZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Ob2RlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUF1QztBQUN2QyxtQ0FBaUQ7QUFPakQsTUFBYSxVQUFVO0lBQ3JCOztPQUVHO0lBQ0gsWUFBWSxPQUE0QztRQUN0RCxJQUFJLGlCQUFRLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRTtZQUM5QixLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUM7U0FDckMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxpQkFBUSxDQUFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRTtZQUMzQyxHQUFHLEVBQUU7Z0JBQ0gsaUJBQWlCLEVBQUUsc0JBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFO2dCQUMvQyxXQUFXLEVBQUUsY0FBYztnQkFDM0Isc0JBQXNCLEVBQUUsc0JBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxFQUFFO2dCQUNyRCxrQkFBa0IsRUFBRSxDQUFDLGFBQWEsQ0FBQztnQkFDbkMsVUFBVSxFQUFFLFNBQVMsRUFBRSw0QkFBNEI7Z0JBQ25ELGNBQWMsRUFBRSxTQUFTO2dCQUN6QixlQUFlLEVBQUUsSUFBSTtnQkFDckIscUJBQXFCLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRSxvQ0FBb0M7Z0JBQzlFLGtCQUFrQixFQUFFLElBQUk7Z0JBQ3hCLFNBQVMsRUFBRTtvQkFDVCxRQUFRLEVBQUUsU0FBUztpQkFDcEI7YUFDNEI7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBMUJELGdDQTBCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgVGV4dEZpbGUsIGNkaywgWWFtbEZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgUG5wbVdvcmtzcGFjZVNwZWNpZmljYXRpb24gfSBmcm9tICcuL3BucG0td29ya3NwYWNlLXNjaGVtYSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9kZUNvbmZpZ09wdGlvbnMge1xuICB3b3JrZmxvd05vZGVWZXJzaW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBOb2RlQ29uZmlnIHtcbiAgLyoqXG4gICAqIEBwYXJhbSBwcm9qZWN0IC0gVGhlIENESyBjb25zdHJ1Y3QgbGlicmFyeSBwcm9qZWN0OyBtdXN0IGV4cG9zZSBgd29ya2Zsb3dOb2RlVmVyc2lvbmAgKGUuZy4gQWxtYUNka0NvbnN0cnVjdExpYnJhcnkpLlxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvamVjdDogY2RrLkpzaWlQcm9qZWN0ICYgTm9kZUNvbmZpZ09wdGlvbnMpIHtcbiAgICBuZXcgVGV4dEZpbGUocHJvamVjdCwgJy5udm1yYycsIHtcbiAgICAgIGxpbmVzOiBbcHJvamVjdC53b3JrZmxvd05vZGVWZXJzaW9uXSxcbiAgICB9KTtcblxuICAgIG5ldyBZYW1sRmlsZShwcm9qZWN0LCAncG5wbS13b3Jrc3BhY2UueWFtbCcsIHtcbiAgICAgIG9iajoge1xuICAgICAgICBtaW5pbXVtUmVsZWFzZUFnZTogRHVyYXRpb24uZGF5cygzKS50b01pbnV0ZXMoKSxcbiAgICAgICAgdHJ1c3RQb2xpY3k6ICduby1kb3duZ3JhZGUnLFxuICAgICAgICB0cnVzdFBvbGljeUlnbm9yZUFmdGVyOiBEdXJhdGlvbi5kYXlzKDE0KS50b01pbnV0ZXMoKSxcbiAgICAgICAgdHJ1c3RQb2xpY3lFeGNsdWRlOiBbJ2pzaWlANS45LjI2J10sXG4gICAgICAgIG5vZGVMaW5rZXI6ICdob2lzdGVkJywgLy8gcmVxdWlyZWQgZm9yIGJ1bmRsZWQgZGVwc1xuICAgICAgICByZXNvbHV0aW9uTW9kZTogJ2hpZ2hlc3QnLFxuICAgICAgICBzdHJpY3REZXBCdWlsZHM6IHRydWUsXG4gICAgICAgIG9ubHlCdWlsdERlcGVuZGVuY2llczogWyd1bnJzLXJlc29sdmVyJ10sIC8vIGFsbG93IHVucnMtcmVzb2x2ZXIgYnVpbGQgc2NyaXB0c1xuICAgICAgICBibG9ja0V4b3RpY1N1YmRlcHM6IHRydWUsXG4gICAgICAgIG92ZXJyaWRlczoge1xuICAgICAgICAgICdhanZAXjgnOiAnXjguMTguMCcsXG4gICAgICAgIH0sXG4gICAgICB9IGFzIFBucG1Xb3Jrc3BhY2VTcGVjaWZpY2F0aW9uLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9kZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Ob2RlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFpRDtBQUNqRCxtREFBZ0Q7QUFPaEQsTUFBYSxVQUFVO0lBQ3JCOztPQUVHO0lBQ0gsWUFBWSxPQUE0QztRQUN0RCxJQUFJLGlCQUFRLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRTtZQUM5QixLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUM7U0FDckMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxpQkFBUSxDQUFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRTtZQUMzQyxHQUFHLEVBQUU7Z0JBQ0gsaUJBQWlCLEVBQUUsSUFBQSw2QkFBYSxFQUFDLENBQUMsQ0FBQztnQkFDbkMsV0FBVyxFQUFFLGNBQWM7Z0JBQzNCLHNCQUFzQixFQUFFLElBQUEsNkJBQWEsRUFBQyxFQUFFLENBQUM7Z0JBQ3pDLGtCQUFrQixFQUFFLENBQUMsYUFBYSxDQUFDO2dCQUNuQyxVQUFVLEVBQUUsU0FBUyxFQUFFLDRCQUE0QjtnQkFDbkQsY0FBYyxFQUFFLFNBQVM7Z0JBQ3pCLGVBQWUsRUFBRSxJQUFJO2dCQUNyQixxQkFBcUIsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLG9DQUFvQztnQkFDOUUsa0JBQWtCLEVBQUUsSUFBSTtnQkFDeEIsU0FBUyxFQUFFO29CQUNULFFBQVEsRUFBRSxTQUFTO2lCQUNwQjthQUM0QjtTQUNoQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUExQkQsZ0NBMEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dEZpbGUsIGNkaywgWWFtbEZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgZGF5c1RvTWludXRlcyB9IGZyb20gJy4vZGF5c1RvTWludXRlcyc7XG5pbXBvcnQgeyBQbnBtV29ya3NwYWNlU3BlY2lmaWNhdGlvbiB9IGZyb20gJy4vcG5wbS13b3Jrc3BhY2Utc2NoZW1hJztcblxuZXhwb3J0IGludGVyZmFjZSBOb2RlQ29uZmlnT3B0aW9ucyB7XG4gIHdvcmtmbG93Tm9kZVZlcnNpb246IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIE5vZGVDb25maWcge1xuICAvKipcbiAgICogQHBhcmFtIHByb2plY3QgLSBUaGUgQ0RLIGNvbnN0cnVjdCBsaWJyYXJ5IHByb2plY3Q7IG11c3QgZXhwb3NlIGB3b3JrZmxvd05vZGVWZXJzaW9uYCAoZS5nLiBBbG1hQ2RrQ29uc3RydWN0TGlicmFyeSkuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBjZGsuSnNpaVByb2plY3QgJiBOb2RlQ29uZmlnT3B0aW9ucykge1xuICAgIG5ldyBUZXh0RmlsZShwcm9qZWN0LCAnLm52bXJjJywge1xuICAgICAgbGluZXM6IFtwcm9qZWN0LndvcmtmbG93Tm9kZVZlcnNpb25dLFxuICAgIH0pO1xuXG4gICAgbmV3IFlhbWxGaWxlKHByb2plY3QsICdwbnBtLXdvcmtzcGFjZS55YW1sJywge1xuICAgICAgb2JqOiB7XG4gICAgICAgIG1pbmltdW1SZWxlYXNlQWdlOiBkYXlzVG9NaW51dGVzKDMpLFxuICAgICAgICB0cnVzdFBvbGljeTogJ25vLWRvd25ncmFkZScsXG4gICAgICAgIHRydXN0UG9saWN5SWdub3JlQWZ0ZXI6IGRheXNUb01pbnV0ZXMoMTQpLFxuICAgICAgICB0cnVzdFBvbGljeUV4Y2x1ZGU6IFsnanNpaUA1LjkuMjYnXSxcbiAgICAgICAgbm9kZUxpbmtlcjogJ2hvaXN0ZWQnLCAvLyByZXF1aXJlZCBmb3IgYnVuZGxlZCBkZXBzXG4gICAgICAgIHJlc29sdXRpb25Nb2RlOiAnaGlnaGVzdCcsXG4gICAgICAgIHN0cmljdERlcEJ1aWxkczogdHJ1ZSxcbiAgICAgICAgb25seUJ1aWx0RGVwZW5kZW5jaWVzOiBbJ3VucnMtcmVzb2x2ZXInXSwgLy8gYWxsb3cgdW5ycy1yZXNvbHZlciBidWlsZCBzY3JpcHRzXG4gICAgICAgIGJsb2NrRXhvdGljU3ViZGVwczogdHJ1ZSxcbiAgICAgICAgb3ZlcnJpZGVzOiB7XG4gICAgICAgICAgJ2FqdkBeOCc6ICdeOC4xOC4wJyxcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgUG5wbVdvcmtzcGFjZVNwZWNpZmljYXRpb24sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ /** Whole calendar days as minutes (24h per day, fixed length). */
2
+ export declare function daysToMinutes(days: number): number;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.daysToMinutes = daysToMinutes;
4
+ const MINUTES_PER_DAY = 24 * 60;
5
+ /** Whole calendar days as minutes (24h per day, fixed length). */
6
+ function daysToMinutes(days) {
7
+ return days * MINUTES_PER_DAY;
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5c1RvTWludXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXlzVG9NaW51dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0Esc0NBRUM7QUFMRCxNQUFNLGVBQWUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO0FBRWhDLGtFQUFrRTtBQUNsRSxTQUFnQixhQUFhLENBQUMsSUFBWTtJQUN4QyxPQUFPLElBQUksR0FBRyxlQUFlLENBQUM7QUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IE1JTlVURVNfUEVSX0RBWSA9IDI0ICogNjA7XG5cbi8qKiBXaG9sZSBjYWxlbmRhciBkYXlzIGFzIG1pbnV0ZXMgKDI0aCBwZXIgZGF5LCBmaXhlZCBsZW5ndGgpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRheXNUb01pbnV0ZXMoZGF5czogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIGRheXMgKiBNSU5VVEVTX1BFUl9EQVk7XG59XG4iXX0=
package/package.json CHANGED
@@ -18,7 +18,7 @@
18
18
  "@typescript-eslint/eslint-plugin": "^8",
19
19
  "@typescript-eslint/parser": "^8",
20
20
  "commit-and-tag-version": "^12",
21
- "constructs": "^10.0.0",
21
+ "constructs": "10.0.0",
22
22
  "eslint": "^9",
23
23
  "eslint-import-resolver-typescript": "^4.4.4",
24
24
  "eslint-plugin-import": "^2.32.0",
@@ -36,11 +36,10 @@
36
36
  "typescript": "^5.9"
37
37
  },
38
38
  "peerDependencies": {
39
- "constructs": "^10.5.1",
39
+ "constructs": "^10.0.0",
40
40
  "projen": "^0.99.21"
41
41
  },
42
42
  "dependencies": {
43
- "aws-cdk-lib": "^2.220.0",
44
43
  "projen": "^0.99.21",
45
44
  "semver": "7",
46
45
  "zod": "4"
@@ -54,7 +53,7 @@
54
53
  "publishConfig": {
55
54
  "access": "public"
56
55
  },
57
- "version": "0.0.1",
56
+ "version": "0.0.2",
58
57
  "jest": {
59
58
  "coverageProvider": "v8",
60
59
  "testMatch": [