tinybase 4.1.0-beta.0 → 4.1.0-beta.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 (74) hide show
  1. package/lib/cjs/queries.cjs +1 -1
  2. package/lib/cjs/queries.cjs.gz +0 -0
  3. package/lib/cjs/tinybase.cjs +1 -1
  4. package/lib/cjs/tinybase.cjs.gz +0 -0
  5. package/lib/cjs/tools.cjs +1 -1
  6. package/lib/cjs/tools.cjs.gz +0 -0
  7. package/lib/cjs/ui-react-dom.cjs +1 -0
  8. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  9. package/lib/cjs/ui-react.cjs +1 -1
  10. package/lib/cjs/ui-react.cjs.gz +0 -0
  11. package/lib/cjs-es6/queries.cjs +1 -1
  12. package/lib/cjs-es6/queries.cjs.gz +0 -0
  13. package/lib/cjs-es6/tinybase.cjs +1 -1
  14. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  15. package/lib/cjs-es6/tools.cjs +1 -1
  16. package/lib/cjs-es6/tools.cjs.gz +0 -0
  17. package/lib/cjs-es6/ui-react-dom.cjs +1 -0
  18. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  19. package/lib/cjs-es6/ui-react.cjs +1 -1
  20. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  21. package/lib/debug/queries.js +1 -0
  22. package/lib/debug/tinybase.js +1 -0
  23. package/lib/debug/tools.js +25 -4
  24. package/lib/debug/ui-react-dom.js +292 -0
  25. package/lib/debug/ui-react.js +43 -13
  26. package/lib/es6/queries.js +1 -1
  27. package/lib/es6/queries.js.gz +0 -0
  28. package/lib/es6/tinybase.js +1 -1
  29. package/lib/es6/tinybase.js.gz +0 -0
  30. package/lib/es6/tools.js +1 -1
  31. package/lib/es6/tools.js.gz +0 -0
  32. package/lib/es6/ui-react-dom.js +1 -0
  33. package/lib/es6/ui-react-dom.js.gz +0 -0
  34. package/lib/es6/ui-react.js +1 -1
  35. package/lib/es6/ui-react.js.gz +0 -0
  36. package/lib/queries.js +1 -1
  37. package/lib/queries.js.gz +0 -0
  38. package/lib/tinybase.js +1 -1
  39. package/lib/tinybase.js.gz +0 -0
  40. package/lib/tools.js +1 -1
  41. package/lib/tools.js.gz +0 -0
  42. package/lib/types/queries.d.ts +67 -0
  43. package/lib/types/ui-react-dom.d.ts +916 -0
  44. package/lib/types/ui-react.d.ts +328 -76
  45. package/lib/types/with-schemas/internal/ui-react.d.ts +23 -8
  46. package/lib/types/with-schemas/queries.d.ts +76 -0
  47. package/lib/types/with-schemas/ui-react-dom.d.ts +993 -0
  48. package/lib/types/with-schemas/ui-react.d.ts +325 -68
  49. package/lib/ui-react-dom.js +1 -0
  50. package/lib/ui-react-dom.js.gz +0 -0
  51. package/lib/ui-react.js +1 -1
  52. package/lib/ui-react.js.gz +0 -0
  53. package/lib/umd/queries.js +1 -1
  54. package/lib/umd/queries.js.gz +0 -0
  55. package/lib/umd/tinybase.js +1 -1
  56. package/lib/umd/tinybase.js.gz +0 -0
  57. package/lib/umd/tools.js +1 -1
  58. package/lib/umd/tools.js.gz +0 -0
  59. package/lib/umd/ui-react-dom.js +1 -0
  60. package/lib/umd/ui-react-dom.js.gz +0 -0
  61. package/lib/umd/ui-react.js +1 -1
  62. package/lib/umd/ui-react.js.gz +0 -0
  63. package/lib/umd-es6/queries.js +1 -1
  64. package/lib/umd-es6/queries.js.gz +0 -0
  65. package/lib/umd-es6/tinybase.js +1 -1
  66. package/lib/umd-es6/tinybase.js.gz +0 -0
  67. package/lib/umd-es6/tools.js +1 -1
  68. package/lib/umd-es6/tools.js.gz +0 -0
  69. package/lib/umd-es6/ui-react-dom.js +1 -0
  70. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  71. package/lib/umd-es6/ui-react.js +1 -1
  72. package/lib/umd-es6/ui-react.js.gz +0 -0
  73. package/package.json +33 -29
  74. package/readme.md +41 -24
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Row",c=i+l,d="Sorted"+i+l,u="Cell",h=u+l,g=(e,t)=>e.every(t),v=(e,t)=>e.forEach(t),w=e=>R(e,((e,t)=>e+t),0),f=e=>e.length,L=e=>0==f(e),R=(e,t,n)=>e.reduce(t,n),y=(e,...t)=>e.push(...t),T=Math.max,b=Math.min,p=isFinite,C=e=>null==e,S=(e,t,n)=>C(e)?n?.():t(e),m=t=>e(t)==r,Q=e=>Array.isArray(e),I=()=>{},E=Object,M=E.freeze,x=e=>e.size,D=(e,t)=>e?.has(t)??!1,j=e=>C(e)||0==x(e),k=e=>[...e?.values()??[]],z=e=>e.clear(),A=(e,t)=>e?.forEach(t),F=(e,t)=>e?.delete(t),O=e=>new Map(e),W=(e,t)=>e?.get(t),q=(e,t)=>A(e,((e,n)=>t(n,e))),B=(e,t,n)=>C(n)?(F(e,t),e):e?.set(t,n),G=(e,t,n)=>(D(e,t)||B(e,t,n()),W(e,t)),H=(e,t,n,s,r=0)=>S((n?G:W)(e,t[r],r>f(t)-2?n:O),(o=>{if(r>f(t)-2)return s?.(o)&&B(e,t[r]),o;const a=H(o,t,n,s,r+1);return j(o)&&B(e,t[r]),a})),J=e=>new Set(Q(e)||C(e)?e:[e]),K=(e,t)=>e?.add(t),N=O([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),P=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[w,R,T,b,P,,,U,,V,X,Y,Z]=((e,t,n)=>{const s=e.hasRow,r=O(),o=O(),a=O(),l=O(),i=O(),c=(t,n,...s)=>{const r=G(i,t,J);return v(s,(t=>K(r,t)&&n&&e.callListener(t))),s},d=(t,...n)=>S(W(i,t),(s=>{v(L(n)?k(s):n,(t=>{e.delListener(t),F(s,t)})),j(s)&&B(i,t)})),u=(e,t)=>{B(r,e,t),D(o,e)||(B(o,e,!0),B(a,e,O()),B(l,e,O()))},h=e=>{B(r,e),B(o,e),B(a,e),B(l,e),d(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>q(o,e),e=>D(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>B(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const w=O(),L=O(),R=W(a,t),y=W(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=W(R,t),l=s(r,t)?n(i(o,t)):void 0;var c,d;if(a===l||Q(a)&&Q(l)&&(d=l,f(c=a)===f(d)&&g(c,((e,t)=>d[t]===e)))||B(w,t,[a,l]),!C(h)){const e=W(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&B(L,t,n)}},b=e=>{o((()=>{A(w,(([,e],t)=>B(R,t,e))),A(L,((e,t)=>B(y,t,e)))}),w,L,R,y,e),z(w),z(L)};q(R,T),e.hasTable(r)&&v(e.getRowIds(r),(e=>{D(R,e)||T(e)})),b(!0),d(t),c(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>q(i,h),c,d]})(r,0,I),$=l(),_=l(),ee=O(),te=(e,t,...n)=>v(n,(n=>K(G(G(ee,t,O),e,J),n))),ne=e=>{S(W(ee,e),(e=>{q(e,((e,t)=>A(t,(t=>e.delListener(t))))),z(e)})),v([_,$],(t=>t.delTable(e)))},se=(e,t,n)=>te(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),re={setQueryDefinition:(o,a,l)=>{U(o,a),ne(o);const i=[],c=[[null,[a,null,null,[],O()]]],d=[],u=[],h=[];l({select:(e,t)=>{const n=m(e)?[f(i)+"",e]:[C(t)?e:t,n=>n(e,t)];return y(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=C(n)||m(t)?null:t,r=C(s)?t:n,o=[e,[e,s,m(r)?r:e=>e(r),[],O()]];return y(c,o),{as:e=>o[0]=e}},where:(e,t,n)=>y(d,m(e)?e:C(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,m(t)?[t,n,s,r]:W(N,t)??[(e,t)=>t]]];return y(u,o),{as:e=>o[0]=e}},having:(e,t)=>y(h,m(e)?e:n=>n(e)===t)});const w=O(i);if(j(w))return re;const R=O(c);q(R,((e,[,t])=>S(W(R,t),(({3:t})=>C(e)?0:y(t,e)))));const T=O(u);let b=$;if(j(T)&&L(h))b=_;else{se(o,b,_);const r=O();q(T,((e,[t,n])=>K(G(r,t,J),[e,n])));const a=J();q(w,(e=>D(r,e)?0:K(a,e)));const l=O(),i=(a,l,i,c)=>S(a,(([d,u,v,w])=>{q(l,((o,[a])=>{const l=G(d,o,O),u=W(l,i),h=c?void 0:a;if(u!==h){const a=J([[u,h]]),c=x(l);B(l,i,h),A(W(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(j(n))return;const[a,l,i,c]=r;return o||=C(e),A(s,(([n,s])=>{o||(e=C(n)?l?.(e,s,t++):C(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=C(e))})),o?a(k(n),x(n)):e})(w[r],c,l,a,o);w[r]=C((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&p(r)?o:void 0})(i))?null:i}))}})),j(u)||!g(h,(e=>e((e=>w[e]))))?_.delRow(o,v):C(v)?a[2]=_.addRow(o,w):_.setRow(o,v,w)}));te(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const c=[],d=[],u=O(),h=b.hasRow(o,n);let g=!h;A(a,(e=>{const[t,r,a]=s(o,n,e);y(c,r),y(d,a),g||=t})),q(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&B(u,e,[r])})),g&&i(H(l,c,void 0,(([,e])=>(F(e,n),j(e)))),u,n,1),h&&i(H(l,d,(()=>{const e={};return A(a,(t=>e[t]=b.getCell(o,n,t))),[O(),J(),void 0,e]}),(([,e])=>{K(e,n)})),u,n)})))}se(o,r,b);const Q=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);v(s,(t=>{const[n,,s,a,i]=W(R,t),c=s?.(l,e),[d,u]=W(i,e)??[];c!=d&&(C(u)||Z(o,u),B(i,e,C(c)?null:[c,...Y(o,1,r.addRowListener(n,c,(()=>Q(e,n,c,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...C(n)?[a,e,t]:t===a?[a,e,n]:[W(R,t)?.[0],W(W(R,t)?.[4],e)?.[0],n]);b.transaction((()=>g(d,(e=>e(t)))?q(w,((n,s)=>((e,t,n,s,r)=>C(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:I}=W(R,null);return b.transaction((()=>Y(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?Q(n,a,n,I):(b.delRow(o,n),A(R,(({4:e})=>S(W(e,n),(([,t])=>{Z(o,t),B(e,n)})))))}))))),re},delQueryDefinition:e=>(ne(e),V(e),re),getStore:w,getQueryIds:R,forEachQuery:T,hasQuery:b,getTableId:P,delListener:e=>(_.delListener(e),re),destroy:X,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=_.getListenerStats();return s}};var oe,ae;return oe={Table:[1,1],[c]:[0,1],[d]:[0,5],[i]:[1,2],[h]:[0,2],[u]:[1,3]},ae=([e,t],n)=>{v(e?["get","has","forEach"]:["get"],(e=>re[e+a+n]=(...t)=>_[e+n](...t))),re["add"+a+n+o]=(...e)=>{return _["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](re,...s)));var s,r}},((e,t)=>{e.map(t)})(E.entries(oe),(([e,t])=>ae(t,e))),M(re)})(r)),l.get(r))})();exports.createQueries=P;
1
+ "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",c="Row",d=c+l,u="Sorted"+c+l,h="Cell",g=h+l,v=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),f=e=>y(e,((e,t)=>e+t),0),L=e=>e.length,R=e=>0==L(e),y=(e,t,n)=>e.reduce(t,n),T=(e,...t)=>e.push(...t),b=Math.max,p=Math.min,C=isFinite,S=e=>null==e,m=(e,t,n)=>S(e)?n?.():t(e),Q=t=>e(t)==r,I=e=>Array.isArray(e),E=()=>{},M=Object,x=M.freeze,D=e=>e.size,j=(e,t)=>e?.has(t)??!1,k=e=>S(e)||0==D(e),z=e=>[...e?.values()??[]],A=e=>e.clear(),F=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),W=e=>new Map(e),q=(e,t)=>e?.get(t),B=(e,t)=>F(e,((e,n)=>t(n,e))),G=(e,t,n)=>S(n)?(O(e,t),e):e?.set(t,n),H=(e,t,n)=>(j(e,t)||G(e,t,n()),q(e,t)),J=(e,t,n,s,r=0)=>m((n?H:q)(e,t[r],r>L(t)-2?n:W),(o=>{if(r>L(t)-2)return s?.(o)&&G(e,t[r]),o;const a=J(o,t,n,s,r+1);return k(o)&&G(e,t[r]),a})),K=e=>new Set(I(e)||S(e)?e:[e]),N=(e,t)=>e?.add(t),P=W([["avg",[(e,t)=>f(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>p(...e),(e,t)=>p(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:p(t,e)]],["sum",[e=>f(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),U=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[f,y,b,p,U,,,V,,X,Y,Z,$]=((e,t,n)=>{const s=e.hasRow,r=W(),o=W(),a=W(),l=W(),i=W(),c=(t,n,...s)=>{const r=H(i,t,K);return w(s,(t=>N(r,t)&&n&&e.callListener(t))),s},d=(t,...n)=>m(q(i,t),(s=>{w(R(n)?z(s):n,(t=>{e.delListener(t),O(s,t)})),k(s)&&G(i,t)})),u=(e,t)=>{G(r,e,t),j(o,e)||(G(o,e,!0),G(a,e,W()),G(l,e,W()))},h=e=>{G(r,e),G(o,e),G(a,e),G(l,e),d(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>B(o,e),e=>j(o,e),e=>q(r,e),e=>q(o,e),(e,t)=>G(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const g=W(),f=W(),R=q(a,t),y=q(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=q(R,t),l=s(r,t)?n(i(o,t)):void 0;var c,d;if(a===l||I(a)&&I(l)&&(d=l,L(c=a)===L(d)&&v(c,((e,t)=>d[t]===e)))||G(g,t,[a,l]),!S(h)){const e=q(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&G(f,t,n)}},b=e=>{o((()=>{F(g,(([,e],t)=>G(R,t,e))),F(f,((e,t)=>G(y,t,e)))}),g,f,R,y,e),A(g),A(f)};B(R,T),e.hasTable(r)&&w(e.getRowIds(r),(e=>{j(R,e)||T(e)})),b(!0),d(t),c(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>B(i,h),c,d]})(r,0,E),_=l(),ee=l(),te=W(),ne=(e,t,...n)=>w(n,(n=>N(H(H(te,t,W),e,K),n))),se=e=>{m(q(te,e),(e=>{B(e,((e,t)=>F(t,(t=>e.delListener(t))))),A(e)})),w([ee,_],(t=>t.delTable(e)))},re=(e,t,n)=>ne(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),oe={setQueryDefinition:(o,a,l)=>{V(o,a),se(o);const i=[],c=[[null,[a,null,null,[],W()]]],d=[],u=[],h=[];l({select:(e,t)=>{const n=Q(e)?[L(i)+"",e]:[S(t)?e:t,n=>n(e,t)];return T(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=S(n)||Q(t)?null:t,r=S(s)?t:n,o=[e,[e,s,Q(r)?r:e=>e(r),[],W()]];return T(c,o),{as:e=>o[0]=e}},where:(e,t,n)=>T(d,Q(e)?e:S(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,Q(t)?[t,n,s,r]:q(P,t)??[(e,t)=>t]]];return T(u,o),{as:e=>o[0]=e}},having:(e,t)=>T(h,Q(e)?e:n=>n(e)===t)});const g=W(i);if(k(g))return oe;const f=W(c);B(f,((e,[,t])=>m(q(f,t),(({3:t})=>S(e)?0:T(t,e)))));const y=W(u);let b=_;if(k(y)&&R(h))b=ee;else{re(o,b,ee);const r=W();B(y,((e,[t,n])=>N(H(r,t,K),[e,n])));const a=K();B(g,(e=>j(r,e)?0:N(a,e)));const l=W(),i=(a,l,i,c)=>m(a,(([d,u,g,w])=>{B(l,((o,[a])=>{const l=H(d,o,W),u=q(l,i),h=c?void 0:a;if(u!==h){const a=K([[u,h]]),c=D(l);G(l,i,h),F(q(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(k(n))return;const[a,l,i,c]=r;return o||=S(e),F(s,(([n,s])=>{o||(e=S(n)?l?.(e,s,t++):S(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=S(e))})),o?a(z(n),D(n)):e})(w[r],c,l,a,o);w[r]=S((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&C(r)?o:void 0})(i))?null:i}))}})),k(u)||!v(h,(e=>e((e=>w[e]))))?ee.delRow(o,g):S(g)?a[2]=ee.addRow(o,w):ee.setRow(o,g,w)}));ne(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const c=[],d=[],u=W(),h=b.hasRow(o,n);let g=!h;F(a,(e=>{const[t,r,a]=s(o,n,e);T(c,r),T(d,a),g||=t})),B(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&G(u,e,[r])})),g&&i(J(l,c,void 0,(([,e])=>(O(e,n),k(e)))),u,n,1),h&&i(J(l,d,(()=>{const e={};return F(a,(t=>e[t]=b.getCell(o,n,t))),[W(),K(),void 0,e]}),(([,e])=>{N(e,n)})),u,n)})))}re(o,r,b);const p=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);w(s,(t=>{const[n,,s,a,i]=q(f,t),c=s?.(l,e),[d,u]=q(i,e)??[];c!=d&&(S(u)||$(o,u),G(i,e,S(c)?null:[c,...Z(o,1,r.addRowListener(n,c,(()=>p(e,n,c,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...S(n)?[a,e,t]:t===a?[a,e,n]:[q(f,t)?.[0],q(q(f,t)?.[4],e)?.[0],n]);b.transaction((()=>v(d,(e=>e(t)))?B(g,((n,s)=>((e,t,n,s,r)=>S(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:I}=q(f,null);return b.transaction((()=>Z(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?p(n,a,n,I):(b.delRow(o,n),F(f,(({4:e})=>m(q(e,n),(([,t])=>{$(o,t),G(e,n)})))))}))))),oe},delQueryDefinition:e=>(se(e),X(e),oe),getStore:f,getQueryIds:y,forEachQuery:b,hasQuery:p,getTableId:U,delListener:e=>(ee.delListener(e),oe),destroy:Y,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=ee.getListenerStats();return s}};var ae,le;return ae={[i]:[1,1],[i+g]:[0,1],[d]:[0,1],[u]:[0,5],[c]:[1,2],[g]:[0,2],[h]:[1,3]},le=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>oe[e+a+n]=(...t)=>ee[e+n](...t))),oe["add"+a+n+o]=(...e)=>{return ee["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](oe,...s)));var s,r}},((e,t)=>{e.map(t)})(M.entries(ae),(([e,t])=>le(t,e))),x(oe)})(r)),l.get(r))})();exports.createQueries=U;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Ids",h="Table",g=h+"s",f=h+u,L="Row",w=L+u,S="Sorted"+L+u,v="Cell",R=v+u,I="Value",T=I+"s",p=I+u,C=e=>t+e,y=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,s)=>t[s]===e)),m=(e,t)=>b(e,((s,n)=>0==n||t(e[n-1],s)<=0)),x=(e,t)=>e.sort(t),E=(e,t)=>e.forEach(t),k=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,s)=>e.reduce(t,s),F=(e,t,s)=>e.slice(t,s),Q=(e,...t)=>e.push(...t),z=e=>e.pop(),N=e=>e.shift(),O=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),P=JSON.parse,j=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,s)=>q(e)?s?.():t(e),H=e=>e==s||e==n,K=t=>e(t)==o,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,se=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),ae=(e,t)=>k(Y.entries(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,le=(e,t)=>e?.has(t)??!1,ie=e=>q(e)||0==re(e),ce=e=>[...e?.values()??[]],de=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),Se=(e,t,s)=>q(s)?(he(e,t),e):e?.set(t,s),ve=(e,t,s)=>(le(e,t)||Se(e,t,s()),Le(e,t)),Re=(e,t,s,n=Se)=>(ae(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Ie=(e,t,s)=>{const n={};return ue(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>Ie(e,(e=>Ie(e,t,s)),oe),pe=(e,t,s)=>Ie(e,(e=>Te(e,t,s)),oe),Ce=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},ye=e=>Ce(e,Ce),be=e=>Ce(e,ye),Ve=(e,t,s,n,a=0)=>G((s?ve:Le)(e,t[a],a>D(t)-2?s:ge),(o=>{if(a>D(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ie(o)&&Se(e,t[a]),r})),me=t=>{const s=e(t);return H(s)||s==a&&B(t)?s:void 0},xe=(e,t,s,n,a)=>q(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ee=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),ke=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>e?.add(t),De=(e,t,s)=>{const n=e.hasRow,a=ge(),o=ge(),r=ge(),l=ge(),i=ge(),c=(t,s,...n)=>{const a=ve(i,t,ke);return E(n,(t=>Me(a,t)&&s&&e.callListener(t))),n},d=(t,...s)=>G(Le(i,t),(n=>{E(J(s)?ce(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&Se(i,t)})),u=(e,s)=>{Se(a,e,s),le(o,e)||(Se(o,e,t()),Se(r,e,ge()),Se(l,e,ge()))},h=e=>{Se(a,e),Se(o,e),Se(r,e),Se(l,e),d(e)};return[()=>e,()=>fe(a),e=>we(o,e),e=>le(o,e),e=>Le(a,e),e=>Le(o,e),(e,t)=>Se(o,e,t),u,(t,a,o,i,h)=>{u(t,a);const g=ge(),f=ge(),L=Le(r,t),w=Le(l,t),S=t=>{const o=s=>e.getCell(a,t,s),r=Le(L,t),l=n(a,t)?s(i(o,t)):void 0;if(r===l||U(r)&&U(l)&&V(r,l)||Se(g,t,[r,l]),!q(h)){const e=Le(w,t),s=n(a,t)?h(o,t):void 0;e!=s&&Se(f,t,s)}},v=e=>{o((()=>{ue(g,(([,e],t)=>Se(L,t,e))),ue(f,((e,t)=>Se(w,t,e)))}),g,f,L,w,e),de(g),de(f)};we(L,S),e.hasTable(a)&&E(e.getRowIds(a),(e=>{le(L,e)||S(e)})),v(!0),d(t),c(t,0,e.addRowListener(a,null,((e,t,s)=>S(s))),e.addTableListener(a,(()=>v())))},h,()=>we(i,h),c,d]},Je=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),Ae=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Fe=/^\d+$/,Qe=()=>{const e=[];let s=0;return[n=>(n?N(e):null)??t+s++,t=>{Fe.test(t)&&D(e)<1e3&&Q(e,t)}]},ze=e=>{let s;const[n,a]=Qe(),o=ge();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Se(o,d,[a,r,l,i,c]),Me(Ve(r,l??[t],ke),d),d},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==D(s)?Q(n,e):null===s[t]?ue(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Le(e,s),t+1)));return a(e,0),n})(e,n),(e=>ue(e,(e=>Le(o,e)[0](s,...n??[],...a))))),e=>G(Le(o,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),Se(o,e),a(e),n))),e=>G(Le(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=D(r);l==D(t)?e(s,...r,...a(r)):q(t[l])?E(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ne=Ae((e=>{let s,n,a,o=100,r=ge(),l=ge(),i=1;const c=ge(),d=ge(),[u,h,g]=ze((()=>P)),f=ge(),L=ge(),w=[],S=[],v=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Le(f,s);ue(n,((s,n)=>ue(s,((s,a)=>ue(s,((s,o)=>xe(e,n,a,o,s[t]))))))),ue(a,((s,n)=>Ee(e,n,s[t])))})),i=1},R=e=>{Se(f,e),Se(L,e),h(d,[e])},I=(e,t)=>E(((e,t)=>e.splice(0,t))(e,t??D(e)),R),T=()=>I(w,D(w)-o),p=()=>G(s,(()=>{Q(w,s),T(),I(S),s=void 0,a=1})),C=()=>{s=z(w),a=1},b=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){p();const e=ve(r,t,ge),l=ve(e,s,ge),i=ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ie(Se(l,n))&&ie(Se(e,s))&&ie(Se(r,t))&&C(),M()}})),V=e.addValueListener(null,((e,t,s,n)=>{if(i){p();const e=ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(Se(l,t))&&C(),M()}})),m=(e="")=>(q(s)&&(s=t+n++,Se(f,s,[r,l]),F(s,e),r=ge(),l=ge(),a=1),s),x=()=>{J(w)||(((e,...t)=>{e.unshift(...t)})(S,m()),v(0,s),s=z(w),a=1)},k=()=>{J(S)||(Q(w,s),s=N(S),v(1,s),a=1)},M=()=>{a&&(h(c),a=0)},A=e=>{const t=m(e);return M(),t},F=(e,t)=>(O(e)&&Le(L,e)!==t&&(Se(L,e,t),h(d,[e])),P),O=e=>le(f,e),P={setSize:e=>(o=e,T(),P),addCheckpoint:A,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...S]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:O,getCheckpoint:e=>Le(L,e),goBackward:()=>(x(),M(),P),goForward:()=>(k(),M(),P),goTo:e=>{const t=y(w,e)?x:y(S,e)?k:null;for(;!q(t)&&e!=s;)t();return M(),P},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),P),clear:()=>(I(w),I(S),q(s)||R(s),s=void 0,n=0,A(),P),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(P.clear())})),Oe=(e,t)=>e<t?-1:1,Pe=Ae((e=>{const s=ge(),n=ge(),[a,o,r,l,i,c,d,,u,h,g]=De(e,ge,(e=>q(e)?t:U(e)?k(e,C):C(e))),[f,L,w]=ze((()=>v)),S=(t,s,n)=>{const a=i(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,o,r,l=Oe)=>{const i=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,a,r,u,h,g)=>{let f=0;const w=ke(),S=ke(),v=c(e);if(ue(a,(([e,t],s)=>{const n=ke(e),a=ke(t);ue(n,(e=>he(a,e)?he(n,e):0)),ue(n,(e=>{Me(w,e),G(Le(v,e),(t=>{he(t,s),ie(t)&&(Se(v,e),f=1)}))})),ue(a,(e=>{Me(w,e),le(v,e)||(Se(v,e,ke()),f=1),Me(Le(v,e),s),q(o)||Me(S,e)}))})),t(),ie(h)||(g?we(v,(e=>Me(S,e))):we(r,(e=>G(Le(u,e),(e=>Me(S,e))))),ue(S,(e=>{const t=(t,s)=>l(Le(h,t),Le(h,s),e),s=[...Le(v,e)];m(s,t)||(Se(v,e,ke(x(s,t))),Me(w,e))}))),(f||g)&&!q(i)){const t=[...v];m(t,i)||(d(e,ge(x(t,i))),f=1)}f&&L(s,[e]),ue(w,(t=>L(n,[e,t])))}),Je(a),G(o,Je)),v},delIndexDefinition:e=>(h(e),v),getStore:a,getIndexIds:o,forEachIndex:e=>r(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,c(e)),hasIndex:l,hasSlice:(e,t)=>le(c(e),t),getTableId:i,getSliceIds:e=>fe(c(e)),getSliceRowIds:(e,t)=>ce(Le(c(e),t)),addSliceIdsListener:(e,t)=>f(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>f(s,n,[e,t]),delListener:e=>(w(e),v),destroy:g,getListenerStats:()=>({})};return ee(v)})),je=ge([["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=>j(...e),(e,t)=>j(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:j(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ie(s))return;const[r,l,i,c]=a;return o||=q(e),ue(n,(([s,n])=>{o||(e=q(s)?l?.(e,n,t++):q(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=q(e))})),o?r(ce(s),re(s)):e},Be=Ae((e=>{const s=ge(),[n,a,o,r,l,i,c,,d,u,h]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[g,f,L]=ze((()=>w)),w={setMetricDefinition:(e,t,n,a,o,r,l)=>{const u=K(n)?[n,o,r,l]:Le(je,n)??Le(je,"sum");return d(e,t,((t,n,a,o,r,l)=>{const d=i(e),h=re(o);l||=q(d),t();let g=We(d,h,o,n,u,l);B(g)||(g=void 0),g!=d&&(c(e,g),f(s,[e],g,d))}),Je(a,1)),w},delMetricDefinition:e=>(u(e),w),getStore:n,getMetricIds:a,forEachMetric:o,hasMetric:r,getTableId:l,getMetric:i,addMetricListener:(e,t)=>g(t,s,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return ee(w)})),$e=Ae((e=>{const s=e.createStore,[n,a,o,r,l,,,u,,g,f,I,T]=De(e,(()=>!0),X),p=s(),C=s(),y=ge(),V=(e,t,...s)=>E(s,(s=>Me(ve(ve(y,t,ge),e,ke),s))),m=e=>{G(Le(y,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),de(e)})),E([C,p],(t=>t.delTable(e)))},x=(e,t,s)=>V(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(s,n,a)=>{u(s,n),m(s);const o=[],r=[[null,[n,null,null,[],ge()]]],l=[],i=[],c=[];a({select:(e,s)=>{const n=K(e)?[D(o)+t,e]:[q(s)?e:s,t=>t(e,s)];return Q(o,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=q(s)||K(t)?null:t,a=q(n)?t:s,o=[e,[e,n,K(a)?a:e=>e(a),[],ge()]];return Q(r,o),{as:e=>o[0]=e}},where:(e,t,s)=>Q(l,K(e)?e:q(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,K(t)?[t,s,n,a]:Le(je,t)??[(e,t)=>t]]];return Q(i,o),{as:e=>o[0]=e}},having:(e,t)=>Q(c,K(e)?e:s=>s(e)===t)});const d=ge(o);if(ie(d))return k;const h=ge(r);we(h,((e,[,t])=>G(Le(h,t),(({3:t})=>q(e)?0:Q(t,e)))));const g=ge(i);let f=p;if(ie(g)&&J(c))f=C;else{x(s,f,C);const e=ge();we(g,((t,[s,n])=>Me(ve(e,s,ke),[t,n])));const t=ke();we(d,(s=>le(e,s)?0:Me(t,s)));const n=ge(),a=(t,n,a,o)=>G(t,(([r,l,i,d])=>{we(n,((t,[s])=>{const n=ve(r,t,ge),l=Le(n,a),i=o?void 0:s;if(l!==i){const s=ke([[l,i]]),o=re(n);Se(n,a,i),ue(Le(e,t),(([e,t])=>{const a=We(d[e],o,n,s,t);d[e]=q(me(a))?null:a}))}})),ie(l)||!b(c,(e=>e((e=>d[e]))))?C.delRow(s,i):q(i)?t[2]=C.addRow(s,d):C.setRow(s,i,d)}));V(f,s,f.addRowListener(s,null,((o,r,l,i)=>{const c=[],d=[],u=ge(),h=f.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,a]=i(s,l,e);Q(c,n),Q(d,a),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&Se(u,e,[n])})),g&&a(Ve(n,c,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&a(Ve(n,d,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(s,l,t))),[ge(),ke(),void 0,e]}),(([,e])=>{Me(e,l)})),u,l)})))}x(s,e,f);const L=(t,a,o,r)=>{const i=t=>e.getCell(a,o,t);E(r,(n=>{const[a,,o,r,l]=Le(h,n),c=o?.(i,t),[d,u]=Le(l,t)??[];c!=d&&(q(u)||T(s,u),Se(l,t,q(c)?null:[c,...I(s,1,e.addRowListener(a,c,(()=>L(t,a,c,r))))]))})),(t=>{const a=(s,a)=>e.getCell(...q(a)?[n,t,s]:s===n?[n,t,a]:[Le(h,s)?.[0],Le(Le(h,s)?.[4],t)?.[0],a]);f.transaction((()=>b(l,(e=>e(a)))?we(d,((e,n)=>xe(f,s,t,e,n(a,t)))):f.delRow(s,t)))})(t)},{3:w}=Le(h,null);return f.transaction((()=>I(s,1,e.addRowListener(n,null,((t,a,o)=>{e.hasRow(n,o)?L(o,n,o,w):(f.delRow(s,o),ue(h,(({4:e})=>G(Le(e,o),(([,t])=>{T(s,t),Se(e,o)})))))}))))),k},delQueryDefinition:e=>(m(e),g(e),k),getStore:n,getQueryIds:a,forEachQuery:o,hasQuery:r,getTableId:l,delListener:e=>(C.delListener(e),k),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=C.getListenerStats();return n}};return ae({[h]:[1,1],[w]:[0,1],[S]:[0,5],[L]:[1,2],[R]:[0,2],[v]:[1,3]},(([e,t],s)=>{E(e?["get","has","forEach"]:["get"],(e=>k[e+c+s]=(...t)=>C[e+s](...t))),k[d+c+s+i]=(...e)=>C[d+s+i](...F(e,0,t),((s,...n)=>e[t](k,...n)))})),ee(k)})),qe=Ae((e=>{const s=ge(),n=ge(),a=ge(),o=ge(),[r,l,i,c,d,u,,,h,g,f]=De(e,(()=>[ge(),ge(),ge(),ge()]),(e=>q(e)?void 0:e+t)),[L,w,S]=ze((()=>T)),v=(e,t,s)=>G(u(e),(([n,,a])=>{if(!le(a,t)){const o=ke();if(d(e)!=I(e))Me(o,t);else{let e=t;for(;!q(e)&&!le(o,e);)Me(o,e),e=Le(n,e)}if(s)return o;Se(a,t,o)}return Le(a,t)})),R=(e,t)=>G(u(e),(([,,e])=>Se(e,t))),I=e=>Le(s,e),T={setRelationshipDefinition:(e,t,r,l)=>(Se(s,e,r),h(e,t,((t,s)=>{const r=ke(),l=ke(),i=ke(),[c,d]=u(e);ue(s,(([t,s],n)=>{q(t)||(Me(l,t),G(Le(d,t),(e=>{he(e,n),ie(e)&&Se(d,t)}))),q(s)||(Me(l,s),le(d,s)||Se(d,s,ke()),Me(Le(d,s),n)),Me(r,n),Se(c,n,s),we(Le(o,e),(t=>{le(v(e,t),n)&&Me(i,t)}))})),t(),ue(r,(t=>w(n,[e,t]))),ue(l,(t=>w(a,[e,t]))),ue(i,(t=>{R(e,t),w(o,[e,t])}))}),Je(l)),T),delRelationshipDefinition:e=>(Se(s,e),g(e),T),getStore:r,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:I,getRemoteRowId:(e,t)=>Le(u(e)?.[0],t),getLocalRowIds:(e,t)=>ce(Le(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>q(u(e))?[t]:ce(v(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>L(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),L(s,o,[e,t])),delListener:e=>(R(...S(e)),T),destroy:f,getListenerStats:()=>({})};return ee(T)})),Ge=e=>[e,e],He=()=>[ge(),ge()],Ke=e=>[...e],Ue=([e,t])=>e===t,Xe=(e,t,s)=>q(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!oe(e)),Ye=(e,t,s)=>Se(e,t,Le(e,t)==-s?void 0:s),Ze=()=>{let e,t,s=!1,n=!1,o=0;const c=ge(),u=ge(),S=ge(),b=ge(),m=ge(),M=ge(),D=ge(),J=ge(),A=ge(),z=ge(),N=ge(),j=ge(),W=ge(),B=ke(),$=ge(),U=ge(),X=ge(),Y=ge(),Z=He(),_=He(),te=He(),re=He(),ce=He(),Ve=He(),De=He(),Je=He(),Ae=He(),Fe=He(),Ne=He(),Pe=He(),je=He(),We=He(),Be=ge(),$e=He(),[qe,_e,et,tt]=ze((()=>fs)),st=e=>{if(!Xe(e,((e,t)=>y([r,l],t))))return!1;const t=e[r];return!(!H(t)&&t!=a||(me(e[l])!=t&&ne(e,l),0))},nt=(t,s)=>(!e||le(z,s)||Jt(s))&&Xe(t,((e,t)=>at(s,t,e)),(()=>Jt(s))),at=(e,t,s,n)=>Xe(n?s:it(s,e,t),((n,a)=>G(ot(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,s,n,a)=>e?G(Le(Le(z,t),n),(e=>me(a)!=e[r]?Jt(t,s,n,a,e[l]):a),(()=>Jt(t,s,n,a))):q(me(a))?Jt(t,s,n,a):a,rt=(e,t)=>Xe(t?e:ct(e),((t,s)=>G(lt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>At())),lt=(e,s)=>t?G(Le(j,e),(t=>me(s)!=t[r]?At(e,s,t[l]):s),(()=>At(e,s))):q(me(s))?At(e,s):s,it=(e,t,s)=>(G(Le(N,t),(([n,a])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(a,(n=>{se(e,n)||Jt(t,s,n)}))})),e),ct=e=>(t&&(ue(W,((t,s)=>{se(e,s)||(e[s]=t)})),ue(B,(t=>{se(e,t)||At(t)}))),e),dt=e=>Re(z,e,((e,t,s)=>{const n=ge(),a=ke();Re(ve(z,t,ge),s,((e,t,s)=>{Se(e,t,s),G(s[l],(e=>Se(n,t,e)),(()=>Me(a,t)))})),Se(N,t,[n,a])}),((e,t)=>{Se(z,t),Se(N,t)})),ut=e=>Re(j,e,((e,t,s)=>{Se(j,t,s),G(s[l],(e=>Se(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{Se(j,t),Se(W,t),he(B,t)})),ht=e=>oe(e)?os():es(e),gt=e=>Re(X,e,((e,t,s)=>ft(t,s)),((e,t)=>Ct(t))),ft=(e,t)=>Re(ve(X,e,(()=>(mt(e,1),Se($,e,Qe()),Se(U,e,ge()),ge()))),t,((t,s,n)=>Lt(e,t,s,n)),((t,s)=>yt(e,t,s))),Lt=(e,t,s,n,a)=>Re(ve(t,s,(()=>(xt(e,s,1),ge()))),n,((t,n,a)=>wt(e,s,t,n,a)),((n,o)=>bt(e,t,s,n,o,a))),wt=(e,t,s,n,a)=>{le(s,n)||Et(e,t,n,1);const o=Le(s,n);a!==o&&(kt(e,t,n,o,a),Se(s,n,a))},St=(e,t,s,n,a)=>G(Le(t,s),(t=>wt(e,s,t,n,a)),(()=>Lt(e,t,s,it({[n]:a},e,s)))),vt=e=>oe(e)?is():ts(e),Rt=e=>Re(Y,e,((e,t,s)=>It(t,s)),((e,t)=>Vt(t))),It=(e,t)=>{le(Y,e)||Mt(e,1);const s=Le(Y,e);t!==s&&(Dt(e,s,t),Se(Y,e,t))},Tt=(e,t)=>{const[s]=Le($,e),n=s(t);return le(Le(X,e),n)?Tt(e,t):n},pt=e=>Le(X,e)??ft(e,{}),Ct=e=>ft(e,{}),yt=(e,t,s)=>{const[,n]=Le($,e);n(s),Lt(e,t,s,{},!0)},bt=(e,t,s,n,a,o)=>{const r=Le(Le(N,e)?.[0],a);if(!q(r)&&!o)return wt(e,s,n,a,r);const l=t=>{kt(e,s,t,Le(n,t)),Et(e,s,t,-1),Se(n,t)};q(r)?l(a):we(n,l),ie(n)&&(xt(e,s,-1),ie(Se(t,s))&&(mt(e,-1),Se(X,e),Se($,e),Se(U,e)))},Vt=e=>{const t=Le(W,e);if(!q(t))return It(e,t);Dt(e,Le(Y,e)),Mt(e,-1),Se(Y,e)},mt=(e,t)=>Ye(c,e,t),xt=(e,t,s)=>Ye(ve(S,e,ge),t,s),Et=(e,t,s,n)=>{const a=Le(U,e),o=Le(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Ye(ve(u,e,ge),s,n),Se(a,s,o!=-n?o+n:null),Ye(ve(ve(b,e,ge),t,ge),s,n)},kt=(e,t,s,n,a)=>ve(ve(ve(m,e,ge),t,ge),s,(()=>[n,0]))[1]=a,Mt=(e,t)=>Ye(M,e,t),Dt=(e,t,s)=>ve(D,e,(()=>[t,0]))[1]=s,Jt=(e,t,s,n,a)=>(Q(ve(ve(ve(J,e,ge),t,ge),s,(()=>[])),n),a),At=(e,t,s)=>(Q(ve(A,e,(()=>[])),t),s),Ft=(e,t,s)=>G(Le(Le(Le(m,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ge(Xt(e,t,s))])),Qt=e=>G(Le(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ge(_t(e))])),zt=e=>ie(J)||ie(Fe[e])?0:ue(e?be(J):J,((t,s)=>ue(t,((t,n)=>ue(t,((t,a)=>_e(Fe[e],[s,n,a],t))))))),Nt=e=>ie(A)||ie(Ne[e])?0:ue(e?Ce(A):A,((t,s)=>_e(Ne[e],[s],t))),Ot=(e,t,s)=>{if(!ie(t))return _e(e,s,(()=>Ie(t))),1},Pt=e=>{const t=ie(Ve[e]),s=ie(Je[e])&&ie(re[e])&&ie(ce[e])&&t&&ie(_[e]),n=ie(Ae[e])&&ie(De[e])&&ie(te[e])&&ie(Z[e]);if(!s||!n){const a=e?[Ce(c),ye(u),ye(S),be(b),be(m)]:[c,u,S,b,m];if(!s){Ot(_[e],a[0]),ue(a[1],((t,s)=>Ot(re[e],t,[s])));const s=ke();ue(a[2],((n,a)=>{Ot(ce[e],n,[a])&&!t&&(_e(Ve[e],[a,null]),Me(s,a))})),t||ue(a[4],((t,n)=>{if(!le(s,n)){const s=ke();ue(t,(e=>ue(e,(([t,n],a)=>n!==t?Me(s,a):he(e,a))))),ue(s,(t=>_e(Ve[e],[n,t])))}})),ue(a[3],((t,s)=>ue(t,((t,n)=>Ot(Je[e],t,[s,n])))))}if(!n){let t;ue(a[4],((s,n)=>{let a;ue(s,((s,o)=>{let r;ue(s,(([s,l],i)=>{l!==s&&(_e(Ae[e],[n,o,i],l,s,Ft),t=a=r=1)})),r&&_e(De[e],[n,o],Ft)})),a&&_e(te[e],[n],Ft)})),t&&_e(Z[e],void 0,Ft)}}},jt=e=>{const t=ie(je[e]),s=ie(We[e])&&ie(Pe[e]);if(!t||!s){const n=e?[Ce(M),Ce(D)]:[M,D];if(t||Ot(je[e],n[0]),!s){let t;ue(n[1],(([s,n],a)=>{n!==s&&(_e(We[e],[a],n,s,Qt),t=1)})),t&&_e(Pe[e],void 0,Qt)}}},Wt=(e,...t)=>(us((()=>e(...k(t,C)))),fs),Bt=()=>[Ie(m,((e,t)=>-1===Le(c,t)?null:Ie(e,((e,s)=>-1===Le(Le(S,t),s)?null:Ie(e,(([,e])=>e??null),((e,t)=>Ue(t)))),oe)),oe),Ie(D,(([,e])=>e??null),((e,t)=>Ue(t)))],$t=()=>({cellsTouched:s,valuesTouched:n,changedCells:pe(m,Ke,Ue),invalidCells:pe(J),changedValues:Ie(D,Ke,Ue),invalidValues:Ie(A),changedTableIds:Ie(c),changedRowIds:Te(S),changedCellIds:pe(b),changedValueIds:Ie(M)}),qt=()=>pe(X),Gt=()=>fe(X),Ht=e=>fe(Le(X,C(e))),Kt=(e,t,s,n=0,a)=>{return k(F(x((o=Le(X,C(e)),r=(e,s)=>[q(t)?s:Le(e,C(t)),s],k([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Oe(e,t)*(s?-1:1))),n,q(a)?a:n+a),(([,e])=>e));var o,r},Ut=(e,t)=>fe(Le(Le(X,C(e)),C(t))),Xt=(e,t,s)=>Le(Le(Le(X,C(e)),C(t)),C(s)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>Le(Y,C(e)),es=e=>Wt((()=>(e=>Xe(e,nt,Jt))(e)?gt(e):0)),ts=e=>Wt((()=>rt(e)?Rt(e):0)),ss=e=>{try{ht(P(e))}catch{}return fs},ns=t=>Wt((()=>{if((e=Xe(t,(e=>Xe(e,st))))&&(dt(t),!ie(X))){const e=qt();os(),es(e)}})),as=e=>Wt((()=>{if(t=(e=>Xe(e,st))(e)){const s=Yt();ds(),is(),t=!0,ut(e),ts(s)}})),os=()=>Wt((()=>gt({}))),rs=e=>Wt((e=>le(X,e)?Ct(e):0),e),ls=(e,t)=>Wt(((e,t)=>G(Le(X,e),(s=>le(s,t)?yt(e,s,t):0))),e,t),is=()=>Wt((()=>Rt({}))),cs=()=>Wt((()=>{dt({}),e=!1})),ds=()=>Wt((()=>{ut({}),t=!1})),us=(e,t)=>{if(-1!=o){hs();const s=e();return gs(t),s}},hs=()=>(-1!=o&&o++,1==o&&_e(Be,void 0,Bt,$t),fs),gs=e=>(o>0&&(o--,0==o&&(s=!ie(m),n=!ie(D),o=1,zt(1),s&&Pt(1),Nt(1),n&&jt(1),e?.(Bt,$t)&&(ue(m,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>xe(fs,t,s,n,e))))))),ue(D,(([e],t)=>Ee(fs,t,e))),s=n=!1),_e($e[0],void 0,Bt,$t),o=-1,zt(0),s&&Pt(0),Nt(0),n&&jt(0),_e($e[1],void 0,Bt,$t),o=0,s=n=!1,E([c,u,S,b,m,J,M,D,A],de))),fs),fs={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Te(Le(X,C(e))),getTableCellIds:e=>fe(Le(U,C(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(Le(Le(X,C(e)),C(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ie(X),hasTable:e=>le(X,C(e)),hasTableCell:(e,t)=>le(Le(U,C(e)),C(t)),hasRow:(e,t)=>le(Le(X,C(e)),C(t)),hasCell:(e,t,s)=>le(Le(Le(X,C(e)),C(t)),C(s)),hasValues:()=>!ie(Y),hasValue:e=>le(Y,C(e)),getTablesJson:()=>O(X),getValuesJson:()=>O(Y),getJson:()=>O([X,Y]),getTablesSchemaJson:()=>O(z),getValuesSchemaJson:()=>O(j),getSchemaJson:()=>O([z,j]),setContent:([e,t])=>Wt((()=>{(oe(e)?os:es)(e),(oe(t)?is:ts)(t)})),setTables:es,setTable:(e,t)=>Wt((e=>nt(t,e)?ft(e,t):0),e),setRow:(e,t,s)=>Wt(((e,t)=>at(e,t,s)?Lt(e,pt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>us((()=>{let n;return at(e,n,t)&&(e=C(e),Lt(e,pt(e),n=Tt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Wt(((e,t)=>{if(at(e,t,s,1)){const n=pt(e);ae(s,((s,a)=>St(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Wt(((e,t,s)=>G(ot(e,t,s,K(n)?n(Xt(e,t,s)):n),(n=>St(e,pt(e),t,s,n)))),e,t,s),setValues:ts,setPartialValues:e=>Wt((()=>rt(e,1)?ae(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(lt(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{ae(e[0],((e,t)=>q(e)?rs(t):ae(e,((e,s)=>q(e)?ls(t,s):ae(e,((e,n)=>xe(fs,t,s,n,e))))))),ae(e[1],((e,t)=>Ee(fs,t,e)))})),setTablesJson:ss,setValuesJson:e=>{try{vt(P(e))}catch{}return fs},setJson:e=>{try{const[t,s]=P(e);ht(t),vt(s)}catch{ss(e)}return fs},setTablesSchema:ns,setValuesSchema:as,setSchema:(e,t)=>Wt((()=>{ns(e),as(t)})),delTables:os,delTable:rs,delRow:ls,delCell:(e,t,s,n)=>Wt(((e,t,s)=>G(Le(X,e),(a=>G(Le(a,t),(o=>le(o,s)?bt(e,a,t,o,s,n):0))))),e,t,s),delValues:is,delValue:e=>Wt((e=>le(Y,e)?Vt(e):0),e),delTablesSchema:cs,delValuesSchema:ds,delSchema:()=>Wt((()=>{cs(),ds()})),transaction:us,startTransaction:hs,finishTransaction:gs,forEachTable:e=>ue(X,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachTableCell:(e,t)=>we(Le(U,C(e)),t),forEachRow:(e,t)=>ue(Le(X,C(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le(X,C(e)),C(t)),s),forEachValue:e=>we(Y,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=Kt(e,t,s,n,a);return qe((()=>{const r=Kt(e,t,s,n,a);V(r,l)||(l=r,o(fs,e,t,s,n,a,l))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(tt(e),fs),delListener:e=>(et(e),fs),getListenerStats:()=>({}),createStore:Ze};return ae({[g]:[0,Z],[f]:[0,_],[h]:[1,te,[Gt]],[h+R]:[1,re,[Gt]],[w]:[1,ce,[Gt]],[L]:[2,De,[Gt,Ht]],[R]:[2,Je,[Gt,Ht]],[v]:[3,Ae,[Gt,Ht,Ut],e=>Ge(Xt(...e))],InvalidCell:[3,Fe],[T]:[0,Pe],[p]:[0,je],[I]:[1,We,[Zt],e=>Ge(_t(e[0]))],InvalidValue:[1,Ne]},(([e,t,s,n],a)=>{fs[d+a+i]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?F(a,0,e):void 0,s,n)})),ee(fs)};exports.createCheckpoints=Ne,exports.createCustomPersister=(e,t,s,n,a)=>{let o,r,l,i=0,c=0,d=0;const u=[],h=async e=>(2!=i&&(i=1,await g.schedule((async()=>{await e(),i=0}))),g),g={load:async(s,n)=>await h((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(g.stopAutoLoad(),await g.load(s,a),d=1,l=n((async(s,n)=>await h((async()=>{if(n)e.setTransactionChanges(n());else try{e.setContent(s?.()??await t())}catch{}})))),g),stopAutoLoad:()=>(d&&(a(l),l=void 0,d=0),g),save:async t=>(1!=i&&(i=2,await g.schedule((async()=>{try{await s(e.getContent,t)}catch{}i=0}))),g),startAutoSave:async()=>(await g.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();oe(s)&&oe(n)||g.save((()=>[s,n]))})),g),stopAutoSave:()=>(G(o,e.delListener),g),schedule:async(...e)=>(Q(u,...e),await(async()=>{if(!c){for(c=1;!q(r=N(u));)try{await r()}catch{}c=0}})(),g),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(g)},exports.createIndexes=Pe,exports.createMetrics=Be,exports.createQueries=$e,exports.createRelationships=qe,exports.createStore=Ze,exports.defaultSorter=Oe;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Ids",h="Table",g=h+"s",f=h+u,L="Row",w=L+u,S="Sorted"+L+u,v="Cell",R=v+u,I="Value",T=I+"s",p=I+u,C=e=>t+e,y=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,s)=>t[s]===e)),m=(e,t)=>b(e,((s,n)=>0==n||t(e[n-1],s)<=0)),x=(e,t)=>e.sort(t),E=(e,t)=>e.forEach(t),k=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,s)=>e.reduce(t,s),F=(e,t,s)=>e.slice(t,s),Q=(e,...t)=>e.push(...t),z=e=>e.pop(),N=e=>e.shift(),O=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),P=JSON.parse,j=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,s)=>q(e)?s?.():t(e),H=e=>e==s||e==n,K=t=>e(t)==o,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,se=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),ae=(e,t)=>k(Y.entries(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,le=(e,t)=>e?.has(t)??!1,ie=e=>q(e)||0==re(e),ce=e=>[...e?.values()??[]],de=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),Se=(e,t,s)=>q(s)?(he(e,t),e):e?.set(t,s),ve=(e,t,s)=>(le(e,t)||Se(e,t,s()),Le(e,t)),Re=(e,t,s,n=Se)=>(ae(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Ie=(e,t,s)=>{const n={};return ue(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>Ie(e,(e=>Ie(e,t,s)),oe),pe=(e,t,s)=>Ie(e,(e=>Te(e,t,s)),oe),Ce=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},ye=e=>Ce(e,Ce),be=e=>Ce(e,ye),Ve=(e,t,s,n,a=0)=>G((s?ve:Le)(e,t[a],a>D(t)-2?s:ge),(o=>{if(a>D(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ie(o)&&Se(e,t[a]),r})),me=t=>{const s=e(t);return H(s)||s==a&&B(t)?s:void 0},xe=(e,t,s,n,a)=>q(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ee=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),ke=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>e?.add(t),De=(e,t,s)=>{const n=e.hasRow,a=ge(),o=ge(),r=ge(),l=ge(),i=ge(),c=(t,s,...n)=>{const a=ve(i,t,ke);return E(n,(t=>Me(a,t)&&s&&e.callListener(t))),n},d=(t,...s)=>G(Le(i,t),(n=>{E(J(s)?ce(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&Se(i,t)})),u=(e,s)=>{Se(a,e,s),le(o,e)||(Se(o,e,t()),Se(r,e,ge()),Se(l,e,ge()))},h=e=>{Se(a,e),Se(o,e),Se(r,e),Se(l,e),d(e)};return[()=>e,()=>fe(a),e=>we(o,e),e=>le(o,e),e=>Le(a,e),e=>Le(o,e),(e,t)=>Se(o,e,t),u,(t,a,o,i,h)=>{u(t,a);const g=ge(),f=ge(),L=Le(r,t),w=Le(l,t),S=t=>{const o=s=>e.getCell(a,t,s),r=Le(L,t),l=n(a,t)?s(i(o,t)):void 0;if(r===l||U(r)&&U(l)&&V(r,l)||Se(g,t,[r,l]),!q(h)){const e=Le(w,t),s=n(a,t)?h(o,t):void 0;e!=s&&Se(f,t,s)}},v=e=>{o((()=>{ue(g,(([,e],t)=>Se(L,t,e))),ue(f,((e,t)=>Se(w,t,e)))}),g,f,L,w,e),de(g),de(f)};we(L,S),e.hasTable(a)&&E(e.getRowIds(a),(e=>{le(L,e)||S(e)})),v(!0),d(t),c(t,0,e.addRowListener(a,null,((e,t,s)=>S(s))),e.addTableListener(a,(()=>v())))},h,()=>we(i,h),c,d]},Je=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),Ae=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Fe=/^\d+$/,Qe=()=>{const e=[];let s=0;return[n=>(n?N(e):null)??t+s++,t=>{Fe.test(t)&&D(e)<1e3&&Q(e,t)}]},ze=e=>{let s;const[n,a]=Qe(),o=ge();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Se(o,d,[a,r,l,i,c]),Me(Ve(r,l??[t],ke),d),d},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==D(s)?Q(n,e):null===s[t]?ue(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Le(e,s),t+1)));return a(e,0),n})(e,n),(e=>ue(e,(e=>Le(o,e)[0](s,...n??[],...a))))),e=>G(Le(o,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),Se(o,e),a(e),n))),e=>G(Le(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=D(r);l==D(t)?e(s,...r,...a(r)):q(t[l])?E(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ne=Ae((e=>{let s,n,a,o=100,r=ge(),l=ge(),i=1;const c=ge(),d=ge(),[u,h,g]=ze((()=>P)),f=ge(),L=ge(),w=[],S=[],v=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Le(f,s);ue(n,((s,n)=>ue(s,((s,a)=>ue(s,((s,o)=>xe(e,n,a,o,s[t]))))))),ue(a,((s,n)=>Ee(e,n,s[t])))})),i=1},R=e=>{Se(f,e),Se(L,e),h(d,[e])},I=(e,t)=>E(((e,t)=>e.splice(0,t))(e,t??D(e)),R),T=()=>I(w,D(w)-o),p=()=>G(s,(()=>{Q(w,s),T(),I(S),s=void 0,a=1})),C=()=>{s=z(w),a=1},b=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){p();const e=ve(r,t,ge),l=ve(e,s,ge),i=ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ie(Se(l,n))&&ie(Se(e,s))&&ie(Se(r,t))&&C(),M()}})),V=e.addValueListener(null,((e,t,s,n)=>{if(i){p();const e=ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(Se(l,t))&&C(),M()}})),m=(e="")=>(q(s)&&(s=t+n++,Se(f,s,[r,l]),F(s,e),r=ge(),l=ge(),a=1),s),x=()=>{J(w)||(((e,...t)=>{e.unshift(...t)})(S,m()),v(0,s),s=z(w),a=1)},k=()=>{J(S)||(Q(w,s),s=N(S),v(1,s),a=1)},M=()=>{a&&(h(c),a=0)},A=e=>{const t=m(e);return M(),t},F=(e,t)=>(O(e)&&Le(L,e)!==t&&(Se(L,e,t),h(d,[e])),P),O=e=>le(f,e),P={setSize:e=>(o=e,T(),P),addCheckpoint:A,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...S]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:O,getCheckpoint:e=>Le(L,e),goBackward:()=>(x(),M(),P),goForward:()=>(k(),M(),P),goTo:e=>{const t=y(w,e)?x:y(S,e)?k:null;for(;!q(t)&&e!=s;)t();return M(),P},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),P),clear:()=>(I(w),I(S),q(s)||R(s),s=void 0,n=0,A(),P),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(P.clear())})),Oe=(e,t)=>e<t?-1:1,Pe=Ae((e=>{const s=ge(),n=ge(),[a,o,r,l,i,c,d,,u,h,g]=De(e,ge,(e=>q(e)?t:U(e)?k(e,C):C(e))),[f,L,w]=ze((()=>v)),S=(t,s,n)=>{const a=i(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,o,r,l=Oe)=>{const i=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,a,r,u,h,g)=>{let f=0;const w=ke(),S=ke(),v=c(e);if(ue(a,(([e,t],s)=>{const n=ke(e),a=ke(t);ue(n,(e=>he(a,e)?he(n,e):0)),ue(n,(e=>{Me(w,e),G(Le(v,e),(t=>{he(t,s),ie(t)&&(Se(v,e),f=1)}))})),ue(a,(e=>{Me(w,e),le(v,e)||(Se(v,e,ke()),f=1),Me(Le(v,e),s),q(o)||Me(S,e)}))})),t(),ie(h)||(g?we(v,(e=>Me(S,e))):we(r,(e=>G(Le(u,e),(e=>Me(S,e))))),ue(S,(e=>{const t=(t,s)=>l(Le(h,t),Le(h,s),e),s=[...Le(v,e)];m(s,t)||(Se(v,e,ke(x(s,t))),Me(w,e))}))),(f||g)&&!q(i)){const t=[...v];m(t,i)||(d(e,ge(x(t,i))),f=1)}f&&L(s,[e]),ue(w,(t=>L(n,[e,t])))}),Je(a),G(o,Je)),v},delIndexDefinition:e=>(h(e),v),getStore:a,getIndexIds:o,forEachIndex:e=>r(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,c(e)),hasIndex:l,hasSlice:(e,t)=>le(c(e),t),getTableId:i,getSliceIds:e=>fe(c(e)),getSliceRowIds:(e,t)=>ce(Le(c(e),t)),addSliceIdsListener:(e,t)=>f(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>f(s,n,[e,t]),delListener:e=>(w(e),v),destroy:g,getListenerStats:()=>({})};return ee(v)})),je=ge([["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=>j(...e),(e,t)=>j(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:j(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ie(s))return;const[r,l,i,c]=a;return o||=q(e),ue(n,(([s,n])=>{o||(e=q(s)?l?.(e,n,t++):q(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=q(e))})),o?r(ce(s),re(s)):e},Be=Ae((e=>{const s=ge(),[n,a,o,r,l,i,c,,d,u,h]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[g,f,L]=ze((()=>w)),w={setMetricDefinition:(e,t,n,a,o,r,l)=>{const u=K(n)?[n,o,r,l]:Le(je,n)??Le(je,"sum");return d(e,t,((t,n,a,o,r,l)=>{const d=i(e),h=re(o);l||=q(d),t();let g=We(d,h,o,n,u,l);B(g)||(g=void 0),g!=d&&(c(e,g),f(s,[e],g,d))}),Je(a,1)),w},delMetricDefinition:e=>(u(e),w),getStore:n,getMetricIds:a,forEachMetric:o,hasMetric:r,getTableId:l,getMetric:i,addMetricListener:(e,t)=>g(t,s,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return ee(w)})),$e=Ae((e=>{const s=e.createStore,[n,a,o,r,l,,,u,,g,f,I,T]=De(e,(()=>!0),X),p=s(),C=s(),y=ge(),V=(e,t,...s)=>E(s,(s=>Me(ve(ve(y,t,ge),e,ke),s))),m=e=>{G(Le(y,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),de(e)})),E([C,p],(t=>t.delTable(e)))},x=(e,t,s)=>V(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(s,n,a)=>{u(s,n),m(s);const o=[],r=[[null,[n,null,null,[],ge()]]],l=[],i=[],c=[];a({select:(e,s)=>{const n=K(e)?[D(o)+t,e]:[q(s)?e:s,t=>t(e,s)];return Q(o,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=q(s)||K(t)?null:t,a=q(n)?t:s,o=[e,[e,n,K(a)?a:e=>e(a),[],ge()]];return Q(r,o),{as:e=>o[0]=e}},where:(e,t,s)=>Q(l,K(e)?e:q(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,K(t)?[t,s,n,a]:Le(je,t)??[(e,t)=>t]]];return Q(i,o),{as:e=>o[0]=e}},having:(e,t)=>Q(c,K(e)?e:s=>s(e)===t)});const d=ge(o);if(ie(d))return k;const h=ge(r);we(h,((e,[,t])=>G(Le(h,t),(({3:t})=>q(e)?0:Q(t,e)))));const g=ge(i);let f=p;if(ie(g)&&J(c))f=C;else{x(s,f,C);const e=ge();we(g,((t,[s,n])=>Me(ve(e,s,ke),[t,n])));const t=ke();we(d,(s=>le(e,s)?0:Me(t,s)));const n=ge(),a=(t,n,a,o)=>G(t,(([r,l,i,d])=>{we(n,((t,[s])=>{const n=ve(r,t,ge),l=Le(n,a),i=o?void 0:s;if(l!==i){const s=ke([[l,i]]),o=re(n);Se(n,a,i),ue(Le(e,t),(([e,t])=>{const a=We(d[e],o,n,s,t);d[e]=q(me(a))?null:a}))}})),ie(l)||!b(c,(e=>e((e=>d[e]))))?C.delRow(s,i):q(i)?t[2]=C.addRow(s,d):C.setRow(s,i,d)}));V(f,s,f.addRowListener(s,null,((o,r,l,i)=>{const c=[],d=[],u=ge(),h=f.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,a]=i(s,l,e);Q(c,n),Q(d,a),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&Se(u,e,[n])})),g&&a(Ve(n,c,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&a(Ve(n,d,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(s,l,t))),[ge(),ke(),void 0,e]}),(([,e])=>{Me(e,l)})),u,l)})))}x(s,e,f);const L=(t,a,o,r)=>{const i=t=>e.getCell(a,o,t);E(r,(n=>{const[a,,o,r,l]=Le(h,n),c=o?.(i,t),[d,u]=Le(l,t)??[];c!=d&&(q(u)||T(s,u),Se(l,t,q(c)?null:[c,...I(s,1,e.addRowListener(a,c,(()=>L(t,a,c,r))))]))})),(t=>{const a=(s,a)=>e.getCell(...q(a)?[n,t,s]:s===n?[n,t,a]:[Le(h,s)?.[0],Le(Le(h,s)?.[4],t)?.[0],a]);f.transaction((()=>b(l,(e=>e(a)))?we(d,((e,n)=>xe(f,s,t,e,n(a,t)))):f.delRow(s,t)))})(t)},{3:w}=Le(h,null);return f.transaction((()=>I(s,1,e.addRowListener(n,null,((t,a,o)=>{e.hasRow(n,o)?L(o,n,o,w):(f.delRow(s,o),ue(h,(({4:e})=>G(Le(e,o),(([,t])=>{T(s,t),Se(e,o)})))))}))))),k},delQueryDefinition:e=>(m(e),g(e),k),getStore:n,getQueryIds:a,forEachQuery:o,hasQuery:r,getTableId:l,delListener:e=>(C.delListener(e),k),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=C.getListenerStats();return n}};return ae({[h]:[1,1],[h+R]:[0,1],[w]:[0,1],[S]:[0,5],[L]:[1,2],[R]:[0,2],[v]:[1,3]},(([e,t],s)=>{E(e?["get","has","forEach"]:["get"],(e=>k[e+c+s]=(...t)=>C[e+s](...t))),k[d+c+s+i]=(...e)=>C[d+s+i](...F(e,0,t),((s,...n)=>e[t](k,...n)))})),ee(k)})),qe=Ae((e=>{const s=ge(),n=ge(),a=ge(),o=ge(),[r,l,i,c,d,u,,,h,g,f]=De(e,(()=>[ge(),ge(),ge(),ge()]),(e=>q(e)?void 0:e+t)),[L,w,S]=ze((()=>T)),v=(e,t,s)=>G(u(e),(([n,,a])=>{if(!le(a,t)){const o=ke();if(d(e)!=I(e))Me(o,t);else{let e=t;for(;!q(e)&&!le(o,e);)Me(o,e),e=Le(n,e)}if(s)return o;Se(a,t,o)}return Le(a,t)})),R=(e,t)=>G(u(e),(([,,e])=>Se(e,t))),I=e=>Le(s,e),T={setRelationshipDefinition:(e,t,r,l)=>(Se(s,e,r),h(e,t,((t,s)=>{const r=ke(),l=ke(),i=ke(),[c,d]=u(e);ue(s,(([t,s],n)=>{q(t)||(Me(l,t),G(Le(d,t),(e=>{he(e,n),ie(e)&&Se(d,t)}))),q(s)||(Me(l,s),le(d,s)||Se(d,s,ke()),Me(Le(d,s),n)),Me(r,n),Se(c,n,s),we(Le(o,e),(t=>{le(v(e,t),n)&&Me(i,t)}))})),t(),ue(r,(t=>w(n,[e,t]))),ue(l,(t=>w(a,[e,t]))),ue(i,(t=>{R(e,t),w(o,[e,t])}))}),Je(l)),T),delRelationshipDefinition:e=>(Se(s,e),g(e),T),getStore:r,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:I,getRemoteRowId:(e,t)=>Le(u(e)?.[0],t),getLocalRowIds:(e,t)=>ce(Le(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>q(u(e))?[t]:ce(v(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>L(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),L(s,o,[e,t])),delListener:e=>(R(...S(e)),T),destroy:f,getListenerStats:()=>({})};return ee(T)})),Ge=e=>[e,e],He=()=>[ge(),ge()],Ke=e=>[...e],Ue=([e,t])=>e===t,Xe=(e,t,s)=>q(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!oe(e)),Ye=(e,t,s)=>Se(e,t,Le(e,t)==-s?void 0:s),Ze=()=>{let e,t,s=!1,n=!1,o=0;const c=ge(),u=ge(),S=ge(),b=ge(),m=ge(),M=ge(),D=ge(),J=ge(),A=ge(),z=ge(),N=ge(),j=ge(),W=ge(),B=ke(),$=ge(),U=ge(),X=ge(),Y=ge(),Z=He(),_=He(),te=He(),re=He(),ce=He(),Ve=He(),De=He(),Je=He(),Ae=He(),Fe=He(),Ne=He(),Pe=He(),je=He(),We=He(),Be=ge(),$e=He(),[qe,_e,et,tt]=ze((()=>fs)),st=e=>{if(!Xe(e,((e,t)=>y([r,l],t))))return!1;const t=e[r];return!(!H(t)&&t!=a||(me(e[l])!=t&&ne(e,l),0))},nt=(t,s)=>(!e||le(z,s)||Jt(s))&&Xe(t,((e,t)=>at(s,t,e)),(()=>Jt(s))),at=(e,t,s,n)=>Xe(n?s:it(s,e,t),((n,a)=>G(ot(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,s,n,a)=>e?G(Le(Le(z,t),n),(e=>me(a)!=e[r]?Jt(t,s,n,a,e[l]):a),(()=>Jt(t,s,n,a))):q(me(a))?Jt(t,s,n,a):a,rt=(e,t)=>Xe(t?e:ct(e),((t,s)=>G(lt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>At())),lt=(e,s)=>t?G(Le(j,e),(t=>me(s)!=t[r]?At(e,s,t[l]):s),(()=>At(e,s))):q(me(s))?At(e,s):s,it=(e,t,s)=>(G(Le(N,t),(([n,a])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(a,(n=>{se(e,n)||Jt(t,s,n)}))})),e),ct=e=>(t&&(ue(W,((t,s)=>{se(e,s)||(e[s]=t)})),ue(B,(t=>{se(e,t)||At(t)}))),e),dt=e=>Re(z,e,((e,t,s)=>{const n=ge(),a=ke();Re(ve(z,t,ge),s,((e,t,s)=>{Se(e,t,s),G(s[l],(e=>Se(n,t,e)),(()=>Me(a,t)))})),Se(N,t,[n,a])}),((e,t)=>{Se(z,t),Se(N,t)})),ut=e=>Re(j,e,((e,t,s)=>{Se(j,t,s),G(s[l],(e=>Se(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{Se(j,t),Se(W,t),he(B,t)})),ht=e=>oe(e)?os():es(e),gt=e=>Re(X,e,((e,t,s)=>ft(t,s)),((e,t)=>Ct(t))),ft=(e,t)=>Re(ve(X,e,(()=>(mt(e,1),Se($,e,Qe()),Se(U,e,ge()),ge()))),t,((t,s,n)=>Lt(e,t,s,n)),((t,s)=>yt(e,t,s))),Lt=(e,t,s,n,a)=>Re(ve(t,s,(()=>(xt(e,s,1),ge()))),n,((t,n,a)=>wt(e,s,t,n,a)),((n,o)=>bt(e,t,s,n,o,a))),wt=(e,t,s,n,a)=>{le(s,n)||Et(e,t,n,1);const o=Le(s,n);a!==o&&(kt(e,t,n,o,a),Se(s,n,a))},St=(e,t,s,n,a)=>G(Le(t,s),(t=>wt(e,s,t,n,a)),(()=>Lt(e,t,s,it({[n]:a},e,s)))),vt=e=>oe(e)?is():ts(e),Rt=e=>Re(Y,e,((e,t,s)=>It(t,s)),((e,t)=>Vt(t))),It=(e,t)=>{le(Y,e)||Mt(e,1);const s=Le(Y,e);t!==s&&(Dt(e,s,t),Se(Y,e,t))},Tt=(e,t)=>{const[s]=Le($,e),n=s(t);return le(Le(X,e),n)?Tt(e,t):n},pt=e=>Le(X,e)??ft(e,{}),Ct=e=>ft(e,{}),yt=(e,t,s)=>{const[,n]=Le($,e);n(s),Lt(e,t,s,{},!0)},bt=(e,t,s,n,a,o)=>{const r=Le(Le(N,e)?.[0],a);if(!q(r)&&!o)return wt(e,s,n,a,r);const l=t=>{kt(e,s,t,Le(n,t)),Et(e,s,t,-1),Se(n,t)};q(r)?l(a):we(n,l),ie(n)&&(xt(e,s,-1),ie(Se(t,s))&&(mt(e,-1),Se(X,e),Se($,e),Se(U,e)))},Vt=e=>{const t=Le(W,e);if(!q(t))return It(e,t);Dt(e,Le(Y,e)),Mt(e,-1),Se(Y,e)},mt=(e,t)=>Ye(c,e,t),xt=(e,t,s)=>Ye(ve(S,e,ge),t,s),Et=(e,t,s,n)=>{const a=Le(U,e),o=Le(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Ye(ve(u,e,ge),s,n),Se(a,s,o!=-n?o+n:null),Ye(ve(ve(b,e,ge),t,ge),s,n)},kt=(e,t,s,n,a)=>ve(ve(ve(m,e,ge),t,ge),s,(()=>[n,0]))[1]=a,Mt=(e,t)=>Ye(M,e,t),Dt=(e,t,s)=>ve(D,e,(()=>[t,0]))[1]=s,Jt=(e,t,s,n,a)=>(Q(ve(ve(ve(J,e,ge),t,ge),s,(()=>[])),n),a),At=(e,t,s)=>(Q(ve(A,e,(()=>[])),t),s),Ft=(e,t,s)=>G(Le(Le(Le(m,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ge(Xt(e,t,s))])),Qt=e=>G(Le(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ge(_t(e))])),zt=e=>ie(J)||ie(Fe[e])?0:ue(e?be(J):J,((t,s)=>ue(t,((t,n)=>ue(t,((t,a)=>_e(Fe[e],[s,n,a],t))))))),Nt=e=>ie(A)||ie(Ne[e])?0:ue(e?Ce(A):A,((t,s)=>_e(Ne[e],[s],t))),Ot=(e,t,s)=>{if(!ie(t))return _e(e,s,(()=>Ie(t))),1},Pt=e=>{const t=ie(Ve[e]),s=ie(Je[e])&&ie(re[e])&&ie(ce[e])&&t&&ie(_[e]),n=ie(Ae[e])&&ie(De[e])&&ie(te[e])&&ie(Z[e]);if(!s||!n){const a=e?[Ce(c),ye(u),ye(S),be(b),be(m)]:[c,u,S,b,m];if(!s){Ot(_[e],a[0]),ue(a[1],((t,s)=>Ot(re[e],t,[s])));const s=ke();ue(a[2],((n,a)=>{Ot(ce[e],n,[a])&&!t&&(_e(Ve[e],[a,null]),Me(s,a))})),t||ue(a[4],((t,n)=>{if(!le(s,n)){const s=ke();ue(t,(e=>ue(e,(([t,n],a)=>n!==t?Me(s,a):he(e,a))))),ue(s,(t=>_e(Ve[e],[n,t])))}})),ue(a[3],((t,s)=>ue(t,((t,n)=>Ot(Je[e],t,[s,n])))))}if(!n){let t;ue(a[4],((s,n)=>{let a;ue(s,((s,o)=>{let r;ue(s,(([s,l],i)=>{l!==s&&(_e(Ae[e],[n,o,i],l,s,Ft),t=a=r=1)})),r&&_e(De[e],[n,o],Ft)})),a&&_e(te[e],[n],Ft)})),t&&_e(Z[e],void 0,Ft)}}},jt=e=>{const t=ie(je[e]),s=ie(We[e])&&ie(Pe[e]);if(!t||!s){const n=e?[Ce(M),Ce(D)]:[M,D];if(t||Ot(je[e],n[0]),!s){let t;ue(n[1],(([s,n],a)=>{n!==s&&(_e(We[e],[a],n,s,Qt),t=1)})),t&&_e(Pe[e],void 0,Qt)}}},Wt=(e,...t)=>(us((()=>e(...k(t,C)))),fs),Bt=()=>[Ie(m,((e,t)=>-1===Le(c,t)?null:Ie(e,((e,s)=>-1===Le(Le(S,t),s)?null:Ie(e,(([,e])=>e??null),((e,t)=>Ue(t)))),oe)),oe),Ie(D,(([,e])=>e??null),((e,t)=>Ue(t)))],$t=()=>({cellsTouched:s,valuesTouched:n,changedCells:pe(m,Ke,Ue),invalidCells:pe(J),changedValues:Ie(D,Ke,Ue),invalidValues:Ie(A),changedTableIds:Ie(c),changedRowIds:Te(S),changedCellIds:pe(b),changedValueIds:Ie(M)}),qt=()=>pe(X),Gt=()=>fe(X),Ht=e=>fe(Le(X,C(e))),Kt=(e,t,s,n=0,a)=>{return k(F(x((o=Le(X,C(e)),r=(e,s)=>[q(t)?s:Le(e,C(t)),s],k([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Oe(e,t)*(s?-1:1))),n,q(a)?a:n+a),(([,e])=>e));var o,r},Ut=(e,t)=>fe(Le(Le(X,C(e)),C(t))),Xt=(e,t,s)=>Le(Le(Le(X,C(e)),C(t)),C(s)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>Le(Y,C(e)),es=e=>Wt((()=>(e=>Xe(e,nt,Jt))(e)?gt(e):0)),ts=e=>Wt((()=>rt(e)?Rt(e):0)),ss=e=>{try{ht(P(e))}catch{}return fs},ns=t=>Wt((()=>{if((e=Xe(t,(e=>Xe(e,st))))&&(dt(t),!ie(X))){const e=qt();os(),es(e)}})),as=e=>Wt((()=>{if(t=(e=>Xe(e,st))(e)){const s=Yt();ds(),is(),t=!0,ut(e),ts(s)}})),os=()=>Wt((()=>gt({}))),rs=e=>Wt((e=>le(X,e)?Ct(e):0),e),ls=(e,t)=>Wt(((e,t)=>G(Le(X,e),(s=>le(s,t)?yt(e,s,t):0))),e,t),is=()=>Wt((()=>Rt({}))),cs=()=>Wt((()=>{dt({}),e=!1})),ds=()=>Wt((()=>{ut({}),t=!1})),us=(e,t)=>{if(-1!=o){hs();const s=e();return gs(t),s}},hs=()=>(-1!=o&&o++,1==o&&_e(Be,void 0,Bt,$t),fs),gs=e=>(o>0&&(o--,0==o&&(s=!ie(m),n=!ie(D),o=1,zt(1),s&&Pt(1),Nt(1),n&&jt(1),e?.(Bt,$t)&&(ue(m,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>xe(fs,t,s,n,e))))))),ue(D,(([e],t)=>Ee(fs,t,e))),s=n=!1),_e($e[0],void 0,Bt,$t),o=-1,zt(0),s&&Pt(0),Nt(0),n&&jt(0),_e($e[1],void 0,Bt,$t),o=0,s=n=!1,E([c,u,S,b,m,J,M,D,A],de))),fs),fs={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Te(Le(X,C(e))),getTableCellIds:e=>fe(Le(U,C(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(Le(Le(X,C(e)),C(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ie(X),hasTable:e=>le(X,C(e)),hasTableCell:(e,t)=>le(Le(U,C(e)),C(t)),hasRow:(e,t)=>le(Le(X,C(e)),C(t)),hasCell:(e,t,s)=>le(Le(Le(X,C(e)),C(t)),C(s)),hasValues:()=>!ie(Y),hasValue:e=>le(Y,C(e)),getTablesJson:()=>O(X),getValuesJson:()=>O(Y),getJson:()=>O([X,Y]),getTablesSchemaJson:()=>O(z),getValuesSchemaJson:()=>O(j),getSchemaJson:()=>O([z,j]),setContent:([e,t])=>Wt((()=>{(oe(e)?os:es)(e),(oe(t)?is:ts)(t)})),setTables:es,setTable:(e,t)=>Wt((e=>nt(t,e)?ft(e,t):0),e),setRow:(e,t,s)=>Wt(((e,t)=>at(e,t,s)?Lt(e,pt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>us((()=>{let n;return at(e,n,t)&&(e=C(e),Lt(e,pt(e),n=Tt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Wt(((e,t)=>{if(at(e,t,s,1)){const n=pt(e);ae(s,((s,a)=>St(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Wt(((e,t,s)=>G(ot(e,t,s,K(n)?n(Xt(e,t,s)):n),(n=>St(e,pt(e),t,s,n)))),e,t,s),setValues:ts,setPartialValues:e=>Wt((()=>rt(e,1)?ae(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(lt(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{ae(e[0],((e,t)=>q(e)?rs(t):ae(e,((e,s)=>q(e)?ls(t,s):ae(e,((e,n)=>xe(fs,t,s,n,e))))))),ae(e[1],((e,t)=>Ee(fs,t,e)))})),setTablesJson:ss,setValuesJson:e=>{try{vt(P(e))}catch{}return fs},setJson:e=>{try{const[t,s]=P(e);ht(t),vt(s)}catch{ss(e)}return fs},setTablesSchema:ns,setValuesSchema:as,setSchema:(e,t)=>Wt((()=>{ns(e),as(t)})),delTables:os,delTable:rs,delRow:ls,delCell:(e,t,s,n)=>Wt(((e,t,s)=>G(Le(X,e),(a=>G(Le(a,t),(o=>le(o,s)?bt(e,a,t,o,s,n):0))))),e,t,s),delValues:is,delValue:e=>Wt((e=>le(Y,e)?Vt(e):0),e),delTablesSchema:cs,delValuesSchema:ds,delSchema:()=>Wt((()=>{cs(),ds()})),transaction:us,startTransaction:hs,finishTransaction:gs,forEachTable:e=>ue(X,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachTableCell:(e,t)=>we(Le(U,C(e)),t),forEachRow:(e,t)=>ue(Le(X,C(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le(X,C(e)),C(t)),s),forEachValue:e=>we(Y,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=Kt(e,t,s,n,a);return qe((()=>{const r=Kt(e,t,s,n,a);V(r,l)||(l=r,o(fs,e,t,s,n,a,l))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(tt(e),fs),delListener:e=>(et(e),fs),getListenerStats:()=>({}),createStore:Ze};return ae({[g]:[0,Z],[f]:[0,_],[h]:[1,te,[Gt]],[h+R]:[1,re,[Gt]],[w]:[1,ce,[Gt]],[L]:[2,De,[Gt,Ht]],[R]:[2,Je,[Gt,Ht]],[v]:[3,Ae,[Gt,Ht,Ut],e=>Ge(Xt(...e))],InvalidCell:[3,Fe],[T]:[0,Pe],[p]:[0,je],[I]:[1,We,[Zt],e=>Ge(_t(e[0]))],InvalidValue:[1,Ne]},(([e,t,s,n],a)=>{fs[d+a+i]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?F(a,0,e):void 0,s,n)})),ee(fs)};exports.createCheckpoints=Ne,exports.createCustomPersister=(e,t,s,n,a)=>{let o,r,l,i=0,c=0,d=0;const u=[],h=async e=>(2!=i&&(i=1,await g.schedule((async()=>{await e(),i=0}))),g),g={load:async(s,n)=>await h((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(g.stopAutoLoad(),await g.load(s,a),d=1,l=n((async(s,n)=>await h((async()=>{if(n)e.setTransactionChanges(n());else try{e.setContent(s?.()??await t())}catch{}})))),g),stopAutoLoad:()=>(d&&(a(l),l=void 0,d=0),g),save:async t=>(1!=i&&(i=2,await g.schedule((async()=>{try{await s(e.getContent,t)}catch{}i=0}))),g),startAutoSave:async()=>(await g.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();oe(s)&&oe(n)||g.save((()=>[s,n]))})),g),stopAutoSave:()=>(G(o,e.delListener),g),schedule:async(...e)=>(Q(u,...e),await(async()=>{if(!c){for(c=1;!q(r=N(u));)try{await r()}catch{}c=0}})(),g),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(g)},exports.createIndexes=Pe,exports.createMetrics=Be,exports.createQueries=$e,exports.createRelationships=qe,exports.createStore=Ze,exports.defaultSorter=Oe;
Binary file
package/lib/cjs/tools.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),r="type",s="default",I="Listener",$="get",c="add",i="Ids",u="Table",p=u+"s",b=u+i,C="Row",h=C+i,g="Sorted"+C+i,m="Cell",f=m+i,w="Value",y=w+"s",T=w+i,v=(e,t)=>e.every(t),V=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),R=(e,t=l)=>e.join(t),k=(e,t)=>e.map(t),S=e=>e.length,A=(e,t)=>e.filter(t),P=(e,...t)=>e.push(...t),E=e=>e.pop(),D=(e,...t)=>e.unshift(...t),O=e=>e.shift(),N=JSON.parse,L=isFinite,G=(e,t)=>e instanceof t,j=e=>null==e,M=e=>e==n||e==o,J=t=>e(t)==n,z=e=>Array.isArray(e),W=t=>{const l=e(t);return M(l)||l==d&&L(t)?l:void 0},B=Object,F=B.keys,U=B.freeze,_=e=>G(e,B)&&e.constructor==B,Z=(e,t)=>k(B.entries(e),(([e,l])=>t(l,e))),H=e=>S(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>e?.has(t)??!1,K=e=>[...e?.values()??[]],X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),ee=e=>new Map(e),te=(e,t)=>e?.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>k([...e?.entries()??[]],(([e,l])=>t(l,e))),ne=(e,t,l)=>j(l)?(Y(e,t),e):e?.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),re=e=>e.toLowerCase(),se="a ",Ie="A function for",$e=", and registers a listener so that any changes to that result will cause a re-render",ce="Callback",ie="Del",ue="Deps",pe=ue+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",ge="Id",me="Invalid",fe="Json",we=re(I),ye="?: ",Te=" | undefined",ve="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Se="Represents",Ae="rowId: "+ge,Pe="Schema",Ee="Set",De=", descending?: boolean, offset?: number, limit?: number",Oe="[]",Ne="the Store",Le="Transaction",Ge=Le+"Changes",je=re(Le),Me="Execute a "+je+" to make multiple mutations",Je="Explicitly starts a "+je,ze="Explicitly finishes a "+je,We="the end of the "+je,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=se+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+Ne:l),Ye=(e=0,t,a=0)=>ut[t]+He+Xe(e,1)+(a?" when setting it":l),et=(e,t=0)=>Se+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+u,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,a=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(a?l:"s"),rt=e=>`the '${e}' `+u,st=e=>"the specified Row in "+rt(e),It=(e,t=0)=>ut[t]+` ${Xe()} `+rt(e),$t=(e,t=0)=>ut[t]+` ${Xe()} `+st(e),ct=(e,t,l=0)=>ut[l]+` the '${t}' Cell for `+st(e),it=(e,t=0)=>ut[t]+` the '${e}' Value`,ut=["Gets","Checks existence of","Sets","Deletes","Sets part of",Se,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[$,"has","set","del","set","forEach",c,l],bt=[Ne,p,qe+u+He+i,se+u,qe+C+He+i,se+C,qe+m+He+i,se+m,"invalid Cell changes",y,qe+w+He+i,se+w,"invalid Value changes",qe+"sorted "+C+He+i,qe+m+He+i+" anywhere"],Ct=[l,"tabular ","keyed value "],ht=e=>new Set(z(e)||j(e)?e:[e]),gt=(e,t)=>e?.add(t),mt=/[^A-Za-z]+/,ft=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),Tt=e=>e.includes(a),vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?vt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>R(k(e.split(ft),((e,l)=>(l>0||t?de:re)(yt(e,0,1))+yt(e,1)))),St=e=>de(R((e&&!mt.test(e[0])?e:" "+e).split(ft),"_")),At=e=>`/** ${e}. */`,Pt=(...e)=>R(A(e,(e=>e)),", "),Et=(...e)=>"{"+R(e,"; ")+"}",Dt=(...e)=>Et(...k(e,(e=>"readonly "+e))),Ot=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),a=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>R(Rt(e),"\n"),(t,l,...a)=>x(a,(a=>x([0,1],(n=>(t??n)==n?gt(oe(e[n],l,ht),a):0)))),(e,a,n,o=l,d=1)=>vt(t,e,[a,n,o,d]),(e,t,l)=>vt(a,e,z(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>te(a,e)===t?e:vt(a,e,t),(t=0)=>k([...V(ae(e[t],((e,t)=>`import {${R(V(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Tt(e)!=Tt(t)?Tt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,a,n],o)=>[At(t),`${n?he+" ":l}type ${o}${a} = ${e};`,l])),()=>ae(a,((e,t)=>(e=z(e)?e:[e],P(e,E(e)+";"),[`const ${t} = ${O(e)}`,e,l])))]},Nt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(St(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[r],e[s],l(St(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[r],t[s],l(St(a),`'${a}'`),kt(a,1))))],Gt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(p,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t,a)=>`'${e}'${j(a)?"?":l}: ${t}`)))+"}"))),Ye(1,5)),s=e(p+Ue,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),$=e(u+ge,"keyof "+r,"A "+u+" Id in "+Ne),c=`<TId extends ${$}>`,i=e(u,ve+`<${r}[TId]>`,"A "+u+" in "+Ne,c),w=e(u+Ue,ve+`<${s}[TId]>`,"A "+u+" in "+Ne+_e,c),y=e(C,i+"<TId>[Id]","A "+C+" in a "+u,c),T=e(C+Ue,w+"<TId>[Id]","A "+C+" in a "+u+_e,c),v=e(m+ge,`Extract<keyof ${y}<TId>, Id>`,"A "+m+" Id in a "+C,c),V=e(m,ve+`<${r}[TId]>[Id][CId]`,"A "+m+" in a "+C,`<TId extends ${$}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,m+" Ids and types in a "+C,`<TId extends ${$}, CId = ${v}<TId>>`,0),R=e(m+ce,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(se+m+" Id, and "+m),c),k=e(C+ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(se+C+" Id, and a "+m+" iterator"),c),S=e(u+m+ce,`(cellId: ${v}<TId>, count: number) `+Fe,nt(se+m+" Id, and count of how many times it appears"),c),A=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Fe}] : never`,u+" Ids and callback types",`<TId = ${$}>`,0),P=e(u+ce,`(...[tableId, forEachRow]: ${A})`+Fe,nt(se+u+" Id, and a "+C+" iterator"),l),E=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${E}) => CellChange`,Ie+" returning information about any Cell's changes during a "+je),O=e(p+I,`(${d}, getCellChange: ${D}${Te})`+Fe,ot(1)),N=e(b+I,`(${d})`+Fe,ot(2)),L=e(u+I,`(${d}, tableId: ${$}, getCellChange: ${D}${Te})`+Fe,ot(3)),G=e(u+f+I,`(${d}, tableId: ${$})`+Fe,ot(14,3)),M=e(h+I,`(${d}, tableId: ${$})`+Fe,ot(4,3)),J=e(g+I,"("+Pt(d,"tableId: "+$,"cellId: Id"+Te,"descending: boolean","offset: number","limit: number"+Te,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(C+I,"("+Pt(""+d,"tableId: "+$,Ae,`getCellChange: ${D}${Te}`)+")"+Fe,ot(5,3)),W=e(f+I,"("+Pt(""+d,"tableId: "+$,Ae)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Ae}, cellId: CId, newCell: ${V}<TId, CId> ${Te}, oldCell: ${V}<TId, CId> ${Te}, getCellChange: ${D} ${Te}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${v}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[r,s,$,i,w,y,T,v,V,R,k,S,P,O,N,L,G,M,J,z,W,e(m+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(me+m+I,`(${d}, tableId: Id, ${Ae}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Et(...n(((e,t,a)=>`'${e}'${j(a)?"?":l}: ${t}`))),Ye(2,5)),r=e(y+Ue,Et(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),s=e(w+ge,"keyof "+d,"A "+w+" Id in "+Ne),$=e(w,ve+`<${d}[VId]>`,"A "+w+" Id in "+Ne,`<VId extends ${s}>`),c=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${$}<VId>] : never`,w+" Ids and types in "+Ne,`<VId = ${s}>`,0),i=e(w+ce,`(...[valueId, value]: ${c})`+Fe,nt(se+w+" Id, and "+w)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,Ie+" returning information about any Value's changes during a "+je),p=e(y+I,`(${o}, getValueChange: ${u}${Te})`+Fe,ot(9)),b=e(T+I,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${$}<VId> ${Te}, oldValue: ${$}<VId> ${Te}, getValueChange: ${u} ${Te}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,$,i,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(me+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Le+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+je)],jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Mt=(e,t=l)=>`fluent(() => ${jt(e,t)})`,Jt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,zt=(e,a,n)=>{const[d,$,v,V,k,S,A,E]=Ot(),[O,N,L]=Lt(e,a,k),[G,M,z]=Gt(v,O,N,L),W=ee(),B=(e=0)=>ae(W,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||D(s,At(o)),P(s,l),s})),F=(e,t,a,n,o,d=l)=>vt(W,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,r=l,s=l)=>F(pt[e]+t+(4==e?Ve:l)+a,d,n,(n==H?Mt:jt)(pt[e]+(4==e?Ve:l)+a,r,e?void 0:n),o,s),_=(e,t,a,n=l,o=l,d=1,r=l)=>F(c+e+I,(n?n+", ":l)+we+": "+t+(d?", mutator?: boolean":l),ge,Jt(c+e+I,o,d?"mutator":l),a,r),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if($(1,Z,H,`create${H} as create${H}Decl`),Q(e))$(null,t,p);else{$(0,t,"CellChange"),$(null,t,i);const[e,a,n,d,I,c,w,y,T,V,S,A,E,D,L,M,z,W,B,F,Q,le,ae]=G(q,H),de=ee();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+u,d+l,Se+` the '${e}' `+u),v(t+u+Ue,I+l,Se+` the '${e}' `+u+_e),v(t+C,c+l,et(e)),v(t+C+Ue,w+l,et(e,1)),v(t+m+ge,y+l,`A Cell Id for the '${e}' `+u),v(t+m+ce,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+u)),v(t+C+ce,S+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+u+m+ce,A+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,E,D,L,M,z,W,B,F,Q,le,ae),oe=[e,a,n,y,D,L,M,z,W,B,F,Q,le,de],x([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,Ye(1,n),t,a))),U(0,l,b,n+Oe,tt(u,Ne)),U(5,l,u,Be,lt(u,Ne),"tableCallback: "+E,"tableCallback as any"),O(((e,t,a)=>{const[n,d,r,s,I,$,c,p]=te(de,e);x([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],r)=>U(r,t,u,n,It(e,r),o,a+d))),U(0,t,u+f,i,tt(m,"the whole of "+rt(e)),l,a),U(5,t,u+m,Be,lt(u+m,"the whole of "+rt(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,h,i,tt(C,rt(e)),l,a),U(0,t,g,i,tt(C,rt(e),1),"cellId?: "+I+De,a+", cellId, descending, offset, limit"),U(5,t,C,Be,lt(C,rt(e)),"rowCallback: "+c,a+", rowCallback as any"),x([[r],[o],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>U(r,t,C,n,$t(e,r),Ae+o,a+", rowId"+d))),U(6,t,C,ge+Te,"Add a new Row to "+rt(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Oe,tt(m,st(e)),Ae,a+", rowId"),U(5,t,m,Be,lt(m,st(e)),Ae+", cellCallback: "+$,a+", rowId, cellCallback as any"),N(e,((n,d,r,s,I)=>{const $="Map"+kt(d,1);ne(Y,d,$);const c=d+(j(r)?Te:l);x([[c],[o],[H,`, cell: ${d} | `+$,", cell as any"],[H]],(([o,d=l,r=l],$)=>U($,t+I,m,o,ct(e,n,$),Ae+d,a+", rowId, "+s+r))),U(1,t+I,u+m,o,ut[1]+` the '${n}' Cell anywhere in `+rt(e),l,a+", "+s)}))})),U(0,l,p+fe,fe,Ye(1,6)),U(2,l,p+fe,H,Ye(1,7),"tablesJson: "+fe,"tables"+fe),_(p,D,Ye(1,8)+" changes"),_(b,L,dt(2,0,1)),_(u,M,dt(3,0),`tableId: ${n} | null`,"tableId"),_(u+f,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(h,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,B,dt(13,3,1),Pt("tableId: TId",`cellId: ${y}<TId>`+Te,"descending: boolean","offset: number","limit: number"+Te),Pt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${R(O((e=>te(de,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(me+m,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...K(Y)),P(X,".set"+p+Pe+"({",Rt(O(((e,t,a)=>[`[${a}]: {`,...N(e,((e,t,a,n)=>`[${n}]: {[${k(St(r),`'${r}'`)}]: ${k(St(t),`'${t}'`)}${j(a)?l:`, [${k(St(s),`'${s}'`)}]: `+(J(a)?k(St(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Q(a))$(null,t,y);else{const[e,a,n,d,I,c,i,u,p]=M(q,H);$(1,Z,e,a,n,I,c,i,u,p),de=[e,a,n,c,i,u],x([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,Ye(2,n),t,a))),U(0,l,T,n+Oe,tt(w,Ne)),U(5,l,w,"void",lt(w,Ne),"valueCallback: "+I,"valueCallback as any"),L(((e,t,a,n,d)=>{const r="Map"+kt(t,1);ne(Y,t,r),x([[t],[o],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,a,o=l],r)=>U(r,d,w,t,it(e,r),a,n+o)))})),U(0,l,y+fe,fe,Ye(2,6)),U(2,l,y+fe,H,Ye(2,7),"valuesJson: "+fe,"values"+fe),_(y,c,Ye(2,8)+" changes"),_(T,i,dt(10,0,1)),_(w,u,dt(11,0),`valueId: ${n} | null`,"valueId"),_(me+w,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...K(Y)),$(0,t,"ValueChange"),P(X,".set"+y+Pe+"({",L(((e,t,a,n)=>[`[${n}]: {[${k(St(r),`'${r}'`)}]: ${k(St(t),`'${t}'`)}${j(a)?l:`, [${k(St(s),`'${s}'`)}]: `+(J(a)?k(St(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,Ye(0,0)),U(2,l,"Content",H,Ye(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Ge,H,`Applies a set of ${Ge} to the Store`,"transactionChanges: "+Ge,"transactionChanges"),le(Y,((e,t)=>v(t,`(cell: ${e}${Te}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,t,"DoRollback",ge,"IdOrNull",fe,"Store",Ge),$(0,t,"Get"+Ge,"GetTransactionLog"),U(0,l,fe,fe,Ye(0,6)),U(2,l,fe,H,Ye(0,7),"tablesAndValuesJson: "+fe,"tablesAndValuesJson"),U(7,l,je,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,l,"start"+Le,H,Je),U(7,l,"finish"+Le,H,ze,be,"doRollback");const re=z(q,H);return _("Start"+Le,re,ke+" just before the start of the "+je,l,l,0),_("WillFinish"+Le,re,ke+" just before "+We,l,l,0),_("DidFinish"+Le,re,ke+" just after "+We,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+Ne,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",ut[0]+" the underlying Store object"),$(1,t,"createStore"),$(1,Z,H,`create${H} as create${H}Decl`,re),k("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),k(q,["{",...B(1),"}"]),[d(...S(0),...A(),he+" interface "+H+" {",...B(0),"}",l,At(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),d(...S(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...E(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>$+e,Bt=e=>Pt(Wt(e),Wt(e)+ue),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+ce+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=Pt(nl+")"+Fe,_t),dl="then, then"+ue,rl=el+Kt+ge,sl="View",Il=(e,...t)=>Pt(...t,we+": "+e,we+pe,"mutator?: boolean"),$l=(...e)=>Pt(...e,we,we+ue,"mutator"),cl=(e,a,n,o,d)=>{const[r,s,$,c,v,V,x,k]=Ot(),[S,A,E]=Lt(e,a,v),O=`./${kt(n)}.d`,N=`./${kt(n)}-ui-react.d`,L="tinybase/ui-react",G=kt(n,1),M=kt(G),J=G+"Or"+G+ge,z=M+"Or"+G+ge,W=M+`={${M}}`,B=ee(),F=(e,t,a,n,o,d=l)=>(s(1,N,e+" as "+e+"Decl"),vt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,r=l,I=l,$=l)=>(s(1,L,`use${t} as use${t}Core`),U(e,Pt(o,X,I),a,le+`(${z}, use${t}Core, [`+(d||l)+($?"], ["+$:l)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,a,n,o,d],r)=>{const s=e?[he+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[he+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||D(s,At(o)),P(s,l),s}));s(null,t,ge,"Store",ce,Zt+"ized"+ce),s(0,L,"ComponentReturnType"),s(null,L,"ExtraProps"),s(0,O,G);const q=$(J,G+" | "+ge,`Used when you need to refer to a ${G} in a React hook or component`),K=$(Re+xe,Dt(M+ye+G,M+`ById?: {[${M}Id: Id]: ${G}}`),`Used with the ${Re} component, so that a `+G+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,N,q,K);const X=z+ye+q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${G}?, {[${M}Id: Id]: ${G}}?]>([])`),U("Create"+G,`create: () => ${G}, create`+pe,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const Y=U(G,"id?: Id",G+Te,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${Re} component context`),le=c("useHook",z+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${M} : ${z})?.getStore(), ...postParams)`]),ne=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=c("wrap",Pt("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;"]),de=v("NullComponent","() => null");if(!Q(e)){const[e,a,n,d,r,w,y,T,v,V,x,k,P,E]=o;s(null,O,e,a,n,r,w,y,T,v,V,x,k,P),s(0,O,d),s(1,O,G),s(null,t,i,"IdOrNull");const D=c("tableView",`{${M}, rowComponent, getRowComponentProps`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,W,Ut,"/>","))",ll,", tableId,",");"]),L=c("getDefaultTableComponent","tableId: Id",R(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=c("getDefaultCellComponent","tableId: Id, cellId: Id",R(S(((e,t,l)=>`tableId == ${l} ? ${R(A(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(p,p,e,Ye(1,0)+$e);const z=_(b,b,n+Oe,tt(u,Ne)+$e);_(Ee+p+ce,Ee+p+ce,Yt,Ye(1,9)+qt,Pt(Wt(p)+Ht+a,Wt(p)+pe),Bt(p),Xt,Pt(nl,`tables: ${a})`+Fe,_t),dl),_(ie+p+ce,ie+p+ce,ce,Ye(1,12),l,l,l,ol,dl);const B=$(m+xe,Dt("tableId?: TId","rowId: Id","cellId?: CId",M+ye+G,Ft),at(se+m),`<TId extends ${n}, CId extends ${d}<TId>>`),F=$(C+xe,Dt("tableId?: TId","rowId: Id",M+ye+G,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,al,Ft),at(se+C),`<TId extends ${n}>`),U=$(u+xe,Dt("tableId?: TId",M+ye+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+u),`<TId extends ${n}>`),H=$("Sorted"+u+xe,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ye+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+"sorted "+u),`<TId extends ${n}>`),Q=$(p+xe,Dt(M+ye+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));s(1,N,Q,U,H,F,B),Z(p+sl,"{"+M+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+L+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+$e),S(((e,t,a)=>{const[n,o,d,r,I]=te(E,e);s(null,O,n,o,d,r,I),_(t+u,u,n,It(e)+$e,l,a),_(t+u+f,u+f,i,tt(m,"the whole of "+rt(e))+$e,l,a);const $=_(t+h,h,i,tt(C,rt(e))+$e,l,a),c=_(t+g,g,i,tt(C,rt(e),1)+$e,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,$t(e)+$e,rl,Pt(a,el));const p=_(t+f,f,I+Oe,tt(m,st(e))+$e,rl,Pt(a,el));_(Ee+t+u+ce,Ee+u+ce,Yt,It(e,9)+qt,Pt(Wt(u)+Ht+o,Wt(u)+pe),Pt(a,Bt(u)),Xt,Pt(nl,`table: ${o})`+Fe,_t),dl),_(ie+t+u+ce,ie+u+ce,ce,It(e,12),l,a,l,ol,dl),_(Ee+t+C+ce,Ee+C+ce,Yt,$t(e,9)+qt,Pt(rl,Wt(C)+Ht+r,Wt(C)+pe),Pt(a,el,Bt(C)),Xt,Pt(nl,`row: ${r})`+Fe,_t),dl),_("Add"+t+C+ce,"Add"+C+ce,Yt,$t(e,10)+qt,Pt(Wt(C)+Ht+r,Wt(C)+pe),Pt(a,Bt(C)),Xt,"then?: ("+Pt(rl+Te,"store: Store","row: "+r+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Ee+t+Ve+C+ce,Ee+Ve+C+ce,Yt,$t(e,11)+qt,Pt(rl,Wt(Ve+C)+Ht+r,Wt(Ve+C)+pe),Pt(a,el,Bt(Ve+C)),Xt,Pt(nl,`partialRow: ${r})`+Fe,_t),dl),_(ie+t+C+ce,ie+C+ce,ce,$t(e,12),rl,Pt(a,el),l,ol,dl);const b=Z(t+C+sl,"{rowId, "+M+", cellComponents, getCellComponentProps"+ll+`}: ${F}<'${e}'>`,[oe+`(${p}(rowId, ${M}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],$t(e,13)+$e);Z(t+"Sorted"+u+sl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,D+"(props, "+c+`(cellId, descending, offset, limit, props.${M}), ${a}, ${b});`,It(e,13)+", sorted"+$e),Z(t+u+sl,`props: ${U}<'${e}'>`,D+"(props, "+$+`(props.${M}), ${a}, ${b});`,It(e,13)+$e),A(e,((n,o,d,r,I)=>{const $="Map"+kt(o,1);s(0,O,$),s(1,O,$);const c=_(t+I+m,m,o+(j(d)?Te:l),ct(e,n)+$e,rl,Pt(a,el,r));_(Ee+t+I+m+ce,Ee+m+ce,Yt,ct(e,n,9)+qt,Pt(rl,Wt(m)+Ht+o+" | "+$,Wt(m)+pe),Pt(a,el,r,Bt(m)),Xt,Pt(nl,`cell: ${o} | ${$})`+Fe,_t),dl),_(ie+t+I+m+ce,ie+m+ce,ce,ct(e,n,12),Pt(rl,"forceDel?: boolean"),Pt(a,el,r,"forceDel"),l,ol,dl),Z(t+I+m+sl,`{rowId, ${M}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${c}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],ct(e,n,13)+$e)}))}));const q=R(S((e=>te(E,e)?.[4]??l))," | ");_(p+I,p+I,Be,Ye(1,8)+" changes",Il(r),$l()),_(b+I,b+I,Be,dt(2,0,1),Il(w),$l()),_(u+I,u+I,Be,dt(3,0),Il(y,`tableId: ${n} | null`),$l("tableId")),_(u+f+I,u+f+I,Be,dt(14,3,1),Il(T,`tableId: ${n} | null`),$l("tableId")),_(h+I,h+I,Be,dt(4,3,1),Il(v,`tableId: ${n} | null`),$l("tableId")),_(g+I,g+I,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+Te,"descending: boolean","offset: number","limit: number"+Te),$l("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),$l("tableId",el)),_(f+I,f+I,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),$l("tableId",el)),_(m+I,m+I,Be,dt(7,5),Il(P,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),$l("tableId",el,"cellId"))}if(!Q(a)){const[e,t,a,n,o,r]=d;s(null,O,...d),s(1,O,G);const i=c("getDefaultValueComponent","valueId: Id",R(E(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(y,y,e,Ye(2,0)+$e);const u=_(T,T,a+Oe,tt(w,Ne)+$e);_(Ee+y+ce,Ee+y+ce,Yt,Ye(2,9)+qt,Pt(Wt(y)+Ht+t,Wt(y)+pe),Bt(y),Xt,Pt(nl,`values: ${t})`+Fe,_t),dl),_(Ee+Ve+y+ce,Ee+Ve+y+ce,Yt,Ye(2,11)+qt,Pt(Wt(Ve+y)+Ht+t,Wt(Ve+y)+pe),Bt(Ve+y),Xt,Pt(nl,`partialValues: ${t})`+Fe,_t),dl),_(ie+y+ce,ie+y+ce,ce,Ye(2,12),l,l,l,ol,dl);const p=$(w+xe,Dt("valueId?: VId",M+ye+G,Ft),at("a Value"),`<VId extends ${a}>`),b=$(y+xe,Dt(M+ye+G,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,al,Ft),at(Xe(2,1)));s(1,N,b,p),Z(y+sl,"{"+M+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${u}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+$e),E(((e,t,a,n,o)=>{const d="Map"+kt(t,1);s(0,O,d),s(1,O,d);const r=_(o+w,w,t,it(e)+$e,l,n);_(Ee+o+w+ce,Ee+w+ce,Yt,it(e,9)+qt,Pt(Wt(w)+Ht+t+" | "+d,Wt(w)+pe),Pt(n,Bt(w)),Xt,Pt(nl,`value: ${t} | ${d})`+Fe,_t),dl),_(ie+o+w+ce,ie+w+ce,ce,it(e,12),l,n,l,ol,dl),Z(o+w+sl,`{${M}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],it(e,13)+$e)})),_(y+I,y+I,Be,Ye(2,8)+" changes",Il(n),$l()),_(T+I,T+I,Be,dt(10,0,1),Il(o),$l()),_(w+I,w+I,Be,dt(11,0),Il(r,`valueId: ${a} | null`),$l("valueId"))}return Z(Re,`{${M}, ${M}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(Q(e)&&Q(t))return[l,l,l,l];const[n,o,d,r]=zt(e,t,a);return[n,o,...cl(e,t,a,d,r)]},ul={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},pl=Nt((e=>{const t=()=>{const t=N(e.getTablesSchemaJson());return!Q(t)||v(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(v(a,(t=>v(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[W(o),ee(),[0],0])),[r,s,[I]]=d,$=oe(s,o,(()=>0))+1;return $>I&&(d[2]=[$,o]),ne(s,o,$),d[3]++,r==W(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]={[r]:e,...o==S(a)?{[s]:n}:{}}})),1}))?t:{}},l=()=>{const t=N(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:W(l)}})),t},a=e=>il(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 k(a(e),((e,a)=>Vt(l(e,{...ul,filepath:"_."+t[a]}))))};return U({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:S(e.getValueIds()),jsonLength:xt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=pl;
1
+ "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",c="get",$="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=(e,t)=>e.every(t),V=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),R=(e,t=l)=>e.join(t),k=(e,t)=>e.map(t),S=e=>e.length,A=(e,t)=>e.filter(t),P=(e,...t)=>e.push(...t),E=e=>e.pop(),D=(e,...t)=>e.unshift(...t),O=e=>e.shift(),N=JSON.parse,L=isFinite,G=(e,t)=>e instanceof t,j=e=>null==e,M=e=>e==n||e==o,J=t=>e(t)==n,z=e=>Array.isArray(e),W=t=>{const l=e(t);return M(l)||l==d&&L(t)?l:void 0},B=Object,F=B.keys,U=B.freeze,_=e=>G(e,B)&&e.constructor==B,Z=(e,t)=>k(B.entries(e),(([e,l])=>t(l,e))),H=e=>S(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>e?.has(t)??!1,K=e=>[...e?.values()??[]],X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),ee=e=>new Map(e),te=(e,t)=>e?.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>k([...e?.entries()??[]],(([e,l])=>t(l,e))),ne=(e,t,l)=>j(l)?(Y(e,t),e):e?.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),se=e=>e.toLowerCase(),re="a ",Ie="A function for",ce=", and registers a listener so that any changes to that result will cause a re-render",$e="Callback",ue="Del",ie="Deps",pe=ie+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",me="Id",ge="Invalid",fe="Json",we=se(I),ye="?: ",Te=" | undefined",ve="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Se="Represents",Ae="rowId: "+me,Pe="Schema",Ee="Set",De=", descending?: boolean, offset?: number, limit?: number",Oe="[]",Ne="the Store",Le="Transaction",Ge=Le+"Changes",je=se(Le),Me="Execute a "+je+" to make multiple mutations",Je="Explicitly starts a "+je,ze="Explicitly finishes a "+je,We="the end of the "+je,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=re+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+Ne:l),Ye=(e=0,t,a=0)=>it[t]+He+Xe(e,1)+(a?" when setting it":l),et=(e,t=0)=>Se+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+i,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,a=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(a?l:"s"),st=e=>`the '${e}' `+i,rt=e=>"the specified Row in "+st(e),It=(e,t=0)=>it[t]+` ${Xe()} `+st(e),ct=(e,t=0)=>it[t]+` ${Xe()} `+rt(e),$t=(e,t,l=0)=>it[l]+` the '${t}' Cell for `+rt(e),ut=(e,t=0)=>it[t]+` the '${e}' Value`,it=["Gets","Checks existence of","Sets","Deletes","Sets part of",Se,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[c,"has","set","del","set","forEach",$,l],bt=[Ne,p,qe+i+He+u,re+i,qe+C+He+u,re+C,qe+g+He+u,re+g,"invalid Cell changes",y,qe+w+He+u,re+w,"invalid Value changes",qe+"sorted "+C+He+u,qe+g+He+u+" anywhere"],Ct=[l,"tabular ","keyed value "],ht=e=>new Set(z(e)||j(e)?e:[e]),mt=(e,t)=>e?.add(t),gt=/[^A-Za-z]+/,ft=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),Tt=e=>e.includes(a),vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?vt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>R(k(e.split(ft),((e,l)=>(l>0||t?de:se)(yt(e,0,1))+yt(e,1)))),St=e=>de(R((e&&!gt.test(e[0])?e:" "+e).split(ft),"_")),At=e=>`/** ${e}. */`,Pt=(...e)=>R(A(e,(e=>e)),", "),Et=(...e)=>"{"+R(e,"; ")+"}",Dt=(...e)=>Et(...k(e,(e=>"readonly "+e))),Ot=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),a=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>R(Rt(e),"\n"),(t,l,...a)=>x(a,(a=>x([0,1],(n=>(t??n)==n?mt(oe(e[n],l,ht),a):0)))),(e,a,n,o=l,d=1)=>vt(t,e,[a,n,o,d]),(e,t,l)=>vt(a,e,z(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>te(a,e)===t?e:vt(a,e,t),(t=0)=>k([...V(ae(e[t],((e,t)=>`import {${R(V(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Tt(e)!=Tt(t)?Tt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,a,n],o)=>[At(t),`${n?he+" ":l}type ${o}${a} = ${e};`,l])),()=>ae(a,((e,t)=>(e=z(e)?e:[e],P(e,E(e)+";"),[`const ${t} = ${O(e)}`,e,l])))]},Nt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(St(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[s],e[r],l(St(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[s],t[r],l(St(a),`'${a}'`),kt(a,1))))],Gt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t,a)=>`'${e}'${j(a)?"?":l}: ${t}`)))+"}"))),Ye(1,5)),r=e(p+Ue,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),c=e(i+me,"keyof "+s,"A "+i+" Id in "+Ne),$=`<TId extends ${c}>`,u=e(i,ve+`<${s}[TId]>`,"A "+i+" in "+Ne,$),w=e(i+Ue,ve+`<${r}[TId]>`,"A "+i+" in "+Ne+_e,$),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,$),T=e(C+Ue,w+"<TId>[Id]","A "+C+" in a "+i+_e,$),v=e(g+me,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,$),V=e(g,ve+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<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 "+C,`<TId extends ${c}, CId = ${v}<TId>>`,0),R=e(g+$e,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(re+g+" Id, and "+g),$),k=e(C+$e,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(re+C+" Id, and a "+g+" iterator"),$),S=e(i+g+$e,`(cellId: ${v}<TId>, count: number) `+Fe,nt(re+g+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Fe}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),P=e(i+$e,`(...[tableId, forEachRow]: ${A})`+Fe,nt(re+i+" Id, and a "+C+" iterator"),l),E=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${E}) => CellChange`,Ie+" returning information about any Cell's changes during a "+je),O=e(p+I,`(${d}, getCellChange: ${D}${Te})`+Fe,ot(1)),N=e(b+I,`(${d})`+Fe,ot(2)),L=e(i+I,`(${d}, tableId: ${c}, getCellChange: ${D}${Te})`+Fe,ot(3)),G=e(i+f+I,`(${d}, tableId: ${c})`+Fe,ot(14,3)),M=e(h+I,`(${d}, tableId: ${c})`+Fe,ot(4,3)),J=e(m+I,"("+Pt(d,"tableId: "+c,"cellId: Id"+Te,"descending: boolean","offset: number","limit: number"+Te,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(C+I,"("+Pt(""+d,"tableId: "+c,Ae,`getCellChange: ${D}${Te}`)+")"+Fe,ot(5,3)),W=e(f+I,"("+Pt(""+d,"tableId: "+c,Ae)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Ae}, cellId: CId, newCell: ${V}<TId, CId> ${Te}, oldCell: ${V}<TId, CId> ${Te}, getCellChange: ${D} ${Te}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,r,c,u,w,y,T,v,V,R,k,S,P,O,N,L,G,M,J,z,W,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(ge+g+I,`(${d}, tableId: Id, ${Ae}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Et(...n(((e,t,a)=>`'${e}'${j(a)?"?":l}: ${t}`))),Ye(2,5)),s=e(y+Ue,Et(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),r=e(w+me,"keyof "+d,"A "+w+" Id in "+Ne),c=e(w,ve+`<${d}[VId]>`,"A "+w+" Id in "+Ne,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+Ne,`<VId = ${r}>`,0),u=e(w+$e,`(...[valueId, value]: ${$})`+Fe,nt(re+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,Ie+" returning information about any Value's changes during a "+je),p=e(y+I,`(${o}, getValueChange: ${i}${Te})`+Fe,ot(9)),b=e(T+I,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${c}<VId> ${Te}, oldValue: ${c}<VId> ${Te}, getValueChange: ${i} ${Te}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,c,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(ge+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Le+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+je)],jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Mt=(e,t=l)=>`fluent(() => ${jt(e,t)})`,Jt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,zt=(e,a,n)=>{const[d,c,v,V,k,S,A,E]=Ot(),[O,N,L]=Lt(e,a,k),[G,M,z]=Gt(v,O,N,L),W=ee(),B=(e=0)=>ae(W,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||D(r,At(o)),P(r,l),r})),F=(e,t,a,n,o,d=l)=>vt(W,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(pt[e]+t+(4==e?Ve:l)+a,d,n,(n==H?Mt:jt)(pt[e]+(4==e?Ve:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F($+e+I,(n?n+", ":l)+we+": "+t+(d?", mutator?: boolean":l),me,Jt($+e+I,o,d?"mutator":l),a,s),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if(c(1,Z,H,`create${H} as create${H}Decl`),Q(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,u);const[e,a,n,d,I,$,w,y,T,V,S,A,E,D,L,M,z,W,B,F,Q,le,ae]=G(q,H),de=ee();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Se+` the '${e}' `+i),v(t+i+Ue,I+l,Se+` the '${e}' `+i+_e),v(t+C,$+l,et(e)),v(t+C+Ue,w+l,et(e,1)),v(t+g+me,y+l,`A Cell Id for the '${e}' `+i),v(t+g+$e,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+$e,S+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+$e,A+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,E,D,L,M,z,W,B,F,Q,le,ae),oe=[e,a,n,y,D,L,M,z,W,B,F,Q,le,de],x([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,Ye(1,n),t,a))),U(0,l,b,n+Oe,tt(i,Ne)),U(5,l,i,Be,lt(i,Ne),"tableCallback: "+E,"tableCallback as any"),O(((e,t,a)=>{const[n,d,s,r,I,c,$,p]=te(de,e);x([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,It(e,s),o,a+d))),U(0,t,i+f,u,tt(g,"the whole of "+st(e)),l,a),U(5,t,i+g,Be,lt(i+g,"the whole of "+st(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,h,u,tt(C,st(e)),l,a),U(0,t,m,u,tt(C,st(e),1),"cellId?: "+I+De,a+", cellId, descending, offset, limit"),U(5,t,C,Be,lt(C,st(e)),"rowCallback: "+$,a+", rowCallback as any"),x([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,ct(e,s),Ae+o,a+", rowId"+d))),U(6,t,C,me+Te,"Add a new Row to "+st(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Oe,tt(g,rt(e)),Ae,a+", rowId"),U(5,t,g,Be,lt(g,rt(e)),Ae+", cellCallback: "+c,a+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const c="Map"+kt(d,1);ne(Y,d,c);const $=d+(j(s)?Te:l);x([[$],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,s=l],c)=>U(c,t+I,g,o,$t(e,n,c),Ae+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,it[1]+` the '${n}' Cell anywhere in `+st(e),l,a+", "+r)}))})),U(0,l,p+fe,fe,Ye(1,6)),U(2,l,p+fe,H,Ye(1,7),"tablesJson: "+fe,"tables"+fe),_(p,D,Ye(1,8)+" changes"),_(b,L,dt(2,0,1)),_(i,M,dt(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(h,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,B,dt(13,3,1),Pt("tableId: TId",`cellId: ${y}<TId>`+Te,"descending: boolean","offset: number","limit: number"+Te),Pt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${R(O((e=>te(de,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(ge+g,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...K(Y)),P(X,".set"+p+Pe+"({",Rt(O(((e,t,a)=>[`[${a}]: {`,...N(e,((e,t,a,n)=>`[${n}]: {[${k(St(s),`'${s}'`)}]: ${k(St(t),`'${t}'`)}${j(a)?l:`, [${k(St(r),`'${r}'`)}]: `+(J(a)?k(St(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Q(a))c(null,t,y);else{const[e,a,n,d,I,$,u,i,p]=M(q,H);c(1,Z,e,a,n,I,$,u,i,p),de=[e,a,n,$,u,i],x([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,Ye(2,n),t,a))),U(0,l,T,n+Oe,tt(w,Ne)),U(5,l,w,"void",lt(w,Ne),"valueCallback: "+I,"valueCallback as any"),L(((e,t,a,n,d)=>{const s="Map"+kt(t,1);ne(Y,t,s),x([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,ut(e,s),a,n+o)))})),U(0,l,y+fe,fe,Ye(2,6)),U(2,l,y+fe,H,Ye(2,7),"valuesJson: "+fe,"values"+fe),_(y,$,Ye(2,8)+" changes"),_(T,u,dt(10,0,1)),_(w,i,dt(11,0),`valueId: ${n} | null`,"valueId"),_(ge+w,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...K(Y)),c(0,t,"ValueChange"),P(X,".set"+y+Pe+"({",L(((e,t,a,n)=>[`[${n}]: {[${k(St(s),`'${s}'`)}]: ${k(St(t),`'${t}'`)}${j(a)?l:`, [${k(St(r),`'${r}'`)}]: `+(J(a)?k(St(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,Ye(0,0)),U(2,l,"Content",H,Ye(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Ge,H,`Applies a set of ${Ge} to the Store`,"transactionChanges: "+Ge,"transactionChanges"),le(Y,((e,t)=>v(t,`(cell: ${e}${Te}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",me,"IdOrNull",fe,"Store",Ge),c(0,t,"Get"+Ge,"GetTransactionLog"),U(0,l,fe,fe,Ye(0,6)),U(2,l,fe,H,Ye(0,7),"tablesAndValuesJson: "+fe,"tablesAndValuesJson"),U(7,l,je,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,l,"start"+Le,H,Je),U(7,l,"finish"+Le,H,ze,be,"doRollback");const se=z(q,H);return _("Start"+Le,se,ke+" just before the start of the "+je,l,l,0),_("WillFinish"+Le,se,ke+" just before "+We,l,l,0),_("DidFinish"+Le,se,ke+" just after "+We,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+Ne,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",it[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,se),k("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),k(q,["{",...B(1),"}"]),[d(...S(0),...A(),he+" interface "+H+" {",...B(0),"}",l,At(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),d(...S(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...E(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>c+e,Bt=e=>Pt(Wt(e),Wt(e)+ie),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+$e+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=Pt(nl+")"+Fe,_t),dl="then, then"+ie,sl=el+Kt+me,rl="View",Il=(e,...t)=>Pt(...t,we+": "+e,we+pe,"mutator?: boolean"),cl=(...e)=>Pt(...e,we,we+ie,"mutator"),$l=(e,a,n,o,d)=>{const[s,r,c,$,v,V,x,k]=Ot(),[S,A,E]=Lt(e,a,v),O=`./${kt(n)}.d`,N=`./${kt(n)}-ui-react.d`,L="tinybase/ui-react",G=kt(n,1),M=kt(G),J=G+"Or"+G+me,z=M+"Or"+G+me,W=M+`={${M}}`,B=ee(),F=(e,t,a,n,o,d=l)=>(r(1,N,e+" as "+e+"Decl"),vt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,L,`use${t} as use${t}Core`),U(e,Pt(o,X,I),a,le+`(${z}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,a,n,o,d],s)=>{const r=e?[he+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[he+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||D(r,At(o)),P(r,l),r}));r(null,t,me,"Store",$e,Zt+"ized"+$e),r(0,L,"ComponentReturnType"),r(1,L,"useCellIds"),r(null,L,"ExtraProps"),r(0,O,G);const q=c(J,G+" | "+me,`Used when you need to refer to a ${G} in a React hook or component`),K=c(Re+xe,Dt(M+ye+G,M+`ById?: {[${M}Id: Id]: ${G}}`),`Used with the ${Re} component, so that a `+G+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,N,q,K);const X=z+ye+q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${G}?, {[${M}Id: Id]: ${G}}?]>([])`),U("Create"+G,`create: () => ${G}, create`+pe,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const Y=U(G,"id?: Id",G+Te,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${Re} component context`),le=$("useHook",z+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${M} : ${z})?.getStore(), ...postParams)`]),ne=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=$("wrap",Pt("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;"]),de=$("useCustomOrDefaultCellIds",Pt("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${q} | undefined`),[`const defaultCellIds = ${le}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!Q(e)){const[e,a,n,d,s,w,y,T,v,V,x,k,P,E]=o;r(null,O,e,a,n,s,w,y,T,v,V,x,k,P),r(0,O,d),r(1,O,G),r(null,t,u,"IdOrNull");const D=$("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,"customCellIds={customCellIds}",W,Ut,"/>","))",ll,", tableId,",");"]),L=$("getDefaultTableComponent","tableId: Id",R(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),J=$("getDefaultCellComponent","tableId: Id, cellId: Id",R(S(((e,t,l)=>`tableId == ${l} ? ${R(A(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,Ye(1,0)+ce);const z=_(b,b,n+Oe,tt(i,Ne)+ce);_(Ee+p+$e,Ee+p+$e,Yt,Ye(1,9)+qt,Pt(Wt(p)+Ht+a,Wt(p)+pe),Bt(p),Xt,Pt(nl,`tables: ${a})`+Fe,_t),dl),_(ue+p+$e,ue+p+$e,$e,Ye(1,12),l,l,l,ol,dl);const B=c(g+xe,Dt("tableId?: TId","rowId: Id","cellId?: CId",M+ye+G,Ft),at(re+g),`<TId extends ${n}, CId extends ${d}<TId>>`),F=c(C+xe,Dt("tableId?: TId","rowId: Id",M+ye+G,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,al,Ft),at(re+C),`<TId extends ${n}>`),U=c(i+xe,Dt("tableId?: TId",M+ye+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),at(re+i),`<TId extends ${n}>`),H=c("Sorted"+i+xe,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ye+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),at(re+"sorted "+i),`<TId extends ${n}>`),Q=c(p+xe,Dt(M+ye+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));r(1,N,Q,U,H,F,B),Z(p+rl,"{"+M+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+L+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+ce),S(((e,t,a)=>{const[n,o,d,s,I]=te(E,e);r(null,O,n,o,d,s,I),_(t+i,i,n,It(e)+ce,l,a),_(t+i+f,i+f,u,tt(g,"the whole of "+st(e))+ce,l,a);const c=_(t+h,h,u,tt(C,st(e))+ce,l,a),$=_(t+m,m,u,tt(C,st(e),1)+ce,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,ct(e)+ce,sl,Pt(a,el)),_(t+f,f,I+Oe,tt(g,rt(e))+ce,sl,Pt(a,el)),_(Ee+t+i+$e,Ee+i+$e,Yt,It(e,9)+qt,Pt(Wt(i)+Ht+o,Wt(i)+pe),Pt(a,Bt(i)),Xt,Pt(nl,`table: ${o})`+Fe,_t),dl),_(ue+t+i+$e,ue+i+$e,$e,It(e,12),l,a,l,ol,dl),_(Ee+t+C+$e,Ee+C+$e,Yt,ct(e,9)+qt,Pt(sl,Wt(C)+Ht+s,Wt(C)+pe),Pt(a,el,Bt(C)),Xt,Pt(nl,`row: ${s})`+Fe,_t),dl),_("Add"+t+C+$e,"Add"+C+$e,Yt,ct(e,10)+qt,Pt(Wt(C)+Ht+s,Wt(C)+pe),Pt(a,Bt(C)),Xt,"then?: ("+Pt(sl+Te,"store: Store","row: "+s+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Ee+t+Ve+C+$e,Ee+Ve+C+$e,Yt,ct(e,11)+qt,Pt(sl,Wt(Ve+C)+Ht+s,Wt(Ve+C)+pe),Pt(a,el,Bt(Ve+C)),Xt,Pt(nl,`partialRow: ${s})`+Fe,_t),dl),_(ue+t+C+$e,ue+C+$e,$e,ct(e,12),sl,Pt(a,el),l,ol,dl);const p=Z(t+C+rl,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+ll+`}: ${F}<'${e}'>`,[oe+`(${de}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],ct(e,13)+ce);Z(t+"Sorted"+i+rl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,D+"(props, "+$+`(cellId, descending, offset, limit, props.${M}), ${a}, ${p});`,It(e,13)+", sorted"+ce),Z(t+i+rl,`props: ${U}<'${e}'>`,D+"(props, "+c+`(props.${M}), ${a}, ${p});`,It(e,13)+ce),A(e,((n,o,d,s,I)=>{const c="Map"+kt(o,1);r(0,O,c),r(1,O,c);const $=_(t+I+g,g,o+(j(d)?Te:l),$t(e,n)+ce,sl,Pt(a,el,s));_(Ee+t+I+g+$e,Ee+g+$e,Yt,$t(e,n,9)+qt,Pt(sl,Wt(g)+Ht+o+" | "+c,Wt(g)+pe),Pt(a,el,s,Bt(g)),Xt,Pt(nl,`cell: ${o} | ${c})`+Fe,_t),dl),_(ue+t+I+g+$e,ue+g+$e,$e,$t(e,n,12),Pt(sl,"forceDel?: boolean"),Pt(a,el,s,"forceDel"),l,ol,dl),Z(t+I+g+rl,`{rowId, ${M}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${$}(rowId, `+M+`) ?? '', undefined, debugIds, ${s})`],$t(e,n,13)+ce)}))}));const q=R(S((e=>te(E,e)?.[4]??l))," | ");_(p+I,p+I,Be,Ye(1,8)+" changes",Il(s),cl()),_(b+I,b+I,Be,dt(2,0,1),Il(w),cl()),_(i+I,i+I,Be,dt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(i+f+I,i+f+I,Be,dt(14,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,Be,dt(4,3,1),Il(v,`tableId: ${n} | null`),cl("tableId")),_(m+I,m+I,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+Te,"descending: boolean","offset: number","limit: number"+Te),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(f+I,f+I,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(g+I,g+I,Be,dt(7,5),Il(P,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),cl("tableId",el,"cellId"))}if(!Q(a)){const[e,t,a,n,o,s]=d;r(null,O,...d),r(1,O,G);const u=$("getDefaultValueComponent","valueId: Id",R(E(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,Ye(2,0)+ce);const i=_(T,T,a+Oe,tt(w,Ne)+ce);_(Ee+y+$e,Ee+y+$e,Yt,Ye(2,9)+qt,Pt(Wt(y)+Ht+t,Wt(y)+pe),Bt(y),Xt,Pt(nl,`values: ${t})`+Fe,_t),dl),_(Ee+Ve+y+$e,Ee+Ve+y+$e,Yt,Ye(2,11)+qt,Pt(Wt(Ve+y)+Ht+t,Wt(Ve+y)+pe),Bt(Ve+y),Xt,Pt(nl,`partialValues: ${t})`+Fe,_t),dl),_(ue+y+$e,ue+y+$e,$e,Ye(2,12),l,l,l,ol,dl);const p=c(w+xe,Dt("valueId?: VId",M+ye+G,Ft),at("a Value"),`<VId extends ${a}>`),b=c(y+xe,Dt(M+ye+G,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,al,Ft),at(Xe(2,1)));r(1,N,b,p),Z(y+rl,"{"+M+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${i}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+ce),E(((e,t,a,n,o)=>{const d="Map"+kt(t,1);r(0,O,d),r(1,O,d);const s=_(o+w,w,t,ut(e)+ce,l,n);_(Ee+o+w+$e,Ee+w+$e,Yt,ut(e,9)+qt,Pt(Wt(w)+Ht+t+" | "+d,Wt(w)+pe),Pt(n,Bt(w)),Xt,Pt(nl,`value: ${t} | ${d})`+Fe,_t),dl),_(ue+o+w+$e,ue+w+$e,$e,ut(e,12),l,n,l,ol,dl),Z(o+w+rl,`{${M}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${s}(`+M+`) ?? '', undefined, debugIds, ${n})`],ut(e,13)+ce)})),_(y+I,y+I,Be,Ye(2,8)+" changes",Il(n),cl()),_(T+I,T+I,Be,dt(10,0,1),Il(o),cl()),_(w+I,w+I,Be,dt(11,0),Il(s,`valueId: ${a} | null`),cl("valueId"))}return Z(Re,`{${M}, ${M}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...x(),...H(0)),s(...V(1),...k(),...H(1))]},ul=(e,t,a)=>{if(Q(e)&&Q(t))return[l,l,l,l];const[n,o,d,s]=zt(e,t,a);return[n,o,...$l(e,t,a,d,s)]},il={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},pl=Nt((e=>{const t=()=>{const t=N(e.getTablesSchemaJson());return!Q(t)||v(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(v(a,(t=>v(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[W(o),ee(),[0],0])),[s,r,[I]]=d,c=oe(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),ne(r,o,c),d[3]++,s==W(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==S(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=N(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:W(l)}})),t},a=e=>ul(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 k(a(e),((e,a)=>Vt(l(e,{...il,filepath:"_."+t[a]}))))};return U({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:S(e.getValueIds()),jsonLength:xt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=pl;
Binary file
@@ -0,0 +1 @@
1
+ "use strict";var e=require("./ui-react"),l=require("react");const t=e=>typeof e,s=t(""),r=(e,l)=>e.map(l),u=e=>null==e,d=Object,o=(e=[])=>d.fromEntries(e),a=(e,l)=>r(d.entries(e),(([e,t])=>l(t,e))),{createContext:n,useContext:I}=l;n([]);const i=(e,...l)=>u(e)?{}:e(...l),{createElement:c,useCallback:b,useMemo:C,useState:m}=l,T=(e,l,t)=>{const s=b(e,l);return t?s:void 0},w=(e,l)=>u(e)||e[0]!=l?void 0:`sorted ${e[1]?"de":"a"}scending`,y=({cellId:e,sorting:l,label:t=e??"",onClick:s})=>c("th",{onClick:T((()=>s?.(e)),[s,e],!u(s)),className:w(l,e)},t),f=({className:l,headerRow:u,idColumn:d,customCells:n,storeTableIdOrQueriesQueryId:I,defaultCellView:b=e.CellView,rowIds:m,defaultCellIds:T,sorting:w,onHeaderThClick:f})=>{const k=C((()=>{const e=n??T;return o(a(Array.isArray(e)?o(r(e,(e=>[e,e]))):e,((e,l)=>{return[l,{label:l,...(r=e,t(r)==s?{label:e}:e)}];var r})))}),[n,T]);return c("table",{className:l},!1===u?null:c("thead",null,c("tr",null,!1===d?null:c(y,{sorting:w,label:"Id",onClick:f}),a(k,(({label:e},l)=>c(y,{key:l,cellId:l,label:e,sorting:w,onClick:f}))))),c("tbody",null,r(m,(e=>c("tr",{key:e},!1===d?null:c("th",null,e),a(k,(({component:l=b,getComponentProps:t},s)=>c("td",{key:s},c(l,{...i(t,e,s),...I,rowId:e,cellId:s})))))))))};exports.ResultSortedTableInHtmlTable=({queryId:l,cellId:t,descending:s,offset:r,limit:u,queries:d,sortOnClick:o,...a})=>{const[n,I]=m([t,!!s]),i=T((e=>I([e,e==n[0]&&!n[1]])),[n],o);return c(f,{...a,storeTableIdOrQueriesQueryId:C((()=>({queries:d,queryId:l})),[d,l]),defaultCellView:e.ResultCellView,rowIds:e.useResultSortedRowIds(l,...n,r,u,d),defaultCellIds:e.useResultTableCellIds(l,d),sorting:n,onHeaderThClick:i})},exports.ResultTableInHtmlTable=({queryId:l,queries:t,...s})=>c(f,{...s,storeTableIdOrQueriesQueryId:C((()=>({queries:t,queryId:l})),[t,l]),defaultCellView:e.ResultCellView,rowIds:e.useResultRowIds(l,t),defaultCellIds:e.useResultTableCellIds(l,t)}),exports.SortedTableInHtmlTable=({tableId:l,cellId:t,descending:s,offset:r,limit:u,store:d,sortOnClick:o,...a})=>{const[n,I]=m([t,!!s]),i=T((e=>I([e,e==n[0]&&!n[1]])),[n],o);return c(f,{...a,storeTableIdOrQueriesQueryId:C((()=>({store:d,tableId:l})),[d,l]),rowIds:e.useSortedRowIds(l,...n,r,u,d),defaultCellIds:e.useTableCellIds(l,d),sorting:n,onHeaderThClick:i})},exports.TableInHtmlTable=({tableId:l,store:t,...s})=>c(f,{...s,storeTableIdOrQueriesQueryId:C((()=>({store:t,tableId:l})),[t,l]),rowIds:e.useRowIds(l,t),defaultCellIds:e.useTableCellIds(l,t)}),exports.ValuesInHtmlTable=({store:l,valueComponent:t=e.ValueView,getValueComponentProps:s,className:u,headerRow:d,idColumn:o})=>c("table",{className:u},!1===d?null:c("thead",null,c("tr",null,!1===o?null:c("th",null,"Id"),c("th",null,"Value"))),c("tbody",null,r(e.useValueIds(l),(e=>c("tr",{key:e},!1===o?null:c("th",null,e),c("td",null,c(t,{...i(s,e),valueId:e,store:l})))))));
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Ids",l="Table",d=l+"s",u=l+r,n="Row",p=n+r,a="Sorted"+n+r,i="Cell",I=i+r,c="Value",x=c+"s",w=c+r,R=(e,s)=>e.map(s),C=e=>null==e,b=(e,s,t)=>C(e)?t?.():s(e),k=e=>s(e)==o,g=()=>{},{createContext:m,useContext:L}=e,V=m([]),h=(e,s)=>{const t=L(V);return C(e)?t[s]:k(e)?((e,s)=>b(e,(e=>e[s])))(t[s+1],e):e},S=(e,s)=>{const t=h(e,s);return C(e)||k(e)?t:e},y=e=>S(e,0),T=e=>S(e,2),v=e=>S(e,4),P=e=>S(e,6),q=e=>S(e,8),f=e=>S(e,10),{useCallback:B,useEffect:M,useMemo:D,useRef:A,useState:F}=e,G=(e,s,t=[])=>{const o=D((()=>s(e)),[e,...t]);return M((()=>()=>o.destroy()),[o]),o},E=(e,s,t,o=[],r)=>{const[,l]=F(),d=B((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=F(d),n=A(u);return D((()=>n.current=d()),[d]),Q(e,s,((...e)=>{n.current=C(r)?d():e[r],l([])}),[],o),n.current},Q=(e,s,t,o=[],r=[],...l)=>M((()=>{const o=s?.["add"+e+"Listener"]?.(...r,t,...l);return()=>s?.delListener(o)}),[s,...r,...o,...l]),U=(e,s,t,o=[],r=g,l=[],...d)=>{const u=y(e);return B((e=>b(u,(o=>b(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[u,s,...o,...l,...d])},j=(e,s,t=g,o=[],...r)=>{const l=y(e);return B((()=>t(l?.["del"+s](...r))),[l,s,...o,...r])},z=(e,s,t)=>{const o=f(e);return B((()=>o?.[s](t)),[o,s,t])},H=e=>E(u,y(e),[],[]),J=(e,s)=>E(p,y(s),[],[e]),K=(e,s,t,o=0,r,l)=>E(a,y(l),[],[e,s,t,o,r],6),N=(e,s,t)=>E(I,y(t),[],[e,s]),O=(e,s,t,o)=>E(i,y(o),void 0,[e,s,t],4),W=e=>E(w,y(e),[],[]),X=(e,s)=>E(c,y(s),void 0,[e]),Y=(e,s)=>E("Metric",T(s),void 0,[e]),Z=(e,s)=>E("SliceIds",v(s),[],[e]),$=(e,s,t)=>E("SliceRowIds",v(t),[],[e,s]),_=(e,s,t)=>E("RemoteRowId",P(t),void 0,[e,s]),ee=(e,s,t)=>E("LocalRowIds",P(t),[],[e,s]),se=(e,s,t)=>E("LinkedRowIds",P(t),[],[e,s]),te=(e,s)=>E("ResultRowIds",q(s),[],[e]),oe=(e,s,t,o=0,r,l)=>E("ResultSortedRowIds",q(l),[],[e,s,t,o,r],6),re=(e,s,t)=>E("ResultCellIds",q(t),[],[e,s]),le=(e,s,t,o)=>E("ResultCell",q(o),void 0,[e,s,t]),de=e=>E("CheckpointIds",f(e),[[],void 0,[]]),ue=(e,s)=>E("Checkpoint",f(s),void 0,[e]),ne=e=>z(e,"goBackward"),pe=e=>z(e,"goForward"),{createElement:ae,useMemo:ie}=e,Ie=({tableId:e,store:s,rowComponent:t=ge,getRowComponentProps:o,separator:r,debugIds:l},d)=>be(R(d,(r=>ae(t,{...Ce(o,r),key:r,tableId:e,rowId:r,store:s,debugIds:l}))),r,l,e),ce=({queryId:e,queries:s,resultRowComponent:t=Se,getResultRowComponentProps:o,separator:r,debugIds:l},d)=>be(R(d,(r=>ae(t,{...Ce(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:l}))),r,l,e),xe=e=>{const s=P(e);return[s,s?.getStore()]},we=({relationshipId:e,relationships:s,rowComponent:t=ge,getRowComponentProps:o,separator:r,debugIds:l},d,u)=>{const[n,p]=xe(s),a=n?.getLocalTableId(e),i=d(e,u,n);return be(R(i,(e=>ae(t,{...Ce(o,e),key:e,tableId:a,rowId:e,store:p,debugIds:l}))),r,l,u)},Re=e=>({checkpoints:s,checkpointComponent:t=ye,getCheckpointComponentProps:o,separator:r,debugIds:l})=>{const d=f(s);return be(R(e(de(d)),(e=>ae(t,{...Ce(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:l}))),r)},Ce=(e,s)=>C(e)?{}:e(s),be=(e,s,t,o)=>{const r=C(s)||!Array.isArray(e)?e:R(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},ke=({tableId:e,rowId:s,cellId:o,store:r,debugIds:l})=>be(t+(O(e,s,o,r)??t),void 0,l,o),ge=({tableId:e,rowId:s,store:t,cellComponent:o=ke,getCellComponentProps:r,separator:l,debugIds:d})=>be(R(N(e,s,t),(l=>ae(o,{...Ce(r,l),key:l,tableId:e,rowId:s,cellId:l,store:t,debugIds:d}))),l,d,s),me=e=>Ie(e,J(e.tableId,e.store)),Le=({valueId:e,store:s,debugIds:o})=>be(t+(X(e,s)??t),void 0,o,e),Ve=({indexId:e,sliceId:s,indexes:t,rowComponent:o=ge,getRowComponentProps:r,separator:l,debugIds:d})=>{const u=v(t),n=u?.getStore(),p=u?.getTableId(e),a=$(e,s,u);return be(R(a,(e=>ae(o,{...Ce(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:d}))),l,d,s)},he=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:l})=>be(t+(le(e,s,o,r)??t),void 0,l,o),Se=({queryId:e,rowId:s,queries:t,resultCellComponent:o=he,getResultCellComponentProps:r,separator:l,debugIds:d})=>be(R(re(e,s,t),(l=>ae(o,{...Ce(r,l),key:l,queryId:e,rowId:s,cellId:l,queries:t,debugIds:d}))),l,d,s),ye=({checkpoints:e,checkpointId:s,debugIds:o})=>be(ue(s,e)??t,void 0,o,s),Te=Re((e=>e[0])),ve=Re((e=>C(e[1])?[]:[e[1]])),Pe=Re((e=>e[2]));exports.BackwardCheckpointsView=Te,exports.CellView=ke,exports.CheckpointView=ye,exports.CurrentCheckpointView=ve,exports.ForwardCheckpointsView=Pe,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=Ve,getSliceComponentProps:o,separator:r,debugIds:l})=>be(R(Z(e,s),(r=>ae(t,{...Ce(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:l}))),r,l,e),exports.LinkedRowsView=e=>we(e,se,e.firstRowId),exports.LocalRowsView=e=>we(e,ee,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>be(Y(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:l,indexesById:d,relationships:u,relationshipsById:n,queries:p,queriesById:a,checkpoints:i,checkpointsById:I,children:c})=>{const x=e.useContext(V);return ae(V.Provider,{value:ie((()=>[s??x[0],{...x[1],...t},o??x[2],{...x[3],...r},l??x[4],{...x[5],...d},u??x[6],{...x[7],...n},p??x[8],{...x[9],...a},i??x[10],{...x[11],...I}]),[s,t,o,r,l,d,u,n,p,a,i,I,x])},c)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=ge,getRowComponentProps:r,debugIds:l})=>{const[d,u]=xe(t),n=d?.getRemoteTableId(e),p=_(e,s,d);return be(C(n)||C(p)?null:ae(o,{...Ce(r,p),key:p,tableId:n,rowId:p,store:u,debugIds:l}),void 0,l,s)},exports.ResultCellView=he,exports.ResultRowView=Se,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ce(r,oe(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>ce(e,te(e.queryId,e.queries)),exports.RowView=ge,exports.SliceView=Ve,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ie(r,K(r.tableId,e,s,t,o,r.store)),exports.TableView=me,exports.TablesView=({store:e,tableComponent:s=me,getTableComponentProps:t,separator:o,debugIds:r})=>be(R(H(e),(o=>ae(s,{...Ce(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Le,exports.ValuesView=({store:e,valueComponent:s=Le,getValueComponentProps:t,separator:o,debugIds:r})=>be(R(W(e),(o=>ae(s,{...Ce(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.tableView=Ie,exports.useAddRowCallback=(e,s,t=[],o,r=g,l=[],d=!0)=>{const u=y(o);return B((t=>b(u,(o=>b(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[u,e,...t,...l,d])},exports.useCell=O,exports.useCellIds=N,exports.useCellIdsListener=(e,s,t,o,r,l)=>Q(I,y(l),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,l,d)=>Q(i,y(d),o,r,[e,s,t],l),exports.useCheckpoint=ue,exports.useCheckpointIds=de,exports.useCheckpointIdsListener=(e,s,t)=>Q("CheckpointIds",f(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>Q("Checkpoint",f(o),s,t,[e]),exports.useCheckpoints=e=>h(e,10),exports.useCreateCheckpoints=(e,s,t)=>G(e,s,t),exports.useCreateIndexes=(e,s,t)=>G(e,s,t),exports.useCreateMetrics=(e,s,t)=>G(e,s,t),exports.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,l]=F(),d=D((()=>s(e)),[e,...t]);return M((()=>((async()=>{await(o?.(d)),l(1)})(),()=>{d.destroy()})),[d,...r]),d},exports.useCreateQueries=(e,s,t)=>G(e,s,t),exports.useCreateRelationships=(e,s,t)=>G(e,s,t),exports.useCreateStore=(e,s=[])=>D(e,s),exports.useDelCellCallback=(e,s,t,o,r,l,d)=>j(r,i,l,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>j(t,n,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>j(s,l,t,o,e),exports.useDelTablesCallback=(e,s,t)=>j(e,d,s,t),exports.useDelValueCallback=(e,s,t,o)=>j(s,c,t,o,e),exports.useDelValuesCallback=(e,s,t)=>j(e,x,s,t),exports.useGoBackwardCallback=ne,exports.useGoForwardCallback=pe,exports.useGoToCallback=(e,s=[],t,o=g,r=[])=>{const l=f(t);return B((s=>b(l,(t=>b(e(s),(e=>o(t.goTo(e),e)))))),[l,...s,...r])},exports.useIndexes=e=>h(e,4),exports.useLinkedRowIds=se,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>Q("LinkedRowIds",P(r),t,o,[e,s]),exports.useLocalRowIds=ee,exports.useLocalRowIdsListener=(e,s,t,o,r)=>Q("LocalRowIds",P(r),t,o,[e,s]),exports.useMetric=Y,exports.useMetricListener=(e,s,t,o)=>Q("Metric",T(o),s,t,[e]),exports.useMetrics=e=>h(e,2),exports.useQueries=e=>h(e,8),exports.useRedoInformation=e=>{const s=f(e),[,,[o]]=de(s);return[!C(o),pe(s),o,b(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationships=e=>h(e,6),exports.useRemoteRowId=_,exports.useRemoteRowIdListener=(e,s,t,o,r)=>Q("RemoteRowId",P(r),t,o,[e,s]),exports.useResultCell=le,exports.useResultCellIds=re,exports.useResultCellIdsListener=(e,s,t,o,r)=>Q("ResultCellIds",q(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,l)=>Q("ResultCell",q(l),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>E("ResultRow",q(t),{},[e,s]),exports.useResultRowIds=te,exports.useResultRowIdsListener=(e,s,t,o)=>Q("ResultRowIds",q(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>Q("ResultRow",q(r),t,o,[e,s]),exports.useResultSortedRowIds=oe,exports.useResultSortedRowIdsListener=(e,s,t,o,r,l,d,u)=>Q("ResultSortedRowIds",q(u),l,d,[e,s,t,o,r]),exports.useResultTable=(e,s)=>E("ResultTable",q(s),{},[e]),exports.useResultTableListener=(e,s,t,o)=>Q("ResultTable",q(o),s,t,[e]),exports.useRow=(e,s,t)=>E(n,y(t),{},[e,s]),exports.useRowIds=J,exports.useRowIdsListener=(e,s,t,o,r)=>Q(p,y(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,l)=>Q(n,y(l),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,l,d,u)=>U(l,i,o,r,d,u,e,s,t),exports.useSetCheckpointCallback=(e=g,s=[],t,o=g,r=[])=>{const l=f(t);return B((s=>b(l,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[l,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,l,d)=>U(r,"PartialRow",t,o,l,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>U(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,l,d)=>U(r,n,t,o,l,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,d)=>U(o,l,s,t,r,d,e),exports.useSetTablesCallback=(e,s,t,o,r)=>U(t,d,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,l)=>U(o,c,s,t,r,l,e),exports.useSetValuesCallback=(e,s,t,o,r)=>U(t,x,e,s,o,r),exports.useSliceIds=Z,exports.useSliceIdsListener=(e,s,t,o)=>Q("SliceIds",v(o),s,t,[e]),exports.useSliceRowIds=$,exports.useSliceRowIdsListener=(e,s,t,o,r)=>Q("SliceRowIds",v(r),t,o,[e,s]),exports.useSortedRowIds=K,exports.useSortedRowIdsListener=(e,s,t,o,r,l,d,u,n)=>Q(a,y(n),l,d,[e,s,t,o,r],u),exports.useStore=e=>h(e,0),exports.useTable=(e,s)=>E(l,y(s),{},[e]),exports.useTableCellIds=(e,s)=>E(l+I,y(s),[],[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>Q(l+I,y(r),s,t,[e],o),exports.useTableIds=H,exports.useTableIdsListener=(e,s,t,o)=>Q(u,y(o),e,s,[],t),exports.useTableListener=(e,s,t,o,r)=>Q(l,y(r),s,t,[e],o),exports.useTables=e=>E(d,y(e),{}),exports.useTablesListener=(e,s,t,o)=>Q(d,y(o),e,s,[],t),exports.useUndoInformation=e=>{const s=f(e),[o,r]=de(s);return[(l=o,!(0==(e=>e.length)(l))),ne(s),r,b(r,(e=>s?.getCheckpoint(e)))??t];var l},exports.useValue=X,exports.useValueIds=W,exports.useValueIdsListener=(e,s,t,o)=>Q(w,y(o),e,s,[],t),exports.useValueListener=(e,s,t,o,r)=>Q(c,y(r),s,t,[e],o),exports.useValues=e=>E(x,y(e),{}),exports.useValuesListener=(e,s,t,o)=>Q(x,y(o),e,s,[],t);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Ids",l="Table",d=l+"s",u=l+r,n="Row",p=n+r,a="Sorted"+n+r,i="Cell",I=i+r,c="Value",x=c+"s",C=c+r,R=(e,s)=>e.map(s),w=e=>null==e,b=(e,s,t)=>w(e)?t?.():s(e),k=e=>s(e)==o,g=()=>{},{createContext:m,useContext:L}=e,h=m([]),V=(e,s)=>{const t=L(h);return w(e)?t[s]:k(e)?((e,s)=>b(e,(e=>e[s])))(t[s+1],e):e},S=(e,s)=>{const t=V(e,s);return w(e)||k(e)?t:e},T=(e,...s)=>w(e)?{}:e(...s),y=e=>S(e,0),v=e=>S(e,2),P=e=>S(e,4),q=e=>S(e,6),f=e=>S(e,8),B=e=>S(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=e,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],r)=>{const[,l]=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=w(r)?d():e[r],l([])}),[],o),n.current},U=(e,s,t,o=[],r=[],...l)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...r,t,...l);return()=>s?.delListener(o)}),[s,...r,...o,...l]),j=(e,s,t,o=[],r=g,l=[],...d)=>{const u=y(e);return M((e=>b(u,(o=>b(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[u,s,...o,...l,...d])},z=(e,s,t=g,o=[],...r)=>{const l=y(e);return M((()=>t(l?.["del"+s](...r))),[l,s,...o,...r])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(u,y(e),[],[]),K=(e,s)=>Q(p,y(s),[],[e]),N=(e,s,t,o=0,r,l)=>Q(a,y(l),[],[e,s,t,o,r],6),O=(e,s,t)=>Q(I,y(t),[],[e,s]),W=(e,s,t,o)=>Q(i,y(o),void 0,[e,s,t],4),X=e=>Q(C,y(e),[],[]),Y=(e,s)=>Q(c,y(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",f(s),[],[e]),re=(e,s,t,o=0,r,l)=>Q("ResultSortedRowIds",f(l),[],[e,s,t,o,r],6),le=(e,s,t)=>Q("ResultCellIds",f(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",f(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),pe=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:ie,useMemo:Ie}=e,ce=({tableId:e,store:s,rowComponent:t=ge,getRowComponentProps:o,customCellIds:r,separator:l,debugIds:d},u)=>be(R(u,(l=>ie(t,{...T(o,l),key:l,tableId:e,rowId:l,customCellIds:r,store:s,debugIds:d}))),l,d,e),xe=({queryId:e,queries:s,resultRowComponent:t=Se,getResultRowComponentProps:o,separator:r,debugIds:l},d)=>be(R(d,(r=>ie(t,{...T(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:l}))),r,l,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},Re=({relationshipId:e,relationships:s,rowComponent:t=ge,getRowComponentProps:o,separator:r,debugIds:l},d,u)=>{const[n,p]=Ce(s),a=n?.getLocalTableId(e),i=d(e,u,n);return be(R(i,(e=>ie(t,{...T(o,e),key:e,tableId:a,rowId:e,store:p,debugIds:l}))),r,l,u)},we=e=>({checkpoints:s,checkpointComponent:t=Te,getCheckpointComponentProps:o,separator:r,debugIds:l})=>{const d=B(s);return be(R(e(ue(d)),(e=>ie(t,{...T(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:l}))),r)},be=(e,s,t,o)=>{const r=w(s)||!Array.isArray(e)?e:R(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},ke=({tableId:e,rowId:s,cellId:o,store:r,debugIds:l})=>be(t+(W(e,s,o,r)??t),void 0,l,o),ge=({tableId:e,rowId:s,store:t,cellComponent:o=ke,getCellComponentProps:r,customCellIds:l,separator:d,debugIds:u})=>be(R(((e,s,t,o)=>{const r=O(s,t,o);return e??r})(l,e,s,t),(l=>ie(o,{...T(r,l),key:l,tableId:e,rowId:s,cellId:l,store:t,debugIds:u}))),d,u,s),me=e=>ce(e,K(e.tableId,e.store)),Le=({valueId:e,store:s,debugIds:o})=>be(t+(Y(e,s)??t),void 0,o,e),he=({indexId:e,sliceId:s,indexes:t,rowComponent:o=ge,getRowComponentProps:r,separator:l,debugIds:d})=>{const u=P(t),n=u?.getStore(),p=u?.getTableId(e),a=_(e,s,u);return be(R(a,(e=>ie(o,{...T(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:d}))),l,d,s)},Ve=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:l})=>be(t+(de(e,s,o,r)??t),void 0,l,o),Se=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Ve,getResultCellComponentProps:r,separator:l,debugIds:d})=>be(R(le(e,s,t),(l=>ie(o,{...T(r,l),key:l,queryId:e,rowId:s,cellId:l,queries:t,debugIds:d}))),l,d,s),Te=({checkpoints:e,checkpointId:s,debugIds:o})=>be(ne(s,e)??t,void 0,o,s),ye=we((e=>e[0])),ve=we((e=>w(e[1])?[]:[e[1]])),Pe=we((e=>e[2]));exports.BackwardCheckpointsView=ye,exports.CellView=ke,exports.CheckpointView=Te,exports.CurrentCheckpointView=ve,exports.ForwardCheckpointsView=Pe,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=he,getSliceComponentProps:o,separator:r,debugIds:l})=>be(R($(e,s),(r=>ie(t,{...T(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:l}))),r,l,e),exports.LinkedRowsView=e=>Re(e,te,e.firstRowId),exports.LocalRowsView=e=>Re(e,se,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>be(Z(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:l,indexesById:d,relationships:u,relationshipsById:n,queries:p,queriesById:a,checkpoints:i,checkpointsById:I,children:c})=>{const x=e.useContext(h);return ie(h.Provider,{value:Ie((()=>[s??x[0],{...x[1],...t},o??x[2],{...x[3],...r},l??x[4],{...x[5],...d},u??x[6],{...x[7],...n},p??x[8],{...x[9],...a},i??x[10],{...x[11],...I}]),[s,t,o,r,l,d,u,n,p,a,i,I,x])},c)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=ge,getRowComponentProps:r,debugIds:l})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),p=ee(e,s,d);return be(w(n)||w(p)?null:ie(o,{...T(r,p),key:p,tableId:n,rowId:p,store:u,debugIds:l}),void 0,l,s)},exports.ResultCellView=Ve,exports.ResultRowView=Se,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>xe(r,re(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>xe(e,oe(e.queryId,e.queries)),exports.RowView=ge,exports.SliceView=he,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ce(r,N(r.tableId,e,s,t,o,r.store)),exports.TableView=me,exports.TablesView=({store:e,tableComponent:s=me,getTableComponentProps:t,separator:o,debugIds:r})=>be(R(J(e),(o=>ie(s,{...T(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Le,exports.ValuesView=({store:e,valueComponent:s=Le,getValueComponentProps:t,separator:o,debugIds:r})=>be(R(X(e),(o=>ie(s,{...T(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=[],o,r=g,l=[],d=!0)=>{const u=y(o);return M((t=>b(u,(o=>b(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[u,e,...t,...l,d])},exports.useCell=W,exports.useCellIds=O,exports.useCellIdsListener=(e,s,t,o,r,l)=>U(I,y(l),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,l,d)=>U(i,y(d),o,r,[e,s,t],l),exports.useCheckpoint=ne,exports.useCheckpointIds=ue,exports.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),exports.useCheckpoints=e=>V(e,10),exports.useCreateCheckpoints=(e,s,t)=>E(e,s,t),exports.useCreateIndexes=(e,s,t)=>E(e,s,t),exports.useCreateMetrics=(e,s,t)=>E(e,s,t),exports.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,l]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),l(1)})(),()=>{d.destroy()})),[d,...r]),d},exports.useCreateQueries=(e,s,t)=>E(e,s,t),exports.useCreateRelationships=(e,s,t)=>E(e,s,t),exports.useCreateStore=(e,s=[])=>A(e,s),exports.useDelCellCallback=(e,s,t,o,r,l,d)=>z(r,i,l,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>z(t,n,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>z(s,l,t,o,e),exports.useDelTablesCallback=(e,s,t)=>z(e,d,s,t),exports.useDelValueCallback=(e,s,t,o)=>z(s,c,t,o,e),exports.useDelValuesCallback=(e,s,t)=>z(e,x,s,t),exports.useGoBackwardCallback=pe,exports.useGoForwardCallback=ae,exports.useGoToCallback=(e,s=[],t,o=g,r=[])=>{const l=B(t);return M((s=>b(l,(t=>b(e(s),(e=>o(t.goTo(e),e)))))),[l,...s,...r])},exports.useIndexes=e=>V(e,4),exports.useLinkedRowIds=te,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>U("LinkedRowIds",q(r),t,o,[e,s]),exports.useLocalRowIds=se,exports.useLocalRowIdsListener=(e,s,t,o,r)=>U("LocalRowIds",q(r),t,o,[e,s]),exports.useMetric=Z,exports.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),exports.useMetrics=e=>V(e,2),exports.useQueries=e=>V(e,8),exports.useRedoInformation=e=>{const s=B(e),[,,[o]]=ue(s);return[!w(o),ae(s),o,b(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationships=e=>V(e,6),exports.useRemoteRowId=ee,exports.useRemoteRowIdListener=(e,s,t,o,r)=>U("RemoteRowId",q(r),t,o,[e,s]),exports.useResultCell=de,exports.useResultCellIds=le,exports.useResultCellIdsListener=(e,s,t,o,r)=>U("ResultCellIds",f(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,l)=>U("ResultCell",f(l),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>Q("ResultRow",f(t),{},[e,s]),exports.useResultRowIds=oe,exports.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",f(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>U("ResultRow",f(r),t,o,[e,s]),exports.useResultSortedRowIds=re,exports.useResultSortedRowIdsListener=(e,s,t,o,r,l,d,u)=>U("ResultSortedRowIds",f(u),l,d,[e,s,t,o,r]),exports.useResultTable=(e,s)=>Q("ResultTable",f(s),{},[e]),exports.useResultTableCellIds=(e,s)=>Q("ResultTableCellIds",f(s),[],[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>U("ResultTableCellIds",f(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>U("ResultTable",f(o),s,t,[e]),exports.useRow=(e,s,t)=>Q(n,y(t),{},[e,s]),exports.useRowIds=K,exports.useRowIdsListener=(e,s,t,o,r)=>U(p,y(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,l)=>U(n,y(l),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,l,d,u)=>j(l,i,o,r,d,u,e,s,t),exports.useSetCheckpointCallback=(e=g,s=[],t,o=g,r=[])=>{const l=B(t);return M((s=>b(l,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[l,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,l,d)=>j(r,"PartialRow",t,o,l,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>j(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,l,d)=>j(r,n,t,o,l,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,d)=>j(o,l,s,t,r,d,e),exports.useSetTablesCallback=(e,s,t,o,r)=>j(t,d,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,l)=>j(o,c,s,t,r,l,e),exports.useSetValuesCallback=(e,s,t,o,r)=>j(t,x,e,s,o,r),exports.useSliceIds=$,exports.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),exports.useSliceRowIds=_,exports.useSliceRowIdsListener=(e,s,t,o,r)=>U("SliceRowIds",P(r),t,o,[e,s]),exports.useSortedRowIds=N,exports.useSortedRowIdsListener=(e,s,t,o,r,l,d,u,n)=>U(a,y(n),l,d,[e,s,t,o,r],u),exports.useStore=e=>V(e,0),exports.useTable=(e,s)=>Q(l,y(s),{},[e]),exports.useTableCellIds=(e,s)=>Q(l+I,y(s),[],[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>U(l+I,y(r),s,t,[e],o),exports.useTableIds=J,exports.useTableIdsListener=(e,s,t,o)=>U(u,y(o),e,s,[],t),exports.useTableListener=(e,s,t,o,r)=>U(l,y(r),s,t,[e],o),exports.useTables=e=>Q(d,y(e),{}),exports.useTablesListener=(e,s,t,o)=>U(d,y(o),e,s,[],t),exports.useUndoInformation=e=>{const s=B(e),[o,r]=ue(s);return[(l=o,!(0==(e=>e.length)(l))),pe(s),r,b(r,(e=>s?.getCheckpoint(e)))??t];var l},exports.useValue=Y,exports.useValueIds=X,exports.useValueIdsListener=(e,s,t,o)=>U(C,y(o),e,s,[],t),exports.useValueListener=(e,s,t,o,r)=>U(c,y(r),s,t,[e],o),exports.useValues=e=>Q(x,y(e),{}),exports.useValuesListener=(e,s,t,o)=>U(x,y(o),e,s,[],t);
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),n=e(!0),r=e(0),l=e(e),o="Listener",s="Result",a="Ids",i="Row",d=i+a,u="Sorted"+i+a,c="Cell",v=c+a,f=(e,t)=>e.every(t),h=(e,t)=>e.forEach(t),w=e=>p(e,((e,t)=>e+t),0),g=e=>e.length,y=e=>0==g(e),p=(e,t,n)=>e.reduce(t,n),L=(e,...t)=>e.push(...t),R=Math.max,b=Math.min,T=isFinite,m=e=>null==e,O=(e,t,n)=>m(e)?null==n?void 0:n():t(e),S=t=>e(t)==l,C=e=>Array.isArray(e),I=()=>{},Q=Object,j=Q.freeze,x=e=>e.size,E=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},M=e=>m(e)||0==x(e),D=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},k=e=>e.clear(),z=(e,t)=>null==e?void 0:e.forEach(t),A=(e,t)=>null==e?void 0:e.delete(t),F=e=>new Map(e),P=(e,t)=>null==e?void 0:e.get(t),W=(e,t)=>z(e,((e,n)=>t(n,e))),q=(e,t,n)=>m(n)?(A(e,t),e):null==e?void 0:e.set(t,n),B=(e,t,n)=>(E(e,t)||q(e,t,n()),P(e,t)),G=(e,t,n,r,l=0)=>O((n?B:P)(e,t[l],l>g(t)-2?n:F),(o=>{if(l>g(t)-2)return(null==r?void 0:r(o))&&q(e,t[l]),o;const s=G(o,t,n,r,l+1);return M(o)&&q(e,t[l]),s})),H=e=>new Set(C(e)||m(e)?e:[e]),J=(e,t)=>null==e?void 0:e.add(t),K=F([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>R(...e),(e,t)=>R(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:R(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var N=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable;const X=(l=>{const a=new WeakMap;return l=>(a.has(l)||a.set(l,(l=>{const a=l.createStore,[w,p,R,b,X,,,Y,,Z,$,_,ee]=((e,t,n)=>{const r=e.hasRow,l=F(),o=F(),s=F(),a=F(),i=F(),d=(t,n,...r)=>{const l=B(i,t,H);return h(r,(t=>J(l,t)&&n&&e.callListener(t))),r},u=(t,...n)=>O(P(i,t),(r=>{h(y(n)?D(r):n,(t=>{e.delListener(t),A(r,t)})),M(r)&&q(i,t)})),c=(e,t)=>{q(l,e,t),E(o,e)||(q(o,e,!0),q(s,e,F()),q(a,e,F()))},v=e=>{q(l,e),q(o,e),q(s,e),q(a,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=l)?void 0:e.keys())?t:[]];var e,t},e=>W(o,e),e=>E(o,e),e=>P(l,e),e=>P(o,e),(e,t)=>q(o,e,t),c,(t,l,o,i,v)=>{c(t,l);const w=F(),y=F(),p=P(s,t),L=P(a,t),R=t=>{const o=n=>e.getCell(l,t,n),s=P(p,t),a=r(l,t)?n(i(o,t)):void 0;var d,u;if(s===a||C(s)&&C(a)&&(u=a,g(d=s)===g(u)&&f(d,((e,t)=>u[t]===e)))||q(w,t,[s,a]),!m(v)){const e=P(L,t),n=r(l,t)?v(o,t):void 0;e!=n&&q(y,t,n)}},b=e=>{o((()=>{z(w,(([,e],t)=>q(p,t,e))),z(y,((e,t)=>q(L,t,e)))}),w,y,p,L,e),k(w),k(y)};W(p,R),e.hasTable(l)&&h(e.getRowIds(l),(e=>{E(p,e)||R(e)})),b(!0),u(t),d(t,0,e.addRowListener(l,null,((e,t,n)=>R(n))),e.addTableListener(l,(()=>b())))},v,()=>W(i,v),d,u]})(l,0,I),te=a(),ne=a(),re=F(),le=(e,t,...n)=>h(n,(n=>J(B(B(re,t,F),e,H),n))),oe=e=>{O(P(re,e),(e=>{W(e,((e,t)=>z(t,(t=>e.delListener(t))))),k(e)})),h([ne,te],(t=>t.delTable(e)))},se=(e,t,n)=>le(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ae={setQueryDefinition:(o,s,a)=>{Y(o,s),oe(o);const i=[],d=[[null,[s,null,null,[],F()]]],u=[],c=[],v=[];a({select:(e,t)=>{const n=S(e)?[g(i)+"",e]:[m(t)?e:t,n=>n(e,t)];return L(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const r=m(n)||S(t)?null:t,l=m(r)?t:n,o=[e,[e,r,S(l)?l:e=>e(l),[],F()]];return L(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>L(u,S(e)?e:m(n)?n=>n(e)===t:r=>r(e,t)===n),group:(e,t,n,r,l)=>{var o;const s=[e,[e,S(t)?[t,n,r,l]:null!=(o=P(K,t))?o:[(e,t)=>t]]];return L(c,s),{as:e=>s[0]=e}},having:(e,t)=>L(v,S(e)?e:n=>n(e)===t)});const w=F(i);if(M(w))return ae;const p=F(d);W(p,((e,[,t])=>O(P(p,t),(({3:t})=>m(e)?0:L(t,e)))));const R=F(c);let b=te;if(M(R)&&y(v))b=ne;else{se(o,b,ne);const l=F();W(R,((e,[t,n])=>J(B(l,t,H),[e,n])));const s=H();W(w,(e=>E(l,e)?0:J(s,e)));const a=F(),i=(s,a,i,d)=>O(s,(([u,c,h,w])=>{W(a,((o,[s])=>{const a=B(u,o,F),c=P(a,i),v=d?void 0:s;if(c!==v){const s=H([[c,v]]),d=x(a);q(a,i,v),z(P(l,o),(([l,o])=>{const i=((e,t,n,r,l,o=!1)=>{if(M(n))return;const[s,a,i,d]=l;return o||(o=m(e)),z(r,(([n,r])=>{o||(e=m(n)?null==a?void 0:a(e,r,t++):m(r)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,r,n,t),o||(o=m(e)))})),o?s(D(n),x(n)):e})(w[l],d,a,s,o);w[l]=m((l=>{const o=e(l);return(e=>e==t||e==n)(o)||o==r&&T(l)?o:void 0})(i))?null:i}))}})),M(c)||!f(v,(e=>e((e=>w[e]))))?ne.delRow(o,h):m(h)?s[2]=ne.addRow(o,w):ne.setRow(o,h,w)}));le(b,o,b.addRowListener(o,null,((e,t,n,r)=>{const d=[],u=[],c=F(),v=b.hasRow(o,n);let f=!v;z(s,(e=>{const[t,l,s]=r(o,n,e);L(d,l),L(u,s),f||(f=t)})),W(l,(e=>{const[t,,l]=r(o,n,e);(f||t)&&q(c,e,[l])})),f&&i(G(a,d,void 0,(([,e])=>(A(e,n),M(e)))),c,n,1),v&&i(G(a,u,(()=>{const e={};return z(s,(t=>e[t]=b.getCell(o,n,t))),[F(),H(),void 0,e]}),(([,e])=>{J(e,n)})),c,n)})))}se(o,l,b);const C=(e,t,n,r)=>{const a=e=>l.getCell(t,n,e);h(r,(t=>{var n;const[r,,s,i,d]=P(p,t),u=null==s?void 0:s(a,e),[c,v]=null!=(n=P(d,e))?n:[];u!=c&&(m(v)||ee(o,v),q(d,e,m(u)?null:[u,..._(o,1,l.addRowListener(r,u,(()=>C(e,r,u,i))))]))})),(e=>{const t=(t,n)=>{var r,o,a;return l.getCell(...m(n)?[s,e,t]:t===s?[s,e,n]:[null==(r=P(p,t))?void 0:r[0],null==(a=P(null==(o=P(p,t))?void 0:o[4],e))?void 0:a[0],n])};b.transaction((()=>f(u,(e=>e(t)))?W(w,((n,r)=>((e,t,n,r,l)=>m(l)?e.delCell(t,n,r,!0):e.setCell(t,n,r,l))(b,o,e,n,r(t,e)))):b.delRow(o,e)))})(e)},{3:I}=P(p,null);return b.transaction((()=>_(o,1,l.addRowListener(s,null,((e,t,n)=>{l.hasRow(s,n)?C(n,s,n,I):(b.delRow(o,n),z(p,(({4:e})=>O(P(e,n),(([,t])=>{ee(o,t),q(e,n)})))))}))))),ae},delQueryDefinition:e=>(oe(e),Z(e),ae),getStore:w,getQueryIds:p,forEachQuery:R,hasQuery:b,getTableId:X,delListener:e=>(ne.delListener(e),ae),destroy:$,getListenerStats:()=>((e,t)=>{var n={};for(var r in e)U.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&N)for(var r of N(e))t.indexOf(r)<0&&V.call(e,r)&&(n[r]=e[r]);return n})(ne.getListenerStats(),["tables","tableIds","transaction"])};var ie,de;return ie={Table:[1,1],[d]:[0,1],[u]:[0,5],[i]:[1,2],[v]:[0,2],[c]:[1,3]},de=([e,t],n)=>{h(e?["get","has","forEach"]:["get"],(e=>ae[e+s+n]=(...t)=>ne[e+n](...t))),ae["add"+s+n+o]=(...e)=>{return ne["add"+n+o](...(r=e,0,l=t,r.slice(0,l)),((n,...r)=>e[t](ae,...r)));var r,l}},((e,t)=>{e.map(t)})(Q.entries(ie),(([e,t])=>de(t,e))),j(ae)})(l)),a.get(l))})();exports.createQueries=X;
1
+ "use strict";const e=e=>typeof e,t=e(""),n=e(!0),r=e(0),l=e(e),o="Listener",s="Result",a="Ids",i="Table",d="Row",u=d+a,c="Sorted"+d+a,v="Cell",f=v+a,h=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),g=e=>L(e,((e,t)=>e+t),0),y=e=>e.length,p=e=>0==y(e),L=(e,t,n)=>e.reduce(t,n),R=(e,...t)=>e.push(...t),b=Math.max,T=Math.min,m=isFinite,O=e=>null==e,S=(e,t,n)=>O(e)?null==n?void 0:n():t(e),C=t=>e(t)==l,I=e=>Array.isArray(e),Q=()=>{},j=Object,x=j.freeze,E=e=>e.size,M=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},D=e=>O(e)||0==E(e),k=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},z=e=>e.clear(),A=(e,t)=>null==e?void 0:e.forEach(t),F=(e,t)=>null==e?void 0:e.delete(t),P=e=>new Map(e),W=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>A(e,((e,n)=>t(n,e))),B=(e,t,n)=>O(n)?(F(e,t),e):null==e?void 0:e.set(t,n),G=(e,t,n)=>(M(e,t)||B(e,t,n()),W(e,t)),H=(e,t,n,r,l=0)=>S((n?G:W)(e,t[l],l>y(t)-2?n:P),(o=>{if(l>y(t)-2)return(null==r?void 0:r(o))&&B(e,t[l]),o;const s=H(o,t,n,r,l+1);return D(o)&&B(e,t[l]),s})),J=e=>new Set(I(e)||O(e)?e:[e]),K=(e,t)=>null==e?void 0:e.add(t),N=P([["avg",[(e,t)=>g(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var U=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;const Y=(l=>{const a=new WeakMap;return l=>(a.has(l)||a.set(l,(l=>{const a=l.createStore,[g,L,b,T,Y,,,Z,,$,_,ee,te]=((e,t,n)=>{const r=e.hasRow,l=P(),o=P(),s=P(),a=P(),i=P(),d=(t,n,...r)=>{const l=G(i,t,J);return w(r,(t=>K(l,t)&&n&&e.callListener(t))),r},u=(t,...n)=>S(W(i,t),(r=>{w(p(n)?k(r):n,(t=>{e.delListener(t),F(r,t)})),D(r)&&B(i,t)})),c=(e,t)=>{B(l,e,t),M(o,e)||(B(o,e,!0),B(s,e,P()),B(a,e,P()))},v=e=>{B(l,e),B(o,e),B(s,e),B(a,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=l)?void 0:e.keys())?t:[]];var e,t},e=>q(o,e),e=>M(o,e),e=>W(l,e),e=>W(o,e),(e,t)=>B(o,e,t),c,(t,l,o,i,v)=>{c(t,l);const f=P(),g=P(),p=W(s,t),L=W(a,t),R=t=>{const o=n=>e.getCell(l,t,n),s=W(p,t),a=r(l,t)?n(i(o,t)):void 0;var d,u;if(s===a||I(s)&&I(a)&&(u=a,y(d=s)===y(u)&&h(d,((e,t)=>u[t]===e)))||B(f,t,[s,a]),!O(v)){const e=W(L,t),n=r(l,t)?v(o,t):void 0;e!=n&&B(g,t,n)}},b=e=>{o((()=>{A(f,(([,e],t)=>B(p,t,e))),A(g,((e,t)=>B(L,t,e)))}),f,g,p,L,e),z(f),z(g)};q(p,R),e.hasTable(l)&&w(e.getRowIds(l),(e=>{M(p,e)||R(e)})),b(!0),u(t),d(t,0,e.addRowListener(l,null,((e,t,n)=>R(n))),e.addTableListener(l,(()=>b())))},v,()=>q(i,v),d,u]})(l,0,Q),ne=a(),re=a(),le=P(),oe=(e,t,...n)=>w(n,(n=>K(G(G(le,t,P),e,J),n))),se=e=>{S(W(le,e),(e=>{q(e,((e,t)=>A(t,(t=>e.delListener(t))))),z(e)})),w([re,ne],(t=>t.delTable(e)))},ae=(e,t,n)=>oe(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ie={setQueryDefinition:(o,s,a)=>{Z(o,s),se(o);const i=[],d=[[null,[s,null,null,[],P()]]],u=[],c=[],v=[];a({select:(e,t)=>{const n=C(e)?[y(i)+"",e]:[O(t)?e:t,n=>n(e,t)];return R(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const r=O(n)||C(t)?null:t,l=O(r)?t:n,o=[e,[e,r,C(l)?l:e=>e(l),[],P()]];return R(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>R(u,C(e)?e:O(n)?n=>n(e)===t:r=>r(e,t)===n),group:(e,t,n,r,l)=>{var o;const s=[e,[e,C(t)?[t,n,r,l]:null!=(o=W(N,t))?o:[(e,t)=>t]]];return R(c,s),{as:e=>s[0]=e}},having:(e,t)=>R(v,C(e)?e:n=>n(e)===t)});const f=P(i);if(D(f))return ie;const g=P(d);q(g,((e,[,t])=>S(W(g,t),(({3:t})=>O(e)?0:R(t,e)))));const L=P(c);let b=ne;if(D(L)&&p(v))b=re;else{ae(o,b,re);const l=P();q(L,((e,[t,n])=>K(G(l,t,J),[e,n])));const s=J();q(f,(e=>M(l,e)?0:K(s,e)));const a=P(),i=(s,a,i,d)=>S(s,(([u,c,f,w])=>{q(a,((o,[s])=>{const a=G(u,o,P),c=W(a,i),v=d?void 0:s;if(c!==v){const s=J([[c,v]]),d=E(a);B(a,i,v),A(W(l,o),(([l,o])=>{const i=((e,t,n,r,l,o=!1)=>{if(D(n))return;const[s,a,i,d]=l;return o||(o=O(e)),A(r,(([n,r])=>{o||(e=O(n)?null==a?void 0:a(e,r,t++):O(r)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,r,n,t),o||(o=O(e)))})),o?s(k(n),E(n)):e})(w[l],d,a,s,o);w[l]=O((l=>{const o=e(l);return(e=>e==t||e==n)(o)||o==r&&m(l)?o:void 0})(i))?null:i}))}})),D(c)||!h(v,(e=>e((e=>w[e]))))?re.delRow(o,f):O(f)?s[2]=re.addRow(o,w):re.setRow(o,f,w)}));oe(b,o,b.addRowListener(o,null,((e,t,n,r)=>{const d=[],u=[],c=P(),v=b.hasRow(o,n);let f=!v;A(s,(e=>{const[t,l,s]=r(o,n,e);R(d,l),R(u,s),f||(f=t)})),q(l,(e=>{const[t,,l]=r(o,n,e);(f||t)&&B(c,e,[l])})),f&&i(H(a,d,void 0,(([,e])=>(F(e,n),D(e)))),c,n,1),v&&i(H(a,u,(()=>{const e={};return A(s,(t=>e[t]=b.getCell(o,n,t))),[P(),J(),void 0,e]}),(([,e])=>{K(e,n)})),c,n)})))}ae(o,l,b);const T=(e,t,n,r)=>{const a=e=>l.getCell(t,n,e);w(r,(t=>{var n;const[r,,s,i,d]=W(g,t),u=null==s?void 0:s(a,e),[c,v]=null!=(n=W(d,e))?n:[];u!=c&&(O(v)||te(o,v),B(d,e,O(u)?null:[u,...ee(o,1,l.addRowListener(r,u,(()=>T(e,r,u,i))))]))})),(e=>{const t=(t,n)=>{var r,o,a;return l.getCell(...O(n)?[s,e,t]:t===s?[s,e,n]:[null==(r=W(g,t))?void 0:r[0],null==(a=W(null==(o=W(g,t))?void 0:o[4],e))?void 0:a[0],n])};b.transaction((()=>h(u,(e=>e(t)))?q(f,((n,r)=>((e,t,n,r,l)=>O(l)?e.delCell(t,n,r,!0):e.setCell(t,n,r,l))(b,o,e,n,r(t,e)))):b.delRow(o,e)))})(e)},{3:I}=W(g,null);return b.transaction((()=>ee(o,1,l.addRowListener(s,null,((e,t,n)=>{l.hasRow(s,n)?T(n,s,n,I):(b.delRow(o,n),A(g,(({4:e})=>S(W(e,n),(([,t])=>{te(o,t),B(e,n)})))))}))))),ie},delQueryDefinition:e=>(se(e),$(e),ie),getStore:g,getQueryIds:L,forEachQuery:b,hasQuery:T,getTableId:Y,delListener:e=>(re.delListener(e),ie),destroy:_,getListenerStats:()=>((e,t)=>{var n={};for(var r in e)V.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&U)for(var r of U(e))t.indexOf(r)<0&&X.call(e,r)&&(n[r]=e[r]);return n})(re.getListenerStats(),["tables","tableIds","transaction"])};var de,ue;return de={[i]:[1,1],[i+f]:[0,1],[u]:[0,1],[c]:[0,5],[d]:[1,2],[f]:[0,2],[v]:[1,3]},ue=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>ie[e+s+n]=(...t)=>re[e+n](...t))),ie["add"+s+n+o]=(...e)=>{return re["add"+n+o](...(r=e,0,l=t,r.slice(0,l)),((n,...r)=>e[t](ie,...r)));var r,l}},((e,t)=>{e.map(t)})(j.entries(de),(([e,t])=>ue(t,e))),x(ie)})(l)),a.get(l))})();exports.createQueries=Y;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",n=e(t),l=e(!0),s=e(0),o=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,p="Sorted"+g+u,y="Cell",S=y+u,w="Value",I=w+"s",R=w+u,T=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),m=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),V=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),x=(e,t)=>e.sort(t),E=(e,t)=>e.forEach(t),k=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),Q=e=>e.shift(),j=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==o,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),se=(e,t)=>k(Y.entries(e),(([e,n])=>t(n,e))),oe=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),pe=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),ye=(e,t,n)=>(ie(e,t)||pe(e,t,n()),ge(e,t)),Se=(e,t,n,l=pe)=>(se(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),we=(e,t,n)=>{const l={};return ue(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Ie=(e,t,n)=>we(e,(e=>we(e,t,n)),oe),Re=(e,t,n)=>we(e,(e=>Ie(e,t,n)),oe),Te=(e,t)=>{const n=he();return ue(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},Ce=e=>Te(e,Te),be=e=>Te(e,Ce),me=(e,t,n,l,s=0)=>G((n?ye:ge)(e,t[s],s>D(t)-2?n:he),(o=>{if(s>D(t)-2)return(null==l?void 0:l(o))&&pe(e,t[s]),o;const r=me(o,t,n,l,s+1);return ae(o)&&pe(e,t[s]),r})),Ve=t=>{const n=e(t);return H(n)||n==s&&B(t)?n:void 0},xe=(e,t,n,l,s)=>q(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),Ee=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),ke=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,s=he(),o=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const s=ye(a,t,ke);return E(l,(t=>Me(s,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{E(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&pe(a,t)})),u=(e,n)=>{pe(s,e,n),ie(o,e)||(pe(o,e,t()),pe(r,e,he()),pe(i,e,he()))},v=e=>{pe(s,e),pe(o,e),pe(r,e),pe(i,e),c(e)};return[()=>e,()=>fe(s),e=>Le(o,e),e=>ie(o,e),e=>ge(s,e),e=>ge(o,e),(e,t)=>pe(o,e,t),u,(t,s,o,a,v)=>{u(t,s);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),p=t=>{const o=n=>e.getCell(s,t,n),r=ge(g,t),i=l(s,t)?n(a(o,t)):void 0;if(r===i||U(r)&&U(i)&&m(r,i)||pe(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(s,t)?v(o,t):void 0;e!=n&&pe(f,t,n)}},y=e=>{o((()=>{ue(h,(([,e],t)=>pe(g,t,e))),ue(f,((e,t)=>pe(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,p),e.hasTable(s)&&E(e.getRowIds(s),(e=>{ie(g,e)||p(e)})),y(!0),c(t),d(t,0,e.addRowListener(s,null,((e,t,n)=>p(n))),e.addTableListener(s,(()=>y())))},v,()=>Le(a,v),d,c]},Je=(l,s)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=s?s:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var s;return null!=(s=l?Q(e):null)?s:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,s]=Fe(),o=he();return[(s,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return pe(o,c,[s,r,i,a,d]),Me(me(r,null!=i?i:[t],ke),c),c},(e,l,...s)=>E(((e,n=[t])=>{const l=[],s=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>s(e,t+1))):E([n[t],null],(n=>s(ge(e,n),t+1)));return s(e,0),l})(e,l),(e=>ue(e,(e=>ge(o,e)[0](n,...null!=l?l:[],...s))))),e=>G(ge(o,e),(([,n,l])=>(me(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),pe(o,e),s(e),l))),e=>G(ge(o,e),(([e,,t=[],l,s])=>{const o=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...s(r)):q(t[d])?E(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,t[d])};o()}))]},Qe=Ae((e=>{let n,l,s,o=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],p=[],y=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=ge(f,n);ue(l,((n,l)=>ue(n,((n,s)=>ue(n,((n,o)=>xe(e,l,s,o,n[t]))))))),ue(s,((n,l)=>Ee(e,l,n[t])))})),a=1},S=e=>{pe(f,e),pe(g,e),v(c,[e])},w=(e,t)=>E(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),S),I=()=>w(L,D(L)-o),R=()=>G(n,(()=>{F(L,n),I(),w(p),n=void 0,s=1})),T=()=>{n=P(L),s=1},b=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){R();const e=ye(r,t,he),i=ye(e,n,he),a=ye(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&ae(pe(i,l))&&ae(pe(e,n))&&ae(pe(r,t))&&T(),M()}})),m=e.addValueListener(null,((e,t,n,l)=>{if(a){R();const e=ye(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(pe(i,t))&&T(),M()}})),V=(e="")=>(q(n)&&(n=t+l++,pe(f,n,[r,i]),O(n,e),r=he(),i=he(),s=1),n),x=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(p,V()),y(0,n),n=P(L),s=1)},k=()=>{J(p)||(F(L,n),n=Q(p),y(1,n),s=1)},M=()=>{s&&(v(d),s=0)},A=e=>{const t=V(e);return M(),t},O=(e,t)=>(j(e)&&ge(g,e)!==t&&(pe(g,e,t),v(c,[e])),z),j=e=>ie(f,e),z={setSize:e=>(o=e,I(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...p]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:j,getCheckpoint:e=>ge(g,e),goBackward:()=>(x(),M(),z),goForward:()=>(k(),M(),z),goTo:e=>{const t=C(L,e)?x:C(p,e)?k:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(w(L),w(p),q(n)||S(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return ee(z.clear())})),je=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[s,o,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?k(e,T):T(e))),[f,g,L]=Pe((()=>y)),p=(t,n,l)=>{const s=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},y={setIndexDefinition:(e,t,s,o,r,i=je)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,s,r,u,v,h)=>{let f=0;const L=ke(),p=ke(),y=d(e);if(ue(s,(([e,t],n)=>{const l=ke(e),s=ke(t);ue(l,(e=>ve(s,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(y,e),(t=>{ve(t,n),ae(t)&&(pe(y,e),f=1)}))})),ue(s,(e=>{Me(L,e),ie(y,e)||(pe(y,e,ke()),f=1),Me(ge(y,e),n),q(o)||Me(p,e)}))})),t(),ae(v)||(h?Le(y,(e=>Me(p,e))):Le(r,(e=>G(ge(u,e),(e=>Me(p,e))))),ue(p,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(y,e)];V(n,t)||(pe(y,e,ke(x(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...y];V(t,a)||(c(e,he(x(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(s),G(o,Je)),y},delIndexDefinition:e=>(v(e),y),getStore:s,getIndexIds:o,forEachIndex:e=>r(((t,n)=>e(t,(e=>p(t,e,n))))),forEachSlice:(e,t)=>p(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),y),destroy:h,getListenerStats:()=>({})};return ee(y)})),Ne=he([["avg",[(e,t)=>M(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=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,s,o=!1)=>{if(ae(n))return;const[r,i,a,d]=s;return o||(o=q(e)),ue(l,(([n,l])=>{o||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=q(e)))})),o?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,s,o,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,s,o,r,i)=>{var u;const v=K(l)?[l,o,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,s,o,r,i)=>{const c=a(e),u=re(o);i||(i=q(c)),t();let h=We(c,u,o,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(s,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:s,forEachMetric:o,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())})),qe=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable;const Ke=Ae((e=>{const n=e.createStore,[l,s,o,r,i,,,u,,h,f,w,I]=De(e,(()=>!0),X),R=n(),T=n(),C=he(),m=(e,t,...n)=>E(n,(n=>Me(ye(ye(C,t,he),e,ke),n))),V=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),E([T,R],(t=>t.delTable(e)))},x=(e,t,n)=>m(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),k={setQueryDefinition:(n,l,s)=>{u(n,l),V(n);const o=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];s({select:(e,n)=>{const l=K(e)?[D(o)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(o,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,s=q(l)?t:n,o=[e,[e,l,K(s)?s:e=>e(s),[],he()]];return F(r,o),{as:e=>o[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,K(t)?[t,n,l,s]:null!=(o=ge(Ne,t))?o:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(o);if(ae(c))return k;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=R;if(ae(h)&&J(d))f=T;else{x(n,f,T);const e=he();Le(h,((t,[n,l])=>Me(ye(e,n,ke),[t,l])));const t=ke();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),s=(t,l,s,o)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=ye(r,t,he),i=ge(l,s),a=o?void 0:n;if(i!==a){const n=ke([[i,a]]),o=re(l);pe(l,s,a),ue(ge(e,t),(([e,t])=>{const s=We(c[e],o,l,n,t);c[e]=q(Ve(s))?null:s}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?T.delRow(n,a):q(a)?t[2]=T.addRow(n,c):T.setRow(n,a,c)}));m(f,n,f.addRowListener(n,null,((o,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,s]=a(n,i,e);F(d,l),F(c,s),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&pe(u,e,[l])})),h&&s(me(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&s(me(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),ke(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}x(n,e,f);const g=(t,s,o,r)=>{const a=t=>e.getCell(s,o,t);E(r,(l=>{var s;const[o,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(s=ge(d,t))?s:[];c!=u&&(q(h)||I(n,h),pe(d,t,q(c)?null:[c,...w(n,1,e.addRowListener(o,c,(()=>g(t,o,c,i))))]))})),(t=>{const s=(n,s)=>{var o,r,i;return e.getCell(...q(s)?[l,t,n]:n===l?[l,t,s]:[null==(o=ge(v,n))?void 0:o[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],s])};f.transaction((()=>b(i,(e=>e(s)))?Le(c,((e,l)=>xe(f,n,t,e,l(s,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>w(n,1,e.addRowListener(l,null,((t,s,o)=>{e.hasRow(l,o)?g(o,l,o,L):(f.delRow(n,o),ue(v,(({4:e})=>G(ge(e,o),(([,t])=>{I(n,t),pe(e,o)})))))}))))),k},delQueryDefinition:e=>(V(e),h(e),k),getStore:l,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:i,delListener:e=>(T.delListener(e),k),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)Ge.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&qe)for(var l of qe(e))t.indexOf(l)<0&&He.call(e,l)&&(n[l]=e[l]);return n})(T.getListenerStats(),["tables","tableIds","transaction"])};return se({[v]:[1,1],[L]:[0,1],[p]:[0,5],[g]:[1,2],[S]:[0,2],[y]:[1,3]},(([e,t],n)=>{E(e?["get","has","forEach"]:["get"],(e=>k[e+d+n]=(...t)=>T[e+n](...t))),k[c+d+n+a]=(...e)=>T[c+n+a](...O(e,0,t),((n,...l)=>e[t](k,...l)))})),ee(k)})),Ue=Ae((e=>{const n=he(),l=he(),s=he(),o=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,p]=Pe((()=>I)),y=(e,t,n)=>G(u(e),(([l,,s])=>{if(!ie(s,t)){const o=ke();if(c(e)!=w(e))Me(o,t);else{let e=t;for(;!q(e)&&!ie(o,e);)Me(o,e),e=ge(l,e)}if(n)return o;pe(s,t,o)}return ge(s,t)})),S=(e,t)=>G(u(e),(([,,e])=>pe(e,t))),w=e=>ge(n,e),I={setRelationshipDefinition:(e,t,r,i)=>(pe(n,e,r),v(e,t,((t,n)=>{const r=ke(),i=ke(),a=ke(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&pe(c,t)}))),q(n)||(Me(i,n),ie(c,n)||pe(c,n,ke()),Me(ge(c,n),l)),Me(r,l),pe(d,l,n),Le(ge(o,e),(t=>{ie(y(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(s,[e,t]))),ue(a,(t=>{S(e,t),L(o,[e,t])}))}),Je(i)),I),delRelationshipDefinition:e=>(pe(n,e),h(e),I),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:w,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(y(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(y(e,t),g(n,o,[e,t])),delListener:e=>(S(...p(e)),I),destroy:f,getListenerStats:()=>({})};return ee(I)})),Xe=e=>[e,e],Ye=()=>[he(),he()],Ze=e=>[...e],_e=([e,t])=>e===t,et=(e,t,n)=>q(e)||!te(e)||oe(e)||_(e)?(null==n||n(),!1):(se(e,((n,l)=>{t(n,l)||le(e,l)})),!oe(e)),tt=(e,t,n)=>pe(e,t,ge(e,t)==-n?void 0:n),nt=()=>{let e,t,n=!1,l=!1,o=0;const d=he(),u=he(),p=he(),b=he(),V=he(),M=he(),D=he(),J=he(),A=he(),P=he(),Q=he(),N=he(),W=he(),B=ke(),$=he(),U=he(),X=he(),Y=he(),Z=Ye(),_=Ye(),te=Ye(),re=Ye(),de=Ye(),me=Ye(),De=Ye(),Je=Ye(),Ae=Ye(),Oe=Ye(),Qe=Ye(),ze=Ye(),Ne=Ye(),We=Ye(),Be=he(),$e=Ye(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!et(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=s||(Ve(e[i])!=t&&le(e,i),0))},lt=(t,n)=>(!e||ie(P,n)||Jt(n))&&et(t,((e,t)=>st(n,t,e)),(()=>Jt(n))),st=(e,t,n,l)=>et(l?n:at(n,e,t),((l,s)=>G(ot(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,n,l,s)=>e?G(ge(ge(P,t),l),(e=>Ve(s)!=e[r]?Jt(t,n,l,s,e[i]):s),(()=>Jt(t,n,l,s))):q(Ve(s))?Jt(t,n,l,s):s,rt=(e,t)=>et(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>Ve(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(Ve(n))?At(e,n):n,at=(e,t,n)=>(G(ge(Q,t),(([l,s])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(s,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>Se(P,e,((e,t,n)=>{const l=he(),s=ke();Se(ye(P,t,he),n,((e,t,n)=>{pe(e,t,n),G(n[i],(e=>pe(l,t,e)),(()=>Me(s,t)))})),pe(Q,t,[l,s])}),((e,t)=>{pe(P,t),pe(Q,t)})),ut=e=>Se(N,e,((e,t,n)=>{pe(N,t,n),G(n[i],(e=>pe(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{pe(N,t),pe(W,t),ve(B,t)})),vt=e=>oe(e)?on():en(e),ht=e=>Se(X,e,((e,t,n)=>ft(t,n)),((e,t)=>Tt(t))),ft=(e,t)=>Se(ye(X,e,(()=>(Vt(e,1),pe($,e,Fe()),pe(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,s)=>Se(ye(t,n,(()=>(xt(e,n,1),he()))),l,((t,l,s)=>Lt(e,n,t,l,s)),((l,o)=>bt(e,t,n,l,o,s))),Lt=(e,t,n,l,s)=>{ie(n,l)||Et(e,t,l,1);const o=ge(n,l);s!==o&&(kt(e,t,l,o,s),pe(n,l,s))},pt=(e,t,n,l,s)=>G(ge(t,n),(t=>Lt(e,n,t,l,s)),(()=>gt(e,t,n,at({[l]:s},e,n)))),yt=e=>oe(e)?dn():tn(e),St=e=>Se(Y,e,((e,t,n)=>wt(t,n)),((e,t)=>mt(t))),wt=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),pe(Y,e,t))},It=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?It(e,t):l},Rt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},Tt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,s,o)=>{var r;const i=ge(null==(r=ge(Q,e))?void 0:r[0],s);if(!q(i)&&!o)return Lt(e,n,l,s,i);const a=t=>{kt(e,n,t,ge(l,t)),Et(e,n,t,-1),pe(l,t)};q(i)?a(s):Le(l,a),ae(l)&&(xt(e,n,-1),ae(pe(t,n))&&(Vt(e,-1),pe(X,e),pe($,e),pe(U,e)))},mt=e=>{const t=ge(W,e);if(!q(t))return wt(e,t);Dt(e,ge(Y,e)),Mt(e,-1),pe(Y,e)},Vt=(e,t)=>tt(d,e,t),xt=(e,t,n)=>tt(ye(p,e,he),t,n),Et=(e,t,n,l)=>{var s;const o=ge(U,e),r=null!=(s=ge(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&tt(ye(u,e,he),n,l),pe(o,n,r!=-l?r+l:null),tt(ye(ye(b,e,he),t,he),n,l)},kt=(e,t,n,l,s)=>ye(ye(ye(V,e,he),t,he),n,(()=>[l,0]))[1]=s,Mt=(e,t)=>tt(M,e,t),Dt=(e,t,n)=>ye(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,s)=>(F(ye(ye(ye(J,e,he),t,he),n,(()=>[])),l),s),At=(e,t,n)=>(F(ye(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(V,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,s)=>Ge(Oe[e],[n,l,s],t))))))),Qt=e=>ae(A)||ae(Qe[e])?0:ue(e?Te(A):A,((t,n)=>Ge(Qe[e],[n],t))),jt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>we(t))),1},zt=e=>{const t=ae(me[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const s=e?[Te(d),Ce(u),Ce(p),be(b),be(V)]:[d,u,p,b,V];if(!n){jt(_[e],s[0]),ue(s[1],((t,n)=>jt(re[e],t,[n])));const n=ke();ue(s[2],((l,s)=>{jt(de[e],l,[s])&&!t&&(Ge(me[e],[s,null]),Me(n,s))})),t||ue(s[4],((t,l)=>{if(!ie(n,l)){const n=ke();ue(t,(e=>ue(e,(([t,l],s)=>l!==t?Me(n,s):ve(e,s))))),ue(n,(t=>Ge(me[e],[l,t])))}})),ue(s[3],((t,n)=>ue(t,((t,l)=>jt(Je[e],t,[n,l])))))}if(!l){let t;ue(s[4],((n,l)=>{let s;ue(n,((n,o)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,o,a],i,n,Ot),t=s=r=1)})),r&&Ge(De[e],[l,o],Ot)})),s&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[Te(M),Te(D)]:[M,D];if(t||jt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],s)=>{l!==n&&(Ge(We[e],[s],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...k(t,T)))),gn),Bt=()=>[we(V,((e,t)=>-1===ge(d,t)?null:we(e,((e,n)=>-1===ge(ge(p,t),n)?null:we(e,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))),oe)),oe),we(D,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Re(V,Ze,_e),invalidCells:Re(J),changedValues:we(D,Ze,_e),invalidValues:we(A),changedTableIds:we(d),changedRowIds:Ie(p),changedCellIds:Re(b),changedValueIds:we(M)}),qt=()=>Re(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,T(e))),Kt=(e,t,n,l=0,s)=>{return k(O(x((o=ge(X,T(e)),r=(e,n)=>[q(t)?n:ge(e,T(t)),n],k([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>je(e,t)*(n?-1:1))),l,q(s)?s:l+s),(([,e])=>e));var o,r,i},Ut=(e,t)=>fe(ge(ge(X,T(e)),T(t))),Xt=(e,t,n)=>ge(ge(ge(X,T(e)),T(t)),T(n)),Yt=()=>we(Y),Zt=()=>fe(Y),_t=e=>ge(Y,T(e)),en=e=>Wt((()=>(e=>et(e,lt,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?St(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=et(t,(e=>et(e,Ue))))&&(ct(t),!ae(X))){const e=qt();on(),en(e)}})),sn=e=>Wt((()=>{if(t=(e=>et(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),on=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?Tt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>St({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=o){hn();const n=e();return fn(t),n}},hn=()=>(-1!=o&&o++,1==o&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(o>0&&(o--,0==o&&(n=!ae(V),l=!ae(D),o=1,Pt(1),n&&zt(1),Qt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(V,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>xe(gn,t,n,l,e))))))),ue(D,(([e],t)=>Ee(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),o=-1,Pt(0),n&&zt(0),Qt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),o=0,n=l=!1,E([d,u,p,b,V,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Ie(ge(X,T(e))),getTableCellIds:e=>fe(ge(U,T(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>we(ge(ge(X,T(e)),T(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,T(e)),hasTableCell:(e,t)=>ie(ge(U,T(e)),T(t)),hasRow:(e,t)=>ie(ge(X,T(e)),T(t)),hasCell:(e,t,n)=>ie(ge(ge(X,T(e)),T(t)),T(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,T(e)),getTablesJson:()=>j(X),getValuesJson:()=>j(Y),getJson:()=>j([X,Y]),getTablesSchemaJson:()=>j(P),getValuesSchemaJson:()=>j(N),getSchemaJson:()=>j([P,N]),setContent:([e,t])=>Wt((()=>{(oe(e)?on:en)(e),(oe(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>lt(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>st(e,t,n)?gt(e,Rt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return st(e,l,t)&&(e=T(e),gt(e,Rt(e),l=It(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(st(e,t,n,1)){const l=Rt(e);se(n,((n,s)=>pt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ot(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>pt(e,Rt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?se(e,((e,t)=>wt(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>wt(e,t)))),e),setTransactionChanges:e=>Wt((()=>{se(e[0],((e,t)=>q(e)?rn(t):se(e,((e,n)=>q(e)?an(t,n):se(e,((e,l)=>xe(gn,t,n,l,e))))))),se(e[1],((e,t)=>Ee(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{yt(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),yt(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:sn,setSchema:(e,t)=>Wt((()=>{ln(e),sn(t)})),delTables:on,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(s=>G(ge(s,t),(o=>ie(o,n)?bt(e,s,t,o,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?mt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,T(e)),t),forEachRow:(e,t)=>ue(ge(X,T(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,T(e)),T(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=Kt(e,t,n,l,s);return qe((()=>{const r=Kt(e,t,n,l,s);m(r,i)||(i=r,o(gn,e,t,n,l,s,i))}),me[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:nt};return se({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+S]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[S]:[2,Je,[Gt,Ht]],[y]:[3,Ae,[Gt,Ht,Ut],e=>Xe(Xt(...e))],InvalidCell:[3,Oe],[I]:[0,ze],[R]:[0,Ne],[w]:[1,We,[Zt],e=>Xe(_t(e[0]))],InvalidValue:[1,Qe]},(([e,t,n,l],s)=>{gn[c+s+a]=(...s)=>qe(s[e],t[s[e+1]?1:0],e>0?O(s,0,e):void 0,n,l)})),ee(gn)};exports.createCheckpoints=Qe,exports.createCustomPersister=(e,t,n,l,s)=>{let o,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},s={}){return h.stopAutoLoad(),yield h.load(n,s),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var s;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(s=null==n?void 0:n())?s:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(s(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();oe(n)&&oe(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(o,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=Q(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)},exports.createIndexes=ze,exports.createMetrics=Be,exports.createQueries=Ke,exports.createRelationships=Ue,exports.createStore=nt,exports.defaultSorter=je;
1
+ "use strict";const e=e=>typeof e,t="",n=e(t),l=e(!0),s=e(0),o=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,p="Sorted"+g+u,y="Cell",S=y+u,w="Value",I=w+"s",R=w+u,T=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),m=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),V=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),x=(e,t)=>e.sort(t),E=(e,t)=>e.forEach(t),k=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),Q=e=>e.shift(),j=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==o,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),se=(e,t)=>k(Y.entries(e),(([e,n])=>t(n,e))),oe=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),pe=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),ye=(e,t,n)=>(ie(e,t)||pe(e,t,n()),ge(e,t)),Se=(e,t,n,l=pe)=>(se(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),we=(e,t,n)=>{const l={};return ue(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Ie=(e,t,n)=>we(e,(e=>we(e,t,n)),oe),Re=(e,t,n)=>we(e,(e=>Ie(e,t,n)),oe),Te=(e,t)=>{const n=he();return ue(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},Ce=e=>Te(e,Te),be=e=>Te(e,Ce),me=(e,t,n,l,s=0)=>G((n?ye:ge)(e,t[s],s>D(t)-2?n:he),(o=>{if(s>D(t)-2)return(null==l?void 0:l(o))&&pe(e,t[s]),o;const r=me(o,t,n,l,s+1);return ae(o)&&pe(e,t[s]),r})),Ve=t=>{const n=e(t);return H(n)||n==s&&B(t)?n:void 0},xe=(e,t,n,l,s)=>q(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),Ee=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),ke=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,s=he(),o=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const s=ye(a,t,ke);return E(l,(t=>Me(s,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{E(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&pe(a,t)})),u=(e,n)=>{pe(s,e,n),ie(o,e)||(pe(o,e,t()),pe(r,e,he()),pe(i,e,he()))},v=e=>{pe(s,e),pe(o,e),pe(r,e),pe(i,e),c(e)};return[()=>e,()=>fe(s),e=>Le(o,e),e=>ie(o,e),e=>ge(s,e),e=>ge(o,e),(e,t)=>pe(o,e,t),u,(t,s,o,a,v)=>{u(t,s);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),p=t=>{const o=n=>e.getCell(s,t,n),r=ge(g,t),i=l(s,t)?n(a(o,t)):void 0;if(r===i||U(r)&&U(i)&&m(r,i)||pe(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(s,t)?v(o,t):void 0;e!=n&&pe(f,t,n)}},y=e=>{o((()=>{ue(h,(([,e],t)=>pe(g,t,e))),ue(f,((e,t)=>pe(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,p),e.hasTable(s)&&E(e.getRowIds(s),(e=>{ie(g,e)||p(e)})),y(!0),c(t),d(t,0,e.addRowListener(s,null,((e,t,n)=>p(n))),e.addTableListener(s,(()=>y())))},v,()=>Le(a,v),d,c]},Je=(l,s)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=s?s:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var s;return null!=(s=l?Q(e):null)?s:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,s]=Fe(),o=he();return[(s,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return pe(o,c,[s,r,i,a,d]),Me(me(r,null!=i?i:[t],ke),c),c},(e,l,...s)=>E(((e,n=[t])=>{const l=[],s=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>s(e,t+1))):E([n[t],null],(n=>s(ge(e,n),t+1)));return s(e,0),l})(e,l),(e=>ue(e,(e=>ge(o,e)[0](n,...null!=l?l:[],...s))))),e=>G(ge(o,e),(([,n,l])=>(me(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),pe(o,e),s(e),l))),e=>G(ge(o,e),(([e,,t=[],l,s])=>{const o=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...s(r)):q(t[d])?E(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,t[d])};o()}))]},Qe=Ae((e=>{let n,l,s,o=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],p=[],y=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=ge(f,n);ue(l,((n,l)=>ue(n,((n,s)=>ue(n,((n,o)=>xe(e,l,s,o,n[t]))))))),ue(s,((n,l)=>Ee(e,l,n[t])))})),a=1},S=e=>{pe(f,e),pe(g,e),v(c,[e])},w=(e,t)=>E(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),S),I=()=>w(L,D(L)-o),R=()=>G(n,(()=>{F(L,n),I(),w(p),n=void 0,s=1})),T=()=>{n=P(L),s=1},b=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){R();const e=ye(r,t,he),i=ye(e,n,he),a=ye(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&ae(pe(i,l))&&ae(pe(e,n))&&ae(pe(r,t))&&T(),M()}})),m=e.addValueListener(null,((e,t,n,l)=>{if(a){R();const e=ye(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(pe(i,t))&&T(),M()}})),V=(e="")=>(q(n)&&(n=t+l++,pe(f,n,[r,i]),O(n,e),r=he(),i=he(),s=1),n),x=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(p,V()),y(0,n),n=P(L),s=1)},k=()=>{J(p)||(F(L,n),n=Q(p),y(1,n),s=1)},M=()=>{s&&(v(d),s=0)},A=e=>{const t=V(e);return M(),t},O=(e,t)=>(j(e)&&ge(g,e)!==t&&(pe(g,e,t),v(c,[e])),z),j=e=>ie(f,e),z={setSize:e=>(o=e,I(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...p]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:j,getCheckpoint:e=>ge(g,e),goBackward:()=>(x(),M(),z),goForward:()=>(k(),M(),z),goTo:e=>{const t=C(L,e)?x:C(p,e)?k:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(w(L),w(p),q(n)||S(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return ee(z.clear())})),je=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[s,o,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?k(e,T):T(e))),[f,g,L]=Pe((()=>y)),p=(t,n,l)=>{const s=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},y={setIndexDefinition:(e,t,s,o,r,i=je)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,s,r,u,v,h)=>{let f=0;const L=ke(),p=ke(),y=d(e);if(ue(s,(([e,t],n)=>{const l=ke(e),s=ke(t);ue(l,(e=>ve(s,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(y,e),(t=>{ve(t,n),ae(t)&&(pe(y,e),f=1)}))})),ue(s,(e=>{Me(L,e),ie(y,e)||(pe(y,e,ke()),f=1),Me(ge(y,e),n),q(o)||Me(p,e)}))})),t(),ae(v)||(h?Le(y,(e=>Me(p,e))):Le(r,(e=>G(ge(u,e),(e=>Me(p,e))))),ue(p,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(y,e)];V(n,t)||(pe(y,e,ke(x(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...y];V(t,a)||(c(e,he(x(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(s),G(o,Je)),y},delIndexDefinition:e=>(v(e),y),getStore:s,getIndexIds:o,forEachIndex:e=>r(((t,n)=>e(t,(e=>p(t,e,n))))),forEachSlice:(e,t)=>p(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),y),destroy:h,getListenerStats:()=>({})};return ee(y)})),Ne=he([["avg",[(e,t)=>M(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=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,s,o=!1)=>{if(ae(n))return;const[r,i,a,d]=s;return o||(o=q(e)),ue(l,(([n,l])=>{o||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=q(e)))})),o?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,s,o,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,s,o,r,i)=>{var u;const v=K(l)?[l,o,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,s,o,r,i)=>{const c=a(e),u=re(o);i||(i=q(c)),t();let h=We(c,u,o,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(s,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:s,forEachMetric:o,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())})),qe=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable;const Ke=Ae((e=>{const n=e.createStore,[l,s,o,r,i,,,u,,h,f,w,I]=De(e,(()=>!0),X),R=n(),T=n(),C=he(),m=(e,t,...n)=>E(n,(n=>Me(ye(ye(C,t,he),e,ke),n))),V=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),E([T,R],(t=>t.delTable(e)))},x=(e,t,n)=>m(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),k={setQueryDefinition:(n,l,s)=>{u(n,l),V(n);const o=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];s({select:(e,n)=>{const l=K(e)?[D(o)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(o,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,s=q(l)?t:n,o=[e,[e,l,K(s)?s:e=>e(s),[],he()]];return F(r,o),{as:e=>o[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,K(t)?[t,n,l,s]:null!=(o=ge(Ne,t))?o:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(o);if(ae(c))return k;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=R;if(ae(h)&&J(d))f=T;else{x(n,f,T);const e=he();Le(h,((t,[n,l])=>Me(ye(e,n,ke),[t,l])));const t=ke();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),s=(t,l,s,o)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=ye(r,t,he),i=ge(l,s),a=o?void 0:n;if(i!==a){const n=ke([[i,a]]),o=re(l);pe(l,s,a),ue(ge(e,t),(([e,t])=>{const s=We(c[e],o,l,n,t);c[e]=q(Ve(s))?null:s}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?T.delRow(n,a):q(a)?t[2]=T.addRow(n,c):T.setRow(n,a,c)}));m(f,n,f.addRowListener(n,null,((o,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,s]=a(n,i,e);F(d,l),F(c,s),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&pe(u,e,[l])})),h&&s(me(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&s(me(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),ke(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}x(n,e,f);const g=(t,s,o,r)=>{const a=t=>e.getCell(s,o,t);E(r,(l=>{var s;const[o,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(s=ge(d,t))?s:[];c!=u&&(q(h)||I(n,h),pe(d,t,q(c)?null:[c,...w(n,1,e.addRowListener(o,c,(()=>g(t,o,c,i))))]))})),(t=>{const s=(n,s)=>{var o,r,i;return e.getCell(...q(s)?[l,t,n]:n===l?[l,t,s]:[null==(o=ge(v,n))?void 0:o[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],s])};f.transaction((()=>b(i,(e=>e(s)))?Le(c,((e,l)=>xe(f,n,t,e,l(s,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>w(n,1,e.addRowListener(l,null,((t,s,o)=>{e.hasRow(l,o)?g(o,l,o,L):(f.delRow(n,o),ue(v,(({4:e})=>G(ge(e,o),(([,t])=>{I(n,t),pe(e,o)})))))}))))),k},delQueryDefinition:e=>(V(e),h(e),k),getStore:l,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:i,delListener:e=>(T.delListener(e),k),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)Ge.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&qe)for(var l of qe(e))t.indexOf(l)<0&&He.call(e,l)&&(n[l]=e[l]);return n})(T.getListenerStats(),["tables","tableIds","transaction"])};return se({[v]:[1,1],[v+S]:[0,1],[L]:[0,1],[p]:[0,5],[g]:[1,2],[S]:[0,2],[y]:[1,3]},(([e,t],n)=>{E(e?["get","has","forEach"]:["get"],(e=>k[e+d+n]=(...t)=>T[e+n](...t))),k[c+d+n+a]=(...e)=>T[c+n+a](...O(e,0,t),((n,...l)=>e[t](k,...l)))})),ee(k)})),Ue=Ae((e=>{const n=he(),l=he(),s=he(),o=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,p]=Pe((()=>I)),y=(e,t,n)=>G(u(e),(([l,,s])=>{if(!ie(s,t)){const o=ke();if(c(e)!=w(e))Me(o,t);else{let e=t;for(;!q(e)&&!ie(o,e);)Me(o,e),e=ge(l,e)}if(n)return o;pe(s,t,o)}return ge(s,t)})),S=(e,t)=>G(u(e),(([,,e])=>pe(e,t))),w=e=>ge(n,e),I={setRelationshipDefinition:(e,t,r,i)=>(pe(n,e,r),v(e,t,((t,n)=>{const r=ke(),i=ke(),a=ke(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&pe(c,t)}))),q(n)||(Me(i,n),ie(c,n)||pe(c,n,ke()),Me(ge(c,n),l)),Me(r,l),pe(d,l,n),Le(ge(o,e),(t=>{ie(y(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(s,[e,t]))),ue(a,(t=>{S(e,t),L(o,[e,t])}))}),Je(i)),I),delRelationshipDefinition:e=>(pe(n,e),h(e),I),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:w,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(y(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(y(e,t),g(n,o,[e,t])),delListener:e=>(S(...p(e)),I),destroy:f,getListenerStats:()=>({})};return ee(I)})),Xe=e=>[e,e],Ye=()=>[he(),he()],Ze=e=>[...e],_e=([e,t])=>e===t,et=(e,t,n)=>q(e)||!te(e)||oe(e)||_(e)?(null==n||n(),!1):(se(e,((n,l)=>{t(n,l)||le(e,l)})),!oe(e)),tt=(e,t,n)=>pe(e,t,ge(e,t)==-n?void 0:n),nt=()=>{let e,t,n=!1,l=!1,o=0;const d=he(),u=he(),p=he(),b=he(),V=he(),M=he(),D=he(),J=he(),A=he(),P=he(),Q=he(),N=he(),W=he(),B=ke(),$=he(),U=he(),X=he(),Y=he(),Z=Ye(),_=Ye(),te=Ye(),re=Ye(),de=Ye(),me=Ye(),De=Ye(),Je=Ye(),Ae=Ye(),Oe=Ye(),Qe=Ye(),ze=Ye(),Ne=Ye(),We=Ye(),Be=he(),$e=Ye(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!et(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=s||(Ve(e[i])!=t&&le(e,i),0))},lt=(t,n)=>(!e||ie(P,n)||Jt(n))&&et(t,((e,t)=>st(n,t,e)),(()=>Jt(n))),st=(e,t,n,l)=>et(l?n:at(n,e,t),((l,s)=>G(ot(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,n,l,s)=>e?G(ge(ge(P,t),l),(e=>Ve(s)!=e[r]?Jt(t,n,l,s,e[i]):s),(()=>Jt(t,n,l,s))):q(Ve(s))?Jt(t,n,l,s):s,rt=(e,t)=>et(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>Ve(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(Ve(n))?At(e,n):n,at=(e,t,n)=>(G(ge(Q,t),(([l,s])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(s,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>Se(P,e,((e,t,n)=>{const l=he(),s=ke();Se(ye(P,t,he),n,((e,t,n)=>{pe(e,t,n),G(n[i],(e=>pe(l,t,e)),(()=>Me(s,t)))})),pe(Q,t,[l,s])}),((e,t)=>{pe(P,t),pe(Q,t)})),ut=e=>Se(N,e,((e,t,n)=>{pe(N,t,n),G(n[i],(e=>pe(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{pe(N,t),pe(W,t),ve(B,t)})),vt=e=>oe(e)?on():en(e),ht=e=>Se(X,e,((e,t,n)=>ft(t,n)),((e,t)=>Tt(t))),ft=(e,t)=>Se(ye(X,e,(()=>(Vt(e,1),pe($,e,Fe()),pe(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,s)=>Se(ye(t,n,(()=>(xt(e,n,1),he()))),l,((t,l,s)=>Lt(e,n,t,l,s)),((l,o)=>bt(e,t,n,l,o,s))),Lt=(e,t,n,l,s)=>{ie(n,l)||Et(e,t,l,1);const o=ge(n,l);s!==o&&(kt(e,t,l,o,s),pe(n,l,s))},pt=(e,t,n,l,s)=>G(ge(t,n),(t=>Lt(e,n,t,l,s)),(()=>gt(e,t,n,at({[l]:s},e,n)))),yt=e=>oe(e)?dn():tn(e),St=e=>Se(Y,e,((e,t,n)=>wt(t,n)),((e,t)=>mt(t))),wt=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),pe(Y,e,t))},It=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?It(e,t):l},Rt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},Tt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,s,o)=>{var r;const i=ge(null==(r=ge(Q,e))?void 0:r[0],s);if(!q(i)&&!o)return Lt(e,n,l,s,i);const a=t=>{kt(e,n,t,ge(l,t)),Et(e,n,t,-1),pe(l,t)};q(i)?a(s):Le(l,a),ae(l)&&(xt(e,n,-1),ae(pe(t,n))&&(Vt(e,-1),pe(X,e),pe($,e),pe(U,e)))},mt=e=>{const t=ge(W,e);if(!q(t))return wt(e,t);Dt(e,ge(Y,e)),Mt(e,-1),pe(Y,e)},Vt=(e,t)=>tt(d,e,t),xt=(e,t,n)=>tt(ye(p,e,he),t,n),Et=(e,t,n,l)=>{var s;const o=ge(U,e),r=null!=(s=ge(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&tt(ye(u,e,he),n,l),pe(o,n,r!=-l?r+l:null),tt(ye(ye(b,e,he),t,he),n,l)},kt=(e,t,n,l,s)=>ye(ye(ye(V,e,he),t,he),n,(()=>[l,0]))[1]=s,Mt=(e,t)=>tt(M,e,t),Dt=(e,t,n)=>ye(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,s)=>(F(ye(ye(ye(J,e,he),t,he),n,(()=>[])),l),s),At=(e,t,n)=>(F(ye(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(V,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,s)=>Ge(Oe[e],[n,l,s],t))))))),Qt=e=>ae(A)||ae(Qe[e])?0:ue(e?Te(A):A,((t,n)=>Ge(Qe[e],[n],t))),jt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>we(t))),1},zt=e=>{const t=ae(me[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const s=e?[Te(d),Ce(u),Ce(p),be(b),be(V)]:[d,u,p,b,V];if(!n){jt(_[e],s[0]),ue(s[1],((t,n)=>jt(re[e],t,[n])));const n=ke();ue(s[2],((l,s)=>{jt(de[e],l,[s])&&!t&&(Ge(me[e],[s,null]),Me(n,s))})),t||ue(s[4],((t,l)=>{if(!ie(n,l)){const n=ke();ue(t,(e=>ue(e,(([t,l],s)=>l!==t?Me(n,s):ve(e,s))))),ue(n,(t=>Ge(me[e],[l,t])))}})),ue(s[3],((t,n)=>ue(t,((t,l)=>jt(Je[e],t,[n,l])))))}if(!l){let t;ue(s[4],((n,l)=>{let s;ue(n,((n,o)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,o,a],i,n,Ot),t=s=r=1)})),r&&Ge(De[e],[l,o],Ot)})),s&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[Te(M),Te(D)]:[M,D];if(t||jt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],s)=>{l!==n&&(Ge(We[e],[s],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...k(t,T)))),gn),Bt=()=>[we(V,((e,t)=>-1===ge(d,t)?null:we(e,((e,n)=>-1===ge(ge(p,t),n)?null:we(e,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))),oe)),oe),we(D,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Re(V,Ze,_e),invalidCells:Re(J),changedValues:we(D,Ze,_e),invalidValues:we(A),changedTableIds:we(d),changedRowIds:Ie(p),changedCellIds:Re(b),changedValueIds:we(M)}),qt=()=>Re(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,T(e))),Kt=(e,t,n,l=0,s)=>{return k(O(x((o=ge(X,T(e)),r=(e,n)=>[q(t)?n:ge(e,T(t)),n],k([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>je(e,t)*(n?-1:1))),l,q(s)?s:l+s),(([,e])=>e));var o,r,i},Ut=(e,t)=>fe(ge(ge(X,T(e)),T(t))),Xt=(e,t,n)=>ge(ge(ge(X,T(e)),T(t)),T(n)),Yt=()=>we(Y),Zt=()=>fe(Y),_t=e=>ge(Y,T(e)),en=e=>Wt((()=>(e=>et(e,lt,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?St(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=et(t,(e=>et(e,Ue))))&&(ct(t),!ae(X))){const e=qt();on(),en(e)}})),sn=e=>Wt((()=>{if(t=(e=>et(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),on=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?Tt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>St({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=o){hn();const n=e();return fn(t),n}},hn=()=>(-1!=o&&o++,1==o&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(o>0&&(o--,0==o&&(n=!ae(V),l=!ae(D),o=1,Pt(1),n&&zt(1),Qt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(V,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>xe(gn,t,n,l,e))))))),ue(D,(([e],t)=>Ee(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),o=-1,Pt(0),n&&zt(0),Qt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),o=0,n=l=!1,E([d,u,p,b,V,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Ie(ge(X,T(e))),getTableCellIds:e=>fe(ge(U,T(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>we(ge(ge(X,T(e)),T(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,T(e)),hasTableCell:(e,t)=>ie(ge(U,T(e)),T(t)),hasRow:(e,t)=>ie(ge(X,T(e)),T(t)),hasCell:(e,t,n)=>ie(ge(ge(X,T(e)),T(t)),T(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,T(e)),getTablesJson:()=>j(X),getValuesJson:()=>j(Y),getJson:()=>j([X,Y]),getTablesSchemaJson:()=>j(P),getValuesSchemaJson:()=>j(N),getSchemaJson:()=>j([P,N]),setContent:([e,t])=>Wt((()=>{(oe(e)?on:en)(e),(oe(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>lt(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>st(e,t,n)?gt(e,Rt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return st(e,l,t)&&(e=T(e),gt(e,Rt(e),l=It(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(st(e,t,n,1)){const l=Rt(e);se(n,((n,s)=>pt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ot(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>pt(e,Rt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?se(e,((e,t)=>wt(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>wt(e,t)))),e),setTransactionChanges:e=>Wt((()=>{se(e[0],((e,t)=>q(e)?rn(t):se(e,((e,n)=>q(e)?an(t,n):se(e,((e,l)=>xe(gn,t,n,l,e))))))),se(e[1],((e,t)=>Ee(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{yt(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),yt(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:sn,setSchema:(e,t)=>Wt((()=>{ln(e),sn(t)})),delTables:on,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(s=>G(ge(s,t),(o=>ie(o,n)?bt(e,s,t,o,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?mt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,T(e)),t),forEachRow:(e,t)=>ue(ge(X,T(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,T(e)),T(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=Kt(e,t,n,l,s);return qe((()=>{const r=Kt(e,t,n,l,s);m(r,i)||(i=r,o(gn,e,t,n,l,s,i))}),me[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:nt};return se({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+S]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[S]:[2,Je,[Gt,Ht]],[y]:[3,Ae,[Gt,Ht,Ut],e=>Xe(Xt(...e))],InvalidCell:[3,Oe],[I]:[0,ze],[R]:[0,Ne],[w]:[1,We,[Zt],e=>Xe(_t(e[0]))],InvalidValue:[1,Qe]},(([e,t,n,l],s)=>{gn[c+s+a]=(...s)=>qe(s[e],t[s[e+1]?1:0],e>0?O(s,0,e):void 0,n,l)})),ee(gn)};exports.createCheckpoints=Qe,exports.createCustomPersister=(e,t,n,l,s)=>{let o,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},s={}){return h.stopAutoLoad(),yield h.load(n,s),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var s;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(s=null==n?void 0:n())?s:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(s(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();oe(n)&&oe(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(o,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=Q(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)},exports.createIndexes=ze,exports.createMetrics=Be,exports.createQueries=Ke,exports.createRelationships=Ue,exports.createStore=nt,exports.defaultSorter=je;
Binary file