@inversifyjs/core 5.1.0 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/lib/cjs/binding/actions/getBindingId.d.ts +2 -0
  3. package/lib/cjs/binding/actions/getBindingId.d.ts.map +1 -0
  4. package/lib/cjs/binding/actions/getBindingId.js +16 -0
  5. package/lib/cjs/binding/actions/getBindingId.js.map +1 -0
  6. package/lib/cjs/binding/actions/getBindingId.spec.d.ts +2 -0
  7. package/lib/cjs/binding/actions/getBindingId.spec.d.ts.map +1 -0
  8. package/lib/cjs/binding/calculations/cloneBinding.d.ts +9 -0
  9. package/lib/cjs/binding/calculations/cloneBinding.d.ts.map +1 -0
  10. package/lib/cjs/binding/calculations/cloneBinding.js +37 -0
  11. package/lib/cjs/binding/calculations/cloneBinding.js.map +1 -0
  12. package/lib/cjs/binding/calculations/cloneBinding.spec.d.ts +2 -0
  13. package/lib/cjs/binding/calculations/cloneBinding.spec.d.ts.map +1 -0
  14. package/lib/cjs/binding/calculations/cloneBindingCache.d.ts +4 -0
  15. package/lib/cjs/binding/calculations/cloneBindingCache.d.ts.map +1 -0
  16. package/lib/cjs/binding/calculations/cloneBindingCache.js +14 -0
  17. package/lib/cjs/binding/calculations/cloneBindingCache.js.map +1 -0
  18. package/lib/cjs/binding/calculations/cloneBindingCache.spec.d.ts +2 -0
  19. package/lib/cjs/binding/calculations/cloneBindingCache.spec.d.ts.map +1 -0
  20. package/lib/cjs/binding/calculations/cloneConstantValueBinding.d.ts +6 -0
  21. package/lib/cjs/binding/calculations/cloneConstantValueBinding.d.ts.map +1 -0
  22. package/lib/cjs/binding/calculations/cloneConstantValueBinding.js +23 -0
  23. package/lib/cjs/binding/calculations/cloneConstantValueBinding.js.map +1 -0
  24. package/lib/cjs/binding/calculations/cloneConstantValueBinding.spec.d.ts +2 -0
  25. package/lib/cjs/binding/calculations/cloneConstantValueBinding.spec.d.ts.map +1 -0
  26. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.d.ts +6 -0
  27. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.d.ts.map +1 -0
  28. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.js +23 -0
  29. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.js.map +1 -0
  30. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.spec.d.ts +2 -0
  31. package/lib/cjs/binding/calculations/cloneDynamicValueBinding.spec.d.ts.map +1 -0
  32. package/lib/cjs/binding/calculations/cloneFactoryBinding.d.ts +7 -0
  33. package/lib/cjs/binding/calculations/cloneFactoryBinding.d.ts.map +1 -0
  34. package/lib/cjs/binding/calculations/cloneFactoryBinding.js +22 -0
  35. package/lib/cjs/binding/calculations/cloneFactoryBinding.js.map +1 -0
  36. package/lib/cjs/binding/calculations/cloneFactoryBinding.spec.d.ts +2 -0
  37. package/lib/cjs/binding/calculations/cloneFactoryBinding.spec.d.ts.map +1 -0
  38. package/lib/cjs/binding/calculations/cloneInstanceBinding.d.ts +6 -0
  39. package/lib/cjs/binding/calculations/cloneInstanceBinding.d.ts.map +1 -0
  40. package/lib/cjs/binding/calculations/cloneInstanceBinding.js +22 -0
  41. package/lib/cjs/binding/calculations/cloneInstanceBinding.js.map +1 -0
  42. package/lib/cjs/binding/calculations/cloneInstanceBinding.spec.d.ts +2 -0
  43. package/lib/cjs/binding/calculations/cloneInstanceBinding.spec.d.ts.map +1 -0
  44. package/lib/cjs/binding/calculations/cloneProviderBinding.d.ts +7 -0
  45. package/lib/cjs/binding/calculations/cloneProviderBinding.d.ts.map +1 -0
  46. package/lib/cjs/binding/calculations/cloneProviderBinding.js +22 -0
  47. package/lib/cjs/binding/calculations/cloneProviderBinding.js.map +1 -0
  48. package/lib/cjs/binding/calculations/cloneProviderBinding.spec.d.ts +2 -0
  49. package/lib/cjs/binding/calculations/cloneProviderBinding.spec.d.ts.map +1 -0
  50. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.d.ts +6 -0
  51. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.d.ts.map +1 -0
  52. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.js +23 -0
  53. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.js.map +1 -0
  54. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.spec.d.ts +2 -0
  55. package/lib/cjs/binding/calculations/cloneResolvedValueBinding.spec.d.ts.map +1 -0
  56. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.d.ts +6 -0
  57. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.d.ts.map +1 -0
  58. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.js +17 -0
  59. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.js.map +1 -0
  60. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.spec.d.ts +2 -0
  61. package/lib/cjs/binding/calculations/cloneServiceRedirectionBinding.spec.d.ts.map +1 -0
  62. package/lib/cjs/binding/models/BaseBinding.d.ts +1 -1
  63. package/lib/cjs/binding/models/BaseBinding.d.ts.map +1 -1
  64. package/lib/cjs/binding/services/BindingService.d.ts +6 -0
  65. package/lib/cjs/binding/services/BindingService.d.ts.map +1 -1
  66. package/lib/cjs/binding/services/BindingService.js +21 -2
  67. package/lib/cjs/binding/services/BindingService.js.map +1 -1
  68. package/lib/cjs/common/models/OneToManyMapStar.d.ts +5 -3
  69. package/lib/cjs/common/models/OneToManyMapStar.d.ts.map +1 -1
  70. package/lib/cjs/common/models/OneToManyMapStar.js +28 -6
  71. package/lib/cjs/common/models/OneToManyMapStar.js.map +1 -1
  72. package/lib/cjs/common/models/WeakList.d.ts +14 -0
  73. package/lib/cjs/common/models/WeakList.d.ts.map +1 -0
  74. package/lib/cjs/common/models/WeakList.int.spec.d.ts +2 -0
  75. package/lib/cjs/common/models/WeakList.int.spec.d.ts.map +1 -0
  76. package/lib/cjs/common/models/WeakList.js +71 -0
  77. package/lib/cjs/common/models/WeakList.js.map +1 -0
  78. package/lib/cjs/index.d.ts +4 -2
  79. package/lib/cjs/index.d.ts.map +1 -1
  80. package/lib/cjs/index.js +3 -1
  81. package/lib/cjs/index.js.map +1 -1
  82. package/lib/cjs/planning/calculations/buildFilteredServiceBindings.d.ts.map +1 -1
  83. package/lib/cjs/planning/calculations/buildFilteredServiceBindings.js +6 -2
  84. package/lib/cjs/planning/calculations/buildFilteredServiceBindings.js.map +1 -1
  85. package/lib/cjs/planning/services/PlanResultCacheService.d.ts.map +1 -1
  86. package/lib/cjs/planning/services/PlanResultCacheService.js +3 -2
  87. package/lib/cjs/planning/services/PlanResultCacheService.js.map +1 -1
  88. package/lib/esm/index.d.ts +6 -3
  89. package/lib/esm/index.d.ts.map +1 -1
  90. package/lib/esm/index.js +1 -1
  91. package/lib/esm/index.js.map +1 -1
  92. package/package.json +11 -11
