@inversifyjs/core 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/lib/cjs/binding/models/BindingActivation.d.ts +2 -1
  3. package/lib/cjs/binding/models/BindingActivation.d.ts.map +1 -1
  4. package/lib/cjs/binding/services/BindingService.d.ts +1 -0
  5. package/lib/cjs/binding/services/BindingService.d.ts.map +1 -1
  6. package/lib/cjs/binding/services/BindingService.js +3 -0
  7. package/lib/cjs/binding/services/BindingService.js.map +1 -1
  8. package/lib/cjs/common/models/OneToManyMapStar.d.ts +1 -0
  9. package/lib/cjs/common/models/OneToManyMapStar.d.ts.map +1 -1
  10. package/lib/cjs/common/models/OneToManyMapStar.js +3 -0
  11. package/lib/cjs/common/models/OneToManyMapStar.js.map +1 -1
  12. package/lib/cjs/common/models/__mocks__/OneToManyMapStar.d.ts +1 -0
  13. package/lib/cjs/common/models/__mocks__/OneToManyMapStar.d.ts.map +1 -1
  14. package/lib/cjs/common/models/__mocks__/OneToManyMapStar.js +4 -0
  15. package/lib/cjs/common/models/__mocks__/OneToManyMapStar.js.map +1 -1
  16. package/lib/cjs/metadata/actions/setIsInjectableFlag.d.ts +2 -0
  17. package/lib/cjs/metadata/actions/setIsInjectableFlag.d.ts.map +1 -0
  18. package/lib/cjs/metadata/actions/setIsInjectableFlag.js +16 -0
  19. package/lib/cjs/metadata/actions/setIsInjectableFlag.js.map +1 -0
  20. package/lib/cjs/metadata/actions/setIsInjectableFlag.spec.d.ts +2 -0
  21. package/lib/cjs/metadata/actions/setIsInjectableFlag.spec.d.ts.map +1 -0
  22. package/lib/cjs/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.d.ts.map +1 -1
  23. package/lib/cjs/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.js +3 -1
  24. package/lib/cjs/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.js.map +1 -1
  25. package/lib/cjs/metadata/calculations/isUserlandEmittedType.d.ts +3 -0
  26. package/lib/cjs/metadata/calculations/isUserlandEmittedType.d.ts.map +1 -0
  27. package/lib/cjs/metadata/calculations/isUserlandEmittedType.js +16 -0
  28. package/lib/cjs/metadata/calculations/isUserlandEmittedType.js.map +1 -0
  29. package/lib/cjs/metadata/calculations/isUserlandEmittedType.spec.d.ts +2 -0
  30. package/lib/cjs/metadata/calculations/isUserlandEmittedType.spec.d.ts.map +1 -0
  31. package/lib/cjs/metadata/decorators/injectFromBase.d.ts +1 -1
  32. package/lib/cjs/metadata/decorators/injectFromBase.d.ts.map +1 -1
  33. package/lib/cjs/metadata/decorators/injectFromBase.js.map +1 -1
  34. package/lib/cjs/metadata/decorators/injectable.d.ts.map +1 -1
  35. package/lib/cjs/metadata/decorators/injectable.js +2 -0
  36. package/lib/cjs/metadata/decorators/injectable.js.map +1 -1
  37. package/lib/cjs/reflectMetadata/data/classIsInjectableFlagReflectKey.d.ts +2 -0
  38. package/lib/cjs/reflectMetadata/data/classIsInjectableFlagReflectKey.d.ts.map +1 -0
  39. package/lib/cjs/reflectMetadata/data/classIsInjectableFlagReflectKey.js +5 -0
  40. package/lib/cjs/reflectMetadata/data/classIsInjectableFlagReflectKey.js.map +1 -0
  41. package/lib/cjs/resolution/actions/resolveBindingActivations.js +2 -2
  42. package/lib/cjs/resolution/actions/resolveBindingActivations.js.map +1 -1
  43. package/lib/cjs/resolution/actions/resolveBindingServiceActivations.d.ts.map +1 -1
  44. package/lib/cjs/resolution/actions/resolveBindingServiceActivations.js +7 -7
  45. package/lib/cjs/resolution/actions/resolveBindingServiceActivations.js.map +1 -1
  46. package/lib/esm/index.d.ts +17 -16
  47. package/lib/esm/index.js +1 -1
  48. package/lib/esm/index.js.map +1 -1
  49. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @inversifyjs/core
2
2
 
3
+ ## 2.2.0
4
+
5
+ ### Minor Changes
6
+
7
+ - f487c1b: Updated `BindingService` with `getNonParentBoundServices`
8
+ - 5fac244: Updated `injectFromBase` options to be optional.
9
+
10
+ ### Patch Changes
11
+
12
+ - e708d1e: Updated `injectable` to filter out non userland emitted metadata
13
+ - 2d74b3f: Updated BindingActivation with missing `ResolutionContext` param
14
+ - 9d5ac91: Updated `injectable` to throw on duplicated call
15
+
3
16
  ## 2.1.0
4
17
 
5
18
  ### Minor Changes
@@ -1,3 +1,4 @@
1
+ import { ResolutionContext } from '../../resolution/models/ResolutionContext';
1
2
  import { Resolved } from '../../resolution/models/Resolved';
2
- export type BindingActivation<T = unknown> = (injectable: T) => Resolved<T>;
3
+ export type BindingActivation<T = unknown> = (context: ResolutionContext, injectable: T) => Resolved<T>;
3
4
  //# sourceMappingURL=BindingActivation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BindingActivation.d.ts","sourceRoot":"","sources":["../../../../src/binding/models/BindingActivation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAE5D,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"BindingActivation.d.ts","sourceRoot":"","sources":["../../../../src/binding/models/BindingActivation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAE5D,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,OAAO,IAAI,CAC3C,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,CAAC,KACV,QAAQ,CAAC,CAAC,CAAC,CAAC"}
@@ -15,6 +15,7 @@ export declare class BindingService implements Cloneable<BindingService> {
15
15
  static build(parent: BindingService | undefined): BindingService;
16
16
  clone(): BindingService;
17
17
  get<TResolved>(serviceIdentifier: ServiceIdentifier): Iterable<Binding<TResolved>> | undefined;
18
+ getNonParentBoundServices(): Iterable<ServiceIdentifier>;
18
19
  getByModuleId<TResolved>(moduleId: number): Iterable<Binding<TResolved>> | undefined;
19
20
  removeAllByModuleId(moduleId: number): void;
20
21
  removeAllByServiceId(serviceId: ServiceIdentifier): void;
@@ -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;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,aAAK,mBAAmB;IACtB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACxC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACpD;AAED,qBAAa,cAAe,YAAW,SAAS,CAAC,cAAc,CAAC;;IAI9D,OAAO;WAkBO,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;IAUpC,aAAa,CAAC,SAAS,EAC5B,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,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;CAWzD"}
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;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,aAAK,mBAAmB;IACtB,QAAQ,aAAa;IACrB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACxC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;CACpD;AAED,qBAAa,cAAe,YAAW,SAAS,CAAC,cAAc,CAAC;;IAI9D,OAAO;WAkBO,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;IAUpC,yBAAyB,IAAI,QAAQ,CAAC,iBAAiB,CAAC;IAIxD,aAAa,CAAC,SAAS,EAC5B,QAAQ,EAAE,MAAM,GACf,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS;IAQpC,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;CAWzD"}
@@ -34,6 +34,9 @@ class BindingService {
34
34
  return (this.#bindingMaps.get(BindingRelationKind.serviceId, serviceIdentifier) ??
35
35
  this.#parent?.get(serviceIdentifier));
36
36
  }
37
+ getNonParentBoundServices() {
38
+ return this.#bindingMaps.getAllKeys(BindingRelationKind.serviceId);
39
+ }
37
40
  getByModuleId(moduleId) {
38
41
  return (this.#bindingMaps.get(BindingRelationKind.moduleId, moduleId) ?? this.#parent?.getByModuleId(moduleId));
39
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BindingService.js","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":";;;AAGA,2EAAwE;AAGxE,IAAK,mBAGJ;AAHD,WAAK,mBAAmB;IACtB,4CAAqB,CAAA;IACrB,8CAAuB,CAAA;AACzB,CAAC,EAHI,mBAAmB,KAAnB,mBAAmB,QAGvB;AAOD,MAAa,cAAc;IAChB,YAAY,CAAsD;IAClE,OAAO,CAA6B;IAE7C,YACE,MAAkC,EAClC,WAAiE;QAEjE,IAAI,CAAC,YAAY;YACf,WAAW;gBACX,IAAI,mCAAgB,CAAoC;oBACtD,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,CAAC,MAAkC;QACpD,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAmB,IAAI,cAAc,CAC9C,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAC1B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,OAAO,CACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CACpB,mBAAmB,CAAC,SAAS,EAC7B,iBAAiB,CAC2B;YAC9C,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,iBAAiB,CAAC,CACrC,CAAC;IACJ,CAAC;IAEM,aAAa,CAClB,QAAgB;QAEhB,OAAO,CACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAE/C,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CACxD,CAAC;IACJ,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAChC,mBAAmB,CAAC,SAAS,EAC7B,SAAS,CACV,CAAC;IACJ,CAAC;IAEM,GAAG,CAAY,OAA2B;QAC/C,MAAM,QAAQ,GAAoB;YAChC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB;SAC3D,CAAC;QAEF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAA2B,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF;AA/ED,wCA+EC"}
1
+ {"version":3,"file":"BindingService.js","sourceRoot":"","sources":["../../../../src/binding/services/BindingService.ts"],"names":[],"mappings":";;;AAGA,2EAAwE;AAGxE,IAAK,mBAGJ;AAHD,WAAK,mBAAmB;IACtB,4CAAqB,CAAA;IACrB,8CAAuB,CAAA;AACzB,CAAC,EAHI,mBAAmB,KAAnB,mBAAmB,QAGvB;AAOD,MAAa,cAAc;IAChB,YAAY,CAAsD;IAClE,OAAO,CAA6B;IAE7C,YACE,MAAkC,EAClC,WAAiE;QAEjE,IAAI,CAAC,YAAY;YACf,WAAW;gBACX,IAAI,mCAAgB,CAAoC;oBACtD,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,CAAC,MAAkC;QACpD,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK;QACV,MAAM,KAAK,GAAmB,IAAI,cAAc,CAC9C,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAC1B,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CACR,iBAAoC;QAEpC,OAAO,CACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CACpB,mBAAmB,CAAC,SAAS,EAC7B,iBAAiB,CAC2B;YAC9C,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,iBAAiB,CAAC,CACrC,CAAC;IACJ,CAAC;IAEM,yBAAyB;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IAEM,aAAa,CAClB,QAAgB;QAEhB,OAAO,CACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAE/C,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CACxD,CAAC;IACJ,CAAC;IAEM,mBAAmB,CAAC,QAAgB;QACzC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAEM,oBAAoB,CAAC,SAA4B;QACtD,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAChC,mBAAmB,CAAC,SAAS,EAC7B,SAAS,CACV,CAAC;IACJ,CAAC;IAEM,GAAG,CAAY,OAA2B;QAC/C,MAAM,QAAQ,GAAoB;YAChC,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB;SAC3D,CAAC;QAEF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAA2B,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACF;AAnFD,wCAmFC"}
@@ -12,6 +12,7 @@ export declare class OneToManyMapStar<TModel, TRelation extends object> implemen
12
12
  constructor(spec: OneToManyMapStartSpec<TRelation>);
13
13
  clone(): OneToManyMapStar<TModel, TRelation>;
14
14
  get<TKey extends keyof TRelation>(key: TKey, value: Required<TRelation>[TKey]): Iterable<TModel> | undefined;
15
+ getAllKeys<TKey extends keyof TRelation>(key: TKey): Iterable<TRelation[TKey]>;
15
16
  removeByRelation<TKey extends keyof TRelation>(key: TKey, value: Required<TRelation>[TKey]): void;
16
17
  set(model: TModel, relation: TRelation): void;
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,qBAAqB,CAAC,SAAS,SAAS,MAAM,IAAI;KAC3D,IAAI,IAAI,MAAM,SAAS,GAAG;QACzB,UAAU,EAAE,SAAS,SAAS,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;KAC9D;CACF,CAAC;AAMF;;GAEG;AACH,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM,CAC5D,YAAW,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;;gBAM7C,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC;IAY3C,KAAK,IAAI,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC;IAwB5C,GAAG,CAAC,IAAI,SAAS,MAAM,SAAS,EACrC,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS;IAIxB,gBAAgB,CAAC,IAAI,SAAS,MAAM,SAAS,EAClD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,IAAI;IAoBA,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;CAiErD"}
1
+ {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,qBAAqB,CAAC,SAAS,SAAS,MAAM,IAAI;KAC3D,IAAI,IAAI,MAAM,SAAS,GAAG;QACzB,UAAU,EAAE,SAAS,SAAS,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;KAC9D;CACF,CAAC;AAMF;;GAEG;AACH,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM,CAC5D,YAAW,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;;gBAM7C,IAAI,EAAE,qBAAqB,CAAC,SAAS,CAAC;IAY3C,KAAK,IAAI,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC;IAwB5C,GAAG,CAAC,IAAI,SAAS,MAAM,SAAS,EACrC,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS;IAIxB,UAAU,CAAC,IAAI,SAAS,MAAM,SAAS,EAC5C,GAAG,EAAE,IAAI,GACR,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAIrB,gBAAgB,CAAC,IAAI,SAAS,MAAM,SAAS,EAClD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAC/B,IAAI;IAoBA,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;CAiErD"}
@@ -28,6 +28,9 @@ class OneToManyMapStar {
28
28
  get(key, value) {
29
29
  return this.#relationToModelsMaps[key].get(value)?.values();
30
30
  }
31
+ getAllKeys(key) {
32
+ return this.#relationToModelsMaps[key].keys();
33
+ }
31
34
  removeByRelation(key, value) {
32
35
  const models = this.get(key, value);
33
36
  if (models === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../src/common/models/OneToManyMapStar.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export declare class OneToManyMapStar<TModel, TRelation extends object> {
2
2
  readonly clone: () => OneToManyMapStar<TModel, TRelation>;
3
3
  readonly get: <TKey extends keyof TRelation>(key: TKey, value: Required<TRelation>[TKey]) => Iterable<TModel> | undefined;
4
+ readonly getAllKeys: <TKey extends keyof TRelation>(key: TKey) => Iterable<TRelation[TKey]>;
4
5
  readonly removeByRelation: <TKey extends keyof TRelation>(key: TKey, value: Required<TRelation>[TKey]) => void;
5
6
  readonly set: (model: TModel, relation: TRelation) => void;
6
7
  constructor();
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../../src/common/models/__mocks__/OneToManyMapStar.ts"],"names":[],"mappings":"AAWA,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM;IAC5D,SAAgB,KAAK,EAAE,MAAM,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjE,SAAgB,GAAG,EAAE,CAAC,IAAI,SAAS,MAAM,SAAS,EAChD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAC7B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAElC,SAAgB,gBAAgB,EAAE,CAAC,IAAI,SAAS,MAAM,SAAS,EAC7D,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAC7B,IAAI,CAAC;IAEV,SAAgB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;;CAQnE"}
1
+ {"version":3,"file":"OneToManyMapStar.d.ts","sourceRoot":"","sources":["../../../../../src/common/models/__mocks__/OneToManyMapStar.ts"],"names":[],"mappings":"AAaA,qBAAa,gBAAgB,CAAC,MAAM,EAAE,SAAS,SAAS,MAAM;IAC5D,SAAgB,KAAK,EAAE,MAAM,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjE,SAAgB,GAAG,EAAE,CAAC,IAAI,SAAS,MAAM,SAAS,EAChD,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAC7B,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAElC,SAAgB,UAAU,EAAE,CAAC,IAAI,SAAS,MAAM,SAAS,EACvD,GAAG,EAAE,IAAI,KACN,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAE/B,SAAgB,gBAAgB,EAAE,CAAC,IAAI,SAAS,MAAM,SAAS,EAC7D,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAC7B,IAAI,CAAC;IAEV,SAAgB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;;CASnE"}
@@ -7,17 +7,21 @@ const cloneMock = globals_1.jest.fn();
7
7
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
8
  const getMock = globals_1.jest.fn();
9
9
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ const getAllKeysMock = globals_1.jest.fn();
11
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
12
  const removeByRelationMock = globals_1.jest.fn();
11
13
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
14
  const setMock = globals_1.jest.fn();
13
15
  class OneToManyMapStar {
14
16
  clone;
15
17
  get;
18
+ getAllKeys;
16
19
  removeByRelation;
17
20
  set;
18
21
  constructor() {
19
22
  this.clone = cloneMock;
20
23
  this.get = getMock;
24
+ this.getAllKeys = getAllKeysMock;
21
25
  this.removeByRelation = removeByRelationMock;
22
26
  this.set = setMock;
23
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../../src/common/models/__mocks__/OneToManyMapStar.ts"],"names":[],"mappings":";;;AAAA,2CAAqC;AAErC,8DAA8D;AAC9D,MAAM,SAAS,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAC5C,8DAA8D;AAC9D,MAAM,OAAO,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAC1C,8DAA8D;AAC9D,MAAM,oBAAoB,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AACvD,8DAA8D;AAC9D,MAAM,OAAO,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAE1C,MAAa,gBAAgB;IACX,KAAK,CAA4C;IACjD,GAAG,CAGe;IAElB,gBAAgB,CAGtB;IAEM,GAAG,CAA+C;IAElE;QACE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;QAC7C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;IACrB,CAAC;CACF;AApBD,4CAoBC"}
1
+ {"version":3,"file":"OneToManyMapStar.js","sourceRoot":"","sources":["../../../../../src/common/models/__mocks__/OneToManyMapStar.ts"],"names":[],"mappings":";;;AAAA,2CAAqC;AAErC,8DAA8D;AAC9D,MAAM,SAAS,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAC5C,8DAA8D;AAC9D,MAAM,OAAO,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAC1C,8DAA8D;AAC9D,MAAM,cAAc,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AACjD,8DAA8D;AAC9D,MAAM,oBAAoB,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AACvD,8DAA8D;AAC9D,MAAM,OAAO,GAAmB,cAAI,CAAC,EAAE,EAAE,CAAC;AAE1C,MAAa,gBAAgB;IACX,KAAK,CAA4C;IACjD,GAAG,CAGe;IAElB,UAAU,CAEK;IAEf,gBAAgB,CAGtB;IAEM,GAAG,CAA+C;IAElE;QACE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,oBAAoB,CAAC;QAC7C,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;IACrB,CAAC;CACF;AAzBD,4CAyBC"}
@@ -0,0 +1,2 @@
1
+ export declare function setIsInjectableFlag(target: Function): void;
2
+ //# sourceMappingURL=setIsInjectableFlag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setIsInjectableFlag.d.ts","sourceRoot":"","sources":["../../../../src/metadata/actions/setIsInjectableFlag.ts"],"names":[],"mappings":"AAUA,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAc1D"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setIsInjectableFlag = setIsInjectableFlag;
4
+ const reflect_metadata_utils_1 = require("@inversifyjs/reflect-metadata-utils");
5
+ const InversifyCoreError_1 = require("../../error/models/InversifyCoreError");
6
+ const InversifyCoreErrorKind_1 = require("../../error/models/InversifyCoreErrorKind");
7
+ const classIsInjectableFlagReflectKey_1 = require("../../reflectMetadata/data/classIsInjectableFlagReflectKey");
8
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
9
+ function setIsInjectableFlag(target) {
10
+ const isInjectableFlag = (0, reflect_metadata_utils_1.getReflectMetadata)(target, classIsInjectableFlagReflectKey_1.classIsInjectableFlagReflectKey);
11
+ if (isInjectableFlag !== undefined) {
12
+ throw new InversifyCoreError_1.InversifyCoreError(InversifyCoreErrorKind_1.InversifyCoreErrorKind.injectionDecoratorConflict, 'Cannot apply @injectable decorator multiple times');
13
+ }
14
+ (0, reflect_metadata_utils_1.setReflectMetadata)(target, classIsInjectableFlagReflectKey_1.classIsInjectableFlagReflectKey, true);
15
+ }
16
+ //# sourceMappingURL=setIsInjectableFlag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setIsInjectableFlag.js","sourceRoot":"","sources":["../../../../src/metadata/actions/setIsInjectableFlag.ts"],"names":[],"mappings":";;AAUA,kDAcC;AAxBD,gFAG6C;AAE7C,8EAA2E;AAC3E,sFAAmF;AACnF,gHAA6G;AAE7G,sEAAsE;AACtE,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,MAAM,gBAAgB,GAAwB,IAAA,2CAAkB,EAC9D,MAAM,EACN,iEAA+B,CAChC,CAAC;IAEF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,IAAI,uCAAkB,CAC1B,+CAAsB,CAAC,0BAA0B,EACjD,mDAAmD,CACpD,CAAC;IACJ,CAAC;IAED,IAAA,2CAAkB,EAAC,MAAM,EAAE,iEAA+B,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=setIsInjectableFlag.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setIsInjectableFlag.spec.d.ts","sourceRoot":"","sources":["../../../../src/metadata/actions/setIsInjectableFlag.spec.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.d.ts","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":"AAYA,wBAAgB,+CAA+C,CAC7D,MAAM,EAAE,MAAM,GACb,IAAI,CAcN"}
1
+ {"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.d.ts","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":"AAaA,wBAAgB,+CAA+C,CAC7D,MAAM,EAAE,MAAM,GACb,IAAI,CAcN"}
@@ -6,6 +6,7 @@ const classMetadataReflectKey_1 = require("../../reflectMetadata/data/classMetad
6
6
  const typescriptDesignParameterTypesReflectKey_1 = require("../../reflectMetadata/data/typescriptDesignParameterTypesReflectKey");
7
7
  const buildClassElementMetadataFromTypescriptParameterType_1 = require("../calculations/buildClassElementMetadataFromTypescriptParameterType");
8
8
  const getDefaultClassMetadata_1 = require("../calculations/getDefaultClassMetadata");
9
+ const isUserlandEmittedType_1 = require("../calculations/isUserlandEmittedType");
9
10
  function updateClassMetadataWithTypescriptParameterTypes(target) {
10
11
  const typescriptConstructorArguments = (0, reflect_metadata_utils_1.getReflectMetadata)(target, typescriptDesignParameterTypesReflectKey_1.typescriptParameterTypesReflectKey);
11
12
  if (typescriptConstructorArguments !== undefined) {
@@ -15,7 +16,8 @@ function updateClassMetadataWithTypescriptParameterTypes(target) {
15
16
  function updateMaybeClassMetadataWithTypescriptClassMetadata(typescriptConstructorArguments) {
16
17
  return (classMetadata) => {
17
18
  typescriptConstructorArguments.forEach((constructorArgumentType, index) => {
18
- if (classMetadata.constructorArguments[index] === undefined) {
19
+ if (classMetadata.constructorArguments[index] === undefined &&
20
+ (0, isUserlandEmittedType_1.isUserlandEmittedType)(constructorArgumentType)) {
19
21
  classMetadata.constructorArguments[index] =
20
22
  (0, buildClassElementMetadataFromTypescriptParameterType_1.buildClassElementMetadataFromTypescriptParameterType)(constructorArgumentType);
21
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.js","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":";;AAYA,0GAgBC;AA3BD,gFAG6C;AAE7C,gGAA6F;AAC7F,kIAAyH;AACzH,+IAA4I;AAC5I,qFAAkF;AAGlF,SAAgB,+CAA+C,CAC7D,MAAc;IAEd,MAAM,8BAA8B,GAClC,IAAA,2CAAkB,EAAC,MAAM,EAAE,6EAAkC,CAAC,CAAC;IAEjE,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;QACjD,IAAA,8CAAqB,EACnB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,mDAAmD,CACjD,8BAA8B,CAC/B,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mDAAmD,CAC1D,8BAAyC;IAEzC,OAAO,CAAC,aAAiC,EAAsB,EAAE;QAC/D,8BAA8B,CAAC,OAAO,CACpC,CAAC,uBAAgC,EAAE,KAAa,EAAQ,EAAE;YACxD,IAAI,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC5D,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACvC,IAAA,2GAAoD,EAClD,uBAAuB,CACxB,CAAC;YACN,CAAC;QACH,CAAC,CACF,CAAC;QAEF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.js","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":";;AAaA,0GAgBC;AA5BD,gFAG6C;AAE7C,gGAA6F;AAC7F,kIAAyH;AACzH,+IAA4I;AAC5I,qFAAkF;AAClF,iFAA8E;AAG9E,SAAgB,+CAA+C,CAC7D,MAAc;IAEd,MAAM,8BAA8B,GAClC,IAAA,2CAAkB,EAAC,MAAM,EAAE,6EAAkC,CAAC,CAAC;IAEjE,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;QACjD,IAAA,8CAAqB,EACnB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,mDAAmD,CACjD,8BAA8B,CAC/B,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mDAAmD,CAC1D,8BAAyC;IAEzC,OAAO,CAAC,aAAiC,EAAsB,EAAE;QAC/D,8BAA8B,CAAC,OAAO,CACpC,CAAC,uBAAgC,EAAE,KAAa,EAAQ,EAAE;YACxD,IACE,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,SAAS;gBACvD,IAAA,6CAAqB,EAAC,uBAAuB,CAAC,EAC9C,CAAC;gBACD,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACvC,IAAA,2GAAoD,EAClD,uBAAuB,CACxB,CAAC;YACN,CAAC;QACH,CAAC,CACF,CAAC;QAEF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Newable } from '@inversifyjs/common';
2
+ export declare function isUserlandEmittedType(type: Newable): boolean;
3
+ //# sourceMappingURL=isUserlandEmittedType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isUserlandEmittedType.d.ts","sourceRoot":"","sources":["../../../../src/metadata/calculations/isUserlandEmittedType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAY9C,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAE5D"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isUserlandEmittedType = isUserlandEmittedType;
4
+ const NON_USERLAND_TYPES = [
5
+ Array,
6
+ BigInt,
7
+ Boolean,
8
+ Function,
9
+ Number,
10
+ Object,
11
+ String,
12
+ ];
13
+ function isUserlandEmittedType(type) {
14
+ return !NON_USERLAND_TYPES.includes(type);
15
+ }
16
+ //# sourceMappingURL=isUserlandEmittedType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isUserlandEmittedType.js","sourceRoot":"","sources":["../../../../src/metadata/calculations/isUserlandEmittedType.ts"],"names":[],"mappings":";;AAYA,sDAEC;AAZD,MAAM,kBAAkB,GAAc;IACpC,KAAK;IACL,MAAM;IACN,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;CACP,CAAC;AAEF,SAAgB,qBAAqB,CAAC,IAAa;IACjD,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=isUserlandEmittedType.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isUserlandEmittedType.spec.d.ts","sourceRoot":"","sources":["../../../../src/metadata/calculations/isUserlandEmittedType.spec.ts"],"names":[],"mappings":""}
@@ -1,3 +1,3 @@
1
1
  import { InjectFromBaseOptions } from '../models/InjectFromBaseOptions';
2
- export declare function injectFromBase(options: InjectFromBaseOptions): ClassDecorator;
2
+ export declare function injectFromBase(options?: InjectFromBaseOptions): ClassDecorator;
3
3
  //# sourceMappingURL=injectFromBase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"injectFromBase.d.ts","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFromBase.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CAiB7E"}
1
+ {"version":3,"file":"injectFromBase.d.ts","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFromBase.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,cAAc,CAiBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"injectFromBase.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFromBase.ts"],"names":[],"mappings":";;AAQA,wCAiBC;AAxBD,kEAA2D;AAE3D,8EAA2E;AAC3E,sFAAmF;AAEnF,6CAA0C;AAE1C,SAAgB,cAAc,CAAC,OAA8B;IAC3D,sEAAsE;IACtE,OAAO,CAAC,MAAgB,EAAQ,EAAE;QAChC,MAAM,QAAQ,GAAwB,IAAA,6BAAW,EAAC,MAAiB,CAAC,CAAC;QAErE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,uCAAkB,CAC1B,+CAAsB,CAAC,0BAA0B,EACjD,gCAAgC,MAAM,CAAC,IAAI,gBAAgB,CAC5D,CAAC;QACJ,CAAC;QAED,IAAA,uBAAU,EAAC;YACT,GAAG,OAAO;YACV,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC,MAAM,CAAC,CAAC;IACb,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"injectFromBase.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFromBase.ts"],"names":[],"mappings":";;AAQA,wCAmBC;AA1BD,kEAA2D;AAE3D,8EAA2E;AAC3E,sFAAmF;AAEnF,6CAA0C;AAE1C,SAAgB,cAAc,CAC5B,OAA+B;IAE/B,sEAAsE;IACtE,OAAO,CAAC,MAAgB,EAAQ,EAAE;QAChC,MAAM,QAAQ,GAAwB,IAAA,6BAAW,EAAC,MAAiB,CAAC,CAAC;QAErE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,uCAAkB,CAC1B,+CAAsB,CAAC,0BAA0B,EACjD,gCAAgC,MAAM,CAAC,IAAI,gBAAgB,CAC5D,CAAC;QACJ,CAAC;QAED,IAAA,uBAAU,EAAC;YACT,GAAG,OAAO;YACV,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC,MAAM,CAAC,CAAC;IACb,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"injectable.d.ts","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAMjE,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG,cAAc,CAiB/D"}
1
+ {"version":3,"file":"injectable.d.ts","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAOjE,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG,cAAc,CAmB/D"}
@@ -3,11 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.injectable = injectable;
4
4
  const reflect_metadata_utils_1 = require("@inversifyjs/reflect-metadata-utils");
5
5
  const classMetadataReflectKey_1 = require("../../reflectMetadata/data/classMetadataReflectKey");
6
+ const setIsInjectableFlag_1 = require("../actions/setIsInjectableFlag");
6
7
  const updateClassMetadataWithTypescriptParameterTypes_1 = require("../actions/updateClassMetadataWithTypescriptParameterTypes");
7
8
  const getDefaultClassMetadata_1 = require("../calculations/getDefaultClassMetadata");
8
9
  function injectable(scope) {
9
10
  // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
10
11
  return (target) => {
12
+ (0, setIsInjectableFlag_1.setIsInjectableFlag)(target);
11
13
  (0, updateClassMetadataWithTypescriptParameterTypes_1.updateClassMetadataWithTypescriptParameterTypes)(target);
12
14
  if (scope !== undefined) {
13
15
  (0, reflect_metadata_utils_1.updateReflectMetadata)(target, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (metadata) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"injectable.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":";;AAQA,gCAiBC;AAzBD,gFAA4E;AAG5E,gGAA6F;AAC7F,gIAA6H;AAC7H,qFAAkF;AAGlF,SAAgB,UAAU,CAAC,KAAoB;IAC7C,sEAAsE;IACtE,OAAO,CAAC,MAAgB,EAAQ,EAAE;QAChC,IAAA,iGAA+C,EAAC,MAAM,CAAC,CAAC;QAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAA,8CAAqB,EACnB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,CAAC,QAA4B,EAAE,EAAE,CAAC,CAAC;gBACjC,GAAG,QAAQ;gBACX,KAAK;aACN,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"injectable.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":";;AASA,gCAmBC;AA5BD,gFAA4E;AAG5E,gGAA6F;AAC7F,wEAAqE;AACrE,gIAA6H;AAC7H,qFAAkF;AAGlF,SAAgB,UAAU,CAAC,KAAoB;IAC7C,sEAAsE;IACtE,OAAO,CAAC,MAAgB,EAAQ,EAAE;QAChC,IAAA,yCAAmB,EAAC,MAAM,CAAC,CAAC;QAE5B,IAAA,iGAA+C,EAAC,MAAM,CAAC,CAAC;QAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAA,8CAAqB,EACnB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,CAAC,QAA4B,EAAE,EAAE,CAAC,CAAC;gBACjC,GAAG,QAAQ;gBACX,KAAK;aACN,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const classIsInjectableFlagReflectKey: string;
2
+ //# sourceMappingURL=classIsInjectableFlagReflectKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classIsInjectableFlagReflectKey.d.ts","sourceRoot":"","sources":["../../../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B,EAAE,MACO,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.classIsInjectableFlagReflectKey = void 0;
4
+ exports.classIsInjectableFlagReflectKey = '@inversifyjs/core/classIsInjectableFlagReflectKey';
5
+ //# sourceMappingURL=classIsInjectableFlagReflectKey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classIsInjectableFlagReflectKey.js","sourceRoot":"","sources":["../../../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAC1C,mDAAmD,CAAC"}
@@ -8,10 +8,10 @@ function resolveBindingActivations(params, binding, value) {
8
8
  if (binding.onActivation !== undefined) {
9
9
  const onActivation = binding.onActivation;
10
10
  if ((0, common_1.isPromise)(activationResult)) {
11
- activationResult = activationResult.then((resolved) => onActivation(resolved));
11
+ activationResult = activationResult.then((resolved) => onActivation(params.context, resolved));
12
12
  }
13
13
  else {
14
- activationResult = onActivation(activationResult);
14
+ activationResult = onActivation(params.context, activationResult);
15
15
  }
16
16
  }
17
17
  return (0, resolveBindingServiceActivations_1.resolveBindingServiceActivations)(params, binding.serviceIdentifier, activationResult);
@@ -1 +1 @@
1
- {"version":3,"file":"resolveBindingActivations.js","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingActivations.ts"],"names":[],"mappings":";;AAUA,8DAyBC;AAnCD,gDAAgD;AAQhD,yFAAsF;AAEtF,SAAgB,yBAAyB,CACvC,MAAwB,EACxB,OAA6D,EAC7D,KAA2B;IAE3B,IAAI,gBAAgB,GAAqC,KAAK,CAAC;IAE/D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,YAAY,GAAkC,OAAO,CAAC,YAAY,CAAC;QAEzE,IAAI,IAAA,kBAAS,EAAC,gBAAgB,CAAC,EAAE,CAAC;YAChC,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CACtC,CAAC,QAAkC,EAAwB,EAAE,CAC3D,YAAY,CAAC,QAAQ,CAAC,CACzB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,OAAO,IAAA,mEAAgC,EACrC,MAAM,EACN,OAAO,CAAC,iBAAiB,EACzB,gBAAgB,CACjB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resolveBindingActivations.js","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingActivations.ts"],"names":[],"mappings":";;AAUA,8DAyBC;AAnCD,gDAAgD;AAQhD,yFAAsF;AAEtF,SAAgB,yBAAyB,CACvC,MAAwB,EACxB,OAA6D,EAC7D,KAA2B;IAE3B,IAAI,gBAAgB,GAAqC,KAAK,CAAC;IAE/D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,YAAY,GAAkC,OAAO,CAAC,YAAY,CAAC;QAEzE,IAAI,IAAA,kBAAS,EAAC,gBAAgB,CAAC,EAAE,CAAC;YAChC,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CACtC,CAAC,QAAkC,EAAwB,EAAE,CAC3D,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CACzC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,OAAO,IAAA,mEAAgC,EACrC,MAAM,EACN,OAAO,CAAC,iBAAiB,EACzB,gBAAgB,CACjB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolveBindingServiceActivations.d.ts","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingServiceActivations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAgB,MAAM,oBAAoB,CAAC;AAE5D,wBAAgB,gCAAgC,CAAC,UAAU,EACzD,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,CAAC,EAChD,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC1B,QAAQ,CAAC,UAAU,CAAC,CAmBtB"}
1
+ {"version":3,"file":"resolveBindingServiceActivations.d.ts","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingServiceActivations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAgB,MAAM,oBAAoB,CAAC;AAE5D,wBAAgB,gCAAgC,CAAC,UAAU,EACzD,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,CAAC,EAChD,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC1B,QAAQ,CAAC,UAAU,CAAC,CAqBtB"}
@@ -8,17 +8,17 @@ function resolveBindingServiceActivations(params, serviceIdentifier, value) {
8
8
  return value;
9
9
  }
10
10
  if ((0, common_1.isPromise)(value)) {
11
- return resolveBindingActivationsFromIteratorAsync(value, activations[Symbol.iterator]());
11
+ return resolveBindingActivationsFromIteratorAsync(params, value, activations[Symbol.iterator]());
12
12
  }
13
- return resolveBindingActivationsFromIterator(value, activations[Symbol.iterator]());
13
+ return resolveBindingActivationsFromIterator(params, value, activations[Symbol.iterator]());
14
14
  }
15
- function resolveBindingActivationsFromIterator(value, activationsIterator) {
15
+ function resolveBindingActivationsFromIterator(params, value, activationsIterator) {
16
16
  let activatedValue = value;
17
17
  let activationIteratorResult = activationsIterator.next();
18
18
  while (activationIteratorResult.done !== true) {
19
- const nextActivatedValue = activationIteratorResult.value(activatedValue);
19
+ const nextActivatedValue = activationIteratorResult.value(params.context, activatedValue);
20
20
  if ((0, common_1.isPromise)(nextActivatedValue)) {
21
- return resolveBindingActivationsFromIteratorAsync(nextActivatedValue, activationsIterator);
21
+ return resolveBindingActivationsFromIteratorAsync(params, nextActivatedValue, activationsIterator);
22
22
  }
23
23
  else {
24
24
  activatedValue = nextActivatedValue;
@@ -27,11 +27,11 @@ function resolveBindingActivationsFromIterator(value, activationsIterator) {
27
27
  }
28
28
  return activatedValue;
29
29
  }
30
- async function resolveBindingActivationsFromIteratorAsync(value, activationsIterator) {
30
+ async function resolveBindingActivationsFromIteratorAsync(params, value, activationsIterator) {
31
31
  let activatedValue = await value;
32
32
  let activationIteratorResult = activationsIterator.next();
33
33
  while (activationIteratorResult.done !== true) {
34
- activatedValue = await activationIteratorResult.value(activatedValue);
34
+ activatedValue = await activationIteratorResult.value(params.context, activatedValue);
35
35
  activationIteratorResult = activationsIterator.next();
36
36
  }
37
37
  return activatedValue;
@@ -1 +1 @@
1
- {"version":3,"file":"resolveBindingServiceActivations.js","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingServiceActivations.ts"],"names":[],"mappings":";;AAMA,4EAuBC;AA7BD,gDAAmE;AAMnE,SAAgB,gCAAgC,CAC9C,MAAwB,EACxB,iBAAgD,EAChD,KAA2B;IAE3B,MAAM,WAAW,GACf,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAE3C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,IAAA,kBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,0CAA0C,CAC/C,KAAK,EACL,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/B,CAAC;IACJ,CAAC;IAED,OAAO,qCAAqC,CAC1C,KAAK,EACL,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/B,CAAC;AACJ,CAAC;AAED,SAAS,qCAAqC,CAC5C,KAA+B,EAC/B,mBAA4D;IAE5D,IAAI,cAAc,GAA6B,KAAK,CAAC;IAErD,IAAI,wBAAwB,GAC1B,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAE7B,OAAO,wBAAwB,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,kBAAkB,GACtB,wBAAwB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEjD,IAAI,IAAA,kBAAS,EAAC,kBAAkB,CAAC,EAAE,CAAC;YAClC,OAAO,0CAA0C,CAC/C,kBAAkB,EAClB,mBAAmB,CACpB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,kBAAkB,CAAC;QACtC,CAAC;QAED,wBAAwB,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,0CAA0C,CACvD,KAA0B,EAC1B,mBAA4D;IAE5D,IAAI,cAAc,GAA6B,MAAM,KAAK,CAAC;IAE3D,IAAI,wBAAwB,GAC1B,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAE7B,OAAO,wBAAwB,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,cAAc,GAAG,MAAM,wBAAwB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEtE,wBAAwB,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"resolveBindingServiceActivations.js","sourceRoot":"","sources":["../../../../src/resolution/actions/resolveBindingServiceActivations.ts"],"names":[],"mappings":";;AAMA,4EAyBC;AA/BD,gDAAmE;AAMnE,SAAgB,gCAAgC,CAC9C,MAAwB,EACxB,iBAAgD,EAChD,KAA2B;IAE3B,MAAM,WAAW,GACf,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAE3C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,IAAA,kBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,0CAA0C,CAC/C,MAAM,EACN,KAAK,EACL,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/B,CAAC;IACJ,CAAC;IAED,OAAO,qCAAqC,CAC1C,MAAM,EACN,KAAK,EACL,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/B,CAAC;AACJ,CAAC;AAED,SAAS,qCAAqC,CAC5C,MAAwB,EACxB,KAA+B,EAC/B,mBAA4D;IAE5D,IAAI,cAAc,GAA6B,KAAK,CAAC;IAErD,IAAI,wBAAwB,GAC1B,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAE7B,OAAO,wBAAwB,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,kBAAkB,GACtB,wBAAwB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAEjE,IAAI,IAAA,kBAAS,EAAC,kBAAkB,CAAC,EAAE,CAAC;YAClC,OAAO,0CAA0C,CAC/C,MAAM,EACN,kBAAkB,EAClB,mBAAmB,CACpB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,cAAc,GAAG,kBAAkB,CAAC;QACtC,CAAC;QAED,wBAAwB,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,0CAA0C,CACvD,MAAwB,EACxB,KAA0B,EAC1B,mBAA4D;IAE5D,IAAI,cAAc,GAA6B,MAAM,KAAK,CAAC;IAE3D,IAAI,wBAAwB,GAC1B,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAE7B,OAAO,wBAAwB,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,cAAc,GAAG,MAAM,wBAAwB,CAAC,KAAK,CACnD,MAAM,CAAC,OAAO,EACd,cAAc,CACf,CAAC;QAEF,wBAAwB,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
@@ -32,21 +32,6 @@ declare const bindingScopeValues: {
32
32
  [TKey in BindingScope]: TKey;
33
33
  };
34
34
 
35
- type BindingActivation<T = unknown> = (injectable: T) => Resolved<T>;
36
-
37
- type BindingDeactivation<T = unknown> = (injectable: T) => void | Promise<void>;
38
-
39
- interface ScopedBinding<TType extends BindingType, TScope extends BindingScope, TActivated> extends BaseBinding<TType, TActivated> {
40
- cache: Either<undefined, Resolved<TActivated>>;
41
- readonly onActivation: BindingActivation<TActivated> | undefined;
42
- readonly onDeactivation: BindingDeactivation<TActivated> | undefined;
43
- readonly scope: TScope;
44
- }
45
-
46
- interface ConstantValueBinding<TActivated> extends ScopedBinding<typeof bindingTypeValues.ConstantValue, typeof bindingScopeValues.Singleton, TActivated> {
47
- readonly value: Resolved<TActivated>;
48
- }
49
-
50
35
  interface GetOptionsTagConstraint {
51
36
  key: MetadataTag;
52
37
  value: unknown;
@@ -71,6 +56,21 @@ interface ResolutionContext {
71
56
  getAsync<TActivated>(serviceIdentifier: ServiceIdentifier<TActivated>, options?: GetOptions): Promise<TActivated>;
72
57
  }
73
58
 
59
+ type BindingActivation<T = unknown> = (context: ResolutionContext, injectable: T) => Resolved<T>;
60
+
61
+ type BindingDeactivation<T = unknown> = (injectable: T) => void | Promise<void>;
62
+
63
+ interface ScopedBinding<TType extends BindingType, TScope extends BindingScope, TActivated> extends BaseBinding<TType, TActivated> {
64
+ cache: Either<undefined, Resolved<TActivated>>;
65
+ readonly onActivation: BindingActivation<TActivated> | undefined;
66
+ readonly onDeactivation: BindingDeactivation<TActivated> | undefined;
67
+ readonly scope: TScope;
68
+ }
69
+
70
+ interface ConstantValueBinding<TActivated> extends ScopedBinding<typeof bindingTypeValues.ConstantValue, typeof bindingScopeValues.Singleton, TActivated> {
71
+ readonly value: Resolved<TActivated>;
72
+ }
73
+
74
74
  type DynamicValueBuilder<T> = (context: ResolutionContext) => Resolved<T>;
75
75
 
76
76
  interface DynamicValueBinding<TActivated> extends ScopedBinding<typeof bindingTypeValues.DynamicValue, BindingScope, TActivated> {
@@ -128,6 +128,7 @@ declare class BindingService implements Cloneable<BindingService> {
128
128
  static build(parent: BindingService | undefined): BindingService;
129
129
  clone(): BindingService;
130
130
  get<TResolved>(serviceIdentifier: ServiceIdentifier): Iterable<Binding<TResolved>> | undefined;
131
+ getNonParentBoundServices(): Iterable<ServiceIdentifier>;
131
132
  getByModuleId<TResolved>(moduleId: number): Iterable<Binding<TResolved>> | undefined;
132
133
  removeAllByModuleId(moduleId: number): void;
133
134
  removeAllByServiceId(serviceId: ServiceIdentifier): void;
@@ -205,7 +206,7 @@ interface InjectFromBaseOptions {
205
206
  extendProperties?: boolean | undefined;
206
207
  }
207
208
 
208
- declare function injectFromBase(options: InjectFromBaseOptions): ClassDecorator;
209
+ declare function injectFromBase(options?: InjectFromBaseOptions): ClassDecorator;
209
210
 
210
211
  declare function multiInject(serviceIdentifier: ServiceIdentifier | LazyServiceIdentifier): ParameterDecorator & PropertyDecorator;
211
212
 
package/lib/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{getReflectMetadata as e,updateReflectMetadata as t}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as n}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as o,LazyServiceIdentifier as i,isPromise as r}from"@inversifyjs/common";const s={Request:"Request",Singleton:"Singleton",Transient:"Transient"},c={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ServiceRedirection:"ServiceRedirection"};function*a(...e){for(const t of e)yield*t}class u{#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}clone(){const e=Reflect.ownKeys(this.#n),t=new u(this.#n);this.#o(this.#e,t.#e);for(const n of e)this.#o(this.#t[n],t.#t[n]);return t}get(e,t){return this.#t[e].get(t)?.values()}removeByRelation(e,t){const n=this.get(e,t);if(void 0!==n)for(const e of n){const t=this.#e.get(e);if(void 0===t)throw new Error("Expecting model relation, none found");this.#i(e,t),this.#e.delete(e)}}set(e,t){this.#e.set(e,t);for(const n of Reflect.ownKeys(t))this.#r(n,t[n]).add(e)}#r(e,t){let n=this.#t[e].get(t);return void 0===n&&(n=new Set,this.#t[e].set(t,n)),n}#o(e,t){for(const[n,o]of e)t.set(n,o)}#i(e,t){for(const n of Reflect.ownKeys(t))this.#s(e,n,t[n])}#s(e,t,n){const o=this.#t[t].get(n);void 0!==o&&(o.delete(e),0===o.size&&this.#t[t].delete(n))}}var d,l,f;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(d||(d={}));class p{#c;#a;constructor(e,t){this.#c=t??new u({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new p(e)}add(e,t){this.#c.set(e,t)}clone(){return new p(this.#a,this.#c.clone())}get(e){const t=[],n=this.#c.get(d.serviceId,e);void 0!==n&&t.push(n);const o=this.#a?.get(e);if(void 0!==o&&t.push(o),0!==t.length)return a(...t)}removeAllByModuleId(e){this.#c.removeByRelation(d.moduleId,e)}removeAllByServiceId(e){this.#c.removeByRelation(d.serviceId,e)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(l||(l={}));class m{#u;#a;constructor(e,t){this.#u=t??new u({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new m(e)}clone(){return new m(this.#a,this.#u.clone())}get(e){return this.#u.get(l.serviceId,e)??this.#a?.get(e)}getByModuleId(e){return this.#u.get(l.moduleId,e)??this.#a?.getByModuleId(e)}removeAllByModuleId(e){this.#u.removeByRelation(l.moduleId,e)}removeAllByServiceId(e){this.#u.removeByRelation(l.serviceId,e)}set(e){const t={[l.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[l.moduleId]=e.moduleId),this.#u.set(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class g{#d;#a;constructor(e,t){this.#d=t??new u({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new g(e)}add(e,t){this.#d.set(e,t)}clone(){return new g(this.#a,this.#d.clone())}get(e){const t=[],n=this.#d.get(f.serviceId,e);void 0!==n&&t.push(n);const o=this.#a?.get(e);if(void 0!==o&&t.push(o),0!==t.length)return a(...t)}removeAllByModuleId(e){this.#d.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#d.removeByRelation(f.serviceId,e)}}function v(e,t,n){if(void 0!==n)if("number"!=typeof n)Reflect.decorate(e,t.prototype,n);else for(const o of e)o(t,void 0,n);else Reflect.decorate(e,t)}const h="@inversifyjs/core/classMetadataReflectKey";function y(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const w="@inversifyjs/core/pendingClassMetadataCountReflectKey";const M=Symbol.for("@inversifyjs/core/InversifyCoreError");class I extends Error{[M];kind;constructor(e,t,n){super(t,n),this[M]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[M]}static isErrorOfKind(e,t){return I.is(e)&&e.kind===t}}var b,j,C;function x(t){const n=e(t,h)??y();if(!function(t){const n=e(t,w);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new I(b.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)void 0===t[e]&&n.push(e);if(n.length>0)throw new I(b.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(t,n.constructorArguments),n;!function(e,t){const n=[];for(let o=0;o<t.constructorArguments.length;++o){const i=t.constructorArguments[o];void 0!==i&&i.kind!==j.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${o.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[o,i]of t.properties)i.kind===j.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${o.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===n.length)throw new I(b.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new I(b.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function $(){return 0}function R(e){return n=>{void 0!==n&&n.kind===j.unknown&&t(e,w,$,(e=>e-1))}}function S(e,t){return(...n)=>o=>{if(void 0===o)return e(...n);if(o.kind===C.unmanaged)throw new I(b.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(o,...n)}}function T(e){if(e.kind!==j.unknown&&!0!==e.isFromTypescriptParamType)throw new I(b.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(b||(b={})),function(e){e[e.unknown=0]="unknown"}(j||(j={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(C||(C={}));const D=S((function(e,t){return{kind:e,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:t}}),(function(e,t,n){return T(e),{...e,kind:t,value:n}}));var A;function k(e,t,n,o){if(I.isErrorOfKind(o,b.injectionDecoratorConflict)){const i=function(e,t,n){if(void 0===n){if(void 0===t)throw new I(b.unknown,"Unexpected undefined property and index values");return{kind:A.property,property:t,targetClass:e.constructor}}return{index:n,kind:A.parameter,targetClass:e}}(e,t,n);throw new I(b.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${o.message}\n\nDetails\n\n${function(e){switch(e.kind){case A.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case A.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(i)}`,{cause:o})}throw o}function B(e,n){return(o,i,r)=>{void 0===r?function(e,n){const o=N(e,n);return(e,n)=>{t(e.constructor,h,y,function(e,t){return n=>{const o=n.properties.get(t);return n.properties.set(t,e(o)),n}}(o(e),n))}}(e,n)(o,i):function(e,n){const o=N(e,n);return(e,n,i)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,n))throw new Error(`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${n?.toString()??""}" at class "${e.constructor.name}"`);t(e,h,y,function(e,t){return n=>{const o=n.constructorArguments[t];return n.constructorArguments[t]=e(o),n}}(o(e),i))}}(e,n)(o,i,r)}}function N(e,t){return n=>{const o=t(n);return t=>(o(t),e(t))}}function E(e){const t=D(C.singleInjection,e);return(e,n,o)=>{try{void 0===o?B(t,R)(e,n):B(t,R)(e,n,o)}catch(t){k(e,n,o,t)}}}!function(e){e[e.parameter=0]="parameter",e[e.property=1]="property"}(A||(A={}));function F(n){const o=e(n,"design:paramtypes");void 0!==o&&t(n,h,y,function(e){return t=>(e.forEach(((e,n)=>{var o;void 0===t.constructorArguments[n]&&(t.constructorArguments[n]=(o=e,{isFromTypescriptParamType:!0,kind:C.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:o}))})),t)}(o))}function P(e){return n=>{F(n),void 0!==e&&t(n,h,y,(t=>({...t,scope:e})))}}function U(e,t,n){let o;return e.extendConstructorArguments??!1?(o=[...t.constructorArguments],n.constructorArguments.map(((e,t)=>{o[t]=e}))):o=n.constructorArguments,o}function O(e,t,n){let o;return o=e.extendProperties??!1?new Map(a(t.properties,n.properties)):n.properties,o}function K(e){return n=>{const o=x(e.type);t(n,h,y,function(e,t){const n=n=>({constructorArguments:U(e,t,n),lifecycle:n.lifecycle,properties:O(e,t,n),scope:n.scope});return n}(e,o))}}function q(e){return t=>{const o=n(t);if(void 0===o)throw new I(b.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);K({...e,type:o})(t)}}function V(e){const t=D(C.multipleInjection,e);return(e,n,o)=>{try{void 0===o?B(t,R)(e,n):B(t,R)(e,n,o)}catch(t){k(e,n,o,t)}}}function z(e){return n=>{void 0===n&&t(e,w,$,(e=>e+1))}}function G(e){return t=>{const n=t??{kind:j.unknown,name:void 0,optional:!1,tags:new Map,targetName:void 0};if(n.kind===C.unmanaged)throw new I(b.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(n)}}function H(e){const t=G(function(e){return t=>{if(void 0!==t.name)throw new I(b.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return(e,n,o)=>{try{void 0===o?B(t,z)(e,n):B(t,z)(e,n,o)}catch(t){k(e,n,o,t)}}}function J(e){if(e.optional)throw new I(b.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function L(){const e=G(J);return(t,n,o)=>{try{void 0===o?B(e,z)(t,n):B(e,z)(t,n,o)}catch(e){k(t,n,o,e)}}}function Q(){return(e,n,o)=>{try{t(e.constructor,h,y,(i=n,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new I(b.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=i,e}))}catch(t){k(e,n,void 0,t)}var i}}function W(){return(e,n,o)=>{try{t(e.constructor,h,y,(i=n,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new I(b.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=i,e}))}catch(t){k(e,n,void 0,t)}var i}}function X(e,t){const n=G(function(e,t){return n=>{if(n.tags.has(e))throw new I(b.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return(e,t,o)=>{try{void 0===o?B(n,z)(e,t):B(n,z)(e,t,o)}catch(n){k(e,t,o,n)}}}function Y(e){const t=G(function(e){return t=>{if(void 0!==t.targetName)throw new I(b.injectionDecoratorConflict,"Unexpected duplicated targetName decorator");return t.targetName=e,t}}(e));return(e,n,o)=>{try{void 0===o?B(t,z)(e,n):B(t,z)(e,n,o)}catch(t){k(e,n,o,t)}}}function Z(){return{kind:C.unmanaged}}const _=S(Z,(function(e){if(T(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0||void 0!==e.targetName}(e))throw new I(b.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return Z()}));function ee(){const e=_();return(t,n,o)=>{try{void 0===o?B(e,R)(t,n):B(e,R)(t,n,o)}catch(e){k(t,n,o,e)}}}class te{last;constructor(e){this.last=e}concat(e){return new te({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 ne(e,t){e.servicesBranch.has(t)&&function(e,t){const n=(i=[...e.servicesBranch,t],[...i].map(o).join(" -> "));var i;throw new I(b.planning,`Circular dependency found: ${n}`)}(e,t),e.servicesBranch.add(t)}class oe{#l;constructor(e){this.#l=e}get name(){return this.#l.elem.name}get tags(){return this.#l.elem.tags}get serviceIdentifier(){return this.#l.elem.serviceIdentifier}getAncestor(){if(void 0!==this.#l.previous)return new oe(this.#l.previous)}}function ie(e,t,n){const o=new oe(t.last),i=n?.customServiceIdentifier??o.serviceIdentifier;return[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(o)))}function re(e){return void 0!==e.redirections}function se(e,t,n){let i,r;re(n)?(i=n.binding.targetServiceIdentifier,r=n.binding.serviceIdentifier):(i=n.serviceIdentifier,r=n.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,t,n,i){if(0!==e.length){const t=`Ambiguous bindings found for service: "${o(n)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case c.Instance:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case c.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", redirection: "${o(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${o(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${ae(n,i)}".`;throw new I(b.planning,t)}t||ce(n,i)}(e,t,i,r):function(e,t,n,o){if(void 0!==e||t)return;ce(n,o)}(e,t,i,r)}function ce(e,t){const n=`No bindings found for service: "${o(e)}".\n\nTrying to resolve bindings for "${ae(e,t)}".`;throw new I(b.planning,n)}function ae(e,t){return void 0===t?`${o(e)} (Root service)`:o(t)}function ue(e,t){if(1!==e.redirections.length)se(e.redirections,t,e);else{const[n]=e.redirections;re(n)&&ue(n,t)}}function de(e,t){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[n]=e.bindings;re(n)&&ue(n,t)}else se(e.bindings,t,e)}function le(e){const t=new Map;void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const n=new te({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0}),o=ie(e,n),i=[],r={bindings:i,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(i.push(...me(e,n,o,r)),!e.rootConstraints.isMultiple){de(r,e.rootConstraints.isOptional??!1);const[t]=i;r.bindings=t}return{tree:{root:r}}}function fe(e,t,n,o){const i={binding:t,classMetadata:e.getClassMetadata(t.implementationType),constructorParams:[],parent:o,propertyParams:new Map};return function(e,t){const n=e.node.classMetadata;for(const[o,i]of n.constructorArguments.entries())e.node.constructorParams[o]=pe(e,t,i);for(const[o,i]of n.properties){const n=pe(e,t,i);void 0!==n&&e.node.propertyParams.set(o,n)}return e.node}({getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:i,servicesBranch:e.servicesBranch},n)}function pe(e,t,n){if(n.kind===C.unmanaged)return;const o=i.is(n.value)?n.value.unwrap():n.value,r=t.concat({name:n.name,serviceIdentifier:o,tags:n.tags}),s=ie(e,r),c=[],a={bindings:c,parent:e.node,serviceIdentifier:o};if(c.push(...me(e,r,s,a)),n.kind===C.singleInjection){de(a,n.optional);const[e]=c;a.bindings=e}return a}function me(e,t,n,o){const i=re(o)?o.binding.targetServiceIdentifier:o.serviceIdentifier;ne(e,i);const r=[];for(const i of n)switch(i.type){case c.Instance:r.push(fe(e,i,t,o));break;case c.ServiceRedirection:{const n=ge(e,t,i,o);r.push(n);break}default:r.push({binding:i,parent:o})}return e.servicesBranch.delete(i),r}function ge(e,t,n,o){const i={binding:n,parent:o,redirections:[]},r=ie(e,t,{customServiceIdentifier:n.targetServiceIdentifier});return i.redirections.push(...me(e,t,r,i)),i}function ve(e,t,n){const o=e.getActivations(t);return void 0===o?n:r(n)?he(n,o[Symbol.iterator]()):function(e,t){let n=e,o=t.next();for(;!0!==o.done;){const e=o.value(n);if(r(e))return he(e,t);n=e,o=t.next()}return n}(n,o[Symbol.iterator]())}async function he(e,t){let n=await e,o=t.next();for(;!0!==o.done;)n=await o.value(n),o=t.next();return n}function ye(e,t,n){let o=n;if(void 0!==t.onActivation){const e=t.onActivation;o=r(o)?o.then((t=>e(t))):e(o)}return ve(e,t.serviceIdentifier,o)}function we(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;const o=ye(t,n,e(t,n));return n.cache={isRight:!0,value:o},o}}const Me=we((function(e,t){return t.value}));function Ie(e){return e}function be(e,t){return(n,o)=>{const i=e(o);switch(i.scope){case s.Singleton:{if(i.cache.isRight)return i.cache.value;const e=je(n,o,i,t);return i.cache={isRight:!0,value:e},e}case s.Request:{if(n.requestScopeCache.has(i.id))return n.requestScopeCache.get(i.id);const e=je(n,o,i,t);return n.requestScopeCache.set(i.id,e),e}case s.Transient:return je(n,o,i,t)}}}function je(e,t,n,o){return ye(e,n,o(e,t))}const Ce=(e=>be(Ie,e))((function(e,t){return t.value(e.context)}));const xe=we((function(e,t){return t.factory(e.context)}));function $e(e,t,n){const o=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new I(b.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new I(b.resolution,`Expecting a "${n.toString()}" method when resolving "${t.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let o;try{o=e[n]()}catch(e){throw new I(b.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(r(o))return async function(e,t,n){try{await n}catch(n){throw new I(b.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:n})}}(t,n,o)}}(e,t,n);return r(o)?o.then((()=>e)):e}function Re(e){return(t,n,o)=>{const i=new o.binding.implementationType(...t),s=e(n,i,o);return r(s)?s.then((()=>$e(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName))):$e(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName)}}const Se=we((function(e,t){return t.provider(e.context)}));function Te(e){return e.binding}const De=function(e){return(t,n,o)=>{const i=[];for(const[s,c]of o.propertyParams){const a=o.classMetadata.properties.get(s);if(void 0===a)throw new I(b.resolution,`Expecting metadata at property "${s.toString()}", none found`);if(a.kind!==C.unmanaged){const o=a.targetName??s;n[o]=e(t,c),r(n[o])&&i.push((async()=>{n[o]=await n[o]})())}}if(i.length>0)return Promise.all(i).then((()=>{}))}}(Fe),Ae=function(e){return function t(n,o){const i=[];for(const r of o.redirections)re(r)?i.push(...t(n,r)):i.push(e(n,r));return i}}(Ee),ke=function(e,t,n){return(o,i)=>{const s=e(o,i);return r(s)?t(s,o,i):n(s,o,i)}}(function(e){return(t,n)=>{const o=[];for(const i of n.constructorParams)void 0===i?o.push(void 0):o.push(e(t,i));return o.some(r)?Promise.all(o):o}}(Fe),function(e){return async(t,n,o)=>{const i=await t;return e(i,n,o)}}(Re(De)),Re(De)),Be=(e=>be(Te,e))(ke);function Ne(e){return Fe(e,e.planResult.tree.root)}function Ee(e,t){switch(t.binding.type){case c.ConstantValue:return Me(e,t.binding);case c.DynamicValue:return Ce(e,t.binding);case c.Factory:return xe(e,t.binding);case c.Instance:return Be(e,t);case c.Provider:return Se(e,t.binding)}}function Fe(e,t){if(void 0!==t.bindings)return Array.isArray(t.bindings)?function(e,t){const n=[];for(const o of t)re(o)?n.push(...Ae(e,o)):n.push(Ee(e,o));if(n.some(r))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(re(t)){const n=Ae(e,t);if(1===n.length)return n[0];throw new I(b.resolution,"Unexpected multiple resolved values on single injection")}return Ee(e,t)}(e,t.bindings)}function Pe(e){return void 0!==e.scope}function Ue(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function Oe(e,t,n){const o=e.getDeactivations(t);if(void 0!==o)return r(n)?Ke(n,o[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const o=n.value(e);if(r(o))return Ke(e,t);n=t.next()}}(n,o[Symbol.iterator]())}async function Ke(e,t){const n=await e;let o=t.next();for(;!0!==o.done;)await o.value(n),o=t.next()}function qe(e,t){const n=function(e,t){if(t.type===c.Instance){const n=e.getClassMetadata(t.implementationType),o=t.cache.value;return r(o)?o.then((e=>Ue(n,e))):Ue(n,o)}}(e,t);return void 0===n?Ve(e,t):n.then((()=>Ve(e,t)))}function Ve(e,t){const n=t.cache;return r(n.value)?n.value.then((n=>ze(e,t,n))):ze(e,t,n.value)}function ze(e,t,n){let o;if(void 0!==t.onDeactivation){o=(0,t.onDeactivation)(n)}return void 0===o?Oe(e,t.serviceIdentifier,n):o.then((()=>Oe(e,t.serviceIdentifier,n)))}function Ge(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)Pe(n)&&n.scope===s.Singleton&&n.cache.isRight&&t.push(n);return t}(t),o=[];for(const t of n){const n=qe(e,t);void 0!==n&&o.push(n)}return o.length>0?Promise.all(o).then((()=>{})):void 0}function He(e,t){const n=e.getBindingsFromModule(t);return Ge(e,n)}function Je(e,t){const n=e.getBindings(t);return Ge(e,n)}export{p as ActivationsService,m as BindingService,C as ClassElementMetadataKind,g as DeactivationsService,s as bindingScopeValues,c as bindingTypeValues,v as decorate,x as getClassMetadata,E as inject,q as injectFromBase,P as injectable,V as multiInject,H as named,L as optional,le as plan,Q as postConstruct,W as preDestroy,Ne as resolve,He as resolveModuleDeactivations,Je as resolveServiceDeactivations,X as tagged,Y as targetName,ee as unmanaged};
1
+ import{getReflectMetadata as e,updateReflectMetadata as t,setReflectMetadata as n}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as o}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as i,LazyServiceIdentifier as r,isPromise as s}from"@inversifyjs/common";const c={Request:"Request",Singleton:"Singleton",Transient:"Transient"},a={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ServiceRedirection:"ServiceRedirection"};function*u(...e){for(const t of e)yield*t}class d{#e;#t;#n;constructor(e){this.#e=new Map,this.#t={};for(const t of Reflect.ownKeys(e))this.#t[t]=new Map;this.#n=e}clone(){const e=Reflect.ownKeys(this.#n),t=new d(this.#n);this.#o(this.#e,t.#e);for(const n of e)this.#o(this.#t[n],t.#t[n]);return t}get(e,t){return this.#t[e].get(t)?.values()}getAllKeys(e){return this.#t[e].keys()}removeByRelation(e,t){const n=this.get(e,t);if(void 0!==n)for(const e of n){const t=this.#e.get(e);if(void 0===t)throw new Error("Expecting model relation, none found");this.#i(e,t),this.#e.delete(e)}}set(e,t){this.#e.set(e,t);for(const n of Reflect.ownKeys(t))this.#r(n,t[n]).add(e)}#r(e,t){let n=this.#t[e].get(t);return void 0===n&&(n=new Set,this.#t[e].set(t,n)),n}#o(e,t){for(const[n,o]of e)t.set(n,o)}#i(e,t){for(const n of Reflect.ownKeys(t))this.#s(e,n,t[n])}#s(e,t,n){const o=this.#t[t].get(n);void 0!==o&&(o.delete(e),0===o.size&&this.#t[t].delete(n))}}var l,f,p;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(l||(l={}));class m{#c;#a;constructor(e,t){this.#c=t??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new m(e)}add(e,t){this.#c.set(e,t)}clone(){return new m(this.#a,this.#c.clone())}get(e){const t=[],n=this.#c.get(l.serviceId,e);void 0!==n&&t.push(n);const o=this.#a?.get(e);if(void 0!==o&&t.push(o),0!==t.length)return u(...t)}removeAllByModuleId(e){this.#c.removeByRelation(l.moduleId,e)}removeAllByServiceId(e){this.#c.removeByRelation(l.serviceId,e)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class g{#u;#a;constructor(e,t){this.#u=t??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new g(e)}clone(){return new g(this.#a,this.#u.clone())}get(e){return this.#u.get(f.serviceId,e)??this.#a?.get(e)}getNonParentBoundServices(){return this.#u.getAllKeys(f.serviceId)}getByModuleId(e){return this.#u.get(f.moduleId,e)??this.#a?.getByModuleId(e)}removeAllByModuleId(e){this.#u.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#u.removeByRelation(f.serviceId,e)}set(e){const t={[f.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(t[f.moduleId]=e.moduleId),this.#u.set(e,t)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(p||(p={}));class v{#d;#a;constructor(e,t){this.#d=t??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new v(e)}add(e,t){this.#d.set(e,t)}clone(){return new v(this.#a,this.#d.clone())}get(e){const t=[],n=this.#d.get(p.serviceId,e);void 0!==n&&t.push(n);const o=this.#a?.get(e);if(void 0!==o&&t.push(o),0!==t.length)return u(...t)}removeAllByModuleId(e){this.#d.removeByRelation(p.moduleId,e)}removeAllByServiceId(e){this.#d.removeByRelation(p.serviceId,e)}}function h(e,t,n){if(void 0!==n)if("number"!=typeof n)Reflect.decorate(e,t.prototype,n);else for(const o of e)o(t,void 0,n);else Reflect.decorate(e,t)}const y="@inversifyjs/core/classMetadataReflectKey";function w(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const M="@inversifyjs/core/pendingClassMetadataCountReflectKey";const I=Symbol.for("@inversifyjs/core/InversifyCoreError");class b extends Error{[I];kind;constructor(e,t,n){super(t,n),this[I]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[I]}static isErrorOfKind(e,t){return b.is(e)&&e.kind===t}}var j,C,x;function $(t){const n=e(t,y)??w();if(!function(t){const n=e(t,M);return void 0!==n&&0!==n}(t))return function(e,t){const n=[];if(t.length<e.length)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${t.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<t.length;++e)void 0===t[e]&&n.push(e);if(n.length>0)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${n.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(t,n.constructorArguments),n;!function(e,t){const n=[];for(let o=0;o<t.constructorArguments.length;++o){const i=t.constructorArguments[o];void 0!==i&&i.kind!==C.unknown||n.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${o.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[o,i]of t.properties)i.kind===C.unknown&&n.push(` - Missing or incomplete metadata for type "${e.name}" at property "${o.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===n.length)throw new b(j.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new b(j.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${n.join("\n\n")}`)}(t,n)}function R(){return 0}function S(e){return n=>{void 0!==n&&n.kind===C.unknown&&t(e,M,R,(e=>e-1))}}function A(e,t){return(...n)=>o=>{if(void 0===o)return e(...n);if(o.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return t(o,...n)}}function T(e){if(e.kind!==C.unknown&&!0!==e.isFromTypescriptParamType)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(j||(j={})),function(e){e[e.unknown=0]="unknown"}(C||(C={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(x||(x={}));const D=A((function(e,t){return{kind:e,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:t}}),(function(e,t,n){return T(e),{...e,kind:t,value:n}}));var k;function B(e,t,n,o){if(b.isErrorOfKind(o,j.injectionDecoratorConflict)){const i=function(e,t,n){if(void 0===n){if(void 0===t)throw new b(j.unknown,"Unexpected undefined property and index values");return{kind:k.property,property:t,targetClass:e.constructor}}return{index:n,kind:k.parameter,targetClass:e}}(e,t,n);throw new b(j.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${o.message}\n\nDetails\n\n${function(e){switch(e.kind){case k.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case k.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(i)}`,{cause:o})}throw o}function N(e,n){return(o,i,r)=>{void 0===r?function(e,n){const o=F(e,n);return(e,n)=>{t(e.constructor,y,w,function(e,t){return n=>{const o=n.properties.get(t);return n.properties.set(t,e(o)),n}}(o(e),n))}}(e,n)(o,i):function(e,n){const o=F(e,n);return(e,n,i)=>{if(!function(e,t){return"function"==typeof e&&void 0===t}(e,n))throw new Error(`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${n?.toString()??""}" at class "${e.constructor.name}"`);t(e,y,w,function(e,t){return n=>{const o=n.constructorArguments[t];return n.constructorArguments[t]=e(o),n}}(o(e),i))}}(e,n)(o,i,r)}}function F(e,t){return n=>{const o=t(n);return t=>(o(t),e(t))}}function P(e){const t=D(x.singleInjection,e);return(e,n,o)=>{try{void 0===o?N(t,S)(e,n):N(t,S)(e,n,o)}catch(t){B(e,n,o,t)}}}!function(e){e[e.parameter=0]="parameter",e[e.property=1]="property"}(k||(k={}));const E="@inversifyjs/core/classIsInjectableFlagReflectKey";const U=[Array,BigInt,Boolean,Function,Number,Object,String];function O(n){const o=e(n,"design:paramtypes");void 0!==o&&t(n,y,w,function(e){return t=>(e.forEach(((e,n)=>{var o;void 0!==t.constructorArguments[n]||(o=e,U.includes(o))||(t.constructorArguments[n]=function(e){return{isFromTypescriptParamType:!0,kind:x.singleInjection,name:void 0,optional:!1,tags:new Map,targetName:void 0,value:e}}(e))})),t)}(o))}function K(o){return i=>{!function(t){if(void 0!==e(t,E))throw new b(j.injectionDecoratorConflict,"Cannot apply @injectable decorator multiple times");n(t,E,!0)}(i),O(i),void 0!==o&&t(i,y,w,(e=>({...e,scope:o})))}}function q(e,t,n){let o;return e.extendConstructorArguments??!1?(o=[...t.constructorArguments],n.constructorArguments.map(((e,t)=>{o[t]=e}))):o=n.constructorArguments,o}function V(e,t,n){let o;return o=e.extendProperties??!1?new Map(u(t.properties,n.properties)):n.properties,o}function z(e){return n=>{const o=$(e.type);t(n,y,w,function(e,t){const n=n=>({constructorArguments:q(e,t,n),lifecycle:n.lifecycle,properties:V(e,t,n),scope:n.scope});return n}(e,o))}}function G(e){return t=>{const n=o(t);if(void 0===n)throw new b(j.injectionDecoratorConflict,`Expected base type for type "${t.name}", none found.`);z({...e,type:n})(t)}}function H(e){const t=D(x.multipleInjection,e);return(e,n,o)=>{try{void 0===o?N(t,S)(e,n):N(t,S)(e,n,o)}catch(t){B(e,n,o,t)}}}function J(e){return n=>{void 0===n&&t(e,M,R,(e=>e+1))}}function L(e){return t=>{const n=t??{kind:C.unknown,name:void 0,optional:!1,tags:new Map,targetName:void 0};if(n.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(n)}}function Q(e){const t=L(function(e){return t=>{if(void 0!==t.name)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated named decorator");return t.name=e,t}}(e));return(e,n,o)=>{try{void 0===o?N(t,J)(e,n):N(t,J)(e,n,o)}catch(t){B(e,n,o,t)}}}function W(e){if(e.optional)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function X(){const e=L(W);return(t,n,o)=>{try{void 0===o?N(e,J)(t,n):N(e,J)(t,n,o)}catch(e){B(t,n,o,e)}}}function Y(){return(e,n,o)=>{try{t(e.constructor,y,w,(i=n,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=i,e}))}catch(t){B(e,n,void 0,t)}var i}}function Z(){return(e,n,o)=>{try{t(e.constructor,y,w,(i=n,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=i,e}))}catch(t){B(e,n,void 0,t)}var i}}function _(e,t){const n=L(function(e,t){return n=>{if(n.tags.has(e))throw new b(j.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return n.tags.set(e,t),n}}(e,t));return(e,t,o)=>{try{void 0===o?N(n,J)(e,t):N(n,J)(e,t,o)}catch(n){B(e,t,o,n)}}}function ee(e){const t=L(function(e){return t=>{if(void 0!==t.targetName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated targetName decorator");return t.targetName=e,t}}(e));return(e,n,o)=>{try{void 0===o?N(t,J)(e,n):N(t,J)(e,n,o)}catch(t){B(e,n,o,t)}}}function te(){return{kind:x.unmanaged}}const ne=A(te,(function(e){if(T(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0||void 0!==e.targetName}(e))throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return te()}));function oe(){const e=ne();return(t,n,o)=>{try{void 0===o?N(e,S)(t,n):N(e,S)(t,n,o)}catch(e){B(t,n,o,e)}}}class ie{last;constructor(e){this.last=e}concat(e){return new ie({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 re(e,t){e.servicesBranch.has(t)&&function(e,t){const n=(o=[...e.servicesBranch,t],[...o].map(i).join(" -> "));var o;throw new b(j.planning,`Circular dependency found: ${n}`)}(e,t),e.servicesBranch.add(t)}class se{#l;constructor(e){this.#l=e}get name(){return this.#l.elem.name}get tags(){return this.#l.elem.tags}get serviceIdentifier(){return this.#l.elem.serviceIdentifier}getAncestor(){if(void 0!==this.#l.previous)return new se(this.#l.previous)}}function ce(e,t,n){const o=new se(t.last),i=n?.customServiceIdentifier??o.serviceIdentifier;return[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(o)))}function ae(e){return void 0!==e.redirections}function ue(e,t,n){let o,r;ae(n)?(o=n.binding.targetServiceIdentifier,r=n.binding.serviceIdentifier):(o=n.serviceIdentifier,r=n.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,t,n,o){if(0!==e.length){const t=`Ambiguous bindings found for service: "${i(n)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case a.Instance:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case a.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", redirection: "${i(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${le(n,o)}".`;throw new b(j.planning,t)}t||de(n,o)}(e,t,o,r):function(e,t,n,o){if(void 0!==e||t)return;de(n,o)}(e,t,o,r)}function de(e,t){const n=`No bindings found for service: "${i(e)}".\n\nTrying to resolve bindings for "${le(e,t)}".`;throw new b(j.planning,n)}function le(e,t){return void 0===t?`${i(e)} (Root service)`:i(t)}function fe(e,t){if(1!==e.redirections.length)ue(e.redirections,t,e);else{const[n]=e.redirections;ae(n)&&fe(n,t)}}function pe(e,t){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[n]=e.bindings;ae(n)&&fe(n,t)}else ue(e.bindings,t,e)}function me(e){const t=new Map;void 0!==e.rootConstraints.tag&&t.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const n=new ie({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:t},previous:void 0}),o=ce(e,n),i=[],r={bindings:i,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(i.push(...he(e,n,o,r)),!e.rootConstraints.isMultiple){pe(r,e.rootConstraints.isOptional??!1);const[t]=i;r.bindings=t}return{tree:{root:r}}}function ge(e,t,n,o){const i={binding:t,classMetadata:e.getClassMetadata(t.implementationType),constructorParams:[],parent:o,propertyParams:new Map};return function(e,t){const n=e.node.classMetadata;for(const[o,i]of n.constructorArguments.entries())e.node.constructorParams[o]=ve(e,t,i);for(const[o,i]of n.properties){const n=ve(e,t,i);void 0!==n&&e.node.propertyParams.set(o,n)}return e.node}({getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:i,servicesBranch:e.servicesBranch},n)}function ve(e,t,n){if(n.kind===x.unmanaged)return;const o=r.is(n.value)?n.value.unwrap():n.value,i=t.concat({name:n.name,serviceIdentifier:o,tags:n.tags}),s=ce(e,i),c=[],a={bindings:c,parent:e.node,serviceIdentifier:o};if(c.push(...he(e,i,s,a)),n.kind===x.singleInjection){pe(a,n.optional);const[e]=c;a.bindings=e}return a}function he(e,t,n,o){const i=ae(o)?o.binding.targetServiceIdentifier:o.serviceIdentifier;re(e,i);const r=[];for(const i of n)switch(i.type){case a.Instance:r.push(ge(e,i,t,o));break;case a.ServiceRedirection:{const n=ye(e,t,i,o);r.push(n);break}default:r.push({binding:i,parent:o})}return e.servicesBranch.delete(i),r}function ye(e,t,n,o){const i={binding:n,parent:o,redirections:[]},r=ce(e,t,{customServiceIdentifier:n.targetServiceIdentifier});return i.redirections.push(...he(e,t,r,i)),i}function we(e,t,n){const o=e.getActivations(t);return void 0===o?n:s(n)?Me(e,n,o[Symbol.iterator]()):function(e,t,n){let o=t,i=n.next();for(;!0!==i.done;){const t=i.value(e.context,o);if(s(t))return Me(e,t,n);o=t,i=n.next()}return o}(e,n,o[Symbol.iterator]())}async function Me(e,t,n){let o=await t,i=n.next();for(;!0!==i.done;)o=await i.value(e.context,o),i=n.next();return o}function Ie(e,t,n){let o=n;if(void 0!==t.onActivation){const n=t.onActivation;o=s(o)?o.then((t=>n(e.context,t))):n(e.context,o)}return we(e,t.serviceIdentifier,o)}function be(e){return(t,n)=>{if(n.cache.isRight)return n.cache.value;const o=Ie(t,n,e(t,n));return n.cache={isRight:!0,value:o},o}}const je=be((function(e,t){return t.value}));function Ce(e){return e}function xe(e,t){return(n,o)=>{const i=e(o);switch(i.scope){case c.Singleton:{if(i.cache.isRight)return i.cache.value;const e=$e(n,o,i,t);return i.cache={isRight:!0,value:e},e}case c.Request:{if(n.requestScopeCache.has(i.id))return n.requestScopeCache.get(i.id);const e=$e(n,o,i,t);return n.requestScopeCache.set(i.id,e),e}case c.Transient:return $e(n,o,i,t)}}}function $e(e,t,n,o){return Ie(e,n,o(e,t))}const Re=(e=>xe(Ce,e))((function(e,t){return t.value(e.context)}));const Se=be((function(e,t){return t.factory(e.context)}));function Ae(e,t,n){const o=function(e,t,n){if(void 0===n)return;if(!(n in e))throw new b(j.resolution,`Expecting a "${n.toString()}" property when resolving "${t.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[n])throw new b(j.resolution,`Expecting a "${n.toString()}" method when resolving "${t.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let o;try{o=e[n]()}catch(e){throw new b(j.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${t.implementationType.name}"`,{cause:e})}if(s(o))return async function(e,t,n){try{await n}catch(n){throw new b(j.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:n})}}(t,n,o)}}(e,t,n);return s(o)?o.then((()=>e)):e}function Te(e){return(t,n,o)=>{const i=new o.binding.implementationType(...t),r=e(n,i,o);return s(r)?r.then((()=>Ae(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName))):Ae(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName)}}const De=be((function(e,t){return t.provider(e.context)}));function ke(e){return e.binding}const Be=function(e){return(t,n,o)=>{const i=[];for(const[r,c]of o.propertyParams){const a=o.classMetadata.properties.get(r);if(void 0===a)throw new b(j.resolution,`Expecting metadata at property "${r.toString()}", none found`);if(a.kind!==x.unmanaged){const o=a.targetName??r;n[o]=e(t,c),s(n[o])&&i.push((async()=>{n[o]=await n[o]})())}}if(i.length>0)return Promise.all(i).then((()=>{}))}}(Oe),Ne=function(e){return function t(n,o){const i=[];for(const r of o.redirections)ae(r)?i.push(...t(n,r)):i.push(e(n,r));return i}}(Ue),Fe=function(e,t,n){return(o,i)=>{const r=e(o,i);return s(r)?t(r,o,i):n(r,o,i)}}(function(e){return(t,n)=>{const o=[];for(const i of n.constructorParams)void 0===i?o.push(void 0):o.push(e(t,i));return o.some(s)?Promise.all(o):o}}(Oe),function(e){return async(t,n,o)=>{const i=await t;return e(i,n,o)}}(Te(Be)),Te(Be)),Pe=(e=>xe(ke,e))(Fe);function Ee(e){return Oe(e,e.planResult.tree.root)}function Ue(e,t){switch(t.binding.type){case a.ConstantValue:return je(e,t.binding);case a.DynamicValue:return Re(e,t.binding);case a.Factory:return Se(e,t.binding);case a.Instance:return Pe(e,t);case a.Provider:return De(e,t.binding)}}function Oe(e,t){if(void 0!==t.bindings)return Array.isArray(t.bindings)?function(e,t){const n=[];for(const o of t)ae(o)?n.push(...Ne(e,o)):n.push(Ue(e,o));if(n.some(s))return Promise.all(n);return n}(e,t.bindings):function(e,t){if(ae(t)){const n=Ne(e,t);if(1===n.length)return n[0];throw new b(j.resolution,"Unexpected multiple resolved values on single injection")}return Ue(e,t)}(e,t.bindings)}function Ke(e){return void 0!==e.scope}function qe(e,t){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof t[e.lifecycle.preDestroyMethodName])return t[e.lifecycle.preDestroyMethodName]()}function Ve(e,t,n){const o=e.getDeactivations(t);if(void 0!==o)return s(n)?ze(n,o[Symbol.iterator]()):function(e,t){let n=t.next();for(;!0!==n.done;){const o=n.value(e);if(s(o))return ze(e,t);n=t.next()}}(n,o[Symbol.iterator]())}async function ze(e,t){const n=await e;let o=t.next();for(;!0!==o.done;)await o.value(n),o=t.next()}function Ge(e,t){const n=function(e,t){if(t.type===a.Instance){const n=e.getClassMetadata(t.implementationType),o=t.cache.value;return s(o)?o.then((e=>qe(n,e))):qe(n,o)}}(e,t);return void 0===n?He(e,t):n.then((()=>He(e,t)))}function He(e,t){const n=t.cache;return s(n.value)?n.value.then((n=>Je(e,t,n))):Je(e,t,n.value)}function Je(e,t,n){let o;if(void 0!==t.onDeactivation){o=(0,t.onDeactivation)(n)}return void 0===o?Ve(e,t.serviceIdentifier,n):o.then((()=>Ve(e,t.serviceIdentifier,n)))}function Le(e,t){if(void 0===t)return;const n=function(e){const t=[];for(const n of e)Ke(n)&&n.scope===c.Singleton&&n.cache.isRight&&t.push(n);return t}(t),o=[];for(const t of n){const n=Ge(e,t);void 0!==n&&o.push(n)}return o.length>0?Promise.all(o).then((()=>{})):void 0}function Qe(e,t){const n=e.getBindingsFromModule(t);return Le(e,n)}function We(e,t){const n=e.getBindings(t);return Le(e,n)}export{m as ActivationsService,g as BindingService,x as ClassElementMetadataKind,v as DeactivationsService,c as bindingScopeValues,a as bindingTypeValues,h as decorate,$ as getClassMetadata,P as inject,G as injectFromBase,K as injectable,H as multiInject,Q as named,X as optional,me as plan,Y as postConstruct,Z as preDestroy,Ee as resolve,Qe as resolveModuleDeactivations,We as resolveServiceDeactivations,_ as tagged,ee as targetName,oe as unmanaged};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/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/updateMaybeClassMetadataProperty.ts","../../src/metadata/actions/updateMaybeClassMetadataConstructorArgument.ts","../../src/metadata/decorators/inject.ts","../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts","../../src/reflectMetadata/data/typescriptDesignParameterTypesReflectKey.ts","../../src/metadata/calculations/buildClassElementMetadataFromTypescriptParameterType.ts","../../src/metadata/decorators/injectable.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/decorators/targetName.ts","../../src/metadata/actions/updateMetadataTargetName.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/actions/addBranchService.ts","../../src/binding/models/BindingMetadataImplementation.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/plan.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/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/resolveScopedInstanceBindingNode.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],"names":["bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","clone","properties","pushEntriesIntoMap","property","get","key","value","values","removeByRelation","models","undefined","model","relation","Error","removeModelFromRelationMaps","delete","set","relationKey","buildOrGetRelationModelSet","add","relationValue","modelSet","Set","source","target","removeModelFromRelationMap","size","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","push","parentActivations","length","removeAllByModuleId","removeAllByServiceId","BindingService","bindingMaps","getByModuleId","binding","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","scope","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","type","classMetadata","getReflectMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","metadata","updateReflectMetadata","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","targetName","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","targetClass","index","parameter","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updateMetadata","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","propertyMetadata","updateMaybeClassMetadataProperty","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","updateTargetPendingClassMetadataCount","inject","singleInjection","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","updateMetadataTargetName","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","hasManagedMetadata","SingleInmutableLinkedList","last","concat","elem","previous","iterator","node","next","done","addBranchService","servicesBranch","stringifiedCircularDependencies","serviceIdentifiers","stringifyServiceIdentifier","planning","throwError","BindingMetadataImplementation","getAncestor","buildFilteredServiceBindings","bindingMetadataList","bindingMetadata","customServiceIdentifier","getBindings","filter","isSatisfiedBy","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","targetServiceIdentifier","Array","isArray","errorMessage","implementationType","stringifyBinding","stringifyParentServiceIdentifier","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","plan","rootConstraints","tag","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","elementMetadata","entries","buildPlanServiceNodeFromClassElementMetadata","planServiceNode","subplan","LazyServiceIdentifier","unwrap","updatedBindingMetadataList","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","resolveBindingServiceActivations","getActivations","isPromise","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","onActivation","then","resolved","resolveSingletonScopedBinding","resolve","cache","isRight","resolvedValue","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","resolveAndActivate","requestScopeCache","id","resolveDynamicValueBinding","resolveScopedBinding","context","resolveFactoryBinding","factory","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","provider","getInstanceNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","propertyName","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","planResult","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","onDeactivation","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filteredBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/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/updateMaybeClassMetadataProperty.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/decorators/targetName.ts","../../src/metadata/actions/updateMetadataTargetName.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/actions/addBranchService.ts","../../src/binding/models/BindingMetadataImplementation.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/plan.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/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/resolveScopedInstanceBindingNode.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],"names":["bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","clone","properties","pushEntriesIntoMap","property","get","key","value","values","getAllKeys","keys","removeByRelation","models","undefined","model","relation","Error","removeModelFromRelationMaps","delete","set","relationKey","buildOrGetRelationModelSet","add","relationValue","modelSet","Set","source","target","removeModelFromRelationMap","size","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","push","parentActivations","length","removeAllByModuleId","removeAllByServiceId","BindingService","bindingMaps","getNonParentBoundServices","getByModuleId","binding","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","scope","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","type","classMetadata","getReflectMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","metadata","updateReflectMetadata","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","targetName","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","targetClass","index","parameter","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updateMetadata","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","propertyMetadata","updateMaybeClassMetadataProperty","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","updateTargetPendingClassMetadataCount","inject","singleInjection","classIsInjectableFlagReflectKey","NON_USERLAND_TYPES","Array","BigInt","Boolean","Function","Number","Object","String","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","includes","buildClassElementMetadataFromTypescriptParameterType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","setReflectMetadata","setIsInjectableFlag","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","updateMetadataTargetName","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","hasManagedMetadata","SingleInmutableLinkedList","last","concat","elem","previous","iterator","node","next","done","addBranchService","servicesBranch","stringifiedCircularDependencies","serviceIdentifiers","stringifyServiceIdentifier","planning","throwError","BindingMetadataImplementation","getAncestor","buildFilteredServiceBindings","bindingMetadataList","bindingMetadata","customServiceIdentifier","getBindings","filter","isSatisfiedBy","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","targetServiceIdentifier","isArray","errorMessage","implementationType","stringifyBinding","stringifyParentServiceIdentifier","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","plan","rootConstraints","tag","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","elementMetadata","entries","buildPlanServiceNodeFromClassElementMetadata","planServiceNode","subplan","LazyServiceIdentifier","unwrap","updatedBindingMetadataList","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","resolveBindingServiceActivations","getActivations","isPromise","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","context","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","onActivation","then","resolved","resolveSingletonScopedBinding","resolve","cache","isRight","resolvedValue","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","resolveAndActivate","requestScopeCache","id","resolveDynamicValueBinding","resolveScopedBinding","resolveFactoryBinding","factory","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","provider","getInstanceNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","propertyName","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","planResult","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","onDeactivation","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filteredBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"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"}
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "@inversifyjs/reflect-metadata-utils": "1.0.0"
11
11
  },
12
12
  "devDependencies": {
13
- "@eslint/js": "9.17.0",
13
+ "@eslint/js": "9.18.0",
14
14
  "@jest/globals": "29.7.0",
15
15
  "@stryker-mutator/core": "8.7.1",
16
16
  "@stryker-mutator/jest-runner": "8.7.1",
@@ -18,7 +18,7 @@
18
18
  "@types/node": "22.10.5",
19
19
  "@typescript-eslint/eslint-plugin": "8.19.1",
20
20
  "@typescript-eslint/parser": "8.19.1",
21
- "eslint": "9.17.0",
21
+ "eslint": "9.18.0",
22
22
  "jest": "29.7.0",
23
23
  "prettier": "3.4.2",
24
24
  "reflect-metadata": "0.2.2",
@@ -62,7 +62,7 @@
62
62
  "type": "git",
63
63
  "url": "git+https://github.com/inversify/monorepo.git"
64
64
  },
65
- "version": "2.1.0",
65
+ "version": "2.2.0",
66
66
  "scripts": {
67
67
  "build": "pnpm run build:cjs && pnpm run build:esm",
68
68
  "build:cjs": "tsc --build tsconfig.cjs.json && pnpm exec foundation-ts-package-cjs ./lib/cjs",