UNPKG

simple-graphql

Version:

The simple way to generates GraphQL schemas and Sequelize models from your models definition.

58 lines 1.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function restoreTimestamps(data, instance, include) { const timestampFields = ['createdAt', 'updatedAt', 'deletedAt']; for (const field of timestampFields) { const value = data[field]; if (value) { instance.setDataValue(field, new Date(value)); } } if (data['version'] != null) { instance.setDataValue('version', data['version']); } const restore = (includeItem) => { if (includeItem.as) { const item = includeItem; const field = item.as; if (data[field]) { if (Array.isArray(data[field])) { for (let index = 0; index < data[field].length; index++) { restoreTimestamps(data[field][index], instance[field][index], item.include); } } else { restoreTimestamps(data[field], instance[field], item.include); } } } }; if (Array.isArray(include)) { include.forEach((i) => restore(i)); } else if (include) { restore(include); } } function default_1(data, model, include) { if (!data) { return data; } const instance = model.build(data, { isNewRecord: false, raw: false, include }); if (Array.isArray(include)) { restoreTimestamps(data, instance, include); } else if (include != null) { restoreTimestamps(data, instance, [include]); } else { restoreTimestamps(data, instance, []); } return instance; } exports.default = default_1; //# sourceMappingURL=dataToInstance.js.map