@decaf-ts/decoration 0.8.4 → 0.8.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.
Files changed (62) hide show
  1. package/README.md +1 -1
  2. package/dist/decoration.cjs +1 -1
  3. package/dist/decoration.cjs.map +1 -1
  4. package/dist/decoration.js +1 -1
  5. package/dist/decoration.js.map +1 -1
  6. package/lib/decoration/Decoration.cjs +36 -17
  7. package/lib/decoration/Decoration.d.ts +1 -0
  8. package/lib/decoration/Decoration.js.map +1 -1
  9. package/lib/decoration/flavourRegistry.cjs +29 -0
  10. package/lib/decoration/flavourRegistry.d.ts +9 -0
  11. package/lib/decoration/flavourRegistry.js.map +1 -0
  12. package/lib/decoration/index.cjs +2 -0
  13. package/lib/decoration/index.d.ts +2 -0
  14. package/lib/decoration/index.js.map +1 -1
  15. package/lib/decoration/metadataLink.cjs +26 -0
  16. package/lib/decoration/metadataLink.d.ts +8 -0
  17. package/lib/decoration/metadataLink.js.map +1 -0
  18. package/lib/decorators.cjs +17 -209
  19. package/lib/decorators.d.ts +1 -107
  20. package/lib/decorators.js.map +1 -1
  21. package/lib/esm/decoration/Decoration.d.ts +1 -0
  22. package/lib/esm/decoration/Decoration.js +33 -14
  23. package/lib/esm/decoration/Decoration.js.map +1 -1
  24. package/lib/esm/decoration/flavourRegistry.d.ts +9 -0
  25. package/lib/esm/decoration/flavourRegistry.js +26 -0
  26. package/lib/esm/decoration/flavourRegistry.js.map +1 -0
  27. package/lib/esm/decoration/index.d.ts +2 -0
  28. package/lib/esm/decoration/index.js +2 -0
  29. package/lib/esm/decoration/index.js.map +1 -1
  30. package/lib/esm/decoration/metadataLink.d.ts +8 -0
  31. package/lib/esm/decoration/metadataLink.js +20 -0
  32. package/lib/esm/decoration/metadataLink.js.map +1 -0
  33. package/lib/esm/decorators.d.ts +1 -107
  34. package/lib/esm/decorators.js +6 -199
  35. package/lib/esm/decorators.js.map +1 -1
  36. package/lib/esm/index.d.ts +1 -0
  37. package/lib/esm/index.js +1 -0
  38. package/lib/esm/index.js.map +1 -1
  39. package/lib/esm/metadata/Metadata.js +3 -3
  40. package/lib/esm/metadata/Metadata.js.map +1 -1
  41. package/lib/esm/shared/core.d.ts +107 -0
  42. package/lib/esm/shared/core.js +184 -0
  43. package/lib/esm/shared/core.js.map +1 -0
  44. package/lib/esm/shared/index.d.ts +1 -0
  45. package/lib/esm/shared/index.js +2 -0
  46. package/lib/esm/shared/index.js.map +1 -0
  47. package/lib/esm/version.d.ts +1 -1
  48. package/lib/esm/version.js +1 -1
  49. package/lib/index.cjs +1 -0
  50. package/lib/index.d.ts +1 -0
  51. package/lib/index.js.map +1 -1
  52. package/lib/metadata/Metadata.cjs +3 -3
  53. package/lib/metadata/Metadata.js.map +1 -1
  54. package/lib/shared/core.cjs +195 -0
  55. package/lib/shared/core.d.ts +107 -0
  56. package/lib/shared/core.js.map +1 -0
  57. package/lib/shared/index.cjs +18 -0
  58. package/lib/shared/index.d.ts +1 -0
  59. package/lib/shared/index.js.map +1 -0
  60. package/lib/version.cjs +1 -1
  61. package/lib/version.d.ts +1 -1
  62. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Decoration.js","sourceRoot":"","sources":["../../src/decoration/Decoration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Decoration.js","sourceRoot":"","sources":["../../src/decoration/Decoration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assignFlavour = assignFlavour;
