tinybase 1.3.6 → 2.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/lib/checkpoints.d.ts +4 -3
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/debug/checkpoints.d.ts +4 -3
  5. package/lib/debug/checkpoints.js +69 -56
  6. package/lib/debug/indexes.d.ts +4 -2
  7. package/lib/debug/indexes.js +106 -69
  8. package/lib/debug/metrics.d.ts +1 -1
  9. package/lib/debug/metrics.js +187 -131
  10. package/lib/debug/persisters.d.ts +6 -0
  11. package/lib/debug/persisters.js +2 -1
  12. package/lib/debug/queries.d.ts +3251 -0
  13. package/lib/debug/queries.js +900 -0
  14. package/lib/debug/relationships.d.ts +12 -10
  15. package/lib/debug/relationships.js +104 -68
  16. package/lib/debug/store.d.ts +415 -74
  17. package/lib/debug/store.js +295 -120
  18. package/lib/debug/tinybase.d.ts +1 -0
  19. package/lib/debug/tinybase.js +985 -176
  20. package/lib/debug/ui-react.d.ts +4325 -1754
  21. package/lib/debug/ui-react.js +413 -85
  22. package/lib/indexes.d.ts +4 -2
  23. package/lib/indexes.js +1 -1
  24. package/lib/indexes.js.gz +0 -0
  25. package/lib/metrics.d.ts +1 -1
  26. package/lib/metrics.js +1 -1
  27. package/lib/metrics.js.gz +0 -0
  28. package/lib/persisters.d.ts +6 -0
  29. package/lib/queries.d.ts +3251 -0
  30. package/lib/queries.js +1 -0
  31. package/lib/queries.js.gz +0 -0
  32. package/lib/relationships.d.ts +12 -10
  33. package/lib/relationships.js +1 -1
  34. package/lib/relationships.js.gz +0 -0
  35. package/lib/store.d.ts +415 -74
  36. package/lib/store.js +1 -1
  37. package/lib/store.js.gz +0 -0
  38. package/lib/tinybase.d.ts +1 -0
  39. package/lib/tinybase.js +1 -1
  40. package/lib/tinybase.js.gz +0 -0
  41. package/lib/ui-react.d.ts +4325 -1754
  42. package/lib/ui-react.js +1 -1
  43. package/lib/ui-react.js.gz +0 -0
  44. package/lib/umd/checkpoints.js +1 -1
  45. package/lib/umd/checkpoints.js.gz +0 -0
  46. package/lib/umd/indexes.js +1 -1
  47. package/lib/umd/indexes.js.gz +0 -0
  48. package/lib/umd/metrics.js +1 -1
  49. package/lib/umd/metrics.js.gz +0 -0
  50. package/lib/umd/queries.js +1 -0
  51. package/lib/umd/queries.js.gz +0 -0
  52. package/lib/umd/relationships.js +1 -1
  53. package/lib/umd/relationships.js.gz +0 -0
  54. package/lib/umd/store.js +1 -1
  55. package/lib/umd/store.js.gz +0 -0
  56. package/lib/umd/tinybase.js +1 -1
  57. package/lib/umd/tinybase.js.gz +0 -0
  58. package/lib/umd/ui-react.js +1 -1
  59. package/lib/umd/ui-react.js.gz +0 -0
  60. package/package.json +4 -4
  61. package/readme.md +2 -2
