@inversifyjs/core 5.3.0 → 5.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @inversifyjs/core
2
2
 
3
+ ## 5.3.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+ - @inversifyjs/common@1.5.1
9
+ - @inversifyjs/reflect-metadata-utils@1.2.0
10
+ - @inversifyjs/prototype-utils@0.1.1
11
+
12
+ ## 5.3.1
13
+
14
+ ### Patch Changes
15
+
16
+ - 38d1a6d: Fixed BindingService clone method.
17
+
3
18
  ## 5.3.0
4
19
 
5
20
  ### Minor Changes
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,MAAM,qBAAqB,CAAC,SAAS,SAAS,MAAM,IAAI;KAC3D,IAAI,IAAI,MAAM,SAAS,GAAG;QACzB,UAAU,EAAE,SAAS,SAAS,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;KAC9D;CACF,CAAC;AAMF;;GAEG;AACH,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM,CAC5D,YAAW,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;;gBAM7C,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC;IAY3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;IAY7C,KAAK,IAAI,IAAI;IAsBb,GAAG,CAAC,IAAI,SAAS,MAAM,SAAS,EACrC,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS;IAIxB,UAAU,CAAC,IAAI,SAAS,MAAM,SAAS,EAC5C,GAAG,EAAE,IAAI,GACR,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAIrB,gBAAgB,CAAC,IAAI,SAAS,MAAM,SAAS,EAClD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,IAAI;IA2BP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,GAAG,IAAI;IAIzE,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI5C,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS;CA+FzD"}
1
+ {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,MAAM,qBAAqB,CAAC,SAAS,SAAS,MAAM,IAAI;KAC3D,IAAI,IAAI,MAAM,SAAS,GAAG;QACzB,UAAU,EAAE,SAAS,SAAS,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;KAC9D;CACF,CAAC;AAMF;;GAEG;AACH,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM,CAC5D,YAAW,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;;gBAM7C,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC;IAY3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;IAY7C,KAAK,IAAI,IAAI;IA8Bb,GAAG,CAAC,IAAI,SAAS,MAAM,SAAS,EACrC,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS;IAIxB,UAAU,CAAC,IAAI,SAAS,MAAM,SAAS,EAC5C,GAAG,EAAE,IAAI,GACR,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAIrB,gBAAgB,CAAC,IAAI,SAAS,MAAM,SAAS,EAClD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,IAAI;IA2BP,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC,GAAG,IAAI;IAIzE,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI5C,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS;CA0JzD"}
@@ -24,11 +24,13 @@ class OneToManyMapStar {
24
24
  }
25
25
  }
