tinybase 3.1.0 → 3.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/cjs/checkpoints.cjs +1 -1
  4. package/lib/cjs/checkpoints.cjs.gz +0 -0
  5. package/lib/cjs/indexes.cjs +1 -1
  6. package/lib/cjs/indexes.cjs.gz +0 -0
  7. package/lib/cjs/metrics.cjs +1 -1
  8. package/lib/cjs/metrics.cjs.gz +0 -0
  9. package/lib/cjs/relationships.cjs +1 -1
  10. package/lib/cjs/relationships.cjs.gz +0 -0
  11. package/lib/cjs/store.cjs +1 -1
  12. package/lib/cjs/store.cjs.gz +0 -0
  13. package/lib/cjs/tinybase.cjs +1 -1
  14. package/lib/cjs/tinybase.cjs.gz +0 -0
  15. package/lib/cjs/tools.cjs +1 -1
  16. package/lib/cjs/tools.cjs.gz +0 -0
  17. package/lib/cjs/ui-react.cjs +1 -1
  18. package/lib/cjs/ui-react.cjs.gz +0 -0
  19. package/lib/cjs-es6/checkpoints.cjs +1 -1
  20. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  21. package/lib/cjs-es6/indexes.cjs +1 -1
  22. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  23. package/lib/cjs-es6/metrics.cjs +1 -1
  24. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  25. package/lib/cjs-es6/relationships.cjs +1 -1
  26. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  27. package/lib/cjs-es6/store.cjs +1 -1
  28. package/lib/cjs-es6/store.cjs.gz +0 -0
  29. package/lib/cjs-es6/tinybase.cjs +1 -1
  30. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  31. package/lib/cjs-es6/tools.cjs +1 -1
  32. package/lib/cjs-es6/tools.cjs.gz +0 -0
  33. package/lib/cjs-es6/ui-react.cjs +1 -1
  34. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  35. package/lib/debug/checkpoints.js +2 -2
  36. package/lib/debug/indexes.js +2 -2
  37. package/lib/debug/metrics.js +2 -2
  38. package/lib/debug/relationships.js +2 -2
  39. package/lib/debug/store.js +17 -24
  40. package/lib/debug/tinybase.js +17 -24
  41. package/lib/debug/tools.js +5 -4
  42. package/lib/debug/ui-react.js +3 -2
  43. package/lib/es6/checkpoints.js +1 -1
  44. package/lib/es6/checkpoints.js.gz +0 -0
  45. package/lib/es6/indexes.js +1 -1
  46. package/lib/es6/indexes.js.gz +0 -0
  47. package/lib/es6/metrics.js +1 -1
  48. package/lib/es6/metrics.js.gz +0 -0
  49. package/lib/es6/relationships.js +1 -1
  50. package/lib/es6/relationships.js.gz +0 -0
  51. package/lib/es6/store.js +1 -1
  52. package/lib/es6/store.js.gz +0 -0
  53. package/lib/es6/tinybase.js +1 -1
  54. package/lib/es6/tinybase.js.gz +0 -0
  55. package/lib/es6/tools.js +1 -1
  56. package/lib/es6/tools.js.gz +0 -0
  57. package/lib/es6/ui-react.js +1 -1
  58. package/lib/es6/ui-react.js.gz +0 -0
  59. package/lib/indexes.js +1 -1
  60. package/lib/indexes.js.gz +0 -0
  61. package/lib/metrics.js +1 -1
  62. package/lib/metrics.js.gz +0 -0
  63. package/lib/relationships.js +1 -1
  64. package/lib/relationships.js.gz +0 -0
  65. package/lib/store.js +1 -1
  66. package/lib/store.js.gz +0 -0
  67. package/lib/tinybase.js +1 -1
  68. package/lib/tinybase.js.gz +0 -0
  69. package/lib/tools.js +1 -1
  70. package/lib/tools.js.gz +0 -0
  71. package/lib/types/store.d.ts +22 -12
  72. package/lib/types/ui-react.d.ts +11 -0
  73. package/lib/types/with-schemas/store.d.ts +23 -12
  74. package/lib/types/with-schemas/ui-react.d.ts +12 -0
  75. package/lib/ui-react.js +1 -1
  76. package/lib/ui-react.js.gz +0 -0
  77. package/lib/umd/checkpoints.js +1 -1
  78. package/lib/umd/checkpoints.js.gz +0 -0
  79. package/lib/umd/indexes.js +1 -1
  80. package/lib/umd/indexes.js.gz +0 -0
  81. package/lib/umd/metrics.js +1 -1
  82. package/lib/umd/metrics.js.gz +0 -0
  83. package/lib/umd/relationships.js +1 -1
  84. package/lib/umd/relationships.js.gz +0 -0
  85. package/lib/umd/store.js +1 -1
  86. package/lib/umd/store.js.gz +0 -0
  87. package/lib/umd/tinybase.js +1 -1
  88. package/lib/umd/tinybase.js.gz +0 -0
  89. package/lib/umd/tools.js +1 -1
  90. package/lib/umd/tools.js.gz +0 -0
  91. package/lib/umd/ui-react.js +1 -1
  92. package/lib/umd/ui-react.js.gz +0 -0
  93. package/lib/umd-es6/checkpoints.js +1 -1
  94. package/lib/umd-es6/checkpoints.js.gz +0 -0
  95. package/lib/umd-es6/indexes.js +1 -1
  96. package/lib/umd-es6/indexes.js.gz +0 -0
  97. package/lib/umd-es6/metrics.js +1 -1
  98. package/lib/umd-es6/metrics.js.gz +0 -0
  99. package/lib/umd-es6/relationships.js +1 -1
  100. package/lib/umd-es6/relationships.js.gz +0 -0
  101. package/lib/umd-es6/store.js +1 -1
  102. package/lib/umd-es6/store.js.gz +0 -0
  103. package/lib/umd-es6/tinybase.js +1 -1
  104. package/lib/umd-es6/tinybase.js.gz +0 -0
  105. package/lib/umd-es6/tools.js +1 -1
  106. package/lib/umd-es6/tools.js.gz +0 -0
  107. package/lib/umd-es6/ui-react.js +1 -1
  108. package/lib/umd-es6/ui-react.js.gz +0 -0
  109. package/package.json +9 -9
  110. package/readme.md +1 -1
