@decaf-ts/decoration 0.8.2 → 0.8.4

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
@@ -26,7 +26,7 @@ The decoration module provides a small, composable system for building and apply
26
26
 
27
27
  Documentation available [here](https://decaf-ts.github.io/ts-workspace/)
28
28
 
29
- Minimal size: 5.1 KB kb gzipped
29
+ Minimal size: 5.3 KB kb gzipped
30
30
 
31
31
 
32
32
  # Description
@@ -1,2 +1,2 @@
1
- var t,e;t=this,e=function(t){"use strict";const e="decaf",r=".";var o,a;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.FLAVOUR="flavour",o.DECORATION="decoration",o.DESIGN_TYPE="design:type",o.DESIGN_PARAMS="design:paramtypes",o.DESIGN_RETURN="design:returntype",t.DecorationState=void 0,(a=t.DecorationState||(t.DecorationState={})).PENDING="pending",a.ONGOING="ongoing";const i={[t.DecorationKeys.PROPERTIES]:[]},n="##VERSION##",s="##PACKAGE##";function c(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 l(t,e,o,a=r){const i=e.split(a).filter(t=>t.length>0);if(0===i.length)return;let n=t;for(let t=0;t<i.length-1;t++){const e=i[t];void 0!==n[e]&&null!==n[e]&&"object"==typeof n[e]||(n[e]={}),n=n[e]}n[i[i.length-1]]=o}class d{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 flavourOf(t){return E.flavourResolver(t)}static flavouredAs(e){return this.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),e)||[]}static registeredFlavour(r){const o=this.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR));if(!o)return;const a=this.constr(r);let i;for(const[t,r]of Object.entries(o))if(Array.isArray(r)&&r.some(t=>this.constr(t)===a)){if(t===e){i=i||t;continue}return t}return i}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(a.filter(e=>this.isDecorated(e)===t.DecorationState.PENDING).forEach(t=>{E.resolvePendingDecorators(t)}),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 isDecorated(e){const r=this.constr(e);return this.innerGet(this.Symbol(r),t.DecorationKeys.DECORATION)||!1}static innerGet(t,e){if(this._metadata[t])return e?"string"==typeof e?c(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 l(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&&d.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 f(t,e){return(r,o,a)=>{let i=r;o&&(i="function"==typeof r?r:r.constructor||r),d.set(i,t,e)}}function u(e){return r=>{const o=d.constr(r);if(((e,r)=>{const o=d.constr(e),a=d.innerGet(d.Symbol(e),t.DecorationKeys.FLAVOUR)||E.defaultFlavour,i=(d.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),a)||[]).filter(t=>d.constr(t)!==o);d.set(t.DecorationKeys.FLAVOUR,a,i);const n=new Set(d.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),r)||[]);n.add(e),d.set(t.DecorationKeys.FLAVOUR,r,[...n])})(r,e),d.set(o,t.DecorationKeys.FLAVOUR,e),e!==E.defaultFlavour)E.resolvePendingDecorators(o,e);else{let t;try{t=E.flavourResolver?E.flavourResolver(o):void 0}catch{t=void 0}t&&t!==E.defaultFlavour?E.resolvePendingDecorators(o,t):E.markPending(o)}return r}}function p(){return(e,r)=>{const o="function"==typeof e?e.prototype:e,a=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_TYPE,o,r);return f(d.key(t.DecorationKeys.PROPERTIES,r),a)(e,r)}}function y(){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=d.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+""}`);f(d.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 g(f(d.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS),a),f(d.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN),i))(e,r,o)}}function g(...t){return(e,r,o)=>{for(const a of t)e instanceof Function&&!o?a(e):a(e,r,o)}}function v(e){const r=d.constr("function"==typeof e?e:e?.constructor),o=d.innerGet(d.Symbol(r),t.DecorationKeys.FLAVOUR);if(o&&o!==E.defaultFlavour)return o;const a="function"==typeof d.registeredFlavour?d.registeredFlavour(r):void 0;return a&&a!==E.defaultFlavour?a:o??E.defaultFlavour}function D(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)&&t.constructor===Object}function O(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>O(t));if(t instanceof Date)return new Date(t.getTime());if(t instanceof Set)return new Set(Array.from(t).map(t=>O(t)));if(t instanceof Map)return new Map(Array.from(t.entries()).map(([t,e])=>[t,O(e)]));if(t.constructor!==Object)return t;const e={};return Reflect.ownKeys(t).forEach(r=>{e[r]=O(t[r])}),e}function S(t,e,r=[],o=[]){return new Set([...t?Reflect.ownKeys(t):[],...e?Reflect.ownKeys(e):[]]).forEach(a=>{const i=!!t&&Object.prototype.hasOwnProperty.call(t,a),n=!!e&&Object.prototype.hasOwnProperty.call(e,a),s=i?t?.[a]:void 0,c=n?e?.[a]:void 0;if(n)return i?void(D(s)&&D(c)?S(s,c,[...r,a],o):s!==c&&o.push({path:[...r,a],previousValue:O(s),existed:!0})):D(c)?void S(void 0,c,[...r,a],o):void o.push({path:[...r,a],previousValue:void 0,existed:!1});o.push({path:[...r,a],previousValue:O(s),existed:!0})}),o}function b(t){if(!t)return;const e={};return Object.keys(t).forEach(r=>{e[r]=t[r].map(t=>"object"==typeof t&&null!==t?O(t):t)}),e}function m(t,e){let r=t;for(const t of e){if(!r||!D(r[t]))return;r=r[t]}return r}d.registerLibrary(s,n);class E{static{this.defaultFlavour=e}static{this.targetStates=new WeakMap}static{this.decorators={}}static{this.flavourResolver=v}constructor(t=E.defaultFlavour){this.flavour=t}static getTargetState(t){if(!t)throw Error("Invalid target provided to Decoration state tracker");let e=this.targetStates.get(t);return e||(e={pending:[],flavour:void 0,directApply:!1},this.targetStates.set(t,e)),e}static applyPendingEntry(t,e){const r=d._metadata,o=d.Symbol(t.owner),a=void 0===t.metadataDiff?O(r[o]):void 0;try{if(void 0!==t.propertyKey&&void 0===t.descriptorSnapshot&&t.target){const e=Object.getOwnPropertyDescriptor(t.target,t.propertyKey);t.descriptorWasOwn=Object.prototype.hasOwnProperty.call(t.target,t.propertyKey),t.descriptorSnapshot=e?{...e}:void 0}const i=t.argsFactory?t.argsFactory():b(t.argsOverride),n=t.callback(e,i)(t.target,t.propertyKey,t.descriptor);if(void 0!==t.propertyKey&&n&&t.target&&Object.defineProperty(t.target,t.propertyKey,n),void 0===t.metadataDiff){const e=O(r[o]);t.metadataDiff=S(a,e)}}catch(t){}}static markPending(e){if(!e)return;const r=this.getTargetState(e);r.resolved=!1,r.flavour||(r.flavour=E.defaultFlavour),d.set(e,t.DecorationKeys.DECORATION,t.DecorationState.PENDING)}static scheduleDefaultResolve(t){if(!t)return;const e=this.getTargetState(t);e.resolveScheduled||e.resolved||e.applying||(e.resolveScheduled=!0,Promise.resolve().then(()=>{e.resolveScheduled=!1,e.resolved||this.resolvePendingDecorators(t)}))}static registerPendingDecorator(e,r,o,a,i,n,s){const c=`${e?.name||"anonymous"}:${(a||"class")+""}:${Date.now()}:${Math.random()}`,l=this.getTargetState(e),f=b(n),u={owner:e,target:r,propertyKey:a,descriptor:i,callback:o,argsOverride:f,argsFactory:()=>b(f),key:c,definitionKey:s},p=()=>{const r=l.flavour||d.get(e,t.DecorationKeys.FLAVOUR)||E.defaultFlavour;return this.applyPendingEntry(u,r),u.lastAppliedPass=l.passId,u.lastAppliedFlavour=r,r},y=()=>(l.pending.push(u),u);if(l.directApply){y();const r=p();return l.appliedCount=l.pending.length,l.flavour=r,d.set(e,t.DecorationKeys.DECORATION,!0),c}if(y(),l.applying)return p(),c;if(E.flavourResolver!==v)try{const t=E.flavourResolver(e);if(t&&t!==E.defaultFlavour)return this.resolvePendingDecorators(e,t),c}catch{}return this.scheduleDefaultResolve(e),c}static resolvePendingDecorators(e,r){const o="function"==typeof e?e:e?.constructor||e;if(!o)return;const a=this.getTargetState(o);if(a.resolveScheduled=!1,!a.pending.length&&!r)return;const i=r||a.flavour||d.get(o,t.DecorationKeys.FLAVOUR)||E.defaultFlavour;if(a.applying)return;const n=a.appliedCount||0;if(!r&&a.lastAppliedFlavour===i&&n>=a.pending.length)return;const s=!(!r||r===E.defaultFlavour)||a.directApply;if(!a.pending.length)return;const c=(a.passId||0)+1;a.passId=c,a.applying=!0;try{if(s)for(const t of a.pending){if(!t)continue;if(t.lastAppliedPass===c)continue;const e=this.shouldOverrideEntry(t,i);void 0!==t.metadataDiff||void 0!==t.descriptorSnapshot?t.lastAppliedFlavour!==i&&e?(t.metadataDiff?.length&&A(t.owner,t.metadataDiff),R(t),this.applyPendingEntry(t,i),t.lastAppliedPass=c,t.lastAppliedFlavour=i):t.lastAppliedPass=c:(this.applyPendingEntry(t,i),t.lastAppliedPass=c,t.lastAppliedFlavour=i)}else{let t=n;for(;t<a.pending.length;){const e=a.pending[t++];e&&e.lastAppliedPass!==c&&(this.applyPendingEntry(e,i),e.lastAppliedPass=c,e.lastAppliedFlavour=i)}a.appliedCount=a.pending.length}}finally{a.applying=!1}a.flavour=i,a.resolved=!0,a.lastAppliedFlavour=i,s&&(a.appliedCount=a.pending.length,i!==E.defaultFlavour&&(a.directApply=!0)),d.set(o,t.DecorationKeys.DECORATION,!0)}for(t){return this.key=t,this}decorate(t=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||t||this.flavour===E.defaultFlavour))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(),...e]):this.decorators=new Set([...e]),this}snapshotDecoratorArgs(){if(!this.decorators||!this.decorators.size)return;const t={};return Array.from(this.decorators.values()).forEach((e,r)=>{"object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args.map(t=>"object"==typeof t&&null!==t?O(t):t))}),Object.keys(t).length?t:void 0}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,e,r){function o(o,a,i){const n=e??E.flavourResolver(o),s=E.decorators[t];let c;const l=s[n]?s[n].extras:s[E.defaultFlavour].extras;c=s&&s[n]&&s[n].decorators&&s[n].decorators.size?s[n].decorators:s[E.defaultFlavour].decorators;const d=[...c?c.values():[]],f=[...(s[E.defaultFlavour]?.decorators||new Set).values()],u=d.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),p=f.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),y=[...d,...l?l.values():[]],h=d.length,g=r||{};let v=o,D=i;return y.forEach((t,e)=>{let r;if("object"==typeof t){const o=t,a=h>e?e:0,i=((h>e?g[a]:void 0)||("args"in o&&Array.isArray(o.args)?o.args:u[a]??p[a]??p[0]??[])).map(t=>"object"==typeof t&&null!==t?O(t):t);r=o.decorator(...i)}else{if("function"!=typeof t)throw Error("Unexpected decorator type: "+typeof t);r=t}const i=r(void 0===a?v:o,a,D);void 0===a?"function"==typeof i&&(v=i):void 0!==i&&(D=i)}),void 0===a?v:D}return Object.defineProperty(o,"name",{value:[e||"dynamic",t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const e=this.key,r=E.decorators[this.key]?.[this.flavour]?.decorators,o=this.decorators||r||new Set,a=void 0!==this.extras?this.extras:void 0;E.register(this.key,this.flavour,o,a);const i=(r,o,a)=>{const i=void 0!==o,n="function"==typeof r?r:r?.constructor||r;if(n&&i){d.innerGet(d.Symbol(n),t.DecorationKeys.FLAVOUR)||u(E.defaultFlavour)(n);const i=this.snapshotDecoratorArgs();return E.registerPendingDecorator(n,r,t=>this.decoratorFactory(e,t,i),o,a,i,e),E.resolvePendingDecorators(n),o&&!a&&p()(n,o),o&&a&&h()(n,o,a),a}const s=this.flavour===E.defaultFlavour?void 0:this.flavour;return this.decoratorFactory(e,s)(r,o,a)};try{Object.defineProperty(i,"name",{value:[this.flavour,e].join("_decorator_for_"),writable:!1})}catch(t){}return i}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");E.decorators[t]||(E.decorators[t]={}),E.decorators[t][e]||(E.decorators[t][e]={}),E.decorators[t][e].decorators=r,void 0!==o&&(E.decorators[t][e].extras=o)}static setResolver(t){E.flavourResolver=t}static shouldOverrideEntry(t,e){if(!t.definitionKey)return!1;if(e===E.defaultFlavour)return!1;const r=E.decorators[t.definitionKey];if(!r)return!1;const o=r[e];if(!o)return!1;const a=r[E.defaultFlavour],i=o.decorators&&o.decorators.size>0,n=o.extras instanceof Set&&o.extras.size>0;if(!i&&!n)return!1;if(!a)return!0;const s=!i||o.decorators===a.decorators,c=!n||o.extras===a.extras;return!(s&&c)}static for(t){return(new E).for(t)}static flavouredAs(t){return new E(t)}}function A(t,e){if(!e||!e.length)return;const r=d._metadata,o=d.Symbol(t),a=r[o]||(r[o]={});e.forEach(({path:t,previousValue:e,existed:r})=>{if(!t.length)return;let o=a;for(let e=0;e<t.length-1;e++){const r=t[e];D(o[r])||(o[r]={}),o=o[r]}const i=t[t.length-1];r?o[i]=O(e):(delete o[i],((t,e)=>{for(let r=e.length;r>0;r--){const o=e.slice(0,r),a=o.slice(0,-1),i=o[o.length-1],n=0===a.length?t:m(t,a);if(!n||!D(n))break;const s=n[i];if(!D(s)||Reflect.ownKeys(s).length>0)break;delete n[i]}})(a,t.slice(0,-1)))})}function R(t){if(!t||void 0===t.propertyKey)return;const e=t.target;if(!e||void 0===t.descriptorWasOwn)return;const r=t.propertyKey,o=t.descriptorSnapshot;t.descriptorWasOwn?o?Object.defineProperty(e,r,o):delete e[r]:(delete e[r],o&&Object.defineProperty(e,r,o))}t.Decoration=E,t.DefaultFlavour=e,t.DefaultMetadata=i,t.Metadata=d,t.ObjectKeySplitter=r,t.PACKAGE_NAME=s,t.VERSION=n,t.apply=g,t.description=e=>E.for(t.DecorationKeys.DESCRIPTION).define({decorator:e=>(r,o,a)=>f(d.key(t.DecorationKeys.DESCRIPTION,o?o.toString():t.DecorationKeys.CLASS),e)(r,o,a),args:[e]}).apply(),t.getValueBySplitter=c,t.metadata=f,t.metadataArray=(t,...e)=>(r,o,a)=>{const i=d.get(r,t)||[];return g(f(o?d.key(t,o):t,[...new Set([...i,...e])]))(r,o,a)},t.method=h,t.methodMetadata=(t,e)=>g(f(t,e),h()),t.param=y,t.paramMetadata=(e,r)=>(o,a,i)=>g(y(),f(d.key(t.DecorationKeys.METHODS,a,e),r))(o,a,i),t.prop=p,t.propMetadata=(t,e)=>g(f(t,e),p()),t.setValueBySplitter=l,t.uses=u},"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,i;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.FLAVOUR="flavour",o.DECORATION="decoration",o.DESIGN_TYPE="design:type",o.DESIGN_PARAMS="design:paramtypes",o.DESIGN_RETURN="design:returntype",t.DecorationState=void 0,(i=t.DecorationState||(t.DecorationState={})).PENDING="pending",i.ONGOING="ongoing";const a={[t.DecorationKeys.PROPERTIES]:[]},s="##VERSION##",n="##PACKAGE##";function c(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 l(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 d{static{this._metadata={}}static{this._propertiesIndex={}}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.constr(t),r=this.Symbol(e),o=this._propertiesIndex[r];if(o&&o.size)return[...o];const i=this.get(e);return i&&i.properties?Object.keys(i.properties):void 0}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 flavourOf(t){return m.flavourResolver(t)}static flavouredAs(e){return this.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),e)||[]}static registeredFlavour(r){const o=this.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR));if(!o)return;const i=this.constr(r);let a;for(const[t,r]of Object.entries(o))if(Array.isArray(r)&&r.some(t=>this.constr(t)===i)){if(t===e){a=a||t;continue}return t}return a}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(i.filter(e=>this.isDecorated(e)===t.DecorationState.PENDING).forEach(t=>{m.resolvePendingDecorators(t)}),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 isDecorated(e){const r=this.constr(e);return this.innerGet(this.Symbol(r),t.DecorationKeys.DECORATION)||!1}static innerGet(t,e){if(this._metadata[t])return e?"string"==typeof e?c(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 l(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);if("string"==typeof r){const e=`${t.DecorationKeys.PROPERTIES}${this.splitter}`;if(r.startsWith(e)){const t=r.slice(e.length);if(t.length){const e=this._propertiesIndex[i]||new Set;e.add(t),this._propertiesIndex[i]=e}}else if(r===t.DecorationKeys.PROPERTIES&&this.isPlainObject(o)){const t=this._propertiesIndex[i]||new Set;Object.keys(o).forEach(e=>{t.add(e)}),t.size&&(this._propertiesIndex[i]=t)}}this.innerSet(i,r,o),"string"!=typeof e&&d.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 f(e,r){return(o,i,a)=>{let s=o;if(i&&(s="function"==typeof o?o:o.constructor||o,void 0===a)){const e="function"==typeof o?o.prototype:o,r=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_TYPE,e,i),a=d.key(t.DecorationKeys.PROPERTIES,i.toString()),n=d.get(s,a);void 0===r&&void 0!==n||d.set(s,a,r)}d.set(s,e,r)}}function u(e){return r=>{const o=d.constr(r);if(((e,r)=>{const o=d.constr(e),i=d.innerGet(d.Symbol(e),t.DecorationKeys.FLAVOUR)||m.defaultFlavour,a=(d.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),i)||[]).filter(t=>d.constr(t)!==o);d.set(t.DecorationKeys.FLAVOUR,i,a);const s=new Set(d.innerGet(Symbol.for(t.DecorationKeys.FLAVOUR),r)||[]);s.add(e),d.set(t.DecorationKeys.FLAVOUR,r,[...s])})(r,e),d.set(o,t.DecorationKeys.FLAVOUR,e),e!==m.defaultFlavour)m.resolvePendingDecorators(o,e);else{let t;try{t=m.flavourResolver?m.flavourResolver(o):void 0}catch{t=void 0}t&&t!==m.defaultFlavour?m.resolvePendingDecorators(o,t):m.markPending(o)}return r}}function p(){return(e,r)=>{const o="function"==typeof e?e.prototype:e,i=Reflect.getOwnMetadata(t.DecorationKeys.DESIGN_TYPE,o,r);return f(d.key(t.DecorationKeys.PROPERTIES,r),i)(e,r)}}function y(){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=d.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+""}`);f(d.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 g(f(d.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_PARAMS),i),f(d.key(t.DecorationKeys.METHODS,r,t.DecorationKeys.DESIGN_RETURN),a))(e,r,o)}}function g(...t){return(e,r,o)=>{for(const i of t)void 0!==r?i(e,r,o):i(e)}}function v(e){const r=d.constr("function"==typeof e?e:e?.constructor),o=d.innerGet(d.Symbol(r),t.DecorationKeys.FLAVOUR);if(o&&o!==m.defaultFlavour)return o;const i="function"==typeof d.registeredFlavour?d.registeredFlavour(r):void 0;return i&&i!==m.defaultFlavour?i:o??m.defaultFlavour}function D(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)&&t.constructor===Object}function O(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>O(t));if(t instanceof Date)return new Date(t.getTime());if(t instanceof Set)return new Set(Array.from(t).map(t=>O(t)));if(t instanceof Map)return new Map(Array.from(t.entries()).map(([t,e])=>[t,O(e)]));if(t.constructor!==Object)return t;const e={};return Reflect.ownKeys(t).forEach(r=>{e[r]=O(t[r])}),e}function S(t,e,r=[],o=[]){return new Set([...t?Reflect.ownKeys(t):[],...e?Reflect.ownKeys(e):[]]).forEach(i=>{const a=!!t&&Object.prototype.hasOwnProperty.call(t,i),s=!!e&&Object.prototype.hasOwnProperty.call(e,i),n=a?t?.[i]:void 0,c=s?e?.[i]:void 0;if(s)return a?void(D(n)&&D(c)?S(n,c,[...r,i],o):n!==c&&o.push({path:[...r,i],previousValue:O(n),existed:!0})):D(c)?void S(void 0,c,[...r,i],o):void o.push({path:[...r,i],previousValue:void 0,existed:!1});o.push({path:[...r,i],previousValue:O(n),existed:!0})}),o}function b(t){if(!t)return;const e={};return Object.keys(t).forEach(r=>{e[r]=t[r].map(t=>"object"==typeof t&&null!==t?O(t):t)}),e}function E(t,e){let r=t;for(const t of e){if(!r||!D(r[t]))return;r=r[t]}return r}d.registerLibrary(n,s);class m{static{this.defaultFlavour=e}static{this.targetStates=new WeakMap}static{this.decorators={}}static{this.flavourResolver=v}constructor(t=m.defaultFlavour){this.flavour=t}static getTargetState(t){if(!t)throw Error("Invalid target provided to Decoration state tracker");let e=this.targetStates.get(t);return e||(e={pending:[],flavour:void 0,directApply:!1},this.targetStates.set(t,e)),e}static applyPendingEntry(t,e){const r=d._metadata,o=d.Symbol(t.owner),i=void 0===t.metadataDiff?O(r[o]):void 0;try{if(void 0!==t.propertyKey&&void 0===t.descriptorSnapshot&&t.target){const e=Object.getOwnPropertyDescriptor(t.target,t.propertyKey);t.descriptorWasOwn=Object.prototype.hasOwnProperty.call(t.target,t.propertyKey),t.descriptorSnapshot=e?{...e}:void 0}const a=t.argsFactory?t.argsFactory():b(t.argsOverride),s=t.callback(e,a)(t.target,t.propertyKey,t.descriptor);if(void 0!==t.propertyKey&&s&&t.target&&Object.defineProperty(t.target,t.propertyKey,s),void 0!==t.propertyKey&&void 0===t.descriptor&&p()(t.owner??t.target,t.propertyKey),void 0===t.metadataDiff){const e=O(r[o]);t.metadataDiff=S(i,e)}}catch(t){}}static markPending(e){if(!e)return;const r=this.getTargetState(e);r.resolved=!1,r.flavour||(r.flavour=m.defaultFlavour),d.set(e,t.DecorationKeys.DECORATION,t.DecorationState.PENDING)}static scheduleDefaultResolve(t){if(!t)return;const e=this.getTargetState(t);e.resolveScheduled||e.resolved||e.applying||(e.resolveScheduled=!0,Promise.resolve().then(()=>{e.resolveScheduled=!1,e.resolved||this.resolvePendingDecorators(t)}))}static registerPendingDecorator(e,r,o,i,a,s,n){const c=`${e?.name||"anonymous"}:${(i||"class")+""}:${Date.now()}:${Math.random()}`,l=this.getTargetState(e),f=b(s),u={owner:e,target:r,propertyKey:i,descriptor:a,callback:o,argsOverride:f,argsFactory:()=>b(f),key:c,definitionKey:n},p=()=>{const r=l.flavour||d.get(e,t.DecorationKeys.FLAVOUR)||m.defaultFlavour;return this.applyPendingEntry(u,r),u.lastAppliedPass=l.passId,u.lastAppliedFlavour=r,r},y=()=>(l.pending.push(u),u);if(l.directApply){y();const r=p();return l.appliedCount=l.pending.length,l.flavour=r,d.set(e,t.DecorationKeys.DECORATION,!0),c}if(y(),l.applying)return p(),c;if(m.flavourResolver!==v)try{const t=m.flavourResolver(e);if(t&&t!==m.defaultFlavour)return this.resolvePendingDecorators(e,t),c}catch{}return this.scheduleDefaultResolve(e),c}static resolvePendingDecorators(e,r){const o="function"==typeof e?e:e?.constructor||e;if(!o)return;const i=this.getTargetState(o);if(i.resolveScheduled=!1,!i.pending.length&&!r)return;const a=r||i.flavour||d.get(o,t.DecorationKeys.FLAVOUR)||m.defaultFlavour;if(i.applying)return;const s=i.appliedCount||0;if(!r&&i.lastAppliedFlavour===a&&s>=i.pending.length)return;const n=!(!r||r===m.defaultFlavour)||i.directApply;if(!i.pending.length)return;const c=(i.passId||0)+1;i.passId=c,i.applying=!0;try{if(n)for(const t of i.pending){if(!t)continue;if(t.lastAppliedPass===c)continue;const e=this.shouldOverrideEntry(t,a);void 0!==t.metadataDiff||void 0!==t.descriptorSnapshot?t.lastAppliedFlavour!==a&&e?(t.metadataDiff?.length&&R(t.owner,t.metadataDiff),P(t),this.applyPendingEntry(t,a),t.lastAppliedPass=c,t.lastAppliedFlavour=a):t.lastAppliedPass=c:(this.applyPendingEntry(t,a),t.lastAppliedPass=c,t.lastAppliedFlavour=a)}else{let t=s;for(;t<i.pending.length;){const e=i.pending[t++];e&&e.lastAppliedPass!==c&&(this.applyPendingEntry(e,a),e.lastAppliedPass=c,e.lastAppliedFlavour=a)}i.appliedCount=i.pending.length}}finally{i.applying=!1}i.flavour=a,i.resolved=!0,i.lastAppliedFlavour=a,n&&(i.appliedCount=i.pending.length,a!==m.defaultFlavour&&(i.directApply=!0)),d.set(o,t.DecorationKeys.DECORATION,!0)}for(t){return this.key=t,this}decorate(t=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||t||this.flavour===m.defaultFlavour))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(),...e]):this.decorators=new Set([...e]),this}snapshotDecoratorArgs(){if(!this.decorators||!this.decorators.size)return;const t={};return Array.from(this.decorators.values()).forEach((e,r)=>{"object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args.map(t=>"object"==typeof t&&null!==t?O(t):t))}),Object.keys(t).length?t:void 0}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,e,r){function o(o,i,a){const s=e??m.flavourResolver(o),n=m.decorators[t];let c;const l=n[s]?n[s].extras:n[m.defaultFlavour].extras;c=n&&n[s]&&n[s].decorators&&n[s].decorators.size?n[s].decorators:n[m.defaultFlavour].decorators;const d=[...c?c.values():[]],f=[...(n[m.defaultFlavour]?.decorators||new Set).values()],u=d.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),p=f.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),y=[...d,...l?l.values():[]],h=d.length,g=r||{};let v=o,D=a;return y.forEach((t,e)=>{let r;if("object"==typeof t){const o=t,i=h>e?e:0,a=((h>e?g[i]:void 0)||("args"in o&&Array.isArray(o.args)?o.args:u[i]??p[i]??p[0]??[])).map(t=>"object"==typeof t&&null!==t?O(t):t);r=o.decorator(...a)}else{if("function"!=typeof t)throw Error("Unexpected decorator type: "+typeof t);r=t}const a=r(void 0===i?v:o,i,D);void 0===i?"function"==typeof a&&(v=a):void 0!==a&&(D=a)}),void 0===i?v:D}return Object.defineProperty(o,"name",{value:[e||"dynamic",t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const e=this.key,r=m.decorators[this.key]?.[this.flavour]?.decorators,o=this.decorators||r||new Set,i=void 0!==this.extras?this.extras:void 0;m.register(this.key,this.flavour,o,i);const a=(r,o,i)=>{const a=void 0!==o,s="function"==typeof r?r:r?.constructor||r;if(s&&a){d.innerGet(d.Symbol(s),t.DecorationKeys.FLAVOUR)||u(m.defaultFlavour)(s);const a=this.snapshotDecoratorArgs();return m.registerPendingDecorator(s,r,t=>this.decoratorFactory(e,t,a),o,i,a,e),m.resolvePendingDecorators(s),o&&!i&&p()(s,o),o&&i&&h()(s,o,i),i}const n=this.flavour===m.defaultFlavour?void 0:this.flavour;return this.decoratorFactory(e,n)(r,o,i)};try{Object.defineProperty(a,"name",{value:[this.flavour,e].join("_decorator_for_"),writable:!1})}catch(t){}return a}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");m.decorators[t]||(m.decorators[t]={}),m.decorators[t][e]||(m.decorators[t][e]={}),m.decorators[t][e].decorators=r,void 0!==o&&(m.decorators[t][e].extras=o)}static setResolver(t){m.flavourResolver=t}static shouldOverrideEntry(t,e){if(!t.definitionKey)return!1;if(e===m.defaultFlavour)return!1;const r=m.decorators[t.definitionKey];if(!r)return!1;const o=r[e];if(!o)return!1;const i=r[m.defaultFlavour],a=o.decorators&&o.decorators.size>0,s=o.extras instanceof Set&&o.extras.size>0;if(!a&&!s)return!1;if(!i)return!0;const n=!a||o.decorators===i.decorators,c=!s||o.extras===i.extras;return!(n&&c)}static for(t){return(new m).for(t)}static flavouredAs(t){return new m(t)}}function R(e,r){if(!r||!r.length)return;const o=d._metadata,i=d.Symbol(e),a=o[i]||(o[i]={});r.forEach(({path:e,previousValue:r,existed:o})=>{if(!e.length)return;if(e[0]===t.DecorationKeys.PROPERTIES)return;let i=a;for(let t=0;t<e.length-1;t++){const r=e[t];D(i[r])||(i[r]={}),i=i[r]}const s=e[e.length-1];o?i[s]=O(r):(delete i[s],((t,e)=>{for(let r=e.length;r>0;r--){const o=e.slice(0,r),i=o.slice(0,-1),a=o[o.length-1],s=0===i.length?t:E(t,i);if(!s||!D(s))break;const n=s[a];if(!D(n)||Reflect.ownKeys(n).length>0)break;delete s[a]}})(a,e.slice(0,-1)))})}function P(t){if(!t||void 0===t.propertyKey)return;const e=t.target;if(!e||void 0===t.descriptorWasOwn)return;const r=t.propertyKey,o=t.descriptorSnapshot;t.descriptorWasOwn?o?Object.defineProperty(e,r,o):delete e[r]:(delete e[r],o&&Object.defineProperty(e,r,o))}t.Decoration=m,t.DefaultFlavour=e,t.DefaultMetadata=a,t.Metadata=d,t.ObjectKeySplitter=r,t.PACKAGE_NAME=n,t.VERSION=s,t.apply=g,t.description=e=>m.for(t.DecorationKeys.DESCRIPTION).define({decorator:e=>(r,o,i)=>f(d.key(t.DecorationKeys.DESCRIPTION,o?o.toString():t.DecorationKeys.CLASS),e)(r,o,i),args:[e]}).apply(),t.getValueBySplitter=c,t.metadata=f,t.metadataArray=(t,...e)=>(r,o,i)=>{const a=d.get(r,t)||[];return g(f(o?d.key(t,o):t,[...new Set([...a,...e])]))(r,o,i)},t.method=h,t.methodMetadata=(t,e)=>g(f(t,e),h()),t.param=y,t.paramMetadata=(e,r)=>(o,i,a)=>g(y(),f(d.key(t.DecorationKeys.METHODS,i,e),r))(o,i,a),t.prop=p,t.propMetadata=(t,e)=>g(f(t,e),p()),t.setValueBySplitter=l,t.uses=u},"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/version.ts","../src/metadata/Metadata.ts","../src/decorators.ts","../src/decoration/Decoration.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DecorationState","exports","DefaultMetadata","PROPERTIES","VERSION","PACKAGE_NAME","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","flavourOf","Decoration","flavouredAs","flavour","innerGet","FLAVOUR","registeredFlavour","registry","constr","fallback","constructors","entries","Array","isArray","some","registered","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","CONSTRUCTOR","resolvedModel","collectConstructorChain","c","isDecorated","PENDING","forEach","fallbackSymbol","collectedValues","map","ctor","mergeMetadataChain","DECORATION","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","metadata","descriptor","targetModel","uses","object","canonical","flav","defaultFlavour","filtered","o","Set","add","manageFlavourRMetadata","resolved","metadataTarget","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","designParams","designReturn","apply","decorators","propertyKey","decorator","flavourResolver","owner","item","Date","getTime","from","Map","v","clone","ownKeys","diffMetadataBuckets","before","after","basePath","prevExists","nextExists","prevValue","nextValue","previousValue","existed","cloneArgsOverrides","overrides","arg","getNodeAtPath","bucket","segment","targetStates","WeakMap","getTargetState","state","pending","directApply","applyPendingEntry","entry","metadataStore","metadataSymbol","beforeSnapshot","metadataDiff","descriptorSnapshot","currentDescriptor","descriptorWasOwn","overridesForCall","argsFactory","argsOverride","descriptorResult","callback","afterSnapshot","error","markPending","scheduleDefaultResolve","resolveScheduled","applying","Promise","resolve","then","resolvePendingDecorators","registerPendingDecorator","definitionKey","now","Math","random","argsOverrideClone","applyImmediately","flavourToUse","lastAppliedPass","passId","lastAppliedFlavour","registerEntry","appliedCount","eagerFlavour","resolvedFlavour","cursor","shouldFinalize","currentPass","hasOverride","shouldOverrideEntry","revertMetadataDiff","restorePropertyDescriptor","decorate","addon","extras","snapshotDecoratorArgs","size","args","define","find","d","extend","decoratorFactory","f","contextDecorator","cache","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","defaultArgsByIndex","toApply","baseLength","argsOverrides","currentTarget","decoratorFn","candidateIndex","invocationArgs","existingDecorators","decoratorsToRegister","extrasToRegister","register","wrapper","isMember","flavourHint","e","setResolver","resolver","flavourBucket","defaultBucket","hasDecorators","hasExtras","decoratorsMatch","extrasMatch","diff","ancestorPath","slice","parentPath","pruneEmptyAncestors","snapshot","desc","original","data","existingData"],"mappings":"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"}
1
+ {"version":3,"file":"decoration.cjs","sources":["../src/constants.ts","../src/version.ts","../src/metadata/Metadata.ts","../src/decorators.ts","../src/decoration/Decoration.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DecorationState","exports","DefaultMetadata","PROPERTIES","VERSION","PACKAGE_NAME","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","_propertiesIndex","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","resolvedModel","constr","symbol","indexed","size","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","flavourOf","Decoration","flavouredAs","flavour","innerGet","FLAVOUR","registeredFlavour","registry","fallback","constructors","entries","Array","isArray","some","registered","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","CONSTRUCTOR","collectConstructorChain","c","isDecorated","PENDING","forEach","fallbackSymbol","collectedValues","map","ctor","mergeMetadataChain","DECORATION","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","propPrefix","startsWith","slice","Set","add","registerLibrary","library","version","LIBRARIES","libraries","strs","metadata","descriptor","targetModel","metadataTarget","designType","Reflect","getOwnMetadata","DESIGN_TYPE","propKey","existing","uses","object","canonical","flav","defaultFlavour","filtered","o","manageFlavourRMetadata","resolved","method","getOwnPropertyDescriptor","paramTpes","designParams","designReturn","apply","decorators","propertyKey","decorator","flavourResolver","owner","item","Date","getTime","from","Map","v","clone","ownKeys","diffMetadataBuckets","before","after","basePath","prevExists","nextExists","prevValue","nextValue","previousValue","existed","cloneArgsOverrides","overrides","arg","getNodeAtPath","bucket","segment","targetStates","WeakMap","getTargetState","state","pending","directApply","applyPendingEntry","entry","metadataStore","metadataSymbol","beforeSnapshot","metadataDiff","descriptorSnapshot","currentDescriptor","descriptorWasOwn","overridesForCall","argsFactory","argsOverride","descriptorResult","callback","afterSnapshot","error","markPending","scheduleDefaultResolve","resolveScheduled","applying","Promise","resolve","then","resolvePendingDecorators","registerPendingDecorator","definitionKey","now","Math","random","argsOverrideClone","applyImmediately","flavourToUse","lastAppliedPass","passId","lastAppliedFlavour","registerEntry","appliedCount","eagerFlavour","resolvedFlavour","cursor","shouldFinalize","currentPass","hasOverride","shouldOverrideEntry","revertMetadataDiff","restorePropertyDescriptor","decorate","addon","extras","snapshotDecoratorArgs","args","define","find","d","extend","decoratorFactory","f","contextDecorator","cache","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","defaultArgsByIndex","toApply","baseLength","argsOverrides","currentTarget","decoratorFn","candidateIndex","invocationArgs","existingDecorators","decoratorsToRegister","extrasToRegister","register","wrapper","isMember","flavourHint","e","setResolver","resolver","flavourBucket","defaultBucket","hasDecorators","hasExtras","decoratorsMatch","extrasMatch","diff","ancestorPath","parentPath","pruneEmptyAncestors","snapshot","desc","original","data","existingData"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import"reflect-metadata";const t="decaf",e=".";var r,o;(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.FLAVOUR="flavour",t.DECORATION="decoration",t.DESIGN_TYPE="design:type",t.DESIGN_PARAMS="design:paramtypes",t.DESIGN_RETURN="design:returntype"})(r||(r={})),(t=>{t.PENDING="pending",t.ONGOING="ongoing"})(o||(o={}));const n={[r.PROPERTIES]:[]},i="##VERSION##",s="##PACKAGE##";function a(t,r,o=e){const n=r.split(o);let i=t;for(const t of n){if(null==i||!Object.prototype.hasOwnProperty.call(i,t))return;i=i[t]}return i}function c(t,r,o,n=e){const i=r.split(n).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 l{static{this._metadata={}}static{this.splitter=e}static{this.baseKey=r.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(t){const e=this.get(t,r.METHODS);if(e)return Object.keys(e)}static description(t,e){return this.get(t,this.key(r.DESCRIPTION,e||r.CLASS))}static flavourOf(t){return D.flavourResolver(t)}static flavouredAs(t){return this.innerGet(Symbol.for(r.FLAVOUR),t)||[]}static registeredFlavour(e){const o=this.innerGet(Symbol.for(r.FLAVOUR));if(!o)return;const n=this.constr(e);let i;for(const[e,r]of Object.entries(o))if(Array.isArray(r)&&r.some(t=>this.constr(t)===n)){if(e===t){i=i||e;continue}return e}return i}static params(t,e){return this.get(t,this.key(r.METHODS,e,r.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(t,e){return this.get(t,this.key(r.METHODS,e,r.DESIGN_RETURN))}static type(t,e){return this.get(t,this.key(r.PROPERTIES,e))}static constr(t){return t[r.CONSTRUCTOR]||t}static get(t,e){if(e===r.CONSTRUCTOR)return this.constr(t);const n=this.constr(t),i=this.collectConstructorChain(n);if(i.filter(t=>this.isDecorated(t)===o.PENDING).forEach(t=>{D.resolvePendingDecorators(t)}),0===i.length){const t=Symbol.for(n.toString());return this.innerGet(t,e)}const s=i.map(t=>this.innerGet(this.Symbol(t),e)).filter(t=>void 0!==t);return 0!==s.length?this.mergeMetadataChain(s):void 0}static isDecorated(t){const e=this.constr(t);return this.innerGet(this.Symbol(e),r.DECORATION)||!1}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],n=r[t];this.isPlainObject(o)?r[t]=this.isPlainObject(n)?this.mergePlainObjects(n,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 c(this._metadata[t],e,r,this.splitter);this._metadata[t][e]=r}static set(t,e,o){if(e===r.CONSTRUCTOR)return void Object.defineProperty(t,r.CONSTRUCTOR,{enumerable:!1,configurable:!1,writable:!1,value:o});"string"!=typeof t&&(t=this.constr(t)||t);const n="string"==typeof t?Symbol.for(t):this.Symbol(t);this.innerSet(n,e,o),"string"!=typeof t&&l.mirror&&!Object.prototype.hasOwnProperty.call(t,this.baseKey)&&Object.defineProperty(t,this.baseKey,{enumerable:!1,configurable:!1,writable:!1,value:this._metadata[n]})}static registerLibrary(t,e){const o=Symbol.for(r.LIBRARIES);if(this.innerGet(o,t))throw Error(`Library already ${t} registered with version ${e}`);this.innerSet(o,t,e)}static libraries(){const t=Symbol.for(r.LIBRARIES);return this.innerGet(t)||{}}static key(...t){return t.join(this.splitter)}}function d(t,e){return(r,o,n)=>{let i=r;o&&(i="function"==typeof r?r:r.constructor||r),l.set(i,t,e)}}function u(t,...e){return(r,o,n)=>{const i=l.get(r,t)||[];return v(d(o?l.key(t,o):t,[...new Set([...i,...e])]))(r,o,n)}}function f(t){return e=>{const o=l.constr(e);if(((t,e)=>{const o=l.constr(t),n=l.innerGet(l.Symbol(t),r.FLAVOUR)||D.defaultFlavour,i=(l.innerGet(Symbol.for(r.FLAVOUR),n)||[]).filter(t=>l.constr(t)!==o);l.set(r.FLAVOUR,n,i);const s=new Set(l.innerGet(Symbol.for(r.FLAVOUR),e)||[]);s.add(t),l.set(r.FLAVOUR,e,[...s])})(e,t),l.set(o,r.FLAVOUR,t),t!==D.defaultFlavour)D.resolvePendingDecorators(o,t);else{let t;try{t=D.flavourResolver?D.flavourResolver(o):void 0}catch{t=void 0}t&&t!==D.defaultFlavour?D.resolvePendingDecorators(o,t):D.markPending(o)}return e}}function p(){return(t,e)=>{const o="function"==typeof t?t.prototype:t,n=Reflect.getOwnMetadata(r.DESIGN_TYPE,o,e);return d(l.key(r.PROPERTIES,e),n)(t,e)}}function h(){return(t,e,o)=>{if(!e)throw Error("The @param decorator can only be applied to methods");g()(t,e,Object.getOwnPropertyDescriptor(t,e));const n=l.params(t.constructor,e);if(!n)throw Error("Missing parameter types for "+e);if(o>=n.length)throw Error(`Parameter index ${o} out of range for ${e+""}`);d(l.key(r.METHODS,e,o.toString()),n[o])(t,e)}}function y(t,e){return(o,n,i)=>v(h(),d(l.key(r.METHODS,n,t),e))(o,n,i)}function g(){return(t,e,o)=>{const n=Reflect.getOwnMetadata(r.DESIGN_PARAMS,t,e),i=Reflect.getOwnMetadata(r.DESIGN_RETURN,t,e);return v(d(l.key(r.METHODS,e,r.DESIGN_PARAMS),n),d(l.key(r.METHODS,e,r.DESIGN_RETURN),i))(t,e,o)}}function v(...t){return(e,r,o)=>{for(const n of t)e instanceof Function&&!o?n(e):n(e,r,o)}}function O(t,e){return v(d(t,e),p())}function b(t,e){return v(d(t,e),g())}function S(t){return D.for(r.DESCRIPTION).define({decorator:t=>(e,o,n)=>d(l.key(r.DESCRIPTION,o?o.toString():r.CLASS),t)(e,o,n),args:[t]}).apply()}function m(t){const e=l.constr("function"==typeof t?t:t?.constructor),o=l.innerGet(l.Symbol(e),r.FLAVOUR);if(o&&o!==D.defaultFlavour)return o;const n="function"==typeof l.registeredFlavour?l.registeredFlavour(e):void 0;return n&&n!==D.defaultFlavour?n:o??D.defaultFlavour}function E(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)&&t.constructor===Object}function A(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>A(t));if(t instanceof Date)return new Date(t.getTime());if(t instanceof Set)return new Set(Array.from(t).map(t=>A(t)));if(t instanceof Map)return new Map(Array.from(t.entries()).map(([t,e])=>[t,A(e)]));if(t.constructor!==Object)return t;const e={};return Reflect.ownKeys(t).forEach(r=>{e[r]=A(t[r])}),e}function R(t,e,r=[],o=[]){return new Set([...t?Reflect.ownKeys(t):[],...e?Reflect.ownKeys(e):[]]).forEach(n=>{const i=!!t&&Object.prototype.hasOwnProperty.call(t,n),s=!!e&&Object.prototype.hasOwnProperty.call(e,n),a=i?t?.[n]:void 0,c=s?e?.[n]:void 0;if(s)return i?void(E(a)&&E(c)?R(a,c,[...r,n],o):a!==c&&o.push({path:[...r,n],previousValue:A(a),existed:!0})):E(c)?void R(void 0,c,[...r,n],o):void o.push({path:[...r,n],previousValue:void 0,existed:!1});o.push({path:[...r,n],previousValue:A(a),existed:!0})}),o}function P(t){if(!t)return;const e={};return Object.keys(t).forEach(r=>{e[r]=t[r].map(t=>"object"==typeof t&&null!==t?A(t):t)}),e}function w(t,e){let r=t;for(const t of e){if(!r||!E(r[t]))return;r=r[t]}return r}l.registerLibrary(s,i);class D{static{this.defaultFlavour=t}static{this.targetStates=new WeakMap}static{this.decorators={}}static{this.flavourResolver=m}constructor(t=D.defaultFlavour){this.flavour=t}static getTargetState(t){if(!t)throw Error("Invalid target provided to Decoration state tracker");let e=this.targetStates.get(t);return e||(e={pending:[],flavour:void 0,directApply:!1},this.targetStates.set(t,e)),e}static applyPendingEntry(t,e){const r=l._metadata,o=l.Symbol(t.owner),n=void 0===t.metadataDiff?A(r[o]):void 0;try{if(void 0!==t.propertyKey&&void 0===t.descriptorSnapshot&&t.target){const e=Object.getOwnPropertyDescriptor(t.target,t.propertyKey);t.descriptorWasOwn=Object.prototype.hasOwnProperty.call(t.target,t.propertyKey),t.descriptorSnapshot=e?{...e}:void 0}const i=t.argsFactory?t.argsFactory():P(t.argsOverride),s=t.callback(e,i)(t.target,t.propertyKey,t.descriptor);if(void 0!==t.propertyKey&&s&&t.target&&Object.defineProperty(t.target,t.propertyKey,s),void 0===t.metadataDiff){const e=A(r[o]);t.metadataDiff=R(n,e)}}catch(t){}}static markPending(t){if(!t)return;const e=this.getTargetState(t);e.resolved=!1,e.flavour||(e.flavour=D.defaultFlavour),l.set(t,r.DECORATION,o.PENDING)}static scheduleDefaultResolve(t){if(!t)return;const e=this.getTargetState(t);e.resolveScheduled||e.resolved||e.applying||(e.resolveScheduled=!0,Promise.resolve().then(()=>{e.resolveScheduled=!1,e.resolved||this.resolvePendingDecorators(t)}))}static registerPendingDecorator(t,e,o,n,i,s,a){const c=`${t?.name||"anonymous"}:${(n||"class")+""}:${Date.now()}:${Math.random()}`,d=this.getTargetState(t),u=P(s),f={owner:t,target:e,propertyKey:n,descriptor:i,callback:o,argsOverride:u,argsFactory:()=>P(u),key:c,definitionKey:a},p=()=>{const e=d.flavour||l.get(t,r.FLAVOUR)||D.defaultFlavour;return this.applyPendingEntry(f,e),f.lastAppliedPass=d.passId,f.lastAppliedFlavour=e,e},h=()=>(d.pending.push(f),f);if(d.directApply){h();const e=p();return d.appliedCount=d.pending.length,d.flavour=e,l.set(t,r.DECORATION,!0),c}if(h(),d.applying)return p(),c;if(D.flavourResolver!==m)try{const e=D.flavourResolver(t);if(e&&e!==D.defaultFlavour)return this.resolvePendingDecorators(t,e),c}catch{}return this.scheduleDefaultResolve(t),c}static resolvePendingDecorators(t,e){const o="function"==typeof t?t:t?.constructor||t;if(!o)return;const n=this.getTargetState(o);if(n.resolveScheduled=!1,!n.pending.length&&!e)return;const i=e||n.flavour||l.get(o,r.FLAVOUR)||D.defaultFlavour;if(n.applying)return;const s=n.appliedCount||0;if(!e&&n.lastAppliedFlavour===i&&s>=n.pending.length)return;const a=!(!e||e===D.defaultFlavour)||n.directApply;if(!n.pending.length)return;const c=(n.passId||0)+1;n.passId=c,n.applying=!0;try{if(a)for(const t of n.pending){if(!t)continue;if(t.lastAppliedPass===c)continue;const e=this.shouldOverrideEntry(t,i);void 0!==t.metadataDiff||void 0!==t.descriptorSnapshot?t.lastAppliedFlavour!==i&&e?(t.metadataDiff?.length&&F(t.owner,t.metadataDiff),j(t),this.applyPendingEntry(t,i),t.lastAppliedPass=c,t.lastAppliedFlavour=i):t.lastAppliedPass=c:(this.applyPendingEntry(t,i),t.lastAppliedPass=c,t.lastAppliedFlavour=i)}else{let t=s;for(;t<n.pending.length;){const e=n.pending[t++];e&&e.lastAppliedPass!==c&&(this.applyPendingEntry(e,i),e.lastAppliedPass=c,e.lastAppliedFlavour=i)}n.appliedCount=n.pending.length}}finally{n.applying=!1}n.flavour=i,n.resolved=!0,n.lastAppliedFlavour=i,a&&(n.appliedCount=n.pending.length,i!==D.defaultFlavour&&(n.directApply=!0)),l.set(o,r.DECORATION,!0)}for(t){return this.key=t,this}decorate(t=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||t||this.flavour===D.defaultFlavour))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(),...e]):this.decorators=new Set([...e]),this}snapshotDecoratorArgs(){if(!this.decorators||!this.decorators.size)return;const t={};return Array.from(this.decorators.values()).forEach((e,r)=>{"object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args.map(t=>"object"==typeof t&&null!==t?A(t):t))}),Object.keys(t).length?t:void 0}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,e,r){function o(o,n,i){const s=e??D.flavourResolver(o),a=D.decorators[t];let c;const l=a[s]?a[s].extras:a[D.defaultFlavour].extras;c=a&&a[s]&&a[s].decorators&&a[s].decorators.size?a[s].decorators:a[D.defaultFlavour].decorators;const d=[...c?c.values():[]],u=[...(a[D.defaultFlavour]?.decorators||new Set).values()],f=d.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),p=u.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),h=[...d,...l?l.values():[]],y=d.length,g=r||{};let v=o,O=i;return h.forEach((t,e)=>{let r;if("object"==typeof t){const o=t,n=y>e?e:0,i=((y>e?g[n]:void 0)||("args"in o&&Array.isArray(o.args)?o.args:f[n]??p[n]??p[0]??[])).map(t=>"object"==typeof t&&null!==t?A(t):t);r=o.decorator(...i)}else{if("function"!=typeof t)throw Error("Unexpected decorator type: "+typeof t);r=t}const i=r(void 0===n?v:o,n,O);void 0===n?"function"==typeof i&&(v=i):void 0!==i&&(O=i)}),void 0===n?v:O}return Object.defineProperty(o,"name",{value:[e||"dynamic",t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=this.key,e=D.decorators[this.key]?.[this.flavour]?.decorators,o=this.decorators||e||new Set,n=void 0!==this.extras?this.extras:void 0;D.register(this.key,this.flavour,o,n);const i=(e,o,n)=>{const i=void 0!==o,s="function"==typeof e?e:e?.constructor||e;if(s&&i){l.innerGet(l.Symbol(s),r.FLAVOUR)||f(D.defaultFlavour)(s);const i=this.snapshotDecoratorArgs();return D.registerPendingDecorator(s,e,e=>this.decoratorFactory(t,e,i),o,n,i,t),D.resolvePendingDecorators(s),o&&!n&&p()(s,o),o&&n&&g()(s,o,n),n}const a=this.flavour===D.defaultFlavour?void 0:this.flavour;return this.decoratorFactory(t,a)(e,o,n)};try{Object.defineProperty(i,"name",{value:[this.flavour,t].join("_decorator_for_"),writable:!1})}catch(t){}return i}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 setResolver(t){D.flavourResolver=t}static shouldOverrideEntry(t,e){if(!t.definitionKey)return!1;if(e===D.defaultFlavour)return!1;const r=D.decorators[t.definitionKey];if(!r)return!1;const o=r[e];if(!o)return!1;const n=r[D.defaultFlavour],i=o.decorators&&o.decorators.size>0,s=o.extras instanceof Set&&o.extras.size>0;if(!i&&!s)return!1;if(!n)return!0;const a=!i||o.decorators===n.decorators,c=!s||o.extras===n.extras;return!(a&&c)}static for(t){return(new D).for(t)}static flavouredAs(t){return new D(t)}}function F(t,e){if(!e||!e.length)return;const r=l._metadata,o=l.Symbol(t),n=r[o]||(r[o]={});e.forEach(({path:t,previousValue:e,existed:r})=>{if(!t.length)return;let o=n;for(let e=0;e<t.length-1;e++){const r=t[e];E(o[r])||(o[r]={}),o=o[r]}const i=t[t.length-1];r?o[i]=A(e):(delete o[i],((t,e)=>{for(let r=e.length;r>0;r--){const o=e.slice(0,r),n=o.slice(0,-1),i=o[o.length-1],s=0===n.length?t:w(t,n);if(!s||!E(s))break;const a=s[i];if(!E(a)||Reflect.ownKeys(a).length>0)break;delete s[i]}})(n,t.slice(0,-1)))})}function j(t){if(!t||void 0===t.propertyKey)return;const e=t.target;if(!e||void 0===t.descriptorWasOwn)return;const r=t.propertyKey,o=t.descriptorSnapshot;t.descriptorWasOwn?o?Object.defineProperty(e,r,o):delete e[r]:(delete e[r],o&&Object.defineProperty(e,r,o))}export{D as Decoration,r as DecorationKeys,o as DecorationState,t as DefaultFlavour,n as DefaultMetadata,l as Metadata,e as ObjectKeySplitter,s as PACKAGE_NAME,i as VERSION,v as apply,S as description,a as getValueBySplitter,d as metadata,u as metadataArray,g as method,b as methodMetadata,h as param,y as paramMetadata,p as prop,O as propMetadata,c as setValueBySplitter,f as uses};
1
+ import"reflect-metadata";const t="decaf",e=".";var r,o;(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.FLAVOUR="flavour",t.DECORATION="decoration",t.DESIGN_TYPE="design:type",t.DESIGN_PARAMS="design:paramtypes",t.DESIGN_RETURN="design:returntype"})(r||(r={})),(t=>{t.PENDING="pending",t.ONGOING="ongoing"})(o||(o={}));const i={[r.PROPERTIES]:[]},n="##VERSION##",s="##PACKAGE##";function a(t,r,o=e){const i=r.split(o);let n=t;for(const t of i){if(null==n||!Object.prototype.hasOwnProperty.call(n,t))return;n=n[t]}return n}function c(t,r,o,i=e){const n=r.split(i).filter(t=>t.length>0);if(0===n.length)return;let s=t;for(let t=0;t<n.length-1;t++){const e=n[t];void 0!==s[e]&&null!==s[e]&&"object"==typeof s[e]||(s[e]={}),s=s[e]}s[n[n.length-1]]=o}class l{static{this._metadata={}}static{this._propertiesIndex={}}static{this.splitter=e}static{this.baseKey=r.REFLECT}static{this.mirror=!0}constructor(){}static Symbol(t){return Symbol.for([t.toString(),t.name].join(" - "))}static properties(t){const e=this.constr(t),r=this.Symbol(e),o=this._propertiesIndex[r];if(o&&o.size)return[...o];const i=this.get(e);return i&&i.properties?Object.keys(i.properties):void 0}static methods(t){const e=this.get(t,r.METHODS);if(e)return Object.keys(e)}static description(t,e){return this.get(t,this.key(r.DESCRIPTION,e||r.CLASS))}static flavourOf(t){return D.flavourResolver(t)}static flavouredAs(t){return this.innerGet(Symbol.for(r.FLAVOUR),t)||[]}static registeredFlavour(e){const o=this.innerGet(Symbol.for(r.FLAVOUR));if(!o)return;const i=this.constr(e);let n;for(const[e,r]of Object.entries(o))if(Array.isArray(r)&&r.some(t=>this.constr(t)===i)){if(e===t){n=n||e;continue}return e}return n}static params(t,e){return this.get(t,this.key(r.METHODS,e,r.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(t,e){return this.get(t,this.key(r.METHODS,e,r.DESIGN_RETURN))}static type(t,e){return this.get(t,this.key(r.PROPERTIES,e))}static constr(t){return t[r.CONSTRUCTOR]||t}static get(t,e){if(e===r.CONSTRUCTOR)return this.constr(t);const i=this.constr(t),n=this.collectConstructorChain(i);if(n.filter(t=>this.isDecorated(t)===o.PENDING).forEach(t=>{D.resolvePendingDecorators(t)}),0===n.length){const t=Symbol.for(i.toString());return this.innerGet(t,e)}const s=n.map(t=>this.innerGet(this.Symbol(t),e)).filter(t=>void 0!==t);return 0!==s.length?this.mergeMetadataChain(s):void 0}static isDecorated(t){const e=this.constr(t);return this.innerGet(this.Symbol(e),r.DECORATION)||!1}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 c(this._metadata[t],e,r,this.splitter);this._metadata[t][e]=r}static set(t,e,o){if(e===r.CONSTRUCTOR)return void Object.defineProperty(t,r.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);if("string"==typeof e){const t=`${r.PROPERTIES}${this.splitter}`;if(e.startsWith(t)){const r=e.slice(t.length);if(r.length){const t=this._propertiesIndex[i]||new Set;t.add(r),this._propertiesIndex[i]=t}}else if(e===r.PROPERTIES&&this.isPlainObject(o)){const t=this._propertiesIndex[i]||new Set;Object.keys(o).forEach(e=>{t.add(e)}),t.size&&(this._propertiesIndex[i]=t)}}this.innerSet(i,e,o),"string"!=typeof t&&l.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,e){const o=Symbol.for(r.LIBRARIES);if(this.innerGet(o,t))throw Error(`Library already ${t} registered with version ${e}`);this.innerSet(o,t,e)}static libraries(){const t=Symbol.for(r.LIBRARIES);return this.innerGet(t)||{}}static key(...t){return t.join(this.splitter)}}function d(t,e){return(o,i,n)=>{let s=o;if(i&&(s="function"==typeof o?o:o.constructor||o,void 0===n)){const t="function"==typeof o?o.prototype:o,e=Reflect.getOwnMetadata(r.DESIGN_TYPE,t,i),n=l.key(r.PROPERTIES,i.toString()),a=l.get(s,n);void 0===e&&void 0!==a||l.set(s,n,e)}l.set(s,t,e)}}function f(t,...e){return(r,o,i)=>{const n=l.get(r,t)||[];return v(d(o?l.key(t,o):t,[...new Set([...n,...e])]))(r,o,i)}}function u(t){return e=>{const o=l.constr(e);if(((t,e)=>{const o=l.constr(t),i=l.innerGet(l.Symbol(t),r.FLAVOUR)||D.defaultFlavour,n=(l.innerGet(Symbol.for(r.FLAVOUR),i)||[]).filter(t=>l.constr(t)!==o);l.set(r.FLAVOUR,i,n);const s=new Set(l.innerGet(Symbol.for(r.FLAVOUR),e)||[]);s.add(t),l.set(r.FLAVOUR,e,[...s])})(e,t),l.set(o,r.FLAVOUR,t),t!==D.defaultFlavour)D.resolvePendingDecorators(o,t);else{let t;try{t=D.flavourResolver?D.flavourResolver(o):void 0}catch{t=void 0}t&&t!==D.defaultFlavour?D.resolvePendingDecorators(o,t):D.markPending(o)}return e}}function p(){return(t,e)=>{const o="function"==typeof t?t.prototype:t,i=Reflect.getOwnMetadata(r.DESIGN_TYPE,o,e);return d(l.key(r.PROPERTIES,e),i)(t,e)}}function h(){return(t,e,o)=>{if(!e)throw Error("The @param decorator can only be applied to methods");g()(t,e,Object.getOwnPropertyDescriptor(t,e));const i=l.params(t.constructor,e);if(!i)throw Error("Missing parameter types for "+e);if(o>=i.length)throw Error(`Parameter index ${o} out of range for ${e+""}`);d(l.key(r.METHODS,e,o.toString()),i[o])(t,e)}}function y(t,e){return(o,i,n)=>v(h(),d(l.key(r.METHODS,i,t),e))(o,i,n)}function g(){return(t,e,o)=>{const i=Reflect.getOwnMetadata(r.DESIGN_PARAMS,t,e),n=Reflect.getOwnMetadata(r.DESIGN_RETURN,t,e);return v(d(l.key(r.METHODS,e,r.DESIGN_PARAMS),i),d(l.key(r.METHODS,e,r.DESIGN_RETURN),n))(t,e,o)}}function v(...t){return(e,r,o)=>{for(const i of t)void 0!==r?i(e,r,o):i(e)}}function O(t,e){return v(d(t,e),p())}function S(t,e){return v(d(t,e),g())}function b(t){return D.for(r.DESCRIPTION).define({decorator:t=>(e,o,i)=>d(l.key(r.DESCRIPTION,o?o.toString():r.CLASS),t)(e,o,i),args:[t]}).apply()}function E(t){const e=l.constr("function"==typeof t?t:t?.constructor),o=l.innerGet(l.Symbol(e),r.FLAVOUR);if(o&&o!==D.defaultFlavour)return o;const i="function"==typeof l.registeredFlavour?l.registeredFlavour(e):void 0;return i&&i!==D.defaultFlavour?i:o??D.defaultFlavour}function R(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)&&t.constructor===Object}function m(t){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map(t=>m(t));if(t instanceof Date)return new Date(t.getTime());if(t instanceof Set)return new Set(Array.from(t).map(t=>m(t)));if(t instanceof Map)return new Map(Array.from(t.entries()).map(([t,e])=>[t,m(e)]));if(t.constructor!==Object)return t;const e={};return Reflect.ownKeys(t).forEach(r=>{e[r]=m(t[r])}),e}function P(t,e,r=[],o=[]){return new Set([...t?Reflect.ownKeys(t):[],...e?Reflect.ownKeys(e):[]]).forEach(i=>{const n=!!t&&Object.prototype.hasOwnProperty.call(t,i),s=!!e&&Object.prototype.hasOwnProperty.call(e,i),a=n?t?.[i]:void 0,c=s?e?.[i]:void 0;if(s)return n?void(R(a)&&R(c)?P(a,c,[...r,i],o):a!==c&&o.push({path:[...r,i],previousValue:m(a),existed:!0})):R(c)?void P(void 0,c,[...r,i],o):void o.push({path:[...r,i],previousValue:void 0,existed:!1});o.push({path:[...r,i],previousValue:m(a),existed:!0})}),o}function A(t){if(!t)return;const e={};return Object.keys(t).forEach(r=>{e[r]=t[r].map(t=>"object"==typeof t&&null!==t?m(t):t)}),e}function w(t,e){let r=t;for(const t of e){if(!r||!R(r[t]))return;r=r[t]}return r}l.registerLibrary(s,n);class D{static{this.defaultFlavour=t}static{this.targetStates=new WeakMap}static{this.decorators={}}static{this.flavourResolver=E}constructor(t=D.defaultFlavour){this.flavour=t}static getTargetState(t){if(!t)throw Error("Invalid target provided to Decoration state tracker");let e=this.targetStates.get(t);return e||(e={pending:[],flavour:void 0,directApply:!1},this.targetStates.set(t,e)),e}static applyPendingEntry(t,e){const r=l._metadata,o=l.Symbol(t.owner),i=void 0===t.metadataDiff?m(r[o]):void 0;try{if(void 0!==t.propertyKey&&void 0===t.descriptorSnapshot&&t.target){const e=Object.getOwnPropertyDescriptor(t.target,t.propertyKey);t.descriptorWasOwn=Object.prototype.hasOwnProperty.call(t.target,t.propertyKey),t.descriptorSnapshot=e?{...e}:void 0}const n=t.argsFactory?t.argsFactory():A(t.argsOverride),s=t.callback(e,n)(t.target,t.propertyKey,t.descriptor);if(void 0!==t.propertyKey&&s&&t.target&&Object.defineProperty(t.target,t.propertyKey,s),void 0!==t.propertyKey&&void 0===t.descriptor&&p()(t.owner??t.target,t.propertyKey),void 0===t.metadataDiff){const e=m(r[o]);t.metadataDiff=P(i,e)}}catch(t){}}static markPending(t){if(!t)return;const e=this.getTargetState(t);e.resolved=!1,e.flavour||(e.flavour=D.defaultFlavour),l.set(t,r.DECORATION,o.PENDING)}static scheduleDefaultResolve(t){if(!t)return;const e=this.getTargetState(t);e.resolveScheduled||e.resolved||e.applying||(e.resolveScheduled=!0,Promise.resolve().then(()=>{e.resolveScheduled=!1,e.resolved||this.resolvePendingDecorators(t)}))}static registerPendingDecorator(t,e,o,i,n,s,a){const c=`${t?.name||"anonymous"}:${(i||"class")+""}:${Date.now()}:${Math.random()}`,d=this.getTargetState(t),f=A(s),u={owner:t,target:e,propertyKey:i,descriptor:n,callback:o,argsOverride:f,argsFactory:()=>A(f),key:c,definitionKey:a},p=()=>{const e=d.flavour||l.get(t,r.FLAVOUR)||D.defaultFlavour;return this.applyPendingEntry(u,e),u.lastAppliedPass=d.passId,u.lastAppliedFlavour=e,e},h=()=>(d.pending.push(u),u);if(d.directApply){h();const e=p();return d.appliedCount=d.pending.length,d.flavour=e,l.set(t,r.DECORATION,!0),c}if(h(),d.applying)return p(),c;if(D.flavourResolver!==E)try{const e=D.flavourResolver(t);if(e&&e!==D.defaultFlavour)return this.resolvePendingDecorators(t,e),c}catch{}return this.scheduleDefaultResolve(t),c}static resolvePendingDecorators(t,e){const o="function"==typeof t?t:t?.constructor||t;if(!o)return;const i=this.getTargetState(o);if(i.resolveScheduled=!1,!i.pending.length&&!e)return;const n=e||i.flavour||l.get(o,r.FLAVOUR)||D.defaultFlavour;if(i.applying)return;const s=i.appliedCount||0;if(!e&&i.lastAppliedFlavour===n&&s>=i.pending.length)return;const a=!(!e||e===D.defaultFlavour)||i.directApply;if(!i.pending.length)return;const c=(i.passId||0)+1;i.passId=c,i.applying=!0;try{if(a)for(const t of i.pending){if(!t)continue;if(t.lastAppliedPass===c)continue;const e=this.shouldOverrideEntry(t,n);void 0!==t.metadataDiff||void 0!==t.descriptorSnapshot?t.lastAppliedFlavour!==n&&e?(t.metadataDiff?.length&&j(t.owner,t.metadataDiff),F(t),this.applyPendingEntry(t,n),t.lastAppliedPass=c,t.lastAppliedFlavour=n):t.lastAppliedPass=c:(this.applyPendingEntry(t,n),t.lastAppliedPass=c,t.lastAppliedFlavour=n)}else{let t=s;for(;t<i.pending.length;){const e=i.pending[t++];e&&e.lastAppliedPass!==c&&(this.applyPendingEntry(e,n),e.lastAppliedPass=c,e.lastAppliedFlavour=n)}i.appliedCount=i.pending.length}}finally{i.applying=!1}i.flavour=n,i.resolved=!0,i.lastAppliedFlavour=n,a&&(i.appliedCount=i.pending.length,n!==D.defaultFlavour&&(i.directApply=!0)),l.set(o,r.DECORATION,!0)}for(t){return this.key=t,this}decorate(t=!1,...e){if(!this.key)throw Error("key must be provided before decorators can be added");if(!(e&&e.length||t||this.flavour===D.defaultFlavour))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(),...e]):this.decorators=new Set([...e]),this}snapshotDecoratorArgs(){if(!this.decorators||!this.decorators.size)return;const t={};return Array.from(this.decorators.values()).forEach((e,r)=>{"object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args.map(t=>"object"==typeof t&&null!==t?m(t):t))}),Object.keys(t).length?t:void 0}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,e,r){function o(o,i,n){const s=e??D.flavourResolver(o),a=D.decorators[t];let c;const l=a[s]?a[s].extras:a[D.defaultFlavour].extras;c=a&&a[s]&&a[s].decorators&&a[s].decorators.size?a[s].decorators:a[D.defaultFlavour].decorators;const d=[...c?c.values():[]],f=[...(a[D.defaultFlavour]?.decorators||new Set).values()],u=d.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),p=f.reduce((t,e,r)=>("object"==typeof e&&"args"in e&&Array.isArray(e.args)&&(t[r]=e.args),t),{}),h=[...d,...l?l.values():[]],y=d.length,g=r||{};let v=o,O=n;return h.forEach((t,e)=>{let r;if("object"==typeof t){const o=t,i=y>e?e:0,n=((y>e?g[i]:void 0)||("args"in o&&Array.isArray(o.args)?o.args:u[i]??p[i]??p[0]??[])).map(t=>"object"==typeof t&&null!==t?m(t):t);r=o.decorator(...n)}else{if("function"!=typeof t)throw Error("Unexpected decorator type: "+typeof t);r=t}const n=r(void 0===i?v:o,i,O);void 0===i?"function"==typeof n&&(v=n):void 0!==n&&(O=n)}),void 0===i?v:O}return Object.defineProperty(o,"name",{value:[e||"dynamic",t].join("_decorator_for_"),writable:!1}),o}apply(){if(!this.key)throw Error("No key provided for the decoration builder");const t=this.key,e=D.decorators[this.key]?.[this.flavour]?.decorators,o=this.decorators||e||new Set,i=void 0!==this.extras?this.extras:void 0;D.register(this.key,this.flavour,o,i);const n=(e,o,i)=>{const n=void 0!==o,s="function"==typeof e?e:e?.constructor||e;if(s&&n){l.innerGet(l.Symbol(s),r.FLAVOUR)||u(D.defaultFlavour)(s);const n=this.snapshotDecoratorArgs();return D.registerPendingDecorator(s,e,e=>this.decoratorFactory(t,e,n),o,i,n,t),D.resolvePendingDecorators(s),o&&!i&&p()(s,o),o&&i&&g()(s,o,i),i}const a=this.flavour===D.defaultFlavour?void 0:this.flavour;return this.decoratorFactory(t,a)(e,o,i)};try{Object.defineProperty(n,"name",{value:[this.flavour,t].join("_decorator_for_"),writable:!1})}catch(t){}return n}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 setResolver(t){D.flavourResolver=t}static shouldOverrideEntry(t,e){if(!t.definitionKey)return!1;if(e===D.defaultFlavour)return!1;const r=D.decorators[t.definitionKey];if(!r)return!1;const o=r[e];if(!o)return!1;const i=r[D.defaultFlavour],n=o.decorators&&o.decorators.size>0,s=o.extras instanceof Set&&o.extras.size>0;if(!n&&!s)return!1;if(!i)return!0;const a=!n||o.decorators===i.decorators,c=!s||o.extras===i.extras;return!(a&&c)}static for(t){return(new D).for(t)}static flavouredAs(t){return new D(t)}}function j(t,e){if(!e||!e.length)return;const o=l._metadata,i=l.Symbol(t),n=o[i]||(o[i]={});e.forEach(({path:t,previousValue:e,existed:o})=>{if(!t.length)return;if(t[0]===r.PROPERTIES)return;let i=n;for(let e=0;e<t.length-1;e++){const r=t[e];R(i[r])||(i[r]={}),i=i[r]}const s=t[t.length-1];o?i[s]=m(e):(delete i[s],((t,e)=>{for(let r=e.length;r>0;r--){const o=e.slice(0,r),i=o.slice(0,-1),n=o[o.length-1],s=0===i.length?t:w(t,i);if(!s||!R(s))break;const a=s[n];if(!R(a)||Reflect.ownKeys(a).length>0)break;delete s[n]}})(n,t.slice(0,-1)))})}function F(t){if(!t||void 0===t.propertyKey)return;const e=t.target;if(!e||void 0===t.descriptorWasOwn)return;const r=t.propertyKey,o=t.descriptorSnapshot;t.descriptorWasOwn?o?Object.defineProperty(e,r,o):delete e[r]:(delete e[r],o&&Object.defineProperty(e,r,o))}export{D as Decoration,r as DecorationKeys,o as DecorationState,t as DefaultFlavour,i as DefaultMetadata,l as Metadata,e as ObjectKeySplitter,s as PACKAGE_NAME,n as VERSION,v as apply,b as description,a as getValueBySplitter,d as metadata,f as metadataArray,g as method,S as methodMetadata,h as param,y as paramMetadata,p as prop,O as propMetadata,c as setValueBySplitter,u as uses};
2
2
  //# sourceMappingURL=decoration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decoration.js","sources":["../src/constants.ts","../src/version.ts","../src/metadata/Metadata.ts","../src/decorators.ts","../src/decoration/Decoration.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DecorationState","DefaultMetadata","PROPERTIES","VERSION","PACKAGE_NAME","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","flavourOf","Decoration","flavouredAs","flavour","innerGet","FLAVOUR","registeredFlavour","registry","constr","fallback","constructors","entries","Array","isArray","some","registered","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","CONSTRUCTOR","resolvedModel","collectConstructorChain","c","isDecorated","PENDING","forEach","fallbackSymbol","collectedValues","map","ctor","mergeMetadataChain","DECORATION","symbol","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","registerLibrary","library","version","LIBRARIES","libraries","strs","metadata","descriptor","targetModel","metadataArray","data","propertyKey","existingData","apply","Set","uses","object","canonical","flav","defaultFlavour","filtered","o","add","manageFlavourRMetadata","resolved","metadataTarget","designType","Reflect","getOwnMetadata","DESIGN_TYPE","method","getOwnPropertyDescriptor","paramTpes","paramMetadata","designParams","designReturn","decorators","decorator","propMetadata","methodMetadata","desc","define","original","args","flavourResolver","owner","item","Date","getTime","from","Map","v","clone","ownKeys","diffMetadataBuckets","before","after","basePath","prevExists","nextExists","prevValue","nextValue","previousValue","existed","cloneArgsOverrides","overrides","arg","getNodeAtPath","bucket","segment","targetStates","WeakMap","getTargetState","state","pending","directApply","applyPendingEntry","entry","metadataStore","metadataSymbol","beforeSnapshot","metadataDiff","descriptorSnapshot","currentDescriptor","descriptorWasOwn","overridesForCall","argsFactory","argsOverride","descriptorResult","callback","afterSnapshot","error","markPending","scheduleDefaultResolve","resolveScheduled","applying","Promise","resolve","then","resolvePendingDecorators","registerPendingDecorator","definitionKey","now","Math","random","argsOverrideClone","applyImmediately","flavourToUse","lastAppliedPass","passId","lastAppliedFlavour","registerEntry","appliedCount","eagerFlavour","resolvedFlavour","cursor","shouldFinalize","currentPass","hasOverride","shouldOverrideEntry","revertMetadataDiff","restorePropertyDescriptor","decorate","addon","extras","snapshotDecoratorArgs","size","find","d","extend","decoratorFactory","f","contextDecorator","cache","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","defaultArgsByIndex","toApply","baseLength","argsOverrides","currentTarget","decoratorFn","candidateIndex","invocationArgs","existingDecorators","decoratorsToRegister","extrasToRegister","register","wrapper","isMember","flavourHint","e","setResolver","resolver","flavourBucket","defaultBucket","hasDecorators","hasExtras","decoratorsMatch","extrasMatch","diff","ancestorPath","slice","parentPath","pruneEmptyAncestors","snapshot"],"mappings":"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"}
1
+ {"version":3,"file":"decoration.js","sources":["../src/constants.ts","../src/version.ts","../src/metadata/Metadata.ts","../src/decorators.ts","../src/decoration/Decoration.ts"],"sourcesContent":[null,null,null,null,null],"names":["DefaultFlavour","ObjectKeySplitter","DecorationKeys","DecorationState","DefaultMetadata","PROPERTIES","VERSION","PACKAGE_NAME","getValueBySplitter","obj","path","splitter","keys","split","current","key","Object","prototype","hasOwnProperty","call","setValueBySplitter","value","filter","k","length","i","undefined","Metadata","this","_metadata","_propertiesIndex","baseKey","REFLECT","mirror","constructor","Symbol","for","toString","name","join","properties","model","resolvedModel","constr","symbol","indexed","size","meta","get","methods","METHODS","description","prop","DESCRIPTION","CLASS","flavourOf","Decoration","flavouredAs","flavour","innerGet","FLAVOUR","registeredFlavour","registry","fallback","constructors","entries","Array","isArray","some","registered","params","DESIGN_PARAMS","param","index","Error","String","DESIGN_RETURN","type","CONSTRUCTOR","collectConstructorChain","c","isDecorated","PENDING","forEach","fallbackSymbol","collectedValues","map","ctor","mergeMetadataChain","DECORATION","chain","Function","push","parent","getPrototypeOf","reverse","values","acc","isPlainObject","mergePlainObjects","cloneMetadataValue","target","source","result","sourceValue","targetValue","proto","innerSet","set","defineProperty","enumerable","configurable","writable","propPrefix","startsWith","slice","Set","add","registerLibrary","library","version","LIBRARIES","libraries","strs","metadata","descriptor","targetModel","metadataTarget","designType","Reflect","getOwnMetadata","DESIGN_TYPE","propKey","existing","metadataArray","data","propertyKey","existingData","apply","uses","object","canonical","flav","defaultFlavour","filtered","o","manageFlavourRMetadata","resolved","method","getOwnPropertyDescriptor","paramTpes","paramMetadata","designParams","designReturn","decorators","decorator","propMetadata","methodMetadata","desc","define","original","args","flavourResolver","owner","item","Date","getTime","from","Map","v","clone","ownKeys","diffMetadataBuckets","before","after","basePath","prevExists","nextExists","prevValue","nextValue","previousValue","existed","cloneArgsOverrides","overrides","arg","getNodeAtPath","bucket","segment","targetStates","WeakMap","getTargetState","state","pending","directApply","applyPendingEntry","entry","metadataStore","metadataSymbol","beforeSnapshot","metadataDiff","descriptorSnapshot","currentDescriptor","descriptorWasOwn","overridesForCall","argsFactory","argsOverride","descriptorResult","callback","afterSnapshot","error","markPending","scheduleDefaultResolve","resolveScheduled","applying","Promise","resolve","then","resolvePendingDecorators","registerPendingDecorator","definitionKey","now","Math","random","argsOverrideClone","applyImmediately","flavourToUse","lastAppliedPass","passId","lastAppliedFlavour","registerEntry","appliedCount","eagerFlavour","resolvedFlavour","cursor","shouldFinalize","currentPass","hasOverride","shouldOverrideEntry","revertMetadataDiff","restorePropertyDescriptor","decorate","addon","extras","snapshotDecoratorArgs","find","d","extend","decoratorFactory","f","contextDecorator","cache","baseDecoratorsList","defaultDecoratorsList","baseArgsByIndex","reduce","accum","defaultArgsByIndex","toApply","baseLength","argsOverrides","currentTarget","decoratorFn","candidateIndex","invocationArgs","existingDecorators","decoratorsToRegister","extrasToRegister","register","wrapper","isMember","flavourHint","e","setResolver","resolver","flavourBucket","defaultBucket","hasDecorators","hasExtras","decoratorsMatch","extrasMatch","diff","ancestorPath","parentPath","pruneEmptyAncestors","snapshot"],"mappings":"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"}
@@ -239,6 +239,11 @@ class Decoration {
239
239
  entry.target) {
240
240
  Object.defineProperty(entry.target, entry.propertyKey, descriptorResult);
241
241
  }
242
+ if (typeof entry.propertyKey !== "undefined" &&
243
+ typeof entry.descriptor === "undefined") {
244
+ // Ensure property metadata is always registered for member decorators.
245
+ (0, decorators_1.prop)()(entry.owner ?? entry.target, entry.propertyKey);
246
+ }
242
247
  if (typeof entry.metadataDiff === "undefined") {
243
248
  const afterSnapshot = cloneMetadataValue(metadataStore[metadataSymbol]);
244
249
  entry.metadataDiff = diffMetadataBuckets(beforeSnapshot, afterSnapshot);
@@ -733,6 +738,8 @@ function revertMetadataDiff(owner, diff) {
733
738
  diff.forEach(({ path, previousValue, existed }) => {
734
739
  if (!path.length)
735
740
  return;
741
+ if (path[0] === constants_1.DecorationKeys.PROPERTIES)
742
+ return;
736
743
  let target = bucket;
737
744
  for (let i = 0; i < path.length - 1; i++) {
738
745
  const key = path[i];
@@ -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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"}