tinybase 9.1.0-beta.1 → 9.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/@types/_internal/store/with-schemas/index.d.ts +133 -2
  2. package/@types/indexes/index.d.ts +97 -0
  3. package/@types/indexes/with-schemas/index.d.ts +137 -0
  4. package/@types/store/index.d.ts +96 -18
  5. package/@types/store/with-schemas/index.d.ts +107 -44
  6. package/@types/ui-react/index.d.ts +42 -0
  7. package/@types/ui-react/with-schemas/index.d.ts +101 -32
  8. package/@types/ui-react-dom/index.d.ts +10 -10
  9. package/@types/ui-react-dom/with-schemas/index.d.ts +10 -10
  10. package/@types/ui-react-dom-charts/index.d.ts +7 -7
  11. package/@types/ui-react-dom-charts/with-schemas/index.d.ts +7 -7
  12. package/@types/ui-react-inspector/index.d.ts +1 -1
  13. package/@types/ui-react-inspector/with-schemas/index.d.ts +1 -1
  14. package/@types/ui-solid/index.d.ts +42 -0
  15. package/@types/ui-solid/with-schemas/index.d.ts +101 -32
  16. package/@types/ui-solid-dom/index.d.ts +10 -10
  17. package/@types/ui-solid-dom/with-schemas/index.d.ts +10 -10
  18. package/@types/ui-solid-inspector/index.d.ts +1 -1
  19. package/@types/ui-solid-inspector/with-schemas/index.d.ts +1 -1
  20. package/@types/ui-svelte/index.d.ts +34 -0
  21. package/@types/ui-svelte/with-schemas/index.d.ts +34 -0
  22. package/@types/ui-svelte-dom/index.d.ts +10 -10
  23. package/@types/ui-svelte-dom/with-schemas/index.d.ts +10 -10
  24. package/@types/ui-svelte-inspector/index.d.ts +1 -1
  25. package/@types/ui-svelte-inspector/with-schemas/index.d.ts +1 -1
  26. package/index.js +121 -32
  27. package/indexes/index.js +39 -0
  28. package/indexes/with-schemas/index.js +39 -0
  29. package/mergeable-store/index.js +82 -32
  30. package/mergeable-store/with-schemas/index.js +82 -32
  31. package/min/index.js +1 -1
  32. package/min/index.js.gz +0 -0
  33. package/min/indexes/index.js +1 -1
  34. package/min/indexes/index.js.gz +0 -0
  35. package/min/indexes/with-schemas/index.js +1 -1
  36. package/min/indexes/with-schemas/index.js.gz +0 -0
  37. package/min/mergeable-store/index.js +1 -1
  38. package/min/mergeable-store/index.js.gz +0 -0
  39. package/min/mergeable-store/with-schemas/index.js +1 -1
  40. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  41. package/min/omni/index.js +1 -1
  42. package/min/omni/index.js.gz +0 -0
  43. package/min/omni/with-schemas/index.js +1 -1
  44. package/min/omni/with-schemas/index.js.gz +0 -0
  45. package/min/store/index.js +1 -1
  46. package/min/store/index.js.gz +0 -0
  47. package/min/store/with-schemas/index.js +1 -1
  48. package/min/store/with-schemas/index.js.gz +0 -0
  49. package/min/ui-react/index.js +1 -1
  50. package/min/ui-react/index.js.gz +0 -0
  51. package/min/ui-react/with-schemas/index.js +1 -1
  52. package/min/ui-react/with-schemas/index.js.gz +0 -0
  53. package/min/ui-react-inspector/index.js +1 -1
  54. package/min/ui-react-inspector/index.js.gz +0 -0
  55. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  56. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  57. package/min/ui-solid/index.js +1 -1
  58. package/min/ui-solid/index.js.gz +0 -0
  59. package/min/ui-solid/with-schemas/index.js +1 -1
  60. package/min/ui-solid/with-schemas/index.js.gz +0 -0
  61. package/min/ui-solid-inspector/index.js +1 -1
  62. package/min/ui-solid-inspector/index.js.gz +0 -0
  63. package/min/ui-solid-inspector/with-schemas/index.js +1 -1
  64. package/min/ui-solid-inspector/with-schemas/index.js.gz +0 -0
  65. package/min/ui-svelte/index.js +1 -1
  66. package/min/ui-svelte/index.js.gz +0 -0
  67. package/min/ui-svelte/with-schemas/index.js +1 -1
  68. package/min/ui-svelte/with-schemas/index.js.gz +0 -0
  69. package/min/ui-svelte-inspector/index.js +1 -1
  70. package/min/ui-svelte-inspector/index.js.gz +0 -0
  71. package/min/ui-svelte-inspector/with-schemas/index.js +1 -1
  72. package/min/ui-svelte-inspector/with-schemas/index.js.gz +0 -0
  73. package/min/with-schemas/index.js +1 -1
  74. package/min/with-schemas/index.js.gz +0 -0
  75. package/omni/index.js +121 -32
  76. package/omni/with-schemas/index.js +121 -32
  77. package/package.json +5 -5
  78. package/readme.md +14 -14
  79. package/releases.md +101 -60
  80. package/store/index.js +82 -32
  81. package/store/with-schemas/index.js +82 -32
  82. package/ui-react/index.js +16 -0
  83. package/ui-react/with-schemas/index.js +16 -0
  84. package/ui-react-inspector/index.js +82 -32
  85. package/ui-react-inspector/with-schemas/index.js +82 -32
  86. package/ui-solid/index.js +16 -0
  87. package/ui-solid/with-schemas/index.js +16 -0
  88. package/ui-solid-inspector/index.js +82 -32
  89. package/ui-solid-inspector/with-schemas/index.js +82 -32
  90. package/ui-svelte/index.js +18 -0
  91. package/ui-svelte/with-schemas/index.js +18 -0
  92. package/ui-svelte-inspector/index.js +82 -32
  93. package/ui-svelte-inspector/with-schemas/index.js +82 -32
  94. package/with-schemas/index.js +121 -32
