@composurecdk/core 0.3.4 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Utilities for producing safe CDK construct IDs from arbitrary strings.
3
+ *
4
+ * The `constructs` library uses `/` as the path separator between construct
5
+ * IDs. When user-supplied strings (DNS names, ARNs, filesystem paths) are
6
+ * passed through to a construct ID, any embedded `/` silently gets rewritten
7
+ * to `--`, which produces unreadable CloudFormation logical IDs. Control
8
+ * characters are likewise unsafe.
9
+ *
10
+ * These helpers consolidate that sanitization in one place so every builder
11
+ * in the monorepo applies the same constraints.
12
+ */
13
+ /**
14
+ * Return a construct-ID-safe copy of `raw` by replacing unsafe characters
15
+ * (`/` and control characters) with a single `-`.
16
+ *
17
+ * Does not touch other characters — CDK construct IDs are otherwise
18
+ * permissive, and collapsing further (e.g., to PascalCase) would destroy
19
+ * information a reader expects to see in the synthesised tree.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * sanitizeConstructId("a/b") // "a-b"
24
+ * sanitizeConstructId("_sip._tcp") // "_sip._tcp" (unchanged)
25
+ * ```
26
+ */
27
+ export declare function sanitizeConstructId(raw: string): string;
28
+ /**
29
+ * Join the supplied parts into a single construct ID. Falsy parts are
30
+ * dropped; each remaining part is passed through {@link sanitizeConstructId}
31
+ * and the results are joined with `-`.
32
+ *
33
+ * Intended for composing IDs from a mix of static prefixes and user-supplied
34
+ * fragments — the sanitization step means callers don't have to reason about
35
+ * what characters their inputs might contain.
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * constructId("records", "a", "api") // "records-a-api"
40
+ * constructId("zone", undefined, "www") // "zone-www"
41
+ * constructId("records", "a/b") // "records-a-b"
42
+ * ```
43
+ */
44
+ export declare function constructId(...parts: readonly (string | undefined | null | false)[]): string;
45
+ //# sourceMappingURL=construct-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"construct-id.d.ts","sourceRoot":"","sources":["../src/construct-id.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,KAAK,CAAC,EAAE,GAAG,MAAM,CAK5F"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Utilities for producing safe CDK construct IDs from arbitrary strings.
3
+ *
4
+ * The `constructs` library uses `/` as the path separator between construct
5
+ * IDs. When user-supplied strings (DNS names, ARNs, filesystem paths) are
6
+ * passed through to a construct ID, any embedded `/` silently gets rewritten
7
+ * to `--`, which produces unreadable CloudFormation logical IDs. Control
8
+ * characters are likewise unsafe.
9
+ *
10
+ * These helpers consolidate that sanitization in one place so every builder
11
+ * in the monorepo applies the same constraints.
12
+ */
13
+ // eslint-disable-next-line no-control-regex
14
+ const UNSAFE = /[/\x00-\x1f\x7f]/g;
15
+ /**
16
+ * Return a construct-ID-safe copy of `raw` by replacing unsafe characters
17
+ * (`/` and control characters) with a single `-`.
18
+ *
19
+ * Does not touch other characters — CDK construct IDs are otherwise
20
+ * permissive, and collapsing further (e.g., to PascalCase) would destroy
21
+ * information a reader expects to see in the synthesised tree.
22
+ *
23
+ * @example
24
+ * ```ts
25
+ * sanitizeConstructId("a/b") // "a-b"
26
+ * sanitizeConstructId("_sip._tcp") // "_sip._tcp" (unchanged)
27
+ * ```
28
+ */
29
+ export function sanitizeConstructId(raw) {
30
+ return raw.replace(UNSAFE, "-");
31
+ }
32
+ /**
33
+ * Join the supplied parts into a single construct ID. Falsy parts are
34
+ * dropped; each remaining part is passed through {@link sanitizeConstructId}
35
+ * and the results are joined with `-`.
36
+ *
37
+ * Intended for composing IDs from a mix of static prefixes and user-supplied
38
+ * fragments — the sanitization step means callers don't have to reason about
39
+ * what characters their inputs might contain.
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * constructId("records", "a", "api") // "records-a-api"
44
+ * constructId("zone", undefined, "www") // "zone-www"
45
+ * constructId("records", "a/b") // "records-a-b"
46
+ * ```
47
+ */
48
+ export function constructId(...parts) {
49
+ return parts
50
+ .filter((p) => typeof p === "string" && p.length > 0)
51
+ .map(sanitizeConstructId)
52
+ .join("-");
53
+ }
54
+ //# sourceMappingURL=construct-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"construct-id.js","sourceRoot":"","sources":["../src/construct-id.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,4CAA4C;AAC5C,MAAM,MAAM,GAAG,mBAAmB,CAAC;AAEnC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,GAAG,KAAqD;IAClF,OAAO,KAAK;SACT,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;SACjE,GAAG,CAAC,mBAAmB,CAAC;SACxB,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { Builder, type IBuilder } from "./builder.js";
2
+ export { constructId, sanitizeConstructId } from "./construct-id.js";
2
3
  export { compose, type ComposedSystem, type ConfiguredSystem, type AfterBuildHook, } from "./compose.js";
