UNPKG

stackpress

Version:

Incept is a content management framework.

19 lines (18 loc) 601 B
import create from './create.js'; import detail from './detail.js'; import update from './update.js'; export default async function upsert(model, engine, input, seed) { const ids = {}; for (const column of model.ids) { if (!input[column.name]) { return await create(model, engine, input, seed); } ids[column.name] = input[column.name]; } const row = await detail(model, engine, ids, undefined, seed); if (row.results) { return await update(model, engine, ids, input, seed); } return await create(model, engine, input, seed); } ;