tinybase 8.5.0 → 9.0.0-beta.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.
- package/@types/_internal/queries/with-schemas/index.d.ts +1 -2
- package/@types/_internal/ui/with-schemas/index.d.ts +8 -16
- package/@types/persisters/index.d.ts +32 -12
- package/@types/persisters/persister-durable-object-sql-storage/index.d.ts +9 -8
- package/@types/persisters/persister-durable-object-sql-storage/with-schemas/index.d.ts +10 -10
- package/@types/persisters/with-schemas/index.d.ts +56 -20
- package/@types/queries/index.d.ts +1 -7
- package/@types/queries/with-schemas/index.d.ts +5 -15
- package/@types/store/index.d.ts +1 -2
- package/@types/store/with-schemas/index.d.ts +19 -29
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +9 -3
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +10 -3
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +15 -2
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +17 -2
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +51 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +51 -0
- package/@types/ui-react/with-schemas/index.d.ts +3 -6
- package/@types/ui-react-dom/index.d.ts +10 -10
- package/@types/ui-react-dom/with-schemas/index.d.ts +16 -22
- package/@types/ui-react-dom-charts/index.d.ts +7 -7
- package/@types/ui-react-dom-charts/with-schemas/index.d.ts +10 -11
- package/@types/ui-react-inspector/index.d.ts +1 -1
- package/@types/ui-react-inspector/with-schemas/index.d.ts +1 -1
- package/@types/ui-solid/with-schemas/index.d.ts +4 -8
- package/@types/ui-solid-dom/index.d.ts +10 -10
- package/@types/ui-solid-dom/with-schemas/index.d.ts +16 -22
- package/@types/ui-solid-inspector/index.d.ts +1 -1
- package/@types/ui-solid-inspector/with-schemas/index.d.ts +1 -1
- package/@types/ui-svelte-dom/index.d.ts +10 -10
- package/@types/ui-svelte-dom/with-schemas/index.d.ts +16 -22
- package/@types/ui-svelte-inspector/index.d.ts +1 -1
- package/@types/ui-svelte-inspector/with-schemas/index.d.ts +1 -1
- package/index.js +21 -19
- package/indexes/index.js +6 -8
- package/indexes/with-schemas/index.js +6 -8
- package/metrics/index.js +6 -8
- package/metrics/with-schemas/index.js +6 -8
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/omni/index.js +1 -1
- package/min/omni/index.js.gz +0 -0
- package/min/omni/with-schemas/index.js +1 -1
- package/min/omni/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/index.js +1 -1
- package/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-libsql/index.js +1 -1
- package/min/persisters/persister-libsql/index.js.gz +0 -0
- package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-powersync/index.js +1 -1
- package/min/persisters/persister-powersync/index.js.gz +0 -0
- package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/index.js +1 -1
- package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/index.js +1 -1
- package/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/queries/index.js +1 -1
- package/min/queries/index.js.gz +0 -0
- package/min/queries/with-schemas/index.js +1 -1
- package/min/queries/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/omni/index.js +311 -141
- package/omni/with-schemas/index.js +311 -141
- package/package.json +7 -7
- package/persisters/index.js +129 -37
- package/persisters/persister-cr-sqlite-wasm/index.js +129 -37
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +129 -37
- package/persisters/persister-durable-object-sql-storage/index.js +271 -110
- package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +271 -110
- package/persisters/persister-electric-sql/index.js +129 -37
- package/persisters/persister-electric-sql/with-schemas/index.js +129 -37
- package/persisters/persister-expo-sqlite/index.js +129 -37
- package/persisters/persister-expo-sqlite/with-schemas/index.js +129 -37
- package/persisters/persister-libsql/index.js +129 -37
- package/persisters/persister-libsql/with-schemas/index.js +129 -37
- package/persisters/persister-pglite/index.js +130 -37
- package/persisters/persister-pglite/with-schemas/index.js +130 -37
- package/persisters/persister-postgres/index.js +130 -37
- package/persisters/persister-postgres/with-schemas/index.js +130 -37
- package/persisters/persister-powersync/index.js +182 -117
- package/persisters/persister-powersync/with-schemas/index.js +182 -117
- package/persisters/persister-react-native-sqlite/index.js +129 -37
- package/persisters/persister-react-native-sqlite/with-schemas/index.js +129 -37
- package/persisters/persister-sqlite-bun/index.js +129 -37
- package/persisters/persister-sqlite-bun/with-schemas/index.js +129 -37
- package/persisters/persister-sqlite-wasm/index.js +129 -37
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +129 -37
- package/persisters/persister-sqlite3/index.js +129 -37
- package/persisters/persister-sqlite3/with-schemas/index.js +129 -37
- package/persisters/with-schemas/index.js +129 -37
- package/queries/index.js +21 -19
- package/queries/with-schemas/index.js +21 -19
- package/readme.md +14 -14
- package/relationships/index.js +6 -8
- package/relationships/with-schemas/index.js +6 -8
- package/releases.md +57 -57
- package/synchronizers/synchronizer-ws-client/index.js +116 -42
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +116 -42
- package/synchronizers/synchronizer-ws-server/index.js +109 -28
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +109 -28
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +122 -38
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +122 -38
- package/ui-svelte/index.js +1 -1
- package/ui-svelte/with-schemas/index.js +1 -1
- package/ui-svelte-dom/index.js +2 -2
- package/ui-svelte-dom/with-schemas/index.js +2 -2
- package/ui-svelte-inspector/index.js +2 -2
- package/ui-svelte-inspector/with-schemas/index.js +2 -2
- package/with-schemas/index.js +21 -19
package/metrics/index.js
CHANGED
|
@@ -227,14 +227,12 @@ const getDefinableFunctions = (
|
|
|
227
227
|
const newRowValue = hasRow(tableId, rowId)
|
|
228
228
|
? validateRowValue(getRowValue(getCell, rowId))
|
|
229
229
|
: void 0;
|
|
230
|
-
if (
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
)
|
|
237
|
-
) {
|
|
230
|
+
if (!(
|
|
231
|
+
oldRowValue === newRowValue ||
|
|
232
|
+
(isArray(oldRowValue) &&
|
|
233
|
+
isArray(newRowValue) &&
|
|
234
|
+
arrayIsEqual(oldRowValue, newRowValue))
|
|
235
|
+
)) {
|
|
238
236
|
mapSet(changedRowValues, rowId, [oldRowValue, newRowValue]);
|
|
239
237
|
}
|
|
240
238
|
if (!isUndefined(getSortKey)) {
|
|
@@ -227,14 +227,12 @@ const getDefinableFunctions = (
|
|
|
227
227
|
const newRowValue = hasRow(tableId, rowId)
|
|
228
228
|
? validateRowValue(getRowValue(getCell, rowId))
|
|
229
229
|
: void 0;
|
|
230
|
-
if (
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
)
|
|
237
|
-
) {
|
|
230
|
+
if (!(
|
|
231
|
+
oldRowValue === newRowValue ||
|
|
232
|
+
(isArray(oldRowValue) &&
|
|
233
|
+
isArray(newRowValue) &&
|
|
234
|
+
arrayIsEqual(oldRowValue, newRowValue))
|
|
235
|
+
)) {
|
|
238
236
|
mapSet(changedRowValues, rowId, [oldRowValue, newRowValue]);
|
|
239
237
|
}
|
|
240
238
|
if (!isUndefined(getSortKey)) {
|
package/min/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),n=e(!0),l=e(0),a=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",R=C+b,v="Row",I=v+"Count",L=v+b,T="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=Math,_=e=>(t,s,n)=>e(t)?n?.():s(t),H=globalThis,J=W.max,x=W.min,P=W.floor,F=W.random,Q=isFinite,N=e=>null==e,O=e=>void 0===e,j=e=>null===e,z=e=>!0===e,A=_(N),B=_(O),U=e=>e==s||e==n,q=t=>e(t)==s,G=t=>e(t)==a,K=e=>Array.isArray(e),X=(e,t,s)=>e.slice(t,s),Y=e=>e.length,Z=()=>{},$=()=>{},ee=H.structuredClone,te=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},se=(e,t)=>e.includes(t),ne=(e,t)=>e.every(t),le=(e,t)=>Y(e)===Y(t)&&ne(e,(e,s)=>t[s]===e),ae=(e,t)=>ne(e,(s,n)=>0==n||t(e[n-1],s)<=0),oe=(e,t)=>e.sort(t),re=(e,t)=>e.forEach(t),ie=(e,t)=>e.map(t),de=e=>ue(e,(e,t)=>e+t,0),ce=e=>0==Y(e),ue=(e,t,s)=>e.reduce(t,s),ge=(e,...t)=>e.push(...t),he=e=>e.pop(),fe=e=>e.shift(),be=e=>t=>ue(Te(t),(t,s)=>t+e(s),0),Ce=e=>e?.size??0,we=be(Ce),Re=be(we),ve=be(Re),Ie=(e,t)=>e?.has(t)??!1,Le=e=>O(e)||0==Ce(e),Te=e=>[...e?.values()??[]],pe=e=>e.clear(),Se=(e,t)=>e?.forEach(t),Ve=(e,t)=>e?.delete(t),me=Object,ye=e=>me.getPrototypeOf(e),ke=me.isFrozen,Me=me.entries,De=e=>!N(e)&&A(ye(e),e=>e==me.prototype||N(ye(e)),()=>!0),Ee=me.keys,We=me.freeze,_e=(e=[])=>me.fromEntries(e),He=(e,t)=>t in e,Je=(e,t)=>(delete e[t],e),xe=(e,t)=>re(Me(e),([e,s])=>t(s,e)),Pe=(e,t)=>_e(((e,t)=>ie(Me(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),Fe=e=>Y(Ee(e)),Qe=e=>De(e)&&0==Fe(e),Ne=(e,t,s=(e,t)=>e===t)=>{const n=Me(e);return Y(n)===Fe(t)&&ne(n,([e,n])=>De(n)?!!De(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)=>N(e)||!De(e)||!n&&Qe(e)||ke(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)=>Se(e,(e,s)=>t(s,e)),Ge=(e,t,s)=>O(s)?(Ve(e,t),e):e?.set(t,s),Ke=(e,t,s,n)=>(Ie(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 l={};return Se(e,(e,a)=>{if(!s?.(e,a)){const s=t?t(e,a):e;n?.(s)||(l[a]=s)}}),l},Ze=(e,t,s)=>Ye(e,e=>Ye(e,t,s),Le,Qe),$e=(e,t,s)=>Ye(e,e=>Ze(e,t,s),Le,Qe),et=(e,t)=>{const s=Ae();return Se(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,l=0)=>B((s?Ke:Ue)(e,t[l],l>Y(t)-2?s:Ae),a=>{if(l>Y(t)-2)return n?.(a)&&Ge(e,t[l]),a;const o=nt(a,t,s,n,l+1);return Le(a)&&Ge(e,t[l]),o}),lt=e=>new Set(K(e)||O(e)?e:[e]),at=(e,t)=>e?.add(t),ot=(e,t,s,n,l)=>{const a=e.hasRow,o=Ae(),r=Ae(),i=Ae(),d=Ae(),c=Ae(),u=Ae(),g=t=>B(Ue(u,t),s=>{re(Te(s),t=>{e.delListener(t),Ve(s,t)}),Ge(u,t)}),h=(e,s)=>{Ge(o,e,s),Ie(r,e)||(Ge(r,e,t()),Ge(d,e,Ae()),Ge(c,e,Ae()),l(i))},f=e=>{Ge(o,e),Ge(r,e),Ge(d,e),Ge(c,e),g(e),l(i)};return[()=>e,()=>Be(o),e=>qe(r,e),e=>Ie(r,e),e=>Ue(o,e),e=>Ue(r,e),(e,t)=>Ge(r,e,t),h,(t,n,l,o,r)=>{h(t,n);const i=Ae(),f=Ae(),b=Ue(d,t),C=Ue(c,t),w=t=>{const l=s=>e.getCell(n,t,s),d=Ue(b,t),c=a(n,t)?s(o(l,t)):void 0;if(d===c||K(d)&&K(c)&&le(d,c)||Ge(i,t,[d,c]),!O(r)){const e=Ue(C,t),s=a(n,t)?r(l,t):void 0;e!=s&&Ge(f,t,s)}},R=e=>{l(()=>{Se(i,([,e],t)=>Ge(b,t,e)),Se(f,(e,t)=>Ge(C,t,e))},i,f,b,C,e),pe(i),pe(f)};qe(b,w),e.hasTable(n)&&re(e.getRowIds(n),e=>{Ie(b,e)||w(e)}),R(!0),g(t),((e,...t)=>{const s=Ke(u,e,lt);re(t,e=>at(s,e))})(t,e.addRowListener(n,null,(e,t,s)=>w(s)),e.addTableListener(n,()=>R()))},f,e=>n(e,i),()=>qe(u,f)]},rt=(e,s)=>q(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 l=s.get(n);return t?.(l),l}},dt=/^\d+$/,ct=()=>{const e=[];let s=0;return[n=>(n?fe(e):null)??t+s++,t=>{dt.test(t)&&Y(e)<1e3&&ge(e,t)}]},ut=e=>{let s;const[n,l]=ct(),a=Ae();return[(l,o,r,i=[],d=()=>[])=>{s??=e();const c=n(1);return Ge(a,c,[l,o,r,i,d]),at(nt(o,r??[t],lt),c),c},(e,n,...l)=>re(((e,s=[t])=>{const n=[],l=(e,t)=>t==Y(s)?ge(n,e):j(s[t])?Se(e,e=>l(e,t+1)):re([s[t],null],s=>l(Ue(e,s),t+1));return l(e,0),n})(e,n),e=>Se(e,e=>Ue(a,e)[0](s,...n??[],...l))),e=>B(Ue(a,e),([,s,n])=>(nt(s,n??[t],void 0,t=>(Ve(t,e),Le(t)?1:0)),Ge(a,e),l(e),n)),e=>B(Ue(a,e),([e,,t=[],n,l])=>{const a=(...o)=>{const r=Y(o);r==Y(t)?e(s,...o,...l(o)):j(t[r])?re(n[r]?.(...o)??[],e=>a(...o,e)):a(...o,t[r])};a()})]},gt=it(e=>{let s,n,l,a=100,o=Ae(),r=Ae(),i=1;const d=Ae(),c=Ae(),[u,g,h]=ut(()=>_),f=Ae(),b=Ae(),C=[],w=[],R=(t,s)=>{i=0,e.transaction(()=>{const[n,l]=Ue(f,s);Se(n,(s,n)=>Se(s,(s,l)=>Se(s,(s,a)=>e._[5](n,l,a,s[t],!0)))),Se(l,(s,n)=>e._[6](n,s[t],!0))}),i=1},v=e=>{Ge(f,e),Ge(b,e),g(c,[e])},I=(e,t)=>re(((e,t)=>e.splice(0,t))(e,t??Y(e)),v),L=()=>I(C,Y(C)-a),T=()=>B(s,()=>{ge(C,s),L(),I(w),s=void 0,l=1}),p=()=>{s=he(C),l=1};let S,V;const m=(e=t)=>(O(s)&&(s=t+n++,Ge(f,s,[o,r]),E(s,e),o=Ae(),r=Ae(),l=1),s),y=()=>{ce(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),R(0,s),s=he(C),l=1)},k=()=>{ce(w)||(ge(C,s),s=fe(w),R(1,s),l=1)},M=()=>{l&&(g(d),l=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=>Ie(f,e),_={setSize:e=>(a=e,L(),_),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=se(C,e)?y:se(w,e)?k:void 0;for(;!O(t)&&e!=s;)t();return M(),_},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),_),clear:()=>(I(C),I(w),O(s)||v(s),s=void 0,n=0,D(),_),clearForward:()=>(ce(w)||(I(w),g(d)),_),destroy:()=>{e.delListener(S),e.delListener(V)},getListenerStats:()=>({checkpointIds:we(d),checkpoint:we(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,s,n,l,a)=>{if(i){T();const e=Ke(o,t,Ae),r=Ke(e,s,Ae),i=Ke(r,n,()=>[a,void 0]);i[1]=l,i[0]===l&&Le(Ge(r,n))&&Le(Ge(e,s))&&Le(Ge(o,t))&&p(),M()}}),V=e.addValueListener(null,(e,t,s,n)=>{if(i){T();const e=Ke(r,t,()=>[n,void 0]);e[1]=s,e[0]===s&&Le(Ge(r,t))&&p(),M()}})}};return We(_.clear())},e=>e._registerListeners()),ht=E("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),ft=Ae(ie(ht,(e,t)=>[e,t])),bt=e=>ht[63&e],Ct=(e,t)=>Ue(ft,e[t])??0,wt=H.crypto?e=>H.crypto.getRandomValues(e):e=>ie(e,()=>P(256*F())),Rt=(e=16)=>ue(wt(new Uint8Array(e)),(e,t)=>e+bt(t),t),vt=JSON.stringify,It=JSON.parse,Lt=e=>vt(e,(e,t)=>t instanceof Map?me.fromEntries([...t]):t),Tt=new H.TextEncoder,pt=e=>{let t=2166136261;return re(Tt.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=>ue(Me(e),(e,[t,s])=>St(e,mt(t,s)^mt(t,0)),0),mt=(e,t)=>pt(e+":"+t),yt=(e,t)=>pt(Lt(e??null)+":"+t),kt=yt,Mt=mt,Dt=Vt,Et=mt,Wt=e=>ue(Me(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,s=Date.now)=>{let n=0,l=-1;const a=B(e,Nt,()=>Rt(5)),o=e=>{const a=n,[o,r]=O(e)||e==t?[0,0]:i(e);n=J(a,o,s()),l=n==a?n==o?J(l,r):l:n==o?r:-1},r=(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)+(O(s)?a:Nt(s)),i=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[()=>(o(),r(n,++l)),o,r,i,()=>n,()=>l,()=>a]},jt=(e,t)=>(e??0)<(t??0)?-1:1,zt=it(e=>{const s=Ae(),n=Ae(),[l,a,o]=ut(()=>v),[r,i,d,c,u,g,h,,f,b,C,w]=ot(e,Ae,e=>O(e)?t:K(e)?ie(e,k):k(e),l,a),R=(t,s,n)=>{const l=u(t);Se(n,(t,n)=>s(n,s=>Se(t,t=>s(t,s=>e.forEachCell(l,t,s)))))},v={setIndexDefinition:(e,t,l,o,r,i=jt)=>{const d=O(r)?void 0:([e],[t])=>r(e,t);return f(e,t,(t,l,r,c,u,f)=>{let b=0;const C=lt(),w=lt(),R=g(e);if(Se(l,([e,t],s)=>{const n=lt(e),l=lt(t);Se(n,e=>Ve(l,e)?Ve(n,e):0),Se(n,e=>{at(C,e),B(Ue(R,e),t=>{Ve(t,s),Le(t)&&(Ge(R,e),b=1)})}),Se(l,e=>{at(C,e),Ie(R,e)||(Ge(R,e,lt()),b=1),at(Ue(R,e),s),O(o)||at(w,e)})}),t(),Le(u)||(f?qe(R,e=>at(w,e)):qe(r,e=>B(Ue(c,e),e=>re(K(e)?e:[e],e=>at(w,e)))),Se(w,e=>{const t=(t,s)=>i(Ue(u,t),Ue(u,s),e),s=[...Ue(R,e)];ae(s,t)||(Ge(R,e,lt(oe(s,t))),at(C,e))})),(b||f)&&!O(d)){const t=[...R];ae(t,d)||(h(e,Ae(oe(t,d))),b=1)}b&&a(s,[e]),Se(C,t=>a(n,[e,t]))},rt(l),B(o,rt)),v},delIndexDefinition:e=>(b(e),v),getStore:r,getIndexIds:i,forEachIndex:e=>d((t,s)=>e(t,e=>R(t,e,s))),forEachSlice:(e,t)=>R(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>Ie(g(e),t),getTableId:u,getSliceIds:e=>Be(g(e)),getSliceRowIds:(e,t)=>Te(Ue(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>l(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>l(s,n,[e,t]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({sliceIds:we(s),sliceRowIds:Re(n)})};return We(v)}),At=t=>{if(j(t))return"null";if(K(t))return r;if(De(t))return o;const s=e(t);return U(s)||s==l&&Q(t)?s:void 0},Bt=e=>O(e)||!O(At(e)),Ut=e=>e==o||e==r,qt=e=>De(e)||K(e)?"�"+vt(e):e,Gt=e=>q(e)&&"�"==e[0],Kt=(e,t,s)=>!s&&Gt(e)?It(X(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,s)=>((e??t)>(s??t)?e:s)??t,ss=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},ns=(e=t)=>Yt(_e(),e),ls=(e=t)=>[Ae(),e,0],as=([e,t,s],n)=>[Ye(e,n),t,s],os=([e,t],s=Xt)=>Yt(Ye(e,s),t),rs=(t,s)=>{return K(t)&&3==Y(t)&&q(t[1])&&(n=t[2],e(n)==l)&&Q(t[2])&&s(t[0]);var n},is=e=>[e,e],ds=(e,t=we)=>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,a=0,o=[],r=[],g=0;const b=Ae(),T=Ae(),M=Ae(),D=Ae(),E=Ae(),W=Ae(),_=Ae(),H=Ae(),J=Ae(),x=Ae(),P=Ae(),F=Ae(),Q=Ae(),N=Ae(),z=lt(),A=Ae(),q=Ae(),Y=Ae(),Z=Ae(),$=cs(),ne=cs(),ae=cs(),de=cs(),ce=cs(),ue=cs(),he=cs(),fe=cs(),be=cs(),Te=cs(),me=cs(),ye=cs(),ke=cs(),Me=cs(),Ee=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)=>B(t(),t=>e===t||n(e,t)?s(t):bt(()=>s(t))),wt=e=>{if(!je(e,(e,t)=>se([i,d,c],t)))return!1;const t=e[i];if(!U(t)&&t!=l&&!Ut(t))return!1;const s=e[d];return!(j(s)&&!e[c]||(j(s)||(At(s)!=t?Je(e,d):e[d]=qt(s)),0))},Rt=K,vt=(t,s)=>(!e||Ie(P,s)||ls(s))&&je(t,(e,t)=>Tt(s,t,e),()=>ls(s)),Tt=(e,t,s,n)=>je(n?s:mt(s,e,t),(n,l)=>B(pt(e,t,l,n),e=>(s[l]=e,!0),()=>!1),()=>ls(e,t)),pt=(t,s,n,l)=>e?B(Ue(Ue(P,t),n),e=>j(l)?e[c]?l:ls(t,s,n,l,e[d]):At(l)===e[i]?qt(l):Ut(e[i])&&Gt(l)?l:ls(t,s,n,l,e[d]),()=>ls(t,s,n,l)):O(At(l))?ls(t,s,n,l):qt(l),St=(e,t)=>je(t?e:yt(e),(t,s)=>B(Vt(s,t),t=>(e[s]=t,!0),()=>!1),()=>as()),Vt=(e,s)=>t?B(Ue(Q,e),t=>j(s)?t[c]?s:as(e,s,t[d]):At(s)===t[i]?qt(s):Ut(t[i])&&Gt(s)?s:as(e,s,t[d]),()=>as(e,s)):O(At(s))?as(e,s):qt(s),mt=(e,t,s)=>(B(Ue(F,t),([n,l])=>{Se(n,(t,s)=>{He(e,s)||(e[s]=t)}),Se(l,n=>{He(e,n)||ls(t,s,n)})}),e),yt=e=>(t&&(Se(N,(t,s)=>{He(e,s)||(e[s]=t)}),Se(z,t=>{He(e,t)||as(t)})),e),kt=e=>Xe(P,e,(e,t,s)=>{const n=Ae(),l=lt();Xe(Ke(P,t,Ae),s,(e,t,s)=>{Ge(e,t,s),B(s[d],e=>Ge(n,t,e),()=>at(l,t))}),Ge(F,t,[n,l])},(e,t)=>{Ge(P,t),Ge(F,t)}),Mt=e=>Xe(Q,e,(e,t,s)=>{Ge(Q,t,s),B(s[d],e=>Ge(N,t,e),()=>at(z,t))},(e,t)=>{Ge(Q,t),Ge(N,t),Ve(z,t)}),Dt=e=>Qe(e)?Ks():js(e),Et=(e,t,s,n,l,a)=>O(n)?Zs(e,t,s,!0,l):zs(e,t,s,n,l,a),Wt=e=>Qe(e)?$s():As(e),_t=(e,t,s)=>O(t)?en(e,s):Bs(e,t,s),Ht=(e,t)=>Ct(e,()=>t?e:B(o[1],t=>bt(()=>t(ee(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:B(o[2],s=>bt(()=>s(e,ee(t))),()=>t),t=>Xe(Ke(Y,e,()=>(Zt(e,1),Ge(A,e,ct()),Ge(q,e,Ae()),Ae())),t,(t,s,n)=>xt(e,t,s,n),(t,s)=>Bt(e,t,s)),Ne),xt=(e,t,s,n,l)=>Ct(n,()=>l?n:B(o[3],t=>bt(()=>t(e,s,ee(n))),()=>n),n=>Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,l)=>Pt(e,s,t,n,l),(n,a)=>Xt(e,t,s,n,a,l)),Ne),Pt=(e,t,s,n,l,a)=>Ct(l,()=>B(a?void 0:o[4],s=>bt(()=>s(e,t,n,l)),()=>l),l=>{Ie(s,n)||es(e,t,n,1);const a=Ue(s,n);l!==a&&(ts(e,t,n,a,l),Ge(s,n,l))}),Ft=(e,t,s,n,l,a)=>B(Ue(t,s),t=>Pt(e,s,t,n,l,a),()=>{const o=Ae();Ge(t,s,o),$t(e,s,1),Pe(mt({[n]:l},e,s),(t,n)=>Pt(e,s,o,n,t,a))}),Qt=(e,t)=>Ct(e,()=>t?e:B(o[5],t=>bt(()=>t(ee(e))),()=>e),e=>Xe(Z,e,(e,t,s)=>Nt(t,s),(e,t)=>Yt(t)),Ne),Nt=(e,t,s)=>Ct(t,()=>B(s?void 0:o[6],s=>bt(()=>s(e,t)),()=>t),t=>{Ie(Z,e)||ss(e,1);const s=Ue(Z,e);t!==s&&(ns(e,s,t),Ge(Z,e,t))}),Ot=e=>Ke(Y,e,()=>(Zt(e,1),Ge(A,e,ct()),Ge(q,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(A,e);n(s),xt(e,t,s,{},!0)}},Xt=(e,t,s,n,l,a,r)=>{const i=Ue(Ue(F,e)?.[0],l);if(!O(i)&&!a)return Pt(e,s,n,l,i);if(r||(bt(()=>o[10]?.(e,s,l))??1)){const a=t=>{ts(e,s,t,Ue(n,t)),es(e,s,t,-1),Ge(n,t)};O(i)?a(l):qe(n,a),Le(n)&&($t(e,s,-1),Le(Ge(t,s))&&(Zt(e,-1),Ge(Y,e),Ge(A,e),Ge(q,e)))}},Yt=(e,t)=>{const s=Ue(N,e);if(!O(s))return Nt(e,s);(t||(bt(()=>o[12]?.(e))??1))&&(ns(e,Ue(Z,e)),ss(e,-1),Ge(Z,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 l=Ue(q,e),a=Ue(l,s)??0;(0==a&&1==n||1==a&&-1==n)&&hs(Ke(T,e,Ae),s,n),Ge(l,s,a!=-n?a+n:void 0),hs(Ke(Ke(E,e,Ae),t,Ae),s,n)},ts=(e,t,s,n,l)=>{Ke(Ke(Ke(W,e,Ae),t,Ae),s,()=>[n,0])[1]=l,r[3]?.(e,t,s,l,g)},ss=(e,t)=>hs(_,e,t),ns=(e,t,s)=>{Ke(H,e,()=>[t,0])[1]=s,r[4]?.(e,s,g)},ls=(e,t,s,n,l)=>(ge(Ke(Ke(Ke(J,e,Ae),t,Ae),s,()=>[]),n),l),as=(e,t,s)=>(ge(Ke(x,e,()=>[]),t),s),os=(e,t,s)=>B(Ue(Ue(Ue(W,e),t),s),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Es(e,t,s))]),rs=e=>B(Ue(H,e),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Hs(e))]),Cs=e=>Le(J)||Le(_e[e])?0:Se(e?st(J):J,(t,s)=>Se(t,(t,n)=>Se(t,(t,l)=>gt(_e[e],[s,n,l],t)))),ws=e=>Le(x)||Le(xe[e])?0:Se(e?et(x):x,(t,s)=>gt(xe[e],[s],t)),Rs=(e,t,s,n)=>{if(!Le(e))return gt(t,n,()=>Ye(e)),qe(e,(e,t)=>gt(s,[...n??[],e],1==t)),1},vs=e=>{const t=!Le($[e]),n=!Le(Te[e]),l=!(Le(ke[e])&&Le(Me[e])&&Le(be[e])&&Le(me[e])&&Le(ue[e])&&Le(he[e])&&Le(fe[e])&&!n&&Le(ae[e])&&Le(de[e])),a=!(Le(Ee[e])&&Le(ye[e])&&Le(ce[e])&&Le(ne[e]));if(t||l||a){const r=e?[et(b),tt(T),et(M),tt(D),st(E),(o=W,et(o,e=>et(e,e=>et(e,us))))]:[b,T,M,D,E,W];if(t){const t=Js();t!=s&>($[e],void 0,t)}if(l){Rs(r[0],ae[e],de[e]),Se(r[1],(t,s)=>Rs(t,ue[e],he[e],[s])),Se(r[2],(t,s)=>{0!=t&>(fe[e],[s],ys(s))});const t=lt();Se(r[3],(s,l)=>{Rs(s,be[e],me[e],[l])&&n&&(gt(Te[e],[l,null]),at(t,l))}),n&&Se(r[5],(s,n)=>{if(!Ie(t,n)){const t=lt();Se(s,e=>Se(e,([s,n],l)=>n!==s?at(t,l):Ve(e,l))),Se(t,t=>gt(Te[e],[n,t]))}}),Se(r[4],(t,s)=>Se(t,(t,n)=>Rs(t,ke[e],Me[e],[s,n])))}if(a){let t;Se(r[5],(s,n)=>{let l;Se(s,(s,a)=>{let o;Se(s,([s,r],i)=>{r!==s&&(gt(Ee[e],[n,a,i],Kt(r),Kt(s),os),t=l=o=1)}),o&>(ye[e],[n,a],os)}),l&>(ce[e],[n],os)}),t&>(ne[e],void 0,os)}}var o},Is=e=>{const t=!Le(Fe[e]),s=!Le(ze[e])||!Le(nt[e]),l=!Le(ot[e])||!Le(Oe[e]);if(t||s||l){const a=e?[et(_),et(H,us)]:[_,H];if(t){const t=Ns();t!=n&>(Fe[e],void 0,t)}if(s&&Rs(a[0],ze[e],nt[e]),l){let t;Se(a[1],([s,n],l)=>{n!==s&&(gt(ot[e],[l],Kt(n),Kt(s),rs),t=1)}),t&>(Oe[e],void 0,rs)}}},Ls=(e,...t)=>(nn(()=>e(...ie(t,k))),on),Ts=(e,t,s,n,l)=>{let a=Ms(e,t,...s);return dt(()=>{const l=Ms(e,t,...s);le(l,a)||(a=l,n(on,e,t,...s,a))},Te[l?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)),Le,Qe),Le,Qe),Ye(H,([,t])=>Kt(t,0,e),e=>gs(e)),1],Ss=()=>$e(Y,Kt),Vs=()=>Be(Y),ms=e=>Be(Ue(q,k(e))),ys=e=>Ce(Ue(Y,k(e))),ks=e=>Be(Ue(Y,k(e))),Ms=(e,t,s,n=0,l)=>{return De(e)?Ms(e.tableId,e.cellId,e.descending,e.offset,e.limit):ie(X(oe((a=Ue(Y,k(e)),o=(e,s)=>[O(t)?s:Ue(e,k(t)),s],ie([...a?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>jt(e,t)*(s?-1:1)),n,O(l)?l:n+l),([,e])=>e);var a,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(Z,Kt),_s=()=>Be(Z),Hs=e=>Kt(Ue(Z,k(e))),Js=()=>!Le(Y),xs=e=>Ie(Y,k(e)),Ps=(e,t)=>Ie(Ue(q,k(e)),k(t)),Fs=(e,t)=>Ie(Ue(Y,k(e)),k(t)),Qs=(e,t,s)=>Ie(Ue(Ue(Y,k(e)),k(t)),k(s)),Ns=()=>!Le(Z),Os=e=>Ie(Z,k(e)),js=e=>Ls(()=>(e=>je(e,vt,ls))(e)?Ht(e):0),zs=(e,t,s,n,l,a)=>Ls((e,t,s)=>B(pt(e,t,s,G(n)?n(Es(e,t,s)):n),n=>{const r=Ot(e);B(l||a||!o[14]?.()?void 0:o[3],a=>{const o=Ue(r,t),i={...o?Ye(o):{},[s]:n};B(bt(()=>a(e,t,ee(i))),s=>((e,t,s,n,l)=>{Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,a)=>B(pt(e,s,n,a),a=>Pt(e,s,t,n,a,l)),(n,l)=>Xt(e,t,s,n,l,!0))})(e,r,t,s,l))},()=>Ft(e,r,t,s,n,l))}),e,t,s),As=e=>Ls(()=>St(e)?Qt(e):0),Bs=(e,t,s)=>Ls(e=>B(Vt(e,G(t)?t(Hs(e)):t),t=>Nt(e,t,s)),e),Us=e=>(te(()=>Dt(It(e))),on),qs=t=>Ls(()=>{if((e=je(t,e=>je(e,wt)))&&(kt(t),!Le(Y))){const e=Ss();Ks(),js(e)}}),Gs=e=>Ls(()=>{if(t=(e=>je(e,wt))(e)){const s=Ws();sn(),$s(),t=!0,Mt(e),As(s)}}),Ks=()=>Ls(()=>bt(()=>o[7]?.())??1?Ht({},!0):0),Xs=e=>Ls(e=>Ie(Y,e)?zt(e):0,e),Ys=(e,t)=>Ls((e,t)=>B(Ue(Y,e),s=>Ie(s,t)?Bt(e,s,t):0),e,t),Zs=(e,t,s,n,l)=>Ls((e,t,s)=>B(Ue(Y,e),a=>B(Ue(a,t),o=>Ie(o,s)?Xt(e,a,t,o,s,n,l):0)),e,t,s),$s=()=>Ls(()=>bt(()=>o[11]?.())??1?Qt({},!0):0),en=(e,t)=>Ls(e=>Ie(Z,e)?Yt(e,t):0,e),tn=()=>Ls(()=>{kt({}),e=!1}),sn=()=>Ls(()=>{Mt({}),t=!1}),nn=(e,t)=>{if(-1!=a){ln();const s=e();return an(t),s}},ln=()=>(-1!=a&&a++,1==a&&(r[0]?.(),gt(rt)),on),an=e=>(a>0&&(a--,0==a&&(a=1,bt(()=>{Cs(1),Le(W)||vs(1),ws(1),Le(H)||Is(1)}),e?.(on)&&(Se(W,(e,t)=>Se(e,(e,s)=>Se(e,([e],n)=>Et(t,s,n,e,!0)))),pe(W),Se(H,([e],t)=>_t(t,e,!0)),pe(H)),gt(it[0],void 0),a=-1,Cs(0),Le(W)||vs(0),ws(0),Le(H)||Is(0),r[1]?.(),gt(it[1],void 0),r[2]?.(),a=0,s=Js(),n=Ns(),re([b,T,M,D,E,W,J,_,H,x],pe))),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:()=>Lt(Y),getValuesJson:()=>Lt(Z),getJson:()=>Lt([Y,Z]),getTablesSchemaJson:()=>Lt(P),getValuesSchemaJson:()=>Lt(Q),getSchemaJson:()=>Lt([P,Q]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Ls(()=>{const t=G(e)?e():e;Rt(t)&&(e=>{Ct(e,()=>B(o[0],t=>bt(()=>t(ee(e))),()=>e),([e,t])=>{(Qe(e)?Ks:js)(e),(Qe(t)?$s:As)(t)},fs)})(t)}),setTables:js,setTable:(e,t)=>Ls(e=>vt(t,e)?Jt(e,t):0,e),setRow:(e,t,s)=>Ls((e,t)=>Tt(e,t,s)?xt(e,Ot(e),t,s):0,e,t),addRow:(e,t,s=!0)=>nn(()=>{let n;return Tt(e,n,t)&&(e=k(e),xt(e,Ot(e),n=((e,t)=>{const[s]=Ue(A,e);let n;do{n=s(t)}while(Ie(Ue(Y,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>Ls((e,t)=>{if(Tt(e,t,s,1)){const n=Ot(e);Pe(s,(s,l)=>Ft(e,n,t,l,s))}},e,t),setCell:zs,setValues:As,setPartialValues:e=>Ls(()=>St(e,1)?Pe(e,(e,t)=>Nt(t,e)):0),setValue:Bs,applyChanges:e=>Ls(()=>Ct(e,()=>B(o[13],t=>bt(()=>t(ee(e))),()=>e),e=>{Pe(e[0],(e,t)=>O(e)?Xs(t):Pe(e,(e,s)=>O(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=>(te(()=>Wt(It(e))),on),setJson:e=>Ls(()=>te(()=>{const[t,s]=It(e);Dt(t),Wt(s)},()=>Us(e))),setTablesSchema:qs,setValuesSchema:Gs,setSchema:(e,t)=>Ls(()=>{qs(e),Gs(t)}),delTables:Ks,delTable:Xs,delRow:Ys,delCell:Zs,delValues:$s,delValue:en,delTablesSchema:tn,delValuesSchema:sn,delSchema:()=>Ls(()=>{tn(),sn()}),transaction:nn,startTransaction:ln,getTransactionChanges:()=>ps(),getTransactionLog:()=>[!Le(W),!Le(H),$e(W,us,gs),$e(J),Ye(H,us,gs),Ye(x),Ye(b),Ze(D),$e(E),Ye(_)],finishTransaction:an,forEachTable:e=>Se(Y,(t,s)=>e(s,e=>Se(t,(t,s)=>e(s,e=>qe(t,(t,s)=>e(t,Kt(s))))))),forEachTableCell:(e,t)=>qe(Ue(q,k(e)),t),forEachRow:(e,t)=>Se(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(Z,(t,s)=>e(t,Kt(s))),addSortedRowIdsListener:(e,t,s,n,l,a,o)=>De(e)?Ts(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):Ts(e,t,[s,n,l],a,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($),tables:ds(ne),tableIds:ds(ae),hasTable:ds(de),table:ds(ce),tableCellIds:ds(ue),hasTableCell:ds(he,Re),rowCount:ds(fe),rowIds:ds(be),sortedRowIds:ds(Te),hasRow:ds(me,Re),row:ds(ye,Re),cellIds:ds(ke,Re),hasCell:ds(Me,ve),cell:ds(Ee,ve),invalidCell:ds(_e,ve),hasValues:ds(Fe),values:ds(Oe),valueIds:ds(ze),hasValue:ds(nt),value:ds(ot),invalidValue:ds(xe),transaction:we(rt)+ds(it)}),isMergeable:()=>!1,_:[bs,dt,gt,(e,t,s,n,l)=>r=[e,t,s,n,l],(e,t,s,n,l,a,r,i,d,c,u,g,h,f,b)=>o=[e,t,s,n,l,a,r,i,d,c,u,g,h,f,b],Et,_t,()=>[$e(Y),Ye(Z)],()=>ps(!0)]};return Pe({[f+w]:[0,$,[],()=>[Js()]],[w]:[0,ne],[R]:[0,ae],[f+C]:[1,de,[Vs],e=>[xs(...e)]],[C]:[1,ce,[Vs]],[C+S]:[1,ue,[Vs]],[f+C+p]:[2,he,[Vs,ms],e=>[Ps(...e)]],[I]:[1,fe,[Vs]],[L]:[1,be,[Vs]],[f+v]:[2,me,[Vs,ks],e=>[Fs(...e)]],[v]:[2,ye,[Vs,ks]],[S]:[2,ke,[Vs,ks]],[f+p]:[3,Me,[Vs,ks,Ds],e=>[Qs(...e)]],[p]:[3,Ee,[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],l)=>{on[h+l+u]=(...l)=>dt(l[e],t[l[e+1]?1:0],e>0?X(l,0,e):void 0,s,n)}),We(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)=>[ls(e),ls(e)],Rs=(e,s)=>{let n=1,l=ws(),a=0,o=0;const r=Ae(),i=lt(),[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={},a={},[[o,r=t,i=0],d]=e,[u,g]=l,[h,f,b]=u;let w=s?i:b,R=r;xe(o,([e,l=t,a=0],o)=>{const r=Ke(h,o,ls),[i,d,c]=r;let u=s?a:c,g=l;xe(e,(e,t)=>{const[l,a,r]=C(e,Ke(i,t,ls),Oe(Oe(n,o,_e),t,_e),s);u^=s?0:St(a?mt(t,a):0,mt(t,r)),g=ts(g,l)}),u^=s?0:es(d,l),ss(r,l,u),w^=s?0:St(c?mt(o,c):0,mt(o,r[2])),R=ts(R,g)}),w^=s?0:es(f,r),ss(u,r,w);const[v]=C(d,g,a,s);return c(ts(R,v)),[n,a,1]},C=(e,s,n,l)=>{const[a,o=t,r=0]=e,[i,d,c]=s;let u=o,g=l?r:c;return xe(a,([e,s=t,a=0],o)=>{const r=Ke(i,o,()=>[void 0,t,0]),[,d,c]=r;(!d||s>d)&&(ss(r,s,l?a:yt(e,s)),r[0]=e,n[o]=e,g^=l?0:St(mt(o,c),mt(o,r[2])),u=ts(u,s))}),g^=l?0:es(d,o),ss(s,o,g),[u,c,s[2]]},w=$,R=$,v=(e=!1)=>[as(l[0],t=>as(t,t=>as(t,([t,s,n])=>[Kt(t,0,e),s,n]))),as(l[1],([t,s,n])=>[Kt(t,0,e),s,n])],I=(e,t=!1)=>{const[[s,n,a],[o,d,c]]=l,u=e?Zt:Yt,g={};Se(r,(e,n)=>B(Ue(s,n),([s,l,a])=>{const o={};Se(e,(e,n)=>B(Ue(s,n),([s,l,a])=>{const r={};Se(e,e=>{B(Ue(s,e),([s,n,l])=>r[e]=u(t?s:Kt(s),n,l))}),o[n]=u(r,l,a)})),g[n]=u(o,l,a)}));const h={};return Se(i,e=>B(Ue(o,e),([s,n,l])=>h[e]=u(t?s:Kt(s),n,l))),[u(g,n,a),u(h,d,c),1]},L=()=>v(),T=e=>f(()=>g.applyChanges(b(e))),p={getMergeableContent:L,getMergeableContentHashes:()=>[l[0][2],l[1][2]],getMergeableTableHashes:()=>Ye(l[0][0],$t),getMergeableTableDiff:e=>{const t=ns(l[0][1]),s={};return qe(l[0][0],(n,[l,a,o])=>He(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=os([l,a],e=>os(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return xe(e,(e,s)=>B(Ue(l[0][0],s),([n,,l])=>l!=e?qe(n,(e,[,,n])=>Oe(t,s,_e)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=ns(l[0][1]),s={};return xe(e,(e,n)=>qe(Ue(l[0][0],n)?.[0],(l,[a,o,r])=>He(e,l)?r!==e[l]?Oe(s,n,_e)[l]=r:0:Oe(t[0],n,ns)[0][l]=os([a,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return xe(e,(e,s)=>B(Ue(l[0][0],s),([n])=>xe(e,(e,l)=>B(Ue(n,l),([n,,a])=>a!==e?qe(n,(e,[,,n])=>Oe(Oe(t,s,_e),l,_e)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=l,n={};return xe(e,(e,s)=>xe(e,(e,l)=>B(Ue(t,s),([t,a])=>B(Ue(t,l),([t,o])=>qe(t,(t,[r,i,d])=>d!==e[t]?Oe(Oe(n,s,()=>ns(a))[0],l,()=>ns(o))[0][t]=[r,i]:0))))),Yt(n,s)},getMergeableValueHashes:()=>Ye(l[1][0],$t),getMergeableValueDiff:e=>{const[,[t,s]]=l,n=Ye(t,Xt,([,,t],s)=>t==e?.[s]);return Yt(n,s)},setMergeableContent:e=>f(()=>(e=>K(e)&&2==Y(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(),l=ws(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{a=1,g.setContent(e),a=0}),p),getTransactionMergeableChanges:(e=!1)=>I(e),applyMergeableChanges:T,merge:e=>{const t=L(),s=e.getMergeableContent();return e.applyMergeableChanges(t),T(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>I(e,!0)]};return g._[3](w,R,()=>{pe(r),pe(i)},(e,s,l,i,c)=>{at(Ke(Ke(r,e,Ae),s,lt),l),(n||c)&&(c&&(o=1),b([[{[e]:[{[s]:[{[l]:[i,a?t:d()]}]}]}],[{}],1]))},(e,s,l)=>{at(i,e),(n||l)&&(l&&(o=1),b([[{}],[{[e]:[s,a?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[X(t,3,-8)]??0,l=s[n];return s[n]=(e,...t)=>l(p,...t),e(...s)}:"isMergeable"==t?()=>!0:e),We(p)},vs=Ae([["avg",[(e,t)=>de(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=>de(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Is=(e,t,s,n,l,a=!1)=>{if(Le(s))return;const[o,r,i,d]=l;return a||=O(e),Se(n,([s,n])=>{a||(e=O(s)?r?.(e,n,t++):O(n)?i?.(e,s,t--):d?.(e,n,s,t),a||=O(e))}),a?o(Te(s),Ce(s)):e},Ls=it(e=>{const s=Ae(),[n,l,a]=ut(()=>w),[o,r,i,d,c,u,g,,h,f,b,C]=ot(e,Z,e=>isNaN(e)||O(e)||z(e)||!1===e||e===t?void 0:1*e,n,l),w={setMetricDefinition:(e,t,n,a,o,r,i)=>{const d=G(n)?[n,o,r,i]:Ue(vs,n)??Ue(vs,"sum");return h(e,t,(t,n,a,o,r,i)=>{const c=u(e),h=Ce(o);i||=O(c),t();let f=Is(c,h,o,n,d,i);Q(f)||(f=void 0),f!=c&&(g(e,f),l(s,[e],f,c))},rt(a,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=>(a(e),w),destroy:C,getListenerStats:()=>({metric:we(s)})};return We(w)}),Ts=(e,t,...s)=>ue(e,(e,t)=>O(e)?e:t(...s,e),t),ps=(e,...t)=>ne(e,e=>e(...t)),Ss=it(e=>{const t=e=>t=>(ge(e,t),D),s=[],n=[],l=[],a=[],o=[],r=[],i=[],d=[],c=[],u=[],g=[],h=[],f=[],b=[],C=t(s),w=t(n),R=t(l),v=t(a),I=t(o),L=t(r),T=t(i),p=t(d),S=t(c),V=t(u),m=t(g),y=t(h),k=t(f),M=t(b),D=We({getStore:()=>e,addWillSetContentCallback:C,addWillSetTablesCallback:w,addWillSetTableCallback:R,addWillSetRowCallback:v,addWillSetCellCallback:I,addWillSetValuesCallback:L,addWillSetValueCallback:T,addWillDelTablesCallback:p,addWillDelTableCallback:S,addWillDelRowCallback:V,addWillDelCellCallback:m,addWillDelValuesCallback:y,addWillDelValueCallback:k,addWillApplyChangesCallback:M,destroy:()=>{}});return e._[4](e=>Ts(s,e),e=>Ts(n,e),(e,t)=>Ts(l,t,e),(e,t,s)=>Ts(a,s,e,t),(e,t,s,n)=>Ts(o,n,e,t,s),e=>Ts(r,e),(e,t)=>Ts(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=>Ts(b,e),()=>a.length>0),D}),Vs="_",ms=it(e=>{const s=e._[0],n=s(),l=s(),a=s(),o=Ae(),r=lt(),i=Ae(),d=Ae(),c={table:0,tableCellIds:0,rowCount:0,rowIds:0,sortedRowIds:0,row:0,cellIds:0,cell:0},f=Ae(),b=Ae(),{_:[,w,R],delListener:V}=a,[m,y,k,M,D,E,W,_,,H,J,x]=ot(e,()=>[],Z,w,R),P=e=>Ke(o,e,s),F=(e,t,...s)=>re(s,s=>at(Ke(Ke(f,t,Ae),e,lt),s)),Q=e=>{B(Ue(f,e),e=>{qe(e,(e,t)=>Se(t,t=>e.delListener(t))),pe(e)}),re([P(e),n],t=>t.delTable(e))},N=(e,t,s,...n)=>{const l=Ke(Ke(b,t,Ae),e,lt);return re(n,t=>{at(l,t),s&&e.callListener(t)}),n},j=(e,t,s)=>B(Ue(Ue(b,e),t),n=>{t.delListener(s),Ve(n,s),Le(n)&&Ge(Ue(b,e),t)}),A=e=>B(Ue(b,e),e=>{qe(e,(e,t)=>Se(t,t=>e.delListener(t))),pe(e)}),U=(e,t,s)=>F(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener(()=>s.finishTransaction())),q=(e,t)=>(Qe(t)?l.delRow:l.setRow)(Vs,e,{...t}),K=s=>P(s).transaction(()=>B(E(s),([l,,a])=>{const o=D(s),i=a?P(o):e,d=P(s),c=ee(s);at(r,s),Q(s),A(s);const u=[],g=[[void 0,[o,void 0,void 0,[],Ae(),i]]],h=[],f=[],b=[];l({select:(e,s,n)=>{const l=z(e)?s:e,a=z(e)?n:s,o=G(e)?[Y(u)+t,e]:O(a)?[e,t=>t(e)]:[a,t=>z(e)?t(!0,l,a):t(l,a)];return ge(u,o),{as:e=>o[0]=e}},join:(t,s,n,l)=>{const a=z(t)?s:t,[o,r]=z(t)?O(l)||G(n)?[void 0,n]:[n,l]:O(n)||G(s)?[void 0,s]:[s,n],i=[a,[a,o,G(r)?r:e=>e(r),[],Ae(),z(t)?P(a):e]];return ge(g,i),{as:e=>i[0]=e}},where:(e,t,s,n)=>ge(h,G(e)?e:z(e)?e=>e(!0,t,s)===n:O(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,l)=>{const a=[e,[e,G(t)?[t,s,n,l]:Ue(vs,t)??[(e,t)=>t]]];return ge(f,a),{as:e=>a[0]=e}},having:(e,t)=>ge(b,G(e)?e:s=>s(e)===t),param:e=>((e,t)=>B(e,e=>e[t]))(c,e)});const C=Ae(u);if(Le(C))return Ve(r,s),te;const w=Ae(g);qe(w,(e,[,t])=>B(Ue(w,t),({3:t})=>O(e)?0:ge(t,e)));const R=Ae(f);let v=n;if(Le(R)&&ce(b))v=d;else{U(s,v,d);const e=Ae();qe(R,(t,[s,n])=>at(Ke(e,s,lt),[t,n]));const t=lt();qe(C,s=>Ie(e,s)?0:at(t,s));const n=Ae(),l=(t,n,l,a)=>B(t,([o,r,i,c])=>{qe(n,(t,[s])=>{const n=Ke(o,t,Ae),r=Ue(n,l),i=a?void 0:s;if(r!==i){const s=lt([[r,i]]),a=Ce(n);Ge(n,l,i),Se(Ue(e,t),([e,t])=>{const l=Is(c[e],a,n,s,t);c[e]=O(At(l))?void 0:l})}}),Le(r)||!ne(b,e=>e(e=>c[e]))?d.delRow(s,i):O(i)?t[2]=d.addRow(s,c):d.setRow(s,i,c)});F(v,s,v.addRowListener(s,null,(a,o,r,i)=>{const d=[],c=[],u=Ae(),g=v.hasRow(s,r);let h=!g;Se(t,e=>{const[t,n,l]=i(s,r,e);ge(d,n),ge(c,l),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])=>(Ve(e,r),Le(e))),u,r,1),g&&l(nt(n,c,()=>{const e={};return Se(t,t=>e[t]=v.getCell(s,r,t)),[Ae(),lt(),void 0,e]},([,e])=>{at(e,r)}),u,r)}))}U(s,i,v);const I=(e,t,n,l,a)=>{const r=e=>t.getCell(n,l,e);re(a,t=>{const[n,,l,a,o,i]=Ue(w,t),d=l?.(r,e),c=Ue(o,e),u=c?.[0];d!=u&&(B(c,([,e,t])=>j(s,e,t)),Ge(o,e,O(d)?void 0:[d,i,...N(i,s,1,i.addRowListener(n,d,()=>I(e,i,n,d,a)))]))}),(e=>{const t=(t,s,n)=>{const l=z(t)?s:t,a=z(t)?n:s;if(O(a))return i.getCell(o,e,t);if(l===o&&!z(t))return i.getCell(o,e,a);const r=Ue(w,l);return O(r)?void 0:r[5].getCell(r[0],Ue(r[4],e)?.[0],a)};v.transaction(()=>ne(h,e=>e(t))?qe(C,(n,l)=>v._[5](s,e,n,l(t,e))):v.delRow(s,e))})(e)},{3:L}=Ue(w,void 0),T=(e,t,n)=>{i.hasRow(o,n)?I(n,i,o,n,L):(v.delRow(s,n),Se(w,({4:e})=>B(Ue(e,n),([,t,l])=>{j(s,t,l),Ge(e,n)})))};return v.transaction(()=>{re(i.getRowIds(o),e=>T(0,0,e)),N(i,s,0,i.addRowListener(o,null,T))}),Ve(r,s),te})),$=e=>(B(E(e),([,e])=>l.delListener(e)),l.delRow(Vs,e),Q(e),A(e),H(e),te),ee=e=>l.getRow(Vs,e),te={setQueryDefinition:(e,t,s,n,a={})=>{const[o,r,i,d]=z(t)?[s,n,1,a]:[t,s,0,n??{}];return B(E(e),([,e])=>l.delListener(e)),_(e,o),W(e,[r,l.addRowListener(Vs,e,()=>K(e)),i]),q(e,d),K(e),te},delQueryDefinition:$,getParamValues:ee,getParamValue:(e,t)=>l.getCell(Vs,e,t),setParamValues:(e,t)=>(M(e)&&q(e,t),te),setParamValue:(e,t,s)=>(M(e)&&l.setCell(Vs,e,t,s),te),getStore:m,getQueryIds:y,forEachQuery:k,hasQuery:M,getTableId:D,forEachResultTable:e=>k(t=>P(t).hasTable(t)?e(t,e=>te.forEachResultRow(t,e)):0),addQueryIdsListener:e=>J(()=>e(te)),addParamValuesListener:(e,t)=>"p"+l.addRowListener(Vs,e,(e,s,n)=>t(te,n,ee(n))),addParamValueListener:(e,t,s)=>"p"+l.addCellListener(Vs,e,t,(e,t,n,l,a)=>s(te,n,l,a)),delListener:e=>{const t=Ue(i,e);if("p"==e[0])l.delListener(X(e,1));else if(O(t))V(e);else{const[s,n,l]=t;qe(n,(e,[t,s])=>t.delListener(s)),B(l,V),Ge(i,e),V(e),c[s]--}return te},destroy:()=>{re(y(),$),x()},getListenerStats:()=>({...c,paramValues:l.getListenerStats().row-Y(y()),paramValue:l.getListenerStats().cell})};return Pe({[C]:[2,1],[C+S]:[1,1],[I]:[1,1],[L]:[1,1],[T]:[1,5],[v]:[3,2],[S]:[1,2],[p]:[3,3]},([e,t],s)=>{re(X(["get","has","forEach"],0,e),e=>te[e+g+s]=(...t)=>P(t[0])[e+s](...t)),te[h+g+s+u]=(...e)=>((n,l)=>{const a=w(Z,d),o=Ae(),r=()=>{const n=null==l?y():[l];re(n,n=>{return Ie(o,n)?0:Ge(o,n,[P(n),(l=P(n),l[h+s+u](...((e,t)=>5==t?[e[0],e[1]??void 0,e[2],e[3],e[4]]:X(e,0,t))(e,t),(s,...n)=>e[t](te,...n),!0))]);var l}),qe(o,(e,[t,s])=>null==l&&M(e)||e==l?0:(t.delListener(s),void Ge(o,e)))};return r(),Ge(i,a,[n,o,null==l?J(r):void 0]),c[n]++,a})((e=>e[0].toLowerCase()+X(e,1))(s),e[0])}),We(te)}),ys=it(e=>{const s=Ae(),n=Ae(),l=Ae(),a=Ae(),[o,r,i]=ut(()=>T),[d,c,u,g,h,f,,,b,C,w,R]=ot(e,()=>[Ae(),Ae(),Ae(),Ae()],e=>O(e)?void 0:e+t,o,r),v=(e,t,s)=>B(f(e),([n,,l])=>{if(!Ie(l,t)){const a=lt();if(h(e)!=L(e))at(a,t);else{let e=t;for(;!O(e)&&!Ie(a,e);)at(a,e),e=Ue(n,e)}if(s)return a;Ge(l,t,a)}return Ue(l,t)}),I=(e,t)=>B(f(e),([,,e])=>Ge(e,t)),L=e=>Ue(s,e),T={setRelationshipDefinition:(e,t,o,i)=>(Ge(s,e,o),b(e,t,(t,s)=>{const o=lt(),i=lt(),d=lt(),[c,u]=f(e);Se(s,([t,s],n)=>{O(t)||(at(i,t),B(Ue(u,t),e=>{Ve(e,n),Le(e)&&Ge(u,t)})),O(s)||(at(i,s),Ie(u,s)||Ge(u,s,lt()),at(Ue(u,s),n)),at(o,n),Ge(c,n,s),qe(Ue(a,e),t=>{Ie(v(e,t),n)&&at(d,t)})}),t(),Se(o,t=>r(n,[e,t])),Se(i,t=>r(l,[e,t])),Se(d,t=>{I(e,t),r(a,[e,t])})},rt(i)),T),delRelationshipDefinition:e=>(Ge(s,e),C(e),T),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u(s=>t(s,t=>e.forEachRow(h(s),t))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:L,getRemoteRowId:(e,t)=>Ue(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(Ue(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>O(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,l,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),o(s,a,[e,t])),delListener:e=>(I(...i(e)??[]),T),destroy:R,getListenerStats:()=>({remoteRowId:Re(n),localRowIds:Re(l),linkedRowIds:Re(a)})};return We(T)});export{St as addOrRemoveHash,gt as createCheckpoints,zt as createIndexes,Rs as createMergeableStore,Ls as createMetrics,Ss as createMiddleware,ms as createQueries,ys 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,Rt as getUniqueId,yt as getValueHash,mt as getValueInValuesHash,Vt as getValuesHash};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),n=e(!0),l=e(0),a=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",R=C+b,v="Row",I=v+"Count",L=v+b,T="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=Math,_=e=>(t,s,n)=>e(t)?n?.():s(t),H=globalThis,J=W.max,x=W.min,P=W.floor,F=W.random,Q=isFinite,N=e=>null==e,O=e=>void 0===e,j=e=>null===e,z=e=>!0===e,A=_(N),B=_(O),U=e=>e==s||e==n,q=t=>e(t)==s,G=t=>e(t)==a,K=e=>Array.isArray(e),X=(e,t,s)=>e.slice(t,s),Y=e=>e.length,Z=()=>{},$=()=>{},ee=H.structuredClone,te=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},se=(e,t)=>e.includes(t),ne=(e,t)=>e.every(t),le=(e,t)=>Y(e)===Y(t)&&ne(e,(e,s)=>t[s]===e),ae=(e,t)=>ne(e,(s,n)=>0==n||t(e[n-1],s)<=0),oe=(e,t)=>e.sort(t),re=(e,t)=>e.forEach(t),ie=(e,t)=>e.map(t),de=e=>ue(e,(e,t)=>e+t,0),ce=e=>0==Y(e),ue=(e,t,s)=>e.reduce(t,s),ge=(e,...t)=>e.push(...t),he=e=>e.pop(),fe=e=>e.shift(),be=e=>t=>ue(Te(t),(t,s)=>t+e(s),0),Ce=e=>e?.size??0,we=be(Ce),Re=be(we),ve=be(Re),Ie=(e,t)=>e?.has(t)??!1,Le=e=>O(e)||0==Ce(e),Te=e=>[...e?.values()??[]],pe=e=>e.clear(),Se=(e,t)=>e?.forEach(t),Ve=(e,t)=>e?.delete(t),me=Object,ye=e=>me.getPrototypeOf(e),ke=me.isFrozen,Me=me.entries,De=e=>!N(e)&&A(ye(e),e=>e==me.prototype||N(ye(e)),()=>!0),Ee=me.keys,We=me.freeze,_e=(e=[])=>me.fromEntries(e),He=(e,t)=>t in e,Je=(e,t)=>(delete e[t],e),xe=(e,t)=>re(Me(e),([e,s])=>t(s,e)),Pe=(e,t)=>_e(((e,t)=>ie(Me(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),Fe=e=>Y(Ee(e)),Qe=e=>De(e)&&0==Fe(e),Ne=(e,t,s=(e,t)=>e===t)=>{const n=Me(e);return Y(n)===Fe(t)&&ne(n,([e,n])=>De(n)?!!De(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)=>N(e)||!De(e)||!n&&Qe(e)||ke(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)=>Se(e,(e,s)=>t(s,e)),Ge=(e,t,s)=>O(s)?(Ve(e,t),e):e?.set(t,s),Ke=(e,t,s,n)=>(Ie(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 l={};return Se(e,(e,a)=>{if(!s?.(e,a)){const s=t?t(e,a):e;n?.(s)||(l[a]=s)}}),l},Ze=(e,t,s)=>Ye(e,e=>Ye(e,t,s),Le,Qe),$e=(e,t,s)=>Ye(e,e=>Ze(e,t,s),Le,Qe),et=(e,t)=>{const s=Ae();return Se(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,l=0)=>B((s?Ke:Ue)(e,t[l],l>Y(t)-2?s:Ae),a=>{if(l>Y(t)-2)return n?.(a)&&Ge(e,t[l]),a;const o=nt(a,t,s,n,l+1);return Le(a)&&Ge(e,t[l]),o}),lt=e=>new Set(K(e)||O(e)?e:[e]),at=(e,t)=>e?.add(t),ot=(e,t,s,n,l)=>{const a=e.hasRow,o=Ae(),r=Ae(),i=Ae(),d=Ae(),c=Ae(),u=Ae(),g=t=>B(Ue(u,t),s=>{re(Te(s),t=>{e.delListener(t),Ve(s,t)}),Ge(u,t)}),h=(e,s)=>{Ge(o,e,s),Ie(r,e)||(Ge(r,e,t()),Ge(d,e,Ae()),Ge(c,e,Ae()),l(i))},f=e=>{Ge(o,e),Ge(r,e),Ge(d,e),Ge(c,e),g(e),l(i)};return[()=>e,()=>Be(o),e=>qe(r,e),e=>Ie(r,e),e=>Ue(o,e),e=>Ue(r,e),(e,t)=>Ge(r,e,t),h,(t,n,l,o,r)=>{h(t,n);const i=Ae(),f=Ae(),b=Ue(d,t),C=Ue(c,t),w=t=>{const l=s=>e.getCell(n,t,s),d=Ue(b,t),c=a(n,t)?s(o(l,t)):void 0;if(d===c||K(d)&&K(c)&&le(d,c)||Ge(i,t,[d,c]),!O(r)){const e=Ue(C,t),s=a(n,t)?r(l,t):void 0;e!=s&&Ge(f,t,s)}},R=e=>{l(()=>{Se(i,([,e],t)=>Ge(b,t,e)),Se(f,(e,t)=>Ge(C,t,e))},i,f,b,C,e),pe(i),pe(f)};qe(b,w),e.hasTable(n)&&re(e.getRowIds(n),e=>{Ie(b,e)||w(e)}),R(!0),g(t),((e,...t)=>{const s=Ke(u,e,lt);re(t,e=>at(s,e))})(t,e.addRowListener(n,null,(e,t,s)=>w(s)),e.addTableListener(n,()=>R()))},f,e=>n(e,i),()=>qe(u,f)]},rt=(e,s)=>q(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 l=s.get(n);return t?.(l),l}},dt=/^\d+$/,ct=()=>{const e=[];let s=0;return[n=>(n?fe(e):null)??t+s++,t=>{dt.test(t)&&Y(e)<1e3&&ge(e,t)}]},ut=e=>{let s;const[n,l]=ct(),a=Ae();return[(l,o,r,i=[],d=()=>[])=>{s??=e();const c=n(1);return Ge(a,c,[l,o,r,i,d]),at(nt(o,r??[t],lt),c),c},(e,n,...l)=>re(((e,s=[t])=>{const n=[],l=(e,t)=>t==Y(s)?ge(n,e):j(s[t])?Se(e,e=>l(e,t+1)):re([s[t],null],s=>l(Ue(e,s),t+1));return l(e,0),n})(e,n),e=>Se(e,e=>Ue(a,e)[0](s,...n??[],...l))),e=>B(Ue(a,e),([,s,n])=>(nt(s,n??[t],void 0,t=>(Ve(t,e),Le(t)?1:0)),Ge(a,e),l(e),n)),e=>B(Ue(a,e),([e,,t=[],n,l])=>{const a=(...o)=>{const r=Y(o);r==Y(t)?e(s,...o,...l(o)):j(t[r])?re(n[r]?.(...o)??[],e=>a(...o,e)):a(...o,t[r])};a()})]},gt=it(e=>{let s,n,l,a=100,o=Ae(),r=Ae(),i=1;const d=Ae(),c=Ae(),[u,g,h]=ut(()=>_),f=Ae(),b=Ae(),C=[],w=[],R=(t,s)=>{i=0,e.transaction(()=>{const[n,l]=Ue(f,s);Se(n,(s,n)=>Se(s,(s,l)=>Se(s,(s,a)=>e._[5](n,l,a,s[t],!0)))),Se(l,(s,n)=>e._[6](n,s[t],!0))}),i=1},v=e=>{Ge(f,e),Ge(b,e),g(c,[e])},I=(e,t)=>re(((e,t)=>e.splice(0,t))(e,t??Y(e)),v),L=()=>I(C,Y(C)-a),T=()=>B(s,()=>{ge(C,s),L(),I(w),s=void 0,l=1}),p=()=>{s=he(C),l=1};let S,V;const m=(e=t)=>(O(s)&&(s=t+n++,Ge(f,s,[o,r]),E(s,e),o=Ae(),r=Ae(),l=1),s),y=()=>{ce(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),R(0,s),s=he(C),l=1)},k=()=>{ce(w)||(ge(C,s),s=fe(w),R(1,s),l=1)},M=()=>{l&&(g(d),l=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=>Ie(f,e),_={setSize:e=>(a=e,L(),_),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=se(C,e)?y:se(w,e)?k:void 0;for(;!O(t)&&e!=s;)t();return M(),_},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),_),clear:()=>(I(C),I(w),O(s)||v(s),s=void 0,n=0,D(),_),clearForward:()=>(ce(w)||(I(w),g(d)),_),destroy:()=>{e.delListener(S),e.delListener(V)},getListenerStats:()=>({checkpointIds:we(d),checkpoint:we(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,s,n,l,a)=>{if(i){T();const e=Ke(o,t,Ae),r=Ke(e,s,Ae),i=Ke(r,n,()=>[a,void 0]);i[1]=l,i[0]===l&&Le(Ge(r,n))&&Le(Ge(e,s))&&Le(Ge(o,t))&&p(),M()}}),V=e.addValueListener(null,(e,t,s,n)=>{if(i){T();const e=Ke(r,t,()=>[n,void 0]);e[1]=s,e[0]===s&&Le(Ge(r,t))&&p(),M()}})}};return We(_.clear())},e=>e._registerListeners()),ht=E("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),ft=Ae(ie(ht,(e,t)=>[e,t])),bt=e=>ht[63&e],Ct=(e,t)=>Ue(ft,e[t])??0,wt=H.crypto?e=>H.crypto.getRandomValues(e):e=>ie(e,()=>P(256*F())),Rt=(e=16)=>ue(wt(new Uint8Array(e)),(e,t)=>e+bt(t),t),vt=JSON.stringify,It=JSON.parse,Lt=e=>vt(e,(e,t)=>t instanceof Map?me.fromEntries([...t]):t),Tt=new H.TextEncoder,pt=e=>{let t=2166136261;return re(Tt.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=>ue(Me(e),(e,[t,s])=>St(e,mt(t,s)^mt(t,0)),0),mt=(e,t)=>pt(e+":"+t),yt=(e,t)=>pt(Lt(e??null)+":"+t),kt=yt,Mt=mt,Dt=Vt,Et=mt,Wt=e=>ue(Me(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,s=Date.now)=>{let n=0,l=-1;const a=B(e,Nt,()=>Rt(5)),o=e=>{const a=n,[o,r]=O(e)||e==t?[0,0]:i(e);n=J(a,o,s()),l=n==a?n==o?J(l,r):l:n==o?r:-1},r=(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)+(O(s)?a:Nt(s)),i=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[()=>(o(),r(n,++l)),o,r,i,()=>n,()=>l,()=>a]},jt=(e,t)=>(e??0)<(t??0)?-1:1,zt=it(e=>{const s=Ae(),n=Ae(),[l,a,o]=ut(()=>v),[r,i,d,c,u,g,h,,f,b,C,w]=ot(e,Ae,e=>O(e)?t:K(e)?ie(e,k):k(e),l,a),R=(t,s,n)=>{const l=u(t);Se(n,(t,n)=>s(n,s=>Se(t,t=>s(t,s=>e.forEachCell(l,t,s)))))},v={setIndexDefinition:(e,t,l,o,r,i=jt)=>{const d=O(r)?void 0:([e],[t])=>r(e,t);return f(e,t,(t,l,r,c,u,f)=>{let b=0;const C=lt(),w=lt(),R=g(e);if(Se(l,([e,t],s)=>{const n=lt(e),l=lt(t);Se(n,e=>Ve(l,e)?Ve(n,e):0),Se(n,e=>{at(C,e),B(Ue(R,e),t=>{Ve(t,s),Le(t)&&(Ge(R,e),b=1)})}),Se(l,e=>{at(C,e),Ie(R,e)||(Ge(R,e,lt()),b=1),at(Ue(R,e),s),O(o)||at(w,e)})}),t(),Le(u)||(f?qe(R,e=>at(w,e)):qe(r,e=>B(Ue(c,e),e=>re(K(e)?e:[e],e=>at(w,e)))),Se(w,e=>{const t=(t,s)=>i(Ue(u,t),Ue(u,s),e),s=[...Ue(R,e)];ae(s,t)||(Ge(R,e,lt(oe(s,t))),at(C,e))})),(b||f)&&!O(d)){const t=[...R];ae(t,d)||(h(e,Ae(oe(t,d))),b=1)}b&&a(s,[e]),Se(C,t=>a(n,[e,t]))},rt(l),B(o,rt)),v},delIndexDefinition:e=>(b(e),v),getStore:r,getIndexIds:i,forEachIndex:e=>d((t,s)=>e(t,e=>R(t,e,s))),forEachSlice:(e,t)=>R(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>Ie(g(e),t),getTableId:u,getSliceIds:e=>Be(g(e)),getSliceRowIds:(e,t)=>Te(Ue(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>l(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>l(s,n,[e,t]),delListener:e=>(o(e),v),destroy:w,getListenerStats:()=>({sliceIds:we(s),sliceRowIds:Re(n)})};return We(v)}),At=t=>{if(j(t))return"null";if(K(t))return r;if(De(t))return o;const s=e(t);return U(s)||s==l&&Q(t)?s:void 0},Bt=e=>O(e)||!O(At(e)),Ut=e=>e==o||e==r,qt=e=>De(e)||K(e)?"�"+vt(e):e,Gt=e=>q(e)&&"�"==e[0],Kt=(e,t,s)=>!s&&Gt(e)?It(X(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,s)=>((e??t)>(s??t)?e:s)??t,ss=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},ns=(e=t)=>Yt(_e(),e),ls=(e=t)=>[Ae(),e,0],as=([e,t,s],n)=>[Ye(e,n),t,s],os=([e,t],s=Xt)=>Yt(Ye(e,s),t),rs=(t,s)=>{return K(t)&&3==Y(t)&&q(t[1])&&(n=t[2],e(n)==l)&&Q(t[2])&&s(t[0]);var n},is=e=>[e,e],ds=(e,t=we)=>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,a=0,o=[],r=[],g=0;const b=Ae(),T=Ae(),M=Ae(),D=Ae(),E=Ae(),W=Ae(),_=Ae(),H=Ae(),J=Ae(),x=Ae(),P=Ae(),F=Ae(),Q=Ae(),N=Ae(),z=lt(),A=Ae(),q=Ae(),Y=Ae(),Z=Ae(),$=cs(),ne=cs(),ae=cs(),de=cs(),ce=cs(),ue=cs(),he=cs(),fe=cs(),be=cs(),Te=cs(),me=cs(),ye=cs(),ke=cs(),Me=cs(),Ee=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)=>B(t(),t=>e===t||n(e,t)?s(t):bt(()=>s(t))),wt=e=>{if(!je(e,(e,t)=>se([i,d,c],t)))return!1;const t=e[i];if(!U(t)&&t!=l&&!Ut(t))return!1;const s=e[d];return!(j(s)&&!e[c]||(j(s)||(At(s)!=t?Je(e,d):e[d]=qt(s)),0))},Rt=K,vt=(t,s)=>(!e||Ie(P,s)||ls(s))&&je(t,(e,t)=>Tt(s,t,e),()=>ls(s)),Tt=(e,t,s,n)=>je(n?s:mt(s,e,t),(n,l)=>B(pt(e,t,l,n),e=>(s[l]=e,!0),()=>!1),()=>ls(e,t)),pt=(t,s,n,l)=>e?B(Ue(Ue(P,t),n),e=>j(l)?e[c]?l:ls(t,s,n,l,e[d]):At(l)===e[i]?qt(l):Ut(e[i])&&Gt(l)?l:ls(t,s,n,l,e[d]),()=>ls(t,s,n,l)):O(At(l))?ls(t,s,n,l):qt(l),St=(e,t)=>je(t?e:yt(e),(t,s)=>B(Vt(s,t),t=>(e[s]=t,!0),()=>!1),()=>as()),Vt=(e,s)=>t?B(Ue(Q,e),t=>j(s)?t[c]?s:as(e,s,t[d]):At(s)===t[i]?qt(s):Ut(t[i])&&Gt(s)?s:as(e,s,t[d]),()=>as(e,s)):O(At(s))?as(e,s):qt(s),mt=(e,t,s)=>(B(Ue(F,t),([n,l])=>{Se(n,(t,s)=>{He(e,s)||(e[s]=t)}),Se(l,n=>{He(e,n)||ls(t,s,n)})}),e),yt=e=>(t&&(Se(N,(t,s)=>{He(e,s)||(e[s]=t)}),Se(z,t=>{He(e,t)||as(t)})),e),kt=e=>Xe(P,e,(e,t,s)=>{const n=Ae(),l=lt();Xe(Ke(P,t,Ae),s,(e,t,s)=>{Ge(e,t,s),B(s[d],e=>Ge(n,t,e),()=>at(l,t))}),Ge(F,t,[n,l])},(e,t)=>{Ge(P,t),Ge(F,t)}),Mt=e=>Xe(Q,e,(e,t,s)=>{Ge(Q,t,s),B(s[d],e=>Ge(N,t,e),()=>at(z,t))},(e,t)=>{Ge(Q,t),Ge(N,t),Ve(z,t)}),Dt=e=>Qe(e)?Ks():js(e),Et=(e,t,s,n,l,a)=>O(n)?Zs(e,t,s,!0,l):zs(e,t,s,n,l,a),Wt=e=>Qe(e)?$s():As(e),_t=(e,t,s)=>O(t)?en(e,s):Bs(e,t,s),Ht=(e,t)=>Ct(e,()=>t?e:B(o[1],t=>bt(()=>t(ee(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:B(o[2],s=>bt(()=>s(e,ee(t))),()=>t),t=>Xe(Ke(Y,e,()=>(Zt(e,1),Ge(A,e,ct()),Ge(q,e,Ae()),Ae())),t,(t,s,n)=>xt(e,t,s,n),(t,s)=>Bt(e,t,s)),Ne),xt=(e,t,s,n,l)=>Ct(n,()=>l?n:B(o[3],t=>bt(()=>t(e,s,ee(n))),()=>n),n=>Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,l)=>Pt(e,s,t,n,l),(n,a)=>Xt(e,t,s,n,a,l)),Ne),Pt=(e,t,s,n,l,a)=>Ct(l,()=>B(a?void 0:o[4],s=>bt(()=>s(e,t,n,l)),()=>l),l=>{Ie(s,n)||es(e,t,n,1);const a=Ue(s,n);l!==a&&(ts(e,t,n,a,l),Ge(s,n,l))}),Ft=(e,t,s,n,l,a)=>B(Ue(t,s),t=>Pt(e,s,t,n,l,a),()=>{const o=Ae();Ge(t,s,o),$t(e,s,1),Pe(mt({[n]:l},e,s),(t,n)=>Pt(e,s,o,n,t,a))}),Qt=(e,t)=>Ct(e,()=>t?e:B(o[5],t=>bt(()=>t(ee(e))),()=>e),e=>Xe(Z,e,(e,t,s)=>Nt(t,s),(e,t)=>Yt(t)),Ne),Nt=(e,t,s)=>Ct(t,()=>B(s?void 0:o[6],s=>bt(()=>s(e,t)),()=>t),t=>{Ie(Z,e)||ss(e,1);const s=Ue(Z,e);t!==s&&(ns(e,s,t),Ge(Z,e,t))}),Ot=e=>Ke(Y,e,()=>(Zt(e,1),Ge(A,e,ct()),Ge(q,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(A,e);n(s),xt(e,t,s,{},!0)}},Xt=(e,t,s,n,l,a,r)=>{const i=Ue(Ue(F,e)?.[0],l);if(!O(i)&&!a)return Pt(e,s,n,l,i);if(r||(bt(()=>o[10]?.(e,s,l))??1)){const a=t=>{ts(e,s,t,Ue(n,t)),es(e,s,t,-1),Ge(n,t)};O(i)?a(l):qe(n,a),Le(n)&&($t(e,s,-1),Le(Ge(t,s))&&(Zt(e,-1),Ge(Y,e),Ge(A,e),Ge(q,e)))}},Yt=(e,t)=>{const s=Ue(N,e);if(!O(s))return Nt(e,s);(t||(bt(()=>o[12]?.(e))??1))&&(ns(e,Ue(Z,e)),ss(e,-1),Ge(Z,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 l=Ue(q,e),a=Ue(l,s)??0;(0==a&&1==n||1==a&&-1==n)&&hs(Ke(T,e,Ae),s,n),Ge(l,s,a!=-n?a+n:void 0),hs(Ke(Ke(E,e,Ae),t,Ae),s,n)},ts=(e,t,s,n,l)=>{Ke(Ke(Ke(W,e,Ae),t,Ae),s,()=>[n,0])[1]=l,r[3]?.(e,t,s,l,g)},ss=(e,t)=>hs(_,e,t),ns=(e,t,s)=>{Ke(H,e,()=>[t,0])[1]=s,r[4]?.(e,s,g)},ls=(e,t,s,n,l)=>(ge(Ke(Ke(Ke(J,e,Ae),t,Ae),s,()=>[]),n),l),as=(e,t,s)=>(ge(Ke(x,e,()=>[]),t),s),os=(e,t,s)=>B(Ue(Ue(Ue(W,e),t),s),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Es(e,t,s))]),rs=e=>B(Ue(H,e),([e,t])=>[!0,Kt(e),Kt(t)],()=>[!1,...is(Hs(e))]),Cs=e=>Le(J)||Le(_e[e])?0:Se(e?st(J):J,(t,s)=>Se(t,(t,n)=>Se(t,(t,l)=>gt(_e[e],[s,n,l],t)))),ws=e=>Le(x)||Le(xe[e])?0:Se(e?et(x):x,(t,s)=>gt(xe[e],[s],t)),Rs=(e,t,s,n)=>{if(!Le(e))return gt(t,n,()=>Ye(e)),qe(e,(e,t)=>gt(s,[...n??[],e],1==t)),1},vs=e=>{const t=!Le($[e]),n=!Le(Te[e]),l=!(Le(ke[e])&&Le(Me[e])&&Le(be[e])&&Le(me[e])&&Le(ue[e])&&Le(he[e])&&Le(fe[e])&&!n&&Le(ae[e])&&Le(de[e])),a=!(Le(Ee[e])&&Le(ye[e])&&Le(ce[e])&&Le(ne[e]));if(t||l||a){const r=e?[et(b),tt(T),et(M),tt(D),st(E),(o=W,et(o,e=>et(e,e=>et(e,us))))]:[b,T,M,D,E,W];if(t){const t=Js();t!=s&>($[e],void 0,t)}if(l){Rs(r[0],ae[e],de[e]),Se(r[1],(t,s)=>Rs(t,ue[e],he[e],[s])),Se(r[2],(t,s)=>{0!=t&>(fe[e],[s],ys(s))});const t=lt();Se(r[3],(s,l)=>{Rs(s,be[e],me[e],[l])&&n&&(gt(Te[e],[l,null]),at(t,l))}),n&&Se(r[5],(s,n)=>{if(!Ie(t,n)){const t=lt();Se(s,e=>Se(e,([s,n],l)=>n!==s?at(t,l):Ve(e,l))),Se(t,t=>gt(Te[e],[n,t]))}}),Se(r[4],(t,s)=>Se(t,(t,n)=>Rs(t,ke[e],Me[e],[s,n])))}if(a){let t;Se(r[5],(s,n)=>{let l;Se(s,(s,a)=>{let o;Se(s,([s,r],i)=>{r!==s&&(gt(Ee[e],[n,a,i],Kt(r),Kt(s),os),t=l=o=1)}),o&>(ye[e],[n,a],os)}),l&>(ce[e],[n],os)}),t&>(ne[e],void 0,os)}}var o},Is=e=>{const t=!Le(Fe[e]),s=!Le(ze[e])||!Le(nt[e]),l=!Le(ot[e])||!Le(Oe[e]);if(t||s||l){const a=e?[et(_),et(H,us)]:[_,H];if(t){const t=Ns();t!=n&>(Fe[e],void 0,t)}if(s&&Rs(a[0],ze[e],nt[e]),l){let t;Se(a[1],([s,n],l)=>{n!==s&&(gt(ot[e],[l],Kt(n),Kt(s),rs),t=1)}),t&>(Oe[e],void 0,rs)}}},Ls=(e,...t)=>(nn(()=>e(...ie(t,k))),on),Ts=(e,t,s,n,l)=>{let a=Ms(e,t,...s);return dt(()=>{const l=Ms(e,t,...s);le(l,a)||(a=l,n(on,e,t,...s,a))},Te[l?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)),Le,Qe),Le,Qe),Ye(H,([,t])=>Kt(t,0,e),e=>gs(e)),1],Ss=()=>$e(Y,Kt),Vs=()=>Be(Y),ms=e=>Be(Ue(q,k(e))),ys=e=>Ce(Ue(Y,k(e))),ks=e=>Be(Ue(Y,k(e))),Ms=(e,t,s,n=0,l)=>{return De(e)?Ms(e.tableId,e.cellId,e.descending,e.offset,e.limit):ie(X(oe((a=Ue(Y,k(e)),o=(e,s)=>[O(t)?s:Ue(e,k(t)),s],ie([...a?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>jt(e,t)*(s?-1:1)),n,O(l)?l:n+l),([,e])=>e);var a,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(Z,Kt),_s=()=>Be(Z),Hs=e=>Kt(Ue(Z,k(e))),Js=()=>!Le(Y),xs=e=>Ie(Y,k(e)),Ps=(e,t)=>Ie(Ue(q,k(e)),k(t)),Fs=(e,t)=>Ie(Ue(Y,k(e)),k(t)),Qs=(e,t,s)=>Ie(Ue(Ue(Y,k(e)),k(t)),k(s)),Ns=()=>!Le(Z),Os=e=>Ie(Z,k(e)),js=e=>Ls(()=>(e=>je(e,vt,ls))(e)?Ht(e):0),zs=(e,t,s,n,l,a)=>Ls((e,t,s)=>B(pt(e,t,s,G(n)?n(Es(e,t,s)):n),n=>{const r=Ot(e);B(l||a||!o[14]?.()?void 0:o[3],a=>{const o=Ue(r,t),i={...o?Ye(o):{},[s]:n};B(bt(()=>a(e,t,ee(i))),s=>((e,t,s,n,l)=>{Xe(Ke(t,s,()=>($t(e,s,1),Ae())),n,(t,n,a)=>B(pt(e,s,n,a),a=>Pt(e,s,t,n,a,l)),(n,l)=>Xt(e,t,s,n,l,!0))})(e,r,t,s,l))},()=>Ft(e,r,t,s,n,l))}),e,t,s),As=e=>Ls(()=>St(e)?Qt(e):0),Bs=(e,t,s)=>Ls(e=>B(Vt(e,G(t)?t(Hs(e)):t),t=>Nt(e,t,s)),e),Us=e=>(te(()=>Dt(It(e))),on),qs=t=>Ls(()=>{if((e=je(t,e=>je(e,wt)))&&(kt(t),!Le(Y))){const e=Ss();Ks(),js(e)}}),Gs=e=>Ls(()=>{if(t=(e=>je(e,wt))(e)){const s=Ws();sn(),$s(),t=!0,Mt(e),As(s)}}),Ks=()=>Ls(()=>bt(()=>o[7]?.())??1?Ht({},!0):0),Xs=e=>Ls(e=>Ie(Y,e)?zt(e):0,e),Ys=(e,t)=>Ls((e,t)=>B(Ue(Y,e),s=>Ie(s,t)?Bt(e,s,t):0),e,t),Zs=(e,t,s,n,l)=>Ls((e,t,s)=>B(Ue(Y,e),a=>B(Ue(a,t),o=>Ie(o,s)?Xt(e,a,t,o,s,n,l):0)),e,t,s),$s=()=>Ls(()=>bt(()=>o[11]?.())??1?Qt({},!0):0),en=(e,t)=>Ls(e=>Ie(Z,e)?Yt(e,t):0,e),tn=()=>Ls(()=>{kt({}),e=!1}),sn=()=>Ls(()=>{Mt({}),t=!1}),nn=(e,t)=>{if(-1!=a){ln();const s=e();return an(t),s}},ln=()=>(-1!=a&&a++,1==a&&(r[0]?.(),gt(rt)),on),an=e=>(a>0&&(a--,0==a&&(a=1,bt(()=>{Cs(1),Le(W)||vs(1),ws(1),Le(H)||Is(1)}),e?.(on)&&(Se(W,(e,t)=>Se(e,(e,s)=>Se(e,([e],n)=>Et(t,s,n,e,!0)))),pe(W),Se(H,([e],t)=>_t(t,e,!0)),pe(H)),gt(it[0],void 0),a=-1,Cs(0),Le(W)||vs(0),ws(0),Le(H)||Is(0),r[1]?.(),gt(it[1],void 0),r[2]?.(),a=0,s=Js(),n=Ns(),re([b,T,M,D,E,W,J,_,H,x],pe))),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:()=>Lt(Y),getValuesJson:()=>Lt(Z),getJson:()=>Lt([Y,Z]),getTablesSchemaJson:()=>Lt(P),getValuesSchemaJson:()=>Lt(Q),getSchemaJson:()=>Lt([P,Q]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Ls(()=>{const t=G(e)?e():e;Rt(t)&&(e=>{Ct(e,()=>B(o[0],t=>bt(()=>t(ee(e))),()=>e),([e,t])=>{(Qe(e)?Ks:js)(e),(Qe(t)?$s:As)(t)},fs)})(t)}),setTables:js,setTable:(e,t)=>Ls(e=>vt(t,e)?Jt(e,t):0,e),setRow:(e,t,s)=>Ls((e,t)=>Tt(e,t,s)?xt(e,Ot(e),t,s):0,e,t),addRow:(e,t,s=!0)=>nn(()=>{let n;return Tt(e,n,t)&&(e=k(e),xt(e,Ot(e),n=((e,t)=>{const[s]=Ue(A,e);let n;do{n=s(t)}while(Ie(Ue(Y,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>Ls((e,t)=>{if(Tt(e,t,s,1)){const n=Ot(e);Pe(s,(s,l)=>Ft(e,n,t,l,s))}},e,t),setCell:zs,setValues:As,setPartialValues:e=>Ls(()=>St(e,1)?Pe(e,(e,t)=>Nt(t,e)):0),setValue:Bs,applyChanges:e=>Ls(()=>Ct(e,()=>B(o[13],t=>bt(()=>t(ee(e))),()=>e),e=>{Pe(e[0],(e,t)=>O(e)?Xs(t):Pe(e,(e,s)=>O(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=>(te(()=>Wt(It(e))),on),setJson:e=>Ls(()=>te(()=>{const[t,s]=It(e);Dt(t),Wt(s)},()=>Us(e))),setTablesSchema:qs,setValuesSchema:Gs,setSchema:(e,t)=>Ls(()=>{qs(e),Gs(t)}),delTables:Ks,delTable:Xs,delRow:Ys,delCell:Zs,delValues:$s,delValue:en,delTablesSchema:tn,delValuesSchema:sn,delSchema:()=>Ls(()=>{tn(),sn()}),transaction:nn,startTransaction:ln,getTransactionChanges:()=>ps(),getTransactionLog:()=>[!Le(W),!Le(H),$e(W,us,gs),$e(J),Ye(H,us,gs),Ye(x),Ye(b),Ze(D),$e(E),Ye(_)],finishTransaction:an,forEachTable:e=>Se(Y,(t,s)=>e(s,e=>Se(t,(t,s)=>e(s,e=>qe(t,(t,s)=>e(t,Kt(s))))))),forEachTableCell:(e,t)=>qe(Ue(q,k(e)),t),forEachRow:(e,t)=>Se(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(Z,(t,s)=>e(t,Kt(s))),addSortedRowIdsListener:(e,t,s,n,l,a,o)=>De(e)?Ts(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):Ts(e,t,[s,n,l],a,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($),tables:ds(ne),tableIds:ds(ae),hasTable:ds(de),table:ds(ce),tableCellIds:ds(ue),hasTableCell:ds(he,Re),rowCount:ds(fe),rowIds:ds(be),sortedRowIds:ds(Te),hasRow:ds(me,Re),row:ds(ye,Re),cellIds:ds(ke,Re),hasCell:ds(Me,ve),cell:ds(Ee,ve),invalidCell:ds(_e,ve),hasValues:ds(Fe),values:ds(Oe),valueIds:ds(ze),hasValue:ds(nt),value:ds(ot),invalidValue:ds(xe),transaction:we(rt)+ds(it)}),isMergeable:()=>!1,_:[bs,dt,gt,(e,t,s,n,l)=>r=[e,t,s,n,l],(e,t,s,n,l,a,r,i,d,c,u,g,h,f,b)=>o=[e,t,s,n,l,a,r,i,d,c,u,g,h,f,b],Et,_t,()=>[$e(Y),Ye(Z)],()=>ps(!0)]};return Pe({[f+w]:[0,$,[],()=>[Js()]],[w]:[0,ne],[R]:[0,ae],[f+C]:[1,de,[Vs],e=>[xs(...e)]],[C]:[1,ce,[Vs]],[C+S]:[1,ue,[Vs]],[f+C+p]:[2,he,[Vs,ms],e=>[Ps(...e)]],[I]:[1,fe,[Vs]],[L]:[1,be,[Vs]],[f+v]:[2,me,[Vs,ks],e=>[Fs(...e)]],[v]:[2,ye,[Vs,ks]],[S]:[2,ke,[Vs,ks]],[f+p]:[3,Me,[Vs,ks,Ds],e=>[Qs(...e)]],[p]:[3,Ee,[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],l)=>{on[h+l+u]=(...l)=>dt(l[e],t[l[e+1]?1:0],e>0?X(l,0,e):void 0,s,n)}),We(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)=>[ls(e),ls(e)],Rs=(e,s)=>{let n=1,l=ws(),a=0,o=0;const r=Ae(),i=lt(),[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={},a={},[[o,r=t,i=0],d]=e,[u,g]=l,[h,f,b]=u;let w=s?i:b,R=r;xe(o,([e,l=t,a=0],o)=>{const r=Ke(h,o,ls),[i,d,c]=r;let u=s?a:c,g=l;xe(e,(e,t)=>{const[l,a,r]=C(e,Ke(i,t,ls),Oe(Oe(n,o,_e),t,_e),s);u^=s?0:St(a?mt(t,a):0,mt(t,r)),g=ts(g,l)}),u^=s?0:es(d,l),ss(r,l,u),w^=s?0:St(c?mt(o,c):0,mt(o,r[2])),R=ts(R,g)}),w^=s?0:es(f,r),ss(u,r,w);const[v]=C(d,g,a,s);return c(ts(R,v)),[n,a,1]},C=(e,s,n,l)=>{const[a,o=t,r=0]=e,[i,d,c]=s;let u=o,g=l?r:c;return xe(a,([e,s=t,a=0],o)=>{const r=Ke(i,o,()=>[void 0,t,0]),[,d,c]=r;(!d||s>d)&&(ss(r,s,l?a:yt(e,s)),r[0]=e,n[o]=e,g^=l?0:St(mt(o,c),mt(o,r[2])),u=ts(u,s))}),g^=l?0:es(d,o),ss(s,o,g),[u,c,s[2]]},w=$,R=$,v=(e=!1)=>[as(l[0],t=>as(t,t=>as(t,([t,s,n])=>[Kt(t,0,e),s,n]))),as(l[1],([t,s,n])=>[Kt(t,0,e),s,n])],I=(e,t=!1)=>{const[[s,n,a],[o,d,c]]=l,u=e?Zt:Yt,g={};Se(r,(e,n)=>B(Ue(s,n),([s,l,a])=>{const o={};Se(e,(e,n)=>B(Ue(s,n),([s,l,a])=>{const r={};Se(e,e=>{B(Ue(s,e),([s,n,l])=>r[e]=u(t?s:Kt(s),n,l))}),o[n]=u(r,l,a)})),g[n]=u(o,l,a)}));const h={};return Se(i,e=>B(Ue(o,e),([s,n,l])=>h[e]=u(t?s:Kt(s),n,l))),[u(g,n,a),u(h,d,c),1]},L=()=>v(),T=e=>f(()=>g.applyChanges(b(e))),p={getMergeableContent:L,getMergeableContentHashes:()=>[l[0][2],l[1][2]],getMergeableTableHashes:()=>Ye(l[0][0],$t),getMergeableTableDiff:e=>{const t=ns(l[0][1]),s={};return qe(l[0][0],(n,[l,a,o])=>He(e,n)?o!=e[n]?s[n]=o:0:t[0][n]=os([l,a],e=>os(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return xe(e,(e,s)=>B(Ue(l[0][0],s),([n,,l])=>l!=e?qe(n,(e,[,,n])=>Oe(t,s,_e)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=ns(l[0][1]),s={};return xe(e,(e,n)=>qe(Ue(l[0][0],n)?.[0],(l,[a,o,r])=>He(e,l)?r!==e[l]?Oe(s,n,_e)[l]=r:0:Oe(t[0],n,ns)[0][l]=os([a,o]))),[t,s]},getMergeableCellHashes:e=>{const t={};return xe(e,(e,s)=>B(Ue(l[0][0],s),([n])=>xe(e,(e,l)=>B(Ue(n,l),([n,,a])=>a!==e?qe(n,(e,[,,n])=>Oe(Oe(t,s,_e),l,_e)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=l,n={};return xe(e,(e,s)=>xe(e,(e,l)=>B(Ue(t,s),([t,a])=>B(Ue(t,l),([t,o])=>qe(t,(t,[r,i,d])=>d!==e[t]?Oe(Oe(n,s,()=>ns(a))[0],l,()=>ns(o))[0][t]=[r,i]:0))))),Yt(n,s)},getMergeableValueHashes:()=>Ye(l[1][0],$t),getMergeableValueDiff:e=>{const[,[t,s]]=l,n=Ye(t,Xt,([,,t],s)=>t==e?.[s]);return Yt(n,s)},setMergeableContent:e=>f(()=>(e=>K(e)&&2==Y(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(),l=ws(),g.applyChanges(b(e,1))}):0),setDefaultContent:e=>(g.transaction(()=>{a=1,g.setContent(e),a=0}),p),getTransactionMergeableChanges:(e=!1)=>I(e),applyMergeableChanges:T,merge:e=>{const t=L(),s=e.getMergeableContent();return e.applyMergeableChanges(t),T(s)},__:[()=>{const e=o;return o=0,e},()=>v(!0),e=>I(e,!0)]};return g._[3](w,R,()=>{pe(r),pe(i)},(e,s,l,i,c)=>{at(Ke(Ke(r,e,Ae),s,lt),l),(n||c)&&(c&&(o=1),b([[{[e]:[{[s]:[{[l]:[i,a?t:d()]}]}]}],[{}],1]))},(e,s,l)=>{at(i,e),(n||l)&&(l&&(o=1),b([[{}],[{[e]:[s,a?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[X(t,3,-8)]??0,l=s[n];return s[n]=(e,...t)=>l(p,...t),e(...s)}:"isMergeable"==t?()=>!0:e),We(p)},vs=Ae([["avg",[(e,t)=>de(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=>de(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Is=(e,t,s,n,l,a=!1)=>{if(Le(s))return;const[o,r,i,d]=l;return a||=O(e),Se(n,([s,n])=>{a||(e=O(s)?r?.(e,n,t++):O(n)?i?.(e,s,t--):d?.(e,n,s,t),a||=O(e))}),a?o(Te(s),Ce(s)):e},Ls=it(e=>{const s=Ae(),[n,l,a]=ut(()=>w),[o,r,i,d,c,u,g,,h,f,b,C]=ot(e,Z,e=>isNaN(e)||O(e)||z(e)||!1===e||e===t?void 0:1*e,n,l),w={setMetricDefinition:(e,t,n,a,o,r,i)=>{const d=G(n)?[n,o,r,i]:Ue(vs,n)??Ue(vs,"sum");return h(e,t,(t,n,a,o,r,i)=>{const c=u(e),h=Ce(o);i||=O(c),t();let f=Is(c,h,o,n,d,i);Q(f)||(f=void 0),f!=c&&(g(e,f),l(s,[e],f,c))},rt(a,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=>(a(e),w),destroy:C,getListenerStats:()=>({metric:we(s)})};return We(w)}),Ts=(e,t,...s)=>ue(e,(e,t)=>O(e)?e:t(...s,e),t),ps=(e,...t)=>ne(e,e=>e(...t)),Ss=it(e=>{const t=e=>t=>(ge(e,t),D),s=[],n=[],l=[],a=[],o=[],r=[],i=[],d=[],c=[],u=[],g=[],h=[],f=[],b=[],C=t(s),w=t(n),R=t(l),v=t(a),I=t(o),L=t(r),T=t(i),p=t(d),S=t(c),V=t(u),m=t(g),y=t(h),k=t(f),M=t(b),D=We({getStore:()=>e,addWillSetContentCallback:C,addWillSetTablesCallback:w,addWillSetTableCallback:R,addWillSetRowCallback:v,addWillSetCellCallback:I,addWillSetValuesCallback:L,addWillSetValueCallback:T,addWillDelTablesCallback:p,addWillDelTableCallback:S,addWillDelRowCallback:V,addWillDelCellCallback:m,addWillDelValuesCallback:y,addWillDelValueCallback:k,addWillApplyChangesCallback:M,destroy:()=>{}});return e._[4](e=>Ts(s,e),e=>Ts(n,e),(e,t)=>Ts(l,t,e),(e,t,s)=>Ts(a,s,e,t),(e,t,s,n)=>Ts(o,n,e,t,s),e=>Ts(r,e),(e,t)=>Ts(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=>Ts(b,e),()=>a.length>0),D}),Vs="_",ms=it(e=>{const s=e._[0],n=s(),l=s(),a=Ae(),o=Ae(),r=lt(),i=Ae(),d=Ae(),c={table:0,tableCellIds:0,rowCount:0,rowIds:0,sortedRowIds:0,row:0,cellIds:0,cell:0},f=Ae(),b=Ae(),{_:[,w,R],delListener:V}=l,[m,y,k,M,D,E,W,_,,H,J,x]=ot(e,()=>[],Z,w,R),P=e=>Ke(o,e,s),F=(e,t,...s)=>re(s,s=>at(Ke(Ke(f,t,Ae),e,lt),s)),Q=e=>{B(Ue(f,e),e=>{qe(e,(e,t)=>Se(t,t=>e.delListener(t))),pe(e)}),re([P(e),Ue(a,e)],t=>t?.delTable(e))},N=(e,t,s,...n)=>{const l=Ke(Ke(b,t,Ae),e,lt);return re(n,t=>{at(l,t),s&&e.callListener(t)}),n},j=(e,t,s)=>B(Ue(Ue(b,e),t),n=>{t.delListener(s),Ve(n,s),Le(n)&&Ge(Ue(b,e),t)}),A=e=>B(Ue(b,e),e=>{qe(e,(e,t)=>Se(t,t=>e.delListener(t))),pe(e)}),U=(e,t,s)=>F(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener(()=>s.finishTransaction())),q=(e,t)=>(Qe(t)?n.delRow:n.setRow)(Vs,e,{...t}),K=n=>P(n).transaction(()=>B(E(n),([l,,o])=>{const i=D(n),d=o?P(i):e,c=P(n),u=ee(n);at(r,n),Q(n),A(n);const g=[],h=[[void 0,[i,void 0,void 0,[],Ae(),d]]],f=[],b=[],C=[];l({select:(e,s,n)=>{const l=z(e)?s:e,a=z(e)?n:s,o=G(e)?[Y(g)+t,e]:O(a)?[e,t=>t(e)]:[a,t=>z(e)?t(!0,l,a):t(l,a)];return ge(g,o),{as:e=>o[0]=e}},join:(t,s,n,l)=>{const a=z(t)?s:t,[o,r]=z(t)?O(l)||G(n)?[void 0,n]:[n,l]:O(n)||G(s)?[void 0,s]:[s,n],i=[a,[a,o,G(r)?r:e=>e(r),[],Ae(),z(t)?P(a):e]];return ge(h,i),{as:e=>i[0]=e}},where:(e,t,s,n)=>ge(f,G(e)?e:z(e)?e=>e(!0,t,s)===n:O(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,l)=>{const a=[e,[e,G(t)?[t,s,n,l]:Ue(vs,t)??[(e,t)=>t]]];return ge(b,a),{as:e=>a[0]=e}},having:(e,t)=>ge(C,G(e)?e:s=>s(e)===t),param:e=>((e,t)=>B(e,e=>e[t]))(u,e)});const w=Ae(g);if(Le(w))return Ve(r,n),te;const R=Ae(h);qe(R,(e,[,t])=>B(Ue(R,t),({3:t})=>O(e)?0:ge(t,e)));const v=Ae(b),I=!Le(v)||!ce(C),L=I?(e=>Ke(a,e,s))(n):c;if(I){U(n,L,c);const e=Ae();qe(v,(t,[s,n])=>at(Ke(e,s,lt),[t,n]));const t=lt();qe(w,s=>Ie(e,s)?0:at(t,s));const s=Ae(),l=(t,s,l,a)=>B(t,([o,r,i,d])=>{qe(s,(t,[s])=>{const n=Ke(o,t,Ae),r=Ue(n,l),i=a?void 0:s;if(r!==i){const s=lt([[r,i]]),a=Ce(n);Ge(n,l,i),Se(Ue(e,t),([e,t])=>{const l=Is(d[e],a,n,s,t);d[e]=O(At(l))?void 0:l})}}),Le(r)||!ne(C,e=>e(e=>d[e]))?c.delRow(n,i):O(i)?t[2]=c.addRow(n,d):c.setRow(n,i,d)});F(L,n,L.addRowListener(n,null,(a,o,r,i)=>{const d=[],c=[],u=Ae(),g=L.hasRow(n,r);let h=!g;Se(t,e=>{const[t,s,l]=i(n,r,e);ge(d,s),ge(c,l),h||=t}),qe(e,e=>{const[t,,s]=i(n,r,e);(h||t)&&Ge(u,e,[s])}),h&&l(nt(s,d,void 0,([,e])=>(Ve(e,r),Le(e))),u,r,1),g&&l(nt(s,c,()=>{const e={};return Se(t,t=>e[t]=L.getCell(n,r,t)),[Ae(),lt(),void 0,e]},([,e])=>{at(e,r)}),u,r)}))}U(n,d,L);const T=(e,t,s,l,a)=>{const o=e=>t.getCell(s,l,e);re(a,t=>{const[s,,l,a,r,i]=Ue(R,t),d=l?.(o,e),c=Ue(r,e),u=c?.[0];d!=u&&(B(c,([,e,t])=>j(n,e,t)),Ge(r,e,O(d)?void 0:[d,i,...N(i,n,1,i.addRowListener(s,d,()=>T(e,i,s,d,a)))]))}),(e=>{const t=(t,s,n)=>{const l=z(t)?s:t,a=z(t)?n:s;if(O(a))return d.getCell(i,e,t);if(l===i&&!z(t))return d.getCell(i,e,a);const o=Ue(R,l);return O(o)?void 0:o[5].getCell(o[0],Ue(o[4],e)?.[0],a)};L.transaction(()=>ne(f,e=>e(t))?qe(w,(s,l)=>L._[5](n,e,s,l(t,e))):L.delRow(n,e))})(e)},{3:p}=Ue(R,void 0),S=(e,t,s)=>{d.hasRow(i,s)?T(s,d,i,s,p):(L.delRow(n,s),Se(R,({4:e})=>B(Ue(e,s),([,t,l])=>{j(n,t,l),Ge(e,s)})))};return L.transaction(()=>{re(d.getRowIds(i),e=>S(0,0,e)),N(d,n,0,d.addRowListener(i,null,S))}),Ve(r,n),te})),$=e=>(B(E(e),([,e])=>n.delListener(e)),n.delRow(Vs,e),Q(e),A(e),H(e),te),ee=e=>n.getRow(Vs,e),te={setQueryDefinition:(e,t,s,l,a={})=>{const[o,r,i,d]=z(t)?[s,l,1,a]:[t,s,0,l??{}];return B(E(e),([,e])=>n.delListener(e)),_(e,o),W(e,[r,n.addRowListener(Vs,e,()=>K(e)),i]),q(e,d),K(e),te},delQueryDefinition:$,getParamValues:ee,getParamValue:(e,t)=>n.getCell(Vs,e,t),setParamValues:(e,t)=>(M(e)&&q(e,t),te),setParamValue:(e,t,s)=>(M(e)&&n.setCell(Vs,e,t,s),te),getStore:m,getQueryIds:y,forEachQuery:k,hasQuery:M,getTableId:D,forEachResultTable:e=>k(t=>P(t).hasTable(t)?e(t,e=>te.forEachResultRow(t,e)):0),addQueryIdsListener:e=>J(()=>e(te)),addParamValuesListener:(e,t)=>"p"+n.addRowListener(Vs,e,(e,s,n)=>t(te,n,ee(n))),addParamValueListener:(e,t,s)=>"p"+n.addCellListener(Vs,e,t,(e,t,n,l,a)=>s(te,n,l,a)),delListener:e=>{const t=Ue(i,e);if("p"==e[0])n.delListener(X(e,1));else if(O(t))V(e);else{const[s,n,l]=t;qe(n,(e,[t,s])=>t.delListener(s)),B(l,V),Ge(i,e),V(e),c[s]--}return te},destroy:()=>{re(y(),$),x()},getListenerStats:()=>({...c,paramValues:n.getListenerStats().row-Y(y()),paramValue:n.getListenerStats().cell})};return Pe({[C]:[2,1],[C+S]:[1,1],[I]:[1,1],[L]:[1,1],[T]:[1,5],[v]:[3,2],[S]:[1,2],[p]:[3,3]},([e,t],s)=>{re(X(["get","has","forEach"],0,e),e=>te[e+g+s]=(...t)=>P(t[0])[e+s](...t)),te[h+g+s+u]=(...e)=>((n,l)=>{const a=w(Z,d),o=Ae(),r=()=>{const n=null==l?y():[l];re(n,n=>{return Ie(o,n)?0:Ge(o,n,[P(n),(l=P(n),l[h+s+u](...((e,t)=>5==t?[e[0],e[1]??void 0,e[2],e[3],e[4]]:X(e,0,t))(e,t),(s,...n)=>e[t](te,...n),!0))]);var l}),qe(o,(e,[t,s])=>null==l&&M(e)||e==l?0:(t.delListener(s),void Ge(o,e)))};return r(),Ge(i,a,[n,o,null==l?J(r):void 0]),c[n]++,a})((e=>e[0].toLowerCase()+X(e,1))(s),e[0])}),We(te)}),ys=it(e=>{const s=Ae(),n=Ae(),l=Ae(),a=Ae(),[o,r,i]=ut(()=>T),[d,c,u,g,h,f,,,b,C,w,R]=ot(e,()=>[Ae(),Ae(),Ae(),Ae()],e=>O(e)?void 0:e+t,o,r),v=(e,t,s)=>B(f(e),([n,,l])=>{if(!Ie(l,t)){const a=lt();if(h(e)!=L(e))at(a,t);else{let e=t;for(;!O(e)&&!Ie(a,e);)at(a,e),e=Ue(n,e)}if(s)return a;Ge(l,t,a)}return Ue(l,t)}),I=(e,t)=>B(f(e),([,,e])=>Ge(e,t)),L=e=>Ue(s,e),T={setRelationshipDefinition:(e,t,o,i)=>(Ge(s,e,o),b(e,t,(t,s)=>{const o=lt(),i=lt(),d=lt(),[c,u]=f(e);Se(s,([t,s],n)=>{O(t)||(at(i,t),B(Ue(u,t),e=>{Ve(e,n),Le(e)&&Ge(u,t)})),O(s)||(at(i,s),Ie(u,s)||Ge(u,s,lt()),at(Ue(u,s),n)),at(o,n),Ge(c,n,s),qe(Ue(a,e),t=>{Ie(v(e,t),n)&&at(d,t)})}),t(),Se(o,t=>r(n,[e,t])),Se(i,t=>r(l,[e,t])),Se(d,t=>{I(e,t),r(a,[e,t])})},rt(i)),T),delRelationshipDefinition:e=>(Ge(s,e),C(e),T),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u(s=>t(s,t=>e.forEachRow(h(s),t))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:L,getRemoteRowId:(e,t)=>Ue(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(Ue(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>O(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,l,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),o(s,a,[e,t])),delListener:e=>(I(...i(e)??[]),T),destroy:R,getListenerStats:()=>({remoteRowId:Re(n),localRowIds:Re(l),linkedRowIds:Re(a)})};return We(T)});export{St as addOrRemoveHash,gt as createCheckpoints,zt as createIndexes,Rs as createMergeableStore,Ls as createMetrics,Ss as createMiddleware,ms as createQueries,ys 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,Rt as getUniqueId,yt as getValueHash,mt as getValueInValuesHash,Vt as getValuesHash};
|
package/min/index.js.gz
CHANGED
|
Binary file
|
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",I="Result",T="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),B=(e,t)=>e?.match(t),z=(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=X.max,re=X.min,ie=X.floor,le=X.random,ce=isFinite,de=e=>null==e,ue=e=>void 0===e,ge=e=>null===e,we=e=>!0===e,he=e=>!1===e,ye=K(de),fe=K(ue),be=e=>e==g||e==w,ve=e=>l(e)==g,Se=e=>l(e)==y,Ce=e=>Array.isArray(e),pe=(e,t,a)=>e.slice(t,a),me=e=>e.length,Re=()=>{},Ie=()=>{},Te=e=>new Y(e),Le=async e=>Y.all(e),Ee=Z.structuredClone,De=e=>{throw Error(e)},Ne=async(e,t,a)=>{try{return await e()}catch(e){t?.(e)}},Me=(e,t)=>e.includes(t),Oe=(e,t)=>e.every(t),Ae=(e,t)=>me(e)===me(t)&&Oe(e,(e,a)=>t[a]===e),Pe=(e,t)=>Oe(e,(a,s)=>0==s||t(e[s-1],a)<=0),ke=(e,t)=>e.sort(t),_e=(e,t)=>e.forEach(t),Ve=(e,t=d)=>e.join(t),$e=(e,t)=>e.map(t),xe=e=>He(e,(e,t)=>e+t,0),We=e=>0==me(e),He=(e,t,a)=>e.reduce(t,a),Fe=(e,t)=>e.filter(t),Je=(e,t)=>e.splice(0,t),Ue=(e,...t)=>e.push(...t),je=e=>e.pop(),Ge=(e,...t)=>e.unshift(...t),qe=e=>e.shift(),Be=e=>t=>He(et(t),(t,a)=>t+e(a),0),ze=e=>e?.size??0,Qe=Be(ze),Ye=Be(Qe),Xe=Be(Ye),Ke=(e,t)=>e?.has(t)??!1,Ze=e=>ue(e)||0==ze(e),et=e=>[...e?.values()??[]],tt=e=>e.clear(),at=(e,t)=>e?.forEach(t),st=(e,t)=>e?.delete(t),nt=Object,ot=e=>nt.getPrototypeOf(e),rt=nt.isFrozen,it=nt.entries,lt=e=>!de(e)&&ye(ot(e),e=>e==nt.prototype||de(ot(e)),()=>!0),ct=nt.keys,dt=nt.freeze,ut=(e=[])=>nt.fromEntries(e),gt=(...e)=>nt.assign({},...e),wt=(e,t)=>fe(e,e=>e[t]),ht=(e,t)=>t in e,yt=(e,t)=>(delete e[t],e),ft=(e,t)=>_e(it(e),([e,a])=>t(a,e)),bt=(e,t)=>$e(it(e),([e,a])=>t(a,e)),vt=(e,t)=>ut(bt(e,(e,a)=>[a,t(e,a)])),St=e=>nt.values(e),Ct=e=>me(ct(e)),pt=e=>lt(e)&&0==Ct(e),mt=(e,t,a=(e,t)=>e===t)=>{const s=it(e);return me(s)===Ct(t)&&Oe(s,([e,s])=>lt(s)?!!lt(t[e])&&mt(t[e],s,a):a(s,t[e]))},Rt=(e,t,a)=>(ht(e,t)||(e[t]=a()),e[t]),It=(e,t,a,s=0)=>de(e)||!lt(e)||!s&&pt(e)||rt(e)?(a?.(),!1):(ft(e,(a,s)=>{t(a,s)||yt(e,s)}),!!s||!pt(e)),Tt=Map,Lt=e=>new Tt(e),Et=e=>[...e?.keys()??[]],Dt=(e,t)=>e?.get(t),Nt=(e,t)=>at(e,(e,a)=>t(a,e)),Mt=(e,t)=>$e([...e?.entries()??[]],([e,a])=>t(a,e)),Ot=(e,t,a)=>ue(a)?(st(e,t),e):e?.set(t,a),At=(e,t,a,s)=>(Ke(e,t)?s?.(Dt(e,t)):Ot(e,t,a()),Dt(e,t)),Pt=(e,t,a,s=Ot)=>(vt(t,(t,s)=>a(e,s,t)),Nt(e,a=>ht(t,a)?0:s(e,a)),e),kt=(e,t,a,s)=>{const n={};return at(e,(e,o)=>{if(!a?.(e,o)){const a=t?t(e,o):e;s?.(a)||(n[o]=a)}}),n},_t=(e,t,a)=>kt(e,e=>kt(e,t,a),Ze,pt),Vt=(e,t,a)=>kt(e,e=>_t(e,t,a),Ze,pt),$t=(e,t)=>{const a=Lt();return at(e,(e,s)=>a.set(s,t?.(e)??e)),a},xt=e=>$t(e,$t),Wt=e=>$t(e,xt),Ht=(e,t,a,s,n=0)=>fe((a?At:Dt)(e,t[n],n>me(t)-2?a:Lt),o=>{if(n>me(t)-2)return s?.(o)&&Ot(e,t[n]),o;const r=Ht(o,t,a,s,n+1);return Ze(o)&&Ot(e,t[n]),r}),Ft=e=>new Set(Ce(e)||ue(e)?e:[e]),Jt=(e,t)=>e?.add(t),Ut=(e,t,a,s,n)=>{const o=e.hasRow,r=Lt(),i=Lt(),l=Lt(),c=Lt(),d=Lt(),u=Lt(),g=t=>fe(Dt(u,t),a=>{_e(et(a),t=>{e.delListener(t),st(a,t)}),Ot(u,t)}),w=(e,a)=>{Ot(r,e,a),Ke(i,e)||(Ot(i,e,t()),Ot(c,e,Lt()),Ot(d,e,Lt()),n(l))},h=e=>{Ot(r,e),Ot(i,e),Ot(c,e),Ot(d,e),g(e),n(l)};return[()=>e,()=>Et(r),e=>Nt(i,e),e=>Ke(i,e),e=>Dt(r,e),e=>Dt(i,e),(e,t)=>Ot(i,e,t),w,(t,s,n,r,i)=>{w(t,s);const l=Lt(),h=Lt(),y=Dt(c,t),f=Dt(d,t),b=t=>{const n=a=>e.getCell(s,t,a),c=Dt(y,t),d=o(s,t)?a(r(n,t)):void 0;if(c===d||Ce(c)&&Ce(d)&&Ae(c,d)||Ot(l,t,[c,d]),!ue(i)){const e=Dt(f,t),a=o(s,t)?i(n,t):void 0;e!=a&&Ot(h,t,a)}},v=e=>{n(()=>{at(l,([,e],t)=>Ot(y,t,e)),at(h,(e,t)=>Ot(f,t,e))},l,h,y,f,e),tt(l),tt(h)};Nt(y,b),e.hasTable(s)&&_e(e.getRowIds(s),e=>{Ke(y,e)||b(e)}),v(!0),g(t),((e,...t)=>{const a=At(u,e,Ft);_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),()=>Nt(u,h)]},jt=(e,t)=>ve(e)?t=>t(e):e??(()=>t??d),Gt=(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}},qt=/^\d+$/,Bt=()=>{const e=[];let t=0;return[a=>(a?qe(e):null)??d+t++,t=>{qt.test(t)&&me(e)<1e3&&Ue(e,t)}]},zt=e=>{let t;const[a,s]=Bt(),n=Lt();return[(s,o,r,i=[],l=()=>[])=>{t??=e();const c=a(1);return Ot(n,c,[s,o,r,i,l]),Jt(Ht(o,r??[d],Ft),c),c},(e,a,...s)=>_e(((e,t=[d])=>{const a=[],s=(e,n)=>n==me(t)?Ue(a,e):ge(t[n])?at(e,e=>s(e,n+1)):_e([t[n],null],t=>s(Dt(e,t),n+1));return s(e,0),a})(e,a),e=>at(e,e=>Dt(n,e)[0](t,...a??[],...s))),e=>fe(Dt(n,e),([,t,a])=>(Ht(t,a??[d],void 0,t=>(st(t,e),Ze(t)?1:0)),Ot(n,e),s(e),a)),e=>fe(Dt(n,e),([e,,a=[],s,n])=>{const o=(...r)=>{const i=me(r);i==me(a)?e(t,...r,...n(r)):ge(a[i])?_e(s[i]?.(...r)??[],e=>o(...r,e)):o(...r,a[i])};o()})]},Qt=Gt(e=>{let t,a,s,n=100,o=Lt(),r=Lt(),i=1;const l=Lt(),c=Lt(),[u,g,w]=zt(()=>P),h=Lt(),y=Lt(),f=[],b=[],v=(t,a)=>{i=0,e.transaction(()=>{const[s,n]=Dt(h,a);at(s,(a,s)=>at(a,(a,n)=>at(a,(a,o)=>e._[5](s,n,o,a[t],!0)))),at(n,(a,s)=>e._[6](s,a[t],!0))}),i=1},S=e=>{Ot(h,e),Ot(y,e),g(c,[e])},C=(e,t)=>_e(Je(e,t??me(e)),S),p=()=>C(f,me(f)-n),m=()=>fe(t,()=>{Ue(f,t),p(),C(b),t=void 0,s=1}),R=()=>{t=je(f),s=1};let I,T;const L=(e=d)=>(ue(t)&&(t=d+a++,Ot(h,t,[o,r]),O(t,e),o=Lt(),r=Lt(),s=1),t),E=()=>{We(f)||(Ge(b,L()),v(0,t),t=je(f),s=1)},D=()=>{We(b)||(Ue(f,t),t=qe(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)&&Dt(y,e)!==t&&(Ot(y,e,t),g(c,[e])),P),A=e=>Ke(h,e),P={setSize:e=>(n=e,p(),P),addCheckpoint:M,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...f],t,[...b]],forEachCheckpoint:e=>Nt(y,e),hasCheckpoint:A,getCheckpoint:e=>Dt(y,e),goBackward:()=>(E(),N(),P),goForward:()=>(D(),N(),P),goTo:e=>{const a=Me(f,e)?E:Me(b,e)?D:void 0;for(;!ue(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),ue(t)||S(t),t=void 0,a=0,M(),P),clearForward:()=>(We(b)||(C(b),g(l)),P),destroy:()=>{e.delListener(I),e.delListener(T)},getListenerStats:()=>({checkpointIds:Qe(l),checkpoint:Qe(c)}),_registerListeners:()=>{I=e.addCellListener(null,null,null,(e,t,a,s,n,r)=>{if(i){m();const e=At(o,t,Lt),i=At(e,a,Lt),l=At(i,s,()=>[r,void 0]);l[1]=n,l[0]===n&&Ze(Ot(i,s))&&Ze(Ot(e,a))&&Ze(Ot(o,t))&&R(),N()}}),T=e.addValueListener(null,(e,t,a,s)=>{if(i){m();const e=At(r,t,()=>[s,void 0]);e[1]=a,e[0]===a&&Ze(Ot(r,t))&&R(),N()}})}};return dt(P.clear())},e=>e._registerListeners()),Yt=z("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),Xt=Lt($e(Yt,(e,t)=>[e,t])),Kt=e=>Yt[63&e],Zt=(e,t)=>Dt(Xt,e[t])??0,ea=Z.crypto?e=>Z.crypto.getRandomValues(e):e=>$e(e,()=>ie(256*le())),ta=(e=16)=>He(ea(new Uint8Array(e)),(e,t)=>e+Kt(t),d),aa=JSON.stringify,sa=JSON.parse,na=e=>aa(e,(e,t)=>t instanceof Map?nt.fromEntries([...t]):t),oa=e=>aa(e,(e,t)=>ue(t)?"":t),ra=e=>ia(sa(e)),ia=e=>""===e?void 0:Ce(e)?$e(e,ia):lt(e)?vt(e,ia):e,la=new Z.TextEncoder,ca=e=>{let t=2166136261;return _e(la.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},da=(e,t)=>(e^t)>>>0,ua=e=>He(it(e),(e,[t,a])=>da(e,ga(t,a)^ga(t,0)),0),ga=(e,t)=>ca(e+":"+t),wa=(e,t)=>ca(na(e??null)+":"+t),ha=wa,ya=ga,fa=ua,ba=ga,va=e=>He(it(e),(e,[t,a])=>da(e,ga(t,a)),0),Sa=ga,Ca=va,pa=2**36,ma=2**30,Ra=2**24,Ia=2**18,Ta=4096,La=e=>{const t=ca(e);return Kt(t/Ra)+Kt(t/Ia)+Kt(t/Ta)+Kt(t/64)+Kt(t)},Ea=(e,t=Date.now)=>{let a=0,s=-1;const n=fe(e,La,()=>ta(5)),o=e=>{const n=a,[o,r]=ue(e)||e==d?[0,0]:i(e);a=oe(n,o,t()),s=a==n?a==o?oe(s,r):s:a==o?r:-1},r=(e,t,a)=>Kt(e/pa)+Kt(e/ma)+Kt(e/Ra)+Kt(e/Ia)+Kt(e/Ta)+Kt(e/64)+Kt(e)+Kt(t/Ia)+Kt(t/Ta)+Kt(t/64)+Kt(t)+(ue(a)?n:La(a)),i=e=>[Zt(e,0)*pa+Zt(e,1)*ma+Zt(e,2)*Ra+Zt(e,3)*Ia+Zt(e,4)*Ta+64*Zt(e,5)+Zt(e,6),Zt(e,7)*Ia+Zt(e,8)*Ta+64*Zt(e,9)+Zt(e,10),e.slice(11)];return[()=>(o(),r(a,++s)),o,r,i,()=>a,()=>s,()=>n]},Da=(e,t)=>(e??0)<(t??0)?-1:1,Na=Gt(e=>{const t=Lt(),a=Lt(),[s,n,o]=zt(()=>S),[r,i,l,c,u,g,w,,h,y,f,b]=Ut(e,Lt,e=>ue(e)?d:Ce(e)?$e(e,j):j(e),s,n),v=(t,a,s)=>{const n=u(t);at(s,(t,s)=>a(s,a=>at(t,t=>a(t,a=>e.forEachCell(n,t,a)))))},S={setIndexDefinition:(e,s,o,r,i,l=Da)=>{const c=ue(i)?void 0:([e],[t])=>i(e,t);return h(e,s,(s,o,i,d,u,h)=>{let y=0;const f=Ft(),b=Ft(),v=g(e);if(at(o,([e,t],a)=>{const s=Ft(e),n=Ft(t);at(s,e=>st(n,e)?st(s,e):0),at(s,e=>{Jt(f,e),fe(Dt(v,e),t=>{st(t,a),Ze(t)&&(Ot(v,e),y=1)})}),at(n,e=>{Jt(f,e),Ke(v,e)||(Ot(v,e,Ft()),y=1),Jt(Dt(v,e),a),ue(r)||Jt(b,e)})}),s(),Ze(u)||(h?Nt(v,e=>Jt(b,e)):Nt(i,e=>fe(Dt(d,e),e=>_e(Ce(e)?e:[e],e=>Jt(b,e)))),at(b,e=>{const t=(t,a)=>l(Dt(u,t),Dt(u,a),e),a=[...Dt(v,e)];Pe(a,t)||(Ot(v,e,Ft(ke(a,t))),Jt(f,e))})),(y||h)&&!ue(c)){const t=[...v];Pe(t,c)||(w(e,Lt(ke(t,c))),y=1)}y&&n(t,[e]),at(f,t=>n(a,[e,t]))},jt(o),fe(r,jt)),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)=>Ke(g(e),t),getTableId:u,getSliceIds:e=>Et(g(e)),getSliceRowIds:(e,t)=>et(Dt(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:Qe(t),sliceRowIds:Ye(a)})};return dt(S)}),Ma=e=>{if(ge(e))return"null";if(Ce(e))return b;if(lt(e))return f;const t=l(e);return be(t)||t==h&&ce(e)?t:void 0},Oa=e=>ue(e)||!ue(Ma(e)),Aa=e=>e==f||e==b,Pa=e=>lt(e)||Ce(e)?"�"+aa(e):e,ka=e=>ve(e)&&"�"==e[0],_a=(e,t,a)=>!a&&ka(e)?sa(pe(e,1)):e,Va=([e,t])=>$a(e,t),$a=(e,t)=>t?[e,t]:[e],xa=(e,t,a)=>[e,t,a],Wa=e=>e[2],Ha=(e,t)=>t>e?(e?ca(e):0)^ca(t):0,Fa=(e,t)=>((e??d)>(t??d)?e:t)??d,Ja=(e,t,a)=>{t>e[1]&&(e[1]=t),e[2]=a>>>0},Ua=(e=d)=>$a(ut(),e),ja=(e=d)=>[Lt(),e,0],Ga=([e,t,a],s)=>[kt(e,s),t,a],qa=([e,t],a=Va)=>$a(kt(e,a),t),Ba=(e,t)=>{return Ce(e)&&3==me(e)&&ve(e[1])&&(a=e[2],l(a)==h)&&ce(e[2])&&t(e[0]);var a},za=e=>[e,e],Qa=(e,t=Qe)=>t(e[0])+t(e[1]),Ya=()=>[Lt(),Lt()],Xa=e=>[...e],Ka=([e,t])=>e===t,Za=(e,t,a)=>Ot(e,t,Dt(e,t)==-a?void 0:a),es=([e,t],[a,s])=>mt(e,a)&&mt(t,s),ts=()=>{let e,t,a=!1,s=!1,n=0,o=[],r=[],i=0;const l=Lt(),c=Lt(),d=Lt(),u=Lt(),g=Lt(),w=Lt(),y=Lt(),f=Lt(),b=Lt(),v=Lt(),m=Lt(),I=Lt(),E=Lt(),k=Lt(),H=Ft(),F=Lt(),J=Lt(),U=Lt(),G=Lt(),q=Ya(),B=Ya(),z=Ya(),Q=Ya(),Y=Ya(),X=Ya(),K=Ya(),Z=Ya(),ee=Ya(),te=Ya(),ae=Ya(),se=Ya(),ne=Ya(),oe=Ya(),re=Ya(),ie=Ya(),le=Ya(),ce=Ya(),de=Ya(),we=Ya(),he=Ya(),ye=Ya(),ve=Lt(),me=Ya(),[Re,Ie,Te,Le]=zt(()=>is),De=e=>{const t=i;i=1;const a=e();return i=t,a},Oe=(e,t,a,s=Object.is)=>fe(t(),t=>e===t||s(e,t)?a(t):De(()=>a(t))),Pe=e=>{if(!It(e,(e,t)=>Me([S,C,p],t)))return!1;const t=e[S];if(!be(t)&&t!=h&&!Aa(t))return!1;const a=e[C];return!(ge(a)&&!e[p]||(ge(a)||(Ma(a)!=t?yt(e,C):e[C]=Pa(a)),0))},Ve=Ce,xe=(t,a)=>(!e||Ke(m,a)||Xt(a))&&It(t,(e,t)=>We(a,t,e),()=>Xt(a)),We=(e,t,a,s)=>It(s?a:je(a,e,t),(s,n)=>fe(He(e,t,n,s),e=>(a[n]=e,!0),()=>!1),()=>Xt(e,t)),He=(t,a,s,n)=>e?fe(Dt(Dt(m,t),s),e=>ge(n)?e[p]?n:Xt(t,a,s,n,e[C]):Ma(n)===e[S]?Pa(n):Aa(e[S])&&ka(n)?n:Xt(t,a,s,n,e[C]),()=>Xt(t,a,s,n)):ue(Ma(n))?Xt(t,a,s,n):Pa(n),Fe=(e,t)=>It(t?e:Ge(e),(t,a)=>fe(Je(a,t),t=>(e[a]=t,!0),()=>!1),()=>Kt()),Je=(e,a)=>t?fe(Dt(E,e),t=>ge(a)?t[p]?a:Kt(e,a,t[C]):Ma(a)===t[S]?Pa(a):Aa(t[S])&&ka(a)?a:Kt(e,a,t[C]),()=>Kt(e,a)):ue(Ma(a))?Kt(e,a):Pa(a),je=(e,t,a)=>(fe(Dt(I,t),([s,n])=>{at(s,(t,a)=>{ht(e,a)||(e[a]=t)}),at(n,s=>{ht(e,s)||Xt(t,a,s)})}),e),Ge=e=>(t&&(at(k,(t,a)=>{ht(e,a)||(e[a]=t)}),at(H,t=>{ht(e,t)||Kt(t)})),e),qe=e=>Pt(m,e,(e,t,a)=>{const s=Lt(),n=Ft();Pt(At(m,t,Lt),a,(e,t,a)=>{Ot(e,t,a),fe(a[C],e=>Ot(s,t,e),()=>Jt(n,t))}),Ot(I,t,[s,n])},(e,t)=>{Ot(m,t),Ot(I,t)}),Be=e=>Pt(E,e,(e,t,a)=>{Ot(E,t,a),fe(a[C],e=>Ot(k,t,e),()=>Jt(H,t))},(e,t)=>{Ot(E,t),Ot(k,t),st(H,t)}),et=e=>pt(e)?Ja():Oa(e),nt=(e,t,a,s,n,o)=>ue(s)?Ga(e,t,a,!0,n):Va(e,t,a,s,n,o),ot=e=>pt(e)?qa():$a(e),rt=(e,t,a)=>ue(t)?Ba(e,a):xa(e,t,a),it=(e,t)=>Oe(e,()=>t?e:fe(o[1],t=>De(()=>t(Ee(e))),()=>e),e=>Pt(U,e,(e,t,a)=>ct(t,a),(e,t)=>Ct(t)),mt),ct=(e,t,a)=>Oe(t,()=>a?t:fe(o[2],a=>De(()=>a(e,Ee(t))),()=>t),t=>Pt(At(U,e,()=>(Ut(e,1),Ot(F,e,Bt()),Ot(J,e,Lt()),Lt())),t,(t,a,s)=>ut(e,t,a,s),(t,a)=>Rt(e,t,a)),mt),ut=(e,t,a,s,n)=>Oe(s,()=>n?s:fe(o[3],t=>De(()=>t(e,a,Ee(s))),()=>s),s=>Pt(At(t,a,()=>(jt(e,a,1),Lt())),s,(t,s,n)=>gt(e,a,t,s,n),(s,o)=>Tt(e,t,a,s,o,n)),mt),gt=(e,t,a,s,n,r)=>Oe(n,()=>fe(r?void 0:o[4],a=>De(()=>a(e,t,s,n)),()=>n),n=>{Ke(a,s)||Gt(e,t,s,1);const o=Dt(a,s);n!==o&&(qt(e,t,s,o,n),Ot(a,s,n))}),wt=(e,t,a,s,n,o)=>fe(Dt(t,a),t=>gt(e,a,t,s,n,o),()=>{const r=Lt();Ot(t,a,r),jt(e,a,1),vt(je({[s]:n},e,a),(t,s)=>gt(e,a,r,s,t,o))}),ft=(e,t)=>Oe(e,()=>t?e:fe(o[5],t=>De(()=>t(Ee(e))),()=>e),e=>Pt(G,e,(e,t,a)=>bt(t,a),(e,t)=>Ht(t)),mt),bt=(e,t,a)=>Oe(t,()=>fe(a?void 0:o[6],a=>De(()=>a(e,t)),()=>t),t=>{Ke(G,e)||Qt(e,1);const a=Dt(G,e);t!==a&&(Yt(e,a,t),Ot(G,e,t))}),St=e=>At(U,e,()=>(Ut(e,1),Ot(F,e,Bt()),Ot(J,e,Lt()),Lt())),Ct=e=>De(()=>o[8]?.(e))??1?ct(e,{},!0):Dt(U,e),Rt=(e,t,a)=>{if(De(()=>o[9]?.(e,a))??1){const[,s]=Dt(F,e);s(a),ut(e,t,a,{},!0)}},Tt=(e,t,a,s,n,r,i)=>{const l=Dt(Dt(I,e)?.[0],n);if(!ue(l)&&!r)return gt(e,a,s,n,l);if(i||(De(()=>o[10]?.(e,a,n))??1)){const o=t=>{qt(e,a,t,Dt(s,t)),Gt(e,a,t,-1),Ot(s,t)};ue(l)?o(n):Nt(s,o),Ze(s)&&(jt(e,a,-1),Ze(Ot(t,a))&&(Ut(e,-1),Ot(U,e),Ot(F,e),Ot(J,e)))}},Ht=(e,t)=>{const a=Dt(k,e);if(!ue(a))return bt(e,a);(t||(De(()=>o[12]?.(e))??1))&&(Yt(e,Dt(G,e)),Qt(e,-1),Ot(G,e))},Ut=(e,t)=>Za(l,e,t),jt=(e,t,a)=>Za(At(u,e,Lt),t,a)&&Ot(d,e,At(d,e,()=>0)+a),Gt=(e,t,a,s)=>{const n=Dt(J,e),o=Dt(n,a)??0;(0==o&&1==s||1==o&&-1==s)&&Za(At(c,e,Lt),a,s),Ot(n,a,o!=-s?o+s:void 0),Za(At(At(g,e,Lt),t,Lt),a,s)},qt=(e,t,a,s,n)=>{At(At(At(w,e,Lt),t,Lt),a,()=>[s,0])[1]=n,r[3]?.(e,t,a,n,i)},Qt=(e,t)=>Za(y,e,t),Yt=(e,t,a)=>{At(f,e,()=>[t,0])[1]=a,r[4]?.(e,a,i)},Xt=(e,t,a,s,n)=>(Ue(At(At(At(b,e,Lt),t,Lt),a,()=>[]),s),n),Kt=(e,t,a)=>(Ue(At(v,e,()=>[]),t),a),Zt=(e,t,a)=>fe(Dt(Dt(Dt(w,e),t),a),([e,t])=>[!0,_a(e),_a(t)],()=>[!1,...za(va(e,t,a))]),ea=e=>fe(Dt(f,e),([e,t])=>[!0,_a(e),_a(t)],()=>[!1,...za(pa(e))]),ta=e=>Ze(b)||Ze(ie[e])?0:at(e?Wt(b):b,(t,a)=>at(t,(t,s)=>at(t,(t,n)=>Ie(ie[e],[a,s,n],t)))),aa=e=>Ze(v)||Ze(le[e])?0:at(e?$t(v):v,(t,a)=>Ie(le[e],[a],t)),oa=(e,t,a,s)=>{if(!Ze(e))return Ie(t,s,()=>kt(e)),Nt(e,(e,t)=>Ie(a,[...s??[],e],1==t)),1},ra=e=>{const t=!Ze(q[e]),s=!Ze(te[e]),n=!(Ze(ne[e])&&Ze(oe[e])&&Ze(ee[e])&&Ze(ae[e])&&Ze(X[e])&&Ze(K[e])&&Ze(Z[e])&&!s&&Ze(z[e])&&Ze(Q[e])),o=!(Ze(re[e])&&Ze(se[e])&&Ze(Y[e])&&Ze(B[e]));if(t||n||o){const i=e?[$t(l),xt(c),$t(d),xt(u),Wt(g),(r=w,$t(r,e=>$t(e,e=>$t(e,Xa))))]:[l,c,d,u,g,w];if(t){const t=ma();t!=a&&Ie(q[e],void 0,t)}if(n){oa(i[0],z[e],Q[e]),at(i[1],(t,a)=>oa(t,X[e],K[e],[a])),at(i[2],(t,a)=>{0!=t&&Ie(Z[e],[a],ha(a))});const t=Ft();at(i[3],(a,n)=>{oa(a,ee[e],ae[e],[n])&&s&&(Ie(te[e],[n,null]),Jt(t,n))}),s&&at(i[5],(a,s)=>{if(!Ke(t,s)){const t=Ft();at(a,e=>at(e,([a,s],n)=>s!==a?Jt(t,n):st(e,n))),at(t,t=>Ie(te[e],[s,t]))}}),at(i[4],(t,a)=>at(t,(t,s)=>oa(t,ne[e],oe[e],[a,s])))}if(o){let t;at(i[5],(a,s)=>{let n;at(a,(a,o)=>{let r;at(a,([a,i],l)=>{i!==a&&(Ie(re[e],[s,o,l],_a(i),_a(a),Zt),t=n=r=1)}),r&&Ie(se[e],[s,o],Zt)}),n&&Ie(Y[e],[s],Zt)}),t&&Ie(B[e],void 0,Zt)}}var r},ia=e=>{const t=!Ze(ce[e]),a=!Ze(we[e])||!Ze(he[e]),n=!Ze(ye[e])||!Ze(de[e]);if(t||a||n){const o=e?[$t(y),$t(f,Xa)]:[y,f];if(t){const t=Ea();t!=s&&Ie(ce[e],void 0,t)}if(a&&oa(o[0],we[e],he[e]),n){let t;at(o[1],([a,s],n)=>{s!==a&&(Ie(ye[e],[n],_a(s),_a(a),ea),t=1)}),t&&Ie(de[e],void 0,ea)}}},la=(e,...t)=>(ns(()=>e(...$e(t,j))),is),ca=(e,t,a,s,n)=>{let o=fa(e,t,...a);return Re(()=>{const n=fa(e,t,...a);Ae(n,o)||(o=n,s(is,e,t,...a,o))},te[n?1:0],[e,t],[ga])},da=(e=!1)=>[kt(w,(t,a)=>-1===Dt(l,a)?void 0:kt(t,(t,s)=>-1===Dt(Dt(u,a),s)?void 0:kt(t,([,t])=>_a(t,0,e),e=>Ka(e)),Ze,pt),Ze,pt),kt(f,([,t])=>_a(t,0,e),e=>Ka(e)),1],ua=()=>Vt(U,_a),ga=()=>Et(U),wa=e=>Et(Dt(J,j(e))),ha=e=>ze(Dt(U,j(e))),ya=e=>Et(Dt(U,j(e))),fa=(e,t,a,s=0,n)=>lt(e)?fa(e.tableId,e.cellId,e.descending,e.offset,e.limit):$e(pe(ke(Mt(Dt(U,j(e)),(e,a)=>[ue(t)?a:Dt(e,j(t)),a]),([e],[t])=>Da(e,t)*(a?-1:1)),s,ue(n)?n:s+n),([,e])=>e),ba=(e,t)=>Et(Dt(Dt(U,j(e)),j(t))),va=(e,t,a)=>_a(Dt(Dt(Dt(U,j(e)),j(t)),j(a))),Sa=()=>kt(G,_a),Ca=()=>Et(G),pa=e=>_a(Dt(G,j(e))),ma=()=>!Ze(U),Ra=e=>Ke(U,j(e)),Ia=(e,t)=>Ke(Dt(J,j(e)),j(t)),Ta=(e,t)=>Ke(Dt(U,j(e)),j(t)),La=(e,t,a)=>Ke(Dt(Dt(U,j(e)),j(t)),j(a)),Ea=()=>!Ze(G),Na=e=>Ke(G,j(e)),Oa=e=>la(()=>(e=>It(e,xe,Xt))(e)?it(e):0),Va=(e,t,a,s,n,r)=>la((e,t,a)=>fe(He(e,t,a,Se(s)?s(va(e,t,a)):s),s=>{const i=St(e);fe(n||r||!o[14]?.()?void 0:o[3],o=>{const r=Dt(i,t),l={...r?kt(r):{},[a]:s};fe(De(()=>o(e,t,Ee(l))),a=>((e,t,a,s,n)=>{Pt(At(t,a,()=>(jt(e,a,1),Lt())),s,(t,s,o)=>fe(He(e,a,s,o),o=>gt(e,a,t,s,o,n)),(s,n)=>Tt(e,t,a,s,n,!0))})(e,i,t,a,n))},()=>wt(e,i,t,a,s,n))}),e,t,a),$a=e=>la(()=>Fe(e)?ft(e):0),xa=(e,t,a)=>la(e=>fe(Je(e,Se(t)?t(pa(e)):t),t=>bt(e,t,a)),e),Wa=e=>(Ne(()=>et(sa(e))),is),Ha=t=>la(()=>{if((e=It(t,e=>It(e,Pe)))&&(qe(t),!Ze(U))){const e=ua();Ja(),Oa(e)}}),Fa=e=>la(()=>{if(t=(e=>It(e,Pe))(e)){const a=Sa();ss(),qa(),t=!0,Be(e),$a(a)}}),Ja=()=>la(()=>De(()=>o[7]?.())??1?it({},!0):0),Ua=e=>la(e=>Ke(U,e)?Ct(e):0,e),ja=(e,t)=>la((e,t)=>fe(Dt(U,e),a=>Ke(a,t)?Rt(e,a,t):0),e,t),Ga=(e,t,a,s,n)=>la((e,t,a)=>fe(Dt(U,e),o=>fe(Dt(o,t),r=>Ke(r,a)?Tt(e,o,t,r,a,s,n):0)),e,t,a),qa=()=>la(()=>De(()=>o[11]?.())??1?ft({},!0):0),Ba=(e,t)=>la(e=>Ke(G,e)?Ht(e,t):0,e),as=()=>la(()=>{qe({}),e=!1}),ss=()=>la(()=>{Be({}),t=!1}),ns=(e,t)=>{if(-1!=n){os();const a=e();return rs(t),a}},os=()=>(-1!=n&&n++,1==n&&(r[0]?.(),Ie(ve)),is),rs=e=>(n>0&&(n--,0==n&&(n=1,De(()=>{ta(1),Ze(w)||ra(1),aa(1),Ze(f)||ia(1)}),e?.(is)&&(at(w,(e,t)=>at(e,(e,a)=>at(e,([e],s)=>nt(t,a,s,e,!0)))),tt(w),at(f,([e],t)=>rt(t,e,!0)),tt(f)),Ie(me[0],void 0),n=-1,ta(0),Ze(w)||ra(0),aa(0),Ze(f)||ia(0),r[1]?.(),Ie(me[1],void 0),r[2]?.(),n=0,a=ma(),s=Ea(),_e([l,c,d,u,g,w,b,y,f,v],tt))),is),is={getContent:()=>[ua(),Sa()],getTables:ua,getTableIds:ga,getTable:e=>_t(Dt(U,j(e)),_a),getTableCellIds:wa,getRowCount:ha,getRowIds:ya,getSortedRowIds:fa,getRow:(e,t)=>kt(Dt(Dt(U,j(e)),j(t)),_a),getCellIds:ba,getCell:va,getValues:Sa,getValueIds:Ca,getValue:pa,hasTables:ma,hasTable:Ra,hasTableCell:Ia,hasRow:Ta,hasCell:La,hasValues:Ea,hasValue:Na,getTablesJson:()=>na(U),getValuesJson:()=>na(G),getJson:()=>na([U,G]),getTablesSchemaJson:()=>na(m),getValuesSchemaJson:()=>na(E),getSchemaJson:()=>na([m,E]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>la(()=>{const t=Se(e)?e():e;Ve(t)&&(e=>{Oe(e,()=>fe(o[0],t=>De(()=>t(Ee(e))),()=>e),([e,t])=>{(pt(e)?Ja:Oa)(e),(pt(t)?qa:$a)(t)},es)})(t)}),setTables:Oa,setTable:(e,t)=>la(e=>xe(t,e)?ct(e,t):0,e),setRow:(e,t,a)=>la((e,t)=>We(e,t,a)?ut(e,St(e),t,a):0,e,t),addRow:(e,t,a=!0)=>ns(()=>{let s;return We(e,s,t)&&(e=j(e),ut(e,St(e),s=((e,t)=>{const[a]=Dt(F,e);let s;do{s=a(t)}while(Ke(Dt(U,e),s));return s})(e,a?1:0),t)),s}),setPartialRow:(e,t,a)=>la((e,t)=>{if(We(e,t,a,1)){const s=St(e);vt(a,(a,n)=>wt(e,s,t,n,a))}},e,t),setCell:Va,setValues:$a,setPartialValues:e=>la(()=>Fe(e,1)?vt(e,(e,t)=>bt(t,e)):0),setValue:xa,applyChanges:e=>la(()=>Oe(e,()=>fe(o[13],t=>De(()=>t(Ee(e))),()=>e),e=>{vt(e[0],(e,t)=>ue(e)?Ua(t):vt(e,(e,a)=>ue(e)?ja(t,a):vt(e,(e,s)=>nt(t,a,s,e,void 0,!0)))),vt(e[1],(e,t)=>rt(t,e))},es)),setTablesJson:Wa,setValuesJson:e=>(Ne(()=>ot(sa(e))),is),setJson:e=>la(()=>Ne(()=>{const[t,a]=sa(e);et(t),ot(a)},()=>Wa(e))),setTablesSchema:Ha,setValuesSchema:Fa,setSchema:(e,t)=>la(()=>{Ha(e),Fa(t)}),delTables:Ja,delTable:Ua,delRow:ja,delCell:Ga,delValues:qa,delValue:Ba,delTablesSchema:as,delValuesSchema:ss,delSchema:()=>la(()=>{as(),ss()}),transaction:ns,startTransaction:os,getTransactionChanges:()=>da(),getTransactionLog:()=>[!Ze(w),!Ze(f),Vt(w,Xa,Ka),Vt(b),kt(f,Xa,Ka),kt(v),kt(l),_t(u),Vt(g),kt(y)],finishTransaction:rs,forEachTable:e=>at(U,(t,a)=>e(a,e=>at(t,(t,a)=>e(a,e=>Nt(t,(t,a)=>e(t,_a(a))))))),forEachTableCell:(e,t)=>Nt(Dt(J,j(e)),t),forEachRow:(e,t)=>at(Dt(U,j(e)),(e,a)=>t(a,t=>Nt(e,(e,a)=>t(e,_a(a))))),forEachCell:(e,t,a)=>Nt(Dt(Dt(U,j(e)),j(t)),(e,t)=>a(e,_a(t))),forEachValue:e=>Nt(G,(t,a)=>e(t,_a(a))),addSortedRowIdsListener:(e,t,a,s,n,o,r)=>lt(e)?ca(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,a):ca(e,t,[a,s,n],o,r),addStartTransactionListener:e=>Re(e,ve),addWillFinishTransactionListener:e=>Re(e,me[0]),addDidFinishTransactionListener:e=>Re(e,me[1]),callListener:e=>(Le(e),is),delListener:e=>(Te(e),is),getListenerStats:()=>({hasTables:Qa(q),tables:Qa(B),tableIds:Qa(z),hasTable:Qa(Q),table:Qa(Y),tableCellIds:Qa(X),hasTableCell:Qa(K,Ye),rowCount:Qa(Z),rowIds:Qa(ee),sortedRowIds:Qa(te),hasRow:Qa(ae,Ye),row:Qa(se,Ye),cellIds:Qa(ne,Ye),hasCell:Qa(oe,Xe),cell:Qa(re,Xe),invalidCell:Qa(ie,Xe),hasValues:Qa(ce),values:Qa(de),valueIds:Qa(we),hasValue:Qa(he),value:Qa(ye),invalidValue:Qa(le),transaction:Qe(ve)+Qa(me)}),isMergeable:()=>!1,_:[ts,Re,Ie,(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],nt,rt,()=>[Vt(U),kt(G)],()=>da(!0)]};return vt({[L+N]:[0,q,[],()=>[ma()]],[N]:[0,B],[M]:[0,z],[L+D]:[1,Q,[ga],e=>[Ra(...e)]],[D]:[1,Y,[ga]],[D+V]:[1,X,[ga]],[L+D+_]:[2,K,[ga,wa],e=>[Ia(...e)]],[A]:[1,Z,[ga]],[P]:[1,ee,[ga]],[L+O]:[2,ae,[ga,ya],e=>[Ta(...e)]],[O]:[2,se,[ga,ya]],[V]:[2,ne,[ga,ya]],[L+_]:[3,oe,[ga,ya,ba],e=>[La(...e)]],[_]:[3,re,[ga,ya,ba],e=>za(va(...e))],InvalidCell:[3,ie],[L+x]:[0,ce,[],()=>[Ea()]],[x]:[0,de],[W]:[0,we],[L+$]:[1,he,[Ca],e=>[Na(...e)]],[$]:[1,ye,[Ca],e=>za(pa(e[0]))],InvalidValue:[1,le]},([e,t,a,s],n)=>{is[T+n+R]=(...n)=>Re(n[e],t[n[e+1]?1:0],e>0?pe(n,0,e):void 0,a,s)}),dt(is)},as={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},ss=(e=d)=>[ja(e),ja(e)],ns=(e,t)=>{let a=1,s=ss(),n=0,o=0;const r=Lt(),i=Ft(),[l,c]=Ea(e,t),u=ts(),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;ft(o,([e,s=d,n=0],o)=>{const r=At(w,o,ja),[i,l,c]=r;let u=t?n:c,g=s;ft(e,(e,s)=>{const[n,r,l]=h(e,At(i,s,ja),Rt(Rt(a,o,ut),s,ut),t);u^=t?0:da(r?ga(s,r):0,ga(s,l)),g=Fa(g,n)}),u^=t?0:Ha(l,s),Ja(r,s,u),b^=t?0:da(c?ga(o,c):0,ga(o,r[2])),v=Fa(v,g)}),b^=t?0:Ha(y,r),Ja(u,r,b);const[S]=h(l,g,n,t);return c(Fa(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 ft(n,([e,t=d,n=0],o)=>{const r=At(i,o,()=>[void 0,d,0]),[,l,c]=r;(!l||t>l)&&(Ja(r,t,s?n:wa(e,t)),r[0]=e,a[o]=e,g^=s?0:da(ga(o,c),ga(o,r[2])),u=Fa(u,t))}),g^=s?0:Ha(l,o),Ja(t,o,g),[u,c,t[2]]},y=Ie,f=Ie,b=(e=!1)=>[Ga(s[0],t=>Ga(t,t=>Ga(t,([t,a,s])=>[_a(t,0,e),a,s]))),Ga(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?xa:$a,g={};at(r,(e,s)=>fe(Dt(a,s),([a,n,o])=>{const r={};at(e,(e,s)=>fe(Dt(a,s),([a,n,o])=>{const i={};at(e,e=>{fe(Dt(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 at(i,e=>fe(Dt(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:()=>kt(s[0][0],Wa),getMergeableTableDiff:e=>{const t=Ua(s[0][1]),a={};return Nt(s[0][0],(s,[n,o,r])=>ht(e,s)?r!=e[s]?a[s]=r:0:t[0][s]=qa([n,o],e=>qa(e))),[t,a]},getMergeableRowHashes:e=>{const t={};return ft(e,(e,a)=>fe(Dt(s[0][0],a),([s,,n])=>n!=e?Nt(s,(e,[,,s])=>Rt(t,a,ut)[e]=s):0)),t},getMergeableRowDiff:e=>{const t=Ua(s[0][1]),a={};return ft(e,(e,n)=>Nt(Dt(s[0][0],n)?.[0],(s,[o,r,i])=>ht(e,s)?i!==e[s]?Rt(a,n,ut)[s]=i:0:Rt(t[0],n,Ua)[0][s]=qa([o,r]))),[t,a]},getMergeableCellHashes:e=>{const t={};return ft(e,(e,a)=>fe(Dt(s[0][0],a),([s])=>ft(e,(e,n)=>fe(Dt(s,n),([s,,o])=>o!==e?Nt(s,(e,[,,s])=>Rt(Rt(t,a,ut),n,ut)[e]=s):0)))),t},getMergeableCellDiff:e=>{const[[t,a]]=s,n={};return ft(e,(e,a)=>ft(e,(e,s)=>fe(Dt(t,a),([t,o])=>fe(Dt(t,s),([t,r])=>Nt(t,(t,[i,l,c])=>c!==e[t]?Rt(Rt(n,a,()=>Ua(o))[0],s,()=>Ua(r))[0][t]=[i,l]:0))))),$a(n,a)},getMergeableValueHashes:()=>kt(s[1][0],Wa),getMergeableValueDiff:e=>{const[,[t,a]]=s,n=kt(t,Va,([,,t],a)=>t==e?.[a]);return $a(n,a)},setMergeableContent:e=>g(()=>(e=>Ce(e)&&2==me(e)&&Ba(e[0],e=>It(e,e=>Ba(e,e=>It(e,e=>Ba(e,e=>It(e,e=>Ba(e,Oa),void 0,1)),void 0,1)),void 0,1))&&Ba(e[1],e=>It(e,e=>Ba(e,Oa),void 0,1)))(e)?u.transaction(()=>{u.delTables().delValues(),s=ss(),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,()=>{tt(r),tt(i)},(e,t,s,i,c)=>{Jt(At(At(r,e,Lt),t,Ft),s),(a||c)&&(c&&(o=1),w([[{[e]:[{[t]:[{[s]:[i,n?d:l()]}]}]}],[{}],1]))},(e,t,s)=>{Jt(i,e),(a||s)&&(s&&(o=1),w([[{}],[{[e]:[t,n?d:l()]}],1]))}),vt(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,T)&&q(t,R)?(...a)=>{const s=as[pe(t,3,-8)]??0,n=a[s];return a[s]=(e,...t)=>n(p,...t),e(...a)}:"isMergeable"==t?()=>!0:e),dt(p)},os=Lt([["avg",[(e,t)=>xe(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=>oe(...e),(e,t)=>oe(t,e),(e,t)=>t==e?void 0:e,(e,t,a)=>a==e?void 0:oe(t,e)]],["min",[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)]],["sum",[e=>xe(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,a)=>e-a+t]]]),rs=(e,t,a,s,n,o=!1)=>{if(Ze(a))return;const[r,i,l,c]=n;return o||=ue(e),at(s,([a,s])=>{o||(e=ue(a)?i?.(e,s,t++):ue(s)?l?.(e,a,t--):c?.(e,s,a,t),o||=ue(e))}),o?r(et(a),ze(a)):e},is=Gt(e=>{const t=Lt(),[a,s,n]=zt(()=>b),[o,r,i,l,c,u,g,,w,h,y,f]=Ut(e,Re,e=>isNaN(e)||ue(e)||we(e)||he(e)||e===d?void 0:1*e,a,s),b={setMetricDefinition:(e,a,n,o,r,i,l)=>{const c=Se(n)?[n,r,i,l]:Dt(os,n)??Dt(os,"sum");return w(e,a,(a,n,o,r,i,l)=>{const d=u(e),w=ze(r);l||=ue(d),a();let h=rs(d,w,r,n,c,l);ce(h)||(h=void 0),h!=d&&(g(e,h),s(t,[e],h,d))},jt(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:Qe(t)})};return dt(b)}),ls=(e,t,...a)=>He(e,(e,t)=>ue(e)?e:t(...a,e),t),cs=(e,...t)=>Oe(e,e=>e(...t)),ds=Gt(e=>{const t=e=>t=>(Ue(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),I=t(d),T=t(u),L=t(g),E=t(w),D=t(h),N=t(y),M=dt({getStore:()=>e,addWillSetContentCallback:f,addWillSetTablesCallback:b,addWillSetTableCallback:v,addWillSetRowCallback:S,addWillSetCellCallback:C,addWillSetValuesCallback:p,addWillSetValueCallback:m,addWillDelTablesCallback:R,addWillDelTableCallback:I,addWillDelRowCallback:T,addWillDelCellCallback:L,addWillDelValuesCallback:E,addWillDelValueCallback:D,addWillApplyChangesCallback:N,destroy:()=>{}});return e._[4](e=>ls(a,e),e=>ls(s,e),(e,t)=>ls(n,t,e),(e,t,a)=>ls(o,a,e,t),(e,t,a,s)=>ls(r,s,e,t,a),e=>ls(i,e),(e,t)=>ls(l,t,e),()=>cs(c),e=>cs(d,e),(e,t)=>cs(u,e,t),(e,t,a)=>cs(g,e,t,a),()=>cs(w),e=>cs(h,e),e=>ls(y,e),()=>o.length>0),M}),us={Idle:0,Loading:1,Saving:2},gs={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ws=Lt(),hs=Lt(),ys=(e,t,a,s,n,o,r,i={},l=0,c=[])=>{let d,u,g,w=0,h=0,y=0;At(ws,c,()=>0),At(hs,c,()=>[]);const f=Lt(),[b,v,S,C,p]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.__[1],()=>t.__[2](!a),([[e],[t]])=>!pt(e)||!pt(t),t.setDefaultContent]:2!=e?[0,t._[7],t._[8],([e,t])=>!pt(e)||!pt(t),t.setContent]:De("Store type not supported by this Persister"))(r,e,l),[m,R,I]=zt(()=>$),T=e=>{e!=w&&(w=e,R(f,void 0,w))},L=t=>{(b&&Ce(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&&(T(1),h++,await V(async()=>{await Ne(async()=>{const a=await t();Ce(a)?L(a):e?p(e):De("Content is not an array: "+a)},()=>{e&&p(e)}),T(0),await E()})),$),N=async e=>(M(),await D(e),await Ne(async()=>u=await s(async(e,t)=>{t||e?2!=w&&(T(1),h++,L(t??e),T(0),await E()):await D()}),o),$),M=async()=>(u&&(await Ne(()=>n(u),o),u=void 0),$),O=async e=>(1!=w&&(T(2),y++,await V(async()=>{await Ne(()=>a(v,e),o),T(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=()=>!ue(g),_=async(e=!1)=>{const[t,a]=e?[P,M]:[M,P];return await t(),await a(),$},V=async(...e)=>(Ue(Dt(hs,c),...e),await(async()=>{if(!Dt(ws,c)){for(Ot(ws,c,1);!ue(d=qe(Dt(hs,c)));)await Ne(d,o);Ot(ws,c,0)}})(),$),$={load:D,startAutoLoad:N,stopAutoLoad:M,isAutoLoading:()=>!ue(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=>(I(t),e),schedule:V,getStore:()=>e,destroy:()=>(Je(Dt(hs,c)),_()),getStats:()=>({loads:h,saves:y}),...i};return dt($)},fs="_",bs="_id",vs="SELECT",Ss="WHERE",Cs="TABLE",ps="INSERT",ms="DELETE",Rs="UPDATE",Is="ALTER "+Cs,Ts="FROM",Ls=ms+" "+Ts,Es=vs+"*"+Ts,Ds="pragma_",Ns="data_version",Ms="schema_version",Os="pragma_table_",As="CREATE ",Ps=As+Cs,ks="OR REPLACE ",_s="FUNCTION",Vs="$tableName",$s=(e,t)=>t?async(a,s)=>(t(a,s),await e(a,s)):e,xs=e=>Ve($e(z(e,"."),e=>`"${Q(e,/"/g,'""')}"`),"."),Ws=(...e)=>xs(Ve(e,"_")),Hs=(...e)=>Ve($e(e,xs),u),Fs=(e,t=[1])=>Ve($e(e,()=>"$"+t[0]++),u),Js=(e,t=v)=>Ss+`(${Q(t,Vs,xs(e))})`,Us="ColumnName",js="store",Gs="json",qs=js+"TableName",Bs=js+"Id"+Us,zs=js+Us,Qs="autoLoadIntervalSeconds",Ys="rowId"+Us,Xs="tableId",Ks="tableName",Zs="deleteEmptyColumns",en="deleteEmptyTable",tn="condition",an={mode:Gs,[Qs]:1},sn={load:0,save:0,[Ks]:c+"_values"},nn=(e,t,a,s,n)=>{const o=Lt();return vt(e,(e,r)=>{const i=pe(St(gt(t,ve(e)?{[a]:e}:e)),0,Ct(t));ge(i[0])||s(r,i[0])||(n(r,i[0]),Ot(o,r,i))}),o},on=e=>{const t=(e=>gt(an,ve(e)?{[qs]:e}:e??{}))(e),a=t[Qs];if(t.mode==Gs){const e=t[qs]??c;return[1,a,[e,t[Bs]??bs,t[zs]??js],Ft(e)]}const{tables:{load:s={},save:n={}}={},values:o={}}=t,r=pe(St(gt(sn,o)),0,Ct(sn)),i=r[2],l=Ft(i),d=Ft(i),u=nn(s,{[Xs]:null,[Ys]:bs,[tn]:v},Xs,e=>Ke(d,e),e=>Jt(l,e)),g=nn(n,{[Ks]:null,[Ys]:bs,[Zs]:0,[en]:0,[tn]:null},Ks,(e,t)=>Ke(d,t),(e,t)=>Jt(l,t));return Nt(g,(e,t)=>t[4]??=Dt(u,t[0])?.[2]??v),[0,a,[u,g,r],l]},rn=(e,t,a,s,n,o=ln,r,i)=>{const l=Lt();return[async()=>{tt(l),$e(await a(e,t),({tn:e,cn:t})=>Jt(At(l,e,Ft),t))},async(t,a,s)=>((e,t)=>Ke(Dt(l,e),t))(t,a)?ut(Fe($e(await e(Es+xs(t)+Js(t,s)),e=>[e[a],i?vt(yt(e,a),i):yt(e,a)]),e=>!ue(e[0])&&!pt(e[1]))):{},async(t,a,s,i,c,d=!1,g=v)=>{const w=Ft();vt(s??{},e=>$e(ct(e??{}),e=>Jt(w,e)));const h=et(w);if(!d&&c&&g==v&&We(h)&&Ke(l,t))return await e("DROP "+Cs+xs(t)),void Ot(l,t);const y=Dt(l,t),f=Ft(et(y));if(We(h)||(Ke(l,t)?await Le($e([a,...h],async(s,o)=>{st(f,s)||(await e(Is+xs(t)+"ADD"+xs(s)+n),0==o&&await e("CREATE UNIQUE INDEX pk ON "+xs(t)+`(${xs(a)})`),Jt(y,s))})):(await e(Ps+xs(t)+`(${xs(a)}${n} PRIMARY KEY${Ve($e(h,e=>u+xs(e)+n))});`),Ot(l,t,Ft([a,...h])))),await Le([...!d&&i?$e(et(f),async s=>{s!=a&&(await e(Is+xs(t)+"DROP"+xs(s)),st(y,s))}):[]]),d)ue(s)?await e(Ls+xs(t)+Js(t,g)):await Le(bt(s,async(s,n)=>{ue(s)?await e(Ls+xs(t)+Js(t,g)+`AND(${xs(a)}=$1)`,[n]):We(h)||await o(e,t,a,ct(s),{[n]:r?$e(St(s),r):St(s)},y)}));else if(We(h))Ke(l,t)&&await e(Ls+xs(t)+Js(t,g));else{const n=Fe(et(Dt(l,t)),e=>e!=a),i={},c=[];vt(s??{},(e,t)=>{i[t]=$e(n,t=>r?r(e?.[t]):e?.[t]),Ue(c,t)}),await o(e,t,a,n,i),await e(Ls+xs(t)+Js(t,g)+`AND${xs(a)}NOT IN(${Fs(c)})`,c)}},async t=>{let a;return await e("BEGIN"),await Ne(async()=>a=await t(),s),await e("END"),a}]},ln=async(e,t,a,s,n)=>{const o=[1];await e(ps+" INTO"+xs(t)+"("+Hs(a,...s)+")VALUES"+Ve(bt(n,e=>"($"+o[0]+++","+Fs(e,o)+")"),u)+"ON CONFLICT("+xs(a)+`)DO ${Rs} SET`+Ve($e(s,e=>xs(e)+"=excluded."+xs(e)),u),bt(n,(e,t)=>[t,...$e(e,e=>e??null)]).flat())},cn=(e,t,a,s,n,o,r,[i,l,c],d,u,g,w,h,y)=>{const[f,b,v,S]=rn(t,d,u,n,h,y),C=ys(e,()=>S(async()=>(await f(),ra((await b(i,l))[fs]?.[c]??"null"))),e=>S(async()=>{await f(),await v(i,l,{[fs]:{[c]:oa(e()??null)}},!0,!0)}),a,s,n,r,{[w]:()=>g,destroy:async()=>(await C.stopAutoPersisting(),o(),C)},0,g);return C},dn=(e,t,a,s,n,o,r,[i,l,[c,d,u]],g,w,h,y,f,b,v,S)=>{const[C,p,m,R]=rn(t,g,w,n,f,b,v,S),I=(e,t)=>Le(Mt(l,async([a,s,n,o,r],i)=>{t&&!ht(e,i)||await m(a,s,e[i],n,o,t,r)})),T=async(e,t)=>d?await m(u,bs,{[fs]:e},!0,!0,t):null,L=ys(e,()=>R(async()=>{await C();const e=await(async()=>ut(Fe(await Le(Mt(i,async([e,t,a],s)=>[e,await p(s,t,a)])),e=>!pt(e[1]))))(),t=await(async()=>c?(await p(u,bs))[fs]:{})();return pt(e)&&ue(t)?void 0:[e,t]}),(e,t)=>R(async()=>{if(await C(),ue(t)){const[t,a]=e();await I(t),await T(a)}else await I(t[0],!0),await T(t[1],!0)}),a,s,n,r,{[y]:()=>h,destroy:async()=>(await L.stopAutoPersisting(),o(),L)},0,h);return L},un=/^([cd]:)(.+)/,gn=(e,t,a,s,n,o,r,i,l,u,g="getDb")=>{const w=$s(a,o),[h,,y,f]=on(t),b=d+ca(oa(y)),S=c+"_"+b,C=async(e,t,a="",s="")=>{const n=Ws(c,e,b);return await w(As+ks+_s+n+`()RETURNS ${a}trigger AS $$ ${s}BEGIN ${t}END;$$ LANGUAGE plpgsql;`),n},p=async(e,t,a,s)=>(await w(As+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):Q(Dt(y[0],e)?.[2]??v,Vs,0==t?"NEW":"OLD"),I=(e,t)=>Le($e([ps,ms,Rs],(a,s)=>p(ks,Ws(c,"d",b,e,a),`AFTER ${a} ON${xs(e)}FOR EACH ROW WHEN(${R(e,s)})`,t)));return(h?cn:dn)(e,w,async e=>{const t=await C("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Ss} command_tag='${Ps}' LOOP ${m("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await p("EVENT ",Ws(c,"c",b),`ON ddl_command_end WHEN TAG IN('${Ps}')`,t);const a=await C("d",m("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await Le($e(et(f),async e=>(await w(Ps+` IF NOT EXISTS${xs(e)}("_id"text PRIMARY KEY)`),await I(e,a)))),[await s(S,t=>fe(B(t,un),async([,t,s])=>{Ke(f,s)&&("c:"==t&&await I(s,a),e())})),[t,a]]},async([e,t])=>{n(e),await w(`DROP FUNCTION IF EXISTS${Ve(t,",")}CASCADE`)},r,i,l,y,et(f),async(e,t)=>await e(vs+` table_name tn,column_name cn FROM information_schema.columns ${Ss} table_schema='public'AND table_name IN(${Fs(t)})`,t),u,g,"text",void 0,e=>aa(e),e=>sa(e))},wn=(e,t,a,s,n,o,r,i,l,c,u="getDb",g)=>{let w,h,y;const f=$s(a,o),[b,v,S,C]=on(t);return(b?cn:dn)(e,f,e=>{let t;const a=()=>t=ae(()=>Ne(async()=>{const[{d:t,s:a,c:s}]=await f(vs+` ${Ns} d,${Ms} s,TOTAL_CHANGES() c FROM ${Ds}${Ns} JOIN ${Ds}${Ms}`);t==w&&a==h&&s==y||(de(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,et(C),async(e,t)=>await e(vs+` t.name tn,c.name cn FROM ${Os}list()t,${Os}info(t.name)c ${Ss} t.schema='main'AND t.type IN('table','view')AND t.name IN(${Fs(t)})ORDER BY t.name,c.name`,t),c,u,d,g,e=>we(e)?1:he(e)?0:e,void 0)},hn=(e,t)=>[e[t].t,e[t].v],yn=(e,t,a,s)=>{const n=ue(t)?e:Rt(e,t,()=>({}));let o;return vt(a,(e,t)=>{s(n,t,e)&&(o=1)}),vt(n,(e,t)=>{ht(a,t)||(yt(n,t),o=1)}),!ue(t)&&pt(n)&&yt(e,t),o},fn=(e,t,a=c,s)=>(t.change(e=>Rt(e,a,ut)),ys(e,async()=>{const e=t.doc();return 2==Ct(e?.[a])?hn(e,a):void 0},async(e,s)=>t.change(t=>((e,t,a,s)=>{((e,t)=>{pt(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[n,o]=hn(e,t),r=()=>{i=1};let i=1;if(fe(s,([e,t])=>{i=0,vt(e,(e,t)=>i?0:ue(e)?yt(n,t):fe(n[t],t=>vt(e,(e,a)=>i?0:ue(e)?yt(t,a):fe(wt(t,a),t=>vt(e,(e,a)=>ue(e)?yt(t,a):t[a]=e),r)),r)),vt(t,(e,t)=>i?0:ue(e)?yt(o,t):o[t]=e)}),i){const[e,t]=a();yn(n,void 0,e,(e,t,a)=>yn(n,t,a,(e,t,a)=>yn(e,t,a,(e,t,a)=>{if(wt(e,t)!==a)return e[t]=a,1}))),yn(o,void 0,t,(e,t,a)=>{wt(o,t)!==a&&(o[t]=a)})}})(t,a,e,s)),e=>{const s=({doc:t})=>e(hn(t,a));return t.on("change",s),s},e=>{t.removeListener("change",e)},s,1,{getDocHandle:()=>t})),bn="storage",vn=(e,t,a,s)=>ys(e,async()=>ra(a.getItem(t)),async e=>a.setItem(t,oa(e())),e=>{const s=s=>{s.storageArea===a&&s.key===t&&Ne(()=>e(ra(s.newValue)),e)};return ee.addEventListener(bn,s),s},e=>ee.removeEventListener(bn,e),s,3,{getStorageName:()=>t}),Sn=(e,t,a)=>vn(e,t,localStorage,a),Cn=(e,t,a)=>vn(e,t,sessionStorage,a),pn=(e,t,a)=>ys(e,async()=>ra(await(await t.getFile()).text()),async e=>{const a=await t.createWritable();await a.write(oa(e())),await a.close()},async e=>{const a=new FileSystemObserver(()=>e());return await a.observe(t),a},e=>e?.disconnect(),a,3,{getHandle:()=>t}),mn=(e,t,a,s,n)=>wn(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),Rn=()=>xa({},d,0),In=(e,t,a=d,s)=>{const n=(e,...t)=>a+e+pe(oa(t),1,-1);return ys(e,async()=>{const e=Rn(),s=Rn();return(await t.list({prefix:a})).forEach(async([t,n,o],r)=>fe((e=>{if(G(e,a)){const t=pe(e,me(a),me(a)+1);return t==J||t==U?[t,...JSON.parse("["+pe(e,me(a)+1)+"]")]:void 0}})(r),([a,...r])=>a==J?fe(r[0],a=>{const s=Rt(e[0],a,Rn);fe(r[1],e=>{const a=Rt(s[0],e,Rn);fe(r[2],e=>a[0][e]=[t,n,o],()=>Ja(a,n,o))},()=>Ja(s,n,o))},()=>Ja(e,n,o)):a==U?fe(r[0],e=>s[0][e]=[t,n,o],()=>Ja(s,n,o)):0)),pt(e[0])&&pt(s[0])?void 0:[e,s]},async(e,[[a,s,o],[r,i,l]]=e())=>{const c=Lt();Ot(c,n(J),[0,s,o]),ft(a,([e,t,a],s)=>{Ot(c,n(J,s),[0,t,a]),ft(e,([e,t,a],o)=>{Ot(c,n(J,s,o),[0,t,a]),ft(e,(e,t)=>Ot(c,n(J,s,o,t),e))})}),Ot(c,n(U),[0,i,l]),ft(r,(e,t)=>Ot(c,n(U,t),e)),await t.put(kt(c))},Ie,Ie,s,2,{getStorage:()=>t})},Tn=(e,t,a,s,n)=>wn(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,Ie,1,t,"getElectricClient"),Ln=(t,a,s,n,o)=>wn(t,s,async(e,t=[])=>await a.getAllAsync(e,t),t=>e(({tableName:e})=>t(e)),e=>e.remove(),n,o,Ie,3,a),En=(e,r,i)=>ys(e,async()=>ra(await o(r,m)),async e=>await n(r,oa(e()),m),e=>(t(r)||a(r,d,m),s(r,()=>e())),e=>e?.close(),i,3,{getFilePath:()=>r}),Dn=[J,U],Nn={keyPath:"k"},Mn=async(e,t)=>{const a=bt(t,(t,a)=>On(e,"put",{k:a,v:t}));$e(await On(e,"getAllKeys"),s=>ht(t,s)?0:Ue(a,On(e,"delete",s))),await Le(a)},On=async(e,t,a)=>Te((s,n)=>{const o=e[t](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${t} error`)}),An=(e,t,a=1,s)=>{const n=async(e,a=[],s=0)=>Te((n,o)=>{const r=(ee?ee.indexedDB:indexedDB).open(t,s?2:void 0);r.onupgradeneeded=()=>s&&$e(Dn,e=>Ne(()=>r.result.createObjectStore(e,Nn))),r.onsuccess=()=>Ne(async()=>{const t=r.result.transaction(Dn,"readwrite"),s=await Le($e(Dn,(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 ys(e,async()=>await n(async e=>ut($e(await On(e,"getAll"),({k:e,v:t})=>[e,t]))),e=>n((e,t)=>Mn(e,t),e(),1),e=>ae(e,a),e=>se(e),s,1,{getDbName:()=>t})},Pn=(e,t,a,s,n)=>wn(e,a,async(e,a=[])=>(await t.execute({sql:e,args:a})).rows,()=>Ie,e=>e(),s,n,Ie,1,t,"getClient"),kn="s",_n="/store",Vn=(e,t,a)=>e+t+(ve(a)?a:oa(a)),$n=(e,t,a)=>{const s=me(e);return G(t,e)?[t[s],(a?ra:te)(pe(t,s+1))]:void 0},xn=(e,t,a,s)=>{const{host:n,room:o}=t.partySocketOptions,{storeProtocol:r="https",storePath:i=_n,messagePrefix:l=d}={...ve(a)?{storeProtocol:a}:a},c=r+"://"+n+"/parties/"+t.name+"/"+o+i,u=async e=>await(await fetch(c,{...e?{method:"PUT",body:na(e)}:{},mode:"cors",cache:"no-store"})).json();return ys(e,u,async(e,a)=>{a?t.send(Vn(l,kn,a)):await u(e())},e=>{const a=t=>fe($n(l,t.data,1),([t,a])=>{t==kn&&e(void 0,a)});return t.addEventListener(H,a),a},e=>{t.removeEventListener(H,e)},s,1,{getConnection:()=>t})},Wn="hasStore",Hn=ut($e(["Origin","Methods","Headers"],e=>["Access-Control-Allow-"+e,"*"])),Fn=async(e,t=d)=>!!await e.get(t+Wn),Jn=async(e,t=d)=>{const a={},s={};return Nt(await e.list(),(e,n)=>fe($n(t,e),([e,t])=>{if(e==J){const[e,s,o]=sa("["+t+"]");Rt(Rt(a,e,ut),s,ut)[o]=n}else e==U&&(s[t]=n)})),[a,s]},Un=async(e,t,a)=>e.party.broadcast(Vn(e.config.messagePrefix??d,kn,t),a),jn=async(e,t,a,s)=>{const n=e.party.storage,o=e.config.storagePrefix??d,r={[o+Wn]:1},i=[],l=[];await Le(bt(t[0],async(t,c)=>ue(t)?!a&&await e.canDelTable(c,s)&&Ge(l,Gn(o,J,c)):await e.canSetTable(c,a,s)&&await Le(bt(t,async(t,d)=>ue(t)?!a&&await e.canDelRow(c,d,s)&&Ue(l,Gn(o,J,c,d)):await e.canSetRow(c,d,a,s)&&await Le(bt(t,async(t,l)=>{const u=[c,d,l],g=Gn(o,J,...u);ue(t)?!a&&await e.canDelCell(...u,s)&&Ue(i,g):await e.canSetCell(...u,t,a,s,await n.get(g))&&(r[g]=t)})))))),await Le(bt(t[1],async(t,l)=>{const c=o+U+l;ue(t)?!a&&await e.canDelValue(l,s)&&Ue(i,c):await e.canSetValue(l,t,a,s,await n.get(c))&&(r[c]=t)})),We(l)||Nt(await n.list(),e=>Oe(l,t=>!G(e,t)||Ue(i,e)&&0)),await n.delete(i),await n.put(r)},Gn=(e,t,...a)=>Vn(e,t,pe(na(a),1,-1)),qn=async(e,t,a=null)=>new Response(a,{status:t,headers:e.config.responseHeaders});class Bn{constructor(e){this.party=e,this.config.storePath??=_n,this.config.messagePrefix??=d,this.config.storagePrefix??=d,this.config.responseHeaders??=Hn}party;config={};async onRequest(e){const{party:{storage:t},config:{storePath:a=_n,storagePrefix:s}}=this;if(new URL(e.url).pathname.endsWith(a)){const a=await Fn(t,s),n=await e.text();return"PUT"==e.method?a?qn(this,205):(await jn(this,sa(n),!0,e),qn(this,201)):qn(this,200,a?na(await Jn(t,s)):d)}return qn(this,404)}async onMessage(e,t){const{config:{messagePrefix:a=d,storagePrefix:s}}=this;await fe($n(a,e,1),async([e,a])=>{e==kn&&await Fn(this.party.storage,s)&&(await jn(this,a,!1,t),Un(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 zn=async(e,t,a,s,n)=>gn(e,a,async(e,a=[])=>(await t.query(e,a)).rows,(e,a)=>t.listen(e,a),e=>Ne(e,n),s,n,Ie,3,t,"getPglite"),Qn=async(e,t,a,s,n)=>{const o=await(t.reserve?.());return gn(e,a,o?.unsafe,async(e,a)=>t.listen(e,a),e=>Ne(e.unlisten,n),s,n,()=>o?.release?.(),3,t,"getSql")},Yn=(e,t,a,s,n)=>{let o;return wn(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&&$e(e.changedTables,o)})(),o=e,a},e=>{o=void 0,e.abort()},s,n,Ie,1,t,"getPowerSync",Xn)},Xn=async(e,t,a,s,n,o)=>{const r=[1],i=Ft(s),l=o?Fe([...o],e=>e!=a&&!Ke(i,e)):[];if(!We(l)){const s=ct(n),o=ut($e(await e(vs+Hs(a,...l)+Ts+xs(t)+Ss+xs(a)+"IN("+Fs(s)+")",s),e=>[e[a],e]));_e(s,e=>Ue(n[e],...$e(l,t=>o?.[e]?.[t]??null)))}await e(ps+" "+ks+"INTO"+xs(t)+"("+Hs(a,...s,...l)+")VALUES"+Ve(bt(n,e=>"($"+r[0]+++","+Fs(e,r)+")"),u),bt(n,(e,t)=>[t,...$e(e,e=>e??null)]).flat())},Kn=(e,t,a="storage",s)=>ys(e,async()=>{const e=t.getString(a),s=ue(e)?void 0:JSON.parse(e);return Promise.resolve(s)},async e=>{const s=e();ue(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}),Zn=(e,t,a,s,n)=>wn(e,a,async(e,a=[])=>(await t.executeSql(e,a))[0].rows.raw(),Ie,Ie,s,n,Ie,3,t),eo=e=>e.headers.get("ETag")??d,to=e=>e==d?void 0:{"If-None-Match":e},ao=(e,t,a,s=5,n)=>{let o=d;return ys(e,async()=>{const e=await fetch(t,{headers:to(o)});return o=eo(e),sa(await e.text())},async e=>await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:na(e())}),e=>ae(async()=>{const a=await fetch(t,{method:"HEAD",headers:to(o)}),s=eo(a);s!=o&&(o=s,e())},s),e=>se(e),n,1,{getUrls:()=>[t,a]})},so=(e,t,a,s,n)=>wn(e,a,async(e,a=[])=>t.query(e).all(...a),()=>Ie,e=>e(),s,n,Ie,3,t),no=(e,t,a,s,n,o)=>wn(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),oo="change",ro=(e,t,a,s,n)=>wn(e,a,async(e,a=[])=>await Te((s,n)=>t.all(e,a,(e,t)=>e?n(e):s(t))),e=>{const a=(t,a,s)=>e(s);return t.on(oo,a),a},e=>t.off(oo,e),s,n,Ie,3,t),io="delete",lo=e=>[e.get(J),e.get(U)],co=(e,t,a,s)=>{const n=ue(t)?e:e.get(t)??e.set(t,new r);let o;return vt(a,(e,t)=>{s(n,t,e)&&(o=1)}),n.forEach((e,t)=>{ht(a,t)||(n.delete(t),o=1)}),ue(t)||n.size||e.delete(t),o},uo=(e,t,a=c,s)=>{const n=t.getMap(a);return ys(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]=lo(e),o=()=>{i=1};let i=1;if(fe(a,([e,t])=>{i=0,vt(e,(e,t)=>i?0:ue(e)?s.delete(t):fe(s.get(t),t=>vt(e,(e,a)=>i?0:ue(e)?t.delete(a):fe(t.get(a),t=>vt(e,(e,a)=>ue(e)?t.delete(a):t.set(a,e)),o)),o)),vt(t,(e,t)=>i?0:ue(e)?n.delete(t):n.set(t,e))}),i){const[e,a]=t();co(s,void 0,e,(e,t,a)=>co(s,t,a,(e,t,a)=>co(e,t,a,(e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1}))),co(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==me(t)&&We(t[0].path))return[e.get(J).toJSON(),e.get(U).toJSON(),1];const[a,s]=lo(e),n={},o={};return _e(t,({path:e,changes:{keys:t}})=>qe(e)==J?fe(qe(e),s=>{const o=Rt(n,s,ut),r=a.get(s);fe(qe(e),e=>{const a=Rt(o,e,ut),s=r.get(e);Nt(t,(e,{action:t})=>a[e]=t==io?void 0:s.get(e))},()=>Nt(t,(e,{action:t})=>o[e]=t==io?void 0:r.get(e)?.toJSON()))},()=>Nt(t,(e,{action:t})=>n[e]=t==io?void 0:a.get(e)?.toJSON())):Nt(t,(e,{action:t})=>o[e]=t==io?void 0:s.get(e))),[n,o,1]})(n,t));return n.observeDeep(t),t},e=>{n.unobserveDeep(e)},s,1,{getYDoc:()=>t})},go="_",wo=Gt(e=>{const t=e._[0],a=t(),s=t(),n=t(),o=Lt(),r=Ft(),i=Lt(),l=Lt(),c={table:0,tableCellIds:0,rowCount:0,rowIds:0,sortedRowIds:0,row:0,cellIds:0,cell:0},u=Lt(),g=Lt(),{_:[,w,h],delListener:y}=n,[f,b,v,S,C,p,m,L,,E,N,M]=Ut(e,()=>[],Re,w,h),$=e=>At(o,e,t),x=(e,t,...a)=>_e(a,a=>Jt(At(At(u,t,Lt),e,Ft),a)),W=e=>{fe(Dt(u,e),e=>{Nt(e,(e,t)=>at(t,t=>e.delListener(t))),tt(e)}),_e([$(e),a],t=>t.delTable(e))},H=(e,t,a,...s)=>{const n=At(At(g,t,Lt),e,Ft);return _e(s,t=>{Jt(n,t),a&&e.callListener(t)}),s},F=(e,t,a)=>fe(Dt(Dt(g,e),t),s=>{t.delListener(a),st(s,a),Ze(s)&&Ot(Dt(g,e),t)}),J=e=>fe(Dt(g,e),e=>{Nt(e,(e,t)=>at(t,t=>e.delListener(t))),tt(e)}),U=(e,t,a)=>x(t,e,t.addStartTransactionListener(a.startTransaction),t.addDidFinishTransactionListener(()=>a.finishTransaction())),j=(e,t)=>(pt(t)?s.delRow:s.setRow)(go,e,{...t}),G=t=>$(t).transaction(()=>fe(p(t),([s,,n])=>{const o=C(t),i=n?$(o):e,l=$(t),c=B(t);Jt(r,t),W(t),J(t);const u=[],g=[[void 0,[o,void 0,void 0,[],Lt(),i]]],w=[],h=[],y=[];s({select:(e,t,a)=>{const s=we(e)?t:e,n=we(e)?a:t,o=Se(e)?[me(u)+d,e]:ue(n)?[e,t=>t(e)]:[n,t=>we(e)?t(!0,s,n):t(s,n)];return Ue(u,o),{as:e=>o[0]=e}},join:(t,a,s,n)=>{const o=we(t)?a:t,[r,i]=we(t)?ue(n)||Se(s)?[void 0,s]:[s,n]:ue(s)||Se(a)?[void 0,a]:[a,s],l=[o,[o,r,Se(i)?i:e=>e(i),[],Lt(),we(t)?$(o):e]];return Ue(g,l),{as:e=>l[0]=e}},where:(e,t,a,s)=>Ue(w,Se(e)?e:we(e)?e=>e(!0,t,a)===s:ue(a)?a=>a(e)===t:s=>s(e,t)===a),group:(e,t,a,s,n)=>{const o=[e,[e,Se(t)?[t,a,s,n]:Dt(os,t)??[(e,t)=>t]]];return Ue(h,o),{as:e=>o[0]=e}},having:(e,t)=>Ue(y,Se(e)?e:a=>a(e)===t),param:e=>wt(c,e)});const f=Lt(u);if(Ze(f))return st(r,t),z;const b=Lt(g);Nt(b,(e,[,t])=>fe(Dt(b,t),({3:t})=>ue(e)?0:Ue(t,e)));const v=Lt(h);let S=a;if(Ze(v)&&We(y))S=l;else{U(t,S,l);const e=Lt();Nt(v,(t,[a,s])=>Jt(At(e,a,Ft),[t,s]));const a=Ft();Nt(f,t=>Ke(e,t)?0:Jt(a,t));const s=Lt(),n=(a,s,n,o)=>fe(a,([r,i,c,d])=>{Nt(s,(t,[a])=>{const s=At(r,t,Lt),i=Dt(s,n),l=o?void 0:a;if(i!==l){const a=Ft([[i,l]]),o=ze(s);Ot(s,n,l),at(Dt(e,t),([e,t])=>{const n=rs(d[e],o,s,a,t);d[e]=ue(Ma(n))?void 0:n})}}),Ze(i)||!Oe(y,e=>e(e=>d[e]))?l.delRow(t,c):ue(c)?a[2]=l.addRow(t,d):l.setRow(t,c,d)});x(S,t,S.addRowListener(t,null,(o,r,i,l)=>{const c=[],d=[],u=Lt(),g=S.hasRow(t,i);let w=!g;at(a,e=>{const[a,s,n]=l(t,i,e);Ue(c,s),Ue(d,n),w||=a}),Nt(e,e=>{const[a,,s]=l(t,i,e);(w||a)&&Ot(u,e,[s])}),w&&n(Ht(s,c,void 0,([,e])=>(st(e,i),Ze(e))),u,i,1),g&&n(Ht(s,d,()=>{const e={};return at(a,a=>e[a]=S.getCell(t,i,a)),[Lt(),Ft(),void 0,e]},([,e])=>{Jt(e,i)}),u,i)}))}U(t,i,S);const p=(e,a,s,n,r)=>{const l=e=>a.getCell(s,n,e);_e(r,a=>{const[s,,n,o,r,i]=Dt(b,a),c=n?.(l,e),d=Dt(r,e),u=d?.[0];c!=u&&(fe(d,([,e,a])=>F(t,e,a)),Ot(r,e,ue(c)?void 0:[c,i,...H(i,t,1,i.addRowListener(s,c,()=>p(e,i,s,c,o)))]))}),(e=>{const a=(t,a,s)=>{const n=we(t)?a:t,r=we(t)?s:a;if(ue(r))return i.getCell(o,e,t);if(n===o&&!we(t))return i.getCell(o,e,r);const l=Dt(b,n);return ue(l)?void 0:l[5].getCell(l[0],Dt(l[4],e)?.[0],r)};S.transaction(()=>Oe(w,e=>e(a))?Nt(f,(s,n)=>S._[5](t,e,s,n(a,e))):S.delRow(t,e))})(e)},{3:m}=Dt(b,void 0),R=(e,a,s)=>{i.hasRow(o,s)?p(s,i,o,s,m):(S.delRow(t,s),at(b,({4:e})=>fe(Dt(e,s),([,a,n])=>{F(t,a,n),Ot(e,s)})))};return S.transaction(()=>{_e(i.getRowIds(o),e=>R(0,0,e)),H(i,t,0,i.addRowListener(o,null,R))}),st(r,t),z})),q=e=>(fe(p(e),([,e])=>s.delListener(e)),s.delRow(go,e),W(e),J(e),E(e),z),B=e=>s.getRow(go,e),z={setQueryDefinition:(e,t,a,n,o={})=>{const[r,i,l,c]=we(t)?[a,n,1,o]:[t,a,0,n??{}];return fe(p(e),([,e])=>s.delListener(e)),L(e,r),m(e,[i,s.addRowListener(go,e,()=>G(e)),l]),j(e,c),G(e),z},delQueryDefinition:q,getParamValues:B,getParamValue:(e,t)=>s.getCell(go,e,t),setParamValues:(e,t)=>(S(e)&&j(e,t),z),setParamValue:(e,t,a)=>(S(e)&&s.setCell(go,e,t,a),z),getStore:f,getQueryIds:b,forEachQuery:v,hasQuery:S,getTableId:C,forEachResultTable:e=>v(t=>$(t).hasTable(t)?e(t,e=>z.forEachResultRow(t,e)):0),addQueryIdsListener:e=>N(()=>e(z)),addParamValuesListener:(e,t)=>"p"+s.addRowListener(go,e,(e,a,s)=>t(z,s,B(s))),addParamValueListener:(e,t,a)=>"p"+s.addCellListener(go,e,t,(e,t,s,n,o)=>a(z,s,n,o)),delListener:e=>{const t=Dt(i,e);if("p"==e[0])s.delListener(pe(e,1));else if(ue(t))y(e);else{const[a,s,n]=t;Nt(s,(e,[t,a])=>t.delListener(a)),fe(n,y),Ot(i,e),y(e),c[a]--}return z},destroy:()=>{_e(b(),q),M()},getListenerStats:()=>({...c,paramValues:s.getListenerStats().row-me(b()),paramValue:s.getListenerStats().cell})};return vt({[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(pe(["get","has","forEach"],0,e),e=>z[e+I+a]=(...t)=>$(t[0])[e+a](...t)),z[T+I+a+R]=(...e)=>((s,n)=>{const o=w(Re,l),r=Lt(),d=()=>{const s=null==n?b():[n];_e(s,s=>{return Ke(r,s)?0:Ot(r,s,[$(s),(n=$(s),n[T+a+R](...((e,t)=>5==t?[e[0],e[1]??void 0,e[2],e[3],e[4]]:pe(e,0,t))(e,t),(a,...s)=>e[t](z,...s),!0))]);var n}),Nt(r,(e,[t,a])=>null==n&&S(e)||e==n?0:(t.delListener(a),void Ot(r,e)))};return d(),Ot(i,o,[s,r,null==n?N(d):void 0]),c[s]++,o})((e=>e[0].toLowerCase()+pe(e,1))(a),e[0])}),dt(z)}),ho=Gt(e=>{const t=Lt(),a=Lt(),s=Lt(),n=Lt(),[o,r,i]=zt(()=>m),[l,c,u,g,w,h,,,y,f,b,v]=Ut(e,()=>[Lt(),Lt(),Lt(),Lt()],e=>ue(e)?void 0:e+d,o,r),S=(e,t,a)=>fe(h(e),([s,,n])=>{if(!Ke(n,t)){const o=Ft();if(w(e)!=p(e))Jt(o,t);else{let e=t;for(;!ue(e)&&!Ke(o,e);)Jt(o,e),e=Dt(s,e)}if(a)return o;Ot(n,t,o)}return Dt(n,t)}),C=(e,t)=>fe(h(e),([,,e])=>Ot(e,t)),p=e=>Dt(t,e),m={setRelationshipDefinition:(e,o,i,l)=>(Ot(t,e,i),y(e,o,(t,o)=>{const i=Ft(),l=Ft(),c=Ft(),[d,u]=h(e);at(o,([t,a],s)=>{ue(t)||(Jt(l,t),fe(Dt(u,t),e=>{st(e,s),Ze(e)&&Ot(u,t)})),ue(a)||(Jt(l,a),Ke(u,a)||Ot(u,a,Ft()),Jt(Dt(u,a),s)),Jt(i,s),Ot(d,s,a),Nt(Dt(n,e),t=>{Ke(S(e,t),s)&&Jt(c,t)})}),t(),at(i,t=>r(a,[e,t])),at(l,t=>r(s,[e,t])),at(c,t=>{C(e,t),r(n,[e,t])})},jt(l)),m),delRelationshipDefinition:e=>(Ot(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)=>Dt(h(e)?.[0],t),getLocalRowIds:(e,t)=>et(Dt(h(e)?.[1],t)),getLinkedRowIds:(e,t)=>ue(h(e))?[t]:et(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:Ye(a),localRowIds:Ye(s),linkedRowIds:Ye(n)})};return dt(m)}),yo={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},fo=(e,t,a,s,n,o,r,i,l={})=>{let c,u=0,g=0,w=0;const h=Lt(),y=()=>ta(11),f=(e,a,s,n)=>{g++,o?.(e,a,s,n),t(e,a,s,n)},b=async(e,t,a,s)=>Te((o,r)=>{const i=s+"."+ta(4),l=ne(()=>{st(h,i),r(`No response from ${e??"anyone"} to ${i}, `+t)},n);Ot(h,i,[e,(e,t)=>{clearTimeout(l),st(h,i),o([e,t,s])}]),f(e,i,t,a)}),v=(e,[t,a])=>{ft(t,([t,a],s)=>{const n=Rt(e[0],s,Ua);ft(t,([e,t],a)=>{const s=Rt(n[0],a,Ua);ft(e,([e,t],a)=>s[0][a]=$a(e,t)),s[1]=Fa(s[1],t)}),n[1]=Fa(n[1],a)}),e[1]=Fa(e[1],a)},S=(t=null,a,s=y())=>Ne(async()=>{ue(a)&&([a,t,s]=await b(null,1,d,s));const[n,o]=a,[r,i]=e.getMergeableContentHashes();let l=Ua();if(r!=n){const[a,n]=(await b(t,4,e.getMergeableTableHashes(),s))[0];if(l=a,!pt(n)){const[a,o]=(await b(t,5,e.getMergeableRowHashes(n),s))[0];if(v(l,a),!pt(o)){const a=(await b(t,6,e.getMergeableCellHashes(o),s))[0];v(l,a)}}}return[l,i==o?Ua():(await b(t,7,e.getMergeableValueHashes(),s))[0],1]},i),C=ys(e,async()=>{const e=await S();return!e||pt(e[0][0])&&pt(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?fe(Dt(h,a),([e,a])=>ge(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):fe(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},bo=(e,t,a,s,n)=>{const o=ta(),r=new BroadcastChannel(t);return fo(e,(e,t,a,s)=>r.postMessage([o,e,t,a,s]),e=>{r.onmessage=({data:[t,a,s,n,r]})=>ge(a)||a==o?e(t,s,n,r):0},()=>{r.close()},.01,a,s,n,{getChannelName:()=>t})},vo=Lt(),So=(e,t,a,s)=>{const n=ta();return fo(e,(e,t,a,s)=>ne(()=>ge(e)?Nt(vo,(e,o)=>e!=n?o(n,t,a,s):0):Dt(vo,e)?.(n,t,a,s)),e=>{Ot(vo,n,e)},()=>{st(vo,n)},.01,t,a,s)},Co=(e,t)=>{const a=e.indexOf("\n");-1!==a&&t(pe(e,0,a),pe(e,a+1))},po=(e,t)=>Co(e,(e,a)=>t(e,...ra(a))),mo=(e,...t)=>Ro(e??d,oa(t)),Ro=(e,t)=>e+"\n"+t,Io=async(e,t,a=1,s,n,o)=>{const r=(e,a)=>(t.addEventListener(e,a),()=>t.removeEventListener(e,a)),i=fo(e,(e,...a)=>t.send(mo(e,...a)),e=>r(H,({data:t})=>po(t.toString(m),e)),()=>{t.close()},a,s,n,o,{getWebSocket:()=>t});return Te(e=>{if(t.readyState!=t.OPEN){const t=t=>{t&&o?.(t),a(),s(),e(i)},a=r("open",()=>t()),s=r(F,t)}else e(i)})},To=/\/([^?]*)/,Lo="S",Eo=e=>B(new URL(e.url).pathname,To)?.[1]??d,Do=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,No=(e,t=null,a=null)=>new Response(a,{status:e,webSocket:t}),Mo=()=>No(426,null,"Upgrade required");class Oo extends i{#e;constructor(e,t){super(e,t),this.ctx.blockConcurrencyWhile(async()=>await fe(await this.createPersister(),async e=>{const t=fo(e.getStore(),(e,t,a,s)=>this.#t(Lo,mo(e,t,a,s)),e=>this.#e=t=>po(t,e),Ie,1);await e.load(),await e.startAutoSave(),ne(t.startSync)}))}fetch(e){const t=Eo(e);return fe(Do(e),e=>{const[a,s]=St(new WebSocketPair);return We(this.#a())&&this.onPathId(t,1),this.ctx.acceptWebSocket(s,[e,t]),this.onClientId(t,e,1),s.send(mo(Lo,null,1,d)),No(101,a)},Mo)}webSocketMessage(e,t){fe(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==me(this.#a())&&this.onPathId(a,-1)}#t(e,t,a){Co(t.toString(),(t,s)=>{const n=Ro(e,s);this.onMessage(e,t,s),t==d?(e!=Lo&&this.#e?.(n),_e(this.#a(),e=>{e!=a&&e.send(n)})):t==Lo?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 $e(this.#a(),e=>this.ctx.getTags(e)[0])}onPathId(e,t){}onClientId(e,t,a){}onMessage(e,t,a){}}const Ao=e=>(t,a)=>Do(t)?a[e].get(a[e].idFromName(Eo(t))).fetch(t):Mo(),Po=/\/([^?]*)/,ko=e=>{const t=Lt();return e.on("connection",(e,a)=>fe(B(a.url,Po),([,s])=>fe(a.headers["sec-websocket-key"],async a=>{const n=At(t,s,Lt);Ot(n,a,e),e.on(H,e=>Co(e.toString(m),(e,t)=>{const s=Ro(a,t);e===d?Nt(n,(e,t)=>e!==a?t.send(s):0):Dt(n,e)?.send(s)})),e.on("close",()=>{st(n,a),Ze(n)&&st(t,s)})}))),dt({getWebSocketServer:()=>e,destroy:async()=>{tt(t),e.close()}})},_o=/\/([^?]*)/,Vo=(e,t,a)=>{const s=Lt(),n=Lt(),o=Lt(),r=Lt(),[i,l,c]=zt(()=>w),u=async e=>{await(e[1]?.destroy()),await(e[2]?.destroy())},g=(e,t,a)=>s=>Co(s,(s,n)=>{const o=Ro(e,n);s===d?("S"!==e&&a[3]?.(o),Nt(t,(t,a)=>t!==e?a.send(o):0)):"S"===s?a[3]?.(o):Dt(t,s)?.send(o)});e.on("connection",(e,i)=>fe(B(i.url,_o),([,c])=>fe(i.headers["sec-websocket-key"],async i=>{const d=At(o,c,Lt),w=At(r,c,()=>[0]),h=g(i,d,w);Ze(d)&&(l(s,void 0,c,1),await(async(e,s,n)=>fe(await(t?.(s)),t=>{e[0]=1,e[1]=Ce(t)?t[0]:t;const s=g("S",n,e);e[2]=fo(e[1].getStore(),(e,t,a,n)=>s(mo(e,t,a,n)),t=>e[3]=e=>po(e,t),Ie,1,void 0,void 0,a),e[4]=[],e[5]=Ce(t)?t[1]:e=>0}))(w,c,d)),Ot(d,i,e),l(n,[c],i,1),e.on(H,e=>{const t=e.toString(m);0==w[0]?h(t):Ue(w[4],t)}),1==w[0]&&(await(async e=>{e[0]=2,await e[1].schedule(e[1].startAutoLoad,e[1].startAutoSave,e[2].startSync),e[5](e[1].getStore()),e[0]=0})(w),_e(w[4],h),w[4]=[]),e.on("close",async()=>{st(d,i),l(n,[c],i,-1),Ze(d)&&(await u(w),st(r,c),st(o,c),l(s,void 0,c,-1))}),a&&e.on(F,a)}))),a&&e.on(F,a);const w={getWebSocketServer:()=>e,getPathIds:()=>Et(o),getClientIds:e=>Et(Dt(o,e)),addPathIdsListener:e=>i(e,s),addClientIdsListener:(e,t)=>i(t,n,[e]),delListener:e=>(c(e),w),getStats:()=>({paths:ze(o),clients:Qe(o)}),destroy:async()=>{tt(o),await Le(Mt(r,u)),e.close()}};return dt(w)};export{yo as Message,gs as Persists,us as Status,Bn as TinyBasePartyKitServer,Oo as WsServerDurableObject,da as addOrRemoveHash,Un as broadcastChanges,fn as createAutomergePersister,bo as createBroadcastChannelSynchronizer,Qt as createCheckpoints,mn as createCrSqliteWasmPersister,ys as createCustomPersister,gn as createCustomPostgreSqlPersister,wn as createCustomSqlitePersister,fo as createCustomSynchronizer,In as createDurableObjectStoragePersister,Tn as createElectricSqlPersister,Ln as createExpoSqlitePersister,En as createFilePersister,An as createIndexedDbPersister,Na as createIndexes,Pn as createLibSqlPersister,Sn as createLocalPersister,So as createLocalSynchronizer,ns as createMergeableStore,is as createMetrics,ds as createMiddleware,pn as createOpfsPersister,xn as createPartyKitPersister,zn as createPglitePersister,Qn as createPostgresPersister,Yn as createPowerSyncPersister,wo as createQueries,Kn as createReactNativeMmkvPersister,Zn as createReactNativeSqlitePersister,ho as createRelationships,ao as createRemotePersister,Cn as createSessionPersister,ro as createSqlite3Persister,so as createSqliteBunPersister,no as createSqliteWasmPersister,ts as createStore,Vo as createWsServer,ko as createWsServerSimple,Io as createWsSynchronizer,uo as createYjsPersister,Da as defaultSorter,ha as getCellHash,ya as getCellInRowHash,ca as getHash,Ea as getHlcFunctions,fa as getRowHash,ba as getRowInTableHash,va as getTableHash,Sa as getTableInTablesHash,Ca as getTablesHash,ta as getUniqueId,wa as getValueHash,ga as getValueInValuesHash,ua as getValuesHash,Ao as getWsServerDurableObjectFetch,Fn as hasStoreInStorage,Jn as loadStoreFromStorage,Mn 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",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=Et(),m=Et(),T=Et(),E=Et(),k=Et(),H=Jt(),F=Et(),J=Et(),U=Et(),G=Et(),q=Xa(),z=Xa(),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=Et(),Se=Xa(),[Re,Te,Ie,Le]=Qt(()=>is),Ee=e=>{const t=i;i=1;const a=e();return i=t,a},Ne=(e,t,a,s=Object.is)=>be(t(),t=>e===t||s(e,t)?a(t):Ee(()=>a(t))),Ae=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))},ke=pe,$e=(t,a)=>(!e||Ze(m,a)||Xt(a))&&It(t,(e,t)=>We(a,t,e),()=>Xt(a)),We=(e,t,a,s)=>It(s?a:Ue(a,e,t),(s,n)=>be(He(e,t,n,s),e=>(a[n]=e,!0),()=>!1),()=>Xt(e,t)),He=(t,a,s,n)=>e?be(Nt(Nt(m,t),s),e=>we(n)?e[p]?n:Xt(t,a,s,n,e[C]):Oa(n)===e[S]?ka(n):Pa(e[S])&&_a(n)?n:Xt(t,a,s,n,e[C]),()=>Xt(t,a,s,n)):ge(Oa(n))?Xt(t,a,s,n):ka(n),Fe=(e,t)=>It(t?e:Ge(e),(t,a)=>be(Je(a,t),t=>(e[a]=t,!0),()=>!1),()=>Kt()),Je=(e,a)=>t?be(Nt(E,e),t=>we(a)?t[p]?a:Kt(e,a,t[C]):Oa(a)===t[S]?ka(a):Pa(t[S])&&_a(a)?a:Kt(e,a,t[C]),()=>Kt(e,a)):ge(Oa(a))?Kt(e,a):ka(a),Ue=(e,t,a)=>(be(Nt(T,t),([s,n])=>{st(s,(t,a)=>{yt(e,a)||(e[a]=t)}),st(n,s=>{yt(e,s)||Xt(t,a,s)})}),e),Ge=e=>(t&&(st(k,(t,a)=>{yt(e,a)||(e[a]=t)}),st(H,t=>{yt(e,t)||Kt(t)})),e),qe=e=>kt(m,e,(e,t,a)=>{const s=Et(),n=Jt();kt(Pt(m,t,Et),a,(e,t,a)=>{At(e,t,a),be(a[C],e=>At(s,t,e),()=>Ut(n,t))}),At(T,t,[s,n])},(e,t)=>{At(m,t),At(T,t)}),ze=e=>kt(E,e,(e,t,a)=>{At(E,t,a),be(a[C],e=>At(k,t,e),()=>Ut(H,t))},(e,t)=>{At(E,t),At(k,t),nt(H,t)}),Be=e=>mt(e)?Ja():Ma(e),tt=(e,t,a,s,n,o)=>ge(s)?Ga(e,t,a,!0,n):Aa(e,t,a,s,n,o),ot=e=>mt(e)?qa():$a(e),rt=(e,t,a)=>ge(t)?za(e,a):xa(e,t,a),it=(e,t)=>Ne(e,()=>t?e:be(o[1],t=>Ee(()=>t(De(e))),()=>e),e=>kt(U,e,(e,t,a)=>lt(t,a),(e,t)=>Ct(t)),Rt),lt=(e,t,a)=>Ne(t,()=>a?t:be(o[2],a=>Ee(()=>a(e,De(t))),()=>t),t=>kt(Pt(U,e,()=>(Ft(e,1),At(F,e,Bt()),At(J,e,Et()),Et())),t,(t,a,s)=>dt(e,t,a,s),(t,a)=>pt(e,t,a)),Rt),dt=(e,t,a,s,n)=>Ne(s,()=>n?s:be(o[3],t=>Ee(()=>t(e,a,De(s))),()=>s),s=>kt(Pt(t,a,()=>(jt(e,a,1),Et())),s,(t,s,n)=>gt(e,a,t,s,n),(s,o)=>Tt(e,t,a,s,o,n)),Rt),gt=(e,t,a,s,n,r)=>Ne(n,()=>be(r?void 0:o[4],a=>Ee(()=>a(e,t,s,n)),()=>n),n=>{Ze(a,s)||Gt(e,t,s,1);const o=Nt(a,s);n!==o&&(qt(e,t,s,o,n),At(a,s,n))}),wt=(e,t,a,s,n,o)=>be(Nt(t,a),t=>gt(e,a,t,s,n,o),()=>{const r=Et();At(t,a,r),jt(e,a,1),St(Ue({[s]:n},e,a),(t,s)=>gt(e,a,r,s,t,o))}),ht=(e,t)=>Ne(e,()=>t?e:be(o[5],t=>Ee(()=>t(De(e))),()=>e),e=>kt(G,e,(e,t,a)=>bt(t,a),(e,t)=>Lt(t)),Rt),bt=(e,t,a)=>Ne(t,()=>be(a?void 0:o[6],a=>Ee(()=>a(e,t)),()=>t),t=>{Ze(G,e)||zt(e,1);const a=Nt(G,e);t!==a&&(Yt(e,a,t),At(G,e,t))}),vt=e=>Pt(U,e,()=>(Ft(e,1),At(F,e,Bt()),At(J,e,Et()),Et())),Ct=e=>Ee(()=>o[8]?.(e))??1?lt(e,{},!0):Nt(U,e),pt=(e,t,a)=>{if(Ee(()=>o[9]?.(e,a))??1){const[,s]=Nt(F,e);s(a),dt(e,t,a,{},!0)}},Tt=(e,t,a,s,n,r,i)=>{const l=Nt(Nt(T,e)?.[0],n);if(!ge(l)&&!r)return gt(e,a,s,n,l);if(i||(Ee(()=>o[10]?.(e,a,n))??1)){const o=t=>{qt(e,a,t,Nt(s,t)),Gt(e,a,t,-1),At(s,t)};ge(l)?o(n):Mt(s,o),et(s)&&(jt(e,a,-1),et(At(t,a))&&(Ft(e,-1),At(U,e),At(F,e),At(J,e)))}},Lt=(e,t)=>{const a=Nt(k,e);if(!ge(a))return bt(e,a);(t||(Ee(()=>o[12]?.(e))??1))&&(Yt(e,Nt(G,e)),zt(e,-1),At(G,e))},Ft=(e,t)=>es(l,e,t),jt=(e,t,a)=>es(Pt(u,e,Et),t,a)&&At(d,e,Pt(d,e,()=>0)+a),Gt=(e,t,a,s)=>{const n=Nt(J,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)},qt=(e,t,a,s,n)=>{Pt(Pt(Pt(w,e,Et),t,Et),a,()=>[s,0])[1]=n,r[3]?.(e,t,a,n,i)},zt=(e,t)=>es(y,e,t),Yt=(e,t,a)=>{Pt(f,e,()=>[t,0])[1]=a,r[4]?.(e,a,i)},Xt=(e,t,a,s,n)=>(je(Pt(Pt(Pt(b,e,Et),t,Et),a,()=>[]),s),n),Kt=(e,t,a)=>(je(Pt(v,e,()=>[]),t),a),Zt=(e,t,a)=>be(Nt(Nt(Nt(w,e),t),a),([e,t])=>[!0,Va(e),Va(t)],()=>[!1,...Qa(va(e,t,a))]),ea=e=>be(Nt(f,e),([e,t])=>[!0,Va(e),Va(t)],()=>[!1,...Qa(pa(e))]),ta=e=>et(b)||et(ie[e])?0:st(e?Ht(b):b,(t,a)=>st(t,(t,s)=>st(t,(t,n)=>Te(ie[e],[a,s,n],t)))),aa=e=>et(v)||et(le[e])?0:st(e?xt(v):v,(t,a)=>Te(le[e],[a],t)),sa=(e,t,a,s)=>{if(!et(e))return Te(t,s,()=>_t(e)),Mt(e,(e,t)=>Te(a,[...s??[],e],1==t)),1},ra=e=>{const t=!et(q[e]),s=!et(te[e]),n=!(et(ne[e])&&et(oe[e])&&et(ee[e])&&et(ae[e])&&et(X[e])&&et(K[e])&&et(Z[e])&&!s&&et(B[e])&&et(Q[e])),o=!(et(re[e])&&et(se[e])&&et(Y[e])&&et(z[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=ma();t!=a&&Te(q[e],void 0,t)}if(n){sa(i[0],B[e],Q[e]),st(i[1],(t,a)=>sa(t,X[e],K[e],[a])),st(i[2],(t,a)=>{0!=t&&Te(Z[e],[a],ha(a))});const t=Jt();st(i[3],(a,n)=>{sa(a,ee[e],ae[e],[n])&&s&&(Te(te[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=>Te(te[e],[s,t]))}}),st(i[4],(t,a)=>st(t,(t,s)=>sa(t,ne[e],oe[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&&(Te(re[e],[s,o,l],Va(i),Va(a),Zt),t=n=r=1)}),r&&Te(se[e],[s,o],Zt)}),n&&Te(Y[e],[s],Zt)}),t&&Te(z[e],void 0,Zt)}}var r},ia=e=>{const t=!et(ce[e]),a=!et(ue[e])||!et(he[e]),n=!et(ye[e])||!et(de[e]);if(t||a||n){const o=e?[xt(y),xt(f,Ka)]:[y,f];if(t){const t=Ea();t!=s&&Te(ce[e],void 0,t)}if(a&&sa(o[0],ue[e],he[e]),n){let t;st(o[1],([a,s],n)=>{s!==a&&(Te(ye[e],[n],Va(s),Va(a),ea),t=1)}),t&&Te(de[e],void 0,ea)}}},la=(e,...t)=>(ns(()=>e(...xe(t,j))),is),ca=(e,t,a,s,n)=>{let o=fa(e,t,...a);return Re(()=>{const n=fa(e,t,...a);Pe(n,o)||(o=n,s(is,e,t,...a,o))},te[n?1:0],[e,t],[ga])},da=(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(f,([,t])=>Va(t,0,e),e=>Za(e)),1],ua=()=>$t(U,Va),ga=()=>Dt(U),wa=e=>Dt(Nt(J,j(e))),ha=e=>Qe(Nt(U,j(e))),ya=e=>Dt(Nt(U,j(e))),fa=(e,t,a,s=0,n)=>ct(e)?fa(e.tableId,e.cellId,e.descending,e.offset,e.limit):xe(me(_e(Ot(Nt(U,j(e)),(e,a)=>[ge(t)?a:Nt(e,j(t)),a]),([e],[t])=>Na(e,t)*(a?-1:1)),s,ge(n)?n:s+n),([,e])=>e),ba=(e,t)=>Dt(Nt(Nt(U,j(e)),j(t))),va=(e,t,a)=>Va(Nt(Nt(Nt(U,j(e)),j(t)),j(a))),Sa=()=>_t(G,Va),Ca=()=>Dt(G),pa=e=>Va(Nt(G,j(e))),ma=()=>!et(U),Ra=e=>Ze(U,j(e)),Ta=(e,t)=>Ze(Nt(J,j(e)),j(t)),Ia=(e,t)=>Ze(Nt(U,j(e)),j(t)),La=(e,t,a)=>Ze(Nt(Nt(U,j(e)),j(t)),j(a)),Ea=()=>!et(G),Da=e=>Ze(G,j(e)),Ma=e=>la(()=>(e=>It(e,$e,Xt))(e)?it(e):0),Aa=(e,t,a,s,n,r)=>la((e,t,a)=>be(He(e,t,a,Ce(s)?s(va(e,t,a)):s),s=>{const i=vt(e);be(n||r||!o[14]?.()?void 0:o[3],o=>{const r=Nt(i,t),l={...r?_t(r):{},[a]:s};be(Ee(()=>o(e,t,De(l))),a=>((e,t,a,s,n)=>{kt(Pt(t,a,()=>(jt(e,a,1),Et())),s,(t,s,o)=>be(He(e,a,s,o),o=>gt(e,a,t,s,o,n)),(s,n)=>Tt(e,t,a,s,n,!0))})(e,i,t,a,n))},()=>wt(e,i,t,a,s,n))}),e,t,a),$a=e=>la(()=>Fe(e)?ht(e):0),xa=(e,t,a)=>la(e=>be(Je(e,Ce(t)?t(pa(e)):t),t=>bt(e,t,a)),e),Wa=e=>(Me(()=>Be(na(e))),is),Ha=t=>la(()=>{if((e=It(t,e=>It(e,Ae)))&&(qe(t),!et(U))){const e=ua();Ja(),Ma(e)}}),Fa=e=>la(()=>{if(t=(e=>It(e,Ae))(e)){const a=Sa();ss(),qa(),t=!0,ze(e),$a(a)}}),Ja=()=>la(()=>Ee(()=>o[7]?.())??1?it({},!0):0),Ua=e=>la(e=>Ze(U,e)?Ct(e):0,e),ja=(e,t)=>la((e,t)=>be(Nt(U,e),a=>Ze(a,t)?pt(e,a,t):0),e,t),Ga=(e,t,a,s,n)=>la((e,t,a)=>be(Nt(U,e),o=>be(Nt(o,t),r=>Ze(r,a)?Tt(e,o,t,r,a,s,n):0)),e,t,a),qa=()=>la(()=>Ee(()=>o[11]?.())??1?ht({},!0):0),za=(e,t)=>la(e=>Ze(G,e)?Lt(e,t):0,e),Ba=()=>la(()=>{qe({}),e=!1}),ss=()=>la(()=>{ze({}),t=!1}),ns=(e,t)=>{if(-1!=n){os();const a=e();return rs(t),a}},os=()=>(-1!=n&&n++,1==n&&(r[0]?.(),Te(fe)),is),rs=e=>(n>0&&(n--,0==n&&(n=1,Ee(()=>{ta(1),et(w)||ra(1),aa(1),et(f)||ia(1)}),e?.(is)&&(st(w,(e,t)=>st(e,(e,a)=>st(e,([e],s)=>tt(t,a,s,e,!0)))),at(w),st(f,([e],t)=>rt(t,e,!0)),at(f)),Te(Se[0],void 0),n=-1,ta(0),et(w)||ra(0),aa(0),et(f)||ia(0),r[1]?.(),Te(Se[1],void 0),r[2]?.(),n=0,a=ma(),s=Ea(),Ve([l,c,d,u,g,w,b,y,f,v],at))),is),is={getContent:()=>[ua(),Sa()],getTables:ua,getTableIds:ga,getTable:e=>Vt(Nt(U,j(e)),Va),getTableCellIds:wa,getRowCount:ha,getRowIds:ya,getSortedRowIds:fa,getRow:(e,t)=>_t(Nt(Nt(U,j(e)),j(t)),Va),getCellIds:ba,getCell:va,getValues:Sa,getValueIds:Ca,getValue:pa,hasTables:ma,hasTable:Ra,hasTableCell:Ta,hasRow:Ia,hasCell:La,hasValues:Ea,hasValue:Da,getTablesJson:()=>oa(U),getValuesJson:()=>oa(G),getJson:()=>oa([U,G]),getTablesSchemaJson:()=>oa(m),getValuesSchemaJson:()=>oa(E),getSchemaJson:()=>oa([m,E]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>la(()=>{const t=Ce(e)?e():e;ke(t)&&(e=>{Ne(e,()=>be(o[0],t=>Ee(()=>t(De(e))),()=>e),([e,t])=>{(mt(e)?Ja:Ma)(e),(mt(t)?qa:$a)(t)},ts)})(t)}),setTables:Ma,setTable:(e,t)=>la(e=>$e(t,e)?lt(e,t):0,e),setRow:(e,t,a)=>la((e,t)=>We(e,t,a)?dt(e,vt(e),t,a):0,e,t),addRow:(e,t,a=!0)=>ns(()=>{let s;return We(e,s,t)&&(e=j(e),dt(e,vt(e),s=((e,t)=>{const[a]=Nt(F,e);let s;do{s=a(t)}while(Ze(Nt(U,e),s));return s})(e,a?1:0),t)),s}),setPartialRow:(e,t,a)=>la((e,t)=>{if(We(e,t,a,1)){const s=vt(e);St(a,(a,n)=>wt(e,s,t,n,a))}},e,t),setCell:Aa,setValues:$a,setPartialValues:e=>la(()=>Fe(e,1)?St(e,(e,t)=>bt(t,e)):0),setValue:xa,applyChanges:e=>la(()=>Ne(e,()=>be(o[13],t=>Ee(()=>t(De(e))),()=>e),e=>{St(e[0],(e,t)=>ge(e)?Ua(t):St(e,(e,a)=>ge(e)?ja(t,a):St(e,(e,s)=>tt(t,a,s,e,void 0,!0)))),St(e[1],(e,t)=>rt(t,e))},ts)),setTablesJson:Wa,setValuesJson:e=>(Me(()=>ot(na(e))),is),setJson:e=>la(()=>Me(()=>{const[t,a]=na(e);Be(t),ot(a)},()=>Wa(e))),setTablesSchema:Ha,setValuesSchema:Fa,setSchema:(e,t)=>la(()=>{Ha(e),Fa(t)}),delTables:Ja,delTable:Ua,delRow:ja,delCell:Ga,delValues:qa,delValue:za,delTablesSchema:Ba,delValuesSchema:ss,delSchema:()=>la(()=>{Ba(),ss()}),transaction:ns,startTransaction:os,getTransactionChanges:()=>da(),getTransactionLog:()=>[!et(w),!et(f),$t(w,Ka,Za),$t(b),_t(f,Ka,Za),_t(v),_t(l),Vt(u),$t(g),_t(y)],finishTransaction:rs,forEachTable:e=>st(U,(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(J,j(e)),t),forEachRow:(e,t)=>st(Nt(U,j(e)),(e,a)=>t(a,t=>Mt(e,(e,a)=>t(e,Va(a))))),forEachCell:(e,t,a)=>Mt(Nt(Nt(U,j(e)),j(t)),(e,t)=>a(e,Va(t))),forEachValue:e=>Mt(G,(t,a)=>e(t,Va(a))),addSortedRowIdsListener:(e,t,a,s,n,o,r)=>ct(e)?ca(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,a):ca(e,t,[a,s,n],o,r),addStartTransactionListener:e=>Re(e,fe),addWillFinishTransactionListener:e=>Re(e,Se[0]),addDidFinishTransactionListener:e=>Re(e,Se[1]),callListener:e=>(Le(e),is),delListener:e=>(Ie(e),is),getListenerStats:()=>({hasTables:Ya(q),tables:Ya(z),tableIds:Ya(B),hasTable:Ya(Q),table:Ya(Y),tableCellIds:Ya(X),hasTableCell:Ya(K,Xe),rowCount:Ya(Z),rowIds:Ya(ee),sortedRowIds:Ya(te),hasRow:Ya(ae,Xe),row:Ya(se,Xe),cellIds:Ya(ne,Xe),hasCell:Ya(oe,Ke),cell:Ya(re,Ke),invalidCell:Ya(ie,Ke),hasValues:Ya(ce),values:Ya(de),valueIds:Ya(ue),hasValue:Ya(he),value:Ya(ye),invalidValue:Ya(le),transaction:Ye(fe)+Ya(Se)}),isMergeable:()=>!1,_:[as,Re,Te,(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],tt,rt,()=>[$t(U),_t(G)],()=>da(!0)]};return St({[L+N]:[0,q,[],()=>[ma()]],[N]:[0,z],[M]:[0,B],[L+D]:[1,Q,[ga],e=>[Ra(...e)]],[D]:[1,Y,[ga]],[D+V]:[1,X,[ga]],[L+D+_]:[2,K,[ga,wa],e=>[Ta(...e)]],[A]:[1,Z,[ga]],[P]:[1,ee,[ga]],[L+O]:[2,ae,[ga,ya],e=>[Ia(...e)]],[O]:[2,se,[ga,ya]],[V]:[2,ne,[ga,ya]],[L+_]:[3,oe,[ga,ya,ba],e=>[La(...e)]],[_]:[3,re,[ga,ya,ba],e=>Qa(va(...e))],InvalidCell:[3,ie],[L+x]:[0,ce,[],()=>[Ea()]],[x]:[0,de],[W]:[0,ue],[L+$]:[1,he,[Ca],e=>[Da(...e)]],[$]:[1,ye,[Ca],e=>Qa(pa(e[0]))],InvalidValue:[1,le]},([e,t,a,s],n)=>{is[I+n+R]=(...n)=>Re(n[e],t[n[e+1]?1:0],e>0?me(n,0,e):void 0,a,s)}),ut(is)},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)=>{Ut(Pt(Pt(r,e,Et),t,Jt),s),(a||c)&&(c&&(o=1),w([[{[e]:[{[t]:[{[s]:[i,n?d:l()]}]}]}],[{}],1]))},(e,t,s)=>{Ut(i,e),(a||s)&&(s&&(o=1),w([[{}],[{[e]:[t,n?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):e?p(e):Ne("Content is not an array: "+a)},()=>{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].schedule(e[1].startAutoLoad,e[1].startAutoSave,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};
|
package/min/omni/index.js.gz
CHANGED
|
Binary file
|