3
4
  export { CyclicDependencyError } from "./cyclic-dependency-error.js";
4
5
  export { type Lifecycle } from "./lifecycle.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,OAAO,EACP,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EACL,OAAO,EACP,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export { Builder } from "./builder.js";
2
+ export { constructId, sanitizeConstructId } from "./construct-id.js";
2
3
  export { compose, } from "./compose.js";
3
4
  export { CyclicDependencyError } from "./cyclic-dependency-error.js";
4
5
  export { Ref, ref, resolve, isRef } from "./ref.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,OAAO,GAIR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAmB,MAAM,UAAU,CAAC;AACrE,OAAO,EAGL,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EACL,OAAO,GAIR,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAmB,MAAM,UAAU,CAAC;AACrE,OAAO,EAGL,WAAW,EACX,aAAa,GACd,MAAM,qBAAqB,CAAC"}
package/dist/ref.d.ts CHANGED
@@ -104,11 +104,14 @@ export type Resolvable<T> = T | Ref<T>;
104
104
  export declare function isRef<T>(value: Resolvable<T>): value is Ref<T>;
105
105
  /**
106
106
  * Resolves a {@link Resolvable} value. If it is a {@link Ref}, resolves it
107
- * against the provided context. Otherwise returns the value as-is.
107
+ * against the provided context (or an empty context if none is given).
108
+ * Otherwise returns the value as-is.
108
109
  *
109
110
  * @param value - A concrete value or a `Ref`.
110
111
  * @param context - The resolved dependency outputs, keyed by component name.
112
+ * Omit for standalone builds where no refs are in use — a `Ref` resolved
113
+ * against an empty context will throw "component not found".
111
114
  * @returns The concrete value.
112
115
  */
113
- export declare function resolve<T>(value: Resolvable<T>, context: Record<string, object>): T;
116
+ export declare function resolve<T>(value: Resolvable<T>, context?: Record<string, object>): T;
114
117
  //# sourceMappingURL=ref.d.ts.map
package/dist/ref.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,GAAG,CAAC,CAAC;IACI,OAAO,CAAC,QAAQ,CAAC,SAAS;IAA9C,OAAO;IAEP;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC;IAYtD;;;;;OAKG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAIzC;;;;;;;;;OASG;IACH,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAInC;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;CAG5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAEjE,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAShG;;;;;GAKG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAEvC;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,CAE9D;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAEnF"}
1
+ {"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,GAAG,CAAC,CAAC;IACI,OAAO,CAAC,QAAQ,CAAC,SAAS;IAA9C,OAAO;IAEP;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC;IAYtD;;;;;OAKG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAIzC;;;;;;;;;OASG;IACH,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAInC;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;CAG5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAEjE,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAShG;;;;;GAKG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAEvC;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,CAE9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAEpF"}
package/dist/ref.js CHANGED
@@ -91,13 +91,16 @@ export function isRef(value) {
91
91
  }
