Files
NapCatQQ/.pnpm-store/v3/files/d2/db139df5fe848453b748df408513ad6336111485565b5b317827defc8a0455d35832f8528f448f4f761bf7a213ece688e0997ef65b26413841dd6b7ccc7fa5
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

31 lines
1.7 KiB
Plaintext

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.setInstanceProperties = setInstanceProperties;
const common_1 = require("@inversifyjs/common");
const InversifyCoreError_1 = require("../../error/models/InversifyCoreError");
const InversifyCoreErrorKind_1 = require("../../error/models/InversifyCoreErrorKind");
const ClassElementMetadataKind_1 = require("../../metadata/models/ClassElementMetadataKind");
function setInstanceProperties(resolveServiceNode) {
return (params, instance, node) => {
const propertyAssignmentPromises = [];
for (const [propertyKey, propertyNode] of node.propertyParams) {
const metadata = node.classMetadata.properties.get(propertyKey);
if (metadata === undefined) {
throw new InversifyCoreError_1.InversifyCoreError(InversifyCoreErrorKind_1.InversifyCoreErrorKind.resolution, `Expecting metadata at property "${propertyKey.toString()}", none found`);
}
if (metadata.kind !== ClassElementMetadataKind_1.ClassElementMetadataKind.unmanaged &&
propertyNode.bindings !== undefined) {
instance[propertyKey] = resolveServiceNode(params, propertyNode);
if ((0, common_1.isPromise)(instance[propertyKey])) {
propertyAssignmentPromises.push((async () => {
instance[propertyKey] = await instance[propertyKey];
})());
}
}
}
if (propertyAssignmentPromises.length > 0) {
return Promise.all(propertyAssignmentPromises).then(() => undefined);
}
};
}
//# sourceMappingURL=setInstanceProperties.js.map