UNPKG

stackpress

Version:

Incept is a content management framework.

19 lines (18 loc) 592 B
import create from './create'; import detail from './detail'; import update from './update'; 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); } ;