@decaf-ts/decoration 0.6.4 → 0.7.0

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/README.md CHANGED
@@ -106,6 +106,12 @@ Practical examples for every exported surface of **@decaf-ts/decoration**. All s
106
106
 
107
107
  The `Decoration` class exposes a fluent builder that lets you define base decorators, add flavour-specific extras, or override behaviour entirely.
108
108
 
109
+ Important behaviour note:
110
+ - Calling `define()` registers (or replaces) the *base* decorators for a key/flavour. If you call `define()` again for the same key/flavour, the previously registered base decorators are replaced with the new ones.
111
+ - Calling `extend()` (or providing extras) registers additional flavour-specific decorators that are applied after the base decorators. Crucially, calls to `define()` will NOT remove or clear previously registered extras — extras persist until they are explicitly changed via `extend()` (or a `define()`/`apply()` that provides explicit extras).
112
+
113
+ These guarantees let you safely replace base behaviour without losing already-registered platform-specific additions.
114
+
109
115
  ### 1. Register base decorators for the default flavour
110
116
 
111
117
  ```ts
@@ -131,6 +137,47 @@ class DefaultComponent {}
131
137
  (DefaultComponent as any).__tag; // "base"
132
138
  ```
133
139
 
140
+ ### Replace base decorators (base only — extras persist)
141
+
142
+ If you need to change the base behaviour later, call `define()` again for the same key/flavour — this REPLACES the previously registered base decorators but does not remove extras that were registered with `extend()`.
143
+
144
+ ```ts
145
+ const calls: string[] = [];
146
+
147
+ const baseA = () =>
148
+ Decoration.for("widget")
149
+ .define(((t: any) => {
150
+ calls.push(`baseA:${t.name}`);
151
+ }) as any)
152
+ .apply();
153
+
154
+ Decoration.for("widget")
155
+ .extend(((t: any) => {
156
+ calls.push(`extra:${t.name}`);
157
+ }) as any)
158
+ .apply();
159
+
160
+ @baseA()
161
+ class Widget1 {}
162
+
163
+ // Later we replace the base behaviour for the same key. Extras remain.
164
+ Decoration.for("widget")
165
+ .define(((t: any) => {
166
+ calls.push(`baseB:${t.name}`);
167
+ }) as any)
168
+ .apply();
169
+
170
+ @Decoration.for("widget").apply()
171
+ class Widget2 {}
172
+
173
+ // calls === [
174
+ // `baseA:Widget1`,
175
+ // `extra:Widget1`,
176
+ // `baseB:Widget2`, // base replaced
177
+ // `extra:Widget2` // extra persists
178
+ // ]
179
+ ```
180
+
134
181
  ### 2. Extend base decorators with flavour-specific extras
135
182
 
136
183
  ```ts
@@ -454,6 +501,7 @@ console.log(DecorationKeys.PROPERTIES); // "properties"
454
501
  - strategy;
455
502
  - builder;
456
503
  - etc;
504
+ ```
457
505
 
458
506
 
459
507
  ### Related