92
92
  /**
93
93
  * Resolves a {@link Resolvable} value. If it is a {@link Ref}, resolves it
94
- * against the provided context. Otherwise returns the value as-is.
94
+ * against the provided context (or an empty context if none is given).
95
+ * Otherwise returns the value as-is.
95
96
  *
96
97
  * @param value - A concrete value or a `Ref`.
97
98
  * @param context - The resolved dependency outputs, keyed by component name.
99
+ * Omit for standalone builds where no refs are in use — a `Ref` resolved
100
+ * against an empty context will throw "component not found".
98
101
  * @returns The concrete value.
99
102
  */
100
103
  export function resolve(value, context) {
101
- return isRef(value) ? value.resolve(context) : value;
104
+ return isRef(value) ? value.resolve(context ?? {}) : value;
102
105
  }
103
106
  //# sourceMappingURL=ref.js.map
package/dist/ref.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ref.js","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,OAAO,GAAG;IACuB;IAArC,YAAqC,SAAiD;QAAjD,cAAS,GAAT,SAAS,CAAwC;IAAG,CAAC;IAE1F;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAmB,SAAiB;QAC3C,OAAO,IAAI,GAAG,CAAI,CAAC,OAAO,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,WAAW,SAAS,wDAAwD;oBAC1E,WAAW,SAAS,gCAAgC,CACvD,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,SAAS,CAAM,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAoB,GAAM;QAC3B,OAAO,IAAI,GAAG,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;OASG;IACH,GAAG,CAAI,EAAmB;QACxB,OAAO,IAAI,GAAG,CAAI,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAA+B;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACF;AA+BD,MAAM,UAAU,GAAG,CACjB,SAAiB,EACjB,SAA2B;IAE3B,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAI,SAAS,CAAC,CAAC;IAClC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAUD;;GAEG;AACH,MAAM,UAAU,KAAK,CAAI,KAAoB;IAC3C,OAAO,KAAK,YAAY,GAAG,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,OAAO,CAAI,KAAoB,EAAE,OAA+B;IAC9E,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"ref.js","sourceRoot":"","sources":["../src/ref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,OAAO,GAAG;IACuB;IAArC,YAAqC,SAAiD;QAAjD,cAAS,GAAT,SAAS,CAAwC;IAAG,CAAC;IAE1F;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAmB,SAAiB;QAC3C,OAAO,IAAI,GAAG,CAAI,CAAC,OAAO,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,WAAW,SAAS,wDAAwD;oBAC1E,WAAW,SAAS,gCAAgC,CACvD,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,SAAS,CAAM,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,GAAG,CAAoB,GAAM;QAC3B,OAAO,IAAI,GAAG,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;OASG;IACH,GAAG,CAAI,EAAmB;QACxB,OAAO,IAAI,GAAG,CAAI,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,OAA+B;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACF;AA+BD,MAAM,UAAU,GAAG,CACjB,SAAiB,EACjB,SAA2B;IAE3B,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAI,SAAS,CAAC,CAAC;IAClC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAUD;;GAEG;AACH,MAAM,UAAU,KAAK,CAAI,KAAoB;IAC3C,OAAO,KAAK,YAAY,GAAG,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,OAAO,CAAI,KAAoB,EAAE,OAAgC;IAC/E,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@composurecdk/core",
3
- "version": "0.3.4",
3
+ "version": "0.3.6",
4
4
  "description": "Composable CDK component system — lifecycle, dependency resolution, and builder pattern",
5
5
  "repository": {
6
6
  "type": "git",