inversify 6.2.0 → 6.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,13 +4,14 @@ All notable changes to this project from 5.0.0 forward will be documented in thi
4
4
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
5
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
- ## [Unreleased]
7
+ ## [6.2.2]
8
8
 
9
- ### Added
9
+ - Solved issue with npm registry.
10
10
 
11
- ### Changed
11
+ ## [6.2.1]
12
12
 
13
13
  ### Fixed
14
+ - Added missing `LazyServiceIdentifer`.
14
15
 
15
16
  ## [6.2.0]
16
17
 
@@ -1,6 +1,11 @@
1
1
  import 'reflect-metadata';
2
+ import { LazyServiceIdentifier } from '@inversifyjs/common';
2
3
  import * as keys from './constants/metadata_keys';
3
4
  export { LazyServiceIdentifier } from '@inversifyjs/common';
5
+ /**
6
+ * @deprecated Use LazyServiceIdentifier instead
7
+ */
8
+ export declare const LazyServiceIdentifer: typeof LazyServiceIdentifier;
4
9
  export declare const METADATA_KEY: typeof keys;
5
10
  export { Container } from './container/container';
6
11
  export { BindingScopeEnum, BindingTypeEnum, TargetTypeEnum, } from './constants/literal_types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,eAAO,MAAM,YAAY,aAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,qBACnB,CAAC;AAGxB,eAAO,MAAM,YAAY,aAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
package/lib/cjs/index.js CHANGED
@@ -33,11 +33,17 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.multiBindToService = exports.getServiceIdentifierAsString = exports.typeConstraint = exports.namedConstraint = exports.taggedConstraint = exports.traverseAncerstors = exports.decorate = exports.id = exports.MetadataReader = exports.preDestroy = exports.postConstruct = exports.targetName = exports.multiInject = exports.unmanaged = exports.optional = exports.inject = exports.named = exports.tagged = exports.injectable = exports.createTaggedDecorator = exports.ContainerModule = exports.AsyncContainerModule = exports.TargetTypeEnum = exports.BindingTypeEnum = exports.BindingScopeEnum = exports.Container = exports.METADATA_KEY = exports.LazyServiceIdentifier = void 0;
36
+ exports.multiBindToService = exports.getServiceIdentifierAsString = exports.typeConstraint = exports.namedConstraint = exports.taggedConstraint = exports.traverseAncerstors = exports.decorate = exports.id = exports.MetadataReader = exports.preDestroy = exports.postConstruct = exports.targetName = exports.multiInject = exports.unmanaged = exports.optional = exports.inject = exports.named = exports.tagged = exports.injectable = exports.createTaggedDecorator = exports.ContainerModule = exports.AsyncContainerModule = exports.TargetTypeEnum = exports.BindingTypeEnum = exports.BindingScopeEnum = exports.Container = exports.METADATA_KEY = exports.LazyServiceIdentifer = exports.LazyServiceIdentifier = void 0;
37
+ /* eslint-disable @typescript-eslint/naming-convention */
37
38
  require("reflect-metadata");
39
+ const common_1 = require("@inversifyjs/common");
38
40
  const keys = __importStar(require("./constants/metadata_keys"));
39
- var common_1 = require("@inversifyjs/common");
40
- Object.defineProperty(exports, "LazyServiceIdentifier", { enumerable: true, get: function () { return common_1.LazyServiceIdentifier; } });
41
+ var common_2 = require("@inversifyjs/common");
42
+ Object.defineProperty(exports, "LazyServiceIdentifier", { enumerable: true, get: function () { return common_2.LazyServiceIdentifier; } });
43
+ /**
44
+ * @deprecated Use LazyServiceIdentifier instead
45
+ */
46
+ exports.LazyServiceIdentifer = common_1.LazyServiceIdentifier;
41
47
  // eslint-disable-next-line @typescript-eslint/typedef
42
48
  exports.METADATA_KEY = keys;