@@ -1,2 +1,2 @@
1
- var t,e;t=this,e=function(t){"use strict";const e="decaf",r=".";var o;t.DecorationKeys=void 0,(o=t.DecorationKeys||(t.DecorationKeys={})).LIBRARIES="libraries",o.REFLECT="__decaf",o.PROPERTIES="properties",o.METHODS="methods",o.CLASS="class",o.DESCRIPTION="description",o.CONSTRUCTOR="__original",o.PARAMETERS="parameters",o.DESIGN_TYPE="design:type",o.DESIGN_PARAMS="design:paramtypes",o.DESIGN_RETURN="design:returntype";const a={[t.DecorationKeys.PROPERTIES]:[]};function i(t,e,o=r){const a=e.split(o);let i=t;for(const t of a){if(null==i||!Object.prototype.hasOwnProperty.call(i,t))return;i=i[t]}return i}function s(t,e,o,a=r){const i=e.split(a).filter(t=>t.length>0);if(0===i.length)return;let s=t;for(let t=0;t<i.length-1;t++){const e=i[t];void 0!==s[e]&&null!==s[e]&&"object"==typeof s[e]||(s[e]={}),s=s[e]}s[i[i.length-1]]=o}class n{static{this._metadata={}}static{this.splitter=r}static{this.baseKey=t.DecorationKeys.REFLECT}static{this.mirror=!0}constructor(){}static Symbol(t){return Symbol.for([t.toString(),t.name].join(" - "))}static properties(t){const e=this.get(t);if(e&&e.properties)return Object.keys(e.properties)}static methods(e){const r=this.get(e,t.DecorationKeys.METHODS);if(r)return Object.keys(r)}static description(e,r){return this.get(e,this.key(t.DecorationKeys.DESCRIPTION,r||t.DecorationKeys.CLASS))}static params(e,r){return this.get(e,this.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS))}static param(t,e,r){const o=this.params(t,e);if(o){if(r>o.length-1)throw Error(`Parameter index ${r} out of range for ${e+""}`);return o[r]}}static return(e,r){return this.get(e,this.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN))}static type(e,r){return this.get(e,this.key(t.DecorationKeys.PROPERTIES,r))}static constr(e){return e[t.DecorationKeys.CONSTRUCTOR]||e}static get(e,r){if(r===t.DecorationKeys.CONSTRUCTOR)return this.constr(e);const o=this.constr(e),a=this.collectConstructorChain(o);if(0===a.length){const t=Symbol.for(o.toString());return this.innerGet(t,r)}const i=a.map(t=>this.innerGet(this.Symbol(t),r)).filter(t=>void 0!==t);return 0!==i.length?this.mergeMetadataChain(i):void 0}static innerGet(t,e){if(this._metadata[t])return e?"string"==typeof e?i(this._metadata[t],e,this.splitter):this._metadata[t][e]:this._metadata[t]}static collectConstructorChain(t){const e=[];let r=t;for(;"function"==typeof r&&r!==Function;){e.push(r);const t=Object.getPrototypeOf(r);if(!t||t===Function||t===Object)break;r=t}return e.reverse()}static mergeMetadataChain(t){let e;for(const r of t)e=void 0!==e&&this.isPlainObject(e)&&this.isPlainObject(r)?this.mergePlainObjects(e,r):this.cloneMetadataValue(r);return e}static cloneMetadataValue(t){return Array.isArray(t)?[...t]:this.isPlainObject(t)?this.mergePlainObjects({},t):t}static mergePlainObjects(t,e){const r={...t};for(const t of Object.keys(e)){const o=e[t],a=r[t];this.isPlainObject(o)?r[t]=this.isPlainObject(a)?this.mergePlainObjects(a,o):this.mergePlainObjects({},o):r[t]=Array.isArray(o)?[...o]:o}return r}static isPlainObject(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}static innerSet(t,e,r){if(this._metadata[t]||(this._metadata[t]={}),"string"==typeof e)return s(this._metadata[t],e,r,this.splitter);this._metadata[t][e]=r}static set(e,r,o){if(r===t.DecorationKeys.CONSTRUCTOR)return void Object.defineProperty(e,t.DecorationKeys.CONSTRUCTOR,{enumerable:!1,configurable:!1,writable:!1,value:o});"string"!=typeof e&&(e=this.constr(e)||e);const a="string"==typeof e?Symbol.for(e):this.Symbol(e);this.innerSet(a,r,o),"string"!=typeof e&&n.mirror&&!Object.prototype.hasOwnProperty.call(e,this.baseKey)&&Object.defineProperty(e,this.baseKey,{enumerable:!1,configurable:!1,writable:!1,value:this._metadata[a]})}static registerLibrary(e,r){const o=Symbol.for(t.DecorationKeys.LIBRARIES);if(this.innerGet(o,e))throw Error(`Library already ${e} registered with version ${r}`);this.innerSet(o,e,r)}static libraries(){const e=Symbol.for(t.DecorationKeys.LIBRARIES);return this.innerGet(e)||{}}static key(...t){return t.join(this.splitter)}}function c(t){return e}class d{static{this.decorators={}}static{this.flavourResolver=c}constructor(t=e){this.flavour=t}for(t){return this.key=t,this}decorate(t=!1,...r){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(r&&r.length||t||this.flavour===e))throw Error("Must provide overrides or addons to override or extend decaf's decorators");return this[t?"extras":"decorators"]=new Set([...(this[t?"extras":"decorators"]||new Set).values(),...r]),this}define(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When using an overridable decorator, only one is allowed");return this.decorate(!1,...t)}extend(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When extending using an overridable decorator, only one is allowed");return this.decorate(!0,...t)}decoratorFactory(t,r=e){function o(r,o,a){const i=d.flavourResolver(r),s=d.decorators[t];let n;const c=s[i]?s[i].extras:s[e].extras;n=s&&s[i]&&s[i].decorators&&s[i].decorators.size?s[i].decorators:s[e].decorators;const l=[...n?n.values():[]],y=[...(s[e]?.decorators||new Set).values()],f=l.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),h=y.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),u=[...l,...c?c.values():[]],p=l.length;return u.reduce((t,e,i)=>{switch(typeof e){case"object":{const t=e,s=p>i?i:0,n="args"in t&&Array.isArray(t.args)?t.args:f[s]??h[s]??h[0]??[];return t.decorator(...n)(r,o,a)}case"function":return e(r,o,a);default:throw Error("Unexpected decorator type: "+typeof e)}},{target:r,propertyKey:o,descriptor:a})}return Object.defineProperty(o,"name",{value:[r,t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=d.decorators[this.key]?.[this.flavour]?.decorators,e=this.decorators||t||new Set;return d.register(this.key,this.flavour,e,this.extras),this.decoratorFactory(this.key,this.flavour)}static register(t,e,r,o){if(!t)throw Error("No key provided for the decoration builder");if(!r)throw Error("No decorators provided for the decoration builder");if(!e)throw Error("No flavour provided for the decoration builder");d.decorators[t]||(d.decorators[t]={}),d.decorators[t][e]||(d.decorators[t][e]={}),r&&(d.decorators[t][e].decorators=r),o&&(d.decorators[t][e].extras=o)}static setFlavourResolver(t){d.flavourResolver=t}static for(t){return(new d).for(t)}static flavouredAs(t){return new d(t)}}function l(t,e){return(r,o,a)=>{n.set(o?r.constructor:r,t,e)}}function y(){return d.for(t.DecorationKeys.PROPERTIES).define({decorator:()=>(e,r)=>{const o=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_TYPE,e,r);return l(n.key(t.DecorationKeys.PROPERTIES,r),o)(e,r)},args:[]}).apply()}function f(){return(e,r,o)=>{if(!r)throw Error("The @param decorator can only be applied to methods");h()(e,r,Object.getOwnPropertyDescriptor(e,r));const a=n.params(e.constructor,r);if(!a)throw Error("Missing parameter types for "+r);if(o>=a.length)throw Error(`Parameter index ${o} out of range for ${r+""}`);l(n.key(t.DecorationKeys.METHODS,r,o.toString()),a[o])(e,r)}}function h(){return(e,r,o)=>{const a=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_PARAMS,e,r),i=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_RETURN,e,r);return u(l(n.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS),a),l(n.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN),i))(e,r,o)}}function u(...t){return(e,r,o)=>{for(const a of t)e instanceof Function&&!o?a(e):a(e,r,o)}}const p="##VERSION##";n.registerLibrary("@decaf-ts/decoration",p),t.Decoration=d,t.DefaultFlavour=e,t.DefaultMetadata=a,t.Metadata=n,t.ObjectKeySplitter=r,t.VERSION=p,t.apply=u,t.description=e=>d.for(t.DecorationKeys.DESCRIPTION).define({decorator:e=>(r,o,a)=>l([t.DecorationKeys.DESCRIPTION,o?o.toString():t.DecorationKeys.CLASS].join(n.splitter),e)(r,o,a),args:[e]}).apply(),t.getValueBySplitter=i,t.metadata=l,t.metadataArray=(t,...e)=>(r,o,a)=>{const i=n.get(r,t)||[];return u(l(o?n.key(t,o):t,[...new Set([...i,...e])]))(r,o,a)},t.method=h,t.methodMetadata=(t,e)=>u(l(t,e),h()),t.param=f,t.paramMetadata=(e,r)=>(o,a,i)=>u(f(),l(n.key(t.DecorationKeys.METHODS,a,e),r))(o,a,i),t.prop=y,t.propMetadata=(t,e)=>u(l(t,e),y()),t.setValueBySplitter=s},"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("reflect-metadata")):"function"==typeof define&&define.amd?define(["exports","reflect-metadata"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).decoration={});
1
+ var t,e;t=this,e=function(t){"use strict";const e="decaf",r=".";var o;t.DecorationKeys=void 0,(o=t.DecorationKeys||(t.DecorationKeys={})).LIBRARIES="libraries",o.REFLECT="__decaf",o.PROPERTIES="properties",o.METHODS="methods",o.CLASS="class",o.DESCRIPTION="description",o.CONSTRUCTOR="__original",o.PARAMETERS="parameters",o.DESIGN_TYPE="design:type",o.DESIGN_PARAMS="design:paramtypes",o.DESIGN_RETURN="design:returntype";const i={[t.DecorationKeys.PROPERTIES]:[]};function a(t,e,o=r){const i=e.split(o);let a=t;for(const t of i){if(null==a||!Object.prototype.hasOwnProperty.call(a,t))return;a=a[t]}return a}function s(t,e,o,i=r){const a=e.split(i).filter(t=>t.length>0);if(0===a.length)return;let s=t;for(let t=0;t<a.length-1;t++){const e=a[t];void 0!==s[e]&&null!==s[e]&&"object"==typeof s[e]||(s[e]={}),s=s[e]}s[a[a.length-1]]=o}class n{static{this._metadata={}}static{this.splitter=r}static{this.baseKey=t.DecorationKeys.REFLECT}static{this.mirror=!0}constructor(){}static Symbol(t){return Symbol.for([t.toString(),t.name].join(" - "))}static properties(t){const e=this.get(t);if(e&&e.properties)return Object.keys(e.properties)}static methods(e){const r=this.get(e,t.DecorationKeys.METHODS);if(r)return Object.keys(r)}static description(e,r){return this.get(e,this.key(t.DecorationKeys.DESCRIPTION,r||t.DecorationKeys.CLASS))}static params(e,r){return this.get(e,this.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS))}static param(t,e,r){const o=this.params(t,e);if(o){if(r>o.length-1)throw Error(`Parameter index ${r} out of range for ${e+""}`);return o[r]}}static return(e,r){return this.get(e,this.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN))}static type(e,r){return this.get(e,this.key(t.DecorationKeys.PROPERTIES,r))}static constr(e){return e[t.DecorationKeys.CONSTRUCTOR]||e}static get(e,r){if(r===t.DecorationKeys.CONSTRUCTOR)return this.constr(e);const o=this.constr(e),i=this.collectConstructorChain(o);if(0===i.length){const t=Symbol.for(o.toString());return this.innerGet(t,r)}const a=i.map(t=>this.innerGet(this.Symbol(t),r)).filter(t=>void 0!==t);return 0!==a.length?this.mergeMetadataChain(a):void 0}static innerGet(t,e){if(this._metadata[t])return e?"string"==typeof e?a(this._metadata[t],e,this.splitter):this._metadata[t][e]:this._metadata[t]}static collectConstructorChain(t){const e=[];let r=t;for(;"function"==typeof r&&r!==Function;){e.push(r);const t=Object.getPrototypeOf(r);if(!t||t===Function||t===Object)break;r=t}return e.reverse()}static mergeMetadataChain(t){let e;for(const r of t)e=void 0!==e&&this.isPlainObject(e)&&this.isPlainObject(r)?this.mergePlainObjects(e,r):this.cloneMetadataValue(r);return e}static cloneMetadataValue(t){return Array.isArray(t)?[...t]:this.isPlainObject(t)?this.mergePlainObjects({},t):t}static mergePlainObjects(t,e){const r={...t};for(const t of Object.keys(e)){const o=e[t],i=r[t];this.isPlainObject(o)?r[t]=this.isPlainObject(i)?this.mergePlainObjects(i,o):this.mergePlainObjects({},o):r[t]=Array.isArray(o)?[...o]:o}return r}static isPlainObject(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}static innerSet(t,e,r){if(this._metadata[t]||(this._metadata[t]={}),"string"==typeof e)return s(this._metadata[t],e,r,this.splitter);this._metadata[t][e]=r}static set(e,r,o){if(r===t.DecorationKeys.CONSTRUCTOR)return void Object.defineProperty(e,t.DecorationKeys.CONSTRUCTOR,{enumerable:!1,configurable:!1,writable:!1,value:o});"string"!=typeof e&&(e=this.constr(e)||e);const i="string"==typeof e?Symbol.for(e):this.Symbol(e);this.innerSet(i,r,o),"string"!=typeof e&&n.mirror&&!Object.prototype.hasOwnProperty.call(e,this.baseKey)&&Object.defineProperty(e,this.baseKey,{enumerable:!1,configurable:!1,writable:!1,value:this._metadata[i]})}static registerLibrary(e,r){const o=Symbol.for(t.DecorationKeys.LIBRARIES);if(this.innerGet(o,e))throw Error(`Library already ${e} registered with version ${r}`);this.innerSet(o,e,r)}static libraries(){const e=Symbol.for(t.DecorationKeys.LIBRARIES);return this.innerGet(e)||{}}static key(...t){return t.join(this.splitter)}}function c(t){return e}class d{static{this.decorators={}}static{this.flavourResolver=c}constructor(t=e){this.flavour=t}for(t){return this.key=t,this}decorate(t=!1,...r){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(r&&r.length||t||this.flavour===e))throw Error("Must provide overrides or addons to override or extend decaf's decorators");return t?this.extras=new Set([...(this.extras||new Set).values(),...r]):this.decorators=new Set([...r]),this}define(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When using an overridable decorator, only one is allowed");return this.decorate(!1,...t)}extend(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When extending using an overridable decorator, only one is allowed");return this.decorate(!0,...t)}decoratorFactory(t,r=e){function o(r,o,i){const a=d.flavourResolver(r),s=d.decorators[t];let n;const c=s[a]?s[a].extras:s[e].extras;n=s&&s[a]&&s[a].decorators&&s[a].decorators.size?s[a].decorators:s[e].decorators;const l=[...n?n.values():[]],y=[...(s[e]?.decorators||new Set).values()],f=l.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),h=y.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),u=[...l,...c?c.values():[]],p=l.length;return u.reduce((t,e,a)=>{switch(typeof e){case"object":{const t=e,s=p>a?a:0,n="args"in t&&Array.isArray(t.args)?t.args:f[s]??h[s]??h[0]??[];return t.decorator(...n)(r,o,i)}case"function":return e(r,o,i);default:throw Error("Unexpected decorator type: "+typeof e)}},{target:r,propertyKey:o,descriptor:i})}return Object.defineProperty(o,"name",{value:[r,t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=d.decorators[this.key]?.[this.flavour]?.decorators,e=this.decorators||t||new Set,r=void 0!==this.extras?this.extras:void 0;return d.register(this.key,this.flavour,e,r),this.decoratorFactory(this.key,this.flavour)}static register(t,e,r,o){if(!t)throw Error("No key provided for the decoration builder");if(!r)throw Error("No decorators provided for the decoration builder");if(!e)throw Error("No flavour provided for the decoration builder");d.decorators[t]||(d.decorators[t]={}),d.decorators[t][e]||(d.decorators[t][e]={}),d.decorators[t][e].decorators=r,void 0!==o&&(d.decorators[t][e].extras=o)}static setFlavourResolver(t){d.flavourResolver=t}static for(t){return(new d).for(t)}static flavouredAs(t){return new d(t)}}function l(t,e){return(r,o,i)=>{n.set(o?r.constructor:r,t,e)}}function y(){return d.for(t.DecorationKeys.PROPERTIES).define({decorator:()=>(e,r)=>{const o=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_TYPE,e,r);return l(n.key(t.DecorationKeys.PROPERTIES,r),o)(e,r)},args:[]}).apply()}function f(){return(e,r,o)=>{if(!r)throw Error("The @param decorator can only be applied to methods");h()(e,r,Object.getOwnPropertyDescriptor(e,r));const i=n.params(e.constructor,r);if(!i)throw Error("Missing parameter types for "+r);if(o>=i.length)throw Error(`Parameter index ${o} out of range for ${r+""}`);l(n.key(t.DecorationKeys.METHODS,r,o.toString()),i[o])(e,r)}}function h(){return(e,r,o)=>{const i=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_PARAMS,e,r),a=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_RETURN,e,r);return u(l(n.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS),i),l(n.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN),a))(e,r,o)}}function u(...t){return(e,r,o)=>{for(const i of t)e instanceof Function&&!o?i(e):i(e,r,o)}}const p="##VERSION##";n.registerLibrary("@decaf-ts/decoration",p),t.Decoration=d,t.DefaultFlavour=e,t.DefaultMetadata=i,t.Metadata=n,t.ObjectKeySplitter=r,t.VERSION=p,t.apply=u,t.description=e=>d.for(t.DecorationKeys.DESCRIPTION).define({decorator:e=>(r,o,i)=>l([t.DecorationKeys.DESCRIPTION,o?o.toString():t.DecorationKeys.CLASS].join(n.splitter),e)(r,o,i),args:[e]}).apply(),t.getValueBySplitter=a,t.metadata=l,t.metadataArray=(t,...e)=>(r,o,i)=>{const a=n.get(r,t)||[];return u(l(o?n.key(t,o):t,[...new Set([...a,...e])]))(r,o,i)},t.method=h,t.methodMetadata=(t,e)=>u(l(t,e),h()),t.param=f,t.paramMetadata=(e,r)=>(o,i,a)=>u(f(),l(n.key(t.DecorationKeys.METHODS,i,e),r))(o,i,a),t.prop=y,t.propMetadata=(t,e)=>u(l(t,e),y()),t.setValueBySplitter=s},"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("reflect-metadata")):"function"==typeof define&&define.amd?define(["exports","reflect-metadata"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).decoration={});
2
2
  //# sourceMappingURL=decoration.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"decoration.cjs","sources":["../src/constants.ts","../src/metadata/Metadata.ts","../src/decoration/Decoration.ts","../src/decorators.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","exports","DefaultMetadata","PROPERTIES","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","constr","CONSTRUCTOR","resolvedModel","constructors","collectConstructorChain","fallbackSymbol","innerGet","collectedValues","map","ctor","mergeMetadataChain","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","Array","isArray","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","defaultFlavourResolver","Decoration","decorators","flavourResolver","flavour","decorate","addon","Set","define","find","d","extend","decoratorFactory","f","contextDecorator","propertyKey","descriptor","cache","extras","size","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","entry","args","defaultArgsByIndex","toApply","baseLength","_","candidateIndex","decorator","apply","existingDecorators","decoratorsToRegister","register","setFlavourResolver","resolver","flavouredAs","metadata","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","designParams","designReturn","VERSION","desc","original","data","existingData"],"mappings":"0CASa,MAAAA,EAAiB,QASjBC,EAAoB,IAUjC,IAAYC,EAuBXC,EAAAD,oBAAA,GAvBWA,EAAAA,mBAAAA,EAAAA,eAuBX,CAAA,IArBC,UAAA,YAEAA,EAAA,QAAA,UAEAA,EAAA,WAAA,aAEAA,EAAA,QAAA,UAEAA,EAAA,MAAA,QAEAA,EAAA,YAAA,cAEAA,EAAA,YAAA,aAEAA,EAAA,WAAA,aAEAA,EAAA,YAAA,cAEAA,EAAA,cAAA,oBAEAA,EAAA,cAAA,oBAUW,MAAAE,EAAsC,CACjD,CAACF,EAAAA,eAAeG,YAAa,ICjCzB,SAAUC,EACdC,EACAC,EACAC,EAAmBR,GAEnB,MAAMS,EAAOF,EAAKG,MAAMF,GACxB,IAAIG,EAAUL,EAEd,IAAK,MAAMM,KAAOH,EAAM,CACtB,GACEE,UAECE,OAAOC,UAAUC,eAAeC,KAAKL,EAASC,GAE/C,OACFD,EAAUA,EAAQC,EACnB,CAED,OAAOD,CACT,CA4BM,SAAUM,EACdX,EACAC,EACAW,EACAV,EAAWR,GAEX,MAAMS,EAAOF,EAAKG,MAAMF,GAAUW,OAAQC,GAAMA,EAAEC,OAAS,GAC3D,GAAoB,IAAhBZ,EAAKY,OAAc,OAEvB,IAAIV,EAA4BL,EAEhC,IAAK,IAAIgB,EAAI,EAAGA,EAAIb,EAAKY,OAAS,EAAGC,IAAK,CACxC,MAAMV,EAAMH,EAAKa,QAEEC,IAAjBZ,EAAQC,IACS,OAAjBD,EAAQC,IACgB,iBAAjBD,EAAQC,KAEfD,EAAQC,GAAO,IAEjBD,EAAUA,EAAQC,EACnB,CAGDD,EADgBF,EAAKA,EAAKY,OAAS,IAChBH,CACrB,OAwBaM,SAKIC,KAASC,UAAwB,CAAA,CAAG,QAM5CD,KAAQjB,SAAGR,CAAkB,QAK7ByB,KAAAE,QAAU1B,EAAcA,eAAC2B,OAAQ,QAKjCH,KAAMI,QAAY,CAAK,CAE9B,WAAAC,GAAwB,CAExB,aAAOC,CAAUzB,GACf,OAAOyB,OAAOC,IAAI,CAAC1B,EAAI2B,WAAY3B,EAAI4B,MAAMC,KAAK,OACnD,CAQD,iBAAOC,CAAWC,GAChB,MAAMC,EAAOb,KAAKc,IAAIF,GACtB,GAAKC,GAASA,EAAKF,WACnB,OAAOvB,OAAOJ,KAAK6B,EAAKF,WACzB,CAQD,cAAOI,CAAQH,GACb,MAAMC,EAAOb,KAAKc,IAAIF,EAAOpC,EAAAA,eAAewC,SAC5C,GAAKH,EACL,OAAOzB,OAAOJ,KAAK6B,EACpB,CAUD,kBAAOI,CACLL,EACAM,GAEA,OAAOlB,KAAKc,IACVF,EACAZ,KAAKb,IACHX,EAAAA,eAAe2C,YACdD,GAAc1C,iBAAe4C,OAGnC,CAUD,aAAOC,CAAUT,EAAuBM,GACtC,OAAOlB,KAAKc,IACVF,EACAZ,KAAKb,IAAIX,iBAAewC,QAASE,EAAM1C,iBAAe8C,eAEzD,CAWD,YAAOC,CACLX,EACAM,EACAM,GAEA,MAAMH,EAASrB,KAAKqB,OAAOT,EAAOM,GAClC,GAAKG,EAAL,CACA,GAAIG,EAAQH,EAAOzB,OAAS,EAC1B,MAAU6B,MACR,mBAAmBD,sBAAiCN,EAAPQ,MAEjD,OAAOL,EAAOG,EALe,CAM9B,CAUD,aAAO,CAAUZ,EAAuBM,GACtC,OAAOlB,KAAKc,IACVF,EACAZ,KAAKb,IAAIX,iBAAewC,QAASE,EAAM1C,iBAAemD,eAEzD,CASD,WAAOC,CAAKhB,EAAoBM,GAC9B,OAAOlB,KAAKc,IAAIF,EAAOZ,KAAKb,IAAIX,iBAAeG,WAAYuC,GAC5D,CASD,aAAOW,CAAUjB,GACf,OAAOA,EAAMpC,EAAAA,eAAesD,cAAsClB,CACnE,CAgCD,UAAOE,CAAIF,EAAoBzB,GAC7B,GAAIA,IAAQX,EAAAA,eAAesD,YAAa,OAAO9B,KAAK6B,OAAOjB,GAC3D,MAAMmB,EAAgB/B,KAAK6B,OAAOjB,GAC5BoB,EAAehC,KAAKiC,wBAAwBF,GAClD,GAA4B,IAAxBC,EAAapC,OAAc,CAC7B,MAAMsC,EAAiB5B,OAAOC,IAAIwB,EAAcvB,YAChD,OAAOR,KAAKmC,SAASD,EAAgB/C,EACtC,CACD,MAAMiD,EAAkBJ,EACrBK,IAAKC,GAAStC,KAAKmC,SAASnC,KAAKM,OAAOgC,GAAOnD,IAC/CO,OAAQD,QAAoBK,IAAVL,GAErB,OAA+B,IAA3B2C,EAAgBxC,OAEbI,KAAKuC,mBAAmBH,QAF/B,CAGD,CASO,eAAOD,CAASK,EAAgBrD,GACtC,GAAKa,KAAKC,UAAUuC,GACpB,OAAKrD,EACc,iBAARA,EACFP,EAAmBoB,KAAKC,UAAUuC,GAASrD,EAAKa,KAAKjB,UACvDiB,KAAKC,UAAUuC,GAAQrD,GAHba,KAAKC,UAAUuC,EAIjC,CAQO,8BAAOP,CAAwBrB,GACrC,MAAM6B,EAAuB,GAC7B,IAAIvD,EAAe0B,EAEnB,KAA0B,mBAAZ1B,GAA0BA,IAAYwD,UAAU,CAC5DD,EAAME,KAAKzD,GACX,MAAM0D,EAASxD,OAAOyD,eAAe3D,GACrC,IAAK0D,GAAUA,IAAWF,UAAYE,IAAWxD,OAAQ,MACzDF,EAAU0D,CACX,CAED,OAAOH,EAAMK,SACd,CAQO,yBAAOP,CAAmBQ,GAChC,IAAIC,EAEJ,IAAK,MAAMvD,KAASsD,EAOhBC,OANUlD,IAARkD,GAKAhD,KAAKiD,cAAcD,IAAQhD,KAAKiD,cAAcxD,GAC1CO,KAAKkD,kBACTF,EACAvD,GAPIO,KAAKmD,mBAAmB1D,GAelC,OAAOuD,CACR,CAQO,yBAAOG,CAAmB1D,GAChC,OAAI2D,MAAMC,QAAQ5D,GAAe,IAAIA,GACjCO,KAAKiD,cAAcxD,GACdO,KAAKkD,kBAAkB,CAAE,EAAEzD,GAC7BA,CACR,CASO,wBAAOyD,CACbI,EACAC,GAEA,MAAMC,EAA8B,IAAKF,GAEzC,IAAK,MAAMnE,KAAOC,OAAOJ,KAAKuE,GAAS,CACrC,MAAME,EAAcF,EAAOpE,GACrBuE,EAAcF,EAAOrE,GAEvBa,KAAKiD,cAAcQ,GACrBD,EAAOrE,GAAOa,KAAKiD,cAAcS,GAC7B1D,KAAKkD,kBACHQ,EACAD,GAEFzD,KAAKkD,kBAAkB,GAAIO,GAK/BD,EAAOrE,GADLiE,MAAMC,QAAQI,GACF,IAAIA,GAINA,CACf,CAED,OAAOD,CACR,CAQO,oBAAOP,CAAcxD,GAC3B,GAAc,OAAVA,GAAmC,iBAAVA,GAAsB2D,MAAMC,QAAQ5D,GAC/D,OAAO,EACT,MAAMkE,EAAQvE,OAAOyD,eAAepD,GACpC,OAAOkE,IAAUvE,OAAOC,WAAuB,OAAVsE,CACtC,CAUO,eAAOC,CAASpB,EAAgBrD,EAAsBM,GAE5D,GADKO,KAAKC,UAAUuC,KAASxC,KAAKC,UAAUuC,GAAU,IACnC,iBAARrD,EACT,OAAOK,EACLQ,KAAKC,UAAUuC,GACfrD,EACAM,EACAO,KAAKjB,UAETiB,KAAKC,UAAUuC,GAAQrD,GAAOM,CAC/B,CAWD,UAAOoE,CAAIjD,EAA6BzB,EAAaM,GACnD,GAAIN,IAAQX,EAAcA,eAACsD,YAOzB,YANA1C,OAAO0E,eAAelD,EAAOpC,EAAAA,eAAesD,YAAa,CACvDiC,YAAY,EACZC,cAAc,EACdC,UAAU,EACVxE,MAAOA,IAIU,iBAAVmB,IAAoBA,EAAQZ,KAAK6B,OAAOjB,IAAUA,GAC7D,MAAM4B,EACa,iBAAV5B,EAAqBN,OAAOC,IAAIK,GAASZ,KAAKM,OAAOM,GAC9DZ,KAAK4D,SAASpB,EAAQrD,EAAKM,GAER,iBAAVmB,GACPb,EAASK,SACRhB,OAAOC,UAAUC,eAAeC,KAAKqB,EAAOZ,KAAKE,UAElDd,OAAO0E,eAAelD,EAAOZ,KAAKE,QAAS,CACzC6D,YAAY,EACZC,cAAc,EACdC,UAAU,EACVxE,MAAOO,KAAKC,UAAUuC,IAG3B,CAUD,sBAAO0B,CAAgBC,EAAiBC,GACtC,MAAM5B,EAASlC,OAAOC,IAAI/B,EAAcA,eAAC6F,WAEzC,GADYrE,KAAKmC,SAASK,EAAQ2B,GAEhC,MAAU1C,MACR,mBAAmB0C,6BAAmCC,KAE1DpE,KAAK4D,SAASpB,EAAQ2B,EAASC,EAChC,CAOD,gBAAOE,GACL,MAAM9B,EAASlC,OAAOC,IAAI/B,EAAcA,eAAC6F,WACzC,OAAOrE,KAAKmC,SAASK,IAAW,CAAA,CACjC,CAQD,UAAOrD,IAAOoF,GACZ,OAAOA,EAAK7D,KAAKV,KAAKjB,SACvB,EC1gBH,SAASyF,EAAuBlB,GAC9B,OAAOhF,CACT,OAsFamG,SAKIzE,KAAU0E,WASrB,CAAA,CAAG,QAMQ1E,KAAe2E,gBAAoBH,CAAuB,CAiBzE,WAAAnE,CAAoBuE,EAAkBtG,GAAlB0B,KAAO4E,QAAPA,CAAoC,CAQxD,IAAIzF,GAEF,OADAa,KAAKb,IAAMA,EACJa,IACR,CASO,QAAA6E,CACNC,GAAiB,KACdJ,GAEH,IAAK1E,KAAKb,IACR,MAAUsC,MAAM,uDAClB,KACIiD,GAAeA,EAAW9E,QAC3BkF,GACD9E,KAAK4E,UAAYtG,GAEjB,MAAUmD,MACR,6EAOJ,OALCzB,KAAa8E,EAAQ,SAAW,cAAgB,IAAIC,IAAI,KACnD/E,KAAK8E,EAAQ,SAAW,eAAiB,IAAIC,KAAOhC,YACrD2B,IAGE1E,IACR,CAQD,MAAAgF,IACKN,GAEH,GACEA,EAAWO,KAAMC,GAAmB,iBAANA,IACR,IAAtBR,EAAW9E,OAEX,MAAU6B,MACR,4DAEJ,OAAOzB,KAAK6E,UAAS,KAAUH,EAChC,CAQD,MAAAS,IAAUT,GACR,GACEA,EAAWO,KAAMC,GAAmB,iBAANA,IACR,IAAtBR,EAAW9E,OAEX,MAAU6B,MACR,sEAEJ,OAAOzB,KAAK6E,UAAS,KAASH,EAC/B,CAwBS,gBAAAU,CAAiBjG,EAAakG,EAAY/G,GAClD,SAASgH,EACPhC,EACAiC,EACAC,GAEA,MAAMZ,EAAUH,EAAWE,gBAAgBrB,GACrCmC,EAAQhB,EAAWC,WAAWvF,GACpC,IAAIuF,EACJ,MAAMgB,EAASD,EAAMb,GACjBa,EAAMb,GAASc,OACfD,EAAMnH,GAAgBoH,OAQxBhB,EALAe,GACAA,EAAMb,IACNa,EAAMb,GAASF,YACfe,EAAMb,GAASF,WAAWiB,KAEbF,EAAMb,GAASF,WAEfe,EAAMnH,GAAgBoG,WAGrC,MAAMkB,EAAqB,IAAKlB,EAAaA,EAAW3B,SAAW,IAE7D8C,EAAwB,KACxBJ,EAAMnH,IAAiBoG,YAAc,IAAIK,KAAOhC,UAGhD+C,EAAkBF,EAAmBG,OACzC,CAACC,EAAOC,EAAOzE,KAEM,iBAAVyE,GACP,SAAWA,GACX7C,MAAMC,QAAS4C,EAAcC,QAE7BF,EAAMxE,GAAUyE,EAAcC,MAEzBF,GAET,CAA2B,GAGvBG,EAAqBN,EAAsBE,OAC/C,CAACC,EAAOC,EAAOzE,KAEM,iBAAVyE,GACP,SAAWA,GACX7C,MAAMC,QAAS4C,EAAcC,QAE7BF,EAAMxE,GAAUyE,EAAcC,MAEzBF,GAET,CAA2B,GAGvBI,EAAU,IACXR,KACCF,EAASA,EAAO3C,SAAW,IAG3BsD,EAAaT,EAAmBhG,OAEtC,OAAOwG,EAAQL,OACb,CAACO,EAAGpB,EAAG1D,KACL,cAAe0D,GACb,IAAK,SAAU,CACb,MAAMe,EAAQf,EACRqB,EAAyBF,EAAR7E,EAAqBA,EAAQ,EAC9C0E,EACJ,SAAUD,GAAS7C,MAAMC,QAAQ4C,EAAMC,MACnCD,EAAMC,KACLJ,EAAgBS,IACjBJ,EAAmBI,IACnBJ,EAAmB,IACnB,GAEN,OAAQF,EAAMO,aAAaN,EAAnBD,CACN3C,EACAiC,EACAC,EAEH,CACD,IAAK,WACH,OAAQN,EAAU5B,EAAQiC,EAAaC,GACzC,QACE,MAAU/D,MAAM,qCAAqCyD,KAG3D,CAAE5B,SAAQiC,cAAaC,cAE1B,CAKD,OAJApG,OAAO0E,eAAewB,EAAkB,OAAQ,CAC9C7F,MAAO,CAAC4F,EAAGlG,GAAKuB,KAAK,mBACrBuD,UAAU,IAELqB,CACR,CAOD,KAAAmB,GAKE,IAAKzG,KAAKb,IACR,MAAUsC,MAAM,8CAClB,MAAMiF,EACJjC,EAAWC,WAAW1E,KAAKb,OAAOa,KAAK4E,UAAUF,WAC7CiC,EACJ3G,KAAK0E,YAAcgC,GAAsB,IAAI3B,IAQ/C,OANAN,EAAWmC,SACT5G,KAAKb,IACLa,KAAK4E,QACL+B,EACA3G,KAAK0F,QAEA1F,KAAKoF,iBAAiBpF,KAAKb,IAAKa,KAAK4E,QAC7C,CAWO,eAAOgC,CACbzH,EACAyF,EACAF,EACAgB,GAEA,IAAKvG,EACH,MAAUsC,MAAM,8CAElB,IAAKiD,EACH,MAAUjD,MAAM,qDAClB,IAAKmD,EACH,MAAUnD,MAAM,kDAEbgD,EAAWC,WAAWvF,KAAMsF,EAAWC,WAAWvF,GAAO,IACzDsF,EAAWC,WAAWvF,GAAKyF,KAC9BH,EAAWC,WAAWvF,GAAKyF,GAAW,CAAA,GACpCF,IAAYD,EAAWC,WAAWvF,GAAKyF,GAASF,WAAaA,GAC7DgB,IAAQjB,EAAWC,WAAWvF,GAAKyF,GAASc,OAASA,EAC1D,CAQD,yBAAOmB,CAAmBC,GACxBrC,EAAWE,gBAAkBmC,CAC9B,CAQD,UAAO,CAAI3H,GACT,OAAO,IAAIsF,GAAalE,IAAIpB,EAC7B,CAQD,kBAAO4H,CAAYnC,GACjB,OAAO,IAAIH,EAAWG,EACvB,EChaa,SAAAoC,EAAS7H,EAAaM,GACpC,MAAO,CACLmB,EACAM,EAEAsE,KAEAzF,EAAS8D,IAAI3C,EAAON,EAAMP,YAAcO,EAAOzB,EAAKM,EACtD,CACF,UAsBgByB,IAed,OAAOuD,EAAWlE,IAAI/B,EAAcA,eAACG,YAClCqG,OAAO,CACNwB,UAhBJ,IACS,CAAmB5F,EAAeM,KACvC,MAAM+F,EAAaC,QAAQC,eACzB3I,EAAcA,eAAC4I,YACfxG,EACAM,GAEF,OAAO8F,EACLjH,EAASZ,IAAIX,iBAAeG,WAAYuC,GACxC+F,EAFKD,CAGLpG,EAAOM,EACX,EAMEgF,KAAM,KAEPO,OACL,UAoBgBlF,IACd,MAAO,CACLX,EACAM,EACAM,KAEA,IAAKN,EACH,MAAUO,MAAM,uDAClB4F,IAASzG,EAAOM,EAAM9B,OAAOkI,yBAAyB1G,EAAOM,IAC7D,MAAMqG,EAAYxH,EAASsB,OAAOT,EAAMP,YAAoBa,GAC5D,IAAKqG,EACH,MAAU9F,MAAM,+BAAsCP,GACxD,GAAIM,GAAS+F,EAAU3H,OACrB,MAAU6B,MACR,mBAAmBD,sBAAiCN,EAAPQ,MAEjDsF,EACEjH,EAASZ,IAAIX,EAAcA,eAACwC,QAASE,EAAgBM,EAAMhB,YAC3D+G,EAAU/F,GAFZwF,CAGEpG,EAAOM,EACX,CACF,UAsCgBmG,IACd,MAAO,CAAgBxI,EAAUqC,EAAYsE,KAC3C,MAAMgC,EAAeN,QAAQC,eAC3B3I,EAAcA,eAAC8C,cACfzC,EACAqC,GAEIuG,EAAeP,QAAQC,eAC3B3I,EAAcA,eAACmD,cACf9C,EACAqC,GAEF,OAAOuF,EACLO,EACEjH,EAASZ,IACPX,EAAcA,eAACwC,QACfE,EACA1C,EAAAA,eAAe8C,eAEjBkG,GAEFR,EACEjH,EAASZ,IACPX,EAAcA,eAACwC,QACfE,EACA1C,EAAAA,eAAemD,eAEjB8F,GAfGhB,CAiBL5H,EAAKqC,EAAMsE,EACf,CACF,CAqBgB,SAAAiB,KACX/B,GAIH,MAAO,CACLpB,EACAiC,EACAC,KAEA,IAAK,MAAMgB,KAAa9B,EAClBpB,aAAkBZ,WAAa8C,EAChCgB,EAA6BlD,GAG/BkD,EACClD,EACAiC,EACAC,GAIR,CCtMa,MAAAkC,EAAU,cAEvB3H,EAASmE,gBAAgB,uBAAwBwD,gIDyOrBC,GAiBnBlD,EAAWlE,IAAI/B,EAAcA,eAAC2C,aAClC6D,OAAO,CACNwB,UAlBsBmB,GACjB,CACLC,EACA1G,EACAsE,IAEOwB,EACL,CACExI,EAAAA,eAAe2C,YACfD,EAAOA,EAAKV,WAAahC,EAAcA,eAAC4C,OACxCV,KAAKX,EAAShB,UAChB4I,EALKX,CAMLY,EAAU1G,EAAMsE,GAOlBU,KAAM,CAACyB,KAERlB,6DA7PyBtH,KAAgB0I,IACrC,CACLvE,EACAiC,EACAC,KAEA,MAAMsC,EAAe/H,EAASe,IAAIwC,EAAQnE,IAAQ,GAGlD,OAAOsH,EADMO,EADGzB,EAAcxF,EAASZ,IAAIA,EAAKoG,GAAepG,EAChC,IAAI,IAAI4F,IAAI,IAAI+C,KAAiBD,MACzDpB,CAAcnD,EAAQiC,EAAaC,EAC5C,8BAgNc,CAAerG,EAAaM,IACnCgH,EAAMO,EAAS7H,EAAKM,GAAQ4H,+BA9HrB,CAAclI,EAAaM,IAClC,CAAuB6D,EAAapC,EAAWM,IAC7CiF,EACLlF,IACAyF,EAASjH,EAASZ,IAAIX,iBAAewC,QAASE,EAAM/B,GAAMM,GAFrDgH,CAGLnD,EAAQpC,EAAMM,2BA2GJ,CAAarC,EAAaM,IACjCgH,EAAMO,EAAS7H,EAAKM,GAAQyB"}