package/lib/ui-react.js CHANGED
@@ -1 +1 @@
1
- import e,{useContext as o}from"react";const t=e=>typeof e,d=t(""),s=(e,o)=>e.map(o),r=e=>null==e,n=(e,o,t)=>r(e)?t?.():o(e),i=()=>{},{createContext:c,useContext:l}=e,I=c([]),a=(e,o)=>{const t=l(I);return r(e)?t[o]:((e,o)=>n(e,(e=>e[o])))(t[o+1],e)},p=(e,o)=>{const s=a(e,o);return r(e)||(e=>t(e)==d)(e)?s:e},u=e=>a(e,0),b=e=>a(e,2),g=e=>a(e,4),w=e=>a(e,6),C=e=>a(e,8),m=e=>p(e,0),k=e=>p(e,2),R=e=>p(e,4),h=e=>p(e,6),v=e=>p(e,8),{useCallback:y,useEffect:T,useMemo:x,useState:P}=e,L=(e,o,t=[])=>{const d=x((()=>o(e)),[e,...t]);return T((()=>()=>d.destroy()),[d]),d},S=(e,o,t,...d)=>{const s=o?.["get"+e]??(()=>t),r=s(...d),[,n]=P(r);return T((()=>{const t=o?.[`add${e}Listener`]?.(...d,(()=>n(s(...d))),!1);return()=>o?.delListener(t)}),[o,e,n,s,...d]),r},B=(e,o,t,d=[],s,...r)=>{T((()=>{const d=o?.[`add${e}Listener`]?.(...r,t,s);return()=>o?.delListener(d)}),[o,e,...d,s,...r])},f=(e,o,t,d=[],s=i,r=[],...c)=>{const l=m(e);return y((e=>n(l,(d=>n(t(e,d),(e=>s(d["set"+o](...c,e),e)))))),[l,o,...d,...r,...c])},M=(e,o,t=i,d=[],...s)=>{const r=m(e);return y((()=>t(r?.["del"+o](...s))),[r,o,...d,...s])},A=(e,o,t)=>{const d=v(e);return y((()=>d?.[o](t)),[d,o,t])},E=(e,o=[])=>x(e,o),$=e=>S("Tables",m(e),{}),F=e=>S("TableIds",m(e),[]),j=(e,o)=>S("Table",m(o),{},e),q=(e,o)=>S("RowIds",m(o),[],e),z=(e,o,t)=>S("Row",m(t),{},e,o),D=(e,o,t)=>S("CellIds",m(t),[],e,o),G=(e,o,t,d)=>S("Cell",m(d),void 0,e,o,t),H=(e,o,t,d,s)=>f(t,"Tables",e,o,d,s),J=(e,o,t,d,s,r)=>f(d,"Table",o,t,s,r,e),K=(e,o,t,d,s,r,n)=>f(s,"Row",t,d,r,n,e,o),N=(e,o,t=[],d,s=i,r=[])=>{const c=m(d);return y((t=>n(c,(d=>n(o(t,d),(o=>s(d.addRow(e,o),d,o)))))),[c,e,...t,...r])},O=(e,o,t,d,s,r,n)=>f(s,"PartialRow",t,d,r,n,e,o),Q=(e,o,t,d,s,r,n,i)=>f(r,"Cell",d,s,n,i,e,o,t),U=(e,o,t)=>M(e,"Tables",o,t),V=(e,o,t,d)=>M(o,"Table",t,d,e),W=(e,o,t,d,s)=>M(t,"Row",d,s,e,o),X=(e,o,t,d,s,r,n)=>M(s,"Cell",r,n,e,o,t,d),Y=(e,o,t,d)=>B("Tables",m(d),e,o,t),Z=(e,o,t,d)=>B("TableIds",m(d),e,o,t),_=(e,o,t,d,s)=>B("Table",m(s),o,t,d,e),ee=(e,o,t,d,s)=>B("RowIds",m(s),o,t,d,e),oe=(e,o,t,d,s,r)=>B("Row",m(r),t,d,s,e,o),te=(e,o,t,d,s,r)=>B("CellIds",m(r),t,d,s,e,o),de=(e,o,t,d,s,r,n)=>B("Cell",m(n),d,s,r,e,o,t),se=(e,o,t)=>L(e,o,t),re=(e,o)=>S("Metric",k(o),void 0,e),ne=(e,o,t,d)=>B("Metric",k(d),o,t,void 0,e),ie=(e,o,t)=>L(e,o,t),ce=(e,o)=>S("SliceIds",R(o),[],e),le=(e,o,t)=>S("SliceRowIds",R(t),[],e,o),Ie=(e,o,t,d)=>B("SliceIds",R(d),o,t,void 0,e),ae=(e,o,t,d,s)=>B("SliceRowIds",R(s),t,d,void 0,e,o),pe=(e,o,t)=>L(e,o,t),ue=(e,o,t)=>S("RemoteRowId",h(t),void 0,e,o),be=(e,o,t)=>S("LocalRowIds",h(t),[],e,o),ge=(e,o,t)=>S("LinkedRowIds",h(t),[],e,o),we=(e,o,t,d,s)=>B("RemoteRowId",h(s),t,d,void 0,e,o),Ce=(e,o,t,d,s)=>B("LocalRowIds",h(s),t,d,void 0,e,o),me=(e,o,t,d,s)=>B("LinkedRowIds",h(s),t,d,void 0,e,o),ke=(e,o,t)=>L(e,o,t),Re=e=>S("CheckpointIds",v(e),[[],void 0,[]]),he=(e,o)=>S("Checkpoint",v(o),void 0,e),ve=(e=i,o=[],t,d=i,s=[])=>{const r=v(t);return y((o=>n(r,(t=>{const s=e(o);d(t.addCheckpoint(s),t,s)}))),[r,...o,...s])},ye=e=>A(e,"goBackward"),Te=e=>A(e,"goForward"),xe=(e,o=[],t,d=i,s=[])=>{const r=v(t);return y((o=>n(r,(t=>n(e(o),(e=>d(t.goTo(e),e)))))),[r,...o,...s])},Pe=e=>{const o=v(e),[t,d]=Re(o);return[(s=t,!(0==(e=>e.length)(s))),ye(o),d,n(d,(e=>o?.getCheckpoint(e)))??""];var s},Le=e=>{const o=v(e),[,,[t]]=Re(o);return[!r(t),Te(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},Se=(e,o,t)=>B("CheckpointIds",v(t),e,o),Be=(e,o,t,d)=>B("Checkpoint",v(d),o,t,void 0,e),fe=(e,o,t=[],d,s=[])=>{const[,r]=P(),n=x((()=>o(e)),[e,...t]);return T((()=>((async()=>{await(d?.(n)),r(1)})(),()=>{n.destroy()})),[n,...s]),n},{createElement:Me,useMemo:Ae}=e,Ee=e=>{const o=h(e);return[o,o?.getStore()]},$e=({relationshipId:e,relationships:o,rowComponent:t=Ge,getRowComponentProps:d,separator:r,debugIds:n},i,c)=>{const[l,I]=Ee(o),a=l?.getLocalTableId(e),p=i(e,c,l);return ze(s(p,(e=>Me(t,{...je(d,e),key:e,tableId:a,rowId:e,store:I,debugIds:n}))),r,n,c)},Fe=e=>({checkpoints:o,checkpointComponent:t=We,getCheckpointComponentProps:d,separator:r,debugIds:n})=>{const i=v(o);return ze(s(e(Re(i)),(e=>Me(t,{...je(d,e),key:e,checkpoints:i,checkpointId:e,debugIds:n}))),r)},je=(e,o)=>r(e)?{}:e(o),qe=({store:e,storesById:t,metrics:d,metricsById:s,indexes:r,indexesById:n,relationships:i,relationshipsById:c,checkpoints:l,checkpointsById:a,children:p})=>{const u=o(I);return Me(I.Provider,{value:Ae((()=>[e??u[0],{...u[1],...t},d??u[2],{...u[3],...s},r??u[4],{...u[5],...n},i??u[6],{...u[7],...c},l??u[8],{...u[9],...a}]),[e,t,d,s,r,n,i,c,l,a,u])},p)},ze=(e,o,t,d)=>{const n=r(o)||!Array.isArray(e)?e:s(e,((e,t)=>t>0?[o,e]:e));return t?[d,":{",n,"}"]:n},De=({tableId:e,rowId:o,cellId:t,store:d,debugIds:s})=>ze(""+(G(e,o,t,d)??""),void 0,s,t),Ge=({tableId:e,rowId:o,store:t,cellComponent:d=De,getCellComponentProps:r,separator:n,debugIds:i})=>ze(s(D(e,o,t),(s=>Me(d,{...je(r,s),key:s,tableId:e,rowId:o,cellId:s,store:t,debugIds:i}))),n,i,o),He=({tableId:e,store:o,rowComponent:t=Ge,getRowComponentProps:d,separator:r,debugIds:n})=>ze(s(q(e,o),(s=>Me(t,{...je(d,s),key:s,tableId:e,rowId:s,store:o,debugIds:n}))),r,n,e),Je=({store:e,tableComponent:o=He,getTableComponentProps:t,separator:d,debugIds:r})=>ze(s(F(e),(d=>Me(o,{...je(t,d),key:d,tableId:d,store:e,debugIds:r}))),d),Ke=({metricId:e,metrics:o,debugIds:t})=>ze(re(e,o)??"",void 0,t,e),Ne=({indexId:e,sliceId:o,indexes:t,rowComponent:d=Ge,getRowComponentProps:r,separator:n,debugIds:i})=>{const c=R(t),l=c?.getStore(),I=c?.getTableId(e),a=le(e,o,c);return ze(s(a,(e=>Me(d,{...je(r,e),key:e,tableId:I,rowId:e,store:l,debugIds:i}))),n,i,o)},Oe=({indexId:e,indexes:o,sliceComponent:t=Ne,getSliceComponentProps:d,separator:r,debugIds:n})=>ze(s(ce(e,o),(s=>Me(t,{...je(d,s),key:s,indexId:e,sliceId:s,indexes:o,debugIds:n}))),r,n,e),Qe=({relationshipId:e,localRowId:o,relationships:t,rowComponent:d=Ge,getRowComponentProps:s,debugIds:n})=>{const[i,c]=Ee(t),l=i?.getRemoteTableId(e),I=ue(e,o,i);return ze(r(l)||r(I)?null:Me(d,{...je(s,I),key:I,tableId:l,rowId:I,store:c,debugIds:n}),void 0,n,o)},Ue=e=>$e(e,be,e.remoteRowId),Ve=e=>$e(e,ge,e.firstRowId),We=({checkpoints:e,checkpointId:o,debugIds:t})=>ze(he(o,e)??"",void 0,t,o),Xe=Fe((e=>e[0])),Ye=Fe((e=>r(e[1])?[]:[e[1]])),Ze=Fe((e=>e[2]));export{Xe as BackwardCheckpointsView,De as CellView,We as CheckpointView,Ye as CurrentCheckpointView,Ze as ForwardCheckpointsView,Oe as IndexView,Ve as LinkedRowsView,Ue as LocalRowsView,Ke as MetricView,qe as Provider,Qe as RemoteRowView,Ge as RowView,Ne as SliceView,He as TableView,Je as TablesView,N as useAddRowCallback,G as useCell,D as useCellIds,te as useCellIdsListener,de as useCellListener,he as useCheckpoint,Re as useCheckpointIds,Se as useCheckpointIdsListener,Be as useCheckpointListener,C as useCheckpoints,ke as useCreateCheckpoints,ie as useCreateIndexes,se as useCreateMetrics,fe as useCreatePersister,pe as useCreateRelationships,E as useCreateStore,X as useDelCellCallback,W as useDelRowCallback,V as useDelTableCallback,U as useDelTablesCallback,ye as useGoBackwardCallback,Te as useGoForwardCallback,xe as useGoToCallback,g as useIndexes,ge as useLinkedRowIds,me as useLinkedRowIdsListener,be as useLocalRowIds,Ce as useLocalRowIdsListener,re as useMetric,ne as useMetricListener,b as useMetrics,Le as useRedoInformation,w as useRelationships,ue as useRemoteRowId,we as useRemoteRowIdListener,z as useRow,q as useRowIds,ee as useRowIdsListener,oe as useRowListener,Q as useSetCellCallback,ve as useSetCheckpointCallback,O as useSetPartialRowCallback,K as useSetRowCallback,J as useSetTableCallback,H as useSetTablesCallback,ce as useSliceIds,Ie as useSliceIdsListener,le as useSliceRowIds,ae as useSliceRowIdsListener,u as useStore,j as useTable,F as useTableIds,Z as useTableIdsListener,_ as useTableListener,$ as useTables,Y as useTablesListener,Pe as useUndoInformation};
1
+ import e,{useContext as o}from"react";const t=e=>typeof e,s=t(""),d=(e,o)=>e.map(o),r=e=>null==e,n=(e,o,t)=>r(e)?t?.():o(e),l=()=>{},{createContext:I,useContext:u}=e,c=I([]),a=(e,o)=>{const t=u(c);return r(e)?t[o]:((e,o)=>n(e,(e=>e[o])))(t[o+1],e)},i=(e,o)=>{const d=a(e,o);return r(e)||(e=>t(e)==s)(e)?d:e},p=e=>a(e,0),R=e=>a(e,2),b=e=>a(e,4),w=e=>a(e,6),g=e=>a(e,8),C=e=>a(e,10),m=e=>i(e,0),k=e=>i(e,2),y=e=>i(e,4),h=e=>i(e,6),T=e=>i(e,8),q=e=>i(e,10),{useCallback:v,useEffect:P,useMemo:x,useRef:S,useState:B}=e,L=(e,o,t=[])=>{const s=x((()=>o(e)),[e,...t]);return P((()=>()=>s.destroy()),[s]),s},f=(e,o,t,s=[],d=[],n)=>{const[,l]=B(),I=v((()=>o?.["get"+e]?.(...s)??t),[o,...s]),[u]=B(I),c=S(u);return x((()=>c.current=I()),[I]),M(e,o,((...e)=>{c.current=r(n)?I():e[n],l([])}),[],s,...d),c.current},M=(e,o,t,s=[],d=[],...r)=>P((()=>{const s=o?.[`add${e}Listener`]?.(...d,t,...r);return()=>o?.delListener(s)}),[o,...d,...s,...r]),A=(e,o,t,s=[],d=l,r=[],...I)=>{const u=m(e);return v((e=>n(u,(s=>n(t(e,s),(e=>d(s["set"+o](...I,e),e)))))),[u,o,...s,...r,...I])},E=(e,o,t=l,s=[],...d)=>{const r=m(e);return v((()=>t(r?.["del"+o](...d))),[r,o,...s,...d])},F=(e,o,t)=>{const s=q(e);return v((()=>s?.[o](t)),[s,o,t])},$=(e,o=[])=>x(e,o),j=e=>f("Tables",m(e),{}),z=(e,o)=>f("TableIds",m(e),[],[],[o]),D=(e,o)=>f("Table",m(o),{},[e]),G=(e,o,t)=>f("RowIds",m(o),[],[e],[t]),H=(e,o,t,s,d)=>f("SortedRowIds",m(s),[],[e,o,t],[d],4),J=(e,o,t)=>f("Row",m(t),{},[e,o]),K=(e,o,t,s)=>f("CellIds",m(t),[],[e,o],[s]),N=(e,o,t,s)=>f("Cell",m(s),void 0,[e,o,t],[],4),O=(e,o,t,s,d)=>A(t,"Tables",e,o,s,d),Q=(e,o,t,s,d,r)=>A(s,"Table",o,t,d,r,e),U=(e,o,t,s,d,r,n)=>A(d,"Row",t,s,r,n,e,o),V=(e,o,t=[],s,d=l,r=[])=>{const I=m(s);return v((t=>n(I,(s=>n(o(t,s),(o=>d(s.addRow(e,o),s,o)))))),[I,e,...t,...r])},W=(e,o,t,s,d,r,n)=>A(d,"PartialRow",t,s,r,n,e,o),X=(e,o,t,s,d,r,n,l)=>A(r,"Cell",s,d,n,l,e,o,t),Y=(e,o,t)=>E(e,"Tables",o,t),Z=(e,o,t,s)=>E(o,"Table",t,s,e),_=(e,o,t,s,d)=>E(t,"Row",s,d,e,o),ee=(e,o,t,s,d,r,n)=>E(d,"Cell",r,n,e,o,t,s),oe=(e,o,t,s)=>M("Tables",m(s),e,o,[],t),te=(e,o,t,s,d)=>M("TableIds",m(d),e,o,[],t,s),se=(e,o,t,s,d)=>M("Table",m(d),o,t,[e],s),de=(e,o,t,s,d,r)=>M("RowIds",m(r),o,t,[e],s,d),re=(e,o,t,s,d,r,n)=>M("SortedRowIds",m(n),s,d,[e,o,t],r),ne=(e,o,t,s,d,r)=>M("Row",m(r),t,s,[e,o],d),le=(e,o,t,s,d,r,n)=>M("CellIds",m(n),t,s,[e,o],d,r),Ie=(e,o,t,s,d,r,n)=>M("Cell",m(n),s,d,[e,o,t],r),ue=(e,o,t)=>L(e,o,t),ce=(e,o)=>f("Metric",k(o),void 0,[e]),ae=(e,o,t,s)=>M("Metric",k(s),o,t,[e]),ie=(e,o,t)=>L(e,o,t),pe=(e,o)=>f("SliceIds",y(o),[],[e]),Re=(e,o,t)=>f("SliceRowIds",y(t),[],[e,o]),be=(e,o,t,s)=>M("SliceIds",y(s),o,t,[e]),we=(e,o,t,s,d)=>M("SliceRowIds",y(d),t,s,[e,o]),ge=(e,o,t)=>L(e,o,t),Ce=(e,o,t)=>f("RemoteRowId",h(t),void 0,[e,o]),me=(e,o,t)=>f("LocalRowIds",h(t),[],[e,o]),ke=(e,o,t)=>f("LinkedRowIds",h(t),[],[e,o]),ye=(e,o,t,s,d)=>M("RemoteRowId",h(d),t,s,[e,o]),he=(e,o,t,s,d)=>M("LocalRowIds",h(d),t,s,[e,o]),Te=(e,o,t,s,d)=>M("LinkedRowIds",h(d),t,s,[e,o]),qe=(e,o,t)=>L(e,o,t),ve=(e,o)=>f("ResultTable",T(o),{},[e]),Pe=(e,o,t)=>f("ResultRowIds",T(o),[],[e],[t]),xe=(e,o,t,s)=>f("ResultSortedRowIds",T(s),[],[e,o,t],[],4),Se=(e,o,t)=>f("ResultRow",T(t),{},[e,o]),Be=(e,o,t)=>f("ResultCellIds",T(t),[],[e,o]),Le=(e,o,t,s)=>f("ResultCell",T(s),void 0,[e,o,t]),fe=(e,o,t,s)=>M("ResultTable",T(s),o,t,[e]),Me=(e,o,t,s,d)=>M("ResultRowIds",T(d),o,t,[e],s),Ae=(e,o,t,s,d,r)=>M("ResultSortedRowIds",T(r),s,d,[e,o,t]),Ee=(e,o,t,s,d)=>M("ResultRow",T(d),t,s,[e,o]),Fe=(e,o,t,s,d)=>M("ResultCellIds",T(d),t,s,[e,o]),$e=(e,o,t,s,d,r)=>M("ResultCell",T(r),s,d,[e,o,t]),je=(e,o,t)=>L(e,o,t),ze=e=>f("CheckpointIds",q(e),[[],void 0,[]]),De=(e,o)=>f("Checkpoint",q(o),void 0,[e]),Ge=(e=l,o=[],t,s=l,d=[])=>{const r=q(t);return v((o=>n(r,(t=>{const d=e(o);s(t.addCheckpoint(d),t,d)}))),[r,...o,...d])},He=e=>F(e,"goBackward"),Je=e=>F(e,"goForward"),Ke=(e,o=[],t,s=l,d=[])=>{const r=q(t);return v((o=>n(r,(t=>n(e(o),(e=>s(t.goTo(e),e)))))),[r,...o,...d])},Ne=e=>{const o=q(e),[t,s]=ze(o);return[(d=t,!(0==(e=>e.length)(d))),He(o),s,n(s,(e=>o?.getCheckpoint(e)))??""];var d},Oe=e=>{const o=q(e),[,,[t]]=ze(o);return[!r(t),Je(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},Qe=(e,o,t)=>M("CheckpointIds",q(t),e,o),Ue=(e,o,t,s)=>M("Checkpoint",q(s),o,t,[e]),Ve=(e,o,t=[],s,d=[])=>{const[,r]=B(),n=x((()=>o(e)),[e,...t]);return P((()=>((async()=>{await(s?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},{createElement:We,useMemo:Xe}=e,Ye=e=>{const o=h(e);return[o,o?.getStore()]},Ze=({relationshipId:e,relationships:o,rowComponent:t=ro,getRowComponentProps:s,separator:r,debugIds:n},l,I)=>{const[u,c]=Ye(o),a=u?.getLocalTableId(e),i=l(e,I,u);return to(d(i,(e=>We(t,{...eo(s,e),key:e,tableId:a,rowId:e,store:c,debugIds:n}))),r,n,I)},_e=e=>({checkpoints:o,checkpointComponent:t=mo,getCheckpointComponentProps:s,separator:r,debugIds:n})=>{const l=q(o);return to(d(e(ze(l)),(e=>We(t,{...eo(s,e),key:e,checkpoints:l,checkpointId:e,debugIds:n}))),r)},eo=(e,o)=>r(e)?{}:e(o),oo=({store:e,storesById:t,metrics:s,metricsById:d,indexes:r,indexesById:n,relationships:l,relationshipsById:I,queries:u,queriesById:a,checkpoints:i,checkpointsById:p,children:R})=>{const b=o(c);return We(c.Provider,{value:Xe((()=>[e??b[0],{...b[1],...t},s??b[2],{...b[3],...d},r??b[4],{...b[5],...n},l??b[6],{...b[7],...I},u??b[8],{...b[9],...a},i??b[10],{...b[11],...p}]),[e,t,s,d,r,n,l,I,u,a,i,p,b])},R)},to=(e,o,t,s)=>{const n=r(o)||!Array.isArray(e)?e:d(e,((e,t)=>t>0?[o,e]:e));return t?[s,":{",n,"}"]:n},so=({tableId:e,rowId:o,cellId:t,store:s,debugIds:d})=>to(""+(N(e,o,t,s)??""),void 0,d,t),ro=({tableId:e,rowId:o,store:t,trackReorder:s,cellComponent:r=so,getCellComponentProps:n,separator:l,debugIds:I})=>to(d(K(e,o,t,s),(s=>We(r,{...eo(n,s),key:s,tableId:e,rowId:o,cellId:s,store:t,debugIds:I}))),l,I,o),no=({tableId:e,cellId:o,descending:t,store:s,rowComponent:r=ro,getRowComponentProps:n,separator:l,debugIds:I})=>to(d(H(e,o,t,s),(o=>We(r,{...eo(n,o),key:o,tableId:e,rowId:o,store:s,debugIds:I}))),l,I,e),lo=({tableId:e,store:o,trackReorder:t,rowComponent:s=ro,getRowComponentProps:r,separator:n,debugIds:l})=>to(d(G(e,o,t),(t=>We(s,{...eo(r,t),key:t,tableId:e,rowId:t,store:o,debugIds:l}))),n,l,e),Io=({store:e,trackReorder:o,tableComponent:t=lo,getTableComponentProps:s,separator:r,debugIds:n})=>to(d(z(e,o),(o=>We(t,{...eo(s,o),key:o,tableId:o,store:e,debugIds:n}))),r),uo=({metricId:e,metrics:o,debugIds:t})=>to(ce(e,o)??"",void 0,t,e),co=({indexId:e,sliceId:o,indexes:t,rowComponent:s=ro,getRowComponentProps:r,separator:n,debugIds:l})=>{const I=y(t),u=I?.getStore(),c=I?.getTableId(e),a=Re(e,o,I);return to(d(a,(e=>We(s,{...eo(r,e),key:e,tableId:c,rowId:e,store:u,debugIds:l}))),n,l,o)},ao=({indexId:e,indexes:o,sliceComponent:t=co,getSliceComponentProps:s,separator:r,debugIds:n})=>to(d(pe(e,o),(d=>We(t,{...eo(s,d),key:d,indexId:e,sliceId:d,indexes:o,debugIds:n}))),r,n,e),io=({relationshipId:e,localRowId:o,relationships:t,rowComponent:s=ro,getRowComponentProps:d,debugIds:n})=>{const[l,I]=Ye(t),u=l?.getRemoteTableId(e),c=Ce(e,o,l);return to(r(u)||r(c)?null:We(s,{...eo(d,c),key:c,tableId:u,rowId:c,store:I,debugIds:n}),void 0,n,o)},po=e=>Ze(e,me,e.remoteRowId),Ro=e=>Ze(e,ke,e.firstRowId),bo=({queryId:e,rowId:o,cellId:t,queries:s,debugIds:d})=>to(""+(Le(e,o,t,s)??""),void 0,d,t),wo=({queryId:e,rowId:o,queries:t,resultCellComponent:s=bo,getResultCellComponentProps:r,separator:n,debugIds:l})=>to(d(Be(e,o,t),(d=>We(s,{...eo(r,d),key:d,queryId:e,rowId:o,cellId:d,queries:t,debugIds:l}))),n,l,o),go=({queryId:e,queries:o,trackReorder:t,resultRowComponent:s=wo,getResultRowComponentProps:r,separator:n,debugIds:l})=>to(d(Pe(e,o,t),(t=>We(s,{...eo(r,t),key:t,queryId:e,rowId:t,queries:o,debugIds:l}))),n,l,e),Co=({queryId:e,cellId:o,descending:t,queries:s,resultRowComponent:r=wo,getResultRowComponentProps:n,separator:l,debugIds:I})=>to(d(xe(e,o,t,s),(o=>We(r,{...eo(n,o),key:o,queryId:e,rowId:o,queries:s,debugIds:I}))),l,I,e),mo=({checkpoints:e,checkpointId:o,debugIds:t})=>to(De(o,e)??"",void 0,t,o),ko=_e((e=>e[0])),yo=_e((e=>r(e[1])?[]:[e[1]])),ho=_e((e=>e[2]));export{ko as BackwardCheckpointsView,so as CellView,mo as CheckpointView,yo as CurrentCheckpointView,ho as ForwardCheckpointsView,ao as IndexView,Ro as LinkedRowsView,po as LocalRowsView,uo as MetricView,oo as Provider,io as RemoteRowView,bo as ResultCellView,wo as ResultRowView,Co as ResultSortedTableView,go as ResultTableView,ro as RowView,co as SliceView,no as SortedTableView,lo as TableView,Io as TablesView,V as useAddRowCallback,N as useCell,K as useCellIds,le as useCellIdsListener,Ie as useCellListener,De as useCheckpoint,ze as useCheckpointIds,Qe as useCheckpointIdsListener,Ue as useCheckpointListener,C as useCheckpoints,je as useCreateCheckpoints,ie as useCreateIndexes,ue as useCreateMetrics,Ve as useCreatePersister,qe as useCreateQueries,ge as useCreateRelationships,$ as useCreateStore,ee as useDelCellCallback,_ as useDelRowCallback,Z as useDelTableCallback,Y as useDelTablesCallback,He as useGoBackwardCallback,Je as useGoForwardCallback,Ke as useGoToCallback,b as useIndexes,ke as useLinkedRowIds,Te as useLinkedRowIdsListener,me as useLocalRowIds,he as useLocalRowIdsListener,ce as useMetric,ae as useMetricListener,R as useMetrics,g as useQueries,Oe as useRedoInformation,w as useRelationships,Ce as useRemoteRowId,ye as useRemoteRowIdListener,Le as useResultCell,Be as useResultCellIds,Fe as useResultCellIdsListener,$e as useResultCellListener,Se as useResultRow,Pe as useResultRowIds,Me as useResultRowIdsListener,Ee as useResultRowListener,xe as useResultSortedRowIds,Ae as useResultSortedRowIdsListener,ve as useResultTable,fe as useResultTableListener,J as useRow,G as useRowIds,de as useRowIdsListener,ne as useRowListener,X as useSetCellCallback,Ge as useSetCheckpointCallback,W as useSetPartialRowCallback,U as useSetRowCallback,Q as useSetTableCallback,O as useSetTablesCallback,pe as useSliceIds,be as useSliceIdsListener,Re as useSliceRowIds,we as useSliceRowIdsListener,H as useSortedRowIds,re as useSortedRowIdsListener,p as useStore,D as useTable,z as useTableIds,te as useTableIdsListener,se as useTableListener,j as useTables,oe as useTablesListener,Ne as useUndoInformation};
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e.includes(t),n=(e,t)=>e.forEach(t),o=e=>e.length,s=e=>0==o(e),r=e=>e.slice(1),i=(e,t)=>e.push(t),c=e=>e.pop(),l=e=>null==e,d=(e,t,n)=>l(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,u=e=>l(e)||0==(e=>e.size)(e),p=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),f=e=>new Map(e),C=(e,t)=>e?.get(t),g=(e,t,n)=>l(n)?(h(e,t),e):e?.set(t,n),k=(e,t,n)=>(a(e,t)||g(e,t,n()),C(e,t)),y=e=>new Set(e),v=(e,t,n)=>o(n)<2?((e,t)=>e?.add(t))(s(n)?e:k(e,n[0],y),t):v(k(e,n[0],f),t,r(n)),L=e=>{const t=(o,i,...c)=>d(o,(o=>s(c)?e(o,i):n([c[0],null],(e=>t(C(o,e),i,...r(c))))));return t},b=Object.freeze,w=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{let r,w,S,T=100,j=f(),x=1;const z=y(),E=f(),[M,m,B]=(e=>{let t,s=0;const r=[],a=f();return[(n,o,i=[])=>{t??=e();const l=c(r)??""+s++;return g(a,l,[n,o,i]),v(o,l,i),l},(e,n=[],...o)=>L(p)(e,(e=>d(C(a,e),(([e])=>e(t,...n,...o)))),...n),e=>d(C(a,e),(([,t,n])=>(L(h)(t,e,...n),g(a,e),o(r)<1e3&&i(r,e),n)),(()=>[])),(e,s,r)=>d(C(a,e),(([e,,i])=>{const c=(...d)=>{const a=o(d);a==o(i)?e(t,...d,...r(d)):l(i[a])?n(s[a](...d),(e=>c(...d,e))):c(...d,i[a])};c()}))]})((()=>U)),I=f(),O=f(),_=[],F=[],P=(t,n)=>{x=0,e.transaction((()=>p(C(I,n),((n,o)=>p(n,((n,s)=>p(n,((n,r)=>l(n[t])?e.delCell(o,s,r,!0):e.setCell(o,s,r,n[t]))))))))),x=1},W=e=>{g(I,e),g(O,e),m(E,[e])},q=(e,t)=>n(((e,t)=>e.splice(0,t))(e,t??o(e)),W),A=()=>q(_,o(_)-T),D=e.addCellListener(null,null,null,((e,t,n,o,s,l)=>{if(x){d(r,(()=>{i(_,r),A(),q(F),r=void 0,S=1}));const e=k(j,t,f),a=k(e,n,f),p=k(a,o,(()=>[l,void 0]));p[1]=s,p[0]===s&&u(g(a,o))&&u(g(e,n))&&u(g(j,t))&&(r=c(_),S=1),K()}})),G=(e="")=>(l(r)&&(r=""+w++,g(I,r,j),Q(r,e),j=f(),S=1),r),H=()=>{s(_)||(F.unshift(G()),P(0,r),r=c(_),S=1)},J=()=>{s(F)||(i(_,r),r=F.shift(),P(1,r),S=1)},K=()=>{S&&(m(z),S=0)},N=e=>{const t=G(e);return K(),t},Q=(e,t)=>(R(e)&&C(O,e)!==t&&(g(O,e,t),m(E,[e])),U),R=e=>a(I,e),U={setSize:e=>(T=e,A(),U),addCheckpoint:N,setCheckpoint:Q,getStore:()=>e,getCheckpointIds:()=>[[..._],r,[...F]],forEachCheckpoint:e=>{return t=e,p(O,((e,n)=>t(n,e)));var t},hasCheckpoint:R,getCheckpoint:e=>C(O,e),goBackward:()=>(H(),K(),U),goForward:()=>(J(),K(),U),goTo:e=>{const n=t(_,e)?H:t(F,e)?J:null;for(;!l(n)&&e!=r;)n();return K(),U},addCheckpointIdsListener:e=>M(e,z),addCheckpointListener:(e,t)=>M(t,E,[e]),delListener:e=>(B(e),U),clear:()=>(q(_),q(F),l(r)||W(r),r=void 0,w=0,N(),U),destroy:()=>{e.delListener(D)},getListenerStats:()=>({})};return b(U.clear())}));e.createCheckpoints=w,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,t;e=this,t=function(e){"use strict";const t="",n=(e,t)=>e.includes(t),o=(e,t)=>e.forEach(t),r=e=>e.length,s=e=>0==r(e),i=(e,...t)=>e.push(...t),l=e=>e.pop(),c=e=>null==e,d=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),p=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),f=e=>new Map(e),C=(e,t)=>e?.get(t),g=(e,t,n)=>c(n)?(h(e,t),e):e?.set(t,n),k=(e,t,n)=>(a(e,t)||g(e,t,n()),C(e,t)),v=(e,t,n,o,s=0)=>d((n?k:C)(e,t[s],s>r(t)-2?n:f),(i=>{if(s>r(t)-2)return o?.(i)&&g(e,t[s]),i;const l=v(i,t,n,o,s+1);return u(i)&&g(e,t[s]),l})),y=e=>new Set(e),L=(e,n=[t])=>{const s=[],l=(e,t)=>t==r(n)?i(s,e):null===n[t]?p(e,(e=>l(e,t+1))):o([n[t],null],(n=>l(C(e,n),t+1)));return l(e,0),s},b=Object.freeze,w=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{let w,S,T,j=100,x=f(),z=1;const E=f(),M=f(),[m,B,I]=(e=>{let n,s=0;const a=[],k=f();return[(o,r,i)=>{n??=e();const c=l(a)??t+s++;var d;return g(k,c,[o,r,i]),d=c,v(r,i??[t],y)?.add(d),c},(e,t,...r)=>o(L(e,t),(e=>p(e,(e=>C(k,e)[0](n,...t??[],...r))))),e=>d(C(k,e),(([,n,o])=>(v(n,o??[t],void 0,(t=>(h(t,e),u(t)?1:0))),g(k,e),r(a)<1e3&&i(a,e),o))),(e,t)=>{return n=L(e,t),o=c,!n.every(o);var n,o},(e,t,s)=>d(C(k,e),(([e,,i=[]])=>{const l=(...d)=>{const a=r(d);a==r(i)?e(n,...d,...s(d)):c(i[a])?o(t[a](...d),(e=>l(...d,e))):l(...d,i[a])};l()}))]})((()=>V)),O=f(),_=f(),F=[],P=[],W=(t,n)=>{z=0,e.transaction((()=>p(C(O,n),((n,o)=>p(n,((n,r)=>p(n,((n,s)=>((e,t,n,o,r)=>c(r)?e.delCell(t,n,o,!0):e.setCell(t,n,o,r))(e,o,r,s,n[t]))))))))),z=1},q=e=>{g(O,e),g(_,e),B(M,[e])},A=(e,t)=>o(((e,t)=>e.splice(0,t))(e,t??r(e)),q),D=()=>A(F,r(F)-j),G=e.addCellListener(null,null,null,((e,t,n,o,r,s)=>{if(z){d(w,(()=>{i(F,w),D(),A(P),w=void 0,T=1}));const e=k(x,t,f),c=k(e,n,f),a=k(c,o,(()=>[s,void 0]));a[1]=r,a[0]===r&&u(g(c,o))&&u(g(e,n))&&u(g(x,t))&&(w=l(F),T=1),N()}})),H=(e="")=>(c(w)&&(w=t+S++,g(O,w,x),R(w,e),x=f(),T=1),w),J=()=>{s(F)||(P.unshift(H()),W(0,w),w=l(F),T=1)},K=()=>{s(P)||(i(F,w),w=P.shift(),W(1,w),T=1)},N=()=>{T&&(B(E),T=0)},Q=e=>{const t=H(e);return N(),t},R=(e,t)=>(U(e)&&C(_,e)!==t&&(g(_,e,t),B(M,[e])),V),U=e=>a(O,e),V={setSize:e=>(j=e,D(),V),addCheckpoint:Q,setCheckpoint:R,getStore:()=>e,getCheckpointIds:()=>[[...F],w,[...P]],forEachCheckpoint:e=>{return t=e,p(_,((e,n)=>t(n,e)));var t},hasCheckpoint:U,getCheckpoint:e=>C(_,e),goBackward:()=>(J(),N(),V),goForward:()=>(K(),N(),V),goTo:e=>{const t=n(F,e)?J:n(P,e)?K:null;for(;!c(t)&&e!=w;)t();return N(),V},addCheckpointIdsListener:e=>m(e,E),addCheckpointListener:(e,t)=>m(t,M,[e]),delListener:e=>(I(e),V),clear:()=>(A(F),A(P),c(w)||q(w),w=void 0,S=0,Q(),V),destroy:()=>{e.delListener(G)},getListenerStats:()=>({})};return b(V.clear())}));e.createCheckpoints=w,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=(e,t)=>e.every(((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),d=(e,t)=>e.forEach(t),r=e=>e.length,i=e=>0==r(e),c=e=>e.slice(1),l=e=>null==e,a=(e,t,n)=>l(e)?n?.():t(e),f=(e,t)=>e?.has(t)??!1,u=e=>l(e)||0==(e=>e.size)(e),h=e=>e.clear(),p=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),g=e=>new Map(e),x=e=>[...e?.keys()??[]],y=(e,t)=>e?.get(t),S=(e,t)=>p(e,((e,n)=>t(n,e))),b=(e,t,n)=>l(n)?(I(e,t),e):e?.set(t,n),w=(e,t,n)=>(f(e,t)||b(e,t,n()),y(e,t)),v=e=>new Set(e),L=(e,t)=>e?.add(t),T=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),E=(e,t)=>e<t?-1:1,R=(e,t,n)=>r(n)<2?L(i(n)?e:w(e,n[0],v),t):R(w(e,n[0],g),t,c(n)),j=e=>{const t=(n,s,...o)=>a(n,(n=>i(o)?e(n,s):d([o[0],null],(e=>t(y(n,e),s,...c(o))))));return t},M=Object.freeze,k=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=g(),n=g(),[i,c,w,k,m,z,C,D,O,_]=((e,t,n)=>{const s=e.hasRow,o=g(),r=g(),i=g(),c=g(),u=g(),I=t=>a(y(u,t),(n=>{p(n,e.delListener),b(u,t)})),w=e=>{b(o,e),b(r,e),b(i,e),b(c,e),I(e)};return[()=>e,()=>x(o),e=>S(r,e),e=>f(r,e),e=>y(o,e),e=>y(r,e),(e,t)=>b(r,e,t),(a,x,w,L,T)=>{const E=g(),R=g();b(o,a,x),f(r,a)||(b(r,a,t()),b(i,a,g()),b(c,a,g()));const j=y(i,a),M=y(c,a),k=t=>{const o=n=>e.getCell(x,t,n),d=y(j,t),r=s(x,t)?n(L(o,t)):void 0;if(d!=r&&b(E,t,[d,r]),!l(T)){const e=y(M,t),n=s(x,t)?T(o,t):void 0;e!=n&&b(R,t,n)}},m=e=>{w((()=>{p(E,(([,e],t)=>b(j,t,e))),p(R,((e,t)=>b(M,t,e)))}),E,R,j,M,e),h(E),h(R)};S(j,k),e.hasTable(x)&&d(e.getRowIds(x),(e=>{f(j,e)||k(e)})),m(!0),I(a),b(u,a,v([e.addRowListener(x,null,((e,t,n)=>k(n))),e.addTableListener(x,(()=>m()))]))},w,()=>S(u,w)]})(e,g,(e=>l(e)?"":e+"")),[B,P,W]=(e=>{let t,n=0;const s=[],o=g();return[(d,r,i=[])=>{t??=e();const c=s.pop()??""+n++;return b(o,c,[d,r,i]),R(r,c,i),c},(e,n=[],...s)=>j(p)(e,(e=>a(y(o,e),(([e])=>e(t,...n,...s)))),...n),e=>a(y(o,e),(([,t,n])=>(j(I)(t,e,...n),b(o,e),r(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>a(y(o,e),(([e,,o])=>{const i=(...c)=>{const a=r(c);a==r(o)?e(t,...c,...s(c)):l(o[a])?d(n[a](...c),(e=>i(...c,e))):i(...c,o[a])};i()}))]})((()=>A)),q=(t,n,s)=>{const o=m(t);p(s,((t,s)=>n(s,(n=>p(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},A={setIndexDefinition:(e,d,r,i,c,h=E)=>{const x=l(c)?void 0:([e],[t])=>c(e,t);return D(e,d,((d,r,c,w,T,E)=>{let R=0;const j=v(),M=v(),k=z(e);if(p(r,(([e,t],n)=>{l(e)||(L(j,e),a(y(k,e),(t=>{I(t,n),u(t)&&(b(k,e),R=1)}))),l(t)||(L(j,t),f(k,t)||(b(k,t,v()),R=1),L(y(k,t),n),l(i)||L(M,t))})),d(),u(T)||(E?S(k,(e=>L(M,e))):S(c,(e=>a(y(w,e),(e=>L(M,e))))),p(M,(e=>{const t=(t,n)=>h(y(T,t),y(T,n),e),n=[...y(k,e)];s(n,t)||(b(k,e,v(o(n,t))),L(j,e))}))),(R||E)&&!l(x)){const t=[...k];s(t,x)||(C(e,g(o(t,x))),R=1)}R&&P(t,[e]),p(j,(t=>P(n,[e,t])))}),T(r),a(i,T)),A},delIndexDefinition:e=>(O(e),A),getStore:i,getIndexIds:c,forEachIndex:e=>w(((t,n)=>e(t,(e=>q(t,e,n))))),forEachSlice:(e,t)=>q(e,t,z(e)),hasIndex:k,hasSlice:(e,t)=>f(z(e),t),getTableId:m,getSliceIds:e=>x(z(e)),getSliceRowIds:(e,t)=>[...y(z(e),t)?.values()??[]],addSliceIdsListener:(e,n)=>B(n,t,[e]),addSliceRowIdsListener:(e,t,s)=>B(s,n,[e,t]),delListener:e=>(W(e),A),destroy:_,getListenerStats:()=>({})};return M(A)}));e.createIndexes=k,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=(e,t)=>e.every(t),r=(e,t)=>o(e,((n,s)=>0==s||t(e[s-1],n)<=0)),d=(e,t)=>e.sort(t),i=(e,t)=>e.forEach(t),l=e=>e.length,c=(e,...t)=>e.push(...t),a=e=>null==e,f=(e,t,n)=>a(e)?n?.():t(e),u=(e,t)=>e?.has(t)??!1,h=e=>a(e)||0==(e=>e.size)(e),p=e=>[...e?.values()??[]],I=e=>e.clear(),g=(e,t)=>e?.forEach(t),x=(e,t)=>e?.delete(t),y=e=>new Map(e),S=e=>[...e?.keys()??[]],b=(e,t)=>e?.get(t),v=(e,t)=>g(e,((e,n)=>t(n,e))),w=(e,t,n)=>a(n)?(x(e,t),e):e?.set(t,n),L=(e,t,n)=>(u(e,t)||w(e,t,n()),b(e,t)),T=(e,t,n,s,o=0)=>f((n?L:b)(e,t[o],o>l(t)-2?n:y),(r=>{if(o>l(t)-2)return s?.(r)&&w(e,t[o]),r;const d=T(r,t,n,s,o+1);return h(r)&&w(e,t[o]),d})),E=e=>new Set(e),R=(e,t)=>e?.add(t),j=(e,t,n)=>{const s=e.hasRow,o=y(),r=y(),d=y(),c=y(),T=y(),j=(t,n,...s)=>{const o=L(T,t,E);return i(s,(t=>R(o,t)&&n&&e.callListener(t))),s},M=(t,...n)=>f(b(T,t),(s=>{i(0==l(n)?p(s):n,(t=>{e.delListener(t),x(s,t)})),h(s)&&w(T,t)})),k=(e,n)=>{w(o,e,n),u(r,e)||(w(r,e,t()),w(d,e,y()),w(c,e,y()))},m=e=>{w(o,e),w(r,e),w(d,e),w(c,e),M(e)};return[()=>e,()=>S(o),e=>v(r,e),e=>u(r,e),e=>b(o,e),e=>b(r,e),(e,t)=>w(r,e,t),k,(t,o,r,l,f)=>{k(t,o);const h=y(),p=y(),x=b(d,t),S=b(c,t),L=t=>{const r=n=>e.getCell(o,t,n),d=b(x,t),i=s(o,t)?n(l(r,t)):void 0;if(d!=i&&w(h,t,[d,i]),!a(f)){const e=b(S,t),n=s(o,t)?f(r,t):void 0;e!=n&&w(p,t,n)}},T=e=>{r((()=>{g(h,(([,e],t)=>w(x,t,e))),g(p,((e,t)=>w(S,t,e)))}),h,p,x,S,e),I(h),I(p)};v(x,L),e.hasTable(o)&&i(e.getRowIds(o),(e=>{u(x,e)||L(e)})),T(!0),M(t),j(t,0,e.addRowListener(o,null,((e,t,n)=>L(n))),e.addTableListener(o,(()=>T())))},m,()=>v(T,m),j,M]},M=(e,o)=>t(e)==s?t=>t(e):e??(()=>o??n),k=(e,t)=>e<t?-1:1,m=(e,t=[n])=>{const s=[],o=(e,n)=>n==l(t)?c(s,e):null===t[n]?g(e,(e=>o(e,n+1))):i([t[n],null],(t=>o(b(e,t),n+1)));return o(e,0),s},z=Object.freeze,C=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=y(),s=y(),[I,L,C,D,O,_,B,,P,W,q]=j(e,y,(e=>a(e)?n:e+n)),[A,F,G]=(e=>{let t,s=0;const r=[],d=y();return[(o,i,l)=>{t??=e();const c=r.pop()??n+s++;return w(d,c,[o,i,l]),R(T(i,l??[n],E),c),c},(e,n,...s)=>i(m(e,n),(e=>g(e,(e=>b(d,e)[0](t,...n??[],...s))))),e=>f(b(d,e),(([,t,s])=>(T(t,s??[n],void 0,(t=>(x(t,e),h(t)?1:0))),w(d,e),l(r)<1e3&&c(r,e),s))),(e,t)=>!o(m(e,t),a),(e,n,s)=>f(b(d,e),(([e,,o=[]])=>{const r=(...d)=>{const c=l(d);c==l(o)?e(t,...d,...s(d)):a(o[c])?i(n[c](...d),(e=>r(...d,e))):r(...d,o[c])};r()}))]})((()=>J)),H=(t,n,s)=>{const o=O(t);g(s,((t,s)=>n(s,(n=>g(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},J={setIndexDefinition:(e,n,o,i,l,c=k)=>{const p=a(l)?void 0:([e],[t])=>l(e,t);return P(e,n,((n,o,l,I,S,L)=>{let T=0;const j=E(),M=E(),k=_(e);if(g(o,(([e,t],n)=>{a(e)||(R(j,e),f(b(k,e),(t=>{x(t,n),h(t)&&(w(k,e),T=1)}))),a(t)||(R(j,t),u(k,t)||(w(k,t,E()),T=1),R(b(k,t),n),a(i)||R(M,t))})),n(),h(S)||(L?v(k,(e=>R(M,e))):v(l,(e=>f(b(I,e),(e=>R(M,e))))),g(M,(e=>{const t=(t,n)=>c(b(S,t),b(S,n),e),n=[...b(k,e)];r(n,t)||(w(k,e,E(d(n,t))),R(j,e))}))),(T||L)&&!a(p)){const t=[...k];r(t,p)||(B(e,y(d(t,p))),T=1)}T&&F(t,[e]),g(j,(t=>F(s,[e,t])))}),M(o),f(i,M)),J},delIndexDefinition:e=>(W(e),J),getStore:I,getIndexIds:L,forEachIndex:e=>C(((t,n)=>e(t,(e=>H(t,e,n))))),forEachSlice:(e,t)=>H(e,t,_(e)),hasIndex:D,hasSlice:(e,t)=>u(_(e),t),getTableId:O,getSliceIds:e=>S(_(e)),getSliceRowIds:(e,t)=>p(b(_(e),t)),addSliceIdsListener:(e,n)=>A(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>A(n,s,[e,t]),delListener:e=>(G(e),J),destroy:q,getListenerStats:()=>({})};return z(J)}));e.createIndexes=C,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(t),i=(e,t)=>e.forEach(t),o=e=>d(e,((e,t)=>e+t),0),r=e=>e.length,c=e=>0==r(e),d=(e,t,n)=>e.reduce(t,n),a=e=>e.slice(1),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,p=(e,t,n)=>h(e)?n?.():t(e),v=()=>{},M=e=>e.size,g=(e,t)=>e?.has(t)??!1,y=e=>e.clear(),b=(e,t)=>e?.forEach(t),m=(e,t)=>e?.delete(t),w=e=>new Map(e),L=(e,t)=>e?.get(t),T=(e,t)=>b(e,((e,n)=>t(n,e))),x=(e,t,n)=>h(n)?(m(e,t),e):e?.set(t,n),j=(e,t,n)=>(g(e,t)||x(e,t,n()),L(e,t)),E=e=>new Set(e),I=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),R=(e,t,n)=>r(n)<2?((e,t)=>e?.add(t))(c(n)?e:j(e,n[0],E),t):R(j(e,n[0],w),t,a(n)),S=e=>{const t=(n,s,...o)=>p(n,(n=>c(o)?e(n,s):i([o[0],null],(e=>t(L(n,e),s,...a(o))))));return t},k=Object.freeze,z=w([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),D=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const n=w(),[o,c,d,a,l,u,j,D,N,O]=((e,t,n)=>{const s=e.hasRow,o=w(),r=w(),c=w(),d=w(),a=w(),l=t=>p(L(a,t),(n=>{b(n,e.delListener),x(a,t)})),u=e=>{x(o,e),x(r,e),x(c,e),x(d,e),l(e)};return[()=>e,()=>[...o?.keys()??[]],e=>T(r,e),e=>g(r,e),e=>L(o,e),e=>L(r,e),(e,t)=>x(r,e,t),(u,f,p,v,M)=>{const m=w(),j=w();x(o,u,f),g(r,u)||(x(r,u,t()),x(c,u,w()),x(d,u,w()));const I=L(c,u),R=L(d,u),S=t=>{const i=n=>e.getCell(f,t,n),o=L(I,t),r=s(f,t)?n(v(i,t)):void 0;if(o!=r&&x(m,t,[o,r]),!h(M)){const e=L(R,t),n=s(f,t)?M(i,t):void 0;e!=n&&x(j,t,n)}},k=e=>{p((()=>{b(m,(([,e],t)=>x(I,t,e))),b(j,((e,t)=>x(R,t,e)))}),m,j,I,R,e),y(m),y(j)};T(I,S),e.hasTable(f)&&i(e.getRowIds(f),(e=>{g(I,e)||S(e)})),k(!0),l(u),x(a,u,E([e.addRowListener(f,null,((e,t,n)=>S(n))),e.addTableListener(f,(()=>k()))]))},u,()=>T(a,u)]})(e,v,(e=>isNaN(e)||h(e)||!0===e||!1===e||""===e?void 0:1*e)),[_,B,C]=(e=>{let t,n=0;const s=[],o=w();return[(i,r,c=[])=>{t??=e();const d=s.pop()??""+n++;return x(o,d,[i,r,c]),R(r,d,c),d},(e,n=[],...s)=>S(b)(e,(e=>p(L(o,e),(([e])=>e(t,...n,...s)))),...n),e=>p(L(o,e),(([,t,n])=>(S(m)(t,e,...n),x(o,e),r(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>p(L(o,e),(([e,,o])=>{const c=(...d)=>{const a=r(d);a==r(o)?e(t,...d,...s(d)):h(o[a])?i(n[a](...d),(e=>c(...d,e))):c(...d,o[a])};c()}))]})((()=>F)),F={setMetricDefinition:(e,i,o,r,c,d,a)=>{const l=t(o)==s?[o,c,d,a]:L(z,o)??L(z,"sum");return D(e,i,((t,s,i,o,r,c)=>{let d=u(e),a=M(o);const[p,v,g,y]=l;var m;c=c||h(d),b(s,(([e,t])=>{c||(d=h(e)?v?.(d,t,a++):h(t)?g?.(d,e,a--):y?.(d,t,e,a)),c=c||h(d)})),t(),h(m=o)||0==M(m)?d=void 0:c&&(d=p((e=>[...e?.values()??[]])(o),M(o))),f(d)||(d=void 0);const w=u(e);d!=w&&(j(e,d),B(n,[e],d,w))}),I(r,1)),F},delMetricDefinition:e=>(N(e),F),getStore:o,getMetricIds:c,forEachMetric:d,hasMetric:a,getTableId:l,getMetric:u,addMetricListener:(e,t)=>_(t,n,[e]),delListener:e=>(C(e),F),destroy:O,getListenerStats:()=>({})};return k(F)}));e.createMetrics=D,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",r=t(n),s=t(t),i=(e,t)=>e.forEach(t),o=e=>d(e,((e,t)=>e+t),0),c=e=>e.length,d=(e,t,n)=>e.reduce(t,n),a=(e,...t)=>e.push(...t),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,v=(e,t,n)=>h(e)?n?.():t(e),p=()=>{},M=e=>e.size,g=(e,t)=>e?.has(t)??!1,y=e=>h(e)||0==M(e),b=e=>[...e?.values()??[]],m=e=>e.clear(),L=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),T=e=>new Map(e),x=(e,t)=>e?.get(t),j=(e,t)=>L(e,((e,n)=>t(n,e))),E=(e,t,n)=>h(n)?(w(e,t),e):e?.set(t,n),I=(e,t,n)=>(g(e,t)||E(e,t,n()),x(e,t)),R=(e,t,n,r,s=0)=>v((n?I:x)(e,t[s],s>c(t)-2?n:T),(i=>{if(s>c(t)-2)return r?.(i)&&E(e,t[s]),i;const o=R(i,t,n,r,s+1);return y(i)&&E(e,t[s]),o})),S=T([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),k=e=>new Set(e),z=(e,t)=>e?.add(t),D=(e,t,n)=>{const r=e.hasRow,s=T(),o=T(),d=T(),a=T(),l=T(),u=(t,n,...r)=>{const s=I(l,t,k);return i(r,(t=>z(s,t)&&n&&e.callListener(t))),r},f=(t,...n)=>v(x(l,t),(r=>{i(0==c(n)?b(r):n,(t=>{e.delListener(t),w(r,t)})),y(r)&&E(l,t)})),p=(e,n)=>{E(s,e,n),g(o,e)||(E(o,e,t()),E(d,e,T()),E(a,e,T()))},M=e=>{E(s,e),E(o,e),E(d,e),E(a,e),f(e)};return[()=>e,()=>[...s?.keys()??[]],e=>j(o,e),e=>g(o,e),e=>x(s,e),e=>x(o,e),(e,t)=>E(o,e,t),p,(t,s,o,c,l)=>{p(t,s);const v=T(),M=T(),y=x(d,t),b=x(a,t),w=t=>{const i=n=>e.getCell(s,t,n),o=x(y,t),d=r(s,t)?n(c(i,t)):void 0;if(o!=d&&E(v,t,[o,d]),!h(l)){const e=x(b,t),n=r(s,t)?l(i,t):void 0;e!=n&&E(M,t,n)}},I=e=>{o((()=>{L(v,(([,e],t)=>E(y,t,e))),L(M,((e,t)=>E(b,t,e)))}),v,M,y,b,e),m(v),m(M)};j(y,w),e.hasTable(s)&&i(e.getRowIds(s),(e=>{g(y,e)||w(e)})),I(!0),f(t),u(t,0,e.addRowListener(s,null,((e,t,n)=>w(n))),e.addTableListener(s,(()=>I())))},M,()=>j(l,M),u,f]},N=(e,s)=>t(e)==r?t=>t(e):e??(()=>s??n),O=(e,t=[n])=>{const r=[],s=(e,n)=>n==c(t)?a(r,e):null===t[n]?L(e,(e=>s(e,n+1))):i([t[n],null],(t=>s(x(e,t),n+1)));return s(e,0),r},_=Object.freeze,B=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const r=T(),[o,d,l,u,g,m,j,,I,B,C]=D(e,p,(e=>isNaN(e)||h(e)||!0===e||!1===e||e===n?void 0:1*e)),[F,P,W]=(e=>{let t,r=0;const s=[],o=T();return[(i,c,d)=>{t??=e();const a=s.pop()??n+r++;return E(o,a,[i,c,d]),z(R(c,d??[n],k),a),a},(e,n,...r)=>i(O(e,n),(e=>L(e,(e=>x(o,e)[0](t,...n??[],...r))))),e=>v(x(o,e),(([,t,r])=>(R(t,r??[n],void 0,(t=>(w(t,e),y(t)?1:0))),E(o,e),c(s)<1e3&&a(s,e),r))),(e,t)=>{return n=O(e,t),r=h,!n.every(r);var n,r},(e,n,r)=>v(x(o,e),(([e,,s=[]])=>{const o=(...d)=>{const a=c(d);a==c(s)?e(t,...d,...r(d)):h(s[a])?i(n[a](...d),(e=>o(...d,e))):o(...d,s[a])};o()}))]})((()=>q)),q={setMetricDefinition:(e,n,i,o,c,d,a)=>{const l=t(i)==s?[i,c,d,a]:x(S,i)??x(S,"sum");return I(e,n,((t,n,s,i,o,c)=>{const d=m(e),a=M(i);c||=h(d),t();let u=((e,t,n,r,s,i=!1)=>{if(y(n))return;const[o,c,d,a]=s;return i||=h(e),L(r,(([n,r])=>{i||(e=h(n)?c?.(e,r,t++):h(r)?d?.(e,n,t--):a?.(e,r,n,t),i||=h(e))})),i?o(b(n),M(n)):e})(d,a,i,n,l,c);f(u)||(u=void 0),u!=d&&(j(e,u),P(r,[e],u,d))}),N(o,1)),q},delMetricDefinition:e=>(B(e),q),getStore:o,getMetricIds:d,forEachMetric:l,hasMetric:u,getTableId:g,getMetric:m,addMetricListener:(e,t)=>F(t,r,[e]),delListener:e=>(W(e),q),destroy:C,getListenerStats:()=>({})};return _(q)}));e.createMetrics=B,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
Binary file
@@ -0,0 +1 @@
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e.every(t),s=(e,t)=>e.forEach(t),n=e=>r(e,((e,t)=>e+t),0),l=e=>e.length,o=e=>0==l(e),r=(e,t,s)=>e.reduce(t,s),a=(e,...t)=>e.push(...t),d=e=>typeof e,i=d(""),u=d(!0),c=d(0),R=d(d),w=Math.max,f=Math.min,h=isFinite,g=e=>null==e,L=(e,t,s)=>g(e)?s?.():t(e),b=e=>d(e)==R,T=()=>{},v=e=>e.size,C=(e,t)=>e?.has(t)??!1,I=e=>g(e)||0==v(e),y=e=>[...e?.values()??[]],p=e=>e.clear(),m=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),S=e=>new Map(e),Q=e=>[...e?.keys()??[]],x=(e,t)=>e?.get(t),M=(e,t)=>m(e,((e,s)=>t(s,e))),j=(e,t,s)=>g(s)?(E(e,t),e):e?.set(t,s),k=(e,t,s)=>(C(e,t)||j(e,t,s()),x(e,t)),D=(e,t,s,n,o=0)=>L((s?k:x)(e,t[o],o>l(t)-2?s:S),(r=>{if(o>l(t)-2)return n?.(r)&&j(e,t[o]),r;const a=D(r,t,s,n,o+1);return I(r)&&j(e,t[o]),a})),F=e=>new Set(e),z=(e,t)=>e?.add(t),O=S([["avg",[(e,t)=>n(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>w(...e),(e,t)=>w(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:w(t,e)]],["min",[e=>f(...e),(e,t)=>f(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:f(t,e)]],["sum",[e=>n(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),W=e=>{const t=d(e);return(e=>e==i||e==u)(t)||t==c&&h(e)?t:void 0},_=Object,B=_.keys,P=_.freeze,q=(e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))})((e=>{const n=e.createStore,[r,d,i,u,c,,,R,,w,f,h,_]=((e,t,n)=>{const l=e.hasRow,r=S(),a=S(),d=S(),i=S(),u=S(),c=(t,n,...l)=>{const o=k(u,t,F);return s(l,(t=>z(o,t)&&n&&e.callListener(t))),l},R=(t,...n)=>L(x(u,t),(l=>{s(o(n)?y(l):n,(t=>{e.delListener(t),E(l,t)})),I(l)&&j(u,t)})),w=(e,s)=>{j(r,e,s),C(a,e)||(j(a,e,t()),j(d,e,S()),j(i,e,S()))},f=e=>{j(r,e),j(a,e),j(d,e),j(i,e),R(e)};return[()=>e,()=>Q(r),e=>M(a,e),e=>C(a,e),e=>x(r,e),e=>x(a,e),(e,t)=>j(a,e,t),w,(t,o,r,a,u)=>{w(t,o);const f=S(),h=S(),L=x(d,t),b=x(i,t),T=t=>{const s=s=>e.getCell(o,t,s),r=x(L,t),d=l(o,t)?n(a(s,t)):void 0;if(r!=d&&j(f,t,[r,d]),!g(u)){const e=x(b,t),n=l(o,t)?u(s,t):void 0;e!=n&&j(h,t,n)}},v=e=>{r((()=>{m(f,(([,e],t)=>j(L,t,e))),m(h,((e,t)=>j(b,t,e)))}),f,h,L,b,e),p(f),p(h)};M(L,T),e.hasTable(o)&&s(e.getRowIds(o),(e=>{C(L,e)||T(e)})),v(!0),R(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>T(s))),e.addTableListener(o,(()=>v())))},f,()=>M(u,f),c,R]})(e,(()=>!0),T),q=n(),A=n(),G=n(),H=S(),J=(e,t,...n)=>s(n,(s=>z(k(k(H,t,S),e,F),s))),K=e=>s([G,A,q],(t=>t.delTable(e))),N=(e,t,s)=>J(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),U={setQueryDefinition:(n,r,d)=>{let i;R(n,r),K(n);const u=[],c=[[null,[r,null,null,[],S()]]],w=[],f=[],T=[],P=[];d({select:(e,t)=>{const s=b(e)?[l(u)+"",e]:[g(t)?e:t,s=>s(e,t)];return a(u,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=g(s)||b(t)?null:t,l=g(n)?t:s,o=[e,[e,n,b(l)?l:e=>e(l),[],S()]];return a(c,o),{as:e=>o[0]=e}},where:(e,t,s)=>a(w,b(e)?e:g(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,l)=>{const o=[e,[e,b(t)?[t,s,n,l]:x(O,t)??[(e,t)=>t]]];return a(f,o),{as:e=>o[0]=e}},having:(e,t)=>a(T,b(e)?e:s=>s(e)===t),order:(e,t)=>a(P,[b(e)?e:t=>t(e)??0,t]),limit:(e,t)=>{i=g(t)?[0,e]:[e,t]}});const H=S(u);if(I(H))return U;const V=S(c);M(V,((e,[,t])=>L(x(V,t),(({3:t})=>g(e)?0:a(t,e)))));const X=S(f);let Y=q,Z=A;if(o(P)&&g(i))Z=G;else{N(n,Z,G);const e=(e,t)=>{const s=x(r,e)??[],n=x(r,t)??[],l=P.findIndex(((e,t)=>s[t]!==n[t]));return l<0?0:(o=s[l],a=n[l],(o<a?-1:1)*(P[l][1]?-1:1));var o,a},r=S(),a=S();J(Z,n,o(P)?Z.addRowIdsListener(n,(()=>p(a))):Z.addRowListener(n,null,((e,s,o)=>{let d=null;if(Z.hasRow(n,o)){const e=x(r,o)??[],s=Z.getRow(n,o),R=e=>s[e];if(c=([e])=>e(R,o),d=P.map(c),u=d,l(i=e)===l(u)&&t(i,((e,t)=>u[t]===e)))return void(x(a,o)&&G.setRow(n,o,s))}var i,u,c;j(r,o,d),p(a)})),Z.addTableListener(n,(()=>{if(I(a)&&(G.delTable(n),Z.hasTable(n))){const o=Z.getTable(n);s((t=B(o),l=e,t.sort(l)),(e=>j(a,e,0))),s(L(i,(([e,t])=>((e,t,s)=>e.slice(t,s))(Q(a),e,e+t)),(()=>Q(a))),(e=>{G.setRow(n,e,o[e]),j(a,e,1)}))}var t,l})))}if(I(X)&&o(T))Y=Z;else{N(n,Y,Z);const e=S();M(X,((t,[s,n])=>z(k(e,s,F),[t,n])));const s=F();M(H,(t=>C(e,t)?0:z(s,t)));const l=S(),o=(s,l,o,r)=>L(s,(([s,a,d,i])=>{M(l,((t,[n])=>{const l=k(s,t,S),a=x(l,o),d=r?void 0:n;if(a!==d){const s=F([[a,d]]),n=v(l);j(l,o,d),m(x(e,t),(([e,t])=>{const o=((e,t,s,n,l,o=!1)=>{if(I(s))return;const[r,a,d,i]=l;return o||=g(e),m(n,(([s,n])=>{o||(e=g(s)?a?.(e,n,t++):g(n)?d?.(e,s,t--):i?.(e,n,s,t),o||=g(e))})),o?r(y(s),v(s)):e})(i[e],n,l,s,t);i[e]=g(W(o))?null:o}))}})),(I(a)||!t(T,(e=>e((e=>i[e]))))?Z.delRow:Z.setRow)(n,d,i)}));J(Y,n,Y.addRowListener(n,null,((t,r,d,i)=>{const u=[],c=[],R=S(),w=Y.hasRow(n,d);let f=!w;m(s,(e=>{const[t,s,l]=i(n,d,e);a(u,s),a(c,l),f||=t})),M(e,(e=>{const[t,,s]=i(n,d,e);(f||t)&&j(R,e,[s])})),f&&o(D(l,u,void 0,(([,e,t])=>{if(E(e,d),I(e))return Z.delRow(n,t),1})),R,d,1),w&&o(D(l,c,(()=>{const e={};return m(s,(t=>e[t]=Y.getCell(n,d,t))),[S(),F(),Z.addRow(n,e,1),e]}),(([,e])=>{z(e,d)})),R,d)})))}N(n,e,Y);const $=s=>{const l=(t,n)=>e.getCell(...g(n)?[r,s,t]:t===r?[r,s,n]:[x(V,t)?.[0],x(x(V,t)?.[4],s)?.[0],n]);Y.transaction((()=>t(w,(e=>e(l)))?M(H,((e,t)=>((e,t,s,n,l)=>g(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l))(Y,n,s,e,t(l,s)))):Y.delRow(n,s)))},ee=(t,l,o,r)=>{const a=t=>e.getCell(l,o,t);s(r,(s=>{const[l,,o,r,d]=x(V,s),i=o?.(a,t),[u,c]=x(d,t)??[];i!=u&&(g(c)||_(n,c),j(d,t,g(i)?null:[i,...h(n,1,e.addRowListener(l,i,(()=>ee(t,l,i,r))))]))})),$(t)},{3:te}=x(V,null);return Y.transaction((()=>h(n,1,e.addRowListener(r,null,((t,s,l)=>{e.hasRow(r,l)?ee(l,r,l,te):(Y.delRow(n,l),m(V,(({4:e})=>L(x(e,l),(([,t])=>{_(n,t),j(e,l)})))))}))))),U},delQueryDefinition:e=>(M(x(H,e),((e,t)=>m(t,(t=>e.delListener(t))))),K(e),w(e),U),getStore:r,getQueryIds:d,forEachQuery:i,hasQuery:u,getTableId:c,getResultTable:e=>G.getTable(e),getResultRowIds:e=>G.getRowIds(e),getResultSortedRowIds:(e,t,s)=>G.getSortedRowIds(e,t,s),getResultRow:(e,t)=>G.getRow(e,t),getResultCellIds:(e,t)=>G.getCellIds(e,t),getResultCell:(e,t,s)=>G.getCell(e,t,s),hasResultTable:e=>G.hasTable(e),hasResultRow:(e,t)=>G.hasRow(e,t),hasResultCell:(e,t,s)=>G.hasCell(e,t,s),forEachResultTable:e=>G.forEachTable(e),forEachResultRow:(e,t)=>G.forEachRow(e,t),forEachResultCell:(e,t,s)=>G.forEachCell(e,t,s),addResultTableListener:(e,t)=>G.addTableListener(e,((e,...s)=>t(U,...s))),addResultRowIdsListener:(e,t,s)=>G.addRowIdsListener(e,((e,...s)=>t(U,...s)),s),addResultSortedRowIdsListener:(e,t,s,n)=>G.addSortedRowIdsListener(e,t,s,((e,...t)=>n(U,...t))),addResultRowListener:(e,t,s)=>G.addRowListener(e,t,((e,...t)=>s(U,...t))),addResultCellIdsListener:(e,t,s)=>G.addCellIdsListener(e,t,((e,...t)=>s(U,...t))),addResultCellListener:(e,t,s,n)=>G.addCellListener(e,t,s,((e,...t)=>n(U,...t))),delListener:e=>(G.delListener(e),U),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=G.getListenerStats();return n}};return P(U)}));e.createQueries=q,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,o=t(""),s=(e,t)=>e.forEach(t),n=e=>e.length,i=e=>0==n(e),a=e=>e.slice(1),d=e=>null==e,r=(e,t,o)=>d(e)?o?.():t(e),l=(e,t)=>e?.has(t)??!1,c=e=>[...e?.values()??[]],f=e=>e.clear(),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),u=e=>new Map(e),R=(e,t)=>e?.get(t),g=(e,t)=>h(e,((e,o)=>t(o,e))),w=(e,t,o)=>d(o)?(p(e,t),e):e?.set(t,o),L=(e,t,o)=>(l(e,t)||w(e,t,o()),R(e,t)),I=e=>new Set(e),b=(e,t)=>e?.add(t),y=(e,s)=>t(e)==o?t=>t(e):e??(()=>s??""),v=(e,t,o)=>n(o)<2?b(i(o)?e:L(e,o[0],I),t):v(L(e,o[0],u),t,a(o)),T=e=>{const t=(o,n,...d)=>r(o,(o=>i(d)?e(o,n):s([d[0],null],(e=>t(R(o,e),n,...a(d))))));return t},m=Object.freeze,k=(e=>{const t=new WeakMap;return o=>(t.has(o)||t.set(o,e(o)),t.get(o))})((e=>{const t=u(),o=u(),i=u(),a=u(),[L,k,E,j,x,M,,S,z,D]=((e,t,o)=>{const n=e.hasRow,i=u(),a=u(),c=u(),p=u(),L=u(),b=t=>r(R(L,t),(o=>{h(o,e.delListener),w(L,t)})),y=e=>{w(i,e),w(a,e),w(c,e),w(p,e),b(e)};return[()=>e,()=>[...i?.keys()??[]],e=>g(a,e),e=>l(a,e),e=>R(i,e),e=>R(a,e),(e,t)=>w(a,e,t),(r,y,v,T,m)=>{const k=u(),E=u();w(i,r,y),l(a,r)||(w(a,r,t()),w(c,r,u()),w(p,r,u()));const j=R(c,r),x=R(p,r),M=t=>{const s=o=>e.getCell(y,t,o),i=R(j,t),a=n(y,t)?o(T(s,t)):void 0;if(i!=a&&w(k,t,[i,a]),!d(m)){const e=R(x,t),o=n(y,t)?m(s,t):void 0;e!=o&&w(E,t,o)}},S=e=>{v((()=>{h(k,(([,e],t)=>w(j,t,e))),h(E,((e,t)=>w(x,t,e)))}),k,E,j,x,e),f(k),f(E)};g(j,M),e.hasTable(y)&&s(e.getRowIds(y),(e=>{l(j,e)||M(e)})),S(!0),b(r),w(L,r,I([e.addRowListener(y,null,((e,t,o)=>M(o))),e.addTableListener(y,(()=>S()))]))},y,()=>g(L,y)]})(e,(()=>[u(),u(),u(),u()]),(e=>d(e)?void 0:e+"")),[O,_,B]=(e=>{let t,o=0;const i=[],a=u();return[(s,n,d=[])=>{t??=e();const r=i.pop()??""+o++;return w(a,r,[s,n,d]),v(n,r,d),r},(e,o=[],...s)=>T(h)(e,(e=>r(R(a,e),(([e])=>e(t,...o,...s)))),...o),e=>r(R(a,e),(([,t,o])=>(T(p)(t,e,...o),w(a,e),n(i)<1e3&&i.push(e),o)),(()=>[])),(e,o,i)=>r(R(a,e),(([e,,a])=>{const r=(...l)=>{const c=n(l);c==n(a)?e(t,...l,...i(l)):d(a[c])?s(o[c](...l),(e=>r(...l,e))):r(...l,a[c])};r()}))]})((()=>q)),C=(e,t,o)=>r(M(e),(([s,,n])=>{if(!l(n,t)){const i=I();if(x(e)!=W(e))b(i,t);else{let e=t;for(;!d(e)&&!l(i,e);)b(i,e),e=R(s,e)}if(o)return i;w(n,t,i)}return R(n,t)})),P=(e,t)=>r(M(e),(([,,e])=>w(e,t))),W=e=>R(t,e),q={setRelationshipDefinition:(e,s,n,c)=>(w(t,e,n),S(e,s,((t,s)=>{const n=I(),c=I(),f=I(),[u,L]=M(e);h(s,(([t,o],s)=>{d(t)||(b(c,t),r(R(L,t),(e=>{var o;p(e,s),(d(o=e)||0==(e=>e.size)(o))&&w(L,t)}))),d(o)||(b(c,o),l(L,o)||w(L,o,I()),b(R(L,o),s)),b(n,s),w(u,s,o),g(R(a,e),(t=>{l(C(e,t),s)&&b(f,t)}))})),t(),h(n,(t=>_(o,[e,t]))),h(c,(t=>_(i,[e,t]))),h(f,(t=>{P(e,t),_(a,[e,t])}))}),y(c)),q),delRelationshipDefinition:e=>(w(t,e),z(e),q),getStore:L,getRelationshipIds:k,forEachRelationship:t=>E((o=>t(o,(t=>e.forEachRow(x(o),t))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:W,getRemoteRowId:(e,t)=>R(M(e)?.[0],t),getLocalRowIds:(e,t)=>c(R(M(e)?.[1],t)),getLinkedRowIds:(e,t)=>d(M(e))?[t]:c(C(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>O(s,o,[e,t]),addLocalRowIdsListener:(e,t,o)=>O(o,i,[e,t]),addLinkedRowIdsListener:(e,t,o)=>(C(e,t),O(o,a,[e,t])),delListener:e=>(P(...B(e)),q),destroy:D,getListenerStats:()=>({})};return m(q)}));e.createRelationships=k,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",o=t(n),s=(e,t)=>e.forEach(t),i=e=>e.length,r=(e,...t)=>e.push(...t),a=e=>null==e,d=(e,t,n)=>a(e)?n?.():t(e),l=(e,t)=>e?.has(t)??!1,c=e=>a(e)||0==(e=>e.size)(e),f=e=>[...e?.values()??[]],u=e=>e.clear(),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),R=e=>new Map(e),g=(e,t)=>e?.get(t),L=(e,t)=>h(e,((e,n)=>t(n,e))),w=(e,t,n)=>a(n)?(p(e,t),e):e?.set(t,n),y=(e,t,n)=>(l(e,t)||w(e,t,n()),g(e,t)),I=(e,t,n,o,s=0)=>d((n?y:g)(e,t[s],s>i(t)-2?n:R),(r=>{if(s>i(t)-2)return o?.(r)&&w(e,t[s]),r;const a=I(r,t,n,o,s+1);return c(r)&&w(e,t[s]),a})),b=e=>new Set(e),v=(e,t)=>e?.add(t),T=(e,t,n)=>{const o=e.hasRow,r=R(),I=R(),T=R(),m=R(),k=R(),E=(t,n,...o)=>{const i=y(k,t,b);return s(o,(t=>v(i,t)&&n&&e.callListener(t))),o},j=(t,...n)=>d(g(k,t),(o=>{s(0==i(n)?f(o):n,(t=>{e.delListener(t),p(o,t)})),c(o)&&w(k,t)})),x=(e,n)=>{w(r,e,n),l(I,e)||(w(I,e,t()),w(T,e,R()),w(m,e,R()))},M=e=>{w(r,e),w(I,e),w(T,e),w(m,e),j(e)};return[()=>e,()=>[...r?.keys()??[]],e=>L(I,e),e=>l(I,e),e=>g(r,e),e=>g(I,e),(e,t)=>w(I,e,t),x,(t,i,r,d,c)=>{x(t,i);const f=R(),p=R(),y=g(T,t),I=g(m,t),b=t=>{const s=n=>e.getCell(i,t,n),r=g(y,t),l=o(i,t)?n(d(s,t)):void 0;if(r!=l&&w(f,t,[r,l]),!a(c)){const e=g(I,t),n=o(i,t)?c(s,t):void 0;e!=n&&w(p,t,n)}},v=e=>{r((()=>{h(f,(([,e],t)=>w(y,t,e))),h(p,((e,t)=>w(I,t,e)))}),f,p,y,I,e),u(f),u(p)};L(y,b),e.hasTable(i)&&s(e.getRowIds(i),(e=>{l(y,e)||b(e)})),v(!0),j(t),E(t,0,e.addRowListener(i,null,((e,t,n)=>b(n))),e.addTableListener(i,(()=>v())))},M,()=>L(k,M),E,j]},m=(e,s)=>t(e)==o?t=>t(e):e??(()=>s??n),k=(e,t=[n])=>{const o=[],a=(e,n)=>n==i(t)?r(o,e):null===t[n]?h(e,(e=>a(e,n+1))):s([t[n],null],(t=>a(g(e,t),n+1)));return a(e,0),o},E=Object.freeze,j=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=R(),o=R(),u=R(),y=R(),[j,x,M,S,z,D,,,O,_,B]=T(e,(()=>[R(),R(),R(),R()]),(e=>a(e)?void 0:e+n)),[C,P,W]=(e=>{let t,o=0;const l=[],f=R();return[(s,i,r)=>{t??=e();const a=l.pop()??n+o++;return w(f,a,[s,i,r]),v(I(i,r??[n],b),a),a},(e,n,...o)=>s(k(e,n),(e=>h(e,(e=>g(f,e)[0](t,...n??[],...o))))),e=>d(g(f,e),(([,t,o])=>(I(t,o??[n],void 0,(t=>(p(t,e),c(t)?1:0))),w(f,e),i(l)<1e3&&r(l,e),o))),(e,t)=>{return n=k(e,t),o=a,!n.every(o);var n,o},(e,n,o)=>d(g(f,e),(([e,,r=[]])=>{const d=(...l)=>{const c=i(l);c==i(r)?e(t,...l,...o(l)):a(r[c])?s(n[c](...l),(e=>d(...l,e))):d(...l,r[c])};d()}))]})((()=>G)),q=(e,t,n)=>d(D(e),(([o,,s])=>{if(!l(s,t)){const i=b();if(z(e)!=F(e))v(i,t);else{let e=t;for(;!a(e)&&!l(i,e);)v(i,e),e=g(o,e)}if(n)return i;w(s,t,i)}return g(s,t)})),A=(e,t)=>d(D(e),(([,,e])=>w(e,t))),F=e=>g(t,e),G={setRelationshipDefinition:(e,n,s,i)=>(w(t,e,s),O(e,n,((t,n)=>{const s=b(),i=b(),r=b(),[f,R]=D(e);h(n,(([t,n],o)=>{a(t)||(v(i,t),d(g(R,t),(e=>{p(e,o),c(e)&&w(R,t)}))),a(n)||(v(i,n),l(R,n)||w(R,n,b()),v(g(R,n),o)),v(s,o),w(f,o,n),L(g(y,e),(t=>{l(q(e,t),o)&&v(r,t)}))})),t(),h(s,(t=>P(o,[e,t]))),h(i,(t=>P(u,[e,t]))),h(r,(t=>{A(e,t),P(y,[e,t])}))}),m(i)),G),delRelationshipDefinition:e=>(w(t,e),_(e),G),getStore:j,getRelationshipIds:x,forEachRelationship:t=>M((n=>t(n,(t=>e.forEachRow(z(n),t))))),hasRelationship:S,getLocalTableId:z,getRemoteTableId:F,getRemoteRowId:(e,t)=>g(D(e)?.[0],t),getLocalRowIds:(e,t)=>f(g(D(e)?.[1],t)),getLinkedRowIds:(e,t)=>a(D(e))?[t]:f(q(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>C(n,o,[e,t]),addLocalRowIdsListener:(e,t,n)=>C(n,u,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(q(e,t),C(n,y,[e,t])),delListener:e=>(A(...W(e)),G),destroy:B,getListenerStats:()=>({})};return E(G)}));e.createRelationships=j,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
Binary file
package/lib/umd/store.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s=t(""),n=t(!0),r=t(0),a=t(t),l="type",o="default",i=e=>[e,e],d=(e,t)=>e.forEach(t),c=e=>e.length,u=e=>0==c(e),f=e=>e.slice(1),h=(e,t)=>e.push(t),T=e=>JSON.stringify(e,((e,t)=>{return g(t,Map)?(s=[...t],n=(e,[t,s])=>(e[t]=s,e),r={},s.reduce(n,r)):t;var s,n,r})),p=JSON.parse,b=isFinite,g=(e,t)=>e instanceof t,y=e=>null==e,L=(e,t,s)=>y(e)?s?.():t(e),w=e=>e==s||e==n,R=(e,t)=>e?.has(t)??!1,C=e=>y(e)||0==(e=>e.size)(e),S=e=>e.clear(),v=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),m=e=>new Map(e),E=(e=m)=>[e(),e()],J=e=>[...e?.keys()??[]],F=(e,t)=>e?.get(t),O=(e,t)=>v(e,((e,s)=>t(s,e))),j=(e,t,s)=>y(s)?(I(e,t),e):e?.set(t,s),x=(e,t,s)=>(R(e,t)||j(e,t,s()),F(e,t)),z=(e,t,s)=>{const n={},r=t??(e=>e);return v(e,((e,t)=>L(r(e),(e=>s?.(e)?0:n[t]=e)))),n},M=(e,t)=>{const s=m(),n=t??(e=>e);return v(e,((e,t)=>s.set(t,n(e)))),s},k=e=>M(e,M),N=Object,P=N.keys,_=N.isFrozen,B=N.freeze,D=(e,t)=>!y(((e,t)=>L(e,(e=>e[t])))(e,t)),W=(e,t)=>delete e[t],q=(e,t)=>d(N.entries(e),(([e,s])=>t(s,e))),A=e=>u(P(e)),G=e=>new Set(e),H=(e,t)=>e?.add(t),K=(e,t,s)=>c(s)<2?H(u(s)?e:x(e,s[0],G),t):K(x(e,s[0],m),t,f(s)),Q=e=>{const t=(s,n,...r)=>L(s,(s=>u(r)?e(s,n):d([r[0],null],(e=>t(F(s,e),n,...f(r))))));return t},U=e=>""+e,V=(e,t,s,n=j)=>{const r=(a=J(e),l=e=>!D(t,e),a.filter(l));var a,l;return d(P(t),(n=>s(e,n,t[n]))),d(r,(t=>n(e,t))),e},X=e=>{const s=t(e);return w(s)||s==r&&b(e)?s:void 0},Y=(e,t,s)=>y(e)||!(e=>g(e,N)&&e.constructor==N)(e)||A(e)||_(e)?(s?.(),!1):(q(e,((s,n)=>{t(s,n)||W(e,n)})),!A(e)),Z=(e,t,s)=>j(e,t,F(e,t)==-s?void 0:s);e.createStore=()=>{let e,s,n=0,u=0;const f=m(),b=m(),g=m(),N=m(),P=m(),_=m(),$=m(),ee=m(),te=E(G),se=E(G),ne=E(),re=E(),ae=E(),le=E(),oe=E(),ie=E(),de=E(G),[ce,ue,fe,he]=(e=>{let t,s=0;const n=[],r=m();return[(a,l,o=[])=>{t??=e();const i=n.pop()??""+s++;return j(r,i,[a,l,o]),K(l,i,o),i},(e,s=[],...n)=>Q(v)(e,(e=>L(F(r,e),(([e])=>e(t,...s,...n)))),...s),e=>L(F(r,e),(([,t,s])=>(Q(I)(t,e,...s),j(r,e),c(n)<1e3&&h(n,e),s)),(()=>[])),(e,s,n)=>L(F(r,e),(([e,,r])=>{const a=(...l)=>{const o=c(l);o==c(r)?e(t,...l,...n(l)):y(r[o])?d(s[o](...l),(e=>a(...l,e))):a(...l,r[o])};a()}))]})((()=>Xe)),Te=(t,s)=>(!e||R(_,s)||ze(s))&&Y(t,((e,t)=>pe(s,t,e)),(()=>ze(s))),pe=(e,t,s,n)=>Y(n?s:ge(s,e,t),((n,r)=>L(be(e,t,r,n),(e=>(s[r]=e,!0)),(()=>!1))),(()=>ze(e,t))),be=(t,s,n,r)=>e?L(F(F(_,t),n),(e=>X(r)!=e.type?ze(t,s,n,r,e.default):r),(()=>ze(t,s,n,r))):y(X(r))?ze(t,s,n,r):r,ge=(e,t,s)=>(L(F($,t),(([n,r])=>{v(n,((t,s)=>{D(e,s)||(e[s]=t)})),v(r,(n=>{D(e,n)||ze(t,s,n)}))})),e),ye=e=>V(_,e,((e,t,s)=>{const n=m(),r=G();V(x(_,t,m),s,((e,t,s)=>{j(e,t,s),L(s.default,(e=>j(n,t,e)),(()=>H(r,t)))})),j($,t,[n,r])}),((e,t)=>{j(_,t),j($,t)})),Le=e=>V(ee,e,((e,t,s)=>we(t,s)),((e,t)=>me(t))),we=(e,t)=>V(x(ee,e,(()=>(Fe(e,1),m()))),t,((t,s,n)=>Re(e,t,s,n)),((t,s)=>Ee(e,t,s))),Re=(e,t,s,n,r)=>V(x(t,s,(()=>(Oe(e,s,1),m()))),n,((t,n,r)=>Ce(e,s,t,n,r)),((n,a)=>Je(e,t,s,n,a,r))),Ce=(e,t,s,n,r)=>{R(s,n)||je(e,t,n,1);const a=F(s,n);r!==a&&(xe(e,t,n,a,r),j(s,n,r))},Se=(e,t,s,n,r)=>L(F(t,s),(t=>Ce(e,s,t,n,r)),(()=>Re(e,t,s,ge({[n]:r},e,s)))),ve=e=>{const t=""+n++;return R(e,t)?ve(e):t},Ie=e=>F(ee,e)??we(e,{}),me=e=>we(e,{}),Ee=(e,t,s)=>Re(e,t,s,{},!0),Je=(e,t,s,n,r,a)=>{const l=F(F($,e)?.[0],r);if(!y(l)&&!a)return Ce(e,s,n,r,l);const o=t=>{xe(e,s,t,F(n,t)),je(e,s,t,-1),j(n,t)};y(l)?o(r):O(n,o),C(n)&&(Oe(e,s,-1),C(j(t,s))&&(Fe(e,-1),j(ee,e)))},Fe=(e,t)=>Z(f,e,t),Oe=(e,t,s)=>Z(x(b,e,m),t,s),je=(e,t,s,n)=>Z(x(x(g,e,m),t,m),s,n),xe=(e,t,s,n,r)=>x(x(x(N,e,m),t,m),s,(()=>[n,0]))[1]=r,ze=(e,t,s,n,r)=>(h(x(x(x(P,e,m),t,m),s,(()=>[])),n),r),Me=(e,t,s)=>L(F(F(F(N,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...i(qe(e,t,s))])),ke=e=>C(P)||C(ie[e])?0:v(e?M(P,k):P,((t,s)=>v(t,((t,n)=>v(t,((t,r)=>ue(ie[e],[s,n,r],t))))))),Ne=e=>{const t=C(le[e])&&C(re[e])&&C(se[e]),s=C(oe[e])&&C(ae[e])&&C(ne[e])&&C(te[e]);if(!t||!s){const n=e?[M(f),k(b),M(g,k),M(N,k)]:[f,b,g,N];if(t||(v(n[2],((t,s)=>v(t,((t,n)=>{C(t)||ue(le[e],[s,n])})))),v(n[1],((t,s)=>{C(t)||ue(re[e],[s])})),C(n[0])||ue(se[e])),!s){let t;v(n[3],((s,n)=>{let r;v(s,((s,a)=>{let l;v(s,(([s,o],i)=>{o!==s&&(ue(oe[e],[n,a,i],o,s,Me),t=r=l=1)})),l&&ue(ae[e],[n,a],Me)})),r&&ue(ne[e],[n],Me)})),t&&ue(te[e],[],Me)}}},Pe=(e,...t)=>(Qe((()=>{return e(...(s=t,n=U,s.map(n)));var s,n})),Xe),_e=()=>z(ee,(e=>z(e,z))),Be=()=>J(ee),De=e=>J(F(ee,U(e))),We=(e,t)=>J(F(F(ee,U(e)),U(t))),qe=(e,t,s)=>F(F(F(ee,U(e)),U(t)),U(s)),Ae=e=>Pe((()=>(e=>Y(e,Te,ze))(e)?Le(e):0)),Ge=(e,s,n,r)=>Pe(((e,s,n)=>L(be(e,s,n,t(r)==a?r(qe(e,s,n)):r),(t=>Se(e,Ie(e),s,n,t)))),e,s,n),He=()=>Pe((()=>Le({}))),Ke=(e,t,s,n)=>Pe(((e,t,s)=>L(F(ee,e),(r=>L(F(r,t),(a=>R(a,s)?Je(e,r,t,a,s,n):0))))),e,t,s),Qe=(e,t)=>{if(-1==u)return;Ue();const s=e?.();return Ve(t),s},Ue=()=>(u++,Xe),Ve=e=>(u>0&&(u--,0==u&&(s=!C(N),u=1,ke(1),s&&Ne(1),u=-1,e?.(z(N,(e=>z(e,(e=>z(e,(e=>[...e]),(([e,t])=>e===t))),A)),A),z(P,(e=>z(e,z))))&&(u=1,v(N,((e,t)=>v(e,((e,s)=>v(e,(([e],n)=>y(e)?Ke(t,s,n,!0):Ge(t,s,n,e))))))),u=-1,s=!1),ue(de[0],[],s),ke(0),s&&Ne(0),ue(de[1],[],s),u=0,d([N,P,f,b,g],S))),Xe),Xe={getTables:_e,getTableIds:Be,getTable:e=>z(F(ee,U(e)),z),getRowIds:De,getRow:(e,t)=>z(F(F(ee,U(e)),U(t))),getCellIds:We,getCell:qe,hasTables:()=>!C(ee),hasTable:e=>R(ee,U(e)),hasRow:(e,t)=>R(F(ee,U(e)),U(t)),hasCell:(e,t,s)=>R(F(F(ee,U(e)),U(t)),U(s)),getJson:()=>T(ee),getSchemaJson:()=>T(_),setTables:Ae,setTable:(e,t)=>Pe((e=>Te(t,e)?we(e,t):0),e),setRow:(e,t,s)=>Pe(((e,t)=>pe(U(e),U(t),s)?Re(U(e),Ie(U(e)),U(t),s):0),e,t),addRow:(e,t)=>Qe((()=>{let s;return pe(e,s,t)&&(e=U(e),Re(e,Ie(e),s=ve(F(ee,e)),t)),s})),setPartialRow:(e,t,s)=>Pe(((e,t)=>{if(pe(e,t,s,1)){const n=Ie(e);q(s,((s,r)=>Se(e,n,t,r,s)))}}),e,t),setCell:Ge,setJson:e=>{try{"{}"===e?He():Ae(p(e))}catch{}return Xe},setSchema:t=>Pe((()=>{if((e=(e=>Y(e,(e=>Y(e,(e=>{if(!Y(e,((e,t)=>[l,o].includes(t))))return!1;const t=e.type;return!(!w(t)&&t!=r||(X(e.default)!=t&&W(e,o),0))})))))(t))&&(ye(t),!C(ee))){const e=_e();He(),Ae(e)}})),delTables:He,delTable:e=>Pe((e=>R(ee,e)?me(e):0),e),delRow:(e,t)=>Pe(((e,t)=>L(F(ee,e),(s=>R(s,t)?Ee(e,s,t):0))),e,t),delCell:Ke,delSchema:()=>Pe((()=>{ye({}),e=!1})),transaction:Qe,startTransaction:Ue,finishTransaction:Ve,forEachTable:e=>v(ee,((t,s)=>e(s,(e=>v(t,((t,s)=>e(s,(e=>O(t,e))))))))),forEachRow:(e,t)=>v(F(ee,U(e)),((e,s)=>t(s,(t=>O(e,t))))),forEachCell:(e,t,s)=>O(F(F(ee,U(e)),U(t)),s),addTablesListener:(e,t)=>ce(e,te[t?1:0]),addTableIdsListener:(e,t)=>ce(e,se[t?1:0]),addTableListener:(e,t,s)=>ce(t,ne[s?1:0],[e]),addRowIdsListener:(e,t,s)=>ce(t,re[s?1:0],[e]),addRowListener:(e,t,s,n)=>ce(s,ae[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n)=>ce(s,le[n?1:0],[e,t]),addCellListener:(e,t,s,n,r)=>ce(n,oe[r?1:0],[e,t,s]),addInvalidCellListener:(e,t,s,n,r)=>ce(n,ie[r?1:0],[e,t,s]),addWillFinishTransactionListener:e=>ce(e,de[0]),addDidFinishTransactionListener:e=>ce(e,de[1]),callListener:e=>(he(e,[Be,De,We],(e=>y(e[2])?[]:i(qe(...e)))),Xe),delListener:e=>(fe(e),Xe),getListenerStats:()=>({})};return B(Xe)},Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=t(!0),l=t(0),o=t(t),a="type",d="default",i=(e,t)=>e.every(t),c=(e,t)=>h(e)===h(t)&&i(e,((e,n)=>t[n]===e)),u=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),h=e=>e.length,T=(e,t,n)=>e.reduce(t,n),p=(e,...t)=>e.push(...t),b=e=>JSON.stringify(e,((e,t)=>y(t,Map)?T([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),v=JSON.parse,g=isFinite,y=(e,t)=>e instanceof t,w=e=>null==e,L=(e,t,n)=>w(e)?n?.():t(e),R=e=>e==s||e==r,S=e=>e.size,C=(I=S,e=>T(J(e),((e,t)=>e+I(t)),0));var I;const m=(e,t)=>e?.has(t)??!1,E=e=>w(e)||0==S(e),J=e=>[...e?.values()??[]],F=e=>e.clear(),O=(e,t)=>e?.forEach(t),j=(e,t)=>e?.delete(t),x=e=>new Map(e),z=e=>[...e?.keys()??[]],M=(e,t)=>e?.get(t),k=(e,t)=>O(e,((e,n)=>t(n,e))),N=(e,t,n)=>w(n)?(j(e,t),e):e?.set(t,n),P=(e,t,n)=>(m(e,t)||N(e,t,n()),M(e,t)),_=(e,t,n)=>{const s={},r=t??(e=>e);return O(e,((e,t)=>L(r(e),(e=>n?.(e)?0:s[t]=e)))),s},B=(e,t)=>{const n=x(),s=t??(e=>e);return O(e,((e,t)=>n.set(t,s(e)))),n},D=e=>B(e,B),W=(e,t,n,s,r=0)=>L((n?P:M)(e,t[r],r>h(t)-2?n:x),(l=>{if(r>h(t)-2)return s?.(l)&&N(e,t[r]),l;const o=W(l,t,n,s,r+1);return E(l)&&N(e,t[r]),o})),q=Object,A=q.keys,G=q.isFrozen,H=q.freeze,K=(e,t)=>!w(((e,t)=>L(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>u(q.entries(e),(([e,n])=>t(n,e))),V=e=>{return t=A(e),0==h(t);var t},X=e=>new Set(e),Y=(e,t)=>e?.add(t),Z=(e,t=[n])=>{const s=[],r=(e,n)=>n==h(t)?p(s,e):null===t[n]?O(e,(e=>r(e,n+1))):u([t[n],null],(t=>r(M(e,t),n+1)));return r(e,0),s},$=e=>[e,e],ee=e=>0==((e,t=C)=>t(e[0])+t(e[1]))(e),te=()=>[x(),x()],ne=()=>[te(),te()],se=e=>{const n=t(e);return R(n)||n==l&&g(e)?n:void 0},re=e=>n+e,le=(e,t,n,s=N)=>{const r=(l=z(e),o=e=>!K(t,e),l.filter(o));var l,o;return u(A(t),(s=>n(e,s,t[s]))),u(r,(t=>s(e,t))),e},oe=(e,t,n)=>w(e)||!(e=>y(e,q)&&e.constructor==q)(e)||V(e)||G(e)?(n?.(),!1):(U(e,((n,s)=>{t(n,s)||Q(e,s)})),!V(e)),ae=(e,t,n)=>N(e,t,M(e,t)==-n?void 0:n),de=()=>{let e,s,r=0,T=0;const g=x(),y=x(),C=x(),I=x(),J=x(),q=x(),A=x(),G=x(),ie=te(),ce=ne(),ue=te(),fe=ne(),he=te(),Te=te(),pe=ne(),be=te(),ve=te(),ge=te(),[ye,we,Le,Re,Se]=(e=>{let t,s=0;const r=[],l=x();return[(o,a,d)=>{t??=e();const i=r.pop()??n+s++;return N(l,i,[o,a,d]),Y(W(a,d??[n],X),i),i},(e,n,...s)=>u(Z(e,n),(e=>O(e,(e=>M(l,e)[0](t,...n??[],...s))))),e=>L(M(l,e),(([,t,s])=>(W(t,s??[n],void 0,(t=>(j(t,e),E(t)?1:0))),N(l,e),h(r)<1e3&&p(r,e),s))),(e,t)=>!i(Z(e,t),w),(e,n,s)=>L(M(l,e),(([e,,r=[]])=>{const l=(...o)=>{const a=h(o);a==h(r)?e(t,...o,...s(o)):w(r[a])?u(n[a](...o),(e=>l(...o,e))):l(...o,r[a])};l()}))]})((()=>ot)),Ce=(t,n)=>(!e||m(q,n)||Ae(n))&&oe(t,((e,t)=>Ie(n,t,e)),(()=>Ae(n))),Ie=(e,t,n,s)=>oe(s?n:Ee(n,e,t),((s,r)=>L(me(e,t,r,s),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Ae(e,t))),me=(t,n,s,r)=>e?L(M(M(q,t),s),(e=>se(r)!=e.type?Ae(t,n,s,r,e.default):r),(()=>Ae(t,n,s,r))):w(se(r))?Ae(t,n,s,r):r,Ee=(e,t,n)=>(L(M(A,t),(([s,r])=>{O(s,((t,n)=>{K(e,n)||(e[n]=t)})),O(r,(s=>{K(e,s)||Ae(t,n,s)}))})),e),Je=e=>le(q,e,((e,t,n)=>{const s=x(),r=X();le(P(q,t,x),n,((e,t,n)=>{N(e,t,n),L(n.default,(e=>N(s,t,e)),(()=>Y(r,t)))})),N(A,t,[s,r])}),((e,t)=>{N(q,t),N(A,t)})),Fe=e=>le(G,e,((e,t,n)=>Oe(t,n)),((e,t)=>Ne(t))),Oe=(e,t)=>le(P(G,e,(()=>(Be(e,1),x()))),t,((t,n,s)=>je(e,t,n,s)),((t,n)=>Pe(e,t,n))),je=(e,t,n,s,r)=>le(P(t,n,(()=>(De(e,n,1),x()))),s,((t,s,r)=>xe(e,n,t,s,r)),((s,l)=>_e(e,t,n,s,l,r))),xe=(e,t,n,s,r)=>{m(n,s)||We(e,t,s,1);const l=M(n,s);r!==l&&(qe(e,t,s,l,r),N(n,s,r))},ze=(e,t,n,s,r)=>L(M(t,n),(t=>xe(e,n,t,s,r)),(()=>je(e,t,n,Ee({[s]:r},e,n)))),Me=e=>{const t=n+r++;return m(e,t)?Me(e):t},ke=e=>M(G,e)??Oe(e,{}),Ne=e=>Oe(e,{}),Pe=(e,t,n)=>je(e,t,n,{},!0),_e=(e,t,n,s,r,l)=>{const o=M(M(A,e)?.[0],r);if(!w(o)&&!l)return xe(e,n,s,r,o);const a=t=>{qe(e,n,t,M(s,t)),We(e,n,t,-1),N(s,t)};w(o)?a(r):k(s,a),E(s)&&(De(e,n,-1),E(N(t,n))&&(Be(e,-1),N(G,e)))},Be=(e,t)=>ae(E(g)?N(g,null,Re(ce[0][1])||Re(ce[1][1])?Xe():0):g,e,t),De=(e,t,n)=>ae(P(y,e,(()=>x([[null,Re(fe[0][1],[e])||Re(fe[1][1],[e])?Ye(e):0]]))),t,n),We=(e,t,n,s)=>ae(P(P(C,e,x),t,(()=>x([[null,Re(pe[0][1],[e,t])||Re(pe[1][1],[e,t])?$e(e,t):0]]))),n,s),qe=(e,t,n,s,r)=>P(P(P(I,e,x),t,x),n,(()=>[s,0]))[1]=r,Ae=(e,t,n,s,r)=>(p(P(P(P(J,e,x),t,x),n,(()=>[])),s),r),Ge=(e,t,n)=>L(M(M(M(I,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...$(et(e,t,n))])),He=e=>E(J)||E(ve[e])?0:O(e?B(J,D):J,((t,n)=>O(t,((t,s)=>O(t,((t,r)=>we(ve[e],[n,s,r],t))))))),Ke=(e,t,n,s)=>S(t)>1?(we(e[0],s),we(e[1],s),1):E(t)||0==M(t,null)||c(M(t,null),n(...s??[]))?void 0:(we(e[1],s),1),Qe=e=>{const t=E(he[e]),n=ee(pe[e])&&ee(fe[e])&&t&&ee(ce[e]),s=E(be[e])&&E(Te[e])&&E(ue[e])&&E(ie[e]);if(!n||!s){const r=e?[B(g),D(y),B(C,D),B(I,D)]:[g,y,C,I];if(!n){O(r[2],((t,n)=>O(t,((t,s)=>Ke(pe[e],t,$e,[n,s])))));const n=X();O(r[1],((s,r)=>{Ke(fe[e],s,Ye,[r])&&!t&&(we(he[e],[r,null]),Y(n,r))})),t||O(r[3],((t,s)=>{if(!m(n,s)){const n=X();O(t,(e=>O(e,(([t,s],r)=>s!==t?Y(n,r):j(e,r))))),O(n,(t=>we(he[e],[s,t])))}})),Ke(ce[e],r[0],Xe)}if(!s){let t;O(r[3],((n,s)=>{let r;O(n,((n,l)=>{let o;O(n,(([n,a],d)=>{a!==n&&(we(be[e],[s,l,d],a,n,Ge),t=r=o=1)})),o&&we(Te[e],[s,l],Ge)})),r&&we(ue[e],[s],Ge)})),t&&we(ie[e],void 0,Ge)}}},Ue=(e,...t)=>(st((()=>e(...f(t,re)))),ot),Ve=()=>_(G,(e=>_(e,_))),Xe=()=>z(G),Ye=e=>z(M(G,re(e))),Ze=(e,t,n)=>{const s=[];return k(M(G,re(e)),((e,n)=>p(s,[w(t)?e:M(n,re(t)),e]))),f(s.sort((([e],[t])=>(e<t?-1:1)*(n?-1:1))),(([,e])=>e))},$e=(e,t)=>z(M(M(G,re(e)),re(t))),et=(e,t,n)=>M(M(M(G,re(e)),re(t)),re(n)),tt=e=>Ue((()=>(e=>oe(e,Ce,Ae))(e)?Fe(e):0)),nt=()=>Ue((()=>Fe({}))),st=(e,t)=>{if(-1==T)return;rt();const n=e?.();return lt(t),n},rt=()=>(T++,ot),lt=e=>(T>0&&(T--,0==T&&(s=!E(I),T=1,He(1),s&&Qe(1),T=-1,e?.(_(I,(e=>_(e,(e=>_(e,(e=>[...e]),(([e,t])=>e===t))),V)),V),_(J,(e=>_(e,_))))&&(T=1,O(I,((e,t)=>O(e,((e,n)=>O(e,(([e],s)=>((e,t,n,s,r)=>w(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(ot,t,n,s,e))))))),T=-1,s=!1),we(ge[0],void 0,s),He(0),s&&Qe(0),we(ge[1],void 0,s),T=0,u([I,J,g,y,C],F))),ot),ot={getTables:Ve,getTableIds:Xe,getTable:e=>_(M(G,re(e)),_),getRowIds:Ye,getSortedRowIds:Ze,getRow:(e,t)=>_(M(M(G,re(e)),re(t))),getCellIds:$e,getCell:et,hasTables:()=>!E(G),hasTable:e=>m(G,re(e)),hasRow:(e,t)=>m(M(G,re(e)),re(t)),hasCell:(e,t,n)=>m(M(M(G,re(e)),re(t)),re(n)),getJson:()=>b(G),getSchemaJson:()=>b(q),setTables:tt,setTable:(e,t)=>Ue((e=>Ce(t,e)?Oe(e,t):0),e),setRow:(e,t,n)=>Ue(((e,t)=>Ie(re(e),re(t),n)?je(re(e),ke(re(e)),re(t),n):0),e,t),addRow:(e,t,n)=>st((()=>{e=re(e);const s=Ie(e,void 0,t),r=s||n?Me(M(G,e)):void 0;return s&&je(e,ke(e),r,t),r})),setPartialRow:(e,t,n)=>Ue(((e,t)=>{if(Ie(e,t,n,1)){const s=ke(e);U(n,((n,r)=>ze(e,s,t,r,n)))}}),e,t),setCell:(e,n,s,r)=>Ue(((e,n,s)=>L(me(e,n,s,t(r)==o?r(et(e,n,s)):r),(t=>ze(e,ke(e),n,s,t)))),e,n,s),setJson:e=>{try{"{}"===e?nt():tt(v(e))}catch{}return ot},setSchema:t=>Ue((()=>{if((e=(e=>oe(e,(e=>oe(e,(e=>{if(!oe(e,((e,t)=>[a,d].includes(t))))return!1;const t=e.type;return!(!R(t)&&t!=l||(se(e.default)!=t&&Q(e,d),0))})))))(t))&&(Je(t),!E(G))){const e=Ve();nt(),tt(e)}})),delTables:nt,delTable:e=>Ue((e=>m(G,e)?Ne(e):0),e),delRow:(e,t)=>Ue(((e,t)=>L(M(G,e),(n=>m(n,t)?Pe(e,n,t):0))),e,t),delCell:(e,t,n,s)=>Ue(((e,t,n)=>L(M(G,e),(r=>L(M(r,t),(l=>m(l,n)?_e(e,r,t,l,n,s):0))))),e,t,n),delSchema:()=>Ue((()=>{Je({}),e=!1})),transaction:st,startTransaction:rt,finishTransaction:lt,forEachTable:e=>O(G,((t,n)=>e(n,(e=>O(t,((t,n)=>e(n,(e=>k(t,e))))))))),forEachRow:(e,t)=>O(M(G,re(e)),((e,n)=>t(n,(t=>k(e,t))))),forEachCell:(e,t,n)=>k(M(M(G,re(e)),re(t)),n),addTablesListener:(e,t)=>ye(e,ie[t?1:0]),addTableIdsListener:(e,t,n)=>ye(e,ce[n?1:0][t?1:0]),addTableListener:(e,t,n)=>ye(t,ue[n?1:0],[e]),addRowIdsListener:(e,t,n,s)=>ye(t,fe[s?1:0][n?1:0],[e]),addSortedRowIdsListener:(e,t,n,s,r)=>{let l=Ze(e,t,n);return ye((()=>{const r=Ze(e,t,n);c(r,l)||(l=r,s(ot,e,t,n,l))}),he[r?1:0],[e,t])},addRowListener:(e,t,n,s)=>ye(n,Te[s?1:0],[e,t]),addCellIdsListener:(e,t,n,s,r)=>ye(n,pe[r?1:0][s?1:0],[e,t]),addCellListener:(e,t,n,s,r)=>ye(s,be[r?1:0],[e,t,n]),addInvalidCellListener:(e,t,n,s,r)=>ye(s,ve[r?1:0],[e,t,n]),addWillFinishTransactionListener:e=>ye(e,ge[0]),addDidFinishTransactionListener:e=>ye(e,ge[1]),callListener:e=>(Se(e,[Xe,Ye,$e],(e=>w(e[2])?[]:$(et(...e)))),ot),delListener:e=>(Le(e),ot),getListenerStats:()=>({}),createStore:de};return H(ot)};e.createStore=de,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),i=s(s),d="type",l="default",c="utf8",u=e=>[e,e],f=(e,t)=>e.includes(t),h=(e,t)=>e.every(((s,n)=>0==n||t(e[n-1],s)<=0)),g=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),p=e=>I(e,((e,t)=>e+t),0),w=e=>e.length,v=e=>0==w(e),I=(e,t,s)=>e.reduce(t,s),y=e=>e.slice(1),S=(e,t)=>e.push(t),T=e=>e.pop(),R=e=>JSON.stringify(e,((e,t)=>E(t,Map)?I([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),b=JSON.parse,C=Math.max,m=Math.min,k=isFinite,E=(e,t)=>e instanceof t,M=e=>null==e,x=(e,t,s)=>M(e)?s?.():t(e),A=e=>e==o||e==r,D=e=>s(e)==i,F=()=>{},P=e=>e.size,J=(e,t)=>e?.has(t)??!1,O=e=>M(e)||0==P(e),j=e=>[...e?.values()??[]],z=e=>e.clear(),N=(e,t)=>e?.forEach(t),B=(e,t)=>e?.delete(t),W=e=>new Map(e),_=(e=W)=>[e(),e()],q=e=>[...e?.keys()??[]],H=(e,t)=>e?.get(t),G=(e,t)=>N(e,((e,s)=>t(s,e))),K=(e,t,s)=>M(s)?(B(e,t),e):e?.set(t,s),Q=(e,t,s)=>(J(e,t)||K(e,t,s()),H(e,t)),U=(e,t,s)=>{const n={},o=t??(e=>e);return N(e,((e,t)=>x(o(e),(e=>s?.(e)?0:n[t]=e)))),n},V=(e,t)=>{const s=W(),n=t??(e=>e);return N(e,((e,t)=>s.set(t,n(e)))),s},X=e=>V(e,V),Y=e=>new Set(e),Z=(e,t)=>e?.add(t),$=(e,t,s)=>{const n=e.hasRow,o=W(),r=W(),a=W(),i=W(),d=W(),l=t=>x(H(d,t),(s=>{N(s,e.delListener),K(d,t)})),c=e=>{K(o,e),K(r,e),K(a,e),K(i,e),l(e)};return[()=>e,()=>q(o),e=>G(r,e),e=>J(r,e),e=>H(o,e),e=>H(r,e),(e,t)=>K(r,e,t),(c,u,f,h,g)=>{const p=W(),w=W();K(o,c,u),J(r,c)||(K(r,c,t()),K(a,c,W()),K(i,c,W()));const v=H(a,c),I=H(i,c),y=t=>{const o=s=>e.getCell(u,t,s),r=H(v,t),a=n(u,t)?s(h(o,t)):void 0;if(r!=a&&K(p,t,[r,a]),!M(g)){const e=H(I,t),s=n(u,t)?g(o,t):void 0;e!=s&&K(w,t,s)}},S=e=>{f((()=>{N(p,(([,e],t)=>K(v,t,e))),N(w,((e,t)=>K(I,t,e)))}),p,w,v,I,e),z(p),z(w)};G(v,y),e.hasTable(u)&&L(e.getRowIds(u),(e=>{J(v,e)||y(e)})),S(!0),l(c),K(d,c,Y([e.addRowListener(u,null,((e,t,s)=>y(s))),e.addTableListener(u,(()=>S()))]))},c,()=>G(d,c)]},ee=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),te=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},se=(e,t,s)=>w(s)<2?Z(v(s)?e:Q(e,s[0],Y),t):se(Q(e,s[0],W),t,y(s)),ne=e=>{const t=(s,n,...o)=>x(s,(s=>v(o)?e(s,n):L([o[0],null],(e=>t(H(s,e),n,...y(o))))));return t},oe=e=>{let t,s=0;const n=[],o=W();return[(r,a,i=[])=>{t??=e();const d=T(n)??""+s++;return K(o,d,[r,a,i]),se(a,d,i),d},(e,s=[],...n)=>ne(N)(e,(e=>x(H(o,e),(([e])=>e(t,...s,...n)))),...s),e=>x(H(o,e),(([,t,s])=>(ne(B)(t,e,...s),K(o,e),w(n)<1e3&&S(n,e),s)),(()=>[])),(e,s,n)=>x(H(o,e),(([e,,o])=>{const r=(...a)=>{const i=w(a);i==w(o)?e(t,...a,...n(a)):M(o[i])?L(s[i](...a),(e=>r(...a,e))):r(...a,o[i])};r()}))]},re=Object,ae=re.keys,ie=re.isFrozen,de=re.freeze,le=(e,t)=>!M(((e,t)=>x(e,(e=>e[t])))(e,t)),ce=(e,t)=>delete e[t],ue=(e,t)=>L(re.entries(e),(([e,s])=>t(s,e))),fe=e=>v(ae(e)),he=te((e=>{let t,s,n,o=100,r=W(),a=1;const i=Y(),d=W(),[l,c,u]=oe((()=>z)),h=W(),g=W(),p=[],I=[],y=(t,s)=>{a=0,e.transaction((()=>N(H(h,s),((s,n)=>N(s,((s,o)=>N(s,((s,r)=>M(s[t])?e.delCell(n,o,r,!0):e.setCell(n,o,r,s[t]))))))))),a=1},R=e=>{K(h,e),K(g,e),c(d,[e])},b=(e,t)=>L(((e,t)=>e.splice(0,t))(e,t??w(e)),R),C=()=>b(p,w(p)-o),m=e.addCellListener(null,null,null,((e,s,o,i,d,l)=>{if(a){x(t,(()=>{S(p,t),C(),b(I),t=void 0,n=1}));const e=Q(r,s,W),a=Q(e,o,W),c=Q(a,i,(()=>[l,void 0]));c[1]=d,c[0]===d&&O(K(a,i))&&O(K(e,o))&&O(K(r,s))&&(t=T(p),n=1),D()}})),k=(e="")=>(M(t)&&(t=""+s++,K(h,t,r),P(t,e),r=W(),n=1),t),E=()=>{v(p)||(I.unshift(k()),y(0,t),t=T(p),n=1)},A=()=>{v(I)||(S(p,t),t=I.shift(),y(1,t),n=1)},D=()=>{n&&(c(i),n=0)},F=e=>{const t=k(e);return D(),t},P=(e,t)=>(j(e)&&H(g,e)!==t&&(K(g,e,t),c(d,[e])),z),j=e=>J(h,e),z={setSize:e=>(o=e,C(),z),addCheckpoint:F,setCheckpoint:P,getStore:()=>e,getCheckpointIds:()=>[[...p],t,[...I]],forEachCheckpoint:e=>G(g,e),hasCheckpoint:j,getCheckpoint:e=>H(g,e),goBackward:()=>(E(),D(),z),goForward:()=>(A(),D(),z),goTo:e=>{const s=f(p,e)?E:f(I,e)?A:null;for(;!M(s)&&e!=t;)s();return D(),z},addCheckpointIdsListener:e=>l(e,i),addCheckpointListener:(e,t)=>l(t,d,[e]),delListener:e=>(u(e),z),clear:()=>(b(p),b(I),M(t)||R(t),t=void 0,s=0,F(),z),destroy:()=>{e.delListener(m)},getListenerStats:()=>({})};return de(z.clear())})),ge=(e,t)=>e<t?-1:1,Le=e=>n+e,pe=te((e=>{const t=W(),s=W(),[o,r,a,i,d,l,c,u,f,L]=$(e,W,(e=>M(e)?n:e+n)),[p,w,v]=oe((()=>y)),I=(t,s,n)=>{const o=d(t);N(n,((t,n)=>s(n,(s=>N(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},y={setIndexDefinition:(e,n,o,r,a,i=ge)=>{const d=M(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,f,L)=>{let p=0;const v=Y(),I=Y(),y=l(e);if(N(o,(([e,t],s)=>{M(e)||(Z(v,e),x(H(y,e),(t=>{B(t,s),O(t)&&(K(y,e),p=1)}))),M(t)||(Z(v,t),J(y,t)||(K(y,t,Y()),p=1),Z(H(y,t),s),M(r)||Z(I,t))})),n(),O(f)||(L?G(y,(e=>Z(I,e))):G(a,(e=>x(H(u,e),(e=>Z(I,e))))),N(I,(e=>{const t=(t,s)=>i(H(f,t),H(f,s),e),s=[...H(y,e)];h(s,t)||(K(y,e,Y(g(s,t))),Z(v,e))}))),(p||L)&&!M(d)){const t=[...y];h(t,d)||(c(e,W(g(t,d))),p=1)}p&&w(t,[e]),N(v,(t=>w(s,[e,t])))}),ee(o),x(r,ee)),y},delIndexDefinition:e=>(f(e),y),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,l(e)),hasIndex:i,hasSlice:(e,t)=>J(l(e),t),getTableId:d,getSliceIds:e=>q(l(e)),getSliceRowIds:(e,t)=>j(H(l(e),t)),addSliceIdsListener:(e,s)=>p(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>p(n,s,[e,t]),delListener:e=>(v(e),y),destroy:L,getListenerStats:()=>({})};return de(y)})),we=W([["avg",[(e,t)=>p(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:C(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>p(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ve=te((e=>{const t=W(),[s,o,r,a,i,d,l,c,u,f]=$(e,F,(e=>isNaN(e)||M(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,g,L]=oe((()=>p)),p={setMetricDefinition:(e,s,n,o,r,a,i)=>{const u=D(n)?[n,r,a,i]:H(we,n)??H(we,"sum");return c(e,s,((s,n,o,r,a,i)=>{let c=d(e),f=P(r);const[h,L,p,w]=u;i=i||M(c),N(n,(([e,t])=>{i||(c=M(e)?L?.(c,t,f++):M(t)?p?.(c,e,f--):w?.(c,t,e,f)),i=i||M(c)})),s(),O(r)?c=void 0:i&&(c=h(j(r),P(r))),k(c)||(c=void 0);const v=d(e);c!=v&&(l(e,c),g(t,[e],c,v))}),ee(o,1)),p},delMetricDefinition:e=>(u(e),p),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:i,getMetric:d,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(L(e),p),destroy:f,getListenerStats:()=>({})};return de(p)})),Ie=(e,t,s,n,o)=>{let r,a=0;const i={load:async s=>{if(2!=a){a=1;const n=await t();M(n)||""==n?e.setTables(s):e.setJson(n),a=0}return i},startAutoLoad:async e=>(i.stopAutoLoad(),await i.load(e),n(i.load),i),stopAutoLoad:()=>(o(),i),save:async()=>(1!=a&&(a=2,await s(e.getJson()),a=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),r=e.addTablesListener((()=>i.save())),i),stopAutoSave:()=>(x(r,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return de(i)},ye="storage",Se=globalThis.window,Te=(e,t,s)=>{let n;return Ie(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},Se.addEventListener(ye,n)}),(()=>{Se.removeEventListener(ye,n),n=void 0}))},Re=e=>e.headers.get("ETag"),be=te((e=>{const t=W(),s=W(),o=W(),r=W(),[a,i,d,l,c,u,,f,h,g]=$(e,(()=>[W(),W(),W(),W()]),(e=>M(e)?void 0:e+n)),[L,p,w]=oe((()=>S)),v=(e,t,s)=>x(u(e),(([n,,o])=>{if(!J(o,t)){const r=Y();if(c(e)!=y(e))Z(r,t);else{let e=t;for(;!M(e)&&!J(r,e);)Z(r,e),e=H(n,e)}if(s)return r;K(o,t,r)}return H(o,t)})),I=(e,t)=>x(u(e),(([,,e])=>K(e,t))),y=e=>H(t,e),S={setRelationshipDefinition:(e,n,a,i)=>(K(t,e,a),f(e,n,((t,n)=>{const a=Y(),i=Y(),d=Y(),[l,c]=u(e);N(n,(([t,s],n)=>{M(t)||(Z(i,t),x(H(c,t),(e=>{B(e,n),O(e)&&K(c,t)}))),M(s)||(Z(i,s),J(c,s)||K(c,s,Y()),Z(H(c,s),n)),Z(a,n),K(l,n,s),G(H(r,e),(t=>{J(v(e,t),n)&&Z(d,t)}))})),t(),N(a,(t=>p(s,[e,t]))),N(i,(t=>p(o,[e,t]))),N(d,(t=>{I(e,t),p(r,[e,t])}))}),ee(i)),S),delRelationshipDefinition:e=>(K(t,e),h(e),S),getStore:a,getRelationshipIds:i,forEachRelationship:t=>d((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:l,getLocalTableId:c,getRemoteTableId:y,getRemoteRowId:(e,t)=>H(u(e)?.[0],t),getLocalRowIds:(e,t)=>j(H(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>M(u(e))?[t]:j(v(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),L(s,r,[e,t])),delListener:e=>(I(...w(e)),S),destroy:g,getListenerStats:()=>({})};return de(S)})),Ce=(e,t,s,n=K)=>{const o=(r=q(e),a=e=>!le(t,e),r.filter(a));var r,a;return L(ae(t),(n=>s(e,n,t[n]))),L(o,(t=>n(e,t))),e},me=e=>{const t=s(e);return A(t)||t==a&&k(e)?t:void 0},ke=(e,t,s)=>M(e)||!(e=>E(e,re)&&e.constructor==re)(e)||fe(e)||ie(e)?(s?.(),!1):(ue(e,((s,n)=>{t(s,n)||ce(e,n)})),!fe(e)),Ee=(e,t,s)=>K(e,t,H(e,t)==-s?void 0:s);e.createCheckpoints=he,e.createCustomPersister=Ie,e.createFilePersister=(e,s)=>{let n;return Ie(e,(async()=>{try{return await t.promises.readFile(s,c)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,c)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=pe,e.createLocalPersister=(e,t)=>Te(e,t,localStorage),e.createMetrics=ve,e.createRelationships=be,e.createRemotePersister=(e,t,s,n)=>{let o,r;return Ie(e,(async()=>{const e=await fetch(t);return r=Re(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=Re(s);M(r)||M(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{x(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Te(e,t,sessionStorage),e.createStore=()=>{let e,t,s=0,o=0;const r=W(),i=W(),c=W(),h=W(),g=W(),p=W(),w=W(),v=W(),I=_(Y),y=_(Y),T=_(),C=_(),m=_(),k=_(),E=_(),F=_(),P=_(Y),[j,B,$,ee]=oe((()=>Ue)),te=(t,s)=>(!e||J(p,s)||Ae(s))&&ke(t,((e,t)=>se(s,t,e)),(()=>Ae(s))),se=(e,t,s,n)=>ke(n?s:re(s,e,t),((n,o)=>x(ne(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Ae(e,t))),ne=(t,s,n,o)=>e?x(H(H(p,t),n),(e=>me(o)!=e.type?Ae(t,s,n,o,e.default):o),(()=>Ae(t,s,n,o))):M(me(o))?Ae(t,s,n,o):o,re=(e,t,s)=>(x(H(w,t),(([n,o])=>{N(n,((t,s)=>{le(e,s)||(e[s]=t)})),N(o,(n=>{le(e,n)||Ae(t,s,n)}))})),e),ae=e=>Ce(p,e,((e,t,s)=>{const n=W(),o=Y();Ce(Q(p,t,W),s,((e,t,s)=>{K(e,t,s),x(s.default,(e=>K(n,t,e)),(()=>Z(o,t)))})),K(w,t,[n,o])}),((e,t)=>{K(p,t),K(w,t)})),ie=e=>Ce(v,e,((e,t,s)=>he(t,s)),((e,t)=>ye(t))),he=(e,t)=>Ce(Q(v,e,(()=>(Re(e,1),W()))),t,((t,s,n)=>ge(e,t,s,n)),((t,s)=>Se(e,t,s))),ge=(e,t,s,n,o)=>Ce(Q(t,s,(()=>(be(e,s,1),W()))),n,((t,n,o)=>pe(e,s,t,n,o)),((n,r)=>Te(e,t,s,n,r,o))),pe=(e,t,s,n,o)=>{J(s,n)||Me(e,t,n,1);const r=H(s,n);o!==r&&(xe(e,t,n,r,o),K(s,n,o))},we=(e,t,s,n,o)=>x(H(t,s),(t=>pe(e,s,t,n,o)),(()=>ge(e,t,s,re({[n]:o},e,s)))),ve=e=>{const t=n+s++;return J(e,t)?ve(e):t},Ie=e=>H(v,e)??he(e,{}),ye=e=>he(e,{}),Se=(e,t,s)=>ge(e,t,s,{},!0),Te=(e,t,s,n,o,r)=>{const a=H(H(w,e)?.[0],o);if(!M(a)&&!r)return pe(e,s,n,o,a);const i=t=>{xe(e,s,t,H(n,t)),Me(e,s,t,-1),K(n,t)};M(a)?i(o):G(n,i),O(n)&&(be(e,s,-1),O(K(t,s))&&(Re(e,-1),K(v,e)))},Re=(e,t)=>Ee(r,e,t),be=(e,t,s)=>Ee(Q(i,e,W),t,s),Me=(e,t,s,n)=>Ee(Q(Q(c,e,W),t,W),s,n),xe=(e,t,s,n,o)=>Q(Q(Q(h,e,W),t,W),s,(()=>[n,0]))[1]=o,Ae=(e,t,s,n,o)=>(S(Q(Q(Q(g,e,W),t,W),s,(()=>[])),n),o),De=(e,t,s)=>x(H(H(H(h,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...u(Be(e,t,s))])),Fe=e=>O(g)||O(F[e])?0:N(e?V(g,X):g,((t,s)=>N(t,((t,n)=>N(t,((t,o)=>B(F[e],[s,n,o],t))))))),Pe=e=>{const t=O(k[e])&&O(C[e])&&O(y[e]),s=O(E[e])&&O(m[e])&&O(T[e])&&O(I[e]);if(!t||!s){const n=e?[V(r),X(i),V(c,X),V(h,X)]:[r,i,c,h];if(t||(N(n[2],((t,s)=>N(t,((t,n)=>{O(t)||B(k[e],[s,n])})))),N(n[1],((t,s)=>{O(t)||B(C[e],[s])})),O(n[0])||B(y[e])),!s){let t;N(n[3],((s,n)=>{let o;N(s,((s,r)=>{let a;N(s,(([s,i],d)=>{i!==s&&(B(E[e],[n,r,d],i,s,De),t=o=a=1)})),a&&B(m[e],[n,r],De)})),o&&B(T[e],[n],De)})),t&&B(I[e],[],De)}}},Je=(e,...t)=>(Ge((()=>{return e(...(s=t,n=Le,s.map(n)));var s,n})),Ue),Oe=()=>U(v,(e=>U(e,U))),je=()=>q(v),ze=e=>q(H(v,Le(e))),Ne=(e,t)=>q(H(H(v,Le(e)),Le(t))),Be=(e,t,s)=>H(H(H(v,Le(e)),Le(t)),Le(s)),We=e=>Je((()=>(e=>ke(e,te,Ae))(e)?ie(e):0)),_e=(e,t,s,n)=>Je(((e,t,s)=>x(ne(e,t,s,D(n)?n(Be(e,t,s)):n),(n=>we(e,Ie(e),t,s,n)))),e,t,s),qe=()=>Je((()=>ie({}))),He=(e,t,s,n)=>Je(((e,t,s)=>x(H(v,e),(o=>x(H(o,t),(r=>J(r,s)?Te(e,o,t,r,s,n):0))))),e,t,s),Ge=(e,t)=>{if(-1==o)return;Ke();const s=e?.();return Qe(t),s},Ke=()=>(o++,Ue),Qe=e=>(o>0&&(o--,0==o&&(t=!O(h),o=1,Fe(1),t&&Pe(1),o=-1,e?.(U(h,(e=>U(e,(e=>U(e,(e=>[...e]),(([e,t])=>e===t))),fe)),fe),U(g,(e=>U(e,U))))&&(o=1,N(h,((e,t)=>N(e,((e,s)=>N(e,(([e],n)=>M(e)?He(t,s,n,!0):_e(t,s,n,e))))))),o=-1,t=!1),B(P[0],[],t),Fe(0),t&&Pe(0),B(P[1],[],t),o=0,L([h,g,r,i,c],z))),Ue),Ue={getTables:Oe,getTableIds:je,getTable:e=>U(H(v,Le(e)),U),getRowIds:ze,getRow:(e,t)=>U(H(H(v,Le(e)),Le(t))),getCellIds:Ne,getCell:Be,hasTables:()=>!O(v),hasTable:e=>J(v,Le(e)),hasRow:(e,t)=>J(H(v,Le(e)),Le(t)),hasCell:(e,t,s)=>J(H(H(v,Le(e)),Le(t)),Le(s)),getJson:()=>R(v),getSchemaJson:()=>R(p),setTables:We,setTable:(e,t)=>Je((e=>te(t,e)?he(e,t):0),e),setRow:(e,t,s)=>Je(((e,t)=>se(Le(e),Le(t),s)?ge(Le(e),Ie(Le(e)),Le(t),s):0),e,t),addRow:(e,t)=>Ge((()=>{let s;return se(e,s,t)&&(e=Le(e),ge(e,Ie(e),s=ve(H(v,e)),t)),s})),setPartialRow:(e,t,s)=>Je(((e,t)=>{if(se(e,t,s,1)){const n=Ie(e);ue(s,((s,o)=>we(e,n,t,o,s)))}}),e,t),setCell:_e,setJson:e=>{try{"{}"===e?qe():We(b(e))}catch{}return Ue},setSchema:t=>Je((()=>{if((e=(e=>ke(e,(e=>ke(e,(e=>{if(!ke(e,((e,t)=>f([d,l],t))))return!1;const t=e.type;return!(!A(t)&&t!=a||(me(e.default)!=t&&ce(e,l),0))})))))(t))&&(ae(t),!O(v))){const e=Oe();qe(),We(e)}})),delTables:qe,delTable:e=>Je((e=>J(v,e)?ye(e):0),e),delRow:(e,t)=>Je(((e,t)=>x(H(v,e),(s=>J(s,t)?Se(e,s,t):0))),e,t),delCell:He,delSchema:()=>Je((()=>{ae({}),e=!1})),transaction:Ge,startTransaction:Ke,finishTransaction:Qe,forEachTable:e=>N(v,((t,s)=>e(s,(e=>N(t,((t,s)=>e(s,(e=>G(t,e))))))))),forEachRow:(e,t)=>N(H(v,Le(e)),((e,s)=>t(s,(t=>G(e,t))))),forEachCell:(e,t,s)=>G(H(H(v,Le(e)),Le(t)),s),addTablesListener:(e,t)=>j(e,I[t?1:0]),addTableIdsListener:(e,t)=>j(e,y[t?1:0]),addTableListener:(e,t,s)=>j(t,T[s?1:0],[e]),addRowIdsListener:(e,t,s)=>j(t,C[s?1:0],[e]),addRowListener:(e,t,s,n)=>j(s,m[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n)=>j(s,k[n?1:0],[e,t]),addCellListener:(e,t,s,n,o)=>j(n,E[o?1:0],[e,t,s]),addInvalidCellListener:(e,t,s,n,o)=>j(n,F[o?1:0],[e,t,s]),addWillFinishTransactionListener:e=>j(e,P[0]),addDidFinishTransactionListener:e=>j(e,P[1]),callListener:e=>(ee(e,[je,ze,Ne],(e=>M(e[2])?[]:u(Be(...e)))),Ue),delListener:e=>($(e),Ue),getListenerStats:()=>({})};return de(Ue)},e.defaultSorter=ge,e.id=Le,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),l=s(s),i="type",d="default",c="utf8",u=(e,t)=>e.includes(t),f=(e,t)=>e.every(t),h=(e,t)=>T(e)===T(t)&&f(e,((e,s)=>t[s]===e)),R=(e,t)=>f(e,((s,n)=>0==n||t(e[n-1],s)<=0)),g=(e,t)=>e.sort(t),w=(e,t)=>e.forEach(t),L=(e,t)=>e.map(t),I=e=>p(e,((e,t)=>e+t),0),T=e=>e.length,v=e=>0==T(e),p=(e,t,s)=>e.reduce(t,s),S=(e,...t)=>e.push(...t),b=e=>e.pop(),y=e=>JSON.stringify(e,((e,t)=>M(t,Map)?p([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),C=JSON.parse,m=Math.max,E=Math.min,k=isFinite,M=(e,t)=>e instanceof t,x=e=>null==e,D=(e,t,s)=>x(e)?s?.():t(e),A=e=>e==o||e==r,F=e=>s(e)==l,P=()=>{},J=e=>e.size,Q=(j=J,e=>p(N(e),((e,t)=>e+j(t)),0));var j;const O=(e,t)=>e?.has(t)??!1,z=e=>x(e)||0==J(e),N=e=>[...e?.values()??[]],W=e=>e.clear(),B=(e,t)=>e?.forEach(t),_=(e,t)=>e?.delete(t),q=e=>new Map(e),H=e=>[...e?.keys()??[]],G=(e,t)=>e?.get(t),K=(e,t)=>B(e,((e,s)=>t(s,e))),U=(e,t,s)=>x(s)?(_(e,t),e):e?.set(t,s),V=(e,t,s)=>(O(e,t)||U(e,t,s()),G(e,t)),X=(e,t,s)=>{const n={},o=t??(e=>e);return B(e,((e,t)=>D(o(e),(e=>s?.(e)?0:n[t]=e)))),n},Y=(e,t)=>{const s=q(),n=t??(e=>e);return B(e,((e,t)=>s.set(t,n(e)))),s},Z=e=>Y(e,Y),$=(e,t,s,n,o=0)=>D((s?V:G)(e,t[o],o>T(t)-2?s:q),(r=>{if(o>T(t)-2)return n?.(r)&&U(e,t[o]),r;const a=$(r,t,s,n,o+1);return z(r)&&U(e,t[o]),a})),ee=e=>new Set(e),te=(e,t)=>e?.add(t),se=(e,t,s)=>{const n=e.hasRow,o=q(),r=q(),a=q(),l=q(),i=q(),d=(t,s,...n)=>{const o=V(i,t,ee);return w(n,(t=>te(o,t)&&s&&e.callListener(t))),n},c=(t,...s)=>D(G(i,t),(n=>{w(v(s)?N(n):s,(t=>{e.delListener(t),_(n,t)})),z(n)&&U(i,t)})),u=(e,s)=>{U(o,e,s),O(r,e)||(U(r,e,t()),U(a,e,q()),U(l,e,q()))},f=e=>{U(o,e),U(r,e),U(a,e),U(l,e),c(e)};return[()=>e,()=>H(o),e=>K(r,e),e=>O(r,e),e=>G(o,e),e=>G(r,e),(e,t)=>U(r,e,t),u,(t,o,r,i,f)=>{u(t,o);const h=q(),R=q(),g=G(a,t),L=G(l,t),I=t=>{const r=s=>e.getCell(o,t,s),a=G(g,t),l=n(o,t)?s(i(r,t)):void 0;if(a!=l&&U(h,t,[a,l]),!x(f)){const e=G(L,t),s=n(o,t)?f(r,t):void 0;e!=s&&U(R,t,s)}},T=e=>{r((()=>{B(h,(([,e],t)=>U(g,t,e))),B(R,((e,t)=>U(L,t,e)))}),h,R,g,L,e),W(h),W(R)};K(g,I),e.hasTable(o)&&w(e.getRowIds(o),(e=>{O(g,e)||I(e)})),T(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,s)=>I(s))),e.addTableListener(o,(()=>T())))},f,()=>K(i,f),d,c]},ne=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),oe=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},re=(e,t=[n])=>{const s=[],o=(e,n)=>n==T(t)?S(s,e):null===t[n]?B(e,(e=>o(e,n+1))):w([t[n],null],(t=>o(G(e,t),n+1)));return o(e,0),s},ae=e=>{let t,s=0;const o=[],r=q();return[(a,l,i)=>{t??=e();const d=b(o)??n+s++;return U(r,d,[a,l,i]),te($(l,i??[n],ee),d),d},(e,s,...n)=>w(re(e,s),(e=>B(e,(e=>G(r,e)[0](t,...s??[],...n))))),e=>D(G(r,e),(([,t,s])=>($(t,s??[n],void 0,(t=>(_(t,e),z(t)?1:0))),U(r,e),T(o)<1e3&&S(o,e),s))),(e,t)=>!f(re(e,t),x),(e,s,n)=>D(G(r,e),(([e,,o=[]])=>{const r=(...a)=>{const l=T(a);l==T(o)?e(t,...a,...n(a)):x(o[l])?w(s[l](...a),(e=>r(...a,e))):r(...a,o[l])};r()}))]},le=Object,ie=le.keys,de=le.isFrozen,ce=le.freeze,ue=(e,t)=>!x(((e,t)=>D(e,(e=>e[t])))(e,t)),fe=(e,t)=>delete e[t],he=(e,t)=>w(le.entries(e),(([e,s])=>t(s,e))),Re=e=>v(ie(e)),ge=e=>{const t=s(e);return A(t)||t==a&&k(e)?t:void 0},we=(e,t,s,n,o)=>x(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Le=oe((e=>{let t,s,o,r=100,a=q(),l=1;const i=q(),d=q(),[c,f,h]=ae((()=>j)),R=q(),g=q(),L=[],I=[],p=(t,s)=>{l=0,e.transaction((()=>B(G(R,s),((s,n)=>B(s,((s,o)=>B(s,((s,r)=>we(e,n,o,r,s[t]))))))))),l=1},y=e=>{U(R,e),U(g,e),f(d,[e])},C=(e,t)=>w(((e,t)=>e.splice(0,t))(e,t??T(e)),y),m=()=>C(L,T(L)-r),E=e.addCellListener(null,null,null,((e,s,n,r,i,d)=>{if(l){D(t,(()=>{S(L,t),m(),C(I),t=void 0,o=1}));const e=V(a,s,q),l=V(e,n,q),c=V(l,r,(()=>[d,void 0]));c[1]=i,c[0]===i&&z(U(l,r))&&z(U(e,n))&&z(U(a,s))&&(t=b(L),o=1),F()}})),k=(e="")=>(x(t)&&(t=n+s++,U(R,t,a),J(t,e),a=q(),o=1),t),M=()=>{v(L)||(I.unshift(k()),p(0,t),t=b(L),o=1)},A=()=>{v(I)||(S(L,t),t=I.shift(),p(1,t),o=1)},F=()=>{o&&(f(i),o=0)},P=e=>{const t=k(e);return F(),t},J=(e,t)=>(Q(e)&&G(g,e)!==t&&(U(g,e,t),f(d,[e])),j),Q=e=>O(R,e),j={setSize:e=>(r=e,m(),j),addCheckpoint:P,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...I]],forEachCheckpoint:e=>K(g,e),hasCheckpoint:Q,getCheckpoint:e=>G(g,e),goBackward:()=>(M(),F(),j),goForward:()=>(A(),F(),j),goTo:e=>{const s=u(L,e)?M:u(I,e)?A:null;for(;!x(s)&&e!=t;)s();return F(),j},addCheckpointIdsListener:e=>c(e,i),addCheckpointListener:(e,t)=>c(t,d,[e]),delListener:e=>(h(e),j),clear:()=>(C(L),C(I),x(t)||y(t),t=void 0,s=0,P(),j),destroy:()=>{e.delListener(E)},getListenerStats:()=>({})};return ce(j.clear())})),Ie=(e,t)=>e<t?-1:1,Te=e=>n+e,ve=oe((e=>{const t=q(),s=q(),[o,r,a,l,i,d,c,,u,f,h]=se(e,q,(e=>x(e)?n:e+n)),[w,L,I]=ae((()=>v)),T=(t,s,n)=>{const o=i(t);B(n,((t,n)=>s(n,(s=>B(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},v={setIndexDefinition:(e,n,o,r,a,l=Ie)=>{const i=x(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,f,h)=>{let w=0;const I=ee(),T=ee(),v=d(e);if(B(o,(([e,t],s)=>{x(e)||(te(I,e),D(G(v,e),(t=>{_(t,s),z(t)&&(U(v,e),w=1)}))),x(t)||(te(I,t),O(v,t)||(U(v,t,ee()),w=1),te(G(v,t),s),x(r)||te(T,t))})),n(),z(f)||(h?K(v,(e=>te(T,e))):K(a,(e=>D(G(u,e),(e=>te(T,e))))),B(T,(e=>{const t=(t,s)=>l(G(f,t),G(f,s),e),s=[...G(v,e)];R(s,t)||(U(v,e,ee(g(s,t))),te(I,e))}))),(w||h)&&!x(i)){const t=[...v];R(t,i)||(c(e,q(g(t,i))),w=1)}w&&L(t,[e]),B(I,(t=>L(s,[e,t])))}),ne(o),D(r,ne)),v},delIndexDefinition:e=>(f(e),v),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>T(t,e,s))))),forEachSlice:(e,t)=>T(e,t,d(e)),hasIndex:l,hasSlice:(e,t)=>O(d(e),t),getTableId:i,getSliceIds:e=>H(d(e)),getSliceRowIds:(e,t)=>N(G(d(e),t)),addSliceIdsListener:(e,s)=>w(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>w(n,s,[e,t]),delListener:e=>(I(e),v),destroy:h,getListenerStats:()=>({})};return ce(v)})),pe=q([["avg",[(e,t)=>I(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["sum",[e=>I(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Se=(e,t,s,n,o,r=!1)=>{if(z(s))return;const[a,l,i,d]=o;return r||=x(e),B(n,(([s,n])=>{r||(e=x(s)?l?.(e,n,t++):x(n)?i?.(e,s,t--):d?.(e,n,s,t),r||=x(e))})),r?a(N(s),J(s)):e},be=oe((e=>{const t=q(),[s,o,r,a,l,i,d,,c,u,f]=se(e,P,(e=>isNaN(e)||x(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,R,g]=ae((()=>w)),w={setMetricDefinition:(e,s,n,o,r,a,l)=>{const u=F(n)?[n,r,a,l]:G(pe,n)??G(pe,"sum");return c(e,s,((s,n,o,r,a,l)=>{const c=i(e),f=J(r);l||=x(c),s();let h=Se(c,f,r,n,u,l);k(h)||(h=void 0),h!=c&&(d(e,h),R(t,[e],h,c))}),ne(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:l,getMetric:i,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(g(e),w),destroy:f,getListenerStats:()=>({})};return ce(w)})),ye=(e,t,s,o,r)=>{let a,l=0;const i={load:async s=>{if(2!=l){l=1;const o=await t();x(o)||o==n?e.setTables(s):e.setJson(o),l=0}return i},startAutoLoad:async e=>(i.stopAutoLoad(),await i.load(e),o(i.load),i),stopAutoLoad:()=>(r(),i),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),a=e.addTablesListener((()=>i.save())),i),stopAutoSave:()=>(D(a,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ce(i)},Ce="storage",me=globalThis.window,Ee=(e,t,s)=>{let n;return ye(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},me.addEventListener(Ce,n)}),(()=>{me.removeEventListener(Ce,n),n=void 0}))},ke=e=>e.headers.get("ETag"),Me=oe((e=>{const t=e.createStore,[s,o,r,a,l,,,i,,d,c,u,R]=se(e,(()=>!0),P),I=t(),p=t(),b=t(),y=q(),C=(e,t,...s)=>w(s,(s=>te(V(V(y,t,q),e,ee),s))),m=e=>w([b,p,I],(t=>t.delTable(e))),E=(e,t,s)=>C(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(t,s,o)=>{let r;i(t,s),m(t);const a=[],l=[[null,[s,null,null,[],q()]]],d=[],c=[],y=[],M=[];o({select:(e,t)=>{const s=F(e)?[T(a)+n,e]:[x(t)?e:t,s=>s(e,t)];return S(a,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=x(s)||F(t)?null:t,o=x(n)?t:s,r=[e,[e,n,F(o)?o:e=>e(o),[],q()]];return S(l,r),{as:e=>r[0]=e}},where:(e,t,s)=>S(d,F(e)?e:x(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,F(t)?[t,s,n,o]:G(pe,t)??[(e,t)=>t]]];return S(c,r),{as:e=>r[0]=e}},having:(e,t)=>S(y,F(e)?e:s=>s(e)===t),order:(e,t)=>S(M,[F(e)?e:t=>t(e)??0,t]),limit:(e,t)=>{r=x(t)?[0,e]:[e,t]}});const A=q(a);if(z(A))return k;const P=q(l);K(P,((e,[,t])=>D(G(P,t),(({3:t})=>x(e)?0:S(t,e)))));const Q=q(c);let j=I,N=p;if(v(M)&&x(r))N=b;else{E(t,N,b);const e=(e,t)=>{const n=G(s,e)??[],o=G(s,t)??[],r=M.findIndex(((e,t)=>n[t]!==o[t]));return r<0?0:Ie(n[r],o[r])*(M[r][1]?-1:1)},s=q(),n=q();C(N,t,v(M)?N.addRowIdsListener(t,(()=>W(n))):N.addRowListener(t,null,((e,o,r)=>{let a=null;if(N.hasRow(t,r)){const e=G(s,r)??[],o=N.getRow(t,r),l=e=>o[e];if(a=L(M,(([e])=>e(l,r))),h(e,a))return void(G(n,r)&&b.setRow(t,r,o))}U(s,r,a),W(n)})),N.addTableListener(t,(()=>{if(z(n)&&(b.delTable(t),N.hasTable(t))){const s=N.getTable(t);w(g(ie(s),e),(e=>U(n,e,0))),w(D(r,(([e,t])=>{return s=H(n),o=e,r=e+t,s.slice(o,r);var s,o,r}),(()=>H(n))),(e=>{b.setRow(t,e,s[e]),U(n,e,1)}))}})))}if(z(Q)&&v(y))j=N;else{E(t,j,N);const e=q();K(Q,((t,[s,n])=>te(V(e,s,ee),[t,n])));const s=ee();K(A,(t=>O(e,t)?0:te(s,t)));const n=q(),o=(s,n,o,r)=>D(s,(([s,a,l,i])=>{K(n,((t,[n])=>{const a=V(s,t,q),l=G(a,o),d=r?void 0:n;if(l!==d){const s=ee([[l,d]]),n=J(a);U(a,o,d),B(G(e,t),(([e,t])=>{const o=Se(i[e],n,a,s,t);i[e]=x(ge(o))?null:o}))}})),(z(a)||!f(y,(e=>e((e=>i[e]))))?N.delRow:N.setRow)(t,l,i)}));C(j,t,j.addRowListener(t,null,((r,a,l,i)=>{const d=[],c=[],u=q(),f=j.hasRow(t,l);let h=!f;B(s,(e=>{const[s,n,o]=i(t,l,e);S(d,n),S(c,o),h||=s})),K(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&U(u,e,[n])})),h&&o($(n,d,void 0,(([,e,s])=>{if(_(e,l),z(e))return N.delRow(t,s),1})),u,l,1),f&&o($(n,c,(()=>{const e={};return B(s,(s=>e[s]=j.getCell(t,l,s))),[q(),ee(),N.addRow(t,e,1),e]}),(([,e])=>{te(e,l)})),u,l)})))}E(t,e,j);const X=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);w(a,(s=>{const[o,,r,a,i]=G(P,s),d=r?.(l,n),[c,f]=G(i,n)??[];d!=c&&(x(f)||R(t,f),U(i,n,x(d)?null:[d,...u(t,1,e.addRowListener(o,d,(()=>X(n,o,d,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...x(o)?[s,n,t]:t===s?[s,n,o]:[G(P,t)?.[0],G(G(P,t)?.[4],n)?.[0],o]);j.transaction((()=>f(d,(e=>e(o)))?K(A,((e,s)=>we(j,t,n,e,s(o,n)))):j.delRow(t,n)))})(n)},{3:Y}=G(P,null);return j.transaction((()=>u(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?X(r,s,r,Y):(j.delRow(t,r),B(P,(({4:e})=>D(G(e,r),(([,s])=>{R(t,s),U(e,r)})))))}))))),k},delQueryDefinition:e=>(K(G(y,e),((e,t)=>B(t,(t=>e.delListener(t))))),m(e),d(e),k),getStore:s,getQueryIds:o,forEachQuery:r,hasQuery:a,getTableId:l,getResultTable:e=>b.getTable(e),getResultRowIds:e=>b.getRowIds(e),getResultSortedRowIds:(e,t,s)=>b.getSortedRowIds(e,t,s),getResultRow:(e,t)=>b.getRow(e,t),getResultCellIds:(e,t)=>b.getCellIds(e,t),getResultCell:(e,t,s)=>b.getCell(e,t,s),hasResultTable:e=>b.hasTable(e),hasResultRow:(e,t)=>b.hasRow(e,t),hasResultCell:(e,t,s)=>b.hasCell(e,t,s),forEachResultTable:e=>b.forEachTable(e),forEachResultRow:(e,t)=>b.forEachRow(e,t),forEachResultCell:(e,t,s)=>b.forEachCell(e,t,s),addResultTableListener:(e,t)=>b.addTableListener(e,((e,...s)=>t(k,...s))),addResultRowIdsListener:(e,t,s)=>b.addRowIdsListener(e,((e,...s)=>t(k,...s)),s),addResultSortedRowIdsListener:(e,t,s,n)=>b.addSortedRowIdsListener(e,t,s,((e,...t)=>n(k,...t))),addResultRowListener:(e,t,s)=>b.addRowListener(e,t,((e,...t)=>s(k,...t))),addResultCellIdsListener:(e,t,s)=>b.addCellIdsListener(e,t,((e,...t)=>s(k,...t))),addResultCellListener:(e,t,s,n)=>b.addCellListener(e,t,s,((e,...t)=>n(k,...t))),delListener:e=>(b.delListener(e),k),destroy:c,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=b.getListenerStats();return n}};return ce(k)})),xe=oe((e=>{const t=q(),s=q(),o=q(),r=q(),[a,l,i,d,c,u,,,f,h,R]=se(e,(()=>[q(),q(),q(),q()]),(e=>x(e)?void 0:e+n)),[g,w,L]=ae((()=>p)),I=(e,t,s)=>D(u(e),(([n,,o])=>{if(!O(o,t)){const r=ee();if(c(e)!=v(e))te(r,t);else{let e=t;for(;!x(e)&&!O(r,e);)te(r,e),e=G(n,e)}if(s)return r;U(o,t,r)}return G(o,t)})),T=(e,t)=>D(u(e),(([,,e])=>U(e,t))),v=e=>G(t,e),p={setRelationshipDefinition:(e,n,a,l)=>(U(t,e,a),f(e,n,((t,n)=>{const a=ee(),l=ee(),i=ee(),[d,c]=u(e);B(n,(([t,s],n)=>{x(t)||(te(l,t),D(G(c,t),(e=>{_(e,n),z(e)&&U(c,t)}))),x(s)||(te(l,s),O(c,s)||U(c,s,ee()),te(G(c,s),n)),te(a,n),U(d,n,s),K(G(r,e),(t=>{O(I(e,t),n)&&te(i,t)}))})),t(),B(a,(t=>w(s,[e,t]))),B(l,(t=>w(o,[e,t]))),B(i,(t=>{T(e,t),w(r,[e,t])}))}),ne(l)),p),delRelationshipDefinition:e=>(U(t,e),h(e),p),getStore:a,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:v,getRemoteRowId:(e,t)=>G(u(e)?.[0],t),getLocalRowIds:(e,t)=>N(G(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(u(e))?[t]:N(I(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>g(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(I(e,t),g(s,r,[e,t])),delListener:e=>(T(...L(e)),p),destroy:R,getListenerStats:()=>({})};return ce(p)})),De=e=>[e,e],Ae=e=>0==((e,t=Q)=>t(e[0])+t(e[1]))(e),Fe=()=>[q(),q()],Pe=()=>[Fe(),Fe()],Je=(e,t,s,n=U)=>{const o=(r=H(e),a=e=>!ue(t,e),r.filter(a));var r,a;return w(ie(t),(n=>s(e,n,t[n]))),w(o,(t=>n(e,t))),e},Qe=(e,t,s)=>x(e)||!(e=>M(e,le)&&e.constructor==le)(e)||Re(e)||de(e)?(s?.(),!1):(he(e,((s,n)=>{t(s,n)||fe(e,n)})),!Re(e)),je=(e,t,s)=>U(e,t,G(e,t)==-s?void 0:s),Oe=()=>{let e,t,s=0,o=0;const r=q(),l=q(),c=q(),f=q(),R=q(),I=q(),T=q(),v=q(),p=Fe(),b=Pe(),m=Fe(),E=Pe(),k=Fe(),M=Fe(),P=Pe(),Q=Fe(),j=Fe(),N=Fe(),[$,se,ne,oe,re]=ae((()=>at)),le=(t,s)=>(!e||O(I,s)||_e(s))&&Qe(t,((e,t)=>ie(s,t,e)),(()=>_e(s))),ie=(e,t,s,n)=>Qe(n?s:Le(s,e,t),((n,o)=>D(de(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>_e(e,t))),de=(t,s,n,o)=>e?D(G(G(I,t),n),(e=>ge(o)!=e.type?_e(t,s,n,o,e.default):o),(()=>_e(t,s,n,o))):x(ge(o))?_e(t,s,n,o):o,Le=(e,t,s)=>(D(G(T,t),(([n,o])=>{B(n,((t,s)=>{ue(e,s)||(e[s]=t)})),B(o,(n=>{ue(e,n)||_e(t,s,n)}))})),e),ve=e=>Je(I,e,((e,t,s)=>{const n=q(),o=ee();Je(V(I,t,q),s,((e,t,s)=>{U(e,t,s),D(s.default,(e=>U(n,t,e)),(()=>te(o,t)))})),U(T,t,[n,o])}),((e,t)=>{U(I,t),U(T,t)})),pe=e=>Je(v,e,((e,t,s)=>Se(t,s)),((e,t)=>ke(t))),Se=(e,t)=>Je(V(v,e,(()=>(ze(e,1),q()))),t,((t,s,n)=>be(e,t,s,n)),((t,s)=>Me(e,t,s))),be=(e,t,s,n,o)=>Je(V(t,s,(()=>(Ne(e,s,1),q()))),n,((t,n,o)=>ye(e,s,t,n,o)),((n,r)=>xe(e,t,s,n,r,o))),ye=(e,t,s,n,o)=>{O(s,n)||We(e,t,n,1);const r=G(s,n);o!==r&&(Be(e,t,n,r,o),U(s,n,o))},Ce=(e,t,s,n,o)=>D(G(t,s),(t=>ye(e,s,t,n,o)),(()=>be(e,t,s,Le({[n]:o},e,s)))),me=e=>{const t=n+s++;return O(e,t)?me(e):t},Ee=e=>G(v,e)??Se(e,{}),ke=e=>Se(e,{}),Me=(e,t,s)=>be(e,t,s,{},!0),xe=(e,t,s,n,o,r)=>{const a=G(G(T,e)?.[0],o);if(!x(a)&&!r)return ye(e,s,n,o,a);const l=t=>{Be(e,s,t,G(n,t)),We(e,s,t,-1),U(n,t)};x(a)?l(o):K(n,l),z(n)&&(Ne(e,s,-1),z(U(t,s))&&(ze(e,-1),U(v,e)))},ze=(e,t)=>je(z(r)?U(r,null,oe(b[0][1])||oe(b[1][1])?Xe():0):r,e,t),Ne=(e,t,s)=>je(V(l,e,(()=>q([[null,oe(E[0][1],[e])||oe(E[1][1],[e])?Ye(e):0]]))),t,s),We=(e,t,s,n)=>je(V(V(c,e,q),t,(()=>q([[null,oe(P[0][1],[e,t])||oe(P[1][1],[e,t])?$e(e,t):0]]))),s,n),Be=(e,t,s,n,o)=>V(V(V(f,e,q),t,q),s,(()=>[n,0]))[1]=o,_e=(e,t,s,n,o)=>(S(V(V(V(R,e,q),t,q),s,(()=>[])),n),o),qe=(e,t,s)=>D(G(G(G(f,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...De(et(e,t,s))])),He=e=>z(R)||z(j[e])?0:B(e?Y(R,Z):R,((t,s)=>B(t,((t,n)=>B(t,((t,o)=>se(j[e],[s,n,o],t))))))),Ge=(e,t,s,n)=>J(t)>1?(se(e[0],n),se(e[1],n),1):z(t)||0==G(t,null)||h(G(t,null),s(...n??[]))?void 0:(se(e[1],n),1),Ke=e=>{const t=z(k[e]),s=Ae(P[e])&&Ae(E[e])&&t&&Ae(b[e]),n=z(Q[e])&&z(M[e])&&z(m[e])&&z(p[e]);if(!s||!n){const o=e?[Y(r),Z(l),Y(c,Z),Y(f,Z)]:[r,l,c,f];if(!s){B(o[2],((t,s)=>B(t,((t,n)=>Ge(P[e],t,$e,[s,n])))));const s=ee();B(o[1],((n,o)=>{Ge(E[e],n,Ye,[o])&&!t&&(se(k[e],[o,null]),te(s,o))})),t||B(o[3],((t,n)=>{if(!O(s,n)){const s=ee();B(t,(e=>B(e,(([t,n],o)=>n!==t?te(s,o):_(e,o))))),B(s,(t=>se(k[e],[n,t])))}})),Ge(b[e],o[0],Xe)}if(!n){let t;B(o[3],((s,n)=>{let o;B(s,((s,r)=>{let a;B(s,(([s,l],i)=>{l!==s&&(se(Q[e],[n,r,i],l,s,qe),t=o=a=1)})),a&&se(M[e],[n,r],qe)})),o&&se(m[e],[n],qe)})),t&&se(p[e],void 0,qe)}}},Ue=(e,...t)=>(nt((()=>e(...L(t,Te)))),at),Ve=()=>X(v,(e=>X(e,X))),Xe=()=>H(v),Ye=e=>H(G(v,Te(e))),Ze=(e,t,s)=>{const n=[];return K(G(v,Te(e)),((e,s)=>S(n,[x(t)?e:G(s,Te(t)),e]))),L(g(n,(([e],[t])=>Ie(e,t)*(s?-1:1))),(([,e])=>e))},$e=(e,t)=>H(G(G(v,Te(e)),Te(t))),et=(e,t,s)=>G(G(G(v,Te(e)),Te(t)),Te(s)),tt=e=>Ue((()=>(e=>Qe(e,le,_e))(e)?pe(e):0)),st=()=>Ue((()=>pe({}))),nt=(e,t)=>{if(-1==o)return;ot();const s=e?.();return rt(t),s},ot=()=>(o++,at),rt=e=>(o>0&&(o--,0==o&&(t=!z(f),o=1,He(1),t&&Ke(1),o=-1,e?.(X(f,(e=>X(e,(e=>X(e,(e=>[...e]),(([e,t])=>e===t))),Re)),Re),X(R,(e=>X(e,X))))&&(o=1,B(f,((e,t)=>B(e,((e,s)=>B(e,(([e],n)=>we(at,t,s,n,e))))))),o=-1,t=!1),se(N[0],void 0,t),He(0),t&&Ke(0),se(N[1],void 0,t),o=0,w([f,R,r,l,c],W))),at),at={getTables:Ve,getTableIds:Xe,getTable:e=>X(G(v,Te(e)),X),getRowIds:Ye,getSortedRowIds:Ze,getRow:(e,t)=>X(G(G(v,Te(e)),Te(t))),getCellIds:$e,getCell:et,hasTables:()=>!z(v),hasTable:e=>O(v,Te(e)),hasRow:(e,t)=>O(G(v,Te(e)),Te(t)),hasCell:(e,t,s)=>O(G(G(v,Te(e)),Te(t)),Te(s)),getJson:()=>y(v),getSchemaJson:()=>y(I),setTables:tt,setTable:(e,t)=>Ue((e=>le(t,e)?Se(e,t):0),e),setRow:(e,t,s)=>Ue(((e,t)=>ie(Te(e),Te(t),s)?be(Te(e),Ee(Te(e)),Te(t),s):0),e,t),addRow:(e,t,s)=>nt((()=>{e=Te(e);const n=ie(e,void 0,t),o=n||s?me(G(v,e)):void 0;return n&&be(e,Ee(e),o,t),o})),setPartialRow:(e,t,s)=>Ue(((e,t)=>{if(ie(e,t,s,1)){const n=Ee(e);he(s,((s,o)=>Ce(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Ue(((e,t,s)=>D(de(e,t,s,F(n)?n(et(e,t,s)):n),(n=>Ce(e,Ee(e),t,s,n)))),e,t,s),setJson:e=>{try{"{}"===e?st():tt(C(e))}catch{}return at},setSchema:t=>Ue((()=>{if((e=(e=>Qe(e,(e=>Qe(e,(e=>{if(!Qe(e,((e,t)=>u([i,d],t))))return!1;const t=e.type;return!(!A(t)&&t!=a||(ge(e.default)!=t&&fe(e,d),0))})))))(t))&&(ve(t),!z(v))){const e=Ve();st(),tt(e)}})),delTables:st,delTable:e=>Ue((e=>O(v,e)?ke(e):0),e),delRow:(e,t)=>Ue(((e,t)=>D(G(v,e),(s=>O(s,t)?Me(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ue(((e,t,s)=>D(G(v,e),(o=>D(G(o,t),(r=>O(r,s)?xe(e,o,t,r,s,n):0))))),e,t,s),delSchema:()=>Ue((()=>{ve({}),e=!1})),transaction:nt,startTransaction:ot,finishTransaction:rt,forEachTable:e=>B(v,((t,s)=>e(s,(e=>B(t,((t,s)=>e(s,(e=>K(t,e))))))))),forEachRow:(e,t)=>B(G(v,Te(e)),((e,s)=>t(s,(t=>K(e,t))))),forEachCell:(e,t,s)=>K(G(G(v,Te(e)),Te(t)),s),addTablesListener:(e,t)=>$(e,p[t?1:0]),addTableIdsListener:(e,t,s)=>$(e,b[s?1:0][t?1:0]),addTableListener:(e,t,s)=>$(t,m[s?1:0],[e]),addRowIdsListener:(e,t,s,n)=>$(t,E[n?1:0][s?1:0],[e]),addSortedRowIdsListener:(e,t,s,n,o)=>{let r=Ze(e,t,s);return $((()=>{const o=Ze(e,t,s);h(o,r)||(r=o,n(at,e,t,s,r))}),k[o?1:0],[e,t])},addRowListener:(e,t,s,n)=>$(s,M[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n,o)=>$(s,P[o?1:0][n?1:0],[e,t]),addCellListener:(e,t,s,n,o)=>$(n,Q[o?1:0],[e,t,s]),addInvalidCellListener:(e,t,s,n,o)=>$(n,j[o?1:0],[e,t,s]),addWillFinishTransactionListener:e=>$(e,N[0]),addDidFinishTransactionListener:e=>$(e,N[1]),callListener:e=>(re(e,[Xe,Ye,$e],(e=>x(e[2])?[]:De(et(...e)))),at),delListener:e=>(ne(e),at),getListenerStats:()=>({}),createStore:Oe};return ce(at)};e.createCheckpoints=Le,e.createCustomPersister=ye,e.createFilePersister=(e,s)=>{let n;return ye(e,(async()=>{try{return await t.promises.readFile(s,c)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,c)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=ve,e.createLocalPersister=(e,t)=>Ee(e,t,localStorage),e.createMetrics=be,e.createQueries=Me,e.createRelationships=xe,e.createRemotePersister=(e,t,s,n)=>{let o,r;return ye(e,(async()=>{const e=await fetch(t);return r=ke(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=ke(s);x(r)||x(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{D(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Ee(e,t,sessionStorage),e.createStore=Oe,e.defaultSorter=Ie,e.id=Te,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const o=e=>typeof e,t=o(""),d=(e,s)=>e.map(s),r=e=>null==e,n=(e,s,o)=>r(e)?o?.():s(e),i=()=>{},{createContext:l,useContext:a}=s,c=l([]),u=(e,s)=>{const o=a(c);return r(e)?o[s]:((e,s)=>n(e,(e=>e[s])))(o[s+1],e)},I=(e,s)=>{const d=u(e,s);return r(e)||(e=>o(e)==t)(e)?d:e},p=e=>I(e,0),w=e=>I(e,2),b=e=>I(e,4),C=e=>I(e,6),k=e=>I(e,8),{useCallback:R,useEffect:g,useMemo:h,useState:m}=s,T=(e,s,o=[])=>{const t=h((()=>s(e)),[e,...o]);return g((()=>()=>t.destroy()),[t]),t},L=(e,s,o,...t)=>{const d=s?.["get"+e]??(()=>o),r=d(...t),[,n]=m(r);return g((()=>{const o=s?.[`add${e}Listener`]?.(...t,(()=>n(d(...t))),!1);return()=>s?.delListener(o)}),[s,e,n,d,...t]),r},y=(e,s,o,t=[],d,...r)=>{g((()=>{const t=s?.[`add${e}Listener`]?.(...r,o,d);return()=>s?.delListener(t)}),[s,e,...t,d,...r])},v=(e,s,o,t=[],d=i,r=[],...l)=>{const a=p(e);return R((e=>n(a,(t=>n(o(e,t),(e=>d(t["set"+s](...l,e),e)))))),[a,s,...t,...r,...l])},S=(e,s,o=i,t=[],...d)=>{const r=p(e);return R((()=>o(r?.["del"+s](...d))),[r,s,...t,...d])},f=(e,s,o)=>{const t=k(e);return R((()=>t?.[s](o)),[t,s,o])},x=e=>L("TableIds",p(e),[]),P=(e,s)=>L("RowIds",p(s),[],e),V=(e,s,o)=>L("CellIds",p(o),[],e,s),M=(e,s,o,t)=>L("Cell",p(t),void 0,e,s,o),B=(e,s)=>L("Metric",w(s),void 0,e),D=(e,s)=>L("SliceIds",b(s),[],e),A=(e,s,o)=>L("SliceRowIds",b(o),[],e,s),F=(e,s,o)=>L("RemoteRowId",C(o),void 0,e,s),G=(e,s,o)=>L("LocalRowIds",C(o),[],e,s),j=(e,s,o)=>L("LinkedRowIds",C(o),[],e,s),E=e=>L("CheckpointIds",k(e),[[],void 0,[]]),U=(e,s)=>L("Checkpoint",k(s),void 0,e),$=e=>f(e,"goBackward"),_=e=>f(e,"goForward"),{createElement:q,useMemo:O}=s,z=e=>{const s=C(e);return[s,s?.getStore()]},H=({relationshipId:e,relationships:s,rowComponent:o=W,getRowComponentProps:t,separator:r,debugIds:n},i,l)=>{const[a,c]=z(s),u=a?.getLocalTableId(e),I=i(e,l,a);return N(d(I,(e=>q(o,{...K(t,e),key:e,tableId:u,rowId:e,store:c,debugIds:n}))),r,n,l)},J=e=>({checkpoints:s,checkpointComponent:o=Z,getCheckpointComponentProps:t,separator:r,debugIds:n})=>{const i=k(s);return N(d(e(E(i)),(e=>q(o,{...K(t,e),key:e,checkpoints:i,checkpointId:e,debugIds:n}))),r)},K=(e,s)=>r(e)?{}:e(s),N=(e,s,o,t)=>{const n=r(s)||!Array.isArray(e)?e:d(e,((e,o)=>o>0?[s,e]:e));return o?[t,":{",n,"}"]:n},Q=({tableId:e,rowId:s,cellId:o,store:t,debugIds:d})=>N(""+(M(e,s,o,t)??""),void 0,d,o),W=({tableId:e,rowId:s,store:o,cellComponent:t=Q,getCellComponentProps:r,separator:n,debugIds:i})=>N(d(V(e,s,o),(d=>q(t,{...K(r,d),key:d,tableId:e,rowId:s,cellId:d,store:o,debugIds:i}))),n,i,s),X=({tableId:e,store:s,rowComponent:o=W,getRowComponentProps:t,separator:r,debugIds:n})=>N(d(P(e,s),(d=>q(o,{...K(t,d),key:d,tableId:e,rowId:d,store:s,debugIds:n}))),r,n,e),Y=({indexId:e,sliceId:s,indexes:o,rowComponent:t=W,getRowComponentProps:r,separator:n,debugIds:i})=>{const l=b(o),a=l?.getStore(),c=l?.getTableId(e),u=A(e,s,l);return N(d(u,(e=>q(t,{...K(r,e),key:e,tableId:c,rowId:e,store:a,debugIds:i}))),n,i,s)},Z=({checkpoints:e,checkpointId:s,debugIds:o})=>N(U(s,e)??"",void 0,o,s),ee=J((e=>e[0])),se=J((e=>r(e[1])?[]:[e[1]])),oe=J((e=>e[2]));e.BackwardCheckpointsView=ee,e.CellView=Q,e.CheckpointView=Z,e.CurrentCheckpointView=se,e.ForwardCheckpointsView=oe,e.IndexView=({indexId:e,indexes:s,sliceComponent:o=Y,getSliceComponentProps:t,separator:r,debugIds:n})=>N(d(D(e,s),(d=>q(o,{...K(t,d),key:d,indexId:e,sliceId:d,indexes:s,debugIds:n}))),r,n,e),e.LinkedRowsView=e=>H(e,j,e.firstRowId),e.LocalRowsView=e=>H(e,G,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:o})=>N(B(e,s)??"",void 0,o,e),e.Provider=({store:e,storesById:o,metrics:t,metricsById:d,indexes:r,indexesById:n,relationships:i,relationshipsById:l,checkpoints:a,checkpointsById:u,children:I})=>{const p=s.useContext(c);return q(c.Provider,{value:O((()=>[e??p[0],{...p[1],...o},t??p[2],{...p[3],...d},r??p[4],{...p[5],...n},i??p[6],{...p[7],...l},a??p[8],{...p[9],...u}]),[e,o,t,d,r,n,i,l,a,u,p])},I)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:o,rowComponent:t=W,getRowComponentProps:d,debugIds:n})=>{const[i,l]=z(o),a=i?.getRemoteTableId(e),c=F(e,s,i);return N(r(a)||r(c)?null:q(t,{...K(d,c),key:c,tableId:a,rowId:c,store:l,debugIds:n}),void 0,n,s)},e.RowView=W,e.SliceView=Y,e.TableView=X,e.TablesView=({store:e,tableComponent:s=X,getTableComponentProps:o,separator:t,debugIds:r})=>N(d(x(e),(t=>q(s,{...K(o,t),key:t,tableId:t,store:e,debugIds:r}))),t),e.useAddRowCallback=(e,s,o=[],t,d=i,r=[])=>{const l=p(t);return R((o=>n(l,(t=>n(s(o,t),(s=>d(t.addRow(e,s),t,s)))))),[l,e,...o,...r])},e.useCell=M,e.useCellIds=V,e.useCellIdsListener=(e,s,o,t,d,r)=>y("CellIds",p(r),o,t,d,e,s),e.useCellListener=(e,s,o,t,d,r,n)=>y("Cell",p(n),t,d,r,e,s,o),e.useCheckpoint=U,e.useCheckpointIds=E,e.useCheckpointIdsListener=(e,s,o)=>y("CheckpointIds",k(o),e,s),e.useCheckpointListener=(e,s,o,t)=>y("Checkpoint",k(t),s,o,void 0,e),e.useCheckpoints=e=>u(e,8),e.useCreateCheckpoints=(e,s,o)=>T(e,s,o),e.useCreateIndexes=(e,s,o)=>T(e,s,o),e.useCreateMetrics=(e,s,o)=>T(e,s,o),e.useCreatePersister=(e,s,o=[],t,d=[])=>{const[,r]=m(),n=h((()=>s(e)),[e,...o]);return g((()=>((async()=>{await(t?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},e.useCreateRelationships=(e,s,o)=>T(e,s,o),e.useCreateStore=(e,s=[])=>h(e,s),e.useDelCellCallback=(e,s,o,t,d,r,n)=>S(d,"Cell",r,n,e,s,o,t),e.useDelRowCallback=(e,s,o,t,d)=>S(o,"Row",t,d,e,s),e.useDelTableCallback=(e,s,o,t)=>S(s,"Table",o,t,e),e.useDelTablesCallback=(e,s,o)=>S(e,"Tables",s,o),e.useGoBackwardCallback=$,e.useGoForwardCallback=_,e.useGoToCallback=(e,s=[],o,t=i,d=[])=>{const r=k(o);return R((s=>n(r,(o=>n(e(s),(e=>t(o.goTo(e),e)))))),[r,...s,...d])},e.useIndexes=e=>u(e,4),e.useLinkedRowIds=j,e.useLinkedRowIdsListener=(e,s,o,t,d)=>y("LinkedRowIds",C(d),o,t,void 0,e,s),e.useLocalRowIds=G,e.useLocalRowIdsListener=(e,s,o,t,d)=>y("LocalRowIds",C(d),o,t,void 0,e,s),e.useMetric=B,e.useMetricListener=(e,s,o,t)=>y("Metric",w(t),s,o,void 0,e),e.useMetrics=e=>u(e,2),e.useRedoInformation=e=>{const s=k(e),[,,[o]]=E(s);return[!r(o),_(s),o,n(o,(e=>s?.getCheckpoint(e)))??""]},e.useRelationships=e=>u(e,6),e.useRemoteRowId=F,e.useRemoteRowIdListener=(e,s,o,t,d)=>y("RemoteRowId",C(d),o,t,void 0,e,s),e.useRow=(e,s,o)=>L("Row",p(o),{},e,s),e.useRowIds=P,e.useRowIdsListener=(e,s,o,t,d)=>y("RowIds",p(d),s,o,t,e),e.useRowListener=(e,s,o,t,d,r)=>y("Row",p(r),o,t,d,e,s),e.useSetCellCallback=(e,s,o,t,d,r,n,i)=>v(r,"Cell",t,d,n,i,e,s,o),e.useSetCheckpointCallback=(e=i,s=[],o,t=i,d=[])=>{const r=k(o);return R((s=>n(r,(o=>{const d=e(s);t(o.addCheckpoint(d),o,d)}))),[r,...s,...d])},e.useSetPartialRowCallback=(e,s,o,t,d,r,n)=>v(d,"PartialRow",o,t,r,n,e,s),e.useSetRowCallback=(e,s,o,t,d,r,n)=>v(d,"Row",o,t,r,n,e,s),e.useSetTableCallback=(e,s,o,t,d,r)=>v(t,"Table",s,o,d,r,e),e.useSetTablesCallback=(e,s,o,t,d)=>v(o,"Tables",e,s,t,d),e.useSliceIds=D,e.useSliceIdsListener=(e,s,o,t)=>y("SliceIds",b(t),s,o,void 0,e),e.useSliceRowIds=A,e.useSliceRowIdsListener=(e,s,o,t,d)=>y("SliceRowIds",b(d),o,t,void 0,e,s),e.useStore=e=>u(e,0),e.useTable=(e,s)=>L("Table",p(s),{},e),e.useTableIds=x,e.useTableIdsListener=(e,s,o,t)=>y("TableIds",p(t),e,s,o),e.useTableListener=(e,s,o,t,d)=>y("Table",p(d),s,o,t,e),e.useTables=e=>L("Tables",p(e),{}),e.useTablesListener=(e,s,o,t)=>y("Tables",p(t),e,s,o),e.useUndoInformation=e=>{const s=k(e),[o,t]=E(s);return[(d=o,!(0==(e=>e.length)(d))),$(s),t,n(t,(e=>s?.getCheckpoint(e)))??""];var d},Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),d=(e,s)=>e.map(s),l=e=>null==e,n=(e,s,t)=>l(e)?t?.():s(e),u=()=>{},{createContext:i,useContext:a}=s,I=i([]),c=(e,s)=>{const t=a(I);return l(e)?t[s]:((e,s)=>n(e,(e=>e[s])))(t[s+1],e)},R=(e,s)=>{const o=c(e,s);return l(e)||(e=>t(e)==r)(e)?o:e},w=e=>R(e,0),C=e=>R(e,2),b=e=>R(e,4),p=e=>R(e,6),k=e=>R(e,8),g=e=>R(e,10),{useCallback:m,useEffect:h,useMemo:T,useRef:y,useState:L}=s,S=(e,s,t=[])=>{const o=T((()=>s(e)),[e,...t]);return h((()=>()=>o.destroy()),[o]),o},f=(e,s,t,o=[],r=[],d)=>{const[,n]=L(),u=m((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[i]=L(u),a=y(i);return T((()=>a.current=u()),[u]),V(e,s,((...e)=>{a.current=l(d)?u():e[d],n([])}),[],o,...r),a.current},V=(e,s,t,o=[],r=[],...d)=>h((()=>{const o=s?.[`add${e}Listener`]?.(...r,t,...d);return()=>s?.delListener(o)}),[s,...r,...o,...d]),P=(e,s,t,o=[],r=u,d=[],...l)=>{const i=w(e);return m((e=>n(i,(o=>n(t(e,o),(e=>r(o["set"+s](...l,e),e)))))),[i,s,...o,...d,...l])},q=(e,s,t=u,o=[],...r)=>{const d=w(e);return m((()=>t(d?.["del"+s](...r))),[d,s,...o,...r])},v=(e,s,t)=>{const o=g(e);return m((()=>o?.[s](t)),[o,s,t])},x=(e,s)=>f("TableIds",w(e),[],[],[s]),B=(e,s,t)=>f("RowIds",w(s),[],[e],[t]),M=(e,s,t,o,r)=>f("SortedRowIds",w(o),[],[e,s,t],[r],4),D=(e,s,t,o)=>f("CellIds",w(t),[],[e,s],[o]),A=(e,s,t,o)=>f("Cell",w(o),void 0,[e,s,t],[],4),F=(e,s)=>f("Metric",C(s),void 0,[e]),G=(e,s)=>f("SliceIds",b(s),[],[e]),j=(e,s,t)=>f("SliceRowIds",b(t),[],[e,s]),E=(e,s,t)=>f("RemoteRowId",p(t),void 0,[e,s]),Q=(e,s,t)=>f("LocalRowIds",p(t),[],[e,s]),U=(e,s,t)=>f("LinkedRowIds",p(t),[],[e,s]),_=(e,s,t)=>f("ResultRowIds",k(s),[],[e],[t]),O=(e,s,t,o)=>f("ResultSortedRowIds",k(o),[],[e,s,t],[],4),$=(e,s,t)=>f("ResultCellIds",k(t),[],[e,s]),z=(e,s,t,o)=>f("ResultCell",k(o),void 0,[e,s,t]),H=e=>f("CheckpointIds",g(e),[[],void 0,[]]),J=(e,s)=>f("Checkpoint",g(s),void 0,[e]),K=e=>v(e,"goBackward"),N=e=>v(e,"goForward"),{createElement:W,useMemo:X}=s,Y=e=>{const s=p(e);return[s,s?.getStore()]},Z=({relationshipId:e,relationships:s,rowComponent:t=re,getRowComponentProps:o,separator:r,debugIds:l},n,u)=>{const[i,a]=Y(s),I=i?.getLocalTableId(e),c=n(e,u,i);return te(d(c,(e=>W(t,{...se(o,e),key:e,tableId:I,rowId:e,store:a,debugIds:l}))),r,l,u)},ee=e=>({checkpoints:s,checkpointComponent:t=ie,getCheckpointComponentProps:o,separator:r,debugIds:l})=>{const n=g(s);return te(d(e(H(n)),(e=>W(t,{...se(o,e),key:e,checkpoints:n,checkpointId:e,debugIds:l}))),r)},se=(e,s)=>l(e)?{}:e(s),te=(e,s,t,o)=>{const r=l(s)||!Array.isArray(e)?e:d(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},oe=({tableId:e,rowId:s,cellId:t,store:r,debugIds:d})=>te(o+(A(e,s,t,r)??o),void 0,d,t),re=({tableId:e,rowId:s,store:t,trackReorder:o,cellComponent:r=oe,getCellComponentProps:l,separator:n,debugIds:u})=>te(d(D(e,s,t,o),(o=>W(r,{...se(l,o),key:o,tableId:e,rowId:s,cellId:o,store:t,debugIds:u}))),n,u,s),de=({tableId:e,store:s,trackReorder:t,rowComponent:o=re,getRowComponentProps:r,separator:l,debugIds:n})=>te(d(B(e,s,t),(t=>W(o,{...se(r,t),key:t,tableId:e,rowId:t,store:s,debugIds:n}))),l,n,e),le=({indexId:e,sliceId:s,indexes:t,rowComponent:o=re,getRowComponentProps:r,separator:l,debugIds:n})=>{const u=b(t),i=u?.getStore(),a=u?.getTableId(e),I=j(e,s,u);return te(d(I,(e=>W(o,{...se(r,e),key:e,tableId:a,rowId:e,store:i,debugIds:n}))),l,n,s)},ne=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:d})=>te(o+(z(e,s,t,r)??o),void 0,d,t),ue=({queryId:e,rowId:s,queries:t,resultCellComponent:o=ne,getResultCellComponentProps:r,separator:l,debugIds:n})=>te(d($(e,s,t),(d=>W(o,{...se(r,d),key:d,queryId:e,rowId:s,cellId:d,queries:t,debugIds:n}))),l,n,s),ie=({checkpoints:e,checkpointId:s,debugIds:t})=>te(J(s,e)??o,void 0,t,s),ae=ee((e=>e[0])),Ie=ee((e=>l(e[1])?[]:[e[1]])),ce=ee((e=>e[2]));e.BackwardCheckpointsView=ae,e.CellView=oe,e.CheckpointView=ie,e.CurrentCheckpointView=Ie,e.ForwardCheckpointsView=ce,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=le,getSliceComponentProps:o,separator:r,debugIds:l})=>te(d(G(e,s),(r=>W(t,{...se(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:l}))),r,l,e),e.LinkedRowsView=e=>Z(e,U,e.firstRowId),e.LocalRowsView=e=>Z(e,Q,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>te(F(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:r,indexes:d,indexesById:l,relationships:n,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:R,children:w})=>{const C=s.useContext(I);return W(I.Provider,{value:X((()=>[e??C[0],{...C[1],...t},o??C[2],{...C[3],...r},d??C[4],{...C[5],...l},n??C[6],{...C[7],...u},i??C[8],{...C[9],...a},c??C[10],{...C[11],...R}]),[e,t,o,r,d,l,n,u,i,a,c,R,C])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=re,getRowComponentProps:r,debugIds:d})=>{const[n,u]=Y(t),i=n?.getRemoteTableId(e),a=E(e,s,n);return te(l(i)||l(a)?null:W(o,{...se(r,a),key:a,tableId:i,rowId:a,store:u,debugIds:d}),void 0,d,s)},e.ResultCellView=ne,e.ResultRowView=ue,e.ResultSortedTableView=({queryId:e,cellId:s,descending:t,queries:o,resultRowComponent:r=ue,getResultRowComponentProps:l,separator:n,debugIds:u})=>te(d(O(e,s,t,o),(s=>W(r,{...se(l,s),key:s,queryId:e,rowId:s,queries:o,debugIds:u}))),n,u,e),e.ResultTableView=({queryId:e,queries:s,trackReorder:t,resultRowComponent:o=ue,getResultRowComponentProps:r,separator:l,debugIds:n})=>te(d(_(e,s,t),(t=>W(o,{...se(r,t),key:t,queryId:e,rowId:t,queries:s,debugIds:n}))),l,n,e),e.RowView=re,e.SliceView=le,e.SortedTableView=({tableId:e,cellId:s,descending:t,store:o,rowComponent:r=re,getRowComponentProps:l,separator:n,debugIds:u})=>te(d(M(e,s,t,o),(s=>W(r,{...se(l,s),key:s,tableId:e,rowId:s,store:o,debugIds:u}))),n,u,e),e.TableView=de,e.TablesView=({store:e,trackReorder:s,tableComponent:t=de,getTableComponentProps:o,separator:r,debugIds:l})=>te(d(x(e,s),(s=>W(t,{...se(o,s),key:s,tableId:s,store:e,debugIds:l}))),r),e.useAddRowCallback=(e,s,t=[],o,r=u,d=[])=>{const l=w(o);return m((t=>n(l,(o=>n(s(t,o),(s=>r(o.addRow(e,s),o,s)))))),[l,e,...t,...d])},e.useCell=A,e.useCellIds=D,e.useCellIdsListener=(e,s,t,o,r,d,l)=>V("CellIds",w(l),t,o,[e,s],r,d),e.useCellListener=(e,s,t,o,r,d,l)=>V("Cell",w(l),o,r,[e,s,t],d),e.useCheckpoint=J,e.useCheckpointIds=H,e.useCheckpointIdsListener=(e,s,t)=>V("CheckpointIds",g(t),e,s),e.useCheckpointListener=(e,s,t,o)=>V("Checkpoint",g(o),s,t,[e]),e.useCheckpoints=e=>c(e,10),e.useCreateCheckpoints=(e,s,t)=>S(e,s,t),e.useCreateIndexes=(e,s,t)=>S(e,s,t),e.useCreateMetrics=(e,s,t)=>S(e,s,t),e.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,d]=L(),l=T((()=>s(e)),[e,...t]);return h((()=>((async()=>{await(o?.(l)),d(1)})(),()=>{l.destroy()})),[l,...r]),l},e.useCreateQueries=(e,s,t)=>S(e,s,t),e.useCreateRelationships=(e,s,t)=>S(e,s,t),e.useCreateStore=(e,s=[])=>T(e,s),e.useDelCellCallback=(e,s,t,o,r,d,l)=>q(r,"Cell",d,l,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>q(t,"Row",o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>q(s,"Table",t,o,e),e.useDelTablesCallback=(e,s,t)=>q(e,"Tables",s,t),e.useGoBackwardCallback=K,e.useGoForwardCallback=N,e.useGoToCallback=(e,s=[],t,o=u,r=[])=>{const d=g(t);return m((s=>n(d,(t=>n(e(s),(e=>o(t.goTo(e),e)))))),[d,...s,...r])},e.useIndexes=e=>c(e,4),e.useLinkedRowIds=U,e.useLinkedRowIdsListener=(e,s,t,o,r)=>V("LinkedRowIds",p(r),t,o,[e,s]),e.useLocalRowIds=Q,e.useLocalRowIdsListener=(e,s,t,o,r)=>V("LocalRowIds",p(r),t,o,[e,s]),e.useMetric=F,e.useMetricListener=(e,s,t,o)=>V("Metric",C(o),s,t,[e]),e.useMetrics=e=>c(e,2),e.useQueries=e=>c(e,8),e.useRedoInformation=e=>{const s=g(e),[,,[t]]=H(s);return[!l(t),N(s),t,n(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>c(e,6),e.useRemoteRowId=E,e.useRemoteRowIdListener=(e,s,t,o,r)=>V("RemoteRowId",p(r),t,o,[e,s]),e.useResultCell=z,e.useResultCellIds=$,e.useResultCellIdsListener=(e,s,t,o,r)=>V("ResultCellIds",k(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,d)=>V("ResultCell",k(d),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>f("ResultRow",k(t),{},[e,s]),e.useResultRowIds=_,e.useResultRowIdsListener=(e,s,t,o,r)=>V("ResultRowIds",k(r),s,t,[e],o),e.useResultRowListener=(e,s,t,o,r)=>V("ResultRow",k(r),t,o,[e,s]),e.useResultSortedRowIds=O,e.useResultSortedRowIdsListener=(e,s,t,o,r,d)=>V("ResultSortedRowIds",k(d),o,r,[e,s,t]),e.useResultTable=(e,s)=>f("ResultTable",k(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>V("ResultTable",k(o),s,t,[e]),e.useRow=(e,s,t)=>f("Row",w(t),{},[e,s]),e.useRowIds=B,e.useRowIdsListener=(e,s,t,o,r,d)=>V("RowIds",w(d),s,t,[e],o,r),e.useRowListener=(e,s,t,o,r,d)=>V("Row",w(d),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,d,l,n)=>P(d,"Cell",o,r,l,n,e,s,t),e.useSetCheckpointCallback=(e=u,s=[],t,o=u,r=[])=>{const d=g(t);return m((s=>n(d,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[d,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,d,l)=>P(r,"PartialRow",t,o,d,l,e,s),e.useSetRowCallback=(e,s,t,o,r,d,l)=>P(r,"Row",t,o,d,l,e,s),e.useSetTableCallback=(e,s,t,o,r,d)=>P(o,"Table",s,t,r,d,e),e.useSetTablesCallback=(e,s,t,o,r)=>P(t,"Tables",e,s,o,r),e.useSliceIds=G,e.useSliceIdsListener=(e,s,t,o)=>V("SliceIds",b(o),s,t,[e]),e.useSliceRowIds=j,e.useSliceRowIdsListener=(e,s,t,o,r)=>V("SliceRowIds",b(r),t,o,[e,s]),e.useSortedRowIds=M,e.useSortedRowIdsListener=(e,s,t,o,r,d,l)=>V("SortedRowIds",w(l),o,r,[e,s,t],d),e.useStore=e=>c(e,0),e.useTable=(e,s)=>f("Table",w(s),{},[e]),e.useTableIds=x,e.useTableIdsListener=(e,s,t,o,r)=>V("TableIds",w(r),e,s,[],t,o),e.useTableListener=(e,s,t,o,r)=>V("Table",w(r),s,t,[e],o),e.useTables=e=>f("Tables",w(e),{}),e.useTablesListener=(e,s,t,o)=>V("Tables",w(o),e,s,[],t),e.useUndoInformation=e=>{const s=g(e),[t,r]=H(s);return[(d=t,!(0==(e=>e.length)(d))),K(s),r,n(r,(e=>s?.getCheckpoint(e)))??o];var d},Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tinybase",
3
- "version": "1.3.6",
3
+ "version": "2.0.0-beta.2",
4
4
  "author": "jamesgpearce",
5
5
  "repository": "github:tinyplex/tinybase",
6
6
  "license": "MIT",
@@ -82,8 +82,8 @@
82
82
  "babel-jest": "^28.1.3",
83
83
  "babel-preset-minify": "^0.5.2",
84
84
  "country-flag-emoji-json": "^2.0.0",
85
- "cspell": "^6.6.0",
86
- "esbuild": "^0.14.54",
85
+ "cspell": "^6.6.1",
86
+ "esbuild": "^0.15.1",
87
87
  "eslint": "^8.21.0",
88
88
  "eslint-config-prettier": "^8.5.0",
89
89
  "eslint-plugin-jest": "^26.8.2",
@@ -103,7 +103,7 @@
103
103
  "react": "^17.0.2",
104
104
  "react-dom": "^17.0.2",
105
105
  "react-test-renderer": "^17.0.2",
106
- "rollup": "^2.77.2",
106
+ "rollup": "^2.77.3",
107
107
  "rollup-plugin-esbuild": "^4.9.1",
108
108
  "rollup-plugin-gzip": "^3.0.1",
109
109
  "rollup-plugin-prettier": "^2.2.2",