@goyaro/bresdk-mvp
Version:
Business Rules Engine
44 lines (36 loc) • 1.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
function mapModel(eventModel, event) {
var transformedEvent = {};
var modelKeys = Object.keys(eventModel);
for (var i = 0; i < modelKeys.length; i++) {
var modelKey = modelKeys[i];
if (event[modelKey]) {
if (event[modelKey].type === 'object') {
var transformResponse = mapModel(eventModel[modelKey].properties, event[modelKey]);
if (transformResponse.error) {
return {
error: transformResponse.error
};
}
transformedEvent[modelKey] = transformResponse.data;
} else {
// trivial assignment, but can perform validation and data transformation
// as needed in the future
transformedEvent[modelKey] = event[modelKey];
}
} else {
return {
error: "Could not find key ".concat(modelKey, " in given event body")
};
}
}
return {
data: transformedEvent
};
}
var _default = mapModel;
exports["default"] = _default;