tinybase 4.4.0-beta.1 → 4.4.0

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 (71) hide show
  1. package/lib/cjs/store.cjs +1 -1
  2. package/lib/cjs/store.cjs.gz +0 -0
  3. package/lib/cjs/tinybase.cjs +1 -1
  4. package/lib/cjs/tinybase.cjs.gz +0 -0
  5. package/lib/cjs/tools.cjs +1 -1
  6. package/lib/cjs/tools.cjs.gz +0 -0
  7. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  8. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  9. package/lib/cjs/ui-react.cjs +1 -1
  10. package/lib/cjs/ui-react.cjs.gz +0 -0
  11. package/lib/cjs-es6/store.cjs +1 -1
  12. package/lib/cjs-es6/store.cjs.gz +0 -0
  13. package/lib/cjs-es6/tinybase.cjs +1 -1
  14. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  15. package/lib/cjs-es6/tools.cjs +1 -1
  16. package/lib/cjs-es6/tools.cjs.gz +0 -0
  17. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  18. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  19. package/lib/cjs-es6/ui-react.cjs +1 -1
  20. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  21. package/lib/debug/store.js +1 -1
  22. package/lib/debug/tinybase.js +1 -1
  23. package/lib/debug/tools.js +355 -14
  24. package/lib/debug/ui-react-dom.js +1 -1
  25. package/lib/debug/ui-react.js +284 -71
  26. package/lib/es6/store.js +1 -1
  27. package/lib/es6/store.js.gz +0 -0
  28. package/lib/es6/tinybase.js +1 -1
  29. package/lib/es6/tinybase.js.gz +0 -0
  30. package/lib/es6/tools.js +1 -1
  31. package/lib/es6/tools.js.gz +0 -0
  32. package/lib/es6/ui-react-dom-debug.js +1 -1
  33. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  34. package/lib/es6/ui-react.js +1 -1
  35. package/lib/es6/ui-react.js.gz +0 -0
  36. package/lib/store.js +1 -1
  37. package/lib/store.js.gz +0 -0
  38. package/lib/tinybase.js +1 -1
  39. package/lib/tinybase.js.gz +0 -0
  40. package/lib/tools.js +1 -1
  41. package/lib/tools.js.gz +0 -0
  42. package/lib/types/store.d.ts +1 -1
  43. package/lib/types/tools.d.ts +2 -2
  44. package/lib/types/ui-react.d.ts +1163 -52
  45. package/lib/types/with-schemas/store.d.ts +1 -1
  46. package/lib/types/with-schemas/tools.d.ts +2 -2
  47. package/lib/types/with-schemas/ui-react.d.ts +1353 -65
  48. package/lib/ui-react.js +1 -1
  49. package/lib/ui-react.js.gz +0 -0
  50. package/lib/umd/store.js +1 -1
  51. package/lib/umd/store.js.gz +0 -0
  52. package/lib/umd/tinybase.js +1 -1
  53. package/lib/umd/tinybase.js.gz +0 -0
  54. package/lib/umd/tools.js +1 -1
  55. package/lib/umd/tools.js.gz +0 -0
  56. package/lib/umd/ui-react-dom-debug.js +1 -1
  57. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  58. package/lib/umd/ui-react.js +1 -1
  59. package/lib/umd/ui-react.js.gz +0 -0
  60. package/lib/umd-es6/store.js +1 -1
  61. package/lib/umd-es6/store.js.gz +0 -0
  62. package/lib/umd-es6/tinybase.js +1 -1
  63. package/lib/umd-es6/tinybase.js.gz +0 -0
  64. package/lib/umd-es6/tools.js +1 -1
  65. package/lib/umd-es6/tools.js.gz +0 -0
  66. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  67. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  68. package/lib/umd-es6/ui-react.js +1 -1
  69. package/lib/umd-es6/ui-react.js.gz +0 -0
  70. package/package.json +20 -20
  71. package/readme.md +13 -13
