@decaf-ts/decoration 0.6.2 → 0.6.3
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/dist/decoration.cjs +1 -1
- package/dist/decoration.cjs.map +1 -1
- package/dist/decoration.js +1 -1
- package/dist/decoration.js.map +1 -1
- package/lib/decorators.cjs +9 -0
- package/lib/decorators.d.ts +1 -0
- package/lib/decorators.js.map +1 -1
- package/lib/esm/decorators.d.ts +1 -0
- package/lib/esm/decorators.js +8 -0
- package/lib/esm/decorators.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/decoration.cjs
CHANGED
|
@@ -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
|
|
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)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={});
|
|
2
2
|
//# sourceMappingURL=decoration.cjs.map
|
package/dist/decoration.cjs.map
CHANGED
|
@@ -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"],"mappings":"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"}
|
|
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,EACL,OAAOzB,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"}
|
package/dist/decoration.js
CHANGED
|
@@ -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)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():[]],
|
|
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)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};
|
|
2
2
|
//# sourceMappingURL=decoration.js.map
|
package/dist/decoration.js.map
CHANGED
|
@@ -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","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","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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"}
|
package/lib/decorators.cjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.metadata = metadata;
|
|
4
|
+
exports.metadataArray = metadataArray;
|
|
4
5
|
exports.prop = prop;
|
|
5
6
|
exports.param = param;
|
|
6
7
|
exports.paramMetadata = paramMetadata;
|
|
@@ -28,6 +29,14 @@ function metadata(key, value) {
|
|
|
28
29
|
Metadata_1.Metadata.set(prop ? model.constructor : model, key, value);
|
|
29
30
|
};
|
|
30
31
|
}
|
|
32
|
+
function metadataArray(key, ...data) {
|
|
33
|
+
return function metadataArray(target, propertyKey, descriptor) {
|
|
34
|
+
const existingData = Metadata_1.Metadata.get(target, key) || [];
|
|
35
|
+
const metaKey = propertyKey ? Metadata_1.Metadata.key(key, propertyKey) : key;
|
|
36
|
+
const arr = [metadata(metaKey, [...new Set([...existingData, ...data])])];
|
|
37
|
+
return apply(...arr)(target, propertyKey, descriptor);
|
|
38
|
+
};
|
|
39
|
+
}
|
|
31
40
|
/**
|
|
32
41
|
* @description Captures and stores a property's design type.
|
|
33
42
|
* @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
|
package/lib/decorators.d.ts
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* @category Decorators
|
|
9
9
|
*/
|
|
10
10
|
export declare function metadata(key: string, value: any): (model: any, prop?: any, descriptor?: PropertyDescriptor | number) => void;
|
|
11
|
+
export declare function metadataArray(key: string, ...data: any[]): (target: any, propertyKey?: any, descriptor?: any) => void;
|
|
11
12
|
/**
|
|
12
13
|
* @description Captures and stores a property's design type.
|
|
13
14
|
* @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
|
package/lib/decorators.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":";;AAaA,
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/decorators.d.ts
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* @category Decorators
|
|
9
9
|
*/
|
|
10
10
|
export declare function metadata(key: string, value: any): (model: any, prop?: any, descriptor?: PropertyDescriptor | number) => void;
|
|
11
|
+
export declare function metadataArray(key: string, ...data: any[]): (target: any, propertyKey?: any, descriptor?: any) => void;
|
|
11
12
|
/**
|
|
12
13
|
* @description Captures and stores a property's design type.
|
|
13
14
|
* @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
|
package/lib/esm/decorators.js
CHANGED
|
@@ -17,6 +17,14 @@ export function metadata(key, value) {
|
|
|
17
17
|
Metadata.set(prop ? model.constructor : model, key, value);
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
+
export function metadataArray(key, ...data) {
|
|
21
|
+
return function metadataArray(target, propertyKey, descriptor) {
|
|
22
|
+
const existingData = Metadata.get(target, key) || [];
|
|
23
|
+
const metaKey = propertyKey ? Metadata.key(key, propertyKey) : key;
|
|
24
|
+
const arr = [metadata(metaKey, [...new Set([...existingData, ...data])])];
|
|
25
|
+
return apply(...arr)(target, propertyKey, descriptor);
|
|
26
|
+
};
|
|
27
|
+
}
|
|
20
28
|
/**
|
|
21
29
|
* @description Captures and stores a property's design type.
|
|
22
30
|
* @summary Decorator factory that reads the reflected `design:type` for a property and registers it in the metadata store under the properties map.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,+BAA4B;AAC/C,OAAO,EAAE,cAAc,EAAE,uBAAoB;AAC7C,OAAO,EAAE,UAAU,EAAE,mCAAgC;AAErD;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,KAAU;IAC9C,OAAO,SAAS,QAAQ,CACtB,KAAU,
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
package/lib/esm/index.js
CHANGED
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.
|
|
35
|
+
exports.VERSION = "0.6.2";
|
|
36
36
|
index_1.Metadata.registerLibrary("@decaf-ts/decoration", exports.VERSION);
|
|
37
37
|
//# sourceMappingURL=index.js.map
|
package/lib/index.d.ts
CHANGED