UNPKG

@forestadmin/datasource-toolkit

Version:
28 lines 1.99 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const schema_1 = __importDefault(require("./schema")); class RecordUtils { static getPrimaryKey(schema, record) { return schema_1.default.getPrimaryKeys(schema).map(pk => { if (record[pk] === undefined) throw new Error(`Missing primary key: ${pk}`); return record[pk]; }); } /** * Get value of field from record */ static getFieldValue(record, field) { const path = field.split(':'); let current = record; while (path.length && current) { current = current[path.shift()]; } return path.length === 0 ? current : null; } } exports.default = RecordUtils; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL3JlY29yZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHNEQUFtQztBQUluQyxNQUFxQixXQUFXO0lBQzlCLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBd0IsRUFBRSxNQUFrQjtRQUMvRCxPQUFPLGdCQUFXLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNqRCxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsS0FBSyxTQUFTO2dCQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFNUUsT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFvQixDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFrQixFQUFFLEtBQWE7UUFDcEQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixJQUFJLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFFckIsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUM3QixPQUFPLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBZSxDQUFDO1NBQy9DO1FBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBdEJELDhCQXNCQyJ9