@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 1.13 kB
JavaScript
import e from"../../helpers/indexes-match.mjs";import t from"../../migration/determine-column-mods.mjs";const n=(n,r)=>{let i=new Set,a=new Map,o=new Map,s=new Map,c=new Map;for(let l of r.tables){let r=n.tables.find(e=>e.name===l.name);if(!r){i.add(l.name),a.set(l.name,new Set(l.columns.map(e=>e.name)));let e=(l.indexes??[]).map(e=>e.name);e.length>0&&o.set(l.name,new Set(e));continue}let u=new Map(r.columns.map(e=>[e.name,e])),d=l.columns.filter(e=>!u.has(e.name)).map(e=>e.name);d.length>0&&a.set(l.name,new Set(d));let f=l.columns.filter(e=>{let n=u.get(e.name);return n!==void 0&&t(e,n)!==null}).map(e=>e.name);f.length>0&&s.set(l.name,new Set(f));let p=new Map((r.indexes??[]).map(e=>[e.name,e])),m=(l.indexes??[]).filter(e=>!p.has(e.name)).map(e=>e.name);m.length>0&&o.set(l.name,new Set(m));let h=(l.indexes??[]).filter(t=>{let n=p.get(t.name);return n&&!e(t,n)}).map(e=>e.name);h.length>0&&c.set(l.name,new Set(h))}return{missingTableNames:i,missingColumnsByTable:a,missingIndexesByTable:o,modifiedColumnsByTable:s,modifiedIndexesByTable:c}};export{n as default};
//# sourceMappingURL=diff-snapshot-vs-config.mjs.map