tinybase 8.0.0-beta.0 → 8.0.0-beta.1
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/index.d.ts +1 -0
- package/@types/mergeable-store/with-schemas/index.d.ts +1 -1
- package/@types/middleware/index.d.ts +1064 -0
- package/@types/middleware/with-schemas/index.d.ts +1355 -0
- package/@types/omni/index.d.ts +1 -0
- package/@types/omni/with-schemas/index.d.ts +1 -0
- package/@types/store/index.d.ts +0 -1
- package/@types/with-schemas/index.d.ts +1 -0
- package/agents.md +33 -11
- package/checkpoints/index.js +20 -20
- package/checkpoints/with-schemas/index.js +20 -20
- package/common/index.js +3 -2
- package/common/with-schemas/index.js +3 -2
- package/index.js +574 -215
- package/indexes/index.js +13 -12
- package/indexes/with-schemas/index.js +13 -12
- package/mergeable-store/index.js +461 -197
- package/mergeable-store/with-schemas/index.js +461 -197
- package/metrics/index.js +13 -12
- package/metrics/with-schemas/index.js +13 -12
- package/middleware/index.js +130 -0
- package/middleware/with-schemas/index.js +130 -0
- package/min/checkpoints/index.js +1 -1
- package/min/checkpoints/index.js.gz +0 -0
- package/min/checkpoints/with-schemas/index.js +1 -1
- package/min/checkpoints/with-schemas/index.js.gz +0 -0
- package/min/common/index.js +1 -1
- package/min/common/index.js.gz +0 -0
- package/min/common/with-schemas/index.js +1 -1
- package/min/common/with-schemas/index.js.gz +0 -0
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/indexes/index.js +1 -1
- package/min/indexes/index.js.gz +0 -0
- package/min/indexes/with-schemas/index.js +1 -1
- package/min/indexes/with-schemas/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/metrics/index.js +1 -1
- package/min/metrics/index.js.gz +0 -0
- package/min/metrics/with-schemas/index.js +1 -1
- package/min/metrics/with-schemas/index.js.gz +0 -0
- package/min/middleware/index.js +1 -0
- package/min/middleware/index.js.gz +0 -0
- package/min/middleware/with-schemas/index.js +1 -0
- package/min/middleware/with-schemas/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-automerge/index.js +1 -1
- package/min/persisters/persister-automerge/index.js.gz +0 -0
- package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-browser/index.js +1 -1
- package/min/persisters/persister-browser/index.js.gz +0 -0
- package/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/min/persisters/persister-browser/with-schemas/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-durable-object-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-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-file/index.js +1 -1
- package/min/persisters/persister-file/index.js.gz +0 -0
- package/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/index.js +1 -1
- package/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/min/persisters/persister-indexed-db/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-partykit-client/index.js +1 -1
- package/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/index.js +1 -1
- package/min/persisters/persister-partykit-server/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-server/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-mmkv/index.js +1 -1
- package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
- package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -1
- package/min/persisters/persister-react-native-mmkv/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-remote/index.js +1 -1
- package/min/persisters/persister-remote/index.js.gz +0 -0
- package/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/min/persisters/persister-remote/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/persister-yjs/index.js +1 -1
- package/min/persisters/persister-yjs/index.js.gz +0 -0
- package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/min/persisters/persister-yjs/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/relationships/index.js +1 -1
- package/min/relationships/index.js.gz +0 -0
- package/min/relationships/with-schemas/index.js +1 -1
- package/min/relationships/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/index.js +1 -1
- package/min/synchronizers/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/index.js +1 -1
- package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-local/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/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/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 +610 -232
- package/omni/with-schemas/index.js +610 -232
- package/package.json +55 -19
- package/persisters/index.js +29 -12
- package/persisters/persister-automerge/index.js +17 -9
- package/persisters/persister-automerge/with-schemas/index.js +17 -9
- package/persisters/persister-browser/index.js +34 -10
- package/persisters/persister-browser/with-schemas/index.js +34 -10
- package/persisters/persister-cr-sqlite-wasm/index.js +29 -12
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +29 -12
- package/persisters/persister-durable-object-sql-storage/index.js +29 -12
- package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +29 -12
- package/persisters/persister-durable-object-storage/index.js +24 -17
- package/persisters/persister-durable-object-storage/with-schemas/index.js +24 -17
- package/persisters/persister-electric-sql/index.js +29 -12
- package/persisters/persister-electric-sql/with-schemas/index.js +29 -12
- package/persisters/persister-expo-sqlite/index.js +29 -12
- package/persisters/persister-expo-sqlite/with-schemas/index.js +29 -12
- package/persisters/persister-file/index.js +34 -10
- package/persisters/persister-file/with-schemas/index.js +34 -10
- package/persisters/persister-indexed-db/index.js +17 -9
- package/persisters/persister-indexed-db/with-schemas/index.js +17 -9
- package/persisters/persister-libsql/index.js +29 -12
- package/persisters/persister-libsql/with-schemas/index.js +29 -12
- package/persisters/persister-partykit-client/index.js +44 -11
- package/persisters/persister-partykit-client/with-schemas/index.js +44 -11
- package/persisters/persister-partykit-server/index.js +39 -4
- package/persisters/persister-partykit-server/with-schemas/index.js +39 -4
- package/persisters/persister-pglite/index.js +29 -12
- package/persisters/persister-pglite/with-schemas/index.js +29 -12
- package/persisters/persister-postgres/index.js +29 -12
- package/persisters/persister-postgres/with-schemas/index.js +29 -12
- package/persisters/persister-powersync/index.js +29 -12
- package/persisters/persister-powersync/with-schemas/index.js +29 -12
- package/persisters/persister-react-native-mmkv/index.js +17 -9
- package/persisters/persister-react-native-mmkv/with-schemas/index.js +17 -9
- package/persisters/persister-react-native-sqlite/index.js +29 -12
- package/persisters/persister-react-native-sqlite/with-schemas/index.js +29 -12
- package/persisters/persister-remote/index.js +17 -9
- package/persisters/persister-remote/with-schemas/index.js +17 -9
- package/persisters/persister-sqlite-bun/index.js +29 -12
- package/persisters/persister-sqlite-bun/with-schemas/index.js +29 -12
- package/persisters/persister-sqlite-wasm/index.js +29 -12
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +29 -12
- package/persisters/persister-sqlite3/index.js +29 -12
- package/persisters/persister-sqlite3/with-schemas/index.js +29 -12
- package/persisters/persister-yjs/index.js +19 -11
- package/persisters/persister-yjs/with-schemas/index.js +19 -11
- package/persisters/with-schemas/index.js +29 -12
- package/queries/index.js +16 -20
- package/queries/with-schemas/index.js +16 -20
- package/readme.md +21 -13
- package/relationships/index.js +13 -12
- package/relationships/with-schemas/index.js +13 -12
- package/releases.md +41 -41
- package/store/index.js +442 -192
- package/store/with-schemas/index.js +442 -192
- package/synchronizers/index.js +17 -9
- package/synchronizers/synchronizer-broadcast-channel/index.js +17 -9
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +17 -9
- package/synchronizers/synchronizer-local/index.js +19 -11
- package/synchronizers/synchronizer-local/with-schemas/index.js +19 -11
- package/synchronizers/synchronizer-ws-client/index.js +31 -10
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +31 -10
- package/synchronizers/synchronizer-ws-server/index.js +34 -13
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +34 -13
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +31 -10
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +31 -10
- package/synchronizers/synchronizer-ws-server-simple/index.js +11 -10
- package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +11 -10
- package/synchronizers/with-schemas/index.js +17 -9
- package/ui-react-inspector/index.js +438 -193
- package/ui-react-inspector/with-schemas/index.js +438 -193
- package/with-schemas/index.js +574 -215
|
@@ -1 +1 @@
|
|
|
1
|
-
import{addDatabaseChangeListener as e}from"expo-sqlite";import{existsSync as t,writeFileSync as n,watch as s}from"fs";import{writeFile as a,readFile as o}from"fs/promises";import{Map as r}from"yjs";import{DurableObject as l}from"cloudflare:workers";import{jsx as i,jsxs as c,Fragment as d}from"react/jsx-runtime";import u from"react";const h=e=>typeof e,g="tinybase",m="",w=",",p=".",I=h(m),b=h(!0),v=h(0),y=h(h),f="true",C="type",T="default",S="allowNull",R="utf8",x="Listener",L="Result",k="get",D="add",q="Has",N="Ids",M="Table",E=M+"s",P=M+N,A="Row",$=A+"Count",V=A+N,O="Sorted"+A+N,H="Cell",Z=H+N,_="Value",F=_+"s",B=_+N,z="Transaction",J="Partial",U="Finish",W="Status",j="Metric",G="Slice",Q="RemoteRowId",Y="Local",K="Linked",X="Checkpoint",ee="currentTarget",te="value",ne="message",se="error",ae="extra",oe="t",re="v",le=e=>m+e,ie=(e,t)=>e.startsWith(t),ce=(e,t)=>e.endsWith(t),de=(e,t)=>e?.match(t),ue=(e,t=m,n)=>e.split(t,n),he=(e,t,n)=>e.replace(t,n),ge=Promise,me=e=>(t,n,s)=>e(t)?s?.():n(t),we=globalThis,pe=we.window,Ie=(e,t,n)=>setInterval(e,1e3*t),be=clearInterval,ve=(e,t=0)=>setTimeout(e,1e3*t),ye=Math,fe=ye.max,Ce=ye.min,Te=ye.floor,Se=isFinite,Re=e=>null==e,xe=e=>void 0===e,Le=e=>null===e,ke=e=>!0===e,De=e=>!1===e,qe=me(Re),Ne=me(xe),Me=e=>e==I||e==b,Ee=e=>h(e)==I,Pe=e=>h(e)==y,Ae=e=>Array.isArray(e),$e=(e,t,n)=>e.slice(t,n),Ve=e=>e.length,Oe=()=>{},He=()=>{},Ze=e=>e,_e=e=>new ge(e),Fe=async e=>ge.all(e),Be=e=>{throw Error(e)},ze=async(e,t,n)=>{try{return await e()}catch(e){t?.(e)}},Je=(e,t)=>e.includes(t),Ue=(e,t)=>e.every(t),We=(e,t)=>Ve(e)===Ve(t)&&Ue(e,(e,n)=>t[n]===e),je=(e,t)=>Ae(e)&&Ae(t)?We(e,t):e===t,Ge=(e,t)=>Ue(e,(n,s)=>0==s||t(e[s-1],n)<=0),Qe=(e,t)=>e.sort(t),Ye=(e,t)=>e.forEach(t),Ke=(e,t=m)=>e.join(t),Xe=(e,t)=>e.map(t),et=e=>nt(e,(e,t)=>e+t,0),tt=e=>0==Ve(e),nt=(e,t,n)=>e.reduce(t,n),st=(e,t)=>e.filter(t),at=(e,t)=>e.splice(0,t),ot=(e,...t)=>e.push(...t),rt=e=>e.pop(),lt=(e,...t)=>e.unshift(...t),it=e=>e.shift(),ct=(e,t,n)=>e.with(t,n),dt=e=>{if(Le(e))return"null";const t=h(e);return Me(t)||t==v&&Se(e)?t:void 0},ut=e=>xe(e)||!xe(dt(e)),ht=(e,t,n,s,a)=>xe(a)?e.delCell(t,n,s,!0):e.setCell(t,n,s,a),gt=(e,t,n)=>xe(n)?e.delValue(t):e.setValue(t,n),mt=(e,t,n,s)=>e==I?t:e==v?n:e==b?s:null,wt=e=>t=>nt(Ct(t),(t,n)=>t+e(n),0),pt=e=>e?.size??0,It=wt(pt),bt=wt(It),vt=wt(bt),yt=(e,t)=>e?.has(t)??!1,ft=e=>xe(e)||0==pt(e),Ct=e=>[...e?.values()??[]],Tt=e=>e.clear(),St=(e,t)=>e?.forEach(t),Rt=(e,t)=>e?.delete(t),xt=Object,Lt=e=>xt.getPrototypeOf(e),kt=xt.isFrozen,Dt=xt.entries,qt=e=>!Re(e)&&qe(Lt(e),e=>e==xt.prototype||Re(Lt(e)),()=>!0),Nt=xt.keys,Mt=xt.freeze,Et=(e=[])=>xt.fromEntries(e),Pt=(...e)=>xt.assign({},...e),At=(e,t)=>Ne(e,e=>e[t]),$t=(e,t)=>t in e,Vt=(e,t)=>(delete e[t],e),Ot=(e,t)=>Ye(Dt(e),([e,n])=>t(n,e)),Ht=(e,t)=>Xe(Dt(e),([e,n])=>t(n,e)),Zt=(e,t)=>Et(Ht(e,(e,n)=>[n,t(e,n)])),_t=e=>xt.values(e),Ft=e=>Ve(Nt(e)),Bt=e=>qt(e)&&0==Ft(e),zt=(e,t,n=(e,t)=>e===t)=>{const s=Dt(e);return Ve(s)===Ft(t)&&Ue(s,([e,s])=>qt(s)?!!qt(t[e])&&zt(t[e],s):n(s,t[e]))},Jt=(e,t,n)=>($t(e,t)||(e[t]=n()),e[t]),Ut=(e,t,n,s=0)=>Re(e)||!qt(e)||!s&&Bt(e)||kt(e)?(n?.(),!1):(Ot(e,(n,s)=>{t(n,s)||Vt(e,s)}),!!s||!Bt(e)),Wt=e=>new Map(e),jt=e=>[...e?.keys()??[]],Gt=(e,t)=>e?.get(t),Qt=(e,t)=>St(e,(e,n)=>t(n,e)),Yt=(e,t)=>Xe([...e?.entries()??[]],([e,n])=>t(n,e)),Kt=(e,t,n)=>xe(n)?(Rt(e,t),e):e?.set(t,n),Xt=(e,t,n,s)=>(yt(e,t)?s?.(Gt(e,t)):Kt(e,t,n()),Gt(e,t)),en=(e,t,n,s=Kt)=>(Zt(t,(t,s)=>n(e,s,t)),Qt(e,n=>$t(t,n)?0:s(e,n)),e),tn=(e,t,n,s)=>{const a={};return St(e,(e,o)=>{if(!n?.(e,o)){const n=t?t(e,o):e;s?.(n)||(a[o]=n)}}),a},nn=(e,t,n)=>tn(e,e=>tn(e,t,n),ft,Bt),sn=(e,t,n)=>tn(e,e=>nn(e,t,n),ft,Bt),an=(e,t)=>{const n=Wt();return St(e,(e,s)=>n.set(s,t?.(e)??e)),n},on=e=>an(e,an),rn=e=>an(e,on),ln=(e,t,n,s,a=0)=>Ne((n?Xt:Gt)(e,t[a],a>Ve(t)-2?n:Wt),o=>{if(a>Ve(t)-2)return s?.(o)&&Kt(e,t[a]),o;const r=ln(o,t,n,s,a+1);return ft(o)&&Kt(e,t[a]),r}),cn=e=>new Set(Ae(e)||xe(e)?e:[e]),dn=(e,t)=>e?.add(t),un=(e,t,n,s,a)=>{const o=e.hasRow,r=Wt(),l=Wt(),i=Wt(),c=Wt(),d=Wt(),u=Wt(),h=(t,n,...s)=>{const a=Xt(u,t,cn);return Ye(s,t=>dn(a,t)&&n&&e.callListener(t)),s},g=(t,...n)=>Ne(Gt(u,t),s=>{Ye(tt(n)?Ct(s):n,t=>{e.delListener(t),Rt(s,t)}),ft(s)&&Kt(u,t)}),m=(e,n)=>{Kt(r,e,n),yt(l,e)||(Kt(l,e,t()),Kt(c,e,Wt()),Kt(d,e,Wt()),a(i))},w=e=>{Kt(r,e),Kt(l,e),Kt(c,e),Kt(d,e),g(e),a(i)};return[()=>e,()=>jt(r),e=>Qt(l,e),e=>yt(l,e),e=>Gt(r,e),e=>Gt(l,e),(e,t)=>Kt(l,e,t),m,(t,s,a,r,l)=>{m(t,s);const i=Wt(),u=Wt(),w=Gt(c,t),p=Gt(d,t),I=t=>{const a=n=>e.getCell(s,t,n),c=Gt(w,t),d=o(s,t)?n(r(a,t)):void 0;if(c===d||Ae(c)&&Ae(d)&&We(c,d)||Kt(i,t,[c,d]),!xe(l)){const e=Gt(p,t),n=o(s,t)?l(a,t):void 0;e!=n&&Kt(u,t,n)}},b=e=>{a(()=>{St(i,([,e],t)=>Kt(w,t,e)),St(u,(e,t)=>Kt(p,t,e))},i,u,w,p,e),Tt(i),Tt(u)};Qt(w,I),e.hasTable(s)&&Ye(e.getRowIds(s),e=>{yt(w,e)||I(e)}),b(!0),g(t),h(t,0,e.addRowListener(s,null,(e,t,n)=>I(n)),e.addTableListener(s,()=>b()))},w,e=>s(e,i),()=>Qt(u,w),h,g]},hn=(e,t)=>Ee(e)?t=>t(e):e??(()=>t??m),gn=(e,t)=>{const n=new WeakMap;return s=>{n.has(s)||n.set(s,e(s));const a=n.get(s);return t?.(a),a}},mn=/^\d+$/,wn=()=>{const e=[];let t=0;return[n=>(n?it(e):null)??m+t++,t=>{mn.test(t)&&Ve(e)<1e3&&ot(e,t)}]},pn=e=>{let t;const[n,s]=wn(),a=Wt();return[(s,o,r,l=[],i=()=>[])=>{t??=e();const c=n(1);return Kt(a,c,[s,o,r,l,i]),dn(ln(o,r??[m],cn),c),c},(e,n,...s)=>Ye(((e,t=[m])=>{const n=[],s=(e,a)=>a==Ve(t)?ot(n,e):Le(t[a])?St(e,e=>s(e,a+1)):Ye([t[a],null],t=>s(Gt(e,t),a+1));return s(e,0),n})(e,n),e=>St(e,e=>Gt(a,e)[0](t,...n??[],...s))),e=>Ne(Gt(a,e),([,t,n])=>(ln(t,n??[m],void 0,t=>(Rt(t,e),ft(t)?1:0)),Kt(a,e),s(e),n)),e=>Ne(Gt(a,e),([e,,n=[],s,a])=>{const o=(...r)=>{const l=Ve(r);l==Ve(n)?e(t,...r,...a(r)):Le(n[l])?Ye(s[l]?.(...r)??[],e=>o(...r,e)):o(...r,n[l])};o()})]},In=gn(e=>{let t,n,s,a=100,o=Wt(),r=Wt(),l=1;const i=Wt(),c=Wt(),[d,u,h]=pn(()=>E),g=Wt(),w=Wt(),p=[],I=[],b=(t,n)=>{l=0,e.transaction(()=>{const[s,a]=Gt(g,n);St(s,(n,s)=>St(n,(n,a)=>St(n,(n,o)=>ht(e,s,a,o,n[t])))),St(a,(n,s)=>gt(e,s,n[t]))}),l=1},v=e=>{Kt(g,e),Kt(w,e),u(c,[e])},y=(e,t)=>Ye(at(e,t??Ve(e)),v),f=()=>y(p,Ve(p)-a),C=()=>Ne(t,()=>{ot(p,t),f(),y(I),t=void 0,s=1}),T=()=>{t=rt(p),s=1};let S,R;const x=(e=m)=>(xe(t)&&(t=m+n++,Kt(g,t,[o,r]),N(t,e),o=Wt(),r=Wt(),s=1),t),L=()=>{tt(p)||(lt(I,x()),b(0,t),t=rt(p),s=1)},k=()=>{tt(I)||(ot(p,t),t=it(I),b(1,t),s=1)},D=()=>{s&&(u(i),s=0)},q=e=>{const t=x(e);return D(),t},N=(e,t)=>(M(e)&&Gt(w,e)!==t&&(Kt(w,e,t),u(c,[e])),E),M=e=>yt(g,e),E={setSize:e=>(a=e,f(),E),addCheckpoint:q,setCheckpoint:N,getStore:()=>e,getCheckpointIds:()=>[[...p],t,[...I]],forEachCheckpoint:e=>Qt(w,e),hasCheckpoint:M,getCheckpoint:e=>Gt(w,e),goBackward:()=>(L(),D(),E),goForward:()=>(k(),D(),E),goTo:e=>{const n=Je(p,e)?L:Je(I,e)?k:void 0;for(;!xe(n)&&e!=t;)n();return D(),E},addCheckpointIdsListener:e=>d(e,i),addCheckpointListener:(e,t)=>d(t,c,[e]),delListener:e=>(h(e),E),clear:()=>(y(p),y(I),xe(t)||v(t),t=void 0,n=0,q(),E),clearForward:()=>(tt(I)||(y(I),u(i)),E),destroy:()=>{e.delListener(S),e.delListener(R)},getListenerStats:()=>({checkpointIds:It(i),checkpoint:It(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,n,s,a,r)=>{if(l){C();const e=Xt(o,t,Wt),l=Xt(e,n,Wt),i=Xt(l,s,()=>[r,void 0]);i[1]=a,i[0]===a&&ft(Kt(l,s))&&ft(Kt(e,n))&&ft(Kt(o,t))&&T(),D()}}),R=e.addValueListener(null,(e,t,n,s)=>{if(l){C();const e=Xt(r,t,()=>[s,void 0]);e[1]=n,e[0]===n&&ft(Kt(r,t))&&T(),D()}})}};return Mt(E.clear())},e=>e._registerListeners()),bn=ue("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),vn=Wt(Xe(bn,(e,t)=>[e,t])),yn=e=>bn[63&e],fn=(e,t)=>Gt(vn,e[t])??0,Cn=we.crypto?e=>we.crypto.getRandomValues(e):e=>Xe(e,()=>Te(256*ye.random())),Tn=(e=16)=>nt(Cn(new Uint8Array(e)),(e,t)=>e+yn(t),m),Sn=JSON.stringify,Rn=JSON.parse,xn=e=>Sn(e,(e,t)=>t instanceof Map?xt.fromEntries([...t]):t),Ln=e=>Sn(e,(e,t)=>xe(t)?"":t),kn=e=>Rn(e,(e,t)=>""===t?void 0:t),Dn=new we.TextEncoder,qn=e=>{let t=2166136261;return Ye(Dn.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},Nn=(e,t)=>(e^t)>>>0,Mn=e=>nt(Dt(e),(e,[t,n])=>Nn(e,En(t,n)^En(t,0)),0),En=(e,t)=>qn(e+":"+t),Pn=(e,t)=>qn(xn(e??null)+":"+t),An=Pn,$n=En,Vn=Mn,On=En,Hn=e=>nt(Dt(e),(e,[t,n])=>Nn(e,En(t,n)),0),Zn=En,_n=Hn,Fn=2**36,Bn=2**30,zn=2**24,Jn=2**18,Un=4096,Wn=e=>{const t=qn(e);return yn(t/zn)+yn(t/Jn)+yn(t/Un)+yn(t/64)+yn(t)},jn=(e,t=Date.now)=>{let n=0,s=-1;const a=Ne(e,Wn,()=>Tn(5)),o=e=>{const a=n,[o,r]=xe(e)||""==e?[0,0]:l(e);n=fe(a,o,t()),s=n==a?n==o?fe(s,r):s:n==o?r:-1},r=(e,t,n)=>yn(e/Fn)+yn(e/Bn)+yn(e/zn)+yn(e/Jn)+yn(e/Un)+yn(e/64)+yn(e)+yn(t/Jn)+yn(t/Un)+yn(t/64)+yn(t)+(xe(n)?a:Wn(n)),l=e=>[fn(e,0)*Fn+fn(e,1)*Bn+fn(e,2)*zn+fn(e,3)*Jn+fn(e,4)*Un+64*fn(e,5)+fn(e,6),fn(e,7)*Jn+fn(e,8)*Un+64*fn(e,9)+fn(e,10),e.slice(11)];return[()=>(o(),r(n,++s)),o,r,l,()=>n,()=>s,()=>a]},Gn=(e,t)=>(e??0)<(t??0)?-1:1,Qn=gn(e=>{const t=Wt(),n=Wt(),[s,a,o]=pn(()=>v),[r,l,i,c,d,u,h,,g,w,p,I]=un(e,Wt,e=>xe(e)?m:Ae(e)?Xe(e,le):le(e),s,a),b=(t,n,s)=>{const a=d(t);St(s,(t,s)=>n(s,n=>St(t,t=>n(t,n=>e.forEachCell(a,t,n)))))},v={setIndexDefinition:(e,s,o,r,l,i=Gn)=>{const c=xe(l)?void 0:([e],[t])=>l(e,t);return g(e,s,(s,o,l,d,g,m)=>{let w=0;const p=cn(),I=cn(),b=u(e);if(St(o,([e,t],n)=>{const s=cn(e),a=cn(t);St(s,e=>Rt(a,e)?Rt(s,e):0),St(s,e=>{dn(p,e),Ne(Gt(b,e),t=>{Rt(t,n),ft(t)&&(Kt(b,e),w=1)})}),St(a,e=>{dn(p,e),yt(b,e)||(Kt(b,e,cn()),w=1),dn(Gt(b,e),n),xe(r)||dn(I,e)})}),s(),ft(g)||(m?Qt(b,e=>dn(I,e)):Qt(l,e=>Ne(Gt(d,e),e=>Ye(Ae(e)?e:[e],e=>dn(I,e)))),St(I,e=>{const t=(t,n)=>i(Gt(g,t),Gt(g,n),e),n=[...Gt(b,e)];Ge(n,t)||(Kt(b,e,cn(Qe(n,t))),dn(p,e))})),(w||m)&&!xe(c)){const t=[...b];Ge(t,c)||(h(e,Wt(Qe(t,c))),w=1)}w&&a(t,[e]),St(p,t=>a(n,[e,t]))},hn(o),Ne(r,hn)),v},delIndexDefinition:e=>(w(e),v),getStore:r,getIndexIds:l,forEachIndex:e=>i((t,n)=>e(t,e=>b(t,e,n))),forEachSlice:(e,t)=>b(e,t,u(e)),hasIndex:c,hasSlice:(e,t)=>yt(u(e),t),getTableId:d,getSliceIds:e=>jt(u(e)),getSliceRowIds:(e,t)=>Ct(Gt(u(e),t)),addIndexIdsListener:p,addSliceIdsListener:(e,n)=>s(n,t,[e]),addSliceRowIdsListener:(e,t,a)=>s(a,n,[e,t]),delListener:e=>(o(e),v),destroy:I,getListenerStats:()=>({sliceIds:It(t),sliceRowIds:bt(n)})};return Mt(v)}),Yn=([e,t])=>Xn(e,t),Kn=([e,t,n])=>[e,t,n],Xn=(e,t)=>t?[e,t]:[e],es=(e,t,n)=>[e,t,n],ts=e=>e[2],ns=(e,t)=>t>e?(e?qn(e):0)^qn(t):0,ss=(e,t)=>((e??"")>(t??"")?e:t)??"",as=(e,t,n)=>{t>e[1]&&(e[1]=t),e[2]=n>>>0},os=(e=m)=>Xn(Et(),e),rs=(e=m)=>[Wt(),e,0],ls=([e,t,n],s=Kn)=>[tn(e,s),t,n],is=([e,t],n=Yn)=>Xn(tn(e,n),t),cs=(e,t)=>Ae(e)&&3==Ve(e)&&Ee(e[1])&&h(e[2])==v&&Se(e[2])&&t(e[0]),ds=e=>[e,e],us=(e,t=It)=>t(e[0])+t(e[1]),hs=()=>[Wt(),Wt()],gs=e=>[...e],ms=([e,t])=>e===t,ws=(e,t,n)=>Kt(e,t,Gt(e,t)==-n?void 0:n),ps=()=>{let e,t,n=!1,s=!1,a=0,o=[];const r=Wt(),l=Wt(),i=Wt(),c=Wt(),d=Wt(),u=Wt(),h=Wt(),g=Wt(),m=Wt(),w=Wt(),p=Wt(),I=Wt(),b=Wt(),y=Wt(),f=cn(),R=Wt(),L=Wt(),k=Wt(),N=Wt(),O=hs(),z=hs(),J=hs(),U=hs(),W=hs(),j=hs(),G=hs(),Q=hs(),Y=hs(),K=hs(),X=hs(),ee=hs(),te=hs(),ne=hs(),se=hs(),ae=hs(),oe=hs(),re=hs(),ie=hs(),ce=hs(),de=hs(),ue=hs(),he=Wt(),ge=hs(),[me,we,pe,Ie]=pn(()=>On),be=e=>{if(!Ut(e,(e,t)=>Je([C,T,S],t)))return!1;const t=e[C];if(!Me(t)&&t!=v)return!1;const n=e[T];return!(Le(n)&&!e[S]||(Le(n)||dt(n)==t||Vt(e,T),0))},ve=Ae,ye=(t,n)=>(!e||yt(p,n)||ct(n))&&Ut(t,(e,t)=>fe(n,t,e),()=>ct(n)),fe=(e,t,n,s)=>Ut(s?n:Re(n,e,t),(s,a)=>Ne(Ce(e,t,a,s),e=>(n[a]=e,!0),()=>!1),()=>ct(e,t)),Ce=(t,n,s,a)=>e?Ne(Gt(Gt(p,t),s),e=>Le(a)?e[S]?a:ct(t,n,s,a,e[T]):dt(a)==e[C]?a:ct(t,n,s,a,e[T]),()=>ct(t,n,s,a)):xe(dt(a))?ct(t,n,s,a):a,Te=(e,t)=>Ut(t?e:ke(e),(t,n)=>Ne(Se(n,t),t=>(e[n]=t,!0),()=>!1),()=>ut()),Se=(e,n)=>t?Ne(Gt(b,e),t=>Le(n)?t[S]?n:ut(e,n,t[T]):dt(n)==t[C]?n:ut(e,n,t[T]),()=>ut(e,n)):xe(dt(n))?ut(e,n):n,Re=(e,t,n)=>(Ne(Gt(I,t),([s,a])=>{St(s,(t,n)=>{$t(e,n)||(e[n]=t)}),St(a,s=>{$t(e,s)||ct(t,n,s)})}),e),ke=e=>(t&&(St(y,(t,n)=>{$t(e,n)||(e[n]=t)}),St(f,t=>{$t(e,t)||ut(t)})),e),De=e=>en(p,e,(e,t,n)=>{const s=Wt(),a=cn();en(Xt(p,t,Wt),n,(e,t,n)=>{Kt(e,t,n),Ne(n[T],e=>Kt(s,t,e),()=>dn(a,t))}),Kt(I,t,[s,a])},(e,t)=>{Kt(p,t),Kt(I,t)}),qe=e=>en(b,e,(e,t,n)=>{Kt(b,t,n),Ne(n[T],e=>Kt(y,t,e),()=>dn(f,t))},(e,t)=>{Kt(b,t),Kt(y,t),Rt(f,t)}),Ee=e=>Bt(e)?Dn():Cn(e),Ve=e=>en(k,e,(e,t,n)=>Oe(t,n),(e,t)=>Ge(t)),Oe=(e,t)=>en(Xt(k,e,()=>(nt(e,1),Kt(R,e,wn()),Kt(L,e,Wt()),Wt())),t,(t,n,s)=>He(e,t,n,s),(t,n)=>Ke(e,t,n)),He=(e,t,n,s,a)=>en(Xt(t,n,()=>(st(e,n,1),Wt())),s,(t,s,a)=>Ze(e,n,t,s,a),(s,o)=>et(e,t,n,s,o,a)),Ze=(e,t,n,s,a)=>{yt(n,s)||at(e,t,s,1);const o=Gt(n,s);a!==o&&(rt(e,t,s,o,a),Kt(n,s,a))},_e=(e,t,n,s,a)=>Ne(Gt(t,n),t=>Ze(e,n,t,s,a),()=>He(e,t,n,Re({[s]:a},e,n))),Fe=e=>Bt(e)?Mn():Tn(e),Be=e=>en(N,e,(e,t,n)=>Ue(t,n),(e,t)=>tt(t)),Ue=(e,t)=>{yt(N,e)||lt(e,1);const n=Gt(N,e);t!==n&&(it(e,n,t),Kt(N,e,t))},je=e=>Gt(k,e)??Oe(e,{}),Ge=e=>Oe(e,{}),Ke=(e,t,n)=>{const[,s]=Gt(R,e);s(n),He(e,t,n,{},!0)},et=(e,t,n,s,a,o)=>{const r=Gt(Gt(I,e)?.[0],a);if(!xe(r)&&!o)return Ze(e,n,s,a,r);const l=t=>{rt(e,n,t,Gt(s,t)),at(e,n,t,-1),Kt(s,t)};xe(r)?l(a):Qt(s,l),ft(s)&&(st(e,n,-1),ft(Kt(t,n))&&(nt(e,-1),Kt(k,e),Kt(R,e),Kt(L,e)))},tt=e=>{const t=Gt(y,e);if(!xe(t))return Ue(e,t);it(e,Gt(N,e)),lt(e,-1),Kt(N,e)},nt=(e,t)=>ws(r,e,t),st=(e,t,n)=>ws(Xt(c,e,Wt),t,n)&&Kt(i,e,Xt(i,e,()=>0)+n),at=(e,t,n,s)=>{const a=Gt(L,e),o=Gt(a,n)??0;(0==o&&1==s||1==o&&-1==s)&&ws(Xt(l,e,Wt),n,s),Kt(a,n,o!=-s?o+s:void 0),ws(Xt(Xt(d,e,Wt),t,Wt),n,s)},rt=(e,t,n,s,a)=>{Xt(Xt(Xt(u,e,Wt),t,Wt),n,()=>[s,0])[1]=a,o[3]?.(e,t,n,a)},lt=(e,t)=>ws(h,e,t),it=(e,t,n)=>{Xt(g,e,()=>[t,0])[1]=n,o[4]?.(e,n)},ct=(e,t,n,s,a)=>(ot(Xt(Xt(Xt(m,e,Wt),t,Wt),n,()=>[]),s),a),ut=(e,t,n)=>(ot(Xt(w,e,()=>[]),t),n),mt=(e,t,n)=>Ne(Gt(Gt(Gt(u,e),t),n),([e,t])=>[!0,e,t],()=>[!1,...ds(Jt(e,t,n))]),wt=e=>Ne(Gt(g,e),([e,t])=>[!0,e,t],()=>[!1,...ds(hn(e))]),Ct=e=>ft(m)||ft(ae[e])?0:St(e?rn(m):m,(t,n)=>St(t,(t,s)=>St(t,(t,a)=>we(ae[e],[n,s,a],t)))),xt=e=>ft(w)||ft(oe[e])?0:St(e?an(w):w,(t,n)=>we(oe[e],[n],t)),Lt=(e,t,n,s)=>{if(!ft(e))return we(t,s,()=>tn(e)),Qt(e,(e,t)=>we(n,[...s??[],e],1==t)),1},kt=e=>{const t=gn();t!=n&&we(O[e],void 0,t);const s=ft(K[e]),a=ft(te[e])&&ft(ne[e])&&ft(Y[e])&&ft(X[e])&&ft(j[e])&&ft(G[e])&&ft(Q[e])&&s&&ft(J[e])&&ft(U[e]),o=ft(se[e])&&ft(ee[e])&&ft(W[e])&&ft(z[e]);if(!a||!o){const t=e?[an(r),on(l),an(i),on(c),rn(d),rn(u)]:[r,l,i,c,d,u];if(!a){Lt(t[0],J[e],U[e]),St(t[1],(t,n)=>Lt(t,j[e],G[e],[n])),St(t[2],(t,n)=>{0!=t&&we(Q[e],[n],Ht(n))});const n=cn();St(t[3],(t,a)=>{Lt(t,Y[e],X[e],[a])&&!s&&(we(K[e],[a,null]),dn(n,a))}),s||St(t[5],(t,s)=>{if(!yt(n,s)){const n=cn();St(t,e=>St(e,([t,s],a)=>s!==t?dn(n,a):Rt(e,a))),St(n,t=>we(K[e],[s,t]))}}),St(t[4],(t,n)=>St(t,(t,s)=>Lt(t,te[e],ne[e],[n,s])))}if(!o){let n;St(t[5],(t,s)=>{let a;St(t,(t,o)=>{let r;St(t,([t,l],i)=>{l!==t&&(we(se[e],[s,o,i],l,t,mt),n=a=r=1)}),r&&we(ee[e],[s,o],mt)}),a&&we(W[e],[s],mt)}),n&&we(z[e],void 0,mt)}}},Dt=e=>{const t=yn();t!=s&&we(re[e],void 0,t);const n=ft(ce[e])&&ft(de[e]),a=ft(ue[e])&&ft(ie[e]);if(!n||!a){const t=e?[an(h),an(g)]:[h,g];if(n||Lt(t[0],ce[e],de[e]),!a){let n;St(t[1],([t,s],a)=>{s!==t&&(we(ue[e],[a],s,t,wt),n=1)}),n&&we(ie[e],void 0,wt)}}},Nt=(e,...t)=>(An(()=>e(...Xe(t,le))),On),Et=(e,t,n,s,a)=>{let o=Ft(e,t,...n);return me(()=>{const a=Ft(e,t,...n);We(a,o)||(o=a,s(On,e,t,...n,o))},K[a?1:0],[e,t],[At])},Pt=()=>sn(k),At=()=>jt(k),Ot=e=>jt(Gt(L,le(e))),Ht=e=>pt(Gt(k,le(e))),_t=e=>jt(Gt(k,le(e))),Ft=(e,t,n,s=0,a)=>qt(e)?Ft(e.tableId,e.cellId,e.descending,e.offset,e.limit):Xe($e(Qe(Yt(Gt(k,le(e)),(e,n)=>[xe(t)?n:Gt(e,le(t)),n]),([e],[t])=>Gn(e,t)*(n?-1:1)),s,xe(a)?a:s+a),([,e])=>e),zt=(e,t)=>jt(Gt(Gt(k,le(e)),le(t))),Jt=(e,t,n)=>Gt(Gt(Gt(k,le(e)),le(t)),le(n)),ln=()=>tn(N),un=()=>jt(N),hn=e=>Gt(N,le(e)),gn=()=>!ft(k),mn=e=>yt(k,le(e)),In=(e,t)=>yt(Gt(L,le(e)),le(t)),bn=(e,t)=>yt(Gt(k,le(e)),le(t)),vn=(e,t,n)=>yt(Gt(Gt(k,le(e)),le(t)),le(n)),yn=()=>!ft(N),fn=e=>yt(N,le(e)),Cn=e=>Nt(()=>(e=>Ut(e,ye,ct))(e)?Ve(e):0),Tn=e=>Nt(()=>Te(e)?Be(e):0),Sn=e=>(ze(()=>Ee(Rn(e))),On),Ln=t=>Nt(()=>{if((e=Ut(t,e=>Ut(e,be)))&&(De(t),!ft(k))){const e=Pt();Dn(),Cn(e)}}),kn=e=>Nt(()=>{if(t=(e=>Ut(e,be))(e)){const n=ln();Pn(),Mn(),t=!0,qe(e),Tn(n)}}),Dn=()=>Nt(()=>Ve({})),qn=e=>Nt(e=>yt(k,e)?Ge(e):0,e),Nn=(e,t)=>Nt((e,t)=>Ne(Gt(k,e),n=>yt(n,t)?Ke(e,n,t):0),e,t),Mn=()=>Nt(()=>Be({})),En=()=>Nt(()=>{De({}),e=!1}),Pn=()=>Nt(()=>{qe({}),t=!1}),An=(e,t)=>{if(-1!=a){$n();const n=e();return Vn(t),n}},$n=()=>(-1!=a&&a++,1==a&&(o[0]?.(),we(he)),On),Vn=e=>(a>0&&(a--,0==a&&(a=1,Ct(1),ft(u)||kt(1),xt(1),ft(g)||Dt(1),e?.(On)&&(St(u,(e,t)=>St(e,(e,n)=>St(e,([e],s)=>ht(On,t,n,s,e)))),Tt(u),St(g,([e],t)=>gt(On,t,e)),Tt(g)),we(ge[0],void 0),a=-1,Ct(0),ft(u)||kt(0),xt(0),ft(g)||Dt(0),o[1]?.(),we(ge[1],void 0),o[2]?.(),a=0,n=gn(),s=yn(),Ye([r,l,i,c,d,u,m,h,g,w],Tt))),On),On={getContent:()=>[Pt(),ln()],getTables:Pt,getTableIds:At,getTable:e=>nn(Gt(k,le(e))),getTableCellIds:Ot,getRowCount:Ht,getRowIds:_t,getSortedRowIds:Ft,getRow:(e,t)=>tn(Gt(Gt(k,le(e)),le(t))),getCellIds:zt,getCell:Jt,getValues:ln,getValueIds:un,getValue:hn,hasTables:gn,hasTable:mn,hasTableCell:In,hasRow:bn,hasCell:vn,hasValues:yn,hasValue:fn,getTablesJson:()=>xn(k),getValuesJson:()=>xn(N),getJson:()=>xn([k,N]),getTablesSchemaJson:()=>xn(p),getValuesSchemaJson:()=>xn(b),getSchemaJson:()=>xn([p,b]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Nt(()=>{const t=Pe(e)?e():e;ve(t)&&(([e,t])=>{(Bt(e)?Dn:Cn)(e),(Bt(t)?Mn:Tn)(t)})(t)}),setTables:Cn,setTable:(e,t)=>Nt(e=>ye(t,e)?Oe(e,t):0,e),setRow:(e,t,n)=>Nt((e,t)=>fe(e,t,n)?He(e,je(e),t,n):0,e,t),addRow:(e,t,n=!0)=>An(()=>{let s;return fe(e,s,t)&&(e=le(e),He(e,je(e),s=((e,t)=>{const[n]=Gt(R,e);let s;do{s=n(t)}while(yt(Gt(k,e),s));return s})(e,n?1:0),t)),s}),setPartialRow:(e,t,n)=>Nt((e,t)=>{if(fe(e,t,n,1)){const s=je(e);Zt(n,(n,a)=>_e(e,s,t,a,n))}},e,t),setCell:(e,t,n,s)=>Nt((e,t,n)=>Ne(Ce(e,t,n,Pe(s)?s(Jt(e,t,n)):s),s=>_e(e,je(e),t,n,s)),e,t,n),setValues:Tn,setPartialValues:e=>Nt(()=>Te(e,1)?Zt(e,(e,t)=>Ue(t,e)):0),setValue:(e,t)=>Nt(e=>Ne(Se(e,Pe(t)?t(hn(e)):t),t=>Ue(e,t)),e),applyChanges:e=>Nt(()=>{Zt(e[0],(e,t)=>xe(e)?qn(t):Zt(e,(e,n)=>xe(e)?Nn(t,n):Zt(e,(e,s)=>ht(On,t,n,s,e)))),Zt(e[1],(e,t)=>gt(On,t,e))}),setTablesJson:Sn,setValuesJson:e=>(ze(()=>Fe(Rn(e))),On),setJson:e=>Nt(()=>ze(()=>{const[t,n]=Rn(e);Ee(t),Fe(n)},()=>Sn(e))),setTablesSchema:Ln,setValuesSchema:kn,setSchema:(e,t)=>Nt(()=>{Ln(e),kn(t)}),delTables:Dn,delTable:qn,delRow:Nn,delCell:(e,t,n,s)=>Nt((e,t,n)=>Ne(Gt(k,e),a=>Ne(Gt(a,t),o=>yt(o,n)?et(e,a,t,o,n,s):0)),e,t,n),delValues:Mn,delValue:e=>Nt(e=>yt(N,e)?tt(e):0,e),delTablesSchema:En,delValuesSchema:Pn,delSchema:()=>Nt(()=>{En(),Pn()}),transaction:An,startTransaction:$n,getTransactionChanges:()=>[tn(u,(e,t)=>-1===Gt(r,t)?void 0:tn(e,(e,n)=>-1===Gt(Gt(c,t),n)?void 0:tn(e,([,e])=>e,e=>ms(e)),ft,Bt),ft,Bt),tn(g,([,e])=>e,e=>ms(e)),1],getTransactionLog:()=>[!ft(u),!ft(g),sn(u,gs,ms),sn(m),tn(g,gs,ms),tn(w),tn(r),nn(c),sn(d),tn(h)],finishTransaction:Vn,forEachTable:e=>St(k,(t,n)=>e(n,e=>St(t,(t,n)=>e(n,e=>Qt(t,e))))),forEachTableCell:(e,t)=>Qt(Gt(L,le(e)),t),forEachRow:(e,t)=>St(Gt(k,le(e)),(e,n)=>t(n,t=>Qt(e,t))),forEachCell:(e,t,n)=>Qt(Gt(Gt(k,le(e)),le(t)),n),forEachValue:e=>Qt(N,e),addSortedRowIdsListener:(e,t,n,s,a,o,r)=>qt(e)?Et(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,n):Et(e,t,[n,s,a],o,r),addStartTransactionListener:e=>me(e,he),addWillFinishTransactionListener:e=>me(e,ge[0]),addDidFinishTransactionListener:e=>me(e,ge[1]),callListener:e=>(Ie(e),On),delListener:e=>(pe(e),On),getListenerStats:()=>({hasTables:us(O),tables:us(z),tableIds:us(J),hasTable:us(U),table:us(W),tableCellIds:us(j),hasTableCell:us(G,bt),rowCount:us(Q),rowIds:us(Y),sortedRowIds:us(K),hasRow:us(X,bt),row:us(ee,bt),cellIds:us(te,bt),hasCell:us(ne,vt),cell:us(se,vt),invalidCell:us(ae,vt),hasValues:us(re),values:us(ie),valueIds:us(ce),hasValue:us(de),value:us(ue),invalidValue:us(oe),transaction:It(he)+us(ge)}),isMergeable:()=>!1,createStore:ps,addListener:me,callListeners:we,setInternalListeners:(e,t,n,s,a)=>o=[e,t,n,s,a]};return Zt({[q+E]:[0,O,[],()=>[gn()]],[E]:[0,z],[P]:[0,J],[q+M]:[1,U,[At],e=>[mn(...e)]],[M]:[1,W,[At]],[M+Z]:[1,j,[At]],[q+M+H]:[2,G,[At,Ot],e=>[In(...e)]],[$]:[1,Q,[At]],[V]:[1,Y,[At]],[q+A]:[2,X,[At,_t],e=>[bn(...e)]],[A]:[2,ee,[At,_t]],[Z]:[2,te,[At,_t]],[q+H]:[3,ne,[At,_t,zt],e=>[vn(...e)]],[H]:[3,se,[At,_t,zt],e=>ds(Jt(...e))],InvalidCell:[3,ae],[q+F]:[0,re,[],()=>[yn()]],[F]:[0,ie],[B]:[0,ce],[q+_]:[1,de,[un],e=>[fn(...e)]],[_]:[1,ue,[un],e=>ds(hn(e[0]))],InvalidValue:[1,oe]},([e,t,n,s],a)=>{On[D+a+x]=(...a)=>me(a[e],t[a[e+1]?1:0],e>0?$e(a,0,e):void 0,n,s)}),Mt(On)},Is={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},bs=(e=m)=>[rs(e),rs(e)],vs=(e,t)=>{let n=1,s=bs(),a=0;const o=Wt(),r=cn(),[l,i]=jn(e,t),c=ps(),d=e=>{const t=n;return n=0,e(),n=t,b},u=(e,t=0)=>{const n={},a={},[[o,r=m,l=0],c]=e,[d,u]=s,[g,w,p]=d;let I=t?l:p,b=r;Ot(o,([e,s=m,a=0],o)=>{const r=Xt(g,o,rs),[l,i,c]=r;let d=t?a:c,u=s;Ot(e,(e,s)=>{const[a,r,i]=h(e,Xt(l,s,rs),Jt(Jt(n,o,Et),s,Et),t);d^=t?0:Nn(r?En(s,r):0,En(s,i)),u=ss(u,a)}),d^=t?0:ns(i,s),as(r,s,d),I^=t?0:Nn(c?En(o,c):0,En(o,r[2])),b=ss(b,u)}),I^=t?0:ns(w,r),as(d,r,I);const[v]=h(c,u,a,t);return i(ss(b,v)),[n,a,1]},h=(e,t,n,s)=>{const[a,o=m,r=0]=e,[l,i,c]=t;let d=o,u=s?r:c;return Ot(a,([e,t=m,a=0],o)=>{const r=Xt(l,o,()=>[void 0,m,0]),[,i,c]=r;(!i||t>i)&&(as(r,t,s?a:Pn(e,t)),r[0]=e,n[o]=e,u^=s?0:Nn(En(o,c),En(o,r[2])),d=ss(d,t))}),u^=s?0:ns(i,o),as(t,o,u),[d,c,t[2]]},g=He,w=He,p=()=>[ls(s[0],e=>ls(e,e=>ls(e))),ls(s[1])],I=e=>d(()=>c.applyChanges(u(e))),b={getMergeableContent:p,getMergeableContentHashes:()=>[s[0][2],s[1][2]],getMergeableTableHashes:()=>tn(s[0][0],ts),getMergeableTableDiff:e=>{const t=os(s[0][1]),n={};return Qt(s[0][0],(s,[a,o,r])=>$t(e,s)?r!=e[s]?n[s]=r:0:t[0][s]=is([a,o],e=>is(e))),[t,n]},getMergeableRowHashes:e=>{const t={};return Ot(e,(e,n)=>Ne(Gt(s[0][0],n),([s,,a])=>a!=e?Qt(s,(e,[,,s])=>Jt(t,n,Et)[e]=s):0)),t},getMergeableRowDiff:e=>{const t=os(s[0][1]),n={};return Ot(e,(e,a)=>Qt(Gt(s[0][0],a)?.[0],(s,[o,r,l])=>$t(e,s)?l!==e[s]?Jt(n,a,Et)[s]=l:0:Jt(t[0],a,os)[0][s]=is([o,r]))),[t,n]},getMergeableCellHashes:e=>{const t={};return Ot(e,(e,n)=>Ne(Gt(s[0][0],n),([s])=>Ot(e,(e,a)=>Ne(Gt(s,a),([s,,o])=>o!==e?Qt(s,(e,[,,s])=>Jt(Jt(t,n,Et),a,Et)[e]=s):0)))),t},getMergeableCellDiff:e=>{const[[t,n]]=s,a={};return Ot(e,(e,n)=>Ot(e,(e,s)=>Ne(Gt(t,n),([t,o])=>Ne(Gt(t,s),([t,r])=>Qt(t,(t,[l,i,c])=>c!==e[t]?Jt(Jt(a,n,()=>os(o))[0],s,()=>os(r))[0][t]=[l,i]:0))))),Xn(a,n)},getMergeableValueHashes:()=>tn(s[1][0],ts),getMergeableValueDiff:e=>{const[,[t,n]]=s,a=tn(t,Yn,([,,t],n)=>t==e?.[n]);return Xn(a,n)},setMergeableContent:e=>d(()=>(e=>Ae(e)&&2==Ve(e)&&cs(e[0],e=>Ut(e,e=>cs(e,e=>Ut(e,e=>cs(e,e=>Ut(e,e=>cs(e,ut),void 0,1)),void 0,1)),void 0,1))&&cs(e[1],e=>Ut(e,e=>cs(e,ut),void 0,1)))(e)?c.transaction(()=>{c.delTables().delValues(),s=bs(),c.applyChanges(u(e,1))}):0),setDefaultContent:e=>(c.transaction(()=>{a=1,c.setContent(e),a=0}),b),getTransactionMergeableChanges:(e=!1)=>{const[[t,n,a],[l,i,c]]=s,d=e?es:Xn,u={};St(o,(e,n)=>Ne(Gt(t,n),([t,s,a])=>{const o={};St(e,(e,n)=>Ne(Gt(t,n),([t,s,a])=>{const r={};St(e,e=>{Ne(Gt(t,e),([t,n,s])=>r[e]=d(t,n,s))}),o[n]=d(r,s,a)})),u[n]=d(o,s,a)}));const h={};return St(r,e=>Ne(Gt(l,e),([t,n,s])=>h[e]=d(t,n,s))),[d(u,n,a),d(h,i,c),1]},applyMergeableChanges:I,merge:e=>{const t=p(),n=e.getMergeableContent();return e.applyMergeableChanges(t),I(n)}};return c.setInternalListeners(g,w,()=>{Tt(o),Tt(r)},(e,t,s,r)=>{dn(Xt(Xt(o,e,Wt),t,cn),s),n&&u([[{[e]:[{[t]:[{[s]:[r,a?m:l()]}]}]}],[{}],1])},(e,t)=>{dn(r,e),n&&u([[{}],[{[e]:[t,a?m:l()]}],1])}),Zt(c,(e,t)=>b[t]=ie(t,"set")||ie(t,"del")||ie(t,"apply")||ce(t,z)||t=="call"+x?(...t)=>(e(...t),b):ie(t,D)&&ce(t,x)?(...n)=>{const s=Is[$e(t,3,-8)]??0,a=n[s];return n[s]=(e,...t)=>a(b,...t),e(...n)}:"isMergeable"==t?()=>!0:e),Mt(b)},ys=Wt([["avg",[(e,t)=>et(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>fe(...e),(e,t)=>fe(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:fe(t,e)]],["min",[e=>Ce(...e),(e,t)=>Ce(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:Ce(t,e)]],["sum",[e=>et(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),fs=(e,t,n,s,a,o=!1)=>{if(ft(n))return;const[r,l,i,c]=a;return o||=xe(e),St(s,([n,s])=>{o||(e=xe(n)?l?.(e,s,t++):xe(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=xe(e))}),o?r(Ct(n),pt(n)):e},Cs=gn(e=>{const t=Wt(),[n,s,a]=pn(()=>I),[o,r,l,i,c,d,u,,h,g,w,p]=un(e,Oe,e=>isNaN(e)||xe(e)||ke(e)||De(e)||e===m?void 0:1*e,n,s),I={setMetricDefinition:(e,n,a,o,r,l,i)=>{const c=Pe(a)?[a,r,l,i]:Gt(ys,a)??Gt(ys,"sum");return h(e,n,(n,a,o,r,l,i)=>{const h=d(e),g=pt(r);i||=xe(h),n();let m=fs(h,g,r,a,c,i);Se(m)||(m=void 0),m!=h&&(u(e,m),s(t,[e],m,h))},hn(o,1)),I},delMetricDefinition:e=>(g(e),I),getStore:o,getMetricIds:r,forEachMetric:l,hasMetric:i,getTableId:c,getMetric:d,addMetricIdsListener:w,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(a(e),I),destroy:p,getListenerStats:()=>({metric:It(t)})};return Mt(I)}),Ts={Idle:0,Loading:1,Saving:2},Ss={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},Rs=Wt(),xs=Wt(),Ls=(e,t,n,s,a,o,r,l={},i=0,c=[])=>{let d,u,h,g=0,m=0,w=0;Xt(Rs,c,()=>0),Xt(xs,c,()=>[]);const p=Wt(),[I,b,v,y,f]=((e=1,t,n)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!n),([[e],[t]])=>!Bt(e)||!Bt(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!Bt(e)||!Bt(t),t.setContent]:Be("Store type not supported by this Persister"))(r,e,i),[C,T,S]=pn(()=>A),R=e=>{e!=g&&(g=e,T(p,void 0,g))},x=t=>{(I&&Ae(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},L=async e=>(2!=g&&(R(1),m++,await P(async()=>{await ze(async()=>{const n=await t();Ae(n)?x(n):e?f(e):Be("Content is not an array: "+n)},()=>{e&&f(e)}),R(0)})),A),k=async e=>(D(),await L(e),await ze(async()=>u=await s(async(e,t)=>{t||e?2!=g&&(R(1),m++,x(t??e),R(0)):await L()}),o),A),D=async()=>(u&&(await ze(()=>a(u),o),u=void 0),A),q=async e=>(1!=g&&(R(2),w++,await P(async()=>{await ze(()=>n(b,e),o),R(0)})),A),N=async()=>(M(),await q(),h=e.addDidFinishTransactionListener(()=>{const e=v();y(e)&&q(e)}),A),M=async()=>(h&&(e.delListener(h),h=void 0),A),E=async(e=!1)=>{const[t,n]=e?[M,D]:[D,M];return await t(),await n(),A},P=async(...e)=>(ot(Gt(xs,c),...e),await(async()=>{if(!Gt(Rs,c)){for(Kt(Rs,c,1);!xe(d=it(Gt(xs,c)));)await ze(d,o);Kt(Rs,c,0)}})(),A),A={load:L,startAutoLoad:k,stopAutoLoad:D,isAutoLoading:()=>!xe(u),save:q,startAutoSave:N,stopAutoSave:M,isAutoSaving:()=>!xe(h),startAutoPersisting:async(e,t=!1)=>{const[n,s]=t?[N,k]:[k,N];return await n(e),await s(e),A},stopAutoPersisting:E,getStatus:()=>g,addStatusListener:e=>C(e,p),delListener:t=>(S(t),e),schedule:P,getStore:()=>e,destroy:()=>(at(Gt(xs,c)),E()),getStats:()=>({loads:m,saves:w}),...l};return Mt(A)},ks="_",Ds="_id",qs="SELECT",Ns="WHERE",Ms="TABLE",Es="INSERT",Ps="DELETE",As="UPDATE",$s="ALTER "+Ms,Vs="FROM",Os=Ps+" "+Vs,Hs=qs+"*"+Vs,Zs="pragma_",_s="data_version",Fs="schema_version",Bs="pragma_table_",zs="CREATE ",Js=zs+Ms,Us="OR REPLACE ",Ws="FUNCTION",js="$tableName",Gs=(e,t)=>t?async(n,s)=>(t(n,s),await e(n,s)):e,Qs=e=>Ke(Xe(ue(e,p),e=>`"${he(e,/"/g,'""')}"`),p),Ys=(...e)=>Qs(Ke(e,"_")),Ks=(...e)=>Ke(Xe(e,Qs),w),Xs=(e,t=[1])=>Ke(Xe(e,()=>"$"+t[0]++),w),ea=(e,t=f)=>Ns+`(${he(t,js,Qs(e))})`,ta="ColumnName",na="store",sa="json",aa=na+"TableName",oa=na+"Id"+ta,ra=na+ta,la="autoLoadIntervalSeconds",ia="rowId"+ta,ca="tableId",da="tableName",ua="deleteEmptyColumns",ha="deleteEmptyTable",ga="condition",ma={mode:sa,[la]:1},wa={load:0,save:0,[da]:g+"_values"},pa=(e,t,n,s,a)=>{const o=Wt();return Zt(e,(e,r)=>{const l=$e(_t(Pt(t,Ee(e)?{[n]:e}:e)),0,Ft(t));Le(l[0])||s(r,l[0])||(a(r,l[0]),Kt(o,r,l))}),o},Ia=e=>{const t=(e=>Pt(ma,Ee(e)?{[aa]:e}:e??{}))(e),n=t[la];if(t.mode==sa){const e=t[aa]??g;return[1,n,[e,t[oa]??Ds,t[ra]??na],cn(e)]}const{tables:{load:s={},save:a={}}={},values:o={}}=t,r=$e(_t(Pt(wa,o)),0,Ft(wa)),l=r[2],i=cn(l),c=cn(l),d=pa(s,{[ca]:null,[ia]:Ds,[ga]:f},ca,e=>yt(c,e),e=>dn(i,e)),u=pa(a,{[da]:null,[ia]:Ds,[ua]:0,[ha]:0,[ga]:null},da,(e,t)=>yt(c,t),(e,t)=>dn(i,t));return Qt(u,(e,t)=>t[4]??=Gt(d,t[0])?.[2]??f),[0,n,[d,u,r],i]},ba=(e,t,n,s,a,o=va,r,l)=>{const i=Wt();return[async()=>{Tt(i),Xe(await n(e,t),({tn:e,cn:t})=>dn(Xt(i,e,cn),t))},async(t,n,s)=>((e,t)=>yt(Gt(i,e),t))(t,n)?Et(st(Xe(await e(Hs+Qs(t)+ea(t,s)),e=>[e[n],l?Zt(Vt(e,n),l):Vt(e,n)]),([e,t])=>!xe(e)&&!Bt(t))):{},async(t,n,s,l,c,d=!1,u=f)=>{const h=cn();Zt(s??{},e=>Xe(Nt(e??{}),e=>dn(h,e)));const g=Ct(h);if(!d&&c&&u==f&&tt(g)&&yt(i,t))return await e("DROP "+Ms+Qs(t)),void Kt(i,t);const m=Gt(i,t),p=cn(Ct(m));if(tt(g)||(yt(i,t)?await Fe(Xe([n,...g],async(s,o)=>{Rt(p,s)||(await e($s+Qs(t)+"ADD"+Qs(s)+a),0==o&&await e("CREATE UNIQUE INDEX pk ON "+Qs(t)+`(${Qs(n)})`),dn(m,s))})):(await e(Js+Qs(t)+`(${Qs(n)}${a} PRIMARY KEY${Ke(Xe(g,e=>w+Qs(e)+a))});`),Kt(i,t,cn([n,...g])))),await Fe([...!d&&l?Xe(Ct(p),async s=>{s!=n&&(await e($s+Qs(t)+"DROP"+Qs(s)),Rt(m,s))}):[]]),d)xe(s)?await e(Os+Qs(t)+ea(t,u)):await Fe(Ht(s,async(s,a)=>{xe(s)?await e(Os+Qs(t)+ea(t,u)+`AND(${Qs(n)}=$1)`,[a]):tt(g)||await o(e,t,n,Nt(s),{[a]:r?Xe(_t(s),r):_t(s)},m)}));else if(tt(g))yt(i,t)&&await e(Os+Qs(t)+ea(t,u));else{const a=st(Ct(Gt(i,t)),e=>e!=n),l={},c=[];Zt(s??{},(e,t)=>{l[t]=Xe(a,t=>r?r(e?.[t]):e?.[t]),ot(c,t)}),await o(e,t,n,a,l),await e(Os+Qs(t)+ea(t,u)+`AND${Qs(n)}NOT IN(${Xs(c)})`,c)}},async t=>{let n;return await e("BEGIN"),await ze(async()=>n=await t(),s),await e("END"),n}]},va=async(e,t,n,s,a)=>{const o=[1];await e(Es+" INTO"+Qs(t)+"("+Ks(n,...s)+")VALUES"+Ke(Ht(a,e=>"($"+o[0]+++","+Xs(e,o)+")"),w)+"ON CONFLICT("+Qs(n)+`)DO ${As} SET`+Ke(Xe(s,e=>Qs(e)+"=excluded."+Qs(e)),w),Ht(a,(e,t)=>[t,...Xe(e,e=>e??null)]).flat())},ya=(e,t,n,s,a,o,r,[l,i,c],d,u,h,g,m,w)=>{const[p,I,b,v]=ba(t,d,u,a,m,w),y=Ls(e,()=>v(async()=>(await p(),kn((await I(l,i))[ks]?.[c]??"null"))),e=>v(async()=>{await p(),await b(l,i,{[ks]:{[c]:Ln(e()??null)}},!0,!0)}),n,s,a,r,{[g]:()=>h,destroy:async()=>(await y.stopAutoPersisting(),o(),y)},0,h);return y},fa=(e,t,n,s,a,o,r,[l,i,[c,d,u]],h,g,m,w,p,I,b,v)=>{const[y,f,C,T]=ba(t,h,g,a,p,I,b,v),S=(e,t)=>Fe(Yt(i,async([n,s,a,o,r],l)=>{t&&!$t(e,l)||await C(n,s,e[l],a,o,t,r)})),R=async(e,t)=>d?await C(u,Ds,{[ks]:e},!0,!0,t):null,x=Ls(e,()=>T(async()=>{await y();const e=await(async()=>Et(st(await Fe(Yt(l,async([e,t,n],s)=>[e,await f(s,t,n)])),e=>!Bt(e[1]))))(),t=await(async()=>c?(await f(u,Ds))[ks]:{})();return Bt(e)&&xe(t)?void 0:[e,t]}),(e,t)=>T(async()=>{if(await y(),xe(t)){const[t,n]=e();await S(t),await R(n)}else await S(t[0],!0),await R(t[1],!0)}),n,s,a,r,{[w]:()=>m,destroy:async()=>(await x.stopAutoPersisting(),o(),x)},0,m);return x},Ca=/^([cd]:)(.+)/,Ta=(e,t,n,s,a,o,r,l,i,c,d="getDb")=>{const u=Gs(n,o),[h,,w,p]=Ia(t),I=m+qn(Ln(w)),b=g+"_"+I,v=async(e,t,n="",s="")=>{const a=Ys(g,e,I);return await u(zs+Us+Ws+a+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${t}END;$$ LANGUAGE plpgsql;`),a},y=async(e,t,n,s)=>(await u(zs+e+"TRIGGER"+t+n+"EXECUTE "+Ws+s+"()"),t),C=e=>`PERFORM pg_notify('${b}',${e});`,T=(e,t)=>h?f:2===t?T(e,0)+" OR "+T(e,1):he(Gt(w[0],e)?.[2]??f,js,0==t?"NEW":"OLD"),S=(e,t)=>Fe(Xe([Es,Ps,As],(n,s)=>y(Us,Ys(g,"d",I,e,n),`AFTER ${n} ON${Qs(e)}FOR EACH ROW WHEN(${T(e,s)})`,t)));return(h?ya:fa)(e,u,async e=>{const t=await v("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Ns} command_tag='${Js}' LOOP ${C("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await y("EVENT ",Ys(g,"c",I),`ON ddl_command_end WHEN TAG IN('${Js}')`,t);const n=await v("d",C("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await Fe(Xe(Ct(p),async e=>(await u(Js+` IF NOT EXISTS${Qs(e)}("_id"text PRIMARY KEY)`),await S(e,n)))),[await s(b,t=>Ne(de(t,Ca),async([,t,s])=>{yt(p,s)&&("c:"==t&&await S(s,n),e())})),[t,n]]},async([e,t])=>{a(e),await u(`DROP FUNCTION IF EXISTS${Ke(t,",")}CASCADE`)},r,l,i,w,Ct(p),async(e,t)=>await e(qs+` table_name tn,column_name cn FROM information_schema.columns ${Ns} table_schema='public'AND table_name IN(${Xs(t)})`,t),c,d,"text",void 0,e=>Sn(e),e=>Rn(e))},Sa=(e,t,n,s,a,o,r,l,i,c,d="getDb",u)=>{let h,g,w;const p=Gs(n,o),[I,b,v,y]=Ia(t);return(I?ya:fa)(e,p,e=>{let t;const n=()=>t=Ie(()=>ze(async()=>{const[{d:t,s:n,c:s}]=await p(qs+` ${_s} d,${Fs} s,TOTAL_CHANGES() c FROM ${Zs}${_s} JOIN ${Zs}${Fs}`);t==h&&n==g&&s==w||(Re(h)||e(),h=t,g=n,w=s)}),b),o=()=>{h=g=w=null,be(t)},r=s(t=>{y.has(t)&&(o(),e(),n())});return n(),()=>{o(),a(r)}},e=>e(),r,l,i,v,Ct(y),async(e,t)=>await e(qs+` t.name tn,c.name cn FROM ${Bs}list()t,${Bs}info(t.name)c ${Ns} t.schema='main'AND t.type IN('table','view')AND t.name IN(${Xs(t)})ORDER BY t.name,c.name`,t),c,d,m,u,e=>ke(e)?1:De(e)?0:e,void 0)},Ra=(e,t)=>[e[t].t,e[t].v],xa=(e,t,n,s)=>{const a=xe(t)?e:Jt(e,t,()=>({}));let o;return Zt(n,(e,t)=>{s(a,t,e)&&(o=1)}),Zt(a,(e,t)=>{$t(n,t)||(Vt(a,t),o=1)}),!xe(t)&&Bt(a)&&Vt(e,t),o},La=(e,t,n=g,s)=>(t.change(e=>Jt(e,n,Et)),Ls(e,async()=>{const e=t.doc();return 2==Ft(e?.[n])?Ra(e,n):void 0},async(e,s)=>t.change(t=>((e,t,n,s)=>{((e,t)=>{Bt(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[a,o]=Ra(e,t),r=()=>{l=1};let l=1;if(Ne(s,([e,t])=>{l=0,Zt(e,(e,t)=>l?0:xe(e)?Vt(a,t):Ne(a[t],t=>Zt(e,(e,n)=>l?0:xe(e)?Vt(t,n):Ne(At(t,n),t=>Zt(e,(e,n)=>xe(e)?Vt(t,n):t[n]=e),r)),r)),Zt(t,(e,t)=>l?0:xe(e)?Vt(o,t):o[t]=e)}),l){const[e,t]=n();xa(a,void 0,e,(e,t,n)=>xa(a,t,n,(e,t,n)=>xa(e,t,n,(e,t,n)=>{if(At(e,t)!==n)return e[t]=n,1}))),xa(o,void 0,t,(e,t,n)=>{At(o,t)!==n&&(o[t]=n)})}})(t,n,e,s)),e=>{const s=({doc:t})=>e(Ra(t,n));return t.on("change",s),s},e=>{t.removeListener("change",e)},s,1,{getDocHandle:()=>t})),ka="storage",Da=(e,t,n,s)=>Ls(e,async()=>kn(n.getItem(t)),async e=>n.setItem(t,Ln(e())),e=>{const s=s=>{s.storageArea===n&&s.key===t&&ze(()=>e(kn(s.newValue)),e)};return pe.addEventListener(ka,s),s},e=>pe.removeEventListener(ka,e),s,3,{getStorageName:()=>t}),qa=(e,t,n)=>Da(e,t,localStorage,n),Na=(e,t,n)=>Da(e,t,sessionStorage,n),Ma=(e,t,n)=>Ls(e,async()=>kn(await(await t.getFile()).text()),async e=>{const n=await t.createWritable();await n.write(Ln(e())),await n.close()},async e=>{const n=new FileSystemObserver(()=>e());return await n.observe(t),n},e=>e?.disconnect(),n,3,{getHandle:()=>t}),Ea=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>await t.execO(e,n),e=>t.onUpdate((t,n,s)=>e(s)),e=>e(),s,a,He,1,t),Pa=()=>es({},m,0),Aa=(e,t,n=m,s)=>{const a=(e,...t)=>n+e+$e(Ln(t),1,-1);return Ls(e,async()=>{const e=Pa(),s=Pa();return(await t.list({prefix:n})).forEach(async([t,a,o],r)=>Ne((e=>{if(ie(e,n)){const t=$e(e,n.length,1);return t==oe||t==re?[t,...JSON.parse("["+$e(e,n.length+1)+"]")]:void 0}})(r),([n,...r])=>n==oe?Ne(r[0],n=>{const s=Jt(e[0],n,Pa);Ne(r[1],e=>{const n=Jt(s[0],e,Pa);Ne(r[2],e=>n[0][e]=[t,a,o],()=>as(n,a,o))},()=>as(s,a,o))},()=>as(e,a,o)):n==re?Ne(r[0],e=>s[0][e]=[t,a,o],()=>as(s,a,o)):0)),[e,s]},async(e,[[n,s,o],[r,l,i]]=e())=>{const c=Wt();Kt(c,a(oe),[0,s,o]),Ot(n,([e,t,n],s)=>{Kt(c,a(oe,s),[0,t,n]),Ot(e,([e,t,n],o)=>{Kt(c,a(oe,s,o),[0,t,n]),Ot(e,(e,t)=>Kt(c,a(oe,s,o,t),e))})}),Kt(c,a(re),[0,l,i]),Ot(r,(e,t)=>Kt(c,a(re,t),e)),await t.put(tn(c))},He,He,s,2,{getStorage:()=>t})},$a=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>await t.db.raw({sql:e,args:n}),e=>t.notifier.subscribeToDataChanges(n=>Ye(t.notifier.alias(n),({tablename:t})=>e(t))),e=>e(),s,a,He,1,t,"getElectricClient"),Va=(t,n,s,a,o)=>Sa(t,s,async(e,t=[])=>await n.getAllAsync(e,t),t=>e(({tableName:e})=>t(e)),e=>e.remove(),a,o,He,3,n),Oa=(e,r,l)=>Ls(e,async()=>kn(await o(r,R)),async e=>await a(r,Ln(e()),R),e=>(t(r)||n(r,m,R),s(r,()=>e())),e=>e?.close(),l,3,{getFilePath:()=>r}),Ha=[oe,re],Za={keyPath:"k"},_a=async(e,t)=>{const n=Ht(t,(t,n)=>Fa(e,"put",{k:n,v:t}));Xe(await Fa(e,"getAllKeys"),s=>$t(t,s)?0:ot(n,Fa(e,"delete",s))),await Fe(n)},Fa=async(e,t,n)=>_e((s,a)=>{const o=e[t](n);o.onsuccess=()=>s(o.result),o.onerror=()=>a(`objectStore.${t} error`)}),Ba=(e,t,n=1,s)=>{const a=async(e,n=[],s=0)=>_e((a,o)=>{const r=(pe?pe.indexedDB:indexedDB).open(t,s?2:void 0);r.onupgradeneeded=()=>s&&Xe(Ha,e=>ze(()=>r.result.createObjectStore(e,Za))),r.onsuccess=()=>ze(async()=>{const t=r.result.transaction(Ha,"readwrite"),s=await Fe(Xe(Ha,(s,a)=>e(t.objectStore(s),n[a])));r.result.close(),a(s)},e=>{r.result.close(),o(e)}),r.onerror=()=>o("indexedDB.open error")});return Ls(e,async()=>await a(async e=>Et(Xe(await Fa(e,"getAll"),({k:e,v:t})=>[e,t]))),e=>a((e,t)=>_a(e,t),e(),1),e=>Ie(e,n),e=>be(e),s,1,{getDbName:()=>t})},za=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>(await t.execute({sql:e,args:n})).rows,()=>He,e=>e(),s,a,He,1,t,"getClient"),Ja="s",Ua="/store",Wa=(e,t,n)=>e+t+(Ee(n)?n:xn(n)),ja=(e,t,n)=>{const s=Ve(e);return ie(t,e)?[t[s],(n?Rn:String)($e(t,s+1))]:void 0},Ga=(e,t,n,s)=>{const{host:a,room:o}=t.partySocketOptions,{storeProtocol:r="https",storePath:l=Ua,messagePrefix:i=m}={...Ee(n)?{storeProtocol:n}:n},c=r+"://"+a+"/parties/"+t.name+"/"+o+l,d=async e=>await(await fetch(c,{...e?{method:"PUT",body:xn(e)}:{},mode:"cors",cache:"no-store"})).json();return Ls(e,d,async(e,n)=>{n?t.send(Wa(i,Ja,n)):await d(e())},e=>{const n=t=>Ne(ja(i,t.data,1),([t,n])=>{t==Ja&&e(void 0,n)});return t.addEventListener(ne,n),n},e=>{t.removeEventListener(ne,e)},s,1,{getConnection:()=>t})},Qa="hasStore",Ya=Et(Xe(["Origin","Methods","Headers"],e=>["Access-Control-Allow-"+e,"*"])),Ka=async(e,t=m)=>!!await e.get(t+Qa),Xa=async(e,t=m)=>{const n={},s={};return Qt(await e.list(),(e,a)=>Ne(ja(t,e),([e,t])=>{if(e==oe){const[e,s,o]=Rn("["+t+"]");Jt(Jt(n,e,Et),s,Et)[o]=a}else e==re&&(s[t]=a)})),[n,s]},eo=async(e,t,n)=>e.party.broadcast(Wa(e.config.messagePrefix??m,Ja,t),n),to=async(e,t,n,s)=>{const a=e.party.storage,o=e.config.storagePrefix??m,r={[o+Qa]:1},l=[],i=[];await Fe(Ht(t[0],async(t,c)=>xe(t)?!n&&await e.canDelTable(c,s)&<(i,no(o,oe,c)):await e.canSetTable(c,n,s)&&await Fe(Ht(t,async(t,d)=>xe(t)?!n&&await e.canDelRow(c,d,s)&&ot(i,no(o,oe,c,d)):await e.canSetRow(c,d,n,s)&&await Fe(Ht(t,async(t,i)=>{const u=[c,d,i],h=no(o,oe,...u);xe(t)?!n&&await e.canDelCell(...u,s)&&ot(l,h):await e.canSetCell(...u,t,n,s,await a.get(h))&&(r[h]=t)})))))),await Fe(Ht(t[1],async(t,i)=>{const c=o+re+i;xe(t)?!n&&await e.canDelValue(i,s)&&ot(l,c):await e.canSetValue(i,t,n,s,await a.get(c))&&(r[c]=t)})),tt(i)||Qt(await a.list(),e=>Ue(i,t=>!ie(e,t)||ot(l,e)&&0)),await a.delete(l),await a.put(r)},no=(e,t,...n)=>Wa(e,t,$e(xn(n),1,-1)),so=async(e,t,n=null)=>new Response(n,{status:t,headers:e.config.responseHeaders});class ao{constructor(e){this.party=e,this.config.storePath??=Ua,this.config.messagePrefix??=m,this.config.storagePrefix??=m,this.config.responseHeaders??=Ya}config={};async onRequest(e){const{party:{storage:t},config:{storePath:n=Ua,storagePrefix:s}}=this;if(new URL(e.url).pathname.endsWith(n)){const n=await Ka(t,s),a=await e.text();return"PUT"==e.method?n?so(this,205):(await to(this,Rn(a),!0,e),so(this,201)):so(this,200,n?xn(await Xa(t,s)):m)}return so(this,404)}async onMessage(e,t){const{config:{messagePrefix:n=m,storagePrefix:s}}=this;await Ne(ja(n,e,1),async([e,n])=>{e==Ja&&await Ka(this.party.storage,s)&&(await to(this,n,!1,t),eo(this,n,[t.id]))})}async canSetTable(e,t,n){return!0}async canDelTable(e,t){return!0}async canSetRow(e,t,n,s){return!0}async canDelRow(e,t,n){return!0}async canSetCell(e,t,n,s,a,o,r){return!0}async canDelCell(e,t,n,s){return!0}async canSetValue(e,t,n,s,a){return!0}async canDelValue(e,t){return!0}}const oo=async(e,t,n,s,a)=>Ta(e,n,async(e,n=[])=>(await t.query(e,n)).rows,(e,n)=>t.listen(e,n),e=>ze(e,a),s,a,He,3,t,"getPglite"),ro=async(e,t,n,s,a)=>{const o=await(t.reserve?.());return Ta(e,n,o?.unsafe,async(e,n)=>t.listen(e,n),e=>ze(e.unlisten,a),s,a,()=>o?.release?.(),3,t,"getSql")},lo=(e,t,n,s,a)=>{let o;return Sa(e,n,async(e,n=[])=>t.execute(e,n).then(e=>e.rows?._array??[]),e=>{const n=new AbortController,s=t.onChange({rawTableNames:!0,signal:n.signal});return(async()=>{for await(const e of s)o&&Xe(e.changedTables,o)})(),o=e,n},e=>{o=void 0,e.abort()},s,a,He,1,t,"getPowerSync",io)},io=async(e,t,n,s,a,o)=>{const r=[1],l=cn(s),i=o?st([...o],e=>e!=n&&!yt(l,e)):[];if(!tt(i)){const s=Nt(a),o=Et(Xe(await e(qs+Ks(n,...i)+Vs+Qs(t)+Ns+Qs(n)+"IN("+Xs(s)+")",s),e=>[e[n],e]));Ye(s,e=>ot(a[e],...Xe(i,t=>o?.[e]?.[t]??null)))}await e(Es+" "+Us+"INTO"+Qs(t)+"("+Ks(n,...s,...i)+")VALUES"+Ke(Ht(a,e=>"($"+r[0]+++","+Xs(e,r)+")"),w),Ht(a,(e,t)=>[t,...Xe(e,e=>e??null)]).flat())},co=(e,t,n="storage",s)=>Ls(e,async()=>{const e=t.getString(n),s=xe(e)?void 0:JSON.parse(e);return Promise.resolve(s)},async e=>{const s=e();xe(s)||t.set(n,JSON.stringify(s))},e=>t.addOnValueChangedListener(s=>{if(s===n){const s=t.getString(n);s&&e(JSON.parse(s))}}),e=>{e.remove()},s,3,{getStorageName:()=>n}),uo=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>(await t.executeSql(e,n))[0].rows.raw(),He,He,s,a,He,3,t),ho=e=>e.headers.get("ETag"),go=(e,t,n,s=5,a)=>{let o;return Ls(e,async()=>{const e=await fetch(t);return o=ho(e),Rn(await e.text())},async e=>await fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:xn(e())}),e=>Ie(async()=>{const n=await fetch(t,{method:"HEAD"}),s=ho(n);Le(o)||Le(s)||s==o||(o=s,e())},s),e=>be(e),a,1,{getUrls:()=>[t,n]})},mo=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>t.query(e).all(...n),()=>He,e=>e(),s,a,He,3,t),wo=(e,t,n,s,a,o)=>Sa(e,s,async(e,t=[])=>n.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map(e=>({...e})),e=>t.capi.sqlite3_update_hook(n,(t,n,s,a)=>e(a),0),()=>t.capi.sqlite3_update_hook(n,He,0),a,o,He,3,n),po="change",Io=(e,t,n,s,a)=>Sa(e,n,async(e,n=[])=>await _e((s,a)=>t.all(e,n,(e,t)=>e?a(e):s(t))),e=>{const n=(t,n,s)=>e(s);return t.on(po,n),n},e=>t.off(po,e),s,a,He,3,t),bo="delete",vo=e=>[e.get(oe),e.get(re)],yo=(e,t,n,s)=>{const a=xe(t)?e:e.get(t)??e.set(t,new r);let o;return Zt(n,(e,t)=>{s(a,t,e)&&(o=1)}),a.forEach((e,t)=>{$t(n,t)||(a.delete(t),o=1)}),xe(t)||a.size||e.delete(t),o},fo=(e,t,n=g,s)=>{const a=t.getMap(n);return Ls(e,async()=>a.size?[a.get(oe).toJSON(),a.get(re).toJSON()]:void 0,async(e,n)=>t.transact(()=>((e,t,n)=>{e.size||(e.set(oe,new r),e.set(re,new r));const[s,a]=vo(e),o=()=>{l=1};let l=1;if(Ne(n,([e,t])=>{l=0,Zt(e,(e,t)=>l?0:xe(e)?s.delete(t):Ne(s.get(t),t=>Zt(e,(e,n)=>l?0:xe(e)?t.delete(n):Ne(t.get(n),t=>Zt(e,(e,n)=>xe(e)?t.delete(n):t.set(n,e)),o)),o)),Zt(t,(e,t)=>l?0:xe(e)?a.delete(t):a.set(t,e))}),l){const[e,n]=t();yo(s,void 0,e,(e,t,n)=>yo(s,t,n,(e,t,n)=>yo(e,t,n,(e,t,n)=>{if(e.get(t)!==n)return e.set(t,n),1}))),yo(a,void 0,n,(e,t,n)=>{a.get(t)!==n&&a.set(t,n)})}})(a,e,n)),e=>{const t=t=>e(void 0,((e,t)=>{if(1==Ve(t)&&tt(t[0].path))return[e.get(oe).toJSON(),e.get(re).toJSON(),1];const[n,s]=vo(e),a={},o={};return Ye(t,({path:e,changes:{keys:t}})=>it(e)==oe?Ne(it(e),s=>{const o=Jt(a,s,Et),r=n.get(s);Ne(it(e),e=>{const n=Jt(o,e,Et),s=r.get(e);Qt(t,(e,{action:t})=>n[e]=t==bo?void 0:s.get(e))},()=>Qt(t,(e,{action:t})=>o[e]=t==bo?void 0:r.get(e)?.toJSON()))},()=>Qt(t,(e,{action:t})=>a[e]=t==bo?void 0:n.get(e)?.toJSON())):Qt(t,(e,{action:t})=>o[e]=t==bo?void 0:s.get(e))),[a,o,1]})(a,t));return a.observeDeep(t),t},e=>{a.unobserveDeep(e)},s,1,{getYDoc:()=>t})},Co=gn(e=>{const t=e.createStore,n=t(),s=t(),a=Wt(),o=Wt(),r=Wt(),{addListener:l,callListeners:i,delListener:c}=s,[d,u,h,g,w,p,I,b,,v,y,f,C,T]=un(e,()=>[],Oe,l,i),S=(e,t,...n)=>Ye(n,n=>dn(Xt(Xt(a,t,Wt),e,cn),n)),R=e=>{Ne(Gt(a,e),e=>{Qt(e,(e,t)=>St(t,t=>e.delListener(t))),Tt(e)}),Ye([s,n],t=>t.delTable(e))},q=(e,t,n)=>S(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener(()=>n.finishTransaction())),N=(t,a,o,r={})=>{const l=_(t);var i;b(t,a),I(t,[o,(i=r,new Map(Dt(i)))]),E(t,l,r),R(t);const[,c]=p(t),d=[],u=[[void 0,[a,void 0,void 0,[],Wt()]]],h=[],g=[],w=[];o({select:(e,t)=>{const n=Pe(e)?[Ve(d)+m,e]:[xe(t)?e:t,n=>n(e,t)];return ot(d,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=xe(n)||Pe(t)?void 0:t,a=xe(s)?t:n,o=[e,[e,s,Pe(a)?a:e=>e(a),[],Wt()]];return ot(u,o),{as:e=>o[0]=e}},where:(e,t,n)=>ot(h,Pe(e)?e:xe(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,a)=>{const o=[e,[e,Pe(t)?[t,n,s,a]:Gt(ys,t)??[(e,t)=>t]]];return ot(g,o),{as:e=>o[0]=e}},having:(e,t)=>ot(w,Pe(e)?e:n=>n(e)===t),param:e=>Gt(c,e)});const v=Wt(d);if(ft(v))return B;const y=Wt(u);Qt(y,(e,[,t])=>Ne(Gt(y,t),({3:t})=>xe(e)?0:ot(t,e)));const f=Wt(g);let x=n;if(ft(f)&&tt(w))x=s;else{q(t,x,s);const e=Wt();Qt(f,(t,[n,s])=>dn(Xt(e,n,cn),[t,s]));const n=cn();Qt(v,t=>yt(e,t)?0:dn(n,t));const a=Wt(),o=(n,a,o,r)=>Ne(n,([l,i,c,d])=>{Qt(a,(t,[n])=>{const s=Xt(l,t,Wt),a=Gt(s,o),i=r?void 0:n;if(a!==i){const n=cn([[a,i]]),r=pt(s);Kt(s,o,i),St(Gt(e,t),([e,t])=>{const a=fs(d[e],r,s,n,t);d[e]=xe(dt(a))?void 0:a})}}),ft(i)||!Ue(w,e=>e(e=>d[e]))?s.delRow(t,c):xe(c)?n[2]=s.addRow(t,d):s.setRow(t,c,d)});S(x,t,x.addRowListener(t,null,(s,r,l,i)=>{const c=[],d=[],u=Wt(),h=x.hasRow(t,l);let g=!h;St(n,e=>{const[n,s,a]=i(t,l,e);ot(c,s),ot(d,a),g||=n}),Qt(e,e=>{const[n,,s]=i(t,l,e);(g||n)&&Kt(u,e,[s])}),g&&o(ln(a,c,void 0,([,e])=>(Rt(e,l),ft(e))),u,l,1),h&&o(ln(a,d,()=>{const e={};return St(n,n=>e[n]=x.getCell(t,l,n)),[Wt(),cn(),void 0,e]},([,e])=>{dn(e,l)}),u,l)}))}q(t,e,x);const L=(n,s,o,r)=>{const l=t=>e.getCell(s,o,t);Ye(r,s=>{const[a,,o,r,i]=Gt(y,s),c=o?.(l,n),[d,u]=Gt(i,n)??[];c!=d&&(xe(u)||T(t,u),Kt(i,n,xe(c)?void 0:[c,...C(t,1,e.addRowListener(a,c,()=>L(n,a,c,r)))]))}),(n=>{const s=(t,s)=>e.getCell(...xe(s)?[a,n,t]:t===a?[a,n,s]:[Gt(y,t)?.[0],Gt(Gt(y,t)?.[4],n)?.[0],s]);x.transaction(()=>Ue(h,e=>e(s))?Qt(v,(e,a)=>ht(x,t,n,e,a(s,n))):x.delRow(t,n))})(n)},{3:k}=Gt(y,void 0);return x.transaction(()=>C(t,1,e.addRowListener(a,null,(n,s,o)=>{e.hasRow(a,o)?L(o,a,o,k):(x.delRow(t,o),St(y,({4:e})=>Ne(Gt(e,o),([,n])=>{T(t,n),Kt(e,o)})))}))),B},E=(e,t,n)=>{const s=cn([...Nt(t),...Nt(n)]);let a=0;St(s,s=>{const o=At(n,s);je(At(t,s),o)||(a=1,i(r,[e,s],o))}),a&&i(o,[e],n)},P=(e,t,n=0)=>(Ne(p(e),([a,o])=>{!n&&zt(tn(o),t,je)||s.transaction(()=>N(e,w(e),a,t))}),B),_=e=>tn(p(e)?.[1]),F=(e,t)=>Gt(p(e)?.[1],t),B={setQueryDefinition:N,delQueryDefinition:e=>{const t=_(e);return R(e),v(e),E(e,t,{}),B},getParamValues:_,getParamValue:F,setParamValues:P,setParamValue:(e,t,n)=>(je(F(e,t),n)||P(e,{..._(e),[t]:n},1),B),getStore:d,getQueryIds:u,forEachQuery:h,hasQuery:g,getTableId:w,addQueryIdsListener:e=>y(()=>e(B)),addParamValuesListener:(e,t)=>l((e,n,s)=>t(B,n,s),o,[e]),addParamValueListener:(e,t,n)=>l((e,t,s,a)=>n(B,t,s,a),r,[e,t]),delListener:e=>(c(e),B),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...a}=s.getListenerStats();return{...a,paramValues:It(o),paramValue:bt(r)}}};return Zt({[M]:[1,1],[M+Z]:[0,1],[$]:[0,1],[V]:[0,1],[O]:[0,5],[A]:[1,2],[Z]:[0,2],[H]:[1,3]},([e,t],n)=>{Ye(e?[k,"has","forEach"]:[k],e=>B[e+L+n]=(...t)=>s[e+n](...t)),B[D+L+n+x]=(...e)=>s[D+n+x](...$e(e,0,t),(n,...s)=>e[t](B,...s),!0)}),Mt(B)}),To=gn(e=>{const t=Wt(),n=Wt(),s=Wt(),a=Wt(),[o,r,l]=pn(()=>C),[i,c,d,u,h,g,,,w,p,I,b]=un(e,()=>[Wt(),Wt(),Wt(),Wt()],e=>xe(e)?void 0:e+m,o,r),v=(e,t,n)=>Ne(g(e),([s,,a])=>{if(!yt(a,t)){const o=cn();if(h(e)!=f(e))dn(o,t);else{let e=t;for(;!xe(e)&&!yt(o,e);)dn(o,e),e=Gt(s,e)}if(n)return o;Kt(a,t,o)}return Gt(a,t)}),y=(e,t)=>Ne(g(e),([,,e])=>Kt(e,t)),f=e=>Gt(t,e),C={setRelationshipDefinition:(e,o,l,i)=>(Kt(t,e,l),w(e,o,(t,o)=>{const l=cn(),i=cn(),c=cn(),[d,u]=g(e);St(o,([t,n],s)=>{xe(t)||(dn(i,t),Ne(Gt(u,t),e=>{Rt(e,s),ft(e)&&Kt(u,t)})),xe(n)||(dn(i,n),yt(u,n)||Kt(u,n,cn()),dn(Gt(u,n),s)),dn(l,s),Kt(d,s,n),Qt(Gt(a,e),t=>{yt(v(e,t),s)&&dn(c,t)})}),t(),St(l,t=>r(n,[e,t])),St(i,t=>r(s,[e,t])),St(c,t=>{y(e,t),r(a,[e,t])})},hn(i)),C),delRelationshipDefinition:e=>(Kt(t,e),p(e),C),getStore:i,getRelationshipIds:c,forEachRelationship:t=>d(n=>t(n,t=>e.forEachRow(h(n),t))),hasRelationship:u,getLocalTableId:h,getRemoteTableId:f,getRemoteRowId:(e,t)=>Gt(g(e)?.[0],t),getLocalRowIds:(e,t)=>Ct(Gt(g(e)?.[1],t)),getLinkedRowIds:(e,t)=>xe(g(e))?[t]:Ct(v(e,t,!0)),addRelationshipIdsListener:I,addRemoteRowIdListener:(e,t,s)=>o(s,n,[e,t]),addLocalRowIdsListener:(e,t,n)=>o(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(v(e,t),o(n,a,[e,t])),delListener:e=>(y(...l(e)??[]),C),destroy:b,getListenerStats:()=>({remoteRowId:bt(n),localRowIds:bt(s),linkedRowIds:bt(a)})};return Mt(C)}),So={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},Ro=(e,t,n,s,a,o,r,l,i={})=>{let c,d=0,u=0,h=0;const g=Wt(),w=()=>Tn(11),I=(e,n,s,a)=>{u++,o?.(e,n,s,a),t(e,n,s,a)},b=async(e,t,n,s)=>_e((o,r)=>{const l=s+p+Tn(4),i=ve(()=>{Rt(g,l),r(`No response from ${e??"anyone"} to ${l}, `+t)},a);Kt(g,l,[e,(e,t)=>{clearTimeout(i),Rt(g,l),o([e,t,s])}]),I(e,l,t,n)}),v=(e,[t,n])=>{Ot(t,([t,n],s)=>{const a=Jt(e[0],s,os);Ot(t,([e,t],n)=>{const s=Jt(a[0],n,os);Ot(e,([e,t],n)=>s[0][n]=Xn(e,t)),s[1]=ss(s[1],t)}),a[1]=ss(a[1],n)}),e[1]=ss(e[1],n)},y=(t=null,n,s=w())=>ze(async()=>{xe(n)&&([n,t,s]=await b(null,1,m,s));const[a,o]=n,[r,l]=e.getMergeableContentHashes();let i=os();if(r!=a){const[n,a]=(await b(t,4,e.getMergeableTableHashes(),s))[0];if(i=n,!Bt(a)){const[n,o]=(await b(t,5,e.getMergeableRowHashes(a),s))[0];if(v(i,n),!Bt(o)){const n=(await b(t,6,e.getMergeableCellHashes(o),s))[0];v(i,n)}}}return[i,l==o?os():(await b(t,7,e.getMergeableValueHashes(),s))[0],1]},l),f=Ls(e,async()=>{const e=await y();return!e||Bt(e[0][0])&&Bt(e[1][0])?void 0:e},async(t,n)=>n?I(null,w(),3,n):I(null,w(),2,e.getMergeableContentHashes()),e=>c=e,()=>c=void 0,l,2,{startSync:async e=>(d=1,await f.startAutoPersisting(e)),stopSync:async()=>(d=0,await f.stopAutoPersisting(),f),destroy:async()=>(await f.stopSync(),s(),f),getSynchronizerStats:()=>({sends:u,receives:h}),...i},1);return n((t,n,s,a)=>{const o=d||f.isAutoLoading();h++,r?.(t,n,s,a),0==s?Ne(Gt(g,n),([e,n])=>Le(e)||e==t?n(a,t):0):2==s&&o?y(t,a,n??void 0).then(e=>{c?.(void 0,e)}).catch(l):3==s&&o?c?.(void 0,a):Ne(1==s&&(d||f.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(a):5==s?e.getMergeableRowDiff(a):6==s?e.getMergeableCellDiff(a):7==s?e.getMergeableValueDiff(a):void 0,e=>{I(t,n,0,e)})}),f},xo=(e,t,n,s,a)=>{const o=Tn(),r=new BroadcastChannel(t);return Ro(e,(e,t,n,s)=>r.postMessage([o,e,t,n,s]),e=>{r.onmessage=({data:[t,n,s,a,r]})=>Le(n)||n==o?e(t,s,a,r):0},()=>{r.close()},.01,n,s,a,{getChannelName:()=>t})},Lo=Wt(),ko=(e,t,n,s)=>{const a=Tn();return Ro(e,(e,t,n,s)=>ve(()=>Le(e)?Qt(Lo,(e,o)=>e!=a?o(a,t,n,s):0):Gt(Lo,e)?.(a,t,n,s)),e=>{Kt(Lo,a,e)},()=>{Rt(Lo,a)},.01,t,n,s)},Do=(e,t)=>{const n=e.indexOf("\n");-1!==n&&t($e(e,0,n),$e(e,n+1))},qo=(e,t)=>Do(e,(e,n)=>t(e,...kn(n))),No=(e,...t)=>Mo(e??m,Ln(t)),Mo=(e,t)=>e+"\n"+t,Eo=async(e,t,n=1,s,a,o)=>{const r=(e,n)=>(t.addEventListener(e,n),()=>t.removeEventListener(e,n)),l=Ro(e,(e,...n)=>t.send(No(e,...n)),e=>r(ne,({data:t})=>qo(t.toString(R),e)),()=>{t.close()},n,s,a,o,{getWebSocket:()=>t});return _e(e=>{if(t.readyState!=t.OPEN){const t=t=>{t&&o?.(t),n(),s(),e(l)},n=r("open",()=>t()),s=r(se,t)}else e(l)})},Po=/\/([^?]*)/,Ao="S",$o=e=>de(new URL(e.url).pathname,Po)?.[1]??m,Vo=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,Oo=(e,t=null,n=null)=>new Response(n,{status:e,webSocket:t}),Ho=()=>Oo(426,null,"Upgrade required");class Zo extends l{#e;constructor(e,t){super(e,t),this.ctx.blockConcurrencyWhile(async()=>await Ne(await this.createPersister(),async e=>{const t=Ro(e.getStore(),(e,t,n,s)=>this.#t(Ao,No(e,t,n,s)),e=>this.#e=t=>qo(t,e),He,1);await e.load(),await e.startAutoSave(),ve(t.startSync)}))}fetch(e){const t=$o(e);return Ne(Vo(e),e=>{const[n,s]=_t(new WebSocketPair);return tt(this.#n())&&this.onPathId(t,1),this.ctx.acceptWebSocket(s,[e,t]),this.onClientId(t,e,1),s.send(No(Ao,null,1,m)),Oo(101,n)},Ho)}webSocketMessage(e,t){Ne(this.ctx.getTags(e)[0],n=>this.#t(n,t.toString(),e))}webSocketClose(e){const[t,n]=this.ctx.getTags(e);this.onClientId(n,t,-1),1==Ve(this.#n())&&this.onPathId(n,-1)}#t(e,t,n){Do(t.toString(),(t,s)=>{const a=Mo(e,s);this.onMessage(e,t,s),t==m?(e!=Ao&&this.#e?.(a),Ye(this.#n(),e=>{e!=n&&e.send(a)})):t==Ao?this.#e?.(a):t!=e&&this.#n(t)[0]?.send(a)})}#n(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#n()[0])?.[1]}getClientIds(){return Xe(this.#n(),e=>this.ctx.getTags(e)[0])}onPathId(e,t){}onClientId(e,t,n){}onMessage(e,t,n){}}const _o=e=>(t,n)=>Vo(t)?n[e].get(n[e].idFromName($o(t))).fetch(t):Ho(),Fo=/\/([^?]*)/,Bo=e=>{const t=Wt();return e.on("connection",(e,n)=>Ne(de(n.url,Fo),([,s])=>Ne(n.headers["sec-websocket-key"],async n=>{const a=Xt(t,s,Wt);Kt(a,n,e),e.on(ne,e=>Do(e.toString(R),(e,t)=>{const s=Mo(n,t);e===m?Qt(a,(e,t)=>e!==n?t.send(s):0):Gt(a,e)?.send(s)})),e.on("close",()=>{Rt(a,n),ft(a)&&Rt(t,s)})}))),Mt({getWebSocketServer:()=>e,destroy:async()=>{Tt(t),e.close()}})},zo=/\/([^?]*)/,Jo=(e,t,n)=>{const s=Wt(),a=Wt(),o=Wt(),r=Wt(),[l,i,c]=pn(()=>h),d=async e=>{await(e[1]?.destroy()),await(e[2]?.destroy())},u=(e,t,n)=>s=>Do(s,(s,a)=>{const o=Mo(e,a);s===m?("S"!==e&&n[3]?.(o),Qt(t,(t,n)=>t!==e?n.send(o):0)):"S"===s?n[3]?.(o):Gt(t,s)?.send(o)});e.on("connection",(e,l)=>Ne(de(l.url,zo),([,c])=>Ne(l.headers["sec-websocket-key"],async l=>{const h=Xt(o,c,Wt),g=Xt(r,c,()=>[0]),m=u(l,h,g);ft(h)&&(i(s,void 0,c,1),await(async(e,s,a)=>Ne(await(t?.(s)),t=>{e[0]=1,e[1]=Ae(t)?t[0]:t;const s=u("S",a,e);e[2]=Ro(e[1].getStore(),(e,t,n,a)=>s(No(e,t,n,a)),t=>e[3]=e=>qo(e,t),He,1,void 0,void 0,n),e[4]=[],e[5]=Ae(t)?t[1]:e=>0}))(g,c,h)),Kt(h,l,e),i(a,[c],l,1),e.on(ne,e=>{const t=e.toString(R);0==g[0]?m(t):ot(g[4],t)}),1==g[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})(g),Ye(g[4],m),g[4]=[]),e.on("close",async()=>{Rt(h,l),i(a,[c],l,-1),ft(h)&&(await d(g),Rt(r,c),Rt(o,c),i(s,void 0,c,-1))}),n&&e.on(se,n)}))),n&&e.on(se,n);const h={getWebSocketServer:()=>e,getPathIds:()=>jt(o),getClientIds:e=>jt(Gt(o,e)),addPathIdsListener:e=>l(e,s),addClientIdsListener:(e,t)=>l(t,a,[e]),delListener:e=>(c(e),h),getStats:()=>({paths:pt(o),clients:It(o)}),destroy:async()=>{Tt(o),await Fe(Yt(r,d)),e.close()}};return Mt(h)},{PureComponent:Uo,createContext:Wo,useCallback:jo,useContext:Go,useEffect:Qo,useLayoutEffect:Yo,useMemo:Ko,useRef:Xo,useState:er,useSyncExternalStore:tr}=u,nr=(e,...t)=>xe(e)?{}:e(...t),sr=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],ar=(e,t)=>[e,e?.getStore(),e?.getTableId(t)],or=g+"_uirc",rr=we[or]?we[or]:we[or]=Wo([]),lr=(e,t)=>{const n=Go(rr);return xe(e)?n[2*t]:Ee(e)?At(n[2*t+1],e):e},ir=(e,t)=>{const n=lr(e,t);return xe(e)||Ee(e)?n:e},cr=(e,t,n)=>{const{16:s,17:a}=Go(rr);Qo(()=>(s?.(n,e,t),()=>a?.(n,e)),[s,e,t,n,a])},dr=e=>Nt(Go(rr)[2*e+1]??{}),ur=0,hr=1,gr=2,mr=3,wr=4,pr=5,Ir=6,br=7,vr=(e,t,n,s,a)=>[n??t[2*e],{...t[2*e+1],...s,...a[e]}],yr=({store:e,storesById:t,metrics:n,metricsById:s,indexes:a,indexesById:o,relationships:r,relationshipsById:l,queries:c,queriesById:d,checkpoints:u,checkpointsById:h,persister:g,persistersById:m,synchronizer:w,synchronizersById:p,children:I})=>{const b=Go(rr),[v,y]=er(()=>Xe([,,,,,,,,].fill(0),(e,t)=>({}))),f=jo((e,t,n)=>y(s=>At(s[e],t)==n?s:ct(s,e,{...s[e],[t]:n})),[]),C=jo((e,t)=>y(n=>$t(n[e],t)?ct(n,e,Vt(n[e],t)):n),[]);return i(rr.Provider,{value:Ko(()=>[...vr(0,b,e,t,v),...vr(1,b,n,s,v),...vr(2,b,a,o,v),...vr(3,b,r,l,v),...vr(4,b,c,d,v),...vr(5,b,u,h,v),...vr(6,b,g,m,v),...vr(7,b,w,p,v),f,C],[v,e,t,n,s,a,o,r,l,c,d,u,h,g,m,w,p,b,f,C]),children:I})},fr=[],Cr=[{},[],[fr,void 0,fr],{},void 0,void 0,!1,0],Tr=[zt,We,([e,t,n],[s,a,o])=>t===a&&We(e,s)&&We(n,o),(e,t)=>zt(e,t,je),je],Sr=(e,t)=>e===t,Rr=(e,t,n=fr)=>{const[,s]=er(),[a,o]=er();return Qo(()=>{const n=e?t(e):void 0;return o(n),s([]),n?.destroy},[e,...n]),a},xr=(e,t,...n)=>{const s=e?.[D+t+x]?.(...n);return()=>e?.delListener?.(s)},Lr=(e,t,n,s=fr)=>{const a=Xo(Cr[n]),o=jo(()=>{const o=t?.[(6==n?"has":k)+e]?.(...s)??Cr[n];return(Tr[n]??Sr)(o,a.current)?a.current:a.current=o},[t,n,e,...s]),r=jo(a=>xr(t,(6==n?q:m)+e,...s,a),[t,n,e,...s]);return tr(r,o,o)},kr=(e,t,n,s=fr,a=fr,...o)=>Yo(()=>xr(t,e,...a,n,...o),[t,e,...a,...s,...o]),Dr=(e,t,n,s=fr,a=Oe,o=fr,r,...l)=>jo(s=>Ne(e,e=>Ne(n(s,e),n=>a(e[r+t](...Mr(l,e,s),n),n))),[e,t,...s,...o,r,...Er(l)]),qr=(e,t,n,s,a,o,...r)=>Dr(_r(e),t,n,s,a,o,"set",...r),Nr=(e,t,n,s,a,o,...r)=>Dr(Ei(e),t,n,s,a,o,m,...r),Mr=(e,t,n)=>Xe(e,e=>Pe(e)?e(n,t):e),Er=e=>st(e,e=>!Pe(e)),Pr=(e,t,n=Oe,s=fr,...a)=>{const o=_r(e);return jo(e=>n(o?.["del"+t](...Mr(a,o,e))),[o,t,...s,...Er(a)])},Ar=(e,t,n)=>{const s=cc(e);return jo(()=>s?.[t](n),[s,t,n])},$r=(e,t,n,s,a,o,r,l,i)=>kr(O,_r(i),o,r,[e,t,n,s,a],l),Vr=(e,t=fr)=>Ko(e,t),Or=()=>dr(0),Hr=e=>lr(e,0),Zr=()=>({...Go(rr)[1]}),_r=e=>ir(e,0),Fr=(e,t)=>cr(e,t,0),Br=(e,t=fr)=>Ko(e,t),zr=e=>Lr(E,_r(e),6,[]),Jr=e=>Lr(E,_r(e),0),Ur=e=>[Jr(e),pl(Ze,[],e)],Wr=e=>Lr(P,_r(e),1),jr=(e,t)=>Lr(M,_r(t),6,[e]),Gr=(e,t)=>Lr(M,_r(t),0,[e]),Qr=(e,t)=>[Gr(e,t),Il(e,Ze,[],t)],Yr=(e,t)=>Lr(M+Z,_r(t),1,[e]),Kr=(e,t,n)=>Lr(M+H,_r(n),6,[e,t]),Xr=(e,t)=>Lr($,_r(t),7,[e]),el=(e,t)=>Lr(V,_r(t),1,[e]),tl=(e,t,n,s,a,o)=>((e,t,n,s,a,o)=>Lr(O,_r(o),1,[e,t,n,s,a]))(...qt(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t]:[e,t,n,s,a,o]),nl=(e,t,n)=>Lr(A,_r(n),6,[e,t]),sl=(e,t,n)=>Lr(A,_r(n),0,[e,t]),al=(e,t,n)=>[sl(e,t,n),bl(e,t,Ze,[],n)],ol=(e,t,n)=>Lr(Z,_r(n),1,[e,t]),rl=(e,t,n,s)=>Lr(H,_r(s),6,[e,t,n]),ll=(e,t,n,s)=>Lr(H,_r(s),5,[e,t,n]),il=(e,t,n,s)=>[ll(e,t,n,s),fl(e,t,n,Ze,[],s)],cl=e=>Lr(F,_r(e),6,[]),dl=e=>Lr(F,_r(e),0),ul=e=>[dl(e),Cl(Ze,[],e)],hl=e=>Lr(B,_r(e),1),gl=(e,t)=>Lr(_,_r(t),6,[e]),ml=(e,t)=>Lr(_,_r(t),5,[e]),wl=(e,t)=>[ml(e,t),Sl(e,Ze,[],t)],pl=(e,t,n,s,a)=>qr(n,E,e,t,s,a),Il=(e,t,n,s,a,o)=>qr(s,M,t,n,a,o,e),bl=(e,t,n,s,a,o,r)=>qr(a,A,n,s,o,r,e,t),vl=(e,t,n=fr,s,a=Oe,o=fr,r=!0)=>{const l=_r(s);return jo(n=>Ne(l,s=>Ne(t(n,s),t=>a(s.addRow(Pe(e)?e(n,s):e,t,r),s,t))),[l,e,...n,...o,r])},yl=(e,t,n,s,a,o,r)=>qr(a,J+A,n,s,o,r,e,t),fl=(e,t,n,s,a,o,r,l)=>qr(o,H,s,a,r,l,e,t,n),Cl=(e,t,n,s,a)=>qr(n,F,e,t,s,a),Tl=(e,t,n,s,a)=>qr(n,J+F,e,t,s,a),Sl=(e,t,n,s,a,o)=>qr(s,_,t,n,a,o,e),Rl=(e,t,n)=>Pr(e,E,t,n),xl=(e,t,n,s)=>Pr(t,M,n,s,e),Ll=(e,t,n,s,a)=>Pr(n,A,s,a,e,t),kl=(e,t,n,s,a,o,r)=>Pr(a,H,o,r,e,t,n,s),Dl=(e,t,n)=>Pr(e,F,t,n),ql=(e,t,n,s)=>Pr(t,_,n,s,e),Nl=(e,t,n,s)=>kr(q+E,_r(s),e,t,[],n),Ml=(e,t,n,s)=>kr(E,_r(s),e,t,fr,n),El=(e,t,n,s)=>kr(P,_r(s),e,t,fr,n),Pl=(e,t,n,s,a)=>kr(q+M,_r(a),t,n,[e],s),Al=(e,t,n,s,a)=>kr(M,_r(a),t,n,[e],s),$l=(e,t,n,s,a)=>kr(M+Z,_r(a),t,n,[e],s),Vl=(e,t,n,s,a,o)=>kr(q+M+H,_r(o),n,s,[e,t],a),Ol=(e,t,n,s,a)=>kr($,_r(a),t,n,[e],s),Hl=(e,t,n,s,a)=>kr(V,_r(a),t,n,[e],s),Zl=(e,t,n,s,a,o,r,l,i)=>$r(...qt(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t,n,s,a]:[e,t,n,s,a,o,r,l,i]),_l=(e,t,n,s,a,o)=>kr(q+A,_r(o),n,s,[e,t],a),Fl=(e,t,n,s,a,o)=>kr(A,_r(o),n,s,[e,t],a),Bl=(e,t,n,s,a,o)=>kr(Z,_r(o),n,s,[e,t],a),zl=(e,t,n,s,a,o,r)=>kr(q+H,_r(r),s,a,[e,t,n],o),Jl=(e,t,n,s,a,o,r)=>kr(H,_r(r),s,a,[e,t,n],o),Ul=(e,t,n,s)=>kr(q+F,_r(s),e,t,[],n),Wl=(e,t,n,s)=>kr(F,_r(s),e,t,fr,n),jl=(e,t,n,s)=>kr(B,_r(s),e,t,fr,n),Gl=(e,t,n,s,a)=>kr(q+_,_r(a),t,n,[e],s),Ql=(e,t,n,s,a)=>kr(_,_r(a),t,n,[e],s),Yl=(e,t,n)=>kr("Start"+z,_r(n),e,t),Kl=(e,t,n)=>kr("Will"+U+z,_r(n),e,t),Xl=(e,t,n)=>kr("Did"+U+z,_r(n),e,t),ei=(e,t,n)=>Rr(e,t,n),ti=()=>dr(1),ni=e=>lr(e,1),si=e=>ir(e,1),ai=(e,t)=>cr(e,t,1),oi=e=>Lr(j+N,si(e),1),ri=(e,t)=>Lr(j,si(t),5,[e]),li=(e,t,n,s)=>kr(j,si(s),t,n,[e]),ii=(e,t,n)=>Rr(e,t,n),ci=()=>dr(2),di=e=>lr(e,2),ui=e=>ir(e,2),hi=(e,t)=>cr(e,t,2),gi=(e,t)=>Lr(G+N,ui(t),1,[e]),mi=e=>Lr("Index"+N,ui(e),1),wi=(e,t,n)=>Lr(G+V,ui(n),1,[e,t]),pi=(e,t,n,s)=>kr(G+N,ui(s),t,n,[e]),Ii=(e,t,n,s,a)=>kr(G+V,ui(a),n,s,[e,t]),bi=(e,t,n)=>Rr(e,t,n),vi=()=>dr(3),yi=e=>lr(e,3),fi=e=>ir(e,3),Ci=(e,t)=>cr(e,t,3),Ti=e=>Lr("Relationship"+N,fi(e),1),Si=(e,t,n)=>Lr(Q,fi(n),5,[e,t]),Ri=(e,t,n)=>Lr(Y+V,fi(n),1,[e,t]),xi=(e,t,n)=>Lr(K+V,fi(n),1,[e,t]),Li=(e,t,n,s,a)=>kr(Q,fi(a),n,s,[e,t]),ki=(e,t,n,s,a)=>kr(Y+V,fi(a),n,s,[e,t]),Di=(e,t,n,s,a)=>kr(K+V,fi(a),n,s,[e,t]),qi=(e,t,n)=>Rr(e,t,n),Ni=()=>dr(4),Mi=e=>lr(e,4),Ei=e=>ir(e,4),Pi=(e,t)=>cr(e,t,4),Ai=e=>Lr("Query"+N,Ei(e),1),$i=(e,t)=>Lr(L+M,Ei(t),0,[e]),Vi=(e,t)=>Lr(L+M+Z,Ei(t),1,[e]),Oi=(e,t)=>Lr(L+$,Ei(t),7,[e]),Hi=(e,t)=>Lr(L+V,Ei(t),1,[e]),Zi=(e,t,n,s=0,a,o)=>Lr(L+O,Ei(o),1,[e,t,n,s,a]),_i=(e,t,n)=>Lr(L+A,Ei(n),0,[e,t]),Fi=(e,t,n)=>Lr(L+Z,Ei(n),1,[e,t]),Bi=(e,t,n,s)=>Lr(L+H,Ei(s),5,[e,t,n]),zi=(e,t,n,s)=>kr(L+M,Ei(s),t,n,[e]),Ji=(e,t,n,s)=>kr(L+M+Z,Ei(s),t,n,[e]),Ui=(e,t,n,s)=>kr(L+$,Ei(s),t,n,[e]),Wi=(e,t,n,s)=>kr(L+V,Ei(s),t,n,[e]),ji=(e,t,n,s,a,o,r,l)=>kr(L+O,Ei(l),o,r,[e,t,n,s,a]),Gi=(e,t,n,s,a)=>kr(L+A,Ei(a),n,s,[e,t]),Qi=(e,t,n,s,a)=>kr(L+Z,Ei(a),n,s,[e,t]),Yi=(e,t,n,s,a,o)=>kr(L+H,Ei(o),s,a,[e,t,n]),Ki=(e,t)=>Lr("ParamValues",Ei(t),3,[e]),Xi=(e,t)=>[Ki(e,t),oc(e,Ze,[],t)],ec=(e,t,n)=>Lr("ParamValue",Ei(n),4,[e,t]),tc=(e,t,n)=>[ec(e,t,n),ac(e,t,Ze,[],n)],nc=(e,t,n,s)=>kr("ParamValues",Ei(s),t,n,[e]),sc=(e,t,n,s,a)=>kr("ParamValue",Ei(a),n,s,[e,t]),ac=(e,t,n,s,a,o,r)=>Nr(a,"setParamValue",n,s,o,r,e,t),oc=(e,t,n,s,a,o)=>Nr(s,"setParamValues",t,n,a,o,e),rc=(e,t,n)=>Rr(e,t,n),lc=()=>dr(5),ic=e=>lr(e,5),cc=e=>ir(e,5),dc=(e,t)=>cr(e,t,5),uc=e=>Lr(X+N,cc(e),2),hc=(e,t)=>Lr(X,cc(t),5,[e]),gc=(e=Oe,t=fr,n,s=Oe,a=fr)=>{const o=cc(n);return jo(t=>Ne(o,n=>{const a=e(t);s(n.addCheckpoint(a),n,a)}),[o,...t,...a])},mc=e=>Ar(e,"goBackward"),wc=e=>Ar(e,"goForward"),pc=(e,t=fr,n,s=Oe,a=fr)=>{const o=cc(n);return jo(t=>Ne(o,n=>Ne(e(t),e=>s(n.goTo(e),e))),[o,...t,...a])},Ic=e=>{const t=cc(e),[n,s]=uc(t);return[!tt(n),mc(t),s,Ne(s,e=>t?.getCheckpoint(e))??m]},bc=e=>{const t=cc(e),[,,[n]]=uc(t);return[!xe(n),wc(t),n,Ne(n,e=>t?.getCheckpoint(e))??m]},vc=(e,t,n)=>kr(X+N,cc(n),e,t),yc=(e,t,n,s)=>kr(X,cc(s),t,n,[e]),fc=(e,t,n=fr,s,a=fr,o,r=fr)=>{const[,l]=er(),[i,c]=er();return Qo(()=>{(async()=>{const n=e?await t(e):void 0;c(n),n&&s&&(async()=>{await s(n),l([])})()})()},[e,...n,...a]),Qo(()=>()=>{i&&(i.destroy(),o?.(i))},[i,...r]),i},Cc=()=>dr(6),Tc=e=>lr(e,6),Sc=e=>ir(e,6),Rc=(e,t)=>cr(e,t,6),xc=e=>Lr(W,Sc(e),7,[]),Lc=(e,t,n)=>kr(W,Sc(n),e,t,[]),kc=(e,t,n=fr,s,a=fr)=>{const[o,r]=er();return Qo(()=>{(async()=>{const n=e?await t(e):void 0;r(n)})()},[e,...n]),Qo(()=>()=>{o&&(o.destroy(),s?.(o))},[o,...a]),o},Dc=()=>dr(7),qc=e=>lr(e,7),Nc=e=>ir(e,7),Mc=(e,t)=>cr(e,t,7),Ec=e=>Lr(W,Nc(e),7,[]),Pc=(e,t,n)=>kr(W,Nc(n),e,t,[]),Ac=(e,t)=>Ko(()=>({store:e,tableId:t}),[e,t]),$c=(e,t)=>Ko(()=>({queries:e,queryId:t}),[e,t]),Vc=(e,t,n)=>{const s=jo(e,t);return n?s:void 0},Oc=(...e)=>Ko(()=>e,e),Hc=(e,t,n)=>Ko(()=>{const s=t??e;return Zt(Ae(s)?Et(Xe(s,e=>[e,e])):s,(e,t)=>({label:t,component:n,...Ee(e)?{label:e}:e}))},[t,n,e]),Zc="editable",_c=(e=[],t,n=0)=>Xe(e,({component:e},s)=>i("td",{className:ae,children:i(e,{...t})},Fc(s,n))),Fc=(e,t)=>(t?">":"<")+e,Bc=(e=[],t=0)=>Xe(e,({label:e},n)=>i("th",{className:ae,children:e},Fc(n,t))),zc=({cellId:e,sort:[t,n],label:s=e??m,onClick:a})=>c("th",{onClick:Vc(()=>a?.(e),[a,e],a),className:xe(n)||t!=e?void 0:`sorted ${n?"de":"a"}scending`,children:[xe(n)||t!=e?null:(n?"↓":"↑")+" ",s]}),Jc=({className:e,headerRow:t,idColumn:n,params:[s,a,o,r,l,d,u,h]})=>c("table",{className:e,children:[h?i("caption",{children:h}):null,!1===t?null:i("thead",{children:c("tr",{children:[Bc(r),!1===n?null:i(zc,{sort:d??[],label:"Id",onClick:u}),Ht(s,({label:e},t)=>i(zc,{cellId:t,label:e,sort:d??[],onClick:u},t)),Bc(l,1)]})}),i("tbody",{children:Xe(o,e=>{const t={...a,rowId:e};return c("tr",{children:[_c(r,t),De(n)?null:i("th",{title:e,children:e}),Ht(s,({component:n,getComponentProps:s},a)=>i("td",{children:i(n,{...nr(s,e,a),...t,cellId:a})},a)),_c(l,t,1)]},e)})})]}),Uc=({thing:e,onThingChange:t,className:n,hasSchema:s,showType:a=!0})=>{const[o,r]=er(),[l,d]=er(),[u,h]=er(),[g,m]=er(),[w,p]=er();l!==e&&(r(dt(e)),d(e),h(e+""),m(Number(e)||0),p(!!e));const y=jo((e,n)=>{n(e),d(e),t(e)},[t]),f=jo(()=>{if(!s?.()){const e=mt(o,v,b,I),n=mt(e,u,g,w);r(e),d(n),t(n)}},[s,t,u,g,w,o]),C=mt(o,i("input",{value:u,onChange:jo(e=>y(e[ee][te]+"",h),[y])},o),i("input",{type:"number",value:g,onChange:jo(e=>y(Number(e[ee][te]||0),m),[y])},o),i("input",{type:"checkbox",checked:w,onChange:jo(e=>y(!!e[ee].checked,p),[y])},o));return c("div",{className:n,children:[a&&C?i("button",{title:o,className:o,onClick:f,children:o}):null,C]})},Wc=({tableId:e,rowId:t,cellId:n,store:s,className:a,showType:o})=>{const[r,l]=il(e,t,n,s);return i(Uc,{thing:r,onThingChange:l,className:a??Zc+H,showType:o,hasSchema:_r(s)?.hasTablesSchema})},jc=({valueId:e,store:t,className:n,showType:s})=>{const[a,o]=wl(e,t);return i(Uc,{thing:a,onThingChange:o,className:n??Zc+_,showType:s,hasSchema:_r(t)?.hasValuesSchema})},Gc=(e,t,n,s)=>{const a=xe(t)||!Ae(e)?e:Xe(e,(e,n)=>n>0?[t,e]:e);return n?[s,":{",a,"}"]:a},Qc=({checkpoints:e,checkpointId:t,debugIds:n})=>Gc(hc(t,e)??m,void 0,n,t),Yc=({queryId:e,rowId:t,cellId:n,queries:s,debugIds:a})=>Gc(m+(Bi(e,t,n,s)??m),void 0,a,n),Kc=({queryId:e,rowId:t,queries:n,resultCellComponent:s=Yc,getResultCellComponentProps:a,separator:o,debugIds:r})=>Gc(Xe(Fi(e,t,n),o=>i(s,{...nr(a,o),queryId:e,rowId:t,cellId:o,queries:n,debugIds:r},o)),o,r,t),Xc=({tableId:e,rowId:t,cellId:n,store:s,debugIds:a})=>Gc(m+(ll(e,t,n,s)??m),void 0,a,n),ed=({tableId:e,rowId:t,store:n,cellComponent:s=Xc,getCellComponentProps:a,customCellIds:o,separator:r,debugIds:l})=>Gc(Xe(((e,t,n,s)=>{const a=ol(t,n,s);return e??a})(o,e,t,n),o=>i(s,{...nr(a,o),tableId:e,rowId:t,cellId:o,store:n,debugIds:l},o)),r,l,t),td=({tableId:e,store:t,rowComponent:n=ed,getRowComponentProps:s,customCellIds:a,separator:o,debugIds:r},l)=>Gc(Xe(l,o=>i(n,{...nr(s,o),tableId:e,rowId:o,customCellIds:a,store:t,debugIds:r},o)),o,r,e),nd=({queryId:e,queries:t,resultRowComponent:n=Kc,getResultRowComponentProps:s,separator:a,debugIds:o},r)=>Gc(Xe(r,a=>i(n,{...nr(s,a),queryId:e,rowId:a,queries:t,debugIds:o},a)),a,o,e),sd=({relationshipId:e,relationships:t,rowComponent:n=ed,getRowComponentProps:s,separator:a,debugIds:o},r,l)=>{const[c,d,u]=sr(fi(t),e),h=r(e,l,c);return Gc(Xe(h,e=>i(n,{...nr(s,e),tableId:u,rowId:e,store:d,debugIds:o},e)),a,o,l)},ad=e=>({checkpoints:t,checkpointComponent:n=Qc,getCheckpointComponentProps:s,separator:a,debugIds:o})=>{const r=cc(t);return Gc(Xe(e(uc(r)),e=>i(n,{...nr(s,e),checkpoints:r,checkpointId:e,debugIds:o},e)),a)},od=ad(e=>e[0]),rd=ad(e=>xe(e[1])?[]:[e[1]]),ld=ad(e=>e[2]),id=({indexId:e,sliceId:t,indexes:n,rowComponent:s=ed,getRowComponentProps:a,separator:o,debugIds:r})=>{const[l,c,d]=ar(ui(n),e),u=wi(e,t,l);return Gc(Xe(u,e=>i(s,{...nr(a,e),tableId:d,rowId:e,store:c,debugIds:r},e)),o,r,t)},cd=({indexId:e,indexes:t,sliceComponent:n=id,getSliceComponentProps:s,separator:a,debugIds:o})=>Gc(Xe(gi(e,t),a=>i(n,{...nr(s,a),indexId:e,sliceId:a,indexes:t,debugIds:o},a)),a,o,e),dd=e=>sd(e,xi,e.firstRowId),ud=e=>sd(e,Ri,e.remoteRowId),hd=({metricId:e,metrics:t,debugIds:n})=>Gc(ri(e,t)??m,void 0,n,e),gd=({relationshipId:e,localRowId:t,relationships:n,rowComponent:s=ed,getRowComponentProps:a,debugIds:o})=>{const[r,l,,c]=sr(fi(n),e),d=Si(e,t,r);return Gc(xe(c)||xe(d)?null:i(s,{...nr(a,d),tableId:c,rowId:d,store:l,debugIds:o},d),void 0,o,t)},md=({cellId:e,descending:t,offset:n,limit:s,...a})=>nd(a,Zi(a.queryId,e,t,n,s,a.queries)),wd=e=>nd(e,Hi(e.queryId,e.queries)),pd=({cellId:e,descending:t,offset:n,limit:s,...a})=>td(a,tl(a.tableId,e,t,n,s,a.store)),Id=e=>td(e,el(e.tableId,e.store)),bd=({store:e,tableComponent:t=Id,getTableComponentProps:n,separator:s,debugIds:a})=>Gc(Xe(Wr(e),s=>i(t,{...nr(n,s),tableId:s,store:e,debugIds:a},s)),s),vd=({valueId:e,store:t,debugIds:n})=>Gc(m+(ml(e,t)??m),void 0,n,e),yd=({store:e,valueComponent:t=vd,getValueComponentProps:n,separator:s,debugIds:a})=>Gc(Xe(hl(e),s=>i(t,{...nr(n,s),valueId:s,store:e,debugIds:a},s)),s),fd=(e,t)=>Xe(Yr(e,t),t=>e+p+t),Cd=({localRowId:e,params:[t,n,s,a,o,r,l,u,h]})=>{const g=Si(o,e,r),m={tableId:s??"",rowId:e,store:l};return c("tr",{children:[_c(u,m),De(t)?null:c(d,{children:[i("th",{title:e,children:e}),i("th",{title:g,children:g})]}),Ht(n,({component:t,getComponentProps:n},o)=>{const[r,c]=ue(o,p,2),d=r===s?e:r===a?g:void 0;return xe(d)?null:i("td",{children:i(t,{...nr(n,d,c),store:l,tableId:r,rowId:d,cellId:c})},o)}),_c(h,m,1)]})},Td=({relationshipId:e,relationships:t,editable:n,customCells:s,extraCellsBefore:a,extraCellsAfter:o,className:r,headerRow:l,idColumn:u=!0})=>{const[h,g,m,w]=sr(fi(t),e),p=Hc([...fd(m,g),...fd(w,g)],s,n?Wc:Xc),I=Oc(u,p,m,w,e,h,g,a,o);return c("table",{className:r,children:[De(l)?null:i("thead",{children:c("tr",{children:[Bc(a),De(u)?null:c(d,{children:[c("th",{children:[m,".Id"]}),c("th",{children:[w,".Id"]})]}),Ht(p,({label:e},t)=>i("th",{children:e},t)),Bc(o,1)]})}),i("tbody",{children:Xe(el(m,g),e=>i(Cd,{localRowId:e,params:I},e))})]})},Sd=(e,t=!1,n,s=0,a,o,r,l)=>{const[[c,d,u],h]=er([e,t,s]),g=jo(e=>{h(e),l?.(e)},[l]),m=Vc(e=>g([e,e==c&&!d,u]),[g,c,d,u],n),w=jo(e=>g([c,d,e]),[g,c,d]),p=ke(r)?Rd:r;return[[c,d,u],m,Ko(()=>De(r)?null:i(p,{offset:u,limit:a,total:o,onChange:w}),[r,p,u,a,o,w])]},Rd=({onChange:e,total:t,offset:n=0,limit:s=t,singular:a="row",plural:o=a+"s"})=>{(n>t||n<0)&&(n=0,e(0));const r=Vc(()=>e(n-s),[e,n,s],n>0),l=Vc(()=>e(n+s),[e,n,s],n+s<t);return c(d,{children:[t>s&&c(d,{children:[i("button",{className:"previous",disabled:0==n,onClick:r,children:"←"}),i("button",{className:"next",disabled:n+s>=t,onClick:l,children:"→"}),n+1," to ",Ce(t,n+s)," of "]}),t," ",1!=t?o:a]})},xd=({queryId:e,cellId:t,descending:n,offset:s,limit:a,queries:o,sortOnClick:r,paginator:l=!1,customCells:c,extraCellsBefore:d,extraCellsAfter:u,onChange:h,...g})=>{const[m,w,p]=Sd(t,n,r,s,a,Oi(e,o),l,h);return i(Jc,{...g,params:Oc(Hc(Vi(e,o),c,Yc),$c(o,e),Zi(e,...m,a,o),d,u,m,w,p)})},Ld=({queryId:e,queries:t,customCells:n,extraCellsBefore:s,extraCellsAfter:a,...o})=>i(Jc,{...o,params:Oc(Hc(Vi(e,t),n,Yc),$c(t,e),Hi(e,t),s,a)}),kd=({indexId:e,sliceId:t,indexes:n,editable:s,customCells:a,extraCellsBefore:o,extraCellsAfter:r,...l})=>{const[c,d,u]=ar(ui(n),e);return i(Jc,{...l,params:Oc(Hc(Yr(u,d),a,s?Wc:Xc),Ac(d,u),wi(e,t,c),o,r)})},Dd=({tableId:e,cellId:t,descending:n,offset:s,limit:a,store:o,editable:r,sortOnClick:l,paginator:c=!1,onChange:d,customCells:u,extraCellsBefore:h,extraCellsAfter:g,...m})=>{const[w,p,I]=Sd(t,n,l,s,a,Xr(e,o),c,d);return i(Jc,{...m,params:Oc(Hc(Yr(e,o),u,r?Wc:Xc),Ac(o,e),tl(e,...w,a,o),h,g,w,p,I)})},qd=({tableId:e,store:t,editable:n,customCells:s,extraCellsBefore:a,extraCellsAfter:o,...r})=>i(Jc,{...r,params:Oc(Hc(Yr(e,t),s,n?Wc:Xc),Ac(t,e),el(e,t),a,o)}),Nd=(e=[],t,n=0)=>Xe(e,({component:e},s)=>i("td",{className:ae,children:i(e,{...t})},Fc(s,n))),Md=({store:e,editable:t=!1,valueComponent:n=(t?jc:vd),getValueComponentProps:s,extraCellsBefore:a,extraCellsAfter:o,className:r,headerRow:l,idColumn:d})=>c("table",{className:r,children:[!1===l?null:i("thead",{children:c("tr",{children:[Bc(a),!1===d?null:i("th",{children:"Id"}),i("th",{children:_}),Bc(o,1)]})}),i("tbody",{children:Xe(hl(e),t=>{const r={valueId:t,store:e};return c("tr",{children:[Nd(a,r),De(d)?null:i("th",{title:t,children:t}),i("td",{children:i(n,{...nr(s,t),...r})}),Nd(o,r,1)]},t)})})]}),Ed="tinybaseInspector",Pd="TinyBase Inspector",Ad=["left","top","bottom","right","full"],$d="state",Vd="sort",Od="open",Hd="position",Zd=Od,_d="editable",Fd=(...e)=>xn(e),Bd=(e,t)=>Xe(Qe([...e]),t),zd=(e,t)=>[!!ll($d,e,_d,t),jo(n=>{t.setCell($d,e,_d,e=>!e),n.preventDefault()},[t,e])],Jd=({s:e})=>{const t=ml(Hd,e)??1,n=Sl(Zd,()=>!0,[],e);return ml(Zd,e)?null:i("img",{onClick:n,title:Pd,"data-position":t})},Ud=({uniqueId:e,title:t,editable:n,handleEditable:s,children:a,s:o})=>{const r=!!ll($d,e,Od,o),l=fl($d,e,Od,e=>e[ee].open,[],o);return c("details",{open:r,onToggle:l,children:[c("summary",{children:[i("span",{children:t}),s?i("img",{onClick:s,className:n?"done":"edit",title:n?"Done editing":"Edit"}):null]}),i("div",{children:a})]})},Wd=({indexes:e,indexesId:t,indexId:n,s:s})=>i(Ud,{uniqueId:Fd("i",t,n),title:"Index: "+n,s:s,children:Xe(gi(n,e),a=>i(jd,{indexes:e,indexesId:t,indexId:n,sliceId:a,s:s},a))}),jd=({indexes:e,indexesId:t,indexId:n,sliceId:s,s:a})=>{const o=Fd("i",t,n,s),[r,l]=zd(o,a);return i(Ud,{uniqueId:o,title:"Slice: "+s,editable:r,handleEditable:l,s:a,children:i(kd,{sliceId:s,indexId:n,indexes:e,editable:r})})},Gd=({indexesId:e,s:t})=>{const n=di(e),s=mi(n);return xe(n)?null:i(Ud,{uniqueId:Fd("i",e),title:"Indexes: "+(e??T),s:t,children:tt(s)?"No indexes defined":Bd(s,s=>i(Wd,{indexes:n,indexesId:e,indexId:s,s:t},s))})},Qd=({metrics:e,metricId:t})=>c("tr",{children:[i("th",{title:t,children:t}),i("td",{children:e?.getTableId(t)}),i("td",{children:ri(t,e)})]}),Yd=({metricsId:e,s:t})=>{const n=ni(e),s=oi(n);return xe(n)?null:i(Ud,{uniqueId:Fd("m",e),title:"Metrics: "+(e??T),s:t,children:tt(s)?"No metrics defined":c("table",{children:[c("thead",{children:[i("th",{children:"Metric Id"}),i("th",{children:"Table Id"}),i("th",{children:"Metric"})]}),i("tbody",{children:Xe(s,e=>i(Qd,{metrics:n,metricId:e},e))})]})})},Kd=({queries:e,queriesId:t,queryId:n,s:s})=>{const a=Fd("q",t,n),[o,r,l]=Rn(ll($d,a,Vd,s)??"[]"),c=fl($d,a,Vd,xn,[],s);return i(Ud,{uniqueId:a,title:"Query: "+n,s:s,children:i(xd,{queryId:n,queries:e,cellId:o,descending:r,offset:l,limit:10,paginator:!0,sortOnClick:!0,onChange:c})})},Xd=({queriesId:e,s:t})=>{const n=Mi(e),s=Ai(n);return xe(n)?null:i(Ud,{uniqueId:Fd("q",e),title:"Queries: "+(e??T),s:t,children:tt(s)?"No queries defined":Bd(s,s=>i(Kd,{queries:n,queriesId:e,queryId:s,s:t},s))})},eu=({relationships:e,relationshipsId:t,relationshipId:n,s:s})=>{const a=Fd("r",t,n),[o,r]=zd(a,s);return i(Ud,{uniqueId:a,title:"Relationship: "+n,editable:o,handleEditable:r,s:s,children:i(Td,{relationshipId:n,relationships:e,editable:o})})},tu=({relationshipsId:e,s:t})=>{const n=yi(e),s=Ti(n);return xe(n)?null:i(Ud,{uniqueId:Fd("r",e),title:"Relationships: "+(e??T),s:t,children:tt(s)?"No relationships defined":Bd(s,s=>i(eu,{relationships:n,relationshipsId:e,relationshipId:s,s:t},s))})},nu=(e,t)=>{let n,s=0;for(;t(n=e+(s>0?" (copy"+(s>1?" "+s:"")+")":""));)s++;return n},su=({actions:e,...t})=>{const[n,s]=er(),a=jo(()=>s(void 0),[]);if(Qo(()=>{if(!xe(n)){const e=e=>{xe(n)||"Escape"!==e.key||(e.preventDefault(),a())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}},[n,a]),xe(n))return e.map(([e,t],n)=>i("img",{title:t,className:e,onClick:()=>s(n)},n));{const[,,s]=e[n];return c(d,{children:[i(s,{onDone:a,...t}),i("img",{onClick:a,title:"Cancel",className:"cancel"})]})}},au=({onDone:e,suggestedId:t,has:n,set:s,prompt:a="New Id"})=>{const[o,r]=er(t),[l,u]=er(!0),[h,g]=er(t),m=jo(()=>{n(o)?u(!1):(s(o),e())},[e,u,n,s,o]),w=jo(e=>{"Enter"===e.key&&(e.preventDefault(),m())},[m]);return t!=h&&(r(t),g(t)),c(d,{children:[a+": ",i("input",{type:"text",value:o,onChange:e=>{r(e.target.value),u(!n(e.target.value))},onKeyDown:w,autoFocus:!0})," ",i("img",{onClick:m,title:l?"Confirm":"Id already exists",className:l?"ok":"okDis"})]})},ou=({onClick:e,prompt:t="Delete"})=>{const n=jo(t=>{"Enter"===t.key&&(t.preventDefault(),e())},[e]);return Qo(()=>(document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)),[n]),c(d,{children:[t,"? ",i("img",{onClick:e,title:"Confirm",className:"ok"})]})},ru=({left:e,right:t})=>c("div",{className:"actions",children:[i("div",{children:e}),i("div",{children:t})]}),lu=e=>{const t=_r(e);return jo(e=>t?.hasTable(e)??!1,[t])},iu=({onDone:e,store:t})=>{const n=lu(t);return i(au,{onDone:e,suggestedId:nu("table",n),has:n,set:Il(e=>e,()=>({row:{cell:""}}),[],t),prompt:"Add table"})},cu=({onDone:e,store:t})=>i(ou,{onClick:Rl(t,e),prompt:"Delete all tables"}),du=({store:e})=>i(ru,{left:i(su,{actions:[["add","Add table",iu]],store:e}),right:zr(e)?i(su,{actions:[["delete","Delete all tables",cu]],store:e}):null}),uu=({onDone:e,tableId:t,store:n})=>{const s=pu(n,t);return i(au,{onDone:e,suggestedId:nu("row",s),has:s,set:bl(t,e=>e,(e,n)=>Et(Xe(n.getTableCellIds(t),e=>[e,""]))),prompt:"Add row"})},hu=({onDone:e,tableId:t,store:n})=>{const s=_r(n),a=lu(s);return i(au,{onDone:e,suggestedId:nu(t,a),has:a,set:Il(e=>e,(e,n)=>n.getTable(t)),prompt:"Clone table to"})},gu=({onDone:e,tableId:t,store:n})=>i(ou,{onClick:xl(t,n,e),prompt:"Delete table"}),mu=({tableId:e,store:t})=>i(su,{actions:[["add","Add row",uu]],store:t,tableId:e}),wu=({tableId:e,store:t})=>i(su,{actions:[["clone","Clone table",hu],["delete","Delete table",gu]],store:t,tableId:e}),pu=(e,t)=>{const n=_r(e);return jo(e=>n?.hasRow(t,e)??!1,[n,t])},Iu=({onDone:e,tableId:t,rowId:n,store:s})=>{const a=_r(s),o=jo(e=>a.hasCell(t,n,e),[a,t,n]);return i(au,{onDone:e,suggestedId:nu("cell",o),has:o,set:fl(t,n,e=>e,()=>"",[],a),prompt:"Add cell"})},bu=({onDone:e,tableId:t,rowId:n,store:s})=>{const a=_r(s),o=pu(a,t);return i(au,{onDone:e,suggestedId:nu(n,o),has:o,set:bl(t,e=>e,(e,s)=>s.getRow(t,n),[n]),prompt:"Clone row to"})},vu=({onDone:e,tableId:t,rowId:n,store:s})=>i(ou,{onClick:Ll(t,n,s,e),prompt:"Delete row"}),yu=({onDone:e,tableId:t,rowId:n,cellId:s,store:a})=>i(ou,{onClick:kl(t,n,s,!0,a,e),prompt:"Delete cell"}),fu=({tableId:e,rowId:t,cellId:n,store:s})=>i(su,{actions:[["delete","Delete cell",yu]],store:s,tableId:e,rowId:t,cellId:n}),Cu=[{label:"",component:({tableId:e,rowId:t,store:n})=>i(su,{actions:[["add","Add cell",Iu],["clone","Clone row",bu],["delete","Delete row",vu]],store:n,tableId:e,rowId:t})}],Tu=e=>c(d,{children:[i(Wc,{...e}),rl(e.tableId,e.rowId,e.cellId,e.store)&&i(fu,{...e})]}),Su=({tableId:e,store:t,storeId:n,s:s})=>{const a=Fd("t",n,e),[o,r,l]=Rn(ll($d,a,Vd,s)??"[]"),d=fl($d,a,Vd,xn,[],s),[u,h]=zd(a,s),g=u?Tu:Xc;return c(Ud,{uniqueId:a,title:M+": "+e,editable:u,handleEditable:h,s:s,children:[i(Dd,{tableId:e,store:t,cellId:o,descending:r,offset:l,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u,extraCellsAfter:u?Cu:[],customCells:Et(Xe(Yr(e,t),e=>[e,{label:e,component:g}]))}),u?c("div",{className:"actions",children:[i("div",{children:i(mu,{tableId:e,store:t})}),i("div",{children:i(wu,{tableId:e,store:t})})]}):null]})},Ru=({store:e,storeId:t,s:n})=>{const s=Fd("ts",t),[a,o]=zd(s,n),r=Wr(e);return c(Ud,{uniqueId:s,title:E,editable:a,handleEditable:o,s:n,children:[tt(r)?i("caption",{children:"No tables."}):Bd(r,s=>i(Su,{store:e,storeId:t,tableId:s,s:n},s)),a?i(du,{store:e}):null]})},xu=e=>{const t=_r(e);return jo(e=>t?.hasValue(e)??!1,[t])},Lu=({onDone:e,store:t})=>{const n=xu(t);return i(au,{onDone:e,suggestedId:nu("value",n),has:n,set:Sl(e=>e,()=>"",[],t),prompt:"Add value"})},ku=({onDone:e,store:t})=>i(ou,{onClick:Dl(t,e),prompt:"Delete all values"}),Du=({store:e})=>i(ru,{left:i(su,{actions:[["add","Add value",Lu]],store:e}),right:cl(e)?i(su,{actions:[["delete","Delete all values",ku]],store:e}):null}),qu=({onDone:e,valueId:t,store:n})=>{const s=xu(n);return i(au,{onDone:e,suggestedId:nu(t,s),has:s,set:Sl(e=>e,(e,n)=>n.getValue(t)??"",[t],n),prompt:"Clone value to"})},Nu=({onDone:e,valueId:t,store:n})=>i(ou,{onClick:ql(t,n,e),prompt:"Delete value"}),Mu=[{label:"",component:({valueId:e,store:t})=>i(su,{actions:[["clone","Clone value",qu],["delete","Delete value",Nu]],store:t,valueId:e})}],Eu=({store:e,storeId:t,s:n})=>{const s=Fd("v",t),[a,o]=zd(s,n);return c(Ud,{uniqueId:s,title:F,editable:a,handleEditable:o,s:n,children:[tt(hl(e))?i("caption",{children:"No values."}):i(Md,{store:e,editable:a,extraCellsAfter:a?Mu:[]}),a?i(Du,{store:e}):null]})},Pu=({storeId:e,s:t})=>{const n=Hr(e);return xe(n)?null:c(Ud,{uniqueId:Fd("s",e),title:(n.isMergeable()?"Mergeable":"")+"Store: "+(e??T),s:t,children:[i(Eu,{storeId:e,store:n,s:t}),i(Ru,{storeId:e,store:n,s:t})]})},Au=({s:e})=>{const t=Xo(null),n=Xo(0),[s,a]=er(!1),{scrollLeft:o,scrollTop:r}=dl(e);Yo(()=>{const e=t.current;if(e&&!s){const t=new MutationObserver(()=>{e.scrollWidth>=Te(o)+e.clientWidth&&e.scrollHeight>=Te(r)+e.clientHeight&&e.scrollTo(o,r)});return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}},[s,o,r]);const l=jo(t=>{const{scrollLeft:s,scrollTop:o}=t[ee];cancelIdleCallback(n.current),n.current=requestIdleCallback(()=>{a(!0),e.setPartialValues({scrollLeft:s,scrollTop:o})})},[e]),d=Hr(),u=Or(),h=ni(),g=ti(),m=di(),w=ci(),p=yi(),I=vi(),b=Mi(),v=Ni();return xe(d)&&tt(u)&&xe(h)&&tt(g)&&xe(m)&&tt(w)&&xe(p)&&tt(I)&&xe(b)&&tt(v)?i("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):c("article",{ref:t,onScroll:l,children:[i(Pu,{s:e}),Xe(u,t=>i(Pu,{storeId:t,s:e},t)),i(Yd,{s:e}),Xe(g,t=>i(Yd,{metricsId:t,s:e},t)),i(Gd,{s:e}),Xe(w,t=>i(Gd,{indexesId:t,s:e},t)),i(tu,{s:e}),Xe(I,t=>i(tu,{relationshipsId:t,s:e},t)),i(Xd,{s:e}),Xe(v,t=>i(Xd,{queriesId:t,s:e},t))]})};class $u extends Uo{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?i("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const Vu=({s:e})=>{const t=ml(Hd,e)??1,n=Sl(Zd,()=>!1,[],e),s=Sl(Hd,e=>Number(e[ee].dataset.id),[],e);return c("header",{children:[i("img",{className:"flat",title:Pd,onClick:()=>open("https://tinybase.org","_blank")}),i("span",{children:Pd}),Xe(Ad,(e,n)=>n==t?null:i("img",{onClick:s,"data-id":n,title:"Dock to "+e},n)),i("img",{className:"flat",onClick:n,title:"Close"})]})},Ou=({s:e})=>{const t=ml(Hd,e)??1;return ml(Zd,e)?c("main",{"data-position":t,children:[i(Vu,{s:e}),i($u,{children:i(Au,{s:e})})]}):null},Hu='url("',Zu=(e,t="white")=>({content:Hu+`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='${t}'><path d='${e}' /></svg>")`}),_u="v560h120v-560h-120Z",Fu="v560h360v-560h-360Z",Bu="v120h560v-120h-560Z",zu="v360h560v-360h-560Z",Ju={content:Hu+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")"},Uu=Xe([`M200-760${_u} M400-760${Fu}`,`M200-760${Bu} M200-560${zu}`,`M200-760${zu} M200-320${Bu}`,`M200-760${Fu} M640-760${_u}`],e=>Zu("M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z"+e));ot(Uu,Zu("M120-120v-200h80v120h120v80H120Zm520 0v-80h120v-120h80v200H640ZM120-640v-200h200v80H200v120h-80Zm640 0v-120H640v-80h200v200h-80Z"));const Wu=Zu("m336-280-56-56 144-144-144-143 56-56 144 144 143-144 56 56-144 143 144 144-56 56-143-144-144 144Z"),ju=Zu("M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z"),Gu=Zu("m622-453-56-56 82-82-57-57-82 82-56-56 195-195q12-12 26.5-17.5T705-840q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L622-453ZM200-200h57l195-195-28-29-29-28-195 195v57ZM792-56 509-338 290-120H120v-169l219-219L56-792l57-57 736 736-57 57Zm-32-648-56-56 56 56Zm-169 56 57 57-57-57ZM424-424l-29-28 57 57-28-29Z"),Qu=Zu("M440-280h80v-160h160v-80H520v-160h-80v160H280v80h160v160ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z"),Yu=Zu("M520-400h80v-120h120v-80H600v-120h-80v120H400v80h120v120ZM320-240q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320Zm0-80h480v-480H320v480ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm160-720v480-480Z"),Ku=Zu("M280-120q-33 0-56.5-23.5T200-200v-520h-40v-80h200v-40h240v40h200v80h-40v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM360-280h80v-360h-80v360Zm160 0h80v-360h-80v360ZM280-720v520-520Z"),Xu=Zu("m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(127,255,127)"),eh=Zu("m40-120 440-760 440 760H40Zm138-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm-40-120h80v-200h-80v200Zm40-100Z","rgb(255,255,127)"),th=Zu("m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(255,127,127)"),nh=Zu("M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z"),sh=Zu("M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z"),ah="*::-webkit-scrollbar",oh="background",rh="width",lh="max-"+rh,ih="min-"+rh,ch="height",dh="border",uh=dh+"-radius",hh="padding",gh="margin",mh=gh+"-right",wh="top",ph="bottom",Ih="left",bh="right",vh="color",yh="position",fh="box-shadow",Ch="font-size",Th="display",Sh="overflow",Rh="cursor",xh="vertical-align",Lh="text-align",kh="justify-content",Dh="fixed",qh="revert",Nh="unset",Mh="none",Eh="flex",Ph="pointer",Ah="auto",$h="hidden",Vh="nowrap",Oh=(e,t="% 0.01 "+Hh("hue"))=>`oklch(${e}${t})`,Hh=e=>`var(--${e})`,Zh=(...e)=>e.join("rem ")+"rem",_h=(...e)=>e.join("px ")+"px",Fh=(e=100)=>e+"vw",Bh=(e=100)=>e+"vh",zh=Ke(Ht({"":{all:"initial",[Ch]:Zh(.75),[yh]:Dh,"font-family":"inter,sans-serif","z-index":999999,"--bg":Oh(20),"--bg2":Oh(15),"--bg3":Oh(25),"--bg4":Oh(30),"--fg":Oh(85),"--fg2":Oh(60),["--"+dh]:_h(1)+" solid "+Hh("bg4"),["--"+fh]:_h(0,1,2,0)+" #0007"},"*":{all:qh},"*::before":{all:qh},"*::after":{all:qh},[ah]:{[rh]:Zh(.5),[ch]:Zh(.5)},[ah+"-thumb"]:{[oh]:Hh("bg4")},[ah+"-thumb:hover"]:{[oh]:Hh("bg4")},[ah+"-corner"]:{[oh]:Mh},[ah+"-track"]:{[oh]:Mh},img:{[rh]:Zh(.8),[ch]:Zh(.8),[xh]:"text-"+ph,[Rh]:Ph,[gh]:_h(-2.5,2,-2.5,0),[hh]:_h(2),[dh]:Hh(dh),[oh]:Hh("bg3"),[fh]:Hh(fh),[uh]:Zh(.25)},"img.flat":{[dh]:Mh,[oh]:Mh,[fh]:Mh},">img":{[hh]:Zh(.25),[ph]:0,[bh]:0,[yh]:Dh,[ch]:Nh,[gh]:0,...Ju},...Et(Xe([{[ph]:0,[Ih]:0},{[wh]:0,[bh]:0}],(e,t)=>[`>img[data-position='${t}']`,e])),main:{[Th]:Eh,[vh]:Hh("fg"),[oh]:Hh("bg"),[Sh]:$h,[yh]:Dh,[fh]:Hh(fh),"flex-direction":"column"},...Et(Xe([{[ph]:0,[Ih]:0,[rh]:Fh(35),[ch]:Bh(),[dh+"-"+bh]:Hh(dh)},{[wh]:0,[bh]:0,[rh]:Fh(),[ch]:Bh(30),[dh+"-"+ph]:Hh(dh)},{[ph]:0,[Ih]:0,[rh]:Fh(),[ch]:Bh(30),[dh+"-"+wh]:Hh(dh)},{[wh]:0,[bh]:0,[rh]:Fh(35),[ch]:Bh(),[dh+"-"+Ih]:Hh(dh)},{[wh]:0,[bh]:0,[rh]:Fh(),[ch]:Bh()}],(e,t)=>[`main[data-position='${t}']`,e])),header:{[Th]:Eh,[hh]:Zh(.5),[fh]:Hh(fh),[oh]:Oh(30,"% 0.008 var(--hue) / .5"),[rh]:"calc(100% - .5rem)",[yh]:"absolute",[dh+"-"+ph]:Hh(dh),"align-items":"center","backdrop-filter":"blur(4px)"},"header>img:nth-of-type(1)":{[ch]:Zh(1),[rh]:Zh(1),...Ju},"header>img:nth-of-type(6)":Wu,...Et(Xe(Uu,(e,t)=>[`header>img[data-id='${t}']`,e])),"header>span":{[Sh]:$h,[Eh]:1,"font-weight":800,"white-space":Vh,"text-overflow":"ellipsis"},article:{[Sh]:Ah,[Eh]:1,[hh+"-"+wh]:Zh(2)},details:{[gh]:Zh(.5),[dh]:Hh(dh),[uh]:Zh(.25)},summary:{[oh]:Hh("bg3"),[gh]:_h(-1),[dh]:Hh(dh),[hh]:Zh(.25,.125),[Th]:Eh,[uh]:Zh(.25),"user-select":Mh,[kh]:"space-between","align-items":"center"},"summary>span::before":{[Th]:"inline-block",[xh]:"sub",[gh]:_h(2),[rh]:Zh(1),[ch]:Zh(1),...sh},"details[open]>summary":{"border-bottom-left-radius":0,"border-bottom-right-radius":0,[gh+"-"+ph]:0},"details[open]>summary>span::before":nh,"details>summary img":{[Th]:Mh},"details[open]>summary img":{[Th]:Nh,[gh+"-"+Ih]:Zh(.25)},"details>div":{[Sh]:Ah},caption:{[vh]:Hh("fg2"),[hh]:Zh(.25,.5),[Lh]:Ih,"white-space":Vh},"caption button":{[rh]:Zh(1.5),[dh]:Mh,[oh]:Mh,[vh]:Hh("fg"),[hh]:0,[Rh]:Ph},"caption button[disabled]":{[vh]:Hh("fg2")},".actions":{[hh]:Zh(.75,.5),[gh]:0,[Th]:Eh,[dh+"-"+wh]:Hh(dh),[kh]:"space-between"},table:{[ih]:"100%","border-collapse":"collapse","table-layout":Dh},thead:{[oh]:Hh("bg")},[`th,#${Ed} td`]:{[Sh]:$h,[hh]:Zh(.25,.5),[lh]:Zh(20),[dh]:Hh(dh),"text-overflow":"ellipsis","white-space":Vh,"border-width":_h(1,0,0),[Lh]:Ih},"th:first-child":{[rh]:Zh(3),[ih]:Zh(3),[lh]:Zh(3)},"th.sorted":{[oh]:Hh("bg3")},"td.extra":{[Lh]:bh},"tbody button":{[oh]:Mh,[dh]:Mh,[Ch]:0,[rh]:Zh(.8),[ch]:Zh(.8),[vh]:Hh("fg2"),[gh]:Zh(0,.25,0,-.25),"line-height":Zh(.8)},"tbody button:first-letter":{[Ch]:Zh(.8)},input:{[oh]:Hh("bg2"),[vh]:Nh,[hh]:_h(4),[dh]:0,[gh]:_h(-4,0),[Ch]:Nh,[lh]:Zh(6)},"input:focus":{"outline-width":0},'input[type="number"]':{[rh]:Zh(3)},'input[type="checkbox"]':{[xh]:_h(-2)},".editableCell":{[Th]:"inline-block",[mh]:_h(2)},"button.next":{[mh]:Zh(.5)},"img.edit":ju,"img.done":Gu,"img.add":Qu,"img.clone":Yu,"img.delete":Ku,"img.ok":Xu,"img.okDis":eh,"img.cancel":th,"span.warn":{[gh]:Zh(2,.25),[vh]:"#d81b60"}},(e,t)=>`#${Ed} ${t}{${Ke(Ht(e,(e,t)=>`${t}:${e};`))}}`)),Jh=({position:e="right",open:t=!1,hue:n=270})=>{const s=Vr(ps),a=Ad.indexOf(e);return fc(s,e=>Na(e,Ed),void 0,async e=>{await e.load([{},{position:-1==a?1:a,open:!!t}]),await e.startAutoSave()}),c(d,{children:[c("aside",{id:Ed,children:[i(Jd,{s:s}),i(Ou,{s:s})]}),c("style",{children:[`#${Ed}{--hue:${n}}`,zh]})]})};export{od as BackwardCheckpointsView,Xc as CellView,Qc as CheckpointView,rd as CurrentCheckpointView,Wc as EditableCellView,jc as EditableValueView,ld as ForwardCheckpointsView,cd as IndexView,Jh as Inspector,dd as LinkedRowsView,ud as LocalRowsView,So as Message,hd as MetricView,pr as OFFSET_CHECKPOINTS,gr as OFFSET_INDEXES,hr as OFFSET_METRICS,Ir as OFFSET_PERSISTER,wr as OFFSET_QUERIES,mr as OFFSET_RELATIONSHIPS,ur as OFFSET_STORE,br as OFFSET_SYNCHRONIZER,Ss as Persists,yr as Provider,Cd as RelationshipInHtmlRow,Td as RelationshipInHtmlTable,gd as RemoteRowView,Yc as ResultCellView,Kc as ResultRowView,xd as ResultSortedTableInHtmlTable,md as ResultSortedTableView,Ld as ResultTableInHtmlTable,wd as ResultTableView,ed as RowView,kd as SliceInHtmlTable,id as SliceView,Dd as SortedTableInHtmlTable,Rd as SortedTablePaginator,pd as SortedTableView,Ts as Status,qd as TableInHtmlTable,Id as TableView,bd as TablesView,ao as TinyBasePartyKitServer,vd as ValueView,Md as ValuesInHtmlTable,yd as ValuesView,Zo as WsServerDurableObject,Nn as addOrRemoveHash,eo as broadcastChanges,La as createAutomergePersister,xo as createBroadcastChannelSynchronizer,In as createCheckpoints,Ea as createCrSqliteWasmPersister,Ls as createCustomPersister,Ta as createCustomPostgreSqlPersister,Sa as createCustomSqlitePersister,Ro as createCustomSynchronizer,Aa as createDurableObjectStoragePersister,$a as createElectricSqlPersister,Va as createExpoSqlitePersister,Oa as createFilePersister,Ba as createIndexedDbPersister,Qn as createIndexes,za as createLibSqlPersister,qa as createLocalPersister,ko as createLocalSynchronizer,vs as createMergeableStore,Cs as createMetrics,Ma as createOpfsPersister,Ga as createPartyKitPersister,oo as createPglitePersister,ro as createPostgresPersister,lo as createPowerSyncPersister,Co as createQueries,co as createReactNativeMmkvPersister,uo as createReactNativeSqlitePersister,To as createRelationships,go as createRemotePersister,Na as createSessionPersister,Io as createSqlite3Persister,mo as createSqliteBunPersister,wo as createSqliteWasmPersister,ps as createStore,Jo as createWsServer,Bo as createWsServerSimple,Eo as createWsSynchronizer,fo as createYjsPersister,Gn as defaultSorter,An as getCellHash,$n as getCellInRowHash,qn as getHash,jn as getHlcFunctions,Vn as getRowHash,On as getRowInTableHash,Hn as getTableHash,Zn as getTableInTablesHash,_n as getTablesHash,Tn as getUniqueId,Pn as getValueHash,En as getValueInValuesHash,Mn as getValuesHash,_o as getWsServerDurableObjectFetch,Ka as hasStoreInStorage,Xa as loadStoreFromStorage,_a as objectStoreMatch,vl as useAddRowCallback,ll as useCell,ol as useCellIds,Bl as useCellIdsListener,Jl as useCellListener,il as useCellState,hc as useCheckpoint,uc as useCheckpointIds,vc as useCheckpointIdsListener,yc as useCheckpointListener,ic as useCheckpoints,lc as useCheckpointsIds,cc as useCheckpointsOrCheckpointsById,rc as useCreateCheckpoints,ii as useCreateIndexes,Br as useCreateMergeableStore,ei as useCreateMetrics,fc as useCreatePersister,qi as useCreateQueries,bi as useCreateRelationships,Vr as useCreateStore,kc as useCreateSynchronizer,kl as useDelCellCallback,Ll as useDelRowCallback,xl as useDelTableCallback,Rl as useDelTablesCallback,ql as useDelValueCallback,Dl as useDelValuesCallback,Xl as useDidFinishTransactionListener,mc as useGoBackwardCallback,wc as useGoForwardCallback,pc as useGoToCallback,rl as useHasCell,zl as useHasCellListener,nl as useHasRow,_l as useHasRowListener,jr as useHasTable,Kr as useHasTableCell,Vl as useHasTableCellListener,Pl as useHasTableListener,zr as useHasTables,Nl as useHasTablesListener,gl as useHasValue,Gl as useHasValueListener,cl as useHasValues,Ul as useHasValuesListener,mi as useIndexIds,di as useIndexes,ci as useIndexesIds,ui as useIndexesOrIndexesById,xi as useLinkedRowIds,Di as useLinkedRowIdsListener,Ri as useLocalRowIds,ki as useLocalRowIdsListener,ri as useMetric,oi as useMetricIds,li as useMetricListener,ni as useMetrics,ti as useMetricsIds,si as useMetricsOrMetricsById,ec as useParamValue,sc as useParamValueListener,tc as useParamValueState,Ki as useParamValues,nc as useParamValuesListener,Xi as useParamValuesState,Tc as usePersister,Cc as usePersisterIds,Sc as usePersisterOrPersisterById,xc as usePersisterStatus,Lc as usePersisterStatusListener,dc as useProvideCheckpoints,hi as useProvideIndexes,ai as useProvideMetrics,Rc as useProvidePersister,Pi as useProvideQueries,Ci as useProvideRelationships,Fr as useProvideStore,Mc as useProvideSynchronizer,Mi as useQueries,Ni as useQueriesIds,Ei as useQueriesOrQueriesById,Ai as useQueryIds,bc as useRedoInformation,Ti as useRelationshipIds,yi as useRelationships,vi as useRelationshipsIds,fi as useRelationshipsOrRelationshipsById,Si as useRemoteRowId,Li as useRemoteRowIdListener,Bi as useResultCell,Fi as useResultCellIds,Qi as useResultCellIdsListener,Yi as useResultCellListener,_i as useResultRow,Oi as useResultRowCount,Ui as useResultRowCountListener,Hi as useResultRowIds,Wi as useResultRowIdsListener,Gi as useResultRowListener,Zi as useResultSortedRowIds,ji as useResultSortedRowIdsListener,$i as useResultTable,Vi as useResultTableCellIds,Ji as useResultTableCellIdsListener,zi as useResultTableListener,sl as useRow,Xr as useRowCount,Ol as useRowCountListener,el as useRowIds,Hl as useRowIdsListener,Fl as useRowListener,al as useRowState,fl as useSetCellCallback,gc as useSetCheckpointCallback,ac as useSetParamValueCallback,oc as useSetParamValuesCallback,yl as useSetPartialRowCallback,Tl as useSetPartialValuesCallback,bl as useSetRowCallback,Il as useSetTableCallback,pl as useSetTablesCallback,Sl as useSetValueCallback,Cl as useSetValuesCallback,gi as useSliceIds,pi as useSliceIdsListener,wi as useSliceRowIds,Ii as useSliceRowIdsListener,tl as useSortedRowIds,Zl as useSortedRowIdsListener,$r as useSortedRowIdsListenerImpl,Sd as useSortingAndPagination,Yl as useStartTransactionListener,Hr as useStore,Or as useStoreIds,_r as useStoreOrStoreById,Zr as useStores,qc as useSynchronizer,Dc as useSynchronizerIds,Nc as useSynchronizerOrSynchronizerById,Ec as useSynchronizerStatus,Pc as useSynchronizerStatusListener,Gr as useTable,Yr as useTableCellIds,$l as useTableCellIdsListener,Wr as useTableIds,El as useTableIdsListener,Al as useTableListener,Qr as useTableState,Jr as useTables,Ml as useTablesListener,Ur as useTablesState,Ic as useUndoInformation,ml as useValue,hl as useValueIds,jl as useValueIdsListener,Ql as useValueListener,wl as useValueState,dl as useValues,Wl as useValuesListener,ul as useValuesState,Kl as useWillFinishTransactionListener};
|
|
1
|
+
import{addDatabaseChangeListener as e}from"expo-sqlite";import{existsSync as t,writeFileSync as s,watch as n}from"fs";import{writeFile as a,readFile as o}from"fs/promises";import{Map as r}from"yjs";import{DurableObject as l}from"cloudflare:workers";import{jsx as i,jsxs as c,Fragment as d}from"react/jsx-runtime";import u from"react";const h=e=>typeof e,g="tinybase",w="",m=",",p=".",b=h(w),I=h(!0),v=h(0),y=h(h),f="true",C="type",T="default",S="allowNull",R="utf8",k="Listener",D="Result",x="get",L="add",q="Has",M="Ids",N="Table",E=N+"s",P=N+M,A="Row",V=A+"Count",$=A+M,O="Sorted"+A+M,H="Cell",Z=H+M,_="Value",W=_+"s",F=_+M,B="Transaction",z="Partial",J="Finish",U="Status",j="Metric",G="Slice",Q="RemoteRowId",Y="Local",K="Linked",X="Checkpoint",ee="currentTarget",te="value",se="message",ne="error",ae="extra",oe="t",re="v",le=e=>w+e,ie=(e,t)=>e.startsWith(t),ce=(e,t)=>e.endsWith(t),de=(e,t)=>e?.match(t),ue=(e,t=w,s)=>e.split(t,s),he=(e,t,s)=>e.replace(t,s),ge=Promise,we=e=>(t,s,n)=>e(t)?n?.():s(t),me=globalThis,pe=me.window,be=(e,t,s)=>setInterval(e,1e3*t),Ie=clearInterval,ve=(e,t=0)=>setTimeout(e,1e3*t),ye=Math,fe=ye.max,Ce=ye.min,Te=ye.floor,Se=isFinite,Re=e=>null==e,ke=e=>void 0===e,De=e=>null===e,xe=e=>!0===e,Le=e=>!1===e,qe=we(Re),Me=we(ke),Ne=e=>e==b||e==I,Ee=e=>h(e)==b,Pe=e=>h(e)==y,Ae=e=>Array.isArray(e),Ve=(e,t,s)=>e.slice(t,s),$e=e=>e.length,Oe=()=>{},He=()=>{},Ze=e=>e,_e=e=>new ge(e),We=async e=>ge.all(e),Fe=me.structuredClone,Be=e=>{throw Error(e)},ze=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},Je=(e,t)=>e.includes(t),Ue=(e,t)=>e.every(t),je=(e,t)=>$e(e)===$e(t)&&Ue(e,(e,s)=>t[s]===e),Ge=(e,t)=>Ae(e)&&Ae(t)?je(e,t):e===t,Qe=(e,t)=>Ue(e,(s,n)=>0==n||t(e[n-1],s)<=0),Ye=(e,t)=>e.sort(t),Ke=(e,t)=>e.forEach(t),Xe=(e,t=w)=>e.join(t),et=(e,t)=>e.map(t),tt=e=>nt(e,(e,t)=>e+t,0),st=e=>0==$e(e),nt=(e,t,s)=>e.reduce(t,s),at=(e,t)=>e.filter(t),ot=(e,t)=>e.splice(0,t),rt=(e,...t)=>e.push(...t),lt=e=>e.pop(),it=(e,...t)=>e.unshift(...t),ct=e=>e.shift(),dt=(e,t,s)=>e.with(t,s),ut=e=>t=>nt(It(t),(t,s)=>t+e(s),0),ht=e=>e?.size??0,gt=ut(ht),wt=ut(gt),mt=ut(wt),pt=(e,t)=>e?.has(t)??!1,bt=e=>ke(e)||0==ht(e),It=e=>[...e?.values()??[]],vt=e=>e.clear(),yt=(e,t)=>e?.forEach(t),ft=(e,t)=>e?.delete(t),Ct=Object,Tt=e=>Ct.getPrototypeOf(e),St=Ct.isFrozen,Rt=Ct.entries,kt=e=>!Re(e)&&qe(Tt(e),e=>e==Ct.prototype||Re(Tt(e)),()=>!0),Dt=Ct.keys,xt=Ct.freeze,Lt=(e=[])=>Ct.fromEntries(e),qt=(...e)=>Ct.assign({},...e),Mt=(e,t)=>Me(e,e=>e[t]),Nt=(e,t)=>t in e,Et=(e,t)=>(delete e[t],e),Pt=(e,t)=>Ke(Rt(e),([e,s])=>t(s,e)),At=(e,t)=>et(Rt(e),([e,s])=>t(s,e)),Vt=(e,t)=>Lt(At(e,(e,s)=>[s,t(e,s)])),$t=e=>Ct.values(e),Ot=e=>$e(Dt(e)),Ht=e=>kt(e)&&0==Ot(e),Zt=(e,t,s=(e,t)=>e===t)=>{const n=Rt(e);return $e(n)===Ot(t)&&Ue(n,([e,n])=>kt(n)?!!kt(t[e])&&Zt(t[e],n):s(n,t[e]))},_t=(e,t,s)=>(Nt(e,t)||(e[t]=s()),e[t]),Wt=(e,t,s,n=0)=>Re(e)||!kt(e)||!n&&Ht(e)||St(e)?(s?.(),!1):(Pt(e,(s,n)=>{t(s,n)||Et(e,n)}),!!n||!Ht(e)),Ft=Map,Bt=e=>new Ft(e),zt=e=>[...e?.keys()??[]],Jt=(e,t)=>e?.get(t),Ut=(e,t)=>yt(e,(e,s)=>t(s,e)),jt=(e,t)=>et([...e?.entries()??[]],([e,s])=>t(s,e)),Gt=(e,t,s)=>ke(s)?(ft(e,t),e):e?.set(t,s),Qt=(e,t,s,n)=>(pt(e,t)?n?.(Jt(e,t)):Gt(e,t,s()),Jt(e,t)),Yt=(e,t,s,n=Gt)=>(Vt(t,(t,n)=>s(e,n,t)),Ut(e,s=>Nt(t,s)?0:n(e,s)),e),Kt=(e,t,s,n)=>{const a={};return yt(e,(e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;n?.(s)||(a[o]=s)}}),a},Xt=(e,t,s)=>Kt(e,e=>Kt(e,t,s),bt,Ht),es=(e,t,s)=>Kt(e,e=>Xt(e,t,s),bt,Ht),ts=(e,t)=>{const s=Bt();return yt(e,(e,n)=>s.set(n,t?.(e)??e)),s},ss=e=>ts(e,ts),ns=e=>ts(e,ss),as=(e,t,s,n,a=0)=>Me((s?Qt:Jt)(e,t[a],a>$e(t)-2?s:Bt),o=>{if(a>$e(t)-2)return n?.(o)&&Gt(e,t[a]),o;const r=as(o,t,s,n,a+1);return bt(o)&&Gt(e,t[a]),r}),os=e=>new Set(Ae(e)||ke(e)?e:[e]),rs=(e,t)=>e?.add(t),ls=(e,t,s,n,a)=>{const o=e.hasRow,r=Bt(),l=Bt(),i=Bt(),c=Bt(),d=Bt(),u=Bt(),h=(t,s,...n)=>{const a=Qt(u,t,os);return Ke(n,t=>rs(a,t)&&s&&e.callListener(t)),n},g=(t,...s)=>Me(Jt(u,t),n=>{Ke(st(s)?It(n):s,t=>{e.delListener(t),ft(n,t)}),bt(n)&&Gt(u,t)}),w=(e,s)=>{Gt(r,e,s),pt(l,e)||(Gt(l,e,t()),Gt(c,e,Bt()),Gt(d,e,Bt()),a(i))},m=e=>{Gt(r,e),Gt(l,e),Gt(c,e),Gt(d,e),g(e),a(i)};return[()=>e,()=>zt(r),e=>Ut(l,e),e=>pt(l,e),e=>Jt(r,e),e=>Jt(l,e),(e,t)=>Gt(l,e,t),w,(t,n,a,r,l)=>{w(t,n);const i=Bt(),u=Bt(),m=Jt(c,t),p=Jt(d,t),b=t=>{const a=s=>e.getCell(n,t,s),c=Jt(m,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||Ae(c)&&Ae(d)&&je(c,d)||Gt(i,t,[c,d]),!ke(l)){const e=Jt(p,t),s=o(n,t)?l(a,t):void 0;e!=s&&Gt(u,t,s)}},I=e=>{a(()=>{yt(i,([,e],t)=>Gt(m,t,e)),yt(u,(e,t)=>Gt(p,t,e))},i,u,m,p,e),vt(i),vt(u)};Ut(m,b),e.hasTable(n)&&Ke(e.getRowIds(n),e=>{pt(m,e)||b(e)}),I(!0),g(t),h(t,0,e.addRowListener(n,null,(e,t,s)=>b(s)),e.addTableListener(n,()=>I()))},m,e=>n(e,i),()=>Ut(u,m),h,g]},is=(e,t)=>Ee(e)?t=>t(e):e??(()=>t??w),cs=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},ds=/^\d+$/,us=()=>{const e=[];let t=0;return[s=>(s?ct(e):null)??w+t++,t=>{ds.test(t)&&$e(e)<1e3&&rt(e,t)}]},hs=e=>{let t;const[s,n]=us(),a=Bt();return[(n,o,r,l=[],i=()=>[])=>{t??=e();const c=s(1);return Gt(a,c,[n,o,r,l,i]),rs(as(o,r??[w],os),c),c},(e,s,...n)=>Ke(((e,t=[w])=>{const s=[],n=(e,a)=>a==$e(t)?rt(s,e):De(t[a])?yt(e,e=>n(e,a+1)):Ke([t[a],null],t=>n(Jt(e,t),a+1));return n(e,0),s})(e,s),e=>yt(e,e=>Jt(a,e)[0](t,...s??[],...n))),e=>Me(Jt(a,e),([,t,s])=>(as(t,s??[w],void 0,t=>(ft(t,e),bt(t)?1:0)),Gt(a,e),n(e),s)),e=>Me(Jt(a,e),([e,,s=[],n,a])=>{const o=(...r)=>{const l=$e(r);l==$e(s)?e(t,...r,...a(r)):De(s[l])?Ke(n[l]?.(...r)??[],e=>o(...r,e)):o(...r,s[l])};o()})]},gs=cs(e=>{let t,s,n,a=100,o=Bt(),r=Bt(),l=1;const i=Bt(),c=Bt(),[d,u,h]=hs(()=>E),g=Bt(),m=Bt(),p=[],b=[],I=(t,s)=>{l=0,e.transaction(()=>{const[n,a]=Jt(g,s);yt(n,(s,n)=>yt(s,(s,a)=>yt(s,(s,o)=>e.setOrDelCell(n,a,o,s[t],!0)))),yt(a,(s,n)=>e.setOrDelValue(n,s[t],!0))}),l=1},v=e=>{Gt(g,e),Gt(m,e),u(c,[e])},y=(e,t)=>Ke(ot(e,t??$e(e)),v),f=()=>y(p,$e(p)-a),C=()=>Me(t,()=>{rt(p,t),f(),y(b),t=void 0,n=1}),T=()=>{t=lt(p),n=1};let S,R;const k=(e=w)=>(ke(t)&&(t=w+s++,Gt(g,t,[o,r]),M(t,e),o=Bt(),r=Bt(),n=1),t),D=()=>{st(p)||(it(b,k()),I(0,t),t=lt(p),n=1)},x=()=>{st(b)||(rt(p,t),t=ct(b),I(1,t),n=1)},L=()=>{n&&(u(i),n=0)},q=e=>{const t=k(e);return L(),t},M=(e,t)=>(N(e)&&Jt(m,e)!==t&&(Gt(m,e,t),u(c,[e])),E),N=e=>pt(g,e),E={setSize:e=>(a=e,f(),E),addCheckpoint:q,setCheckpoint:M,getStore:()=>e,getCheckpointIds:()=>[[...p],t,[...b]],forEachCheckpoint:e=>Ut(m,e),hasCheckpoint:N,getCheckpoint:e=>Jt(m,e),goBackward:()=>(D(),L(),E),goForward:()=>(x(),L(),E),goTo:e=>{const s=Je(p,e)?D:Je(b,e)?x:void 0;for(;!ke(s)&&e!=t;)s();return L(),E},addCheckpointIdsListener:e=>d(e,i),addCheckpointListener:(e,t)=>d(t,c,[e]),delListener:e=>(h(e),E),clear:()=>(y(p),y(b),ke(t)||v(t),t=void 0,s=0,q(),E),clearForward:()=>(st(b)||(y(b),u(i)),E),destroy:()=>{e.delListener(S),e.delListener(R)},getListenerStats:()=>({checkpointIds:gt(i),checkpoint:gt(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,(e,t,s,n,a,r)=>{if(l){C();const e=Qt(o,t,Bt),l=Qt(e,s,Bt),i=Qt(l,n,()=>[r,void 0]);i[1]=a,i[0]===a&&bt(Gt(l,n))&&bt(Gt(e,s))&&bt(Gt(o,t))&&T(),L()}}),R=e.addValueListener(null,(e,t,s,n)=>{if(l){C();const e=Qt(r,t,()=>[n,void 0]);e[1]=s,e[0]===s&&bt(Gt(r,t))&&T(),L()}})}};return xt(E.clear())},e=>e._registerListeners()),ws=ue("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),ms=Bt(et(ws,(e,t)=>[e,t])),ps=e=>ws[63&e],bs=(e,t)=>Jt(ms,e[t])??0,Is=me.crypto?e=>me.crypto.getRandomValues(e):e=>et(e,()=>Te(256*ye.random())),vs=(e=16)=>nt(Is(new Uint8Array(e)),(e,t)=>e+ps(t),w),ys=JSON.stringify,fs=JSON.parse,Cs=e=>ys(e,(e,t)=>t instanceof Map?Ct.fromEntries([...t]):t),Ts=e=>ys(e,(e,t)=>ke(t)?"":t),Ss=e=>Rs(fs(e)),Rs=e=>""===e?void 0:Ae(e)?et(e,Rs):kt(e)?Vt(e,Rs):e,ks=new me.TextEncoder,Ds=e=>{let t=2166136261;return Ke(ks.encode(e),e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0},xs=(e,t)=>(e^t)>>>0,Ls=e=>nt(Rt(e),(e,[t,s])=>xs(e,qs(t,s)^qs(t,0)),0),qs=(e,t)=>Ds(e+":"+t),Ms=(e,t)=>Ds(Cs(e??null)+":"+t),Ns=Ms,Es=qs,Ps=Ls,As=qs,Vs=e=>nt(Rt(e),(e,[t,s])=>xs(e,qs(t,s)),0),$s=qs,Os=Vs,Hs=2**36,Zs=2**30,_s=2**24,Ws=2**18,Fs=4096,Bs=e=>{const t=Ds(e);return ps(t/_s)+ps(t/Ws)+ps(t/Fs)+ps(t/64)+ps(t)},zs=(e,t=Date.now)=>{let s=0,n=-1;const a=Me(e,Bs,()=>vs(5)),o=e=>{const a=s,[o,r]=ke(e)||""==e?[0,0]:l(e);s=fe(a,o,t()),n=s==a?s==o?fe(n,r):n:s==o?r:-1},r=(e,t,s)=>ps(e/Hs)+ps(e/Zs)+ps(e/_s)+ps(e/Ws)+ps(e/Fs)+ps(e/64)+ps(e)+ps(t/Ws)+ps(t/Fs)+ps(t/64)+ps(t)+(ke(s)?a:Bs(s)),l=e=>[bs(e,0)*Hs+bs(e,1)*Zs+bs(e,2)*_s+bs(e,3)*Ws+bs(e,4)*Fs+64*bs(e,5)+bs(e,6),bs(e,7)*Ws+bs(e,8)*Fs+64*bs(e,9)+bs(e,10),e.slice(11)];return[()=>(o(),r(s,++n)),o,r,l,()=>s,()=>n,()=>a]},Js=(e,t)=>(e??0)<(t??0)?-1:1,Us=cs(e=>{const t=Bt(),s=Bt(),[n,a,o]=hs(()=>v),[r,l,i,c,d,u,h,,g,m,p,b]=ls(e,Bt,e=>ke(e)?w:Ae(e)?et(e,le):le(e),n,a),I=(t,s,n)=>{const a=d(t);yt(n,(t,n)=>s(n,s=>yt(t,t=>s(t,s=>e.forEachCell(a,t,s)))))},v={setIndexDefinition:(e,n,o,r,l,i=Js)=>{const c=ke(l)?void 0:([e],[t])=>l(e,t);return g(e,n,(n,o,l,d,g,w)=>{let m=0;const p=os(),b=os(),I=u(e);if(yt(o,([e,t],s)=>{const n=os(e),a=os(t);yt(n,e=>ft(a,e)?ft(n,e):0),yt(n,e=>{rs(p,e),Me(Jt(I,e),t=>{ft(t,s),bt(t)&&(Gt(I,e),m=1)})}),yt(a,e=>{rs(p,e),pt(I,e)||(Gt(I,e,os()),m=1),rs(Jt(I,e),s),ke(r)||rs(b,e)})}),n(),bt(g)||(w?Ut(I,e=>rs(b,e)):Ut(l,e=>Me(Jt(d,e),e=>Ke(Ae(e)?e:[e],e=>rs(b,e)))),yt(b,e=>{const t=(t,s)=>i(Jt(g,t),Jt(g,s),e),s=[...Jt(I,e)];Qe(s,t)||(Gt(I,e,os(Ye(s,t))),rs(p,e))})),(m||w)&&!ke(c)){const t=[...I];Qe(t,c)||(h(e,Bt(Ye(t,c))),m=1)}m&&a(t,[e]),yt(p,t=>a(s,[e,t]))},is(o),Me(r,is)),v},delIndexDefinition:e=>(m(e),v),getStore:r,getIndexIds:l,forEachIndex:e=>i((t,s)=>e(t,e=>I(t,e,s))),forEachSlice:(e,t)=>I(e,t,u(e)),hasIndex:c,hasSlice:(e,t)=>pt(u(e),t),getTableId:d,getSliceIds:e=>zt(u(e)),getSliceRowIds:(e,t)=>It(Jt(u(e),t)),addIndexIdsListener:p,addSliceIdsListener:(e,s)=>n(s,t,[e]),addSliceRowIdsListener:(e,t,a)=>n(a,s,[e,t]),delListener:e=>(o(e),v),destroy:b,getListenerStats:()=>({sliceIds:gt(t),sliceRowIds:wt(s)})};return xt(v)}),js=e=>{if(De(e))return"null";const t=h(e);return Ne(t)||t==v&&Se(e)?t:void 0},Gs=e=>ke(e)||!ke(js(e)),Qs=(e,t,s,n)=>e==b?t:e==v?s:e==I?n:null,Ys=([e,t])=>Xs(e,t),Ks=([e,t,s])=>[e,t,s],Xs=(e,t)=>t?[e,t]:[e],en=(e,t,s)=>[e,t,s],tn=e=>e[2],sn=(e,t)=>t>e?(e?Ds(e):0)^Ds(t):0,nn=(e,t)=>((e??"")>(t??"")?e:t)??"",an=(e,t,s)=>{t>e[1]&&(e[1]=t),e[2]=s>>>0},on=(e=w)=>Xs(Lt(),e),rn=(e=w)=>[Bt(),e,0],ln=([e,t,s],n=Ks)=>[Kt(e,n),t,s],cn=([e,t],s=Ys)=>Xs(Kt(e,s),t),dn=(e,t)=>Ae(e)&&3==$e(e)&&Ee(e[1])&&h(e[2])==v&&Se(e[2])&&t(e[0]),un=e=>[e,e],hn=(e,t=gt)=>t(e[0])+t(e[1]),gn=()=>[Bt(),Bt()],wn=e=>[...e],mn=([e,t])=>e===t,pn=(e,t,s)=>Gt(e,t,Jt(e,t)==-s?void 0:s),bn=([e,t],[s,n])=>Zt(e,s)&&Zt(t,n),In=()=>{let e,t,s=!1,n=!1,a=0,o=[],r=[],l=0;const i=Bt(),c=Bt(),d=Bt(),u=Bt(),h=Bt(),g=Bt(),w=Bt(),m=Bt(),p=Bt(),b=Bt(),I=Bt(),y=Bt(),f=Bt(),R=Bt(),D=os(),x=Bt(),M=Bt(),O=Bt(),B=Bt(),z=gn(),J=gn(),U=gn(),j=gn(),G=gn(),Q=gn(),Y=gn(),K=gn(),X=gn(),ee=gn(),te=gn(),se=gn(),ne=gn(),ae=gn(),oe=gn(),re=gn(),ie=gn(),ce=gn(),de=gn(),ue=gn(),he=gn(),ge=gn(),we=Bt(),me=gn(),[pe,be,Ie,ve]=hs(()=>Us),ye=e=>{const t=l;l=1;const s=e();return l=t,s},fe=(e,t,s,n=Object.is)=>Me(t(),t=>e===t||n(e,t)?s(t):ye(()=>s(t))),Ce=e=>{if(!Wt(e,(e,t)=>Je([C,T,S],t)))return!1;const t=e[C];if(!Ne(t)&&t!=v)return!1;const s=e[T];return!(De(s)&&!e[S]||(De(s)||js(s)==t||Et(e,T),0))},Te=Ae,Se=(t,s)=>(!e||pt(I,s)||Rt(s))&&Wt(t,(e,t)=>Re(s,t,e),()=>Rt(s)),Re=(e,t,s,n)=>Wt(n?s:Ee(s,e,t),(n,a)=>Me(xe(e,t,a,n),e=>(s[a]=e,!0),()=>!1),()=>Rt(e,t)),xe=(t,s,n,a)=>e?Me(Jt(Jt(I,t),n),e=>De(a)?e[S]?a:Rt(t,s,n,a,e[T]):js(a)==e[C]?a:Rt(t,s,n,a,e[T]),()=>Rt(t,s,n,a)):ke(js(a))?Rt(t,s,n,a):a,Le=(e,t)=>Wt(t?e:$e(e),(t,s)=>Me(qe(s,t),t=>(e[s]=t,!0),()=>!1),()=>Dt()),qe=(e,s)=>t?Me(Jt(f,e),t=>De(s)?t[S]?s:Dt(e,s,t[T]):js(s)==t[C]?s:Dt(e,s,t[T]),()=>Dt(e,s)):ke(js(s))?Dt(e,s):s,Ee=(e,t,s)=>(Me(Jt(y,t),([n,a])=>{yt(n,(t,s)=>{Nt(e,s)||(e[s]=t)}),yt(a,n=>{Nt(e,n)||Rt(t,s,n)})}),e),$e=e=>(t&&(yt(R,(t,s)=>{Nt(e,s)||(e[s]=t)}),yt(D,t=>{Nt(e,t)||Dt(t)})),e),Oe=e=>Yt(I,e,(e,t,s)=>{const n=Bt(),a=os();Yt(Qt(I,t,Bt),s,(e,t,s)=>{Gt(e,t,s),Me(s[T],e=>Gt(n,t,e),()=>rs(a,t))}),Gt(y,t,[n,a])},(e,t)=>{Gt(I,t),Gt(y,t)}),He=e=>Yt(f,e,(e,t,s)=>{Gt(f,t,s),Me(s[T],e=>Gt(R,t,e),()=>rs(D,t))},(e,t)=>{Gt(f,t),Gt(R,t),ft(D,t)}),Ze=e=>Ht(e)?As():xs(e),_e=(e,t,s,n,a)=>ke(n)?Os(e,t,s,!0,a):Ls(e,t,s,n,a),We=e=>Ht(e)?Hs():qs(e),Be=(e,t,s)=>ke(t)?Zs(e,s):Ms(e,t,s),Ue=(e,t)=>fe(e,()=>t?e:Me(o[1],t=>ye(()=>t(Fe(e))),()=>e),e=>Yt(O,e,(e,t,s)=>Ge(t,s),(e,t)=>ot(t)),Zt),Ge=(e,t,s)=>fe(t,()=>s?t:Me(o[2],s=>ye(()=>s(e,Fe(t))),()=>t),t=>Yt(Qt(O,e,()=>(dt(e,1),Gt(x,e,us()),Gt(M,e,Bt()),Bt())),t,(t,s,n)=>Qe(e,t,s,n),(t,s)=>lt(e,t,s)),Zt),Qe=(e,t,s,n,a)=>fe(n,()=>a?n:Me(o[3],t=>ye(()=>t(e,s,Fe(n))),()=>n),n=>Yt(Qt(t,s,()=>(ut(e,s,1),Bt())),n,(t,n,a)=>Xe(e,s,t,n,a),(n,o)=>it(e,t,s,n,o,a)),Zt),Xe=(e,t,s,n,a,r)=>fe(a,()=>Me(r?void 0:o[4],s=>ye(()=>s(e,t,n,a)),()=>a),a=>{pt(s,n)||It(e,t,n,1);const o=Jt(s,n);a!==o&&(Ct(e,t,n,o,a),Gt(s,n,a))}),tt=(e,t,s,n,a,o)=>Me(Jt(t,s),t=>Xe(e,s,t,n,a,o),()=>{const r=Bt();Gt(t,s,r),ut(e,s,1),Vt(Ee({[n]:a},e,s),(t,n)=>Xe(e,s,r,n,t,o))}),st=(e,t)=>fe(e,()=>t?e:Me(o[5],t=>ye(()=>t(Fe(e))),()=>e),e=>Yt(B,e,(e,t,s)=>nt(t,s),(e,t)=>ct(t)),Zt),nt=(e,t,s)=>fe(t,()=>Me(s?void 0:o[6],s=>ye(()=>s(e,t)),()=>t),t=>{pt(B,e)||Tt(e,1);const s=Jt(B,e);t!==s&&(St(e,s,t),Gt(B,e,t))}),at=e=>Qt(O,e,()=>(dt(e,1),Gt(x,e,us()),Gt(M,e,Bt()),Bt())),ot=e=>ye(()=>o[8]?.(e))??1?Ge(e,{},!0):Jt(O,e),lt=(e,t,s)=>{if(ye(()=>o[9]?.(e,s))??1){const[,n]=Jt(x,e);n(s),Qe(e,t,s,{},!0)}},it=(e,t,s,n,a,r,l)=>{const i=Jt(Jt(y,e)?.[0],a);if(!ke(i)&&!r)return Xe(e,s,n,a,i);if(l||(ye(()=>o[10]?.(e,s,a))??1)){const o=t=>{Ct(e,s,t,Jt(n,t)),It(e,s,t,-1),Gt(n,t)};ke(i)?o(a):Ut(n,o),bt(n)&&(ut(e,s,-1),bt(Gt(t,s))&&(dt(e,-1),Gt(O,e),Gt(x,e),Gt(M,e)))}},ct=(e,t)=>{const s=Jt(R,e);if(!ke(s))return nt(e,s);(t||(ye(()=>o[12]?.(e))??1))&&(St(e,Jt(B,e)),Tt(e,-1),Gt(B,e))},dt=(e,t)=>pn(i,e,t),ut=(e,t,s)=>pn(Qt(u,e,Bt),t,s)&&Gt(d,e,Qt(d,e,()=>0)+s),It=(e,t,s,n)=>{const a=Jt(M,e),o=Jt(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&pn(Qt(c,e,Bt),s,n),Gt(a,s,o!=-n?o+n:void 0),pn(Qt(Qt(h,e,Bt),t,Bt),s,n)},Ct=(e,t,s,n,a)=>{Qt(Qt(Qt(g,e,Bt),t,Bt),s,()=>[n,0])[1]=a,r[3]?.(e,t,s,a,l)},Tt=(e,t)=>pn(w,e,t),St=(e,t,s)=>{Qt(m,e,()=>[t,0])[1]=s,r[4]?.(e,s,l)},Rt=(e,t,s,n,a)=>(rt(Qt(Qt(Qt(p,e,Bt),t,Bt),s,()=>[]),n),a),Dt=(e,t,s)=>(rt(Qt(b,e,()=>[]),t),s),Lt=(e,t,s)=>Me(Jt(Jt(Jt(g,e),t),s),([e,t])=>[!0,e,t],()=>[!1,...un(ms(e,t,s))]),qt=e=>Me(Jt(m,e),([e,t])=>[!0,e,t],()=>[!1,...un(Is(e))]),Mt=e=>bt(p)||bt(re[e])?0:yt(e?ns(p):p,(t,s)=>yt(t,(t,n)=>yt(t,(t,a)=>be(re[e],[s,n,a],t)))),Pt=e=>bt(b)||bt(ie[e])?0:yt(e?ts(b):b,(t,s)=>be(ie[e],[s],t)),At=(e,t,s,n)=>{if(!bt(e))return be(t,n,()=>Kt(e)),Ut(e,(e,t)=>be(s,[...n??[],e],1==t)),1},$t=e=>{const t=!bt(z[e]),n=!bt(ee[e]),a=!(bt(ne[e])&&bt(ae[e])&&bt(X[e])&&bt(te[e])&&bt(Q[e])&&bt(Y[e])&&bt(K[e])&&!n&&bt(U[e])&&bt(j[e])),o=!(bt(oe[e])&&bt(se[e])&&bt(G[e])&&bt(J[e]));if(t||a||o){const r=e?[ts(i),ss(c),ts(d),ss(u),ns(h),ts(g,e=>ts(e,e=>ts(e,wn)))]:[i,c,d,u,h,g];if(t){const t=vs();t!=s&&be(z[e],void 0,t)}if(a){At(r[0],U[e],j[e]),yt(r[1],(t,s)=>At(t,Q[e],Y[e],[s])),yt(r[2],(t,s)=>{0!=t&&be(K[e],[s],cs(s))});const t=os();yt(r[3],(s,a)=>{At(s,X[e],te[e],[a])&&n&&(be(ee[e],[a,null]),rs(t,a))}),n&&yt(r[5],(s,n)=>{if(!pt(t,n)){const t=os();yt(s,e=>yt(e,([s,n],a)=>n!==s?rs(t,a):ft(e,a))),yt(t,t=>be(ee[e],[n,t]))}}),yt(r[4],(t,s)=>yt(t,(t,n)=>At(t,ne[e],ae[e],[s,n])))}if(o){let t;yt(r[5],(s,n)=>{let a;yt(s,(s,o)=>{let r;yt(s,([s,l],i)=>{l!==s&&(be(oe[e],[n,o,i],l,s,Lt),t=a=r=1)}),r&&be(se[e],[n,o],Lt)}),a&&be(G[e],[n],Lt)}),t&&be(J[e],void 0,Lt)}}},Ot=e=>{const t=!bt(ce[e]),s=!bt(ue[e])||!bt(he[e]),a=!bt(ge[e])||!bt(de[e]);if(t||s||a){const o=e?[ts(w),ts(m,wn)]:[w,m];if(t){const t=ks();t!=n&&be(ce[e],void 0,t)}if(s&&At(o[0],ue[e],he[e]),a){let t;yt(o[1],([s,n],a)=>{n!==s&&(be(ge[e],[a],n,s,qt),t=1)}),t&&be(de[e],void 0,qt)}}},_t=(e,...t)=>(Fs(()=>e(...et(t,le))),Us),Ft=(e,t,s,n,a)=>{let o=gs(e,t,...s);return pe(()=>{const a=gs(e,t,...s);je(a,o)||(o=a,n(Us,e,t,...s,o))},ee[a?1:0],[e,t],[ls])},as=()=>es(O),ls=()=>zt(O),is=e=>zt(Jt(M,le(e))),cs=e=>ht(Jt(O,le(e))),ds=e=>zt(Jt(O,le(e))),gs=(e,t,s,n=0,a)=>kt(e)?gs(e.tableId,e.cellId,e.descending,e.offset,e.limit):et(Ve(Ye(jt(Jt(O,le(e)),(e,s)=>[ke(t)?s:Jt(e,le(t)),s]),([e],[t])=>Js(e,t)*(s?-1:1)),n,ke(a)?a:n+a),([,e])=>e),ws=(e,t)=>zt(Jt(Jt(O,le(e)),le(t))),ms=(e,t,s)=>Jt(Jt(Jt(O,le(e)),le(t)),le(s)),ps=()=>Kt(B),bs=()=>zt(B),Is=e=>Jt(B,le(e)),vs=()=>!bt(O),ys=e=>pt(O,le(e)),Ts=(e,t)=>pt(Jt(M,le(e)),le(t)),Ss=(e,t)=>pt(Jt(O,le(e)),le(t)),Rs=(e,t,s)=>pt(Jt(Jt(O,le(e)),le(t)),le(s)),ks=()=>!bt(B),Ds=e=>pt(B,le(e)),xs=e=>_t(()=>(e=>Wt(e,Se,Rt))(e)?Ue(e):0),Ls=(e,t,s,n,a)=>_t((e,t,s)=>Me(xe(e,t,s,Pe(n)?n(ms(e,t,s)):n),n=>tt(e,at(e),t,s,n,a)),e,t,s),qs=e=>_t(()=>Le(e)?st(e):0),Ms=(e,t,s)=>_t(e=>Me(qe(e,Pe(t)?t(Is(e)):t),t=>nt(e,t,s)),e),Ns=e=>(ze(()=>Ze(fs(e))),Us),Es=t=>_t(()=>{if((e=Wt(t,e=>Wt(e,Ce)))&&(Oe(t),!bt(O))){const e=as();As(),xs(e)}}),Ps=e=>_t(()=>{if(t=(e=>Wt(e,Ce))(e)){const s=ps();Ws(),Hs(),t=!0,He(e),qs(s)}}),As=()=>_t(()=>ye(()=>o[7]?.())??1?Ue({},!0):0),Vs=e=>_t(e=>pt(O,e)?ot(e):0,e),$s=(e,t)=>_t((e,t)=>Me(Jt(O,e),s=>pt(s,t)?lt(e,s,t):0),e,t),Os=(e,t,s,n,a)=>_t((e,t,s)=>Me(Jt(O,e),o=>Me(Jt(o,t),r=>pt(r,s)?it(e,o,t,r,s,n,a):0)),e,t,s),Hs=()=>_t(()=>ye(()=>o[11]?.())??1?st({},!0):0),Zs=(e,t)=>_t(e=>pt(B,e)?ct(e,t):0,e),_s=()=>_t(()=>{Oe({}),e=!1}),Ws=()=>_t(()=>{He({}),t=!1}),Fs=(e,t)=>{if(-1!=a){Bs();const s=e();return zs(t),s}},Bs=()=>(-1!=a&&a++,1==a&&(r[0]?.(),be(we)),Us),zs=e=>(a>0&&(a--,0==a&&(a=1,ye(()=>{Mt(1),bt(g)||$t(1),Pt(1),bt(m)||Ot(1)}),e?.(Us)&&(yt(g,(e,t)=>yt(e,(e,s)=>yt(e,([e],n)=>_e(t,s,n,e,!0)))),vt(g),yt(m,([e],t)=>Be(t,e,!0)),vt(m)),be(me[0],void 0),a=-1,Mt(0),bt(g)||$t(0),Pt(0),bt(m)||Ot(0),r[1]?.(),be(me[1],void 0),r[2]?.(),a=0,s=vs(),n=ks(),Ke([i,c,d,u,h,g,p,w,m,b],vt))),Us),Us={getContent:()=>[as(),ps()],getTables:as,getTableIds:ls,getTable:e=>Xt(Jt(O,le(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:gs,getRow:(e,t)=>Kt(Jt(Jt(O,le(e)),le(t))),getCellIds:ws,getCell:ms,getValues:ps,getValueIds:bs,getValue:Is,hasTables:vs,hasTable:ys,hasTableCell:Ts,hasRow:Ss,hasCell:Rs,hasValues:ks,hasValue:Ds,getTablesJson:()=>Cs(O),getValuesJson:()=>Cs(B),getJson:()=>Cs([O,B]),getTablesSchemaJson:()=>Cs(I),getValuesSchemaJson:()=>Cs(f),getSchemaJson:()=>Cs([I,f]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>_t(()=>{const t=Pe(e)?e():e;Te(t)&&(e=>{fe(e,()=>Me(o[0],t=>ye(()=>t(Fe(e))),()=>e),([e,t])=>{(Ht(e)?As:xs)(e),(Ht(t)?Hs:qs)(t)},bn)})(t)}),setTables:xs,setTable:(e,t)=>_t(e=>Se(t,e)?Ge(e,t):0,e),setRow:(e,t,s)=>_t((e,t)=>Re(e,t,s)?Qe(e,at(e),t,s):0,e,t),addRow:(e,t,s=!0)=>Fs(()=>{let n;return Re(e,n,t)&&(e=le(e),Qe(e,at(e),n=((e,t)=>{const[s]=Jt(x,e);let n;do{n=s(t)}while(pt(Jt(O,e),n));return n})(e,s?1:0),t)),n}),setPartialRow:(e,t,s)=>_t((e,t)=>{if(Re(e,t,s,1)){const n=at(e);Vt(s,(s,a)=>tt(e,n,t,a,s))}},e,t),setCell:Ls,setValues:qs,setPartialValues:e=>_t(()=>Le(e,1)?Vt(e,(e,t)=>nt(t,e)):0),setValue:Ms,applyChanges:e=>_t(()=>fe(e,()=>Me(o[13],t=>ye(()=>t(Fe(e))),()=>e),e=>{Vt(e[0],(e,t)=>ke(e)?Vs(t):Vt(e,(e,s)=>ke(e)?$s(t,s):Vt(e,(e,n)=>_e(t,s,n,e)))),Vt(e[1],(e,t)=>Be(t,e))},bn)),setTablesJson:Ns,setValuesJson:e=>(ze(()=>We(fs(e))),Us),setJson:e=>_t(()=>ze(()=>{const[t,s]=fs(e);Ze(t),We(s)},()=>Ns(e))),setTablesSchema:Es,setValuesSchema:Ps,setSchema:(e,t)=>_t(()=>{Es(e),Ps(t)}),delTables:As,delTable:Vs,delRow:$s,delCell:Os,delValues:Hs,delValue:Zs,delTablesSchema:_s,delValuesSchema:Ws,delSchema:()=>_t(()=>{_s(),Ws()}),transaction:Fs,startTransaction:Bs,getTransactionChanges:()=>[Kt(g,(e,t)=>-1===Jt(i,t)?void 0:Kt(e,(e,s)=>-1===Jt(Jt(u,t),s)?void 0:Kt(e,([,e])=>e,e=>mn(e)),bt,Ht),bt,Ht),Kt(m,([,e])=>e,e=>mn(e)),1],getTransactionLog:()=>[!bt(g),!bt(m),es(g,wn,mn),es(p),Kt(m,wn,mn),Kt(b),Kt(i),Xt(u),es(h),Kt(w)],finishTransaction:zs,forEachTable:e=>yt(O,(t,s)=>e(s,e=>yt(t,(t,s)=>e(s,e=>Ut(t,e))))),forEachTableCell:(e,t)=>Ut(Jt(M,le(e)),t),forEachRow:(e,t)=>yt(Jt(O,le(e)),(e,s)=>t(s,t=>Ut(e,t))),forEachCell:(e,t,s)=>Ut(Jt(Jt(O,le(e)),le(t)),s),forEachValue:e=>Ut(B,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>kt(e)?Ft(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):Ft(e,t,[s,n,a],o,r),addStartTransactionListener:e=>pe(e,we),addWillFinishTransactionListener:e=>pe(e,me[0]),addDidFinishTransactionListener:e=>pe(e,me[1]),callListener:e=>(ve(e),Us),delListener:e=>(Ie(e),Us),getListenerStats:()=>({hasTables:hn(z),tables:hn(J),tableIds:hn(U),hasTable:hn(j),table:hn(G),tableCellIds:hn(Q),hasTableCell:hn(Y,wt),rowCount:hn(K),rowIds:hn(X),sortedRowIds:hn(ee),hasRow:hn(te,wt),row:hn(se,wt),cellIds:hn(ne,wt),hasCell:hn(ae,mt),cell:hn(oe,mt),invalidCell:hn(re,mt),hasValues:hn(ce),values:hn(de),valueIds:hn(ue),hasValue:hn(he),value:hn(ge),invalidValue:hn(ie),transaction:gt(we)+hn(me)}),isMergeable:()=>!1,createStore:In,addListener:pe,callListeners:be,setInternalListeners:(e,t,s,n,a)=>r=[e,t,s,n,a],setMiddleware:(e,t,s,n,a,r,l,i,c,d,u,h,g,w)=>o=[e,t,s,n,a,r,l,i,c,d,u,h,g,w],setOrDelCell:_e,setOrDelValue:Be};return Vt({[q+E]:[0,z,[],()=>[vs()]],[E]:[0,J],[P]:[0,U],[q+N]:[1,j,[ls],e=>[ys(...e)]],[N]:[1,G,[ls]],[N+Z]:[1,Q,[ls]],[q+N+H]:[2,Y,[ls,is],e=>[Ts(...e)]],[V]:[1,K,[ls]],[$]:[1,X,[ls]],[q+A]:[2,te,[ls,ds],e=>[Ss(...e)]],[A]:[2,se,[ls,ds]],[Z]:[2,ne,[ls,ds]],[q+H]:[3,ae,[ls,ds,ws],e=>[Rs(...e)]],[H]:[3,oe,[ls,ds,ws],e=>un(ms(...e))],InvalidCell:[3,re],[q+W]:[0,ce,[],()=>[ks()]],[W]:[0,de],[F]:[0,ue],[q+_]:[1,he,[bs],e=>[Ds(...e)]],[_]:[1,ge,[bs],e=>un(Is(e[0]))],InvalidValue:[1,ie]},([e,t,s,n],a)=>{Us[L+a+k]=(...a)=>pe(a[e],t[a[e+1]?1:0],e>0?Ve(a,0,e):void 0,s,n)}),xt(Us)},vn={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},yn=(e=w)=>[rn(e),rn(e)],fn=(e,t)=>{let s=1,n=yn(),a=0,o=0;const r=Bt(),l=os(),[i,c]=zs(e,t),d=In(),u=e=>{const t=s;return s=0,e(),s=t,v},h=(e,t=0)=>{const s={},a={},[[o,r=w,l=0],i]=e,[d,u]=n,[h,m,p]=d;let b=t?l:p,I=r;Pt(o,([e,n=w,a=0],o)=>{const r=Qt(h,o,rn),[l,i,c]=r;let d=t?a:c,u=n;Pt(e,(e,n)=>{const[a,r,i]=g(e,Qt(l,n,rn),_t(_t(s,o,Lt),n,Lt),t);d^=t?0:xs(r?qs(n,r):0,qs(n,i)),u=nn(u,a)}),d^=t?0:sn(i,n),an(r,n,d),b^=t?0:xs(c?qs(o,c):0,qs(o,r[2])),I=nn(I,u)}),b^=t?0:sn(m,r),an(d,r,b);const[v]=g(i,u,a,t);return c(nn(I,v)),[s,a,1]},g=(e,t,s,n)=>{const[a,o=w,r=0]=e,[l,i,c]=t;let d=o,u=n?r:c;return Pt(a,([e,t=w,a=0],o)=>{const r=Qt(l,o,()=>[void 0,w,0]),[,i,c]=r;(!i||t>i)&&(an(r,t,n?a:Ms(e,t)),r[0]=e,s[o]=e,u^=n?0:xs(qs(o,c),qs(o,r[2])),d=nn(d,t))}),u^=n?0:sn(i,o),an(t,o,u),[d,c,t[2]]},m=He,p=He,b=()=>[ln(n[0],e=>ln(e,e=>ln(e))),ln(n[1])],I=e=>u(()=>d.applyChanges(h(e))),v={getMergeableContent:b,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Kt(n[0][0],tn),getMergeableTableDiff:e=>{const t=on(n[0][1]),s={};return Ut(n[0][0],(n,[a,o,r])=>Nt(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=cn([a,o],e=>cn(e))),[t,s]},getMergeableRowHashes:e=>{const t={};return Pt(e,(e,s)=>Me(Jt(n[0][0],s),([n,,a])=>a!=e?Ut(n,(e,[,,n])=>_t(t,s,Lt)[e]=n):0)),t},getMergeableRowDiff:e=>{const t=on(n[0][1]),s={};return Pt(e,(e,a)=>Ut(Jt(n[0][0],a)?.[0],(n,[o,r,l])=>Nt(e,n)?l!==e[n]?_t(s,a,Lt)[n]=l:0:_t(t[0],a,on)[0][n]=cn([o,r]))),[t,s]},getMergeableCellHashes:e=>{const t={};return Pt(e,(e,s)=>Me(Jt(n[0][0],s),([n])=>Pt(e,(e,a)=>Me(Jt(n,a),([n,,o])=>o!==e?Ut(n,(e,[,,n])=>_t(_t(t,s,Lt),a,Lt)[e]=n):0)))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return Pt(e,(e,s)=>Pt(e,(e,n)=>Me(Jt(t,s),([t,o])=>Me(Jt(t,n),([t,r])=>Ut(t,(t,[l,i,c])=>c!==e[t]?_t(_t(a,s,()=>on(o))[0],n,()=>on(r))[0][t]=[l,i]:0))))),Xs(a,s)},getMergeableValueHashes:()=>Kt(n[1][0],tn),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=Kt(t,Ys,([,,t],s)=>t==e?.[s]);return Xs(a,s)},setMergeableContent:e=>u(()=>(e=>Ae(e)&&2==$e(e)&&dn(e[0],e=>Wt(e,e=>dn(e,e=>Wt(e,e=>dn(e,e=>Wt(e,e=>dn(e,Gs),void 0,1)),void 0,1)),void 0,1))&&dn(e[1],e=>Wt(e,e=>dn(e,Gs),void 0,1)))(e)?d.transaction(()=>{d.delTables().delValues(),n=yn(),d.applyChanges(h(e,1))}):0),setDefaultContent:e=>(d.transaction(()=>{a=1,d.setContent(e),a=0}),v),getTransactionMergeableChanges:(e=!1)=>{const[[t,s,a],[o,i,c]]=n,d=e?en:Xs,u={};yt(r,(e,s)=>Me(Jt(t,s),([t,n,a])=>{const o={};yt(e,(e,s)=>Me(Jt(t,s),([t,n,a])=>{const r={};yt(e,e=>{Me(Jt(t,e),([t,s,n])=>r[e]=d(t,s,n))}),o[s]=d(r,n,a)})),u[s]=d(o,n,a)}));const h={};return yt(l,e=>Me(Jt(o,e),([t,s,n])=>h[e]=d(t,s,n))),[d(u,s,a),d(h,i,c),1]},applyMergeableChanges:I,merge:e=>{const t=b(),s=e.getMergeableContent();return e.applyMergeableChanges(t),I(s)},hadMutated:()=>{const e=o;return o=0,e}};return d.setInternalListeners(m,p,()=>{vt(r),vt(l)},(e,t,n,l,c)=>{rs(Qt(Qt(r,e,Bt),t,os),n),(s||c)&&(c&&(o=1),h([[{[e]:[{[t]:[{[n]:[l,a?w:i()]}]}]}],[{}],1]))},(e,t,n)=>{rs(l,e),(s||n)&&(n&&(o=1),h([[{}],[{[e]:[t,a?w:i()]}],1]))}),Vt(d,(e,t)=>v[t]=ie(t,"set")||ie(t,"del")||ie(t,"apply")||ce(t,B)||t=="call"+k||"use"==t?(...t)=>(e(...t),v):ie(t,L)&&ce(t,k)?(...s)=>{const n=vn[Ve(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(v,...t),e(...s)}:"isMergeable"==t?()=>!0:e),xt(v)},Cn=Bt([["avg",[(e,t)=>tt(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=>fe(...e),(e,t)=>fe(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:fe(t,e)]],["min",[e=>Ce(...e),(e,t)=>Ce(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:Ce(t,e)]],["sum",[e=>tt(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Tn=(e,t,s,n,a,o=!1)=>{if(bt(s))return;const[r,l,i,c]=a;return o||=ke(e),yt(n,([s,n])=>{o||(e=ke(s)?l?.(e,n,t++):ke(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=ke(e))}),o?r(It(s),ht(s)):e},Sn=cs(e=>{const t=Bt(),[s,n,a]=hs(()=>b),[o,r,l,i,c,d,u,,h,g,m,p]=ls(e,Oe,e=>isNaN(e)||ke(e)||xe(e)||Le(e)||e===w?void 0:1*e,s,n),b={setMetricDefinition:(e,s,a,o,r,l,i)=>{const c=Pe(a)?[a,r,l,i]:Jt(Cn,a)??Jt(Cn,"sum");return h(e,s,(s,a,o,r,l,i)=>{const h=d(e),g=ht(r);i||=ke(h),s();let w=Tn(h,g,r,a,c,i);Se(w)||(w=void 0),w!=h&&(u(e,w),n(t,[e],w,h))},is(o,1)),b},delMetricDefinition:e=>(g(e),b),getStore:o,getMetricIds:r,forEachMetric:l,hasMetric:i,getTableId:c,getMetric:d,addMetricIdsListener:m,addMetricListener:(e,n)=>s(n,t,[e]),delListener:e=>(a(e),b),destroy:p,getListenerStats:()=>({metric:gt(t)})};return xt(b)}),Rn=(e,t,...s)=>nt(e,(e,t)=>ke(e)?e:t(...s,e),t),kn=(e,...t)=>Ue(e,e=>e(...t)),Dn=cs(e=>{const t=e=>t=>(rt(e,t),q),s=[],n=[],a=[],o=[],r=[],l=[],i=[],c=[],d=[],u=[],h=[],g=[],w=[],m=[],p=t(s),b=t(n),I=t(a),v=t(o),y=t(r),f=t(l),C=t(i),T=t(c),S=t(d),R=t(u),k=t(h),D=t(g),x=t(w),L=t(m),q=xt({getStore:()=>e,addWillSetContentCallback:p,addWillSetTablesCallback:b,addWillSetTableCallback:I,addWillSetRowCallback:v,addWillSetCellCallback:y,addWillSetValuesCallback:f,addWillSetValueCallback:C,addWillDelTablesCallback:T,addWillDelTableCallback:S,addWillDelRowCallback:R,addWillDelCellCallback:k,addWillDelValuesCallback:D,addWillDelValueCallback:x,addWillApplyChangesCallback:L,destroy:()=>{}});return e.setMiddleware(e=>Rn(s,e),e=>Rn(n,e),(e,t)=>Rn(a,t,e),(e,t,s)=>Rn(o,s,e,t),(e,t,s,n)=>Rn(r,n,e,t,s),e=>Rn(l,e),(e,t)=>Rn(i,t,e),()=>kn(c),e=>kn(d,e),(e,t)=>kn(u,e,t),(e,t,s)=>kn(h,e,t,s),()=>kn(g),e=>kn(w,e),e=>Rn(m,e)),q}),xn={Idle:0,Loading:1,Saving:2},Ln={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},qn=Bt(),Mn=Bt(),Nn=(e,t,s,n,a,o,r,l={},i=0,c=[])=>{let d,u,h,g=0,w=0,m=0;Qt(qn,c,()=>0),Qt(Mn,c,()=>[]);const p=Bt(),[b,I,v,y,f]=((e=1,t,s)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!s),([[e],[t]])=>!Ht(e)||!Ht(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!Ht(e)||!Ht(t),t.setContent]:Be("Store type not supported by this Persister"))(r,e,i),[C,T,S]=hs(()=>$),R=e=>{e!=g&&(g=e,T(p,void 0,g))},k=t=>{(b&&Ae(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async()=>{P()&&e.hadMutated?.()&&await M()},x=async e=>(2!=g&&(R(1),w++,await V(async()=>{await ze(async()=>{const s=await t();Ae(s)?k(s):e?f(e):Be("Content is not an array: "+s)},()=>{e&&f(e)}),R(0),await D()})),$),L=async e=>(q(),await x(e),await ze(async()=>u=await n(async(e,t)=>{t||e?2!=g&&(R(1),w++,k(t??e),R(0),await D()):await x()}),o),$),q=async()=>(u&&(await ze(()=>a(u),o),u=void 0),$),M=async e=>(1!=g&&(R(2),m++,await V(async()=>{await ze(()=>s(I,e),o),R(0)})),$),N=async()=>(E(),await M(),h=e.addDidFinishTransactionListener(()=>{const e=v();y(e)&&M(e)}),$),E=async()=>(h&&(e.delListener(h),h=void 0),$),P=()=>!ke(h),A=async(e=!1)=>{const[t,s]=e?[E,q]:[q,E];return await t(),await s(),$},V=async(...e)=>(rt(Jt(Mn,c),...e),await(async()=>{if(!Jt(qn,c)){for(Gt(qn,c,1);!ke(d=ct(Jt(Mn,c)));)await ze(d,o);Gt(qn,c,0)}})(),$),$={load:x,startAutoLoad:L,stopAutoLoad:q,isAutoLoading:()=>!ke(u),save:M,startAutoSave:N,stopAutoSave:E,isAutoSaving:P,startAutoPersisting:async(e,t=!1)=>{const[s,n]=t?[N,L]:[L,N];return await s(e),await n(e),$},stopAutoPersisting:A,getStatus:()=>g,addStatusListener:e=>C(e,p),delListener:t=>(S(t),e),schedule:V,getStore:()=>e,destroy:()=>(ot(Jt(Mn,c)),A()),getStats:()=>({loads:w,saves:m}),...l};return xt($)},En="_",Pn="_id",An="SELECT",Vn="WHERE",$n="TABLE",On="INSERT",Hn="DELETE",Zn="UPDATE",_n="ALTER "+$n,Wn="FROM",Fn=Hn+" "+Wn,Bn=An+"*"+Wn,zn="pragma_",Jn="data_version",Un="schema_version",jn="pragma_table_",Gn="CREATE ",Qn=Gn+$n,Yn="OR REPLACE ",Kn="FUNCTION",Xn="$tableName",ea=(e,t)=>t?async(s,n)=>(t(s,n),await e(s,n)):e,ta=e=>Xe(et(ue(e,p),e=>`"${he(e,/"/g,'""')}"`),p),sa=(...e)=>ta(Xe(e,"_")),na=(...e)=>Xe(et(e,ta),m),aa=(e,t=[1])=>Xe(et(e,()=>"$"+t[0]++),m),oa=(e,t=f)=>Vn+`(${he(t,Xn,ta(e))})`,ra="ColumnName",la="store",ia="json",ca=la+"TableName",da=la+"Id"+ra,ua=la+ra,ha="autoLoadIntervalSeconds",ga="rowId"+ra,wa="tableId",ma="tableName",pa="deleteEmptyColumns",ba="deleteEmptyTable",Ia="condition",va={mode:ia,[ha]:1},ya={load:0,save:0,[ma]:g+"_values"},fa=(e,t,s,n,a)=>{const o=Bt();return Vt(e,(e,r)=>{const l=Ve($t(qt(t,Ee(e)?{[s]:e}:e)),0,Ot(t));De(l[0])||n(r,l[0])||(a(r,l[0]),Gt(o,r,l))}),o},Ca=e=>{const t=(e=>qt(va,Ee(e)?{[ca]:e}:e??{}))(e),s=t[ha];if(t.mode==ia){const e=t[ca]??g;return[1,s,[e,t[da]??Pn,t[ua]??la],os(e)]}const{tables:{load:n={},save:a={}}={},values:o={}}=t,r=Ve($t(qt(ya,o)),0,Ot(ya)),l=r[2],i=os(l),c=os(l),d=fa(n,{[wa]:null,[ga]:Pn,[Ia]:f},wa,e=>pt(c,e),e=>rs(i,e)),u=fa(a,{[ma]:null,[ga]:Pn,[pa]:0,[ba]:0,[Ia]:null},ma,(e,t)=>pt(c,t),(e,t)=>rs(i,t));return Ut(u,(e,t)=>t[4]??=Jt(d,t[0])?.[2]??f),[0,s,[d,u,r],i]},Ta=(e,t,s,n,a,o=Sa,r,l)=>{const i=Bt();return[async()=>{vt(i),et(await s(e,t),({tn:e,cn:t})=>rs(Qt(i,e,os),t))},async(t,s,n)=>((e,t)=>pt(Jt(i,e),t))(t,s)?Lt(at(et(await e(Bn+ta(t)+oa(t,n)),e=>[e[s],l?Vt(Et(e,s),l):Et(e,s)]),([e,t])=>!ke(e)&&!Ht(t))):{},async(t,s,n,l,c,d=!1,u=f)=>{const h=os();Vt(n??{},e=>et(Dt(e??{}),e=>rs(h,e)));const g=It(h);if(!d&&c&&u==f&&st(g)&&pt(i,t))return await e("DROP "+$n+ta(t)),void Gt(i,t);const w=Jt(i,t),p=os(It(w));if(st(g)||(pt(i,t)?await We(et([s,...g],async(n,o)=>{ft(p,n)||(await e(_n+ta(t)+"ADD"+ta(n)+a),0==o&&await e("CREATE UNIQUE INDEX pk ON "+ta(t)+`(${ta(s)})`),rs(w,n))})):(await e(Qn+ta(t)+`(${ta(s)}${a} PRIMARY KEY${Xe(et(g,e=>m+ta(e)+a))});`),Gt(i,t,os([s,...g])))),await We([...!d&&l?et(It(p),async n=>{n!=s&&(await e(_n+ta(t)+"DROP"+ta(n)),ft(w,n))}):[]]),d)ke(n)?await e(Fn+ta(t)+oa(t,u)):await We(At(n,async(n,a)=>{ke(n)?await e(Fn+ta(t)+oa(t,u)+`AND(${ta(s)}=$1)`,[a]):st(g)||await o(e,t,s,Dt(n),{[a]:r?et($t(n),r):$t(n)},w)}));else if(st(g))pt(i,t)&&await e(Fn+ta(t)+oa(t,u));else{const a=at(It(Jt(i,t)),e=>e!=s),l={},c=[];Vt(n??{},(e,t)=>{l[t]=et(a,t=>r?r(e?.[t]):e?.[t]),rt(c,t)}),await o(e,t,s,a,l),await e(Fn+ta(t)+oa(t,u)+`AND${ta(s)}NOT IN(${aa(c)})`,c)}},async t=>{let s;return await e("BEGIN"),await ze(async()=>s=await t(),n),await e("END"),s}]},Sa=async(e,t,s,n,a)=>{const o=[1];await e(On+" INTO"+ta(t)+"("+na(s,...n)+")VALUES"+Xe(At(a,e=>"($"+o[0]+++","+aa(e,o)+")"),m)+"ON CONFLICT("+ta(s)+`)DO ${Zn} SET`+Xe(et(n,e=>ta(e)+"=excluded."+ta(e)),m),At(a,(e,t)=>[t,...et(e,e=>e??null)]).flat())},Ra=(e,t,s,n,a,o,r,[l,i,c],d,u,h,g,w,m)=>{const[p,b,I,v]=Ta(t,d,u,a,w,m),y=Nn(e,()=>v(async()=>(await p(),Ss((await b(l,i))[En]?.[c]??"null"))),e=>v(async()=>{await p(),await I(l,i,{[En]:{[c]:Ts(e()??null)}},!0,!0)}),s,n,a,r,{[g]:()=>h,destroy:async()=>(await y.stopAutoPersisting(),o(),y)},0,h);return y},ka=(e,t,s,n,a,o,r,[l,i,[c,d,u]],h,g,w,m,p,b,I,v)=>{const[y,f,C,T]=Ta(t,h,g,a,p,b,I,v),S=(e,t)=>We(jt(i,async([s,n,a,o,r],l)=>{t&&!Nt(e,l)||await C(s,n,e[l],a,o,t,r)})),R=async(e,t)=>d?await C(u,Pn,{[En]:e},!0,!0,t):null,k=Nn(e,()=>T(async()=>{await y();const e=await(async()=>Lt(at(await We(jt(l,async([e,t,s],n)=>[e,await f(n,t,s)])),e=>!Ht(e[1]))))(),t=await(async()=>c?(await f(u,Pn))[En]:{})();return Ht(e)&&ke(t)?void 0:[e,t]}),(e,t)=>T(async()=>{if(await y(),ke(t)){const[t,s]=e();await S(t),await R(s)}else await S(t[0],!0),await R(t[1],!0)}),s,n,a,r,{[m]:()=>w,destroy:async()=>(await k.stopAutoPersisting(),o(),k)},0,w);return k},Da=/^([cd]:)(.+)/,xa=(e,t,s,n,a,o,r,l,i,c,d="getDb")=>{const u=ea(s,o),[h,,m,p]=Ca(t),b=w+Ds(Ts(m)),I=g+"_"+b,v=async(e,t,s="",n="")=>{const a=sa(g,e,b);return await u(Gn+Yn+Kn+a+`()RETURNS ${s}trigger AS $$ ${n}BEGIN ${t}END;$$ LANGUAGE plpgsql;`),a},y=async(e,t,s,n)=>(await u(Gn+e+"TRIGGER"+t+s+"EXECUTE "+Kn+n+"()"),t),C=e=>`PERFORM pg_notify('${I}',${e});`,T=(e,t)=>h?f:2===t?T(e,0)+" OR "+T(e,1):he(Jt(m[0],e)?.[2]??f,Xn,0==t?"NEW":"OLD"),S=(e,t)=>We(et([On,Hn,Zn],(s,n)=>y(Yn,sa(g,"d",b,e,s),`AFTER ${s} ON${ta(e)}FOR EACH ROW WHEN(${T(e,n)})`,t)));return(h?Ra:ka)(e,u,async e=>{const t=await v("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Vn} command_tag='${Qn}' LOOP ${C("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await y("EVENT ",sa(g,"c",b),`ON ddl_command_end WHEN TAG IN('${Qn}')`,t);const s=await v("d",C("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await We(et(It(p),async e=>(await u(Qn+` IF NOT EXISTS${ta(e)}("_id"text PRIMARY KEY)`),await S(e,s)))),[await n(I,t=>Me(de(t,Da),async([,t,n])=>{pt(p,n)&&("c:"==t&&await S(n,s),e())})),[t,s]]},async([e,t])=>{a(e),await u(`DROP FUNCTION IF EXISTS${Xe(t,",")}CASCADE`)},r,l,i,m,It(p),async(e,t)=>await e(An+` table_name tn,column_name cn FROM information_schema.columns ${Vn} table_schema='public'AND table_name IN(${aa(t)})`,t),c,d,"text",void 0,e=>ys(e),e=>fs(e))},La=(e,t,s,n,a,o,r,l,i,c,d="getDb",u)=>{let h,g,m;const p=ea(s,o),[b,I,v,y]=Ca(t);return(b?Ra:ka)(e,p,e=>{let t;const s=()=>t=be(()=>ze(async()=>{const[{d:t,s:s,c:n}]=await p(An+` ${Jn} d,${Un} s,TOTAL_CHANGES() c FROM ${zn}${Jn} JOIN ${zn}${Un}`);t==h&&s==g&&n==m||(Re(h)||e(),h=t,g=s,m=n)}),I),o=()=>{h=g=m=null,Ie(t)},r=n(t=>{y.has(t)&&(o(),e(),s())});return s(),()=>{o(),a(r)}},e=>e(),r,l,i,v,It(y),async(e,t)=>await e(An+` t.name tn,c.name cn FROM ${jn}list()t,${jn}info(t.name)c ${Vn} t.schema='main'AND t.type IN('table','view')AND t.name IN(${aa(t)})ORDER BY t.name,c.name`,t),c,d,w,u,e=>xe(e)?1:Le(e)?0:e,void 0)},qa=(e,t)=>[e[t].t,e[t].v],Ma=(e,t,s,n)=>{const a=ke(t)?e:_t(e,t,()=>({}));let o;return Vt(s,(e,t)=>{n(a,t,e)&&(o=1)}),Vt(a,(e,t)=>{Nt(s,t)||(Et(a,t),o=1)}),!ke(t)&&Ht(a)&&Et(e,t),o},Na=(e,t,s=g,n)=>(t.change(e=>_t(e,s,Lt)),Nn(e,async()=>{const e=t.doc();return 2==Ot(e?.[s])?qa(e,s):void 0},async(e,n)=>t.change(t=>((e,t,s,n)=>{((e,t)=>{Ht(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[a,o]=qa(e,t),r=()=>{l=1};let l=1;if(Me(n,([e,t])=>{l=0,Vt(e,(e,t)=>l?0:ke(e)?Et(a,t):Me(a[t],t=>Vt(e,(e,s)=>l?0:ke(e)?Et(t,s):Me(Mt(t,s),t=>Vt(e,(e,s)=>ke(e)?Et(t,s):t[s]=e),r)),r)),Vt(t,(e,t)=>l?0:ke(e)?Et(o,t):o[t]=e)}),l){const[e,t]=s();Ma(a,void 0,e,(e,t,s)=>Ma(a,t,s,(e,t,s)=>Ma(e,t,s,(e,t,s)=>{if(Mt(e,t)!==s)return e[t]=s,1}))),Ma(o,void 0,t,(e,t,s)=>{Mt(o,t)!==s&&(o[t]=s)})}})(t,s,e,n)),e=>{const n=({doc:t})=>e(qa(t,s));return t.on("change",n),n},e=>{t.removeListener("change",e)},n,1,{getDocHandle:()=>t})),Ea="storage",Pa=(e,t,s,n)=>Nn(e,async()=>Ss(s.getItem(t)),async e=>s.setItem(t,Ts(e())),e=>{const n=n=>{n.storageArea===s&&n.key===t&&ze(()=>e(Ss(n.newValue)),e)};return pe.addEventListener(Ea,n),n},e=>pe.removeEventListener(Ea,e),n,3,{getStorageName:()=>t}),Aa=(e,t,s)=>Pa(e,t,localStorage,s),Va=(e,t,s)=>Pa(e,t,sessionStorage,s),$a=(e,t,s)=>Nn(e,async()=>Ss(await(await t.getFile()).text()),async e=>{const s=await t.createWritable();await s.write(Ts(e())),await s.close()},async e=>{const s=new FileSystemObserver(()=>e());return await s.observe(t),s},e=>e?.disconnect(),s,3,{getHandle:()=>t}),Oa=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>await t.execO(e,s),e=>t.onUpdate((t,s,n)=>e(n)),e=>e(),n,a,He,1,t),Ha=()=>en({},w,0),Za=(e,t,s=w,n)=>{const a=(e,...t)=>s+e+Ve(Ts(t),1,-1);return Nn(e,async()=>{const e=Ha(),n=Ha();return(await t.list({prefix:s})).forEach(async([t,a,o],r)=>Me((e=>{if(ie(e,s)){const t=Ve(e,$e(s),$e(s)+1);return t==oe||t==re?[t,...JSON.parse("["+Ve(e,$e(s)+1)+"]")]:void 0}})(r),([s,...r])=>s==oe?Me(r[0],s=>{const n=_t(e[0],s,Ha);Me(r[1],e=>{const s=_t(n[0],e,Ha);Me(r[2],e=>s[0][e]=[t,a,o],()=>an(s,a,o))},()=>an(n,a,o))},()=>an(e,a,o)):s==re?Me(r[0],e=>n[0][e]=[t,a,o],()=>an(n,a,o)):0)),Ht(e[0])&&Ht(n[0])?void 0:[e,n]},async(e,[[s,n,o],[r,l,i]]=e())=>{const c=Bt();Gt(c,a(oe),[0,n,o]),Pt(s,([e,t,s],n)=>{Gt(c,a(oe,n),[0,t,s]),Pt(e,([e,t,s],o)=>{Gt(c,a(oe,n,o),[0,t,s]),Pt(e,(e,t)=>Gt(c,a(oe,n,o,t),e))})}),Gt(c,a(re),[0,l,i]),Pt(r,(e,t)=>Gt(c,a(re,t),e)),await t.put(Kt(c))},He,He,n,2,{getStorage:()=>t})},_a=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>await t.db.raw({sql:e,args:s}),e=>t.notifier.subscribeToDataChanges(s=>Ke(t.notifier.alias(s),({tablename:t})=>e(t))),e=>e(),n,a,He,1,t,"getElectricClient"),Wa=(t,s,n,a,o)=>La(t,n,async(e,t=[])=>await s.getAllAsync(e,t),t=>e(({tableName:e})=>t(e)),e=>e.remove(),a,o,He,3,s),Fa=(e,r,l)=>Nn(e,async()=>Ss(await o(r,R)),async e=>await a(r,Ts(e()),R),e=>(t(r)||s(r,w,R),n(r,()=>e())),e=>e?.close(),l,3,{getFilePath:()=>r}),Ba=[oe,re],za={keyPath:"k"},Ja=async(e,t)=>{const s=At(t,(t,s)=>Ua(e,"put",{k:s,v:t}));et(await Ua(e,"getAllKeys"),n=>Nt(t,n)?0:rt(s,Ua(e,"delete",n))),await We(s)},Ua=async(e,t,s)=>_e((n,a)=>{const o=e[t](s);o.onsuccess=()=>n(o.result),o.onerror=()=>a(`objectStore.${t} error`)}),ja=(e,t,s=1,n)=>{const a=async(e,s=[],n=0)=>_e((a,o)=>{const r=(pe?pe.indexedDB:indexedDB).open(t,n?2:void 0);r.onupgradeneeded=()=>n&&et(Ba,e=>ze(()=>r.result.createObjectStore(e,za))),r.onsuccess=()=>ze(async()=>{const t=r.result.transaction(Ba,"readwrite"),n=await We(et(Ba,(n,a)=>e(t.objectStore(n),s[a])));r.result.close(),a(n)},e=>{r.result.close(),o(e)}),r.onerror=()=>o("indexedDB.open error")});return Nn(e,async()=>await a(async e=>Lt(et(await Ua(e,"getAll"),({k:e,v:t})=>[e,t]))),e=>a((e,t)=>Ja(e,t),e(),1),e=>be(e,s),e=>Ie(e),n,1,{getDbName:()=>t})},Ga=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>(await t.execute({sql:e,args:s})).rows,()=>He,e=>e(),n,a,He,1,t,"getClient"),Qa="s",Ya="/store",Ka=(e,t,s)=>e+t+(Ee(s)?s:Ts(s)),Xa=(e,t,s)=>{const n=$e(e);return ie(t,e)?[t[n],(s?Ss:String)(Ve(t,n+1))]:void 0},eo=(e,t,s,n)=>{const{host:a,room:o}=t.partySocketOptions,{storeProtocol:r="https",storePath:l=Ya,messagePrefix:i=w}={...Ee(s)?{storeProtocol:s}:s},c=r+"://"+a+"/parties/"+t.name+"/"+o+l,d=async e=>await(await fetch(c,{...e?{method:"PUT",body:Cs(e)}:{},mode:"cors",cache:"no-store"})).json();return Nn(e,d,async(e,s)=>{s?t.send(Ka(i,Qa,s)):await d(e())},e=>{const s=t=>Me(Xa(i,t.data,1),([t,s])=>{t==Qa&&e(void 0,s)});return t.addEventListener(se,s),s},e=>{t.removeEventListener(se,e)},n,1,{getConnection:()=>t})},to="hasStore",so=Lt(et(["Origin","Methods","Headers"],e=>["Access-Control-Allow-"+e,"*"])),no=async(e,t=w)=>!!await e.get(t+to),ao=async(e,t=w)=>{const s={},n={};return Ut(await e.list(),(e,a)=>Me(Xa(t,e),([e,t])=>{if(e==oe){const[e,n,o]=fs("["+t+"]");_t(_t(s,e,Lt),n,Lt)[o]=a}else e==re&&(n[t]=a)})),[s,n]},oo=async(e,t,s)=>e.party.broadcast(Ka(e.config.messagePrefix??w,Qa,t),s),ro=async(e,t,s,n)=>{const a=e.party.storage,o=e.config.storagePrefix??w,r={[o+to]:1},l=[],i=[];await We(At(t[0],async(t,c)=>ke(t)?!s&&await e.canDelTable(c,n)&&it(i,lo(o,oe,c)):await e.canSetTable(c,s,n)&&await We(At(t,async(t,d)=>ke(t)?!s&&await e.canDelRow(c,d,n)&&rt(i,lo(o,oe,c,d)):await e.canSetRow(c,d,s,n)&&await We(At(t,async(t,i)=>{const u=[c,d,i],h=lo(o,oe,...u);ke(t)?!s&&await e.canDelCell(...u,n)&&rt(l,h):await e.canSetCell(...u,t,s,n,await a.get(h))&&(r[h]=t)})))))),await We(At(t[1],async(t,i)=>{const c=o+re+i;ke(t)?!s&&await e.canDelValue(i,n)&&rt(l,c):await e.canSetValue(i,t,s,n,await a.get(c))&&(r[c]=t)})),st(i)||Ut(await a.list(),e=>Ue(i,t=>!ie(e,t)||rt(l,e)&&0)),await a.delete(l),await a.put(r)},lo=(e,t,...s)=>Ka(e,t,Ve(Cs(s),1,-1)),io=async(e,t,s=null)=>new Response(s,{status:t,headers:e.config.responseHeaders});class co{constructor(e){this.party=e,this.config.storePath??=Ya,this.config.messagePrefix??=w,this.config.storagePrefix??=w,this.config.responseHeaders??=so}config={};async onRequest(e){const{party:{storage:t},config:{storePath:s=Ya,storagePrefix:n}}=this;if(new URL(e.url).pathname.endsWith(s)){const s=await no(t,n),a=await e.text();return"PUT"==e.method?s?io(this,205):(await ro(this,fs(a),!0,e),io(this,201)):io(this,200,s?Cs(await ao(t,n)):w)}return io(this,404)}async onMessage(e,t){const{config:{messagePrefix:s=w,storagePrefix:n}}=this;await Me(Xa(s,e,1),async([e,s])=>{e==Qa&&await no(this.party.storage,n)&&(await ro(this,s,!1,t),oo(this,s,[t.id]))})}async canSetTable(e,t,s){return!0}async canDelTable(e,t){return!0}async canSetRow(e,t,s,n){return!0}async canDelRow(e,t,s){return!0}async canSetCell(e,t,s,n,a,o,r){return!0}async canDelCell(e,t,s,n){return!0}async canSetValue(e,t,s,n,a){return!0}async canDelValue(e,t){return!0}}const uo=async(e,t,s,n,a)=>xa(e,s,async(e,s=[])=>(await t.query(e,s)).rows,(e,s)=>t.listen(e,s),e=>ze(e,a),n,a,He,3,t,"getPglite"),ho=async(e,t,s,n,a)=>{const o=await(t.reserve?.());return xa(e,s,o?.unsafe,async(e,s)=>t.listen(e,s),e=>ze(e.unlisten,a),n,a,()=>o?.release?.(),3,t,"getSql")},go=(e,t,s,n,a)=>{let o;return La(e,s,async(e,s=[])=>t.execute(e,s).then(e=>e.rows?._array??[]),e=>{const s=new AbortController,n=t.onChange({rawTableNames:!0,signal:s.signal});return(async()=>{for await(const e of n)o&&et(e.changedTables,o)})(),o=e,s},e=>{o=void 0,e.abort()},n,a,He,1,t,"getPowerSync",wo)},wo=async(e,t,s,n,a,o)=>{const r=[1],l=os(n),i=o?at([...o],e=>e!=s&&!pt(l,e)):[];if(!st(i)){const n=Dt(a),o=Lt(et(await e(An+na(s,...i)+Wn+ta(t)+Vn+ta(s)+"IN("+aa(n)+")",n),e=>[e[s],e]));Ke(n,e=>rt(a[e],...et(i,t=>o?.[e]?.[t]??null)))}await e(On+" "+Yn+"INTO"+ta(t)+"("+na(s,...n,...i)+")VALUES"+Xe(At(a,e=>"($"+r[0]+++","+aa(e,r)+")"),m),At(a,(e,t)=>[t,...et(e,e=>e??null)]).flat())},mo=(e,t,s="storage",n)=>Nn(e,async()=>{const e=t.getString(s),n=ke(e)?void 0:JSON.parse(e);return Promise.resolve(n)},async e=>{const n=e();ke(n)||t.set(s,JSON.stringify(n))},e=>t.addOnValueChangedListener(n=>{if(n===s){const n=t.getString(s);n&&e(JSON.parse(n))}}),e=>{e.remove()},n,3,{getStorageName:()=>s}),po=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>(await t.executeSql(e,s))[0].rows.raw(),He,He,n,a,He,3,t),bo=e=>e.headers.get("ETag"),Io=(e,t,s,n=5,a)=>{let o;return Nn(e,async()=>{const e=await fetch(t);return o=bo(e),fs(await e.text())},async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:Cs(e())}),e=>be(async()=>{const s=await fetch(t,{method:"HEAD"}),n=bo(s);De(o)||De(n)||n==o||(o=n,e())},n),e=>Ie(e),a,1,{getUrls:()=>[t,s]})},vo=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>t.query(e).all(...s),()=>He,e=>e(),n,a,He,3,t),yo=(e,t,s,n,a,o)=>La(e,n,async(e,t=[])=>s.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map(e=>({...e})),e=>t.capi.sqlite3_update_hook(s,(t,s,n,a)=>e(a),0),()=>t.capi.sqlite3_update_hook(s,He,0),a,o,He,3,s),fo="change",Co=(e,t,s,n,a)=>La(e,s,async(e,s=[])=>await _e((n,a)=>t.all(e,s,(e,t)=>e?a(e):n(t))),e=>{const s=(t,s,n)=>e(n);return t.on(fo,s),s},e=>t.off(fo,e),n,a,He,3,t),To="delete",So=e=>[e.get(oe),e.get(re)],Ro=(e,t,s,n)=>{const a=ke(t)?e:e.get(t)??e.set(t,new r);let o;return Vt(s,(e,t)=>{n(a,t,e)&&(o=1)}),a.forEach((e,t)=>{Nt(s,t)||(a.delete(t),o=1)}),ke(t)||a.size||e.delete(t),o},ko=(e,t,s=g,n)=>{const a=t.getMap(s);return Nn(e,async()=>a.size?[a.get(oe).toJSON(),a.get(re).toJSON()]:void 0,async(e,s)=>t.transact(()=>((e,t,s)=>{e.size||(e.set(oe,new r),e.set(re,new r));const[n,a]=So(e),o=()=>{l=1};let l=1;if(Me(s,([e,t])=>{l=0,Vt(e,(e,t)=>l?0:ke(e)?n.delete(t):Me(n.get(t),t=>Vt(e,(e,s)=>l?0:ke(e)?t.delete(s):Me(t.get(s),t=>Vt(e,(e,s)=>ke(e)?t.delete(s):t.set(s,e)),o)),o)),Vt(t,(e,t)=>l?0:ke(e)?a.delete(t):a.set(t,e))}),l){const[e,s]=t();Ro(n,void 0,e,(e,t,s)=>Ro(n,t,s,(e,t,s)=>Ro(e,t,s,(e,t,s)=>{if(e.get(t)!==s)return e.set(t,s),1}))),Ro(a,void 0,s,(e,t,s)=>{a.get(t)!==s&&a.set(t,s)})}})(a,e,s)),e=>{const t=t=>e(void 0,((e,t)=>{if(1==$e(t)&&st(t[0].path))return[e.get(oe).toJSON(),e.get(re).toJSON(),1];const[s,n]=So(e),a={},o={};return Ke(t,({path:e,changes:{keys:t}})=>ct(e)==oe?Me(ct(e),n=>{const o=_t(a,n,Lt),r=s.get(n);Me(ct(e),e=>{const s=_t(o,e,Lt),n=r.get(e);Ut(t,(e,{action:t})=>s[e]=t==To?void 0:n.get(e))},()=>Ut(t,(e,{action:t})=>o[e]=t==To?void 0:r.get(e)?.toJSON()))},()=>Ut(t,(e,{action:t})=>a[e]=t==To?void 0:s.get(e)?.toJSON())):Ut(t,(e,{action:t})=>o[e]=t==To?void 0:n.get(e))),[a,o,1]})(a,t));return a.observeDeep(t),t},e=>{a.unobserveDeep(e)},n,1,{getYDoc:()=>t})},Do=cs(e=>{const t=e.createStore,s=t(),n=t(),a=Bt(),o=Bt(),r=Bt(),{addListener:l,callListeners:i,delListener:c}=n,[d,u,h,g,m,p,b,I,,v,y,f,C,T]=ls(e,()=>[],Oe,l,i),S=(e,t,...s)=>Ke(s,s=>rs(Qt(Qt(a,t,Bt),e,os),s)),R=e=>{Me(Jt(a,e),e=>{Ut(e,(e,t)=>yt(t,t=>e.delListener(t))),vt(e)}),Ke([n,s],t=>t.delTable(e))},q=(e,t,s)=>S(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener(()=>s.finishTransaction())),M=(t,a,o,r={})=>{const l=_(t);var i;I(t,a),b(t,[o,(i=r,new Map(Rt(i)))]),E(t,l,r),R(t);const[,c]=p(t),d=[],u=[[void 0,[a,void 0,void 0,[],Bt()]]],h=[],g=[],m=[];o({select:(e,t)=>{const s=Pe(e)?[$e(d)+w,e]:[ke(t)?e:t,s=>s(e,t)];return rt(d,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=ke(s)||Pe(t)?void 0:t,a=ke(n)?t:s,o=[e,[e,n,Pe(a)?a:e=>e(a),[],Bt()]];return rt(u,o),{as:e=>o[0]=e}},where:(e,t,s)=>rt(h,Pe(e)?e:ke(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Pe(t)?[t,s,n,a]:Jt(Cn,t)??[(e,t)=>t]]];return rt(g,o),{as:e=>o[0]=e}},having:(e,t)=>rt(m,Pe(e)?e:s=>s(e)===t),param:e=>Jt(c,e)});const v=Bt(d);if(bt(v))return F;const y=Bt(u);Ut(y,(e,[,t])=>Me(Jt(y,t),({3:t})=>ke(e)?0:rt(t,e)));const f=Bt(g);let k=s;if(bt(f)&&st(m))k=n;else{q(t,k,n);const e=Bt();Ut(f,(t,[s,n])=>rs(Qt(e,s,os),[t,n]));const s=os();Ut(v,t=>pt(e,t)?0:rs(s,t));const a=Bt(),o=(s,a,o,r)=>Me(s,([l,i,c,d])=>{Ut(a,(t,[s])=>{const n=Qt(l,t,Bt),a=Jt(n,o),i=r?void 0:s;if(a!==i){const s=os([[a,i]]),r=ht(n);Gt(n,o,i),yt(Jt(e,t),([e,t])=>{const a=Tn(d[e],r,n,s,t);d[e]=ke(js(a))?void 0:a})}}),bt(i)||!Ue(m,e=>e(e=>d[e]))?n.delRow(t,c):ke(c)?s[2]=n.addRow(t,d):n.setRow(t,c,d)});S(k,t,k.addRowListener(t,null,(n,r,l,i)=>{const c=[],d=[],u=Bt(),h=k.hasRow(t,l);let g=!h;yt(s,e=>{const[s,n,a]=i(t,l,e);rt(c,n),rt(d,a),g||=s}),Ut(e,e=>{const[s,,n]=i(t,l,e);(g||s)&&Gt(u,e,[n])}),g&&o(as(a,c,void 0,([,e])=>(ft(e,l),bt(e))),u,l,1),h&&o(as(a,d,()=>{const e={};return yt(s,s=>e[s]=k.getCell(t,l,s)),[Bt(),os(),void 0,e]},([,e])=>{rs(e,l)}),u,l)}))}q(t,e,k);const D=(s,n,o,r)=>{const l=t=>e.getCell(n,o,t);Ke(r,n=>{const[a,,o,r,i]=Jt(y,n),c=o?.(l,s),[d,u]=Jt(i,s)??[];c!=d&&(ke(u)||T(t,u),Gt(i,s,ke(c)?void 0:[c,...C(t,1,e.addRowListener(a,c,()=>D(s,a,c,r)))]))}),(s=>{const n=(t,n)=>e.getCell(...ke(n)?[a,s,t]:t===a?[a,s,n]:[Jt(y,t)?.[0],Jt(Jt(y,t)?.[4],s)?.[0],n]);k.transaction(()=>Ue(h,e=>e(n))?Ut(v,(e,a)=>k.setOrDelCell(t,s,e,a(n,s))):k.delRow(t,s))})(s)},{3:x}=Jt(y,void 0);return k.transaction(()=>C(t,1,e.addRowListener(a,null,(s,n,o)=>{e.hasRow(a,o)?D(o,a,o,x):(k.delRow(t,o),yt(y,({4:e})=>Me(Jt(e,o),([,s])=>{T(t,s),Gt(e,o)})))}))),F},E=(e,t,s)=>{const n=os([...Dt(t),...Dt(s)]);let a=0;yt(n,n=>{const o=Mt(s,n);Ge(Mt(t,n),o)||(a=1,i(r,[e,n],o))}),a&&i(o,[e],s)},P=(e,t,s=0)=>(Me(p(e),([a,o])=>{!s&&Zt(Kt(o),t,Ge)||n.transaction(()=>M(e,m(e),a,t))}),F),_=e=>Kt(p(e)?.[1]),W=(e,t)=>Jt(p(e)?.[1],t),F={setQueryDefinition:M,delQueryDefinition:e=>{const t=_(e);return R(e),v(e),E(e,t,{}),F},getParamValues:_,getParamValue:W,setParamValues:P,setParamValue:(e,t,s)=>(Ge(W(e,t),s)||P(e,{..._(e),[t]:s},1),F),getStore:d,getQueryIds:u,forEachQuery:h,hasQuery:g,getTableId:m,addQueryIdsListener:e=>y(()=>e(F)),addParamValuesListener:(e,t)=>l((e,s,n)=>t(F,s,n),o,[e]),addParamValueListener:(e,t,s)=>l((e,t,n,a)=>s(F,t,n,a),r,[e,t]),delListener:e=>(c(e),F),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...a}=n.getListenerStats();return{...a,paramValues:gt(o),paramValue:wt(r)}}};return Vt({[N]:[1,1],[N+Z]:[0,1],[V]:[0,1],[$]:[0,1],[O]:[0,5],[A]:[1,2],[Z]:[0,2],[H]:[1,3]},([e,t],s)=>{Ke(e?[x,"has","forEach"]:[x],e=>F[e+D+s]=(...t)=>n[e+s](...t)),F[L+D+s+k]=(...e)=>n[L+s+k](...Ve(e,0,t),(s,...n)=>e[t](F,...n),!0)}),xt(F)}),xo=cs(e=>{const t=Bt(),s=Bt(),n=Bt(),a=Bt(),[o,r,l]=hs(()=>C),[i,c,d,u,h,g,,,m,p,b,I]=ls(e,()=>[Bt(),Bt(),Bt(),Bt()],e=>ke(e)?void 0:e+w,o,r),v=(e,t,s)=>Me(g(e),([n,,a])=>{if(!pt(a,t)){const o=os();if(h(e)!=f(e))rs(o,t);else{let e=t;for(;!ke(e)&&!pt(o,e);)rs(o,e),e=Jt(n,e)}if(s)return o;Gt(a,t,o)}return Jt(a,t)}),y=(e,t)=>Me(g(e),([,,e])=>Gt(e,t)),f=e=>Jt(t,e),C={setRelationshipDefinition:(e,o,l,i)=>(Gt(t,e,l),m(e,o,(t,o)=>{const l=os(),i=os(),c=os(),[d,u]=g(e);yt(o,([t,s],n)=>{ke(t)||(rs(i,t),Me(Jt(u,t),e=>{ft(e,n),bt(e)&&Gt(u,t)})),ke(s)||(rs(i,s),pt(u,s)||Gt(u,s,os()),rs(Jt(u,s),n)),rs(l,n),Gt(d,n,s),Ut(Jt(a,e),t=>{pt(v(e,t),n)&&rs(c,t)})}),t(),yt(l,t=>r(s,[e,t])),yt(i,t=>r(n,[e,t])),yt(c,t=>{y(e,t),r(a,[e,t])})},is(i)),C),delRelationshipDefinition:e=>(Gt(t,e),p(e),C),getStore:i,getRelationshipIds:c,forEachRelationship:t=>d(s=>t(s,t=>e.forEachRow(h(s),t))),hasRelationship:u,getLocalTableId:h,getRemoteTableId:f,getRemoteRowId:(e,t)=>Jt(g(e)?.[0],t),getLocalRowIds:(e,t)=>It(Jt(g(e)?.[1],t)),getLinkedRowIds:(e,t)=>ke(g(e))?[t]:It(v(e,t,!0)),addRelationshipIdsListener:b,addRemoteRowIdListener:(e,t,n)=>o(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>o(s,n,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),o(s,a,[e,t])),delListener:e=>(y(...l(e)??[]),C),destroy:I,getListenerStats:()=>({remoteRowId:wt(s),localRowIds:wt(n),linkedRowIds:wt(a)})};return xt(C)}),Lo={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},qo=(e,t,s,n,a,o,r,l,i={})=>{let c,d=0,u=0,h=0;const g=Bt(),m=()=>vs(11),b=(e,s,n,a)=>{u++,o?.(e,s,n,a),t(e,s,n,a)},I=async(e,t,s,n)=>_e((o,r)=>{const l=n+p+vs(4),i=ve(()=>{ft(g,l),r(`No response from ${e??"anyone"} to ${l}, `+t)},a);Gt(g,l,[e,(e,t)=>{clearTimeout(i),ft(g,l),o([e,t,n])}]),b(e,l,t,s)}),v=(e,[t,s])=>{Pt(t,([t,s],n)=>{const a=_t(e[0],n,on);Pt(t,([e,t],s)=>{const n=_t(a[0],s,on);Pt(e,([e,t],s)=>n[0][s]=Xs(e,t)),n[1]=nn(n[1],t)}),a[1]=nn(a[1],s)}),e[1]=nn(e[1],s)},y=(t=null,s,n=m())=>ze(async()=>{ke(s)&&([s,t,n]=await I(null,1,w,n));const[a,o]=s,[r,l]=e.getMergeableContentHashes();let i=on();if(r!=a){const[s,a]=(await I(t,4,e.getMergeableTableHashes(),n))[0];if(i=s,!Ht(a)){const[s,o]=(await I(t,5,e.getMergeableRowHashes(a),n))[0];if(v(i,s),!Ht(o)){const s=(await I(t,6,e.getMergeableCellHashes(o),n))[0];v(i,s)}}}return[i,l==o?on():(await I(t,7,e.getMergeableValueHashes(),n))[0],1]},l),f=Nn(e,async()=>{const e=await y();return!e||Ht(e[0][0])&&Ht(e[1][0])?void 0:e},async(t,s)=>s?b(null,m(),3,s):b(null,m(),2,e.getMergeableContentHashes()),e=>c=e,()=>c=void 0,l,2,{startSync:async e=>(d=1,await f.startAutoPersisting(e)),stopSync:async()=>(d=0,await f.stopAutoPersisting(),f),destroy:async()=>(await f.stopSync(),n(),f),getSynchronizerStats:()=>({sends:u,receives:h}),...i},1);return s((t,s,n,a)=>{const o=d||f.isAutoLoading();h++,r?.(t,s,n,a),0==n?Me(Jt(g,s),([e,s])=>De(e)||e==t?s(a,t):0):2==n&&o?y(t,a,s??void 0).then(e=>{c?.(void 0,e)}).catch(l):3==n&&o?c?.(void 0,a):Me(1==n&&(d||f.isAutoSaving())?e.getMergeableContentHashes():4==n?e.getMergeableTableDiff(a):5==n?e.getMergeableRowDiff(a):6==n?e.getMergeableCellDiff(a):7==n?e.getMergeableValueDiff(a):void 0,e=>{b(t,s,0,e)})}),f},Mo=(e,t,s,n,a)=>{const o=vs(),r=new BroadcastChannel(t);return qo(e,(e,t,s,n)=>r.postMessage([o,e,t,s,n]),e=>{r.onmessage=({data:[t,s,n,a,r]})=>De(s)||s==o?e(t,n,a,r):0},()=>{r.close()},.01,s,n,a,{getChannelName:()=>t})},No=Bt(),Eo=(e,t,s,n)=>{const a=vs();return qo(e,(e,t,s,n)=>ve(()=>De(e)?Ut(No,(e,o)=>e!=a?o(a,t,s,n):0):Jt(No,e)?.(a,t,s,n)),e=>{Gt(No,a,e)},()=>{ft(No,a)},.01,t,s,n)},Po=(e,t)=>{const s=e.indexOf("\n");-1!==s&&t(Ve(e,0,s),Ve(e,s+1))},Ao=(e,t)=>Po(e,(e,s)=>t(e,...Ss(s))),Vo=(e,...t)=>$o(e??w,Ts(t)),$o=(e,t)=>e+"\n"+t,Oo=async(e,t,s=1,n,a,o)=>{const r=(e,s)=>(t.addEventListener(e,s),()=>t.removeEventListener(e,s)),l=qo(e,(e,...s)=>t.send(Vo(e,...s)),e=>r(se,({data:t})=>Ao(t.toString(R),e)),()=>{t.close()},s,n,a,o,{getWebSocket:()=>t});return _e(e=>{if(t.readyState!=t.OPEN){const t=t=>{t&&o?.(t),s(),n(),e(l)},s=r("open",()=>t()),n=r(ne,t)}else e(l)})},Ho=/\/([^?]*)/,Zo="S",_o=e=>de(new URL(e.url).pathname,Ho)?.[1]??w,Wo=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,Fo=(e,t=null,s=null)=>new Response(s,{status:e,webSocket:t}),Bo=()=>Fo(426,null,"Upgrade required");class zo extends l{#e;constructor(e,t){super(e,t),this.ctx.blockConcurrencyWhile(async()=>await Me(await this.createPersister(),async e=>{const t=qo(e.getStore(),(e,t,s,n)=>this.#t(Zo,Vo(e,t,s,n)),e=>this.#e=t=>Ao(t,e),He,1);await e.load(),await e.startAutoSave(),ve(t.startSync)}))}fetch(e){const t=_o(e);return Me(Wo(e),e=>{const[s,n]=$t(new WebSocketPair);return st(this.#s())&&this.onPathId(t,1),this.ctx.acceptWebSocket(n,[e,t]),this.onClientId(t,e,1),n.send(Vo(Zo,null,1,w)),Fo(101,s)},Bo)}webSocketMessage(e,t){Me(this.ctx.getTags(e)[0],s=>this.#t(s,t.toString(),e))}webSocketClose(e){const[t,s]=this.ctx.getTags(e);this.onClientId(s,t,-1),1==$e(this.#s())&&this.onPathId(s,-1)}#t(e,t,s){Po(t.toString(),(t,n)=>{const a=$o(e,n);this.onMessage(e,t,n),t==w?(e!=Zo&&this.#e?.(a),Ke(this.#s(),e=>{e!=s&&e.send(a)})):t==Zo?this.#e?.(a):t!=e&&this.#s(t)[0]?.send(a)})}#s(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#s()[0])?.[1]}getClientIds(){return et(this.#s(),e=>this.ctx.getTags(e)[0])}onPathId(e,t){}onClientId(e,t,s){}onMessage(e,t,s){}}const Jo=e=>(t,s)=>Wo(t)?s[e].get(s[e].idFromName(_o(t))).fetch(t):Bo(),Uo=/\/([^?]*)/,jo=e=>{const t=Bt();return e.on("connection",(e,s)=>Me(de(s.url,Uo),([,n])=>Me(s.headers["sec-websocket-key"],async s=>{const a=Qt(t,n,Bt);Gt(a,s,e),e.on(se,e=>Po(e.toString(R),(e,t)=>{const n=$o(s,t);e===w?Ut(a,(e,t)=>e!==s?t.send(n):0):Jt(a,e)?.send(n)})),e.on("close",()=>{ft(a,s),bt(a)&&ft(t,n)})}))),xt({getWebSocketServer:()=>e,destroy:async()=>{vt(t),e.close()}})},Go=/\/([^?]*)/,Qo=(e,t,s)=>{const n=Bt(),a=Bt(),o=Bt(),r=Bt(),[l,i,c]=hs(()=>h),d=async e=>{await(e[1]?.destroy()),await(e[2]?.destroy())},u=(e,t,s)=>n=>Po(n,(n,a)=>{const o=$o(e,a);n===w?("S"!==e&&s[3]?.(o),Ut(t,(t,s)=>t!==e?s.send(o):0)):"S"===n?s[3]?.(o):Jt(t,n)?.send(o)});e.on("connection",(e,l)=>Me(de(l.url,Go),([,c])=>Me(l.headers["sec-websocket-key"],async l=>{const h=Qt(o,c,Bt),g=Qt(r,c,()=>[0]),w=u(l,h,g);bt(h)&&(i(n,void 0,c,1),await(async(e,n,a)=>Me(await(t?.(n)),t=>{e[0]=1,e[1]=Ae(t)?t[0]:t;const n=u("S",a,e);e[2]=qo(e[1].getStore(),(e,t,s,a)=>n(Vo(e,t,s,a)),t=>e[3]=e=>Ao(e,t),He,1,void 0,void 0,s),e[4]=[],e[5]=Ae(t)?t[1]:e=>0}))(g,c,h)),Gt(h,l,e),i(a,[c],l,1),e.on(se,e=>{const t=e.toString(R);0==g[0]?w(t):rt(g[4],t)}),1==g[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})(g),Ke(g[4],w),g[4]=[]),e.on("close",async()=>{ft(h,l),i(a,[c],l,-1),bt(h)&&(await d(g),ft(r,c),ft(o,c),i(n,void 0,c,-1))}),s&&e.on(ne,s)}))),s&&e.on(ne,s);const h={getWebSocketServer:()=>e,getPathIds:()=>zt(o),getClientIds:e=>zt(Jt(o,e)),addPathIdsListener:e=>l(e,n),addClientIdsListener:(e,t)=>l(t,a,[e]),delListener:e=>(c(e),h),getStats:()=>({paths:ht(o),clients:gt(o)}),destroy:async()=>{vt(o),await We(jt(r,d)),e.close()}};return xt(h)},{PureComponent:Yo,createContext:Ko,useCallback:Xo,useContext:er,useEffect:tr,useLayoutEffect:sr,useMemo:nr,useRef:ar,useState:or,useSyncExternalStore:rr}=u,lr=(e,...t)=>ke(e)?{}:e(...t),ir=(e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)],cr=(e,t)=>[e,e?.getStore(),e?.getTableId(t)],dr=g+"_uirc",ur=me[dr]?me[dr]:me[dr]=Ko([]),hr=(e,t)=>{const s=er(ur);return ke(e)?s[2*t]:Ee(e)?Mt(s[2*t+1],e):e},gr=(e,t)=>{const s=hr(e,t);return ke(e)||Ee(e)?s:e},wr=(e,t,s)=>{const{16:n,17:a}=er(ur);tr(()=>(n?.(s,e,t),()=>a?.(s,e)),[n,e,t,s,a])},mr=e=>Dt(er(ur)[2*e+1]??{}),pr=0,br=1,Ir=2,vr=3,yr=4,fr=5,Cr=6,Tr=7,Sr=(e,t,s,n,a)=>[s??t[2*e],{...t[2*e+1],...n,...a[e]}],Rr=({store:e,storesById:t,metrics:s,metricsById:n,indexes:a,indexesById:o,relationships:r,relationshipsById:l,queries:c,queriesById:d,checkpoints:u,checkpointsById:h,persister:g,persistersById:w,synchronizer:m,synchronizersById:p,children:b})=>{const I=er(ur),[v,y]=or(()=>et([,,,,,,,,].fill(0),(e,t)=>({}))),f=Xo((e,t,s)=>y(n=>Mt(n[e],t)==s?n:dt(n,e,{...n[e],[t]:s})),[]),C=Xo((e,t)=>y(s=>Nt(s[e],t)?dt(s,e,Et(s[e],t)):s),[]);return i(ur.Provider,{value:nr(()=>[...Sr(0,I,e,t,v),...Sr(1,I,s,n,v),...Sr(2,I,a,o,v),...Sr(3,I,r,l,v),...Sr(4,I,c,d,v),...Sr(5,I,u,h,v),...Sr(6,I,g,w,v),...Sr(7,I,m,p,v),f,C],[v,e,t,s,n,a,o,r,l,c,d,u,h,g,w,m,p,I,f,C]),children:b})},kr=[],Dr=[{},[],[kr,void 0,kr],{},void 0,void 0,!1,0],xr=[Zt,je,([e,t,s],[n,a,o])=>t===a&&je(e,n)&&je(s,o),(e,t)=>Zt(e,t,Ge),Ge],Lr=(e,t)=>e===t,qr=(e,t,s=kr)=>{const[,n]=or(),[a,o]=or();return tr(()=>{const s=e?t(e):void 0;return o(s),n([]),s?.destroy},[e,...s]),a},Mr=(e,t,...s)=>{const n=e?.[L+t+k]?.(...s);return()=>e?.delListener?.(n)},Nr=(e,t,s,n=kr)=>{const a=ar(Dr[s]),o=Xo(()=>{const o=t?.[(6==s?"has":x)+e]?.(...n)??Dr[s];return(xr[s]??Lr)(o,a.current)?a.current:a.current=o},[t,s,e,...n]),r=Xo(a=>Mr(t,(6==s?q:w)+e,...n,a),[t,s,e,...n]);return rr(r,o,o)},Er=(e,t,s,n=kr,a=kr,...o)=>sr(()=>Mr(t,e,...a,s,...o),[t,e,...a,...n,...o]),Pr=(e,t,s,n=kr,a=Oe,o=kr,r,...l)=>Xo(n=>Me(e,e=>Me(s(n,e),s=>a(e[r+t](...$r(l,e,n),s),s))),[e,t,...n,...o,r,...Or(l)]),Ar=(e,t,s,n,a,o,...r)=>Pr(Jr(e),t,s,n,a,o,"set",...r),Vr=(e,t,s,n,a,o,...r)=>Pr(Oi(e),t,s,n,a,o,w,...r),$r=(e,t,s)=>et(e,e=>Pe(e)?e(s,t):e),Or=e=>at(e,e=>!Pe(e)),Hr=(e,t,s=Oe,n=kr,...a)=>{const o=Jr(e);return Xo(e=>s(o?.["del"+t](...$r(a,o,e))),[o,t,...n,...Or(a)])},Zr=(e,t,s)=>{const n=wc(e);return Xo(()=>n?.[t](s),[n,t,s])},_r=(e,t,s,n,a,o,r,l,i)=>Er(O,Jr(i),o,r,[e,t,s,n,a],l),Wr=(e,t=kr)=>nr(e,t),Fr=()=>mr(0),Br=e=>hr(e,0),zr=()=>({...er(ur)[1]}),Jr=e=>gr(e,0),Ur=(e,t)=>wr(e,t,0),jr=(e,t=kr)=>nr(e,t),Gr=e=>Nr(E,Jr(e),6,[]),Qr=e=>Nr(E,Jr(e),0),Yr=e=>[Qr(e),fl(Ze,[],e)],Kr=e=>Nr(P,Jr(e),1),Xr=(e,t)=>Nr(N,Jr(t),6,[e]),el=(e,t)=>Nr(N,Jr(t),0,[e]),tl=(e,t)=>[el(e,t),Cl(e,Ze,[],t)],sl=(e,t)=>Nr(N+Z,Jr(t),1,[e]),nl=(e,t,s)=>Nr(N+H,Jr(s),6,[e,t]),al=(e,t)=>Nr(V,Jr(t),7,[e]),ol=(e,t)=>Nr($,Jr(t),1,[e]),rl=(e,t,s,n,a,o)=>((e,t,s,n,a,o)=>Nr(O,Jr(o),1,[e,t,s,n,a]))(...kt(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t]:[e,t,s,n,a,o]),ll=(e,t,s)=>Nr(A,Jr(s),6,[e,t]),il=(e,t,s)=>Nr(A,Jr(s),0,[e,t]),cl=(e,t,s)=>[il(e,t,s),Tl(e,t,Ze,[],s)],dl=(e,t,s)=>Nr(Z,Jr(s),1,[e,t]),ul=(e,t,s,n)=>Nr(H,Jr(n),6,[e,t,s]),hl=(e,t,s,n)=>Nr(H,Jr(n),5,[e,t,s]),gl=(e,t,s,n)=>[hl(e,t,s,n),kl(e,t,s,Ze,[],n)],wl=e=>Nr(W,Jr(e),6,[]),ml=e=>Nr(W,Jr(e),0),pl=e=>[ml(e),Dl(Ze,[],e)],bl=e=>Nr(F,Jr(e),1),Il=(e,t)=>Nr(_,Jr(t),6,[e]),vl=(e,t)=>Nr(_,Jr(t),5,[e]),yl=(e,t)=>[vl(e,t),Ll(e,Ze,[],t)],fl=(e,t,s,n,a)=>Ar(s,E,e,t,n,a),Cl=(e,t,s,n,a,o)=>Ar(n,N,t,s,a,o,e),Tl=(e,t,s,n,a,o,r)=>Ar(a,A,s,n,o,r,e,t),Sl=(e,t,s=kr,n,a=Oe,o=kr,r=!0)=>{const l=Jr(n);return Xo(s=>Me(l,n=>Me(t(s,n),t=>a(n.addRow(Pe(e)?e(s,n):e,t,r),n,t))),[l,e,...s,...o,r])},Rl=(e,t,s,n,a,o,r)=>Ar(a,z+A,s,n,o,r,e,t),kl=(e,t,s,n,a,o,r,l)=>Ar(o,H,n,a,r,l,e,t,s),Dl=(e,t,s,n,a)=>Ar(s,W,e,t,n,a),xl=(e,t,s,n,a)=>Ar(s,z+W,e,t,n,a),Ll=(e,t,s,n,a,o)=>Ar(n,_,t,s,a,o,e),ql=(e,t,s)=>Hr(e,E,t,s),Ml=(e,t,s,n)=>Hr(t,N,s,n,e),Nl=(e,t,s,n,a)=>Hr(s,A,n,a,e,t),El=(e,t,s,n,a,o,r)=>Hr(a,H,o,r,e,t,s,n),Pl=(e,t,s)=>Hr(e,W,t,s),Al=(e,t,s,n)=>Hr(t,_,s,n,e),Vl=(e,t,s,n)=>Er(q+E,Jr(n),e,t,[],s),$l=(e,t,s,n)=>Er(E,Jr(n),e,t,kr,s),Ol=(e,t,s,n)=>Er(P,Jr(n),e,t,kr,s),Hl=(e,t,s,n,a)=>Er(q+N,Jr(a),t,s,[e],n),Zl=(e,t,s,n,a)=>Er(N,Jr(a),t,s,[e],n),_l=(e,t,s,n,a)=>Er(N+Z,Jr(a),t,s,[e],n),Wl=(e,t,s,n,a,o)=>Er(q+N+H,Jr(o),s,n,[e,t],a),Fl=(e,t,s,n,a)=>Er(V,Jr(a),t,s,[e],n),Bl=(e,t,s,n,a)=>Er($,Jr(a),t,s,[e],n),zl=(e,t,s,n,a,o,r,l,i)=>_r(...kt(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t,s,n,a]:[e,t,s,n,a,o,r,l,i]),Jl=(e,t,s,n,a,o)=>Er(q+A,Jr(o),s,n,[e,t],a),Ul=(e,t,s,n,a,o)=>Er(A,Jr(o),s,n,[e,t],a),jl=(e,t,s,n,a,o)=>Er(Z,Jr(o),s,n,[e,t],a),Gl=(e,t,s,n,a,o,r)=>Er(q+H,Jr(r),n,a,[e,t,s],o),Ql=(e,t,s,n,a,o,r)=>Er(H,Jr(r),n,a,[e,t,s],o),Yl=(e,t,s,n)=>Er(q+W,Jr(n),e,t,[],s),Kl=(e,t,s,n)=>Er(W,Jr(n),e,t,kr,s),Xl=(e,t,s,n)=>Er(F,Jr(n),e,t,kr,s),ei=(e,t,s,n,a)=>Er(q+_,Jr(a),t,s,[e],n),ti=(e,t,s,n,a)=>Er(_,Jr(a),t,s,[e],n),si=(e,t,s)=>Er("Start"+B,Jr(s),e,t),ni=(e,t,s)=>Er("Will"+J+B,Jr(s),e,t),ai=(e,t,s)=>Er("Did"+J+B,Jr(s),e,t),oi=(e,t,s)=>qr(e,t,s),ri=()=>mr(1),li=e=>hr(e,1),ii=e=>gr(e,1),ci=(e,t)=>wr(e,t,1),di=e=>Nr(j+M,ii(e),1),ui=(e,t)=>Nr(j,ii(t),5,[e]),hi=(e,t,s,n)=>Er(j,ii(n),t,s,[e]),gi=(e,t,s)=>qr(e,t,s),wi=()=>mr(2),mi=e=>hr(e,2),pi=e=>gr(e,2),bi=(e,t)=>wr(e,t,2),Ii=(e,t)=>Nr(G+M,pi(t),1,[e]),vi=e=>Nr("Index"+M,pi(e),1),yi=(e,t,s)=>Nr(G+$,pi(s),1,[e,t]),fi=(e,t,s,n)=>Er(G+M,pi(n),t,s,[e]),Ci=(e,t,s,n,a)=>Er(G+$,pi(a),s,n,[e,t]),Ti=(e,t,s)=>qr(e,t,s),Si=()=>mr(3),Ri=e=>hr(e,3),ki=e=>gr(e,3),Di=(e,t)=>wr(e,t,3),xi=e=>Nr("Relationship"+M,ki(e),1),Li=(e,t,s)=>Nr(Q,ki(s),5,[e,t]),qi=(e,t,s)=>Nr(Y+$,ki(s),1,[e,t]),Mi=(e,t,s)=>Nr(K+$,ki(s),1,[e,t]),Ni=(e,t,s,n,a)=>Er(Q,ki(a),s,n,[e,t]),Ei=(e,t,s,n,a)=>Er(Y+$,ki(a),s,n,[e,t]),Pi=(e,t,s,n,a)=>Er(K+$,ki(a),s,n,[e,t]),Ai=(e,t,s)=>qr(e,t,s),Vi=()=>mr(4),$i=e=>hr(e,4),Oi=e=>gr(e,4),Hi=(e,t)=>wr(e,t,4),Zi=e=>Nr("Query"+M,Oi(e),1),_i=(e,t)=>Nr(D+N,Oi(t),0,[e]),Wi=(e,t)=>Nr(D+N+Z,Oi(t),1,[e]),Fi=(e,t)=>Nr(D+V,Oi(t),7,[e]),Bi=(e,t)=>Nr(D+$,Oi(t),1,[e]),zi=(e,t,s,n=0,a,o)=>Nr(D+O,Oi(o),1,[e,t,s,n,a]),Ji=(e,t,s)=>Nr(D+A,Oi(s),0,[e,t]),Ui=(e,t,s)=>Nr(D+Z,Oi(s),1,[e,t]),ji=(e,t,s,n)=>Nr(D+H,Oi(n),5,[e,t,s]),Gi=(e,t,s,n)=>Er(D+N,Oi(n),t,s,[e]),Qi=(e,t,s,n)=>Er(D+N+Z,Oi(n),t,s,[e]),Yi=(e,t,s,n)=>Er(D+V,Oi(n),t,s,[e]),Ki=(e,t,s,n)=>Er(D+$,Oi(n),t,s,[e]),Xi=(e,t,s,n,a,o,r,l)=>Er(D+O,Oi(l),o,r,[e,t,s,n,a]),ec=(e,t,s,n,a)=>Er(D+A,Oi(a),s,n,[e,t]),tc=(e,t,s,n,a)=>Er(D+Z,Oi(a),s,n,[e,t]),sc=(e,t,s,n,a,o)=>Er(D+H,Oi(o),n,a,[e,t,s]),nc=(e,t)=>Nr("ParamValues",Oi(t),3,[e]),ac=(e,t)=>[nc(e,t),dc(e,Ze,[],t)],oc=(e,t,s)=>Nr("ParamValue",Oi(s),4,[e,t]),rc=(e,t,s)=>[oc(e,t,s),cc(e,t,Ze,[],s)],lc=(e,t,s,n)=>Er("ParamValues",Oi(n),t,s,[e]),ic=(e,t,s,n,a)=>Er("ParamValue",Oi(a),s,n,[e,t]),cc=(e,t,s,n,a,o,r)=>Vr(a,"setParamValue",s,n,o,r,e,t),dc=(e,t,s,n,a,o)=>Vr(n,"setParamValues",t,s,a,o,e),uc=(e,t,s)=>qr(e,t,s),hc=()=>mr(5),gc=e=>hr(e,5),wc=e=>gr(e,5),mc=(e,t)=>wr(e,t,5),pc=e=>Nr(X+M,wc(e),2),bc=(e,t)=>Nr(X,wc(t),5,[e]),Ic=(e=Oe,t=kr,s,n=Oe,a=kr)=>{const o=wc(s);return Xo(t=>Me(o,s=>{const a=e(t);n(s.addCheckpoint(a),s,a)}),[o,...t,...a])},vc=e=>Zr(e,"goBackward"),yc=e=>Zr(e,"goForward"),fc=(e,t=kr,s,n=Oe,a=kr)=>{const o=wc(s);return Xo(t=>Me(o,s=>Me(e(t),e=>n(s.goTo(e),e))),[o,...t,...a])},Cc=e=>{const t=wc(e),[s,n]=pc(t);return[!st(s),vc(t),n,Me(n,e=>t?.getCheckpoint(e))??w]},Tc=e=>{const t=wc(e),[,,[s]]=pc(t);return[!ke(s),yc(t),s,Me(s,e=>t?.getCheckpoint(e))??w]},Sc=(e,t,s)=>Er(X+M,wc(s),e,t),Rc=(e,t,s,n)=>Er(X,wc(n),t,s,[e]),kc=(e,t,s=kr,n,a=kr,o,r=kr)=>{const[,l]=or(),[i,c]=or();return tr(()=>{(async()=>{const s=e?await t(e):void 0;c(s),s&&n&&(async()=>{await n(s),l([])})()})()},[e,...s,...a]),tr(()=>()=>{i&&(i.destroy(),o?.(i))},[i,...r]),i},Dc=()=>mr(6),xc=e=>hr(e,6),Lc=e=>gr(e,6),qc=(e,t)=>wr(e,t,6),Mc=e=>Nr(U,Lc(e),7,[]),Nc=(e,t,s)=>Er(U,Lc(s),e,t,[]),Ec=(e,t,s=kr,n,a=kr)=>{const[o,r]=or();return tr(()=>{(async()=>{const s=e?await t(e):void 0;r(s)})()},[e,...s]),tr(()=>()=>{o&&(o.destroy(),n?.(o))},[o,...a]),o},Pc=()=>mr(7),Ac=e=>hr(e,7),Vc=e=>gr(e,7),$c=(e,t)=>wr(e,t,7),Oc=e=>Nr(U,Vc(e),7,[]),Hc=(e,t,s)=>Er(U,Vc(s),e,t,[]),Zc=(e,t)=>nr(()=>({store:e,tableId:t}),[e,t]),_c=(e,t)=>nr(()=>({queries:e,queryId:t}),[e,t]),Wc=(e,t,s)=>{const n=Xo(e,t);return s?n:void 0},Fc=(...e)=>nr(()=>e,e),Bc=(e,t,s)=>nr(()=>{const n=t??e;return Vt(Ae(n)?Lt(et(n,e=>[e,e])):n,(e,t)=>({label:t,component:s,...Ee(e)?{label:e}:e}))},[t,s,e]),zc="editable",Jc=(e=[],t,s=0)=>et(e,({component:e},n)=>i("td",{className:ae,children:i(e,{...t})},Uc(n,s))),Uc=(e,t)=>(t?">":"<")+e,jc=(e=[],t=0)=>et(e,({label:e},s)=>i("th",{className:ae,children:e},Uc(s,t))),Gc=({cellId:e,sort:[t,s],label:n=e??w,onClick:a})=>c("th",{onClick:Wc(()=>a?.(e),[a,e],a),className:ke(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`,children:[ke(s)||t!=e?null:(s?"↓":"↑")+" ",n]}),Qc=({className:e,headerRow:t,idColumn:s,params:[n,a,o,r,l,d,u,h]})=>c("table",{className:e,children:[h?i("caption",{children:h}):null,!1===t?null:i("thead",{children:c("tr",{children:[jc(r),!1===s?null:i(Gc,{sort:d??[],label:"Id",onClick:u}),At(n,({label:e},t)=>i(Gc,{cellId:t,label:e,sort:d??[],onClick:u},t)),jc(l,1)]})}),i("tbody",{children:et(o,e=>{const t={...a,rowId:e};return c("tr",{children:[Jc(r,t),Le(s)?null:i("th",{title:e,children:e}),At(n,({component:s,getComponentProps:n},a)=>i("td",{children:i(s,{...lr(n,e,a),...t,cellId:a})},a)),Jc(l,t,1)]},e)})})]}),Yc=({thing:e,onThingChange:t,className:s,hasSchema:n,showType:a=!0})=>{const[o,r]=or(),[l,d]=or(),[u,h]=or(),[g,w]=or(),[m,p]=or();l!==e&&(r(js(e)),d(e),h(e+""),w(Number(e)||0),p(!!e));const y=Xo((e,s)=>{s(e),d(e),t(e)},[t]),f=Xo(()=>{if(!n?.()){const e=Qs(o,v,I,b),s=Qs(e,u,g,m);r(e),d(s),t(s)}},[n,t,u,g,m,o]),C=Qs(o,i("input",{value:u,onChange:Xo(e=>y(e[ee][te]+"",h),[y])},o),i("input",{type:"number",value:g,onChange:Xo(e=>y(Number(e[ee][te]||0),w),[y])},o),i("input",{type:"checkbox",checked:m,onChange:Xo(e=>y(!!e[ee].checked,p),[y])},o));return c("div",{className:s,children:[a&&C?i("button",{title:o,className:o,onClick:f,children:o}):null,C]})},Kc=({tableId:e,rowId:t,cellId:s,store:n,className:a,showType:o})=>{const[r,l]=gl(e,t,s,n);return i(Yc,{thing:r,onThingChange:l,className:a??zc+H,showType:o,hasSchema:Jr(n)?.hasTablesSchema})},Xc=({valueId:e,store:t,className:s,showType:n})=>{const[a,o]=yl(e,t);return i(Yc,{thing:a,onThingChange:o,className:s??zc+_,showType:n,hasSchema:Jr(t)?.hasValuesSchema})},ed=(e,t,s,n)=>{const a=ke(t)||!Ae(e)?e:et(e,(e,s)=>s>0?[t,e]:e);return s?[n,":{",a,"}"]:a},td=({checkpoints:e,checkpointId:t,debugIds:s})=>ed(bc(t,e)??w,void 0,s,t),sd=({queryId:e,rowId:t,cellId:s,queries:n,debugIds:a})=>ed(w+(ji(e,t,s,n)??w),void 0,a,s),nd=({queryId:e,rowId:t,queries:s,resultCellComponent:n=sd,getResultCellComponentProps:a,separator:o,debugIds:r})=>ed(et(Ui(e,t,s),o=>i(n,{...lr(a,o),queryId:e,rowId:t,cellId:o,queries:s,debugIds:r},o)),o,r,t),ad=({tableId:e,rowId:t,cellId:s,store:n,debugIds:a})=>ed(w+(hl(e,t,s,n)??w),void 0,a,s),od=({tableId:e,rowId:t,store:s,cellComponent:n=ad,getCellComponentProps:a,customCellIds:o,separator:r,debugIds:l})=>ed(et(((e,t,s,n)=>{const a=dl(t,s,n);return e??a})(o,e,t,s),o=>i(n,{...lr(a,o),tableId:e,rowId:t,cellId:o,store:s,debugIds:l},o)),r,l,t),rd=({tableId:e,store:t,rowComponent:s=od,getRowComponentProps:n,customCellIds:a,separator:o,debugIds:r},l)=>ed(et(l,o=>i(s,{...lr(n,o),tableId:e,rowId:o,customCellIds:a,store:t,debugIds:r},o)),o,r,e),ld=({queryId:e,queries:t,resultRowComponent:s=nd,getResultRowComponentProps:n,separator:a,debugIds:o},r)=>ed(et(r,a=>i(s,{...lr(n,a),queryId:e,rowId:a,queries:t,debugIds:o},a)),a,o,e),id=({relationshipId:e,relationships:t,rowComponent:s=od,getRowComponentProps:n,separator:a,debugIds:o},r,l)=>{const[c,d,u]=ir(ki(t),e),h=r(e,l,c);return ed(et(h,e=>i(s,{...lr(n,e),tableId:u,rowId:e,store:d,debugIds:o},e)),a,o,l)},cd=e=>({checkpoints:t,checkpointComponent:s=td,getCheckpointComponentProps:n,separator:a,debugIds:o})=>{const r=wc(t);return ed(et(e(pc(r)),e=>i(s,{...lr(n,e),checkpoints:r,checkpointId:e,debugIds:o},e)),a)},dd=cd(e=>e[0]),ud=cd(e=>ke(e[1])?[]:[e[1]]),hd=cd(e=>e[2]),gd=({indexId:e,sliceId:t,indexes:s,rowComponent:n=od,getRowComponentProps:a,separator:o,debugIds:r})=>{const[l,c,d]=cr(pi(s),e),u=yi(e,t,l);return ed(et(u,e=>i(n,{...lr(a,e),tableId:d,rowId:e,store:c,debugIds:r},e)),o,r,t)},wd=({indexId:e,indexes:t,sliceComponent:s=gd,getSliceComponentProps:n,separator:a,debugIds:o})=>ed(et(Ii(e,t),a=>i(s,{...lr(n,a),indexId:e,sliceId:a,indexes:t,debugIds:o},a)),a,o,e),md=e=>id(e,Mi,e.firstRowId),pd=e=>id(e,qi,e.remoteRowId),bd=({metricId:e,metrics:t,debugIds:s})=>ed(ui(e,t)??w,void 0,s,e),Id=({relationshipId:e,localRowId:t,relationships:s,rowComponent:n=od,getRowComponentProps:a,debugIds:o})=>{const[r,l,,c]=ir(ki(s),e),d=Li(e,t,r);return ed(ke(c)||ke(d)?null:i(n,{...lr(a,d),tableId:c,rowId:d,store:l,debugIds:o},d),void 0,o,t)},vd=({cellId:e,descending:t,offset:s,limit:n,...a})=>ld(a,zi(a.queryId,e,t,s,n,a.queries)),yd=e=>ld(e,Bi(e.queryId,e.queries)),fd=({cellId:e,descending:t,offset:s,limit:n,...a})=>rd(a,rl(a.tableId,e,t,s,n,a.store)),Cd=e=>rd(e,ol(e.tableId,e.store)),Td=({store:e,tableComponent:t=Cd,getTableComponentProps:s,separator:n,debugIds:a})=>ed(et(Kr(e),n=>i(t,{...lr(s,n),tableId:n,store:e,debugIds:a},n)),n),Sd=({valueId:e,store:t,debugIds:s})=>ed(w+(vl(e,t)??w),void 0,s,e),Rd=({store:e,valueComponent:t=Sd,getValueComponentProps:s,separator:n,debugIds:a})=>ed(et(bl(e),n=>i(t,{...lr(s,n),valueId:n,store:e,debugIds:a},n)),n),kd=(e,t)=>et(sl(e,t),t=>e+p+t),Dd=({localRowId:e,params:[t,s,n,a,o,r,l,u,h]})=>{const g=Li(o,e,r),w={tableId:n??"",rowId:e,store:l};return c("tr",{children:[Jc(u,w),Le(t)?null:c(d,{children:[i("th",{title:e,children:e}),i("th",{title:g,children:g})]}),At(s,({component:t,getComponentProps:s},o)=>{const[r,c]=ue(o,p,2),d=r===n?e:r===a?g:void 0;return ke(d)?null:i("td",{children:i(t,{...lr(s,d,c),store:l,tableId:r,rowId:d,cellId:c})},o)}),Jc(h,w,1)]})},xd=({relationshipId:e,relationships:t,editable:s,customCells:n,extraCellsBefore:a,extraCellsAfter:o,className:r,headerRow:l,idColumn:u=!0})=>{const[h,g,w,m]=ir(ki(t),e),p=Bc([...kd(w,g),...kd(m,g)],n,s?Kc:ad),b=Fc(u,p,w,m,e,h,g,a,o);return c("table",{className:r,children:[Le(l)?null:i("thead",{children:c("tr",{children:[jc(a),Le(u)?null:c(d,{children:[c("th",{children:[w,".Id"]}),c("th",{children:[m,".Id"]})]}),At(p,({label:e},t)=>i("th",{children:e},t)),jc(o,1)]})}),i("tbody",{children:et(ol(w,g),e=>i(Dd,{localRowId:e,params:b},e))})]})},Ld=(e,t=!1,s,n=0,a,o,r,l)=>{const[[c,d,u],h]=or([e,t,n]),g=Xo(e=>{h(e),l?.(e)},[l]),w=Wc(e=>g([e,e==c&&!d,u]),[g,c,d,u],s),m=Xo(e=>g([c,d,e]),[g,c,d]),p=xe(r)?qd:r;return[[c,d,u],w,nr(()=>Le(r)?null:i(p,{offset:u,limit:a,total:o,onChange:m}),[r,p,u,a,o,m])]},qd=({onChange:e,total:t,offset:s=0,limit:n=t,singular:a="row",plural:o=a+"s"})=>{(s>t||s<0)&&(s=0,e(0));const r=Wc(()=>e(s-n),[e,s,n],s>0),l=Wc(()=>e(s+n),[e,s,n],s+n<t);return c(d,{children:[t>n&&c(d,{children:[i("button",{className:"previous",disabled:0==s,onClick:r,children:"←"}),i("button",{className:"next",disabled:s+n>=t,onClick:l,children:"→"}),s+1," to ",Ce(t,s+n)," of "]}),t," ",1!=t?o:a]})},Md=({queryId:e,cellId:t,descending:s,offset:n,limit:a,queries:o,sortOnClick:r,paginator:l=!1,customCells:c,extraCellsBefore:d,extraCellsAfter:u,onChange:h,...g})=>{const[w,m,p]=Ld(t,s,r,n,a,Fi(e,o),l,h);return i(Qc,{...g,params:Fc(Bc(Wi(e,o),c,sd),_c(o,e),zi(e,...w,a,o),d,u,w,m,p)})},Nd=({queryId:e,queries:t,customCells:s,extraCellsBefore:n,extraCellsAfter:a,...o})=>i(Qc,{...o,params:Fc(Bc(Wi(e,t),s,sd),_c(t,e),Bi(e,t),n,a)}),Ed=({indexId:e,sliceId:t,indexes:s,editable:n,customCells:a,extraCellsBefore:o,extraCellsAfter:r,...l})=>{const[c,d,u]=cr(pi(s),e);return i(Qc,{...l,params:Fc(Bc(sl(u,d),a,n?Kc:ad),Zc(d,u),yi(e,t,c),o,r)})},Pd=({tableId:e,cellId:t,descending:s,offset:n,limit:a,store:o,editable:r,sortOnClick:l,paginator:c=!1,onChange:d,customCells:u,extraCellsBefore:h,extraCellsAfter:g,...w})=>{const[m,p,b]=Ld(t,s,l,n,a,al(e,o),c,d);return i(Qc,{...w,params:Fc(Bc(sl(e,o),u,r?Kc:ad),Zc(o,e),rl(e,...m,a,o),h,g,m,p,b)})},Ad=({tableId:e,store:t,editable:s,customCells:n,extraCellsBefore:a,extraCellsAfter:o,...r})=>i(Qc,{...r,params:Fc(Bc(sl(e,t),n,s?Kc:ad),Zc(t,e),ol(e,t),a,o)}),Vd=(e=[],t,s=0)=>et(e,({component:e},n)=>i("td",{className:ae,children:i(e,{...t})},Uc(n,s))),$d=({store:e,editable:t=!1,valueComponent:s=(t?Xc:Sd),getValueComponentProps:n,extraCellsBefore:a,extraCellsAfter:o,className:r,headerRow:l,idColumn:d})=>c("table",{className:r,children:[!1===l?null:i("thead",{children:c("tr",{children:[jc(a),!1===d?null:i("th",{children:"Id"}),i("th",{children:_}),jc(o,1)]})}),i("tbody",{children:et(bl(e),t=>{const r={valueId:t,store:e};return c("tr",{children:[Vd(a,r),Le(d)?null:i("th",{title:t,children:t}),i("td",{children:i(s,{...lr(n,t),...r})}),Vd(o,r,1)]},t)})})]}),Od="tinybaseInspector",Hd="TinyBase Inspector",Zd=["left","top","bottom","right","full"],_d="state",Wd="sort",Fd="open",Bd="position",zd=Fd,Jd="editable",Ud=(...e)=>Cs(e),jd=(e,t)=>et(Ye([...e]),t),Gd=(e,t)=>[!!hl(_d,e,Jd,t),Xo(s=>{t.setCell(_d,e,Jd,e=>!e),s.preventDefault()},[t,e])],Qd=({s:e})=>{const t=vl(Bd,e)??1,s=Ll(zd,()=>!0,[],e);return vl(zd,e)?null:i("img",{onClick:s,title:Hd,"data-position":t})},Yd=({uniqueId:e,title:t,editable:s,handleEditable:n,children:a,s:o})=>{const r=!!hl(_d,e,Fd,o),l=kl(_d,e,Fd,e=>e[ee].open,[],o);return c("details",{open:r,onToggle:l,children:[c("summary",{children:[i("span",{children:t}),n?i("img",{onClick:n,className:s?"done":"edit",title:s?"Done editing":"Edit"}):null]}),i("div",{children:a})]})},Kd=({indexes:e,indexesId:t,indexId:s,s:n})=>i(Yd,{uniqueId:Ud("i",t,s),title:"Index: "+s,s:n,children:et(Ii(s,e),a=>i(Xd,{indexes:e,indexesId:t,indexId:s,sliceId:a,s:n},a))}),Xd=({indexes:e,indexesId:t,indexId:s,sliceId:n,s:a})=>{const o=Ud("i",t,s,n),[r,l]=Gd(o,a);return i(Yd,{uniqueId:o,title:"Slice: "+n,editable:r,handleEditable:l,s:a,children:i(Ed,{sliceId:n,indexId:s,indexes:e,editable:r})})},eu=({indexesId:e,s:t})=>{const s=mi(e),n=vi(s);return ke(s)?null:i(Yd,{uniqueId:Ud("i",e),title:"Indexes: "+(e??T),s:t,children:st(n)?"No indexes defined":jd(n,n=>i(Kd,{indexes:s,indexesId:e,indexId:n,s:t},n))})},tu=({metrics:e,metricId:t})=>c("tr",{children:[i("th",{title:t,children:t}),i("td",{children:e?.getTableId(t)}),i("td",{children:ui(t,e)})]}),su=({metricsId:e,s:t})=>{const s=li(e),n=di(s);return ke(s)?null:i(Yd,{uniqueId:Ud("m",e),title:"Metrics: "+(e??T),s:t,children:st(n)?"No metrics defined":c("table",{children:[c("thead",{children:[i("th",{children:"Metric Id"}),i("th",{children:"Table Id"}),i("th",{children:"Metric"})]}),i("tbody",{children:et(n,e=>i(tu,{metrics:s,metricId:e},e))})]})})},nu=({queries:e,queriesId:t,queryId:s,s:n})=>{const a=Ud("q",t,s),[o,r,l]=fs(hl(_d,a,Wd,n)??"[]"),c=kl(_d,a,Wd,Cs,[],n);return i(Yd,{uniqueId:a,title:"Query: "+s,s:n,children:i(Md,{queryId:s,queries:e,cellId:o,descending:r,offset:l,limit:10,paginator:!0,sortOnClick:!0,onChange:c})})},au=({queriesId:e,s:t})=>{const s=$i(e),n=Zi(s);return ke(s)?null:i(Yd,{uniqueId:Ud("q",e),title:"Queries: "+(e??T),s:t,children:st(n)?"No queries defined":jd(n,n=>i(nu,{queries:s,queriesId:e,queryId:n,s:t},n))})},ou=({relationships:e,relationshipsId:t,relationshipId:s,s:n})=>{const a=Ud("r",t,s),[o,r]=Gd(a,n);return i(Yd,{uniqueId:a,title:"Relationship: "+s,editable:o,handleEditable:r,s:n,children:i(xd,{relationshipId:s,relationships:e,editable:o})})},ru=({relationshipsId:e,s:t})=>{const s=Ri(e),n=xi(s);return ke(s)?null:i(Yd,{uniqueId:Ud("r",e),title:"Relationships: "+(e??T),s:t,children:st(n)?"No relationships defined":jd(n,n=>i(ou,{relationships:s,relationshipsId:e,relationshipId:n,s:t},n))})},lu=(e,t)=>{let s,n=0;for(;t(s=e+(n>0?" (copy"+(n>1?" "+n:"")+")":""));)n++;return s},iu=({actions:e,...t})=>{const[s,n]=or(),a=Xo(()=>n(void 0),[]);if(tr(()=>{if(!ke(s)){const e=e=>{ke(s)||"Escape"!==e.key||(e.preventDefault(),a())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}},[s,a]),ke(s))return e.map(([e,t],s)=>i("img",{title:t,className:e,onClick:()=>n(s)},s));{const[,,n]=e[s];return c(d,{children:[i(n,{onDone:a,...t}),i("img",{onClick:a,title:"Cancel",className:"cancel"})]})}},cu=({onDone:e,suggestedId:t,has:s,set:n,prompt:a="New Id"})=>{const[o,r]=or(t),[l,u]=or(!0),[h,g]=or(t),w=Xo(()=>{s(o)?u(!1):(n(o),e())},[e,u,s,n,o]),m=Xo(e=>{"Enter"===e.key&&(e.preventDefault(),w())},[w]);return t!=h&&(r(t),g(t)),c(d,{children:[a+": ",i("input",{type:"text",value:o,onChange:e=>{r(e.target.value),u(!s(e.target.value))},onKeyDown:m,autoFocus:!0})," ",i("img",{onClick:w,title:l?"Confirm":"Id already exists",className:l?"ok":"okDis"})]})},du=({onClick:e,prompt:t="Delete"})=>{const s=Xo(t=>{"Enter"===t.key&&(t.preventDefault(),e())},[e]);return tr(()=>(document.addEventListener("keydown",s),()=>document.removeEventListener("keydown",s)),[s]),c(d,{children:[t,"? ",i("img",{onClick:e,title:"Confirm",className:"ok"})]})},uu=({left:e,right:t})=>c("div",{className:"actions",children:[i("div",{children:e}),i("div",{children:t})]}),hu=e=>{const t=Jr(e);return Xo(e=>t?.hasTable(e)??!1,[t])},gu=({onDone:e,store:t})=>{const s=hu(t);return i(cu,{onDone:e,suggestedId:lu("table",s),has:s,set:Cl(e=>e,()=>({row:{cell:""}}),[],t),prompt:"Add table"})},wu=({onDone:e,store:t})=>i(du,{onClick:ql(t,e),prompt:"Delete all tables"}),mu=({store:e})=>i(uu,{left:i(iu,{actions:[["add","Add table",gu]],store:e}),right:Gr(e)?i(iu,{actions:[["delete","Delete all tables",wu]],store:e}):null}),pu=({onDone:e,tableId:t,store:s})=>{const n=fu(s,t);return i(cu,{onDone:e,suggestedId:lu("row",n),has:n,set:Tl(t,e=>e,(e,s)=>Lt(et(s.getTableCellIds(t),e=>[e,""]))),prompt:"Add row"})},bu=({onDone:e,tableId:t,store:s})=>{const n=Jr(s),a=hu(n);return i(cu,{onDone:e,suggestedId:lu(t,a),has:a,set:Cl(e=>e,(e,s)=>s.getTable(t)),prompt:"Clone table to"})},Iu=({onDone:e,tableId:t,store:s})=>i(du,{onClick:Ml(t,s,e),prompt:"Delete table"}),vu=({tableId:e,store:t})=>i(iu,{actions:[["add","Add row",pu]],store:t,tableId:e}),yu=({tableId:e,store:t})=>i(iu,{actions:[["clone","Clone table",bu],["delete","Delete table",Iu]],store:t,tableId:e}),fu=(e,t)=>{const s=Jr(e);return Xo(e=>s?.hasRow(t,e)??!1,[s,t])},Cu=({onDone:e,tableId:t,rowId:s,store:n})=>{const a=Jr(n),o=Xo(e=>a.hasCell(t,s,e),[a,t,s]);return i(cu,{onDone:e,suggestedId:lu("cell",o),has:o,set:kl(t,s,e=>e,()=>"",[],a),prompt:"Add cell"})},Tu=({onDone:e,tableId:t,rowId:s,store:n})=>{const a=Jr(n),o=fu(a,t);return i(cu,{onDone:e,suggestedId:lu(s,o),has:o,set:Tl(t,e=>e,(e,n)=>n.getRow(t,s),[s]),prompt:"Clone row to"})},Su=({onDone:e,tableId:t,rowId:s,store:n})=>i(du,{onClick:Nl(t,s,n,e),prompt:"Delete row"}),Ru=({onDone:e,tableId:t,rowId:s,cellId:n,store:a})=>i(du,{onClick:El(t,s,n,!0,a,e),prompt:"Delete cell"}),ku=({tableId:e,rowId:t,cellId:s,store:n})=>i(iu,{actions:[["delete","Delete cell",Ru]],store:n,tableId:e,rowId:t,cellId:s}),Du=[{label:"",component:({tableId:e,rowId:t,store:s})=>i(iu,{actions:[["add","Add cell",Cu],["clone","Clone row",Tu],["delete","Delete row",Su]],store:s,tableId:e,rowId:t})}],xu=e=>c(d,{children:[i(Kc,{...e}),ul(e.tableId,e.rowId,e.cellId,e.store)&&i(ku,{...e})]}),Lu=({tableId:e,store:t,storeId:s,s:n})=>{const a=Ud("t",s,e),[o,r,l]=fs(hl(_d,a,Wd,n)??"[]"),d=kl(_d,a,Wd,Cs,[],n),[u,h]=Gd(a,n),g=u?xu:ad;return c(Yd,{uniqueId:a,title:N+": "+e,editable:u,handleEditable:h,s:n,children:[i(Pd,{tableId:e,store:t,cellId:o,descending:r,offset:l,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u,extraCellsAfter:u?Du:[],customCells:Lt(et(sl(e,t),e=>[e,{label:e,component:g}]))}),u?c("div",{className:"actions",children:[i("div",{children:i(vu,{tableId:e,store:t})}),i("div",{children:i(yu,{tableId:e,store:t})})]}):null]})},qu=({store:e,storeId:t,s:s})=>{const n=Ud("ts",t),[a,o]=Gd(n,s),r=Kr(e);return c(Yd,{uniqueId:n,title:E,editable:a,handleEditable:o,s:s,children:[st(r)?i("caption",{children:"No tables."}):jd(r,n=>i(Lu,{store:e,storeId:t,tableId:n,s:s},n)),a?i(mu,{store:e}):null]})},Mu=e=>{const t=Jr(e);return Xo(e=>t?.hasValue(e)??!1,[t])},Nu=({onDone:e,store:t})=>{const s=Mu(t);return i(cu,{onDone:e,suggestedId:lu("value",s),has:s,set:Ll(e=>e,()=>"",[],t),prompt:"Add value"})},Eu=({onDone:e,store:t})=>i(du,{onClick:Pl(t,e),prompt:"Delete all values"}),Pu=({store:e})=>i(uu,{left:i(iu,{actions:[["add","Add value",Nu]],store:e}),right:wl(e)?i(iu,{actions:[["delete","Delete all values",Eu]],store:e}):null}),Au=({onDone:e,valueId:t,store:s})=>{const n=Mu(s);return i(cu,{onDone:e,suggestedId:lu(t,n),has:n,set:Ll(e=>e,(e,s)=>s.getValue(t)??"",[t],s),prompt:"Clone value to"})},Vu=({onDone:e,valueId:t,store:s})=>i(du,{onClick:Al(t,s,e),prompt:"Delete value"}),$u=[{label:"",component:({valueId:e,store:t})=>i(iu,{actions:[["clone","Clone value",Au],["delete","Delete value",Vu]],store:t,valueId:e})}],Ou=({store:e,storeId:t,s:s})=>{const n=Ud("v",t),[a,o]=Gd(n,s);return c(Yd,{uniqueId:n,title:W,editable:a,handleEditable:o,s:s,children:[st(bl(e))?i("caption",{children:"No values."}):i($d,{store:e,editable:a,extraCellsAfter:a?$u:[]}),a?i(Pu,{store:e}):null]})},Hu=({storeId:e,s:t})=>{const s=Br(e);return ke(s)?null:c(Yd,{uniqueId:Ud("s",e),title:(s.isMergeable()?"Mergeable":"")+"Store: "+(e??T),s:t,children:[i(Ou,{storeId:e,store:s,s:t}),i(qu,{storeId:e,store:s,s:t})]})},Zu=({s:e})=>{const t=ar(null),s=ar(0),[n,a]=or(!1),{scrollLeft:o,scrollTop:r}=ml(e);sr(()=>{const e=t.current;if(e&&!n){const t=new MutationObserver(()=>{e.scrollWidth>=Te(o)+e.clientWidth&&e.scrollHeight>=Te(r)+e.clientHeight&&e.scrollTo(o,r)});return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}},[n,o,r]);const l=Xo(t=>{const{scrollLeft:n,scrollTop:o}=t[ee];cancelIdleCallback(s.current),s.current=requestIdleCallback(()=>{a(!0),e.setPartialValues({scrollLeft:n,scrollTop:o})})},[e]),d=Br(),u=Fr(),h=li(),g=ri(),w=mi(),m=wi(),p=Ri(),b=Si(),I=$i(),v=Vi();return ke(d)&&st(u)&&ke(h)&&st(g)&&ke(w)&&st(m)&&ke(p)&&st(b)&&ke(I)&&st(v)?i("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):c("article",{ref:t,onScroll:l,children:[i(Hu,{s:e}),et(u,t=>i(Hu,{storeId:t,s:e},t)),i(su,{s:e}),et(g,t=>i(su,{metricsId:t,s:e},t)),i(eu,{s:e}),et(m,t=>i(eu,{indexesId:t,s:e},t)),i(ru,{s:e}),et(b,t=>i(ru,{relationshipsId:t,s:e},t)),i(au,{s:e}),et(v,t=>i(au,{queriesId:t,s:e},t))]})};class _u extends Yo{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?i("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const Wu=({s:e})=>{const t=vl(Bd,e)??1,s=Ll(zd,()=>!1,[],e),n=Ll(Bd,e=>Number(e[ee].dataset.id),[],e);return c("header",{children:[i("img",{className:"flat",title:Hd,onClick:()=>open("https://tinybase.org","_blank")}),i("span",{children:Hd}),et(Zd,(e,s)=>s==t?null:i("img",{onClick:n,"data-id":s,title:"Dock to "+e},s)),i("img",{className:"flat",onClick:s,title:"Close"})]})},Fu=({s:e})=>{const t=vl(Bd,e)??1;return vl(zd,e)?c("main",{"data-position":t,children:[i(Wu,{s:e}),i(_u,{children:i(Zu,{s:e})})]}):null},Bu='url("',zu=(e,t="white")=>({content:Bu+`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='${t}'><path d='${e}' /></svg>")`}),Ju="v560h120v-560h-120Z",Uu="v560h360v-560h-360Z",ju="v120h560v-120h-560Z",Gu="v360h560v-360h-560Z",Qu={content:Bu+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")"},Yu=et([`M200-760${Ju} M400-760${Uu}`,`M200-760${ju} M200-560${Gu}`,`M200-760${Gu} M200-320${ju}`,`M200-760${Uu} M640-760${Ju}`],e=>zu("M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z"+e));rt(Yu,zu("M120-120v-200h80v120h120v80H120Zm520 0v-80h120v-120h80v200H640ZM120-640v-200h200v80H200v120h-80Zm640 0v-120H640v-80h200v200h-80Z"));const Ku=zu("m336-280-56-56 144-144-144-143 56-56 144 144 143-144 56 56-144 143 144 144-56 56-143-144-144 144Z"),Xu=zu("M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z"),eh=zu("m622-453-56-56 82-82-57-57-82 82-56-56 195-195q12-12 26.5-17.5T705-840q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L622-453ZM200-200h57l195-195-28-29-29-28-195 195v57ZM792-56 509-338 290-120H120v-169l219-219L56-792l57-57 736 736-57 57Zm-32-648-56-56 56 56Zm-169 56 57 57-57-57ZM424-424l-29-28 57 57-28-29Z"),th=zu("M440-280h80v-160h160v-80H520v-160h-80v160H280v80h160v160ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z"),sh=zu("M520-400h80v-120h120v-80H600v-120h-80v120H400v80h120v120ZM320-240q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320Zm0-80h480v-480H320v480ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm160-720v480-480Z"),nh=zu("M280-120q-33 0-56.5-23.5T200-200v-520h-40v-80h200v-40h240v40h200v80h-40v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM360-280h80v-360h-80v360Zm160 0h80v-360h-80v360ZM280-720v520-520Z"),ah=zu("m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(127,255,127)"),oh=zu("m40-120 440-760 440 760H40Zm138-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm-40-120h80v-200h-80v200Zm40-100Z","rgb(255,255,127)"),rh=zu("m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(255,127,127)"),lh=zu("M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z"),ih=zu("M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z"),ch="*::-webkit-scrollbar",dh="background",uh="width",hh="max-"+uh,gh="min-"+uh,wh="height",mh="border",ph=mh+"-radius",bh="padding",Ih="margin",vh=Ih+"-right",yh="top",fh="bottom",Ch="left",Th="right",Sh="color",Rh="position",kh="box-shadow",Dh="font-size",xh="display",Lh="overflow",qh="cursor",Mh="vertical-align",Nh="text-align",Eh="justify-content",Ph="fixed",Ah="revert",Vh="unset",$h="none",Oh="flex",Hh="pointer",Zh="auto",_h="hidden",Wh="nowrap",Fh=(e,t="% 0.01 "+Bh("hue"))=>`oklch(${e}${t})`,Bh=e=>`var(--${e})`,zh=(...e)=>e.join("rem ")+"rem",Jh=(...e)=>e.join("px ")+"px",Uh=(e=100)=>e+"vw",jh=(e=100)=>e+"vh",Gh=Xe(At({"":{all:"initial",[Dh]:zh(.75),[Rh]:Ph,"font-family":"inter,sans-serif","z-index":999999,"--bg":Fh(20),"--bg2":Fh(15),"--bg3":Fh(25),"--bg4":Fh(30),"--fg":Fh(85),"--fg2":Fh(60),["--"+mh]:Jh(1)+" solid "+Bh("bg4"),["--"+kh]:Jh(0,1,2,0)+" #0007"},"*":{all:Ah},"*::before":{all:Ah},"*::after":{all:Ah},[ch]:{[uh]:zh(.5),[wh]:zh(.5)},[ch+"-thumb"]:{[dh]:Bh("bg4")},[ch+"-thumb:hover"]:{[dh]:Bh("bg4")},[ch+"-corner"]:{[dh]:$h},[ch+"-track"]:{[dh]:$h},img:{[uh]:zh(.8),[wh]:zh(.8),[Mh]:"text-"+fh,[qh]:Hh,[Ih]:Jh(-2.5,2,-2.5,0),[bh]:Jh(2),[mh]:Bh(mh),[dh]:Bh("bg3"),[kh]:Bh(kh),[ph]:zh(.25)},"img.flat":{[mh]:$h,[dh]:$h,[kh]:$h},">img":{[bh]:zh(.25),[fh]:0,[Th]:0,[Rh]:Ph,[wh]:Vh,[Ih]:0,...Qu},...Lt(et([{[fh]:0,[Ch]:0},{[yh]:0,[Th]:0}],(e,t)=>[`>img[data-position='${t}']`,e])),main:{[xh]:Oh,[Sh]:Bh("fg"),[dh]:Bh("bg"),[Lh]:_h,[Rh]:Ph,[kh]:Bh(kh),"flex-direction":"column"},...Lt(et([{[fh]:0,[Ch]:0,[uh]:Uh(35),[wh]:jh(),[mh+"-"+Th]:Bh(mh)},{[yh]:0,[Th]:0,[uh]:Uh(),[wh]:jh(30),[mh+"-"+fh]:Bh(mh)},{[fh]:0,[Ch]:0,[uh]:Uh(),[wh]:jh(30),[mh+"-"+yh]:Bh(mh)},{[yh]:0,[Th]:0,[uh]:Uh(35),[wh]:jh(),[mh+"-"+Ch]:Bh(mh)},{[yh]:0,[Th]:0,[uh]:Uh(),[wh]:jh()}],(e,t)=>[`main[data-position='${t}']`,e])),header:{[xh]:Oh,[bh]:zh(.5),[kh]:Bh(kh),[dh]:Fh(30,"% 0.008 var(--hue) / .5"),[uh]:"calc(100% - .5rem)",[Rh]:"absolute",[mh+"-"+fh]:Bh(mh),"align-items":"center","backdrop-filter":"blur(4px)"},"header>img:nth-of-type(1)":{[wh]:zh(1),[uh]:zh(1),...Qu},"header>img:nth-of-type(6)":Ku,...Lt(et(Yu,(e,t)=>[`header>img[data-id='${t}']`,e])),"header>span":{[Lh]:_h,[Oh]:1,"font-weight":800,"white-space":Wh,"text-overflow":"ellipsis"},article:{[Lh]:Zh,[Oh]:1,[bh+"-"+yh]:zh(2)},details:{[Ih]:zh(.5),[mh]:Bh(mh),[ph]:zh(.25)},summary:{[dh]:Bh("bg3"),[Ih]:Jh(-1),[mh]:Bh(mh),[bh]:zh(.25,.125),[xh]:Oh,[ph]:zh(.25),"user-select":$h,[Eh]:"space-between","align-items":"center"},"summary>span::before":{[xh]:"inline-block",[Mh]:"sub",[Ih]:Jh(2),[uh]:zh(1),[wh]:zh(1),...ih},"details[open]>summary":{"border-bottom-left-radius":0,"border-bottom-right-radius":0,[Ih+"-"+fh]:0},"details[open]>summary>span::before":lh,"details>summary img":{[xh]:$h},"details[open]>summary img":{[xh]:Vh,[Ih+"-"+Ch]:zh(.25)},"details>div":{[Lh]:Zh},caption:{[Sh]:Bh("fg2"),[bh]:zh(.25,.5),[Nh]:Ch,"white-space":Wh},"caption button":{[uh]:zh(1.5),[mh]:$h,[dh]:$h,[Sh]:Bh("fg"),[bh]:0,[qh]:Hh},"caption button[disabled]":{[Sh]:Bh("fg2")},".actions":{[bh]:zh(.75,.5),[Ih]:0,[xh]:Oh,[mh+"-"+yh]:Bh(mh),[Eh]:"space-between"},table:{[gh]:"100%","border-collapse":"collapse","table-layout":Ph},thead:{[dh]:Bh("bg")},[`th,#${Od} td`]:{[Lh]:_h,[bh]:zh(.25,.5),[hh]:zh(20),[mh]:Bh(mh),"text-overflow":"ellipsis","white-space":Wh,"border-width":Jh(1,0,0),[Nh]:Ch},"th:first-child":{[uh]:zh(3),[gh]:zh(3),[hh]:zh(3)},"th.sorted":{[dh]:Bh("bg3")},"td.extra":{[Nh]:Th},"tbody button":{[dh]:$h,[mh]:$h,[Dh]:0,[uh]:zh(.8),[wh]:zh(.8),[Sh]:Bh("fg2"),[Ih]:zh(0,.25,0,-.25),"line-height":zh(.8)},"tbody button:first-letter":{[Dh]:zh(.8)},input:{[dh]:Bh("bg2"),[Sh]:Vh,[bh]:Jh(4),[mh]:0,[Ih]:Jh(-4,0),[Dh]:Vh,[hh]:zh(6)},"input:focus":{"outline-width":0},'input[type="number"]':{[uh]:zh(3)},'input[type="checkbox"]':{[Mh]:Jh(-2)},".editableCell":{[xh]:"inline-block",[vh]:Jh(2)},"button.next":{[vh]:zh(.5)},"img.edit":Xu,"img.done":eh,"img.add":th,"img.clone":sh,"img.delete":nh,"img.ok":ah,"img.okDis":oh,"img.cancel":rh,"span.warn":{[Ih]:zh(2,.25),[Sh]:"#d81b60"}},(e,t)=>`#${Od} ${t}{${Xe(At(e,(e,t)=>`${t}:${e};`))}}`)),Qh=({position:e="right",open:t=!1,hue:s=270})=>{const n=Wr(In),a=Zd.indexOf(e);return kc(n,e=>Va(e,Od),void 0,async e=>{await e.load([{},{position:-1==a?1:a,open:!!t}]),await e.startAutoSave()}),c(d,{children:[c("aside",{id:Od,children:[i(Qd,{s:n}),i(Fu,{s:n})]}),c("style",{children:[`#${Od}{--hue:${s}}`,Gh]})]})};export{dd as BackwardCheckpointsView,ad as CellView,td as CheckpointView,ud as CurrentCheckpointView,Kc as EditableCellView,Xc as EditableValueView,hd as ForwardCheckpointsView,wd as IndexView,Qh as Inspector,md as LinkedRowsView,pd as LocalRowsView,Lo as Message,bd as MetricView,fr as OFFSET_CHECKPOINTS,Ir as OFFSET_INDEXES,br as OFFSET_METRICS,Cr as OFFSET_PERSISTER,yr as OFFSET_QUERIES,vr as OFFSET_RELATIONSHIPS,pr as OFFSET_STORE,Tr as OFFSET_SYNCHRONIZER,Ln as Persists,Rr as Provider,Dd as RelationshipInHtmlRow,xd as RelationshipInHtmlTable,Id as RemoteRowView,sd as ResultCellView,nd as ResultRowView,Md as ResultSortedTableInHtmlTable,vd as ResultSortedTableView,Nd as ResultTableInHtmlTable,yd as ResultTableView,od as RowView,Ed as SliceInHtmlTable,gd as SliceView,Pd as SortedTableInHtmlTable,qd as SortedTablePaginator,fd as SortedTableView,xn as Status,Ad as TableInHtmlTable,Cd as TableView,Td as TablesView,co as TinyBasePartyKitServer,Sd as ValueView,$d as ValuesInHtmlTable,Rd as ValuesView,zo as WsServerDurableObject,xs as addOrRemoveHash,oo as broadcastChanges,Na as createAutomergePersister,Mo as createBroadcastChannelSynchronizer,gs as createCheckpoints,Oa as createCrSqliteWasmPersister,Nn as createCustomPersister,xa as createCustomPostgreSqlPersister,La as createCustomSqlitePersister,qo as createCustomSynchronizer,Za as createDurableObjectStoragePersister,_a as createElectricSqlPersister,Wa as createExpoSqlitePersister,Fa as createFilePersister,ja as createIndexedDbPersister,Us as createIndexes,Ga as createLibSqlPersister,Aa as createLocalPersister,Eo as createLocalSynchronizer,fn as createMergeableStore,Sn as createMetrics,Dn as createMiddleware,$a as createOpfsPersister,eo as createPartyKitPersister,uo as createPglitePersister,ho as createPostgresPersister,go as createPowerSyncPersister,Do as createQueries,mo as createReactNativeMmkvPersister,po as createReactNativeSqlitePersister,xo as createRelationships,Io as createRemotePersister,Va as createSessionPersister,Co as createSqlite3Persister,vo as createSqliteBunPersister,yo as createSqliteWasmPersister,In as createStore,Qo as createWsServer,jo as createWsServerSimple,Oo as createWsSynchronizer,ko as createYjsPersister,Js as defaultSorter,Ns as getCellHash,Es as getCellInRowHash,Ds as getHash,zs as getHlcFunctions,Ps as getRowHash,As as getRowInTableHash,Vs as getTableHash,$s as getTableInTablesHash,Os as getTablesHash,vs as getUniqueId,Ms as getValueHash,qs as getValueInValuesHash,Ls as getValuesHash,Jo as getWsServerDurableObjectFetch,no as hasStoreInStorage,ao as loadStoreFromStorage,Ja as objectStoreMatch,Sl as useAddRowCallback,hl as useCell,dl as useCellIds,jl as useCellIdsListener,Ql as useCellListener,gl as useCellState,bc as useCheckpoint,pc as useCheckpointIds,Sc as useCheckpointIdsListener,Rc as useCheckpointListener,gc as useCheckpoints,hc as useCheckpointsIds,wc as useCheckpointsOrCheckpointsById,uc as useCreateCheckpoints,gi as useCreateIndexes,jr as useCreateMergeableStore,oi as useCreateMetrics,kc as useCreatePersister,Ai as useCreateQueries,Ti as useCreateRelationships,Wr as useCreateStore,Ec as useCreateSynchronizer,El as useDelCellCallback,Nl as useDelRowCallback,Ml as useDelTableCallback,ql as useDelTablesCallback,Al as useDelValueCallback,Pl as useDelValuesCallback,ai as useDidFinishTransactionListener,vc as useGoBackwardCallback,yc as useGoForwardCallback,fc as useGoToCallback,ul as useHasCell,Gl as useHasCellListener,ll as useHasRow,Jl as useHasRowListener,Xr as useHasTable,nl as useHasTableCell,Wl as useHasTableCellListener,Hl as useHasTableListener,Gr as useHasTables,Vl as useHasTablesListener,Il as useHasValue,ei as useHasValueListener,wl as useHasValues,Yl as useHasValuesListener,vi as useIndexIds,mi as useIndexes,wi as useIndexesIds,pi as useIndexesOrIndexesById,Mi as useLinkedRowIds,Pi as useLinkedRowIdsListener,qi as useLocalRowIds,Ei as useLocalRowIdsListener,ui as useMetric,di as useMetricIds,hi as useMetricListener,li as useMetrics,ri as useMetricsIds,ii as useMetricsOrMetricsById,oc as useParamValue,ic as useParamValueListener,rc as useParamValueState,nc as useParamValues,lc as useParamValuesListener,ac as useParamValuesState,xc as usePersister,Dc as usePersisterIds,Lc as usePersisterOrPersisterById,Mc as usePersisterStatus,Nc as usePersisterStatusListener,mc as useProvideCheckpoints,bi as useProvideIndexes,ci as useProvideMetrics,qc as useProvidePersister,Hi as useProvideQueries,Di as useProvideRelationships,Ur as useProvideStore,$c as useProvideSynchronizer,$i as useQueries,Vi as useQueriesIds,Oi as useQueriesOrQueriesById,Zi as useQueryIds,Tc as useRedoInformation,xi as useRelationshipIds,Ri as useRelationships,Si as useRelationshipsIds,ki as useRelationshipsOrRelationshipsById,Li as useRemoteRowId,Ni as useRemoteRowIdListener,ji as useResultCell,Ui as useResultCellIds,tc as useResultCellIdsListener,sc as useResultCellListener,Ji as useResultRow,Fi as useResultRowCount,Yi as useResultRowCountListener,Bi as useResultRowIds,Ki as useResultRowIdsListener,ec as useResultRowListener,zi as useResultSortedRowIds,Xi as useResultSortedRowIdsListener,_i as useResultTable,Wi as useResultTableCellIds,Qi as useResultTableCellIdsListener,Gi as useResultTableListener,il as useRow,al as useRowCount,Fl as useRowCountListener,ol as useRowIds,Bl as useRowIdsListener,Ul as useRowListener,cl as useRowState,kl as useSetCellCallback,Ic as useSetCheckpointCallback,cc as useSetParamValueCallback,dc as useSetParamValuesCallback,Rl as useSetPartialRowCallback,xl as useSetPartialValuesCallback,Tl as useSetRowCallback,Cl as useSetTableCallback,fl as useSetTablesCallback,Ll as useSetValueCallback,Dl as useSetValuesCallback,Ii as useSliceIds,fi as useSliceIdsListener,yi as useSliceRowIds,Ci as useSliceRowIdsListener,rl as useSortedRowIds,zl as useSortedRowIdsListener,_r as useSortedRowIdsListenerImpl,Ld as useSortingAndPagination,si as useStartTransactionListener,Br as useStore,Fr as useStoreIds,Jr as useStoreOrStoreById,zr as useStores,Ac as useSynchronizer,Pc as useSynchronizerIds,Vc as useSynchronizerOrSynchronizerById,Oc as useSynchronizerStatus,Hc as useSynchronizerStatusListener,el as useTable,sl as useTableCellIds,_l as useTableCellIdsListener,Kr as useTableIds,Ol as useTableIdsListener,Zl as useTableListener,tl as useTableState,Qr as useTables,$l as useTablesListener,Yr as useTablesState,Cc as useUndoInformation,vl as useValue,bl as useValueIds,Xl as useValueIdsListener,ti as useValueListener,yl as useValueState,ml as useValues,Kl as useValuesListener,pl as useValuesState,ni as useWillFinishTransactionListener};
|
|
Binary file
|
package/min/persisters/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=a=>(t,e,n)=>a(t)?n?.():e(t),l=globalThis,w=clearInterval,y=a=>null==a,d=a=>void 0===a,u=a=>null===a,E=c(y),N=c(d),g=t=>a(t)==s,$=a=>Array.isArray(a),A=(a,t,e)=>a.slice(t,e),O=a=>a.length,m=async a=>o.all(a),T=a=>{throw Error(a)},R=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},p=(a,t)=>a.forEach(t),v=(a,t="")=>a.join(t),I=(a,t)=>a.map(t),S=a=>0==O(a),_=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),b=a=>a.shift(),L=(a,t)=>a?.has(t)??!1,D=a=>d(a)||0==(a=>a?.size??0)(a),f=a=>[...a?.values()??[]],h=(a,t)=>a?.forEach(t),P=(a,t)=>a?.delete(t),M=Object,F=a=>M.getPrototypeOf(a),U=M.entries,G=M.keys,j=M.freeze,x=(a=[])=>M.fromEntries(a),B=(...a)=>M.assign({},...a),H=(a,t)=>(delete a[t],a),W=(a,t)=>I(U(a),([a,e])=>t(e,a)),Y=(a,t)=>x(W(a,(a,e)=>[e,t(a,e)])),X=a=>M.values(a),J=a=>O(G(a)),k=a=>(a=>!y(a)&&E(F(a),a=>a==M.prototype||y(F(a)),()=>!0))(a)&&0==J(a),z=a=>new Map(a),K=(a,t)=>a?.get(t),V=(a,t)=>I([...a?.entries()??[]],([a,e])=>t(e,a)),q=(a,t,e)=>d(e)?(P(a,t),a):a?.set(t,e),Q=(a,t,e,n)=>(L(a,t)?n?.(K(a,t)):q(a,t,e()),K(a,t)),Z=(a,t,e,n,s=0)=>N((e?Q:K)(a,t[s],s>O(t)-2?e:z),i=>{if(s>O(t)-2)return n?.(i)&&q(a,t[s]),i;const r=Z(i,t,e,n,s+1);return D(i)&&q(a,t[s]),r}),aa=/^\d+$/,ta=a=>new Set($(a)||d(a)?a:[a]),ea=(a,t)=>a?.add(t),na={Idle:0,Loading:1,Saving:2},sa={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ia=z(),ra=z(),oa=(a,t,n,s,i,r,o,c={},l=0,w=[])=>{let y,E,g,A=0,m=0,v=0;Q(ia,w,()=>0),Q(ra,w,()=>[]);const I=z(),[S,_,L,f,M]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!k(a)||!k(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!k(a)||!k(t),t.setContent]:T("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?b(a):null)??e+t++,t=>{aa.test(t)&&O(a)<1e3&&C(a,t)}]})(),s=z();return[(n,i,r,o=[],c=()=>[])=>{a??=oa;const l=t(1);return q(s,l,[n,i,r,o,c]),ea(Z(i,r??[e],ta),l),l},(t,n,...i)=>p(((a,t=[e])=>{const n=[],s=(a,e)=>e==O(t)?C(n,a):u(t[e])?h(a,a=>s(a,e+1)):p([t[e],null],t=>s(K(a,t),e+1));return s(a,0),n})(t,n),t=>h(t,t=>K(s,t)[0](a,...n??[],...i))),a=>N(K(s,a),([,t,i])=>(Z(t,i??[e],void 0,t=>(P(t,a),D(t)?1:0)),q(s,a),n(a),i)),t=>N(K(s,t),([t,,e=[],n,s])=>{const i=(...r)=>{const o=O(r);o==O(e)?t(a,...r,...s(r)):u(e[o])?p(n[o]?.(...r)??[],a=>i(...r,a)):i(...r,e[o])};i()})]})(),x=a=>{a!=A&&(A=a,U(I,void 0,A))},B=t=>{(S&&$(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},H=async a=>(2!=A&&(x(1),m++,await sa(async()=>{await R(async()=>{const e=await t();$(e)?B(e):a?M(a):T("Content is not an array: "+e)},()=>{a&&M(a)}),x(0)})),oa),W=async a=>(Y(),await H(a),await R(async()=>E=await s(async(a,t)=>{t||a?2!=A&&(x(1),m++,B(t??a),x(0)):await H()}),r),oa),Y=async()=>(E&&(await R(()=>i(E),r),E=void 0),oa),X=async a=>(1!=A&&(x(2),v++,await sa(async()=>{await R(()=>n(_,a),r),x(0)})),oa),J=async()=>(V(),await X(),g=a.addDidFinishTransactionListener(()=>{const a=L();f(a)&&X(a)}),oa),V=async()=>(g&&(a.delListener(g),g=void 0),oa),na=async(a=!1)=>{const[t,e]=a?[V,Y]:[Y,V];return await t(),await e(),oa},sa=async(...a)=>(C(K(ra,w),...a),await(async()=>{if(!K(ia,w)){for(q(ia,w,1);!d(y=b(K(ra,w)));)await R(y,r);q(ia,w,0)}})(),oa),oa={load:H,startAutoLoad:W,stopAutoLoad:Y,isAutoLoading:()=>!d(E),save:X,startAutoSave:J,stopAutoSave:V,isAutoSaving:()=>!d(g),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[J,W]:[W,J];return await e(a),await n(a),oa},stopAutoPersisting:na,getStatus:()=>A,addStatusListener:a=>F(a,I),delListener:t=>(G(t),a),schedule:sa,getStore:()=>a,destroy:()=>(K(ra,w).splice(0,void 0),na()),getStats:()=>({loads:m,saves:v}),...c};return j(oa)},ca=JSON.stringify,la=JSON.parse,wa=a=>ca(a,(a,t)=>d(t)?"":t),ya=new l.TextEncoder,da="_",ua="_id",Ea="SELECT",Na="WHERE",ga="TABLE",$a="INSERT",Aa="DELETE",Oa="UPDATE",ma="ALTER "+ga,Ta="FROM",Ra=Aa+" "+Ta,pa=Ea+"*"+Ta,va="pragma_",Ia="data_version",Sa="schema_version",_a="pragma_table_",Ca="CREATE ",ba=Ca+ga,La="OR REPLACE ",Da="FUNCTION",fa="$tableName",ha=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,Pa=a=>v(I(((a,t="",e)=>a.split(t,e))(a,"."),a=>`"${r(a,/"/g,'""')}"`),"."),Ma=(...a)=>Pa(v(a,"_")),Fa=(a,t=[1])=>v(I(a,()=>"$"+t[0]++),n),Ua=(a,t=i)=>Na+`(${r(t,fa,Pa(a))})`,Ga="ColumnName",ja="store",xa="json",Ba=ja+"TableName",Ha=ja+"Id"+Ga,Wa=ja+Ga,Ya="autoLoadIntervalSeconds",Xa="rowId"+Ga,Ja="tableId",ka="tableName",za="deleteEmptyColumns",Ka="deleteEmptyTable",Va="condition",qa={mode:xa,[Ya]:1},Qa={load:0,save:0,[ka]:t+"_values"},Za=(a,t,e,n,s)=>{const i=z();return Y(a,(a,r)=>{const o=A(X(B(t,g(a)?{[e]:a}:a)),0,J(t));u(o[0])||n(r,o[0])||(s(r,o[0]),q(i,r,o))}),i},at=a=>{const e=(a=>B(qa,g(a)?{[Ba]:a}:a??{}))(a),n=e[Ya];if(e.mode==xa){const a=e[Ba]??t;return[1,n,[a,e[Ha]??ua,e[Wa]??ja],ta(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=A(X(B(Qa,o)),0,J(Qa)),l=c[2],w=ta(l),y=ta(l),d=Za(s,{[Ja]:null,[Xa]:ua,[Va]:i},Ja,a=>L(y,a),a=>ea(w,a)),u=Za(r,{[ka]:null,[Xa]:ua,[za]:0,[Ka]:0,[Va]:null},ka,(a,t)=>L(y,t),(a,t)=>ea(w,t));var E;return E=(a,t)=>t[4]??=K(d,t[0])?.[2]??i,h(u,(a,t)=>E(0,a)),[0,n,[d,u,c],w]},tt=(a,t,e,s,r,o=et,c,l)=>{const w=z();return[async()=>{w.clear(),I(await e(a,t),({tn:a,cn:t})=>ea(Q(w,a,ta),t))},async(t,e,n)=>((a,t)=>L(K(w,a),t))(t,e)?x(_(I(await a(pa+Pa(t)+Ua(t,n)),a=>[a[e],l?Y(H(a,e),l):H(a,e)]),([a,t])=>!d(a)&&!k(t))):{},async(t,e,s,l,y,u=!1,E=i)=>{const N=ta();Y(s??{},a=>I(G(a??{}),a=>ea(N,a)));const g=f(N);if(!u&&y&&E==i&&S(g)&&L(w,t))return await a("DROP "+ga+Pa(t)),void q(w,t);const $=K(w,t),A=ta(f($));if(S(g)||(L(w,t)?await m(I([e,...g],async(n,s)=>{P(A,n)||(await a(ma+Pa(t)+"ADD"+Pa(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+Pa(t)+`(${Pa(e)})`),ea($,n))})):(await a(ba+Pa(t)+`(${Pa(e)}${r} PRIMARY KEY${v(I(g,a=>n+Pa(a)+r))});`),q(w,t,ta([e,...g])))),await m([...!u&&l?I(f(A),async n=>{n!=e&&(await a(ma+Pa(t)+"DROP"+Pa(n)),P($,n))}):[]]),u)d(s)?await a(Ra+Pa(t)+Ua(t,E)):await m(W(s,async(n,s)=>{d(n)?await a(Ra+Pa(t)+Ua(t,E)+`AND(${Pa(e)}=$1)`,[s]):S(g)||await o(a,t,e,G(n),{[s]:c?I(X(n),c):X(n)},$)}));else if(S(g))L(w,t)&&await a(Ra+Pa(t)+Ua(t,E));else{const n=_(f(K(w,t)),a=>a!=e),i={},r=[];Y(s??{},(a,t)=>{i[t]=I(n,t=>c?c(a?.[t]):a?.[t]),C(r,t)}),await o(a,t,e,n,i),await a(Ra+Pa(t)+Ua(t,E)+`AND${Pa(e)}NOT IN(${Fa(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await R(async()=>e=await t(),s),await a("END"),e}]},et=async(a,t,e,s,i)=>{const r=[1];await a($a+" INTO"+Pa(t)+"("+((...a)=>v(I(a,Pa),n))(e,...s)+")VALUES"+v(W(i,a=>"($"+r[0]+++","+Fa(a,r)+")"),n)+"ON CONFLICT("+Pa(e)+`)DO ${Oa} SET`+v(I(s,a=>Pa(a)+"=excluded."+Pa(a)),n),W(i,(a,t)=>[t,...I(a,a=>a??null)]).flat())},nt=(a,t,e,n,s,i,r,[o,c,l],w,y,d,u,E,N)=>{const[g,$,A,O]=tt(t,w,y,s,E,N),m=oa(a,()=>O(async()=>{return await g(),a=(await $(o,c))[da]?.[l]??"null",la(a,(a,t)=>""===t?void 0:t);var a}),a=>O(async()=>{await g(),await A(o,c,{[da]:{[l]:wa(a()??null)}},!0,!0)}),e,n,s,r,{[u]:()=>d,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,d);return m},st=(a,t,e,n,s,i,r,[o,c,[l,w,y]],u,E,N,g,$,A,O,T)=>{const[R,p,v,I]=tt(t,u,E,s,$,A,O,T),S=(a,t)=>m(V(c,async([e,n,s,i,r],o)=>{t&&!(o in a)||await v(e,n,a[o],s,i,t,r)})),C=async(a,t)=>w?await v(y,ua,{[da]:a},!0,!0,t):null,b=oa(a,()=>I(async()=>{await R();const a=await(async()=>x(_(await m(V(o,async([a,t,e],n)=>[a,await p(n,t,e)])),a=>!k(a[1]))))(),t=await(async()=>l?(await p(y,ua))[da]:{})();return k(a)&&d(t)?void 0:[a,t]}),(a,t)=>I(async()=>{if(await R(),d(t)){const[t,e]=a();await S(t),await C(e)}else await S(t[0],!0),await C(t[1],!0)}),e,n,s,r,{[g]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},it=/^([cd]:)(.+)/,rt=(a,n,s,o,c,l,w,y,d,u,E="getDb")=>{const g=ha(s,l),[$,,A,O]=at(n),T=e+(a=>{let t=2166136261;return p(ya.encode(a),a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0})(wa(A)),R=t+"_"+T,S=async(a,e,n="",s="")=>{const i=Ma(t,a,T);return await g(Ca+La+Da+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},_=async(a,t,e,n)=>(await g(Ca+a+"TRIGGER"+t+e+"EXECUTE "+Da+n+"()"),t),C=a=>`PERFORM pg_notify('${R}',${a});`,b=(a,t)=>$?i:2===t?b(a,0)+" OR "+b(a,1):r(K(A[0],a)?.[2]??i,fa,0==t?"NEW":"OLD"),D=(a,e)=>m(I([$a,Aa,Oa],(n,s)=>_(La,Ma(t,"d",T,a,n),`AFTER ${n} ON${Pa(a)}FOR EACH ROW WHEN(${b(a,s)})`,e)));return($?nt:st)(a,g,async a=>{const e=await S("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Na} command_tag='${ba}' LOOP ${C("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await _("EVENT ",Ma(t,"c",T),`ON ddl_command_end WHEN TAG IN('${ba}')`,e);const n=await S("d",C("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await m(I(f(O),async a=>(await g(ba+` IF NOT EXISTS${Pa(a)}("_id"text PRIMARY KEY)`),await D(a,n)))),[await o(R,t=>{return N((e=t,s=it,e?.match(s)),async([,t,e])=>{L(O,e)&&("c:"==t&&await D(e,n),a())});var e,s}),[e,n]]},async([a,t])=>{c(a),await g(`DROP FUNCTION IF EXISTS${v(t,",")}CASCADE`)},w,y,d,A,f(O),async(a,t)=>await a(Ea+` table_name tn,column_name cn FROM information_schema.columns ${Na} table_schema='public'AND table_name IN(${Fa(t)})`,t),u,E,"text",void 0,a=>ca(a),a=>la(a))},ot=(a,t,n,s,i,r,o,c,l,d,u="getDb",E)=>{let N,g,$;const A=ha(n,r),[O,m,T,p]=at(t);return(O?nt:st)(a,A,a=>{let t;const e=()=>t=setInterval(()=>R(async()=>{const[{d:t,s:e,c:n}]=await A(Ea+` ${Ia} d,${Sa} s,TOTAL_CHANGES() c FROM ${va}${Ia} JOIN ${va}${Sa}`);t==N&&e==g&&n==$||(y(N)||a(),N=t,g=e,$=n)}),1e3*m),n=()=>{N=g=$=null,w(t)},r=s(t=>{p.has(t)&&(n(),a(),e())});return e(),()=>{n(),i(r)}},a=>a(),o,c,l,T,f(p),async(a,t)=>await a(Ea+` t.name tn,c.name cn FROM ${_a}list()t,${_a}info(t.name)c ${Na} t.schema='main'AND t.type IN('table','view')AND t.name IN(${Fa(t)})ORDER BY t.name,c.name`,t),d,u,e,E,a=>(a=>!0===a)(a)?1:(a=>!1===a)(a)?0:a,void 0)};export{sa as Persists,na as Status,oa as createCustomPersister,rt as createCustomPostgreSqlPersister,ot as createCustomSqlitePersister};
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=a=>(t,e,n)=>a(t)?n?.():e(t),l=globalThis,w=clearInterval,d=a=>null==a,y=a=>void 0===a,u=a=>null===a,E=c(d),N=c(y),g=t=>a(t)==s,$=a=>Array.isArray(a),A=(a,t,e)=>a.slice(t,e),O=a=>a.length,m=async a=>o.all(a),T=a=>{throw Error(a)},R=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},p=(a,t)=>a.forEach(t),v=(a,t="")=>a.join(t),I=(a,t)=>a.map(t),S=a=>0==O(a),_=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),b=a=>a.shift(),L=(a,t)=>a?.has(t)??!1,D=a=>y(a)||0==(a=>a?.size??0)(a),h=a=>[...a?.values()??[]],f=(a,t)=>a?.forEach(t),P=(a,t)=>a?.delete(t),M=Object,F=a=>M.getPrototypeOf(a),U=M.entries,G=a=>!d(a)&&E(F(a),a=>a==M.prototype||d(F(a)),()=>!0),j=M.keys,x=M.freeze,B=(a=[])=>M.fromEntries(a),H=(...a)=>M.assign({},...a),W=(a,t)=>(delete a[t],a),Y=(a,t)=>I(U(a),([a,e])=>t(e,a)),X=(a,t)=>B(Y(a,(a,e)=>[e,t(a,e)])),J=a=>M.values(a),k=a=>O(j(a)),z=a=>G(a)&&0==k(a),K=Map,V=a=>new K(a),q=(a,t)=>a?.get(t),Q=(a,t)=>I([...a?.entries()??[]],([a,e])=>t(e,a)),Z=(a,t,e)=>y(e)?(P(a,t),a):a?.set(t,e),aa=(a,t,e,n)=>(L(a,t)?n?.(q(a,t)):Z(a,t,e()),q(a,t)),ta=(a,t,e,n,s=0)=>N((e?aa:q)(a,t[s],s>O(t)-2?e:V),i=>{if(s>O(t)-2)return n?.(i)&&Z(a,t[s]),i;const r=ta(i,t,e,n,s+1);return D(i)&&Z(a,t[s]),r}),ea=/^\d+$/,na=a=>new Set($(a)||y(a)?a:[a]),sa=(a,t)=>a?.add(t),ia={Idle:0,Loading:1,Saving:2},ra={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},oa=V(),ca=V(),la=(a,t,n,s,i,r,o,c={},l=0,w=[])=>{let d,E,g,A=0,m=0,v=0;aa(oa,w,()=>0),aa(ca,w,()=>[]);const I=V(),[S,_,L,h,M]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!z(a)||!z(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!z(a)||!z(t),t.setContent]:T("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?b(a):null)??e+t++,t=>{ea.test(t)&&O(a)<1e3&&C(a,t)}]})(),s=V();return[(n,i,r,o=[],c=()=>[])=>{a??=la;const l=t(1);return Z(s,l,[n,i,r,o,c]),sa(ta(i,r??[e],na),l),l},(t,n,...i)=>p(((a,t=[e])=>{const n=[],s=(a,e)=>e==O(t)?C(n,a):u(t[e])?f(a,a=>s(a,e+1)):p([t[e],null],t=>s(q(a,t),e+1));return s(a,0),n})(t,n),t=>f(t,t=>q(s,t)[0](a,...n??[],...i))),a=>N(q(s,a),([,t,i])=>(ta(t,i??[e],void 0,t=>(P(t,a),D(t)?1:0)),Z(s,a),n(a),i)),t=>N(q(s,t),([t,,e=[],n,s])=>{const i=(...r)=>{const o=O(r);o==O(e)?t(a,...r,...s(r)):u(e[o])?p(n[o]?.(...r)??[],a=>i(...r,a)):i(...r,e[o])};i()})]})(),j=a=>{a!=A&&(A=a,U(I,void 0,A))},B=t=>{(S&&$(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},H=async()=>{Q()&&a.hadMutated?.()&&await J()},W=async a=>(2!=A&&(j(1),m++,await ra(async()=>{await R(async()=>{const e=await t();$(e)?B(e):a?M(a):T("Content is not an array: "+e)},()=>{a&&M(a)}),j(0),await H()})),la),Y=async a=>(X(),await W(a),await R(async()=>E=await s(async(a,t)=>{t||a?2!=A&&(j(1),m++,B(t??a),j(0),await H()):await W()}),r),la),X=async()=>(E&&(await R(()=>i(E),r),E=void 0),la),J=async a=>(1!=A&&(j(2),v++,await ra(async()=>{await R(()=>n(_,a),r),j(0)})),la),k=async()=>(K(),await J(),g=a.addDidFinishTransactionListener(()=>{const a=L();h(a)&&J(a)}),la),K=async()=>(g&&(a.delListener(g),g=void 0),la),Q=()=>!y(g),ia=async(a=!1)=>{const[t,e]=a?[K,X]:[X,K];return await t(),await e(),la},ra=async(...a)=>(C(q(ca,w),...a),await(async()=>{if(!q(oa,w)){for(Z(oa,w,1);!y(d=b(q(ca,w)));)await R(d,r);Z(oa,w,0)}})(),la),la={load:W,startAutoLoad:Y,stopAutoLoad:X,isAutoLoading:()=>!y(E),save:J,startAutoSave:k,stopAutoSave:K,isAutoSaving:Q,startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[k,Y]:[Y,k];return await e(a),await n(a),la},stopAutoPersisting:ia,getStatus:()=>A,addStatusListener:a=>F(a,I),delListener:t=>(G(t),a),schedule:ra,getStore:()=>a,destroy:()=>(q(ca,w).splice(0,void 0),ia()),getStats:()=>({loads:m,saves:v}),...c};return x(la)},wa=JSON.stringify,da=JSON.parse,ya=a=>wa(a,(a,t)=>y(t)?"":t),ua=a=>""===a?void 0:$(a)?I(a,ua):G(a)?X(a,ua):a,Ea=new l.TextEncoder,Na="_",ga="_id",$a="SELECT",Aa="WHERE",Oa="TABLE",ma="INSERT",Ta="DELETE",Ra="UPDATE",pa="ALTER "+Oa,va="FROM",Ia=Ta+" "+va,Sa=$a+"*"+va,_a="pragma_",Ca="data_version",ba="schema_version",La="pragma_table_",Da="CREATE ",ha=Da+Oa,fa="OR REPLACE ",Pa="FUNCTION",Ma="$tableName",Fa=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,Ua=a=>v(I(((a,t="",e)=>a.split(t,e))(a,"."),a=>`"${r(a,/"/g,'""')}"`),"."),Ga=(...a)=>Ua(v(a,"_")),ja=(a,t=[1])=>v(I(a,()=>"$"+t[0]++),n),xa=(a,t=i)=>Aa+`(${r(t,Ma,Ua(a))})`,Ba="ColumnName",Ha="store",Wa="json",Ya=Ha+"TableName",Xa=Ha+"Id"+Ba,Ja=Ha+Ba,ka="autoLoadIntervalSeconds",za="rowId"+Ba,Ka="tableId",Va="tableName",qa="deleteEmptyColumns",Qa="deleteEmptyTable",Za="condition",at={mode:Wa,[ka]:1},tt={load:0,save:0,[Va]:t+"_values"},et=(a,t,e,n,s)=>{const i=V();return X(a,(a,r)=>{const o=A(J(H(t,g(a)?{[e]:a}:a)),0,k(t));u(o[0])||n(r,o[0])||(s(r,o[0]),Z(i,r,o))}),i},nt=a=>{const e=(a=>H(at,g(a)?{[Ya]:a}:a??{}))(a),n=e[ka];if(e.mode==Wa){const a=e[Ya]??t;return[1,n,[a,e[Xa]??ga,e[Ja]??Ha],na(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=A(J(H(tt,o)),0,k(tt)),l=c[2],w=na(l),d=na(l),y=et(s,{[Ka]:null,[za]:ga,[Za]:i},Ka,a=>L(d,a),a=>sa(w,a)),u=et(r,{[Va]:null,[za]:ga,[qa]:0,[Qa]:0,[Za]:null},Va,(a,t)=>L(d,t),(a,t)=>sa(w,t));var E;return E=(a,t)=>t[4]??=q(y,t[0])?.[2]??i,f(u,(a,t)=>E(0,a)),[0,n,[y,u,c],w]},st=(a,t,e,s,r,o=it,c,l)=>{const w=V();return[async()=>{w.clear(),I(await e(a,t),({tn:a,cn:t})=>sa(aa(w,a,na),t))},async(t,e,n)=>((a,t)=>L(q(w,a),t))(t,e)?B(_(I(await a(Sa+Ua(t)+xa(t,n)),a=>[a[e],l?X(W(a,e),l):W(a,e)]),([a,t])=>!y(a)&&!z(t))):{},async(t,e,s,l,d,u=!1,E=i)=>{const N=na();X(s??{},a=>I(j(a??{}),a=>sa(N,a)));const g=h(N);if(!u&&d&&E==i&&S(g)&&L(w,t))return await a("DROP "+Oa+Ua(t)),void Z(w,t);const $=q(w,t),A=na(h($));if(S(g)||(L(w,t)?await m(I([e,...g],async(n,s)=>{P(A,n)||(await a(pa+Ua(t)+"ADD"+Ua(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+Ua(t)+`(${Ua(e)})`),sa($,n))})):(await a(ha+Ua(t)+`(${Ua(e)}${r} PRIMARY KEY${v(I(g,a=>n+Ua(a)+r))});`),Z(w,t,na([e,...g])))),await m([...!u&&l?I(h(A),async n=>{n!=e&&(await a(pa+Ua(t)+"DROP"+Ua(n)),P($,n))}):[]]),u)y(s)?await a(Ia+Ua(t)+xa(t,E)):await m(Y(s,async(n,s)=>{y(n)?await a(Ia+Ua(t)+xa(t,E)+`AND(${Ua(e)}=$1)`,[s]):S(g)||await o(a,t,e,j(n),{[s]:c?I(J(n),c):J(n)},$)}));else if(S(g))L(w,t)&&await a(Ia+Ua(t)+xa(t,E));else{const n=_(h(q(w,t)),a=>a!=e),i={},r=[];X(s??{},(a,t)=>{i[t]=I(n,t=>c?c(a?.[t]):a?.[t]),C(r,t)}),await o(a,t,e,n,i),await a(Ia+Ua(t)+xa(t,E)+`AND${Ua(e)}NOT IN(${ja(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await R(async()=>e=await t(),s),await a("END"),e}]},it=async(a,t,e,s,i)=>{const r=[1];await a(ma+" INTO"+Ua(t)+"("+((...a)=>v(I(a,Ua),n))(e,...s)+")VALUES"+v(Y(i,a=>"($"+r[0]+++","+ja(a,r)+")"),n)+"ON CONFLICT("+Ua(e)+`)DO ${Ra} SET`+v(I(s,a=>Ua(a)+"=excluded."+Ua(a)),n),Y(i,(a,t)=>[t,...I(a,a=>a??null)]).flat())},rt=(a,t,e,n,s,i,r,[o,c,l],w,d,y,u,E,N)=>{const[g,$,A,O]=st(t,w,d,s,E,N),m=la(a,()=>O(async()=>{return await g(),a=(await $(o,c))[Na]?.[l]??"null",ua(da(a));var a}),a=>O(async()=>{await g(),await A(o,c,{[Na]:{[l]:ya(a()??null)}},!0,!0)}),e,n,s,r,{[u]:()=>y,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,y);return m},ot=(a,t,e,n,s,i,r,[o,c,[l,w,d]],u,E,N,g,$,A,O,T)=>{const[R,p,v,I]=st(t,u,E,s,$,A,O,T),S=(a,t)=>m(Q(c,async([e,n,s,i,r],o)=>{t&&!(o in a)||await v(e,n,a[o],s,i,t,r)})),C=async(a,t)=>w?await v(d,ga,{[Na]:a},!0,!0,t):null,b=la(a,()=>I(async()=>{await R();const a=await(async()=>B(_(await m(Q(o,async([a,t,e],n)=>[a,await p(n,t,e)])),a=>!z(a[1]))))(),t=await(async()=>l?(await p(d,ga))[Na]:{})();return z(a)&&y(t)?void 0:[a,t]}),(a,t)=>I(async()=>{if(await R(),y(t)){const[t,e]=a();await S(t),await C(e)}else await S(t[0],!0),await C(t[1],!0)}),e,n,s,r,{[g]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},ct=/^([cd]:)(.+)/,lt=(a,n,s,o,c,l,w,d,y,u,E="getDb")=>{const g=Fa(s,l),[$,,A,O]=nt(n),T=e+(a=>{let t=2166136261;return p(Ea.encode(a),a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0})(ya(A)),R=t+"_"+T,S=async(a,e,n="",s="")=>{const i=Ga(t,a,T);return await g(Da+fa+Pa+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},_=async(a,t,e,n)=>(await g(Da+a+"TRIGGER"+t+e+"EXECUTE "+Pa+n+"()"),t),C=a=>`PERFORM pg_notify('${R}',${a});`,b=(a,t)=>$?i:2===t?b(a,0)+" OR "+b(a,1):r(q(A[0],a)?.[2]??i,Ma,0==t?"NEW":"OLD"),D=(a,e)=>m(I([ma,Ta,Ra],(n,s)=>_(fa,Ga(t,"d",T,a,n),`AFTER ${n} ON${Ua(a)}FOR EACH ROW WHEN(${b(a,s)})`,e)));return($?rt:ot)(a,g,async a=>{const e=await S("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${Aa} command_tag='${ha}' LOOP ${C("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await _("EVENT ",Ga(t,"c",T),`ON ddl_command_end WHEN TAG IN('${ha}')`,e);const n=await S("d",C("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await m(I(h(O),async a=>(await g(ha+` IF NOT EXISTS${Ua(a)}("_id"text PRIMARY KEY)`),await D(a,n)))),[await o(R,t=>{return N((e=t,s=ct,e?.match(s)),async([,t,e])=>{L(O,e)&&("c:"==t&&await D(e,n),a())});var e,s}),[e,n]]},async([a,t])=>{c(a),await g(`DROP FUNCTION IF EXISTS${v(t,",")}CASCADE`)},w,d,y,A,h(O),async(a,t)=>await a($a+` table_name tn,column_name cn FROM information_schema.columns ${Aa} table_schema='public'AND table_name IN(${ja(t)})`,t),u,E,"text",void 0,a=>wa(a),a=>da(a))},wt=(a,t,n,s,i,r,o,c,l,y,u="getDb",E)=>{let N,g,$;const A=Fa(n,r),[O,m,T,p]=nt(t);return(O?rt:ot)(a,A,a=>{let t;const e=()=>t=setInterval(()=>R(async()=>{const[{d:t,s:e,c:n}]=await A($a+` ${Ca} d,${ba} s,TOTAL_CHANGES() c FROM ${_a}${Ca} JOIN ${_a}${ba}`);t==N&&e==g&&n==$||(d(N)||a(),N=t,g=e,$=n)}),1e3*m),n=()=>{N=g=$=null,w(t)},r=s(t=>{p.has(t)&&(n(),a(),e())});return e(),()=>{n(),i(r)}},a=>a(),o,c,l,T,h(p),async(a,t)=>await a($a+` t.name tn,c.name cn FROM ${La}list()t,${La}info(t.name)c ${Aa} t.schema='main'AND t.type IN('table','view')AND t.name IN(${ja(t)})ORDER BY t.name,c.name`,t),y,u,e,E,a=>(a=>!0===a)(a)?1:(a=>!1===a)(a)?0:a,void 0)};export{ra as Persists,ia as Status,la as createCustomPersister,lt as createCustomPostgreSqlPersister,wt as createCustomSqlitePersister};
|
|
Binary file
|