1
+ {"version":3,"file":"decoration.cjs","sources":["../src/constants.ts","../src/metadata/Metadata.ts","../src/decoration/Decoration.ts","../src/decorators.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","exports","DefaultMetadata","PROPERTIES","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","constr","CONSTRUCTOR","resolvedModel","constructors","collectConstructorChain","fallbackSymbol","innerGet","collectedValues","map","ctor","mergeMetadataChain","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","Array","isArray","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","defaultFlavourResolver","Decoration","decorators","flavourResolver","flavour","decorate","addon","extras","Set","define","find","d","extend","decoratorFactory","f","contextDecorator","propertyKey","descriptor","cache","size","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","entry","args","defaultArgsByIndex","toApply","baseLength","_","candidateIndex","decorator","apply","existingDecorators","decoratorsToRegister","extrasToRegister","register","setFlavourResolver","resolver","flavouredAs","metadata","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","designParams","designReturn","VERSION","desc","original","data","existingData"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import"reflect-metadata";const t="decaf",r=".";var e;(t=>{t.LIBRARIES="libraries",t.REFLECT="__decaf",t.PROPERTIES="properties",t.METHODS="methods",t.CLASS="class",t.DESCRIPTION="description",t.CONSTRUCTOR="__original",t.PARAMETERS="parameters",t.DESIGN_TYPE="design:type",t.DESIGN_PARAMS="design:paramtypes",t.DESIGN_RETURN="design:returntype"})(e||(e={}));const o={[e.PROPERTIES]:[]};function i(t,e,o=r){const i=e.split(o);let s=t;for(const t of i){if(null==s||!Object.prototype.hasOwnProperty.call(s,t))return;s=s[t]}return s}function s(t,e,o,i=r){const s=e.split(i).filter(t=>t.length>0);if(0===s.length)return;let a=t;for(let t=0;t<s.length-1;t++){const r=s[t];void 0!==a[r]&&null!==a[r]&&"object"==typeof a[r]||(a[r]={}),a=a[r]}a[s[s.length-1]]=o}class a{static{this._metadata={}}static{this.splitter=r}static{this.baseKey=e.REFLECT}static{this.mirror=!0}constructor(){}static Symbol(t){return Symbol.for([t.toString(),t.name].join(" - "))}static properties(t){const r=this.get(t);if(r&&r.properties)return Object.keys(r.properties)}static methods(t){const r=this.get(t,e.METHODS);if(r)return Object.keys(r)}static description(t,r){return this.get(t,this.key(e.DESCRIPTION,r||e.CLASS))}static params(t,r){return this.get(t,this.key(e.METHODS,r,e.DESIGN_PARAMS))}static param(t,r,e){const o=this.params(t,r);if(o){if(e>o.length-1)throw Error(`Parameter index ${e} out of range for ${r+""}`);return o[e]}}static return(t,r){return this.get(t,this.key(e.METHODS,r,e.DESIGN_RETURN))}static type(t,r){return this.get(t,this.key(e.PROPERTIES,r))}static constr(t){return t[e.CONSTRUCTOR]||t}static get(t,r){if(r===e.CONSTRUCTOR)return this.constr(t);const o=this.constr(t),i=this.collectConstructorChain(o);if(0===i.length){const t=Symbol.for(o.toString());return this.innerGet(t,r)}const s=i.map(t=>this.innerGet(this.Symbol(t),r)).filter(t=>void 0!==t);return 0!==s.length?this.mergeMetadataChain(s):void 0}static innerGet(t,r){if(this._metadata[t])return r?"string"==typeof r?i(this._metadata[t],r,this.splitter):this._metadata[t][r]:this._metadata[t]}static collectConstructorChain(t){const r=[];let e=t;for(;"function"==typeof e&&e!==Function;){r.push(e);const t=Object.getPrototypeOf(e);if(!t||t===Function||t===Object)break;e=t}return r.reverse()}static mergeMetadataChain(t){let r;for(const e of t)r=void 0!==r&&this.isPlainObject(r)&&this.isPlainObject(e)?this.mergePlainObjects(r,e):this.cloneMetadataValue(e);return r}static cloneMetadataValue(t){return Array.isArray(t)?[...t]:this.isPlainObject(t)?this.mergePlainObjects({},t):t}static mergePlainObjects(t,r){const e={...t};for(const t of Object.keys(r)){const o=r[t],i=e[t];this.isPlainObject(o)?e[t]=this.isPlainObject(i)?this.mergePlainObjects(i,o):this.mergePlainObjects({},o):e[t]=Array.isArray(o)?[...o]:o}return e}static isPlainObject(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const r=Object.getPrototypeOf(t);return r===Object.prototype||null===r}static innerSet(t,r,e){if(this._metadata[t]||(this._metadata[t]={}),"string"==typeof r)return s(this._metadata[t],r,e,this.splitter);this._metadata[t][r]=e}static set(t,r,o){if(r===e.CONSTRUCTOR)return void Object.defineProperty(t,e.CONSTRUCTOR,{enumerable:!1,configurable:!1,writable:!1,value:o});"string"!=typeof t&&(t=this.constr(t)||t);const i="string"==typeof t?Symbol.for(t):this.Symbol(t);this.innerSet(i,r,o),"string"!=typeof t&&a.mirror&&!Object.prototype.hasOwnProperty.call(t,this.baseKey)&&Object.defineProperty(t,this.baseKey,{enumerable:!1,configurable:!1,writable:!1,value:this._metadata[i]})}static registerLibrary(t,r){const o=Symbol.for(e.LIBRARIES);if(this.innerGet(o,t))throw Error(`Library already ${t} registered with version ${r}`);this.innerSet(o,t,r)}static libraries(){const t=Symbol.for(e.LIBRARIES);return this.innerGet(t)||{}}static key(...t){return t.join(this.splitter)}}function n(r){return t}class c{static{this.decorators={}}static{this.flavourResolver=n}constructor(r=t){this.flavour=r}for(t){return this.key=t,this}decorate(r=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||r||this.flavour===t))throw Error("Must provide overrides or addons to override or extend decaf's decorators");return this[r?"extras":"decorators"]=new Set([...(this[r?"extras":"decorators"]||new Set).values(),...e]),this}define(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When using an overridable decorator, only one is allowed");return this.decorate(!1,...t)}extend(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When extending using an overridable decorator, only one is allowed");return this.decorate(!0,...t)}decoratorFactory(r,e=t){function o(e,o,i){const s=c.flavourResolver(e),a=c.decorators[r];let n;const d=a[s]?a[s].extras:a[t].extras;n=a&&a[s]&&a[s].decorators&&a[s].decorators.size?a[s].decorators:a[t].decorators;const l=[...n?n.values():[]],u=[...(a[t]?.decorators||new Set).values()],f=l.reduce((t,r,e)=>("object"==typeof r&&"args"in r&&Array.isArray(r.args)&&(t[e]=r.args),t),{}),h=u.reduce((t,r,e)=>("object"==typeof r&&"args"in r&&Array.isArray(r.args)&&(t[e]=r.args),t),{}),y=[...l,...d?d.values():[]],p=l.length;return y.reduce((t,r,s)=>{switch(typeof r){case"object":{const t=r,a=p>s?s:0,n="args"in t&&Array.isArray(t.args)?t.args:f[a]??h[a]??h[0]??[];return t.decorator(...n)(e,o,i)}case"function":return r(e,o,i);default:throw Error("Unexpected decorator type: "+typeof r)}},{target:e,propertyKey:o,descriptor:i})}return Object.defineProperty(o,"name",{value:[e,r].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=c.decorators[this.key]?.[this.flavour]?.decorators,r=this.decorators||t||new Set;return c.register(this.key,this.flavour,r,this.extras),this.decoratorFactory(this.key,this.flavour)}static register(t,r,e,o){if(!t)throw Error("No key provided for the decoration builder");if(!e)throw Error("No decorators provided for the decoration builder");if(!r)throw Error("No flavour provided for the decoration builder");c.decorators[t]||(c.decorators[t]={}),c.decorators[t][r]||(c.decorators[t][r]={}),e&&(c.decorators[t][r].decorators=e),o&&(c.decorators[t][r].extras=o)}static setFlavourResolver(t){c.flavourResolver=t}static for(t){return(new c).for(t)}static flavouredAs(t){return new c(t)}}function d(t,r){return(e,o,i)=>{a.set(o?e.constructor:e,t,r)}}function l(t,...r){return(e,o,i)=>{const s=a.get(e,t)||[];return p(d(o?a.key(t,o):t,[...new Set([...s,...r])]))(e,o,i)}}function u(){return c.for(e.PROPERTIES).define({decorator:()=>(t,r)=>{const o=Reflect.getOwnMetadata(e.DESIGN_TYPE,t,r);return d(a.key(e.PROPERTIES,r),o)(t,r)},args:[]}).apply()}function f(){return(t,r,o)=>{if(!r)throw Error("The @param decorator can only be applied to methods");y()(t,r,Object.getOwnPropertyDescriptor(t,r));const i=a.params(t.constructor,r);if(!i)throw Error("Missing parameter types for "+r);if(o>=i.length)throw Error(`Parameter index ${o} out of range for ${r+""}`);d(a.key(e.METHODS,r,o.toString()),i[o])(t,r)}}function h(t,r){return(o,i,s)=>p(f(),d(a.key(e.METHODS,i,t),r))(o,i,s)}function y(){return(t,r,o)=>{const i=Reflect.getOwnMetadata(e.DESIGN_PARAMS,t,r),s=Reflect.getOwnMetadata(e.DESIGN_RETURN,t,r);return p(d(a.key(e.METHODS,r,e.DESIGN_PARAMS),i),d(a.key(e.METHODS,r,e.DESIGN_RETURN),s))(t,r,o)}}function p(...t){return(r,e,o)=>{for(const i of t)r instanceof Function&&!o?i(r):i(r,e,o)}}function g(t,r){return p(d(t,r),u())}function S(t,r){return p(d(t,r),y())}function b(t){return c.for(e.DESCRIPTION).define({decorator:t=>(r,o,i)=>d([e.DESCRIPTION,o?o.toString():e.CLASS].join(a.splitter),t)(r,o,i),args:[t]}).apply()}const E="##VERSION##";a.registerLibrary("@decaf-ts/decoration",E);export{c as Decoration,e as DecorationKeys,t as DefaultFlavour,o as DefaultMetadata,a as Metadata,r as ObjectKeySplitter,E as VERSION,p as apply,b as description,i as getValueBySplitter,d as metadata,l as metadataArray,y as method,S as methodMetadata,f as param,h as paramMetadata,u as prop,g as propMetadata,s as setValueBySplitter};
1
+ import"reflect-metadata";const t="decaf",r=".";var e;(t=>{t.LIBRARIES="libraries",t.REFLECT="__decaf",t.PROPERTIES="properties",t.METHODS="methods",t.CLASS="class",t.DESCRIPTION="description",t.CONSTRUCTOR="__original",t.PARAMETERS="parameters",t.DESIGN_TYPE="design:type",t.DESIGN_PARAMS="design:paramtypes",t.DESIGN_RETURN="design:returntype"})(e||(e={}));const o={[e.PROPERTIES]:[]};function i(t,e,o=r){const i=e.split(o);let s=t;for(const t of i){if(null==s||!Object.prototype.hasOwnProperty.call(s,t))return;s=s[t]}return s}function s(t,e,o,i=r){const s=e.split(i).filter(t=>t.length>0);if(0===s.length)return;let a=t;for(let t=0;t<s.length-1;t++){const r=s[t];void 0!==a[r]&&null!==a[r]&&"object"==typeof a[r]||(a[r]={}),a=a[r]}a[s[s.length-1]]=o}class a{static{this._metadata={}}static{this.splitter=r}static{this.baseKey=e.REFLECT}static{this.mirror=!0}constructor(){}static Symbol(t){return Symbol.for([t.toString(),t.name].join(" - "))}static properties(t){const r=this.get(t);if(r&&r.properties)return Object.keys(r.properties)}static methods(t){const r=this.get(t,e.METHODS);if(r)return Object.keys(r)}static description(t,r){return this.get(t,this.key(e.DESCRIPTION,r||e.CLASS))}static params(t,r){return this.get(t,this.key(e.METHODS,r,e.DESIGN_PARAMS))}static param(t,r,e){const o=this.params(t,r);if(o){if(e>o.length-1)throw Error(`Parameter index ${e} out of range for ${r+""}`);return o[e]}}static return(t,r){return this.get(t,this.key(e.METHODS,r,e.DESIGN_RETURN))}static type(t,r){return this.get(t,this.key(e.PROPERTIES,r))}static constr(t){return t[e.CONSTRUCTOR]||t}static get(t,r){if(r===e.CONSTRUCTOR)return this.constr(t);const o=this.constr(t),i=this.collectConstructorChain(o);if(0===i.length){const t=Symbol.for(o.toString());return this.innerGet(t,r)}const s=i.map(t=>this.innerGet(this.Symbol(t),r)).filter(t=>void 0!==t);return 0!==s.length?this.mergeMetadataChain(s):void 0}static innerGet(t,r){if(this._metadata[t])return r?"string"==typeof r?i(this._metadata[t],r,this.splitter):this._metadata[t][r]:this._metadata[t]}static collectConstructorChain(t){const r=[];let e=t;for(;"function"==typeof e&&e!==Function;){r.push(e);const t=Object.getPrototypeOf(e);if(!t||t===Function||t===Object)break;e=t}return r.reverse()}static mergeMetadataChain(t){let r;for(const e of t)r=void 0!==r&&this.isPlainObject(r)&&this.isPlainObject(e)?this.mergePlainObjects(r,e):this.cloneMetadataValue(e);return r}static cloneMetadataValue(t){return Array.isArray(t)?[...t]:this.isPlainObject(t)?this.mergePlainObjects({},t):t}static mergePlainObjects(t,r){const e={...t};for(const t of Object.keys(r)){const o=r[t],i=e[t];this.isPlainObject(o)?e[t]=this.isPlainObject(i)?this.mergePlainObjects(i,o):this.mergePlainObjects({},o):e[t]=Array.isArray(o)?[...o]:o}return e}static isPlainObject(t){if(null===t||"object"!=typeof t||Array.isArray(t))return!1;const r=Object.getPrototypeOf(t);return r===Object.prototype||null===r}static innerSet(t,r,e){if(this._metadata[t]||(this._metadata[t]={}),"string"==typeof r)return s(this._metadata[t],r,e,this.splitter);this._metadata[t][r]=e}static set(t,r,o){if(r===e.CONSTRUCTOR)return void Object.defineProperty(t,e.CONSTRUCTOR,{enumerable:!1,configurable:!1,writable:!1,value:o});"string"!=typeof t&&(t=this.constr(t)||t);const i="string"==typeof t?Symbol.for(t):this.Symbol(t);this.innerSet(i,r,o),"string"!=typeof t&&a.mirror&&!Object.prototype.hasOwnProperty.call(t,this.baseKey)&&Object.defineProperty(t,this.baseKey,{enumerable:!1,configurable:!1,writable:!1,value:this._metadata[i]})}static registerLibrary(t,r){const o=Symbol.for(e.LIBRARIES);if(this.innerGet(o,t))throw Error(`Library already ${t} registered with version ${r}`);this.innerSet(o,t,r)}static libraries(){const t=Symbol.for(e.LIBRARIES);return this.innerGet(t)||{}}static key(...t){return t.join(this.splitter)}}function n(r){return t}class c{static{this.decorators={}}static{this.flavourResolver=n}constructor(r=t){this.flavour=r}for(t){return this.key=t,this}decorate(r=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||r||this.flavour===t))throw Error("Must provide overrides or addons to override or extend decaf's decorators");return r?this.extras=new Set([...(this.extras||new Set).values(),...e]):this.decorators=new Set([...e]),this}define(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When using an overridable decorator, only one is allowed");return this.decorate(!1,...t)}extend(...t){if(t.find(t=>"object"==typeof t)&&1!==t.length)throw Error("When extending using an overridable decorator, only one is allowed");return this.decorate(!0,...t)}decoratorFactory(r,e=t){function o(e,o,i){const s=c.flavourResolver(e),a=c.decorators[r];let n;const d=a[s]?a[s].extras:a[t].extras;n=a&&a[s]&&a[s].decorators&&a[s].decorators.size?a[s].decorators:a[t].decorators;const l=[...n?n.values():[]],h=[...(a[t]?.decorators||new Set).values()],u=l.reduce((t,r,e)=>("object"==typeof r&&"args"in r&&Array.isArray(r.args)&&(t[e]=r.args),t),{}),f=h.reduce((t,r,e)=>("object"==typeof r&&"args"in r&&Array.isArray(r.args)&&(t[e]=r.args),t),{}),y=[...l,...d?d.values():[]],p=l.length;return y.reduce((t,r,s)=>{switch(typeof r){case"object":{const t=r,a=p>s?s:0,n="args"in t&&Array.isArray(t.args)?t.args:u[a]??f[a]??f[0]??[];return t.decorator(...n)(e,o,i)}case"function":return r(e,o,i);default:throw Error("Unexpected decorator type: "+typeof r)}},{target:e,propertyKey:o,descriptor:i})}return Object.defineProperty(o,"name",{value:[e,r].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=c.decorators[this.key]?.[this.flavour]?.decorators,r=this.decorators||t||new Set,e=void 0!==this.extras?this.extras:void 0;return c.register(this.key,this.flavour,r,e),this.decoratorFactory(this.key,this.flavour)}static register(t,r,e,o){if(!t)throw Error("No key provided for the decoration builder");if(!e)throw Error("No decorators provided for the decoration builder");if(!r)throw Error("No flavour provided for the decoration builder");c.decorators[t]||(c.decorators[t]={}),c.decorators[t][r]||(c.decorators[t][r]={}),c.decorators[t][r].decorators=e,void 0!==o&&(c.decorators[t][r].extras=o)}static setFlavourResolver(t){c.flavourResolver=t}static for(t){return(new c).for(t)}static flavouredAs(t){return new c(t)}}function d(t,r){return(e,o,i)=>{a.set(o?e.constructor:e,t,r)}}function l(t,...r){return(e,o,i)=>{const s=a.get(e,t)||[];return p(d(o?a.key(t,o):t,[...new Set([...s,...r])]))(e,o,i)}}function h(){return c.for(e.PROPERTIES).define({decorator:()=>(t,r)=>{const o=Reflect.getOwnMetadata(e.DESIGN_TYPE,t,r);return d(a.key(e.PROPERTIES,r),o)(t,r)},args:[]}).apply()}function u(){return(t,r,o)=>{if(!r)throw Error("The @param decorator can only be applied to methods");y()(t,r,Object.getOwnPropertyDescriptor(t,r));const i=a.params(t.constructor,r);if(!i)throw Error("Missing parameter types for "+r);if(o>=i.length)throw Error(`Parameter index ${o} out of range for ${r+""}`);d(a.key(e.METHODS,r,o.toString()),i[o])(t,r)}}function f(t,r){return(o,i,s)=>p(u(),d(a.key(e.METHODS,i,t),r))(o,i,s)}function y(){return(t,r,o)=>{const i=Reflect.getOwnMetadata(e.DESIGN_PARAMS,t,r),s=Reflect.getOwnMetadata(e.DESIGN_RETURN,t,r);return p(d(a.key(e.METHODS,r,e.DESIGN_PARAMS),i),d(a.key(e.METHODS,r,e.DESIGN_RETURN),s))(t,r,o)}}function p(...t){return(r,e,o)=>{for(const i of t)r instanceof Function&&!o?i(r):i(r,e,o)}}function g(t,r){return p(d(t,r),h())}function S(t,r){return p(d(t,r),y())}function b(t){return c.for(e.DESCRIPTION).define({decorator:t=>(r,o,i)=>d([e.DESCRIPTION,o?o.toString():e.CLASS].join(a.splitter),t)(r,o,i),args:[t]}).apply()}const E="##VERSION##";a.registerLibrary("@decaf-ts/decoration",E);export{c as Decoration,e as DecorationKeys,t as DefaultFlavour,o as DefaultMetadata,a as Metadata,r as ObjectKeySplitter,E as VERSION,p as apply,b as description,i as getValueBySplitter,d as metadata,l as metadataArray,y as method,S as methodMetadata,u as param,f as paramMetadata,h as prop,g as propMetadata,s as setValueBySplitter};
2
2
  //# sourceMappingURL=decoration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decoration.js","sources":["../src/constants.ts","../src/metadata/Metadata.ts","../src/decoration/Decoration.ts","../src/decorators.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DefaultMetadata","PROPERTIES","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","constr","CONSTRUCTOR","resolvedModel","constructors","collectConstructorChain","fallbackSymbol","innerGet","collectedValues","map","ctor","mergeMetadataChain","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","Array","isArray","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","defaultFlavourResolver","Decoration","decorators","flavourResolver","flavour","decorate","addon","Set","define","find","d","extend","decoratorFactory","f","contextDecorator","propertyKey","descriptor","cache","extras","size","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","entry","args","defaultArgsByIndex","toApply","baseLength","_","candidateIndex","decorator","apply","existingDecorators","decoratorsToRegister","register","setFlavourResolver","resolver","flavouredAs","metadata","metadataArray","data","existingData","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","paramMetadata","designParams","designReturn","propMetadata","methodMetadata","desc","original","VERSION"],"mappings":"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"}
1
+ {"version":3,"file":"decoration.js","sources":["../src/constants.ts","../src/metadata/Metadata.ts","../src/decoration/Decoration.ts","../src/decorators.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DefaultMetadata","PROPERTIES","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","constr","CONSTRUCTOR","resolvedModel","constructors","collectConstructorChain","fallbackSymbol","innerGet","collectedValues","map","ctor","mergeMetadataChain","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","Array","isArray","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","defaultFlavourResolver","Decoration","decorators","flavourResolver","flavour","decorate","addon","extras","Set","define","find","d","extend","decoratorFactory","f","contextDecorator","propertyKey","descriptor","cache","size","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","entry","args","defaultArgsByIndex","toApply","baseLength","_","candidateIndex","decorator","apply","existingDecorators","decoratorsToRegister","extrasToRegister","register","setFlavourResolver","resolver","flavouredAs","metadata","metadataArray","data","existingData","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","paramMetadata","designParams","designReturn","propMetadata","methodMetadata","desc","original","VERSION"],"mappings":"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"}
@@ -91,10 +91,17 @@ class Decoration {
91
91
  !addon &&
92
92
  this.flavour !== constants_1.DefaultFlavour)
93
93
  throw new Error("Must provide overrides or addons to override or extend decaf's decorators");
94
- this[addon ? "extras" : "decorators"] = new Set([
95
- ...(this[addon ? "extras" : "decorators"] || new Set()).values(),
96
- ...decorators,
97
- ]);
94
+ // For addon (extend) we merge with existing extras; for base (define) we replace
95
+ if (addon) {
96
+ this.extras = new Set([
97
+ ...(this.extras || new Set()).values(),
98
+ ...decorators,
99
+ ]);
100
+ }
101
+ else {
102
+ // replace any previously configured base decorators on this builder
103
+ this.decorators = new Set([...decorators]);
104
+ }
98
105
  return this;
99
106
  }