43
49
  var container_1 = require("./container/container");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4BAA0B;AAE1B,gEAAkD;AAElD,8CAA4D;AAAnD,+GAAA,qBAAqB,OAAA;AAC9B,sDAAsD;AACzC,QAAA,YAAY,GAAG,IAAI,CAAC;AACjC,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,2DAImC;AAHjC,iHAAA,gBAAgB,OAAA;AAChB,gHAAA,eAAe,OAAA;AACf,+GAAA,cAAc,OAAA;AAEhB,iEAGsC;AAFpC,wHAAA,oBAAoB,OAAA;AACpB,mHAAA,eAAe,OAAA;AAEjB,gEAAqE;AAA5D,wHAAA,qBAAqB,OAAA;AAC9B,sDAAqD;AAA5C,wGAAA,UAAU,OAAA;AACnB,8CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,4CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,8CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,kDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,oDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,0DAAwD;AAA/C,2GAAA,WAAW,OAAA;AACpB,wDAAsD;AAA7C,yGAAA,UAAU,OAAA;AACnB,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,wDAAsD;AAA7C,yGAAA,UAAU,OAAA;AACnB,8DAA4D;AAAnD,iHAAA,cAAc,OAAA;AACvB,iCAAgC;AAAvB,wFAAA,EAAE,OAAA;AAEX,gEAAwD;AAA/C,2GAAA,QAAQ,OAAA;AACjB,kEAKqC;AAJnC,wHAAA,kBAAkB,OAAA;AAClB,sHAAA,gBAAgB,OAAA;AAChB,qHAAA,eAAe,OAAA;AACf,oHAAA,cAAc,OAAA;AAEhB,uDAAqE;AAA5D,6HAAA,4BAA4B,OAAA;AACrC,uDAA2D;AAAlD,mHAAA,kBAAkB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAyD;AACzD,4BAA0B;AAE1B,gDAA4D;AAE5D,gEAAkD;AAElD,8CAA4D;AAAnD,+GAAA,qBAAqB,OAAA;AAE9B;;GAEG;AACU,QAAA,oBAAoB,GAC/B,8BAAqB,CAAC;AAExB,sDAAsD;AACzC,QAAA,YAAY,GAAG,IAAI,CAAC;AACjC,mDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,2DAImC;AAHjC,iHAAA,gBAAgB,OAAA;AAChB,gHAAA,eAAe,OAAA;AACf,+GAAA,cAAc,OAAA;AAEhB,iEAGsC;AAFpC,wHAAA,oBAAoB,OAAA;AACpB,mHAAA,eAAe,OAAA;AAEjB,gEAAqE;AAA5D,wHAAA,qBAAqB,OAAA;AAC9B,sDAAqD;AAA5C,wGAAA,UAAU,OAAA;AACnB,8CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,4CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,8CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,kDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,oDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,0DAAwD;AAA/C,2GAAA,WAAW,OAAA;AACpB,wDAAsD;AAA7C,yGAAA,UAAU,OAAA;AACnB,8DAA4D;AAAnD,+GAAA,aAAa,OAAA;AACtB,wDAAsD;AAA7C,yGAAA,UAAU,OAAA;AACnB,8DAA4D;AAAnD,iHAAA,cAAc,OAAA;AACvB,iCAAgC;AAAvB,wFAAA,EAAE,OAAA;AAEX,gEAAwD;AAA/C,2GAAA,QAAQ,OAAA;AACjB,kEAKqC;AAJnC,wHAAA,kBAAkB,OAAA;AAClB,sHAAA,gBAAgB,OAAA;AAChB,qHAAA,eAAe,OAAA;AACf,oHAAA,cAAc,OAAA;AAEhB,uDAAqE;AAA5D,6HAAA,4BAA4B,OAAA;AACrC,uDAA2D;AAAlD,mHAAA,kBAAkB,OAAA"}
