function getColumnsByTableNamePrefix(tableName, columns) { const fn = fp.compose([ fp.mapKeys(fp.replace(`${tableName}_`, '')), fp.pickBy((value, key) => fp.startsWith(`${tableName}_`, key)) ]) if (columns) { return fn(columns) } return fn }
const omitUserColumns = fp.omitBy((value, column) => fp.startsWith(`${User.tableName}_`, column)) return Object.assign(omitUserColumns(repo), { owner: getColumnsByTableNamePrefix(User.tableName, repo),
fp.omitBy((value, column) => fp.startsWith(`${User.tableName}_`, column)), fp.omitBy((value, column) => fp.startsWith(`${Repository.tableName}_`, column)) ])