tinybase 2.0.0-beta.0 → 2.0.0-beta.3

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 (63) 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/common.js +1 -1
  5. package/lib/common.js.gz +0 -0
  6. package/lib/debug/checkpoints.d.ts +4 -3
  7. package/lib/debug/checkpoints.js +13 -16
  8. package/lib/debug/common.js +4 -1
  9. package/lib/debug/indexes.d.ts +4 -2
  10. package/lib/debug/indexes.js +13 -15
  11. package/lib/debug/metrics.d.ts +1 -1
  12. package/lib/debug/metrics.js +13 -16
  13. package/lib/debug/persisters.d.ts +6 -0
  14. package/lib/debug/queries.d.ts +249 -299
  15. package/lib/debug/queries.js +67 -192
  16. package/lib/debug/relationships.d.ts +6 -5
  17. package/lib/debug/relationships.js +13 -16
  18. package/lib/debug/store.d.ts +386 -86
  19. package/lib/debug/store.js +278 -216
  20. package/lib/debug/tinybase.js +318 -390
  21. package/lib/debug/ui-react.d.ts +4320 -1796
  22. package/lib/debug/ui-react.js +380 -98
  23. package/lib/indexes.d.ts +4 -2
  24. package/lib/indexes.js +1 -1
  25. package/lib/indexes.js.gz +0 -0
  26. package/lib/metrics.d.ts +1 -1
  27. package/lib/metrics.js +1 -1
  28. package/lib/metrics.js.gz +0 -0
  29. package/lib/persisters.d.ts +6 -0
  30. package/lib/queries.d.ts +249 -299
  31. package/lib/queries.js +1 -1
  32. package/lib/queries.js.gz +0 -0
  33. package/lib/relationships.d.ts +6 -5
  34. package/lib/relationships.js +1 -1
  35. package/lib/relationships.js.gz +0 -0
  36. package/lib/store.d.ts +386 -86
  37. package/lib/store.js +1 -1
  38. package/lib/store.js.gz +0 -0
  39. package/lib/tinybase.js +1 -1
  40. package/lib/tinybase.js.gz +0 -0
  41. package/lib/ui-react.d.ts +4320 -1796
  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/common.js +1 -1
  47. package/lib/umd/common.js.gz +0 -0
  48. package/lib/umd/indexes.js +1 -1
  49. package/lib/umd/indexes.js.gz +0 -0
  50. package/lib/umd/metrics.js +1 -1
  51. package/lib/umd/metrics.js.gz +0 -0
  52. package/lib/umd/queries.js +1 -1
  53. package/lib/umd/queries.js.gz +0 -0
  54. package/lib/umd/relationships.js +1 -1
  55. package/lib/umd/relationships.js.gz +0 -0
  56. package/lib/umd/store.js +1 -1
  57. package/lib/umd/store.js.gz +0 -0
  58. package/lib/umd/tinybase.js +1 -1
  59. package/lib/umd/tinybase.js.gz +0 -0
  60. package/lib/umd/ui-react.js +1 -1
  61. package/lib/umd/ui-react.js.gz +0 -0
  62. package/package.json +26 -26
  63. 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,r=t(""),s=(e,o)=>e.map(o),d=e=>null==e,n=(e,o,t)=>d(e)?t?.():o(e),c=()=>{},{createContext:l,useContext:I}=e,a=l([]),i=(e,o)=>{const t=I(a);return d(e)?t[o]:((e,o)=>n(e,(e=>e[o])))(t[o+1],e)},p=(e,o)=>{const s=i(e,o);return d(e)||(e=>t(e)==r)(e)?s:e},u=e=>i(e,0),b=e=>i(e,2),g=e=>i(e,4),w=e=>i(e,6),C=e=>i(e,8),k=e=>p(e,0),m=e=>p(e,2),R=e=>p(e,4),h=e=>p(e,6),y=e=>p(e,8),{useCallback:T,useEffect:v,useMemo:x,useState:P}=e,L=(e,o,t=[])=>{const r=x((()=>o(e)),[e,...t]);return v((()=>()=>r.destroy()),[r]),r},S=(e,o,t,r=[],...s)=>{const d=o?.["get"+e]??(()=>t),n=d(...r),[,c]=P(n);return v((()=>{const t=o?.[`add${e}Listener`]?.(...r,(()=>c(d(...r))),...s);return()=>o?.delListener(t)}),[o,e,c,d,...r]),n},B=(e,o,t,r=[],s=[],...d)=>{v((()=>{const r=o?.[`add${e}Listener`]?.(...s,t,...d);return()=>o?.delListener(r)}),[o,e,...r,...s,...d])},f=(e,o,t,r=[],s=c,d=[],...l)=>{const I=k(e);return T((e=>n(I,(r=>n(t(e,r),(e=>s(r["set"+o](...l,e),e)))))),[I,o,...r,...d,...l])},M=(e,o,t=c,r=[],...s)=>{const d=k(e);return T((()=>t(d?.["del"+o](...s))),[d,o,...r,...s])},A=(e,o,t)=>{const r=y(e);return T((()=>r?.[o](t)),[r,o,t])},E=(e,o=[])=>x(e,o),$=e=>S("Tables",k(e),{}),F=(e,o)=>S("TableIds",k(e),[],[],o),j=(e,o)=>S("Table",k(o),{},[e]),q=(e,o,t)=>S("RowIds",k(o),[],[e],t),z=(e,o,t)=>S("Row",k(t),{},[e,o]),D=(e,o,t,r)=>S("CellIds",k(t),[],[e,o],r),G=(e,o,t,r)=>S("Cell",k(r),void 0,[e,o,t]),H=(e,o,t,r,s)=>f(t,"Tables",e,o,r,s),J=(e,o,t,r,s,d)=>f(r,"Table",o,t,s,d,e),K=(e,o,t,r,s,d,n)=>f(s,"Row",t,r,d,n,e,o),N=(e,o,t=[],r,s=c,d=[])=>{const l=k(r);return T((t=>n(l,(r=>n(o(t,r),(o=>s(r.addRow(e,o),r,o)))))),[l,e,...t,...d])},O=(e,o,t,r,s,d,n)=>f(s,"PartialRow",t,r,d,n,e,o),Q=(e,o,t,r,s,d,n,c)=>f(d,"Cell",r,s,n,c,e,o,t),U=(e,o,t)=>M(e,"Tables",o,t),V=(e,o,t,r)=>M(o,"Table",t,r,e),W=(e,o,t,r,s)=>M(t,"Row",r,s,e,o),X=(e,o,t,r,s,d,n)=>M(s,"Cell",d,n,e,o,t,r),Y=(e,o,t,r)=>B("Tables",k(r),e,o,[],t),Z=(e,o,t,r,s)=>B("TableIds",k(s),e,o,[],t,r),_=(e,o,t,r,s)=>B("Table",k(s),o,t,[e],r),ee=(e,o,t,r,s,d)=>B("RowIds",k(d),o,t,[e],r,s),oe=(e,o,t,r,s,d)=>B("Row",k(d),t,r,[e,o],s),te=(e,o,t,r,s,d,n)=>B("CellIds",k(n),t,r,[e,o],s,d),re=(e,o,t,r,s,d,n)=>B("Cell",k(n),r,s,[e,o,t],d),se=(e,o,t)=>L(e,o,t),de=(e,o)=>S("Metric",m(o),void 0,[e]),ne=(e,o,t,r)=>B("Metric",m(r),o,t,[e]),ce=(e,o,t)=>L(e,o,t),le=(e,o)=>S("SliceIds",R(o),[],[e]),Ie=(e,o,t)=>S("SliceRowIds",R(t),[],[e,o]),ae=(e,o,t,r)=>B("SliceIds",R(r),o,t,[e]),ie=(e,o,t,r,s)=>B("SliceRowIds",R(s),t,r,[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,r,s)=>B("RemoteRowId",h(s),t,r,[e,o]),Ce=(e,o,t,r,s)=>B("LocalRowIds",h(s),t,r,[e,o]),ke=(e,o,t,r,s)=>B("LinkedRowIds",h(s),t,r,[e,o]),me=(e,o,t)=>L(e,o,t),Re=e=>S("CheckpointIds",y(e),[[],void 0,[]]),he=(e,o)=>S("Checkpoint",y(o),void 0,[e]),ye=(e=c,o=[],t,r=c,s=[])=>{const d=y(t);return T((o=>n(d,(t=>{const s=e(o);r(t.addCheckpoint(s),t,s)}))),[d,...o,...s])},Te=e=>A(e,"goBackward"),ve=e=>A(e,"goForward"),xe=(e,o=[],t,r=c,s=[])=>{const d=y(t);return T((o=>n(d,(t=>n(e(o),(e=>r(t.goTo(e),e)))))),[d,...o,...s])},Pe=e=>{const o=y(e),[t,r]=Re(o);return[(s=t,!(0==(e=>e.length)(s))),Te(o),r,n(r,(e=>o?.getCheckpoint(e)))??""];var s},Le=e=>{const o=y(e),[,,[t]]=Re(o);return[!d(t),ve(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},Se=(e,o,t)=>B("CheckpointIds",y(t),e,o),Be=(e,o,t,r)=>B("Checkpoint",y(r),o,t,[e]),fe=(e,o,t=[],r,s=[])=>{const[,d]=P(),n=x((()=>o(e)),[e,...t]);return v((()=>((async()=>{await(r?.(n)),d(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:r,separator:d,debugIds:n},c,l)=>{const[I,a]=Ee(o),i=I?.getLocalTableId(e),p=c(e,l,I);return ze(s(p,(e=>Me(t,{...je(r,e),key:e,tableId:i,rowId:e,store:a,debugIds:n}))),d,n,l)},Fe=e=>({checkpoints:o,checkpointComponent:t=We,getCheckpointComponentProps:r,separator:d,debugIds:n})=>{const c=y(o);return ze(s(e(Re(c)),(e=>Me(t,{...je(r,e),key:e,checkpoints:c,checkpointId:e,debugIds:n}))),d)},je=(e,o)=>d(e)?{}:e(o),qe=({store:e,storesById:t,metrics:r,metricsById:s,indexes:d,indexesById:n,relationships:c,relationshipsById:l,checkpoints:I,checkpointsById:i,children:p})=>{const u=o(a);return Me(a.Provider,{value:Ae((()=>[e??u[0],{...u[1],...t},r??u[2],{...u[3],...s},d??u[4],{...u[5],...n},c??u[6],{...u[7],...l},I??u[8],{...u[9],...i}]),[e,t,r,s,d,n,c,l,I,i,u])},p)},ze=(e,o,t,r)=>{const n=d(o)||!Array.isArray(e)?e:s(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",n,"}"]:n},De=({tableId:e,rowId:o,cellId:t,store:r,debugIds:s})=>ze(""+(G(e,o,t,r)??""),void 0,s,t),Ge=({tableId:e,rowId:o,store:t,trackReorder:r,cellComponent:d=De,getCellComponentProps:n,separator:c,debugIds:l})=>ze(s(D(e,o,t,r),(r=>Me(d,{...je(n,r),key:r,tableId:e,rowId:o,cellId:r,store:t,debugIds:l}))),c,l,o),He=({tableId:e,store:o,trackReorder:t,rowComponent:r=Ge,getRowComponentProps:d,separator:n,debugIds:c})=>ze(s(q(e,o,t),(t=>Me(r,{...je(d,t),key:t,tableId:e,rowId:t,store:o,debugIds:c}))),n,c,e),Je=({store:e,trackReorder:o,tableComponent:t=He,getTableComponentProps:r,separator:d,debugIds:n})=>ze(s(F(e,o),(o=>Me(t,{...je(r,o),key:o,tableId:o,store:e,debugIds:n}))),d),Ke=({metricId:e,metrics:o,debugIds:t})=>ze(de(e,o)??"",void 0,t,e),Ne=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Ge,getRowComponentProps:d,separator:n,debugIds:c})=>{const l=R(t),I=l?.getStore(),a=l?.getTableId(e),i=Ie(e,o,l);return ze(s(i,(e=>Me(r,{...je(d,e),key:e,tableId:a,rowId:e,store:I,debugIds:c}))),n,c,o)},Oe=({indexId:e,indexes:o,sliceComponent:t=Ne,getSliceComponentProps:r,separator:d,debugIds:n})=>ze(s(le(e,o),(s=>Me(t,{...je(r,s),key:s,indexId:e,sliceId:s,indexes:o,debugIds:n}))),d,n,e),Qe=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Ge,getRowComponentProps:s,debugIds:n})=>{const[c,l]=Ee(t),I=c?.getRemoteTableId(e),a=ue(e,o,c);return ze(d(I)||d(a)?null:Me(r,{...je(s,a),key:a,tableId:I,rowId:a,store:l,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=>d(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,re as useCellListener,he as useCheckpoint,Re as useCheckpointIds,Se as useCheckpointIdsListener,Be as useCheckpointListener,C as useCheckpoints,me as useCreateCheckpoints,ce 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,Te as useGoBackwardCallback,ve as useGoForwardCallback,xe as useGoToCallback,g as useIndexes,ge as useLinkedRowIds,ke as useLinkedRowIdsListener,be as useLocalRowIds,Ce as useLocalRowIdsListener,de 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,ye as useSetCheckpointCallback,O as useSetPartialRowCallback,K as useSetRowCallback,J as useSetTableCallback,H as useSetTablesCallback,le as useSliceIds,ae as useSliceIdsListener,Ie as useSliceRowIds,ie 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,i=I([]),c=(e,o)=>{const t=u(i);return r(e)?t[o]:((e,o)=>n(e,(e=>e[o])))(t[o+1],e)},a=(e,o)=>{const d=c(e,o);return r(e)||(e=>t(e)==s)(e)?d:e},p=e=>c(e,0),b=e=>c(e,2),w=e=>c(e,4),R=e=>c(e,6),g=e=>c(e,8),C=e=>c(e,10),m=e=>a(e,0),k=e=>a(e,2),y=e=>a(e,4),h=e=>a(e,6),T=e=>a(e,8),q=e=>a(e,10),{useCallback:v,useEffect:x,useMemo:P,useRef:S,useState:f}=e,B=(e,o,t=[])=>{const s=P((()=>o(e)),[e,...t]);return x((()=>()=>s.destroy()),[s]),s},L=(e,o,t,s=[],d)=>{const[,n]=f(),l=v((()=>o?.["get"+e]?.(...s)??t),[o,...s]),[I]=f(l),u=S(I);return P((()=>u.current=l()),[l]),M(e,o,((...e)=>{u.current=r(d)?l():e[d],n([])}),[],s),u.current},M=(e,o,t,s=[],d=[],...r)=>x((()=>{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])},j=(e,o=[])=>P(e,o),z=e=>L("Tables",m(e),{}),D=e=>L("TableIds",m(e),[],[]),G=(e,o)=>L("Table",m(o),{},[e]),H=(e,o)=>L("RowIds",m(o),[],[e]),J=(e,o,t,s=0,d,r)=>L("SortedRowIds",m(r),[],[e,o,t,s,d],6),K=(e,o,t)=>L("Row",m(t),{},[e,o]),N=(e,o,t)=>L("CellIds",m(t),[],[e,o]),O=(e,o,t,s)=>L("Cell",m(s),void 0,[e,o,t],4),Q=(e,o,t,s,d)=>A(t,"Tables",e,o,s,d),U=(e,o,t,s,d,r)=>A(s,"Table",o,t,d,r,e),V=(e,o,t,s,d,r,n)=>A(d,"Row",t,s,r,n,e,o),W=(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])},X=(e,o,t,s,d,r,n)=>A(d,"PartialRow",t,s,r,n,e,o),Y=(e,o,t,s,d,r,n,l)=>A(r,"Cell",s,d,n,l,e,o,t),Z=(e,o,t)=>E(e,"Tables",o,t),$=(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)=>M("TableIds",m(s),e,o,[],t),se=(e,o,t,s,d)=>M("Table",m(d),o,t,[e],s),de=(e,o,t,s,d)=>M("RowIds",m(d),o,t,[e],s),re=(e,o,t,s,d,r,n,l,I)=>M("SortedRowIds",m(I),r,n,[e,o,t,s,d],l),ne=(e,o,t,s,d,r)=>M("Row",m(r),t,s,[e,o],d),le=(e,o,t,s,d,r)=>M("CellIds",m(r),t,s,[e,o],d),Ie=(e,o,t,s,d,r,n)=>M("Cell",m(n),s,d,[e,o,t],r),ue=(e,o,t)=>B(e,o,t),ie=(e,o)=>L("Metric",k(o),void 0,[e]),ce=(e,o,t,s)=>M("Metric",k(s),o,t,[e]),ae=(e,o,t)=>B(e,o,t),pe=(e,o)=>L("SliceIds",y(o),[],[e]),be=(e,o,t)=>L("SliceRowIds",y(t),[],[e,o]),we=(e,o,t,s)=>M("SliceIds",y(s),o,t,[e]),Re=(e,o,t,s,d)=>M("SliceRowIds",y(d),t,s,[e,o]),ge=(e,o,t)=>B(e,o,t),Ce=(e,o,t)=>L("RemoteRowId",h(t),void 0,[e,o]),me=(e,o,t)=>L("LocalRowIds",h(t),[],[e,o]),ke=(e,o,t)=>L("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)=>B(e,o,t),ve=(e,o)=>L("ResultTable",T(o),{},[e]),xe=(e,o)=>L("ResultRowIds",T(o),[],[e]),Pe=(e,o,t,s=0,d,r)=>L("ResultSortedRowIds",T(r),[],[e,o,t,s,d],6),Se=(e,o,t)=>L("ResultRow",T(t),{},[e,o]),fe=(e,o,t)=>L("ResultCellIds",T(t),[],[e,o]),Be=(e,o,t,s)=>L("ResultCell",T(s),void 0,[e,o,t]),Le=(e,o,t,s)=>M("ResultTable",T(s),o,t,[e]),Me=(e,o,t,s)=>M("ResultRowIds",T(s),o,t,[e]),Ae=(e,o,t,s,d,r,n,l)=>M("ResultSortedRowIds",T(l),r,n,[e,o,t,s,d]),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]),je=(e,o,t,s,d,r)=>M("ResultCell",T(r),s,d,[e,o,t]),ze=(e,o,t)=>B(e,o,t),De=e=>L("CheckpointIds",q(e),[[],void 0,[]]),Ge=(e,o)=>L("Checkpoint",q(o),void 0,[e]),He=(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])},Je=e=>F(e,"goBackward"),Ke=e=>F(e,"goForward"),Ne=(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])},Oe=e=>{const o=q(e),[t,s]=De(o);return[(d=t,!(0==(e=>e.length)(d))),Je(o),s,n(s,(e=>o?.getCheckpoint(e)))??""];var d},Qe=e=>{const o=q(e),[,,[t]]=De(o);return[!r(t),Ke(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},Ue=(e,o,t)=>M("CheckpointIds",q(t),e,o),Ve=(e,o,t,s)=>M("Checkpoint",q(s),o,t,[e]),We=(e,o,t=[],s,d=[])=>{const[,r]=f(),n=P((()=>o(e)),[e,...t]);return x((()=>((async()=>{await(s?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},{createElement:Xe,useMemo:Ye}=e,Ze=({tableId:e,store:o,rowComponent:t=lo,getRowComponentProps:s,separator:r,debugIds:n},l)=>ro(d(l,(d=>Xe(t,{...to(s,d),key:d,tableId:e,rowId:d,store:o,debugIds:n}))),r,n,e),$e=({queryId:e,queries:o,resultRowComponent:t=Co,getResultRowComponentProps:s,separator:r,debugIds:n},l)=>ro(d(l,(d=>Xe(t,{...to(s,d),key:d,queryId:e,rowId:d,queries:o,debugIds:n}))),r,n,e),_e=e=>{const o=h(e);return[o,o?.getStore()]},eo=({relationshipId:e,relationships:o,rowComponent:t=lo,getRowComponentProps:s,separator:r,debugIds:n},l,I)=>{const[u,i]=_e(o),c=u?.getLocalTableId(e),a=l(e,I,u);return ro(d(a,(e=>Xe(t,{...to(s,e),key:e,tableId:c,rowId:e,store:i,debugIds:n}))),r,n,I)},oo=e=>({checkpoints:o,checkpointComponent:t=yo,getCheckpointComponentProps:s,separator:r,debugIds:n})=>{const l=q(o);return ro(d(e(De(l)),(e=>Xe(t,{...to(s,e),key:e,checkpoints:l,checkpointId:e,debugIds:n}))),r)},to=(e,o)=>r(e)?{}:e(o),so=({store:e,storesById:t,metrics:s,metricsById:d,indexes:r,indexesById:n,relationships:l,relationshipsById:I,queries:u,queriesById:c,checkpoints:a,checkpointsById:p,children:b})=>{const w=o(i);return Xe(i.Provider,{value:Ye((()=>[e??w[0],{...w[1],...t},s??w[2],{...w[3],...d},r??w[4],{...w[5],...n},l??w[6],{...w[7],...I},u??w[8],{...w[9],...c},a??w[10],{...w[11],...p}]),[e,t,s,d,r,n,l,I,u,c,a,p,w])},b)},ro=(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},no=({tableId:e,rowId:o,cellId:t,store:s,debugIds:d})=>ro(""+(O(e,o,t,s)??""),void 0,d,t),lo=({tableId:e,rowId:o,store:t,cellComponent:s=no,getCellComponentProps:r,separator:n,debugIds:l})=>ro(d(N(e,o,t),(d=>Xe(s,{...to(r,d),key:d,tableId:e,rowId:o,cellId:d,store:t,debugIds:l}))),n,l,o),Io=e=>Ze(e,H(e.tableId,e.store)),uo=({cellId:e,descending:o,offset:t,limit:s,...d})=>Ze(d,J(d.tableId,e,o,t,s,d.store)),io=({store:e,tableComponent:o=Io,getTableComponentProps:t,separator:s,debugIds:r})=>ro(d(D(e),(s=>Xe(o,{...to(t,s),key:s,tableId:s,store:e,debugIds:r}))),s),co=({metricId:e,metrics:o,debugIds:t})=>ro(ie(e,o)??"",void 0,t,e),ao=({indexId:e,sliceId:o,indexes:t,rowComponent:s=lo,getRowComponentProps:r,separator:n,debugIds:l})=>{const I=y(t),u=I?.getStore(),i=I?.getTableId(e),c=be(e,o,I);return ro(d(c,(e=>Xe(s,{...to(r,e),key:e,tableId:i,rowId:e,store:u,debugIds:l}))),n,l,o)},po=({indexId:e,indexes:o,sliceComponent:t=ao,getSliceComponentProps:s,separator:r,debugIds:n})=>ro(d(pe(e,o),(d=>Xe(t,{...to(s,d),key:d,indexId:e,sliceId:d,indexes:o,debugIds:n}))),r,n,e),bo=({relationshipId:e,localRowId:o,relationships:t,rowComponent:s=lo,getRowComponentProps:d,debugIds:n})=>{const[l,I]=_e(t),u=l?.getRemoteTableId(e),i=Ce(e,o,l);return ro(r(u)||r(i)?null:Xe(s,{...to(d,i),key:i,tableId:u,rowId:i,store:I,debugIds:n}),void 0,n,o)},wo=e=>eo(e,me,e.remoteRowId),Ro=e=>eo(e,ke,e.firstRowId),go=({queryId:e,rowId:o,cellId:t,queries:s,debugIds:d})=>ro(""+(Be(e,o,t,s)??""),void 0,d,t),Co=({queryId:e,rowId:o,queries:t,resultCellComponent:s=go,getResultCellComponentProps:r,separator:n,debugIds:l})=>ro(d(fe(e,o,t),(d=>Xe(s,{...to(r,d),key:d,queryId:e,rowId:o,cellId:d,queries:t,debugIds:l}))),n,l,o),mo=e=>$e(e,xe(e.queryId,e.queries)),ko=({cellId:e,descending:o,offset:t,limit:s,...d})=>$e(d,Pe(d.queryId,e,o,t,s,d.queries)),yo=({checkpoints:e,checkpointId:o,debugIds:t})=>ro(Ge(o,e)??"",void 0,t,o),ho=oo((e=>e[0])),To=oo((e=>r(e[1])?[]:[e[1]])),qo=oo((e=>e[2]));export{ho as BackwardCheckpointsView,no as CellView,yo as CheckpointView,To as CurrentCheckpointView,qo as ForwardCheckpointsView,po as IndexView,Ro as LinkedRowsView,wo as LocalRowsView,co as MetricView,so as Provider,bo as RemoteRowView,go as ResultCellView,Co as ResultRowView,ko as ResultSortedTableView,mo as ResultTableView,lo as RowView,ao as SliceView,uo as SortedTableView,Io as TableView,io as TablesView,Ze as tableView,W as useAddRowCallback,O as useCell,N as useCellIds,le as useCellIdsListener,Ie as useCellListener,Ge as useCheckpoint,De as useCheckpointIds,Ue as useCheckpointIdsListener,Ve as useCheckpointListener,C as useCheckpoints,ze as useCreateCheckpoints,ae as useCreateIndexes,ue as useCreateMetrics,We as useCreatePersister,qe as useCreateQueries,ge as useCreateRelationships,j as useCreateStore,ee as useDelCellCallback,_ as useDelRowCallback,$ as useDelTableCallback,Z as useDelTablesCallback,Je as useGoBackwardCallback,Ke as useGoForwardCallback,Ne as useGoToCallback,w as useIndexes,ke as useLinkedRowIds,Te as useLinkedRowIdsListener,me as useLocalRowIds,he as useLocalRowIdsListener,ie as useMetric,ce as useMetricListener,b as useMetrics,g as useQueries,Qe as useRedoInformation,R as useRelationships,Ce as useRemoteRowId,ye as useRemoteRowIdListener,Be as useResultCell,fe as useResultCellIds,Fe as useResultCellIdsListener,je as useResultCellListener,Se as useResultRow,xe as useResultRowIds,Me as useResultRowIdsListener,Ee as useResultRowListener,Pe as useResultSortedRowIds,Ae as useResultSortedRowIdsListener,ve as useResultTable,Le as useResultTableListener,K as useRow,H as useRowIds,de as useRowIdsListener,ne as useRowListener,Y as useSetCellCallback,He as useSetCheckpointCallback,X as useSetPartialRowCallback,V as useSetRowCallback,U as useSetTableCallback,Q as useSetTablesCallback,pe as useSliceIds,we as useSliceIdsListener,be as useSliceRowIds,Re as useSliceRowIdsListener,J as useSortedRowIds,re as useSortedRowIdsListener,p as useStore,G as useTable,D as useTableIds,te as useTableIdsListener,se as useTableListener,z as useTables,oe as useTablesListener,Oe as useUndoInformation};
Binary file
@@ -1 +1 @@
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),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)||e.set(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 c=v(i,t,n,o,s+1);return u(i)&&g(e,t[s]),c})),y=e=>new Set(e),L=(e,n=[t])=>{const s=[],c=(e,t)=>t==r(n)?i(s,e):o([n[t],null],(n=>c(C(e,n),t+1)));return c(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 l=c(a)??t+s++;var d;return g(k,l,[o,r,i]),d=l,v(r,i??[t],y)?.add(d),l},(e,t,...r)=>o(L(e,t),(e=>p(e,(e=>d(C(k,e),(([e])=>e(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=l,!n.every(o);var n,o},(e,t,s)=>d(C(k,e),(([e,,i=[]])=>{const c=(...d)=>{const a=r(d);a==r(i)?e(n,...d,...s(d)):l(i[a])?o(t[a](...d),(e=>c(...d,e))):c(...d,i[a])};c()}))]})((()=>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)=>l(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),l=k(e,n,f),a=k(l,o,(()=>[s,void 0]));a[1]=r,a[0]===r&&u(g(l,o))&&u(g(e,n))&&u(g(x,t))&&(w=c(F),T=1),N()}})),H=(e="")=>(l(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=c(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(;!l(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),l(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={});
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),s=e=>e.length,r=e=>0==s(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,r=0)=>d((n?k:C)(e,t[r],r>s(t)-2?n:f),(i=>{if(r>s(t)-2)return o?.(i)&&g(e,t[r]),i;const l=v(i,t,n,o,r+1);return u(i)&&g(e,t[r]),l})),y=e=>new Set(e),L=e=>{let n,r=0;const a=[],k=f();return[(o,s,i)=>{n??=e();const c=l(a)??t+r++;var d,u;return g(k,c,[o,s,i]),d=v(s,i??[t],y),u=c,d?.add(u),c},(e,r,...l)=>o(((e,n=[t])=>{const r=[],l=(e,t)=>t==s(n)?i(r,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),r})(e,r),(e=>p(e,(e=>C(k,e)[0](n,...r??[],...l))))),e=>d(C(k,e),(([,n,o])=>(v(n,o??[t],void 0,(t=>(h(t,e),u(t)?1:0))),g(k,e),s(a)<1e3&&i(a,e),o))),(e,t,r)=>d(C(k,e),(([e,,i=[]])=>{const l=(...d)=>{const a=s(d);a==s(i)?e(n,...d,...r(d)):c(i[a])?o(t[a](...d),(e=>l(...d,e))):l(...d,i[a])};l()}))]},b=Object.freeze,w=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{let h,v,y,w=100,S=f(),T=1;const j=f(),x=f(),[z,E,M]=L((()=>Q)),m=f(),B=f(),I=[],O=[],_=(t,n)=>{T=0,e.transaction((()=>p(C(m,n),((n,o)=>p(n,((n,s)=>p(n,((n,r)=>((e,t,n,o,s)=>c(s)?e.delCell(t,n,o,!0):e.setCell(t,n,o,s))(e,o,s,r,n[t]))))))))),T=1},F=e=>{g(m,e),g(B,e),E(x,[e])},P=(e,t)=>o(((e,t)=>e.splice(0,t))(e,t??s(e)),F),W=()=>P(I,s(I)-w),q=e.addCellListener(null,null,null,((e,t,n,o,s,r)=>{if(T){d(h,(()=>{i(I,h),W(),P(O),h=void 0,y=1}));const e=k(S,t,f),c=k(e,n,f),a=k(c,o,(()=>[r,void 0]));a[1]=s,a[0]===s&&u(g(c,o))&&u(g(e,n))&&u(g(S,t))&&(h=l(I),y=1),H()}})),A=(e="")=>(c(h)&&(h=t+v++,g(m,h,S),K(h,e),S=f(),y=1),h),D=()=>{r(I)||(O.unshift(A()),_(0,h),h=l(I),y=1)},G=()=>{r(O)||(i(I,h),h=O.shift(),_(1,h),y=1)},H=()=>{y&&(E(j),y=0)},J=e=>{const t=A(e);return H(),t},K=(e,t)=>(N(e)&&C(B,e)!==t&&(g(B,e,t),E(x,[e])),Q),N=e=>a(m,e),Q={setSize:e=>(w=e,W(),Q),addCheckpoint:J,setCheckpoint:K,getStore:()=>e,getCheckpointIds:()=>[[...I],h,[...O]],forEachCheckpoint:e=>{return t=e,p(B,((e,n)=>t(n,e)));var t},hasCheckpoint:N,getCheckpoint:e=>C(B,e),goBackward:()=>(D(),H(),Q),goForward:()=>(G(),H(),Q),goTo:e=>{const t=n(I,e)?D:n(O,e)?G:null;for(;!c(t)&&e!=h;)t();return H(),Q},addCheckpointIdsListener:e=>z(e,j),addCheckpointListener:(e,t)=>z(t,x,[e]),delListener:e=>(M(e),Q),clear:()=>(P(I),P(O),c(h)||F(h),h=void 0,v=0,J(),Q),destroy:()=>{e.delListener(q)},getListenerStats:()=>({})};return b(Q.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
package/lib/umd/common.js CHANGED
@@ -1 +1 @@
1
- var e,o;e=this,o=function(e){"use strict";e.defaultSorter=(e,o)=>e<o?-1:1,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCommon={});
1
+ var e,o;e=this,o=function(e){"use strict";e.defaultSorter=(e,o)=>e<o?-1:1,e.id=e=>""+e,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCommon={});
Binary file
@@ -1 +1 @@
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),c=e=>e.length,l=(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)||e.set(t,n()),b(e,t)),T=(e,t,n,s,o=0)=>f((n?L:b)(e,t[o],o>c(t)-2?n:y),(r=>{if(o>c(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(),l=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==c(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(l,e,y()))},m=e=>{w(o,e),w(r,e),w(d,e),w(l,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,c,f)=>{k(t,o);const h=y(),p=y(),x=b(d,t),S=b(l,t),L=t=>{const r=n=>e.getCell(o,t,n),d=b(x,t),i=s(o,t)?n(c(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==c(t)?l(s,e):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,c)=>{t??=e();const l=r.pop()??n+s++;return w(d,l,[o,i,c]),R(T(i,c??[n],E),l),l},(e,n,...s)=>i(m(e,n),(e=>g(e,(e=>f(b(d,e),(([e])=>e(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),c(r)<1e3&&l(r,e),s))),(e,t)=>!o(m(e,t),a),(e,n,s)=>f(b(d,e),(([e,,o=[]])=>{const r=(...d)=>{const l=c(d);l==c(o)?e(t,...d,...s(d)):a(o[l])?i(n[l](...d),(e=>r(...d,e))):r(...d,o[l])};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,c,l=k)=>{const p=a(c)?void 0:([e],[t])=>c(e,t);return P(e,n,((n,o,c,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(c,(e=>f(b(I,e),(e=>R(M,e))))),g(M,(e=>{const t=(t,n)=>l(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={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=(e,t)=>((e,t)=>e.every(t))(e,((n,s)=>0==s||t(e[s-1],n)<=0)),r=(e,t)=>e.sort(t),d=(e,t)=>e.forEach(t),i=e=>e.length,l=(e,...t)=>e.push(...t),c=e=>null==e,a=(e,t,n)=>c(e)?n?.():t(e),f=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),h=e=>[...e?.values()??[]],p=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),x=e=>new Map(e),y=e=>[...e?.keys()??[]],S=(e,t)=>e?.get(t),b=(e,t)=>I(e,((e,n)=>t(n,e))),v=(e,t,n)=>c(n)?(g(e,t),e):e?.set(t,n),w=(e,t,n)=>(f(e,t)||v(e,t,n()),S(e,t)),L=(e,t,n,s,o=0)=>a((n?w:S)(e,t[o],o>i(t)-2?n:x),(r=>{if(o>i(t)-2)return s?.(r)&&v(e,t[o]),r;const d=L(r,t,n,s,o+1);return u(r)&&v(e,t[o]),d})),T=e=>new Set(e),E=(e,t)=>e?.add(t),R=(e,t,n)=>{const s=e.hasRow,o=x(),r=x(),l=x(),L=x(),R=x(),j=(t,n,...s)=>{const o=w(R,t,T);return d(s,(t=>E(o,t)&&n&&e.callListener(t))),s},M=(t,...n)=>a(S(R,t),(s=>{d(0==i(n)?h(s):n,(t=>{e.delListener(t),g(s,t)})),u(s)&&v(R,t)})),k=(e,n)=>{v(o,e,n),f(r,e)||(v(r,e,t()),v(l,e,x()),v(L,e,x()))},m=e=>{v(o,e),v(r,e),v(l,e),v(L,e),M(e)};return[()=>e,()=>y(o),e=>b(r,e),e=>f(r,e),e=>S(o,e),e=>S(r,e),(e,t)=>v(r,e,t),k,(t,o,r,i,a)=>{k(t,o);const u=x(),h=x(),g=S(l,t),y=S(L,t),w=t=>{const r=n=>e.getCell(o,t,n),d=S(g,t),l=s(o,t)?n(i(r,t)):void 0;if(d!=l&&v(u,t,[d,l]),!c(a)){const e=S(y,t),n=s(o,t)?a(r,t):void 0;e!=n&&v(h,t,n)}},T=e=>{r((()=>{I(u,(([,e],t)=>v(g,t,e))),I(h,((e,t)=>v(y,t,e)))}),u,h,g,y,e),p(u),p(h)};b(g,w),e.hasTable(o)&&d(e.getRowIds(o),(e=>{f(g,e)||w(e)})),T(!0),M(t),j(t,0,e.addRowListener(o,null,((e,t,n)=>w(n))),e.addTableListener(o,(()=>T())))},m,()=>b(R,m),j,M]},j=(e,o)=>t(e)==s?t=>t(e):e??(()=>o??n),M=(e,t)=>e<t?-1:1,k=e=>{let t,s=0;const o=[],r=x();return[(d,i,l)=>{t??=e();const c=o.pop()??n+s++;return v(r,c,[d,i,l]),E(L(i,l??[n],T),c),c},(e,s,...o)=>d(((e,t=[n])=>{const s=[],o=(e,n)=>n==i(t)?l(s,e):null===t[n]?I(e,(e=>o(e,n+1))):d([t[n],null],(t=>o(S(e,t),n+1)));return o(e,0),s})(e,s),(e=>I(e,(e=>S(r,e)[0](t,...s??[],...o))))),e=>a(S(r,e),(([,t,s])=>(L(t,s??[n],void 0,(t=>(g(t,e),u(t)?1:0))),v(r,e),i(o)<1e3&&l(o,e),s))),(e,n,s)=>a(S(r,e),(([e,,o=[]])=>{const r=(...l)=>{const a=i(l);a==i(o)?e(t,...l,...s(l)):c(o[a])?d(n[a](...l),(e=>r(...l,e))):r(...l,o[a])};r()}))]},m=Object.freeze,z=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=x(),s=x(),[d,i,l,p,w,L,z,,C,D,O]=R(e,x,(e=>c(e)?n:e+n)),[_,B,P]=k((()=>q)),W=(t,n,s)=>{const o=w(t);I(s,((t,s)=>n(s,(n=>I(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},q={setIndexDefinition:(e,n,d,i,l,h=M)=>{const p=c(l)?void 0:([e],[t])=>l(e,t);return C(e,n,((n,d,l,y,w,R)=>{let j=0;const M=T(),k=T(),m=L(e);if(I(d,(([e,t],n)=>{c(e)||(E(M,e),a(S(m,e),(t=>{g(t,n),u(t)&&(v(m,e),j=1)}))),c(t)||(E(M,t),f(m,t)||(v(m,t,T()),j=1),E(S(m,t),n),c(i)||E(k,t))})),n(),u(w)||(R?b(m,(e=>E(k,e))):b(l,(e=>a(S(y,e),(e=>E(k,e))))),I(k,(e=>{const t=(t,n)=>h(S(w,t),S(w,n),e),n=[...S(m,e)];o(n,t)||(v(m,e,T(r(n,t))),E(M,e))}))),(j||R)&&!c(p)){const t=[...m];o(t,p)||(z(e,x(r(t,p))),j=1)}j&&B(t,[e]),I(M,(t=>B(s,[e,t])))}),j(d),a(i,j)),q},delIndexDefinition:e=>(D(e),q),getStore:d,getIndexIds:i,forEachIndex:e=>l(((t,n)=>e(t,(e=>W(t,e,n))))),forEachSlice:(e,t)=>W(e,t,L(e)),hasIndex:p,hasSlice:(e,t)=>f(L(e),t),getTableId:w,getSliceIds:e=>y(L(e)),getSliceRowIds:(e,t)=>h(S(L(e),t)),addSliceIdsListener:(e,n)=>_(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>_(n,s,[e,t]),delListener:e=>(P(e),q),destroy:O,getListenerStats:()=>({})};return m(q)}));e.createIndexes=z,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="",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.set(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):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=>v(x(o,e),(([e])=>e(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={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=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,p=(e,t,n)=>h(e)?n?.():t(e),M=()=>{},g=e=>e.size,v=(e,t)=>e?.has(t)??!1,y=e=>h(e)||0==g(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)=>(v(e,t)||E(e,t,n()),x(e,t)),R=(e,t,n,s,r=0)=>p((n?I:x)(e,t[r],r>c(t)-2?n:T),(i=>{if(r>c(t)-2)return s?.(i)&&E(e,t[r]),i;const o=R(i,t,n,s,r+1);return y(i)&&E(e,t[r]),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,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]]]),k=e=>new Set(e),z=(e,t)=>e?.add(t),D=(e,t,n)=>{const s=e.hasRow,r=T(),o=T(),d=T(),a=T(),l=T(),u=(t,n,...s)=>{const r=I(l,t,k);return i(s,(t=>z(r,t)&&n&&e.callListener(t))),s},f=(t,...n)=>p(x(l,t),(s=>{i(0==c(n)?b(s):n,(t=>{e.delListener(t),w(s,t)})),y(s)&&E(l,t)})),M=(e,n)=>{E(r,e,n),v(o,e)||(E(o,e,t()),E(d,e,T()),E(a,e,T()))},g=e=>{E(r,e),E(o,e),E(d,e),E(a,e),f(e)};return[()=>e,()=>[...r?.keys()??[]],e=>j(o,e),e=>v(o,e),e=>x(r,e),e=>x(o,e),(e,t)=>E(o,e,t),M,(t,r,o,c,l)=>{M(t,r);const p=T(),g=T(),y=x(d,t),b=x(a,t),w=t=>{const i=n=>e.getCell(r,t,n),o=x(y,t),d=s(r,t)?n(c(i,t)):void 0;if(o!=d&&E(p,t,[o,d]),!h(l)){const e=x(b,t),n=s(r,t)?l(i,t):void 0;e!=n&&E(g,t,n)}},I=e=>{o((()=>{L(p,(([,e],t)=>E(y,t,e))),L(g,((e,t)=>E(b,t,e)))}),p,g,y,b,e),m(p),m(g)};j(y,w),e.hasTable(r)&&i(e.getRowIds(r),(e=>{v(y,e)||w(e)})),I(!0),f(t),u(t,0,e.addRowListener(r,null,((e,t,n)=>w(n))),e.addTableListener(r,(()=>I())))},g,()=>j(l,g),u,f]},N=(e,r)=>t(e)==s?t=>t(e):e??(()=>r??n),O=e=>{let t,s=0;const r=[],o=T();return[(i,c,d)=>{t??=e();const a=r.pop()??n+s++;return E(o,a,[i,c,d]),z(R(c,d??[n],k),a),a},(e,s,...r)=>i(((e,t=[n])=>{const s=[],r=(e,n)=>n==c(t)?a(s,e):null===t[n]?L(e,(e=>r(e,n+1))):i([t[n],null],(t=>r(x(e,t),n+1)));return r(e,0),s})(e,s),(e=>L(e,(e=>x(o,e)[0](t,...s??[],...r))))),e=>p(x(o,e),(([,t,s])=>(R(t,s??[n],void 0,(t=>(w(t,e),y(t)?1:0))),E(o,e),c(r)<1e3&&a(r,e),s))),(e,n,s)=>p(x(o,e),(([e,,r=[]])=>{const o=(...d)=>{const a=c(d);a==c(r)?e(t,...d,...s(d)):h(r[a])?i(n[a](...d),(e=>o(...d,e))):o(...d,r[a])};o()}))]},_=Object.freeze,B=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const s=T(),[i,o,c,d,a,l,u,,p,v,m]=D(e,M,(e=>isNaN(e)||h(e)||!0===e||!1===e||e===n?void 0:1*e)),[w,j,E]=O((()=>I)),I={setMetricDefinition:(e,n,i,o,c,d,a)=>{const M=t(i)==r?[i,c,d,a]:x(S,i)??x(S,"sum");return p(e,n,((t,n,r,i,o,c)=>{const d=l(e),a=g(i);c||=h(d),t();let p=((e,t,n,s,r,i=!1)=>{if(y(n))return;const[o,c,d,a]=r;return i||=h(e),L(s,(([n,s])=>{i||(e=h(n)?c?.(e,s,t++):h(s)?d?.(e,n,t--):a?.(e,s,n,t),i||=h(e))})),i?o(b(n),g(n)):e})(d,a,i,n,M,c);f(p)||(p=void 0),p!=d&&(u(e,p),j(s,[e],p,d))}),N(o,1)),I},delMetricDefinition:e=>(v(e),I),getStore:i,getMetricIds:o,forEachMetric:c,hasMetric:d,getTableId:a,getMetric:l,addMetricListener:(e,t)=>w(t,s,[e]),delListener:e=>(E(e),I),destroy:m,getListenerStats:()=>({})};return _(I)}));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
@@ -1 +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(""),c=d(!0),u=d(0),R=d(d),f=Math.max,h=Math.min,w=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,y=e=>g(e)||0==v(e),p=e=>[...e?.values()??[]],I=e=>e.clear(),m=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),Q=e=>new Map(e),S=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)||e.set(t,s()),x(e,t)),D=(e,t,s,n,o=0)=>L((s?k:x)(e,t[o],o>l(t)-2?s:Q),(r=>{if(o>l(t)-2)return n?.(r)&&j(e,t[o]),r;const a=D(r,t,s,n,o+1);return y(r)&&j(e,t[o]),a})),F=e=>new Set(e),z=(e,t)=>e?.add(t),O=Q([["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=>f(...e),(e,t)=>f(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:f(t,e)]],["min",[e=>h(...e),(e,t)=>h(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:h(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==c)(t)||t==u&&w(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,r,d,i,c,,,u,,R,f,h,w]=((e,t,n)=>{const l=e.hasRow,r=Q(),a=Q(),d=Q(),i=Q(),c=Q(),u=(t,n,...l)=>{const o=k(c,t,F);return s(l,(t=>z(o,t)&&n&&e.callListener(t))),l},R=(t,...n)=>L(x(c,t),(l=>{s(o(n)?p(l):n,(t=>{e.delListener(t),E(l,t)})),y(l)&&j(c,t)})),f=(e,s)=>{j(r,e,s),C(a,e)||(j(a,e,t()),j(d,e,Q()),j(i,e,Q()))},h=e=>{j(r,e),j(a,e),j(d,e),j(i,e),R(e)};return[()=>e,()=>S(r),e=>M(a,e),e=>C(a,e),e=>x(r,e),e=>x(a,e),(e,t)=>j(a,e,t),f,(t,o,r,a,c)=>{f(t,o);const h=Q(),w=Q(),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(h,t,[r,d]),!g(c)){const e=x(b,t),n=l(o,t)?c(s,t):void 0;e!=n&&j(w,t,n)}},v=e=>{r((()=>{m(h,(([,e],t)=>j(L,t,e))),m(w,((e,t)=>j(b,t,e)))}),h,w,L,b,e),I(h),I(w)};M(L,T),e.hasTable(o)&&s(e.getRowIds(o),(e=>{C(L,e)||T(e)})),v(!0),R(t),u(t,0,e.addRowListener(o,null,((e,t,s)=>T(s))),e.addTableListener(o,(()=>v())))},h,()=>M(c,h),u,R]})(e,(()=>!0),T),_=e.createStore(),q=e.createStore(),A=e.createStore(),G=Q(),H=(e,t,...n)=>s(n,(s=>z(k(k(G,t,Q),e,F),s))),J=(e,t,s)=>h(e,0,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),K={setQueryDefinition:(n,r,d)=>{let i;u(n,r),_.delTable(n),q.delTable(n),A.delTable(n);const c=[],R=[[null,[r,null,null,[],Q()]]],f=[],T=[],P=[],G=[];d({select:(e,t)=>{const s=b(e)?[l(c)+"",e]:[g(t)?e:t,s=>s(e,t)];return a(c,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),[],Q()]];return a(R,o),{as:e=>o[0]=e}},where:(e,t,s)=>a(f,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(T,o),{as:e=>o[0]=e}},having:(e,t)=>a(P,b(e)?e:s=>s(e)===t),order:(e,t)=>a(G,[b(e)?e:t=>t(e)??0,t]),limit:(e,t)=>{i=g(t)?[0,e]:[e,t]}});const N=Q(c);if(y(N))return K;const U=Q(R);M(U,((e,[,t])=>L(x(U,t),(({3:t})=>g(e)?0:a(t,e)))));const V=Q(T);let X=_,Y=q;if(o(G)&&g(i))Y=A;else{J(n,Y,A);const e=(e,t)=>{const s=x(r,e)??[],n=x(r,t)??[],l=G.findIndex(((e,t)=>s[t]!==n[t]));return l<0?0:(o=s[l],a=n[l],(o<a?-1:1)*(G[l][1]?-1:1));var o,a},r=Q(),a=Q();H(Y,n,o(G)?Y.addRowIdsListener(n,(()=>I(a))):Y.addRowListener(n,null,((e,s,o)=>{let d=null;if(Y.hasRow(n,o)){const e=x(r,o)??[],s=Y.getRow(n,o),R=e=>s[e];if(u=([e])=>e(R,o),d=G.map(u),c=d,l(i=e)===l(c)&&t(i,((e,t)=>c[t]===e)))return void(x(a,o)&&A.setRow(n,o,s))}var i,c,u;j(r,o,d),I(a)})),Y.addTableListener(n,(()=>{if(y(a)&&(A.delTable(n),Y.hasTable(n))){const o=Y.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))(S(a),e,e+t)),(()=>S(a))),(e=>{A.setRow(n,e,o[e]),j(a,e,1)}))}var t,l})))}if(y(V)&&o(P))X=Y;else{J(n,X,Y);const e=Q();M(V,((t,[s,n])=>z(k(e,s,F),[t,n])));const s=F();M(N,(t=>C(e,t)?0:z(s,t)));const l=Q(),o=(s,l,o,r)=>L(s,(([s,a,d,i])=>{M(l,((t,[n])=>{const l=k(s,t,Q),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(y(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(p(s),v(s)):e})(i[e],n,l,s,t);i[e]=g(W(o))?null:o}))}})),(y(a)||!t(P,(e=>e((e=>i[e]))))?Y.delRow:Y.setRow)(n,d,i)}));H(X,n,X.addRowListener(n,null,((t,r,d,i)=>{const c=[],u=[],R=Q(),f=X.hasRow(n,d);let h=!f;m(s,(e=>{const[t,s,l]=i(n,d,e);a(c,s),a(u,l),h||=t})),M(e,(e=>{const[t,,s]=i(n,d,e);(h||t)&&j(R,e,[s])})),h&&o(D(l,c,void 0,(([,e,t])=>{if(E(e,d),y(e))return Y.delRow(n,t),1})),R,d,1),f&&o(D(l,u,(()=>{const e={};return m(s,(t=>e[t]=X.getCell(n,d,t))),[Q(),F(),Y.addRow(n,e,1),e]}),(([,e])=>{z(e,d)})),R,d)})))}J(n,e,X);const Z=s=>{const l=(t,n)=>e.getCell(...g(n)?[r,s,t]:t===r?[r,s,n]:[x(U,t)?.[0],x(x(U,t)?.[4],s)?.[0],n]);X.transaction((()=>t(f,(e=>e(l)))?M(N,((e,t)=>((e,t,s,n,l)=>g(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l))(X,n,s,e,t(l,s)))):X.delRow(n,s)))},$=(t,l,o,r)=>{const a=t=>e.getCell(l,o,t);s(r,(s=>{const[l,,o,r,d]=x(U,s),i=o?.(a,t),[c,u]=x(d,t)??[];i!=c&&(g(u)||w(n,u),j(d,t,g(i)?null:[i,...h(n,1,e.addRowListener(l,i,(()=>$(t,l,i,r))))]))})),Z(t)},{3:ee}=x(U,null);return X.transaction((()=>h(n,1,e.addRowListener(r,null,((t,s,l)=>{e.hasRow(r,l)?$(l,r,l,ee):(X.delRow(n,l),m(U,(({4:e})=>L(x(e,l),(([,t])=>{w(n,t),j(e,l)})))))}))))),K},delQueryDefinition:e=>(M(x(G,e),((e,t)=>m(t,(t=>e.delListener(t))))),R(e),K),getStore:n,getQueryIds:r,forEachQuery:d,hasQuery:i,getTableId:c,getResultTable:e=>A.getTable(e),getResultRowIds:e=>A.getRowIds(e),getResultRow:(e,t)=>A.getRow(e,t),getResultCellIds:(e,t)=>A.getCellIds(e,t),getResultCell:(e,t,s)=>A.getCell(e,t,s),hasResultTable:e=>A.hasTable(e),hasResultRow:(e,t)=>A.hasRow(e,t),hasResultCell:(e,t,s)=>A.hasCell(e,t,s),forEachResultTable:e=>A.forEachTable(e),forEachResultRow:(e,t)=>A.forEachRow(e,t),forEachResultCell:(e,t,s)=>A.forEachCell(e,t,s),addResultTableListener:(e,t)=>A.addTableListener(e,((e,...s)=>t(K,...s))),addResultRowIdsListener:(e,t,s)=>A.addRowIdsListener(e,((e,...s)=>t(K,...s)),s),addResultRowListener:(e,t,s)=>A.addRowListener(e,t,((e,...t)=>s(K,...t))),addResultCellIdsListener:(e,t,s,n)=>A.addCellIdsListener(e,t,((e,...t)=>s(K,...t)),n),addResultCellListener:(e,t,s,n)=>A.addCellListener(e,t,s,((e,...t)=>n(K,...t))),delListener:e=>(A.delListener(e),K),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=A.getListenerStats();return n}};return P(K)}));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={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(!0),o=t(0),r=t(t),l="Listener",i="Result",a=(e,t)=>e.every(t),d=(e,t)=>e.forEach(t),c=e=>h(e,((e,t)=>e+t),0),u=e=>e.length,f=e=>0==u(e),h=(e,t,n)=>e.reduce(t,n),w=(e,...t)=>e.push(...t),g=Math.max,R=Math.min,v=isFinite,y=e=>null==e,L=(e,t,n)=>y(e)?n?.():t(e),p=e=>t(e)==r,b=()=>{},T=e=>e.size,C=(e,t)=>e?.has(t)??!1,m=e=>y(e)||0==T(e),I=e=>[...e?.values()??[]],Q=e=>e.clear(),S=(e,t)=>e?.forEach(t),x=(e,t)=>e?.delete(t),M=e=>new Map(e),j=(e,t)=>e?.get(t),E=(e,t)=>S(e,((e,n)=>t(n,e))),D=(e,t,n)=>y(n)?(x(e,t),e):e?.set(t,n),F=(e,t,n)=>(C(e,t)||D(e,t,n()),j(e,t)),k=(e,t,n,s,o=0)=>L((n?F:j)(e,t[o],o>u(t)-2?n:M),(r=>{if(o>u(t)-2)return s?.(r)&&D(e,t[o]),r;const l=k(r,t,n,s,o+1);return m(r)&&D(e,t[o]),l})),z=e=>new Set(e),O=(e,t)=>e?.add(t),W=M([["avg",[(e,t)=>c(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=>g(...e),(e,t)=>g(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:g(t,e)]],["min",[e=>R(...e),(e,t)=>R(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:R(t,e)]],["sum",[e=>c(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),_=e=>{const r=t(e);return(e=>e==n||e==s)(r)||r==o&&v(e)?r:void 0},B=Object,P=B.freeze,q=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=e.createStore,[n,s,o,r,c,,,h,,g,R,v,q]=((e,t,n)=>{const s=e.hasRow,o=M(),r=M(),l=M(),i=M(),a=M(),c=(t,n,...s)=>{const o=F(a,t,z);return d(s,(t=>O(o,t)&&n&&e.callListener(t))),s},u=(t,...n)=>L(j(a,t),(s=>{d(f(n)?I(s):n,(t=>{e.delListener(t),x(s,t)})),m(s)&&D(a,t)})),h=(e,n)=>{D(o,e,n),C(r,e)||(D(r,e,t()),D(l,e,M()),D(i,e,M()))},w=e=>{D(o,e),D(r,e),D(l,e),D(i,e),u(e)};return[()=>e,()=>[...o?.keys()??[]],e=>E(r,e),e=>C(r,e),e=>j(o,e),e=>j(r,e),(e,t)=>D(r,e,t),h,(t,o,r,a,f)=>{h(t,o);const w=M(),g=M(),R=j(l,t),v=j(i,t),L=t=>{const r=n=>e.getCell(o,t,n),l=j(R,t),i=s(o,t)?n(a(r,t)):void 0;if(l!=i&&D(w,t,[l,i]),!y(f)){const e=j(v,t),n=s(o,t)?f(r,t):void 0;e!=n&&D(g,t,n)}},p=e=>{r((()=>{S(w,(([,e],t)=>D(R,t,e))),S(g,((e,t)=>D(v,t,e)))}),w,g,R,v,e),Q(w),Q(g)};E(R,L),e.hasTable(o)&&d(e.getRowIds(o),(e=>{C(R,e)||L(e)})),p(!0),u(t),c(t,0,e.addRowListener(o,null,((e,t,n)=>L(n))),e.addTableListener(o,(()=>p())))},w,()=>E(a,w),c,u]})(e,(()=>!0),b),A=t(),G=t(),H=M(),J=(e,t,...n)=>d(n,(n=>O(F(F(H,t,M),e,z),n))),K=e=>d([G,A],(t=>t.delTable(e))),N=(e,t,n)=>J(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),U={setQueryDefinition:(t,n,s)=>{h(t,n),K(t);const o=[],r=[[null,[n,null,null,[],M()]]],l=[],i=[],c=[];s({select:(e,t)=>{const n=p(e)?[u(o)+"",e]:[y(t)?e:t,n=>n(e,t)];return w(o,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=y(n)||p(t)?null:t,o=y(s)?t:n,l=[e,[e,s,p(o)?o:e=>e(o),[],M()]];return w(r,l),{as:e=>l[0]=e}},where:(e,t,n)=>w(l,p(e)?e:y(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,o)=>{const r=[e,[e,p(t)?[t,n,s,o]:j(W,t)??[(e,t)=>t]]];return w(i,r),{as:e=>r[0]=e}},having:(e,t)=>w(c,p(e)?e:n=>n(e)===t)});const g=M(o);if(m(g))return U;const R=M(r);E(R,((e,[,t])=>L(j(R,t),(({3:t})=>y(e)?0:w(t,e)))));const b=M(i);let Q=A;if(m(b)&&f(c))Q=G;else{N(t,Q,G);const e=M();E(b,((t,[n,s])=>O(F(e,n,z),[t,s])));const n=z();E(g,(t=>C(e,t)?0:O(n,t)));const s=M(),o=(n,s,o,r)=>L(n,(([n,l,i,d])=>{E(s,((t,[s])=>{const l=F(n,t,M),i=j(l,o),a=r?void 0:s;if(i!==a){const n=z([[i,a]]),s=T(l);D(l,o,a),S(j(e,t),(([e,t])=>{const o=((e,t,n,s,o,r=!1)=>{if(m(n))return;const[l,i,a,d]=o;return r||=y(e),S(s,(([n,s])=>{r||(e=y(n)?i?.(e,s,t++):y(s)?a?.(e,n,t--):d?.(e,s,n,t),r||=y(e))})),r?l(I(n),T(n)):e})(d[e],s,l,n,t);d[e]=y(_(o))?null:o}))}})),(m(l)||!a(c,(e=>e((e=>d[e]))))?G.delRow:G.setRow)(t,i,d)}));J(Q,t,Q.addRowListener(t,null,((r,l,i,a)=>{const d=[],c=[],u=M(),f=Q.hasRow(t,i);let h=!f;S(n,(e=>{const[n,s,o]=a(t,i,e);w(d,s),w(c,o),h||=n})),E(e,(e=>{const[n,,s]=a(t,i,e);(h||n)&&D(u,e,[s])})),h&&o(k(s,d,void 0,(([,e,n])=>{if(x(e,i),m(e))return G.delRow(t,n),1})),u,i,1),f&&o(k(s,c,(()=>{const e={};return S(n,(n=>e[n]=Q.getCell(t,i,n))),[M(),z(),G.addRow(t,e,1),e]}),(([,e])=>{O(e,i)})),u,i)})))}N(t,e,Q);const B=s=>{const o=(t,o)=>e.getCell(...y(o)?[n,s,t]:t===n?[n,s,o]:[j(R,t)?.[0],j(j(R,t)?.[4],s)?.[0],o]);Q.transaction((()=>a(l,(e=>e(o)))?E(g,((e,n)=>((e,t,n,s,o)=>y(o)?e.delCell(t,n,s,!0):e.setCell(t,n,s,o))(Q,t,s,e,n(o,s)))):Q.delRow(t,s)))},P=(n,s,o,r)=>{const l=t=>e.getCell(s,o,t);d(r,(s=>{const[o,,r,i,a]=j(R,s),d=r?.(l,n),[c,u]=j(a,n)??[];d!=c&&(y(u)||q(t,u),D(a,n,y(d)?null:[d,...v(t,1,e.addRowListener(o,d,(()=>P(n,o,d,i))))]))})),B(n)},{3:H}=j(R,null);return Q.transaction((()=>v(t,1,e.addRowListener(n,null,((s,o,r)=>{e.hasRow(n,r)?P(r,n,r,H):(Q.delRow(t,r),S(R,(({4:e})=>L(j(e,r),(([,n])=>{q(t,n),D(e,r)})))))}))))),U},delQueryDefinition:e=>(E(j(H,e),((e,t)=>S(t,(t=>e.delListener(t))))),K(e),g(e),U),getStore:n,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:c,delListener:e=>(G.delListener(e),U),destroy:R,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=G.getListenerStats();return s}};var V,X;return V={Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},X=([e,t],n)=>{d(e?["get","has","forEach"]:["get"],(e=>U[e+i+n]=(...t)=>G[e+n](...t))),U["addResult"+n+l]=(...e)=>{return G["add"+n+l](...(s=e,o=0,r=t,s.slice(o,r)),((n,...s)=>e[t](U,...s)));var s,o,r}},d(B.entries(V),(([e,t])=>X(t,e))),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,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)||e.set(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):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=>d(g(f,e),(([e])=>e(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={});
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),d=e=>null==e,l=(e,t,n)=>d(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,c=e=>d(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)=>d(n)?(p(e,t),e):e?.set(t,n),I=(e,t,n)=>(a(e,t)||w(e,t,n()),g(e,t)),b=(e,t,n,o,s=0)=>l((n?I: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 d=b(r,t,n,o,s+1);return c(r)&&w(e,t[s]),d})),y=e=>new Set(e),v=(e,t)=>e?.add(t),T=(e,t,n)=>{const o=e.hasRow,r=R(),b=R(),T=R(),m=R(),k=R(),E=(t,n,...o)=>{const i=I(k,t,y);return s(o,(t=>v(i,t)&&n&&e.callListener(t))),o},j=(t,...n)=>l(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),a(b,e)||(w(b,e,t()),w(T,e,R()),w(m,e,R()))},M=e=>{w(r,e),w(b,e),w(T,e),w(m,e),j(e)};return[()=>e,()=>[...r?.keys()??[]],e=>L(b,e),e=>a(b,e),e=>g(r,e),e=>g(b,e),(e,t)=>w(b,e,t),x,(t,i,r,l,c)=>{x(t,i);const f=R(),p=R(),I=g(T,t),b=g(m,t),y=t=>{const s=n=>e.getCell(i,t,n),r=g(I,t),a=o(i,t)?n(l(s,t)):void 0;if(r!=a&&w(f,t,[r,a]),!d(c)){const e=g(b,t),n=o(i,t)?c(s,t):void 0;e!=n&&w(p,t,n)}},v=e=>{r((()=>{h(f,(([,e],t)=>w(I,t,e))),h(p,((e,t)=>w(b,t,e)))}),f,p,I,b,e),u(f),u(p)};L(I,y),e.hasTable(i)&&s(e.getRowIds(i),(e=>{a(I,e)||y(e)})),v(!0),j(t),E(t,0,e.addRowListener(i,null,((e,t,n)=>y(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=>{let t,o=0;const a=[],f=R();return[(s,i,r)=>{t??=e();const d=a.pop()??n+o++;return w(f,d,[s,i,r]),v(b(i,r??[n],y),d),d},(e,o,...d)=>s(((e,t=[n])=>{const o=[],d=(e,n)=>n==i(t)?r(o,e):null===t[n]?h(e,(e=>d(e,n+1))):s([t[n],null],(t=>d(g(e,t),n+1)));return d(e,0),o})(e,o),(e=>h(e,(e=>g(f,e)[0](t,...o??[],...d))))),e=>l(g(f,e),(([,t,o])=>(b(t,o??[n],void 0,(t=>(p(t,e),c(t)?1:0))),w(f,e),i(a)<1e3&&r(a,e),o))),(e,n,o)=>l(g(f,e),(([e,,r=[]])=>{const l=(...a)=>{const c=i(a);c==i(r)?e(t,...a,...o(a)):d(r[c])?s(n[c](...a),(e=>l(...a,e))):l(...a,r[c])};l()}))]},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(),s=R(),i=R(),[r,u,I,b,j,x,,,M,S,z]=T(e,(()=>[R(),R(),R(),R()]),(e=>d(e)?void 0:e+n)),[D,O,_]=k((()=>W)),B=(e,t,n)=>l(x(e),(([o,,s])=>{if(!a(s,t)){const i=y();if(j(e)!=P(e))v(i,t);else{let e=t;for(;!d(e)&&!a(i,e);)v(i,e),e=g(o,e)}if(n)return i;w(s,t,i)}return g(s,t)})),C=(e,t)=>l(x(e),(([,,e])=>w(e,t))),P=e=>g(t,e),W={setRelationshipDefinition:(e,n,r,f)=>(w(t,e,r),M(e,n,((t,n)=>{const r=y(),f=y(),u=y(),[R,I]=x(e);h(n,(([t,n],o)=>{d(t)||(v(f,t),l(g(I,t),(e=>{p(e,o),c(e)&&w(I,t)}))),d(n)||(v(f,n),a(I,n)||w(I,n,y()),v(g(I,n),o)),v(r,o),w(R,o,n),L(g(i,e),(t=>{a(B(e,t),o)&&v(u,t)}))})),t(),h(r,(t=>O(o,[e,t]))),h(f,(t=>O(s,[e,t]))),h(u,(t=>{C(e,t),O(i,[e,t])}))}),m(f)),W),delRelationshipDefinition:e=>(w(t,e),S(e),W),getStore:r,getRelationshipIds:u,forEachRelationship:t=>I((n=>t(n,(t=>e.forEachRow(j(n),t))))),hasRelationship:b,getLocalTableId:j,getRemoteTableId:P,getRemoteRowId:(e,t)=>g(x(e)?.[0],t),getLocalRowIds:(e,t)=>f(g(x(e)?.[1],t)),getLinkedRowIds:(e,t)=>d(x(e))?[t]:f(B(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>D(n,o,[e,t]),addLocalRowIdsListener:(e,t,n)=>D(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(B(e,t),D(n,i,[e,t])),delListener:e=>(C(..._(e)),W),destroy:z,getListenerStats:()=>({})};return E(W)}));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,n="",s=t(n),r=t(!0),l=t(0),o=t(t),a="type",i="default",d=(e,t)=>e.every(t),c=(e,t)=>e.forEach(t),u=e=>e.length,f=(e,t,n)=>e.reduce(t,n),h=(e,...t)=>e.push(...t),T=e=>JSON.stringify(e,((e,t)=>v(t,Map)?f([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),b=JSON.parse,p=isFinite,v=(e,t)=>e instanceof t,g=e=>null==e,y=(e,t,n)=>g(e)?n?.():t(e),L=e=>e==s||e==r,w=e=>e.size,R=(S=w,e=>f(m(e),((e,t)=>e+S(t)),0));var S;const C=(e,t)=>e?.has(t)??!1,I=e=>g(e)||0==w(e),m=e=>[...e?.values()??[]],E=e=>e.clear(),J=(e,t)=>e?.forEach(t),F=(e,t)=>e?.delete(t),O=e=>new Map(e),j=e=>[...e?.keys()??[]],x=(e,t)=>e?.get(t),z=(e,t)=>J(e,((e,n)=>t(n,e))),M=(e,t,n)=>g(n)?(F(e,t),e):e?.set(t,n),k=(e,t,n)=>(C(e,t)||e.set(t,n()),x(e,t)),N=(e,t,n)=>{const s={},r=t??(e=>e);return J(e,((e,t)=>y(r(e),(e=>n?.(e)?0:s[t]=e)))),s},P=(e,t)=>{const n=O(),s=t??(e=>e);return J(e,((e,t)=>n.set(t,s(e)))),n},_=e=>P(e,P),B=(e,t,n,s,r=0)=>y((n?k:x)(e,t[r],r>u(t)-2?n:O),(l=>{if(r>u(t)-2)return s?.(l)&&M(e,t[r]),l;const o=B(l,t,n,s,r+1);return I(l)&&M(e,t[r]),o})),D=Object,W=D.keys,q=D.isFrozen,A=D.freeze,G=(e,t)=>!g(((e,t)=>y(e,(e=>e[t])))(e,t)),H=(e,t)=>delete e[t],K=(e,t)=>c(D.entries(e),(([e,n])=>t(n,e))),Q=e=>{return t=W(e),0==u(t);var t},U=e=>new Set(e),V=(e,t)=>e?.add(t),X=(e,t=[n])=>{const s=[],r=(e,n)=>n==u(t)?h(s,e):c([t[n],null],(t=>r(x(e,t),n+1)));return r(e,0),s},Y=e=>[e,e],Z=e=>0==((e,t=R)=>t(e[0])+t(e[1]))(e),$=()=>[O(),O()],ee=()=>[$(),$()],te=e=>{const n=t(e);return L(n)||n==l&&p(e)?n:void 0},ne=(e,t,n,s=M)=>{const r=(l=j(e),o=e=>!G(t,e),l.filter(o));var l,o;return c(W(t),(s=>n(e,s,t[s]))),c(r,(t=>s(e,t))),e},se=(e,t,n)=>g(e)||!(e=>v(e,D)&&e.constructor==D)(e)||Q(e)||q(e)?(n?.(),!1):(K(e,((n,s)=>{t(n,s)||H(e,s)})),!Q(e)),re=(e,t,n)=>M(e,t,x(e,t)==-n?void 0:n),le=()=>{let e,s,r=0,f=0;const p=O(),v=O(),R=O(),S=O(),m=O(),D=O(),W=O(),q=O(),oe=$(),ae=ee(),ie=$(),de=ee(),ce=$(),ue=ee(),fe=$(),he=$(),Te=$(),[be,pe,ve,ge,ye]=(e=>{let t,s=0;const r=[],l=O();return[(o,a,i)=>{t??=e();const d=r.pop()??n+s++;return M(l,d,[o,a,i]),V(B(a,i??[n],U),d),d},(e,n,...s)=>c(X(e,n),(e=>J(e,(e=>y(x(l,e),(([e])=>e(t,...n??[],...s))))))),e=>y(x(l,e),(([,t,s])=>(B(t,s??[n],void 0,(t=>(F(t,e),I(t)?1:0))),M(l,e),u(r)<1e3&&h(r,e),s))),(e,t)=>!d(X(e,t),g),(e,n,s)=>y(x(l,e),(([e,,r=[]])=>{const l=(...o)=>{const a=u(o);a==u(r)?e(t,...o,...s(o)):g(r[a])?c(n[a](...o),(e=>l(...o,e))):l(...o,r[a])};l()}))]})((()=>st)),Le=(t,n)=>(!e||C(D,n)||Be(n))&&se(t,((e,t)=>we(n,t,e)),(()=>Be(n))),we=(e,t,n,s)=>se(s?n:Se(n,e,t),((s,r)=>y(Re(e,t,r,s),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Be(e,t))),Re=(t,n,s,r)=>e?y(x(x(D,t),s),(e=>te(r)!=e.type?Be(t,n,s,r,e.default):r),(()=>Be(t,n,s,r))):g(te(r))?Be(t,n,s,r):r,Se=(e,t,n)=>(y(x(W,t),(([s,r])=>{J(s,((t,n)=>{G(e,n)||(e[n]=t)})),J(r,(s=>{G(e,s)||Be(t,n,s)}))})),e),Ce=e=>ne(D,e,((e,t,n)=>{const s=O(),r=U();ne(k(D,t,O),n,((e,t,n)=>{M(e,t,n),y(n.default,(e=>M(s,t,e)),(()=>V(r,t)))})),M(W,t,[s,r])}),((e,t)=>{M(D,t),M(W,t)})),Ie=e=>ne(q,e,((e,t,n)=>me(t,n)),((e,t)=>xe(t))),me=(e,t)=>ne(k(q,e,(()=>(ke(e,1),O()))),t,((t,n,s)=>Ee(e,t,n,s)),((t,n)=>ze(e,t,n))),Ee=(e,t,n,s,r)=>ne(k(t,n,(()=>(Ne(e,n,1),O()))),s,((t,s,r)=>Je(e,n,t,s,r)),((s,l)=>Me(e,t,n,s,l,r))),Je=(e,t,n,s,r)=>{C(n,s)||Pe(e,t,s,1);const l=x(n,s);r!==l&&(_e(e,t,s,l,r),M(n,s,r))},Fe=(e,t,n,s,r)=>y(x(t,n),(t=>Je(e,n,t,s,r)),(()=>Ee(e,t,n,Se({[s]:r},e,n)))),Oe=e=>{const t=n+r++;return C(e,t)?Oe(e):t},je=e=>x(q,e)??me(e,{}),xe=e=>me(e,{}),ze=(e,t,n)=>Ee(e,t,n,{},!0),Me=(e,t,n,s,r,l)=>{const o=x(x(W,e)?.[0],r);if(!g(o)&&!l)return Je(e,n,s,r,o);const a=t=>{_e(e,n,t,x(s,t)),Pe(e,n,t,-1),M(s,t)};g(o)?a(r):z(s,a),I(s)&&(Ne(e,n,-1),I(M(t,n))&&(ke(e,-1),M(q,e)))},ke=(e,t)=>re(I(p)?M(p,null,ge(ae[0][1])||ge(ae[1][1])?Ke():0):p,e,t),Ne=(e,t,n)=>re(k(v,e,(()=>O([[null,ge(de[0][1],[e])||ge(de[1][1],[e])?Qe(e):0]]))),t,n),Pe=(e,t,n,s)=>re(k(k(R,e,O),t,(()=>O([[null,ge(ue[0][1],[e,t])||ge(ue[1][1],[e,t])?Ue(e,t):0]]))),n,s),_e=(e,t,n,s,r)=>k(k(k(S,e,O),t,O),n,(()=>[s,0]))[1]=r,Be=(e,t,n,s,r)=>(h(k(k(k(m,e,O),t,O),n,(()=>[])),s),r),De=(e,t,n)=>y(x(x(x(S,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ve(e,t,n))])),We=e=>I(m)||I(he[e])?0:J(e?P(m,_):m,((t,n)=>J(t,((t,s)=>J(t,((t,r)=>pe(he[e],[n,s,r],t))))))),qe=(e,t,n,s)=>{var r,l;w(t)>1?(pe(e[0],s),pe(e[1],s)):I(t)||0==x(t,null)||(r=x(t,null),l=n(...s??[]),u(r)===u(l)&&d(r,((e,t)=>l[t]===e)))||pe(e[1],s)},Ae=e=>{const t=Z(ue[e])&&Z(de[e])&&Z(ae[e]),n=I(fe[e])&&I(ce[e])&&I(ie[e])&&I(oe[e]);if(!t||!n){const s=e?[P(p),_(v),P(R,_),P(S,_)]:[p,v,R,S];if(t||(J(s[2],((t,n)=>J(t,((t,s)=>qe(ue[e],t,Ue,[n,s]))))),J(s[1],((t,n)=>qe(de[e],t,Qe,[n]))),qe(ae[e],s[0],Ke)),!n){let t;J(s[3],((n,s)=>{let r;J(n,((n,l)=>{let o;J(n,(([n,a],i)=>{a!==n&&(pe(fe[e],[s,l,i],a,n,De),t=r=o=1)})),o&&pe(ce[e],[s,l],De)})),r&&pe(ie[e],[s],De)})),t&&pe(oe[e],void 0,De)}}},Ge=e=>(et(e),st),He=()=>N(q,(e=>N(e,N))),Ke=()=>j(q),Qe=e=>j(x(q,e)),Ue=(e,t)=>j(x(x(q,e),t)),Ve=(e,t,n)=>x(x(x(q,e),t),n),Xe=e=>Ge((()=>(e=>se(e,Le,Be))(e)?Ie(e):0)),Ye=(e,n,s,r)=>Ge((()=>y(Re(e,n,s,t(r)==o?r(Ve(e,n,s)):r),(t=>Fe(e,je(e),n,s,t))))),Ze=()=>Ge((()=>Ie({}))),$e=(e,t,n,s)=>Ge((()=>y(x(q,e),(r=>y(x(r,t),(l=>C(l,n)?Me(e,r,t,l,n,s):0)))))),et=(e,t)=>{if(-1==f)return;tt();const n=e?.();return nt(t),n},tt=()=>(f++,st),nt=e=>(f>0&&(f--,0==f&&(s=!I(S),f=1,We(1),s&&Ae(1),f=-1,e?.(N(S,(e=>N(e,(e=>N(e,(e=>[...e]),(([e,t])=>e===t))),Q)),Q),N(m,(e=>N(e,N))))&&(f=1,J(S,((e,t)=>J(e,((e,n)=>J(e,(([e],s)=>g(e)?$e(t,n,s,!0):Ye(t,n,s,e))))))),f=-1,s=!1),pe(Te[0],void 0,s),We(0),s&&Ae(0),pe(Te[1],void 0,s),f=0,c([S,m,p,v,R],E))),st),st={getTables:He,getTableIds:Ke,getTable:e=>N(x(q,e),N),getRowIds:Qe,getRow:(e,t)=>N(x(x(q,e),t)),getCellIds:Ue,getCell:Ve,hasTables:()=>!I(q),hasTable:e=>C(q,e),hasRow:(e,t)=>C(x(q,e),t),hasCell:(e,t,n)=>C(x(x(q,e),t),n),getJson:()=>T(q),getSchemaJson:()=>T(D),setTables:Xe,setTable:(e,t)=>Ge((()=>Le(t,e)?me(e,t):0)),setRow:(e,t,n)=>Ge((()=>we(e,t,n)?Ee(e,je(e),t,n):0)),addRow:(e,t,n)=>et((()=>{const s=we(e,void 0,t),r=s||n?Oe(x(q,e)):void 0;return s&&Ee(e,je(e),r,t),r})),setPartialRow:(e,t,n)=>Ge((()=>{if(we(e,t,n,1)){const s=je(e);K(n,((n,r)=>Fe(e,s,t,r,n)))}})),setCell:Ye,setJson:e=>{try{"{}"===e?Ze():Xe(b(e))}catch{}return st},setSchema:t=>Ge((()=>{if((e=(e=>se(e,(e=>se(e,(e=>{if(!se(e,((e,t)=>[a,i].includes(t))))return!1;const t=e.type;return!(!L(t)&&t!=l||(te(e.default)!=t&&H(e,i),0))})))))(t))&&(Ce(t),!I(q))){const e=He();Ze(),Xe(e)}})),delTables:Ze,delTable:e=>Ge((()=>C(q,e)?xe(e):0)),delRow:(e,t)=>Ge((()=>y(x(q,e),(n=>C(n,t)?ze(e,n,t):0)))),delCell:$e,delSchema:()=>Ge((()=>{Ce({}),e=!1})),transaction:et,startTransaction:tt,finishTransaction:nt,forEachTable:e=>J(q,((t,n)=>e(n,(e=>J(t,((t,n)=>e(n,(e=>z(t,e))))))))),forEachRow:(e,t)=>J(x(q,e),((e,n)=>t(n,(t=>z(e,t))))),forEachCell:(e,t,n)=>z(x(x(q,e),t),n),addTablesListener:(e,t)=>be(e,oe[t?1:0]),addTableIdsListener:(e,t,n)=>be(e,ae[n?1:0][t?1:0]),addTableListener:(e,t,n)=>be(t,ie[n?1:0],[e]),addRowIdsListener:(e,t,n,s)=>be(t,de[s?1:0][n?1:0],[e]),addRowListener:(e,t,n,s)=>be(n,ce[s?1:0],[e,t]),addCellIdsListener:(e,t,n,s,r)=>be(n,ue[r?1:0][s?1:0],[e,t]),addCellListener:(e,t,n,s,r)=>be(s,fe[r?1:0],[e,t,n]),addInvalidCellListener:(e,t,n,s,r)=>be(s,he[r?1:0],[e,t,n]),addWillFinishTransactionListener:e=>be(e,Te[0]),addDidFinishTransactionListener:e=>be(e,Te[1]),callListener:e=>(ye(e,[Ke,Qe,Ue],(e=>g(e[2])?[]:Y(Ve(...e)))),st),delListener:e=>(ve(e),st),getListenerStats:()=>({}),createStore:le};return A(st)};e.createStore=le,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),o=t(0),l=t(t),a="type",i="default",c=(e,t)=>e.forEach(t),d=(e,t)=>e.map(t),u=e=>e.length,f=(e,t,n)=>e.slice(t,n),h=(e,...t)=>e.push(...t),T=e=>JSON.stringify(e,((e,t)=>{return v(t,Map)?(n=[...t],s=(e,[t,n])=>(e[t]=n,e),r={},n.reduce(s,r)):t;var n,s,r})),p=JSON.parse,b=isFinite,v=(e,t)=>e instanceof t,g=e=>null==e,y=(e,t,n)=>g(e)?n?.():t(e),w=e=>e==s||e==r,R=(e,t)=>e?.has(t)??!1,S=e=>g(e)||0==(e=>e.size)(e),C=e=>e.clear(),I=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),m=e=>new Map(e),E=e=>[...e?.keys()??[]],J=(e,t)=>e?.get(t),F=(e,t)=>I(e,((e,n)=>t(n,e))),O=(e,t,n)=>g(n)?(L(e,t),e):e?.set(t,n),j=(e,t,n)=>(R(e,t)||O(e,t,n()),J(e,t)),x=(e,t,n)=>{const s={},r=t??(e=>e);return I(e,((e,t)=>y(r(e),(e=>n?.(e)?0:s[t]=e)))),s},z=(e,t)=>{const n=m(),s=t??(e=>e);return I(e,((e,t)=>n.set(t,s(e)))),n},M=e=>z(e,z),k=(e,t,n,s,r=0)=>y((n?j:J)(e,t[r],r>u(t)-2?n:m),(o=>{if(r>u(t)-2)return s?.(o)&&O(e,t[r]),o;const l=k(o,t,n,s,r+1);return S(o)&&O(e,t[r]),l})),N=Object,P=N.keys,_=N.isFrozen,B=N.freeze,D=(e,t)=>!g(((e,t)=>y(e,(e=>e[t])))(e,t)),W=(e,t)=>delete e[t],q=(e,t)=>c(N.entries(e),(([e,n])=>t(n,e))),A=e=>{return t=P(e),0==u(t);var t},G=e=>new Set(e),H=(e,t)=>e?.add(t),K=e=>{let t,s=0;const r=[],o=m();return[(l,a,i)=>{t??=e();const c=r.pop()??n+s++;return O(o,c,[l,a,i]),H(k(a,i??[n],G),c),c},(e,s,...r)=>c(((e,t=[n])=>{const s=[],r=(e,n)=>n==u(t)?h(s,e):null===t[n]?I(e,(e=>r(e,n+1))):c([t[n],null],(t=>r(J(e,t),n+1)));return r(e,0),s})(e,s),(e=>I(e,(e=>J(o,e)[0](t,...s??[],...r))))),e=>y(J(o,e),(([,t,s])=>(k(t,s??[n],void 0,(t=>(L(t,e),S(t)?1:0))),O(o,e),u(r)<1e3&&h(r,e),s))),(e,n,s)=>y(J(o,e),(([e,,r=[]])=>{const o=(...l)=>{const a=u(l);a==u(r)?e(t,...l,...s(l)):g(r[a])?c(n[a](...l),(e=>o(...l,e))):o(...l,r[a])};o()}))]},Q=e=>[e,e],U=()=>[m(),m()],V=e=>{const n=t(e);return w(n)||n==o&&b(e)?n:void 0},X=e=>n+e,Y=(e,t,n,s=O)=>{const r=(o=E(e),l=e=>!D(t,e),o.filter(l));var o,l;return c(P(t),(s=>n(e,s,t[s]))),c(r,(t=>s(e,t))),e},Z=(e,t,n)=>g(e)||!(e=>v(e,N)&&e.constructor==N)(e)||A(e)||_(e)?(n?.(),!1):(q(e,((n,s)=>{t(n,s)||W(e,s)})),!A(e)),$=(e,t,n)=>O(e,t,J(e,t)==-n?void 0:n),ee=()=>{let e,s,r=0,b=0;const v=m(),k=m(),N=m(),P=m(),_=m(),te=m(),ne=m(),se=m(),re=U(),oe=U(),le=U(),ae=U(),ie=U(),ce=U(),de=U(),ue=U(),fe=U(),he=U(),[Te,pe,be,ve]=K((()=>et)),ge=(t,n)=>(!e||R(te,n)||Pe(n))&&Z(t,((e,t)=>ye(n,t,e)),(()=>Pe(n))),ye=(e,t,n,s)=>Z(s?n:Re(n,e,t),((s,r)=>y(we(e,t,r,s),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Pe(e,t))),we=(t,n,s,r)=>e?y(J(J(te,t),s),(e=>V(r)!=e.type?Pe(t,n,s,r,e.default):r),(()=>Pe(t,n,s,r))):g(V(r))?Pe(t,n,s,r):r,Re=(e,t,n)=>(y(J(ne,t),(([s,r])=>{I(s,((t,n)=>{D(e,n)||(e[n]=t)})),I(r,(s=>{D(e,s)||Pe(t,n,s)}))})),e),Se=e=>Y(te,e,((e,t,n)=>{const s=m(),r=G();Y(j(te,t,m),n,((e,t,n)=>{O(e,t,n),y(n.default,(e=>O(s,t,e)),(()=>H(r,t)))})),O(ne,t,[s,r])}),((e,t)=>{O(te,t),O(ne,t)})),Ce=e=>Y(se,e,((e,t,n)=>Ie(t,n)),((e,t)=>Oe(t))),Ie=(e,t)=>Y(j(se,e,(()=>(ze(e,1),m()))),t,((t,n,s)=>Le(e,t,n,s)),((t,n)=>je(e,t,n))),Le=(e,t,n,s,r)=>Y(j(t,n,(()=>(Me(e,n,1),m()))),s,((t,s,r)=>me(e,n,t,s,r)),((s,o)=>xe(e,t,n,s,o,r))),me=(e,t,n,s,r)=>{R(n,s)||ke(e,t,s,1);const o=J(n,s);r!==o&&(Ne(e,t,s,o,r),O(n,s,r))},Ee=(e,t,n,s,r)=>y(J(t,n),(t=>me(e,n,t,s,r)),(()=>Le(e,t,n,Re({[s]:r},e,n)))),Je=e=>{const t=n+r++;return R(e,t)?Je(e):t},Fe=e=>J(se,e)??Ie(e,{}),Oe=e=>Ie(e,{}),je=(e,t,n)=>Le(e,t,n,{},!0),xe=(e,t,n,s,r,o)=>{const l=J(J(ne,e)?.[0],r);if(!g(l)&&!o)return me(e,n,s,r,l);const a=t=>{Ne(e,n,t,J(s,t)),ke(e,n,t,-1),O(s,t)};g(l)?a(r):F(s,a),S(s)&&(Me(e,n,-1),S(O(t,n))&&(ze(e,-1),O(se,e)))},ze=(e,t)=>$(v,e,t),Me=(e,t,n)=>$(j(k,e,m),t,n),ke=(e,t,n,s)=>$(j(j(N,e,m),t,m),n,s),Ne=(e,t,n,s,r)=>j(j(j(P,e,m),t,m),n,(()=>[s,0]))[1]=r,Pe=(e,t,n,s,r)=>(h(j(j(j(_,e,m),t,m),n,(()=>[])),s),r),_e=(e,t,n)=>y(J(J(J(P,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Q(Ue(e,t,n))])),Be=e=>S(_)||S(fe[e])?0:I(e?z(_,M):_,((t,n)=>I(t,((t,s)=>I(t,((t,r)=>pe(fe[e],[n,s,r],t))))))),De=(e,t,n)=>{if(!S(t))return pe(e,n),1},We=e=>{const t=S(ie[e]),n=S(de[e])&&S(ae[e])&&t&&S(oe[e]),s=S(ue[e])&&S(ce[e])&&S(le[e])&&S(re[e]);if(!n||!s){const r=e?[z(v),M(k),z(N,M),z(P,M)]:[v,k,N,P];if(!n){I(r[2],((t,n)=>I(t,((t,s)=>De(de[e],t,[n,s])))));const n=G();I(r[1],((s,r)=>{De(ae[e],s,[r])&&!t&&(pe(ie[e],[r,null]),H(n,r))})),t||I(r[3],((t,s)=>{if(!R(n,s)){const n=G();I(t,(e=>I(e,(([t,s],r)=>s!==t?H(n,r):L(e,r))))),I(n,(t=>pe(ie[e],[s,t])))}})),De(oe[e],r[0])}if(!s){let t;I(r[3],((n,s)=>{let r;I(n,((n,o)=>{let l;I(n,(([n,a],i)=>{a!==n&&(pe(ue[e],[s,o,i],a,n,_e),t=r=l=1)})),l&&pe(ce[e],[s,o],_e)})),r&&pe(le[e],[s],_e)})),t&&pe(re[e],void 0,_e)}}},qe=(e,...t)=>(Ye((()=>e(...d(t,X)))),et),Ae=()=>x(se,(e=>x(e,x))),Ge=()=>E(se),He=e=>E(J(se,X(e))),Ke=(e,t,n,s=0,r)=>{const o=[];return F(J(se,X(e)),((e,n)=>h(o,[g(t)?e:J(n,X(t)),e]))),d(f(o.sort((([e],[t])=>(e<t?-1:1)*(n?-1:1))),s,g(r)?r:s+r),(([,e])=>e))},Qe=(e,t)=>E(J(J(se,X(e)),X(t))),Ue=(e,t,n)=>J(J(J(se,X(e)),X(t)),X(n)),Ve=e=>qe((()=>(e=>Z(e,ge,Pe))(e)?Ce(e):0)),Xe=()=>qe((()=>Ce({}))),Ye=(e,t)=>{if(-1==b)return;Ze();const n=e?.();return $e(t),n},Ze=()=>(b++,et),$e=e=>(b>0&&(b--,0==b&&(s=!S(P),b=1,Be(1),s&&We(1),b=-1,e?.(x(P,(e=>x(e,(e=>x(e,(e=>[...e]),(([e,t])=>e===t))),A)),A),x(_,(e=>x(e,x))))&&(b=1,I(P,((e,t)=>I(e,((e,n)=>I(e,(([e],s)=>((e,t,n,s,r)=>g(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(et,t,n,s,e))))))),b=-1,s=!1),pe(he[0],void 0,s),Be(0),s&&We(0),pe(he[1],void 0,s),b=0,c([P,_,v,k,N],C))),et),et={getTables:Ae,getTableIds:Ge,getTable:e=>x(J(se,X(e)),x),getRowIds:He,getSortedRowIds:Ke,getRow:(e,t)=>x(J(J(se,X(e)),X(t))),getCellIds:Qe,getCell:Ue,hasTables:()=>!S(se),hasTable:e=>R(se,X(e)),hasRow:(e,t)=>R(J(se,X(e)),X(t)),hasCell:(e,t,n)=>R(J(J(se,X(e)),X(t)),X(n)),getJson:()=>T(se),getSchemaJson:()=>T(te),setTables:Ve,setTable:(e,t)=>qe((e=>ge(t,e)?Ie(e,t):0),e),setRow:(e,t,n)=>qe(((e,t)=>ye(X(e),X(t),n)?Le(X(e),Fe(X(e)),X(t),n):0),e,t),addRow:(e,t,n)=>Ye((()=>{e=X(e);const s=ye(e,void 0,t),r=s||n?Je(J(se,e)):void 0;return s&&Le(e,Fe(e),r,t),r})),setPartialRow:(e,t,n)=>qe(((e,t)=>{if(ye(e,t,n,1)){const s=Fe(e);q(n,((n,r)=>Ee(e,s,t,r,n)))}}),e,t),setCell:(e,n,s,r)=>qe(((e,n,s)=>y(we(e,n,s,t(r)==l?r(Ue(e,n,s)):r),(t=>Ee(e,Fe(e),n,s,t)))),e,n,s),setJson:e=>{try{"{}"===e?Xe():Ve(p(e))}catch{}return et},setSchema:t=>qe((()=>{if((e=(e=>Z(e,(e=>Z(e,(e=>{if(!Z(e,((e,t)=>[a,i].includes(t))))return!1;const t=e.type;return!(!w(t)&&t!=o||(V(e.default)!=t&&W(e,i),0))})))))(t))&&(Se(t),!S(se))){const e=Ae();Xe(),Ve(e)}})),delTables:Xe,delTable:e=>qe((e=>R(se,e)?Oe(e):0),e),delRow:(e,t)=>qe(((e,t)=>y(J(se,e),(n=>R(n,t)?je(e,n,t):0))),e,t),delCell:(e,t,n,s)=>qe(((e,t,n)=>y(J(se,e),(r=>y(J(r,t),(o=>R(o,n)?xe(e,r,t,o,n,s):0))))),e,t,n),delSchema:()=>qe((()=>{Se({}),e=!1})),transaction:Ye,startTransaction:Ze,finishTransaction:$e,forEachTable:e=>I(se,((t,n)=>e(n,(e=>I(t,((t,n)=>e(n,(e=>F(t,e))))))))),forEachRow:(e,t)=>I(J(se,X(e)),((e,n)=>t(n,(t=>F(e,t))))),forEachCell:(e,t,n)=>F(J(J(se,X(e)),X(t)),n),addSortedRowIdsListener:(e,t,n,s,r,o,l)=>{let a=Ke(e,t,n,s,r);return Te((()=>{const l=Ke(e,t,n,s,r);var i,c,d;c=a,u(i=l)===u(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(a=l,o(et,e,t,n,s,r,a))}),ie[l?1:0],[e,t])},addWillFinishTransactionListener:e=>Te(e,he[0]),addDidFinishTransactionListener:e=>Te(e,he[1]),callListener:e=>(ve(e,[Ge,He,Qe],(e=>g(e[2])?[]:Q(Ue(...e)))),et),delListener:e=>(be(e),et),getListenerStats:()=>({}),createStore:ee};return q({Tables:[0,re],TableIds:[0,oe],Table:[1,le],RowIds:[1,ae],Row:[2,ce],CellIds:[2,de],Cell:[3,ue],InvalidCell:[3,fe]},(([e,t],n)=>{et["add"+n+"Listener"]=(...n)=>Te(n[e],t[n[e+1]?1:0],e>0?f(n,0,e):void 0)})),B(et)};e.createStore=ee,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),l=s(s),i="type",d="default",c="utf8",u=(e,t)=>e.includes(t),h=(e,t)=>e.every(t),f=(e,t)=>T(e)===T(t)&&h(e,((e,s)=>t[s]===e)),g=(e,t)=>h(e,((s,n)=>0==n||t(e[n-1],s)<=0)),R=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),w=e=>I(e,((e,t)=>e+t),0),T=e=>e.length,v=e=>0==T(e),I=(e,t,s)=>e.reduce(t,s),p=(e,...t)=>e.push(...t),b=e=>e.pop(),y=e=>JSON.stringify(e,((e,t)=>k(t,Map)?I([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),S=JSON.parse,C=Math.max,m=Math.min,E=isFinite,k=(e,t)=>e instanceof t,M=e=>null==e,x=(e,t,s)=>M(e)?s?.():t(e),D=e=>e==o||e==r,A=e=>s(e)==l,F=()=>{},P=e=>e.size,J=(Q=P,e=>I(z(e),((e,t)=>e+Q(t)),0));var Q;const j=(e,t)=>e?.has(t)??!1,O=e=>M(e)||0==P(e),z=e=>[...e?.values()??[]],N=e=>e.clear(),W=(e,t)=>e?.forEach(t),B=(e,t)=>e?.delete(t),_=e=>new Map(e),q=e=>[...e?.keys()??[]],H=(e,t)=>e?.get(t),G=(e,t)=>W(e,((e,s)=>t(s,e))),K=(e,t,s)=>M(s)?(B(e,t),e):e?.set(t,s),U=(e,t,s)=>(j(e,t)||e.set(t,s()),H(e,t)),V=(e,t,s)=>{const n={},o=t??(e=>e);return W(e,((e,t)=>x(o(e),(e=>s?.(e)?0:n[t]=e)))),n},X=(e,t)=>{const s=_(),n=t??(e=>e);return W(e,((e,t)=>s.set(t,n(e)))),s},Y=e=>X(e,X),Z=(e,t,s,n,o=0)=>x((s?U:H)(e,t[o],o>T(t)-2?s:_),(r=>{if(o>T(t)-2)return n?.(r)&&K(e,t[o]),r;const a=Z(r,t,s,n,o+1);return O(r)&&K(e,t[o]),a})),$=e=>new Set(e),ee=(e,t)=>e?.add(t),te=(e,t,s)=>{const n=e.hasRow,o=_(),r=_(),a=_(),l=_(),i=_(),d=(t,s,...n)=>{const o=U(i,t,$);return L(n,(t=>ee(o,t)&&s&&e.callListener(t))),n},c=(t,...s)=>x(H(i,t),(n=>{L(v(s)?z(n):s,(t=>{e.delListener(t),B(n,t)})),O(n)&&K(i,t)})),u=(e,s)=>{K(o,e,s),j(r,e)||(K(r,e,t()),K(a,e,_()),K(l,e,_()))},h=e=>{K(o,e),K(r,e),K(a,e),K(l,e),c(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),u,(t,o,r,i,h)=>{u(t,o);const f=_(),g=_(),R=H(a,t),w=H(l,t),T=t=>{const r=s=>e.getCell(o,t,s),a=H(R,t),l=n(o,t)?s(i(r,t)):void 0;if(a!=l&&K(f,t,[a,l]),!M(h)){const e=H(w,t),s=n(o,t)?h(r,t):void 0;e!=s&&K(g,t,s)}},v=e=>{r((()=>{W(f,(([,e],t)=>K(R,t,e))),W(g,((e,t)=>K(w,t,e)))}),f,g,R,w,e),N(f),N(g)};G(R,T),e.hasTable(o)&&L(e.getRowIds(o),(e=>{j(R,e)||T(e)})),v(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,s)=>T(s))),e.addTableListener(o,(()=>v())))},h,()=>G(i,h),d,c]},se=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),ne=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},oe=(e,t=[n])=>{const s=[],o=(e,n)=>n==T(t)?p(s,e):L([t[n],null],(t=>o(H(e,t),n+1)));return o(e,0),s},re=e=>{let t,s=0;const o=[],r=_();return[(a,l,i)=>{t??=e();const d=b(o)??n+s++;return K(r,d,[a,l,i]),ee(Z(l,i??[n],$),d),d},(e,s,...n)=>L(oe(e,s),(e=>W(e,(e=>x(H(r,e),(([e])=>e(t,...s??[],...n))))))),e=>x(H(r,e),(([,t,s])=>(Z(t,s??[n],void 0,(t=>(B(t,e),O(t)?1:0))),K(r,e),T(o)<1e3&&p(o,e),s))),(e,t)=>!h(oe(e,t),M),(e,s,n)=>x(H(r,e),(([e,,o=[]])=>{const r=(...a)=>{const l=T(a);l==T(o)?e(t,...a,...n(a)):M(o[l])?L(s[l](...a),(e=>r(...a,e))):r(...a,o[l])};r()}))]},ae=Object,le=ae.keys,ie=ae.isFrozen,de=ae.freeze,ce=(e,t)=>!M(((e,t)=>x(e,(e=>e[t])))(e,t)),ue=(e,t)=>delete e[t],he=(e,t)=>L(ae.entries(e),(([e,s])=>t(s,e))),fe=e=>v(le(e)),ge=e=>{const t=s(e);return D(t)||t==a&&E(e)?t:void 0},Re=(e,t,s,n,o)=>M(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Le=ne((e=>{let t,s,o,r=100,a=_(),l=1;const i=_(),d=_(),[c,h,f]=re((()=>z)),g=_(),R=_(),w=[],I=[],y=(t,s)=>{l=0,e.transaction((()=>W(H(g,s),((s,n)=>W(s,((s,o)=>W(s,((s,r)=>Re(e,n,o,r,s[t]))))))))),l=1},S=e=>{K(g,e),K(R,e),h(d,[e])},C=(e,t)=>L(((e,t)=>e.splice(0,t))(e,t??T(e)),S),m=()=>C(w,T(w)-r),E=e.addCellListener(null,null,null,((e,s,n,r,i,d)=>{if(l){x(t,(()=>{p(w,t),m(),C(I),t=void 0,o=1}));const e=U(a,s,_),l=U(e,n,_),c=U(l,r,(()=>[d,void 0]));c[1]=i,c[0]===i&&O(K(l,r))&&O(K(e,n))&&O(K(a,s))&&(t=b(w),o=1),F()}})),k=(e="")=>(M(t)&&(t=n+s++,K(g,t,a),J(t,e),a=_(),o=1),t),D=()=>{v(w)||(I.unshift(k()),y(0,t),t=b(w),o=1)},A=()=>{v(I)||(p(w,t),t=I.shift(),y(1,t),o=1)},F=()=>{o&&(h(i),o=0)},P=e=>{const t=k(e);return F(),t},J=(e,t)=>(Q(e)&&H(R,e)!==t&&(K(R,e,t),h(d,[e])),z),Q=e=>j(g,e),z={setSize:e=>(r=e,m(),z),addCheckpoint:P,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...I]],forEachCheckpoint:e=>G(R,e),hasCheckpoint:Q,getCheckpoint:e=>H(R,e),goBackward:()=>(D(),F(),z),goForward:()=>(A(),F(),z),goTo:e=>{const s=u(w,e)?D:u(I,e)?A:null;for(;!M(s)&&e!=t;)s();return F(),z},addCheckpointIdsListener:e=>c(e,i),addCheckpointListener:(e,t)=>c(t,d,[e]),delListener:e=>(f(e),z),clear:()=>(C(w),C(I),M(t)||S(t),t=void 0,s=0,P(),z),destroy:()=>{e.delListener(E)},getListenerStats:()=>({})};return de(z.clear())})),we=(e,t)=>e<t?-1:1,Te=ne((e=>{const t=_(),s=_(),[o,r,a,l,i,d,c,,u,h,f]=te(e,_,(e=>M(e)?n:e+n)),[L,w,T]=re((()=>I)),v=(t,s,n)=>{const o=i(t);W(n,((t,n)=>s(n,(s=>W(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},I={setIndexDefinition:(e,n,o,r,a,l=we)=>{const i=M(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,h,f)=>{let L=0;const T=$(),v=$(),I=d(e);if(W(o,(([e,t],s)=>{M(e)||(ee(T,e),x(H(I,e),(t=>{B(t,s),O(t)&&(K(I,e),L=1)}))),M(t)||(ee(T,t),j(I,t)||(K(I,t,$()),L=1),ee(H(I,t),s),M(r)||ee(v,t))})),n(),O(h)||(f?G(I,(e=>ee(v,e))):G(a,(e=>x(H(u,e),(e=>ee(v,e))))),W(v,(e=>{const t=(t,s)=>l(H(h,t),H(h,s),e),s=[...H(I,e)];g(s,t)||(K(I,e,$(R(s,t))),ee(T,e))}))),(L||f)&&!M(i)){const t=[...I];g(t,i)||(c(e,_(R(t,i))),L=1)}L&&w(t,[e]),W(T,(t=>w(s,[e,t])))}),se(o),x(r,se)),I},delIndexDefinition:e=>(h(e),I),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>v(t,e,s))))),forEachSlice:(e,t)=>v(e,t,d(e)),hasIndex:l,hasSlice:(e,t)=>j(d(e),t),getTableId:i,getSliceIds:e=>q(d(e)),getSliceRowIds:(e,t)=>z(H(d(e),t)),addSliceIdsListener:(e,s)=>L(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>L(n,s,[e,t]),delListener:e=>(T(e),I),destroy:f,getListenerStats:()=>({})};return de(I)})),ve=_([["avg",[(e,t)=>w(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=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ie=(e,t,s,n,o,r=!1)=>{if(O(s))return;const[a,l,i,d]=o;return r||=M(e),W(n,(([s,n])=>{r||(e=M(s)?l?.(e,n,t++):M(n)?i?.(e,s,t--):d?.(e,n,s,t),r||=M(e))})),r?a(z(s),P(s)):e},pe=ne((e=>{const t=_(),[s,o,r,a,l,i,d,,c,u,h]=te(e,F,(e=>isNaN(e)||M(e)||!0===e||!1===e||e===n?void 0:1*e)),[f,g,R]=re((()=>L)),L={setMetricDefinition:(e,s,n,o,r,a,l)=>{const u=A(n)?[n,r,a,l]:H(ve,n)??H(ve,"sum");return c(e,s,((s,n,o,r,a,l)=>{const c=i(e),h=P(r);l||=M(c),s();let f=Ie(c,h,r,n,u,l);E(f)||(f=void 0),f!=c&&(d(e,f),g(t,[e],f,c))}),se(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:l,getMetric:i,addMetricListener:(e,s)=>f(s,t,[e]),delListener:e=>(R(e),L),destroy:h,getListenerStats:()=>({})};return de(L)})),be=(e,t,s,o,r)=>{let a,l=0;const i={load:async s=>{if(2!=l){l=1;const o=await t();M(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:()=>(x(a,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return de(i)},ye="storage",Se=globalThis.window,Ce=(e,t,s)=>{let n;return be(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}))},me=e=>e.headers.get("ETag"),Ee=ne((e=>{const[t,s,o,r,a,,,l,,i,d,c,u]=te(e,(()=>!0),F),g=e.createStore(),w=e.createStore(),I=e.createStore(),b=_(),y=(e,t,...s)=>L(s,(s=>ee(U(U(b,t,_),e,$),s))),S=(e,t,s)=>c(e,0,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),C={setQueryDefinition:(t,s,o)=>{let r;l(t,s),g.delTable(t),w.delTable(t),I.delTable(t);const a=[],i=[[null,[s,null,null,[],_()]]],d=[],b=[],m=[],E=[];o({select:(e,t)=>{const s=A(e)?[T(a)+n,e]:[M(t)?e:t,s=>s(e,t)];return p(a,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=M(s)||A(t)?null:t,o=M(n)?t:s,r=[e,[e,n,A(o)?o:e=>e(o),[],_()]];return p(i,r),{as:e=>r[0]=e}},where:(e,t,s)=>p(d,A(e)?e:M(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,A(t)?[t,s,n,o]:H(ve,t)??[(e,t)=>t]]];return p(b,r),{as:e=>r[0]=e}},having:(e,t)=>p(m,A(e)?e:s=>s(e)===t),order:(e,t)=>p(E,[A(e)?e:t=>t(e)??0,t]),limit:(e,t)=>{r=M(t)?[0,e]:[e,t]}});const k=_(a);if(O(k))return C;const D=_(i);G(D,((e,[,t])=>x(H(D,t),(({3:t})=>M(e)?0:p(t,e)))));const F=_(b);let J=g,Q=w;if(v(E)&&M(r))Q=I;else{S(t,Q,I);const e=(e,t)=>{const n=H(s,e)??[],o=H(s,t)??[],r=E.findIndex(((e,t)=>n[t]!==o[t]));return r<0?0:we(n[r],o[r])*(E[r][1]?-1:1)},s=_(),n=_();y(Q,t,v(E)?Q.addRowIdsListener(t,(()=>N(n))):Q.addRowListener(t,null,((e,o,r)=>{let a=null;if(Q.hasRow(t,r)){const e=H(s,r)??[],o=Q.getRow(t,r),i=e=>o[e];if(l=([e])=>e(i,r),a=E.map(l),f(e,a))return void(H(n,r)&&I.setRow(t,r,o))}var l;K(s,r,a),N(n)})),Q.addTableListener(t,(()=>{if(O(n)&&(I.delTable(t),Q.hasTable(t))){const s=Q.getTable(t);L(R(le(s),e),(e=>K(n,e,0))),L(x(r,(([e,t])=>{return s=q(n),o=e,r=e+t,s.slice(o,r);var s,o,r}),(()=>q(n))),(e=>{I.setRow(t,e,s[e]),K(n,e,1)}))}})))}if(O(F)&&v(m))J=Q;else{S(t,J,Q);const e=_();G(F,((t,[s,n])=>ee(U(e,s,$),[t,n])));const s=$();G(k,(t=>j(e,t)?0:ee(s,t)));const n=_(),o=(s,n,o,r)=>x(s,(([s,a,l,i])=>{G(n,((t,[n])=>{const a=U(s,t,_),l=H(a,o),d=r?void 0:n;if(l!==d){const s=$([[l,d]]),n=P(a);K(a,o,d),W(H(e,t),(([e,t])=>{const o=Ie(i[e],n,a,s,t);i[e]=M(ge(o))?null:o}))}})),(O(a)||!h(m,(e=>e((e=>i[e]))))?Q.delRow:Q.setRow)(t,l,i)}));y(J,t,J.addRowListener(t,null,((r,a,l,i)=>{const d=[],c=[],u=_(),h=J.hasRow(t,l);let f=!h;W(s,(e=>{const[s,n,o]=i(t,l,e);p(d,n),p(c,o),f||=s})),G(e,(e=>{const[s,,n]=i(t,l,e);(f||s)&&K(u,e,[n])})),f&&o(Z(n,d,void 0,(([,e,s])=>{if(B(e,l),O(e))return Q.delRow(t,s),1})),u,l,1),h&&o(Z(n,c,(()=>{const e={};return W(s,(s=>e[s]=J.getCell(t,l,s))),[_(),$(),Q.addRow(t,e,1),e]}),(([,e])=>{ee(e,l)})),u,l)})))}S(t,e,J);const z=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);L(a,(s=>{const[o,,r,a,i]=H(D,s),d=r?.(l,n),[h,f]=H(i,n)??[];d!=h&&(M(f)||u(t,f),K(i,n,M(d)?null:[d,...c(t,1,e.addRowListener(o,d,(()=>z(n,o,d,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...M(o)?[s,n,t]:t===s?[s,n,o]:[H(D,t)?.[0],H(H(D,t)?.[4],n)?.[0],o]);J.transaction((()=>h(d,(e=>e(o)))?G(k,((e,s)=>Re(J,t,n,e,s(o,n)))):J.delRow(t,n)))})(n)},{3:V}=H(D,null);return J.transaction((()=>c(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?z(r,s,r,V):(J.delRow(t,r),W(D,(({4:e})=>x(H(e,r),(([,s])=>{u(t,s),K(e,r)})))))}))))),C},delQueryDefinition:e=>(G(H(b,e),((e,t)=>W(t,(t=>e.delListener(t))))),i(e),C),getStore:t,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:a,getResultTable:e=>I.getTable(e),getResultRowIds:e=>I.getRowIds(e),getResultRow:(e,t)=>I.getRow(e,t),getResultCellIds:(e,t)=>I.getCellIds(e,t),getResultCell:(e,t,s)=>I.getCell(e,t,s),hasResultTable:e=>I.hasTable(e),hasResultRow:(e,t)=>I.hasRow(e,t),hasResultCell:(e,t,s)=>I.hasCell(e,t,s),forEachResultTable:e=>I.forEachTable(e),forEachResultRow:(e,t)=>I.forEachRow(e,t),forEachResultCell:(e,t,s)=>I.forEachCell(e,t,s),addResultTableListener:(e,t)=>I.addTableListener(e,((e,...s)=>t(C,...s))),addResultRowIdsListener:(e,t,s)=>I.addRowIdsListener(e,((e,...s)=>t(C,...s)),s),addResultRowListener:(e,t,s)=>I.addRowListener(e,t,((e,...t)=>s(C,...t))),addResultCellIdsListener:(e,t,s,n)=>I.addCellIdsListener(e,t,((e,...t)=>s(C,...t)),n),addResultCellListener:(e,t,s,n)=>I.addCellListener(e,t,s,((e,...t)=>n(C,...t))),delListener:e=>(I.delListener(e),C),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=I.getListenerStats();return n}};return de(C)})),ke=ne((e=>{const t=_(),s=_(),o=_(),r=_(),[a,l,i,d,c,u,,,h,f,g]=te(e,(()=>[_(),_(),_(),_()]),(e=>M(e)?void 0:e+n)),[R,L,w]=re((()=>p)),T=(e,t,s)=>x(u(e),(([n,,o])=>{if(!j(o,t)){const r=$();if(c(e)!=I(e))ee(r,t);else{let e=t;for(;!M(e)&&!j(r,e);)ee(r,e),e=H(n,e)}if(s)return r;K(o,t,r)}return H(o,t)})),v=(e,t)=>x(u(e),(([,,e])=>K(e,t))),I=e=>H(t,e),p={setRelationshipDefinition:(e,n,a,l)=>(K(t,e,a),h(e,n,((t,n)=>{const a=$(),l=$(),i=$(),[d,c]=u(e);W(n,(([t,s],n)=>{M(t)||(ee(l,t),x(H(c,t),(e=>{B(e,n),O(e)&&K(c,t)}))),M(s)||(ee(l,s),j(c,s)||K(c,s,$()),ee(H(c,s),n)),ee(a,n),K(d,n,s),G(H(r,e),(t=>{j(T(e,t),n)&&ee(i,t)}))})),t(),W(a,(t=>L(s,[e,t]))),W(l,(t=>L(o,[e,t]))),W(i,(t=>{v(e,t),L(r,[e,t])}))}),se(l)),p),delRelationshipDefinition:e=>(K(t,e),f(e),p),getStore:a,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>H(u(e)?.[0],t),getLocalRowIds:(e,t)=>z(H(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>M(u(e))?[t]:z(T(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>R(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>R(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(T(e,t),R(s,r,[e,t])),delListener:e=>(v(...w(e)),p),destroy:g,getListenerStats:()=>({})};return de(p)})),Me=e=>[e,e],xe=e=>0==((e,t=J)=>t(e[0])+t(e[1]))(e),De=()=>[_(),_()],Ae=()=>[De(),De()],Fe=(e,t,s,n=K)=>{const o=(r=q(e),a=e=>!ce(t,e),r.filter(a));var r,a;return L(le(t),(n=>s(e,n,t[n]))),L(o,(t=>n(e,t))),e},Pe=(e,t,s)=>M(e)||!(e=>k(e,ae)&&e.constructor==ae)(e)||fe(e)||ie(e)?(s?.(),!1):(he(e,((s,n)=>{t(s,n)||ue(e,n)})),!fe(e)),Je=(e,t,s)=>K(e,t,H(e,t)==-s?void 0:s),Qe=()=>{let e,t,s=0,o=0;const r=_(),l=_(),c=_(),h=_(),g=_(),R=_(),w=_(),T=_(),v=De(),I=Ae(),b=De(),C=Ae(),m=De(),E=Ae(),k=De(),F=De(),J=De(),[Q,z,B,Z,te]=re((()=>et)),se=(t,s)=>(!e||j(R,s)||ke(s))&&Pe(t,((e,t)=>ne(s,t,e)),(()=>ke(s))),ne=(e,t,s,n)=>Pe(n?s:ae(s,e,t),((n,o)=>x(oe(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>ke(e,t))),oe=(t,s,n,o)=>e?x(H(H(R,t),n),(e=>ge(o)!=e.type?ke(t,s,n,o,e.default):o),(()=>ke(t,s,n,o))):M(ge(o))?ke(t,s,n,o):o,ae=(e,t,s)=>(x(H(w,t),(([n,o])=>{W(n,((t,s)=>{ce(e,s)||(e[s]=t)})),W(o,(n=>{ce(e,n)||ke(t,s,n)}))})),e),le=e=>Fe(R,e,((e,t,s)=>{const n=_(),o=$();Fe(U(R,t,_),s,((e,t,s)=>{K(e,t,s),x(s.default,(e=>K(n,t,e)),(()=>ee(o,t)))})),K(w,t,[n,o])}),((e,t)=>{K(R,t),K(w,t)})),ie=e=>Fe(T,e,((e,t,s)=>Re(t,s)),((e,t)=>pe(t))),Re=(e,t)=>Fe(U(T,e,(()=>(Se(e,1),_()))),t,((t,s,n)=>Le(e,t,s,n)),((t,s)=>be(e,t,s))),Le=(e,t,s,n,o)=>Fe(U(t,s,(()=>(Ce(e,s,1),_()))),n,((t,n,o)=>we(e,s,t,n,o)),((n,r)=>ye(e,t,s,n,r,o))),we=(e,t,s,n,o)=>{j(s,n)||me(e,t,n,1);const r=H(s,n);o!==r&&(Ee(e,t,n,r,o),K(s,n,o))},Te=(e,t,s,n,o)=>x(H(t,s),(t=>we(e,s,t,n,o)),(()=>Le(e,t,s,ae({[n]:o},e,s)))),ve=e=>{const t=n+s++;return j(e,t)?ve(e):t},Ie=e=>H(T,e)??Re(e,{}),pe=e=>Re(e,{}),be=(e,t,s)=>Le(e,t,s,{},!0),ye=(e,t,s,n,o,r)=>{const a=H(H(w,e)?.[0],o);if(!M(a)&&!r)return we(e,s,n,o,a);const l=t=>{Ee(e,s,t,H(n,t)),me(e,s,t,-1),K(n,t)};M(a)?l(o):G(n,l),O(n)&&(Ce(e,s,-1),O(K(t,s))&&(Se(e,-1),K(T,e)))},Se=(e,t)=>Je(O(r)?K(r,null,Z(I[0][1])||Z(I[1][1])?_e():0):r,e,t),Ce=(e,t,s)=>Je(U(l,e,(()=>_([[null,Z(C[0][1],[e])||Z(C[1][1],[e])?qe(e):0]]))),t,s),me=(e,t,s,n)=>Je(U(U(c,e,_),t,(()=>_([[null,Z(E[0][1],[e,t])||Z(E[1][1],[e,t])?He(e,t):0]]))),s,n),Ee=(e,t,s,n,o)=>U(U(U(h,e,_),t,_),s,(()=>[n,0]))[1]=o,ke=(e,t,s,n,o)=>(p(U(U(U(g,e,_),t,_),s,(()=>[])),n),o),je=(e,t,s)=>x(H(H(H(h,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Me(Ge(e,t,s))])),Oe=e=>O(g)||O(F[e])?0:W(e?X(g,Y):g,((t,s)=>W(t,((t,n)=>W(t,((t,o)=>z(F[e],[s,n,o],t))))))),ze=(e,t,s,n)=>{P(t)>1?(z(e[0],n),z(e[1],n)):O(t)||0==H(t,null)||f(H(t,null),s(...n??[]))||z(e[1],n)},Ne=e=>{const t=xe(E[e])&&xe(C[e])&&xe(I[e]),s=O(k[e])&&O(m[e])&&O(b[e])&&O(v[e]);if(!t||!s){const n=e?[X(r),Y(l),X(c,Y),X(h,Y)]:[r,l,c,h];if(t||(W(n[2],((t,s)=>W(t,((t,n)=>ze(E[e],t,He,[s,n]))))),W(n[1],((t,s)=>ze(C[e],t,qe,[s]))),ze(I[e],n[0],_e)),!s){let t;W(n[3],((s,n)=>{let o;W(s,((s,r)=>{let a;W(s,(([s,l],i)=>{l!==s&&(z(k[e],[n,r,i],l,s,je),t=o=a=1)})),a&&z(m[e],[n,r],je)})),o&&z(b[e],[n],je)})),t&&z(v[e],void 0,je)}}},We=e=>(Ye(e),et),Be=()=>V(T,(e=>V(e,V))),_e=()=>q(T),qe=e=>q(H(T,e)),He=(e,t)=>q(H(H(T,e),t)),Ge=(e,t,s)=>H(H(H(T,e),t),s),Ke=e=>We((()=>(e=>Pe(e,se,ke))(e)?ie(e):0)),Ue=(e,t,s,n)=>We((()=>x(oe(e,t,s,A(n)?n(Ge(e,t,s)):n),(n=>Te(e,Ie(e),t,s,n))))),Ve=()=>We((()=>ie({}))),Xe=(e,t,s,n)=>We((()=>x(H(T,e),(o=>x(H(o,t),(r=>j(r,s)?ye(e,o,t,r,s,n):0)))))),Ye=(e,t)=>{if(-1==o)return;Ze();const s=e?.();return $e(t),s},Ze=()=>(o++,et),$e=e=>(o>0&&(o--,0==o&&(t=!O(h),o=1,Oe(1),t&&Ne(1),o=-1,e?.(V(h,(e=>V(e,(e=>V(e,(e=>[...e]),(([e,t])=>e===t))),fe)),fe),V(g,(e=>V(e,V))))&&(o=1,W(h,((e,t)=>W(e,((e,s)=>W(e,(([e],n)=>M(e)?Xe(t,s,n,!0):Ue(t,s,n,e))))))),o=-1,t=!1),z(J[0],void 0,t),Oe(0),t&&Ne(0),z(J[1],void 0,t),o=0,L([h,g,r,l,c],N))),et),et={getTables:Be,getTableIds:_e,getTable:e=>V(H(T,e),V),getRowIds:qe,getRow:(e,t)=>V(H(H(T,e),t)),getCellIds:He,getCell:Ge,hasTables:()=>!O(T),hasTable:e=>j(T,e),hasRow:(e,t)=>j(H(T,e),t),hasCell:(e,t,s)=>j(H(H(T,e),t),s),getJson:()=>y(T),getSchemaJson:()=>y(R),setTables:Ke,setTable:(e,t)=>We((()=>se(t,e)?Re(e,t):0)),setRow:(e,t,s)=>We((()=>ne(e,t,s)?Le(e,Ie(e),t,s):0)),addRow:(e,t,s)=>Ye((()=>{const n=ne(e,void 0,t),o=n||s?ve(H(T,e)):void 0;return n&&Le(e,Ie(e),o,t),o})),setPartialRow:(e,t,s)=>We((()=>{if(ne(e,t,s,1)){const n=Ie(e);he(s,((s,o)=>Te(e,n,t,o,s)))}})),setCell:Ue,setJson:e=>{try{"{}"===e?Ve():Ke(S(e))}catch{}return et},setSchema:t=>We((()=>{if((e=(e=>Pe(e,(e=>Pe(e,(e=>{if(!Pe(e,((e,t)=>u([i,d],t))))return!1;const t=e.type;return!(!D(t)&&t!=a||(ge(e.default)!=t&&ue(e,d),0))})))))(t))&&(le(t),!O(T))){const e=Be();Ve(),Ke(e)}})),delTables:Ve,delTable:e=>We((()=>j(T,e)?pe(e):0)),delRow:(e,t)=>We((()=>x(H(T,e),(s=>j(s,t)?be(e,s,t):0)))),delCell:Xe,delSchema:()=>We((()=>{le({}),e=!1})),transaction:Ye,startTransaction:Ze,finishTransaction:$e,forEachTable:e=>W(T,((t,s)=>e(s,(e=>W(t,((t,s)=>e(s,(e=>G(t,e))))))))),forEachRow:(e,t)=>W(H(T,e),((e,s)=>t(s,(t=>G(e,t))))),forEachCell:(e,t,s)=>G(H(H(T,e),t),s),addTablesListener:(e,t)=>Q(e,v[t?1:0]),addTableIdsListener:(e,t,s)=>Q(e,I[s?1:0][t?1:0]),addTableListener:(e,t,s)=>Q(t,b[s?1:0],[e]),addRowIdsListener:(e,t,s,n)=>Q(t,C[n?1:0][s?1:0],[e]),addRowListener:(e,t,s,n)=>Q(s,m[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n,o)=>Q(s,E[o?1:0][n?1:0],[e,t]),addCellListener:(e,t,s,n,o)=>Q(n,k[o?1:0],[e,t,s]),addInvalidCellListener:(e,t,s,n,o)=>Q(n,F[o?1:0],[e,t,s]),addWillFinishTransactionListener:e=>Q(e,J[0]),addDidFinishTransactionListener:e=>Q(e,J[1]),callListener:e=>(te(e,[_e,qe,He],(e=>M(e[2])?[]:Me(Ge(...e)))),et),delListener:e=>(B(e),et),getListenerStats:()=>({}),createStore:Qe};return de(et)};e.createCheckpoints=Le,e.createCustomPersister=be,e.createFilePersister=(e,s)=>{let n;return be(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=Te,e.createLocalPersister=(e,t)=>Ce(e,t,localStorage),e.createMetrics=pe,e.createQueries=Ee,e.createRelationships=ke,e.createRemotePersister=(e,t,s,n)=>{let o,r;return be(e,(async()=>{const e=await fetch(t);return r=me(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=me(s);M(r)||M(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{x(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Ce(e,t,sessionStorage),e.createStore=Qe,e.defaultSorter=we,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),i=s(s),l="type",d="default",c="utf8",u="Listener",f="Result",h="add",g="Table",w="RowIds",L="CellIds",p="Cell",v=(e,t)=>e.includes(t),R=(e,t)=>e.every(t),I=(e,t)=>R(e,((s,n)=>0==n||t(e[n-1],s)<=0)),y=(e,t)=>e.sort(t),S=(e,t)=>e.forEach(t),T=(e,t)=>e.map(t),b=e=>E(e,((e,t)=>e+t),0),C=e=>e.length,m=e=>0==C(e),E=(e,t,s)=>e.reduce(t,s),k=(e,t,s)=>e.slice(t,s),M=(e,...t)=>e.push(...t),x=e=>e.pop(),D=e=>JSON.stringify(e,((e,t)=>Q(t,Map)?E([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),A=JSON.parse,F=Math.max,P=Math.min,J=isFinite,Q=(e,t)=>e instanceof t,j=e=>null==e,O=(e,t,s)=>j(e)?s?.():t(e),z=e=>e==o||e==r,N=e=>s(e)==i,W=()=>{},B=e=>e.size,_=(e,t)=>e?.has(t)??!1,q=e=>j(e)||0==B(e),H=e=>[...e?.values()??[]],G=e=>e.clear(),K=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),V=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),$=(e,t,s)=>j(s)?(U(e,t),e):e?.set(t,s),ee=(e,t,s)=>(_(e,t)||$(e,t,s()),Y(e,t)),te=(e,t,s)=>{const n={},o=t??(e=>e);return K(e,((e,t)=>O(o(e),(e=>s?.(e)?0:n[t]=e)))),n},se=(e,t)=>{const s=V(),n=t??(e=>e);return K(e,((e,t)=>s.set(t,n(e)))),s},ne=e=>se(e,se),oe=(e,t,s,n,o=0)=>O((s?ee:Y)(e,t[o],o>C(t)-2?s:V),(r=>{if(o>C(t)-2)return n?.(r)&&$(e,t[o]),r;const a=oe(r,t,s,n,o+1);return q(r)&&$(e,t[o]),a})),re=e=>new Set(e),ae=(e,t)=>e?.add(t),ie=(e,t,s)=>{const n=e.hasRow,o=V(),r=V(),a=V(),i=V(),l=V(),d=(t,s,...n)=>{const o=ee(l,t,re);return S(n,(t=>ae(o,t)&&s&&e.callListener(t))),n},c=(t,...s)=>O(Y(l,t),(n=>{S(m(s)?H(n):s,(t=>{e.delListener(t),U(n,t)})),q(n)&&$(l,t)})),u=(e,s)=>{$(o,e,s),_(r,e)||($(r,e,t()),$(a,e,V()),$(i,e,V()))},f=e=>{$(o,e),$(r,e),$(a,e),$(i,e),c(e)};return[()=>e,()=>X(o),e=>Z(r,e),e=>_(r,e),e=>Y(o,e),e=>Y(r,e),(e,t)=>$(r,e,t),u,(t,o,r,l,f)=>{u(t,o);const h=V(),g=V(),w=Y(a,t),L=Y(i,t),p=t=>{const r=s=>e.getCell(o,t,s),a=Y(w,t),i=n(o,t)?s(l(r,t)):void 0;if(a!=i&&$(h,t,[a,i]),!j(f)){const e=Y(L,t),s=n(o,t)?f(r,t):void 0;e!=s&&$(g,t,s)}},v=e=>{r((()=>{K(h,(([,e],t)=>$(w,t,e))),K(g,((e,t)=>$(L,t,e)))}),h,g,w,L,e),G(h),G(g)};Z(w,p),e.hasTable(o)&&S(e.getRowIds(o),(e=>{_(w,e)||p(e)})),v(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,s)=>p(s))),e.addTableListener(o,(()=>v())))},f,()=>Z(l,f),d,c]},le=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),de=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},ce=e=>{let t,s=0;const o=[],r=V();return[(a,i,l)=>{t??=e();const d=x(o)??n+s++;return $(r,d,[a,i,l]),ae(oe(i,l??[n],re),d),d},(e,s,...o)=>S(((e,t=[n])=>{const s=[],o=(e,n)=>n==C(t)?M(s,e):null===t[n]?K(e,(e=>o(e,n+1))):S([t[n],null],(t=>o(Y(e,t),n+1)));return o(e,0),s})(e,s),(e=>K(e,(e=>Y(r,e)[0](t,...s??[],...o))))),e=>O(Y(r,e),(([,t,s])=>(oe(t,s??[n],void 0,(t=>(U(t,e),q(t)?1:0))),$(r,e),C(o)<1e3&&M(o,e),s))),(e,s,n)=>O(Y(r,e),(([e,,o=[]])=>{const r=(...a)=>{const i=C(a);i==C(o)?e(t,...a,...n(a)):j(o[i])?S(s[i](...a),(e=>r(...a,e))):r(...a,o[i])};r()}))]},ue=Object,fe=ue.keys,he=ue.isFrozen,ge=ue.freeze,we=(e,t)=>!j(((e,t)=>O(e,(e=>e[t])))(e,t)),Le=(e,t)=>delete e[t],pe=(e,t)=>S(ue.entries(e),(([e,s])=>t(s,e))),ve=e=>m(fe(e)),Re=e=>{const t=s(e);return z(t)||t==a&&J(e)?t:void 0},Ie=(e,t,s,n,o)=>j(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),ye=de((e=>{let t,s,o,r=100,a=V(),i=1;const l=V(),d=V(),[c,u,f]=ce((()=>J)),h=V(),g=V(),w=[],L=[],p=(t,s)=>{i=0,e.transaction((()=>K(Y(h,s),((s,n)=>K(s,((s,o)=>K(s,((s,r)=>Ie(e,n,o,r,s[t]))))))))),i=1},R=e=>{$(h,e),$(g,e),u(d,[e])},I=(e,t)=>S(((e,t)=>e.splice(0,t))(e,t??C(e)),R),y=()=>I(w,C(w)-r),T=e.addCellListener(null,null,null,((e,s,n,r,l,d)=>{if(i){O(t,(()=>{M(w,t),y(),I(L),t=void 0,o=1}));const e=ee(a,s,V),i=ee(e,n,V),c=ee(i,r,(()=>[d,void 0]));c[1]=l,c[0]===l&&q($(i,r))&&q($(e,n))&&q($(a,s))&&(t=x(w),o=1),D()}})),b=(e="")=>(j(t)&&(t=n+s++,$(h,t,a),F(t,e),a=V(),o=1),t),E=()=>{m(w)||(L.unshift(b()),p(0,t),t=x(w),o=1)},k=()=>{m(L)||(M(w,t),t=L.shift(),p(1,t),o=1)},D=()=>{o&&(u(l),o=0)},A=e=>{const t=b(e);return D(),t},F=(e,t)=>(P(e)&&Y(g,e)!==t&&($(g,e,t),u(d,[e])),J),P=e=>_(h,e),J={setSize:e=>(r=e,y(),J),addCheckpoint:A,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...L]],forEachCheckpoint:e=>Z(g,e),hasCheckpoint:P,getCheckpoint:e=>Y(g,e),goBackward:()=>(E(),D(),J),goForward:()=>(k(),D(),J),goTo:e=>{const s=v(w,e)?E:v(L,e)?k:null;for(;!j(s)&&e!=t;)s();return D(),J},addCheckpointIdsListener:e=>c(e,l),addCheckpointListener:(e,t)=>c(t,d,[e]),delListener:e=>(f(e),J),clear:()=>(I(w),I(L),j(t)||R(t),t=void 0,s=0,A(),J),destroy:()=>{e.delListener(T)},getListenerStats:()=>({})};return ge(J.clear())})),Se=(e,t)=>e<t?-1:1,Te=e=>n+e,be=de((e=>{const t=V(),s=V(),[o,r,a,i,l,d,c,,u,f,h]=ie(e,V,(e=>j(e)?n:e+n)),[g,w,L]=ce((()=>v)),p=(t,s,n)=>{const o=l(t);K(n,((t,n)=>s(n,(s=>K(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},v={setIndexDefinition:(e,n,o,r,a,i=Se)=>{const l=j(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,f,h)=>{let g=0;const L=re(),p=re(),v=d(e);if(K(o,(([e,t],s)=>{j(e)||(ae(L,e),O(Y(v,e),(t=>{U(t,s),q(t)&&($(v,e),g=1)}))),j(t)||(ae(L,t),_(v,t)||($(v,t,re()),g=1),ae(Y(v,t),s),j(r)||ae(p,t))})),n(),q(f)||(h?Z(v,(e=>ae(p,e))):Z(a,(e=>O(Y(u,e),(e=>ae(p,e))))),K(p,(e=>{const t=(t,s)=>i(Y(f,t),Y(f,s),e),s=[...Y(v,e)];I(s,t)||($(v,e,re(y(s,t))),ae(L,e))}))),(g||h)&&!j(l)){const t=[...v];I(t,l)||(c(e,V(y(t,l))),g=1)}g&&w(t,[e]),K(L,(t=>w(s,[e,t])))}),le(o),O(r,le)),v},delIndexDefinition:e=>(f(e),v),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>_(d(e),t),getTableId:l,getSliceIds:e=>X(d(e)),getSliceRowIds:(e,t)=>H(Y(d(e),t)),addSliceIdsListener:(e,s)=>g(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>g(n,s,[e,t]),delListener:e=>(L(e),v),destroy:h,getListenerStats:()=>({})};return ge(v)})),Ce=V([["avg",[(e,t)=>b(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=>F(...e),(e,t)=>F(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:F(t,e)]],["min",[e=>P(...e),(e,t)=>P(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:P(t,e)]],["sum",[e=>b(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),me=(e,t,s,n,o,r=!1)=>{if(q(s))return;const[a,i,l,d]=o;return r||=j(e),K(n,(([s,n])=>{r||(e=j(s)?i?.(e,n,t++):j(n)?l?.(e,s,t--):d?.(e,n,s,t),r||=j(e))})),r?a(H(s),B(s)):e},Ee=de((e=>{const t=V(),[s,o,r,a,i,l,d,,c,u,f]=ie(e,W,(e=>isNaN(e)||j(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,g,w]=ce((()=>L)),L={setMetricDefinition:(e,s,n,o,r,a,i)=>{const u=N(n)?[n,r,a,i]:Y(Ce,n)??Y(Ce,"sum");return c(e,s,((s,n,o,r,a,i)=>{const c=l(e),f=B(r);i||=j(c),s();let h=me(c,f,r,n,u,i);J(h)||(h=void 0),h!=c&&(d(e,h),g(t,[e],h,c))}),le(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:i,getMetric:l,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(w(e),L),destroy:f,getListenerStats:()=>({})};return ge(L)})),ke=(e,t,s,o,r)=>{let a,i=0;const l={load:async s=>{if(2!=i){i=1;const o=await t();j(o)||o==n?e.setTables(s):e.setJson(o),i=0}return l},startAutoLoad:async e=>(l.stopAutoLoad(),await l.load(e),o(l.load),l),stopAutoLoad:()=>(r(),l),save:async()=>(1!=i&&(i=2,await s(e.getJson()),i=0),l),startAutoSave:async()=>(await l.stopAutoSave().save(),a=e.addTablesListener((()=>l.save())),l),stopAutoSave:()=>(O(a,e.delListener),l),getStore:()=>e,destroy:()=>l.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ge(l)},Me="storage",xe=globalThis.window,De=(e,t,s)=>{let n;return ke(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},xe.addEventListener(Me,n)}),(()=>{xe.removeEventListener(Me,n),n=void 0}))},Ae=e=>e.headers.get("ETag"),Fe=de((e=>{const t=e.createStore,[s,o,r,a,i,,,l,,d,c,v,I]=ie(e,(()=>!0),W),y=t(),T=t(),b=V(),E=(e,t,...s)=>S(s,(s=>ae(ee(ee(b,t,V),e,re),s))),x=e=>S([T,y],(t=>t.delTable(e))),D=(e,t,s)=>E(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),A={setQueryDefinition:(t,s,o)=>{l(t,s),x(t);const r=[],a=[[null,[s,null,null,[],V()]]],i=[],d=[],c=[];o({select:(e,t)=>{const s=N(e)?[C(r)+n,e]:[j(t)?e:t,s=>s(e,t)];return M(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=j(s)||N(t)?null:t,o=j(n)?t:s,r=[e,[e,n,N(o)?o:e=>e(o),[],V()]];return M(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>M(i,N(e)?e:j(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,N(t)?[t,s,n,o]:Y(Ce,t)??[(e,t)=>t]]];return M(d,r),{as:e=>r[0]=e}},having:(e,t)=>M(c,N(e)?e:s=>s(e)===t)});const u=V(r);if(q(u))return A;const f=V(a);Z(f,((e,[,t])=>O(Y(f,t),(({3:t})=>j(e)?0:M(t,e)))));const h=V(d);let g=y;if(q(h)&&m(c))g=T;else{D(t,g,T);const e=V();Z(h,((t,[s,n])=>ae(ee(e,s,re),[t,n])));const s=re();Z(u,(t=>_(e,t)?0:ae(s,t)));const n=V(),o=(s,n,o,r)=>O(s,(([s,a,i,l])=>{Z(n,((t,[n])=>{const a=ee(s,t,V),i=Y(a,o),d=r?void 0:n;if(i!==d){const s=re([[i,d]]),n=B(a);$(a,o,d),K(Y(e,t),(([e,t])=>{const o=me(l[e],n,a,s,t);l[e]=j(Re(o))?null:o}))}})),(q(a)||!R(c,(e=>e((e=>l[e]))))?T.delRow:T.setRow)(t,i,l)}));E(g,t,g.addRowListener(t,null,((r,a,i,l)=>{const d=[],c=[],u=V(),f=g.hasRow(t,i);let h=!f;K(s,(e=>{const[s,n,o]=l(t,i,e);M(d,n),M(c,o),h||=s})),Z(e,(e=>{const[s,,n]=l(t,i,e);(h||s)&&$(u,e,[n])})),h&&o(oe(n,d,void 0,(([,e,s])=>{if(U(e,i),q(e))return T.delRow(t,s),1})),u,i,1),f&&o(oe(n,c,(()=>{const e={};return K(s,(s=>e[s]=g.getCell(t,i,s))),[V(),re(),T.addRow(t,e,1),e]}),(([,e])=>{ae(e,i)})),u,i)})))}D(t,e,g);const w=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);S(a,(s=>{const[o,,r,a,i]=Y(f,s),d=r?.(l,n),[c,u]=Y(i,n)??[];d!=c&&(j(u)||I(t,u),$(i,n,j(d)?null:[d,...v(t,1,e.addRowListener(o,d,(()=>w(n,o,d,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...j(o)?[s,n,t]:t===s?[s,n,o]:[Y(f,t)?.[0],Y(Y(f,t)?.[4],n)?.[0],o]);g.transaction((()=>R(i,(e=>e(o)))?Z(u,((e,s)=>Ie(g,t,n,e,s(o,n)))):g.delRow(t,n)))})(n)},{3:L}=Y(f,null);return g.transaction((()=>v(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?w(r,s,r,L):(g.delRow(t,r),K(f,(({4:e})=>O(Y(e,r),(([,s])=>{I(t,s),$(e,r)})))))}))))),A},delQueryDefinition:e=>(Z(Y(b,e),((e,t)=>K(t,(t=>e.delListener(t))))),x(e),d(e),A),getStore:s,getQueryIds:o,forEachQuery:r,hasQuery:a,getTableId:i,delListener:e=>(T.delListener(e),A),destroy:c,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=T.getListenerStats();return n}};return pe({[g]:[1,1],[w]:[0,1],SortedRowIds:[0,5],Row:[1,2],[L]:[0,2],[p]:[1,3]},(([e,t],s)=>{S(e?["get","has","forEach"]:["get"],(e=>A[e+f+s]=(...t)=>T[e+s](...t))),A[h+f+s+u]=(...e)=>T[h+s+u](...k(e,0,t),((s,...n)=>e[t](A,...n)))})),ge(A)})),Pe=de((e=>{const t=V(),s=V(),o=V(),r=V(),[a,i,l,d,c,u,,,f,h,g]=ie(e,(()=>[V(),V(),V(),V()]),(e=>j(e)?void 0:e+n)),[w,L,p]=ce((()=>y)),v=(e,t,s)=>O(u(e),(([n,,o])=>{if(!_(o,t)){const r=re();if(c(e)!=I(e))ae(r,t);else{let e=t;for(;!j(e)&&!_(r,e);)ae(r,e),e=Y(n,e)}if(s)return r;$(o,t,r)}return Y(o,t)})),R=(e,t)=>O(u(e),(([,,e])=>$(e,t))),I=e=>Y(t,e),y={setRelationshipDefinition:(e,n,a,i)=>($(t,e,a),f(e,n,((t,n)=>{const a=re(),i=re(),l=re(),[d,c]=u(e);K(n,(([t,s],n)=>{j(t)||(ae(i,t),O(Y(c,t),(e=>{U(e,n),q(e)&&$(c,t)}))),j(s)||(ae(i,s),_(c,s)||$(c,s,re()),ae(Y(c,s),n)),ae(a,n),$(d,n,s),Z(Y(r,e),(t=>{_(v(e,t),n)&&ae(l,t)}))})),t(),K(a,(t=>L(s,[e,t]))),K(i,(t=>L(o,[e,t]))),K(l,(t=>{R(e,t),L(r,[e,t])}))}),le(i)),y),delRelationshipDefinition:e=>($(t,e),h(e),y),getStore:a,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>Y(u(e)?.[0],t),getLocalRowIds:(e,t)=>H(Y(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>j(u(e))?[t]:H(v(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>w(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>w(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),w(s,r,[e,t])),delListener:e=>(R(...p(e)),y),destroy:g,getListenerStats:()=>({})};return ge(y)})),Je=e=>[e,e],Qe=()=>[V(),V()],je=(e,t,s,n=$)=>{const o=(r=X(e),a=e=>!we(t,e),r.filter(a));var r,a;return S(fe(t),(n=>s(e,n,t[n]))),S(o,(t=>n(e,t))),e},Oe=(e,t,s)=>j(e)||!(e=>Q(e,ue)&&e.constructor==ue)(e)||ve(e)||he(e)?(s?.(),!1):(pe(e,((s,n)=>{t(s,n)||Le(e,n)})),!ve(e)),ze=(e,t,s)=>$(e,t,Y(e,t)==-s?void 0:s),Ne=()=>{let e,t,s=0,o=0;const r=V(),i=V(),c=V(),f=V(),I=V(),b=V(),m=V(),E=V(),x=Qe(),F=Qe(),P=Qe(),J=Qe(),Q=Qe(),W=Qe(),B=Qe(),H=Qe(),oe=Qe(),ie=Qe(),[le,de,ue,fe]=ce((()=>ct)),he=(t,s)=>(!e||_(b,s)||Ke(s))&&Oe(t,((e,t)=>ye(s,t,e)),(()=>Ke(s))),ye=(e,t,s,n)=>Oe(n?s:Ce(s,e,t),((n,o)=>O(be(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Ke(e,t))),be=(t,s,n,o)=>e?O(Y(Y(b,t),n),(e=>Re(o)!=e.type?Ke(t,s,n,o,e.default):o),(()=>Ke(t,s,n,o))):j(Re(o))?Ke(t,s,n,o):o,Ce=(e,t,s)=>(O(Y(m,t),(([n,o])=>{K(n,((t,s)=>{we(e,s)||(e[s]=t)})),K(o,(n=>{we(e,n)||Ke(t,s,n)}))})),e),me=e=>je(b,e,((e,t,s)=>{const n=V(),o=re();je(ee(b,t,V),s,((e,t,s)=>{$(e,t,s),O(s.default,(e=>$(n,t,e)),(()=>ae(o,t)))})),$(m,t,[n,o])}),((e,t)=>{$(b,t),$(m,t)})),Ee=e=>je(E,e,((e,t,s)=>ke(t,s)),((e,t)=>Pe(t))),ke=(e,t)=>je(ee(E,e,(()=>(_e(e,1),V()))),t,((t,s,n)=>Me(e,t,s,n)),((t,s)=>We(e,t,s))),Me=(e,t,s,n,o)=>je(ee(t,s,(()=>(qe(e,s,1),V()))),n,((t,n,o)=>xe(e,s,t,n,o)),((n,r)=>Be(e,t,s,n,r,o))),xe=(e,t,s,n,o)=>{_(s,n)||He(e,t,n,1);const r=Y(s,n);o!==r&&(Ge(e,t,n,r,o),$(s,n,o))},De=(e,t,s,n,o)=>O(Y(t,s),(t=>xe(e,s,t,n,o)),(()=>Me(e,t,s,Ce({[n]:o},e,s)))),Ae=e=>{const t=n+s++;return _(e,t)?Ae(e):t},Fe=e=>Y(E,e)??ke(e,{}),Pe=e=>ke(e,{}),We=(e,t,s)=>Me(e,t,s,{},!0),Be=(e,t,s,n,o,r)=>{const a=Y(Y(m,e)?.[0],o);if(!j(a)&&!r)return xe(e,s,n,o,a);const i=t=>{Ge(e,s,t,Y(n,t)),He(e,s,t,-1),$(n,t)};j(a)?i(o):Z(n,i),q(n)&&(qe(e,s,-1),q($(t,s))&&(_e(e,-1),$(E,e)))},_e=(e,t)=>ze(r,e,t),qe=(e,t,s)=>ze(ee(i,e,V),t,s),He=(e,t,s,n)=>ze(ee(ee(c,e,V),t,V),s,n),Ge=(e,t,s,n,o)=>ee(ee(ee(f,e,V),t,V),s,(()=>[n,0]))[1]=o,Ke=(e,t,s,n,o)=>(M(ee(ee(ee(I,e,V),t,V),s,(()=>[])),n),o),Ue=(e,t,s)=>O(Y(Y(Y(f,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Je(ot(e,t,s))])),Ve=e=>q(I)||q(oe[e])?0:K(e?se(I,ne):I,((t,s)=>K(t,((t,n)=>K(t,((t,o)=>de(oe[e],[s,n,o],t))))))),Xe=(e,t,s)=>{if(!q(t))return de(e,s),1},Ye=e=>{const t=q(Q[e]),s=q(B[e])&&q(J[e])&&t&&q(F[e]),n=q(H[e])&&q(W[e])&&q(P[e])&&q(x[e]);if(!s||!n){const o=e?[se(r),ne(i),se(c,ne),se(f,ne)]:[r,i,c,f];if(!s){K(o[2],((t,s)=>K(t,((t,n)=>Xe(B[e],t,[s,n])))));const s=re();K(o[1],((n,o)=>{Xe(J[e],n,[o])&&!t&&(de(Q[e],[o,null]),ae(s,o))})),t||K(o[3],((t,n)=>{if(!_(s,n)){const s=re();K(t,(e=>K(e,(([t,n],o)=>n!==t?ae(s,o):U(e,o))))),K(s,(t=>de(Q[e],[n,t])))}})),Xe(F[e],o[0])}if(!n){let t;K(o[3],((s,n)=>{let o;K(s,((s,r)=>{let a;K(s,(([s,i],l)=>{i!==s&&(de(H[e],[n,r,l],i,s,Ue),t=o=a=1)})),a&&de(W[e],[n,r],Ue)})),o&&de(P[e],[n],Ue)})),t&&de(x[e],void 0,Ue)}}},Ze=(e,...t)=>(it((()=>e(...T(t,Te)))),ct),$e=()=>te(E,(e=>te(e,te))),et=()=>X(E),tt=e=>X(Y(E,Te(e))),st=(e,t,s,n=0,o)=>{const r=[];return Z(Y(E,Te(e)),((e,s)=>M(r,[j(t)?e:Y(s,Te(t)),e]))),T(k(y(r,(([e],[t])=>Se(e,t)*(s?-1:1))),n,j(o)?o:n+o),(([,e])=>e))},nt=(e,t)=>X(Y(Y(E,Te(e)),Te(t))),ot=(e,t,s)=>Y(Y(Y(E,Te(e)),Te(t)),Te(s)),rt=e=>Ze((()=>(e=>Oe(e,he,Ke))(e)?Ee(e):0)),at=()=>Ze((()=>Ee({}))),it=(e,t)=>{if(-1==o)return;lt();const s=e?.();return dt(t),s},lt=()=>(o++,ct),dt=e=>(o>0&&(o--,0==o&&(t=!q(f),o=1,Ve(1),t&&Ye(1),o=-1,e?.(te(f,(e=>te(e,(e=>te(e,(e=>[...e]),(([e,t])=>e===t))),ve)),ve),te(I,(e=>te(e,te))))&&(o=1,K(f,((e,t)=>K(e,((e,s)=>K(e,(([e],n)=>Ie(ct,t,s,n,e))))))),o=-1,t=!1),de(ie[0],void 0,t),Ve(0),t&&Ye(0),de(ie[1],void 0,t),o=0,S([f,I,r,i,c],G))),ct),ct={getTables:$e,getTableIds:et,getTable:e=>te(Y(E,Te(e)),te),getRowIds:tt,getSortedRowIds:st,getRow:(e,t)=>te(Y(Y(E,Te(e)),Te(t))),getCellIds:nt,getCell:ot,hasTables:()=>!q(E),hasTable:e=>_(E,Te(e)),hasRow:(e,t)=>_(Y(E,Te(e)),Te(t)),hasCell:(e,t,s)=>_(Y(Y(E,Te(e)),Te(t)),Te(s)),getJson:()=>D(E),getSchemaJson:()=>D(b),setTables:rt,setTable:(e,t)=>Ze((e=>he(t,e)?ke(e,t):0),e),setRow:(e,t,s)=>Ze(((e,t)=>ye(Te(e),Te(t),s)?Me(Te(e),Fe(Te(e)),Te(t),s):0),e,t),addRow:(e,t,s)=>it((()=>{e=Te(e);const n=ye(e,void 0,t),o=n||s?Ae(Y(E,e)):void 0;return n&&Me(e,Fe(e),o,t),o})),setPartialRow:(e,t,s)=>Ze(((e,t)=>{if(ye(e,t,s,1)){const n=Fe(e);pe(s,((s,o)=>De(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Ze(((e,t,s)=>O(be(e,t,s,N(n)?n(ot(e,t,s)):n),(n=>De(e,Fe(e),t,s,n)))),e,t,s),setJson:e=>{try{"{}"===e?at():rt(A(e))}catch{}return ct},setSchema:t=>Ze((()=>{if((e=(e=>Oe(e,(e=>Oe(e,(e=>{if(!Oe(e,((e,t)=>v([l,d],t))))return!1;const t=e.type;return!(!z(t)&&t!=a||(Re(e.default)!=t&&Le(e,d),0))})))))(t))&&(me(t),!q(E))){const e=$e();at(),rt(e)}})),delTables:at,delTable:e=>Ze((e=>_(E,e)?Pe(e):0),e),delRow:(e,t)=>Ze(((e,t)=>O(Y(E,e),(s=>_(s,t)?We(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ze(((e,t,s)=>O(Y(E,e),(o=>O(Y(o,t),(r=>_(r,s)?Be(e,o,t,r,s,n):0))))),e,t,s),delSchema:()=>Ze((()=>{me({}),e=!1})),transaction:it,startTransaction:lt,finishTransaction:dt,forEachTable:e=>K(E,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachRow:(e,t)=>K(Y(E,Te(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(E,Te(e)),Te(t)),s),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let i=st(e,t,s,n,o);return le((()=>{const a=st(e,t,s,n,o);var l,d;d=i,C(l=a)===C(d)&&R(l,((e,t)=>d[t]===e))||(i=a,r(ct,e,t,s,n,o,i))}),Q[a?1:0],[e,t])},addWillFinishTransactionListener:e=>le(e,ie[0]),addDidFinishTransactionListener:e=>le(e,ie[1]),callListener:e=>(fe(e,[et,tt,nt],(e=>j(e[2])?[]:Je(ot(...e)))),ct),delListener:e=>(ue(e),ct),getListenerStats:()=>({}),createStore:Ne};return pe({Tables:[0,x],TableIds:[0,F],[g]:[1,P],[w]:[1,J],Row:[2,W],[L]:[2,B],[p]:[3,H],InvalidCell:[3,oe]},(([e,t],s)=>{ct[h+s+u]=(...s)=>le(s[e],t[s[e+1]?1:0],e>0?k(s,0,e):void 0)})),ge(ct)};e.createCheckpoints=ye,e.createCustomPersister=ke,e.createFilePersister=(e,s)=>{let n;return ke(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=be,e.createLocalPersister=(e,t)=>De(e,t,localStorage),e.createMetrics=Ee,e.createQueries=Fe,e.createRelationships=Pe,e.createRemotePersister=(e,t,s,n)=>{let o,r;return ke(e,(async()=>{const e=await fetch(t);return r=Ae(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=Ae(s);j(r)||j(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{O(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>De(e,t,sessionStorage),e.createStore=Ne,e.defaultSorter=Se,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="",r=o(t),d=(e,s)=>e.map(s),n=e=>null==e,l=(e,s,o)=>n(e)?o?.():s(e),i=()=>{},{createContext:a,useContext:c}=s,u=a([]),I=(e,s)=>{const o=c(u);return n(e)?o[s]:((e,s)=>l(e,(e=>e[s])))(o[s+1],e)},p=(e,s)=>{const t=I(e,s);return n(e)||(e=>o(e)==r)(e)?t:e},w=e=>p(e,0),b=e=>p(e,2),C=e=>p(e,4),k=e=>p(e,6),R=e=>p(e,8),{useCallback:g,useEffect:h,useMemo:m,useState:T}=s,L=(e,s,o=[])=>{const t=m((()=>s(e)),[e,...o]);return h((()=>()=>t.destroy()),[t]),t},y=(e,s,o,t=[],...r)=>{const d=s?.["get"+e]??(()=>o),n=d(...t),[,l]=T(n);return h((()=>{const o=s?.[`add${e}Listener`]?.(...t,(()=>l(d(...t))),...r);return()=>s?.delListener(o)}),[s,e,l,d,...t]),n},S=(e,s,o,t=[],r=[],...d)=>{h((()=>{const t=s?.[`add${e}Listener`]?.(...r,o,...d);return()=>s?.delListener(t)}),[s,e,...t,...r,...d])},f=(e,s,o,t=[],r=i,d=[],...n)=>{const a=w(e);return g((e=>l(a,(t=>l(o(e,t),(e=>r(t["set"+s](...n,e),e)))))),[a,s,...t,...d,...n])},x=(e,s,o=i,t=[],...r)=>{const d=w(e);return g((()=>o(d?.["del"+s](...r))),[d,s,...t,...r])},v=(e,s,o)=>{const t=R(e);return g((()=>t?.[s](o)),[t,s,o])},P=(e,s)=>y("TableIds",w(e),[],[],s),V=(e,s,o)=>y("RowIds",w(s),[],[e],o),M=(e,s,o,t)=>y("CellIds",w(o),[],[e,s],t),B=(e,s,o,t)=>y("Cell",w(t),void 0,[e,s,o]),D=(e,s)=>y("Metric",b(s),void 0,[e]),A=(e,s)=>y("SliceIds",C(s),[],[e]),F=(e,s,o)=>y("SliceRowIds",C(o),[],[e,s]),G=(e,s,o)=>y("RemoteRowId",k(o),void 0,[e,s]),j=(e,s,o)=>y("LocalRowIds",k(o),[],[e,s]),E=(e,s,o)=>y("LinkedRowIds",k(o),[],[e,s]),U=e=>y("CheckpointIds",R(e),[[],void 0,[]]),$=(e,s)=>y("Checkpoint",R(s),void 0,[e]),_=e=>v(e,"goBackward"),q=e=>v(e,"goForward"),{createElement:O,useMemo:z}=s,H=e=>{const s=k(e);return[s,s?.getStore()]},J=({relationshipId:e,relationships:s,rowComponent:o=X,getRowComponentProps:t,separator:r,debugIds:n},l,i)=>{const[a,c]=H(s),u=a?.getLocalTableId(e),I=l(e,i,a);return Q(d(I,(e=>O(o,{...N(t,e),key:e,tableId:u,rowId:e,store:c,debugIds:n}))),r,n,i)},K=e=>({checkpoints:s,checkpointComponent:o=ee,getCheckpointComponentProps:t,separator:r,debugIds:n})=>{const l=R(s);return Q(d(e(U(l)),(e=>O(o,{...N(t,e),key:e,checkpoints:l,checkpointId:e,debugIds:n}))),r)},N=(e,s)=>n(e)?{}:e(s),Q=(e,s,o,t)=>{const r=n(s)||!Array.isArray(e)?e:d(e,((e,o)=>o>0?[s,e]:e));return o?[t,":{",r,"}"]:r},W=({tableId:e,rowId:s,cellId:o,store:r,debugIds:d})=>Q(t+(B(e,s,o,r)??t),void 0,d,o),X=({tableId:e,rowId:s,store:o,trackReorder:t,cellComponent:r=W,getCellComponentProps:n,separator:l,debugIds:i})=>Q(d(M(e,s,o,t),(t=>O(r,{...N(n,t),key:t,tableId:e,rowId:s,cellId:t,store:o,debugIds:i}))),l,i,s),Y=({tableId:e,store:s,trackReorder:o,rowComponent:t=X,getRowComponentProps:r,separator:n,debugIds:l})=>Q(d(V(e,s,o),(o=>O(t,{...N(r,o),key:o,tableId:e,rowId:o,store:s,debugIds:l}))),n,l,e),Z=({indexId:e,sliceId:s,indexes:o,rowComponent:t=X,getRowComponentProps:r,separator:n,debugIds:l})=>{const i=C(o),a=i?.getStore(),c=i?.getTableId(e),u=F(e,s,i);return Q(d(u,(e=>O(t,{...N(r,e),key:e,tableId:c,rowId:e,store:a,debugIds:l}))),n,l,s)},ee=({checkpoints:e,checkpointId:s,debugIds:o})=>Q($(s,e)??t,void 0,o,s),se=K((e=>e[0])),oe=K((e=>n(e[1])?[]:[e[1]])),te=K((e=>e[2]));e.BackwardCheckpointsView=se,e.CellView=W,e.CheckpointView=ee,e.CurrentCheckpointView=oe,e.ForwardCheckpointsView=te,e.IndexView=({indexId:e,indexes:s,sliceComponent:o=Z,getSliceComponentProps:t,separator:r,debugIds:n})=>Q(d(A(e,s),(r=>O(o,{...N(t,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:n}))),r,n,e),e.LinkedRowsView=e=>J(e,E,e.firstRowId),e.LocalRowsView=e=>J(e,j,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:o})=>Q(D(e,s)??t,void 0,o,e),e.Provider=({store:e,storesById:o,metrics:t,metricsById:r,indexes:d,indexesById:n,relationships:l,relationshipsById:i,checkpoints:a,checkpointsById:c,children:I})=>{const p=s.useContext(u);return O(u.Provider,{value:z((()=>[e??p[0],{...p[1],...o},t??p[2],{...p[3],...r},d??p[4],{...p[5],...n},l??p[6],{...p[7],...i},a??p[8],{...p[9],...c}]),[e,o,t,r,d,n,l,i,a,c,p])},I)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:o,rowComponent:t=X,getRowComponentProps:r,debugIds:d})=>{const[l,i]=H(o),a=l?.getRemoteTableId(e),c=G(e,s,l);return Q(n(a)||n(c)?null:O(t,{...N(r,c),key:c,tableId:a,rowId:c,store:i,debugIds:d}),void 0,d,s)},e.RowView=X,e.SliceView=Z,e.TableView=Y,e.TablesView=({store:e,trackReorder:s,tableComponent:o=Y,getTableComponentProps:t,separator:r,debugIds:n})=>Q(d(P(e,s),(s=>O(o,{...N(t,s),key:s,tableId:s,store:e,debugIds:n}))),r),e.useAddRowCallback=(e,s,o=[],t,r=i,d=[])=>{const n=w(t);return g((o=>l(n,(t=>l(s(o,t),(s=>r(t.addRow(e,s),t,s)))))),[n,e,...o,...d])},e.useCell=B,e.useCellIds=M,e.useCellIdsListener=(e,s,o,t,r,d,n)=>S("CellIds",w(n),o,t,[e,s],r,d),e.useCellListener=(e,s,o,t,r,d,n)=>S("Cell",w(n),t,r,[e,s,o],d),e.useCheckpoint=$,e.useCheckpointIds=U,e.useCheckpointIdsListener=(e,s,o)=>S("CheckpointIds",R(o),e,s),e.useCheckpointListener=(e,s,o,t)=>S("Checkpoint",R(t),s,o,[e]),e.useCheckpoints=e=>I(e,8),e.useCreateCheckpoints=(e,s,o)=>L(e,s,o),e.useCreateIndexes=(e,s,o)=>L(e,s,o),e.useCreateMetrics=(e,s,o)=>L(e,s,o),e.useCreatePersister=(e,s,o=[],t,r=[])=>{const[,d]=T(),n=m((()=>s(e)),[e,...o]);return h((()=>((async()=>{await(t?.(n)),d(1)})(),()=>{n.destroy()})),[n,...r]),n},e.useCreateRelationships=(e,s,o)=>L(e,s,o),e.useCreateStore=(e,s=[])=>m(e,s),e.useDelCellCallback=(e,s,o,t,r,d,n)=>x(r,"Cell",d,n,e,s,o,t),e.useDelRowCallback=(e,s,o,t,r)=>x(o,"Row",t,r,e,s),e.useDelTableCallback=(e,s,o,t)=>x(s,"Table",o,t,e),e.useDelTablesCallback=(e,s,o)=>x(e,"Tables",s,o),e.useGoBackwardCallback=_,e.useGoForwardCallback=q,e.useGoToCallback=(e,s=[],o,t=i,r=[])=>{const d=R(o);return g((s=>l(d,(o=>l(e(s),(e=>t(o.goTo(e),e)))))),[d,...s,...r])},e.useIndexes=e=>I(e,4),e.useLinkedRowIds=E,e.useLinkedRowIdsListener=(e,s,o,t,r)=>S("LinkedRowIds",k(r),o,t,[e,s]),e.useLocalRowIds=j,e.useLocalRowIdsListener=(e,s,o,t,r)=>S("LocalRowIds",k(r),o,t,[e,s]),e.useMetric=D,e.useMetricListener=(e,s,o,t)=>S("Metric",b(t),s,o,[e]),e.useMetrics=e=>I(e,2),e.useRedoInformation=e=>{const s=R(e),[,,[o]]=U(s);return[!n(o),q(s),o,l(o,(e=>s?.getCheckpoint(e)))??t]},e.useRelationships=e=>I(e,6),e.useRemoteRowId=G,e.useRemoteRowIdListener=(e,s,o,t,r)=>S("RemoteRowId",k(r),o,t,[e,s]),e.useRow=(e,s,o)=>y("Row",w(o),{},[e,s]),e.useRowIds=V,e.useRowIdsListener=(e,s,o,t,r,d)=>S("RowIds",w(d),s,o,[e],t,r),e.useRowListener=(e,s,o,t,r,d)=>S("Row",w(d),o,t,[e,s],r),e.useSetCellCallback=(e,s,o,t,r,d,n,l)=>f(d,"Cell",t,r,n,l,e,s,o),e.useSetCheckpointCallback=(e=i,s=[],o,t=i,r=[])=>{const d=R(o);return g((s=>l(d,(o=>{const r=e(s);t(o.addCheckpoint(r),o,r)}))),[d,...s,...r])},e.useSetPartialRowCallback=(e,s,o,t,r,d,n)=>f(r,"PartialRow",o,t,d,n,e,s),e.useSetRowCallback=(e,s,o,t,r,d,n)=>f(r,"Row",o,t,d,n,e,s),e.useSetTableCallback=(e,s,o,t,r,d)=>f(t,"Table",s,o,r,d,e),e.useSetTablesCallback=(e,s,o,t,r)=>f(o,"Tables",e,s,t,r),e.useSliceIds=A,e.useSliceIdsListener=(e,s,o,t)=>S("SliceIds",C(t),s,o,[e]),e.useSliceRowIds=F,e.useSliceRowIdsListener=(e,s,o,t,r)=>S("SliceRowIds",C(r),o,t,[e,s]),e.useStore=e=>I(e,0),e.useTable=(e,s)=>y("Table",w(s),{},[e]),e.useTableIds=P,e.useTableIdsListener=(e,s,o,t,r)=>S("TableIds",w(r),e,s,[],o,t),e.useTableListener=(e,s,o,t,r)=>S("Table",w(r),s,o,[e],t),e.useTables=e=>y("Tables",w(e),{}),e.useTablesListener=(e,s,o,t)=>S("Tables",w(t),e,s,[],o),e.useUndoInformation=e=>{const s=R(e),[o,r]=U(s);return[(d=o,!(0==(e=>e.length)(d))),_(s),r,l(r,(e=>s?.getCheckpoint(e)))??t];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="Tables",l="TableIds",n="Table",u="RowIds",i="SortedRowIds",a="Row",I="CellIds",c="Cell",w=(e,s)=>e.map(s),R=e=>null==e,C=(e,s,t)=>R(e)?t?.():s(e),p=()=>{},{createContext:b,useContext:k}=s,g=b([]),m=(e,s)=>{const t=k(g);return R(e)?t[s]:((e,s)=>C(e,(e=>e[s])))(t[s+1],e)},h=(e,s)=>{const o=m(e,s);return R(e)||(e=>t(e)==r)(e)?o:e},y=e=>h(e,0),L=e=>h(e,2),T=e=>h(e,4),S=e=>h(e,6),f=e=>h(e,8),V=e=>h(e,10),{useCallback:q,useEffect:v,useMemo:x,useRef:P,useState:B}=s,M=(e,s,t=[])=>{const o=x((()=>s(e)),[e,...t]);return v((()=>()=>o.destroy()),[o]),o},D=(e,s,t,o=[],r)=>{const[,d]=B(),l=q((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[n]=B(l),u=P(n);return x((()=>u.current=l()),[l]),A(e,s,((...e)=>{u.current=R(r)?l():e[r],d([])}),[],o),u.current},A=(e,s,t,o=[],r=[],...d)=>v((()=>{const o=s?.["add"+e+"Listener"]?.(...r,t,...d);return()=>s?.delListener(o)}),[s,...r,...o,...d]),F=(e,s,t,o=[],r=p,d=[],...l)=>{const n=y(e);return q((e=>C(n,(o=>C(t(e,o),(e=>r(o["set"+s](...l,e),e)))))),[n,s,...o,...d,...l])},G=(e,s,t=p,o=[],...r)=>{const d=y(e);return q((()=>t(d?.["del"+s](...r))),[d,s,...o,...r])},j=(e,s,t)=>{const o=V(e);return q((()=>o?.[s](t)),[o,s,t])},E=e=>D(l,y(e),[],[]),Q=(e,s)=>D(u,y(s),[],[e]),U=(e,s,t,o=0,r,d)=>D(i,y(d),[],[e,s,t,o,r],6),_=(e,s,t)=>D(I,y(t),[],[e,s]),O=(e,s,t,o)=>D(c,y(o),void 0,[e,s,t],4),z=(e,s)=>D("Metric",L(s),void 0,[e]),H=(e,s)=>D("SliceIds",T(s),[],[e]),J=(e,s,t)=>D("SliceRowIds",T(t),[],[e,s]),K=(e,s,t)=>D("RemoteRowId",S(t),void 0,[e,s]),N=(e,s,t)=>D("LocalRowIds",S(t),[],[e,s]),W=(e,s,t)=>D("LinkedRowIds",S(t),[],[e,s]),X=(e,s)=>D("ResultRowIds",f(s),[],[e]),Y=(e,s,t,o=0,r,d)=>D("ResultSortedRowIds",f(d),[],[e,s,t,o,r],6),Z=(e,s,t)=>D("ResultCellIds",f(t),[],[e,s]),$=(e,s,t,o)=>D("ResultCell",f(o),void 0,[e,s,t]),ee=e=>D("CheckpointIds",V(e),[[],void 0,[]]),se=(e,s)=>D("Checkpoint",V(s),void 0,[e]),te=e=>j(e,"goBackward"),oe=e=>j(e,"goForward"),{createElement:re,useMemo:de}=s,le=({tableId:e,store:s,rowComponent:t=Re,getRowComponentProps:o,separator:r,debugIds:d},l)=>ce(w(l,(r=>re(t,{...Ie(o,r),key:r,tableId:e,rowId:r,store:s,debugIds:d}))),r,d,e),ne=({queryId:e,queries:s,resultRowComponent:t=ke,getResultRowComponentProps:o,separator:r,debugIds:d},l)=>ce(w(l,(r=>re(t,{...Ie(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:d}))),r,d,e),ue=e=>{const s=S(e);return[s,s?.getStore()]},ie=({relationshipId:e,relationships:s,rowComponent:t=Re,getRowComponentProps:o,separator:r,debugIds:d},l,n)=>{const[u,i]=ue(s),a=u?.getLocalTableId(e),I=l(e,n,u);return ce(w(I,(e=>re(t,{...Ie(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:d}))),r,d,n)},ae=e=>({checkpoints:s,checkpointComponent:t=ge,getCheckpointComponentProps:o,separator:r,debugIds:d})=>{const l=V(s);return ce(w(e(ee(l)),(e=>re(t,{...Ie(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:d}))),r)},Ie=(e,s)=>R(e)?{}:e(s),ce=(e,s,t,o)=>{const r=R(s)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},we=({tableId:e,rowId:s,cellId:t,store:r,debugIds:d})=>ce(o+(O(e,s,t,r)??o),void 0,d,t),Re=({tableId:e,rowId:s,store:t,cellComponent:o=we,getCellComponentProps:r,separator:d,debugIds:l})=>ce(w(_(e,s,t),(d=>re(o,{...Ie(r,d),key:d,tableId:e,rowId:s,cellId:d,store:t,debugIds:l}))),d,l,s),Ce=e=>le(e,Q(e.tableId,e.store)),pe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Re,getRowComponentProps:r,separator:d,debugIds:l})=>{const n=T(t),u=n?.getStore(),i=n?.getTableId(e),a=J(e,s,n);return ce(w(a,(e=>re(o,{...Ie(r,e),key:e,tableId:i,rowId:e,store:u,debugIds:l}))),d,l,s)},be=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:d})=>ce(o+($(e,s,t,r)??o),void 0,d,t),ke=({queryId:e,rowId:s,queries:t,resultCellComponent:o=be,getResultCellComponentProps:r,separator:d,debugIds:l})=>ce(w(Z(e,s,t),(d=>re(o,{...Ie(r,d),key:d,queryId:e,rowId:s,cellId:d,queries:t,debugIds:l}))),d,l,s),ge=({checkpoints:e,checkpointId:s,debugIds:t})=>ce(se(s,e)??o,void 0,t,s),me=ae((e=>e[0])),he=ae((e=>R(e[1])?[]:[e[1]])),ye=ae((e=>e[2]));e.BackwardCheckpointsView=me,e.CellView=we,e.CheckpointView=ge,e.CurrentCheckpointView=he,e.ForwardCheckpointsView=ye,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=pe,getSliceComponentProps:o,separator:r,debugIds:d})=>ce(w(H(e,s),(r=>re(t,{...Ie(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:d}))),r,d,e),e.LinkedRowsView=e=>ie(e,W,e.firstRowId),e.LocalRowsView=e=>ie(e,N,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ce(z(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:I,checkpointsById:c,children:w})=>{const R=s.useContext(g);return re(g.Provider,{value:de((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...r},d??R[4],{...R[5],...l},n??R[6],{...R[7],...u},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,r,d,l,n,u,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Re,getRowComponentProps:r,debugIds:d})=>{const[l,n]=ue(t),u=l?.getRemoteTableId(e),i=K(e,s,l);return ce(R(u)||R(i)?null:re(o,{...Ie(r,i),key:i,tableId:u,rowId:i,store:n,debugIds:d}),void 0,d,s)},e.ResultCellView=be,e.ResultRowView=ke,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ne(r,Y(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>ne(e,X(e.queryId,e.queries)),e.RowView=Re,e.SliceView=pe,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>le(r,U(r.tableId,e,s,t,o,r.store)),e.TableView=Ce,e.TablesView=({store:e,tableComponent:s=Ce,getTableComponentProps:t,separator:o,debugIds:r})=>ce(w(E(e),(o=>re(s,{...Ie(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.tableView=le,e.useAddRowCallback=(e,s,t=[],o,r=p,d=[])=>{const l=y(o);return q((t=>C(l,(o=>C(s(t,o),(s=>r(o.addRow(e,s),o,s)))))),[l,e,...t,...d])},e.useCell=O,e.useCellIds=_,e.useCellIdsListener=(e,s,t,o,r,d)=>A(I,y(d),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,d,l)=>A(c,y(l),o,r,[e,s,t],d),e.useCheckpoint=se,e.useCheckpointIds=ee,e.useCheckpointIdsListener=(e,s,t)=>A("CheckpointIds",V(t),e,s),e.useCheckpointListener=(e,s,t,o)=>A("Checkpoint",V(o),s,t,[e]),e.useCheckpoints=e=>m(e,10),e.useCreateCheckpoints=(e,s,t)=>M(e,s,t),e.useCreateIndexes=(e,s,t)=>M(e,s,t),e.useCreateMetrics=(e,s,t)=>M(e,s,t),e.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,d]=B(),l=x((()=>s(e)),[e,...t]);return v((()=>((async()=>{await(o?.(l)),d(1)})(),()=>{l.destroy()})),[l,...r]),l},e.useCreateQueries=(e,s,t)=>M(e,s,t),e.useCreateRelationships=(e,s,t)=>M(e,s,t),e.useCreateStore=(e,s=[])=>x(e,s),e.useDelCellCallback=(e,s,t,o,r,d,l)=>G(r,c,d,l,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>G(t,a,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>G(s,n,t,o,e),e.useDelTablesCallback=(e,s,t)=>G(e,d,s,t),e.useGoBackwardCallback=te,e.useGoForwardCallback=oe,e.useGoToCallback=(e,s=[],t,o=p,r=[])=>{const d=V(t);return q((s=>C(d,(t=>C(e(s),(e=>o(t.goTo(e),e)))))),[d,...s,...r])},e.useIndexes=e=>m(e,4),e.useLinkedRowIds=W,e.useLinkedRowIdsListener=(e,s,t,o,r)=>A("LinkedRowIds",S(r),t,o,[e,s]),e.useLocalRowIds=N,e.useLocalRowIdsListener=(e,s,t,o,r)=>A("LocalRowIds",S(r),t,o,[e,s]),e.useMetric=z,e.useMetricListener=(e,s,t,o)=>A("Metric",L(o),s,t,[e]),e.useMetrics=e=>m(e,2),e.useQueries=e=>m(e,8),e.useRedoInformation=e=>{const s=V(e),[,,[t]]=ee(s);return[!R(t),oe(s),t,C(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>m(e,6),e.useRemoteRowId=K,e.useRemoteRowIdListener=(e,s,t,o,r)=>A("RemoteRowId",S(r),t,o,[e,s]),e.useResultCell=$,e.useResultCellIds=Z,e.useResultCellIdsListener=(e,s,t,o,r)=>A("ResultCellIds",f(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,d)=>A("ResultCell",f(d),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>D("ResultRow",f(t),{},[e,s]),e.useResultRowIds=X,e.useResultRowIdsListener=(e,s,t,o)=>A("ResultRowIds",f(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>A("ResultRow",f(r),t,o,[e,s]),e.useResultSortedRowIds=Y,e.useResultSortedRowIdsListener=(e,s,t,o,r,d,l,n)=>A("ResultSortedRowIds",f(n),d,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>D("ResultTable",f(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>A("ResultTable",f(o),s,t,[e]),e.useRow=(e,s,t)=>D(a,y(t),{},[e,s]),e.useRowIds=Q,e.useRowIdsListener=(e,s,t,o,r)=>A(u,y(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,d)=>A(a,y(d),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,d,l,n)=>F(d,c,o,r,l,n,e,s,t),e.useSetCheckpointCallback=(e=p,s=[],t,o=p,r=[])=>{const d=V(t);return q((s=>C(d,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[d,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,d,l)=>F(r,"PartialRow",t,o,d,l,e,s),e.useSetRowCallback=(e,s,t,o,r,d,l)=>F(r,a,t,o,d,l,e,s),e.useSetTableCallback=(e,s,t,o,r,d)=>F(o,n,s,t,r,d,e),e.useSetTablesCallback=(e,s,t,o,r)=>F(t,d,e,s,o,r),e.useSliceIds=H,e.useSliceIdsListener=(e,s,t,o)=>A("SliceIds",T(o),s,t,[e]),e.useSliceRowIds=J,e.useSliceRowIdsListener=(e,s,t,o,r)=>A("SliceRowIds",T(r),t,o,[e,s]),e.useSortedRowIds=U,e.useSortedRowIdsListener=(e,s,t,o,r,d,l,n,u)=>A(i,y(u),d,l,[e,s,t,o,r],n),e.useStore=e=>m(e,0),e.useTable=(e,s)=>D(n,y(s),{},[e]),e.useTableIds=E,e.useTableIdsListener=(e,s,t,o)=>A(l,y(o),e,s,[],t),e.useTableListener=(e,s,t,o,r)=>A(n,y(r),s,t,[e],o),e.useTables=e=>D(d,y(e),{}),e.useTablesListener=(e,s,t,o)=>A(d,y(o),e,s,[],t),e.useUndoInformation=e=>{const s=V(e),[t,r]=ee(s);return[(d=t,!(0==(e=>e.length)(d))),te(s),r,C(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