4
+ const constants_1 = require("./../constants.cjs");
5
+ const Metadata_1 = require("./../metadata/Metadata.cjs");
6
+ const FLAVOUR_BUCKET_SYMBOL = Symbol.for(constants_1.DecorationKeys.FLAVOUR);
7
+ /**
8
+ * Updates the metadata registry to associate a constructor with the provided flavour.
9
+ * Removes the constructor from its previous flavour bucket, registers it under the new flavour, and mirrors the flavour value on the constructor.
10
+ * @param object Target object being decorated.
11
+ * @param flavour Flavour identifier to assign.
12
+ * @param defaultFlavour Fallback flavour used when no previous flavour is recorded.
13
+ * @returns Canonical constructor associated with the target.
14
+ */
15
+ function assignFlavour(object, flavour, defaultFlavour) {
16
+ const canonical = Metadata_1.Metadata.constr(object);
17
+ const previousFlavour = Metadata_1.Metadata["innerGet"](Metadata_1.Metadata.Symbol(object), constants_1.DecorationKeys.FLAVOUR) || defaultFlavour;
18
+ const previousBucket = Metadata_1.Metadata["innerGet"](FLAVOUR_BUCKET_SYMBOL, previousFlavour) || [];
19
+ const filtered = previousBucket.filter((entry) => {
20
+ return Metadata_1.Metadata.constr(entry) !== canonical;
21
+ });
22
+ Metadata_1.Metadata.set(constants_1.DecorationKeys.FLAVOUR, previousFlavour, filtered);
23
+ const nextBucket = new Set(Metadata_1.Metadata["innerGet"](FLAVOUR_BUCKET_SYMBOL, flavour) || []);
24
+ nextBucket.add(object);
25
+ Metadata_1.Metadata.set(constants_1.DecorationKeys.FLAVOUR, flavour, [...nextBucket]);
26
+ Metadata_1.Metadata.set(canonical, constants_1.DecorationKeys.FLAVOUR, flavour);
27
+ return canonical;
28
+ }
29
+ //# sourceMappingURL=flavourRegistry.js.map
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Updates the metadata registry to associate a constructor with the provided flavour.
3
+ * Removes the constructor from its previous flavour bucket, registers it under the new flavour, and mirrors the flavour value on the constructor.
4
+ * @param object Target object being decorated.
5
+ * @param flavour Flavour identifier to assign.
6
+ * @param defaultFlavour Fallback flavour used when no previous flavour is recorded.
7
+ * @returns Canonical constructor associated with the target.
8
+ */
9
+ export declare function assignFlavour(object: object, flavour: string, defaultFlavour: string): any;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flavourRegistry.js","sourceRoot":"","sources":["../../src/decoration/flavourRegistry.ts"],"names":[],"mappings":";;AAaA,sCAwBC;AArCD,kDAA8C;AAC9C,yDAAgD;AAEhD,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,CAAC,CAAC;AAEjE;;;;;;;GAOG;AACH,SAAgB,aAAa,CAC3B,MAAc,EACd,OAAe,EACf,cAAsB;IAEtB,MAAM,SAAS,GAAG,mBAAQ,CAAC,MAAM,CAAC,MAAa,CAAC,CAAC;IACjD,MAAM,eAAe,GACnB,mBAAQ,CAAC,UAAU,CAAC,CAClB,mBAAQ,CAAC,MAAM,CAAC,MAAa,CAAC,EAC9B,0BAAc,CAAC,OAAO,CACvB,IAAI,cAAc,CAAC;IACtB,MAAM,cAAc,GAClB,mBAAQ,CAAC,UAAU,CAAC,CAAC,qBAAqB,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC;IACrE,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE;QACpD,OAAO,mBAAQ,CAAC,MAAM,CAAC,KAAY,CAAC,KAAK,SAAS,CAAC;IACrD,CAAC,CAAC,CAAC;IACH,mBAAQ,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,mBAAQ,CAAC,UAAU,CAAC,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAC3D,CAAC;IACF,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,mBAAQ,CAAC,GAAG,CAAC,0BAAc,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAC/D,mBAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,0BAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -19,5 +19,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
21
  __exportStar(require("./Decoration.cjs"), exports);
22
+ __exportStar(require("./flavourRegistry.cjs"), exports);
23
+ __exportStar(require("./metadataLink.cjs"), exports);
22
24
  __exportStar(require("./types.cjs"), exports);
23
25
  //# sourceMappingURL=index.js.map
@@ -3,4 +3,6 @@
3
3
  * @summary Re-exports the fluent builder class along with its companion types so consumers can import from a single entry point.
4
4
  */
5
5
  export * from "./Decoration";
6
+ export * from "./flavourRegistry";
7
+ export * from "./metadataLink";
6
8
  export * from "./types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decoration/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,mDAA6B;AAC7B,8CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decoration/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;AAEH,mDAA6B;AAC7B,wDAAkC;AAClC,qDAA+B;AAC/B,8CAAwB"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerFlavourResolver = registerFlavourResolver;
4
+ exports.resolveFlavour = resolveFlavour;
5
+ exports.registerPendingResolver = registerPendingResolver;
6
+ exports.resolvePendingDecorators = resolvePendingDecorators;
7
+ const constants_1 = require("./../constants.cjs");
8
+ let flavourResolver;
9
+ let pendingResolver;
10
+ function registerFlavourResolver(resolver) {
11
+ flavourResolver = resolver;
12
+ }
13
+ function resolveFlavour(model) {
14
+ if (!flavourResolver)
15
+ return constants_1.DefaultFlavour;
16
+ return flavourResolver(model);
17
+ }
18
+ function registerPendingResolver(resolver) {
19
+ pendingResolver = resolver;
20
+ }
21
+ function resolvePendingDecorators(target, flavour) {
22
+ if (!pendingResolver)
23
+ return;
24
+ pendingResolver(target, flavour);
25
+ }
26
+ //# sourceMappingURL=metadataLink.js.map
@@ -0,0 +1,8 @@
1
+ import { Constructor } from "../metadata/types";
2
+ type FlavourResolver = (model: Constructor) => string;
3
+ type PendingResolver = (target: any, flavour?: string) => void;
4
+ export declare function registerFlavourResolver(resolver: FlavourResolver): void;
5
+ export declare function resolveFlavour(model: Constructor): string;
6
+ export declare function registerPendingResolver(resolver: PendingResolver): void;
7
+ export declare function resolvePendingDecorators(target: any, flavour?: string): void;
8
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadataLink.js","sourceRoot":"","sources":["../../src/decoration/metadataLink.ts"],"names":[],"mappings":";;AASA,0DAEC;AAED,wCAGC;AAED,0DAEC;AAED,4DAMC;AA3BD,kDAA8C;AAK9C,IAAI,eAA4C,CAAC;AACjD,IAAI,eAA4C,CAAC;AAEjD,SAAgB,uBAAuB,CAAC,QAAyB;IAC/D,eAAe,GAAG,QAAQ,CAAC;AAC7B,CAAC;AAED,SAAgB,cAAc,CAAC,KAAkB;IAC/C,IAAI,CAAC,eAAe;QAAE,OAAO,0BAAc,CAAC;IAC5C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,SAAgB,uBAAuB,CAAC,QAAyB;IAC/D,eAAe,GAAG,QAAQ,CAAC;AAC7B,CAAC;AAED,SAAgB,wBAAwB,CACtC,MAAW,EACX,OAAgB;IAEhB,IAAI,CAAC,eAAe;QAAE,OAAO;IAC7B,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC"}
@@ -1,75 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.metadata = metadata;
4
- exports.metadataArray = metadataArray;
3
+ exports.methodMetadata = exports.propMetadata = exports.apply = exports.method = exports.prop = exports.paramMetadata = exports.param = exports.metadataArray = exports.metadata = void 0;
5
4
  exports.uses = uses;
6
- exports.prop = prop;
7
- exports.param = param;
8
- exports.paramMetadata = paramMetadata;
9
- exports.method = method;
10
- exports.apply = apply;
11
- exports.propMetadata = propMetadata;
12
- exports.methodMetadata = methodMetadata;
13
5
  exports.description = description;
14
- const Metadata_1 = require("./metadata/Metadata.cjs");
15
- const constants_1 = require("./constants.cjs");
16
6
  const Decoration_1 = require("./decoration/Decoration.cjs");
