UNPKG

@inversifyjs/core

Version:

InversifyJs core package

40 lines 1.33 kB
import { LazyServiceIdentifier, } from '@inversifyjs/common'; import { ClassElementMetadataKind } from '../../metadata/models/ClassElementMetadataKind.js'; export function tryBuildGetPlanOptionsFromManagedClassElementMetadata(elementMetadata) { let tag; if (elementMetadata.tags.size === 0) { tag = undefined; } else if (elementMetadata.tags.size === 1) { const [key, value] = elementMetadata.tags .entries() .next().value; tag = { key, value }; } else { return undefined; } const serviceIdentifier = LazyServiceIdentifier.is(elementMetadata.value) ? elementMetadata.value.unwrap() : elementMetadata.value; if (elementMetadata.kind === ClassElementMetadataKind.multipleInjection) { return { chained: elementMetadata.chained, isMultiple: true, name: elementMetadata.name, optional: elementMetadata.optional, serviceIdentifier, tag, }; } else { return { isMultiple: false, name: elementMetadata.name, optional: elementMetadata.optional, serviceIdentifier, tag, }; } } //# sourceMappingURL=tryBuildGetPlanOptionsFromManagedClassElementMetadata.js.map