tinybase 0.9.0 → 0.9.4

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 (69) hide show
  1. package/lib/checkpoints.d.ts +35 -20
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/common.d.ts +56 -0
  5. package/lib/common.js +1 -0
  6. package/lib/common.js.gz +0 -0
  7. package/lib/debug/checkpoints.d.ts +35 -20
  8. package/lib/debug/checkpoints.js +1 -1
  9. package/lib/debug/common.d.ts +56 -0
  10. package/lib/debug/common.js +3 -0
  11. package/lib/debug/indexes.d.ts +35 -76
  12. package/lib/debug/indexes.js +18 -10
  13. package/lib/debug/metrics.d.ts +45 -20
  14. package/lib/debug/metrics.js +1 -1
  15. package/lib/debug/persisters.d.ts +203 -17
  16. package/lib/debug/persisters.js +1 -1
  17. package/lib/debug/relationships.d.ts +46 -23
  18. package/lib/debug/relationships.js +1 -1
  19. package/lib/debug/store.d.ts +179 -102
  20. package/lib/debug/store.js +1 -1
  21. package/lib/debug/tinybase.d.ts +1 -2
  22. package/lib/debug/tinybase.js +18 -1029
  23. package/lib/debug/{react.d.ts → ui-react.d.ts} +262 -162
  24. package/lib/debug/{react.js → ui-react.js} +24 -15
  25. package/lib/indexes.d.ts +35 -76
  26. package/lib/indexes.js +1 -1
  27. package/lib/indexes.js.gz +0 -0
  28. package/lib/metrics.d.ts +45 -20
  29. package/lib/metrics.js +1 -1
  30. package/lib/metrics.js.gz +0 -0
  31. package/lib/persisters.d.ts +203 -17
  32. package/lib/persisters.js +1 -1
  33. package/lib/persisters.js.gz +0 -0
  34. package/lib/relationships.d.ts +46 -23
  35. package/lib/relationships.js +1 -1
  36. package/lib/relationships.js.gz +0 -0
  37. package/lib/store.d.ts +179 -102
  38. package/lib/store.js +1 -1
  39. package/lib/store.js.gz +0 -0
  40. package/lib/tinybase.d.ts +1 -2
  41. package/lib/tinybase.js +1 -1
  42. package/lib/tinybase.js.gz +0 -0
  43. package/lib/{react.d.ts → ui-react.d.ts} +262 -162
  44. package/lib/ui-react.js +1 -0
  45. package/lib/ui-react.js.gz +0 -0
  46. package/lib/umd/checkpoints.js +1 -1
  47. package/lib/umd/checkpoints.js.gz +0 -0
  48. package/lib/umd/common.js +1 -0
  49. package/lib/umd/common.js.gz +0 -0
  50. package/lib/umd/indexes.js +1 -1
  51. package/lib/umd/indexes.js.gz +0 -0
  52. package/lib/umd/metrics.js +1 -1
  53. package/lib/umd/metrics.js.gz +0 -0
  54. package/lib/umd/persisters.js +1 -1
  55. package/lib/umd/persisters.js.gz +0 -0
  56. package/lib/umd/relationships.js +1 -1
  57. package/lib/umd/relationships.js.gz +0 -0
  58. package/lib/umd/store.js +1 -1
  59. package/lib/umd/store.js.gz +0 -0
  60. package/lib/umd/tinybase.js +1 -1
  61. package/lib/umd/tinybase.js.gz +0 -0
  62. package/lib/umd/ui-react.js +1 -0
  63. package/lib/umd/ui-react.js.gz +0 -0
  64. package/package.json +21 -16
  65. package/readme.md +13 -13
  66. package/lib/react.js +0 -1
  67. package/lib/react.js.gz +0 -0
  68. package/lib/umd/react.js +0 -1
  69. package/lib/umd/react.js.gz +0 -0