package/lib/ui-react.js CHANGED
@@ -1 +1 @@
1
- import e,{useContext as t}from"react";const o=e=>typeof e,s="",r=o(s),d="Listener",n="Result",I="Ids",i="Table",u=i+"s",l=i+I,c="Row",a=c+"Count",p=c+I,g="Sorted"+c+I,b="Cell",C=b+I,m="Value",k=m+"s",w=m+I,y=e=>null==e,h=(e,t,o)=>y(e)?o?.():t(e),R=e=>o(e)==r,v=()=>{},q=(e,t)=>e.map(t),P=Object.keys,{createContext:f,useContext:x}=e,S=f([]),L=(e,t)=>{const o=x(S);return y(e)?o[t]:R(e)?((e,t)=>h(e,(e=>e[t])))(o[t+1]??{},e):e},B=(e,t)=>{const o=L(e,t);return y(e)||R(e)?o:e},T=e=>P(x(S)[e]??{}),M=e=>L(e,0),F=e=>B(e,0),E=e=>L(e,2),V=e=>B(e,2),A=e=>L(e,4),j=e=>B(e,4),D=e=>L(e,6),O=e=>B(e,6),Q=e=>L(e,8),W=e=>B(e,8),z=e=>L(e,10),G=e=>B(e,10),H=e=>e.toLowerCase();H(d);const J="Transaction";H(J);const{useCallback:K,useEffect:N,useMemo:U,useRef:X,useState:Y}=e,Z=(e,t,o=[])=>{const s=U((()=>t(e)),[e,...o]);return N((()=>()=>s.destroy()),[s]),s},$=(e,t,o,s=[],r)=>{const[,d]=Y(),n=K((()=>t?.["get"+e]?.(...s)??o),[t,...s]),I=X();return U((()=>I.current=n()),[n]),_(e,t,((...e)=>{I.current=y(r)?n():e[r],d([])}),[],s),I.current},_=(e,t,o,s=[],r=[],...n)=>{const I=[t,...r,...s,...n],i=U((()=>t?.["add"+e+d]?.(...r,o,...n)),I);N((()=>()=>t?.delListener(i)),I)},ee=(e,t,o,s=[],r=v,d=[],...n)=>{const I=F(e);return K((e=>h(I,(s=>h(o(e,s),(e=>r(s["set"+t](...n,e),e)))))),[I,t,...s,...d,...n])},te=(e,t,o=v,s=[],...r)=>{const d=F(e);return K((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},oe=(e,t,o)=>{const s=G(e);return K((()=>s?.[t](o)),[s,t,o])},se=(e,t=[])=>U(e,t),re=()=>T(1),de=e=>$(u,F(e),{}),ne=e=>$(l,F(e),[],[]),Ie=(e,t)=>$(i,F(t),{},[e]),ie=(e,t)=>$(i+C,F(t),[],[e]),ue=(e,t)=>$(a,F(t),[],[e]),le=(e,t)=>$(p,F(t),[],[e]),ce=(e,t,o,s=0,r,d)=>$(g,F(d),[],[e,t,o,s,r],6),ae=(e,t,o)=>$(c,F(o),{},[e,t]),pe=(e,t,o)=>$(C,F(o),[],[e,t]),ge=(e,t,o,s)=>$(b,F(s),void 0,[e,t,o],4),be=e=>$(k,F(e),{}),Ce=e=>$(w,F(e),[],[]),me=(e,t)=>$(m,F(t),void 0,[e]),ke=(e,t,o,s,r)=>ee(o,u,e,t,s,r),we=(e,t,o,s,r,d)=>ee(s,i,t,o,r,d,e),ye=(e,t,o,s,r,d,n)=>ee(r,c,o,s,d,n,e,t),he=(e,t,o=[],s,r=v,d=[],n=!0)=>{const I=F(s);return K((o=>h(I,(s=>h(t(o,s),(t=>r(s.addRow(e,t,n),s,t)))))),[I,e,...o,...d,n])},Re=(e,t,o,s,r,d,n)=>ee(r,"PartialRow",o,s,d,n,e,t),ve=(e,t,o,s,r,d,n,I)=>ee(d,b,s,r,n,I,e,t,o),qe=(e,t,o,s,r)=>ee(o,k,e,t,s,r),Pe=(e,t,o,s,r)=>ee(o,"PartialValues",e,t,s,r),fe=(e,t,o,s,r,d)=>ee(s,m,t,o,r,d,e),xe=(e,t,o)=>te(e,u,t,o),Se=(e,t,o,s)=>te(t,i,o,s,e),Le=(e,t,o,s,r)=>te(o,c,s,r,e,t),Be=(e,t,o,s,r,d,n)=>te(r,b,d,n,e,t,o,s),Te=(e,t,o)=>te(e,k,t,o),Me=(e,t,o,s)=>te(t,m,o,s,e),Fe=(e,t,o,s)=>_(u,F(s),e,t,[],o),Ee=(e,t,o,s)=>_(l,F(s),e,t,[],o),Ve=(e,t,o,s,r)=>_(i,F(r),t,o,[e],s),Ae=(e,t,o,s,r)=>_(i+C,F(r),t,o,[e],s),je=(e,t,o,s,r)=>_(a,F(r),t,o,[e],s),De=(e,t,o,s,r)=>_(p,F(r),t,o,[e],s),Oe=(e,t,o,s,r,d,n,I,i)=>_(g,F(i),d,n,[e,t,o,s,r],I),Qe=(e,t,o,s,r,d)=>_(c,F(d),o,s,[e,t],r),We=(e,t,o,s,r,d)=>_(C,F(d),o,s,[e,t],r),ze=(e,t,o,s,r,d,n)=>_(b,F(n),s,r,[e,t,o],d),Ge=(e,t,o,s)=>_(k,F(s),e,t,[],o),He=(e,t,o,s)=>_(w,F(s),e,t,[],o),Je=(e,t,o,s,r)=>_(m,F(r),t,o,[e],s),Ke=(e,t,o)=>_("Start"+J,F(o),e,t),Ne=(e,t,o)=>_("WillFinish"+J,F(o),e,t),Ue=(e,t,o)=>_("DidFinish"+J,F(o),e,t),Xe=(e,t,o)=>Z(e,t,o),Ye=()=>T(3),Ze=e=>$("MetricIds",V(e),[]),$e=(e,t)=>$("Metric",V(t),void 0,[e]),_e=(e,t,o,s)=>_("Metric",V(s),t,o,[e]),et=(e,t,o)=>Z(e,t,o),tt=()=>T(5),ot=(e,t)=>$("SliceIds",j(t),[],[e]),st=e=>$("IndexIds",j(e),[]),rt=(e,t,o)=>$("Slice"+p,j(o),[],[e,t]),dt=(e,t,o,s)=>_("SliceIds",j(s),t,o,[e]),nt=(e,t,o,s,r)=>_("Slice"+p,j(r),o,s,[e,t]),It=(e,t,o)=>Z(e,t,o),it=()=>T(7),ut=e=>$("RelationshipIds",O(e),[]),lt=(e,t,o)=>$("RemoteRowId",O(o),void 0,[e,t]),ct=(e,t,o)=>$("Local"+p,O(o),[],[e,t]),at=(e,t,o)=>$("Linked"+p,O(o),[],[e,t]),pt=(e,t,o,s,r)=>_("RemoteRowId",O(r),o,s,[e,t]),gt=(e,t,o,s,r)=>_("Local"+p,O(r),o,s,[e,t]),bt=(e,t,o,s,r)=>_("Linked"+p,O(r),o,s,[e,t]),Ct=(e,t,o)=>Z(e,t,o),mt=()=>T(9),kt=e=>$("QueryIds",W(e),[]),wt=(e,t)=>$(n+i,W(t),{},[e]),yt=(e,t)=>$(n+i+C,W(t),[],[e]),ht=(e,t)=>$(n+a,W(t),[],[e]),Rt=(e,t)=>$(n+p,W(t),[],[e]),vt=(e,t,o,s=0,r,d)=>$(n+g,W(d),[],[e,t,o,s,r],6),qt=(e,t,o)=>$(n+c,W(o),{},[e,t]),Pt=(e,t,o)=>$(n+C,W(o),[],[e,t]),ft=(e,t,o,s)=>$(n+b,W(s),void 0,[e,t,o]),xt=(e,t,o,s)=>_(n+i,W(s),t,o,[e]),St=(e,t,o,s)=>_(n+i+C,W(s),t,o,[e]),Lt=(e,t,o,s)=>_(n+a,W(s),t,o,[e]),Bt=(e,t,o,s)=>_(n+p,W(s),t,o,[e]),Tt=(e,t,o,s,r,d,I,i)=>_(n+g,W(i),d,I,[e,t,o,s,r]),Mt=(e,t,o,s,r)=>_(n+c,W(r),o,s,[e,t]),Ft=(e,t,o,s,r)=>_(n+C,W(r),o,s,[e,t]),Et=(e,t,o,s,r,d)=>_(n+b,W(d),s,r,[e,t,o]),Vt=(e,t,o)=>Z(e,t,o),At=()=>T(11),jt=e=>$("CheckpointIds",G(e),[[],void 0,[]]),Dt=(e,t)=>$("Checkpoint",G(t),void 0,[e]),Ot=(e=v,t=[],o,s=v,r=[])=>{const d=G(o);return K((t=>h(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},Qt=e=>oe(e,"goBackward"),Wt=e=>oe(e,"goForward"),zt=(e,t=[],o,s=v,r=[])=>{const d=G(o);return K((t=>h(d,(o=>h(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},Gt=e=>{const t=G(e),[o,r]=jt(t);return[(d=o,!(0==d.length)),Qt(t),r,h(r,(e=>t?.getCheckpoint(e)))??s];var d},Ht=e=>{const t=G(e),[,,[o]]=jt(t);return[!y(o),Wt(t),o,h(o,(e=>t?.getCheckpoint(e)))??s]},Jt=(e,t,o)=>_("CheckpointIds",G(o),e,t),Kt=(e,t,o,s)=>_("Checkpoint",G(s),t,o,[e]),Nt=(e,t,o=[],s,r=[],d,n=[])=>{const[,I]=Y(),i=U((()=>t(e)),[e,...o]);return N((()=>((async()=>{s&&(await s(i),I([]))})(),()=>{i?.destroy(),d?.(i)})),[i,...r,...n]),i},{PureComponent:Ut,Fragment:Xt,createElement:Yt,useCallback:Zt,useLayoutEffect:$t,useRef:_t,useState:eo}=e,to=(e,...t)=>y(e)?{}:e(...t),oo=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useMemo:so}=e,ro=({tableId:e,store:t,rowComponent:o=ao,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},I)=>lo(q(I,(d=>Yt(o,{...to(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),no=({queryId:e,queries:t,resultRowComponent:o=Po,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>lo(q(n,(r=>Yt(o,{...to(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),Io=({relationshipId:e,relationships:t,rowComponent:o=ao,getRowComponentProps:s,separator:r,debugIds:d},n,I)=>{const[i,u,l]=oo(O(t),e),c=n(e,I,i);return lo(q(c,(e=>Yt(o,{...to(s,e),key:e,tableId:l,rowId:e,store:u,debugIds:d}))),r,d,I)},io=e=>({checkpoints:t,checkpointComponent:o=So,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=G(t);return lo(q(e(jt(n)),(e=>Yt(o,{...to(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},uo=({store:e,storesById:o,metrics:s,metricsById:r,indexes:d,indexesById:n,relationships:I,relationshipsById:i,queries:u,queriesById:l,checkpoints:c,checkpointsById:a,children:p})=>{const g=t(S);return Yt(S.Provider,{value:so((()=>[e??g[0],{...g[1],...o},s??g[2],{...g[3],...r},d??g[4],{...g[5],...n},I??g[6],{...g[7],...i},u??g[8],{...g[9],...l},c??g[10],{...g[11],...a}]),[e,o,s,r,d,n,I,i,u,l,c,a,g])},p)},lo=(e,t,o,s)=>{const r=y(t)||!Array.isArray(e)?e:q(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},co=({tableId:e,rowId:t,cellId:o,store:r,debugIds:d})=>lo(s+(ge(e,t,o,r)??s),void 0,d,o),ao=({tableId:e,rowId:t,store:o,cellComponent:s=co,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:I})=>lo(q(((e,t,o,s)=>{const r=pe(t,o,s);return e??r})(d,e,t,o),(d=>Yt(s,{...to(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:I}))),n,I,t),po=e=>ro(e,le(e.tableId,e.store)),go=({cellId:e,descending:t,offset:o,limit:s,...r})=>ro(r,ce(r.tableId,e,t,o,s,r.store)),bo=({store:e,tableComponent:t=po,getTableComponentProps:o,separator:s,debugIds:r})=>lo(q(ne(e),(s=>Yt(t,{...to(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),Co=({valueId:e,store:t,debugIds:o})=>lo(s+(me(e,t)??s),void 0,o,e),mo=({store:e,valueComponent:t=Co,getValueComponentProps:o,separator:s,debugIds:r})=>lo(q(Ce(e),(s=>Yt(t,{...to(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),ko=({metricId:e,metrics:t,debugIds:o})=>lo($e(e,t)??s,void 0,o,e),wo=({indexId:e,sliceId:t,indexes:o,rowComponent:s=ao,getRowComponentProps:r,separator:d,debugIds:n})=>{const[I,i,u]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(j(o),e),l=rt(e,t,I);return lo(q(l,(e=>Yt(s,{...to(r,e),key:e,tableId:u,rowId:e,store:i,debugIds:n}))),d,n,t)},yo=({indexId:e,indexes:t,sliceComponent:o=wo,getSliceComponentProps:s,separator:r,debugIds:d})=>lo(q(ot(e,t),(r=>Yt(o,{...to(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),ho=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=ao,getRowComponentProps:r,debugIds:d})=>{const[n,I,,i]=oo(O(o),e),u=lt(e,t,n);return lo(y(i)||y(u)?null:Yt(s,{...to(r,u),key:u,tableId:i,rowId:u,store:I,debugIds:d}),void 0,d,t)},Ro=e=>Io(e,ct,e.remoteRowId),vo=e=>Io(e,at,e.firstRowId),qo=({queryId:e,rowId:t,cellId:o,queries:r,debugIds:d})=>lo(s+(ft(e,t,o,r)??s),void 0,d,o),Po=({queryId:e,rowId:t,queries:o,resultCellComponent:s=qo,getResultCellComponentProps:r,separator:d,debugIds:n})=>lo(q(Pt(e,t,o),(d=>Yt(s,{...to(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),fo=e=>no(e,Rt(e.queryId,e.queries)),xo=({cellId:e,descending:t,offset:o,limit:s,...r})=>no(r,vt(r.queryId,e,t,o,s,r.queries)),So=({checkpoints:e,checkpointId:t,debugIds:o})=>lo(Dt(t,e)??s,void 0,o,t),Lo=io((e=>e[0])),Bo=io((e=>y(e[1])?[]:[e[1]])),To=io((e=>e[2]));export{Lo as BackwardCheckpointsView,co as CellView,So as CheckpointView,Bo as CurrentCheckpointView,To as ForwardCheckpointsView,yo as IndexView,vo as LinkedRowsView,Ro as LocalRowsView,ko as MetricView,uo as Provider,ho as RemoteRowView,qo as ResultCellView,Po as ResultRowView,xo as ResultSortedTableView,fo as ResultTableView,ao as RowView,wo as SliceView,go as SortedTableView,po as TableView,bo as TablesView,Co as ValueView,mo as ValuesView,he as useAddRowCallback,ge as useCell,pe as useCellIds,We as useCellIdsListener,ze as useCellListener,Dt as useCheckpoint,jt as useCheckpointIds,Jt as useCheckpointIdsListener,Kt as useCheckpointListener,z as useCheckpoints,At as useCheckpointsIds,G as useCheckpointsOrCheckpointsById,Vt as useCreateCheckpoints,et as useCreateIndexes,Xe as useCreateMetrics,Nt as useCreatePersister,Ct as useCreateQueries,It as useCreateRelationships,se as useCreateStore,Be as useDelCellCallback,Le as useDelRowCallback,Se as useDelTableCallback,xe as useDelTablesCallback,Me as useDelValueCallback,Te as useDelValuesCallback,Ue as useDidFinishTransactionListener,Qt as useGoBackwardCallback,Wt as useGoForwardCallback,zt as useGoToCallback,st as useIndexIds,A as useIndexes,tt as useIndexesIds,j as useIndexesOrIndexesById,at as useLinkedRowIds,bt as useLinkedRowIdsListener,ct as useLocalRowIds,gt as useLocalRowIdsListener,$e as useMetric,Ze as useMetricIds,_e as useMetricListener,E as useMetrics,Ye as useMetricsIds,V as useMetricsOrMetricsById,Q as useQueries,mt as useQueriesIds,W as useQueriesOrQueriesById,kt as useQueryIds,Ht as useRedoInformation,ut as useRelationshipIds,D as useRelationships,it as useRelationshipsIds,O as useRelationshipsOrRelationshipsById,lt as useRemoteRowId,pt as useRemoteRowIdListener,ft as useResultCell,Pt as useResultCellIds,Ft as useResultCellIdsListener,Et as useResultCellListener,qt as useResultRow,ht as useResultRowCount,Lt as useResultRowCountListener,Rt as useResultRowIds,Bt as useResultRowIdsListener,Mt as useResultRowListener,vt as useResultSortedRowIds,Tt as useResultSortedRowIdsListener,wt as useResultTable,yt as useResultTableCellIds,St as useResultTableCellIdsListener,xt as useResultTableListener,ae as useRow,ue as useRowCount,je as useRowCountListener,le as useRowIds,De as useRowIdsListener,Qe as useRowListener,ve as useSetCellCallback,Ot as useSetCheckpointCallback,Re as useSetPartialRowCallback,Pe as useSetPartialValuesCallback,ye as useSetRowCallback,we as useSetTableCallback,ke as useSetTablesCallback,fe as useSetValueCallback,qe as useSetValuesCallback,ot as useSliceIds,dt as useSliceIdsListener,rt as useSliceRowIds,nt as useSliceRowIdsListener,ce as useSortedRowIds,Oe as useSortedRowIdsListener,Ke as useStartTransactionListener,M as useStore,re as useStoreIds,F as useStoreOrStoreById,Ie as useTable,ie as useTableCellIds,Ae as useTableCellIdsListener,ne as useTableIds,Ee as useTableIdsListener,Ve as useTableListener,de as useTables,Fe as useTablesListener,Gt as useUndoInformation,me as useValue,Ce as useValueIds,He as useValueIdsListener,Je as useValueListener,be as useValues,Ge as useValuesListener,Ne as useWillFinishTransactionListener};
1
+ import e,{useContext as t}from"react";const o=e=>typeof e,s="",r=o(s),d="Listener",n="Result",u="Has",I="has",i="Ids",c="Table",l=c+"s",a=c+i,p="Row",g=p+"Count",b=p+i,C="Sorted"+p+i,m="Cell",y=m+i,k="Value",w=k+"s",h=k+i,R=e=>null==e,v=(e,t,o)=>R(e)?o?.():t(e),q=e=>o(e)==r,f=()=>{},P=(e,t)=>e.map(t),x=Object.keys,{createContext:S,useContext:L}=e,B=S([]),T=(e,t)=>{const o=L(B);return R(e)?o[t]:q(e)?((e,t)=>v(e,(e=>e[t])))(o[t+1]??{},e):e},M=(e,t)=>{const o=T(e,t);return R(e)||q(e)?o:e},E=e=>x(L(B)[e]??{}),F=e=>T(e,0),V=e=>M(e,0),A=e=>T(e,2),j=e=>M(e,2),D=e=>T(e,4),H=e=>M(e,4),O=e=>T(e,6),Q=e=>M(e,6),W=e=>T(e,8),z=e=>M(e,8),G=e=>T(e,10),J=e=>M(e,10),K=e=>e.toLowerCase();K(d);const N="Transaction";K(N);const{useCallback:U,useEffect:X,useMemo:Y,useLayoutEffect:Z,useRef:$,useState:_}=e,ee=[],te={},oe=[[],void 0,[]],se=(e,t,o=ee)=>{const s=Y((()=>t(e)),[e,...o]);return X((()=>()=>s.destroy()),[s]),s},re=(e,t,o,s=ee,r,d="get",n="")=>{const[,u]=_(),I=U((()=>t?.[d+e]?.(...s)??o),[t,e,...s,o]),i=$();return Y((()=>i.current=I()),[I]),de(n+e,t,((...e)=>{i.current=R(r)?I():e[r],u([])}),[I,r],s),i.current},de=(e,t,o,s=ee,r=ee,...n)=>Z((()=>{const s=t?.["add"+e+d]?.(...r,o,...n);return()=>t?.delListener(s)}),[t,e,...r,...s,...n]),ne=(e,t,o,s=ee,r=f,d=ee,...n)=>{const u=V(e);return U((e=>v(u,(s=>v(o(e,s),(e=>r(s["set"+t](...n,e),e)))))),[u,t,...s,...d,...n])},ue=(e,t,o=f,s=ee,...r)=>{const d=V(e);return U((()=>o(d?.["del"+t](...r))),[d,t,...s,...r])},Ie=(e,t,o)=>{const s=J(e);return U((()=>s?.[t](o)),[s,t,o])},ie=(e,t=ee)=>Y(e,t),ce=()=>E(1),le=e=>re(l,V(e),!1,[],1,I,u),ae=e=>re(l,V(e),te),pe=e=>re(a,V(e),ee),ge=(e,t)=>re(c,V(t),!1,[e],2,I,u),be=(e,t)=>re(c,V(t),te,[e]),Ce=(e,t)=>re(c+y,V(t),ee,[e]),me=(e,t,o)=>re(c+m,V(o),!1,[e,t],3,I,u),ye=(e,t)=>re(g,V(t),0,[e]),ke=(e,t)=>re(b,V(t),ee,[e]),we=(e,t,o,s=0,r,d)=>re(C,V(d),ee,[e,t,o,s,r],6),he=(e,t,o)=>re(p,V(o),!1,[e,t],3,I,u),Re=(e,t,o)=>re(p,V(o),te,[e,t]),ve=(e,t,o)=>re(y,V(o),ee,[e,t]),qe=(e,t,o,s)=>re(m,V(s),!1,[e,t,o],4,I,u),fe=(e,t,o,s)=>re(m,V(s),void 0,[e,t,o],4),Pe=e=>re(w,V(e),!1,[],1,I,u),xe=e=>re(w,V(e),te),Se=e=>re(h,V(e),ee),Le=(e,t)=>re(k,V(t),!1,[e],2,I,u),Be=(e,t)=>re(k,V(t),void 0,[e]),Te=(e,t,o,s,r)=>ne(o,l,e,t,s,r),Me=(e,t,o,s,r,d)=>ne(s,c,t,o,r,d,e),Ee=(e,t,o,s,r,d,n)=>ne(r,p,o,s,d,n,e,t),Fe=(e,t,o=ee,s,r=f,d=ee,n=!0)=>{const u=V(s);return U((o=>v(u,(s=>v(t(o,s),(t=>r(s.addRow(e,t,n),s,t)))))),[u,e,...o,...d,n])},Ve=(e,t,o,s,r,d,n)=>ne(r,"PartialRow",o,s,d,n,e,t),Ae=(e,t,o,s,r,d,n,u)=>ne(d,m,s,r,n,u,e,t,o),je=(e,t,o,s,r)=>ne(o,w,e,t,s,r),De=(e,t,o,s,r)=>ne(o,"PartialValues",e,t,s,r),He=(e,t,o,s,r,d)=>ne(s,k,t,o,r,d,e),Oe=(e,t,o)=>ue(e,l,t,o),Qe=(e,t,o,s)=>ue(t,c,o,s,e),We=(e,t,o,s,r)=>ue(o,p,s,r,e,t),ze=(e,t,o,s,r,d,n)=>ue(r,m,d,n,e,t,o,s),Ge=(e,t,o)=>ue(e,w,t,o),Je=(e,t,o,s)=>ue(t,k,o,s,e),Ke=(e,t,o,s)=>de(u+l,V(s),e,t,[],o),Ne=(e,t,o,s)=>de(l,V(s),e,t,ee,o),Ue=(e,t,o,s)=>de(a,V(s),e,t,ee,o),Xe=(e,t,o,s,r)=>de(u+c,V(r),t,o,[e],s),Ye=(e,t,o,s,r)=>de(c,V(r),t,o,[e],s),Ze=(e,t,o,s,r)=>de(c+y,V(r),t,o,[e],s),$e=(e,t,o,s,r,d)=>de(u+c+m,V(d),o,s,[e,t],r),_e=(e,t,o,s,r)=>de(g,V(r),t,o,[e],s),et=(e,t,o,s,r)=>de(b,V(r),t,o,[e],s),tt=(e,t,o,s,r,d,n,u,I)=>de(C,V(I),d,n,[e,t,o,s,r],u),ot=(e,t,o,s,r,d)=>de(u+p,V(d),o,s,[e,t],r),st=(e,t,o,s,r,d)=>de(p,V(d),o,s,[e,t],r),rt=(e,t,o,s,r,d)=>de(y,V(d),o,s,[e,t],r),dt=(e,t,o,s,r,d,n)=>de(u+m,V(n),s,r,[e,t,o],d),nt=(e,t,o,s,r,d,n)=>de(m,V(n),s,r,[e,t,o],d),ut=(e,t,o,s)=>de(u+w,V(s),e,t,[],o),It=(e,t,o,s)=>de(w,V(s),e,t,ee,o),it=(e,t,o,s)=>de(h,V(s),e,t,ee,o),ct=(e,t,o,s,r)=>de(u+k,V(r),t,o,[e],s),lt=(e,t,o,s,r)=>de(k,V(r),t,o,[e],s),at=(e,t,o)=>de("Start"+N,V(o),e,t),pt=(e,t,o)=>de("WillFinish"+N,V(o),e,t),gt=(e,t,o)=>de("DidFinish"+N,V(o),e,t),bt=(e,t,o)=>se(e,t,o),Ct=()=>E(3),mt=e=>re("MetricIds",j(e),ee),yt=(e,t)=>re("Metric",j(t),void 0,[e]),kt=(e,t,o,s)=>de("Metric",j(s),t,o,[e]),wt=(e,t,o)=>se(e,t,o),ht=()=>E(5),Rt=(e,t)=>re("SliceIds",H(t),ee,[e]),vt=e=>re("IndexIds",H(e),ee),qt=(e,t,o)=>re("Slice"+b,H(o),ee,[e,t]),ft=(e,t,o,s)=>de("SliceIds",H(s),t,o,[e]),Pt=(e,t,o,s,r)=>de("Slice"+b,H(r),o,s,[e,t]),xt=(e,t,o)=>se(e,t,o),St=()=>E(7),Lt=e=>re("RelationshipIds",Q(e),ee),Bt=(e,t,o)=>re("RemoteRowId",Q(o),void 0,[e,t]),Tt=(e,t,o)=>re("Local"+b,Q(o),ee,[e,t]),Mt=(e,t,o)=>re("Linked"+b,Q(o),ee,[e,t]),Et=(e,t,o,s,r)=>de("RemoteRowId",Q(r),o,s,[e,t]),Ft=(e,t,o,s,r)=>de("Local"+b,Q(r),o,s,[e,t]),Vt=(e,t,o,s,r)=>de("Linked"+b,Q(r),o,s,[e,t]),At=(e,t,o)=>se(e,t,o),jt=()=>E(9),Dt=e=>re("QueryIds",z(e),ee),Ht=(e,t)=>re(n+c,z(t),te,[e]),Ot=(e,t)=>re(n+c+y,z(t),ee,[e]),Qt=(e,t)=>re(n+g,z(t),0,[e]),Wt=(e,t)=>re(n+b,z(t),ee,[e]),zt=(e,t,o,s=0,r,d)=>re(n+C,z(d),ee,[e,t,o,s,r],6),Gt=(e,t,o)=>re(n+p,z(o),te,[e,t]),Jt=(e,t,o)=>re(n+y,z(o),ee,[e,t]),Kt=(e,t,o,s)=>re(n+m,z(s),void 0,[e,t,o]),Nt=(e,t,o,s)=>de(n+c,z(s),t,o,[e]),Ut=(e,t,o,s)=>de(n+c+y,z(s),t,o,[e]),Xt=(e,t,o,s)=>de(n+g,z(s),t,o,[e]),Yt=(e,t,o,s)=>de(n+b,z(s),t,o,[e]),Zt=(e,t,o,s,r,d,u,I)=>de(n+C,z(I),d,u,[e,t,o,s,r]),$t=(e,t,o,s,r)=>de(n+p,z(r),o,s,[e,t]),_t=(e,t,o,s,r)=>de(n+y,z(r),o,s,[e,t]),eo=(e,t,o,s,r,d)=>de(n+m,z(d),s,r,[e,t,o]),to=(e,t,o)=>se(e,t,o),oo=()=>E(11),so=e=>re("CheckpointIds",J(e),oe),ro=(e,t)=>re("Checkpoint",J(t),void 0,[e]),no=(e=f,t=ee,o,s=f,r=ee)=>{const d=J(o);return U((t=>v(d,(o=>{const r=e(t);s(o.addCheckpoint(r),o,r)}))),[d,...t,...r])},uo=e=>Ie(e,"goBackward"),Io=e=>Ie(e,"goForward"),io=(e,t=ee,o,s=f,r=ee)=>{const d=J(o);return U((t=>v(d,(o=>v(e(t),(e=>s(o.goTo(e),e)))))),[d,...t,...r])},co=e=>{const t=J(e),[o,r]=so(t);return[(d=o,!(0==d.length)),uo(t),r,v(r,(e=>t?.getCheckpoint(e)))??s];var d},lo=e=>{const t=J(e),[,,[o]]=so(t);return[!R(o),Io(t),o,v(o,(e=>t?.getCheckpoint(e)))??s]},ao=(e,t,o)=>de("CheckpointIds",J(o),e,t),po=(e,t,o,s)=>de("Checkpoint",J(s),t,o,[e]),go=(e,t,o=ee,s,r=ee,d,n=ee)=>{const[,u]=_(),I=Y((()=>t(e)),[e,...o]);return X((()=>((async()=>{s&&(await s(I),u([]))})(),()=>{I?.destroy(),d?.(I)})),[I,...r,...n]),I},{PureComponent:bo,Fragment:Co,createElement:mo,useCallback:yo,useLayoutEffect:ko,useRef:wo,useState:ho}=e,Ro=(e,...t)=>R(e)?{}:e(...t),vo=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],{useMemo:qo}=e,fo=({tableId:e,store:t,rowComponent:o=Mo,getRowComponentProps:s,customCellIds:r,separator:d,debugIds:n},u)=>Bo(P(u,(d=>mo(o,{...Ro(s,d),key:d,tableId:e,rowId:d,customCellIds:r,store:t,debugIds:n}))),d,n,e),Po=({queryId:e,queries:t,resultRowComponent:o=Jo,getResultRowComponentProps:s,separator:r,debugIds:d},n)=>Bo(P(n,(r=>mo(o,{...Ro(s,r),key:r,queryId:e,rowId:r,queries:t,debugIds:d}))),r,d,e),xo=({relationshipId:e,relationships:t,rowComponent:o=Mo,getRowComponentProps:s,separator:r,debugIds:d},n,u)=>{const[I,i,c]=vo(Q(t),e),l=n(e,u,I);return Bo(P(l,(e=>mo(o,{...Ro(s,e),key:e,tableId:c,rowId:e,store:i,debugIds:d}))),r,d,u)},So=e=>({checkpoints:t,checkpointComponent:o=Uo,getCheckpointComponentProps:s,separator:r,debugIds:d})=>{const n=J(t);return Bo(P(e(so(n)),(e=>mo(o,{...Ro(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:d}))),r)},Lo=({store:e,storesById:o,metrics:s,metricsById:r,indexes:d,indexesById:n,relationships:u,relationshipsById:I,queries:i,queriesById:c,checkpoints:l,checkpointsById:a,children:p})=>{const g=t(B);return mo(B.Provider,{value:qo((()=>[e??g[0],{...g[1],...o},s??g[2],{...g[3],...r},d??g[4],{...g[5],...n},u??g[6],{...g[7],...I},i??g[8],{...g[9],...c},l??g[10],{...g[11],...a}]),[e,o,s,r,d,n,u,I,i,c,l,a,g])},p)},Bo=(e,t,o,s)=>{const r=R(t)||!Array.isArray(e)?e:P(e,((e,o)=>o>0?[t,e]:e));return o?[s,":{",r,"}"]:r},To=({tableId:e,rowId:t,cellId:o,store:r,debugIds:d})=>Bo(s+(fe(e,t,o,r)??s),void 0,d,o),Mo=({tableId:e,rowId:t,store:o,cellComponent:s=To,getCellComponentProps:r,customCellIds:d,separator:n,debugIds:u})=>Bo(P(((e,t,o,s)=>{const r=ve(t,o,s);return e??r})(d,e,t,o),(d=>mo(s,{...Ro(r,d),key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:u}))),n,u,t),Eo=e=>fo(e,ke(e.tableId,e.store)),Fo=({cellId:e,descending:t,offset:o,limit:s,...r})=>fo(r,we(r.tableId,e,t,o,s,r.store)),Vo=({store:e,tableComponent:t=Eo,getTableComponentProps:o,separator:s,debugIds:r})=>Bo(P(pe(e),(s=>mo(t,{...Ro(o,s),key:s,tableId:s,store:e,debugIds:r}))),s),Ao=({valueId:e,store:t,debugIds:o})=>Bo(s+(Be(e,t)??s),void 0,o,e),jo=({store:e,valueComponent:t=Ao,getValueComponentProps:o,separator:s,debugIds:r})=>Bo(P(Se(e),(s=>mo(t,{...Ro(o,s),key:s,valueId:s,store:e,debugIds:r}))),s),Do=({metricId:e,metrics:t,debugIds:o})=>Bo(yt(e,t)??s,void 0,o,e),Ho=({indexId:e,sliceId:t,indexes:o,rowComponent:s=Mo,getRowComponentProps:r,separator:d,debugIds:n})=>{const[u,I,i]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(H(o),e),c=qt(e,t,u);return Bo(P(c,(e=>mo(s,{...Ro(r,e),key:e,tableId:i,rowId:e,store:I,debugIds:n}))),d,n,t)},Oo=({indexId:e,indexes:t,sliceComponent:o=Ho,getSliceComponentProps:s,separator:r,debugIds:d})=>Bo(P(Rt(e,t),(r=>mo(o,{...Ro(s,r),key:r,indexId:e,sliceId:r,indexes:t,debugIds:d}))),r,d,e),Qo=({relationshipId:e,localRowId:t,relationships:o,rowComponent:s=Mo,getRowComponentProps:r,debugIds:d})=>{const[n,u,,I]=vo(Q(o),e),i=Bt(e,t,n);return Bo(R(I)||R(i)?null:mo(s,{...Ro(r,i),key:i,tableId:I,rowId:i,store:u,debugIds:d}),void 0,d,t)},Wo=e=>xo(e,Tt,e.remoteRowId),zo=e=>xo(e,Mt,e.firstRowId),Go=({queryId:e,rowId:t,cellId:o,queries:r,debugIds:d})=>Bo(s+(Kt(e,t,o,r)??s),void 0,d,o),Jo=({queryId:e,rowId:t,queries:o,resultCellComponent:s=Go,getResultCellComponentProps:r,separator:d,debugIds:n})=>Bo(P(Jt(e,t,o),(d=>mo(s,{...Ro(r,d),key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:n}))),d,n,t),Ko=e=>Po(e,Wt(e.queryId,e.queries)),No=({cellId:e,descending:t,offset:o,limit:s,...r})=>Po(r,zt(r.queryId,e,t,o,s,r.queries)),Uo=({checkpoints:e,checkpointId:t,debugIds:o})=>Bo(ro(t,e)??s,void 0,o,t),Xo=So((e=>e[0])),Yo=So((e=>R(e[1])?[]:[e[1]])),Zo=So((e=>e[2]));export{Xo as BackwardCheckpointsView,To as CellView,Uo as CheckpointView,Yo as CurrentCheckpointView,Zo as ForwardCheckpointsView,Oo as IndexView,zo as LinkedRowsView,Wo as LocalRowsView,Do as MetricView,Lo as Provider,Qo as RemoteRowView,Go as ResultCellView,Jo as ResultRowView,No as ResultSortedTableView,Ko as ResultTableView,Mo as RowView,Ho as SliceView,Fo as SortedTableView,Eo as TableView,Vo as TablesView,Ao as ValueView,jo as ValuesView,Fe as useAddRowCallback,fe as useCell,ve as useCellIds,rt as useCellIdsListener,nt as useCellListener,ro as useCheckpoint,so as useCheckpointIds,ao as useCheckpointIdsListener,po as useCheckpointListener,G as useCheckpoints,oo as useCheckpointsIds,J as useCheckpointsOrCheckpointsById,to as useCreateCheckpoints,wt as useCreateIndexes,bt as useCreateMetrics,go as useCreatePersister,At as useCreateQueries,xt as useCreateRelationships,ie as useCreateStore,ze as useDelCellCallback,We as useDelRowCallback,Qe as useDelTableCallback,Oe as useDelTablesCallback,Je as useDelValueCallback,Ge as useDelValuesCallback,gt as useDidFinishTransactionListener,uo as useGoBackwardCallback,Io as useGoForwardCallback,io as useGoToCallback,qe as useHasCell,dt as useHasCellListener,he as useHasRow,ot as useHasRowListener,ge as useHasTable,me as useHasTableCell,$e as useHasTableCellListener,Xe as useHasTableListener,le as useHasTables,Ke as useHasTablesListener,Le as useHasValue,ct as useHasValueListener,Pe as useHasValues,ut as useHasValuesListener,vt as useIndexIds,D as useIndexes,ht as useIndexesIds,H as useIndexesOrIndexesById,Mt as useLinkedRowIds,Vt as useLinkedRowIdsListener,Tt as useLocalRowIds,Ft as useLocalRowIdsListener,yt as useMetric,mt as useMetricIds,kt as useMetricListener,A as useMetrics,Ct as useMetricsIds,j as useMetricsOrMetricsById,W as useQueries,jt as useQueriesIds,z as useQueriesOrQueriesById,Dt as useQueryIds,lo as useRedoInformation,Lt as useRelationshipIds,O as useRelationships,St as useRelationshipsIds,Q as useRelationshipsOrRelationshipsById,Bt as useRemoteRowId,Et as useRemoteRowIdListener,Kt as useResultCell,Jt as useResultCellIds,_t as useResultCellIdsListener,eo as useResultCellListener,Gt as useResultRow,Qt as useResultRowCount,Xt as useResultRowCountListener,Wt as useResultRowIds,Yt as useResultRowIdsListener,$t as useResultRowListener,zt as useResultSortedRowIds,Zt as useResultSortedRowIdsListener,Ht as useResultTable,Ot as useResultTableCellIds,Ut as useResultTableCellIdsListener,Nt as useResultTableListener,Re as useRow,ye as useRowCount,_e as useRowCountListener,ke as useRowIds,et as useRowIdsListener,st as useRowListener,Ae as useSetCellCallback,no as useSetCheckpointCallback,Ve as useSetPartialRowCallback,De as useSetPartialValuesCallback,Ee as useSetRowCallback,Me as useSetTableCallback,Te as useSetTablesCallback,He as useSetValueCallback,je as useSetValuesCallback,Rt as useSliceIds,ft as useSliceIdsListener,qt as useSliceRowIds,Pt as useSliceRowIdsListener,we as useSortedRowIds,tt as useSortedRowIdsListener,at as useStartTransactionListener,F as useStore,ce as useStoreIds,V as useStoreOrStoreById,be as useTable,Ce as useTableCellIds,Ze as useTableCellIdsListener,pe as useTableIds,Ue as useTableIdsListener,Ye as useTableListener,ae as useTables,Ne as useTablesListener,co as useUndoInformation,Be as useValue,Se as useValueIds,it as useValueIdsListener,lt as useValueListener,xe as useValues,It as useValuesListener,pt as useWillFinishTransactionListener};
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="",l=t(s),n=t(!0),a=t(0),o=t(t),r="type",c="default",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,C="Value",S=C+"s",v=C+i,y="Has",p=e=>s+e,m=isFinite,w=e=>null==e,I=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==l||e==n,J=e=>t(e)==o,L=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.keys,k=z.isFrozen,A=z.freeze,M=e=>!w(e)&&I(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),N=(e,t)=>!w(((e,t)=>I(e,(e=>e[t])))(e,t)),B=(e,t)=>(delete e[t],e),D=(e,t)=>O(z.entries(e),(([e,s])=>t(s,e))),H=e=>M(e)&&0==(e=>E(j(e)))(e),W=e=>e?.size??0,$=(e,t)=>e?.has(t)??!1,q=e=>w(e)||0==W(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>w(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>($(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,l=_)=>(D(t,((t,l)=>s(e,l,t))),Z(e,(s=>N(t,s)?0:l(e,s))),e),se=(e,t,s)=>{const l={};return K(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},le=(e,t,s)=>se(e,(e=>se(e,t,s)),H),ne=(e,t,s)=>se(e,(e=>le(e,t,s)),H),ae=(e,t)=>{const s=U();return K(e,((e,l)=>s.set(l,t?.(e)??e))),s},oe=e=>ae(e,ae),re=e=>ae(e,oe),ce=(e,t,s,l,n=0)=>I((s?ee:Y)(e,t[n],n>E(t)-2?s:U),(a=>{if(n>E(t)-2)return l?.(a)&&_(e,t[n]),a;const o=ce(a,t,s,l,n+1);return q(a)&&_(e,t[n]),o})),ie=e=>new Set(Array.isArray(e)||w(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let t=0;return[l=>(l?e.shift():null)??s+t++,t=>{ue.test(t)&&E(e)<1e3&&x(e,t)}]},fe=e=>[e,e],ge=()=>[U(),U()],Te=e=>[...e],be=([e,t])=>e===t,Ve=e=>{const s=t(e);return R(s)||s==a&&m(e)?s:void 0},Ce=(e,t,s,l,n)=>w(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Se=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ye=JSON.parse,pe=(e,t,s)=>w(e)||!M(e)||H(e)||k(e)?(s?.(),!1):(D(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),we=()=>{let e,t,l=!1,n=!1,o=!1,i=!1,m=0;const z=U(),P=U(),j=U(),k=U(),M=U(),ue=U(),Ie=U(),Re=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),xe=U(),ze=ie(),Pe=U(),je=U(),ke=U(),Ae=U(),Me=ge(),Ne=ge(),Be=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),lt=ge(),nt=ge(),at=ge(),ot=U(),rt=ge(),[ct,it,dt,ut]=(e=>{let t;const[l,n]=he(),a=U();return[(e,n,o,r=[],c=(()=>[]))=>{t??=zs;const i=l(1);return _(a,i,[e,n,o,r,c]),de(ce(n,o??[s],ie),i),i},(e,l,...n)=>F(((e,t=[s])=>{const l=[],n=(e,s)=>s==E(t)?x(l,e):null===t[s]?K(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(Y(e,t),s+1)));return n(e,0),l})(e,l),(e=>K(e,(e=>Y(a,e)[0](t,...l??[],...n))))),e=>I(Y(a,e),(([,t,l])=>(ce(t,l??[s],void 0,(t=>(Q(t,e),q(t)?1:0))),_(a,e),n(e),l))),e=>I(Y(a,e),(([e,,s=[],l,n])=>{const a=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...n(o)):w(s[r])?F(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,s[r])};a()}))]})(),ht=e=>{if(!pe(e,((e,t)=>[r,c].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=a||(Ve(e[c])!=t&&B(e,c),0))},ft=(t,s)=>(!e||$(Ee,s)||Wt(s))&&pe(t,((e,t)=>gt(s,t,e)),(()=>Wt(s))),gt=(e,t,s,l)=>pe(l?s:Ct(s,e,t),((l,n)=>I(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>Wt(e,t))),Tt=(t,s,l,n)=>e?I(Y(Y(Ee,t),l),(e=>Ve(n)!=e[r]?Wt(t,s,l,n,e[c]):n),(()=>Wt(t,s,l,n))):w(Ve(n))?Wt(t,s,l,n):n,bt=(e,t)=>pe(t?e:St(e),((t,s)=>I(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),Vt=(e,s)=>t?I(Y(Oe,e),(t=>Ve(s)!=t[r]?$t(e,s,t[c]):s),(()=>$t(e,s))):w(Ve(s))?$t(e,s):s,Ct=(e,t,s)=>(I(Y(Fe,t),(([l,n])=>{K(l,((t,s)=>{N(e,s)||(e[s]=t)})),K(n,(l=>{N(e,l)||Wt(t,s,l)}))})),e),St=e=>(t&&(K(xe,((t,s)=>{N(e,s)||(e[s]=t)})),K(ze,(t=>{N(e,t)||$t(t)}))),e),vt=e=>te(Ee,e,((e,t,s)=>{const l=U(),n=ie();te(ee(Ee,t,U),s,((e,t,s)=>{_(e,t,s),I(s[c],(e=>_(l,t,e)),(()=>de(n,t)))})),_(Fe,t,[l,n])}),((e,t)=>{_(Ee,t),_(Fe,t)})),yt=e=>te(Oe,e,((e,t,s)=>{_(Oe,t,s),I(s[c],(e=>_(xe,t,e)),(()=>de(ze,t)))}),((e,t)=>{_(Oe,t),_(xe,t),Q(ze,t)})),pt=e=>H(e)?ws():Ss(e),mt=e=>te(ke,e,((e,t,s)=>wt(t,s)),((e,t)=>zt(t))),wt=(e,t)=>te(ee(ke,e,(()=>(At(e,1),_(Pe,e,he()),_(je,e,U()),U()))),t,((t,s,l)=>It(e,t,s,l)),((t,s)=>Pt(e,t,s))),It=(e,t,s,l,n)=>te(ee(t,s,(()=>(Mt(e,s,1),U()))),l,((t,l,n)=>Rt(e,s,t,l,n)),((l,a)=>jt(e,t,s,l,a,n))),Rt=(e,t,s,l,n)=>{$(s,l)||Nt(e,t,l,1);const a=Y(s,l);n!==a&&(Bt(e,t,l,a,n),_(s,l,n))},Jt=(e,t,s,l,n)=>I(Y(t,s),(t=>Rt(e,s,t,l,n)),(()=>It(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>H(e)?Js():vs(e),Et=e=>te(Ae,e,((e,t,s)=>Ft(t,s)),((e,t)=>kt(t))),Ft=(e,t)=>{$(Ae,e)||Dt(e,1);const s=Y(Ae,e);t!==s&&(Ht(e,s,t),_(Ae,e,t))},Ot=(e,t)=>{const[s]=Y(Pe,e),l=s(t);return $(Y(ke,e),l)?Ot(e,t):l},xt=e=>Y(ke,e)??wt(e,{}),zt=e=>wt(e,{}),Pt=(e,t,s)=>{const[,l]=Y(Pe,e);l(s),It(e,t,s,{},!0)},jt=(e,t,s,l,n,a)=>{const o=Y(Y(Fe,e)?.[0],n);if(!w(o)&&!a)return Rt(e,s,l,n,o);const r=t=>{Bt(e,s,t,Y(l,t)),Nt(e,s,t,-1),_(l,t)};w(o)?r(n):Z(l,r),q(l)&&(Mt(e,s,-1),q(_(t,s))&&(At(e,-1),_(ke,e),_(Pe,e),_(je,e)))},kt=e=>{const t=Y(xe,e);if(!w(t))return Ft(e,t);Ht(e,Y(Ae,e)),Dt(e,-1),_(Ae,e)},At=(e,t)=>me(z,e,t),Mt=(e,t,s)=>me(ee(k,e,U),t,s)&&_(j,e,ee(j,e,(()=>0))+s),Nt=(e,t,s,l)=>{const n=Y(je,e),a=Y(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&me(ee(P,e,U),s,l),_(n,s,a!=-l?a+l:null),me(ee(ee(M,e,U),t,U),s,l)},Bt=(e,t,s,l,n)=>ee(ee(ee(ue,e,U),t,U),s,(()=>[l,0]))[1]=n,Dt=(e,t)=>me(Ie,e,t),Ht=(e,t,s)=>ee(Re,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,l,n)=>(x(ee(ee(ee(Je,e,U),t,U),s,(()=>[])),l),n),$t=(e,t,s)=>(x(ee(Le,e,(()=>[])),t),s),qt=(e,t,s)=>I(Y(Y(Y(ue,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(cs(e,t,s))])),Gt=e=>I(Y(Re,e),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(us(e))])),Kt=e=>q(Je)||q(_e[e])?0:K(e?re(Je):Je,((t,s)=>K(t,((t,l)=>K(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>q(Le)||q(et[e])?0:K(e?ae(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!q(e))return it(t,l,(()=>se(e))),Z(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=o&&it(Me[e],void 0,t);const s=q(Ke[e]),l=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q(We[e])&&q($e[e])&&q(qe[e])&&s&&q(Be[e])&&q(De[e]),n=q(Ze[e])&&q(Ue[e])&&q(He[e])&&q(Ne[e]);if(!l||!n){const t=e?[ae(z),oe(P),ae(j),oe(k),re(M),re(ue)]:[z,P,j,k,M,ue];if(!l){Ut(t[0],Be[e],De[e]),K(t[1],((t,s)=>Ut(t,We[e],$e[e],[s]))),K(t[2],((t,s)=>{0!=t&&it(qe[e],[s],ns(s))}));const l=ie();K(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),de(l,n))})),s||K(t[5],((t,s)=>{if(!$(l,s)){const l=ie();K(t,(e=>K(e,(([t,s],n)=>s!==t?de(l,n):Q(e,n))))),K(l,(t=>it(Ke[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;K(t[5],((t,l)=>{let n;K(t,((t,a)=>{let o;K(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,qt),s=n=o=1)})),o&&it(Ue[e],[l,a],qt)})),n&&it(He[e],[l],qt)})),s&&it(Ne[e],void 0,qt)}}},Yt=e=>{const t=Vs();t!=i&&it(tt[e],void 0,t);const s=q(lt[e])&&q(nt[e]),l=q(at[e])&&q(st[e]);if(!s||!l){const t=e?[ae(Ie),ae(Re)]:[Ie,Re];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;K(t[1],(([t,l],n)=>{l!==t&&(it(at[e],[n],l,t,Gt),s=1)})),s&&it(st[e],void 0,Gt)}}},Zt=(e,...t)=>(Fs((()=>e(...O(t,p)))),zs),_t=()=>[se(ue,((e,t)=>-1===Y(z,t)?null:se(e,((e,s)=>-1===Y(Y(k,t),s)?null:se(e,(([,e])=>e??null),((e,t)=>be(t)))),H)),H),se(Re,(([,e])=>e??null),((e,t)=>be(t)))],es=()=>({cellsTouched:l,valuesTouched:n,changedCells:ne(ue,Te,be),invalidCells:ne(Je),changedValues:se(Re,Te,be),invalidValues:se(Le),changedTableIds:se(z),changedRowIds:le(k),changedCellIds:ne(M),changedValueIds:se(Ie)}),ts=()=>ne(ke),ss=()=>X(ke),ls=e=>X(Y(je,p(e))),ns=e=>W(Y(ke,p(e))),as=e=>X(Y(ke,p(e))),os=(e,t,s,l=0,n)=>{return O(L((o=Y(ke,p(e)),r=(e,s)=>[w(t)?s:Y(e,p(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,w(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>X(Y(Y(ke,p(e)),p(t))),cs=(e,t,s)=>Y(Y(Y(ke,p(e)),p(t)),p(s)),is=()=>se(Ae),ds=()=>X(Ae),us=e=>Y(Ae,p(e)),hs=()=>!q(ke),fs=e=>$(ke,p(e)),gs=(e,t)=>$(Y(je,p(e)),p(t)),Ts=(e,t)=>$(Y(ke,p(e)),p(t)),bs=(e,t,s)=>$(Y(Y(ke,p(e)),p(t)),p(s)),Vs=()=>!q(Ae),Cs=e=>$(Ae,p(e)),Ss=e=>Zt((()=>(e=>pe(e,ft,Wt))(e)?mt(e):0)),vs=e=>Zt((()=>bt(e)?Et(e):0)),ys=e=>{try{pt(ye(e))}catch{}return zs},ps=t=>Zt((()=>{if((e=pe(t,(e=>pe(e,ht))))&&(vt(t),!q(ke))){const e=ts();ws(),Ss(e)}})),ms=e=>Zt((()=>{if(t=(e=>pe(e,ht))(e)){const s=is();Es(),Js(),t=!0,yt(e),vs(s)}})),ws=()=>Zt((()=>mt({}))),Is=e=>Zt((e=>$(ke,e)?zt(e):0),e),Rs=(e,t)=>Zt(((e,t)=>I(Y(ke,e),(s=>$(s,t)?Pt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{vt({}),e=!1})),Es=()=>Zt((()=>{yt({}),t=!1})),Fs=(e,t)=>{if(-1!=m){Os();const s=e();return xs(t),s}},Os=()=>(-1!=m&&m++,1==m&&it(ot,void 0,_t,es),zs),xs=e=>(m>0&&(m--,0==m&&(l=!q(ue),n=!q(Re),m=1,Kt(1),l&&Xt(1),Qt(1),n&&Yt(1),e?.(_t,es)&&(K(ue,((e,t)=>K(e,((e,s)=>K(e,(([e],l)=>Ce(zs,t,s,l,e))))))),K(Re,(([e],t)=>Se(zs,t,e))),l=n=!1),it(rt[0],void 0,_t,es),m=-1,Kt(0),l&&Xt(0),Qt(0),n&&Yt(0),it(rt[1],void 0,_t,es),m=0,l=n=!1,o=hs(),i=Vs(),F([z,P,j,k,M,ue,Je,Ie,Re,Le],G))),zs),zs={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>le(Y(ke,p(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>se(Y(Y(ke,p(e)),p(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:fs,hasTableCell:gs,hasRow:Ts,hasCell:bs,hasValues:Vs,hasValue:Cs,getTablesJson:()=>ve(ke),getValuesJson:()=>ve(Ae),getJson:()=>ve([ke,Ae]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Zt((()=>{(H(e)?ws:Ss)(e),(H(t)?Js:vs)(t)})),setTables:Ss,setTable:(e,t)=>Zt((e=>ft(t,e)?wt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>gt(e,t,s)?It(e,xt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return gt(e,l,t)&&(e=p(e),It(e,xt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(gt(e,t,s,1)){const l=xt(e);D(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>I(Tt(e,t,s,J(l)?l(cs(e,t,s)):l),(l=>Jt(e,xt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Zt((()=>bt(e,1)?D(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>I(Vt(e,J(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{D(e[0],((e,t)=>w(e)?Is(t):D(e,((e,s)=>w(e)?Rs(t,s):D(e,((e,l)=>Ce(zs,t,s,l,e))))))),D(e[1],((e,t)=>Se(zs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Lt(ye(e))}catch{}return zs},setJson:e=>Zt((()=>{try{const[t,s]=ye(e);pt(t),Lt(s)}catch{ys(e)}})),setTablesSchema:ps,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{ps(e),ms(t)})),delTables:ws,delTable:Is,delRow:Rs,delCell:(e,t,s,l)=>Zt(((e,t,s)=>I(Y(ke,e),(n=>I(Y(n,t),(a=>$(a,s)?jt(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>$(Ae,e)?kt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:xs,forEachTable:e=>K(ke,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(je,p(e)),t),forEachRow:(e,t)=>K(Y(ke,p(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(ke,p(e)),p(t)),s),forEachValue:e=>Z(Ae,e),addSortedRowIdsListener:(e,t,s,l,n,a,o)=>{let r=os(e,t,s,l,n);return ct((()=>{const o=os(e,t,s,l,n);var c,i,d;i=r,E(c=o)===E(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(zs,e,t,s,l,n,r))}),Ke[o?1:0],[e,t],[ss])},addStartTransactionListener:e=>ct(e,ot),addWillFinishTransactionListener:e=>ct(e,rt[0]),addDidFinishTransactionListener:e=>ct(e,rt[1]),callListener:e=>(ut(e),zs),delListener:e=>(dt(e),zs),getListenerStats:()=>({}),createStore:we,addListener:ct,callListeners:it};return D({[y+u]:[0,Me,[],()=>[hs()]],[u]:[0,Ne],[h]:[0,Be],[y+d]:[1,De,[ss],e=>[fs(...e)]],[d]:[1,He,[ss]],[d+V]:[1,We,[ss]],[y+d+b]:[2,$e,[ss,ls],e=>[gs(...e)]],[g]:[1,qe,[ss]],[T]:[1,Ge,[ss]],[y+f]:[2,Qe,[ss,as],e=>[Ts(...e)]],[f]:[2,Ue,[ss,as]],[V]:[2,Xe,[ss,as]],[y+b]:[3,Ye,[ss,as,rs],e=>[bs(...e)]],[b]:[3,Ze,[ss,as,rs],e=>fe(cs(...e))],InvalidCell:[3,_e],[y+S]:[0,tt,[],()=>[Vs()]],[S]:[0,st],[v]:[0,lt],[y+C]:[1,nt,[ds],e=>[Cs(...e)]],[C]:[1,at,[ds],e=>fe(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{zs["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?L(n,0,e):void 0,s,l)})),A(zs)};e.createStore=we},"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="",l=t(s),n=t(!0),a=t(0),o=t(t),r="type",c="default",i="Has",d="Ids",u="Table",h=u+"s",f=u+d,g="Row",T=g+"Count",b=g+d,V="Cell",C=V+d,S="Value",v=S+"s",y=S+d,p=e=>s+e,m=isFinite,w=e=>null==e,I=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==l||e==n,J=e=>t(e)==o,L=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.keys,k=z.isFrozen,A=z.freeze,M=e=>!w(e)&&I(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),N=(e,t)=>!w(((e,t)=>I(e,(e=>e[t])))(e,t)),B=(e,t)=>(delete e[t],e),D=(e,t)=>O(z.entries(e),(([e,s])=>t(s,e))),H=e=>M(e)&&0==(e=>E(j(e)))(e),W=e=>e?.size??0,$=(e,t)=>e?.has(t)??!1,q=e=>w(e)||0==W(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>w(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>($(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,l=_)=>(D(t,((t,l)=>s(e,l,t))),Z(e,(s=>N(t,s)?0:l(e,s))),e),se=(e,t,s)=>{const l={};return K(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},le=(e,t,s)=>se(e,(e=>se(e,t,s)),H),ne=(e,t,s)=>se(e,(e=>le(e,t,s)),H),ae=(e,t)=>{const s=U();return K(e,((e,l)=>s.set(l,t?.(e)??e))),s},oe=e=>ae(e,ae),re=e=>ae(e,oe),ce=(e,t,s,l,n=0)=>I((s?ee:Y)(e,t[n],n>E(t)-2?s:U),(a=>{if(n>E(t)-2)return l?.(a)&&_(e,t[n]),a;const o=ce(a,t,s,l,n+1);return q(a)&&_(e,t[n]),o})),ie=e=>new Set(Array.isArray(e)||w(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let t=0;return[l=>(l?e.shift():null)??s+t++,t=>{ue.test(t)&&E(e)<1e3&&x(e,t)}]},fe=e=>[e,e],ge=()=>[U(),U()],Te=e=>[...e],be=([e,t])=>e===t,Ve=e=>{const s=t(e);return R(s)||s==a&&m(e)?s:void 0},Ce=(e,t,s,l,n)=>w(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Se=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ye=JSON.parse,pe=(e,t,s)=>w(e)||!M(e)||H(e)||k(e)?(s?.(),!1):(D(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),we=()=>{let e,t,l=!1,n=!1,o=!1,d=!1,m=0;const z=U(),P=U(),j=U(),k=U(),M=U(),ue=U(),Ie=U(),Re=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),xe=U(),ze=ie(),Pe=U(),je=U(),ke=U(),Ae=U(),Me=ge(),Ne=ge(),Be=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),lt=ge(),nt=ge(),at=ge(),ot=U(),rt=ge(),[ct,it,dt,ut]=(e=>{let t;const[l,n]=he(),a=U();return[(e,n,o,r=[],c=(()=>[]))=>{t??=zs;const i=l(1);return _(a,i,[e,n,o,r,c]),de(ce(n,o??[s],ie),i),i},(e,l,...n)=>F(((e,t=[s])=>{const l=[],n=(e,s)=>s==E(t)?x(l,e):null===t[s]?K(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(Y(e,t),s+1)));return n(e,0),l})(e,l),(e=>K(e,(e=>Y(a,e)[0](t,...l??[],...n))))),e=>I(Y(a,e),(([,t,l])=>(ce(t,l??[s],void 0,(t=>(Q(t,e),q(t)?1:0))),_(a,e),n(e),l))),e=>I(Y(a,e),(([e,,s=[],l,n])=>{const a=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...n(o)):w(s[r])?F(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,s[r])};a()}))]})(),ht=e=>{if(!pe(e,((e,t)=>[r,c].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=a||(Ve(e[c])!=t&&B(e,c),0))},ft=(t,s)=>(!e||$(Ee,s)||Wt(s))&&pe(t,((e,t)=>gt(s,t,e)),(()=>Wt(s))),gt=(e,t,s,l)=>pe(l?s:Ct(s,e,t),((l,n)=>I(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>Wt(e,t))),Tt=(t,s,l,n)=>e?I(Y(Y(Ee,t),l),(e=>Ve(n)!=e[r]?Wt(t,s,l,n,e[c]):n),(()=>Wt(t,s,l,n))):w(Ve(n))?Wt(t,s,l,n):n,bt=(e,t)=>pe(t?e:St(e),((t,s)=>I(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),Vt=(e,s)=>t?I(Y(Oe,e),(t=>Ve(s)!=t[r]?$t(e,s,t[c]):s),(()=>$t(e,s))):w(Ve(s))?$t(e,s):s,Ct=(e,t,s)=>(I(Y(Fe,t),(([l,n])=>{K(l,((t,s)=>{N(e,s)||(e[s]=t)})),K(n,(l=>{N(e,l)||Wt(t,s,l)}))})),e),St=e=>(t&&(K(xe,((t,s)=>{N(e,s)||(e[s]=t)})),K(ze,(t=>{N(e,t)||$t(t)}))),e),vt=e=>te(Ee,e,((e,t,s)=>{const l=U(),n=ie();te(ee(Ee,t,U),s,((e,t,s)=>{_(e,t,s),I(s[c],(e=>_(l,t,e)),(()=>de(n,t)))})),_(Fe,t,[l,n])}),((e,t)=>{_(Ee,t),_(Fe,t)})),yt=e=>te(Oe,e,((e,t,s)=>{_(Oe,t,s),I(s[c],(e=>_(xe,t,e)),(()=>de(ze,t)))}),((e,t)=>{_(Oe,t),_(xe,t),Q(ze,t)})),pt=e=>H(e)?ws():Ss(e),mt=e=>te(ke,e,((e,t,s)=>wt(t,s)),((e,t)=>zt(t))),wt=(e,t)=>te(ee(ke,e,(()=>(At(e,1),_(Pe,e,he()),_(je,e,U()),U()))),t,((t,s,l)=>It(e,t,s,l)),((t,s)=>Pt(e,t,s))),It=(e,t,s,l,n)=>te(ee(t,s,(()=>(Mt(e,s,1),U()))),l,((t,l,n)=>Rt(e,s,t,l,n)),((l,a)=>jt(e,t,s,l,a,n))),Rt=(e,t,s,l,n)=>{$(s,l)||Nt(e,t,l,1);const a=Y(s,l);n!==a&&(Bt(e,t,l,a,n),_(s,l,n))},Jt=(e,t,s,l,n)=>I(Y(t,s),(t=>Rt(e,s,t,l,n)),(()=>It(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>H(e)?Js():vs(e),Et=e=>te(Ae,e,((e,t,s)=>Ft(t,s)),((e,t)=>kt(t))),Ft=(e,t)=>{$(Ae,e)||Dt(e,1);const s=Y(Ae,e);t!==s&&(Ht(e,s,t),_(Ae,e,t))},Ot=(e,t)=>{const[s]=Y(Pe,e),l=s(t);return $(Y(ke,e),l)?Ot(e,t):l},xt=e=>Y(ke,e)??wt(e,{}),zt=e=>wt(e,{}),Pt=(e,t,s)=>{const[,l]=Y(Pe,e);l(s),It(e,t,s,{},!0)},jt=(e,t,s,l,n,a)=>{const o=Y(Y(Fe,e)?.[0],n);if(!w(o)&&!a)return Rt(e,s,l,n,o);const r=t=>{Bt(e,s,t,Y(l,t)),Nt(e,s,t,-1),_(l,t)};w(o)?r(n):Z(l,r),q(l)&&(Mt(e,s,-1),q(_(t,s))&&(At(e,-1),_(ke,e),_(Pe,e),_(je,e)))},kt=e=>{const t=Y(xe,e);if(!w(t))return Ft(e,t);Ht(e,Y(Ae,e)),Dt(e,-1),_(Ae,e)},At=(e,t)=>me(z,e,t),Mt=(e,t,s)=>me(ee(k,e,U),t,s)&&_(j,e,ee(j,e,(()=>0))+s),Nt=(e,t,s,l)=>{const n=Y(je,e),a=Y(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&me(ee(P,e,U),s,l),_(n,s,a!=-l?a+l:null),me(ee(ee(M,e,U),t,U),s,l)},Bt=(e,t,s,l,n)=>ee(ee(ee(ue,e,U),t,U),s,(()=>[l,0]))[1]=n,Dt=(e,t)=>me(Ie,e,t),Ht=(e,t,s)=>ee(Re,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,l,n)=>(x(ee(ee(ee(Je,e,U),t,U),s,(()=>[])),l),n),$t=(e,t,s)=>(x(ee(Le,e,(()=>[])),t),s),qt=(e,t,s)=>I(Y(Y(Y(ue,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(cs(e,t,s))])),Gt=e=>I(Y(Re,e),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(us(e))])),Kt=e=>q(Je)||q(_e[e])?0:K(e?re(Je):Je,((t,s)=>K(t,((t,l)=>K(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>q(Le)||q(et[e])?0:K(e?ae(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!q(e))return it(t,l,(()=>se(e))),Z(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=o&&it(Me[e],void 0,t);const s=q(Ke[e]),l=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q(We[e])&&q($e[e])&&q(qe[e])&&s&&q(Be[e])&&q(De[e]),n=q(Ze[e])&&q(Ue[e])&&q(He[e])&&q(Ne[e]);if(!l||!n){const t=e?[ae(z),oe(P),ae(j),oe(k),re(M),re(ue)]:[z,P,j,k,M,ue];if(!l){Ut(t[0],Be[e],De[e]),K(t[1],((t,s)=>Ut(t,We[e],$e[e],[s]))),K(t[2],((t,s)=>{0!=t&&it(qe[e],[s],ns(s))}));const l=ie();K(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),de(l,n))})),s||K(t[5],((t,s)=>{if(!$(l,s)){const l=ie();K(t,(e=>K(e,(([t,s],n)=>s!==t?de(l,n):Q(e,n))))),K(l,(t=>it(Ke[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;K(t[5],((t,l)=>{let n;K(t,((t,a)=>{let o;K(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,qt),s=n=o=1)})),o&&it(Ue[e],[l,a],qt)})),n&&it(He[e],[l],qt)})),s&&it(Ne[e],void 0,qt)}}},Yt=e=>{const t=Vs();t!=d&&it(tt[e],void 0,t);const s=q(lt[e])&&q(nt[e]),l=q(at[e])&&q(st[e]);if(!s||!l){const t=e?[ae(Ie),ae(Re)]:[Ie,Re];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;K(t[1],(([t,l],n)=>{l!==t&&(it(at[e],[n],l,t,Gt),s=1)})),s&&it(st[e],void 0,Gt)}}},Zt=(e,...t)=>(Fs((()=>e(...O(t,p)))),zs),_t=()=>[se(ue,((e,t)=>-1===Y(z,t)?null:se(e,((e,s)=>-1===Y(Y(k,t),s)?null:se(e,(([,e])=>e??null),((e,t)=>be(t)))),H)),H),se(Re,(([,e])=>e??null),((e,t)=>be(t)))],es=()=>({cellsTouched:l,valuesTouched:n,changedCells:ne(ue,Te,be),invalidCells:ne(Je),changedValues:se(Re,Te,be),invalidValues:se(Le),changedTableIds:se(z),changedRowIds:le(k),changedCellIds:ne(M),changedValueIds:se(Ie)}),ts=()=>ne(ke),ss=()=>X(ke),ls=e=>X(Y(je,p(e))),ns=e=>W(Y(ke,p(e))),as=e=>X(Y(ke,p(e))),os=(e,t,s,l=0,n)=>{return O(L((o=Y(ke,p(e)),r=(e,s)=>[w(t)?s:Y(e,p(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,w(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>X(Y(Y(ke,p(e)),p(t))),cs=(e,t,s)=>Y(Y(Y(ke,p(e)),p(t)),p(s)),is=()=>se(Ae),ds=()=>X(Ae),us=e=>Y(Ae,p(e)),hs=()=>!q(ke),fs=e=>$(ke,p(e)),gs=(e,t)=>$(Y(je,p(e)),p(t)),Ts=(e,t)=>$(Y(ke,p(e)),p(t)),bs=(e,t,s)=>$(Y(Y(ke,p(e)),p(t)),p(s)),Vs=()=>!q(Ae),Cs=e=>$(Ae,p(e)),Ss=e=>Zt((()=>(e=>pe(e,ft,Wt))(e)?mt(e):0)),vs=e=>Zt((()=>bt(e)?Et(e):0)),ys=e=>{try{pt(ye(e))}catch{}return zs},ps=t=>Zt((()=>{if((e=pe(t,(e=>pe(e,ht))))&&(vt(t),!q(ke))){const e=ts();ws(),Ss(e)}})),ms=e=>Zt((()=>{if(t=(e=>pe(e,ht))(e)){const s=is();Es(),Js(),t=!0,yt(e),vs(s)}})),ws=()=>Zt((()=>mt({}))),Is=e=>Zt((e=>$(ke,e)?zt(e):0),e),Rs=(e,t)=>Zt(((e,t)=>I(Y(ke,e),(s=>$(s,t)?Pt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{vt({}),e=!1})),Es=()=>Zt((()=>{yt({}),t=!1})),Fs=(e,t)=>{if(-1!=m){Os();const s=e();return xs(t),s}},Os=()=>(-1!=m&&m++,1==m&&it(ot,void 0,_t,es),zs),xs=e=>(m>0&&(m--,0==m&&(l=!q(ue),n=!q(Re),m=1,Kt(1),l&&Xt(1),Qt(1),n&&Yt(1),e?.(_t,es)&&(K(ue,((e,t)=>K(e,((e,s)=>K(e,(([e],l)=>Ce(zs,t,s,l,e))))))),K(Re,(([e],t)=>Se(zs,t,e))),l=n=!1),it(rt[0],void 0,_t,es),m=-1,Kt(0),l&&Xt(0),Qt(0),n&&Yt(0),it(rt[1],void 0,_t,es),m=0,l=n=!1,o=hs(),d=Vs(),F([z,P,j,k,M,ue,Je,Ie,Re,Le],G))),zs),zs={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>le(Y(ke,p(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>se(Y(Y(ke,p(e)),p(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:fs,hasTableCell:gs,hasRow:Ts,hasCell:bs,hasValues:Vs,hasValue:Cs,getTablesJson:()=>ve(ke),getValuesJson:()=>ve(Ae),getJson:()=>ve([ke,Ae]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Zt((()=>{(H(e)?ws:Ss)(e),(H(t)?Js:vs)(t)})),setTables:Ss,setTable:(e,t)=>Zt((e=>ft(t,e)?wt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>gt(e,t,s)?It(e,xt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return gt(e,l,t)&&(e=p(e),It(e,xt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(gt(e,t,s,1)){const l=xt(e);D(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>I(Tt(e,t,s,J(l)?l(cs(e,t,s)):l),(l=>Jt(e,xt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Zt((()=>bt(e,1)?D(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>I(Vt(e,J(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{D(e[0],((e,t)=>w(e)?Is(t):D(e,((e,s)=>w(e)?Rs(t,s):D(e,((e,l)=>Ce(zs,t,s,l,e))))))),D(e[1],((e,t)=>Se(zs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Lt(ye(e))}catch{}return zs},setJson:e=>Zt((()=>{try{const[t,s]=ye(e);pt(t),Lt(s)}catch{ys(e)}})),setTablesSchema:ps,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{ps(e),ms(t)})),delTables:ws,delTable:Is,delRow:Rs,delCell:(e,t,s,l)=>Zt(((e,t,s)=>I(Y(ke,e),(n=>I(Y(n,t),(a=>$(a,s)?jt(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>$(Ae,e)?kt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:xs,forEachTable:e=>K(ke,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(je,p(e)),t),forEachRow:(e,t)=>K(Y(ke,p(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(ke,p(e)),p(t)),s),forEachValue:e=>Z(Ae,e),addSortedRowIdsListener:(e,t,s,l,n,a,o)=>{let r=os(e,t,s,l,n);return ct((()=>{const o=os(e,t,s,l,n);var c,i,d;i=r,E(c=o)===E(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(zs,e,t,s,l,n,r))}),Ke[o?1:0],[e,t],[ss])},addStartTransactionListener:e=>ct(e,ot),addWillFinishTransactionListener:e=>ct(e,rt[0]),addDidFinishTransactionListener:e=>ct(e,rt[1]),callListener:e=>(ut(e),zs),delListener:e=>(dt(e),zs),getListenerStats:()=>({}),createStore:we,addListener:ct,callListeners:it};return D({[i+h]:[0,Me,[],()=>[hs()]],[h]:[0,Ne],[f]:[0,Be],[i+u]:[1,De,[ss],e=>[fs(...e)]],[u]:[1,He,[ss]],[u+C]:[1,We,[ss]],[i+u+V]:[2,$e,[ss,ls],e=>[gs(...e)]],[T]:[1,qe,[ss]],[b]:[1,Ge,[ss]],[i+g]:[2,Qe,[ss,as],e=>[Ts(...e)]],[g]:[2,Ue,[ss,as]],[C]:[2,Xe,[ss,as]],[i+V]:[3,Ye,[ss,as,rs],e=>[bs(...e)]],[V]:[3,Ze,[ss,as,rs],e=>fe(cs(...e))],InvalidCell:[3,_e],[i+v]:[0,tt,[],()=>[Vs()]],[v]:[0,st],[y]:[0,lt],[i+S]:[1,nt,[ds],e=>[Cs(...e)]],[S]:[1,at,[ds],e=>fe(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{zs["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?L(n,0,e):void 0,s,l)})),A(zs)};e.createStore=we},"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){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),i="type",l="default",c="Listener",d="Result",u="add",h="Ids",g="Table",f=g+"s",L=g+h,w="Row",v=w+"Count",I=w+h,S="Sorted"+w+h,y="Cell",T=y+h,R="Value",p=R+"s",C=R+h,b="Has",m=e=>s+e,V=Math.max,E=Math.min,k=isFinite,M=e=>null==e,x=(e,t,s)=>M(e)?s?.():t(e),D=e=>e==n||e==a,J=e=>t(e)==r,A=e=>Array.isArray(e),F=(e,t,s)=>e.slice(t,s),Q=e=>e.length,z=()=>{},N=(e,t)=>e.includes(t),O=(e,t)=>e.every(t),P=(e,t)=>Q(e)===Q(t)&&O(e,((e,s)=>t[s]===e)),j=(e,t)=>O(e,((s,n)=>0==n||t(e[n-1],s)<=0)),B=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),H=(e,t)=>e.map(t),$=e=>G(e,((e,t)=>e+t),0),q=e=>0==Q(e),G=(e,t,s)=>e.reduce(t,s),K=(e,...t)=>e.push(...t),U=e=>e.pop(),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.keys,ee=Y.isFrozen,te=Y.freeze,se=e=>!M(e)&&x(Z(e),(e=>e==Y.prototype||M(Z(e))),(()=>!0)),ne=(e,t)=>!M(((e,t)=>x(e,(e=>e[t])))(e,t)),ae=(e,t)=>(delete e[t],e),oe=(e,t)=>H(Y.entries(e),(([e,s])=>t(s,e))),re=e=>se(e)&&0==(e=>Q(_(e)))(e),ie=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ce=e=>M(e)||0==ie(e),de=e=>[...e?.values()??[]],ue=e=>e.clear(),he=(e,t)=>e?.forEach(t),ge=(e,t)=>e?.delete(t),fe=e=>new Map(e),Le=e=>[...e?.keys()??[]],we=(e,t)=>e?.get(t),ve=(e,t)=>he(e,((e,s)=>t(s,e))),Ie=(e,t,s)=>M(s)?(ge(e,t),e):e?.set(t,s),Se=(e,t,s)=>(le(e,t)||Ie(e,t,s()),we(e,t)),ye=(e,t,s,n=Ie)=>(oe(t,((t,n)=>s(e,n,t))),ve(e,(s=>ne(t,s)?0:n(e,s))),e),Te=(e,t,s)=>{const n={};return he(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Re=(e,t,s)=>Te(e,(e=>Te(e,t,s)),re),pe=(e,t,s)=>Te(e,(e=>Re(e,t,s)),re),Ce=(e,t)=>{const s=fe();return he(e,((e,n)=>s.set(n,t?.(e)??e))),s},be=e=>Ce(e,Ce),me=e=>Ce(e,be),Ve=(e,t,s,n,a=0)=>x((s?Se:we)(e,t[a],a>Q(t)-2?s:fe),(o=>{if(a>Q(t)-2)return n?.(o)&&Ie(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ce(o)&&Ie(e,t[a]),r})),Ee=e=>{const s=t(e);return D(s)||s==o&&k(e)?s:void 0},ke=(e,t,s,n,a)=>M(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Me=(e,t,s)=>M(s)?e.delValue(t):e.setValue(t,s),xe=e=>new Set(A(e)||M(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=fe(),i=fe(),l=fe(),c=fe(),d=fe(),u=fe(),h=(t,s,...n)=>{const a=Se(u,t,xe);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>x(we(u,t),(n=>{W(q(s)?de(n):s,(t=>{e.delListener(t),ge(n,t)})),ce(n)&&Ie(u,t)})),f=(e,s)=>{Ie(r,e,s),le(i,e)||(Ie(i,e,t()),Ie(c,e,fe()),Ie(d,e,fe()),a(l))},L=e=>{Ie(r,e),Ie(i,e),Ie(c,e),Ie(d,e),g(e),a(l)};return[()=>e,()=>Le(r),e=>ve(i,e),e=>le(i,e),e=>we(r,e),e=>we(i,e),(e,t)=>Ie(i,e,t),f,(t,n,a,r,i)=>{f(t,n);const l=fe(),u=fe(),L=we(c,t),w=we(d,t),v=t=>{const a=s=>e.getCell(n,t,s),c=we(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||A(c)&&A(d)&&P(c,d)||Ie(l,t,[c,d]),!M(i)){const e=we(w,t),s=o(n,t)?i(a,t):void 0;e!=s&&Ie(u,t,s)}},I=e=>{a((()=>{he(l,(([,e],t)=>Ie(L,t,e))),he(u,((e,t)=>Ie(w,t,e)))}),l,u,L,w,e),ue(l),ue(u)};ve(L,v),e.hasTable(n)&&W(e.getRowIds(n),(e=>{le(L,e)||v(e)})),I(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>v(s))),e.addTableListener(n,(()=>I())))},L,e=>n(e,l),()=>ve(u,L),h,g]},Ae=(e,a)=>t(e)==n?t=>t(e):e??(()=>a??s),Fe=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Qe=/^\d+$/,ze=()=>{const e=[];let t=0;return[n=>(n?X(e):null)??s+t++,t=>{Qe.test(t)&&Q(e)<1e3&&K(e,t)}]},Ne=e=>{let t;const[n,a]=ze(),o=fe();return[(a,r,i,l=[],c=(()=>[]))=>{t??=e();const d=n(1);return Ie(o,d,[a,r,i,l,c]),De(Ve(r,i??[s],xe),d),d},(e,n,...a)=>W(((e,t=[s])=>{const n=[],a=(e,s)=>s==Q(t)?K(n,e):null===t[s]?he(e,(e=>a(e,s+1))):W([t[s],null],(t=>a(we(e,t),s+1)));return a(e,0),n})(e,n),(e=>he(e,(e=>we(o,e)[0](t,...n??[],...a))))),e=>x(we(o,e),(([,t,n])=>(Ve(t,n??[s],void 0,(t=>(ge(t,e),ce(t)?1:0))),Ie(o,e),a(e),n))),e=>x(we(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const i=Q(r);i==Q(s)?e(t,...r,...a(r)):M(s[i])?W(n[i]?.(...r)??[],(e=>o(...r,e))):o(...r,s[i])};o()}))]},Oe=Fe((e=>{let t,n,a,o=100,r=fe(),i=fe(),l=1;const c=fe(),d=fe(),[u,h,g]=Ne((()=>F)),f=fe(),L=fe(),w=[],v=[],I=(t,s)=>{l=0,e.transaction((()=>{const[n,a]=we(f,s);he(n,((s,n)=>he(s,((s,a)=>he(s,((s,o)=>ke(e,n,a,o,s[t]))))))),he(a,((s,n)=>Me(e,n,s[t])))})),l=1},S=e=>{Ie(f,e),Ie(L,e),h(d,[e])},y=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??Q(e)),S),T=()=>y(w,Q(w)-o),R=()=>x(t,(()=>{K(w,t),T(),y(v),t=void 0,a=1})),p=()=>{t=U(w),a=1},C=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(l){R();const e=Se(r,t,fe),i=Se(e,s,fe),l=Se(i,n,(()=>[o,void 0]));l[1]=a,l[0]===a&&ce(Ie(i,n))&&ce(Ie(e,s))&&ce(Ie(r,t))&&p(),k()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(l){R();const e=Se(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ce(Ie(i,t))&&p(),k()}})),m=(e="")=>(M(t)&&(t=s+n++,Ie(f,t,[r,i]),J(t,e),r=fe(),i=fe(),a=1),t),V=()=>{q(w)||(((e,...t)=>{e.unshift(...t)})(v,m()),I(0,t),t=U(w),a=1)},E=()=>{q(v)||(K(w,t),t=X(v),I(1,t),a=1)},k=()=>{a&&(h(c),a=0)},D=e=>{const t=m(e);return k(),t},J=(e,t)=>(A(e)&&we(L,e)!==t&&(Ie(L,e,t),h(d,[e])),F),A=e=>le(f,e),F={setSize:e=>(o=e,T(),F),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>ve(L,e),hasCheckpoint:A,getCheckpoint:e=>we(L,e),goBackward:()=>(V(),k(),F),goForward:()=>(E(),k(),F),goTo:e=>{const s=N(w,e)?V:N(v,e)?E:null;for(;!M(s)&&e!=t;)s();return k(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),F),clear:()=>(y(w),y(v),M(t)||S(t),t=void 0,n=0,D(),F),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return te(F.clear())})),Pe=(e,t)=>(e??0)<(t??0)?-1:1,je=Fe((e=>{const t=fe(),n=fe(),[a,o,r]=Ne((()=>S)),[i,l,c,d,u,h,g,,f,L,w,v]=Je(e,fe,(e=>M(e)?s:A(e)?H(e,m):m(e)),a,o),I=(t,s,n)=>{const a=u(t);he(n,((t,n)=>s(n,(s=>he(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},S={setIndexDefinition:(e,s,a,r,i,l=Pe)=>{const c=M(i)?void 0:([e],[t])=>i(e,t);return f(e,s,((s,a,i,d,u,f)=>{let L=0;const w=xe(),v=xe(),I=h(e);if(he(a,(([e,t],s)=>{const n=xe(e),a=xe(t);he(n,(e=>ge(a,e)?ge(n,e):0)),he(n,(e=>{De(w,e),x(we(I,e),(t=>{ge(t,s),ce(t)&&(Ie(I,e),L=1)}))})),he(a,(e=>{De(w,e),le(I,e)||(Ie(I,e,xe()),L=1),De(we(I,e),s),M(r)||De(v,e)}))})),s(),ce(u)||(f?ve(I,(e=>De(v,e))):ve(i,(e=>x(we(d,e),(e=>De(v,e))))),he(v,(e=>{const t=(t,s)=>l(we(u,t),we(u,s),e),s=[...we(I,e)];j(s,t)||(Ie(I,e,xe(B(s,t))),De(w,e))}))),(L||f)&&!M(c)){const t=[...I];j(t,c)||(g(e,fe(B(t,c))),L=1)}L&&o(t,[e]),he(w,(t=>o(n,[e,t])))}),Ae(a),x(r,Ae)),S},delIndexDefinition:e=>(L(e),S),getStore:i,getIndexIds:l,forEachIndex:e=>c(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>Le(h(e)),getSliceRowIds:(e,t)=>de(we(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),S),destroy:v,getListenerStats:()=>({})};return te(S)})),Be=fe([["avg",[(e,t)=>$(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=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:V(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["sum",[e=>$(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ce(s))return;const[r,i,l,c]=a;return o||=M(e),he(n,(([s,n])=>{o||(e=M(s)?i?.(e,n,t++):M(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=M(e))})),o?r(de(s),ie(s)):e},He=Fe((e=>{const t=fe(),[n,a,o]=Ne((()=>v)),[r,i,l,c,d,u,h,,g,f,L,w]=Je(e,z,(e=>isNaN(e)||M(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),v={setMetricDefinition:(e,s,n,o,r,i,l)=>{const c=J(n)?[n,r,i,l]:we(Be,n)??we(Be,"sum");return g(e,s,((s,n,o,r,i,l)=>{const d=u(e),g=ie(r);l||=M(d),s();let f=We(d,g,r,n,c,l);k(f)||(f=void 0),f!=d&&(h(e,f),a(t,[e],f,d))}),Ae(o,1)),v},delMetricDefinition:e=>(f(e),v),getStore:r,getMetricIds:i,forEachMetric:l,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({})};return te(v)})),$e=fe(),qe=fe(),Ge=Fe((e=>{const t=e.createStore,n=t(),a=t(),o=fe(),{addListener:r,callListeners:i,delListener:l}=a,[h,f,L,R,p,,,C,,b,m,V,E,k]=Je(e,(()=>!0),z,r,i),D=(e,t,...s)=>W(s,(s=>De(Se(Se(o,t,fe),e,xe),s))),A=e=>{x(we(o,e),(e=>{ve(e,((e,t)=>he(t,(t=>e.delListener(t))))),ue(e)})),W([a,n],(t=>t.delTable(e)))},N=(e,t,s)=>D(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(t,o,r)=>{C(t,o),A(t);const i=[],l=[[null,[o,null,null,[],fe()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=J(e)?[Q(i)+s,e]:[M(t)?e:t,s=>s(e,t)];return K(i,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=M(s)||J(t)?null:t,a=M(n)?t:s,o=[e,[e,n,J(a)?a:e=>e(a),[],fe()]];return K(l,o),{as:e=>o[0]=e}},where:(e,t,s)=>K(c,J(e)?e:M(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,J(t)?[t,s,n,a]:we(Be,t)??[(e,t)=>t]]];return K(d,o),{as:e=>o[0]=e}},having:(e,t)=>K(u,J(e)?e:s=>s(e)===t)});const h=fe(i);if(ce(h))return P;const g=fe(l);ve(g,((e,[,t])=>x(we(g,t),(({3:t})=>M(e)?0:K(t,e)))));const f=fe(d);let L=n;if(ce(f)&&q(u))L=a;else{N(t,L,a);const e=fe();ve(f,((t,[s,n])=>De(Se(e,s,xe),[t,n])));const s=xe();ve(h,(t=>le(e,t)?0:De(s,t)));const n=fe(),o=(s,n,o,r)=>x(s,(([i,l,c,d])=>{ve(n,((t,[s])=>{const n=Se(i,t,fe),a=we(n,o),l=r?void 0:s;if(a!==l){const s=xe([[a,l]]),r=ie(n);Ie(n,o,l),he(we(e,t),(([e,t])=>{const a=We(d[e],r,n,s,t);d[e]=M(Ee(a))?null:a}))}})),ce(l)||!O(u,(e=>e((e=>d[e]))))?a.delRow(t,c):M(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));D(L,t,L.addRowListener(t,null,((a,r,i,l)=>{const c=[],d=[],u=fe(),h=L.hasRow(t,i);let g=!h;he(s,(e=>{const[s,n,a]=l(t,i,e);K(c,n),K(d,a),g||=s})),ve(e,(e=>{const[s,,n]=l(t,i,e);(g||s)&&Ie(u,e,[n])})),g&&o(Ve(n,c,void 0,(([,e])=>(ge(e,i),ce(e)))),u,i,1),h&&o(Ve(n,d,(()=>{const e={};return he(s,(s=>e[s]=L.getCell(t,i,s))),[fe(),xe(),void 0,e]}),(([,e])=>{De(e,i)})),u,i)})))}N(t,e,L);const w=(s,n,a,r)=>{const i=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,l]=we(g,n),c=o?.(i,s),[d,u]=we(l,s)??[];c!=d&&(M(u)||k(t,u),Ie(l,s,M(c)?null:[c,...E(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...M(n)?[o,s,t]:t===o?[o,s,n]:[we(g,t)?.[0],we(we(g,t)?.[4],s)?.[0],n]);L.transaction((()=>O(c,(e=>e(n)))?ve(h,((e,a)=>ke(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:v}=we(g,null);return L.transaction((()=>E(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,v):(L.delRow(t,a),he(g,(({4:e})=>x(we(e,a),(([,s])=>{k(t,s),Ie(e,a)})))))}))))),P},delQueryDefinition:e=>(A(e),b(e),P),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:R,getTableId:p,addQueryIdsListener:e=>m((()=>e(P))),delListener:e=>(l(e),P),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return oe({[g]:[1,1],[g+T]:[0,1],[v]:[0,1],[I]:[0,1],[S]:[0,5],[w]:[1,2],[T]:[0,2],[y]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+d+s]=(...t)=>a[e+s](...t))),P[u+d+s+c]=(...e)=>a[u+s+c](...F(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),te(P)})),Ke=Fe((e=>{const t=fe(),n=fe(),a=fe(),o=fe(),[r,i,l]=Ne((()=>R)),[c,d,u,h,g,f,,,L,w,v,I]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>M(e)?void 0:e+s),r,i),S=(e,t,s)=>x(f(e),(([n,,a])=>{if(!le(a,t)){const o=xe();if(g(e)!=T(e))De(o,t);else{let e=t;for(;!M(e)&&!le(o,e);)De(o,e),e=we(n,e)}if(s)return o;Ie(a,t,o)}return we(a,t)})),y=(e,t)=>x(f(e),(([,,e])=>Ie(e,t))),T=e=>we(t,e),R={setRelationshipDefinition:(e,s,r,l)=>(Ie(t,e,r),L(e,s,((t,s)=>{const r=xe(),l=xe(),c=xe(),[d,u]=f(e);he(s,(([t,s],n)=>{M(t)||(De(l,t),x(we(u,t),(e=>{ge(e,n),ce(e)&&Ie(u,t)}))),M(s)||(De(l,s),le(u,s)||Ie(u,s,xe()),De(we(u,s),n)),De(r,n),Ie(d,n,s),ve(we(o,e),(t=>{le(S(e,t),n)&&De(c,t)}))})),t(),he(r,(t=>i(n,[e,t]))),he(l,(t=>i(a,[e,t]))),he(c,(t=>{y(e,t),i(o,[e,t])}))}),Ae(l)),R),delRelationshipDefinition:e=>(Ie(t,e),w(e),R),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:T,getRemoteRowId:(e,t)=>we(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(we(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>M(f(e))?[t]:de(S(e,t,!0)),addRelationshipIdsListener:v,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),r(s,o,[e,t])),delListener:e=>(y(...l(e)??[]),R),destroy:I,getListenerStats:()=>({})};return te(R)})),Ue=e=>[e,e],Xe=()=>[fe(),fe()],Ye=e=>[...e],Ze=([e,t])=>e===t,_e=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>M(e)||!se(e)||re(e)||ee(e)?(s?.(),!1):(oe(e,((s,n)=>{t(s,n)||ae(e,n)})),!re(e)),st=(e,t,s)=>Ie(e,t,we(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,a=!1,r=!1,d=0;const h=fe(),S=fe(),V=fe(),E=fe(),k=fe(),A=fe(),Q=fe(),z=fe(),O=fe(),j=fe(),$=fe(),q=fe(),G=fe(),U=fe(),X=xe(),Y=fe(),Z=fe(),_=fe(),ee=fe(),se=Xe(),de=Xe(),Ve=Xe(),Je=Xe(),Ae=Xe(),Fe=Xe(),Qe=Xe(),Oe=Xe(),je=Xe(),Be=Xe(),We=Xe(),He=Xe(),$e=Xe(),qe=Xe(),Ge=Xe(),Ke=Xe(),at=Xe(),ot=Xe(),rt=Xe(),it=Xe(),lt=Xe(),ct=Xe(),dt=fe(),ut=Xe(),[ht,gt,ft,Lt]=Ne((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>N([i,l],t))))return!1;const t=e[i];return!(!D(t)&&t!=o||(Ee(e[l])!=t&&ae(e,l),0))},vt=(t,s)=>(!e||le($,s)||Gt(s))&&tt(t,((e,t)=>It(s,t,e)),(()=>Gt(s))),It=(e,t,s,n)=>tt(n?s:Rt(s,e,t),((n,a)=>x(St(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),St=(t,s,n,a)=>e?x(we(we($,t),n),(e=>Ee(a)!=e[i]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):M(Ee(a))?Gt(t,s,n,a):a,yt=(e,t)=>tt(t?e:pt(e),((t,s)=>x(Tt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,s)=>t?x(we(G,e),(t=>Ee(s)!=t[i]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):M(Ee(s))?Kt(e,s):s,Rt=(e,t,s)=>(x(we(q,t),(([n,a])=>{he(n,((t,s)=>{ne(e,s)||(e[s]=t)})),he(a,(n=>{ne(e,n)||Gt(t,s,n)}))})),e),pt=e=>(t&&(he(U,((t,s)=>{ne(e,s)||(e[s]=t)})),he(X,(t=>{ne(e,t)||Kt(t)}))),e),Ct=e=>ye($,e,((e,t,s)=>{const n=fe(),a=xe();ye(Se($,t,fe),s,((e,t,s)=>{Ie(e,t,s),x(s[l],(e=>Ie(n,t,e)),(()=>De(a,t)))})),Ie(q,t,[n,a])}),((e,t)=>{Ie($,t),Ie(q,t)})),bt=e=>ye(G,e,((e,t,s)=>{Ie(G,t,s),x(s[l],(e=>Ie(U,t,e)),(()=>De(X,t)))}),((e,t)=>{Ie(G,t),Ie(U,t),ge(X,t)})),mt=e=>re(e)?Es():ps(e),Vt=e=>ye(_,e,((e,t,s)=>Et(t,s)),((e,t)=>zt(t))),Et=(e,t)=>ye(Se(_,e,(()=>(jt(e,1),Ie(Y,e,ze()),Ie(Z,e,fe()),fe()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>Nt(e,t,s))),kt=(e,t,s,n,a)=>ye(Se(t,s,(()=>(Bt(e,s,1),fe()))),n,((t,n,a)=>Mt(e,s,t,n,a)),((n,o)=>Ot(e,t,s,n,o,a))),Mt=(e,t,s,n,a)=>{le(s,n)||Wt(e,t,n,1);const o=we(s,n);a!==o&&(Ht(e,t,n,o,a),Ie(s,n,a))},xt=(e,t,s,n,a)=>x(we(t,s),(t=>Mt(e,s,t,n,a)),(()=>kt(e,t,s,Rt({[n]:a},e,s)))),Dt=e=>re(e)?xs():Cs(e),Jt=e=>ye(ee,e,((e,t,s)=>At(t,s)),((e,t)=>Pt(t))),At=(e,t)=>{le(ee,e)||$t(e,1);const s=we(ee,e);t!==s&&(qt(e,s,t),Ie(ee,e,t))},Ft=(e,t)=>{const[s]=we(Y,e),n=s(t);return le(we(_,e),n)?Ft(e,t):n},Qt=e=>we(_,e)??Et(e,{}),zt=e=>Et(e,{}),Nt=(e,t,s)=>{const[,n]=we(Y,e);n(s),kt(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=we(we(q,e)?.[0],a);if(!M(r)&&!o)return Mt(e,s,n,a,r);const i=t=>{Ht(e,s,t,we(n,t)),Wt(e,s,t,-1),Ie(n,t)};M(r)?i(a):ve(n,i),ce(n)&&(Bt(e,s,-1),ce(Ie(t,s))&&(jt(e,-1),Ie(_,e),Ie(Y,e),Ie(Z,e)))},Pt=e=>{const t=we(U,e);if(!M(t))return At(e,t);qt(e,we(ee,e)),$t(e,-1),Ie(ee,e)},jt=(e,t)=>st(h,e,t),Bt=(e,t,s)=>st(Se(E,e,fe),t,s)&&Ie(V,e,Se(V,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=we(Z,e),o=we(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(Se(S,e,fe),s,n),Ie(a,s,o!=-n?o+n:null),st(Se(Se(k,e,fe),t,fe),s,n)},Ht=(e,t,s,n,a)=>Se(Se(Se(A,e,fe),t,fe),s,(()=>[n,0]))[1]=a,$t=(e,t)=>st(Q,e,t),qt=(e,t,s)=>Se(z,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(K(Se(Se(Se(O,e,fe),t,fe),s,(()=>[])),n),a),Kt=(e,t,s)=>(K(Se(j,e,(()=>[])),t),s),Ut=(e,t,s)=>x(we(we(we(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(hs(e,t,s))])),Xt=e=>x(we(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Ls(e))])),Yt=e=>ce(O)||ce(Ke[e])?0:he(e?me(O):O,((t,s)=>he(t,((t,n)=>he(t,((t,a)=>gt(Ke[e],[s,n,a],t))))))),Zt=e=>ce(j)||ce(at[e])?0:he(e?Ce(j):j,((t,s)=>gt(at[e],[s],t))),_t=(e,t,s,n)=>{if(!ce(e))return gt(t,n,(()=>Te(e))),ve(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=a&&gt(se[e],void 0,t);const s=ce(Be[e]),n=ce($e[e])&&ce(qe[e])&&ce(je[e])&&ce(We[e])&&ce(Fe[e])&&ce(Qe[e])&&ce(Oe[e])&&s&&ce(Ve[e])&&ce(Je[e]),o=ce(Ge[e])&&ce(He[e])&&ce(Ae[e])&&ce(de[e]);if(!n||!o){const t=e?[Ce(h),be(S),Ce(V),be(E),me(k),me(A)]:[h,S,V,E,k,A];if(!n){_t(t[0],Ve[e],Je[e]),he(t[1],((t,s)=>_t(t,Fe[e],Qe[e],[s]))),he(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const n=xe();he(t[3],((t,a)=>{_t(t,je[e],We[e],[a])&&!s&&(gt(Be[e],[a,null]),De(n,a))})),s||he(t[5],((t,s)=>{if(!le(n,s)){const n=xe();he(t,(e=>he(e,(([t,s],a)=>s!==t?De(n,a):ge(e,a))))),he(n,(t=>gt(Be[e],[s,t])))}})),he(t[4],((t,s)=>he(t,((t,n)=>_t(t,$e[e],qe[e],[s,n])))))}if(!o){let s;he(t[5],((t,n)=>{let a;he(t,((t,o)=>{let r;he(t,(([t,i],l)=>{i!==t&&(gt(Ge[e],[n,o,l],i,t,Ut),s=a=r=1)})),r&&gt(He[e],[n,o],Ut)})),a&&gt(Ae[e],[n],Ut)})),s&&gt(de[e],void 0,Ut)}}},ts=e=>{const t=Ts();t!=r&&gt(ot[e],void 0,t);const s=ce(it[e])&&ce(lt[e]),n=ce(ct[e])&&ce(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(z)]:[Q,z];if(s||_t(t[0],it[e],lt[e]),!n){let s;he(t[1],(([t,n],a)=>{n!==t&&(gt(ct[e],[a],n,t,Xt),s=1)})),s&&gt(rt[e],void 0,Xt)}}},ss=(e,...t)=>(As((()=>e(...H(t,m)))),zs),ns=()=>[Te(A,((e,t)=>-1===we(h,t)?null:Te(e,((e,s)=>-1===we(we(E,t),s)?null:Te(e,(([,e])=>e??null),((e,t)=>Ze(t)))),re)),re),Te(z,(([,e])=>e??null),((e,t)=>Ze(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:pe(A,Ye,Ze),invalidCells:pe(O),changedValues:Te(z,Ye,Ze),invalidValues:Te(j),changedTableIds:Te(h),changedRowIds:Re(E),changedCellIds:pe(k),changedValueIds:Te(Q)}),os=()=>pe(_),rs=()=>Le(_),is=e=>Le(we(Z,m(e))),ls=e=>ie(we(_,m(e))),cs=e=>Le(we(_,m(e))),ds=(e,t,s,n=0,a)=>{return H(F(B((o=we(_,m(e)),r=(e,s)=>[M(t)?s:we(e,m(t)),s],H([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Pe(e,t)*(s?-1:1))),n,M(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>Le(we(we(_,m(e)),m(t))),hs=(e,t,s)=>we(we(we(_,m(e)),m(t)),m(s)),gs=()=>Te(ee),fs=()=>Le(ee),Ls=e=>we(ee,m(e)),ws=()=>!ce(_),vs=e=>le(_,m(e)),Is=(e,t)=>le(we(Z,m(e)),m(t)),Ss=(e,t)=>le(we(_,m(e)),m(t)),ys=(e,t,s)=>le(we(we(_,m(e)),m(t)),m(s)),Ts=()=>!ce(ee),Rs=e=>le(ee,m(e)),ps=e=>ss((()=>(e=>tt(e,vt,Gt))(e)?Vt(e):0)),Cs=e=>ss((()=>yt(e)?Jt(e):0)),bs=e=>{try{mt(et(e))}catch{}return zs},ms=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(Ct(t),!ce(_))){const e=os();Es(),ps(e)}})),Vs=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();Js(),xs(),t=!0,bt(e),Cs(s)}})),Es=()=>ss((()=>Vt({}))),ks=e=>ss((e=>le(_,e)?zt(e):0),e),Ms=(e,t)=>ss(((e,t)=>x(we(_,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),xs=()=>ss((()=>Jt({}))),Ds=()=>ss((()=>{Ct({}),e=!1})),Js=()=>ss((()=>{bt({}),t=!1})),As=(e,t)=>{if(-1!=d){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=d&&d++,1==d&&gt(dt,void 0,ns,as),zs),Qs=e=>(d>0&&(d--,0==d&&(s=!ce(A),n=!ce(z),d=1,Yt(1),s&&es(1),Zt(1),n&&ts(1),e?.(ns,as)&&(he(A,((e,t)=>he(e,((e,s)=>he(e,(([e],n)=>ke(zs,t,s,n,e))))))),he(z,(([e],t)=>Me(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),d=-1,Yt(0),s&&es(0),Zt(0),n&&ts(0),gt(ut[1],void 0,ns,as),d=0,s=n=!1,a=ws(),r=Ts(),W([h,S,V,E,k,A,O,Q,z,j],ue))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Re(we(_,m(e))),getTableCellIds:is,getRowCount:ls,getRowIds:cs,getSortedRowIds:ds,getRow:(e,t)=>Te(we(we(_,m(e)),m(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:vs,hasTableCell:Is,hasRow:Ss,hasCell:ys,hasValues:Ts,hasValue:Rs,getTablesJson:()=>_e(_),getValuesJson:()=>_e(ee),getJson:()=>_e([_,ee]),getTablesSchemaJson:()=>_e($),getValuesSchemaJson:()=>_e(G),getSchemaJson:()=>_e([$,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(re(e)?Es:ps)(e),(re(t)?xs:Cs)(t)})),setTables:ps,setTable:(e,t)=>ss((e=>vt(t,e)?Et(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>It(e,t,s)?kt(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return It(e,n,t)&&(e=m(e),kt(e,Qt(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(It(e,t,s,1)){const n=Qt(e);oe(s,((s,a)=>xt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>x(St(e,t,s,J(n)?n(hs(e,t,s)):n),(n=>xt(e,Qt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>ss((()=>yt(e,1)?oe(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ss((e=>x(Tt(e,J(t)?t(Ls(e)):t),(t=>At(e,t)))),e),setTransactionChanges:e=>ss((()=>{oe(e[0],((e,t)=>M(e)?ks(t):oe(e,((e,s)=>M(e)?Ms(t,s):oe(e,((e,n)=>ke(zs,t,s,n,e))))))),oe(e[1],((e,t)=>Me(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Dt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);mt(t),Dt(s)}catch{bs(e)}})),setTablesSchema:ms,setValuesSchema:Vs,setSchema:(e,t)=>ss((()=>{ms(e),Vs(t)})),delTables:Es,delTable:ks,delRow:Ms,delCell:(e,t,s,n)=>ss(((e,t,s)=>x(we(_,e),(a=>x(we(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:xs,delValue:e=>ss((e=>le(ee,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Js,delSchema:()=>ss((()=>{Ds(),Js()})),transaction:As,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>he(_,((t,s)=>e(s,(e=>he(t,((t,s)=>e(s,(e=>ve(t,e))))))))),forEachTableCell:(e,t)=>ve(we(Z,m(e)),t),forEachRow:(e,t)=>he(we(_,m(e)),((e,s)=>t(s,(t=>ve(e,t))))),forEachCell:(e,t,s)=>ve(we(we(_,m(e)),m(t)),s),forEachValue:e=>ve(ee,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let i=ds(e,t,s,n,a);return ht((()=>{const r=ds(e,t,s,n,a);P(r,i)||(i=r,o(zs,e,t,s,n,a,i))}),Be[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Lt(e),zs),delListener:e=>(ft(e),zs),getListenerStats:()=>({}),createStore:nt,addListener:ht,callListeners:gt};return oe({[b+f]:[0,se,[],()=>[ws()]],[f]:[0,de],[L]:[0,Ve],[b+g]:[1,Je,[rs],e=>[vs(...e)]],[g]:[1,Ae,[rs]],[g+T]:[1,Fe,[rs]],[b+g+y]:[2,Qe,[rs,is],e=>[Is(...e)]],[v]:[1,Oe,[rs]],[I]:[1,je,[rs]],[b+w]:[2,We,[rs,cs],e=>[Ss(...e)]],[w]:[2,He,[rs,cs]],[T]:[2,$e,[rs,cs]],[b+y]:[3,qe,[rs,cs,us],e=>[ys(...e)]],[y]:[3,Ge,[rs,cs,us],e=>Ue(hs(...e))],InvalidCell:[3,Ke],[b+p]:[0,ot,[],()=>[Ts()]],[p]:[0,rt],[C]:[0,it],[b+R]:[1,lt,[fs],e=>[Rs(...e)]],[R]:[1,ct,[fs],e=>Ue(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[u+a+c]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?F(a,0,e):void 0,s,n)})),te(zs)};e.createCheckpoints=Oe,e.createCustomPersister=(e,t,s,n,a,o,[r,i]=[],l=[])=>{let c,d,u,h=0,g=0;Se($e,l,(()=>0)),Se(qe,l,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();re(s)&&re(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(x(c,e.delListener),c=void 0,L),schedule:async(...e)=>(K(we(qe,l),...e),await(async()=>{if(!we($e,l)){for(Ie($e,l,1);!M(d=X(we(qe,l)));)try{await d()}catch(e){o?.(e)}Ie($e,l,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>i),te(L)},e.createIndexes=je,e.createMetrics=He,e.createQueries=Ge,e.createRelationships=Ke,e.createStore=nt,e.defaultSorter=Pe},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),i="type",l="default",c="Listener",d="Result",u="add",h="Has",g="Ids",f="Table",L=f+"s",w=f+g,v="Row",I=v+"Count",S=v+g,y="Sorted"+v+g,T="Cell",R=T+g,p="Value",C=p+"s",b=p+g,m=e=>s+e,V=Math.max,E=Math.min,k=isFinite,M=e=>null==e,x=(e,t,s)=>M(e)?s?.():t(e),D=e=>e==n||e==a,J=e=>t(e)==r,A=e=>Array.isArray(e),F=(e,t,s)=>e.slice(t,s),Q=e=>e.length,z=()=>{},N=(e,t)=>e.includes(t),O=(e,t)=>e.every(t),P=(e,t)=>Q(e)===Q(t)&&O(e,((e,s)=>t[s]===e)),j=(e,t)=>O(e,((s,n)=>0==n||t(e[n-1],s)<=0)),B=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),H=(e,t)=>e.map(t),$=e=>G(e,((e,t)=>e+t),0),q=e=>0==Q(e),G=(e,t,s)=>e.reduce(t,s),K=(e,...t)=>e.push(...t),U=e=>e.pop(),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.keys,ee=Y.isFrozen,te=Y.freeze,se=e=>!M(e)&&x(Z(e),(e=>e==Y.prototype||M(Z(e))),(()=>!0)),ne=(e,t)=>!M(((e,t)=>x(e,(e=>e[t])))(e,t)),ae=(e,t)=>(delete e[t],e),oe=(e,t)=>H(Y.entries(e),(([e,s])=>t(s,e))),re=e=>se(e)&&0==(e=>Q(_(e)))(e),ie=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ce=e=>M(e)||0==ie(e),de=e=>[...e?.values()??[]],ue=e=>e.clear(),he=(e,t)=>e?.forEach(t),ge=(e,t)=>e?.delete(t),fe=e=>new Map(e),Le=e=>[...e?.keys()??[]],we=(e,t)=>e?.get(t),ve=(e,t)=>he(e,((e,s)=>t(s,e))),Ie=(e,t,s)=>M(s)?(ge(e,t),e):e?.set(t,s),Se=(e,t,s)=>(le(e,t)||Ie(e,t,s()),we(e,t)),ye=(e,t,s,n=Ie)=>(oe(t,((t,n)=>s(e,n,t))),ve(e,(s=>ne(t,s)?0:n(e,s))),e),Te=(e,t,s)=>{const n={};return he(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Re=(e,t,s)=>Te(e,(e=>Te(e,t,s)),re),pe=(e,t,s)=>Te(e,(e=>Re(e,t,s)),re),Ce=(e,t)=>{const s=fe();return he(e,((e,n)=>s.set(n,t?.(e)??e))),s},be=e=>Ce(e,Ce),me=e=>Ce(e,be),Ve=(e,t,s,n,a=0)=>x((s?Se:we)(e,t[a],a>Q(t)-2?s:fe),(o=>{if(a>Q(t)-2)return n?.(o)&&Ie(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ce(o)&&Ie(e,t[a]),r})),Ee=e=>{const s=t(e);return D(s)||s==o&&k(e)?s:void 0},ke=(e,t,s,n,a)=>M(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Me=(e,t,s)=>M(s)?e.delValue(t):e.setValue(t,s),xe=e=>new Set(A(e)||M(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=fe(),i=fe(),l=fe(),c=fe(),d=fe(),u=fe(),h=(t,s,...n)=>{const a=Se(u,t,xe);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>x(we(u,t),(n=>{W(q(s)?de(n):s,(t=>{e.delListener(t),ge(n,t)})),ce(n)&&Ie(u,t)})),f=(e,s)=>{Ie(r,e,s),le(i,e)||(Ie(i,e,t()),Ie(c,e,fe()),Ie(d,e,fe()),a(l))},L=e=>{Ie(r,e),Ie(i,e),Ie(c,e),Ie(d,e),g(e),a(l)};return[()=>e,()=>Le(r),e=>ve(i,e),e=>le(i,e),e=>we(r,e),e=>we(i,e),(e,t)=>Ie(i,e,t),f,(t,n,a,r,i)=>{f(t,n);const l=fe(),u=fe(),L=we(c,t),w=we(d,t),v=t=>{const a=s=>e.getCell(n,t,s),c=we(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||A(c)&&A(d)&&P(c,d)||Ie(l,t,[c,d]),!M(i)){const e=we(w,t),s=o(n,t)?i(a,t):void 0;e!=s&&Ie(u,t,s)}},I=e=>{a((()=>{he(l,(([,e],t)=>Ie(L,t,e))),he(u,((e,t)=>Ie(w,t,e)))}),l,u,L,w,e),ue(l),ue(u)};ve(L,v),e.hasTable(n)&&W(e.getRowIds(n),(e=>{le(L,e)||v(e)})),I(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>v(s))),e.addTableListener(n,(()=>I())))},L,e=>n(e,l),()=>ve(u,L),h,g]},Ae=(e,a)=>t(e)==n?t=>t(e):e??(()=>a??s),Fe=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Qe=/^\d+$/,ze=()=>{const e=[];let t=0;return[n=>(n?X(e):null)??s+t++,t=>{Qe.test(t)&&Q(e)<1e3&&K(e,t)}]},Ne=e=>{let t;const[n,a]=ze(),o=fe();return[(a,r,i,l=[],c=(()=>[]))=>{t??=e();const d=n(1);return Ie(o,d,[a,r,i,l,c]),De(Ve(r,i??[s],xe),d),d},(e,n,...a)=>W(((e,t=[s])=>{const n=[],a=(e,s)=>s==Q(t)?K(n,e):null===t[s]?he(e,(e=>a(e,s+1))):W([t[s],null],(t=>a(we(e,t),s+1)));return a(e,0),n})(e,n),(e=>he(e,(e=>we(o,e)[0](t,...n??[],...a))))),e=>x(we(o,e),(([,t,n])=>(Ve(t,n??[s],void 0,(t=>(ge(t,e),ce(t)?1:0))),Ie(o,e),a(e),n))),e=>x(we(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const i=Q(r);i==Q(s)?e(t,...r,...a(r)):M(s[i])?W(n[i]?.(...r)??[],(e=>o(...r,e))):o(...r,s[i])};o()}))]},Oe=Fe((e=>{let t,n,a,o=100,r=fe(),i=fe(),l=1;const c=fe(),d=fe(),[u,h,g]=Ne((()=>F)),f=fe(),L=fe(),w=[],v=[],I=(t,s)=>{l=0,e.transaction((()=>{const[n,a]=we(f,s);he(n,((s,n)=>he(s,((s,a)=>he(s,((s,o)=>ke(e,n,a,o,s[t]))))))),he(a,((s,n)=>Me(e,n,s[t])))})),l=1},S=e=>{Ie(f,e),Ie(L,e),h(d,[e])},y=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??Q(e)),S),T=()=>y(w,Q(w)-o),R=()=>x(t,(()=>{K(w,t),T(),y(v),t=void 0,a=1})),p=()=>{t=U(w),a=1},C=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(l){R();const e=Se(r,t,fe),i=Se(e,s,fe),l=Se(i,n,(()=>[o,void 0]));l[1]=a,l[0]===a&&ce(Ie(i,n))&&ce(Ie(e,s))&&ce(Ie(r,t))&&p(),k()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(l){R();const e=Se(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ce(Ie(i,t))&&p(),k()}})),m=(e="")=>(M(t)&&(t=s+n++,Ie(f,t,[r,i]),J(t,e),r=fe(),i=fe(),a=1),t),V=()=>{q(w)||(((e,...t)=>{e.unshift(...t)})(v,m()),I(0,t),t=U(w),a=1)},E=()=>{q(v)||(K(w,t),t=X(v),I(1,t),a=1)},k=()=>{a&&(h(c),a=0)},D=e=>{const t=m(e);return k(),t},J=(e,t)=>(A(e)&&we(L,e)!==t&&(Ie(L,e,t),h(d,[e])),F),A=e=>le(f,e),F={setSize:e=>(o=e,T(),F),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>ve(L,e),hasCheckpoint:A,getCheckpoint:e=>we(L,e),goBackward:()=>(V(),k(),F),goForward:()=>(E(),k(),F),goTo:e=>{const s=N(w,e)?V:N(v,e)?E:null;for(;!M(s)&&e!=t;)s();return k(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),F),clear:()=>(y(w),y(v),M(t)||S(t),t=void 0,n=0,D(),F),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return te(F.clear())})),Pe=(e,t)=>(e??0)<(t??0)?-1:1,je=Fe((e=>{const t=fe(),n=fe(),[a,o,r]=Ne((()=>S)),[i,l,c,d,u,h,g,,f,L,w,v]=Je(e,fe,(e=>M(e)?s:A(e)?H(e,m):m(e)),a,o),I=(t,s,n)=>{const a=u(t);he(n,((t,n)=>s(n,(s=>he(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},S={setIndexDefinition:(e,s,a,r,i,l=Pe)=>{const c=M(i)?void 0:([e],[t])=>i(e,t);return f(e,s,((s,a,i,d,u,f)=>{let L=0;const w=xe(),v=xe(),I=h(e);if(he(a,(([e,t],s)=>{const n=xe(e),a=xe(t);he(n,(e=>ge(a,e)?ge(n,e):0)),he(n,(e=>{De(w,e),x(we(I,e),(t=>{ge(t,s),ce(t)&&(Ie(I,e),L=1)}))})),he(a,(e=>{De(w,e),le(I,e)||(Ie(I,e,xe()),L=1),De(we(I,e),s),M(r)||De(v,e)}))})),s(),ce(u)||(f?ve(I,(e=>De(v,e))):ve(i,(e=>x(we(d,e),(e=>De(v,e))))),he(v,(e=>{const t=(t,s)=>l(we(u,t),we(u,s),e),s=[...we(I,e)];j(s,t)||(Ie(I,e,xe(B(s,t))),De(w,e))}))),(L||f)&&!M(c)){const t=[...I];j(t,c)||(g(e,fe(B(t,c))),L=1)}L&&o(t,[e]),he(w,(t=>o(n,[e,t])))}),Ae(a),x(r,Ae)),S},delIndexDefinition:e=>(L(e),S),getStore:i,getIndexIds:l,forEachIndex:e=>c(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>Le(h(e)),getSliceRowIds:(e,t)=>de(we(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),S),destroy:v,getListenerStats:()=>({})};return te(S)})),Be=fe([["avg",[(e,t)=>$(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=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:V(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["sum",[e=>$(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ce(s))return;const[r,i,l,c]=a;return o||=M(e),he(n,(([s,n])=>{o||(e=M(s)?i?.(e,n,t++):M(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=M(e))})),o?r(de(s),ie(s)):e},He=Fe((e=>{const t=fe(),[n,a,o]=Ne((()=>v)),[r,i,l,c,d,u,h,,g,f,L,w]=Je(e,z,(e=>isNaN(e)||M(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),v={setMetricDefinition:(e,s,n,o,r,i,l)=>{const c=J(n)?[n,r,i,l]:we(Be,n)??we(Be,"sum");return g(e,s,((s,n,o,r,i,l)=>{const d=u(e),g=ie(r);l||=M(d),s();let f=We(d,g,r,n,c,l);k(f)||(f=void 0),f!=d&&(h(e,f),a(t,[e],f,d))}),Ae(o,1)),v},delMetricDefinition:e=>(f(e),v),getStore:r,getMetricIds:i,forEachMetric:l,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({})};return te(v)})),$e=fe(),qe=fe(),Ge=Fe((e=>{const t=e.createStore,n=t(),a=t(),o=fe(),{addListener:r,callListeners:i,delListener:l}=a,[h,g,L,w,p,,,C,,b,m,V,E,k]=Je(e,(()=>!0),z,r,i),D=(e,t,...s)=>W(s,(s=>De(Se(Se(o,t,fe),e,xe),s))),A=e=>{x(we(o,e),(e=>{ve(e,((e,t)=>he(t,(t=>e.delListener(t))))),ue(e)})),W([a,n],(t=>t.delTable(e)))},N=(e,t,s)=>D(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(t,o,r)=>{C(t,o),A(t);const i=[],l=[[null,[o,null,null,[],fe()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=J(e)?[Q(i)+s,e]:[M(t)?e:t,s=>s(e,t)];return K(i,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=M(s)||J(t)?null:t,a=M(n)?t:s,o=[e,[e,n,J(a)?a:e=>e(a),[],fe()]];return K(l,o),{as:e=>o[0]=e}},where:(e,t,s)=>K(c,J(e)?e:M(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,J(t)?[t,s,n,a]:we(Be,t)??[(e,t)=>t]]];return K(d,o),{as:e=>o[0]=e}},having:(e,t)=>K(u,J(e)?e:s=>s(e)===t)});const h=fe(i);if(ce(h))return P;const g=fe(l);ve(g,((e,[,t])=>x(we(g,t),(({3:t})=>M(e)?0:K(t,e)))));const f=fe(d);let L=n;if(ce(f)&&q(u))L=a;else{N(t,L,a);const e=fe();ve(f,((t,[s,n])=>De(Se(e,s,xe),[t,n])));const s=xe();ve(h,(t=>le(e,t)?0:De(s,t)));const n=fe(),o=(s,n,o,r)=>x(s,(([i,l,c,d])=>{ve(n,((t,[s])=>{const n=Se(i,t,fe),a=we(n,o),l=r?void 0:s;if(a!==l){const s=xe([[a,l]]),r=ie(n);Ie(n,o,l),he(we(e,t),(([e,t])=>{const a=We(d[e],r,n,s,t);d[e]=M(Ee(a))?null:a}))}})),ce(l)||!O(u,(e=>e((e=>d[e]))))?a.delRow(t,c):M(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));D(L,t,L.addRowListener(t,null,((a,r,i,l)=>{const c=[],d=[],u=fe(),h=L.hasRow(t,i);let g=!h;he(s,(e=>{const[s,n,a]=l(t,i,e);K(c,n),K(d,a),g||=s})),ve(e,(e=>{const[s,,n]=l(t,i,e);(g||s)&&Ie(u,e,[n])})),g&&o(Ve(n,c,void 0,(([,e])=>(ge(e,i),ce(e)))),u,i,1),h&&o(Ve(n,d,(()=>{const e={};return he(s,(s=>e[s]=L.getCell(t,i,s))),[fe(),xe(),void 0,e]}),(([,e])=>{De(e,i)})),u,i)})))}N(t,e,L);const w=(s,n,a,r)=>{const i=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,l]=we(g,n),c=o?.(i,s),[d,u]=we(l,s)??[];c!=d&&(M(u)||k(t,u),Ie(l,s,M(c)?null:[c,...E(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...M(n)?[o,s,t]:t===o?[o,s,n]:[we(g,t)?.[0],we(we(g,t)?.[4],s)?.[0],n]);L.transaction((()=>O(c,(e=>e(n)))?ve(h,((e,a)=>ke(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:v}=we(g,null);return L.transaction((()=>E(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,v):(L.delRow(t,a),he(g,(({4:e})=>x(we(e,a),(([,s])=>{k(t,s),Ie(e,a)})))))}))))),P},delQueryDefinition:e=>(A(e),b(e),P),getStore:h,getQueryIds:g,forEachQuery:L,hasQuery:w,getTableId:p,addQueryIdsListener:e=>m((()=>e(P))),delListener:e=>(l(e),P),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return oe({[f]:[1,1],[f+R]:[0,1],[I]:[0,1],[S]:[0,1],[y]:[0,5],[v]:[1,2],[R]:[0,2],[T]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+d+s]=(...t)=>a[e+s](...t))),P[u+d+s+c]=(...e)=>a[u+s+c](...F(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),te(P)})),Ke=Fe((e=>{const t=fe(),n=fe(),a=fe(),o=fe(),[r,i,l]=Ne((()=>R)),[c,d,u,h,g,f,,,L,w,v,I]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>M(e)?void 0:e+s),r,i),S=(e,t,s)=>x(f(e),(([n,,a])=>{if(!le(a,t)){const o=xe();if(g(e)!=T(e))De(o,t);else{let e=t;for(;!M(e)&&!le(o,e);)De(o,e),e=we(n,e)}if(s)return o;Ie(a,t,o)}return we(a,t)})),y=(e,t)=>x(f(e),(([,,e])=>Ie(e,t))),T=e=>we(t,e),R={setRelationshipDefinition:(e,s,r,l)=>(Ie(t,e,r),L(e,s,((t,s)=>{const r=xe(),l=xe(),c=xe(),[d,u]=f(e);he(s,(([t,s],n)=>{M(t)||(De(l,t),x(we(u,t),(e=>{ge(e,n),ce(e)&&Ie(u,t)}))),M(s)||(De(l,s),le(u,s)||Ie(u,s,xe()),De(we(u,s),n)),De(r,n),Ie(d,n,s),ve(we(o,e),(t=>{le(S(e,t),n)&&De(c,t)}))})),t(),he(r,(t=>i(n,[e,t]))),he(l,(t=>i(a,[e,t]))),he(c,(t=>{y(e,t),i(o,[e,t])}))}),Ae(l)),R),delRelationshipDefinition:e=>(Ie(t,e),w(e),R),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:T,getRemoteRowId:(e,t)=>we(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(we(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>M(f(e))?[t]:de(S(e,t,!0)),addRelationshipIdsListener:v,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),r(s,o,[e,t])),delListener:e=>(y(...l(e)??[]),R),destroy:I,getListenerStats:()=>({})};return te(R)})),Ue=e=>[e,e],Xe=()=>[fe(),fe()],Ye=e=>[...e],Ze=([e,t])=>e===t,_e=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>M(e)||!se(e)||re(e)||ee(e)?(s?.(),!1):(oe(e,((s,n)=>{t(s,n)||ae(e,n)})),!re(e)),st=(e,t,s)=>Ie(e,t,we(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,a=!1,r=!1,d=0;const g=fe(),y=fe(),V=fe(),E=fe(),k=fe(),A=fe(),Q=fe(),z=fe(),O=fe(),j=fe(),$=fe(),q=fe(),G=fe(),U=fe(),X=xe(),Y=fe(),Z=fe(),_=fe(),ee=fe(),se=Xe(),de=Xe(),Ve=Xe(),Je=Xe(),Ae=Xe(),Fe=Xe(),Qe=Xe(),Oe=Xe(),je=Xe(),Be=Xe(),We=Xe(),He=Xe(),$e=Xe(),qe=Xe(),Ge=Xe(),Ke=Xe(),at=Xe(),ot=Xe(),rt=Xe(),it=Xe(),lt=Xe(),ct=Xe(),dt=fe(),ut=Xe(),[ht,gt,ft,Lt]=Ne((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>N([i,l],t))))return!1;const t=e[i];return!(!D(t)&&t!=o||(Ee(e[l])!=t&&ae(e,l),0))},vt=(t,s)=>(!e||le($,s)||Gt(s))&&tt(t,((e,t)=>It(s,t,e)),(()=>Gt(s))),It=(e,t,s,n)=>tt(n?s:Rt(s,e,t),((n,a)=>x(St(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),St=(t,s,n,a)=>e?x(we(we($,t),n),(e=>Ee(a)!=e[i]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):M(Ee(a))?Gt(t,s,n,a):a,yt=(e,t)=>tt(t?e:pt(e),((t,s)=>x(Tt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,s)=>t?x(we(G,e),(t=>Ee(s)!=t[i]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):M(Ee(s))?Kt(e,s):s,Rt=(e,t,s)=>(x(we(q,t),(([n,a])=>{he(n,((t,s)=>{ne(e,s)||(e[s]=t)})),he(a,(n=>{ne(e,n)||Gt(t,s,n)}))})),e),pt=e=>(t&&(he(U,((t,s)=>{ne(e,s)||(e[s]=t)})),he(X,(t=>{ne(e,t)||Kt(t)}))),e),Ct=e=>ye($,e,((e,t,s)=>{const n=fe(),a=xe();ye(Se($,t,fe),s,((e,t,s)=>{Ie(e,t,s),x(s[l],(e=>Ie(n,t,e)),(()=>De(a,t)))})),Ie(q,t,[n,a])}),((e,t)=>{Ie($,t),Ie(q,t)})),bt=e=>ye(G,e,((e,t,s)=>{Ie(G,t,s),x(s[l],(e=>Ie(U,t,e)),(()=>De(X,t)))}),((e,t)=>{Ie(G,t),Ie(U,t),ge(X,t)})),mt=e=>re(e)?Es():ps(e),Vt=e=>ye(_,e,((e,t,s)=>Et(t,s)),((e,t)=>zt(t))),Et=(e,t)=>ye(Se(_,e,(()=>(jt(e,1),Ie(Y,e,ze()),Ie(Z,e,fe()),fe()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>Nt(e,t,s))),kt=(e,t,s,n,a)=>ye(Se(t,s,(()=>(Bt(e,s,1),fe()))),n,((t,n,a)=>Mt(e,s,t,n,a)),((n,o)=>Ot(e,t,s,n,o,a))),Mt=(e,t,s,n,a)=>{le(s,n)||Wt(e,t,n,1);const o=we(s,n);a!==o&&(Ht(e,t,n,o,a),Ie(s,n,a))},xt=(e,t,s,n,a)=>x(we(t,s),(t=>Mt(e,s,t,n,a)),(()=>kt(e,t,s,Rt({[n]:a},e,s)))),Dt=e=>re(e)?xs():Cs(e),Jt=e=>ye(ee,e,((e,t,s)=>At(t,s)),((e,t)=>Pt(t))),At=(e,t)=>{le(ee,e)||$t(e,1);const s=we(ee,e);t!==s&&(qt(e,s,t),Ie(ee,e,t))},Ft=(e,t)=>{const[s]=we(Y,e),n=s(t);return le(we(_,e),n)?Ft(e,t):n},Qt=e=>we(_,e)??Et(e,{}),zt=e=>Et(e,{}),Nt=(e,t,s)=>{const[,n]=we(Y,e);n(s),kt(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=we(we(q,e)?.[0],a);if(!M(r)&&!o)return Mt(e,s,n,a,r);const i=t=>{Ht(e,s,t,we(n,t)),Wt(e,s,t,-1),Ie(n,t)};M(r)?i(a):ve(n,i),ce(n)&&(Bt(e,s,-1),ce(Ie(t,s))&&(jt(e,-1),Ie(_,e),Ie(Y,e),Ie(Z,e)))},Pt=e=>{const t=we(U,e);if(!M(t))return At(e,t);qt(e,we(ee,e)),$t(e,-1),Ie(ee,e)},jt=(e,t)=>st(g,e,t),Bt=(e,t,s)=>st(Se(E,e,fe),t,s)&&Ie(V,e,Se(V,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=we(Z,e),o=we(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(Se(y,e,fe),s,n),Ie(a,s,o!=-n?o+n:null),st(Se(Se(k,e,fe),t,fe),s,n)},Ht=(e,t,s,n,a)=>Se(Se(Se(A,e,fe),t,fe),s,(()=>[n,0]))[1]=a,$t=(e,t)=>st(Q,e,t),qt=(e,t,s)=>Se(z,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(K(Se(Se(Se(O,e,fe),t,fe),s,(()=>[])),n),a),Kt=(e,t,s)=>(K(Se(j,e,(()=>[])),t),s),Ut=(e,t,s)=>x(we(we(we(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(hs(e,t,s))])),Xt=e=>x(we(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Ls(e))])),Yt=e=>ce(O)||ce(Ke[e])?0:he(e?me(O):O,((t,s)=>he(t,((t,n)=>he(t,((t,a)=>gt(Ke[e],[s,n,a],t))))))),Zt=e=>ce(j)||ce(at[e])?0:he(e?Ce(j):j,((t,s)=>gt(at[e],[s],t))),_t=(e,t,s,n)=>{if(!ce(e))return gt(t,n,(()=>Te(e))),ve(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=a&&gt(se[e],void 0,t);const s=ce(Be[e]),n=ce($e[e])&&ce(qe[e])&&ce(je[e])&&ce(We[e])&&ce(Fe[e])&&ce(Qe[e])&&ce(Oe[e])&&s&&ce(Ve[e])&&ce(Je[e]),o=ce(Ge[e])&&ce(He[e])&&ce(Ae[e])&&ce(de[e]);if(!n||!o){const t=e?[Ce(g),be(y),Ce(V),be(E),me(k),me(A)]:[g,y,V,E,k,A];if(!n){_t(t[0],Ve[e],Je[e]),he(t[1],((t,s)=>_t(t,Fe[e],Qe[e],[s]))),he(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const n=xe();he(t[3],((t,a)=>{_t(t,je[e],We[e],[a])&&!s&&(gt(Be[e],[a,null]),De(n,a))})),s||he(t[5],((t,s)=>{if(!le(n,s)){const n=xe();he(t,(e=>he(e,(([t,s],a)=>s!==t?De(n,a):ge(e,a))))),he(n,(t=>gt(Be[e],[s,t])))}})),he(t[4],((t,s)=>he(t,((t,n)=>_t(t,$e[e],qe[e],[s,n])))))}if(!o){let s;he(t[5],((t,n)=>{let a;he(t,((t,o)=>{let r;he(t,(([t,i],l)=>{i!==t&&(gt(Ge[e],[n,o,l],i,t,Ut),s=a=r=1)})),r&&gt(He[e],[n,o],Ut)})),a&&gt(Ae[e],[n],Ut)})),s&&gt(de[e],void 0,Ut)}}},ts=e=>{const t=Ts();t!=r&&gt(ot[e],void 0,t);const s=ce(it[e])&&ce(lt[e]),n=ce(ct[e])&&ce(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(z)]:[Q,z];if(s||_t(t[0],it[e],lt[e]),!n){let s;he(t[1],(([t,n],a)=>{n!==t&&(gt(ct[e],[a],n,t,Xt),s=1)})),s&&gt(rt[e],void 0,Xt)}}},ss=(e,...t)=>(As((()=>e(...H(t,m)))),zs),ns=()=>[Te(A,((e,t)=>-1===we(g,t)?null:Te(e,((e,s)=>-1===we(we(E,t),s)?null:Te(e,(([,e])=>e??null),((e,t)=>Ze(t)))),re)),re),Te(z,(([,e])=>e??null),((e,t)=>Ze(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:pe(A,Ye,Ze),invalidCells:pe(O),changedValues:Te(z,Ye,Ze),invalidValues:Te(j),changedTableIds:Te(g),changedRowIds:Re(E),changedCellIds:pe(k),changedValueIds:Te(Q)}),os=()=>pe(_),rs=()=>Le(_),is=e=>Le(we(Z,m(e))),ls=e=>ie(we(_,m(e))),cs=e=>Le(we(_,m(e))),ds=(e,t,s,n=0,a)=>{return H(F(B((o=we(_,m(e)),r=(e,s)=>[M(t)?s:we(e,m(t)),s],H([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Pe(e,t)*(s?-1:1))),n,M(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>Le(we(we(_,m(e)),m(t))),hs=(e,t,s)=>we(we(we(_,m(e)),m(t)),m(s)),gs=()=>Te(ee),fs=()=>Le(ee),Ls=e=>we(ee,m(e)),ws=()=>!ce(_),vs=e=>le(_,m(e)),Is=(e,t)=>le(we(Z,m(e)),m(t)),Ss=(e,t)=>le(we(_,m(e)),m(t)),ys=(e,t,s)=>le(we(we(_,m(e)),m(t)),m(s)),Ts=()=>!ce(ee),Rs=e=>le(ee,m(e)),ps=e=>ss((()=>(e=>tt(e,vt,Gt))(e)?Vt(e):0)),Cs=e=>ss((()=>yt(e)?Jt(e):0)),bs=e=>{try{mt(et(e))}catch{}return zs},ms=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(Ct(t),!ce(_))){const e=os();Es(),ps(e)}})),Vs=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();Js(),xs(),t=!0,bt(e),Cs(s)}})),Es=()=>ss((()=>Vt({}))),ks=e=>ss((e=>le(_,e)?zt(e):0),e),Ms=(e,t)=>ss(((e,t)=>x(we(_,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),xs=()=>ss((()=>Jt({}))),Ds=()=>ss((()=>{Ct({}),e=!1})),Js=()=>ss((()=>{bt({}),t=!1})),As=(e,t)=>{if(-1!=d){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=d&&d++,1==d&&gt(dt,void 0,ns,as),zs),Qs=e=>(d>0&&(d--,0==d&&(s=!ce(A),n=!ce(z),d=1,Yt(1),s&&es(1),Zt(1),n&&ts(1),e?.(ns,as)&&(he(A,((e,t)=>he(e,((e,s)=>he(e,(([e],n)=>ke(zs,t,s,n,e))))))),he(z,(([e],t)=>Me(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),d=-1,Yt(0),s&&es(0),Zt(0),n&&ts(0),gt(ut[1],void 0,ns,as),d=0,s=n=!1,a=ws(),r=Ts(),W([g,y,V,E,k,A,O,Q,z,j],ue))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Re(we(_,m(e))),getTableCellIds:is,getRowCount:ls,getRowIds:cs,getSortedRowIds:ds,getRow:(e,t)=>Te(we(we(_,m(e)),m(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:vs,hasTableCell:Is,hasRow:Ss,hasCell:ys,hasValues:Ts,hasValue:Rs,getTablesJson:()=>_e(_),getValuesJson:()=>_e(ee),getJson:()=>_e([_,ee]),getTablesSchemaJson:()=>_e($),getValuesSchemaJson:()=>_e(G),getSchemaJson:()=>_e([$,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(re(e)?Es:ps)(e),(re(t)?xs:Cs)(t)})),setTables:ps,setTable:(e,t)=>ss((e=>vt(t,e)?Et(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>It(e,t,s)?kt(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return It(e,n,t)&&(e=m(e),kt(e,Qt(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(It(e,t,s,1)){const n=Qt(e);oe(s,((s,a)=>xt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>x(St(e,t,s,J(n)?n(hs(e,t,s)):n),(n=>xt(e,Qt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>ss((()=>yt(e,1)?oe(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ss((e=>x(Tt(e,J(t)?t(Ls(e)):t),(t=>At(e,t)))),e),setTransactionChanges:e=>ss((()=>{oe(e[0],((e,t)=>M(e)?ks(t):oe(e,((e,s)=>M(e)?Ms(t,s):oe(e,((e,n)=>ke(zs,t,s,n,e))))))),oe(e[1],((e,t)=>Me(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Dt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);mt(t),Dt(s)}catch{bs(e)}})),setTablesSchema:ms,setValuesSchema:Vs,setSchema:(e,t)=>ss((()=>{ms(e),Vs(t)})),delTables:Es,delTable:ks,delRow:Ms,delCell:(e,t,s,n)=>ss(((e,t,s)=>x(we(_,e),(a=>x(we(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:xs,delValue:e=>ss((e=>le(ee,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Js,delSchema:()=>ss((()=>{Ds(),Js()})),transaction:As,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>he(_,((t,s)=>e(s,(e=>he(t,((t,s)=>e(s,(e=>ve(t,e))))))))),forEachTableCell:(e,t)=>ve(we(Z,m(e)),t),forEachRow:(e,t)=>he(we(_,m(e)),((e,s)=>t(s,(t=>ve(e,t))))),forEachCell:(e,t,s)=>ve(we(we(_,m(e)),m(t)),s),forEachValue:e=>ve(ee,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let i=ds(e,t,s,n,a);return ht((()=>{const r=ds(e,t,s,n,a);P(r,i)||(i=r,o(zs,e,t,s,n,a,i))}),Be[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Lt(e),zs),delListener:e=>(ft(e),zs),getListenerStats:()=>({}),createStore:nt,addListener:ht,callListeners:gt};return oe({[h+L]:[0,se,[],()=>[ws()]],[L]:[0,de],[w]:[0,Ve],[h+f]:[1,Je,[rs],e=>[vs(...e)]],[f]:[1,Ae,[rs]],[f+R]:[1,Fe,[rs]],[h+f+T]:[2,Qe,[rs,is],e=>[Is(...e)]],[I]:[1,Oe,[rs]],[S]:[1,je,[rs]],[h+v]:[2,We,[rs,cs],e=>[Ss(...e)]],[v]:[2,He,[rs,cs]],[R]:[2,$e,[rs,cs]],[h+T]:[3,qe,[rs,cs,us],e=>[ys(...e)]],[T]:[3,Ge,[rs,cs,us],e=>Ue(hs(...e))],InvalidCell:[3,Ke],[h+C]:[0,ot,[],()=>[Ts()]],[C]:[0,rt],[b]:[0,it],[h+p]:[1,lt,[fs],e=>[Rs(...e)]],[p]:[1,ct,[fs],e=>Ue(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[u+a+c]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?F(a,0,e):void 0,s,n)})),te(zs)};e.createCheckpoints=Oe,e.createCustomPersister=(e,t,s,n,a,o,[r,i]=[],l=[])=>{let c,d,u,h=0,g=0;Se($e,l,(()=>0)),Se(qe,l,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();re(s)&&re(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(x(c,e.delListener),c=void 0,L),schedule:async(...e)=>(K(we(qe,l),...e),await(async()=>{if(!we($e,l)){for(Ie($e,l,1);!M(d=X(we(qe,l)));)try{await d()}catch(e){o?.(e)}Ie($e,l,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>i),te(L)},e.createIndexes=je,e.createMetrics=He,e.createQueries=Ge,e.createRelationships=Ke,e.createStore=nt,e.defaultSorter=Pe},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),s=t(0),r="type",I="default",c="Listener",$="get",i="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",m=h+u,g="Sorted"+h+u,f="Cell",w=f+u,y="Value",T=y+"s",v=y+u,V=Promise,x=isFinite,R=e=>null==e,k=(e,t,l)=>R(e)?l?.():t(e),S=e=>e==o||e==d,P=e=>t(e)==o,A=e=>Array.isArray(e),E=(e,t,l)=>e.slice(t,l),O=e=>e.length,D=async e=>V.all(e),N=e=>{const l=t(e);return S(l)||l==s&&x(e)?l:void 0},G=(e,t)=>e.every(t),L=(e,t)=>e.sort(t),j=(e,t)=>e.forEach(t),M=(e,t=a)=>e.join(t),J=(e,t)=>e.map(t),z=(e,t)=>e.filter(t),W=(e,...t)=>e.push(...t),B=e=>e.pop(),F=(e,...t)=>e.unshift(...t),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),H=_.keys,Q=_.freeze,q=e=>!R(e)&&k(Z(e),(e=>e==_.prototype||R(Z(e))),(()=>!0)),K=(e,t)=>J(_.entries(e),(([e,l])=>t(l,e))),X=e=>O(H(e)),Y=e=>q(e)&&0==X(e),ee=(e,t)=>e?.has(t)??!1,te=e=>[...e?.values()??[]],le=(e,t)=>e?.forEach(t),ae=(e,t)=>e?.delete(t),ne=e=>new Map(e),oe=(e,t)=>e?.get(t),de=(e,t)=>le(e,((e,l)=>t(l,e))),se=(e,t)=>J([...e?.entries()??[]],(([e,l])=>t(l,e))),re=(e,t,l)=>R(l)?(ae(e,t),e):e?.set(t,l),Ie=(e,t,l)=>(ee(e,t)||re(e,t,l()),oe(e,t)),ce=e=>e.toUpperCase(),$e=e=>e.toLowerCase(),ie="a ",ue="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",be="Callback",Ce="Del",he="Deps",me=he+"?: React.DependencyList",ge="doRollback?: DoRollback",fe="actions: () => Return, "+ge,we="export",ye="Id",Te="Invalid",ve="Json",Ve=$e(c),xe="?: ",Re=" | undefined",ke="NonNullable",Se="Partial",Pe="Props",Ae="Provider",Ee=`Registers a ${Ve} that will be called`,Oe="Represents",De="rowId: "+ye,Ne="Schema",Ge="Set",Le=", descending?: boolean, offset?: number, limit?: number",je="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=$e(Je),Be="Execute a "+We+" to make multiple mutations",Fe="Explicitly starts a "+We,Ue="Explicitly finishes a "+We,_e="the end of the "+We,Ze="void",He=" => "+Ze,Qe="WhenSet",qe=" when setting it",Ke=ie+"string serialization of",Xe=" ",Ye="Gets a callback that can ",et="the ",tt=" the schema for",lt=(e=0,t=0)=>`the ${ft[e]}content of`+(t?Xe+Me:a),at=(e=0,t,l=0)=>ht[t]+Xe+lt(e,1)+(l?" when setting it":a),nt=(e,t=0)=>Oe+` a Row when ${t?"s":"g"}etting ${lt()} the '${e}' `+p,ot=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,dt=(e,t)=>`Calls a function for each ${e} in `+t,st=e=>"The props passed to a component that renders "+e,rt=e=>"A function that takes "+e,It=(e,t=0)=>ue+" listening to changes to "+gt[e]+" in "+gt[t],ct=(e,t,l=0)=>Ee+" whenever "+gt[e]+" in "+gt[t]+" change"+(l?a:"s"),$t=e=>`the '${e}' `+p,it=e=>"the specified Row in "+$t(e),ut=(e,t=0)=>ht[t]+` ${lt()} `+$t(e),pt=(e,t=0)=>ht[t]+` ${lt()} `+it(e),bt=(e,t,l=0)=>ht[l]+` the '${t}' Cell for `+it(e),Ct=(e,t=0)=>ht[t]+` the '${e}' Value`,ht=["Gets","Checks existence of","Sets","Deletes","Sets part of",Oe,"Gets "+Ke,"Sets "+Ke,Ee+" whenever",Ye+"set",Ye+"add",Ye+"set part of",Ye+"delete","Renders","Gets "+Ke+tt,"Sets"+tt,"Deletes"+tt],mt=[$,"has","set","del","set","forEach",i,a],gt=[Me,b,et+p+Xe+u,ie+p,et+h+Xe+u,ie+h,et+f+Xe+u,ie+f,"invalid Cell changes",T,et+y+Xe+u,ie+y,"invalid Value changes",et+"sorted "+h+Xe+u,et+f+Xe+u+" anywhere",et+"number of Rows"],ft=[a,"tabular ","keyed value "],wt=e=>new Set(A(e)||R(e)?e:[e]),yt=(e,t)=>e?.add(t),Tt=/[^A-Za-z]+/,vt=/[^A-Za-z0-9]+/,Vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,xt=e=>e.includes(n),Rt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return ee(e,n)?Rt(e,t,l,a+1):(re(e,n,l),n)},kt=e=>e.replace(Vt,((e,t,l)=>{const a=77-O(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),St=e=>e.flat(1e3),Pt=(e,t=0)=>M(J(e.split(vt),((e,l)=>(l>0||t?ce:$e)(E(e,0,1))+E(e,1)))),At=e=>ce(M((e&&!Tt.test(e[0])?e:" "+e).split(vt),"_")),Et=e=>`/** ${e}. */`,Ot=(...e)=>M(z(e,(e=>e)),", "),Dt=(...e)=>"{"+M(e,"; ")+"}",Nt=(...e)=>Dt(...J(e,(e=>"readonly "+e))),Gt=()=>{const e=[ne(),ne(),ne(),ne()],t=ne(),l=ne(),n=e=>{const t=e.indexOf(" as ");return-1!=t?E(e,t+4):e};return[(...e)=>M(St(e),"\n"),(t,l,...a)=>j(a,(a=>j([0,1],(n=>(t??n)==n?yt(Ie(e[n],l,wt),a):0)))),(e,l,n,o=a,d=1)=>Rt(t,e,[l,n,o,d]),(e,t,a)=>Rt(l,e,A(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>oe(l,e)===t?e:Rt(l,e,t),(t=0)=>J([...L(se(e[t],((e,t)=>`import {${M(L(te(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>xt(e)!=xt(t)?xt(e)?-1:1:e>t?1:-1)),a],(e=>e.replace("{React}","React"))),()=>se(t,(([e,t,l,n],o)=>[Et(t),`${n?we+" ":a}type ${o}${l} = ${e};`,a])),()=>se(l,((e,t)=>(e=A(e)?e:[e],W(e,B(e)+";"),[`const ${t} = ${U(e)}`,e,a])))]},Lt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},jt=(e,t,l)=>[t=>K(e,((e,a)=>t(a,Pt(a,1),l(At(a),`'${a}'`)))),(t,a)=>K(e[t],((e,t)=>a(t,e[r],e[I],l(At(t),`'${t}'`),Pt(t,1)))),e=>K(t,((t,a)=>e(a,t[r],t[I],l(At(a),`'${a}'`),Pt(a,1))))],Mt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,s=e(b,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`)))+"}"))),at(1,5)),r=e(b+Qe,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),at(1,5,1)),I=e(p+ye,"keyof "+s,"A "+p+" Id in "+Me),$=`<TId extends ${I}>`,i=e(p,ke+`<${s}[TId]>`,"A "+p+" in "+Me,$),u=e(p+Qe,ke+`<${r}[TId]>`,"A "+p+" in "+Me+qe,$),y=e(h,i+"<TId>[Id]","A "+h+" in a "+p,$),T=e(h+Qe,u+"<TId>[Id]","A "+h+" in a "+p+qe,$),v=e(f+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+f+" Id in a "+h,$),V=e(f,ke+`<${s}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${I}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${I}, CId = ${v}<TId>>`,0),k=e(f+be,`(...[cellId, cell]: ${x}<TId>)`+He,rt(ie+f+" Id, and "+f),$),S=e(h+be,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+He+") "+He,rt(ie+h+" Id, and a "+f+" iterator"),$),P=e(p+f+be,`(cellId: ${v}<TId>, count: number) `+He,rt(ie+f+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${He}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+be,`(...[tableId, forEachRow]: ${A})`+He,rt(ie+p+" Id, and a "+h+" iterator"),a),O=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ue+" returning information about any Cell's changes during a "+We),N=e(b+c,`(${d}, getCellChange: ${D}${Re})`+He,It(1)),G=e(C+c,`(${d})`+He,It(2)),L=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${D}${Re})`+He,It(3)),j=e(p+w+c,`(${d}, tableId: ${I})`+He,It(14,3)),M=e(h+"Count"+c,`(${d}, tableId: ${I})`+He,It(15,3)),J=e(m+c,`(${d}, tableId: ${I})`+He,It(4,3)),z=e(g+c,"("+Ot(d,"tableId: "+I,"cellId: Id"+Re,"descending: boolean","offset: number","limit: number"+Re,"sortedRowIds: Ids")+")"+He,It(13,3)),W=e(h+c,"("+Ot(""+d,"tableId: "+I,De,`getCellChange: ${D}${Re}`)+")"+He,It(5,3)),B=e(w+c,"("+Ot(""+d,"tableId: "+I,De)+")"+He,It(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${De}, cellId: CId, newCell: ${V}<TId, CId> ${Re}, oldCell: ${V}<TId, CId> ${Re}, getCellChange: ${D} ${Re}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,i,u,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(f+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+He,It(7,5)),e(Te+f+c,`(${d}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+He,It(8))]},(t,l)=>{const o=t+": "+l,d=e(T,Dt(...n(((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`))),at(2,5)),s=e(T+Qe,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),at(2,5,1)),r=e(y+ye,"keyof "+d,"A "+y+" Id in "+Me),I=e(y,ke+`<${d}[VId]>`,"A "+y+" Id in "+Me,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Me,`<VId = ${r}>`,0),i=e(y+be,`(...[valueId, value]: ${$})`+He,rt(ie+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ue+" returning information about any Value's changes during a "+We),p=e(T+c,`(${o}, getValueChange: ${u}${Re})`+He,It(9)),b=e(v+c,`(${o})`+He,It(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${I}<VId> ${Re}, oldValue: ${I}<VId> ${Re}, getValueChange: ${u} ${Re}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,I,i,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+He,It(11)),e(Te+y+c,`(${o}, valueId: Id, invalidValues: any[])`+He,It(12))]},(t,l)=>e(Je+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+He,ue+" listening to the completion of a "+We)],Jt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),zt=(e,t=a)=>`fluent(() => ${Jt(e,t)})`,Wt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,Bt=(e,t,n)=>{const[o,s,$,V,x,k,S,A]=Gt(),[E,O,D]=jt(e,t,x),[N,G,L]=Mt($,E,O,D),J=ne(),z=(e=0)=>se(J,(([t,l,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${l} => ${n},`]:[s+d+`(${t}): ${l};`];return e||F(r,Et(o)),W(r,a),r})),B=(e,t,l,n,o,d=a)=>Rt(J,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,s=a,r=a)=>B(mt[e]+t+(4==e?Se:a)+l,d,n,(n==H?zt:Jt)(mt[e]+(4==e?Se:a)+l,s,e?void 0:n),o,r),_=(e,t,l,n=a,o=a,d=1,s=a)=>B(i+e+c,(n?n+", ":a)+Ve+": "+t+(d?", mutator?: boolean":a),ye,Wt(i+e+c,o,d?"mutator":a),l,s),Z=`./${Pt(n)}.d`,H=Pt(n,1),Q=Pt(H),q=[],K=ne();let X=[],ee=[];if(s(1,Z,H,`create${H} as create${H}Decl`),Y(e))s(null,l,b);else{s(0,l,"CellChange"),s(null,l,u);const[e,t,n,o,c,i,y,T,v,V,k,S,A,D,G,L,J,z,B,F,Y,ee,le,ae]=N(Q,H),de=ne();E(((e,t)=>{const l=`<'${e}'>`,a=[$(t+p,o+l,Oe+` the '${e}' `+p),$(t+p+Qe,c+l,Oe+` the '${e}' `+p+qe),$(t+h,i+l,nt(e)),$(t+h+Qe,y+l,nt(e,1)),$(t+f+ye,T+l,`A Cell Id for the '${e}' `+p),$(t+f+be,V+l,rt(`a Cell Id and value from a Row in the '${e}' `+p)),$(t+h+be,k+l,rt(`a Row Id from the '${e}' Table, and a Cell iterator`)),$(t+p+f+be,S+l,rt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];re(de,e,a),s(1,Z,...a)})),s(1,Z,e,t,n,T,A,D,G,L,J,z,B,F,Y,ee,le,ae),X=[e,t,n,T,D,G,L,J,z,B,F,Y,ee,le,de],j([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,at(1,n),t,l))),U(0,a,C,n+je,ot(p,Me)),U(5,a,p,Ze,dt(p,Me),"tableCallback: "+A,"tableCallback as any"),E(((e,t,l)=>{const[n,o,s,r,I,c,$,i]=oe(de,e);j([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],s)=>U(s,t,p,n,ut(e,s),o,l+d))),U(0,t,p+w,u,ot(f,"the whole of "+$t(e)),a,l),U(5,t,p+f,Ze,dt(p+f,"the whole of "+$t(e)),"tableCellCallback: "+i,l+", tableCellCallback as any"),U(0,t,h+"Count","number","Gets the number of Rows in the "+$t(e),a,l),U(0,t,m,u,ot(h,$t(e)),a,l),U(0,t,g,u,ot(h,$t(e),1),"cellId?: "+I+Le,l+", cellId, descending, offset, limit"),U(5,t,h,Ze,dt(h,$t(e)),"rowCallback: "+$,l+", rowCallback as any"),j([[s],[d],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=a,d=a],s)=>U(s,t,h,n,pt(e,s),De+o,l+", rowId"+d))),U(6,t,h,ye+Re,"Add a new Row to "+$t(e),"row: "+r+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+je,ot(f,it(e)),De,l+", rowId"),U(5,t,f,Ze,dt(f,it(e)),De+", cellCallback: "+c,l+", rowId, cellCallback as any"),O(e,((n,o,s,r,I)=>{const c="Map"+Pt(o,1);re(K,o,c);const $=o+(R(s)?Re:a);j([[$],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,s=a],c)=>U(c,t+I,f,o,bt(e,n,c),De+d,l+", rowId, "+r+s))),U(1,t+I,p+f,d,ht[1]+` the '${n}' Cell anywhere in `+$t(e),a,l+", "+r)}))})),U(0,a,b+ve,ve,at(1,6)),U(2,a,b+ve,H,at(1,7),"tablesJson: "+ve,"tables"+ve),_(b,D,at(1,8)+" changes"),_(C,G,ct(2,0,1)),_(p,L,ct(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,J,ct(14,3,1),`tableId: ${n} | null`,"tableId"),_(h+"Count",z,ct(15,3),`tableId: ${n} | null`,"tableId"),_(m,B,ct(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,F,ct(13,3,1),Ot("tableId: TId",`cellId: ${T}<TId>`+Re,"descending: boolean","offset: number","limit: number"+Re),Ot("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,Y,ct(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,ee,ct(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,le,ct(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>oe(de,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Te+f,ae,Ee+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...te(K)),W(q,".set"+b+Ne+"({",St(E(((e,t,l)=>[`[${l}]: {`,...O(e,((e,t,l,n)=>`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(P(l)?x(At(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(Y(t))s(null,l,T);else{const[e,t,n,o,c,$,i,u,p]=G(Q,H);s(1,Z,e,t,n,c,$,i,u,p),ee=[e,t,n,$,i,u],j([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,T,e,at(2,n),t,l))),U(0,a,v,n+je,ot(y,Me)),U(5,a,y,"void",dt(y,Me),"valueCallback: "+c,"valueCallback as any"),D(((e,t,l,n,o)=>{const s="Map"+Pt(t,1);re(K,t,s),j([[t],[d],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,l,d=a],s)=>U(s,o,y,t,Ct(e,s),l,n+d)))})),U(0,a,T+ve,ve,at(2,6)),U(2,a,T+ve,H,at(2,7),"valuesJson: "+ve,"values"+ve),_(T,$,at(2,8)+" changes"),_(v,i,ct(10,0,1)),_(y,u,ct(11,0),`valueId: ${n} | null`,"valueId"),_(Te+y,p,Ee+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...te(K)),s(0,l,"ValueChange"),W(q,".set"+T+Ne+"({",D(((e,t,l,n)=>[`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(P(l)?x(At(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${T}]`,at(0,0)),U(2,a,"Content",H,at(0,2),`[tables, values]: [${b}, ${T}]`,"[tables, values]"),U(2,a,ze,H,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),de(K,((e,t)=>$(t,`(cell: ${e}${Re}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,l,"DoRollback",ye,"IdOrNull",ve,"Store",ze),s(0,l,"Get"+ze,"GetTransactionLog"),U(0,a,ve,ve,at(0,6)),U(2,a,ve,H,at(0,7),"tablesAndValuesJson: "+ve,"tablesAndValuesJson"),U(7,a,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,a,"start"+Je,H,Fe),U(7,a,"finish"+Je,H,Ue,ge,"doRollback");const le=L(Q,H);return _("Start"+Je,le,Ee+" just before the start of the "+We,a,a,0),_("WillFinish"+Je,le,Ee+" just before "+_e,a,a,0),_("DidFinish"+Je,le,Ee+" just after "+_e,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",ht[0]+" the underlying Store object"),s(1,l,"createStore"),s(1,Z,H,`create${H} as create${H}Decl`,le),x("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...z(1),"}"]),[o(...k(0),...S(),we+" interface "+H+" {",...z(0),"}",a,Et(`Creates a ${H} object`),we+" function create"+H+"(): "+H+";"),o(...k(1),we+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),X,ee]},Ft=e=>$+e,Ut=e=>Ot(Ft(e),Ft(e)+he),_t="debugIds?: boolean",Zt="debugIds={debugIds}",Ht="then"+me,Qt="Parameter",qt=": (parameter: "+Qt+", store: Store) => ",Kt="const contextValue = useContext(Context);",Xt=", based on a parameter",Yt=": ",el="<"+Qt+",>",tl=Qt+"ized"+be+"<"+Qt+">",ll="rowId",al="rowId={rowId}",nl=", separator, debugIds",ol="separator?: ReactElement | string",dl="then?: (store: Store",sl=Ot(dl+")"+He,Ht),rl="then, then"+he,Il=ll+Yt+ye,cl="View",$l=(e,...t)=>Ot(...t,Ve+": "+e,Ve+me,"mutator?: boolean"),il=(...e)=>Ot(...e,Ve,Ve+he,"mutator"),ul=(e,t,n,o,d)=>{const[s,r,I,$,i,V,x,k]=Gt(),[S,P,A]=jt(e,t,i),E=`./${Pt(n)}.d`,O=`./${Pt(n)}-ui-react.d`,D="tinybase/ui-react",N=Pt(n,1),G=Pt(N),L=N+"Or"+N+ye,j=G+"Or"+N+ye,J=G+`={${G}}`,z=ne(),B=(e,t,l,n,o,d=a)=>(r(1,O,e+" as "+e+"Decl"),Rt(z,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>B("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,s=a,I=a,c=a)=>(r(1,D,`use${t} as use${t}Core`),U(e,Ot(o,K,I),l,ee+`(${j}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,s)),Z=(e,t,l,a)=>B(e,t,1,l,a),H=(e=0)=>se(z,(([t,l,n,o,d],s)=>{const r=e?[we+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[we+` function ${s}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||F(r,Et(o)),W(r,a),r}));r(null,l,ye,"Store",be,Qt+"ized"+be),r(0,D,"ComponentReturnType"),r(1,D,"useCellIds"),r(null,D,"ExtraProps"),r(0,E,N);const Q=I(L,N+" | "+ye,`Used when you need to refer to a ${N} in a React hook or component`),q=I(Ae+Pe,Nt(G+xe+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Ae} component, so that a `+N+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,O,Q,q);const K=j+xe+Q;i("{createContext, useContext, useMemo}","React"),i("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+me,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const X=U(N,"id?: Id",N+Re,["{",Kt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Ae} component context`),ee=$("useHook",j+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${X}(${j} as Id);`,`return hook(...preParams, ((${j} == null || typeof ${j} == 'string')`,`? ${G} : ${j})?.getStore(), ...postParams)`]),te=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=$("wrap",Ot("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),ae=$("useCustomOrDefaultCellIds",Ot("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${j}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${j}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),de=i("NullComponent","() => null");if(!Y(e)){const[e,t,n,d,s,i,y,T,v,V,x,k,A,D,L]=o;r(null,E,e,t,n,s,i,y,T,v,V,x,k,A,D),r(0,E,d),r(1,E,N),r(null,l,u,"IdOrNull");const j=$("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+nl+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${le}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",al,"customCellIds={customCellIds}",J,Zt,"/>","))",nl,", tableId,",");"]),z=$("getDefaultTableComponent","tableId: Id",M(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",M(S(((e,t,l)=>`tableId == ${l} ? ${M(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,at(1,0)+pe);const B=_(C,C,n+je,ot(p,Me)+pe);_(Ge+b+be,Ge+b+be,tl,at(1,9)+Xt,Ot(Ft(b)+qt+t,Ft(b)+me),Ut(b),el,Ot(dl,`tables: ${t})`+He,Ht),rl),_(Ce+b+be,Ce+b+be,be,at(1,12),a,a,a,sl,rl);const F=I(f+Pe,Nt("tableId?: TId","rowId: Id","cellId?: CId",G+xe+N,_t),st(ie+f),`<TId extends ${n}, CId extends ${d}<TId>>`),U=I(h+Pe,Nt("tableId?: TId","rowId: Id",G+xe+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,ol,_t),st(ie+h),`<TId extends ${n}>`),H=I(p+Pe,Nt("tableId?: TId",G+xe+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),st(ie+p),`<TId extends ${n}>`),Q=I("Sorted"+p+Pe,Nt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+xe+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),st(ie+"sorted "+p),`<TId extends ${n}>`),q=I(b+Pe,Nt(G+xe+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,ol,_t),st(lt(1,1)));r(1,O,q,H,Q,U,F),Z(b+cl,"{"+G+", tableComponents, getTableComponentProps"+nl+"}: "+q,[le+`(${B}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+z+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${te}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Zt,"/>;","}), separator)"],at(1,13)+pe),S(((e,t,l)=>{const[n,o,d,s,I]=oe(L,e);r(null,E,n,o,d,s,I),_(t+p,p,n,ut(e)+pe,a,l),_(t+p+w,p+w,u,ot(f,"the whole of "+$t(e))+pe,a,l);const c=_(t+m,m,u,ot(h,$t(e))+pe,a,l),$=_(t+g,g,u,ot(h,$t(e),1)+pe,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,pt(e)+pe,Il,Ot(l,ll)),_(t+w,w,I+je,ot(f,it(e))+pe,Il,Ot(l,ll)),_(Ge+t+p+be,Ge+p+be,tl,ut(e,9)+Xt,Ot(Ft(p)+qt+o,Ft(p)+me),Ot(l,Ut(p)),el,Ot(dl,`table: ${o})`+He,Ht),rl),_(Ce+t+p+be,Ce+p+be,be,ut(e,12),a,l,a,sl,rl),_(Ge+t+h+be,Ge+h+be,tl,pt(e,9)+Xt,Ot(Il,Ft(h)+qt+s,Ft(h)+me),Ot(l,ll,Ut(h)),el,Ot(dl,`row: ${s})`+He,Ht),rl),_("Add"+t+h+be,"Add"+h+be,tl,pt(e,10)+Xt,Ot(Ft(h)+qt+s,Ft(h)+me),Ot(l,Ut(h)),el,"then?: ("+Ot(Il+Re,"store: Store","row: "+s+")"+He,"then"+me)+", reuseRowIds?: boolean",rl+", reuseRowIds"),_(Ge+t+Se+h+be,Ge+Se+h+be,tl,pt(e,11)+Xt,Ot(Il,Ft(Se+h)+qt+s,Ft(Se+h)+me),Ot(l,ll,Ut(Se+h)),el,Ot(dl,`partialRow: ${s})`+He,Ht),rl),_(Ce+t+h+be,Ce+h+be,be,pt(e,12),Il,Ot(l,ll),a,sl,rl);const i=Z(t+h+cl,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+nl+`}: ${U}<'${e}'>`,[le+`(${ae}(customCellIds, `+l+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,al,"cellId={cellId}",J,Zt,"/>;","})"+nl+", rowId)"],pt(e,13)+pe);Z(t+"Sorted"+p+cl,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,j+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${l}, ${i});`,ut(e,13)+", sorted"+pe),Z(t+p+cl,`props: ${H}<'${e}'>`,j+"(props, "+c+`(props.${G}), ${l}, ${i});`,ut(e,13)+pe),P(e,((n,o,d,s,I)=>{const c="Map"+Pt(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+f,f,o+(R(d)?Re:a),bt(e,n)+pe,Il,Ot(l,ll,s));_(Ge+t+I+f+be,Ge+f+be,tl,bt(e,n,9)+Xt,Ot(Il,Ft(f)+qt+o+" | "+c,Ft(f)+me),Ot(l,ll,s,Ut(f)),el,Ot(dl,`cell: ${o} | ${c})`+He,Ht),rl),_(Ce+t+I+f+be,Ce+f+be,be,bt(e,n,12),Ot(Il,"forceDel?: boolean"),Ot(l,ll,s,"forceDel"),a,sl,rl),Z(t+I+f+cl,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],bt(e,n,13)+pe)}))}));const K=M(S((e=>oe(L,e)?.[4]??a))," | ");_(b+c,b+c,Ze,at(1,8)+" changes",$l(s),il()),_(C+c,C+c,Ze,ct(2,0,1),$l(i),il()),_(p+c,p+c,Ze,ct(3,0),$l(y,`tableId: ${n} | null`),il("tableId")),_(p+w+c,p+w+c,Ze,ct(14,3,1),$l(T,`tableId: ${n} | null`),il("tableId")),_(m+c,m+c,Ze,ct(4,3,1),$l(V,`tableId: ${n} | null`),il("tableId")),_(g+c,g+c,Ze,ct(13,3,1),$l(x,`tableId: ${n} | null`,"cellId: "+K+Re,"descending: boolean","offset: number","limit: number"+Re),il("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Ze,ct(5,3),$l(k,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(w+c,w+c,Ze,ct(6,5,1),$l(A,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(f+c,f+c,Ze,ct(7,5),$l(D,`tableId: ${n} | null`,ll+": IdOrNull",`cellId: ${K} | null`),il("tableId",ll,"cellId"))}if(!Y(t)){const[e,t,l,n,o,s]=d;r(null,E,...d),r(1,E,N);const i=$("getDefaultValueComponent","valueId: Id",M(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(T,T,e,at(2,0)+pe);const u=_(v,v,l+je,ot(y,Me)+pe);_(Ge+T+be,Ge+T+be,tl,at(2,9)+Xt,Ot(Ft(T)+qt+t,Ft(T)+me),Ut(T),el,Ot(dl,`values: ${t})`+He,Ht),rl),_(Ge+Se+T+be,Ge+Se+T+be,tl,at(2,11)+Xt,Ot(Ft(Se+T)+qt+t,Ft(Se+T)+me),Ut(Se+T),el,Ot(dl,`partialValues: ${t})`+He,Ht),rl),_(Ce+T+be,Ce+T+be,be,at(2,12),a,a,a,sl,rl);const p=I(y+Pe,Nt("valueId?: VId",G+xe+N,_t),st("a Value"),`<VId extends ${l}>`),b=I(T+Pe,Nt(G+xe+N,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,ol,_t),st(lt(2,1)));r(1,O,b,p),Z(T+cl,"{"+G+", valueComponents, getValueComponentProps"+nl+"}: "+b,[le+`(${u}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,Zt,"/>;","}), separator)"],at(2,13)+pe),A(((e,t,l,n,o)=>{const d="Map"+Pt(t,1);r(0,E,d),r(1,E,d);const s=_(o+y,y,t,Ct(e)+pe,a,n);_(Ge+o+y+be,Ge+y+be,tl,Ct(e,9)+Xt,Ot(Ft(y)+qt+t+" | "+d,Ft(y)+me),Ot(n,Ut(y)),el,Ot(dl,`value: ${t} | ${d})`+He,Ht),rl),_(Ce+o+y+be,Ce+y+be,be,Ct(e,12),a,n,a,sl,rl),Z(o+y+cl,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],Ct(e,13)+pe)})),_(T+c,T+c,Ze,at(2,8)+" changes",$l(n),il()),_(v+c,v+c,Ze,ct(10,0,1),$l(o),il()),_(y+c,y+c,Ze,ct(11,0),$l(s,`valueId: ${l} | null`),il("valueId"))}return Z(Ae,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",Kt,"return (","<Context."+Ae,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Ae}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...x(),...H(0)),s(...V(1),...k(),...H(1))]},pl=(e,t,l)=>{if(Y(e)&&Y(t))return[a,a,a,a];const[n,o,d,s]=Bt(e,t,l);return[n,o,...ul(e,t,l,d,s)]},bl=JSON.parse,Cl="prettier/",hl=Cl+"plugins/",ml={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},gl=Lt((e=>{const t=()=>{const t=bl(e.getTablesSchemaJson());return!Y(t)||G(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ne();if(G(a,(t=>G(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=Ie(n,a,(()=>[N(o),ne(),[0],0])),[s,r,[I]]=d,c=Ie(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),re(r,o,c),d[3]++,s==N(o)})))))return t[l]={},le(n,(([e,,[,n],o],d)=>{t[l][d]={[r]:e,...o==O(a)?{[I]:n}:{}}})),1}))?t:{}},l=()=>{const t=bl(e.getValuesSchemaJson());return Y(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:N(l)}})),t},a=e=>pl(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(Cl+"standalone")).format,W(l,await import(hl+"estree"),await import(hl+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>kt(await n(e,{...ml,plugins:l,filepath:"_."+t[a]})))))};return Q({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:O(e.getValueIds()),jsonLength:O(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=gl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,g="Row",m=g+b,f="Sorted"+g+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),L=e=>e.length,N=async e=>V.all(e),D=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},G=(e,l)=>e.every(l),j=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.keys,q=_.freeze,K=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),X=(e,l)=>J(_.entries(e),(([e,t])=>l(t,e))),Y=e=>L(Q(e)),ee=e=>K(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>A(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t)=>(le(e,l)||Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Count",ge="Del",me="Deps",fe=me+"?: React.DependencyList",we="doRollback?: DoRollback",Te="actions: () => Return, "+we,ye="export",ve="Id",xe="Invalid",Ve="Json",Re=ue($),Ae="?: ",ke=" | undefined",Se="NonNullable",Pe="Partial",Oe="Props",Ee="Provider",Le=`Registers a ${Re} that will be called`,Ne="Represents",De="rowId: "+ve,Ge="Schema",je="Set",He=", descending?: boolean, offset?: number, limit?: number",Me="[]",Je="the Store",ze="Transaction",We=ze+"Changes",Be=ue(ze),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,t=0)=>nl(t)+`the ${yl[e]}content of`+(l?el+Je:a),ol=(e=0,l,t=0,n=0)=>fl[l]+el+nl(n)+dl(e,1)+(t?" when setting it":a),sl=(e,l=0)=>Ne+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+p,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,t=0,n=0)=>Le+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(t?a:"s"),bl=e=>`the '${e}' `+p,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>fl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>fl[l]+` ${dl(0,0,t)} `+pl(e),gl=(e,l,t=0,a=0)=>fl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),ml=(e,l=0,t=0)=>fl[l]+el+nl(t)+`the '${e}' Value`,fl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ne,"Gets "+Ye,"Sets "+Ye,Le+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],wl=[c,"has","set","del","set","forEach",u,a],Tl=[Je,C,tl+p+el+b,ie+p,tl+g+el+b,ie+g,tl+w+el+b,ie+w,"invalid Cell changes",v,tl+y+el+b,ie+y,"invalid Value changes",tl+"sorted "+g+el+b,tl+w+el+b+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[a,"tabular ","keyed value "],vl=e=>new Set(O(e)||A(e)?e:[e]),xl=(e,l)=>e?.add(l),Vl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(n),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-L(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>M(J(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(E(e,0,1))+E(e,1)))),Ll=e=>ce(M((e&&!Vl.test(e[0])?e:" "+e).split(Rl),"_")),Nl=e=>`/** ${e}. */`,Dl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",jl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),t=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(Ol(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?xl($e(e[n],t,vl),a):0)))),(e,t,n,d=a,o=1)=>Sl(l,e,[t,n,d,o]),(e,l,a)=>Sl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>oe(t,e)===l?e:Sl(t,e,l),(l=0)=>J([...j(re(e[l],((e,l)=>`import {${M(j(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,t,n],d)=>[Nl(l),`${n?ye+" ":a}type ${d}${t} = ${e};`,a])),()=>re(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Ml=e=>{const l=new WeakMap;return t=>(l.has(t)||l.set(t,e(t)),l.get(t))},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Ll(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[r],e[I],t(Ll(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[r],l[I],t(Ll(a),`'${a}'`),El(a,1))))],zl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),ol(1,5)),r=e(C+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),I=e(p+ve,"keyof "+s,"A "+p+" Id in "+Je),c=`<TId extends ${I}>`,u=e(p,Se+`<${s}[TId]>`,"A "+p+" in "+Je,c),b=e(p+Ke,Se+`<${r}[TId]>`,"A "+p+" in "+Je+Xe,c),y=e(g,u+"<TId>[Id]","A "+g+" in a "+p,c),v=e(g+Ke,b+"<TId>[Id]","A "+g+" in a "+p+Xe,c),x=e(w+ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+g,c),V=e(w,Se+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+g,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+g,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${R}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(g+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+g+" Id, and a "+w+" iterator"),c),P=e(p+w+Ce,`(cellId: ${x}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+p+" Id, and a "+g+" iterator"),a),L=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),D=e(i+C+$,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(C+$,`(${o}, getCellChange: ${N}${ke})`+qe,ul(1)),j=e(h+$,`(${o})`+qe,ul(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${N}${ke})`+qe,ul(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(g+"Count"+$,`(${o}, tableId: ${I})`+qe,ul(15,3)),U=e(m+$,`(${o}, tableId: ${I})`+qe,ul(4,3)),_=e(f+$,"("+Dl(o,"tableId: "+I,"cellId: Id"+ke,"descending: boolean","offset: number","limit: number"+ke,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(i+g+$,"("+Dl(""+o,"tableId: "+I,De,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(g+$,"("+Dl(""+o,"tableId: "+I,De,`getCellChange: ${N}${ke}`)+")"+qe,ul(5,3)),q=e(T+$,"("+Dl(""+o,"tableId: "+I,De)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, newCell: ${V}<TId, CId> ${ke}, oldCell: ${V}<TId, CId> ${ke}, getCellChange: ${N} ${ke}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(xe+w+$,`(${o}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),ol(2,5)),s=e(v+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(y+ve,"keyof "+o,"A "+y+" Id in "+Je),I=e(y,Se+`<${o}[VId]>`,"A "+y+" Id in "+Je,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Je,`<VId = ${r}>`,0),u=e(y+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(i+v+$,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${ke})`+qe,ul(9)),h=e(x+$,`(${d})`+qe,ul(10)),g=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${ke}, oldValue: ${I}<VId> ${ke}, getValueChange: ${b} ${ke}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,g,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+qe,ul(11)),e(xe+y+$,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(ze+$,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Bl=(e,l=a)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,Ul=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Hl(),[E,L,N]=Jl(e,l,R),[D,G,j]=zl(c,E,L,N),J=de(),z=(e=0)=>re(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Nl(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Sl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(wl[e]+l+(4==e?Pe:a)+t,o,n,(n==Q?Bl:Wl)(wl[e]+(4==e?Pe:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+Re+": "+l+(o?", mutator?: boolean":a),ve,Fl(u+e+$,d,o?"mutator":a),t,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,N,G,j,J,z,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=D(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,Ne+` the '${e}' `+p),c(l+p+Ke,$+t,Ne+` the '${e}' `+p+Xe),c(l+g,u+t,sl(e)),c(l+g+Ke,y+t,sl(e,1)),c(l+w+ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+Ce,V+t,cl(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+g+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+Ce,S+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,N,G,j,J,z,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,l,n,v,N,G,j,J,z,B,F,ee,le,ae,ne,se,re,$e,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,ol(1,n),l,t))),U(0,a,h,n+Me,rl(p,Je)),U(5,a,p,Qe,Il(p,Je),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=oe(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,Cl(e,s),d,t+o))),U(0,l,p+T,b,rl(w,"the whole of "+bl(e)),a,t),U(5,l,p+w,Qe,Il(p+w,"the whole of "+bl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,g+he,"number","Gets the number of Rows in the "+bl(e),a,t),U(0,l,m,b,rl(g,bl(e)),a,t),U(0,l,f,b,rl(g,bl(e),1),"cellId?: "+I+He,t+", cellId, descending, offset, limit"),U(5,l,g,Qe,Il(g,bl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,g,n,hl(e,s),De+d,t+", rowId"+o))),U(6,l,g,ve+ke,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+Me,rl(w,pl(e)),De,t+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),De+", cellCallback: "+$,t+", rowId, cellCallback as any"),L(e,((n,d,s,r,I)=>{const $="Map"+El(d,1);Ie(X,d,$);const c=d+(A(s)?ke:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),De+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,fl[1]+` the '${n}' Cell anywhere in `+bl(e),a,t+", "+r)}))})),U(0,a,C+Ve,Ve,ol(1,6)),U(2,a,C+Ve,Q,ol(1,7),"tablesJson: "+Ve,"tables"+Ve),_(i+C,N,ol(1,8,0,1)+" changes"),_(C,G,ol(1,8)+" changes"),_(h,j,il(2,0,1)),_(i+p,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,il(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>oe(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(g+he,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,ae,il(13,3,1),Dl("tableId: TId",`cellId: ${v}<TId>`+ke,"descending: boolean","offset: number","limit: number"+ke),Dl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+g,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>oe(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>oe(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(xe+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...te(X)),W(K,".set"+C+Ge+"({",Ol(E(((e,l,t)=>[`[${t}]: {`,...L(e,((e,l,t,n)=>`[${n}]: {[${R(Ll(r),`'${r}'`)}]: ${R(Ll(l),`'${l}'`)}${A(t)?a:`, [${R(Ll(I),`'${I}'`)}]: `+(P(t)?R(Ll(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(ee(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=G(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),le=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,ol(2,n),l,t))),U(0,a,x,n+Me,rl(y,Je)),U(5,a,y,"void",Il(y,Je),"valueCallback: "+$,"valueCallback as any"),N(((e,l,t,n,d)=>{const s="Map"+El(l,1);Ie(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,ml(e,s),t,n+o)))})),U(0,a,v+Ve,Ve,ol(2,6)),U(2,a,v+Ve,Q,ol(2,7),"valuesJson: "+Ve,"values"+Ve),_(i+v,c,ol(2,8,0,1)+" changes"),_(v,u,ol(2,8)+" changes"),_(x,b,il(10,0,1)),_(i+y,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(xe+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...te(X)),s(0,t,"ValueChange"),W(K,".set"+v+Ge+"({",N(((e,l,t,n)=>[`[${n}]: {[${R(Ll(r),`'${r}'`)}]: ${R(Ll(l),`'${l}'`)}${A(t)?a:`, [${R(Ll(I),`'${I}'`)}]: `+(P(t)?R(Ll(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,ol(0,0)),U(2,a,"Content",Q,ol(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(2,a,We,Q,`Applies a set of ${We} to the Store`,"transactionChanges: "+We,"transactionChanges"),se(X,((e,l)=>c(l,`(cell: ${e}${ke}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",ve,"IdOrNull",Ve,"Store",We),s(0,t,"Get"+We,"GetTransactionLog"),U(0,a,Ve,Ve,ol(0,6)),U(2,a,Ve,Q,ol(0,7),"tablesAndValuesJson: "+Ve,"tablesAndValuesJson"),U(7,a,Be,"Return",Fe,Te,"actions, doRollback","<Return>"),U(7,a,"start"+ze,Q,Ue),U(7,a,"finish"+ze,Q,_e,we,"doRollback");const ae=j(q,Q);return _("Start"+ze,ae,Le+" just before the start of the "+Be,a,a,0),_("WillFinish"+ze,ae,Le+" just before "+Ze,a,a,0),_("DidFinish"+ze,ae,Le+" just after "+Ze,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+Je,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",fl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,ae),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),ye+" interface "+Q+" {",...z(0),"}",a,Nl(`Creates a ${Q} object`),ye+" function create"+Q+"(): "+Q+";"),d(...k(1),ye+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>c+e,Zl=e=>Dl(_l(e),_l(e)+me),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+fe,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Dl(It+")"+qe,Kl),ct="then, then"+me,ut=dt+tt+ve,it="View",bt=(e,...l)=>Dl(...l,Re+": "+e,Re+fe,"mutator?: boolean"),pt=(...e)=>Dl(...e,Re,Re+me,"mutator"),Ct=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Hl(),[O,E,L]=Jl(e,l,R),N=`./${El(n)}.d`,D=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),H=El(j),J=j+"Or"+j+ve,z=H+"Or"+j+ve,B=H+`={${H}}`,U=de(),_=(e,l,t,n,d,o=a)=>(c(1,D,e+" as "+e+"Decl"),Sl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Dl(d,le,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,t,n,d,o],s)=>{const r=e?[ye+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[ye+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Nl(d)),W(r,a),r}));c(null,t,ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=u(J,j+" | "+ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=u(Ee+Oe,jl(H+Ae+j,H+`ById?: {[${H}Id: Id]: ${j}}`),`Used with the ${Ee} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,Y);const le=z+Ae+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${j}?, {[${H}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+fe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+ke,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ee} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=V("wrap",Dl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=V("useCustomOrDefaultCellIds",Dl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!ee(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,L,G,J,z,W,F,U,_]=d;c(null,N,e,l,n,I,y,v,x,R,k,S,P,L,G,J,z,W,U,F),c(0,N,r),c(1,N,j),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",B,ql,"/>","))",st,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,ol(1,0,0,1)+pe),Q(C,C,e,ol(1,0)+pe);const Y=Q(h,h,n+Me,rl(p,Je)+pe);Q(je+C+Ce,je+C+Ce,nt,ol(1,9)+lt,Dl(_l(C)+Yl+l,_l(C)+fe),Zl(C),at,Dl(It,`tables: ${l})`+qe,Kl),ct),Q(ge+C+Ce,ge+C+Ce,Ce,ol(1,12),a,a,a,$t,ct);const ee=u(w+Oe,jl("tableId?: TId","rowId: Id","cellId?: CId",H+Ae+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(g+Oe,jl("tableId?: TId","rowId: Id",H+Ae+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+g),`<TId extends ${n}>`),te=u(p+Oe,jl("tableId?: TId",H+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Oe,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+p),`<TId extends ${n}>`),de=u(C+Oe,jl(H+Ae+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,D,de,te,ae,le,ee),q(C+it,"{"+H+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,t)=>{const[n,d,r,I,$]=oe(_,e);c(null,N,n,d,r,I,$),Q(i+l+p,i+p,o,Cl(e,0,1)+pe,a,t),Q(l+p,p,n,Cl(e)+pe,a,t),Q(l+p+T,p+T,b,rl(w,"the whole of "+bl(e))+pe,a,t),Q(l+g+he,g+he,s,"Gets the number of Rows in "+bl(e)+pe,a,t);const u=Q(l+m,m,b,rl(g,bl(e))+pe,a,t),C=Q(l+f,f,b,rl(g,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+g,i+g,o,hl(e,0,1)+pe,ut,Dl(t,dt)),Q(l+g,g,r,hl(e)+pe,ut,Dl(t,dt)),Q(l+T,T,$+Me,rl(w,pl(e))+pe,ut,Dl(t,dt)),Q(je+l+p+Ce,je+p+Ce,nt,Cl(e,9)+lt,Dl(_l(p)+Yl+d,_l(p)+fe),Dl(t,Zl(p)),at,Dl(It,`table: ${d})`+qe,Kl),ct),Q(ge+l+p+Ce,ge+p+Ce,Ce,Cl(e,12),a,t,a,$t,ct),Q(je+l+g+Ce,je+g+Ce,nt,hl(e,9)+lt,Dl(ut,_l(g)+Yl+I,_l(g)+fe),Dl(t,dt,Zl(g)),at,Dl(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+g+Ce,"Add"+g+Ce,nt,hl(e,10)+lt,Dl(_l(g)+Yl+I,_l(g)+fe),Dl(t,Zl(g)),at,"then?: ("+Dl(ut+ke,"store: Store","row: "+I+")"+qe,"then"+fe)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(je+l+Pe+g+Ce,je+Pe+g+Ce,nt,hl(e,11)+lt,Dl(ut,_l(Pe+g)+Yl+I,_l(Pe+g)+fe),Dl(t,dt,Zl(Pe+g)),at,Dl(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+g+Ce,ge+g+Ce,Ce,hl(e,12),ut,Dl(t,dt),a,$t,ct);const h=q(l+g+it,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,ot,"cellId={cellId}",B,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+p+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,Cl(e,13)+", sorted"+pe),q(l+p+it,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,Cl(e,13)+pe),E(e,((n,d,s,r,I)=>{const $="Map"+El(d,1);c(0,N,$),c(1,N,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,a,Dl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+pe,ut,Dl(t,dt,r));const u=Q(l+I+w,w,d+(A(s)?ke:a),gl(e,n)+pe,ut,Dl(t,dt,r));Q(je+l+I+w+Ce,je+w+Ce,nt,gl(e,n,9)+lt,Dl(ut,_l(w)+Yl+d+" | "+$,_l(w)+fe),Dl(t,dt,r,Zl(w)),at,Dl(It,`cell: ${d} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,gl(e,n,12),Dl(ut,"forceDel?: boolean"),Dl(t,dt,r,"forceDel"),a,$t,ct),q(l+I+w+it,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+pe)}))}));const re=M(O((e=>oe(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,Qe,ol(1,8,0,1)+" changes",bt(I),pt()),Q(C+$,C+$,Qe,ol(1,8)+" changes",bt(y),pt()),Q(h+$,h+$,Qe,il(2,0,1),bt(v),pt()),Q(i+p+$,i+p+$,Qe,il(3,0,0,1),bt(x,`tableId: ${n} | null`),pt("tableId")),Q(p+$,p+$,Qe,il(3,0),bt(R,`tableId: ${n} | null`),pt("tableId")),Q(p+T+$,p+T+$,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(i+p+w+$,i+p+w+$,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(g+he+$,g+he+$,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(m+$,m+$,Qe,il(4,3,1),bt(L,`tableId: ${n} | null`),pt("tableId")),Q(f+$,f+$,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+ke,"descending: boolean","offset: number","limit: number"+ke),pt("tableId","cellId","descending","offset","limit")),Q(i+g+$,i+g+$,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(g+$,g+$,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(T+$,T+$,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(i+w+$,i+w+$,Qe,il(7,5,0,1),bt(F,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+$,w+$,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(l)){const[e,l,t,n,d,s,I,b]=r;c(null,N,...r),c(1,N,j);const p=V("getDefaultValueComponent","valueId: Id",M(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,ol(2,0,0,1)+pe),Q(v,v,e,ol(2,0)+pe);const C=Q(x,x,t+Me,rl(y,Je)+pe);Q(je+v+Ce,je+v+Ce,nt,ol(2,9)+lt,Dl(_l(v)+Yl+l,_l(v)+fe),Zl(v),at,Dl(It,`values: ${l})`+qe,Kl),ct),Q(je+Pe+v+Ce,je+Pe+v+Ce,nt,ol(2,11)+lt,Dl(_l(Pe+v)+Yl+l,_l(Pe+v)+fe),Zl(Pe+v),at,Dl(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+v+Ce,ge+v+Ce,Ce,ol(2,12),a,a,a,$t,ct);const h=u(y+Oe,jl("valueId?: VId",H+Ae+j,Ql),$l("a Value"),`<VId extends ${t}>`),g=u(v+Oe,jl(H+Ae+j,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,D,g,h),q(v+it,"{"+H+", valueComponents, getValueComponentProps"+st+"}: "+g,[se+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,ql,"/>;","}), separator)"],ol(2,13)+pe),L(((e,l,t,n,d)=>{const s="Map"+El(l,1);c(0,N,s),c(1,N,s),Q(i+d+y,i+y,o,ml(e,0,1)+pe,a,n);const r=Q(d+y,y,l,ml(e)+pe,a,n);Q(je+d+y+Ce,je+y+Ce,nt,ml(e,9)+lt,Dl(_l(y)+Yl+l+" | "+s,_l(y)+fe),Dl(n,Zl(y)),at,Dl(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+d+y+Ce,ge+y+Ce,Ce,ml(e,12),a,n,a,$t,ct),q(d+y+it,`{${H}, debugIds}: ${h}<'${e}'>`,[se+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],ml(e,13)+pe)})),Q(i+v+$,i+v+$,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(v+$,v+$,Qe,ol(2,8)+" changes",bt(d),pt()),Q(x+$,x+$,Qe,il(10,0,1),bt(s),pt()),Q(i+y+$,i+y+$,Qe,il(11,0,0,1),bt(I,`valueId: ${t} | null`),pt("valueId")),Q(y+$,y+$,Qe,il(11,0),bt(b,`valueId: ${t} | null`),pt("valueId"))}return q(Ee,`{${H}, ${H}ById, children}: `+Y+" & {children: React.ReactNode}",["{",et,"return (","<Context."+Ee,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${Ee}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},ht=(e,l,t)=>{if(ee(e)&&ee(l))return[a,a,a,a];const[n,d,o,s]=Ul(e,l,t);return[n,d,...Ct(e,l,t,o,s)]},gt=JSON.parse,mt="prettier/",ft=mt+"plugins/",wt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!ee(l)||G(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(G(a,(l=>G(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[D(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==L(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:D(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(mt+"standalone")).format,W(t,await import(ft+"estree"),await import(ft+"typescript"))}catch(e){n=async e=>e}return await N(J(a(e),(async(e,a)=>Pl(await n(e,{...wt,plugins:t,filepath:"_."+l[a]})))))};return q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:L(e.getValueIds()),jsonLength:L(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=Tt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file