tinybase 8.0.1 → 8.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/index.js +1 -1
  2. package/mergeable-store/index.js +1 -1
  3. package/mergeable-store/with-schemas/index.js +1 -1
  4. package/min/index.js +1 -1
  5. package/min/index.js.gz +0 -0
  6. package/min/mergeable-store/index.js +1 -1
  7. package/min/mergeable-store/index.js.gz +0 -0
  8. package/min/mergeable-store/with-schemas/index.js +1 -1
  9. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  10. package/min/omni/index.js +1 -1
  11. package/min/omni/index.js.gz +0 -0
  12. package/min/omni/with-schemas/index.js +1 -1
  13. package/min/omni/with-schemas/index.js.gz +0 -0
  14. package/min/queries/index.js +1 -1
  15. package/min/queries/index.js.gz +0 -0
  16. package/min/queries/with-schemas/index.js +1 -1
  17. package/min/queries/with-schemas/index.js.gz +0 -0
  18. package/min/store/index.js +1 -1
  19. package/min/store/index.js.gz +0 -0
  20. package/min/store/with-schemas/index.js +1 -1
  21. package/min/store/with-schemas/index.js.gz +0 -0
  22. package/min/ui-react/index.js +1 -1
  23. package/min/ui-react/index.js.gz +0 -0
  24. package/min/ui-react/with-schemas/index.js +1 -1
  25. package/min/ui-react/with-schemas/index.js.gz +0 -0
  26. package/min/ui-react-dom/index.js +1 -1
  27. package/min/ui-react-dom/index.js.gz +0 -0
  28. package/min/ui-react-dom/with-schemas/index.js +1 -1
  29. package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  30. package/min/ui-react-inspector/index.js +1 -1
  31. package/min/ui-react-inspector/index.js.gz +0 -0
  32. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  33. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  34. package/min/with-schemas/index.js +1 -1
  35. package/min/with-schemas/index.js.gz +0 -0
  36. package/omni/index.js +29 -21
  37. package/omni/with-schemas/index.js +29 -21
  38. package/package.json +1 -1
  39. package/queries/index.js +1 -1
  40. package/queries/with-schemas/index.js +1 -1
  41. package/readme.md +2 -2
  42. package/store/index.js +1 -1
  43. package/store/with-schemas/index.js +1 -1
  44. package/ui-react/index.js +7 -6
  45. package/ui-react/with-schemas/index.js +7 -6
  46. package/ui-react-dom/index.js +7 -6
  47. package/ui-react-dom/with-schemas/index.js +7 -6
  48. package/ui-react-inspector/index.js +29 -21
  49. package/ui-react-inspector/with-schemas/index.js +29 -21
  50. package/with-schemas/index.js +1 -1