26
26
  clone() {
27
+ const modelToCloneModelMap = this.#buildModelToCloneModelMap();
28
+ const relationToCloneRelationMap = this.#buildRelationToRelationModelMap();
27
29
  const properties = Reflect.ownKeys(this.#spec);
28
30
  const clone = this._buildNewInstance(this.#spec);
29
- this.#pushRelationEntriesIntoRelationMap(this.#modelToRelationMap, clone.#modelToRelationMap);
31
+ this.#pushRelationEntriesIntoRelationMap(this.#modelToRelationMap, clone.#modelToRelationMap, modelToCloneModelMap, relationToCloneRelationMap);
30
32
  for (const property of properties) {
31
- this.#pushModelEntriesIntoModelMap(this.#relationToModelsMaps[property], clone.#relationToModelsMaps[property]);
33
+ this.#pushModelEntriesIntoModelMap(this.#relationToModelsMaps[property], clone.#relationToModelsMaps[property], modelToCloneModelMap);
32
34
  }
33
35
  return clone;
34
36
  }
@@ -66,6 +68,24 @@ class OneToManyMapStar {
66
68
  _cloneRelation(relation) {
67
69
  return relation;
68
70
  }
71
+ #buildModelToCloneModelMap() {
72
+ const modelToCloneModelMap = new Map();
73
+ for (const model of this.#modelToRelationMap.keys()) {
74
+ const clonedModel = this._cloneModel(model);
75
+ modelToCloneModelMap.set(model, clonedModel);
76
+ }
77
+ return modelToCloneModelMap;
78
+ }
79
+ #buildRelationToRelationModelMap() {
80
+ const relationToCloneRelationMap = new Map();
81
+ for (const relations of this.#modelToRelationMap.values()) {
82
+ for (const relation of relations) {
83
+ const clonedRelation = this._cloneRelation(relation);
84
+ relationToCloneRelationMap.set(relation, clonedRelation);
85
+ }
86
+ }
87
+ return relationToCloneRelationMap;
88
+ }
69
89
  #buildOrGetModelArray(model) {
70
90
  let relations = this.#modelToRelationMap.get(model);
71
91
  if (relations === undefined) {
@@ -82,22 +102,36 @@ class OneToManyMapStar {
82
102
  }
83
103
  return models;
84
104
  }
85
- #pushModelEntriesIntoModelMap(source, target) {
86
- for (const [relation, models] of source) {
105
+ #getCloneModel(model, modelToCloneModelMap) {
106
+ const clonedModel = modelToCloneModelMap.get(model);
107
+ if (clonedModel === undefined) {
108
+ throw new Error('Expecting model to be cloned, none found');
109
+ }
110
+ return clonedModel;
111
+ }
112
+ #getCloneRelation(relation, relationToCloneRelationMap) {
113
+ const clonedRelation = relationToCloneRelationMap.get(relation);
114
+ if (clonedRelation === undefined) {
115
+ throw new Error('Expecting relation to be cloned, none found');
116
+ }
117
+ return clonedRelation;
118
+ }
119
+ #pushModelEntriesIntoModelMap(source, target, modelToCloneModelMap) {
120
+ for (const [relationValue, models] of source) {
87
121
  const modelsClone = new Array();
88
122
  for (const model of models) {
89
- modelsClone.push(this._cloneModel(model));
123
+ modelsClone.push(this.#getCloneModel(model, modelToCloneModelMap));
90
124
  }
91
- target.set(relation, modelsClone);
125
+ target.set(relationValue, modelsClone);
92
126
  }
93
127
  }
