UNPKG

@lucidcms/core

Version:

The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.

2 lines 1.12 kB
import{copy as e}from"../../i18n/copy.mjs";import t from"./tables/document-table.mjs";import n from"./tables/fields-table.mjs";import r from"./tables/versions-table.mjs";const i=(i,a)=>{try{let e=[],o=t({collection:i,db:a});if(o.error)return o;e.push(o.data.schema);let s=r({collection:i,db:a});if(s.error)return s;e.push(s.data.schema);for(let t of i.brickInstances||[]){let r=n({collection:i,fields:t.persistedFieldTree,db:a,type:`brick`,documentTable:o.data.schema.name,versionTable:s.data.schema.name,brick:t});if(r.error)return r;e.push(r.data.schema),e.push(...r.data.childTables)}let c=n({collection:i,fields:i.persistedFieldTree,db:a,documentTable:o.data.schema.name,versionTable:s.data.schema.name,type:`document-fields`});if(c.error)return c;e.push(c.data.schema),e.push(...c.data.childTables);let l=new Set;return{data:{key:i.key,tables:e.filter(e=>l.has(e.name)?!1:(l.add(e.name),!0))},error:void 0}}catch(t){return{data:void 0,error:{message:e(`server:core.collections.schema.infer.failed`,t instanceof Error?{defaultMessage:t.message}:void 0)}}}};export{i as default}; //# sourceMappingURL=infer-schema.mjs.map