@inversifyjs/core
Version:
InversifyJs core package
15 lines • 991 B
JavaScript
import { InversifyCoreError } from '../../error/models/InversifyCoreError.js';
import { InversifyCoreErrorKind } from '../../error/models/InversifyCoreErrorKind.js';
import { assertMetadataFromTypescriptIfManaged } from './assertMetadataFromTypescriptIfManaged.js';
import { buildDefaultUnmanagedMetadata } from './buildDefaultUnmanagedMetadata.js';
export function buildUnmanagedMetadataFromMaybeManagedMetadata(metadata) {
assertMetadataFromTypescriptIfManaged(metadata);
if (hasManagedMetadata(metadata)) {
throw new InversifyCoreError(InversifyCoreErrorKind.injectionDecoratorConflict, 'Unexpected injection found. Found @unmanaged injection with additional @named, @optional, @tagged or @targetName injections');
}
return buildDefaultUnmanagedMetadata();
}
function hasManagedMetadata(metadata) {
return (metadata.name !== undefined || metadata.optional || metadata.tags.size > 0);
}
//# sourceMappingURL=buildUnmanagedMetadataFromMaybeManagedMetadata.js.map