@inversifyjs/core 6.0.0 → 6.0.1

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,11 @@
1
1
  # @inversifyjs/core
2
2
 
3
+ ## 6.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 1bdf12a: Updated `BindingService`, `ActivationsService` and `DeactivationsService` to receive a `getParent` param. This way restoring a parent container no longer leads to invalid parent references
8
+
3
9
  ## 6.0.0
4
10
 
5
11
  ### Major Changes
@@ -12,7 +12,7 @@ export interface BindingActivationRelation {
12
12
  export declare class ActivationsService implements Cloneable<ActivationsService> {
13
13
  #private;
14
14
  private constructor();
15
- static build(parent: ActivationsService | undefined): ActivationsService;
15
+ static build(getParent: () => ActivationsService | undefined): ActivationsService;
16
16
  add(activation: BindingActivation, relation: BindingActivationRelation): void;
17
17
  clone(): ActivationsService;
18
18
  get(serviceIdentifier: ServiceIdentifier): Iterable<BindingActivation> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ActivationsService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/ActivationsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,aAAK,sBAAsB;IACzB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,yBAAyB;IACxC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAC3C,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACvD;AAED,qBAAa,kBAAmB,YAAW,SAAS,CAAC,kBAAkB,CAAC;;IAQtE,OAAO;WAqBO,KAAK,CACjB,MAAM,EAAE,kBAAkB,GAAG,SAAS,GACrC,kBAAkB;IAId,GAAG,CACR,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,yBAAyB,GAClC,IAAI;IAIA,KAAK,IAAI,kBAAkB;IAS3B,GAAG,CACR,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,SAAS;IA2BnC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;CAMhE"}
1
+ {"version":3,"file":"ActivationsService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/ActivationsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,aAAK,sBAAsB;IACzB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,yBAAyB;IACxC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAC3C,CAAC,sBAAsB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACvD;AAED,qBAAa,kBAAmB,YAAW,SAAS,CAAC,kBAAkB,CAAC;;IAOtE,OAAO;WAqBO,KAAK,CACjB,SAAS,EAAE,MAAM,kBAAkB,GAAG,SAAS,GAC9C,kBAAkB;IAId,GAAG,CACR,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,yBAAyB,GAClC,IAAI;IAIA,KAAK,IAAI,kBAAkB;IAS3B,GAAG,CACR,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,SAAS;IA2BnC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;CAMhE"}
@@ -10,8 +10,8 @@ var ActivationRelationKind;
10
10
  })(ActivationRelationKind || (ActivationRelationKind = {}));