package/lib/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{getOwnReflectMetadata as e,updateOwnReflectMetadata as t,setReflectMetadata as n}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as i}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as o,LazyServiceIdentifier as r,isPromise as a}from"@inversifyjs/common";const s={Request:"Request",Singleton:"Singleton",Transient:"Transient"},c={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ResolvedValue:"ResolvedValue",ServiceRedirection:"ServiceRedirection"};function*u(...e){for(const t of e)yield*t}class d{#e;#t;#n;constructor(e){this.#e=new Map,this.#t={};for(const t of Reflect.ownKeys(e))this.#t[t]=new Map;this.#n=e}add(e,t){this.#i(e).push(t);for(const n of Reflect.ownKeys(t))this.#o(n,t[n]).push(e)}clone(){const e=Reflect.ownKeys(this.#n),t=new d(this.#n);this.#r(this.#e,t.#e);for(const n of e)this.#r(this.#t[n],t.#t[n]);return t}get(e,t){return this.#t[e].get(t)}getAllKeys(e){return this.#t[e].keys()}removeByRelation(e,t){const n=this.get(e,t);if(void 0===n)return;const i=new Set(n);for(const n of i){const i=this.#e.get(n);if(void 0===i)throw new Error("Expecting model relation, none found");for(const o of i)o[e]===t&&this.#a(n,o);this.#e.delete(n)}}#i(e){let t=this.#e.get(e);return void 0===t&&(t=[],this.#e.set(e,t)),t}#o(e,t){let n=this.#t[e].get(t);return void 0===n&&(n=[],this.#t[e].set(t,n)),n}#r(e,t){for(const[n,i]of e)t.set(n,[...i])}#a(e,t){for(const n of Reflect.ownKeys(t))this.#s(e,n,t[n])}#s(e,t,n){const i=this.#t[t].get(n);if(void 0!==i){const o=i.indexOf(e);-1!==o&&i.splice(o,1),0===i.length&&this.#t[t].delete(n)}}}var l,p,f;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(l||(l={}));class g{#c;#u;constructor(e,t){this.#c=t??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#u=e}static build(e){return new g(e)}add(e,t){this.#c.add(e,t)}clone(){return new g(this.#u,this.#c.clone())}get(e){const t=[],n=this.#c.get(l.serviceId,e);void 0!==n&&t.push(n);const i=this.#u?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return u(...t)}removeAllByModuleId(e){this.#c.removeByRelation(l.moduleId,e)}removeAllByServiceId(e){this.#c.removeByRelation(l.serviceId,e)}}!function(e){e.id="id",e.moduleId="moduleId",e.serviceId="serviceId"}(p||(p={}));class m{#d;#u;constructor(e,t){this.#d=t??new d({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#u=e}static build(e){return new m(e)}clone(){return new m(this.#u,this.#d.clone())}get(e){return this.getNonParentBindings(e)??this.#u?.get(e)}getById(e){return this.#d.get(p.id,e)??this.#u?.getById(e)}getByModuleId(e){return this.#d.get(p.moduleId,e)??this.#u?.getByModuleId(e)}getNonParentBindings(e){return this.#d.get(p.serviceId,e)}getNonParentBoundServices(){return this.#d.getAllKeys(p.serviceId)}removeById(e){this.#d.removeByRelation(p.id,e)}removeAllByModuleId(e){this.#d.removeByRelation(p.moduleId,e)}removeAllByServiceId(e){this.#d.removeByRelation(p.serviceId,e)}set(e){const t={[p.id]:e.id,[p.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[p.moduleId]=e.moduleId),this.#d.add(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class h{#l;#u;constructor(e,t){this.#l=t??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#u=e}static build(e){return new h(e)}add(e,t){this.#l.add(e,t)}clone(){return new h(this.#u,this.#l.clone())}get(e){const t=[],n=this.#l.get(f.serviceId,e);void 0!==n&&t.push(n);const i=this.#u?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return u(...t)}removeAllByModuleId(e){this.#l.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#l.removeByRelation(f.serviceId,e)}}function v(e,t,n){const i=Array.isArray(e)?e:[e];if(void 0!==n)if("number"!=typeof n)Reflect.decorate(i,t.prototype,n);else for(const e of i)e(t,void 0,n);else Reflect.decorate(i,t)}const y="@inversifyjs/core/classMetadataReflectKey";function M(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const I="@inversifyjs/core/pendingClassMetadataCountReflectKey";const w=Symbol.for("@inversifyjs/core/InversifyCoreError");class b extends Error{[w];kind;constructor(e,t,n){super(t,n),this[w]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[w]}static isErrorOfKind(e,t){return b.is(e)&&e.kind===t}}var j,T,C;function S(t){const n=e(t,y)??M();if(!function(t){const n=e(t,I);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)void 0===t[e]&&n.push(e);if(n.length>0)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(t,n.constructorArguments),n;!function(e,t){const n=[];for(let i=0;i<t.constructorArguments.length;++i){const o=t.constructorArguments[i];void 0!==o&&o.kind!==T.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${i.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[i,o]of t.properties)o.kind===T.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${i.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===n.length)throw new b(j.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new b(j.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function A(){return 0}function $(e){return n=>{void 0!==n&&n.kind===T.unknown&&t(e,I,A,(e=>e-1))}}function x(e,t){return(...n)=>i=>{if(void 0===i)return e(...n);if(i.kind===C.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(i,...n)}}function B(e){if(e.kind!==T.unknown&&!0!==e.isFromTypescriptParamType)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(j||(j={})),function(e){e[e.unknown=32]="unknown"}(T||(T={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(C||(C={}));const R=x((function(e,t){return{kind:e,name:void 0,optional:!1,tags:new Map,value:t}}),(function(e,t,n){return B(e),{...e,kind:t,value:n}}));function k(e,t){return n=>{const i=n.properties.get(t);return n.properties.set(t,e(i)),n}}var P;function D(e,t,n,i){if(b.isErrorOfKind(i,j.injectionDecoratorConflict)){const o=function(e,t,n){if(void 0===n){if(void 0===t)throw new b(j.unknown,"Unexpected undefined property and index values");return{kind:P.property,property:t,targetClass:e.constructor}}return"number"==typeof n?{index:n,kind:P.parameter,targetClass:e}:{kind:P.method,method:t,targetClass:e}}(e,t,n);throw new b(j.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${i.message}\n\nDetails\n\n${function(e){switch(e.kind){case P.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case P.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case P.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(o)}`,{cause:i})}throw i}function V(e,n){return(i,o,r)=>{try{void 0===r?function(e,n){const i=F(e,n);return(e,n)=>{t(e.constructor,y,M,k(i(e),n))}}(e,n)(i,o):"number"==typeof r?function(e,n){const i=F(e,n);return(e,n,o)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,n))throw new b(j.injectionDecoratorConflict,`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${n?.toString()??""}" at class "${e.constructor.name}"`);t(e,y,M,function(e,t){return n=>{const i=n.constructorArguments[t];return n.constructorArguments[t]=e(i),n}}(i(e),o))}}(e,n)(i,o,r):function(e,n){const i=F(e,n);return(e,n,o)=>{if(!function(e){return void 0!==e.set}(o))throw new b(j.injectionDecoratorConflict,`Found an @inject decorator in a non setter property method.\nFound @inject decorator at method "${n.toString()}" at class "${e.constructor.name}"`);t(e.constructor,y,M,k(i(e),n))}}(e,n)(i,o,r)}catch(e){D(i,o,r,e)}}}function F(e,t){return n=>{const i=t(n);return t=>(i(t),e(t))}}function O(e){return V(R(C.singleInjection,e),$)}!function(e){e[e.method=0]="method",e[e.parameter=1]="parameter",e[e.property=2]="property"}(P||(P={}));const N="@inversifyjs/core/classIsInjectableFlagReflectKey";const E=[Array,BigInt,Boolean,Function,Number,Object,String];function U(n){const i=e(n,"design:paramtypes");void 0!==i&&t(n,y,M,function(e){return t=>(e.forEach(((e,n)=>{var i;void 0!==t.constructorArguments[n]||(i=e,E.includes(i))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:C.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))})),t)}(i))}function K(i){return o=>{!function(t){if(void 0!==e(t,N))throw new b(j.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${t.name}"`);n(t,N,!0)}(o),U(o),void 0!==i&&t(o,y,M,(e=>({...e,scope:i})))}}function q(e,t,n){let i;return e.extendConstructorArguments??!0?(i=[...t.constructorArguments],n.constructorArguments.map(((e,t)=>{i[t]=e}))):i=n.constructorArguments,i}function z(e,t,n){let i;return i=e.extendProperties??!0?new Map(u(t.properties,n.properties)):n.properties,i}function G(e){return n=>{const i=S(e.type);t(n,y,M,function(e,t){const n=n=>({constructorArguments:q(e,t,n),lifecycle:n.lifecycle,properties:z(e,t,n),scope:n.scope});return n}(e,i))}}function H(e){return t=>{const n=i(t);if(void 0===n)throw new b(j.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);G({...e,type:n})(t)}}function J(e){return V(R(C.multipleInjection,e),$)}function L(e){return n=>{void 0===n&&t(e,I,A,(e=>e+1))}}function Q(e){return t=>{const n=t??{kind:T.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===C.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(n)}}function W(e){const t=Q(function(e){return t=>{if(void 0!==t.name)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return V(t,L)}function X(e){if(e.optional)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function Y(){return V(Q(X),L)}function Z(){return(e,n,i)=>{try{t(e.constructor,y,M,(o=n,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=o,e}))}catch(t){D(e,n,void 0,t)}var o}}function _(){return(e,n,i)=>{try{t(e.constructor,y,M,(o=n,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=o,e}))}catch(t){D(e,n,void 0,t)}var o}}function ee(e,t){const n=Q(function(e,t){return n=>{if(n.tags.has(e))throw new b(j.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return V(n,L)}function te(){return{kind:C.unmanaged}}const ne=x(te,(function(e){if(B(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return te()}));function ie(){return V(ne(),$)}var oe;!function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection"}(oe||(oe={}));class re{#p;constructor(e){this.#p=e}get name(){return this.#p.elem.name}get serviceIdentifier(){return this.#p.elem.serviceIdentifier}get tags(){return this.#p.elem.tags}getAncestor(){if(void 0!==this.#p.previous)return new re(this.#p.previous)}}class ae{last;constructor(e){this.last=e}concat(e){return new ae({elem:e,previous:this.last})}[Symbol.iterator](){let e=this.last;return{next:()=>{if(void 0===e)return{done:!0,value:void 0};const t=e.elem;return e=e.previous,{done:!1,value:t}}}}}function se(e,t,n){const i=n?.customServiceIdentifier??t.serviceIdentifier,o=[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(t)));if(0===o.length&&void 0!==e.autobindOptions&&"function"==typeof i){const t=function(e,t){return{cache:{isRight:!1,value:void 0},id:0,implementationType:t,isSatisfiedBy:()=>!0,moduleId:void 0,onActivation:void 0,onDeactivation:void 0,scope:e.scope,serviceIdentifier:t,type:c.Instance}}(e.autobindOptions,i);e.setBinding(t),o.push(t)}return o}function ce(e){return void 0!==e.redirections}function ue(e,t,n,i){let r,a;ce(n)?(r=n.binding.targetServiceIdentifier,a=n.binding.serviceIdentifier):(r=n.serviceIdentifier,a=n.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,t,n,i,r){if(0!==e.length){const t=`Ambiguous bindings found for service: "${o(n)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case c.Instance:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case c.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", redirection: "${o(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${le(n,i)}".\n\n${pe(r)}`;throw new b(j.planning,t)}t||de(n,i,r)}(e,t,r,a,i):function(e,t,n,i,o){if(void 0!==e||t)return;de(n,i,o)}(e,t,r,a,i)}function de(e,t,n){const i=`No bindings found for service: "${o(e)}".\n\nTrying to resolve bindings for "${le(e,t)}".\n\n${pe(n)}`;throw new b(j.planning,i)}function le(e,t){return void 0===t?`${o(e)} (Root service)`:o(t)}function pe(e){const t=0===e.tags.size?"":`\n- tags:\n - ${[...e.tags.keys()].map((e=>e.toString())).join("\n - ")}`;return`Binding constraints:\n- service identifier: ${o(e.serviceIdentifier)}\n- name: ${e.name?.toString()??"-"}${t}`}function fe(e,t,n){if(1!==e.redirections.length)ue(e.redirections,t,e,n);else{const[i]=e.redirections;ce(i)&&fe(i,t,n)}}function ge(e,t,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[i]=e.bindings;ce(i)&&fe(i,t,n)}else ue(e.bindings,t,e,n)}function me(e,t){if(function(e){return e instanceof Error&&(e instanceof RangeError&&/stack space|call stack|too much recursion/i.test(e.message)||"InternalError"===e.name&&/too much recursion/.test(e.message))}(t)){const n=function(e){const t=[...e];if(0===t.length)return"(No dependency trace)";return t.map(o).join(" -> ")}(function(e){const t=new Set;for(const n of e.servicesBranch){if(t.has(n))return[...t,n];t.add(n)}return[...t]}(e));throw new b(j.planning,`Circular dependency found: ${n}`,{cause:t})}throw t}function he(e){try{const t=new Map;void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const n=new ae({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0}),i=new re(n.last),o=se(e,i),r=[],a={bindings:r,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(r.push(...we(e,n,o,a)),!e.rootConstraints.isMultiple){ge(a,e.rootConstraints.isOptional??!1,i);const[t]=r;a.bindings=t}return{tree:{root:a}}}catch(t){me(e,t)}}function ve(e,t,n,i){const o={binding:t,classMetadata:e.getClassMetadata(t.implementationType),constructorParams:[],parent:i,propertyParams:new Map};return je({autobindOptions:e.autobindOptions,getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:o,servicesBranch:e.servicesBranch,setBinding:e.setBinding},n)}function ye(e,t,n){if(n.kind===C.unmanaged)return;const i=r.is(n.value)?n.value.unwrap():n.value,o=t.concat({name:n.name,serviceIdentifier:i,tags:n.tags}),a=new re(o.last),s=se(e,a),c=[],u={bindings:c,parent:e.node,serviceIdentifier:i};if(c.push(...we(e,o,s,u)),n.kind===C.singleInjection){ge(u,n.optional,a);const[e]=c;u.bindings=e}return u}function Me(e,t,n){const i=r.is(n.value)?n.value.unwrap():n.value,o=t.concat({name:n.name,serviceIdentifier:i,tags:n.tags}),a=new re(o.last),s=se(e,a),c=[],u={bindings:c,parent:e.node,serviceIdentifier:i};if(c.push(...we(e,o,s,u)),n.kind===oe.singleInjection){ge(u,n.optional,a);const[e]=c;u.bindings=e}return u}function Ie(e,t,n,i){const o={binding:t,params:[],parent:i};return je({autobindOptions:e.autobindOptions,getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:o,servicesBranch:e.servicesBranch,setBinding:e.setBinding},n)}function we(e,t,n,i){const o=ce(i)?i.binding.targetServiceIdentifier:i.serviceIdentifier;e.servicesBranch.push(o);const r=[];for(const o of n)switch(o.type){case c.Instance:r.push(ve(e,o,t,i));break;case c.ResolvedValue:r.push(Ie(e,o,t,i));break;case c.ServiceRedirection:{const n=be(e,t,o,i);r.push(n);break}default:r.push({binding:o,parent:i})}return e.servicesBranch.pop(),r}function be(e,t,n,i){const o={binding:n,parent:i,redirections:[]},r=se(e,new re(t.last),{customServiceIdentifier:n.targetServiceIdentifier});return o.redirections.push(...we(e,t,r,o)),o}function je(e,t){return e.node.binding.type===c.Instance?function(e,t,n){const i=t.classMetadata;for(const[o,r]of i.constructorArguments.entries())t.constructorParams[o]=ye(e,n,r);for(const[o,r]of i.properties){const i=ye(e,n,r);void 0!==i&&t.propertyParams.set(o,i)}return e.node}(e,e.node,t):function(e,t,n){const i=t.binding.metadata;for(const[o,r]of i.arguments.entries())t.params[o]=Me(e,n,r);return e.node}(e,e.node,t)}var Te;!function(e){e[e.singleMandatory=0]="singleMandatory",e[e.singleOptional=1]="singleOptional",e[e.multipleMandatory=2]="multipleMandatory",e[e.multipleOptional=3]="multipleOptional",e[e.length=4]="length"}(Te||(Te={}));class Ce{#f;#g;#m;#h;#v;constructor(){this.#f=this.#y(),this.#g=this.#y(),this.#h=this.#y(),this.#m=this.#y(),this.#v=[]}clearCache(){for(const e of this.#M())e.clear();for(const e of this.#v)e.clearCache()}get(e){return void 0===e.name?void 0===e.tag?this.#I(this.#f,e).get(e.serviceIdentifier):this.#I(this.#m,e).get(e.serviceIdentifier)?.get(e.tag.key)?.get(e.tag.value):void 0===e.tag?this.#I(this.#g,e).get(e.serviceIdentifier)?.get(e.name):this.#I(this.#h,e).get(e.serviceIdentifier)?.get(e.name)?.get(e.tag.key)?.get(e.tag.value)}set(e,t){void 0===e.name?void 0===e.tag?this.#I(this.#f,e).set(e.serviceIdentifier,t):this.#w(this.#w(this.#I(this.#m,e),e.serviceIdentifier),e.tag.key).set(e.tag.value,t):void 0===e.tag?this.#w(this.#I(this.#g,e),e.serviceIdentifier).set(e.name,t):this.#w(this.#w(this.#w(this.#I(this.#h,e),e.serviceIdentifier),e.name),e.tag.key).set(e.tag.value,t)}subscribe(e){this.#v.push(e)}#y(){const e=new Array(Te.length);for(let t=0;t<e.length;++t)e[t]=new Map;return e}#w(e,t){let n=e.get(t);return void 0===n&&(n=new Map,e.set(t,n)),n}#I(e,t){return e[this.#b(t)]}#M(){return[...this.#f,...this.#g,...this.#h,...this.#m]}#b(e){return e.isMultiple?!0===e.optional?Te.multipleOptional:Te.multipleMandatory:!0===e.optional?Te.singleOptional:Te.singleMandatory}}function Se(e,t){return a(t)?(e.cache={isRight:!0,value:t},t.then((t=>Ae(e,t)))):Ae(e,t)}function Ae(e,t){return e.cache={isRight:!0,value:t},t}function $e(e,t,n){const i=e.getActivations(t);return void 0===i?n:a(n)?xe(e,n,i[Symbol.iterator]()):function(e,t,n){let i=t,o=n.next();for(;!0!==o.done;){const t=o.value(e.context,i);if(a(t))return xe(e,t,n);i=t,o=n.next()}return i}(e,n,i[Symbol.iterator]())}async function xe(e,t,n){let i=await t,o=n.next();for(;!0!==o.done;)i=await o.value(e.context,i),o=n.next();return i}function Be(e,t,n){let i=n;if(void 0!==t.onActivation){const n=t.onActivation;i=a(i)?i.then((t=>n(e.context,t))):n(e.context,i)}return $e(e,t.serviceIdentifier,i)}function Re(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;return Se(n,Be(t,n,e(t,n)))}}const ke=Re((function(e,t){return t.value}));function Pe(e){return e}function De(e,t){return(n,i)=>{const o=e(i);switch(o.scope){case s.Singleton:if(o.cache.isRight)return o.cache.value;return Se(o,Be(n,o,t(n,i)));case s.Request:{if(n.requestScopeCache.has(o.id))return n.requestScopeCache.get(o.id);const e=Be(n,o,t(n,i));return n.requestScopeCache.set(o.id,e),e}case s.Transient:return Be(n,o,t(n,i))}}}const Ve=(e=>De(Pe,e))((function(e,t){return t.value(e.context)}));const Fe=Re((function(e,t){return t.factory(e.context)}));function Oe(e,t,n){const i=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new b(j.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new b(j.resolution,`Expecting a "${n.toString()}" method when resolving "${t.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let i;try{i=e[n]()}catch(e){throw new b(j.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(a(i))return async function(e,t,n){try{await n}catch(n){throw new b(j.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:n})}}(t,n,i)}}(e,t,n);return a(i)?i.then((()=>e)):e}function Ne(e){return(t,n,i)=>{const o=new i.binding.implementationType(...t),r=e(n,o,i);return a(r)?r.then((()=>Oe(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName))):Oe(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)}}const Ee=Re((function(e,t){return t.provider(e.context)}));function Ue(e){return e.binding}function Ke(e){return e.binding}const qe=function(e){return(t,n,i)=>{const o=[];for(const[r,s]of i.propertyParams){const c=i.classMetadata.properties.get(r);if(void 0===c)throw new b(j.resolution,`Expecting metadata at property "${r.toString()}", none found`);c.kind!==C.unmanaged&&void 0!==s.bindings&&(n[r]=e(t,s),a(n[r])&&o.push((async()=>{n[r]=await n[r]})()))}if(o.length>0)return Promise.all(o).then((()=>{}))}}(Xe),ze=function(e){return function t(n,i){const o=[];for(const r of i.redirections)ce(r)?o.push(...t(n,r)):o.push(e(n,r));return o}}(We),Ge=function(e,t,n){return(i,o)=>{const r=e(i,o);return a(r)?t(r,i,o):n(r,i,o)}}(function(e){return(t,n)=>{const i=[];for(const o of n.constructorParams)void 0===o?i.push(void 0):i.push(e(t,o));return i.some(a)?Promise.all(i):i}}(Xe),function(e){return async(t,n,i)=>{const o=await t;return e(o,n,i)}}(Ne(qe)),Ne(qe)),He=function(e){return(t,n)=>{const i=e(t,n);return a(i)?i.then((e=>n.binding.factory(...e))):n.binding.factory(...i)}}(function(e){return(t,n)=>{const i=[];for(const o of n.params)i.push(e(t,o));return i.some(a)?Promise.all(i):i}}(Xe)),Je=(e=>De(Ue,e))(Ge),Le=(e=>De(Ke,e))(He);function Qe(e){return Xe(e,e.planResult.tree.root)}function We(e,t){switch(t.binding.type){case c.ConstantValue:return ke(e,t.binding);case c.DynamicValue:return Ve(e,t.binding);case c.Factory:return Fe(e,t.binding);case c.Instance:return Je(e,t);case c.Provider:return Ee(e,t.binding);case c.ResolvedValue:return Le(e,t)}}function Xe(e,t){if(void 0!==t.bindings)return Array.isArray(t.bindings)?function(e,t){const n=[];for(const i of t)ce(i)?n.push(...ze(e,i)):n.push(We(e,i));if(n.some(a))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(ce(t)){const n=ze(e,t);if(1===n.length)return n[0];throw new b(j.resolution,"Unexpected multiple resolved values on single injection")}return We(e,t)}(e,t.bindings)}function Ye(e){return void 0!==e.scope}function Ze(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function _e(e,t,n){const i=e.getDeactivations(t);if(void 0!==i)return a(n)?et(n,i[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const i=n.value(e);if(a(i))return et(e,t);n=t.next()}}(n,i[Symbol.iterator]())}async function et(e,t){const n=await e;let i=t.next();for(;!0!==i.done;)await i.value(n),i=t.next()}function tt(e,t){const n=function(e,t){if(t.type===c.Instance){const n=e.getClassMetadata(t.implementationType),i=t.cache.value;return a(i)?i.then((e=>Ze(n,e))):Ze(n,i)}}(e,t);return void 0===n?nt(e,t):n.then((()=>nt(e,t)))}function nt(e,t){const n=t.cache;return a(n.value)?n.value.then((n=>it(e,t,n))):it(e,t,n.value)}function it(e,t,n){let i;if(void 0!==t.onDeactivation){i=(0,t.onDeactivation)(n)}return void 0===i?_e(e,t.serviceIdentifier,n):i.then((()=>_e(e,t.serviceIdentifier,n)))}function ot(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)Ye(n)&&n.scope===s.Singleton&&n.cache.isRight&&t.push(n);return t}(t),i=[];for(const t of n){const n=tt(e,t);void 0!==n&&i.push(n)}return i.length>0?Promise.all(i).then((()=>{})):void 0}function rt(e,t){const n=e.getBindingsFromModule(t);return ot(e,n)}function at(e,t){const n=e.getBindings(t);return ot(e,n)}export{g as ActivationsService,m as BindingService,C as ClassElementMetadataKind,h as DeactivationsService,Ce as PlanResultCacheService,oe as ResolvedValueElementMetadataKind,s as bindingScopeValues,c as bindingTypeValues,v as decorate,S as getClassMetadata,O as inject,H as injectFromBase,K as injectable,J as multiInject,W as named,Y as optional,he as plan,Z as postConstruct,_ as preDestroy,Qe as resolve,ot as resolveBindingsDeactivations,rt as resolveModuleDeactivations,at as resolveServiceDeactivations,ee as tagged,ie as unmanaged};
1
+ import{getOwnReflectMetadata as e,setReflectMetadata as t,updateOwnReflectMetadata as n}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as i}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as o,LazyServiceIdentifier as r,isPromise as a}from"@inversifyjs/common";const s="@inversifyjs/container/bindingId";function c(){const i=e(Object,s)??0;return i===Number.MAX_SAFE_INTEGER?t(Object,s,Number.MIN_SAFE_INTEGER):n(Object,s,(()=>i),(e=>e+1)),i}const u={Request:"Request",Singleton:"Singleton",Transient:"Transient"},d={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ResolvedValue:"ResolvedValue",ServiceRedirection:"ServiceRedirection"};function*l(...e){for(const t of e)yield*t}class p{#e;#t;#n;constructor(e){this.#e=new Map,this.#t={};for(const t of Reflect.ownKeys(e))this.#t[t]=new Map;this.#n=e}add(e,t){this.#i(e).push(t);for(const n of Reflect.ownKeys(t))this.#o(n,t[n]).push(e)}clone(){const e=Reflect.ownKeys(this.#n),t=this._buildNewInstance(this.#n);this.#r(this.#e,t.#e);for(const n of e)this.#a(this.#t[n],t.#t[n]);return t}get(e,t){return this.#t[e].get(t)}getAllKeys(e){return this.#t[e].keys()}removeByRelation(e,t){const n=this.get(e,t);if(void 0===n)return;const i=new Set(n);for(const n of i){const i=this.#e.get(n);if(void 0===i)throw new Error("Expecting model relation, none found");for(const o of i)o[e]===t&&this.#s(n,o);this.#e.delete(n)}}_buildNewInstance(e){return new p(e)}_cloneModel(e){return e}_cloneRelation(e){return e}#i(e){let t=this.#e.get(e);return void 0===t&&(t=[],this.#e.set(e,t)),t}#o(e,t){let n=this.#t[e].get(t);return void 0===n&&(n=[],this.#t[e].set(t,n)),n}#a(e,t){for(const[n,i]of e){const e=new Array;for(const t of i)e.push(this._cloneModel(t));t.set(n,e)}}#r(e,t){for(const[n,i]of e){const e=new Array;for(const t of i)e.push(this._cloneRelation(t));t.set(n,e)}}#s(e,t){for(const n of Reflect.ownKeys(t))this.#c(e,n,t[n])}#c(e,t,n){const i=this.#t[t].get(n);if(void 0!==i){const o=i.indexOf(e);-1!==o&&i.splice(o,1),0===i.length&&this.#t[t].delete(n)}}}var f,g,h;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class m{#u;#d;constructor(e,t){this.#u=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#d=e}static build(e){return new m(e)}add(e,t){this.#u.add(e,t)}clone(){return new m(this.#d,this.#u.clone())}get(e){const t=[],n=this.#u.get(f.serviceId,e);void 0!==n&&t.push(n);const i=this.#d?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#u.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#u.removeByRelation(f.serviceId,e)}}function v(e){return e.isRight?{isRight:!0,value:e.value}:e}function y(e){switch(e.type){case d.ConstantValue:case d.DynamicValue:return function(e){return{cache:v(e.cache),id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type,value:e.value}}(e);case d.Factory:return function(e){return{cache:v(e.cache),factory:e.factory,id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case d.Instance:return function(e){return{cache:v(e.cache),id:e.id,implementationType:e.implementationType,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case d.Provider:return function(e){return{cache:v(e.cache),id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,provider:e.provider,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case d.ResolvedValue:return function(e){return{cache:v(e.cache),factory:e.factory,id:e.id,isSatisfiedBy:e.isSatisfiedBy,metadata:e.metadata,moduleId:e.moduleId,onActivation:e.onActivation,onDeactivation:e.onDeactivation,scope:e.scope,serviceIdentifier:e.serviceIdentifier,type:e.type}}(e);case d.ServiceRedirection:return function(e){return{id:e.id,isSatisfiedBy:e.isSatisfiedBy,moduleId:e.moduleId,serviceIdentifier:e.serviceIdentifier,targetServiceIdentifier:e.targetServiceIdentifier,type:e.type}}(e)}}!function(e){e.id="id",e.moduleId="moduleId",e.serviceId="serviceId"}(g||(g={}));class M extends p{_buildNewInstance(e){return new M(e)}_cloneModel(e){return y(e)}}class I{#l;#d;constructor(e,t){this.#l=t??new M({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#d=e}static build(e){return new I(e)}clone(){return new I(this.#d,this.#l.clone())}get(e){return this.getNonParentBindings(e)??this.#d?.get(e)}getBoundServices(){const e=new Set(this.#l.getAllKeys(g.serviceId));if(void 0!==this.#d)for(const t of this.#d.getBoundServices())e.add(t);return e}getById(e){return this.#l.get(g.id,e)??this.#d?.getById(e)}getByModuleId(e){return this.#l.get(g.moduleId,e)??this.#d?.getByModuleId(e)}getNonParentBindings(e){return this.#l.get(g.serviceId,e)}getNonParentBoundServices(){return this.#l.getAllKeys(g.serviceId)}removeById(e){this.#l.removeByRelation(g.id,e)}removeAllByModuleId(e){this.#l.removeByRelation(g.moduleId,e)}removeAllByServiceId(e){this.#l.removeByRelation(g.serviceId,e)}set(e){const t={[g.id]:e.id,[g.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[g.moduleId]=e.moduleId),this.#l.add(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(h||(h={}));class w{#p;#d;constructor(e,t){this.#p=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#d=e}static build(e){return new w(e)}add(e,t){this.#p.add(e,t)}clone(){return new w(this.#d,this.#p.clone())}get(e){const t=[],n=this.#p.get(h.serviceId,e);void 0!==n&&t.push(n);const i=this.#d?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#p.removeByRelation(h.moduleId,e)}removeAllByServiceId(e){this.#p.removeByRelation(h.serviceId,e)}}function b(e,t,n){const i=Array.isArray(e)?e:[e];if(void 0!==n)if("number"!=typeof n)Reflect.decorate(i,t.prototype,n);else for(const e of i)e(t,void 0,n);else Reflect.decorate(i,t)}const S="@inversifyjs/core/classMetadataReflectKey";function j(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const A="@inversifyjs/core/pendingClassMetadataCountReflectKey";const T=Symbol.for("@inversifyjs/core/InversifyCoreError");class R extends Error{[T];kind;constructor(e,t,n){super(t,n),this[T]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[T]}static isErrorOfKind(e,t){return R.is(e)&&e.kind===t}}var B,C,$;function x(t){const n=e(t,S)??j();if(!function(t){const n=e(t,A);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new R(B.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)void 0===t[e]&&n.push(e);if(n.length>0)throw new R(B.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(t,n.constructorArguments),n;!function(e,t){const n=[];for(let i=0;i<t.constructorArguments.length;++i){const o=t.constructorArguments[i];void 0!==o&&o.kind!==C.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${i.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[i,o]of t.properties)o.kind===C.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${i.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===n.length)throw new R(B.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new R(B.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function D(){return 0}function k(e){return t=>{void 0!==t&&t.kind===C.unknown&&n(e,A,D,(e=>e-1))}}function P(e,t){return(...n)=>i=>{if(void 0===i)return e(...n);if(i.kind===$.unmanaged)throw new R(B.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(i,...n)}}function O(e){if(e.kind!==C.unknown&&!0!==e.isFromTypescriptParamType)throw new R(B.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(B||(B={})),function(e){e[e.unknown=32]="unknown"}(C||(C={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}($||($={}));const V=P((function(e,t){return{kind:e,name:void 0,optional:!1,tags:new Map,value:t}}),(function(e,t,n){return O(e),{...e,kind:t,value:n}}));function F(e,t){return n=>{const i=n.properties.get(t);return n.properties.set(t,e(i)),n}}var N;function E(e,t,n,i){if(R.isErrorOfKind(i,B.injectionDecoratorConflict)){const o=function(e,t,n){if(void 0===n){if(void 0===t)throw new R(B.unknown,"Unexpected undefined property and index values");return{kind:N.property,property:t,targetClass:e.constructor}}return"number"==typeof n?{index:n,kind:N.parameter,targetClass:e}:{kind:N.method,method:t,targetClass:e}}(e,t,n);throw new R(B.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${i.message}\n\nDetails\n\n${function(e){switch(e.kind){case N.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case N.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case N.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(o)}`,{cause:i})}throw i}function U(e,t){return(i,o,r)=>{try{void 0===r?function(e,t){const i=K(e,t);return(e,t)=>{n(e.constructor,S,j,F(i(e),t))}}(e,t)(i,o):"number"==typeof r?function(e,t){const i=K(e,t);return(e,t,o)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,t))throw new R(B.injectionDecoratorConflict,`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${t?.toString()??""}" at class "${e.constructor.name}"`);n(e,S,j,function(e,t){return n=>{const i=n.constructorArguments[t];return n.constructorArguments[t]=e(i),n}}(i(e),o))}}(e,t)(i,o,r):function(e,t){const i=K(e,t);return(e,t,o)=>{if(!function(e){return void 0!==e.set}(o))throw new R(B.injectionDecoratorConflict,`Found an @inject decorator in a non setter property method.\nFound @inject decorator at method "${t.toString()}" at class "${e.constructor.name}"`);n(e.constructor,S,j,F(i(e),t))}}(e,t)(i,o,r)}catch(e){E(i,o,r,e)}}}function K(e,t){return n=>{const i=t(n);return t=>(i(t),e(t))}}function _(e){return U(V($.singleInjection,e),k)}!function(e){e[e.method=0]="method",e[e.parameter=1]="parameter",e[e.property=2]="property"}(N||(N={}));const q="@inversifyjs/core/classIsInjectableFlagReflectKey";const z=[Array,BigInt,Boolean,Function,Number,Object,String];function G(t){const i=e(t,"design:paramtypes");void 0!==i&&n(t,S,j,function(e){return t=>(e.forEach(((e,n)=>{var i;void 0!==t.constructorArguments[n]||(i=e,z.includes(i))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:$.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))})),t)}(i))}function L(i){return o=>{!function(n){if(void 0!==e(n,q))throw new R(B.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${n.name}"`);t(n,q,!0)}(o),G(o),void 0!==i&&n(o,S,j,(e=>({...e,scope:i})))}}function W(e,t,n){let i;return e.extendConstructorArguments??!0?(i=[...t.constructorArguments],n.constructorArguments.map(((e,t)=>{i[t]=e}))):i=n.constructorArguments,i}function X(e,t,n){let i;return i=e.extendProperties??!0?new Map(l(t.properties,n.properties)):n.properties,i}function H(e){return t=>{const i=x(e.type);n(t,S,j,function(e,t){const n=n=>({constructorArguments:W(e,t,n),lifecycle:n.lifecycle,properties:X(e,t,n),scope:n.scope});return n}(e,i))}}function J(e){return t=>{const n=i(t);if(void 0===n)throw new R(B.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);H({...e,type:n})(t)}}function Q(e){return U(V($.multipleInjection,e),k)}function Y(e){return t=>{void 0===t&&n(e,A,D,(e=>e+1))}}function Z(e){return t=>{const n=t??{kind:C.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===$.unmanaged)throw new R(B.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(n)}}function ee(e){const t=Z(function(e){return t=>{if(void 0!==t.name)throw new R(B.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return U(t,Y)}function te(e){if(e.optional)throw new R(B.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function ne(){return U(Z(te),Y)}function ie(){return(e,t,i)=>{try{n(e.constructor,S,j,(o=t,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new R(B.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=o,e}))}catch(n){E(e,t,void 0,n)}var o}}function oe(){return(e,t,i)=>{try{n(e.constructor,S,j,(o=t,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new R(B.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=o,e}))}catch(n){E(e,t,void 0,n)}var o}}function re(e,t){const n=Z(function(e,t){return n=>{if(n.tags.has(e))throw new R(B.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return U(n,Y)}function ae(){return{kind:$.unmanaged}}const se=P(ae,(function(e){if(O(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new R(B.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return ae()}));function ce(){return U(se(),k)}var ue;!function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection"}(ue||(ue={}));class de{#f;constructor(e){this.#f=e}get name(){return this.#f.elem.name}get serviceIdentifier(){return this.#f.elem.serviceIdentifier}get tags(){return this.#f.elem.tags}getAncestor(){if(void 0!==this.#f.previous)return new de(this.#f.previous)}}class le{last;constructor(e){this.last=e}concat(e){return new le({elem:e,previous:this.last})}[Symbol.iterator](){let e=this.last;return{next:()=>{if(void 0===e)return{done:!0,value:void 0};const t=e.elem;return e=e.previous,{done:!1,value:t}}}}}function pe(e,t,n){const i=n?.customServiceIdentifier??t.serviceIdentifier,o=[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(t)));if(0===o.length&&void 0!==e.autobindOptions&&"function"==typeof i){const t=function(e,t){const n=x(t),i=n.scope??e.scope;return{cache:{isRight:!1,value:void 0},id:c(),implementationType:t,isSatisfiedBy:()=>!0,moduleId:void 0,onActivation:void 0,onDeactivation:void 0,scope:i,serviceIdentifier:t,type:d.Instance}}(e.autobindOptions,i);e.setBinding(t),o.push(t)}return o}function fe(e){return void 0!==e.redirections}function ge(e,t,n,i){let r,a;fe(n)?(r=n.binding.targetServiceIdentifier,a=n.binding.serviceIdentifier):(r=n.serviceIdentifier,a=n.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,t,n,i,r){if(0!==e.length){const t=`Ambiguous bindings found for service: "${o(n)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case d.Instance:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case d.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", redirection: "${o(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${me(n,i)}".\n\n${ve(r)}`;throw new R(B.planning,t)}t||he(n,i,r)}(e,t,r,a,i):function(e,t,n,i,o){if(void 0!==e||t)return;he(n,i,o)}(e,t,r,a,i)}function he(e,t,n){const i=`No bindings found for service: "${o(e)}".\n\nTrying to resolve bindings for "${me(e,t)}".\n\n${ve(n)}`;throw new R(B.planning,i)}function me(e,t){return void 0===t?`${o(e)} (Root service)`:o(t)}function ve(e){const t=0===e.tags.size?"":`\n- tags:\n - ${[...e.tags.keys()].map((e=>e.toString())).join("\n - ")}`;return`Binding constraints:\n- service identifier: ${o(e.serviceIdentifier)}\n- name: ${e.name?.toString()??"-"}${t}`}function ye(e,t,n){if(1!==e.redirections.length)ge(e.redirections,t,e,n);else{const[i]=e.redirections;fe(i)&&ye(i,t,n)}}function Me(e,t,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[i]=e.bindings;fe(i)&&ye(i,t,n)}else ge(e.bindings,t,e,n)}function Ie(e,t){if(function(e){return e instanceof Error&&(e instanceof RangeError&&/stack space|call stack|too much recursion/i.test(e.message)||"InternalError"===e.name&&/too much recursion/.test(e.message))}(t)){const n=function(e){const t=[...e];if(0===t.length)return"(No dependency trace)";return t.map(o).join(" -> ")}(function(e){const t=new Set;for(const n of e.servicesBranch){if(t.has(n))return[...t,n];t.add(n)}return[...t]}(e));throw new R(B.planning,`Circular dependency found: ${n}`,{cause:t})}throw t}function we(e){try{const t=new Map;void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const n=new le({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0}),i=new de(n.last),o=pe(e,i),r=[],a={bindings:r,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(r.push(...Te(e,n,o,a)),!e.rootConstraints.isMultiple){Me(a,e.rootConstraints.isOptional??!1,i);const[t]=r;a.bindings=t}return{tree:{root:a}}}catch(t){Ie(e,t)}}function be(e,t,n,i){const o={binding:t,classMetadata:e.getClassMetadata(t.implementationType),constructorParams:[],parent:i,propertyParams:new Map};return Be({autobindOptions:e.autobindOptions,getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:o,servicesBranch:e.servicesBranch,setBinding:e.setBinding},n)}function Se(e,t,n){if(n.kind===$.unmanaged)return;const i=r.is(n.value)?n.value.unwrap():n.value,o=t.concat({name:n.name,serviceIdentifier:i,tags:n.tags}),a=new de(o.last),s=pe(e,a),c=[],u={bindings:c,parent:e.node,serviceIdentifier:i};if(c.push(...Te(e,o,s,u)),n.kind===$.singleInjection){Me(u,n.optional,a);const[e]=c;u.bindings=e}return u}function je(e,t,n){const i=r.is(n.value)?n.value.unwrap():n.value,o=t.concat({name:n.name,serviceIdentifier:i,tags:n.tags}),a=new de(o.last),s=pe(e,a),c=[],u={bindings:c,parent:e.node,serviceIdentifier:i};if(c.push(...Te(e,o,s,u)),n.kind===ue.singleInjection){Me(u,n.optional,a);const[e]=c;u.bindings=e}return u}function Ae(e,t,n,i){const o={binding:t,params:[],parent:i};return Be({autobindOptions:e.autobindOptions,getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:o,servicesBranch:e.servicesBranch,setBinding:e.setBinding},n)}function Te(e,t,n,i){const o=fe(i)?i.binding.targetServiceIdentifier:i.serviceIdentifier;e.servicesBranch.push(o);const r=[];for(const o of n)switch(o.type){case d.Instance:r.push(be(e,o,t,i));break;case d.ResolvedValue:r.push(Ae(e,o,t,i));break;case d.ServiceRedirection:{const n=Re(e,t,o,i);r.push(n);break}default:r.push({binding:o,parent:i})}return e.servicesBranch.pop(),r}function Re(e,t,n,i){const o={binding:n,parent:i,redirections:[]},r=pe(e,new de(t.last),{customServiceIdentifier:n.targetServiceIdentifier});return o.redirections.push(...Te(e,t,r,o)),o}function Be(e,t){return e.node.binding.type===d.Instance?function(e,t,n){const i=t.classMetadata;for(const[o,r]of i.constructorArguments.entries())t.constructorParams[o]=Se(e,n,r);for(const[o,r]of i.properties){const i=Se(e,n,r);void 0!==i&&t.propertyParams.set(o,i)}return e.node}(e,e.node,t):function(e,t,n){const i=t.binding.metadata;for(const[o,r]of i.arguments.entries())t.params[o]=je(e,n,r);return e.node}(e,e.node,t)}class Ce{#g;#h;#m;constructor(){this.#g=[],this.#h=8,this.#m=1024}*[Symbol.iterator](){let e=0;for(const t of this.#g){const n=t.deref();void 0===n?++e:yield n}this.#g.length>=this.#h&&this.#v(e)&&this.#y(e)}push(e){const t=new WeakRef(e);if(this.#g.push(t),this.#g.length>=this.#h&&this.#g.length%this.#m===0){let e=0;for(const t of this.#g)void 0===t.deref()&&++e;this.#v(e)&&this.#y(e)}}#y(e){const t=new Array(this.#g.length-e);let n=0;for(const e of this.#g)e.deref()&&(t[n++]=e);this.#g=t}#v(e){return e>=.5*this.#g.length}}var $e;!function(e){e[e.singleMandatory=0]="singleMandatory",e[e.singleOptional=1]="singleOptional",e[e.multipleMandatory=2]="multipleMandatory",e[e.multipleOptional=3]="multipleOptional",e[e.length=4]="length"}($e||($e={}));class xe{#M;#I;#w;#b;#S;constructor(){this.#M=this.#j(),this.#I=this.#j(),this.#w=this.#j(),this.#b=this.#j(),this.#S=new Ce}clearCache(){for(const e of this.#A())e.clear();for(const e of this.#S)e.clearCache()}get(e){return void 0===e.name?void 0===e.tag?this.#T(this.#M,e).get(e.serviceIdentifier):this.#T(this.#b,e).get(e.serviceIdentifier)?.get(e.tag.key)?.get(e.tag.value):void 0===e.tag?this.#T(this.#I,e).get(e.serviceIdentifier)?.get(e.name):this.#T(this.#w,e).get(e.serviceIdentifier)?.get(e.name)?.get(e.tag.key)?.get(e.tag.value)}set(e,t){void 0===e.name?void 0===e.tag?this.#T(this.#M,e).set(e.serviceIdentifier,t):this.#R(this.#R(this.#T(this.#b,e),e.serviceIdentifier),e.tag.key).set(e.tag.value,t):void 0===e.tag?this.#R(this.#T(this.#I,e),e.serviceIdentifier).set(e.name,t):this.#R(this.#R(this.#R(this.#T(this.#w,e),e.serviceIdentifier),e.name),e.tag.key).set(e.tag.value,t)}subscribe(e){this.#S.push(e)}#j(){const e=new Array($e.length);for(let t=0;t<e.length;++t)e[t]=new Map;return e}#R(e,t){let n=e.get(t);return void 0===n&&(n=new Map,e.set(t,n)),n}#T(e,t){return e[this.#B(t)]}#A(){return[...this.#M,...this.#I,...this.#w,...this.#b]}#B(e){return e.isMultiple?!0===e.optional?$e.multipleOptional:$e.multipleMandatory:!0===e.optional?$e.singleOptional:$e.singleMandatory}}function De(e,t){return a(t)?(e.cache={isRight:!0,value:t},t.then((t=>ke(e,t)))):ke(e,t)}function ke(e,t){return e.cache={isRight:!0,value:t},t}function Pe(e,t,n){const i=e.getActivations(t);return void 0===i?n:a(n)?Oe(e,n,i[Symbol.iterator]()):function(e,t,n){let i=t,o=n.next();for(;!0!==o.done;){const t=o.value(e.context,i);if(a(t))return Oe(e,t,n);i=t,o=n.next()}return i}(e,n,i[Symbol.iterator]())}async function Oe(e,t,n){let i=await t,o=n.next();for(;!0!==o.done;)i=await o.value(e.context,i),o=n.next();return i}function Ve(e,t,n){let i=n;if(void 0!==t.onActivation){const n=t.onActivation;i=a(i)?i.then((t=>n(e.context,t))):n(e.context,i)}return Pe(e,t.serviceIdentifier,i)}function Fe(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;return De(n,Ve(t,n,e(t,n)))}}const Ne=Fe((function(e,t){return t.value}));function Ee(e){return e}function Ue(e,t){return(n,i)=>{const o=e(i);switch(o.scope){case u.Singleton:if(o.cache.isRight)return o.cache.value;return De(o,Ve(n,o,t(n,i)));case u.Request:{if(n.requestScopeCache.has(o.id))return n.requestScopeCache.get(o.id);const e=Ve(n,o,t(n,i));return n.requestScopeCache.set(o.id,e),e}case u.Transient:return Ve(n,o,t(n,i))}}}const Ke=(e=>Ue(Ee,e))((function(e,t){return t.value(e.context)}));const _e=Fe((function(e,t){return t.factory(e.context)}));function qe(e,t,n){const i=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new R(B.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new R(B.resolution,`Expecting a "${n.toString()}" method when resolving "${t.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let i;try{i=e[n]()}catch(e){throw new R(B.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(a(i))return async function(e,t,n){try{await n}catch(n){throw new R(B.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:n})}}(t,n,i)}}(e,t,n);return a(i)?i.then((()=>e)):e}function ze(e){return(t,n,i)=>{const o=new i.binding.implementationType(...t),r=e(n,o,i);return a(r)?r.then((()=>qe(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName))):qe(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)}}const Ge=Fe((function(e,t){return t.provider(e.context)}));function Le(e){return e.binding}function We(e){return e.binding}const Xe=function(e){return(t,n,i)=>{const o=[];for(const[r,s]of i.propertyParams){const c=i.classMetadata.properties.get(r);if(void 0===c)throw new R(B.resolution,`Expecting metadata at property "${r.toString()}", none found`);c.kind!==$.unmanaged&&void 0!==s.bindings&&(n[r]=e(t,s),a(n[r])&&o.push((async()=>{n[r]=await n[r]})()))}if(o.length>0)return Promise.all(o).then((()=>{}))}}(nt),He=function(e){return function t(n,i){const o=[];for(const r of i.redirections)fe(r)?o.push(...t(n,r)):o.push(e(n,r));return o}}(tt),Je=function(e,t,n){return(i,o)=>{const r=e(i,o);return a(r)?t(r,i,o):n(r,i,o)}}(function(e){return(t,n)=>{const i=[];for(const o of n.constructorParams)void 0===o?i.push(void 0):i.push(e(t,o));return i.some(a)?Promise.all(i):i}}(nt),function(e){return async(t,n,i)=>{const o=await t;return e(o,n,i)}}(ze(Xe)),ze(Xe)),Qe=function(e){return(t,n)=>{const i=e(t,n);return a(i)?i.then((e=>n.binding.factory(...e))):n.binding.factory(...i)}}(function(e){return(t,n)=>{const i=[];for(const o of n.params)i.push(e(t,o));return i.some(a)?Promise.all(i):i}}(nt)),Ye=(e=>Ue(Le,e))(Je),Ze=(e=>Ue(We,e))(Qe);function et(e){return nt(e,e.planResult.tree.root)}function tt(e,t){switch(t.binding.type){case d.ConstantValue:return Ne(e,t.binding);case d.DynamicValue:return Ke(e,t.binding);case d.Factory:return _e(e,t.binding);case d.Instance:return Ye(e,t);case d.Provider:return Ge(e,t.binding);case d.ResolvedValue:return Ze(e,t)}}function nt(e,t){if(void 0!==t.bindings)return Array.isArray(t.bindings)?function(e,t){const n=[];for(const i of t)fe(i)?n.push(...He(e,i)):n.push(tt(e,i));if(n.some(a))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(fe(t)){const n=He(e,t);if(1===n.length)return n[0];throw new R(B.resolution,"Unexpected multiple resolved values on single injection")}return tt(e,t)}(e,t.bindings)}function it(e){return void 0!==e.scope}function ot(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function rt(e,t,n){const i=e.getDeactivations(t);if(void 0!==i)return a(n)?at(n,i[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const i=n.value(e);if(a(i))return at(e,t);n=t.next()}}(n,i[Symbol.iterator]())}async function at(e,t){const n=await e;let i=t.next();for(;!0!==i.done;)await i.value(n),i=t.next()}function st(e,t){const n=function(e,t){if(t.type===d.Instance){const n=e.getClassMetadata(t.implementationType),i=t.cache.value;return a(i)?i.then((e=>ot(n,e))):ot(n,i)}}(e,t);return void 0===n?ct(e,t):n.then((()=>ct(e,t)))}function ct(e,t){const n=t.cache;return a(n.value)?n.value.then((n=>ut(e,t,n))):ut(e,t,n.value)}function ut(e,t,n){let i;if(void 0!==t.onDeactivation){i=(0,t.onDeactivation)(n)}return void 0===i?rt(e,t.serviceIdentifier,n):i.then((()=>rt(e,t.serviceIdentifier,n)))}function dt(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)it(n)&&n.scope===u.Singleton&&n.cache.isRight&&t.push(n);return t}(t),i=[];for(const t of n){const n=st(e,t);void 0!==n&&i.push(n)}return i.length>0?Promise.all(i).then((()=>{})):void 0}function lt(e,t){const n=e.getBindingsFromModule(t);return dt(e,n)}function pt(e,t){const n=e.getBindings(t);return dt(e,n)}export{m as ActivationsService,I as BindingService,$ as ClassElementMetadataKind,w as DeactivationsService,xe as PlanResultCacheService,ue as ResolvedValueElementMetadataKind,u as bindingScopeValues,d as bindingTypeValues,b as decorate,c as getBindingId,x as getClassMetadata,_ as inject,J as injectFromBase,L as injectable,Q as multiInject,ee as named,ne as optional,we as plan,ie as postConstruct,oe as preDestroy,et as resolve,dt as resolveBindingsDeactivations,lt as resolveModuleDeactivations,pt as resolveServiceDeactivations,re as tagged,ce as unmanaged};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/actions/updateMaybeClassMetadataProperty.ts","../../src/decorator/models/DecoratorInfoKind.ts","../../src/metadata/calculations/handleInjectionError.ts","../../src/decorator/calculations/getDecoratorInfo.ts","../../src/decorator/calculations/stringifyDecoratorInfo.ts","../../src/metadata/decorators/injectBase.ts","../../src/metadata/actions/updateMaybeClassMetadataConstructorArgument.ts","../../src/metadata/decorators/inject.ts","../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts","../../src/metadata/calculations/isUserlandEmittedType.ts","../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts","../../src/reflectMetadata/data/typescriptDesignParameterTypesReflectKey.ts","../../src/metadata/calculations/buildClassElementMetadataFromTypescriptParameterType.ts","../../src/metadata/decorators/injectable.ts","../../src/metadata/actions/setIsInjectableFlag.ts","../../src/metadata/calculations/getExtendedConstructorArguments.ts","../../src/metadata/calculations/getExtendedProperties.ts","../../src/metadata/decorators/injectFrom.ts","../../src/metadata/decorators/injectFromBase.ts","../../src/metadata/decorators/multiInject.ts","../../src/metadata/actions/incrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildMaybeClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultMaybeClassElementMetadata.ts","../../src/metadata/decorators/named.ts","../../src/metadata/actions/updateMetadataName.ts","../../src/metadata/actions/updateMetadataOptional.ts","../../src/metadata/decorators/optional.ts","../../src/metadata/decorators/postConstruct.ts","../../src/metadata/actions/updateMaybeClassMetadataPostConstructor.ts","../../src/metadata/decorators/preDestroy.ts","../../src/metadata/actions/updateMaybeClassMetadataPreDestroy.ts","../../src/metadata/decorators/tagged.ts","../../src/metadata/actions/updateMetadataTag.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/metadata/models/ResolvedValueElementMetadataKind.ts","../../src/binding/models/BindingConstraintsImplementation.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/handlePlanError.ts","../../src/error/calculations/isStackOverflowError.ts","../../src/planning/calculations/plan.ts","../../src/planning/calculations/isInstanceBindingNode.ts","../../src/planning/services/PlanResultCacheService.ts","../../src/resolution/actions/cacheResolvedValue.ts","../../src/resolution/actions/resolveBindingServiceActivations.ts","../../src/resolution/actions/resolveBindingActivations.ts","../../src/resolution/actions/resolveSingletonScopedBinding.ts","../../src/resolution/actions/resolveConstantValueBinding.ts","../../src/resolution/calculations/resolveConstantValueBindingCallback.ts","../../src/common/calculations/getSelf.ts","../../src/resolution/actions/resolveScoped.ts","../../src/resolution/actions/resolveScopedBinding.ts","../../src/resolution/actions/resolveDynamicValueBinding.ts","../../src/resolution/calculations/resolveDynamicValueBindingCallback.ts","../../src/resolution/actions/resolveFactoryBinding.ts","../../src/resolution/calculations/resolveFactoryBindingCallback.ts","../../src/resolution/actions/resolvePostConstruct.ts","../../src/resolution/actions/resolveInstanceBindingNodeFromConstructorParams.ts","../../src/resolution/actions/resolveProviderBinding.ts","../../src/resolution/calculations/resolveProviderBindingCallback.ts","../../src/resolution/calculations/getInstanceNodeBinding.ts","../../src/resolution/calculations/getResolvedValueNodeBinding.ts","../../src/resolution/actions/resolve.ts","../../src/resolution/actions/setInstanceProperties.ts","../../src/resolution/actions/resolveServiceRedirectionBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingConstructorParams.ts","../../src/resolution/actions/resolveInstanceBindingNodeAsyncFromConstructorParams.ts","../../src/resolution/actions/resolveResolvedValueBindingNode.ts","../../src/resolution/actions/resolveResolvedValueBindingParams.ts","../../src/resolution/actions/resolveScopedInstanceBindingNode.ts","../../src/resolution/actions/resolveScopedResolvedValueBindingNode.ts","../../src/binding/calculations/isScopedBinding.ts","../../src/resolution/actions/resolveBindingPreDestroy.ts","../../src/resolution/actions/resolveBindingServiceDeactivations.ts","../../src/resolution/actions/resolveBindingDeactivations.ts","../../src/resolution/actions/resolveBindingsDeactivations.ts","../../src/resolution/actions/resolveModuleDeactivations.ts","../../src/resolution/actions/resolveServiceDeactivations.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ResolvedValue","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","add","model","relation","buildOrGetModelArray","push","relationKey","buildOrGetRelationModels","clone","properties","pushEntriesIntoMap","property","get","key","value","getAllKeys","keys","removeByRelation","models","undefined","uniqueModelsSet","Set","relations","Error","removeModelFromRelationMaps","delete","set","relationValue","source","target","removeModelFromRelationMap","relationModels","index","indexOf","splice","length","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","parentActivations","removeAllByModuleId","removeAllByServiceId","BindingService","bindingMaps","id","getNonParentBindings","getById","getByModuleId","getNonParentBoundServices","removeById","binding","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","parsedDecorators","Array","isArray","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","scope","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","type","classMetadata","getOwnReflectMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","metadata","updateOwnReflectMetadata","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","updateMaybeClassMetadataProperty","updateMetadata","propertyMetadata","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","parameterIndexOrDescriptor","targetClass","parameter","method","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","descriptor","isPropertySetter","injectMethod","updateTargetPendingClassMetadataCount","inject","singleInjection","classIsInjectableFlagReflectKey","NON_USERLAND_TYPES","BigInt","Boolean","Function","Number","Object","String","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","includes","buildClassElementMetadataFromTypescriptParameterType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","setReflectMetadata","setIsInjectableFlag","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","size","hasManagedMetadata","ResolvedValueElementMetadataKind","BindingConstraintsImplementation","node","elem","getAncestor","previous","SingleInmutableLinkedList","last","concat","iterator","next","done","buildFilteredServiceBindings","bindingConstraints","customServiceIdentifier","filteredBindings","getBindings","filter","isSatisfiedBy","autobindOptions","cache","isRight","implementationType","onActivation","onDeactivation","buildInstanceBinding","setBinding","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","targetServiceIdentifier","errorMessage","stringifyServiceIdentifier","stringifyBinding","stringifyParentServiceIdentifier","stringifyBindingConstraints","planning","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","stringifiedTags","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","handlePlanError","RangeError","test","isStackOverflowError","stringifiedCircularDependencies","serviceIdentifiers","serviceIdentifiersArray","stringifyServiceIdentifierTrace","servicesBranch","extractLikelyCircularDependency","plan","rootConstraints","tag","bindingConstraintsList","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","subplan","buildPlanServiceNodeFromClassElementMetadata","elementMetadata","LazyServiceIdentifier","unwrap","updatedBindingConstraintsList","buildPlanServiceNodeFromResolvedValueElementMetadata","buildResolvedValuePlanBindingNode","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","pop","entries","planServiceNode","subplanInstanceBindingNode","resolvedValueMetadata","arguments","subplanResolvedValueBindingNode","GetPlanBooleanOptionsMask","PlanResultCacheService","serviceIdToValuePlanMap","namedServiceIdToValuePlanMap","taggedServiceIdToValuePlanMap","namedTaggedServiceIdToValuePlanMap","subscribers","buildInitializedMapArray","clearCache","getMaps","clear","subscriber","getMapFromMapArray","planResult","getOrBuildMapValueFromMapMap","subscribe","mapArray","valueMap","getMapArrayIndex","multipleOptional","multipleMandatory","singleOptional","singleMandatory","cacheResolvedValue","resolvedValue","isPromise","then","syncResolvedValue","cacheSyncResolvedValue","resolveBindingServiceActivations","getActivations","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","context","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","resolved","resolveSingletonScopedBinding","resolve","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","requestScopeCache","resolveDynamicValueBinding","resolveScopedBinding","resolveFactoryBinding","factory","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","provider","getInstanceNodeBinding","getResolvedValueNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveResolvedValueBindingNode","resolveResolvedValueBindingParams","paramValues","resolvedParamValues","curryResolveResolvedValueBindingNode","paramsResolvedValues","param","curryResolveResolvedValueBindingParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","resolveScopedResolvedValueBindingNode","curryResolveScopedResolvedValueBindingNode","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/binding/actions/getBindingId.ts","../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/binding/calculations/cloneBindingCache.ts","../../src/binding/calculations/cloneBinding.ts","../../src/binding/calculations/cloneDynamicValueBinding.ts","../../src/binding/calculations/cloneFactoryBinding.ts","../../src/binding/calculations/cloneInstanceBinding.ts","../../src/binding/calculations/cloneProviderBinding.ts","../../src/binding/calculations/cloneResolvedValueBinding.ts","../../src/binding/calculations/cloneServiceRedirectionBinding.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/actions/updateMaybeClassMetadataProperty.ts","../../src/decorator/models/DecoratorInfoKind.ts","../../src/metadata/calculations/handleInjectionError.ts","../../src/decorator/calculations/getDecoratorInfo.ts","../../src/decorator/calculations/stringifyDecoratorInfo.ts","../../src/metadata/decorators/injectBase.ts","../../src/metadata/actions/updateMaybeClassMetadataConstructorArgument.ts","../../src/metadata/decorators/inject.ts","../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts","../../src/metadata/calculations/isUserlandEmittedType.ts","../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts","../../src/reflectMetadata/data/typescriptDesignParameterTypesReflectKey.ts","../../src/metadata/calculations/buildClassElementMetadataFromTypescriptParameterType.ts","../../src/metadata/decorators/injectable.ts","../../src/metadata/actions/setIsInjectableFlag.ts","../../src/metadata/calculations/getExtendedConstructorArguments.ts","../../src/metadata/calculations/getExtendedProperties.ts","../../src/metadata/decorators/injectFrom.ts","../../src/metadata/decorators/injectFromBase.ts","../../src/metadata/decorators/multiInject.ts","../../src/metadata/actions/incrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildMaybeClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultMaybeClassElementMetadata.ts","../../src/metadata/decorators/named.ts","../../src/metadata/actions/updateMetadataName.ts","../../src/metadata/actions/updateMetadataOptional.ts","../../src/metadata/decorators/optional.ts","../../src/metadata/decorators/postConstruct.ts","../../src/metadata/actions/updateMaybeClassMetadataPostConstructor.ts","../../src/metadata/decorators/preDestroy.ts","../../src/metadata/actions/updateMaybeClassMetadataPreDestroy.ts","../../src/metadata/decorators/tagged.ts","../../src/metadata/actions/updateMetadataTag.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/metadata/models/ResolvedValueElementMetadataKind.ts","../../src/binding/models/BindingConstraintsImplementation.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/handlePlanError.ts","../../src/error/calculations/isStackOverflowError.ts","../../src/planning/calculations/plan.ts","../../src/planning/calculations/isInstanceBindingNode.ts","../../src/common/models/WeakList.ts","../../src/planning/services/PlanResultCacheService.ts","../../src/resolution/actions/cacheResolvedValue.ts","../../src/resolution/actions/resolveBindingServiceActivations.ts","../../src/resolution/actions/resolveBindingActivations.ts","../../src/resolution/actions/resolveSingletonScopedBinding.ts","../../src/resolution/actions/resolveConstantValueBinding.ts","../../src/resolution/calculations/resolveConstantValueBindingCallback.ts","../../src/common/calculations/getSelf.ts","../../src/resolution/actions/resolveScoped.ts","../../src/resolution/actions/resolveScopedBinding.ts","../../src/resolution/actions/resolveDynamicValueBinding.ts","../../src/resolution/calculations/resolveDynamicValueBindingCallback.ts","../../src/resolution/actions/resolveFactoryBinding.ts","../../src/resolution/calculations/resolveFactoryBindingCallback.ts","../../src/resolution/actions/resolvePostConstruct.ts","../../src/resolution/actions/resolveInstanceBindingNodeFromConstructorParams.ts","../../src/resolution/actions/resolveProviderBinding.ts","../../src/resolution/calculations/resolveProviderBindingCallback.ts","../../src/resolution/calculations/getInstanceNodeBinding.ts","../../src/resolution/calculations/getResolvedValueNodeBinding.ts","../../src/resolution/actions/resolve.ts","../../src/resolution/actions/setInstanceProperties.ts","../../src/resolution/actions/resolveServiceRedirectionBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingConstructorParams.ts","../../src/resolution/actions/resolveInstanceBindingNodeAsyncFromConstructorParams.ts","../../src/resolution/actions/resolveResolvedValueBindingNode.ts","../../src/resolution/actions/resolveResolvedValueBindingParams.ts","../../src/resolution/actions/resolveScopedInstanceBindingNode.ts","../../src/resolution/actions/resolveScopedResolvedValueBindingNode.ts","../../src/binding/calculations/isScopedBinding.ts","../../src/resolution/actions/resolveBindingPreDestroy.ts","../../src/resolution/actions/resolveBindingServiceDeactivations.ts","../../src/resolution/actions/resolveBindingDeactivations.ts","../../src/resolution/actions/resolveBindingsDeactivations.ts","../../src/resolution/actions/resolveModuleDeactivations.ts","../../src/resolution/actions/resolveServiceDeactivations.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ID_METADATA","getBindingId","bindingId","getOwnReflectMetadata","Object","Number","MAX_SAFE_INTEGER","setReflectMetadata","MIN_SAFE_INTEGER","updateOwnReflectMetadata","id","bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ResolvedValue","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","add","model","relation","buildOrGetModelArray","push","relationKey","buildOrGetRelationModels","clone","properties","_buildNewInstance","pushRelationEntriesIntoRelationMap","property","pushModelEntriesIntoModelMap","get","key","value","getAllKeys","keys","removeByRelation","models","undefined","uniqueModelsSet","Set","relations","Error","removeModelFromRelationMaps","delete","_cloneModel","_cloneRelation","set","relationValue","source","target","modelsClone","Array","relationsClone","removeModelFromRelationMap","relationModels","index","indexOf","splice","length","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","parentActivations","removeAllByModuleId","removeAllByServiceId","cloneBindingCache","cache","isRight","cloneBinding","binding","type","isSatisfiedBy","onActivation","onDeactivation","scope","cloneDynamicValueBinding","factory","cloneFactoryBinding","implementationType","cloneInstanceBinding","provider","cloneProviderBinding","metadata","cloneResolvedValueBinding","targetServiceIdentifier","cloneServiceRedirectionBinding","OneToManyBindingMapStar","BindingService","bindingMaps","getNonParentBindings","getBoundServices","serviceIdentifierSet","getById","getByModuleId","getNonParentBoundServices","removeById","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","parsedDecorators","isArray","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","classMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","updateMaybeClassMetadataProperty","updateMetadata","propertyMetadata","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","parameterIndexOrDescriptor","targetClass","parameter","method","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","descriptor","isPropertySetter","injectMethod","updateTargetPendingClassMetadataCount","inject","singleInjection","classIsInjectableFlagReflectKey","NON_USERLAND_TYPES","BigInt","Boolean","Function","String","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","includes","buildClassElementMetadataFromTypescriptParameterType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","setIsInjectableFlag","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","size","hasManagedMetadata","ResolvedValueElementMetadataKind","BindingConstraintsImplementation","node","elem","getAncestor","previous","SingleInmutableLinkedList","last","concat","iterator","next","done","buildFilteredServiceBindings","bindingConstraints","customServiceIdentifier","filteredBindings","getBindings","filter","autobindOptions","buildInstanceBinding","setBinding","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","errorMessage","stringifyServiceIdentifier","stringifyBinding","stringifyParentServiceIdentifier","stringifyBindingConstraints","planning","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","stringifiedTags","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","handlePlanError","RangeError","test","isStackOverflowError","stringifiedCircularDependencies","serviceIdentifiers","serviceIdentifiersArray","stringifyServiceIdentifierTrace","servicesBranch","extractLikelyCircularDependency","plan","rootConstraints","tag","bindingConstraintsList","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","subplan","buildPlanServiceNodeFromClassElementMetadata","elementMetadata","LazyServiceIdentifier","unwrap","updatedBindingConstraintsList","buildPlanServiceNodeFromResolvedValueElementMetadata","buildResolvedValuePlanBindingNode","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","pop","entries","planServiceNode","subplanInstanceBindingNode","resolvedValueMetadata","arguments","subplanResolvedValueBindingNode","WeakList","list","minimumLengthToReallocate","modulusToReallocateOnPush","deadRefCount","weakRef","deref","shouldReallocate","reallocate","WeakRef","ref","newList","GetPlanBooleanOptionsMask","PlanResultCacheService","serviceIdToValuePlanMap","namedServiceIdToValuePlanMap","namedTaggedServiceIdToValuePlanMap","taggedServiceIdToValuePlanMap","subscribers","buildInitializedMapArray","clearCache","getMaps","clear","subscriber","getMapFromMapArray","planResult","getOrBuildMapValueFromMapMap","subscribe","mapArray","valueMap","getMapArrayIndex","multipleOptional","multipleMandatory","singleOptional","singleMandatory","cacheResolvedValue","resolvedValue","isPromise","then","syncResolvedValue","cacheSyncResolvedValue","resolveBindingServiceActivations","getActivations","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","context","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","resolved","resolveSingletonScopedBinding","resolve","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","requestScopeCache","resolveDynamicValueBinding","resolveScopedBinding","resolveFactoryBinding","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","getInstanceNodeBinding","getResolvedValueNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveResolvedValueBindingNode","resolveResolvedValueBindingParams","paramValues","resolvedParamValues","curryResolveResolvedValueBindingNode","paramsResolvedValues","param","curryResolveResolvedValueBindingParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","resolveScopedResolvedValueBindingNode","curryResolveScopedResolvedValueBindingNode","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"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"}
package/package.json CHANGED
@@ -5,25 +5,25 @@
5
5
  },
