Files
nebula.js/apis/nucleus/src/object/create-object.js
Christoffer Åström a57abf1ead refactor: internal packages structure (#94)
* refactor: internal packages structure

* refactor: internal packages structure
2019-08-27 09:57:04 +02:00

29 lines
688 B
JavaScript

import populateData from './populator';
export default function create({ type, version, fields }, optional, context) {
const t = context.nebbie.types.get({ name: type, version });
return t.initialProperties(optional.properties).then(mergedProps =>
t.supernova().then(sn => {
if (fields) {
populateData(
{
sn,
properties: mergedProps,
fields,
},
context
);
}
return context.app.createSessionObject(mergedProps).then(model =>
context.nebbie.get(
{
id: model.id,
},
{ ...optional, properties: {} }
)
);
})
);
}