objectypes
Version:
A type-safe library to transform and validate objects
13 lines (12 loc) • 652 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateValueDefinition = void 0;
function validateValueDefinition(propertyMetadata, targetClass, value) {
const { nullable, name, propertyKey, defaultValue } = propertyMetadata;
const objPropName = name !== null && name !== void 0 ? name : propertyKey;
const valueShouldBePresent = !nullable && defaultValue === undefined;
if (value === undefined && valueShouldBePresent) {
throw new Error(`Property '${objPropName}' is missing. Couldn't build ${targetClass.name} object.`);
}
}
exports.validateValueDefinition = validateValueDefinition;