package/lib/umd/store.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),l=t(!0),a=t(0),r=t(t),o="type",c="default",i=e=>s+e,u=(e,t)=>e.forEach(t),d=(e,t)=>e.map(t),f=e=>e.length,h=(e,t,s)=>e.slice(t,s),T=(e,...t)=>e.push(...t),g=e=>JSON.stringify(e,((e,t)=>{return y(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),n={},[...t].reduce(s,n)):t;var s,n})),b=JSON.parse,V=isFinite,y=(e,t)=>e instanceof t,S=e=>null==e,p=(e,t,s)=>S(e)?s?.():t(e),v=e=>e==n||e==l,w=e=>t(e)==r,m=(e,t)=>e?.has(t)??!1,I=e=>S(e)||0==(e=>e.size)(e),R=e=>e.clear(),C=(e,t)=>e?.forEach(t),J=(e,t)=>e?.delete(t),L=e=>new Map(e),E=e=>[...e?.keys()??[]],F=(e,t)=>e?.get(t),x=(e,t)=>C(e,((e,s)=>t(s,e))),z=(e,t,s)=>S(s)?(J(e,t),e):e?.set(t,s),O=(e,t,s)=>(m(e,t)||z(e,t,s()),F(e,t)),j=(e,t,s)=>{const n={},l=t??(e=>e);return C(e,((e,t)=>p(l(e),(e=>s?.(e)?0:n[t]=e)))),n},k=(e,t)=>{const s=L(),n=t??(e=>e);return C(e,((e,t)=>s.set(t,n(e)))),s},A=e=>k(e,k),M=(e,t,s,n,l=0)=>p((s?O:F)(e,t[l],l>f(t)-2?s:L),(a=>{if(l>f(t)-2)return n?.(a)&&z(e,t[l]),a;const r=M(a,t,s,n,l+1);return I(a)&&z(e,t[l]),r})),N=e=>new Set(Array.isArray(e)||S(e)?e:[e]),P=(e,t)=>e?.add(t),B=/^\d+$/,D=()=>{const e=[];let t=0;return[()=>e.shift()??s+t++,t=>{B.test(t)&&f(e)<1e3&&T(e,t)}]},W=Object,$=W.keys,q=W.isFrozen,G=W.freeze,H=e=>y(e,W)&&e.constructor==W,K=(e,t)=>!S(((e,t)=>p(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>d(W.entries(e),(([e,s])=>t(s,e))),X=e=>{return H(e)&&(t=$(e),0==f(t));var t},Y=e=>[e,e],Z=()=>[L(),L()],_=e=>{const s=t(e);return v(s)||s==a&&V(e)?s:void 0},ee=(e,t,s,n=z)=>{const l=(a=e=>!K(t,e),E(e).filter(a));var a;return u($(t),(n=>s(e,n,t[n]))),u(l,(t=>n(e,t))),e},te=(e,t,s)=>S(e)||!H(e)||X(e)||q(e)?(s?.(),!1):(U(e,((s,n)=>{t(s,n)||Q(e,n)})),!X(e)),se=(e,t,s)=>z(e,t,F(e,t)==-s?void 0:s),ne=()=>{let e,t,n,l,r=0;const V=L(),y=L(),B=L(),W=L(),$=L(),q=L(),H=L(),le=L(),ae=L(),re=L(),oe=L(),ce=L(),ie=N(),ue=L(),de=L(),fe=L(),he=Z(),Te=Z(),ge=Z(),be=Z(),Ve=Z(),ye=Z(),Se=Z(),pe=Z(),ve=Z(),we=Z(),me=Z(),Ie=Z(),Re=Z(),Ce=Z(),[Je,Le,Ee,Fe]=(e=>{let t;const[n,l]=D(),a=L();return[(e,l,r,o=[],c=(()=>[]))=>{t??=Pt;const i=n();return z(a,i,[e,l,r,o,c]),P(M(l,r??[s],N),i),i},(e,n,...l)=>u(((e,t=[s])=>{const n=[],l=(e,s)=>s==f(t)?T(n,e):null===t[s]?C(e,(e=>l(e,s+1))):u([t[s],null],(t=>l(F(e,t),s+1)));return l(e,0),n})(e,n),(e=>C(e,(e=>F(a,e)[0](t,...n??[],...l))))),e=>p(F(a,e),(([,t,n])=>(M(t,n??[s],void 0,(t=>(J(t,e),I(t)?1:0))),z(a,e),l(e),n))),e=>p(F(a,e),(([e,,s=[],n,l])=>{const a=(...r)=>{const o=f(r);o==f(s)?e(t,...r,...l(r)):S(s[o])?u(n[o]?.(...r)??[],(e=>a(...r,e))):a(...r,s[o])};a()}))]})(),xe=e=>{if(!te(e,((e,t)=>[o,c].includes(t))))return!1;const t=e.type;return!(!v(t)&&t!=a||(_(e.default)!=t&&Q(e,c),0))},ze=(t,s)=>(!e||m(ae,s)||ct(s))&&te(t,((e,t)=>Oe(s,t,e)),(()=>ct(s))),Oe=(e,t,s,n)=>te(n?s:Me(s,e,t),((n,l)=>p(je(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>ct(e,t))),je=(t,s,n,l)=>e?p(F(F(ae,t),n),(e=>_(l)!=e.type?ct(t,s,n,l,e.default):l),(()=>ct(t,s,n,l))):S(_(l))?ct(t,s,n,l):l,ke=(e,t)=>te(t?e:Ne(e),((t,s)=>p(Ae(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>it())),Ae=(e,s)=>t?p(F(oe,e),(t=>_(s)!=t.type?it(e,s,t.default):s),(()=>it(e,s))):S(_(s))?it(e,s):s,Me=(e,t,s)=>(p(F(re,t),(([n,l])=>{C(n,((t,s)=>{K(e,s)||(e[s]=t)})),C(l,(n=>{K(e,n)||ct(t,s,n)}))})),e),Ne=e=>(t&&(C(ce,((t,s)=>{K(e,s)||(e[s]=t)})),C(ie,(t=>{K(e,t)||it(t)}))),e),Pe=e=>ee(ae,e,((e,t,s)=>{const n=L(),l=N();ee(O(ae,t,L),s,((e,t,s)=>{z(e,t,s),p(s.default,(e=>z(n,t,e)),(()=>P(l,t)))})),z(re,t,[n,l])}),((e,t)=>{z(ae,t),z(re,t)})),Be=e=>ee(oe,e,((e,t,s)=>{z(oe,t,s),p(s.default,(e=>z(ce,t,e)),(()=>P(ie,t)))}),((e,t)=>{z(oe,t),z(ce,t),J(ie,t)})),De=e=>X(e)?zt():Jt(e),We=e=>ee(de,e,((e,t,s)=>$e(t,s)),((e,t)=>Ze(t))),$e=(e,t)=>ee(O(de,e,(()=>(st(e,1),L()))),t,((t,s,n)=>qe(e,t,s,n)),((t,s)=>_e(e,t,s))),qe=(e,t,s,n,l)=>ee(O(t,s,(()=>(nt(e,s,1),L()))),n,((t,n,l)=>Ge(e,s,t,n,l)),((n,a)=>et(e,t,s,n,a,l))),Ge=(e,t,s,n,l)=>{m(s,n)||lt(e,t,n,1);const a=F(s,n);l!==a&&(at(e,t,n,a,l),z(s,n,l))},He=(e,t,s,n,l)=>p(F(t,s),(t=>Ge(e,s,t,n,l)),(()=>qe(e,t,s,Me({[n]:l},e,s)))),Ke=e=>X(e)?Ot():Lt(e),Qe=e=>ee(fe,e,((e,t,s)=>Ue(t,s)),((e,t)=>tt(t))),Ue=(e,t)=>{m(fe,e)||rt(e,1);const s=F(fe,e);t!==s&&(ot(e,s,t),z(fe,e,t))},Xe=e=>{const[t]=O(ue,e,D),s=t();return m(F(de,e),s)?Xe(e):s},Ye=e=>F(de,e)??$e(e,{}),Ze=e=>$e(e,{}),_e=(e,t,s)=>{const[,n]=O(ue,e,D);n(s),qe(e,t,s,{},!0)},et=(e,t,s,n,l,a)=>{const r=F(F(re,e)?.[0],l);if(!S(r)&&!a)return Ge(e,s,n,l,r);const o=t=>{at(e,s,t,F(n,t)),lt(e,s,t,-1),z(n,t)};S(r)?o(l):x(n,o),I(n)&&(nt(e,s,-1),I(z(t,s))&&(st(e,-1),z(de,e),z(ue,e)))},tt=e=>{const t=F(ce,e);if(!S(t))return Ue(e,t);ot(e,F(fe,e)),rt(e,-1),z(fe,e)},st=(e,t)=>se(V,e,t),nt=(e,t,s)=>se(O(y,e,L),t,s),lt=(e,t,s,n)=>se(O(O(B,e,L),t,L),s,n),at=(e,t,s,n,l)=>O(O(O(W,e,L),t,L),s,(()=>[n,0]))[1]=l,rt=(e,t)=>se($,e,t),ot=(e,t,s)=>O(q,e,(()=>[t,0]))[1]=s,ct=(e,t,s,n,l)=>(T(O(O(O(H,e,L),t,L),s,(()=>[])),n),l),it=(e,t,s)=>(T(O(le,e,(()=>[])),t),s),ut=(e,t,s)=>p(F(F(F(W,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(mt(e,t,s))])),dt=e=>p(F(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ct(e))])),ft=e=>I(H)||I(ve[e])?0:C(e?k(H,A):H,((t,s)=>C(t,((t,n)=>C(t,((t,l)=>Le(ve[e],[s,n,l],t))))))),ht=e=>I(le)||I(we[e])?0:C(e?k(le):le,((t,s)=>Le(we[e],[s],t))),Tt=(e,t,s)=>{if(!I(t))return Le(e,s),1},gt=e=>{const t=I(Ve[e]),s=I(Se[e])&&I(be[e])&&t&&I(Te[e]),n=I(pe[e])&&I(ye[e])&&I(ge[e])&&I(he[e]);if(!s||!n){const l=e?[k(V),A(y),k(B,A),k(W,A)]:[V,y,B,W];if(!s){C(l[2],((t,s)=>C(t,((t,n)=>Tt(Se[e],t,[s,n])))));const s=N();C(l[1],((n,l)=>{Tt(be[e],n,[l])&&!t&&(Le(Ve[e],[l,null]),P(s,l))})),t||C(l[3],((t,n)=>{if(!m(s,n)){const s=N();C(t,(e=>C(e,(([t,n],l)=>n!==t?P(s,l):J(e,l))))),C(s,(t=>Le(Ve[e],[n,t])))}})),Tt(Te[e],l[0])}if(!n){let t;C(l[3],((s,n)=>{let l;C(s,((s,a)=>{let r;C(s,(([s,o],c)=>{o!==s&&(Le(pe[e],[n,a,c],o,s,ut),t=l=r=1)})),r&&Le(ye[e],[n,a],ut)})),l&&Le(ge[e],[n],ut)})),t&&Le(he[e],void 0,ut)}}},bt=e=>{const t=I(Ie[e]),s=I(Re[e])&&I(me[e]);if(!t||!s){const n=e?[k($),k(q)]:[$,q];if(t||Tt(Ie[e],n[0]),!s){let t;C(n[1],(([s,n],l)=>{n!==s&&(Le(Re[e],[l],n,s,dt),t=1)})),t&&Le(me[e],void 0,dt)}}},Vt=(e,...t)=>(At((()=>e(...d(t,i)))),Pt),yt=()=>j(de,(e=>j(e,j))),St=()=>E(de),pt=e=>E(F(de,i(e))),vt=(e,t,s,n=0,l)=>{return d(h((r=F(de,i(e)),o=(e,s)=>[S(t)?s:F(e,i(t)),s],a=([e],[t])=>(e<t?-1:1)*(s?-1:1),d([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),n,S(l)?l:n+l),(([,e])=>e));var a,r,o},wt=(e,t)=>E(F(F(de,i(e)),i(t))),mt=(e,t,s)=>F(F(F(de,i(e)),i(t)),i(s)),It=()=>j(fe),Rt=()=>E(fe),Ct=e=>F(fe,i(e)),Jt=e=>Vt((()=>(e=>te(e,ze,ct))(e)?We(e):0)),Lt=e=>Vt((()=>ke(e)?Qe(e):0)),Et=e=>{try{De(b(e))}catch{}return Pt},Ft=t=>Vt((()=>{if((e=te(t,(e=>te(e,xe))))&&(Pe(t),!I(de))){const e=yt();zt(),Jt(e)}})),xt=e=>Vt((()=>{if(t=(e=>te(e,xe))(e)){const s=It();kt(),Ot(),t=!0,Be(e),Lt(s)}})),zt=()=>Vt((()=>We({}))),Ot=()=>Vt((()=>Qe({}))),jt=()=>Vt((()=>{Pe({}),e=!1})),kt=()=>Vt((()=>{Be({}),t=!1})),At=(e,t)=>{if(-1==r)return;Mt();const s=e();return Nt(t),s},Mt=()=>(r++,Pt),Nt=e=>(r>0&&(r--,0==r&&(n=!I(W),l=!I(q),r=1,ft(1),n&&gt(1),ht(1),l&&bt(1),r=-1,e?.(j(W,(e=>j(e,(e=>j(e,(e=>[...e]),(([e,t])=>e===t))),X)),X),j(H,(e=>j(e,j))),j(q,(e=>[...e]),(([e,t])=>e===t)),j(le))&&(r=1,C(W,((e,t)=>C(e,((e,s)=>C(e,(([e],n)=>((e,t,s,n,l)=>S(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l))(Pt,t,s,n,e))))))),C(q,(([e],t)=>((e,t,s)=>S(s)?e.delValue(t):e.setValue(t,s))(Pt,t,e))),r=-1,n=l=!1),Le(Ce[0],void 0,n,l),ft(0),n&&gt(0),ht(0),l&&bt(0),Le(Ce[1],void 0,n,l),r=0,u([V,y,B,W,H,$,q,le],R))),Pt),Pt={getTables:yt,getTableIds:St,getTable:e=>j(F(de,i(e)),j),getRowIds:pt,getSortedRowIds:vt,getRow:(e,t)=>j(F(F(de,i(e)),i(t))),getCellIds:wt,getCell:mt,getValues:It,getValueIds:Rt,getValue:Ct,hasTables:()=>!I(de),hasTable:e=>m(de,i(e)),hasRow:(e,t)=>m(F(de,i(e)),i(t)),hasCell:(e,t,s)=>m(F(F(de,i(e)),i(t)),i(s)),hasValues:()=>!I(fe),hasValue:e=>m(fe,i(e)),getTablesJson:()=>g(de),getValuesJson:()=>g(fe),getJson:()=>g([de,fe]),getTablesSchemaJson:()=>g(ae),getValuesSchemaJson:()=>g(oe),getSchemaJson:()=>g([ae,oe]),setTables:Jt,setTable:(e,t)=>Vt((e=>ze(t,e)?$e(e,t):0),e),setRow:(e,t,s)=>Vt(((e,t)=>Oe(e,t,s)?qe(e,Ye(e),t,s):0),e,t),addRow:(e,t)=>At((()=>{let s;return Oe(e,s,t)&&(e=i(e),qe(e,Ye(e),s=Xe(e),t)),s})),setPartialRow:(e,t,s)=>Vt(((e,t)=>{if(Oe(e,t,s,1)){const n=Ye(e);U(s,((s,l)=>He(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>Vt(((e,t,s)=>p(je(e,t,s,w(n)?n(mt(e,t,s)):n),(n=>He(e,Ye(e),t,s,n)))),e,t,s),setValues:Lt,setPartialValues:e=>Vt((()=>ke(e,1)?U(e,((e,t)=>Ue(t,e))):0)),setValue:(e,t)=>Vt((e=>p(Ae(e,w(t)?t(Ct(e)):t),(t=>Ue(e,t)))),e),setTablesJson:Et,setValuesJson:e=>{try{Ke(b(e))}catch{}return Pt},setJson:e=>{try{const[t,s]=b(e);De(t),Ke(s)}catch{Et(e)}return Pt},setTablesSchema:Ft,setValuesSchema:xt,setSchema:(e,t)=>Vt((()=>{Ft(e),xt(t)})),delTables:zt,delTable:e=>Vt((e=>m(de,e)?Ze(e):0),e),delRow:(e,t)=>Vt(((e,t)=>p(F(de,e),(s=>m(s,t)?_e(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Vt(((e,t,s)=>p(F(de,e),(l=>p(F(l,t),(a=>m(a,s)?et(e,l,t,a,s,n):0))))),e,t,s),delValues:Ot,delValue:e=>Vt((e=>m(fe,e)?tt(e):0),e),delTablesSchema:jt,delValuesSchema:kt,delSchema:()=>Vt((()=>{jt(),kt()})),transaction:At,startTransaction:Mt,finishTransaction:Nt,forEachTable:e=>C(de,((t,s)=>e(s,(e=>C(t,((t,s)=>e(s,(e=>x(t,e))))))))),forEachRow:(e,t)=>C(F(de,i(e)),((e,s)=>t(s,(t=>x(e,t))))),forEachCell:(e,t,s)=>x(F(F(de,i(e)),i(t)),s),forEachValue:e=>x(fe,e),addSortedRowIdsListener:(e,t,s,n,l,a,r)=>{let o=vt(e,t,s,n,l);return Je((()=>{const r=vt(e,t,s,n,l);var c,i,u;i=o,f(c=r)===f(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,a(Pt,e,t,s,n,l,o))}),Ve[r?1:0],[e,t],[St])},addWillFinishTransactionListener:e=>Je(e,Ce[0]),addDidFinishTransactionListener:e=>Je(e,Ce[1]),callListener:e=>(Fe(e),Pt),delListener:e=>(Ee(e),Pt),getListenerStats:()=>({}),createStore:ne};return U({Tables:[0,he],TableIds:[0,Te],Table:[1,ge,[St]],RowIds:[1,be,[St]],Row:[2,ye,[St,pt]],CellIds:[2,Se,[St,pt]],Cell:[3,pe,[St,pt,wt],e=>Y(mt(...e))],InvalidCell:[3,ve],Values:[0,me],ValueIds:[0,Ie],Value:[1,Re,[Rt],e=>Y(Ct(e[0]))],InvalidValue:[1,we]},(([e,t,s,n],l)=>{Pt["add"+l+"Listener"]=(...l)=>Je(l[e],t[l[e+1]?1:0],e>0?h(l,0,e):void 0,s,n)})),G(Pt)};e.createStore=ne},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",l=t(s),n=t(!0),a=t(0),r=t(t),o="type",c="default",i=e=>s+e,u=(e,t)=>e.forEach(t),d=(e,t)=>e.map(t),f=e=>e.length,h=(e,t,s)=>e.slice(t,s),T=(e,...t)=>e.push(...t),g=e=>JSON.stringify(e,((e,t)=>{return y(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),b=JSON.parse,V=isFinite,y=(e,t)=>e instanceof t,S=e=>null==e,p=(e,t,s)=>S(e)?s?.():t(e),v=e=>e==l||e==n,w=e=>t(e)==r,m=(e,t)=>e?.has(t)??!1,I=e=>S(e)||0==(e=>e.size)(e),R=e=>e.clear(),C=(e,t)=>e?.forEach(t),J=(e,t)=>e?.delete(t),L=e=>new Map(e),E=e=>[...e?.keys()??[]],F=(e,t)=>e?.get(t),x=(e,t)=>C(e,((e,s)=>t(s,e))),z=(e,t,s)=>S(s)?(J(e,t),e):e?.set(t,s),O=(e,t,s)=>(m(e,t)||z(e,t,s()),F(e,t)),j=(e,t,s)=>{const l={},n=t??(e=>e);return C(e,((e,t)=>p(n(e),(e=>s?.(e)?0:l[t]=e)))),l},k=(e,t)=>{const s=L(),l=t??(e=>e);return C(e,((e,t)=>s.set(t,l(e)))),s},A=e=>k(e,k),M=(e,t,s,l,n=0)=>p((s?O:F)(e,t[n],n>f(t)-2?s:L),(a=>{if(n>f(t)-2)return l?.(a)&&z(e,t[n]),a;const r=M(a,t,s,l,n+1);return I(a)&&z(e,t[n]),r})),N=e=>new Set(Array.isArray(e)||S(e)?e:[e]),P=(e,t)=>e?.add(t),B=/^\d+$/,D=()=>{const e=[];let t=0;return[l=>(l?e.shift():null)??s+t++,t=>{B.test(t)&&f(e)<1e3&&T(e,t)}]},W=Object,$=W.keys,q=W.isFrozen,G=W.freeze,H=e=>y(e,W)&&e.constructor==W,K=(e,t)=>!S(((e,t)=>p(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>d(W.entries(e),(([e,s])=>t(s,e))),X=e=>{return H(e)&&(t=$(e),0==f(t));var t},Y=e=>[e,e],Z=()=>[L(),L()],_=e=>{const s=t(e);return v(s)||s==a&&V(e)?s:void 0},ee=(e,t,s,l=z)=>(U(t,((t,l)=>s(e,l,t))),x(e,(s=>K(t,s)?0:l(e,s))),e),te=(e,t,s)=>S(e)||!H(e)||X(e)||q(e)?(s?.(),!1):(U(e,((s,l)=>{t(s,l)||Q(e,l)})),!X(e)),se=(e,t,s)=>z(e,t,F(e,t)==-s?void 0:s),le=()=>{let e,t,l,n,r=0;const V=L(),y=L(),B=L(),W=L(),$=L(),q=L(),H=L(),ne=L(),ae=L(),re=L(),oe=L(),ce=L(),ie=N(),ue=L(),de=L(),fe=L(),he=Z(),Te=Z(),ge=Z(),be=Z(),Ve=Z(),ye=Z(),Se=Z(),pe=Z(),ve=Z(),we=Z(),me=Z(),Ie=Z(),Re=Z(),Ce=Z(),[Je,Le,Ee,Fe]=(e=>{let t;const[l,n]=D(),a=L();return[(e,n,r,o=[],c=(()=>[]))=>{t??=Pt;const i=l(1);return z(a,i,[e,n,r,o,c]),P(M(n,r??[s],N),i),i},(e,l,...n)=>u(((e,t=[s])=>{const l=[],n=(e,s)=>s==f(t)?T(l,e):null===t[s]?C(e,(e=>n(e,s+1))):u([t[s],null],(t=>n(F(e,t),s+1)));return n(e,0),l})(e,l),(e=>C(e,(e=>F(a,e)[0](t,...l??[],...n))))),e=>p(F(a,e),(([,t,l])=>(M(t,l??[s],void 0,(t=>(J(t,e),I(t)?1:0))),z(a,e),n(e),l))),e=>p(F(a,e),(([e,,s=[],l,n])=>{const a=(...r)=>{const o=f(r);o==f(s)?e(t,...r,...n(r)):S(s[o])?u(l[o]?.(...r)??[],(e=>a(...r,e))):a(...r,s[o])};a()}))]})(),xe=e=>{if(!te(e,((e,t)=>[o,c].includes(t))))return!1;const t=e.type;return!(!v(t)&&t!=a||(_(e.default)!=t&&Q(e,c),0))},ze=(t,s)=>(!e||m(ae,s)||ct(s))&&te(t,((e,t)=>Oe(s,t,e)),(()=>ct(s))),Oe=(e,t,s,l)=>te(l?s:Me(s,e,t),((l,n)=>p(je(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>ct(e,t))),je=(t,s,l,n)=>e?p(F(F(ae,t),l),(e=>_(n)!=e.type?ct(t,s,l,n,e.default):n),(()=>ct(t,s,l,n))):S(_(n))?ct(t,s,l,n):n,ke=(e,t)=>te(t?e:Ne(e),((t,s)=>p(Ae(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>it())),Ae=(e,s)=>t?p(F(oe,e),(t=>_(s)!=t.type?it(e,s,t.default):s),(()=>it(e,s))):S(_(s))?it(e,s):s,Me=(e,t,s)=>(p(F(re,t),(([l,n])=>{C(l,((t,s)=>{K(e,s)||(e[s]=t)})),C(n,(l=>{K(e,l)||ct(t,s,l)}))})),e),Ne=e=>(t&&(C(ce,((t,s)=>{K(e,s)||(e[s]=t)})),C(ie,(t=>{K(e,t)||it(t)}))),e),Pe=e=>ee(ae,e,((e,t,s)=>{const l=L(),n=N();ee(O(ae,t,L),s,((e,t,s)=>{z(e,t,s),p(s.default,(e=>z(l,t,e)),(()=>P(n,t)))})),z(re,t,[l,n])}),((e,t)=>{z(ae,t),z(re,t)})),Be=e=>ee(oe,e,((e,t,s)=>{z(oe,t,s),p(s.default,(e=>z(ce,t,e)),(()=>P(ie,t)))}),((e,t)=>{z(oe,t),z(ce,t),J(ie,t)})),De=e=>X(e)?zt():Jt(e),We=e=>ee(de,e,((e,t,s)=>$e(t,s)),((e,t)=>Ze(t))),$e=(e,t)=>ee(O(de,e,(()=>(st(e,1),L()))),t,((t,s,l)=>qe(e,t,s,l)),((t,s)=>_e(e,t,s))),qe=(e,t,s,l,n)=>ee(O(t,s,(()=>(lt(e,s,1),L()))),l,((t,l,n)=>Ge(e,s,t,l,n)),((l,a)=>et(e,t,s,l,a,n))),Ge=(e,t,s,l,n)=>{m(s,l)||nt(e,t,l,1);const a=F(s,l);n!==a&&(at(e,t,l,a,n),z(s,l,n))},He=(e,t,s,l,n)=>p(F(t,s),(t=>Ge(e,s,t,l,n)),(()=>qe(e,t,s,Me({[l]:n},e,s)))),Ke=e=>X(e)?Ot():Lt(e),Qe=e=>ee(fe,e,((e,t,s)=>Ue(t,s)),((e,t)=>tt(t))),Ue=(e,t)=>{m(fe,e)||rt(e,1);const s=F(fe,e);t!==s&&(ot(e,s,t),z(fe,e,t))},Xe=(e,t)=>{const[s]=O(ue,e,D),l=s(t);return m(F(de,e),l)?Xe(e,t):l},Ye=e=>F(de,e)??$e(e,{}),Ze=e=>$e(e,{}),_e=(e,t,s)=>{const[,l]=O(ue,e,D);l(s),qe(e,t,s,{},!0)},et=(e,t,s,l,n,a)=>{const r=F(F(re,e)?.[0],n);if(!S(r)&&!a)return Ge(e,s,l,n,r);const o=t=>{at(e,s,t,F(l,t)),nt(e,s,t,-1),z(l,t)};S(r)?o(n):x(l,o),I(l)&&(lt(e,s,-1),I(z(t,s))&&(st(e,-1),z(de,e),z(ue,e)))},tt=e=>{const t=F(ce,e);if(!S(t))return Ue(e,t);ot(e,F(fe,e)),rt(e,-1),z(fe,e)},st=(e,t)=>se(V,e,t),lt=(e,t,s)=>se(O(y,e,L),t,s),nt=(e,t,s,l)=>se(O(O(B,e,L),t,L),s,l),at=(e,t,s,l,n)=>O(O(O(W,e,L),t,L),s,(()=>[l,0]))[1]=n,rt=(e,t)=>se($,e,t),ot=(e,t,s)=>O(q,e,(()=>[t,0]))[1]=s,ct=(e,t,s,l,n)=>(T(O(O(O(H,e,L),t,L),s,(()=>[])),l),n),it=(e,t,s)=>(T(O(ne,e,(()=>[])),t),s),ut=(e,t,s)=>p(F(F(F(W,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(mt(e,t,s))])),dt=e=>p(F(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ct(e))])),ft=e=>I(H)||I(ve[e])?0:C(e?k(H,A):H,((t,s)=>C(t,((t,l)=>C(t,((t,n)=>Le(ve[e],[s,l,n],t))))))),ht=e=>I(ne)||I(we[e])?0:C(e?k(ne):ne,((t,s)=>Le(we[e],[s],t))),Tt=(e,t,s)=>{if(!I(t))return Le(e,s),1},gt=e=>{const t=I(Ve[e]),s=I(Se[e])&&I(be[e])&&t&&I(Te[e]),l=I(pe[e])&&I(ye[e])&&I(ge[e])&&I(he[e]);if(!s||!l){const n=e?[k(V),A(y),k(B,A),k(W,A)]:[V,y,B,W];if(!s){C(n[2],((t,s)=>C(t,((t,l)=>Tt(Se[e],t,[s,l])))));const s=N();C(n[1],((l,n)=>{Tt(be[e],l,[n])&&!t&&(Le(Ve[e],[n,null]),P(s,n))})),t||C(n[3],((t,l)=>{if(!m(s,l)){const s=N();C(t,(e=>C(e,(([t,l],n)=>l!==t?P(s,n):J(e,n))))),C(s,(t=>Le(Ve[e],[l,t])))}})),Tt(Te[e],n[0])}if(!l){let t;C(n[3],((s,l)=>{let n;C(s,((s,a)=>{let r;C(s,(([s,o],c)=>{o!==s&&(Le(pe[e],[l,a,c],o,s,ut),t=n=r=1)})),r&&Le(ye[e],[l,a],ut)})),n&&Le(ge[e],[l],ut)})),t&&Le(he[e],void 0,ut)}}},bt=e=>{const t=I(Ie[e]),s=I(Re[e])&&I(me[e]);if(!t||!s){const l=e?[k($),k(q)]:[$,q];if(t||Tt(Ie[e],l[0]),!s){let t;C(l[1],(([s,l],n)=>{l!==s&&(Le(Re[e],[n],l,s,dt),t=1)})),t&&Le(me[e],void 0,dt)}}},Vt=(e,...t)=>(At((()=>e(...d(t,i)))),Pt),yt=()=>j(de,(e=>j(e,j))),St=()=>E(de),pt=e=>E(F(de,i(e))),vt=(e,t,s,l=0,n)=>{return d(h((r=F(de,i(e)),o=(e,s)=>[S(t)?s:F(e,i(t)),s],a=([e],[t])=>(e<t?-1:1)*(s?-1:1),d([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),l,S(n)?n:l+n),(([,e])=>e));var a,r,o},wt=(e,t)=>E(F(F(de,i(e)),i(t))),mt=(e,t,s)=>F(F(F(de,i(e)),i(t)),i(s)),It=()=>j(fe),Rt=()=>E(fe),Ct=e=>F(fe,i(e)),Jt=e=>Vt((()=>(e=>te(e,ze,ct))(e)?We(e):0)),Lt=e=>Vt((()=>ke(e)?Qe(e):0)),Et=e=>{try{De(b(e))}catch{}return Pt},Ft=t=>Vt((()=>{if((e=te(t,(e=>te(e,xe))))&&(Pe(t),!I(de))){const e=yt();zt(),Jt(e)}})),xt=e=>Vt((()=>{if(t=(e=>te(e,xe))(e)){const s=It();kt(),Ot(),t=!0,Be(e),Lt(s)}})),zt=()=>Vt((()=>We({}))),Ot=()=>Vt((()=>Qe({}))),jt=()=>Vt((()=>{Pe({}),e=!1})),kt=()=>Vt((()=>{Be({}),t=!1})),At=(e,t)=>{if(-1==r)return;Mt();const s=e();return Nt(t),s},Mt=()=>(r++,Pt),Nt=e=>(r>0&&(r--,0==r&&(l=!I(W),n=!I(q),r=1,ft(1),l&&gt(1),ht(1),n&&bt(1),r=-1,e?.(j(W,(e=>j(e,(e=>j(e,(e=>[...e]),(([e,t])=>e===t))),X)),X),j(H,(e=>j(e,j))),j(q,(e=>[...e]),(([e,t])=>e===t)),j(ne))&&(r=1,C(W,((e,t)=>C(e,((e,s)=>C(e,(([e],l)=>((e,t,s,l,n)=>S(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n))(Pt,t,s,l,e))))))),C(q,(([e],t)=>((e,t,s)=>S(s)?e.delValue(t):e.setValue(t,s))(Pt,t,e))),r=-1,l=n=!1),Le(Ce[0],void 0,l,n),ft(0),l&&gt(0),ht(0),n&&bt(0),Le(Ce[1],void 0,l,n),r=0,u([V,y,B,W,H,$,q,ne],R))),Pt),Pt={getTables:yt,getTableIds:St,getTable:e=>j(F(de,i(e)),j),getRowIds:pt,getSortedRowIds:vt,getRow:(e,t)=>j(F(F(de,i(e)),i(t))),getCellIds:wt,getCell:mt,getValues:It,getValueIds:Rt,getValue:Ct,hasTables:()=>!I(de),hasTable:e=>m(de,i(e)),hasRow:(e,t)=>m(F(de,i(e)),i(t)),hasCell:(e,t,s)=>m(F(F(de,i(e)),i(t)),i(s)),hasValues:()=>!I(fe),hasValue:e=>m(fe,i(e)),getTablesJson:()=>g(de),getValuesJson:()=>g(fe),getJson:()=>g([de,fe]),getTablesSchemaJson:()=>g(ae),getValuesSchemaJson:()=>g(oe),getSchemaJson:()=>g([ae,oe]),setTables:Jt,setTable:(e,t)=>Vt((e=>ze(t,e)?$e(e,t):0),e),setRow:(e,t,s)=>Vt(((e,t)=>Oe(e,t,s)?qe(e,Ye(e),t,s):0),e,t),addRow:(e,t,s=!0)=>At((()=>{let l;return Oe(e,l,t)&&(e=i(e),qe(e,Ye(e),l=Xe(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Vt(((e,t)=>{if(Oe(e,t,s,1)){const l=Ye(e);U(s,((s,n)=>He(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Vt(((e,t,s)=>p(je(e,t,s,w(l)?l(mt(e,t,s)):l),(l=>He(e,Ye(e),t,s,l)))),e,t,s),setValues:Lt,setPartialValues:e=>Vt((()=>ke(e,1)?U(e,((e,t)=>Ue(t,e))):0)),setValue:(e,t)=>Vt((e=>p(Ae(e,w(t)?t(Ct(e)):t),(t=>Ue(e,t)))),e),setTablesJson:Et,setValuesJson:e=>{try{Ke(b(e))}catch{}return Pt},setJson:e=>{try{const[t,s]=b(e);De(t),Ke(s)}catch{Et(e)}return Pt},setTablesSchema:Ft,setValuesSchema:xt,setSchema:(e,t)=>Vt((()=>{Ft(e),xt(t)})),delTables:zt,delTable:e=>Vt((e=>m(de,e)?Ze(e):0),e),delRow:(e,t)=>Vt(((e,t)=>p(F(de,e),(s=>m(s,t)?_e(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Vt(((e,t,s)=>p(F(de,e),(n=>p(F(n,t),(a=>m(a,s)?et(e,n,t,a,s,l):0))))),e,t,s),delValues:Ot,delValue:e=>Vt((e=>m(fe,e)?tt(e):0),e),delTablesSchema:jt,delValuesSchema:kt,delSchema:()=>Vt((()=>{jt(),kt()})),transaction:At,startTransaction:Mt,finishTransaction:Nt,forEachTable:e=>C(de,((t,s)=>e(s,(e=>C(t,((t,s)=>e(s,(e=>x(t,e))))))))),forEachRow:(e,t)=>C(F(de,i(e)),((e,s)=>t(s,(t=>x(e,t))))),forEachCell:(e,t,s)=>x(F(F(de,i(e)),i(t)),s),forEachValue:e=>x(fe,e),addSortedRowIdsListener:(e,t,s,l,n,a,r)=>{let o=vt(e,t,s,l,n);return Je((()=>{const r=vt(e,t,s,l,n);var c,i,u;i=o,f(c=r)===f(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,a(Pt,e,t,s,l,n,o))}),Ve[r?1:0],[e,t],[St])},addWillFinishTransactionListener:e=>Je(e,Ce[0]),addDidFinishTransactionListener:e=>Je(e,Ce[1]),callListener:e=>(Fe(e),Pt),delListener:e=>(Ee(e),Pt),getListenerStats:()=>({}),createStore:le};return U({Tables:[0,he],TableIds:[0,Te],Table:[1,ge,[St]],RowIds:[1,be,[St]],Row:[2,ye,[St,pt]],CellIds:[2,Se,[St,pt]],Cell:[3,pe,[St,pt,wt],e=>Y(mt(...e))],InvalidCell:[3,ve],Values:[0,me],ValueIds:[0,Ie],Value:[1,Re,[Rt],e=>Y(Ct(e[0]))],InvalidValue:[1,we]},(([e,t,s,l],n)=>{Pt["add"+n+"Listener"]=(...n)=>Je(n[e],t[n[e+1]?1:0],e>0?h(n,0,e):void 0,s,l)})),G(Pt)};e.createStore=le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),i=s(s),l="default",c="utf8",d="Listener",u="Result",h="add",f="Table",g="RowIds",L="Cell",w="CellIds",v=e=>n+e,p=(e,t)=>e.includes(t),S=(e,t)=>e.every(t),R=(e,t)=>C(e)===C(t)&&S(e,((e,s)=>t[s]===e)),y=(e,t)=>S(e,((s,n)=>0==n||t(e[n-1],s)<=0)),I=(e,t)=>e.sort(t),T=(e,t)=>e.forEach(t),b=(e,t)=>e.map(t),m=e=>E(e,((e,t)=>e+t),0),C=e=>e.length,V=e=>0==C(e),E=(e,t,s)=>e.reduce(t,s),k=(e,t,s)=>e.slice(t,s),J=(e,...t)=>e.push(...t),M=e=>e.pop(),x=e=>e.shift(),A=e=>JSON.stringify(e,((e,t)=>j(t,Map)?E([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),D=JSON.parse,F=Math.max,P=Math.min,Q=isFinite,j=(e,t)=>e instanceof t,z=e=>null==e,N=(e,t,s)=>z(e)?s?.():t(e),O=e=>e==o||e==r,W=e=>s(e)==i,B=e=>Array.isArray(e),q=()=>{},H=e=>e.size,$=(e,t)=>e?.has(t)??!1,G=e=>z(e)||0==H(e),K=e=>[...e?.values()??[]],U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),_=e=>[...e?.keys()??[]],ee=(e,t)=>e?.get(t),te=(e,t)=>X(e,((e,s)=>t(s,e))),se=(e,t,s)=>z(s)?(Y(e,t),e):e?.set(t,s),ne=(e,t,s)=>($(e,t)||se(e,t,s()),ee(e,t)),oe=(e,t,s)=>{const n={},o=t??(e=>e);return X(e,((e,t)=>N(o(e),(e=>s?.(e)?0:n[t]=e)))),n},re=(e,t)=>{const s=Z(),n=t??(e=>e);return X(e,((e,t)=>s.set(t,n(e)))),s},ae=e=>re(e,re),ie=(e,t,s,n,o=0)=>N((s?ne:ee)(e,t[o],o>C(t)-2?s:Z),(r=>{if(o>C(t)-2)return n?.(r)&&se(e,t[o]),r;const a=ie(r,t,s,n,o+1);return G(r)&&se(e,t[o]),a})),le=e=>{const t=s(e);return O(t)||t==a&&Q(e)?t:void 0},ce=(e,t,s,n,o)=>z(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),de=(e,t,s)=>z(s)?e.delValue(t):e.setValue(t,s),ue=e=>new Set(B(e)||z(e)?e:[e]),he=(e,t)=>e?.add(t),fe=(e,t,s)=>{const n=e.hasRow,o=Z(),r=Z(),a=Z(),i=Z(),l=Z(),c=(t,s,...n)=>{const o=ne(l,t,ue);return T(n,(t=>he(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>N(ee(l,t),(n=>{T(V(s)?K(n):s,(t=>{e.delListener(t),Y(n,t)})),G(n)&&se(l,t)})),u=(e,s)=>{se(o,e,s),$(r,e)||(se(r,e,t()),se(a,e,Z()),se(i,e,Z()))},h=e=>{se(o,e),se(r,e),se(a,e),se(i,e),d(e)};return[()=>e,()=>_(o),e=>te(r,e),e=>$(r,e),e=>ee(o,e),e=>ee(r,e),(e,t)=>se(r,e,t),u,(t,o,r,l,h)=>{u(t,o);const f=Z(),g=Z(),L=ee(a,t),w=ee(i,t),v=t=>{const r=s=>e.getCell(o,t,s),a=ee(L,t),i=n(o,t)?s(l(r,t)):void 0;if(a===i||B(a)&&B(i)&&R(a,i)||se(f,t,[a,i]),!z(h)){const e=ee(w,t),s=n(o,t)?h(r,t):void 0;e!=s&&se(g,t,s)}},p=e=>{r((()=>{X(f,(([,e],t)=>se(L,t,e))),X(g,((e,t)=>se(w,t,e)))}),f,g,L,w,e),U(f),U(g)};te(L,v),e.hasTable(o)&&T(e.getRowIds(o),(e=>{$(L,e)||v(e)})),p(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>p())))},h,()=>te(l,h),c,d]},ge=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),Le=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},we=/^\d+$/,ve=()=>{const e=[];let t=0;return[()=>x(e)??n+t++,t=>{we.test(t)&&C(e)<1e3&&J(e,t)}]},pe=e=>{let t;const[s,o]=ve(),r=Z();return[(o,a,i,l=[],c=(()=>[]))=>{t??=e();const d=s();return se(r,d,[o,a,i,l,c]),he(ie(a,i??[n],ue),d),d},(e,s,...o)=>T(((e,t=[n])=>{const s=[],o=(e,n)=>n==C(t)?J(s,e):null===t[n]?X(e,(e=>o(e,n+1))):T([t[n],null],(t=>o(ee(e,t),n+1)));return o(e,0),s})(e,s),(e=>X(e,(e=>ee(r,e)[0](t,...s??[],...o))))),e=>N(ee(r,e),(([,t,s])=>(ie(t,s??[n],void 0,(t=>(Y(t,e),G(t)?1:0))),se(r,e),o(e),s))),e=>N(ee(r,e),(([e,,s=[],n,o])=>{const r=(...a)=>{const i=C(a);i==C(s)?e(t,...a,...o(a)):z(s[i])?T(n[i]?.(...a)??[],(e=>r(...a,e))):r(...a,s[i])};r()}))]},Se=Object,Re=Se.keys,ye=Se.isFrozen,Ie=Se.freeze,Te=e=>j(e,Se)&&e.constructor==Se,be=(e,t)=>!z(((e,t)=>N(e,(e=>e[t])))(e,t)),me=(e,t)=>delete e[t],Ce=(e,t)=>b(Se.entries(e),(([e,s])=>t(s,e))),Ve=e=>Te(e)&&V(Re(e)),Ee=Le((e=>{let t,s,o,r=100,a=Z(),i=Z(),l=1;const c=Z(),d=Z(),[u,h,f]=pe((()=>W)),g=Z(),L=Z(),w=[],v=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=ee(g,s);X(n,((s,n)=>X(s,((s,o)=>X(s,((s,r)=>ce(e,n,o,r,s[t]))))))),X(o,((s,n)=>de(e,n,s[t])))})),l=1},R=e=>{se(g,e),se(L,e),h(d,[e])},y=(e,t)=>T(((e,t)=>e.splice(0,t))(e,t??C(e)),R),I=()=>y(w,C(w)-r),b=()=>N(t,(()=>{J(w,t),I(),y(v),t=void 0,o=1})),m=()=>{t=M(w),o=1},E=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(l){b();const e=ne(a,t,Z),i=ne(e,s,Z),l=ne(i,n,(()=>[r,void 0]));l[1]=o,l[0]===o&&G(se(i,n))&&G(se(e,s))&&G(se(a,t))&&m(),P()}})),k=e.addValueListener(null,((e,t,s,n)=>{if(l){b();const e=ne(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&G(se(i,t))&&m(),P()}})),A=(e="")=>(z(t)&&(t=n+s++,se(g,t,[a,i]),j(t,e),a=Z(),i=Z(),o=1),t),D=()=>{V(w)||(((e,...t)=>{e.unshift(...t)})(v,A()),S(0,t),t=M(w),o=1)},F=()=>{V(v)||(J(w,t),t=x(v),S(1,t),o=1)},P=()=>{o&&(h(c),o=0)},Q=e=>{const t=A(e);return P(),t},j=(e,t)=>(O(e)&&ee(L,e)!==t&&(se(L,e,t),h(d,[e])),W),O=e=>$(g,e),W={setSize:e=>(r=e,I(),W),addCheckpoint:Q,setCheckpoint:j,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>te(L,e),hasCheckpoint:O,getCheckpoint:e=>ee(L,e),goBackward:()=>(D(),P(),W),goForward:()=>(F(),P(),W),goTo:e=>{const s=p(w,e)?D:p(v,e)?F:null;for(;!z(s)&&e!=t;)s();return P(),W},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(f(e),W),clear:()=>(y(w),y(v),z(t)||R(t),t=void 0,s=0,Q(),W),destroy:()=>{e.delListener(E),e.delListener(k)},getListenerStats:()=>({})};return Ie(W.clear())})),ke=(e,t)=>e<t?-1:1,Je=Le((e=>{const t=Z(),s=Z(),[o,r,a,i,l,c,d,,u,h,f]=fe(e,Z,(e=>z(e)?n:B(e)?b(e,v):v(e))),[g,L,w]=pe((()=>S)),p=(t,s,n)=>{const o=l(t);X(n,((t,n)=>s(n,(s=>X(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,r,a,i=ke)=>{const l=z(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,h,f)=>{let g=0;const w=ue(),v=ue(),p=c(e);if(X(o,(([e,t],s)=>{const n=ue(e),o=ue(t);X(n,(e=>Y(o,e)?Y(n,e):0)),X(n,(e=>{he(w,e),N(ee(p,e),(t=>{Y(t,s),G(t)&&(se(p,e),g=1)}))})),X(o,(e=>{he(w,e),$(p,e)||(se(p,e,ue()),g=1),he(ee(p,e),s),z(r)||he(v,e)}))})),n(),G(h)||(f?te(p,(e=>he(v,e))):te(a,(e=>N(ee(u,e),(e=>he(v,e))))),X(v,(e=>{const t=(t,s)=>i(ee(h,t),ee(h,s),e),s=[...ee(p,e)];y(s,t)||(se(p,e,ue(I(s,t))),he(w,e))}))),(g||f)&&!z(l)){const t=[...p];y(t,l)||(d(e,Z(I(t,l))),g=1)}g&&L(t,[e]),X(w,(t=>L(s,[e,t])))}),ge(o),N(r,ge)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>$(c(e),t),getTableId:l,getSliceIds:e=>_(c(e)),getSliceRowIds:(e,t)=>K(ee(c(e),t)),addSliceIdsListener:(e,s)=>g(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>g(n,s,[e,t]),delListener:e=>(w(e),S),destroy:f,getListenerStats:()=>({})};return Ie(S)})),Me=Z([["avg",[(e,t)=>m(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>F(...e),(e,t)=>F(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:F(t,e)]],["min",[e=>P(...e),(e,t)=>P(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:P(t,e)]],["sum",[e=>m(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),xe=(e,t,s,n,o,r=!1)=>{if(G(s))return;const[a,i,l,c]=o;return r||=z(e),X(n,(([s,n])=>{r||(e=z(s)?i?.(e,n,t++):z(n)?l?.(e,s,t--):c?.(e,n,s,t),r||=z(e))})),r?a(K(s),H(s)):e},Ae=Le((e=>{const t=Z(),[s,o,r,a,i,l,c,,d,u,h]=fe(e,q,(e=>isNaN(e)||z(e)||!0===e||!1===e||e===n?void 0:1*e)),[f,g,L]=pe((()=>w)),w={setMetricDefinition:(e,s,n,o,r,a,i)=>{const u=W(n)?[n,r,a,i]:ee(Me,n)??ee(Me,"sum");return d(e,s,((s,n,o,r,a,i)=>{const d=l(e),h=H(r);i||=z(d),s();let f=xe(d,h,r,n,u,i);Q(f)||(f=void 0),f!=d&&(c(e,f),g(t,[e],f,d))}),ge(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:i,getMetric:l,addMetricListener:(e,s)=>f(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Ie(w)})),De=(e,t,s,o,r)=>{let a,i,l=0;const c={load:async(s,o)=>{if(2!=l){l=1;const r=await t();z(r)||r==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(r),l=0}return c},startAutoLoad:async(e,t)=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(r(),c),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),a=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(N(a,e.delListener),N(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Ie(c)},Fe="storage",Pe=globalThis.window,Qe=(e,t,s)=>{let n;return De(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},Pe.addEventListener(Fe,n)}),(()=>{Pe.removeEventListener(Fe,n),n=void 0}))},je=e=>e.headers.get("ETag"),ze=Le((e=>{const t=e.createStore,[s,o,r,a,i,,,l,,c,v,p,R]=fe(e,(()=>!0),q),y=t(),I=t(),b=Z(),m=(e,t,...s)=>T(s,(s=>he(ne(ne(b,t,Z),e,ue),s))),E=e=>{N(ee(b,e),(e=>{te(e,((e,t)=>X(t,(t=>e.delListener(t))))),U(e)})),T([I,y],(t=>t.delTable(e)))},M=(e,t,s)=>m(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),x={setQueryDefinition:(t,s,o)=>{l(t,s),E(t);const r=[],a=[[null,[s,null,null,[],Z()]]],i=[],c=[],d=[];o({select:(e,t)=>{const s=W(e)?[C(r)+n,e]:[z(t)?e:t,s=>s(e,t)];return J(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=z(s)||W(t)?null:t,o=z(n)?t:s,r=[e,[e,n,W(o)?o:e=>e(o),[],Z()]];return J(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>J(i,W(e)?e:z(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,W(t)?[t,s,n,o]:ee(Me,t)??[(e,t)=>t]]];return J(c,r),{as:e=>r[0]=e}},having:(e,t)=>J(d,W(e)?e:s=>s(e)===t)});const u=Z(r);if(G(u))return x;const h=Z(a);te(h,((e,[,t])=>N(ee(h,t),(({3:t})=>z(e)?0:J(t,e)))));const f=Z(c);let g=y;if(G(f)&&V(d))g=I;else{M(t,g,I);const e=Z();te(f,((t,[s,n])=>he(ne(e,s,ue),[t,n])));const s=ue();te(u,(t=>$(e,t)?0:he(s,t)));const n=Z(),o=(s,n,o,r)=>N(s,(([a,i,l,c])=>{te(n,((t,[s])=>{const n=ne(a,t,Z),i=ee(n,o),l=r?void 0:s;if(i!==l){const s=ue([[i,l]]),r=H(n);se(n,o,l),X(ee(e,t),(([e,t])=>{const o=xe(c[e],r,n,s,t);c[e]=z(le(o))?null:o}))}})),G(i)||!S(d,(e=>e((e=>c[e]))))?I.delRow(t,l):z(l)?s[2]=I.addRow(t,c):I.setRow(t,l,c)}));m(g,t,g.addRowListener(t,null,((r,a,i,l)=>{const c=[],d=[],u=Z(),h=g.hasRow(t,i);let f=!h;X(s,(e=>{const[s,n,o]=l(t,i,e);J(c,n),J(d,o),f||=s})),te(e,(e=>{const[s,,n]=l(t,i,e);(f||s)&&se(u,e,[n])})),f&&o(ie(n,c,void 0,(([,e])=>(Y(e,i),G(e)))),u,i,1),h&&o(ie(n,d,(()=>{const e={};return X(s,(s=>e[s]=g.getCell(t,i,s))),[Z(),ue(),void 0,e]}),(([,e])=>{he(e,i)})),u,i)})))}M(t,e,g);const L=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);T(a,(s=>{const[o,,r,a,i]=ee(h,s),c=r?.(l,n),[d,u]=ee(i,n)??[];c!=d&&(z(u)||R(t,u),se(i,n,z(c)?null:[c,...p(t,1,e.addRowListener(o,c,(()=>L(n,o,c,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...z(o)?[s,n,t]:t===s?[s,n,o]:[ee(h,t)?.[0],ee(ee(h,t)?.[4],n)?.[0],o]);g.transaction((()=>S(i,(e=>e(o)))?te(u,((e,s)=>ce(g,t,n,e,s(o,n)))):g.delRow(t,n)))})(n)},{3:w}=ee(h,null);return g.transaction((()=>p(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?L(r,s,r,w):(g.delRow(t,r),X(h,(({4:e})=>N(ee(e,r),(([,s])=>{R(t,s),se(e,r)})))))}))))),x},delQueryDefinition:e=>(E(e),c(e),x),getStore:s,getQueryIds:o,forEachQuery:r,hasQuery:a,getTableId:i,delListener:e=>(I.delListener(e),x),destroy:v,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=I.getListenerStats();return n}};return Ce({[f]:[1,1],[g]:[0,1],SortedRowIds:[0,5],Row:[1,2],[w]:[0,2],[L]:[1,3]},(([e,t],s)=>{T(e?["get","has","forEach"]:["get"],(e=>x[e+u+s]=(...t)=>I[e+s](...t))),x[h+u+s+d]=(...e)=>I[h+s+d](...k(e,0,t),((s,...n)=>e[t](x,...n)))})),Ie(x)})),Ne=Le((e=>{const t=Z(),s=Z(),o=Z(),r=Z(),[a,i,l,c,d,u,,,h,f,g]=fe(e,(()=>[Z(),Z(),Z(),Z()]),(e=>z(e)?void 0:e+n)),[L,w,v]=pe((()=>y)),p=(e,t,s)=>N(u(e),(([n,,o])=>{if(!$(o,t)){const r=ue();if(d(e)!=R(e))he(r,t);else{let e=t;for(;!z(e)&&!$(r,e);)he(r,e),e=ee(n,e)}if(s)return r;se(o,t,r)}return ee(o,t)})),S=(e,t)=>N(u(e),(([,,e])=>se(e,t))),R=e=>ee(t,e),y={setRelationshipDefinition:(e,n,a,i)=>(se(t,e,a),h(e,n,((t,n)=>{const a=ue(),i=ue(),l=ue(),[c,d]=u(e);X(n,(([t,s],n)=>{z(t)||(he(i,t),N(ee(d,t),(e=>{Y(e,n),G(e)&&se(d,t)}))),z(s)||(he(i,s),$(d,s)||se(d,s,ue()),he(ee(d,s),n)),he(a,n),se(c,n,s),te(ee(r,e),(t=>{$(p(e,t),n)&&he(l,t)}))})),t(),X(a,(t=>w(s,[e,t]))),X(i,(t=>w(o,[e,t]))),X(l,(t=>{S(e,t),w(r,[e,t])}))}),ge(i)),y),delRelationshipDefinition:e=>(se(t,e),f(e),y),getStore:a,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>ee(u(e)?.[0],t),getLocalRowIds:(e,t)=>K(ee(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>z(u(e))?[t]:K(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),L(s,r,[e,t])),delListener:e=>(S(...v(e)),y),destroy:g,getListenerStats:()=>({})};return Ie(y)})),Oe=e=>[e,e],We=()=>[Z(),Z()],Be=(e,t,s,n=se)=>{const o=(r=e=>!be(t,e),_(e).filter(r));var r;return T(Re(t),(n=>s(e,n,t[n]))),T(o,(t=>n(e,t))),e},qe=(e,t,s)=>z(e)||!Te(e)||Ve(e)||ye(e)?(s?.(),!1):(Ce(e,((s,n)=>{t(s,n)||me(e,n)})),!Ve(e)),He=(e,t,s)=>se(e,t,ee(e,t)==-s?void 0:s),$e=()=>{let e,t,s,n,o=0;const r=Z(),i=Z(),c=Z(),u=Z(),S=Z(),y=Z(),m=Z(),C=Z(),V=Z(),E=Z(),M=Z(),x=Z(),F=ue(),P=Z(),Q=Z(),j=Z(),B=We(),q=We(),H=We(),K=We(),ie=We(),fe=We(),ge=We(),Le=We(),we=We(),Se=We(),Re=We(),ye=We(),Te=We(),Ee=We(),[Je,Me,xe,Ae]=pe((()=>Kt)),De=e=>{if(!qe(e,((e,t)=>p(["type",l],t))))return!1;const t=e.type;return!(!O(t)&&t!=a||(le(e.default)!=t&&me(e,l),0))},Fe=(t,s)=>(!e||$(V,s)||vt(s))&&qe(t,((e,t)=>Pe(s,t,e)),(()=>vt(s))),Pe=(e,t,s,n)=>qe(n?s:Ne(s,e,t),((n,o)=>N(Qe(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>vt(e,t))),Qe=(t,s,n,o)=>e?N(ee(ee(V,t),n),(e=>le(o)!=e.type?vt(t,s,n,o,e.default):o),(()=>vt(t,s,n,o))):z(le(o))?vt(t,s,n,o):o,je=(e,t)=>qe(t?e:Ge(e),((t,s)=>N(ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>pt())),ze=(e,s)=>t?N(ee(M,e),(t=>le(s)!=t.type?pt(e,s,t.default):s),(()=>pt(e,s))):z(le(s))?pt(e,s):s,Ne=(e,t,s)=>(N(ee(E,t),(([n,o])=>{X(n,((t,s)=>{be(e,s)||(e[s]=t)})),X(o,(n=>{be(e,n)||vt(t,s,n)}))})),e),Ge=e=>(t&&(X(x,((t,s)=>{be(e,s)||(e[s]=t)})),X(F,(t=>{be(e,t)||pt(t)}))),e),Ke=e=>Be(V,e,((e,t,s)=>{const n=Z(),o=ue();Be(ne(V,t,Z),s,((e,t,s)=>{se(e,t,s),N(s.default,(e=>se(n,t,e)),(()=>he(o,t)))})),se(E,t,[n,o])}),((e,t)=>{se(V,t),se(E,t)})),Ue=e=>Be(M,e,((e,t,s)=>{se(M,t,s),N(s.default,(e=>se(x,t,e)),(()=>he(F,t)))}),((e,t)=>{se(M,t),se(x,t),Y(F,t)})),Xe=e=>Ve(e)?Ot():Pt(e),Ye=e=>Be(Q,e,((e,t,s)=>Ze(t,s)),((e,t)=>it(t))),Ze=(e,t)=>Be(ne(Q,e,(()=>(ut(e,1),Z()))),t,((t,s,n)=>_e(e,t,s,n)),((t,s)=>lt(e,t,s))),_e=(e,t,s,n,o)=>Be(ne(t,s,(()=>(ht(e,s,1),Z()))),n,((t,n,o)=>et(e,s,t,n,o)),((n,r)=>ct(e,t,s,n,r,o))),et=(e,t,s,n,o)=>{$(s,n)||ft(e,t,n,1);const r=ee(s,n);o!==r&&(gt(e,t,n,r,o),se(s,n,o))},tt=(e,t,s,n,o)=>N(ee(t,s),(t=>et(e,s,t,n,o)),(()=>_e(e,t,s,Ne({[n]:o},e,s)))),st=e=>Ve(e)?Wt():Qt(e),nt=e=>Be(j,e,((e,t,s)=>ot(t,s)),((e,t)=>dt(t))),ot=(e,t)=>{$(j,e)||Lt(e,1);const s=ee(j,e);t!==s&&(wt(e,s,t),se(j,e,t))},rt=e=>{const[t]=ne(P,e,ve),s=t();return $(ee(Q,e),s)?rt(e):s},at=e=>ee(Q,e)??Ze(e,{}),it=e=>Ze(e,{}),lt=(e,t,s)=>{const[,n]=ne(P,e,ve);n(s),_e(e,t,s,{},!0)},ct=(e,t,s,n,o,r)=>{const a=ee(ee(E,e)?.[0],o);if(!z(a)&&!r)return et(e,s,n,o,a);const i=t=>{gt(e,s,t,ee(n,t)),ft(e,s,t,-1),se(n,t)};z(a)?i(o):te(n,i),G(n)&&(ht(e,s,-1),G(se(t,s))&&(ut(e,-1),se(Q,e),se(P,e)))},dt=e=>{const t=ee(x,e);if(!z(t))return ot(e,t);wt(e,ee(j,e)),Lt(e,-1),se(j,e)},ut=(e,t)=>He(r,e,t),ht=(e,t,s)=>He(ne(i,e,Z),t,s),ft=(e,t,s,n)=>He(ne(ne(c,e,Z),t,Z),s,n),gt=(e,t,s,n,o)=>ne(ne(ne(u,e,Z),t,Z),s,(()=>[n,0]))[1]=o,Lt=(e,t)=>He(S,e,t),wt=(e,t,s)=>ne(y,e,(()=>[t,0]))[1]=s,vt=(e,t,s,n,o)=>(J(ne(ne(ne(m,e,Z),t,Z),s,(()=>[])),n),o),pt=(e,t,s)=>(J(ne(C,e,(()=>[])),t),s),St=(e,t,s)=>N(ee(ee(ee(u,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(xt(e,t,s))])),Rt=e=>N(ee(y,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(Ft(e))])),yt=e=>G(m)||G(we[e])?0:X(e?re(m,ae):m,((t,s)=>X(t,((t,n)=>X(t,((t,o)=>Me(we[e],[s,n,o],t))))))),It=e=>G(C)||G(Se[e])?0:X(e?re(C):C,((t,s)=>Me(Se[e],[s],t))),Tt=(e,t,s)=>{if(!G(t))return Me(e,s),1},bt=e=>{const t=G(ie[e]),s=G(ge[e])&&G(K[e])&&t&&G(q[e]),n=G(Le[e])&&G(fe[e])&&G(H[e])&&G(B[e]);if(!s||!n){const o=e?[re(r),ae(i),re(c,ae),re(u,ae)]:[r,i,c,u];if(!s){X(o[2],((t,s)=>X(t,((t,n)=>Tt(ge[e],t,[s,n])))));const s=ue();X(o[1],((n,o)=>{Tt(K[e],n,[o])&&!t&&(Me(ie[e],[o,null]),he(s,o))})),t||X(o[3],((t,n)=>{if(!$(s,n)){const s=ue();X(t,(e=>X(e,(([t,n],o)=>n!==t?he(s,o):Y(e,o))))),X(s,(t=>Me(ie[e],[n,t])))}})),Tt(q[e],o[0])}if(!n){let t;X(o[3],((s,n)=>{let o;X(s,((s,r)=>{let a;X(s,(([s,i],l)=>{i!==s&&(Me(Le[e],[n,r,l],i,s,St),t=o=a=1)})),a&&Me(fe[e],[n,r],St)})),o&&Me(H[e],[n],St)})),t&&Me(B[e],void 0,St)}}},mt=e=>{const t=G(ye[e]),s=G(Te[e])&&G(Re[e]);if(!t||!s){const n=e?[re(S),re(y)]:[S,y];if(t||Tt(ye[e],n[0]),!s){let t;X(n[1],(([s,n],o)=>{n!==s&&(Me(Te[e],[o],n,s,Rt),t=1)})),t&&Me(Re[e],void 0,Rt)}}},Ct=(e,...t)=>(Ht((()=>e(...b(t,v)))),Kt),Vt=()=>oe(Q,(e=>oe(e,oe))),Et=()=>_(Q),kt=e=>_(ee(Q,v(e))),Jt=(e,t,s,n=0,o)=>{return b(k(I((r=ee(Q,v(e)),a=(e,s)=>[z(t)?s:ee(e,v(t)),s],b([...r?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>ke(e,t)*(s?-1:1))),n,z(o)?o:n+o),(([,e])=>e));var r,a},Mt=(e,t)=>_(ee(ee(Q,v(e)),v(t))),xt=(e,t,s)=>ee(ee(ee(Q,v(e)),v(t)),v(s)),At=()=>oe(j),Dt=()=>_(j),Ft=e=>ee(j,v(e)),Pt=e=>Ct((()=>(e=>qe(e,Fe,vt))(e)?Ye(e):0)),Qt=e=>Ct((()=>je(e)?nt(e):0)),jt=e=>{try{Xe(D(e))}catch{}return Kt},zt=t=>Ct((()=>{if((e=qe(t,(e=>qe(e,De))))&&(Ke(t),!G(Q))){const e=Vt();Ot(),Pt(e)}})),Nt=e=>Ct((()=>{if(t=(e=>qe(e,De))(e)){const s=At();qt(),Wt(),t=!0,Ue(e),Qt(s)}})),Ot=()=>Ct((()=>Ye({}))),Wt=()=>Ct((()=>nt({}))),Bt=()=>Ct((()=>{Ke({}),e=!1})),qt=()=>Ct((()=>{Ue({}),t=!1})),Ht=(e,t)=>{if(-1==o)return;$t();const s=e();return Gt(t),s},$t=()=>(o++,Kt),Gt=e=>(o>0&&(o--,0==o&&(s=!G(u),n=!G(y),o=1,yt(1),s&&bt(1),It(1),n&&mt(1),o=-1,e?.(oe(u,(e=>oe(e,(e=>oe(e,(e=>[...e]),(([e,t])=>e===t))),Ve)),Ve),oe(m,(e=>oe(e,oe))),oe(y,(e=>[...e]),(([e,t])=>e===t)),oe(C))&&(o=1,X(u,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>ce(Kt,t,s,n,e))))))),X(y,(([e],t)=>de(Kt,t,e))),o=-1,s=n=!1),Me(Ee[0],void 0,s,n),yt(0),s&&bt(0),It(0),n&&mt(0),Me(Ee[1],void 0,s,n),o=0,T([r,i,c,u,m,S,y,C],U))),Kt),Kt={getTables:Vt,getTableIds:Et,getTable:e=>oe(ee(Q,v(e)),oe),getRowIds:kt,getSortedRowIds:Jt,getRow:(e,t)=>oe(ee(ee(Q,v(e)),v(t))),getCellIds:Mt,getCell:xt,getValues:At,getValueIds:Dt,getValue:Ft,hasTables:()=>!G(Q),hasTable:e=>$(Q,v(e)),hasRow:(e,t)=>$(ee(Q,v(e)),v(t)),hasCell:(e,t,s)=>$(ee(ee(Q,v(e)),v(t)),v(s)),hasValues:()=>!G(j),hasValue:e=>$(j,v(e)),getTablesJson:()=>A(Q),getValuesJson:()=>A(j),getJson:()=>A([Q,j]),getTablesSchemaJson:()=>A(V),getValuesSchemaJson:()=>A(M),getSchemaJson:()=>A([V,M]),setTables:Pt,setTable:(e,t)=>Ct((e=>Fe(t,e)?Ze(e,t):0),e),setRow:(e,t,s)=>Ct(((e,t)=>Pe(e,t,s)?_e(e,at(e),t,s):0),e,t),addRow:(e,t)=>Ht((()=>{let s;return Pe(e,s,t)&&(e=v(e),_e(e,at(e),s=rt(e),t)),s})),setPartialRow:(e,t,s)=>Ct(((e,t)=>{if(Pe(e,t,s,1)){const n=at(e);Ce(s,((s,o)=>tt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Ct(((e,t,s)=>N(Qe(e,t,s,W(n)?n(xt(e,t,s)):n),(n=>tt(e,at(e),t,s,n)))),e,t,s),setValues:Qt,setPartialValues:e=>Ct((()=>je(e,1)?Ce(e,((e,t)=>ot(t,e))):0)),setValue:(e,t)=>Ct((e=>N(ze(e,W(t)?t(Ft(e)):t),(t=>ot(e,t)))),e),setTablesJson:jt,setValuesJson:e=>{try{st(D(e))}catch{}return Kt},setJson:e=>{try{const[t,s]=D(e);Xe(t),st(s)}catch{jt(e)}return Kt},setTablesSchema:zt,setValuesSchema:Nt,setSchema:(e,t)=>Ct((()=>{zt(e),Nt(t)})),delTables:Ot,delTable:e=>Ct((e=>$(Q,e)?it(e):0),e),delRow:(e,t)=>Ct(((e,t)=>N(ee(Q,e),(s=>$(s,t)?lt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ct(((e,t,s)=>N(ee(Q,e),(o=>N(ee(o,t),(r=>$(r,s)?ct(e,o,t,r,s,n):0))))),e,t,s),delValues:Wt,delValue:e=>Ct((e=>$(j,e)?dt(e):0),e),delTablesSchema:Bt,delValuesSchema:qt,delSchema:()=>Ct((()=>{Bt(),qt()})),transaction:Ht,startTransaction:$t,finishTransaction:Gt,forEachTable:e=>X(Q,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>te(t,e))))))))),forEachRow:(e,t)=>X(ee(Q,v(e)),((e,s)=>t(s,(t=>te(e,t))))),forEachCell:(e,t,s)=>te(ee(ee(Q,v(e)),v(t)),s),forEachValue:e=>te(j,e),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let i=Jt(e,t,s,n,o);return Je((()=>{const a=Jt(e,t,s,n,o);R(a,i)||(i=a,r(Kt,e,t,s,n,o,i))}),ie[a?1:0],[e,t],[Et])},addWillFinishTransactionListener:e=>Je(e,Ee[0]),addDidFinishTransactionListener:e=>Je(e,Ee[1]),callListener:e=>(Ae(e),Kt),delListener:e=>(xe(e),Kt),getListenerStats:()=>({}),createStore:$e};return Ce({Tables:[0,B],TableIds:[0,q],[f]:[1,H,[Et]],[g]:[1,K,[Et]],Row:[2,fe,[Et,kt]],[w]:[2,ge,[Et,kt]],[L]:[3,Le,[Et,kt,Mt],e=>Oe(xt(...e))],InvalidCell:[3,we],Values:[0,Re],ValueIds:[0,ye],Value:[1,Te,[Dt],e=>Oe(Ft(e[0]))],InvalidValue:[1,Se]},(([e,t,s,n],o)=>{Kt[h+o+d]=(...o)=>Je(o[e],t[o[e+1]?1:0],e>0?k(o,0,e):void 0,s,n)})),Ie(Kt)};e.createCheckpoints=Ee,e.createCustomPersister=De,e.createFilePersister=(e,s)=>{let n;return De(e,(async()=>{try{return await t.promises.readFile(s,c)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,c)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=Je,e.createLocalPersister=(e,t)=>Qe(e,t,localStorage),e.createMetrics=Ae,e.createQueries=ze,e.createRelationships=Ne,e.createRemotePersister=(e,t,s,n)=>{let o,r;return De(e,(async()=>{const e=await fetch(t);return r=je(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=je(s);z(r)||z(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{N(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Qe(e,t,sessionStorage),e.createStore=$e,e.defaultSorter=ke},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),a=s(!0),r=s(0),i=s(s),l="default",c="utf8",d="Listener",u="Result",h="add",f="Table",g="RowIds",L="Cell",w="CellIds",v=e=>n+e,p=(e,t)=>e.includes(t),S=(e,t)=>e.every(t),R=(e,t)=>C(e)===C(t)&&S(e,((e,s)=>t[s]===e)),y=(e,t)=>S(e,((s,n)=>0==n||t(e[n-1],s)<=0)),I=(e,t)=>e.sort(t),T=(e,t)=>e.forEach(t),b=(e,t)=>e.map(t),m=e=>E(e,((e,t)=>e+t),0),C=e=>e.length,V=e=>0==C(e),E=(e,t,s)=>e.reduce(t,s),k=(e,t,s)=>e.slice(t,s),J=(e,...t)=>e.push(...t),M=e=>e.pop(),x=e=>e.shift(),A=e=>JSON.stringify(e,((e,t)=>j(t,Map)?E([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),D=JSON.parse,F=Math.max,P=Math.min,Q=isFinite,j=(e,t)=>e instanceof t,z=e=>null==e,N=(e,t,s)=>z(e)?s?.():t(e),O=e=>e==o||e==a,W=e=>s(e)==i,B=e=>Array.isArray(e),q=()=>{},H=e=>e.size,$=(e,t)=>e?.has(t)??!1,G=e=>z(e)||0==H(e),K=e=>[...e?.values()??[]],U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),_=e=>[...e?.keys()??[]],ee=(e,t)=>e?.get(t),te=(e,t)=>X(e,((e,s)=>t(s,e))),se=(e,t,s)=>z(s)?(Y(e,t),e):e?.set(t,s),ne=(e,t,s)=>($(e,t)||se(e,t,s()),ee(e,t)),oe=(e,t,s)=>{const n={},o=t??(e=>e);return X(e,((e,t)=>N(o(e),(e=>s?.(e)?0:n[t]=e)))),n},ae=(e,t)=>{const s=Z(),n=t??(e=>e);return X(e,((e,t)=>s.set(t,n(e)))),s},re=e=>ae(e,ae),ie=(e,t,s,n,o=0)=>N((s?ne:ee)(e,t[o],o>C(t)-2?s:Z),(a=>{if(o>C(t)-2)return n?.(a)&&se(e,t[o]),a;const r=ie(a,t,s,n,o+1);return G(a)&&se(e,t[o]),r})),le=e=>{const t=s(e);return O(t)||t==r&&Q(e)?t:void 0},ce=(e,t,s,n,o)=>z(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),de=(e,t,s)=>z(s)?e.delValue(t):e.setValue(t,s),ue=e=>new Set(B(e)||z(e)?e:[e]),he=(e,t)=>e?.add(t),fe=(e,t,s)=>{const n=e.hasRow,o=Z(),a=Z(),r=Z(),i=Z(),l=Z(),c=(t,s,...n)=>{const o=ne(l,t,ue);return T(n,(t=>he(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>N(ee(l,t),(n=>{T(V(s)?K(n):s,(t=>{e.delListener(t),Y(n,t)})),G(n)&&se(l,t)})),u=(e,s)=>{se(o,e,s),$(a,e)||(se(a,e,t()),se(r,e,Z()),se(i,e,Z()))},h=e=>{se(o,e),se(a,e),se(r,e),se(i,e),d(e)};return[()=>e,()=>_(o),e=>te(a,e),e=>$(a,e),e=>ee(o,e),e=>ee(a,e),(e,t)=>se(a,e,t),u,(t,o,a,l,h)=>{u(t,o);const f=Z(),g=Z(),L=ee(r,t),w=ee(i,t),v=t=>{const a=s=>e.getCell(o,t,s),r=ee(L,t),i=n(o,t)?s(l(a,t)):void 0;if(r===i||B(r)&&B(i)&&R(r,i)||se(f,t,[r,i]),!z(h)){const e=ee(w,t),s=n(o,t)?h(a,t):void 0;e!=s&&se(g,t,s)}},p=e=>{a((()=>{X(f,(([,e],t)=>se(L,t,e))),X(g,((e,t)=>se(w,t,e)))}),f,g,L,w,e),U(f),U(g)};te(L,v),e.hasTable(o)&&T(e.getRowIds(o),(e=>{$(L,e)||v(e)})),p(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>p())))},h,()=>te(l,h),c,d]},ge=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),Le=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},we=/^\d+$/,ve=()=>{const e=[];let t=0;return[s=>(s?x(e):null)??n+t++,t=>{we.test(t)&&C(e)<1e3&&J(e,t)}]},pe=e=>{let t;const[s,o]=ve(),a=Z();return[(o,r,i,l=[],c=(()=>[]))=>{t??=e();const d=s(1);return se(a,d,[o,r,i,l,c]),he(ie(r,i??[n],ue),d),d},(e,s,...o)=>T(((e,t=[n])=>{const s=[],o=(e,n)=>n==C(t)?J(s,e):null===t[n]?X(e,(e=>o(e,n+1))):T([t[n],null],(t=>o(ee(e,t),n+1)));return o(e,0),s})(e,s),(e=>X(e,(e=>ee(a,e)[0](t,...s??[],...o))))),e=>N(ee(a,e),(([,t,s])=>(ie(t,s??[n],void 0,(t=>(Y(t,e),G(t)?1:0))),se(a,e),o(e),s))),e=>N(ee(a,e),(([e,,s=[],n,o])=>{const a=(...r)=>{const i=C(r);i==C(s)?e(t,...r,...o(r)):z(s[i])?T(n[i]?.(...r)??[],(e=>a(...r,e))):a(...r,s[i])};a()}))]},Se=Object,Re=Se.keys,ye=Se.isFrozen,Ie=Se.freeze,Te=e=>j(e,Se)&&e.constructor==Se,be=(e,t)=>!z(((e,t)=>N(e,(e=>e[t])))(e,t)),me=(e,t)=>delete e[t],Ce=(e,t)=>b(Se.entries(e),(([e,s])=>t(s,e))),Ve=e=>Te(e)&&V(Re(e)),Ee=Le((e=>{let t,s,o,a=100,r=Z(),i=Z(),l=1;const c=Z(),d=Z(),[u,h,f]=pe((()=>W)),g=Z(),L=Z(),w=[],v=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=ee(g,s);X(n,((s,n)=>X(s,((s,o)=>X(s,((s,a)=>ce(e,n,o,a,s[t]))))))),X(o,((s,n)=>de(e,n,s[t])))})),l=1},R=e=>{se(g,e),se(L,e),h(d,[e])},y=(e,t)=>T(((e,t)=>e.splice(0,t))(e,t??C(e)),R),I=()=>y(w,C(w)-a),b=()=>N(t,(()=>{J(w,t),I(),y(v),t=void 0,o=1})),m=()=>{t=M(w),o=1},E=e.addCellListener(null,null,null,((e,t,s,n,o,a)=>{if(l){b();const e=ne(r,t,Z),i=ne(e,s,Z),l=ne(i,n,(()=>[a,void 0]));l[1]=o,l[0]===o&&G(se(i,n))&&G(se(e,s))&&G(se(r,t))&&m(),P()}})),k=e.addValueListener(null,((e,t,s,n)=>{if(l){b();const e=ne(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&G(se(i,t))&&m(),P()}})),A=(e="")=>(z(t)&&(t=n+s++,se(g,t,[r,i]),j(t,e),r=Z(),i=Z(),o=1),t),D=()=>{V(w)||(((e,...t)=>{e.unshift(...t)})(v,A()),S(0,t),t=M(w),o=1)},F=()=>{V(v)||(J(w,t),t=x(v),S(1,t),o=1)},P=()=>{o&&(h(c),o=0)},Q=e=>{const t=A(e);return P(),t},j=(e,t)=>(O(e)&&ee(L,e)!==t&&(se(L,e,t),h(d,[e])),W),O=e=>$(g,e),W={setSize:e=>(a=e,I(),W),addCheckpoint:Q,setCheckpoint:j,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>te(L,e),hasCheckpoint:O,getCheckpoint:e=>ee(L,e),goBackward:()=>(D(),P(),W),goForward:()=>(F(),P(),W),goTo:e=>{const s=p(w,e)?D:p(v,e)?F:null;for(;!z(s)&&e!=t;)s();return P(),W},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(f(e),W),clear:()=>(y(w),y(v),z(t)||R(t),t=void 0,s=0,Q(),W),destroy:()=>{e.delListener(E),e.delListener(k)},getListenerStats:()=>({})};return Ie(W.clear())})),ke=(e,t)=>e<t?-1:1,Je=Le((e=>{const t=Z(),s=Z(),[o,a,r,i,l,c,d,,u,h,f]=fe(e,Z,(e=>z(e)?n:B(e)?b(e,v):v(e))),[g,L,w]=pe((()=>S)),p=(t,s,n)=>{const o=l(t);X(n,((t,n)=>s(n,(s=>X(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,a,r,i=ke)=>{const l=z(r)?void 0:([e],[t])=>r(e,t);return u(e,n,((n,o,r,u,h,f)=>{let g=0;const w=ue(),v=ue(),p=c(e);if(X(o,(([e,t],s)=>{const n=ue(e),o=ue(t);X(n,(e=>Y(o,e)?Y(n,e):0)),X(n,(e=>{he(w,e),N(ee(p,e),(t=>{Y(t,s),G(t)&&(se(p,e),g=1)}))})),X(o,(e=>{he(w,e),$(p,e)||(se(p,e,ue()),g=1),he(ee(p,e),s),z(a)||he(v,e)}))})),n(),G(h)||(f?te(p,(e=>he(v,e))):te(r,(e=>N(ee(u,e),(e=>he(v,e))))),X(v,(e=>{const t=(t,s)=>i(ee(h,t),ee(h,s),e),s=[...ee(p,e)];y(s,t)||(se(p,e,ue(I(s,t))),he(w,e))}))),(g||f)&&!z(l)){const t=[...p];y(t,l)||(d(e,Z(I(t,l))),g=1)}g&&L(t,[e]),X(w,(t=>L(s,[e,t])))}),ge(o),N(a,ge)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:a,forEachIndex:e=>r(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>$(c(e),t),getTableId:l,getSliceIds:e=>_(c(e)),getSliceRowIds:(e,t)=>K(ee(c(e),t)),addSliceIdsListener:(e,s)=>g(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>g(n,s,[e,t]),delListener:e=>(w(e),S),destroy:f,getListenerStats:()=>({})};return Ie(S)})),Me=Z([["avg",[(e,t)=>m(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>F(...e),(e,t)=>F(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:F(t,e)]],["min",[e=>P(...e),(e,t)=>P(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:P(t,e)]],["sum",[e=>m(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),xe=(e,t,s,n,o,a=!1)=>{if(G(s))return;const[r,i,l,c]=o;return a||=z(e),X(n,(([s,n])=>{a||(e=z(s)?i?.(e,n,t++):z(n)?l?.(e,s,t--):c?.(e,n,s,t),a||=z(e))})),a?r(K(s),H(s)):e},Ae=Le((e=>{const t=Z(),[s,o,a,r,i,l,c,,d,u,h]=fe(e,q,(e=>isNaN(e)||z(e)||!0===e||!1===e||e===n?void 0:1*e)),[f,g,L]=pe((()=>w)),w={setMetricDefinition:(e,s,n,o,a,r,i)=>{const u=W(n)?[n,a,r,i]:ee(Me,n)??ee(Me,"sum");return d(e,s,((s,n,o,a,r,i)=>{const d=l(e),h=H(a);i||=z(d),s();let f=xe(d,h,a,n,u,i);Q(f)||(f=void 0),f!=d&&(c(e,f),g(t,[e],f,d))}),ge(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:a,hasMetric:r,getTableId:i,getMetric:l,addMetricListener:(e,s)=>f(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Ie(w)})),De=(e,t,s,o,a)=>{let r,i,l=0;const c={load:async(s,o)=>{if(2!=l){l=1;const a=await t();z(a)||a==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(a),l=0}return c},startAutoLoad:async(e,t)=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(a(),c),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),r=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(N(r,e.delListener),N(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Ie(c)},Fe="storage",Pe=globalThis.window,Qe=(e,t,s)=>{let n;return De(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},Pe.addEventListener(Fe,n)}),(()=>{Pe.removeEventListener(Fe,n),n=void 0}))},je=e=>e.headers.get("ETag"),ze=Le((e=>{const t=e.createStore,[s,o,a,r,i,,,l,,c,v,p,R]=fe(e,(()=>!0),q),y=t(),I=t(),b=Z(),m=(e,t,...s)=>T(s,(s=>he(ne(ne(b,t,Z),e,ue),s))),E=e=>{N(ee(b,e),(e=>{te(e,((e,t)=>X(t,(t=>e.delListener(t))))),U(e)})),T([I,y],(t=>t.delTable(e)))},M=(e,t,s)=>m(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),x={setQueryDefinition:(t,s,o)=>{l(t,s),E(t);const a=[],r=[[null,[s,null,null,[],Z()]]],i=[],c=[],d=[];o({select:(e,t)=>{const s=W(e)?[C(a)+n,e]:[z(t)?e:t,s=>s(e,t)];return J(a,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=z(s)||W(t)?null:t,o=z(n)?t:s,a=[e,[e,n,W(o)?o:e=>e(o),[],Z()]];return J(r,a),{as:e=>a[0]=e}},where:(e,t,s)=>J(i,W(e)?e:z(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,W(t)?[t,s,n,o]:ee(Me,t)??[(e,t)=>t]]];return J(c,a),{as:e=>a[0]=e}},having:(e,t)=>J(d,W(e)?e:s=>s(e)===t)});const u=Z(a);if(G(u))return x;const h=Z(r);te(h,((e,[,t])=>N(ee(h,t),(({3:t})=>z(e)?0:J(t,e)))));const f=Z(c);let g=y;if(G(f)&&V(d))g=I;else{M(t,g,I);const e=Z();te(f,((t,[s,n])=>he(ne(e,s,ue),[t,n])));const s=ue();te(u,(t=>$(e,t)?0:he(s,t)));const n=Z(),o=(s,n,o,a)=>N(s,(([r,i,l,c])=>{te(n,((t,[s])=>{const n=ne(r,t,Z),i=ee(n,o),l=a?void 0:s;if(i!==l){const s=ue([[i,l]]),a=H(n);se(n,o,l),X(ee(e,t),(([e,t])=>{const o=xe(c[e],a,n,s,t);c[e]=z(le(o))?null:o}))}})),G(i)||!S(d,(e=>e((e=>c[e]))))?I.delRow(t,l):z(l)?s[2]=I.addRow(t,c):I.setRow(t,l,c)}));m(g,t,g.addRowListener(t,null,((a,r,i,l)=>{const c=[],d=[],u=Z(),h=g.hasRow(t,i);let f=!h;X(s,(e=>{const[s,n,o]=l(t,i,e);J(c,n),J(d,o),f||=s})),te(e,(e=>{const[s,,n]=l(t,i,e);(f||s)&&se(u,e,[n])})),f&&o(ie(n,c,void 0,(([,e])=>(Y(e,i),G(e)))),u,i,1),h&&o(ie(n,d,(()=>{const e={};return X(s,(s=>e[s]=g.getCell(t,i,s))),[Z(),ue(),void 0,e]}),(([,e])=>{he(e,i)})),u,i)})))}M(t,e,g);const L=(n,o,a,r)=>{const l=t=>e.getCell(o,a,t);T(r,(s=>{const[o,,a,r,i]=ee(h,s),c=a?.(l,n),[d,u]=ee(i,n)??[];c!=d&&(z(u)||R(t,u),se(i,n,z(c)?null:[c,...p(t,1,e.addRowListener(o,c,(()=>L(n,o,c,r))))]))})),(n=>{const o=(t,o)=>e.getCell(...z(o)?[s,n,t]:t===s?[s,n,o]:[ee(h,t)?.[0],ee(ee(h,t)?.[4],n)?.[0],o]);g.transaction((()=>S(i,(e=>e(o)))?te(u,((e,s)=>ce(g,t,n,e,s(o,n)))):g.delRow(t,n)))})(n)},{3:w}=ee(h,null);return g.transaction((()=>p(t,1,e.addRowListener(s,null,((n,o,a)=>{e.hasRow(s,a)?L(a,s,a,w):(g.delRow(t,a),X(h,(({4:e})=>N(ee(e,a),(([,s])=>{R(t,s),se(e,a)})))))}))))),x},delQueryDefinition:e=>(E(e),c(e),x),getStore:s,getQueryIds:o,forEachQuery:a,hasQuery:r,getTableId:i,delListener:e=>(I.delListener(e),x),destroy:v,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=I.getListenerStats();return n}};return Ce({[f]:[1,1],[g]:[0,1],SortedRowIds:[0,5],Row:[1,2],[w]:[0,2],[L]:[1,3]},(([e,t],s)=>{T(e?["get","has","forEach"]:["get"],(e=>x[e+u+s]=(...t)=>I[e+s](...t))),x[h+u+s+d]=(...e)=>I[h+s+d](...k(e,0,t),((s,...n)=>e[t](x,...n)))})),Ie(x)})),Ne=Le((e=>{const t=Z(),s=Z(),o=Z(),a=Z(),[r,i,l,c,d,u,,,h,f,g]=fe(e,(()=>[Z(),Z(),Z(),Z()]),(e=>z(e)?void 0:e+n)),[L,w,v]=pe((()=>y)),p=(e,t,s)=>N(u(e),(([n,,o])=>{if(!$(o,t)){const a=ue();if(d(e)!=R(e))he(a,t);else{let e=t;for(;!z(e)&&!$(a,e);)he(a,e),e=ee(n,e)}if(s)return a;se(o,t,a)}return ee(o,t)})),S=(e,t)=>N(u(e),(([,,e])=>se(e,t))),R=e=>ee(t,e),y={setRelationshipDefinition:(e,n,r,i)=>(se(t,e,r),h(e,n,((t,n)=>{const r=ue(),i=ue(),l=ue(),[c,d]=u(e);X(n,(([t,s],n)=>{z(t)||(he(i,t),N(ee(d,t),(e=>{Y(e,n),G(e)&&se(d,t)}))),z(s)||(he(i,s),$(d,s)||se(d,s,ue()),he(ee(d,s),n)),he(r,n),se(c,n,s),te(ee(a,e),(t=>{$(p(e,t),n)&&he(l,t)}))})),t(),X(r,(t=>w(s,[e,t]))),X(i,(t=>w(o,[e,t]))),X(l,(t=>{S(e,t),w(a,[e,t])}))}),ge(i)),y),delRelationshipDefinition:e=>(se(t,e),f(e),y),getStore:r,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>ee(u(e)?.[0],t),getLocalRowIds:(e,t)=>K(ee(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>z(u(e))?[t]:K(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),L(s,a,[e,t])),delListener:e=>(S(...v(e)),y),destroy:g,getListenerStats:()=>({})};return Ie(y)})),Oe=e=>[e,e],We=()=>[Z(),Z()],Be=(e,t,s,n=se)=>(Ce(t,((t,n)=>s(e,n,t))),te(e,(s=>be(t,s)?0:n(e,s))),e),qe=(e,t,s)=>z(e)||!Te(e)||Ve(e)||ye(e)?(s?.(),!1):(Ce(e,((s,n)=>{t(s,n)||me(e,n)})),!Ve(e)),He=(e,t,s)=>se(e,t,ee(e,t)==-s?void 0:s),$e=()=>{let e,t,s,n,o=0;const a=Z(),i=Z(),c=Z(),u=Z(),S=Z(),y=Z(),m=Z(),C=Z(),V=Z(),E=Z(),M=Z(),x=Z(),F=ue(),P=Z(),Q=Z(),j=Z(),B=We(),q=We(),H=We(),K=We(),ie=We(),fe=We(),ge=We(),Le=We(),we=We(),Se=We(),Re=We(),ye=We(),Te=We(),Ee=We(),[Je,Me,xe,Ae]=pe((()=>Kt)),De=e=>{if(!qe(e,((e,t)=>p(["type",l],t))))return!1;const t=e.type;return!(!O(t)&&t!=r||(le(e.default)!=t&&me(e,l),0))},Fe=(t,s)=>(!e||$(V,s)||vt(s))&&qe(t,((e,t)=>Pe(s,t,e)),(()=>vt(s))),Pe=(e,t,s,n)=>qe(n?s:Ne(s,e,t),((n,o)=>N(Qe(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>vt(e,t))),Qe=(t,s,n,o)=>e?N(ee(ee(V,t),n),(e=>le(o)!=e.type?vt(t,s,n,o,e.default):o),(()=>vt(t,s,n,o))):z(le(o))?vt(t,s,n,o):o,je=(e,t)=>qe(t?e:Ge(e),((t,s)=>N(ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>pt())),ze=(e,s)=>t?N(ee(M,e),(t=>le(s)!=t.type?pt(e,s,t.default):s),(()=>pt(e,s))):z(le(s))?pt(e,s):s,Ne=(e,t,s)=>(N(ee(E,t),(([n,o])=>{X(n,((t,s)=>{be(e,s)||(e[s]=t)})),X(o,(n=>{be(e,n)||vt(t,s,n)}))})),e),Ge=e=>(t&&(X(x,((t,s)=>{be(e,s)||(e[s]=t)})),X(F,(t=>{be(e,t)||pt(t)}))),e),Ke=e=>Be(V,e,((e,t,s)=>{const n=Z(),o=ue();Be(ne(V,t,Z),s,((e,t,s)=>{se(e,t,s),N(s.default,(e=>se(n,t,e)),(()=>he(o,t)))})),se(E,t,[n,o])}),((e,t)=>{se(V,t),se(E,t)})),Ue=e=>Be(M,e,((e,t,s)=>{se(M,t,s),N(s.default,(e=>se(x,t,e)),(()=>he(F,t)))}),((e,t)=>{se(M,t),se(x,t),Y(F,t)})),Xe=e=>Ve(e)?Ot():Pt(e),Ye=e=>Be(Q,e,((e,t,s)=>Ze(t,s)),((e,t)=>it(t))),Ze=(e,t)=>Be(ne(Q,e,(()=>(ut(e,1),Z()))),t,((t,s,n)=>_e(e,t,s,n)),((t,s)=>lt(e,t,s))),_e=(e,t,s,n,o)=>Be(ne(t,s,(()=>(ht(e,s,1),Z()))),n,((t,n,o)=>et(e,s,t,n,o)),((n,a)=>ct(e,t,s,n,a,o))),et=(e,t,s,n,o)=>{$(s,n)||ft(e,t,n,1);const a=ee(s,n);o!==a&&(gt(e,t,n,a,o),se(s,n,o))},tt=(e,t,s,n,o)=>N(ee(t,s),(t=>et(e,s,t,n,o)),(()=>_e(e,t,s,Ne({[n]:o},e,s)))),st=e=>Ve(e)?Wt():Qt(e),nt=e=>Be(j,e,((e,t,s)=>ot(t,s)),((e,t)=>dt(t))),ot=(e,t)=>{$(j,e)||Lt(e,1);const s=ee(j,e);t!==s&&(wt(e,s,t),se(j,e,t))},at=(e,t)=>{const[s]=ne(P,e,ve),n=s(t);return $(ee(Q,e),n)?at(e,t):n},rt=e=>ee(Q,e)??Ze(e,{}),it=e=>Ze(e,{}),lt=(e,t,s)=>{const[,n]=ne(P,e,ve);n(s),_e(e,t,s,{},!0)},ct=(e,t,s,n,o,a)=>{const r=ee(ee(E,e)?.[0],o);if(!z(r)&&!a)return et(e,s,n,o,r);const i=t=>{gt(e,s,t,ee(n,t)),ft(e,s,t,-1),se(n,t)};z(r)?i(o):te(n,i),G(n)&&(ht(e,s,-1),G(se(t,s))&&(ut(e,-1),se(Q,e),se(P,e)))},dt=e=>{const t=ee(x,e);if(!z(t))return ot(e,t);wt(e,ee(j,e)),Lt(e,-1),se(j,e)},ut=(e,t)=>He(a,e,t),ht=(e,t,s)=>He(ne(i,e,Z),t,s),ft=(e,t,s,n)=>He(ne(ne(c,e,Z),t,Z),s,n),gt=(e,t,s,n,o)=>ne(ne(ne(u,e,Z),t,Z),s,(()=>[n,0]))[1]=o,Lt=(e,t)=>He(S,e,t),wt=(e,t,s)=>ne(y,e,(()=>[t,0]))[1]=s,vt=(e,t,s,n,o)=>(J(ne(ne(ne(m,e,Z),t,Z),s,(()=>[])),n),o),pt=(e,t,s)=>(J(ne(C,e,(()=>[])),t),s),St=(e,t,s)=>N(ee(ee(ee(u,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(xt(e,t,s))])),Rt=e=>N(ee(y,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(Ft(e))])),yt=e=>G(m)||G(we[e])?0:X(e?ae(m,re):m,((t,s)=>X(t,((t,n)=>X(t,((t,o)=>Me(we[e],[s,n,o],t))))))),It=e=>G(C)||G(Se[e])?0:X(e?ae(C):C,((t,s)=>Me(Se[e],[s],t))),Tt=(e,t,s)=>{if(!G(t))return Me(e,s),1},bt=e=>{const t=G(ie[e]),s=G(ge[e])&&G(K[e])&&t&&G(q[e]),n=G(Le[e])&&G(fe[e])&&G(H[e])&&G(B[e]);if(!s||!n){const o=e?[ae(a),re(i),ae(c,re),ae(u,re)]:[a,i,c,u];if(!s){X(o[2],((t,s)=>X(t,((t,n)=>Tt(ge[e],t,[s,n])))));const s=ue();X(o[1],((n,o)=>{Tt(K[e],n,[o])&&!t&&(Me(ie[e],[o,null]),he(s,o))})),t||X(o[3],((t,n)=>{if(!$(s,n)){const s=ue();X(t,(e=>X(e,(([t,n],o)=>n!==t?he(s,o):Y(e,o))))),X(s,(t=>Me(ie[e],[n,t])))}})),Tt(q[e],o[0])}if(!n){let t;X(o[3],((s,n)=>{let o;X(s,((s,a)=>{let r;X(s,(([s,i],l)=>{i!==s&&(Me(Le[e],[n,a,l],i,s,St),t=o=r=1)})),r&&Me(fe[e],[n,a],St)})),o&&Me(H[e],[n],St)})),t&&Me(B[e],void 0,St)}}},mt=e=>{const t=G(ye[e]),s=G(Te[e])&&G(Re[e]);if(!t||!s){const n=e?[ae(S),ae(y)]:[S,y];if(t||Tt(ye[e],n[0]),!s){let t;X(n[1],(([s,n],o)=>{n!==s&&(Me(Te[e],[o],n,s,Rt),t=1)})),t&&Me(Re[e],void 0,Rt)}}},Ct=(e,...t)=>(Ht((()=>e(...b(t,v)))),Kt),Vt=()=>oe(Q,(e=>oe(e,oe))),Et=()=>_(Q),kt=e=>_(ee(Q,v(e))),Jt=(e,t,s,n=0,o)=>{return b(k(I((a=ee(Q,v(e)),r=(e,s)=>[z(t)?s:ee(e,v(t)),s],b([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>ke(e,t)*(s?-1:1))),n,z(o)?o:n+o),(([,e])=>e));var a,r},Mt=(e,t)=>_(ee(ee(Q,v(e)),v(t))),xt=(e,t,s)=>ee(ee(ee(Q,v(e)),v(t)),v(s)),At=()=>oe(j),Dt=()=>_(j),Ft=e=>ee(j,v(e)),Pt=e=>Ct((()=>(e=>qe(e,Fe,vt))(e)?Ye(e):0)),Qt=e=>Ct((()=>je(e)?nt(e):0)),jt=e=>{try{Xe(D(e))}catch{}return Kt},zt=t=>Ct((()=>{if((e=qe(t,(e=>qe(e,De))))&&(Ke(t),!G(Q))){const e=Vt();Ot(),Pt(e)}})),Nt=e=>Ct((()=>{if(t=(e=>qe(e,De))(e)){const s=At();qt(),Wt(),t=!0,Ue(e),Qt(s)}})),Ot=()=>Ct((()=>Ye({}))),Wt=()=>Ct((()=>nt({}))),Bt=()=>Ct((()=>{Ke({}),e=!1})),qt=()=>Ct((()=>{Ue({}),t=!1})),Ht=(e,t)=>{if(-1==o)return;$t();const s=e();return Gt(t),s},$t=()=>(o++,Kt),Gt=e=>(o>0&&(o--,0==o&&(s=!G(u),n=!G(y),o=1,yt(1),s&&bt(1),It(1),n&&mt(1),o=-1,e?.(oe(u,(e=>oe(e,(e=>oe(e,(e=>[...e]),(([e,t])=>e===t))),Ve)),Ve),oe(m,(e=>oe(e,oe))),oe(y,(e=>[...e]),(([e,t])=>e===t)),oe(C))&&(o=1,X(u,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>ce(Kt,t,s,n,e))))))),X(y,(([e],t)=>de(Kt,t,e))),o=-1,s=n=!1),Me(Ee[0],void 0,s,n),yt(0),s&&bt(0),It(0),n&&mt(0),Me(Ee[1],void 0,s,n),o=0,T([a,i,c,u,m,S,y,C],U))),Kt),Kt={getTables:Vt,getTableIds:Et,getTable:e=>oe(ee(Q,v(e)),oe),getRowIds:kt,getSortedRowIds:Jt,getRow:(e,t)=>oe(ee(ee(Q,v(e)),v(t))),getCellIds:Mt,getCell:xt,getValues:At,getValueIds:Dt,getValue:Ft,hasTables:()=>!G(Q),hasTable:e=>$(Q,v(e)),hasRow:(e,t)=>$(ee(Q,v(e)),v(t)),hasCell:(e,t,s)=>$(ee(ee(Q,v(e)),v(t)),v(s)),hasValues:()=>!G(j),hasValue:e=>$(j,v(e)),getTablesJson:()=>A(Q),getValuesJson:()=>A(j),getJson:()=>A([Q,j]),getTablesSchemaJson:()=>A(V),getValuesSchemaJson:()=>A(M),getSchemaJson:()=>A([V,M]),setTables:Pt,setTable:(e,t)=>Ct((e=>Fe(t,e)?Ze(e,t):0),e),setRow:(e,t,s)=>Ct(((e,t)=>Pe(e,t,s)?_e(e,rt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ht((()=>{let n;return Pe(e,n,t)&&(e=v(e),_e(e,rt(e),n=at(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Ct(((e,t)=>{if(Pe(e,t,s,1)){const n=rt(e);Ce(s,((s,o)=>tt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Ct(((e,t,s)=>N(Qe(e,t,s,W(n)?n(xt(e,t,s)):n),(n=>tt(e,rt(e),t,s,n)))),e,t,s),setValues:Qt,setPartialValues:e=>Ct((()=>je(e,1)?Ce(e,((e,t)=>ot(t,e))):0)),setValue:(e,t)=>Ct((e=>N(ze(e,W(t)?t(Ft(e)):t),(t=>ot(e,t)))),e),setTablesJson:jt,setValuesJson:e=>{try{st(D(e))}catch{}return Kt},setJson:e=>{try{const[t,s]=D(e);Xe(t),st(s)}catch{jt(e)}return Kt},setTablesSchema:zt,setValuesSchema:Nt,setSchema:(e,t)=>Ct((()=>{zt(e),Nt(t)})),delTables:Ot,delTable:e=>Ct((e=>$(Q,e)?it(e):0),e),delRow:(e,t)=>Ct(((e,t)=>N(ee(Q,e),(s=>$(s,t)?lt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ct(((e,t,s)=>N(ee(Q,e),(o=>N(ee(o,t),(a=>$(a,s)?ct(e,o,t,a,s,n):0))))),e,t,s),delValues:Wt,delValue:e=>Ct((e=>$(j,e)?dt(e):0),e),delTablesSchema:Bt,delValuesSchema:qt,delSchema:()=>Ct((()=>{Bt(),qt()})),transaction:Ht,startTransaction:$t,finishTransaction:Gt,forEachTable:e=>X(Q,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>te(t,e))))))))),forEachRow:(e,t)=>X(ee(Q,v(e)),((e,s)=>t(s,(t=>te(e,t))))),forEachCell:(e,t,s)=>te(ee(ee(Q,v(e)),v(t)),s),forEachValue:e=>te(j,e),addSortedRowIdsListener:(e,t,s,n,o,a,r)=>{let i=Jt(e,t,s,n,o);return Je((()=>{const r=Jt(e,t,s,n,o);R(r,i)||(i=r,a(Kt,e,t,s,n,o,i))}),ie[r?1:0],[e,t],[Et])},addWillFinishTransactionListener:e=>Je(e,Ee[0]),addDidFinishTransactionListener:e=>Je(e,Ee[1]),callListener:e=>(Ae(e),Kt),delListener:e=>(xe(e),Kt),getListenerStats:()=>({}),createStore:$e};return Ce({Tables:[0,B],TableIds:[0,q],[f]:[1,H,[Et]],[g]:[1,K,[Et]],Row:[2,fe,[Et,kt]],[w]:[2,ge,[Et,kt]],[L]:[3,Le,[Et,kt,Mt],e=>Oe(xt(...e))],InvalidCell:[3,we],Values:[0,Re],ValueIds:[0,ye],Value:[1,Te,[Dt],e=>Oe(Ft(e[0]))],InvalidValue:[1,Se]},(([e,t,s,n],o)=>{Kt[h+o+d]=(...o)=>Je(o[e],t[o[e+1]?1:0],e>0?k(o,0,e):void 0,s,n)})),Ie(Kt)};e.createCheckpoints=Ee,e.createCustomPersister=De,e.createFilePersister=(e,s)=>{let n;return De(e,(async()=>{try{return await t.promises.readFile(s,c)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,c)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=Je,e.createLocalPersister=(e,t)=>Qe(e,t,localStorage),e.createMetrics=Ae,e.createQueries=ze,e.createRelationships=Ne,e.createRemotePersister=(e,t,s,n)=>{let o,a;return De(e,(async()=>{const e=await fetch(t);return a=je(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=je(s);z(a)||z(n)||n==a||(a=n,e())}),1e3*n)}),(()=>{N(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Qe(e,t,sessionStorage),e.createStore=$e,e.defaultSorter=ke},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
Binary file
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="",a=t(l),n=t(!0),o=t(0),d="type",r="default",s="Listener",I="get",c="add",$="Ids",i="Table",u=i+"s",p=i+$,b="Row",C=b+$,h="Sorted"+b+$,g="Cell",m=g+$,f="Value",w=f+"s",y=f+$,T=(e,t)=>e.every(t),v=(e,t)=>e.sort(t),V=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),R=e=>e.length,k=e=>0==R(e),S=(e,t)=>e.filter(t),P=(e,...t)=>e.push(...t),A=e=>e.pop(),E=(e,...t)=>e.unshift(...t),D=e=>e.shift(),O=JSON.parse,N=isFinite,j=(e,t)=>e instanceof t,L=e=>null==e,M=e=>e==a||e==n,G=e=>t(e)==a,J=e=>Array.isArray(e),z=e=>{const l=t(e);return M(l)||l==o&&N(e)?l:void 0},W=(e,t)=>e?.has(t)??!1,B=e=>[...e?.values()??[]],F=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),_=e=>new Map(e),Z=(e,t)=>e?.get(t),H=(e,t)=>F(e,((e,l)=>t(l,e))),Q=(e,t)=>x([...e?.entries()??[]],(([e,l])=>t(l,e))),q=(e,t,l)=>L(l)?(U(e,t),e):e?.set(t,l),K=(e,t,l)=>(W(e,t)||q(e,t,l()),Z(e,t)),X=e=>e.toUpperCase(),Y=e=>e.toLowerCase(),ee="a ",te="A function for",le=", and registers a listener so that any changes to that result will cause a re-render",ae="Callback",ne="Del",oe="Deps",de=oe+"?: React.DependencyList",re="doRollback?: DoRollback",se="actions: () => Return, "+re,Ie="export",ce="Id",$e="Invalid",ie="Json",ue=Y(s),pe="?: ",be=" | undefined",Ce="NonNullable",he="Partial",ge="Props",me="Provider",fe=`Registers a ${ue} that will be called`,we="Represents",ye="rowId: "+ce,Te="Schema",ve="Set",Ve=", descending?: boolean, offset?: number, limit?: number",xe="[]",Re="the Store",ke="Transaction",Se=Y(ke),Pe="Execute a "+Se+" to make multiple mutations",Ae="Explicitly starts a "+Se,Ee="Explicitly finishes a "+Se,De="the end of the "+Se,Oe="void",Ne=" => "+Oe,je="WhenSet",Le=" when setting it",Me=ee+"string serialization of",Ge=" ",Je="Gets a callback that can ",ze="the ",We=" the schema for",Be=(e=0,t=0)=>`the ${rt[e]}content of`+(t?Ge+Re:l),Fe=(e=0,t,a=0)=>nt[t]+Ge+Be(e,1)+(a?" when setting it":l),Ue=(e,t=0)=>we+` a Row when ${t?"s":"g"}etting ${Be()} the '${e}' `+i,_e=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,Ze=(e,t)=>`Calls a function for each ${e} in `+t,He=e=>"The props passed to a component that renders "+e,Qe=e=>"A function that takes "+e,qe=(e,t=0)=>te+" listening to changes to "+dt[e]+" in "+dt[t],Ke=(e,t,a=0)=>fe+" whenever "+dt[e]+" in "+dt[t]+" change"+(a?l:"s"),Xe=e=>`the '${e}' `+i,Ye=e=>"the specified Row in "+Xe(e),et=(e,t=0)=>nt[t]+` ${Be()} `+Xe(e),tt=(e,t=0)=>nt[t]+` ${Be()} `+Ye(e),lt=(e,t,l=0)=>nt[l]+` the '${t}' Cell for `+Ye(e),at=(e,t=0)=>nt[t]+` the '${e}' Value`,nt=["Gets","Checks existence of","Sets","Deletes","Sets part of",we,"Gets "+Me,"Sets "+Me,fe+" whenever",Je+"set",Je+"add",Je+"set part of",Je+"delete","Renders","Gets "+Me+We,"Sets"+We,"Deletes"+We],ot=[I,"has","set","del","set","forEach",c,l],dt=[Re,u,ze+i+Ge+$,ee+i,ze+b+Ge+$,ee+b,ze+g+Ge+$,ee+g,"invalid Cell changes",w,ze+f+Ge+$,ee+f,"invalid Value changes",ze+"sorted "+b+Ge+$],rt=[l,"tabular ","keyed value "],st=e=>new Set(J(e)||L(e)?e:[e]),It=(e,t)=>e?.add(t),ct=/[^A-Za-z]+/,$t=/[^A-Za-z0-9]+/,it=/^( *)\/\*\* *(.*?) *\*\/$/gm,ut=(e,t,l)=>e.substring(t,l),pt=e=>e.includes(","),bt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return W(e,n)?bt(e,t,l,a+1):(q(e,n,l),n)},Ct=e=>e.replace(it,((e,t,l)=>{const a=77-ht(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),ht=e=>e.length,gt=(e,t=l)=>e.join(t),mt=e=>e.flat(1e3),ft=(e,t=0)=>gt(x(e.split($t),((e,l)=>(l>0||t?X:Y)(ut(e,0,1))+ut(e,1)))),wt=e=>X(gt((e&&!ct.test(e[0])?e:" "+e).split($t),"_")),yt=e=>`/** ${e}. */`,Tt=(...e)=>gt(S(e,(e=>e)),", "),vt=(...e)=>"{"+gt(e,"; ")+"}",Vt=(...e)=>vt(...x(e,(e=>"readonly "+e))),xt=()=>{const e=[_(),_(),_(),_()],t=_(),a=_();return[(...e)=>gt(mt(e),"\n"),(t,l,...a)=>V(a,(a=>V([0,1],(n=>(t??n)==n?It(K(e[n],l,st),a):0)))),(e,a,n,o=l,d=1)=>bt(t,e,[a,n,o,d]),(e,t,l)=>bt(a,e,J(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>Z(a,e)===t?e:bt(a,e,t),(t=0)=>x([...v(Q(e[t],((e,t)=>`import {${gt(v(B(e)),", ")}} from '${t}';`)),((e,t)=>pt(e)!=pt(t)?pt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>Q(t,(([e,t,a,n],o)=>[yt(t),`${n?Ie+" ":l}type ${o}${a} = ${e};`,l])),()=>Q(a,((e,t)=>(e=J(e)?e:[e],P(e,A(e)+";"),[`const ${t} = ${D(e)}`,e,l])))]},Rt=Object,kt=Rt.keys,St=Rt.freeze,Pt=e=>j(e,Rt)&&e.constructor==Rt,At=(e,t)=>x(Rt.entries(e),(([e,l])=>t(l,e))),Et=e=>Pt(e)&&k(kt(e)),Dt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Ot=(e,t,l)=>[t=>At(e,((e,a)=>t(a,ft(a,1),l(wt(a),`'${a}'`)))),(t,a)=>At(e[t],((e,t)=>a(t,e[d],e[r],l(wt(t),`'${t}'`),ft(t,1)))),e=>At(t,((t,a)=>e(a,t[d],t[r],l(wt(a),`'${a}'`),ft(a,1))))],Nt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(u,vt(...t((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t,a)=>`'${e}'${L(a)?"?":l}: ${t}`)))+"}"))),Fe(1,5)),I=e(u+je,vt(...t((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Fe(1,5,1)),c=e(i+ce,"keyof "+r,"A "+i+" Id in "+Re),$=`<TId extends ${c}>`,f=e(i,Ce+`<${r}[TId]>`,"A "+i+" in "+Re,$),w=e(i+je,Ce+`<${I}[TId]>`,"A "+i+" in "+Re+Le,$),y=e(b,f+"<TId>[Id]","A "+b+" in a "+i,$),T=e(b+je,w+"<TId>[Id]","A "+b+" in a "+i+Le,$),v=e(g+ce,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+b,$),V=e(g,Ce+`<${r}[TId]>[Id][CId]`,"A "+g+" in a "+b,`<TId extends ${c}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+b,`<TId extends ${c}, CId = ${v}<TId>>`,0),R=e(g+ae,`(...[cellId, cell]: ${x}<TId>)`+Ne,Qe(ee+g+" Id, and "+g),$),k=e(b+ae,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ne+") "+Ne,Qe(ee+b+" Id, and a "+g+" iterator"),$),S=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Ne}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),P=e(i+ae,`(...[tableId, forEachRow]: ${S})`+Ne,Qe(ee+i+" Id, and a "+b+" iterator"),l),A=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${A}) => CellChange`,te+" returning information about any Cell's changes during a "+Se),D=e(u+s,`(${d}, getCellChange: ${E}${be})`+Ne,qe(1)),O=e(p+s,`(${d})`+Ne,qe(2)),N=e(i+s,`(${d}, tableId: ${c}, getCellChange: ${E}${be})`+Ne,qe(3)),j=e(C+s,`(${d}, tableId: ${c})`+Ne,qe(4,3)),M=e(h+s,"("+Tt(d,"tableId: "+c,"cellId: Id"+be,"descending: boolean","offset: number","limit: number"+be,"sortedRowIds: Ids")+")"+Ne,qe(13,3)),G=e(b+s,"("+Tt(""+d,"tableId: "+c,ye,`getCellChange: ${E}${be}`)+")"+Ne,qe(5,3)),J=e(m+s,"("+Tt(""+d,"tableId: "+c,ye)+")"+Ne,qe(6,5)),z=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${ye}, cellId: CId, newCell: ${V}<TId, CId> ${be}, oldCell: ${V}<TId, CId> ${be}, getCellChange: ${E} ${be}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),W=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+z+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[r,I,c,f,w,y,T,v,V,R,k,P,D,O,N,j,M,G,J,e(g+s,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${W})`+Ne,qe(7,5)),e($e+g+s,`(${d}, tableId: Id, ${ye}, cellId: Id, invalidCells: any[])`+Ne,qe(8))]},(t,a)=>{const o=t+": "+a,d=e(w,vt(...n(((e,t,a)=>`'${e}'${L(a)?"?":l}: ${t}`))),Fe(2,5)),r=e(w+je,vt(...n(((e,t)=>`'${e}'?: ${t}`))),Fe(2,5,1)),I=e(f+ce,"keyof "+d,"A "+f+" Id in "+Re),c=e(f,Ce+`<${d}[VId]>`,"A "+f+" Id in "+Re,`<VId extends ${I}>`),$=e("ValueIdValueArray",`VId extends ${I} ? [valueId: VId, value: ${c}<VId>] : never`,f+" Ids and types in "+Re,`<VId = ${I}>`,0),i=e(f+ae,`(...[valueId, value]: ${$})`+Ne,Qe(ee+f+" Id, and "+f)),u=e("GetValueChange",`(valueId: ${I}) => ValueChange`,te+" returning information about any Value's changes during a "+Se),p=e(w+s,`(${o}, getValueChange: ${u}${be})`+Ne,qe(9)),b=e(y+s,`(${o})`+Ne,qe(10)),C=e("ValueListenerArgsArray",`VId extends ${I} ? [${o}, valueId: VId, newValue: ${c}<VId> ${be}, oldValue: ${c}<VId> ${be}, getValueChange: ${u} ${be}] : never`,"Value args for ValueListener",`<VId = ${I}>`,0);return[d,r,I,c,i,p,b,e(f+s,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ne,qe(11)),e($e+f+s,`(${o}, valueId: Id, invalidValues: any[])`+Ne,qe(12))]},(t,l)=>e(ke+s,`(${t}: ${l}, cellsTouched: boolean, valuesTouched: boolean)`+Ne,te+" listening to the completion of a "+Se)],jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Lt=(e,t=l)=>`fluent(() => ${jt(e,t)})`,Mt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Gt=(e,t,a)=>{const[o,I,T,v,x,R,k,S]=xt(),[A,D,O]=Ot(e,t,x),[N,j,M]=Nt(T,A,D,O),J=_(),z=(e=0)=>Q(J,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||E(s,yt(o)),P(s,l),s})),W=(e,t,a,n,o,d=l)=>bt(J,e,[t,a,n,o,d]),F=(e,t,a,n,o,d=l,r=l,s=l)=>W(ot[e]+t+(4==e?he:l)+a,d,n,(n==X?Lt:jt)(ot[e]+(4==e?he:l)+a,r,e?void 0:n),o,s),U=(e,t,a,n=l,o=l,d=1,r=l)=>W(c+e+s,(n?n+", ":l)+ue+": "+t+(d?", mutator?: boolean":l),ce,Mt(c+e+s,o,d?"mutator":l),a,r),K=`./${ft(a)}.d`,X=ft(a,1),Y=ft(X),ee=[],te=_();let le=[],ne=[];if(I(1,K,X,`create${X} as create${X}Decl`),!Et(e)){I(0,"tinybase","CellChange"),I(null,"tinybase",$);const[e,t,a,o,s,c,f,w,y,v,R,k,S,E,O,j,M,J,z,W,H]=N(Y,X),Q=_();A(((e,t)=>{const l=`<'${e}'>`,a=[T(t+i,o+l,we+` the '${e}' `+i),T(t+i+je,s+l,we+` the '${e}' `+i+Le),T(t+b,c+l,Ue(e)),T(t+b+je,f+l,Ue(e,1)),T(t+g+ce,w+l,`A Cell Id for the '${e}' `+i),T(t+g+ae,v+l,Qe(`a Cell Id and value from a Row in the '${e}' `+i)),T(t+b+ae,R+l,Qe(`a Row Id from the '${e}' Table, and a Cell iterator`))];q(Q,e,a),I(1,K,...a)})),I(1,K,e,t,a,w,k,S,E,O,j,M,J,z,W,H),le=[e,t,a,w,S,E,O,j,M,J,z,W,Q],V([[e],[n],[X,"tables: "+t,"tables"],[X]],(([e,t,a],n)=>F(n,l,u,e,Fe(1,n),t,a))),F(0,l,p,a+xe,_e(i,Re)),F(5,l,i,Oe,Ze(i,Re),"tableCallback: "+k,"tableCallback as any"),A(((e,t,a)=>{const[o,d,r,s,I,c,u]=Z(Q,e);V([[o],[n],[X,"table: "+d,", table"],[X]],(([n,o,d=l],r)=>F(r,t,i,n,et(e,r),o,a+d))),F(0,t,C,$,_e(b,Xe(e)),l,a),F(0,t,h,$,_e(b,Xe(e),1),"cellId?: "+I+Ve,a+", cellId, descending, offset, limit"),F(5,t,b,Oe,Ze(b,Xe(e)),"rowCallback: "+u,a+", rowCallback as any"),V([[r],[n],[X,", row: "+s,", row"],[X],[X,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>F(r,t,b,n,tt(e,r),ye+o,a+", rowId"+d))),F(6,t,b,ce+be,"Add a new Row to "+Xe(e),"row: "+s,a+", row"),F(0,t,m,I+xe,_e(g,Ye(e)),ye,a+", rowId"),F(5,t,g,Oe,Ze(g,Ye(e)),ye+", cellCallback: "+c,a+", rowId, cellCallback as any"),D(e,((o,d,r,s,I)=>{const c="Map"+ft(d,1);q(te,d,c);const $=d+(L(r)?be:l);V([[$],[n],[X,`, cell: ${d} | `+c,", cell as any"],[X]],(([n,d=l,r=l],c)=>F(c,t+I,g,n,lt(e,o,c),ye+d,a+", rowId, "+s+r)))}))})),F(0,l,u+ie,ie,Fe(1,6)),F(2,l,u+ie,X,Fe(1,7),"tablesJson: "+ie,"tables"+ie),U(u,S,Fe(1,8)+" changes"),U(p,E,Ke(2,0,1)),U(i,O,Ke(3,0),`tableId: ${a} | null`,"tableId"),U(C,j,Ke(4,3,1),`tableId: ${a} | null`,"tableId"),U(h,M,Ke(13,3,1),Tt("tableId: TId",`cellId: ${w}<TId>`+be,"descending: boolean","offset: number","limit: number"+be),Tt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),U(b,J,Ke(5,3),`tableId: ${a} | null, rowId: IdOrNull`,"tableId, rowId"),U(m,z,Ke(6,5,1),`tableId: ${a} | null, rowId: IdOrNull`,"tableId, rowId"),U(g,W,Ke(7,5),`tableId: ${a} | null, rowId: IdOrNull, cellId: ${gt(A((e=>Z(Q,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),U($e+g,H,fe+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),I(1,K,...B(te)),P(ee,".set"+u+Te+"({",mt(A(((e,t,a)=>[`[${a}]: {`,...D(e,((e,t,a,n)=>`[${n}]: {[${x(wt(d),`'${d}'`)}]: ${x(wt(t),`'${t}'`)}${L(a)?l:`, [${x(wt(r),`'${r}'`)}]: `+(G(a)?x(wt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(!Et(t)){const[e,t,a,o,s,c,$,i,u]=j(Y,X);I(1,K,e,t,a,s,c,$,i,u),ne=[e,t,a,c,$,i],V([[e],[n],[X,"values: "+t,"values"],[X],[X,"partialValues: "+t,"partialValues"]],(([e,t,a],n)=>F(n,l,w,e,Fe(2,n),t,a))),F(0,l,y,a+xe,_e(f,Re)),F(5,l,f,"void",Ze(f,Re),"valueCallback: "+s,"valueCallback as any"),O(((e,t,a,o,d)=>{const r="Map"+ft(t,1);q(te,t,r),V([[t],[n],[X,`value: ${t} | `+r,", value as any"],[X]],(([t,a,n=l],r)=>F(r,d,f,t,at(e,r),a,o+n)))})),F(0,l,w+ie,ie,Fe(2,6)),F(2,l,w+ie,X,Fe(2,7),"valuesJson: "+ie,"values"+ie),U(w,c,Fe(2,8)+" changes"),U(y,$,Ke(10,0,1)),U(f,i,Ke(11,0),`valueId: ${a} | null`,"valueId"),U($e+f,u,fe+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),I(1,K,...B(te)),I(0,"tinybase","ValueChange"),P(ee,".set"+w+Te+"({",O(((e,t,a,n)=>[`[${n}]: {[${x(wt(d),`'${d}'`)}]: ${x(wt(t),`'${t}'`)}${L(a)?l:`, [${x(wt(r),`'${r}'`)}]: `+(G(a)?x(wt(a),`'${a}'`):a)}},`])),"})")}H(te,((e,t)=>T(t,`(cell: ${e}${be}) => `+e,`Takes a ${e} Cell value and returns another`))),I(null,"tinybase","DoRollback",ce,"IdOrNull",ie,"Store"),F(0,l,ie,ie,Fe(0,6)),F(2,l,ie,X,Fe(0,7),"tablesAndValuesJson: "+ie,"tablesAndValuesJson"),F(7,l,Se,"Return",Pe,se,"actions, doRollback","<Return>"),F(7,l,"start"+ke,X,Ae),F(7,l,"finish"+ke,X,Ee,re,"doRollback");const oe=M(Y,X);return U("WillFinish"+ke,oe,fe+" just before "+De,l,l,0),U("DidFinish"+ke,oe,fe+" just after "+De,l,l,0),F(7,l,"call"+s,X,"Manually provoke a listener to be called","listenerId: Id","listenerId"),F(3,l,s,X,"Remove a listener that was previously added to "+Re,"listenerId: Id","listenerId"),W("getStore",l,"Store","store",nt[0]+" the underlying Store object"),I(1,"tinybase","createStore"),I(1,K,X,`create${X} as create${X}Decl`,oe),x("store",["createStore()",...ee]),v("fluent","actions: () => Store",["actions();",`return ${Y};`]),v("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Y}, ...params)`),x(Y,["{",...z(1),"}"]),[o(...R(0),...k(),Ie+" interface "+X+" {",...z(0),"}",l,yt(`Creates a ${X} object`),Ie+" function create"+X+"(): "+X+";"),o(...R(1),Ie+" const create"+X+": typeof create"+X+"Decl = () => {",...S(),`return Object.freeze(${Y});`,"};"),le,ne]},Jt=e=>I+e,zt=e=>Tt(Jt(e),Jt(e)+oe),Wt="debugIds?: boolean",Bt="debugIds={debugIds}",Ft="then"+de,Ut="Parameter",_t=": (parameter: "+Ut+", store: Store) => ",Zt="const contextValue = useContext(Context);",Ht=", based on a parameter",Qt=": ",qt="<"+Ut+",>",Kt=Ut+"ized"+ae+"<"+Ut+">",Xt="rowId",Yt="rowId={rowId}",el=", separator, debugIds",tl="separator?: ReactElement | string",ll="then?: (store: Store",al=Tt(ll+")"+Ne,Ft),nl="then, then"+oe,ol=Xt+Qt+ce,dl="View",rl=(e,...t)=>Tt(...t,ue+": "+e,ue+de,"mutator?: boolean"),sl=(...e)=>Tt(...e,ue,ue+oe,"mutator"),Il=(e,t,a,n,o)=>{const[d,r,I,c,T,v,V,x]=xt(),[R,k,S]=Ot(e,t,T),A=`./${ft(a)}.d`,D=`./${ft(a)}-ui-react.d`,O="tinybase/ui-react",N=ft(a,1),j=ft(N),M=N+"Or"+N+ce,G=j+"Or"+N+ce,J=j+`={${j}}`,z=_(),W=(e,t,a,n,o,d=l)=>(r(1,D,e+" as "+e+"Decl"),bt(z,e,[t,a,n,o,d])),B=(e,t,a,n,o,d=l)=>W("use"+e,t,a,n,o,d),F=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,O,`use${t} as use${t}Core`),B(e,Tt(o,X,I),a,te+`(${G}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),U=(e,t,l,a)=>W(e,t,1,l,a),H=(e=0)=>Q(z,(([t,a,n,o,d],r)=>{const s=e?[Ie+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[Ie+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||E(s,yt(o)),P(s,l),s}));r(null,"tinybase",ce,"Store",ae,Ut+"ized"+ae),r(0,O,"ComponentReturnType"),r(null,O,"ExtraProps"),r(0,A,N);const q=I(M,N+" | "+ce,`Used when you need to refer to a ${N} in a React hook or component`),K=I(me+ge,Vt(j+pe+N,j+`ById?: {[${j}Id: Id]: ${N}}`),`Used with the ${me} 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,D,q,K);const X=G+pe+q;T("{createContext, useContext, useMemo}","React"),T("Context",`createContext<[${N}?, {[${j}Id: Id]: ${N}}?]>([])`),B("Create"+N,`create: () => ${N}, create`+de,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=B(N,"id?: Id",N+be,["{",Zt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${me} component context`),te=c("useHook",G+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${j} = ${Y}(${G} as Id);`,`return hook(...preParams, ((${G} == null || typeof ${G} == 'string')`,`? ${j} : ${G})?.getStore(), ...postParams)`]),oe=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=c("wrap",Tt("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;"]),se=T("NullComponent","() => null");if(!Et(e)){const[e,t,a,o,d,f,w,y,T,v,V,x,S]=n;r(null,A,e,t,a,d,f,w,y,T,v,V,x),r(0,A,o),r(1,A,N),r(null,"tinybase",$,"IdOrNull");const P=c("tableView",`{${j}, rowComponent, getRowComponentProps`+el+"}: 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}",Yt,J,Bt,"/>","))",el,", tableId,",");"]),E=c("getDefaultTableComponent","tableId: Id",gt(R(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),O=c("getDefaultCellComponent","tableId: Id, cellId: Id",gt(R(((e,t,l)=>`tableId == ${l} ? ${gt(k(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);F(u,u,e,Fe(1,0)+le);const M=F(p,p,a+xe,_e(i,Re)+le);F(ve+u+ae,ve+u+ae,Kt,Fe(1,9)+Ht,Tt(Jt(u)+_t+t,Jt(u)+de),zt(u),qt,Tt(ll,`tables: ${t})`+Ne,Ft),nl),F(ne+u+ae,ne+u+ae,ae,Fe(1,12),l,l,l,al,nl);const G=I(g+ge,Vt("tableId?: TId","rowId: Id","cellId?: CId",j+pe+N,Wt),He(ee+g),`<TId extends ${a}, CId extends ${o}<TId>>`),z=I(b+ge,Vt("tableId?: TId","rowId: Id",j+pe+N,"cellComponents?: {readonly [CId in "+o+`<TId>]?: ComponentType<${G}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${o}<TId>) => ExtraProps`,tl,Wt),He(ee+b),`<TId extends ${a}>`),W=I(i+ge,Vt("tableId?: TId",j+pe+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",tl,Wt),He(ee+i),`<TId extends ${a}>`),B=I("Sorted"+i+ge,Vt("tableId?: TId","cellId?: "+o+"<TId>","descending?: boolean","offset?: number","limit?: number",j+pe+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",tl,Wt),He(ee+"sorted "+i),`<TId extends ${a}>`),_=I(u+ge,Vt(j+pe+N,"tableComponents?: {readonly [TId in "+a+`]?: ComponentType<${W}<TId>>;}`,`getTableComponentProps?: (tableId: ${a}) => ExtraProps`,tl,Wt),He(Be(1,1)));r(1,D,_,W,B,z,G),U(u+dl,"{"+j+", tableComponents, getTableComponentProps"+el+"}: "+_,[re+`(${M}(${j}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+E+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${oe}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Bt,"/>;","}), separator)"],Fe(1,13)+le),R(((e,t,a)=>{const[n,o,d,s,I]=Z(S,e);r(null,A,n,o,d,s,I),F(t+i,i,n,et(e)+le,l,a);const c=F(t+C,C,$,_e(b,Xe(e))+le,l,a),u=F(t+h,h,$,_e(b,Xe(e),1)+le,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");F(t+b,b,d,tt(e)+le,ol,Tt(a,Xt));const p=F(t+m,m,I+xe,_e(g,Ye(e))+le,ol,Tt(a,Xt));F(ve+t+i+ae,ve+i+ae,Kt,et(e,9)+Ht,Tt(Jt(i)+_t+o,Jt(i)+de),Tt(a,zt(i)),qt,Tt(ll,`table: ${o})`+Ne,Ft),nl),F(ne+t+i+ae,ne+i+ae,ae,et(e,12),l,a,l,al,nl),F(ve+t+b+ae,ve+b+ae,Kt,tt(e,9)+Ht,Tt(ol,Jt(b)+_t+s,Jt(b)+de),Tt(a,Xt,zt(b)),qt,Tt(ll,`row: ${s})`+Ne,Ft),nl),F("Add"+t+b+ae,"Add"+b+ae,Kt,tt(e,10)+Ht,Tt(Jt(b)+_t+s,Jt(b)+de),Tt(a,zt(b)),qt,"then?: ("+Tt(ol+be,"store: Store","row: "+s+")"+Ne,"then"+de),nl),F(ve+t+he+b+ae,ve+he+b+ae,Kt,tt(e,11)+Ht,Tt(ol,Jt(he+b)+_t+s,Jt(he+b)+de),Tt(a,Xt,zt(he+b)),qt,Tt(ll,`partialRow: ${s})`+Ne,Ft),nl),F(ne+t+b+ae,ne+b+ae,ae,tt(e,12),ol,Tt(a,Xt),l,al,nl);const f=U(t+b+dl,"{rowId, "+j+", cellComponents, getCellComponentProps"+el+`}: ${z}<'${e}'>`,[re+`(${p}(rowId, ${j}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+O+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${oe}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,Yt,"cellId={cellId}",J,Bt,"/>;","})"+el+", rowId)"],tt(e,13)+le);U(t+"Sorted"+i+dl,"{cellId, descending, offset, limit, ...props}: "+B+`<'${e}'>`,P+"(props, "+u+`(cellId, descending, offset, limit, props.${j}), ${a}, ${f});`,et(e,13)+", sorted"+le),U(t+i+dl,`props: ${W}<'${e}'>`,P+"(props, "+c+`(props.${j}), ${a}, ${f});`,et(e,13)+le),k(e,((n,o,d,s,I)=>{const c="Map"+ft(o,1);r(0,A,c),r(1,A,c);const $=F(t+I+g,g,o+(L(d)?be:l),lt(e,n)+le,ol,Tt(a,Xt,s));F(ve+t+I+g+ae,ve+g+ae,Kt,lt(e,n,9)+Ht,Tt(ol,Jt(g)+_t+o+" | "+c,Jt(g)+de),Tt(a,Xt,s,zt(g)),qt,Tt(ll,`cell: ${o} | ${c})`+Ne,Ft),nl),F(ne+t+I+g+ae,ne+g+ae,ae,lt(e,n,12),Tt(ol,"forceDel?: boolean"),Tt(a,Xt,s,"forceDel"),l,al,nl),U(t+I+g+dl,`{rowId, ${j}, debugIds}: `+G+`<'${e}', '${n}'>`,[re+`('' + ${$}(rowId, `+j+`) ?? '', undefined, debugIds, ${s})`],lt(e,n,13)+le)}))}));const H=gt(R((e=>Z(S,e)?.[4]??l))," | ");F(u+s,u+s,Oe,Fe(1,8)+" changes",rl(d),sl()),F(p+s,p+s,Oe,Ke(2,0,1),rl(f),sl()),F(i+s,i+s,Oe,Ke(3,0),rl(w,`tableId: ${a} | null`),sl("tableId")),F(C+s,C+s,Oe,Ke(4,3,1),rl(y,`tableId: ${a} | null`),sl("tableId")),F(h+s,h+s,Oe,Ke(13,3,1),rl(T,`tableId: ${a} | null`,"cellId: "+H+be,"descending: boolean","offset: number","limit: number"+be),sl("tableId","cellId","descending","offset","limit")),F(b+s,b+s,Oe,Ke(5,3),rl(v,`tableId: ${a} | null`,Xt+": IdOrNull"),sl("tableId",Xt)),F(m+s,m+s,Oe,Ke(6,5,1),rl(V,`tableId: ${a} | null`,Xt+": IdOrNull"),sl("tableId",Xt)),F(g+s,g+s,Oe,Ke(7,5),rl(x,`tableId: ${a} | null`,Xt+": IdOrNull",`cellId: ${H} | null`),sl("tableId",Xt,"cellId"))}if(!Et(t)){const[e,t,a,n,d,$]=o;r(null,A,...o),r(1,A,N);const i=c("getDefaultValueComponent","valueId: Id",gt(S(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);F(w,w,e,Fe(2,0)+le);const u=F(y,y,a+xe,_e(f,Re)+le);F(ve+w+ae,ve+w+ae,Kt,Fe(2,9)+Ht,Tt(Jt(w)+_t+t,Jt(w)+de),zt(w),qt,Tt(ll,`values: ${t})`+Ne,Ft),nl),F(ve+he+w+ae,ve+he+w+ae,Kt,Fe(2,11)+Ht,Tt(Jt(he+w)+_t+t,Jt(he+w)+de),zt(he+w),qt,Tt(ll,`partialValues: ${t})`+Ne,Ft),nl),F(ne+w+ae,ne+w+ae,ae,Fe(2,12),l,l,l,al,nl);const p=I(f+ge,Vt("valueId?: VId",j+pe+N,Wt),He("a Value"),`<VId extends ${a}>`),b=I(w+ge,Vt(j+pe+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,tl,Wt),He(Be(2,1)));r(1,D,b,p),U(w+dl,"{"+j+", valueComponents, getValueComponentProps"+el+"}: "+b,[re+`(${u}(${j}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${oe}(getValueComponentProps, valueId)}`,"key={valueId}",J,Bt,"/>;","}), separator)"],Fe(2,13)+le),S(((e,t,a,n,o)=>{const d="Map"+ft(t,1);r(0,A,d),r(1,A,d);const s=F(o+f,f,t,at(e)+le,l,n);F(ve+o+f+ae,ve+f+ae,Kt,at(e,9)+Ht,Tt(Jt(f)+_t+t+" | "+d,Jt(f)+de),Tt(n,zt(f)),qt,Tt(ll,`value: ${t} | ${d})`+Ne,Ft),nl),F(ne+o+f+ae,ne+f+ae,ae,at(e,12),l,n,l,al,nl),U(o+f+dl,`{${j}, debugIds}: ${p}<'${e}'>`,[re+`('' + ${s}(`+j+`) ?? '', undefined, debugIds, ${n})`],at(e,13)+le)})),F(w+s,w+s,Oe,Fe(2,8)+" changes",rl(n),sl()),F(y+s,y+s,Oe,Ke(10,0,1),rl(d),sl()),F(f+s,f+s,Oe,Ke(11,0),rl($,`valueId: ${a} | null`),sl("valueId"))}return U(me,`{${j}, ${j}ById, children}: `+K+" & {children: React.ReactNode}",["{",Zt,"return (","<Context."+me,"value={useMemo(",`() => [${j} ?? contextValue[0], {...contextValue[1], ...${j}ById}],`,`[${j}, ${j}ById, contextValue],`,")}>","{children}",`</Context.${me}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[d(...v(0),...V(),...H(0)),d(...v(1),...x(),...H(1))]},cl=(e,t,a)=>{if(Et(e)&&Et(t))return[l,l,l,l];const[n,o,d,r]=Gt(e,t,a);return[n,o,...Il(e,t,a,d,r)]},$l={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},il=Dt((e=>{const t=()=>{const t=O(e.getTablesSchemaJson());return!Et(t)||T(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=_();if(T(a,(t=>T(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=K(n,a,(()=>[z(o),_(),[0],0])),[r,s,[I]]=d,c=K(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),q(s,o,c),d[3]++,r==z(o)})))))return t[l]={},F(n,(([e,,[,n],o],s)=>{t[l][s]={[d]:e,...o==R(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=O(e.getValuesSchemaJson());return Et(t)&&e.forEachValue(((e,l)=>{t[e]={[d]:z(l)}})),t},a=e=>cl(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(await import("prettier")).format}catch(e){l=e=>e}return x(a(e),((e,a)=>Ct(l(e,{...$l,filepath:"_."+t[a]}))))};return St({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:R(e.getValueIds()),jsonLength:ht(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=il},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="",a=t(l),n=t(!0),o=t(0),d="type",r="default",s="Listener",I="get",c="add",$="Ids",i="Table",u=i+"s",p=i+$,b="Row",C=b+$,h="Sorted"+b+$,g="Cell",m=g+$,f="Value",w=f+"s",y=f+$,T=(e,t)=>e.every(t),v=(e,t)=>e.sort(t),V=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),R=e=>e.length,k=e=>0==R(e),S=(e,t)=>e.filter(t),P=(e,...t)=>e.push(...t),A=e=>e.pop(),E=(e,...t)=>e.unshift(...t),D=e=>e.shift(),O=JSON.parse,N=isFinite,j=(e,t)=>e instanceof t,L=e=>null==e,M=e=>e==a||e==n,G=e=>t(e)==a,J=e=>Array.isArray(e),z=e=>{const l=t(e);return M(l)||l==o&&N(e)?l:void 0},W=(e,t)=>e?.has(t)??!1,B=e=>[...e?.values()??[]],F=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),_=e=>new Map(e),Z=(e,t)=>e?.get(t),H=(e,t)=>F(e,((e,l)=>t(l,e))),Q=(e,t)=>x([...e?.entries()??[]],(([e,l])=>t(l,e))),q=(e,t,l)=>L(l)?(U(e,t),e):e?.set(t,l),K=(e,t,l)=>(W(e,t)||q(e,t,l()),Z(e,t)),X=e=>e.toUpperCase(),Y=e=>e.toLowerCase(),ee="a ",te="A function for",le=", and registers a listener so that any changes to that result will cause a re-render",ae="Callback",ne="Del",oe="Deps",de=oe+"?: React.DependencyList",re="doRollback?: DoRollback",se="actions: () => Return, "+re,Ie="export",ce="Id",$e="Invalid",ie="Json",ue=Y(s),pe="?: ",be=" | undefined",Ce="NonNullable",he="Partial",ge="Props",me="Provider",fe=`Registers a ${ue} that will be called`,we="Represents",ye="rowId: "+ce,Te="Schema",ve="Set",Ve=", descending?: boolean, offset?: number, limit?: number",xe="[]",Re="the Store",ke="Transaction",Se=Y(ke),Pe="Execute a "+Se+" to make multiple mutations",Ae="Explicitly starts a "+Se,Ee="Explicitly finishes a "+Se,De="the end of the "+Se,Oe="void",Ne=" => "+Oe,je="WhenSet",Le=" when setting it",Me=ee+"string serialization of",Ge=" ",Je="Gets a callback that can ",ze="the ",We=" the schema for",Be=(e=0,t=0)=>`the ${rt[e]}content of`+(t?Ge+Re:l),Fe=(e=0,t,a=0)=>nt[t]+Ge+Be(e,1)+(a?" when setting it":l),Ue=(e,t=0)=>we+` a Row when ${t?"s":"g"}etting ${Be()} the '${e}' `+i,_e=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,Ze=(e,t)=>`Calls a function for each ${e} in `+t,He=e=>"The props passed to a component that renders "+e,Qe=e=>"A function that takes "+e,qe=(e,t=0)=>te+" listening to changes to "+dt[e]+" in "+dt[t],Ke=(e,t,a=0)=>fe+" whenever "+dt[e]+" in "+dt[t]+" change"+(a?l:"s"),Xe=e=>`the '${e}' `+i,Ye=e=>"the specified Row in "+Xe(e),et=(e,t=0)=>nt[t]+` ${Be()} `+Xe(e),tt=(e,t=0)=>nt[t]+` ${Be()} `+Ye(e),lt=(e,t,l=0)=>nt[l]+` the '${t}' Cell for `+Ye(e),at=(e,t=0)=>nt[t]+` the '${e}' Value`,nt=["Gets","Checks existence of","Sets","Deletes","Sets part of",we,"Gets "+Me,"Sets "+Me,fe+" whenever",Je+"set",Je+"add",Je+"set part of",Je+"delete","Renders","Gets "+Me+We,"Sets"+We,"Deletes"+We],ot=[I,"has","set","del","set","forEach",c,l],dt=[Re,u,ze+i+Ge+$,ee+i,ze+b+Ge+$,ee+b,ze+g+Ge+$,ee+g,"invalid Cell changes",w,ze+f+Ge+$,ee+f,"invalid Value changes",ze+"sorted "+b+Ge+$],rt=[l,"tabular ","keyed value "],st=e=>new Set(J(e)||L(e)?e:[e]),It=(e,t)=>e?.add(t),ct=/[^A-Za-z]+/,$t=/[^A-Za-z0-9]+/,it=/^( *)\/\*\* *(.*?) *\*\/$/gm,ut=(e,t,l)=>e.substring(t,l),pt=e=>e.includes(","),bt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return W(e,n)?bt(e,t,l,a+1):(q(e,n,l),n)},Ct=e=>e.replace(it,((e,t,l)=>{const a=77-ht(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),ht=e=>e.length,gt=(e,t=l)=>e.join(t),mt=e=>e.flat(1e3),ft=(e,t=0)=>gt(x(e.split($t),((e,l)=>(l>0||t?X:Y)(ut(e,0,1))+ut(e,1)))),wt=e=>X(gt((e&&!ct.test(e[0])?e:" "+e).split($t),"_")),yt=e=>`/** ${e}. */`,Tt=(...e)=>gt(S(e,(e=>e)),", "),vt=(...e)=>"{"+gt(e,"; ")+"}",Vt=(...e)=>vt(...x(e,(e=>"readonly "+e))),xt=()=>{const e=[_(),_(),_(),_()],t=_(),a=_();return[(...e)=>gt(mt(e),"\n"),(t,l,...a)=>V(a,(a=>V([0,1],(n=>(t??n)==n?It(K(e[n],l,st),a):0)))),(e,a,n,o=l,d=1)=>bt(t,e,[a,n,o,d]),(e,t,l)=>bt(a,e,J(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>Z(a,e)===t?e:bt(a,e,t),(t=0)=>x([...v(Q(e[t],((e,t)=>`import {${gt(v(B(e)),", ")}} from '${t}';`)),((e,t)=>pt(e)!=pt(t)?pt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>Q(t,(([e,t,a,n],o)=>[yt(t),`${n?Ie+" ":l}type ${o}${a} = ${e};`,l])),()=>Q(a,((e,t)=>(e=J(e)?e:[e],P(e,A(e)+";"),[`const ${t} = ${D(e)}`,e,l])))]},Rt=Object,kt=Rt.keys,St=Rt.freeze,Pt=e=>j(e,Rt)&&e.constructor==Rt,At=(e,t)=>x(Rt.entries(e),(([e,l])=>t(l,e))),Et=e=>Pt(e)&&k(kt(e)),Dt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Ot=(e,t,l)=>[t=>At(e,((e,a)=>t(a,ft(a,1),l(wt(a),`'${a}'`)))),(t,a)=>At(e[t],((e,t)=>a(t,e[d],e[r],l(wt(t),`'${t}'`),ft(t,1)))),e=>At(t,((t,a)=>e(a,t[d],t[r],l(wt(a),`'${a}'`),ft(a,1))))],Nt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(u,vt(...t((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t,a)=>`'${e}'${L(a)?"?":l}: ${t}`)))+"}"))),Fe(1,5)),I=e(u+je,vt(...t((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Fe(1,5,1)),c=e(i+ce,"keyof "+r,"A "+i+" Id in "+Re),$=`<TId extends ${c}>`,f=e(i,Ce+`<${r}[TId]>`,"A "+i+" in "+Re,$),w=e(i+je,Ce+`<${I}[TId]>`,"A "+i+" in "+Re+Le,$),y=e(b,f+"<TId>[Id]","A "+b+" in a "+i,$),T=e(b+je,w+"<TId>[Id]","A "+b+" in a "+i+Le,$),v=e(g+ce,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+b,$),V=e(g,Ce+`<${r}[TId]>[Id][CId]`,"A "+g+" in a "+b,`<TId extends ${c}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+b,`<TId extends ${c}, CId = ${v}<TId>>`,0),R=e(g+ae,`(...[cellId, cell]: ${x}<TId>)`+Ne,Qe(ee+g+" Id, and "+g),$),k=e(b+ae,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ne+") "+Ne,Qe(ee+b+" Id, and a "+g+" iterator"),$),S=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Ne}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),P=e(i+ae,`(...[tableId, forEachRow]: ${S})`+Ne,Qe(ee+i+" Id, and a "+b+" iterator"),l),A=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${A}) => CellChange`,te+" returning information about any Cell's changes during a "+Se),D=e(u+s,`(${d}, getCellChange: ${E}${be})`+Ne,qe(1)),O=e(p+s,`(${d})`+Ne,qe(2)),N=e(i+s,`(${d}, tableId: ${c}, getCellChange: ${E}${be})`+Ne,qe(3)),j=e(C+s,`(${d}, tableId: ${c})`+Ne,qe(4,3)),M=e(h+s,"("+Tt(d,"tableId: "+c,"cellId: Id"+be,"descending: boolean","offset: number","limit: number"+be,"sortedRowIds: Ids")+")"+Ne,qe(13,3)),G=e(b+s,"("+Tt(""+d,"tableId: "+c,ye,`getCellChange: ${E}${be}`)+")"+Ne,qe(5,3)),J=e(m+s,"("+Tt(""+d,"tableId: "+c,ye)+")"+Ne,qe(6,5)),z=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${ye}, cellId: CId, newCell: ${V}<TId, CId> ${be}, oldCell: ${V}<TId, CId> ${be}, getCellChange: ${E} ${be}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),W=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+z+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[r,I,c,f,w,y,T,v,V,R,k,P,D,O,N,j,M,G,J,e(g+s,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${W})`+Ne,qe(7,5)),e($e+g+s,`(${d}, tableId: Id, ${ye}, cellId: Id, invalidCells: any[])`+Ne,qe(8))]},(t,a)=>{const o=t+": "+a,d=e(w,vt(...n(((e,t,a)=>`'${e}'${L(a)?"?":l}: ${t}`))),Fe(2,5)),r=e(w+je,vt(...n(((e,t)=>`'${e}'?: ${t}`))),Fe(2,5,1)),I=e(f+ce,"keyof "+d,"A "+f+" Id in "+Re),c=e(f,Ce+`<${d}[VId]>`,"A "+f+" Id in "+Re,`<VId extends ${I}>`),$=e("ValueIdValueArray",`VId extends ${I} ? [valueId: VId, value: ${c}<VId>] : never`,f+" Ids and types in "+Re,`<VId = ${I}>`,0),i=e(f+ae,`(...[valueId, value]: ${$})`+Ne,Qe(ee+f+" Id, and "+f)),u=e("GetValueChange",`(valueId: ${I}) => ValueChange`,te+" returning information about any Value's changes during a "+Se),p=e(w+s,`(${o}, getValueChange: ${u}${be})`+Ne,qe(9)),b=e(y+s,`(${o})`+Ne,qe(10)),C=e("ValueListenerArgsArray",`VId extends ${I} ? [${o}, valueId: VId, newValue: ${c}<VId> ${be}, oldValue: ${c}<VId> ${be}, getValueChange: ${u} ${be}] : never`,"Value args for ValueListener",`<VId = ${I}>`,0);return[d,r,I,c,i,p,b,e(f+s,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ne,qe(11)),e($e+f+s,`(${o}, valueId: Id, invalidValues: any[])`+Ne,qe(12))]},(t,l)=>e(ke+s,`(${t}: ${l}, cellsTouched: boolean, valuesTouched: boolean)`+Ne,te+" listening to the completion of a "+Se)],jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Lt=(e,t=l)=>`fluent(() => ${jt(e,t)})`,Mt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Gt=(e,t,a)=>{const[o,I,T,v,x,R,k,S]=xt(),[A,D,O]=Ot(e,t,x),[N,j,M]=Nt(T,A,D,O),J=_(),z=(e=0)=>Q(J,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||E(s,yt(o)),P(s,l),s})),W=(e,t,a,n,o,d=l)=>bt(J,e,[t,a,n,o,d]),F=(e,t,a,n,o,d=l,r=l,s=l)=>W(ot[e]+t+(4==e?he:l)+a,d,n,(n==X?Lt:jt)(ot[e]+(4==e?he:l)+a,r,e?void 0:n),o,s),U=(e,t,a,n=l,o=l,d=1,r=l)=>W(c+e+s,(n?n+", ":l)+ue+": "+t+(d?", mutator?: boolean":l),ce,Mt(c+e+s,o,d?"mutator":l),a,r),K=`./${ft(a)}.d`,X=ft(a,1),Y=ft(X),ee=[],te=_();let le=[],ne=[];if(I(1,K,X,`create${X} as create${X}Decl`),!Et(e)){I(0,"tinybase","CellChange"),I(null,"tinybase",$);const[e,t,a,o,s,c,f,w,y,v,R,k,S,E,O,j,M,J,z,W,H]=N(Y,X),Q=_();A(((e,t)=>{const l=`<'${e}'>`,a=[T(t+i,o+l,we+` the '${e}' `+i),T(t+i+je,s+l,we+` the '${e}' `+i+Le),T(t+b,c+l,Ue(e)),T(t+b+je,f+l,Ue(e,1)),T(t+g+ce,w+l,`A Cell Id for the '${e}' `+i),T(t+g+ae,v+l,Qe(`a Cell Id and value from a Row in the '${e}' `+i)),T(t+b+ae,R+l,Qe(`a Row Id from the '${e}' Table, and a Cell iterator`))];q(Q,e,a),I(1,K,...a)})),I(1,K,e,t,a,w,k,S,E,O,j,M,J,z,W,H),le=[e,t,a,w,S,E,O,j,M,J,z,W,Q],V([[e],[n],[X,"tables: "+t,"tables"],[X]],(([e,t,a],n)=>F(n,l,u,e,Fe(1,n),t,a))),F(0,l,p,a+xe,_e(i,Re)),F(5,l,i,Oe,Ze(i,Re),"tableCallback: "+k,"tableCallback as any"),A(((e,t,a)=>{const[o,d,r,s,I,c,u]=Z(Q,e);V([[o],[n],[X,"table: "+d,", table"],[X]],(([n,o,d=l],r)=>F(r,t,i,n,et(e,r),o,a+d))),F(0,t,C,$,_e(b,Xe(e)),l,a),F(0,t,h,$,_e(b,Xe(e),1),"cellId?: "+I+Ve,a+", cellId, descending, offset, limit"),F(5,t,b,Oe,Ze(b,Xe(e)),"rowCallback: "+u,a+", rowCallback as any"),V([[r],[n],[X,", row: "+s,", row"],[X],[X,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>F(r,t,b,n,tt(e,r),ye+o,a+", rowId"+d))),F(6,t,b,ce+be,"Add a new Row to "+Xe(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),F(0,t,m,I+xe,_e(g,Ye(e)),ye,a+", rowId"),F(5,t,g,Oe,Ze(g,Ye(e)),ye+", cellCallback: "+c,a+", rowId, cellCallback as any"),D(e,((o,d,r,s,I)=>{const c="Map"+ft(d,1);q(te,d,c);const $=d+(L(r)?be:l);V([[$],[n],[X,`, cell: ${d} | `+c,", cell as any"],[X]],(([n,d=l,r=l],c)=>F(c,t+I,g,n,lt(e,o,c),ye+d,a+", rowId, "+s+r)))}))})),F(0,l,u+ie,ie,Fe(1,6)),F(2,l,u+ie,X,Fe(1,7),"tablesJson: "+ie,"tables"+ie),U(u,S,Fe(1,8)+" changes"),U(p,E,Ke(2,0,1)),U(i,O,Ke(3,0),`tableId: ${a} | null`,"tableId"),U(C,j,Ke(4,3,1),`tableId: ${a} | null`,"tableId"),U(h,M,Ke(13,3,1),Tt("tableId: TId",`cellId: ${w}<TId>`+be,"descending: boolean","offset: number","limit: number"+be),Tt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),U(b,J,Ke(5,3),`tableId: ${a} | null, rowId: IdOrNull`,"tableId, rowId"),U(m,z,Ke(6,5,1),`tableId: ${a} | null, rowId: IdOrNull`,"tableId, rowId"),U(g,W,Ke(7,5),`tableId: ${a} | null, rowId: IdOrNull, cellId: ${gt(A((e=>Z(Q,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),U($e+g,H,fe+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),I(1,K,...B(te)),P(ee,".set"+u+Te+"({",mt(A(((e,t,a)=>[`[${a}]: {`,...D(e,((e,t,a,n)=>`[${n}]: {[${x(wt(d),`'${d}'`)}]: ${x(wt(t),`'${t}'`)}${L(a)?l:`, [${x(wt(r),`'${r}'`)}]: `+(G(a)?x(wt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(!Et(t)){const[e,t,a,o,s,c,$,i,u]=j(Y,X);I(1,K,e,t,a,s,c,$,i,u),ne=[e,t,a,c,$,i],V([[e],[n],[X,"values: "+t,"values"],[X],[X,"partialValues: "+t,"partialValues"]],(([e,t,a],n)=>F(n,l,w,e,Fe(2,n),t,a))),F(0,l,y,a+xe,_e(f,Re)),F(5,l,f,"void",Ze(f,Re),"valueCallback: "+s,"valueCallback as any"),O(((e,t,a,o,d)=>{const r="Map"+ft(t,1);q(te,t,r),V([[t],[n],[X,`value: ${t} | `+r,", value as any"],[X]],(([t,a,n=l],r)=>F(r,d,f,t,at(e,r),a,o+n)))})),F(0,l,w+ie,ie,Fe(2,6)),F(2,l,w+ie,X,Fe(2,7),"valuesJson: "+ie,"values"+ie),U(w,c,Fe(2,8)+" changes"),U(y,$,Ke(10,0,1)),U(f,i,Ke(11,0),`valueId: ${a} | null`,"valueId"),U($e+f,u,fe+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),I(1,K,...B(te)),I(0,"tinybase","ValueChange"),P(ee,".set"+w+Te+"({",O(((e,t,a,n)=>[`[${n}]: {[${x(wt(d),`'${d}'`)}]: ${x(wt(t),`'${t}'`)}${L(a)?l:`, [${x(wt(r),`'${r}'`)}]: `+(G(a)?x(wt(a),`'${a}'`):a)}},`])),"})")}H(te,((e,t)=>T(t,`(cell: ${e}${be}) => `+e,`Takes a ${e} Cell value and returns another`))),I(null,"tinybase","DoRollback",ce,"IdOrNull",ie,"Store"),F(0,l,ie,ie,Fe(0,6)),F(2,l,ie,X,Fe(0,7),"tablesAndValuesJson: "+ie,"tablesAndValuesJson"),F(7,l,Se,"Return",Pe,se,"actions, doRollback","<Return>"),F(7,l,"start"+ke,X,Ae),F(7,l,"finish"+ke,X,Ee,re,"doRollback");const oe=M(Y,X);return U("WillFinish"+ke,oe,fe+" just before "+De,l,l,0),U("DidFinish"+ke,oe,fe+" just after "+De,l,l,0),F(7,l,"call"+s,X,"Manually provoke a listener to be called","listenerId: Id","listenerId"),F(3,l,s,X,"Remove a listener that was previously added to "+Re,"listenerId: Id","listenerId"),W("getStore",l,"Store","store",nt[0]+" the underlying Store object"),I(1,"tinybase","createStore"),I(1,K,X,`create${X} as create${X}Decl`,oe),x("store",["createStore()",...ee]),v("fluent","actions: () => Store",["actions();",`return ${Y};`]),v("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Y}, ...params)`),x(Y,["{",...z(1),"}"]),[o(...R(0),...k(),Ie+" interface "+X+" {",...z(0),"}",l,yt(`Creates a ${X} object`),Ie+" function create"+X+"(): "+X+";"),o(...R(1),Ie+" const create"+X+": typeof create"+X+"Decl = () => {",...S(),`return Object.freeze(${Y});`,"};"),le,ne]},Jt=e=>I+e,zt=e=>Tt(Jt(e),Jt(e)+oe),Wt="debugIds?: boolean",Bt="debugIds={debugIds}",Ft="then"+de,Ut="Parameter",_t=": (parameter: "+Ut+", store: Store) => ",Zt="const contextValue = useContext(Context);",Ht=", based on a parameter",Qt=": ",qt="<"+Ut+",>",Kt=Ut+"ized"+ae+"<"+Ut+">",Xt="rowId",Yt="rowId={rowId}",el=", separator, debugIds",tl="separator?: ReactElement | string",ll="then?: (store: Store",al=Tt(ll+")"+Ne,Ft),nl="then, then"+oe,ol=Xt+Qt+ce,dl="View",rl=(e,...t)=>Tt(...t,ue+": "+e,ue+de,"mutator?: boolean"),sl=(...e)=>Tt(...e,ue,ue+oe,"mutator"),Il=(e,t,a,n,o)=>{const[d,r,I,c,T,v,V,x]=xt(),[R,k,S]=Ot(e,t,T),A=`./${ft(a)}.d`,D=`./${ft(a)}-ui-react.d`,O="tinybase/ui-react",N=ft(a,1),j=ft(N),M=N+"Or"+N+ce,G=j+"Or"+N+ce,J=j+`={${j}}`,z=_(),W=(e,t,a,n,o,d=l)=>(r(1,D,e+" as "+e+"Decl"),bt(z,e,[t,a,n,o,d])),B=(e,t,a,n,o,d=l)=>W("use"+e,t,a,n,o,d),F=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,O,`use${t} as use${t}Core`),B(e,Tt(o,X,I),a,te+`(${G}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),U=(e,t,l,a)=>W(e,t,1,l,a),H=(e=0)=>Q(z,(([t,a,n,o,d],r)=>{const s=e?[Ie+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[Ie+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||E(s,yt(o)),P(s,l),s}));r(null,"tinybase",ce,"Store",ae,Ut+"ized"+ae),r(0,O,"ComponentReturnType"),r(null,O,"ExtraProps"),r(0,A,N);const q=I(M,N+" | "+ce,`Used when you need to refer to a ${N} in a React hook or component`),K=I(me+ge,Vt(j+pe+N,j+`ById?: {[${j}Id: Id]: ${N}}`),`Used with the ${me} 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,D,q,K);const X=G+pe+q;T("{createContext, useContext, useMemo}","React"),T("Context",`createContext<[${N}?, {[${j}Id: Id]: ${N}}?]>([])`),B("Create"+N,`create: () => ${N}, create`+de,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=B(N,"id?: Id",N+be,["{",Zt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${me} component context`),te=c("useHook",G+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${j} = ${Y}(${G} as Id);`,`return hook(...preParams, ((${G} == null || typeof ${G} == 'string')`,`? ${j} : ${G})?.getStore(), ...postParams)`]),oe=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=c("wrap",Tt("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;"]),se=T("NullComponent","() => null");if(!Et(e)){const[e,t,a,o,d,f,w,y,T,v,V,x,S]=n;r(null,A,e,t,a,d,f,w,y,T,v,V,x),r(0,A,o),r(1,A,N),r(null,"tinybase",$,"IdOrNull");const P=c("tableView",`{${j}, rowComponent, getRowComponentProps`+el+"}: 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}",Yt,J,Bt,"/>","))",el,", tableId,",");"]),E=c("getDefaultTableComponent","tableId: Id",gt(R(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),O=c("getDefaultCellComponent","tableId: Id, cellId: Id",gt(R(((e,t,l)=>`tableId == ${l} ? ${gt(k(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);F(u,u,e,Fe(1,0)+le);const M=F(p,p,a+xe,_e(i,Re)+le);F(ve+u+ae,ve+u+ae,Kt,Fe(1,9)+Ht,Tt(Jt(u)+_t+t,Jt(u)+de),zt(u),qt,Tt(ll,`tables: ${t})`+Ne,Ft),nl),F(ne+u+ae,ne+u+ae,ae,Fe(1,12),l,l,l,al,nl);const G=I(g+ge,Vt("tableId?: TId","rowId: Id","cellId?: CId",j+pe+N,Wt),He(ee+g),`<TId extends ${a}, CId extends ${o}<TId>>`),z=I(b+ge,Vt("tableId?: TId","rowId: Id",j+pe+N,"cellComponents?: {readonly [CId in "+o+`<TId>]?: ComponentType<${G}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${o}<TId>) => ExtraProps`,tl,Wt),He(ee+b),`<TId extends ${a}>`),W=I(i+ge,Vt("tableId?: TId",j+pe+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",tl,Wt),He(ee+i),`<TId extends ${a}>`),B=I("Sorted"+i+ge,Vt("tableId?: TId","cellId?: "+o+"<TId>","descending?: boolean","offset?: number","limit?: number",j+pe+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",tl,Wt),He(ee+"sorted "+i),`<TId extends ${a}>`),_=I(u+ge,Vt(j+pe+N,"tableComponents?: {readonly [TId in "+a+`]?: ComponentType<${W}<TId>>;}`,`getTableComponentProps?: (tableId: ${a}) => ExtraProps`,tl,Wt),He(Be(1,1)));r(1,D,_,W,B,z,G),U(u+dl,"{"+j+", tableComponents, getTableComponentProps"+el+"}: "+_,[re+`(${M}(${j}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+E+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${oe}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Bt,"/>;","}), separator)"],Fe(1,13)+le),R(((e,t,a)=>{const[n,o,d,s,I]=Z(S,e);r(null,A,n,o,d,s,I),F(t+i,i,n,et(e)+le,l,a);const c=F(t+C,C,$,_e(b,Xe(e))+le,l,a),u=F(t+h,h,$,_e(b,Xe(e),1)+le,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");F(t+b,b,d,tt(e)+le,ol,Tt(a,Xt));const p=F(t+m,m,I+xe,_e(g,Ye(e))+le,ol,Tt(a,Xt));F(ve+t+i+ae,ve+i+ae,Kt,et(e,9)+Ht,Tt(Jt(i)+_t+o,Jt(i)+de),Tt(a,zt(i)),qt,Tt(ll,`table: ${o})`+Ne,Ft),nl),F(ne+t+i+ae,ne+i+ae,ae,et(e,12),l,a,l,al,nl),F(ve+t+b+ae,ve+b+ae,Kt,tt(e,9)+Ht,Tt(ol,Jt(b)+_t+s,Jt(b)+de),Tt(a,Xt,zt(b)),qt,Tt(ll,`row: ${s})`+Ne,Ft),nl),F("Add"+t+b+ae,"Add"+b+ae,Kt,tt(e,10)+Ht,Tt(Jt(b)+_t+s,Jt(b)+de),Tt(a,zt(b)),qt,"then?: ("+Tt(ol+be,"store: Store","row: "+s+")"+Ne,"then"+de)+", reuseRowIds?: boolean",nl+", reuseRowIds"),F(ve+t+he+b+ae,ve+he+b+ae,Kt,tt(e,11)+Ht,Tt(ol,Jt(he+b)+_t+s,Jt(he+b)+de),Tt(a,Xt,zt(he+b)),qt,Tt(ll,`partialRow: ${s})`+Ne,Ft),nl),F(ne+t+b+ae,ne+b+ae,ae,tt(e,12),ol,Tt(a,Xt),l,al,nl);const f=U(t+b+dl,"{rowId, "+j+", cellComponents, getCellComponentProps"+el+`}: ${z}<'${e}'>`,[re+`(${p}(rowId, ${j}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+O+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${oe}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,Yt,"cellId={cellId}",J,Bt,"/>;","})"+el+", rowId)"],tt(e,13)+le);U(t+"Sorted"+i+dl,"{cellId, descending, offset, limit, ...props}: "+B+`<'${e}'>`,P+"(props, "+u+`(cellId, descending, offset, limit, props.${j}), ${a}, ${f});`,et(e,13)+", sorted"+le),U(t+i+dl,`props: ${W}<'${e}'>`,P+"(props, "+c+`(props.${j}), ${a}, ${f});`,et(e,13)+le),k(e,((n,o,d,s,I)=>{const c="Map"+ft(o,1);r(0,A,c),r(1,A,c);const $=F(t+I+g,g,o+(L(d)?be:l),lt(e,n)+le,ol,Tt(a,Xt,s));F(ve+t+I+g+ae,ve+g+ae,Kt,lt(e,n,9)+Ht,Tt(ol,Jt(g)+_t+o+" | "+c,Jt(g)+de),Tt(a,Xt,s,zt(g)),qt,Tt(ll,`cell: ${o} | ${c})`+Ne,Ft),nl),F(ne+t+I+g+ae,ne+g+ae,ae,lt(e,n,12),Tt(ol,"forceDel?: boolean"),Tt(a,Xt,s,"forceDel"),l,al,nl),U(t+I+g+dl,`{rowId, ${j}, debugIds}: `+G+`<'${e}', '${n}'>`,[re+`('' + ${$}(rowId, `+j+`) ?? '', undefined, debugIds, ${s})`],lt(e,n,13)+le)}))}));const H=gt(R((e=>Z(S,e)?.[4]??l))," | ");F(u+s,u+s,Oe,Fe(1,8)+" changes",rl(d),sl()),F(p+s,p+s,Oe,Ke(2,0,1),rl(f),sl()),F(i+s,i+s,Oe,Ke(3,0),rl(w,`tableId: ${a} | null`),sl("tableId")),F(C+s,C+s,Oe,Ke(4,3,1),rl(y,`tableId: ${a} | null`),sl("tableId")),F(h+s,h+s,Oe,Ke(13,3,1),rl(T,`tableId: ${a} | null`,"cellId: "+H+be,"descending: boolean","offset: number","limit: number"+be),sl("tableId","cellId","descending","offset","limit")),F(b+s,b+s,Oe,Ke(5,3),rl(v,`tableId: ${a} | null`,Xt+": IdOrNull"),sl("tableId",Xt)),F(m+s,m+s,Oe,Ke(6,5,1),rl(V,`tableId: ${a} | null`,Xt+": IdOrNull"),sl("tableId",Xt)),F(g+s,g+s,Oe,Ke(7,5),rl(x,`tableId: ${a} | null`,Xt+": IdOrNull",`cellId: ${H} | null`),sl("tableId",Xt,"cellId"))}if(!Et(t)){const[e,t,a,n,d,$]=o;r(null,A,...o),r(1,A,N);const i=c("getDefaultValueComponent","valueId: Id",gt(S(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);F(w,w,e,Fe(2,0)+le);const u=F(y,y,a+xe,_e(f,Re)+le);F(ve+w+ae,ve+w+ae,Kt,Fe(2,9)+Ht,Tt(Jt(w)+_t+t,Jt(w)+de),zt(w),qt,Tt(ll,`values: ${t})`+Ne,Ft),nl),F(ve+he+w+ae,ve+he+w+ae,Kt,Fe(2,11)+Ht,Tt(Jt(he+w)+_t+t,Jt(he+w)+de),zt(he+w),qt,Tt(ll,`partialValues: ${t})`+Ne,Ft),nl),F(ne+w+ae,ne+w+ae,ae,Fe(2,12),l,l,l,al,nl);const p=I(f+ge,Vt("valueId?: VId",j+pe+N,Wt),He("a Value"),`<VId extends ${a}>`),b=I(w+ge,Vt(j+pe+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,tl,Wt),He(Be(2,1)));r(1,D,b,p),U(w+dl,"{"+j+", valueComponents, getValueComponentProps"+el+"}: "+b,[re+`(${u}(${j}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${oe}(getValueComponentProps, valueId)}`,"key={valueId}",J,Bt,"/>;","}), separator)"],Fe(2,13)+le),S(((e,t,a,n,o)=>{const d="Map"+ft(t,1);r(0,A,d),r(1,A,d);const s=F(o+f,f,t,at(e)+le,l,n);F(ve+o+f+ae,ve+f+ae,Kt,at(e,9)+Ht,Tt(Jt(f)+_t+t+" | "+d,Jt(f)+de),Tt(n,zt(f)),qt,Tt(ll,`value: ${t} | ${d})`+Ne,Ft),nl),F(ne+o+f+ae,ne+f+ae,ae,at(e,12),l,n,l,al,nl),U(o+f+dl,`{${j}, debugIds}: ${p}<'${e}'>`,[re+`('' + ${s}(`+j+`) ?? '', undefined, debugIds, ${n})`],at(e,13)+le)})),F(w+s,w+s,Oe,Fe(2,8)+" changes",rl(n),sl()),F(y+s,y+s,Oe,Ke(10,0,1),rl(d),sl()),F(f+s,f+s,Oe,Ke(11,0),rl($,`valueId: ${a} | null`),sl("valueId"))}return U(me,`{${j}, ${j}ById, children}: `+K+" & {children: React.ReactNode}",["{",Zt,"return (","<Context."+me,"value={useMemo(",`() => [${j} ?? contextValue[0], {...contextValue[1], ...${j}ById}],`,`[${j}, ${j}ById, contextValue],`,")}>","{children}",`</Context.${me}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[d(...v(0),...V(),...H(0)),d(...v(1),...x(),...H(1))]},cl=(e,t,a)=>{if(Et(e)&&Et(t))return[l,l,l,l];const[n,o,d,r]=Gt(e,t,a);return[n,o,...Il(e,t,a,d,r)]},$l={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},il=Dt((e=>{const t=()=>{const t=O(e.getTablesSchemaJson());return!Et(t)||T(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=_();if(T(a,(t=>T(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=K(n,a,(()=>[z(o),_(),[0],0])),[r,s,[I]]=d,c=K(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),q(s,o,c),d[3]++,r==z(o)})))))return t[l]={},F(n,(([e,,[,n],o],s)=>{t[l][s]={[d]:e,...o==R(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=O(e.getValuesSchemaJson());return Et(t)&&e.forEachValue(((e,l)=>{t[e]={[d]:z(l)}})),t},a=e=>cl(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(await import("prettier")).format}catch(e){l=e=>e}return x(a(e),((e,a)=>Ct(l(e,{...$l,filepath:"_."+t[a]}))))};return St({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:R(e.getValueIds()),jsonLength:ht(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=il},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u="Tables",n=d+r,i="Row",a=i+r,I="SortedRowIds",c="Cell",w=c+r,R="Value",C="Values",b=R+r,p=(e,s)=>e.map(s),k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),m=e=>t(e)==l,h=()=>{},{createContext:V,useContext:L}=s,y=V([]),S=(e,s)=>{const t=L(y);return k(e)?t[s]:m(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return k(e)||m(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=k(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=h,r=[],...d)=>{const u=f(e);return M((e=>g(u,(o=>g(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=h,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(p(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(p(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>k(e)?{}:e(s),ge=(e,s,t,o)=>{const l=k(s)||!Array.isArray(e)?e:p(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(p(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Ve=e=>we(e,K(e.tableId,e.store)),Le=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(p(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(p(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>k(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(p($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(k(n)||k(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Ve,e.TablesView=({store:e,tableComponent:s=Ve,getTableComponentProps:t,separator:o,debugIds:l})=>ge(p(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Le,e.ValuesView=({store:e,valueComponent:s=Le,getValueComponentProps:t,separator:o,debugIds:l})=>ge(p(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=h,r=[])=>{const d=f(o);return M((t=>g(d,(o=>g(s(t,o),(s=>l(o.addRow(e,s),o,s)))))),[d,e,...t,...r])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!k(t),ae(s),t,g(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=h,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,g(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u="Tables",n=d+r,i="Row",a=i+r,I="SortedRowIds",c="Cell",w=c+r,R="Value",C="Values",b=R+r,p=(e,s)=>e.map(s),k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),m=e=>t(e)==l,h=()=>{},{createContext:V,useContext:L}=s,y=V([]),S=(e,s)=>{const t=L(y);return k(e)?t[s]:m(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return k(e)||m(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=k(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=h,r=[],...d)=>{const u=f(e);return M((e=>g(u,(o=>g(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=h,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(p(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(p(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>k(e)?{}:e(s),ge=(e,s,t,o)=>{const l=k(s)||!Array.isArray(e)?e:p(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(p(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Ve=e=>we(e,K(e.tableId,e.store)),Le=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(p(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(p(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>k(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(p($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(k(n)||k(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Ve,e.TablesView=({store:e,tableComponent:s=Ve,getTableComponentProps:t,separator:o,debugIds:l})=>ge(p(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Le,e.ValuesView=({store:e,valueComponent:s=Le,getValueComponentProps:t,separator:o,debugIds:l})=>ge(p(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=h,r=[],d=!0)=>{const u=f(o);return M((t=>g(u,(o=>g(s(t,o),(s=>l(o.addRow(e,s,d),o,s)))))),[u,e,...t,...r,d])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!k(t),ae(s),t,g(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=h,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,g(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=(e,n)=>e.includes(n),t=(e,n)=>e.forEach(n),l=e=>e.length,o=e=>0==l(e),r=(e,...n)=>e.push(...n),s=e=>e.pop(),i=e=>e.shift(),u=e=>null==e,d=(e,n,t)=>u(e)?null==t?void 0:t():n(e),c=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},a=e=>u(e)||0==(e=>e.size)(e),h=(e,n)=>null==e?void 0:e.forEach(n),p=(e,n)=>null==e?void 0:e.delete(n),f=e=>new Map(e),v=(e,n)=>null==e?void 0:e.get(n),C=(e,n,t)=>u(t)?(p(e,n),e):null==e?void 0:e.set(n,t),g=(e,n,t)=>(c(e,n)||C(e,n,t()),v(e,n)),k=(e,n,t,o,r=0)=>d((t?g:v)(e,n[r],r>l(n)-2?t:f),(s=>{if(r>l(n)-2)return(null==o?void 0:o(s))&&C(e,n[r]),s;const i=k(s,n,t,o,r+1);return a(s)&&C(e,n[r]),i})),y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),L=/^\d+$/,w=Object.freeze,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=f(),E=f(),V=1;const j=f(),m=f(),[A,B,I]=(e=>{let n;const[o,s]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=i(e))?t:""+n++},n=>{L.test(n)&&l(e)<1e3&&r(e,n)}]})(),c=f();return[(e,t,l,r=[],s=(()=>[]))=>{null!=n||(n=_);const i=o();var u,d;return C(c,i,[e,t,l,r,s]),d=i,null==(u=k(t,null!=l?l:[""],y))||u.add(d),i},(e,o,...s)=>t(((e,n=[""])=>{const o=[],s=(e,i)=>i==l(n)?r(o,e):null===n[i]?h(e,(e=>s(e,i+1))):t([n[i],null],(n=>s(v(e,n),i+1)));return s(e,0),o})(e,o),(e=>h(e,(e=>v(c,e)[0](n,...null!=o?o:[],...s))))),e=>d(v(c,e),(([,n,t])=>(k(n,null!=t?t:[""],void 0,(n=>(p(n,e),a(n)?1:0))),C(c,e),s(e),t))),e=>d(v(c,e),(([e,,o=[],r,s])=>{const i=(...d)=>{var c,a;const h=l(d);h==l(o)?e(n,...d,...s(d)):u(o[h])?t(null!=(a=null==(c=r[h])?void 0:c.call(r,...d))?a:[],(e=>i(...d,e))):i(...d,o[h])};i()}))]})(),M=f(),F=f(),O=[],W=[],$=(n,t)=>{V=0,e.transaction((()=>{const[l,o]=v(M,t);h(l,((t,l)=>h(t,((t,o)=>h(t,((t,r)=>((e,n,t,l,o)=>u(o)?e.delCell(n,t,l,!0):e.setCell(n,t,l,o))(e,l,o,r,t[n]))))))),h(o,((t,l)=>((e,n,t)=>u(t)?e.delValue(n):e.setValue(n,t))(e,l,t[n])))})),V=1},q=e=>{C(M,e),C(F,e),B(m,[e])},D=(e,n)=>t(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),q),G=()=>D(O,l(O)-x),H=()=>d(b,(()=>{r(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=s(O),T=1},K=e.addCellListener(null,null,null,((e,n,t,l,o,r)=>{if(V){H();const e=g(z,n,f),s=g(e,t,f),i=g(s,l,(()=>[r,void 0]));i[1]=o,i[0]===o&&a(C(s,l))&&a(C(e,t))&&a(C(z,n))&&J(),U()}})),N=e.addValueListener(null,((e,n,t,l)=>{if(V){H();const e=g(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&a(C(E,n))&&J(),U()}})),P=(e="")=>(u(b)&&(b=""+S++,C(M,b,[z,E]),Y(b,e),z=f(),E=f(),T=1),b),Q=()=>{o(O)||(((e,...n)=>{e.unshift(...n)})(W,P()),$(0,b),b=s(O),T=1)},R=()=>{o(W)||(r(O,b),b=i(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const n=P(e);return U(),n},Y=(e,n)=>(Z(e)&&v(F,e)!==n&&(C(F,e,n),B(m,[e])),_),Z=e=>c(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return n=e,h(F,((e,t)=>n(t,e)));var n},hasCheckpoint:Z,getCheckpoint:e=>v(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const t=n(O,e)?Q:n(W,e)?R:null;for(;!u(t)&&e!=b;)t();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),u(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=(e,n)=>e.includes(n),t=(e,n)=>e.forEach(n),l=e=>e.length,o=e=>0==l(e),r=(e,...n)=>e.push(...n),s=e=>e.pop(),i=e=>e.shift(),u=e=>null==e,d=(e,n,t)=>u(e)?null==t?void 0:t():n(e),c=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},a=e=>u(e)||0==(e=>e.size)(e),h=(e,n)=>null==e?void 0:e.forEach(n),p=(e,n)=>null==e?void 0:e.delete(n),f=e=>new Map(e),v=(e,n)=>null==e?void 0:e.get(n),C=(e,n,t)=>u(t)?(p(e,n),e):null==e?void 0:e.set(n,t),g=(e,n,t)=>(c(e,n)||C(e,n,t()),v(e,n)),k=(e,n,t,o,r=0)=>d((t?g:v)(e,n[r],r>l(n)-2?t:f),(s=>{if(r>l(n)-2)return(null==o?void 0:o(s))&&C(e,n[r]),s;const i=k(s,n,t,o,r+1);return a(s)&&C(e,n[r]),i})),y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),L=/^\d+$/,w=Object.freeze,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=f(),E=f(),V=1;const j=f(),m=f(),[A,B,I]=(e=>{let n;const[o,s]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?i(e):null)?l:""+n++},n=>{L.test(n)&&l(e)<1e3&&r(e,n)}]})(),c=f();return[(e,t,l,r=[],s=(()=>[]))=>{null!=n||(n=_);const i=o(1);var u,d;return C(c,i,[e,t,l,r,s]),d=i,null==(u=k(t,null!=l?l:[""],y))||u.add(d),i},(e,o,...s)=>t(((e,n=[""])=>{const o=[],s=(e,i)=>i==l(n)?r(o,e):null===n[i]?h(e,(e=>s(e,i+1))):t([n[i],null],(n=>s(v(e,n),i+1)));return s(e,0),o})(e,o),(e=>h(e,(e=>v(c,e)[0](n,...null!=o?o:[],...s))))),e=>d(v(c,e),(([,n,t])=>(k(n,null!=t?t:[""],void 0,(n=>(p(n,e),a(n)?1:0))),C(c,e),s(e),t))),e=>d(v(c,e),(([e,,o=[],r,s])=>{const i=(...d)=>{var c,a;const h=l(d);h==l(o)?e(n,...d,...s(d)):u(o[h])?t(null!=(a=null==(c=r[h])?void 0:c.call(r,...d))?a:[],(e=>i(...d,e))):i(...d,o[h])};i()}))]})(),M=f(),F=f(),O=[],W=[],$=(n,t)=>{V=0,e.transaction((()=>{const[l,o]=v(M,t);h(l,((t,l)=>h(t,((t,o)=>h(t,((t,r)=>((e,n,t,l,o)=>u(o)?e.delCell(n,t,l,!0):e.setCell(n,t,l,o))(e,l,o,r,t[n]))))))),h(o,((t,l)=>((e,n,t)=>u(t)?e.delValue(n):e.setValue(n,t))(e,l,t[n])))})),V=1},q=e=>{C(M,e),C(F,e),B(m,[e])},D=(e,n)=>t(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),q),G=()=>D(O,l(O)-x),H=()=>d(b,(()=>{r(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=s(O),T=1},K=e.addCellListener(null,null,null,((e,n,t,l,o,r)=>{if(V){H();const e=g(z,n,f),s=g(e,t,f),i=g(s,l,(()=>[r,void 0]));i[1]=o,i[0]===o&&a(C(s,l))&&a(C(e,t))&&a(C(z,n))&&J(),U()}})),N=e.addValueListener(null,((e,n,t,l)=>{if(V){H();const e=g(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&a(C(E,n))&&J(),U()}})),P=(e="")=>(u(b)&&(b=""+S++,C(M,b,[z,E]),Y(b,e),z=f(),E=f(),T=1),b),Q=()=>{o(O)||(((e,...n)=>{e.unshift(...n)})(W,P()),$(0,b),b=s(O),T=1)},R=()=>{o(W)||(r(O,b),b=i(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const n=P(e);return U(),n},Y=(e,n)=>(Z(e)&&v(F,e)!==n&&(C(F,e,n),B(m,[e])),_),Z=e=>c(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return n=e,h(F,((e,t)=>n(t,e)));var n},hasCheckpoint:Z,getCheckpoint:e=>v(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const t=n(O,e)?Q:n(W,e)?R:null;for(;!u(t)&&e!=b;)t();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),u(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),r=e=>t+e,s=(e,n)=>e.every(n),o=(e,n)=>s(e,((t,l)=>0==l||n(e[l-1],t)<=0)),d=(e,n)=>e.sort(n),i=(e,n)=>e.forEach(n),u=e=>e.length,a=(e,...n)=>e.push(...n),c=e=>null==e,f=(e,n,t)=>c(e)?null==t?void 0:t():n(e),v=e=>Array.isArray(e),h=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},I=e=>c(e)||0==(e=>e.size)(e),g=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},p=e=>e.clear(),y=(e,n)=>null==e?void 0:e.forEach(n),x=(e,n)=>null==e?void 0:e.delete(n),S=e=>new Map(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},L=(e,n)=>null==e?void 0:e.get(n),b=(e,n)=>y(e,((e,t)=>n(t,e))),T=(e,n,t)=>c(t)?(x(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(h(e,n)||T(e,n,t()),L(e,n)),R=(e,n,t,l,r=0)=>f((t?E:L)(e,n[r],r>u(n)-2?t:S),(s=>{if(r>u(n)-2)return(null==l?void 0:l(s))&&T(e,n[r]),s;const o=R(s,n,t,l,r+1);return I(s)&&T(e,n[r]),o})),m=e=>new Set(v(e)||c(e)?e:[e]),j=(e,n)=>null==e?void 0:e.add(n),k=(e,r)=>n(e)==l?n=>n(e):null!=e?e:()=>null!=r?r:t,z=(e,n)=>e<n?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=S(),l=S(),[D,M,B,O,W,$,q,,F,G,H]=((e,n,t)=>{const l=e.hasRow,r=S(),o=S(),d=S(),a=S(),R=S(),k=(n,t,...l)=>{const r=E(R,n,m);return i(l,(n=>j(r,n)&&t&&e.callListener(n))),l},z=(n,...t)=>f(L(R,n),(l=>{i(0==u(t)?g(l):t,(n=>{e.delListener(n),x(l,n)})),I(l)&&T(R,n)})),A=(e,t)=>{T(r,e,t),h(o,e)||(T(o,e,n()),T(d,e,S()),T(a,e,S()))},C=e=>{T(r,e),T(o,e),T(d,e),T(a,e),z(e)};return[()=>e,()=>w(r),e=>b(o,e),e=>h(o,e),e=>L(r,e),e=>L(o,e),(e,n)=>T(o,e,n),A,(n,r,o,f,I)=>{A(n,r);const g=S(),x=S(),w=L(d,n),E=L(a,n),R=n=>{const o=t=>e.getCell(r,n,t),d=L(w,n),i=l(r,n)?t(f(o,n)):void 0;var a,h;if(d===i||v(d)&&v(i)&&(h=i,u(a=d)===u(h)&&s(a,((e,n)=>h[n]===e)))||T(g,n,[d,i]),!c(I)){const e=L(E,n),t=l(r,n)?I(o,n):void 0;e!=t&&T(x,n,t)}},m=e=>{o((()=>{y(g,(([,e],n)=>T(w,n,e))),y(x,((e,n)=>T(E,n,e)))}),g,x,w,E,e),p(g),p(x)};b(w,R),e.hasTable(r)&&i(e.getRowIds(r),(e=>{h(w,e)||R(e)})),m(!0),z(n),k(n,0,e.addRowListener(r,null,((e,n,t)=>R(t))),e.addTableListener(r,(()=>m())))},C,()=>b(R,C),k,z]})(e,S,(e=>{return c(e)?t:v(e)?(n=r,e.map(n)):r(e);var n})),[J,K,N]=(e=>{let n;const[l,r]=(()=>{const e=[];let n=0;return[()=>{var l;return null!=(l=e.shift())?l:t+n++},n=>{A.test(n)&&u(e)<1e3&&a(e,n)}]})(),s=S();return[(e,r,o,d=[],i=(()=>[]))=>{null!=n||(n=Q);const u=l();return T(s,u,[e,r,o,d,i]),j(R(r,null!=o?o:[t],m),u),u},(e,l,...r)=>i(((e,n=[t])=>{const l=[],r=(e,t)=>t==u(n)?a(l,e):null===n[t]?y(e,(e=>r(e,t+1))):i([n[t],null],(n=>r(L(e,n),t+1)));return r(e,0),l})(e,l),(e=>y(e,(e=>L(s,e)[0](n,...null!=l?l:[],...r))))),e=>f(L(s,e),(([,n,l])=>(R(n,null!=l?l:[t],void 0,(n=>(x(n,e),I(n)?1:0))),T(s,e),r(e),l))),e=>f(L(s,e),(([e,,t=[],l,r])=>{const s=(...o)=>{var d,a;const f=u(o);f==u(t)?e(n,...o,...r(o)):c(t[f])?i(null!=(a=null==(d=l[f])?void 0:d.call(l,...o))?a:[],(e=>s(...o,e))):s(...o,t[f])};s()}))]})(),P=(n,t,l)=>{const r=W(n);y(l,((n,l)=>t(l,(t=>y(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},Q={setIndexDefinition:(e,t,r,s,i,u=z)=>{const a=c(i)?void 0:([e],[n])=>i(e,n);return F(e,t,((t,r,i,v,g,p)=>{let w=0;const E=m(),R=m(),k=$(e);if(y(r,(([e,n],t)=>{const l=m(e),r=m(n);y(l,(e=>x(r,e)?x(l,e):0)),y(l,(e=>{j(E,e),f(L(k,e),(n=>{x(n,t),I(n)&&(T(k,e),w=1)}))})),y(r,(e=>{j(E,e),h(k,e)||(T(k,e,m()),w=1),j(L(k,e),t),c(s)||j(R,e)}))})),t(),I(g)||(p?b(k,(e=>j(R,e))):b(i,(e=>f(L(v,e),(e=>j(R,e))))),y(R,(e=>{const n=(n,t)=>u(L(g,n),L(g,t),e),t=[...L(k,e)];o(t,n)||(T(k,e,m(d(t,n))),j(E,e))}))),(w||p)&&!c(a)){const n=[...k];o(n,a)||(q(e,S(d(n,a))),w=1)}w&&K(n,[e]),y(E,(n=>K(l,[e,n])))}),k(r),f(s,k)),Q},delIndexDefinition:e=>(G(e),Q),getStore:D,getIndexIds:M,forEachIndex:e=>B(((n,t)=>e(n,(e=>P(n,e,t))))),forEachSlice:(e,n)=>P(e,n,$(e)),hasIndex:O,hasSlice:(e,n)=>h($(e),n),getTableId:W,getSliceIds:e=>w($(e)),getSliceRowIds:(e,n)=>g(L($(e),n)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>J(t,l,[e,n]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return C(Q)})(e)),n.get(e))})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),r=e=>t+e,s=(e,n)=>e.every(n),o=(e,n)=>s(e,((t,l)=>0==l||n(e[l-1],t)<=0)),d=(e,n)=>e.sort(n),i=(e,n)=>e.forEach(n),u=e=>e.length,a=(e,...n)=>e.push(...n),c=e=>null==e,f=(e,n,t)=>c(e)?null==t?void 0:t():n(e),v=e=>Array.isArray(e),h=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},I=e=>c(e)||0==(e=>e.size)(e),g=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},p=e=>e.clear(),y=(e,n)=>null==e?void 0:e.forEach(n),x=(e,n)=>null==e?void 0:e.delete(n),S=e=>new Map(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},L=(e,n)=>null==e?void 0:e.get(n),b=(e,n)=>y(e,((e,t)=>n(t,e))),T=(e,n,t)=>c(t)?(x(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(h(e,n)||T(e,n,t()),L(e,n)),R=(e,n,t,l,r=0)=>f((t?E:L)(e,n[r],r>u(n)-2?t:S),(s=>{if(r>u(n)-2)return(null==l?void 0:l(s))&&T(e,n[r]),s;const o=R(s,n,t,l,r+1);return I(s)&&T(e,n[r]),o})),m=e=>new Set(v(e)||c(e)?e:[e]),j=(e,n)=>null==e?void 0:e.add(n),k=(e,r)=>n(e)==l?n=>n(e):null!=e?e:()=>null!=r?r:t,z=(e,n)=>e<n?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=S(),l=S(),[D,M,B,O,W,$,q,,F,G,H]=((e,n,t)=>{const l=e.hasRow,r=S(),o=S(),d=S(),a=S(),R=S(),k=(n,t,...l)=>{const r=E(R,n,m);return i(l,(n=>j(r,n)&&t&&e.callListener(n))),l},z=(n,...t)=>f(L(R,n),(l=>{i(0==u(t)?g(l):t,(n=>{e.delListener(n),x(l,n)})),I(l)&&T(R,n)})),A=(e,t)=>{T(r,e,t),h(o,e)||(T(o,e,n()),T(d,e,S()),T(a,e,S()))},C=e=>{T(r,e),T(o,e),T(d,e),T(a,e),z(e)};return[()=>e,()=>w(r),e=>b(o,e),e=>h(o,e),e=>L(r,e),e=>L(o,e),(e,n)=>T(o,e,n),A,(n,r,o,f,I)=>{A(n,r);const g=S(),x=S(),w=L(d,n),E=L(a,n),R=n=>{const o=t=>e.getCell(r,n,t),d=L(w,n),i=l(r,n)?t(f(o,n)):void 0;var a,h;if(d===i||v(d)&&v(i)&&(h=i,u(a=d)===u(h)&&s(a,((e,n)=>h[n]===e)))||T(g,n,[d,i]),!c(I)){const e=L(E,n),t=l(r,n)?I(o,n):void 0;e!=t&&T(x,n,t)}},m=e=>{o((()=>{y(g,(([,e],n)=>T(w,n,e))),y(x,((e,n)=>T(E,n,e)))}),g,x,w,E,e),p(g),p(x)};b(w,R),e.hasTable(r)&&i(e.getRowIds(r),(e=>{h(w,e)||R(e)})),m(!0),z(n),k(n,0,e.addRowListener(r,null,((e,n,t)=>R(t))),e.addTableListener(r,(()=>m())))},C,()=>b(R,C),k,z]})(e,S,(e=>{return c(e)?t:v(e)?(n=r,e.map(n)):r(e);var n})),[J,K,N]=(e=>{let n;const[l,r]=(()=>{const e=[];let n=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:t+n++},n=>{A.test(n)&&u(e)<1e3&&a(e,n)}]})(),s=S();return[(e,r,o,d=[],i=(()=>[]))=>{null!=n||(n=Q);const u=l(1);return T(s,u,[e,r,o,d,i]),j(R(r,null!=o?o:[t],m),u),u},(e,l,...r)=>i(((e,n=[t])=>{const l=[],r=(e,t)=>t==u(n)?a(l,e):null===n[t]?y(e,(e=>r(e,t+1))):i([n[t],null],(n=>r(L(e,n),t+1)));return r(e,0),l})(e,l),(e=>y(e,(e=>L(s,e)[0](n,...null!=l?l:[],...r))))),e=>f(L(s,e),(([,n,l])=>(R(n,null!=l?l:[t],void 0,(n=>(x(n,e),I(n)?1:0))),T(s,e),r(e),l))),e=>f(L(s,e),(([e,,t=[],l,r])=>{const s=(...o)=>{var d,a;const f=u(o);f==u(t)?e(n,...o,...r(o)):c(t[f])?i(null!=(a=null==(d=l[f])?void 0:d.call(l,...o))?a:[],(e=>s(...o,e))):s(...o,t[f])};s()}))]})(),P=(n,t,l)=>{const r=W(n);y(l,((n,l)=>t(l,(t=>y(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},Q={setIndexDefinition:(e,t,r,s,i,u=z)=>{const a=c(i)?void 0:([e],[n])=>i(e,n);return F(e,t,((t,r,i,v,g,p)=>{let w=0;const E=m(),R=m(),k=$(e);if(y(r,(([e,n],t)=>{const l=m(e),r=m(n);y(l,(e=>x(r,e)?x(l,e):0)),y(l,(e=>{j(E,e),f(L(k,e),(n=>{x(n,t),I(n)&&(T(k,e),w=1)}))})),y(r,(e=>{j(E,e),h(k,e)||(T(k,e,m()),w=1),j(L(k,e),t),c(s)||j(R,e)}))})),t(),I(g)||(p?b(k,(e=>j(R,e))):b(i,(e=>f(L(v,e),(e=>j(R,e))))),y(R,(e=>{const n=(n,t)=>u(L(g,n),L(g,t),e),t=[...L(k,e)];o(t,n)||(T(k,e,m(d(t,n))),j(E,e))}))),(w||p)&&!c(a)){const n=[...k];o(n,a)||(q(e,S(d(n,a))),w=1)}w&&K(n,[e]),y(E,(n=>K(l,[e,n])))}),k(r),f(s,k)),Q},delIndexDefinition:e=>(G(e),Q),getStore:D,getIndexIds:M,forEachIndex:e=>B(((n,t)=>e(n,(e=>P(n,e,t))))),forEachSlice:(e,n)=>P(e,n,$(e)),hasIndex:O,hasSlice:(e,n)=>h($(e),n),getTableId:W,getSliceIds:e=>w($(e)),getSliceRowIds:(e,n)=>g(L($(e),n)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>J(t,l,[e,n]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return C(Q)})(e)),n.get(e))})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),r=t(t),i=(e,t)=>e.forEach(t),o=e=>u(e,((e,t)=>e+t),0),s=e=>e.length,u=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),a=Math.max,c=Math.min,v=isFinite,f=e=>null==e,h=(e,t,n)=>f(e)?null==n?void 0:n():t(e),g=e=>Array.isArray(e),M=()=>{},p=e=>e.size,y=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},m=e=>f(e)||0==p(e),b=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},L=e=>e.clear(),w=(e,t)=>null==e?void 0:e.forEach(t),T=(e,t)=>null==e?void 0:e.delete(t),x=e=>new Map(e),E=(e,t)=>null==e?void 0:e.get(t),I=(e,t)=>w(e,((e,n)=>t(n,e))),R=(e,t,n)=>f(n)?(T(e,t),e):null==e?void 0:e.set(t,n),S=(e,t,n)=>(y(e,t)||R(e,t,n()),E(e,t)),j=(e,t,n,l,r=0)=>h((n?S:E)(e,t[r],r>s(t)-2?n:x),(i=>{if(r>s(t)-2)return(null==l?void 0:l(i))&&R(e,t[r]),i;const o=j(i,t,n,l,r+1);return m(i)&&R(e,t[r]),o})),k=x([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>a(...e),(e,t)=>a(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:a(t,e)]],["min",[e=>c(...e),(e,t)=>c(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:c(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),z=e=>new Set(g(e)||f(e)?e:[e]),A=(e,t)=>null==e?void 0:e.add(t),D=/^\d+$/,N=Object.freeze,B=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=x(),[u,a,c,B,C,F,O,,W,$,q]=((e,t,l)=>{const r=e.hasRow,o=x(),u=x(),d=x(),a=x(),c=x(),v=(t,n,...l)=>{const r=S(c,t,z);return i(l,(t=>A(r,t)&&n&&e.callListener(t))),l},M=(t,...n)=>h(E(c,t),(l=>{i(0==s(n)?b(l):n,(t=>{e.delListener(t),T(l,t)})),m(l)&&R(c,t)})),p=(e,n)=>{R(o,e,n),y(u,e)||(R(u,e,t()),R(d,e,x()),R(a,e,x()))},j=e=>{R(o,e),R(u,e),R(d,e),R(a,e),M(e)};return[()=>e,()=>{return[...null!=(t=null==(e=o)?void 0:e.keys())?t:[]];var e,t},e=>I(u,e),e=>y(u,e),e=>E(o,e),e=>E(u,e),(e,t)=>R(u,e,t),p,(t,l,o,u,c)=>{p(t,l);const h=x(),m=x(),b=E(d,t),T=E(a,t),S=t=>{const i=n=>e.getCell(l,t,n),o=E(b,t),d=r(l,t)?(a=u(i,t),isNaN(a)||f(a)||!0===a||!1===a||a===n?void 0:1*a):void 0;var a,v,M,p;if(o===d||g(o)&&g(d)&&(M=d,s(v=o)===s(M)&&(p=(e,t)=>M[t]===e,v.every(p)))||R(h,t,[o,d]),!f(c)){const e=E(T,t),n=r(l,t)?c(i,t):void 0;e!=n&&R(m,t,n)}},j=e=>{o((()=>{w(h,(([,e],t)=>R(b,t,e))),w(m,((e,t)=>R(T,t,e)))}),h,m,b,T,e),L(h),L(m)};I(b,S),e.hasTable(l)&&i(e.getRowIds(l),(e=>{y(b,e)||S(e)})),j(!0),M(t),v(t,0,e.addRowListener(l,null,((e,t,n)=>S(n))),e.addTableListener(l,(()=>j())))},j,()=>I(c,j),v,M]})(e,M),[G,H,J]=(e=>{let t;const[l,r]=(()=>{const e=[];let t=0;return[()=>{var l;return null!=(l=e.shift())?l:n+t++},t=>{D.test(t)&&s(e)<1e3&&d(e,t)}]})(),o=x();return[(e,r,i,s=[],u=(()=>[]))=>{null!=t||(t=K);const d=l();return R(o,d,[e,r,i,s,u]),A(j(r,null!=i?i:[n],z),d),d},(e,l,...r)=>i(((e,t=[n])=>{const l=[],r=(e,n)=>n==s(t)?d(l,e):null===t[n]?w(e,(e=>r(e,n+1))):i([t[n],null],(t=>r(E(e,t),n+1)));return r(e,0),l})(e,l),(e=>w(e,(e=>E(o,e)[0](t,...null!=l?l:[],...r))))),e=>h(E(o,e),(([,t,l])=>(j(t,null!=l?l:[n],void 0,(t=>(T(t,e),m(t)?1:0))),R(o,e),r(e),l))),e=>h(E(o,e),(([e,,n=[],l,r])=>{const o=(...u)=>{var d,a;const c=s(u);c==s(n)?e(t,...u,...r(u)):f(n[c])?i(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>o(...u,e))):o(...u,n[c])};o()}))]})(),K={setMetricDefinition:(e,n,i,s,u,d,a)=>{var c;const h=t(i)==r?[i,u,d,a]:null!=(c=E(k,i))?c:E(k,"sum");return W(e,n,((t,n,l,r,i,s)=>{const u=F(e),d=p(r);s||(s=f(u)),t();let a=((e,t,n,l,r,i=!1)=>{if(m(n))return;const[o,s,u,d]=r;return i||(i=f(e)),w(l,(([n,l])=>{i||(e=f(n)?null==s?void 0:s(e,l,t++):f(l)?null==u?void 0:u(e,n,t--):null==d?void 0:d(e,l,n,t),i||(i=f(e)))})),i?o(b(n),p(n)):e})(u,d,r,n,h,s);v(a)||(a=void 0),a!=u&&(O(e,a),H(o,[e],a,u))}),(1,t(g=s)==l?e=>e(g):null!=g?g:()=>1)),K;var g},delMetricDefinition:e=>($(e),K),getStore:u,getMetricIds:a,forEachMetric:c,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,o,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return N(K)})(e)),o.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),r=t(t),i=(e,t)=>e.forEach(t),o=e=>u(e,((e,t)=>e+t),0),s=e=>e.length,u=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),a=Math.max,c=Math.min,v=isFinite,f=e=>null==e,h=(e,t,n)=>f(e)?null==n?void 0:n():t(e),g=e=>Array.isArray(e),M=()=>{},p=e=>e.size,y=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},m=e=>f(e)||0==p(e),b=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},L=e=>e.clear(),w=(e,t)=>null==e?void 0:e.forEach(t),T=(e,t)=>null==e?void 0:e.delete(t),x=e=>new Map(e),E=(e,t)=>null==e?void 0:e.get(t),I=(e,t)=>w(e,((e,n)=>t(n,e))),R=(e,t,n)=>f(n)?(T(e,t),e):null==e?void 0:e.set(t,n),S=(e,t,n)=>(y(e,t)||R(e,t,n()),E(e,t)),j=(e,t,n,l,r=0)=>h((n?S:E)(e,t[r],r>s(t)-2?n:x),(i=>{if(r>s(t)-2)return(null==l?void 0:l(i))&&R(e,t[r]),i;const o=j(i,t,n,l,r+1);return m(i)&&R(e,t[r]),o})),k=x([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>a(...e),(e,t)=>a(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:a(t,e)]],["min",[e=>c(...e),(e,t)=>c(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:c(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),z=e=>new Set(g(e)||f(e)?e:[e]),A=(e,t)=>null==e?void 0:e.add(t),D=/^\d+$/,N=Object.freeze,B=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=x(),[u,a,c,B,C,F,O,,W,$,q]=((e,t,l)=>{const r=e.hasRow,o=x(),u=x(),d=x(),a=x(),c=x(),v=(t,n,...l)=>{const r=S(c,t,z);return i(l,(t=>A(r,t)&&n&&e.callListener(t))),l},M=(t,...n)=>h(E(c,t),(l=>{i(0==s(n)?b(l):n,(t=>{e.delListener(t),T(l,t)})),m(l)&&R(c,t)})),p=(e,n)=>{R(o,e,n),y(u,e)||(R(u,e,t()),R(d,e,x()),R(a,e,x()))},j=e=>{R(o,e),R(u,e),R(d,e),R(a,e),M(e)};return[()=>e,()=>{return[...null!=(t=null==(e=o)?void 0:e.keys())?t:[]];var e,t},e=>I(u,e),e=>y(u,e),e=>E(o,e),e=>E(u,e),(e,t)=>R(u,e,t),p,(t,l,o,u,c)=>{p(t,l);const h=x(),m=x(),b=E(d,t),T=E(a,t),S=t=>{const i=n=>e.getCell(l,t,n),o=E(b,t),d=r(l,t)?(a=u(i,t),isNaN(a)||f(a)||!0===a||!1===a||a===n?void 0:1*a):void 0;var a,v,M,p;if(o===d||g(o)&&g(d)&&(M=d,s(v=o)===s(M)&&(p=(e,t)=>M[t]===e,v.every(p)))||R(h,t,[o,d]),!f(c)){const e=E(T,t),n=r(l,t)?c(i,t):void 0;e!=n&&R(m,t,n)}},j=e=>{o((()=>{w(h,(([,e],t)=>R(b,t,e))),w(m,((e,t)=>R(T,t,e)))}),h,m,b,T,e),L(h),L(m)};I(b,S),e.hasTable(l)&&i(e.getRowIds(l),(e=>{y(b,e)||S(e)})),j(!0),M(t),v(t,0,e.addRowListener(l,null,((e,t,n)=>S(n))),e.addTableListener(l,(()=>j())))},j,()=>I(c,j),v,M]})(e,M),[G,H,J]=(e=>{let t;const[l,r]=(()=>{const e=[];let t=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:n+t++},t=>{D.test(t)&&s(e)<1e3&&d(e,t)}]})(),o=x();return[(e,r,i,s=[],u=(()=>[]))=>{null!=t||(t=K);const d=l(1);return R(o,d,[e,r,i,s,u]),A(j(r,null!=i?i:[n],z),d),d},(e,l,...r)=>i(((e,t=[n])=>{const l=[],r=(e,n)=>n==s(t)?d(l,e):null===t[n]?w(e,(e=>r(e,n+1))):i([t[n],null],(t=>r(E(e,t),n+1)));return r(e,0),l})(e,l),(e=>w(e,(e=>E(o,e)[0](t,...null!=l?l:[],...r))))),e=>h(E(o,e),(([,t,l])=>(j(t,null!=l?l:[n],void 0,(t=>(T(t,e),m(t)?1:0))),R(o,e),r(e),l))),e=>h(E(o,e),(([e,,n=[],l,r])=>{const o=(...u)=>{var d,a;const c=s(u);c==s(n)?e(t,...u,...r(u)):f(n[c])?i(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>o(...u,e))):o(...u,n[c])};o()}))]})(),K={setMetricDefinition:(e,n,i,s,u,d,a)=>{var c;const h=t(i)==r?[i,u,d,a]:null!=(c=E(k,i))?c:E(k,"sum");return W(e,n,((t,n,l,r,i,s)=>{const u=F(e),d=p(r);s||(s=f(u)),t();let a=((e,t,n,l,r,i=!1)=>{if(m(n))return;const[o,s,u,d]=r;return i||(i=f(e)),w(l,(([n,l])=>{i||(e=f(n)?null==s?void 0:s(e,l,t++):f(l)?null==u?void 0:u(e,n,t--):null==d?void 0:d(e,l,n,t),i||(i=f(e)))})),i?o(b(n),p(n)):e})(u,d,r,n,h,s);v(a)||(a=void 0),a!=u&&(O(e,a),H(o,[e],a,u))}),(1,t(g=s)==l?e=>e(g):null!=g?g:()=>1)),K;var g},delMetricDefinition:e=>($(e),K),getStore:u,getMetricIds:a,forEachMetric:c,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,o,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return N(K)})(e)),o.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),o=(e,n)=>e.forEach(n),r=e=>e.length,s=(e,...n)=>e.push(...n),i=e=>null==e,d=(e,n,t)=>i(e)?null==t?void 0:t():n(e),a=e=>Array.isArray(e),u=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},c=e=>i(e)||0==(e=>e.size)(e),v=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},f=e=>e.clear(),h=(e,n)=>null==e?void 0:e.forEach(n),R=(e,n)=>null==e?void 0:e.delete(n),p=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),L=(e,n)=>h(e,((e,t)=>n(t,e))),w=(e,n,t)=>i(t)?(R(e,n),e):null==e?void 0:e.set(n,t),y=(e,n,t)=>(u(e,n)||w(e,n,t()),g(e,n)),I=(e,n,t,l,o=0)=>d((t?y:g)(e,n[o],o>r(n)-2?t:p),(s=>{if(o>r(n)-2)return(null==l?void 0:l(s))&&w(e,n[o]),s;const i=I(s,n,t,l,o+1);return c(s)&&w(e,n[o]),i})),b=e=>new Set(a(e)||i(e)?e:[e]),T=(e,n)=>null==e?void 0:e.add(n),m=/^\d+$/,k=Object.freeze,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=p(),x=p(),S=p(),j=p(),[z,A,D,M,B,C,,,O,W,$]=((e,n,l)=>{const s=e.hasRow,I=p(),m=p(),k=p(),E=p(),x=p(),S=(n,t,...l)=>{const r=y(x,n,b);return o(l,(n=>T(r,n)&&t&&e.callListener(n))),l},j=(n,...t)=>d(g(x,n),(l=>{o(0==r(t)?v(l):t,(n=>{e.delListener(n),R(l,n)})),c(l)&&w(x,n)})),z=(e,n)=>{w(I,e,n),u(m,e)||(w(m,e,[p(),p(),p(),p()]),w(k,e,p()),w(E,e,p()))},A=e=>{w(I,e),w(m,e),w(k,e),w(E,e),j(e)};return[()=>e,()=>{return[...null!=(n=null==(e=I)?void 0:e.keys())?n:[]];var e,n},e=>L(m,e),e=>u(m,e),e=>g(I,e),e=>g(m,e),(e,n)=>w(m,e,n),z,(n,l,d,c,v)=>{z(n,l);const R=p(),y=p(),I=g(k,n),b=g(E,n),T=n=>{const o=t=>e.getCell(l,n,t),d=g(I,n),u=s(l,n)?(f=c(o,n),i(f)?void 0:f+t):void 0;var f,h,p,L;if(d===u||a(d)&&a(u)&&(p=u,r(h=d)===r(p)&&(L=(e,n)=>p[n]===e,h.every(L)))||w(R,n,[d,u]),!i(v)){const e=g(b,n),t=s(l,n)?v(o,n):void 0;e!=t&&w(y,n,t)}},m=e=>{d((()=>{h(R,(([,e],n)=>w(I,n,e))),h(y,((e,n)=>w(b,n,e)))}),R,y,I,b,e),f(R),f(y)};L(I,T),e.hasTable(l)&&o(e.getRowIds(l),(e=>{u(I,e)||T(e)})),m(!0),j(n),S(n,0,e.addRowListener(l,null,((e,n,t)=>T(t))),e.addTableListener(l,(()=>m())))},A,()=>L(x,A),S,j]})(e),[q,F,G]=(e=>{let n;const[l,a]=(()=>{const e=[];let n=0;return[()=>{var l;return null!=(l=e.shift())?l:t+n++},n=>{m.test(n)&&r(e)<1e3&&s(e,n)}]})(),u=p();return[(e,o,r,s=[],i=(()=>[]))=>{null!=n||(n=N);const d=l();return w(u,d,[e,o,r,s,i]),T(I(o,null!=r?r:[t],b),d),d},(e,l,...i)=>o(((e,n=[t])=>{const l=[],i=(e,t)=>t==r(n)?s(l,e):null===n[t]?h(e,(e=>i(e,t+1))):o([n[t],null],(n=>i(g(e,n),t+1)));return i(e,0),l})(e,l),(e=>h(e,(e=>g(u,e)[0](n,...null!=l?l:[],...i))))),e=>d(g(u,e),(([,n,l])=>(I(n,null!=l?l:[t],void 0,(n=>(R(n,e),c(n)?1:0))),w(u,e),a(e),l))),e=>d(g(u,e),(([e,,t=[],l,s])=>{const d=(...a)=>{var u,c;const v=r(a);v==r(t)?e(n,...a,...s(a)):i(t[v])?o(null!=(c=null==(u=l[v])?void 0:u.call(l,...a))?c:[],(e=>d(...a,e))):d(...a,t[v])};d()}))]})(),H=(e,n,t)=>d(C(e),(([l,,o])=>{if(!u(o,n)){const r=b();if(B(e)!=K(e))T(r,n);else{let e=n;for(;!i(e)&&!u(r,e);)T(r,e),e=g(l,e)}if(t)return r;w(o,n,r)}return g(o,n)})),J=(e,n)=>d(C(e),(([,,e])=>w(e,n))),K=e=>g(E,e),N={setRelationshipDefinition:(e,o,r,s)=>{return w(E,e,r),O(e,o,((n,t)=>{const l=b(),o=b(),r=b(),[s,a]=C(e);h(t,(([n,t],v)=>{i(n)||(T(o,n),d(g(a,n),(e=>{R(e,v),c(e)&&w(a,n)}))),i(t)||(T(o,t),u(a,t)||w(a,t,b()),T(g(a,t),v)),T(l,v),w(s,v,t),L(g(j,e),(n=>{u(H(e,n),v)&&T(r,n)}))})),n(),h(l,(n=>F(x,[e,n]))),h(o,(n=>F(S,[e,n]))),h(r,(n=>{J(e,n),F(j,[e,n])}))}),n(a=s)==l?e=>e(a):null!=a?a:()=>t),N;var a},delRelationshipDefinition:e=>(w(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:n=>D((t=>n(t,(n=>e.forEachRow(B(t),n))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,n)=>{var t;return g(null==(t=C(e))?void 0:t[0],n)},getLocalRowIds:(e,n)=>{var t;return v(g(null==(t=C(e))?void 0:t[1],n))},getLinkedRowIds:(e,n)=>i(C(e))?[n]:v(H(e,n,!0)),addRemoteRowIdListener:(e,n,t)=>q(t,x,[e,n]),addLocalRowIdsListener:(e,n,t)=>q(t,S,[e,n]),addLinkedRowIdsListener:(e,n,t)=>(H(e,n),q(t,j,[e,n])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return k(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),o=(e,n)=>e.forEach(n),r=e=>e.length,s=(e,...n)=>e.push(...n),i=e=>null==e,d=(e,n,t)=>i(e)?null==t?void 0:t():n(e),u=e=>Array.isArray(e),a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},c=e=>i(e)||0==(e=>e.size)(e),v=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},f=e=>e.clear(),h=(e,n)=>null==e?void 0:e.forEach(n),R=(e,n)=>null==e?void 0:e.delete(n),p=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),L=(e,n)=>h(e,((e,t)=>n(t,e))),w=(e,n,t)=>i(t)?(R(e,n),e):null==e?void 0:e.set(n,t),y=(e,n,t)=>(a(e,n)||w(e,n,t()),g(e,n)),I=(e,n,t,l,o=0)=>d((t?y:g)(e,n[o],o>r(n)-2?t:p),(s=>{if(o>r(n)-2)return(null==l?void 0:l(s))&&w(e,n[o]),s;const i=I(s,n,t,l,o+1);return c(s)&&w(e,n[o]),i})),b=e=>new Set(u(e)||i(e)?e:[e]),T=(e,n)=>null==e?void 0:e.add(n),m=/^\d+$/,k=Object.freeze,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=p(),x=p(),S=p(),j=p(),[z,A,D,M,B,C,,,O,W,$]=((e,n,l)=>{const s=e.hasRow,I=p(),m=p(),k=p(),E=p(),x=p(),S=(n,t,...l)=>{const r=y(x,n,b);return o(l,(n=>T(r,n)&&t&&e.callListener(n))),l},j=(n,...t)=>d(g(x,n),(l=>{o(0==r(t)?v(l):t,(n=>{e.delListener(n),R(l,n)})),c(l)&&w(x,n)})),z=(e,n)=>{w(I,e,n),a(m,e)||(w(m,e,[p(),p(),p(),p()]),w(k,e,p()),w(E,e,p()))},A=e=>{w(I,e),w(m,e),w(k,e),w(E,e),j(e)};return[()=>e,()=>{return[...null!=(n=null==(e=I)?void 0:e.keys())?n:[]];var e,n},e=>L(m,e),e=>a(m,e),e=>g(I,e),e=>g(m,e),(e,n)=>w(m,e,n),z,(n,l,d,c,v)=>{z(n,l);const R=p(),y=p(),I=g(k,n),b=g(E,n),T=n=>{const o=t=>e.getCell(l,n,t),d=g(I,n),a=s(l,n)?(f=c(o,n),i(f)?void 0:f+t):void 0;var f,h,p,L;if(d===a||u(d)&&u(a)&&(p=a,r(h=d)===r(p)&&(L=(e,n)=>p[n]===e,h.every(L)))||w(R,n,[d,a]),!i(v)){const e=g(b,n),t=s(l,n)?v(o,n):void 0;e!=t&&w(y,n,t)}},m=e=>{d((()=>{h(R,(([,e],n)=>w(I,n,e))),h(y,((e,n)=>w(b,n,e)))}),R,y,I,b,e),f(R),f(y)};L(I,T),e.hasTable(l)&&o(e.getRowIds(l),(e=>{a(I,e)||T(e)})),m(!0),j(n),S(n,0,e.addRowListener(l,null,((e,n,t)=>T(t))),e.addTableListener(l,(()=>m())))},A,()=>L(x,A),S,j]})(e),[q,F,G]=(e=>{let n;const[l,u]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?e.shift():null)?o:t+n++},n=>{m.test(n)&&r(e)<1e3&&s(e,n)}]})(),a=p();return[(e,o,r,s=[],i=(()=>[]))=>{null!=n||(n=N);const d=l(1);return w(a,d,[e,o,r,s,i]),T(I(o,null!=r?r:[t],b),d),d},(e,l,...i)=>o(((e,n=[t])=>{const l=[],i=(e,t)=>t==r(n)?s(l,e):null===n[t]?h(e,(e=>i(e,t+1))):o([n[t],null],(n=>i(g(e,n),t+1)));return i(e,0),l})(e,l),(e=>h(e,(e=>g(a,e)[0](n,...null!=l?l:[],...i))))),e=>d(g(a,e),(([,n,l])=>(I(n,null!=l?l:[t],void 0,(n=>(R(n,e),c(n)?1:0))),w(a,e),u(e),l))),e=>d(g(a,e),(([e,,t=[],l,s])=>{const d=(...u)=>{var a,c;const v=r(u);v==r(t)?e(n,...u,...s(u)):i(t[v])?o(null!=(c=null==(a=l[v])?void 0:a.call(l,...u))?c:[],(e=>d(...u,e))):d(...u,t[v])};d()}))]})(),H=(e,n,t)=>d(C(e),(([l,,o])=>{if(!a(o,n)){const r=b();if(B(e)!=K(e))T(r,n);else{let e=n;for(;!i(e)&&!a(r,e);)T(r,e),e=g(l,e)}if(t)return r;w(o,n,r)}return g(o,n)})),J=(e,n)=>d(C(e),(([,,e])=>w(e,n))),K=e=>g(E,e),N={setRelationshipDefinition:(e,o,r,s)=>{return w(E,e,r),O(e,o,((n,t)=>{const l=b(),o=b(),r=b(),[s,u]=C(e);h(t,(([n,t],v)=>{i(n)||(T(o,n),d(g(u,n),(e=>{R(e,v),c(e)&&w(u,n)}))),i(t)||(T(o,t),a(u,t)||w(u,t,b()),T(g(u,t),v)),T(l,v),w(s,v,t),L(g(j,e),(n=>{a(H(e,n),v)&&T(r,n)}))})),n(),h(l,(n=>F(x,[e,n]))),h(o,(n=>F(S,[e,n]))),h(r,(n=>{J(e,n),F(j,[e,n])}))}),n(u=s)==l?e=>e(u):null!=u?u:()=>t),N;var u},delRelationshipDefinition:e=>(w(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:n=>D((t=>n(t,(n=>e.forEachRow(B(t),n))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,n)=>{var t;return g(null==(t=C(e))?void 0:t[0],n)},getLocalRowIds:(e,n)=>{var t;return v(g(null==(t=C(e))?void 0:t[1],n))},getLinkedRowIds:(e,n)=>i(C(e))?[n]:v(H(e,n,!0)),addRemoteRowIdListener:(e,n,t)=>q(t,x,[e,n]),addLocalRowIdsListener:(e,n,t)=>q(t,S,[e,n]),addLinkedRowIdsListener:(e,n,t)=>(H(e,n),q(t,j,[e,n])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return k(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="",n=t(l),s=t(!0),r=t(0),a=t(t),o="type",u="default",i=e=>l+e,d=(e,t)=>e.forEach(t),c=(e,t)=>e.map(t),f=e=>e.length,v=(e,t,l)=>e.slice(t,l),h=(e,...t)=>e.push(...t),T=e=>JSON.stringify(e,((e,t)=>{return V(t,Map)?(l=(e,[t,l])=>(e[t]=l,e),n={},[...t].reduce(l,n)):t;var l,n})),g=JSON.parse,b=isFinite,V=(e,t)=>e instanceof t,y=e=>null==e,S=(e,t,l)=>y(e)?null==l?void 0:l():t(e),p=e=>e==n||e==s,w=e=>t(e)==a,m=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},I=e=>y(e)||0==(e=>e.size)(e),R=e=>e.clear(),C=(e,t)=>null==e?void 0:e.forEach(t),J=(e,t)=>null==e?void 0:e.delete(t),L=e=>new Map(e),E=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},F=(e,t)=>null==e?void 0:e.get(t),x=(e,t)=>C(e,((e,l)=>t(l,e))),z=(e,t,l)=>y(l)?(J(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,l)=>(m(e,t)||z(e,t,l()),F(e,t)),j=(e,t,l)=>{const n={},s=null!=t?t:e=>e;return C(e,((e,t)=>S(s(e),(e=>(null==l?void 0:l(e))?0:n[t]=e)))),n},k=(e,t)=>{const l=L(),n=null!=t?t:e=>e;return C(e,((e,t)=>l.set(t,n(e)))),l},A=e=>k(e,k),M=(e,t,l,n,s=0)=>S((l?O:F)(e,t[s],s>f(t)-2?l:L),(r=>{if(s>f(t)-2)return(null==n?void 0:n(r))&&z(e,t[s]),r;const a=M(r,t,l,n,s+1);return I(r)&&z(e,t[s]),a})),N=e=>new Set(Array.isArray(e)||y(e)?e:[e]),P=(e,t)=>null==e?void 0:e.add(t),B=/^\d+$/,D=()=>{const e=[];let t=0;return[()=>{var n;return null!=(n=e.shift())?n:l+t++},t=>{B.test(t)&&f(e)<1e3&&h(e,t)}]},W=Object,$=W.keys,q=W.isFrozen,G=W.freeze,H=e=>V(e,W)&&e.constructor==W,K=(e,t)=>!y(((e,t)=>S(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>c(W.entries(e),(([e,l])=>t(l,e))),X=e=>{return H(e)&&(t=$(e),0==f(t));var t},Y=e=>[e,e],Z=()=>[L(),L()],_=e=>{const l=t(e);return p(l)||l==r&&b(e)?l:void 0},ee=(e,t,l,n=z)=>{const s=(r=e=>!K(t,e),E(e).filter(r));var r;return d($(t),(n=>l(e,n,t[n]))),d(s,(t=>n(e,t))),e},te=(e,t,l)=>y(e)||!H(e)||X(e)||q(e)?(null==l||l(),!1):(U(e,((l,n)=>{t(l,n)||Q(e,n)})),!X(e)),le=(e,t,l)=>z(e,t,F(e,t)==-l?void 0:l),ne=()=>{let e,t,n,s,a=0;const b=L(),V=L(),B=L(),W=L(),$=L(),q=L(),H=L(),se=L(),re=L(),ae=L(),oe=L(),ue=L(),ie=N(),de=L(),ce=L(),fe=L(),ve=Z(),he=Z(),Te=Z(),ge=Z(),be=Z(),Ve=Z(),ye=Z(),Se=Z(),pe=Z(),we=Z(),me=Z(),Ie=Z(),Re=Z(),Ce=Z(),[Je,Le,Ee,Fe]=(e=>{let t;const[n,s]=D(),r=L();return[(e,s,a,o=[],u=(()=>[]))=>{null!=t||(t=Pt);const i=n();return z(r,i,[e,s,a,o,u]),P(M(s,null!=a?a:[l],N),i),i},(e,n,...s)=>d(((e,t=[l])=>{const n=[],s=(e,l)=>l==f(t)?h(n,e):null===t[l]?C(e,(e=>s(e,l+1))):d([t[l],null],(t=>s(F(e,t),l+1)));return s(e,0),n})(e,n),(e=>C(e,(e=>F(r,e)[0](t,...null!=n?n:[],...s))))),e=>S(F(r,e),(([,t,n])=>(M(t,null!=n?n:[l],void 0,(t=>(J(t,e),I(t)?1:0))),z(r,e),s(e),n))),e=>S(F(r,e),(([e,,l=[],n,s])=>{const r=(...a)=>{var o,u;const i=f(a);i==f(l)?e(t,...a,...s(a)):y(l[i])?d(null!=(u=null==(o=n[i])?void 0:o.call(n,...a))?u:[],(e=>r(...a,e))):r(...a,l[i])};r()}))]})(),xe=e=>{if(!te(e,((e,t)=>[o,u].includes(t))))return!1;const t=e.type;return!(!p(t)&&t!=r||(_(e.default)!=t&&Q(e,u),0))},ze=(t,l)=>(!e||m(re,l)||ut(l))&&te(t,((e,t)=>Oe(l,t,e)),(()=>ut(l))),Oe=(e,t,l,n)=>te(n?l:Me(l,e,t),((n,s)=>S(je(e,t,s,n),(e=>(l[s]=e,!0)),(()=>!1))),(()=>ut(e,t))),je=(t,l,n,s)=>e?S(F(F(re,t),n),(e=>_(s)!=e.type?ut(t,l,n,s,e.default):s),(()=>ut(t,l,n,s))):y(_(s))?ut(t,l,n,s):s,ke=(e,t)=>te(t?e:Ne(e),((t,l)=>S(Ae(l,t),(t=>(e[l]=t,!0)),(()=>!1))),(()=>it())),Ae=(e,l)=>t?S(F(oe,e),(t=>_(l)!=t.type?it(e,l,t.default):l),(()=>it(e,l))):y(_(l))?it(e,l):l,Me=(e,t,l)=>(S(F(ae,t),(([n,s])=>{C(n,((t,l)=>{K(e,l)||(e[l]=t)})),C(s,(n=>{K(e,n)||ut(t,l,n)}))})),e),Ne=e=>(t&&(C(ue,((t,l)=>{K(e,l)||(e[l]=t)})),C(ie,(t=>{K(e,t)||it(t)}))),e),Pe=e=>ee(re,e,((e,t,l)=>{const n=L(),s=N();ee(O(re,t,L),l,((e,t,l)=>{z(e,t,l),S(l.default,(e=>z(n,t,e)),(()=>P(s,t)))})),z(ae,t,[n,s])}),((e,t)=>{z(re,t),z(ae,t)})),Be=e=>ee(oe,e,((e,t,l)=>{z(oe,t,l),S(l.default,(e=>z(ue,t,e)),(()=>P(ie,t)))}),((e,t)=>{z(oe,t),z(ue,t),J(ie,t)})),De=e=>X(e)?zt():Jt(e),We=e=>ee(ce,e,((e,t,l)=>$e(t,l)),((e,t)=>Ze(t))),$e=(e,t)=>ee(O(ce,e,(()=>(lt(e,1),L()))),t,((t,l,n)=>qe(e,t,l,n)),((t,l)=>_e(e,t,l))),qe=(e,t,l,n,s)=>ee(O(t,l,(()=>(nt(e,l,1),L()))),n,((t,n,s)=>Ge(e,l,t,n,s)),((n,r)=>et(e,t,l,n,r,s))),Ge=(e,t,l,n,s)=>{m(l,n)||st(e,t,n,1);const r=F(l,n);s!==r&&(rt(e,t,n,r,s),z(l,n,s))},He=(e,t,l,n,s)=>S(F(t,l),(t=>Ge(e,l,t,n,s)),(()=>qe(e,t,l,Me({[n]:s},e,l)))),Ke=e=>X(e)?Ot():Lt(e),Qe=e=>ee(fe,e,((e,t,l)=>Ue(t,l)),((e,t)=>tt(t))),Ue=(e,t)=>{m(fe,e)||at(e,1);const l=F(fe,e);t!==l&&(ot(e,l,t),z(fe,e,t))},Xe=e=>{const[t]=O(de,e,D),l=t();return m(F(ce,e),l)?Xe(e):l},Ye=e=>{var t;return null!=(t=F(ce,e))?t:$e(e,{})},Ze=e=>$e(e,{}),_e=(e,t,l)=>{const[,n]=O(de,e,D);n(l),qe(e,t,l,{},!0)},et=(e,t,l,n,s,r)=>{var a;const o=F(null==(a=F(ae,e))?void 0:a[0],s);if(!y(o)&&!r)return Ge(e,l,n,s,o);const u=t=>{rt(e,l,t,F(n,t)),st(e,l,t,-1),z(n,t)};y(o)?u(s):x(n,u),I(n)&&(nt(e,l,-1),I(z(t,l))&&(lt(e,-1),z(ce,e),z(de,e)))},tt=e=>{const t=F(ue,e);if(!y(t))return Ue(e,t);ot(e,F(fe,e)),at(e,-1),z(fe,e)},lt=(e,t)=>le(b,e,t),nt=(e,t,l)=>le(O(V,e,L),t,l),st=(e,t,l,n)=>le(O(O(B,e,L),t,L),l,n),rt=(e,t,l,n,s)=>O(O(O(W,e,L),t,L),l,(()=>[n,0]))[1]=s,at=(e,t)=>le($,e,t),ot=(e,t,l)=>O(q,e,(()=>[t,0]))[1]=l,ut=(e,t,l,n,s)=>(h(O(O(O(H,e,L),t,L),l,(()=>[])),n),s),it=(e,t,l)=>(h(O(se,e,(()=>[])),t),l),dt=(e,t,l)=>S(F(F(F(W,e),t),l),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(mt(e,t,l))])),ct=e=>S(F(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ct(e))])),ft=e=>I(H)||I(pe[e])?0:C(e?k(H,A):H,((t,l)=>C(t,((t,n)=>C(t,((t,s)=>Le(pe[e],[l,n,s],t))))))),vt=e=>I(se)||I(we[e])?0:C(e?k(se):se,((t,l)=>Le(we[e],[l],t))),ht=(e,t,l)=>{if(!I(t))return Le(e,l),1},Tt=e=>{const t=I(be[e]),l=I(ye[e])&&I(ge[e])&&t&&I(he[e]),n=I(Se[e])&&I(Ve[e])&&I(Te[e])&&I(ve[e]);if(!l||!n){const s=e?[k(b),A(V),k(B,A),k(W,A)]:[b,V,B,W];if(!l){C(s[2],((t,l)=>C(t,((t,n)=>ht(ye[e],t,[l,n])))));const l=N();C(s[1],((n,s)=>{ht(ge[e],n,[s])&&!t&&(Le(be[e],[s,null]),P(l,s))})),t||C(s[3],((t,n)=>{if(!m(l,n)){const l=N();C(t,(e=>C(e,(([t,n],s)=>n!==t?P(l,s):J(e,s))))),C(l,(t=>Le(be[e],[n,t])))}})),ht(he[e],s[0])}if(!n){let t;C(s[3],((l,n)=>{let s;C(l,((l,r)=>{let a;C(l,(([l,o],u)=>{o!==l&&(Le(Se[e],[n,r,u],o,l,dt),t=s=a=1)})),a&&Le(Ve[e],[n,r],dt)})),s&&Le(Te[e],[n],dt)})),t&&Le(ve[e],void 0,dt)}}},gt=e=>{const t=I(Ie[e]),l=I(Re[e])&&I(me[e]);if(!t||!l){const n=e?[k($),k(q)]:[$,q];if(t||ht(Ie[e],n[0]),!l){let t;C(n[1],(([l,n],s)=>{n!==l&&(Le(Re[e],[s],n,l,ct),t=1)})),t&&Le(me[e],void 0,ct)}}},bt=(e,...t)=>(At((()=>e(...c(t,i)))),Pt),Vt=()=>j(ce,(e=>j(e,j))),yt=()=>E(ce),St=e=>E(F(ce,i(e))),pt=(e,t,l,n=0,s)=>{return c(v((a=F(ce,i(e)),o=(e,l)=>[y(t)?l:F(e,i(t)),l],r=([e],[t])=>(e<t?-1:1)*(l?-1:1),c([...null!=(u=null==a?void 0:a.entries())?u:[]],(([e,t])=>o(t,e))).sort(r)),n,y(s)?s:n+s),(([,e])=>e));var r,a,o,u},wt=(e,t)=>E(F(F(ce,i(e)),i(t))),mt=(e,t,l)=>F(F(F(ce,i(e)),i(t)),i(l)),It=()=>j(fe),Rt=()=>E(fe),Ct=e=>F(fe,i(e)),Jt=e=>bt((()=>(e=>te(e,ze,ut))(e)?We(e):0)),Lt=e=>bt((()=>ke(e)?Qe(e):0)),Et=e=>{try{De(g(e))}catch(e){}return Pt},Ft=t=>bt((()=>{if((e=te(t,(e=>te(e,xe))))&&(Pe(t),!I(ce))){const e=Vt();zt(),Jt(e)}})),xt=e=>bt((()=>{if(t=(e=>te(e,xe))(e)){const l=It();kt(),Ot(),t=!0,Be(e),Lt(l)}})),zt=()=>bt((()=>We({}))),Ot=()=>bt((()=>Qe({}))),jt=()=>bt((()=>{Pe({}),e=!1})),kt=()=>bt((()=>{Be({}),t=!1})),At=(e,t)=>{if(-1==a)return;Mt();const l=e();return Nt(t),l},Mt=()=>(a++,Pt),Nt=e=>(a>0&&(a--,0==a&&(n=!I(W),s=!I(q),a=1,ft(1),n&&Tt(1),vt(1),s&&gt(1),a=-1,(null==e?void 0:e(j(W,(e=>j(e,(e=>j(e,(e=>[...e]),(([e,t])=>e===t))),X)),X),j(H,(e=>j(e,j))),j(q,(e=>[...e]),(([e,t])=>e===t)),j(se)))&&(a=1,C(W,((e,t)=>C(e,((e,l)=>C(e,(([e],n)=>((e,t,l,n,s)=>y(s)?e.delCell(t,l,n,!0):e.setCell(t,l,n,s))(Pt,t,l,n,e))))))),C(q,(([e],t)=>((e,t,l)=>y(l)?e.delValue(t):e.setValue(t,l))(Pt,t,e))),a=-1,n=s=!1),Le(Ce[0],void 0,n,s),ft(0),n&&Tt(0),vt(0),s&&gt(0),Le(Ce[1],void 0,n,s),a=0,d([b,V,B,W,H,$,q,se],R))),Pt),Pt={getTables:Vt,getTableIds:yt,getTable:e=>j(F(ce,i(e)),j),getRowIds:St,getSortedRowIds:pt,getRow:(e,t)=>j(F(F(ce,i(e)),i(t))),getCellIds:wt,getCell:mt,getValues:It,getValueIds:Rt,getValue:Ct,hasTables:()=>!I(ce),hasTable:e=>m(ce,i(e)),hasRow:(e,t)=>m(F(ce,i(e)),i(t)),hasCell:(e,t,l)=>m(F(F(ce,i(e)),i(t)),i(l)),hasValues:()=>!I(fe),hasValue:e=>m(fe,i(e)),getTablesJson:()=>T(ce),getValuesJson:()=>T(fe),getJson:()=>T([ce,fe]),getTablesSchemaJson:()=>T(re),getValuesSchemaJson:()=>T(oe),getSchemaJson:()=>T([re,oe]),setTables:Jt,setTable:(e,t)=>bt((e=>ze(t,e)?$e(e,t):0),e),setRow:(e,t,l)=>bt(((e,t)=>Oe(e,t,l)?qe(e,Ye(e),t,l):0),e,t),addRow:(e,t)=>At((()=>{let l;return Oe(e,l,t)&&(e=i(e),qe(e,Ye(e),l=Xe(e),t)),l})),setPartialRow:(e,t,l)=>bt(((e,t)=>{if(Oe(e,t,l,1)){const n=Ye(e);U(l,((l,s)=>He(e,n,t,s,l)))}}),e,t),setCell:(e,t,l,n)=>bt(((e,t,l)=>S(je(e,t,l,w(n)?n(mt(e,t,l)):n),(n=>He(e,Ye(e),t,l,n)))),e,t,l),setValues:Lt,setPartialValues:e=>bt((()=>ke(e,1)?U(e,((e,t)=>Ue(t,e))):0)),setValue:(e,t)=>bt((e=>S(Ae(e,w(t)?t(Ct(e)):t),(t=>Ue(e,t)))),e),setTablesJson:Et,setValuesJson:e=>{try{Ke(g(e))}catch(e){}return Pt},setJson:e=>{try{const[t,l]=g(e);De(t),Ke(l)}catch(t){Et(e)}return Pt},setTablesSchema:Ft,setValuesSchema:xt,setSchema:(e,t)=>bt((()=>{Ft(e),xt(t)})),delTables:zt,delTable:e=>bt((e=>m(ce,e)?Ze(e):0),e),delRow:(e,t)=>bt(((e,t)=>S(F(ce,e),(l=>m(l,t)?_e(e,l,t):0))),e,t),delCell:(e,t,l,n)=>bt(((e,t,l)=>S(F(ce,e),(s=>S(F(s,t),(r=>m(r,l)?et(e,s,t,r,l,n):0))))),e,t,l),delValues:Ot,delValue:e=>bt((e=>m(fe,e)?tt(e):0),e),delTablesSchema:jt,delValuesSchema:kt,delSchema:()=>bt((()=>{jt(),kt()})),transaction:At,startTransaction:Mt,finishTransaction:Nt,forEachTable:e=>C(ce,((t,l)=>e(l,(e=>C(t,((t,l)=>e(l,(e=>x(t,e))))))))),forEachRow:(e,t)=>C(F(ce,i(e)),((e,l)=>t(l,(t=>x(e,t))))),forEachCell:(e,t,l)=>x(F(F(ce,i(e)),i(t)),l),forEachValue:e=>x(fe,e),addSortedRowIdsListener:(e,t,l,n,s,r,a)=>{let o=pt(e,t,l,n,s);return Je((()=>{const a=pt(e,t,l,n,s);var u,i,d;i=o,f(u=a)===f(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=a,r(Pt,e,t,l,n,s,o))}),be[a?1:0],[e,t],[yt])},addWillFinishTransactionListener:e=>Je(e,Ce[0]),addDidFinishTransactionListener:e=>Je(e,Ce[1]),callListener:e=>(Fe(e),Pt),delListener:e=>(Ee(e),Pt),getListenerStats:()=>({}),createStore:ne};return U({Tables:[0,ve],TableIds:[0,he],Table:[1,Te,[yt]],RowIds:[1,ge,[yt]],Row:[2,Ve,[yt,St]],CellIds:[2,ye,[yt,St]],Cell:[3,Se,[yt,St,wt],e=>Y(mt(...e))],InvalidCell:[3,pe],Values:[0,me],ValueIds:[0,Ie],Value:[1,Re,[Rt],e=>Y(Ct(e[0]))],InvalidValue:[1,we]},(([e,t,l,n],s)=>{Pt["add"+s+"Listener"]=(...s)=>Je(s[e],t[s[e+1]?1:0],e>0?v(s,0,e):void 0,l,n)})),G(Pt)};e.createStore=ne},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="",n=t(l),s=t(!0),a=t(0),r=t(t),o="type",u="default",i=e=>l+e,d=(e,t)=>e.forEach(t),c=(e,t)=>e.map(t),f=e=>e.length,v=(e,t,l)=>e.slice(t,l),h=(e,...t)=>e.push(...t),T=e=>JSON.stringify(e,((e,t)=>{return V(t,Map)?(l=(e,[t,l])=>(e[t]=l,e),n={},[...t].reduce(l,n)):t;var l,n})),g=JSON.parse,b=isFinite,V=(e,t)=>e instanceof t,y=e=>null==e,S=(e,t,l)=>y(e)?null==l?void 0:l():t(e),p=e=>e==n||e==s,w=e=>t(e)==r,m=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},I=e=>y(e)||0==(e=>e.size)(e),R=e=>e.clear(),C=(e,t)=>null==e?void 0:e.forEach(t),J=(e,t)=>null==e?void 0:e.delete(t),L=e=>new Map(e),E=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},F=(e,t)=>null==e?void 0:e.get(t),x=(e,t)=>C(e,((e,l)=>t(l,e))),z=(e,t,l)=>y(l)?(J(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,l)=>(m(e,t)||z(e,t,l()),F(e,t)),j=(e,t,l)=>{const n={},s=null!=t?t:e=>e;return C(e,((e,t)=>S(s(e),(e=>(null==l?void 0:l(e))?0:n[t]=e)))),n},k=(e,t)=>{const l=L(),n=null!=t?t:e=>e;return C(e,((e,t)=>l.set(t,n(e)))),l},A=e=>k(e,k),M=(e,t,l,n,s=0)=>S((l?O:F)(e,t[s],s>f(t)-2?l:L),(a=>{if(s>f(t)-2)return(null==n?void 0:n(a))&&z(e,t[s]),a;const r=M(a,t,l,n,s+1);return I(a)&&z(e,t[s]),r})),N=e=>new Set(Array.isArray(e)||y(e)?e:[e]),P=(e,t)=>null==e?void 0:e.add(t),B=/^\d+$/,D=()=>{const e=[];let t=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:l+t++},t=>{B.test(t)&&f(e)<1e3&&h(e,t)}]},W=Object,$=W.keys,q=W.isFrozen,G=W.freeze,H=e=>V(e,W)&&e.constructor==W,K=(e,t)=>!y(((e,t)=>S(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>c(W.entries(e),(([e,l])=>t(l,e))),X=e=>{return H(e)&&(t=$(e),0==f(t));var t},Y=e=>[e,e],Z=()=>[L(),L()],_=e=>{const l=t(e);return p(l)||l==a&&b(e)?l:void 0},ee=(e,t,l,n=z)=>(U(t,((t,n)=>l(e,n,t))),x(e,(l=>K(t,l)?0:n(e,l))),e),te=(e,t,l)=>y(e)||!H(e)||X(e)||q(e)?(null==l||l(),!1):(U(e,((l,n)=>{t(l,n)||Q(e,n)})),!X(e)),le=(e,t,l)=>z(e,t,F(e,t)==-l?void 0:l),ne=()=>{let e,t,n,s,r=0;const b=L(),V=L(),B=L(),W=L(),$=L(),q=L(),H=L(),se=L(),ae=L(),re=L(),oe=L(),ue=L(),ie=N(),de=L(),ce=L(),fe=L(),ve=Z(),he=Z(),Te=Z(),ge=Z(),be=Z(),Ve=Z(),ye=Z(),Se=Z(),pe=Z(),we=Z(),me=Z(),Ie=Z(),Re=Z(),Ce=Z(),[Je,Le,Ee,Fe]=(e=>{let t;const[n,s]=D(),a=L();return[(e,s,r,o=[],u=(()=>[]))=>{null!=t||(t=Pt);const i=n(1);return z(a,i,[e,s,r,o,u]),P(M(s,null!=r?r:[l],N),i),i},(e,n,...s)=>d(((e,t=[l])=>{const n=[],s=(e,l)=>l==f(t)?h(n,e):null===t[l]?C(e,(e=>s(e,l+1))):d([t[l],null],(t=>s(F(e,t),l+1)));return s(e,0),n})(e,n),(e=>C(e,(e=>F(a,e)[0](t,...null!=n?n:[],...s))))),e=>S(F(a,e),(([,t,n])=>(M(t,null!=n?n:[l],void 0,(t=>(J(t,e),I(t)?1:0))),z(a,e),s(e),n))),e=>S(F(a,e),(([e,,l=[],n,s])=>{const a=(...r)=>{var o,u;const i=f(r);i==f(l)?e(t,...r,...s(r)):y(l[i])?d(null!=(u=null==(o=n[i])?void 0:o.call(n,...r))?u:[],(e=>a(...r,e))):a(...r,l[i])};a()}))]})(),xe=e=>{if(!te(e,((e,t)=>[o,u].includes(t))))return!1;const t=e.type;return!(!p(t)&&t!=a||(_(e.default)!=t&&Q(e,u),0))},ze=(t,l)=>(!e||m(ae,l)||ut(l))&&te(t,((e,t)=>Oe(l,t,e)),(()=>ut(l))),Oe=(e,t,l,n)=>te(n?l:Me(l,e,t),((n,s)=>S(je(e,t,s,n),(e=>(l[s]=e,!0)),(()=>!1))),(()=>ut(e,t))),je=(t,l,n,s)=>e?S(F(F(ae,t),n),(e=>_(s)!=e.type?ut(t,l,n,s,e.default):s),(()=>ut(t,l,n,s))):y(_(s))?ut(t,l,n,s):s,ke=(e,t)=>te(t?e:Ne(e),((t,l)=>S(Ae(l,t),(t=>(e[l]=t,!0)),(()=>!1))),(()=>it())),Ae=(e,l)=>t?S(F(oe,e),(t=>_(l)!=t.type?it(e,l,t.default):l),(()=>it(e,l))):y(_(l))?it(e,l):l,Me=(e,t,l)=>(S(F(re,t),(([n,s])=>{C(n,((t,l)=>{K(e,l)||(e[l]=t)})),C(s,(n=>{K(e,n)||ut(t,l,n)}))})),e),Ne=e=>(t&&(C(ue,((t,l)=>{K(e,l)||(e[l]=t)})),C(ie,(t=>{K(e,t)||it(t)}))),e),Pe=e=>ee(ae,e,((e,t,l)=>{const n=L(),s=N();ee(O(ae,t,L),l,((e,t,l)=>{z(e,t,l),S(l.default,(e=>z(n,t,e)),(()=>P(s,t)))})),z(re,t,[n,s])}),((e,t)=>{z(ae,t),z(re,t)})),Be=e=>ee(oe,e,((e,t,l)=>{z(oe,t,l),S(l.default,(e=>z(ue,t,e)),(()=>P(ie,t)))}),((e,t)=>{z(oe,t),z(ue,t),J(ie,t)})),De=e=>X(e)?zt():Jt(e),We=e=>ee(ce,e,((e,t,l)=>$e(t,l)),((e,t)=>Ze(t))),$e=(e,t)=>ee(O(ce,e,(()=>(lt(e,1),L()))),t,((t,l,n)=>qe(e,t,l,n)),((t,l)=>_e(e,t,l))),qe=(e,t,l,n,s)=>ee(O(t,l,(()=>(nt(e,l,1),L()))),n,((t,n,s)=>Ge(e,l,t,n,s)),((n,a)=>et(e,t,l,n,a,s))),Ge=(e,t,l,n,s)=>{m(l,n)||st(e,t,n,1);const a=F(l,n);s!==a&&(at(e,t,n,a,s),z(l,n,s))},He=(e,t,l,n,s)=>S(F(t,l),(t=>Ge(e,l,t,n,s)),(()=>qe(e,t,l,Me({[n]:s},e,l)))),Ke=e=>X(e)?Ot():Lt(e),Qe=e=>ee(fe,e,((e,t,l)=>Ue(t,l)),((e,t)=>tt(t))),Ue=(e,t)=>{m(fe,e)||rt(e,1);const l=F(fe,e);t!==l&&(ot(e,l,t),z(fe,e,t))},Xe=(e,t)=>{const[l]=O(de,e,D),n=l(t);return m(F(ce,e),n)?Xe(e,t):n},Ye=e=>{var t;return null!=(t=F(ce,e))?t:$e(e,{})},Ze=e=>$e(e,{}),_e=(e,t,l)=>{const[,n]=O(de,e,D);n(l),qe(e,t,l,{},!0)},et=(e,t,l,n,s,a)=>{var r;const o=F(null==(r=F(re,e))?void 0:r[0],s);if(!y(o)&&!a)return Ge(e,l,n,s,o);const u=t=>{at(e,l,t,F(n,t)),st(e,l,t,-1),z(n,t)};y(o)?u(s):x(n,u),I(n)&&(nt(e,l,-1),I(z(t,l))&&(lt(e,-1),z(ce,e),z(de,e)))},tt=e=>{const t=F(ue,e);if(!y(t))return Ue(e,t);ot(e,F(fe,e)),rt(e,-1),z(fe,e)},lt=(e,t)=>le(b,e,t),nt=(e,t,l)=>le(O(V,e,L),t,l),st=(e,t,l,n)=>le(O(O(B,e,L),t,L),l,n),at=(e,t,l,n,s)=>O(O(O(W,e,L),t,L),l,(()=>[n,0]))[1]=s,rt=(e,t)=>le($,e,t),ot=(e,t,l)=>O(q,e,(()=>[t,0]))[1]=l,ut=(e,t,l,n,s)=>(h(O(O(O(H,e,L),t,L),l,(()=>[])),n),s),it=(e,t,l)=>(h(O(se,e,(()=>[])),t),l),dt=(e,t,l)=>S(F(F(F(W,e),t),l),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(mt(e,t,l))])),ct=e=>S(F(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ct(e))])),ft=e=>I(H)||I(pe[e])?0:C(e?k(H,A):H,((t,l)=>C(t,((t,n)=>C(t,((t,s)=>Le(pe[e],[l,n,s],t))))))),vt=e=>I(se)||I(we[e])?0:C(e?k(se):se,((t,l)=>Le(we[e],[l],t))),ht=(e,t,l)=>{if(!I(t))return Le(e,l),1},Tt=e=>{const t=I(be[e]),l=I(ye[e])&&I(ge[e])&&t&&I(he[e]),n=I(Se[e])&&I(Ve[e])&&I(Te[e])&&I(ve[e]);if(!l||!n){const s=e?[k(b),A(V),k(B,A),k(W,A)]:[b,V,B,W];if(!l){C(s[2],((t,l)=>C(t,((t,n)=>ht(ye[e],t,[l,n])))));const l=N();C(s[1],((n,s)=>{ht(ge[e],n,[s])&&!t&&(Le(be[e],[s,null]),P(l,s))})),t||C(s[3],((t,n)=>{if(!m(l,n)){const l=N();C(t,(e=>C(e,(([t,n],s)=>n!==t?P(l,s):J(e,s))))),C(l,(t=>Le(be[e],[n,t])))}})),ht(he[e],s[0])}if(!n){let t;C(s[3],((l,n)=>{let s;C(l,((l,a)=>{let r;C(l,(([l,o],u)=>{o!==l&&(Le(Se[e],[n,a,u],o,l,dt),t=s=r=1)})),r&&Le(Ve[e],[n,a],dt)})),s&&Le(Te[e],[n],dt)})),t&&Le(ve[e],void 0,dt)}}},gt=e=>{const t=I(Ie[e]),l=I(Re[e])&&I(me[e]);if(!t||!l){const n=e?[k($),k(q)]:[$,q];if(t||ht(Ie[e],n[0]),!l){let t;C(n[1],(([l,n],s)=>{n!==l&&(Le(Re[e],[s],n,l,ct),t=1)})),t&&Le(me[e],void 0,ct)}}},bt=(e,...t)=>(At((()=>e(...c(t,i)))),Pt),Vt=()=>j(ce,(e=>j(e,j))),yt=()=>E(ce),St=e=>E(F(ce,i(e))),pt=(e,t,l,n=0,s)=>{return c(v((r=F(ce,i(e)),o=(e,l)=>[y(t)?l:F(e,i(t)),l],a=([e],[t])=>(e<t?-1:1)*(l?-1:1),c([...null!=(u=null==r?void 0:r.entries())?u:[]],(([e,t])=>o(t,e))).sort(a)),n,y(s)?s:n+s),(([,e])=>e));var a,r,o,u},wt=(e,t)=>E(F(F(ce,i(e)),i(t))),mt=(e,t,l)=>F(F(F(ce,i(e)),i(t)),i(l)),It=()=>j(fe),Rt=()=>E(fe),Ct=e=>F(fe,i(e)),Jt=e=>bt((()=>(e=>te(e,ze,ut))(e)?We(e):0)),Lt=e=>bt((()=>ke(e)?Qe(e):0)),Et=e=>{try{De(g(e))}catch(e){}return Pt},Ft=t=>bt((()=>{if((e=te(t,(e=>te(e,xe))))&&(Pe(t),!I(ce))){const e=Vt();zt(),Jt(e)}})),xt=e=>bt((()=>{if(t=(e=>te(e,xe))(e)){const l=It();kt(),Ot(),t=!0,Be(e),Lt(l)}})),zt=()=>bt((()=>We({}))),Ot=()=>bt((()=>Qe({}))),jt=()=>bt((()=>{Pe({}),e=!1})),kt=()=>bt((()=>{Be({}),t=!1})),At=(e,t)=>{if(-1==r)return;Mt();const l=e();return Nt(t),l},Mt=()=>(r++,Pt),Nt=e=>(r>0&&(r--,0==r&&(n=!I(W),s=!I(q),r=1,ft(1),n&&Tt(1),vt(1),s&&gt(1),r=-1,(null==e?void 0:e(j(W,(e=>j(e,(e=>j(e,(e=>[...e]),(([e,t])=>e===t))),X)),X),j(H,(e=>j(e,j))),j(q,(e=>[...e]),(([e,t])=>e===t)),j(se)))&&(r=1,C(W,((e,t)=>C(e,((e,l)=>C(e,(([e],n)=>((e,t,l,n,s)=>y(s)?e.delCell(t,l,n,!0):e.setCell(t,l,n,s))(Pt,t,l,n,e))))))),C(q,(([e],t)=>((e,t,l)=>y(l)?e.delValue(t):e.setValue(t,l))(Pt,t,e))),r=-1,n=s=!1),Le(Ce[0],void 0,n,s),ft(0),n&&Tt(0),vt(0),s&&gt(0),Le(Ce[1],void 0,n,s),r=0,d([b,V,B,W,H,$,q,se],R))),Pt),Pt={getTables:Vt,getTableIds:yt,getTable:e=>j(F(ce,i(e)),j),getRowIds:St,getSortedRowIds:pt,getRow:(e,t)=>j(F(F(ce,i(e)),i(t))),getCellIds:wt,getCell:mt,getValues:It,getValueIds:Rt,getValue:Ct,hasTables:()=>!I(ce),hasTable:e=>m(ce,i(e)),hasRow:(e,t)=>m(F(ce,i(e)),i(t)),hasCell:(e,t,l)=>m(F(F(ce,i(e)),i(t)),i(l)),hasValues:()=>!I(fe),hasValue:e=>m(fe,i(e)),getTablesJson:()=>T(ce),getValuesJson:()=>T(fe),getJson:()=>T([ce,fe]),getTablesSchemaJson:()=>T(ae),getValuesSchemaJson:()=>T(oe),getSchemaJson:()=>T([ae,oe]),setTables:Jt,setTable:(e,t)=>bt((e=>ze(t,e)?$e(e,t):0),e),setRow:(e,t,l)=>bt(((e,t)=>Oe(e,t,l)?qe(e,Ye(e),t,l):0),e,t),addRow:(e,t,l=!0)=>At((()=>{let n;return Oe(e,n,t)&&(e=i(e),qe(e,Ye(e),n=Xe(e,l?1:0),t)),n})),setPartialRow:(e,t,l)=>bt(((e,t)=>{if(Oe(e,t,l,1)){const n=Ye(e);U(l,((l,s)=>He(e,n,t,s,l)))}}),e,t),setCell:(e,t,l,n)=>bt(((e,t,l)=>S(je(e,t,l,w(n)?n(mt(e,t,l)):n),(n=>He(e,Ye(e),t,l,n)))),e,t,l),setValues:Lt,setPartialValues:e=>bt((()=>ke(e,1)?U(e,((e,t)=>Ue(t,e))):0)),setValue:(e,t)=>bt((e=>S(Ae(e,w(t)?t(Ct(e)):t),(t=>Ue(e,t)))),e),setTablesJson:Et,setValuesJson:e=>{try{Ke(g(e))}catch(e){}return Pt},setJson:e=>{try{const[t,l]=g(e);De(t),Ke(l)}catch(t){Et(e)}return Pt},setTablesSchema:Ft,setValuesSchema:xt,setSchema:(e,t)=>bt((()=>{Ft(e),xt(t)})),delTables:zt,delTable:e=>bt((e=>m(ce,e)?Ze(e):0),e),delRow:(e,t)=>bt(((e,t)=>S(F(ce,e),(l=>m(l,t)?_e(e,l,t):0))),e,t),delCell:(e,t,l,n)=>bt(((e,t,l)=>S(F(ce,e),(s=>S(F(s,t),(a=>m(a,l)?et(e,s,t,a,l,n):0))))),e,t,l),delValues:Ot,delValue:e=>bt((e=>m(fe,e)?tt(e):0),e),delTablesSchema:jt,delValuesSchema:kt,delSchema:()=>bt((()=>{jt(),kt()})),transaction:At,startTransaction:Mt,finishTransaction:Nt,forEachTable:e=>C(ce,((t,l)=>e(l,(e=>C(t,((t,l)=>e(l,(e=>x(t,e))))))))),forEachRow:(e,t)=>C(F(ce,i(e)),((e,l)=>t(l,(t=>x(e,t))))),forEachCell:(e,t,l)=>x(F(F(ce,i(e)),i(t)),l),forEachValue:e=>x(fe,e),addSortedRowIdsListener:(e,t,l,n,s,a,r)=>{let o=pt(e,t,l,n,s);return Je((()=>{const r=pt(e,t,l,n,s);var u,i,d;i=o,f(u=r)===f(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=r,a(Pt,e,t,l,n,s,o))}),be[r?1:0],[e,t],[yt])},addWillFinishTransactionListener:e=>Je(e,Ce[0]),addDidFinishTransactionListener:e=>Je(e,Ce[1]),callListener:e=>(Fe(e),Pt),delListener:e=>(Ee(e),Pt),getListenerStats:()=>({}),createStore:ne};return U({Tables:[0,ve],TableIds:[0,he],Table:[1,Te,[yt]],RowIds:[1,ge,[yt]],Row:[2,Ve,[yt,St]],CellIds:[2,ye,[yt,St]],Cell:[3,Se,[yt,St,wt],e=>Y(mt(...e))],InvalidCell:[3,pe],Values:[0,me],ValueIds:[0,Ie],Value:[1,Re,[Rt],e=>Y(Ct(e[0]))],InvalidValue:[1,we]},(([e,t,l,n],s)=>{Pt["add"+s+"Listener"]=(...s)=>Je(s[e],t[s[e+1]?1:0],e>0?v(s,0,e):void 0,l,n)})),G(Pt)};e.createStore=ne},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file