100
107
  /**
@@ -221,7 +228,13 @@ class Decoration {
221
228
  throw new Error("No key provided for the decoration builder");
222
229
  const existingDecorators = Decoration.decorators[this.key]?.[this.flavour]?.decorators;
223
230
  const decoratorsToRegister = this.decorators || existingDecorators || new Set();
224
- Decoration.register(this.key, this.flavour, decoratorsToRegister, this.extras);
231
+ // If this builder explicitly configured decorators (via define), we want
232
+ // to replace previously registered base decorators. Previously we cleared
233
+ // extras when define() was called — restore the behaviour where define()
234
+ // does not remove previously registered extras unless extras were
235
+ // explicitly supplied.
236
+ const extrasToRegister = typeof this.extras !== "undefined" ? this.extras : undefined;
237
+ Decoration.register(this.key, this.flavour, decoratorsToRegister, extrasToRegister);
225
238
  return this.decoratorFactory(this.key, this.flavour);
226
239
  }
227
240
  /**
@@ -245,10 +258,13 @@ class Decoration {
245
258
  Decoration.decorators[key] = {};
246
259
  if (!Decoration.decorators[key][flavour])
247
260
  Decoration.decorators[key][flavour] = {};
248
- if (decorators)
249
- Decoration.decorators[key][flavour].decorators = decorators;
250
- if (extras)
261
+ // Always set decorators. Only overwrite extras when an explicit value is
262
+ // provided so that calling define() without extras does not accidentally
263
+ // clear previously registered extras.
264
+ Decoration.decorators[key][flavour].decorators = decorators;
265
+ if (typeof extras !== "undefined") {
251
266
  Decoration.decorators[key][flavour].extras = extras;
267
+ }
252
268
  }
253
269
  /**
254
270
  * @description Sets the global flavour resolver.
@@ -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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"}
@@ -88,10 +88,17 @@ export class Decoration {
88
88
  !addon &&
89
89
  this.flavour !== DefaultFlavour)
90
90
  throw new Error("Must provide overrides or addons to override or extend decaf's decorators");
91
- this[addon ? "extras" : "decorators"] = new Set([
92
- ...(this[addon ? "extras" : "decorators"] || new Set()).values(),
93
- ...decorators,
94
- ]);
91
+ // For addon (extend) we merge with existing extras; for base (define) we replace
92
+ if (addon) {
93
+ this.extras = new Set([
94
+ ...(this.extras || new Set()).values(),
95
+ ...decorators,
96
+ ]);
97
+ }
98
+ else {
99
+ // replace any previously configured base decorators on this builder
100
+ this.decorators = new Set([...decorators]);
101
+ }
95
102
  return this;
96
103
  }
97
104
  /**
@@ -218,7 +225,13 @@ export class Decoration {
218
225
  throw new Error("No key provided for the decoration builder");
219
226
  const existingDecorators = Decoration.decorators[this.key]?.[this.flavour]?.decorators;
220
227
  const decoratorsToRegister = this.decorators || existingDecorators || new Set();
221
- Decoration.register(this.key, this.flavour, decoratorsToRegister, this.extras);
228
+ // If this builder explicitly configured decorators (via define), we want
229
+ // to replace previously registered base decorators. Previously we cleared
230
+ // extras when define() was called — restore the behaviour where define()
231
+ // does not remove previously registered extras unless extras were
232
+ // explicitly supplied.
233
+ const extrasToRegister = typeof this.extras !== "undefined" ? this.extras : undefined;
234
+ Decoration.register(this.key, this.flavour, decoratorsToRegister, extrasToRegister);
222
235
  return this.decoratorFactory(this.key, this.flavour);
223
236
  }
224
237
  /**
@@ -242,10 +255,13 @@ export class Decoration {
242
255
  Decoration.decorators[key] = {};
243
256
  if (!Decoration.decorators[key][flavour])
244
257
  Decoration.decorators[key][flavour] = {};
245
- if (decorators)
246
- Decoration.decorators[key][flavour].decorators = decorators;
247
- if (extras)
258
+ // Always set decorators. Only overwrite extras when an explicit value is
259
+ // provided so that calling define() without extras does not accidentally
260
+ // clear previously registered extras.
261
+ Decoration.decorators[key][flavour].decorators = decorators;
262
+ if (typeof extras !== "undefined") {
248
263
  Decoration.decorators[key][flavour].extras = extras;
264
+ }
249
265
  }
250
266
  /**
251
267
  * @description Sets the global flavour resolver.
@@ -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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"}
@@ -14,4 +14,4 @@ export * from "./decorators";
14
14
  * @const VERSION
15
15
  * @memberOf module:decoration
16
16
  */
