@inversifyjs/core
Version:
InversifyJs core package
18 lines • 925 B
JavaScript
import { getOwnReflectMetadata } from '@inversifyjs/reflect-metadata-utils';
import { classMetadataReflectKey } from '../../reflectMetadata/data/classMetadataReflectKey.js';
import { getDefaultClassMetadata } from './getDefaultClassMetadata.js';
import { isPendingClassMetadata } from './isPendingClassMetadata.js';
import { throwAtInvalidClassMetadata } from './throwAtInvalidClassMetadata.js';
import { validateConstructorMetadataArray } from './validateConstructorMetadataArray.js';
export function getClassMetadata(type) {
const classMetadata = getOwnReflectMetadata(type, classMetadataReflectKey) ??
getDefaultClassMetadata();
if (isPendingClassMetadata(type)) {
throwAtInvalidClassMetadata(type, classMetadata);
}
else {
validateConstructorMetadataArray(type, classMetadata.constructorArguments);
return classMetadata;
}
}
//# sourceMappingURL=getClassMetadata.js.map