@@ -0,0 +1 @@
1
+ import e,{useContext as o}from"react";const t=e=>typeof e,d=t(""),s=(e,o)=>e.map(o),r=e=>null==e,n=(e,o,t)=>r(e)?t?.():o(e),i=()=>{},{createContext:c,useContext:l}=e,I=c([]),a=(e,o)=>{const t=l(I);return r(e)?t[o]:((e,o)=>n(e,(e=>e[o])))(t[o+1],e)},p=(e,o)=>{const s=a(e,o);return r(e)||(e=>t(e)==d)(e)?s:e},u=e=>a(e,0),b=e=>a(e,2),g=e=>a(e,4),w=e=>a(e,6),C=e=>a(e,8),m=e=>p(e,0),k=e=>p(e,2),R=e=>p(e,4),h=e=>p(e,6),v=e=>p(e,8),{useCallback:y,useEffect:T,useMemo:x,useState:P}=e,L=(e,o,t=[])=>{const d=x((()=>o(e)),[e,...t]);return T((()=>()=>d.destroy()),[d]),d},S=(e,o,t,...d)=>{const s=o?.["get"+e]??(()=>t),r=s(...d),[,n]=P(r);return T((()=>{const t=o?.[`add${e}Listener`]?.(...d,(()=>n(s(...d))),!1);return()=>o?.delListener(t)}),[o,e,n,s,...d]),r},B=(e,o,t,d=[],s,...r)=>{T((()=>{const d=o?.[`add${e}Listener`]?.(...r,t,s);return()=>o?.delListener(d)}),[o,e,...d,s,...r])},f=(e,o,t,d=[],s=i,r=[],...c)=>{const l=m(e);return y((e=>n(l,(d=>n(t(e,d),(e=>s(d["set"+o](...c,e),e)))))),[l,o,...d,...r,...c])},M=(e,o,t=i,d=[],...s)=>{const r=m(e);return y((()=>t(r?.["del"+o](...s))),[r,o,...d,...s])},A=(e,o,t)=>{const d=v(e);return y((()=>d?.[o](t)),[d,o,t])},E=(e,o=[])=>x(e,o),$=e=>S("Tables",m(e),{}),F=e=>S("TableIds",m(e),[]),j=(e,o)=>S("Table",m(o),{},e),q=(e,o)=>S("RowIds",m(o),[],e),z=(e,o,t)=>S("Row",m(t),{},e,o),D=(e,o,t)=>S("CellIds",m(t),[],e,o),G=(e,o,t,d)=>S("Cell",m(d),void 0,e,o,t),H=(e,o,t,d,s)=>f(t,"Tables",e,o,d,s),J=(e,o,t,d,s,r)=>f(d,"Table",o,t,s,r,e),K=(e,o,t,d,s,r,n)=>f(s,"Row",t,d,r,n,e,o),N=(e,o,t=[],d,s=i,r=[])=>{const c=m(d);return y((t=>n(c,(d=>n(o(t,d),(o=>s(d.addRow(e,o),d,o)))))),[c,e,...t,...r])},O=(e,o,t,d,s,r,n)=>f(s,"PartialRow",t,d,r,n,e,o),Q=(e,o,t,d,s,r,n,i)=>f(r,"Cell",d,s,n,i,e,o,t),U=(e,o,t)=>M(e,"Tables",o,t),V=(e,o,t,d)=>M(o,"Table",t,d,e),W=(e,o,t,d,s)=>M(t,"Row",d,s,e,o),X=(e,o,t,d,s,r,n)=>M(s,"Cell",r,n,e,o,t,d),Y=(e,o,t,d)=>B("Tables",m(d),e,o,t),Z=(e,o,t,d)=>B("TableIds",m(d),e,o,t),_=(e,o,t,d,s)=>B("Table",m(s),o,t,d,e),ee=(e,o,t,d,s)=>B("RowIds",m(s),o,t,d,e),oe=(e,o,t,d,s,r)=>B("Row",m(r),t,d,s,e,o),te=(e,o,t,d,s,r)=>B("CellIds",m(r),t,d,s,e,o),de=(e,o,t,d,s,r,n)=>B("Cell",m(n),d,s,r,e,o,t),se=(e,o,t)=>L(e,o,t),re=(e,o)=>S("Metric",k(o),void 0,e),ne=(e,o,t,d)=>B("Metric",k(d),o,t,void 0,e),ie=(e,o,t)=>L(e,o,t),ce=(e,o)=>S("SliceIds",R(o),[],e),le=(e,o,t)=>S("SliceRowIds",R(t),[],e,o),Ie=(e,o,t,d)=>B("SliceIds",R(d),o,t,void 0,e),ae=(e,o,t,d,s)=>B("SliceRowIds",R(s),t,d,void 0,e,o),pe=(e,o,t)=>L(e,o,t),ue=(e,o,t)=>S("RemoteRowId",h(t),void 0,e,o),be=(e,o,t)=>S("LocalRowIds",h(t),[],e,o),ge=(e,o,t)=>S("LinkedRowIds",h(t),[],e,o),we=(e,o,t,d,s)=>B("RemoteRowId",h(s),t,d,void 0,e,o),Ce=(e,o,t,d,s)=>B("LocalRowIds",h(s),t,d,void 0,e,o),me=(e,o,t,d,s)=>B("LinkedRowIds",h(s),t,d,void 0,e,o),ke=(e,o,t)=>L(e,o,t),Re=e=>S("CheckpointIds",v(e),[[],void 0,[]]),he=(e,o)=>S("Checkpoint",v(o),void 0,e),ve=(e=i,o=[],t,d=i,s=[])=>{const r=v(t);return y((o=>n(r,(t=>{const s=e(o);d(t.addCheckpoint(s),t,s)}))),[r,...o,...s])},ye=e=>A(e,"goBackward"),Te=e=>A(e,"goForward"),xe=(e,o=[],t,d=i,s=[])=>{const r=v(t);return y((o=>n(r,(t=>n(e(o),(e=>d(t.goTo(e),e)))))),[r,...o,...s])},Pe=e=>{const o=v(e),[t,d]=Re(o);return[(s=t,!(0==(e=>e.length)(s))),ye(o),d,n(d,(e=>o?.getCheckpoint(e)))??""];var s},Le=e=>{const o=v(e),[,,[t]]=Re(o);return[!r(t),Te(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},Se=(e,o,t)=>B("CheckpointIds",v(t),e,o),Be=(e,o,t,d)=>B("Checkpoint",v(d),o,t,void 0,e),fe=(e,o,t=[],d,s=[])=>{const[,r]=P(),n=x((()=>o(e)),[e,...t]);return T((()=>((async()=>{await(d?.(n)),r(1)})(),()=>{n.destroy()})),[n,...s]),n},{createElement:Me,useMemo:Ae}=e,Ee=e=>{const o=h(e);return[o,o?.getStore()]},$e=({relationshipId:e,relationships:o,rowComponent:t=Ge,getRowComponentProps:d,separator:r,debugIds:n},i,c)=>{const[l,I]=Ee(o),a=l?.getLocalTableId(e),p=i(e,c,l);return ze(s(p,(e=>Me(t,{...je(d,e),key:e,tableId:a,rowId:e,store:I,debugIds:n}))),r,n,c)},Fe=e=>({checkpoints:o,checkpointComponent:t=We,getCheckpointComponentProps:d,separator:r,debugIds:n})=>{const i=v(o);return ze(s(e(Re(i)),(e=>Me(t,{...je(d,e),key:e,checkpoints:i,checkpointId:e,debugIds:n}))),r)},je=(e,o)=>r(e)?{}:e(o),qe=({store:e,storesById:t,metrics:d,metricsById:s,indexes:r,indexesById:n,relationships:i,relationshipsById:c,checkpoints:l,checkpointsById:a,children:p})=>{const u=o(I);return Me(I.Provider,{value:Ae((()=>[e??u[0],{...u[1],...t},d??u[2],{...u[3],...s},r??u[4],{...u[5],...n},i??u[6],{...u[7],...c},l??u[8],{...u[9],...a}]),[e,t,d,s,r,n,i,c,l,a,u])},p)},ze=(e,o,t,d)=>{const n=r(o)||!Array.isArray(e)?e:s(e,((e,t)=>t>0?[o,e]:e));return t?[d,":{",n,"}"]:n},De=({tableId:e,rowId:o,cellId:t,store:d,debugIds:s})=>ze(""+(G(e,o,t,d)??""),void 0,s,t),Ge=({tableId:e,rowId:o,store:t,cellComponent:d=De,getCellComponentProps:r,separator:n,debugIds:i})=>ze(s(D(e,o,t),(s=>Me(d,{...je(r,s),key:s,tableId:e,rowId:o,cellId:s,store:t,debugIds:i}))),n,i,o),He=({tableId:e,store:o,rowComponent:t=Ge,getRowComponentProps:d,separator:r,debugIds:n})=>ze(s(q(e,o),(s=>Me(t,{...je(d,s),key:s,tableId:e,rowId:s,store:o,debugIds:n}))),r,n,e),Je=({store:e,tableComponent:o=He,getTableComponentProps:t,separator:d,debugIds:r})=>ze(s(F(e),(d=>Me(o,{...je(t,d),key:d,tableId:d,store:e,debugIds:r}))),d),Ke=({metricId:e,metrics:o,debugIds:t})=>ze(re(e,o)??"",void 0,t,e),Ne=({indexId:e,sliceId:o,indexes:t,rowComponent:d=Ge,getRowComponentProps:r,separator:n,debugIds:i})=>{const c=R(t),l=c?.getStore(),I=c?.getTableId(e),a=le(e,o,c);return ze(s(a,(e=>Me(d,{...je(r,e),key:e,tableId:I,rowId:e,store:l,debugIds:i}))),n,i,o)},Oe=({indexId:e,indexes:o,sliceComponent:t=Ne,getSliceComponentProps:d,separator:r,debugIds:n})=>ze(s(ce(e,o),(s=>Me(t,{...je(d,s),key:s,indexId:e,sliceId:s,indexes:o,debugIds:n}))),r,n,e),Qe=({relationshipId:e,localRowId:o,relationships:t,rowComponent:d=Ge,getRowComponentProps:s,debugIds:n})=>{const[i,c]=Ee(t),l=i?.getRemoteTableId(e),I=ue(e,o,i);return ze(r(l)||r(I)?null:Me(d,{...je(s,I),key:I,tableId:l,rowId:I,store:c,debugIds:n}),void 0,n,o)},Ue=e=>$e(e,be,e.remoteRowId),Ve=e=>$e(e,ge,e.firstRowId),We=({checkpoints:e,checkpointId:o,debugIds:t})=>ze(he(o,e)??"",void 0,t,o),Xe=Fe((e=>e[0])),Ye=Fe((e=>r(e[1])?[]:[e[1]])),Ze=Fe((e=>e[2]));export{Xe as BackwardCheckpointsView,De as CellView,We as CheckpointView,Ye as CurrentCheckpointView,Ze as ForwardCheckpointsView,Oe as IndexView,Ve as LinkedRowsView,Ue as LocalRowsView,Ke as MetricView,qe as Provider,Qe as RemoteRowView,Ge as RowView,Ne as SliceView,He as TableView,Je as TablesView,N as useAddRowCallback,G as useCell,D as useCellIds,te as useCellIdsListener,de as useCellListener,he as useCheckpoint,Re as useCheckpointIds,Se as useCheckpointIdsListener,Be as useCheckpointListener,C as useCheckpoints,ke as useCreateCheckpoints,ie as useCreateIndexes,se as useCreateMetrics,fe as useCreatePersister,pe as useCreateRelationships,E as useCreateStore,X as useDelCellCallback,W as useDelRowCallback,V as useDelTableCallback,U as useDelTablesCallback,ye as useGoBackwardCallback,Te as useGoForwardCallback,xe as useGoToCallback,g as useIndexes,ge as useLinkedRowIds,me as useLinkedRowIdsListener,be as useLocalRowIds,Ce as useLocalRowIdsListener,re as useMetric,ne as useMetricListener,b as useMetrics,Le as useRedoInformation,w as useRelationships,ue as useRemoteRowId,we as useRemoteRowIdListener,z as useRow,q as useRowIds,ee as useRowIdsListener,oe as useRowListener,Q as useSetCellCallback,ve as useSetCheckpointCallback,O as useSetPartialRowCallback,K as useSetRowCallback,J as useSetTableCallback,H as useSetTablesCallback,ce as useSliceIds,Ie as useSliceIdsListener,le as useSliceRowIds,ae as useSliceRowIdsListener,u as useStore,j as useTable,F as useTableIds,Z as useTableIdsListener,_ as useTableListener,$ as useTables,Y as useTablesListener,Pe as useUndoInformation};
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e.includes(t),n=(e,t)=>e.forEach(t),o=e=>e.length,s=e=>0==o(e),i=e=>e.slice(1),r=e=>null==e,l=(e,t,n)=>r(e)?n?.():t(e),c=(e,t)=>e?.has(t)??!1,d=e=>r(e)||0==(e=>e.size)(e),p=(e,t)=>e?.forEach(t),a=(e,t)=>e?.delete(t),u=e=>new Map(e),h=(e,t)=>e?.get(t),f=(e,t,n)=>r(n)?(a(e,t),e):e?.set(t,n),g=(e,t,n,o)=>(c(e,t)||(o?.(n),e.set(t,n)),h(e,t)),C=e=>new Set(e),k=(e,t,n)=>o(n)<2?((e,t)=>e?.add(t))(s(n)?e:g(e,n[0],C()),t):k(g(e,n[0],u()),t,i(n)),y=e=>{const t=(o,r,...c)=>l(o,(o=>s(c)?e(o,r):n([c[0],null],(e=>t(h(o,e),r,...i(c))))));return t},v=Object.freeze,L=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{let i,L,b,w=100,S=u(),T=1;const j=C(),x=u(),[z,M,m]=(e=>{let t,s=0;const i=[],c=u();return[(n,o,r=[])=>{t??(t=e());const l=i.pop()??""+s++;return f(c,l,[n,o,r]),k(o,l,r),l},(e,n=[],...o)=>y(p)(e,(e=>l(h(c,e),(([e])=>e(t,...n,...o)))),...n),e=>l(h(c,e),(([,t,n])=>(y(a)(t,e,...n),f(c,e),o(i)<1e3&&i.push(e),n)),(()=>[])),(e,s,i)=>l(h(c,e),(([e,,l])=>{const c=(...d)=>{const p=o(d);p==o(l)?e(t,...d,...i(d)):r(l[p])?n(s[p](...d),(e=>c(...d,e))):c(...d,l[p])};c()}))]})((()=>N)),B=u(),E=u(),I=[],O=[],_=(t,n)=>{T=0,e.transaction((()=>p(h(B,n),((n,o)=>p(n,((n,s)=>p(n,((n,i)=>r(n[t])?e.delCell(o,s,i,!0):e.setCell(o,s,i,n[t]))))))))),T=1},F=e=>{f(B,e),f(E,e),M(x,[e])},P=(e,t)=>n(((e,t)=>e.splice(0,t))(e,t??o(e)),F),W=()=>P(I,o(I)-w),q=e.addCellListener(null,null,null,((e,t,n,o,s,r)=>{if(T){l(i,(()=>{I.push(i),W(),P(O),i=void 0,b=1}));const e=g(S,t,u()),c=g(e,n,u()),p=g(c,o,[void 0,void 0],(e=>e[0]=r));p[1]=s,p[0]===p[1]&&d(f(c,o))&&d(f(e,n))&&d(f(S,t))&&(i=I.pop(),b=1),H()}})),A=(e="")=>(r(i)&&(i=""+L++,f(B,i,S),K(i,e),S=u(),b=1),i),D=()=>{s(I)||(O.unshift(A()),_(0,i),i=I.pop(),b=1)},G=()=>{s(O)||(I.push(i),i=O.shift(),_(1,i),b=1)},H=()=>{b&&(M(j),b=0)},J=e=>{const t=A(e);return H(),t},K=(e,t)=>(c(B,e)&&h(E,e)!==t&&(f(E,e,t),M(x,[e])),N),N={setSize:e=>(w=e,W(),N),addCheckpoint:J,setCheckpoint:K,getStore:()=>e,getCheckpointIds:()=>[[...I],i,[...O]],getCheckpoint:e=>h(E,e),goBackward:()=>(D(),H(),N),goForward:()=>(G(),H(),N),goTo:e=>{const n=t(I,e)?D:t(O,e)?G:null;for(;!r(n)&&e!=i;)n();return H(),N},addCheckpointIdsListener:e=>z(e,j),addCheckpointListener:(e,t)=>z(t,x,[e]),delListener:e=>(m(e),N),clear:()=>(P(I),P(O),r(i)||F(i),i=void 0,L=0,J(),N),destroy:()=>{e.delListener(q)},getListenerStats:()=>({})};return v(N.clear())}));e.createCheckpoints=L,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=(e,t)=>e.includes(t),n=(e,t)=>e.forEach(t),o=e=>e.length,s=e=>0==o(e),i=e=>e.slice(1),r=e=>null==e,l=(e,t,n)=>r(e)?n?.():t(e),c=(e,t)=>e?.has(t)??!1,d=e=>r(e)||0==(e=>e.size)(e),p=(e,t)=>e?.forEach(t),a=(e,t)=>e?.delete(t),u=e=>new Map(e),h=(e,t)=>e?.get(t),f=(e,t,n)=>r(n)?(a(e,t),e):e?.set(t,n),g=(e,t,n,o)=>(c(e,t)||(o?.(n),e.set(t,n)),h(e,t)),C=e=>new Set(e),k=(e,t,n)=>o(n)<2?((e,t)=>e?.add(t))(s(n)?e:g(e,n[0],C()),t):k(g(e,n[0],u()),t,i(n)),y=e=>{const t=(o,r,...c)=>l(o,(o=>s(c)?e(o,r):n([c[0],null],(e=>t(h(o,e),r,...i(c))))));return t},v=Object.freeze,L=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{let i,L,b,w=100,S=u(),T=1;const j=C(),x=u(),[z,M,m]=(e=>{let t,s=0;const i=[],c=u();return[(n,o,r=[])=>{t??=e();const l=i.pop()??""+s++;return f(c,l,[n,o,r]),k(o,l,r),l},(e,n=[],...o)=>y(p)(e,(e=>l(h(c,e),(([e])=>e(t,...n,...o)))),...n),e=>l(h(c,e),(([,t,n])=>(y(a)(t,e,...n),f(c,e),o(i)<1e3&&i.push(e),n)),(()=>[])),(e,s,i)=>l(h(c,e),(([e,,l])=>{const c=(...d)=>{const p=o(d);p==o(l)?e(t,...d,...i(d)):r(l[p])?n(s[p](...d),(e=>c(...d,e))):c(...d,l[p])};c()}))]})((()=>N)),B=u(),E=u(),I=[],O=[],_=(t,n)=>{T=0,e.transaction((()=>p(h(B,n),((n,o)=>p(n,((n,s)=>p(n,((n,i)=>r(n[t])?e.delCell(o,s,i,!0):e.setCell(o,s,i,n[t]))))))))),T=1},F=e=>{f(B,e),f(E,e),M(x,[e])},P=(e,t)=>n(((e,t)=>e.splice(0,t))(e,t??o(e)),F),W=()=>P(I,o(I)-w),q=e.addCellListener(null,null,null,((e,t,n,o,s,r)=>{if(T){l(i,(()=>{I.push(i),W(),P(O),i=void 0,b=1}));const e=g(S,t,u()),c=g(e,n,u()),p=g(c,o,[void 0,void 0],(e=>e[0]=r));p[1]=s,p[0]===p[1]&&d(f(c,o))&&d(f(e,n))&&d(f(S,t))&&(i=I.pop(),b=1),H()}})),A=(e="")=>(r(i)&&(i=""+L++,f(B,i,S),K(i,e),S=u(),b=1),i),D=()=>{s(I)||(O.unshift(A()),_(0,i),i=I.pop(),b=1)},G=()=>{s(O)||(I.push(i),i=O.shift(),_(1,i),b=1)},H=()=>{b&&(M(j),b=0)},J=e=>{const t=A(e);return H(),t},K=(e,t)=>(c(B,e)&&h(E,e)!==t&&(f(E,e,t),M(x,[e])),N),N={setSize:e=>(w=e,W(),N),addCheckpoint:J,setCheckpoint:K,getStore:()=>e,getCheckpointIds:()=>[[...I],i,[...O]],getCheckpoint:e=>h(E,e),goBackward:()=>(D(),H(),N),goForward:()=>(G(),H(),N),goTo:e=>{const n=t(I,e)?D:t(O,e)?G:null;for(;!r(n)&&e!=i;)n();return H(),N},addCheckpointIdsListener:e=>z(e,j),addCheckpointListener:(e,t)=>z(t,x,[e]),delListener:e=>(m(e),N),clear:()=>(P(I),P(O),r(i)||F(i),i=void 0,L=0,J(),N),destroy:()=>{e.delListener(q)},getListenerStats:()=>({})};return v(N.clear())}));e.createCheckpoints=L,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
@@ -0,0 +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={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=(e,t)=>e.every(((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),d=(e,t)=>e.forEach(t),r=e=>e.length,i=e=>0==r(e),l=e=>e.slice(1),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),p=e=>e.clear(),g=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),h=e=>new Map(e),y=e=>[...e?.keys()??[]],b=(e,t)=>e?.get(t),w=(e,t)=>g(e,((e,n)=>t(n,e))),x=(e,t,n)=>c(n)?(I(e,t),e):e?.set(t,n),S=(e,t,n,s)=>(f(e,t)||(s?.(n),e.set(t,n)),b(e,t)),v=e=>new Set(e),L=(e,t)=>e?.add(t),T=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),R=(e,t,n)=>r(n)<2?L(i(n)?e:S(e,n[0],v()),t):R(S(e,n[0],h()),t,l(n)),j=e=>{const t=(n,s,...o)=>a(n,(n=>i(o)?e(n,s):d([o[0],null],(e=>t(b(n,e),s,...l(o))))));return t},M=Object.freeze,k=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=h(),n=h(),[i,l,S,k,z,D,E,O]=((e,t,n)=>{const s=e.hasRow,o=h(),r=h(),i=h(),l=h(),u=h(),I=t=>a(b(u,t),(n=>{g(n,e.delListener),x(u,t)})),S=e=>{x(o,e),x(r,e),x(i,e),x(l,e),I(e)};return[()=>e,()=>y(o),e=>b(o,e),e=>b(r,e),(e,t)=>x(r,e,t),(a,y,S,L,T)=>{const R=h(),j=h();x(o,a,y),f(r,a)||(x(r,a,t()),x(i,a,h()),x(l,a,h()));const M=b(i,a),k=b(l,a),m=t=>{const o=n=>e.getCell(y,t,n),d=b(M,t),r=s(y,t)?n(L(o,t)):void 0;if(d!=r&&x(R,t,[d,r]),!c(T)){const e=b(k,t),n=s(y,t)?T(o,t):void 0;e!=n&&x(j,t,n)}},z=e=>{S((()=>{g(R,(([,e],t)=>x(M,t,e))),g(j,((e,t)=>x(k,t,e)))}),R,j,M,k,e),p(R),p(j)};w(M,m),e.hasTable(y)&&d(e.getRowIds(y),(e=>{f(M,e)||m(e)})),z(!0),I(a),x(u,a,v([e.addRowListener(y,null,((e,t,n)=>m(n))),e.addTableListener(y,(()=>z()))]))},S,()=>w(u,S)]})(e,h,(e=>c(e)?"":e+"")),[_,B,C]=(e=>{let t,n=0;const s=[],o=h();return[(d,r,i=[])=>{t??(t=e());const l=s.pop()??""+n++;return x(o,l,[d,r,i]),R(r,l,i),l},(e,n=[],...s)=>j(g)(e,(e=>a(b(o,e),(([e])=>e(t,...n,...s)))),...n),e=>a(b(o,e),(([,t,n])=>(j(I)(t,e,...n),x(o,e),r(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>a(b(o,e),(([e,,o])=>{const i=(...l)=>{const a=r(l);a==r(o)?e(t,...l,...s(l)):c(o[a])?d(n[a](...l),(e=>i(...l,e))):i(...l,o[a])};i()}))]})((()=>P)),P={setIndexDefinition:(e,d,r,i,l,p=m)=>{const y=c(l)?void 0:([e],[t])=>l(e,t);return D(e,d,((d,r,l,S,T)=>{let R=0;const j=v(),M=v(),m=k(e);if(g(r,(([e,t],n)=>{c(e)||(L(j,e),a(b(m,e),(t=>{I(t,n),u(t)&&(x(m,e),R=1)}))),c(t)||(L(j,t),f(m,t)||(x(m,t,v()),R=1),L(b(m,t),n),c(i)||L(M,t))})),d(),w(l,(e=>a(b(S,e),(e=>L(M,e))))),u(T)||g(M,(e=>{const t=(t,n)=>p(b(T,t),b(T,n),e),n=[...b(m,e)];s(n,t)||(x(m,e,v(o(n,t))),L(j,e))})),R){if(!c(y)){const t=[...m];s(t,y)||z(e,h(o(t,y)))}B(t,[e])}g(j,(t=>B(n,[e,t])))}),T(r),a(i,T)),P},delIndexDefinition:e=>(E(e),P),getStore:i,getIndexIds:l,getTableId:S,getSliceIds:e=>y(k(e)),getSliceRowIds:(e,t)=>[...b(k(e),t)?.values()??[]],addSliceIdsListener:(e,n)=>_(n,t,[e]),addSliceRowIdsListener:(e,t,s)=>_(s,n,[e,t]),delListener:e=>(C(e),P),destroy:O,getListenerStats:()=>({})};return M(P)})),m=(e,t)=>e<t?-1:1;e.createIndexes=k,e.defaultSorter=m,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=t(""),s=(e,t)=>e.every(((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),d=(e,t)=>e.forEach(t),i=e=>e.length,r=e=>0==i(e),l=e=>e.slice(1),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),p=e=>e.clear(),g=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),h=e=>new Map(e),y=e=>[...e?.keys()??[]],b=(e,t)=>e?.get(t),w=(e,t)=>g(e,((e,n)=>t(n,e))),x=(e,t,n)=>c(n)?(I(e,t),e):e?.set(t,n),v=(e,t,n,s)=>(f(e,t)||(s?.(n),e.set(t,n)),b(e,t)),L=e=>new Set(e),S=(e,t)=>e?.add(t),T=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),R=(e,t)=>e<t?-1:1,j=(e,t,n)=>i(n)<2?S(r(n)?e:v(e,n[0],L()),t):j(v(e,n[0],h()),t,l(n)),M=e=>{const t=(n,s,...o)=>a(n,(n=>r(o)?e(n,s):d([o[0],null],(e=>t(b(n,e),s,...l(o))))));return t},k=Object.freeze,m=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=h(),n=h(),[r,l,v,m,z,D,E,O]=((e,t,n)=>{const s=e.hasRow,o=h(),i=h(),r=h(),l=h(),u=h(),I=t=>a(b(u,t),(n=>{g(n,e.delListener),x(u,t)})),v=e=>{x(o,e),x(i,e),x(r,e),x(l,e),I(e)};return[()=>e,()=>y(o),e=>b(o,e),e=>b(i,e),(e,t)=>x(i,e,t),(a,y,v,S,T)=>{const R=h(),j=h();x(o,a,y),f(i,a)||(x(i,a,t()),x(r,a,h()),x(l,a,h()));const M=b(r,a),k=b(l,a),m=t=>{const o=n=>e.getCell(y,t,n),d=b(M,t),i=s(y,t)?n(S(o,t)):void 0;if(d!=i&&x(R,t,[d,i]),!c(T)){const e=b(k,t),n=s(y,t)?T(o,t):void 0;e!=n&&x(j,t,n)}},z=e=>{v((()=>{g(R,(([,e],t)=>x(M,t,e))),g(j,((e,t)=>x(k,t,e)))}),R,j,M,k,e),p(R),p(j)};w(M,m),e.hasTable(y)&&d(e.getRowIds(y),(e=>{f(M,e)||m(e)})),z(!0),I(a),x(u,a,L([e.addRowListener(y,null,((e,t,n)=>m(n))),e.addTableListener(y,(()=>z()))]))},v,()=>w(u,v)]})(e,h,(e=>c(e)?"":e+"")),[_,B,C]=(e=>{let t,n=0;const s=[],o=h();return[(d,i,r=[])=>{t??=e();const l=s.pop()??""+n++;return x(o,l,[d,i,r]),j(i,l,r),l},(e,n=[],...s)=>M(g)(e,(e=>a(b(o,e),(([e])=>e(t,...n,...s)))),...n),e=>a(b(o,e),(([,t,n])=>(M(I)(t,e,...n),x(o,e),i(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>a(b(o,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()}))]})((()=>P)),P={setIndexDefinition:(e,d,i,r,l,p=R)=>{const y=c(l)?void 0:([e],[t])=>l(e,t);return D(e,d,((d,i,l,v,T,R)=>{let j=0;const M=L(),k=L(),D=m(e);if(g(i,(([e,t],n)=>{c(e)||(S(M,e),a(b(D,e),(t=>{I(t,n),u(t)&&(x(D,e),j=1)}))),c(t)||(S(M,t),f(D,t)||(x(D,t,L()),j=1),S(b(D,t),n),c(r)||S(k,t))})),d(),u(T)||(R?w(D,(e=>S(k,e))):w(l,(e=>a(b(v,e),(e=>S(k,e))))),g(k,(e=>{const t=(t,n)=>p(b(T,t),b(T,n),e),n=[...b(D,e)];s(n,t)||(x(D,e,L(o(n,t))),S(M,e))}))),(j||R)&&!c(y)){const t=[...D];s(t,y)||(z(e,h(o(t,y))),j=1)}j&&B(t,[e]),g(M,(t=>B(n,[e,t])))}),T(i),a(r,T)),P},delIndexDefinition:e=>(E(e),P),getStore:r,getIndexIds:l,getTableId:v,getSliceIds:e=>y(m(e)),getSliceRowIds:(e,t)=>[...b(m(e),t)?.values()??[]],addSliceIdsListener:(e,n)=>_(n,t,[e]),addSliceRowIdsListener:(e,t,s)=>_(s,n,[e,t]),delListener:e=>(C(e),P),destroy:O,getListenerStats:()=>({})};return k(P)}));e.createIndexes=m,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(t),o=(e,t)=>e.forEach(t),i=e=>c(e,((e,t)=>e+t),0),r=e=>e.length,d=e=>0==r(e),c=(e,t,n)=>e.reduce(t,n),a=e=>e.slice(1),l=Math.max,u=Math.min,f=isFinite,p=e=>null==e,v=(e,t,n)=>p(e)?n?.():t(e),g=()=>{},h=e=>e.size,M=(e,t)=>e?.has(t)??!1,y=e=>e.clear(),b=(e,t)=>e?.forEach(t),m=(e,t)=>e?.delete(t),w=e=>new Map(e),L=(e,t)=>e?.get(t),T=(e,t)=>b(e,((e,n)=>t(n,e))),x=(e,t,n)=>p(n)?(m(e,t),e):e?.set(t,n),j=(e,t,n,s)=>(M(e,t)||(s?.(n),e.set(t,n)),L(e,t)),I=e=>new Set(e),R=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),S=(e,t,n)=>r(n)<2?((e,t)=>e?.add(t))(d(n)?e:j(e,n[0],I()),t):S(j(e,n[0],w()),t,a(n)),k=e=>{const t=(n,s,...i)=>v(n,(n=>d(i)?e(n,s):o([i[0],null],(e=>t(L(n,e),s,...a(i))))));return t},z=Object.freeze,D=w([["avg",[(e,t)=>i(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=>i(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),E=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const n=w(),[i,d,c,a,l,u,j,E]=((e,t,n)=>{const s=e.hasRow,i=w(),r=w(),d=w(),c=w(),a=w(),l=t=>v(L(a,t),(n=>{b(n,e.delListener),x(a,t)})),u=e=>{x(i,e),x(r,e),x(d,e),x(c,e),l(e)};return[()=>e,()=>[...i?.keys()??[]],e=>L(i,e),e=>L(r,e),(e,t)=>x(r,e,t),(u,f,v,g,h)=>{const m=w(),j=w();x(i,u,f),M(r,u)||(x(r,u,t()),x(d,u,w()),x(c,u,w()));const R=L(d,u),S=L(c,u),k=t=>{const o=n=>e.getCell(f,t,n),i=L(R,t),r=s(f,t)?n(g(o,t)):void 0;if(i!=r&&x(m,t,[i,r]),!p(h)){const e=L(S,t),n=s(f,t)?h(o,t):void 0;e!=n&&x(j,t,n)}},z=e=>{v((()=>{b(m,(([,e],t)=>x(R,t,e))),b(j,((e,t)=>x(S,t,e)))}),m,j,R,S,e),y(m),y(j)};T(R,k),e.hasTable(f)&&o(e.getRowIds(f),(e=>{M(R,e)||k(e)})),z(!0),l(u),x(a,u,I([e.addRowListener(f,null,((e,t,n)=>k(n))),e.addTableListener(f,(()=>z()))]))},u,()=>T(a,u)]})(e,g,(e=>isNaN(e)||p(e)||!0===e||!1===e||""===e?void 0:1*e)),[N,O,_]=(e=>{let t,n=0;const s=[],i=w();return[(o,r,d=[])=>{t??(t=e());const c=s.pop()??""+n++;return x(i,c,[o,r,d]),S(r,c,d),c},(e,n=[],...s)=>k(b)(e,(e=>v(L(i,e),(([e])=>e(t,...n,...s)))),...n),e=>v(L(i,e),(([,t,n])=>(k(m)(t,e,...n),x(i,e),r(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>v(L(i,e),(([e,,i])=>{const d=(...c)=>{const a=r(c);a==r(i)?e(t,...c,...s(c)):p(i[a])?o(n[a](...c),(e=>d(...c,e))):d(...c,i[a])};d()}))]})((()=>B)),B={setMetricDefinition:(e,o,i,r,d,c,v)=>{const g=t(i)==s?[i,d,c,v]:L(D,i)??L(D,"sum");return u(e,o,((t,s,o,i,r,d)=>{let c=a(e),u=h(i);const[v,M,y,m]=g;var w;d=d||p(c),b(s,(([e,t])=>{d||(c=p(e)?M?.(c,t,u++):p(t)?y?.(c,e,u--):m?.(c,t,e,u)),d=d||p(c)})),t(),p(w=i)||0==h(w)?c=void 0:d&&(c=v((e=>[...e?.values()??[]])(i),h(i))),f(c)||(c=void 0);const L=a(e);c!=L&&(l(e,c),O(n,[e],c,L))}),R(r,1)),B},delMetricDefinition:e=>(j(e),B),getStore:i,getMetricIds:d,getTableId:c,getMetric:a,addMetricListener:(e,t)=>N(t,n,[e]),delListener:e=>(_(e),B),destroy:E,getListenerStats:()=>({})};return z(B)}));e.createMetrics=E,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=t(""),s=t(t),o=(e,t)=>e.forEach(t),i=e=>c(e,((e,t)=>e+t),0),r=e=>e.length,d=e=>0==r(e),c=(e,t,n)=>e.reduce(t,n),a=e=>e.slice(1),l=Math.max,u=Math.min,f=isFinite,p=e=>null==e,v=(e,t,n)=>p(e)?n?.():t(e),g=()=>{},h=e=>e.size,M=(e,t)=>e?.has(t)??!1,y=e=>e.clear(),b=(e,t)=>e?.forEach(t),m=(e,t)=>e?.delete(t),w=e=>new Map(e),L=(e,t)=>e?.get(t),T=(e,t)=>b(e,((e,n)=>t(n,e))),x=(e,t,n)=>p(n)?(m(e,t),e):e?.set(t,n),j=(e,t,n,s)=>(M(e,t)||(s?.(n),e.set(t,n)),L(e,t)),I=e=>new Set(e),R=(e,s)=>t(e)==n?t=>t(e):e??(()=>s??""),S=(e,t,n)=>r(n)<2?((e,t)=>e?.add(t))(d(n)?e:j(e,n[0],I()),t):S(j(e,n[0],w()),t,a(n)),k=e=>{const t=(n,s,...i)=>v(n,(n=>d(i)?e(n,s):o([i[0],null],(e=>t(L(n,e),s,...a(i))))));return t},z=Object.freeze,D=w([["avg",[(e,t)=>i(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=>i(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),E=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const n=w(),[i,d,c,a,l,u,j,E]=((e,t,n)=>{const s=e.hasRow,i=w(),r=w(),d=w(),c=w(),a=w(),l=t=>v(L(a,t),(n=>{b(n,e.delListener),x(a,t)})),u=e=>{x(i,e),x(r,e),x(d,e),x(c,e),l(e)};return[()=>e,()=>[...i?.keys()??[]],e=>L(i,e),e=>L(r,e),(e,t)=>x(r,e,t),(u,f,v,g,h)=>{const m=w(),j=w();x(i,u,f),M(r,u)||(x(r,u,t()),x(d,u,w()),x(c,u,w()));const R=L(d,u),S=L(c,u),k=t=>{const o=n=>e.getCell(f,t,n),i=L(R,t),r=s(f,t)?n(g(o,t)):void 0;if(i!=r&&x(m,t,[i,r]),!p(h)){const e=L(S,t),n=s(f,t)?h(o,t):void 0;e!=n&&x(j,t,n)}},z=e=>{v((()=>{b(m,(([,e],t)=>x(R,t,e))),b(j,((e,t)=>x(S,t,e)))}),m,j,R,S,e),y(m),y(j)};T(R,k),e.hasTable(f)&&o(e.getRowIds(f),(e=>{M(R,e)||k(e)})),z(!0),l(u),x(a,u,I([e.addRowListener(f,null,((e,t,n)=>k(n))),e.addTableListener(f,(()=>z()))]))},u,()=>T(a,u)]})(e,g,(e=>isNaN(e)||p(e)||!0===e||!1===e||""===e?void 0:1*e)),[N,O,_]=(e=>{let t,n=0;const s=[],i=w();return[(o,r,d=[])=>{t??=e();const c=s.pop()??""+n++;return x(i,c,[o,r,d]),S(r,c,d),c},(e,n=[],...s)=>k(b)(e,(e=>v(L(i,e),(([e])=>e(t,...n,...s)))),...n),e=>v(L(i,e),(([,t,n])=>(k(m)(t,e,...n),x(i,e),r(s)<1e3&&s.push(e),n)),(()=>[])),(e,n,s)=>v(L(i,e),(([e,,i])=>{const d=(...c)=>{const a=r(c);a==r(i)?e(t,...c,...s(c)):p(i[a])?o(n[a](...c),(e=>d(...c,e))):d(...c,i[a])};d()}))]})((()=>B)),B={setMetricDefinition:(e,o,i,r,d,c,v)=>{const g=t(i)==s?[i,d,c,v]:L(D,i)??L(D,"sum");return u(e,o,((t,s,o,i,r,d)=>{let c=a(e),u=h(i);const[v,M,y,m]=g;var w;d=d||p(c),b(s,(([e,t])=>{d||(c=p(e)?M?.(c,t,u++):p(t)?y?.(c,e,u--):m?.(c,t,e,u)),d=d||p(c)})),t(),p(w=i)||0==h(w)?c=void 0:d&&(c=v((e=>[...e?.values()??[]])(i),h(i))),f(c)||(c=void 0);const L=a(e);c!=L&&(l(e,c),O(n,[e],c,L))}),R(r,1)),B},delMetricDefinition:e=>(j(e),B),getStore:i,getMetricIds:d,getTableId:c,getMetric:a,addMetricListener:(e,t)=>N(t,n,[e]),delListener:e=>(_(e),B),destroy:E,getListenerStats:()=>({})};return z(B)}));e.createMetrics=E,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,t){"use strict";const s="utf8",a=e=>null==e,o=(e,t,s)=>a(e)?s?.():t(e),r=Object.freeze,n=(e,t,s,n,i)=>{let c,d=0;const l={load:async s=>{if(2!=d){d=1;const o=await t();a(o)||""==o?e.setTables(s):e.setJson(o),d=0}return l},startAutoLoad:async e=>(l.stopAutoLoad(),await l.load(e),n(l.load),l),stopAutoLoad:()=>(i(),l),save:async()=>(1!=d&&(d=2,await s(e.getJson()),d=0),l),startAutoSave:async()=>(await l.stopAutoSave().save(),c=e.addTablesListener((()=>l.save())),l),stopAutoSave:()=>(o(c,e.delListener),l),getStore:()=>e,destroy:()=>l.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(l)},i="storage",c=window,d=(e,t,s)=>{let a;return n(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{a=a=>{a.storageArea===s&&a.key===t&&e()},c.addEventListener(i,a)}),(()=>{c.removeEventListener(i,a),a=void 0}))},l=e=>e.headers.get("ETag");e.createCustomPersister=n,e.createFilePersister=(e,a)=>{let o;return n(e,(async()=>{try{return await t.promises.readFile(a,s)}catch{}}),(async e=>{try{await t.promises.writeFile(a,e,s)}catch{}}),(e=>{o=t.watch(a,e)}),(()=>{o?.close(),o=void 0}))},e.createLocalPersister=(e,t)=>d(e,t,localStorage),e.createRemotePersister=(e,t,s,r)=>{let i,c;return n(e,(async()=>{const e=await fetch(t);return c=l(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{i=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),o=l(s);a(c)||a(o)||o==c||(c=o,e())}),1e3*r)}),(()=>{o(i,clearInterval),i=void 0}))},e.createSessionPersister=(e,t)=>d(e,t,sessionStorage),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).TinyBasePersisters={},e.fs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const s="utf8",a=e=>null==e,o=(e,t,s)=>a(e)?s?.():t(e),r=Object.freeze,n=(e,t,s,n,i)=>{let c,d=0;const l={load:async s=>{if(2!=d){d=1;const o=await t();a(o)||""==o?e.setTables(s):e.setJson(o),d=0}return l},startAutoLoad:async e=>(l.stopAutoLoad(),await l.load(e),n(l.load),l),stopAutoLoad:()=>(i(),l),save:async()=>(1!=d&&(d=2,await s(e.getJson()),d=0),l),startAutoSave:async()=>(await l.stopAutoSave().save(),c=e.addTablesListener((()=>l.save())),l),stopAutoSave:()=>(o(c,e.delListener),l),getStore:()=>e,destroy:()=>l.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(l)},i="storage",c=globalThis.window,d=(e,t,s)=>{let a;return n(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{a=a=>{a.storageArea===s&&a.key===t&&e()},c.addEventListener(i,a)}),(()=>{c.removeEventListener(i,a),a=void 0}))},l=e=>e.headers.get("ETag");e.createCustomPersister=n,e.createFilePersister=(e,a)=>{let o;return n(e,(async()=>{try{return await t.promises.readFile(a,s)}catch{}}),(async e=>{try{await t.promises.writeFile(a,e,s)}catch{}}),(e=>{o=t.watch(a,e)}),(()=>{o?.close(),o=void 0}))},e.createLocalPersister=(e,t)=>d(e,t,localStorage),e.createRemotePersister=(e,t,s,r)=>{let i,c;return n(e,(async()=>{const e=await fetch(t);return c=l(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{i=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),o=l(s);a(c)||a(o)||o==c||(c=o,e())}),1e3*r)}),(()=>{o(i,clearInterval),i=void 0}))},e.createSessionPersister=(e,t)=>d(e,t,sessionStorage),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).TinyBasePersisters={},e.fs);
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s=t(""),n=(e,t)=>e.forEach(t),o=e=>e.length,i=e=>0==o(e),d=e=>e.slice(1),r=e=>null==e,l=(e,t,s)=>r(e)?s?.():t(e),a=(e,t)=>e?.has(t)??!1,c=e=>[...e?.values()??[]],f=e=>e.clear(),u=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),R=e=>new Map(e),h=(e,t)=>e?.get(t),g=(e,t)=>u(e,((e,s)=>t(s,e))),L=(e,t,s)=>r(s)?(p(e,t),e):e?.set(t,s),w=(e,t,s,n)=>(a(e,t)||(n?.(s),e.set(t,s)),h(e,t)),I=e=>new Set(e),b=(e,t)=>e?.add(t),y=(e,n)=>t(e)==s?t=>t(e):e??(()=>n??""),v=(e,t,s)=>o(s)<2?b(i(s)?e:w(e,s[0],I()),t):v(w(e,s[0],R()),t,d(s)),T=e=>{const t=(s,o,...r)=>l(s,(s=>i(r)?e(s,o):n([r[0],null],(e=>t(h(s,e),o,...d(r))))));return t},m=Object.freeze,k=(e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))})((e=>{const t=R(),s=R(),i=R(),d=R(),[w,k,j,x,M,S,z,D]=((e,t,s)=>{const o=e.hasRow,i=R(),d=R(),c=R(),p=R(),w=R(),b=t=>l(h(w,t),(s=>{u(s,e.delListener),L(w,t)})),y=e=>{L(i,e),L(d,e),L(c,e),L(p,e),b(e)};return[()=>e,()=>[...i?.keys()??[]],e=>h(i,e),e=>h(d,e),(e,t)=>L(d,e,t),(l,y,v,T,m)=>{const k=R(),j=R();L(i,l,y),a(d,l)||(L(d,l,t()),L(c,l,R()),L(p,l,R()));const x=h(c,l),M=h(p,l),S=t=>{const n=s=>e.getCell(y,t,s),i=h(x,t),d=o(y,t)?s(T(n,t)):void 0;if(i!=d&&L(k,t,[i,d]),!r(m)){const e=h(M,t),s=o(y,t)?m(n,t):void 0;e!=s&&L(j,t,s)}},z=e=>{v((()=>{u(k,(([,e],t)=>L(x,t,e))),u(j,((e,t)=>L(M,t,e)))}),k,j,x,M,e),f(k),f(j)};g(x,S),e.hasTable(y)&&n(e.getRowIds(y),(e=>{a(x,e)||S(e)})),z(!0),b(l),L(w,l,I([e.addRowListener(y,null,((e,t,s)=>S(s))),e.addTableListener(y,(()=>z()))]))},y,()=>g(w,y)]})(e,(()=>[R(),R(),R(),R()]),(e=>r(e)?void 0:e+"")),[E,O,_]=(e=>{let t,s=0;const i=[],d=R();return[(n,o,r=[])=>{t??(t=e());const l=i.pop()??""+s++;return L(d,l,[n,o,r]),v(o,l,r),l},(e,s=[],...n)=>T(u)(e,(e=>l(h(d,e),(([e])=>e(t,...s,...n)))),...s),e=>l(h(d,e),(([,t,s])=>(T(p)(t,e,...s),L(d,e),o(i)<1e3&&i.push(e),s)),(()=>[])),(e,s,i)=>l(h(d,e),(([e,,d])=>{const l=(...a)=>{const c=o(a);c==o(d)?e(t,...a,...i(a)):r(d[c])?n(s[c](...a),(e=>l(...a,e))):l(...a,d[c])};l()}))]})((()=>W)),B=(e,t,s)=>l(x(e),(([n,,o])=>{if(!a(o,t)){const i=I();if(j(e)!=P(e))b(i,t);else{let e=t;for(;!r(e)&&!a(i,e);)b(i,e),e=h(n,e)}if(s)return i;L(o,t,i)}return h(o,t)})),C=(e,t)=>l(x(e),(([,,e])=>L(e,t))),P=e=>h(t,e),W={setRelationshipDefinition:(e,n,o,c)=>(L(t,e,o),S(e,n,((t,n)=>{const o=I(),c=I(),f=I(),[R,w]=x(e);u(n,(([t,s],n)=>{r(t)||(b(c,t),l(h(w,t),(e=>{var s;p(e,n),(r(s=e)||0==(e=>e.size)(s))&&L(w,t)}))),r(s)||(b(c,s),a(w,s)||L(w,s,I()),b(h(w,s),n)),b(o,n),L(R,n,s),g(h(d,e),(t=>{a(B(e,t),n)&&b(f,t)}))})),t(),u(o,(t=>O(s,[e,t]))),u(c,(t=>O(i,[e,t]))),u(f,(t=>{C(e,t),O(d,[e,t])}))}),y(c)),W),delRelationshipDefinition:e=>(L(t,e),z(e),W),getStore:w,getRelationshipIds:k,getLocalTableId:j,getRemoteTableId:P,getRemoteRowId:(e,t)=>h(x(e)?.[0],t),getLocalRowIds:(e,t)=>c(h(x(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(x(e))?[t]:c(B(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>E(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>E(s,i,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(B(e,t),E(s,d,[e,t])),delListener:e=>(C(..._(e)),W),destroy:D,getListenerStats:()=>({})};return m(W)}));e.createRelationships=k,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s=t(""),n=(e,t)=>e.forEach(t),o=e=>e.length,i=e=>0==o(e),d=e=>e.slice(1),r=e=>null==e,l=(e,t,s)=>r(e)?s?.():t(e),a=(e,t)=>e?.has(t)??!1,c=e=>[...e?.values()??[]],f=e=>e.clear(),u=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),R=e=>new Map(e),h=(e,t)=>e?.get(t),g=(e,t)=>u(e,((e,s)=>t(s,e))),L=(e,t,s)=>r(s)?(p(e,t),e):e?.set(t,s),w=(e,t,s,n)=>(a(e,t)||(n?.(s),e.set(t,s)),h(e,t)),I=e=>new Set(e),b=(e,t)=>e?.add(t),y=(e,n)=>t(e)==s?t=>t(e):e??(()=>n??""),v=(e,t,s)=>o(s)<2?b(i(s)?e:w(e,s[0],I()),t):v(w(e,s[0],R()),t,d(s)),T=e=>{const t=(s,o,...r)=>l(s,(s=>i(r)?e(s,o):n([r[0],null],(e=>t(h(s,e),o,...d(r))))));return t},m=Object.freeze,k=(e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))})((e=>{const t=R(),s=R(),i=R(),d=R(),[w,k,j,x,M,S,z,D]=((e,t,s)=>{const o=e.hasRow,i=R(),d=R(),c=R(),p=R(),w=R(),b=t=>l(h(w,t),(s=>{u(s,e.delListener),L(w,t)})),y=e=>{L(i,e),L(d,e),L(c,e),L(p,e),b(e)};return[()=>e,()=>[...i?.keys()??[]],e=>h(i,e),e=>h(d,e),(e,t)=>L(d,e,t),(l,y,v,T,m)=>{const k=R(),j=R();L(i,l,y),a(d,l)||(L(d,l,t()),L(c,l,R()),L(p,l,R()));const x=h(c,l),M=h(p,l),S=t=>{const n=s=>e.getCell(y,t,s),i=h(x,t),d=o(y,t)?s(T(n,t)):void 0;if(i!=d&&L(k,t,[i,d]),!r(m)){const e=h(M,t),s=o(y,t)?m(n,t):void 0;e!=s&&L(j,t,s)}},z=e=>{v((()=>{u(k,(([,e],t)=>L(x,t,e))),u(j,((e,t)=>L(M,t,e)))}),k,j,x,M,e),f(k),f(j)};g(x,S),e.hasTable(y)&&n(e.getRowIds(y),(e=>{a(x,e)||S(e)})),z(!0),b(l),L(w,l,I([e.addRowListener(y,null,((e,t,s)=>S(s))),e.addTableListener(y,(()=>z()))]))},y,()=>g(w,y)]})(e,(()=>[R(),R(),R(),R()]),(e=>r(e)?void 0:e+"")),[E,O,_]=(e=>{let t,s=0;const i=[],d=R();return[(n,o,r=[])=>{t??=e();const l=i.pop()??""+s++;return L(d,l,[n,o,r]),v(o,l,r),l},(e,s=[],...n)=>T(u)(e,(e=>l(h(d,e),(([e])=>e(t,...s,...n)))),...s),e=>l(h(d,e),(([,t,s])=>(T(p)(t,e,...s),L(d,e),o(i)<1e3&&i.push(e),s)),(()=>[])),(e,s,i)=>l(h(d,e),(([e,,d])=>{const l=(...a)=>{const c=o(a);c==o(d)?e(t,...a,...i(a)):r(d[c])?n(s[c](...a),(e=>l(...a,e))):l(...a,d[c])};l()}))]})((()=>W)),B=(e,t,s)=>l(x(e),(([n,,o])=>{if(!a(o,t)){const i=I();if(j(e)!=P(e))b(i,t);else{let e=t;for(;!r(e)&&!a(i,e);)b(i,e),e=h(n,e)}if(s)return i;L(o,t,i)}return h(o,t)})),C=(e,t)=>l(x(e),(([,,e])=>L(e,t))),P=e=>h(t,e),W={setRelationshipDefinition:(e,n,o,c)=>(L(t,e,o),S(e,n,((t,n)=>{const o=I(),c=I(),f=I(),[R,w]=x(e);u(n,(([t,s],n)=>{r(t)||(b(c,t),l(h(w,t),(e=>{var s;p(e,n),(r(s=e)||0==(e=>e.size)(s))&&L(w,t)}))),r(s)||(b(c,s),a(w,s)||L(w,s,I()),b(h(w,s),n)),b(o,n),L(R,n,s),g(h(d,e),(t=>{a(B(e,t),n)&&b(f,t)}))})),t(),u(o,(t=>O(s,[e,t]))),u(c,(t=>O(i,[e,t]))),u(f,(t=>{C(e,t),O(d,[e,t])}))}),y(c)),W),delRelationshipDefinition:e=>(L(t,e),z(e),W),getStore:w,getRelationshipIds:k,getLocalTableId:j,getRemoteTableId:P,getRemoteRowId:(e,t)=>h(x(e)?.[0],t),getLocalRowIds:(e,t)=>c(h(x(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(x(e))?[t]:c(B(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>E(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>E(s,i,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(B(e,t),E(s,d,[e,t])),delListener:e=>(C(..._(e)),W),destroy:D,getListenerStats:()=>({})};return m(W)}));e.createRelationships=k,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
Binary file
package/lib/umd/store.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s=t(""),n=t(!0),r=t(0),o=t(t),l="type",a="default",d=(e,t)=>e.forEach(t),c=e=>e.length,i=e=>0==c(e),u=e=>e.slice(1),f=e=>JSON.stringify(e,((e,t)=>{return b(t,Map)?(s=[...t],n=(e,[t,s])=>(e[t]=s,e),r={},s.reduce(n,r)):t;var s,n,r})),h=JSON.parse,p=isFinite,b=(e,t)=>e instanceof t,g=e=>null==e,T=(e,t,s)=>g(e)?s?.():t(e),y=e=>e==s||e==n,w=(e,t)=>e?.has(t)??!1,L=e=>g(e)||0==(e=>e.size)(e),R=e=>e.clear(),S=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),v=e=>new Map(e),I=(e=v)=>[e(),e()],m=e=>[...e?.keys()??[]],E=(e,t)=>e?.get(t),J=(e,t)=>S(e,((e,s)=>t(s,e))),O=(e,t,s)=>g(s)?(C(e,t),e):e?.set(t,s),j=(e,t,s,n)=>(w(e,t)||(n?.(s),e.set(t,s)),E(e,t)),x=(e,t)=>{const s={},n=t??(e=>e);return S(e,((e,t)=>s[t]=n(e))),s},z=(e,t)=>{const s=v(),n=t??(e=>e);return S(e,((e,t)=>s.set(t,n(e)))),s},M=Object,k=M.keys,F=M.isFrozen,N=M.freeze,P=(e,t)=>!g(((e,t)=>T(e,(e=>e[t])))(e,t)),_=(e,t)=>delete e[t],B=(e,t)=>d(M.entries(e),(([e,s])=>t(s,e))),q=e=>new Set(e),A=(e,t,s)=>c(s)<2?((e,t)=>e?.add(t))(i(s)?e:j(e,s[0],q()),t):A(j(e,s[0],v()),t,u(s)),D=e=>{const t=(s,n,...r)=>T(s,(s=>i(r)?e(s,n):d([r[0],null],(e=>t(E(s,e),n,...u(r))))));return t},G=(e,t,s,n=O)=>{const r=(o=m(e),l=e=>!P(t,e),o.filter(l));var o,l;return d(k(t),(n=>s(e,n,t[n]))),d(r,(t=>n(e,t))),e},H=e=>{const s=t(e);return y(s)||s==r&&p(e)?s:void 0},K=(e,t)=>!(g(e)||!(e=>b(e,M)&&e.constructor==M)(e)||F(e)||(B(e,((s,n)=>{t(s,n)||_(e,n)})),(e=>i(k(e)))(e))),Q=(e,t,s)=>O(e,t,E(e,t)==-s?void 0:s);e.createStore=()=>{let e,s=0,n=0;const i=v(),u=v(),p=v(),b=v(),M=v(),k=v(),F=v(),U=I(q),V=I(q),W=I(),X=I(),Y=I(),Z=I(),$=I(),[ee,te,se,ne]=(e=>{let t,s=0;const n=[],r=v();return[(o,l,a=[])=>{t??(t=e());const d=n.pop()??""+s++;return O(r,d,[o,l,a]),A(l,d,a),d},(e,s=[],...n)=>D(S)(e,(e=>T(E(r,e),(([e])=>e(t,...s,...n)))),...s),e=>T(E(r,e),(([,t,s])=>(D(C)(t,e,...s),O(r,e),c(n)<1e3&&n.push(e),s)),(()=>[])),(e,s,n)=>T(E(r,e),(([e,,r])=>{const o=(...l)=>{const a=c(l);a==c(r)?e(t,...l,...n(l)):g(r[a])?d(s[a](...l),(e=>o(...l,e))):o(...l,r[a])};o()}))]})((()=>ke)),re=(t,s)=>(!e||w(M,s))&&K(t,(e=>oe(s,e))),oe=(e,t,s)=>K(s?t:ae(t,e),((s,n)=>T(le(e,n,s),(e=>(t[n]=e,!0)),(()=>!1)))),le=(t,s,n)=>e?T(E(E(M,t),s),(e=>H(n)!=e.type?e.default:n)):g(H(n))?void 0:n,ae=(e,t)=>(T(E(k,t),(t=>B(t,((t,s)=>{P(e,s)||(e[s]=t)})))),e),de=e=>G(M,e,((e,t,s)=>{const n={};G(j(M,t,v()),s,((e,t,s)=>{O(e,t,s),T(s.default,(e=>n[t]=e))})),O(k,t,n)}),((e,t)=>{O(M,t),O(k,t)})),ce=e=>G(F,e,((e,t,s)=>ie(t,s)),((e,t)=>Te(t))),ie=(e,t)=>G(j(F,e,v(),(()=>Le(e,1))),t,((t,s,n)=>ue(e,t,s,n)),((t,s)=>ye(e,t,s))),ue=(e,t,s,n,r)=>G(j(t,s,v(),(()=>Re(e,s,1))),n,((t,n,r)=>fe(e,s,t,n,r)),((n,o)=>we(e,t,s,n,o,r))),fe=(e,t,s,n,r)=>{w(s,n)||Se(e,t,n,1);const o=E(s,n);r!==o&&(Ce(e,t,n,o),O(s,n,r))},he=(e,t,s)=>Me((()=>ue(e,ge(e),t,s))),pe=(e,t,s,n,r)=>T(E(t,s),(t=>fe(e,s,t,n,r)),(()=>ue(e,t,s,ae({[n]:r},e)))),be=e=>{const t=""+s++;return w(e,t)?be(e):t},ge=e=>E(F,e)??ie(e,{}),Te=e=>ie(e,{}),ye=(e,t,s)=>ue(e,t,s,{},!0),we=(e,t,s,n,r,o)=>{const l=E(k,e)?.[r];if(!g(l)&&!o)return fe(e,s,n,r,l);const a=t=>{Ce(e,s,t,E(n,t)),Se(e,s,t,-1),O(n,t)};g(l)?a(r):J(n,a),L(n)&&(Re(e,s,-1),L(O(t,s))&&(Le(e,-1),O(F,e)))},Le=(e,t)=>Q(i,e,t),Re=(e,t,s)=>Q(j(u,e,v()),t,s),Se=(e,t,s,n)=>Q(j(j(p,e,v()),t,v()),s,n),Ce=(e,t,s,n)=>j(j(j(b,e,v()),t,v()),s,n),ve=(e,t,s)=>{const n=E(E(b,e),t),r=je(e,t,s);return w(n,s)?[!0,E(n,s),r]:[!1,r,r]},Ie=e=>{const t=L(Z[e])&&L(X[e])&&L(V[e]),s=L($[e])&&L(Y[e])&&L(W[e])&&L(U[e]);if(t&&s)return;const n=e?[z(i),z(u,z),z(p,(e=>z(e,z))),z(b,(e=>z(e,z)))]:[i,u,p,b];if(t||(S(n[2],((t,s)=>S(t,((t,n)=>{L(t)||te(Z[e],[s,n])})))),S(n[1],((t,s)=>{L(t)||te(X[e],[s])})),L(n[0])||te(V[e])),!s){let t;S(n[3],((s,n)=>{let r;S(s,((s,o)=>{let l;S(s,((s,a)=>{const d=je(n,o,a);d!==s&&(te($[e],[n,o,a],d,s,ve),t=r=l=1)})),l&&te(Y[e],[n,o],ve)})),r&&te(W[e],[n],ve)})),t&&te(U[e],[],ve)}},me=()=>x(F,(e=>x(e,x))),Ee=()=>m(F),Je=e=>m(E(F,e)),Oe=(e,t)=>m(E(E(F,e),t)),je=(e,t,s)=>E(E(E(F,e),t),s),xe=e=>((e=>K(e,re))(e)&&Me((()=>ce(e))),ke),ze=()=>(Me((()=>ce({}))),ke),Me=e=>{if(-1==n)return;n++;const t=e();return n--,0==n&&(n=1,Ie(1),n=-1,Ie(0),n=0,d([b,i,u,p],R)),t},ke={getTables:me,getTableIds:Ee,getTable:e=>x(E(F,e),x),getRowIds:Je,getRow:(e,t)=>x(E(E(F,e),t)),getCellIds:Oe,getCell:je,hasTable:e=>w(F,e),hasRow:(e,t)=>w(E(F,e),t),hasCell:(e,t,s)=>w(E(E(F,e),t),s),getJson:()=>f(F),getSchemaJson:()=>f(M),setTables:xe,setTable:(e,t)=>(re(t,e)&&Me((()=>ie(e,t))),ke),setRow:(e,t,s)=>(oe(e,s)&&he(e,t,s),ke),addRow:(e,t)=>{let s;return oe(e,t)&&(s=be(E(F,e)),he(e,s,t)),s},setPartialRow:(e,t,s)=>(oe(e,s,1)&&Me((()=>{const n=ge(e);B(s,((s,r)=>pe(e,n,t,r,s)))})),ke),setCell:(e,s,n,r)=>(T(le(e,n,t(r)==o?r(je(e,s,n)):r),(t=>Me((()=>pe(e,ge(e),s,n,t))))),ke),setJson:e=>{try{"{}"===e?ze():xe(h(e))}catch{}return ke},setSchema:t=>{if((e=(e=>K(e,(e=>K(e,(e=>{if(!K(e,((e,t)=>[l,a].includes(t))))return!1;const t=e.type;return!(!y(t)&&t!=r||(H(e.default)!=t&&_(e,a),0))})))))(t))&&(de(t),!L(F))){const e=me();ze(),xe(e)}return ke},delTables:ze,delTable:e=>(w(F,e)&&Me((()=>Te(e))),ke),delRow:(e,t)=>(T(E(F,e),(s=>{w(s,t)&&Me((()=>ye(e,s,t)))})),ke),delCell:(e,t,s,n)=>(T(E(F,e),(r=>T(E(r,t),(o=>{w(o,s)&&Me((()=>we(e,r,t,o,s,n)))})))),ke),delSchema:()=>(de({}),e=!1,ke),transaction:Me,forEachTable:e=>S(F,((t,s)=>e(s,(e=>S(t,((t,s)=>e(s,(e=>J(t,e))))))))),forEachRow:(e,t)=>S(E(F,e),((e,s)=>t(s,(t=>J(e,t))))),forEachCell:(e,t,s)=>J(E(E(F,e),t),s),addTablesListener:(e,t)=>ee(e,U[t?1:0]),addTableIdsListener:(e,t)=>ee(e,V[t?1:0]),addTableListener:(e,t,s)=>ee(t,W[s?1:0],[e]),addRowIdsListener:(e,t,s)=>ee(t,X[s?1:0],[e]),addRowListener:(e,t,s,n)=>ee(s,Y[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n)=>ee(s,Z[n?1:0],[e,t]),addCellListener:(e,t,s,n,r)=>ee(n,$[r?1:0],[e,t,s]),callListener:e=>(ne(e,[Ee,Je,Oe],(e=>g(e[2])?[]:[,,].fill(je(...e)))),ke),delListener:e=>(se(e),ke),getListenerStats:()=>({})};return N(ke)},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,s=t(""),n=t(!0),r=t(0),o=t(t),l="type",a="default",d=(e,t)=>e.forEach(t),c=e=>e.length,i=e=>0==c(e),u=e=>e.slice(1),f=e=>JSON.stringify(e,((e,t)=>{return b(t,Map)?(s=[...t],n=(e,[t,s])=>(e[t]=s,e),r={},s.reduce(n,r)):t;var s,n,r})),h=JSON.parse,p=isFinite,b=(e,t)=>e instanceof t,g=e=>null==e,T=(e,t,s)=>g(e)?s?.():t(e),y=e=>e==s||e==n,w=(e,t)=>e?.has(t)??!1,L=e=>g(e)||0==(e=>e.size)(e),R=e=>e.clear(),S=(e,t)=>e?.forEach(t),C=(e,t)=>e?.delete(t),v=e=>new Map(e),I=(e=v)=>[e(),e()],m=e=>[...e?.keys()??[]],E=(e,t)=>e?.get(t),J=(e,t)=>S(e,((e,s)=>t(s,e))),O=(e,t,s)=>g(s)?(C(e,t),e):e?.set(t,s),j=(e,t,s,n)=>(w(e,t)||(n?.(s),e.set(t,s)),E(e,t)),x=(e,t)=>{const s={},n=t??(e=>e);return S(e,((e,t)=>s[t]=n(e))),s},z=(e,t)=>{const s=v(),n=t??(e=>e);return S(e,((e,t)=>s.set(t,n(e)))),s},M=Object,k=M.keys,F=M.isFrozen,N=M.freeze,P=(e,t)=>!g(((e,t)=>T(e,(e=>e[t])))(e,t)),_=(e,t)=>delete e[t],B=(e,t)=>d(M.entries(e),(([e,s])=>t(s,e))),q=e=>new Set(e),A=(e,t,s)=>c(s)<2?((e,t)=>e?.add(t))(i(s)?e:j(e,s[0],q()),t):A(j(e,s[0],v()),t,u(s)),D=e=>{const t=(s,n,...r)=>T(s,(s=>i(r)?e(s,n):d([r[0],null],(e=>t(E(s,e),n,...u(r))))));return t},G=(e,t,s,n=O)=>{const r=(o=m(e),l=e=>!P(t,e),o.filter(l));var o,l;return d(k(t),(n=>s(e,n,t[n]))),d(r,(t=>n(e,t))),e},H=e=>{const s=t(e);return y(s)||s==r&&p(e)?s:void 0},K=(e,t)=>!(g(e)||!(e=>b(e,M)&&e.constructor==M)(e)||F(e)||(B(e,((s,n)=>{t(s,n)||_(e,n)})),(e=>i(k(e)))(e))),Q=(e,t,s)=>O(e,t,E(e,t)==-s?void 0:s);e.createStore=()=>{let e,s=0,n=0;const i=v(),u=v(),p=v(),b=v(),M=v(),k=v(),F=v(),U=I(q),V=I(q),W=I(),X=I(),Y=I(),Z=I(),$=I(),[ee,te,se,ne]=(e=>{let t,s=0;const n=[],r=v();return[(o,l,a=[])=>{t??=e();const d=n.pop()??""+s++;return O(r,d,[o,l,a]),A(l,d,a),d},(e,s=[],...n)=>D(S)(e,(e=>T(E(r,e),(([e])=>e(t,...s,...n)))),...s),e=>T(E(r,e),(([,t,s])=>(D(C)(t,e,...s),O(r,e),c(n)<1e3&&n.push(e),s)),(()=>[])),(e,s,n)=>T(E(r,e),(([e,,r])=>{const o=(...l)=>{const a=c(l);a==c(r)?e(t,...l,...n(l)):g(r[a])?d(s[a](...l),(e=>o(...l,e))):o(...l,r[a])};o()}))]})((()=>ke)),re=(t,s)=>(!e||w(M,s))&&K(t,(e=>oe(s,e))),oe=(e,t,s)=>K(s?t:ae(t,e),((s,n)=>T(le(e,n,s),(e=>(t[n]=e,!0)),(()=>!1)))),le=(t,s,n)=>e?T(E(E(M,t),s),(e=>H(n)!=e.type?e.default:n)):g(H(n))?void 0:n,ae=(e,t)=>(T(E(k,t),(t=>B(t,((t,s)=>{P(e,s)||(e[s]=t)})))),e),de=e=>G(M,e,((e,t,s)=>{const n={};G(j(M,t,v()),s,((e,t,s)=>{O(e,t,s),T(s.default,(e=>n[t]=e))})),O(k,t,n)}),((e,t)=>{O(M,t),O(k,t)})),ce=e=>G(F,e,((e,t,s)=>ie(t,s)),((e,t)=>Te(t))),ie=(e,t)=>G(j(F,e,v(),(()=>Le(e,1))),t,((t,s,n)=>ue(e,t,s,n)),((t,s)=>ye(e,t,s))),ue=(e,t,s,n,r)=>G(j(t,s,v(),(()=>Re(e,s,1))),n,((t,n,r)=>fe(e,s,t,n,r)),((n,o)=>we(e,t,s,n,o,r))),fe=(e,t,s,n,r)=>{w(s,n)||Se(e,t,n,1);const o=E(s,n);r!==o&&(Ce(e,t,n,o),O(s,n,r))},he=(e,t,s)=>Me((()=>ue(e,ge(e),t,s))),pe=(e,t,s,n,r)=>T(E(t,s),(t=>fe(e,s,t,n,r)),(()=>ue(e,t,s,ae({[n]:r},e)))),be=e=>{const t=""+s++;return w(e,t)?be(e):t},ge=e=>E(F,e)??ie(e,{}),Te=e=>ie(e,{}),ye=(e,t,s)=>ue(e,t,s,{},!0),we=(e,t,s,n,r,o)=>{const l=E(k,e)?.[r];if(!g(l)&&!o)return fe(e,s,n,r,l);const a=t=>{Ce(e,s,t,E(n,t)),Se(e,s,t,-1),O(n,t)};g(l)?a(r):J(n,a),L(n)&&(Re(e,s,-1),L(O(t,s))&&(Le(e,-1),O(F,e)))},Le=(e,t)=>Q(i,e,t),Re=(e,t,s)=>Q(j(u,e,v()),t,s),Se=(e,t,s,n)=>Q(j(j(p,e,v()),t,v()),s,n),Ce=(e,t,s,n)=>j(j(j(b,e,v()),t,v()),s,n),ve=(e,t,s)=>{const n=E(E(b,e),t),r=je(e,t,s);return w(n,s)?[!0,E(n,s),r]:[!1,r,r]},Ie=e=>{const t=L(Z[e])&&L(X[e])&&L(V[e]),s=L($[e])&&L(Y[e])&&L(W[e])&&L(U[e]);if(t&&s)return;const n=e?[z(i),z(u,z),z(p,(e=>z(e,z))),z(b,(e=>z(e,z)))]:[i,u,p,b];if(t||(S(n[2],((t,s)=>S(t,((t,n)=>{L(t)||te(Z[e],[s,n])})))),S(n[1],((t,s)=>{L(t)||te(X[e],[s])})),L(n[0])||te(V[e])),!s){let t;S(n[3],((s,n)=>{let r;S(s,((s,o)=>{let l;S(s,((s,a)=>{const d=je(n,o,a);d!==s&&(te($[e],[n,o,a],d,s,ve),t=r=l=1)})),l&&te(Y[e],[n,o],ve)})),r&&te(W[e],[n],ve)})),t&&te(U[e],[],ve)}},me=()=>x(F,(e=>x(e,x))),Ee=()=>m(F),Je=e=>m(E(F,e)),Oe=(e,t)=>m(E(E(F,e),t)),je=(e,t,s)=>E(E(E(F,e),t),s),xe=e=>((e=>K(e,re))(e)&&Me((()=>ce(e))),ke),ze=()=>(Me((()=>ce({}))),ke),Me=e=>{if(-1==n)return;n++;const t=e();return n--,0==n&&(n=1,Ie(1),n=-1,Ie(0),n=0,d([b,i,u,p],R)),t},ke={getTables:me,getTableIds:Ee,getTable:e=>x(E(F,e),x),getRowIds:Je,getRow:(e,t)=>x(E(E(F,e),t)),getCellIds:Oe,getCell:je,hasTable:e=>w(F,e),hasRow:(e,t)=>w(E(F,e),t),hasCell:(e,t,s)=>w(E(E(F,e),t),s),getJson:()=>f(F),getSchemaJson:()=>f(M),setTables:xe,setTable:(e,t)=>(re(t,e)&&Me((()=>ie(e,t))),ke),setRow:(e,t,s)=>(oe(e,s)&&he(e,t,s),ke),addRow:(e,t)=>{let s;return oe(e,t)&&(s=be(E(F,e)),he(e,s,t)),s},setPartialRow:(e,t,s)=>(oe(e,s,1)&&Me((()=>{const n=ge(e);B(s,((s,r)=>pe(e,n,t,r,s)))})),ke),setCell:(e,s,n,r)=>(T(le(e,n,t(r)==o?r(je(e,s,n)):r),(t=>Me((()=>pe(e,ge(e),s,n,t))))),ke),setJson:e=>{try{"{}"===e?ze():xe(h(e))}catch{}return ke},setSchema:t=>{if((e=(e=>K(e,(e=>K(e,(e=>{if(!K(e,((e,t)=>[l,a].includes(t))))return!1;const t=e.type;return!(!y(t)&&t!=r||(H(e.default)!=t&&_(e,a),0))})))))(t))&&(de(t),!L(F))){const e=me();ze(),xe(e)}return ke},delTables:ze,delTable:e=>(w(F,e)&&Me((()=>Te(e))),ke),delRow:(e,t)=>(T(E(F,e),(s=>{w(s,t)&&Me((()=>ye(e,s,t)))})),ke),delCell:(e,t,s,n)=>(T(E(F,e),(r=>T(E(r,t),(o=>{w(o,s)&&Me((()=>we(e,r,t,o,s,n)))})))),ke),delSchema:()=>(de({}),e=!1,ke),transaction:Me,forEachTable:e=>S(F,((t,s)=>e(s,(e=>S(t,((t,s)=>e(s,(e=>J(t,e))))))))),forEachRow:(e,t)=>S(E(F,e),((e,s)=>t(s,(t=>J(e,t))))),forEachCell:(e,t,s)=>J(E(E(F,e),t),s),addTablesListener:(e,t)=>ee(e,U[t?1:0]),addTableIdsListener:(e,t)=>ee(e,V[t?1:0]),addTableListener:(e,t,s)=>ee(t,W[s?1:0],[e]),addRowIdsListener:(e,t,s)=>ee(t,X[s?1:0],[e]),addRowListener:(e,t,s,n)=>ee(s,Y[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n)=>ee(s,Z[n?1:0],[e,t]),addCellListener:(e,t,s,n,r)=>ee(n,$[r?1:0],[e,t,s]),callListener:e=>(ne(e,[Ee,Je,Oe],(e=>g(e[2])?[]:[,,].fill(je(...e)))),ke),delListener:e=>(se(e),ke),getListenerStats:()=>({})};return N(ke)},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,s){"use strict";const o=e=>typeof e,n="",r=o(n),d=o(!0),i=o(0),a=o(o),l="type",c="default",u="utf8",I=(e,t)=>e.includes(t),p=(e,t)=>e.every(((s,o)=>0==o||t(e[o-1],s)<=0)),w=(e,t)=>e.sort(t),b=(e,t)=>e.forEach(t),C=(e,t)=>e.map(t),g=e=>L(e,((e,t)=>e+t),0),h=e=>e.length,R=e=>0==h(e),L=(e,t,s)=>e.reduce(t,s),k=e=>e.slice(1),f=e=>JSON.stringify(e,((e,t)=>y(t,Map)?L([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),v=JSON.parse,m=Math.max,T=Math.min,S=isFinite,y=(e,t)=>e instanceof t,x=e=>null==e,M=(e,t,s)=>x(e)?s?.():t(e),P=e=>e==r||e==d,V=e=>o(e)==r,A=e=>o(e)==a,D=()=>{},E=e=>e.size,B=(e,t)=>e?.has(t)??!1,F=e=>x(e)||0==E(e),J=e=>[...e?.values()??[]],O=e=>e.clear(),j=(e,t)=>e?.forEach(t),z=(e,t)=>e?.delete(t),N=e=>new Map(e),G=(e=N)=>[e(),e()],q=e=>[...e?.keys()??[]],$=(e,t)=>e?.get(t),_=(e,t)=>j(e,((e,s)=>t(s,e))),H=(e,t,s)=>x(s)?(z(e,t),e):e?.set(t,s),U=(e,t,s,o)=>(B(e,t)||(o?.(s),e.set(t,s)),$(e,t)),W=(e,t)=>{const s={},o=t??(e=>e);return j(e,((e,t)=>s[t]=o(e))),s},K=(e,t)=>{const s=N(),o=t??(e=>e);return j(e,((e,t)=>s.set(t,o(e)))),s},Q=e=>new Set(e),X=(e,t)=>e?.add(t),Y=(e,t,s)=>{const o=e.hasRow,n=N(),r=N(),d=N(),i=N(),a=N(),l=t=>M($(a,t),(s=>{j(s,e.delListener),H(a,t)})),c=e=>{H(n,e),H(r,e),H(d,e),H(i,e),l(e)};return[()=>e,()=>q(n),e=>$(n,e),e=>$(r,e),(e,t)=>H(r,e,t),(c,u,I,p,w)=>{const C=N(),g=N();H(n,c,u),B(r,c)||(H(r,c,t()),H(d,c,N()),H(i,c,N()));const h=$(d,c),R=$(i,c),L=t=>{const n=s=>e.getCell(u,t,s),r=$(h,t),d=o(u,t)?s(p(n,t)):void 0;if(r!=d&&H(C,t,[r,d]),!x(w)){const e=$(R,t),s=o(u,t)?w(n,t):void 0;e!=s&&H(g,t,s)}},k=e=>{I((()=>{j(C,(([,e],t)=>H(h,t,e))),j(g,((e,t)=>H(R,t,e)))}),C,g,h,R,e),O(C),O(g)};_(h,L),e.hasTable(u)&&b(e.getRowIds(u),(e=>{B(h,e)||L(e)})),k(!0),l(c),H(a,c,Q([e.addRowListener(u,null,((e,t,s)=>L(s))),e.addTableListener(u,(()=>k()))]))},c,()=>_(a,c)]},Z=(e,t)=>V(e)?t=>t(e):e??(()=>t??n),ee=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},te=(e,t,s)=>h(s)<2?X(R(s)?e:U(e,s[0],Q()),t):te(U(e,s[0],N()),t,k(s)),se=e=>{const t=(s,o,...n)=>M(s,(s=>R(n)?e(s,o):b([n[0],null],(e=>t($(s,e),o,...k(n))))));return t},oe=e=>{let t,s=0;const o=[],n=N();return[(r,d,i=[])=>{t??(t=e());const a=o.pop()??""+s++;return H(n,a,[r,d,i]),te(d,a,i),a},(e,s=[],...o)=>se(j)(e,(e=>M($(n,e),(([e])=>e(t,...s,...o)))),...s),e=>M($(n,e),(([,t,s])=>(se(z)(t,e,...s),H(n,e),h(o)<1e3&&o.push(e),s)),(()=>[])),(e,s,o)=>M($(n,e),(([e,,n])=>{const r=(...d)=>{const i=h(d);i==h(n)?e(t,...d,...o(d)):x(n[i])?b(s[i](...d),(e=>r(...d,e))):r(...d,n[i])};r()}))]},ne=Object,re=ne.keys,de=ne.isFrozen,ie=ne.freeze,ae=(e,t)=>M(e,(e=>e[t])),le=(e,t)=>!x(ae(e,t)),ce=(e,t)=>delete e[t],ue=(e,t)=>b(ne.entries(e),(([e,s])=>t(s,e))),Ie=ee((e=>{let t,s,o,n=100,r=N(),d=1;const i=Q(),a=N(),[l,c,u]=oe((()=>D)),p=N(),w=N(),C=[],g=[],L=(t,s)=>{d=0,e.transaction((()=>j($(p,s),((s,o)=>j(s,((s,n)=>j(s,((s,r)=>x(s[t])?e.delCell(o,n,r,!0):e.setCell(o,n,r,s[t]))))))))),d=1},k=e=>{H(p,e),H(w,e),c(a,[e])},f=(e,t)=>b(((e,t)=>e.splice(0,t))(e,t??h(e)),k),v=()=>f(C,h(C)-n),m=e.addCellListener(null,null,null,((e,s,n,i,a,l)=>{if(d){M(t,(()=>{C.push(t),v(),f(g),t=void 0,o=1}));const e=U(r,s,N()),d=U(e,n,N()),c=U(d,i,[void 0,void 0],(e=>e[0]=l));c[1]=a,c[0]===c[1]&&F(H(d,i))&&F(H(e,n))&&F(H(r,s))&&(t=C.pop(),o=1),P()}})),T=(e="")=>(x(t)&&(t=""+s++,H(p,t,r),A(t,e),r=N(),o=1),t),S=()=>{R(C)||(g.unshift(T()),L(0,t),t=C.pop(),o=1)},y=()=>{R(g)||(C.push(t),t=g.shift(),L(1,t),o=1)},P=()=>{o&&(c(i),o=0)},V=e=>{const t=T(e);return P(),t},A=(e,t)=>(B(p,e)&&$(w,e)!==t&&(H(w,e,t),c(a,[e])),D),D={setSize:e=>(n=e,v(),D),addCheckpoint:V,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...C],t,[...g]],getCheckpoint:e=>$(w,e),goBackward:()=>(S(),P(),D),goForward:()=>(y(),P(),D),goTo:e=>{const s=I(C,e)?S:I(g,e)?y:null;for(;!x(s)&&e!=t;)s();return P(),D},addCheckpointIdsListener:e=>l(e,i),addCheckpointListener:(e,t)=>l(t,a,[e]),delListener:e=>(u(e),D),clear:()=>(f(C),f(g),x(t)||k(t),t=void 0,s=0,V(),D),destroy:()=>{e.delListener(m)},getListenerStats:()=>({})};return ie(D.clear())})),pe=ee((e=>{const t=N(),s=N(),[o,r,d,i,a,l,c,u]=Y(e,N,(e=>x(e)?n:e+n)),[I,b,C]=oe((()=>g)),g={setIndexDefinition:(e,o,n,r,d,c=we)=>{const u=x(d)?void 0:([e],[t])=>d(e,t);return l(e,o,((o,n,d,l,I)=>{let C=0;const g=Q(),h=Q(),R=i(e);if(j(n,(([e,t],s)=>{x(e)||(X(g,e),M($(R,e),(t=>{z(t,s),F(t)&&(H(R,e),C=1)}))),x(t)||(X(g,t),B(R,t)||(H(R,t,Q()),C=1),X($(R,t),s),x(r)||X(h,t))})),o(),_(d,(e=>M($(l,e),(e=>X(h,e))))),F(I)||j(h,(e=>{const t=(t,s)=>c($(I,t),$(I,s),e),s=[...$(R,e)];p(s,t)||(H(R,e,Q(w(s,t))),X(g,e))})),C){if(!x(u)){const t=[...R];p(t,u)||a(e,N(w(t,u)))}b(t,[e])}j(g,(t=>b(s,[e,t])))}),Z(n),M(r,Z)),g},delIndexDefinition:e=>(c(e),g),getStore:o,getIndexIds:r,getTableId:d,getSliceIds:e=>q(i(e)),getSliceRowIds:(e,t)=>J($(i(e),t)),addSliceIdsListener:(e,s)=>I(s,t,[e]),addSliceRowIdsListener:(e,t,o)=>I(o,s,[e,t]),delListener:e=>(C(e),g),destroy:u,getListenerStats:()=>({})};return ie(g)})),we=(e,t)=>e<t?-1:1,be=N([["avg",[(e,t)=>g(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,o)=>e+(t-s)/o]],["max",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["min",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:T(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ce=ee((e=>{const t=N(),[s,o,r,d,i,a,l,c]=Y(e,D,(e=>isNaN(e)||x(e)||!0===e||!1===e||e===n?void 0:1*e)),[u,I,p]=oe((()=>w)),w={setMetricDefinition:(e,s,o,n,r,l,c)=>{const u=A(o)?[o,r,l,c]:$(be,o)??$(be,"sum");return a(e,s,((s,o,n,r,a,l)=>{let c=d(e),p=E(r);const[w,b,C,g]=u;l=l||x(c),j(o,(([e,t])=>{l||(c=x(e)?b?.(c,t,p++):x(t)?C?.(c,e,p--):g?.(c,t,e,p)),l=l||x(c)})),s(),F(r)?c=void 0:l&&(c=w(J(r),E(r))),S(c)||(c=void 0);const h=d(e);c!=h&&(i(e,c),I(t,[e],c,h))}),Z(n,1)),w},delMetricDefinition:e=>(l(e),w),getStore:s,getMetricIds:o,getTableId:r,getMetric:d,addMetricListener:(e,s)=>u(s,t,[e]),delListener:e=>(p(e),w),destroy:c,getListenerStats:()=>({})};return ie(w)})),ge=(e,t,s,o,n)=>{let r,d=0;const i={load:async s=>{if(2!=d){d=1;const o=await t();x(o)||""==o?e.setTables(s):e.setJson(o),d=0}return i},startAutoLoad:async e=>(i.stopAutoLoad(),await i.load(e),o(i.load),i),stopAutoLoad:()=>(n(),i),save:async()=>(1!=d&&(d=2,await s(e.getJson()),d=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),r=e.addTablesListener((()=>i.save())),i),stopAutoSave:()=>(M(r,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ie(i)},he="storage",Re=window,Le=(e,t,s)=>{let o;return ge(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{o=o=>{o.storageArea===s&&o.key===t&&e()},Re.addEventListener(he,o)}),(()=>{Re.removeEventListener(he,o),o=void 0}))},ke=e=>e.headers.get("ETag"),{createContext:fe,useContext:ve}=s,me=fe([]),Te=(e,t)=>{const s=ve(me);return x(e)?s[t]:ae(s[t+1],e)},Se=(e,t)=>{const s=Te(e,t);return x(e)||V(e)?s:e},ye=e=>Se(e,0),xe=e=>Se(e,2),Me=e=>Se(e,4),Pe=e=>Se(e,6),Ve=e=>Se(e,8),{useCallback:Ae,useEffect:De,useMemo:Ee,useState:Be}=s,Fe=(e,t,s=[])=>Ee((()=>t(e)),[e,...s]),Je=(e,t,s,...o)=>{const n=t?.["get"+e]??(()=>s),r=n(...o),[,d]=Be(r);return De((()=>{const s=t?.[`add${e}Listener`]?.(...o,(()=>d(n(...o))),!1);return()=>t?.delListener(s)}),[t,e,d,n,...o]),r},Oe=(e,t,s,o=[],n,...r)=>{De((()=>{const o=t?.[`add${e}Listener`]?.(...r,s,n);return()=>t?.delListener(o)}),[t,e,...o,n,...r])},je=(e,t,s,o=[],n=D,r=[],...d)=>{const i=ye(e);return Ae((e=>M(i,(o=>M(s(e,o),(e=>n(o["set"+t](...d,e),e)))))),[i,t,...o,...r,...d])},ze=(e,t,s=D,o=[],...n)=>{const r=ye(e);return Ae((()=>s(r?.["del"+t](...n))),[r,t,...o,...n])},Ne=(e,t,s)=>{const o=Ve(e);return Ae((()=>o?.[t](s)),[o,t,s])},Ge=e=>Je("TableIds",ye(e),[]),qe=(e,t)=>Je("RowIds",ye(t),[],e),$e=(e,t,s)=>Je("CellIds",ye(s),[],e,t),_e=(e,t,s,o)=>Je("Cell",ye(o),void 0,e,t,s),He=(e,t)=>Je("Metric",xe(t),void 0,e),Ue=(e,t)=>Je("SliceIds",Me(t),[],e),We=(e,t,s)=>Je("SliceRowIds",Me(s),[],e,t),Ke=(e,t,s)=>Je("RemoteRowId",Pe(s),void 0,e,t),Qe=(e,t,s)=>Je("LocalRowIds",Pe(s),[],e,t),Xe=(e,t,s)=>Je("LinkedRowIds",Pe(s),[],e,t),Ye=e=>Je("CheckpointIds",Ve(e),[[],void 0,[]]),Ze=(e,t)=>Je("Checkpoint",Ve(t),void 0,e),et=e=>Ne(e,"goBackward"),tt=e=>Ne(e,"goForward"),{createElement:st,useMemo:ot}=s,nt=e=>{const t=Pe(e);return[t,t?.getStore()]},rt=({relationshipId:e,relationships:t,rowComponent:s=ct,getRowComponentProps:o,separator:n,debugIds:r},d,i)=>{const[a,l]=nt(t),c=a?.getLocalTableId(e),u=d(e,i,a);return at(C(u,(e=>st(s,{...it(o,e),key:e,tableId:c,rowId:e,store:l,debugIds:r}))),n,r,i)},dt=e=>({checkpoints:t,checkpointComponent:s=pt,getCheckpointComponentProps:o,separator:n,debugIds:r})=>{const d=Ve(t);return at(C(e(Ye(d)),(e=>st(s,{...it(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),n)},it=(e,t)=>x(e)?{}:e(t),at=(e,t,s,o)=>{const n=x(t)||!Array.isArray(e)?e:C(e,((e,s)=>s>0?[t,e]:e));return s?[o,":{",n,"}"]:n},lt=({tableId:e,rowId:t,cellId:s,store:o,debugIds:r})=>at(n+(_e(e,t,s,o)??n),void 0,r,s),ct=({tableId:e,rowId:t,store:s,cellComponent:o=lt,getCellComponentProps:n,separator:r,debugIds:d})=>at(C($e(e,t,s),(r=>st(o,{...it(n,r),key:r,tableId:e,rowId:t,cellId:r,store:s,debugIds:d}))),r,d,t),ut=({tableId:e,store:t,rowComponent:s=ct,getRowComponentProps:o,separator:n,debugIds:r})=>at(C(qe(e,t),(n=>st(s,{...it(o,n),key:n,tableId:e,rowId:n,store:t,debugIds:r}))),n,r,e),It=({indexId:e,sliceId:t,indexes:s,rowComponent:o=ct,getRowComponentProps:n,separator:r,debugIds:d})=>{const i=Me(s),a=i?.getStore(),l=i?.getTableId(e),c=We(e,t,i);return at(C(c,(e=>st(o,{...it(n,e),key:e,tableId:l,rowId:e,store:a,debugIds:d}))),r,d,t)},pt=({checkpoints:e,checkpointId:t,debugIds:s})=>at(Ze(t,e)??"",void 0,s,t),wt=dt((e=>e[0])),bt=dt((e=>x(e[1])?[]:[e[1]])),Ct=dt((e=>e[2])),gt=ee((e=>{const t=N(),s=N(),o=N(),r=N(),[d,i,a,l,c,u,I,p]=Y(e,(()=>[N(),N(),N(),N()]),(e=>x(e)?void 0:e+n)),[w,b,C]=oe((()=>L)),g=(e,t,s)=>M(l(e),(([o,,n])=>{if(!B(n,t)){const r=Q();if(a(e)!=R(e))X(r,t);else{let e=t;for(;!x(e)&&!B(r,e);)X(r,e),e=$(o,e)}if(s)return r;H(n,t,r)}return $(n,t)})),h=(e,t)=>M(l(e),(([,,e])=>H(e,t))),R=e=>$(t,e),L={setRelationshipDefinition:(e,n,d,i)=>(H(t,e,d),u(e,n,((t,n)=>{const d=Q(),i=Q(),a=Q(),[c,u]=l(e);j(n,(([t,s],o)=>{x(t)||(X(i,t),M($(u,t),(e=>{z(e,o),F(e)&&H(u,t)}))),x(s)||(X(i,s),B(u,s)||H(u,s,Q()),X($(u,s),o)),X(d,o),H(c,o,s),_($(r,e),(t=>{B(g(e,t),o)&&X(a,t)}))})),t(),j(d,(t=>b(s,[e,t]))),j(i,(t=>b(o,[e,t]))),j(a,(t=>{h(e,t),b(r,[e,t])}))}),Z(i)),L),delRelationshipDefinition:e=>(H(t,e),I(e),L),getStore:d,getRelationshipIds:i,getLocalTableId:a,getRemoteTableId:R,getRemoteRowId:(e,t)=>$(l(e)?.[0],t),getLocalRowIds:(e,t)=>J($(l(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(l(e))?[t]:J(g(e,t,!0)),addRemoteRowIdListener:(e,t,o)=>w(o,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>w(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(g(e,t),w(s,r,[e,t])),delListener:e=>(h(...C(e)),L),destroy:p,getListenerStats:()=>({})};return ie(L)})),ht=(e,t,s,o=H)=>{const n=(r=q(e),d=e=>!le(t,e),r.filter(d));var r,d;return b(re(t),(o=>s(e,o,t[o]))),b(n,(t=>o(e,t))),e},Rt=e=>{const t=o(e);return P(t)||t==i&&S(e)?t:void 0},Lt=(e,t)=>!(x(e)||!(e=>y(e,ne)&&e.constructor==ne)(e)||de(e)||(ue(e,((s,o)=>{t(s,o)||ce(e,o)})),(e=>R(re(e)))(e))),kt=(e,t,s)=>H(e,t,$(e,t)==-s?void 0:s);e.BackwardCheckpointsView=wt,e.CellView=lt,e.CheckpointView=pt,e.CurrentCheckpointView=bt,e.ForwardCheckpointsView=Ct,e.IndexView=({indexId:e,indexes:t,sliceComponent:s=It,getSliceComponentProps:o,separator:n,debugIds:r})=>at(C(Ue(e,t),(n=>st(s,{...it(o,n),key:n,indexId:e,sliceId:n,indexes:t,debugIds:r}))),n,r,e),e.LinkedRowsView=e=>rt(e,Xe,e.firstRowId),e.LocalRowsView=e=>rt(e,Qe,e.remoteRowId),e.MetricView=({metricId:e,metrics:t,debugIds:s})=>at(He(e,t)??n,void 0,s,e),e.Provider=({store:e,storesById:t,metrics:s,metricsById:o,indexes:n,indexesById:r,relationships:d,relationshipsById:i,checkpoints:a,checkpointsById:l,children:c})=>st(me.Provider,{value:ot((()=>[e,t,s,o,n,r,d,i,a,l]),[e,t,s,o,n,r,d,i,a,l])},c),e.RemoteRowView=({relationshipId:e,localRowId:t,relationships:s,rowComponent:o=ct,getRowComponentProps:n,debugIds:r})=>{const[d,i]=nt(s),a=d?.getRemoteTableId(e),l=Ke(e,t,d);return at(x(a)||x(l)?null:st(o,{...it(n,l),key:l,tableId:a,rowId:l,store:i,debugIds:r}),void 0,r,t)},e.RowView=ct,e.SliceView=It,e.TableView=ut,e.TablesView=({store:e,tableComponent:t=ut,getTableComponentProps:s,separator:o,debugIds:n})=>at(C(Ge(e),(o=>st(t,{...it(s,o),key:o,tableId:o,store:e,debugIds:n}))),o),e.createCheckpoints=Ie,e.createCustomPersister=ge,e.createFilePersister=(e,s)=>{let o;return ge(e,(async()=>{try{return await t.promises.readFile(s,u)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,u)}catch{}}),(e=>{o=t.watch(s,e)}),(()=>{o?.close(),o=void 0}))},e.createIndexes=pe,e.createLocalPersister=(e,t)=>Le(e,t,localStorage),e.createMetrics=Ce,e.createRelationships=gt,e.createRemotePersister=(e,t,s,o)=>{let n,r;return ge(e,(async()=>{const e=await fetch(t);return r=ke(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{n=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),o=ke(s);x(r)||x(o)||o==r||(r=o,e())}),1e3*o)}),(()=>{M(n,clearInterval),n=void 0}))},e.createSessionPersister=(e,t)=>Le(e,t,sessionStorage),e.createStore=()=>{let e,t=0,s=0;const o=N(),n=N(),r=N(),d=N(),a=N(),u=N(),p=N(),w=G(Q),C=G(Q),g=G(),h=G(),R=G(),L=G(),k=G(),[m,T,S,y]=oe((()=>ye)),V=(t,s)=>(!e||B(a,s))&&Lt(t,(e=>D(s,e))),D=(e,t,s)=>Lt(s?t:J(t,e),((s,o)=>M(E(e,o,s),(e=>(t[o]=e,!0)),(()=>!1)))),E=(t,s,o)=>e?M($($(a,t),s),(e=>Rt(o)!=e.type?e.default:o)):x(Rt(o))?void 0:o,J=(e,t)=>(M($(u,t),(t=>ue(t,((t,s)=>{le(e,s)||(e[s]=t)})))),e),z=e=>ht(a,e,((e,t,s)=>{const o={};ht(U(a,t,N()),s,((e,t,s)=>{H(e,t,s),M(s.default,(e=>o[t]=e))})),H(u,t,o)}),((e,t)=>{H(a,t),H(u,t)})),X=e=>ht(p,e,((e,t,s)=>Y(t,s)),((e,t)=>de(t))),Y=(e,t)=>ht(U(p,e,N(),(()=>pe(e,1))),t,((t,s,o)=>Z(e,t,s,o)),((t,s)=>ae(e,t,s))),Z=(e,t,s,o,n)=>ht(U(t,s,N(),(()=>we(e,s,1))),o,((t,o,n)=>ee(e,s,t,o,n)),((o,r)=>Ie(e,t,s,o,r,n))),ee=(e,t,s,o,n)=>{B(s,o)||be(e,t,o,1);const r=$(s,o);n!==r&&(Ce(e,t,o,r),H(s,o,n))},te=(e,t,s)=>Se((()=>Z(e,re(e),t,s))),se=(e,t,s,o,n)=>M($(t,s),(t=>ee(e,s,t,o,n)),(()=>Z(e,t,s,J({[o]:n},e)))),ne=e=>{const s=""+t++;return B(e,s)?ne(e):s},re=e=>$(p,e)??Y(e,{}),de=e=>Y(e,{}),ae=(e,t,s)=>Z(e,t,s,{},!0),Ie=(e,t,s,o,n,r)=>{const d=$(u,e)?.[n];if(!x(d)&&!r)return ee(e,s,o,n,d);const i=t=>{Ce(e,s,t,$(o,t)),be(e,s,t,-1),H(o,t)};x(d)?i(n):_(o,i),F(o)&&(we(e,s,-1),F(H(t,s))&&(pe(e,-1),H(p,e)))},pe=(e,t)=>kt(o,e,t),we=(e,t,s)=>kt(U(n,e,N()),t,s),be=(e,t,s,o)=>kt(U(U(r,e,N()),t,N()),s,o),Ce=(e,t,s,o)=>U(U(U(d,e,N()),t,N()),s,o),ge=(e,t,s)=>{const o=$($(d,e),t),n=ve(e,t,s);return B(o,s)?[!0,$(o,s),n]:[!1,n,n]},he=e=>{const t=F(L[e])&&F(h[e])&&F(C[e]),s=F(k[e])&&F(R[e])&&F(g[e])&&F(w[e]);if(t&&s)return;const i=e?[K(o),K(n,K),K(r,(e=>K(e,K))),K(d,(e=>K(e,K)))]:[o,n,r,d];if(t||(j(i[2],((t,s)=>j(t,((t,o)=>{F(t)||T(L[e],[s,o])})))),j(i[1],((t,s)=>{F(t)||T(h[e],[s])})),F(i[0])||T(C[e])),!s){let t;j(i[3],((s,o)=>{let n;j(s,((s,r)=>{let d;j(s,((s,i)=>{const a=ve(o,r,i);a!==s&&(T(k[e],[o,r,i],a,s,ge),t=n=d=1)})),d&&T(R[e],[o,r],ge)})),n&&T(g[e],[o],ge)})),t&&T(w[e],[],ge)}},Re=()=>W(p,(e=>W(e,W))),Le=()=>q(p),ke=e=>q($(p,e)),fe=(e,t)=>q($($(p,e),t)),ve=(e,t,s)=>$($($(p,e),t),s),me=e=>((e=>Lt(e,V))(e)&&Se((()=>X(e))),ye),Te=()=>(Se((()=>X({}))),ye),Se=e=>{if(-1==s)return;s++;const t=e();return s--,0==s&&(s=1,he(1),s=-1,he(0),s=0,b([d,o,n,r],O)),t},ye={getTables:Re,getTableIds:Le,getTable:e=>W($(p,e),W),getRowIds:ke,getRow:(e,t)=>W($($(p,e),t)),getCellIds:fe,getCell:ve,hasTable:e=>B(p,e),hasRow:(e,t)=>B($(p,e),t),hasCell:(e,t,s)=>B($($(p,e),t),s),getJson:()=>f(p),getSchemaJson:()=>f(a),setTables:me,setTable:(e,t)=>(V(t,e)&&Se((()=>Y(e,t))),ye),setRow:(e,t,s)=>(D(e,s)&&te(e,t,s),ye),addRow:(e,t)=>{let s;return D(e,t)&&(s=ne($(p,e)),te(e,s,t)),s},setPartialRow:(e,t,s)=>(D(e,s,1)&&Se((()=>{const o=re(e);ue(s,((s,n)=>se(e,o,t,n,s)))})),ye),setCell:(e,t,s,o)=>(M(E(e,s,A(o)?o(ve(e,t,s)):o),(o=>Se((()=>se(e,re(e),t,s,o))))),ye),setJson:e=>{try{"{}"===e?Te():me(v(e))}catch{}return ye},setSchema:t=>{if((e=(e=>Lt(e,(e=>Lt(e,(e=>{if(!Lt(e,((e,t)=>I([l,c],t))))return!1;const t=e.type;return!(!P(t)&&t!=i||(Rt(e.default)!=t&&ce(e,c),0))})))))(t))&&(z(t),!F(p))){const e=Re();Te(),me(e)}return ye},delTables:Te,delTable:e=>(B(p,e)&&Se((()=>de(e))),ye),delRow:(e,t)=>(M($(p,e),(s=>{B(s,t)&&Se((()=>ae(e,s,t)))})),ye),delCell:(e,t,s,o)=>(M($(p,e),(n=>M($(n,t),(r=>{B(r,s)&&Se((()=>Ie(e,n,t,r,s,o)))})))),ye),delSchema:()=>(z({}),e=!1,ye),transaction:Se,forEachTable:e=>j(p,((t,s)=>e(s,(e=>j(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachRow:(e,t)=>j($(p,e),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_($($(p,e),t),s),addTablesListener:(e,t)=>m(e,w[t?1:0]),addTableIdsListener:(e,t)=>m(e,C[t?1:0]),addTableListener:(e,t,s)=>m(t,g[s?1:0],[e]),addRowIdsListener:(e,t,s)=>m(t,h[s?1:0],[e]),addRowListener:(e,t,s,o)=>m(s,R[o?1:0],[e,t]),addCellIdsListener:(e,t,s,o)=>m(s,L[o?1:0],[e,t]),addCellListener:(e,t,s,o,n)=>m(o,k[n?1:0],[e,t,s]),callListener:e=>(y(e,[Le,ke,fe],(e=>x(e[2])?[]:[,,].fill(ve(...e)))),ye),delListener:e=>(S(e),ye),getListenerStats:()=>({})};return ie(ye)},e.defaultSorter=we,e.useAddRowCallback=(e,t,s=[],o,n=D,r=[])=>{const d=ye(o);return Ae((s=>M(d,(o=>M(t(s,o),(t=>n(o.addRow(e,t),o,t)))))),[d,e,...s,...r])},e.useCell=_e,e.useCellIds=$e,e.useCellIdsListener=(e,t,s,o,n,r)=>Oe("CellIds",ye(r),s,o,n,e,t),e.useCellListener=(e,t,s,o,n,r,d)=>Oe("Cell",ye(d),o,n,r,e,t,s),e.useCheckpoint=Ze,e.useCheckpointIds=Ye,e.useCheckpointIdsListener=(e,t,s)=>Oe("CheckpointIds",Ve(s),e,t),e.useCheckpointListener=(e,t,s,o)=>Oe("Checkpoint",Ve(o),t,s,void 0,e),e.useCheckpoints=e=>Te(e,8),e.useCreateCheckpoints=(e,t,s)=>Fe(e,t,s),e.useCreateIndexes=(e,t,s)=>Fe(e,t,s),e.useCreateMetrics=(e,t,s)=>Fe(e,t,s),e.useCreatePersister=(e,t,s=[],o,n=[])=>{const[,r]=Be(),d=Ee((()=>t(e)),[e,...s]);return De((()=>{(async()=>{await(o?.(d)),r(1)})()}),[d,...n]),d},e.useCreateRelationships=(e,t,s)=>Fe(e,t,s),e.useCreateStore=(e,t=[])=>Ee(e,t),e.useDelCellCallback=(e,t,s,o,n,r,d)=>ze(n,"Cell",r,d,e,t,s,o),e.useDelRowCallback=(e,t,s,o,n)=>ze(s,"Row",o,n,e,t),e.useDelTableCallback=(e,t,s,o)=>ze(t,"Table",s,o,e),e.useDelTablesCallback=(e,t,s)=>ze(e,"Tables",t,s),e.useGoBackwardCallback=et,e.useGoForwardCallback=tt,e.useGoToCallback=(e,t=[],s,o=D,n=[])=>{const r=Ve(s);return Ae((t=>M(r,(s=>M(e(t),(e=>o(s.goTo(e),e)))))),[r,...t,...n])},e.useIndexes=e=>Te(e,4),e.useLinkedRowIds=Xe,e.useLinkedRowIdsListener=(e,t,s,o,n)=>Oe("LinkedRowIds",Pe(n),s,o,void 0,e,t),e.useLocalRowIds=Qe,e.useLocalRowIdsListener=(e,t,s,o,n)=>Oe("LocalRowIds",Pe(n),s,o,void 0,e,t),e.useMetric=He,e.useMetricListener=(e,t,s,o)=>Oe("Metric",xe(o),t,s,void 0,e),e.useMetrics=e=>Te(e,2),e.useRedoInformation=e=>{const t=Ve(e),[,,[s]]=Ye(t);return[!x(s),tt(t),s,M(s,(e=>t?.getCheckpoint(e)))??""]},e.useRelationships=e=>Te(e,6),e.useRemoteRowId=Ke,e.useRemoteRowIdListener=(e,t,s,o,n)=>Oe("RemoteRowId",Pe(n),s,o,void 0,e,t),e.useRow=(e,t,s)=>Je("Row",ye(s),{},e,t),e.useRowIds=qe,e.useRowIdsListener=(e,t,s,o,n)=>Oe("RowIds",ye(n),t,s,o,e),e.useRowListener=(e,t,s,o,n,r)=>Oe("Row",ye(r),s,o,n,e,t),e.useSetCellCallback=(e,t,s,o,n,r,d,i)=>je(r,"Cell",o,n,d,i,e,t,s),e.useSetCheckpointCallback=(e=D,t=[],s,o=D,n=[])=>{const r=Ve(s);return Ae((t=>M(r,(s=>{const n=e(t);o(s.addCheckpoint(n),s,n)}))),[r,...t,...n])},e.useSetPartialRowCallback=(e,t,s,o,n,r,d)=>je(n,"PartialRow",s,o,r,d,e,t),e.useSetRowCallback=(e,t,s,o,n,r,d)=>je(n,"Row",s,o,r,d,e,t),e.useSetTableCallback=(e,t,s,o,n,r)=>je(o,"Table",t,s,n,r,e),e.useSetTablesCallback=(e,t,s,o,n)=>je(s,"Tables",e,t,o,n),e.useSliceIds=Ue,e.useSliceIdsListener=(e,t,s,o)=>Oe("SliceIds",Me(o),t,s,void 0,e),e.useSliceRowIds=We,e.useSliceRowIdsListener=(e,t,s,o,n)=>Oe("SliceRowIds",Me(n),s,o,void 0,e,t),e.useStore=e=>Te(e,0),e.useTable=(e,t)=>Je("Table",ye(t),{},e),e.useTableIds=Ge,e.useTableIdsListener=(e,t,s,o)=>Oe("TableIds",ye(o),e,t,s),e.useTableListener=(e,t,s,o,n)=>Oe("Table",ye(n),t,s,o,e),e.useTables=e=>Je("Tables",ye(e),{}),e.useTablesListener=(e,t,s,o)=>Oe("Tables",ye(o),e,t,s),e.useUndoInformation=e=>{const t=Ve(e),[s,o]=Ye(t);return[!R(s),et(t),o,M(o,(e=>t?.getCheckpoint(e)))??""]},Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("react")):"function"==typeof define&&define.amd?define(["exports","fs","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs,e.React);
1
+ var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),i=s(s),d="type",l="default",c="utf8",u=(e,t)=>e.includes(t),f=(e,t)=>e.every(((s,n)=>0==n||t(e[n-1],s)<=0)),g=(e,t)=>e.sort(t),h=(e,t)=>e.forEach(t),p=e=>w(e,((e,t)=>e+t),0),L=e=>e.length,v=e=>0==L(e),w=(e,t,s)=>e.reduce(t,s),y=e=>e.slice(1),I=e=>JSON.stringify(e,((e,t)=>m(t,Map)?w([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),S=JSON.parse,R=Math.max,T=Math.min,b=isFinite,m=(e,t)=>e instanceof t,C=e=>null==e,k=(e,t,s)=>C(e)?s?.():t(e),M=e=>e==o||e==r,x=e=>s(e)==i,A=()=>{},E=e=>e.size,P=(e,t)=>e?.has(t)??!1,D=e=>C(e)||0==E(e),J=e=>[...e?.values()??[]],F=e=>e.clear(),O=(e,t)=>e?.forEach(t),j=(e,t)=>e?.delete(t),z=e=>new Map(e),N=(e=z)=>[e(),e()],B=e=>[...e?.keys()??[]],_=(e,t)=>e?.get(t),q=(e,t)=>O(e,((e,s)=>t(s,e))),H=(e,t,s)=>C(s)?(j(e,t),e):e?.set(t,s),W=(e,t,s,n)=>(P(e,t)||(n?.(s),e.set(t,s)),_(e,t)),G=(e,t)=>{const s={},n=t??(e=>e);return O(e,((e,t)=>s[t]=n(e))),s},K=(e,t)=>{const s=z(),n=t??(e=>e);return O(e,((e,t)=>s.set(t,n(e)))),s},Q=e=>new Set(e),U=(e,t)=>e?.add(t),V=(e,t,s)=>{const n=e.hasRow,o=z(),r=z(),a=z(),i=z(),d=z(),l=t=>k(_(d,t),(s=>{O(s,e.delListener),H(d,t)})),c=e=>{H(o,e),H(r,e),H(a,e),H(i,e),l(e)};return[()=>e,()=>B(o),e=>_(o,e),e=>_(r,e),(e,t)=>H(r,e,t),(c,u,f,g,p)=>{const L=z(),v=z();H(o,c,u),P(r,c)||(H(r,c,t()),H(a,c,z()),H(i,c,z()));const w=_(a,c),y=_(i,c),I=t=>{const o=s=>e.getCell(u,t,s),r=_(w,t),a=n(u,t)?s(g(o,t)):void 0;if(r!=a&&H(L,t,[r,a]),!C(p)){const e=_(y,t),s=n(u,t)?p(o,t):void 0;e!=s&&H(v,t,s)}},S=e=>{f((()=>{O(L,(([,e],t)=>H(w,t,e))),O(v,((e,t)=>H(y,t,e)))}),L,v,w,y,e),F(L),F(v)};q(w,I),e.hasTable(u)&&h(e.getRowIds(u),(e=>{P(w,e)||I(e)})),S(!0),l(c),H(d,c,Q([e.addRowListener(u,null,((e,t,s)=>I(s))),e.addTableListener(u,(()=>S()))]))},c,()=>q(d,c)]},X=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),Y=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Z=(e,t,s)=>L(s)<2?U(v(s)?e:W(e,s[0],Q()),t):Z(W(e,s[0],z()),t,y(s)),$=e=>{const t=(s,n,...o)=>k(s,(s=>v(o)?e(s,n):h([o[0],null],(e=>t(_(s,e),n,...y(o))))));return t},ee=e=>{let t,s=0;const n=[],o=z();return[(r,a,i=[])=>{t??=e();const d=n.pop()??""+s++;return H(o,d,[r,a,i]),Z(a,d,i),d},(e,s=[],...n)=>$(O)(e,(e=>k(_(o,e),(([e])=>e(t,...s,...n)))),...s),e=>k(_(o,e),(([,t,s])=>($(j)(t,e,...s),H(o,e),L(n)<1e3&&n.push(e),s)),(()=>[])),(e,s,n)=>k(_(o,e),(([e,,o])=>{const r=(...a)=>{const i=L(a);i==L(o)?e(t,...a,...n(a)):C(o[i])?h(s[i](...a),(e=>r(...a,e))):r(...a,o[i])};r()}))]},te=Object,se=te.keys,ne=te.isFrozen,oe=te.freeze,re=(e,t)=>!C(((e,t)=>k(e,(e=>e[t])))(e,t)),ae=(e,t)=>delete e[t],ie=(e,t)=>h(te.entries(e),(([e,s])=>t(s,e))),de=Y((e=>{let t,s,n,o=100,r=z(),a=1;const i=Q(),d=z(),[l,c,f]=ee((()=>F)),g=z(),p=z(),w=[],y=[],I=(t,s)=>{a=0,e.transaction((()=>O(_(g,s),((s,n)=>O(s,((s,o)=>O(s,((s,r)=>C(s[t])?e.delCell(n,o,r,!0):e.setCell(n,o,r,s[t]))))))))),a=1},S=e=>{H(g,e),H(p,e),c(d,[e])},R=(e,t)=>h(((e,t)=>e.splice(0,t))(e,t??L(e)),S),T=()=>R(w,L(w)-o),b=e.addCellListener(null,null,null,((e,s,o,i,d,l)=>{if(a){k(t,(()=>{w.push(t),T(),R(y),t=void 0,n=1}));const e=W(r,s,z()),a=W(e,o,z()),c=W(a,i,[void 0,void 0],(e=>e[0]=l));c[1]=d,c[0]===c[1]&&D(H(a,i))&&D(H(e,o))&&D(H(r,s))&&(t=w.pop(),n=1),A()}})),m=(e="")=>(C(t)&&(t=""+s++,H(g,t,r),J(t,e),r=z(),n=1),t),M=()=>{v(w)||(y.unshift(m()),I(0,t),t=w.pop(),n=1)},x=()=>{v(y)||(w.push(t),t=y.shift(),I(1,t),n=1)},A=()=>{n&&(c(i),n=0)},E=e=>{const t=m(e);return A(),t},J=(e,t)=>(P(g,e)&&_(p,e)!==t&&(H(p,e,t),c(d,[e])),F),F={setSize:e=>(o=e,T(),F),addCheckpoint:E,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...y]],getCheckpoint:e=>_(p,e),goBackward:()=>(M(),A(),F),goForward:()=>(x(),A(),F),goTo:e=>{const s=u(w,e)?M:u(y,e)?x:null;for(;!C(s)&&e!=t;)s();return A(),F},addCheckpointIdsListener:e=>l(e,i),addCheckpointListener:(e,t)=>l(t,d,[e]),delListener:e=>(f(e),F),clear:()=>(R(w),R(y),C(t)||S(t),t=void 0,s=0,E(),F),destroy:()=>{e.delListener(b)},getListenerStats:()=>({})};return oe(F.clear())})),le=(e,t)=>e<t?-1:1,ce=Y((e=>{const t=z(),s=z(),[o,r,a,i,d,l,c,u]=V(e,z,(e=>C(e)?n:e+n)),[h,p,L]=ee((()=>v)),v={setIndexDefinition:(e,n,o,r,a,c=le)=>{const u=C(a)?void 0:([e],[t])=>a(e,t);return l(e,n,((n,o,a,l,h,L)=>{let v=0;const w=Q(),y=Q(),I=i(e);if(O(o,(([e,t],s)=>{C(e)||(U(w,e),k(_(I,e),(t=>{j(t,s),D(t)&&(H(I,e),v=1)}))),C(t)||(U(w,t),P(I,t)||(H(I,t,Q()),v=1),U(_(I,t),s),C(r)||U(y,t))})),n(),D(h)||(L?q(I,(e=>U(y,e))):q(a,(e=>k(_(l,e),(e=>U(y,e))))),O(y,(e=>{const t=(t,s)=>c(_(h,t),_(h,s),e),s=[..._(I,e)];f(s,t)||(H(I,e,Q(g(s,t))),U(w,e))}))),(v||L)&&!C(u)){const t=[...I];f(t,u)||(d(e,z(g(t,u))),v=1)}v&&p(t,[e]),O(w,(t=>p(s,[e,t])))}),X(o),k(r,X)),v},delIndexDefinition:e=>(c(e),v),getStore:o,getIndexIds:r,getTableId:a,getSliceIds:e=>B(i(e)),getSliceRowIds:(e,t)=>J(_(i(e),t)),addSliceIdsListener:(e,s)=>h(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>h(n,s,[e,t]),delListener:e=>(L(e),v),destroy:u,getListenerStats:()=>({})};return oe(v)})),ue=z([["avg",[(e,t)=>p(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>R(...e),(e,t)=>R(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:R(t,e)]],["min",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:T(t,e)]],["sum",[e=>p(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),fe=Y((e=>{const t=z(),[s,o,r,a,i,d,l,c]=V(e,A,(e=>isNaN(e)||C(e)||!0===e||!1===e||e===n?void 0:1*e)),[u,f,g]=ee((()=>h)),h={setMetricDefinition:(e,s,n,o,r,l,c)=>{const u=x(n)?[n,r,l,c]:_(ue,n)??_(ue,"sum");return d(e,s,((s,n,o,r,d,l)=>{let c=a(e),g=E(r);const[h,p,L,v]=u;l=l||C(c),O(n,(([e,t])=>{l||(c=C(e)?p?.(c,t,g++):C(t)?L?.(c,e,g--):v?.(c,t,e,g)),l=l||C(c)})),s(),D(r)?c=void 0:l&&(c=h(J(r),E(r))),b(c)||(c=void 0);const w=a(e);c!=w&&(i(e,c),f(t,[e],c,w))}),X(o,1)),h},delMetricDefinition:e=>(l(e),h),getStore:s,getMetricIds:o,getTableId:r,getMetric:a,addMetricListener:(e,s)=>u(s,t,[e]),delListener:e=>(g(e),h),destroy:c,getListenerStats:()=>({})};return oe(h)})),ge=(e,t,s,n,o)=>{let r,a=0;const i={load:async s=>{if(2!=a){a=1;const n=await t();C(n)||""==n?e.setTables(s):e.setJson(n),a=0}return i},startAutoLoad:async e=>(i.stopAutoLoad(),await i.load(e),n(i.load),i),stopAutoLoad:()=>(o(),i),save:async()=>(1!=a&&(a=2,await s(e.getJson()),a=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),r=e.addTablesListener((()=>i.save())),i),stopAutoSave:()=>(k(r,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return oe(i)},he="storage",pe=globalThis.window,Le=(e,t,s)=>{let n;return ge(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},pe.addEventListener(he,n)}),(()=>{pe.removeEventListener(he,n),n=void 0}))},ve=e=>e.headers.get("ETag"),we=Y((e=>{const t=z(),s=z(),o=z(),r=z(),[a,i,d,l,c,u,f,g]=V(e,(()=>[z(),z(),z(),z()]),(e=>C(e)?void 0:e+n)),[h,p,L]=ee((()=>I)),v=(e,t,s)=>k(l(e),(([n,,o])=>{if(!P(o,t)){const r=Q();if(d(e)!=y(e))U(r,t);else{let e=t;for(;!C(e)&&!P(r,e);)U(r,e),e=_(n,e)}if(s)return r;H(o,t,r)}return _(o,t)})),w=(e,t)=>k(l(e),(([,,e])=>H(e,t))),y=e=>_(t,e),I={setRelationshipDefinition:(e,n,a,i)=>(H(t,e,a),u(e,n,((t,n)=>{const a=Q(),i=Q(),d=Q(),[c,u]=l(e);O(n,(([t,s],n)=>{C(t)||(U(i,t),k(_(u,t),(e=>{j(e,n),D(e)&&H(u,t)}))),C(s)||(U(i,s),P(u,s)||H(u,s,Q()),U(_(u,s),n)),U(a,n),H(c,n,s),q(_(r,e),(t=>{P(v(e,t),n)&&U(d,t)}))})),t(),O(a,(t=>p(s,[e,t]))),O(i,(t=>p(o,[e,t]))),O(d,(t=>{w(e,t),p(r,[e,t])}))}),X(i)),I),delRelationshipDefinition:e=>(H(t,e),f(e),I),getStore:a,getRelationshipIds:i,getLocalTableId:d,getRemoteTableId:y,getRemoteRowId:(e,t)=>_(l(e)?.[0],t),getLocalRowIds:(e,t)=>J(_(l(e)?.[1],t)),getLinkedRowIds:(e,t)=>C(l(e))?[t]:J(v(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>h(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>h(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),h(s,r,[e,t])),delListener:e=>(w(...L(e)),I),destroy:g,getListenerStats:()=>({})};return oe(I)})),ye=(e,t,s,n=H)=>{const o=(r=B(e),a=e=>!re(t,e),r.filter(a));var r,a;return h(se(t),(n=>s(e,n,t[n]))),h(o,(t=>n(e,t))),e},Ie=e=>{const t=s(e);return M(t)||t==a&&b(e)?t:void 0},Se=(e,t)=>!(C(e)||!(e=>m(e,te)&&e.constructor==te)(e)||ne(e)||(ie(e,((s,n)=>{t(s,n)||ae(e,n)})),(e=>v(se(e)))(e))),Re=(e,t,s)=>H(e,t,_(e,t)==-s?void 0:s);e.createCheckpoints=de,e.createCustomPersister=ge,e.createFilePersister=(e,s)=>{let n;return ge(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=ce,e.createLocalPersister=(e,t)=>Le(e,t,localStorage),e.createMetrics=fe,e.createRelationships=we,e.createRemotePersister=(e,t,s,n)=>{let o,r;return ge(e,(async()=>{const e=await fetch(t);return r=ve(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=ve(s);C(r)||C(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{k(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Le(e,t,sessionStorage),e.createStore=()=>{let e,t=0,s=0;const n=z(),o=z(),r=z(),i=z(),c=z(),f=z(),g=z(),p=N(Q),L=N(Q),v=N(),w=N(),y=N(),R=N(),T=N(),[b,m,A,E]=ee((()=>Ee)),J=(t,s)=>(!e||P(c,s))&&Se(t,(e=>j(s,e))),j=(e,t,s)=>Se(s?t:V(t,e),((s,n)=>k(U(e,n,s),(e=>(t[n]=e,!0)),(()=>!1)))),U=(t,s,n)=>e?k(_(_(c,t),s),(e=>Ie(n)!=e.type?e.default:n)):C(Ie(n))?void 0:n,V=(e,t)=>(k(_(f,t),(t=>ie(t,((t,s)=>{re(e,s)||(e[s]=t)})))),e),X=e=>ye(c,e,((e,t,s)=>{const n={};ye(W(c,t,z()),s,((e,t,s)=>{H(e,t,s),k(s.default,(e=>n[t]=e))})),H(f,t,n)}),((e,t)=>{H(c,t),H(f,t)})),Y=e=>ye(g,e,((e,t,s)=>Z(t,s)),((e,t)=>ce(t))),Z=(e,t)=>ye(W(g,e,z(),(()=>ge(e,1))),t,((t,s,n)=>$(e,t,s,n)),((t,s)=>ue(e,t,s))),$=(e,t,s,n,o)=>ye(W(t,s,z(),(()=>he(e,s,1))),n,((t,n,o)=>te(e,s,t,n,o)),((n,r)=>fe(e,t,s,n,r,o))),te=(e,t,s,n,o)=>{P(s,n)||pe(e,t,n,1);const r=_(s,n);o!==r&&(Le(e,t,n,r),H(s,n,o))},se=(e,t,s)=>Ae((()=>$(e,le(e),t,s))),ne=(e,t,s,n,o)=>k(_(t,s),(t=>te(e,s,t,n,o)),(()=>$(e,t,s,V({[n]:o},e)))),de=e=>{const s=""+t++;return P(e,s)?de(e):s},le=e=>_(g,e)??Z(e,{}),ce=e=>Z(e,{}),ue=(e,t,s)=>$(e,t,s,{},!0),fe=(e,t,s,n,o,r)=>{const a=_(f,e)?.[o];if(!C(a)&&!r)return te(e,s,n,o,a);const i=t=>{Le(e,s,t,_(n,t)),pe(e,s,t,-1),H(n,t)};C(a)?i(o):q(n,i),D(n)&&(he(e,s,-1),D(H(t,s))&&(ge(e,-1),H(g,e)))},ge=(e,t)=>Re(n,e,t),he=(e,t,s)=>Re(W(o,e,z()),t,s),pe=(e,t,s,n)=>Re(W(W(r,e,z()),t,z()),s,n),Le=(e,t,s,n)=>W(W(W(i,e,z()),t,z()),s,n),ve=(e,t,s)=>{const n=_(_(i,e),t),o=ke(e,t,s);return P(n,s)?[!0,_(n,s),o]:[!1,o,o]},we=e=>{const t=D(R[e])&&D(w[e])&&D(L[e]),s=D(T[e])&&D(y[e])&&D(v[e])&&D(p[e]);if(t&&s)return;const a=e?[K(n),K(o,K),K(r,(e=>K(e,K))),K(i,(e=>K(e,K)))]:[n,o,r,i];if(t||(O(a[2],((t,s)=>O(t,((t,n)=>{D(t)||m(R[e],[s,n])})))),O(a[1],((t,s)=>{D(t)||m(w[e],[s])})),D(a[0])||m(L[e])),!s){let t;O(a[3],((s,n)=>{let o;O(s,((s,r)=>{let a;O(s,((s,i)=>{const d=ke(n,r,i);d!==s&&(m(T[e],[n,r,i],d,s,ve),t=o=a=1)})),a&&m(y[e],[n,r],ve)})),o&&m(v[e],[n],ve)})),t&&m(p[e],[],ve)}},Te=()=>G(g,(e=>G(e,G))),be=()=>B(g),me=e=>B(_(g,e)),Ce=(e,t)=>B(_(_(g,e),t)),ke=(e,t,s)=>_(_(_(g,e),t),s),Me=e=>((e=>Se(e,J))(e)&&Ae((()=>Y(e))),Ee),xe=()=>(Ae((()=>Y({}))),Ee),Ae=e=>{if(-1==s)return;s++;const t=e();return s--,0==s&&(s=1,we(1),s=-1,we(0),s=0,h([i,n,o,r],F)),t},Ee={getTables:Te,getTableIds:be,getTable:e=>G(_(g,e),G),getRowIds:me,getRow:(e,t)=>G(_(_(g,e),t)),getCellIds:Ce,getCell:ke,hasTable:e=>P(g,e),hasRow:(e,t)=>P(_(g,e),t),hasCell:(e,t,s)=>P(_(_(g,e),t),s),getJson:()=>I(g),getSchemaJson:()=>I(c),setTables:Me,setTable:(e,t)=>(J(t,e)&&Ae((()=>Z(e,t))),Ee),setRow:(e,t,s)=>(j(e,s)&&se(e,t,s),Ee),addRow:(e,t)=>{let s;return j(e,t)&&(s=de(_(g,e)),se(e,s,t)),s},setPartialRow:(e,t,s)=>(j(e,s,1)&&Ae((()=>{const n=le(e);ie(s,((s,o)=>ne(e,n,t,o,s)))})),Ee),setCell:(e,t,s,n)=>(k(U(e,s,x(n)?n(ke(e,t,s)):n),(n=>Ae((()=>ne(e,le(e),t,s,n))))),Ee),setJson:e=>{try{"{}"===e?xe():Me(S(e))}catch{}return Ee},setSchema:t=>{if((e=(e=>Se(e,(e=>Se(e,(e=>{if(!Se(e,((e,t)=>u([d,l],t))))return!1;const t=e.type;return!(!M(t)&&t!=a||(Ie(e.default)!=t&&ae(e,l),0))})))))(t))&&(X(t),!D(g))){const e=Te();xe(),Me(e)}return Ee},delTables:xe,delTable:e=>(P(g,e)&&Ae((()=>ce(e))),Ee),delRow:(e,t)=>(k(_(g,e),(s=>{P(s,t)&&Ae((()=>ue(e,s,t)))})),Ee),delCell:(e,t,s,n)=>(k(_(g,e),(o=>k(_(o,t),(r=>{P(r,s)&&Ae((()=>fe(e,o,t,r,s,n)))})))),Ee),delSchema:()=>(X({}),e=!1,Ee),transaction:Ae,forEachTable:e=>O(g,((t,s)=>e(s,(e=>O(t,((t,s)=>e(s,(e=>q(t,e))))))))),forEachRow:(e,t)=>O(_(g,e),((e,s)=>t(s,(t=>q(e,t))))),forEachCell:(e,t,s)=>q(_(_(g,e),t),s),addTablesListener:(e,t)=>b(e,p[t?1:0]),addTableIdsListener:(e,t)=>b(e,L[t?1:0]),addTableListener:(e,t,s)=>b(t,v[s?1:0],[e]),addRowIdsListener:(e,t,s)=>b(t,w[s?1:0],[e]),addRowListener:(e,t,s,n)=>b(s,y[n?1:0],[e,t]),addCellIdsListener:(e,t,s,n)=>b(s,R[n?1:0],[e,t]),addCellListener:(e,t,s,n,o)=>b(n,T[o?1:0],[e,t,s]),callListener:e=>(E(e,[be,me,Ce],(e=>C(e[2])?[]:[,,].fill(ke(...e)))),Ee),delListener:e=>(A(e),Ee),getListenerStats:()=>({})};return oe(Ee)},e.defaultSorter=le,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
Binary file
@@ -0,0 +1 @@
1
+ var e,s;e=this,s=function(e,s){"use strict";const o=e=>typeof e,t=o(""),d=(e,s)=>e.map(s),r=e=>null==e,n=(e,s,o)=>r(e)?o?.():s(e),i=()=>{},{createContext:l,useContext:a}=s,c=l([]),u=(e,s)=>{const o=a(c);return r(e)?o[s]:((e,s)=>n(e,(e=>e[s])))(o[s+1],e)},I=(e,s)=>{const d=u(e,s);return r(e)||(e=>o(e)==t)(e)?d:e},p=e=>I(e,0),w=e=>I(e,2),b=e=>I(e,4),C=e=>I(e,6),k=e=>I(e,8),{useCallback:R,useEffect:g,useMemo:h,useState:m}=s,T=(e,s,o=[])=>{const t=h((()=>s(e)),[e,...o]);return g((()=>()=>t.destroy()),[t]),t},L=(e,s,o,...t)=>{const d=s?.["get"+e]??(()=>o),r=d(...t),[,n]=m(r);return g((()=>{const o=s?.[`add${e}Listener`]?.(...t,(()=>n(d(...t))),!1);return()=>s?.delListener(o)}),[s,e,n,d,...t]),r},y=(e,s,o,t=[],d,...r)=>{g((()=>{const t=s?.[`add${e}Listener`]?.(...r,o,d);return()=>s?.delListener(t)}),[s,e,...t,d,...r])},v=(e,s,o,t=[],d=i,r=[],...l)=>{const a=p(e);return R((e=>n(a,(t=>n(o(e,t),(e=>d(t["set"+s](...l,e),e)))))),[a,s,...t,...r,...l])},S=(e,s,o=i,t=[],...d)=>{const r=p(e);return R((()=>o(r?.["del"+s](...d))),[r,s,...t,...d])},f=(e,s,o)=>{const t=k(e);return R((()=>t?.[s](o)),[t,s,o])},x=e=>L("TableIds",p(e),[]),P=(e,s)=>L("RowIds",p(s),[],e),V=(e,s,o)=>L("CellIds",p(o),[],e,s),M=(e,s,o,t)=>L("Cell",p(t),void 0,e,s,o),B=(e,s)=>L("Metric",w(s),void 0,e),D=(e,s)=>L("SliceIds",b(s),[],e),A=(e,s,o)=>L("SliceRowIds",b(o),[],e,s),F=(e,s,o)=>L("RemoteRowId",C(o),void 0,e,s),G=(e,s,o)=>L("LocalRowIds",C(o),[],e,s),j=(e,s,o)=>L("LinkedRowIds",C(o),[],e,s),E=e=>L("CheckpointIds",k(e),[[],void 0,[]]),U=(e,s)=>L("Checkpoint",k(s),void 0,e),$=e=>f(e,"goBackward"),_=e=>f(e,"goForward"),{createElement:q,useMemo:O}=s,z=e=>{const s=C(e);return[s,s?.getStore()]},H=({relationshipId:e,relationships:s,rowComponent:o=W,getRowComponentProps:t,separator:r,debugIds:n},i,l)=>{const[a,c]=z(s),u=a?.getLocalTableId(e),I=i(e,l,a);return N(d(I,(e=>q(o,{...K(t,e),key:e,tableId:u,rowId:e,store:c,debugIds:n}))),r,n,l)},J=e=>({checkpoints:s,checkpointComponent:o=Z,getCheckpointComponentProps:t,separator:r,debugIds:n})=>{const i=k(s);return N(d(e(E(i)),(e=>q(o,{...K(t,e),key:e,checkpoints:i,checkpointId:e,debugIds:n}))),r)},K=(e,s)=>r(e)?{}:e(s),N=(e,s,o,t)=>{const n=r(s)||!Array.isArray(e)?e:d(e,((e,o)=>o>0?[s,e]:e));return o?[t,":{",n,"}"]:n},Q=({tableId:e,rowId:s,cellId:o,store:t,debugIds:d})=>N(""+(M(e,s,o,t)??""),void 0,d,o),W=({tableId:e,rowId:s,store:o,cellComponent:t=Q,getCellComponentProps:r,separator:n,debugIds:i})=>N(d(V(e,s,o),(d=>q(t,{...K(r,d),key:d,tableId:e,rowId:s,cellId:d,store:o,debugIds:i}))),n,i,s),X=({tableId:e,store:s,rowComponent:o=W,getRowComponentProps:t,separator:r,debugIds:n})=>N(d(P(e,s),(d=>q(o,{...K(t,d),key:d,tableId:e,rowId:d,store:s,debugIds:n}))),r,n,e),Y=({indexId:e,sliceId:s,indexes:o,rowComponent:t=W,getRowComponentProps:r,separator:n,debugIds:i})=>{const l=b(o),a=l?.getStore(),c=l?.getTableId(e),u=A(e,s,l);return N(d(u,(e=>q(t,{...K(r,e),key:e,tableId:c,rowId:e,store:a,debugIds:i}))),n,i,s)},Z=({checkpoints:e,checkpointId:s,debugIds:o})=>N(U(s,e)??"",void 0,o,s),ee=J((e=>e[0])),se=J((e=>r(e[1])?[]:[e[1]])),oe=J((e=>e[2]));e.BackwardCheckpointsView=ee,e.CellView=Q,e.CheckpointView=Z,e.CurrentCheckpointView=se,e.ForwardCheckpointsView=oe,e.IndexView=({indexId:e,indexes:s,sliceComponent:o=Y,getSliceComponentProps:t,separator:r,debugIds:n})=>N(d(D(e,s),(d=>q(o,{...K(t,d),key:d,indexId:e,sliceId:d,indexes:s,debugIds:n}))),r,n,e),e.LinkedRowsView=e=>H(e,j,e.firstRowId),e.LocalRowsView=e=>H(e,G,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:o})=>N(B(e,s)??"",void 0,o,e),e.Provider=({store:e,storesById:o,metrics:t,metricsById:d,indexes:r,indexesById:n,relationships:i,relationshipsById:l,checkpoints:a,checkpointsById:u,children:I})=>{const p=s.useContext(c);return q(c.Provider,{value:O((()=>[e??p[0],{...p[1],...o},t??p[2],{...p[3],...d},r??p[4],{...p[5],...n},i??p[6],{...p[7],...l},a??p[8],{...p[9],...u}]),[e,o,t,d,r,n,i,l,a,u,p])},I)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:o,rowComponent:t=W,getRowComponentProps:d,debugIds:n})=>{const[i,l]=z(o),a=i?.getRemoteTableId(e),c=F(e,s,i);return N(r(a)||r(c)?null:q(t,{...K(d,c),key:c,tableId:a,rowId:c,store:l,debugIds:n}),void 0,n,s)},e.RowView=W,e.SliceView=Y,e.TableView=X,e.TablesView=({store:e,tableComponent:s=X,getTableComponentProps:o,separator:t,debugIds:r})=>N(d(x(e),(t=>q(s,{...K(o,t),key:t,tableId:t,store:e,debugIds:r}))),t),e.useAddRowCallback=(e,s,o=[],t,d=i,r=[])=>{const l=p(t);return R((o=>n(l,(t=>n(s(o,t),(s=>d(t.addRow(e,s),t,s)))))),[l,e,...o,...r])},e.useCell=M,e.useCellIds=V,e.useCellIdsListener=(e,s,o,t,d,r)=>y("CellIds",p(r),o,t,d,e,s),e.useCellListener=(e,s,o,t,d,r,n)=>y("Cell",p(n),t,d,r,e,s,o),e.useCheckpoint=U,e.useCheckpointIds=E,e.useCheckpointIdsListener=(e,s,o)=>y("CheckpointIds",k(o),e,s),e.useCheckpointListener=(e,s,o,t)=>y("Checkpoint",k(t),s,o,void 0,e),e.useCheckpoints=e=>u(e,8),e.useCreateCheckpoints=(e,s,o)=>T(e,s,o),e.useCreateIndexes=(e,s,o)=>T(e,s,o),e.useCreateMetrics=(e,s,o)=>T(e,s,o),e.useCreatePersister=(e,s,o=[],t,d=[])=>{const[,r]=m(),n=h((()=>s(e)),[e,...o]);return g((()=>((async()=>{await(t?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},e.useCreateRelationships=(e,s,o)=>T(e,s,o),e.useCreateStore=(e,s=[])=>h(e,s),e.useDelCellCallback=(e,s,o,t,d,r,n)=>S(d,"Cell",r,n,e,s,o,t),e.useDelRowCallback=(e,s,o,t,d)=>S(o,"Row",t,d,e,s),e.useDelTableCallback=(e,s,o,t)=>S(s,"Table",o,t,e),e.useDelTablesCallback=(e,s,o)=>S(e,"Tables",s,o),e.useGoBackwardCallback=$,e.useGoForwardCallback=_,e.useGoToCallback=(e,s=[],o,t=i,d=[])=>{const r=k(o);return R((s=>n(r,(o=>n(e(s),(e=>t(o.goTo(e),e)))))),[r,...s,...d])},e.useIndexes=e=>u(e,4),e.useLinkedRowIds=j,e.useLinkedRowIdsListener=(e,s,o,t,d)=>y("LinkedRowIds",C(d),o,t,void 0,e,s),e.useLocalRowIds=G,e.useLocalRowIdsListener=(e,s,o,t,d)=>y("LocalRowIds",C(d),o,t,void 0,e,s),e.useMetric=B,e.useMetricListener=(e,s,o,t)=>y("Metric",w(t),s,o,void 0,e),e.useMetrics=e=>u(e,2),e.useRedoInformation=e=>{const s=k(e),[,,[o]]=E(s);return[!r(o),_(s),o,n(o,(e=>s?.getCheckpoint(e)))??""]},e.useRelationships=e=>u(e,6),e.useRemoteRowId=F,e.useRemoteRowIdListener=(e,s,o,t,d)=>y("RemoteRowId",C(d),o,t,void 0,e,s),e.useRow=(e,s,o)=>L("Row",p(o),{},e,s),e.useRowIds=P,e.useRowIdsListener=(e,s,o,t,d)=>y("RowIds",p(d),s,o,t,e),e.useRowListener=(e,s,o,t,d,r)=>y("Row",p(r),o,t,d,e,s),e.useSetCellCallback=(e,s,o,t,d,r,n,i)=>v(r,"Cell",t,d,n,i,e,s,o),e.useSetCheckpointCallback=(e=i,s=[],o,t=i,d=[])=>{const r=k(o);return R((s=>n(r,(o=>{const d=e(s);t(o.addCheckpoint(d),o,d)}))),[r,...s,...d])},e.useSetPartialRowCallback=(e,s,o,t,d,r,n)=>v(d,"PartialRow",o,t,r,n,e,s),e.useSetRowCallback=(e,s,o,t,d,r,n)=>v(d,"Row",o,t,r,n,e,s),e.useSetTableCallback=(e,s,o,t,d,r)=>v(t,"Table",s,o,d,r,e),e.useSetTablesCallback=(e,s,o,t,d)=>v(o,"Tables",e,s,t,d),e.useSliceIds=D,e.useSliceIdsListener=(e,s,o,t)=>y("SliceIds",b(t),s,o,void 0,e),e.useSliceRowIds=A,e.useSliceRowIdsListener=(e,s,o,t,d)=>y("SliceRowIds",b(d),o,t,void 0,e,s),e.useStore=e=>u(e,0),e.useTable=(e,s)=>L("Table",p(s),{},e),e.useTableIds=x,e.useTableIdsListener=(e,s,o,t)=>y("TableIds",p(t),e,s,o),e.useTableListener=(e,s,o,t,d)=>y("Table",p(d),s,o,t,e),e.useTables=e=>L("Tables",p(e),{}),e.useTablesListener=(e,s,o,t)=>y("Tables",p(t),e,s,o),e.useUndoInformation=e=>{const s=k(e),[o,t]=E(s);return[(d=o,!(0==(e=>e.length)(d))),$(s),t,n(t,(e=>s?.getCheckpoint(e)))??""];var d},Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "tinybase",
3
- "version": "0.9.0",
3
+ "version": "0.9.4",
4
4
  "author": "jamesgpearce",
5
5
  "repository": "github:tinyplex/tinybase",
6
6
  "license": "MIT",
7
7
  "homepage": "https://tinybase.org",
8
8
  "description": "A tiny, reactive JavaScript library for structured state and tabular data.",
9
9
  "type": "module",
10
- "main": "./lib/tinybase.js",
11
10
  "files": [
12
11
  "lib/**"
13
12
  ],
14
13
  "exports": {
15
- "./": "./lib/"
14
+ ".": "./lib/tinybase.js",
15
+ "./*": "./lib/*.js"
16
16
  },
17
17
  "browser": {
18
18
  "fs": false
@@ -39,9 +39,9 @@
39
39
  "publishPackage": "gulp publishPackage"
40
40
  },
41
41
  "devDependencies": {
42
- "@babel/cli": "^7.16.7",
42
+ "@babel/cli": "^7.16.8",
43
43
  "@babel/core": "^7.16.7",
44
- "@babel/preset-env": "^7.16.7",
44
+ "@babel/preset-env": "^7.16.8",
45
45
  "@babel/preset-react": "^7.16.7",
46
46
  "@babel/preset-typescript": "^7.16.7",
47
47
  "@rollup/plugin-replace": "^3.0.1",
@@ -56,25 +56,25 @@
56
56
  "@types/react-dom": "^17.0.11",
57
57
  "@types/react-test-renderer": "^17.0.1",
58
58
  "@types/tmp": "^0.2.3",
59
- "@typescript-eslint/eslint-plugin": "^5.9.0",
60
- "@typescript-eslint/parser": "^5.9.0",
59
+ "@typescript-eslint/eslint-plugin": "^5.9.1",
60
+ "@typescript-eslint/parser": "^5.9.1",
61
61
  "asciichart": "^1.5.25",
62
62
  "babel-eslint": "^10.1.0",
63
- "babel-jest": "^27.4.5",
63
+ "babel-jest": "^27.4.6",
64
64
  "babel-preset-minify": "^0.5.1",
65
65
  "country-flag-emoji-json": "^2.0.0",
66
- "cspell": "^5.14.0",
67
- "esbuild": "^0.14.10",
66
+ "cspell": "^5.15.2",
67
+ "esbuild": "^0.14.11",
68
68
  "eslint": "^8.6.0",
69
69
  "eslint-config-prettier": "^8.3.0",
70
70
  "eslint-plugin-jest": "^25.3.4",
71
- "eslint-plugin-jsdoc": "^37.5.1",
71
+ "eslint-plugin-jsdoc": "^37.6.1",
72
72
  "eslint-plugin-react": "^7.28.0",
73
73
  "eslint-plugin-react-hooks": "^4.3.0",
74
74
  "gulp": "^4.0.2",
75
75
  "gulp-gzip": "^1.4.2",
76
- "http-server": "^14.0.0",
77
- "jest": "^27.4.5",
76
+ "http-server": "^14.1.0",
77
+ "jest": "^27.4.7",
78
78
  "jest-fetch-mock": "^3.0.3",
79
79
  "jest-puppeteer": "^6.0.3",
80
80
  "less": "^4.1.2",
@@ -83,17 +83,22 @@
83
83
  "react": "^17.0.2",
84
84
  "react-dom": "^17.0.2",
85
85
  "react-test-renderer": "^17.0.2",
86
- "rollup": "^2.62.0",
86
+ "rollup": "^2.63.0",
87
87
  "rollup-plugin-esbuild": "^4.8.2",
88
88
  "rollup-plugin-gzip": "^3.0.0",
89
- "rollup-plugin-prettier": "^2.2.0",
89
+ "rollup-plugin-prettier": "^2.2.2",
90
90
  "rollup-plugin-terser": "^7.0.2",
91
- "tinydocs": "^0.1.4",
91
+ "tinydocs": "^0.1.10",
92
92
  "tmp": "^0.2.1",
93
93
  "ts-unused-exports": "^7.0.3",
94
94
  "typescript": "4.5.4"
95
95
  },
96
96
  "peerDependencies": {
97
97
  "react": "^17.0.2"
98
+ },
99
+ "peerDependenciesMeta": {
100
+ "react": {
101
+ "optional": true
102
+ }
98
103
  }
99
104
  }