fhirbuilder
Version:
Another FHIR Tool to build FHIR Resources
15 lines (14 loc) • 658 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateFields = validateFields;
function getNonFunctionKeys(obj) {
return Object.keys(obj).filter((key) => typeof obj[key] !== 'function');
}
function validateFields(modelFields, instance) {
const fieldsFromArray = modelFields.map((field) => field.name);
const fieldsFromModel = getNonFunctionKeys(instance);
const missingFields = fieldsFromModel.filter((field) => !fieldsFromArray.includes(field));
if (missingFields.length > 0) {
throw new Error(`Missing fields from model ${instance.constructor.name}: ${missingFields.join(', ')}`);
}
}