UNPKG

stackpress

Version:

Incept is a content management framework.

23 lines (22 loc) 736 B
import Exception from '../../Exception.js'; import { toErrorResponse } from '../helpers.js'; import search from './search.js'; export default async function detail(model, engine, ids, columns = ['*'], seed) { const filter = Object.fromEntries(model.ids.map(column => [ column.name, ids[column.name] ])); if (model.active) { filter[model.active.name] = -1; } const response = await search(model, engine, { columns, filter, take: 1 }, seed); if (response.code !== 200) { return response; } else if (!response.results?.[0]) { return toErrorResponse(Exception.for('Not Found').withCode(404)); } response.results = response.results[0]; return response; } ;