UNPKG

lux-framework

Version:

Build scalable, Node.js-powered REST APIs with almost no code.

21 lines (17 loc) 482 B
// @flow import pick from '../../../../utils/pick'; import entries from '../../../../utils/entries'; import type Model from '../index'; /** * @private */ export default function getColumns(record: Model, only?: Array<string>) { let { constructor: { attributes: columns } } = record; if (only) { columns = pick(columns, ...only); } return entries(columns).reduce((obj, [key, { columnName }]) => ({ ...obj, [columnName]: Reflect.get(record, key) }), {}); }