inversify 6.2.0-beta.0 → 6.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -12,6 +12,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
12
12
 
13
13
  ### Fixed
14
14
 
15
+ ## [6.2.0-beta.1]
16
+
17
+ ### Added
18
+
19
+ ### Changed
20
+ - Updated `interfaces.NextArgs` with optional `isOptional` param.
21
+ - Updated `container` with `tryGet`.
22
+ - Updated `container` with `tryGetAsync`.
23
+ - Updated `container` with `tryGetTagged`.
24
+ - Updated `container` with `tryGetTaggedAsync`.
25
+ - Updated `container` with `tryGetNamed`.
26
+ - Updated `container` with `tryGetNamedAsync`.
27
+ - Updated `container` with `tryGetAll`.
28
+ - Updated `container` with `tryGetAllAsync`.
29
+ - Updated `container` with `tryGetAllTagged`.
30
+ - Updated `container` with `tryGetAllTaggedAsync`.
31
+ - Updated `container` with `tryGetAllNamed`.
32
+ - Updated `container` with `tryGetAllNamedAsync`.
33
+
34
+ ### Fixed
35
+
15
36
  ## [6.2.0-beta.0]
16
37
 
17
38
  ### Added
@@ -47,6 +47,18 @@ declare class Container implements interfaces.Container {
47
47
  getAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
48
48
  getAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
49
49
  resolve<T>(constructorFunction: interfaces.Newable<T>): T;
50
+ tryGet<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T | undefined;
51
+ tryGetAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T | undefined>;
52
+ tryGetTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T | undefined;
53
+ tryGetTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T | undefined>;
54
+ tryGetNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T | undefined;
55
+ tryGetNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T | undefined>;
56
+ tryGetAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): T[];
57
+ tryGetAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): Promise<T[]>;
58
+ tryGetAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
59
+ tryGetAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
60
+ tryGetAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
61
+ tryGetAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
50
62
  private _preDestroy;
51
63
  private _removeModuleHandlers;
52
64
  private _removeModuleBindings;
@@ -62,6 +74,7 @@ declare class Container implements interfaces.Container {
62
74
  private _getButThrowIfAsync;
63
75
  private _getAllArgs;
64
76
  private _getNotAllArgs;
77
+ private _getPlanMetadataFromNextArgs;
65
78
  private _planAndResolve;
66
79
  private _deactivateIfSingleton;
67
80
  private _deactivateSingletons;
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/container/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/container/container.ts"],"names":[],"mappings":"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"}
@@ -220,7 +220,13 @@ class Container {
220
220
  // verify if there are bindings available for serviceIdentifier on current binding dictionary
221
221
  if (this._bindingDictionary.hasKey(serviceIdentifier)) {
222
222
  const bindings = this._bindingDictionary.get(serviceIdentifier);
223
- const request = (0, planner_1.createMockRequest)(this, serviceIdentifier, key, value);
223
+ const request = (0, planner_1.createMockRequest)(this, serviceIdentifier, {
224
+ customTag: {
225
+ key,
226
+ value,
227
+ },
228
+ isMultiInject: false,
229
+ });
224
230
  bound = bindings.some((b) => b.constraint(request));
225
231
  }
226
232
  // verify if there is a parent container that could solve the request
@@ -261,19 +267,19 @@ class Container {
261
267
  // The runtime identifier must be associated with only one binding
262
268
  // use getAll when the runtime identifier is associated with multiple bindings
263
269
  get(serviceIdentifier) {
264
- const getArgs = this._getNotAllArgs(serviceIdentifier, false);
270
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, false);
265
271
  return this._getButThrowIfAsync(getArgs);
266
272
  }
267
273
  async getAsync(serviceIdentifier) {
268
- const getArgs = this._getNotAllArgs(serviceIdentifier, false);
274
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, false);
269
275
  return this._get(getArgs);
270
276
  }
271
277
  getTagged(serviceIdentifier, key, value) {
272
- const getArgs = this._getNotAllArgs(serviceIdentifier, false, key, value);
278
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, false, key, value);
273
279
  return this._getButThrowIfAsync(getArgs);
274
280
  }
275
281
  async getTaggedAsync(serviceIdentifier, key, value) {
276
- const getArgs = this._getNotAllArgs(serviceIdentifier, false, key, value);
282
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, false, key, value);
277
283
  return this._get(getArgs);
278
284
  }
