@inversifyjs/core 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/lib/cjs/issues/classMetadataKindIsARuntimeDiscriminator.spec.d.ts +2 -0
- package/lib/cjs/issues/classMetadataKindIsARuntimeDiscriminator.spec.d.ts.map +1 -0
- package/lib/cjs/metadata/actions/decrementPendingClassMetadataCount.js +1 -1
- package/lib/cjs/metadata/actions/decrementPendingClassMetadataCount.js.map +1 -1
- package/lib/cjs/metadata/actions/incrementPendingClassMetadataCount.js +1 -1
- package/lib/cjs/metadata/actions/incrementPendingClassMetadataCount.js.map +1 -1
- package/lib/cjs/metadata/actions/setIsInjectableFlag.js +2 -2
- package/lib/cjs/metadata/actions/setIsInjectableFlag.js.map +1 -1
- package/lib/cjs/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.js +2 -2
- package/lib/cjs/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.js.map +1 -1
- package/lib/cjs/metadata/calculations/getClassMetadata.js +1 -1
- package/lib/cjs/metadata/calculations/getClassMetadata.js.map +1 -1
- package/lib/cjs/metadata/calculations/isPendingClassMetadata.js +1 -1
- package/lib/cjs/metadata/calculations/isPendingClassMetadata.js.map +1 -1
- package/lib/cjs/metadata/decorators/injectBase.js +2 -2
- package/lib/cjs/metadata/decorators/injectBase.js.map +1 -1
- package/lib/cjs/metadata/decorators/injectFrom.js +1 -1
- package/lib/cjs/metadata/decorators/injectFrom.js.map +1 -1
- package/lib/cjs/metadata/decorators/injectable.js +1 -1
- package/lib/cjs/metadata/decorators/injectable.js.map +1 -1
- package/lib/cjs/metadata/decorators/postConstruct.js +1 -1
- package/lib/cjs/metadata/decorators/postConstruct.js.map +1 -1
- package/lib/cjs/metadata/decorators/preDestroy.js +1 -1
- package/lib/cjs/metadata/decorators/preDestroy.js.map +1 -1
- package/lib/cjs/metadata/models/ClassElementMetadataKind.d.ts.map +1 -1
- package/lib/cjs/metadata/models/ClassElementMetadataKind.js.map +1 -1
- package/lib/cjs/metadata/models/MaybeClassElementMetadataKind.d.ts +1 -1
- package/lib/cjs/metadata/models/MaybeClassElementMetadataKind.d.ts.map +1 -1
- package/lib/cjs/metadata/models/MaybeClassElementMetadataKind.js +1 -1
- package/lib/cjs/metadata/models/MaybeClassElementMetadataKind.js.map +1 -1
- package/lib/cjs/resolution/actions/setInstanceProperties.d.ts.map +1 -1
- package/lib/cjs/resolution/actions/setInstanceProperties.js +2 -1
- package/lib/cjs/resolution/actions/setInstanceProperties.js.map +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @inversifyjs/core
|
|
2
2
|
|
|
3
|
+
## 3.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 0dadb6a: Updated `MaybeClassElementMetadataKind` values to avoid collisions
|
|
8
|
+
- 7e751e2: Updated resolve flow to keep default values on optional property injection
|
|
9
|
+
- 5c9ebca: Updated decorator metadata access to avoid conflicts with base type metadata
|
|
10
|
+
- Updated dependencies
|
|
11
|
+
- @inversifyjs/reflect-metadata-utils@1.1.0
|
|
12
|
+
|
|
3
13
|
## 3.0.0
|
|
4
14
|
|
|
5
15
|
### Major Changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classMetadataKindIsARuntimeDiscriminator.spec.d.ts","sourceRoot":"","sources":["../../../src/issues/classMetadataKindIsARuntimeDiscriminator.spec.ts"],"names":[],"mappings":""}
|
|
@@ -9,7 +9,7 @@ function decrementPendingClassMetadataCount(type) {
|
|
|
9
9
|
return (metadata) => {
|
|
10
10
|
if (metadata !== undefined &&
|
|
11
11
|
metadata.kind === MaybeClassElementMetadataKind_1.MaybeClassElementMetadataKind.unknown) {
|
|
12
|
-
(0, reflect_metadata_utils_1.
|
|
12
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(type, pendingClassMetadataCountReflectKey_1.pendingClassMetadataCountReflectKey, getDefaultPendingClassMetadataCount_1.getDefaultPendingClassMetadataCount, (count) => count - 1);
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decrementPendingClassMetadataCount.js","sourceRoot":"","sources":["../../../../src/metadata/actions/decrementPendingClassMetadataCount.ts"],"names":[],"mappings":";;AAOA,gFAgBC;AAvBD,
|
|
1
|
+
{"version":3,"file":"decrementPendingClassMetadataCount.js","sourceRoot":"","sources":["../../../../src/metadata/actions/decrementPendingClassMetadataCount.ts"],"names":[],"mappings":";;AAOA,gFAgBC;AAvBD,gFAA+E;AAE/E,wHAAqH;AACrH,6GAA0G;AAE1G,2FAAwF;AAExF,SAAgB,kCAAkC,CAChD,IAAY;IAEZ,OAAO,CAAC,QAA+C,EAAQ,EAAE;QAC/D,IACE,QAAQ,KAAK,SAAS;YACtB,QAAQ,CAAC,IAAI,KAAK,6DAA6B,CAAC,OAAO,EACvD,CAAC;YACD,IAAA,iDAAwB,EACtB,IAAI,EACJ,yEAAmC,EACnC,yEAAmC,EACnC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -7,7 +7,7 @@ const getDefaultPendingClassMetadataCount_1 = require("../calculations/getDefaul
|
|
|
7
7
|
function incrementPendingClassMetadataCount(type) {
|
|
8
8
|
return (metadata) => {
|
|
9
9
|
if (metadata === undefined) {
|
|
10
|
-
(0, reflect_metadata_utils_1.
|
|
10
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(type, pendingClassMetadataCountReflectKey_1.pendingClassMetadataCountReflectKey, getDefaultPendingClassMetadataCount_1.getDefaultPendingClassMetadataCount, (count) => count + 1);
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incrementPendingClassMetadataCount.js","sourceRoot":"","sources":["../../../../src/metadata/actions/incrementPendingClassMetadataCount.ts"],"names":[],"mappings":";;AAMA,gFAaC;AAnBD,
|
|
1
|
+
{"version":3,"file":"incrementPendingClassMetadataCount.js","sourceRoot":"","sources":["../../../../src/metadata/actions/incrementPendingClassMetadataCount.ts"],"names":[],"mappings":";;AAMA,gFAaC;AAnBD,gFAA+E;AAE/E,wHAAqH;AACrH,6GAA0G;AAG1G,SAAgB,kCAAkC,CAChD,IAAY;IAEZ,OAAO,CAAC,QAA+C,EAAQ,EAAE;QAC/D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAA,iDAAwB,EACtB,IAAI,EACJ,yEAAmC,EACnC,yEAAmC,EACnC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -7,9 +7,9 @@ const InversifyCoreErrorKind_1 = require("../../error/models/InversifyCoreErrorK
|
|
|
7
7
|
const classIsInjectableFlagReflectKey_1 = require("../../reflectMetadata/data/classIsInjectableFlagReflectKey");
|
|
8
8
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
|
9
9
|
function setIsInjectableFlag(target) {
|
|
10
|
-
const isInjectableFlag = (0, reflect_metadata_utils_1.
|
|
10
|
+
const isInjectableFlag = (0, reflect_metadata_utils_1.getOwnReflectMetadata)(target, classIsInjectableFlagReflectKey_1.classIsInjectableFlagReflectKey);
|
|
11
11
|
if (isInjectableFlag !== undefined) {
|
|
12
|
-
throw new InversifyCoreError_1.InversifyCoreError(InversifyCoreErrorKind_1.InversifyCoreErrorKind.injectionDecoratorConflict,
|
|
12
|
+
throw new InversifyCoreError_1.InversifyCoreError(InversifyCoreErrorKind_1.InversifyCoreErrorKind.injectionDecoratorConflict, `Cannot apply @injectable decorator multiple times at class "${target.name}"`);
|
|
13
13
|
}
|
|
14
14
|
(0, reflect_metadata_utils_1.setReflectMetadata)(target, classIsInjectableFlagReflectKey_1.classIsInjectableFlagReflectKey, true);
|
|
15
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setIsInjectableFlag.js","sourceRoot":"","sources":["../../../../src/metadata/actions/setIsInjectableFlag.ts"],"names":[],"mappings":";;AAUA,kDAcC;AAxBD,gFAG6C;AAE7C,8EAA2E;AAC3E,sFAAmF;AACnF,gHAA6G;AAE7G,sEAAsE;AACtE,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,MAAM,gBAAgB,GAAwB,IAAA,
|
|
1
|
+
{"version":3,"file":"setIsInjectableFlag.js","sourceRoot":"","sources":["../../../../src/metadata/actions/setIsInjectableFlag.ts"],"names":[],"mappings":";;AAUA,kDAcC;AAxBD,gFAG6C;AAE7C,8EAA2E;AAC3E,sFAAmF;AACnF,gHAA6G;AAE7G,sEAAsE;AACtE,SAAgB,mBAAmB,CAAC,MAAgB;IAClD,MAAM,gBAAgB,GAAwB,IAAA,8CAAqB,EACjE,MAAM,EACN,iEAA+B,CAChC,CAAC;IAEF,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,IAAI,uCAAkB,CAC1B,+CAAsB,CAAC,0BAA0B,EACjD,+DAA+D,MAAM,CAAC,IAAI,GAAG,CAC9E,CAAC;IACJ,CAAC;IAED,IAAA,2CAAkB,EAAC,MAAM,EAAE,iEAA+B,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -8,9 +8,9 @@ const buildClassElementMetadataFromTypescriptParameterType_1 = require("../calcu
|
|
|
8
8
|
const getDefaultClassMetadata_1 = require("../calculations/getDefaultClassMetadata");
|
|
9
9
|
const isUserlandEmittedType_1 = require("../calculations/isUserlandEmittedType");
|
|
10
10
|
function updateClassMetadataWithTypescriptParameterTypes(target) {
|
|
11
|
-
const typescriptConstructorArguments = (0, reflect_metadata_utils_1.
|
|
11
|
+
const typescriptConstructorArguments = (0, reflect_metadata_utils_1.getOwnReflectMetadata)(target, typescriptDesignParameterTypesReflectKey_1.typescriptParameterTypesReflectKey);
|
|
12
12
|
if (typescriptConstructorArguments !== undefined) {
|
|
13
|
-
(0, reflect_metadata_utils_1.
|
|
13
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, updateMaybeClassMetadataWithTypescriptClassMetadata(typescriptConstructorArguments));
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
function updateMaybeClassMetadataWithTypescriptClassMetadata(typescriptConstructorArguments) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.js","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":";;AAaA,0GAgBC;AA5BD,gFAG6C;AAE7C,gGAA6F;AAC7F,kIAAyH;AACzH,+IAA4I;AAC5I,qFAAkF;AAClF,iFAA8E;AAG9E,SAAgB,+CAA+C,CAC7D,MAAc;IAEd,MAAM,8BAA8B,GAClC,IAAA,
|
|
1
|
+
{"version":3,"file":"updateClassMetadataWithTypescriptParameterTypes.js","sourceRoot":"","sources":["../../../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts"],"names":[],"mappings":";;AAaA,0GAgBC;AA5BD,gFAG6C;AAE7C,gGAA6F;AAC7F,kIAAyH;AACzH,+IAA4I;AAC5I,qFAAkF;AAClF,iFAA8E;AAG9E,SAAgB,+CAA+C,CAC7D,MAAc;IAEd,MAAM,8BAA8B,GAClC,IAAA,8CAAqB,EAAC,MAAM,EAAE,6EAAkC,CAAC,CAAC;IAEpE,IAAI,8BAA8B,KAAK,SAAS,EAAE,CAAC;QACjD,IAAA,iDAAwB,EACtB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,mDAAmD,CACjD,8BAA8B,CAC/B,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mDAAmD,CAC1D,8BAAyC;IAEzC,OAAO,CAAC,aAAiC,EAAsB,EAAE;QAC/D,8BAA8B,CAAC,OAAO,CACpC,CAAC,uBAAgC,EAAE,KAAa,EAAQ,EAAE;YACxD,IACE,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,SAAS;gBACvD,IAAA,6CAAqB,EAAC,uBAAuB,CAAC,EAC9C,CAAC;gBACD,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACvC,IAAA,2GAAoD,EAClD,uBAAuB,CACxB,CAAC;YACN,CAAC;QACH,CAAC,CACF,CAAC;QAEF,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -8,7 +8,7 @@ const isPendingClassMetadata_1 = require("./isPendingClassMetadata");
|
|
|
8
8
|
const throwAtInvalidClassMetadata_1 = require("./throwAtInvalidClassMetadata");
|
|
9
9
|
const validateConstructorMetadataArray_1 = require("./validateConstructorMetadataArray");
|
|
10
10
|
function getClassMetadata(type) {
|
|
11
|
-
const classMetadata = (0, reflect_metadata_utils_1.
|
|
11
|
+
const classMetadata = (0, reflect_metadata_utils_1.getOwnReflectMetadata)(type, classMetadataReflectKey_1.classMetadataReflectKey) ??
|
|
12
12
|
(0, getDefaultClassMetadata_1.getDefaultClassMetadata)();
|
|
13
13
|
if ((0, isPendingClassMetadata_1.isPendingClassMetadata)(type)) {
|
|
14
14
|
(0, throwAtInvalidClassMetadata_1.throwAtInvalidClassMetadata)(type, classMetadata);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getClassMetadata.js","sourceRoot":"","sources":["../../../../src/metadata/calculations/getClassMetadata.ts"],"names":[],"mappings":";;AAUA,4CAYC;AArBD,
|
|
1
|
+
{"version":3,"file":"getClassMetadata.js","sourceRoot":"","sources":["../../../../src/metadata/calculations/getClassMetadata.ts"],"names":[],"mappings":";;AAUA,4CAYC;AArBD,gFAA4E;AAE5E,gGAA6F;AAE7F,uEAAoE;AACpE,qEAAkE;AAClE,+EAA4E;AAC5E,yFAAsF;AAEtF,SAAgB,gBAAgB,CAAC,IAAa;IAC5C,MAAM,aAAa,GACjB,IAAA,8CAAqB,EAAC,IAAI,EAAE,iDAAuB,CAAC;QACpD,IAAA,iDAAuB,GAAE,CAAC;IAE5B,IAAI,IAAA,+CAAsB,EAAC,IAAI,CAAC,EAAE,CAAC;QACjC,IAAA,yDAA2B,EAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;SAAM,CAAC;QACN,IAAA,mEAAgC,EAAC,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAE3E,OAAO,aAAa,CAAC;IACvB,CAAC;AACH,CAAC"}
|
|
@@ -4,7 +4,7 @@ exports.isPendingClassMetadata = isPendingClassMetadata;
|
|
|
4
4
|
const reflect_metadata_utils_1 = require("@inversifyjs/reflect-metadata-utils");
|
|
5
5
|
const pendingClassMetadataCountReflectKey_1 = require("../../reflectMetadata/data/pendingClassMetadataCountReflectKey");
|
|
6
6
|
function isPendingClassMetadata(type) {
|
|
7
|
-
const pendingClassMetadataCount = (0, reflect_metadata_utils_1.
|
|
7
|
+
const pendingClassMetadataCount = (0, reflect_metadata_utils_1.getOwnReflectMetadata)(type, pendingClassMetadataCountReflectKey_1.pendingClassMetadataCountReflectKey);
|
|
8
8
|
return (pendingClassMetadataCount !== undefined && pendingClassMetadataCount !== 0);
|
|
9
9
|
}
|
|
10
10
|
//# sourceMappingURL=isPendingClassMetadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isPendingClassMetadata.js","sourceRoot":"","sources":["../../../../src/metadata/calculations/isPendingClassMetadata.ts"],"names":[],"mappings":";;AAKA,wDASC;AAbD,
|
|
1
|
+
{"version":3,"file":"isPendingClassMetadata.js","sourceRoot":"","sources":["../../../../src/metadata/calculations/isPendingClassMetadata.ts"],"names":[],"mappings":";;AAKA,wDASC;AAbD,gFAA4E;AAE5E,wHAAqH;AAErH,SAAgB,sBAAsB,CAAC,IAAa;IAClD,MAAM,yBAAyB,GAAuB,IAAA,8CAAqB,EACzE,IAAI,EACJ,yEAAmC,CACpC,CAAC;IAEF,OAAO,CACL,yBAAyB,KAAK,SAAS,IAAI,yBAAyB,KAAK,CAAC,CAC3E,CAAC;AACJ,CAAC"}
|
|
@@ -30,7 +30,7 @@ function injectParameter(updateMetadata, updatePendingClassMetadataCount) {
|
|
|
30
30
|
const buildComposedUpdateMetadataFromTarget = buildComposedUpdateMetadata(updateMetadata, updatePendingClassMetadataCount);
|
|
31
31
|
return (target, propertyKey, parameterIndex) => {
|
|
32
32
|
if (isConstructorParameter(target, propertyKey)) {
|
|
33
|
-
(0, reflect_metadata_utils_1.
|
|
33
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (0, updateMaybeClassMetadataConstructorArgument_1.updateMaybeClassMetadataConstructorArgument)(buildComposedUpdateMetadataFromTarget(target), parameterIndex));
|
|
34
34
|
}
|
|
35
35
|
else {
|
|
36
36
|
throw new Error(`Found an @inject decorator in a non constructor parameter.
|
|
@@ -41,7 +41,7 @@ Found @inject decorator at method "${propertyKey?.toString() ?? ''}" at class "$
|
|
|
41
41
|
function injectProperty(updateMetadata, updatePendingClassMetadataCount) {
|
|
42
42
|
const buildComposedUpdateMetadataFromTarget = buildComposedUpdateMetadata(updateMetadata, updatePendingClassMetadataCount);
|
|
43
43
|
return (target, propertyKey) => {
|
|
44
|
-
(0, reflect_metadata_utils_1.
|
|
44
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target.constructor, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (0, updateMaybeClassMetadataProperty_1.updateMaybeClassMetadataProperty)(buildComposedUpdateMetadataFromTarget(target), propertyKey));
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
47
|
function isConstructorParameter(target, propertyKey) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectBase.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectBase.ts"],"names":[],"mappings":";;AAQA,gCA4BC;AApCD,
|
|
1
|
+
{"version":3,"file":"injectBase.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectBase.ts"],"names":[],"mappings":";;AAQA,gCA4BC;AApCD,gFAA+E;AAE/E,gGAA6F;AAC7F,wHAAqH;AACrH,kGAA+F;AAC/F,qFAAkF;AAGlF,SAAgB,UAAU,CACxB,cAE8B,EAC9B,+BAE8D;IAE9D,MAAM,SAAS,GAA2C,CACxD,MAAc,EACd,WAAwC,EACxC,cAAuB,EACjB,EAAE;QACR,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,cAAc,CAAC,cAAc,EAAE,+BAA+B,CAAC,CAC7D,MAAM,EACN,WAA8B,CAC/B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,cAAc,EAAE,+BAA+B,CAAC,CAC9D,MAAM,EACN,WAAW,EACX,cAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,2BAA2B,CAClC,cAE8B,EAC9B,+BAE8D;IAM9D,OAAO,CACL,MAAc,EAGgB,EAAE;QAChC,MAAM,qCAAqC,GAE/B,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAEpD,OAAO,CACL,QAA+C,EACpB,EAAE;YAC7B,qCAAqC,CAAC,QAAQ,CAAC,CAAC;YAEhD,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,cAE8B,EAC9B,+BAE8D;IAE9D,MAAM,qCAAqC,GAIV,2BAA2B,CAC1D,cAAc,EACd,+BAA+B,CAChC,CAAC;IAEF,OAAO,CACL,MAAc,EACd,WAAwC,EACxC,cAAsB,EAChB,EAAE;QACR,IAAI,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChD,IAAA,iDAAwB,EACtB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,IAAA,yFAA2C,EACzC,qCAAqC,CAAC,MAAM,CAAC,EAC7C,cAAc,CACf,CACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb;qCAEE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAC7B,eAAe,MAAM,CAAC,WAAW,CAAC,IAAI,GAAG,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,cAE8B,EAC9B,+BAE8D;IAE9D,MAAM,qCAAqC,GAIV,2BAA2B,CAC1D,cAAc,EACd,+BAA+B,CAChC,CAAC;IAEF,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAQ,EAAE;QAC5D,IAAA,iDAAwB,EACtB,MAAM,CAAC,WAAW,EAClB,iDAAuB,EACvB,iDAAuB,EACvB,IAAA,mEAAgC,EAC9B,qCAAqC,CAAC,MAAM,CAAC,EAC7C,WAAW,CACZ,CACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAe,EACf,WAAwC;IAExC,OAAO,OAAO,MAAM,KAAK,UAAU,IAAI,WAAW,KAAK,SAAS,CAAC;AACnE,CAAC"}
|
|
@@ -11,7 +11,7 @@ function injectFrom(options) {
|
|
|
11
11
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
|
12
12
|
const decorator = (target) => {
|
|
13
13
|
const baseTypeClassMetadata = (0, getClassMetadata_1.getClassMetadata)(options.type);
|
|
14
|
-
(0, reflect_metadata_utils_1.
|
|
14
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, composeUpdateReflectMetadataCallback(options, baseTypeClassMetadata));
|
|
15
15
|
};
|
|
16
16
|
return decorator;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectFrom.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFrom.ts"],"names":[],"mappings":";;AAUA,gCAcC;AAxBD,
|
|
1
|
+
{"version":3,"file":"injectFrom.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectFrom.ts"],"names":[],"mappings":";;AAUA,gCAcC;AAxBD,gFAA+E;AAE/E,gGAA6F;AAC7F,uEAAoE;AACpE,qFAAkF;AAClF,qGAAkG;AAClG,iFAA8E;AAI9E,SAAgB,UAAU,CAAC,OAA0B;IACnD,sEAAsE;IACtE,MAAM,SAAS,GAAmB,CAAC,MAAgB,EAAQ,EAAE;QAC3D,MAAM,qBAAqB,GAAkB,IAAA,mCAAgB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAE5E,IAAA,iDAAwB,EACtB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,oCAAoC,CAAC,OAAO,EAAE,qBAAqB,CAAC,CACrE,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,oCAAoC,CAC3C,OAA0B,EAC1B,qBAAoC;IAEpC,MAAM,QAAQ,GAA+C,CAC3D,YAA2B,EACZ,EAAE,CAAC,CAAC;QACnB,oBAAoB,EAAE,IAAA,iEAA+B,EACnD,OAAO,EACP,qBAAqB,EACrB,YAAY,CACb;QACD,SAAS,EAAE,YAAY,CAAC,SAAS;QACjC,UAAU,EAAE,IAAA,6CAAqB,EAC/B,OAAO,EACP,qBAAqB,EACrB,YAAY,CACb;QACD,KAAK,EAAE,YAAY,CAAC,KAAK;KAC1B,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -12,7 +12,7 @@ function injectable(scope) {
|
|
|
12
12
|
(0, setIsInjectableFlag_1.setIsInjectableFlag)(target);
|
|
13
13
|
(0, updateClassMetadataWithTypescriptParameterTypes_1.updateClassMetadataWithTypescriptParameterTypes)(target);
|
|
14
14
|
if (scope !== undefined) {
|
|
15
|
-
(0, reflect_metadata_utils_1.
|
|
15
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (metadata) => ({
|
|
16
16
|
...metadata,
|
|
17
17
|
scope,
|
|
18
18
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectable.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":";;AASA,gCAmBC;AA5BD,
|
|
1
|
+
{"version":3,"file":"injectable.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/injectable.ts"],"names":[],"mappings":";;AASA,gCAmBC;AA5BD,gFAA+E;AAG/E,gGAA6F;AAC7F,wEAAqE;AACrE,gIAA6H;AAC7H,qFAAkF;AAGlF,SAAgB,UAAU,CAAC,KAAoB;IAC7C,sEAAsE;IACtE,OAAO,CAAC,MAAgB,EAAQ,EAAE;QAChC,IAAA,yCAAmB,EAAC,MAAM,CAAC,CAAC;QAE5B,IAAA,iGAA+C,EAAC,MAAM,CAAC,CAAC;QAExD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAA,iDAAwB,EACtB,MAAM,EACN,iDAAuB,EACvB,iDAAuB,EACvB,CAAC,QAA4B,EAAE,EAAE,CAAC,CAAC;gBACjC,GAAG,QAAQ;gBACX,KAAK;aACN,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -9,7 +9,7 @@ const handleInjectionError_1 = require("../calculations/handleInjectionError");
|
|
|
9
9
|
function postConstruct() {
|
|
10
10
|
return (target, propertyKey, _descriptor) => {
|
|
11
11
|
try {
|
|
12
|
-
(0, reflect_metadata_utils_1.
|
|
12
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target.constructor, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (0, updateMaybeClassMetadataPostConstructor_1.updateMaybeClassMetadataPostConstructor)(propertyKey));
|
|
13
13
|
}
|
|
14
14
|
catch (error) {
|
|
15
15
|
(0, handleInjectionError_1.handleInjectionError)(target, propertyKey, undefined, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postConstruct.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/postConstruct.ts"],"names":[],"mappings":";;AAOA,sCAiBC;AAxBD,
|
|
1
|
+
{"version":3,"file":"postConstruct.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/postConstruct.ts"],"names":[],"mappings":";;AAOA,sCAiBC;AAxBD,gFAA+E;AAE/E,gGAA6F;AAC7F,gHAA6G;AAC7G,qFAAkF;AAClF,+EAA4E;AAE5E,SAAgB,aAAa;IAC3B,OAAO,CACL,MAAc,EACd,WAA4B,EAC5B,WAAuC,EACjC,EAAE;QACR,IAAI,CAAC;YACH,IAAA,iDAAwB,EACtB,MAAM,CAAC,WAAW,EAClB,iDAAuB,EACvB,iDAAuB,EACvB,IAAA,iFAAuC,EAAC,WAAW,CAAC,CACrD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAA,2CAAoB,EAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -9,7 +9,7 @@ const handleInjectionError_1 = require("../calculations/handleInjectionError");
|
|
|
9
9
|
function preDestroy() {
|
|
10
10
|
return (target, propertyKey, _descriptor) => {
|
|
11
11
|
try {
|
|
12
|
-
(0, reflect_metadata_utils_1.
|
|
12
|
+
(0, reflect_metadata_utils_1.updateOwnReflectMetadata)(target.constructor, classMetadataReflectKey_1.classMetadataReflectKey, getDefaultClassMetadata_1.getDefaultClassMetadata, (0, updateMaybeClassMetadataPreDestroy_1.updateMaybeClassMetadataPreDestroy)(propertyKey));
|
|
13
13
|
}
|
|
14
14
|
catch (error) {
|
|
15
15
|
(0, handleInjectionError_1.handleInjectionError)(target, propertyKey, undefined, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preDestroy.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/preDestroy.ts"],"names":[],"mappings":";;AAOA,gCAiBC;AAxBD,
|
|
1
|
+
{"version":3,"file":"preDestroy.js","sourceRoot":"","sources":["../../../../src/metadata/decorators/preDestroy.ts"],"names":[],"mappings":";;AAOA,gCAiBC;AAxBD,gFAA+E;AAE/E,gGAA6F;AAC7F,sGAAmG;AACnG,qFAAkF;AAClF,+EAA4E;AAE5E,SAAgB,UAAU;IACxB,OAAO,CACL,MAAc,EACd,WAA4B,EAC5B,WAAuC,EACjC,EAAE;QACR,IAAI,CAAC;YACH,IAAA,iDAAwB,EACtB,MAAM,CAAC,WAAW,EAClB,iDAAuB,EACvB,iDAAuB,EACvB,IAAA,uEAAkC,EAAC,WAAW,CAAC,CAChD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAA,2CAAoB,EAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassElementMetadataKind.d.ts","sourceRoot":"","sources":["../../../../src/metadata/models/ClassElementMetadataKind.ts"],"names":[],"mappings":"AAAA,oBAAY,wBAAwB;IAClC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ClassElementMetadataKind.d.ts","sourceRoot":"","sources":["../../../../src/metadata/models/ClassElementMetadataKind.ts"],"names":[],"mappings":"AAAA,oBAAY,wBAAwB;IAClC,iBAAiB,IAAI;IACrB,eAAe,IAAI;IACnB,SAAS,IAAI;CACd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassElementMetadataKind.js","sourceRoot":"","sources":["../../../../src/metadata/models/ClassElementMetadataKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAClC,
|
|
1
|
+
{"version":3,"file":"ClassElementMetadataKind.js","sourceRoot":"","sources":["../../../../src/metadata/models/ClassElementMetadataKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAClC,iGAAqB,CAAA;IACrB,6FAAmB,CAAA;IACnB,iFAAa,CAAA;AACf,CAAC,EAJW,wBAAwB,wCAAxB,wBAAwB,QAInC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaybeClassElementMetadataKind.d.ts","sourceRoot":"","sources":["../../../../src/metadata/models/MaybeClassElementMetadataKind.ts"],"names":[],"mappings":"AAAA,oBAAY,6BAA6B;IACvC,OAAO,
|
|
1
|
+
{"version":3,"file":"MaybeClassElementMetadataKind.d.ts","sourceRoot":"","sources":["../../../../src/metadata/models/MaybeClassElementMetadataKind.ts"],"names":[],"mappings":"AAAA,oBAAY,6BAA6B;IACvC,OAAO,KAAK;CACb"}
|
|
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.MaybeClassElementMetadataKind = void 0;
|
|
4
4
|
var MaybeClassElementMetadataKind;
|
|
5
5
|
(function (MaybeClassElementMetadataKind) {
|
|
6
|
-
MaybeClassElementMetadataKind[MaybeClassElementMetadataKind["unknown"] =
|
|
6
|
+
MaybeClassElementMetadataKind[MaybeClassElementMetadataKind["unknown"] = 32] = "unknown";
|
|
7
7
|
})(MaybeClassElementMetadataKind || (exports.MaybeClassElementMetadataKind = MaybeClassElementMetadataKind = {}));
|
|
8
8
|
//# sourceMappingURL=MaybeClassElementMetadataKind.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaybeClassElementMetadataKind.js","sourceRoot":"","sources":["../../../../src/metadata/models/MaybeClassElementMetadataKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,6BAEX;AAFD,WAAY,6BAA6B;IACvC,
|
|
1
|
+
{"version":3,"file":"MaybeClassElementMetadataKind.js","sourceRoot":"","sources":["../../../../src/metadata/models/MaybeClassElementMetadataKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,6BAEX;AAFD,WAAY,6BAA6B;IACvC,wFAAY,CAAA;AACd,CAAC,EAFW,6BAA6B,6CAA7B,6BAA6B,QAExC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setInstanceProperties.d.ts","sourceRoot":"","sources":["../../../../src/resolution/actions/setInstanceProperties.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,CAClB,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,eAAe,KACzB,OAAO,GACX,CACD,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAC1C,IAAI,EAAE,mBAAmB,KACtB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"setInstanceProperties.d.ts","sourceRoot":"","sources":["../../../../src/resolution/actions/setInstanceProperties.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,CAClB,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,eAAe,KACzB,OAAO,GACX,CACD,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAC1C,IAAI,EAAE,mBAAmB,KACtB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCxB"}
|
|
@@ -13,7 +13,8 @@ function setInstanceProperties(resolveServiceNode) {
|
|
|
13
13
|
if (metadata === undefined) {
|
|
14
14
|
throw new InversifyCoreError_1.InversifyCoreError(InversifyCoreErrorKind_1.InversifyCoreErrorKind.resolution, `Expecting metadata at property "${propertyKey.toString()}", none found`);
|
|
15
15
|
}
|
|
16
|
-
if (metadata.kind !== ClassElementMetadataKind_1.ClassElementMetadataKind.unmanaged
|
|
16
|
+
if (metadata.kind !== ClassElementMetadataKind_1.ClassElementMetadataKind.unmanaged &&
|
|
17
|
+
propertyNode.bindings !== undefined) {
|
|
17
18
|
instance[propertyKey] = resolveServiceNode(params, propertyNode);
|
|
18
19
|
if ((0, common_1.isPromise)(instance[propertyKey])) {
|
|
19
20
|
propertyAssignmentPromises.push((async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setInstanceProperties.js","sourceRoot":"","sources":["../../../../src/resolution/actions/setInstanceProperties.ts"],"names":[],"mappings":";;AAUA,
|
|
1
|
+
{"version":3,"file":"setInstanceProperties.js","sourceRoot":"","sources":["../../../../src/resolution/actions/setInstanceProperties.ts"],"names":[],"mappings":";;AAUA,sDAgDC;AA1DD,gDAAgD;AAEhD,8EAA2E;AAC3E,sFAAmF;AAEnF,6FAA0F;AAK1F,SAAgB,qBAAqB,CACnC,kBAGY;IAMZ,OAAO,CACL,MAAwB,EACxB,QAA0C,EAC1C,IAAyB,EACH,EAAE;QACxB,MAAM,0BAA0B,GAAoB,EAAE,CAAC;QAEvD,KAAK,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9D,MAAM,QAAQ,GACZ,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAEjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,uCAAkB,CAC1B,+CAAsB,CAAC,UAAU,EACjC,mCAAmC,WAAW,CAAC,QAAQ,EAAE,eAAe,CACzE,CAAC;YACJ,CAAC;YAED,IACE,QAAQ,CAAC,IAAI,KAAK,mDAAwB,CAAC,SAAS;gBACpD,YAAY,CAAC,QAAQ,KAAK,SAAS,EACnC,CAAC;gBACD,QAAQ,CAAC,WAAW,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAEjE,IAAI,IAAA,kBAAS,EAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;oBACrC,0BAA0B,CAAC,IAAI,CAC7B,CAAC,KAAK,IAAI,EAAE;wBACV,QAAQ,CAAC,WAAW,CAAC,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACtD,CAAC,CAAC,EAAE,CACL,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,0BAA0B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
package/lib/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{getReflectMetadata as e,updateReflectMetadata as n,setReflectMetadata as t}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as o}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as i,LazyServiceIdentifier as r,isPromise as s}from"@inversifyjs/common";const c={Request:"Request",Singleton:"Singleton",Transient:"Transient"},a={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ServiceRedirection:"ServiceRedirection"};function*u(...e){for(const n of e)yield*n}class d{#e;#n;#t;constructor(e){this.#e=new Map,this.#n={};for(const n of Reflect.ownKeys(e))this.#n[n]=new Map;this.#t=e}clone(){const e=Reflect.ownKeys(this.#t),n=new d(this.#t);this.#o(this.#e,n.#e);for(const t of e)this.#o(this.#n[t],n.#n[t]);return n}get(e,n){return this.#n[e].get(n)?.values()}getAllKeys(e){return this.#n[e].keys()}removeByRelation(e,n){const t=this.get(e,n);if(void 0!==t)for(const e of t){const n=this.#e.get(e);if(void 0===n)throw new Error("Expecting model relation, none found");this.#i(e,n),this.#e.delete(e)}}set(e,n){this.#e.set(e,n);for(const t of Reflect.ownKeys(n))this.#r(t,n[t]).add(e)}#r(e,n){let t=this.#n[e].get(n);return void 0===t&&(t=new Set,this.#n[e].set(n,t)),t}#o(e,n){for(const[t,o]of e)n.set(t,o)}#i(e,n){for(const t of Reflect.ownKeys(n))this.#s(e,t,n[t])}#s(e,n,t){const o=this.#n[n].get(t);void 0!==o&&(o.delete(e),0===o.size&&this.#n[n].delete(t))}}var l,f,p;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(l||(l={}));class g{#c;#a;constructor(e,n){this.#c=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new g(e)}add(e,n){this.#c.set(e,n)}clone(){return new g(this.#a,this.#c.clone())}get(e){const n=[],t=this.#c.get(l.serviceId,e);void 0!==t&&n.push(t);const o=this.#a?.get(e);if(void 0!==o&&n.push(o),0!==n.length)return u(...n)}removeAllByModuleId(e){this.#c.removeByRelation(l.moduleId,e)}removeAllByServiceId(e){this.#c.removeByRelation(l.serviceId,e)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class m{#u;#a;constructor(e,n){this.#u=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new m(e)}clone(){return new m(this.#a,this.#u.clone())}get(e){return this.getNonParentBindings(e)??this.#a?.get(e)}getNonParentBindings(e){return this.#u.get(f.serviceId,e)}getNonParentBoundServices(){return this.#u.getAllKeys(f.serviceId)}getByModuleId(e){return this.#u.get(f.moduleId,e)??this.#a?.getByModuleId(e)}removeAllByModuleId(e){this.#u.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#u.removeByRelation(f.serviceId,e)}set(e){const n={[f.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(n[f.moduleId]=e.moduleId),this.#u.set(e,n)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(p||(p={}));class v{#d;#a;constructor(e,n){this.#d=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new v(e)}add(e,n){this.#d.set(e,n)}clone(){return new v(this.#a,this.#d.clone())}get(e){const n=[],t=this.#d.get(p.serviceId,e);void 0!==t&&n.push(t);const o=this.#a?.get(e);if(void 0!==o&&n.push(o),0!==n.length)return u(...n)}removeAllByModuleId(e){this.#d.removeByRelation(p.moduleId,e)}removeAllByServiceId(e){this.#d.removeByRelation(p.serviceId,e)}}function h(e,n,t){const o=Array.isArray(e)?e:[e];if(void 0!==t)if("number"!=typeof t)Reflect.decorate(o,n.prototype,t);else for(const e of o)e(n,void 0,t);else Reflect.decorate(o,n)}const y="@inversifyjs/core/classMetadataReflectKey";function w(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const M="@inversifyjs/core/pendingClassMetadataCountReflectKey";const I=Symbol.for("@inversifyjs/core/InversifyCoreError");class b extends Error{[I];kind;constructor(e,n,t){super(n,t),this[I]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[I]}static isErrorOfKind(e,n){return b.is(e)&&e.kind===n}}var j,C,x;function $(n){const t=e(n,y)??w();if(!function(n){const t=e(n,M);return void 0!==t&&0!==t}(n))return function(e,n){const t=[];if(n.length<e.length)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${n.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<n.length;++e)void 0===n[e]&&t.push(e);if(t.length>0)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${t.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(n,t.constructorArguments),t;!function(e,n){const t=[];for(let o=0;o<n.constructorArguments.length;++o){const i=n.constructorArguments[o];void 0!==i&&i.kind!==C.unknown||t.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${o.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[o,i]of n.properties)i.kind===C.unknown&&t.push(` - Missing or incomplete metadata for type "${e.name}" at property "${o.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===t.length)throw new b(j.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new b(j.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${t.join("\n\n")}`)}(n,t)}function R(){return 0}function S(e){return t=>{void 0!==t&&t.kind===C.unknown&&n(e,M,R,(e=>e-1))}}function A(e,n){return(...t)=>o=>{if(void 0===o)return e(...t);if(o.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return n(o,...t)}}function T(e){if(e.kind!==C.unknown&&!0!==e.isFromTypescriptParamType)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(j||(j={})),function(e){e[e.unknown=0]="unknown"}(C||(C={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(x||(x={}));const D=A((function(e,n){return{kind:e,name:void 0,optional:!1,tags:new Map,value:n}}),(function(e,n,t){return T(e),{...e,kind:n,value:t}}));var k;function B(e,n,t,o){if(b.isErrorOfKind(o,j.injectionDecoratorConflict)){const i=function(e,n,t){if(void 0===t){if(void 0===n)throw new b(j.unknown,"Unexpected undefined property and index values");return{kind:k.property,property:n,targetClass:e.constructor}}return{index:t,kind:k.parameter,targetClass:e}}(e,n,t);throw new b(j.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${o.message}\n\nDetails\n\n${function(e){switch(e.kind){case k.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case k.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(i)}`,{cause:o})}throw o}function P(e,t){return(o,i,r)=>{void 0===r?function(e,t){const o=F(e,t);return(e,t)=>{n(e.constructor,y,w,function(e,n){return t=>{const o=t.properties.get(n);return t.properties.set(n,e(o)),t}}(o(e),t))}}(e,t)(o,i):function(e,t){const o=F(e,t);return(e,t,i)=>{if(!function(e,n){return"function"==typeof e&&void 0===n}(e,t))throw new Error(`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${t?.toString()??""}" at class "${e.constructor.name}"`);n(e,y,w,function(e,n){return t=>{const o=t.constructorArguments[n];return t.constructorArguments[n]=e(o),t}}(o(e),i))}}(e,t)(o,i,r)}}function F(e,n){return t=>{const o=n(t);return n=>(o(n),e(n))}}function N(e){const n=D(x.singleInjection,e);return(e,t,o)=>{try{void 0===o?P(n,S)(e,t):P(n,S)(e,t,o)}catch(n){B(e,t,o,n)}}}!function(e){e[e.parameter=0]="parameter",e[e.property=1]="property"}(k||(k={}));const E="@inversifyjs/core/classIsInjectableFlagReflectKey";const U=[Array,BigInt,Boolean,Function,Number,Object,String];function O(t){const o=e(t,"design:paramtypes");void 0!==o&&n(t,y,w,function(e){return n=>(e.forEach(((e,t)=>{var o;void 0!==n.constructorArguments[t]||(o=e,U.includes(o))||(n.constructorArguments[t]=function(e){return{isFromTypescriptParamType:!0,kind:x.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))})),n)}(o))}function K(o){return i=>{!function(n){if(void 0!==e(n,E))throw new b(j.injectionDecoratorConflict,"Cannot apply @injectable decorator multiple times");t(n,E,!0)}(i),O(i),void 0!==o&&n(i,y,w,(e=>({...e,scope:o})))}}function q(e,n,t){let o;return e.extendConstructorArguments??!1?(o=[...n.constructorArguments],t.constructorArguments.map(((e,n)=>{o[n]=e}))):o=t.constructorArguments,o}function V(e,n,t){let o;return o=e.extendProperties??!1?new Map(u(n.properties,t.properties)):t.properties,o}function z(e){return t=>{const o=$(e.type);n(t,y,w,function(e,n){const t=t=>({constructorArguments:q(e,n,t),lifecycle:t.lifecycle,properties:V(e,n,t),scope:t.scope});return t}(e,o))}}function G(e){return n=>{const t=o(n);if(void 0===t)throw new b(j.injectionDecoratorConflict,`Expected base type for type "${n.name}", none found.`);z({...e,type:t})(n)}}function H(e){const n=D(x.multipleInjection,e);return(e,t,o)=>{try{void 0===o?P(n,S)(e,t):P(n,S)(e,t,o)}catch(n){B(e,t,o,n)}}}function J(e){return t=>{void 0===t&&n(e,M,R,(e=>e+1))}}function L(e){return n=>{const t=n??{kind:C.unknown,name:void 0,optional:!1,tags:new Map};if(t.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(t)}}function Q(e){const n=L(function(e){return n=>{if(void 0!==n.name)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated named decorator");return n.name=e,n}}(e));return(e,t,o)=>{try{void 0===o?P(n,J)(e,t):P(n,J)(e,t,o)}catch(n){B(e,t,o,n)}}}function W(e){if(e.optional)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function X(){const e=L(W);return(n,t,o)=>{try{void 0===o?P(e,J)(n,t):P(e,J)(n,t,o)}catch(e){B(n,t,o,e)}}}function Y(){return(e,t,o)=>{try{n(e.constructor,y,w,(i=t,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=i,e}))}catch(n){B(e,t,void 0,n)}var i}}function Z(){return(e,t,o)=>{try{n(e.constructor,y,w,(i=t,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=i,e}))}catch(n){B(e,t,void 0,n)}var i}}function _(e,n){const t=L(function(e,n){return t=>{if(t.tags.has(e))throw new b(j.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return t.tags.set(e,n),t}}(e,n));return(e,n,o)=>{try{void 0===o?P(t,J)(e,n):P(t,J)(e,n,o)}catch(t){B(e,n,o,t)}}}function ee(){return{kind:x.unmanaged}}const ne=A(ee,(function(e){if(T(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return ee()}));function te(){const e=ne();return(n,t,o)=>{try{void 0===o?P(e,S)(n,t):P(e,S)(n,t,o)}catch(e){B(n,t,o,e)}}}class oe{last;constructor(e){this.last=e}concat(e){return new oe({elem:e,previous:this.last})}[Symbol.iterator](){let e=this.last;return{next:()=>{if(void 0===e)return{done:!0,value:void 0};const n=e.elem;return e=e.previous,{done:!1,value:n}}}}}function ie(e,n){e.servicesBranch.has(n)&&function(e,n){const t=(o=[...e.servicesBranch,n],[...o].map(i).join(" -> "));var o;throw new b(j.planning,`Circular dependency found: ${t}`)}(e,n),e.servicesBranch.add(n)}class re{#l;constructor(e){this.#l=e}get name(){return this.#l.elem.name}get tags(){return this.#l.elem.tags}get serviceIdentifier(){return this.#l.elem.serviceIdentifier}getAncestor(){if(void 0!==this.#l.previous)return new re(this.#l.previous)}}function se(e,n,t){const o=new re(n.last),i=t?.customServiceIdentifier??o.serviceIdentifier;return[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(o)))}function ce(e){return void 0!==e.redirections}function ae(e,n,t){let o,r;ce(t)?(o=t.binding.targetServiceIdentifier,r=t.binding.serviceIdentifier):(o=t.serviceIdentifier,r=t.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,n,t,o){if(0!==e.length){const n=`Ambiguous bindings found for service: "${i(t)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case a.Instance:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case a.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", redirection: "${i(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${de(t,o)}".`;throw new b(j.planning,n)}n||ue(t,o)}(e,n,o,r):function(e,n,t,o){if(void 0!==e||n)return;ue(t,o)}(e,n,o,r)}function ue(e,n){const t=`No bindings found for service: "${i(e)}".\n\nTrying to resolve bindings for "${de(e,n)}".`;throw new b(j.planning,t)}function de(e,n){return void 0===n?`${i(e)} (Root service)`:i(n)}function le(e,n){if(1!==e.redirections.length)ae(e.redirections,n,e);else{const[t]=e.redirections;ce(t)&&le(t,n)}}function fe(e,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[t]=e.bindings;ce(t)&&le(t,n)}else ae(e.bindings,n,e)}function pe(e){const n=new Map;void 0!==e.rootConstraints.tag&&n.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const t=new oe({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:n},previous:void 0}),o=se(e,t),i=[],r={bindings:i,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(i.push(...ve(e,t,o,r)),!e.rootConstraints.isMultiple){fe(r,e.rootConstraints.isOptional??!1);const[n]=i;r.bindings=n}return{tree:{root:r}}}function ge(e,n,t,o){const i={binding:n,classMetadata:e.getClassMetadata(n.implementationType),constructorParams:[],parent:o,propertyParams:new Map};return function(e,n){const t=e.node.classMetadata;for(const[o,i]of t.constructorArguments.entries())e.node.constructorParams[o]=me(e,n,i);for(const[o,i]of t.properties){const t=me(e,n,i);void 0!==t&&e.node.propertyParams.set(o,t)}return e.node}({getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:i,servicesBranch:e.servicesBranch},t)}function me(e,n,t){if(t.kind===x.unmanaged)return;const o=r.is(t.value)?t.value.unwrap():t.value,i=n.concat({name:t.name,serviceIdentifier:o,tags:t.tags}),s=se(e,i),c=[],a={bindings:c,parent:e.node,serviceIdentifier:o};if(c.push(...ve(e,i,s,a)),t.kind===x.singleInjection){fe(a,t.optional);const[e]=c;a.bindings=e}return a}function ve(e,n,t,o){const i=ce(o)?o.binding.targetServiceIdentifier:o.serviceIdentifier;ie(e,i);const r=[];for(const i of t)switch(i.type){case a.Instance:r.push(ge(e,i,n,o));break;case a.ServiceRedirection:{const t=he(e,n,i,o);r.push(t);break}default:r.push({binding:i,parent:o})}return e.servicesBranch.delete(i),r}function he(e,n,t,o){const i={binding:t,parent:o,redirections:[]},r=se(e,n,{customServiceIdentifier:t.targetServiceIdentifier});return i.redirections.push(...ve(e,n,r,i)),i}function ye(e,n,t){const o=e.getActivations(n);return void 0===o?t:s(t)?we(e,t,o[Symbol.iterator]()):function(e,n,t){let o=n,i=t.next();for(;!0!==i.done;){const n=i.value(e.context,o);if(s(n))return we(e,n,t);o=n,i=t.next()}return o}(e,t,o[Symbol.iterator]())}async function we(e,n,t){let o=await n,i=t.next();for(;!0!==i.done;)o=await i.value(e.context,o),i=t.next();return o}function Me(e,n,t){let o=t;if(void 0!==n.onActivation){const t=n.onActivation;o=s(o)?o.then((n=>t(e.context,n))):t(e.context,o)}return ye(e,n.serviceIdentifier,o)}function Ie(e){return(n,t)=>{if(t.cache.isRight)return t.cache.value;const o=Me(n,t,e(n,t));return t.cache={isRight:!0,value:o},o}}const be=Ie((function(e,n){return n.value}));function je(e){return e}function Ce(e,n){return(t,o)=>{const i=e(o);switch(i.scope){case c.Singleton:{if(i.cache.isRight)return i.cache.value;const e=xe(t,o,i,n);return i.cache={isRight:!0,value:e},e}case c.Request:{if(t.requestScopeCache.has(i.id))return t.requestScopeCache.get(i.id);const e=xe(t,o,i,n);return t.requestScopeCache.set(i.id,e),e}case c.Transient:return xe(t,o,i,n)}}}function xe(e,n,t,o){return Me(e,t,o(e,n))}const $e=(e=>Ce(je,e))((function(e,n){return n.value(e.context)}));const Re=Ie((function(e,n){return n.factory(e.context)}));function Se(e,n,t){const o=function(e,n,t){if(void 0===t)return;if(!(t in e))throw new b(j.resolution,`Expecting a "${t.toString()}" property when resolving "${n.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[t])throw new b(j.resolution,`Expecting a "${t.toString()}" method when resolving "${n.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let o;try{o=e[t]()}catch(e){throw new b(j.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${n.implementationType.name}"`,{cause:e})}if(s(o))return async function(e,n,t){try{await t}catch(t){throw new b(j.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:t})}}(n,t,o)}}(e,n,t);return s(o)?o.then((()=>e)):e}function Ae(e){return(n,t,o)=>{const i=new o.binding.implementationType(...n),r=e(t,i,o);return s(r)?r.then((()=>Se(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName))):Se(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName)}}const Te=Ie((function(e,n){return n.provider(e.context)}));function De(e){return e.binding}const ke=function(e){return(n,t,o)=>{const i=[];for(const[r,c]of o.propertyParams){const a=o.classMetadata.properties.get(r);if(void 0===a)throw new b(j.resolution,`Expecting metadata at property "${r.toString()}", none found`);a.kind!==x.unmanaged&&(t[r]=e(n,c),s(t[r])&&i.push((async()=>{t[r]=await t[r]})()))}if(i.length>0)return Promise.all(i).then((()=>{}))}}(Ue),Be=function(e){return function n(t,o){const i=[];for(const r of o.redirections)ce(r)?i.push(...n(t,r)):i.push(e(t,r));return i}}(Ee),Pe=function(e,n,t){return(o,i)=>{const r=e(o,i);return s(r)?n(r,o,i):t(r,o,i)}}(function(e){return(n,t)=>{const o=[];for(const i of t.constructorParams)void 0===i?o.push(void 0):o.push(e(n,i));return o.some(s)?Promise.all(o):o}}(Ue),function(e){return async(n,t,o)=>{const i=await n;return e(i,t,o)}}(Ae(ke)),Ae(ke)),Fe=(e=>Ce(De,e))(Pe);function Ne(e){return Ue(e,e.planResult.tree.root)}function Ee(e,n){switch(n.binding.type){case a.ConstantValue:return be(e,n.binding);case a.DynamicValue:return $e(e,n.binding);case a.Factory:return Re(e,n.binding);case a.Instance:return Fe(e,n);case a.Provider:return Te(e,n.binding)}}function Ue(e,n){if(void 0!==n.bindings)return Array.isArray(n.bindings)?function(e,n){const t=[];for(const o of n)ce(o)?t.push(...Be(e,o)):t.push(Ee(e,o));if(t.some(s))return Promise.all(t);return t}(e,n.bindings):function(e,n){if(ce(n)){const t=Be(e,n);if(1===t.length)return t[0];throw new b(j.resolution,"Unexpected multiple resolved values on single injection")}return Ee(e,n)}(e,n.bindings)}function Oe(e){return void 0!==e.scope}function Ke(e,n){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof n[e.lifecycle.preDestroyMethodName])return n[e.lifecycle.preDestroyMethodName]()}function qe(e,n,t){const o=e.getDeactivations(n);if(void 0!==o)return s(t)?Ve(t,o[Symbol.iterator]()):function(e,n){let t=n.next();for(;!0!==t.done;){const o=t.value(e);if(s(o))return Ve(e,n);t=n.next()}}(t,o[Symbol.iterator]())}async function Ve(e,n){const t=await e;let o=n.next();for(;!0!==o.done;)await o.value(t),o=n.next()}function ze(e,n){const t=function(e,n){if(n.type===a.Instance){const t=e.getClassMetadata(n.implementationType),o=n.cache.value;return s(o)?o.then((e=>Ke(t,e))):Ke(t,o)}}(e,n);return void 0===t?Ge(e,n):t.then((()=>Ge(e,n)))}function Ge(e,n){const t=n.cache;return s(t.value)?t.value.then((t=>He(e,n,t))):He(e,n,t.value)}function He(e,n,t){let o;if(void 0!==n.onDeactivation){o=(0,n.onDeactivation)(t)}return void 0===o?qe(e,n.serviceIdentifier,t):o.then((()=>qe(e,n.serviceIdentifier,t)))}function Je(e,n){if(void 0===n)return;const t=function(e){const n=[];for(const t of e)Oe(t)&&t.scope===c.Singleton&&t.cache.isRight&&n.push(t);return n}(n),o=[];for(const n of t){const t=ze(e,n);void 0!==t&&o.push(t)}return o.length>0?Promise.all(o).then((()=>{})):void 0}function Le(e,n){const t=e.getBindingsFromModule(n);return Je(e,t)}function Qe(e,n){const t=e.getBindings(n);return Je(e,t)}export{g as ActivationsService,m as BindingService,x as ClassElementMetadataKind,v as DeactivationsService,c as bindingScopeValues,a as bindingTypeValues,h as decorate,$ as getClassMetadata,N as inject,G as injectFromBase,K as injectable,H as multiInject,Q as named,X as optional,pe as plan,Y as postConstruct,Z as preDestroy,Ne as resolve,Le as resolveModuleDeactivations,Qe as resolveServiceDeactivations,_ as tagged,te as unmanaged};
|
|
1
|
+
import{getOwnReflectMetadata as e,updateOwnReflectMetadata as n,setReflectMetadata as t}from"@inversifyjs/reflect-metadata-utils";import{getBaseType as o}from"@inversifyjs/prototype-utils";import{stringifyServiceIdentifier as i,LazyServiceIdentifier as r,isPromise as s}from"@inversifyjs/common";const c={Request:"Request",Singleton:"Singleton",Transient:"Transient"},a={ConstantValue:"ConstantValue",DynamicValue:"DynamicValue",Factory:"Factory",Instance:"Instance",Provider:"Provider",ServiceRedirection:"ServiceRedirection"};function*u(...e){for(const n of e)yield*n}class d{#e;#n;#t;constructor(e){this.#e=new Map,this.#n={};for(const n of Reflect.ownKeys(e))this.#n[n]=new Map;this.#t=e}clone(){const e=Reflect.ownKeys(this.#t),n=new d(this.#t);this.#o(this.#e,n.#e);for(const t of e)this.#o(this.#n[t],n.#n[t]);return n}get(e,n){return this.#n[e].get(n)?.values()}getAllKeys(e){return this.#n[e].keys()}removeByRelation(e,n){const t=this.get(e,n);if(void 0!==t)for(const e of t){const n=this.#e.get(e);if(void 0===n)throw new Error("Expecting model relation, none found");this.#i(e,n),this.#e.delete(e)}}set(e,n){this.#e.set(e,n);for(const t of Reflect.ownKeys(n))this.#r(t,n[t]).add(e)}#r(e,n){let t=this.#n[e].get(n);return void 0===t&&(t=new Set,this.#n[e].set(n,t)),t}#o(e,n){for(const[t,o]of e)n.set(t,o)}#i(e,n){for(const t of Reflect.ownKeys(n))this.#s(e,t,n[t])}#s(e,n,t){const o=this.#n[n].get(t);void 0!==o&&(o.delete(e),0===o.size&&this.#n[n].delete(t))}}var l,f,p;!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(l||(l={}));class g{#c;#a;constructor(e,n){this.#c=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new g(e)}add(e,n){this.#c.set(e,n)}clone(){return new g(this.#a,this.#c.clone())}get(e){const n=[],t=this.#c.get(l.serviceId,e);void 0!==t&&n.push(t);const o=this.#a?.get(e);if(void 0!==o&&n.push(o),0!==n.length)return u(...n)}removeAllByModuleId(e){this.#c.removeByRelation(l.moduleId,e)}removeAllByServiceId(e){this.#c.removeByRelation(l.serviceId,e)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(f||(f={}));class m{#u;#a;constructor(e,n){this.#u=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new m(e)}clone(){return new m(this.#a,this.#u.clone())}get(e){return this.getNonParentBindings(e)??this.#a?.get(e)}getNonParentBindings(e){return this.#u.get(f.serviceId,e)}getNonParentBoundServices(){return this.#u.getAllKeys(f.serviceId)}getByModuleId(e){return this.#u.get(f.moduleId,e)??this.#a?.getByModuleId(e)}removeAllByModuleId(e){this.#u.removeByRelation(f.moduleId,e)}removeAllByServiceId(e){this.#u.removeByRelation(f.serviceId,e)}set(e){const n={[f.serviceId]:e.serviceIdentifier};void 0!==e.moduleId&&(n[f.moduleId]=e.moduleId),this.#u.set(e,n)}}!function(e){e.moduleId="moduleId",e.serviceId="serviceId"}(p||(p={}));class v{#d;#a;constructor(e,n){this.#d=n??new d({moduleId:{isOptional:!0},serviceId:{isOptional:!1}}),this.#a=e}static build(e){return new v(e)}add(e,n){this.#d.set(e,n)}clone(){return new v(this.#a,this.#d.clone())}get(e){const n=[],t=this.#d.get(p.serviceId,e);void 0!==t&&n.push(t);const o=this.#a?.get(e);if(void 0!==o&&n.push(o),0!==n.length)return u(...n)}removeAllByModuleId(e){this.#d.removeByRelation(p.moduleId,e)}removeAllByServiceId(e){this.#d.removeByRelation(p.serviceId,e)}}function h(e,n,t){const o=Array.isArray(e)?e:[e];if(void 0!==t)if("number"!=typeof t)Reflect.decorate(o,n.prototype,t);else for(const e of o)e(n,void 0,t);else Reflect.decorate(o,n)}const y="@inversifyjs/core/classMetadataReflectKey";function w(){return{constructorArguments:[],lifecycle:{postConstructMethodName:void 0,preDestroyMethodName:void 0},properties:new Map,scope:void 0}}const M="@inversifyjs/core/pendingClassMetadataCountReflectKey";const I=Symbol.for("@inversifyjs/core/InversifyCoreError");class b extends Error{[I];kind;constructor(e,n,t){super(n,t),this[I]=!0,this.kind=e}static is(e){return"object"==typeof e&&null!==e&&!0===e[I]}static isErrorOfKind(e,n){return b.is(e)&&e.kind===n}}var j,C,x;function $(n){const t=e(n,y)??w();if(!function(n){const t=e(n,M);return void 0!==t&&0!==t}(n))return function(e,n){const t=[];if(n.length<e.length)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}". "${e.name}" constructor requires at least ${e.length.toString()} arguments, found ${n.length.toString()} instead.\nAre you using @inject, @multiInject or @unmanaged decorators in every non optional constructor argument?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`);for(let e=0;e<n.length;++e)void 0===n[e]&&t.push(e);if(t.length>0)throw new b(j.missingInjectionDecorator,`Found unexpected missing metadata on type "${e.name}" at constructor indexes "${t.join('", "')}".\n\nAre you using @inject, @multiInject or @unmanaged decorators at those indexes?\n\nIf you're using typescript and want to rely on auto injection, set "emitDecoratorMetadata" compiler option to true`)}(n,t.constructorArguments),t;!function(e,n){const t=[];for(let o=0;o<n.constructorArguments.length;++o){const i=n.constructorArguments[o];void 0!==i&&i.kind!==C.unknown||t.push(` - Missing or incomplete metadata for type "${e.name}" at constructor argument with index ${o.toString()}.\nEvery constructor parameter must be decorated either with @inject, @multiInject or @unmanaged decorator.`)}for(const[o,i]of n.properties)i.kind===C.unknown&&t.push(` - Missing or incomplete metadata for type "${e.name}" at property "${o.toString()}".\nThis property must be decorated either with @inject or @multiInject decorator.`);if(0===t.length)throw new b(j.unknown,`Unexpected class metadata for type "${e.name}" with uncompletion traces.\nThis might be caused by one of the following reasons:\n\n1. A third party library is targeting inversify reflection metadata.\n2. A bug is causing the issue. Consider submiting an issue to fix it.`);throw new b(j.missingInjectionDecorator,`Invalid class metadata at type ${e.name}:\n\n${t.join("\n\n")}`)}(n,t)}function R(){return 0}function S(e){return t=>{void 0!==t&&t.kind===C.unknown&&n(e,M,R,(e=>e-1))}}function A(e,n){return(...t)=>o=>{if(void 0===o)return e(...t);if(o.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found");return n(o,...t)}}function T(e){if(e.kind!==C.unknown&&!0!==e.isFromTypescriptParamType)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Multiple @inject, @multiInject or @unmanaged decorators found")}!function(e){e[e.injectionDecoratorConflict=0]="injectionDecoratorConflict",e[e.missingInjectionDecorator=1]="missingInjectionDecorator",e[e.planning=2]="planning",e[e.resolution=3]="resolution",e[e.unknown=4]="unknown"}(j||(j={})),function(e){e[e.unknown=32]="unknown"}(C||(C={})),function(e){e[e.multipleInjection=0]="multipleInjection",e[e.singleInjection=1]="singleInjection",e[e.unmanaged=2]="unmanaged"}(x||(x={}));const D=A((function(e,n){return{kind:e,name:void 0,optional:!1,tags:new Map,value:n}}),(function(e,n,t){return T(e),{...e,kind:n,value:t}}));var k;function B(e,n,t,o){if(b.isErrorOfKind(o,j.injectionDecoratorConflict)){const i=function(e,n,t){if(void 0===t){if(void 0===n)throw new b(j.unknown,"Unexpected undefined property and index values");return{kind:k.property,property:n,targetClass:e.constructor}}return{index:t,kind:k.parameter,targetClass:e}}(e,n,t);throw new b(j.injectionDecoratorConflict,`Unexpected injection error.\n\nCause:\n\n${o.message}\n\nDetails\n\n${function(e){switch(e.kind){case k.parameter:return`[class: "${e.targetClass.name}", index: "${e.index.toString()}"]`;case k.property:return`[class: "${e.targetClass.name}", property: "${e.property.toString()}"]`}}(i)}`,{cause:o})}throw o}function P(e,t){return(o,i,r)=>{void 0===r?function(e,t){const o=F(e,t);return(e,t)=>{n(e.constructor,y,w,function(e,n){return t=>{const o=t.properties.get(n);return t.properties.set(n,e(o)),t}}(o(e),t))}}(e,t)(o,i):function(e,t){const o=F(e,t);return(e,t,i)=>{if(!function(e,n){return"function"==typeof e&&void 0===n}(e,t))throw new Error(`Found an @inject decorator in a non constructor parameter.\nFound @inject decorator at method "${t?.toString()??""}" at class "${e.constructor.name}"`);n(e,y,w,function(e,n){return t=>{const o=t.constructorArguments[n];return t.constructorArguments[n]=e(o),t}}(o(e),i))}}(e,t)(o,i,r)}}function F(e,n){return t=>{const o=n(t);return n=>(o(n),e(n))}}function N(e){const n=D(x.singleInjection,e);return(e,t,o)=>{try{void 0===o?P(n,S)(e,t):P(n,S)(e,t,o)}catch(n){B(e,t,o,n)}}}!function(e){e[e.parameter=0]="parameter",e[e.property=1]="property"}(k||(k={}));const E="@inversifyjs/core/classIsInjectableFlagReflectKey";const U=[Array,BigInt,Boolean,Function,Number,Object,String];function O(t){const o=e(t,"design:paramtypes");void 0!==o&&n(t,y,w,function(e){return n=>(e.forEach(((e,t)=>{var o;void 0!==n.constructorArguments[t]||(o=e,U.includes(o))||(n.constructorArguments[t]=function(e){return{isFromTypescriptParamType:!0,kind:x.singleInjection,name:void 0,optional:!1,tags:new Map,value:e}}(e))})),n)}(o))}function K(o){return i=>{!function(n){if(void 0!==e(n,E))throw new b(j.injectionDecoratorConflict,`Cannot apply @injectable decorator multiple times at class "${n.name}"`);t(n,E,!0)}(i),O(i),void 0!==o&&n(i,y,w,(e=>({...e,scope:o})))}}function q(e,n,t){let o;return e.extendConstructorArguments??!1?(o=[...n.constructorArguments],t.constructorArguments.map(((e,n)=>{o[n]=e}))):o=t.constructorArguments,o}function V(e,n,t){let o;return o=e.extendProperties??!1?new Map(u(n.properties,t.properties)):t.properties,o}function z(e){return t=>{const o=$(e.type);n(t,y,w,function(e,n){const t=t=>({constructorArguments:q(e,n,t),lifecycle:t.lifecycle,properties:V(e,n,t),scope:t.scope});return t}(e,o))}}function G(e){return n=>{const t=o(n);if(void 0===t)throw new b(j.injectionDecoratorConflict,`Expected base type for type "${n.name}", none found.`);z({...e,type:t})(n)}}function H(e){const n=D(x.multipleInjection,e);return(e,t,o)=>{try{void 0===o?P(n,S)(e,t):P(n,S)(e,t,o)}catch(n){B(e,t,o,n)}}}function J(e){return t=>{void 0===t&&n(e,M,R,(e=>e+1))}}function L(e){return n=>{const t=n??{kind:C.unknown,name:void 0,optional:!1,tags:new Map};if(t.kind===x.unmanaged)throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return e(t)}}function Q(e){const n=L(function(e){return n=>{if(void 0!==n.name)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated named decorator");return n.name=e,n}}(e));return(e,t,o)=>{try{void 0===o?P(n,J)(e,t):P(n,J)(e,t,o)}catch(n){B(e,t,o,n)}}}function W(e){if(e.optional)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated optional decorator");return e.optional=!0,e}function X(){const e=L(W);return(n,t,o)=>{try{void 0===o?P(e,J)(n,t):P(e,J)(n,t,o)}catch(e){B(n,t,o,e)}}}function Y(){return(e,t,o)=>{try{n(e.constructor,y,w,(i=t,e=>{if(void 0!==e.lifecycle.postConstructMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated postConstruct decorator");return e.lifecycle.postConstructMethodName=i,e}))}catch(n){B(e,t,void 0,n)}var i}}function Z(){return(e,t,o)=>{try{n(e.constructor,y,w,(i=t,e=>{if(void 0!==e.lifecycle.preDestroyMethodName)throw new b(j.injectionDecoratorConflict,"Unexpected duplicated preDestroy decorator");return e.lifecycle.preDestroyMethodName=i,e}))}catch(n){B(e,t,void 0,n)}var i}}function _(e,n){const t=L(function(e,n){return t=>{if(t.tags.has(e))throw new b(j.injectionDecoratorConflict,"Unexpected duplicated tag decorator with existing tag");return t.tags.set(e,n),t}}(e,n));return(e,n,o)=>{try{void 0===o?P(t,J)(e,n):P(t,J)(e,n,o)}catch(t){B(e,n,o,t)}}}function ee(){return{kind:x.unmanaged}}const ne=A(ee,(function(e){if(T(e),function(e){return void 0!==e.name||e.optional||e.tags.size>0}(e))throw new b(j.injectionDecoratorConflict,"Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections");return ee()}));function te(){const e=ne();return(n,t,o)=>{try{void 0===o?P(e,S)(n,t):P(e,S)(n,t,o)}catch(e){B(n,t,o,e)}}}class oe{last;constructor(e){this.last=e}concat(e){return new oe({elem:e,previous:this.last})}[Symbol.iterator](){let e=this.last;return{next:()=>{if(void 0===e)return{done:!0,value:void 0};const n=e.elem;return e=e.previous,{done:!1,value:n}}}}}function ie(e,n){e.servicesBranch.has(n)&&function(e,n){const t=(o=[...e.servicesBranch,n],[...o].map(i).join(" -> "));var o;throw new b(j.planning,`Circular dependency found: ${t}`)}(e,n),e.servicesBranch.add(n)}class re{#l;constructor(e){this.#l=e}get name(){return this.#l.elem.name}get tags(){return this.#l.elem.tags}get serviceIdentifier(){return this.#l.elem.serviceIdentifier}getAncestor(){if(void 0!==this.#l.previous)return new re(this.#l.previous)}}function se(e,n,t){const o=new re(n.last),i=t?.customServiceIdentifier??o.serviceIdentifier;return[...e.getBindings(i)??[]].filter((e=>e.isSatisfiedBy(o)))}function ce(e){return void 0!==e.redirections}function ae(e,n,t){let o,r;ce(t)?(o=t.binding.targetServiceIdentifier,r=t.binding.serviceIdentifier):(o=t.serviceIdentifier,r=t.parent?.binding.serviceIdentifier),Array.isArray(e)?function(e,n,t,o){if(0!==e.length){const n=`Ambiguous bindings found for service: "${i(t)}".\n\nRegistered bindings:\n\n${e.map((e=>function(e){switch(e.type){case a.Instance:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}", implementationType: "${e.implementationType.name}" ]`;case a.ServiceRedirection:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", redirection: "${i(e.targetServiceIdentifier)}" ]`;default:return`[ type: "${e.type}", serviceIdentifier: "${i(e.serviceIdentifier)}", scope: "${e.scope}" ]`}}(e.binding))).join("\n")}\n\nTrying to resolve bindings for "${de(t,o)}".`;throw new b(j.planning,n)}n||ue(t,o)}(e,n,o,r):function(e,n,t,o){if(void 0!==e||n)return;ue(t,o)}(e,n,o,r)}function ue(e,n){const t=`No bindings found for service: "${i(e)}".\n\nTrying to resolve bindings for "${de(e,n)}".`;throw new b(j.planning,t)}function de(e,n){return void 0===n?`${i(e)} (Root service)`:i(n)}function le(e,n){if(1!==e.redirections.length)ae(e.redirections,n,e);else{const[t]=e.redirections;ce(t)&&le(t,n)}}function fe(e,n){if(Array.isArray(e.bindings)&&1===e.bindings.length){const[t]=e.bindings;ce(t)&&le(t,n)}else ae(e.bindings,n,e)}function pe(e){const n=new Map;void 0!==e.rootConstraints.tag&&n.set(e.rootConstraints.tag.key,e.rootConstraints.tag.value);const t=new oe({elem:{name:e.rootConstraints.name,serviceIdentifier:e.rootConstraints.serviceIdentifier,tags:n},previous:void 0}),o=se(e,t),i=[],r={bindings:i,parent:void 0,serviceIdentifier:e.rootConstraints.serviceIdentifier};if(i.push(...ve(e,t,o,r)),!e.rootConstraints.isMultiple){fe(r,e.rootConstraints.isOptional??!1);const[n]=i;r.bindings=n}return{tree:{root:r}}}function ge(e,n,t,o){const i={binding:n,classMetadata:e.getClassMetadata(n.implementationType),constructorParams:[],parent:o,propertyParams:new Map};return function(e,n){const t=e.node.classMetadata;for(const[o,i]of t.constructorArguments.entries())e.node.constructorParams[o]=me(e,n,i);for(const[o,i]of t.properties){const t=me(e,n,i);void 0!==t&&e.node.propertyParams.set(o,t)}return e.node}({getBindings:e.getBindings,getClassMetadata:e.getClassMetadata,node:i,servicesBranch:e.servicesBranch},t)}function me(e,n,t){if(t.kind===x.unmanaged)return;const o=r.is(t.value)?t.value.unwrap():t.value,i=n.concat({name:t.name,serviceIdentifier:o,tags:t.tags}),s=se(e,i),c=[],a={bindings:c,parent:e.node,serviceIdentifier:o};if(c.push(...ve(e,i,s,a)),t.kind===x.singleInjection){fe(a,t.optional);const[e]=c;a.bindings=e}return a}function ve(e,n,t,o){const i=ce(o)?o.binding.targetServiceIdentifier:o.serviceIdentifier;ie(e,i);const r=[];for(const i of t)switch(i.type){case a.Instance:r.push(ge(e,i,n,o));break;case a.ServiceRedirection:{const t=he(e,n,i,o);r.push(t);break}default:r.push({binding:i,parent:o})}return e.servicesBranch.delete(i),r}function he(e,n,t,o){const i={binding:t,parent:o,redirections:[]},r=se(e,n,{customServiceIdentifier:t.targetServiceIdentifier});return i.redirections.push(...ve(e,n,r,i)),i}function ye(e,n,t){const o=e.getActivations(n);return void 0===o?t:s(t)?we(e,t,o[Symbol.iterator]()):function(e,n,t){let o=n,i=t.next();for(;!0!==i.done;){const n=i.value(e.context,o);if(s(n))return we(e,n,t);o=n,i=t.next()}return o}(e,t,o[Symbol.iterator]())}async function we(e,n,t){let o=await n,i=t.next();for(;!0!==i.done;)o=await i.value(e.context,o),i=t.next();return o}function Me(e,n,t){let o=t;if(void 0!==n.onActivation){const t=n.onActivation;o=s(o)?o.then((n=>t(e.context,n))):t(e.context,o)}return ye(e,n.serviceIdentifier,o)}function Ie(e){return(n,t)=>{if(t.cache.isRight)return t.cache.value;const o=Me(n,t,e(n,t));return t.cache={isRight:!0,value:o},o}}const be=Ie((function(e,n){return n.value}));function je(e){return e}function Ce(e,n){return(t,o)=>{const i=e(o);switch(i.scope){case c.Singleton:{if(i.cache.isRight)return i.cache.value;const e=xe(t,o,i,n);return i.cache={isRight:!0,value:e},e}case c.Request:{if(t.requestScopeCache.has(i.id))return t.requestScopeCache.get(i.id);const e=xe(t,o,i,n);return t.requestScopeCache.set(i.id,e),e}case c.Transient:return xe(t,o,i,n)}}}function xe(e,n,t,o){return Me(e,t,o(e,n))}const $e=(e=>Ce(je,e))((function(e,n){return n.value(e.context)}));const Re=Ie((function(e,n){return n.factory(e.context)}));function Se(e,n,t){const o=function(e,n,t){if(void 0===t)return;if(!(t in e))throw new b(j.resolution,`Expecting a "${t.toString()}" property when resolving "${n.implementationType.name}" class @postConstruct decorated method, none found.`);if("function"!=typeof e[t])throw new b(j.resolution,`Expecting a "${t.toString()}" method when resolving "${n.implementationType.name}" class @postConstruct decorated method, a non function property was found instead.`);{let o;try{o=e[t]()}catch(e){throw new b(j.resolution,`Unexpected error found when calling "${t.toString()}" @postConstruct decorated method on class "${n.implementationType.name}"`,{cause:e})}if(s(o))return async function(e,n,t){try{await t}catch(t){throw new b(j.resolution,`Unexpected error found when calling "${n.toString()}" @postConstruct decorated method on class "${e.implementationType.name}"`,{cause:t})}}(n,t,o)}}(e,n,t);return s(o)?o.then((()=>e)):e}function Ae(e){return(n,t,o)=>{const i=new o.binding.implementationType(...n),r=e(t,i,o);return s(r)?r.then((()=>Se(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName))):Se(i,o.binding,o.classMetadata.lifecycle.postConstructMethodName)}}const Te=Ie((function(e,n){return n.provider(e.context)}));function De(e){return e.binding}const ke=function(e){return(n,t,o)=>{const i=[];for(const[r,c]of o.propertyParams){const a=o.classMetadata.properties.get(r);if(void 0===a)throw new b(j.resolution,`Expecting metadata at property "${r.toString()}", none found`);a.kind!==x.unmanaged&&void 0!==c.bindings&&(t[r]=e(n,c),s(t[r])&&i.push((async()=>{t[r]=await t[r]})()))}if(i.length>0)return Promise.all(i).then((()=>{}))}}(Ue),Be=function(e){return function n(t,o){const i=[];for(const r of o.redirections)ce(r)?i.push(...n(t,r)):i.push(e(t,r));return i}}(Ee),Pe=function(e,n,t){return(o,i)=>{const r=e(o,i);return s(r)?n(r,o,i):t(r,o,i)}}(function(e){return(n,t)=>{const o=[];for(const i of t.constructorParams)void 0===i?o.push(void 0):o.push(e(n,i));return o.some(s)?Promise.all(o):o}}(Ue),function(e){return async(n,t,o)=>{const i=await n;return e(i,t,o)}}(Ae(ke)),Ae(ke)),Fe=(e=>Ce(De,e))(Pe);function Ne(e){return Ue(e,e.planResult.tree.root)}function Ee(e,n){switch(n.binding.type){case a.ConstantValue:return be(e,n.binding);case a.DynamicValue:return $e(e,n.binding);case a.Factory:return Re(e,n.binding);case a.Instance:return Fe(e,n);case a.Provider:return Te(e,n.binding)}}function Ue(e,n){if(void 0!==n.bindings)return Array.isArray(n.bindings)?function(e,n){const t=[];for(const o of n)ce(o)?t.push(...Be(e,o)):t.push(Ee(e,o));if(t.some(s))return Promise.all(t);return t}(e,n.bindings):function(e,n){if(ce(n)){const t=Be(e,n);if(1===t.length)return t[0];throw new b(j.resolution,"Unexpected multiple resolved values on single injection")}return Ee(e,n)}(e,n.bindings)}function Oe(e){return void 0!==e.scope}function Ke(e,n){if(void 0!==e.lifecycle.preDestroyMethodName&&"function"==typeof n[e.lifecycle.preDestroyMethodName])return n[e.lifecycle.preDestroyMethodName]()}function qe(e,n,t){const o=e.getDeactivations(n);if(void 0!==o)return s(t)?Ve(t,o[Symbol.iterator]()):function(e,n){let t=n.next();for(;!0!==t.done;){const o=t.value(e);if(s(o))return Ve(e,n);t=n.next()}}(t,o[Symbol.iterator]())}async function Ve(e,n){const t=await e;let o=n.next();for(;!0!==o.done;)await o.value(t),o=n.next()}function ze(e,n){const t=function(e,n){if(n.type===a.Instance){const t=e.getClassMetadata(n.implementationType),o=n.cache.value;return s(o)?o.then((e=>Ke(t,e))):Ke(t,o)}}(e,n);return void 0===t?Ge(e,n):t.then((()=>Ge(e,n)))}function Ge(e,n){const t=n.cache;return s(t.value)?t.value.then((t=>He(e,n,t))):He(e,n,t.value)}function He(e,n,t){let o;if(void 0!==n.onDeactivation){o=(0,n.onDeactivation)(t)}return void 0===o?qe(e,n.serviceIdentifier,t):o.then((()=>qe(e,n.serviceIdentifier,t)))}function Je(e,n){if(void 0===n)return;const t=function(e){const n=[];for(const t of e)Oe(t)&&t.scope===c.Singleton&&t.cache.isRight&&n.push(t);return n}(n),o=[];for(const n of t){const t=ze(e,n);void 0!==t&&o.push(t)}return o.length>0?Promise.all(o).then((()=>{})):void 0}function Le(e,n){const t=e.getBindingsFromModule(n);return Je(e,t)}function Qe(e,n){const t=e.getBindings(n);return Je(e,t)}export{g as ActivationsService,m as BindingService,x as ClassElementMetadataKind,v as DeactivationsService,c as bindingScopeValues,a as bindingTypeValues,h as decorate,$ as getClassMetadata,N as inject,G as injectFromBase,K as injectable,H as multiInject,Q as named,X as optional,pe as plan,Y as postConstruct,Z as preDestroy,Ne as resolve,Le as resolveModuleDeactivations,Qe as resolveServiceDeactivations,_ as tagged,te as unmanaged};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/decorator/models/DecoratorInfoKind.ts","../../src/metadata/calculations/handleInjectionError.ts","../../src/decorator/calculations/getDecoratorInfo.ts","../../src/decorator/calculations/stringifyDecoratorInfo.ts","../../src/metadata/decorators/injectBase.ts","../../src/metadata/actions/updateMaybeClassMetadataProperty.ts","../../src/metadata/actions/updateMaybeClassMetadataConstructorArgument.ts","../../src/metadata/decorators/inject.ts","../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts","../../src/metadata/calculations/isUserlandEmittedType.ts","../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts","../../src/reflectMetadata/data/typescriptDesignParameterTypesReflectKey.ts","../../src/metadata/calculations/buildClassElementMetadataFromTypescriptParameterType.ts","../../src/metadata/decorators/injectable.ts","../../src/metadata/actions/setIsInjectableFlag.ts","../../src/metadata/calculations/getExtendedConstructorArguments.ts","../../src/metadata/calculations/getExtendedProperties.ts","../../src/metadata/decorators/injectFrom.ts","../../src/metadata/decorators/injectFromBase.ts","../../src/metadata/decorators/multiInject.ts","../../src/metadata/actions/incrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildMaybeClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultMaybeClassElementMetadata.ts","../../src/metadata/decorators/named.ts","../../src/metadata/actions/updateMetadataName.ts","../../src/metadata/actions/updateMetadataOptional.ts","../../src/metadata/decorators/optional.ts","../../src/metadata/decorators/postConstruct.ts","../../src/metadata/actions/updateMaybeClassMetadataPostConstructor.ts","../../src/metadata/decorators/preDestroy.ts","../../src/metadata/actions/updateMaybeClassMetadataPreDestroy.ts","../../src/metadata/decorators/tagged.ts","../../src/metadata/actions/updateMetadataTag.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/actions/addBranchService.ts","../../src/binding/models/BindingMetadataImplementation.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/plan.ts","../../src/resolution/actions/resolveBindingServiceActivations.ts","../../src/resolution/actions/resolveBindingActivations.ts","../../src/resolution/actions/resolveSingletonScopedBinding.ts","../../src/resolution/actions/resolveConstantValueBinding.ts","../../src/resolution/calculations/resolveConstantValueBindingCallback.ts","../../src/common/calculations/getSelf.ts","../../src/resolution/actions/resolveScoped.ts","../../src/resolution/actions/resolveScopedBinding.ts","../../src/resolution/actions/resolveDynamicValueBinding.ts","../../src/resolution/calculations/resolveDynamicValueBindingCallback.ts","../../src/resolution/actions/resolveFactoryBinding.ts","../../src/resolution/calculations/resolveFactoryBindingCallback.ts","../../src/resolution/actions/resolvePostConstruct.ts","../../src/resolution/actions/resolveInstanceBindingNodeFromConstructorParams.ts","../../src/resolution/actions/resolveProviderBinding.ts","../../src/resolution/calculations/resolveProviderBindingCallback.ts","../../src/resolution/calculations/getInstanceNodeBinding.ts","../../src/resolution/actions/resolve.ts","../../src/resolution/actions/setInstanceProperties.ts","../../src/resolution/actions/resolveServiceRedirectionBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingConstructorParams.ts","../../src/resolution/actions/resolveInstanceBindingNodeAsyncFromConstructorParams.ts","../../src/resolution/actions/resolveScopedInstanceBindingNode.ts","../../src/binding/calculations/isScopedBinding.ts","../../src/resolution/actions/resolveBindingPreDestroy.ts","../../src/resolution/actions/resolveBindingServiceDeactivations.ts","../../src/resolution/actions/resolveBindingDeactivations.ts","../../src/resolution/actions/resolveBindingsDeactivations.ts","../../src/resolution/actions/resolveModuleDeactivations.ts","../../src/resolution/actions/resolveServiceDeactivations.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","clone","properties","pushEntriesIntoMap","property","get","key","value","values","getAllKeys","keys","removeByRelation","models","undefined","model","relation","Error","removeModelFromRelationMaps","delete","set","relationKey","buildOrGetRelationModelSet","add","relationValue","modelSet","Set","source","target","removeModelFromRelationMap","size","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","push","parentActivations","length","removeAllByModuleId","removeAllByServiceId","BindingService","bindingMaps","getNonParentBindings","getNonParentBoundServices","getByModuleId","binding","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","parsedDecorators","Array","isArray","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","scope","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","type","classMetadata","getReflectMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","metadata","updateReflectMetadata","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","targetClass","index","parameter","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updateMetadata","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","propertyMetadata","updateMaybeClassMetadataProperty","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","updateTargetPendingClassMetadataCount","inject","singleInjection","classIsInjectableFlagReflectKey","NON_USERLAND_TYPES","BigInt","Boolean","Function","Number","Object","String","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","includes","buildClassElementMetadataFromTypescriptParameterType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","setReflectMetadata","setIsInjectableFlag","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","hasManagedMetadata","SingleInmutableLinkedList","last","concat","elem","previous","iterator","node","next","done","addBranchService","servicesBranch","stringifiedCircularDependencies","serviceIdentifiers","stringifyServiceIdentifier","planning","throwError","BindingMetadataImplementation","getAncestor","buildFilteredServiceBindings","bindingMetadataList","bindingMetadata","customServiceIdentifier","getBindings","filter","isSatisfiedBy","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","targetServiceIdentifier","errorMessage","implementationType","stringifyBinding","stringifyParentServiceIdentifier","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","plan","rootConstraints","tag","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","elementMetadata","entries","buildPlanServiceNodeFromClassElementMetadata","planServiceNode","subplan","LazyServiceIdentifier","unwrap","updatedBindingMetadataList","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","resolveBindingServiceActivations","getActivations","isPromise","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","context","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","onActivation","then","resolved","resolveSingletonScopedBinding","resolve","cache","isRight","resolvedValue","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","resolveAndActivate","requestScopeCache","id","resolveDynamicValueBinding","resolveScopedBinding","resolveFactoryBinding","factory","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","provider","getInstanceNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","planResult","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","onDeactivation","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filteredBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"kSAEa,MAAAA,EAAuD,CAClEC,QAAS,UACTC,UAAW,YACXC,UAAW,aCGAC,EAAqD,CAChEC,cAAe,gBACfC,aAAc,eACdC,QAAS,UACTC,SAAU,WACVC,SAAU,WACVC,mBAAoB,+BCdLC,KAAYC,GAC3B,IAAK,MAAMC,KAAYD,QACdC,CAEX,OCWaC,EAGFC,GACAC,GACAC,GAET,WAAAC,CAAYD,GACVE,MAAKJ,EAAsB,IAAIK,IAE/BD,MAAKH,EAAwB,CAA2C,EAExE,IAAK,MAAMK,KAAgBC,QAAQC,QAAQN,GACzCE,MAAKH,EAAsBK,GAAgB,IAAID,IAGjDD,MAAKF,EAAQA,EAGR,KAAAO,GACL,MAAMC,EAAkCH,QAAQC,QAC9CJ,MAAKF,GAGDO,EAA6C,IAAIV,EACrDK,MAAKF,GAGPE,MAAKO,EACHP,MAAKJ,EACLS,GAAMT,GAGR,IAAK,MAAMY,KAAYF,EACrBN,MAAKO,EACHP,MAAKH,EAAsBW,GAC3BH,GAAMR,EAAsBW,IAIhC,OAAOH,EAGF,GAAAI,CACLC,EACAC,GAEA,OAAOX,MAAKH,EAAsBa,GAAKD,IAAIE,IAAQC,SAG9C,UAAAC,CACLH,GAEA,OAAOV,MAAKH,EAAsBa,GAAKI,OAGlC,gBAAAC,CACLL,EACAC,GAEA,MAAMK,EAAuChB,KAAKS,IAAIC,EAAKC,GAE3D,QAAeM,IAAXD,EAIJ,IAAK,MAAME,KAASF,EAAQ,CAC1B,MAAMG,EACJnB,MAAKJ,EAAoBa,IAAIS,GAE/B,QAAiBD,IAAbE,EACF,MAAM,IAAIC,MAAM,wCAGlBpB,MAAKqB,EAA6BH,EAAOC,GACzCnB,MAAKJ,EAAoB0B,OAAOJ,IAI7B,GAAAK,CAAIL,EAAeC,GACxBnB,MAAKJ,EAAoB2B,IAAIL,EAAOC,GAEpC,IAAK,MAAMK,KAAerB,QAAQC,QAChCe,GAEAnB,MAAKyB,EAA4BD,EAAaL,EAASK,IAAcE,IACnER,GAKN,EAAAO,CACED,EACAG,GAEA,IAAIC,EACF5B,MAAKH,EAAsB2B,GAAaf,IAAIkB,GAQ9C,YANiBV,IAAbW,IACFA,EAAW,IAAIC,IAEf7B,MAAKH,EAAsB2B,GAAaD,IAAII,EAAeC,IAGtDA,EAGT,EAAArB,CACEuB,EACAC,GAEA,IAAK,MAAOrB,EAAKC,KAAUmB,EACzBC,EAAOR,IAAIb,EAAKC,GAIpB,EAAAU,CAA6BH,EAAeC,GAC1C,IAAK,MAAMK,KAAerB,QAAQC,QAChCe,GAEAnB,MAAKgC,EACHd,EACAM,EACAL,EAASK,IAKf,EAAAQ,CACEd,EACAM,EACAG,GAEA,MAAMC,EACJ5B,MAAKH,EAAsB2B,GAAaf,IAAIkB,QAE7BV,IAAbW,IACFA,EAASN,OAAOJ,GAEM,IAAlBU,EAASK,MACXjC,MAAKH,EAAsB2B,GAAaF,OAAOK,KCpJvD,IAAKO,ECDAC,ECCAC,GFAL,SAAKF,GACHA,EAAA,SAAA,WACAA,EAAA,UAAA,WACD,CAHD,CAAKA,IAAAA,EAGJ,CAAA,UAOYG,EACFC,GAKAC,GAET,WAAAxC,CACEwC,EACAD,GAKAtC,MAAKsC,EACHA,GACA,IAAI3C,EAA+D,CACjE6C,SAAU,CACRC,YAAY,GAEdC,UAAW,CACTD,YAAY,KAIlBzC,MAAKuC,EAAUA,EAGV,YAAOI,CACZJ,GAEA,OAAO,IAAIF,EAAmBE,GAGzB,GAAAb,CACLkB,EACAzB,GAEAnB,MAAKsC,EAAgBf,IAAIqB,EAAYzB,GAGhC,KAAAd,GAML,OALkC,IAAIgC,EACpCrC,MAAKuC,EACLvC,MAAKsC,EAAgBjC,SAMlB,GAAAI,CACLoC,GAEA,MAAMC,EAAqD,GAErDC,EACJ/C,MAAKsC,EAAgB7B,IACnByB,EAAuBQ,UACvBG,QAGgB5B,IAAhB8B,GACFD,EAAoBE,KAAKD,GAG3B,MAAME,EACJjD,MAAKuC,GAAS9B,IAAIoC,GAMpB,QAJ0B5B,IAAtBgC,GACFH,EAAoBE,KAAKC,GAGQ,IAA/BH,EAAoBI,OAIxB,OAAO1D,KAASsD,GAGX,mBAAAK,CAAoBX,GACzBxC,MAAKsC,EAAgBvB,iBACnBmB,EAAuBM,SACvBA,GAIG,oBAAAY,CAAqBV,GAC1B1C,MAAKsC,EAAgBvB,iBACnBmB,EAAuBQ,UACvBA,KCrGN,SAAKP,GACHA,EAAA,SAAA,WACAA,EAAA,UAAA,WACD,CAHD,CAAKA,IAAAA,EAGJ,CAAA,UAOYkB,EACFC,GACAf,GAET,WAAAxC,CACEwC,EACAe,GAEAtD,MAAKsD,EACHA,GACA,IAAI3D,EAAoD,CACtD6C,SAAU,CACRC,YAAY,GAEdC,UAAW,CACTD,YAAY,KAIlBzC,MAAKuC,EAAUA,EAGV,YAAOI,CAAMJ,GAClB,OAAO,IAAIc,EAAed,GAGrB,KAAAlC,GAML,OAL8B,IAAIgD,EAChCrD,MAAKuC,EACLvC,MAAKsD,EAAajD,SAMf,GAAAI,CACLoC,GAEA,OACE7C,KAAKuD,qBAAqBV,IAC1B7C,MAAKuC,GAAS9B,IAAIoC,GAIf,oBAAAU,CACLb,GAEA,OAAO1C,MAAKsD,EAAa7C,IAAI0B,EAAoBO,UAAWA,GAKvD,yBAAAc,GACL,OAAOxD,MAAKsD,EAAazC,WAAWsB,EAAoBO,WAGnD,aAAAe,CACLjB,GAEA,OACGxC,MAAKsD,EAAa7C,IAAI0B,EAAoBK,SAAUA,IAEnCxC,MAAKuC,GAASkB,cAAcjB,GAI3C,mBAAAW,CAAoBX,GACzBxC,MAAKsD,EAAavC,iBAAiBoB,EAAoBK,SAAUA,GAG5D,oBAAAY,CAAqBV,GAC1B1C,MAAKsD,EAAavC,iBAChBoB,EAAoBO,UACpBA,GAIG,GAAAnB,CAAemC,GACpB,MAAMvC,EAA4B,CAChC,CAACgB,EAAoBO,WAAYgB,EAAQb,wBAGlB5B,IAArByC,EAAQlB,WACVrB,EAASgB,EAAoBK,UAAYkB,EAAQlB,UAGnDxC,MAAKsD,EAAa/B,IAAImC,EAA6BvC,KC/FvD,SAAKiB,GACHA,EAAA,SAAA,WACAA,EAAA,UAAA,WACD,CAHD,CAAKA,IAAAA,EAGJ,CAAA,UAOYuB,EACFC,GAKArB,GAET,WAAAxC,CACEwC,EACAqB,GAKA5D,MAAK4D,EACHA,GACA,IAAIjE,EAAmE,CACrE6C,SAAU,CACRC,YAAY,GAEdC,UAAW,CACTD,YAAY,KAIlBzC,MAAKuC,EAAUA,EAGV,YAAOI,CACZJ,GAEA,OAAO,IAAIoB,EAAqBpB,GAG3B,GAAAb,CACLmC,EACA1C,GAEAnB,MAAK4D,EAAkBrC,IAAIsC,EAAc1C,GAGpC,KAAAd,GAML,OALoC,IAAIsD,EACtC3D,MAAKuC,EACLvC,MAAK4D,EAAkBvD,SAMpB,GAAAI,CACLoC,GAEA,MAAMiB,EAAyD,GAEzDC,EACJ/D,MAAK4D,EAAkBnD,IACrB2B,EAAyBM,UACzBG,QAGkB5B,IAAlB8C,GACFD,EAAsBd,KAAKe,GAG7B,MAAMC,EACJhE,MAAKuC,GAAS9B,IAAIoC,GAMpB,QAJ4B5B,IAAxB+C,GACFF,EAAsBd,KAAKgB,GAGQ,IAAjCF,EAAsBZ,OAI1B,OAAO1D,KAASsE,GAGX,mBAAAX,CAAoBX,GACzBxC,MAAK4D,EAAkB7C,iBACrBqB,EAAyBI,SACzBA,GAIG,oBAAAY,CAAqBV,GAC1B1C,MAAK4D,EAAkB7C,iBACrBqB,EAAyBM,UACzBA,aCxFUuB,EACdC,EASAnC,EACAoC,GAEA,MAAMC,EAIoBC,MAAMC,QAAQJ,GACpCA,EACC,CAACA,GAMN,QAAiCjD,IAA7BkD,EAOJ,GAAwC,iBAA7BA,EAUXhE,QAAQ8D,SACNG,EACArC,EAAOwC,UACPJ,QAVA,IAAK,MAAMK,KAAaJ,EACtBI,EAAUzC,OAAQd,EAAWkD,QAR/BhE,QAAQ8D,SAASG,EAAsCrC,EAmB3D,CClEO,MAAM0C,EACX,qDCCcC,IACd,MAAO,CACLC,qBAAsB,GACtBC,UAAW,CACTC,6BAAyB5D,EACzB6D,0BAAsB7D,GAExBX,WAAY,IAAIL,IAChB8E,WAAO9D,EAEX,CCZO,MAAM+D,EACX,wDCCK,MAAMC,EAAkCC,OAAOC,IACpD,wCAGI,MAAOC,UAA2BhE,MAC/B6D,CAACA,GAEDI,KAEP,WAAAtF,CACEsF,EACAC,EACAC,GAEAC,MAAMF,EAASC,GAEfvF,KAAKiF,IAAoB,EACzBjF,KAAKqF,KAAOA,EAGP,SAAOI,CAAG9E,GACf,MACmB,iBAAVA,GACG,OAAVA,IACkE,IAAjEA,EAA2CsE,GAIzC,oBAAOS,CACZ/E,EACA0E,GAEA,OAAOD,EAAmBK,GAAG9E,IAAUA,EAAM0E,OAASA,GClC1D,IAAYM,ECAAC,ECAAC,ECUN,SAAUC,EAAiBC,GAC/B,MAAMC,EACJC,EAAmBF,EAAMtB,IACzBC,IAEF,ICVI,SAAiCqB,GACrC,MAAMG,EAAgDD,EACpDF,EACAf,GAGF,YACgC/D,IAA9BiF,GAAyE,IAA9BA,CAE/C,CDCMC,CAAuBJ,GAKzB,OEdY,SACdA,EACApF,GAEA,MAAMyF,EAA6B,GAEnC,GAAIzF,EAAMuC,OAAS6C,EAAK7C,OACtB,MAAM,IAAIkC,EACRO,EAAuBU,0BACvB,8CAA8CN,EAAKO,WAAWP,EAAKO,uCAAuCP,EAAK7C,OAAOqD,+BAA+B5F,EAAMuC,OAAOqD,uPAQtK,IAAK,IAAIC,EAAY,EAAGA,EAAI7F,EAAMuC,SAAUsD,OAG1BvF,IAFkCN,EAAM6F,IAGtDJ,EAAiBpD,KAAKwD,GAI1B,GAAIJ,EAAiBlD,OAAS,EAC5B,MAAM,IAAIkC,EACRO,EAAuBU,0BACvB,8CAA8CN,EAAKO,iCAAiCF,EAAiBK,KAAK,oNAOhH,CFvBIC,CAAiCX,EAAMC,EAAcrB,sBAE9CqB,GGZK,SACdD,EACAC,GAEA,MAAMW,EAAmB,GAEzB,IAAK,IAAIH,EAAY,EAAGA,EAAIR,EAAcrB,qBAAqBzB,SAAUsD,EAAG,CAC1E,MAAMI,EACJZ,EAAcrB,qBAAqB6B,QAGXvF,IAAxB2F,GACAA,EAAoBvB,OAASO,EAA8BiB,SAE3DF,EAAO3D,KACL,gDAAgD+C,EAAKO,4CAA4CE,EAAED,yHAMzG,IAAK,MAAOO,EAAatG,KAAawF,EAAc1F,WAC9CE,EAAS6E,OAASO,EAA8BiB,SAClDF,EAAO3D,KACL,gDAAgD+C,EAAKO,sBAAsBQ,EAAYP,gGAM7F,GAAsB,IAAlBI,EAAOzD,OACT,MAAM,IAAIkC,EACRO,EAAuBkB,QACvB,uCAAuCd,EAAKO,yOAQhD,MAAM,IAAIlB,EACRO,EAAuBU,0BACvB,kCAAkCN,EAAKO,YAEzCK,EAAOF,KAAK,UAEd,CHvCIM,CAA4BhB,EAAMC,EAMtC,UItBgBgB,IACd,OAAO,CACT,CCKM,SAAUC,EACdlB,GAEA,OAAQmB,SAESjG,IAAbiG,GACAA,EAAS7B,OAASO,EAA8BiB,SAEhDM,EACEpB,EACAf,EACAgC,GACCI,GAAkBA,EAAQ,IAInC,CCfgB,SAAAC,EAGdC,EACAC,GAOA,MAAO,IAAIC,IACRN,IACC,QAAiBjG,IAAbiG,EACF,OAAOI,KAAwBE,GAGjC,GAAIN,EAAS7B,OAASQ,EAAyB4B,UAC7C,MAAM,IAAIrC,EACRO,EAAuB+B,2BACvB,6FAIJ,OAAOH,EAAsCL,KAAaM,EAAO,CAEvE,CC5BM,SAAUG,EACdT,GAEA,GACEA,EAAS7B,OAASO,EAA8BiB,UACT,IAAvCK,EAASU,0BAET,MAAM,IAAIxC,EACRO,EAAuB+B,2BACvB,4FAGN,EVlBA,SAAY/B,GACVA,EAAAA,EAAA,2BAAA,GAAA,6BACAA,EAAAA,EAAA,0BAAA,GAAA,4BACAA,EAAAA,EAAA,SAAA,GAAA,WACAA,EAAAA,EAAA,WAAA,GAAA,aACAA,EAAAA,EAAA,QAAA,GAAA,SACD,CAND,CAAYA,IAAAA,EAMX,CAAA,ICND,SAAYC,GACVA,EAAAA,EAAA,QAAA,GAAA,SACD,CAFD,CAAYA,IAAAA,EAEX,CAAA,ICFD,SAAYC,GACVA,EAAAA,EAAA,kBAAA,GAAA,oBACAA,EAAAA,EAAA,gBAAA,GAAA,kBACAA,EAAAA,EAAA,UAAA,GAAA,WACD,CAJD,CAAYA,IAAAA,EAIX,CAAA,ISKM,MAAMgC,EAMXR,GCVc,SACdhC,EAGAxC,GAEA,MAAO,CACLwC,OACAiB,UAAMrF,EACN6G,UAAU,EACVC,KAAM,IAAI9H,IACVU,MAAOkC,EAEX,aCVEqE,EACA7B,EAGAxC,GAIA,OAFA8E,EAAsCT,GAE/B,IACFA,EACH7B,OACA1E,MAAOkC,EAEX,ICrBA,IAAYmF,ECMN,SAAUC,EACdlG,EACA+E,EACAoB,EACAC,GAEA,GACE/C,EAAmBM,cACjByC,EACAxC,EAAuB+B,4BAEzB,CACA,MAAMU,WCERrG,EACA+E,EACAoB,GAEA,QAAuBjH,IAAnBiH,EAA8B,CAChC,QAAoBjH,IAAhB6F,EACF,MAAM,IAAI1B,EACRO,EAAuBkB,QACvB,kDAIJ,MAAO,CACLxB,KAAM2C,EAAkBxH,SACxBA,SAAUsG,EACVuB,YAAatG,EAAOhC,aAIxB,MAAO,CACLuI,MAAOJ,EACP7C,KAAM2C,EAAkBO,UAExBF,YAAatG,EAEjB,CD3BgCyG,CAC1BzG,EACA+E,EACAoB,GAEF,MAAM,IAAI9C,EACRO,EAAuB+B,2BACvB,4CAIJS,EAAM7C,yBE1BF,SACJmD,GAEA,OAAQA,EAAoBpD,MAC1B,KAAK2C,EAAkBO,UACrB,MAAO,YAAYE,EAAoBJ,YAAY/B,kBAAkBmC,EAAoBH,MAAM/B,eACjG,KAAKyB,EAAkBxH,SACrB,MAAO,YAAYiI,EAAoBJ,YAAY/B,qBAAqBmC,EAAoBjI,SAAS+F,eAE3G,CFqBEmC,CAAuBN,KACnB,CAAEO,MAAOR,IAIb,MAAMA,CACR,CG/BgB,SAAAS,EACdC,EAGAC,GAuBA,MAnB0D,CACxD/G,EACA+E,EACAoB,UAEuBjH,IAAnBiH,EA2FR,SACEW,EAGAC,GAIA,MAAMC,EAI2BC,EAC/BH,EACAC,GAGF,MAAO,CAAC/G,EAAgB+E,KACtBK,EACEpF,EAAOhC,YACP0E,EACAC,EClIU,SACdmE,EAGA/B,GAEA,OAAQd,IACN,MAAMiD,EACJjD,EAAc1F,WAAWG,IAAIqG,GAI/B,OAFAd,EAAc1F,WAAWiB,IAAIuF,EAAa+B,EAAeI,IAElDjD,CAAa,CAExB,CDqHMkD,CACEH,EAAsChH,GACtC+E,GAEH,CAEL,CAtHMqC,CAAeN,EAAgBC,EAA/BK,CACEpH,EACA+E,GA6CR,SACE+B,EAGAC,GAIA,MAAMC,EAI2BC,EAC/BH,EACAC,GAGF,MAAO,CACL/G,EACA+E,EACAoB,KAEA,IAmDJ,SACEnG,EACA+E,GAEA,MAAyB,mBAAX/E,QAAyCd,IAAhB6F,CACzC,CAxDQsC,CAAuBrH,EAAQ+E,GAWjC,MAAM,IAAI1F,MACR,kGAEE0F,GAAaP,YAAc,iBACdxE,EAAOhC,YAAYuG,SAdpCa,EACEpF,EACA0C,EACAC,EE5FQ,SACdmE,EAGAP,GAEA,OAAQtC,IACN,MAAMiD,EACJjD,EAAcrB,qBAAqB2D,GAKrC,OAHAtC,EAAcrB,qBAAqB2D,GACjCO,EAAeI,GAEVjD,CAAa,CAExB,CF8EQqD,CACEN,EAAsChH,GACtCmG,IAYV,CAnFMoB,CAAgBT,EAAgBC,EAAhCQ,CACEvH,EACA+E,EACAoB,GAMR,CAEA,SAASc,EACPH,EAGAC,GAQA,OACE/G,IAIA,MAAMwH,EAEMT,EAAgC/G,GAE5C,OACEmF,IAEAqC,EAAsCrC,GAE/B2B,EAAe3B,GACvB,CAEL,CGzDM,SAAUsC,EACd3G,GAEA,MAAMgG,EAEsBhB,EAC1BhC,EAAyB4D,gBACzB5G,GAGF,MAAO,CACLd,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,EP1CA,SAAYH,GACVA,EAAAA,EAAA,UAAA,GAAA,YACAA,EAAAA,EAAA,SAAA,GAAA,UACD,CAHD,CAAYA,IAAAA,EAGX,CAAA,IQHM,MAAM0B,EACX,oDCCF,MAAMC,EAAgC,CACpCtF,MACAuF,OACAC,QACAC,SACAC,OACAC,OACAC,QCII,SAAUC,EACdnI,GAEA,MAAMoI,EACJlE,EAAmBlE,ECjBmC,0BDmBjBd,IAAnCkJ,GACFhD,EACEpF,EACA0C,EACAC,EAQN,SACEyF,GAEA,OAAQnE,IACNmE,EAA+BC,SAC7B,CAACC,EAAkC/B,KDxBnC,IAAgCvC,OC0BkB9E,IAA9C+E,EAAcrB,qBAAqB2D,KD1BPvC,EC2BNsE,ED1BtBV,EAAmBW,SAASvE,MC4B5BC,EAAcrB,qBAAqB2D,GEpCvC,SACJvC,GAEA,MAAO,CACL6B,2BAA2B,EAC3BvC,KAAMQ,EAAyB4D,gBAC/BnD,UAAMrF,EACN6G,UAAU,EACVC,KAAM,IAAI9H,IACVU,MAAOoF,EAEX,CF0BYwE,CACEF,OAMHrE,EAEX,CA3BMwE,CACEL,GAIR,CGpBM,SAAUM,EAAW1F,GAEzB,OAAQhD,KCDJ,SAA8BA,GAMlC,QAAyBd,IALqBgF,EAC5ClE,EACA2H,GAIA,MAAM,IAAItE,EACRO,EAAuB+B,2BACvB,qDAIJgD,EAAmB3I,EAAQ2H,GAAiC,EAC9D,CDZIiB,CAAoB5I,GAEpBmI,EAAgDnI,QAElCd,IAAV8D,GACFoC,EACEpF,EACA0C,EACAC,GACCwC,IAAkC,IAC9BA,EACHnC,YAKV,UExBgB6F,EACdrF,EACAsF,EACAC,GAKA,IAAIC,EAgBJ,OAlBExF,EAAQyF,6BAA8B,GAKtCD,EAA+B,IAC1BF,EAAsBlG,sBAG3BmG,EAAanG,qBAAqBsG,KAChC,CAACC,EAA4C5C,KAC3CyC,EAA6BzC,GAAS4C,CAAoB,KAI9DH,EAA+BD,EAAanG,qBAGvCoG,CACT,UCxBgBI,EACd5F,EACAsF,EACAC,GAIA,IAAIM,EAUJ,OAPEA,EALgC7F,EAAQ8F,mBAAoB,EAKvC,IAAIpL,IACvBT,EAAMqL,EAAsBvK,WAAYwK,EAAaxK,aAGlCwK,EAAaxK,WAG7B8K,CACT,CCbM,SAAUE,EAAW/F,GAazB,OAXmCxD,IACjC,MAAM8I,EAAuC/E,EAAiBP,EAAQQ,MAEtEoB,EACEpF,EACA0C,EACAC,EAQN,SACEa,EACAsF,GAEA,MAAMU,EACJT,IACmB,CACnBnG,qBAAsBiG,EACpBrF,EACAsF,EACAC,GAEFlG,UAAWkG,EAAalG,UACxBtE,WAAY6K,EACV5F,EACAsF,EACAC,GAEF/F,MAAO+F,EAAa/F,QAGtB,OAAOwG,CACT,CA7BMC,CAAqCjG,EAASsF,GAC/C,CAIL,CChBM,SAAUY,EACdlG,GAGA,OAAQxD,IACN,MAAM2J,EAAgCC,EAAY5J,GAElD,QAAiBd,IAAbyK,EACF,MAAM,IAAItG,EACRO,EAAuB+B,2BACvB,gCAAgC3F,EAAOuE,sBAI3CgF,EAAW,IACN/F,EACHQ,KAAM2F,GAFRJ,CAGGvJ,EAAO,CAEd,CCjBM,SAAU6J,EACd/I,GAEA,MAAMgG,EAEsBhB,EAC1BhC,EAAyBgG,kBACzBhJ,GAGF,MAAO,CACLd,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,CCpCM,SAAU2D,EACd/F,GAEA,OAAQmB,SACWjG,IAAbiG,GACFC,EACEpB,EACAf,EACAgC,GACCI,GAAkBA,EAAQ,IAInC,CCXM,SAAU2E,EACdlD,GAMA,OACE3B,IAEA,MAAM8E,EACJ9E,GCfG,CACL7B,KAAMO,EAA8BiB,QACpCP,UAAMrF,EACN6G,UAAU,EACVC,KAAM,IAAI9H,KDaV,GAAQ+L,EAAgB3G,OACjBQ,EAAyB4B,UAC5B,MAAM,IAAIrC,EACRO,EAAuB+B,2BACvB,+HAGF,OAAOmB,EAAemD,GAG9B,CErBM,SAAUC,EACd3F,GAEA,MAAMuC,EAGJkD,ECVE,SACJzF,GAIA,OACEY,IAEA,QAAsBjG,IAAlBiG,EAASZ,KACX,MAAM,IAAIlB,EACRO,EAAuB+B,2BACvB,yCAMJ,OAFAR,EAASZ,KAAOA,EAETY,CAAQ,CAEnB,CDRMgF,CAAmB5F,IAGvB,MAAO,CACLvE,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,CErCM,SAAUgE,EACdjF,GAEA,GAAIA,EAASY,SACX,MAAM,IAAI1C,EACRO,EAAuB+B,2BACvB,4CAMJ,OAFAR,EAASY,UAAW,EAEbZ,CACT,UCTgBY,IACd,MAAMe,EAGJkD,EACEI,GAGJ,MAAO,CACLpK,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,UChCgBiE,IACd,MAAO,CACLrK,EACA+E,EACAuF,KAEA,IACElF,EACEpF,EAAOhC,YACP0E,EACAC,GCZN4H,EDa8CxF,ECXtCI,IACN,QAAmDjG,IAA/CiG,EAAStC,UAAUC,wBACrB,MAAM,IAAIO,EACRO,EAAuB+B,2BACvB,iDAMJ,OAFAR,EAAStC,UAAUC,wBAA0ByH,EAEtCpF,CAAQ,IDGb,MAAOiB,GACPF,EAAqBlG,EAAQ+E,OAAa7F,EAAWkH,GCjBrD,IACJmE,EDmBF,UEjBgBC,IACd,MAAO,CACLxK,EACA+E,EACAuF,KAEA,IACElF,EACEpF,EAAOhC,YACP0E,EACAC,GCZN4H,EDayCxF,ECXjCI,IACN,QAAgDjG,IAA5CiG,EAAStC,UAAUE,qBACrB,MAAM,IAAIM,EACRO,EAAuB+B,2BACvB,8CAMJ,OAFAR,EAAStC,UAAUE,qBAAuBwH,EAEnCpF,CAAQ,IDGb,MAAOiB,GACPF,EAAqBlG,EAAQ+E,OAAa7F,EAAWkH,GCjBrD,IACJmE,EDmBF,CEdgB,SAAAE,EACd9L,EACAC,GAEA,MAAMkI,EAGJkD,ECXY,SACdrL,EACAC,GAIA,OACEuG,IAEA,GAAIA,EAASa,KAAK0E,IAAI/L,GACpB,MAAM,IAAI0E,EACRO,EAAuB+B,2BACvB,yDAMJ,OAFAR,EAASa,KAAKxG,IAAIb,EAAKC,GAEhBuG,CAAQ,CAEnB,CDRMwF,CAAkBhM,EAAKC,IAG3B,MAAO,CACLoB,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgBiD,EAA3BlD,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,UExCgBwE,KACd,MAAO,CACLtH,KAAMQ,EAAyB4B,UAEnC,CCDO,MAAMmF,GAGXvF,EACEsF,ICFE,SACJzF,GAIA,GAFAS,EAAsCT,GAYxC,SACEA,GAEA,YACoBjG,IAAlBiG,EAASZ,MAAsBY,EAASY,UAAYZ,EAASa,KAAK9F,KAAO,CAE7E,CAhBM4K,CAAmB3F,GACrB,MAAM,IAAI9B,EACRO,EAAuB+B,2BACvB,+HAIJ,OAAOiF,IACT,aCdgBlF,KACd,MAAMoB,EAGJ+D,KAEF,MAAO,CACL7K,EACA+E,EACAoB,KAEA,SACyBjH,IAAnBiH,EACFU,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,GAGF8B,EAAWC,EAAgB5B,EAA3B2B,CACE7G,EACA+E,EACAoB,GAGJ,MAAOC,GACPF,EAAqBlG,EAAQ+E,EAAaoB,EAAgBC,IAGhE,OC9Ba2E,GACiBC,KAA5B,WAAAhN,CAA4BgN,GAAA/M,KAAI+M,KAAJA,EAErB,MAAAC,CAAOC,GACZ,OAAO,IAAIH,GAA0B,CACnCG,OACAC,SAAUlN,KAAK+M,OAIZ,CAAC7H,OAAOiI,YACb,IAAIC,EAAqDpN,KAAK+M,KAE9D,MAAO,CACLM,KAAM,KACJ,QAAapM,IAATmM,EACF,MAAO,CACLE,MAAM,EACN3M,WAAOM,GAIX,MAAMgM,EAAUG,EAAKH,KAGrB,OAFAG,EAAOA,EAAKF,SAEL,CACLI,MAAM,EACN3M,MAAOsM,EACR,ICxBO,SAAAM,GACd/F,EACA3E,GAEI2E,EAAOgG,eAAef,IAAI5J,IAahC,SACE2E,EACA3E,GAEA,MAAM4K,GATNC,EAUkC,IAC3BlG,EAAOgG,eACV3K,GAVG,IAAI6K,GAAoBzC,IAAI0C,GAA4BlH,KAAK,SAHtE,IACEiH,EAeA,MAAM,IAAItI,EACRO,EAAuBiI,SACvB,8BAA8BH,IAElC,CA1BII,CAAWrG,EAAQ3E,GAGrB2E,EAAOgG,eAAe9L,IAAImB,EAC5B,OCLaiL,GACFV,GAET,WAAArN,CAAYqN,GACVpN,MAAKoN,EAAQA,EAGf,QAAW9G,GACT,OAAOtG,MAAKoN,EAAMH,KAAK3G,KAGzB,QAAWyB,GACT,OAAO/H,MAAKoN,EAAMH,KAAKlF,KAGzB,qBAAWlF,GACT,OAAO7C,MAAKoN,EAAMH,KAAKpK,kBAGlB,WAAAkL,GACL,QAA4B9M,IAAxBjB,MAAKoN,EAAMF,SAIf,OAAO,IAAIY,GAA8B9N,MAAKoN,EAAMF,oBCvBxCc,GACdxG,EACAyG,EACA1I,GAEA,MAAM2I,EACJ,IAAIJ,GAA8BG,EAAoBlB,MAElDlK,EACJ0C,GAAS4I,yBAA2BD,EAAgBrL,kBAMtD,MAJ4C,IACtC2E,EAAO4G,YAAYvL,IAAsB,IAGxBwL,QAAQ3K,GAC7BA,EAAQ4K,cAAcJ,IAE1B,CC5BM,SAAUK,GACdnB,GAEA,YAEEnM,IADCmM,EAAoDoB,YAGzD,UCCgBC,GACdC,EACAjM,EACA2K,GAEA,IAAIvK,EACA8L,EAEAJ,GAAoCnB,IACtCvK,EAAoBuK,EAAK1J,QAAQkL,wBACjCD,EAA0BvB,EAAK1J,QAAQb,oBAEvCA,EAAoBuK,EAAKvK,kBACzB8L,EAA0BvB,EAAK7K,QAAQmB,QAAQb,mBAG7CwB,MAAMC,QAAQoK,GA4BpB,SACEA,EACAjM,EACAI,EACA8L,GAEA,GAAwB,IAApBD,EAASxL,OAIN,CACL,MAAM2L,EAAuB,0CAA0ClB,EAA2B9K,mCAIpG6L,EAASzD,KAAKvH,GClEV,SAA2BA,GAC/B,OAAQA,EAAQqC,MACd,KAAK9G,EAAkBI,SACrB,MAAO,YAAYqE,EAAQqC,8BAA8B4H,EAA2BjK,EAAQb,gCAAgCa,EAAQqB,gCAAgCrB,EAAQoL,mBAAmBxI,UACjM,KAAKrH,EAAkBM,mBACrB,MAAO,YAAYmE,EAAQqC,8BAA8B4H,EAA2BjK,EAAQb,sCAAsC8K,EAA2BjK,EAAQkL,8BACvK,QACE,MAAO,YAAYlL,EAAQqC,8BAA8B4H,EAA2BjK,EAAQb,gCAAgCa,EAAQqB,WAE1I,CDyDqDgK,CAAiBrL,EAAQA,WAAU+C,KAAK,4CAE3DuI,GAAiCnM,EAAmB8L,OAElF,MAAM,IAAIvJ,EAAmBO,EAAuBiI,SAAUiB,GAZzDpM,GACHwM,GAA0BpM,EAAmB8L,EAanD,CAhDIO,CACER,EACAjM,EACAI,EACA8L,GA8CN,SACED,EACAjM,EACAI,EACA8L,GAEA,QAAiB1N,IAAbyN,GAA2BjM,EAG7B,OAFAwM,GAA0BpM,EAAmB8L,EAIjD,CAtDIQ,CACET,EACAjM,EACAI,EACA8L,EAGN,CAEA,SAASM,GACPpM,EACA8L,GAEA,MAAME,EAAuB,mCAAmClB,EAA2B9K,2CAE3DmM,GAAiCnM,EAAmB8L,OAEpF,MAAM,IAAIvJ,EAAmBO,EAAuBiI,SAAUiB,EAChE,CAsCA,SAASG,GACPnM,EACA8L,GAEA,YAAmC1N,IAA5B0N,EACH,GAAGhB,EAA2B9K,oBAC9B8K,EAA2BgB,EACjC,CE5FgB,SAAAS,GACdC,EACA5M,GAEA,GANwC,IAOtC4M,EAA8Bb,aAAatL,OAgB7CuL,GACEY,EAA8Bb,aAC9B/L,EACA4M,OApBF,CAIE,MAAOC,GACLD,EAA8Bb,aAE5BD,GAAoCe,IACtCF,GACEE,EACA7M,GAYR,CCzBgB,SAAA8M,GACdC,EACA/M,GAEA,GAAI4B,MAAMC,QAAQkL,EAAYd,WANU,IAOlCc,EAAYd,SAASxL,OAD3B,CAEI,MAAOoM,GAAsCE,EAAYd,SAIrDH,GAAoCe,IACtCF,GACEE,EACA7M,QAQRgM,GACEe,EAAYd,SACZjM,EACA+M,EAEJ,CCPM,SAAUC,GAAKjI,GACnB,MAAMO,EAAkC,IAAI9H,SAETgB,IAA/BuG,EAAOkI,gBAAgBC,KACzB5H,EAAKxG,IAAIiG,EAAOkI,gBAAgBC,IAAIjP,IAAK8G,EAAOkI,gBAAgBC,IAAIhP,OAGtE,MAAMsN,EACJ,IAAInB,GAA0B,CAC5BG,KAAM,CACJ3G,KAAMkB,EAAOkI,gBAAgBpJ,KAC7BzD,kBAAmB2E,EAAOkI,gBAAgB7M,kBAC1CkF,QAEFmF,cAAUjM,IAGR2O,EACJ5B,GAA6BxG,EAAQyG,GAEjC4B,EAAyC,GAEzCL,EAA+B,CACnCd,SAAUmB,EACVtN,YAAQtB,EACR4B,kBAAmB2E,EAAOkI,gBAAgB7M,mBAY5C,GATAgN,EAAoB7M,QACf8M,GACDtI,EACAyG,EACA2B,EACAJ,KAIChI,EAAOkI,gBAAgBK,WAAY,CACtCR,GACEC,EACAhI,EAAOkI,gBAAgBjN,aAAc,GAGvC,MAAO6M,GAAsCO,EAE5CL,EAA0Cd,SAAWY,EAGxD,MAAO,CACLU,KAAM,CACJC,KAAMT,GAGZ,CAEA,SAASU,GACP1I,EACA9D,EACAuK,EACAkC,GAEA,MAIMC,EAAiC,CACrC1M,QAASA,EACTsC,cANmCwB,EAAO1B,iBAC1CpC,EAAQoL,oBAMRuB,kBAAmB,GACnB9N,OAAQ4N,EACRG,eAAgB,IAAIrQ,KAUtB,OA8IF,SACEuH,EACAyG,GAEA,MAAMjI,EAA+BwB,EAAO4F,KAAKpH,cAEjD,IAAK,MACHsC,EACAiI,KACGvK,EAAcrB,qBAAqB6L,UACtChJ,EAAO4F,KAAKiD,kBAAkB/H,GAC5BmI,GACEjJ,EACAyG,EACAsC,GAIN,IAAK,MAAOzJ,EAAayJ,KAAoBvK,EAAc1F,WAAY,CACrE,MAAMoQ,EACJD,GACEjJ,EACAyG,EACAsC,QAGoBtP,IAApByP,GACFlJ,EAAO4F,KAAKkD,eAAe/O,IAAIuF,EAAa4J,GAIhD,OAAOlJ,EAAO4F,IAChB,CA9KSuD,CAP8B,CACnCvC,YAAa5G,EAAO4G,YACpBtI,iBAAkB0B,EAAO1B,iBACzBsH,KAAMgD,EACN5C,eAAgBhG,EAAOgG,gBAGKS,EAChC,CAEA,SAASwC,GACPjJ,EACAyG,EACAsC,GAEA,GAAIA,EAAgBlL,OAASQ,EAAyB4B,UACpD,OAGF,MAAM5E,EAAuC+N,EAAsBnL,GACjE8K,EAAgB5P,OAEd4P,EAAgB5P,MAAMkQ,SACtBN,EAAgB5P,MAEdmQ,EACJ7C,EAAoBjB,OAAO,CACzB1G,KAAMiK,EAAgBjK,KACtBzD,oBACAkF,KAAMwI,EAAgBxI,OAGpB6H,EACJ5B,GAA6BxG,EAAQsJ,GAEjCjB,EAAyC,GAEzCL,EAA+B,CACnCd,SAAUmB,EACVtN,OAAQiF,EAAO4F,KACfvK,qBAYF,GATAgN,EAAoB7M,QACf8M,GACDtI,EACAsJ,EACAlB,EACAJ,IAIAe,EAAgBlL,OAASQ,EAAyB4D,gBAAiB,CACrE8F,GACEC,EACAe,EAAgBzI,UAGlB,MAAOwH,GAAsCO,EAE5CL,EAA0Cd,SAAWY,EAGxD,OAAOE,CACT,CAEA,SAASM,GACPtI,EACAyG,EACA8C,EACAZ,GAEA,MAAMtN,EACJ0L,GAAoC4B,GAChCA,EAAWzM,QAAQkL,wBACnBuB,EAAWtN,kBAEjB0K,GAAiB/F,EAAQ3E,GAEzB,MAAMmO,EAAsC,GAE5C,IAAK,MAAMtN,KAAWqN,EACpB,OAAQrN,EAAQqC,MACd,KAAK9G,EAAkBI,SACrB2R,EAAiBhO,KACfkN,GACE1I,EACA9D,EACAuK,EACAkC,IAGJ,MAEF,KAAKlR,EAAkBM,mBAAoB,CACzC,MAAM+P,EACJ2B,GACEzJ,EACAyG,EACAvK,EACAyM,GAGJa,EAAiBhO,KAAKsM,GAEtB,MAEF,QACE0B,EAAiBhO,KAAK,CACpBU,QAASA,EACTnB,OAAQ4N,IAOhB,OAFA3I,EAAOgG,eAAelM,OAAOuB,GAEtBmO,CACT,CAEA,SAASC,GACPzJ,EACAyG,EACAvK,EACAyM,GAEA,MAAMC,EAA+C,CACnD1M,UACAnB,OAAQ4N,EACR3B,aAAc,IAGVoB,EACJ5B,GAA6BxG,EAAQyG,EAAqB,CACxDE,wBAAyBzK,EAAQkL,0BAYrC,OATAwB,EAAU5B,aAAaxL,QAClB8M,GACDtI,EACAyG,EACA2B,EACAQ,IAIGA,CACT,UCjPgBc,GACd1J,EACA3E,EACAlC,GAEA,MAAMoC,EACJyE,EAAO2J,eAAetO,GAExB,YAAoB5B,IAAhB8B,EACKpC,EAGLyQ,EAAUzQ,GACL0Q,GACL7J,EACA7G,EACAoC,EAAYmC,OAAOiI,aAWzB,SACE3F,EACA7G,EACA2Q,GAEA,IAAIC,EAA2C5Q,EAE3C6Q,EACFF,EAAoBjE,OAEtB,MAAyC,IAAlCmE,EAAyBlE,MAAe,CAC7C,MAAMmE,EACJD,EAAyB7Q,MAAM6G,EAAOkK,QAASH,GAEjD,GAAIH,EAAUK,GACZ,OAAOJ,GACL7J,EACAiK,EACAH,GAGFC,EAAiBE,EAGnBD,EAA2BF,EAAoBjE,OAGjD,OAAOkE,CACT,CAnCSI,CACLnK,EACA7G,EACAoC,EAAYmC,OAAOiI,YAEvB,CAgCAyE,eAAeP,GACb7J,EACA7G,EACA2Q,GAEA,IAAIC,QAAiD5Q,EAEjD6Q,EACFF,EAAoBjE,OAEtB,MAAyC,IAAlCmE,EAAyBlE,MAC9BiE,QAAuBC,EAAyB7Q,MAC9C6G,EAAOkK,QACPH,GAGFC,EAA2BF,EAAoBjE,OAGjD,OAAOkE,CACT,UCzEgBM,GACdrK,EACA9D,EACA/C,GAEA,IAAImR,EAAqDnR,EAEzD,QAA6BM,IAAzByC,EAAQqO,aAA4B,CACtC,MAAMA,EAA8CrO,EAAQqO,aAG1DD,EADEV,EAAUU,GACOA,EAAiBE,MACjCC,GACCF,EAAavK,EAAOkK,QAASO,KAGdF,EAAavK,EAAOkK,QAASI,GAIpD,OAAOZ,GACL1J,EACA9D,EAAQb,kBACRiP,EAEJ,CC5BM,SAAUI,GASdC,GAKA,MAAO,CACL3K,EACA9D,KAEA,GAAIA,EAAQ0O,MAAMC,QAChB,OAAO3O,EAAQ0O,MAAMzR,MAGvB,MAAM2R,EAAsCT,GAC1CrK,EACA9D,EACAyO,EAAQ3K,EAAQ9D,IAQlB,OALAA,EAAQ0O,MAAQ,CACdC,SAAS,EACT1R,MAAO2R,GAGFA,CAAa,CAExB,CCnCO,MAAMC,GAGeL,ICNZ,SACdM,EACA9O,GAEA,OAAOA,EAAQ/C,KACjB,ICTM,SAAU8R,GAAWC,GACzB,OAAOA,CACT,CCQgB,SAAAC,GAOdC,EACAT,GAEA,MAAO,CAAC3K,EAA0BqL,KAChC,MAAMnP,EAAoBkP,EAAWC,GAErC,OAAQnP,EAAQqB,OACd,KAAKlG,EAAmBE,UAAW,CACjC,GAAI2E,EAAQ0O,MAAMC,QAChB,OAAO3O,EAAQ0O,MAAMzR,MAGvB,MAAM2R,EAAsCQ,GAC1CtL,EACAqL,EACAnP,EACAyO,GAQF,OALAzO,EAAQ0O,MAAQ,CACdC,SAAS,EACT1R,MAAO2R,GAGFA,EAET,KAAKzT,EAAmBC,QAAS,CAC/B,GAAI0I,EAAOuL,kBAAkBtG,IAAI/I,EAAQsP,IACvC,OAAOxL,EAAOuL,kBAAkBtS,IAC9BiD,EAAQsP,IAIZ,MAAMV,EAAsCQ,GAC1CtL,EACAqL,EACAnP,EACAyO,GAKF,OAFA3K,EAAOuL,kBAAkBxR,IAAImC,EAAQsP,GAAIV,GAElCA,EAET,KAAKzT,EAAmBG,UACtB,OAAO8T,GAAmBtL,EAAQqL,EAAKnP,EAASyO,IAGxD,CAEA,SAASW,GACPtL,EACAqL,EACAnP,EACAyO,GAEA,OAAON,GACLrK,EACA9D,EACAyO,EAAQ3K,EAAQqL,GAEpB,CCtEO,MCDMI,GDUgE,CAK3Ed,GAIGQ,GAAcF,GAASN,GChBAe,ECNZ,SACd1L,EACA9D,GAEA,OAAOA,EAAQ/C,MAAM6G,EAAOkK,QAC9B,ICDO,MAAMyB,GAGejB,ICPZ,SAEd1K,EAA0B9D,GAC1B,OAAOA,EAAQ0P,QAAQ5L,EAAOkK,QAChC,aCDgB2B,GACdC,EACA5P,EACAmB,GAEA,MAAM0O,EAaR,SACED,EACA5P,EACAmB,GAEA,QAAgC5D,IAA5B4D,EACF,OAGF,KAAIA,KAA2ByO,GA+B7B,MAAM,IAAIlO,EACRO,EAAuB6N,WACvB,gBAAgB3O,EAAwB0B,wCAAwC7C,EAAQoL,mBAAmBxI,4DAhC7G,GAAiD,mBAAtCgN,EAASzO,GAwBlB,MAAM,IAAIO,EACRO,EAAuB6N,WACvB,gBAAgB3O,EAAwB0B,sCAAsC7C,EAAQoL,mBAAmBxI,2FA1BhD,CAC3D,IAAIiN,EAEJ,IAEEA,EAAsBD,EAASzO,KAC/B,MAAOsD,GACP,MAAM,IAAI/C,EACRO,EAAuB6N,WACvB,wCAAwC3O,EAAwB0B,yDAAyD7C,EAAQoL,mBAAmBxI,QACpJ,CACEqC,MAAOR,IAKb,GAAIiJ,EAAUmC,GACZ,OAoBR3B,eACElO,EACAmB,EACA0O,GAEA,UACQA,EACN,MAAOpL,GACP,MAAM,IAAI/C,EACRO,EAAuB6N,WACvB,wCAAwC3O,EAAwB0B,yDAAyD7C,EAAQoL,mBAAmBxI,QACpJ,CACEqC,MAAOR,IAIf,CApCesL,CACL/P,EACAmB,EACA0O,GAeV,CA1DoDG,CAChDJ,EACA5P,EACAmB,GAGF,OAAIuM,EAAUmC,GACLA,EAAoBvB,MAAK,IAAMsB,IAGjCA,CACT,CCfM,SAAUK,GAIdC,GAUA,MAAO,CACLC,EACArM,EACA4F,KAEA,MAAMkG,EAC+B,IAAIlG,EAAK1J,QAAQoL,sBACjD+E,GAGCC,EACJF,EAAsBpM,EAAQ8L,EAAUlG,GAE1C,OAAIgE,EAAU0C,GACLA,EAA2B9B,MAChC,IACEqB,GACEC,EACAlG,EAAK1J,QACL0J,EAAKpH,cAAcpB,UAAUC,2BAK9BwO,GACLC,EACAlG,EAAK1J,QACL0J,EAAKpH,cAAcpB,UAAUC,wBAC9B,CAEL,CC5CO,MAAMkP,GAGe7B,ICPZ,SAEd1K,EAA0B9D,GAC1B,OAAOA,EAAQsQ,SAASxM,EAAOkK,QACjC,ICLM,SAAUuC,GACd7G,GAEA,OAAOA,EAAK1J,OACd,CCoBA,MAAMkQ,GCjBA,SACJM,GASA,MAAO,CACL1M,EACA8L,EACAlG,KAEA,MAAM+G,EAA8C,GAEpD,IAAK,MAAOrN,EAAasN,KAAiBhH,EAAKkD,eAAgB,CAC7D,MAAMpJ,EACJkG,EAAKpH,cAAc1F,WAAWG,IAAIqG,GAEpC,QAAiB7F,IAAbiG,EACF,MAAM,IAAI9B,EACRO,EAAuB6N,WACvB,mCAAmC1M,EAAYP,2BAI/CW,EAAS7B,OAASQ,EAAyB4B,YAC7C6L,EAASxM,GAAeoN,EAAmB1M,EAAQ4M,GAE/ChD,EAAUkC,EAASxM,KACrBqN,EAA2BnR,KACzB,WACEsQ,EAASxM,SAAqBwM,EAASxM,EACxC,EAFD,KAQR,GAAIqN,EAA2BjR,OAAS,EACtC,OAAOmR,QAAQC,IAAIH,GAA4BnC,MAAK,KAAe,IAGzE,CDxB4BuC,CAA2BL,IAEjDM,GE3BA,SACJC,GA2BA,OAnBA,SAASC,EACPlN,EACA4F,GAEA,MAAMuH,EAA4B,GAElC,IAAK,MAAMC,KAAexH,EAAKoB,aACzBD,GAAoCqG,GACtCD,EAAe3R,QACV0R,EAA0ClN,EAAQoN,IAGvDD,EAAe3R,KAAKyR,EAAmBjN,EAAQoN,IAInD,OAAOD,EAIX,CFCiBE,CAA0CJ,IAErDK,YG3BJC,EAIAC,EAKArB,GASA,MAAO,CACLnM,EACA4F,KAEA,MAAMyG,EACJkB,EAAwCvN,EAAQ4F,GAElD,OAAIgE,EAAUyC,GACLmB,EACLnB,EACArM,EACA4F,GAIGuG,EACLE,EACArM,EACA4F,EACD,CAEL,CHL4B6H,CItCtB,SAIJf,GAQA,MAAO,CACL1M,EACA4F,KAEA,MAAM8H,EAAuC,GAE7C,IAAK,MAAMC,KAAoB/H,EAAKiD,uBACTpP,IAArBkU,EACFD,EAA0BlS,UAAK/B,GAE/BiU,EAA0BlS,KACxBkR,EAAmB1M,EAAQ2N,IAKjC,OAAOD,EAA0BE,KAAKhE,GAClCiD,QAAQC,IAAIY,GACZA,CAAyB,CAEjC,CJQEG,CAAkDnB,IK1C9C,SAIJP,GAUA,OAAO/B,MACLiC,EACArM,EACA4F,KAEA,MAAM8H,QAA6CrB,EAEnD,OAAOF,EACLuB,EACA1N,EACA4F,EACD,CAEL,CLgBE4H,CACErB,GAAgDC,KAElDD,GAAgDC,KAG5C0B,GMvCsB,CAC1BnD,GAIGQ,GAAcsB,GAAwB9B,GNqCfoD,CAC1BT,IAGI,SAAU3C,GAAQ3K,GAGtB,OAAO0M,GAAmB1M,EAFWA,EAAOgO,WAAWxF,KAAKC,KAG9D,CAEA,SAASwE,GACPjN,EACA8H,GAEA,OAAQA,EAAgB5L,QAAQqC,MAC9B,KAAK9G,EAAkBC,cACrB,OAAOqT,GAA4B/K,EAAQ8H,EAAgB5L,SAC7D,KAAKzE,EAAkBE,aACrB,OAAO8T,GAA2BzL,EAAQ8H,EAAgB5L,SAC5D,KAAKzE,EAAkBG,QACrB,OAAO+T,GAAsB3L,EAAQ8H,EAAgB5L,SACvD,KAAKzE,EAAkBI,SACrB,OAAOiW,GACL9N,EACA8H,GAEJ,KAAKrQ,EAAkBK,SACrB,OAAOyU,GAAuBvM,EAAQ8H,EAAgB5L,SAE5D,CAEA,SAASwQ,GACP1M,EACAgI,GAEA,QAA6BvO,IAAzBuO,EAAYd,SAIhB,OAAIrK,MAAMC,QAAQkL,EAAYd,UAOhC,SACElH,EACAkH,GAEA,MAAMiG,EAA4B,GAElC,IAAK,MAAMjR,KAAWgL,EAChBH,GAAoC7K,GACtCiR,EAAe3R,QACVwR,GAAqChN,EAAQ9D,IAGlDiR,EAAe3R,KAAKyR,GAAmBjN,EAAQ9D,IAInD,GAAIiR,EAAeS,KAAKhE,GACtB,OAAOiD,QAAQC,IAAIK,GAGrB,OAAOA,CACT,CA3BWc,CAAkCjO,EAAQgI,EAAYd,UA6BjE,SACElH,EACA9D,GAEA,GAAI6K,GAAoC7K,GAAU,CAChD,MAAMiR,EAA4BH,GAChChN,EACA9D,GAGF,GAA8B,IAA1BiR,EAAezR,OACjB,OAAOyR,EAAe,GAEtB,MAAM,IAAIvP,EACRO,EAAuB6N,WACvB,2DAIJ,OAAOiB,GAAmBjN,EAAQ9D,EAEtC,CA/CSgS,CAAgClO,EAAQgI,EAAYd,SAC7D,CO9FM,SAAUiH,GACdjS,GAEA,YAEEzC,IADCyC,EAAiEqB,KAGtE,CCiCA,SAAS6Q,GACP5P,EACAsN,GAEA,QACmDrS,IAAjD+E,EAAcpB,UAAUE,sBAC0C,mBAA3DwO,EAAStN,EAAcpB,UAAUE,sBAExC,OACEwO,EACEtN,EAAcpB,UAAUE,uBAIhC,UCvDgB+Q,GACdrO,EACA3E,EACAlC,GAEA,MAAMoD,EACJyD,EAAOsO,iBAAiBjT,GAE1B,QAAsB5B,IAAlB8C,EAIJ,OAAIqN,EAAUzQ,GACLoV,GACLpV,EACAoD,EAAcmB,OAAOiI,aAU3B,SACExM,EACAqV,GAEA,IAAIC,EAEAD,EAAsB3I,OAE1B,MAA2C,IAApC4I,EAA2B3I,MAAe,CAC/C,MAAM4I,EACJD,EAA2BtV,MAAMA,GAEnC,GAAIyQ,EAAU8E,GACZ,OAAOH,GACLpV,EACAqV,GAIJC,EAA6BD,EAAsB3I,OAEvD,CA3BS8I,CACLxV,EACAoD,EAAcmB,OAAOiI,YAEzB,CAyBAyE,eAAemE,GACbpV,EACAqV,GAEA,MAAM1D,QAAgD3R,EAEtD,IAAIsV,EAEAD,EAAsB3I,OAE1B,MAA2C,IAApC4I,EAA2B3I,YAC1B2I,EAA2BtV,MAAM2R,GAEvC2D,EAA6BD,EAAsB3I,MAEvD,CC9CgB,SAAA+I,GACd5O,EACA9D,GAEA,MAAM2S,EFHQ,SACd7O,EACA9D,GAEA,GAAIA,EAAQqC,OAAS9G,EAAkBI,SAAU,CAC/C,MAAM2G,EAA+BwB,EAAO1B,iBAC1CpC,EAAQoL,oBAGJwE,EAAuD5P,EAAQ0O,MAClEzR,MAEH,OAAIyQ,EAAUkC,GACLA,EAAStB,MACbsB,GACCsC,GAA0B5P,EAAesN,KAGtCsC,GAA0B5P,EAAesN,GAGtD,CElBiDgD,CAC7C9O,EACA9D,GAGF,YAAyBzC,IAArBoV,EACKE,GAA2C/O,EAAQ9D,GAGrD2S,EAAiBrE,MAAK,IAC3BuE,GAA2C/O,EAAQ9D,IAEvD,CAEA,SAAS6S,GACP/O,EACA9D,GAEA,MAAM8S,EAA2C9S,EAAQ0O,MAEzD,OAAIhB,EAAUoF,EAAa7V,OAClB6V,EAAa7V,MAAMqR,MACvBM,GACCmE,GACEjP,EACA9D,EACA4O,KAKDmE,GACLjP,EACA9D,EACA8S,EAAa7V,MAEjB,CAEA,SAAS8V,GACPjP,EACA9D,EACA4O,GAEA,IAAIoE,EAEJ,QAA+BzV,IAA3ByC,EAAQiT,eAA8B,CAIxCD,GAAqBE,EAFnBlT,EAAQiT,gBAE+BrE,GAG3C,YAA2BrR,IAAvByV,EACKb,GACLrO,EACA9D,EAAQb,kBACRyP,GAGKoE,EAAmB1E,MAAK,IAC7B6D,GACErO,EACA9D,EAAQb,kBACRyP,IAIR,CCxEgB,SAAAuE,GACdrP,EACAkH,GAEA,QAAiBzN,IAAbyN,EACF,OAGF,MAAMoI,EAmBR,SACEpI,GAEA,MAAMqI,EAA4D,GAElE,IAAK,MAAMrT,KAAWgL,EAElBiH,GAAgBjS,IAChBA,EAAQqB,QAAUlG,EAAmBE,WACrC2E,EAAQ0O,MAAMC,SAEd0E,EAAiB/T,KAAKU,GAI1B,OAAOqT,CACT,CAlCIC,CAAqCtI,GAEjCuI,EAA8C,GAEpD,IAAK,MAAMvT,KAAWoT,EAAyB,CAC7C,MAAMJ,EACJN,GAA4B5O,EAAQ9D,QAEXzC,IAAvByV,GACFO,EAA2BjU,KAAK0T,GAIpC,OAAIO,EAA2B/T,OAAS,EAC/BmR,QAAQC,IAAI2C,GAA4BjF,MAAK,KAAe,SADrE,CAGF,CC3CgB,SAAAkF,GACd1P,EACAhF,GAEA,MAAMkM,EACJlH,EAAO2P,sBAAsB3U,GAE/B,OAAOqU,GAA6BrP,EAAQkH,EAC9C,CCNgB,SAAA0I,GACd5P,EACA3E,GAEA,MAAM6L,EACJlH,EAAO4G,YAAYvL,GAErB,OAAOgU,GAA6BrP,EAAQkH,EAC9C"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/binding/models/BindingScope.ts","../../src/binding/models/BindingType.ts","../../src/common/calculations/chain.ts","../../src/common/models/OneToManyMapStar.ts","../../src/binding/services/ActivationsService.ts","../../src/binding/services/BindingService.ts","../../src/binding/services/DeactivationsService.ts","../../src/decorator/actions/decorate.ts","../../src/reflectMetadata/data/classMetadataReflectKey.ts","../../src/metadata/calculations/getDefaultClassMetadata.ts","../../src/reflectMetadata/data/pendingClassMetadataCountReflectKey.ts","../../src/error/models/InversifyCoreError.ts","../../src/error/models/InversifyCoreErrorKind.ts","../../src/metadata/models/MaybeClassElementMetadataKind.ts","../../src/metadata/models/ClassElementMetadataKind.ts","../../src/metadata/calculations/getClassMetadata.ts","../../src/metadata/calculations/isPendingClassMetadata.ts","../../src/metadata/calculations/validateConstructorMetadataArray.ts","../../src/metadata/calculations/throwAtInvalidClassMetadata.ts","../../src/metadata/calculations/getDefaultPendingClassMetadataCount.ts","../../src/metadata/actions/decrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/assertMetadataFromTypescriptIfManaged.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultManagedMetadata.ts","../../src/metadata/calculations/buildManagedMetadataFromMaybeManagedMetadata.ts","../../src/decorator/models/DecoratorInfoKind.ts","../../src/metadata/calculations/handleInjectionError.ts","../../src/decorator/calculations/getDecoratorInfo.ts","../../src/decorator/calculations/stringifyDecoratorInfo.ts","../../src/metadata/decorators/injectBase.ts","../../src/metadata/actions/updateMaybeClassMetadataProperty.ts","../../src/metadata/actions/updateMaybeClassMetadataConstructorArgument.ts","../../src/metadata/decorators/inject.ts","../../src/reflectMetadata/data/classIsInjectableFlagReflectKey.ts","../../src/metadata/calculations/isUserlandEmittedType.ts","../../src/metadata/actions/updateClassMetadataWithTypescriptParameterTypes.ts","../../src/reflectMetadata/data/typescriptDesignParameterTypesReflectKey.ts","../../src/metadata/calculations/buildClassElementMetadataFromTypescriptParameterType.ts","../../src/metadata/decorators/injectable.ts","../../src/metadata/actions/setIsInjectableFlag.ts","../../src/metadata/calculations/getExtendedConstructorArguments.ts","../../src/metadata/calculations/getExtendedProperties.ts","../../src/metadata/decorators/injectFrom.ts","../../src/metadata/decorators/injectFromBase.ts","../../src/metadata/decorators/multiInject.ts","../../src/metadata/actions/incrementPendingClassMetadataCount.ts","../../src/metadata/calculations/buildMaybeClassElementMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildDefaultMaybeClassElementMetadata.ts","../../src/metadata/decorators/named.ts","../../src/metadata/actions/updateMetadataName.ts","../../src/metadata/actions/updateMetadataOptional.ts","../../src/metadata/decorators/optional.ts","../../src/metadata/decorators/postConstruct.ts","../../src/metadata/actions/updateMaybeClassMetadataPostConstructor.ts","../../src/metadata/decorators/preDestroy.ts","../../src/metadata/actions/updateMaybeClassMetadataPreDestroy.ts","../../src/metadata/decorators/tagged.ts","../../src/metadata/actions/updateMetadataTag.ts","../../src/metadata/calculations/buildDefaultUnmanagedMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeClassElementMetadata.ts","../../src/metadata/calculations/buildUnmanagedMetadataFromMaybeManagedMetadata.ts","../../src/metadata/decorators/unmanaged.ts","../../src/common/models/SingleInmutableLinkedList.ts","../../src/planning/actions/addBranchService.ts","../../src/binding/models/BindingMetadataImplementation.ts","../../src/planning/calculations/buildFilteredServiceBindings.ts","../../src/planning/calculations/isPlanServiceRedirectionBindingNode.ts","../../src/planning/calculations/throwErrorWhenUnexpectedBindingsAmountFound.ts","../../src/binding/calculations/stringifyBinding.ts","../../src/planning/calculations/checkPlanServiceRedirectionBindingNodeSingleInjectionBindings.ts","../../src/planning/calculations/checkServiceNodeSingleInjectionBindings.ts","../../src/planning/calculations/plan.ts","../../src/resolution/actions/resolveBindingServiceActivations.ts","../../src/resolution/actions/resolveBindingActivations.ts","../../src/resolution/actions/resolveSingletonScopedBinding.ts","../../src/resolution/actions/resolveConstantValueBinding.ts","../../src/resolution/calculations/resolveConstantValueBindingCallback.ts","../../src/common/calculations/getSelf.ts","../../src/resolution/actions/resolveScoped.ts","../../src/resolution/actions/resolveScopedBinding.ts","../../src/resolution/actions/resolveDynamicValueBinding.ts","../../src/resolution/calculations/resolveDynamicValueBindingCallback.ts","../../src/resolution/actions/resolveFactoryBinding.ts","../../src/resolution/calculations/resolveFactoryBindingCallback.ts","../../src/resolution/actions/resolvePostConstruct.ts","../../src/resolution/actions/resolveInstanceBindingNodeFromConstructorParams.ts","../../src/resolution/actions/resolveProviderBinding.ts","../../src/resolution/calculations/resolveProviderBindingCallback.ts","../../src/resolution/calculations/getInstanceNodeBinding.ts","../../src/resolution/actions/resolve.ts","../../src/resolution/actions/setInstanceProperties.ts","../../src/resolution/actions/resolveServiceRedirectionBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingNode.ts","../../src/resolution/actions/resolveInstanceBindingConstructorParams.ts","../../src/resolution/actions/resolveInstanceBindingNodeAsyncFromConstructorParams.ts","../../src/resolution/actions/resolveScopedInstanceBindingNode.ts","../../src/binding/calculations/isScopedBinding.ts","../../src/resolution/actions/resolveBindingPreDestroy.ts","../../src/resolution/actions/resolveBindingServiceDeactivations.ts","../../src/resolution/actions/resolveBindingDeactivations.ts","../../src/resolution/actions/resolveBindingsDeactivations.ts","../../src/resolution/actions/resolveModuleDeactivations.ts","../../src/resolution/actions/resolveServiceDeactivations.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["bindingScopeValues","Request","Singleton","Transient","bindingTypeValues","ConstantValue","DynamicValue","Factory","Instance","Provider","ServiceRedirection","chain","iterables","iterable","OneToManyMapStar","modelToRelationMap","relationToModelsMaps","spec","constructor","this","Map","specProperty","Reflect","ownKeys","clone","properties","pushEntriesIntoMap","property","get","key","value","values","getAllKeys","keys","removeByRelation","models","undefined","model","relation","Error","removeModelFromRelationMaps","delete","set","relationKey","buildOrGetRelationModelSet","add","relationValue","modelSet","Set","source","target","removeModelFromRelationMap","size","ActivationRelationKind","BindingRelationKind","DeactivationRelationKind","ActivationsService","activationMaps","parent","moduleId","isOptional","serviceId","build","activation","serviceIdentifier","activationIterables","activations","push","parentActivations","length","removeAllByModuleId","removeAllByServiceId","BindingService","bindingMaps","getNonParentBindings","getNonParentBoundServices","getByModuleId","binding","DeactivationsService","deactivationMaps","deactivation","deactivationIterables","deactivations","parentDeactivations","decorate","decorators","parameterIndexOrProperty","parsedDecorators","Array","isArray","prototype","decorator","classMetadataReflectKey","getDefaultClassMetadata","constructorArguments","lifecycle","postConstructMethodName","preDestroyMethodName","scope","pendingClassMetadataCountReflectKey","isAppErrorSymbol","Symbol","for","InversifyCoreError","kind","message","options","super","is","isErrorOfKind","InversifyCoreErrorKind","MaybeClassElementMetadataKind","ClassElementMetadataKind","getClassMetadata","type","classMetadata","getOwnReflectMetadata","pendingClassMetadataCount","isPendingClassMetadata","undefinedIndexes","missingInjectionDecorator","name","toString","i","join","validateConstructorMetadataArray","errors","constructorArgument","unknown","propertyKey","throwAtInvalidClassMetadata","getDefaultPendingClassMetadataCount","decrementPendingClassMetadataCount","metadata","updateOwnReflectMetadata","count","buildClassElementMetadataFromMaybeClassElementMetadata","buildDefaultMetadata","buildMetadataFromMaybeManagedMetadata","params","unmanaged","injectionDecoratorConflict","assertMetadataFromTypescriptIfManaged","isFromTypescriptParamType","buildManagedMetadataFromMaybeClassElementMetadata","optional","tags","DecoratorInfoKind","handleInjectionError","parameterIndex","error","info","targetClass","index","parameter","getDecoratorInfo","decoratorTargetInfo","stringifyDecoratorInfo","cause","injectBase","updateMetadata","updatePendingClassMetadataCount","buildComposedUpdateMetadataFromTarget","buildComposedUpdateMetadata","propertyMetadata","updateMaybeClassMetadataProperty","injectProperty","isConstructorParameter","updateMaybeClassMetadataConstructorArgument","injectParameter","updateTargetPendingClassMetadataCount","inject","singleInjection","classIsInjectableFlagReflectKey","NON_USERLAND_TYPES","BigInt","Boolean","Function","Number","Object","String","updateClassMetadataWithTypescriptParameterTypes","typescriptConstructorArguments","forEach","constructorArgumentType","includes","buildClassElementMetadataFromTypescriptParameterType","updateMaybeClassMetadataWithTypescriptClassMetadata","injectable","setReflectMetadata","setIsInjectableFlag","getExtendedConstructorArguments","baseTypeClassMetadata","typeMetadata","extendedConstructorArguments","extendConstructorArguments","map","classElementMetadata","getExtendedProperties","extendedProperties","extendProperties","injectFrom","callback","composeUpdateReflectMetadataCallback","injectFromBase","baseType","getBaseType","multiInject","multipleInjection","incrementPendingClassMetadataCount","buildMaybeClassElementMetadataFromMaybeClassElementMetadata","definedMetadata","named","updateMetadataName","updateMetadataOptional","postConstruct","_descriptor","methodName","preDestroy","tagged","has","updateMetadataTag","buildDefaultUnmanagedMetadata","buildUnmanagedMetadataFromMaybeClassElementMetadata","hasManagedMetadata","SingleInmutableLinkedList","last","concat","elem","previous","iterator","node","next","done","addBranchService","servicesBranch","stringifiedCircularDependencies","serviceIdentifiers","stringifyServiceIdentifier","planning","throwError","BindingMetadataImplementation","getAncestor","buildFilteredServiceBindings","bindingMetadataList","bindingMetadata","customServiceIdentifier","getBindings","filter","isSatisfiedBy","isPlanServiceRedirectionBindingNode","redirections","throwErrorWhenUnexpectedBindingsAmountFound","bindings","parentServiceIdentifier","targetServiceIdentifier","errorMessage","implementationType","stringifyBinding","stringifyParentServiceIdentifier","throwBindingNotFoundError","throwErrorWhenMultipleUnexpectedBindingsAmountFound","throwErrorWhenSingleUnexpectedBindingFound","checkPlanServiceRedirectionBindingNodeSingleInjectionBindings","serviceRedirectionBindingNode","planBindingNode","checkServiceNodeSingleInjectionBindings","serviceNode","plan","rootConstraints","tag","filteredServiceBindings","serviceNodeBindings","buildServiceNodeBindings","isMultiple","tree","root","buildInstancePlanBindingNode","parentNode","childNode","constructorParams","propertyParams","elementMetadata","entries","buildPlanServiceNodeFromClassElementMetadata","planServiceNode","subplan","LazyServiceIdentifier","unwrap","updatedBindingMetadataList","serviceBindings","planBindingNodes","buildServiceRedirectionPlanBindingNode","resolveBindingServiceActivations","getActivations","isPromise","resolveBindingActivationsFromIteratorAsync","activationsIterator","activatedValue","activationIteratorResult","nextActivatedValue","context","resolveBindingActivationsFromIterator","async","resolveBindingActivations","activationResult","onActivation","then","resolved","resolveSingletonScopedBinding","resolve","cache","isRight","resolvedValue","resolveConstantValueBinding","_params","getSelf","self","resolveScoped","getBinding","arg","resolveAndActivate","requestScopeCache","id","resolveDynamicValueBinding","resolveScopedBinding","resolveFactoryBinding","factory","resolvePostConstruct","instance","postConstructResult","resolution","invokePostConstructAsync","invokePostConstruct","resolveInstanceBindingNodeFromConstructorParams","setInstanceProperties","constructorValues","propertiesAssignmentResult","resolveProviderBinding","provider","getInstanceNodeBinding","resolveServiceNode","propertyAssignmentPromises","propertyNode","Promise","all","currySetInstanceProperties","resolveServiceRedirectionBindingNode","resolveBindingNode","innerResolveServiceRedirectionBindingNode","resolvedValues","redirection","curryResolveServiceRedirectionBindingNode","resolveInstanceBindingNode","resolveInstanceBindingConstructorParams","resolveInstanceBindingNodeAsyncFromConstructorParams","curryResolveInstanceBindingNode","constructorResolvedValues","constructorParam","some","curryResolveInstanceBindingConstructorParams","resolveScopedInstanceBindingNode","curryResolveScopedInstanceBindingNode","planResult","resolveMultipleBindingServiceNode","resolveSingleBindingServiceNode","isScopedBinding","resolveInstancePreDestroy","resolveBindingServiceDeactivations","getDeactivations","resolveBindingDeactivationsFromIteratorAsync","deactivationsIterator","deactivationIteratorResult","nextDeactivationValue","resolveBindingDeactivationsFromIterator","resolveBindingDeactivations","preDestroyResult","resolveBindingPreDestroy","resolveBindingDeactivationsAfterPreDestroy","bindingCache","resolveBindingDeactivationsAfterPreDestroyFromValue","deactivationResult","onDeactivation","bindingDeactivation","resolveBindingsDeactivations","singletonScopedBindings","filteredBindings","filterCachedSinglentonScopedBindings","deactivationPromiseResults","resolveModuleDeactivations","getBindingsFromModule","resolveServiceDeactivations"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"dependencies": {
|
|
8
8
|
"@inversifyjs/common": "1.5.0",
|
|
9
9
|
"@inversifyjs/prototype-utils": "0.1.0",
|
|
10
|
-
"@inversifyjs/reflect-metadata-utils": "1.
|
|
10
|
+
"@inversifyjs/reflect-metadata-utils": "1.1.0"
|
|
11
11
|
},
|
|
12
12
|
"devDependencies": {
|
|
13
13
|
"@eslint/js": "9.18.0",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"type": "git",
|
|
63
63
|
"url": "git+https://github.com/inversify/monorepo.git"
|
|
64
64
|
},
|
|
65
|
-
"version": "3.0.
|
|
65
|
+
"version": "3.0.1",
|
|
66
66
|
"scripts": {
|
|
67
67
|
"build": "pnpm run build:cjs && pnpm run build:esm",
|
|
68
68
|
"build:cjs": "tsc --build tsconfig.cjs.json && pnpm exec foundation-ts-package-cjs ./lib/cjs",
|