@@ -1 +1 @@
1
- const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="object",r="array",c="type",i="default",d="allowNull",u="Listener",g="Has",h="Ids",b="Table",f=b+"s",C=b+h,T="Row",v=T+"Count",w=T+h,V="Cell",p=V+h,I="Value",y=I+"s",R=I+h,m=e=>t+e,M=(e,t)=>e.startsWith(t),S=(e,t)=>e.endsWith(t),H=(e,s=t,n)=>e.split(s,n),J=Math,E=e=>(t,s,n)=>e(t)?n?.():s(t),L=globalThis,D=J.max,O=J.floor,F=J.random,_=isFinite,j=e=>null==e,x=e=>void 0===e,z=e=>null===e,A=E(j),N=E(x),P=e=>e==s||e==n,W=t=>e(t)==s,k=t=>e(t)==l,U=e=>Array.isArray(e),q=(e,t,s)=>e.slice(t,s),B=e=>e.length,G=()=>{},K=L.structuredClone,Q=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},X=(e,t)=>e.every(t),Y=(e,t)=>e.forEach(t),Z=(e,t)=>e.map(t),$=(e,t,s)=>e.reduce(t,s),ee=(e,...t)=>e.push(...t),te=Object,se=e=>te.getPrototypeOf(e),ne=te.isFrozen,ae=te.entries,le=e=>!j(e)&&A(se(e),e=>e==te.prototype||j(se(e)),()=>!0),oe=te.keys,re=te.freeze,ce=(e=[])=>te.fromEntries(e),ie=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>Y(ae(e),([e,s])=>t(s,e)),ge=(e,t)=>ce(((e,t)=>Z(ae(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),he=e=>B(oe(e)),be=e=>le(e)&&0==he(e),fe=(e,t,s=(e,t)=>e===t)=>{const n=ae(e);return B(n)===he(t)&&X(n,([e,n])=>le(n)?!!le(t[e])&&fe(t[e],n,s):s(n,t[e]))},Ce=(e,t,s)=>(ie(e,t)||(e[t]=s()),e[t]),Te=(e,t,s,n=0)=>j(e)||!le(e)||!n&&be(e)||ne(e)?(s?.(),!1):(ue(e,(s,n)=>{t(s,n)||de(e,n)}),!!n||!be(e)),ve=JSON.stringify,we=JSON.parse,Ve=e=>ve(e,(e,t)=>t instanceof Map?te.fromEntries([...t]):t),pe=t=>{if(z(t))return"null";if(U(t))return r;if(le(t))return o;const s=e(t);return P(s)||s==a&&_(t)?s:void 0},Ie=e=>x(e)||!x(pe(e)),ye=e=>e==o||e==r,Re=e=>le(e)||U(e)?"�"+ve(e):e,me=e=>W(e)&&"�"==e[0],Me=(e,t,s)=>!s&&me(e)?we(q(e,1)):e,Se=e=>t=>$(Fe(t),(t,s)=>t+e(s),0),He=e=>e?.size??0,Je=Se(He),Ee=Se(Je),Le=Se(Ee),De=(e,t)=>e?.has(t)??!1,Oe=e=>x(e)||0==He(e),Fe=e=>[...e?.values()??[]],_e=e=>e.clear(),je=(e,t)=>e?.forEach(t),xe=(e,t)=>e?.delete(t),ze=new L.TextEncoder,Ae=e=>{let t=2166136261;return Y(ze.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},Ne=(e,t)=>(e^t)>>>0,Pe=(e,t)=>Ae(e+":"+t),We=Map,ke=e=>new We(e),Ue=e=>[...e?.keys()??[]],qe=(e,t)=>e?.get(t),Be=(e,t)=>je(e,(e,s)=>t(s,e)),Ge=(e,t,s)=>x(s)?(xe(e,t),e):e?.set(t,s),Ke=(e,t,s,n)=>(De(e,t)?n?.(qe(e,t)):Ge(e,t,s()),qe(e,t)),Qe=(e,t,s,n=Ge)=>(ge(t,(t,n)=>s(e,n,t)),Be(e,s=>ie(t,s)?0:n(e,s)),e),Xe=(e,t,s,n)=>{const a={};return je(e,(e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;n?.(s)||(a[l]=s)}}),a},Ye=(e,t,s)=>Xe(e,e=>Xe(e,t,s),Oe,be),Ze=(e,t,s)=>Xe(e,e=>Ye(e,t,s),Oe,be),$e=(e,t)=>{const s=ke();return je(e,(e,n)=>s.set(n,t?.(e)??e)),s},et=e=>$e(e,$e),tt=e=>$e(e,et),st=(e,t,s,n,a=0)=>N((s?Ke:qe)(e,t[a],a>B(t)-2?s:ke),l=>{if(a>B(t)-2)return n?.(l)&&Ge(e,t[a]),l;const o=st(l,t,s,n,a+1);return Oe(l)&&Ge(e,t[a]),o}),nt=H("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),at=ke(Z(nt,(e,t)=>[e,t])),lt=e=>nt[63&e],ot=(e,t)=>qe(at,e[t])??0,rt=L.crypto?e=>L.crypto.getRandomValues(e):e=>Z(e,()=>O(256*F())),ct=2**36,it=2**30,dt=2**24,ut=2**18,gt=4096,ht=e=>{const t=Ae(e);return lt(t/dt)+lt(t/ut)+lt(t/gt)+lt(t/64)+lt(t)},bt=e=>new Set(U(e)||x(e)?e:[e]),ft=(e,t)=>e?.add(t),Ct=([e,t])=>Tt(e,t),Tt=(e,t)=>t?[e,t]:[e],vt=(e,t,s)=>[e,t,s],wt=e=>e[2],Vt=(e,t)=>t>e?(e?Ae(e):0)^Ae(t):0,pt=(e,s)=>((e??t)>(s??t)?e:s)??t,It=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},yt=(e=t)=>Tt(ce(),e),Rt=(e=t)=>[ke(),e,0],mt=([e,t,s],n)=>[Xe(e,n),t,s],Mt=([e,t],s=Ct)=>Tt(Xe(e,s),t),St=(t,s)=>{return U(t)&&3==B(t)&&W(t[1])&&(n=t[2],e(n)==a)&&_(t[2])&&s(t[0]);var n},Ht=(e,t)=>(e??0)<(t??0)?-1:1,Jt=/^\d+$/,Et=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{Jt.test(t)&&B(e)<1e3&&ee(e,t)}]},Lt=e=>[e,e],Dt=(e,t=Je)=>t(e[0])+t(e[1]),Ot=()=>[ke(),ke()],Ft=e=>[...e],_t=([e,t])=>e===t,jt=(e,t,s)=>Ge(e,t,qe(e,t)==-s?void 0:s),xt=([e,t],[s,n])=>fe(e,s)&&fe(t,n),zt=()=>{let e,s,n=!1,l=!1,o=0,r=[],h=[],M=0;const S=ke(),H=ke(),J=ke(),E=ke(),L=ke(),D=ke(),O=ke(),F=ke(),_=ke(),j=bt(),A=ke(),W=ke(),G=ke(),$=ke(),te=ke(),se=ke(),ne=bt(),ae=ke(),oe=ke(),ce=ke(),ue=ke(),he=Ot(),Ce=Ot(),ve=Ot(),Ie=Ot(),Se=Ot(),Fe=Ot(),ze=Ot(),Ae=Ot(),Ne=Ot(),Pe=Ot(),We=Ot(),nt=Ot(),at=Ot(),lt=Ot(),ot=Ot(),rt=Ot(),ct=Ot(),it=Ot(),dt=Ot(),ut=Ot(),gt=Ot(),ht=Ot(),Ct=ke(),Tt=Ot(),[vt,wt,Vt,pt]=(()=>{let e;const[s,n]=Et(),a=ke();return[(n,l,o,r=[],c=()=>[])=>{e??=rn;const i=s(1);return Ge(a,i,[n,l,o,r,c]),ft(st(l,o??[t],bt),i),i},(s,n,...l)=>Y(((e,s=[t])=>{const n=[],a=(e,t)=>t==B(s)?ee(n,e):z(s[t])?je(e,e=>a(e,t+1)):Y([s[t],null],s=>a(qe(e,s),t+1));return a(e,0),n})(s,n),t=>je(t,t=>qe(a,t)[0](e,...n??[],...l))),e=>N(qe(a,e),([,s,l])=>(st(s,l??[t],void 0,t=>(xe(t,e),Oe(t)?1:0)),Ge(a,e),n(e),l)),t=>N(qe(a,t),([t,,s=[],n,a])=>{const l=(...o)=>{const r=B(o);r==B(s)?t(e,...o,...a(o)):z(s[r])?Y(n[r]?.(...o)??[],e=>l(...o,e)):l(...o,s[r])};l()})]})(),It=e=>{const t=M;M=1;const s=e();return M=t,s},yt=(e,t,s,n=Object.is)=>N(t(),t=>e===t||n(e,t)?s(t):It(()=>s(t))),Rt=e=>{if(!Te(e,(e,t)=>[c,i,d].includes(t)))return!1;const t=e[c];if(!P(t)&&t!=a&&!ye(t))return!1;const s=e[i];return!(z(s)&&!e[d]||(z(s)||(pe(s)!=t?de(e,i):e[i]=Re(s)),0))},mt=U,Mt=(t,s)=>(!e||De(G,s)||hs(s))&&Te(t,(e,t)=>St(s,t,e),()=>hs(s)),St=(e,t,s,n)=>Te(n?s:Pt(s,e,t),(n,a)=>N(Jt(e,t,a,n),e=>(s[a]=e,!0),()=>!1),()=>hs(e,t)),Jt=(t,s,n,a)=>e?N(qe(qe(G,t),n),e=>z(a)?e[d]?a:hs(t,s,n,a,e[i]):pe(a)===e[c]?Re(a):ye(e[c])&&me(a)?a:hs(t,s,n,a,e[i]),()=>hs(t,s,n,a)):x(pe(a))?hs(t,s,n,a):Re(a),At=(e,t)=>Te(t?e:Wt(e),(t,s)=>N(Nt(s,t),t=>(e[s]=t,!0),()=>!1),()=>bs()),Nt=(e,t)=>s?N(qe(te,e),s=>z(t)?s[d]?t:bs(e,t,s[i]):pe(t)===s[c]?Re(t):ye(s[c])&&me(t)?t:bs(e,t,s[i]),()=>bs(e,t)):x(pe(t))?bs(e,t):Re(t),Pt=(e,t,s)=>(N(qe($,t),([n,a])=>{je(n,(n,a)=>{ie(e,a)||(e[a]=n,N(s,e=>ft(Ke(Ke(O,t,ke),e,bt),a)))}),je(a,n=>{ie(e,n)||hs(t,s,n)})}),e),Wt=e=>(s&&(je(se,(t,s)=>{ie(e,s)||(e[s]=t,ft(j,s))}),je(ne,t=>{ie(e,t)||bs(t)})),e),kt=e=>Qe(G,e,(e,t,s)=>{const n=ke(),a=bt();Qe(Ke(G,t,ke),s,(e,t,s)=>{Ge(e,t,s),N(s[i],e=>Ge(n,t,e),()=>ft(a,t))}),Ge($,t,[n,a])},(e,t)=>{Ge(G,t),Ge($,t)}),Ut=e=>Qe(te,e,(e,t,s)=>{Ge(te,t,s),N(s[i],e=>Ge(se,t,e),()=>ft(ne,t))},(e,t)=>{Ge(te,t),Ge(se,t),xe(ne,t)}),qt=e=>be(e)?Xs():ks(e),Bt=(e,t,s,n,a,l)=>x(n)?$s(e,t,s,!0,a):Us(e,t,s,n,a,l),Gt=e=>be(e)?en():qs(e),Kt=(e,t,s)=>x(t)?tn(e,s):Bs(e,t,s),Qt=(e,t)=>yt(e,()=>t?e:N(r[1],t=>It(()=>t(K(e))),()=>e),e=>Qe(ce,e,(e,t,s)=>Xt(t,s),(e,t)=>ns(t)),fe),Xt=(e,t,s)=>yt(t,()=>s?t:N(r[2],s=>It(()=>s(e,K(t))),()=>t),t=>Qe(Ke(ce,e,()=>(rs(e,1),Ge(ae,e,Et()),Ge(oe,e,ke()),ke())),t,(t,s,n)=>Yt(e,t,s,n),(t,s)=>as(e,t,s)),fe),Yt=(e,t,s,n,a)=>yt(n,()=>a?n:N(r[3],t=>It(()=>t(e,s,K(n))),()=>n),n=>Qe(Ke(t,s,()=>(cs(e,s,1),ke())),n,(t,n,a)=>Zt(e,s,t,n,a),(n,l)=>ls(e,t,s,n,l,a)),fe),Zt=(e,t,s,n,a,l)=>yt(a,()=>N(l?void 0:r[4],s=>It(()=>s(e,t,n,a)),()=>a),a=>{De(s,n)||is(e,t,n,1);const l=qe(s,n);a!==l&&(ds(e,t,n,l,a),Ge(s,n,a))}),$t=(e,t,s,n,a,l)=>N(qe(t,s),t=>Zt(e,s,t,n,a,l),()=>{const o=ke();Ge(t,s,o),cs(e,s,1),ge(Pt({[n]:a},e,s),(t,n)=>Zt(e,s,o,n,t,l))}),es=(e,t)=>yt(e,()=>t?e:N(r[5],t=>It(()=>t(K(e))),()=>e),e=>Qe(ue,e,(e,t,s)=>ts(t,s),(e,t)=>os(t)),fe),ts=(e,t,s)=>yt(t,()=>N(s?void 0:r[6],s=>It(()=>s(e,t)),()=>t),t=>{De(ue,e)||us(e,1);const s=qe(ue,e);t!==s&&(gs(e,s,t),Ge(ue,e,t))}),ss=e=>Ke(ce,e,()=>(rs(e,1),Ge(ae,e,Et()),Ge(oe,e,ke()),ke())),ns=e=>It(()=>r[8]?.(e))??1?Xt(e,{},!0):qe(ce,e),as=(e,t,s)=>{if(It(()=>r[9]?.(e,s))??1){const[,n]=qe(ae,e);n(s),Yt(e,t,s,{},!0)}},ls=(e,t,s,n,a,l,o)=>{const c=qe(qe($,e)?.[0],a);if(!x(c)&&!l)return Zt(e,s,n,a,c);if(o||(It(()=>r[10]?.(e,s,a))??1)){const l=t=>{ds(e,s,t,qe(n,t)),is(e,s,t,-1),Ge(n,t)};x(c)?l(a):Be(n,l),Oe(n)&&(cs(e,s,-1),Oe(Ge(t,s))&&(rs(e,-1),Ge(ce,e),Ge(ae,e),Ge(oe,e)))}},os=(e,t)=>{const s=qe(se,e);if(!x(s))return ts(e,s);(t||(It(()=>r[12]?.(e))??1))&&(gs(e,qe(ue,e)),us(e,-1),Ge(ue,e))},rs=(e,t)=>jt(S,e,t),cs=(e,t,s)=>jt(Ke(E,e,ke),t,s)&&Ge(J,e,Ke(J,e,()=>0)+s),is=(e,t,s,n)=>{const a=qe(oe,e),l=qe(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&jt(Ke(H,e,ke),s,n),Ge(a,s,l!=-n?l+n:void 0),jt(Ke(Ke(L,e,ke),t,ke),s,n)},ds=(e,t,s,n,a)=>{const l=De(qe(qe(O,e),t),s)&&x(n)?1:0;Ke(Ke(Ke(D,e,ke),t,ke),s,()=>[n,0])[1]=a,h[3]?.(e,t,s,a,M,l),xe(qe(qe(O,e),t),s)},us=(e,t)=>jt(F,e,t),gs=(e,t,s)=>{const n=De(j,e)&&x(t)?1:0;Ke(_,e,()=>[t,0])[1]=s,h[4]?.(e,s,M,n),xe(j,e)},hs=(e,t,s,n,a)=>(ee(Ke(Ke(Ke(A,e,ke),t,ke),s,()=>[]),n),a),bs=(e,t,s)=>(ee(Ke(W,e,()=>[]),t),s),fs=(e,t,s)=>N(qe(qe(qe(D,e),t),s),([e,t])=>[!0,Me(e),Me(t)],()=>[!1,...Lt(Ds(e,t,s))]),Cs=e=>N(qe(_,e),([e,t])=>[!0,Me(e),Me(t)],()=>[!1,...Lt(_s(e))]),Ts=e=>Oe(A)||Oe(rt[e])?0:je(e?tt(A):A,(t,s)=>je(t,(t,n)=>je(t,(t,a)=>wt(rt[e],[s,n,a],t)))),vs=e=>Oe(W)||Oe(ct[e])?0:je(e?$e(W):W,(t,s)=>wt(ct[e],[s],t)),ws=(e,t,s,n)=>{if(!Oe(e))return wt(t,n,()=>Xe(e)),Be(e,(e,t)=>wt(s,[...n??[],e],1==t)),1},Vs=e=>{const t=!Oe(he[e]),s=!Oe(Pe[e]),a=!(Oe(at[e])&&Oe(lt[e])&&Oe(Ne[e])&&Oe(We[e])&&Oe(Fe[e])&&Oe(ze[e])&&Oe(Ae[e])&&!s&&Oe(ve[e])&&Oe(Ie[e])),l=!(Oe(ot[e])&&Oe(nt[e])&&Oe(Se[e])&&Oe(Ce[e]));if(t||a||l){const r=e?[$e(S),et(H),$e(J),et(E),tt(L),(o=D,$e(o,e=>$e(e,e=>$e(e,Ft))))]:[S,H,J,E,L,D];if(t){const t=js();t!=n&&wt(he[e],void 0,t)}if(a){ws(r[0],ve[e],Ie[e]),je(r[1],(t,s)=>ws(t,Fe[e],ze[e],[s])),je(r[2],(t,s)=>{0!=t&&wt(Ae[e],[s],Hs(s))});const t=bt();je(r[3],(n,a)=>{ws(n,Ne[e],We[e],[a])&&s&&(wt(Pe[e],[a,null]),ft(t,a))}),s&&je(r[5],(s,n)=>{if(!De(t,n)){const t=bt();je(s,e=>je(e,([s,n],a)=>n!==s?ft(t,a):xe(e,a))),je(t,t=>wt(Pe[e],[n,t]))}}),je(r[4],(t,s)=>je(t,(t,n)=>ws(t,at[e],lt[e],[s,n])))}if(l){let t;je(r[5],(s,n)=>{let a;je(s,(s,l)=>{let o;je(s,([s,r],c)=>{r!==s&&(wt(ot[e],[n,l,c],Me(r),Me(s),fs),t=a=o=1)}),o&&wt(nt[e],[n,l],fs)}),a&&wt(Se[e],[n],fs)}),t&&wt(Ce[e],void 0,fs)}}var o},ps=e=>{const t=!Oe(it[e]),s=!Oe(ut[e])||!Oe(gt[e]),n=!Oe(ht[e])||!Oe(dt[e]);if(t||s||n){const a=e?[$e(F),$e(_,Ft)]:[F,_];if(t){const t=Ps();t!=l&&wt(it[e],void 0,t)}if(s&&ws(a[0],ut[e],gt[e]),n){let t;je(a[1],([s,n],a)=>{n!==s&&(wt(ht[e],[a],Me(n),Me(s),Cs),t=1)}),t&&wt(dt[e],void 0,Cs)}}},Is=(e,...t)=>(an(()=>e(...Z(t,m))),rn),ys=(e,t,s,n,a)=>{const[l,o,r,c]=s;let i=Es(e,t,l,o,r,c);return vt(()=>{const s=Es(e,t,l,o,r,c);var a,d;d=i,B(a=s)===B(d)&&X(a,(e,t)=>d[t]===e)||(i=s,n(rn,e,t,l,o,r,i))},Pe[a?1:0],[e,t],[Ms])},Rs=(e=!1)=>[Xe(D,(t,s)=>-1===qe(S,s)?void 0:Xe(t,(t,n)=>-1===qe(qe(E,s),n)?void 0:Xe(t,([,t])=>Me(t,0,e),e=>_t(e)),Oe,be),Oe,be),Xe(_,([,t])=>Me(t,0,e),e=>_t(e)),1],ms=()=>Ze(ce,Me),Ms=()=>Ue(ce),Ss=e=>Ue(qe(oe,m(e))),Hs=e=>He(qe(ce,m(e))),Js=e=>Ue(qe(ce,m(e))),Es=(e,t,s,n=0,a,l=Ht)=>{return le(e)?Es(e.tableId,e.cellId,e.descending,e.offset,e.limit,e.sorter):Z(q(((e,t)=>e.sort(t))((o=qe(ce,m(e)),r=(e,s)=>[x(t)?s:Me(qe(e,m(t))),s],Z([...o?.entries()??[]],([e,t])=>r(t,e))),([e],[t])=>l(e,t)*(s?-1:1)),n,x(a)?a:n+a),([,e])=>e);var o,r},Ls=(e,t)=>Ue(qe(qe(ce,m(e)),m(t))),Ds=(e,t,s)=>Me(qe(qe(qe(ce,m(e)),m(t)),m(s))),Os=()=>Xe(ue,Me),Fs=()=>Ue(ue),_s=e=>Me(qe(ue,m(e))),js=()=>!Oe(ce),xs=e=>De(ce,m(e)),zs=(e,t)=>De(qe(oe,m(e)),m(t)),As=(e,t)=>De(qe(ce,m(e)),m(t)),Ns=(e,t,s)=>De(qe(qe(ce,m(e)),m(t)),m(s)),Ps=()=>!Oe(ue),Ws=e=>De(ue,m(e)),ks=e=>Is(()=>(e=>Te(e,Mt,hs))(e)?Qt(e):0),Us=(e,t,s,n,a,l)=>Is((e,t,s)=>N(Jt(e,t,s,k(n)?n(Ds(e,t,s)):n),n=>{const o=ss(e);N(a||l||!r[14]?.()?void 0:r[3],l=>{const r=qe(o,t),c={...r?Xe(r):{},[s]:n};N(It(()=>l(e,t,K(c))),s=>((e,t,s,n,a)=>{Qe(Ke(t,s,()=>(cs(e,s,1),ke())),n,(t,n,l)=>N(Jt(e,s,n,l),l=>Zt(e,s,t,n,l,a)),(n,a)=>ls(e,t,s,n,a,!0))})(e,o,t,s,a))},()=>$t(e,o,t,s,n,a))}),e,t,s),qs=e=>Is(()=>At(e)?es(e):0),Bs=(e,t,s)=>Is(e=>N(Nt(e,k(t)?t(_s(e)):t),t=>ts(e,t,s)),e),Gs=e=>(Q(()=>qt(we(e))),rn),Ks=t=>Is(()=>{if((e=Te(t,e=>Te(e,Rt)))&&(kt(t),!Oe(ce))){const e=ms();Xs(),ks(e)}}),Qs=e=>Is(()=>{if(s=(e=>Te(e,Rt))(e)){const t=Os();nn(),en(),s=!0,Ut(e),qs(t)}}),Xs=()=>Is(()=>It(()=>r[7]?.())??1?Qt({},!0):0),Ys=e=>Is(e=>De(ce,e)?ns(e):0,e),Zs=(e,t)=>Is((e,t)=>N(qe(ce,e),s=>De(s,t)?as(e,s,t):0),e,t),$s=(e,t,s,n,a)=>Is((e,t,s)=>N(qe(ce,e),l=>N(qe(l,t),o=>De(o,s)?ls(e,l,t,o,s,n,a):0)),e,t,s),en=()=>Is(()=>It(()=>r[11]?.())??1?es({},!0):0),tn=(e,t)=>Is(e=>De(ue,e)?os(e,t):0,e),sn=()=>Is(()=>{kt({}),e=!1}),nn=()=>Is(()=>{Ut({}),s=!1}),an=(e,t)=>{if(-1!=o){ln();const s=e();return on(t),s}},ln=()=>(-1!=o&&o++,1==o&&(h[0]?.(),wt(Ct)),rn),on=e=>(o>0&&(o--,0==o&&(o=1,It(()=>{Ts(1),Oe(D)||Vs(1),vs(1),Oe(_)||ps(1)}),e?.(rn)&&(je(D,(e,t)=>je(e,(e,s)=>je(e,([e],n)=>Bt(t,s,n,e,!0)))),_e(D),je(_,([e],t)=>Kt(t,e,!0)),_e(_)),wt(Tt[0],void 0),o=-1,Ts(0),Oe(D)||Vs(0),vs(0),Oe(_)||ps(0),h[1]?.(),wt(Tt[1],void 0),h[2]?.(),o=0,n=js(),l=Ps(),Y([S,H,J,E,L,D,O,A,F,_,j,W],_e))),rn),rn={getContent:()=>[ms(),Os()],getTables:ms,getTableIds:Ms,getTable:e=>Ye(qe(ce,m(e)),Me),getTableCellIds:Ss,getRowCount:Hs,getRowIds:Js,getSortedRowIds:Es,getRow:(e,t)=>Xe(qe(qe(ce,m(e)),m(t)),Me),getCellIds:Ls,getCell:Ds,getValues:Os,getValueIds:Fs,getValue:_s,hasTables:js,hasTable:xs,hasTableCell:zs,hasRow:As,hasCell:Ns,hasValues:Ps,hasValue:Ws,getTablesJson:()=>Ve(ce),getValuesJson:()=>Ve(ue),getJson:()=>Ve([ce,ue]),getTablesSchemaJson:()=>Ve(G),getValuesSchemaJson:()=>Ve(te),getSchemaJson:()=>Ve([G,te]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>Is(()=>{const t=k(e)?e():e;mt(t)&&(e=>{yt(e,()=>N(r[0],t=>It(()=>t(K(e))),()=>e),([e,t])=>{(be(e)?Xs:ks)(e),(be(t)?en:qs)(t)},xt)})(t)}),setTables:ks,setTable:(e,t)=>Is(e=>Mt(t,e)?Xt(e,t):0,e),setRow:(e,t,s)=>Is((e,t)=>St(e,t,s)?Yt(e,ss(e),t,s):0,e,t),addRow:(e,t,s=!0)=>an(()=>{let n;return St(e,n,t)&&(e=m(e),Yt(e,ss(e),n=((e,t)=>{const[s]=qe(ae,e);let n;do{n=s(t)}while(De(qe(ce,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>Is((e,t)=>{if(St(e,t,s,1)){const n=ss(e);ge(s,(s,a)=>$t(e,n,t,a,s))}},e,t),setCell:Us,setValues:qs,setPartialValues:e=>Is(()=>At(e,1)?ge(e,(e,t)=>ts(t,e)):0),setValue:Bs,applyChanges:e=>Is(()=>yt(e,()=>N(r[13],t=>It(()=>t(K(e))),()=>e),e=>{ge(e[0],(e,t)=>x(e)?Ys(t):ge(e,(e,s)=>x(e)?Zs(t,s):ge(e,(e,n)=>Bt(t,s,n,e,void 0,!0)))),ge(e[1],(e,t)=>Kt(t,e))},xt)),setTablesJson:Gs,setValuesJson:e=>(Q(()=>Gt(we(e))),rn),setJson:e=>Is(()=>Q(()=>{const[t,s]=we(e);qt(t),Gt(s)},()=>Gs(e))),setTablesSchema:Ks,setValuesSchema:Qs,setSchema:(e,t)=>Is(()=>{Ks(e),Qs(t)}),delTables:Xs,delTable:Ys,delRow:Zs,delCell:$s,delValues:en,delValue:tn,delTablesSchema:sn,delValuesSchema:nn,delSchema:()=>Is(()=>{sn(),nn()}),transaction:an,startTransaction:ln,getTransactionChanges:()=>Rs(),getTransactionLog:()=>[!Oe(D),!Oe(_),Ze(D,Ft,_t),Ze(A),Xe(_,Ft,_t),Xe(W),Xe(S),Ye(E),Ze(L),Xe(F)],finishTransaction:on,forEachTable:e=>je(ce,(t,s)=>e(s,e=>je(t,(t,s)=>e(s,e=>Be(t,(t,s)=>e(t,Me(s))))))),forEachTableCell:(e,t)=>Be(qe(oe,m(e)),t),forEachRow:(e,t)=>je(qe(ce,m(e)),(e,s)=>t(s,t=>Be(e,(e,s)=>t(e,Me(s))))),forEachCell:(e,t,s)=>Be(qe(qe(ce,m(e)),m(t)),(e,t)=>s(e,Me(t))),forEachValue:e=>Be(ue,(t,s)=>e(t,Me(s))),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>le(e)?ys(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit,e.sorter],t,s):ys(e,t,[s,n,a,void 0],l,o),addStartTransactionListener:e=>vt(e,Ct),addWillFinishTransactionListener:e=>vt(e,Tt[0]),addDidFinishTransactionListener:e=>vt(e,Tt[1]),callListener:e=>(pt(e),rn),delListener:e=>(Vt(e),rn),getListenerStats:()=>({hasTables:Dt(he),tables:Dt(Ce),tableIds:Dt(ve),hasTable:Dt(Ie),table:Dt(Se),tableCellIds:Dt(Fe),hasTableCell:Dt(ze,Ee),rowCount:Dt(Ae),rowIds:Dt(Ne),sortedRowIds:Dt(Pe),hasRow:Dt(We,Ee),row:Dt(nt,Ee),cellIds:Dt(at,Ee),hasCell:Dt(lt,Le),cell:Dt(ot,Le),invalidCell:Dt(rt,Le),hasValues:Dt(it),values:Dt(dt),valueIds:Dt(ut),hasValue:Dt(gt),value:Dt(ht),invalidValue:Dt(ct),transaction:Je(Ct)+Dt(Tt)}),isMergeable:()=>!1,_:[zt,vt,wt,(e,t,s,n,a)=>h=[e,t,s,n,a],(e,t,s,n,a,l,o,c,i,d,u,g,h,b,f)=>r=[e,t,s,n,a,l,o,c,i,d,u,g,h,b,f],Bt,Kt,()=>[Ze(ce),Xe(ue)],()=>Rs(!0)]};return ge({[g+f]:[0,he,[],()=>[js()]],[f]:[0,Ce],[C]:[0,ve],[g+b]:[1,Ie,[Ms],e=>[xs(...e)]],[b]:[1,Se,[Ms]],[b+p]:[1,Fe,[Ms]],[g+b+V]:[2,ze,[Ms,Ss],e=>[zs(...e)]],[v]:[1,Ae,[Ms]],[w]:[1,Ne,[Ms]],[g+T]:[2,We,[Ms,Js],e=>[As(...e)]],[T]:[2,nt,[Ms,Js]],[p]:[2,at,[Ms,Js]],[g+V]:[3,lt,[Ms,Js,Ls],e=>[Ns(...e)]],[V]:[3,ot,[Ms,Js,Ls],e=>Lt(Ds(...e))],InvalidCell:[3,rt],[g+y]:[0,it,[],()=>[Ps()]],[y]:[0,dt],[R]:[0,ut],[g+I]:[1,gt,[Fs],e=>[Ws(...e)]],[I]:[1,ht,[Fs],e=>Lt(_s(e[0]))],InvalidValue:[1,ct]},([e,t,s,n],a)=>{rn["add"+a+u]=(...a)=>vt(a[e],t[a[e+1]?1:0],e>0?q(a,0,e):void 0,s,n)}),re(rn)},At={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},Nt=(e=t)=>[Rt(e),Rt(e)],Pt=(e,s)=>{let n=1,a=Nt(),l=0,o=0;const r=ke(),c=bt(),[i,d]=((e,s=Date.now)=>{let n=0,a=-1;const l=N(e,ht,()=>((e=16)=>$(rt(new Uint8Array(e)),(e,t)=>e+lt(t),t))(5)),o=e=>{const l=n,[o,r]=x(e)||e==t?[0,0]:c(e);n=D(l,o,s()),a=n==l?n==o?D(a,r):a:n==o?r:-1},r=(e,t,s)=>lt(e/ct)+lt(e/it)+lt(e/dt)+lt(e/ut)+lt(e/gt)+lt(e/64)+lt(e)+lt(t/ut)+lt(t/gt)+lt(t/64)+lt(t)+(x(s)?l:ht(s)),c=e=>[ot(e,0)*ct+ot(e,1)*it+ot(e,2)*dt+ot(e,3)*ut+ot(e,4)*gt+64*ot(e,5)+ot(e,6),ot(e,7)*ut+ot(e,8)*gt+64*ot(e,9)+ot(e,10),e.slice(11)];return[()=>(o(),r(n,++a)),o,r,c,()=>n,()=>a,()=>l]})(e,s),g=zt(),h=e=>{const t=n;return n=0,e(),n=t,I},b=(e,s=0)=>{const n={},l={},[[o,r=t,c=0],i]=e,[u,g]=a,[h,b,C]=u;let T=s?c:C,v=r;ue(o,([e,a=t,l=0],o)=>{const r=Ke(h,o,Rt),[c,i,d]=r;let u=s?l:d,g=a;ue(e,(e,t)=>{const[a,l,r]=f(e,Ke(c,t,Rt),Ce(Ce(n,o,ce),t,ce),s);u^=s?0:Ne(l?Pe(t,l):0,Pe(t,r)),g=pt(g,a)}),u^=s?0:Vt(i,a),It(r,a,u),T^=s?0:Ne(d?Pe(o,d):0,Pe(o,r[2])),v=pt(v,g)}),T^=s?0:Vt(b,r),It(u,r,T);const[w]=f(i,g,l,s);return d(pt(v,w)),[n,l,1]},f=(e,s,n,a)=>{const[l,o=t,r=0]=e,[c,i,d]=s;let u=o,g=a?r:d;return ue(l,([e,s=t,l=0],o)=>{const r=Ke(c,o,()=>[void 0,t,0]),[,i,d]=r;var h;(!i||s>i)&&(It(r,s,a?l:(h=s,Ae(Ve(e??null)+":"+h))),r[0]=e,n[o]=e,g^=a?0:Ne(Pe(o,d),Pe(o,r[2])),u=pt(u,s))}),g^=a?0:Vt(i,o),It(s,o,g),[u,d,s[2]]},C=G,T=G,v=(e=!1)=>[mt(a[0],t=>mt(t,t=>mt(t,([t,s,n])=>[Me(t,0,e),s,n]))),mt(a[1],([t,s,n])=>[Me(t,0,e),s,n])],w=(e,t=!1)=>{const[[s,n,l],[o,i,d]]=a,u=e?vt:Tt,g={};je(r,(e,n)=>N(qe(s,n),([s,a,l])=>{const o={};je(e,(e,n)=>N(qe(s,n),([s,a,l])=>{const r={};je(e,e=>{N(qe(s,e),([s,n,a])=>r[e]=u(t?s:Me(s),n,a))}),o[n]=u(r,a,l)})),g[n]=u(o,a,l)}));const h={};return je(c,e=>N(qe(o,e),([s,n,a])=>h[e]=u(t?s:Me(s),n,a))),[u(g,n,l),u(h,i,d),1]},V=()=>v(),p=e=>h(()=>g.applyChanges(b(e))),I={getMergeableContent:V,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>Xe(a[0][0],wt),getMergeableTableDiff:e=>{const t=yt(a[0][1]),s={};return Be(a[0][0],(n,[a,l,o])=>ie(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=Mt([a,l],e=>Mt(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return ue(e,(e,s)=>N(qe(a[0][0],s),([n,,a])=>a!=e?Be(n,(e,[,,n])=>Ce(t,s,ce)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=yt(a[0][1]),s={};return ue(e,(e,n)=>Be(qe(a[0][0],n)?.[0],(a,[l,o,r])=>ie(e,a)?r!==e[a]?Ce(s,n,ce)[a]=r:0:Ce(t[0],n,yt)[0][a]=Mt([l,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return ue(e,(e,s)=>N(qe(a[0][0],s),([n])=>ue(e,(e,a)=>N(qe(n,a),([n,,l])=>l!==e?Be(n,(e,[,,n])=>Ce(Ce(t,s,ce),a,ce)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return ue(e,(e,s)=>ue(e,(e,a)=>N(qe(t,s),([t,l])=>N(qe(t,a),([t,o])=>Be(t,(t,[r,c,i])=>i!==e[t]?Ce(Ce(n,s,()=>yt(l))[0],a,()=>yt(o))[0][t]=[r,c]:0))))),Tt(n,s)},getMergeableValueHashes:()=>Xe(a[1][0],wt),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=Xe(t,Ct,([,,t],s)=>t==e?.[s]);return Tt(n,s)},setMergeableContent:e=>h(()=>(e=>U(e)&&2==B(e)&&St(e[0],e=>Te(e,e=>St(e,e=>Te(e,e=>St(e,e=>Te(e,e=>St(e,Ie),void 0,1)),void 0,1)),void 0,1))&&St(e[1],e=>Te(e,e=>St(e,Ie),void 0,1)))(e)?g.transaction(()=>{g.delTables().delValues(),a=Nt(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{l=1,g.setContent(e),l=0}),I),getTransactionMergeableChanges:(e=!1)=>w(e),applyMergeableChanges:p,merge:e=>{const t=V(),s=e.getMergeableContent();return e.applyMergeableChanges(t),p(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>w(e,!0)]};return g._[3](C,T,()=>{_e(r),_e(c)},(e,s,a,c,d,u)=>{ft(Ke(Ke(r,e,ke),s,bt),a),(n||d)&&(d&&(o=1),b([[{[e]:[{[s]:[{[a]:[c,l||u?t:i()]}]}]}],[{}],1]))},(e,s,a,r)=>{ft(c,e),(n||a)&&(a&&(o=1),b([[{}],[{[e]:[s,l||r?t:i()]}],1]))}),ge(g,(e,t)=>I[t]=M(t,"set")||M(t,"del")||M(t,"apply")||S(t,"Transaction")||t=="call"+u||"use"==t?(...t)=>(e(...t),I):M(t,"add")&&S(t,u)?(...s)=>{const n=At[q(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(I,...t),e(...s)}:"isMergeable"==t?()=>!0:e),re(I)};export{Pt as createMergeableStore};
1
+ const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="object",r="array",c="type",i="default",d="allowNull",u="Listener",g="Has",h="Ids",b="Table",f=b+"s",C=b+h,T="Row",v=T+"Count",w=T+h,V="Cell",p=V+h,I="Value",y=I+"s",R=I+h,m="required",M=e=>t+e,S=(e,t)=>e.startsWith(t),H=(e,t)=>e.endsWith(t),J=(e,s=t,n)=>e.split(s,n),E=Math,L=e=>(t,s,n)=>e(t)?n?.():s(t),D=globalThis,O=E.max,F=E.floor,_=E.random,j=isFinite,x=e=>null==e,z=e=>void 0===e,A=e=>null===e,N=L(x),P=L(z),W=e=>e==s||e==n,k=t=>e(t)==s,q=t=>e(t)==l,U=e=>Array.isArray(e),B=(e,t,s)=>e.slice(t,s),G=e=>e.length,K=()=>{},Q=D.structuredClone,X=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},Y=(e,t)=>e.every(t),Z=(e,t)=>e.forEach(t),$=(e,t)=>e.map(t),ee=(e,t,s)=>e.reduce(t,s),te=(e,...t)=>e.push(...t),se=Object,ne=e=>se.getPrototypeOf(e),ae=se.isFrozen,le=se.entries,oe=e=>!x(e)&&N(ne(e),e=>e==se.prototype||x(ne(e)),()=>!0),re=se.keys,ce=se.freeze,ie=(e=[])=>se.fromEntries(e),de=(e,t)=>t in e,ue=(e,t)=>(delete e[t],e),ge=(e,t)=>Z(le(e),([e,s])=>t(s,e)),he=(e,t)=>ie(((e,t)=>$(le(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),be=e=>G(re(e)),fe=e=>oe(e)&&0==be(e),Ce=(e,t,s=(e,t)=>e===t)=>{const n=le(e);return G(n)===be(t)&&Y(n,([e,n])=>oe(n)?!!oe(t[e])&&Ce(t[e],n,s):s(n,t[e]))},Te=(e,t,s)=>(de(e,t)||(e[t]=s()),e[t]),ve=(e,t,s,n=0)=>x(e)||!oe(e)||!n&&fe(e)||ae(e)?(s?.(),!1):(ge(e,(s,n)=>{t(s,n)||ue(e,n)}),!!n||!fe(e)),we=JSON.stringify,Ve=JSON.parse,pe=e=>we(e,(e,t)=>t instanceof Map?se.fromEntries([...t]):t),Ie=t=>{if(A(t))return"null";if(U(t))return r;if(oe(t))return o;const s=e(t);return W(s)||s==a&&j(t)?s:void 0},ye=e=>z(e)||!z(Ie(e)),Re=e=>e==o||e==r,me=e=>oe(e)||U(e)?"�"+we(e):e,Me=e=>k(e)&&"�"==e[0],Se=(e,t,s)=>!s&&Me(e)?Ve(B(e,1)):e,He=e=>t=>ee(_e(t),(t,s)=>t+e(s),0),Je=e=>e?.size??0,Ee=He(Je),Le=He(Ee),De=He(Le),Oe=(e,t)=>e?.has(t)??!1,Fe=e=>z(e)||0==Je(e),_e=e=>[...e?.values()??[]],je=e=>e.clear(),xe=(e,t)=>e?.forEach(t),ze=(e,t)=>e?.delete(t),Ae=new D.TextEncoder,Ne=e=>{let t=2166136261;return Z(Ae.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},Pe=(e,t)=>(e^t)>>>0,We=(e,t)=>Ne(e+":"+t),ke=Map,qe=e=>new ke(e),Ue=e=>[...e?.keys()??[]],Be=(e,t)=>e?.get(t),Ge=(e,t)=>xe(e,(e,s)=>t(s,e)),Ke=(e,t,s)=>z(s)?(ze(e,t),e):e?.set(t,s),Qe=(e,t,s,n)=>(Oe(e,t)?n?.(Be(e,t)):Ke(e,t,s()),Be(e,t)),Xe=(e,t,s,n=Ke)=>(he(t,(t,n)=>s(e,n,t)),Ge(e,s=>de(t,s)?0:n(e,s)),e),Ye=(e,t,s,n)=>{const a={};return xe(e,(e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;n?.(s)||(a[l]=s)}}),a},Ze=(e,t,s)=>Ye(e,e=>Ye(e,t,s),Fe,fe),$e=(e,t,s)=>Ye(e,e=>Ze(e,t,s),Fe,fe),et=(e,t)=>{const s=qe();return xe(e,(e,n)=>s.set(n,t?.(e)??e)),s},tt=e=>et(e,et),st=e=>et(e,tt),nt=(e,t,s,n,a=0)=>P((s?Qe:Be)(e,t[a],a>G(t)-2?s:qe),l=>{if(a>G(t)-2)return n?.(l)&&Ke(e,t[a]),l;const o=nt(l,t,s,n,a+1);return Fe(l)&&Ke(e,t[a]),o}),at=J("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),lt=qe($(at,(e,t)=>[e,t])),ot=e=>at[63&e],rt=(e,t)=>Be(lt,e[t])??0,ct=D.crypto?e=>D.crypto.getRandomValues(e):e=>$(e,()=>F(256*_())),it=2**36,dt=2**30,ut=2**24,gt=2**18,ht=4096,bt=e=>{const t=Ne(e);return ot(t/ut)+ot(t/gt)+ot(t/ht)+ot(t/64)+ot(t)},ft=e=>new Set(U(e)||z(e)?e:[e]),Ct=(e,t)=>e?.add(t),Tt=([e,t])=>vt(e,t),vt=(e,t)=>t?[e,t]:[e],wt=(e,t,s)=>[e,t,s],Vt=e=>e[2],pt=(e,t)=>t>e?(e?Ne(e):0)^Ne(t):0,It=(e,s)=>((e??t)>(s??t)?e:s)??t,yt=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},Rt=(e=t)=>vt(ie(),e),mt=(e=t)=>[qe(),e,0],Mt=([e,t,s],n)=>[Ye(e,n),t,s],St=([e,t],s=Tt)=>vt(Ye(e,s),t),Ht=(t,s)=>{return U(t)&&3==G(t)&&k(t[1])&&(n=t[2],e(n)==a)&&j(t[2])&&s(t[0]);var n},Jt=(e,t)=>(e??0)<(t??0)?-1:1,Et=/^\d+$/,Lt=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{Et.test(t)&&G(e)<1e3&&te(e,t)}]},Dt=e=>[e,e],Ot=(e,t=Ee)=>t(e[0])+t(e[1]),Ft=()=>[qe(),qe()],_t=e=>[...e],jt=([e,t])=>e===t,xt=(e,t,s)=>Ke(e,t,Be(e,t)==-s?void 0:s),zt=([e,t],[s,n])=>Ce(e,s)&&Ce(t,n),At=()=>{let e,s,n=!1,l=!1,o=0,r=[],h=[],S=0;const H=qe(),J=qe(),E=qe(),L=qe(),D=qe(),O=qe(),F=qe(),_=qe(),j=qe(),x=ft(),N=qe(),k=qe(),K=qe(),ee=qe(),se=qe(),ne=qe(),ae=ft(),le=ft(),re=qe(),ie=qe(),ge=qe(),be=qe(),Te=Ft(),we=Ft(),ye=Ft(),He=Ft(),Ae=Ft(),Ne=Ft(),Pe=Ft(),We=Ft(),ke=Ft(),at=Ft(),lt=Ft(),ot=Ft(),rt=Ft(),ct=Ft(),it=Ft(),dt=Ft(),ut=Ft(),gt=Ft(),ht=Ft(),bt=Ft(),Tt=Ft(),vt=Ft(),wt=qe(),Vt=Ft(),[pt,It,yt,Rt]=(()=>{let e;const[s,n]=Lt(),a=qe();return[(n,l,o,r=[],c=()=>[])=>{e??=un;const i=s(1);return Ke(a,i,[n,l,o,r,c]),Ct(nt(l,o??[t],ft),i),i},(s,n,...l)=>Z(((e,s=[t])=>{const n=[],a=(e,t)=>t==G(s)?te(n,e):A(s[t])?xe(e,e=>a(e,t+1)):Z([s[t],null],s=>a(Be(e,s),t+1));return a(e,0),n})(s,n),t=>xe(t,t=>Be(a,t)[0](e,...n??[],...l))),e=>P(Be(a,e),([,s,l])=>(nt(s,l??[t],void 0,t=>(ze(t,e),Fe(t)?1:0)),Ke(a,e),n(e),l)),t=>P(Be(a,t),([t,,s=[],n,a])=>{const l=(...o)=>{const r=G(o);r==G(s)?t(e,...o,...a(o)):A(s[r])?Z(n[r]?.(...o)??[],e=>l(...o,e)):l(...o,s[r])};l()})]})(),mt=e=>{const t=S;S=1;const s=e();return S=t,s},Mt=(e,t,s,n=Object.is)=>P(t(),t=>e===t||n(e,t)?s(t):mt(()=>s(t))),St=e=>{if(!ve(e,(e,t)=>[c,i,d,m].includes(t)))return!1;const t=e[c];if(!W(t)&&t!=a&&!Re(t))return!1;const s=e[i];return!(A(s)&&!e[d]||(A(s)||(Ie(s)!=t?ue(e,i):e[i]=me(s)),0))},Ht=U,Et=(t,s)=>(!e||Oe(K,s)||Cs(s))&&ve(t,(e,t)=>Nt(s,t,e),()=>Cs(s)),Nt=(e,t,s,n)=>{const a=n?s:qt(s,e,t);return ve(a,(n,a)=>P(Pt(e,t,a,n),e=>(s[a]=e,!0),()=>!1),()=>Cs(e,t))&&(!!n||Y(_e(Be(ee,e)?.[2]),e=>de(a,e)))},Pt=(t,s,n,a)=>e?P(Be(Be(K,t),n),e=>A(a)?e[d]?a:Cs(t,s,n,a,e[i]):Ie(a)===e[c]?me(a):Re(e[c])&&Me(a)?a:Cs(t,s,n,a,e[i]),()=>Cs(t,s,n,a)):z(Ie(a))?Cs(t,s,n,a):me(a),Wt=(e,t)=>{const s=t?e:Ut(e);return ve(s,(t,s)=>P(kt(s,t),t=>(e[s]=t,!0),()=>!1),()=>Ts())&&(!!t||Y(_e(le),e=>de(s,e)))},kt=(e,t)=>s?P(Be(se,e),s=>A(t)?s[d]?t:Ts(e,t,s[i]):Ie(t)===s[c]?me(t):Re(s[c])&&Me(t)?t:Ts(e,t,s[i]),()=>Ts(e,t)):z(Ie(t))?Ts(e,t):me(t),qt=(e,t,s)=>(P(Be(ee,t),([n,a])=>{xe(n,(n,a)=>{de(e,a)||(e[a]=n,P(s,e=>Ct(Qe(Qe(F,t,qe),e,ft),a)))}),xe(a,n=>{de(e,n)||Cs(t,s,n)})}),e),Ut=e=>(s&&(xe(ne,(t,s)=>{de(e,s)||(e[s]=t,Ct(x,s))}),xe(ae,t=>{de(e,t)||Ts(t)})),e),Bt=e=>Xe(K,e,(e,t,s)=>{const n=qe(),a=ft(),l=ft();Xe(Qe(K,t,qe),s,(e,t,s)=>{Ke(e,t,s),P(s[i],e=>{Ke(n,t,e)},()=>{Ct(a,t),!0===s[m]&&Ct(l,t)})}),Ke(ee,t,[n,a,l])},(e,t)=>{Ke(K,t),Ke(ee,t)}),Gt=e=>Xe(se,e,(e,t,s)=>{Ke(se,t,s),P(s[i],e=>{Ke(ne,t,e),ze(ae,t),ze(le,t)},()=>{Ke(ne,t),Ct(ae,t),!0===s[m]?Ct(le,t):ze(le,t)})},(e,t)=>{Ke(se,t),Ke(ne,t),ze(ae,t),ze(le,t)}),Kt=e=>fe(e)?$s():Bs(e),Qt=(e,t,s,n,a,l)=>z(n)?sn(e,t,s,!0,a):Gs(e,t,s,n,a,l),Xt=e=>fe(e)?nn():Ks(e),Yt=(e,t,s)=>z(t)?an(e,s):Qs(e,t,s),Zt=(e,t)=>Mt(e,()=>t?e:P(r[1],t=>mt(()=>t(Q(e))),()=>e),e=>Xe(ge,e,(e,t,s)=>$t(t,s),(e,t)=>os(t)),Ce),$t=(e,t,s)=>Mt(t,()=>s?t:P(r[2],s=>mt(()=>s(e,Q(t))),()=>t),t=>Xe(Qe(ge,e,()=>(ds(e,1),Ke(re,e,Lt()),Ke(ie,e,qe()),qe())),t,(t,s,n)=>es(e,t,s,n),(t,s)=>rs(e,t,s)),Ce),es=(e,t,s,n,a)=>Mt(n,()=>a?n:P(r[3],t=>mt(()=>t(e,s,Q(n))),()=>n),n=>Xe(Qe(t,s,()=>(us(e,s,1),qe())),n,(t,n,a)=>ts(e,s,t,n,a),(n,l)=>cs(e,t,s,n,l,a)),Ce),ts=(e,t,s,n,a,l)=>Mt(a,()=>P(l?void 0:r[4],s=>mt(()=>s(e,t,n,a)),()=>a),a=>{Oe(s,n)||gs(e,t,n,1);const l=Be(s,n);a!==l&&(hs(e,t,n,l,a),Ke(s,n,a))}),ss=(e,t,s,n,a,l)=>P(Be(t,s),t=>ts(e,s,t,n,a,l),()=>{const o=qe();Ke(t,s,o),us(e,s,1),he(qt({[n]:a},e,s),(t,n)=>ts(e,s,o,n,t,l))}),ns=(e,t)=>Mt(e,()=>t?e:P(r[5],t=>mt(()=>t(Q(e))),()=>e),e=>Xe(be,e,(e,t,s)=>as(t,s),(e,t)=>is(t)),Ce),as=(e,t,s)=>Mt(t,()=>P(s?void 0:r[6],s=>mt(()=>s(e,t)),()=>t),t=>{Oe(be,e)||bs(e,1);const s=Be(be,e);t!==s&&(fs(e,s,t),Ke(be,e,t))}),ls=e=>Qe(ge,e,()=>(ds(e,1),Ke(re,e,Lt()),Ke(ie,e,qe()),qe())),os=e=>mt(()=>r[8]?.(e))??1?$t(e,{},!0):Be(ge,e),rs=(e,t,s)=>{if(mt(()=>r[9]?.(e,s))??1){const[,n]=Be(re,e);n(s),es(e,t,s,{},!0)}},cs=(e,t,s,n,a,l,o)=>{const c=Be(Be(ee,e)?.[0],a);if(!z(c)&&!l)return ts(e,s,n,a,c);if(o||(mt(()=>r[10]?.(e,s,a))??1)){const l=t=>{hs(e,s,t,Be(n,t)),gs(e,s,t,-1),Ke(n,t)};z(c)?l(a):Ge(n,l),Fe(n)&&(us(e,s,-1),Fe(Ke(t,s))&&(ds(e,-1),Ke(ge,e),Ke(re,e),Ke(ie,e)))}},is=(e,t)=>{const s=Be(ne,e);if(!z(s))return as(e,s);(t||(mt(()=>r[12]?.(e))??1))&&(fs(e,Be(be,e)),bs(e,-1),Ke(be,e))},ds=(e,t)=>xt(H,e,t),us=(e,t,s)=>xt(Qe(L,e,qe),t,s)&&Ke(E,e,Qe(E,e,()=>0)+s),gs=(e,t,s,n)=>{const a=Be(ie,e),l=Be(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&xt(Qe(J,e,qe),s,n),Ke(a,s,l!=-n?l+n:void 0),xt(Qe(Qe(D,e,qe),t,qe),s,n)},hs=(e,t,s,n,a)=>{const l=Oe(Be(Be(F,e),t),s)&&z(n)?1:0;Qe(Qe(Qe(O,e,qe),t,qe),s,()=>[n,0])[1]=a,h[3]?.(e,t,s,a,S,l),ze(Be(Be(F,e),t),s)},bs=(e,t)=>xt(_,e,t),fs=(e,t,s)=>{const n=Oe(x,e)&&z(t)?1:0;Qe(j,e,()=>[t,0])[1]=s,h[4]?.(e,s,S,n),ze(x,e)},Cs=(e,t,s,n,a)=>(te(Qe(Qe(Qe(N,e,qe),t,qe),s,()=>[]),n),a),Ts=(e,t,s)=>(te(Qe(k,e,()=>[]),t),s),vs=(e,t,s)=>P(Be(Be(Be(O,e),t),s),([e,t])=>[!0,Se(e),Se(t)],()=>[!1,...Dt(_s(e,t,s))]),ws=e=>P(Be(j,e),([e,t])=>[!0,Se(e),Se(t)],()=>[!1,...Dt(zs(e))]),Vs=e=>Fe(N)||Fe(dt[e])?0:xe(e?st(N):N,(t,s)=>xe(t,(t,n)=>xe(t,(t,a)=>It(dt[e],[s,n,a],t)))),ps=e=>Fe(k)||Fe(ut[e])?0:xe(e?et(k):k,(t,s)=>It(ut[e],[s],t)),Is=(e,t,s,n)=>{if(!Fe(e))return It(t,n,()=>Ye(e)),Ge(e,(e,t)=>It(s,[...n??[],e],1==t)),1},ys=e=>{const t=!Fe(Te[e]),s=!Fe(at[e]),a=!(Fe(rt[e])&&Fe(ct[e])&&Fe(ke[e])&&Fe(lt[e])&&Fe(Ne[e])&&Fe(Pe[e])&&Fe(We[e])&&!s&&Fe(ye[e])&&Fe(He[e])),l=!(Fe(it[e])&&Fe(ot[e])&&Fe(Ae[e])&&Fe(we[e]));if(t||a||l){const r=e?[et(H),tt(J),et(E),tt(L),st(D),(o=O,et(o,e=>et(e,e=>et(e,_t))))]:[H,J,E,L,D,O];if(t){const t=As();t!=n&&It(Te[e],void 0,t)}if(a){Is(r[0],ye[e],He[e]),xe(r[1],(t,s)=>Is(t,Ne[e],Pe[e],[s])),xe(r[2],(t,s)=>{0!=t&&It(We[e],[s],Ls(s))});const t=ft();xe(r[3],(n,a)=>{Is(n,ke[e],lt[e],[a])&&s&&(It(at[e],[a,null]),Ct(t,a))}),s&&xe(r[5],(s,n)=>{if(!Oe(t,n)){const t=ft();xe(s,e=>xe(e,([s,n],a)=>n!==s?Ct(t,a):ze(e,a))),xe(t,t=>It(at[e],[n,t]))}}),xe(r[4],(t,s)=>xe(t,(t,n)=>Is(t,rt[e],ct[e],[s,n])))}if(l){let t;xe(r[5],(s,n)=>{let a;xe(s,(s,l)=>{let o;xe(s,([s,r],c)=>{r!==s&&(It(it[e],[n,l,c],Se(r),Se(s),vs),t=a=o=1)}),o&&It(ot[e],[n,l],vs)}),a&&It(Ae[e],[n],vs)}),t&&It(we[e],void 0,vs)}}var o},Rs=e=>{const t=!Fe(gt[e]),s=!Fe(bt[e])||!Fe(Tt[e]),n=!Fe(vt[e])||!Fe(ht[e]);if(t||s||n){const a=e?[et(_),et(j,_t)]:[_,j];if(t){const t=qs();t!=l&&It(gt[e],void 0,t)}if(s&&Is(a[0],bt[e],Tt[e]),n){let t;xe(a[1],([s,n],a)=>{n!==s&&(It(vt[e],[a],Se(n),Se(s),ws),t=1)}),t&&It(ht[e],void 0,ws)}}},ms=(e,...t)=>(rn(()=>e(...$(t,M))),un),Ms=(e,t,s,n,a)=>{const[l,o,r,c]=s;let i=Os(e,t,l,o,r,c);return pt(()=>{const s=Os(e,t,l,o,r,c);var a,d;d=i,G(a=s)===G(d)&&Y(a,(e,t)=>d[t]===e)||(i=s,n(un,e,t,l,o,r,i))},at[a?1:0],[e,t],[Js])},Ss=(e=!1)=>[Ye(O,(t,s)=>-1===Be(H,s)?void 0:Ye(t,(t,n)=>-1===Be(Be(L,s),n)?void 0:Ye(t,([,t])=>Se(t,0,e),e=>jt(e)),Fe,fe),Fe,fe),Ye(j,([,t])=>Se(t,0,e),e=>jt(e)),1],Hs=()=>$e(ge,Se),Js=()=>Ue(ge),Es=e=>Ue(Be(ie,M(e))),Ls=e=>Je(Be(ge,M(e))),Ds=e=>Ue(Be(ge,M(e))),Os=(e,t,s,n=0,a,l=Jt)=>{return oe(e)?Os(e.tableId,e.cellId,e.descending,e.offset,e.limit,e.sorter):$(B(((e,t)=>e.sort(t))((o=Be(ge,M(e)),r=(e,s)=>[z(t)?s:Se(Be(e,M(t))),s],$([...o?.entries()??[]],([e,t])=>r(t,e))),([e],[t])=>l(e,t)*(s?-1:1)),n,z(a)?a:n+a),([,e])=>e);var o,r},Fs=(e,t)=>Ue(Be(Be(ge,M(e)),M(t))),_s=(e,t,s)=>Se(Be(Be(Be(ge,M(e)),M(t)),M(s))),js=()=>Ye(be,Se),xs=()=>Ue(be),zs=e=>Se(Be(be,M(e))),As=()=>!Fe(ge),Ns=e=>Oe(ge,M(e)),Ps=(e,t)=>Oe(Be(ie,M(e)),M(t)),Ws=(e,t)=>Oe(Be(ge,M(e)),M(t)),ks=(e,t,s)=>Oe(Be(Be(ge,M(e)),M(t)),M(s)),qs=()=>!Fe(be),Us=e=>Oe(be,M(e)),Bs=e=>ms(()=>(e=>ve(e,Et,Cs))(e)?Zt(e):0),Gs=(e,t,s,n,a,l)=>ms((e,t,s)=>P(Pt(e,t,s,q(n)?n(_s(e,t,s)):n),n=>{const o=ls(e);P(a||l||!r[14]?.()?void 0:r[3],l=>{const r=Be(o,t),c={...r?Ye(r):{},[s]:n};P(mt(()=>l(e,t,Q(c))),s=>((e,t,s,n,a)=>{Xe(Qe(t,s,()=>(us(e,s,1),qe())),n,(t,n,l)=>P(Pt(e,s,n,l),l=>ts(e,s,t,n,l,a)),(n,a)=>cs(e,t,s,n,a,!0))})(e,o,t,s,a))},()=>ss(e,o,t,s,n,a))}),e,t,s),Ks=e=>ms(()=>Wt(e)?ns(e):0),Qs=(e,t,s)=>ms(e=>P(kt(e,q(t)?t(zs(e)):t),t=>as(e,t,s)),e),Xs=e=>(X(()=>Kt(Ve(e))),un),Ys=t=>ms(()=>{if((e=ve(t,e=>ve(e,St)))&&(Bt(t),!Fe(ge))){const e=Hs();$s(),Bs(e)}}),Zs=e=>ms(()=>{if(s=(e=>ve(e,St))(e)){const t=js();on(),nn(),s=!0,Gt(e),Ks(t)}}),$s=()=>ms(()=>mt(()=>r[7]?.())??1?Zt({},!0):0),en=e=>ms(e=>Oe(ge,e)?os(e):0,e),tn=(e,t)=>ms((e,t)=>P(Be(ge,e),s=>Oe(s,t)?rs(e,s,t):0),e,t),sn=(e,t,s,n,a)=>ms((e,t,s)=>P(Be(ge,e),l=>P(Be(l,t),o=>Oe(o,s)?cs(e,l,t,o,s,n,a):0)),e,t,s),nn=()=>ms(()=>mt(()=>r[11]?.())??1?ns({},!0):0),an=(e,t)=>ms(e=>Oe(be,e)?is(e,t):0,e),ln=()=>ms(()=>{Bt({}),e=!1}),on=()=>ms(()=>{Gt({}),s=!1}),rn=(e,t)=>{if(-1!=o){cn();const s=e();return dn(t),s}},cn=()=>(-1!=o&&o++,1==o&&(h[0]?.(),It(wt)),un),dn=e=>(o>0&&(o--,0==o&&(o=1,mt(()=>{Vs(1),Fe(O)||ys(1),ps(1),Fe(j)||Rs(1)}),e?.(un)&&(xe(O,(e,t)=>xe(e,(e,s)=>xe(e,([e],n)=>Qt(t,s,n,e,!0)))),je(O),xe(j,([e],t)=>Yt(t,e,!0)),je(j)),It(Vt[0],void 0),o=-1,Vs(0),Fe(O)||ys(0),ps(0),Fe(j)||Rs(0),h[1]?.(),It(Vt[1],void 0),h[2]?.(),o=0,n=As(),l=qs(),Z([H,J,E,L,D,O,F,N,_,j,x,k],je))),un),un={getContent:()=>[Hs(),js()],getTables:Hs,getTableIds:Js,getTable:e=>Ze(Be(ge,M(e)),Se),getTableCellIds:Es,getRowCount:Ls,getRowIds:Ds,getSortedRowIds:Os,getRow:(e,t)=>Ye(Be(Be(ge,M(e)),M(t)),Se),getCellIds:Fs,getCell:_s,getValues:js,getValueIds:xs,getValue:zs,hasTables:As,hasTable:Ns,hasTableCell:Ps,hasRow:Ws,hasCell:ks,hasValues:qs,hasValue:Us,getTablesJson:()=>pe(ge),getValuesJson:()=>pe(be),getJson:()=>pe([ge,be]),getTablesSchemaJson:()=>pe(K),getValuesSchemaJson:()=>pe(se),getSchemaJson:()=>pe([K,se]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>ms(()=>{const t=q(e)?e():e;Ht(t)&&(e=>{Mt(e,()=>P(r[0],t=>mt(()=>t(Q(e))),()=>e),([e,t])=>{(fe(e)?$s:Bs)(e),(fe(t)?nn:Ks)(t)},zt)})(t)}),setTables:Bs,setTable:(e,t)=>ms(e=>Et(t,e)?$t(e,t):0,e),setRow:(e,t,s)=>ms((e,t)=>Nt(e,t,s)?es(e,ls(e),t,s):0,e,t),addRow:(e,t,s=!0)=>rn(()=>{let n;return Nt(e,n,t)&&(e=M(e),es(e,ls(e),n=((e,t)=>{const[s]=Be(re,e);let n;do{n=s(t)}while(Oe(Be(ge,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>ms((e,t)=>{if(Nt(e,t,s,1)){const n=ls(e);he(s,(s,a)=>ss(e,n,t,a,s))}},e,t),setCell:Gs,setValues:Ks,setPartialValues:e=>ms(()=>Wt(e,1)?he(e,(e,t)=>as(t,e)):0),setValue:Qs,applyChanges:e=>ms(()=>Mt(e,()=>P(r[13],t=>mt(()=>t(Q(e))),()=>e),e=>{he(e[0],(e,t)=>z(e)?en(t):he(e,(e,s)=>z(e)?tn(t,s):he(e,(e,n)=>Qt(t,s,n,e,void 0,!0)))),he(e[1],(e,t)=>Yt(t,e))},zt)),setTablesJson:Xs,setValuesJson:e=>(X(()=>Xt(Ve(e))),un),setJson:e=>ms(()=>X(()=>{const[t,s]=Ve(e);Kt(t),Xt(s)},()=>Xs(e))),setTablesSchema:Ys,setValuesSchema:Zs,setSchema:(e,t)=>ms(()=>{Ys(e),Zs(t)}),delTables:$s,delTable:en,delRow:tn,delCell:sn,delValues:nn,delValue:an,delTablesSchema:ln,delValuesSchema:on,delSchema:()=>ms(()=>{ln(),on()}),transaction:rn,startTransaction:cn,getTransactionChanges:()=>Ss(),getTransactionLog:()=>[!Fe(O),!Fe(j),$e(O,_t,jt),$e(N),Ye(j,_t,jt),Ye(k),Ye(H),Ze(L),$e(D),Ye(_)],finishTransaction:dn,forEachTable:e=>xe(ge,(t,s)=>e(s,e=>xe(t,(t,s)=>e(s,e=>Ge(t,(t,s)=>e(t,Se(s))))))),forEachTableCell:(e,t)=>Ge(Be(ie,M(e)),t),forEachRow:(e,t)=>xe(Be(ge,M(e)),(e,s)=>t(s,t=>Ge(e,(e,s)=>t(e,Se(s))))),forEachCell:(e,t,s)=>Ge(Be(Be(ge,M(e)),M(t)),(e,t)=>s(e,Se(t))),forEachValue:e=>Ge(be,(t,s)=>e(t,Se(s))),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>oe(e)?Ms(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit,e.sorter],t,s):Ms(e,t,[s,n,a,void 0],l,o),addStartTransactionListener:e=>pt(e,wt),addWillFinishTransactionListener:e=>pt(e,Vt[0]),addDidFinishTransactionListener:e=>pt(e,Vt[1]),callListener:e=>(Rt(e),un),delListener:e=>(yt(e),un),getListenerStats:()=>({hasTables:Ot(Te),tables:Ot(we),tableIds:Ot(ye),hasTable:Ot(He),table:Ot(Ae),tableCellIds:Ot(Ne),hasTableCell:Ot(Pe,Le),rowCount:Ot(We),rowIds:Ot(ke),sortedRowIds:Ot(at),hasRow:Ot(lt,Le),row:Ot(ot,Le),cellIds:Ot(rt,Le),hasCell:Ot(ct,De),cell:Ot(it,De),invalidCell:Ot(dt,De),hasValues:Ot(gt),values:Ot(ht),valueIds:Ot(bt),hasValue:Ot(Tt),value:Ot(vt),invalidValue:Ot(ut),transaction:Ee(wt)+Ot(Vt)}),isMergeable:()=>!1,_:[At,pt,It,(e,t,s,n,a)=>h=[e,t,s,n,a],(e,t,s,n,a,l,o,c,i,d,u,g,h,b,f)=>r=[e,t,s,n,a,l,o,c,i,d,u,g,h,b,f],Qt,Yt,()=>[$e(ge),Ye(be)],()=>Ss(!0)]};return he({[g+f]:[0,Te,[],()=>[As()]],[f]:[0,we],[C]:[0,ye],[g+b]:[1,He,[Js],e=>[Ns(...e)]],[b]:[1,Ae,[Js]],[b+p]:[1,Ne,[Js]],[g+b+V]:[2,Pe,[Js,Es],e=>[Ps(...e)]],[v]:[1,We,[Js]],[w]:[1,ke,[Js]],[g+T]:[2,lt,[Js,Ds],e=>[Ws(...e)]],[T]:[2,ot,[Js,Ds]],[p]:[2,rt,[Js,Ds]],[g+V]:[3,ct,[Js,Ds,Fs],e=>[ks(...e)]],[V]:[3,it,[Js,Ds,Fs],e=>Dt(_s(...e))],InvalidCell:[3,dt],[g+y]:[0,gt,[],()=>[qs()]],[y]:[0,ht],[R]:[0,bt],[g+I]:[1,Tt,[xs],e=>[Us(...e)]],[I]:[1,vt,[xs],e=>Dt(zs(e[0]))],InvalidValue:[1,ut]},([e,t,s,n],a)=>{un["add"+a+u]=(...a)=>pt(a[e],t[a[e+1]?1:0],e>0?B(a,0,e):void 0,s,n)}),ce(un)},Nt={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},Pt=(e=t)=>[mt(e),mt(e)],Wt=(e,s)=>{let n=1,a=Pt(),l=0,o=0;const r=qe(),c=ft(),[i,d]=((e,s=Date.now)=>{let n=0,a=-1;const l=P(e,bt,()=>((e=16)=>ee(ct(new Uint8Array(e)),(e,t)=>e+ot(t),t))(5)),o=e=>{const l=n,[o,r]=z(e)||e==t?[0,0]:c(e);n=O(l,o,s()),a=n==l?n==o?O(a,r):a:n==o?r:-1},r=(e,t,s)=>ot(e/it)+ot(e/dt)+ot(e/ut)+ot(e/gt)+ot(e/ht)+ot(e/64)+ot(e)+ot(t/gt)+ot(t/ht)+ot(t/64)+ot(t)+(z(s)?l:bt(s)),c=e=>[rt(e,0)*it+rt(e,1)*dt+rt(e,2)*ut+rt(e,3)*gt+rt(e,4)*ht+64*rt(e,5)+rt(e,6),rt(e,7)*gt+rt(e,8)*ht+64*rt(e,9)+rt(e,10),e.slice(11)];return[()=>(o(),r(n,++a)),o,r,c,()=>n,()=>a,()=>l]})(e,s),g=At(),h=e=>{const t=n;return n=0,e(),n=t,I},b=(e,s=0)=>{const n={},l={},[[o,r=t,c=0],i]=e,[u,g]=a,[h,b,C]=u;let T=s?c:C,v=r;ge(o,([e,a=t,l=0],o)=>{const r=Qe(h,o,mt),[c,i,d]=r;let u=s?l:d,g=a;ge(e,(e,t)=>{const[a,l,r]=f(e,Qe(c,t,mt),Te(Te(n,o,ie),t,ie),s);u^=s?0:Pe(l?We(t,l):0,We(t,r)),g=It(g,a)}),u^=s?0:pt(i,a),yt(r,a,u),T^=s?0:Pe(d?We(o,d):0,We(o,r[2])),v=It(v,g)}),T^=s?0:pt(b,r),yt(u,r,T);const[w]=f(i,g,l,s);return d(It(v,w)),[n,l,1]},f=(e,s,n,a)=>{const[l,o=t,r=0]=e,[c,i,d]=s;let u=o,g=a?r:d;return ge(l,([e,s=t,l=0],o)=>{const r=Qe(c,o,()=>[void 0,t,0]),[,i,d]=r;var h;(!i||s>i)&&(yt(r,s,a?l:(h=s,Ne(pe(e??null)+":"+h))),r[0]=e,n[o]=e,g^=a?0:Pe(We(o,d),We(o,r[2])),u=It(u,s))}),g^=a?0:pt(i,o),yt(s,o,g),[u,d,s[2]]},C=K,T=K,v=(e=!1)=>[Mt(a[0],t=>Mt(t,t=>Mt(t,([t,s,n])=>[Se(t,0,e),s,n]))),Mt(a[1],([t,s,n])=>[Se(t,0,e),s,n])],w=(e,t=!1)=>{const[[s,n,l],[o,i,d]]=a,u=e?wt:vt,g={};xe(r,(e,n)=>P(Be(s,n),([s,a,l])=>{const o={};xe(e,(e,n)=>P(Be(s,n),([s,a,l])=>{const r={};xe(e,e=>{P(Be(s,e),([s,n,a])=>r[e]=u(t?s:Se(s),n,a))}),o[n]=u(r,a,l)})),g[n]=u(o,a,l)}));const h={};return xe(c,e=>P(Be(o,e),([s,n,a])=>h[e]=u(t?s:Se(s),n,a))),[u(g,n,l),u(h,i,d),1]},V=()=>v(),p=e=>h(()=>g.applyChanges(b(e))),I={getMergeableContent:V,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>Ye(a[0][0],Vt),getMergeableTableDiff:e=>{const t=Rt(a[0][1]),s={};return Ge(a[0][0],(n,[a,l,o])=>de(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=St([a,l],e=>St(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return ge(e,(e,s)=>P(Be(a[0][0],s),([n,,a])=>a!=e?Ge(n,(e,[,,n])=>Te(t,s,ie)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=Rt(a[0][1]),s={};return ge(e,(e,n)=>Ge(Be(a[0][0],n)?.[0],(a,[l,o,r])=>de(e,a)?r!==e[a]?Te(s,n,ie)[a]=r:0:Te(t[0],n,Rt)[0][a]=St([l,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return ge(e,(e,s)=>P(Be(a[0][0],s),([n])=>ge(e,(e,a)=>P(Be(n,a),([n,,l])=>l!==e?Ge(n,(e,[,,n])=>Te(Te(t,s,ie),a,ie)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return ge(e,(e,s)=>ge(e,(e,a)=>P(Be(t,s),([t,l])=>P(Be(t,a),([t,o])=>Ge(t,(t,[r,c,i])=>i!==e[t]?Te(Te(n,s,()=>Rt(l))[0],a,()=>Rt(o))[0][t]=[r,c]:0))))),vt(n,s)},getMergeableValueHashes:()=>Ye(a[1][0],Vt),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=Ye(t,Tt,([,,t],s)=>t==e?.[s]);return vt(n,s)},setMergeableContent:e=>h(()=>(e=>U(e)&&2==G(e)&&Ht(e[0],e=>ve(e,e=>Ht(e,e=>ve(e,e=>Ht(e,e=>ve(e,e=>Ht(e,ye),void 0,1)),void 0,1)),void 0,1))&&Ht(e[1],e=>ve(e,e=>Ht(e,ye),void 0,1)))(e)?g.transaction(()=>{g.delTables().delValues(),a=Pt(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{l=1,g.setContent(e),l=0}),I),getTransactionMergeableChanges:(e=!1)=>w(e),applyMergeableChanges:p,merge:e=>{const t=V(),s=e.getMergeableContent();return e.applyMergeableChanges(t),p(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>w(e,!0)]};return g._[3](C,T,()=>{je(r),je(c)},(e,s,a,c,d,u)=>{Ct(Qe(Qe(r,e,qe),s,ft),a),(n||d)&&(d&&(o=1),b([[{[e]:[{[s]:[{[a]:[c,l||u?t:i()]}]}]}],[{}],1]))},(e,s,a,r)=>{Ct(c,e),(n||a)&&(a&&(o=1),b([[{}],[{[e]:[s,l||r?t:i()]}],1]))}),he(g,(e,t)=>I[t]=S(t,"set")||S(t,"del")||S(t,"apply")||H(t,"Transaction")||t=="call"+u||"use"==t?(...t)=>(e(...t),I):S(t,"add")&&H(t,u)?(...s)=>{const n=Nt[B(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(I,...t),e(...s)}:"isMergeable"==t?()=>!0:e),ce(I)};export{Wt as createMergeableStore};
package/min/omni/index.js CHANGED
@@ -1 +1 @@
1
- import{addDatabaseChangeListener as e}from"expo-sqlite";import{existsSync as t,writeFileSync as a,watch as s}from"fs";import{writeFile as n,readFile as o}from"fs/promises";import{Map as r}from"yjs";import{DurableObject as i}from"cloudflare:workers";const l=e=>typeof e,c="tinybase",d="",u=",",g=l(d),w=l(!0),h=l(0),y=l(l),f="object",b="array",v="true",S="type",C="default",p="allowNull",m="utf8",R="Listener",T="Result",I="add",L="Has",E="Ids",D="Table",N=D+"s",M=D+E,O="Row",A=O+"Count",P=O+E,k="Sorted"+O+E,_="Cell",V=_+E,$="Value",x=$+"s",W=$+E,H="message",F="error",J="t",U="v",j=e=>d+e,G=(e,t)=>e.startsWith(t),q=(e,t)=>e.endsWith(t),z=(e,t)=>e?.match(t),B=(e,t=d,a)=>e.split(t,a),Q=(e,t,a)=>e.replace(t,a),Y=Promise,X=Math,K=e=>(t,a,s)=>e(t)?s?.():a(t),Z=globalThis,ee=Z.window,te=String,ae=(e,t,a)=>setInterval(e,1e3*t),se=clearInterval,ne=(e,t=0)=>setTimeout(e,1e3*t),oe=clearTimeout,re=X.max,ie=X.min,le=X.floor,ce=X.random,de=isFinite,ue=e=>null==e,ge=e=>void 0===e,we=e=>null===e,he=e=>!0===e,ye=e=>!1===e,fe=K(ue),be=K(ge),ve=e=>e==g||e==w,Se=e=>l(e)==g,Ce=e=>l(e)==y,pe=e=>Array.isArray(e),me=(e,t,a)=>e.slice(t,a),Re=e=>e.length,Te=()=>{},Ie=()=>{},Le=e=>new Y(e),Ee=async e=>Y.all(e),De=Z.structuredClone,Ne=e=>{throw Error(e)},Me=async(e,t,a)=>{try{return await e()}catch(e){t?.(e)}},Oe=(e,t)=>e.includes(t),Ae=(e,t)=>e.every(t),Pe=(e,t)=>Re(e)===Re(t)&&Ae(e,(e,a)=>t[a]===e),ke=(e,t)=>Ae(e,(a,s)=>0==s||t(e[s-1],a)<=0),_e=(e,t)=>e.sort(t),Ve=(e,t)=>e.forEach(t),$e=(e,t=d)=>e.join(t),xe=(e,t)=>e.map(t),We=e=>Fe(e,(e,t)=>e+t,0),He=e=>0==Re(e),Fe=(e,t,a)=>e.reduce(t,a),Je=(e,t)=>e.filter(t),Ue=(e,t)=>e.splice(0,t),je=(e,...t)=>e.push(...t),Ge=e=>e.pop(),qe=(e,...t)=>e.unshift(...t),ze=e=>e.shift(),Be=e=>t=>Fe(tt(t),(t,a)=>t+e(a),0),Qe=e=>e?.size??0,Ye=Be(Qe),Xe=Be(Ye),Ke=Be(Xe),Ze=(e,t)=>e?.has(t)??!1,et=e=>ge(e)||0==Qe(e),tt=e=>[...e?.values()??[]],at=e=>e.clear(),st=(e,t)=>e?.forEach(t),nt=(e,t)=>e?.delete(t),ot=Object,rt=e=>ot.getPrototypeOf(e),it=ot.isFrozen,lt=ot.entries,ct=e=>!ue(e)&&fe(rt(e),e=>e==ot.prototype||ue(rt(e)),()=>!0),dt=ot.keys,ut=ot.freeze,gt=(e=[])=>ot.fromEntries(e),wt=(...e)=>ot.assign({},...e),ht=(e,t)=>be(e,e=>e[t]),yt=(e,t)=>t in e,ft=(e,t)=>(delete e[t],e),bt=(e,t)=>Ve(lt(e),([e,a])=>t(a,e)),vt=(e,t)=>xe(lt(e),([e,a])=>t(a,e)),St=(e,t)=>gt(vt(e,(e,a)=>[a,t(e,a)])),Ct=e=>ot.values(e),pt=e=>Re(dt(e)),mt=e=>ct(e)&&0==pt(e),Rt=(e,t,a=(e,t)=>e===t)=>{const s=lt(e);return Re(s)===pt(t)&&Ae(s,([e,s])=>ct(s)?!!ct(t[e])&&Rt(t[e],s,a):a(s,t[e]))},Tt=(e,t,a)=>(yt(e,t)||(e[t]=a()),e[t]),It=(e,t,a,s=0)=>ue(e)||!ct(e)||!s&&mt(e)||it(e)?(a?.(),!1):(bt(e,(a,s)=>{t(a,s)||ft(e,s)}),!!s||!mt(e)),Lt=Map,Et=e=>new Lt(e),Dt=e=>[...e?.keys()??[]],Nt=(e,t)=>e?.get(t),Mt=(e,t)=>st(e,(e,a)=>t(a,e)),Ot=(e,t)=>xe([...e?.entries()??[]],([e,a])=>t(a,e)),At=(e,t,a)=>ge(a)?(nt(e,t),e):e?.set(t,a),Pt=(e,t,a,s)=>(Ze(e,t)?s?.(Nt(e,t)):At(e,t,a()),Nt(e,t)),kt=(e,t,a,s=At)=>(St(t,(t,s)=>a(e,s,t)),Mt(e,a=>yt(t,a)?0:s(e,a)),e),_t=(e,t,a,s)=>{const n={};return st(e,(e,o)=>{if(!a?.(e,o)){const a=t?t(e,o):e;s?.(a)||(n[o]=a)}}),n},Vt=(e,t,a)=>_t(e,e=>_t(e,t,a),et,mt),$t=(e,t,a)=>_t(e,e=>Vt(e,t,a),et,mt),xt=(e,t)=>{const a=Et();return st(e,(e,s)=>a.set(s,t?.(e)??e)),a},Wt=e=>xt(e,xt),Ht=e=>xt(e,Wt),Ft=(e,t,a,s,n=0)=>be((a?Pt:Nt)(e,t[n],n>Re(t)-2?a:Et),o=>{if(n>Re(t)-2)return s?.(o)&&At(e,t[n]),o;const r=Ft(o,t,a,s,n+1);return et(o)&&At(e,t[n]),r}),Jt=e=>new Set(pe(e)||ge(e)?e:[e]),Ut=(e,t)=>e?.add(t),jt=(e,t,a,s,n)=>{const o=e.hasRow,r=Et(),i=Et(),l=Et(),c=Et(),d=Et(),u=Et(),g=t=>be(Nt(u,t),a=>{Ve(tt(a),t=>{e.delListener(t),nt(a,t)}),At(u,t)}),w=(e,a)=>{At(r,e,a),Ze(i,e)||(At(i,e,t()),At(c,e,Et()),At(d,e,Et()),n(l))},h=e=>{At(r,e),At(i,e),At(c,e),At(d,e),g(e),n(l)};return[()=>e,()=>Dt(r),e=>Mt(i,e),e=>Ze(i,e),e=>Nt(r,e),e=>Nt(i,e),(e,t)=>At(i,e,t),w,(t,s,n,r,i)=>{w(t,s);const l=Et(),h=Et(),y=Nt(c,t),f=Nt(d,t),b=t=>{const n=a=>e.getCell(s,t,a),c=Nt(y,t),d=o(s,t)?a(r(n,t)):void 0;if(c===d||pe(c)&&pe(d)&&Pe(c,d)||At(l,t,[c,d]),!ge(i)){const e=Nt(f,t),a=o(s,t)?i(n,t):void 0;e!=a&&At(h,t,a)}},v=e=>{n(()=>{st(l,([,e],t)=>At(y,t,e)),st(h,(e,t)=>At(f,t,e))},l,h,y,f,e),at(l),at(h)};Mt(y,b),e.hasTable(s)&&Ve(e.getRowIds(s),e=>{Ze(y,e)||b(e)}),v(!0),g(t),((e,...t)=>{const a=Pt(u,e,Jt);Ve(t,e=>Ut(a,e))})(t,e.addRowListener(s,null,(e,t,a)=>b(a)),e.addTableListener(s,()=>v()))},h,e=>s(e,l),()=>Mt(u,h)]},Gt=(e,t)=>Se(e)?t=>t(e):e??(()=>t??d),qt=(e,t)=>{const a=new WeakMap;return s=>{a.has(s)||a.set(s,e(s));const n=a.get(s);return t?.(n),n}},zt=/^\d+$/,Bt=()=>{const e=[];let t=0;return[a=>(a?ze(e):null)??d+t++,t=>{zt.test(t)&&Re(e)<1e3&&je(e,t)}]},Qt=e=>{let t;const[a,s]=Bt(),n=Et();return[(s,o,r,i=[],l=()=>[])=>{t??=e();const c=a(1);return At(n,c,[s,o,r,i,l]),Ut(Ft(o,r??[d],Jt),c),c},(e,a,...s)=>Ve(((e,t=[d])=>{const a=[],s=(e,n)=>n==Re(t)?je(a,e):we(t[n])?st(e,e=>s(e,n+1)):Ve([t[n],null],t=>s(Nt(e,t),n+1));return s(e,0),a})(e,a),e=>st(e,e=>Nt(n,e)[0](t,...a??[],...s))),e=>be(Nt(n,e),([,t,a])=>(Ft(t,a??[d],void 0,t=>(nt(t,e),et(t)?1:0)),At(n,e),s(e),a)),e=>be(Nt(n,e),([e,,a=[],s,n])=>{const o=(...r)=>{const i=Re(r);i==Re(a)?e(t,...r,...n(r)):we(a[i])?Ve(s[i]?.(...r)??[],e=>o(...r,e)):o(...r,a[i])};o()})]},Yt=qt(e=>{let t,a,s,n=100,o=Et(),r=Et(),i=1;const l=Et(),c=Et(),[u,g,w]=Qt(()=>P),h=Et(),y=Et(),f=[],b=[],v=(t,a)=>{i=0,e.transaction(()=>{const[s,n]=Nt(h,a);st(s,(a,s)=>st(a,(a,n)=>st(a,(a,o)=>e._[5](s,n,o,a[t],!0)))),st(n,(a,s)=>e._[6](s,a[t],!0))}),i=1},S=e=>{At(h,e),At(y,e),g(c,[e])},C=(e,t)=>Ve(Ue(e,t??Re(e)),S),p=()=>C(f,Re(f)-n),m=()=>be(t,()=>{je(f,t),p(),C(b),t=void 0,s=1}),R=()=>{t=Ge(f),s=1};let T,I;const L=(e=d)=>(ge(t)&&(t=d+a++,At(h,t,[o,r]),O(t,e),o=Et(),r=Et(),s=1),t),E=()=>{He(f)||(qe(b,L()),v(0,t),t=Ge(f),s=1)},D=()=>{He(b)||(je(f,t),t=ze(b),v(1,t),s=1)},N=()=>{s&&(g(l),s=0)},M=e=>{const t=L(e);return N(),t},O=(e,t)=>(A(e)&&Nt(y,e)!==t&&(At(y,e,t),g(c,[e])),P),A=e=>Ze(h,e),P={setSize:e=>(n=e,p(),P),addCheckpoint:M,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...f],t,[...b]],forEachCheckpoint:e=>Mt(y,e),hasCheckpoint:A,getCheckpoint:e=>Nt(y,e),goBackward:()=>(E(),N(),P),goForward:()=>(D(),N(),P),goTo:e=>{const a=Oe(f,e)?E:Oe(b,e)?D:void 0;for(;!ge(a)&&e!=t;)a();return N(),P},addCheckpointIdsListener:e=>u(e,l),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(w(e),P),clear:()=>(C(f),C(b),ge(t)||S(t),t=void 0,a=0,M(),P),clearForward:()=>(He(b)||(C(b),g(l)),P),destroy:()=>{e.delListener(T),e.delListener(I)},getListenerStats:()=>({checkpointIds:Ye(l),checkpoint:Ye(c)}),_registerListeners:()=>{T=e.addCellListener(null,null,null,(e,t,a,s,n,r)=>{if(i){m();const e=Pt(o,t,Et),i=Pt(e,a,Et),l=Pt(i,s,()=>[r,void 0]);l[1]=n,l[0]===n&&et(At(i,s))&&et(At(e,a))&&et(At(o,t))&&R(),N()}}),I=e.addValueListener(null,(e,t,a,s)=>{if(i){m();const e=Pt(r,t,()=>[s,void 0]);e[1]=a,e[0]===a&&et(At(r,t))&&R(),N()}})}};return ut(P.clear())},e=>e._registerListeners()),Xt=B("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),Kt=Et(xe(Xt,(e,t)=>[e,t])),Zt=e=>Xt[63&e],ea=(e,t)=>Nt(Kt,e[t])??0,ta=Z.crypto?e=>Z.crypto.getRandomValues(e):e=>xe(e,()=>le(256*ce())),aa=(e=16)=>Fe(ta(new Uint8Array(e)),(e,t)=>e+Zt(t),d),sa=JSON.stringify,na=JSON.parse,oa=e=>sa(e,(e,t)=>t instanceof Map?ot.fromEntries([...t]):t),ra=e=>sa(e,(e,t)=>ge(t)?"":t),ia=e=>la(na(e)),la=e=>""===e?void 0:pe(e)?xe(e,la):ct(e)?St(e,la):e,ca=new Z.TextEncoder,da=e=>{let t=2166136261;return Ve(ca.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},ua=(e,t)=>(e^t)>>>0,ga=e=>Fe(lt(e),(e,[t,a])=>ua(e,wa(t,a)^wa(t,0)),0),wa=(e,t)=>da(e+":"+t),ha=(e,t)=>da(oa(e??null)+":"+t),ya=ha,fa=wa,ba=ga,va=wa,Sa=e=>Fe(lt(e),(e,[t,a])=>ua(e,wa(t,a)),0),Ca=wa,pa=Sa,ma=2**36,Ra=2**30,Ta=2**24,Ia=2**18,La=4096,Ea=e=>{const t=da(e);return Zt(t/Ta)+Zt(t/Ia)+Zt(t/La)+Zt(t/64)+Zt(t)},Da=(e,t=Date.now)=>{let a=0,s=-1;const n=be(e,Ea,()=>aa(5)),o=e=>{const n=a,[o,r]=ge(e)||e==d?[0,0]:i(e);a=re(n,o,t()),s=a==n?a==o?re(s,r):s:a==o?r:-1},r=(e,t,a)=>Zt(e/ma)+Zt(e/Ra)+Zt(e/Ta)+Zt(e/Ia)+Zt(e/La)+Zt(e/64)+Zt(e)+Zt(t/Ia)+Zt(t/La)+Zt(t/64)+Zt(t)+(ge(a)?n:Ea(a)),i=e=>[ea(e,0)*ma+ea(e,1)*Ra+ea(e,2)*Ta+ea(e,3)*Ia+ea(e,4)*La+64*ea(e,5)+ea(e,6),ea(e,7)*Ia+ea(e,8)*La+64*ea(e,9)+ea(e,10),e.slice(11)];return[()=>(o(),r(a,++s)),o,r,i,()=>a,()=>s,()=>n]},Na=(e,t)=>(e??0)<(t??0)?-1:1,Ma=qt(e=>{const t=Et(),a=Et(),[s,n,o]=Qt(()=>S),[r,i,l,c,u,g,w,,h,y,f,b]=jt(e,Et,e=>ge(e)?d:pe(e)?xe(e,j):j(e),s,n),v=(t,a,s)=>{const n=u(t);st(s,(t,s)=>a(s,a=>st(t,t=>a(t,a=>e.forEachCell(n,t,a)))))},S={setIndexDefinition:(e,s,o,r,i,l=Na)=>{const c=ge(i)?void 0:([e],[t])=>i(e,t);return h(e,s,(s,o,i,d,u,h)=>{let y=0;const f=Jt(),b=Jt(),v=g(e);if(st(o,([e,t],a)=>{const s=Jt(e),n=Jt(t);st(s,e=>nt(n,e)?nt(s,e):0),st(s,e=>{Ut(f,e),be(Nt(v,e),t=>{nt(t,a),et(t)&&(At(v,e),y=1)})}),st(n,e=>{Ut(f,e),Ze(v,e)||(At(v,e,Jt()),y=1),Ut(Nt(v,e),a),ge(r)||Ut(b,e)})}),s(),et(u)||(h?Mt(v,e=>Ut(b,e)):Mt(i,e=>be(Nt(d,e),e=>Ve(pe(e)?e:[e],e=>Ut(b,e)))),st(b,e=>{const t=(t,a)=>l(Nt(u,t),Nt(u,a),e),a=[...Nt(v,e)];ke(a,t)||(At(v,e,Jt(_e(a,t))),Ut(f,e))})),(y||h)&&!ge(c)){const t=[...v];ke(t,c)||(w(e,Et(_e(t,c))),y=1)}y&&n(t,[e]),st(f,t=>n(a,[e,t]))},Gt(o),be(r,Gt)),S},delIndexDefinition:e=>(y(e),S),getStore:r,getIndexIds:i,forEachIndex:e=>l((t,a)=>e(t,e=>v(t,e,a))),forEachSlice:(e,t)=>v(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>Ze(g(e),t),getTableId:u,getSliceIds:e=>Dt(g(e)),getSliceRowIds:(e,t)=>tt(Nt(g(e),t)),addIndexIdsListener:f,addSliceIdsListener:(e,a)=>s(a,t,[e]),addSliceRowIdsListener:(e,t,n)=>s(n,a,[e,t]),delListener:e=>(o(e),S),destroy:b,getListenerStats:()=>({sliceIds:Ye(t),sliceRowIds:Xe(a)})};return ut(S)}),Oa=e=>{if(we(e))return"null";if(pe(e))return b;if(ct(e))return f;const t=l(e);return ve(t)||t==h&&de(e)?t:void 0},Aa=e=>ge(e)||!ge(Oa(e)),Pa=e=>e==f||e==b,ka=e=>ct(e)||pe(e)?"�"+sa(e):e,_a=e=>Se(e)&&"�"==e[0],Va=(e,t,a)=>!a&&_a(e)?na(me(e,1)):e,$a=([e,t])=>xa(e,t),xa=(e,t)=>t?[e,t]:[e],Wa=(e,t,a)=>[e,t,a],Ha=e=>e[2],Fa=(e,t)=>t>e?(e?da(e):0)^da(t):0,Ja=(e,t)=>((e??d)>(t??d)?e:t)??d,Ua=(e,t,a)=>{t>e[1]&&(e[1]=t),e[2]=a>>>0},ja=(e=d)=>xa(gt(),e),Ga=(e=d)=>[Et(),e,0],qa=([e,t,a],s)=>[_t(e,s),t,a],za=([e,t],a=$a)=>xa(_t(e,a),t),Ba=(e,t)=>{return pe(e)&&3==Re(e)&&Se(e[1])&&(a=e[2],l(a)==h)&&de(e[2])&&t(e[0]);var a},Qa=e=>[e,e],Ya=(e,t=Ye)=>t(e[0])+t(e[1]),Xa=()=>[Et(),Et()],Ka=e=>[...e],Za=([e,t])=>e===t,es=(e,t,a)=>At(e,t,Nt(e,t)==-a?void 0:a),ts=([e,t],[a,s])=>Rt(e,a)&&Rt(t,s),as=()=>{let e,t,a=!1,s=!1,n=0,o=[],r=[],i=0;const l=Et(),c=Et(),d=Et(),u=Et(),g=Et(),w=Et(),y=Et(),f=Et(),b=Et(),v=Jt(),m=Et(),T=Et(),E=Et(),k=Et(),H=Et(),F=Et(),J=Jt(),U=Et(),G=Et(),q=Et(),z=Et(),B=Xa(),Q=Xa(),Y=Xa(),X=Xa(),K=Xa(),Z=Xa(),ee=Xa(),te=Xa(),ae=Xa(),se=Xa(),ne=Xa(),oe=Xa(),re=Xa(),ie=Xa(),le=Xa(),ce=Xa(),de=Xa(),ue=Xa(),he=Xa(),ye=Xa(),fe=Xa(),Se=Xa(),Re=Et(),Te=Xa(),[Ie,Le,Ee,Ne]=Qt(()=>cs),Ae=e=>{const t=i;i=1;const a=e();return i=t,a},ke=(e,t,a,s=Object.is)=>be(t(),t=>e===t||s(e,t)?a(t):Ae(()=>a(t))),$e=e=>{if(!It(e,(e,t)=>Oe([S,C,p],t)))return!1;const t=e[S];if(!ve(t)&&t!=h&&!Pa(t))return!1;const a=e[C];return!(we(a)&&!e[p]||(we(a)||(Oa(a)!=t?ft(e,C):e[C]=ka(a)),0))},We=pe,He=(t,a)=>(!e||Ze(E,a)||Zt(a))&&It(t,(e,t)=>Fe(a,t,e),()=>Zt(a)),Fe=(e,t,a,s)=>It(s?a:qe(a,e,t),(s,n)=>be(Je(e,t,n,s),e=>(a[n]=e,!0),()=>!1),()=>Zt(e,t)),Je=(t,a,s,n)=>e?be(Nt(Nt(E,t),s),e=>we(n)?e[p]?n:Zt(t,a,s,n,e[C]):Oa(n)===e[S]?ka(n):Pa(e[S])&&_a(n)?n:Zt(t,a,s,n,e[C]),()=>Zt(t,a,s,n)):ge(Oa(n))?Zt(t,a,s,n):ka(n),Ue=(e,t)=>It(t?e:ze(e),(t,a)=>be(Ge(a,t),t=>(e[a]=t,!0),()=>!1),()=>ea()),Ge=(e,a)=>t?be(Nt(H,e),t=>we(a)?t[p]?a:ea(e,a,t[C]):Oa(a)===t[S]?ka(a):Pa(t[S])&&_a(a)?a:ea(e,a,t[C]),()=>ea(e,a)):ge(Oa(a))?ea(e,a):ka(a),qe=(e,t,a)=>(be(Nt(k,t),([s,n])=>{st(s,(s,n)=>{yt(e,n)||(e[n]=s,be(a,e=>Ut(Pt(Pt(y,t,Et),e,Jt),n)))}),st(n,s=>{yt(e,s)||Zt(t,a,s)})}),e),ze=e=>(t&&(st(F,(t,a)=>{yt(e,a)||(e[a]=t,Ut(v,a))}),st(J,t=>{yt(e,t)||ea(t)})),e),Be=e=>kt(E,e,(e,t,a)=>{const s=Et(),n=Jt();kt(Pt(E,t,Et),a,(e,t,a)=>{At(e,t,a),be(a[C],e=>At(s,t,e),()=>Ut(n,t))}),At(k,t,[s,n])},(e,t)=>{At(E,t),At(k,t)}),tt=e=>kt(H,e,(e,t,a)=>{At(H,t,a),be(a[C],e=>At(F,t,e),()=>Ut(J,t))},(e,t)=>{At(H,t),At(F,t),nt(J,t)}),ot=e=>mt(e)?ja():$a(e),rt=(e,t,a,s,n,o)=>ge(s)?za(e,t,a,!0,n):xa(e,t,a,s,n,o),it=e=>mt(e)?Ba():Wa(e),lt=(e,t,a)=>ge(t)?ss(e,a):Ha(e,t,a),dt=(e,t)=>ke(e,()=>t?e:be(o[1],t=>Ae(()=>t(De(e))),()=>e),e=>kt(q,e,(e,t,a)=>gt(t,a),(e,t)=>Tt(t)),Rt),gt=(e,t,a)=>ke(t,()=>a?t:be(o[2],a=>Ae(()=>a(e,De(t))),()=>t),t=>kt(Pt(q,e,()=>(Gt(e,1),At(U,e,Bt()),At(G,e,Et()),Et())),t,(t,a,s)=>wt(e,t,a,s),(t,a)=>Lt(e,t,a)),Rt),wt=(e,t,a,s,n)=>ke(s,()=>n?s:be(o[3],t=>Ae(()=>t(e,a,De(s))),()=>s),s=>kt(Pt(t,a,()=>(qt(e,a,1),Et())),s,(t,s,n)=>ht(e,a,t,s,n),(s,o)=>Ft(e,t,a,s,o,n)),Rt),ht=(e,t,a,s,n,r)=>ke(n,()=>be(r?void 0:o[4],a=>Ae(()=>a(e,t,s,n)),()=>n),n=>{Ze(a,s)||zt(e,t,s,1);const o=Nt(a,s);n!==o&&(Yt(e,t,s,o,n),At(a,s,n))}),bt=(e,t,a,s,n,o)=>be(Nt(t,a),t=>ht(e,a,t,s,n,o),()=>{const r=Et();At(t,a,r),qt(e,a,1),St(qe({[s]:n},e,a),(t,s)=>ht(e,a,r,s,t,o))}),vt=(e,t)=>ke(e,()=>t?e:be(o[5],t=>Ae(()=>t(De(e))),()=>e),e=>kt(z,e,(e,t,a)=>Ct(t,a),(e,t)=>jt(t)),Rt),Ct=(e,t,a)=>ke(t,()=>be(a?void 0:o[6],a=>Ae(()=>a(e,t)),()=>t),t=>{Ze(z,e)||Xt(e,1);const a=Nt(z,e);t!==a&&(Kt(e,a,t),At(z,e,t))}),pt=e=>Pt(q,e,()=>(Gt(e,1),At(U,e,Bt()),At(G,e,Et()),Et())),Tt=e=>Ae(()=>o[8]?.(e))??1?gt(e,{},!0):Nt(q,e),Lt=(e,t,a)=>{if(Ae(()=>o[9]?.(e,a))??1){const[,s]=Nt(U,e);s(a),wt(e,t,a,{},!0)}},Ft=(e,t,a,s,n,r,i)=>{const l=Nt(Nt(k,e)?.[0],n);if(!ge(l)&&!r)return ht(e,a,s,n,l);if(i||(Ae(()=>o[10]?.(e,a,n))??1)){const o=t=>{Yt(e,a,t,Nt(s,t)),zt(e,a,t,-1),At(s,t)};ge(l)?o(n):Mt(s,o),et(s)&&(qt(e,a,-1),et(At(t,a))&&(Gt(e,-1),At(q,e),At(U,e),At(G,e)))}},jt=(e,t)=>{const a=Nt(F,e);if(!ge(a))return Ct(e,a);(t||(Ae(()=>o[12]?.(e))??1))&&(Kt(e,Nt(z,e)),Xt(e,-1),At(z,e))},Gt=(e,t)=>es(l,e,t),qt=(e,t,a)=>es(Pt(u,e,Et),t,a)&&At(d,e,Pt(d,e,()=>0)+a),zt=(e,t,a,s)=>{const n=Nt(G,e),o=Nt(n,a)??0;(0==o&&1==s||1==o&&-1==s)&&es(Pt(c,e,Et),a,s),At(n,a,o!=-s?o+s:void 0),es(Pt(Pt(g,e,Et),t,Et),a,s)},Yt=(e,t,a,s,n)=>{const o=Ze(Nt(Nt(y,e),t),a)&&ge(s)?1:0;Pt(Pt(Pt(w,e,Et),t,Et),a,()=>[s,0])[1]=n,r[3]?.(e,t,a,n,i,o),nt(Nt(Nt(y,e),t),a)},Xt=(e,t)=>es(f,e,t),Kt=(e,t,a)=>{const s=Ze(v,e)&&ge(t)?1:0;Pt(b,e,()=>[t,0])[1]=a,r[4]?.(e,a,i,s),nt(v,e)},Zt=(e,t,a,s,n)=>(je(Pt(Pt(Pt(m,e,Et),t,Et),a,()=>[]),s),n),ea=(e,t,a)=>(je(Pt(T,e,()=>[]),t),a),ta=(e,t,a)=>be(Nt(Nt(Nt(w,e),t),a),([e,t])=>[!0,Va(e),Va(t)],()=>[!1,...Qa(Ca(e,t,a))]),aa=e=>be(Nt(b,e),([e,t])=>[!0,Va(e),Va(t)],()=>[!1,...Qa(Ra(e))]),sa=e=>et(m)||et(ce[e])?0:st(e?Ht(m):m,(t,a)=>st(t,(t,s)=>st(t,(t,n)=>Le(ce[e],[a,s,n],t)))),ra=e=>et(T)||et(de[e])?0:st(e?xt(T):T,(t,a)=>Le(de[e],[a],t)),ia=(e,t,a,s)=>{if(!et(e))return Le(t,s,()=>_t(e)),Mt(e,(e,t)=>Le(a,[...s??[],e],1==t)),1},la=e=>{const t=!et(B[e]),s=!et(se[e]),n=!(et(re[e])&&et(ie[e])&&et(ae[e])&&et(ne[e])&&et(Z[e])&&et(ee[e])&&et(te[e])&&!s&&et(Y[e])&&et(X[e])),o=!(et(le[e])&&et(oe[e])&&et(K[e])&&et(Q[e]));if(t||n||o){const i=e?[xt(l),Wt(c),xt(d),Wt(u),Ht(g),(r=w,xt(r,e=>xt(e,e=>xt(e,Ka))))]:[l,c,d,u,g,w];if(t){const t=Ta();t!=a&&Le(B[e],void 0,t)}if(n){ia(i[0],Y[e],X[e]),st(i[1],(t,a)=>ia(t,Z[e],ee[e],[a])),st(i[2],(t,a)=>{0!=t&&Le(te[e],[a],fa(a))});const t=Jt();st(i[3],(a,n)=>{ia(a,ae[e],ne[e],[n])&&s&&(Le(se[e],[n,null]),Ut(t,n))}),s&&st(i[5],(a,s)=>{if(!Ze(t,s)){const t=Jt();st(a,e=>st(e,([a,s],n)=>s!==a?Ut(t,n):nt(e,n))),st(t,t=>Le(se[e],[s,t]))}}),st(i[4],(t,a)=>st(t,(t,s)=>ia(t,re[e],ie[e],[a,s])))}if(o){let t;st(i[5],(a,s)=>{let n;st(a,(a,o)=>{let r;st(a,([a,i],l)=>{i!==a&&(Le(le[e],[s,o,l],Va(i),Va(a),ta),t=n=r=1)}),r&&Le(oe[e],[s,o],ta)}),n&&Le(K[e],[s],ta)}),t&&Le(Q[e],void 0,ta)}}var r},ca=e=>{const t=!et(ue[e]),a=!et(ye[e])||!et(fe[e]),n=!et(Se[e])||!et(he[e]);if(t||a||n){const o=e?[xt(f),xt(b,Ka)]:[f,b];if(t){const t=Ma();t!=s&&Le(ue[e],void 0,t)}if(a&&ia(o[0],ye[e],fe[e]),n){let t;st(o[1],([a,s],n)=>{s!==a&&(Le(Se[e],[n],Va(s),Va(a),aa),t=1)}),t&&Le(he[e],void 0,aa)}}},da=(e,...t)=>(rs(()=>e(...xe(t,j))),cs),ua=(e,t,a,s,n)=>{const[o,r,i,l]=a;let c=va(e,t,o,r,i,l);return Ie(()=>{const a=va(e,t,o,r,i,l);Pe(a,c)||(c=a,s(cs,e,t,o,r,i,c))},se[n?1:0],[e,t],[ha])},ga=(e=!1)=>[_t(w,(t,a)=>-1===Nt(l,a)?void 0:_t(t,(t,s)=>-1===Nt(Nt(u,a),s)?void 0:_t(t,([,t])=>Va(t,0,e),e=>Za(e)),et,mt),et,mt),_t(b,([,t])=>Va(t,0,e),e=>Za(e)),1],wa=()=>$t(q,Va),ha=()=>Dt(q),ya=e=>Dt(Nt(G,j(e))),fa=e=>Qe(Nt(q,j(e))),ba=e=>Dt(Nt(q,j(e))),va=(e,t,a,s=0,n,o=Na)=>ct(e)?va(e.tableId,e.cellId,e.descending,e.offset,e.limit,e.sorter):xe(me(_e(Ot(Nt(q,j(e)),(e,a)=>[ge(t)?a:Va(Nt(e,j(t))),a]),([e],[t])=>o(e,t)*(a?-1:1)),s,ge(n)?n:s+n),([,e])=>e),Sa=(e,t)=>Dt(Nt(Nt(q,j(e)),j(t))),Ca=(e,t,a)=>Va(Nt(Nt(Nt(q,j(e)),j(t)),j(a))),pa=()=>_t(z,Va),ma=()=>Dt(z),Ra=e=>Va(Nt(z,j(e))),Ta=()=>!et(q),Ia=e=>Ze(q,j(e)),La=(e,t)=>Ze(Nt(G,j(e)),j(t)),Ea=(e,t)=>Ze(Nt(q,j(e)),j(t)),Da=(e,t,a)=>Ze(Nt(Nt(q,j(e)),j(t)),j(a)),Ma=()=>!et(z),Aa=e=>Ze(z,j(e)),$a=e=>da(()=>(e=>It(e,He,Zt))(e)?dt(e):0),xa=(e,t,a,s,n,r)=>da((e,t,a)=>be(Je(e,t,a,Ce(s)?s(Ca(e,t,a)):s),s=>{const i=pt(e);be(n||r||!o[14]?.()?void 0:o[3],o=>{const r=Nt(i,t),l={...r?_t(r):{},[a]:s};be(Ae(()=>o(e,t,De(l))),a=>((e,t,a,s,n)=>{kt(Pt(t,a,()=>(qt(e,a,1),Et())),s,(t,s,o)=>be(Je(e,a,s,o),o=>ht(e,a,t,s,o,n)),(s,n)=>Ft(e,t,a,s,n,!0))})(e,i,t,a,n))},()=>bt(e,i,t,a,s,n))}),e,t,a),Wa=e=>da(()=>Ue(e)?vt(e):0),Ha=(e,t,a)=>da(e=>be(Ge(e,Ce(t)?t(Ra(e)):t),t=>Ct(e,t,a)),e),Fa=e=>(Me(()=>ot(na(e))),cs),Ja=t=>da(()=>{if((e=It(t,e=>It(e,$e)))&&(Be(t),!et(q))){const e=wa();ja(),$a(e)}}),Ua=e=>da(()=>{if(t=(e=>It(e,$e))(e)){const a=pa();os(),Ba(),t=!0,tt(e),Wa(a)}}),ja=()=>da(()=>Ae(()=>o[7]?.())??1?dt({},!0):0),Ga=e=>da(e=>Ze(q,e)?Tt(e):0,e),qa=(e,t)=>da((e,t)=>be(Nt(q,e),a=>Ze(a,t)?Lt(e,a,t):0),e,t),za=(e,t,a,s,n)=>da((e,t,a)=>be(Nt(q,e),o=>be(Nt(o,t),r=>Ze(r,a)?Ft(e,o,t,r,a,s,n):0)),e,t,a),Ba=()=>da(()=>Ae(()=>o[11]?.())??1?vt({},!0):0),ss=(e,t)=>da(e=>Ze(z,e)?jt(e,t):0,e),ns=()=>da(()=>{Be({}),e=!1}),os=()=>da(()=>{tt({}),t=!1}),rs=(e,t)=>{if(-1!=n){is();const a=e();return ls(t),a}},is=()=>(-1!=n&&n++,1==n&&(r[0]?.(),Le(Re)),cs),ls=e=>(n>0&&(n--,0==n&&(n=1,Ae(()=>{sa(1),et(w)||la(1),ra(1),et(b)||ca(1)}),e?.(cs)&&(st(w,(e,t)=>st(e,(e,a)=>st(e,([e],s)=>rt(t,a,s,e,!0)))),at(w),st(b,([e],t)=>lt(t,e,!0)),at(b)),Le(Te[0],void 0),n=-1,sa(0),et(w)||la(0),ra(0),et(b)||ca(0),r[1]?.(),Le(Te[1],void 0),r[2]?.(),n=0,a=Ta(),s=Ma(),Ve([l,c,d,u,g,w,y,m,f,b,v,T],at))),cs),cs={getContent:()=>[wa(),pa()],getTables:wa,getTableIds:ha,getTable:e=>Vt(Nt(q,j(e)),Va),getTableCellIds:ya,getRowCount:fa,getRowIds:ba,getSortedRowIds:va,getRow:(e,t)=>_t(Nt(Nt(q,j(e)),j(t)),Va),getCellIds:Sa,getCell:Ca,getValues:pa,getValueIds:ma,getValue:Ra,hasTables:Ta,hasTable:Ia,hasTableCell:La,hasRow:Ea,hasCell:Da,hasValues:Ma,hasValue:Aa,getTablesJson:()=>oa(q),getValuesJson:()=>oa(z),getJson:()=>oa([q,z]),getTablesSchemaJson:()=>oa(E),getValuesSchemaJson:()=>oa(H),getSchemaJson:()=>oa([E,H]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>da(()=>{const t=Ce(e)?e():e;We(t)&&(e=>{ke(e,()=>be(o[0],t=>Ae(()=>t(De(e))),()=>e),([e,t])=>{(mt(e)?ja:$a)(e),(mt(t)?Ba:Wa)(t)},ts)})(t)}),setTables:$a,setTable:(e,t)=>da(e=>He(t,e)?gt(e,t):0,e),setRow:(e,t,a)=>da((e,t)=>Fe(e,t,a)?wt(e,pt(e),t,a):0,e,t),addRow:(e,t,a=!0)=>rs(()=>{let s;return Fe(e,s,t)&&(e=j(e),wt(e,pt(e),s=((e,t)=>{const[a]=Nt(U,e);let s;do{s=a(t)}while(Ze(Nt(q,e),s));return s})(e,a?1:0),t)),s}),setPartialRow:(e,t,a)=>da((e,t)=>{if(Fe(e,t,a,1)){const s=pt(e);St(a,(a,n)=>bt(e,s,t,n,a))}},e,t),setCell:xa,setValues:Wa,setPartialValues:e=>da(()=>Ue(e,1)?St(e,(e,t)=>Ct(t,e)):0),setValue:Ha,applyChanges:e=>da(()=>ke(e,()=>be(o[13],t=>Ae(()=>t(De(e))),()=>e),e=>{St(e[0],(e,t)=>ge(e)?Ga(t):St(e,(e,a)=>ge(e)?qa(t,a):St(e,(e,s)=>rt(t,a,s,e,void 0,!0)))),St(e[1],(e,t)=>lt(t,e))},ts)),setTablesJson:Fa,setValuesJson:e=>(Me(()=>it(na(e))),cs),setJson:e=>da(()=>Me(()=>{const[t,a]=na(e);ot(t),it(a)},()=>Fa(e))),setTablesSchema:Ja,setValuesSchema:Ua,setSchema:(e,t)=>da(()=>{Ja(e),Ua(t)}),delTables:ja,delTable:Ga,delRow:qa,delCell:za,delValues:Ba,delValue:ss,delTablesSchema:ns,delValuesSchema:os,delSchema:()=>da(()=>{ns(),os()}),transaction:rs,startTransaction:is,getTransactionChanges:()=>ga(),getTransactionLog:()=>[!et(w),!et(b),$t(w,Ka,Za),$t(m),_t(b,Ka,Za),_t(T),_t(l),Vt(u),$t(g),_t(f)],finishTransaction:ls,forEachTable:e=>st(q,(t,a)=>e(a,e=>st(t,(t,a)=>e(a,e=>Mt(t,(t,a)=>e(t,Va(a))))))),forEachTableCell:(e,t)=>Mt(Nt(G,j(e)),t),forEachRow:(e,t)=>st(Nt(q,j(e)),(e,a)=>t(a,t=>Mt(e,(e,a)=>t(e,Va(a))))),forEachCell:(e,t,a)=>Mt(Nt(Nt(q,j(e)),j(t)),(e,t)=>a(e,Va(t))),forEachValue:e=>Mt(z,(t,a)=>e(t,Va(a))),addSortedRowIdsListener:(e,t,a,s,n,o,r)=>ct(e)?ua(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit,e.sorter],t,a):ua(e,t,[a,s,n,void 0],o,r),addStartTransactionListener:e=>Ie(e,Re),addWillFinishTransactionListener:e=>Ie(e,Te[0]),addDidFinishTransactionListener:e=>Ie(e,Te[1]),callListener:e=>(Ne(e),cs),delListener:e=>(Ee(e),cs),getListenerStats:()=>({hasTables:Ya(B),tables:Ya(Q),tableIds:Ya(Y),hasTable:Ya(X),table:Ya(K),tableCellIds:Ya(Z),hasTableCell:Ya(ee,Xe),rowCount:Ya(te),rowIds:Ya(ae),sortedRowIds:Ya(se),hasRow:Ya(ne,Xe),row:Ya(oe,Xe),cellIds:Ya(re,Xe),hasCell:Ya(ie,Ke),cell:Ya(le,Ke),invalidCell:Ya(ce,Ke),hasValues:Ya(ue),values:Ya(he),valueIds:Ya(ye),hasValue:Ya(fe),value:Ya(Se),invalidValue:Ya(de),transaction:Ye(Re)+Ya(Te)}),isMergeable:()=>!1,_:[as,Ie,Le,(e,t,a,s,n)=>r=[e,t,a,s,n],(e,t,a,s,n,r,i,l,c,d,u,g,w,h,y)=>o=[e,t,a,s,n,r,i,l,c,d,u,g,w,h,y],rt,lt,()=>[$t(q),_t(z)],()=>ga(!0)]};return St({[L+N]:[0,B,[],()=>[Ta()]],[N]:[0,Q],[M]:[0,Y],[L+D]:[1,X,[ha],e=>[Ia(...e)]],[D]:[1,K,[ha]],[D+V]:[1,Z,[ha]],[L+D+_]:[2,ee,[ha,ya],e=>[La(...e)]],[A]:[1,te,[ha]],[P]:[1,ae,[ha]],[L+O]:[2,ne,[ha,ba],e=>[Ea(...e)]],[O]:[2,oe,[ha,ba]],[V]:[2,re,[ha,ba]],[L+_]:[3,ie,[ha,ba,Sa],e=>[Da(...e)]],[_]:[3,le,[ha,ba,Sa],e=>Qa(Ca(...e))],InvalidCell:[3,ce],[L+x]:[0,ue,[],()=>[Ma()]],[x]:[0,he],[W]:[0,ye],[L+$]:[1,fe,[ma],e=>[Aa(...e)]],[$]:[1,Se,[ma],e=>Qa(Ra(e[0]))],InvalidValue:[1,de]},([e,t,a,s],n)=>{cs[I+n+R]=(...n)=>Ie(n[e],t[n[e+1]?1:0],e>0?me(n,0,e):void 0,a,s)}),ut(cs)},ss={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},ns=(e=d)=>[Ga(e),Ga(e)],os=(e,t)=>{let a=1,s=ns(),n=0,o=0;const r=Et(),i=Jt(),[l,c]=Da(e,t),u=as(),g=e=>{const t=a;return a=0,e(),a=t,p},w=(e,t=0)=>{const a={},n={},[[o,r=d,i=0],l]=e,[u,g]=s,[w,y,f]=u;let b=t?i:f,v=r;bt(o,([e,s=d,n=0],o)=>{const r=Pt(w,o,Ga),[i,l,c]=r;let u=t?n:c,g=s;bt(e,(e,s)=>{const[n,r,l]=h(e,Pt(i,s,Ga),Tt(Tt(a,o,gt),s,gt),t);u^=t?0:ua(r?wa(s,r):0,wa(s,l)),g=Ja(g,n)}),u^=t?0:Fa(l,s),Ua(r,s,u),b^=t?0:ua(c?wa(o,c):0,wa(o,r[2])),v=Ja(v,g)}),b^=t?0:Fa(y,r),Ua(u,r,b);const[S]=h(l,g,n,t);return c(Ja(v,S)),[a,n,1]},h=(e,t,a,s)=>{const[n,o=d,r=0]=e,[i,l,c]=t;let u=o,g=s?r:c;return bt(n,([e,t=d,n=0],o)=>{const r=Pt(i,o,()=>[void 0,d,0]),[,l,c]=r;(!l||t>l)&&(Ua(r,t,s?n:ha(e,t)),r[0]=e,a[o]=e,g^=s?0:ua(wa(o,c),wa(o,r[2])),u=Ja(u,t))}),g^=s?0:Fa(l,o),Ua(t,o,g),[u,c,t[2]]},y=Ie,f=Ie,b=(e=!1)=>[qa(s[0],t=>qa(t,t=>qa(t,([t,a,s])=>[Va(t,0,e),a,s]))),qa(s[1],([t,a,s])=>[Va(t,0,e),a,s])],v=(e,t=!1)=>{const[[a,n,o],[l,c,d]]=s,u=e?Wa:xa,g={};st(r,(e,s)=>be(Nt(a,s),([a,n,o])=>{const r={};st(e,(e,s)=>be(Nt(a,s),([a,n,o])=>{const i={};st(e,e=>{be(Nt(a,e),([a,s,n])=>i[e]=u(t?a:Va(a),s,n))}),r[s]=u(i,n,o)})),g[s]=u(r,n,o)}));const w={};return st(i,e=>be(Nt(l,e),([a,s,n])=>w[e]=u(t?a:Va(a),s,n))),[u(g,n,o),u(w,c,d),1]},S=()=>b(),C=e=>g(()=>u.applyChanges(w(e))),p={getMergeableContent:S,getMergeableContentHashes:()=>[s[0][2],s[1][2]],getMergeableTableHashes:()=>_t(s[0][0],Ha),getMergeableTableDiff:e=>{const t=ja(s[0][1]),a={};return Mt(s[0][0],(s,[n,o,r])=>yt(e,s)?r!=e[s]?a[s]=r:0:t[0][s]=za([n,o],e=>za(e))),[t,a]},getMergeableRowHashes:e=>{const t={};return bt(e,(e,a)=>be(Nt(s[0][0],a),([s,,n])=>n!=e?Mt(s,(e,[,,s])=>Tt(t,a,gt)[e]=s):0)),t},getMergeableRowDiff:e=>{const t=ja(s[0][1]),a={};return bt(e,(e,n)=>Mt(Nt(s[0][0],n)?.[0],(s,[o,r,i])=>yt(e,s)?i!==e[s]?Tt(a,n,gt)[s]=i:0:Tt(t[0],n,ja)[0][s]=za([o,r]))),[t,a]},getMergeableCellHashes:e=>{const t={};return bt(e,(e,a)=>be(Nt(s[0][0],a),([s])=>bt(e,(e,n)=>be(Nt(s,n),([s,,o])=>o!==e?Mt(s,(e,[,,s])=>Tt(Tt(t,a,gt),n,gt)[e]=s):0)))),t},getMergeableCellDiff:e=>{const[[t,a]]=s,n={};return bt(e,(e,a)=>bt(e,(e,s)=>be(Nt(t,a),([t,o])=>be(Nt(t,s),([t,r])=>Mt(t,(t,[i,l,c])=>c!==e[t]?Tt(Tt(n,a,()=>ja(o))[0],s,()=>ja(r))[0][t]=[i,l]:0))))),xa(n,a)},getMergeableValueHashes:()=>_t(s[1][0],Ha),getMergeableValueDiff:e=>{const[,[t,a]]=s,n=_t(t,$a,([,,t],a)=>t==e?.[a]);return xa(n,a)},setMergeableContent:e=>g(()=>(e=>pe(e)&&2==Re(e)&&Ba(e[0],e=>It(e,e=>Ba(e,e=>It(e,e=>Ba(e,e=>It(e,e=>Ba(e,Aa),void 0,1)),void 0,1)),void 0,1))&&Ba(e[1],e=>It(e,e=>Ba(e,Aa),void 0,1)))(e)?u.transaction(()=>{u.delTables().delValues(),s=ns(),u.applyChanges(w(e,1))}):0),setDefaultContent:e=>(u.transaction(()=>{n=1,u.setContent(e),n=0}),p),getTransactionMergeableChanges:(e=!1)=>v(e),applyMergeableChanges:C,merge:e=>{const t=S(),a=e.getMergeableContent();return e.applyMergeableChanges(t),C(a)},__:[()=>{const e=o;return o=0,e},()=>b(!0),e=>v(e,!0)]};return u._[3](y,f,()=>{at(r),at(i)},(e,t,s,i,c,u)=>{Ut(Pt(Pt(r,e,Et),t,Jt),s),(a||c)&&(c&&(o=1),w([[{[e]:[{[t]:[{[s]:[i,n||u?d:l()]}]}]}],[{}],1]))},(e,t,s,r)=>{Ut(i,e),(a||s)&&(s&&(o=1),w([[{}],[{[e]:[t,n||r?d:l()]}],1]))}),St(u,(e,t)=>p[t]=G(t,"set")||G(t,"del")||G(t,"apply")||q(t,"Transaction")||t=="call"+R||"use"==t?(...t)=>(e(...t),p):G(t,I)&&q(t,R)?(...a)=>{const s=ss[me(t,3,-8)]??0,n=a[s];return a[s]=(e,...t)=>n(p,...t),e(...a)}:"isMergeable"==t?()=>!0:e),ut(p)},rs=Et([["avg",[(e,t)=>We(e)/t,(e,t,a)=>e+(t-e)/(a+1),(e,t,a)=>e+(e-t)/(a-1),(e,t,a,s)=>e+(t-a)/s]],["max",[e=>re(...e),(e,t)=>re(t,e),(e,t)=>t==e?void 0:e,(e,t,a)=>a==e?void 0:re(t,e)]],["min",[e=>ie(...e),(e,t)=>ie(t,e),(e,t)=>t==e?void 0:e,(e,t,a)=>a==e?void 0:ie(t,e)]],["sum",[e=>We(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,a)=>e-a+t]]]),is=(e,t,a,s,n,o=!1)=>{if(et(a))return;const[r,i,l,c]=n;return o||=ge(e),st(s,([a,s])=>{o||(e=ge(a)?i?.(e,s,t++):ge(s)?l?.(e,a,t--):c?.(e,s,a,t),o||=ge(e))}),o?r(tt(a),Qe(a)):e},ls=qt(e=>{const t=Et(),[a,s,n]=Qt(()=>b),[o,r,i,l,c,u,g,,w,h,y,f]=jt(e,Te,e=>isNaN(e)||ge(e)||he(e)||ye(e)||e===d?void 0:1*e,a,s),b={setMetricDefinition:(e,a,n,o,r,i,l)=>{const c=Ce(n)?[n,r,i,l]:Nt(rs,n)??Nt(rs,"sum");return w(e,a,(a,n,o,r,i,l)=>{const d=u(e),w=Qe(r);l||=ge(d),a();let h=is(d,w,r,n,c,l);de(h)||(h=void 0),h!=d&&(g(e,h),s(t,[e],h,d))},Gt(o,1)),b},delMetricDefinition:e=>(h(e),b),getStore:o,getMetricIds:r,forEachMetric:i,hasMetric:l,getTableId:c,getMetric:u,addMetricIdsListener:y,addMetricListener:(e,s)=>a(s,t,[e]),delListener:e=>(n(e),b),destroy:f,getListenerStats:()=>({metric:Ye(t)})};return ut(b)}),cs=(e,t,...a)=>Fe(e,(e,t)=>ge(e)?e:t(...a,e),t),ds=(e,...t)=>Ae(e,e=>e(...t)),us=qt(e=>{const t=e=>t=>(je(e,t),M),a=[],s=[],n=[],o=[],r=[],i=[],l=[],c=[],d=[],u=[],g=[],w=[],h=[],y=[],f=t(a),b=t(s),v=t(n),S=t(o),C=t(r),p=t(i),m=t(l),R=t(c),T=t(d),I=t(u),L=t(g),E=t(w),D=t(h),N=t(y),M=ut({getStore:()=>e,addWillSetContentCallback:f,addWillSetTablesCallback:b,addWillSetTableCallback:v,addWillSetRowCallback:S,addWillSetCellCallback:C,addWillSetValuesCallback:p,addWillSetValueCallback:m,addWillDelTablesCallback:R,addWillDelTableCallback:T,addWillDelRowCallback:I,addWillDelCellCallback:L,addWillDelValuesCallback:E,addWillDelValueCallback:D,addWillApplyChangesCallback:N,destroy:()=>{}});return e._[4](e=>cs(a,e),e=>cs(s,e),(e,t)=>cs(n,t,e),(e,t,a)=>cs(o,a,e,t),(e,t,a,s)=>cs(r,s,e,t,a),e=>cs(i,e),(e,t)=>cs(l,t,e),()=>ds(c),e=>ds(d,e),(e,t)=>ds(u,e,t),(e,t,a)=>ds(g,e,t,a),()=>ds(w),e=>ds(h,e),e=>cs(y,e),()=>o.length>0),M}),gs={Idle:0,Loading:1,Saving:2},ws={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},hs=Et(),ys=Et(),fs=(e,t,a,s,n,o,r,i={},l=0,c=[])=>{let d,u,g,w=0,h=0,y=0;Pt(hs,c,()=>0),Pt(ys,c,()=>[]);const f=Et(),[b,v,S,C,p]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.__[1],()=>t.__[2](!a),([[e],[t]])=>!mt(e)||!mt(t),t.setDefaultContent]:2!=e?[0,t._[7],t._[8],([e,t])=>!mt(e)||!mt(t),t.setContent]:Ne("Store type not supported by this Persister"))(r,e,l),[m,R,T]=Qt(()=>$),I=e=>{e!=w&&(w=e,R(f,void 0,w))},L=t=>{(b&&pe(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},E=async()=>{k()&&e.__?.[0]?.()&&await O()},D=async e=>(2!=w&&(I(1),h++,await V(async()=>{await Me(async()=>{const a=await t();pe(a)?L(a):ge(a)&&e?p(e):ge(a)||Ne("Content is not an array: "+a)},t=>{o?.(t),e&&p(e)}),I(0),await E()})),$),N=async e=>(M(),await D(e),await Me(async()=>u=await s(async(e,t)=>{t||e?2!=w&&(I(1),h++,L(t??e),I(0),await E()):await D()}),o),$),M=async()=>(u&&(await Me(()=>n(u),o),u=void 0),$),O=async e=>(1!=w&&(I(2),y++,await V(async()=>{await Me(()=>a(v,e),o),I(0)})),$),A=async()=>(P(),await O(),g=e.addDidFinishTransactionListener(()=>{const e=S();C(e)&&O(e)}),$),P=async()=>(g&&(e.delListener(g),g=void 0),$),k=()=>!ge(g),_=async(e=!1)=>{const[t,a]=e?[P,M]:[M,P];return await t(),await a(),$},V=async(...e)=>(je(Nt(ys,c),...e),await(async()=>{if(!Nt(hs,c)){for(At(hs,c,1);!ge(d=ze(Nt(ys,c)));)await Me(d,o);At(hs,c,0)}})(),$),$={load:D,startAutoLoad:N,stopAutoLoad:M,isAutoLoading:()=>!ge(u),save:O,startAutoSave:A,stopAutoSave:P,isAutoSaving:k,startAutoPersisting:async(e,t=!1)=>{const[a,s]=t?[A,N]:[N,A];return await a(e),await s(e),$},stopAutoPersisting:_,getStatus:()=>w,addStatusListener:e=>m(e,f),delListener:t=>(T(t),e),schedule:V,getStore:()=>e,destroy:()=>(Ue(Nt(ys,c)),_()),getStats:()=>({loads:h,saves:y}),...i};return ut($)},bs="_",vs="_id",Ss="SELECT",Cs="WHERE",ps="TABLE",ms="INSERT",Rs="DELETE",Ts="UPDATE",Is="ALTER "+ps,Ls="FROM",Es=Rs+" "+Ls,Ds=Ss+"*"+Ls,Ns="pragma_",Ms="data_version",Os="schema_version",As="pragma_table_",Ps="CREATE ",ks=Ps+ps,_s="OR REPLACE ",Vs="FUNCTION",$s="$tableName",xs=(e,t)=>t?async(a,s)=>(t(a,s),await e(a,s)):e,Ws=e=>$e(xe(B(e,"."),e=>`"${Q(e,/"/g,'""')}"`),"."),Hs=(...e)=>Ws($e(e,"_")),Fs=(...e)=>$e(xe(e,Ws),u),Js=(e,t=[1])=>$e(xe(e,()=>"$"+t[0]++),u),Us=(e,t=v)=>Cs+`(${Q(t,$s,Ws(e))})`,js="ColumnName",Gs="store",qs="json",zs=Gs+"TableName",Bs=Gs+"Id"+js,Qs=Gs+js,Ys="autoLoadIntervalSeconds",Xs="rowId"+js,Ks="tableId",Zs="tableName",en="deleteEmptyColumns",tn="deleteEmptyTable",an="condition",sn={mode:qs,[Ys]:1},nn={load:0,save:0,[Zs]:c+"_values"},on=e=>pe(e)?e:void 0,rn=e=>he(e)||pe(e),ln=(e,t,a,s,n)=>{const o=Et();return St(e,(e,r)=>{const i=me(Ct(wt(t,Se(e)?{[a]:e}:e)),0,pt(t));we(i[0])||s(r,i[0])||(n(r,i[0]),At(o,r,i))}),o},cn=e=>{const t=(e=>wt(sn,Se(e)?{[zs]:e}:e??{}))(e),a=t[Ys];if(t.mode==qs){const e=t[zs]??c;return[1,a,[e,t[Bs]??vs,t[Qs]??Gs],Jt(e)]}const{tables:{load:s={},save:n={}}={},values:o={}}=t,r=wt(nn,o),{load:i,save:l}=r,d=[rn(i),rn(l),r[Zs],on(i),on(l)],u=d[2],g=Jt(u),w=Jt(u),h=ln(s,{[Ks]:null,[Xs]:vs,[an]:v},Ks,e=>Ze(w,e),e=>Ut(g,e)),y=ln(n,{[Zs]:null,[Xs]:vs,[en]:0,[tn]:0,[an]:null},Zs,(e,t)=>Ze(w,t),(e,t)=>Ut(g,t));return Mt(y,(e,t)=>t[4]??=Nt(h,t[0])?.[2]??v),[0,a,[h,y,d],g]},dn=(e,t,a,s,n,o=un,r,i)=>{const l=Et();return[async()=>{at(l),xe(await a(e,t),({tn:e,cn:t})=>Ut(Pt(l,e,Jt),t))},async(t,a,s,n)=>{const o=ge(n)?void 0:Jt(n);return((e,t)=>Ze(Nt(l,e),t))(t,a)?gt(Je(xe(await e(Ds+Ws(t)+Us(t,s)),e=>{const t=e[a],s=i?St(ft(e,a),i):ft(e,a);return[t,ge(o)?s:gt(Je(vt(s,(e,t)=>[t,e]),([e])=>(e=>ge(o)||Ze(o,e))(e)))]}),e=>!ge(e[0])&&!mt(e[1]))):{}},async(t,a,s,i,c,d=!1,g=v,w)=>{const h=ge(w)?void 0:Jt(w),y=e=>ge(h)||Ze(h,e),f=Jt();St(s??{},e=>xe(Je(dt(e??{}),y),e=>Ut(f,e)));const b=tt(f);if(ge(h)&&!d&&c&&g==v&&He(b)&&Ze(l,t))return await e("DROP "+ps+Ws(t)),void At(l,t);const S=Nt(l,t),C=Jt(Je(tt(S),e=>e==a||y(e)));if(He(b)||(Ze(l,t)?await Ee(xe([a,...b],async(s,o)=>{nt(C,s)||(await e(Is+Ws(t)+"ADD"+Ws(s)+n),0==o&&await e("CREATE UNIQUE INDEX pk ON "+Ws(t)+`(${Ws(a)})`),Ut(S,s))})):(await e(ks+Ws(t)+`(${Ws(a)}${n} PRIMARY KEY${$e(xe(b,e=>u+Ws(e)+n))});`),At(l,t,Jt([a,...b])))),await Ee([...!d&&i?xe(tt(C),async s=>{s!=a&&(await e(Is+Ws(t)+"DROP"+Ws(s)),nt(S,s))}):[]]),d)ge(s)?ge(h)&&await e(Es+Ws(t)+Us(t,g)):await Ee(vt(s,async(s,n)=>{if(ge(s))await e(Es+Ws(t)+Us(t,g)+`AND(${Ws(a)}=$1)`,[n]);else if(!He(b)){const i=Je(dt(s),y);He(i)||await o(e,t,a,i,{[n]:xe(i,e=>r?r(s[e]):s[e])},S)}}));else if(He(b))ge(h)&&Ze(l,t)&&await e(Es+Ws(t)+Us(t,g));else{const n=Je(tt(Nt(l,t)),e=>e!=a&&y(e)),i={},c=[];St(s??{},(e,t)=>{i[t]=xe(n,t=>r?r(e?.[t]):e?.[t]),je(c,t)}),await o(e,t,a,n,i,S),await e(Es+Ws(t)+Us(t,g)+`AND${Ws(a)}NOT IN(${Js(c)})`,c)}},async t=>{let a;return await e("BEGIN"),await Me(async()=>a=await t(),s),await e("END"),a}]},un=async(e,t,a,s,n)=>{const o=[1];await e(ms+" INTO"+Ws(t)+"("+Fs(a,...s)+")VALUES"+$e(vt(n,e=>"($"+o[0]+++","+Js(e,o)+")"),u)+"ON CONFLICT("+Ws(a)+`)DO ${Ts} SET`+$e(xe(s,e=>Ws(e)+"=excluded."+Ws(e)),u),vt(n,(e,t)=>[t,...xe(e,e=>e??null)]).flat())},gn=(e,t,a,s,n,o,r,[i,l,c],d,u,g,w,h,y)=>{const[f,b,v,S]=dn(t,d,u,n,h,y),C=fs(e,()=>S(async()=>(await f(),ia((await b(i,l))[bs]?.[c]??"null"))),e=>S(async()=>{await f(),await v(i,l,{[bs]:{[c]:ra(e()??null)}},!0,!0)}),a,s,n,r,{[w]:()=>g,destroy:async()=>(await C.stopAutoPersisting(),o(),C)},0,g);return C},wn=(e,t,a,s,n,o,r,[i,l,[c,d,u,g,w]],h,y,f,b,v,S,C,p)=>{const[m,R,T,I]=dn(t,h,y,n,v,S,C,p),L=(e,t)=>Ee(Ot(l,async([a,s,n,o,r],i)=>{t&&!yt(e,i)||await T(a,s,e[i],n,o,t,r)})),E=(e,t,a)=>gt(1==a?Je(vt(e,(e,t)=>[t,e]),([e])=>Oe(t,e)):Je(xe(t,t=>[t,e[t]]),([,e])=>!ge(e))),D=async(e,t)=>d?await T(u,vs,{[bs]:ge(w)?e:E(e,w,t)},!0,!0,t,void 0,w):null,N=fs(e,()=>I(async()=>{await m();const e=await(async()=>gt(Je(await Ee(Ot(i,async([e,t,a],s)=>[e,await R(s,t,a)])),e=>!mt(e[1]))))(),t=await(async()=>c?(await R(u,vs,void 0,g))[bs]:{})();return mt(e)&&ge(t)?void 0:[e,t]}),(e,t)=>I(async()=>{if(await m(),ge(t)){const[t,a]=e();await L(t),await D(a)}else await L(t[0],!0),await D(t[1],!0)}),a,s,n,r,{[b]:()=>f,destroy:async()=>(await N.stopAutoPersisting(),o(),N)},0,f);return N},hn=/^([cd]:)(.+)/,yn=(e,t,a,s,n,o,r,i,l,u,g="getDb")=>{const w=xs(a,o),[h,,y,f]=cn(t),b=d+da(ra(y)),S=c+"_"+b,C=async(e,t,a="",s="")=>{const n=Hs(c,e,b);return await w(Ps+_s+Vs+n+`()RETURNS ${a}trigger AS $$ ${s}BEGIN ${t}END;$$ LANGUAGE plpgsql;`),n},p=async(e,t,a,s)=>(await w(Ps+e+"TRIGGER"+t+a+"EXECUTE "+Vs+s+"()"),t),m=e=>`PERFORM pg_notify('${S}',${e});`,R=(e,t)=>h?v:2===t?R(e,0)+" OR "+R(e,1):Q(Nt(y[0],e)?.[2]??v,$s,0==t?"NEW":"OLD"),T=(e,t)=>Ee(xe([ms,Rs,Ts],(a,s)=>p(_s,Hs(c,"d",b,e,a),`AFTER ${a} ON${Ws(e)}FOR EACH ROW WHEN(${R(e,s)})`,t)));return(h?gn:wn)(e,w,async e=>{const t=await C("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Cs} command_tag='${ks}' LOOP ${m("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await p("EVENT ",Hs(c,"c",b),`ON ddl_command_end WHEN TAG IN('${ks}')`,t);const a=await C("d",m("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await Ee(xe(tt(f),async e=>(await w(ks+` IF NOT EXISTS${Ws(e)}("_id"text PRIMARY KEY)`),await T(e,a)))),[await s(S,t=>be(z(t,hn),async([,t,s])=>{Ze(f,s)&&("c:"==t&&await T(s,a),e())})),[t,a]]},async([e,t])=>{n(e),await w(`DROP FUNCTION IF EXISTS${$e(t,",")}CASCADE`)},r,i,l,y,tt(f),async(e,t)=>await e(Ss+` table_name tn,column_name cn FROM information_schema.columns ${Cs} table_schema='public'AND table_name IN(${Js(t)})`,t),u,g,"text",void 0,e=>sa(e),e=>na(e))},fn=(e,t,a,s,n,o,r,i,l,c,u="getDb",g)=>{let w,h,y;const f=xs(a,o),[b,v,S,C]=cn(t);return(b?gn:wn)(e,f,e=>{let t;const a=()=>t=ae(()=>Me(async()=>{const[{d:t,s:a,c:s}]=await f(Ss+` ${Ms} d,${Os} s,TOTAL_CHANGES() c FROM ${Ns}${Ms} JOIN ${Ns}${Os}`);t==w&&a==h&&s==y||(ue(w)||e(),w=t,h=a,y=s)}),v),o=()=>{w=h=y=null,se(t)},r=s(t=>{C.has(t)&&(o(),e(),a())});return a(),()=>{o(),n(r)}},e=>e(),r,i,l,S,tt(C),async(e,t)=>await e(Ss+` t.name tn,c.name cn FROM ${As}list()t,${As}info(t.name)c ${Cs} t.schema='main'AND t.type IN('table','view')AND t.name IN(${Js(t)})ORDER BY t.name,c.name`,t),c,u,d,g,e=>he(e)?1:ye(e)?0:e,void 0)},bn=(e,t)=>[e[t].t,e[t].v],vn=(e,t,a,s)=>{const n=ge(t)?e:Tt(e,t,()=>({}));let o;return St(a,(e,t)=>{s(n,t,e)&&(o=1)}),St(n,(e,t)=>{yt(a,t)||(ft(n,t),o=1)}),!ge(t)&&mt(n)&&ft(e,t),o},Sn=(e,t,a=c,s)=>(t.change(e=>Tt(e,a,gt)),fs(e,async()=>{const e=t.doc();return 2==pt(e?.[a])?bn(e,a):void 0},async(e,s)=>t.change(t=>((e,t,a,s)=>{((e,t)=>{mt(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[n,o]=bn(e,t),r=()=>{i=1};let i=1;if(be(s,([e,t])=>{i=0,St(e,(e,t)=>i?0:ge(e)?ft(n,t):be(n[t],t=>St(e,(e,a)=>i?0:ge(e)?ft(t,a):be(ht(t,a),t=>St(e,(e,a)=>ge(e)?ft(t,a):t[a]=e),r)),r)),St(t,(e,t)=>i?0:ge(e)?ft(o,t):o[t]=e)}),i){const[e,t]=a();vn(n,void 0,e,(e,t,a)=>vn(n,t,a,(e,t,a)=>vn(e,t,a,(e,t,a)=>{if(ht(e,t)!==a)return e[t]=a,1}))),vn(o,void 0,t,(e,t,a)=>{ht(o,t)!==a&&(o[t]=a)})}})(t,a,e,s)),e=>{const s=({doc:t})=>e(bn(t,a));return t.on("change",s),s},e=>{t.removeListener("change",e)},s,1,{getDocHandle:()=>t})),Cn="storage",pn=(e,t,a,s)=>fs(e,async()=>ia(a.getItem(t)),async e=>a.setItem(t,ra(e())),e=>{const s=s=>{s.storageArea===a&&s.key===t&&Me(()=>e(ia(s.newValue)),e)};return ee.addEventListener(Cn,s),s},e=>ee.removeEventListener(Cn,e),s,3,{getStorageName:()=>t}),mn=(e,t,a)=>pn(e,t,localStorage,a),Rn=(e,t,a)=>pn(e,t,sessionStorage,a),Tn=(e,t,a)=>fs(e,async()=>ia(await(await t.getFile()).text()),async e=>{const a=await t.createWritable();await a.write(ra(e())),await a.close()},async e=>{const a=new FileSystemObserver(()=>e());return await a.observe(t),a},e=>e?.disconnect(),a,3,{getHandle:()=>t}),In=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>await t.execO(e,a),e=>t.onUpdate((t,a,s)=>e(s)),e=>e(),s,n,Ie,1,t),Ln=()=>Wa({},d,0),En=(e,t,a=d,s)=>{const n=(e,...t)=>a+e+me(ra(t),1,-1);return fs(e,async()=>{const e=Ln(),s=Ln();return(await t.list({prefix:a})).forEach(async([t,n,o],r)=>be((e=>{if(G(e,a)){const t=me(e,Re(a),Re(a)+1);return t==J||t==U?[t,...JSON.parse("["+me(e,Re(a)+1)+"]")]:void 0}})(r),([a,...r])=>a==J?be(r[0],a=>{const s=Tt(e[0],a,Ln);be(r[1],e=>{const a=Tt(s[0],e,Ln);be(r[2],e=>a[0][e]=[t,n,o],()=>Ua(a,n,o))},()=>Ua(s,n,o))},()=>Ua(e,n,o)):a==U?be(r[0],e=>s[0][e]=[t,n,o],()=>Ua(s,n,o)):0)),mt(e[0])&&mt(s[0])?void 0:[e,s]},async(e,[[a,s,o],[r,i,l]]=e())=>{const c=Et();At(c,n(J),[0,s,o]),bt(a,([e,t,a],s)=>{At(c,n(J,s),[0,t,a]),bt(e,([e,t,a],o)=>{At(c,n(J,s,o),[0,t,a]),bt(e,(e,t)=>At(c,n(J,s,o,t),e))})}),At(c,n(U),[0,i,l]),bt(r,(e,t)=>At(c,n(U,t),e)),await t.put(_t(c))},Ie,Ie,s,2,{getStorage:()=>t})},Dn=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>await t.db.raw({sql:e,args:a}),e=>t.notifier.subscribeToDataChanges(a=>Ve(t.notifier.alias(a),({tablename:t})=>e(t))),e=>e(),s,n,Ie,1,t,"getElectricClient"),Nn=(t,a,s,n,o)=>fn(t,s,async(e,t=[])=>await a.getAllAsync(e,t),t=>e(({tableName:e})=>t(e)),e=>e.remove(),n,o,Ie,3,a),Mn=(e,r,i)=>fs(e,async()=>ia(await o(r,m)),async e=>await n(r,ra(e()),m),e=>(t(r)||a(r,d,m),s(r,()=>e())),e=>e?.close(),i,3,{getFilePath:()=>r}),On=[J,U],An={keyPath:"k"},Pn=async(e,t)=>{const a=vt(t,(t,a)=>kn(e,"put",{k:a,v:t}));xe(await kn(e,"getAllKeys"),s=>yt(t,s)?0:je(a,kn(e,"delete",s))),await Ee(a)},kn=async(e,t,a)=>Le((s,n)=>{const o=e[t](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${t} error`)}),_n=(e,t,a=1,s)=>{const n=async(e,a=[],s=0)=>Le((n,o)=>{const r=(ee?ee.indexedDB:indexedDB).open(t,s?2:void 0);r.onupgradeneeded=()=>s&&xe(On,e=>Me(()=>r.result.createObjectStore(e,An))),r.onsuccess=()=>Me(async()=>{const t=r.result.transaction(On,"readwrite"),s=await Ee(xe(On,(s,n)=>e(t.objectStore(s),a[n])));r.result.close(),n(s)},e=>{r.result.close(),o(e)}),r.onerror=()=>o("indexedDB.open error")});return fs(e,async()=>await n(async e=>gt(xe(await kn(e,"getAll"),({k:e,v:t})=>[e,t]))),e=>n((e,t)=>Pn(e,t),e(),1),e=>ae(e,a),e=>se(e),s,1,{getDbName:()=>t})},Vn=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>(await t.execute({sql:e,args:a})).rows,()=>Ie,e=>e(),s,n,Ie,1,t,"getClient"),$n="s",xn="/store",Wn=(e,t,a)=>e+t+(Se(a)?a:ra(a)),Hn=(e,t,a)=>{const s=Re(e);return G(t,e)?[t[s],(a?ia:te)(me(t,s+1))]:void 0},Fn=(e,t,a,s)=>{const{host:n,room:o}=t.partySocketOptions,{storeProtocol:r="https",storePath:i=xn,messagePrefix:l=d}={...Se(a)?{storeProtocol:a}:a},c=r+"://"+n+"/parties/"+t.name+"/"+o+i,u=async e=>await(await fetch(c,{...e?{method:"PUT",body:oa(e)}:{},mode:"cors",cache:"no-store"})).json();return fs(e,u,async(e,a)=>{a?t.send(Wn(l,$n,a)):await u(e())},e=>{const a=t=>be(Hn(l,t.data,1),([t,a])=>{t==$n&&e(void 0,a)});return t.addEventListener(H,a),a},e=>{t.removeEventListener(H,e)},s,1,{getConnection:()=>t})},Jn="hasStore",Un=gt(xe(["Origin","Methods","Headers"],e=>["Access-Control-Allow-"+e,"*"])),jn=async(e,t=d)=>!!await e.get(t+Jn),Gn=async(e,t=d)=>{const a={},s={};return Mt(await e.list(),(e,n)=>be(Hn(t,e),([e,t])=>{if(e==J){const[e,s,o]=na("["+t+"]");Tt(Tt(a,e,gt),s,gt)[o]=n}else e==U&&(s[t]=n)})),[a,s]},qn=async(e,t,a)=>e.party.broadcast(Wn(e.config.messagePrefix??d,$n,t),a),zn=async(e,t,a,s)=>{const n=e.party.storage,o=e.config.storagePrefix??d,r={[o+Jn]:1},i=[],l=[];await Ee(vt(t[0],async(t,c)=>ge(t)?!a&&await e.canDelTable(c,s)&&qe(l,Bn(o,J,c)):await e.canSetTable(c,a,s)&&await Ee(vt(t,async(t,d)=>ge(t)?!a&&await e.canDelRow(c,d,s)&&je(l,Bn(o,J,c,d)):await e.canSetRow(c,d,a,s)&&await Ee(vt(t,async(t,l)=>{const u=[c,d,l],g=Bn(o,J,...u);ge(t)?!a&&await e.canDelCell(...u,s)&&je(i,g):await e.canSetCell(...u,t,a,s,await n.get(g))&&(r[g]=t)})))))),await Ee(vt(t[1],async(t,l)=>{const c=o+U+l;ge(t)?!a&&await e.canDelValue(l,s)&&je(i,c):await e.canSetValue(l,t,a,s,await n.get(c))&&(r[c]=t)})),He(l)||Mt(await n.list(),e=>Ae(l,t=>!G(e,t)||je(i,e)&&0)),await n.delete(i),await n.put(r)},Bn=(e,t,...a)=>Wn(e,t,me(oa(a),1,-1)),Qn=async(e,t,a=null)=>new Response(a,{status:t,headers:e.config.responseHeaders});class Yn{constructor(e){this.party=e,this.config.storePath??=xn,this.config.messagePrefix??=d,this.config.storagePrefix??=d,this.config.responseHeaders??=Un}party;config={};async onRequest(e){const{party:{storage:t},config:{storePath:a=xn,storagePrefix:s}}=this;if(new URL(e.url).pathname.endsWith(a)){const a=await jn(t,s),n=await e.text();return"PUT"==e.method?a?Qn(this,205):(await zn(this,na(n),!0,e),Qn(this,201)):Qn(this,200,a?oa(await Gn(t,s)):d)}return Qn(this,404)}async onMessage(e,t){const{config:{messagePrefix:a=d,storagePrefix:s}}=this;await be(Hn(a,e,1),async([e,a])=>{e==$n&&await jn(this.party.storage,s)&&(await zn(this,a,!1,t),qn(this,a,[t.id]))})}async canSetTable(e,t,a){return!0}async canDelTable(e,t){return!0}async canSetRow(e,t,a,s){return!0}async canDelRow(e,t,a){return!0}async canSetCell(e,t,a,s,n,o,r){return!0}async canDelCell(e,t,a,s){return!0}async canSetValue(e,t,a,s,n){return!0}async canDelValue(e,t){return!0}}const Xn=async(e,t,a,s,n)=>yn(e,a,async(e,a=[])=>(await t.query(e,a)).rows,(e,a)=>t.listen(e,a),e=>Me(e,n),s,n,Ie,3,t,"getPglite"),Kn=async(e,t,a,s,n)=>{const o=await(t.reserve?.());return yn(e,a,o?.unsafe,async(e,a)=>t.listen(e,a),e=>Me(e.unlisten,n),s,n,()=>o?.release?.(),3,t,"getSql")},Zn=(e,t,a,s,n)=>{let o;return fn(e,a,async(e,a=[])=>t.execute(e,a).then(e=>e.rows?._array??[]),e=>{const a=new AbortController,s=t.onChange({rawTableNames:!0,signal:a.signal});return(async()=>{for await(const e of s)o&&xe(e.changedTables,o)})(),o=e,a},e=>{o=void 0,e.abort()},s,n,Ie,1,t,"getPowerSync",eo)},eo=async(e,t,a,s,n)=>{const o=$e(xe(s,(e,t)=>Ws(e)+"=$"+(t+1)),u);for(const[r,i]of vt(n,(e,t)=>[t,e])){const n=xe(i,e=>e??null);if(He(await e(Ts+Ws(t)+" SET"+o+" "+Cs+Ws(a)+"=$"+(i.length+1)+" RETURNING"+Ws(a),[...n,r]))){const o=[1];await e(ms+" INTO"+Ws(t)+"("+Fs(a,...s)+")VALUES("+Js([r,...i],o)+")",[r,...n])}}},to=(e,t,a="storage",s)=>fs(e,async()=>{const e=t.getString(a),s=ge(e)?void 0:JSON.parse(e);return Promise.resolve(s)},async e=>{const s=e();ge(s)||t.set(a,JSON.stringify(s))},e=>t.addOnValueChangedListener(s=>{if(s===a){const s=t.getString(a);s&&e(JSON.parse(s))}}),e=>{e.remove()},s,3,{getStorageName:()=>a}),ao=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>(await t.executeSql(e,a))[0].rows.raw(),Ie,Ie,s,n,Ie,3,t),so=e=>e.headers.get("ETag")??d,no=e=>e==d?void 0:{"If-None-Match":e},oo=(e,t,a,s=5,n)=>{let o=d;return fs(e,async()=>{const e=await fetch(t,{headers:no(o)});return o=so(e),na(await e.text())},async e=>await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:oa(e())}),e=>ae(async()=>{const a=await fetch(t,{method:"HEAD",headers:no(o)}),s=so(a);s!=o&&(o=s,e())},s),e=>se(e),n,1,{getUrls:()=>[t,a]})},ro=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>t.query(e).all(...a),()=>Ie,e=>e(),s,n,Ie,3,t),io=(e,t,a,s,n,o)=>fn(e,s,async(e,t=[])=>a.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map(e=>({...e})),e=>t.capi.sqlite3_update_hook(a,(t,a,s,n)=>e(n),0),()=>t.capi.sqlite3_update_hook(a,Ie,0),n,o,Ie,3,a),lo="change",co=(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>await Le((s,n)=>t.all(e,a,(e,t)=>e?n(e):s(t))),e=>{const a=(t,a,s)=>e(s);return t.on(lo,a),a},e=>t.off(lo,e),s,n,Ie,3,t),uo="delete",go=e=>[e.get(J),e.get(U)],wo=(e,t,a,s)=>{const n=ge(t)?e:e.get(t)??e.set(t,new r);let o;return St(a,(e,t)=>{s(n,t,e)&&(o=1)}),n.forEach((e,t)=>{yt(a,t)||(n.delete(t),o=1)}),ge(t)||n.size||e.delete(t),o},ho=(e,t,a=c,s)=>{const n=t.getMap(a);return fs(e,async()=>n.size?[n.get(J).toJSON(),n.get(U).toJSON()]:void 0,async(e,a)=>t.transact(()=>((e,t,a)=>{e.size||(e.set(J,new r),e.set(U,new r));const[s,n]=go(e),o=()=>{i=1};let i=1;if(be(a,([e,t])=>{i=0,St(e,(e,t)=>i?0:ge(e)?s.delete(t):be(s.get(t),t=>St(e,(e,a)=>i?0:ge(e)?t.delete(a):be(t.get(a),t=>St(e,(e,a)=>ge(e)?t.delete(a):t.set(a,e)),o)),o)),St(t,(e,t)=>i?0:ge(e)?n.delete(t):n.set(t,e))}),i){const[e,a]=t();wo(s,void 0,e,(e,t,a)=>wo(s,t,a,(e,t,a)=>wo(e,t,a,(e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1}))),wo(n,void 0,a,(e,t,a)=>{n.get(t)!==a&&n.set(t,a)})}})(n,e,a)),e=>{const t=t=>e(void 0,((e,t)=>{if(1==Re(t)&&He(t[0].path))return[e.get(J).toJSON(),e.get(U).toJSON(),1];const[a,s]=go(e),n={},o={};return Ve(t,({path:e,changes:{keys:t}})=>ze(e)==J?be(ze(e),s=>{const o=Tt(n,s,gt),r=a.get(s);be(ze(e),e=>{const a=Tt(o,e,gt),s=r.get(e);Mt(t,(e,{action:t})=>a[e]=t==uo?void 0:s.get(e))},()=>Mt(t,(e,{action:t})=>o[e]=t==uo?void 0:r.get(e)?.toJSON()))},()=>Mt(t,(e,{action:t})=>n[e]=t==uo?void 0:a.get(e)?.toJSON())):Mt(t,(e,{action:t})=>o[e]=t==uo?void 0:s.get(e))),[n,o,1]})(n,t));return n.observeDeep(t),t},e=>{n.unobserveDeep(e)},s,1,{getYDoc:()=>t})},yo="_",fo=qt(e=>{const t=e._[0],a=t(),s=t(),n=Et(),o=Et(),r=Jt(),i=Et(),l=Et(),c={table:0,tableCellIds:0,rowCount:0,rowIds:0,sortedRowIds:0,row:0,cellIds:0,cell:0},u=Et(),g=Et(),{_:[,w,h],delListener:y}=s,[f,b,v,S,C,p,m,L,,E,N,M]=jt(e,()=>[],Te,w,h),$=e=>Pt(o,e,t),x=(e,t,...a)=>Ve(a,a=>Ut(Pt(Pt(u,t,Et),e,Jt),a)),W=e=>{be(Nt(u,e),e=>{Mt(e,(e,t)=>st(t,t=>e.delListener(t))),at(e)}),Ve([$(e),Nt(n,e)],t=>t?.delTable(e))},H=(e,t,a,...s)=>{const n=Pt(Pt(g,t,Et),e,Jt);return Ve(s,t=>{Ut(n,t),a&&e.callListener(t)}),s},F=(e,t,a)=>be(Nt(Nt(g,e),t),s=>{t.delListener(a),nt(s,a),et(s)&&At(Nt(g,e),t)}),J=e=>be(Nt(g,e),e=>{Mt(e,(e,t)=>st(t,t=>e.delListener(t))),at(e)}),U=(e,t,a)=>x(t,e,t.addStartTransactionListener(a.startTransaction),t.addDidFinishTransactionListener(()=>a.finishTransaction())),j=(e,t)=>(mt(t)?a.delRow:a.setRow)(yo,e,{...t}),G=a=>$(a).transaction(()=>be(p(a),([s,,o])=>{const i=C(a),l=o?$(i):e,c=$(a),u=z(a);Ut(r,a),W(a),J(a);const g=[],w=[[void 0,[i,void 0,void 0,[],Et(),l]]],h=[],y=[],f=[];s({select:(e,t,a)=>{const s=he(e)?t:e,n=he(e)?a:t,o=Ce(e)?[Re(g)+d,e]:ge(n)?[e,t=>t(e)]:[n,t=>he(e)?t(!0,s,n):t(s,n)];return je(g,o),{as:e=>o[0]=e}},join:(t,a,s,n)=>{const o=he(t)?a:t,[r,i]=he(t)?ge(n)||Ce(s)?[void 0,s]:[s,n]:ge(s)||Ce(a)?[void 0,a]:[a,s],l=[o,[o,r,Ce(i)?i:e=>e(i),[],Et(),he(t)?$(o):e]];return je(w,l),{as:e=>l[0]=e}},where:(e,t,a,s)=>je(h,Ce(e)?e:he(e)?e=>e(!0,t,a)===s:ge(a)?a=>a(e)===t:s=>s(e,t)===a),group:(e,t,a,s,n)=>{const o=[e,[e,Ce(t)?[t,a,s,n]:Nt(rs,t)??[(e,t)=>t]]];return je(y,o),{as:e=>o[0]=e}},having:(e,t)=>je(f,Ce(e)?e:a=>a(e)===t),param:e=>ht(u,e)});const b=Et(g);if(et(b))return nt(r,a),B;const v=Et(w);Mt(v,(e,[,t])=>be(Nt(v,t),({3:t})=>ge(e)?0:je(t,e)));const S=Et(y),p=!et(S)||!He(f),m=p?(e=>Pt(n,e,t))(a):c;if(p){U(a,m,c);const e=Et();Mt(S,(t,[a,s])=>Ut(Pt(e,a,Jt),[t,s]));const t=Jt();Mt(b,a=>Ze(e,a)?0:Ut(t,a));const s=Et(),n=(t,s,n,o)=>be(t,([r,i,l,d])=>{Mt(s,(t,[a])=>{const s=Pt(r,t,Et),i=Nt(s,n),l=o?void 0:a;if(i!==l){const a=Jt([[i,l]]),o=Qe(s);At(s,n,l),st(Nt(e,t),([e,t])=>{const n=is(d[e],o,s,a,t);d[e]=ge(Oa(n))?void 0:n})}}),et(i)||!Ae(f,e=>e(e=>d[e]))?c.delRow(a,l):ge(l)?t[2]=c.addRow(a,d):c.setRow(a,l,d)});x(m,a,m.addRowListener(a,null,(o,r,i,l)=>{const c=[],d=[],u=Et(),g=m.hasRow(a,i);let w=!g;st(t,e=>{const[t,s,n]=l(a,i,e);je(c,s),je(d,n),w||=t}),Mt(e,e=>{const[t,,s]=l(a,i,e);(w||t)&&At(u,e,[s])}),w&&n(Ft(s,c,void 0,([,e])=>(nt(e,i),et(e))),u,i,1),g&&n(Ft(s,d,()=>{const e={};return st(t,t=>e[t]=m.getCell(a,i,t)),[Et(),Jt(),void 0,e]},([,e])=>{Ut(e,i)}),u,i)}))}U(a,l,m);const R=(e,t,s,n,o)=>{const r=e=>t.getCell(s,n,e);Ve(o,t=>{const[s,,n,o,i,l]=Nt(v,t),c=n?.(r,e),d=Nt(i,e),u=d?.[0];c!=u&&(be(d,([,e,t])=>F(a,e,t)),At(i,e,ge(c)?void 0:[c,l,...H(l,a,1,l.addRowListener(s,c,()=>R(e,l,s,c,o)))]))}),(e=>{const t=(t,a,s)=>{const n=he(t)?a:t,o=he(t)?s:a;if(ge(o))return l.getCell(i,e,t);if(n===i&&!he(t))return l.getCell(i,e,o);const r=Nt(v,n);return ge(r)?void 0:r[5].getCell(r[0],Nt(r[4],e)?.[0],o)};m.transaction(()=>Ae(h,e=>e(t))?Mt(b,(s,n)=>m._[5](a,e,s,n(t,e))):m.delRow(a,e))})(e)},{3:T}=Nt(v,void 0),I=(e,t,s)=>{l.hasRow(i,s)?R(s,l,i,s,T):(m.delRow(a,s),st(v,({4:e})=>be(Nt(e,s),([,t,n])=>{F(a,t,n),At(e,s)})))};return m.transaction(()=>{Ve(l.getRowIds(i),e=>I(0,0,e)),H(l,a,0,l.addRowListener(i,null,I))}),nt(r,a),B})),q=e=>(be(p(e),([,e])=>a.delListener(e)),a.delRow(yo,e),W(e),J(e),E(e),B),z=e=>a.getRow(yo,e),B={setQueryDefinition:(e,t,s,n,o={})=>{const[r,i,l,c]=he(t)?[s,n,1,o]:[t,s,0,n??{}];return be(p(e),([,e])=>a.delListener(e)),L(e,r),m(e,[i,a.addRowListener(yo,e,()=>G(e)),l]),j(e,c),G(e),B},delQueryDefinition:q,getParamValues:z,getParamValue:(e,t)=>a.getCell(yo,e,t),setParamValues:(e,t)=>(S(e)&&j(e,t),B),setParamValue:(e,t,s)=>(S(e)&&a.setCell(yo,e,t,s),B),getStore:f,getQueryIds:b,forEachQuery:v,hasQuery:S,getTableId:C,forEachResultTable:e=>v(t=>$(t).hasTable(t)?e(t,e=>B.forEachResultRow(t,e)):0),addQueryIdsListener:e=>N(()=>e(B)),addParamValuesListener:(e,t)=>"p"+a.addRowListener(yo,e,(e,a,s)=>t(B,s,z(s))),addParamValueListener:(e,t,s)=>"p"+a.addCellListener(yo,e,t,(e,t,a,n,o)=>s(B,a,n,o)),delListener:e=>{const t=Nt(i,e);if("p"==e[0])a.delListener(me(e,1));else if(ge(t))y(e);else{const[a,s,n]=t;Mt(s,(e,[t,a])=>t.delListener(a)),be(n,y),At(i,e),y(e),c[a]--}return B},destroy:()=>{Ve(b(),q),M()},getListenerStats:()=>({...c,paramValues:a.getListenerStats().row-Re(b()),paramValue:a.getListenerStats().cell})};return St({[D]:[2,1],[D+V]:[1,1],[A]:[1,1],[P]:[1,1],[k]:[1,5],[O]:[3,2],[V]:[1,2],[_]:[3,3]},([e,t],a)=>{Ve(me(["get","has","forEach"],0,e),e=>B[e+T+a]=(...t)=>$(t[0])[e+a](...t)),B[I+T+a+R]=(...e)=>((s,n)=>{const o=w(Te,l),r=Et(),d=()=>{const s=null==n?b():[n];Ve(s,s=>{return Ze(r,s)?0:At(r,s,[$(s),(n=$(s),n[I+a+R](...((e,t)=>5==t?[e[0],e[1]??void 0,e[2],e[3],e[4]]:me(e,0,t))(e,t),(a,...s)=>e[t](B,...s),!0))]);var n}),Mt(r,(e,[t,a])=>null==n&&S(e)||e==n?0:(t.delListener(a),void At(r,e)))};return d(),At(i,o,[s,r,null==n?N(d):void 0]),c[s]++,o})((e=>e[0].toLowerCase()+me(e,1))(a),e[0])}),ut(B)}),bo=qt(e=>{const t=Et(),a=Et(),s=Et(),n=Et(),[o,r,i]=Qt(()=>m),[l,c,u,g,w,h,,,y,f,b,v]=jt(e,()=>[Et(),Et(),Et(),Et()],e=>ge(e)?void 0:e+d,o,r),S=(e,t,a)=>be(h(e),([s,,n])=>{if(!Ze(n,t)){const o=Jt();if(w(e)!=p(e))Ut(o,t);else{let e=t;for(;!ge(e)&&!Ze(o,e);)Ut(o,e),e=Nt(s,e)}if(a)return o;At(n,t,o)}return Nt(n,t)}),C=(e,t)=>be(h(e),([,,e])=>At(e,t)),p=e=>Nt(t,e),m={setRelationshipDefinition:(e,o,i,l)=>(At(t,e,i),y(e,o,(t,o)=>{const i=Jt(),l=Jt(),c=Jt(),[d,u]=h(e);st(o,([t,a],s)=>{ge(t)||(Ut(l,t),be(Nt(u,t),e=>{nt(e,s),et(e)&&At(u,t)})),ge(a)||(Ut(l,a),Ze(u,a)||At(u,a,Jt()),Ut(Nt(u,a),s)),Ut(i,s),At(d,s,a),Mt(Nt(n,e),t=>{Ze(S(e,t),s)&&Ut(c,t)})}),t(),st(i,t=>r(a,[e,t])),st(l,t=>r(s,[e,t])),st(c,t=>{C(e,t),r(n,[e,t])})},Gt(l)),m),delRelationshipDefinition:e=>(At(t,e),f(e),m),getStore:l,getRelationshipIds:c,forEachRelationship:t=>u(a=>t(a,t=>e.forEachRow(w(a),t))),hasRelationship:g,getLocalTableId:w,getRemoteTableId:p,getRemoteRowId:(e,t)=>Nt(h(e)?.[0],t),getLocalRowIds:(e,t)=>tt(Nt(h(e)?.[1],t)),getLinkedRowIds:(e,t)=>ge(h(e))?[t]:tt(S(e,t,!0)),addRelationshipIdsListener:b,addRemoteRowIdListener:(e,t,s)=>o(s,a,[e,t]),addLocalRowIdsListener:(e,t,a)=>o(a,s,[e,t]),addLinkedRowIdsListener:(e,t,a)=>(S(e,t),o(a,n,[e,t])),delListener:e=>(C(...i(e)??[]),m),destroy:v,getListenerStats:()=>({remoteRowId:Xe(a),localRowIds:Xe(s),linkedRowIds:Xe(n)})};return ut(m)}),vo={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},So=(e,t,a,s,n,o,r,i,l={})=>{let c,u=0,g=0,w=0;const h=Et(),y=()=>aa(11),f=(e,a,s,n)=>{g++,o?.(e,a,s,n),t(e,a,s,n)},b=async(e,t,a,s)=>Le((o,r)=>{const i=s+"."+aa(4),l=ne(()=>{nt(h,i),r(`No response from ${e??"anyone"} to ${i}, `+t)},n);At(h,i,[e,(e,t)=>{clearTimeout(l),nt(h,i),o([e,t,s])}]),f(e,i,t,a)}),v=(e,[t,a])=>{bt(t,([t,a],s)=>{const n=Tt(e[0],s,ja);bt(t,([e,t],a)=>{const s=Tt(n[0],a,ja);bt(e,([e,t],a)=>s[0][a]=xa(e,t)),s[1]=Ja(s[1],t)}),n[1]=Ja(n[1],a)}),e[1]=Ja(e[1],a)},S=(t=null,a,s=y())=>Me(async()=>{ge(a)&&([a,t,s]=await b(null,1,d,s));const[n,o]=a,[r,i]=e.getMergeableContentHashes();let l=ja();if(r!=n){const[a,n]=(await b(t,4,e.getMergeableTableHashes(),s))[0];if(l=a,!mt(n)){const[a,o]=(await b(t,5,e.getMergeableRowHashes(n),s))[0];if(v(l,a),!mt(o)){const a=(await b(t,6,e.getMergeableCellHashes(o),s))[0];v(l,a)}}}return[l,i==o?ja():(await b(t,7,e.getMergeableValueHashes(),s))[0],1]},i),C=fs(e,async()=>{const e=await S();return!e||mt(e[0][0])&&mt(e[1][0])?void 0:e},async(t,a)=>a?f(null,y(),3,a):f(null,y(),2,e.getMergeableContentHashes()),e=>c=e,()=>c=void 0,i,2,{startSync:async e=>(u=1,await C.startAutoPersisting(e)),stopSync:async()=>(u=0,await C.stopAutoPersisting(),C),destroy:async()=>(await C.stopSync(),s(),C),getSynchronizerStats:()=>({sends:g,receives:w}),...l},1);return a((t,a,s,n)=>{const o=u||C.isAutoLoading();w++,r?.(t,a,s,n),0==s?be(Nt(h,a),([e,a])=>we(e)||e==t?a(n,t):0):2==s&&o?S(t,n,a??void 0).then(e=>{c?.(void 0,e)}).catch(i):3==s&&o?c?.(void 0,n):be(1==s&&(u||C.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,e=>{f(t,a,0,e)})}),C},Co=(e,t,a,s,n)=>{const o=aa(),r=new BroadcastChannel(t);return So(e,(e,t,a,s)=>r.postMessage([o,e,t,a,s]),e=>{r.onmessage=({data:[t,a,s,n,r]})=>we(a)||a==o?e(t,s,n,r):0},()=>{r.close()},.01,a,s,n,{getChannelName:()=>t})},po=Et(),mo=(e,t,a,s)=>{const n=aa();return So(e,(e,t,a,s)=>ne(()=>we(e)?Mt(po,(e,o)=>e!=n?o(n,t,a,s):0):Nt(po,e)?.(n,t,a,s)),e=>{At(po,n,e)},()=>{nt(po,n)},.01,t,a,s)},Ro="\n",To=/^(.+)\n(\d+)\n(\d+)\n([\s\S]*)$/,Io=(e,t)=>{const a=e.indexOf(Ro);-1!==a&&t(me(e,0,a),me(e,a+1))},Lo=(e,t,a)=>a(e,...ia(t)),Eo=(e,t=1)=>{const a=Et(),s=e=>ne(()=>nt(a,e),t);return t=>Io(t,(t,n)=>{const[,o,r,i,l]=z(n,To)??[];if(o){const n=parseInt(r),c=parseInt(i);if(c>0&&n>=0&&n<c){const r=t+Ro+o,i=Pt(a,r,()=>[[],c,c,s(r)]),[d]=i;c==i[2]&&ge(d[n])&&(oe(i[3]),i[3]=s(r),d[n]=l,i[1]--),0==i[1]&&(((e,t)=>{oe(t[3]),nt(a,e)})(r,i),Lo(t,$e(d),e))}}else Lo(t,n,e)})},Do=(e,t)=>e+Ro+t,No=(e,t,a,s,n)=>{const o=e??d,r=ra([t,a,s]),i=le(n??0);if(ge(n)||i<1||Re(r)<=i)return[Do(o,r)];const l=z(r,RegExp(`.{1,${i}}`,"g")),c=Re(l??[]),u=aa();return xe(l??[],(e,t)=>Do(o,$e([u,t,c,e],Ro)))},Mo=async(e,t,a=1,s,n,o,r)=>{const i=(e,a)=>(t.addEventListener(e,a),()=>t.removeEventListener(e,a)),l=So(e,(e,...a)=>Ve(No(e,...a,r),e=>t.send(e)),e=>{const t=Eo(e,a);i(H,({data:e})=>t(e.toString(m)))},()=>{t.close()},a,s,n,o,{getWebSocket:()=>t});return Le(e=>{if(t.readyState!=t.OPEN){const t=t=>{t&&o?.(t),a(),s(),e(l)},a=i("open",()=>t()),s=i(F,t)}else e(l)})},Oo=/\/([^?]*)/,Ao="S",Po=e=>z(new URL(e.url).pathname,Oo)?.[1]??d,ko=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,_o=(e,t=null,a=null)=>new Response(a,{status:e,webSocket:t}),Vo=()=>_o(426,null,"Upgrade required");class $o extends i{#e;constructor(e,t){super(e,t),this.ctx.blockConcurrencyWhile(async()=>await be(await this.createPersister(),async e=>{const t=this.getRequestTimeoutSeconds(),a=So(e.getStore(),(e,t,a,s)=>Ve(No(e,t,a,s,this.getFragmentSize()),e=>this.#t(Ao,e)),e=>this.#e=Eo(e,t),Ie,t);await e.load(),await e.startAutoSave(),ne(a.startSync)}))}fetch(e){const t=Po(e);return be(ko(e),e=>{const[a,s]=Ct(new WebSocketPair);return He(this.#a())&&this.onPathId(t,1),this.ctx.acceptWebSocket(s,[e,t]),this.onClientId(t,e,1),s.send(Do(Ao,ra([null,1,d]))),_o(101,a)},Vo)}webSocketMessage(e,t){be(this.ctx.getTags(e)[0],a=>this.#t(a,t.toString(),e))}webSocketClose(e){const[t,a]=this.ctx.getTags(e);this.onClientId(a,t,-1),1==Re(this.#a())&&this.onPathId(a,-1)}#t(e,t,a){Io(t.toString(),(t,s)=>{const n=Do(e,s);this.onMessage(e,t,s),t==d?(e!=Ao&&this.#e?.(n),Ve(this.#a(),e=>{e!=a&&e.send(n)})):t==Ao?this.#e?.(n):t!=e&&this.#a(t)[0]?.send(n)})}#a(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#a()[0])?.[1]}getClientIds(){return xe(this.#a(),e=>this.ctx.getTags(e)[0])}getFragmentSize(){}getRequestTimeoutSeconds(){return 1}onPathId(e,t){}onClientId(e,t,a){}onMessage(e,t,a){}}const xo=e=>(t,a)=>ko(t)?a[e].get(a[e].idFromName(Po(t))).fetch(t):Vo(),Wo=/\/([^?]*)/,Ho=e=>{const t=Et();return e.on("connection",(e,a)=>be(z(a.url,Wo),([,s])=>be(a.headers["sec-websocket-key"],async a=>{const n=Pt(t,s,Et);At(n,a,e),e.on(H,e=>Io(e.toString(m),(e,t)=>{const s=Do(a,t);e===d?Mt(n,(e,t)=>e!==a?t.send(s):0):Nt(n,e)?.send(s)})),e.on("close",()=>{nt(n,a),et(n)&&nt(t,s)})}))),ut({getWebSocketServer:()=>e,destroy:async()=>{at(t),e.close()}})},Fo=/\/([^?]*)/,Jo=(e,t,a,s=1,n)=>{const o=Et(),r=Et(),i=Et(),l=Et(),[c,u,g]=Qt(()=>y),w=async e=>{await(e[1]?.destroy()),await(e[2]?.destroy())},h=(e,t,a)=>s=>Io(s,(s,n)=>{const o=Do(e,n);s===d?("S"!==e&&a[3]?.(o),Mt(t,(t,a)=>t!==e?a.send(o):0)):"S"===s?a[3]?.(o):Nt(t,s)?.send(o)});e.on("connection",(e,c)=>be(z(c.url,Fo),([,d])=>be(c.headers["sec-websocket-key"],async c=>{const g=Pt(i,d,Et),y=Pt(l,d,()=>[0]),f=h(c,g,y);et(g)&&(u(o,void 0,d,1),await(async(e,o,r)=>be(await(t?.(o)),t=>{e[0]=1,e[1]=pe(t)?t[0]:t;const o=h("S",r,e);e[2]=So(e[1].getStore(),(e,t,a,s)=>Ve(No(e,t,a,s,n),o),t=>{e[3]=Eo(t,s)},Ie,s,void 0,void 0,a),e[4]=[],e[5]=pe(t)?t[1]:e=>0}))(y,d,g)),At(g,c,e),u(r,[d],c,1),e.on(H,e=>{const t=e.toString(m);0==y[0]?f(t):je(y[4],t)}),1==y[0]&&(await(async e=>{e[0]=2,await e[1].startAutoLoad(),await e[1].startAutoSave(),await e[2].startSync(),e[5](e[1].getStore()),e[0]=0})(y),Ve(y[4],f),y[4]=[]),e.on("close",async()=>{nt(g,c),u(r,[d],c,-1),et(g)&&(await w(y),nt(l,d),nt(i,d),u(o,void 0,d,-1))}),a&&e.on(F,a)}))),a&&e.on(F,a);const y={getWebSocketServer:()=>e,getPathIds:()=>Dt(i),getClientIds:e=>Dt(Nt(i,e)),addPathIdsListener:e=>c(e,o),addClientIdsListener:(e,t)=>c(t,r,[e]),delListener:e=>(g(e),y),getStats:()=>({paths:Qe(i),clients:Ye(i)}),destroy:async()=>{at(i),await Ee(Ot(l,w)),e.close()}};return ut(y)};export{vo as Message,ws as Persists,gs as Status,Yn as TinyBasePartyKitServer,$o as WsServerDurableObject,ua as addOrRemoveHash,qn as broadcastChanges,Sn as createAutomergePersister,Co as createBroadcastChannelSynchronizer,Yt as createCheckpoints,In as createCrSqliteWasmPersister,fs as createCustomPersister,yn as createCustomPostgreSqlPersister,fn as createCustomSqlitePersister,So as createCustomSynchronizer,En as createDurableObjectStoragePersister,Dn as createElectricSqlPersister,Nn as createExpoSqlitePersister,Mn as createFilePersister,_n as createIndexedDbPersister,Ma as createIndexes,Vn as createLibSqlPersister,mn as createLocalPersister,mo as createLocalSynchronizer,os as createMergeableStore,ls as createMetrics,us as createMiddleware,Tn as createOpfsPersister,Fn as createPartyKitPersister,Xn as createPglitePersister,Kn as createPostgresPersister,Zn as createPowerSyncPersister,fo as createQueries,to as createReactNativeMmkvPersister,ao as createReactNativeSqlitePersister,bo as createRelationships,oo as createRemotePersister,Rn as createSessionPersister,co as createSqlite3Persister,ro as createSqliteBunPersister,io as createSqliteWasmPersister,as as createStore,Jo as createWsServer,Ho as createWsServerSimple,Mo as createWsSynchronizer,ho as createYjsPersister,Na as defaultSorter,ya as getCellHash,fa as getCellInRowHash,da as getHash,Da as getHlcFunctions,ba as getRowHash,va as getRowInTableHash,Sa as getTableHash,Ca as getTableInTablesHash,pa as getTablesHash,aa as getUniqueId,ha as getValueHash,wa as getValueInValuesHash,ga as getValuesHash,xo as getWsServerDurableObjectFetch,jn as hasStoreInStorage,Gn as loadStoreFromStorage,Pn as objectStoreMatch};
1
+ import{addDatabaseChangeListener as e}from"expo-sqlite";import{existsSync as t,writeFileSync as a,watch as s}from"fs";import{writeFile as n,readFile as o}from"fs/promises";import{Map as r}from"yjs";import{DurableObject as i}from"cloudflare:workers";const l=e=>typeof e,c="tinybase",d="",u=",",g=l(d),w=l(!0),h=l(0),y=l(l),f="object",b="array",v="true",S="type",C="default",p="allowNull",m="utf8",R="Listener",T="Result",I="add",L="Has",E="Ids",D="Table",N=D+"s",M=D+E,O="Row",A=O+"Count",P=O+E,k="Sorted"+O+E,_="Cell",V=_+E,$="Value",x=$+"s",H=$+E,W="message",F="error",J="required",U="t",j="v",q=e=>d+e,G=(e,t)=>e.startsWith(t),z=(e,t)=>e.endsWith(t),B=(e,t)=>e?.match(t),Q=(e,t=d,a)=>e.split(t,a),Y=(e,t,a)=>e.replace(t,a),X=Promise,K=Math,Z=e=>(t,a,s)=>e(t)?s?.():a(t),ee=globalThis,te=ee.window,ae=String,se=(e,t,a)=>setInterval(e,1e3*t),ne=clearInterval,oe=(e,t=0)=>setTimeout(e,1e3*t),re=clearTimeout,ie=K.max,le=K.min,ce=K.floor,de=K.random,ue=isFinite,ge=e=>null==e,we=e=>void 0===e,he=e=>null===e,ye=e=>!0===e,fe=e=>!1===e,be=Z(ge),ve=Z(we),Se=e=>e==g||e==w,Ce=e=>l(e)==g,pe=e=>l(e)==y,me=e=>Array.isArray(e),Re=(e,t,a)=>e.slice(t,a),Te=e=>e.length,Ie=()=>{},Le=()=>{},Ee=e=>new X(e),De=async e=>X.all(e),Ne=ee.structuredClone,Me=e=>{throw Error(e)},Oe=async(e,t,a)=>{try{return await e()}catch(e){t?.(e)}},Ae=(e,t)=>e.includes(t),Pe=(e,t)=>e.every(t),ke=(e,t)=>Te(e)===Te(t)&&Pe(e,(e,a)=>t[a]===e),_e=(e,t)=>Pe(e,(a,s)=>0==s||t(e[s-1],a)<=0),Ve=(e,t)=>e.sort(t),$e=(e,t)=>e.forEach(t),xe=(e,t=d)=>e.join(t),He=(e,t)=>e.map(t),We=e=>Je(e,(e,t)=>e+t,0),Fe=e=>0==Te(e),Je=(e,t,a)=>e.reduce(t,a),Ue=(e,t)=>e.filter(t),je=(e,t)=>e.splice(0,t),qe=(e,...t)=>e.push(...t),Ge=e=>e.pop(),ze=(e,...t)=>e.unshift(...t),Be=e=>e.shift(),Qe=e=>t=>Je(at(t),(t,a)=>t+e(a),0),Ye=e=>e?.size??0,Xe=Qe(Ye),Ke=Qe(Xe),Ze=Qe(Ke),et=(e,t)=>e?.has(t)??!1,tt=e=>we(e)||0==Ye(e),at=e=>[...e?.values()??[]],st=e=>e.clear(),nt=(e,t)=>e?.forEach(t),ot=(e,t)=>e?.delete(t),rt=Object,it=e=>rt.getPrototypeOf(e),lt=rt.isFrozen,ct=rt.entries,dt=e=>!ge(e)&&be(it(e),e=>e==rt.prototype||ge(it(e)),()=>!0),ut=rt.keys,gt=rt.freeze,wt=(e=[])=>rt.fromEntries(e),ht=(...e)=>rt.assign({},...e),yt=(e,t)=>ve(e,e=>e[t]),ft=(e,t)=>t in e,bt=(e,t)=>(delete e[t],e),vt=(e,t)=>$e(ct(e),([e,a])=>t(a,e)),St=(e,t)=>He(ct(e),([e,a])=>t(a,e)),Ct=(e,t)=>wt(St(e,(e,a)=>[a,t(e,a)])),pt=e=>rt.values(e),mt=e=>Te(ut(e)),Rt=e=>dt(e)&&0==mt(e),Tt=(e,t,a=(e,t)=>e===t)=>{const s=ct(e);return Te(s)===mt(t)&&Pe(s,([e,s])=>dt(s)?!!dt(t[e])&&Tt(t[e],s,a):a(s,t[e]))},It=(e,t,a)=>(ft(e,t)||(e[t]=a()),e[t]),Lt=(e,t,a,s=0)=>ge(e)||!dt(e)||!s&&Rt(e)||lt(e)?(a?.(),!1):(vt(e,(a,s)=>{t(a,s)||bt(e,s)}),!!s||!Rt(e)),Et=Map,Dt=e=>new Et(e),Nt=e=>[...e?.keys()??[]],Mt=(e,t)=>e?.get(t),Ot=(e,t)=>nt(e,(e,a)=>t(a,e)),At=(e,t)=>He([...e?.entries()??[]],([e,a])=>t(a,e)),Pt=(e,t,a)=>we(a)?(ot(e,t),e):e?.set(t,a),kt=(e,t,a,s)=>(et(e,t)?s?.(Mt(e,t)):Pt(e,t,a()),Mt(e,t)),_t=(e,t,a,s=Pt)=>(Ct(t,(t,s)=>a(e,s,t)),Ot(e,a=>ft(t,a)?0:s(e,a)),e),Vt=(e,t,a,s)=>{const n={};return nt(e,(e,o)=>{if(!a?.(e,o)){const a=t?t(e,o):e;s?.(a)||(n[o]=a)}}),n},$t=(e,t,a)=>Vt(e,e=>Vt(e,t,a),tt,Rt),xt=(e,t,a)=>Vt(e,e=>$t(e,t,a),tt,Rt),Ht=(e,t)=>{const a=Dt();return nt(e,(e,s)=>a.set(s,t?.(e)??e)),a},Wt=e=>Ht(e,Ht),Ft=e=>Ht(e,Wt),Jt=(e,t,a,s,n=0)=>ve((a?kt:Mt)(e,t[n],n>Te(t)-2?a:Dt),o=>{if(n>Te(t)-2)return s?.(o)&&Pt(e,t[n]),o;const r=Jt(o,t,a,s,n+1);return tt(o)&&Pt(e,t[n]),r}),Ut=e=>new Set(me(e)||we(e)?e:[e]),jt=(e,t)=>e?.add(t),qt=(e,t,a,s,n)=>{const o=e.hasRow,r=Dt(),i=Dt(),l=Dt(),c=Dt(),d=Dt(),u=Dt(),g=t=>ve(Mt(u,t),a=>{$e(at(a),t=>{e.delListener(t),ot(a,t)}),Pt(u,t)}),w=(e,a)=>{Pt(r,e,a),et(i,e)||(Pt(i,e,t()),Pt(c,e,Dt()),Pt(d,e,Dt()),n(l))},h=e=>{Pt(r,e),Pt(i,e),Pt(c,e),Pt(d,e),g(e),n(l)};return[()=>e,()=>Nt(r),e=>Ot(i,e),e=>et(i,e),e=>Mt(r,e),e=>Mt(i,e),(e,t)=>Pt(i,e,t),w,(t,s,n,r,i)=>{w(t,s);const l=Dt(),h=Dt(),y=Mt(c,t),f=Mt(d,t),b=t=>{const n=a=>e.getCell(s,t,a),c=Mt(y,t),d=o(s,t)?a(r(n,t)):void 0;if(c===d||me(c)&&me(d)&&ke(c,d)||Pt(l,t,[c,d]),!we(i)){const e=Mt(f,t),a=o(s,t)?i(n,t):void 0;e!=a&&Pt(h,t,a)}},v=e=>{n(()=>{nt(l,([,e],t)=>Pt(y,t,e)),nt(h,(e,t)=>Pt(f,t,e))},l,h,y,f,e),st(l),st(h)};Ot(y,b),e.hasTable(s)&&$e(e.getRowIds(s),e=>{et(y,e)||b(e)}),v(!0),g(t),((e,...t)=>{const a=kt(u,e,Ut);$e(t,e=>jt(a,e))})(t,e.addRowListener(s,null,(e,t,a)=>b(a)),e.addTableListener(s,()=>v()))},h,e=>s(e,l),()=>Ot(u,h)]},Gt=(e,t)=>Ce(e)?t=>t(e):e??(()=>t??d),zt=(e,t)=>{const a=new WeakMap;return s=>{a.has(s)||a.set(s,e(s));const n=a.get(s);return t?.(n),n}},Bt=/^\d+$/,Qt=()=>{const e=[];let t=0;return[a=>(a?Be(e):null)??d+t++,t=>{Bt.test(t)&&Te(e)<1e3&&qe(e,t)}]},Yt=e=>{let t;const[a,s]=Qt(),n=Dt();return[(s,o,r,i=[],l=()=>[])=>{t??=e();const c=a(1);return Pt(n,c,[s,o,r,i,l]),jt(Jt(o,r??[d],Ut),c),c},(e,a,...s)=>$e(((e,t=[d])=>{const a=[],s=(e,n)=>n==Te(t)?qe(a,e):he(t[n])?nt(e,e=>s(e,n+1)):$e([t[n],null],t=>s(Mt(e,t),n+1));return s(e,0),a})(e,a),e=>nt(e,e=>Mt(n,e)[0](t,...a??[],...s))),e=>ve(Mt(n,e),([,t,a])=>(Jt(t,a??[d],void 0,t=>(ot(t,e),tt(t)?1:0)),Pt(n,e),s(e),a)),e=>ve(Mt(n,e),([e,,a=[],s,n])=>{const o=(...r)=>{const i=Te(r);i==Te(a)?e(t,...r,...n(r)):he(a[i])?$e(s[i]?.(...r)??[],e=>o(...r,e)):o(...r,a[i])};o()})]},Xt=zt(e=>{let t,a,s,n=100,o=Dt(),r=Dt(),i=1;const l=Dt(),c=Dt(),[u,g,w]=Yt(()=>P),h=Dt(),y=Dt(),f=[],b=[],v=(t,a)=>{i=0,e.transaction(()=>{const[s,n]=Mt(h,a);nt(s,(a,s)=>nt(a,(a,n)=>nt(a,(a,o)=>e._[5](s,n,o,a[t],!0)))),nt(n,(a,s)=>e._[6](s,a[t],!0))}),i=1},S=e=>{Pt(h,e),Pt(y,e),g(c,[e])},C=(e,t)=>$e(je(e,t??Te(e)),S),p=()=>C(f,Te(f)-n),m=()=>ve(t,()=>{qe(f,t),p(),C(b),t=void 0,s=1}),R=()=>{t=Ge(f),s=1};let T,I;const L=(e=d)=>(we(t)&&(t=d+a++,Pt(h,t,[o,r]),O(t,e),o=Dt(),r=Dt(),s=1),t),E=()=>{Fe(f)||(ze(b,L()),v(0,t),t=Ge(f),s=1)},D=()=>{Fe(b)||(qe(f,t),t=Be(b),v(1,t),s=1)},N=()=>{s&&(g(l),s=0)},M=e=>{const t=L(e);return N(),t},O=(e,t)=>(A(e)&&Mt(y,e)!==t&&(Pt(y,e,t),g(c,[e])),P),A=e=>et(h,e),P={setSize:e=>(n=e,p(),P),addCheckpoint:M,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...f],t,[...b]],forEachCheckpoint:e=>Ot(y,e),hasCheckpoint:A,getCheckpoint:e=>Mt(y,e),goBackward:()=>(E(),N(),P),goForward:()=>(D(),N(),P),goTo:e=>{const a=Ae(f,e)?E:Ae(b,e)?D:void 0;for(;!we(a)&&e!=t;)a();return N(),P},addCheckpointIdsListener:e=>u(e,l),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(w(e),P),clear:()=>(C(f),C(b),we(t)||S(t),t=void 0,a=0,M(),P),clearForward:()=>(Fe(b)||(C(b),g(l)),P),destroy:()=>{e.delListener(T),e.delListener(I)},getListenerStats:()=>({checkpointIds:Xe(l),checkpoint:Xe(c)}),_registerListeners:()=>{T=e.addCellListener(null,null,null,(e,t,a,s,n,r)=>{if(i){m();const e=kt(o,t,Dt),i=kt(e,a,Dt),l=kt(i,s,()=>[r,void 0]);l[1]=n,l[0]===n&&tt(Pt(i,s))&&tt(Pt(e,a))&&tt(Pt(o,t))&&R(),N()}}),I=e.addValueListener(null,(e,t,a,s)=>{if(i){m();const e=kt(r,t,()=>[s,void 0]);e[1]=a,e[0]===a&&tt(Pt(r,t))&&R(),N()}})}};return gt(P.clear())},e=>e._registerListeners()),Kt=Q("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),Zt=Dt(He(Kt,(e,t)=>[e,t])),ea=e=>Kt[63&e],ta=(e,t)=>Mt(Zt,e[t])??0,aa=ee.crypto?e=>ee.crypto.getRandomValues(e):e=>He(e,()=>ce(256*de())),sa=(e=16)=>Je(aa(new Uint8Array(e)),(e,t)=>e+ea(t),d),na=JSON.stringify,oa=JSON.parse,ra=e=>na(e,(e,t)=>t instanceof Map?rt.fromEntries([...t]):t),ia=e=>na(e,(e,t)=>we(t)?"":t),la=e=>ca(oa(e)),ca=e=>""===e?void 0:me(e)?He(e,ca):dt(e)?Ct(e,ca):e,da=new ee.TextEncoder,ua=e=>{let t=2166136261;return $e(da.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},ga=(e,t)=>(e^t)>>>0,wa=e=>Je(ct(e),(e,[t,a])=>ga(e,ha(t,a)^ha(t,0)),0),ha=(e,t)=>ua(e+":"+t),ya=(e,t)=>ua(ra(e??null)+":"+t),fa=ya,ba=ha,va=wa,Sa=ha,Ca=e=>Je(ct(e),(e,[t,a])=>ga(e,ha(t,a)),0),pa=ha,ma=Ca,Ra=2**36,Ta=2**30,Ia=2**24,La=2**18,Ea=4096,Da=e=>{const t=ua(e);return ea(t/Ia)+ea(t/La)+ea(t/Ea)+ea(t/64)+ea(t)},Na=(e,t=Date.now)=>{let a=0,s=-1;const n=ve(e,Da,()=>sa(5)),o=e=>{const n=a,[o,r]=we(e)||e==d?[0,0]:i(e);a=ie(n,o,t()),s=a==n?a==o?ie(s,r):s:a==o?r:-1},r=(e,t,a)=>ea(e/Ra)+ea(e/Ta)+ea(e/Ia)+ea(e/La)+ea(e/Ea)+ea(e/64)+ea(e)+ea(t/La)+ea(t/Ea)+ea(t/64)+ea(t)+(we(a)?n:Da(a)),i=e=>[ta(e,0)*Ra+ta(e,1)*Ta+ta(e,2)*Ia+ta(e,3)*La+ta(e,4)*Ea+64*ta(e,5)+ta(e,6),ta(e,7)*La+ta(e,8)*Ea+64*ta(e,9)+ta(e,10),e.slice(11)];return[()=>(o(),r(a,++s)),o,r,i,()=>a,()=>s,()=>n]},Ma=(e,t)=>(e??0)<(t??0)?-1:1,Oa=zt(e=>{const t=Dt(),a=Dt(),s=Dt(),n=Dt(),[o,r,i]=Yt(()=>p),[l,c,u,g,w,h,y,,f,b,v,S]=qt(e,Dt,e=>we(e)?d:me(e)?He(e,q):q(e),o,r),C=(t,a,s)=>{const n=w(t);nt(s,(t,s)=>a(s,a=>nt(t,t=>a(t,a=>e.forEachCell(n,t,a)))))},p={setIndexDefinition:(e,o,i,l,c,d=Ma)=>{const u=g(e),w=we(c)?void 0:([e],[t])=>c(e,t);return f(e,o,(t,o,i,c,u,g)=>{let f=0;const b=Ut(),v=Dt(),S=Ut(),C=h(e),p=e=>{et(v,e)||Pt(v,e,et(C,e))};if(nt(o,([e,t],a)=>{const s=Ut(e),n=Ut(t);nt(s,e=>ot(n,e)?ot(s,e):0),nt(s,e=>{p(e),jt(b,e),ve(Mt(C,e),t=>{ot(t,a),tt(t)&&(Pt(C,e),f=1)})}),nt(n,e=>{p(e),jt(b,e),et(C,e)||(Pt(C,e,Ut()),f=1),jt(Mt(C,e),a),we(l)||jt(S,e)})}),t(),tt(u)||(g?Ot(C,e=>jt(S,e)):Ot(i,e=>ve(Mt(c,e),e=>$e(me(e)?e:[e],e=>jt(S,e)))),nt(S,e=>{const t=(t,a)=>d(Mt(u,t),Mt(u,a),e),a=[...Mt(C,e)];_e(a,t)||(Pt(C,e,Ut(Ve(a,t))),jt(b,e))})),(f||g)&&!we(w)){const t=[...C];_e(t,w)||(y(e,Dt(Ve(t,w))),f=1)}f&&r(a,[e]),Ot(v,(t,a)=>{const n=et(C,t);a!=n&&r(s,[e,t],n)}),nt(b,t=>r(n,[e,t]))},Gt(i),ve(l,Gt)),u||r(t,[e],!0),p},delIndexDefinition:e=>{const o=h(e),i=g(e),l=i?Nt(o):[];return b(e),i&&(r(t,[e],!1),l.length>0&&(r(a,[e]),$e(l,t=>{r(s,[e,t],!1),r(n,[e,t])}))),p},getStore:l,getIndexIds:c,forEachIndex:e=>u((t,a)=>e(t,e=>C(t,e,a))),forEachSlice:(e,t)=>C(e,t,h(e)),hasIndex:g,hasSlice:(e,t)=>et(h(e),t),getTableId:w,getSliceIds:e=>Nt(h(e)),getSliceRowIds:(e,t)=>at(Mt(h(e),t)),addIndexIdsListener:v,addHasIndexListener:(e,a)=>o(a,t,[e]),addSliceIdsListener:(e,t)=>o(t,a,[e]),addHasSliceListener:(e,t,a)=>o(a,s,[e,t]),addSliceRowIdsListener:(e,t,a)=>o(a,n,[e,t]),delListener:e=>(i(e),p),destroy:S,getListenerStats:()=>({sliceIds:Xe(a),sliceRowIds:Ke(n)})};return gt(p)}),Aa=e=>{if(he(e))return"null";if(me(e))return b;if(dt(e))return f;const t=l(e);return Se(t)||t==h&&ue(e)?t:void 0},Pa=e=>we(e)||!we(Aa(e)),ka=e=>e==f||e==b,_a=e=>dt(e)||me(e)?"�"+na(e):e,Va=e=>Ce(e)&&"�"==e[0],$a=(e,t,a)=>!a&&Va(e)?oa(Re(e,1)):e,xa=([e,t])=>Ha(e,t),Ha=(e,t)=>t?[e,t]:[e],Wa=(e,t,a)=>[e,t,a],Fa=e=>e[2],Ja=(e,t)=>t>e?(e?ua(e):0)^ua(t):0,Ua=(e,t)=>((e??d)>(t??d)?e:t)??d,ja=(e,t,a)=>{t>e[1]&&(e[1]=t),e[2]=a>>>0},qa=(e=d)=>Ha(wt(),e),Ga=(e=d)=>[Dt(),e,0],za=([e,t,a],s)=>[Vt(e,s),t,a],Ba=([e,t],a=xa)=>Ha(Vt(e,a),t),Qa=(e,t)=>{return me(e)&&3==Te(e)&&Ce(e[1])&&(a=e[2],l(a)==h)&&ue(e[2])&&t(e[0]);var a},Ya=e=>[e,e],Xa=(e,t=Xe)=>t(e[0])+t(e[1]),Ka=()=>[Dt(),Dt()],Za=e=>[...e],es=([e,t])=>e===t,ts=(e,t,a)=>Pt(e,t,Mt(e,t)==-a?void 0:a),as=([e,t],[a,s])=>Tt(e,a)&&Tt(t,s),ss=()=>{let e,t,a=!1,s=!1,n=0,o=[],r=[],i=0;const l=Dt(),c=Dt(),d=Dt(),u=Dt(),g=Dt(),w=Dt(),y=Dt(),f=Dt(),b=Dt(),v=Ut(),m=Dt(),T=Dt(),E=Dt(),k=Dt(),W=Dt(),F=Dt(),U=Ut(),j=Ut(),G=Dt(),z=Dt(),B=Dt(),Q=Dt(),Y=Ka(),X=Ka(),K=Ka(),Z=Ka(),ee=Ka(),te=Ka(),ae=Ka(),se=Ka(),ne=Ka(),oe=Ka(),re=Ka(),ie=Ka(),le=Ka(),ce=Ka(),de=Ka(),ue=Ka(),ge=Ka(),ye=Ka(),fe=Ka(),be=Ka(),Ce=Ka(),Te=Ka(),Ie=Dt(),Le=Ka(),[Ee,De,Me,_e]=Yt(()=>ws),xe=e=>{const t=i;i=1;const a=e();return i=t,a},We=(e,t,a,s=Object.is)=>ve(t(),t=>e===t||s(e,t)?a(t):xe(()=>a(t))),Fe=e=>{if(!Lt(e,(e,t)=>Ae([S,C,p,J],t)))return!1;const t=e[S];if(!Se(t)&&t!=h&&!ka(t))return!1;const a=e[C];return!(he(a)&&!e[p]||(he(a)||(Aa(a)!=t?bt(e,C):e[C]=_a(a)),0))},Je=me,Ue=(t,a)=>(!e||et(E,a)||sa(a))&&Lt(t,(e,t)=>je(a,t,e),()=>sa(a)),je=(e,t,a,s)=>{const n=s?a:Qe(a,e,t);return Lt(n,(s,n)=>ve(Ge(e,t,n,s),e=>(a[n]=e,!0),()=>!1),()=>sa(e,t))&&(!!s||Pe(at(Mt(k,e)?.[2]),e=>ft(n,e)))},Ge=(t,a,s,n)=>e?ve(Mt(Mt(E,t),s),e=>he(n)?e[p]?n:sa(t,a,s,n,e[C]):Aa(n)===e[S]?_a(n):ka(e[S])&&Va(n)?n:sa(t,a,s,n,e[C]),()=>sa(t,a,s,n)):we(Aa(n))?sa(t,a,s,n):_a(n),ze=(e,t)=>{const a=t?e:rt(e);return Lt(a,(t,a)=>ve(Be(a,t),t=>(e[a]=t,!0),()=>!1),()=>na())&&(!!t||Pe(at(j),e=>ft(a,e)))},Be=(e,a)=>t?ve(Mt(W,e),t=>he(a)?t[p]?a:na(e,a,t[C]):Aa(a)===t[S]?_a(a):ka(t[S])&&Va(a)?a:na(e,a,t[C]),()=>na(e,a)):we(Aa(a))?na(e,a):_a(a),Qe=(e,t,a)=>(ve(Mt(k,t),([s,n])=>{nt(s,(s,n)=>{ft(e,n)||(e[n]=s,ve(a,e=>jt(kt(kt(y,t,Dt),e,Ut),n)))}),nt(n,s=>{ft(e,s)||sa(t,a,s)})}),e),rt=e=>(t&&(nt(F,(t,a)=>{ft(e,a)||(e[a]=t,jt(v,a))}),nt(U,t=>{ft(e,t)||na(t)})),e),it=e=>_t(E,e,(e,t,a)=>{const s=Dt(),n=Ut(),o=Ut();_t(kt(E,t,Dt),a,(e,t,a)=>{Pt(e,t,a),ve(a[C],e=>{Pt(s,t,e)},()=>{jt(n,t),!0===a[J]&&jt(o,t)})}),Pt(k,t,[s,n,o])},(e,t)=>{Pt(E,t),Pt(k,t)}),lt=e=>_t(W,e,(e,t,a)=>{Pt(W,t,a),ve(a[C],e=>{Pt(F,t,e),ot(U,t),ot(j,t)},()=>{Pt(F,t),jt(U,t),!0===a[J]?jt(j,t):ot(j,t)})},(e,t)=>{Pt(W,t),Pt(F,t),ot(U,t),ot(j,t)}),ct=e=>Rt(e)?Ba():Fa(e),ut=(e,t,a,s,n,o)=>we(s)?os(e,t,a,!0,n):Ja(e,t,a,s,n,o),wt=e=>Rt(e)?rs():Ua(e),ht=(e,t,a)=>we(t)?is(e,a):ja(e,t,a),yt=(e,t)=>We(e,()=>t?e:ve(o[1],t=>xe(()=>t(Ne(e))),()=>e),e=>_t(B,e,(e,t,a)=>vt(t,a),(e,t)=>qt(t)),Tt),vt=(e,t,a)=>We(t,()=>a?t:ve(o[2],a=>xe(()=>a(e,Ne(t))),()=>t),t=>_t(kt(B,e,()=>(Xt(e,1),Pt(G,e,Qt()),Pt(z,e,Dt()),Dt())),t,(t,a,s)=>St(e,t,a,s),(t,a)=>Gt(e,t,a)),Tt),St=(e,t,a,s,n)=>We(s,()=>n?s:ve(o[3],t=>xe(()=>t(e,a,Ne(s))),()=>s),s=>_t(kt(t,a,()=>(Kt(e,a,1),Dt())),s,(t,s,n)=>pt(e,a,t,s,n),(s,o)=>zt(e,t,a,s,o,n)),Tt),pt=(e,t,a,s,n,r)=>We(n,()=>ve(r?void 0:o[4],a=>xe(()=>a(e,t,s,n)),()=>n),n=>{et(a,s)||Zt(e,t,s,1);const o=Mt(a,s);n!==o&&(ea(e,t,s,o,n),Pt(a,s,n))}),mt=(e,t,a,s,n,o)=>ve(Mt(t,a),t=>pt(e,a,t,s,n,o),()=>{const r=Dt();Pt(t,a,r),Kt(e,a,1),Ct(Qe({[s]:n},e,a),(t,s)=>pt(e,a,r,s,t,o))}),It=(e,t)=>We(e,()=>t?e:ve(o[5],t=>xe(()=>t(Ne(e))),()=>e),e=>_t(Q,e,(e,t,a)=>Et(t,a),(e,t)=>Bt(t)),Tt),Et=(e,t,a)=>We(t,()=>ve(a?void 0:o[6],a=>xe(()=>a(e,t)),()=>t),t=>{et(Q,e)||ta(e,1);const a=Mt(Q,e);t!==a&&(aa(e,a,t),Pt(Q,e,t))}),Jt=e=>kt(B,e,()=>(Xt(e,1),Pt(G,e,Qt()),Pt(z,e,Dt()),Dt())),qt=e=>xe(()=>o[8]?.(e))??1?vt(e,{},!0):Mt(B,e),Gt=(e,t,a)=>{if(xe(()=>o[9]?.(e,a))??1){const[,s]=Mt(G,e);s(a),St(e,t,a,{},!0)}},zt=(e,t,a,s,n,r,i)=>{const l=Mt(Mt(k,e)?.[0],n);if(!we(l)&&!r)return pt(e,a,s,n,l);if(i||(xe(()=>o[10]?.(e,a,n))??1)){const o=t=>{ea(e,a,t,Mt(s,t)),Zt(e,a,t,-1),Pt(s,t)};we(l)?o(n):Ot(s,o),tt(s)&&(Kt(e,a,-1),tt(Pt(t,a))&&(Xt(e,-1),Pt(B,e),Pt(G,e),Pt(z,e)))}},Bt=(e,t)=>{const a=Mt(F,e);if(!we(a))return Et(e,a);(t||(xe(()=>o[12]?.(e))??1))&&(aa(e,Mt(Q,e)),ta(e,-1),Pt(Q,e))},Xt=(e,t)=>ts(l,e,t),Kt=(e,t,a)=>ts(kt(u,e,Dt),t,a)&&Pt(d,e,kt(d,e,()=>0)+a),Zt=(e,t,a,s)=>{const n=Mt(z,e),o=Mt(n,a)??0;(0==o&&1==s||1==o&&-1==s)&&ts(kt(c,e,Dt),a,s),Pt(n,a,o!=-s?o+s:void 0),ts(kt(kt(g,e,Dt),t,Dt),a,s)},ea=(e,t,a,s,n)=>{const o=et(Mt(Mt(y,e),t),a)&&we(s)?1:0;kt(kt(kt(w,e,Dt),t,Dt),a,()=>[s,0])[1]=n,r[3]?.(e,t,a,n,i,o),ot(Mt(Mt(y,e),t),a)},ta=(e,t)=>ts(f,e,t),aa=(e,t,a)=>{const s=et(v,e)&&we(t)?1:0;kt(b,e,()=>[t,0])[1]=a,r[4]?.(e,a,i,s),ot(v,e)},sa=(e,t,a,s,n)=>(qe(kt(kt(kt(m,e,Dt),t,Dt),a,()=>[]),s),n),na=(e,t,a)=>(qe(kt(T,e,()=>[]),t),a),ia=(e,t,a)=>ve(Mt(Mt(Mt(w,e),t),a),([e,t])=>[!0,$a(e),$a(t)],()=>[!1,...Ya(Ta(e,t,a))]),la=e=>ve(Mt(b,e),([e,t])=>[!0,$a(e),$a(t)],()=>[!1,...Ya(Ea(e))]),ca=e=>tt(m)||tt(ue[e])?0:nt(e?Ft(m):m,(t,a)=>nt(t,(t,s)=>nt(t,(t,n)=>De(ue[e],[a,s,n],t)))),da=e=>tt(T)||tt(ge[e])?0:nt(e?Ht(T):T,(t,a)=>De(ge[e],[a],t)),ua=(e,t,a,s)=>{if(!tt(e))return De(t,s,()=>Vt(e)),Ot(e,(e,t)=>De(a,[...s??[],e],1==t)),1},ga=e=>{const t=!tt(Y[e]),s=!tt(oe[e]),n=!(tt(le[e])&&tt(ce[e])&&tt(ne[e])&&tt(re[e])&&tt(te[e])&&tt(ae[e])&&tt(se[e])&&!s&&tt(K[e])&&tt(Z[e])),o=!(tt(de[e])&&tt(ie[e])&&tt(ee[e])&&tt(X[e]));if(t||n||o){const i=e?[Ht(l),Wt(c),Ht(d),Wt(u),Ft(g),(r=w,Ht(r,e=>Ht(e,e=>Ht(e,Za))))]:[l,c,d,u,g,w];if(t){const t=Da();t!=a&&De(Y[e],void 0,t)}if(n){ua(i[0],K[e],Z[e]),nt(i[1],(t,a)=>ua(t,te[e],ae[e],[a])),nt(i[2],(t,a)=>{0!=t&&De(se[e],[a],Ca(a))});const t=Ut();nt(i[3],(a,n)=>{ua(a,ne[e],re[e],[n])&&s&&(De(oe[e],[n,null]),jt(t,n))}),s&&nt(i[5],(a,s)=>{if(!et(t,s)){const t=Ut();nt(a,e=>nt(e,([a,s],n)=>s!==a?jt(t,n):ot(e,n))),nt(t,t=>De(oe[e],[s,t]))}}),nt(i[4],(t,a)=>nt(t,(t,s)=>ua(t,le[e],ce[e],[a,s])))}if(o){let t;nt(i[5],(a,s)=>{let n;nt(a,(a,o)=>{let r;nt(a,([a,i],l)=>{i!==a&&(De(de[e],[s,o,l],$a(i),$a(a),ia),t=n=r=1)}),r&&De(ie[e],[s,o],ia)}),n&&De(ee[e],[s],ia)}),t&&De(X[e],void 0,ia)}}var r},wa=e=>{const t=!tt(ye[e]),a=!tt(be[e])||!tt(Ce[e]),n=!tt(Te[e])||!tt(fe[e]);if(t||a||n){const o=e?[Ht(f),Ht(b,Za)]:[f,b];if(t){const t=Ha();t!=s&&De(ye[e],void 0,t)}if(a&&ua(o[0],be[e],Ce[e]),n){let t;nt(o[1],([a,s],n)=>{s!==a&&(De(Te[e],[n],$a(s),$a(a),la),t=1)}),t&&De(fe[e],void 0,la)}}},ha=(e,...t)=>(ds(()=>e(...He(t,q))),ws),ya=(e,t,a,s,n)=>{const[o,r,i,l]=a;let c=ma(e,t,o,r,i,l);return Ee(()=>{const a=ma(e,t,o,r,i,l);ke(a,c)||(c=a,s(ws,e,t,o,r,i,c))},oe[n?1:0],[e,t],[va])},fa=(e=!1)=>[Vt(w,(t,a)=>-1===Mt(l,a)?void 0:Vt(t,(t,s)=>-1===Mt(Mt(u,a),s)?void 0:Vt(t,([,t])=>$a(t,0,e),e=>es(e)),tt,Rt),tt,Rt),Vt(b,([,t])=>$a(t,0,e),e=>es(e)),1],ba=()=>xt(B,$a),va=()=>Nt(B),Sa=e=>Nt(Mt(z,q(e))),Ca=e=>Ye(Mt(B,q(e))),pa=e=>Nt(Mt(B,q(e))),ma=(e,t,a,s=0,n,o=Ma)=>dt(e)?ma(e.tableId,e.cellId,e.descending,e.offset,e.limit,e.sorter):He(Re(Ve(At(Mt(B,q(e)),(e,a)=>[we(t)?a:$a(Mt(e,q(t))),a]),([e],[t])=>o(e,t)*(a?-1:1)),s,we(n)?n:s+n),([,e])=>e),Ra=(e,t)=>Nt(Mt(Mt(B,q(e)),q(t))),Ta=(e,t,a)=>$a(Mt(Mt(Mt(B,q(e)),q(t)),q(a))),Ia=()=>Vt(Q,$a),La=()=>Nt(Q),Ea=e=>$a(Mt(Q,q(e))),Da=()=>!tt(B),Na=e=>et(B,q(e)),Oa=(e,t)=>et(Mt(z,q(e)),q(t)),Pa=(e,t)=>et(Mt(B,q(e)),q(t)),xa=(e,t,a)=>et(Mt(Mt(B,q(e)),q(t)),q(a)),Ha=()=>!tt(Q),Wa=e=>et(Q,q(e)),Fa=e=>ha(()=>(e=>Lt(e,Ue,sa))(e)?yt(e):0),Ja=(e,t,a,s,n,r)=>ha((e,t,a)=>ve(Ge(e,t,a,pe(s)?s(Ta(e,t,a)):s),s=>{const i=Jt(e);ve(n||r||!o[14]?.()?void 0:o[3],o=>{const r=Mt(i,t),l={...r?Vt(r):{},[a]:s};ve(xe(()=>o(e,t,Ne(l))),a=>((e,t,a,s,n)=>{_t(kt(t,a,()=>(Kt(e,a,1),Dt())),s,(t,s,o)=>ve(Ge(e,a,s,o),o=>pt(e,a,t,s,o,n)),(s,n)=>zt(e,t,a,s,n,!0))})(e,i,t,a,n))},()=>mt(e,i,t,a,s,n))}),e,t,a),Ua=e=>ha(()=>ze(e)?It(e):0),ja=(e,t,a)=>ha(e=>ve(Be(e,pe(t)?t(Ea(e)):t),t=>Et(e,t,a)),e),qa=e=>(Oe(()=>ct(oa(e))),ws),Ga=t=>ha(()=>{if((e=Lt(t,e=>Lt(e,Fe)))&&(it(t),!tt(B))){const e=ba();Ba(),Fa(e)}}),za=e=>ha(()=>{if(t=(e=>Lt(e,Fe))(e)){const a=Ia();cs(),rs(),t=!0,lt(e),Ua(a)}}),Ba=()=>ha(()=>xe(()=>o[7]?.())??1?yt({},!0):0),Qa=e=>ha(e=>et(B,e)?qt(e):0,e),ns=(e,t)=>ha((e,t)=>ve(Mt(B,e),a=>et(a,t)?Gt(e,a,t):0),e,t),os=(e,t,a,s,n)=>ha((e,t,a)=>ve(Mt(B,e),o=>ve(Mt(o,t),r=>et(r,a)?zt(e,o,t,r,a,s,n):0)),e,t,a),rs=()=>ha(()=>xe(()=>o[11]?.())??1?It({},!0):0),is=(e,t)=>ha(e=>et(Q,e)?Bt(e,t):0,e),ls=()=>ha(()=>{it({}),e=!1}),cs=()=>ha(()=>{lt({}),t=!1}),ds=(e,t)=>{if(-1!=n){us();const a=e();return gs(t),a}},us=()=>(-1!=n&&n++,1==n&&(r[0]?.(),De(Ie)),ws),gs=e=>(n>0&&(n--,0==n&&(n=1,xe(()=>{ca(1),tt(w)||ga(1),da(1),tt(b)||wa(1)}),e?.(ws)&&(nt(w,(e,t)=>nt(e,(e,a)=>nt(e,([e],s)=>ut(t,a,s,e,!0)))),st(w),nt(b,([e],t)=>ht(t,e,!0)),st(b)),De(Le[0],void 0),n=-1,ca(0),tt(w)||ga(0),da(0),tt(b)||wa(0),r[1]?.(),De(Le[1],void 0),r[2]?.(),n=0,a=Da(),s=Ha(),$e([l,c,d,u,g,w,y,m,f,b,v,T],st))),ws),ws={getContent:()=>[ba(),Ia()],getTables:ba,getTableIds:va,getTable:e=>$t(Mt(B,q(e)),$a),getTableCellIds:Sa,getRowCount:Ca,getRowIds:pa,getSortedRowIds:ma,getRow:(e,t)=>Vt(Mt(Mt(B,q(e)),q(t)),$a),getCellIds:Ra,getCell:Ta,getValues:Ia,getValueIds:La,getValue:Ea,hasTables:Da,hasTable:Na,hasTableCell:Oa,hasRow:Pa,hasCell:xa,hasValues:Ha,hasValue:Wa,getTablesJson:()=>ra(B),getValuesJson:()=>ra(Q),getJson:()=>ra([B,Q]),getTablesSchemaJson:()=>ra(E),getValuesSchemaJson:()=>ra(W),getSchemaJson:()=>ra([E,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>ha(()=>{const t=pe(e)?e():e;Je(t)&&(e=>{We(e,()=>ve(o[0],t=>xe(()=>t(Ne(e))),()=>e),([e,t])=>{(Rt(e)?Ba:Fa)(e),(Rt(t)?rs:Ua)(t)},as)})(t)}),setTables:Fa,setTable:(e,t)=>ha(e=>Ue(t,e)?vt(e,t):0,e),setRow:(e,t,a)=>ha((e,t)=>je(e,t,a)?St(e,Jt(e),t,a):0,e,t),addRow:(e,t,a=!0)=>ds(()=>{let s;return je(e,s,t)&&(e=q(e),St(e,Jt(e),s=((e,t)=>{const[a]=Mt(G,e);let s;do{s=a(t)}while(et(Mt(B,e),s));return s})(e,a?1:0),t)),s}),setPartialRow:(e,t,a)=>ha((e,t)=>{if(je(e,t,a,1)){const s=Jt(e);Ct(a,(a,n)=>mt(e,s,t,n,a))}},e,t),setCell:Ja,setValues:Ua,setPartialValues:e=>ha(()=>ze(e,1)?Ct(e,(e,t)=>Et(t,e)):0),setValue:ja,applyChanges:e=>ha(()=>We(e,()=>ve(o[13],t=>xe(()=>t(Ne(e))),()=>e),e=>{Ct(e[0],(e,t)=>we(e)?Qa(t):Ct(e,(e,a)=>we(e)?ns(t,a):Ct(e,(e,s)=>ut(t,a,s,e,void 0,!0)))),Ct(e[1],(e,t)=>ht(t,e))},as)),setTablesJson:qa,setValuesJson:e=>(Oe(()=>wt(oa(e))),ws),setJson:e=>ha(()=>Oe(()=>{const[t,a]=oa(e);ct(t),wt(a)},()=>qa(e))),setTablesSchema:Ga,setValuesSchema:za,setSchema:(e,t)=>ha(()=>{Ga(e),za(t)}),delTables:Ba,delTable:Qa,delRow:ns,delCell:os,delValues:rs,delValue:is,delTablesSchema:ls,delValuesSchema:cs,delSchema:()=>ha(()=>{ls(),cs()}),transaction:ds,startTransaction:us,getTransactionChanges:()=>fa(),getTransactionLog:()=>[!tt(w),!tt(b),xt(w,Za,es),xt(m),Vt(b,Za,es),Vt(T),Vt(l),$t(u),xt(g),Vt(f)],finishTransaction:gs,forEachTable:e=>nt(B,(t,a)=>e(a,e=>nt(t,(t,a)=>e(a,e=>Ot(t,(t,a)=>e(t,$a(a))))))),forEachTableCell:(e,t)=>Ot(Mt(z,q(e)),t),forEachRow:(e,t)=>nt(Mt(B,q(e)),(e,a)=>t(a,t=>Ot(e,(e,a)=>t(e,$a(a))))),forEachCell:(e,t,a)=>Ot(Mt(Mt(B,q(e)),q(t)),(e,t)=>a(e,$a(t))),forEachValue:e=>Ot(Q,(t,a)=>e(t,$a(a))),addSortedRowIdsListener:(e,t,a,s,n,o,r)=>dt(e)?ya(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit,e.sorter],t,a):ya(e,t,[a,s,n,void 0],o,r),addStartTransactionListener:e=>Ee(e,Ie),addWillFinishTransactionListener:e=>Ee(e,Le[0]),addDidFinishTransactionListener:e=>Ee(e,Le[1]),callListener:e=>(_e(e),ws),delListener:e=>(Me(e),ws),getListenerStats:()=>({hasTables:Xa(Y),tables:Xa(X),tableIds:Xa(K),hasTable:Xa(Z),table:Xa(ee),tableCellIds:Xa(te),hasTableCell:Xa(ae,Ke),rowCount:Xa(se),rowIds:Xa(ne),sortedRowIds:Xa(oe),hasRow:Xa(re,Ke),row:Xa(ie,Ke),cellIds:Xa(le,Ke),hasCell:Xa(ce,Ze),cell:Xa(de,Ze),invalidCell:Xa(ue,Ze),hasValues:Xa(ye),values:Xa(fe),valueIds:Xa(be),hasValue:Xa(Ce),value:Xa(Te),invalidValue:Xa(ge),transaction:Xe(Ie)+Xa(Le)}),isMergeable:()=>!1,_:[ss,Ee,De,(e,t,a,s,n)=>r=[e,t,a,s,n],(e,t,a,s,n,r,i,l,c,d,u,g,w,h,y)=>o=[e,t,a,s,n,r,i,l,c,d,u,g,w,h,y],ut,ht,()=>[xt(B),Vt(Q)],()=>fa(!0)]};return Ct({[L+N]:[0,Y,[],()=>[Da()]],[N]:[0,X],[M]:[0,K],[L+D]:[1,Z,[va],e=>[Na(...e)]],[D]:[1,ee,[va]],[D+V]:[1,te,[va]],[L+D+_]:[2,ae,[va,Sa],e=>[Oa(...e)]],[A]:[1,se,[va]],[P]:[1,ne,[va]],[L+O]:[2,re,[va,pa],e=>[Pa(...e)]],[O]:[2,ie,[va,pa]],[V]:[2,le,[va,pa]],[L+_]:[3,ce,[va,pa,Ra],e=>[xa(...e)]],[_]:[3,de,[va,pa,Ra],e=>Ya(Ta(...e))],InvalidCell:[3,ue],[L+x]:[0,ye,[],()=>[Ha()]],[x]:[0,fe],[H]:[0,be],[L+$]:[1,Ce,[La],e=>[Wa(...e)]],[$]:[1,Te,[La],e=>Ya(Ea(e[0]))],InvalidValue:[1,ge]},([e,t,a,s],n)=>{ws[I+n+R]=(...n)=>Ee(n[e],t[n[e+1]?1:0],e>0?Re(n,0,e):void 0,a,s)}),gt(ws)},ns={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},os=(e=d)=>[Ga(e),Ga(e)],rs=(e,t)=>{let a=1,s=os(),n=0,o=0;const r=Dt(),i=Ut(),[l,c]=Na(e,t),u=ss(),g=e=>{const t=a;return a=0,e(),a=t,p},w=(e,t=0)=>{const a={},n={},[[o,r=d,i=0],l]=e,[u,g]=s,[w,y,f]=u;let b=t?i:f,v=r;vt(o,([e,s=d,n=0],o)=>{const r=kt(w,o,Ga),[i,l,c]=r;let u=t?n:c,g=s;vt(e,(e,s)=>{const[n,r,l]=h(e,kt(i,s,Ga),It(It(a,o,wt),s,wt),t);u^=t?0:ga(r?ha(s,r):0,ha(s,l)),g=Ua(g,n)}),u^=t?0:Ja(l,s),ja(r,s,u),b^=t?0:ga(c?ha(o,c):0,ha(o,r[2])),v=Ua(v,g)}),b^=t?0:Ja(y,r),ja(u,r,b);const[S]=h(l,g,n,t);return c(Ua(v,S)),[a,n,1]},h=(e,t,a,s)=>{const[n,o=d,r=0]=e,[i,l,c]=t;let u=o,g=s?r:c;return vt(n,([e,t=d,n=0],o)=>{const r=kt(i,o,()=>[void 0,d,0]),[,l,c]=r;(!l||t>l)&&(ja(r,t,s?n:ya(e,t)),r[0]=e,a[o]=e,g^=s?0:ga(ha(o,c),ha(o,r[2])),u=Ua(u,t))}),g^=s?0:Ja(l,o),ja(t,o,g),[u,c,t[2]]},y=Le,f=Le,b=(e=!1)=>[za(s[0],t=>za(t,t=>za(t,([t,a,s])=>[$a(t,0,e),a,s]))),za(s[1],([t,a,s])=>[$a(t,0,e),a,s])],v=(e,t=!1)=>{const[[a,n,o],[l,c,d]]=s,u=e?Wa:Ha,g={};nt(r,(e,s)=>ve(Mt(a,s),([a,n,o])=>{const r={};nt(e,(e,s)=>ve(Mt(a,s),([a,n,o])=>{const i={};nt(e,e=>{ve(Mt(a,e),([a,s,n])=>i[e]=u(t?a:$a(a),s,n))}),r[s]=u(i,n,o)})),g[s]=u(r,n,o)}));const w={};return nt(i,e=>ve(Mt(l,e),([a,s,n])=>w[e]=u(t?a:$a(a),s,n))),[u(g,n,o),u(w,c,d),1]},S=()=>b(),C=e=>g(()=>u.applyChanges(w(e))),p={getMergeableContent:S,getMergeableContentHashes:()=>[s[0][2],s[1][2]],getMergeableTableHashes:()=>Vt(s[0][0],Fa),getMergeableTableDiff:e=>{const t=qa(s[0][1]),a={};return Ot(s[0][0],(s,[n,o,r])=>ft(e,s)?r!=e[s]?a[s]=r:0:t[0][s]=Ba([n,o],e=>Ba(e))),[t,a]},getMergeableRowHashes:e=>{const t={};return vt(e,(e,a)=>ve(Mt(s[0][0],a),([s,,n])=>n!=e?Ot(s,(e,[,,s])=>It(t,a,wt)[e]=s):0)),t},getMergeableRowDiff:e=>{const t=qa(s[0][1]),a={};return vt(e,(e,n)=>Ot(Mt(s[0][0],n)?.[0],(s,[o,r,i])=>ft(e,s)?i!==e[s]?It(a,n,wt)[s]=i:0:It(t[0],n,qa)[0][s]=Ba([o,r]))),[t,a]},getMergeableCellHashes:e=>{const t={};return vt(e,(e,a)=>ve(Mt(s[0][0],a),([s])=>vt(e,(e,n)=>ve(Mt(s,n),([s,,o])=>o!==e?Ot(s,(e,[,,s])=>It(It(t,a,wt),n,wt)[e]=s):0)))),t},getMergeableCellDiff:e=>{const[[t,a]]=s,n={};return vt(e,(e,a)=>vt(e,(e,s)=>ve(Mt(t,a),([t,o])=>ve(Mt(t,s),([t,r])=>Ot(t,(t,[i,l,c])=>c!==e[t]?It(It(n,a,()=>qa(o))[0],s,()=>qa(r))[0][t]=[i,l]:0))))),Ha(n,a)},getMergeableValueHashes:()=>Vt(s[1][0],Fa),getMergeableValueDiff:e=>{const[,[t,a]]=s,n=Vt(t,xa,([,,t],a)=>t==e?.[a]);return Ha(n,a)},setMergeableContent:e=>g(()=>(e=>me(e)&&2==Te(e)&&Qa(e[0],e=>Lt(e,e=>Qa(e,e=>Lt(e,e=>Qa(e,e=>Lt(e,e=>Qa(e,Pa),void 0,1)),void 0,1)),void 0,1))&&Qa(e[1],e=>Lt(e,e=>Qa(e,Pa),void 0,1)))(e)?u.transaction(()=>{u.delTables().delValues(),s=os(),u.applyChanges(w(e,1))}):0),setDefaultContent:e=>(u.transaction(()=>{n=1,u.setContent(e),n=0}),p),getTransactionMergeableChanges:(e=!1)=>v(e),applyMergeableChanges:C,merge:e=>{const t=S(),a=e.getMergeableContent();return e.applyMergeableChanges(t),C(a)},__:[()=>{const e=o;return o=0,e},()=>b(!0),e=>v(e,!0)]};return u._[3](y,f,()=>{st(r),st(i)},(e,t,s,i,c,u)=>{jt(kt(kt(r,e,Dt),t,Ut),s),(a||c)&&(c&&(o=1),w([[{[e]:[{[t]:[{[s]:[i,n||u?d:l()]}]}]}],[{}],1]))},(e,t,s,r)=>{jt(i,e),(a||s)&&(s&&(o=1),w([[{}],[{[e]:[t,n||r?d:l()]}],1]))}),Ct(u,(e,t)=>p[t]=G(t,"set")||G(t,"del")||G(t,"apply")||z(t,"Transaction")||t=="call"+R||"use"==t?(...t)=>(e(...t),p):G(t,I)&&z(t,R)?(...a)=>{const s=ns[Re(t,3,-8)]??0,n=a[s];return a[s]=(e,...t)=>n(p,...t),e(...a)}:"isMergeable"==t?()=>!0:e),gt(p)},is=Dt([["avg",[(e,t)=>We(e)/t,(e,t,a)=>e+(t-e)/(a+1),(e,t,a)=>e+(e-t)/(a-1),(e,t,a,s)=>e+(t-a)/s]],["max",[e=>ie(...e),(e,t)=>ie(t,e),(e,t)=>t==e?void 0:e,(e,t,a)=>a==e?void 0:ie(t,e)]],["min",[e=>le(...e),(e,t)=>le(t,e),(e,t)=>t==e?void 0:e,(e,t,a)=>a==e?void 0:le(t,e)]],["sum",[e=>We(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,a)=>e-a+t]]]),ls=(e,t,a,s,n,o=!1)=>{if(tt(a))return;const[r,i,l,c]=n;return o||=we(e),nt(s,([a,s])=>{o||(e=we(a)?i?.(e,s,t++):we(s)?l?.(e,a,t--):c?.(e,s,a,t),o||=we(e))}),o?r(at(a),Ye(a)):e},cs=zt(e=>{const t=Dt(),[a,s,n]=Yt(()=>b),[o,r,i,l,c,u,g,,w,h,y,f]=qt(e,Ie,e=>isNaN(e)||we(e)||ye(e)||fe(e)||e===d?void 0:1*e,a,s),b={setMetricDefinition:(e,a,n,o,r,i,l)=>{const c=pe(n)?[n,r,i,l]:Mt(is,n)??Mt(is,"sum");return w(e,a,(a,n,o,r,i,l)=>{const d=u(e),w=Ye(r);l||=we(d),a();let h=ls(d,w,r,n,c,l);ue(h)||(h=void 0),h!=d&&(g(e,h),s(t,[e],h,d))},Gt(o,1)),b},delMetricDefinition:e=>(h(e),b),getStore:o,getMetricIds:r,forEachMetric:i,hasMetric:l,getTableId:c,getMetric:u,addMetricIdsListener:y,addMetricListener:(e,s)=>a(s,t,[e]),delListener:e=>(n(e),b),destroy:f,getListenerStats:()=>({metric:Xe(t)})};return gt(b)}),ds=(e,t,...a)=>Je(e,(e,t)=>we(e)?e:t(...a,e),t),us=(e,...t)=>Pe(e,e=>e(...t)),gs=zt(e=>{const t=e=>t=>(qe(e,t),M),a=[],s=[],n=[],o=[],r=[],i=[],l=[],c=[],d=[],u=[],g=[],w=[],h=[],y=[],f=t(a),b=t(s),v=t(n),S=t(o),C=t(r),p=t(i),m=t(l),R=t(c),T=t(d),I=t(u),L=t(g),E=t(w),D=t(h),N=t(y),M=gt({getStore:()=>e,addWillSetContentCallback:f,addWillSetTablesCallback:b,addWillSetTableCallback:v,addWillSetRowCallback:S,addWillSetCellCallback:C,addWillSetValuesCallback:p,addWillSetValueCallback:m,addWillDelTablesCallback:R,addWillDelTableCallback:T,addWillDelRowCallback:I,addWillDelCellCallback:L,addWillDelValuesCallback:E,addWillDelValueCallback:D,addWillApplyChangesCallback:N,destroy:()=>{}});return e._[4](e=>ds(a,e),e=>ds(s,e),(e,t)=>ds(n,t,e),(e,t,a)=>ds(o,a,e,t),(e,t,a,s)=>ds(r,s,e,t,a),e=>ds(i,e),(e,t)=>ds(l,t,e),()=>us(c),e=>us(d,e),(e,t)=>us(u,e,t),(e,t,a)=>us(g,e,t,a),()=>us(w),e=>us(h,e),e=>ds(y,e),()=>o.length>0),M}),ws={Idle:0,Loading:1,Saving:2},hs={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ys=Dt(),fs=Dt(),bs=(e,t,a,s,n,o,r,i={},l=0,c=[])=>{let d,u,g,w=0,h=0,y=0;kt(ys,c,()=>0),kt(fs,c,()=>[]);const f=Dt(),[b,v,S,C,p]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.__[1],()=>t.__[2](!a),([[e],[t]])=>!Rt(e)||!Rt(t),t.setDefaultContent]:2!=e?[0,t._[7],t._[8],([e,t])=>!Rt(e)||!Rt(t),t.setContent]:Me("Store type not supported by this Persister"))(r,e,l),[m,R,T]=Yt(()=>$),I=e=>{e!=w&&(w=e,R(f,void 0,w))},L=t=>{(b&&me(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},E=async()=>{k()&&e.__?.[0]?.()&&await O()},D=async e=>(2!=w&&(I(1),h++,await V(async()=>{await Oe(async()=>{const a=await t();me(a)?L(a):we(a)&&e?p(e):we(a)||Me("Content is not an array: "+a)},t=>{o?.(t),e&&p(e)}),I(0),await E()})),$),N=async e=>(M(),await D(e),await Oe(async()=>u=await s(async(e,t)=>{t||e?2!=w&&(I(1),h++,L(t??e),I(0),await E()):await D()}),o),$),M=async()=>(u&&(await Oe(()=>n(u),o),u=void 0),$),O=async e=>(1!=w&&(I(2),y++,await V(async()=>{await Oe(()=>a(v,e),o),I(0)})),$),A=async()=>(P(),await O(),g=e.addDidFinishTransactionListener(()=>{const e=S();C(e)&&O(e)}),$),P=async()=>(g&&(e.delListener(g),g=void 0),$),k=()=>!we(g),_=async(e=!1)=>{const[t,a]=e?[P,M]:[M,P];return await t(),await a(),$},V=async(...e)=>(qe(Mt(fs,c),...e),await(async()=>{if(!Mt(ys,c)){for(Pt(ys,c,1);!we(d=Be(Mt(fs,c)));)await Oe(d,o);Pt(ys,c,0)}})(),$),$={load:D,startAutoLoad:N,stopAutoLoad:M,isAutoLoading:()=>!we(u),save:O,startAutoSave:A,stopAutoSave:P,isAutoSaving:k,startAutoPersisting:async(e,t=!1)=>{const[a,s]=t?[A,N]:[N,A];return await a(e),await s(e),$},stopAutoPersisting:_,getStatus:()=>w,addStatusListener:e=>m(e,f),delListener:t=>(T(t),e),schedule:V,getStore:()=>e,destroy:()=>(je(Mt(fs,c)),_()),getStats:()=>({loads:h,saves:y}),...i};return gt($)},vs="_",Ss="_id",Cs="SELECT",ps="WHERE",ms="TABLE",Rs="INSERT",Ts="DELETE",Is="UPDATE",Ls="ALTER "+ms,Es="FROM",Ds=Ts+" "+Es,Ns=Cs+"*"+Es,Ms="pragma_",Os="data_version",As="schema_version",Ps="pragma_table_",ks="CREATE ",_s=ks+ms,Vs="OR REPLACE ",$s="FUNCTION",xs="$tableName",Hs=(e,t)=>t?async(a,s)=>(t(a,s),await e(a,s)):e,Ws=e=>xe(He(Q(e,"."),e=>`"${Y(e,/"/g,'""')}"`),"."),Fs=(...e)=>Ws(xe(e,"_")),Js=(...e)=>xe(He(e,Ws),u),Us=(e,t=[1])=>xe(He(e,()=>"$"+t[0]++),u),js=(e,t=v)=>ps+`(${Y(t,xs,Ws(e))})`,qs="ColumnName",Gs="store",zs="json",Bs=Gs+"TableName",Qs=Gs+"Id"+qs,Ys=Gs+qs,Xs="autoLoadIntervalSeconds",Ks="rowId"+qs,Zs="tableId",en="tableName",tn="deleteEmptyColumns",an="deleteEmptyTable",sn="condition",nn={mode:zs,[Xs]:1},on={load:0,save:0,[en]:c+"_values"},rn=e=>me(e)?e:void 0,ln=e=>ye(e)||me(e),cn=(e,t,a,s,n)=>{const o=Dt();return Ct(e,(e,r)=>{const i=Re(pt(ht(t,Ce(e)?{[a]:e}:e)),0,mt(t));he(i[0])||s(r,i[0])||(n(r,i[0]),Pt(o,r,i))}),o},dn=e=>{const t=(e=>ht(nn,Ce(e)?{[Bs]:e}:e??{}))(e),a=t[Xs];if(t.mode==zs){const e=t[Bs]??c;return[1,a,[e,t[Qs]??Ss,t[Ys]??Gs],Ut(e)]}const{tables:{load:s={},save:n={}}={},values:o={}}=t,r=ht(on,o),{load:i,save:l}=r,d=[ln(i),ln(l),r[en],rn(i),rn(l)],u=d[2],g=Ut(u),w=Ut(u),h=cn(s,{[Zs]:null,[Ks]:Ss,[sn]:v},Zs,e=>et(w,e),e=>jt(g,e)),y=cn(n,{[en]:null,[Ks]:Ss,[tn]:0,[an]:0,[sn]:null},en,(e,t)=>et(w,t),(e,t)=>jt(g,t));return Ot(y,(e,t)=>t[4]??=Mt(h,t[0])?.[2]??v),[0,a,[h,y,d],g]},un=(e,t,a,s,n,o=gn,r,i)=>{const l=Dt();return[async()=>{st(l),He(await a(e,t),({tn:e,cn:t})=>jt(kt(l,e,Ut),t))},async(t,a,s,n)=>{const o=we(n)?void 0:Ut(n);return((e,t)=>et(Mt(l,e),t))(t,a)?wt(Ue(He(await e(Ns+Ws(t)+js(t,s)),e=>{const t=e[a],s=i?Ct(bt(e,a),i):bt(e,a);return[t,we(o)?s:wt(Ue(St(s,(e,t)=>[t,e]),([e])=>(e=>we(o)||et(o,e))(e)))]}),e=>!we(e[0])&&!Rt(e[1]))):{}},async(t,a,s,i,c,d=!1,g=v,w)=>{const h=we(w)?void 0:Ut(w),y=e=>we(h)||et(h,e),f=Ut();Ct(s??{},e=>He(Ue(ut(e??{}),y),e=>jt(f,e)));const b=at(f);if(we(h)&&!d&&c&&g==v&&Fe(b)&&et(l,t))return await e("DROP "+ms+Ws(t)),void Pt(l,t);const S=Mt(l,t),C=Ut(Ue(at(S),e=>e==a||y(e)));if(Fe(b)||(et(l,t)?await De(He([a,...b],async(s,o)=>{ot(C,s)||(await e(Ls+Ws(t)+"ADD"+Ws(s)+n),0==o&&await e("CREATE UNIQUE INDEX pk ON "+Ws(t)+`(${Ws(a)})`),jt(S,s))})):(await e(_s+Ws(t)+`(${Ws(a)}${n} PRIMARY KEY${xe(He(b,e=>u+Ws(e)+n))});`),Pt(l,t,Ut([a,...b])))),await De([...!d&&i?He(at(C),async s=>{s!=a&&(await e(Ls+Ws(t)+"DROP"+Ws(s)),ot(S,s))}):[]]),d)we(s)?we(h)&&await e(Ds+Ws(t)+js(t,g)):await De(St(s,async(s,n)=>{if(we(s))await e(Ds+Ws(t)+js(t,g)+`AND(${Ws(a)}=$1)`,[n]);else if(!Fe(b)){const i=Ue(ut(s),y);Fe(i)||await o(e,t,a,i,{[n]:He(i,e=>r?r(s[e]):s[e])},S)}}));else if(Fe(b))we(h)&&et(l,t)&&await e(Ds+Ws(t)+js(t,g));else{const n=Ue(at(Mt(l,t)),e=>e!=a&&y(e)),i={},c=[];Ct(s??{},(e,t)=>{i[t]=He(n,t=>r?r(e?.[t]):e?.[t]),qe(c,t)}),await o(e,t,a,n,i,S),await e(Ds+Ws(t)+js(t,g)+`AND${Ws(a)}NOT IN(${Us(c)})`,c)}},async t=>{let a;return await e("BEGIN"),await Oe(async()=>a=await t(),s),await e("END"),a}]},gn=async(e,t,a,s,n)=>{const o=[1];await e(Rs+" INTO"+Ws(t)+"("+Js(a,...s)+")VALUES"+xe(St(n,e=>"($"+o[0]+++","+Us(e,o)+")"),u)+"ON CONFLICT("+Ws(a)+`)DO ${Is} SET`+xe(He(s,e=>Ws(e)+"=excluded."+Ws(e)),u),St(n,(e,t)=>[t,...He(e,e=>e??null)]).flat())},wn=(e,t,a,s,n,o,r,[i,l,c],d,u,g,w,h,y)=>{const[f,b,v,S]=un(t,d,u,n,h,y),C=bs(e,()=>S(async()=>(await f(),la((await b(i,l))[vs]?.[c]??"null"))),e=>S(async()=>{await f(),await v(i,l,{[vs]:{[c]:ia(e()??null)}},!0,!0)}),a,s,n,r,{[w]:()=>g,destroy:async()=>(await C.stopAutoPersisting(),o(),C)},0,g);return C},hn=(e,t,a,s,n,o,r,[i,l,[c,d,u,g,w]],h,y,f,b,v,S,C,p)=>{const[m,R,T,I]=un(t,h,y,n,v,S,C,p),L=(e,t)=>De(At(l,async([a,s,n,o,r],i)=>{t&&!ft(e,i)||await T(a,s,e[i],n,o,t,r)})),E=(e,t,a)=>wt(1==a?Ue(St(e,(e,t)=>[t,e]),([e])=>Ae(t,e)):Ue(He(t,t=>[t,e[t]]),([,e])=>!we(e))),D=async(e,t)=>d?await T(u,Ss,{[vs]:we(w)?e:E(e,w,t)},!0,!0,t,void 0,w):null,N=bs(e,()=>I(async()=>{await m();const e=await(async()=>wt(Ue(await De(At(i,async([e,t,a],s)=>[e,await R(s,t,a)])),e=>!Rt(e[1]))))(),t=await(async()=>c?(await R(u,Ss,void 0,g))[vs]:{})();return Rt(e)&&we(t)?void 0:[e,t]}),(e,t)=>I(async()=>{if(await m(),we(t)){const[t,a]=e();await L(t),await D(a)}else await L(t[0],!0),await D(t[1],!0)}),a,s,n,r,{[b]:()=>f,destroy:async()=>(await N.stopAutoPersisting(),o(),N)},0,f);return N},yn=/^([cd]:)(.+)/,fn=(e,t,a,s,n,o,r,i,l,u,g="getDb")=>{const w=Hs(a,o),[h,,y,f]=dn(t),b=d+ua(ia(y)),S=c+"_"+b,C=async(e,t,a="",s="")=>{const n=Fs(c,e,b);return await w(ks+Vs+$s+n+`()RETURNS ${a}trigger AS $$ ${s}BEGIN ${t}END;$$ LANGUAGE plpgsql;`),n},p=async(e,t,a,s)=>(await w(ks+e+"TRIGGER"+t+a+"EXECUTE "+$s+s+"()"),t),m=e=>`PERFORM pg_notify('${S}',${e});`,R=(e,t)=>h?v:2===t?R(e,0)+" OR "+R(e,1):Y(Mt(y[0],e)?.[2]??v,xs,0==t?"NEW":"OLD"),T=(e,t)=>De(He([Rs,Ts,Is],(a,s)=>p(Vs,Fs(c,"d",b,e,a),`AFTER ${a} ON${Ws(e)}FOR EACH ROW WHEN(${R(e,s)})`,t)));return(h?wn:hn)(e,w,async e=>{const t=await C("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ps} command_tag='${_s}' LOOP ${m("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await p("EVENT ",Fs(c,"c",b),`ON ddl_command_end WHEN TAG IN('${_s}')`,t);const a=await C("d",m("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await De(He(at(f),async e=>(await w(_s+` IF NOT EXISTS${Ws(e)}("_id"text PRIMARY KEY)`),await T(e,a)))),[await s(S,t=>ve(B(t,yn),async([,t,s])=>{et(f,s)&&("c:"==t&&await T(s,a),e())})),[t,a]]},async([e,t])=>{n(e),await w(`DROP FUNCTION IF EXISTS${xe(t,",")}CASCADE`)},r,i,l,y,at(f),async(e,t)=>await e(Cs+` table_name tn,column_name cn FROM information_schema.columns ${ps} table_schema='public'AND table_name IN(${Us(t)})`,t),u,g,"text",void 0,e=>na(e),e=>oa(e))},bn=(e,t,a,s,n,o,r,i,l,c,u="getDb",g)=>{let w,h,y;const f=Hs(a,o),[b,v,S,C]=dn(t);return(b?wn:hn)(e,f,e=>{let t;const a=()=>t=se(()=>Oe(async()=>{const[{d:t,s:a,c:s}]=await f(Cs+` ${Os} d,${As} s,TOTAL_CHANGES() c FROM ${Ms}${Os} JOIN ${Ms}${As}`);t==w&&a==h&&s==y||(ge(w)||e(),w=t,h=a,y=s)}),v),o=()=>{w=h=y=null,ne(t)},r=s(t=>{C.has(t)&&(o(),e(),a())});return a(),()=>{o(),n(r)}},e=>e(),r,i,l,S,at(C),async(e,t)=>await e(Cs+` t.name tn,c.name cn FROM ${Ps}list()t,${Ps}info(t.name)c ${ps} t.schema='main'AND t.type IN('table','view')AND t.name IN(${Us(t)})ORDER BY t.name,c.name`,t),c,u,d,g,e=>ye(e)?1:fe(e)?0:e,void 0)},vn=(e,t)=>[e[t].t,e[t].v],Sn=(e,t,a,s)=>{const n=we(t)?e:It(e,t,()=>({}));let o;return Ct(a,(e,t)=>{s(n,t,e)&&(o=1)}),Ct(n,(e,t)=>{ft(a,t)||(bt(n,t),o=1)}),!we(t)&&Rt(n)&&bt(e,t),o},Cn=(e,t,a=c,s)=>(t.change(e=>It(e,a,wt)),bs(e,async()=>{const e=t.doc();return 2==mt(e?.[a])?vn(e,a):void 0},async(e,s)=>t.change(t=>((e,t,a,s)=>{((e,t)=>{Rt(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[n,o]=vn(e,t),r=()=>{i=1};let i=1;if(ve(s,([e,t])=>{i=0,Ct(e,(e,t)=>i?0:we(e)?bt(n,t):ve(n[t],t=>Ct(e,(e,a)=>i?0:we(e)?bt(t,a):ve(yt(t,a),t=>Ct(e,(e,a)=>we(e)?bt(t,a):t[a]=e),r)),r)),Ct(t,(e,t)=>i?0:we(e)?bt(o,t):o[t]=e)}),i){const[e,t]=a();Sn(n,void 0,e,(e,t,a)=>Sn(n,t,a,(e,t,a)=>Sn(e,t,a,(e,t,a)=>{if(yt(e,t)!==a)return e[t]=a,1}))),Sn(o,void 0,t,(e,t,a)=>{yt(o,t)!==a&&(o[t]=a)})}})(t,a,e,s)),e=>{const s=({doc:t})=>e(vn(t,a));return t.on("change",s),s},e=>{t.removeListener("change",e)},s,1,{getDocHandle:()=>t})),pn="storage",mn=(e,t,a,s)=>bs(e,async()=>la(a.getItem(t)),async e=>a.setItem(t,ia(e())),e=>{const s=s=>{s.storageArea===a&&s.key===t&&Oe(()=>e(la(s.newValue)),e)};return te.addEventListener(pn,s),s},e=>te.removeEventListener(pn,e),s,3,{getStorageName:()=>t}),Rn=(e,t,a)=>mn(e,t,localStorage,a),Tn=(e,t,a)=>mn(e,t,sessionStorage,a),In=(e,t,a)=>bs(e,async()=>la(await(await t.getFile()).text()),async e=>{const a=await t.createWritable();await a.write(ia(e())),await a.close()},async e=>{const a=new FileSystemObserver(()=>e());return await a.observe(t),a},e=>e?.disconnect(),a,3,{getHandle:()=>t}),Ln=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>await t.execO(e,a),e=>t.onUpdate((t,a,s)=>e(s)),e=>e(),s,n,Le,1,t),En=()=>Wa({},d,0),Dn=(e,t,a=d,s)=>{const n=(e,...t)=>a+e+Re(ia(t),1,-1);return bs(e,async()=>{const e=En(),s=En();return(await t.list({prefix:a})).forEach(async([t,n,o],r)=>ve((e=>{if(G(e,a)){const t=Re(e,Te(a),Te(a)+1);return t==U||t==j?[t,...JSON.parse("["+Re(e,Te(a)+1)+"]")]:void 0}})(r),([a,...r])=>a==U?ve(r[0],a=>{const s=It(e[0],a,En);ve(r[1],e=>{const a=It(s[0],e,En);ve(r[2],e=>a[0][e]=[t,n,o],()=>ja(a,n,o))},()=>ja(s,n,o))},()=>ja(e,n,o)):a==j?ve(r[0],e=>s[0][e]=[t,n,o],()=>ja(s,n,o)):0)),Rt(e[0])&&Rt(s[0])?void 0:[e,s]},async(e,[[a,s,o],[r,i,l]]=e())=>{const c=Dt();Pt(c,n(U),[0,s,o]),vt(a,([e,t,a],s)=>{Pt(c,n(U,s),[0,t,a]),vt(e,([e,t,a],o)=>{Pt(c,n(U,s,o),[0,t,a]),vt(e,(e,t)=>Pt(c,n(U,s,o,t),e))})}),Pt(c,n(j),[0,i,l]),vt(r,(e,t)=>Pt(c,n(j,t),e)),await t.put(Vt(c))},Le,Le,s,2,{getStorage:()=>t})},Nn=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>await t.db.raw({sql:e,args:a}),e=>t.notifier.subscribeToDataChanges(a=>$e(t.notifier.alias(a),({tablename:t})=>e(t))),e=>e(),s,n,Le,1,t,"getElectricClient"),Mn=(t,a,s,n,o)=>bn(t,s,async(e,t=[])=>await a.getAllAsync(e,t),t=>e(({tableName:e})=>t(e)),e=>e.remove(),n,o,Le,3,a),On=(e,r,i)=>bs(e,async()=>la(await o(r,m)),async e=>await n(r,ia(e()),m),e=>(t(r)||a(r,d,m),s(r,()=>e())),e=>e?.close(),i,3,{getFilePath:()=>r}),An=[U,j],Pn={keyPath:"k"},kn=async(e,t)=>{const a=St(t,(t,a)=>_n(e,"put",{k:a,v:t}));He(await _n(e,"getAllKeys"),s=>ft(t,s)?0:qe(a,_n(e,"delete",s))),await De(a)},_n=async(e,t,a)=>Ee((s,n)=>{const o=e[t](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${t} error`)}),Vn=(e,t,a=1,s)=>{const n=async(e,a=[],s=0)=>Ee((n,o)=>{const r=(te?te.indexedDB:indexedDB).open(t,s?2:void 0);r.onupgradeneeded=()=>s&&He(An,e=>Oe(()=>r.result.createObjectStore(e,Pn))),r.onsuccess=()=>Oe(async()=>{const t=r.result.transaction(An,"readwrite"),s=await De(He(An,(s,n)=>e(t.objectStore(s),a[n])));r.result.close(),n(s)},e=>{r.result.close(),o(e)}),r.onerror=()=>o("indexedDB.open error")});return bs(e,async()=>await n(async e=>wt(He(await _n(e,"getAll"),({k:e,v:t})=>[e,t]))),e=>n((e,t)=>kn(e,t),e(),1),e=>se(e,a),e=>ne(e),s,1,{getDbName:()=>t})},$n=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>(await t.execute({sql:e,args:a})).rows,()=>Le,e=>e(),s,n,Le,1,t,"getClient"),xn="s",Hn="/store",Wn=(e,t,a)=>e+t+(Ce(a)?a:ia(a)),Fn=(e,t,a)=>{const s=Te(e);return G(t,e)?[t[s],(a?la:ae)(Re(t,s+1))]:void 0},Jn=(e,t,a,s)=>{const{host:n,room:o}=t.partySocketOptions,{storeProtocol:r="https",storePath:i=Hn,messagePrefix:l=d}={...Ce(a)?{storeProtocol:a}:a},c=r+"://"+n+"/parties/"+t.name+"/"+o+i,u=async e=>await(await fetch(c,{...e?{method:"PUT",body:ra(e)}:{},mode:"cors",cache:"no-store"})).json();return bs(e,u,async(e,a)=>{a?t.send(Wn(l,xn,a)):await u(e())},e=>{const a=t=>ve(Fn(l,t.data,1),([t,a])=>{t==xn&&e(void 0,a)});return t.addEventListener(W,a),a},e=>{t.removeEventListener(W,e)},s,1,{getConnection:()=>t})},Un="hasStore",jn=wt(He(["Origin","Methods","Headers"],e=>["Access-Control-Allow-"+e,"*"])),qn=async(e,t=d)=>!!await e.get(t+Un),Gn=async(e,t=d)=>{const a={},s={};return Ot(await e.list(),(e,n)=>ve(Fn(t,e),([e,t])=>{if(e==U){const[e,s,o]=oa("["+t+"]");It(It(a,e,wt),s,wt)[o]=n}else e==j&&(s[t]=n)})),[a,s]},zn=async(e,t,a)=>e.party.broadcast(Wn(e.config.messagePrefix??d,xn,t),a),Bn=async(e,t,a,s)=>{const n=e.party.storage,o=e.config.storagePrefix??d,r={[o+Un]:1},i=[],l=[];await De(St(t[0],async(t,c)=>we(t)?!a&&await e.canDelTable(c,s)&&ze(l,Qn(o,U,c)):await e.canSetTable(c,a,s)&&await De(St(t,async(t,d)=>we(t)?!a&&await e.canDelRow(c,d,s)&&qe(l,Qn(o,U,c,d)):await e.canSetRow(c,d,a,s)&&await De(St(t,async(t,l)=>{const u=[c,d,l],g=Qn(o,U,...u);we(t)?!a&&await e.canDelCell(...u,s)&&qe(i,g):await e.canSetCell(...u,t,a,s,await n.get(g))&&(r[g]=t)})))))),await De(St(t[1],async(t,l)=>{const c=o+j+l;we(t)?!a&&await e.canDelValue(l,s)&&qe(i,c):await e.canSetValue(l,t,a,s,await n.get(c))&&(r[c]=t)})),Fe(l)||Ot(await n.list(),e=>Pe(l,t=>!G(e,t)||qe(i,e)&&0)),await n.delete(i),await n.put(r)},Qn=(e,t,...a)=>Wn(e,t,Re(ra(a),1,-1)),Yn=async(e,t,a=null)=>new Response(a,{status:t,headers:e.config.responseHeaders});class Xn{constructor(e){this.party=e,this.config.storePath??=Hn,this.config.messagePrefix??=d,this.config.storagePrefix??=d,this.config.responseHeaders??=jn}party;config={};async onRequest(e){const{party:{storage:t},config:{storePath:a=Hn,storagePrefix:s}}=this;if(new URL(e.url).pathname.endsWith(a)){const a=await qn(t,s),n=await e.text();return"PUT"==e.method?a?Yn(this,205):(await Bn(this,oa(n),!0,e),Yn(this,201)):Yn(this,200,a?ra(await Gn(t,s)):d)}return Yn(this,404)}async onMessage(e,t){const{config:{messagePrefix:a=d,storagePrefix:s}}=this;await ve(Fn(a,e,1),async([e,a])=>{e==xn&&await qn(this.party.storage,s)&&(await Bn(this,a,!1,t),zn(this,a,[t.id]))})}async canSetTable(e,t,a){return!0}async canDelTable(e,t){return!0}async canSetRow(e,t,a,s){return!0}async canDelRow(e,t,a){return!0}async canSetCell(e,t,a,s,n,o,r){return!0}async canDelCell(e,t,a,s){return!0}async canSetValue(e,t,a,s,n){return!0}async canDelValue(e,t){return!0}}const Kn=async(e,t,a,s,n)=>fn(e,a,async(e,a=[])=>(await t.query(e,a)).rows,(e,a)=>t.listen(e,a),e=>Oe(e,n),s,n,Le,3,t,"getPglite"),Zn=async(e,t,a,s,n)=>{const o=await(t.reserve?.());return fn(e,a,o?.unsafe,async(e,a)=>t.listen(e,a),e=>Oe(e.unlisten,n),s,n,()=>o?.release?.(),3,t,"getSql")},eo=(e,t,a,s,n)=>{let o;return bn(e,a,async(e,a=[])=>t.execute(e,a).then(e=>e.rows?._array??[]),e=>{const a=new AbortController,s=t.onChange({rawTableNames:!0,signal:a.signal});return(async()=>{for await(const e of s)o&&He(e.changedTables,o)})(),o=e,a},e=>{o=void 0,e.abort()},s,n,Le,1,t,"getPowerSync",to)},to=async(e,t,a,s,n)=>{const o=xe(He(s,(e,t)=>Ws(e)+"=$"+(t+1)),u);for(const[r,i]of St(n,(e,t)=>[t,e])){const n=He(i,e=>e??null);if(Fe(await e(Is+Ws(t)+" SET"+o+" "+ps+Ws(a)+"=$"+(i.length+1)+" RETURNING"+Ws(a),[...n,r]))){const o=[1];await e(Rs+" INTO"+Ws(t)+"("+Js(a,...s)+")VALUES("+Us([r,...i],o)+")",[r,...n])}}},ao=(e,t,a="storage",s)=>bs(e,async()=>{const e=t.getString(a),s=we(e)?void 0:JSON.parse(e);return Promise.resolve(s)},async e=>{const s=e();we(s)||t.set(a,JSON.stringify(s))},e=>t.addOnValueChangedListener(s=>{if(s===a){const s=t.getString(a);s&&e(JSON.parse(s))}}),e=>{e.remove()},s,3,{getStorageName:()=>a}),so=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>(await t.executeSql(e,a))[0].rows.raw(),Le,Le,s,n,Le,3,t),no=e=>e.headers.get("ETag")??d,oo=e=>e==d?void 0:{"If-None-Match":e},ro=(e,t,a,s=5,n)=>{let o=d;return bs(e,async()=>{const e=await fetch(t,{headers:oo(o)});return o=no(e),oa(await e.text())},async e=>await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:ra(e())}),e=>se(async()=>{const a=await fetch(t,{method:"HEAD",headers:oo(o)}),s=no(a);s!=o&&(o=s,e())},s),e=>ne(e),n,1,{getUrls:()=>[t,a]})},io=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>t.query(e).all(...a),()=>Le,e=>e(),s,n,Le,3,t),lo=(e,t,a,s,n,o)=>bn(e,s,async(e,t=[])=>a.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map(e=>({...e})),e=>t.capi.sqlite3_update_hook(a,(t,a,s,n)=>e(n),0),()=>t.capi.sqlite3_update_hook(a,Le,0),n,o,Le,3,a),co="change",uo=(e,t,a,s,n)=>bn(e,a,async(e,a=[])=>await Ee((s,n)=>t.all(e,a,(e,t)=>e?n(e):s(t))),e=>{const a=(t,a,s)=>e(s);return t.on(co,a),a},e=>t.off(co,e),s,n,Le,3,t),go="delete",wo=e=>[e.get(U),e.get(j)],ho=(e,t,a,s)=>{const n=we(t)?e:e.get(t)??e.set(t,new r);let o;return Ct(a,(e,t)=>{s(n,t,e)&&(o=1)}),n.forEach((e,t)=>{ft(a,t)||(n.delete(t),o=1)}),we(t)||n.size||e.delete(t),o},yo=(e,t,a=c,s)=>{const n=t.getMap(a);return bs(e,async()=>n.size?[n.get(U).toJSON(),n.get(j).toJSON()]:void 0,async(e,a)=>t.transact(()=>((e,t,a)=>{e.size||(e.set(U,new r),e.set(j,new r));const[s,n]=wo(e),o=()=>{i=1};let i=1;if(ve(a,([e,t])=>{i=0,Ct(e,(e,t)=>i?0:we(e)?s.delete(t):ve(s.get(t),t=>Ct(e,(e,a)=>i?0:we(e)?t.delete(a):ve(t.get(a),t=>Ct(e,(e,a)=>we(e)?t.delete(a):t.set(a,e)),o)),o)),Ct(t,(e,t)=>i?0:we(e)?n.delete(t):n.set(t,e))}),i){const[e,a]=t();ho(s,void 0,e,(e,t,a)=>ho(s,t,a,(e,t,a)=>ho(e,t,a,(e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1}))),ho(n,void 0,a,(e,t,a)=>{n.get(t)!==a&&n.set(t,a)})}})(n,e,a)),e=>{const t=t=>e(void 0,((e,t)=>{if(1==Te(t)&&Fe(t[0].path))return[e.get(U).toJSON(),e.get(j).toJSON(),1];const[a,s]=wo(e),n={},o={};return $e(t,({path:e,changes:{keys:t}})=>Be(e)==U?ve(Be(e),s=>{const o=It(n,s,wt),r=a.get(s);ve(Be(e),e=>{const a=It(o,e,wt),s=r.get(e);Ot(t,(e,{action:t})=>a[e]=t==go?void 0:s.get(e))},()=>Ot(t,(e,{action:t})=>o[e]=t==go?void 0:r.get(e)?.toJSON()))},()=>Ot(t,(e,{action:t})=>n[e]=t==go?void 0:a.get(e)?.toJSON())):Ot(t,(e,{action:t})=>o[e]=t==go?void 0:s.get(e))),[n,o,1]})(n,t));return n.observeDeep(t),t},e=>{n.unobserveDeep(e)},s,1,{getYDoc:()=>t})},fo="_",bo=zt(e=>{const t=e._[0],a=t(),s=t(),n=Dt(),o=Dt(),r=Ut(),i=Dt(),l=Dt(),c={table:0,tableCellIds:0,rowCount:0,rowIds:0,sortedRowIds:0,row:0,cellIds:0,cell:0},u=Dt(),g=Dt(),{_:[,w,h],delListener:y}=s,[f,b,v,S,C,p,m,L,,E,N,M]=qt(e,()=>[],Ie,w,h),$=e=>kt(o,e,t),x=(e,t,...a)=>$e(a,a=>jt(kt(kt(u,t,Dt),e,Ut),a)),H=e=>{ve(Mt(u,e),e=>{Ot(e,(e,t)=>nt(t,t=>e.delListener(t))),st(e)}),$e([$(e),Mt(n,e)],t=>t?.delTable(e))},W=(e,t,a,...s)=>{const n=kt(kt(g,t,Dt),e,Ut);return $e(s,t=>{jt(n,t),a&&e.callListener(t)}),s},F=(e,t,a)=>ve(Mt(Mt(g,e),t),s=>{t.delListener(a),ot(s,a),tt(s)&&Pt(Mt(g,e),t)}),J=e=>ve(Mt(g,e),e=>{Ot(e,(e,t)=>nt(t,t=>e.delListener(t))),st(e)}),U=(e,t,a)=>x(t,e,t.addStartTransactionListener(a.startTransaction),t.addDidFinishTransactionListener(()=>a.finishTransaction())),j=(e,t)=>(Rt(t)?a.delRow:a.setRow)(fo,e,{...t}),q=a=>$(a).transaction(()=>ve(p(a),([s,,o])=>{const i=C(a),l=o?$(i):e,c=$(a),u=z(a);jt(r,a),H(a),J(a);const g=[],w=[[void 0,[i,void 0,void 0,[],Dt(),l]]],h=[],y=[],f=[];s({select:(e,t,a)=>{const s=ye(e)?t:e,n=ye(e)?a:t,o=pe(e)?[Te(g)+d,e]:we(n)?[e,t=>t(e)]:[n,t=>ye(e)?t(!0,s,n):t(s,n)];return qe(g,o),{as:e=>o[0]=e}},join:(t,a,s,n)=>{const o=ye(t)?a:t,[r,i]=ye(t)?we(n)||pe(s)?[void 0,s]:[s,n]:we(s)||pe(a)?[void 0,a]:[a,s],l=[o,[o,r,pe(i)?i:e=>e(i),[],Dt(),ye(t)?$(o):e]];return qe(w,l),{as:e=>l[0]=e}},where:(e,t,a,s)=>qe(h,pe(e)?e:ye(e)?e=>e(!0,t,a)===s:we(a)?a=>a(e)===t:s=>s(e,t)===a),group:(e,t,a,s,n)=>{const o=[e,[e,pe(t)?[t,a,s,n]:Mt(is,t)??[(e,t)=>t]]];return qe(y,o),{as:e=>o[0]=e}},having:(e,t)=>qe(f,pe(e)?e:a=>a(e)===t),param:e=>yt(u,e)});const b=Dt(g);if(tt(b))return ot(r,a),B;const v=Dt(w);Ot(v,(e,[,t])=>ve(Mt(v,t),({3:t})=>we(e)?0:qe(t,e)));const S=Dt(y),p=!tt(S)||!Fe(f),m=p?(e=>kt(n,e,t))(a):c;if(p){U(a,m,c);const e=Dt();Ot(S,(t,[a,s])=>jt(kt(e,a,Ut),[t,s]));const t=Ut();Ot(b,a=>et(e,a)?0:jt(t,a));const s=Dt(),n=(t,s,n,o)=>ve(t,([r,i,l,d])=>{Ot(s,(t,[a])=>{const s=kt(r,t,Dt),i=Mt(s,n),l=o?void 0:a;if(i!==l){const a=Ut([[i,l]]),o=Ye(s);Pt(s,n,l),nt(Mt(e,t),([e,t])=>{const n=ls(d[e],o,s,a,t);d[e]=we(Aa(n))?void 0:n})}}),tt(i)||!Pe(f,e=>e(e=>d[e]))?c.delRow(a,l):we(l)?t[2]=c.addRow(a,d):c.setRow(a,l,d)});x(m,a,m.addRowListener(a,null,(o,r,i,l)=>{const c=[],d=[],u=Dt(),g=m.hasRow(a,i);let w=!g;nt(t,e=>{const[t,s,n]=l(a,i,e);qe(c,s),qe(d,n),w||=t}),Ot(e,e=>{const[t,,s]=l(a,i,e);(w||t)&&Pt(u,e,[s])}),w&&n(Jt(s,c,void 0,([,e])=>(ot(e,i),tt(e))),u,i,1),g&&n(Jt(s,d,()=>{const e={};return nt(t,t=>e[t]=m.getCell(a,i,t)),[Dt(),Ut(),void 0,e]},([,e])=>{jt(e,i)}),u,i)}))}U(a,l,m);const R=(e,t,s,n,o)=>{const r=e=>t.getCell(s,n,e);$e(o,t=>{const[s,,n,o,i,l]=Mt(v,t),c=n?.(r,e),d=Mt(i,e),u=d?.[0];c!=u&&(ve(d,([,e,t])=>F(a,e,t)),Pt(i,e,we(c)?void 0:[c,l,...W(l,a,1,l.addRowListener(s,c,()=>R(e,l,s,c,o)))]))}),(e=>{const t=(t,a,s)=>{const n=ye(t)?a:t,o=ye(t)?s:a;if(we(o))return l.getCell(i,e,t);if(n===i&&!ye(t))return l.getCell(i,e,o);const r=Mt(v,n);return we(r)?void 0:r[5].getCell(r[0],Mt(r[4],e)?.[0],o)};m.transaction(()=>Pe(h,e=>e(t))?Ot(b,(s,n)=>m._[5](a,e,s,n(t,e))):m.delRow(a,e))})(e)},{3:T}=Mt(v,void 0),I=(e,t,s)=>{l.hasRow(i,s)?R(s,l,i,s,T):(m.delRow(a,s),nt(v,({4:e})=>ve(Mt(e,s),([,t,n])=>{F(a,t,n),Pt(e,s)})))};return m.transaction(()=>{$e(l.getRowIds(i),e=>I(0,0,e)),W(l,a,0,l.addRowListener(i,null,I))}),ot(r,a),B})),G=e=>(ve(p(e),([,e])=>a.delListener(e)),a.delRow(fo,e),H(e),J(e),E(e),B),z=e=>a.getRow(fo,e),B={setQueryDefinition:(e,t,s,n,o={})=>{const[r,i,l,c]=ye(t)?[s,n,1,o]:[t,s,0,n??{}];return ve(p(e),([,e])=>a.delListener(e)),L(e,r),m(e,[i,a.addRowListener(fo,e,()=>q(e)),l]),j(e,c),q(e),B},delQueryDefinition:G,getParamValues:z,getParamValue:(e,t)=>a.getCell(fo,e,t),setParamValues:(e,t)=>(S(e)&&j(e,t),B),setParamValue:(e,t,s)=>(S(e)&&a.setCell(fo,e,t,s),B),getStore:f,getQueryIds:b,forEachQuery:v,hasQuery:S,getTableId:C,forEachResultTable:e=>v(t=>$(t).hasTable(t)?e(t,e=>B.forEachResultRow(t,e)):0),addQueryIdsListener:e=>N(()=>e(B)),addParamValuesListener:(e,t)=>"p"+a.addRowListener(fo,e,(e,a,s)=>t(B,s,z(s))),addParamValueListener:(e,t,s)=>"p"+a.addCellListener(fo,e,t,(e,t,a,n,o)=>s(B,a,n,o)),delListener:e=>{const t=Mt(i,e);if("p"==e[0])a.delListener(Re(e,1));else if(we(t))y(e);else{const[a,s,n]=t;Ot(s,(e,[t,a])=>t.delListener(a)),ve(n,y),Pt(i,e),y(e),c[a]--}return B},destroy:()=>{$e(b(),G),M()},getListenerStats:()=>({...c,paramValues:a.getListenerStats().row-Te(b()),paramValue:a.getListenerStats().cell})};return Ct({[D]:[2,1],[D+V]:[1,1],[A]:[1,1],[P]:[1,1],[k]:[1,5],[O]:[3,2],[V]:[1,2],[_]:[3,3]},([e,t],a)=>{$e(Re(["get","has","forEach"],0,e),e=>B[e+T+a]=(...t)=>$(t[0])[e+a](...t)),B[I+T+a+R]=(...e)=>((s,n)=>{const o=w(Ie,l),r=Dt(),d=()=>{const s=null==n?b():[n];$e(s,s=>{return et(r,s)?0:Pt(r,s,[$(s),(n=$(s),n[I+a+R](...((e,t)=>5==t?[e[0],e[1]??void 0,e[2],e[3],e[4]]:Re(e,0,t))(e,t),(a,...s)=>e[t](B,...s),!0))]);var n}),Ot(r,(e,[t,a])=>null==n&&S(e)||e==n?0:(t.delListener(a),void Pt(r,e)))};return d(),Pt(i,o,[s,r,null==n?N(d):void 0]),c[s]++,o})((e=>e[0].toLowerCase()+Re(e,1))(a),e[0])}),gt(B)}),vo=zt(e=>{const t=Dt(),a=Dt(),s=Dt(),n=Dt(),[o,r,i]=Yt(()=>m),[l,c,u,g,w,h,,,y,f,b,v]=qt(e,()=>[Dt(),Dt(),Dt(),Dt()],e=>we(e)?void 0:e+d,o,r),S=(e,t,a)=>ve(h(e),([s,,n])=>{if(!et(n,t)){const o=Ut();if(w(e)!=p(e))jt(o,t);else{let e=t;for(;!we(e)&&!et(o,e);)jt(o,e),e=Mt(s,e)}if(a)return o;Pt(n,t,o)}return Mt(n,t)}),C=(e,t)=>ve(h(e),([,,e])=>Pt(e,t)),p=e=>Mt(t,e),m={setRelationshipDefinition:(e,o,i,l)=>(Pt(t,e,i),y(e,o,(t,o)=>{const i=Ut(),l=Ut(),c=Ut(),[d,u]=h(e);nt(o,([t,a],s)=>{we(t)||(jt(l,t),ve(Mt(u,t),e=>{ot(e,s),tt(e)&&Pt(u,t)})),we(a)||(jt(l,a),et(u,a)||Pt(u,a,Ut()),jt(Mt(u,a),s)),jt(i,s),Pt(d,s,a),Ot(Mt(n,e),t=>{et(S(e,t),s)&&jt(c,t)})}),t(),nt(i,t=>r(a,[e,t])),nt(l,t=>r(s,[e,t])),nt(c,t=>{C(e,t),r(n,[e,t])})},Gt(l)),m),delRelationshipDefinition:e=>(Pt(t,e),f(e),m),getStore:l,getRelationshipIds:c,forEachRelationship:t=>u(a=>t(a,t=>e.forEachRow(w(a),t))),hasRelationship:g,getLocalTableId:w,getRemoteTableId:p,getRemoteRowId:(e,t)=>Mt(h(e)?.[0],t),getLocalRowIds:(e,t)=>at(Mt(h(e)?.[1],t)),getLinkedRowIds:(e,t)=>we(h(e))?[t]:at(S(e,t,!0)),addRelationshipIdsListener:b,addRemoteRowIdListener:(e,t,s)=>o(s,a,[e,t]),addLocalRowIdsListener:(e,t,a)=>o(a,s,[e,t]),addLinkedRowIdsListener:(e,t,a)=>(S(e,t),o(a,n,[e,t])),delListener:e=>(C(...i(e)??[]),m),destroy:v,getListenerStats:()=>({remoteRowId:Ke(a),localRowIds:Ke(s),linkedRowIds:Ke(n)})};return gt(m)}),So={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},Co=(e,t,a,s,n,o,r,i,l={})=>{let c,u=0,g=0,w=0;const h=Dt(),y=()=>sa(11),f=(e,a,s,n)=>{g++,o?.(e,a,s,n),t(e,a,s,n)},b=async(e,t,a,s)=>Ee((o,r)=>{const i=s+"."+sa(4),l=oe(()=>{ot(h,i),r(`No response from ${e??"anyone"} to ${i}, `+t)},n);Pt(h,i,[e,(e,t)=>{clearTimeout(l),ot(h,i),o([e,t,s])}]),f(e,i,t,a)}),v=(e,[t,a])=>{vt(t,([t,a],s)=>{const n=It(e[0],s,qa);vt(t,([e,t],a)=>{const s=It(n[0],a,qa);vt(e,([e,t],a)=>s[0][a]=Ha(e,t)),s[1]=Ua(s[1],t)}),n[1]=Ua(n[1],a)}),e[1]=Ua(e[1],a)},S=(t=null,a,s=y())=>Oe(async()=>{we(a)&&([a,t,s]=await b(null,1,d,s));const[n,o]=a,[r,i]=e.getMergeableContentHashes();let l=qa();if(r!=n){const[a,n]=(await b(t,4,e.getMergeableTableHashes(),s))[0];if(l=a,!Rt(n)){const[a,o]=(await b(t,5,e.getMergeableRowHashes(n),s))[0];if(v(l,a),!Rt(o)){const a=(await b(t,6,e.getMergeableCellHashes(o),s))[0];v(l,a)}}}return[l,i==o?qa():(await b(t,7,e.getMergeableValueHashes(),s))[0],1]},i),C=bs(e,async()=>{const e=await S();return!e||Rt(e[0][0])&&Rt(e[1][0])?void 0:e},async(t,a)=>a?f(null,y(),3,a):f(null,y(),2,e.getMergeableContentHashes()),e=>c=e,()=>c=void 0,i,2,{startSync:async e=>(u=1,await C.startAutoPersisting(e)),stopSync:async()=>(u=0,await C.stopAutoPersisting(),C),destroy:async()=>(await C.stopSync(),s(),C),getSynchronizerStats:()=>({sends:g,receives:w}),...l},1);return a((t,a,s,n)=>{const o=u||C.isAutoLoading();w++,r?.(t,a,s,n),0==s?ve(Mt(h,a),([e,a])=>he(e)||e==t?a(n,t):0):2==s&&o?S(t,n,a??void 0).then(e=>{c?.(void 0,e)}).catch(i):3==s&&o?c?.(void 0,n):ve(1==s&&(u||C.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,e=>{f(t,a,0,e)})}),C},po=(e,t,a,s,n)=>{const o=sa(),r=new BroadcastChannel(t);return Co(e,(e,t,a,s)=>r.postMessage([o,e,t,a,s]),e=>{r.onmessage=({data:[t,a,s,n,r]})=>he(a)||a==o?e(t,s,n,r):0},()=>{r.close()},.01,a,s,n,{getChannelName:()=>t})},mo=Dt(),Ro=(e,t,a,s)=>{const n=sa();return Co(e,(e,t,a,s)=>oe(()=>he(e)?Ot(mo,(e,o)=>e!=n?o(n,t,a,s):0):Mt(mo,e)?.(n,t,a,s)),e=>{Pt(mo,n,e)},()=>{ot(mo,n)},.01,t,a,s)},To="\n",Io=/^(.+)\n(\d+)\n(\d+)\n([\s\S]*)$/,Lo=(e,t)=>{const a=e.indexOf(To);-1!==a&&t(Re(e,0,a),Re(e,a+1))},Eo=(e,t,a)=>a(e,...la(t)),Do=(e,t=1)=>{const a=Dt(),s=e=>oe(()=>ot(a,e),t);return t=>Lo(t,(t,n)=>{const[,o,r,i,l]=B(n,Io)??[];if(o){const n=parseInt(r),c=parseInt(i);if(c>0&&n>=0&&n<c){const r=t+To+o,i=kt(a,r,()=>[[],c,c,s(r)]),[d]=i;c==i[2]&&we(d[n])&&(re(i[3]),i[3]=s(r),d[n]=l,i[1]--),0==i[1]&&(((e,t)=>{re(t[3]),ot(a,e)})(r,i),Eo(t,xe(d),e))}}else Eo(t,n,e)})},No=(e,t)=>e+To+t,Mo=(e,t,a,s,n)=>{const o=e??d,r=ia([t,a,s]),i=ce(n??0);if(we(n)||i<1||Te(r)<=i)return[No(o,r)];const l=B(r,RegExp(`.{1,${i}}`,"g")),c=Te(l??[]),u=sa();return He(l??[],(e,t)=>No(o,xe([u,t,c,e],To)))},Oo=async(e,t,a=1,s,n,o,r)=>{const i=(e,a)=>(t.addEventListener(e,a),()=>t.removeEventListener(e,a)),l=Co(e,(e,...a)=>$e(Mo(e,...a,r),e=>t.send(e)),e=>{const t=Do(e,a);i(W,({data:e})=>t(e.toString(m)))},()=>{t.close()},a,s,n,o,{getWebSocket:()=>t});return Ee(e=>{if(t.readyState!=t.OPEN){const t=t=>{t&&o?.(t),a(),s(),e(l)},a=i("open",()=>t()),s=i(F,t)}else e(l)})},Ao=/\/([^?]*)/,Po="S",ko=e=>B(new URL(e.url).pathname,Ao)?.[1]??d,_o=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,Vo=(e,t=null,a=null)=>new Response(a,{status:e,webSocket:t}),$o=()=>Vo(426,null,"Upgrade required");class xo extends i{#e;constructor(e,t){super(e,t),this.ctx.blockConcurrencyWhile(async()=>await ve(await this.createPersister(),async e=>{const t=this.getRequestTimeoutSeconds(),a=Co(e.getStore(),(e,t,a,s)=>$e(Mo(e,t,a,s,this.getFragmentSize()),e=>this.#t(Po,e)),e=>this.#e=Do(e,t),Le,t);await e.load(),await e.startAutoSave(),oe(a.startSync)}))}fetch(e){const t=ko(e);return ve(_o(e),e=>{const[a,s]=pt(new WebSocketPair);return Fe(this.#a())&&this.onPathId(t,1),this.ctx.acceptWebSocket(s,[e,t]),this.onClientId(t,e,1),s.send(No(Po,ia([null,1,d]))),Vo(101,a)},$o)}webSocketMessage(e,t){ve(this.ctx.getTags(e)[0],a=>this.#t(a,t.toString(),e))}webSocketClose(e){const[t,a]=this.ctx.getTags(e);this.onClientId(a,t,-1),1==Te(this.#a())&&this.onPathId(a,-1)}#t(e,t,a){Lo(t.toString(),(t,s)=>{const n=No(e,s);this.onMessage(e,t,s),t==d?(e!=Po&&this.#e?.(n),$e(this.#a(),e=>{e!=a&&e.send(n)})):t==Po?this.#e?.(n):t!=e&&this.#a(t)[0]?.send(n)})}#a(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#a()[0])?.[1]}getClientIds(){return He(this.#a(),e=>this.ctx.getTags(e)[0])}getFragmentSize(){}getRequestTimeoutSeconds(){return 1}onPathId(e,t){}onClientId(e,t,a){}onMessage(e,t,a){}}const Ho=e=>(t,a)=>_o(t)?a[e].get(a[e].idFromName(ko(t))).fetch(t):$o(),Wo=/\/([^?]*)/,Fo=e=>{const t=Dt();return e.on("connection",(e,a)=>ve(B(a.url,Wo),([,s])=>ve(a.headers["sec-websocket-key"],async a=>{const n=kt(t,s,Dt);Pt(n,a,e),e.on(W,e=>Lo(e.toString(m),(e,t)=>{const s=No(a,t);e===d?Ot(n,(e,t)=>e!==a?t.send(s):0):Mt(n,e)?.send(s)})),e.on("close",()=>{ot(n,a),tt(n)&&ot(t,s)})}))),gt({getWebSocketServer:()=>e,destroy:async()=>{st(t),e.close()}})},Jo=/\/([^?]*)/,Uo=(e,t,a,s=1,n)=>{const o=Dt(),r=Dt(),i=Dt(),l=Dt(),[c,u,g]=Yt(()=>y),w=async e=>{await(e[1]?.destroy()),await(e[2]?.destroy())},h=(e,t,a)=>s=>Lo(s,(s,n)=>{const o=No(e,n);s===d?("S"!==e&&a[3]?.(o),Ot(t,(t,a)=>t!==e?a.send(o):0)):"S"===s?a[3]?.(o):Mt(t,s)?.send(o)});e.on("connection",(e,c)=>ve(B(c.url,Jo),([,d])=>ve(c.headers["sec-websocket-key"],async c=>{const g=kt(i,d,Dt),y=kt(l,d,()=>[0]),f=h(c,g,y);tt(g)&&(u(o,void 0,d,1),await(async(e,o,r)=>ve(await(t?.(o)),t=>{e[0]=1,e[1]=me(t)?t[0]:t;const o=h("S",r,e);e[2]=Co(e[1].getStore(),(e,t,a,s)=>$e(Mo(e,t,a,s,n),o),t=>{e[3]=Do(t,s)},Le,s,void 0,void 0,a),e[4]=[],e[5]=me(t)?t[1]:e=>0}))(y,d,g)),Pt(g,c,e),u(r,[d],c,1),e.on(W,e=>{const t=e.toString(m);0==y[0]?f(t):qe(y[4],t)}),1==y[0]&&(await(async e=>{e[0]=2,await e[1].startAutoLoad(),await e[1].startAutoSave(),await e[2].startSync(),e[5](e[1].getStore()),e[0]=0})(y),$e(y[4],f),y[4]=[]),e.on("close",async()=>{ot(g,c),u(r,[d],c,-1),tt(g)&&(await w(y),ot(l,d),ot(i,d),u(o,void 0,d,-1))}),a&&e.on(F,a)}))),a&&e.on(F,a);const y={getWebSocketServer:()=>e,getPathIds:()=>Nt(i),getClientIds:e=>Nt(Mt(i,e)),addPathIdsListener:e=>c(e,o),addClientIdsListener:(e,t)=>c(t,r,[e]),delListener:e=>(g(e),y),getStats:()=>({paths:Ye(i),clients:Xe(i)}),destroy:async()=>{st(i),await De(At(l,w)),e.close()}};return gt(y)};export{So as Message,hs as Persists,ws as Status,Xn as TinyBasePartyKitServer,xo as WsServerDurableObject,ga as addOrRemoveHash,zn as broadcastChanges,Cn as createAutomergePersister,po as createBroadcastChannelSynchronizer,Xt as createCheckpoints,Ln as createCrSqliteWasmPersister,bs as createCustomPersister,fn as createCustomPostgreSqlPersister,bn as createCustomSqlitePersister,Co as createCustomSynchronizer,Dn as createDurableObjectStoragePersister,Nn as createElectricSqlPersister,Mn as createExpoSqlitePersister,On as createFilePersister,Vn as createIndexedDbPersister,Oa as createIndexes,$n as createLibSqlPersister,Rn as createLocalPersister,Ro as createLocalSynchronizer,rs as createMergeableStore,cs as createMetrics,gs as createMiddleware,In as createOpfsPersister,Jn as createPartyKitPersister,Kn as createPglitePersister,Zn as createPostgresPersister,eo as createPowerSyncPersister,bo as createQueries,ao as createReactNativeMmkvPersister,so as createReactNativeSqlitePersister,vo as createRelationships,ro as createRemotePersister,Tn as createSessionPersister,uo as createSqlite3Persister,io as createSqliteBunPersister,lo as createSqliteWasmPersister,ss as createStore,Uo as createWsServer,Fo as createWsServerSimple,Oo as createWsSynchronizer,yo as createYjsPersister,Ma as defaultSorter,fa as getCellHash,ba as getCellInRowHash,ua as getHash,Na as getHlcFunctions,va as getRowHash,Sa as getRowInTableHash,Ca as getTableHash,pa as getTableInTablesHash,ma as getTablesHash,sa as getUniqueId,ya as getValueHash,ha as getValueInValuesHash,wa as getValuesHash,Ho as getWsServerDurableObjectFetch,qn as hasStoreInStorage,Gn as loadStoreFromStorage,kn as objectStoreMatch};
Binary file