279
285
  getNamed(serviceIdentifier, named) {
@@ -285,19 +291,19 @@ class Container {
285
291
  // Resolves a dependency by its runtime identifier
286
292
  // The runtime identifier can be associated with one or multiple bindings
287
293
  getAll(serviceIdentifier, options) {
288
- const getArgs = this._getAllArgs(serviceIdentifier, options);
294
+ const getArgs = this._getAllArgs(serviceIdentifier, options, false);
289
295
  return this._getButThrowIfAsync(getArgs);
290
296
  }
291
297
  async getAllAsync(serviceIdentifier, options) {
292
- const getArgs = this._getAllArgs(serviceIdentifier, options);
298
+ const getArgs = this._getAllArgs(serviceIdentifier, options, false);
293
299
  return this._getAll(getArgs);
294
300
  }
295
301
  getAllTagged(serviceIdentifier, key, value) {
296
- const getArgs = this._getNotAllArgs(serviceIdentifier, true, key, value);
302
+ const getArgs = this._getNotAllArgs(serviceIdentifier, true, false, key, value);
297
303
  return this._getButThrowIfAsync(getArgs);
298
304
  }
299
305
  async getAllTaggedAsync(serviceIdentifier, key, value) {
300
- const getArgs = this._getNotAllArgs(serviceIdentifier, true, key, value);
306
+ const getArgs = this._getNotAllArgs(serviceIdentifier, true, false, key, value);
301
307
  return this._getAll(getArgs);
302
308
  }
303
309
  getAllNamed(serviceIdentifier, named) {
@@ -317,6 +323,50 @@ class Container {
317
323
  }
318
324
  return resolved;
319
325
  }
326
+ tryGet(serviceIdentifier) {
327
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, true);
328
+ return this._getButThrowIfAsync(getArgs);
329
+ }
330
+ async tryGetAsync(serviceIdentifier) {
331
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, true);
332
+ return this._get(getArgs);
333
+ }
334
+ tryGetTagged(serviceIdentifier, key, value) {
335
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, true, key, value);
336
+ return this._getButThrowIfAsync(getArgs);
337
+ }
338
+ async tryGetTaggedAsync(serviceIdentifier, key, value) {
339
+ const getArgs = this._getNotAllArgs(serviceIdentifier, false, true, key, value);
340
+ return this._get(getArgs);
341
+ }
342
+ tryGetNamed(serviceIdentifier, named) {
343
+ return this.tryGetTagged(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
344
+ }
345
+ async tryGetNamedAsync(serviceIdentifier, named) {
346
+ return this.tryGetTaggedAsync(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
347
+ }
348
+ tryGetAll(serviceIdentifier, options) {
349
+ const getArgs = this._getAllArgs(serviceIdentifier, options, true);
350
+ return this._getButThrowIfAsync(getArgs);
351
+ }
352
+ async tryGetAllAsync(serviceIdentifier, options) {
353
+ const getArgs = this._getAllArgs(serviceIdentifier, options, true);
354
+ return this._getAll(getArgs);
355
+ }
356
+ tryGetAllTagged(serviceIdentifier, key, value) {
357
+ const getArgs = this._getNotAllArgs(serviceIdentifier, true, true, key, value);
358
+ return this._getButThrowIfAsync(getArgs);
359
+ }
360
+ async tryGetAllTaggedAsync(serviceIdentifier, key, value) {
361
+ const getArgs = this._getNotAllArgs(serviceIdentifier, true, true, key, value);
362
+ return this._getAll(getArgs);
363
+ }
364
+ tryGetAllNamed(serviceIdentifier, named) {
365
+ return this.tryGetAllTagged(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
366
+ }
367
+ async tryGetAllNamedAsync(serviceIdentifier, named) {
368
+ return this.tryGetAllTaggedAsync(serviceIdentifier, METADATA_KEY.NAMED_TAG, named);
369
+ }
320
370
  _preDestroy(constructor, instance) {
321
371
  if (constructor !== undefined &&
322
372
  Reflect.hasMetadata(METADATA_KEY.PRE_DESTROY, constructor)) {
@@ -459,31 +509,48 @@ class Container {
459
509
  }
460
510
  return result;
461
511
  }
462
- _getAllArgs(serviceIdentifier, options) {
512
+ _getAllArgs(serviceIdentifier, options, isOptional) {
463
513
  const getAllArgs = {
464
514
  avoidConstraints: !(options?.enforceBindingConstraints ?? false),
465
515
  isMultiInject: true,
516
+ isOptional,
466
517
  serviceIdentifier,
467
518
  };
468
519
  return getAllArgs;
469
520
  }
470
- _getNotAllArgs(serviceIdentifier, isMultiInject, key, value) {
521
+ _getNotAllArgs(serviceIdentifier, isMultiInject, isOptional, key, value) {
471
522
  const getNotAllArgs = {
472
523
  avoidConstraints: false,
473
524
  isMultiInject,
525
+ isOptional,
474
526
  key,
475
527
  serviceIdentifier,
476
528
  value,
477
529
  };
478
530
  return getNotAllArgs;
479
531
  }
532
+ _getPlanMetadataFromNextArgs(args) {
533
+ const planMetadata = {
534
+ isMultiInject: args.isMultiInject,
535
+ };
536
+ if (args.key !== undefined) {
537
+ planMetadata.customTag = {
538
+ key: args.key,
539
+ value: args.value,
540
+ };
541
+ }
542
+ if (args.isOptional === true) {
543
+ planMetadata.isOptional = true;
544
+ }
545
+ return planMetadata;
546
+ }
480
547
  // Planner creates a plan and Resolver resolves a plan
481
548
  // one of the jobs of the Container is to links the Planner
482
549
  // with the Resolver and that is what this function is about
483
550
  _planAndResolve() {
484
551
  return (args) => {
485
552
  // create a plan
486
- let context = (0, planner_1.plan)(this._metadataReader, this, args.isMultiInject, args.targetType, args.serviceIdentifier, args.key, args.value, args.avoidConstraints);
553
+ let context = (0, planner_1.plan)(this._metadataReader, this, args.targetType, args.serviceIdentifier, this._getPlanMetadataFromNextArgs(args), args.avoidConstraints);
487
554
  // apply context interceptor
488
555
  context = args.contextInterceptor(context);
489
556
  // resolve plan
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/container/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/container/container.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { FactoryType } from '../utils/factory_type';
3
3
  import { CommonNewable, CommonServiceIdentifier } from './interfaces_common_exports';
4
4
  declare namespace interfaces {
5
5
  export type DynamicValue<T> = (context: interfaces.Context) => T | Promise<T>;
6
- export type ContainerResolution<T> = T | Promise<T> | (T | Promise<T>)[];
6
+ export type ContainerResolution<T> = undefined | T | Promise<T> | (T | Promise<T>)[];
7
7
  type AsyncCallback<TCallback> = TCallback extends (...args: infer TArgs) => infer TResult ? (...args: TArgs) => Promise<TResult> : never;
8
8
  export type BindingScope = 'Singleton' | 'Transient' | 'Request';
9
9
  export type BindingType = 'ConstantValue' | 'Constructor' | 'DynamicValue' | 'Factory' | 'Function' | 'Instance' | 'Invalid' | 'Provider';
@@ -72,6 +72,7 @@ declare namespace interfaces {
72
72
  avoidConstraints: boolean;
73
73
  contextInterceptor: (contexts: Context) => Context;
74
74
  isMultiInject: boolean;
75
+ isOptional?: boolean;
75
76
  targetType: TargetType;
76
77
  serviceIdentifier: interfaces.ServiceIdentifier<T>;
77
78
  key?: string | number | symbol | undefined;
@@ -156,6 +157,18 @@ declare namespace interfaces {
156
157
  onActivation<T>(serviceIdentifier: ServiceIdentifier<T>, onActivation: BindingActivation<T>): void;
157
158
  onDeactivation<T>(serviceIdentifier: ServiceIdentifier<T>, onDeactivation: BindingDeactivation<T>): void;
158
159
  resolve<T>(constructorFunction: interfaces.Newable<T>): T;
160
+ tryGet<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T | undefined;
161
+ tryGetAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T | undefined>;
162
+ tryGetTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T | undefined;
163
+ tryGetTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T | undefined>;
164
+ tryGetNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T | undefined;
165
+ tryGetNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T | undefined>;
166
+ tryGetAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): T[];
167
+ tryGetAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): Promise<T[]>;
168
+ tryGetAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
169
+ tryGetAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
170
+ tryGetAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
171
+ tryGetAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
159
172
  load(...modules: ContainerModule[]): void;
160
173
  loadAsync(...modules: AsyncContainerModule[]): Promise<void>;
161
174
  unload(...modules: ContainerModuleBase[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/interfaces/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
1
  import { interfaces } from '../interfaces/interfaces';
2
- declare function getBindingDictionary(cntnr: interfaces.Container): interfaces.Lookup<interfaces.Binding<unknown>>;
3
- declare function plan(metadataReader: interfaces.MetadataReader, container: interfaces.Container, isMultiInject: boolean, targetType: interfaces.TargetType, serviceIdentifier: interfaces.ServiceIdentifier, key?: string | number | symbol, value?: unknown, avoidConstraints?: boolean): interfaces.Context;
4
- declare function createMockRequest(container: interfaces.Container, serviceIdentifier: interfaces.ServiceIdentifier, key: string | number | symbol, value: unknown): interfaces.Request;
5
- export { plan, createMockRequest, getBindingDictionary };
2
+ export declare function getBindingDictionary(cntnr: interfaces.Container): interfaces.Lookup<interfaces.Binding<unknown>>;
3
+ export interface PlanMetadata {
4
+ isMultiInject: boolean;
5
+ isOptional?: boolean;
6
+ customTag?: {
7
+ key: string | number | symbol;
8
+ value?: unknown;
9
+ };
10
+ }
11
+ export declare function plan(metadataReader: interfaces.MetadataReader, container: interfaces.Container, targetType: interfaces.TargetType, serviceIdentifier: interfaces.ServiceIdentifier, metadata: PlanMetadata, avoidConstraints?: boolean): interfaces.Context;
12
+ export declare function createMockRequest(container: interfaces.Container, serviceIdentifier: interfaces.ServiceIdentifier, metadata: PlanMetadata): interfaces.Request;
6
13
  //# sourceMappingURL=planner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../src/planning/planner.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAkBtD,iBAAS,oBAAoB,CAC3B,KAAK,EAAE,UAAU,CAAC,SAAS,GAC1B,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAMhD;AAoRD,iBAAS,IAAI,CACX,cAAc,EAAE,UAAU,CAAC,cAAc,EACzC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,aAAa,EAAE,OAAO,EACtB,UAAU,EAAE,UAAU,CAAC,UAAU,EACjC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAC/C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAC9B,KAAK,CAAC,EAAE,OAAO,EACf,gBAAgB,GAAE,OAAe,GAChC,UAAU,CAAC,OAAO,CA2BpB;AAED,iBAAS,iBAAiB,CACxB,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAC/C,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAC7B,KAAK,EAAE,OAAO,GACb,UAAU,CAAC,OAAO,CA0BpB;AAED,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../src/planning/planner.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAkBtD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,UAAU,CAAC,SAAS,GAC1B,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAMhD;AAmRD,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE;QACV,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;QAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;CACH;AAED,wBAAgB,IAAI,CAClB,cAAc,EAAE,UAAU,CAAC,cAAc,EACzC,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,UAAU,EAAE,UAAU,CAAC,UAAU,EACjC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAC/C,QAAQ,EAAE,YAAY,EACtB,gBAAgB,GAAE,OAAe,GAChC,UAAU,CAAC,OAAO,CAwBpB;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,UAAU,CAAC,SAAS,EAC/B,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAC/C,QAAQ,EAAE,YAAY,GACrB,UAAU,CAAC,OAAO,CAwBpB"}
@@ -33,9 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.getBindingDictionary = getBindingDictionary;
36
37
  exports.plan = plan;
37
38
  exports.createMockRequest = createMockRequest;
38
- exports.getBindingDictionary = getBindingDictionary;
39
39
  const core_1 = require("@inversifyjs/core");
40
40
  const binding_count_1 = require("../bindings/binding_count");
41
41
  const ERROR_MSGS = __importStar(require("../constants/error_msgs"));
@@ -51,13 +51,13 @@ const request_1 = require("./request");
51
51
  function getBindingDictionary(cntnr) {
52
52
  return cntnr._bindingDictionary;
53
53
  }
54
- function _createTarget(isMultiInject, targetType, serviceIdentifier, name, key, value) {
55
- const metadataList = _getTargetMetadata(isMultiInject, serviceIdentifier, key, value);
54
+ function _createTarget(targetType, serviceIdentifier, metadata) {
55
+ const metadataList = _getTargetMetadata(serviceIdentifier, metadata);
56
56
  const classElementMetadata = (0, core_1.getClassElementMetadataFromLegacyMetadata)(metadataList);
57
57
  if (classElementMetadata.kind === core_1.ClassElementMetadataKind.unmanaged) {
58
58
  throw new Error('Unexpected metadata when creating target');
59
59
  }
60
- const target = new core_1.LegacyTargetImpl(name, classElementMetadata, targetType);
60
+ const target = new core_1.LegacyTargetImpl('', classElementMetadata, targetType);
61
61
  return target;
62
62
  }
63
63
  function _getActiveBindings(metadataReader, avoidConstraints, context, parentRequest, target) {
@@ -88,15 +88,18 @@ function _getActiveBindings(metadataReader, avoidConstraints, context, parentReq
88
88
  _validateActiveBindingCount(target.serviceIdentifier, activeBindings, parentRequest, target, context.container);
89
89
  return activeBindings;
90
90
  }
91
- function _getTargetMetadata(isMultiInject, serviceIdentifier, key, value) {
92
- const metadataKey = isMultiInject
91
+ function _getTargetMetadata(serviceIdentifier, metadata) {
92
+ const metadataKey = metadata.isMultiInject
93
93
  ? METADATA_KEY.MULTI_INJECT_TAG
94
94
  : METADATA_KEY.INJECT_TAG;
95
95
  const metadataList = [
96
96
  new metadata_1.Metadata(metadataKey, serviceIdentifier),
97
97
  ];
98
- if (key !== undefined) {
99
- metadataList.push(new metadata_1.Metadata(key, value));
98
+ if (metadata.customTag !== undefined) {
99
+ metadataList.push(new metadata_1.Metadata(metadata.customTag.key, metadata.customTag.value));
100
+ }
101
+ if (metadata.isOptional === true) {
102
+ metadataList.push(new metadata_1.Metadata(METADATA_KEY.OPTIONAL_TAG, true));
100
103
  }
101
104
  return metadataList;
102
105
  }
@@ -186,9 +189,9 @@ function getBindings(container, serviceIdentifier) {
186
189
  }
187
190
  return bindings;
188
191
  }
189
- function plan(metadataReader, container, isMultiInject, targetType, serviceIdentifier, key, value, avoidConstraints = false) {
192
+ function plan(metadataReader, container, targetType, serviceIdentifier, metadata, avoidConstraints = false) {
190
193
  const context = new context_1.Context(container);
191
- const target = _createTarget(isMultiInject, targetType, serviceIdentifier, '', key, value);
194
+ const target = _createTarget(targetType, serviceIdentifier, metadata);
192
195
  try {
193
196
  _createSubRequests(metadataReader, avoidConstraints, serviceIdentifier, context, null, target);
194
197
  return context;
@@ -200,8 +203,8 @@ function plan(metadataReader, container, isMultiInject, targetType, serviceIdent
200
203
  throw error;
201
204
  }
202
205
  }
203
- function createMockRequest(container, serviceIdentifier, key, value) {
204
- const metadataList = _getTargetMetadata(false, serviceIdentifier, key, value);
206
+ function createMockRequest(container, serviceIdentifier, metadata) {
207
+ const metadataList = _getTargetMetadata(serviceIdentifier, metadata);
205
208
  const classElementMetadata = (0, core_1.getClassElementMetadataFromLegacyMetadata)(metadataList);
206
209
  if (classElementMetadata.kind === core_1.ClassElementMetadataKind.unmanaged) {
207
210
  throw new Error('Unexpected metadata when creating target');
@@ -1 +1 @@
1
- {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../../src/planning/planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../../src/planning/planner.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ type CommonServiceIdentifier<TInstance = unknown> = ServiceIdentifier<TInstance>
44
44
 
45
45
  declare namespace interfaces {
46
46
  export type DynamicValue<T> = (context: interfaces.Context) => T | Promise<T>;
47
- export type ContainerResolution<T> = T | Promise<T> | (T | Promise<T>)[];
47
+ export type ContainerResolution<T> = undefined | T | Promise<T> | (T | Promise<T>)[];
48
48
  type AsyncCallback<TCallback> = TCallback extends (...args: infer TArgs) => infer TResult ? (...args: TArgs) => Promise<TResult> : never;
49
49
  export type BindingScope = 'Singleton' | 'Transient' | 'Request';
50
50
  export type BindingType = 'ConstantValue' | 'Constructor' | 'DynamicValue' | 'Factory' | 'Function' | 'Instance' | 'Invalid' | 'Provider';
@@ -113,6 +113,7 @@ declare namespace interfaces {
113
113
  avoidConstraints: boolean;
114
114
  contextInterceptor: (contexts: Context) => Context;
115
115
  isMultiInject: boolean;
116
+ isOptional?: boolean;
116
117
  targetType: TargetType;
117
118
  serviceIdentifier: interfaces.ServiceIdentifier<T>;
118
119
  key?: string | number | symbol | undefined;
@@ -197,6 +198,18 @@ declare namespace interfaces {
197
198
  onActivation<T>(serviceIdentifier: ServiceIdentifier<T>, onActivation: BindingActivation<T>): void;
198
199
  onDeactivation<T>(serviceIdentifier: ServiceIdentifier<T>, onDeactivation: BindingDeactivation<T>): void;
199
200
  resolve<T>(constructorFunction: interfaces.Newable<T>): T;
201
+ tryGet<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T | undefined;
202
+ tryGetAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T | undefined>;
203
+ tryGetTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T | undefined;
204
+ tryGetTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T | undefined>;
205
+ tryGetNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T | undefined;
206
+ tryGetNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T | undefined>;
207
+ tryGetAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): T[];
208
+ tryGetAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): Promise<T[]>;
209
+ tryGetAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
210
+ tryGetAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
211
+ tryGetAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
212
+ tryGetAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
200
213
  load(...modules: ContainerModule[]): void;
201
214
  loadAsync(...modules: AsyncContainerModule[]): Promise<void>;
202
215
  unload(...modules: ContainerModuleBase[]): void;
@@ -360,6 +373,18 @@ declare class Container implements interfaces.Container {
360
373
  getAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
361
374
  getAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
362
375
  resolve<T>(constructorFunction: interfaces.Newable<T>): T;
376
+ tryGet<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): T | undefined;
377
+ tryGetAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>): Promise<T | undefined>;
378
+ tryGetTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T | undefined;
379
+ tryGetTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T | undefined>;
380
+ tryGetNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T | undefined;
381
+ tryGetNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T | undefined>;
382
+ tryGetAll<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): T[];
383
+ tryGetAllAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, options?: interfaces.GetAllOptions): Promise<T[]>;
384
+ tryGetAllTagged<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): T[];
385
+ tryGetAllTaggedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, key: string | number | symbol, value: unknown): Promise<T[]>;
386
+ tryGetAllNamed<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): T[];
387
+ tryGetAllNamedAsync<T>(serviceIdentifier: interfaces.ServiceIdentifier<T>, named: string | number | symbol): Promise<T[]>;
363
388
  private _preDestroy;
364
389
  private _removeModuleHandlers;
365
390
  private _removeModuleBindings;
@@ -375,6 +400,7 @@ declare class Container implements interfaces.Container {
375
400
  private _getButThrowIfAsync;
376
401
  private _getAllArgs;
377
402
  private _getNotAllArgs;
403
+ private _getPlanMetadataFromNextArgs;
378
404
  private _planAndResolve;
379
405
  private _deactivateIfSingleton;
380
406
  private _deactivateSingletons;
package/lib/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import"reflect-metadata";export{LazyServiceIdentifier}from"@inversifyjs/common";import{getTargets as n,getClassElementMetadataFromLegacyMetadata as t,ClassElementMetadataKind as e,LegacyTargetImpl as i}from"@inversifyjs/core";const r="named",o="name",s="unmanaged",a="optional",c="inject",d="multi_inject",u="inversify:tagged",h="inversify:tagged_props",l="inversify:paramtypes",g="design:paramtypes",y="post_construct",p="pre_destroy";const f=[c,d,o,s,r,a];var _=Object.freeze({__proto__:null,DESIGN_PARAM_TYPES:g,INJECT_TAG:c,MULTI_INJECT_TAG:d,NAMED_TAG:r,NAME_TAG:o,NON_CUSTOM_TAG_KEYS:f,OPTIONAL_TAG:a,PARAM_TYPES:l,POST_CONSTRUCT:y,PRE_DESTROY:p,TAGGED:u,TAGGED_PROP:h,UNMANAGED_TAG:s});const v={Request:"Request",Singleton:"Singleton",Transient:"Transient"},b={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},w={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let m=0;function A(){return m++}class S{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(n,t){this.id=A(),this.activated=!1,this.serviceIdentifier=n,this.scope=t,this.type=b.Invalid,this.constraint=n=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const n=new S(this.serviceIdentifier,this.scope);return n.activated=n.scope===v.Singleton&&this.activated,n.implementationType=this.implementationType,n.dynamicValue=this.dynamicValue,n.scope=this.scope,n.type=this.type,n.factory=this.factory,n.provider=this.provider,n.constraint=this.constraint,n.onActivation=this.onActivation,n.onDeactivation=this.onDeactivation,n.cache=this.cache,n}}const I="Metadata key was used more than once in a parameter:",T="NULL argument",D="Key Not Found",C="Ambiguous match found for serviceIdentifier:",N="No matching bindings found for serviceIdentifier:",R="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",x=(n,t)=>`onDeactivation() error in class ${n}: ${t}`;class E{getConstructorMetadata(n){return{compilerGeneratedMetadata:Reflect.getMetadata(g,n)??[],userGeneratedMetadata:Reflect.getMetadata(u,n)??{}}}getPropertiesMetadata(n){return Reflect.getMetadata(h,n)??{}}}var M;function q(n){return n instanceof RangeError||"Maximum call stack size exceeded"===n.message}!function(n){n[n.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",n[n.NoBindingsAvailable=0]="NoBindingsAvailable",n[n.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"}(M||(M={}));function P(n){return"function"==typeof n?n.name:"symbol"==typeof n?n.toString():n}function B(n,t,e){let i="";const r=e(n,t);return 0!==r.length&&(i="\nRegistered bindings:",r.forEach((n=>{let t="Object";null!==n.implementationType&&(t=j(n.implementationType)),i=`${i}\n ${t}`,n.constraint.metaData&&(i=`${i} - ${n.constraint.metaData}`)}))),i}function F(n,t){return null!==n.parentRequest&&(n.parentRequest.serviceIdentifier===t||F(n.parentRequest,t))}function k(n){n.childRequests.forEach((t=>{if(F(n,t.serviceIdentifier)){const n=function(n){const t=function n(t,e=[]){const i=P(t.serviceIdentifier);return e.push(i),null!==t.parentRequest?n(t.parentRequest,e):e}(n);return t.reverse().join(" --\x3e ")}(t);throw new Error(`Circular dependency found: ${n}`)}k(t)}))}function j(n){if(null!=n.name&&""!==n.name)return n.name;{const t=n.toString(),e=t.match(/^function\s*([^\s(]+)/);return null===e?`Anonymous function: ${t}`:e[1]}}function $(n){return`{"key":"${n.key.toString()}","value":"${n.value.toString()}"}`}class O{id;container;plan;currentRequest;constructor(n){this.id=A(),this.container=n}addPlan(n){this.plan=n}setCurrentRequest(n){this.currentRequest=n}}class V{key;value;constructor(n,t){this.key=n,this.value=t}toString(){return this.key===r?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class W{parentContext;rootRequest;constructor(n,t){this.parentContext=n,this.rootRequest=t}}function G(t,e){const i=function(n){const t=Object.getPrototypeOf(n.prototype),e=t?.constructor;return e}(e);if(void 0===i||i===Object)return 0;const r=n(t)(i),o=r.map((n=>n.metadata.filter((n=>n.key===s)))),a=[].concat.apply([],o).length,c=r.length-a;return c>0?c:G(t,i)}class K{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(n,t,e,i,r){this.id=A(),this.serviceIdentifier=n,this.parentContext=t,this.parentRequest=e,this.target=r,this.childRequests=[],this.bindings=Array.isArray(i)?i:[i],this.requestScope=null===e?new Map:null}addChildRequest(n,t,e){const i=new K(n,this.parentContext,this,t,e);return this.childRequests.push(i),i}}function H(n){return n._bindingDictionary}function U(n,t,e,i,r){let o=z(e.container,r.serviceIdentifier),s=[];return o.length===M.NoBindingsAvailable&&!0===e.container.options.autoBindInjectable&&"function"==typeof r.serviceIdentifier&&n.getConstructorMetadata(r.serviceIdentifier).compilerGeneratedMetadata&&(e.container.bind(r.serviceIdentifier).toSelf(),o=z(e.container,r.serviceIdentifier)),s=t?o:o.filter((n=>{const t=new K(n.serviceIdentifier,e,i,n,r);return n.constraint(t)})),function(n,t,e,i,r){switch(t.length){case M.NoBindingsAvailable:if(i.isOptional())return t;{const t=P(n);let o=N;throw o+=function(n,t){if(t.isTagged()||t.isNamed()){let e="";const i=t.getNamedTag(),r=t.getCustomTags();return null!==i&&(e+=$(i)+"\n"),null!==r&&r.forEach((n=>{e+=$(n)+"\n"})),` ${n}\n ${n} - ${e}`}return` ${n}`}(t,i),o+=B(r,t,z),null!==e&&(o+="\n"+`Trying to resolve bindings for "${P(e.serviceIdentifier)}"`),new Error(o)}case M.OnlyOneBindingAvailable:return t;case M.MultipleBindingsAvailable:default:if(i.isArray())return t;{const t=P(n);let e=`${C} ${t}`;throw e+=B(r,t,z),new Error(e)}}}(r.serviceIdentifier,s,i,r,e.container),s}function L(n,t,e,i){const r=[new V(n?d:c,t)];return void 0!==e&&r.push(new V(e,i)),r}function Y(t,e,i,r,o,s){let a,c;if(null===o){a=U(t,e,r,null,s),c=new K(i,r,null,a,s);const n=new W(r,c);r.addPlan(n)}else a=U(t,e,r,o,s),c=o.addChildRequest(s.serviceIdentifier,a,s);a.forEach((e=>{let i=null;if(s.isArray())i=c.addChildRequest(e.serviceIdentifier,e,s);else{if(null!==e.cache)return;i=c}if(e.type===b.Instance&&null!==e.implementationType){const o=function(t,e){return n(t)(e)}(t,e.implementationType);if(!0!==r.container.options.skipBaseClassChecks){const n=G(t,e.implementationType);if(o.length<n){const n=`The number of constructor arguments in the derived class ${j(e.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(n)}}o.forEach((n=>{Y(t,!1,n.serviceIdentifier,r,i,n)}))}}))}function z(n,t){let e=[];const i=H(n);return i.hasKey(t)?e=i.get(t):null!==n.parent&&(e=z(n.parent,t)),e}function J(n,r,o,s,a,c,d,u=!1){const h=new O(r),l=function(n,r,o,s,a,c){const d=L(n,o,a,c),u=t(d);if(u.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");return new i(s,u,r)}(o,s,a,"",c,d);try{return Y(n,u,a,h,null,l),h}catch(n){throw q(n)&&k(h.plan.rootRequest),n}}function Q(n){return("object"==typeof n&&null!==n||"function"==typeof n)&&"function"==typeof n.then}function X(n){return!!Q(n)||Array.isArray(n)&&n.some(Q)}const Z=(n,t,e)=>{n.has(t.id)||n.set(t.id,e)},nn=(n,t)=>{n.cache=t,n.activated=!0,Q(t)&&tn(n,t)},tn=async(n,t)=>{try{const e=await t;n.cache=e}catch(t){throw n.cache=null,n.activated=!1,t}};var en;!function(n){n.DynamicValue="toDynamicValue",n.Factory="toFactory",n.Provider="toProvider"}(en||(en={}));const rn=n=>t=>(...e)=>{e.forEach((e=>{n.bind(e).toService(t)}))};function on(n,t,e){let i;if(t.length>0){const r=function(n,t){return n.reduce(((n,e)=>{const i=t(e);return e.target.type===w.ConstructorArgument?n.constructorInjections.push(i):(n.propertyRequests.push(e),n.propertyInjections.push(i)),n.isAsync||(n.isAsync=X(i)),n}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}(t,e),o={...r,constr:n};i=r.isAsync?async function(n){const t=await an(n.constructorInjections),e=await an(n.propertyInjections);return sn({...n,constructorInjections:t,propertyInjections:e})}(o):sn(o)}else i=new n;return i}function sn(n){const t=new n.constr(...n.constructorInjections);return n.propertyRequests.forEach(((e,i)=>{const r=e.target.identifier,o=n.propertyInjections[i];e.target.isOptional()&&void 0===o||(t[r]=o)})),t}async function an(n){const t=[];for(const e of n)Array.isArray(e)?t.push(Promise.all(e)):t.push(e);return Promise.all(t)}function cn(n,t){const e=function(n,t){if(Reflect.hasMetadata(y,n)){const r=Reflect.getMetadata(y,n);try{return t[r.value]?.()}catch(t){if(t instanceof Error)throw new Error((e=n.name,i=t.message,`@postConstruct error in class ${e}: ${i}`))}}var e,i}(n,t);return Q(e)?e.then((()=>t)):t}function dn(n,t){n.scope!==v.Singleton&&function(n,t){const e=`Class cannot be instantiated in ${n.scope===v.Request?"request":"transient"} scope.`;if("function"==typeof n.onDeactivation)throw new Error(x(t.name,e));if(Reflect.hasMetadata(p,t))throw new Error(`@preDestroy error in class ${t.name}: ${e}`)}(n,t)}const un=n=>t=>{t.parentContext.setCurrentRequest(t);const e=t.bindings,i=t.childRequests,r=t.target&&t.target.isArray(),o=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(r&&o)return i.map((t=>un(n)(t)));{if(t.target.isOptional()&&0===e.length)return;const i=e[0];return yn(n,t,i)}},hn=(n,t)=>{const e=(n=>{switch(n.type){case b.Factory:return{factory:n.factory,factoryType:en.Factory};case b.Provider:return{factory:n.provider,factoryType:en.Provider};case b.DynamicValue:return{factory:n.dynamicValue,factoryType:en.DynamicValue};default:throw new Error(`Unexpected factory type ${n.type}`)}})(n);return((n,t)=>{try{return n()}catch(n){if(q(n))throw t();throw n}})((()=>e.factory.bind(n)(t)),(()=>{return new Error((n=e.factoryType,i=t.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${n}' bindings. Please investigate bindings with service identifier '${i}'.`));var n,i}))},ln=(n,t,e)=>{let i;const r=t.childRequests;switch((n=>{let t=null;switch(n.type){case b.ConstantValue:case b.Function:t=n.cache;break;case b.Constructor:case b.Instance:t=n.implementationType;break;case b.DynamicValue:t=n.dynamicValue;break;case b.Provider:t=n.provider;break;case b.Factory:t=n.factory}if(null===t){const t=P(n.serviceIdentifier);throw new Error(`Invalid binding type: ${t}`)}})(e),e.type){case b.ConstantValue:case b.Function:i=e.cache;break;case b.Constructor:i=e.implementationType;break;case b.Instance:i=function(n,t,e,i){dn(n,t);const r=on(t,e,i);return Q(r)?r.then((n=>cn(t,n))):cn(t,r)}(e,e.implementationType,r,un(n));break;default:i=hn(e,t.parentContext)}return i},gn=(n,t,e)=>{let i=((n,t)=>t.scope===v.Singleton&&t.activated?t.cache:t.scope===v.Request&&n.has(t.id)?n.get(t.id):null)(n,t);return null!==i||(i=e(),((n,t,e)=>{t.scope===v.Singleton&&nn(t,e),t.scope===v.Request&&Z(n,t,e)})(n,t,i)),i},yn=(n,t,e)=>gn(n,e,(()=>{let i=ln(n,t,e);return i=Q(i)?i.then((n=>pn(t,e,n))):pn(t,e,i),i}));function pn(n,t,e){let i=fn(n.parentContext,t,e);const r=wn(n.parentContext.container);let o,s=r.next();do{o=s.value;const t=n.parentContext,e=n.serviceIdentifier,a=bn(o,e);i=Q(i)?vn(a,t,i):_n(a,t,i),s=r.next()}while(!0!==s.done&&!H(o).hasKey(n.serviceIdentifier));return i}const fn=(n,t,e)=>{let i;return i="function"==typeof t.onActivation?t.onActivation(n,e):e,i},_n=(n,t,e)=>{let i=n.next();for(;!0!==i.done;){if(Q(e=i.value(t,e)))return vn(n,t,e);i=n.next()}return e},vn=async(n,t,e)=>{let i=await e,r=n.next();for(;!0!==r.done;)i=await r.value(t,i),r=n.next();return i},bn=(n,t)=>{const e=n._activations;return e.hasKey(t)?e.get(t).values():[].values()},wn=n=>{const t=[n];let e=n.parent;for(;null!==e;)t.push(e),e=e.parent;return{next:()=>{const n=t.pop();return void 0!==n?{done:!1,value:n}:{done:!0,value:void 0}}}};const mn=(n,t)=>{const e=n.parentRequest;return null!==e&&(!!t(e)||mn(e,t))},An=n=>t=>{const e=e=>null!==e&&null!==e.target&&e.target.matchesTag(n)(t);return e.metaData=new V(n,t),e},Sn=An(r),In=n=>t=>{let e=null;if(null!==t){if(e=t.bindings[0],"string"==typeof n)return e.serviceIdentifier===n;{const e=t.bindings[0].implementationType;return n===e}}return!1};class Tn{_binding;constructor(n){this._binding=n}when(n){return this._binding.constraint=n,new Dn(this._binding)}whenTargetNamed(n){return this._binding.constraint=Sn(n),new Dn(this._binding)}whenTargetIsDefault(){return this._binding.constraint=n=>{if(null===n)return!1;return null!==n.target&&!n.target.isNamed()&&!n.target.isTagged()},new Dn(this._binding)}whenTargetTagged(n,t){return this._binding.constraint=An(n)(t),new Dn(this._binding)}whenInjectedInto(n){return this._binding.constraint=t=>null!==t&&In(n)(t.parentRequest),new Dn(this._binding)}whenParentNamed(n){return this._binding.constraint=t=>null!==t&&Sn(n)(t.parentRequest),new Dn(this._binding)}whenParentTagged(n,t){return this._binding.constraint=e=>null!==e&&An(n)(t)(e.parentRequest),new Dn(this._binding)}whenAnyAncestorIs(n){return this._binding.constraint=t=>null!==t&&mn(t,In(n)),new Dn(this._binding)}whenNoAncestorIs(n){return this._binding.constraint=t=>null!==t&&!mn(t,In(n)),new Dn(this._binding)}whenAnyAncestorNamed(n){return this._binding.constraint=t=>null!==t&&mn(t,Sn(n)),new Dn(this._binding)}whenNoAncestorNamed(n){return this._binding.constraint=t=>null!==t&&!mn(t,Sn(n)),new Dn(this._binding)}whenAnyAncestorTagged(n,t){return this._binding.constraint=e=>null!==e&&mn(e,An(n)(t)),new Dn(this._binding)}whenNoAncestorTagged(n,t){return this._binding.constraint=e=>null!==e&&!mn(e,An(n)(t)),new Dn(this._binding)}whenAnyAncestorMatches(n){return this._binding.constraint=t=>null!==t&&mn(t,n),new Dn(this._binding)}whenNoAncestorMatches(n){return this._binding.constraint=t=>null!==t&&!mn(t,n),new Dn(this._binding)}}class Dn{_binding;constructor(n){this._binding=n}onActivation(n){return this._binding.onActivation=n,new Tn(this._binding)}onDeactivation(n){return this._binding.onDeactivation=n,new Tn(this._binding)}}class Cn{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(n){this._binding=n,this._bindingWhenSyntax=new Tn(this._binding),this._bindingOnSyntax=new Dn(this._binding)}when(n){return this._bindingWhenSyntax.when(n)}whenTargetNamed(n){return this._bindingWhenSyntax.whenTargetNamed(n)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(n,t){return this._bindingWhenSyntax.whenTargetTagged(n,t)}whenInjectedInto(n){return this._bindingWhenSyntax.whenInjectedInto(n)}whenParentNamed(n){return this._bindingWhenSyntax.whenParentNamed(n)}whenParentTagged(n,t){return this._bindingWhenSyntax.whenParentTagged(n,t)}whenAnyAncestorIs(n){return this._bindingWhenSyntax.whenAnyAncestorIs(n)}whenNoAncestorIs(n){return this._bindingWhenSyntax.whenNoAncestorIs(n)}whenAnyAncestorNamed(n){return this._bindingWhenSyntax.whenAnyAncestorNamed(n)}whenAnyAncestorTagged(n,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(n,t)}whenNoAncestorNamed(n){return this._bindingWhenSyntax.whenNoAncestorNamed(n)}whenNoAncestorTagged(n,t){return this._bindingWhenSyntax.whenNoAncestorTagged(n,t)}whenAnyAncestorMatches(n){return this._bindingWhenSyntax.whenAnyAncestorMatches(n)}whenNoAncestorMatches(n){return this._bindingWhenSyntax.whenNoAncestorMatches(n)}onActivation(n){return this._bindingOnSyntax.onActivation(n)}onDeactivation(n){return this._bindingOnSyntax.onDeactivation(n)}}class Nn{_binding;constructor(n){this._binding=n}inRequestScope(){return this._binding.scope=v.Request,new Cn(this._binding)}inSingletonScope(){return this._binding.scope=v.Singleton,new Cn(this._binding)}inTransientScope(){return this._binding.scope=v.Transient,new Cn(this._binding)}}class Rn{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(n){this._binding=n,this._bindingWhenSyntax=new Tn(this._binding),this._bindingOnSyntax=new Dn(this._binding),this._bindingInSyntax=new Nn(n)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(n){return this._bindingWhenSyntax.when(n)}whenTargetNamed(n){return this._bindingWhenSyntax.whenTargetNamed(n)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(n,t){return this._bindingWhenSyntax.whenTargetTagged(n,t)}whenInjectedInto(n){return this._bindingWhenSyntax.whenInjectedInto(n)}whenParentNamed(n){return this._bindingWhenSyntax.whenParentNamed(n)}whenParentTagged(n,t){return this._bindingWhenSyntax.whenParentTagged(n,t)}whenAnyAncestorIs(n){return this._bindingWhenSyntax.whenAnyAncestorIs(n)}whenNoAncestorIs(n){return this._bindingWhenSyntax.whenNoAncestorIs(n)}whenAnyAncestorNamed(n){return this._bindingWhenSyntax.whenAnyAncestorNamed(n)}whenAnyAncestorTagged(n,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(n,t)}whenNoAncestorNamed(n){return this._bindingWhenSyntax.whenNoAncestorNamed(n)}whenNoAncestorTagged(n,t){return this._bindingWhenSyntax.whenNoAncestorTagged(n,t)}whenAnyAncestorMatches(n){return this._bindingWhenSyntax.whenAnyAncestorMatches(n)}whenNoAncestorMatches(n){return this._bindingWhenSyntax.whenNoAncestorMatches(n)}onActivation(n){return this._bindingOnSyntax.onActivation(n)}onDeactivation(n){return this._bindingOnSyntax.onDeactivation(n)}}class xn{_binding;constructor(n){this._binding=n}to(n){return this._binding.type=b.Instance,this._binding.implementationType=n,new Rn(this._binding)}toSelf(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const n=this._binding.serviceIdentifier;return this.to(n)}toConstantValue(n){return this._binding.type=b.ConstantValue,this._binding.cache=n,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=v.Singleton,new Cn(this._binding)}toDynamicValue(n){return this._binding.type=b.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=n,this._binding.implementationType=null,new Rn(this._binding)}toConstructor(n){return this._binding.type=b.Constructor,this._binding.implementationType=n,this._binding.scope=v.Singleton,new Cn(this._binding)}toFactory(n){return this._binding.type=b.Factory,this._binding.factory=n,this._binding.scope=v.Singleton,new Cn(this._binding)}toFunction(n){if("function"!=typeof n)throw new Error("Value provided to function binding must be a function!");const t=this.toConstantValue(n);return this._binding.type=b.Function,this._binding.scope=v.Singleton,t}toAutoFactory(n){return this._binding.type=b.Factory,this._binding.factory=t=>()=>t.container.get(n),this._binding.scope=v.Singleton,new Cn(this._binding)}toAutoNamedFactory(n){return this._binding.type=b.Factory,this._binding.factory=t=>e=>t.container.getNamed(n,e),new Cn(this._binding)}toProvider(n){return this._binding.type=b.Provider,this._binding.provider=n,this._binding.scope=v.Singleton,new Cn(this._binding)}toService(n){this._binding.type=b.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(n){}}),this._binding.dynamicValue=t=>{try{return t.container.get(n)}catch(e){return t.container.getAsync(n)}},this._binding.implementationType=null}}class En{bindings;activations;deactivations;middleware;moduleActivationStore;static of(n,t,e,i,r){const o=new En;return o.bindings=n,o.middleware=t,o.deactivations=i,o.activations=e,o.moduleActivationStore=r,o}}class Mn{_map;constructor(){this._map=new Map}getMap(){return this._map}add(n,t){if(this._checkNonNulish(n),null==t)throw new Error(T);const e=this._map.get(n);void 0!==e?e.push(t):this._map.set(n,[t])}get(n){this._checkNonNulish(n);const t=this._map.get(n);if(void 0!==t)return t;throw new Error(D)}remove(n){if(this._checkNonNulish(n),!this._map.delete(n))throw new Error(D)}removeIntersection(n){this.traverse(((t,e)=>{const i=n.hasKey(t)?n.get(t):void 0;if(void 0!==i){const n=e.filter((n=>!i.some((t=>n===t))));this._setValue(t,n)}}))}removeByCondition(n){const t=[];return this._map.forEach(((e,i)=>{const r=[];for(const i of e){n(i)?t.push(i):r.push(i)}this._setValue(i,r)})),t}hasKey(n){return this._checkNonNulish(n),this._map.has(n)}clone(){const n=new Mn;return this._map.forEach(((t,e)=>{t.forEach((t=>{var i;n.add(e,"object"==typeof(i=t)&&null!==i&&"clone"in i&&"function"==typeof i.clone?t.clone():t)}))})),n}traverse(n){this._map.forEach(((t,e)=>{n(e,t)}))}_checkNonNulish(n){if(null==n)throw new Error(T)}_setValue(n,t){t.length>0?this._map.set(n,t):this._map.delete(n)}}class qn{_map=new Map;remove(n){const t=this._map.get(n);return void 0===t?this._getEmptyHandlersStore():(this._map.delete(n),t)}addDeactivation(n,t,e){this._getModuleActivationHandlers(n).onDeactivations.add(t,e)}addActivation(n,t,e){this._getModuleActivationHandlers(n).onActivations.add(t,e)}clone(){const n=new qn;return this._map.forEach(((t,e)=>{n._map.set(e,{onActivations:t.onActivations.clone(),onDeactivations:t.onDeactivations.clone()})})),n}_getModuleActivationHandlers(n){let t=this._map.get(n);return void 0===t&&(t=this._getEmptyHandlersStore(),this._map.set(n,t)),t}_getEmptyHandlersStore(){return{onActivations:new Mn,onDeactivations:new Mn}}}class Pn{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(n){const t=n||{};if("object"!=typeof t)throw new Error("Invalid Container constructor argument. Container options must be an object.");if(void 0===t.defaultScope)t.defaultScope=v.Transient;else if(t.defaultScope!==v.Singleton&&t.defaultScope!==v.Transient&&t.defaultScope!==v.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(void 0===t.autoBindInjectable)t.autoBindInjectable=!1;else if("boolean"!=typeof t.autoBindInjectable)throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(void 0===t.skipBaseClassChecks)t.skipBaseClassChecks=!1;else if("boolean"!=typeof t.skipBaseClassChecks)throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:t.autoBindInjectable,defaultScope:t.defaultScope,skipBaseClassChecks:t.skipBaseClassChecks},this.id=A(),this._bindingDictionary=new Mn,this._snapshots=[],this._middleware=null,this._activations=new Mn,this._deactivations=new Mn,this.parent=null,this._metadataReader=new E,this._moduleActivationStore=new qn}static merge(n,t,...e){const i=new Pn,r=[n,t,...e].map((n=>H(n))),o=H(i);return r.forEach((n=>{var t;t=o,n.traverse(((n,e)=>{e.forEach((n=>{t.add(n.serviceIdentifier,n.clone())}))}))})),i}load(...n){const t=this._getContainerModuleHelpersFactory();for(const e of n){const n=t(e.id);e.registry(n.bindFunction,n.unbindFunction,n.isboundFunction,n.rebindFunction,n.unbindAsyncFunction,n.onActivationFunction,n.onDeactivationFunction)}}async loadAsync(...n){const t=this._getContainerModuleHelpersFactory();for(const e of n){const n=t(e.id);await e.registry(n.bindFunction,n.unbindFunction,n.isboundFunction,n.rebindFunction,n.unbindAsyncFunction,n.onActivationFunction,n.onDeactivationFunction)}}unload(...n){n.forEach((n=>{const t=this._removeModuleBindings(n.id);this._deactivateSingletons(t),this._removeModuleHandlers(n.id)}))}async unloadAsync(...n){for(const t of n){const n=this._removeModuleBindings(t.id);await this._deactivateSingletonsAsync(n),this._removeModuleHandlers(t.id)}}bind(n){return this._bind(this._buildBinding(n))}rebind(n){return this.unbind(n),this.bind(n)}async rebindAsync(n){return await this.unbindAsync(n),this.bind(n)}unbind(n){if(this._bindingDictionary.hasKey(n)){const t=this._bindingDictionary.get(n);this._deactivateSingletons(t)}this._removeServiceFromDictionary(n)}async unbindAsync(n){if(this._bindingDictionary.hasKey(n)){const t=this._bindingDictionary.get(n);await this._deactivateSingletonsAsync(t)}this._removeServiceFromDictionary(n)}unbindAll(){this._bindingDictionary.traverse(((n,t)=>{this._deactivateSingletons(t)})),this._bindingDictionary=new Mn}async unbindAllAsync(){const n=[];this._bindingDictionary.traverse(((t,e)=>{n.push(this._deactivateSingletonsAsync(e))})),await Promise.all(n),this._bindingDictionary=new Mn}onActivation(n,t){this._activations.add(n,t)}onDeactivation(n,t){this._deactivations.add(n,t)}isBound(n){let t=this._bindingDictionary.hasKey(n);return!t&&this.parent&&(t=this.parent.isBound(n)),t}isCurrentBound(n){return this._bindingDictionary.hasKey(n)}isBoundNamed(n,t){return this.isBoundTagged(n,r,t)}isBoundTagged(n,r,o){let s=!1;if(this._bindingDictionary.hasKey(n)){const a=this._bindingDictionary.get(n),c=function(n,r,o,s){const a=L(!1,r,o,s),c=t(a);if(c.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");const d=new i("",c,"Variable"),u=new O(n);return new K(r,u,null,[],d)}(this,n,r,o);s=a.some((n=>n.constraint(c)))}return!s&&this.parent&&(s=this.parent.isBoundTagged(n,r,o)),s}snapshot(){this._snapshots.push(En.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const n=this._snapshots.pop();if(void 0===n)throw new Error("No snapshot available to restore.");this._bindingDictionary=n.bindings,this._activations=n.activations,this._deactivations=n.deactivations,this._middleware=n.middleware,this._moduleActivationStore=n.moduleActivationStore}createChild(n){const t=new Pn(n||this.options);return t.parent=this,t}applyMiddleware(...n){const t=this._middleware?this._middleware:this._planAndResolve();this._middleware=n.reduce(((n,t)=>t(n)),t)}applyCustomMetadataReader(n){this._metadataReader=n}get(n){const t=this._getNotAllArgs(n,!1);return this._getButThrowIfAsync(t)}async getAsync(n){const t=this._getNotAllArgs(n,!1);return this._get(t)}getTagged(n,t,e){const i=this._getNotAllArgs(n,!1,t,e);return this._getButThrowIfAsync(i)}async getTaggedAsync(n,t,e){const i=this._getNotAllArgs(n,!1,t,e);return this._get(i)}getNamed(n,t){return this.getTagged(n,r,t)}async getNamedAsync(n,t){return this.getTaggedAsync(n,r,t)}getAll(n,t){const e=this._getAllArgs(n,t);return this._getButThrowIfAsync(e)}async getAllAsync(n,t){const e=this._getAllArgs(n,t);return this._getAll(e)}getAllTagged(n,t,e){const i=this._getNotAllArgs(n,!0,t,e);return this._getButThrowIfAsync(i)}async getAllTaggedAsync(n,t,e){const i=this._getNotAllArgs(n,!0,t,e);return this._getAll(i)}getAllNamed(n,t){return this.getAllTagged(n,r,t)}async getAllNamedAsync(n,t){return this.getAllTaggedAsync(n,r,t)}resolve(n){const t=this.isBound(n);t||this.bind(n).toSelf();const e=this.get(n);return t||this.unbind(n),e}_preDestroy(n,t){if(void 0!==n&&Reflect.hasMetadata(p,n)){const e=Reflect.getMetadata(p,n);return t[e.value]?.()}}_removeModuleHandlers(n){const t=this._moduleActivationStore.remove(n);this._activations.removeIntersection(t.onActivations),this._deactivations.removeIntersection(t.onDeactivations)}_removeModuleBindings(n){return this._bindingDictionary.removeByCondition((t=>t.moduleId===n))}_deactivate(n,t){const e=null==t?void 0:Object.getPrototypeOf(t).constructor;try{if(this._deactivations.hasKey(n.serviceIdentifier)){const i=this._deactivateContainer(t,this._deactivations.get(n.serviceIdentifier).values());if(Q(i))return this._handleDeactivationError(i.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(n,t,e))),n.serviceIdentifier)}const i=this._propagateContainerDeactivationThenBindingAndPreDestroy(n,t,e);if(Q(i))return this._handleDeactivationError(i,n.serviceIdentifier)}catch(t){if(t instanceof Error)throw new Error(x(P(n.serviceIdentifier),t.message))}}async _handleDeactivationError(n,t){try{await n}catch(n){if(n instanceof Error)throw new Error(x(P(t),n.message))}}_deactivateContainer(n,t){let e=t.next();for(;"function"==typeof e.value;){const i=e.value(n);if(Q(i))return i.then((async()=>this._deactivateContainerAsync(n,t)));e=t.next()}}async _deactivateContainerAsync(n,t){let e=t.next();for(;"function"==typeof e.value;)await e.value(n),e=t.next()}_getContainerModuleHelpersFactory(){const n=n=>t=>{const e=this._buildBinding(t);return e.moduleId=n,this._bind(e)},t=()=>n=>{this.unbind(n)},e=()=>async n=>this.unbindAsync(n),i=()=>n=>this.isBound(n),r=t=>{const e=n(t);return n=>(this.unbind(n),e(n))},o=n=>(t,e)=>{this._moduleActivationStore.addActivation(n,t,e),this.onActivation(t,e)},s=n=>(t,e)=>{this._moduleActivationStore.addDeactivation(n,t,e),this.onDeactivation(t,e)};return a=>({bindFunction:n(a),isboundFunction:i(),onActivationFunction:o(a),onDeactivationFunction:s(a),rebindFunction:r(a),unbindAsyncFunction:e(),unbindFunction:t()})}_bind(n){return this._bindingDictionary.add(n.serviceIdentifier,n),new xn(n)}_buildBinding(n){const t=this.options.defaultScope||v.Transient;return new S(n,t)}async _getAll(n){return Promise.all(this._get(n))}_get(n){const t={...n,contextInterceptor:n=>n,targetType:w.Variable};if(this._middleware){const n=this._middleware(t);if(null==n)throw new Error("Invalid return type in middleware. Middleware must return!");return n}return this._planAndResolve()(t)}_getButThrowIfAsync(n){const t=this._get(n);if(X(t))throw new Error(`You are attempting to construct ${function(n){return"function"==typeof n?`[function/class ${n.name||"<anonymous>"}]`:"symbol"==typeof n?n.toString():`'${n}'`}(n.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return t}_getAllArgs(n,t){return{avoidConstraints:!t?.enforceBindingConstraints,isMultiInject:!0,serviceIdentifier:n}}_getNotAllArgs(n,t,e,i){return{avoidConstraints:!1,isMultiInject:t,key:e,serviceIdentifier:n,value:i}}_planAndResolve(){return n=>{let t=J(this._metadataReader,this,n.isMultiInject,n.targetType,n.serviceIdentifier,n.key,n.value,n.avoidConstraints);t=n.contextInterceptor(t);const e=function(n){return un(n.plan.rootRequest.requestScope)(n.plan.rootRequest)}(t);return e}}_deactivateIfSingleton(n){if(n.activated)return Q(n.cache)?n.cache.then((t=>this._deactivate(n,t))):this._deactivate(n,n.cache)}_deactivateSingletons(n){for(const t of n){if(Q(this._deactivateIfSingleton(t)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}}async _deactivateSingletonsAsync(n){await Promise.all(n.map((async n=>this._deactivateIfSingleton(n))))}_propagateContainerDeactivationThenBindingAndPreDestroy(n,t,e){return this.parent?this._deactivate.bind(this.parent)(n,t):this._bindingDeactivationAndPreDestroy(n,t,e)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(n,t,e){this.parent?await this._deactivate.bind(this.parent)(n,t):await this._bindingDeactivationAndPreDestroyAsync(n,t,e)}_removeServiceFromDictionary(n){try{this._bindingDictionary.remove(n)}catch(t){throw new Error(`Could not unbind serviceIdentifier: ${P(n)}`)}}_bindingDeactivationAndPreDestroy(n,t,e){if("function"==typeof n.onDeactivation){const i=n.onDeactivation(t);if(Q(i))return i.then((()=>this._preDestroy(e,t)))}return this._preDestroy(e,t)}async _bindingDeactivationAndPreDestroyAsync(n,t,e){"function"==typeof n.onDeactivation&&await n.onDeactivation(t),await this._preDestroy(e,t)}}class Bn{id;registry;constructor(n){this.id=A(),this.registry=n}}class Fn{id;registry;constructor(n){this.id=A(),this.registry=n}}function kn(n,t,e,i){!function(n){if(void 0!==n)throw new Error(R)}(t),$n(u,n,e.toString(),i)}function jn(n){let t=[];if(Array.isArray(n)){t=n;const e=function(n){const t=new Set;for(const e of n){if(t.has(e))return e;t.add(e)}}(t.map((n=>n.key)));if(void 0!==e)throw new Error(`${I} ${e.toString()}`)}else t=[n];return t}function $n(n,t,e,i){const r=jn(i);let o={};Reflect.hasOwnMetadata(n,t)&&(o=Reflect.getMetadata(n,t));let s=o[e];if(void 0===s)s=[];else for(const n of s)if(r.some((t=>t.key===n.key)))throw new Error(`${I} ${n.key.toString()}`);s.push(...r),o[e]=s,Reflect.defineMetadata(n,o,t)}function On(n){return(t,e,i)=>{"number"==typeof i?kn(t,e,i,n):function(n,t,e){if(void 0!==n.prototype)throw new Error(R);$n(h,n.constructor,t,e)}(t,e,n)}}function Vn(n,t){Reflect.decorate(n,t)}function Wn(n,t){return function(e,i){t(e,i,n)}}function Gn(n,t,e){"number"==typeof e?Vn([Wn(e,n)],t):"string"==typeof e?Reflect.decorate([n],t,e):Vn([n],t)}function Kn(){return function(n){if(Reflect.hasOwnMetadata(l,n))throw new Error("Cannot apply @injectable decorator multiple times.");const t=Reflect.getMetadata(g,n)||[];return Reflect.defineMetadata(l,t,n),n}}function Hn(n,t){return On(new V(n,t))}function Un(n){return On(new V(r,n))}function Ln(n){return t=>(e,i,r)=>{if(void 0===t){const n="function"==typeof e?e.name:e.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${n} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}On(new V(n,t))(e,i,r)}}const Yn=Ln(c);function zn(){return On(new V(a,!0))}function Jn(){return function(n,t,e){kn(n,t,e,new V(s,!0))}}const Qn=Ln(d);function Xn(n){return function(t,e,i){kn(t,e,i,new V(o,n))}}function Zn(n,t){return()=>(e,i)=>{const r=new V(n,i);if(Reflect.hasOwnMetadata(n,e.constructor))throw new Error(t);Reflect.defineMetadata(n,r,e.constructor)}}const nt=Zn(y,"Cannot apply @postConstruct decorator multiple times in the same class"),tt=Zn(p,"Cannot apply @preDestroy decorator multiple times in the same class"),et=_;export{Fn as AsyncContainerModule,v as BindingScopeEnum,b as BindingTypeEnum,Pn as Container,Bn as ContainerModule,et as METADATA_KEY,E as MetadataReader,w as TargetTypeEnum,On as createTaggedDecorator,Gn as decorate,P as getServiceIdentifierAsString,A as id,Yn as inject,Kn as injectable,rn as multiBindToService,Qn as multiInject,Un as named,Sn as namedConstraint,zn as optional,nt as postConstruct,tt as preDestroy,Hn as tagged,An as taggedConstraint,Xn as targetName,mn as traverseAncerstors,In as typeConstraint,Jn as unmanaged};
1
+ import"reflect-metadata";export{LazyServiceIdentifier}from"@inversifyjs/common";import{getTargets as t,getClassElementMetadataFromLegacyMetadata as n,ClassElementMetadataKind as e,LegacyTargetImpl as i}from"@inversifyjs/core";const r="named",s="name",o="unmanaged",a="optional",c="inject",d="multi_inject",u="inversify:tagged",h="inversify:tagged_props",l="inversify:paramtypes",g="design:paramtypes",y="post_construct",p="pre_destroy";const f=[c,d,s,o,r,a];var _=Object.freeze({__proto__:null,DESIGN_PARAM_TYPES:g,INJECT_TAG:c,MULTI_INJECT_TAG:d,NAMED_TAG:r,NAME_TAG:s,NON_CUSTOM_TAG_KEYS:f,OPTIONAL_TAG:a,PARAM_TYPES:l,POST_CONSTRUCT:y,PRE_DESTROY:p,TAGGED:u,TAGGED_PROP:h,UNMANAGED_TAG:o});const v={Request:"Request",Singleton:"Singleton",Transient:"Transient"},b={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},w={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let m=0;function A(){return m++}class S{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(t,n){this.id=A(),this.activated=!1,this.serviceIdentifier=t,this.scope=n,this.type=b.Invalid,this.constraint=t=>!0,this.implementationType=null,this.cache=null,this.factory=null,this.provider=null,this.onActivation=null,this.onDeactivation=null,this.dynamicValue=null}clone(){const t=new S(this.serviceIdentifier,this.scope);return t.activated=t.scope===v.Singleton&&this.activated,t.implementationType=this.implementationType,t.dynamicValue=this.dynamicValue,t.scope=this.scope,t.type=this.type,t.factory=this.factory,t.provider=this.provider,t.constraint=this.constraint,t.onActivation=this.onActivation,t.onDeactivation=this.onDeactivation,t.cache=this.cache,t}}const I="Metadata key was used more than once in a parameter:",T="NULL argument",D="Key Not Found",N="Ambiguous match found for serviceIdentifier:",C="No matching bindings found for serviceIdentifier:",x="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",R=(t,n)=>`onDeactivation() error in class ${t}: ${n}`;class E{getConstructorMetadata(t){return{compilerGeneratedMetadata:Reflect.getMetadata(g,t)??[],userGeneratedMetadata:Reflect.getMetadata(u,t)??{}}}getPropertiesMetadata(t){return Reflect.getMetadata(h,t)??{}}}var M;function B(t){return t instanceof RangeError||"Maximum call stack size exceeded"===t.message}!function(t){t[t.MultipleBindingsAvailable=2]="MultipleBindingsAvailable",t[t.NoBindingsAvailable=0]="NoBindingsAvailable",t[t.OnlyOneBindingAvailable=1]="OnlyOneBindingAvailable"}(M||(M={}));function P(t){return"function"==typeof t?t.name:"symbol"==typeof t?t.toString():t}function k(t,n,e){let i="";const r=e(t,n);return 0!==r.length&&(i="\nRegistered bindings:",r.forEach((t=>{let n="Object";null!==t.implementationType&&(n=j(t.implementationType)),i=`${i}\n ${n}`,t.constraint.metaData&&(i=`${i} - ${t.constraint.metaData}`)}))),i}function q(t,n){return null!==t.parentRequest&&(t.parentRequest.serviceIdentifier===n||q(t.parentRequest,n))}function F(t){t.childRequests.forEach((n=>{if(q(t,n.serviceIdentifier)){const t=function(t){const n=function t(n,e=[]){const i=P(n.serviceIdentifier);return e.push(i),null!==n.parentRequest?t(n.parentRequest,e):e}(t);return n.reverse().join(" --\x3e ")}(n);throw new Error(`Circular dependency found: ${t}`)}F(n)}))}function j(t){if(null!=t.name&&""!==t.name)return t.name;{const n=t.toString(),e=n.match(/^function\s*([^\s(]+)/);return null===e?`Anonymous function: ${n}`:e[1]}}function O(t){return`{"key":"${t.key.toString()}","value":"${t.value.toString()}"}`}class ${id;container;plan;currentRequest;constructor(t){this.id=A(),this.container=t}addPlan(t){this.plan=t}setCurrentRequest(t){this.currentRequest=t}}class V{key;value;constructor(t,n){this.key=t,this.value=n}toString(){return this.key===r?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class W{parentContext;rootRequest;constructor(t,n){this.parentContext=t,this.rootRequest=n}}function G(n,e){const i=function(t){const n=Object.getPrototypeOf(t.prototype),e=n?.constructor;return e}(e);if(void 0===i||i===Object)return 0;const r=t(n)(i),s=r.map((t=>t.metadata.filter((t=>t.key===o)))),a=[].concat.apply([],s).length,c=r.length-a;return c>0?c:G(n,i)}class K{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(t,n,e,i,r){this.id=A(),this.serviceIdentifier=t,this.parentContext=n,this.parentRequest=e,this.target=r,this.childRequests=[],this.bindings=Array.isArray(i)?i:[i],this.requestScope=null===e?new Map:null}addChildRequest(t,n,e){const i=new K(t,this.parentContext,this,n,e);return this.childRequests.push(i),i}}function H(t){return t._bindingDictionary}function U(t,n,e,i,r){let s=z(e.container,r.serviceIdentifier),o=[];return s.length===M.NoBindingsAvailable&&!0===e.container.options.autoBindInjectable&&"function"==typeof r.serviceIdentifier&&t.getConstructorMetadata(r.serviceIdentifier).compilerGeneratedMetadata&&(e.container.bind(r.serviceIdentifier).toSelf(),s=z(e.container,r.serviceIdentifier)),o=n?s:s.filter((t=>{const n=new K(t.serviceIdentifier,e,i,t,r);return t.constraint(n)})),function(t,n,e,i,r){switch(n.length){case M.NoBindingsAvailable:if(i.isOptional())return n;{const n=P(t);let s=C;throw s+=function(t,n){if(n.isTagged()||n.isNamed()){let e="";const i=n.getNamedTag(),r=n.getCustomTags();return null!==i&&(e+=O(i)+"\n"),null!==r&&r.forEach((t=>{e+=O(t)+"\n"})),` ${t}\n ${t} - ${e}`}return` ${t}`}(n,i),s+=k(r,n,z),null!==e&&(s+="\n"+`Trying to resolve bindings for "${P(e.serviceIdentifier)}"`),new Error(s)}case M.OnlyOneBindingAvailable:return n;case M.MultipleBindingsAvailable:default:if(i.isArray())return n;{const n=P(t);let e=`${N} ${n}`;throw e+=k(r,n,z),new Error(e)}}}(r.serviceIdentifier,o,i,r,e.container),o}function L(t,n){const e=n.isMultiInject?d:c,i=[new V(e,t)];return void 0!==n.customTag&&i.push(new V(n.customTag.key,n.customTag.value)),!0===n.isOptional&&i.push(new V(a,!0)),i}function Y(n,e,i,r,s,o){let a,c;if(null===s){a=U(n,e,r,null,o),c=new K(i,r,null,a,o);const t=new W(r,c);r.addPlan(t)}else a=U(n,e,r,s,o),c=s.addChildRequest(o.serviceIdentifier,a,o);a.forEach((e=>{let i=null;if(o.isArray())i=c.addChildRequest(e.serviceIdentifier,e,o);else{if(null!==e.cache)return;i=c}if(e.type===b.Instance&&null!==e.implementationType){const s=function(n,e){return t(n)(e)}(n,e.implementationType);if(!0!==r.container.options.skipBaseClassChecks){const t=G(n,e.implementationType);if(s.length<t){const t=`The number of constructor arguments in the derived class ${j(e.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(t)}}s.forEach((t=>{Y(n,!1,t.serviceIdentifier,r,i,t)}))}}))}function z(t,n){let e=[];const i=H(t);return i.hasKey(n)?e=i.get(n):null!==t.parent&&(e=z(t.parent,n)),e}function J(t,r,s,o,a,c=!1){const d=new $(r),u=function(t,r,s){const o=L(r,s),a=n(o);if(a.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");return new i("",a,t)}(s,o,a);try{return Y(t,c,o,d,null,u),d}catch(t){throw B(t)&&F(d.plan.rootRequest),t}}function Q(t){return("object"==typeof t&&null!==t||"function"==typeof t)&&"function"==typeof t.then}function X(t){return!!Q(t)||Array.isArray(t)&&t.some(Q)}const Z=(t,n,e)=>{t.has(n.id)||t.set(n.id,e)},tt=(t,n)=>{t.cache=n,t.activated=!0,Q(n)&&nt(t,n)},nt=async(t,n)=>{try{const e=await n;t.cache=e}catch(n){throw t.cache=null,t.activated=!1,n}};var et;!function(t){t.DynamicValue="toDynamicValue",t.Factory="toFactory",t.Provider="toProvider"}(et||(et={}));const it=t=>n=>(...e)=>{e.forEach((e=>{t.bind(e).toService(n)}))};function rt(t,n,e){let i;if(n.length>0){const r=function(t,n){return t.reduce(((t,e)=>{const i=n(e);return e.target.type===w.ConstructorArgument?t.constructorInjections.push(i):(t.propertyRequests.push(e),t.propertyInjections.push(i)),t.isAsync||(t.isAsync=X(i)),t}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}(n,e),s={...r,constr:t};i=r.isAsync?async function(t){const n=await ot(t.constructorInjections),e=await ot(t.propertyInjections);return st({...t,constructorInjections:n,propertyInjections:e})}(s):st(s)}else i=new t;return i}function st(t){const n=new t.constr(...t.constructorInjections);return t.propertyRequests.forEach(((e,i)=>{const r=e.target.identifier,s=t.propertyInjections[i];e.target.isOptional()&&void 0===s||(n[r]=s)})),n}async function ot(t){const n=[];for(const e of t)Array.isArray(e)?n.push(Promise.all(e)):n.push(e);return Promise.all(n)}function at(t,n){const e=function(t,n){if(Reflect.hasMetadata(y,t)){const r=Reflect.getMetadata(y,t);try{return n[r.value]?.()}catch(n){if(n instanceof Error)throw new Error((e=t.name,i=n.message,`@postConstruct error in class ${e}: ${i}`))}}var e,i}(t,n);return Q(e)?e.then((()=>n)):n}function ct(t,n){t.scope!==v.Singleton&&function(t,n){const e=`Class cannot be instantiated in ${t.scope===v.Request?"request":"transient"} scope.`;if("function"==typeof t.onDeactivation)throw new Error(R(n.name,e));if(Reflect.hasMetadata(p,n))throw new Error(`@preDestroy error in class ${n.name}: ${e}`)}(t,n)}const dt=t=>n=>{n.parentContext.setCurrentRequest(n);const e=n.bindings,i=n.childRequests,r=n.target&&n.target.isArray(),s=!(n.parentRequest&&n.parentRequest.target&&n.target&&n.parentRequest.target.matchesArray(n.target.serviceIdentifier));if(r&&s)return i.map((n=>dt(t)(n)));{if(n.target.isOptional()&&0===e.length)return;const i=e[0];return gt(t,n,i)}},ut=(t,n)=>{const e=(t=>{switch(t.type){case b.Factory:return{factory:t.factory,factoryType:et.Factory};case b.Provider:return{factory:t.provider,factoryType:et.Provider};case b.DynamicValue:return{factory:t.dynamicValue,factoryType:et.DynamicValue};default:throw new Error(`Unexpected factory type ${t.type}`)}})(t);return((t,n)=>{try{return t()}catch(t){if(B(t))throw n();throw t}})((()=>e.factory.bind(t)(n)),(()=>{return new Error((t=e.factoryType,i=n.currentRequest.serviceIdentifier.toString(),`It looks like there is a circular dependency in one of the '${t}' bindings. Please investigate bindings with service identifier '${i}'.`));var t,i}))},ht=(t,n,e)=>{let i;const r=n.childRequests;switch((t=>{let n=null;switch(t.type){case b.ConstantValue:case b.Function:n=t.cache;break;case b.Constructor:case b.Instance:n=t.implementationType;break;case b.DynamicValue:n=t.dynamicValue;break;case b.Provider:n=t.provider;break;case b.Factory:n=t.factory}if(null===n){const n=P(t.serviceIdentifier);throw new Error(`Invalid binding type: ${n}`)}})(e),e.type){case b.ConstantValue:case b.Function:i=e.cache;break;case b.Constructor:i=e.implementationType;break;case b.Instance:i=function(t,n,e,i){ct(t,n);const r=rt(n,e,i);return Q(r)?r.then((t=>at(n,t))):at(n,r)}(e,e.implementationType,r,dt(t));break;default:i=ut(e,n.parentContext)}return i},lt=(t,n,e)=>{let i=((t,n)=>n.scope===v.Singleton&&n.activated?n.cache:n.scope===v.Request&&t.has(n.id)?t.get(n.id):null)(t,n);return null!==i||(i=e(),((t,n,e)=>{n.scope===v.Singleton&&tt(n,e),n.scope===v.Request&&Z(t,n,e)})(t,n,i)),i},gt=(t,n,e)=>lt(t,e,(()=>{let i=ht(t,n,e);return i=Q(i)?i.then((t=>yt(n,e,t))):yt(n,e,i),i}));function yt(t,n,e){let i=pt(t.parentContext,n,e);const r=bt(t.parentContext.container);let s,o=r.next();do{s=o.value;const n=t.parentContext,e=t.serviceIdentifier,a=vt(s,e);i=Q(i)?_t(a,n,i):ft(a,n,i),o=r.next()}while(!0!==o.done&&!H(s).hasKey(t.serviceIdentifier));return i}const pt=(t,n,e)=>{let i;return i="function"==typeof n.onActivation?n.onActivation(t,e):e,i},ft=(t,n,e)=>{let i=t.next();for(;!0!==i.done;){if(Q(e=i.value(n,e)))return _t(t,n,e);i=t.next()}return e},_t=async(t,n,e)=>{let i=await e,r=t.next();for(;!0!==r.done;)i=await r.value(n,i),r=t.next();return i},vt=(t,n)=>{const e=t._activations;return e.hasKey(n)?e.get(n).values():[].values()},bt=t=>{const n=[t];let e=t.parent;for(;null!==e;)n.push(e),e=e.parent;return{next:()=>{const t=n.pop();return void 0!==t?{done:!1,value:t}:{done:!0,value:void 0}}}};const wt=(t,n)=>{const e=t.parentRequest;return null!==e&&(!!n(e)||wt(e,n))},mt=t=>n=>{const e=e=>null!==e&&null!==e.target&&e.target.matchesTag(t)(n);return e.metaData=new V(t,n),e},At=mt(r),St=t=>n=>{let e=null;if(null!==n){if(e=n.bindings[0],"string"==typeof t)return e.serviceIdentifier===t;{const e=n.bindings[0].implementationType;return t===e}}return!1};class It{_binding;constructor(t){this._binding=t}when(t){return this._binding.constraint=t,new Tt(this._binding)}whenTargetNamed(t){return this._binding.constraint=At(t),new Tt(this._binding)}whenTargetIsDefault(){return this._binding.constraint=t=>{if(null===t)return!1;return null!==t.target&&!t.target.isNamed()&&!t.target.isTagged()},new Tt(this._binding)}whenTargetTagged(t,n){return this._binding.constraint=mt(t)(n),new Tt(this._binding)}whenInjectedInto(t){return this._binding.constraint=n=>null!==n&&St(t)(n.parentRequest),new Tt(this._binding)}whenParentNamed(t){return this._binding.constraint=n=>null!==n&&At(t)(n.parentRequest),new Tt(this._binding)}whenParentTagged(t,n){return this._binding.constraint=e=>null!==e&&mt(t)(n)(e.parentRequest),new Tt(this._binding)}whenAnyAncestorIs(t){return this._binding.constraint=n=>null!==n&&wt(n,St(t)),new Tt(this._binding)}whenNoAncestorIs(t){return this._binding.constraint=n=>null!==n&&!wt(n,St(t)),new Tt(this._binding)}whenAnyAncestorNamed(t){return this._binding.constraint=n=>null!==n&&wt(n,At(t)),new Tt(this._binding)}whenNoAncestorNamed(t){return this._binding.constraint=n=>null!==n&&!wt(n,At(t)),new Tt(this._binding)}whenAnyAncestorTagged(t,n){return this._binding.constraint=e=>null!==e&&wt(e,mt(t)(n)),new Tt(this._binding)}whenNoAncestorTagged(t,n){return this._binding.constraint=e=>null!==e&&!wt(e,mt(t)(n)),new Tt(this._binding)}whenAnyAncestorMatches(t){return this._binding.constraint=n=>null!==n&&wt(n,t),new Tt(this._binding)}whenNoAncestorMatches(t){return this._binding.constraint=n=>null!==n&&!wt(n,t),new Tt(this._binding)}}class Tt{_binding;constructor(t){this._binding=t}onActivation(t){return this._binding.onActivation=t,new It(this._binding)}onDeactivation(t){return this._binding.onDeactivation=t,new It(this._binding)}}class Dt{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(t){this._binding=t,this._bindingWhenSyntax=new It(this._binding),this._bindingOnSyntax=new Tt(this._binding)}when(t){return this._bindingWhenSyntax.when(t)}whenTargetNamed(t){return this._bindingWhenSyntax.whenTargetNamed(t)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(t,n){return this._bindingWhenSyntax.whenTargetTagged(t,n)}whenInjectedInto(t){return this._bindingWhenSyntax.whenInjectedInto(t)}whenParentNamed(t){return this._bindingWhenSyntax.whenParentNamed(t)}whenParentTagged(t,n){return this._bindingWhenSyntax.whenParentTagged(t,n)}whenAnyAncestorIs(t){return this._bindingWhenSyntax.whenAnyAncestorIs(t)}whenNoAncestorIs(t){return this._bindingWhenSyntax.whenNoAncestorIs(t)}whenAnyAncestorNamed(t){return this._bindingWhenSyntax.whenAnyAncestorNamed(t)}whenAnyAncestorTagged(t,n){return this._bindingWhenSyntax.whenAnyAncestorTagged(t,n)}whenNoAncestorNamed(t){return this._bindingWhenSyntax.whenNoAncestorNamed(t)}whenNoAncestorTagged(t,n){return this._bindingWhenSyntax.whenNoAncestorTagged(t,n)}whenAnyAncestorMatches(t){return this._bindingWhenSyntax.whenAnyAncestorMatches(t)}whenNoAncestorMatches(t){return this._bindingWhenSyntax.whenNoAncestorMatches(t)}onActivation(t){return this._bindingOnSyntax.onActivation(t)}onDeactivation(t){return this._bindingOnSyntax.onDeactivation(t)}}class Nt{_binding;constructor(t){this._binding=t}inRequestScope(){return this._binding.scope=v.Request,new Dt(this._binding)}inSingletonScope(){return this._binding.scope=v.Singleton,new Dt(this._binding)}inTransientScope(){return this._binding.scope=v.Transient,new Dt(this._binding)}}class Ct{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(t){this._binding=t,this._bindingWhenSyntax=new It(this._binding),this._bindingOnSyntax=new Tt(this._binding),this._bindingInSyntax=new Nt(t)}inRequestScope(){return this._bindingInSyntax.inRequestScope()}inSingletonScope(){return this._bindingInSyntax.inSingletonScope()}inTransientScope(){return this._bindingInSyntax.inTransientScope()}when(t){return this._bindingWhenSyntax.when(t)}whenTargetNamed(t){return this._bindingWhenSyntax.whenTargetNamed(t)}whenTargetIsDefault(){return this._bindingWhenSyntax.whenTargetIsDefault()}whenTargetTagged(t,n){return this._bindingWhenSyntax.whenTargetTagged(t,n)}whenInjectedInto(t){return this._bindingWhenSyntax.whenInjectedInto(t)}whenParentNamed(t){return this._bindingWhenSyntax.whenParentNamed(t)}whenParentTagged(t,n){return this._bindingWhenSyntax.whenParentTagged(t,n)}whenAnyAncestorIs(t){return this._bindingWhenSyntax.whenAnyAncestorIs(t)}whenNoAncestorIs(t){return this._bindingWhenSyntax.whenNoAncestorIs(t)}whenAnyAncestorNamed(t){return this._bindingWhenSyntax.whenAnyAncestorNamed(t)}whenAnyAncestorTagged(t,n){return this._bindingWhenSyntax.whenAnyAncestorTagged(t,n)}whenNoAncestorNamed(t){return this._bindingWhenSyntax.whenNoAncestorNamed(t)}whenNoAncestorTagged(t,n){return this._bindingWhenSyntax.whenNoAncestorTagged(t,n)}whenAnyAncestorMatches(t){return this._bindingWhenSyntax.whenAnyAncestorMatches(t)}whenNoAncestorMatches(t){return this._bindingWhenSyntax.whenNoAncestorMatches(t)}onActivation(t){return this._bindingOnSyntax.onActivation(t)}onDeactivation(t){return this._bindingOnSyntax.onDeactivation(t)}}class xt{_binding;constructor(t){this._binding=t}to(t){return this._binding.type=b.Instance,this._binding.implementationType=t,new Ct(this._binding)}toSelf(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error("The toSelf function can only be applied when a constructor is used as service identifier");const t=this._binding.serviceIdentifier;return this.to(t)}toConstantValue(t){return this._binding.type=b.ConstantValue,this._binding.cache=t,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=v.Singleton,new Dt(this._binding)}toDynamicValue(t){return this._binding.type=b.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=t,this._binding.implementationType=null,new Ct(this._binding)}toConstructor(t){return this._binding.type=b.Constructor,this._binding.implementationType=t,this._binding.scope=v.Singleton,new Dt(this._binding)}toFactory(t){return this._binding.type=b.Factory,this._binding.factory=t,this._binding.scope=v.Singleton,new Dt(this._binding)}toFunction(t){if("function"!=typeof t)throw new Error("Value provided to function binding must be a function!");const n=this.toConstantValue(t);return this._binding.type=b.Function,this._binding.scope=v.Singleton,n}toAutoFactory(t){return this._binding.type=b.Factory,this._binding.factory=n=>()=>n.container.get(t),this._binding.scope=v.Singleton,new Dt(this._binding)}toAutoNamedFactory(t){return this._binding.type=b.Factory,this._binding.factory=n=>e=>n.container.getNamed(t,e),new Dt(this._binding)}toProvider(t){return this._binding.type=b.Provider,this._binding.provider=t,this._binding.scope=v.Singleton,new Dt(this._binding)}toService(t){this._binding.type=b.DynamicValue,Object.defineProperty(this._binding,"cache",{configurable:!0,enumerable:!0,get:()=>null,set(t){}}),this._binding.dynamicValue=n=>{try{return n.container.get(t)}catch(e){return n.container.getAsync(t)}},this._binding.implementationType=null}}class Rt{bindings;activations;deactivations;middleware;moduleActivationStore;static of(t,n,e,i,r){const s=new Rt;return s.bindings=t,s.middleware=n,s.deactivations=i,s.activations=e,s.moduleActivationStore=r,s}}class Et{_map;constructor(){this._map=new Map}getMap(){return this._map}add(t,n){if(this._checkNonNulish(t),null==n)throw new Error(T);const e=this._map.get(t);void 0!==e?e.push(n):this._map.set(t,[n])}get(t){this._checkNonNulish(t);const n=this._map.get(t);if(void 0!==n)return n;throw new Error(D)}remove(t){if(this._checkNonNulish(t),!this._map.delete(t))throw new Error(D)}removeIntersection(t){this.traverse(((n,e)=>{const i=t.hasKey(n)?t.get(n):void 0;if(void 0!==i){const t=e.filter((t=>!i.some((n=>t===n))));this._setValue(n,t)}}))}removeByCondition(t){const n=[];return this._map.forEach(((e,i)=>{const r=[];for(const i of e){t(i)?n.push(i):r.push(i)}this._setValue(i,r)})),n}hasKey(t){return this._checkNonNulish(t),this._map.has(t)}clone(){const t=new Et;return this._map.forEach(((n,e)=>{n.forEach((n=>{var i;t.add(e,"object"==typeof(i=n)&&null!==i&&"clone"in i&&"function"==typeof i.clone?n.clone():n)}))})),t}traverse(t){this._map.forEach(((n,e)=>{t(e,n)}))}_checkNonNulish(t){if(null==t)throw new Error(T)}_setValue(t,n){n.length>0?this._map.set(t,n):this._map.delete(t)}}class Mt{_map=new Map;remove(t){const n=this._map.get(t);return void 0===n?this._getEmptyHandlersStore():(this._map.delete(t),n)}addDeactivation(t,n,e){this._getModuleActivationHandlers(t).onDeactivations.add(n,e)}addActivation(t,n,e){this._getModuleActivationHandlers(t).onActivations.add(n,e)}clone(){const t=new Mt;return this._map.forEach(((n,e)=>{t._map.set(e,{onActivations:n.onActivations.clone(),onDeactivations:n.onDeactivations.clone()})})),t}_getModuleActivationHandlers(t){let n=this._map.get(t);return void 0===n&&(n=this._getEmptyHandlersStore(),this._map.set(t,n)),n}_getEmptyHandlersStore(){return{onActivations:new Et,onDeactivations:new Et}}}class Bt{id;parent;options;_middleware;_bindingDictionary;_activations;_deactivations;_snapshots;_metadataReader;_moduleActivationStore;constructor(t){const n=t||{};if("object"!=typeof n)throw new Error("Invalid Container constructor argument. Container options must be an object.");if(void 0===n.defaultScope)n.defaultScope=v.Transient;else if(n.defaultScope!==v.Singleton&&n.defaultScope!==v.Transient&&n.defaultScope!==v.Request)throw new Error('Invalid Container option. Default scope must be a string ("singleton" or "transient").');if(void 0===n.autoBindInjectable)n.autoBindInjectable=!1;else if("boolean"!=typeof n.autoBindInjectable)throw new Error("Invalid Container option. Auto bind injectable must be a boolean");if(void 0===n.skipBaseClassChecks)n.skipBaseClassChecks=!1;else if("boolean"!=typeof n.skipBaseClassChecks)throw new Error("Invalid Container option. Skip base check must be a boolean");this.options={autoBindInjectable:n.autoBindInjectable,defaultScope:n.defaultScope,skipBaseClassChecks:n.skipBaseClassChecks},this.id=A(),this._bindingDictionary=new Et,this._snapshots=[],this._middleware=null,this._activations=new Et,this._deactivations=new Et,this.parent=null,this._metadataReader=new E,this._moduleActivationStore=new Mt}static merge(t,n,...e){const i=new Bt,r=[t,n,...e].map((t=>H(t))),s=H(i);return r.forEach((t=>{var n;n=s,t.traverse(((t,e)=>{e.forEach((t=>{n.add(t.serviceIdentifier,t.clone())}))}))})),i}load(...t){const n=this._getContainerModuleHelpersFactory();for(const e of t){const t=n(e.id);e.registry(t.bindFunction,t.unbindFunction,t.isboundFunction,t.rebindFunction,t.unbindAsyncFunction,t.onActivationFunction,t.onDeactivationFunction)}}async loadAsync(...t){const n=this._getContainerModuleHelpersFactory();for(const e of t){const t=n(e.id);await e.registry(t.bindFunction,t.unbindFunction,t.isboundFunction,t.rebindFunction,t.unbindAsyncFunction,t.onActivationFunction,t.onDeactivationFunction)}}unload(...t){t.forEach((t=>{const n=this._removeModuleBindings(t.id);this._deactivateSingletons(n),this._removeModuleHandlers(t.id)}))}async unloadAsync(...t){for(const n of t){const t=this._removeModuleBindings(n.id);await this._deactivateSingletonsAsync(t),this._removeModuleHandlers(n.id)}}bind(t){return this._bind(this._buildBinding(t))}rebind(t){return this.unbind(t),this.bind(t)}async rebindAsync(t){return await this.unbindAsync(t),this.bind(t)}unbind(t){if(this._bindingDictionary.hasKey(t)){const n=this._bindingDictionary.get(t);this._deactivateSingletons(n)}this._removeServiceFromDictionary(t)}async unbindAsync(t){if(this._bindingDictionary.hasKey(t)){const n=this._bindingDictionary.get(t);await this._deactivateSingletonsAsync(n)}this._removeServiceFromDictionary(t)}unbindAll(){this._bindingDictionary.traverse(((t,n)=>{this._deactivateSingletons(n)})),this._bindingDictionary=new Et}async unbindAllAsync(){const t=[];this._bindingDictionary.traverse(((n,e)=>{t.push(this._deactivateSingletonsAsync(e))})),await Promise.all(t),this._bindingDictionary=new Et}onActivation(t,n){this._activations.add(t,n)}onDeactivation(t,n){this._deactivations.add(t,n)}isBound(t){let n=this._bindingDictionary.hasKey(t);return!n&&this.parent&&(n=this.parent.isBound(t)),n}isCurrentBound(t){return this._bindingDictionary.hasKey(t)}isBoundNamed(t,n){return this.isBoundTagged(t,r,n)}isBoundTagged(t,r,s){let o=!1;if(this._bindingDictionary.hasKey(t)){const a=this._bindingDictionary.get(t),c=function(t,r,s){const o=L(r,s),a=n(o);if(a.kind===e.unmanaged)throw new Error("Unexpected metadata when creating target");const c=new i("",a,"Variable"),d=new $(t);return new K(r,d,null,[],c)}(this,t,{customTag:{key:r,value:s},isMultiInject:!1});o=a.some((t=>t.constraint(c)))}return!o&&this.parent&&(o=this.parent.isBoundTagged(t,r,s)),o}snapshot(){this._snapshots.push(Rt.of(this._bindingDictionary.clone(),this._middleware,this._activations.clone(),this._deactivations.clone(),this._moduleActivationStore.clone()))}restore(){const t=this._snapshots.pop();if(void 0===t)throw new Error("No snapshot available to restore.");this._bindingDictionary=t.bindings,this._activations=t.activations,this._deactivations=t.deactivations,this._middleware=t.middleware,this._moduleActivationStore=t.moduleActivationStore}createChild(t){const n=new Bt(t||this.options);return n.parent=this,n}applyMiddleware(...t){const n=this._middleware?this._middleware:this._planAndResolve();this._middleware=t.reduce(((t,n)=>n(t)),n)}applyCustomMetadataReader(t){this._metadataReader=t}get(t){const n=this._getNotAllArgs(t,!1,!1);return this._getButThrowIfAsync(n)}async getAsync(t){const n=this._getNotAllArgs(t,!1,!1);return this._get(n)}getTagged(t,n,e){const i=this._getNotAllArgs(t,!1,!1,n,e);return this._getButThrowIfAsync(i)}async getTaggedAsync(t,n,e){const i=this._getNotAllArgs(t,!1,!1,n,e);return this._get(i)}getNamed(t,n){return this.getTagged(t,r,n)}async getNamedAsync(t,n){return this.getTaggedAsync(t,r,n)}getAll(t,n){const e=this._getAllArgs(t,n,!1);return this._getButThrowIfAsync(e)}async getAllAsync(t,n){const e=this._getAllArgs(t,n,!1);return this._getAll(e)}getAllTagged(t,n,e){const i=this._getNotAllArgs(t,!0,!1,n,e);return this._getButThrowIfAsync(i)}async getAllTaggedAsync(t,n,e){const i=this._getNotAllArgs(t,!0,!1,n,e);return this._getAll(i)}getAllNamed(t,n){return this.getAllTagged(t,r,n)}async getAllNamedAsync(t,n){return this.getAllTaggedAsync(t,r,n)}resolve(t){const n=this.isBound(t);n||this.bind(t).toSelf();const e=this.get(t);return n||this.unbind(t),e}tryGet(t){const n=this._getNotAllArgs(t,!1,!0);return this._getButThrowIfAsync(n)}async tryGetAsync(t){const n=this._getNotAllArgs(t,!1,!0);return this._get(n)}tryGetTagged(t,n,e){const i=this._getNotAllArgs(t,!1,!0,n,e);return this._getButThrowIfAsync(i)}async tryGetTaggedAsync(t,n,e){const i=this._getNotAllArgs(t,!1,!0,n,e);return this._get(i)}tryGetNamed(t,n){return this.tryGetTagged(t,r,n)}async tryGetNamedAsync(t,n){return this.tryGetTaggedAsync(t,r,n)}tryGetAll(t,n){const e=this._getAllArgs(t,n,!0);return this._getButThrowIfAsync(e)}async tryGetAllAsync(t,n){const e=this._getAllArgs(t,n,!0);return this._getAll(e)}tryGetAllTagged(t,n,e){const i=this._getNotAllArgs(t,!0,!0,n,e);return this._getButThrowIfAsync(i)}async tryGetAllTaggedAsync(t,n,e){const i=this._getNotAllArgs(t,!0,!0,n,e);return this._getAll(i)}tryGetAllNamed(t,n){return this.tryGetAllTagged(t,r,n)}async tryGetAllNamedAsync(t,n){return this.tryGetAllTaggedAsync(t,r,n)}_preDestroy(t,n){if(void 0!==t&&Reflect.hasMetadata(p,t)){const e=Reflect.getMetadata(p,t);return n[e.value]?.()}}_removeModuleHandlers(t){const n=this._moduleActivationStore.remove(t);this._activations.removeIntersection(n.onActivations),this._deactivations.removeIntersection(n.onDeactivations)}_removeModuleBindings(t){return this._bindingDictionary.removeByCondition((n=>n.moduleId===t))}_deactivate(t,n){const e=null==n?void 0:Object.getPrototypeOf(n).constructor;try{if(this._deactivations.hasKey(t.serviceIdentifier)){const i=this._deactivateContainer(n,this._deactivations.get(t.serviceIdentifier).values());if(Q(i))return this._handleDeactivationError(i.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(t,n,e))),t.serviceIdentifier)}const i=this._propagateContainerDeactivationThenBindingAndPreDestroy(t,n,e);if(Q(i))return this._handleDeactivationError(i,t.serviceIdentifier)}catch(n){if(n instanceof Error)throw new Error(R(P(t.serviceIdentifier),n.message))}}async _handleDeactivationError(t,n){try{await t}catch(t){if(t instanceof Error)throw new Error(R(P(n),t.message))}}_deactivateContainer(t,n){let e=n.next();for(;"function"==typeof e.value;){const i=e.value(t);if(Q(i))return i.then((async()=>this._deactivateContainerAsync(t,n)));e=n.next()}}async _deactivateContainerAsync(t,n){let e=n.next();for(;"function"==typeof e.value;)await e.value(t),e=n.next()}_getContainerModuleHelpersFactory(){const t=t=>n=>{const e=this._buildBinding(n);return e.moduleId=t,this._bind(e)},n=()=>t=>{this.unbind(t)},e=()=>async t=>this.unbindAsync(t),i=()=>t=>this.isBound(t),r=n=>{const e=t(n);return t=>(this.unbind(t),e(t))},s=t=>(n,e)=>{this._moduleActivationStore.addActivation(t,n,e),this.onActivation(n,e)},o=t=>(n,e)=>{this._moduleActivationStore.addDeactivation(t,n,e),this.onDeactivation(n,e)};return a=>({bindFunction:t(a),isboundFunction:i(),onActivationFunction:s(a),onDeactivationFunction:o(a),rebindFunction:r(a),unbindAsyncFunction:e(),unbindFunction:n()})}_bind(t){return this._bindingDictionary.add(t.serviceIdentifier,t),new xt(t)}_buildBinding(t){const n=this.options.defaultScope||v.Transient;return new S(t,n)}async _getAll(t){return Promise.all(this._get(t))}_get(t){const n={...t,contextInterceptor:t=>t,targetType:w.Variable};if(this._middleware){const t=this._middleware(n);if(null==t)throw new Error("Invalid return type in middleware. Middleware must return!");return t}return this._planAndResolve()(n)}_getButThrowIfAsync(t){const n=this._get(t);if(X(n))throw new Error(`You are attempting to construct ${function(t){return"function"==typeof t?`[function/class ${t.name||"<anonymous>"}]`:"symbol"==typeof t?t.toString():`'${t}'`}(t.serviceIdentifier)} in a synchronous way but it has asynchronous dependencies.`);return n}_getAllArgs(t,n,e){return{avoidConstraints:!n?.enforceBindingConstraints,isMultiInject:!0,isOptional:e,serviceIdentifier:t}}_getNotAllArgs(t,n,e,i,r){return{avoidConstraints:!1,isMultiInject:n,isOptional:e,key:i,serviceIdentifier:t,value:r}}_getPlanMetadataFromNextArgs(t){const n={isMultiInject:t.isMultiInject};return void 0!==t.key&&(n.customTag={key:t.key,value:t.value}),!0===t.isOptional&&(n.isOptional=!0),n}_planAndResolve(){return t=>{let n=J(this._metadataReader,this,t.targetType,t.serviceIdentifier,this._getPlanMetadataFromNextArgs(t),t.avoidConstraints);n=t.contextInterceptor(n);const e=function(t){return dt(t.plan.rootRequest.requestScope)(t.plan.rootRequest)}(n);return e}}_deactivateIfSingleton(t){if(t.activated)return Q(t.cache)?t.cache.then((n=>this._deactivate(t,n))):this._deactivate(t,t.cache)}_deactivateSingletons(t){for(const n of t){if(Q(this._deactivateIfSingleton(n)))throw new Error("Attempting to unbind dependency with asynchronous destruction (@preDestroy or onDeactivation)")}}async _deactivateSingletonsAsync(t){await Promise.all(t.map((async t=>this._deactivateIfSingleton(t))))}_propagateContainerDeactivationThenBindingAndPreDestroy(t,n,e){return this.parent?this._deactivate.bind(this.parent)(t,n):this._bindingDeactivationAndPreDestroy(t,n,e)}async _propagateContainerDeactivationThenBindingAndPreDestroyAsync(t,n,e){this.parent?await this._deactivate.bind(this.parent)(t,n):await this._bindingDeactivationAndPreDestroyAsync(t,n,e)}_removeServiceFromDictionary(t){try{this._bindingDictionary.remove(t)}catch(n){throw new Error(`Could not unbind serviceIdentifier: ${P(t)}`)}}_bindingDeactivationAndPreDestroy(t,n,e){if("function"==typeof t.onDeactivation){const i=t.onDeactivation(n);if(Q(i))return i.then((()=>this._preDestroy(e,n)))}return this._preDestroy(e,n)}async _bindingDeactivationAndPreDestroyAsync(t,n,e){"function"==typeof t.onDeactivation&&await t.onDeactivation(n),await this._preDestroy(e,n)}}class Pt{id;registry;constructor(t){this.id=A(),this.registry=t}}class kt{id;registry;constructor(t){this.id=A(),this.registry=t}}function qt(t,n,e,i){!function(t){if(void 0!==t)throw new Error(x)}(n),jt(u,t,e.toString(),i)}function Ft(t){let n=[];if(Array.isArray(t)){n=t;const e=function(t){const n=new Set;for(const e of t){if(n.has(e))return e;n.add(e)}}(n.map((t=>t.key)));if(void 0!==e)throw new Error(`${I} ${e.toString()}`)}else n=[t];return n}function jt(t,n,e,i){const r=Ft(i);let s={};Reflect.hasOwnMetadata(t,n)&&(s=Reflect.getMetadata(t,n));let o=s[e];if(void 0===o)o=[];else for(const t of o)if(r.some((n=>n.key===t.key)))throw new Error(`${I} ${t.key.toString()}`);o.push(...r),s[e]=o,Reflect.defineMetadata(t,s,n)}function Ot(t){return(n,e,i)=>{"number"==typeof i?qt(n,e,i,t):function(t,n,e){if(void 0!==t.prototype)throw new Error(x);jt(h,t.constructor,n,e)}(n,e,t)}}function $t(t,n){Reflect.decorate(t,n)}function Vt(t,n){return function(e,i){n(e,i,t)}}function Wt(t,n,e){"number"==typeof e?$t([Vt(e,t)],n):"string"==typeof e?Reflect.decorate([t],n,e):$t([t],n)}function Gt(){return function(t){if(Reflect.hasOwnMetadata(l,t))throw new Error("Cannot apply @injectable decorator multiple times.");const n=Reflect.getMetadata(g,t)||[];return Reflect.defineMetadata(l,n,t),t}}function Kt(t,n){return Ot(new V(t,n))}function Ht(t){return Ot(new V(r,t))}function Ut(t){return n=>(e,i,r)=>{if(void 0===n){const t="function"==typeof e?e.name:e.constructor.name;throw new Error(`@inject called with undefined this could mean that the class ${t} has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation.`)}Ot(new V(t,n))(e,i,r)}}const Lt=Ut(c);function Yt(){return Ot(new V(a,!0))}function zt(){return function(t,n,e){qt(t,n,e,new V(o,!0))}}const Jt=Ut(d);function Qt(t){return function(n,e,i){qt(n,e,i,new V(s,t))}}function Xt(t,n){return()=>(e,i)=>{const r=new V(t,i);if(Reflect.hasOwnMetadata(t,e.constructor))throw new Error(n);Reflect.defineMetadata(t,r,e.constructor)}}const Zt=Xt(y,"Cannot apply @postConstruct decorator multiple times in the same class"),tn=Xt(p,"Cannot apply @preDestroy decorator multiple times in the same class"),nn=_;export{kt as AsyncContainerModule,v as BindingScopeEnum,b as BindingTypeEnum,Bt as Container,Pt as ContainerModule,nn as METADATA_KEY,E as MetadataReader,w as TargetTypeEnum,Ot as createTaggedDecorator,Wt as decorate,P as getServiceIdentifierAsString,A as id,Lt as inject,Gt as injectable,it as multiBindToService,Jt as multiInject,Ht as named,At as namedConstraint,Yt as optional,Zt as postConstruct,tn as preDestroy,Kt as tagged,mt as taggedConstraint,Qt as targetName,wt as traverseAncerstors,St as typeConstraint,zt as unmanaged};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/constants/metadata_keys.ts","../../src/constants/literal_types.ts","../../src/utils/id.ts","../../src/bindings/binding.ts","../../src/constants/error_msgs.ts","../../src/planning/metadata_reader.ts","../../src/bindings/binding_count.ts","../../src/utils/exceptions.ts","../../src/utils/serialization.ts","../../src/planning/context.ts","../../src/planning/metadata.ts","../../src/planning/plan.ts","../../src/planning/reflection_utils.ts","../../src/utils/get_base_type.ts","../../src/planning/request.ts","../../src/planning/planner.ts","../../src/utils/async.ts","../../src/scope/scope.ts","../../src/utils/factory_type.ts","../../src/utils/binding_utils.ts","../../src/resolution/instantiation.ts","../../src/resolution/resolver.ts","../../src/syntax/constraint_helpers.ts","../../src/syntax/binding_when_syntax.ts","../../src/syntax/binding_on_syntax.ts","../../src/syntax/binding_when_on_syntax.ts","../../src/syntax/binding_in_syntax.ts","../../src/syntax/binding_in_when_on_syntax.ts","../../src/syntax/binding_to_syntax.ts","../../src/container/container_snapshot.ts","../../src/container/lookup.ts","../../src/utils/clonable.ts","../../src/container/module_activation_store.ts","../../src/container/container.ts","../../src/container/container_module.ts","../../src/annotation/decorator_utils.ts","../../src/utils/js.ts","../../src/annotation/injectable.ts","../../src/annotation/tagged.ts","../../src/annotation/named.ts","../../src/annotation/inject_base.ts","../../src/annotation/inject.ts","../../src/annotation/optional.ts","../../src/annotation/unmanaged.ts","../../src/annotation/multi_inject.ts","../../src/annotation/target_name.ts","../../src/annotation/property_event_decorator.ts","../../src/annotation/post_construct.ts","../../src/annotation/pre_destroy.ts","../../src/index.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],"names":["NAMED_TAG","NAME_TAG","UNMANAGED_TAG","OPTIONAL_TAG","INJECT_TAG","MULTI_INJECT_TAG","TAGGED","TAGGED_PROP","PARAM_TYPES","DESIGN_PARAM_TYPES","POST_CONSTRUCT","PRE_DESTROY","NON_CUSTOM_TAG_KEYS","BindingScopeEnum","Request","Singleton","Transient","BindingTypeEnum","ConstantValue","Constructor","DynamicValue","Factory","Function","Instance","Invalid","Provider","TargetTypeEnum","ClassProperty","ConstructorArgument","Variable","idCounter","id","Binding","moduleId","activated","serviceIdentifier","implementationType","cache","dynamicValue","scope","type","factory","provider","constraint","onActivation","onDeactivation","constructor","this","_request","clone","DUPLICATED_METADATA","NULL_ARGUMENT","KEY_NOT_FOUND","AMBIGUOUS_MATCH","NOT_REGISTERED","INVALID_DECORATOR_OPERATION","ON_DEACTIVATION_ERROR","clazz","errorMessage","MetadataReader","getConstructorMetadata","constructorFunc","compilerGeneratedMetadata","Reflect","getMetadata","METADATA_KEY.DESIGN_PARAM_TYPES","userGeneratedMetadata","METADATA_KEY.TAGGED","getPropertiesMetadata","METADATA_KEY.TAGGED_PROP","BindingCount","isStackOverflowException","error","RangeError","message","getServiceIdentifierAsString","name","toString","listRegisteredBindingsForServiceIdentifier","container","getBindings","registeredBindingsList","registeredBindings","length","forEach","binding","getFunctionName","metaData","alreadyDependencyChain","request","parentRequest","circularDependencyToException","childRequests","childRequest","services","stringArr","_createStringArr","req","result","push","reverse","join","dependencyChainToString","Error","func","match","stringifyMetadata","metadata","key","value","Context","plan","currentRequest","addPlan","setCurrentRequest","Metadata","METADATA_KEY.NAMED_TAG","String","Plan","parentContext","rootRequest","getBaseClassDependencyCount","metadataReader","baseConstructor","prototype","Object","getPrototypeOf","baseType","getBaseType","undefined","targets","getTargets","map","t","filter","m","METADATA_KEY.UNMANAGED_TAG","unmanagedCount","concat","apply","dependencyCount","bindings","target","requestScope","Array","isArray","Map","addChildRequest","child","getBindingDictionary","cntnr","_bindingDictionary","_getActiveBindings","avoidConstraints","context","activeBindings","NoBindingsAvailable","options","autoBindInjectable","bind","toSelf","isOptional","serviceIdentifierString","msg","ERROR_MSGS.NOT_REGISTERED","isTagged","isNamed","namedTag","getNamedTag","otherTags","getCustomTags","tag","listMetadataForTarget","OnlyOneBindingAvailable","MultipleBindingsAvailable","ERROR_MSGS.AMBIGUOUS_MATCH","_validateActiveBindingCount","_getTargetMetadata","isMultiInject","metadataList","METADATA_KEY.MULTI_INJECT_TAG","METADATA_KEY.INJECT_TAG","_createSubRequests","thePlan","subChildRequest","dependencies","getDependencies","skipBaseClassChecks","baseClassDependencyCount","dependency","bindingDictionary","hasKey","get","parent","targetType","classElementMetadata","getClassElementMetadataFromLegacyMetadata","kind","ClassElementMetadataKind","unmanaged","TargetImpl","_createTarget","isPromise","object","then","isPromiseOrContainsPromise","some","_saveToRequestScope","has","set","_saveToSingletonScope","_saveAsyncResultToSingletonScope","async","asyncResult","ex","FactoryType","multiBindToService","service","types","toService","_createInstance","constr","resolveRequest","resolved","reduce","resolvedRequests","injection","constructorInjections","propertyRequests","propertyInjections","isAsync","_resolveRequests","createInstanceWithInjectionsArg","args","possiblyWaitInjections","createInstanceWithInjections","createInstanceWithInjectionsAsync","instance","r","index","property","identifier","possiblePromiseinjections","injections","Promise","all","_getInstanceAfterPostConstruct","postConstructResult","hasMetadata","METADATA_KEY.POST_CONSTRUCT","data","e","_postConstruct","_validateInstanceResolution","scopeErrorMessage","METADATA_KEY.PRE_DESTROY","_throwIfHandlingDeactivation","_resolveRequest","targetIsAnArray","targetParentIsNotAnArray","matchesArray","_resolveBinding","_resolveFactoryFromBinding","factoryDetails","factoryType","getFactoryDetails","fn","errorCallback","tryAndThrowErrorIfStackOverflow","_getResolvedFromBinding","boundValue","serviceIdentifierAsString","ensureFullyBound","resolvedResult","resolveInstance","_resolveInScope","resolveFromBinding","tryGetFromScope","saveToScope","_onActivation","_bindingActivation","containersIterator","_getContainersIterator","containersIteratorResult","next","activationsIterator","_getContainerActivationsForService","_activateContainerAsync","_activateContainer","done","previousResult","activation","resultPromise","activations","_activations","values","containersStack","nextContainer","pop","traverseAncerstors","taggedConstraint","matchesTag","namedConstraint","typeConstraint","BindingWhenSyntax","_binding","when","BindingOnSyntax","whenTargetNamed","whenTargetIsDefault","whenTargetTagged","whenInjectedInto","whenParentNamed","whenParentTagged","whenAnyAncestorIs","ancestor","whenNoAncestorIs","whenAnyAncestorNamed","whenNoAncestorNamed","whenAnyAncestorTagged","whenNoAncestorTagged","whenAnyAncestorMatches","whenNoAncestorMatches","handler","BindingWhenOnSyntax","_bindingWhenSyntax","_bindingOnSyntax","BindingInSyntax","inRequestScope","inSingletonScope","inTransientScope","BindingInWhenOnSyntax","_bindingInSyntax","BindingToSyntax","to","self","toConstantValue","toDynamicValue","toConstructor","toFactory","toFunction","bindingWhenOnSyntax","toAutoFactory","toAutoNamedFactory","named","getNamed","toProvider","defineProperty","configurable","enumerable","_value","_error","getAsync","ContainerSnapshot","deactivations","middleware","moduleActivationStore","of","snapshot","Lookup","_map","getMap","add","_checkNonNulish","ERROR_MSGS.NULL_ARGUMENT","entry","ERROR_MSGS.KEY_NOT_FOUND","remove","delete","removeIntersection","lookup","traverse","lookupActivations","filteredValues","lookupValue","moduleActivation","_setValue","removeByCondition","condition","removals","entries","updatedEntries","copy","b","obj","ModuleActivationStore","handlers","_getEmptyHandlersStore","addDeactivation","_getModuleActivationHandlers","onDeactivations","addActivation","onActivations","handlersStore","moduleActivationHandlers","Container","_middleware","_deactivations","_snapshots","_metadataReader","_moduleActivationStore","containerOptions","defaultScope","merge","container1","container2","containers","targetContainers","targetContainer","targetBindingDictionary","destination","_key","load","modules","getHelpers","_getContainerModuleHelpersFactory","currentModule","containerModuleHelpers","registry","bindFunction","unbindFunction","isboundFunction","rebindFunction","unbindAsyncFunction","onActivationFunction","onDeactivationFunction","loadAsync","unload","module","_removeModuleBindings","_deactivateSingletons","_removeModuleHandlers","unloadAsync","_deactivateSingletonsAsync","_bind","_buildBinding","rebind","unbind","rebindAsync","unbindAsync","_removeServiceFromDictionary","unbindAll","unbindAllAsync","promises","isBound","bound","isCurrentBound","isBoundNamed","isBoundTagged","createMockRequest","restore","createChild","applyMiddleware","middlewares","initial","_planAndResolve","prev","curr","applyCustomMetadataReader","getArgs","_getNotAllArgs","_getButThrowIfAsync","_get","getTagged","getTaggedAsync","getNamedAsync","getAll","_getAllArgs","getAllAsync","_getAll","getAllTagged","getAllTaggedAsync","getAllNamed","getAllNamedAsync","resolve","constructorFunction","_preDestroy","moduleActivationsHandlers","_deactivate","_deactivateContainer","_handleDeactivationError","_propagateContainerDeactivationThenBindingAndPreDestroyAsync","propagateDeactivationResult","_propagateContainerDeactivationThenBindingAndPreDestroy","ERROR_MSGS.ON_DEACTIVATION_ERROR","deactivationsIterator","deactivation","_deactivateContainerAsync","getBindFunction","getUnbindFunction","getUnbindAsyncFunction","getIsboundFunction","getRebindFunction","getOnActivationFunction","getOnDeactivationFunction","mId","planAndResolveArgs","contextInterceptor","middlewareResult","keyToString","enforceBindingConstraints","resolveRequestFunction","_deactivateIfSingleton","_bindingDeactivationAndPreDestroy","_bindingDeactivationAndPreDestroyAsync","_e","ContainerModule","AsyncContainerModule","tagParameter","annotationTarget","parameterName","parameterIndex","ERROR_MSGS.INVALID_DECORATOR_OPERATION","_throwIfMethodParameter","_tagParameterOrProperty","_ensureNoMetadataKeyDuplicates","metadatas","duplicate","array","seenValues","Set","getFirstArrayDuplicate","md","ERROR_MSGS.DUPLICATED_METADATA","metadataKey","paramsOrPropertiesMetadata","hasOwnMetadata","paramOrPropertyMetadata","defineMetadata","createTaggedDecorator","targetKey","indexOrPropertyDescriptor","propertyName","tagProperty","_decorate","decorators","decorate","_param","paramIndex","decorator","parameterIndexOrProperty","injectable","METADATA_KEY.PARAM_TYPES","tagged","metadataValue","injectBase","className","inject","optional","METADATA_KEY.OPTIONAL_TAG","multiInject","targetName","METADATA_KEY.NAME_TAG","propertyEventDecorator","eventKey","propertyKey","postConstruct","preDestroy","METADATA_KEY","keys"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/constants/metadata_keys.ts","../../src/constants/literal_types.ts","../../src/utils/id.ts","../../src/bindings/binding.ts","../../src/constants/error_msgs.ts","../../src/planning/metadata_reader.ts","../../src/bindings/binding_count.ts","../../src/utils/exceptions.ts","../../src/utils/serialization.ts","../../src/planning/context.ts","../../src/planning/metadata.ts","../../src/planning/plan.ts","../../src/planning/reflection_utils.ts","../../src/utils/get_base_type.ts","../../src/planning/request.ts","../../src/planning/planner.ts","../../src/utils/async.ts","../../src/scope/scope.ts","../../src/utils/factory_type.ts","../../src/utils/binding_utils.ts","../../src/resolution/instantiation.ts","../../src/resolution/resolver.ts","../../src/syntax/constraint_helpers.ts","../../src/syntax/binding_when_syntax.ts","../../src/syntax/binding_on_syntax.ts","../../src/syntax/binding_when_on_syntax.ts","../../src/syntax/binding_in_syntax.ts","../../src/syntax/binding_in_when_on_syntax.ts","../../src/syntax/binding_to_syntax.ts","../../src/container/container_snapshot.ts","../../src/container/lookup.ts","../../src/utils/clonable.ts","../../src/container/module_activation_store.ts","../../src/container/container.ts","../../src/container/container_module.ts","../../src/annotation/decorator_utils.ts","../../src/utils/js.ts","../../src/annotation/injectable.ts","../../src/annotation/tagged.ts","../../src/annotation/named.ts","../../src/annotation/inject_base.ts","../../src/annotation/inject.ts","../../src/annotation/optional.ts","../../src/annotation/unmanaged.ts","../../src/annotation/multi_inject.ts","../../src/annotation/target_name.ts","../../src/annotation/property_event_decorator.ts","../../src/annotation/post_construct.ts","../../src/annotation/pre_destroy.ts","../../src/index.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],"names":["NAMED_TAG","NAME_TAG","UNMANAGED_TAG","OPTIONAL_TAG","INJECT_TAG","MULTI_INJECT_TAG","TAGGED","TAGGED_PROP","PARAM_TYPES","DESIGN_PARAM_TYPES","POST_CONSTRUCT","PRE_DESTROY","NON_CUSTOM_TAG_KEYS","BindingScopeEnum","Request","Singleton","Transient","BindingTypeEnum","ConstantValue","Constructor","DynamicValue","Factory","Function","Instance","Invalid","Provider","TargetTypeEnum","ClassProperty","ConstructorArgument","Variable","idCounter","id","Binding","moduleId","activated","serviceIdentifier","implementationType","cache","dynamicValue","scope","type","factory","provider","constraint","onActivation","onDeactivation","constructor","this","_request","clone","DUPLICATED_METADATA","NULL_ARGUMENT","KEY_NOT_FOUND","AMBIGUOUS_MATCH","NOT_REGISTERED","INVALID_DECORATOR_OPERATION","ON_DEACTIVATION_ERROR","clazz","errorMessage","MetadataReader","getConstructorMetadata","constructorFunc","compilerGeneratedMetadata","Reflect","getMetadata","METADATA_KEY.DESIGN_PARAM_TYPES","userGeneratedMetadata","METADATA_KEY.TAGGED","getPropertiesMetadata","METADATA_KEY.TAGGED_PROP","BindingCount","isStackOverflowException","error","RangeError","message","getServiceIdentifierAsString","name","toString","listRegisteredBindingsForServiceIdentifier","container","getBindings","registeredBindingsList","registeredBindings","length","forEach","binding","getFunctionName","metaData","alreadyDependencyChain","request","parentRequest","circularDependencyToException","childRequests","childRequest","services","stringArr","_createStringArr","req","result","push","reverse","join","dependencyChainToString","Error","func","match","stringifyMetadata","metadata","key","value","Context","plan","currentRequest","addPlan","setCurrentRequest","Metadata","METADATA_KEY.NAMED_TAG","String","Plan","parentContext","rootRequest","getBaseClassDependencyCount","metadataReader","baseConstructor","prototype","Object","getPrototypeOf","baseType","getBaseType","undefined","targets","getTargets","map","t","filter","m","METADATA_KEY.UNMANAGED_TAG","unmanagedCount","concat","apply","dependencyCount","bindings","target","requestScope","Array","isArray","Map","addChildRequest","child","getBindingDictionary","cntnr","_bindingDictionary","_getActiveBindings","avoidConstraints","context","activeBindings","NoBindingsAvailable","options","autoBindInjectable","bind","toSelf","isOptional","serviceIdentifierString","msg","ERROR_MSGS.NOT_REGISTERED","isTagged","isNamed","namedTag","getNamedTag","otherTags","getCustomTags","tag","listMetadataForTarget","OnlyOneBindingAvailable","MultipleBindingsAvailable","ERROR_MSGS.AMBIGUOUS_MATCH","_validateActiveBindingCount","_getTargetMetadata","metadataKey","isMultiInject","METADATA_KEY.MULTI_INJECT_TAG","METADATA_KEY.INJECT_TAG","metadataList","customTag","METADATA_KEY.OPTIONAL_TAG","_createSubRequests","thePlan","subChildRequest","dependencies","getDependencies","skipBaseClassChecks","baseClassDependencyCount","dependency","bindingDictionary","hasKey","get","parent","targetType","classElementMetadata","getClassElementMetadataFromLegacyMetadata","kind","ClassElementMetadataKind","unmanaged","TargetImpl","_createTarget","isPromise","object","then","isPromiseOrContainsPromise","some","_saveToRequestScope","has","set","_saveToSingletonScope","_saveAsyncResultToSingletonScope","async","asyncResult","ex","FactoryType","multiBindToService","service","types","toService","_createInstance","constr","resolveRequest","resolved","reduce","resolvedRequests","injection","constructorInjections","propertyRequests","propertyInjections","isAsync","_resolveRequests","createInstanceWithInjectionsArg","args","possiblyWaitInjections","createInstanceWithInjections","createInstanceWithInjectionsAsync","instance","r","index","property","identifier","possiblePromiseinjections","injections","Promise","all","_getInstanceAfterPostConstruct","postConstructResult","hasMetadata","METADATA_KEY.POST_CONSTRUCT","data","e","_postConstruct","_validateInstanceResolution","scopeErrorMessage","METADATA_KEY.PRE_DESTROY","_throwIfHandlingDeactivation","_resolveRequest","targetIsAnArray","targetParentIsNotAnArray","matchesArray","_resolveBinding","_resolveFactoryFromBinding","factoryDetails","factoryType","getFactoryDetails","fn","errorCallback","tryAndThrowErrorIfStackOverflow","_getResolvedFromBinding","boundValue","serviceIdentifierAsString","ensureFullyBound","resolvedResult","resolveInstance","_resolveInScope","resolveFromBinding","tryGetFromScope","saveToScope","_onActivation","_bindingActivation","containersIterator","_getContainersIterator","containersIteratorResult","next","activationsIterator","_getContainerActivationsForService","_activateContainerAsync","_activateContainer","done","previousResult","activation","resultPromise","activations","_activations","values","containersStack","nextContainer","pop","traverseAncerstors","taggedConstraint","matchesTag","namedConstraint","typeConstraint","BindingWhenSyntax","_binding","when","BindingOnSyntax","whenTargetNamed","whenTargetIsDefault","whenTargetTagged","whenInjectedInto","whenParentNamed","whenParentTagged","whenAnyAncestorIs","ancestor","whenNoAncestorIs","whenAnyAncestorNamed","whenNoAncestorNamed","whenAnyAncestorTagged","whenNoAncestorTagged","whenAnyAncestorMatches","whenNoAncestorMatches","handler","BindingWhenOnSyntax","_bindingWhenSyntax","_bindingOnSyntax","BindingInSyntax","inRequestScope","inSingletonScope","inTransientScope","BindingInWhenOnSyntax","_bindingInSyntax","BindingToSyntax","to","self","toConstantValue","toDynamicValue","toConstructor","toFactory","toFunction","bindingWhenOnSyntax","toAutoFactory","toAutoNamedFactory","named","getNamed","toProvider","defineProperty","configurable","enumerable","_value","_error","getAsync","ContainerSnapshot","deactivations","middleware","moduleActivationStore","of","snapshot","Lookup","_map","getMap","add","_checkNonNulish","ERROR_MSGS.NULL_ARGUMENT","entry","ERROR_MSGS.KEY_NOT_FOUND","remove","delete","removeIntersection","lookup","traverse","lookupActivations","filteredValues","lookupValue","moduleActivation","_setValue","removeByCondition","condition","removals","entries","updatedEntries","copy","b","obj","ModuleActivationStore","handlers","_getEmptyHandlersStore","addDeactivation","_getModuleActivationHandlers","onDeactivations","addActivation","onActivations","handlersStore","moduleActivationHandlers","Container","_middleware","_deactivations","_snapshots","_metadataReader","_moduleActivationStore","containerOptions","defaultScope","merge","container1","container2","containers","targetContainers","targetContainer","targetBindingDictionary","destination","_key","load","modules","getHelpers","_getContainerModuleHelpersFactory","currentModule","containerModuleHelpers","registry","bindFunction","unbindFunction","isboundFunction","rebindFunction","unbindAsyncFunction","onActivationFunction","onDeactivationFunction","loadAsync","unload","module","_removeModuleBindings","_deactivateSingletons","_removeModuleHandlers","unloadAsync","_deactivateSingletonsAsync","_bind","_buildBinding","rebind","unbind","rebindAsync","unbindAsync","_removeServiceFromDictionary","unbindAll","unbindAllAsync","promises","isBound","bound","isCurrentBound","isBoundNamed","isBoundTagged","createMockRequest","restore","createChild","applyMiddleware","middlewares","initial","_planAndResolve","prev","curr","applyCustomMetadataReader","getArgs","_getNotAllArgs","_getButThrowIfAsync","_get","getTagged","getTaggedAsync","getNamedAsync","getAll","_getAllArgs","getAllAsync","_getAll","getAllTagged","getAllTaggedAsync","getAllNamed","getAllNamedAsync","resolve","constructorFunction","tryGet","tryGetAsync","tryGetTagged","tryGetTaggedAsync","tryGetNamed","tryGetNamedAsync","tryGetAll","tryGetAllAsync","tryGetAllTagged","tryGetAllTaggedAsync","tryGetAllNamed","tryGetAllNamedAsync","_preDestroy","moduleActivationsHandlers","_deactivate","_deactivateContainer","_handleDeactivationError","_propagateContainerDeactivationThenBindingAndPreDestroyAsync","propagateDeactivationResult","_propagateContainerDeactivationThenBindingAndPreDestroy","ERROR_MSGS.ON_DEACTIVATION_ERROR","deactivationsIterator","deactivation","_deactivateContainerAsync","getBindFunction","getUnbindFunction","getUnbindAsyncFunction","getIsboundFunction","getRebindFunction","getOnActivationFunction","getOnDeactivationFunction","mId","planAndResolveArgs","contextInterceptor","middlewareResult","keyToString","enforceBindingConstraints","_getPlanMetadataFromNextArgs","planMetadata","resolveRequestFunction","_deactivateIfSingleton","_bindingDeactivationAndPreDestroy","_bindingDeactivationAndPreDestroyAsync","_e","ContainerModule","AsyncContainerModule","tagParameter","annotationTarget","parameterName","parameterIndex","ERROR_MSGS.INVALID_DECORATOR_OPERATION","_throwIfMethodParameter","_tagParameterOrProperty","_ensureNoMetadataKeyDuplicates","metadatas","duplicate","array","seenValues","Set","getFirstArrayDuplicate","md","ERROR_MSGS.DUPLICATED_METADATA","paramsOrPropertiesMetadata","hasOwnMetadata","paramOrPropertyMetadata","defineMetadata","createTaggedDecorator","targetKey","indexOrPropertyDescriptor","propertyName","tagProperty","_decorate","decorators","decorate","_param","paramIndex","decorator","parameterIndexOrProperty","injectable","METADATA_KEY.PARAM_TYPES","tagged","metadataValue","injectBase","className","inject","optional","multiInject","targetName","METADATA_KEY.NAME_TAG","propertyEventDecorator","eventKey","propertyKey","postConstruct","preDestroy","METADATA_KEY","keys"],"mappings":"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"}
package/package.json CHANGED
@@ -76,5 +76,5 @@
76
76
  "test:cjs": "nyc --reporter=lcov mocha lib/cjs/test/*.test.js lib/cjs/test/**/*.test.js --reporter spec --require 'node_modules/reflect-metadata/Reflect.js'"
77
77
  },
78
78
  "sideEffects": false,
79
- "version": "6.2.0-beta.0"
79
+ "version": "6.2.0-beta.1"
80
80
  }