6
6
  "description": "InversifyJs core package",
7
7
  "dependencies": {
8
- "@inversifyjs/common": "1.5.0",
9
8
  "@inversifyjs/prototype-utils": "0.1.0",
9
+ "@inversifyjs/common": "1.5.0",
10
10
  "@inversifyjs/reflect-metadata-utils": "1.1.0"
11
11
  },
12
12
  "devDependencies": {
13
- "@stryker-mutator/core": "8.7.1",
14
- "@stryker-mutator/vitest-runner": "8.7.1",
15
- "@stryker-mutator/typescript-checker": "8.7.1",
16
- "@types/node": "22.13.11",
17
- "@vitest/coverage-v8": "3.0.9",
18
- "eslint": "9.23.0",
13
+ "@stryker-mutator/core": "9.0.1",
14
+ "@stryker-mutator/vitest-runner": "9.0.1",
15
+ "@stryker-mutator/typescript-checker": "9.0.1",
16
+ "@types/node": "22.15.24",
17
+ "@vitest/coverage-v8": "3.1.4",
18
+ "eslint": "9.27.0",
19
19
  "prettier": "3.5.3",
20
20
  "reflect-metadata": "0.2.2",
21
21
  "rimraf": "6.0.1",
22
- "rollup": "4.36.0",
22
+ "rollup": "4.41.1",
23
23
  "ts-loader": "9.5.2",
24
24
  "tslib": "2.8.1",
25
- "typescript": "5.8.2",
26
- "vitest": "3.0.9"
25
+ "typescript": "5.8.3",
26
+ "vitest": "3.1.4"
27
27
  },
28
28
  "homepage": "https://inversify.io",
29
29
  "keywords": [
@@ -57,7 +57,7 @@
57
57
  "type": "git",
58
58
  "url": "git+https://github.com/inversify/monorepo.git"
59
59
  },
60
- "version": "5.1.0",
60
+ "version": "5.3.0",
61
61
  "scripts": {
62
62
  "build": "pnpm run build:cjs && pnpm run build:esm",
63
63
  "build:cjs": "tsc --build tsconfig.cjs.json && pnpm exec foundation-ts-package-cjs ./lib/cjs",