17
- /**
18
- * @description Assigns arbitrary metadata to a target using a string key.
19
- * @summary Decorator factory that stores a key/value pair in the central metadata store for the provided class or member.
20
- * @param {string} key Metadata key to associate with the target.
21
- * @param {any} value Metadata value to store under the given key.
22
- * @return {ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator} Decorator that writes the metadata when applied.
23
- * @function metadata
24
- * @category Decorators
25
- */
26
- function metadata(key, value) {
27
- return function metadata(model, prop, descriptor) {
28
- let targetModel = model;
29
- if (prop) {
30
- targetModel =
31
- typeof model === "function"
32
- ? model
33
- : model.constructor || model;
34
- if (typeof descriptor === "undefined") {
35
- const metadataTarget = typeof model === "function" ? model.prototype : model;
36
- const designType = Reflect.getOwnMetadata(constants_1.DecorationKeys.DESIGN_TYPE, metadataTarget, prop);
37
- const propKey = Metadata_1.Metadata.key(constants_1.DecorationKeys.PROPERTIES, prop.toString());
38
- const existing = Metadata_1.Metadata.get(targetModel, propKey);
39
- if (typeof designType !== "undefined" ||
40
- typeof existing === "undefined") {
41
- Metadata_1.Metadata.set(targetModel, propKey, designType);
42
- }
43
- }
44
- }
45
- Metadata_1.Metadata.set(targetModel, key, value);
46
- };
47
- }
48
- function metadataArray(key, ...data) {
49
- return function metadataArray(target, propertyKey, descriptor) {
50
- const existingData = Metadata_1.Metadata.get(target, key) || [];
51
- const metaKey = propertyKey ? Metadata_1.Metadata.key(key, propertyKey) : key;
52
- const arr = [metadata(metaKey, [...new Set([...existingData, ...data])])];
53
- return apply(...arr)(target, propertyKey, descriptor);
54
- };
55
- }
56
- function manageFlavourRMetadata(object, flavour) {
57
- const canonical = Metadata_1.Metadata.constr(object);
58
- const flav = Metadata_1.Metadata["innerGet"](Metadata_1.Metadata.Symbol(object), constants_1.DecorationKeys.FLAVOUR) || Decoration_1.Decoration.defaultFlavour;
59
- const old = Metadata_1.Metadata["innerGet"](Symbol.for(constants_1.DecorationKeys.FLAVOUR), flav) || [];
60
- const filtered = old.filter((o) => {
61
- return Metadata_1.Metadata.constr(o) !== canonical;
62
- });
63
- Metadata_1.Metadata.set(constants_1.DecorationKeys.FLAVOUR, flav, filtered);
64
- const current = new Set(Metadata_1.Metadata["innerGet"](Symbol.for(constants_1.DecorationKeys.FLAVOUR), flavour) || []);
65
- current.add(object);
66
- Metadata_1.Metadata.set(constants_1.DecorationKeys.FLAVOUR, flavour, [...current]);
67
- }
7
+ const constants_1 = require("./constants.cjs");
8
+ const Metadata_1 = require("./metadata/Metadata.cjs");
9
+ const flavourRegistry_1 = require("./decoration/flavourRegistry.cjs");
10
+ const core_1 = require("./shared/core.cjs");
11
+ var core_2 = require("./shared/core.cjs");
12
+ Object.defineProperty(exports, "metadata", { enumerable: true, get: function () { return core_2.metadata; } });
13
+ Object.defineProperty(exports, "metadataArray", { enumerable: true, get: function () { return core_2.metadataArray; } });
14
+ Object.defineProperty(exports, "param", { enumerable: true, get: function () { return core_2.param; } });
15
+ Object.defineProperty(exports, "paramMetadata", { enumerable: true, get: function () { return core_2.paramMetadata; } });
16
+ Object.defineProperty(exports, "prop", { enumerable: true, get: function () { return core_2.prop; } });
17
+ Object.defineProperty(exports, "method", { enumerable: true, get: function () { return core_2.method; } });
18
+ Object.defineProperty(exports, "apply", { enumerable: true, get: function () { return core_2.apply; } });
19
+ Object.defineProperty(exports, "propMetadata", { enumerable: true, get: function () { return core_2.propMetadata; } });
20
+ Object.defineProperty(exports, "methodMetadata", { enumerable: true, get: function () { return core_2.methodMetadata; } });
68
21
  function uses(flavour) {
69
22
  return (object) => {
70
- const constr = Metadata_1.Metadata.constr(object);
71
- manageFlavourRMetadata(object, flavour);
72
- Metadata_1.Metadata.set(constr, constants_1.DecorationKeys.FLAVOUR, flavour);
23
+ const constr = (0, flavourRegistry_1.assignFlavour)(object, flavour, Decoration_1.Decoration.defaultFlavour);
73
24
  if (flavour !== Decoration_1.Decoration.defaultFlavour) {
74
25
  Decoration_1.Decoration["resolvePendingDecorators"](constr, flavour);
75
26
  }
@@ -93,149 +44,6 @@ function uses(flavour) {
93
44
  return object;
94
45
  };
95
46
  }
96
- /**
97
- * @description Captures and stores a property's design type.
98
- * @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
99
- * @return {PropertyDecorator} Decorator that records the property's type metadata when applied.
100
- * @function prop
101
- * @category Property Decorators
102
- */
103
- function prop() {
104
- // function innerProp() {
105
- return function innerProp(model, prop) {
106
- const metadataTarget = typeof model === "function" ? model.prototype : model;
107
- const designType = Reflect.getOwnMetadata(constants_1.DecorationKeys.DESIGN_TYPE, metadataTarget, prop);
108
- return metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.PROPERTIES, prop), designType)(model, prop);
109
- };
110
- }
111
- /**
112
- * @description Captures a single parameter type for the decorated method.
113
- * @summary Decorator factory that ensures the method metadata is initialised and stores the reflected parameter constructor at the provided index.
114
- * @return {ParameterDecorator} Decorator that records the parameter type when applied.
115
- * @function param
116
- * @category Parameter Decorators
117
- * @mermaid
118
- * sequenceDiagram
119
- * participant U as User Code
120
- * participant P as param()
121
- * participant M as Metadata
122
- * U->>P: param()(target, key, index)
123
- * P->>U: method()(target, key, descriptor)
124
- * P->>M: params(constructor, key)
125
- * M-->>P: parameter constructors[]
126
- * P->>M: set(methods.key.index, constructor)
127
- * P-->>U: parameter recorded
128
- */
129
- function param() {
130
- return function param(model, prop, index) {
131
- if (!prop)
132
- throw new Error(`The @param decorator can only be applied to methods`);
133
- method()(model, prop, Object.getOwnPropertyDescriptor(model, prop));
134
- const paramTpes = Metadata_1.Metadata.params(model.constructor, prop);
135
- if (!paramTpes)
136
- throw new Error(`Missing parameter types for ${String(prop)}`);
137
- if (index >= paramTpes.length)
138
- throw new Error(`Parameter index ${index} out of range for ${String(prop)}`);
139
- metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.METHODS, prop, index.toString()), paramTpes[index])(model, prop);
140
- };
141
- }
142
- /**
143
- * @description Extends a parameter decorator with additional metadata.
144
- * @summary Applies the default `param()` decorator and augments the stored metadata with an arbitrary key/value pair.
145
- * @param {string} key Metadata key to associate with the parameter.
146
- * @param {any} value Metadata value persisted under the given key.
147
- * @return {ParameterDecorator} Decorator that records both the parameter design type and additional metadata.
148
- * @function paramMetadata
149
- * @category Parameter Decorators
150
- */
151
- function paramMetadata(key, value) {
152
- return function paramMetadata(target, prop, index) {
153
- return apply(param(), metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.METHODS, prop, key), value))(target, prop, index);
154
- };
155
- }
156
- /**
157
- * @description Records method design-time metadata.
158
- * @summary Decorator factory that captures a method's reflected parameter and return types, storing them under the appropriate metadata keys so they can be inspected at runtime.
159
- * @return {MethodDecorator} Decorator that persists the method's signature information into the metadata store when applied.
160
- * @function method
161
- * @mermaid
162
- * sequenceDiagram
163
- * participant U as User Code
164
- * participant F as method()
165
- * participant M as Metadata
166
- * U->>F: method()(target, key, descriptor)
167
- * F->>U: Reflect.getOwnMetadata(design:paramtypes)
168
- * F->>U: Reflect.getOwnMetadata(design:returntype)
169
- * F->>M: set(methods.key.design:paramtypes, params)
170
- * F->>M: set(methods.key.design:returntype, returnType)
171
- * F-->>U: decorated function
172
- * @category Method Decorators
173
- */
174
- function method() {
175
- return function method(obj, prop, descriptor) {
176
- const designParams = Reflect.getOwnMetadata(constants_1.DecorationKeys.DESIGN_PARAMS, obj, prop);
177
- const designReturn = Reflect.getOwnMetadata(constants_1.DecorationKeys.DESIGN_RETURN, obj, prop);
178
- return apply(metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.METHODS, prop, constants_1.DecorationKeys.DESIGN_PARAMS), designParams), metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.METHODS, prop, constants_1.DecorationKeys.DESIGN_RETURN), designReturn))(obj, prop, descriptor);
179
- };
180
- }
181
- /**
182
- * @description Decorator factory that applies multiple decorators to a single target.
183
- * @summary Creates a composite decorator that applies multiple decorators in sequence, correctly handling class, method, property, and parameter decorators.
184
- * @param {Array<ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator>} decorators Collection of decorators to apply.
185
- * @return {ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator} Decorator function that applies all provided decorators to the target.
186
- * @function apply
187
- * @mermaid
188
- * sequenceDiagram
189
- * participant U as User Code
190
- * participant A as apply(...decorators)
191
- * participant D as Decorator
192
- * U->>A: get decorator(...decorators)
193
- * A->>U: returns (target, key?, desc?) => void
194
- * U->>A: invoke on target
195
- * loop for each decorator
196
- * A->>D: invoke appropriate decorator type
197
- * end
198
- * @category Decorators
199
- */
200
- function apply(...decorators) {
201
- return (target, propertyKey, descriptor) => {
202
- for (const decorator of decorators) {
203
- if (typeof propertyKey === "undefined") {
204
- decorator(target);
205
- continue;
206
- }
207
- if (typeof descriptor === "number") {
208
- decorator(target, propertyKey, descriptor);
209
- continue;
210
- }
211
- decorator(target, propertyKey, descriptor);
212
- }
213
- };
214
- }
215
- /**
216
- * @description Creates a property metadata decorator.
217
- * @summary Convenience factory that combines `metadata(key, value)` and `prop()` to both set an arbitrary metadata key and record the property's design type.
218
- * @param {string} key Metadata key to set for the property.
219
- * @param {any} value Metadata value to associate with the key.
220
- * @return {PropertyDecorator} Decorator that sets the metadata and captures the property's type.
221
- * @function propMetadata
222
- * @category Property Decorators
223
- */
224
- function propMetadata(key, value) {
225
- return apply(metadata(key, value), prop());
226
- }
227
- /**
228
- * @description Creates a method metadata decorator.
229
- * @summary Convenience factory that combines `metadata(key, value)` and `method()` to both set an arbitrary metadata key and record the method's design return and param types.
230
- * @param {string} key Metadata key to set for the property.
231
- * @param {any} value Metadata value to associate with the key.
232
- * @return {MethodDecorator} Decorator that sets the metadata and captures the method's signature metadata.
233
- * @function methodMetadata
234
- * @category Method Decorators
235
- */
236
- function methodMetadata(key, value) {
237
- return apply(metadata(key, value), method());
238
- }
239
47
  /**
240
48
  * @description Attaches a human-readable description to a class or member.
241
49
  * @summary Decorator factory that stores a textual description in the metadata store under the appropriate description key for a class or its property.
@@ -247,7 +55,7 @@ function methodMetadata(key, value) {
247
55
  function description(desc) {
248
56
  function innerDescription(desc) {
249
57
  return function innerDescription(original, prop, descriptor) {
250
- return metadata(Metadata_1.Metadata.key(constants_1.DecorationKeys.DESCRIPTION, prop ? prop.toString() : constants_1.DecorationKeys.CLASS), desc)(original, prop, descriptor);
58
+ return (0, core_1.metadata)(Metadata_1.Metadata.key(constants_1.DecorationKeys.DESCRIPTION, prop ? prop.toString() : constants_1.DecorationKeys.CLASS), desc)(original, prop, descriptor);
251
59
  };
252
60
  }
253
61
  return Decoration_1.Decoration.for(constants_1.DecorationKeys.DESCRIPTION)
@@ -1,111 +1,5 @@
1
- /**
2
- * @description Assigns arbitrary metadata to a target using a string key.
3
- * @summary Decorator factory that stores a key/value pair in the central metadata store for the provided class or member.
4
- * @param {string} key Metadata key to associate with the target.
5
- * @param {any} value Metadata value to store under the given key.
6
- * @return {ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator} Decorator that writes the metadata when applied.
7
- * @function metadata
8
- * @category Decorators
9
- */
10
- export declare function metadata(key: string, value: any): (model: any, prop?: any, descriptor?: PropertyDescriptor | number) => void;
11
- export declare function metadataArray(key: string, ...data: any[]): (target: any, propertyKey?: any, descriptor?: any) => void;
1
+ export { metadata, metadataArray, param, paramMetadata, prop, method, apply, propMetadata, methodMetadata, } from "./shared/core";
12
2
  export declare function uses(flavour: string): (object: any) => any;