@@ -495,6 +495,10 @@ declare function getServiceIdentifierAsString(serviceIdentifier: interfaces.Serv
495
495
 
496
496
  declare const multiBindToService: (container: interfaces.Container) => (service: interfaces.ServiceIdentifier) => (...types: interfaces.ServiceIdentifier[]) => void;
497
497
 
498
+ /**
499
+ * @deprecated Use LazyServiceIdentifier instead
500
+ */
501
+ declare const LazyServiceIdentifer: typeof LazyServiceIdentifier;
498
502
  declare const METADATA_KEY: typeof keys;
499
503
 
500
- export { AsyncContainerModule, BindingScopeEnum, BindingTypeEnum, Container, ContainerModule, METADATA_KEY, MetadataReader, TargetTypeEnum, createTaggedDecorator, decorate, getServiceIdentifierAsString, id, inject, injectable, interfaces, multiBindToService, multiInject, named, namedConstraint, optional, postConstruct, preDestroy, tagged, taggedConstraint, targetName, traverseAncerstors, typeConstraint, unmanaged };
504
+ export { AsyncContainerModule, BindingScopeEnum, BindingTypeEnum, Container, ContainerModule, LazyServiceIdentifer, METADATA_KEY, MetadataReader, TargetTypeEnum, createTaggedDecorator, decorate, getServiceIdentifierAsString, id, inject, injectable, interfaces, multiBindToService, multiInject, named, namedConstraint, optional, postConstruct, preDestroy, tagged, taggedConstraint, targetName, traverseAncerstors, typeConstraint, unmanaged };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,eAAO,MAAM,YAAY,aAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,qBACnB,CAAC;AAGxB,eAAO,MAAM,YAAY,aAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
package/lib/esm/index.js CHANGED
@@ -1,2 +1,2 @@
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};
1
+ import"reflect-metadata";import{LazyServiceIdentifier as t}from"@inversifyjs/common";export{LazyServiceIdentifier}from"@inversifyjs/common";import{getTargets as n,getClassElementMetadataFromLegacyMetadata as e,ClassElementMetadataKind as i,LegacyTargetImpl as r}from"@inversifyjs/core";const s="named",o="name",a="unmanaged",c="optional",d="inject",u="multi_inject",h="inversify:tagged",l="inversify:tagged_props",g="inversify:paramtypes",y="design:paramtypes",p="post_construct",f="pre_destroy";const _=[d,u,o,a,s,c];var v=Object.freeze({__proto__:null,DESIGN_PARAM_TYPES:y,INJECT_TAG:d,MULTI_INJECT_TAG:u,NAMED_TAG:s,NAME_TAG:o,NON_CUSTOM_TAG_KEYS:_,OPTIONAL_TAG:c,PARAM_TYPES:g,POST_CONSTRUCT:p,PRE_DESTROY:f,TAGGED:h,TAGGED_PROP:l,UNMANAGED_TAG:a});const b={Request:"Request",Singleton:"Singleton",Transient:"Transient"},w={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"},m={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"};let A=0;function S(){return A++}class I{id;moduleId;activated;serviceIdentifier;implementationType;cache;dynamicValue;scope;type;factory;provider;constraint;onActivation;onDeactivation;constructor(t,n){this.id=S(),this.activated=!1,this.serviceIdentifier=t,this.scope=n,this.type=w.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 I(this.serviceIdentifier,this.scope);return t.activated=t.scope===b.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 T="Metadata key was used more than once in a parameter:",D="NULL argument",N="Key Not Found",C="Ambiguous match found for serviceIdentifier:",x="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.",E=(t,n)=>`onDeactivation() error in class ${t}: ${n}`;class M{getConstructorMetadata(t){return{compilerGeneratedMetadata:Reflect.getMetadata(y,t)??[],userGeneratedMetadata:Reflect.getMetadata(h,t)??{}}}getPropertiesMetadata(t){return Reflect.getMetadata(l,t)??{}}}var B;function P(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"}(B||(B={}));function k(t){return"function"==typeof t?t.name:"symbol"==typeof t?t.toString():t}function q(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=O(t.implementationType)),i=`${i}\n ${n}`,t.constraint.metaData&&(i=`${i} - ${t.constraint.metaData}`)}))),i}function F(t,n){return null!==t.parentRequest&&(t.parentRequest.serviceIdentifier===n||F(t.parentRequest,n))}function j(t){t.childRequests.forEach((n=>{if(F(t,n.serviceIdentifier)){const t=function(t){const n=function t(n,e=[]){const i=k(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}`)}j(n)}))}function O(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 $(t){return`{"key":"${t.key.toString()}","value":"${t.value.toString()}"}`}class V{id;container;plan;currentRequest;constructor(t){this.id=S(),this.container=t}addPlan(t){this.plan=t}setCurrentRequest(t){this.currentRequest=t}}class W{key;value;constructor(t,n){this.key=t,this.value=n}toString(){return this.key===s?`named: ${String(this.value).toString()} `:`tagged: { key:${this.key.toString()}, value: ${String(this.value)} }`}}class G{parentContext;rootRequest;constructor(t,n){this.parentContext=t,this.rootRequest=n}}function K(t,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=n(t)(i),s=r.map((t=>t.metadata.filter((t=>t.key===a)))),o=[].concat.apply([],s).length,c=r.length-o;return c>0?c:K(t,i)}class H{id;serviceIdentifier;parentContext;parentRequest;bindings;childRequests;target;requestScope;constructor(t,n,e,i,r){this.id=S(),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 H(t,this.parentContext,this,n,e);return this.childRequests.push(i),i}}function U(t){return t._bindingDictionary}function L(t,n,e,i,r){let s=J(e.container,r.serviceIdentifier),o=[];return s.length===B.NoBindingsAvailable&&!0===e.container.options.autoBindInjectable&&"function"==typeof r.serviceIdentifier&&t.getConstructorMetadata(r.serviceIdentifier).compilerGeneratedMetadata&&(e.container.bind(r.serviceIdentifier).toSelf(),s=J(e.container,r.serviceIdentifier)),o=n?s:s.filter((t=>{const n=new H(t.serviceIdentifier,e,i,t,r);return t.constraint(n)})),function(t,n,e,i,r){switch(n.length){case B.NoBindingsAvailable:if(i.isOptional())return n;{const n=k(t);let s=x;throw s+=function(t,n){if(n.isTagged()||n.isNamed()){let e="";const i=n.getNamedTag(),r=n.getCustomTags();return null!==i&&(e+=$(i)+"\n"),null!==r&&r.forEach((t=>{e+=$(t)+"\n"})),` ${t}\n ${t} - ${e}`}return` ${t}`}(n,i),s+=q(r,n,J),null!==e&&(s+="\n"+`Trying to resolve bindings for "${k(e.serviceIdentifier)}"`),new Error(s)}case B.OnlyOneBindingAvailable:return n;case B.MultipleBindingsAvailable:default:if(i.isArray())return n;{const n=k(t);let e=`${C} ${n}`;throw e+=q(r,n,J),new Error(e)}}}(r.serviceIdentifier,o,i,r,e.container),o}function Y(t,n){const e=n.isMultiInject?u:d,i=[new W(e,t)];return void 0!==n.customTag&&i.push(new W(n.customTag.key,n.customTag.value)),!0===n.isOptional&&i.push(new W(c,!0)),i}function z(t,e,i,r,s,o){let a,c;if(null===s){a=L(t,e,r,null,o),c=new H(i,r,null,a,o);const n=new G(r,c);r.addPlan(n)}else a=L(t,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===w.Instance&&null!==e.implementationType){const s=function(t,e){return n(t)(e)}(t,e.implementationType);if(!0!==r.container.options.skipBaseClassChecks){const n=K(t,e.implementationType);if(s.length<n){const t=`The number of constructor arguments in the derived class ${O(e.implementationType)} must be >= than the number of constructor arguments of its base class.`;throw new Error(t)}}s.forEach((n=>{z(t,!1,n.serviceIdentifier,r,i,n)}))}}))}function J(t,n){let e=[];const i=U(t);return i.hasKey(n)?e=i.get(n):null!==t.parent&&(e=J(t.parent,n)),e}function Q(t,n,s,o,a,c=!1){const d=new V(n),u=function(t,n,s){const o=Y(n,s),a=e(o);if(a.kind===i.unmanaged)throw new Error("Unexpected metadata when creating target");return new r("",a,t)}(s,o,a);try{return z(t,c,o,d,null,u),d}catch(t){throw P(t)&&j(d.plan.rootRequest),t}}function X(t){return("object"==typeof t&&null!==t||"function"==typeof t)&&"function"==typeof t.then}function Z(t){return!!X(t)||Array.isArray(t)&&t.some(X)}const tt=(t,n,e)=>{t.has(n.id)||t.set(n.id,e)},nt=(t,n)=>{t.cache=n,t.activated=!0,X(n)&&et(t,n)},et=async(t,n)=>{try{const e=await n;t.cache=e}catch(n){throw t.cache=null,t.activated=!1,n}};var it;!function(t){t.DynamicValue="toDynamicValue",t.Factory="toFactory",t.Provider="toProvider"}(it||(it={}));const rt=t=>n=>(...e)=>{e.forEach((e=>{t.bind(e).toService(n)}))};function st(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===m.ConstructorArgument?t.constructorInjections.push(i):(t.propertyRequests.push(e),t.propertyInjections.push(i)),t.isAsync||(t.isAsync=Z(i)),t}),{constructorInjections:[],isAsync:!1,propertyInjections:[],propertyRequests:[]})}(n,e),s={...r,constr:t};i=r.isAsync?async function(t){const n=await at(t.constructorInjections),e=await at(t.propertyInjections);return ot({...t,constructorInjections:n,propertyInjections:e})}(s):ot(s)}else i=new t;return i}function ot(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 at(t){const n=[];for(const e of t)Array.isArray(e)?n.push(Promise.all(e)):n.push(e);return Promise.all(n)}function ct(t,n){const e=function(t,n){if(Reflect.hasMetadata(p,t)){const r=Reflect.getMetadata(p,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 X(e)?e.then((()=>n)):n}function dt(t,n){t.scope!==b.Singleton&&function(t,n){const e=`Class cannot be instantiated in ${t.scope===b.Request?"request":"transient"} scope.`;if("function"==typeof t.onDeactivation)throw new Error(E(n.name,e));if(Reflect.hasMetadata(f,n))throw new Error(`@preDestroy error in class ${n.name}: ${e}`)}(t,n)}const ut=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=>ut(t)(n)));{if(n.target.isOptional()&&0===e.length)return;const i=e[0];return yt(t,n,i)}},ht=(t,n)=>{const e=(t=>{switch(t.type){case w.Factory:return{factory:t.factory,factoryType:it.Factory};case w.Provider:return{factory:t.provider,factoryType:it.Provider};case w.DynamicValue:return{factory:t.dynamicValue,factoryType:it.DynamicValue};default:throw new Error(`Unexpected factory type ${t.type}`)}})(t);return((t,n)=>{try{return t()}catch(t){if(P(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}))},lt=(t,n,e)=>{let i;const r=n.childRequests;switch((t=>{let n=null;switch(t.type){case w.ConstantValue:case w.Function:n=t.cache;break;case w.Constructor:case w.Instance:n=t.implementationType;break;case w.DynamicValue:n=t.dynamicValue;break;case w.Provider:n=t.provider;break;case w.Factory:n=t.factory}if(null===n){const n=k(t.serviceIdentifier);throw new Error(`Invalid binding type: ${n}`)}})(e),e.type){case w.ConstantValue:case w.Function:i=e.cache;break;case w.Constructor:i=e.implementationType;break;case w.Instance:i=function(t,n,e,i){dt(t,n);const r=st(n,e,i);return X(r)?r.then((t=>ct(n,t))):ct(n,r)}(e,e.implementationType,r,ut(t));break;default:i=ht(e,n.parentContext)}return i},gt=(t,n,e)=>{let i=((t,n)=>n.scope===b.Singleton&&n.activated?n.cache:n.scope===b.Request&&t.has(n.id)?t.get(n.id):null)(t,n);return null!==i||(i=e(),((t,n,e)=>{n.scope===b.Singleton&&nt(n,e),n.scope===b.Request&&tt(t,n,e)})(t,n,i)),i},yt=(t,n,e)=>gt(t,e,(()=>{let i=lt(t,n,e);return i=X(i)?i.then((t=>pt(n,e,t))):pt(n,e,i),i}));function pt(t,n,e){let i=ft(t.parentContext,n,e);const r=wt(t.parentContext.container);let s,o=r.next();do{s=o.value;const n=t.parentContext,e=t.serviceIdentifier,a=bt(s,e);i=X(i)?vt(a,n,i):_t(a,n,i),o=r.next()}while(!0!==o.done&&!U(s).hasKey(t.serviceIdentifier));return i}const ft=(t,n,e)=>{let i;return i="function"==typeof n.onActivation?n.onActivation(t,e):e,i},_t=(t,n,e)=>{let i=t.next();for(;!0!==i.done;){if(X(e=i.value(n,e)))return vt(t,n,e);i=t.next()}return e},vt=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},bt=(t,n)=>{const e=t._activations;return e.hasKey(n)?e.get(n).values():[].values()},wt=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 mt=(t,n)=>{const e=t.parentRequest;return null!==e&&(!!n(e)||mt(e,n))},At=t=>n=>{const e=e=>null!==e&&null!==e.target&&e.target.matchesTag(t)(n);return e.metaData=new W(t,n),e},St=At(s),It=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 Tt{_binding;constructor(t){this._binding=t}when(t){return this._binding.constraint=t,new Dt(this._binding)}whenTargetNamed(t){return this._binding.constraint=St(t),new Dt(this._binding)}whenTargetIsDefault(){return this._binding.constraint=t=>{if(null===t)return!1;return null!==t.target&&!t.target.isNamed()&&!t.target.isTagged()},new Dt(this._binding)}whenTargetTagged(t,n){return this._binding.constraint=At(t)(n),new Dt(this._binding)}whenInjectedInto(t){return this._binding.constraint=n=>null!==n&&It(t)(n.parentRequest),new Dt(this._binding)}whenParentNamed(t){return this._binding.constraint=n=>null!==n&&St(t)(n.parentRequest),new Dt(this._binding)}whenParentTagged(t,n){return this._binding.constraint=e=>null!==e&&At(t)(n)(e.parentRequest),new Dt(this._binding)}whenAnyAncestorIs(t){return this._binding.constraint=n=>null!==n&&mt(n,It(t)),new Dt(this._binding)}whenNoAncestorIs(t){return this._binding.constraint=n=>null!==n&&!mt(n,It(t)),new Dt(this._binding)}whenAnyAncestorNamed(t){return this._binding.constraint=n=>null!==n&&mt(n,St(t)),new Dt(this._binding)}whenNoAncestorNamed(t){return this._binding.constraint=n=>null!==n&&!mt(n,St(t)),new Dt(this._binding)}whenAnyAncestorTagged(t,n){return this._binding.constraint=e=>null!==e&&mt(e,At(t)(n)),new Dt(this._binding)}whenNoAncestorTagged(t,n){return this._binding.constraint=e=>null!==e&&!mt(e,At(t)(n)),new Dt(this._binding)}whenAnyAncestorMatches(t){return this._binding.constraint=n=>null!==n&&mt(n,t),new Dt(this._binding)}whenNoAncestorMatches(t){return this._binding.constraint=n=>null!==n&&!mt(n,t),new Dt(this._binding)}}class Dt{_binding;constructor(t){this._binding=t}onActivation(t){return this._binding.onActivation=t,new Tt(this._binding)}onDeactivation(t){return this._binding.onDeactivation=t,new Tt(this._binding)}}class Nt{_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(t){this._binding=t,this._bindingWhenSyntax=new Tt(this._binding),this._bindingOnSyntax=new Dt(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 Ct{_binding;constructor(t){this._binding=t}inRequestScope(){return this._binding.scope=b.Request,new Nt(this._binding)}inSingletonScope(){return this._binding.scope=b.Singleton,new Nt(this._binding)}inTransientScope(){return this._binding.scope=b.Transient,new Nt(this._binding)}}class xt{_bindingInSyntax;_bindingWhenSyntax;_bindingOnSyntax;_binding;constructor(t){this._binding=t,this._bindingWhenSyntax=new Tt(this._binding),this._bindingOnSyntax=new Dt(this._binding),this._bindingInSyntax=new Ct(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 Rt{_binding;constructor(t){this._binding=t}to(t){return this._binding.type=w.Instance,this._binding.implementationType=t,new xt(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=w.ConstantValue,this._binding.cache=t,this._binding.dynamicValue=null,this._binding.implementationType=null,this._binding.scope=b.Singleton,new Nt(this._binding)}toDynamicValue(t){return this._binding.type=w.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=t,this._binding.implementationType=null,new xt(this._binding)}toConstructor(t){return this._binding.type=w.Constructor,this._binding.implementationType=t,this._binding.scope=b.Singleton,new Nt(this._binding)}toFactory(t){return this._binding.type=w.Factory,this._binding.factory=t,this._binding.scope=b.Singleton,new Nt(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=w.Function,this._binding.scope=b.Singleton,n}toAutoFactory(t){return this._binding.type=w.Factory,this._binding.factory=n=>()=>n.container.get(t),this._binding.scope=b.Singleton,new Nt(this._binding)}toAutoNamedFactory(t){return this._binding.type=w.Factory,this._binding.factory=n=>e=>n.container.getNamed(t,e),new Nt(this._binding)}toProvider(t){return this._binding.type=w.Provider,this._binding.provider=t,this._binding.scope=b.Singleton,new Nt(this._binding)}toService(t){this._binding.type=w.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 Et{bindings;activations;deactivations;middleware;moduleActivationStore;static of(t,n,e,i,r){const s=new Et;return s.bindings=t,s.middleware=n,s.deactivations=i,s.activations=e,s.moduleActivationStore=r,s}}class Mt{_map;constructor(){this._map=new Map}getMap(){return this._map}add(t,n){if(this._checkNonNulish(t),null==n)throw new Error(D);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(N)}remove(t){if(this._checkNonNulish(t),!this._map.delete(t))throw new Error(N)}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 Mt;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(D)}_setValue(t,n){n.length>0?this._map.set(t,n):this._map.delete(t)}}class Bt{_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 Bt;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 Mt,onDeactivations:new Mt}}}class Pt{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=b.Transient;else if(n.defaultScope!==b.Singleton&&n.defaultScope!==b.Transient&&n.defaultScope!==b.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=S(),this._bindingDictionary=new Mt,this._snapshots=[],this._middleware=null,this._activations=new Mt,this._deactivations=new Mt,this.parent=null,this._metadataReader=new M,this._moduleActivationStore=new Bt}static merge(t,n,...e){const i=new Pt,r=[t,n,...e].map((t=>U(t))),s=U(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 Mt}async unbindAllAsync(){const t=[];this._bindingDictionary.traverse(((n,e)=>{t.push(this._deactivateSingletonsAsync(e))})),await Promise.all(t),this._bindingDictionary=new Mt}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,s,n)}isBoundTagged(t,n,s){let o=!1;if(this._bindingDictionary.hasKey(t)){const a=this._bindingDictionary.get(t),c=function(t,n,s){const o=Y(n,s),a=e(o);if(a.kind===i.unmanaged)throw new Error("Unexpected metadata when creating target");const c=new r("",a,"Variable"),d=new V(t);return new H(n,d,null,[],c)}(this,t,{customTag:{key:n,value:s},isMultiInject:!1});o=a.some((t=>t.constraint(c)))}return!o&&this.parent&&(o=this.parent.isBoundTagged(t,n,s)),o}snapshot(){this._snapshots.push(Et.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 Pt(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,s,n)}async getNamedAsync(t,n){return this.getTaggedAsync(t,s,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,s,n)}async getAllNamedAsync(t,n){return this.getAllTaggedAsync(t,s,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,s,n)}async tryGetNamedAsync(t,n){return this.tryGetTaggedAsync(t,s,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,s,n)}async tryGetAllNamedAsync(t,n){return this.tryGetAllTaggedAsync(t,s,n)}_preDestroy(t,n){if(void 0!==t&&Reflect.hasMetadata(f,t)){const e=Reflect.getMetadata(f,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(X(i))return this._handleDeactivationError(i.then((async()=>this._propagateContainerDeactivationThenBindingAndPreDestroyAsync(t,n,e))),t.serviceIdentifier)}const i=this._propagateContainerDeactivationThenBindingAndPreDestroy(t,n,e);if(X(i))return this._handleDeactivationError(i,t.serviceIdentifier)}catch(n){if(n instanceof Error)throw new Error(E(k(t.serviceIdentifier),n.message))}}async _handleDeactivationError(t,n){try{await t}catch(t){if(t instanceof Error)throw new Error(E(k(n),t.message))}}_deactivateContainer(t,n){let e=n.next();for(;"function"==typeof e.value;){const i=e.value(t);if(X(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 Rt(t)}_buildBinding(t){const n=this.options.defaultScope||b.Transient;return new I(t,n)}async _getAll(t){return Promise.all(this._get(t))}_get(t){const n={...t,contextInterceptor:t=>t,targetType:m.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(Z(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=Q(this._metadataReader,this,t.targetType,t.serviceIdentifier,this._getPlanMetadataFromNextArgs(t),t.avoidConstraints);n=t.contextInterceptor(n);const e=function(t){return ut(t.plan.rootRequest.requestScope)(t.plan.rootRequest)}(n);return e}}_deactivateIfSingleton(t){if(t.activated)return X(t.cache)?t.cache.then((n=>this._deactivate(t,n))):this._deactivate(t,t.cache)}_deactivateSingletons(t){for(const n of t){if(X(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: ${k(t)}`)}}_bindingDeactivationAndPreDestroy(t,n,e){if("function"==typeof t.onDeactivation){const i=t.onDeactivation(n);if(X(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 kt{id;registry;constructor(t){this.id=S(),this.registry=t}}class qt{id;registry;constructor(t){this.id=S(),this.registry=t}}function Ft(t,n,e,i){!function(t){if(void 0!==t)throw new Error(R)}(n),Ot(h,t,e.toString(),i)}function jt(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(`${T} ${e.toString()}`)}else n=[t];return n}function Ot(t,n,e,i){const r=jt(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(`${T} ${t.key.toString()}`);o.push(...r),s[e]=o,Reflect.defineMetadata(t,s,n)}function $t(t){return(n,e,i)=>{"number"==typeof i?Ft(n,e,i,t):function(t,n,e){if(void 0!==t.prototype)throw new Error(R);Ot(l,t.constructor,n,e)}(n,e,t)}}function Vt(t,n){Reflect.decorate(t,n)}function Wt(t,n){return function(e,i){n(e,i,t)}}function Gt(t,n,e){"number"==typeof e?Vt([Wt(e,t)],n):"string"==typeof e?Reflect.decorate([t],n,e):Vt([t],n)}function Kt(){return function(t){if(Reflect.hasOwnMetadata(g,t))throw new Error("Cannot apply @injectable decorator multiple times.");const n=Reflect.getMetadata(y,t)||[];return Reflect.defineMetadata(g,n,t),t}}function Ht(t,n){return $t(new W(t,n))}function Ut(t){return $t(new W(s,t))}function Lt(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.`)}$t(new W(t,n))(e,i,r)}}const Yt=Lt(d);function zt(){return $t(new W(c,!0))}function Jt(){return function(t,n,e){Ft(t,n,e,new W(a,!0))}}const Qt=Lt(u);function Xt(t){return function(n,e,i){Ft(n,e,i,new W(o,t))}}function Zt(t,n){return()=>(e,i)=>{const r=new W(t,i);if(Reflect.hasOwnMetadata(t,e.constructor))throw new Error(n);Reflect.defineMetadata(t,r,e.constructor)}}const tn=Zt(p,"Cannot apply @postConstruct decorator multiple times in the same class"),nn=Zt(f,"Cannot apply @preDestroy decorator multiple times in the same class"),en=t,rn=v;export{qt as AsyncContainerModule,b as BindingScopeEnum,w as BindingTypeEnum,Pt as Container,kt as ContainerModule,en as LazyServiceIdentifer,rn as METADATA_KEY,M as MetadataReader,m as TargetTypeEnum,$t as createTaggedDecorator,Gt as decorate,k as getServiceIdentifierAsString,S as id,Yt as inject,Kt as injectable,rt as multiBindToService,Qt as multiInject,Ut as named,St as namedConstraint,zt as optional,tn as postConstruct,nn as preDestroy,Ht as tagged,At as taggedConstraint,Xt as targetName,mt as traverseAncerstors,It as typeConstraint,Jt 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","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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"}
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","LazyServiceIdentifer","LazyServiceIdentifier","METADATA_KEY","keys"],"mappings":"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"}
package/package.json CHANGED
@@ -9,16 +9,16 @@
9
9
  "@inversifyjs/core": "1.3.5"
10
10
  },
11
11
  "devDependencies": {
12
- "@eslint/js": "9.16.0",
12
+ "@eslint/js": "9.17.0",
13
13
  "@rollup/plugin-terser": "0.4.4",
14
- "@rollup/plugin-typescript": "12.1.1",
14
+ "@rollup/plugin-typescript": "12.1.2",
15
15
  "@types/chai": "4.3.20",
16
16
  "@types/mocha": "10.0.10",
17
17
  "@types/sinon": "17.0.3",
18
- "@typescript-eslint/eslint-plugin": "8.18.0",
19
- "@typescript-eslint/parser": "8.18.0",
18
+ "@typescript-eslint/eslint-plugin": "8.18.1",
19
+ "@typescript-eslint/parser": "8.18.1",
20
20
  "chai": "4.5.0",
21
- "eslint": "9.16.0",
21
+ "eslint": "9.17.0",
22
22
  "eslint-config-prettier": "9.1.0",
23
23
  "eslint-plugin-prettier": "5.2.1",
24
24
  "eslint-plugin-simple-import-sort": "12.1.1",
@@ -31,7 +31,7 @@
31
31
  "ts-loader": "9.5.1",
32
32
  "ts-node": "10.9.2",
33
33
  "typescript": "5.7.2",
34
- "typescript-eslint": "8.18.0"
34
+ "typescript-eslint": "8.18.1"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "reflect-metadata": "~0.2.2"
@@ -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"
79
+ "version": "6.2.2"
80
80
  }