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
@@ -1 +1 @@
1
- import e,{useContext as t}from"react";const o=e=>typeof e,r="",n=o(r),d="Listener",l="Result",s="Ids",u="Table",i=u+"s",a=u+s,c="Row",I=c+"Count",p=c+s,v="Sorted"+c+s,b="Cell",g=b+s,m="Value",C=m+"s",y=m+s,w=e=>null==e,k=(e,t,o)=>w(e)?null==o?void 0:o():t(e),h=e=>o(e)==n,f=()=>{},R=(e,t)=>e.map(t),P=Object.keys,{createContext:x,useContext:q}=e,O=x([]),S=(e,t)=>{var o;const r=q(O);return w(e)?r[t]:h(e)?((e,t)=>k(e,(e=>e[t])))(null!=(o=r[t+1])?o:{},e):e},L=(e,t)=>{const o=S(e,t);return w(e)||h(e)?o:e},j=e=>{var t;return P(null!=(t=q(O)[e])?t:{})},B=e=>S(e,0),T=e=>L(e,0),M=e=>S(e,2),E=e=>L(e,2),F=e=>S(e,4),V=e=>L(e,4),A=e=>S(e,6),D=e=>L(e,6),Q=e=>S(e,8),W=e=>L(e,8),z=e=>S(e,10),G=e=>L(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 r=U((()=>t(e)),[e,...o]);return N((()=>()=>r.destroy()),[r]),r},$=(e,t,o,r=[],n)=>{const[,d]=Y(),l=K((()=>{var n,d;return null!=(d=null==(n=null==t?void 0:t["get"+e])?void 0:n.call(t,...r))?d:o}),[t,...r]),s=X();return U((()=>s.current=l()),[l]),_(e,t,((...e)=>{s.current=w(n)?l():e[n],d([])}),[],r),s.current},_=(e,t,o,r=[],n=[],...l)=>{const s=[t,...n,...r,...l],u=U((()=>{var r;return null==(r=null==t?void 0:t["add"+e+d])?void 0:r.call(t,...n,o,...l)}),s);N((()=>()=>null==t?void 0:t.delListener(u)),s)},ee=(e,t,o,r=[],n=f,d=[],...l)=>{const s=T(e);return K((e=>k(s,(r=>k(o(e,r),(e=>n(r["set"+t](...l,e),e)))))),[s,t,...r,...d,...l])},te=(e,t,o=f,r=[],...n)=>{const d=T(e);return K((()=>o(null==d?void 0:d["del"+t](...n))),[d,t,...r,...n])},oe=(e,t,o)=>{const r=G(e);return K((()=>null==r?void 0:r[t](o)),[r,t,o])},re=(e,t=[])=>U(e,t),ne=()=>j(1),de=e=>$(i,T(e),{}),le=e=>$(a,T(e),[],[]),se=(e,t)=>$(u,T(t),{},[e]),ue=(e,t)=>$(u+g,T(t),[],[e]),ie=(e,t)=>$(I,T(t),[],[e]),ae=(e,t)=>$(p,T(t),[],[e]),ce=(e,t,o,r=0,n,d)=>$(v,T(d),[],[e,t,o,r,n],6),Ie=(e,t,o)=>$(c,T(o),{},[e,t]),pe=(e,t,o)=>$(g,T(o),[],[e,t]),ve=(e,t,o,r)=>$(b,T(r),void 0,[e,t,o],4),be=e=>$(C,T(e),{}),ge=e=>$(y,T(e),[],[]),me=(e,t)=>$(m,T(t),void 0,[e]),Ce=(e,t,o,r,n)=>ee(o,i,e,t,r,n),ye=(e,t,o,r,n,d)=>ee(r,u,t,o,n,d,e),we=(e,t,o,r,n,d,l)=>ee(n,c,o,r,d,l,e,t),ke=(e,t,o=[],r,n=f,d=[],l=!0)=>{const s=T(r);return K((o=>k(s,(r=>k(t(o,r),(t=>n(r.addRow(e,t,l),r,t)))))),[s,e,...o,...d,l])},he=(e,t,o,r,n,d,l)=>ee(n,"PartialRow",o,r,d,l,e,t),fe=(e,t,o,r,n,d,l,s)=>ee(d,b,r,n,l,s,e,t,o),Re=(e,t,o,r,n)=>ee(o,C,e,t,r,n),Pe=(e,t,o,r,n)=>ee(o,"PartialValues",e,t,r,n),xe=(e,t,o,r,n,d)=>ee(r,m,t,o,n,d,e),qe=(e,t,o)=>te(e,i,t,o),Oe=(e,t,o,r)=>te(t,u,o,r,e),Se=(e,t,o,r,n)=>te(o,c,r,n,e,t),Le=(e,t,o,r,n,d,l)=>te(n,b,d,l,e,t,o,r),je=(e,t,o)=>te(e,C,t,o),Be=(e,t,o,r)=>te(t,m,o,r,e),Te=(e,t,o,r)=>_(i,T(r),e,t,[],o),Me=(e,t,o,r)=>_(a,T(r),e,t,[],o),Ee=(e,t,o,r,n)=>_(u,T(n),t,o,[e],r),Fe=(e,t,o,r,n)=>_(u+g,T(n),t,o,[e],r),Ve=(e,t,o,r,n)=>_(I,T(n),t,o,[e],r),Ae=(e,t,o,r,n)=>_(p,T(n),t,o,[e],r),De=(e,t,o,r,n,d,l,s,u)=>_(v,T(u),d,l,[e,t,o,r,n],s),Qe=(e,t,o,r,n,d)=>_(c,T(d),o,r,[e,t],n),We=(e,t,o,r,n,d)=>_(g,T(d),o,r,[e,t],n),ze=(e,t,o,r,n,d,l)=>_(b,T(l),r,n,[e,t,o],d),Ge=(e,t,o,r)=>_(C,T(r),e,t,[],o),He=(e,t,o,r)=>_(y,T(r),e,t,[],o),Je=(e,t,o,r,n)=>_(m,T(n),t,o,[e],r),Ke=(e,t,o)=>_("Start"+J,T(o),e,t),Ne=(e,t,o)=>_("WillFinish"+J,T(o),e,t),Ue=(e,t,o)=>_("DidFinish"+J,T(o),e,t),Xe=(e,t,o)=>Z(e,t,o),Ye=()=>j(3),Ze=e=>$("MetricIds",E(e),[]),$e=(e,t)=>$("Metric",E(t),void 0,[e]),_e=(e,t,o,r)=>_("Metric",E(r),t,o,[e]),et=(e,t,o)=>Z(e,t,o),tt=()=>j(5),ot=(e,t)=>$("SliceIds",V(t),[],[e]),rt=e=>$("IndexIds",V(e),[]),nt=(e,t,o)=>$("Slice"+p,V(o),[],[e,t]),dt=(e,t,o,r)=>_("SliceIds",V(r),t,o,[e]),lt=(e,t,o,r,n)=>_("Slice"+p,V(n),o,r,[e,t]),st=(e,t,o)=>Z(e,t,o),ut=()=>j(7),it=e=>$("RelationshipIds",D(e),[]),at=(e,t,o)=>$("RemoteRowId",D(o),void 0,[e,t]),ct=(e,t,o)=>$("Local"+p,D(o),[],[e,t]),It=(e,t,o)=>$("Linked"+p,D(o),[],[e,t]),pt=(e,t,o,r,n)=>_("RemoteRowId",D(n),o,r,[e,t]),vt=(e,t,o,r,n)=>_("Local"+p,D(n),o,r,[e,t]),bt=(e,t,o,r,n)=>_("Linked"+p,D(n),o,r,[e,t]),gt=(e,t,o)=>Z(e,t,o),mt=()=>j(9),Ct=e=>$("QueryIds",W(e),[]),yt=(e,t)=>$(l+u,W(t),{},[e]),wt=(e,t)=>$(l+u+g,W(t),[],[e]),kt=(e,t)=>$(l+I,W(t),[],[e]),ht=(e,t)=>$(l+p,W(t),[],[e]),ft=(e,t,o,r=0,n,d)=>$(l+v,W(d),[],[e,t,o,r,n],6),Rt=(e,t,o)=>$(l+c,W(o),{},[e,t]),Pt=(e,t,o)=>$(l+g,W(o),[],[e,t]),xt=(e,t,o,r)=>$(l+b,W(r),void 0,[e,t,o]),qt=(e,t,o,r)=>_(l+u,W(r),t,o,[e]),Ot=(e,t,o,r)=>_(l+u+g,W(r),t,o,[e]),St=(e,t,o,r)=>_(l+I,W(r),t,o,[e]),Lt=(e,t,o,r)=>_(l+p,W(r),t,o,[e]),jt=(e,t,o,r,n,d,s,u)=>_(l+v,W(u),d,s,[e,t,o,r,n]),Bt=(e,t,o,r,n)=>_(l+c,W(n),o,r,[e,t]),Tt=(e,t,o,r,n)=>_(l+g,W(n),o,r,[e,t]),Mt=(e,t,o,r,n,d)=>_(l+b,W(d),r,n,[e,t,o]),Et=(e,t,o)=>Z(e,t,o),Ft=()=>j(11),Vt=e=>$("CheckpointIds",G(e),[[],void 0,[]]),At=(e,t)=>$("Checkpoint",G(t),void 0,[e]),Dt=(e=f,t=[],o,r=f,n=[])=>{const d=G(o);return K((t=>k(d,(o=>{const n=e(t);r(o.addCheckpoint(n),o,n)}))),[d,...t,...n])},Qt=e=>oe(e,"goBackward"),Wt=e=>oe(e,"goForward"),zt=(e,t=[],o,r=f,n=[])=>{const d=G(o);return K((t=>k(d,(o=>k(e(t),(e=>r(o.goTo(e),e)))))),[d,...t,...n])},Gt=e=>{var t;const o=G(e),[n,d]=Vt(o);return[(l=n,!(0==l.length)),Qt(o),d,null!=(t=k(d,(e=>null==o?void 0:o.getCheckpoint(e))))?t:r];var l},Ht=e=>{var t;const o=G(e),[,,[n]]=Vt(o);return[!w(n),Wt(o),n,null!=(t=k(n,(e=>null==o?void 0:o.getCheckpoint(e))))?t:r]},Jt=(e,t,o)=>_("CheckpointIds",G(o),e,t),Kt=(e,t,o,r)=>_("Checkpoint",G(r),t,o,[e]),Nt=(e,t,o=[],r,n=[],d,l=[])=>{const[,s]=Y(),u=U((()=>t(e)),[e,...o]);return N((()=>{var e;return e=function*(){r&&(yield r(u),s([]))},new Promise(((t,o)=>{var r=t=>{try{d(e.next(t))}catch(e){o(e)}},n=t=>{try{d(e.throw(t))}catch(e){o(e)}},d=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,n);d((e=e.apply(void 0,null)).next())})),()=>{null==u||u.destroy(),null==d||d(u)}}),[u,...n,...l]),u},{PureComponent:Ut,Fragment:Xt,createElement:Yt,useCallback:Zt,useLayoutEffect:$t,useRef:_t,useState:eo}=e,to=(e,...t)=>w(e)?{}:e(...t),oo=(e,t)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getLocalTableId(t),null==e?void 0:e.getRemoteTableId(t)];var ro=Object.defineProperty,no=Object.defineProperties,lo=Object.getOwnPropertyDescriptors,so=Object.getOwnPropertySymbols,uo=Object.prototype.hasOwnProperty,io=Object.prototype.propertyIsEnumerable,ao=(e,t,o)=>t in e?ro(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,co=(e,t)=>{for(var o in t||(t={}))uo.call(t,o)&&ao(e,o,t[o]);if(so)for(var o of so(t))io.call(t,o)&&ao(e,o,t[o]);return e},Io=(e,t)=>no(e,lo(t)),po=(e,t)=>{var o={};for(var r in e)uo.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&so)for(var r of so(e))t.indexOf(r)<0&&io.call(e,r)&&(o[r]=e[r]);return o};const{useMemo:vo}=e,bo=({tableId:e,store:t,rowComponent:o=ho,getRowComponentProps:r,customCellIds:n,separator:d,debugIds:l},s)=>wo(R(s,(d=>Yt(o,Io(co({},to(r,d)),{key:d,tableId:e,rowId:d,customCellIds:n,store:t,debugIds:l})))),d,l,e),go=({queryId:e,queries:t,resultRowComponent:o=Eo,getResultRowComponentProps:r,separator:n,debugIds:d},l)=>wo(R(l,(n=>Yt(o,Io(co({},to(r,n)),{key:n,queryId:e,rowId:n,queries:t,debugIds:d})))),n,d,e),mo=({relationshipId:e,relationships:t,rowComponent:o=ho,getRowComponentProps:r,separator:n,debugIds:d},l,s)=>{const[u,i,a]=oo(D(t),e),c=l(e,s,u);return wo(R(c,(e=>Yt(o,Io(co({},to(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:d})))),n,d,s)},Co=e=>({checkpoints:t,checkpointComponent:o=Ao,getCheckpointComponentProps:r,separator:n,debugIds:d})=>{const l=G(t);return wo(R(e(Vt(l)),(e=>Yt(o,Io(co({},to(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:d})))),n)},yo=({store:e,storesById:o,metrics:r,metricsById:n,indexes:d,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=t(O);return Yt(O.Provider,{value:vo((()=>[null!=e?e:v[0],co(co({},v[1]),o),null!=r?r:v[2],co(co({},v[3]),n),null!=d?d:v[4],co(co({},v[5]),l),null!=s?s:v[6],co(co({},v[7]),u),null!=i?i:v[8],co(co({},v[9]),a),null!=c?c:v[10],co(co({},v[11]),I)]),[e,o,r,n,d,l,s,u,i,a,c,I,v])},p)},wo=(e,t,o,r)=>{const n=w(t)||!Array.isArray(e)?e:R(e,((e,o)=>o>0?[t,e]:e));return o?[r,":{",n,"}"]:n},ko=({tableId:e,rowId:t,cellId:o,store:n,debugIds:d})=>{var l;return wo(r+(null!=(l=ve(e,t,o,n))?l:r),void 0,d,o)},ho=({tableId:e,rowId:t,store:o,cellComponent:r=ko,getCellComponentProps:n,customCellIds:d,separator:l,debugIds:s})=>wo(R(((e,t,o,r)=>{const n=pe(t,o,r);return null!=e?e:n})(d,e,t,o),(d=>Yt(r,Io(co({},to(n,d)),{key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:s})))),l,s,t),fo=e=>bo(e,ae(e.tableId,e.store)),Ro=e=>{var t=e,{cellId:o,descending:r,offset:n,limit:d}=t,l=po(t,["cellId","descending","offset","limit"]);return bo(l,ce(l.tableId,o,r,n,d,l.store))},Po=({store:e,tableComponent:t=fo,getTableComponentProps:o,separator:r,debugIds:n})=>wo(R(le(e),(r=>Yt(t,Io(co({},to(o,r)),{key:r,tableId:r,store:e,debugIds:n})))),r),xo=({valueId:e,store:t,debugIds:o})=>{var n;return wo(r+(null!=(n=me(e,t))?n:r),void 0,o,e)},qo=({store:e,valueComponent:t=xo,getValueComponentProps:o,separator:r,debugIds:n})=>wo(R(ge(e),(r=>Yt(t,Io(co({},to(o,r)),{key:r,valueId:r,store:e,debugIds:n})))),r),Oo=({metricId:e,metrics:t,debugIds:o})=>{var n;return wo(null!=(n=$e(e,t))?n:r,void 0,o,e)},So=({indexId:e,sliceId:t,indexes:o,rowComponent:r=ho,getRowComponentProps:n,separator:d,debugIds:l})=>{const[s,u,i]=((e,t)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getTableId(t)])(V(o),e),a=nt(e,t,s);return wo(R(a,(e=>Yt(r,Io(co({},to(n,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),d,l,t)},Lo=({indexId:e,indexes:t,sliceComponent:o=So,getSliceComponentProps:r,separator:n,debugIds:d})=>wo(R(ot(e,t),(n=>Yt(o,Io(co({},to(r,n)),{key:n,indexId:e,sliceId:n,indexes:t,debugIds:d})))),n,d,e),jo=({relationshipId:e,localRowId:t,relationships:o,rowComponent:r=ho,getRowComponentProps:n,debugIds:d})=>{const[l,s,,u]=oo(D(o),e),i=at(e,t,l);return wo(w(u)||w(i)?null:Yt(r,Io(co({},to(n,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:d})),void 0,d,t)},Bo=e=>mo(e,ct,e.remoteRowId),To=e=>mo(e,It,e.firstRowId),Mo=({queryId:e,rowId:t,cellId:o,queries:n,debugIds:d})=>{var l;return wo(r+(null!=(l=xt(e,t,o,n))?l:r),void 0,d,o)},Eo=({queryId:e,rowId:t,queries:o,resultCellComponent:r=Mo,getResultCellComponentProps:n,separator:d,debugIds:l})=>wo(R(Pt(e,t,o),(d=>Yt(r,Io(co({},to(n,d)),{key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:l})))),d,l,t),Fo=e=>go(e,ht(e.queryId,e.queries)),Vo=e=>{var t=e,{cellId:o,descending:r,offset:n,limit:d}=t,l=po(t,["cellId","descending","offset","limit"]);return go(l,ft(l.queryId,o,r,n,d,l.queries))},Ao=({checkpoints:e,checkpointId:t,debugIds:o})=>{var n;return wo(null!=(n=At(t,e))?n:r,void 0,o,t)},Do=Co((e=>e[0])),Qo=Co((e=>w(e[1])?[]:[e[1]])),Wo=Co((e=>e[2]));export{Do as BackwardCheckpointsView,ko as CellView,Ao as CheckpointView,Qo as CurrentCheckpointView,Wo as ForwardCheckpointsView,Lo as IndexView,To as LinkedRowsView,Bo as LocalRowsView,Oo as MetricView,yo as Provider,jo as RemoteRowView,Mo as ResultCellView,Eo as ResultRowView,Vo as ResultSortedTableView,Fo as ResultTableView,ho as RowView,So as SliceView,Ro as SortedTableView,fo as TableView,Po as TablesView,xo as ValueView,qo as ValuesView,ke as useAddRowCallback,ve as useCell,pe as useCellIds,We as useCellIdsListener,ze as useCellListener,At as useCheckpoint,Vt as useCheckpointIds,Jt as useCheckpointIdsListener,Kt as useCheckpointListener,z as useCheckpoints,Ft as useCheckpointsIds,G as useCheckpointsOrCheckpointsById,Et as useCreateCheckpoints,et as useCreateIndexes,Xe as useCreateMetrics,Nt as useCreatePersister,gt as useCreateQueries,st as useCreateRelationships,re as useCreateStore,Le as useDelCellCallback,Se as useDelRowCallback,Oe as useDelTableCallback,qe as useDelTablesCallback,Be as useDelValueCallback,je as useDelValuesCallback,Ue as useDidFinishTransactionListener,Qt as useGoBackwardCallback,Wt as useGoForwardCallback,zt as useGoToCallback,rt as useIndexIds,F as useIndexes,tt as useIndexesIds,V as useIndexesOrIndexesById,It as useLinkedRowIds,bt as useLinkedRowIdsListener,ct as useLocalRowIds,vt as useLocalRowIdsListener,$e as useMetric,Ze as useMetricIds,_e as useMetricListener,M as useMetrics,Ye as useMetricsIds,E as useMetricsOrMetricsById,Q as useQueries,mt as useQueriesIds,W as useQueriesOrQueriesById,Ct as useQueryIds,Ht as useRedoInformation,it as useRelationshipIds,A as useRelationships,ut as useRelationshipsIds,D as useRelationshipsOrRelationshipsById,at as useRemoteRowId,pt as useRemoteRowIdListener,xt as useResultCell,Pt as useResultCellIds,Tt as useResultCellIdsListener,Mt as useResultCellListener,Rt as useResultRow,kt as useResultRowCount,St as useResultRowCountListener,ht as useResultRowIds,Lt as useResultRowIdsListener,Bt as useResultRowListener,ft as useResultSortedRowIds,jt as useResultSortedRowIdsListener,yt as useResultTable,wt as useResultTableCellIds,Ot as useResultTableCellIdsListener,qt as useResultTableListener,Ie as useRow,ie as useRowCount,Ve as useRowCountListener,ae as useRowIds,Ae as useRowIdsListener,Qe as useRowListener,fe as useSetCellCallback,Dt as useSetCheckpointCallback,he as useSetPartialRowCallback,Pe as useSetPartialValuesCallback,we as useSetRowCallback,ye as useSetTableCallback,Ce as useSetTablesCallback,xe as useSetValueCallback,Re as useSetValuesCallback,ot as useSliceIds,dt as useSliceIdsListener,nt as useSliceRowIds,lt as useSliceRowIdsListener,ce as useSortedRowIds,De as useSortedRowIdsListener,Ke as useStartTransactionListener,B as useStore,ne as useStoreIds,T as useStoreOrStoreById,se as useTable,ue as useTableCellIds,Fe as useTableCellIdsListener,le as useTableIds,Me as useTableIdsListener,Ee as useTableListener,de as useTables,Te as useTablesListener,Gt as useUndoInformation,me as useValue,ge 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,r="",n=o(r),d="Listener",l="Result",s="Has",u="has",i="Ids",a="Table",c=a+"s",I=a+i,p="Row",v=p+"Count",b=p+i,g="Sorted"+p+i,m="Cell",y=m+i,C="Value",w=C+"s",f=C+i,h=e=>null==e,k=(e,t,o)=>h(e)?null==o?void 0:o():t(e),R=e=>o(e)==n,P=()=>{},x=(e,t)=>e.map(t),q=Object.keys,{createContext:O,useContext:S}=e,L=O([]),j=(e,t)=>{var o;const r=S(L);return h(e)?r[t]:R(e)?((e,t)=>k(e,(e=>e[t])))(null!=(o=r[t+1])?o:{},e):e},B=(e,t)=>{const o=j(e,t);return h(e)||R(e)?o:e},T=e=>{var t;return q(null!=(t=S(L)[e])?t:{})},E=e=>j(e,0),M=e=>B(e,0),F=e=>j(e,2),V=e=>B(e,2),A=e=>j(e,4),D=e=>B(e,4),H=e=>j(e,6),Q=e=>B(e,6),W=e=>j(e,8),z=e=>B(e,8),G=e=>j(e,10),J=e=>B(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,[]],re=(e,t,o=ee)=>{const r=Y((()=>t(e)),[e,...o]);return X((()=>()=>r.destroy()),[r]),r},ne=(e,t,o,r=ee,n,d="get",l="")=>{const[,s]=_(),u=U((()=>{var n,l;return null!=(l=null==(n=null==t?void 0:t[d+e])?void 0:n.call(t,...r))?l:o}),[t,e,...r,o]),i=$();return Y((()=>i.current=u()),[u]),de(l+e,t,((...e)=>{i.current=h(n)?u():e[n],s([])}),[u,n],r),i.current},de=(e,t,o,r=ee,n=ee,...l)=>Z((()=>{var r;const s=null==(r=null==t?void 0:t["add"+e+d])?void 0:r.call(t,...n,o,...l);return()=>null==t?void 0:t.delListener(s)}),[t,e,...n,...r,...l]),le=(e,t,o,r=ee,n=P,d=ee,...l)=>{const s=M(e);return U((e=>k(s,(r=>k(o(e,r),(e=>n(r["set"+t](...l,e),e)))))),[s,t,...r,...d,...l])},se=(e,t,o=P,r=ee,...n)=>{const d=M(e);return U((()=>o(null==d?void 0:d["del"+t](...n))),[d,t,...r,...n])},ue=(e,t,o)=>{const r=J(e);return U((()=>null==r?void 0:r[t](o)),[r,t,o])},ie=(e,t=ee)=>Y(e,t),ae=()=>T(1),ce=e=>ne(c,M(e),!1,[],1,u,s),Ie=e=>ne(c,M(e),te),pe=e=>ne(I,M(e),ee),ve=(e,t)=>ne(a,M(t),!1,[e],2,u,s),be=(e,t)=>ne(a,M(t),te,[e]),ge=(e,t)=>ne(a+y,M(t),ee,[e]),me=(e,t,o)=>ne(a+m,M(o),!1,[e,t],3,u,s),ye=(e,t)=>ne(v,M(t),0,[e]),Ce=(e,t)=>ne(b,M(t),ee,[e]),we=(e,t,o,r=0,n,d)=>ne(g,M(d),ee,[e,t,o,r,n],6),fe=(e,t,o)=>ne(p,M(o),!1,[e,t],3,u,s),he=(e,t,o)=>ne(p,M(o),te,[e,t]),ke=(e,t,o)=>ne(y,M(o),ee,[e,t]),Re=(e,t,o,r)=>ne(m,M(r),!1,[e,t,o],4,u,s),Pe=(e,t,o,r)=>ne(m,M(r),void 0,[e,t,o],4),xe=e=>ne(w,M(e),!1,[],1,u,s),qe=e=>ne(w,M(e),te),Oe=e=>ne(f,M(e),ee),Se=(e,t)=>ne(C,M(t),!1,[e],2,u,s),Le=(e,t)=>ne(C,M(t),void 0,[e]),je=(e,t,o,r,n)=>le(o,c,e,t,r,n),Be=(e,t,o,r,n,d)=>le(r,a,t,o,n,d,e),Te=(e,t,o,r,n,d,l)=>le(n,p,o,r,d,l,e,t),Ee=(e,t,o=ee,r,n=P,d=ee,l=!0)=>{const s=M(r);return U((o=>k(s,(r=>k(t(o,r),(t=>n(r.addRow(e,t,l),r,t)))))),[s,e,...o,...d,l])},Me=(e,t,o,r,n,d,l)=>le(n,"PartialRow",o,r,d,l,e,t),Fe=(e,t,o,r,n,d,l,s)=>le(d,m,r,n,l,s,e,t,o),Ve=(e,t,o,r,n)=>le(o,w,e,t,r,n),Ae=(e,t,o,r,n)=>le(o,"PartialValues",e,t,r,n),De=(e,t,o,r,n,d)=>le(r,C,t,o,n,d,e),He=(e,t,o)=>se(e,c,t,o),Qe=(e,t,o,r)=>se(t,a,o,r,e),We=(e,t,o,r,n)=>se(o,p,r,n,e,t),ze=(e,t,o,r,n,d,l)=>se(n,m,d,l,e,t,o,r),Ge=(e,t,o)=>se(e,w,t,o),Je=(e,t,o,r)=>se(t,C,o,r,e),Ke=(e,t,o,r)=>de(s+c,M(r),e,t,[],o),Ne=(e,t,o,r)=>de(c,M(r),e,t,ee,o),Ue=(e,t,o,r)=>de(I,M(r),e,t,ee,o),Xe=(e,t,o,r,n)=>de(s+a,M(n),t,o,[e],r),Ye=(e,t,o,r,n)=>de(a,M(n),t,o,[e],r),Ze=(e,t,o,r,n)=>de(a+y,M(n),t,o,[e],r),$e=(e,t,o,r,n,d)=>de(s+a+m,M(d),o,r,[e,t],n),_e=(e,t,o,r,n)=>de(v,M(n),t,o,[e],r),et=(e,t,o,r,n)=>de(b,M(n),t,o,[e],r),tt=(e,t,o,r,n,d,l,s,u)=>de(g,M(u),d,l,[e,t,o,r,n],s),ot=(e,t,o,r,n,d)=>de(s+p,M(d),o,r,[e,t],n),rt=(e,t,o,r,n,d)=>de(p,M(d),o,r,[e,t],n),nt=(e,t,o,r,n,d)=>de(y,M(d),o,r,[e,t],n),dt=(e,t,o,r,n,d,l)=>de(s+m,M(l),r,n,[e,t,o],d),lt=(e,t,o,r,n,d,l)=>de(m,M(l),r,n,[e,t,o],d),st=(e,t,o,r)=>de(s+w,M(r),e,t,[],o),ut=(e,t,o,r)=>de(w,M(r),e,t,ee,o),it=(e,t,o,r)=>de(f,M(r),e,t,ee,o),at=(e,t,o,r,n)=>de(s+C,M(n),t,o,[e],r),ct=(e,t,o,r,n)=>de(C,M(n),t,o,[e],r),It=(e,t,o)=>de("Start"+N,M(o),e,t),pt=(e,t,o)=>de("WillFinish"+N,M(o),e,t),vt=(e,t,o)=>de("DidFinish"+N,M(o),e,t),bt=(e,t,o)=>re(e,t,o),gt=()=>T(3),mt=e=>ne("MetricIds",V(e),ee),yt=(e,t)=>ne("Metric",V(t),void 0,[e]),Ct=(e,t,o,r)=>de("Metric",V(r),t,o,[e]),wt=(e,t,o)=>re(e,t,o),ft=()=>T(5),ht=(e,t)=>ne("SliceIds",D(t),ee,[e]),kt=e=>ne("IndexIds",D(e),ee),Rt=(e,t,o)=>ne("Slice"+b,D(o),ee,[e,t]),Pt=(e,t,o,r)=>de("SliceIds",D(r),t,o,[e]),xt=(e,t,o,r,n)=>de("Slice"+b,D(n),o,r,[e,t]),qt=(e,t,o)=>re(e,t,o),Ot=()=>T(7),St=e=>ne("RelationshipIds",Q(e),ee),Lt=(e,t,o)=>ne("RemoteRowId",Q(o),void 0,[e,t]),jt=(e,t,o)=>ne("Local"+b,Q(o),ee,[e,t]),Bt=(e,t,o)=>ne("Linked"+b,Q(o),ee,[e,t]),Tt=(e,t,o,r,n)=>de("RemoteRowId",Q(n),o,r,[e,t]),Et=(e,t,o,r,n)=>de("Local"+b,Q(n),o,r,[e,t]),Mt=(e,t,o,r,n)=>de("Linked"+b,Q(n),o,r,[e,t]),Ft=(e,t,o)=>re(e,t,o),Vt=()=>T(9),At=e=>ne("QueryIds",z(e),ee),Dt=(e,t)=>ne(l+a,z(t),te,[e]),Ht=(e,t)=>ne(l+a+y,z(t),ee,[e]),Qt=(e,t)=>ne(l+v,z(t),0,[e]),Wt=(e,t)=>ne(l+b,z(t),ee,[e]),zt=(e,t,o,r=0,n,d)=>ne(l+g,z(d),ee,[e,t,o,r,n],6),Gt=(e,t,o)=>ne(l+p,z(o),te,[e,t]),Jt=(e,t,o)=>ne(l+y,z(o),ee,[e,t]),Kt=(e,t,o,r)=>ne(l+m,z(r),void 0,[e,t,o]),Nt=(e,t,o,r)=>de(l+a,z(r),t,o,[e]),Ut=(e,t,o,r)=>de(l+a+y,z(r),t,o,[e]),Xt=(e,t,o,r)=>de(l+v,z(r),t,o,[e]),Yt=(e,t,o,r)=>de(l+b,z(r),t,o,[e]),Zt=(e,t,o,r,n,d,s,u)=>de(l+g,z(u),d,s,[e,t,o,r,n]),$t=(e,t,o,r,n)=>de(l+p,z(n),o,r,[e,t]),_t=(e,t,o,r,n)=>de(l+y,z(n),o,r,[e,t]),eo=(e,t,o,r,n,d)=>de(l+m,z(d),r,n,[e,t,o]),to=(e,t,o)=>re(e,t,o),oo=()=>T(11),ro=e=>ne("CheckpointIds",J(e),oe),no=(e,t)=>ne("Checkpoint",J(t),void 0,[e]),lo=(e=P,t=ee,o,r=P,n=ee)=>{const d=J(o);return U((t=>k(d,(o=>{const n=e(t);r(o.addCheckpoint(n),o,n)}))),[d,...t,...n])},so=e=>ue(e,"goBackward"),uo=e=>ue(e,"goForward"),io=(e,t=ee,o,r=P,n=ee)=>{const d=J(o);return U((t=>k(d,(o=>k(e(t),(e=>r(o.goTo(e),e)))))),[d,...t,...n])},ao=e=>{var t;const o=J(e),[n,d]=ro(o);return[(l=n,!(0==l.length)),so(o),d,null!=(t=k(d,(e=>null==o?void 0:o.getCheckpoint(e))))?t:r];var l},co=e=>{var t;const o=J(e),[,,[n]]=ro(o);return[!h(n),uo(o),n,null!=(t=k(n,(e=>null==o?void 0:o.getCheckpoint(e))))?t:r]},Io=(e,t,o)=>de("CheckpointIds",J(o),e,t),po=(e,t,o,r)=>de("Checkpoint",J(r),t,o,[e]),vo=(e,t,o=ee,r,n=ee,d,l=ee)=>{const[,s]=_(),u=Y((()=>t(e)),[e,...o]);return X((()=>{var e;return e=function*(){r&&(yield r(u),s([]))},new Promise(((t,o)=>{var r=t=>{try{d(e.next(t))}catch(e){o(e)}},n=t=>{try{d(e.throw(t))}catch(e){o(e)}},d=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,n);d((e=e.apply(void 0,null)).next())})),()=>{null==u||u.destroy(),null==d||d(u)}}),[u,...n,...l]),u},{PureComponent:bo,Fragment:go,createElement:mo,useCallback:yo,useLayoutEffect:Co,useRef:wo,useState:fo}=e,ho=(e,...t)=>h(e)?{}:e(...t),ko=(e,t)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getLocalTableId(t),null==e?void 0:e.getRemoteTableId(t)];var Ro=Object.defineProperty,Po=Object.defineProperties,xo=Object.getOwnPropertyDescriptors,qo=Object.getOwnPropertySymbols,Oo=Object.prototype.hasOwnProperty,So=Object.prototype.propertyIsEnumerable,Lo=(e,t,o)=>t in e?Ro(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o,jo=(e,t)=>{for(var o in t||(t={}))Oo.call(t,o)&&Lo(e,o,t[o]);if(qo)for(var o of qo(t))So.call(t,o)&&Lo(e,o,t[o]);return e},Bo=(e,t)=>Po(e,xo(t)),To=(e,t)=>{var o={};for(var r in e)Oo.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&qo)for(var r of qo(e))t.indexOf(r)<0&&So.call(e,r)&&(o[r]=e[r]);return o};const{useMemo:Eo}=e,Mo=({tableId:e,store:t,rowComponent:o=Wo,getRowComponentProps:r,customCellIds:n,separator:d,debugIds:l},s)=>Ho(x(s,(d=>mo(o,Bo(jo({},ho(r,d)),{key:d,tableId:e,rowId:d,customCellIds:n,store:t,debugIds:l})))),d,l,e),Fo=({queryId:e,queries:t,resultRowComponent:o=tr,getResultRowComponentProps:r,separator:n,debugIds:d},l)=>Ho(x(l,(n=>mo(o,Bo(jo({},ho(r,n)),{key:n,queryId:e,rowId:n,queries:t,debugIds:d})))),n,d,e),Vo=({relationshipId:e,relationships:t,rowComponent:o=Wo,getRowComponentProps:r,separator:n,debugIds:d},l,s)=>{const[u,i,a]=ko(Q(t),e),c=l(e,s,u);return Ho(x(c,(e=>mo(o,Bo(jo({},ho(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:d})))),n,d,s)},Ao=e=>({checkpoints:t,checkpointComponent:o=nr,getCheckpointComponentProps:r,separator:n,debugIds:d})=>{const l=J(t);return Ho(x(e(ro(l)),(e=>mo(o,Bo(jo({},ho(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:d})))),n)},Do=({store:e,storesById:o,metrics:r,metricsById:n,indexes:d,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=t(L);return mo(L.Provider,{value:Eo((()=>[null!=e?e:v[0],jo(jo({},v[1]),o),null!=r?r:v[2],jo(jo({},v[3]),n),null!=d?d:v[4],jo(jo({},v[5]),l),null!=s?s:v[6],jo(jo({},v[7]),u),null!=i?i:v[8],jo(jo({},v[9]),a),null!=c?c:v[10],jo(jo({},v[11]),I)]),[e,o,r,n,d,l,s,u,i,a,c,I,v])},p)},Ho=(e,t,o,r)=>{const n=h(t)||!Array.isArray(e)?e:x(e,((e,o)=>o>0?[t,e]:e));return o?[r,":{",n,"}"]:n},Qo=({tableId:e,rowId:t,cellId:o,store:n,debugIds:d})=>{var l;return Ho(r+(null!=(l=Pe(e,t,o,n))?l:r),void 0,d,o)},Wo=({tableId:e,rowId:t,store:o,cellComponent:r=Qo,getCellComponentProps:n,customCellIds:d,separator:l,debugIds:s})=>Ho(x(((e,t,o,r)=>{const n=ke(t,o,r);return null!=e?e:n})(d,e,t,o),(d=>mo(r,Bo(jo({},ho(n,d)),{key:d,tableId:e,rowId:t,cellId:d,store:o,debugIds:s})))),l,s,t),zo=e=>Mo(e,Ce(e.tableId,e.store)),Go=e=>{var t=e,{cellId:o,descending:r,offset:n,limit:d}=t,l=To(t,["cellId","descending","offset","limit"]);return Mo(l,we(l.tableId,o,r,n,d,l.store))},Jo=({store:e,tableComponent:t=zo,getTableComponentProps:o,separator:r,debugIds:n})=>Ho(x(pe(e),(r=>mo(t,Bo(jo({},ho(o,r)),{key:r,tableId:r,store:e,debugIds:n})))),r),Ko=({valueId:e,store:t,debugIds:o})=>{var n;return Ho(r+(null!=(n=Le(e,t))?n:r),void 0,o,e)},No=({store:e,valueComponent:t=Ko,getValueComponentProps:o,separator:r,debugIds:n})=>Ho(x(Oe(e),(r=>mo(t,Bo(jo({},ho(o,r)),{key:r,valueId:r,store:e,debugIds:n})))),r),Uo=({metricId:e,metrics:t,debugIds:o})=>{var n;return Ho(null!=(n=yt(e,t))?n:r,void 0,o,e)},Xo=({indexId:e,sliceId:t,indexes:o,rowComponent:r=Wo,getRowComponentProps:n,separator:d,debugIds:l})=>{const[s,u,i]=((e,t)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getTableId(t)])(D(o),e),a=Rt(e,t,s);return Ho(x(a,(e=>mo(r,Bo(jo({},ho(n,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),d,l,t)},Yo=({indexId:e,indexes:t,sliceComponent:o=Xo,getSliceComponentProps:r,separator:n,debugIds:d})=>Ho(x(ht(e,t),(n=>mo(o,Bo(jo({},ho(r,n)),{key:n,indexId:e,sliceId:n,indexes:t,debugIds:d})))),n,d,e),Zo=({relationshipId:e,localRowId:t,relationships:o,rowComponent:r=Wo,getRowComponentProps:n,debugIds:d})=>{const[l,s,,u]=ko(Q(o),e),i=Lt(e,t,l);return Ho(h(u)||h(i)?null:mo(r,Bo(jo({},ho(n,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:d})),void 0,d,t)},$o=e=>Vo(e,jt,e.remoteRowId),_o=e=>Vo(e,Bt,e.firstRowId),er=({queryId:e,rowId:t,cellId:o,queries:n,debugIds:d})=>{var l;return Ho(r+(null!=(l=Kt(e,t,o,n))?l:r),void 0,d,o)},tr=({queryId:e,rowId:t,queries:o,resultCellComponent:r=er,getResultCellComponentProps:n,separator:d,debugIds:l})=>Ho(x(Jt(e,t,o),(d=>mo(r,Bo(jo({},ho(n,d)),{key:d,queryId:e,rowId:t,cellId:d,queries:o,debugIds:l})))),d,l,t),or=e=>Fo(e,Wt(e.queryId,e.queries)),rr=e=>{var t=e,{cellId:o,descending:r,offset:n,limit:d}=t,l=To(t,["cellId","descending","offset","limit"]);return Fo(l,zt(l.queryId,o,r,n,d,l.queries))},nr=({checkpoints:e,checkpointId:t,debugIds:o})=>{var n;return Ho(null!=(n=no(t,e))?n:r,void 0,o,t)},dr=Ao((e=>e[0])),lr=Ao((e=>h(e[1])?[]:[e[1]])),sr=Ao((e=>e[2]));export{dr as BackwardCheckpointsView,Qo as CellView,nr as CheckpointView,lr as CurrentCheckpointView,sr as ForwardCheckpointsView,Yo as IndexView,_o as LinkedRowsView,$o as LocalRowsView,Uo as MetricView,Do as Provider,Zo as RemoteRowView,er as ResultCellView,tr as ResultRowView,rr as ResultSortedTableView,or as ResultTableView,Wo as RowView,Xo as SliceView,Go as SortedTableView,zo as TableView,Jo as TablesView,Ko as ValueView,No as ValuesView,Ee as useAddRowCallback,Pe as useCell,ke as useCellIds,nt as useCellIdsListener,lt as useCellListener,no as useCheckpoint,ro as useCheckpointIds,Io as useCheckpointIdsListener,po as useCheckpointListener,G as useCheckpoints,oo as useCheckpointsIds,J as useCheckpointsOrCheckpointsById,to as useCreateCheckpoints,wt as useCreateIndexes,bt as useCreateMetrics,vo as useCreatePersister,Ft as useCreateQueries,qt as useCreateRelationships,ie as useCreateStore,ze as useDelCellCallback,We as useDelRowCallback,Qe as useDelTableCallback,He as useDelTablesCallback,Je as useDelValueCallback,Ge as useDelValuesCallback,vt as useDidFinishTransactionListener,so as useGoBackwardCallback,uo as useGoForwardCallback,io as useGoToCallback,Re as useHasCell,dt as useHasCellListener,fe as useHasRow,ot as useHasRowListener,ve as useHasTable,me as useHasTableCell,$e as useHasTableCellListener,Xe as useHasTableListener,ce as useHasTables,Ke as useHasTablesListener,Se as useHasValue,at as useHasValueListener,xe as useHasValues,st as useHasValuesListener,kt as useIndexIds,A as useIndexes,ft as useIndexesIds,D as useIndexesOrIndexesById,Bt as useLinkedRowIds,Mt as useLinkedRowIdsListener,jt as useLocalRowIds,Et as useLocalRowIdsListener,yt as useMetric,mt as useMetricIds,Ct as useMetricListener,F as useMetrics,gt as useMetricsIds,V as useMetricsOrMetricsById,W as useQueries,Vt as useQueriesIds,z as useQueriesOrQueriesById,At as useQueryIds,co as useRedoInformation,St as useRelationshipIds,H as useRelationships,Ot as useRelationshipsIds,Q as useRelationshipsOrRelationshipsById,Lt as useRemoteRowId,Tt 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,Dt as useResultTable,Ht as useResultTableCellIds,Ut as useResultTableCellIdsListener,Nt as useResultTableListener,he as useRow,ye as useRowCount,_e as useRowCountListener,Ce as useRowIds,et as useRowIdsListener,rt as useRowListener,Fe as useSetCellCallback,lo as useSetCheckpointCallback,Me as useSetPartialRowCallback,Ae as useSetPartialValuesCallback,Te as useSetRowCallback,Be as useSetTableCallback,je as useSetTablesCallback,De as useSetValueCallback,Ve as useSetValuesCallback,ht as useSliceIds,Pt as useSliceIdsListener,Rt as useSliceRowIds,xt as useSliceRowIdsListener,we as useSortedRowIds,tt as useSortedRowIdsListener,It as useStartTransactionListener,E as useStore,ae as useStoreIds,M as useStoreOrStoreById,be as useTable,ge as useTableCellIds,Ze as useTableCellIdsListener,pe as useTableIds,Ue as useTableIdsListener,Ye as useTableListener,Ie as useTables,Ne as useTablesListener,ao as useUndoInformation,Le as useValue,Oe as useValueIds,it as useValueIdsListener,ct as useValueListener,qe as useValues,ut as useValuesListener,pt as useWillFinishTransactionListener};
Binary file
package/lib/store.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),o="type",r="default",c="Ids",i="Table",d=i+"s",u=i+c,h="Row",g=h+"Count",f=h+c,T="Cell",V=T+c,b="Value",C=b+"s",v=b+c,S="Has",w=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==l,p=t=>e(t)==a,J=(e,t,s)=>e.slice(t,s),L=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.keys,A=z.isFrozen,M=z.freeze,N=e=>!m(e)&&y(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),j=(e,t)=>!m(((e,t)=>y(e,(e=>e[t])))(e,t)),x=(e,t)=>(delete e[t],e),D=(e,t)=>F(z.entries(e),(([e,s])=>t(s,e))),H=e=>N(e)&&0==(e=>L(k(e)))(e),W=e=>e?.size??0,$=(e,t)=>e?.has(t)??!1,q=e=>m(e)||0==W(e),B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=e=>new Map(e),U=e=>[...e?.keys()??[]],X=(e,t)=>e?.get(t),Y=(e,t)=>G(e,((e,s)=>t(s,e))),Z=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),_=(e,t,s)=>($(e,t)||Z(e,t,s()),X(e,t)),ee=(e,t,s,l=Z)=>(D(t,((t,l)=>s(e,l,t))),Y(e,(s=>j(t,s)?0:l(e,s))),e),te=(e,t,s)=>{const l={};return G(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},se=(e,t,s)=>te(e,(e=>te(e,t,s)),H),le=(e,t,s)=>te(e,(e=>se(e,t,s)),H),ne=(e,t)=>{const s=Q();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ae=e=>ne(e,ne),oe=e=>ne(e,ae),re=(e,t,s,l,n=0)=>y((s?_:X)(e,t[n],n>L(t)-2?s:Q),(a=>{if(n>L(t)-2)return l?.(a)&&Z(e,t[n]),a;const o=re(a,t,s,l,n+1);return q(a)&&Z(e,t[n]),o})),ce=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ie=(e,t)=>e?.add(t),de=/^\d+$/,ue=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{de.test(t)&&L(e)<1e3&&O(e,t)}]},he=e=>[e,e],ge=()=>[Q(),Q()],fe=e=>[...e],Te=([e,t])=>e===t,Ve=t=>{const s=e(t);return R(s)||s==n&&I(t)?s:void 0},be=(e,t,s,l,n)=>m(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Ce=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),Se=JSON.parse,we=(e,t,s)=>m(e)||!N(e)||H(e)||A(e)?(s?.(),!1):(D(e,((s,l)=>{t(s,l)||x(e,l)})),!H(e)),Ie=(e,t,s)=>Z(e,t,X(e,t)==-s?void 0:s),me=()=>{let e,s,l=!1,a=!1,c=!1,I=!1,z=0;const P=Q(),k=Q(),A=Q(),N=Q(),de=Q(),ye=Q(),Re=Q(),pe=Q(),Je=Q(),Le=Q(),Ee=Q(),Fe=Q(),Oe=Q(),ze=Q(),Pe=ce(),ke=Q(),Ae=Q(),Me=Q(),Ne=Q(),je=ge(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=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=Q(),rt=ge(),[ct,it,dt,ut]=(e=>{let s;const[l,n]=ue(),a=Q();return[(e,n,o,r=[],c=(()=>[]))=>{s??=Ps;const i=l(1);return Z(a,i,[e,n,o,r,c]),ie(re(n,o??[t],ce),i),i},(e,l,...n)=>E(((e,s=[t])=>{const l=[],n=(e,t)=>t==L(s)?O(l,e):null===s[t]?G(e,(e=>n(e,t+1))):E([s[t],null],(s=>n(X(e,s),t+1)));return n(e,0),l})(e,l),(e=>G(e,(e=>X(a,e)[0](s,...l??[],...n))))),e=>y(X(a,e),(([,s,l])=>(re(s,l??[t],void 0,(t=>(K(t,e),q(t)?1:0))),Z(a,e),n(e),l))),e=>y(X(a,e),(([e,,t=[],l,n])=>{const a=(...o)=>{const r=L(o);r==L(t)?e(s,...o,...n(o)):m(t[r])?E(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,t[r])};a()}))]})(),ht=e=>{if(!we(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=n||(Ve(e[r])!=t&&x(e,r),0))},gt=(t,s)=>(!e||$(Ee,s)||$t(s))&&we(t,((e,t)=>ft(s,t,e)),(()=>$t(s))),ft=(e,t,s,l)=>we(l?s:Ct(s,e,t),((l,n)=>y(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,s,l,n)=>e?y(X(X(Ee,t),l),(e=>Ve(n)!=e[o]?$t(t,s,l,n,e[r]):n),(()=>$t(t,s,l,n))):m(Ve(n))?$t(t,s,l,n):n,Vt=(e,t)=>we(t?e:vt(e),((t,s)=>y(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?y(X(Oe,e),(s=>Ve(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):m(Ve(t))?qt(e,t):t,Ct=(e,t,s)=>(y(X(Fe,t),(([l,n])=>{G(l,((t,s)=>{j(e,s)||(e[s]=t)})),G(n,(l=>{j(e,l)||$t(t,s,l)}))})),e),vt=e=>(s&&(G(ze,((t,s)=>{j(e,s)||(e[s]=t)})),G(Pe,(t=>{j(e,t)||qt(t)}))),e),St=e=>ee(Ee,e,((e,t,s)=>{const l=Q(),n=ce();ee(_(Ee,t,Q),s,((e,t,s)=>{Z(e,t,s),y(s[r],(e=>Z(l,t,e)),(()=>ie(n,t)))})),Z(Fe,t,[l,n])}),((e,t)=>{Z(Ee,t),Z(Fe,t)})),wt=e=>ee(Oe,e,((e,t,s)=>{Z(Oe,t,s),y(s[r],(e=>Z(ze,t,e)),(()=>ie(Pe,t)))}),((e,t)=>{Z(Oe,t),Z(ze,t),K(Pe,t)})),It=e=>H(e)?ys():vs(e),mt=e=>ee(Me,e,((e,t,s)=>yt(t,s)),((e,t)=>Pt(t))),yt=(e,t)=>ee(_(Me,e,(()=>(Nt(e,1),Z(ke,e,ue()),Z(Ae,e,Q()),Q()))),t,((t,s,l)=>Rt(e,t,s,l)),((t,s)=>kt(e,t,s))),Rt=(e,t,s,l,n)=>ee(_(t,s,(()=>(jt(e,s,1),Q()))),l,((t,l,n)=>pt(e,s,t,l,n)),((l,a)=>At(e,t,s,l,a,n))),pt=(e,t,s,l,n)=>{$(s,l)||xt(e,t,l,1);const a=X(s,l);n!==a&&(Dt(e,t,l,a,n),Z(s,l,n))},Jt=(e,t,s,l,n)=>y(X(t,s),(t=>pt(e,s,t,l,n)),(()=>Rt(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>H(e)?Js():Ss(e),Et=e=>ee(Ne,e,((e,t,s)=>Ft(t,s)),((e,t)=>Mt(t))),Ft=(e,t)=>{$(Ne,e)||Ht(e,1);const s=X(Ne,e);t!==s&&(Wt(e,s,t),Z(Ne,e,t))},Ot=(e,t)=>{const[s]=X(ke,e),l=s(t);return $(X(Me,e),l)?Ot(e,t):l},zt=e=>X(Me,e)??yt(e,{}),Pt=e=>yt(e,{}),kt=(e,t,s)=>{const[,l]=X(ke,e);l(s),Rt(e,t,s,{},!0)},At=(e,t,s,l,n,a)=>{const o=X(X(Fe,e)?.[0],n);if(!m(o)&&!a)return pt(e,s,l,n,o);const r=t=>{Dt(e,s,t,X(l,t)),xt(e,s,t,-1),Z(l,t)};m(o)?r(n):Y(l,r),q(l)&&(jt(e,s,-1),q(Z(t,s))&&(Nt(e,-1),Z(Me,e),Z(ke,e),Z(Ae,e)))},Mt=e=>{const t=X(ze,e);if(!m(t))return Ft(e,t);Wt(e,X(Ne,e)),Ht(e,-1),Z(Ne,e)},Nt=(e,t)=>Ie(P,e,t),jt=(e,t,s)=>Ie(_(N,e,Q),t,s)&&Z(A,e,_(A,e,(()=>0))+s),xt=(e,t,s,l)=>{const n=X(Ae,e),a=X(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&Ie(_(k,e,Q),s,l),Z(n,s,a!=-l?a+l:null),Ie(_(_(de,e,Q),t,Q),s,l)},Dt=(e,t,s,l,n)=>_(_(_(ye,e,Q),t,Q),s,(()=>[l,0]))[1]=n,Ht=(e,t)=>Ie(Re,e,t),Wt=(e,t,s)=>_(pe,e,(()=>[t,0]))[1]=s,$t=(e,t,s,l,n)=>(O(_(_(_(Je,e,Q),t,Q),s,(()=>[])),l),n),qt=(e,t,s)=>(O(_(Le,e,(()=>[])),t),s),Bt=(e,t,s)=>y(X(X(X(ye,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...he(cs(e,t,s))])),Gt=e=>y(X(pe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...he(us(e))])),Kt=e=>q(Je)||q(_e[e])?0:G(e?oe(Je):Je,((t,s)=>G(t,((t,l)=>G(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>q(Le)||q(et[e])?0:G(e?ne(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!q(e))return it(t,l,(()=>te(e))),Y(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=c&&it(je[e],void 0,t);const s=q(Ke[e]),l=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q($e[e])&&q(qe[e])&&q(Be[e])&&s&&q(De[e])&&q(He[e]),n=q(Ze[e])&&q(Ue[e])&&q(We[e])&&q(xe[e]);if(!l||!n){const t=e?[ne(P),ae(k),ne(A),ae(N),oe(de),oe(ye)]:[P,k,A,N,de,ye];if(!l){Ut(t[0],De[e],He[e]),G(t[1],((t,s)=>Ut(t,$e[e],qe[e],[s]))),G(t[2],((t,s)=>{0!=t&&it(Be[e],[s],ns(s))}));const l=ce();G(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),ie(l,n))})),s||G(t[5],((t,s)=>{if(!$(l,s)){const l=ce();G(t,(e=>G(e,(([t,s],n)=>s!==t?ie(l,n):K(e,n))))),G(l,(t=>it(Ke[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let n;G(t,((t,a)=>{let o;G(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,Bt),s=n=o=1)})),o&&it(Ue[e],[l,a],Bt)})),n&&it(We[e],[l],Bt)})),s&&it(xe[e],void 0,Bt)}}},Yt=e=>{const t=bs();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?[ne(Re),ne(pe)]:[Re,pe];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;G(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(...F(t,w)))),Ps),_t=()=>[te(ye,((e,t)=>-1===X(P,t)?null:te(e,((e,s)=>-1===X(X(N,t),s)?null:te(e,(([,e])=>e??null),((e,t)=>Te(t)))),H)),H),te(pe,(([,e])=>e??null),((e,t)=>Te(t)))],es=()=>({cellsTouched:l,valuesTouched:a,changedCells:le(ye,fe,Te),invalidCells:le(Je),changedValues:te(pe,fe,Te),invalidValues:te(Le),changedTableIds:te(P),changedRowIds:se(N),changedCellIds:le(de),changedValueIds:te(Re)}),ts=()=>le(Me),ss=()=>U(Me),ls=e=>U(X(Ae,w(e))),ns=e=>W(X(Me,w(e))),as=e=>U(X(Me,w(e))),os=(e,t,s,l=0,n)=>{return F(J((o=X(Me,w(e)),r=(e,s)=>[m(t)?s:X(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,m(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>U(X(X(Me,w(e)),w(t))),cs=(e,t,s)=>X(X(X(Me,w(e)),w(t)),w(s)),is=()=>te(Ne),ds=()=>U(Ne),us=e=>X(Ne,w(e)),hs=()=>!q(Me),gs=e=>$(Me,w(e)),fs=(e,t)=>$(X(Ae,w(e)),w(t)),Ts=(e,t)=>$(X(Me,w(e)),w(t)),Vs=(e,t,s)=>$(X(X(Me,w(e)),w(t)),w(s)),bs=()=>!q(Ne),Cs=e=>$(Ne,w(e)),vs=e=>Zt((()=>(e=>we(e,gt,$t))(e)?mt(e):0)),Ss=e=>Zt((()=>Vt(e)?Et(e):0)),ws=e=>{try{It(Se(e))}catch{}return Ps},Is=t=>Zt((()=>{if((e=we(t,(e=>we(e,ht))))&&(St(t),!q(Me))){const e=ts();ys(),vs(e)}})),ms=e=>Zt((()=>{if(s=(e=>we(e,ht))(e)){const t=is();Es(),Js(),s=!0,wt(e),Ss(t)}})),ys=()=>Zt((()=>mt({}))),Rs=e=>Zt((e=>$(Me,e)?Pt(e):0),e),ps=(e,t)=>Zt(((e,t)=>y(X(Me,e),(s=>$(s,t)?kt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{St({}),e=!1})),Es=()=>Zt((()=>{wt({}),s=!1})),Fs=(e,t)=>{if(-1!=z){Os();const s=e();return zs(t),s}},Os=()=>(-1!=z&&z++,1==z&&it(ot,void 0,_t,es),Ps),zs=e=>(z>0&&(z--,0==z&&(l=!q(ye),a=!q(pe),z=1,Kt(1),l&&Xt(1),Qt(1),a&&Yt(1),e?.(_t,es)&&(G(ye,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>be(Ps,t,s,l,e))))))),G(pe,(([e],t)=>Ce(Ps,t,e))),l=a=!1),it(rt[0],void 0,_t,es),z=-1,Kt(0),l&&Xt(0),Qt(0),a&&Yt(0),it(rt[1],void 0,_t,es),z=0,l=a=!1,c=hs(),I=bs(),E([P,k,A,N,de,ye,Je,Re,pe,Le],B))),Ps),Ps={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>se(X(Me,w(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>te(X(X(Me,w(e)),w(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:gs,hasTableCell:fs,hasRow:Ts,hasCell:Vs,hasValues:bs,hasValue:Cs,getTablesJson:()=>ve(Me),getValuesJson:()=>ve(Ne),getJson:()=>ve([Me,Ne]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(H(e)?ys:vs)(e),(H(t)?Js:Ss)(t)})),setTables:vs,setTable:(e,t)=>Zt((e=>gt(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?Rt(e,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return ft(e,l,t)&&(e=w(e),Rt(e,zt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const l=zt(e);D(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Tt(e,t,s,p(l)?l(cs(e,t,s)):l),(l=>Jt(e,zt(e),t,s,l)))),e,t,s),setValues:Ss,setPartialValues:e=>Zt((()=>Vt(e,1)?D(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>y(bt(e,p(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{D(e[0],((e,t)=>m(e)?Rs(t):D(e,((e,s)=>m(e)?ps(t,s):D(e,((e,l)=>be(Ps,t,s,l,e))))))),D(e[1],((e,t)=>Ce(Ps,t,e)))})),setTablesJson:ws,setValuesJson:e=>{try{Lt(Se(e))}catch{}return Ps},setJson:e=>Zt((()=>{try{const[t,s]=Se(e);It(t),Lt(s)}catch{ws(e)}})),setTablesSchema:Is,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{Is(e),ms(t)})),delTables:ys,delTable:Rs,delRow:ps,delCell:(e,t,s,l)=>Zt(((e,t,s)=>y(X(Me,e),(n=>y(X(n,t),(a=>$(a,s)?At(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>$(Ne,e)?Mt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:zs,forEachTable:e=>G(Me,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>Y(t,e))))))))),forEachTableCell:(e,t)=>Y(X(Ae,w(e)),t),forEachRow:(e,t)=>G(X(Me,w(e)),((e,s)=>t(s,(t=>Y(e,t))))),forEachCell:(e,t,s)=>Y(X(X(Me,w(e)),w(t)),s),forEachValue:e=>Y(Ne,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,L(c=o)===L(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(Ps,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),Ps),delListener:e=>(dt(e),Ps),getListenerStats:()=>({}),createStore:me,addListener:ct,callListeners:it};return D({[S+d]:[0,je,[],()=>[hs()]],[d]:[0,xe],[u]:[0,De],[S+i]:[1,He,[ss],e=>[gs(...e)]],[i]:[1,We,[ss]],[i+V]:[1,$e,[ss]],[S+i+T]:[2,qe,[ss,ls],e=>[fs(...e)]],[g]:[1,Be,[ss]],[f]:[1,Ge,[ss]],[S+h]:[2,Qe,[ss,as],e=>[Ts(...e)]],[h]:[2,Ue,[ss,as]],[V]:[2,Xe,[ss,as]],[S+T]:[3,Ye,[ss,as,rs],e=>[Vs(...e)]],[T]:[3,Ze,[ss,as,rs],e=>he(cs(...e))],InvalidCell:[3,_e],[S+C]:[0,tt,[],()=>[bs()]],[C]:[0,st],[v]:[0,lt],[S+b]:[1,nt,[ds],e=>[Cs(...e)]],[b]:[1,at,[ds],e=>he(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{Ps["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?J(n,0,e):void 0,s,l)})),M(Ps)};export{me as createStore};
1
+ const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",f=g+"Count",T=g+i,V="Cell",b=V+i,C="Value",v=C+"s",S=C+i,w=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==l,p=t=>e(t)==a,J=(e,t,s)=>e.slice(t,s),L=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.keys,A=z.isFrozen,M=z.freeze,N=e=>!m(e)&&y(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),j=(e,t)=>!m(((e,t)=>y(e,(e=>e[t])))(e,t)),x=(e,t)=>(delete e[t],e),D=(e,t)=>F(z.entries(e),(([e,s])=>t(s,e))),H=e=>N(e)&&0==(e=>L(k(e)))(e),W=e=>e?.size??0,$=(e,t)=>e?.has(t)??!1,q=e=>m(e)||0==W(e),B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=e=>new Map(e),U=e=>[...e?.keys()??[]],X=(e,t)=>e?.get(t),Y=(e,t)=>G(e,((e,s)=>t(s,e))),Z=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),_=(e,t,s)=>($(e,t)||Z(e,t,s()),X(e,t)),ee=(e,t,s,l=Z)=>(D(t,((t,l)=>s(e,l,t))),Y(e,(s=>j(t,s)?0:l(e,s))),e),te=(e,t,s)=>{const l={};return G(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},se=(e,t,s)=>te(e,(e=>te(e,t,s)),H),le=(e,t,s)=>te(e,(e=>se(e,t,s)),H),ne=(e,t)=>{const s=Q();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ae=e=>ne(e,ne),oe=e=>ne(e,ae),re=(e,t,s,l,n=0)=>y((s?_:X)(e,t[n],n>L(t)-2?s:Q),(a=>{if(n>L(t)-2)return l?.(a)&&Z(e,t[n]),a;const o=re(a,t,s,l,n+1);return q(a)&&Z(e,t[n]),o})),ce=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ie=(e,t)=>e?.add(t),de=/^\d+$/,ue=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{de.test(t)&&L(e)<1e3&&O(e,t)}]},he=e=>[e,e],ge=()=>[Q(),Q()],fe=e=>[...e],Te=([e,t])=>e===t,Ve=t=>{const s=e(t);return R(s)||s==n&&I(t)?s:void 0},be=(e,t,s,l,n)=>m(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Ce=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),Se=JSON.parse,we=(e,t,s)=>m(e)||!N(e)||H(e)||A(e)?(s?.(),!1):(D(e,((s,l)=>{t(s,l)||x(e,l)})),!H(e)),Ie=(e,t,s)=>Z(e,t,X(e,t)==-s?void 0:s),me=()=>{let e,s,l=!1,a=!1,i=!1,I=!1,z=0;const P=Q(),k=Q(),A=Q(),N=Q(),de=Q(),ye=Q(),Re=Q(),pe=Q(),Je=Q(),Le=Q(),Ee=Q(),Fe=Q(),Oe=Q(),ze=Q(),Pe=ce(),ke=Q(),Ae=Q(),Me=Q(),Ne=Q(),je=ge(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=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=Q(),rt=ge(),[ct,it,dt,ut]=(e=>{let s;const[l,n]=ue(),a=Q();return[(e,n,o,r=[],c=(()=>[]))=>{s??=Ps;const i=l(1);return Z(a,i,[e,n,o,r,c]),ie(re(n,o??[t],ce),i),i},(e,l,...n)=>E(((e,s=[t])=>{const l=[],n=(e,t)=>t==L(s)?O(l,e):null===s[t]?G(e,(e=>n(e,t+1))):E([s[t],null],(s=>n(X(e,s),t+1)));return n(e,0),l})(e,l),(e=>G(e,(e=>X(a,e)[0](s,...l??[],...n))))),e=>y(X(a,e),(([,s,l])=>(re(s,l??[t],void 0,(t=>(K(t,e),q(t)?1:0))),Z(a,e),n(e),l))),e=>y(X(a,e),(([e,,t=[],l,n])=>{const a=(...o)=>{const r=L(o);r==L(t)?e(s,...o,...n(o)):m(t[r])?E(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,t[r])};a()}))]})(),ht=e=>{if(!we(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=n||(Ve(e[r])!=t&&x(e,r),0))},gt=(t,s)=>(!e||$(Ee,s)||$t(s))&&we(t,((e,t)=>ft(s,t,e)),(()=>$t(s))),ft=(e,t,s,l)=>we(l?s:Ct(s,e,t),((l,n)=>y(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,s,l,n)=>e?y(X(X(Ee,t),l),(e=>Ve(n)!=e[o]?$t(t,s,l,n,e[r]):n),(()=>$t(t,s,l,n))):m(Ve(n))?$t(t,s,l,n):n,Vt=(e,t)=>we(t?e:vt(e),((t,s)=>y(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?y(X(Oe,e),(s=>Ve(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):m(Ve(t))?qt(e,t):t,Ct=(e,t,s)=>(y(X(Fe,t),(([l,n])=>{G(l,((t,s)=>{j(e,s)||(e[s]=t)})),G(n,(l=>{j(e,l)||$t(t,s,l)}))})),e),vt=e=>(s&&(G(ze,((t,s)=>{j(e,s)||(e[s]=t)})),G(Pe,(t=>{j(e,t)||qt(t)}))),e),St=e=>ee(Ee,e,((e,t,s)=>{const l=Q(),n=ce();ee(_(Ee,t,Q),s,((e,t,s)=>{Z(e,t,s),y(s[r],(e=>Z(l,t,e)),(()=>ie(n,t)))})),Z(Fe,t,[l,n])}),((e,t)=>{Z(Ee,t),Z(Fe,t)})),wt=e=>ee(Oe,e,((e,t,s)=>{Z(Oe,t,s),y(s[r],(e=>Z(ze,t,e)),(()=>ie(Pe,t)))}),((e,t)=>{Z(Oe,t),Z(ze,t),K(Pe,t)})),It=e=>H(e)?ys():vs(e),mt=e=>ee(Me,e,((e,t,s)=>yt(t,s)),((e,t)=>Pt(t))),yt=(e,t)=>ee(_(Me,e,(()=>(Nt(e,1),Z(ke,e,ue()),Z(Ae,e,Q()),Q()))),t,((t,s,l)=>Rt(e,t,s,l)),((t,s)=>kt(e,t,s))),Rt=(e,t,s,l,n)=>ee(_(t,s,(()=>(jt(e,s,1),Q()))),l,((t,l,n)=>pt(e,s,t,l,n)),((l,a)=>At(e,t,s,l,a,n))),pt=(e,t,s,l,n)=>{$(s,l)||xt(e,t,l,1);const a=X(s,l);n!==a&&(Dt(e,t,l,a,n),Z(s,l,n))},Jt=(e,t,s,l,n)=>y(X(t,s),(t=>pt(e,s,t,l,n)),(()=>Rt(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>H(e)?Js():Ss(e),Et=e=>ee(Ne,e,((e,t,s)=>Ft(t,s)),((e,t)=>Mt(t))),Ft=(e,t)=>{$(Ne,e)||Ht(e,1);const s=X(Ne,e);t!==s&&(Wt(e,s,t),Z(Ne,e,t))},Ot=(e,t)=>{const[s]=X(ke,e),l=s(t);return $(X(Me,e),l)?Ot(e,t):l},zt=e=>X(Me,e)??yt(e,{}),Pt=e=>yt(e,{}),kt=(e,t,s)=>{const[,l]=X(ke,e);l(s),Rt(e,t,s,{},!0)},At=(e,t,s,l,n,a)=>{const o=X(X(Fe,e)?.[0],n);if(!m(o)&&!a)return pt(e,s,l,n,o);const r=t=>{Dt(e,s,t,X(l,t)),xt(e,s,t,-1),Z(l,t)};m(o)?r(n):Y(l,r),q(l)&&(jt(e,s,-1),q(Z(t,s))&&(Nt(e,-1),Z(Me,e),Z(ke,e),Z(Ae,e)))},Mt=e=>{const t=X(ze,e);if(!m(t))return Ft(e,t);Wt(e,X(Ne,e)),Ht(e,-1),Z(Ne,e)},Nt=(e,t)=>Ie(P,e,t),jt=(e,t,s)=>Ie(_(N,e,Q),t,s)&&Z(A,e,_(A,e,(()=>0))+s),xt=(e,t,s,l)=>{const n=X(Ae,e),a=X(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&Ie(_(k,e,Q),s,l),Z(n,s,a!=-l?a+l:null),Ie(_(_(de,e,Q),t,Q),s,l)},Dt=(e,t,s,l,n)=>_(_(_(ye,e,Q),t,Q),s,(()=>[l,0]))[1]=n,Ht=(e,t)=>Ie(Re,e,t),Wt=(e,t,s)=>_(pe,e,(()=>[t,0]))[1]=s,$t=(e,t,s,l,n)=>(O(_(_(_(Je,e,Q),t,Q),s,(()=>[])),l),n),qt=(e,t,s)=>(O(_(Le,e,(()=>[])),t),s),Bt=(e,t,s)=>y(X(X(X(ye,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...he(cs(e,t,s))])),Gt=e=>y(X(pe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...he(us(e))])),Kt=e=>q(Je)||q(_e[e])?0:G(e?oe(Je):Je,((t,s)=>G(t,((t,l)=>G(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>q(Le)||q(et[e])?0:G(e?ne(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!q(e))return it(t,l,(()=>te(e))),Y(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=i&&it(je[e],void 0,t);const s=q(Ke[e]),l=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q($e[e])&&q(qe[e])&&q(Be[e])&&s&&q(De[e])&&q(He[e]),n=q(Ze[e])&&q(Ue[e])&&q(We[e])&&q(xe[e]);if(!l||!n){const t=e?[ne(P),ae(k),ne(A),ae(N),oe(de),oe(ye)]:[P,k,A,N,de,ye];if(!l){Ut(t[0],De[e],He[e]),G(t[1],((t,s)=>Ut(t,$e[e],qe[e],[s]))),G(t[2],((t,s)=>{0!=t&&it(Be[e],[s],ns(s))}));const l=ce();G(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),ie(l,n))})),s||G(t[5],((t,s)=>{if(!$(l,s)){const l=ce();G(t,(e=>G(e,(([t,s],n)=>s!==t?ie(l,n):K(e,n))))),G(l,(t=>it(Ke[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let n;G(t,((t,a)=>{let o;G(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,Bt),s=n=o=1)})),o&&it(Ue[e],[l,a],Bt)})),n&&it(We[e],[l],Bt)})),s&&it(xe[e],void 0,Bt)}}},Yt=e=>{const t=bs();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?[ne(Re),ne(pe)]:[Re,pe];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;G(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(...F(t,w)))),Ps),_t=()=>[te(ye,((e,t)=>-1===X(P,t)?null:te(e,((e,s)=>-1===X(X(N,t),s)?null:te(e,(([,e])=>e??null),((e,t)=>Te(t)))),H)),H),te(pe,(([,e])=>e??null),((e,t)=>Te(t)))],es=()=>({cellsTouched:l,valuesTouched:a,changedCells:le(ye,fe,Te),invalidCells:le(Je),changedValues:te(pe,fe,Te),invalidValues:te(Le),changedTableIds:te(P),changedRowIds:se(N),changedCellIds:le(de),changedValueIds:te(Re)}),ts=()=>le(Me),ss=()=>U(Me),ls=e=>U(X(Ae,w(e))),ns=e=>W(X(Me,w(e))),as=e=>U(X(Me,w(e))),os=(e,t,s,l=0,n)=>{return F(J((o=X(Me,w(e)),r=(e,s)=>[m(t)?s:X(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,m(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>U(X(X(Me,w(e)),w(t))),cs=(e,t,s)=>X(X(X(Me,w(e)),w(t)),w(s)),is=()=>te(Ne),ds=()=>U(Ne),us=e=>X(Ne,w(e)),hs=()=>!q(Me),gs=e=>$(Me,w(e)),fs=(e,t)=>$(X(Ae,w(e)),w(t)),Ts=(e,t)=>$(X(Me,w(e)),w(t)),Vs=(e,t,s)=>$(X(X(Me,w(e)),w(t)),w(s)),bs=()=>!q(Ne),Cs=e=>$(Ne,w(e)),vs=e=>Zt((()=>(e=>we(e,gt,$t))(e)?mt(e):0)),Ss=e=>Zt((()=>Vt(e)?Et(e):0)),ws=e=>{try{It(Se(e))}catch{}return Ps},Is=t=>Zt((()=>{if((e=we(t,(e=>we(e,ht))))&&(St(t),!q(Me))){const e=ts();ys(),vs(e)}})),ms=e=>Zt((()=>{if(s=(e=>we(e,ht))(e)){const t=is();Es(),Js(),s=!0,wt(e),Ss(t)}})),ys=()=>Zt((()=>mt({}))),Rs=e=>Zt((e=>$(Me,e)?Pt(e):0),e),ps=(e,t)=>Zt(((e,t)=>y(X(Me,e),(s=>$(s,t)?kt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{St({}),e=!1})),Es=()=>Zt((()=>{wt({}),s=!1})),Fs=(e,t)=>{if(-1!=z){Os();const s=e();return zs(t),s}},Os=()=>(-1!=z&&z++,1==z&&it(ot,void 0,_t,es),Ps),zs=e=>(z>0&&(z--,0==z&&(l=!q(ye),a=!q(pe),z=1,Kt(1),l&&Xt(1),Qt(1),a&&Yt(1),e?.(_t,es)&&(G(ye,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>be(Ps,t,s,l,e))))))),G(pe,(([e],t)=>Ce(Ps,t,e))),l=a=!1),it(rt[0],void 0,_t,es),z=-1,Kt(0),l&&Xt(0),Qt(0),a&&Yt(0),it(rt[1],void 0,_t,es),z=0,l=a=!1,i=hs(),I=bs(),E([P,k,A,N,de,ye,Je,Re,pe,Le],B))),Ps),Ps={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>se(X(Me,w(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>te(X(X(Me,w(e)),w(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:gs,hasTableCell:fs,hasRow:Ts,hasCell:Vs,hasValues:bs,hasValue:Cs,getTablesJson:()=>ve(Me),getValuesJson:()=>ve(Ne),getJson:()=>ve([Me,Ne]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(H(e)?ys:vs)(e),(H(t)?Js:Ss)(t)})),setTables:vs,setTable:(e,t)=>Zt((e=>gt(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?Rt(e,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return ft(e,l,t)&&(e=w(e),Rt(e,zt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const l=zt(e);D(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Tt(e,t,s,p(l)?l(cs(e,t,s)):l),(l=>Jt(e,zt(e),t,s,l)))),e,t,s),setValues:Ss,setPartialValues:e=>Zt((()=>Vt(e,1)?D(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>y(bt(e,p(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{D(e[0],((e,t)=>m(e)?Rs(t):D(e,((e,s)=>m(e)?ps(t,s):D(e,((e,l)=>be(Ps,t,s,l,e))))))),D(e[1],((e,t)=>Ce(Ps,t,e)))})),setTablesJson:ws,setValuesJson:e=>{try{Lt(Se(e))}catch{}return Ps},setJson:e=>Zt((()=>{try{const[t,s]=Se(e);It(t),Lt(s)}catch{ws(e)}})),setTablesSchema:Is,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{Is(e),ms(t)})),delTables:ys,delTable:Rs,delRow:ps,delCell:(e,t,s,l)=>Zt(((e,t,s)=>y(X(Me,e),(n=>y(X(n,t),(a=>$(a,s)?At(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>$(Ne,e)?Mt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:zs,forEachTable:e=>G(Me,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>Y(t,e))))))))),forEachTableCell:(e,t)=>Y(X(Ae,w(e)),t),forEachRow:(e,t)=>G(X(Me,w(e)),((e,s)=>t(s,(t=>Y(e,t))))),forEachCell:(e,t,s)=>Y(X(X(Me,w(e)),w(t)),s),forEachValue:e=>Y(Ne,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,L(c=o)===L(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(Ps,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),Ps),delListener:e=>(dt(e),Ps),getListenerStats:()=>({}),createStore:me,addListener:ct,callListeners:it};return D({[c+u]:[0,je,[],()=>[hs()]],[u]:[0,xe],[h]:[0,De],[c+d]:[1,He,[ss],e=>[gs(...e)]],[d]:[1,We,[ss]],[d+b]:[1,$e,[ss]],[c+d+V]:[2,qe,[ss,ls],e=>[fs(...e)]],[f]:[1,Be,[ss]],[T]:[1,Ge,[ss]],[c+g]:[2,Qe,[ss,as],e=>[Ts(...e)]],[g]:[2,Ue,[ss,as]],[b]:[2,Xe,[ss,as]],[c+V]:[3,Ye,[ss,as,rs],e=>[Vs(...e)]],[V]:[3,Ze,[ss,as,rs],e=>he(cs(...e))],InvalidCell:[3,_e],[c+v]:[0,tt,[],()=>[bs()]],[v]:[0,st],[S]:[0,lt],[c+C]:[1,nt,[ds],e=>[Cs(...e)]],[C]:[1,at,[ds],e=>he(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{Ps["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?J(n,0,e):void 0,s,l)})),M(Ps)};export{me as createStore};
package/lib/store.js.gz CHANGED
Binary file
package/lib/tinybase.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",d="Result",c="add",u="Ids",h="Table",g=h+"s",f=h+u,L="Row",w=L+"Count",v=L+u,I="Sorted"+L+u,S="Cell",R=S+u,T="Value",y=T+"s",C=T+u,p="Has",b=e=>t+e,V=Math.max,m=Math.min,E=isFinite,k=e=>null==e,M=(e,t,s)=>k(e)?s?.():t(e),D=e=>e==s||e==n,J=t=>e(t)==o,A=e=>Array.isArray(e),x=(e,t,s)=>e.slice(t,s),F=e=>e.length,Q=()=>{},z=(e,t)=>e.includes(t),N=(e,t)=>e.every(t),O=(e,t)=>F(e)===F(t)&&N(e,((e,s)=>t[s]===e)),P=(e,t)=>N(e,((s,n)=>0==n||t(e[n-1],s)<=0)),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),B=(e,t)=>e.map(t),H=e=>q(e,((e,t)=>e+t),0),$=e=>0==F(e),q=(e,t,s)=>e.reduce(t,s),G=(e,...t)=>e.push(...t),K=e=>e.pop(),U=e=>e.shift(),X=Object,Y=e=>X.getPrototypeOf(e),Z=X.keys,_=X.isFrozen,ee=X.freeze,te=e=>!k(e)&&M(Y(e),(e=>e==X.prototype||k(Y(e))),(()=>!0)),se=(e,t)=>!k(((e,t)=>M(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),ae=(e,t)=>B(X.entries(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>F(Z(e)))(e),re=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ie=e=>k(e)||0==re(e),de=e=>[...e?.values()??[]],ce=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),ve=(e,t,s)=>k(s)?(he(e,t),e):e?.set(t,s),Ie=(e,t,s)=>(le(e,t)||ve(e,t,s()),Le(e,t)),Se=(e,t,s,n=ve)=>(ae(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Re=(e,t,s)=>{const n={};return ue(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>Re(e,(e=>Re(e,t,s)),oe),ye=(e,t,s)=>Re(e,(e=>Te(e,t,s)),oe),Ce=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},pe=e=>Ce(e,Ce),be=e=>Ce(e,pe),Ve=(e,t,s,n,a=0)=>M((s?Ie:Le)(e,t[a],a>F(t)-2?s:ge),(o=>{if(a>F(t)-2)return n?.(o)&&ve(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ie(o)&&ve(e,t[a]),r})),me=t=>{const s=e(t);return D(s)||s==a&&E(t)?s:void 0},Ee=(e,t,s,n,a)=>k(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ke=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),Me=e=>new Set(A(e)||k(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=ge(),l=ge(),i=ge(),d=ge(),c=ge(),u=ge(),h=(t,s,...n)=>{const a=Ie(u,t,Me);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>M(Le(u,t),(n=>{W($(s)?de(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&ve(u,t)})),f=(e,s)=>{ve(r,e,s),le(l,e)||(ve(l,e,t()),ve(d,e,ge()),ve(c,e,ge()),a(i))},L=e=>{ve(r,e),ve(l,e),ve(d,e),ve(c,e),g(e),a(i)};return[()=>e,()=>fe(r),e=>we(l,e),e=>le(l,e),e=>Le(r,e),e=>Le(l,e),(e,t)=>ve(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ge(),u=ge(),L=Le(d,t),w=Le(c,t),v=t=>{const a=s=>e.getCell(n,t,s),d=Le(L,t),c=o(n,t)?s(r(a,t)):void 0;if(d===c||A(d)&&A(c)&&O(d,c)||ve(i,t,[d,c]),!k(l)){const e=Le(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&ve(u,t,s)}},I=e=>{a((()=>{ue(i,(([,e],t)=>ve(L,t,e))),ue(u,((e,t)=>ve(w,t,e)))}),i,u,L,w,e),ce(i),ce(u)};we(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,i),()=>we(u,L),h,g]},Ae=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),xe=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Fe=/^\d+$/,Qe=()=>{const e=[];let s=0;return[n=>(n?U(e):null)??t+s++,t=>{Fe.test(t)&&F(e)<1e3&&G(e,t)}]},ze=e=>{let s;const[n,a]=Qe(),o=ge();return[(a,r,l,i=[],d=(()=>[]))=>{s??=e();const c=n(1);return ve(o,c,[a,r,l,i,d]),De(Ve(r,l??[t],Me),c),c},(e,n,...a)=>W(((e,s=[t])=>{const n=[],a=(e,t)=>t==F(s)?G(n,e):null===s[t]?ue(e,(e=>a(e,t+1))):W([s[t],null],(s=>a(Le(e,s),t+1)));return a(e,0),n})(e,n),(e=>ue(e,(e=>Le(o,e)[0](s,...n??[],...a))))),e=>M(Le(o,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),ve(o,e),a(e),n))),e=>M(Le(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=F(r);l==F(t)?e(s,...r,...a(r)):k(t[l])?W(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ne=xe((e=>{let s,n,a,o=100,r=ge(),l=ge(),i=1;const d=ge(),c=ge(),[u,h,g]=ze((()=>Q)),f=ge(),L=ge(),w=[],v=[],I=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Le(f,s);ue(n,((s,n)=>ue(s,((s,a)=>ue(s,((s,o)=>Ee(e,n,a,o,s[t]))))))),ue(a,((s,n)=>ke(e,n,s[t])))})),i=1},S=e=>{ve(f,e),ve(L,e),h(c,[e])},R=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??F(e)),S),T=()=>R(w,F(w)-o),y=()=>M(s,(()=>{G(w,s),T(),R(v),s=void 0,a=1})),C=()=>{s=K(w),a=1},p=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){y();const e=Ie(r,t,ge),l=Ie(e,s,ge),i=Ie(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ie(ve(l,n))&&ie(ve(e,s))&&ie(ve(r,t))&&C(),D()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){y();const e=Ie(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(ve(l,t))&&C(),D()}})),V=(e="")=>(k(s)&&(s=t+n++,ve(f,s,[r,l]),A(s,e),r=ge(),l=ge(),a=1),s),m=()=>{$(w)||(((e,...t)=>{e.unshift(...t)})(v,V()),I(0,s),s=K(w),a=1)},E=()=>{$(v)||(G(w,s),s=U(v),I(1,s),a=1)},D=()=>{a&&(h(d),a=0)},J=e=>{const t=V(e);return D(),t},A=(e,t)=>(x(e)&&Le(L,e)!==t&&(ve(L,e,t),h(c,[e])),Q),x=e=>le(f,e),Q={setSize:e=>(o=e,T(),Q),addCheckpoint:J,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...v]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:x,getCheckpoint:e=>Le(L,e),goBackward:()=>(m(),D(),Q),goForward:()=>(E(),D(),Q),goTo:e=>{const t=z(w,e)?m:z(v,e)?E:null;for(;!k(t)&&e!=s;)t();return D(),Q},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(v),k(s)||S(s),s=void 0,n=0,J(),Q),destroy:()=>{e.delListener(p),e.delListener(b)},getListenerStats:()=>({})};return ee(Q.clear())})),Oe=(e,t)=>(e??0)<(t??0)?-1:1,Pe=xe((e=>{const s=ge(),n=ge(),[a,o,r]=ze((()=>S)),[l,i,d,c,u,h,g,,f,L,w,v]=Je(e,ge,(e=>k(e)?t:A(e)?B(e,b):b(e)),a,o),I=(t,s,n)=>{const a=u(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},S={setIndexDefinition:(e,t,a,r,l,i=Oe)=>{const d=k(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,c,u,f)=>{let L=0;const w=Me(),v=Me(),I=h(e);if(ue(a,(([e,t],s)=>{const n=Me(e),a=Me(t);ue(n,(e=>he(a,e)?he(n,e):0)),ue(n,(e=>{De(w,e),M(Le(I,e),(t=>{he(t,s),ie(t)&&(ve(I,e),L=1)}))})),ue(a,(e=>{De(w,e),le(I,e)||(ve(I,e,Me()),L=1),De(Le(I,e),s),k(r)||De(v,e)}))})),t(),ie(u)||(f?we(I,(e=>De(v,e))):we(l,(e=>M(Le(c,e),(e=>De(v,e))))),ue(v,(e=>{const t=(t,s)=>i(Le(u,t),Le(u,s),e),s=[...Le(I,e)];P(s,t)||(ve(I,e,Me(j(s,t))),De(w,e))}))),(L||f)&&!k(d)){const t=[...I];P(t,d)||(g(e,ge(j(t,d))),L=1)}L&&o(s,[e]),ue(w,(t=>o(n,[e,t])))}),Ae(a),M(r,Ae)),S},delIndexDefinition:e=>(L(e),S),getStore:l,getIndexIds:i,forEachIndex:e=>d(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,h(e)),hasIndex:c,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>fe(h(e)),getSliceRowIds:(e,t)=>de(Le(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),S),destroy:v,getListenerStats:()=>({})};return ee(S)})),je=ge([["avg",[(e,t)=>H(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=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>H(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ie(s))return;const[r,l,i,d]=a;return o||=k(e),ue(n,(([s,n])=>{o||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):d?.(e,n,s,t),o||=k(e))})),o?r(de(s),re(s)):e},Be=xe((e=>{const s=ge(),[n,a,o]=ze((()=>v)),[r,l,i,d,c,u,h,,g,f,L,w]=Je(e,Q,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),v={setMetricDefinition:(e,t,n,o,r,l,i)=>{const d=J(n)?[n,r,l,i]:Le(je,n)??Le(je,"sum");return g(e,t,((t,n,o,r,l,i)=>{const c=u(e),g=re(r);i||=k(c),t();let f=We(c,g,r,n,d,i);E(f)||(f=void 0),f!=c&&(h(e,f),a(s,[e],f,c))}),Ae(o,1)),v},delMetricDefinition:e=>(f(e),v),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:d,getTableId:c,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({})};return ee(v)})),He=ge(),$e=ge(),qe=(e,t,s,n,a,o,[r,l]=[],i=[])=>{let d,c,u,h=0,g=0;Ie(He,i,(()=>0)),Ie($e,i,(()=>[]));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(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();oe(s)&&oe(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(M(d,e.delListener),d=void 0,L),schedule:async(...e)=>(G(Le($e,i),...e),await(async()=>{if(!Le(He,i)){for(ve(He,i,1);!k(c=U(Le($e,i)));)try{await c()}catch(e){o?.(e)}ve(He,i,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>l),ee(L)},Ge=xe((e=>{const s=e.createStore,n=s(),a=s(),o=ge(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,T,y,C,,,p,,b,V,m,E,D]=Je(e,(()=>!0),Q,r,l),A=(e,t,...s)=>W(s,(s=>De(Ie(Ie(o,t,ge),e,Me),s))),z=e=>{M(Le(o,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),W([a,n],(t=>t.delTable(e)))},O=(e,t,s)=>A(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(s,o,r)=>{p(s,o),z(s);const l=[],i=[[null,[o,null,null,[],ge()]]],d=[],c=[],u=[];r({select:(e,s)=>{const n=J(e)?[F(l)+t,e]:[k(s)?e:s,t=>t(e,s)];return G(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=k(s)||J(t)?null:t,a=k(n)?t:s,o=[e,[e,n,J(a)?a:e=>e(a),[],ge()]];return G(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>G(d,J(e)?e:k(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]:Le(je,t)??[(e,t)=>t]]];return G(c,o),{as:e=>o[0]=e}},having:(e,t)=>G(u,J(e)?e:s=>s(e)===t)});const h=ge(l);if(ie(h))return P;const g=ge(i);we(g,((e,[,t])=>M(Le(g,t),(({3:t})=>k(e)?0:G(t,e)))));const f=ge(c);let L=n;if(ie(f)&&$(u))L=a;else{O(s,L,a);const e=ge();we(f,((t,[s,n])=>De(Ie(e,s,Me),[t,n])));const t=Me();we(h,(s=>le(e,s)?0:De(t,s)));const n=ge(),o=(t,n,o,r)=>M(t,(([l,i,d,c])=>{we(n,((t,[s])=>{const n=Ie(l,t,ge),a=Le(n,o),i=r?void 0:s;if(a!==i){const s=Me([[a,i]]),r=re(n);ve(n,o,i),ue(Le(e,t),(([e,t])=>{const a=We(c[e],r,n,s,t);c[e]=k(me(a))?null:a}))}})),ie(i)||!N(u,(e=>e((e=>c[e]))))?a.delRow(s,d):k(d)?t[2]=a.addRow(s,c):a.setRow(s,d,c)}));A(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const d=[],c=[],u=ge(),h=L.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,a]=i(s,l,e);G(d,n),G(c,a),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&ve(u,e,[n])})),g&&o(Ve(n,d,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&o(Ve(n,c,(()=>{const e={};return ue(t,(t=>e[t]=L.getCell(s,l,t))),[ge(),Me(),void 0,e]}),(([,e])=>{De(e,l)})),u,l)})))}O(s,e,L);const w=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,i]=Le(g,n),d=o?.(l,t),[c,u]=Le(i,t)??[];d!=c&&(k(u)||D(s,u),ve(i,t,k(d)?null:[d,...E(s,1,e.addRowListener(a,d,(()=>w(t,a,d,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...k(n)?[o,t,s]:s===o?[o,t,n]:[Le(g,s)?.[0],Le(Le(g,s)?.[4],t)?.[0],n]);L.transaction((()=>N(d,(e=>e(n)))?we(h,((e,a)=>Ee(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:v}=Le(g,null);return L.transaction((()=>E(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,v):(L.delRow(s,a),ue(g,(({4:e})=>M(Le(e,a),(([,t])=>{D(s,t),ve(e,a)})))))}))))),P},delQueryDefinition:e=>(z(e),b(e),P),getStore:g,getQueryIds:f,forEachQuery:T,hasQuery:y,getTableId:C,addQueryIdsListener:e=>V((()=>e(P))),delListener:e=>(u(e),P),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ae({[h]:[1,1],[h+R]:[0,1],[w]:[0,1],[v]:[0,1],[I]:[0,5],[L]:[1,2],[R]:[0,2],[S]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+d+s]=(...t)=>a[e+s](...t))),P[c+d+s+i]=(...e)=>a[c+s+i](...x(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),ee(P)})),Ke=xe((e=>{const s=ge(),n=ge(),a=ge(),o=ge(),[r,l,i]=ze((()=>y)),[d,c,u,h,g,f,,,L,w,v,I]=Je(e,(()=>[ge(),ge(),ge(),ge()]),(e=>k(e)?void 0:e+t),r,l),S=(e,t,s)=>M(f(e),(([n,,a])=>{if(!le(a,t)){const o=Me();if(g(e)!=T(e))De(o,t);else{let e=t;for(;!k(e)&&!le(o,e);)De(o,e),e=Le(n,e)}if(s)return o;ve(a,t,o)}return Le(a,t)})),R=(e,t)=>M(f(e),(([,,e])=>ve(e,t))),T=e=>Le(s,e),y={setRelationshipDefinition:(e,t,r,i)=>(ve(s,e,r),L(e,t,((t,s)=>{const r=Me(),i=Me(),d=Me(),[c,u]=f(e);ue(s,(([t,s],n)=>{k(t)||(De(i,t),M(Le(u,t),(e=>{he(e,n),ie(e)&&ve(u,t)}))),k(s)||(De(i,s),le(u,s)||ve(u,s,Me()),De(Le(u,s),n)),De(r,n),ve(c,n,s),we(Le(o,e),(t=>{le(S(e,t),n)&&De(d,t)}))})),t(),ue(r,(t=>l(n,[e,t]))),ue(i,(t=>l(a,[e,t]))),ue(d,(t=>{R(e,t),l(o,[e,t])}))}),Ae(i)),y),delRelationshipDefinition:e=>(ve(s,e),w(e),y),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:T,getRemoteRowId:(e,t)=>Le(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(Le(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(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=>(R(...i(e)??[]),y),destroy:I,getListenerStats:()=>({})};return ee(y)})),Ue=e=>[e,e],Xe=()=>[ge(),ge()],Ye=e=>[...e],Ze=([e,t])=>e===t,_e=e=>JSON.stringify(e,((e,t)=>t instanceof Map?X.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>k(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!oe(e)),st=(e,t,s)=>ve(e,t,Le(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,o=!1,d=!1,u=0;const I=ge(),V=ge(),m=ge(),E=ge(),A=ge(),F=ge(),Q=ge(),N=ge(),P=ge(),H=ge(),$=ge(),q=ge(),K=ge(),U=ge(),X=Me(),Y=ge(),Z=ge(),_=ge(),te=ge(),de=Xe(),Ve=Xe(),Je=Xe(),Ae=Xe(),xe=Xe(),Fe=Xe(),Ne=Xe(),Pe=Xe(),je=Xe(),We=Xe(),Be=Xe(),He=Xe(),$e=Xe(),qe=Xe(),Ge=Xe(),Ke=Xe(),at=Xe(),ot=Xe(),rt=Xe(),lt=Xe(),it=Xe(),dt=Xe(),ct=ge(),ut=Xe(),[ht,gt,ft,Lt]=ze((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>z([r,l],t))))return!1;const t=e[r];return!(!D(t)&&t!=a||(me(e[l])!=t&&ne(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:yt(s,e,t),((n,a)=>M(St(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),St=(t,s,n,a)=>e?M(Le(Le($,t),n),(e=>me(a)!=e[r]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):k(me(a))?Gt(t,s,n,a):a,Rt=(e,t)=>tt(t?e:Ct(e),((t,s)=>M(Tt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,s)=>t?M(Le(K,e),(t=>me(s)!=t[r]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):k(me(s))?Kt(e,s):s,yt=(e,t,s)=>(M(Le(q,t),(([n,a])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(a,(n=>{se(e,n)||Gt(t,s,n)}))})),e),Ct=e=>(t&&(ue(U,((t,s)=>{se(e,s)||(e[s]=t)})),ue(X,(t=>{se(e,t)||Kt(t)}))),e),pt=e=>Se($,e,((e,t,s)=>{const n=ge(),a=Me();Se(Ie($,t,ge),s,((e,t,s)=>{ve(e,t,s),M(s[l],(e=>ve(n,t,e)),(()=>De(a,t)))})),ve(q,t,[n,a])}),((e,t)=>{ve($,t),ve(q,t)})),bt=e=>Se(K,e,((e,t,s)=>{ve(K,t,s),M(s[l],(e=>ve(U,t,e)),(()=>De(X,t)))}),((e,t)=>{ve(K,t),ve(U,t),he(X,t)})),Vt=e=>oe(e)?Es():Cs(e),mt=e=>Se(_,e,((e,t,s)=>Et(t,s)),((e,t)=>zt(t))),Et=(e,t)=>Se(Ie(_,e,(()=>(jt(e,1),ve(Y,e,Qe()),ve(Z,e,ge()),ge()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>Nt(e,t,s))),kt=(e,t,s,n,a)=>Se(Ie(t,s,(()=>(Wt(e,s,1),ge()))),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)||Bt(e,t,n,1);const o=Le(s,n);a!==o&&(Ht(e,t,n,o,a),ve(s,n,a))},Dt=(e,t,s,n,a)=>M(Le(t,s),(t=>Mt(e,s,t,n,a)),(()=>kt(e,t,s,yt({[n]:a},e,s)))),Jt=e=>oe(e)?Ds():ps(e),At=e=>Se(te,e,((e,t,s)=>xt(t,s)),((e,t)=>Pt(t))),xt=(e,t)=>{le(te,e)||$t(e,1);const s=Le(te,e);t!==s&&(qt(e,s,t),ve(te,e,t))},Ft=(e,t)=>{const[s]=Le(Y,e),n=s(t);return le(Le(_,e),n)?Ft(e,t):n},Qt=e=>Le(_,e)??Et(e,{}),zt=e=>Et(e,{}),Nt=(e,t,s)=>{const[,n]=Le(Y,e);n(s),kt(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=Le(Le(q,e)?.[0],a);if(!k(r)&&!o)return Mt(e,s,n,a,r);const l=t=>{Ht(e,s,t,Le(n,t)),Bt(e,s,t,-1),ve(n,t)};k(r)?l(a):we(n,l),ie(n)&&(Wt(e,s,-1),ie(ve(t,s))&&(jt(e,-1),ve(_,e),ve(Y,e),ve(Z,e)))},Pt=e=>{const t=Le(U,e);if(!k(t))return xt(e,t);qt(e,Le(te,e)),$t(e,-1),ve(te,e)},jt=(e,t)=>st(I,e,t),Wt=(e,t,s)=>st(Ie(E,e,ge),t,s)&&ve(m,e,Ie(m,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=Le(Z,e),o=Le(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(Ie(V,e,ge),s,n),ve(a,s,o!=-n?o+n:null),st(Ie(Ie(A,e,ge),t,ge),s,n)},Ht=(e,t,s,n,a)=>Ie(Ie(Ie(F,e,ge),t,ge),s,(()=>[n,0]))[1]=a,$t=(e,t)=>st(Q,e,t),qt=(e,t,s)=>Ie(N,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(G(Ie(Ie(Ie(P,e,ge),t,ge),s,(()=>[])),n),a),Kt=(e,t,s)=>(G(Ie(H,e,(()=>[])),t),s),Ut=(e,t,s)=>M(Le(Le(Le(F,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(hs(e,t,s))])),Xt=e=>M(Le(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Ls(e))])),Yt=e=>ie(P)||ie(Ke[e])?0:ue(e?be(P):P,((t,s)=>ue(t,((t,n)=>ue(t,((t,a)=>gt(Ke[e],[s,n,a],t))))))),Zt=e=>ie(H)||ie(at[e])?0:ue(e?Ce(H):H,((t,s)=>gt(at[e],[s],t))),_t=(e,t,s,n)=>{if(!ie(e))return gt(t,n,(()=>Re(e))),we(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=o&&gt(de[e],void 0,t);const s=ie(We[e]),n=ie($e[e])&&ie(qe[e])&&ie(je[e])&&ie(Be[e])&&ie(Fe[e])&&ie(Ne[e])&&ie(Pe[e])&&s&&ie(Je[e])&&ie(Ae[e]),a=ie(Ge[e])&&ie(He[e])&&ie(xe[e])&&ie(Ve[e]);if(!n||!a){const t=e?[Ce(I),pe(V),Ce(m),pe(E),be(A),be(F)]:[I,V,m,E,A,F];if(!n){_t(t[0],Je[e],Ae[e]),ue(t[1],((t,s)=>_t(t,Fe[e],Ne[e],[s]))),ue(t[2],((t,s)=>{0!=t&&gt(Pe[e],[s],is(s))}));const n=Me();ue(t[3],((t,a)=>{_t(t,je[e],Be[e],[a])&&!s&&(gt(We[e],[a,null]),De(n,a))})),s||ue(t[5],((t,s)=>{if(!le(n,s)){const n=Me();ue(t,(e=>ue(e,(([t,s],a)=>s!==t?De(n,a):he(e,a))))),ue(n,(t=>gt(We[e],[s,t])))}})),ue(t[4],((t,s)=>ue(t,((t,n)=>_t(t,$e[e],qe[e],[s,n])))))}if(!a){let s;ue(t[5],((t,n)=>{let a;ue(t,((t,o)=>{let r;ue(t,(([t,l],i)=>{l!==t&&(gt(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&gt(He[e],[n,o],Ut)})),a&&gt(xe[e],[n],Ut)})),s&&gt(Ve[e],void 0,Ut)}}},ts=e=>{const t=Ts();t!=d&&gt(ot[e],void 0,t);const s=ie(lt[e])&&ie(it[e]),n=ie(dt[e])&&ie(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(N)]:[Q,N];if(s||_t(t[0],lt[e],it[e]),!n){let s;ue(t[1],(([t,n],a)=>{n!==t&&(gt(dt[e],[a],n,t,Xt),s=1)})),s&&gt(rt[e],void 0,Xt)}}},ss=(e,...t)=>(xs((()=>e(...B(t,b)))),zs),ns=()=>[Re(F,((e,t)=>-1===Le(I,t)?null:Re(e,((e,s)=>-1===Le(Le(E,t),s)?null:Re(e,(([,e])=>e??null),((e,t)=>Ze(t)))),oe)),oe),Re(N,(([,e])=>e??null),((e,t)=>Ze(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:ye(F,Ye,Ze),invalidCells:ye(P),changedValues:Re(N,Ye,Ze),invalidValues:Re(H),changedTableIds:Re(I),changedRowIds:Te(E),changedCellIds:ye(A),changedValueIds:Re(Q)}),os=()=>ye(_),rs=()=>fe(_),ls=e=>fe(Le(Z,b(e))),is=e=>re(Le(_,b(e))),ds=e=>fe(Le(_,b(e))),cs=(e,t,s,n=0,a)=>{return B(x(j((o=Le(_,b(e)),r=(e,s)=>[k(t)?s:Le(e,b(t)),s],B([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Oe(e,t)*(s?-1:1))),n,k(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>fe(Le(Le(_,b(e)),b(t))),hs=(e,t,s)=>Le(Le(Le(_,b(e)),b(t)),b(s)),gs=()=>Re(te),fs=()=>fe(te),Ls=e=>Le(te,b(e)),ws=()=>!ie(_),vs=e=>le(_,b(e)),Is=(e,t)=>le(Le(Z,b(e)),b(t)),Ss=(e,t)=>le(Le(_,b(e)),b(t)),Rs=(e,t,s)=>le(Le(Le(_,b(e)),b(t)),b(s)),Ts=()=>!ie(te),ys=e=>le(te,b(e)),Cs=e=>ss((()=>(e=>tt(e,vt,Gt))(e)?mt(e):0)),ps=e=>ss((()=>Rt(e)?At(e):0)),bs=e=>{try{Vt(et(e))}catch{}return zs},Vs=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(pt(t),!ie(_))){const e=os();Es(),Cs(e)}})),ms=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();As(),Ds(),t=!0,bt(e),ps(s)}})),Es=()=>ss((()=>mt({}))),ks=e=>ss((e=>le(_,e)?zt(e):0),e),Ms=(e,t)=>ss(((e,t)=>M(Le(_,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),Ds=()=>ss((()=>At({}))),Js=()=>ss((()=>{pt({}),e=!1})),As=()=>ss((()=>{bt({}),t=!1})),xs=(e,t)=>{if(-1!=u){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=u&&u++,1==u&&gt(ct,void 0,ns,as),zs),Qs=e=>(u>0&&(u--,0==u&&(s=!ie(F),n=!ie(N),u=1,Yt(1),s&&es(1),Zt(1),n&&ts(1),e?.(ns,as)&&(ue(F,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>Ee(zs,t,s,n,e))))))),ue(N,(([e],t)=>ke(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),u=-1,Yt(0),s&&es(0),Zt(0),n&&ts(0),gt(ut[1],void 0,ns,as),u=0,s=n=!1,o=ws(),d=Ts(),W([I,V,m,E,A,F,P,Q,N,H],ce))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Te(Le(_,b(e))),getTableCellIds:ls,getRowCount:is,getRowIds:ds,getSortedRowIds:cs,getRow:(e,t)=>Re(Le(Le(_,b(e)),b(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:vs,hasTableCell:Is,hasRow:Ss,hasCell:Rs,hasValues:Ts,hasValue:ys,getTablesJson:()=>_e(_),getValuesJson:()=>_e(te),getJson:()=>_e([_,te]),getTablesSchemaJson:()=>_e($),getValuesSchemaJson:()=>_e(K),getSchemaJson:()=>_e([$,K]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(oe(e)?Es:Cs)(e),(oe(t)?Ds:ps)(t)})),setTables:Cs,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)=>xs((()=>{let n;return It(e,n,t)&&(e=b(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);ae(s,((s,a)=>Dt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>M(St(e,t,s,J(n)?n(hs(e,t,s)):n),(n=>Dt(e,Qt(e),t,s,n)))),e,t,s),setValues:ps,setPartialValues:e=>ss((()=>Rt(e,1)?ae(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ss((e=>M(Tt(e,J(t)?t(Ls(e)):t),(t=>xt(e,t)))),e),setTransactionChanges:e=>ss((()=>{ae(e[0],((e,t)=>k(e)?ks(t):ae(e,((e,s)=>k(e)?Ms(t,s):ae(e,((e,n)=>Ee(zs,t,s,n,e))))))),ae(e[1],((e,t)=>ke(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Jt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);Vt(t),Jt(s)}catch{bs(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>ss((()=>{Vs(e),ms(t)})),delTables:Es,delTable:ks,delRow:Ms,delCell:(e,t,s,n)=>ss(((e,t,s)=>M(Le(_,e),(a=>M(Le(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:Ds,delValue:e=>ss((e=>le(te,e)?Pt(e):0),e),delTablesSchema:Js,delValuesSchema:As,delSchema:()=>ss((()=>{Js(),As()})),transaction:xs,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>ue(_,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachTableCell:(e,t)=>we(Le(Z,b(e)),t),forEachRow:(e,t)=>ue(Le(_,b(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le(_,b(e)),b(t)),s),forEachValue:e=>we(te,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=cs(e,t,s,n,a);return ht((()=>{const r=cs(e,t,s,n,a);O(r,l)||(l=r,o(zs,e,t,s,n,a,l))}),We[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,ct),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 ae({[p+g]:[0,de,[],()=>[ws()]],[g]:[0,Ve],[f]:[0,Je],[p+h]:[1,Ae,[rs],e=>[vs(...e)]],[h]:[1,xe,[rs]],[h+R]:[1,Fe,[rs]],[p+h+S]:[2,Ne,[rs,ls],e=>[Is(...e)]],[w]:[1,Pe,[rs]],[v]:[1,je,[rs]],[p+L]:[2,Be,[rs,ds],e=>[Ss(...e)]],[L]:[2,He,[rs,ds]],[R]:[2,$e,[rs,ds]],[p+S]:[3,qe,[rs,ds,us],e=>[Rs(...e)]],[S]:[3,Ge,[rs,ds,us],e=>Ue(hs(...e))],InvalidCell:[3,Ke],[p+y]:[0,ot,[],()=>[Ts()]],[y]:[0,rt],[C]:[0,lt],[p+T]:[1,it,[fs],e=>[ys(...e)]],[T]:[1,dt,[fs],e=>Ue(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[c+a+i]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?x(a,0,e):void 0,s,n)})),ee(zs)};export{Ne as createCheckpoints,qe as createCustomPersister,Pe as createIndexes,Be as createMetrics,Ge as createQueries,Ke as createRelationships,nt as createStore,Oe as defaultSorter};
1
+ const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",d="Result",c="add",u="Has",h="Ids",g="Table",f=g+"s",L=g+h,w="Row",v=w+"Count",I=w+h,S="Sorted"+w+h,R="Cell",T=R+h,y="Value",C=y+"s",p=y+h,b=e=>t+e,V=Math.max,m=Math.min,E=isFinite,k=e=>null==e,M=(e,t,s)=>k(e)?s?.():t(e),D=e=>e==s||e==n,J=t=>e(t)==o,A=e=>Array.isArray(e),x=(e,t,s)=>e.slice(t,s),F=e=>e.length,Q=()=>{},z=(e,t)=>e.includes(t),N=(e,t)=>e.every(t),O=(e,t)=>F(e)===F(t)&&N(e,((e,s)=>t[s]===e)),P=(e,t)=>N(e,((s,n)=>0==n||t(e[n-1],s)<=0)),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),B=(e,t)=>e.map(t),H=e=>q(e,((e,t)=>e+t),0),$=e=>0==F(e),q=(e,t,s)=>e.reduce(t,s),G=(e,...t)=>e.push(...t),K=e=>e.pop(),U=e=>e.shift(),X=Object,Y=e=>X.getPrototypeOf(e),Z=X.keys,_=X.isFrozen,ee=X.freeze,te=e=>!k(e)&&M(Y(e),(e=>e==X.prototype||k(Y(e))),(()=>!0)),se=(e,t)=>!k(((e,t)=>M(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),ae=(e,t)=>B(X.entries(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>F(Z(e)))(e),re=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ie=e=>k(e)||0==re(e),de=e=>[...e?.values()??[]],ce=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),ve=(e,t,s)=>k(s)?(he(e,t),e):e?.set(t,s),Ie=(e,t,s)=>(le(e,t)||ve(e,t,s()),Le(e,t)),Se=(e,t,s,n=ve)=>(ae(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Re=(e,t,s)=>{const n={};return ue(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>Re(e,(e=>Re(e,t,s)),oe),ye=(e,t,s)=>Re(e,(e=>Te(e,t,s)),oe),Ce=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},pe=e=>Ce(e,Ce),be=e=>Ce(e,pe),Ve=(e,t,s,n,a=0)=>M((s?Ie:Le)(e,t[a],a>F(t)-2?s:ge),(o=>{if(a>F(t)-2)return n?.(o)&&ve(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ie(o)&&ve(e,t[a]),r})),me=t=>{const s=e(t);return D(s)||s==a&&E(t)?s:void 0},Ee=(e,t,s,n,a)=>k(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ke=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),Me=e=>new Set(A(e)||k(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=ge(),l=ge(),i=ge(),d=ge(),c=ge(),u=ge(),h=(t,s,...n)=>{const a=Ie(u,t,Me);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>M(Le(u,t),(n=>{W($(s)?de(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&ve(u,t)})),f=(e,s)=>{ve(r,e,s),le(l,e)||(ve(l,e,t()),ve(d,e,ge()),ve(c,e,ge()),a(i))},L=e=>{ve(r,e),ve(l,e),ve(d,e),ve(c,e),g(e),a(i)};return[()=>e,()=>fe(r),e=>we(l,e),e=>le(l,e),e=>Le(r,e),e=>Le(l,e),(e,t)=>ve(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ge(),u=ge(),L=Le(d,t),w=Le(c,t),v=t=>{const a=s=>e.getCell(n,t,s),d=Le(L,t),c=o(n,t)?s(r(a,t)):void 0;if(d===c||A(d)&&A(c)&&O(d,c)||ve(i,t,[d,c]),!k(l)){const e=Le(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&ve(u,t,s)}},I=e=>{a((()=>{ue(i,(([,e],t)=>ve(L,t,e))),ue(u,((e,t)=>ve(w,t,e)))}),i,u,L,w,e),ce(i),ce(u)};we(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,i),()=>we(u,L),h,g]},Ae=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),xe=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Fe=/^\d+$/,Qe=()=>{const e=[];let s=0;return[n=>(n?U(e):null)??t+s++,t=>{Fe.test(t)&&F(e)<1e3&&G(e,t)}]},ze=e=>{let s;const[n,a]=Qe(),o=ge();return[(a,r,l,i=[],d=(()=>[]))=>{s??=e();const c=n(1);return ve(o,c,[a,r,l,i,d]),De(Ve(r,l??[t],Me),c),c},(e,n,...a)=>W(((e,s=[t])=>{const n=[],a=(e,t)=>t==F(s)?G(n,e):null===s[t]?ue(e,(e=>a(e,t+1))):W([s[t],null],(s=>a(Le(e,s),t+1)));return a(e,0),n})(e,n),(e=>ue(e,(e=>Le(o,e)[0](s,...n??[],...a))))),e=>M(Le(o,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),ve(o,e),a(e),n))),e=>M(Le(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=F(r);l==F(t)?e(s,...r,...a(r)):k(t[l])?W(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ne=xe((e=>{let s,n,a,o=100,r=ge(),l=ge(),i=1;const d=ge(),c=ge(),[u,h,g]=ze((()=>Q)),f=ge(),L=ge(),w=[],v=[],I=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Le(f,s);ue(n,((s,n)=>ue(s,((s,a)=>ue(s,((s,o)=>Ee(e,n,a,o,s[t]))))))),ue(a,((s,n)=>ke(e,n,s[t])))})),i=1},S=e=>{ve(f,e),ve(L,e),h(c,[e])},R=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??F(e)),S),T=()=>R(w,F(w)-o),y=()=>M(s,(()=>{G(w,s),T(),R(v),s=void 0,a=1})),C=()=>{s=K(w),a=1},p=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){y();const e=Ie(r,t,ge),l=Ie(e,s,ge),i=Ie(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ie(ve(l,n))&&ie(ve(e,s))&&ie(ve(r,t))&&C(),D()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){y();const e=Ie(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(ve(l,t))&&C(),D()}})),V=(e="")=>(k(s)&&(s=t+n++,ve(f,s,[r,l]),A(s,e),r=ge(),l=ge(),a=1),s),m=()=>{$(w)||(((e,...t)=>{e.unshift(...t)})(v,V()),I(0,s),s=K(w),a=1)},E=()=>{$(v)||(G(w,s),s=U(v),I(1,s),a=1)},D=()=>{a&&(h(d),a=0)},J=e=>{const t=V(e);return D(),t},A=(e,t)=>(x(e)&&Le(L,e)!==t&&(ve(L,e,t),h(c,[e])),Q),x=e=>le(f,e),Q={setSize:e=>(o=e,T(),Q),addCheckpoint:J,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...v]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:x,getCheckpoint:e=>Le(L,e),goBackward:()=>(m(),D(),Q),goForward:()=>(E(),D(),Q),goTo:e=>{const t=z(w,e)?m:z(v,e)?E:null;for(;!k(t)&&e!=s;)t();return D(),Q},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(v),k(s)||S(s),s=void 0,n=0,J(),Q),destroy:()=>{e.delListener(p),e.delListener(b)},getListenerStats:()=>({})};return ee(Q.clear())})),Oe=(e,t)=>(e??0)<(t??0)?-1:1,Pe=xe((e=>{const s=ge(),n=ge(),[a,o,r]=ze((()=>S)),[l,i,d,c,u,h,g,,f,L,w,v]=Je(e,ge,(e=>k(e)?t:A(e)?B(e,b):b(e)),a,o),I=(t,s,n)=>{const a=u(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},S={setIndexDefinition:(e,t,a,r,l,i=Oe)=>{const d=k(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,c,u,f)=>{let L=0;const w=Me(),v=Me(),I=h(e);if(ue(a,(([e,t],s)=>{const n=Me(e),a=Me(t);ue(n,(e=>he(a,e)?he(n,e):0)),ue(n,(e=>{De(w,e),M(Le(I,e),(t=>{he(t,s),ie(t)&&(ve(I,e),L=1)}))})),ue(a,(e=>{De(w,e),le(I,e)||(ve(I,e,Me()),L=1),De(Le(I,e),s),k(r)||De(v,e)}))})),t(),ie(u)||(f?we(I,(e=>De(v,e))):we(l,(e=>M(Le(c,e),(e=>De(v,e))))),ue(v,(e=>{const t=(t,s)=>i(Le(u,t),Le(u,s),e),s=[...Le(I,e)];P(s,t)||(ve(I,e,Me(j(s,t))),De(w,e))}))),(L||f)&&!k(d)){const t=[...I];P(t,d)||(g(e,ge(j(t,d))),L=1)}L&&o(s,[e]),ue(w,(t=>o(n,[e,t])))}),Ae(a),M(r,Ae)),S},delIndexDefinition:e=>(L(e),S),getStore:l,getIndexIds:i,forEachIndex:e=>d(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,h(e)),hasIndex:c,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>fe(h(e)),getSliceRowIds:(e,t)=>de(Le(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),S),destroy:v,getListenerStats:()=>({})};return ee(S)})),je=ge([["avg",[(e,t)=>H(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=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>H(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ie(s))return;const[r,l,i,d]=a;return o||=k(e),ue(n,(([s,n])=>{o||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):d?.(e,n,s,t),o||=k(e))})),o?r(de(s),re(s)):e},Be=xe((e=>{const s=ge(),[n,a,o]=ze((()=>v)),[r,l,i,d,c,u,h,,g,f,L,w]=Je(e,Q,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),v={setMetricDefinition:(e,t,n,o,r,l,i)=>{const d=J(n)?[n,r,l,i]:Le(je,n)??Le(je,"sum");return g(e,t,((t,n,o,r,l,i)=>{const c=u(e),g=re(r);i||=k(c),t();let f=We(c,g,r,n,d,i);E(f)||(f=void 0),f!=c&&(h(e,f),a(s,[e],f,c))}),Ae(o,1)),v},delMetricDefinition:e=>(f(e),v),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:d,getTableId:c,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({})};return ee(v)})),He=ge(),$e=ge(),qe=(e,t,s,n,a,o,[r,l]=[],i=[])=>{let d,c,u,h=0,g=0;Ie(He,i,(()=>0)),Ie($e,i,(()=>[]));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(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();oe(s)&&oe(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(M(d,e.delListener),d=void 0,L),schedule:async(...e)=>(G(Le($e,i),...e),await(async()=>{if(!Le(He,i)){for(ve(He,i,1);!k(c=U(Le($e,i)));)try{await c()}catch(e){o?.(e)}ve(He,i,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>l),ee(L)},Ge=xe((e=>{const s=e.createStore,n=s(),a=s(),o=ge(),{addListener:r,callListeners:l,delListener:u}=a,[h,f,L,y,C,,,p,,b,V,m,E,D]=Je(e,(()=>!0),Q,r,l),A=(e,t,...s)=>W(s,(s=>De(Ie(Ie(o,t,ge),e,Me),s))),z=e=>{M(Le(o,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),W([a,n],(t=>t.delTable(e)))},O=(e,t,s)=>A(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(s,o,r)=>{p(s,o),z(s);const l=[],i=[[null,[o,null,null,[],ge()]]],d=[],c=[],u=[];r({select:(e,s)=>{const n=J(e)?[F(l)+t,e]:[k(s)?e:s,t=>t(e,s)];return G(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=k(s)||J(t)?null:t,a=k(n)?t:s,o=[e,[e,n,J(a)?a:e=>e(a),[],ge()]];return G(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>G(d,J(e)?e:k(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]:Le(je,t)??[(e,t)=>t]]];return G(c,o),{as:e=>o[0]=e}},having:(e,t)=>G(u,J(e)?e:s=>s(e)===t)});const h=ge(l);if(ie(h))return P;const g=ge(i);we(g,((e,[,t])=>M(Le(g,t),(({3:t})=>k(e)?0:G(t,e)))));const f=ge(c);let L=n;if(ie(f)&&$(u))L=a;else{O(s,L,a);const e=ge();we(f,((t,[s,n])=>De(Ie(e,s,Me),[t,n])));const t=Me();we(h,(s=>le(e,s)?0:De(t,s)));const n=ge(),o=(t,n,o,r)=>M(t,(([l,i,d,c])=>{we(n,((t,[s])=>{const n=Ie(l,t,ge),a=Le(n,o),i=r?void 0:s;if(a!==i){const s=Me([[a,i]]),r=re(n);ve(n,o,i),ue(Le(e,t),(([e,t])=>{const a=We(c[e],r,n,s,t);c[e]=k(me(a))?null:a}))}})),ie(i)||!N(u,(e=>e((e=>c[e]))))?a.delRow(s,d):k(d)?t[2]=a.addRow(s,c):a.setRow(s,d,c)}));A(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const d=[],c=[],u=ge(),h=L.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,a]=i(s,l,e);G(d,n),G(c,a),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&ve(u,e,[n])})),g&&o(Ve(n,d,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&o(Ve(n,c,(()=>{const e={};return ue(t,(t=>e[t]=L.getCell(s,l,t))),[ge(),Me(),void 0,e]}),(([,e])=>{De(e,l)})),u,l)})))}O(s,e,L);const w=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,i]=Le(g,n),d=o?.(l,t),[c,u]=Le(i,t)??[];d!=c&&(k(u)||D(s,u),ve(i,t,k(d)?null:[d,...E(s,1,e.addRowListener(a,d,(()=>w(t,a,d,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...k(n)?[o,t,s]:s===o?[o,t,n]:[Le(g,s)?.[0],Le(Le(g,s)?.[4],t)?.[0],n]);L.transaction((()=>N(d,(e=>e(n)))?we(h,((e,a)=>Ee(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:v}=Le(g,null);return L.transaction((()=>E(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,v):(L.delRow(s,a),ue(g,(({4:e})=>M(Le(e,a),(([,t])=>{D(s,t),ve(e,a)})))))}))))),P},delQueryDefinition:e=>(z(e),b(e),P),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:y,getTableId:C,addQueryIdsListener:e=>V((()=>e(P))),delListener:e=>(u(e),P),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ae({[g]:[1,1],[g+T]:[0,1],[v]:[0,1],[I]:[0,1],[S]:[0,5],[w]:[1,2],[T]:[0,2],[R]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+d+s]=(...t)=>a[e+s](...t))),P[c+d+s+i]=(...e)=>a[c+s+i](...x(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),ee(P)})),Ke=xe((e=>{const s=ge(),n=ge(),a=ge(),o=ge(),[r,l,i]=ze((()=>y)),[d,c,u,h,g,f,,,L,w,v,I]=Je(e,(()=>[ge(),ge(),ge(),ge()]),(e=>k(e)?void 0:e+t),r,l),S=(e,t,s)=>M(f(e),(([n,,a])=>{if(!le(a,t)){const o=Me();if(g(e)!=T(e))De(o,t);else{let e=t;for(;!k(e)&&!le(o,e);)De(o,e),e=Le(n,e)}if(s)return o;ve(a,t,o)}return Le(a,t)})),R=(e,t)=>M(f(e),(([,,e])=>ve(e,t))),T=e=>Le(s,e),y={setRelationshipDefinition:(e,t,r,i)=>(ve(s,e,r),L(e,t,((t,s)=>{const r=Me(),i=Me(),d=Me(),[c,u]=f(e);ue(s,(([t,s],n)=>{k(t)||(De(i,t),M(Le(u,t),(e=>{he(e,n),ie(e)&&ve(u,t)}))),k(s)||(De(i,s),le(u,s)||ve(u,s,Me()),De(Le(u,s),n)),De(r,n),ve(c,n,s),we(Le(o,e),(t=>{le(S(e,t),n)&&De(d,t)}))})),t(),ue(r,(t=>l(n,[e,t]))),ue(i,(t=>l(a,[e,t]))),ue(d,(t=>{R(e,t),l(o,[e,t])}))}),Ae(i)),y),delRelationshipDefinition:e=>(ve(s,e),w(e),y),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:T,getRemoteRowId:(e,t)=>Le(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(Le(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(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=>(R(...i(e)??[]),y),destroy:I,getListenerStats:()=>({})};return ee(y)})),Ue=e=>[e,e],Xe=()=>[ge(),ge()],Ye=e=>[...e],Ze=([e,t])=>e===t,_e=e=>JSON.stringify(e,((e,t)=>t instanceof Map?X.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>k(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!oe(e)),st=(e,t,s)=>ve(e,t,Le(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,o=!1,d=!1,h=0;const S=ge(),V=ge(),m=ge(),E=ge(),A=ge(),F=ge(),Q=ge(),N=ge(),P=ge(),H=ge(),$=ge(),q=ge(),K=ge(),U=ge(),X=Me(),Y=ge(),Z=ge(),_=ge(),te=ge(),de=Xe(),Ve=Xe(),Je=Xe(),Ae=Xe(),xe=Xe(),Fe=Xe(),Ne=Xe(),Pe=Xe(),je=Xe(),We=Xe(),Be=Xe(),He=Xe(),$e=Xe(),qe=Xe(),Ge=Xe(),Ke=Xe(),at=Xe(),ot=Xe(),rt=Xe(),lt=Xe(),it=Xe(),dt=Xe(),ct=ge(),ut=Xe(),[ht,gt,ft,Lt]=ze((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>z([r,l],t))))return!1;const t=e[r];return!(!D(t)&&t!=a||(me(e[l])!=t&&ne(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:yt(s,e,t),((n,a)=>M(St(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),St=(t,s,n,a)=>e?M(Le(Le($,t),n),(e=>me(a)!=e[r]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):k(me(a))?Gt(t,s,n,a):a,Rt=(e,t)=>tt(t?e:Ct(e),((t,s)=>M(Tt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,s)=>t?M(Le(K,e),(t=>me(s)!=t[r]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):k(me(s))?Kt(e,s):s,yt=(e,t,s)=>(M(Le(q,t),(([n,a])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(a,(n=>{se(e,n)||Gt(t,s,n)}))})),e),Ct=e=>(t&&(ue(U,((t,s)=>{se(e,s)||(e[s]=t)})),ue(X,(t=>{se(e,t)||Kt(t)}))),e),pt=e=>Se($,e,((e,t,s)=>{const n=ge(),a=Me();Se(Ie($,t,ge),s,((e,t,s)=>{ve(e,t,s),M(s[l],(e=>ve(n,t,e)),(()=>De(a,t)))})),ve(q,t,[n,a])}),((e,t)=>{ve($,t),ve(q,t)})),bt=e=>Se(K,e,((e,t,s)=>{ve(K,t,s),M(s[l],(e=>ve(U,t,e)),(()=>De(X,t)))}),((e,t)=>{ve(K,t),ve(U,t),he(X,t)})),Vt=e=>oe(e)?Es():Cs(e),mt=e=>Se(_,e,((e,t,s)=>Et(t,s)),((e,t)=>zt(t))),Et=(e,t)=>Se(Ie(_,e,(()=>(jt(e,1),ve(Y,e,Qe()),ve(Z,e,ge()),ge()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>Nt(e,t,s))),kt=(e,t,s,n,a)=>Se(Ie(t,s,(()=>(Wt(e,s,1),ge()))),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)||Bt(e,t,n,1);const o=Le(s,n);a!==o&&(Ht(e,t,n,o,a),ve(s,n,a))},Dt=(e,t,s,n,a)=>M(Le(t,s),(t=>Mt(e,s,t,n,a)),(()=>kt(e,t,s,yt({[n]:a},e,s)))),Jt=e=>oe(e)?Ds():ps(e),At=e=>Se(te,e,((e,t,s)=>xt(t,s)),((e,t)=>Pt(t))),xt=(e,t)=>{le(te,e)||$t(e,1);const s=Le(te,e);t!==s&&(qt(e,s,t),ve(te,e,t))},Ft=(e,t)=>{const[s]=Le(Y,e),n=s(t);return le(Le(_,e),n)?Ft(e,t):n},Qt=e=>Le(_,e)??Et(e,{}),zt=e=>Et(e,{}),Nt=(e,t,s)=>{const[,n]=Le(Y,e);n(s),kt(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=Le(Le(q,e)?.[0],a);if(!k(r)&&!o)return Mt(e,s,n,a,r);const l=t=>{Ht(e,s,t,Le(n,t)),Bt(e,s,t,-1),ve(n,t)};k(r)?l(a):we(n,l),ie(n)&&(Wt(e,s,-1),ie(ve(t,s))&&(jt(e,-1),ve(_,e),ve(Y,e),ve(Z,e)))},Pt=e=>{const t=Le(U,e);if(!k(t))return xt(e,t);qt(e,Le(te,e)),$t(e,-1),ve(te,e)},jt=(e,t)=>st(S,e,t),Wt=(e,t,s)=>st(Ie(E,e,ge),t,s)&&ve(m,e,Ie(m,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=Le(Z,e),o=Le(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(Ie(V,e,ge),s,n),ve(a,s,o!=-n?o+n:null),st(Ie(Ie(A,e,ge),t,ge),s,n)},Ht=(e,t,s,n,a)=>Ie(Ie(Ie(F,e,ge),t,ge),s,(()=>[n,0]))[1]=a,$t=(e,t)=>st(Q,e,t),qt=(e,t,s)=>Ie(N,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(G(Ie(Ie(Ie(P,e,ge),t,ge),s,(()=>[])),n),a),Kt=(e,t,s)=>(G(Ie(H,e,(()=>[])),t),s),Ut=(e,t,s)=>M(Le(Le(Le(F,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(hs(e,t,s))])),Xt=e=>M(Le(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Ls(e))])),Yt=e=>ie(P)||ie(Ke[e])?0:ue(e?be(P):P,((t,s)=>ue(t,((t,n)=>ue(t,((t,a)=>gt(Ke[e],[s,n,a],t))))))),Zt=e=>ie(H)||ie(at[e])?0:ue(e?Ce(H):H,((t,s)=>gt(at[e],[s],t))),_t=(e,t,s,n)=>{if(!ie(e))return gt(t,n,(()=>Re(e))),we(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=o&&gt(de[e],void 0,t);const s=ie(We[e]),n=ie($e[e])&&ie(qe[e])&&ie(je[e])&&ie(Be[e])&&ie(Fe[e])&&ie(Ne[e])&&ie(Pe[e])&&s&&ie(Je[e])&&ie(Ae[e]),a=ie(Ge[e])&&ie(He[e])&&ie(xe[e])&&ie(Ve[e]);if(!n||!a){const t=e?[Ce(S),pe(V),Ce(m),pe(E),be(A),be(F)]:[S,V,m,E,A,F];if(!n){_t(t[0],Je[e],Ae[e]),ue(t[1],((t,s)=>_t(t,Fe[e],Ne[e],[s]))),ue(t[2],((t,s)=>{0!=t&&gt(Pe[e],[s],is(s))}));const n=Me();ue(t[3],((t,a)=>{_t(t,je[e],Be[e],[a])&&!s&&(gt(We[e],[a,null]),De(n,a))})),s||ue(t[5],((t,s)=>{if(!le(n,s)){const n=Me();ue(t,(e=>ue(e,(([t,s],a)=>s!==t?De(n,a):he(e,a))))),ue(n,(t=>gt(We[e],[s,t])))}})),ue(t[4],((t,s)=>ue(t,((t,n)=>_t(t,$e[e],qe[e],[s,n])))))}if(!a){let s;ue(t[5],((t,n)=>{let a;ue(t,((t,o)=>{let r;ue(t,(([t,l],i)=>{l!==t&&(gt(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&gt(He[e],[n,o],Ut)})),a&&gt(xe[e],[n],Ut)})),s&&gt(Ve[e],void 0,Ut)}}},ts=e=>{const t=Ts();t!=d&&gt(ot[e],void 0,t);const s=ie(lt[e])&&ie(it[e]),n=ie(dt[e])&&ie(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(N)]:[Q,N];if(s||_t(t[0],lt[e],it[e]),!n){let s;ue(t[1],(([t,n],a)=>{n!==t&&(gt(dt[e],[a],n,t,Xt),s=1)})),s&&gt(rt[e],void 0,Xt)}}},ss=(e,...t)=>(xs((()=>e(...B(t,b)))),zs),ns=()=>[Re(F,((e,t)=>-1===Le(S,t)?null:Re(e,((e,s)=>-1===Le(Le(E,t),s)?null:Re(e,(([,e])=>e??null),((e,t)=>Ze(t)))),oe)),oe),Re(N,(([,e])=>e??null),((e,t)=>Ze(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:ye(F,Ye,Ze),invalidCells:ye(P),changedValues:Re(N,Ye,Ze),invalidValues:Re(H),changedTableIds:Re(S),changedRowIds:Te(E),changedCellIds:ye(A),changedValueIds:Re(Q)}),os=()=>ye(_),rs=()=>fe(_),ls=e=>fe(Le(Z,b(e))),is=e=>re(Le(_,b(e))),ds=e=>fe(Le(_,b(e))),cs=(e,t,s,n=0,a)=>{return B(x(j((o=Le(_,b(e)),r=(e,s)=>[k(t)?s:Le(e,b(t)),s],B([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Oe(e,t)*(s?-1:1))),n,k(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>fe(Le(Le(_,b(e)),b(t))),hs=(e,t,s)=>Le(Le(Le(_,b(e)),b(t)),b(s)),gs=()=>Re(te),fs=()=>fe(te),Ls=e=>Le(te,b(e)),ws=()=>!ie(_),vs=e=>le(_,b(e)),Is=(e,t)=>le(Le(Z,b(e)),b(t)),Ss=(e,t)=>le(Le(_,b(e)),b(t)),Rs=(e,t,s)=>le(Le(Le(_,b(e)),b(t)),b(s)),Ts=()=>!ie(te),ys=e=>le(te,b(e)),Cs=e=>ss((()=>(e=>tt(e,vt,Gt))(e)?mt(e):0)),ps=e=>ss((()=>Rt(e)?At(e):0)),bs=e=>{try{Vt(et(e))}catch{}return zs},Vs=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(pt(t),!ie(_))){const e=os();Es(),Cs(e)}})),ms=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();As(),Ds(),t=!0,bt(e),ps(s)}})),Es=()=>ss((()=>mt({}))),ks=e=>ss((e=>le(_,e)?zt(e):0),e),Ms=(e,t)=>ss(((e,t)=>M(Le(_,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),Ds=()=>ss((()=>At({}))),Js=()=>ss((()=>{pt({}),e=!1})),As=()=>ss((()=>{bt({}),t=!1})),xs=(e,t)=>{if(-1!=h){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=h&&h++,1==h&&gt(ct,void 0,ns,as),zs),Qs=e=>(h>0&&(h--,0==h&&(s=!ie(F),n=!ie(N),h=1,Yt(1),s&&es(1),Zt(1),n&&ts(1),e?.(ns,as)&&(ue(F,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>Ee(zs,t,s,n,e))))))),ue(N,(([e],t)=>ke(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),h=-1,Yt(0),s&&es(0),Zt(0),n&&ts(0),gt(ut[1],void 0,ns,as),h=0,s=n=!1,o=ws(),d=Ts(),W([S,V,m,E,A,F,P,Q,N,H],ce))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Te(Le(_,b(e))),getTableCellIds:ls,getRowCount:is,getRowIds:ds,getSortedRowIds:cs,getRow:(e,t)=>Re(Le(Le(_,b(e)),b(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:vs,hasTableCell:Is,hasRow:Ss,hasCell:Rs,hasValues:Ts,hasValue:ys,getTablesJson:()=>_e(_),getValuesJson:()=>_e(te),getJson:()=>_e([_,te]),getTablesSchemaJson:()=>_e($),getValuesSchemaJson:()=>_e(K),getSchemaJson:()=>_e([$,K]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(oe(e)?Es:Cs)(e),(oe(t)?Ds:ps)(t)})),setTables:Cs,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)=>xs((()=>{let n;return It(e,n,t)&&(e=b(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);ae(s,((s,a)=>Dt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>M(St(e,t,s,J(n)?n(hs(e,t,s)):n),(n=>Dt(e,Qt(e),t,s,n)))),e,t,s),setValues:ps,setPartialValues:e=>ss((()=>Rt(e,1)?ae(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ss((e=>M(Tt(e,J(t)?t(Ls(e)):t),(t=>xt(e,t)))),e),setTransactionChanges:e=>ss((()=>{ae(e[0],((e,t)=>k(e)?ks(t):ae(e,((e,s)=>k(e)?Ms(t,s):ae(e,((e,n)=>Ee(zs,t,s,n,e))))))),ae(e[1],((e,t)=>ke(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Jt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);Vt(t),Jt(s)}catch{bs(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>ss((()=>{Vs(e),ms(t)})),delTables:Es,delTable:ks,delRow:Ms,delCell:(e,t,s,n)=>ss(((e,t,s)=>M(Le(_,e),(a=>M(Le(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:Ds,delValue:e=>ss((e=>le(te,e)?Pt(e):0),e),delTablesSchema:Js,delValuesSchema:As,delSchema:()=>ss((()=>{Js(),As()})),transaction:xs,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>ue(_,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachTableCell:(e,t)=>we(Le(Z,b(e)),t),forEachRow:(e,t)=>ue(Le(_,b(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le(_,b(e)),b(t)),s),forEachValue:e=>we(te,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=cs(e,t,s,n,a);return ht((()=>{const r=cs(e,t,s,n,a);O(r,l)||(l=r,o(zs,e,t,s,n,a,l))}),We[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,ct),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 ae({[u+f]:[0,de,[],()=>[ws()]],[f]:[0,Ve],[L]:[0,Je],[u+g]:[1,Ae,[rs],e=>[vs(...e)]],[g]:[1,xe,[rs]],[g+T]:[1,Fe,[rs]],[u+g+R]:[2,Ne,[rs,ls],e=>[Is(...e)]],[v]:[1,Pe,[rs]],[I]:[1,je,[rs]],[u+w]:[2,Be,[rs,ds],e=>[Ss(...e)]],[w]:[2,He,[rs,ds]],[T]:[2,$e,[rs,ds]],[u+R]:[3,qe,[rs,ds,us],e=>[Rs(...e)]],[R]:[3,Ge,[rs,ds,us],e=>Ue(hs(...e))],InvalidCell:[3,Ke],[u+C]:[0,ot,[],()=>[Ts()]],[C]:[0,rt],[p]:[0,lt],[u+y]:[1,it,[fs],e=>[ys(...e)]],[y]:[1,dt,[fs],e=>Ue(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[c+a+i]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?x(a,0,e):void 0,s,n)})),ee(zs)};export{Ne as createCheckpoints,qe as createCustomPersister,Pe as createIndexes,Be as createMetrics,Ge as createQueries,Ke as createRelationships,nt as createStore,Oe as defaultSorter};
Binary file
package/lib/tools.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=Promise,V=isFinite,x=e=>null==e,R=(e,t,l)=>x(e)?l?.():t(e),k=e=>e==n||e==o,S=t=>e(t)==n,P=e=>Array.isArray(e),A=(e,t,l)=>e.slice(t,l),E=e=>e.length,O=async e=>v.all(e),D=t=>{const l=e(t);return k(l)||l==d&&V(t)?l:void 0},N=(e,t)=>e.every(t),G=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),j=(e,t=l)=>e.join(t),M=(e,t)=>e.map(t),J=(e,t)=>e.filter(t),z=(e,...t)=>e.push(...t),W=e=>e.pop(),B=(e,...t)=>e.unshift(...t),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,H=U.freeze,Q=e=>!x(e)&&R(_(e),(e=>e==U.prototype||x(_(e))),(()=>!0)),q=(e,t)=>M(U.entries(e),(([e,l])=>t(l,e))),K=e=>E(Z(e)),X=e=>Q(e)&&0==K(e),Y=(e,t)=>e?.has(t)??!1,ee=e=>[...e?.values()??[]],te=(e,t)=>e?.forEach(t),le=(e,t)=>e?.delete(t),ae=e=>new Map(e),ne=(e,t)=>e?.get(t),oe=(e,t)=>te(e,((e,l)=>t(l,e))),de=(e,t)=>M([...e?.entries()??[]],(([e,l])=>t(l,e))),se=(e,t,l)=>x(l)?(le(e,t),e):e?.set(t,l),re=(e,t,l)=>(Y(e,t)||se(e,t,l()),ne(e,t)),Ie=e=>e.toUpperCase(),$e=e=>e.toLowerCase(),ce="a ",ue="A function for",ie=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",be="Del",Ce="Deps",he=Ce+"?: React.DependencyList",me="doRollback?: DoRollback",ge="actions: () => Return, "+me,fe="export",we="Id",ye="Invalid",Te="Json",ve=$e(I),Ve="?: ",xe=" | undefined",Re="NonNullable",ke="Partial",Se="Props",Pe="Provider",Ae=`Registers a ${ve} that will be called`,Ee="Represents",Oe="rowId: "+we,De="Schema",Ne="Set",Ge=", descending?: boolean, offset?: number, limit?: number",Le="[]",je="the Store",Me="Transaction",Je=Me+"Changes",ze=$e(Me),We="Execute a "+ze+" to make multiple mutations",Be="Explicitly starts a "+ze,Fe="Explicitly finishes a "+ze,Ue="the end of the "+ze,_e="void",Ze=" => "+_e,He="WhenSet",Qe=" when setting it",qe=ce+"string serialization of",Ke=" ",Xe="Gets a callback that can ",Ye="the ",et=" the schema for",tt=(e=0,t=0)=>`the ${gt[e]}content of`+(t?Ke+je:l),lt=(e=0,t,a=0)=>Ct[t]+Ke+tt(e,1)+(a?" when setting it":l),at=(e,t=0)=>Ee+` a Row when ${t?"s":"g"}etting ${tt()} the '${e}' `+i,nt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,ot=(e,t)=>`Calls a function for each ${e} in `+t,dt=e=>"The props passed to a component that renders "+e,st=e=>"A function that takes "+e,rt=(e,t=0)=>ue+" listening to changes to "+mt[e]+" in "+mt[t],It=(e,t,a=0)=>Ae+" whenever "+mt[e]+" in "+mt[t]+" change"+(a?l:"s"),$t=e=>`the '${e}' `+i,ct=e=>"the specified Row in "+$t(e),ut=(e,t=0)=>Ct[t]+` ${tt()} `+$t(e),it=(e,t=0)=>Ct[t]+` ${tt()} `+ct(e),pt=(e,t,l=0)=>Ct[l]+` the '${t}' Cell for `+ct(e),bt=(e,t=0)=>Ct[t]+` the '${e}' Value`,Ct=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ee,"Gets "+qe,"Sets "+qe,Ae+" whenever",Xe+"set",Xe+"add",Xe+"set part of",Xe+"delete","Renders","Gets "+qe+et,"Sets"+et,"Deletes"+et],ht=[$,"has","set","del","set","forEach",c,l],mt=[je,p,Ye+i+Ke+u,ce+i,Ye+C+Ke+u,ce+C,Ye+g+Ke+u,ce+g,"invalid Cell changes",y,Ye+w+Ke+u,ce+w,"invalid Value changes",Ye+"sorted "+C+Ke+u,Ye+g+Ke+u+" anywhere",Ye+"number of Rows"],gt=[l,"tabular ","keyed value "],ft=e=>new Set(P(e)||x(e)?e:[e]),wt=(e,t)=>e?.add(t),yt=/[^A-Za-z]+/,Tt=/[^A-Za-z0-9]+/,vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Vt=e=>e.includes(a),xt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return Y(e,n)?xt(e,t,l,a+1):(se(e,n,l),n)},Rt=e=>e.replace(vt,((e,t,l)=>{const a=77-E(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),kt=e=>e.flat(1e3),St=(e,t=0)=>j(M(e.split(Tt),((e,l)=>(l>0||t?Ie:$e)(A(e,0,1))+A(e,1)))),Pt=e=>Ie(j((e&&!yt.test(e[0])?e:" "+e).split(Tt),"_")),At=e=>`/** ${e}. */`,Et=(...e)=>j(J(e,(e=>e)),", "),Ot=(...e)=>"{"+j(e,"; ")+"}",Dt=(...e)=>Ot(...M(e,(e=>"readonly "+e))),Nt=()=>{const e=[ae(),ae(),ae(),ae()],t=ae(),a=ae(),n=e=>{const t=e.indexOf(" as ");return-1!=t?A(e,t+4):e};return[(...e)=>j(kt(e),"\n"),(t,l,...a)=>L(a,(a=>L([0,1],(n=>(t??n)==n?wt(re(e[n],l,ft),a):0)))),(e,a,n,o=l,d=1)=>xt(t,e,[a,n,o,d]),(e,t,l)=>xt(a,e,P(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>ne(a,e)===t?e:xt(a,e,t),(t=0)=>M([...G(de(e[t],((e,t)=>`import {${j(G(ee(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Vt(e)!=Vt(t)?Vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>de(t,(([e,t,a,n],o)=>[At(t),`${n?fe+" ":l}type ${o}${a} = ${e};`,l])),()=>de(a,((e,t)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${t} = ${F(e)}`,e,l])))]},Gt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>q(e,((e,a)=>t(a,St(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>q(e[t],((e,t)=>a(t,e[s],e[r],l(Pt(t),`'${t}'`),St(t,1)))),e=>q(t,((t,a)=>e(a,t[s],t[r],l(Pt(a),`'${a}'`),St(a,1))))],jt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`)))+"}"))),lt(1,5)),r=e(p+He,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),lt(1,5,1)),$=e(i+we,"keyof "+s,"A "+i+" Id in "+je),c=`<TId extends ${$}>`,u=e(i,Re+`<${s}[TId]>`,"A "+i+" in "+je,c),w=e(i+He,Re+`<${r}[TId]>`,"A "+i+" in "+je+Qe,c),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,c),T=e(C+He,w+"<TId>[Id]","A "+C+" in a "+i+Qe,c),v=e(g+we,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,c),V=e(g,Re+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${$}, CId extends ${v}<TId>>`),R=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${$}, CId = ${v}<TId>>`,0),k=e(g+pe,`(...[cellId, cell]: ${R}<TId>)`+Ze,st(ce+g+" Id, and "+g),c),S=e(C+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ze+") "+Ze,st(ce+C+" Id, and a "+g+" iterator"),c),P=e(i+g+pe,`(cellId: ${v}<TId>, count: number) `+Ze,st(ce+g+" Id, and count of how many times it appears"),c),A=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ze}] : never`,i+" Ids and callback types",`<TId = ${$}>`,0),E=e(i+pe,`(...[tableId, forEachRow]: ${A})`+Ze,st(ce+i+" Id, and a "+C+" iterator"),l),O=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ue+" returning information about any Cell's changes during a "+ze),N=e(p+I,`(${d}, getCellChange: ${D}${xe})`+Ze,rt(1)),G=e(b+I,`(${d})`+Ze,rt(2)),L=e(i+I,`(${d}, tableId: ${$}, getCellChange: ${D}${xe})`+Ze,rt(3)),j=e(i+f+I,`(${d}, tableId: ${$})`+Ze,rt(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${$})`+Ze,rt(15,3)),J=e(h+I,`(${d}, tableId: ${$})`+Ze,rt(4,3)),z=e(m+I,"("+Et(d,"tableId: "+$,"cellId: Id"+xe,"descending: boolean","offset: number","limit: number"+xe,"sortedRowIds: Ids")+")"+Ze,rt(13,3)),W=e(C+I,"("+Et(""+d,"tableId: "+$,Oe,`getCellChange: ${D}${xe}`)+")"+Ze,rt(5,3)),B=e(f+I,"("+Et(""+d,"tableId: "+$,Oe)+")"+Ze,rt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Oe}, cellId: CId, newCell: ${V}<TId, CId> ${xe}, oldCell: ${V}<TId, CId> ${xe}, getCellChange: ${D} ${xe}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,u,w,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Ze,rt(7,5)),e(ye+g+I,`(${d}, tableId: Id, ${Oe}, cellId: Id, invalidCells: any[])`+Ze,rt(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Ot(...n(((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`))),lt(2,5)),s=e(y+He,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),lt(2,5,1)),r=e(w+we,"keyof "+d,"A "+w+" Id in "+je),$=e(w,Re+`<${d}[VId]>`,"A "+w+" Id in "+je,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,w+" Ids and types in "+je,`<VId = ${r}>`,0),u=e(w+pe,`(...[valueId, value]: ${c})`+Ze,st(ce+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ue+" returning information about any Value's changes during a "+ze),p=e(y+I,`(${o}, getValueChange: ${i}${xe})`+Ze,rt(9)),b=e(T+I,`(${o})`+Ze,rt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${$}<VId> ${xe}, oldValue: ${$}<VId> ${xe}, getValueChange: ${i} ${xe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,$,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ze,rt(11)),e(ye+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Ze,rt(12))]},(t,l)=>e(Me+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ze,ue+" listening to the completion of a "+ze)],Mt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Jt=(e,t=l)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Wt=(e,a,n)=>{const[d,$,v,V,R,k,P,A]=Nt(),[E,O,D]=Lt(e,a,R),[N,G,M]=jt(v,E,O,D),J=ae(),W=(e=0)=>de(J,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||B(r,At(o)),z(r,l),r})),F=(e,t,a,n,o,d=l)=>xt(J,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(ht[e]+t+(4==e?ke:l)+a,d,n,(n==H?Jt:Mt)(ht[e]+(4==e?ke:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F(c+e+I,(n?n+", ":l)+ve+": "+t+(d?", mutator?: boolean":l),we,zt(c+e+I,o,d?"mutator":l),a,s),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),q=[],K=ae();let Y=[],te=[];if($(1,Z,H,`create${H} as create${H}Decl`),X(e))$(null,t,p);else{$(0,t,"CellChange"),$(null,t,u);const[e,a,n,d,I,c,w,y,T,V,k,P,A,D,G,M,J,W,B,F,X,te,le,oe]=N(Q,H),de=ae();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Ee+` the '${e}' `+i),v(t+i+He,I+l,Ee+` the '${e}' `+i+Qe),v(t+C,c+l,at(e)),v(t+C+He,w+l,at(e,1)),v(t+g+we,y+l,`A Cell Id for the '${e}' `+i),v(t+g+pe,V+l,st(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+pe,k+l,st(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+pe,P+l,st(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];se(de,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,A,D,G,M,J,W,B,F,X,te,le,oe),Y=[e,a,n,y,D,G,M,J,W,B,F,X,te,le,de],L([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,lt(1,n),t,a))),U(0,l,b,n+Le,nt(i,je)),U(5,l,i,_e,ot(i,je),"tableCallback: "+A,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,$,c,p]=ne(de,e);L([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,ut(e,s),o,a+d))),U(0,t,i+f,u,nt(g,"the whole of "+$t(e)),l,a),U(5,t,i+g,_e,ot(i+g,"the whole of "+$t(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+$t(e),l,a),U(0,t,h,u,nt(C,$t(e)),l,a),U(0,t,m,u,nt(C,$t(e),1),"cellId?: "+I+Ge,a+", cellId, descending, offset, limit"),U(5,t,C,_e,ot(C,$t(e)),"rowCallback: "+c,a+", rowCallback as any"),L([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,it(e,s),Oe+o,a+", rowId"+d))),U(6,t,C,we+xe,"Add a new Row to "+$t(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Le,nt(g,ct(e)),Oe,a+", rowId"),U(5,t,g,_e,ot(g,ct(e)),Oe+", cellCallback: "+$,a+", rowId, cellCallback as any"),O(e,((n,d,s,r,I)=>{const $="Map"+St(d,1);se(K,d,$);const c=d+(x(s)?xe:l);L([[c],[o],[H,`, cell: ${d} | `+$,", cell as any"],[H]],(([o,d=l,s=l],$)=>U($,t+I,g,o,pt(e,n,$),Oe+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,Ct[1]+` the '${n}' Cell anywhere in `+$t(e),l,a+", "+r)}))})),U(0,l,p+Te,Te,lt(1,6)),U(2,l,p+Te,H,lt(1,7),"tablesJson: "+Te,"tables"+Te),_(p,D,lt(1,8)+" changes"),_(b,G,It(2,0,1)),_(i,M,It(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,J,It(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,It(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,It(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,It(13,3,1),Et("tableId: TId",`cellId: ${y}<TId>`+xe,"descending: boolean","offset: number","limit: number"+xe),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,X,It(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,te,It(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,It(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${j(E((e=>ne(de,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(ye+g,oe,Ae+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...ee(K)),z(q,".set"+p+De+"({",kt(E(((e,t,a)=>[`[${a}]: {`,...O(e,((e,t,a,n)=>`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(X(a))$(null,t,y);else{const[e,a,n,d,I,c,u,i,p]=G(Q,H);$(1,Z,e,a,n,I,c,u,i,p),te=[e,a,n,c,u,i],L([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,lt(2,n),t,a))),U(0,l,T,n+Le,nt(w,je)),U(5,l,w,"void",ot(w,je),"valueCallback: "+I,"valueCallback as any"),D(((e,t,a,n,d)=>{const s="Map"+St(t,1);se(K,t,s),L([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,bt(e,s),a,n+o)))})),U(0,l,y+Te,Te,lt(2,6)),U(2,l,y+Te,H,lt(2,7),"valuesJson: "+Te,"values"+Te),_(y,c,lt(2,8)+" changes"),_(T,u,It(10,0,1)),_(w,i,It(11,0),`valueId: ${n} | null`,"valueId"),_(ye+w,p,Ae+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...ee(K)),$(0,t,"ValueChange"),z(q,".set"+y+De+"({",D(((e,t,a,n)=>[`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,lt(0,0)),U(2,l,"Content",H,lt(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Je,H,`Applies a set of ${Je} to the Store`,"transactionChanges: "+Je,"transactionChanges"),oe(K,((e,t)=>v(t,`(cell: ${e}${xe}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,t,"DoRollback",we,"IdOrNull",Te,"Store",Je),$(0,t,"Get"+Je,"GetTransactionLog"),U(0,l,Te,Te,lt(0,6)),U(2,l,Te,H,lt(0,7),"tablesAndValuesJson: "+Te,"tablesAndValuesJson"),U(7,l,ze,"Return",We,ge,"actions, doRollback","<Return>"),U(7,l,"start"+Me,H,Be),U(7,l,"finish"+Me,H,Fe,me,"doRollback");const le=M(Q,H);return _("Start"+Me,le,Ae+" just before the start of the "+ze,l,l,0),_("WillFinish"+Me,le,Ae+" just before "+Ue,l,l,0),_("DidFinish"+Me,le,Ae+" just after "+Ue,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",Ct[0]+" the underlying Store object"),$(1,t,"createStore"),$(1,Z,H,`create${H} as create${H}Decl`,le),R("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),R(Q,["{",...W(1),"}"]),[d(...k(0),...P(),fe+" interface "+H+" {",...W(0),"}",l,At(`Creates a ${H} object`),fe+" function create"+H+"(): "+H+";"),d(...k(1),fe+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),Y,te]},Bt=e=>$+e,Ft=e=>Et(Bt(e),Bt(e)+Ce),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+he,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+pe+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ze,Zt),sl="then, then"+Ce,rl=tl+Xt+we,Il="View",$l=(e,...t)=>Et(...t,ve+": "+e,ve+he,"mutator?: boolean"),cl=(...e)=>Et(...e,ve,ve+Ce,"mutator"),ul=(e,a,n,o,d)=>{const[s,r,$,c,v,V,R,k]=Nt(),[S,P,A]=Lt(e,a,v),E=`./${St(n)}.d`,O=`./${St(n)}-ui-react.d`,D="tinybase/ui-react",N=St(n,1),G=St(N),L=N+"Or"+N+we,M=G+"Or"+N+we,J=G+`={${G}}`,W=ae(),F=(e,t,a,n,o,d=l)=>(r(1,O,e+" as "+e+"Decl"),xt(W,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,$=l)=>(r(1,D,`use${t} as use${t}Core`),U(e,Et(o,K,I),a,ee+`(${M}, use${t}Core, [`+(d||l)+($?"], ["+$:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>de(W,(([t,a,n,o,d],s)=>{const r=e?[fe+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[fe+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||B(r,At(o)),z(r,l),r}));r(null,t,we,"Store",pe,Ht+"ized"+pe),r(0,D,"ComponentReturnType"),r(1,D,"useCellIds"),r(null,D,"ExtraProps"),r(0,E,N);const Q=$(L,N+" | "+we,`Used when you need to refer to a ${N} in a React hook or component`),q=$(Pe+Se,Dt(G+Ve+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Pe} 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=M+Ve+Q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+he,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+xe,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Pe} component context`),ee=c("useHook",M+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${M} as Id);`,`return hook(...preParams, ((${M} == null || typeof ${M} == 'string')`,`? ${G} : ${M})?.getStore(), ...postParams)`]),te=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=c("wrap",Et("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;"]),oe=c("useCustomOrDefaultCellIds",Et("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${M}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${M}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!X(e)){const[e,a,n,d,s,w,y,T,v,V,R,k,A,D,L]=o;r(null,E,e,a,n,s,w,y,T,v,V,R,k,A,D),r(0,E,d),r(1,E,N),r(null,t,u,"IdOrNull");const M=c("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+al+"}: 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}",ll,"customCellIds={customCellIds}",J,_t,"/>","))",al,", tableId,",");"]),z=c("getDefaultTableComponent","tableId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=c("getDefaultCellComponent","tableId: Id, cellId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${j(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,lt(1,0)+ie);const B=_(b,b,n+Le,nt(i,je)+ie);_(Ne+p+pe,Ne+p+pe,el,lt(1,9)+Kt,Et(Bt(p)+Qt+a,Bt(p)+he),Ft(p),Yt,Et(ol,`tables: ${a})`+Ze,Zt),sl),_(be+p+pe,be+p+pe,pe,lt(1,12),l,l,l,dl,sl);const F=$(g+Se,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+Ve+N,Ut),dt(ce+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=$(C+Se,Dt("tableId?: TId","rowId: Id",G+Ve+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,nl,Ut),dt(ce+C),`<TId extends ${n}>`),H=$(i+Se,Dt("tableId?: TId",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt(ce+i),`<TId extends ${n}>`),Q=$("Sorted"+i+Se,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt(ce+"sorted "+i),`<TId extends ${n}>`),q=$(p+Se,Dt(G+Ve+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),dt(tt(1,1)));r(1,O,q,H,Q,U,F),Z(p+Il,"{"+G+", tableComponents, getTableComponentProps"+al+"}: "+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,_t,"/>;","}), separator)"],lt(1,13)+ie),S(((e,t,a)=>{const[n,o,d,s,I]=ne(L,e);r(null,E,n,o,d,s,I),_(t+i,i,n,ut(e)+ie,l,a),_(t+i+f,i+f,u,nt(g,"the whole of "+$t(e))+ie,l,a);const $=_(t+h,h,u,nt(C,$t(e))+ie,l,a),c=_(t+m,m,u,nt(C,$t(e),1)+ie,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,it(e)+ie,rl,Et(a,tl)),_(t+f,f,I+Le,nt(g,ct(e))+ie,rl,Et(a,tl)),_(Ne+t+i+pe,Ne+i+pe,el,ut(e,9)+Kt,Et(Bt(i)+Qt+o,Bt(i)+he),Et(a,Ft(i)),Yt,Et(ol,`table: ${o})`+Ze,Zt),sl),_(be+t+i+pe,be+i+pe,pe,ut(e,12),l,a,l,dl,sl),_(Ne+t+C+pe,Ne+C+pe,el,it(e,9)+Kt,Et(rl,Bt(C)+Qt+s,Bt(C)+he),Et(a,tl,Ft(C)),Yt,Et(ol,`row: ${s})`+Ze,Zt),sl),_("Add"+t+C+pe,"Add"+C+pe,el,it(e,10)+Kt,Et(Bt(C)+Qt+s,Bt(C)+he),Et(a,Ft(C)),Yt,"then?: ("+Et(rl+xe,"store: Store","row: "+s+")"+Ze,"then"+he)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(Ne+t+ke+C+pe,Ne+ke+C+pe,el,it(e,11)+Kt,Et(rl,Bt(ke+C)+Qt+s,Bt(ke+C)+he),Et(a,tl,Ft(ke+C)),Yt,Et(ol,`partialRow: ${s})`+Ze,Zt),sl),_(be+t+C+pe,be+C+pe,pe,it(e,12),rl,Et(a,tl),l,dl,sl);const p=Z(t+C+Il,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+al+`}: ${U}<'${e}'>`,[le+`(${oe}(customCellIds, `+a+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ll,"cellId={cellId}",J,_t,"/>;","})"+al+", rowId)"],it(e,13)+ie);Z(t+"Sorted"+i+Il,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+c+`(cellId, descending, offset, limit, props.${G}), ${a}, ${p});`,ut(e,13)+", sorted"+ie),Z(t+i+Il,`props: ${H}<'${e}'>`,M+"(props, "+$+`(props.${G}), ${a}, ${p});`,ut(e,13)+ie),P(e,((n,o,d,s,I)=>{const $="Map"+St(o,1);r(0,E,$),r(1,E,$);const c=_(t+I+g,g,o+(x(d)?xe:l),pt(e,n)+ie,rl,Et(a,tl,s));_(Ne+t+I+g+pe,Ne+g+pe,el,pt(e,n,9)+Kt,Et(rl,Bt(g)+Qt+o+" | "+$,Bt(g)+he),Et(a,tl,s,Ft(g)),Yt,Et(ol,`cell: ${o} | ${$})`+Ze,Zt),sl),_(be+t+I+g+pe,be+g+pe,pe,pt(e,n,12),Et(rl,"forceDel?: boolean"),Et(a,tl,s,"forceDel"),l,dl,sl),Z(t+I+g+Il,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${c}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],pt(e,n,13)+ie)}))}));const K=j(S((e=>ne(L,e)?.[4]??l))," | ");_(p+I,p+I,_e,lt(1,8)+" changes",$l(s),cl()),_(b+I,b+I,_e,It(2,0,1),$l(w),cl()),_(i+I,i+I,_e,It(3,0),$l(y,`tableId: ${n} | null`),cl("tableId")),_(i+f+I,i+f+I,_e,It(14,3,1),$l(T,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,_e,It(4,3,1),$l(V,`tableId: ${n} | null`),cl("tableId")),_(m+I,m+I,_e,It(13,3,1),$l(R,`tableId: ${n} | null`,"cellId: "+K+xe,"descending: boolean","offset: number","limit: number"+xe),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,_e,It(5,3),$l(k,`tableId: ${n} | null`,tl+": IdOrNull"),cl("tableId",tl)),_(f+I,f+I,_e,It(6,5,1),$l(A,`tableId: ${n} | null`,tl+": IdOrNull"),cl("tableId",tl)),_(g+I,g+I,_e,It(7,5),$l(D,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${K} | null`),cl("tableId",tl,"cellId"))}if(!X(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,N);const u=c("getDefaultValueComponent","valueId: Id",j(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,lt(2,0)+ie);const i=_(T,T,a+Le,nt(w,je)+ie);_(Ne+y+pe,Ne+y+pe,el,lt(2,9)+Kt,Et(Bt(y)+Qt+t,Bt(y)+he),Ft(y),Yt,Et(ol,`values: ${t})`+Ze,Zt),sl),_(Ne+ke+y+pe,Ne+ke+y+pe,el,lt(2,11)+Kt,Et(Bt(ke+y)+Qt+t,Bt(ke+y)+he),Ft(ke+y),Yt,Et(ol,`partialValues: ${t})`+Ze,Zt),sl),_(be+y+pe,be+y+pe,pe,lt(2,12),l,l,l,dl,sl);const p=$(w+Se,Dt("valueId?: VId",G+Ve+N,Ut),dt("a Value"),`<VId extends ${a}>`),b=$(y+Se,Dt(G+Ve+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,nl,Ut),dt(tt(2,1)));r(1,O,b,p),Z(y+Il,"{"+G+", valueComponents, getValueComponentProps"+al+"}: "+b,[le+`(${i}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,_t,"/>;","}), separator)"],lt(2,13)+ie),A(((e,t,a,n,o)=>{const d="Map"+St(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,bt(e)+ie,l,n);_(Ne+o+w+pe,Ne+w+pe,el,bt(e,9)+Kt,Et(Bt(w)+Qt+t+" | "+d,Bt(w)+he),Et(n,Ft(w)),Yt,Et(ol,`value: ${t} | ${d})`+Ze,Zt),sl),_(be+o+w+pe,be+w+pe,pe,bt(e,12),l,n,l,dl,sl),Z(o+w+Il,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],bt(e,13)+ie)})),_(y+I,y+I,_e,lt(2,8)+" changes",$l(n),cl()),_(T+I,T+I,_e,It(10,0,1),$l(o),cl()),_(w+I,w+I,_e,It(11,0),$l(s,`valueId: ${a} | null`),cl("valueId"))}return Z(Pe,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+Pe,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Pe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...R(),...H(0)),s(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(X(e)&&X(t))return[l,l,l,l];const[n,o,d,s]=Wt(e,t,a);return[n,o,...ul(e,t,a,d,s)]},pl=JSON.parse,bl="prettier/",Cl=bl+"plugins/",hl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ml=Gt((e=>{const t=()=>{const t=pl(e.getTablesSchemaJson());return!X(t)||N(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ae();if(N(a,(t=>N(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=re(n,a,(()=>[D(o),ae(),[0],0])),[s,r,[I]]=d,$=re(r,o,(()=>0))+1;return $>I&&(d[2]=[$,o]),se(r,o,$),d[3]++,s==D(o)})))))return t[l]={},te(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==E(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=pl(e.getValuesSchemaJson());return X(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:D(l)}})),t},a=e=>il(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(bl+"standalone")).format,z(l,await import(Cl+"estree"),await import(Cl+"typescript"))}catch(e){n=async e=>e}return await O(M(a(e),(async(e,a)=>Rt(await n(e,{...hl,plugins:l,filepath:"_."+t[a]})))))};return H({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:E(e.getValueIds()),jsonLength:E(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{ml as createTools};
1
+ const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",g=h+i,m="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,L=async e=>V.all(e),N=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},D=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,Q=U.freeze,q=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),K=(e,l)=>M(U.entries(e),(([e,t])=>l(t,e))),X=e=>E(Z(e)),Y=e=>q(e)&&0==X(e),ee=(e,l)=>e?.has(l)??!1,le=e=>[...e?.values()??[]],te=(e,l)=>e?.forEach(l),ae=(e,l)=>e?.delete(l),ne=e=>new Map(e),de=(e,l)=>e?.get(l),oe=(e,l)=>te(e,((e,t)=>l(t,e))),se=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),re=(e,l,t)=>R(t)?(ae(e,l),e):e?.set(l,t),Ie=(e,l,t)=>(ee(e,l)||re(e,l,t()),de(e,l)),$e=e=>e.toUpperCase(),ce=e=>e.toLowerCase(),ue="a ",ie="A function for",be=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",Ce="Count",he="Del",ge="Deps",me=ge+"?: React.DependencyList",we="doRollback?: DoRollback",fe="actions: () => Return, "+we,Te="export",ye="Id",ve="Invalid",Ve="Json",xe=ce(I),Re="?: ",Ae=" | undefined",ke="NonNullable",Se="Partial",Pe="Props",Oe="Provider",Ee=`Registers a ${xe} that will be called`,Le="Represents",Ne="rowId: "+ye,De="Schema",Ge="Set",je=", descending?: boolean, offset?: number, limit?: number",He="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=ce(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",Qe=" => "+Ze,qe="WhenSet",Ke=" when setting it",Xe=ue+"string serialization of",Ye=" ",el="Gets a callback that can ",ll="the ",tl=" the schema for",al=(e=0)=>e?"the existence of ":"",nl=(e=0,l=0,a=0)=>al(a)+`the ${Tl[e]}content of`+(l?Ye+Me:t),dl=(e=0,l,a=0,n=0)=>ml[l]+Ye+al(n)+nl(e,1)+(a?" when setting it":t),ol=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${nl()} the '${e}' `+b,sl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,rl=(e,l)=>`Calls a function for each ${e} in `+l,Il=e=>"The props passed to a component that renders "+e,$l=e=>"A function that takes "+e,cl=(e,l=0,t=0)=>ie+" listening to changes to "+al(t)+fl[e]+" in "+fl[l],ul=(e,l,a=0,n=0)=>Ee+" whenever "+al(n)+fl[e]+" in "+fl[l]+" change"+(a?t:"s"),il=e=>`the '${e}' `+b,bl=e=>"the specified Row in "+il(e),pl=(e,l=0,t=0)=>ml[l]+Ye+nl(0,0,t)+Ye+il(e),Cl=(e,l=0,t=0)=>ml[l]+` ${nl(0,0,t)} `+bl(e),hl=(e,l,t=0,a=0)=>ml[t]+Ye+al(a)+`the '${l}' Cell for `+bl(e),gl=(e,l=0,t=0)=>ml[l]+Ye+al(t)+`the '${e}' Value`,ml=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Xe,"Sets "+Xe,Ee+" whenever",el+"set",el+"add",el+"set part of",el+"delete","Renders","Gets "+Xe+tl,"Sets"+tl,"Deletes"+tl],wl=[$,"has","set","del","set","forEach",c,t],fl=[Me,p,ll+b+Ye+i,ue+b,ll+h+Ye+i,ue+h,ll+w+Ye+i,ue+w,"invalid Cell changes",y,ll+T+Ye+i,ue+T,"invalid Value changes",ll+"sorted "+h+Ye+i,ll+w+Ye+i+" anywhere",ll+"number of Rows",ue+w+" anywhere"],Tl=[t,"tabular ","keyed value "],yl=e=>new Set(P(e)||R(e)?e:[e]),vl=(e,l)=>e?.add(l),Vl=/[^A-Za-z]+/,xl=/[^A-Za-z0-9]+/,Rl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Al=e=>e.includes(a),kl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return ee(e,n)?kl(e,l,t,a+1):(re(e,n,t),n)},Sl=e=>e.replace(Rl,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Pl=e=>e.flat(1e3),Ol=(e,l=0)=>H(M(e.split(xl),((e,t)=>(t>0||l?$e:ce)(O(e,0,1))+O(e,1)))),El=e=>$e(H((e&&!Vl.test(e[0])?e:" "+e).split(xl),"_")),Ll=e=>`/** ${e}. */`,Nl=(...e)=>H(J(e,(e=>e)),", "),Dl=(...e)=>"{"+H(e,"; ")+"}",Gl=(...e)=>Dl(...M(e,(e=>"readonly "+e))),jl=()=>{const e=[ne(),ne(),ne(),ne()],l=ne(),a=ne(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Pl(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?vl(Ie(e[n],t,yl),a):0)))),(e,a,n,d=t,o=1)=>kl(l,e,[a,n,d,o]),(e,l,t)=>kl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>de(a,e)===l?e:kl(a,e,l),(l=0)=>M([...G(se(e[l],((e,l)=>`import {${H(G(le(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Al(e)!=Al(l)?Al(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>se(l,(([e,l,a,n],d)=>[Ll(l),`${n?Te+" ":t}type ${d}${a} = ${e};`,t])),()=>se(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Hl=e=>{const l=new WeakMap;return t=>(l.has(t)||l.set(t,e(t)),l.get(t))},Ml=(e,l,t)=>[l=>K(e,((e,a)=>l(a,Ol(a,1),t(El(a),`'${a}'`)))),(l,a)=>K(e[l],((e,l)=>a(l,e[s],e[r],t(El(l),`'${l}'`),Ol(l,1)))),e=>K(l,((l,a)=>e(a,l[s],l[r],t(El(a),`'${a}'`),Ol(a,1))))],Jl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),dl(1,5)),r=e(p+qe,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),dl(1,5,1)),$=e(b+ye,"keyof "+s,"A "+b+" Id in "+Me),c=`<TId extends ${$}>`,i=e(b,ke+`<${s}[TId]>`,"A "+b+" in "+Me,c),T=e(b+qe,ke+`<${r}[TId]>`,"A "+b+" in "+Me+Ke,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+qe,T+"<TId>[Id]","A "+h+" in a "+b+Ke,c),V=e(w+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,ke+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+pe,`(...[cellId, cell]: ${A}<TId>)`+Qe,$l(ue+w+" Id, and "+w),c),S=e(h+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Qe+") "+Qe,$l(ue+h+" Id, and a "+w+" iterator"),c),P=e(b+w+pe,`(cellId: ${V}<TId>, count: number) `+Qe,$l(ue+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+pe,`(...[tableId, forEachRow]: ${O})`+Qe,$l(ue+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,ie+" returning information about any Cell's changes during a "+We),D=e(u+p+I,`(${o}, hasTables: boolean)`+Qe,cl(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${N}${Ae})`+Qe,cl(1)),j=e(C+I,`(${o})`+Qe,cl(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+Qe,cl(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${N}${Ae})`+Qe,cl(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+Qe,cl(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Qe,cl(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+Qe,cl(15,3)),U=e(g+I,`(${o}, tableId: ${$})`+Qe,cl(4,3)),_=e(m+I,"("+Nl(o,"tableId: "+$,"cellId: Id"+Ae,"descending: boolean","offset: number","limit: number"+Ae,"sortedRowIds: Ids")+")"+Qe,cl(13,3)),Z=e(u+h+I,"("+Nl(""+o,"tableId: "+$,Ne,"hasRow: boolean")+")"+Qe,cl(5,3,1)),Q=e(h+I,"("+Nl(""+o,"tableId: "+$,Ne,`getCellChange: ${N}${Ae}`)+")"+Qe,cl(5,3)),q=e(f+I,"("+Nl(""+o,"tableId: "+$,Ne)+")"+Qe,cl(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Qe,cl(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, newCell: ${x}<TId, CId> ${Ae}, oldCell: ${x}<TId, CId> ${Ae}, getCellChange: ${N} ${Ae}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Qe,cl(7,5)),e(ve+w+I,`(${o}, tableId: Id, ${Ne}, cellId: Id, invalidCells: any[])`+Qe,cl(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Dl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),dl(2,5)),s=e(y+qe,Dl(...n(((e,l)=>`'${e}'?: ${l}`))),dl(2,5,1)),r=e(T+ye,"keyof "+o,"A "+T+" Id in "+Me),$=e(T,ke+`<${o}[VId]>`,"A "+T+" Id in "+Me,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+Me,`<VId = ${r}>`,0),i=e(T+pe,`(...[valueId, value]: ${c})`+Qe,$l(ue+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ie+" returning information about any Value's changes during a "+We),p=e(u+y+I,`(${d}, hasValues: boolean)`+Qe,cl(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Ae})`+Qe,cl(9)),h=e(v+I,`(${d})`+Qe,cl(10)),g=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+Qe,cl(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Ae}, oldValue: ${$}<VId> ${Ae}, getValueChange: ${b} ${Ae}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,g,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+Qe,cl(11)),e(ve+T+I,`(${d}, valueId: Id, invalidValues: any[])`+Qe,cl(12))]},(l,t)=>e(Je+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Qe,ie+" listening to the completion of a "+We)],zl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Wl=(e,l=t)=>`fluent(() => ${zl(e,l)})`,Bl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Fl=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=jl(),[E,L,N]=Ml(e,a,A),[D,G,M]=Jl(V,E,L,N),J=ne(),W=(e=0)=>se(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Ll(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>kl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(wl[e]+l+(4==e?Se:t)+a,o,n,(n==Q?Wl:zl)(wl[e]+(4==e?Se:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+xe+": "+l+(o?", mutator?: boolean":t),ye,Bl(c+e+I,d,o?"mutator":t),a,s),Z=`./${Ol(n)}.d`,Q=Ol(n,1),q=Ol(Q),K=[],X=ne();let ee=[],te=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),Y(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue]=D(q,Q),ie=ne();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+qe,I+t,Le+` the '${e}' `+b+Ke),V(l+h,c+t,ol(e)),V(l+h+qe,T+t,ol(e,1)),V(l+w+ye,y+t,`A Cell Id for the '${e}' `+b),V(l+w+pe,x+t,$l(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+pe,k+t,$l(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+pe,P+t,$l(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];re(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue),ee=[e,a,n,y,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,dl(1,n),l,a))),U(0,t,C,n+He,sl(b,Me)),U(5,t,b,Ze,rl(b,Me),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=de(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,pl(e,s),d,a+o))),U(0,l,b+f,i,sl(w,"the whole of "+il(e)),t,a),U(5,l,b+w,Ze,rl(b+w,"the whole of "+il(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+Ce,"number","Gets the number of Rows in the "+il(e),t,a),U(0,l,g,i,sl(h,il(e)),t,a),U(0,l,m,i,sl(h,il(e),1),"cellId?: "+I+je,a+", cellId, descending, offset, limit"),U(5,l,h,Ze,rl(h,il(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,Cl(e,s),Ne+d,a+", rowId"+o))),U(6,l,h,ye+Ae,"Add a new Row to "+il(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+He,sl(w,bl(e)),Ne,a+", rowId"),U(5,l,w,Ze,rl(w,bl(e)),Ne+", cellCallback: "+$,a+", rowId, cellCallback as any"),L(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);re(X,o,$);const c=o+(R(s)?Ae:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,hl(e,n,$),Ne+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,ml[1]+` the '${n}' Cell anywhere in `+il(e),t,a+", "+r)}))})),U(0,t,p+Ve,Ve,dl(1,6)),U(2,t,p+Ve,Q,dl(1,7),"tablesJson: "+Ve,"tables"+Ve),_(u+p,N,dl(1,8,0,1)+" changes"),_(p,G,dl(1,8)+" changes"),_(C,M,ul(2,0,1)),_(u+b,J,ul(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,ul(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,ul(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,ul(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+Ce,Y,ul(15,3),`tableId: ${n} | null`,"tableId"),_(g,te,ul(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,ae,ul(13,3,1),Nl("tableId: TId",`cellId: ${y}<TId>`+Ae,"descending: boolean","offset: number","limit: number"+Ae),Nl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,oe,ul(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,ul(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Ie,ul(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,ul(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,ul(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(ve+w,ue,Ee+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...le(X)),z(K,".set"+p+De+"({",Pl(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Y(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),te=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,dl(2,n),l,a))),U(0,t,v,n+He,sl(T,Me)),U(5,t,T,"void",rl(T,Me),"valueCallback: "+I,"valueCallback as any"),N(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);re(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Ve,Ve,dl(2,6)),U(2,t,y+Ve,Q,dl(2,7),"valuesJson: "+Ve,"values"+Ve),_(u+y,c,dl(2,8,0,1)+" changes"),_(y,i,dl(2,8)+" changes"),_(v,b,ul(10,0,1)),_(u+T,p,ul(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,ul(11,0),`valueId: ${n} | null`,"valueId"),_(ve+T,h,Ee+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...le(X)),$(0,l,"ValueChange"),z(K,".set"+y+De+"({",N(((e,l,a,n)=>[`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,dl(0,0)),U(2,t,"Content",Q,dl(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,t,ze,Q,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),oe(X,((e,l)=>V(l,`(cell: ${e}${Ae}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",ye,"IdOrNull",Ve,"Store",ze),$(0,l,"Get"+ze,"GetTransactionLog"),U(0,t,Ve,Ve,dl(0,6)),U(2,t,Ve,Q,dl(0,7),"tablesAndValuesJson: "+Ve,"tablesAndValuesJson"),U(7,t,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,t,"start"+Je,Q,Fe),U(7,t,"finish"+Je,Q,Ue,we,"doRollback");const ae=M(q,Q);return _("Start"+Je,ae,Ee+" just before the start of the "+We,t,t,0),_("WillFinish"+Je,ae,Ee+" just before "+_e,t,t,0),_("DidFinish"+Je,ae,Ee+" just after "+_e,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",ml[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),Te+" interface "+Q+" {",...W(0),"}",t,Ll(`Creates a ${Q} object`),Te+" function create"+Q+"(): "+Q+";"),o(...k(1),Te+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),ee,te]},Ul=e=>$+e,_l=e=>Nl(Ul(e),Ul(e)+ge),Zl="debugIds?: boolean",Ql="debugIds={debugIds}",ql="then"+me,Kl="Parameter",Xl=": (parameter: "+Kl+", store: Store) => ",Yl="const contextValue = useContext(Context);",et=", based on a parameter",lt=": ",tt="<"+Kl+",>",at=Kl+"ized"+pe+"<"+Kl+">",nt="rowId",dt="rowId={rowId}",ot=", separator, debugIds",st="separator?: ReactElement | string",rt="then?: (store: Store",It=Nl(rt+")"+Qe,ql),$t="then, then"+ge,ct=nt+lt+ye,ut="View",it=(e,...l)=>Nl(...l,xe+": "+e,xe+me,"mutator?: boolean"),bt=(...e)=>Nl(...e,xe,xe+ge,"mutator"),pt=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=jl(),[O,E,L]=Ml(e,a,A),N=`./${Ol(n)}.d`,D=`./${Ol(n)}-ui-react.d`,G="tinybase/ui-react",j=Ol(n,1),M=Ol(j),J=j+"Or"+j+ye,W=M+"Or"+j+ye,F=M+`={${M}}`,U=ne(),_=(e,l,a,n,d,o=t)=>(c(1,D,e+" as "+e+"Decl"),kl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Nl(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>se(U,(([l,a,n,d,o],s)=>{const r=e?[Te+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[Te+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Ll(d)),z(r,t),r}));c(null,l,ye,"Store",pe,Kl+"ized"+pe),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=V(J,j+" | "+ye,`Used when you need to refer to a ${j} in a React hook or component`),ee=V(Oe+Pe,Gl(M+Re+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Oe} 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,ee);const le=W+Re+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+me,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+Ae,["{",Yl,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Oe} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),oe=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=x("wrap",Nl("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=x("useCustomOrDefaultCellIds",Nl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!Y(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,L,G,J,z,W,B,U,_]=s;c(null,N,e,a,n,$,T,y,v,A,k,S,P,L,G,J,z,W,U,B),c(0,N,r),c(1,N,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+ot+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+oe+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",dt,"customCellIds={customCellIds}",F,Ql,"/>","))",ot,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,dl(1,0,0,1)+be),Q(p,p,e,dl(1,0)+be);const Y=Q(C,C,n+He,sl(b,Me)+be);Q(Ge+p+pe,Ge+p+pe,at,dl(1,9)+et,Nl(Ul(p)+Xl+a,Ul(p)+me),_l(p),tt,Nl(rt,`tables: ${a})`+Qe,ql),$t),Q(he+p+pe,he+p+pe,pe,dl(1,12),t,t,t,It,$t);const ee=V(w+Pe,Gl("tableId?: TId","rowId: Id","cellId?: CId",M+Re+j,Zl),Il(ue+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Pe,Gl("tableId?: TId","rowId: Id",M+Re+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,st,Zl),Il(ue+h),`<TId extends ${n}>`),te=V(b+Pe,Gl("tableId?: TId",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Pe,Gl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+"sorted "+b),`<TId extends ${n}>`),ne=V(p+Pe,Gl(M+Re+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,st,Zl),Il(nl(1,1)));c(1,D,ne,te,ae,le,ee),q(p+ut,"{"+M+", tableComponents, getTableComponentProps"+ot+"}: "+ne,[re+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${oe}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,Ql,"/>;","}), separator)"],dl(1,13)+be),O(((e,l,a)=>{const[n,s,r,I,$]=de(_,e);c(null,N,n,s,r,I,$),Q(u+l+b,u+b,d,pl(e,0,1)+be,t,a),Q(l+b,b,n,pl(e)+be,t,a),Q(l+b+f,b+f,i,sl(w,"the whole of "+il(e))+be,t,a),Q(l+h+Ce,h+Ce,o,"Gets the number of Rows in "+il(e)+be,t,a);const p=Q(l+g,g,i,sl(h,il(e))+be,t,a),C=Q(l+m,m,i,sl(h,il(e),1)+be,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,Cl(e,0,1)+be,ct,Nl(a,nt)),Q(l+h,h,r,Cl(e)+be,ct,Nl(a,nt)),Q(l+f,f,$+He,sl(w,bl(e))+be,ct,Nl(a,nt)),Q(Ge+l+b+pe,Ge+b+pe,at,pl(e,9)+et,Nl(Ul(b)+Xl+s,Ul(b)+me),Nl(a,_l(b)),tt,Nl(rt,`table: ${s})`+Qe,ql),$t),Q(he+l+b+pe,he+b+pe,pe,pl(e,12),t,a,t,It,$t),Q(Ge+l+h+pe,Ge+h+pe,at,Cl(e,9)+et,Nl(ct,Ul(h)+Xl+I,Ul(h)+me),Nl(a,nt,_l(h)),tt,Nl(rt,`row: ${I})`+Qe,ql),$t),Q("Add"+l+h+pe,"Add"+h+pe,at,Cl(e,10)+et,Nl(Ul(h)+Xl+I,Ul(h)+me),Nl(a,_l(h)),tt,"then?: ("+Nl(ct+Ae,"store: Store","row: "+I+")"+Qe,"then"+me)+", reuseRowIds?: boolean",$t+", reuseRowIds"),Q(Ge+l+Se+h+pe,Ge+Se+h+pe,at,Cl(e,11)+et,Nl(ct,Ul(Se+h)+Xl+I,Ul(Se+h)+me),Nl(a,nt,_l(Se+h)),tt,Nl(rt,`partialRow: ${I})`+Qe,ql),$t),Q(he+l+h+pe,he+h+pe,pe,Cl(e,12),ct,Nl(a,nt),t,It,$t);const T=q(l+h+ut,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+ot+`}: ${le}<'${e}'>`,[re+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${oe}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,dt,"cellId={cellId}",F,Ql,"/>;","})"+ot+", rowId)"],Cl(e,13)+be);q(l+"Sorted"+b+ut,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,pl(e,13)+", sorted"+be),q(l+b+ut,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,pl(e,13)+be),E(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);c(0,N,$),c(1,N,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${al(1)}the '${n}' Cell anywhere in `+il(e)+be,t,Nl(a,r)),Q(u+l+I+w,u+w,d,hl(e,n,0,1)+be,ct,Nl(a,nt,r));const i=Q(l+I+w,w,o+(R(s)?Ae:t),hl(e,n)+be,ct,Nl(a,nt,r));Q(Ge+l+I+w+pe,Ge+w+pe,at,hl(e,n,9)+et,Nl(ct,Ul(w)+Xl+o+" | "+$,Ul(w)+me),Nl(a,nt,r,_l(w)),tt,Nl(rt,`cell: ${o} | ${$})`+Qe,ql),$t),Q(he+l+I+w+pe,he+w+pe,pe,hl(e,n,12),Nl(ct,"forceDel?: boolean"),Nl(a,nt,r,"forceDel"),t,It,$t),q(l+I+w+ut,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[re+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],hl(e,n,13)+be)}))}));const se=H(O((e=>de(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Ze,dl(1,8,0,1)+" changes",it($),bt()),Q(p+I,p+I,Ze,dl(1,8)+" changes",it(T),bt()),Q(C+I,C+I,Ze,ul(2,0,1),it(y),bt()),Q(u+b+I,u+b+I,Ze,ul(3,0,0,1),it(v,`tableId: ${n} | null`),bt("tableId")),Q(b+I,b+I,Ze,ul(3,0),it(A,`tableId: ${n} | null`),bt("tableId")),Q(b+f+I,b+f+I,Ze,ul(14,3,1),it(k,`tableId: ${n} | null`),bt("tableId")),Q(u+b+w+I,u+b+w+I,Ze,ul(16,3,0,1),it(S,`tableId: ${n} | null`,`cellId: ${se} | null`),bt("tableId","cellId")),Q(h+Ce+I,h+Ce+I,Ze,ul(15,3),it(P,`tableId: ${n} | null`),bt("tableId")),Q(g+I,g+I,Ze,ul(4,3,1),it(L,`tableId: ${n} | null`),bt("tableId")),Q(m+I,m+I,Ze,ul(13,3,1),it(G,`tableId: ${n} | null`,"cellId: "+se+Ae,"descending: boolean","offset: number","limit: number"+Ae),bt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Ze,ul(5,3,0,1),it(J,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(h+I,h+I,Ze,ul(5,3),it(z,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(f+I,f+I,Ze,ul(6,5,1),it(W,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(u+w+I,u+w+I,Ze,ul(7,5,0,1),it(B,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId")),Q(w+I,w+I,Ze,ul(7,5),it(U,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId"))}if(!Y(a)){const[e,l,a,n,o,s,$,i]=r;c(null,N,...r),c(1,N,j);const b=x("getDefaultValueComponent","valueId: Id",H(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,dl(2,0,0,1)+be),Q(y,y,e,dl(2,0)+be);const p=Q(v,v,a+He,sl(T,Me)+be);Q(Ge+y+pe,Ge+y+pe,at,dl(2,9)+et,Nl(Ul(y)+Xl+l,Ul(y)+me),_l(y),tt,Nl(rt,`values: ${l})`+Qe,ql),$t),Q(Ge+Se+y+pe,Ge+Se+y+pe,at,dl(2,11)+et,Nl(Ul(Se+y)+Xl+l,Ul(Se+y)+me),_l(Se+y),tt,Nl(rt,`partialValues: ${l})`+Qe,ql),$t),Q(he+y+pe,he+y+pe,pe,dl(2,12),t,t,t,It,$t);const C=V(T+Pe,Gl("valueId?: VId",M+Re+j,Zl),Il("a Value"),`<VId extends ${a}>`),h=V(y+Pe,Gl(M+Re+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,st,Zl),Il(nl(2,1)));c(1,D,h,C),q(y+ut,"{"+M+", valueComponents, getValueComponentProps"+ot+"}: "+h,[re+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${oe}(getValueComponentProps, valueId)}`,"key={valueId}",F,Ql,"/>;","}), separator)"],dl(2,13)+be),L(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);c(0,N,s),c(1,N,s),Q(u+o+T,u+T,d,gl(e,0,1)+be,t,n);const r=Q(o+T,T,l,gl(e)+be,t,n);Q(Ge+o+T+pe,Ge+T+pe,at,gl(e,9)+et,Nl(Ul(T)+Xl+l+" | "+s,Ul(T)+me),Nl(n,_l(T)),tt,Nl(rt,`value: ${l} | ${s})`+Qe,ql),$t),Q(he+o+T+pe,he+T+pe,pe,gl(e,12),t,n,t,It,$t),q(o+T+ut,`{${M}, debugIds}: ${C}<'${e}'>`,[re+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+be)})),Q(u+y+I,u+y+I,Ze,dl(2,8,0,1)+" changes",it(n),bt()),Q(y+I,y+I,Ze,dl(2,8)+" changes",it(o),bt()),Q(v+I,v+I,Ze,ul(10,0,1),it(s),bt()),Q(u+T+I,u+T+I,Ze,ul(11,0,0,1),it($,`valueId: ${a} | null`),bt("valueId")),Q(T+I,T+I,Ze,ul(11,0),it(i,`valueId: ${a} | null`),bt("valueId"))}return q(Oe,`{${M}, ${M}ById, children}: `+ee+" & {children: React.ReactNode}",["{",Yl,"return (","<Context."+Oe,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Oe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},Ct=(e,l,a)=>{if(Y(e)&&Y(l))return[t,t,t,t];const[n,d,o,s]=Fl(e,l,a);return[n,d,...pt(e,l,a,o,s)]},ht=JSON.parse,gt="prettier/",mt=gt+"plugins/",wt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ft=Hl((e=>{const l=()=>{const l=ht(e.getTablesSchemaJson());return!Y(l)||D(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=ne();if(D(a,(l=>D(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=Ie(n,a,(()=>[N(d),ne(),[0],0])),[s,r,[I]]=o,$=Ie(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),re(r,d,$),o[3]++,s==N(d)})))))return l[t]={},te(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=ht(e.getValuesSchemaJson());return Y(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:N(t)}})),l},a=e=>Ct(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(mt+"estree"),await import(mt+"typescript"))}catch(e){n=async e=>e}return await L(M(a(e),(async(e,a)=>Sl(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:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{ft as createTools};
package/lib/tools.js.gz CHANGED
Binary file
@@ -2331,7 +2331,7 @@ export interface Store {
2331
2331
  hasCell(tableId: Id, rowId: Id, cellId: Id): boolean;
2332
2332
 
2333
2333
  /**
2334
- * The hasTables method returns a boolean indicating whether any Values exist
2334
+ * The hasValues method returns a boolean indicating whether any Values exist
2335
2335
  * in the Store.
2336
2336
  * @returns Whether any Values exist.
2337
2337
  * @example
@@ -421,7 +421,7 @@ export interface Tools {
421
421
  * // -> `export type Tables = {pets?: {[rowId: Id]: {price?: number}}};`
422
422
  *
423
423
  * const tsLines = ts.split('\n');
424
- * console.log(tsLines[84]);
424
+ * console.log(tsLines[89]);
425
425
  * // -> ' hasPetsTable: (): boolean => store.hasTable(PETS),'
426
426
  * ```
427
427
  * @example
@@ -441,7 +441,7 @@ export interface Tools {
441
441
  * // -> 'export type Tables = {pets?: {[rowId: Id]: {price: number}}};'
442
442
  *
443
443
  * const tsLines = ts.split('\n');
444
- * console.log(tsLines[86]);
444
+ * console.log(tsLines[91]);
445
445
  * // -> ' hasPetsTable: (): boolean => store.hasTable(PETS),'
446
446
  * ```
447
447
  * @category Modelling