13
- /**
14
- * @description Captures and stores a property's design type.
15
- * @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
16
- * @return {PropertyDecorator} Decorator that records the property's type metadata when applied.
17
- * @function prop
18
- * @category Property Decorators
19
- */
20
- export declare function prop(): (model: object, prop?: any) => void;
21
- /**
22
- * @description Captures a single parameter type for the decorated method.
23
- * @summary Decorator factory that ensures the method metadata is initialised and stores the reflected parameter constructor at the provided index.
24
- * @return {ParameterDecorator} Decorator that records the parameter type when applied.
25
- * @function param
26
- * @category Parameter Decorators
27
- * @mermaid
28
- * sequenceDiagram
29
- * participant U as User Code
30
- * participant P as param()
31
- * participant M as Metadata
32
- * U->>P: param()(target, key, index)
33
- * P->>U: method()(target, key, descriptor)
34
- * P->>M: params(constructor, key)
35
- * M-->>P: parameter constructors[]
36
- * P->>M: set(methods.key.index, constructor)
37
- * P-->>U: parameter recorded
38
- */
39
- export declare function param(): (model: object, prop?: any, index?: number) => void;
40
- /**
41
- * @description Extends a parameter decorator with additional metadata.
42
- * @summary Applies the default `param()` decorator and augments the stored metadata with an arbitrary key/value pair.
43
- * @param {string} key Metadata key to associate with the parameter.
44
- * @param {any} value Metadata value persisted under the given key.
45
- * @return {ParameterDecorator} Decorator that records both the parameter design type and additional metadata.
46
- * @function paramMetadata
47
- * @category Parameter Decorators
48
- */
49
- export declare function paramMetadata(key: string, value: any): (target: any, prop: any, index: number) => void;
50
- /**
51
- * @description Records method design-time metadata.
52
- * @summary Decorator factory that captures a method's reflected parameter and return types, storing them under the appropriate metadata keys so they can be inspected at runtime.
53
- * @return {MethodDecorator} Decorator that persists the method's signature information into the metadata store when applied.
54
- * @function method
55
- * @mermaid
56
- * sequenceDiagram
57
- * participant U as User Code
58
- * participant F as method()
59
- * participant M as Metadata
60
- * U->>F: method()(target, key, descriptor)
61
- * F->>U: Reflect.getOwnMetadata(design:paramtypes)
62
- * F->>U: Reflect.getOwnMetadata(design:returntype)
63
- * F->>M: set(methods.key.design:paramtypes, params)
64
- * F->>M: set(methods.key.design:returntype, returnType)
65
- * F-->>U: decorated function
66
- * @category Method Decorators
67
- */
68
- export declare function method(): (obj: any, prop?: any, descriptor?: any) => void;
69
- /**
70
- * @description Decorator factory that applies multiple decorators to a single target.
71
- * @summary Creates a composite decorator that applies multiple decorators in sequence, correctly handling class, method, property, and parameter decorators.
72
- * @param {Array<ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator>} decorators Collection of decorators to apply.
73
- * @return {ClassDecorator|MethodDecorator|PropertyDecorator|ParameterDecorator} Decorator function that applies all provided decorators to the target.
74
- * @function apply
75
- * @mermaid
76
- * sequenceDiagram
77
- * participant U as User Code
78
- * participant A as apply(...decorators)
79
- * participant D as Decorator
80
- * U->>A: get decorator(...decorators)
81
- * A->>U: returns (target, key?, desc?) => void
82
- * U->>A: invoke on target
83
- * loop for each decorator
84
- * A->>D: invoke appropriate decorator type
85
- * end
86
- * @category Decorators
87
- */
88
- export declare function apply(...decorators: Array<ClassDecorator | MethodDecorator | PropertyDecorator | ParameterDecorator>): (target: object, propertyKey?: string | symbol | unknown, descriptor?: PropertyDescriptor | number) => void;
89
- /**
90
- * @description Creates a property metadata decorator.
91
- * @summary Convenience factory that combines `metadata(key, value)` and `prop()` to both set an arbitrary metadata key and record the property's design type.
92
- * @param {string} key Metadata key to set for the property.
93
- * @param {any} value Metadata value to associate with the key.
94
- * @return {PropertyDecorator} Decorator that sets the metadata and captures the property's type.
95
- * @function propMetadata
96
- * @category Property Decorators
97
- */
98
- export declare function propMetadata(key: string, value: any): (target: object, propertyKey?: string | symbol | unknown, descriptor?: PropertyDescriptor | number) => void;
99
- /**
100
- * @description Creates a method metadata decorator.
101
- * @summary Convenience factory that combines `metadata(key, value)` and `method()` to both set an arbitrary metadata key and record the method's design return and param types.
102
- * @param {string} key Metadata key to set for the property.
103
- * @param {any} value Metadata value to associate with the key.
104
- * @return {MethodDecorator} Decorator that sets the metadata and captures the method's signature metadata.
105
- * @function methodMetadata
106
- * @category Method Decorators
107
- */
108
- export declare function methodMetadata(key: string, value: any): (target: object, propertyKey?: string | symbol | unknown, descriptor?: PropertyDescriptor | number) => void;
109
3
  /**
110
4
  * @description Attaches a human-readable description to a class or member.
111
5
  * @summary Decorator factory that stores a textual description in the metadata store under the appropriate description key for a class or its property.
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":";;;AAkBA,oBAuBC;AAUD,kCAuBC;AA1ED,4DAAqD;AACrD,+CAA6C;AAC7C,sDAA+C;AAC/C,sEAA6D;AAC7D,4CAAyC;AAEzC,0CAUuB;AATrB,gGAAA,QAAQ,OAAA;AACR,qGAAA,aAAa,OAAA;AACb,6FAAA,KAAK,OAAA;AACL,qGAAA,aAAa,OAAA;AACb,4FAAA,IAAI,OAAA;AACJ,8FAAA,MAAM,OAAA;AACN,6FAAA,KAAK,OAAA;AACL,oGAAA,YAAY,OAAA;AACZ,sGAAA,cAAc,OAAA;AAGhB,SAAgB,IAAI,CAAC,OAAe;IAClC,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,IAAA,+BAAa,EAAC,MAAM,EAAE,OAAO,EAAE,uBAAU,CAAC,cAAc,CAAC,CAAC;QAEzE,IAAI,OAAO,KAAK,uBAAU,CAAC,cAAc,EAAE,CAAC;YAC1C,uBAAU,CAAC,0BAA0B,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,IAAI,QAA4B,CAAC;YACjC,IAAI,CAAC;gBACH,QAAQ,GAAG,uBAAU,CAAC,iBAAiB,CAAC;oBACtC,CAAC,CAAC,uBAAU,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC;oBACvC,CAAC,CAAC,SAAS,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,GAAG,SAAS,CAAC;YACvB,CAAC;YACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,uBAAU,CAAC,cAAc,EAAE,CAAC;gBACvD,uBAAU,CAAC,0BAA0B,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,uBAAU,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAY;IACtC,SAAS,gBAAgB,CAAC,IAAY;QACpC,OAAO,SAAS,gBAAgB,CAC9B,QAAa,EACb,IAAU,EACV,UAAgB;YAEhB,OAAO,IAAA,eAAQ,EACb,mBAAQ,CAAC,GAAG,CACV,0BAAc,CAAC,WAAW,EAC1B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,0BAAc,CAAC,KAAK,CAC9C,EACD,IAAI,CACL,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAChC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,uBAAU,CAAC,GAAG,CAAC,0BAAc,CAAC,WAAW,CAAC;SAC9C,MAAM,CAAC;QACN,SAAS,EAAE,gBAAgB;QAC3B,IAAI,EAAE,CAAC,IAAI,CAAC;KACb,CAAC;SACD,KAAK,EAAE,CAAC;AACb,CAAC"}
@@ -113,6 +113,7 @@ export declare class Decoration implements IDecorationBuilder {
113
113
  private static getTargetState;
114
114
  private static applyPendingEntry;
115
115
  protected static markPending(owner: any): void;
116
+ private static ensureDefaultFlavour;
116
117
  private static scheduleDefaultResolve;
117
118
  protected static registerPendingDecorator(owner: any, target: any, callback: (flavour: string, overrides?: Record<number, any[]>) => PropertyDecorator | MethodDecorator, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<any> | number, argsOverride?: Record<number, any[]>, definitionKey?: string): string;
118
119
  protected static resolvePendingDecorators(target: any, flavour?: string): void;