17
- export declare const VERSION = "0.6.3";
17
+ export declare const VERSION = "0.6.4";
package/lib/esm/index.js CHANGED
@@ -15,6 +15,6 @@ export * from "./decorators.js";
15
15
  * @const VERSION
16
16
  * @memberOf module:decoration
17
17
  */
18
- export const VERSION = "0.6.3";
18
+ export const VERSION = "0.6.4";
19
19
  Metadata.registerLibrary("@decaf-ts/decoration", VERSION);
20
20
  //# sourceMappingURL=index.js.map
package/lib/index.cjs CHANGED
@@ -32,6 +32,6 @@ __exportStar(require("./decorators.cjs"), exports);
32
32
  * @const VERSION
33
33
  * @memberOf module:decoration
34
34
  */
35
- exports.VERSION = "0.6.3";
35
+ exports.VERSION = "0.6.4";
36
36
  index_1.Metadata.registerLibrary("@decaf-ts/decoration", exports.VERSION);
37
37
  //# sourceMappingURL=index.js.map
package/lib/index.d.ts CHANGED
@@ -14,4 +14,4 @@ export * from "./decorators";
14
14
  * @const VERSION
15
15
  * @memberOf module:decoration
16
16
  */
17
- export declare const VERSION = "0.6.3";
17
+ export declare const VERSION = "0.6.4";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/decoration",
3
- "version": "0.6.4",
3
+ "version": "0.7.0",
4
4
  "description": "Decoration and metadata mechanisms for decaf-ts",
5
5
  "type": "module",
6
6
  "exports": {