UNPKG

@inversifyjs/core

Version:

InversifyJs core package

19 lines 976 B
import { updateOwnReflectMetadata } from '@inversifyjs/reflect-metadata-utils'; import { classMetadataReflectKey } from '../../reflectMetadata/data/classMetadataReflectKey.js'; import { setIsInjectableFlag } from '../actions/setIsInjectableFlag.js'; import { updateClassMetadataWithTypescriptParameterTypes } from '../actions/updateClassMetadataWithTypescriptParameterTypes.js'; import { getDefaultClassMetadata } from '../calculations/getDefaultClassMetadata.js'; export function injectable(scope) { // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type return (target) => { setIsInjectableFlag(target); updateClassMetadataWithTypescriptParameterTypes(target); if (scope !== undefined) { updateOwnReflectMetadata(target, classMetadataReflectKey, getDefaultClassMetadata, (metadata) => ({ ...metadata, scope, })); } }; } //# sourceMappingURL=injectable.js.map