@@ -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",i="type",d="default",c="allowNull",u="Listener",g="Result",h="add",f="Has",b="Ids",C="Table",w=C+"s",I=C+b,v="Row",R=v+"Count",T=v+b,L="Sorted"+v+b,p="Cell",S=p+b,V="Value",m=V+"s",y=V+b,k=e=>t+e,M=(e,t)=>e.startsWith(t),D=(e,t)=>e.endsWith(t),E=(e,s=t,n)=>e.split(s,n),W=e=>(t,s,n)=>e(t)?n?.():s(t),_=globalThis,H=Math,J=H.max,x=H.min,P=H.floor,F=isFinite,Q=e=>null==e,N=e=>void 0===e,O=e=>null===e,j=W(Q),z=W(N),A=e=>e==s||e==n,B=t=>e(t)==s,U=t=>e(t)==l,q=e=>Array.isArray(e),G=(e,t,s)=>e.slice(t,s),K=e=>e.length,X=()=>{},Y=()=>{},Z=_.structuredClone,$=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},ee=(e,t)=>e.includes(t),te=(e,t)=>e.every(t),se=(e,t)=>K(e)===K(t)&&te(e,(e,s)=>t[s]===e),ne=(e,t)=>q(e)&&q(t)?se(e,t):e===t,ae=(e,t)=>te(e,(s,n)=>0==n||t(e[n-1],s)<=0),le=(e,t)=>e.sort(t),oe=(e,t)=>e.forEach(t),re=(e,t)=>e.map(t),ie=e=>ce(e,(e,t)=>e+t,0),de=e=>0==K(e),ce=(e,t,s)=>e.reduce(t,s),ue=(e,...t)=>e.push(...t),ge=e=>e.pop(),he=e=>e.shift(),fe=e=>t=>ce(Te(t),(t,s)=>t+e(s),0),be=e=>e?.size??0,Ce=fe(be),we=fe(Ce),Ie=fe(we),ve=(e,t)=>e?.has(t)??!1,Re=e=>N(e)||0==be(e),Te=e=>[...e?.values()??[]],Le=e=>e.clear(),pe=(e,t)=>e?.forEach(t),Se=(e,t)=>e?.delete(t),Ve=Object,me=e=>Ve.getPrototypeOf(e),ye=Ve.isFrozen,ke=Ve.entries,Me=e=>!Q(e)&&j(me(e),e=>e==Ve.prototype||Q(me(e)),()=>!0),De=Ve.keys,Ee=Ve.freeze,We=(e=[])=>Ve.fromEntries(e),_e=(e,t)=>z(e,e=>e[t]),He=(e,t)=>t in e,Je=(e,t)=>(delete e[t],e),xe=(e,t)=>oe(ke(e),([e,s])=>t(s,e)),Pe=(e,t)=>We(((e,t)=>re(ke(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),Fe=e=>K(De(e)),Qe=e=>Me(e)&&0==Fe(e),Ne=(e,t,s=(e,t)=>e===t)=>{const n=ke(e);return K(n)===Fe(t)&&te(n,([e,n])=>Me(n)?!!Me(t[e])&&Ne(t[e],n):s(n,t[e]))},Oe=(e,t,s)=>(He(e,t)||(e[t]=s()),e[t]),je=(e,t,s,n=0)=>Q(e)||!Me(e)||!n&&Qe(e)||ye(e)?(s?.(),!1):(xe(e,(s,n)=>{t(s,n)||Je(e,n)}),!!n||!Qe(e)),ze=Map,Ae=e=>new ze(e),Be=e=>[...e?.keys()??[]],Ue=(e,t)=>e?.get(t),qe=(e,t)=>pe(e,(e,s)=>t(s,e)),Ge=(e,t,s)=>N(s)?(Se(e,t),e):e?.set(t,s),Ke=(e,t,s,n)=>(ve(e,t)?n?.(Ue(e,t)):Ge(e,t,s()),Ue(e,t)),Xe=(e,t,s,n=Ge)=>(Pe(t,(t,n)=>s(e,n,t)),qe(e,s=>He(t,s)?0:n(e,s)),e),Ye=(e,t,s,n)=>{const a={};return pe(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),Re,Qe),$e=(e,t,s)=>Ye(e,e=>Ze(e,t,s),Re,Qe),et=(e,t)=>{const s=Ae();return pe(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)=>z((s?Ke:Ue)(e,t[a],a>K(t)-2?s:Ae),l=>{if(a>K(t)-2)return n?.(l)&&Ge(e,t[a]),l;const o=nt(l,t,s,n,a+1);return Re(l)&&Ge(e,t[a]),o}),at=e=>new Set(q(e)||N(e)?e:[e]),lt=(e,t)=>e?.add(t),ot=(e,t,s,n,a)=>{const l=e.hasRow,o=Ae(),r=Ae(),i=Ae(),d=Ae(),c=Ae(),u=Ae(),g=(t,s,...n)=>{const a=Ke(u,t,at);return oe(n,t=>lt(a,t)&&s&&e.callListener(t)),n},h=(t,...s)=>z(Ue(u,t),n=>{oe(de(s)?Te(n):s,t=>{e.delListener(t),Se(n,t)}),Re(n)&&Ge(u,t)}),f=(e,s)=>{Ge(o,e,s),ve(r,e)||(Ge(r,e,t()),Ge(d,e,Ae()),Ge(c,e,Ae()),a(i))},b=e=>{Ge(o,e),Ge(r,e),Ge(d,e),Ge(c,e),h(e),a(i)};return[()=>e,()=>Be(o),e=>qe(r,e),e=>ve(r,e),e=>Ue(o,e),e=>Ue(r,e),(e,t)=>Ge(r,e,t),f,(t,n,a,o,r)=>{f(t,n);const i=Ae(),u=Ae(),b=Ue(d,t),C=Ue(c,t),w=t=>{const a=s=>e.getCell(n,t,s),d=Ue(b,t),c=l(n,t)?s(o(a,t)):void 0;if(d===c||q(d)&&q(c)&&se(d,c)||Ge(i,t,[d,c]),!N(r)){const e=Ue(C,t),s=l(n,t)?r(a,t):void 0;e!=s&&Ge(u,t,s)}},I=e=>{a(()=>{pe(i,([,e],t)=>Ge(b,t,e)),pe(u,(e,t)=>Ge(C,t,e))},i,u,b,C,e),Le(i),Le(u)};qe(b,w),e.hasTable(n)&&oe(e.getRowIds(n),e=>{ve(b,e)||w(e)}),I(!0),h(t),g(t,0,e.addRowListener(n,null,(e,t,s)=>w(s)),e.addTableListener(n,()=>I()))},b,e=>n(e,i),()=>qe(u,b),g,h]},rt=(e,s)=>B(e)?t=>t(e):e??(()=>s??t),it=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},dt=/^\d+$/,ct=()=>{const e=[];let s=0;return[n=>(n?he(e):null)??t+s++,t=>{dt.test(t)&&K(e)<1e3&&ue(e,t)}]},ut=e=>{let s;const[n,a]=ct(),l=Ae();return[(a,o,r,i=[],d=()=>[])=>{s??=e();const c=n(1);return Ge(l,c,[a,o,r,i,d]),lt(nt(o,r??[t],at),c),c},(e,n,...a)=>oe(((e,s=[t])=>{const n=[],a=(e,t)=>t==K(s)?ue(n,e):O(s[t])?pe(e,e=>a(e,t+1)):oe([s[t],null],s=>a(Ue(e,s),t+1));return a(e,0),n})(e,n),e=>pe(e,e=>Ue(l,e)[0](s,...n??[],...a))),e=>z(Ue(l,e),([,s,n])=>(nt(s,n??[t],void 0,t=>(Se(t,e),Re(t)?1:0)),Ge(l,e),a(e),n)),e=>z(Ue(l,e),([e,,t=[],n,a])=>{const l=(...o)=>{const r=K(o);r==K(t)?e(s,...o,...a(o)):O(t[r])?oe(n[r]?.(...o)??[],e=>l(...o,e)):l(...o,t[r])};l()})]},gt=it(e=>{let s,n,a,l=100,o=Ae(),r=Ae(),i=1;const d=Ae(),c=Ae(),[u,g,h]=ut(()=>_),f=Ae(),b=Ae(),C=[],w=[],I=(t,s)=>{i=0,e.transaction(()=>{const[n,a]=Ue(f,s);pe(n,(s,n)=>pe(s,(s,a)=>pe(s,(s,l)=>e._[5](n,a,l,s[t],!0)))),pe(a,(s,n)=>e._[6](n,s[t],!0))}),i=1},v=e=>{Ge(f,e),Ge(b,e),g(c,[e])},R=(e,t)=>oe(((e,t)=>e.splice(0,t))(e,t??K(e)),v),T=()=>R(C,K(C)-l),L=()=>z(s,()=>{ue(C,s),T(),R(w),s=void 0,a=1}),p=()=>{s=ge(C),a=1};let S,V;const m=(e=t)=>(N(s)&&(s=t+n++,Ge(f,s,[o,r]),E(s,e),o=Ae(),r=Ae(),a=1),s),y=()=>{de(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),I(0,s),s=ge(C),a=1)},k=()=>{de(w)||(ue(C,s),s=he(w),I(1,s),a=1)},M=()=>{a&&(g(d),a=0)},D=e=>{const t=m(e);return M(),t},E=(e,t)=>(W(e)&&Ue(b,e)!==t&&(Ge(b,e,t),g(c,[e])),_),W=e=>ve(f,e),_={setSize:e=>(l=e,T(),_),addCheckpoint:D,setCheckpoint:E,getStore:()=>e,getCheckpointIds:()=>[[...C],s,[...w]],forEachCheckpoint:e=>qe(b,e),hasCheckpoint:W,getCheckpoint:e=>Ue(b,e),goBackward:()=>(y(),M(),_),goForward:()=>(k(),M(),_),goTo:e=>{const t=ee(C,e)?y:ee(w,e)?k:void 0;for(;!N(t)&&e!=s;)t();return M(),_},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),_),clear:()=>(R(C),R(w),N(s)||v(s),s=void 0,n=0,D(),_),clearForward:()=>(de(w)||(R(w),g(d)),_),destroy:()=>{e.delListener(S),e.delListener(V)},getListenerStats:()=>({checkpointIds:Ce(d),checkpoint:Ce(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,s,n,a,l)=>{if(i){L();const e=Ke(o,t,Ae),r=Ke(e,s,Ae),i=Ke(r,n,()=>[l,void 0]);i[1]=a,i[0]===a&&Re(Ge(r,n))&&Re(Ge(e,s))&&Re(Ge(o,t))&&p(),M()}}),V=e.addValueListener(null,(e,t,s,n)=>{if(i){L();const e=Ke(r,t,()=>[n,void 0]);e[1]=s,e[0]===s&&Re(Ge(r,t))&&p(),M()}})}};return Ee(_.clear())},e=>e._registerListeners()),ht=E("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),ft=Ae(re(ht,(e,t)=>[e,t])),bt=e=>ht[63&e],Ct=(e,t)=>Ue(ft,e[t])??0,wt=_.crypto?e=>_.crypto.getRandomValues(e):e=>re(e,()=>P(256*H.random())),It=(e=16)=>ce(wt(new Uint8Array(e)),(e,t)=>e+bt(t),t),vt=JSON.stringify,Rt=JSON.parse,Tt=e=>vt(e,(e,t)=>t instanceof Map?Ve.fromEntries([...t]):t),Lt=new _.TextEncoder,pt=e=>{let t=2166136261;return oe(Lt.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},St=(e,t)=>(e^t)>>>0,Vt=e=>ce(ke(e),(e,[t,s])=>St(e,mt(t,s)^mt(t,0)),0),mt=(e,t)=>pt(e+":"+t),yt=(e,t)=>pt(Tt(e??null)+":"+t),kt=yt,Mt=mt,Dt=Vt,Et=mt,Wt=e=>ce(ke(e),(e,[t,s])=>St(e,mt(t,s)),0),_t=mt,Ht=Wt,Jt=2**36,xt=2**30,Pt=2**24,Ft=2**18,Qt=4096,Nt=e=>{const t=pt(e);return bt(t/Pt)+bt(t/Ft)+bt(t/Qt)+bt(t/64)+bt(t)},Ot=(e,t=Date.now)=>{let s=0,n=-1;const a=z(e,Nt,()=>It(5)),l=e=>{const a=s,[l,o]=N(e)||""==e?[0,0]:r(e);s=J(a,l,t()),n=s==a?s==l?J(n,o):n:s==l?o:-1},o=(e,t,s)=>bt(e/Jt)+bt(e/xt)+bt(e/Pt)+bt(e/Ft)+bt(e/Qt)+bt(e/64)+bt(e)+bt(t/Ft)+bt(t/Qt)+bt(t/64)+bt(t)+(N(s)?a:Nt(s)),r=e=>[Ct(e,0)*Jt+Ct(e,1)*xt+Ct(e,2)*Pt+Ct(e,3)*Ft+Ct(e,4)*Qt+64*Ct(e,5)+Ct(e,6),Ct(e,7)*Ft+Ct(e,8)*Qt+64*Ct(e,9)+Ct(e,10),e.slice(11)];return[()=>(l(),o(s,++n)),l,o,r,()=>s,()=>n,()=>a]},jt=(e,t)=>(e??0)<(t??0)?-1:1,zt=it(e=>{const s=Ae(),n=Ae(),[a,l,o]=ut(()=>v),[r,i,d,c,u,g,h,,f,b,C,w]=ot(e,Ae,e=>N(e)?t:q(e)?re(e,k):k(e),a,l),I=(t,s,n)=>{const a=u(t);pe(n,(t,n)=>s(n,s=>pe(t,t=>s(t,s=>e.forEachCell(a,t,s)))))},v={setIndexDefinition:(e,t,a,o,r,i=jt)=>{const d=N(r)?void 0:([e],[t])=>r(e,t);return f(e,t,(t,a,r,c,u,f)=>{let b=0;const C=at(),w=at(),I=g(e);if(pe(a,([e,t],s)=>{const n=at(e),a=at(t);pe(n,e=>Se(a,e)?Se(n,e):0),pe(n,e=>{lt(C,e),z(Ue(I,e),t=>{Se(t,s),Re(t)&&(Ge(I,e),b=1)})}),pe(a,e=>{lt(C,e),ve(I,e)||(Ge(I,e,at()),b=1),lt(Ue(I,e),s),N(o)||lt(w,e)})}),t(),Re(u)||(f?qe(I,e=>lt(w,e)):qe(r,e=>z(Ue(c,e),e=>oe(q(e)?e:[e],e=>lt(w,e)))),pe(w,e=>{const t=(t,s)=>i(Ue(u,t),Ue(u,s),e),s=[...Ue(I,e)];ae(s,t)||(Ge(I,e,at(le(s,t))),lt(C,e))})),(b||f)&&!N(d)){const t=[...I];ae(t,d)||(h(e,Ae(le(t,d))),b=1)}b&&l(s,[e]),pe(C,t=>l(n,[e,t]))},rt(a),z(o,rt)),v},delIndexDefinition:e=>(b(e),v),getStore:r,getIndexIds:i,forEachIndex:e=>d((t,s)=>e(t,e=>I(t,e,s))),forEachSlice:(e,t)=>I(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>ve(g(e),t),getTableId:u,getSliceIds:e=>Be(g(e)),getSliceRowIds:(e,t)=>Te(Ue(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({sliceIds:Ce(s),sliceRowIds:we(n)})};return Ee(v)}),At=t=>{if(O(t))return"null";if(q(t))return r;if(Me(t))return o;const s=e(t);return A(s)||s==a&&F(t)?s:void 0},Bt=e=>N(e)||!N(At(e)),Ut=e=>e==o||e==r,qt=e=>Me(e)||q(e)?"�"+vt(e):e,Gt=e=>B(e)&&"�"==e[0],Kt=(e,t,s)=>!s&&Gt(e)?Rt(G(e,1)):e,Xt=([e,t])=>Yt(e,t),Yt=(e,t)=>t?[e,t]:[e],Zt=(e,t,s)=>[e,t,s],$t=e=>e[2],es=(e,t)=>t>e?(e?pt(e):0)^pt(t):0,ts=(e,t)=>((e??"")>(t??"")?e:t)??"",ss=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},ns=(e=t)=>Yt(We(),e),as=(e=t)=>[Ae(),e,0],ls=([e,t,s],n)=>[Ye(e,n),t,s],os=([e,t],s=Xt)=>Yt(Ye(e,s),t),rs=(t,s)=>q(t)&&3==K(t)&&B(t[1])&&e(t[2])==a&&F(t[2])&&s(t[0]),is=e=>[e,e],ds=(e,t=Ce)=>t(e[0])+t(e[1]),cs=()=>[Ae(),Ae()],us=e=>[...e],gs=([e,t])=>e===t,hs=(e,t,s)=>Ge(e,t,Ue(e,t)==-s?void 0:s),fs=([e,t],[s,n])=>Ne(e,s)&&Ne(t,n),bs=()=>{let e,t,s=!1,n=!1,l=0,o=[],r=[],g=0;const b=Ae(),L=Ae(),M=Ae(),D=Ae(),E=Ae(),W=Ae(),_=Ae(),H=Ae(),J=Ae(),x=Ae(),P=Ae(),F=Ae(),Q=Ae(),j=Ae(),B=at(),K=Ae(),X=Ae(),Y=Ae(),te=Ae(),ne=cs(),ae=cs(),ie=cs(),de=cs(),ce=cs(),ge=cs(),he=cs(),fe=cs(),Te=cs(),Ve=cs(),me=cs(),ye=cs(),ke=cs(),De=cs(),We=cs(),_e=cs(),xe=cs(),Fe=cs(),Oe=cs(),ze=cs(),nt=cs(),ot=cs(),rt=Ae(),it=cs(),[dt,gt,ht,ft]=ut(()=>on),bt=e=>{const t=g;g=1;const s=e();return g=t,s},Ct=(e,t,s,n=Object.is)=>z(t(),t=>e===t||n(e,t)?s(t):bt(()=>s(t))),wt=e=>{if(!je(e,(e,t)=>ee([i,d,c],t)))return!1;const t=e[i];if(!A(t)&&t!=a&&!Ut(t))return!1;const s=e[d];return!(O(s)&&!e[c]||(O(s)||(At(s)!=t?Je(e,d):e[d]=qt(s)),0))},It=q,vt=(t,s)=>(!e||ve(P,s)||as(s))&&je(t,(e,t)=>Lt(s,t,e),()=>as(s)),Lt=(e,t,s,n)=>je(n?s:mt(s,e,t),(n,a)=>z(pt(e,t,a,n),e=>(s[a]=e,!0),()=>!1),()=>as(e,t)),pt=(t,s,n,a)=>e?z(Ue(Ue(P,t),n),e=>O(a)?e[c]?a:as(t,s,n,a,e[d]):At(a)===e[i]?qt(a):Ut(e[i])&&Gt(a)?a:as(t,s,n,a,e[d]),()=>as(t,s,n,a)):N(At(a))?as(t,s,n,a):qt(a),St=(e,t)=>je(t?e:yt(e),(t,s)=>z(Vt(s,t),t=>(e[s]=t,!0),()=>!1),()=>ls()),Vt=(e,s)=>t?z(Ue(Q,e),t=>O(s)?t[c]?s:ls(e,s,t[d]):At(s)===t[i]?qt(s):Ut(t[i])&&Gt(s)?s:ls(e,s,t[d]),()=>ls(e,s)):N(At(s))?ls(e,s):qt(s),mt=(e,t,s)=>(z(Ue(F,t),([n,a])=>{pe(n,(t,s)=>{He(e,s)||(e[s]=t)}),pe(a,n=>{He(e,n)||as(t,s,n)})}),e),yt=e=>(t&&(pe(j,(t,s)=>{He(e,s)||(e[s]=t)}),pe(B,t=>{He(e,t)||ls(t)})),e),kt=e=>Xe(P,e,(e,t,s)=>{const n=Ae(),a=at();Xe(Ke(P,t,Ae),s,(e,t,s)=>{Ge(e,t,s),z(s[d],e=>Ge(n,t,e),()=>lt(a,t))}),Ge(F,t,[n,a])},(e,t)=>{Ge(P,t),Ge(F,t)}),Mt=e=>Xe(Q,e,(e,t,s)=>{Ge(Q,t,s),z(s[d],e=>Ge(j,t,e),()=>lt(B,t))},(e,t)=>{Ge(Q,t),Ge(j,t),Se(B,t)}),Dt=e=>Qe(e)?Ks():js(e),Et=(e,t,s,n,a,l)=>N(n)?Zs(e,t,s,!0,a):zs(e,t,s,n,a,l),Wt=e=>Qe(e)?$s():As(e),_t=(e,t,s)=>N(t)?en(e,s):Bs(e,t,s),Ht=(e,t)=>Ct(e,()=>t?e:z(o[1],t=>bt(()=>t(Z(e))),()=>e),e=>Xe(Y,e,(e,t,s)=>Jt(t,s),(e,t)=>zt(t)),Ne),Jt=(e,t,s)=>Ct(t,()=>s?t:z(o[2],s=>bt(()=>s(e,Z(t))),()=>t),t=>Xe(Ke(Y,e,()=>(Zt(e,1),Ge(K,e,ct()),Ge(X,e,Ae()),Ae())),t,(t,s,n)=>xt(e,t,s,n),(t,s)=>Bt(e,t,s)),Ne),xt=(e,t,s,n,a)=>Ct(n,()=>a?n:z(o[3],t=>bt(()=>t(e,s,Z(n))),()=>n),n=>Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,a)=>Pt(e,s,t,n,a),(n,l)=>Xt(e,t,s,n,l,a)),Ne),Pt=(e,t,s,n,a,l)=>Ct(a,()=>z(l?void 0:o[4],s=>bt(()=>s(e,t,n,a)),()=>a),a=>{ve(s,n)||es(e,t,n,1);const l=Ue(s,n);a!==l&&(ts(e,t,n,l,a),Ge(s,n,a))}),Ft=(e,t,s,n,a,l)=>z(Ue(t,s),t=>Pt(e,s,t,n,a,l),()=>{const o=Ae();Ge(t,s,o),$t(e,s,1),Pe(mt({[n]:a},e,s),(t,n)=>Pt(e,s,o,n,t,l))}),Qt=(e,t)=>Ct(e,()=>t?e:z(o[5],t=>bt(()=>t(Z(e))),()=>e),e=>Xe(te,e,(e,t,s)=>Nt(t,s),(e,t)=>Yt(t)),Ne),Nt=(e,t,s)=>Ct(t,()=>z(s?void 0:o[6],s=>bt(()=>s(e,t)),()=>t),t=>{ve(te,e)||ss(e,1);const s=Ue(te,e);t!==s&&(ns(e,s,t),Ge(te,e,t))}),Ot=e=>Ke(Y,e,()=>(Zt(e,1),Ge(K,e,ct()),Ge(X,e,Ae()),Ae())),zt=e=>bt(()=>o[8]?.(e))??1?Jt(e,{},!0):Ue(Y,e),Bt=(e,t,s)=>{if(bt(()=>o[9]?.(e,s))??1){const[,n]=Ue(K,e);n(s),xt(e,t,s,{},!0)}},Xt=(e,t,s,n,a,l,r)=>{const i=Ue(Ue(F,e)?.[0],a);if(!N(i)&&!l)return Pt(e,s,n,a,i);if(r||(bt(()=>o[10]?.(e,s,a))??1)){const l=t=>{ts(e,s,t,Ue(n,t)),es(e,s,t,-1),Ge(n,t)};N(i)?l(a):qe(n,l),Re(n)&&($t(e,s,-1),Re(Ge(t,s))&&(Zt(e,-1),Ge(Y,e),Ge(K,e),Ge(X,e)))}},Yt=(e,t)=>{const s=Ue(j,e);if(!N(s))return Nt(e,s);(t||(bt(()=>o[12]?.(e))??1))&&(ns(e,Ue(te,e)),ss(e,-1),Ge(te,e))},Zt=(e,t)=>hs(b,e,t),$t=(e,t,s)=>hs(Ke(D,e,Ae),t,s)&&Ge(M,e,Ke(M,e,()=>0)+s),es=(e,t,s,n)=>{const a=Ue(X,e),l=Ue(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&hs(Ke(L,e,Ae),s,n),Ge(a,s,l!=-n?l+n:void 0),hs(Ke(Ke(E,e,Ae),t,Ae),s,n)},ts=(e,t,s,n,a)=>{Ke(Ke(Ke(W,e,Ae),t,Ae),s,()=>[n,0])[1]=a,r[3]?.(e,t,s,a,g)},ss=(e,t)=>hs(_,e,t),ns=(e,t,s)=>{Ke(H,e,()=>[t,0])[1]=s,r[4]?.(e,s,g)},as=(e,t,s,n,a)=>(ue(Ke(Ke(Ke(J,e,Ae),t,Ae),s,()=>[]),n),a),ls=(e,t,s)=>(ue(Ke(x,e,()=>[]),t),s),os=(e,t,s)=>z(Ue(Ue(Ue(W,e),t),s),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Es(e,t,s))]),rs=e=>z(Ue(H,e),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Hs(e))]),Cs=e=>Re(J)||Re(_e[e])?0:pe(e?st(J):J,(t,s)=>pe(t,(t,n)=>pe(t,(t,a)=>gt(_e[e],[s,n,a],t)))),ws=e=>Re(x)||Re(xe[e])?0:pe(e?et(x):x,(t,s)=>gt(xe[e],[s],t)),Is=(e,t,s,n)=>{if(!Re(e))return gt(t,n,()=>Ye(e)),qe(e,(e,t)=>gt(s,[...n??[],e],1==t)),1},vs=e=>{const t=!Re(ne[e]),n=!Re(Ve[e]),a=!(Re(ke[e])&&Re(De[e])&&Re(Te[e])&&Re(me[e])&&Re(ge[e])&&Re(he[e])&&Re(fe[e])&&!n&&Re(ie[e])&&Re(de[e])),l=!(Re(We[e])&&Re(ye[e])&&Re(ce[e])&&Re(ae[e]));if(t||a||l){const r=e?[et(b),tt(L),et(M),tt(D),st(E),(o=W,et(o,e=>et(e,e=>et(e,us))))]:[b,L,M,D,E,W];if(t){const t=Js();t!=s&&gt(ne[e],void 0,t)}if(a){Is(r[0],ie[e],de[e]),pe(r[1],(t,s)=>Is(t,ge[e],he[e],[s])),pe(r[2],(t,s)=>{0!=t&&gt(fe[e],[s],ys(s))});const t=at();pe(r[3],(s,a)=>{Is(s,Te[e],me[e],[a])&&n&&(gt(Ve[e],[a,null]),lt(t,a))}),n&&pe(r[5],(s,n)=>{if(!ve(t,n)){const t=at();pe(s,e=>pe(e,([s,n],a)=>n!==s?lt(t,a):Se(e,a))),pe(t,t=>gt(Ve[e],[n,t]))}}),pe(r[4],(t,s)=>pe(t,(t,n)=>Is(t,ke[e],De[e],[s,n])))}if(l){let t;pe(r[5],(s,n)=>{let a;pe(s,(s,l)=>{let o;pe(s,([s,r],i)=>{r!==s&&(gt(We[e],[n,l,i],Kt(r),Kt(s),os),t=a=o=1)}),o&&gt(ye[e],[n,l],os)}),a&&gt(ce[e],[n],os)}),t&&gt(ae[e],void 0,os)}}var o},Rs=e=>{const t=!Re(Fe[e]),s=!Re(ze[e])||!Re(nt[e]),a=!Re(ot[e])||!Re(Oe[e]);if(t||s||a){const l=e?[et(_),et(H,us)]:[_,H];if(t){const t=Ns();t!=n&&gt(Fe[e],void 0,t)}if(s&&Is(l[0],ze[e],nt[e]),a){let t;pe(l[1],([s,n],a)=>{n!==s&&(gt(ot[e],[a],Kt(n),Kt(s),rs),t=1)}),t&&gt(Oe[e],void 0,rs)}}},Ts=(e,...t)=>(nn(()=>e(...re(t,k))),on),Ls=(e,t,s,n,a)=>{let l=Ms(e,t,...s);return dt(()=>{const a=Ms(e,t,...s);se(a,l)||(l=a,n(on,e,t,...s,l))},Ve[a?1:0],[e,t],[Vs])},ps=(e=!1)=>[Ye(W,(t,s)=>-1===Ue(b,s)?void 0:Ye(t,(t,n)=>-1===Ue(Ue(D,s),n)?void 0:Ye(t,([,t])=>Kt(t,0,e),e=>gs(e)),Re,Qe),Re,Qe),Ye(H,([,t])=>Kt(t,0,e),e=>gs(e)),1],Ss=()=>$e(Y,Kt),Vs=()=>Be(Y),ms=e=>Be(Ue(X,k(e))),ys=e=>be(Ue(Y,k(e))),ks=e=>Be(Ue(Y,k(e))),Ms=(e,t,s,n=0,a)=>{return Me(e)?Ms(e.tableId,e.cellId,e.descending,e.offset,e.limit):re(G(le((l=Ue(Y,k(e)),o=(e,s)=>[N(t)?s:Ue(e,k(t)),s],re([...l?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>jt(e,t)*(s?-1:1)),n,N(a)?a:n+a),([,e])=>e);var l,o},Ds=(e,t)=>Be(Ue(Ue(Y,k(e)),k(t))),Es=(e,t,s)=>Kt(Ue(Ue(Ue(Y,k(e)),k(t)),k(s))),Ws=()=>Ye(te,Kt),_s=()=>Be(te),Hs=e=>Kt(Ue(te,k(e))),Js=()=>!Re(Y),xs=e=>ve(Y,k(e)),Ps=(e,t)=>ve(Ue(X,k(e)),k(t)),Fs=(e,t)=>ve(Ue(Y,k(e)),k(t)),Qs=(e,t,s)=>ve(Ue(Ue(Y,k(e)),k(t)),k(s)),Ns=()=>!Re(te),Os=e=>ve(te,k(e)),js=e=>Ts(()=>(e=>je(e,vt,as))(e)?Ht(e):0),zs=(e,t,s,n,a,l)=>Ts((e,t,s)=>z(pt(e,t,s,U(n)?n(Es(e,t,s)):n),n=>{const r=Ot(e);z(a||l||!o[14]?.()?void 0:o[3],l=>{const o=Ue(r,t),i={...o?Ye(o):{},[s]:n};z(bt(()=>l(e,t,Z(i))),s=>((e,t,s,n,a)=>{Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,l)=>z(pt(e,s,n,l),l=>Pt(e,s,t,n,l,a)),(n,a)=>Xt(e,t,s,n,a,!0))})(e,r,t,s,a))},()=>Ft(e,r,t,s,n,a))}),e,t,s),As=e=>Ts(()=>St(e)?Qt(e):0),Bs=(e,t,s)=>Ts(e=>z(Vt(e,U(t)?t(Hs(e)):t),t=>Nt(e,t,s)),e),Us=e=>($(()=>Dt(Rt(e))),on),qs=t=>Ts(()=>{if((e=je(t,e=>je(e,wt)))&&(kt(t),!Re(Y))){const e=Ss();Ks(),js(e)}}),Gs=e=>Ts(()=>{if(t=(e=>je(e,wt))(e)){const s=Ws();sn(),$s(),t=!0,Mt(e),As(s)}}),Ks=()=>Ts(()=>bt(()=>o[7]?.())??1?Ht({},!0):0),Xs=e=>Ts(e=>ve(Y,e)?zt(e):0,e),Ys=(e,t)=>Ts((e,t)=>z(Ue(Y,e),s=>ve(s,t)?Bt(e,s,t):0),e,t),Zs=(e,t,s,n,a)=>Ts((e,t,s)=>z(Ue(Y,e),l=>z(Ue(l,t),o=>ve(o,s)?Xt(e,l,t,o,s,n,a):0)),e,t,s),$s=()=>Ts(()=>bt(()=>o[11]?.())??1?Qt({},!0):0),en=(e,t)=>Ts(e=>ve(te,e)?Yt(e,t):0,e),tn=()=>Ts(()=>{kt({}),e=!1}),sn=()=>Ts(()=>{Mt({}),t=!1}),nn=(e,t)=>{if(-1!=l){an();const s=e();return ln(t),s}},an=()=>(-1!=l&&l++,1==l&&(r[0]?.(),gt(rt)),on),ln=e=>(l>0&&(l--,0==l&&(l=1,bt(()=>{Cs(1),Re(W)||vs(1),ws(1),Re(H)||Rs(1)}),e?.(on)&&(pe(W,(e,t)=>pe(e,(e,s)=>pe(e,([e],n)=>Et(t,s,n,e,!0)))),Le(W),pe(H,([e],t)=>_t(t,e,!0)),Le(H)),gt(it[0],void 0),l=-1,Cs(0),Re(W)||vs(0),ws(0),Re(H)||Rs(0),r[1]?.(),gt(it[1],void 0),r[2]?.(),l=0,s=Js(),n=Ns(),oe([b,L,M,D,E,W,J,_,H,x],Le))),on),on={getContent:()=>[Ss(),Ws()],getTables:Ss,getTableIds:Vs,getTable:e=>Ze(Ue(Y,k(e)),Kt),getTableCellIds:ms,getRowCount:ys,getRowIds:ks,getSortedRowIds:Ms,getRow:(e,t)=>Ye(Ue(Ue(Y,k(e)),k(t)),Kt),getCellIds:Ds,getCell:Es,getValues:Ws,getValueIds:_s,getValue:Hs,hasTables:Js,hasTable:xs,hasTableCell:Ps,hasRow:Fs,hasCell:Qs,hasValues:Ns,hasValue:Os,getTablesJson:()=>Tt(Y),getValuesJson:()=>Tt(te),getJson:()=>Tt([Y,te]),getTablesSchemaJson:()=>Tt(P),getValuesSchemaJson:()=>Tt(Q),getSchemaJson:()=>Tt([P,Q]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Ts(()=>{const t=U(e)?e():e;It(t)&&(e=>{Ct(e,()=>z(o[0],t=>bt(()=>t(Z(e))),()=>e),([e,t])=>{(Qe(e)?Ks:js)(e),(Qe(t)?$s:As)(t)},fs)})(t)}),setTables:js,setTable:(e,t)=>Ts(e=>vt(t,e)?Jt(e,t):0,e),setRow:(e,t,s)=>Ts((e,t)=>Lt(e,t,s)?xt(e,Ot(e),t,s):0,e,t),addRow:(e,t,s=!0)=>nn(()=>{let n;return Lt(e,n,t)&&(e=k(e),xt(e,Ot(e),n=((e,t)=>{const[s]=Ue(K,e);let n;do{n=s(t)}while(ve(Ue(Y,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>Ts((e,t)=>{if(Lt(e,t,s,1)){const n=Ot(e);Pe(s,(s,a)=>Ft(e,n,t,a,s))}},e,t),setCell:zs,setValues:As,setPartialValues:e=>Ts(()=>St(e,1)?Pe(e,(e,t)=>Nt(t,e)):0),setValue:Bs,applyChanges:e=>Ts(()=>Ct(e,()=>z(o[13],t=>bt(()=>t(Z(e))),()=>e),e=>{Pe(e[0],(e,t)=>N(e)?Xs(t):Pe(e,(e,s)=>N(e)?Ys(t,s):Pe(e,(e,n)=>Et(t,s,n,e,void 0,!0)))),Pe(e[1],(e,t)=>_t(t,e))},fs)),setTablesJson:Us,setValuesJson:e=>($(()=>Wt(Rt(e))),on),setJson:e=>Ts(()=>$(()=>{const[t,s]=Rt(e);Dt(t),Wt(s)},()=>Us(e))),setTablesSchema:qs,setValuesSchema:Gs,setSchema:(e,t)=>Ts(()=>{qs(e),Gs(t)}),delTables:Ks,delTable:Xs,delRow:Ys,delCell:Zs,delValues:$s,delValue:en,delTablesSchema:tn,delValuesSchema:sn,delSchema:()=>Ts(()=>{tn(),sn()}),transaction:nn,startTransaction:an,getTransactionChanges:()=>ps(),getTransactionLog:()=>[!Re(W),!Re(H),$e(W,us,gs),$e(J),Ye(H,us,gs),Ye(x),Ye(b),Ze(D),$e(E),Ye(_)],finishTransaction:ln,forEachTable:e=>pe(Y,(t,s)=>e(s,e=>pe(t,(t,s)=>e(s,e=>qe(t,(t,s)=>e(t,Kt(s))))))),forEachTableCell:(e,t)=>qe(Ue(X,k(e)),t),forEachRow:(e,t)=>pe(Ue(Y,k(e)),(e,s)=>t(s,t=>qe(e,(e,s)=>t(e,Kt(s))))),forEachCell:(e,t,s)=>qe(Ue(Ue(Y,k(e)),k(t)),(e,t)=>s(e,Kt(t))),forEachValue:e=>qe(te,(t,s)=>e(t,Kt(s))),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>Me(e)?Ls(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):Ls(e,t,[s,n,a],l,o),addStartTransactionListener:e=>dt(e,rt),addWillFinishTransactionListener:e=>dt(e,it[0]),addDidFinishTransactionListener:e=>dt(e,it[1]),callListener:e=>(ft(e),on),delListener:e=>(ht(e),on),getListenerStats:()=>({hasTables:ds(ne),tables:ds(ae),tableIds:ds(ie),hasTable:ds(de),table:ds(ce),tableCellIds:ds(ge),hasTableCell:ds(he,we),rowCount:ds(fe),rowIds:ds(Te),sortedRowIds:ds(Ve),hasRow:ds(me,we),row:ds(ye,we),cellIds:ds(ke,we),hasCell:ds(De,Ie),cell:ds(We,Ie),invalidCell:ds(_e,Ie),hasValues:ds(Fe),values:ds(Oe),valueIds:ds(ze),hasValue:ds(nt),value:ds(ot),invalidValue:ds(xe),transaction:Ce(rt)+ds(it)}),isMergeable:()=>!1,_:[bs,dt,gt,(e,t,s,n,a)=>r=[e,t,s,n,a],(e,t,s,n,a,l,r,i,d,c,u,g,h,f,b)=>o=[e,t,s,n,a,l,r,i,d,c,u,g,h,f,b],Et,_t,()=>[$e(Y),Ye(te)],()=>ps(!0)]};return Pe({[f+w]:[0,ne,[],()=>[Js()]],[w]:[0,ae],[I]:[0,ie],[f+C]:[1,de,[Vs],e=>[xs(...e)]],[C]:[1,ce,[Vs]],[C+S]:[1,ge,[Vs]],[f+C+p]:[2,he,[Vs,ms],e=>[Ps(...e)]],[R]:[1,fe,[Vs]],[T]:[1,Te,[Vs]],[f+v]:[2,me,[Vs,ks],e=>[Fs(...e)]],[v]:[2,ye,[Vs,ks]],[S]:[2,ke,[Vs,ks]],[f+p]:[3,De,[Vs,ks,Ds],e=>[Qs(...e)]],[p]:[3,We,[Vs,ks,Ds],e=>is(Es(...e))],InvalidCell:[3,_e],[f+m]:[0,Fe,[],()=>[Ns()]],[m]:[0,Oe],[y]:[0,ze],[f+V]:[1,nt,[_s],e=>[Os(...e)]],[V]:[1,ot,[_s],e=>is(Hs(e[0]))],InvalidValue:[1,xe]},([e,t,s,n],a)=>{on[h+a+u]=(...a)=>dt(a[e],t[a[e+1]?1:0],e>0?G(a,0,e):void 0,s,n)}),Ee(on)},Cs={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},ws=(e=t)=>[as(e),as(e)],Is=(e,s)=>{let n=1,a=ws(),l=0,o=0;const r=Ae(),i=at(),[d,c]=Ot(e,s),g=bs(),f=e=>{const t=n;return n=0,e(),n=t,p},b=(e,s=0)=>{const n={},l={},[[o,r=t,i=0],d]=e,[u,g]=a,[h,f,b]=u;let w=s?i:b,I=r;xe(o,([e,a=t,l=0],o)=>{const r=Ke(h,o,as),[i,d,c]=r;let u=s?l:c,g=a;xe(e,(e,t)=>{const[a,l,r]=C(e,Ke(i,t,as),Oe(Oe(n,o,We),t,We),s);u^=s?0:St(l?mt(t,l):0,mt(t,r)),g=ts(g,a)}),u^=s?0:es(d,a),ss(r,a,u),w^=s?0:St(c?mt(o,c):0,mt(o,r[2])),I=ts(I,g)}),w^=s?0:es(f,r),ss(u,r,w);const[v]=C(d,g,l,s);return c(ts(I,v)),[n,l,1]},C=(e,s,n,a)=>{const[l,o=t,r=0]=e,[i,d,c]=s;let u=o,g=a?r:c;return xe(l,([e,s=t,l=0],o)=>{const r=Ke(i,o,()=>[void 0,t,0]),[,d,c]=r;(!d||s>d)&&(ss(r,s,a?l:yt(e,s)),r[0]=e,n[o]=e,g^=a?0:St(mt(o,c),mt(o,r[2])),u=ts(u,s))}),g^=a?0:es(d,o),ss(s,o,g),[u,c,s[2]]},w=Y,I=Y,v=(e=!1)=>[ls(a[0],t=>ls(t,t=>ls(t,([t,s,n])=>[Kt(t,0,e),s,n]))),ls(a[1],([t,s,n])=>[Kt(t,0,e),s,n])],R=(e,t=!1)=>{const[[s,n,l],[o,d,c]]=a,u=e?Zt:Yt,g={};pe(r,(e,n)=>z(Ue(s,n),([s,a,l])=>{const o={};pe(e,(e,n)=>z(Ue(s,n),([s,a,l])=>{const r={};pe(e,e=>{z(Ue(s,e),([s,n,a])=>r[e]=u(t?s:Kt(s),n,a))}),o[n]=u(r,a,l)})),g[n]=u(o,a,l)}));const h={};return pe(i,e=>z(Ue(o,e),([s,n,a])=>h[e]=u(t?s:Kt(s),n,a))),[u(g,n,l),u(h,d,c),1]},T=()=>v(),L=e=>f(()=>g.applyChanges(b(e))),p={getMergeableContent:T,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>Ye(a[0][0],$t),getMergeableTableDiff:e=>{const t=ns(a[0][1]),s={};return qe(a[0][0],(n,[a,l,o])=>He(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=os([a,l],e=>os(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return xe(e,(e,s)=>z(Ue(a[0][0],s),([n,,a])=>a!=e?qe(n,(e,[,,n])=>Oe(t,s,We)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=ns(a[0][1]),s={};return xe(e,(e,n)=>qe(Ue(a[0][0],n)?.[0],(a,[l,o,r])=>He(e,a)?r!==e[a]?Oe(s,n,We)[a]=r:0:Oe(t[0],n,ns)[0][a]=os([l,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return xe(e,(e,s)=>z(Ue(a[0][0],s),([n])=>xe(e,(e,a)=>z(Ue(n,a),([n,,l])=>l!==e?qe(n,(e,[,,n])=>Oe(Oe(t,s,We),a,We)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return xe(e,(e,s)=>xe(e,(e,a)=>z(Ue(t,s),([t,l])=>z(Ue(t,a),([t,o])=>qe(t,(t,[r,i,d])=>d!==e[t]?Oe(Oe(n,s,()=>ns(l))[0],a,()=>ns(o))[0][t]=[r,i]:0))))),Yt(n,s)},getMergeableValueHashes:()=>Ye(a[1][0],$t),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=Ye(t,Xt,([,,t],s)=>t==e?.[s]);return Yt(n,s)},setMergeableContent:e=>f(()=>(e=>q(e)&&2==K(e)&&rs(e[0],e=>je(e,e=>rs(e,e=>je(e,e=>rs(e,e=>je(e,e=>rs(e,Bt),void 0,1)),void 0,1)),void 0,1))&&rs(e[1],e=>je(e,e=>rs(e,Bt),void 0,1)))(e)?g.transaction(()=>{g.delTables().delValues(),a=ws(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{l=1,g.setContent(e),l=0}),p),getTransactionMergeableChanges:(e=!1)=>R(e),applyMergeableChanges:L,merge:e=>{const t=T(),s=e.getMergeableContent();return e.applyMergeableChanges(t),L(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>R(e,!0)]};return g._[3](w,I,()=>{Le(r),Le(i)},(e,s,a,i,c)=>{lt(Ke(Ke(r,e,Ae),s,at),a),(n||c)&&(c&&(o=1),b([[{[e]:[{[s]:[{[a]:[i,l?t:d()]}]}]}],[{}],1]))},(e,s,a)=>{lt(i,e),(n||a)&&(a&&(o=1),b([[{}],[{[e]:[s,l?t:d()]}],1]))}),Pe(g,(e,t)=>p[t]=M(t,"set")||M(t,"del")||M(t,"apply")||D(t,"Transaction")||t=="call"+u||"use"==t?(...t)=>(e(...t),p):M(t,h)&&D(t,u)?(...s)=>{const n=Cs[G(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(p,...t),e(...s)}:"isMergeable"==t?()=>!0:e),Ee(p)},vs=Ae([["avg",[(e,t)=>ie(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>J(...e),(e,t)=>J(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:J(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>ie(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Rs=(e,t,s,n,a,l=!1)=>{if(Re(s))return;const[o,r,i,d]=a;return l||=N(e),pe(n,([s,n])=>{l||(e=N(s)?r?.(e,n,t++):N(n)?i?.(e,s,t--):d?.(e,n,s,t),l||=N(e))}),l?o(Te(s),be(s)):e},Ts=it(e=>{const s=Ae(),[n,a,l]=ut(()=>w),[o,r,i,d,c,u,g,,h,f,b,C]=ot(e,X,e=>isNaN(e)||N(e)||!0===e||!1===e||e===t?void 0:1*e,n,a),w={setMetricDefinition:(e,t,n,l,o,r,i)=>{const d=U(n)?[n,o,r,i]:Ue(vs,n)??Ue(vs,"sum");return h(e,t,(t,n,l,o,r,i)=>{const c=u(e),h=be(o);i||=N(c),t();let f=Rs(c,h,o,n,d,i);F(f)||(f=void 0),f!=c&&(g(e,f),a(s,[e],f,c))},rt(l,1)),w},delMetricDefinition:e=>(f(e),w),getStore:o,getMetricIds:r,forEachMetric:i,hasMetric:d,getTableId:c,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(l(e),w),destroy:C,getListenerStats:()=>({metric:Ce(s)})};return Ee(w)}),Ls=(e,t,...s)=>ce(e,(e,t)=>N(e)?e:t(...s,e),t),ps=(e,...t)=>te(e,e=>e(...t)),Ss=it(e=>{const t=e=>t=>(ue(e,t),D),s=[],n=[],a=[],l=[],o=[],r=[],i=[],d=[],c=[],u=[],g=[],h=[],f=[],b=[],C=t(s),w=t(n),I=t(a),v=t(l),R=t(o),T=t(r),L=t(i),p=t(d),S=t(c),V=t(u),m=t(g),y=t(h),k=t(f),M=t(b),D=Ee({getStore:()=>e,addWillSetContentCallback:C,addWillSetTablesCallback:w,addWillSetTableCallback:I,addWillSetRowCallback:v,addWillSetCellCallback:R,addWillSetValuesCallback:T,addWillSetValueCallback:L,addWillDelTablesCallback:p,addWillDelTableCallback:S,addWillDelRowCallback:V,addWillDelCellCallback:m,addWillDelValuesCallback:y,addWillDelValueCallback:k,addWillApplyChangesCallback:M,destroy:()=>{}});return e._[4](e=>Ls(s,e),e=>Ls(n,e),(e,t)=>Ls(a,t,e),(e,t,s)=>Ls(l,s,e,t),(e,t,s,n)=>Ls(o,n,e,t,s),e=>Ls(r,e),(e,t)=>Ls(i,t,e),()=>ps(d),e=>ps(c,e),(e,t)=>ps(u,e,t),(e,t,s)=>ps(g,e,t,s),()=>ps(h),e=>ps(f,e),e=>Ls(b,e),()=>l.length>0),D}),Vs=it(e=>{const s=e._[0],n=s(),a=s(),l=Ae(),o=Ae(),r=Ae(),{_:[,i,d],delListener:c}=a,[f,b,w,I,V,m,y,k,,M,D,E,W,_]=ot(e,()=>[],X,i,d),H=(e,t,...s)=>oe(s,s=>lt(Ke(Ke(l,t,Ae),e,at),s)),J=e=>{z(Ue(l,e),e=>{qe(e,(e,t)=>pe(t,t=>e.delListener(t))),Le(e)}),oe([a,n],t=>t.delTable(e))},x=(e,t,s)=>H(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener(()=>s.finishTransaction())),P=(s,l,o,r={})=>{const i=O(s);var d;k(s,l),y(s,[o,(d=r,new Map(ke(d)))]),F(s,i,r),J(s);const[,c]=m(s),u=[],g=[[void 0,[l,void 0,void 0,[],Ae()]]],h=[],f=[],b=[];o({select:(e,s)=>{const n=U(e)?[K(u)+t,e]:[N(s)?e:s,t=>t(e,s)];return ue(u,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=N(s)||U(t)?void 0:t,a=N(n)?t:s,l=[e,[e,n,U(a)?a:e=>e(a),[],Ae()]];return ue(g,l),{as:e=>l[0]=e}},where:(e,t,s)=>ue(h,U(e)?e:N(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const l=[e,[e,U(t)?[t,s,n,a]:Ue(vs,t)??[(e,t)=>t]]];return ue(f,l),{as:e=>l[0]=e}},having:(e,t)=>ue(b,U(e)?e:s=>s(e)===t),param:e=>Ue(c,e)});const C=Ae(u);if(Re(C))return A;const w=Ae(g);qe(w,(e,[,t])=>z(Ue(w,t),({3:t})=>N(e)?0:ue(t,e)));const I=Ae(f);let v=n;if(Re(I)&&de(b))v=a;else{x(s,v,a);const e=Ae();qe(I,(t,[s,n])=>lt(Ke(e,s,at),[t,n]));const t=at();qe(C,s=>ve(e,s)?0:lt(t,s));const n=Ae(),l=(t,n,l,o)=>z(t,([r,i,d,c])=>{qe(n,(t,[s])=>{const n=Ke(r,t,Ae),a=Ue(n,l),i=o?void 0:s;if(a!==i){const s=at([[a,i]]),o=be(n);Ge(n,l,i),pe(Ue(e,t),([e,t])=>{const a=Rs(c[e],o,n,s,t);c[e]=N(At(a))?void 0:a})}}),Re(i)||!te(b,e=>e(e=>c[e]))?a.delRow(s,d):N(d)?t[2]=a.addRow(s,c):a.setRow(s,d,c)});H(v,s,v.addRowListener(s,null,(a,o,r,i)=>{const d=[],c=[],u=Ae(),g=v.hasRow(s,r);let h=!g;pe(t,e=>{const[t,n,a]=i(s,r,e);ue(d,n),ue(c,a),h||=t}),qe(e,e=>{const[t,,n]=i(s,r,e);(h||t)&&Ge(u,e,[n])}),h&&l(nt(n,d,void 0,([,e])=>(Se(e,r),Re(e))),u,r,1),g&&l(nt(n,c,()=>{const e={};return pe(t,t=>e[t]=v.getCell(s,r,t)),[Ae(),at(),void 0,e]},([,e])=>{lt(e,r)}),u,r)}))}x(s,e,v);const R=(t,n,a,o)=>{const r=t=>e.getCell(n,a,t);oe(o,n=>{const[a,,l,o,i]=Ue(w,n),d=l?.(r,t),[c,u]=Ue(i,t)??[];d!=c&&(N(u)||_(s,u),Ge(i,t,N(d)?void 0:[d,...W(s,1,e.addRowListener(a,d,()=>R(t,a,d,o)))]))}),(t=>{const n=(s,n)=>e.getCell(...N(n)?[l,t,s]:s===l?[l,t,n]:[Ue(w,s)?.[0],Ue(Ue(w,s)?.[4],t)?.[0],n]);v.transaction(()=>te(h,e=>e(n))?qe(C,(e,a)=>v._[5](s,t,e,a(n,t))):v.delRow(s,t))})(t)},{3:T}=Ue(w,void 0);return v.transaction(()=>W(s,1,e.addRowListener(l,null,(t,n,a)=>{e.hasRow(l,a)?R(a,l,a,T):(v.delRow(s,a),pe(w,({4:e})=>z(Ue(e,a),([,t])=>{_(s,t),Ge(e,a)})))}))),A},F=(e,t,s)=>{const n=at([...De(t),...De(s)]);let a=0;pe(n,n=>{const l=_e(s,n);ne(_e(t,n),l)||(a=1,d(r,[e,n],l))}),a&&d(o,[e],s)},Q=(e,t,s=0)=>(z(m(e),([n,l])=>{!s&&Ne(Ye(l),t,ne)||a.transaction(()=>P(e,V(e),n,t))}),A),O=e=>Ye(m(e)?.[1]),j=(e,t)=>Ue(m(e)?.[1],t),A={setQueryDefinition:P,delQueryDefinition:e=>{const t=O(e);return J(e),M(e),F(e,t,{}),A},getParamValues:O,getParamValue:j,setParamValues:Q,setParamValue:(e,t,s)=>(ne(j(e,t),s)||Q(e,{...O(e),[t]:s},1),A),getStore:f,getQueryIds:b,forEachQuery:w,hasQuery:I,getTableId:V,addQueryIdsListener:e=>D(()=>e(A)),addParamValuesListener:(e,t)=>i((e,s,n)=>t(A,s,n),o,[e]),addParamValueListener:(e,t,s)=>i((e,t,n,a)=>s(A,t,n,a),r,[e,t]),delListener:e=>(c(e),A),destroy:E,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return{...n,paramValues:Ce(o),paramValue:we(r)}}};return Pe({[C]:[1,1],[C+S]:[0,1],[R]:[0,1],[T]:[0,1],[L]:[0,5],[v]:[1,2],[S]:[0,2],[p]:[1,3]},([e,t],s)=>{oe(e?["get","has","forEach"]:["get"],e=>A[e+g+s]=(...t)=>a[e+s](...t)),A[h+g+s+u]=(...e)=>a[h+s+u](...G(e,0,t),(s,...n)=>e[t](A,...n),!0)}),Ee(A)}),ms=it(e=>{const s=Ae(),n=Ae(),a=Ae(),l=Ae(),[o,r,i]=ut(()=>L),[d,c,u,g,h,f,,,b,C,w,I]=ot(e,()=>[Ae(),Ae(),Ae(),Ae()],e=>N(e)?void 0:e+t,o,r),v=(e,t,s)=>z(f(e),([n,,a])=>{if(!ve(a,t)){const l=at();if(h(e)!=T(e))lt(l,t);else{let e=t;for(;!N(e)&&!ve(l,e);)lt(l,e),e=Ue(n,e)}if(s)return l;Ge(a,t,l)}return Ue(a,t)}),R=(e,t)=>z(f(e),([,,e])=>Ge(e,t)),T=e=>Ue(s,e),L={setRelationshipDefinition:(e,t,o,i)=>(Ge(s,e,o),b(e,t,(t,s)=>{const o=at(),i=at(),d=at(),[c,u]=f(e);pe(s,([t,s],n)=>{N(t)||(lt(i,t),z(Ue(u,t),e=>{Se(e,n),Re(e)&&Ge(u,t)})),N(s)||(lt(i,s),ve(u,s)||Ge(u,s,at()),lt(Ue(u,s),n)),lt(o,n),Ge(c,n,s),qe(Ue(l,e),t=>{ve(v(e,t),n)&&lt(d,t)})}),t(),pe(o,t=>r(n,[e,t])),pe(i,t=>r(a,[e,t])),pe(d,t=>{R(e,t),r(l,[e,t])})},rt(i)),L),delRelationshipDefinition:e=>(Ge(s,e),C(e),L),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u(s=>t(s,t=>e.forEachRow(h(s),t))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>Ue(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(Ue(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>N(f(e))?[t]:Te(v(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>o(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>o(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),o(s,l,[e,t])),delListener:e=>(R(...i(e)??[]),L),destroy:I,getListenerStats:()=>({remoteRowId:we(n),localRowIds:we(a),linkedRowIds:we(l)})};return Ee(L)});export{St as addOrRemoveHash,gt as createCheckpoints,zt as createIndexes,Is as createMergeableStore,Ts as createMetrics,Ss as createMiddleware,Vs as createQueries,ms as createRelationships,bs as createStore,jt as defaultSorter,kt as getCellHash,Mt as getCellInRowHash,pt as getHash,Ot as getHlcFunctions,Dt as getRowHash,Et as getRowInTableHash,Wt as getTableHash,_t as getTableInTablesHash,Ht as getTablesHash,It as getUniqueId,yt as getValueHash,mt as getValueInValuesHash,Vt as getValuesHash};
1
+ const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="object",r="array",i="type",d="default",c="allowNull",u="Listener",g="Result",h="add",f="Has",b="Ids",C="Table",w=C+"s",I=C+b,v="Row",R=v+"Count",T=v+b,L="Sorted"+v+b,p="Cell",S=p+b,V="Value",m=V+"s",y=V+b,k=e=>t+e,M=(e,t)=>e.startsWith(t),D=(e,t)=>e.endsWith(t),E=(e,s=t,n)=>e.split(s,n),W=e=>(t,s,n)=>e(t)?n?.():s(t),_=globalThis,H=Math,J=H.max,x=H.min,P=H.floor,F=isFinite,Q=e=>null==e,N=e=>void 0===e,O=e=>null===e,j=W(Q),z=W(N),A=e=>e==s||e==n,B=t=>e(t)==s,U=t=>e(t)==l,q=e=>Array.isArray(e),G=(e,t,s)=>e.slice(t,s),K=e=>e.length,X=()=>{},Y=()=>{},Z=_.structuredClone,$=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},ee=(e,t)=>e.includes(t),te=(e,t)=>e.every(t),se=(e,t)=>K(e)===K(t)&&te(e,(e,s)=>t[s]===e),ne=(e,t)=>q(e)&&q(t)?se(e,t):e===t,ae=(e,t)=>te(e,(s,n)=>0==n||t(e[n-1],s)<=0),le=(e,t)=>e.sort(t),oe=(e,t)=>e.forEach(t),re=(e,t)=>e.map(t),ie=e=>ce(e,(e,t)=>e+t,0),de=e=>0==K(e),ce=(e,t,s)=>e.reduce(t,s),ue=(e,...t)=>e.push(...t),ge=e=>e.pop(),he=e=>e.shift(),fe=e=>t=>ce(Te(t),(t,s)=>t+e(s),0),be=e=>e?.size??0,Ce=fe(be),we=fe(Ce),Ie=fe(we),ve=(e,t)=>e?.has(t)??!1,Re=e=>N(e)||0==be(e),Te=e=>[...e?.values()??[]],Le=e=>e.clear(),pe=(e,t)=>e?.forEach(t),Se=(e,t)=>e?.delete(t),Ve=Object,me=e=>Ve.getPrototypeOf(e),ye=Ve.isFrozen,ke=Ve.entries,Me=e=>!Q(e)&&j(me(e),e=>e==Ve.prototype||Q(me(e)),()=>!0),De=Ve.keys,Ee=Ve.freeze,We=(e=[])=>Ve.fromEntries(e),_e=(e,t)=>z(e,e=>e[t]),He=(e,t)=>t in e,Je=(e,t)=>(delete e[t],e),xe=(e,t)=>oe(ke(e),([e,s])=>t(s,e)),Pe=(e,t)=>We(((e,t)=>re(ke(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),Fe=e=>K(De(e)),Qe=e=>Me(e)&&0==Fe(e),Ne=(e,t,s=(e,t)=>e===t)=>{const n=ke(e);return K(n)===Fe(t)&&te(n,([e,n])=>Me(n)?!!Me(t[e])&&Ne(t[e],n,s):s(n,t[e]))},Oe=(e,t,s)=>(He(e,t)||(e[t]=s()),e[t]),je=(e,t,s,n=0)=>Q(e)||!Me(e)||!n&&Qe(e)||ye(e)?(s?.(),!1):(xe(e,(s,n)=>{t(s,n)||Je(e,n)}),!!n||!Qe(e)),ze=Map,Ae=e=>new ze(e),Be=e=>[...e?.keys()??[]],Ue=(e,t)=>e?.get(t),qe=(e,t)=>pe(e,(e,s)=>t(s,e)),Ge=(e,t,s)=>N(s)?(Se(e,t),e):e?.set(t,s),Ke=(e,t,s,n)=>(ve(e,t)?n?.(Ue(e,t)):Ge(e,t,s()),Ue(e,t)),Xe=(e,t,s,n=Ge)=>(Pe(t,(t,n)=>s(e,n,t)),qe(e,s=>He(t,s)?0:n(e,s)),e),Ye=(e,t,s,n)=>{const a={};return pe(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),Re,Qe),$e=(e,t,s)=>Ye(e,e=>Ze(e,t,s),Re,Qe),et=(e,t)=>{const s=Ae();return pe(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)=>z((s?Ke:Ue)(e,t[a],a>K(t)-2?s:Ae),l=>{if(a>K(t)-2)return n?.(l)&&Ge(e,t[a]),l;const o=nt(l,t,s,n,a+1);return Re(l)&&Ge(e,t[a]),o}),at=e=>new Set(q(e)||N(e)?e:[e]),lt=(e,t)=>e?.add(t),ot=(e,t,s,n,a)=>{const l=e.hasRow,o=Ae(),r=Ae(),i=Ae(),d=Ae(),c=Ae(),u=Ae(),g=(t,s,...n)=>{const a=Ke(u,t,at);return oe(n,t=>lt(a,t)&&s&&e.callListener(t)),n},h=(t,...s)=>z(Ue(u,t),n=>{oe(de(s)?Te(n):s,t=>{e.delListener(t),Se(n,t)}),Re(n)&&Ge(u,t)}),f=(e,s)=>{Ge(o,e,s),ve(r,e)||(Ge(r,e,t()),Ge(d,e,Ae()),Ge(c,e,Ae()),a(i))},b=e=>{Ge(o,e),Ge(r,e),Ge(d,e),Ge(c,e),h(e),a(i)};return[()=>e,()=>Be(o),e=>qe(r,e),e=>ve(r,e),e=>Ue(o,e),e=>Ue(r,e),(e,t)=>Ge(r,e,t),f,(t,n,a,o,r)=>{f(t,n);const i=Ae(),u=Ae(),b=Ue(d,t),C=Ue(c,t),w=t=>{const a=s=>e.getCell(n,t,s),d=Ue(b,t),c=l(n,t)?s(o(a,t)):void 0;if(d===c||q(d)&&q(c)&&se(d,c)||Ge(i,t,[d,c]),!N(r)){const e=Ue(C,t),s=l(n,t)?r(a,t):void 0;e!=s&&Ge(u,t,s)}},I=e=>{a(()=>{pe(i,([,e],t)=>Ge(b,t,e)),pe(u,(e,t)=>Ge(C,t,e))},i,u,b,C,e),Le(i),Le(u)};qe(b,w),e.hasTable(n)&&oe(e.getRowIds(n),e=>{ve(b,e)||w(e)}),I(!0),h(t),g(t,0,e.addRowListener(n,null,(e,t,s)=>w(s)),e.addTableListener(n,()=>I()))},b,e=>n(e,i),()=>qe(u,b),g,h]},rt=(e,s)=>B(e)?t=>t(e):e??(()=>s??t),it=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},dt=/^\d+$/,ct=()=>{const e=[];let s=0;return[n=>(n?he(e):null)??t+s++,t=>{dt.test(t)&&K(e)<1e3&&ue(e,t)}]},ut=e=>{let s;const[n,a]=ct(),l=Ae();return[(a,o,r,i=[],d=()=>[])=>{s??=e();const c=n(1);return Ge(l,c,[a,o,r,i,d]),lt(nt(o,r??[t],at),c),c},(e,n,...a)=>oe(((e,s=[t])=>{const n=[],a=(e,t)=>t==K(s)?ue(n,e):O(s[t])?pe(e,e=>a(e,t+1)):oe([s[t],null],s=>a(Ue(e,s),t+1));return a(e,0),n})(e,n),e=>pe(e,e=>Ue(l,e)[0](s,...n??[],...a))),e=>z(Ue(l,e),([,s,n])=>(nt(s,n??[t],void 0,t=>(Se(t,e),Re(t)?1:0)),Ge(l,e),a(e),n)),e=>z(Ue(l,e),([e,,t=[],n,a])=>{const l=(...o)=>{const r=K(o);r==K(t)?e(s,...o,...a(o)):O(t[r])?oe(n[r]?.(...o)??[],e=>l(...o,e)):l(...o,t[r])};l()})]},gt=it(e=>{let s,n,a,l=100,o=Ae(),r=Ae(),i=1;const d=Ae(),c=Ae(),[u,g,h]=ut(()=>_),f=Ae(),b=Ae(),C=[],w=[],I=(t,s)=>{i=0,e.transaction(()=>{const[n,a]=Ue(f,s);pe(n,(s,n)=>pe(s,(s,a)=>pe(s,(s,l)=>e._[5](n,a,l,s[t],!0)))),pe(a,(s,n)=>e._[6](n,s[t],!0))}),i=1},v=e=>{Ge(f,e),Ge(b,e),g(c,[e])},R=(e,t)=>oe(((e,t)=>e.splice(0,t))(e,t??K(e)),v),T=()=>R(C,K(C)-l),L=()=>z(s,()=>{ue(C,s),T(),R(w),s=void 0,a=1}),p=()=>{s=ge(C),a=1};let S,V;const m=(e=t)=>(N(s)&&(s=t+n++,Ge(f,s,[o,r]),E(s,e),o=Ae(),r=Ae(),a=1),s),y=()=>{de(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),I(0,s),s=ge(C),a=1)},k=()=>{de(w)||(ue(C,s),s=he(w),I(1,s),a=1)},M=()=>{a&&(g(d),a=0)},D=e=>{const t=m(e);return M(),t},E=(e,t)=>(W(e)&&Ue(b,e)!==t&&(Ge(b,e,t),g(c,[e])),_),W=e=>ve(f,e),_={setSize:e=>(l=e,T(),_),addCheckpoint:D,setCheckpoint:E,getStore:()=>e,getCheckpointIds:()=>[[...C],s,[...w]],forEachCheckpoint:e=>qe(b,e),hasCheckpoint:W,getCheckpoint:e=>Ue(b,e),goBackward:()=>(y(),M(),_),goForward:()=>(k(),M(),_),goTo:e=>{const t=ee(C,e)?y:ee(w,e)?k:void 0;for(;!N(t)&&e!=s;)t();return M(),_},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),_),clear:()=>(R(C),R(w),N(s)||v(s),s=void 0,n=0,D(),_),clearForward:()=>(de(w)||(R(w),g(d)),_),destroy:()=>{e.delListener(S),e.delListener(V)},getListenerStats:()=>({checkpointIds:Ce(d),checkpoint:Ce(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,s,n,a,l)=>{if(i){L();const e=Ke(o,t,Ae),r=Ke(e,s,Ae),i=Ke(r,n,()=>[l,void 0]);i[1]=a,i[0]===a&&Re(Ge(r,n))&&Re(Ge(e,s))&&Re(Ge(o,t))&&p(),M()}}),V=e.addValueListener(null,(e,t,s,n)=>{if(i){L();const e=Ke(r,t,()=>[n,void 0]);e[1]=s,e[0]===s&&Re(Ge(r,t))&&p(),M()}})}};return Ee(_.clear())},e=>e._registerListeners()),ht=E("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),ft=Ae(re(ht,(e,t)=>[e,t])),bt=e=>ht[63&e],Ct=(e,t)=>Ue(ft,e[t])??0,wt=_.crypto?e=>_.crypto.getRandomValues(e):e=>re(e,()=>P(256*H.random())),It=(e=16)=>ce(wt(new Uint8Array(e)),(e,t)=>e+bt(t),t),vt=JSON.stringify,Rt=JSON.parse,Tt=e=>vt(e,(e,t)=>t instanceof Map?Ve.fromEntries([...t]):t),Lt=new _.TextEncoder,pt=e=>{let t=2166136261;return oe(Lt.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},St=(e,t)=>(e^t)>>>0,Vt=e=>ce(ke(e),(e,[t,s])=>St(e,mt(t,s)^mt(t,0)),0),mt=(e,t)=>pt(e+":"+t),yt=(e,t)=>pt(Tt(e??null)+":"+t),kt=yt,Mt=mt,Dt=Vt,Et=mt,Wt=e=>ce(ke(e),(e,[t,s])=>St(e,mt(t,s)),0),_t=mt,Ht=Wt,Jt=2**36,xt=2**30,Pt=2**24,Ft=2**18,Qt=4096,Nt=e=>{const t=pt(e);return bt(t/Pt)+bt(t/Ft)+bt(t/Qt)+bt(t/64)+bt(t)},Ot=(e,t=Date.now)=>{let s=0,n=-1;const a=z(e,Nt,()=>It(5)),l=e=>{const a=s,[l,o]=N(e)||""==e?[0,0]:r(e);s=J(a,l,t()),n=s==a?s==l?J(n,o):n:s==l?o:-1},o=(e,t,s)=>bt(e/Jt)+bt(e/xt)+bt(e/Pt)+bt(e/Ft)+bt(e/Qt)+bt(e/64)+bt(e)+bt(t/Ft)+bt(t/Qt)+bt(t/64)+bt(t)+(N(s)?a:Nt(s)),r=e=>[Ct(e,0)*Jt+Ct(e,1)*xt+Ct(e,2)*Pt+Ct(e,3)*Ft+Ct(e,4)*Qt+64*Ct(e,5)+Ct(e,6),Ct(e,7)*Ft+Ct(e,8)*Qt+64*Ct(e,9)+Ct(e,10),e.slice(11)];return[()=>(l(),o(s,++n)),l,o,r,()=>s,()=>n,()=>a]},jt=(e,t)=>(e??0)<(t??0)?-1:1,zt=it(e=>{const s=Ae(),n=Ae(),[a,l,o]=ut(()=>v),[r,i,d,c,u,g,h,,f,b,C,w]=ot(e,Ae,e=>N(e)?t:q(e)?re(e,k):k(e),a,l),I=(t,s,n)=>{const a=u(t);pe(n,(t,n)=>s(n,s=>pe(t,t=>s(t,s=>e.forEachCell(a,t,s)))))},v={setIndexDefinition:(e,t,a,o,r,i=jt)=>{const d=N(r)?void 0:([e],[t])=>r(e,t);return f(e,t,(t,a,r,c,u,f)=>{let b=0;const C=at(),w=at(),I=g(e);if(pe(a,([e,t],s)=>{const n=at(e),a=at(t);pe(n,e=>Se(a,e)?Se(n,e):0),pe(n,e=>{lt(C,e),z(Ue(I,e),t=>{Se(t,s),Re(t)&&(Ge(I,e),b=1)})}),pe(a,e=>{lt(C,e),ve(I,e)||(Ge(I,e,at()),b=1),lt(Ue(I,e),s),N(o)||lt(w,e)})}),t(),Re(u)||(f?qe(I,e=>lt(w,e)):qe(r,e=>z(Ue(c,e),e=>oe(q(e)?e:[e],e=>lt(w,e)))),pe(w,e=>{const t=(t,s)=>i(Ue(u,t),Ue(u,s),e),s=[...Ue(I,e)];ae(s,t)||(Ge(I,e,at(le(s,t))),lt(C,e))})),(b||f)&&!N(d)){const t=[...I];ae(t,d)||(h(e,Ae(le(t,d))),b=1)}b&&l(s,[e]),pe(C,t=>l(n,[e,t]))},rt(a),z(o,rt)),v},delIndexDefinition:e=>(b(e),v),getStore:r,getIndexIds:i,forEachIndex:e=>d((t,s)=>e(t,e=>I(t,e,s))),forEachSlice:(e,t)=>I(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>ve(g(e),t),getTableId:u,getSliceIds:e=>Be(g(e)),getSliceRowIds:(e,t)=>Te(Ue(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({sliceIds:Ce(s),sliceRowIds:we(n)})};return Ee(v)}),At=t=>{if(O(t))return"null";if(q(t))return r;if(Me(t))return o;const s=e(t);return A(s)||s==a&&F(t)?s:void 0},Bt=e=>N(e)||!N(At(e)),Ut=e=>e==o||e==r,qt=e=>Me(e)||q(e)?"�"+vt(e):e,Gt=e=>B(e)&&"�"==e[0],Kt=(e,t,s)=>!s&&Gt(e)?Rt(G(e,1)):e,Xt=([e,t])=>Yt(e,t),Yt=(e,t)=>t?[e,t]:[e],Zt=(e,t,s)=>[e,t,s],$t=e=>e[2],es=(e,t)=>t>e?(e?pt(e):0)^pt(t):0,ts=(e,t)=>((e??"")>(t??"")?e:t)??"",ss=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},ns=(e=t)=>Yt(We(),e),as=(e=t)=>[Ae(),e,0],ls=([e,t,s],n)=>[Ye(e,n),t,s],os=([e,t],s=Xt)=>Yt(Ye(e,s),t),rs=(t,s)=>q(t)&&3==K(t)&&B(t[1])&&e(t[2])==a&&F(t[2])&&s(t[0]),is=e=>[e,e],ds=(e,t=Ce)=>t(e[0])+t(e[1]),cs=()=>[Ae(),Ae()],us=e=>[...e],gs=([e,t])=>e===t,hs=(e,t,s)=>Ge(e,t,Ue(e,t)==-s?void 0:s),fs=([e,t],[s,n])=>Ne(e,s)&&Ne(t,n),bs=()=>{let e,t,s=!1,n=!1,l=0,o=[],r=[],g=0;const b=Ae(),L=Ae(),M=Ae(),D=Ae(),E=Ae(),W=Ae(),_=Ae(),H=Ae(),J=Ae(),x=Ae(),P=Ae(),F=Ae(),Q=Ae(),j=Ae(),B=at(),K=Ae(),X=Ae(),Y=Ae(),te=Ae(),ne=cs(),ae=cs(),ie=cs(),de=cs(),ce=cs(),ge=cs(),he=cs(),fe=cs(),Te=cs(),Ve=cs(),me=cs(),ye=cs(),ke=cs(),De=cs(),We=cs(),_e=cs(),xe=cs(),Fe=cs(),Oe=cs(),ze=cs(),nt=cs(),ot=cs(),rt=Ae(),it=cs(),[dt,gt,ht,ft]=ut(()=>on),bt=e=>{const t=g;g=1;const s=e();return g=t,s},Ct=(e,t,s,n=Object.is)=>z(t(),t=>e===t||n(e,t)?s(t):bt(()=>s(t))),wt=e=>{if(!je(e,(e,t)=>ee([i,d,c],t)))return!1;const t=e[i];if(!A(t)&&t!=a&&!Ut(t))return!1;const s=e[d];return!(O(s)&&!e[c]||(O(s)||(At(s)!=t?Je(e,d):e[d]=qt(s)),0))},It=q,vt=(t,s)=>(!e||ve(P,s)||as(s))&&je(t,(e,t)=>Lt(s,t,e),()=>as(s)),Lt=(e,t,s,n)=>je(n?s:mt(s,e,t),(n,a)=>z(pt(e,t,a,n),e=>(s[a]=e,!0),()=>!1),()=>as(e,t)),pt=(t,s,n,a)=>e?z(Ue(Ue(P,t),n),e=>O(a)?e[c]?a:as(t,s,n,a,e[d]):At(a)===e[i]?qt(a):Ut(e[i])&&Gt(a)?a:as(t,s,n,a,e[d]),()=>as(t,s,n,a)):N(At(a))?as(t,s,n,a):qt(a),St=(e,t)=>je(t?e:yt(e),(t,s)=>z(Vt(s,t),t=>(e[s]=t,!0),()=>!1),()=>ls()),Vt=(e,s)=>t?z(Ue(Q,e),t=>O(s)?t[c]?s:ls(e,s,t[d]):At(s)===t[i]?qt(s):Ut(t[i])&&Gt(s)?s:ls(e,s,t[d]),()=>ls(e,s)):N(At(s))?ls(e,s):qt(s),mt=(e,t,s)=>(z(Ue(F,t),([n,a])=>{pe(n,(t,s)=>{He(e,s)||(e[s]=t)}),pe(a,n=>{He(e,n)||as(t,s,n)})}),e),yt=e=>(t&&(pe(j,(t,s)=>{He(e,s)||(e[s]=t)}),pe(B,t=>{He(e,t)||ls(t)})),e),kt=e=>Xe(P,e,(e,t,s)=>{const n=Ae(),a=at();Xe(Ke(P,t,Ae),s,(e,t,s)=>{Ge(e,t,s),z(s[d],e=>Ge(n,t,e),()=>lt(a,t))}),Ge(F,t,[n,a])},(e,t)=>{Ge(P,t),Ge(F,t)}),Mt=e=>Xe(Q,e,(e,t,s)=>{Ge(Q,t,s),z(s[d],e=>Ge(j,t,e),()=>lt(B,t))},(e,t)=>{Ge(Q,t),Ge(j,t),Se(B,t)}),Dt=e=>Qe(e)?Ks():js(e),Et=(e,t,s,n,a,l)=>N(n)?Zs(e,t,s,!0,a):zs(e,t,s,n,a,l),Wt=e=>Qe(e)?$s():As(e),_t=(e,t,s)=>N(t)?en(e,s):Bs(e,t,s),Ht=(e,t)=>Ct(e,()=>t?e:z(o[1],t=>bt(()=>t(Z(e))),()=>e),e=>Xe(Y,e,(e,t,s)=>Jt(t,s),(e,t)=>zt(t)),Ne),Jt=(e,t,s)=>Ct(t,()=>s?t:z(o[2],s=>bt(()=>s(e,Z(t))),()=>t),t=>Xe(Ke(Y,e,()=>(Zt(e,1),Ge(K,e,ct()),Ge(X,e,Ae()),Ae())),t,(t,s,n)=>xt(e,t,s,n),(t,s)=>Bt(e,t,s)),Ne),xt=(e,t,s,n,a)=>Ct(n,()=>a?n:z(o[3],t=>bt(()=>t(e,s,Z(n))),()=>n),n=>Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,a)=>Pt(e,s,t,n,a),(n,l)=>Xt(e,t,s,n,l,a)),Ne),Pt=(e,t,s,n,a,l)=>Ct(a,()=>z(l?void 0:o[4],s=>bt(()=>s(e,t,n,a)),()=>a),a=>{ve(s,n)||es(e,t,n,1);const l=Ue(s,n);a!==l&&(ts(e,t,n,l,a),Ge(s,n,a))}),Ft=(e,t,s,n,a,l)=>z(Ue(t,s),t=>Pt(e,s,t,n,a,l),()=>{const o=Ae();Ge(t,s,o),$t(e,s,1),Pe(mt({[n]:a},e,s),(t,n)=>Pt(e,s,o,n,t,l))}),Qt=(e,t)=>Ct(e,()=>t?e:z(o[5],t=>bt(()=>t(Z(e))),()=>e),e=>Xe(te,e,(e,t,s)=>Nt(t,s),(e,t)=>Yt(t)),Ne),Nt=(e,t,s)=>Ct(t,()=>z(s?void 0:o[6],s=>bt(()=>s(e,t)),()=>t),t=>{ve(te,e)||ss(e,1);const s=Ue(te,e);t!==s&&(ns(e,s,t),Ge(te,e,t))}),Ot=e=>Ke(Y,e,()=>(Zt(e,1),Ge(K,e,ct()),Ge(X,e,Ae()),Ae())),zt=e=>bt(()=>o[8]?.(e))??1?Jt(e,{},!0):Ue(Y,e),Bt=(e,t,s)=>{if(bt(()=>o[9]?.(e,s))??1){const[,n]=Ue(K,e);n(s),xt(e,t,s,{},!0)}},Xt=(e,t,s,n,a,l,r)=>{const i=Ue(Ue(F,e)?.[0],a);if(!N(i)&&!l)return Pt(e,s,n,a,i);if(r||(bt(()=>o[10]?.(e,s,a))??1)){const l=t=>{ts(e,s,t,Ue(n,t)),es(e,s,t,-1),Ge(n,t)};N(i)?l(a):qe(n,l),Re(n)&&($t(e,s,-1),Re(Ge(t,s))&&(Zt(e,-1),Ge(Y,e),Ge(K,e),Ge(X,e)))}},Yt=(e,t)=>{const s=Ue(j,e);if(!N(s))return Nt(e,s);(t||(bt(()=>o[12]?.(e))??1))&&(ns(e,Ue(te,e)),ss(e,-1),Ge(te,e))},Zt=(e,t)=>hs(b,e,t),$t=(e,t,s)=>hs(Ke(D,e,Ae),t,s)&&Ge(M,e,Ke(M,e,()=>0)+s),es=(e,t,s,n)=>{const a=Ue(X,e),l=Ue(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&hs(Ke(L,e,Ae),s,n),Ge(a,s,l!=-n?l+n:void 0),hs(Ke(Ke(E,e,Ae),t,Ae),s,n)},ts=(e,t,s,n,a)=>{Ke(Ke(Ke(W,e,Ae),t,Ae),s,()=>[n,0])[1]=a,r[3]?.(e,t,s,a,g)},ss=(e,t)=>hs(_,e,t),ns=(e,t,s)=>{Ke(H,e,()=>[t,0])[1]=s,r[4]?.(e,s,g)},as=(e,t,s,n,a)=>(ue(Ke(Ke(Ke(J,e,Ae),t,Ae),s,()=>[]),n),a),ls=(e,t,s)=>(ue(Ke(x,e,()=>[]),t),s),os=(e,t,s)=>z(Ue(Ue(Ue(W,e),t),s),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Es(e,t,s))]),rs=e=>z(Ue(H,e),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Hs(e))]),Cs=e=>Re(J)||Re(_e[e])?0:pe(e?st(J):J,(t,s)=>pe(t,(t,n)=>pe(t,(t,a)=>gt(_e[e],[s,n,a],t)))),ws=e=>Re(x)||Re(xe[e])?0:pe(e?et(x):x,(t,s)=>gt(xe[e],[s],t)),Is=(e,t,s,n)=>{if(!Re(e))return gt(t,n,()=>Ye(e)),qe(e,(e,t)=>gt(s,[...n??[],e],1==t)),1},vs=e=>{const t=!Re(ne[e]),n=!Re(Ve[e]),a=!(Re(ke[e])&&Re(De[e])&&Re(Te[e])&&Re(me[e])&&Re(ge[e])&&Re(he[e])&&Re(fe[e])&&!n&&Re(ie[e])&&Re(de[e])),l=!(Re(We[e])&&Re(ye[e])&&Re(ce[e])&&Re(ae[e]));if(t||a||l){const r=e?[et(b),tt(L),et(M),tt(D),st(E),(o=W,et(o,e=>et(e,e=>et(e,us))))]:[b,L,M,D,E,W];if(t){const t=Js();t!=s&&gt(ne[e],void 0,t)}if(a){Is(r[0],ie[e],de[e]),pe(r[1],(t,s)=>Is(t,ge[e],he[e],[s])),pe(r[2],(t,s)=>{0!=t&&gt(fe[e],[s],ys(s))});const t=at();pe(r[3],(s,a)=>{Is(s,Te[e],me[e],[a])&&n&&(gt(Ve[e],[a,null]),lt(t,a))}),n&&pe(r[5],(s,n)=>{if(!ve(t,n)){const t=at();pe(s,e=>pe(e,([s,n],a)=>n!==s?lt(t,a):Se(e,a))),pe(t,t=>gt(Ve[e],[n,t]))}}),pe(r[4],(t,s)=>pe(t,(t,n)=>Is(t,ke[e],De[e],[s,n])))}if(l){let t;pe(r[5],(s,n)=>{let a;pe(s,(s,l)=>{let o;pe(s,([s,r],i)=>{r!==s&&(gt(We[e],[n,l,i],Kt(r),Kt(s),os),t=a=o=1)}),o&&gt(ye[e],[n,l],os)}),a&&gt(ce[e],[n],os)}),t&&gt(ae[e],void 0,os)}}var o},Rs=e=>{const t=!Re(Fe[e]),s=!Re(ze[e])||!Re(nt[e]),a=!Re(ot[e])||!Re(Oe[e]);if(t||s||a){const l=e?[et(_),et(H,us)]:[_,H];if(t){const t=Ns();t!=n&&gt(Fe[e],void 0,t)}if(s&&Is(l[0],ze[e],nt[e]),a){let t;pe(l[1],([s,n],a)=>{n!==s&&(gt(ot[e],[a],Kt(n),Kt(s),rs),t=1)}),t&&gt(Oe[e],void 0,rs)}}},Ts=(e,...t)=>(nn(()=>e(...re(t,k))),on),Ls=(e,t,s,n,a)=>{let l=Ms(e,t,...s);return dt(()=>{const a=Ms(e,t,...s);se(a,l)||(l=a,n(on,e,t,...s,l))},Ve[a?1:0],[e,t],[Vs])},ps=(e=!1)=>[Ye(W,(t,s)=>-1===Ue(b,s)?void 0:Ye(t,(t,n)=>-1===Ue(Ue(D,s),n)?void 0:Ye(t,([,t])=>Kt(t,0,e),e=>gs(e)),Re,Qe),Re,Qe),Ye(H,([,t])=>Kt(t,0,e),e=>gs(e)),1],Ss=()=>$e(Y,Kt),Vs=()=>Be(Y),ms=e=>Be(Ue(X,k(e))),ys=e=>be(Ue(Y,k(e))),ks=e=>Be(Ue(Y,k(e))),Ms=(e,t,s,n=0,a)=>{return Me(e)?Ms(e.tableId,e.cellId,e.descending,e.offset,e.limit):re(G(le((l=Ue(Y,k(e)),o=(e,s)=>[N(t)?s:Ue(e,k(t)),s],re([...l?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>jt(e,t)*(s?-1:1)),n,N(a)?a:n+a),([,e])=>e);var l,o},Ds=(e,t)=>Be(Ue(Ue(Y,k(e)),k(t))),Es=(e,t,s)=>Kt(Ue(Ue(Ue(Y,k(e)),k(t)),k(s))),Ws=()=>Ye(te,Kt),_s=()=>Be(te),Hs=e=>Kt(Ue(te,k(e))),Js=()=>!Re(Y),xs=e=>ve(Y,k(e)),Ps=(e,t)=>ve(Ue(X,k(e)),k(t)),Fs=(e,t)=>ve(Ue(Y,k(e)),k(t)),Qs=(e,t,s)=>ve(Ue(Ue(Y,k(e)),k(t)),k(s)),Ns=()=>!Re(te),Os=e=>ve(te,k(e)),js=e=>Ts(()=>(e=>je(e,vt,as))(e)?Ht(e):0),zs=(e,t,s,n,a,l)=>Ts((e,t,s)=>z(pt(e,t,s,U(n)?n(Es(e,t,s)):n),n=>{const r=Ot(e);z(a||l||!o[14]?.()?void 0:o[3],l=>{const o=Ue(r,t),i={...o?Ye(o):{},[s]:n};z(bt(()=>l(e,t,Z(i))),s=>((e,t,s,n,a)=>{Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,l)=>z(pt(e,s,n,l),l=>Pt(e,s,t,n,l,a)),(n,a)=>Xt(e,t,s,n,a,!0))})(e,r,t,s,a))},()=>Ft(e,r,t,s,n,a))}),e,t,s),As=e=>Ts(()=>St(e)?Qt(e):0),Bs=(e,t,s)=>Ts(e=>z(Vt(e,U(t)?t(Hs(e)):t),t=>Nt(e,t,s)),e),Us=e=>($(()=>Dt(Rt(e))),on),qs=t=>Ts(()=>{if((e=je(t,e=>je(e,wt)))&&(kt(t),!Re(Y))){const e=Ss();Ks(),js(e)}}),Gs=e=>Ts(()=>{if(t=(e=>je(e,wt))(e)){const s=Ws();sn(),$s(),t=!0,Mt(e),As(s)}}),Ks=()=>Ts(()=>bt(()=>o[7]?.())??1?Ht({},!0):0),Xs=e=>Ts(e=>ve(Y,e)?zt(e):0,e),Ys=(e,t)=>Ts((e,t)=>z(Ue(Y,e),s=>ve(s,t)?Bt(e,s,t):0),e,t),Zs=(e,t,s,n,a)=>Ts((e,t,s)=>z(Ue(Y,e),l=>z(Ue(l,t),o=>ve(o,s)?Xt(e,l,t,o,s,n,a):0)),e,t,s),$s=()=>Ts(()=>bt(()=>o[11]?.())??1?Qt({},!0):0),en=(e,t)=>Ts(e=>ve(te,e)?Yt(e,t):0,e),tn=()=>Ts(()=>{kt({}),e=!1}),sn=()=>Ts(()=>{Mt({}),t=!1}),nn=(e,t)=>{if(-1!=l){an();const s=e();return ln(t),s}},an=()=>(-1!=l&&l++,1==l&&(r[0]?.(),gt(rt)),on),ln=e=>(l>0&&(l--,0==l&&(l=1,bt(()=>{Cs(1),Re(W)||vs(1),ws(1),Re(H)||Rs(1)}),e?.(on)&&(pe(W,(e,t)=>pe(e,(e,s)=>pe(e,([e],n)=>Et(t,s,n,e,!0)))),Le(W),pe(H,([e],t)=>_t(t,e,!0)),Le(H)),gt(it[0],void 0),l=-1,Cs(0),Re(W)||vs(0),ws(0),Re(H)||Rs(0),r[1]?.(),gt(it[1],void 0),r[2]?.(),l=0,s=Js(),n=Ns(),oe([b,L,M,D,E,W,J,_,H,x],Le))),on),on={getContent:()=>[Ss(),Ws()],getTables:Ss,getTableIds:Vs,getTable:e=>Ze(Ue(Y,k(e)),Kt),getTableCellIds:ms,getRowCount:ys,getRowIds:ks,getSortedRowIds:Ms,getRow:(e,t)=>Ye(Ue(Ue(Y,k(e)),k(t)),Kt),getCellIds:Ds,getCell:Es,getValues:Ws,getValueIds:_s,getValue:Hs,hasTables:Js,hasTable:xs,hasTableCell:Ps,hasRow:Fs,hasCell:Qs,hasValues:Ns,hasValue:Os,getTablesJson:()=>Tt(Y),getValuesJson:()=>Tt(te),getJson:()=>Tt([Y,te]),getTablesSchemaJson:()=>Tt(P),getValuesSchemaJson:()=>Tt(Q),getSchemaJson:()=>Tt([P,Q]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Ts(()=>{const t=U(e)?e():e;It(t)&&(e=>{Ct(e,()=>z(o[0],t=>bt(()=>t(Z(e))),()=>e),([e,t])=>{(Qe(e)?Ks:js)(e),(Qe(t)?$s:As)(t)},fs)})(t)}),setTables:js,setTable:(e,t)=>Ts(e=>vt(t,e)?Jt(e,t):0,e),setRow:(e,t,s)=>Ts((e,t)=>Lt(e,t,s)?xt(e,Ot(e),t,s):0,e,t),addRow:(e,t,s=!0)=>nn(()=>{let n;return Lt(e,n,t)&&(e=k(e),xt(e,Ot(e),n=((e,t)=>{const[s]=Ue(K,e);let n;do{n=s(t)}while(ve(Ue(Y,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>Ts((e,t)=>{if(Lt(e,t,s,1)){const n=Ot(e);Pe(s,(s,a)=>Ft(e,n,t,a,s))}},e,t),setCell:zs,setValues:As,setPartialValues:e=>Ts(()=>St(e,1)?Pe(e,(e,t)=>Nt(t,e)):0),setValue:Bs,applyChanges:e=>Ts(()=>Ct(e,()=>z(o[13],t=>bt(()=>t(Z(e))),()=>e),e=>{Pe(e[0],(e,t)=>N(e)?Xs(t):Pe(e,(e,s)=>N(e)?Ys(t,s):Pe(e,(e,n)=>Et(t,s,n,e,void 0,!0)))),Pe(e[1],(e,t)=>_t(t,e))},fs)),setTablesJson:Us,setValuesJson:e=>($(()=>Wt(Rt(e))),on),setJson:e=>Ts(()=>$(()=>{const[t,s]=Rt(e);Dt(t),Wt(s)},()=>Us(e))),setTablesSchema:qs,setValuesSchema:Gs,setSchema:(e,t)=>Ts(()=>{qs(e),Gs(t)}),delTables:Ks,delTable:Xs,delRow:Ys,delCell:Zs,delValues:$s,delValue:en,delTablesSchema:tn,delValuesSchema:sn,delSchema:()=>Ts(()=>{tn(),sn()}),transaction:nn,startTransaction:an,getTransactionChanges:()=>ps(),getTransactionLog:()=>[!Re(W),!Re(H),$e(W,us,gs),$e(J),Ye(H,us,gs),Ye(x),Ye(b),Ze(D),$e(E),Ye(_)],finishTransaction:ln,forEachTable:e=>pe(Y,(t,s)=>e(s,e=>pe(t,(t,s)=>e(s,e=>qe(t,(t,s)=>e(t,Kt(s))))))),forEachTableCell:(e,t)=>qe(Ue(X,k(e)),t),forEachRow:(e,t)=>pe(Ue(Y,k(e)),(e,s)=>t(s,t=>qe(e,(e,s)=>t(e,Kt(s))))),forEachCell:(e,t,s)=>qe(Ue(Ue(Y,k(e)),k(t)),(e,t)=>s(e,Kt(t))),forEachValue:e=>qe(te,(t,s)=>e(t,Kt(s))),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>Me(e)?Ls(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):Ls(e,t,[s,n,a],l,o),addStartTransactionListener:e=>dt(e,rt),addWillFinishTransactionListener:e=>dt(e,it[0]),addDidFinishTransactionListener:e=>dt(e,it[1]),callListener:e=>(ft(e),on),delListener:e=>(ht(e),on),getListenerStats:()=>({hasTables:ds(ne),tables:ds(ae),tableIds:ds(ie),hasTable:ds(de),table:ds(ce),tableCellIds:ds(ge),hasTableCell:ds(he,we),rowCount:ds(fe),rowIds:ds(Te),sortedRowIds:ds(Ve),hasRow:ds(me,we),row:ds(ye,we),cellIds:ds(ke,we),hasCell:ds(De,Ie),cell:ds(We,Ie),invalidCell:ds(_e,Ie),hasValues:ds(Fe),values:ds(Oe),valueIds:ds(ze),hasValue:ds(nt),value:ds(ot),invalidValue:ds(xe),transaction:Ce(rt)+ds(it)}),isMergeable:()=>!1,_:[bs,dt,gt,(e,t,s,n,a)=>r=[e,t,s,n,a],(e,t,s,n,a,l,r,i,d,c,u,g,h,f,b)=>o=[e,t,s,n,a,l,r,i,d,c,u,g,h,f,b],Et,_t,()=>[$e(Y),Ye(te)],()=>ps(!0)]};return Pe({[f+w]:[0,ne,[],()=>[Js()]],[w]:[0,ae],[I]:[0,ie],[f+C]:[1,de,[Vs],e=>[xs(...e)]],[C]:[1,ce,[Vs]],[C+S]:[1,ge,[Vs]],[f+C+p]:[2,he,[Vs,ms],e=>[Ps(...e)]],[R]:[1,fe,[Vs]],[T]:[1,Te,[Vs]],[f+v]:[2,me,[Vs,ks],e=>[Fs(...e)]],[v]:[2,ye,[Vs,ks]],[S]:[2,ke,[Vs,ks]],[f+p]:[3,De,[Vs,ks,Ds],e=>[Qs(...e)]],[p]:[3,We,[Vs,ks,Ds],e=>is(Es(...e))],InvalidCell:[3,_e],[f+m]:[0,Fe,[],()=>[Ns()]],[m]:[0,Oe],[y]:[0,ze],[f+V]:[1,nt,[_s],e=>[Os(...e)]],[V]:[1,ot,[_s],e=>is(Hs(e[0]))],InvalidValue:[1,xe]},([e,t,s,n],a)=>{on[h+a+u]=(...a)=>dt(a[e],t[a[e+1]?1:0],e>0?G(a,0,e):void 0,s,n)}),Ee(on)},Cs={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},ws=(e=t)=>[as(e),as(e)],Is=(e,s)=>{let n=1,a=ws(),l=0,o=0;const r=Ae(),i=at(),[d,c]=Ot(e,s),g=bs(),f=e=>{const t=n;return n=0,e(),n=t,p},b=(e,s=0)=>{const n={},l={},[[o,r=t,i=0],d]=e,[u,g]=a,[h,f,b]=u;let w=s?i:b,I=r;xe(o,([e,a=t,l=0],o)=>{const r=Ke(h,o,as),[i,d,c]=r;let u=s?l:c,g=a;xe(e,(e,t)=>{const[a,l,r]=C(e,Ke(i,t,as),Oe(Oe(n,o,We),t,We),s);u^=s?0:St(l?mt(t,l):0,mt(t,r)),g=ts(g,a)}),u^=s?0:es(d,a),ss(r,a,u),w^=s?0:St(c?mt(o,c):0,mt(o,r[2])),I=ts(I,g)}),w^=s?0:es(f,r),ss(u,r,w);const[v]=C(d,g,l,s);return c(ts(I,v)),[n,l,1]},C=(e,s,n,a)=>{const[l,o=t,r=0]=e,[i,d,c]=s;let u=o,g=a?r:c;return xe(l,([e,s=t,l=0],o)=>{const r=Ke(i,o,()=>[void 0,t,0]),[,d,c]=r;(!d||s>d)&&(ss(r,s,a?l:yt(e,s)),r[0]=e,n[o]=e,g^=a?0:St(mt(o,c),mt(o,r[2])),u=ts(u,s))}),g^=a?0:es(d,o),ss(s,o,g),[u,c,s[2]]},w=Y,I=Y,v=(e=!1)=>[ls(a[0],t=>ls(t,t=>ls(t,([t,s,n])=>[Kt(t,0,e),s,n]))),ls(a[1],([t,s,n])=>[Kt(t,0,e),s,n])],R=(e,t=!1)=>{const[[s,n,l],[o,d,c]]=a,u=e?Zt:Yt,g={};pe(r,(e,n)=>z(Ue(s,n),([s,a,l])=>{const o={};pe(e,(e,n)=>z(Ue(s,n),([s,a,l])=>{const r={};pe(e,e=>{z(Ue(s,e),([s,n,a])=>r[e]=u(t?s:Kt(s),n,a))}),o[n]=u(r,a,l)})),g[n]=u(o,a,l)}));const h={};return pe(i,e=>z(Ue(o,e),([s,n,a])=>h[e]=u(t?s:Kt(s),n,a))),[u(g,n,l),u(h,d,c),1]},T=()=>v(),L=e=>f(()=>g.applyChanges(b(e))),p={getMergeableContent:T,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>Ye(a[0][0],$t),getMergeableTableDiff:e=>{const t=ns(a[0][1]),s={};return qe(a[0][0],(n,[a,l,o])=>He(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=os([a,l],e=>os(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return xe(e,(e,s)=>z(Ue(a[0][0],s),([n,,a])=>a!=e?qe(n,(e,[,,n])=>Oe(t,s,We)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=ns(a[0][1]),s={};return xe(e,(e,n)=>qe(Ue(a[0][0],n)?.[0],(a,[l,o,r])=>He(e,a)?r!==e[a]?Oe(s,n,We)[a]=r:0:Oe(t[0],n,ns)[0][a]=os([l,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return xe(e,(e,s)=>z(Ue(a[0][0],s),([n])=>xe(e,(e,a)=>z(Ue(n,a),([n,,l])=>l!==e?qe(n,(e,[,,n])=>Oe(Oe(t,s,We),a,We)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return xe(e,(e,s)=>xe(e,(e,a)=>z(Ue(t,s),([t,l])=>z(Ue(t,a),([t,o])=>qe(t,(t,[r,i,d])=>d!==e[t]?Oe(Oe(n,s,()=>ns(l))[0],a,()=>ns(o))[0][t]=[r,i]:0))))),Yt(n,s)},getMergeableValueHashes:()=>Ye(a[1][0],$t),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=Ye(t,Xt,([,,t],s)=>t==e?.[s]);return Yt(n,s)},setMergeableContent:e=>f(()=>(e=>q(e)&&2==K(e)&&rs(e[0],e=>je(e,e=>rs(e,e=>je(e,e=>rs(e,e=>je(e,e=>rs(e,Bt),void 0,1)),void 0,1)),void 0,1))&&rs(e[1],e=>je(e,e=>rs(e,Bt),void 0,1)))(e)?g.transaction(()=>{g.delTables().delValues(),a=ws(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{l=1,g.setContent(e),l=0}),p),getTransactionMergeableChanges:(e=!1)=>R(e),applyMergeableChanges:L,merge:e=>{const t=T(),s=e.getMergeableContent();return e.applyMergeableChanges(t),L(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>R(e,!0)]};return g._[3](w,I,()=>{Le(r),Le(i)},(e,s,a,i,c)=>{lt(Ke(Ke(r,e,Ae),s,at),a),(n||c)&&(c&&(o=1),b([[{[e]:[{[s]:[{[a]:[i,l?t:d()]}]}]}],[{}],1]))},(e,s,a)=>{lt(i,e),(n||a)&&(a&&(o=1),b([[{}],[{[e]:[s,l?t:d()]}],1]))}),Pe(g,(e,t)=>p[t]=M(t,"set")||M(t,"del")||M(t,"apply")||D(t,"Transaction")||t=="call"+u||"use"==t?(...t)=>(e(...t),p):M(t,h)&&D(t,u)?(...s)=>{const n=Cs[G(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(p,...t),e(...s)}:"isMergeable"==t?()=>!0:e),Ee(p)},vs=Ae([["avg",[(e,t)=>ie(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>J(...e),(e,t)=>J(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:J(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>ie(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Rs=(e,t,s,n,a,l=!1)=>{if(Re(s))return;const[o,r,i,d]=a;return l||=N(e),pe(n,([s,n])=>{l||(e=N(s)?r?.(e,n,t++):N(n)?i?.(e,s,t--):d?.(e,n,s,t),l||=N(e))}),l?o(Te(s),be(s)):e},Ts=it(e=>{const s=Ae(),[n,a,l]=ut(()=>w),[o,r,i,d,c,u,g,,h,f,b,C]=ot(e,X,e=>isNaN(e)||N(e)||!0===e||!1===e||e===t?void 0:1*e,n,a),w={setMetricDefinition:(e,t,n,l,o,r,i)=>{const d=U(n)?[n,o,r,i]:Ue(vs,n)??Ue(vs,"sum");return h(e,t,(t,n,l,o,r,i)=>{const c=u(e),h=be(o);i||=N(c),t();let f=Rs(c,h,o,n,d,i);F(f)||(f=void 0),f!=c&&(g(e,f),a(s,[e],f,c))},rt(l,1)),w},delMetricDefinition:e=>(f(e),w),getStore:o,getMetricIds:r,forEachMetric:i,hasMetric:d,getTableId:c,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(l(e),w),destroy:C,getListenerStats:()=>({metric:Ce(s)})};return Ee(w)}),Ls=(e,t,...s)=>ce(e,(e,t)=>N(e)?e:t(...s,e),t),ps=(e,...t)=>te(e,e=>e(...t)),Ss=it(e=>{const t=e=>t=>(ue(e,t),D),s=[],n=[],a=[],l=[],o=[],r=[],i=[],d=[],c=[],u=[],g=[],h=[],f=[],b=[],C=t(s),w=t(n),I=t(a),v=t(l),R=t(o),T=t(r),L=t(i),p=t(d),S=t(c),V=t(u),m=t(g),y=t(h),k=t(f),M=t(b),D=Ee({getStore:()=>e,addWillSetContentCallback:C,addWillSetTablesCallback:w,addWillSetTableCallback:I,addWillSetRowCallback:v,addWillSetCellCallback:R,addWillSetValuesCallback:T,addWillSetValueCallback:L,addWillDelTablesCallback:p,addWillDelTableCallback:S,addWillDelRowCallback:V,addWillDelCellCallback:m,addWillDelValuesCallback:y,addWillDelValueCallback:k,addWillApplyChangesCallback:M,destroy:()=>{}});return e._[4](e=>Ls(s,e),e=>Ls(n,e),(e,t)=>Ls(a,t,e),(e,t,s)=>Ls(l,s,e,t),(e,t,s,n)=>Ls(o,n,e,t,s),e=>Ls(r,e),(e,t)=>Ls(i,t,e),()=>ps(d),e=>ps(c,e),(e,t)=>ps(u,e,t),(e,t,s)=>ps(g,e,t,s),()=>ps(h),e=>ps(f,e),e=>Ls(b,e),()=>l.length>0),D}),Vs=it(e=>{const s=e._[0],n=s(),a=s(),l=Ae(),o=Ae(),r=Ae(),{_:[,i,d],delListener:c}=a,[f,b,w,I,V,m,y,k,,M,D,E,W,_]=ot(e,()=>[],X,i,d),H=(e,t,...s)=>oe(s,s=>lt(Ke(Ke(l,t,Ae),e,at),s)),J=e=>{z(Ue(l,e),e=>{qe(e,(e,t)=>pe(t,t=>e.delListener(t))),Le(e)}),oe([a,n],t=>t.delTable(e))},x=(e,t,s)=>H(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener(()=>s.finishTransaction())),P=(s,l,o,r={})=>{const i=O(s);var d;k(s,l),y(s,[o,(d=r,new Map(ke(d)))]),F(s,i,r),J(s);const[,c]=m(s),u=[],g=[[void 0,[l,void 0,void 0,[],Ae()]]],h=[],f=[],b=[];o({select:(e,s)=>{const n=U(e)?[K(u)+t,e]:[N(s)?e:s,t=>t(e,s)];return ue(u,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=N(s)||U(t)?void 0:t,a=N(n)?t:s,l=[e,[e,n,U(a)?a:e=>e(a),[],Ae()]];return ue(g,l),{as:e=>l[0]=e}},where:(e,t,s)=>ue(h,U(e)?e:N(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const l=[e,[e,U(t)?[t,s,n,a]:Ue(vs,t)??[(e,t)=>t]]];return ue(f,l),{as:e=>l[0]=e}},having:(e,t)=>ue(b,U(e)?e:s=>s(e)===t),param:e=>Ue(c,e)});const C=Ae(u);if(Re(C))return A;const w=Ae(g);qe(w,(e,[,t])=>z(Ue(w,t),({3:t})=>N(e)?0:ue(t,e)));const I=Ae(f);let v=n;if(Re(I)&&de(b))v=a;else{x(s,v,a);const e=Ae();qe(I,(t,[s,n])=>lt(Ke(e,s,at),[t,n]));const t=at();qe(C,s=>ve(e,s)?0:lt(t,s));const n=Ae(),l=(t,n,l,o)=>z(t,([r,i,d,c])=>{qe(n,(t,[s])=>{const n=Ke(r,t,Ae),a=Ue(n,l),i=o?void 0:s;if(a!==i){const s=at([[a,i]]),o=be(n);Ge(n,l,i),pe(Ue(e,t),([e,t])=>{const a=Rs(c[e],o,n,s,t);c[e]=N(At(a))?void 0:a})}}),Re(i)||!te(b,e=>e(e=>c[e]))?a.delRow(s,d):N(d)?t[2]=a.addRow(s,c):a.setRow(s,d,c)});H(v,s,v.addRowListener(s,null,(a,o,r,i)=>{const d=[],c=[],u=Ae(),g=v.hasRow(s,r);let h=!g;pe(t,e=>{const[t,n,a]=i(s,r,e);ue(d,n),ue(c,a),h||=t}),qe(e,e=>{const[t,,n]=i(s,r,e);(h||t)&&Ge(u,e,[n])}),h&&l(nt(n,d,void 0,([,e])=>(Se(e,r),Re(e))),u,r,1),g&&l(nt(n,c,()=>{const e={};return pe(t,t=>e[t]=v.getCell(s,r,t)),[Ae(),at(),void 0,e]},([,e])=>{lt(e,r)}),u,r)}))}x(s,e,v);const R=(t,n,a,o)=>{const r=t=>e.getCell(n,a,t);oe(o,n=>{const[a,,l,o,i]=Ue(w,n),d=l?.(r,t),[c,u]=Ue(i,t)??[];d!=c&&(N(u)||_(s,u),Ge(i,t,N(d)?void 0:[d,...W(s,1,e.addRowListener(a,d,()=>R(t,a,d,o)))]))}),(t=>{const n=(s,n)=>e.getCell(...N(n)?[l,t,s]:s===l?[l,t,n]:[Ue(w,s)?.[0],Ue(Ue(w,s)?.[4],t)?.[0],n]);v.transaction(()=>te(h,e=>e(n))?qe(C,(e,a)=>v._[5](s,t,e,a(n,t))):v.delRow(s,t))})(t)},{3:T}=Ue(w,void 0);return v.transaction(()=>W(s,1,e.addRowListener(l,null,(t,n,a)=>{e.hasRow(l,a)?R(a,l,a,T):(v.delRow(s,a),pe(w,({4:e})=>z(Ue(e,a),([,t])=>{_(s,t),Ge(e,a)})))}))),A},F=(e,t,s)=>{const n=at([...De(t),...De(s)]);let a=0;pe(n,n=>{const l=_e(s,n);ne(_e(t,n),l)||(a=1,d(r,[e,n],l))}),a&&d(o,[e],s)},Q=(e,t,s=0)=>(z(m(e),([n,l])=>{!s&&Ne(Ye(l),t,ne)||a.transaction(()=>P(e,V(e),n,t))}),A),O=e=>Ye(m(e)?.[1]),j=(e,t)=>Ue(m(e)?.[1],t),A={setQueryDefinition:P,delQueryDefinition:e=>{const t=O(e);return J(e),M(e),F(e,t,{}),A},getParamValues:O,getParamValue:j,setParamValues:Q,setParamValue:(e,t,s)=>(ne(j(e,t),s)||Q(e,{...O(e),[t]:s},1),A),getStore:f,getQueryIds:b,forEachQuery:w,hasQuery:I,getTableId:V,addQueryIdsListener:e=>D(()=>e(A)),addParamValuesListener:(e,t)=>i((e,s,n)=>t(A,s,n),o,[e]),addParamValueListener:(e,t,s)=>i((e,t,n,a)=>s(A,t,n,a),r,[e,t]),delListener:e=>(c(e),A),destroy:E,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return{...n,paramValues:Ce(o),paramValue:we(r)}}};return Pe({[C]:[1,1],[C+S]:[0,1],[R]:[0,1],[T]:[0,1],[L]:[0,5],[v]:[1,2],[S]:[0,2],[p]:[1,3]},([e,t],s)=>{oe(e?["get","has","forEach"]:["get"],e=>A[e+g+s]=(...t)=>a[e+s](...t)),A[h+g+s+u]=(...e)=>a[h+s+u](...G(e,0,t),(s,...n)=>e[t](A,...n),!0)}),Ee(A)}),ms=it(e=>{const s=Ae(),n=Ae(),a=Ae(),l=Ae(),[o,r,i]=ut(()=>L),[d,c,u,g,h,f,,,b,C,w,I]=ot(e,()=>[Ae(),Ae(),Ae(),Ae()],e=>N(e)?void 0:e+t,o,r),v=(e,t,s)=>z(f(e),([n,,a])=>{if(!ve(a,t)){const l=at();if(h(e)!=T(e))lt(l,t);else{let e=t;for(;!N(e)&&!ve(l,e);)lt(l,e),e=Ue(n,e)}if(s)return l;Ge(a,t,l)}return Ue(a,t)}),R=(e,t)=>z(f(e),([,,e])=>Ge(e,t)),T=e=>Ue(s,e),L={setRelationshipDefinition:(e,t,o,i)=>(Ge(s,e,o),b(e,t,(t,s)=>{const o=at(),i=at(),d=at(),[c,u]=f(e);pe(s,([t,s],n)=>{N(t)||(lt(i,t),z(Ue(u,t),e=>{Se(e,n),Re(e)&&Ge(u,t)})),N(s)||(lt(i,s),ve(u,s)||Ge(u,s,at()),lt(Ue(u,s),n)),lt(o,n),Ge(c,n,s),qe(Ue(l,e),t=>{ve(v(e,t),n)&&lt(d,t)})}),t(),pe(o,t=>r(n,[e,t])),pe(i,t=>r(a,[e,t])),pe(d,t=>{R(e,t),r(l,[e,t])})},rt(i)),L),delRelationshipDefinition:e=>(Ge(s,e),C(e),L),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u(s=>t(s,t=>e.forEachRow(h(s),t))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>Ue(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(Ue(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>N(f(e))?[t]:Te(v(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>o(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>o(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),o(s,l,[e,t])),delListener:e=>(R(...i(e)??[]),L),destroy:I,getListenerStats:()=>({remoteRowId:we(n),localRowIds:we(a),linkedRowIds:we(l)})};return Ee(L)});export{St as addOrRemoveHash,gt as createCheckpoints,zt as createIndexes,Is as createMergeableStore,Ts as createMetrics,Ss as createMiddleware,Vs as createQueries,ms as createRelationships,bs as createStore,jt as defaultSorter,kt as getCellHash,Mt as getCellInRowHash,pt as getHash,Ot as getHlcFunctions,Dt as getRowHash,Et as getRowInTableHash,Wt as getTableHash,_t as getTableInTablesHash,Ht as getTablesHash,It as getUniqueId,yt as getValueHash,mt as getValueInValuesHash,Vt as getValuesHash};
Binary file
package/omni/index.js CHANGED
@@ -231,7 +231,7 @@ const objIsEqual = (
231
231
  isObject(value1)
232
232
  ? /* istanbul ignore next */
233
233
  isObject(obj2[index])
234
- ? objIsEqual(obj2[index], value1)
234
+ ? objIsEqual(obj2[index], value1, isEqual)
235
235
  : false
236
236
  : isEqual(value1, obj2[index]),
237
237
  )
@@ -8003,8 +8003,12 @@ const DEFAULTS = [
8003
8003
  false,
8004
8004
  0,
8005
8005
  ];
8006
+ const cellOrValueEqual = (thing1, thing2) =>
8007
+ thing1 === thing2 ||
8008
+ ((isObject(thing1) || isArray(thing1)) &&
8009
+ jsonString(thing1) === jsonString(thing2));
8006
8010
  const IS_EQUALS = [
8007
- objIsEqual,
8011
+ (obj1, obj2) => objIsEqual(obj1, obj2, cellOrValueEqual),
8008
8012
  arrayIsEqual,
8009
8013
  (
8010
8014
  [backwardIds1, currentId1, forwardIds1],
@@ -8016,10 +8020,7 @@ const IS_EQUALS = [
8016
8020
  (paramValues1, paramValues2) =>
8017
8021
  objIsEqual(paramValues1, paramValues2, arrayOrValueEqual),
8018
8022
  arrayOrValueEqual,
8019
- (thing1, thing2) =>
8020
- thing1 === thing2 ||
8021
- ((isObject(thing1) || isArray(thing1)) &&
8022
- jsonString(thing1) === jsonString(thing2)),
8023
+ cellOrValueEqual,
8023
8024
  ];
8024
8025
  const isEqual = (thing1, thing2) => thing1 === thing2;
8025
8026
  const useCreate = (store, create, createDeps = EMPTY_ARRAY) => {
@@ -11552,7 +11553,7 @@ const TablesView = ({store, storeId, s}) => {
11552
11553
  s,
11553
11554
  children: [
11554
11555
  arrayIsEmpty(tableIds)
11555
- ? /* @__PURE__ */ jsx('caption', {children: 'No tables.'})
11556
+ ? /* @__PURE__ */ jsx('p', {children: 'No tables.'})
11556
11557
  : sortedIdsMap(tableIds, (tableId) =>
11557
11558
  /* @__PURE__ */ jsx(
11558
11559
  TableView,
@@ -11649,7 +11650,7 @@ const ValuesView = ({store, storeId, s}) => {
11649
11650
  s,
11650
11651
  children: [
11651
11652
  arrayIsEmpty(useValueIds(store))
11652
- ? /* @__PURE__ */ jsx('caption', {children: 'No values.'})
11653
+ ? /* @__PURE__ */ jsx('p', {children: 'No values.'})
11653
11654
  : /* @__PURE__ */ jsx(ValuesInHtmlTable, {
11654
11655
  store,
11655
11656
  editable,
@@ -11926,10 +11927,10 @@ const MAX_WIDTH = 'max-' + WIDTH;
11926
11927
  const MIN_WIDTH = 'min-' + WIDTH;
11927
11928
  const HEIGHT = 'height';
11928
11929
  const BORDER = 'border';
11929
- const BORDER_RADIUS = BORDER + '-radius';
11930
+ const RADIUS = 'radius';
11931
+ const BORDER_RADIUS = BORDER + '-' + RADIUS;
11930
11932
  const PADDING = 'padding';
11931
11933
  const MARGIN = 'margin';
11932
- const MARGIN_RIGHT = MARGIN + '-right';
11933
11934
  const TOP = 'top';
11934
11935
  const BOTTOM = 'bottom';
11935
11936
  const LEFT = 'left';
@@ -11944,6 +11945,11 @@ const CURSOR = 'cursor';
11944
11945
  const VERTICAL_ALIGN = 'vertical-align';
11945
11946
  const TEXT_ALIGN = 'text-align';
11946
11947
  const JUSTIFY_CONTENT = 'justify-content';
11948
+ const WHITE_SPACE = 'white-space';
11949
+ const TEXT_OVERFLOW = 'text-overflow';
11950
+ const ALIGN_ITEMS = 'align-items';
11951
+ const BACKDROP_FILTER = 'backdrop-filter';
11952
+ const MARGIN_RIGHT = MARGIN + '-' + RIGHT;
11947
11953
  const FIXED = 'fixed';
11948
11954
  const REVERT = 'revert';
11949
11955
  const UNSET = 'unset';
@@ -12073,8 +12079,8 @@ const APP_STYLESHEET = arrayJoin(
12073
12079
  [WIDTH]: 'calc(100% - .5rem)',
12074
12080
  [POSITION]: 'absolute',
12075
12081
  [BORDER + '-' + BOTTOM]: cssVar(BORDER),
12076
- 'align-items': 'center',
12077
- 'backdrop-filter': 'blur(4px)',
12082
+ [ALIGN_ITEMS]: 'center',
12083
+ [BACKDROP_FILTER]: 'blur(4px)',
12078
12084
  },
12079
12085
  'header>img:nth-of-type(1)': {
12080
12086
  [HEIGHT]: rem(1),
@@ -12092,8 +12098,8 @@ const APP_STYLESHEET = arrayJoin(
12092
12098
  [OVERFLOW]: HIDDEN,
12093
12099
  [FLEX]: 1,
12094
12100
  'font-weight': 800,
12095
- 'white-space': NOWRAP,
12096
- 'text-overflow': 'ellipsis',
12101
+ [WHITE_SPACE]: NOWRAP,
12102
+ [TEXT_OVERFLOW]: 'ellipsis',
12097
12103
  },
12098
12104
  // Body
12099
12105
  article: {[OVERFLOW]: AUTO, [FLEX]: 1, [PADDING + '-' + TOP]: rem(2)},
@@ -12111,7 +12117,8 @@ const APP_STYLESHEET = arrayJoin(
12111
12117
  [BORDER_RADIUS]: rem(0.25),
12112
12118
  'user-select': NONE,
12113
12119
  [JUSTIFY_CONTENT]: 'space-between',
12114
- 'align-items': 'center',
12120
+ [ALIGN_ITEMS]: 'center',
12121
+ [BACKDROP_FILTER]: 'blur(4px)',
12115
12122
  },
12116
12123
  'summary>span::before': {
12117
12124
  [DISPLAY]: 'inline-block',
@@ -12122,8 +12129,8 @@ const APP_STYLESHEET = arrayJoin(
12122
12129
  ...RIGHT_SVG,
12123
12130
  },
12124
12131
  'details[open]>summary': {
12125
- 'border-bottom-left-radius': 0,
12126
- 'border-bottom-right-radius': 0,
12132
+ [BORDER + '-' + BOTTOM + '-' + LEFT + '-' + RADIUS]: 0,
12133
+ [BORDER + '-' + BOTTOM + '-' + RIGHT + '-' + RADIUS]: 0,
12127
12134
  [MARGIN + '-' + BOTTOM]: 0,
12128
12135
  },
12129
12136
  'details[open]>summary>span::before': DOWN_SVG,
@@ -12133,11 +12140,12 @@ const APP_STYLESHEET = arrayJoin(
12133
12140
  [MARGIN + '-' + LEFT]: rem(0.25),
12134
12141
  },
12135
12142
  'details>div': {[OVERFLOW]: AUTO},
12136
- caption: {
12143
+ [`caption,#${UNIQUE_ID} p`]: {
12137
12144
  [COLOR]: cssVar('fg2'),
12138
12145
  [PADDING]: rem(0.25, 0.5),
12139
12146
  [TEXT_ALIGN]: LEFT,
12140
- 'white-space': NOWRAP,
12147
+ [MARGIN]: 0,
12148
+ [WHITE_SPACE]: NOWRAP,
12141
12149
  },
12142
12150
  'caption button': {
12143
12151
  [WIDTH]: rem(1.5),
@@ -12167,8 +12175,8 @@ const APP_STYLESHEET = arrayJoin(
12167
12175
  [PADDING]: rem(0.25, 0.5),
12168
12176
  [MAX_WIDTH]: rem(20),
12169
12177
  [BORDER]: cssVar(BORDER),
12170
- 'text-overflow': 'ellipsis',
12171
- 'white-space': NOWRAP,
12178
+ [TEXT_OVERFLOW]: 'ellipsis',
12179
+ [WHITE_SPACE]: NOWRAP,
12172
12180
  'border-width': px(1, 0, 0),
12173
12181
  [TEXT_ALIGN]: LEFT,
12174
12182
  },
@@ -231,7 +231,7 @@ const objIsEqual = (
231
231
  isObject(value1)
232
232
  ? /* istanbul ignore next */
233
233
  isObject(obj2[index])
234
- ? objIsEqual(obj2[index], value1)
234
+ ? objIsEqual(obj2[index], value1, isEqual)
235
235
  : false
236
236
  : isEqual(value1, obj2[index]),
237
237
  )
@@ -8003,8 +8003,12 @@ const DEFAULTS = [
8003
8003
  false,
8004
8004
  0,
8005
8005
  ];
8006
+ const cellOrValueEqual = (thing1, thing2) =>
8007
+ thing1 === thing2 ||
8008
+ ((isObject(thing1) || isArray(thing1)) &&
8009
+ jsonString(thing1) === jsonString(thing2));
8006
8010
  const IS_EQUALS = [
8007
- objIsEqual,
8011
+ (obj1, obj2) => objIsEqual(obj1, obj2, cellOrValueEqual),
8008
8012
  arrayIsEqual,
8009
8013
  (
8010
8014
  [backwardIds1, currentId1, forwardIds1],
@@ -8016,10 +8020,7 @@ const IS_EQUALS = [
8016
8020
  (paramValues1, paramValues2) =>
8017
8021
  objIsEqual(paramValues1, paramValues2, arrayOrValueEqual),
8018
8022
  arrayOrValueEqual,
8019
- (thing1, thing2) =>
8020
- thing1 === thing2 ||
8021
- ((isObject(thing1) || isArray(thing1)) &&
8022
- jsonString(thing1) === jsonString(thing2)),
8023
+ cellOrValueEqual,
8023
8024
  ];
8024
8025
  const isEqual = (thing1, thing2) => thing1 === thing2;
8025
8026
  const useCreate = (store, create, createDeps = EMPTY_ARRAY) => {
@@ -11552,7 +11553,7 @@ const TablesView = ({store, storeId, s}) => {
11552
11553
  s,
11553
11554
  children: [
11554
11555
  arrayIsEmpty(tableIds)
11555
- ? /* @__PURE__ */ jsx('caption', {children: 'No tables.'})
11556
+ ? /* @__PURE__ */ jsx('p', {children: 'No tables.'})
11556
11557
  : sortedIdsMap(tableIds, (tableId) =>
11557
11558
  /* @__PURE__ */ jsx(
11558
11559
  TableView,
@@ -11649,7 +11650,7 @@ const ValuesView = ({store, storeId, s}) => {
11649
11650
  s,
11650
11651
  children: [
11651
11652
  arrayIsEmpty(useValueIds(store))
11652
- ? /* @__PURE__ */ jsx('caption', {children: 'No values.'})
11653
+ ? /* @__PURE__ */ jsx('p', {children: 'No values.'})
11653
11654
  : /* @__PURE__ */ jsx(ValuesInHtmlTable, {
11654
11655
  store,
11655
11656
  editable,
@@ -11926,10 +11927,10 @@ const MAX_WIDTH = 'max-' + WIDTH;
11926
11927
  const MIN_WIDTH = 'min-' + WIDTH;
11927
11928
  const HEIGHT = 'height';
11928
11929
  const BORDER = 'border';
11929
- const BORDER_RADIUS = BORDER + '-radius';
11930
+ const RADIUS = 'radius';
11931
+ const BORDER_RADIUS = BORDER + '-' + RADIUS;
11930
11932
  const PADDING = 'padding';
11931
11933
  const MARGIN = 'margin';
11932
- const MARGIN_RIGHT = MARGIN + '-right';
11933
11934
  const TOP = 'top';
11934
11935
  const BOTTOM = 'bottom';
11935
11936
  const LEFT = 'left';
@@ -11944,6 +11945,11 @@ const CURSOR = 'cursor';
11944
11945
  const VERTICAL_ALIGN = 'vertical-align';
11945
11946
  const TEXT_ALIGN = 'text-align';
11946
11947
  const JUSTIFY_CONTENT = 'justify-content';
11948
+ const WHITE_SPACE = 'white-space';
11949
+ const TEXT_OVERFLOW = 'text-overflow';
11950
+ const ALIGN_ITEMS = 'align-items';
11951
+ const BACKDROP_FILTER = 'backdrop-filter';
11952
+ const MARGIN_RIGHT = MARGIN + '-' + RIGHT;
11947
11953
  const FIXED = 'fixed';
11948
11954
  const REVERT = 'revert';
11949
11955
  const UNSET = 'unset';
@@ -12073,8 +12079,8 @@ const APP_STYLESHEET = arrayJoin(
12073
12079
  [WIDTH]: 'calc(100% - .5rem)',
12074
12080
  [POSITION]: 'absolute',
12075
12081
  [BORDER + '-' + BOTTOM]: cssVar(BORDER),
12076
- 'align-items': 'center',
12077
- 'backdrop-filter': 'blur(4px)',
12082
+ [ALIGN_ITEMS]: 'center',
12083
+ [BACKDROP_FILTER]: 'blur(4px)',
12078
12084
  },
12079
12085
  'header>img:nth-of-type(1)': {
12080
12086
  [HEIGHT]: rem(1),
@@ -12092,8 +12098,8 @@ const APP_STYLESHEET = arrayJoin(
12092
12098
  [OVERFLOW]: HIDDEN,
12093
12099
  [FLEX]: 1,
12094
12100
  'font-weight': 800,
12095
- 'white-space': NOWRAP,
12096
- 'text-overflow': 'ellipsis',
12101
+ [WHITE_SPACE]: NOWRAP,
12102
+ [TEXT_OVERFLOW]: 'ellipsis',
12097
12103
  },
12098
12104
  // Body
12099
12105
  article: {[OVERFLOW]: AUTO, [FLEX]: 1, [PADDING + '-' + TOP]: rem(2)},
@@ -12111,7 +12117,8 @@ const APP_STYLESHEET = arrayJoin(
12111
12117
  [BORDER_RADIUS]: rem(0.25),
12112
12118
  'user-select': NONE,
12113
12119
  [JUSTIFY_CONTENT]: 'space-between',
12114
- 'align-items': 'center',
12120
+ [ALIGN_ITEMS]: 'center',
12121
+ [BACKDROP_FILTER]: 'blur(4px)',
12115
12122
  },
12116
12123
  'summary>span::before': {
12117
12124
  [DISPLAY]: 'inline-block',
@@ -12122,8 +12129,8 @@ const APP_STYLESHEET = arrayJoin(
12122
12129
  ...RIGHT_SVG,
12123
12130
  },
12124
12131
  'details[open]>summary': {
12125
- 'border-bottom-left-radius': 0,
12126
- 'border-bottom-right-radius': 0,
12132
+ [BORDER + '-' + BOTTOM + '-' + LEFT + '-' + RADIUS]: 0,
12133
+ [BORDER + '-' + BOTTOM + '-' + RIGHT + '-' + RADIUS]: 0,
12127
12134
  [MARGIN + '-' + BOTTOM]: 0,
12128
12135
  },
12129
12136
  'details[open]>summary>span::before': DOWN_SVG,
@@ -12133,11 +12140,12 @@ const APP_STYLESHEET = arrayJoin(
12133
12140
  [MARGIN + '-' + LEFT]: rem(0.25),
12134
12141
  },
12135
12142
  'details>div': {[OVERFLOW]: AUTO},
12136
- caption: {
12143
+ [`caption,#${UNIQUE_ID} p`]: {
12137
12144
  [COLOR]: cssVar('fg2'),
12138
12145
  [PADDING]: rem(0.25, 0.5),
12139
12146
  [TEXT_ALIGN]: LEFT,
12140
- 'white-space': NOWRAP,
12147
+ [MARGIN]: 0,
12148
+ [WHITE_SPACE]: NOWRAP,
12141
12149
  },
12142
12150
  'caption button': {
12143
12151
  [WIDTH]: rem(1.5),
@@ -12167,8 +12175,8 @@ const APP_STYLESHEET = arrayJoin(
12167
12175
  [PADDING]: rem(0.25, 0.5),
12168
12176
  [MAX_WIDTH]: rem(20),
12169
12177
  [BORDER]: cssVar(BORDER),
12170
- 'text-overflow': 'ellipsis',
12171
- 'white-space': NOWRAP,
12178
+ [TEXT_OVERFLOW]: 'ellipsis',
12179
+ [WHITE_SPACE]: NOWRAP,
12172
12180
  'border-width': px(1, 0, 0),
12173
12181
  [TEXT_ALIGN]: LEFT,
12174
12182
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tinybase",
3
- "version": "8.0.1",
3
+ "version": "8.0.2",
4
4
  "author": "jamesgpearce",
5
5
  "repository": "github:tinyplex/tinybase",
6
6
  "license": "MIT",
package/queries/index.js CHANGED
@@ -107,7 +107,7 @@ const objIsEqual = (
107
107
  isObject(value1)
108
108
  ? /* istanbul ignore next */
109
109
  isObject(obj2[index])
110
- ? objIsEqual(obj2[index], value1)
110
+ ? objIsEqual(obj2[index], value1, isEqual)
111
111
  : false
112
112
  : isEqual(value1, obj2[index]),
113
113
  )
@@ -107,7 +107,7 @@ const objIsEqual = (
107
107
  isObject(value1)
108
108
  ? /* istanbul ignore next */
109
109
  isObject(obj2[index])
110
- ? objIsEqual(obj2[index], value1)
110
+ ? objIsEqual(obj2[index], value1, isEqual)
111
111
  : false
112
112
  : isEqual(value1, obj2[index]),
113
113
  )