94
- #pushRelationEntriesIntoRelationMap(source, target) {
128
+ #pushRelationEntriesIntoRelationMap(source, target, modelToCloneModelMap, relationToCloneRelationMap) {
95
129
  for (const [model, relations] of source) {
96
130
  const relationsClone = new Array();
97
131
  for (const relation of relations) {
98
- relationsClone.push(this._cloneRelation(relation));
132
+ relationsClone.push(this.#getCloneRelation(relation, relationToCloneRelationMap));
99
133
  }
100
- target.set(model, relationsClone);
134
+ target.set(this.#getCloneModel(model, modelToCloneModelMap), relationsClone);
101
135
  }
102
136
  }
103
137
  #removeModelFromRelationMaps(model, relation) {
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"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"}
package/lib/esm/index.js CHANGED
@@ -1,2 +1,2 @@
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};
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=this.#r(),t=this.#a(),n=Reflect.ownKeys(this.#n),i=this._buildNewInstance(this.#n);this.#s(this.#e,i.#e,e,t);for(const t of n)this.#c(this.#t[t],i.#t[t],e);return i}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.#u(n,o);this.#e.delete(n)}}_buildNewInstance(e){return new p(e)}_cloneModel(e){return e}_cloneRelation(e){return e}#r(){const e=new Map;for(const t of this.#e.keys()){const n=this._cloneModel(t);e.set(t,n)}return e}#a(){const e=new Map;for(const t of this.#e.values())for(const n of t){const t=this._cloneRelation(n);e.set(n,t)}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}#d(e,t){const n=t.get(e);if(void 0===n)throw new Error("Expecting model to be cloned, none found");return n}#l(e,t){const n=t.get(e);if(void 0===n)throw new Error("Expecting relation to be cloned, none found");return n}#c(e,t,n){for(const[i,o]of e){const e=new Array;for(const t of o)e.push(this.#d(t,n));t.set(i,e)}}#s(e,t,n,i){for(const[o,r]of e){const e=new Array;for(const t of r)e.push(this.#l(t,i));t.set(this.#d(o,n),e)}}#u(e,t){for(const n of Reflect.ownKeys(t))this.#p(e,n,t[n])}#p(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{#f;#g;constructor(e,t){this.#f=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#g=e}static build(e){return new m(e)}add(e,t){this.#f.add(e,t)}clone(){return new m(this.#g,this.#f.clone())}get(e){const t=[],n=this.#f.get(f.serviceId,e);void 0!==n&&t.push(n);const i=this.#g?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#f.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#f.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{#h;#g;constructor(e,t){this.#h=t??new M({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#g=e}static build(e){return new I(e)}clone(){return new I(this.#g,this.#h.clone())}get(e){return this.getNonParentBindings(e)??this.#g?.get(e)}getBoundServices(){const e=new Set(this.#h.getAllKeys(g.serviceId));if(void 0!==this.#g)for(const t of this.#g.getBoundServices())e.add(t);return e}getById(e){return this.#h.get(g.id,e)??this.#g?.getById(e)}getByModuleId(e){return this.#h.get(g.moduleId,e)??this.#g?.getByModuleId(e)}getNonParentBindings(e){return this.#h.get(g.serviceId,e)}getNonParentBoundServices(){return this.#h.getAllKeys(g.serviceId)}removeById(e){this.#h.removeByRelation(g.id,e)}removeAllByModuleId(e){this.#h.removeByRelation(g.moduleId,e)}removeAllByServiceId(e){this.#h.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.#h.add(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(h||(h={}));class w{#m;#g;constructor(e,t){this.#m=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#g=e}static build(e){return new w(e)}add(e,t){this.#m.add(e,t)}clone(){return new w(this.#g,this.#m.clone())}get(e){const t=[],n=this.#m.get(h.serviceId,e);void 0!==n&&t.push(n);const i=this.#g?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#m.removeByRelation(h.moduleId,e)}removeAllByServiceId(e){this.#m.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 R="@inversifyjs/core/pendingClassMetadataCountReflectKey";const T=Symbol.for("@inversifyjs/core/InversifyCoreError");class A 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 A.is(e)&&e.kind===t}}var C,B,$;function x(t){const n=e(t,S)??j();if(!function(t){const n=e(t,R);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new A(C.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 A(C.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!==B.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===B.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 A(C.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 A(C.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===B.unknown&&n(e,R,D,e=>e-1)}}function P(e,t){return(...n)=>i=>{if(void 0===i)return e(...n);if(i.kind===$.unmanaged)throw new A(C.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(i,...n)}}function O(e){if(e.kind!==B.unknown&&!0!==e.isFromTypescriptParamType)throw new A(C.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"}(C||(C={})),function(e){e[e.unknown=32]="unknown"}(B||(B={})),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 E;function N(e,t,n,i){if(A.isErrorOfKind(i,C.injectionDecoratorConflict)){const o=function(e,t,n){if(void 0===n){if(void 0===t)throw new A(C.unknown,"Unexpected undefined property and index values");return{kind:E.property,property:t,targetClass:e.constructor}}return"number"==typeof n?{index:n,kind:E.parameter,targetClass:e}:{kind:E.method,method:t,targetClass:e}}(e,t,n);throw new A(C.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${i.message}\n\nDetails\n\n${function(e){switch(e.kind){case E.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case E.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case E.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 A(C.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 A(C.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){N(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"}(E||(E={}));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 A(C.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 A(C.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,R,D,e=>e+1)}}function Z(e){return t=>{const n=t??{kind:B.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===$.unmanaged)throw new A(C.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 A(C.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return U(t,Y)}function te(e){if(e.optional)throw new A(C.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 A(C.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=o,e}))}catch(n){N(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 A(C.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=o,e}))}catch(n){N(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 A(C.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 A(C.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{#v;constructor(e){this.#v=e}get name(){return this.#v.elem.name}get serviceIdentifier(){return this.#v.elem.serviceIdentifier}get tags(){return this.#v.elem.tags}getAncestor(){if(void 0!==this.#v.previous)return new de(this.#v.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 A(C.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 A(C.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){const[i]=e.redirections;return void(fe(i)&&ye(i,t,n))}ge(e.redirections,t,e,n)}function Me(e,t,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[i]=e.bindings;return void(fe(i)&&ye(i,t,n))}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 A(C.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 Ce({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 Re(e,t,n,i){const o={binding:t,params:[],parent:i};return Ce({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(Re(e,o,t,i));break;case d.ServiceRedirection:{const n=Ae(e,t,o,i);r.push(n);break}default:r.push({binding:o,parent:i})}return e.servicesBranch.pop(),r}function Ae(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 Ce(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 Be{#y;#M;#I;constructor(){this.#y=[],this.#M=8,this.#I=1024}*[Symbol.iterator](){let e=0;for(const t of this.#y){const n=t.deref();void 0===n?++e:yield n}this.#y.length>=this.#M&&this.#w(e)&&this.#b(e)}push(e){const t=new WeakRef(e);if(this.#y.push(t),this.#y.length>=this.#M&&this.#y.length%this.#I===0){let e=0;for(const t of this.#y)void 0===t.deref()&&++e;this.#w(e)&&this.#b(e)}}#b(e){const t=new Array(this.#y.length-e);let n=0;for(const e of this.#y)e.deref()&&(t[n++]=e);this.#y=t}#w(e){return e>=.5*this.#y.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{#S;#j;#R;#T;#A;constructor(){this.#S=this.#C(),this.#j=this.#C(),this.#R=this.#C(),this.#T=this.#C(),this.#A=new Be}clearCache(){for(const e of this.#B())e.clear();for(const e of this.#A)e.clearCache()}get(e){return void 0===e.name?void 0===e.tag?this.#$(this.#S,e).get(e.serviceIdentifier):this.#$(this.#T,e).get(e.serviceIdentifier)?.get(e.tag.key)?.get(e.tag.value):void 0===e.tag?this.#$(this.#j,e).get(e.serviceIdentifier)?.get(e.name):this.#$(this.#R,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.#$(this.#S,e).set(e.serviceIdentifier,t):this.#x(this.#x(this.#$(this.#T,e),e.serviceIdentifier),e.tag.key).set(e.tag.value,t):void 0===e.tag?this.#x(this.#$(this.#j,e),e.serviceIdentifier).set(e.name,t):this.#x(this.#x(this.#x(this.#$(this.#R,e),e.serviceIdentifier),e.name),e.tag.key).set(e.tag.value,t)}subscribe(e){this.#A.push(e)}#C(){const e=new Array($e.length);for(let t=0;t<e.length;++t)e[t]=new Map;return e}#x(e,t){let n=e.get(t);return void 0===n&&(n=new Map,e.set(t,n)),n}#$(e,t){return e[this.#D(t)]}#B(){return[...this.#S,...this.#j,...this.#R,...this.#T]}#D(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 Ee=Fe(function(e,t){return t.value});function Ne(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(Ne,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 A(C.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new A(C.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 A(C.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 A(C.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 A(C.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 Ee(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 A(C.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/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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"}
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","modelToCloneModelMap","buildModelToCloneModelMap","relationToCloneRelationMap","buildRelationToRelationModelMap","properties","_buildNewInstance","pushRelationEntriesIntoRelationMap","property","pushModelEntriesIntoModelMap","get","key","value","getAllKeys","keys","removeByRelation","models","undefined","uniqueModelsSet","Set","relations","Error","removeModelFromRelationMaps","delete","_cloneModel","_cloneRelation","clonedModel","set","values","clonedRelation","relationValue","getCloneModel","getCloneRelation","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/prototype-utils": "0.1.0",
9
- "@inversifyjs/common": "1.5.0",
10
- "@inversifyjs/reflect-metadata-utils": "1.1.0"
8
+ "@inversifyjs/common": "1.5.1",
9
+ "@inversifyjs/prototype-utils": "0.1.1",
10
+ "@inversifyjs/reflect-metadata-utils": "1.2.0"
11
11
  },
12
12
  "devDependencies": {
13
13
  "@stryker-mutator/core": "9.0.1",
14
14
  "@stryker-mutator/vitest-runner": "9.0.1",
15
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
- "prettier": "3.5.3",
16
+ "@types/node": "22.15.33",
17
+ "@vitest/coverage-v8": "3.2.4",
18
+ "eslint": "9.29.0",
19
+ "prettier": "3.6.0",
20
20
  "reflect-metadata": "0.2.2",
21
21
  "rimraf": "6.0.1",
22
- "rollup": "4.41.1",
22
+ "rollup": "4.44.0",
23
23
  "ts-loader": "9.5.2",
24
24
  "tslib": "2.8.1",
25
25
  "typescript": "5.8.3",
26
- "vitest": "3.1.4"
26
+ "vitest": "3.2.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.3.0",
60
+ "version": "5.3.2",
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",