in src/decorators/auto-injectable.ts [23:64]
constructor(...args: any[]) {
super(
...args.concat(
paramInfo.slice(args.length).map((type, index) => {
try {
if (isTokenDescriptor(type)) {
if (isTransformDescriptor(type)) {
return type.multiple
? globalContainer
.resolve(type.transform)
.transform(
globalContainer.resolveAll(type.token),
...type.transformArgs
)
: globalContainer
.resolve(type.transform)
.transform(
globalContainer.resolve(type.token),
...type.transformArgs
);
} else {
return type.multiple
? globalContainer.resolveAll(type.token)
: globalContainer.resolve(type.token);
}
} else if (isTransformDescriptor(type)) {
return globalContainer
.resolve(type.transform)
.transform(
globalContainer.resolve(type.token),
...type.transformArgs
);
}
return globalContainer.resolve(type);
} catch (e) {
const argIndex = index + args.length;
throw new Error(formatErrorCtor(target, argIndex, e));
}
})
)
);
}