11
11
  class ActivationsService {
12
12
  #activationMaps;
13
- #parent;
14
- constructor(parent, activationMaps) {
13
+ #getParent;
14
+ constructor(getParent, activationMaps) {
15
15
  this.#activationMaps =
16
16
  activationMaps ??
17
17
  new OneToManyMapStar_1.OneToManyMapStar({
@@ -22,16 +22,16 @@ class ActivationsService {
22
22
  isOptional: false,
23
23
  },
24
24
  });
25
- this.#parent = parent;
25
+ this.#getParent = getParent;
26
26
  }
27
- static build(parent) {
28
- return new ActivationsService(parent);
27
+ static build(getParent) {
28
+ return new ActivationsService(getParent);
29
29
  }
30
30
  add(activation, relation) {
31
31
  this.#activationMaps.add(activation, relation);
32
32
  }
33
33
  clone() {
34
- const clone = new ActivationsService(this.#parent, this.#activationMaps.clone());
34
+ const clone = new ActivationsService(this.#getParent, this.#activationMaps.clone());
35
35
  return clone;
36
36
  }
37
37
  get(serviceIdentifier) {
@@ -40,7 +40,7 @@ class ActivationsService {
40
40
  if (activations !== undefined) {
41
41
  activationIterables.push(activations);
42
42
  }
43
- const parentActivations = this.#parent?.get(serviceIdentifier);
43
+ const parentActivations = this.#getParent()?.get(serviceIdentifier);
44
44
  if (parentActivations !== undefined) {
45
45
  activationIterables.push(parentActivations);
46
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ActivationsService.js","sourceRoot":"","sources":["../../../../src/binding/services/ActivationsService.ts"],"names":[],"mappings":";;;AAEA,2DAAwD;AAExD,2EAAwE;AAGxE,IAAK,sBAGJ;AAHD,WAAK,sBAAsB;IACzB,+CAAqB,CAAA;IACrB,iDAAuB,CAAA;AACzB,CAAC,EAHI,sBAAsB,KAAtB,sBAAsB,QAG1B;AAOD,MAAa,kBAAkB;IACpB,eAAe,CAGtB;IAEO,OAAO,CAAiC;IAEjD,YACE,MAAsC,EACtC,cAGC;QAED,IAAI,CAAC,eAAe;YAClB,cAAc;gBACd,IAAI,mCAAgB,CAA+C;oBACjE,QAAQ,EAAE;wBACR,UAAU,EAAE,IAAI;qBACjB;oBACD,SAAS,EAAE;wBACT,UAAU,EAAE,KAAK;qBAClB;iBACF,CAAC,CAAC;QAEL,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAEM,MAAM,CAAC,KAAK,CACjB,MAAsC;QAEtC,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,GAAG,CACR,UAA6B,EAC7B,QAAmC;QAEnC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAuB,IAAI,kBAAkB,CACtD,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAC7B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,MAAM,mBAAmB,GAAkC,EAAE,CAAC;QAE9D,MAAM,WAAW,GACf,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,sBAAsB,CAAC,SAAS,EAChC,iBAAiB,CAClB,CAAC;QAEJ,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,iBAAiB,GACrB,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEvC,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAA,aAAK,EAAC,GAAG,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CACnC,sBAAsB,CAAC,QAAQ,EAC/B,QAAQ,CACT,CAAC;IACJ,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,eAAe,CAAC,gBAAgB,CACnC,sBAAsB,CAAC,SAAS,EAChC,SAAS,CACV,CAAC;IACJ,CAAC;CACF;AA7FD,gDA6FC"}
1
+ {"version":3,"file":"ActivationsService.js","sourceRoot":"","sources":["../../../../src/binding/services/ActivationsService.ts"],"names":[],"mappings":";;;AAEA,2DAAwD;AAExD,2EAAwE;AAGxE,IAAK,sBAGJ;AAHD,WAAK,sBAAsB;IACzB,+CAAqB,CAAA;IACrB,iDAAuB,CAAA;AACzB,CAAC,EAHI,sBAAsB,KAAtB,sBAAsB,QAG1B;AAOD,MAAa,kBAAkB;IACpB,eAAe,CAGtB;IACO,UAAU,CAAuC;IAE1D,YACE,SAA+C,EAC/C,cAGC;QAED,IAAI,CAAC,eAAe;YAClB,cAAc;gBACd,IAAI,mCAAgB,CAA+C;oBACjE,QAAQ,EAAE;wBACR,UAAU,EAAE,IAAI;qBACjB;oBACD,SAAS,EAAE;wBACT,UAAU,EAAE,KAAK;qBAClB;iBACF,CAAC,CAAC;QAEL,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAEM,MAAM,CAAC,KAAK,CACjB,SAA+C;QAE/C,OAAO,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAEM,GAAG,CACR,UAA6B,EAC7B,QAAmC;QAEnC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAuB,IAAI,kBAAkB,CACtD,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAC7B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,MAAM,mBAAmB,GAAkC,EAAE,CAAC;QAE9D,MAAM,WAAW,GACf,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,sBAAsB,CAAC,SAAS,EAChC,iBAAiB,CAClB,CAAC;QAEJ,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,iBAAiB,GACrB,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE5C,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAA,aAAK,EAAC,GAAG,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CACnC,sBAAsB,CAAC,QAAQ,EAC/B,QAAQ,CACT,CAAC;IACJ,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,eAAe,CAAC,gBAAgB,CACnC,sBAAsB,CAAC,SAAS,EAChC,SAAS,CACV,CAAC;IACJ,CAAC;CACF;AA5FD,gDA4FC"}
@@ -19,7 +19,7 @@ export declare class OneToManyBindingMapStar extends OneToManyMapStar<Binding<un
19
19
  export declare class BindingService implements Cloneable<BindingService> {
20
20
  #private;
21
21
  private constructor();
22
- static build(parent: BindingService | undefined): BindingService;
22
+ static build(getParent: () => BindingService | undefined): BindingService;
23
23
  clone(): BindingService;
24
24
  get<TResolved>(serviceIdentifier: ServiceIdentifier): Iterable<Binding<TResolved>> | undefined;
25
25
  getChained<TResolved>(serviceIdentifier: ServiceIdentifier): Generator<Binding<TResolved>, void, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"BindingService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,aAAK,mBAAmB;IACtB,EAAE,OAAO;IACT,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACjC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACxC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACpD;AAED,qBAAa,uBAAwB,SAAQ,gBAAgB,CAC3D,OAAO,CAAC,OAAO,CAAC,EAChB,eAAe,CAChB;cACoB,iBAAiB,CAClC,IAAI,EAAE,qBAAqB,CAAC,eAAe,CAAC,GAC3C,IAAI;cAIY,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAG1E;AAED,qBAAa,cAAe,YAAW,SAAS,CAAC,cAAc,CAAC;;IAI9D,OAAO;WAqBO,KAAK,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc;IAIhE,KAAK,IAAI,cAAc;IASvB,GAAG,CAAC,SAAS,EAClB,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAOnC,UAAU,CAAC,SAAS,EAC1B,iBAAiB,EAAE,iBAAiB,GACnC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC;IAYxC,gBAAgB,IAAI,QAAQ,CAAC,iBAAiB,CAAC;IAe/C,OAAO,CAAC,SAAS,EACtB,EAAE,EAAE,MAAM,GACT,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,aAAa,CAAC,SAAS,EAC5B,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,oBAAoB,CAAC,SAAS,EACnC,SAAS,EAAE,iBAAiB,GAC3B,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAMpC,yBAAyB,IAAI,QAAQ,CAAC,iBAAiB,CAAC;IAIxD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI5B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAOxD,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI;CAYzD"}
1
+ {"version":3,"file":"BindingService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,aAAK,mBAAmB;IACtB,EAAE,OAAO;IACT,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACjC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACxC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACpD;AAED,qBAAa,uBAAwB,SAAQ,gBAAgB,CAC3D,OAAO,CAAC,OAAO,CAAC,EAChB,eAAe,CAChB;cACoB,iBAAiB,CAClC,IAAI,EAAE,qBAAqB,CAAC,eAAe,CAAC,GAC3C,IAAI;cAIY,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CAG1E;AAED,qBAAa,cAAe,YAAW,SAAS,CAAC,cAAc,CAAC;;IAI9D,OAAO;WAqBO,KAAK,CACjB,SAAS,EAAE,MAAM,cAAc,GAAG,SAAS,GAC1C,cAAc;IAIV,KAAK,IAAI,cAAc;IASvB,GAAG,CAAC,SAAS,EAClB,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAOnC,UAAU,CAAC,SAAS,EAC1B,iBAAiB,EAAE,iBAAiB,GACnC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC;IAcxC,gBAAgB,IAAI,QAAQ,CAAC,iBAAiB,CAAC;IAiB/C,OAAO,CAAC,SAAS,EACtB,EAAE,EAAE,MAAM,GACT,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,aAAa,CAAC,SAAS,EAC5B,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,oBAAoB,CAAC,SAAS,EACnC,SAAS,EAAE,iBAAiB,GAC3B,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAMpC,yBAAyB,IAAI,QAAQ,CAAC,iBAAiB,CAAC;IAIxD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI5B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAOxD,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI;CAYzD"}
@@ -20,8 +20,8 @@ class OneToManyBindingMapStar extends OneToManyMapStar_1.OneToManyMapStar {
20
20
  exports.OneToManyBindingMapStar = OneToManyBindingMapStar;
21
21
  class BindingService {
22
22
  #bindingMaps;
23
- #parent;
24
- constructor(parent, bindingMaps) {
23
+ #getParent;
24
+ constructor(getParent, bindingMaps) {
25
25
  this.#bindingMaps =
26
26
  bindingMaps ??
27
27
  new OneToManyBindingMapStar({
@@ -35,42 +35,44 @@ class BindingService {
35
35
  isOptional: false,
36
36
  },
37
37
  });
38
- this.#parent = parent;
38
+ this.#getParent = getParent;
39
39
  }
40
- static build(parent) {
41
- return new BindingService(parent);
40
+ static build(getParent) {
41
+ return new BindingService(getParent);
42
42
  }
43
43
  clone() {
44
- const clone = new BindingService(this.#parent, this.#bindingMaps.clone());
44
+ const clone = new BindingService(this.#getParent, this.#bindingMaps.clone());
45
45
  return clone;
46
46
  }
47
47
  get(serviceIdentifier) {
48
48
  return (this.getNonParentBindings(serviceIdentifier) ??
49
- this.#parent?.get(serviceIdentifier));
49
+ this.#getParent()?.get(serviceIdentifier));
50
50
  }
51
51
  *getChained(serviceIdentifier) {
52
52
  const currentBindings = this.getNonParentBindings(serviceIdentifier);
53
53
  if (currentBindings !== undefined) {
54
54
  yield* currentBindings;
55
55
  }
56
- if (this.#parent !== undefined) {
57
- yield* this.#parent.getChained(serviceIdentifier);
56
+ const parent = this.#getParent();
57
+ if (parent !== undefined) {
58
+ yield* parent.getChained(serviceIdentifier);
58
59
  }
59
60
  }
60
61
  getBoundServices() {
61
62
  const serviceIdentifierSet = new Set(this.#bindingMaps.getAllKeys(BindingRelationKind.serviceId));
62
- if (this.#parent !== undefined) {
63
- for (const serviceIdentifier of this.#parent.getBoundServices()) {
63
+ const parent = this.#getParent();
64
+ if (parent !== undefined) {
65
+ for (const serviceIdentifier of parent.getBoundServices()) {
64
66
  serviceIdentifierSet.add(serviceIdentifier);
65
67
  }
66
68
  }
67
69
  return serviceIdentifierSet;
68
70
  }
69
71
  getById(id) {
70
- return (this.#bindingMaps.get(BindingRelationKind.id, id) ?? this.#parent?.getById(id));
72
+ return (this.#bindingMaps.get(BindingRelationKind.id, id) ?? this.#getParent()?.getById(id));
71
73
  }
72
74
  getByModuleId(moduleId) {
73
- return (this.#bindingMaps.get(BindingRelationKind.moduleId, moduleId) ?? this.#parent?.getByModuleId(moduleId));
75
+ return (this.#bindingMaps.get(BindingRelationKind.moduleId, moduleId) ?? this.#getParent()?.getByModuleId(moduleId));
74
76
  }
75
77
  getNonParentBindings(serviceId) {
76
78
  return this.#bindingMaps.get(BindingRelationKind.serviceId, serviceId);
@@ -1 +1 @@
1
- {"version":3,"file":"BindingService.js","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BindingService.js","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export interface BindingDeactivationRelation {
12
12
  export declare class DeactivationsService implements Cloneable<DeactivationsService> {
13
13
  #private;
14
14
  private constructor();
15
- static build(parent: DeactivationsService | undefined): DeactivationsService;
15
+ static build(getParent: () => DeactivationsService | undefined): DeactivationsService;
16
16
  add(deactivation: BindingDeactivation, relation: BindingDeactivationRelation): void;
17
17
  clone(): DeactivationsService;
18
18
  get(serviceIdentifier: ServiceIdentifier): Iterable<BindingDeactivation> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivationsService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/DeactivationsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,aAAK,wBAAwB;IAC3B,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAC7C,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACzD;AAED,qBAAa,oBAAqB,YAAW,SAAS,CAAC,oBAAoB,CAAC;;IAQ1E,OAAO;WAqBO,KAAK,CACjB,MAAM,EAAE,oBAAoB,GAAG,SAAS,GACvC,oBAAoB;IAIhB,GAAG,CACR,YAAY,EAAE,mBAAmB,EACjC,QAAQ,EAAE,2BAA2B,GACpC,IAAI;IAIA,KAAK,IAAI,oBAAoB;IAS7B,GAAG,CACR,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,SAAS;IA2BrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;CAMhE"}
1
+ {"version":3,"file":"DeactivationsService.d.ts","sourceRoot":"","sources":["../../../../src/binding/services/DeactivationsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,aAAK,wBAAwB;IAC3B,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAC7C,CAAC,wBAAwB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACzD;AAED,qBAAa,oBAAqB,YAAW,SAAS,CAAC,oBAAoB,CAAC;;IAQ1E,OAAO;WAqBO,KAAK,CACjB,SAAS,EAAE,MAAM,oBAAoB,GAAG,SAAS,GAChD,oBAAoB;IAIhB,GAAG,CACR,YAAY,EAAE,mBAAmB,EACjC,QAAQ,EAAE,2BAA2B,GACpC,IAAI;IAIA,KAAK,IAAI,oBAAoB;IAS7B,GAAG,CACR,iBAAiB,EAAE,iBAAiB,GACnC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,SAAS;IA2BrC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO3C,oBAAoB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;CAMhE"}
@@ -10,8 +10,8 @@ var DeactivationRelationKind;
10
10
  })(DeactivationRelationKind || (DeactivationRelationKind = {}));
11
11
  class DeactivationsService {
12
12
  #deactivationMaps;
13
- #parent;
14
- constructor(parent, deactivationMaps) {
13
+ #getParent;
14
+ constructor(getParent, deactivationMaps) {
15
15
  this.#deactivationMaps =
16
16
  deactivationMaps ??
17
17
  new OneToManyMapStar_1.OneToManyMapStar({
@@ -22,16 +22,16 @@ class DeactivationsService {
22
22
  isOptional: false,
23
23
  },
24
24
  });
25
- this.#parent = parent;
25
+ this.#getParent = getParent;
26
26
  }
27
- static build(parent) {
28
- return new DeactivationsService(parent);
27
+ static build(getParent) {
28
+ return new DeactivationsService(getParent);
29
29
  }
30
30
  add(deactivation, relation) {
31
31
  this.#deactivationMaps.add(deactivation, relation);
32
32
  }
33
33
  clone() {
34
- const clone = new DeactivationsService(this.#parent, this.#deactivationMaps.clone());
34
+ const clone = new DeactivationsService(this.#getParent, this.#deactivationMaps.clone());
35
35
  return clone;
36
36
  }
37
37
  get(serviceIdentifier) {
@@ -40,7 +40,7 @@ class DeactivationsService {
40
40
  if (deactivations !== undefined) {
41
41
  deactivationIterables.push(deactivations);
42
42
  }
43
- const parentDeactivations = this.#parent?.get(serviceIdentifier);
43
+ const parentDeactivations = this.#getParent()?.get(serviceIdentifier);
44
44
  if (parentDeactivations !== undefined) {
45
45
  deactivationIterables.push(parentDeactivations);
46
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DeactivationsService.js","sourceRoot":"","sources":["../../../../src/binding/services/DeactivationsService.ts"],"names":[],"mappings":";;;AAEA,2DAAwD;AAExD,2EAAwE;AAGxE,IAAK,wBAGJ;AAHD,WAAK,wBAAwB;IAC3B,iDAAqB,CAAA;IACrB,mDAAuB,CAAA;AACzB,CAAC,EAHI,wBAAwB,KAAxB,wBAAwB,QAG5B;AAOD,MAAa,oBAAoB;IACtB,iBAAiB,CAGxB;IAEO,OAAO,CAAmC;IAEnD,YACE,MAAwC,EACxC,gBAGC;QAED,IAAI,CAAC,iBAAiB;YACpB,gBAAgB;gBAChB,IAAI,mCAAgB,CAAmD;oBACrE,QAAQ,EAAE;wBACR,UAAU,EAAE,IAAI;qBACjB;oBACD,SAAS,EAAE;wBACT,UAAU,EAAE,KAAK;qBAClB;iBACF,CAAC,CAAC;QAEL,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAEM,MAAM,CAAC,KAAK,CACjB,MAAwC;QAExC,OAAO,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAEM,GAAG,CACR,YAAiC,EACjC,QAAqC;QAErC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAyB,IAAI,oBAAoB,CAC1D,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAC/B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,MAAM,qBAAqB,GAAoC,EAAE,CAAC;QAElE,MAAM,aAAa,GACjB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,wBAAwB,CAAC,SAAS,EAClC,iBAAiB,CAClB,CAAC;QAEJ,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,mBAAmB,GACvB,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEvC,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAA,aAAK,EAAC,GAAG,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,wBAAwB,CAAC,QAAQ,EACjC,QAAQ,CACT,CAAC;IACJ,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,wBAAwB,CAAC,SAAS,EAClC,SAAS,CACV,CAAC;IACJ,CAAC;CACF;AA7FD,oDA6FC"}
1
+ {"version":3,"file":"DeactivationsService.js","sourceRoot":"","sources":["../../../../src/binding/services/DeactivationsService.ts"],"names":[],"mappings":";;;AAEA,2DAAwD;AAExD,2EAAwE;AAGxE,IAAK,wBAGJ;AAHD,WAAK,wBAAwB;IAC3B,iDAAqB,CAAA;IACrB,mDAAuB,CAAA;AACzB,CAAC,EAHI,wBAAwB,KAAxB,wBAAwB,QAG5B;AAOD,MAAa,oBAAoB;IACtB,iBAAiB,CAGxB;IAEO,UAAU,CAAyC;IAE5D,YACE,SAAiD,EACjD,gBAGC;QAED,IAAI,CAAC,iBAAiB;YACpB,gBAAgB;gBAChB,IAAI,mCAAgB,CAAmD;oBACrE,QAAQ,EAAE;wBACR,UAAU,EAAE,IAAI;qBACjB;oBACD,SAAS,EAAE;wBACT,UAAU,EAAE,KAAK;qBAClB;iBACF,CAAC,CAAC;QAEL,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAEM,MAAM,CAAC,KAAK,CACjB,SAAiD;QAEjD,OAAO,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAEM,GAAG,CACR,YAAiC,EACjC,QAAqC;QAErC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAyB,IAAI,oBAAoB,CAC1D,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAC/B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,MAAM,qBAAqB,GAAoC,EAAE,CAAC;QAElE,MAAM,aAAa,GACjB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,wBAAwB,CAAC,SAAS,EAClC,iBAAiB,CAClB,CAAC;QAEJ,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,qBAAqB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,mBAAmB,GACvB,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE5C,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAA,aAAK,EAAC,GAAG,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,wBAAwB,CAAC,QAAQ,EACjC,QAAQ,CACT,CAAC;IACJ,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACrC,wBAAwB,CAAC,SAAS,EAClC,SAAS,CACV,CAAC;IACJ,CAAC;CACF;AA7FD,oDA6FC"}
@@ -147,7 +147,7 @@ interface BindingActivationRelation {
147
147
  declare class ActivationsService implements Cloneable<ActivationsService> {
148
148
  #private;
149
149
  private constructor();
150
- static build(parent: ActivationsService | undefined): ActivationsService;
150
+ static build(getParent: () => ActivationsService | undefined): ActivationsService;
151
151
  add(activation: BindingActivation, relation: BindingActivationRelation): void;
152
152
  clone(): ActivationsService;
153
153
  get(serviceIdentifier: ServiceIdentifier): Iterable<BindingActivation> | undefined;
@@ -158,7 +158,7 @@ declare class ActivationsService implements Cloneable<ActivationsService> {
158
158
  declare class BindingService implements Cloneable<BindingService> {
159
159
  #private;
160
160
  private constructor();
161
- static build(parent: BindingService | undefined): BindingService;
161
+ static build(getParent: () => BindingService | undefined): BindingService;
162
162
  clone(): BindingService;
163
163
  get<TResolved>(serviceIdentifier: ServiceIdentifier): Iterable<Binding<TResolved>> | undefined;
164
164
  getChained<TResolved>(serviceIdentifier: ServiceIdentifier): Generator<Binding<TResolved>, void, unknown>;
@@ -184,7 +184,7 @@ interface BindingDeactivationRelation {
184
184
  declare class DeactivationsService implements Cloneable<DeactivationsService> {
185
185
  #private;
186
186
  private constructor();
187
- static build(parent: DeactivationsService | undefined): DeactivationsService;
187
+ static build(getParent: () => DeactivationsService | undefined): DeactivationsService;
188
188
  add(deactivation: BindingDeactivation, relation: BindingDeactivationRelation): void;
189
189
  clone(): DeactivationsService;
190
190
  get(serviceIdentifier: ServiceIdentifier): Iterable<BindingDeactivation> | undefined;
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 s}from"@inversifyjs/common";const a="@inversifyjs/container/bindingId";function c(){const i=e(Object,a)??0;return i===Number.MAX_SAFE_INTEGER?t(Object,a,Number.MIN_SAFE_INTEGER):n(Object,a,()=>i,e=>e+1),i}const d={Request:"Request",Singleton:"Singleton",Transient:"Transient"},u={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.#s(),n=Reflect.ownKeys(this.#n),i=this._buildNewInstance(this.#n);this.#a(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.#d(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}#s(){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}#u(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.#u(t,n));t.set(i,e)}}#a(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.#u(o,n),e)}}#d(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,v,h;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class g{#f;#v;constructor(e,t){this.#f=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new g(e)}add(e,t){this.#f.add(e,t)}clone(){return new g(this.#v,this.#f.clone())}get(e){const t=[],n=this.#f.get(f.serviceId,e);void 0!==n&&t.push(n);const i=this.#v?.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 m(e){return e.isRight?{isRight:!0,value:e.value}:e}function y(e){switch(e.type){case u.ConstantValue:case u.DynamicValue:return function(e){return{cache:m(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 u.Factory:return function(e){return{cache:m(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 u.Instance:return function(e){return{cache:m(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 u.Provider:return function(e){return{cache:m(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 u.ResolvedValue:return function(e){return{cache:m(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 u.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"}(v||(v={}));class M extends p{_buildNewInstance(e){return new M(e)}_cloneModel(e){return y(e)}}class I{#h;#v;constructor(e,t){this.#h=t??new M({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new I(e)}clone(){return new I(this.#v,this.#h.clone())}get(e){return this.getNonParentBindings(e)??this.#v?.get(e)}*getChained(e){const t=this.getNonParentBindings(e);void 0!==t&&(yield*t),void 0!==this.#v&&(yield*this.#v.getChained(e))}getBoundServices(){const e=new Set(this.#h.getAllKeys(v.serviceId));if(void 0!==this.#v)for(const t of this.#v.getBoundServices())e.add(t);return e}getById(e){return this.#h.get(v.id,e)??this.#v?.getById(e)}getByModuleId(e){return this.#h.get(v.moduleId,e)??this.#v?.getByModuleId(e)}getNonParentBindings(e){return this.#h.get(v.serviceId,e)}getNonParentBoundServices(){return this.#h.getAllKeys(v.serviceId)}removeById(e){this.#h.removeByRelation(v.id,e)}removeAllByModuleId(e){this.#h.removeByRelation(v.moduleId,e)}removeAllByServiceId(e){this.#h.removeByRelation(v.serviceId,e)}set(e){const t={[v.id]:e.id,[v.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[v.moduleId]=e.moduleId),this.#h.add(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(h||(h={}));class w{#g;#v;constructor(e,t){this.#g=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new w(e)}add(e,t){this.#g.add(e,t)}clone(){return new w(this.#v,this.#g.clone())}get(e){const t=[],n=this.#g.get(h.serviceId,e);void 0!==n&&t.push(n);const i=this.#v?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#g.removeByRelation(h.moduleId,e)}removeAllByServiceId(e){this.#g.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 C(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const N="@inversifyjs/core/pendingClassMetadataCountReflectKey";const T=Symbol.for("@inversifyjs/core/InversifyCoreError");class j 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 j.is(e)&&e.kind===t}}var A,R,P;function x(t){const n=e(t,S)??C();if(!function(t){const n=e(t,N);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new j(A.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 j(A.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!==R.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===R.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 j(A.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 j(A.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function B(){return 0}function $(e){return t=>{void 0!==t&&t.kind===R.unknown&&n(e,N,B,e=>e-1)}}function D(e,t){return(...n)=>i=>{if(void 0===i)return e(...n);if(i.kind===P.unmanaged)throw new j(A.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(i,...n)}}function k(e){if(e.kind!==R.unknown&&!0!==e.isFromTypescriptParamType)throw new j(A.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"}(A||(A={})),function(e){e[e.unknown=32]="unknown"}(R||(R={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(P||(P={}));const F=D(function(e,t,n){return e===P.multipleInjection?{chained:n?.chained??!1,kind:e,name:void 0,optional:!1,tags:new Map,value:t}:{kind:e,name:void 0,optional:!1,tags:new Map,value:t}},function(e,t,n,i){return k(e),t===P.multipleInjection?{...e,chained:i?.chained??!1,kind:t,value:n}:{...e,kind:t,value:n}});function V(e,t){return n=>{const i=n.properties.get(t);return n.properties.set(t,e(i)),n}}var O;function E(e,t,n,i){if(j.isErrorOfKind(i,A.injectionDecoratorConflict)){const o=function(e,t,n){if(void 0===n){if(void 0===t)throw new j(A.unknown,"Unexpected undefined property and index values");return{kind:O.property,property:t,targetClass:e.constructor}}return"number"==typeof n?{index:n,kind:O.parameter,targetClass:e}:{kind:O.method,method:t,targetClass:e}}(e,t,n);throw new j(A.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${i.message}\n\nDetails\n\n${function(e){switch(e.kind){case O.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case O.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case O.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(o)}`,{cause:i})}throw i}function _(e,t){return(i,o,r)=>{try{void 0===r?function(e,t){const i=U(e,t);return(e,t)=>{n(e.constructor,S,C,V(i(e),t))}}(e,t)(i,o):"number"==typeof r?function(e,t){const i=U(e,t);return(e,t,o)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,t))throw new j(A.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,C,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=U(e,t);return(e,t,o)=>{if(!function(e){return void 0!==e.set}(o))throw new j(A.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,C,V(i(e),t))}}(e,t)(i,o,r)}catch(e){E(i,o,r,e)}}}function U(e,t){return n=>{const i=t(n);return t=>(i(t),e(t))}}function z(e){return _(F(P.singleInjection,e),$)}!function(e){e[e.method=0]="method",e[e.parameter=1]="parameter",e[e.property=2]="property"}(O||(O={}));const K="@inversifyjs/core/classIsInjectableFlagReflectKey";const L=[Array,BigInt,Boolean,Function,Number,Object,String];function q(t){const i=e(t,"design:paramtypes");void 0!==i&&n(t,S,C,function(e){return t=>(e.forEach((e,n)=>{var i;void 0!==t.constructorArguments[n]||(i=e,L.includes(i))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:P.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))}),t)}(i))}function G(i){return o=>{!function(n){if(void 0!==e(n,K))throw new j(A.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${n.name}"`);t(n,K,!0)}(o),q(o),void 0!==i&&n(o,S,C,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,C,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 j(A.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);H({...e,type:n})(t)}}function Q(e,t){return _(F(P.multipleInjection,e,t),$)}function Y(e){return t=>{void 0===t&&n(e,N,B,e=>e+1)}}function Z(e){return t=>{const n=t??{kind:R.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===P.unmanaged)throw new j(A.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 j(A.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return _(t,Y)}function te(e){if(e.optional)throw new j(A.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function ne(){return _(Z(te),Y)}function ie(){return(e,t,i)=>{try{n(e.constructor,S,C,(o=t,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new j(A.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,C,(o=t,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new j(A.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 j(A.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return _(n,Y)}function se(){return{kind:P.unmanaged}}const ae=D(se,function(e){if(k(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new j(A.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return se()});function ce(){return _(ae(),$)}var de;!function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection"}(de||(de={}));class ue{#m;constructor(e){this.#m=e}get name(){return this.#m.elem.name}get serviceIdentifier(){return this.#m.elem.serviceIdentifier}get tags(){return this.#m.elem.tags}getAncestor(){if(this.#m.elem.getAncestorsCalled=!0,void 0!==this.#m.previous)return new ue(this.#m.previous)}}function le(e,t,n){const i=n?.customServiceIdentifier??t.serviceIdentifier,o=(!0===n?.chained?[...e.operations.getBindingsChained(i)]:[...e.operations.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:u.Instance}}(e.autobindOptions,i);e.operations.setBinding(t),o.push(t)}return o}class pe{last;constructor(e){this.last=e}concat(e){return new pe({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 fe(e){return void 0!==e.redirections}function ve(e,t,n,i){const r=n.elem.serviceIdentifier,s=n.previous?.elem.serviceIdentifier;Array.isArray(e)?function(e,t,n,i,r,s){if(0!==e.length){const t=s[s.length-1]??n,a=`Ambiguous bindings found for service: "${o(t)}".${ye(s)}\n\nRegistered bindings:\n\n${e.map(e=>function(e){switch(e.type){case u.Instance:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case u.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 "${ge(n,i)}".${me(r)}`;throw new j(A.planning,a)}t||he(n,i,r,s)}(e,t,r,s,n.elem,i):function(e,t,n,i,o,r){void 0!==e||t||he(n,i,o,r)}(e,t,r,s,n.elem,i)}function he(e,t,n,i){const r=i[i.length-1]??e,s=`No bindings found for service: "${o(r)}".\n\nTrying to resolve bindings for "${ge(e,t)}".${ye(i)}${me(n)}`;throw new j(A.planning,s)}function ge(e,t){return void 0===t?`${o(e)} (Root service)`:o(t)}function me(e){const t=0===e.tags.size?"":`\n- tags:\n - ${[...e.tags.keys()].map(e=>e.toString()).join("\n - ")}`;return`\n\nBinding constraints:\n- service identifier: ${o(e.serviceIdentifier)}\n- name: ${e.name?.toString()??"-"}${t}`}function ye(e){return 0===e.length?"":`\n\n- service redirections:\n - ${e.map(e=>o(e)).join("\n - ")}`}function Me(e,t,n,i){if(1===e.redirections.length){const[o]=e.redirections;return void(fe(o)&&Me(o,t,n,[...i,o.binding.targetServiceIdentifier]))}ve(e.redirections,t,n,i)}function Ie(e,t,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[i]=e.bindings;return void(fe(i)&&Me(i,t,n,[i.binding.targetServiceIdentifier]))}ve(e.bindings,t,n,[])}function we(e){return r.is(e)?e.unwrap():e}function be(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 j(A.planning,`Circular dependency found: ${n}`,{cause:t})}throw t}const Se=Symbol.for("@inversifyjs/core/LazyPlanServiceNode");class Ce{[Se];_serviceIdentifier;_serviceNode;constructor(e){this[Se]=!0,this._serviceIdentifier=e.serviceIdentifier,this._serviceNode=e}get bindings(){return this._getNode().bindings}get isContextFree(){return this._getNode().isContextFree}get serviceIdentifier(){return this._serviceIdentifier}set bindings(e){this._getNode().bindings=e}set isContextFree(e){this._getNode().isContextFree=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[Se]}invalidate(){this._serviceNode=void 0}_getNode(){return void 0===this._serviceNode&&(this._serviceNode=this._buildPlanServiceNode()),this._serviceNode}}function Ne(e,t,n){if(void 0!==e&&n.isContextFree){const i={tree:{root:n}};t.setPlan(e,i)}else t.setNonCachedServiceNode(n)}class Te extends Ce{#y;constructor(e,t){super(t),this.#y=e}_buildPlanServiceNode(){return Re(this.#y)}}class je extends Ce{#y;#M;#I;constructor(e,t,n,i){super(i),this.#y=e,this.#M=t,this.#I=n}_buildPlanServiceNode(){return Be(this.#y,this.#M,this.#I)}}class Ae extends Ce{#y;#M;#w;constructor(e,t,n,i){super(i),this.#y=e,this.#M=t,this.#w=n}_buildPlanServiceNode(){return $e(this.#y,this.#M,this.#w)}}function Re(e){const t=function(e){const t=new Map;return void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value),new pe({elem:{getAncestorsCalled:!1,name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0})}(e),n=new ue(t.last),i=!!e.rootConstraints.isMultiple&&e.rootConstraints.chained,o=le(e,n,{chained:i}),r=[],s={bindings:r,isContextFree:!0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(r.push(...ke(e,t,o,s,i)),s.isContextFree=!t.last.elem.getAncestorsCalled,!e.rootConstraints.isMultiple){Ie(s,e.rootConstraints.isOptional??!1,t.last);const[n]=r;s.bindings=n}return s}function Pe(e){try{const t=function(e){return e.rootConstraints.isMultiple?{chained:e.rootConstraints.chained,isMultiple:!0,name:e.rootConstraints.name,optional:e.rootConstraints.isOptional??!1,serviceIdentifier:e.rootConstraints.serviceIdentifier,tag:e.rootConstraints.tag}:{isMultiple:!1,name:e.rootConstraints.name,optional:e.rootConstraints.isOptional??!1,serviceIdentifier:e.rootConstraints.serviceIdentifier,tag:e.rootConstraints.tag}}(e),n=e.operations.getPlan(t);if(void 0!==n)return n;const i=Re(e),o={tree:{root:new Te(e,i)}};return e.operations.setPlan(t,o),o}catch(t){be(e,t)}}function xe(e,t,n){const i={binding:t,classMetadata:e.operations.getClassMetadata(t.implementationType),constructorParams:[],propertyParams:new Map};return Ee({autobindOptions:e.autobindOptions,node:i,operations:e.operations,servicesBranch:e.servicesBranch},n)}function Be(e,t,n){const i=we(n.value),o=t.concat({getAncestorsCalled:!1,name:n.name,serviceIdentifier:i,tags:n.tags}),r=new ue(o.last),s=n.kind===P.multipleInjection&&n.chained,a=le(e,r,{chained:s}),c=[],d={bindings:c,isContextFree:!0,serviceIdentifier:i};if(c.push(...ke(e,o,a,d,s)),d.isContextFree=!o.last.elem.getAncestorsCalled,n.kind===P.singleInjection){Ie(d,n.optional,o.last);const[e]=c;d.bindings=e}return d}function $e(e,t,n){const i=we(n.value),o=t.concat({getAncestorsCalled:!1,name:n.name,serviceIdentifier:i,tags:n.tags}),r=new ue(o.last),s=n.kind===de.multipleInjection&&n.chained,a=le(e,r,{chained:s}),c=[],d={bindings:c,isContextFree:!0,serviceIdentifier:i};if(c.push(...ke(e,o,a,d,s)),d.isContextFree=!o.last.elem.getAncestorsCalled,n.kind===de.singleInjection){Ie(d,n.optional,o.last);const[e]=c;d.bindings=e}return d}function De(e,t,n){const i={binding:t,params:[]};return Ee({autobindOptions:e.autobindOptions,node:i,operations:e.operations,servicesBranch:e.servicesBranch},n)}function ke(e,t,n,i,o){const r=fe(i)?i.binding.targetServiceIdentifier:i.serviceIdentifier;e.servicesBranch.push(r);const s=[];for(const i of n)switch(i.type){case u.Instance:s.push(xe(e,i,t));break;case u.ResolvedValue:s.push(De(e,i,t));break;case u.ServiceRedirection:{const n=Fe(e,t,i,o);s.push(n);break}default:s.push({binding:i})}return e.servicesBranch.pop(),s}function Fe(e,t,n,i){const o={binding:n,redirections:[]},r=le(e,new ue(t.last),{chained:i,customServiceIdentifier:n.targetServiceIdentifier});return o.redirections.push(...ke(e,t,r,o,i)),o}function Ve(e,t,n){if(n.kind===P.unmanaged)return;const i=function(e){let t;if(0===e.tags.size)t=void 0;else{if(1!==e.tags.size)return;{const[n,i]=e.tags.entries().next().value;t={key:n,value:i}}}const n=r.is(e.value)?e.value.unwrap():e.value;return e.kind===P.multipleInjection?{chained:e.chained,isMultiple:!0,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}:{isMultiple:!1,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}}(n);if(void 0!==i){const t=e.operations.getPlan(i);if(void 0!==t&&t.tree.root.isContextFree)return t.tree.root}const o=Be(e,t,n),s=new je(e,t,n,o);return Ne(i,e.operations,s),s}function Oe(e,t,n){const i=function(e){let t;if(0===e.tags.size)t=void 0;else{if(1!==e.tags.size)return;{const[n,i]=e.tags.entries().next().value;t={key:n,value:i}}}const n=r.is(e.value)?e.value.unwrap():e.value;return e.kind===de.multipleInjection?{chained:e.chained,isMultiple:!0,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}:{isMultiple:!1,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}}(n);if(void 0!==i){const t=e.operations.getPlan(i);if(void 0!==t&&t.tree.root.isContextFree)return t.tree.root}const o=$e(e,t,n),s=new Ae(e,t,n,o);return Ne(i,e.operations,s),s}function Ee(e,t){return e.node.binding.type===u.Instance?function(e,t,n){const i=t.classMetadata;for(const[o,r]of i.constructorArguments.entries())t.constructorParams[o]=Ve(e,n,r);for(const[o,r]of i.properties){const i=Ve(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]=Oe(e,n,r);return e.node}(e,e.node,t)}class _e{#b;#S;#C;constructor(){this.#b=[],this.#S=8,this.#C=1024}*[Symbol.iterator](){let e=0;for(const t of this.#b){const n=t.deref();void 0===n?++e:yield n}this.#b.length>=this.#S&&this.#N(e)&&this.#T(e)}push(e){const t=new WeakRef(e);if(this.#b.push(t),this.#b.length>=this.#S&&this.#b.length%this.#C===0){let e=0;for(const t of this.#b)void 0===t.deref()&&++e;this.#N(e)&&this.#T(e)}}#T(e){const t=new Array(this.#b.length-e);let n=0;for(const e of this.#b)e.deref()&&(t[n++]=e);this.#b=t}#N(e){return e>=.5*this.#b.length}}class Ue{#j;#A;#R;#P;#x;#B;constructor(){this.#j=new Map,this.#A=this.#$(),this.#R=this.#$(),this.#P=this.#$(),this.#x=this.#$(),this.#B=new _e}clearCache(){for(const e of this.#D())e.clear();for(const e of this.#B)e.clearCache()}get(e){return void 0===e.name?void 0===e.tag?this.#k(this.#A,e).get(e.serviceIdentifier):this.#k(this.#x,e).get(e.serviceIdentifier)?.get(e.tag.key)?.get(e.tag.value):void 0===e.tag?this.#k(this.#R,e).get(e.serviceIdentifier)?.get(e.name):this.#k(this.#P,e).get(e.serviceIdentifier)?.get(e.name)?.get(e.tag.key)?.get(e.tag.value)}invalidateService(e){this.#F(e),this.#V(e),this.#O(e),this.#E(e),this.#_(e);for(const t of this.#B)t.invalidateService(e)}set(e,t){void 0===e.name?void 0===e.tag?this.#k(this.#A,e).set(e.serviceIdentifier,t):this.#U(this.#U(this.#k(this.#x,e),e.serviceIdentifier),e.tag.key).set(e.tag.value,t):void 0===e.tag?this.#U(this.#k(this.#R,e),e.serviceIdentifier).set(e.name,t):this.#U(this.#U(this.#U(this.#k(this.#P,e),e.serviceIdentifier),e.name),e.tag.key).set(e.tag.value,t)}setNonCachedServiceNode(e){let t=this.#j.get(e.serviceIdentifier);void 0===t&&(t=new Set,this.#j.set(e.serviceIdentifier,t)),t.add(e)}subscribe(e){this.#B.push(e)}#$(){const e=new Array(8);for(let t=0;t<e.length;++t)e[t]=new Map;return e}#U(e,t){let n=e.get(t);return void 0===n&&(n=new Map,e.set(t,n)),n}#k(e,t){return e[this.#z(t)]}#D(){return[this.#j,...this.#A,...this.#R,...this.#P,...this.#x]}#z(e){return e.isMultiple?(e.chained?4:0)|(e.optional?1:0)|2:e.optional?1:0}#V(e){for(const t of this.#R){const n=t.get(e);if(void 0!==n)for(const e of n.values())Ce.is(e.tree.root)&&(this.#K(e.tree.root),e.tree.root.invalidate())}}#O(e){for(const t of this.#P){const n=t.get(e);if(void 0!==n)for(const e of n.values())for(const t of e.values())for(const e of t.values())Ce.is(e.tree.root)&&(this.#K(e.tree.root),e.tree.root.invalidate())}}#L(e){switch(e.binding.type){case u.ServiceRedirection:for(const t of e.redirections)this.#L(t);break;case u.Instance:for(const t of e.constructorParams)void 0!==t&&this.#q(t);for(const t of e.propertyParams.values())this.#q(t);break;case u.ResolvedValue:for(const t of e.params)this.#q(t)}}#q(e){const t=this.#j.get(e.serviceIdentifier);void 0!==t&&t.has(e)&&(t.delete(e),this.#K(e))}#K(e){if(void 0!==e.bindings)if(Array.isArray(e.bindings))for(const t of e.bindings)this.#L(t);else this.#L(e.bindings)}#_(e){const t=this.#j.get(e);if(void 0!==t)for(const e of t)Ce.is(e)&&(this.#K(e),e.invalidate())}#F(e){for(const t of this.#A){const n=t.get(e);void 0!==n&&Ce.is(n.tree.root)&&(this.#K(n.tree.root),n.tree.root.invalidate())}}#E(e){for(const t of this.#x){const n=t.get(e);if(void 0!==n)for(const e of n.values())for(const t of e.values())Ce.is(t.tree.root)&&(this.#K(t.tree.root),t.tree.root.invalidate())}}}function ze(e,t){return s(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 Le(e,t,n){const i=e.getActivations(t);return void 0===i?n:s(n)?qe(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(s(t))return qe(e,t,n);i=t,o=n.next()}return i}(e,n,i[Symbol.iterator]())}async function qe(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 Ge(e,t,n){let i=n;if(void 0!==t.onActivation){const n=t.onActivation;i=s(i)?i.then(t=>n(e.context,t)):n(e.context,i)}return Le(e,t.serviceIdentifier,i)}function We(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;return ze(n,Ge(t,n,e(t,n)))}}const Xe=We(function(e,t){return t.value});function He(e){return e}function Je(e,t){return(n,i)=>{const o=e(i);switch(o.scope){case d.Singleton:if(o.cache.isRight)return o.cache.value;return ze(o,Ge(n,o,t(n,i)));case d.Request:{if(n.requestScopeCache.has(o.id))return n.requestScopeCache.get(o.id);const e=Ge(n,o,t(n,i));return n.requestScopeCache.set(o.id,e),e}case d.Transient:return Ge(n,o,t(n,i))}}}const Qe=(e=>Je(He,e))(function(e,t){return t.value(e.context)});const Ye=We(function(e,t){return t.factory(e.context)});function Ze(e,t,n){const i=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new j(A.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new j(A.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 j(A.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(s(i))return async function(e,t,n){try{await n}catch(n){throw new j(A.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 s(i)?i.then(()=>e):e}function et(e){return(t,n,i)=>{const o=new i.binding.implementationType(...t),r=e(n,o,i);return s(r)?r.then(()=>Ze(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)):Ze(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)}}const tt=We(function(e,t){return t.provider(e.context)});function nt(e){return e.binding}function it(e){return e.binding}const ot=function(e){return(t,n,i)=>{const o=[];for(const[r,a]of i.propertyParams){const c=i.classMetadata.properties.get(r);if(void 0===c)throw new j(A.resolution,`Expecting metadata at property "${r.toString()}", none found`);c.kind!==P.unmanaged&&void 0!==a.bindings&&(n[r]=e(t,a),s(n[r])&&o.push((async()=>{n[r]=await n[r]})()))}if(o.length>0)return Promise.all(o).then(()=>{})}}(pt),rt=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}}(lt),st=function(e,t,n){return(i,o)=>{const r=e(i,o);return s(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(s)?Promise.all(i):i}}(pt),function(e){return async(t,n,i)=>{const o=await t;return e(o,n,i)}}(et(ot)),et(ot)),at=function(e){return(t,n)=>{const i=e(t,n);return s(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(s)?Promise.all(i):i}}(pt)),ct=(e=>Je(nt,e))(st),dt=(e=>Je(it,e))(at);function ut(e){return pt(e,e.planResult.tree.root)}function lt(e,t){switch(t.binding.type){case u.ConstantValue:return Xe(e,t.binding);case u.DynamicValue:return Qe(e,t.binding);case u.Factory:return Ye(e,t.binding);case u.Instance:return ct(e,t);case u.Provider:return tt(e,t.binding);case u.ResolvedValue:return dt(e,t)}}function pt(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(...rt(e,i)):n.push(lt(e,i));if(n.some(s))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(fe(t)){const n=rt(e,t);if(1===n.length)return n[0];throw new j(A.resolution,"Unexpected multiple resolved values on single injection")}return lt(e,t)}(e,t.bindings)}function ft(e){return void 0!==e.scope}function vt(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function ht(e,t,n){const i=e.getDeactivations(t);if(void 0!==i)return s(n)?gt(n,i[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const i=n.value(e);if(s(i))return gt(e,t);n=t.next()}}(n,i[Symbol.iterator]())}async function gt(e,t){const n=await e;let i=t.next();for(;!0!==i.done;)await i.value(n),i=t.next()}function mt(e,t){const n=function(e,t){if(t.type===u.Instance){const n=e.getClassMetadata(t.implementationType),i=t.cache.value;return s(i)?i.then(e=>vt(n,e)):vt(n,i)}}(e,t);return void 0===n?yt(e,t):n.then(()=>yt(e,t))}function yt(e,t){const n=t.cache;return s(n.value)?n.value.then(n=>Mt(e,t,n)):Mt(e,t,n.value)}function Mt(e,t,n){let i;if(void 0!==t.onDeactivation){i=(0,t.onDeactivation)(n)}return void 0===i?ht(e,t.serviceIdentifier,n):i.then(()=>ht(e,t.serviceIdentifier,n))}function It(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)ft(n)&&n.scope===d.Singleton&&n.cache.isRight&&t.push(n);return t}(t),i=[];for(const t of n){const n=mt(e,t);void 0!==n&&i.push(n)}return i.length>0?Promise.all(i).then(()=>{}):void 0}function wt(e,t){const n=e.getBindingsFromModule(t);return It(e,n)}function bt(e,t){const n=e.getBindings(t);return It(e,n)}export{g as ActivationsService,I as BindingService,P as ClassElementMetadataKind,w as DeactivationsService,Ue as PlanResultCacheService,de as ResolvedValueElementMetadataKind,d as bindingScopeValues,u as bindingTypeValues,b as decorate,c as getBindingId,x as getClassMetadata,z as inject,J as injectFromBase,G as injectable,Q as multiInject,ee as named,ne as optional,Pe as plan,ie as postConstruct,oe as preDestroy,ut as resolve,It as resolveBindingsDeactivations,wt as resolveModuleDeactivations,bt 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 s}from"@inversifyjs/common";const a="@inversifyjs/container/bindingId";function c(){const i=e(Object,a)??0;return i===Number.MAX_SAFE_INTEGER?t(Object,a,Number.MIN_SAFE_INTEGER):n(Object,a,()=>i,e=>e+1),i}const d={Request:"Request",Singleton:"Singleton",Transient:"Transient"},u={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.#s(),n=Reflect.ownKeys(this.#n),i=this._buildNewInstance(this.#n);this.#a(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.#d(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}#s(){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}#u(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.#u(t,n));t.set(i,e)}}#a(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.#u(o,n),e)}}#d(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,v,h;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class g{#f;#v;constructor(e,t){this.#f=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new g(e)}add(e,t){this.#f.add(e,t)}clone(){return new g(this.#v,this.#f.clone())}get(e){const t=[],n=this.#f.get(f.serviceId,e);void 0!==n&&t.push(n);const i=this.#v()?.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 m(e){return e.isRight?{isRight:!0,value:e.value}:e}function y(e){switch(e.type){case u.ConstantValue:case u.DynamicValue:return function(e){return{cache:m(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 u.Factory:return function(e){return{cache:m(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 u.Instance:return function(e){return{cache:m(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 u.Provider:return function(e){return{cache:m(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 u.ResolvedValue:return function(e){return{cache:m(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 u.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"}(v||(v={}));class M extends p{_buildNewInstance(e){return new M(e)}_cloneModel(e){return y(e)}}class I{#h;#v;constructor(e,t){this.#h=t??new M({id:{isOptional:!1},moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new I(e)}clone(){return new I(this.#v,this.#h.clone())}get(e){return this.getNonParentBindings(e)??this.#v()?.get(e)}*getChained(e){const t=this.getNonParentBindings(e);void 0!==t&&(yield*t);const n=this.#v();void 0!==n&&(yield*n.getChained(e))}getBoundServices(){const e=new Set(this.#h.getAllKeys(v.serviceId)),t=this.#v();if(void 0!==t)for(const n of t.getBoundServices())e.add(n);return e}getById(e){return this.#h.get(v.id,e)??this.#v()?.getById(e)}getByModuleId(e){return this.#h.get(v.moduleId,e)??this.#v()?.getByModuleId(e)}getNonParentBindings(e){return this.#h.get(v.serviceId,e)}getNonParentBoundServices(){return this.#h.getAllKeys(v.serviceId)}removeById(e){this.#h.removeByRelation(v.id,e)}removeAllByModuleId(e){this.#h.removeByRelation(v.moduleId,e)}removeAllByServiceId(e){this.#h.removeByRelation(v.serviceId,e)}set(e){const t={[v.id]:e.id,[v.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[v.moduleId]=e.moduleId),this.#h.add(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(h||(h={}));class w{#g;#v;constructor(e,t){this.#g=t??new p({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#v=e}static build(e){return new w(e)}add(e,t){this.#g.add(e,t)}clone(){return new w(this.#v,this.#g.clone())}get(e){const t=[],n=this.#g.get(h.serviceId,e);void 0!==n&&t.push(n);const i=this.#v()?.get(e);if(void 0!==i&&t.push(i),0!==t.length)return l(...t)}removeAllByModuleId(e){this.#g.removeByRelation(h.moduleId,e)}removeAllByServiceId(e){this.#g.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 C(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const N="@inversifyjs/core/pendingClassMetadataCountReflectKey";const T=Symbol.for("@inversifyjs/core/InversifyCoreError");class j 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 j.is(e)&&e.kind===t}}var P,A,R;function x(t){const n=e(t,S)??C();if(!function(t){const n=e(t,N);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new j(P.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 j(P.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!==A.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===A.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 j(P.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 j(P.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function B(){return 0}function $(e){return t=>{void 0!==t&&t.kind===A.unknown&&n(e,N,B,e=>e-1)}}function D(e,t){return(...n)=>i=>{if(void 0===i)return e(...n);if(i.kind===R.unmanaged)throw new j(P.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(i,...n)}}function k(e){if(e.kind!==A.unknown&&!0!==e.isFromTypescriptParamType)throw new j(P.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"}(P||(P={})),function(e){e[e.unknown=32]="unknown"}(A||(A={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(R||(R={}));const F=D(function(e,t,n){return e===R.multipleInjection?{chained:n?.chained??!1,kind:e,name:void 0,optional:!1,tags:new Map,value:t}:{kind:e,name:void 0,optional:!1,tags:new Map,value:t}},function(e,t,n,i){return k(e),t===R.multipleInjection?{...e,chained:i?.chained??!1,kind:t,value:n}:{...e,kind:t,value:n}});function V(e,t){return n=>{const i=n.properties.get(t);return n.properties.set(t,e(i)),n}}var O;function E(e,t,n,i){if(j.isErrorOfKind(i,P.injectionDecoratorConflict)){const o=function(e,t,n){if(void 0===n){if(void 0===t)throw new j(P.unknown,"Unexpected undefined property and index values");return{kind:O.property,property:t,targetClass:e.constructor}}return"number"==typeof n?{index:n,kind:O.parameter,targetClass:e}:{kind:O.method,method:t,targetClass:e}}(e,t,n);throw new j(P.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${i.message}\n\nDetails\n\n${function(e){switch(e.kind){case O.method:return`[class: "${e.targetClass.name}", method: "${e.method.toString()}"]`;case O.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case O.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(o)}`,{cause:i})}throw i}function _(e,t){return(i,o,r)=>{try{void 0===r?function(e,t){const i=U(e,t);return(e,t)=>{n(e.constructor,S,C,V(i(e),t))}}(e,t)(i,o):"number"==typeof r?function(e,t){const i=U(e,t);return(e,t,o)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,t))throw new j(P.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,C,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=U(e,t);return(e,t,o)=>{if(!function(e){return void 0!==e.set}(o))throw new j(P.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,C,V(i(e),t))}}(e,t)(i,o,r)}catch(e){E(i,o,r,e)}}}function U(e,t){return n=>{const i=t(n);return t=>(i(t),e(t))}}function z(e){return _(F(R.singleInjection,e),$)}!function(e){e[e.method=0]="method",e[e.parameter=1]="parameter",e[e.property=2]="property"}(O||(O={}));const K="@inversifyjs/core/classIsInjectableFlagReflectKey";const L=[Array,BigInt,Boolean,Function,Number,Object,String];function q(t){const i=e(t,"design:paramtypes");void 0!==i&&n(t,S,C,function(e){return t=>(e.forEach((e,n)=>{var i;void 0!==t.constructorArguments[n]||(i=e,L.includes(i))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:R.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))}),t)}(i))}function G(i){return o=>{!function(n){if(void 0!==e(n,K))throw new j(P.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${n.name}"`);t(n,K,!0)}(o),q(o),void 0!==i&&n(o,S,C,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,C,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 j(P.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);H({...e,type:n})(t)}}function Q(e,t){return _(F(R.multipleInjection,e,t),$)}function Y(e){return t=>{void 0===t&&n(e,N,B,e=>e+1)}}function Z(e){return t=>{const n=t??{kind:A.unknown,name:void 0,optional:!1,tags:new Map};if(n.kind===R.unmanaged)throw new j(P.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 j(P.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return _(t,Y)}function te(e){if(e.optional)throw new j(P.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function ne(){return _(Z(te),Y)}function ie(){return(e,t,i)=>{try{n(e.constructor,S,C,(o=t,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new j(P.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,C,(o=t,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new j(P.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 j(P.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return _(n,Y)}function se(){return{kind:R.unmanaged}}const ae=D(se,function(e){if(k(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new j(P.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return se()});function ce(){return _(ae(),$)}var de;!function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection"}(de||(de={}));class ue{#m;constructor(e){this.#m=e}get name(){return this.#m.elem.name}get serviceIdentifier(){return this.#m.elem.serviceIdentifier}get tags(){return this.#m.elem.tags}getAncestor(){if(this.#m.elem.getAncestorsCalled=!0,void 0!==this.#m.previous)return new ue(this.#m.previous)}}function le(e,t,n){const i=n?.customServiceIdentifier??t.serviceIdentifier,o=(!0===n?.chained?[...e.operations.getBindingsChained(i)]:[...e.operations.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:u.Instance}}(e.autobindOptions,i);e.operations.setBinding(t),o.push(t)}return o}class pe{last;constructor(e){this.last=e}concat(e){return new pe({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 fe(e){return void 0!==e.redirections}function ve(e,t,n,i){const r=n.elem.serviceIdentifier,s=n.previous?.elem.serviceIdentifier;Array.isArray(e)?function(e,t,n,i,r,s){if(0!==e.length){const t=s[s.length-1]??n,a=`Ambiguous bindings found for service: "${o(t)}".${ye(s)}\n\nRegistered bindings:\n\n${e.map(e=>function(e){switch(e.type){case u.Instance:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case u.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 "${ge(n,i)}".${me(r)}`;throw new j(P.planning,a)}t||he(n,i,r,s)}(e,t,r,s,n.elem,i):function(e,t,n,i,o,r){void 0!==e||t||he(n,i,o,r)}(e,t,r,s,n.elem,i)}function he(e,t,n,i){const r=i[i.length-1]??e,s=`No bindings found for service: "${o(r)}".\n\nTrying to resolve bindings for "${ge(e,t)}".${ye(i)}${me(n)}`;throw new j(P.planning,s)}function ge(e,t){return void 0===t?`${o(e)} (Root service)`:o(t)}function me(e){const t=0===e.tags.size?"":`\n- tags:\n - ${[...e.tags.keys()].map(e=>e.toString()).join("\n - ")}`;return`\n\nBinding constraints:\n- service identifier: ${o(e.serviceIdentifier)}\n- name: ${e.name?.toString()??"-"}${t}`}function ye(e){return 0===e.length?"":`\n\n- service redirections:\n - ${e.map(e=>o(e)).join("\n - ")}`}function Me(e,t,n,i){if(1===e.redirections.length){const[o]=e.redirections;return void(fe(o)&&Me(o,t,n,[...i,o.binding.targetServiceIdentifier]))}ve(e.redirections,t,n,i)}function Ie(e,t,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[i]=e.bindings;return void(fe(i)&&Me(i,t,n,[i.binding.targetServiceIdentifier]))}ve(e.bindings,t,n,[])}function we(e){return r.is(e)?e.unwrap():e}function be(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 j(P.planning,`Circular dependency found: ${n}`,{cause:t})}throw t}const Se=Symbol.for("@inversifyjs/core/LazyPlanServiceNode");class Ce{[Se];_serviceIdentifier;_serviceNode;constructor(e){this[Se]=!0,this._serviceIdentifier=e.serviceIdentifier,this._serviceNode=e}get bindings(){return this._getNode().bindings}get isContextFree(){return this._getNode().isContextFree}get serviceIdentifier(){return this._serviceIdentifier}set bindings(e){this._getNode().bindings=e}set isContextFree(e){this._getNode().isContextFree=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[Se]}invalidate(){this._serviceNode=void 0}_getNode(){return void 0===this._serviceNode&&(this._serviceNode=this._buildPlanServiceNode()),this._serviceNode}}function Ne(e,t,n){if(void 0!==e&&n.isContextFree){const i={tree:{root:n}};t.setPlan(e,i)}else t.setNonCachedServiceNode(n)}class Te extends Ce{#y;constructor(e,t){super(t),this.#y=e}_buildPlanServiceNode(){return Ae(this.#y)}}class je extends Ce{#y;#M;#I;constructor(e,t,n,i){super(i),this.#y=e,this.#M=t,this.#I=n}_buildPlanServiceNode(){return Be(this.#y,this.#M,this.#I)}}class Pe extends Ce{#y;#M;#w;constructor(e,t,n,i){super(i),this.#y=e,this.#M=t,this.#w=n}_buildPlanServiceNode(){return $e(this.#y,this.#M,this.#w)}}function Ae(e){const t=function(e){const t=new Map;return void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value),new pe({elem:{getAncestorsCalled:!1,name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0})}(e),n=new ue(t.last),i=!!e.rootConstraints.isMultiple&&e.rootConstraints.chained,o=le(e,n,{chained:i}),r=[],s={bindings:r,isContextFree:!0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(r.push(...ke(e,t,o,s,i)),s.isContextFree=!t.last.elem.getAncestorsCalled,!e.rootConstraints.isMultiple){Ie(s,e.rootConstraints.isOptional??!1,t.last);const[n]=r;s.bindings=n}return s}function Re(e){try{const t=function(e){return e.rootConstraints.isMultiple?{chained:e.rootConstraints.chained,isMultiple:!0,name:e.rootConstraints.name,optional:e.rootConstraints.isOptional??!1,serviceIdentifier:e.rootConstraints.serviceIdentifier,tag:e.rootConstraints.tag}:{isMultiple:!1,name:e.rootConstraints.name,optional:e.rootConstraints.isOptional??!1,serviceIdentifier:e.rootConstraints.serviceIdentifier,tag:e.rootConstraints.tag}}(e),n=e.operations.getPlan(t);if(void 0!==n)return n;const i=Ae(e),o={tree:{root:new Te(e,i)}};return e.operations.setPlan(t,o),o}catch(t){be(e,t)}}function xe(e,t,n){const i={binding:t,classMetadata:e.operations.getClassMetadata(t.implementationType),constructorParams:[],propertyParams:new Map};return Ee({autobindOptions:e.autobindOptions,node:i,operations:e.operations,servicesBranch:e.servicesBranch},n)}function Be(e,t,n){const i=we(n.value),o=t.concat({getAncestorsCalled:!1,name:n.name,serviceIdentifier:i,tags:n.tags}),r=new ue(o.last),s=n.kind===R.multipleInjection&&n.chained,a=le(e,r,{chained:s}),c=[],d={bindings:c,isContextFree:!0,serviceIdentifier:i};if(c.push(...ke(e,o,a,d,s)),d.isContextFree=!o.last.elem.getAncestorsCalled,n.kind===R.singleInjection){Ie(d,n.optional,o.last);const[e]=c;d.bindings=e}return d}function $e(e,t,n){const i=we(n.value),o=t.concat({getAncestorsCalled:!1,name:n.name,serviceIdentifier:i,tags:n.tags}),r=new ue(o.last),s=n.kind===de.multipleInjection&&n.chained,a=le(e,r,{chained:s}),c=[],d={bindings:c,isContextFree:!0,serviceIdentifier:i};if(c.push(...ke(e,o,a,d,s)),d.isContextFree=!o.last.elem.getAncestorsCalled,n.kind===de.singleInjection){Ie(d,n.optional,o.last);const[e]=c;d.bindings=e}return d}function De(e,t,n){const i={binding:t,params:[]};return Ee({autobindOptions:e.autobindOptions,node:i,operations:e.operations,servicesBranch:e.servicesBranch},n)}function ke(e,t,n,i,o){const r=fe(i)?i.binding.targetServiceIdentifier:i.serviceIdentifier;e.servicesBranch.push(r);const s=[];for(const i of n)switch(i.type){case u.Instance:s.push(xe(e,i,t));break;case u.ResolvedValue:s.push(De(e,i,t));break;case u.ServiceRedirection:{const n=Fe(e,t,i,o);s.push(n);break}default:s.push({binding:i})}return e.servicesBranch.pop(),s}function Fe(e,t,n,i){const o={binding:n,redirections:[]},r=le(e,new ue(t.last),{chained:i,customServiceIdentifier:n.targetServiceIdentifier});return o.redirections.push(...ke(e,t,r,o,i)),o}function Ve(e,t,n){if(n.kind===R.unmanaged)return;const i=function(e){let t;if(0===e.tags.size)t=void 0;else{if(1!==e.tags.size)return;{const[n,i]=e.tags.entries().next().value;t={key:n,value:i}}}const n=r.is(e.value)?e.value.unwrap():e.value;return e.kind===R.multipleInjection?{chained:e.chained,isMultiple:!0,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}:{isMultiple:!1,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}}(n);if(void 0!==i){const t=e.operations.getPlan(i);if(void 0!==t&&t.tree.root.isContextFree)return t.tree.root}const o=Be(e,t,n),s=new je(e,t,n,o);return Ne(i,e.operations,s),s}function Oe(e,t,n){const i=function(e){let t;if(0===e.tags.size)t=void 0;else{if(1!==e.tags.size)return;{const[n,i]=e.tags.entries().next().value;t={key:n,value:i}}}const n=r.is(e.value)?e.value.unwrap():e.value;return e.kind===de.multipleInjection?{chained:e.chained,isMultiple:!0,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}:{isMultiple:!1,name:e.name,optional:e.optional,serviceIdentifier:n,tag:t}}(n);if(void 0!==i){const t=e.operations.getPlan(i);if(void 0!==t&&t.tree.root.isContextFree)return t.tree.root}const o=$e(e,t,n),s=new Pe(e,t,n,o);return Ne(i,e.operations,s),s}function Ee(e,t){return e.node.binding.type===u.Instance?function(e,t,n){const i=t.classMetadata;for(const[o,r]of i.constructorArguments.entries())t.constructorParams[o]=Ve(e,n,r);for(const[o,r]of i.properties){const i=Ve(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]=Oe(e,n,r);return e.node}(e,e.node,t)}class _e{#b;#S;#C;constructor(){this.#b=[],this.#S=8,this.#C=1024}*[Symbol.iterator](){let e=0;for(const t of this.#b){const n=t.deref();void 0===n?++e:yield n}this.#b.length>=this.#S&&this.#N(e)&&this.#T(e)}push(e){const t=new WeakRef(e);if(this.#b.push(t),this.#b.length>=this.#S&&this.#b.length%this.#C===0){let e=0;for(const t of this.#b)void 0===t.deref()&&++e;this.#N(e)&&this.#T(e)}}#T(e){const t=new Array(this.#b.length-e);let n=0;for(const e of this.#b)e.deref()&&(t[n++]=e);this.#b=t}#N(e){return e>=.5*this.#b.length}}class Ue{#j;#P;#A;#R;#x;#B;constructor(){this.#j=new Map,this.#P=this.#$(),this.#A=this.#$(),this.#R=this.#$(),this.#x=this.#$(),this.#B=new _e}clearCache(){for(const e of this.#D())e.clear();for(const e of this.#B)e.clearCache()}get(e){return void 0===e.name?void 0===e.tag?this.#k(this.#P,e).get(e.serviceIdentifier):this.#k(this.#x,e).get(e.serviceIdentifier)?.get(e.tag.key)?.get(e.tag.value):void 0===e.tag?this.#k(this.#A,e).get(e.serviceIdentifier)?.get(e.name):this.#k(this.#R,e).get(e.serviceIdentifier)?.get(e.name)?.get(e.tag.key)?.get(e.tag.value)}invalidateService(e){this.#F(e),this.#V(e),this.#O(e),this.#E(e),this.#_(e);for(const t of this.#B)t.invalidateService(e)}set(e,t){void 0===e.name?void 0===e.tag?this.#k(this.#P,e).set(e.serviceIdentifier,t):this.#U(this.#U(this.#k(this.#x,e),e.serviceIdentifier),e.tag.key).set(e.tag.value,t):void 0===e.tag?this.#U(this.#k(this.#A,e),e.serviceIdentifier).set(e.name,t):this.#U(this.#U(this.#U(this.#k(this.#R,e),e.serviceIdentifier),e.name),e.tag.key).set(e.tag.value,t)}setNonCachedServiceNode(e){let t=this.#j.get(e.serviceIdentifier);void 0===t&&(t=new Set,this.#j.set(e.serviceIdentifier,t)),t.add(e)}subscribe(e){this.#B.push(e)}#$(){const e=new Array(8);for(let t=0;t<e.length;++t)e[t]=new Map;return e}#U(e,t){let n=e.get(t);return void 0===n&&(n=new Map,e.set(t,n)),n}#k(e,t){return e[this.#z(t)]}#D(){return[this.#j,...this.#P,...this.#A,...this.#R,...this.#x]}#z(e){return e.isMultiple?(e.chained?4:0)|(e.optional?1:0)|2:e.optional?1:0}#V(e){for(const t of this.#A){const n=t.get(e);if(void 0!==n)for(const e of n.values())Ce.is(e.tree.root)&&(this.#K(e.tree.root),e.tree.root.invalidate())}}#O(e){for(const t of this.#R){const n=t.get(e);if(void 0!==n)for(const e of n.values())for(const t of e.values())for(const e of t.values())Ce.is(e.tree.root)&&(this.#K(e.tree.root),e.tree.root.invalidate())}}#L(e){switch(e.binding.type){case u.ServiceRedirection:for(const t of e.redirections)this.#L(t);break;case u.Instance:for(const t of e.constructorParams)void 0!==t&&this.#q(t);for(const t of e.propertyParams.values())this.#q(t);break;case u.ResolvedValue:for(const t of e.params)this.#q(t)}}#q(e){const t=this.#j.get(e.serviceIdentifier);void 0!==t&&t.has(e)&&(t.delete(e),this.#K(e))}#K(e){if(void 0!==e.bindings)if(Array.isArray(e.bindings))for(const t of e.bindings)this.#L(t);else this.#L(e.bindings)}#_(e){const t=this.#j.get(e);if(void 0!==t)for(const e of t)Ce.is(e)&&(this.#K(e),e.invalidate())}#F(e){for(const t of this.#P){const n=t.get(e);void 0!==n&&Ce.is(n.tree.root)&&(this.#K(n.tree.root),n.tree.root.invalidate())}}#E(e){for(const t of this.#x){const n=t.get(e);if(void 0!==n)for(const e of n.values())for(const t of e.values())Ce.is(t.tree.root)&&(this.#K(t.tree.root),t.tree.root.invalidate())}}}function ze(e,t){return s(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 Le(e,t,n){const i=e.getActivations(t);return void 0===i?n:s(n)?qe(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(s(t))return qe(e,t,n);i=t,o=n.next()}return i}(e,n,i[Symbol.iterator]())}async function qe(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 Ge(e,t,n){let i=n;if(void 0!==t.onActivation){const n=t.onActivation;i=s(i)?i.then(t=>n(e.context,t)):n(e.context,i)}return Le(e,t.serviceIdentifier,i)}function We(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;return ze(n,Ge(t,n,e(t,n)))}}const Xe=We(function(e,t){return t.value});function He(e){return e}function Je(e,t){return(n,i)=>{const o=e(i);switch(o.scope){case d.Singleton:if(o.cache.isRight)return o.cache.value;return ze(o,Ge(n,o,t(n,i)));case d.Request:{if(n.requestScopeCache.has(o.id))return n.requestScopeCache.get(o.id);const e=Ge(n,o,t(n,i));return n.requestScopeCache.set(o.id,e),e}case d.Transient:return Ge(n,o,t(n,i))}}}const Qe=(e=>Je(He,e))(function(e,t){return t.value(e.context)});const Ye=We(function(e,t){return t.factory(e.context)});function Ze(e,t,n){const i=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new j(P.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new j(P.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 j(P.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(s(i))return async function(e,t,n){try{await n}catch(n){throw new j(P.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 s(i)?i.then(()=>e):e}function et(e){return(t,n,i)=>{const o=new i.binding.implementationType(...t),r=e(n,o,i);return s(r)?r.then(()=>Ze(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)):Ze(o,i.binding,i.classMetadata.lifecycle.postConstructMethodName)}}const tt=We(function(e,t){return t.provider(e.context)});function nt(e){return e.binding}function it(e){return e.binding}const ot=function(e){return(t,n,i)=>{const o=[];for(const[r,a]of i.propertyParams){const c=i.classMetadata.properties.get(r);if(void 0===c)throw new j(P.resolution,`Expecting metadata at property "${r.toString()}", none found`);c.kind!==R.unmanaged&&void 0!==a.bindings&&(n[r]=e(t,a),s(n[r])&&o.push((async()=>{n[r]=await n[r]})()))}if(o.length>0)return Promise.all(o).then(()=>{})}}(pt),rt=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}}(lt),st=function(e,t,n){return(i,o)=>{const r=e(i,o);return s(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(s)?Promise.all(i):i}}(pt),function(e){return async(t,n,i)=>{const o=await t;return e(o,n,i)}}(et(ot)),et(ot)),at=function(e){return(t,n)=>{const i=e(t,n);return s(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(s)?Promise.all(i):i}}(pt)),ct=(e=>Je(nt,e))(st),dt=(e=>Je(it,e))(at);function ut(e){return pt(e,e.planResult.tree.root)}function lt(e,t){switch(t.binding.type){case u.ConstantValue:return Xe(e,t.binding);case u.DynamicValue:return Qe(e,t.binding);case u.Factory:return Ye(e,t.binding);case u.Instance:return ct(e,t);case u.Provider:return tt(e,t.binding);case u.ResolvedValue:return dt(e,t)}}function pt(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(...rt(e,i)):n.push(lt(e,i));if(n.some(s))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(fe(t)){const n=rt(e,t);if(1===n.length)return n[0];throw new j(P.resolution,"Unexpected multiple resolved values on single injection")}return lt(e,t)}(e,t.bindings)}function ft(e){return void 0!==e.scope}function vt(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function ht(e,t,n){const i=e.getDeactivations(t);if(void 0!==i)return s(n)?gt(n,i[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const i=n.value(e);if(s(i))return gt(e,t);n=t.next()}}(n,i[Symbol.iterator]())}async function gt(e,t){const n=await e;let i=t.next();for(;!0!==i.done;)await i.value(n),i=t.next()}function mt(e,t){const n=function(e,t){if(t.type===u.Instance){const n=e.getClassMetadata(t.implementationType),i=t.cache.value;return s(i)?i.then(e=>vt(n,e)):vt(n,i)}}(e,t);return void 0===n?yt(e,t):n.then(()=>yt(e,t))}function yt(e,t){const n=t.cache;return s(n.value)?n.value.then(n=>Mt(e,t,n)):Mt(e,t,n.value)}function Mt(e,t,n){let i;if(void 0!==t.onDeactivation){i=(0,t.onDeactivation)(n)}return void 0===i?ht(e,t.serviceIdentifier,n):i.then(()=>ht(e,t.serviceIdentifier,n))}function It(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)ft(n)&&n.scope===d.Singleton&&n.cache.isRight&&t.push(n);return t}(t),i=[];for(const t of n){const n=mt(e,t);void 0!==n&&i.push(n)}return i.length>0?Promise.all(i).then(()=>{}):void 0}function wt(e,t){const n=e.getBindingsFromModule(t);return It(e,n)}function bt(e,t){const n=e.getBindings(t);return It(e,n)}export{g as ActivationsService,I as BindingService,R as ClassElementMetadataKind,w as DeactivationsService,Ue as PlanResultCacheService,de as ResolvedValueElementMetadataKind,d as bindingScopeValues,u as bindingTypeValues,b as decorate,c as getBindingId,x as getClassMetadata,z as inject,J as injectFromBase,G as injectable,Q as multiInject,ee as named,ne as optional,Re as plan,ie as postConstruct,oe as preDestroy,ut as resolve,It as resolveBindingsDeactivations,wt as resolveModuleDeactivations,bt 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/planning/calculations/buildFilteredServiceBindings.ts","../../src/common/models/SingleInmutableLinkedList.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/getServiceFromMaybeLazyServiceIdentifier.ts","../../src/planning/calculations/handlePlanError.ts","../../src/error/calculations/isStackOverflowError.ts","../../src/planning/models/LazyPlanServiceNode.ts","../../src/planning/actions/cacheNonRootPlanServiceNode.ts","../../src/planning/actions/plan.ts","../../src/planning/calculations/buildPlanBindingConstraintsList.ts","../../src/planning/calculations/buildGetPlanOptionsFromPlanParams.ts","../../src/planning/calculations/tryBuildGetPlanOptionsFromManagedClassElementMetadata.ts","../../src/planning/calculations/tryBuildGetPlanOptionsFromResolvedValueElementMetadata.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,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","getChained","currentBindings","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","multipleInjection","chained","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","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","size","hasManagedMetadata","ResolvedValueElementMetadataKind","BindingConstraintsImplementation","node","elem","getAncestor","getAncestorsCalled","previous","buildFilteredServiceBindings","bindingConstraints","customServiceIdentifier","filteredBindings","operations","getBindingsChained","getBindings","filter","autobindOptions","buildInstanceBinding","setBinding","SingleInmutableLinkedList","last","concat","iterator","next","done","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindingNodes","bindingConstraintNode","serviceRedirections","parentServiceIdentifier","lastResolvedServiceIdentifier","errorMessage","stringifyServiceIdentifier","stringifyServiceRedirections","bindingNode","stringifyBinding","stringifyParentServiceIdentifier","stringifyBindingConstraints","planning","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","stringifiedTags","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","bindings","getServiceFromMaybeLazyServiceIdentifier","LazyServiceIdentifier","unwrap","handlePlanError","RangeError","test","isStackOverflowError","stringifiedCircularDependencies","serviceIdentifiers","serviceIdentifiersArray","stringifyServiceIdentifierTrace","servicesBranch","extractLikelyCircularDependency","isLazyPlanServiceNodeSymbol","LazyPlanServiceNode","_serviceIdentifier","_serviceNode","_getNode","isContextFree","invalidate","_buildPlanServiceNode","cacheNonRootPlanServiceNode","getPlanOptions","planServiceNode","planResult","tree","root","setPlan","setNonCachedServiceNode","LazyRootPlanServiceNode","buildPlanServiceNode","LazyManagedClassMetadataPlanServiceNode","bindingConstraintsList","elementMetadata","buildPlanServiceNodeFromClassElementMetadata","LazyResolvedValueMetadataPlanServiceNode","resolvedValueElementMetadata","buildPlanServiceNodeFromResolvedValueElementMetadata","rootConstraints","tag","buildPlanBindingConstraintsList","isMultiple","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","plan","buildGetPlanOptionsFromPlanParams","planResultFromCache","getPlan","buildInstancePlanBindingNode","childNode","constructorParams","propertyParams","subplan","updatedBindingConstraintsList","buildResolvedValuePlanBindingNode","serviceBindings","parentNode","chainedBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","pop","handlePlanServiceNodeBuildFromClassElementMetadata","entries","tryBuildGetPlanOptionsFromManagedClassElementMetadata","lazyPlanServiceNode","handlePlanServiceNodeBuildFromResolvedValueElementMetadata","tryBuildGetPlanOptionsFromResolvedValueElementMetadata","subplanInstanceBindingNode","resolvedValueMetadata","arguments","subplanResolvedValueBindingNode","WeakList","list","minimumLengthToReallocate","modulusToReallocateOnPush","deadRefCount","weakRef","deref","shouldReallocate","reallocate","WeakRef","ref","newList","PlanResultCacheService","serviceIdToNonCachedServiceNodeSetMap","serviceIdToValuePlanMap","namedServiceIdToValuePlanMap","namedTaggedServiceIdToValuePlanMap","taggedServiceIdToValuePlanMap","subscribers","buildInitializedMapArray","clearCache","getMaps","clear","subscriber","getMapFromMapArray","invalidateService","invalidateServiceMap","invalidateNamedServiceMap","invalidateNamedTaggedServiceMap","invalidateTaggedServiceMap","invalidateNonCachedServiceNodeSetMap","getOrBuildMapValueFromMapMap","nonCachedSet","subscribe","mapArray","valueMap","getMapArrayIndex","servicePlans","servicePlan","invalidateNonCachePlanServiceNodeDescendents","servicePlanMapMapMap","servicePlanMapMap","servicePlanMap","invalidateNonCachePlanBindingNodeDescendents","redirection","constructorParam","invalidateNonCachePlanServiceNode","propertyParam","resolvedValue","serviceNonCachedSet","serviceNonCachedServiceNodeSet","cacheResolvedValue","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","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","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/planning/calculations/buildFilteredServiceBindings.ts","../../src/common/models/SingleInmutableLinkedList.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/getServiceFromMaybeLazyServiceIdentifier.ts","../../src/planning/calculations/handlePlanError.ts","../../src/error/calculations/isStackOverflowError.ts","../../src/planning/models/LazyPlanServiceNode.ts","../../src/planning/actions/cacheNonRootPlanServiceNode.ts","../../src/planning/actions/plan.ts","../../src/planning/calculations/buildPlanBindingConstraintsList.ts","../../src/planning/calculations/buildGetPlanOptionsFromPlanParams.ts","../../src/planning/calculations/tryBuildGetPlanOptionsFromManagedClassElementMetadata.ts","../../src/planning/calculations/tryBuildGetPlanOptionsFromResolvedValueElementMetadata.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,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","getParent","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","getChained","currentBindings","parent","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","multipleInjection","chained","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","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","size","hasManagedMetadata","ResolvedValueElementMetadataKind","BindingConstraintsImplementation","node","elem","getAncestor","getAncestorsCalled","previous","buildFilteredServiceBindings","bindingConstraints","customServiceIdentifier","filteredBindings","operations","getBindingsChained","getBindings","filter","autobindOptions","buildInstanceBinding","setBinding","SingleInmutableLinkedList","last","concat","iterator","next","done","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindingNodes","bindingConstraintNode","serviceRedirections","parentServiceIdentifier","lastResolvedServiceIdentifier","errorMessage","stringifyServiceIdentifier","stringifyServiceRedirections","bindingNode","stringifyBinding","stringifyParentServiceIdentifier","stringifyBindingConstraints","planning","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","stringifiedTags","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","bindings","getServiceFromMaybeLazyServiceIdentifier","LazyServiceIdentifier","unwrap","handlePlanError","RangeError","test","isStackOverflowError","stringifiedCircularDependencies","serviceIdentifiers","serviceIdentifiersArray","stringifyServiceIdentifierTrace","servicesBranch","extractLikelyCircularDependency","isLazyPlanServiceNodeSymbol","LazyPlanServiceNode","_serviceIdentifier","_serviceNode","_getNode","isContextFree","invalidate","_buildPlanServiceNode","cacheNonRootPlanServiceNode","getPlanOptions","planServiceNode","planResult","tree","root","setPlan","setNonCachedServiceNode","LazyRootPlanServiceNode","buildPlanServiceNode","LazyManagedClassMetadataPlanServiceNode","bindingConstraintsList","elementMetadata","buildPlanServiceNodeFromClassElementMetadata","LazyResolvedValueMetadataPlanServiceNode","resolvedValueElementMetadata","buildPlanServiceNodeFromResolvedValueElementMetadata","rootConstraints","tag","buildPlanBindingConstraintsList","isMultiple","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","plan","buildGetPlanOptionsFromPlanParams","planResultFromCache","getPlan","buildInstancePlanBindingNode","childNode","constructorParams","propertyParams","subplan","updatedBindingConstraintsList","buildResolvedValuePlanBindingNode","serviceBindings","parentNode","chainedBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","pop","handlePlanServiceNodeBuildFromClassElementMetadata","entries","tryBuildGetPlanOptionsFromManagedClassElementMetadata","lazyPlanServiceNode","handlePlanServiceNodeBuildFromResolvedValueElementMetadata","tryBuildGetPlanOptionsFromResolvedValueElementMetadata","subplanInstanceBindingNode","resolvedValueMetadata","arguments","subplanResolvedValueBindingNode","WeakList","list","minimumLengthToReallocate","modulusToReallocateOnPush","deadRefCount","weakRef","deref","shouldReallocate","reallocate","WeakRef","ref","newList","PlanResultCacheService","serviceIdToNonCachedServiceNodeSetMap","serviceIdToValuePlanMap","namedServiceIdToValuePlanMap","namedTaggedServiceIdToValuePlanMap","taggedServiceIdToValuePlanMap","subscribers","buildInitializedMapArray","clearCache","getMaps","clear","subscriber","getMapFromMapArray","invalidateService","invalidateServiceMap","invalidateNamedServiceMap","invalidateNamedTaggedServiceMap","invalidateTaggedServiceMap","invalidateNonCachedServiceNodeSetMap","getOrBuildMapValueFromMapMap","nonCachedSet","subscribe","mapArray","valueMap","getMapArrayIndex","servicePlans","servicePlan","invalidateNonCachePlanServiceNodeDescendents","servicePlanMapMapMap","servicePlanMapMap","servicePlanMap","invalidateNonCachePlanBindingNodeDescendents","redirection","constructorParam","invalidateNonCachePlanServiceNode","propertyParam","resolvedValue","serviceNonCachedSet","serviceNonCachedServiceNodeSet","cacheResolvedValue","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","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","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
@@ -38,7 +38,7 @@
38
38
  ],
39
39
  "devEngines": {
40
40
  "node": "^22.10.2",
41
- "pnpm": "^9.12.1"
41
+ "pnpm": "^10.13.1"
42
42
  },
43
43
  "license": "MIT",
44
44
  "main": "lib/cjs/index.js",
@@ -57,7 +57,7 @@
57
57
  "type": "git",
58
58
  "url": "git+https://github.com/inversify/monorepo.git"
59
59
  },
60
- "version": "6.0.0",
60
+ "version": "6.0.1",
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",