tinybase 5.0.0-beta.2 → 5.0.0-beta.3
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/lib/cjs/mergeable-store.cjs +1 -1
- package/lib/cjs/mergeable-store.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-remote.cjs +1 -1
- package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs-es6/mergeable-store.cjs +1 -1
- package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs-es6/persisters.cjs +1 -1
- package/lib/cjs-es6/persisters.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/debug/mergeable-store.js +158 -187
- package/lib/debug/persisters/persister-automerge.js +42 -43
- package/lib/debug/persisters/persister-browser.js +28 -18
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +77 -54
- package/lib/debug/persisters/persister-electric-sql.js +77 -54
- package/lib/debug/persisters/persister-expo-sqlite-next.js +77 -54
- package/lib/debug/persisters/persister-expo-sqlite.js +77 -54
- package/lib/debug/persisters/persister-file.js +27 -18
- package/lib/debug/persisters/persister-indexed-db.js +28 -20
- package/lib/debug/persisters/persister-partykit-client.js +26 -23
- package/lib/debug/persisters/persister-partykit-server.js +8 -18
- package/lib/debug/persisters/persister-remote.js +28 -18
- package/lib/debug/persisters/persister-sqlite-wasm.js +77 -54
- package/lib/debug/persisters/persister-sqlite3.js +77 -54
- package/lib/debug/persisters/persister-yjs.js +44 -42
- package/lib/debug/persisters.js +27 -18
- package/lib/debug/store.js +50 -68
- package/lib/debug/tinybase.js +180 -205
- package/lib/debug/tools.js +9 -11
- package/lib/debug/ui-react-dom.js +73 -86
- package/lib/es6/mergeable-store.js +1 -1
- package/lib/es6/mergeable-store.js.gz +0 -0
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-client.js +1 -1
- package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-server.js +1 -1
- package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/es6/persisters/persister-remote.js +1 -1
- package/lib/es6/persisters/persister-remote.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite3.js +1 -1
- package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/es6/persisters/persister-yjs.js +1 -1
- package/lib/es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react-dom-debug.js +1 -1
- package/lib/es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/mergeable-store.js +1 -1
- package/lib/mergeable-store.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-partykit-client.js +1 -1
- package/lib/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/persisters/persister-partykit-server.js +1 -1
- package/lib/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/persisters/persister-remote.js +1 -1
- package/lib/persisters/persister-remote.js.gz +0 -0
- package/lib/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-sqlite3.js +1 -1
- package/lib/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/persisters/persister-yjs.js +1 -1
- package/lib/persisters/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/mergeable-store.d.ts +37 -13
- package/lib/types/persisters/persister-partykit-server.d.ts +7 -8
- package/lib/types/persisters.d.ts +47 -27
- package/lib/types/store.d.ts +153 -111
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/with-schemas/mergeable-store.d.ts +40 -13
- package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +10 -11
- package/lib/types/with-schemas/persisters.d.ts +78 -42
- package/lib/types/with-schemas/store.d.ts +165 -136
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/umd/mergeable-store.js +1 -1
- package/lib/umd/mergeable-store.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-client.js +1 -1
- package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-server.js +1 -1
- package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/umd/persisters/persister-remote.js +1 -1
- package/lib/umd/persisters/persister-remote.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite3.js +1 -1
- package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd/persisters/persister-yjs.js +1 -1
- package/lib/umd/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react-dom-debug.js +1 -1
- package/lib/umd/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd-es6/mergeable-store.js +1 -1
- package/lib/umd-es6/mergeable-store.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-remote.js +1 -1
- package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-yjs.js +1 -1
- package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom-debug.js +1 -1
- package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
- package/package.json +26 -22
- package/readme.md +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),l=e(0),a=e(e),r="type",o="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",C=g+"Count",T=g+i,f="Cell",b=f+i,V="Value",v=V+"s",S=V+i,w=e=>t+e,I=(e,t)=>e.startsWith(t),R=(e,t)=>e.endsWith(t),m=(e,t=0)=>e.charCodeAt(t),p=isFinite,y=e=>null==e,L=(e,t,s)=>y(e)?s?.():t(e),J=e=>e==s||e==n,M=t=>e(t)==a,E=(e,t,s)=>e.slice(t,s),H=e=>e.length,P=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),x=Object,z=e=>x.getPrototypeOf(e),A=x.entries,W=x.keys,k=x.isFrozen,D=x.freeze,N=e=>!y(e)&&L(z(e),(e=>e==x.prototype||y(z(e))),(()=>!0)),j=(e,t)=>!y(((e,t)=>L(e,(e=>e[t])))(e,t)),$=(e,t)=>(delete e[t],e),q=(e,t)=>F(A(e),(([e,s])=>t(s,e))),B=e=>N(e)&&0==(e=>H(W(e)))(e),G=e=>e?.size??0,K=(e,t)=>e?.has(t)??!1,Q=e=>y(e)||0==G(e),U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),_=e=>[...e?.keys()??[]],ee=(e,t)=>e?.get(t),te=(e,t)=>X(e,((e,s)=>t(s,e))),se=(e,t,s)=>y(s)?(Y(e,t),e):e?.set(t,s),ne=(e,t,s)=>(K(e,t)||se(e,t,s()),ee(e,t)),le=(e,t,s,n=se)=>(q(t,((t,n)=>s(e,n,t))),te(e,(s=>j(t,s)?0:n(e,s))),e),ae=(e,t,s)=>{const n={};return X(e,((e,l)=>{const a=t?t(e,l):e;!s?.(a,e)&&(n[l]=a)})),n},re=(e,t,s)=>ae(e,(e=>ae(e,t,s)),B),oe=(e,t,s)=>ae(e,(e=>re(e,t,s)),B),ce=(e,t)=>{const s=Z();return X(e,((e,n)=>s.set(n,t?.(e)??e))),s},ie=e=>ce(e,ce),de=e=>ce(e,ie),ue=(e,t,s,n,l=0)=>L((s?ne:ee)(e,t[l],l>H(t)-2?s:Z),(a=>{if(l>H(t)-2)return n?.(a)&&se(e,t[l]),a;const r=ue(a,t,s,n,l+1);return Q(a)&&se(e,t[l]),r})),he=()=>[t,null],ge=()=>[t,Z()],Ce=(e,t)=>Te(e,((e,s)=>[s,y(e)?null:ae(e,t)])),Te=([e,t],s)=>s(t,e),fe=([e,t],s,n,l=0)=>{const a=e>s[0];return(!l&&null!==s[1]||a)&&(s[1]=n(t,s[1])),a&&(s[0]=e),s},be=(e,t,s,n)=>{var l;return l=(e,l)=>fe(e,ne(t,l,he),((e,t)=>!n||y(e)?s[l]=e??null:(t??=Z(),s[l]={},n(e,t,l),t)),n?0:1),P(A(e),(([e,t])=>l(t,e))),t},Ve=e=>new Set(Array.isArray(e)||y(e)?e:[e]),ve=(e,t)=>e?.add(t),Se=/^\d+$/,we=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{Se.test(t)&&H(e)<1e3&&O(e,t)}]},Ie=e=>[e,e],Re=()=>[Z(),Z()],me=e=>[...e],pe=([e,t])=>e===t,ye=t=>{const s=e(t);return J(s)||s==l&&p(t)?s:void 0},Le=(e,t,s,n,l)=>y(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l),Je=(e,t,s)=>y(s)?e.delValue(t):e.setValue(t,s),Me=e=>JSON.stringify(e,((e,t)=>t instanceof Map?x.fromEntries([...t]):t)),Ee=JSON.parse,He=(e,t,s)=>y(e)||!N(e)||B(e)||k(e)?(s?.(),!1):(q(e,((s,n)=>{t(s,n)||$(e,n)})),!B(e)),Pe=(e,t,s)=>se(e,t,ee(e,t)==-s?void 0:s),Fe=()=>{let e,s,n,a=!1,i=!1,I=!1,R=!1,m=0;const p=Z(),x=Z(),z=Z(),A=Z(),W=Z(),k=Z(),N=Z(),he=Z(),ge=Z(),Ce=Z(),Te=Z(),fe=Z(),be=Z(),Se=Z(),Oe=Ve(),xe=Z(),ze=Z(),Ae=Z(),We=Z(),ke=Re(),De=Re(),Ne=Re(),je=Re(),$e=Re(),qe=Re(),Be=Re(),Ge=Re(),Ke=Re(),Qe=Re(),Ue=Re(),Xe=Re(),Ye=Re(),Ze=Re(),_e=Re(),et=Re(),tt=Re(),st=Re(),nt=Re(),lt=Re(),at=Re(),rt=Re(),ot=Z(),ct=Re(),[it,dt,ut,ht]=(e=>{let s;const[n,l]=we(),a=Z();return[(e,l,r,o=[],c=(()=>[]))=>{s??=Os;const i=n(1);return se(a,i,[e,l,r,o,c]),ve(ue(l,r??[t],Ve),i),i},(e,n,...l)=>P(((e,s=[t])=>{const n=[],l=(e,t)=>t==H(s)?O(n,e):null===s[t]?X(e,(e=>l(e,t+1))):P([s[t],null],(s=>l(ee(e,s),t+1)));return l(e,0),n})(e,n),(e=>X(e,(e=>ee(a,e)[0](s,...n??[],...l))))),e=>L(ee(a,e),(([,s,n])=>(ue(s,n??[t],void 0,(t=>(Y(t,e),Q(t)?1:0))),se(a,e),l(e),n))),e=>L(ee(a,e),(([e,,t=[],n,l])=>{const a=(...r)=>{const o=H(r);o==H(t)?e(s,...r,...l(r)):y(t[o])?P(n[o]?.(...r)??[],(e=>a(...r,e))):a(...r,t[o])};a()}))]})(),gt=e=>{if(!He(e,((e,t)=>[r,o].includes(t))))return!1;const t=e[r];return!(!J(t)&&t!=l||(ye(e[o])!=t&&$(e,o),0))},Ct=(t,s)=>(!e||K(Te,s)||qt(s))&&He(t,((e,t)=>Tt(s,t,e)),(()=>qt(s))),Tt=(e,t,s,n)=>He(n?s:vt(s,e,t),((n,l)=>L(ft(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>qt(e,t))),ft=(t,s,n,l)=>e?L(ee(ee(Te,t),n),(e=>ye(l)!=e[r]?qt(t,s,n,l,e[o]):l),(()=>qt(t,s,n,l))):y(ye(l))?qt(t,s,n,l):l,bt=(e,t)=>He(t?e:St(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Bt())),Vt=(e,t)=>s?L(ee(be,e),(s=>ye(t)!=s[r]?Bt(e,t,s[o]):t),(()=>Bt(e,t))):y(ye(t))?Bt(e,t):t,vt=(e,t,s)=>(L(ee(fe,t),(([n,l])=>{X(n,((t,s)=>{j(e,s)||(e[s]=t)})),X(l,(n=>{j(e,n)||qt(t,s,n)}))})),e),St=e=>(s&&(X(Se,((t,s)=>{j(e,s)||(e[s]=t)})),X(Oe,(t=>{j(e,t)||Bt(t)}))),e),wt=e=>le(Te,e,((e,t,s)=>{const n=Z(),l=Ve();le(ne(Te,t,Z),s,((e,t,s)=>{se(e,t,s),L(s[o],(e=>se(n,t,e)),(()=>ve(l,t)))})),se(fe,t,[n,l])}),((e,t)=>{se(Te,t),se(fe,t)})),It=e=>le(be,e,((e,t,s)=>{se(be,t,s),L(s[o],(e=>se(Se,t,e)),(()=>ve(Oe,t)))}),((e,t)=>{se(be,t),se(Se,t),Y(Oe,t)})),Rt=e=>B(e)?ps():Ss(e),mt=e=>le(Ae,e,((e,t,s)=>pt(t,s)),((e,t)=>Ot(t))),pt=(e,t)=>le(ne(Ae,e,(()=>(Wt(e,1),se(xe,e,we()),se(ze,e,Z()),Z()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>xt(e,t,s))),yt=(e,t,s,n,l)=>le(ne(t,s,(()=>(kt(e,s,1),Z()))),n,((t,n,l)=>Lt(e,s,t,n,l)),((n,a)=>zt(e,t,s,n,a,l))),Lt=(e,t,s,n,l)=>{K(s,n)||Dt(e,t,n,1);const a=ee(s,n);l!==a&&(Nt(e,t,n,a,l),se(s,n,l))},Jt=(e,t,s,n,l)=>L(ee(t,s),(t=>Lt(e,s,t,n,l)),(()=>yt(e,t,s,vt({[n]:l},e,s)))),Mt=e=>B(e)?Js():ws(e),Et=e=>le(We,e,((e,t,s)=>Ht(t,s)),((e,t)=>At(t))),Ht=(e,t)=>{K(We,e)||jt(e,1);const s=ee(We,e);t!==s&&($t(e,s,t),se(We,e,t))},Pt=(e,t)=>{const[s]=ee(xe,e),n=s(t);return K(ee(Ae,e),n)?Pt(e,t):n},Ft=e=>ee(Ae,e)??pt(e,{}),Ot=e=>pt(e,{}),xt=(e,t,s)=>{const[,n]=ee(xe,e);n(s),yt(e,t,s,{},!0)},zt=(e,t,s,n,l,a)=>{const r=ee(ee(fe,e)?.[0],l);if(!y(r)&&!a)return Lt(e,s,n,l,r);const o=t=>{Nt(e,s,t,ee(n,t)),Dt(e,s,t,-1),se(n,t)};y(r)?o(l):te(n,o),Q(n)&&(kt(e,s,-1),Q(se(t,s))&&(Wt(e,-1),se(Ae,e),se(xe,e),se(ze,e)))},At=e=>{const t=ee(Se,e);if(!y(t))return Ht(e,t);$t(e,ee(We,e)),jt(e,-1),se(We,e)},Wt=(e,t)=>Pe(p,e,t),kt=(e,t,s)=>Pe(ne(A,e,Z),t,s)&&se(z,e,ne(z,e,(()=>0))+s),Dt=(e,t,s,n)=>{const l=ee(ze,e),a=ee(l,s)??0;(0==a&&1==n||1==a&&-1==n)&&Pe(ne(x,e,Z),s,n),se(l,s,a!=-n?a+n:null),Pe(ne(ne(W,e,Z),t,Z),s,n)},Nt=(e,t,s,n,l)=>ne(ne(ne(k,e,Z),t,Z),s,(()=>[n,0]))[1]=l,jt=(e,t)=>Pe(N,e,t),$t=(e,t,s)=>ne(he,e,(()=>[t,0]))[1]=s,qt=(e,t,s,n,l)=>(O(ne(ne(ne(ge,e,Z),t,Z),s,(()=>[])),n),l),Bt=(e,t,s)=>(O(ne(Ce,e,(()=>[])),t),s),Gt=(e,t,s)=>L(ee(ee(ee(k,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ie(is(e,t,s))])),Kt=e=>L(ee(he,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ie(hs(e))])),Qt=e=>Q(ge)||Q(et[e])?0:X(e?de(ge):ge,((t,s)=>X(t,((t,n)=>X(t,((t,l)=>dt(et[e],[s,n,l],t))))))),Ut=e=>Q(Ce)||Q(tt[e])?0:X(e?ce(Ce):Ce,((t,s)=>dt(tt[e],[s],t))),Xt=(e,t,s,n)=>{if(!Q(e))return dt(t,n,(()=>ae(e))),te(e,((e,t)=>dt(s,[...n??[],e],1==t))),1},Yt=e=>{const t=gs();t!=I&&dt(ke[e],void 0,t);const s=Q(Qe[e]),n=Q(Ye[e])&&Q(Ze[e])&&Q(Ke[e])&&Q(Ue[e])&&Q(qe[e])&&Q(Be[e])&&Q(Ge[e])&&s&&Q(Ne[e])&&Q(je[e]),l=Q(_e[e])&&Q(Xe[e])&&Q($e[e])&&Q(De[e]);if(!n||!l){const t=e?[ce(p),ie(x),ce(z),ie(A),de(W),de(k)]:[p,x,z,A,W,k];if(!n){Xt(t[0],Ne[e],je[e]),X(t[1],((t,s)=>Xt(t,qe[e],Be[e],[s]))),X(t[2],((t,s)=>{0!=t&&dt(Ge[e],[s],as(s))}));const n=Ve();X(t[3],((t,l)=>{Xt(t,Ke[e],Ue[e],[l])&&!s&&(dt(Qe[e],[l,null]),ve(n,l))})),s||X(t[5],((t,s)=>{if(!K(n,s)){const n=Ve();X(t,(e=>X(e,(([t,s],l)=>s!==t?ve(n,l):Y(e,l))))),X(n,(t=>dt(Qe[e],[s,t])))}})),X(t[4],((t,s)=>X(t,((t,n)=>Xt(t,Ye[e],Ze[e],[s,n])))))}if(!l){let s;X(t[5],((t,n)=>{let l;X(t,((t,a)=>{let r;X(t,(([t,o],c)=>{o!==t&&(dt(_e[e],[n,a,c],o,t,Gt),s=l=r=1)})),r&&dt(Xe[e],[n,a],Gt)})),l&&dt($e[e],[n],Gt)})),s&&dt(De[e],void 0,Gt)}}},Zt=e=>{const t=Vs();t!=R&&dt(st[e],void 0,t);const s=Q(lt[e])&&Q(at[e]),n=Q(rt[e])&&Q(nt[e]);if(!s||!n){const t=e?[ce(N),ce(he)]:[N,he];if(s||Xt(t[0],lt[e],at[e]),!n){let s;X(t[1],(([t,n],l)=>{n!==t&&(dt(rt[e],[l],n,t,Kt),s=1)})),s&&dt(nt[e],void 0,Kt)}}},_t=(e,...t)=>(Hs((()=>e(...F(t,w)))),Os),es=()=>[ae(k,((e,t)=>-1===ee(p,t)?null:ae(e,((e,s)=>-1===ee(ee(A,t),s)?null:ae(e,(([,e])=>e??null),((e,t)=>pe(t)))),B)),B),ae(he,(([,e])=>e??null),((e,t)=>pe(t)))],ts=()=>({cellsTouched:a,valuesTouched:i,changedCells:oe(k,me,pe),invalidCells:oe(ge),changedValues:ae(he,me,pe),invalidValues:ae(Ce),changedTableIds:ae(p),changedRowIds:re(A),changedCellIds:oe(W),changedValueIds:ae(N)}),ss=()=>oe(Ae),ns=()=>_(Ae),ls=e=>_(ee(ze,w(e))),as=e=>G(ee(Ae,w(e))),rs=e=>_(ee(Ae,w(e))),os=(e,t,s,n=0,l)=>{return F(E((r=ee(Ae,w(e)),o=(e,s)=>[y(t)?s:ee(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),n,y(l)?l:n+l),(([,e])=>e));var a,r,o},cs=(e,t)=>_(ee(ee(Ae,w(e)),w(t))),is=(e,t,s)=>ee(ee(ee(Ae,w(e)),w(t)),w(s)),ds=()=>ae(We),us=()=>_(We),hs=e=>ee(We,w(e)),gs=()=>!Q(Ae),Cs=e=>K(Ae,w(e)),Ts=(e,t)=>K(ee(ze,w(e)),w(t)),fs=(e,t)=>K(ee(Ae,w(e)),w(t)),bs=(e,t,s)=>K(ee(ee(Ae,w(e)),w(t)),w(s)),Vs=()=>!Q(We),vs=e=>K(We,w(e)),Ss=e=>_t((()=>(e=>He(e,Ct,qt))(e)?mt(e):0)),ws=e=>_t((()=>bt(e)?Et(e):0)),Is=e=>{try{Rt(Ee(e))}catch{}return Os},Rs=t=>_t((()=>{if((e=He(t,(e=>He(e,gt))))&&(wt(t),!Q(Ae))){const e=ss();ps(),Ss(e)}})),ms=e=>_t((()=>{if(s=(e=>He(e,gt))(e)){const t=ds();Es(),Js(),s=!0,It(e),ws(t)}})),ps=()=>_t((()=>mt({}))),ys=e=>_t((e=>K(Ae,e)?Ot(e):0),e),Ls=(e,t)=>_t(((e,t)=>L(ee(Ae,e),(s=>K(s,t)?xt(e,s,t):0))),e,t),Js=()=>_t((()=>Et({}))),Ms=()=>_t((()=>{wt({}),e=!1})),Es=()=>_t((()=>{It({}),s=!1})),Hs=(e,t)=>{if(-1!=m){Ps();const s=e();return Fs(t),s}},Ps=()=>(-1!=m&&m++,1==m&&dt(ot,void 0,es,ts),Os),Fs=e=>(m>0&&(m--,0==m&&(a=!Q(k),i=!Q(he),m=1,Qt(1),a&&Yt(1),Ut(1),i&&Zt(1),e?.(es,ts)&&(X(k,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>Le(Os,t,s,n,e))))))),X(he,(([e],t)=>Je(Os,t,e))),a=i=!1),dt(ct[0],void 0,es,ts),m=-1,Qt(0),a&&Yt(0),Ut(0),i&&Zt(0),dt(ct[1],void 0,es,ts),n?.(Os,es,ts),m=0,a=i=!1,I=gs(),R=Vs(),P([p,x,z,A,W,k,ge,N,he,Ce],U))),Os),Os={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>re(ee(Ae,w(e))),getTableCellIds:ls,getRowCount:as,getRowIds:rs,getSortedRowIds:os,getRow:(e,t)=>ae(ee(ee(Ae,w(e)),w(t))),getCellIds:cs,getCell:is,getValues:ds,getValueIds:us,getValue:hs,hasTables:gs,hasTable:Cs,hasTableCell:Ts,hasRow:fs,hasCell:bs,hasValues:Vs,hasValue:vs,getTablesJson:()=>Me(Ae),getValuesJson:()=>Me(We),getJson:()=>Me([Ae,We]),getTablesSchemaJson:()=>Me(Te),getValuesSchemaJson:()=>Me(be),getSchemaJson:()=>Me([Te,be]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>_t((()=>{(B(e)?ps:Ss)(e),(B(t)?Js:ws)(t)})),setTables:Ss,setTable:(e,t)=>_t((e=>Ct(t,e)?pt(e,t):0),e),setRow:(e,t,s)=>_t(((e,t)=>Tt(e,t,s)?yt(e,Ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Hs((()=>{let n;return Tt(e,n,t)&&(e=w(e),yt(e,Ft(e),n=Pt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>_t(((e,t)=>{if(Tt(e,t,s,1)){const n=Ft(e);q(s,((s,l)=>Jt(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>_t(((e,t,s)=>L(ft(e,t,s,M(n)?n(is(e,t,s)):n),(n=>Jt(e,Ft(e),t,s,n)))),e,t,s),setValues:ws,setPartialValues:e=>_t((()=>bt(e,1)?q(e,((e,t)=>Ht(t,e))):0)),setValue:(e,t)=>_t((e=>L(Vt(e,M(t)?t(hs(e)):t),(t=>Ht(e,t)))),e),setTransactionChanges:e=>_t((()=>{q(e[0],((e,t)=>y(e)?ys(t):q(e,((e,s)=>y(e)?Ls(t,s):q(e,((e,n)=>Le(Os,t,s,n,e))))))),q(e[1],((e,t)=>Je(Os,t,e)))})),setTablesJson:Is,setValuesJson:e=>{try{Mt(Ee(e))}catch{}return Os},setJson:e=>_t((()=>{try{const[t,s]=Ee(e);Rt(t),Mt(s)}catch{Is(e)}})),setTablesSchema:Rs,setValuesSchema:ms,setSchema:(e,t)=>_t((()=>{Rs(e),ms(t)})),delTables:ps,delTable:ys,delRow:Ls,delCell:(e,t,s,n)=>_t(((e,t,s)=>L(ee(Ae,e),(l=>L(ee(l,t),(a=>K(a,s)?zt(e,l,t,a,s,n):0))))),e,t,s),delValues:Js,delValue:e=>_t((e=>K(We,e)?At(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>_t((()=>{Ms(),Es()})),transaction:Hs,startTransaction:Ps,finishTransaction:Fs,forEachTable:e=>X(Ae,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>te(t,e))))))))),forEachTableCell:(e,t)=>te(ee(ze,w(e)),t),forEachRow:(e,t)=>X(ee(Ae,w(e)),((e,s)=>t(s,(t=>te(e,t))))),forEachCell:(e,t,s)=>te(ee(ee(Ae,w(e)),w(t)),s),forEachValue:e=>te(We,e),addSortedRowIdsListener:(e,t,s,n,l,a,r)=>{let o=os(e,t,s,n,l);return it((()=>{const r=os(e,t,s,n,l);var c,i,d;i=o,H(c=r)===H(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(o=r,a(Os,e,t,s,n,l,o))}),Qe[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>it(e,ot),addWillFinishTransactionListener:e=>it(e,ct[0]),addDidFinishTransactionListener:e=>it(e,ct[1]),callListener:e=>(ht(e),Os),delListener:e=>(ut(e),Os),getListenerStats:()=>({}),createStore:Fe,addListener:it,callListeners:dt,addPostTransactionListener:e=>{n=e}};return q({[c+u]:[0,ke,[],()=>[gs()]],[u]:[0,De],[h]:[0,Ne],[c+d]:[1,je,[ns],e=>[Cs(...e)]],[d]:[1,$e,[ns]],[d+b]:[1,qe,[ns]],[c+d+f]:[2,Be,[ns,ls],e=>[Ts(...e)]],[C]:[1,Ge,[ns]],[T]:[1,Ke,[ns]],[c+g]:[2,Ue,[ns,rs],e=>[fs(...e)]],[g]:[2,Xe,[ns,rs]],[b]:[2,Ye,[ns,rs]],[c+f]:[3,Ze,[ns,rs,cs],e=>[bs(...e)]],[f]:[3,_e,[ns,rs,cs],e=>Ie(is(...e))],InvalidCell:[3,et],[c+v]:[0,st,[],()=>[Vs()]],[v]:[0,nt],[S]:[0,lt],[c+V]:[1,at,[us],e=>[vs(...e)]],[V]:[1,rt,[us],e=>Ie(hs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,n],l)=>{Os["add"+l+"Listener"]=(...l)=>it(l[e],t[l[e+1]?1:0],e>0?E(l,0,e):void 0,s,n)})),D(Os)},Oe=2**36,xe=2**30,ze=2**24,Ae=2**18,We=4096,ke=64,De=e=>String.fromCharCode(48+(63&e)),Ne=(e,t)=>m(e,t)-48,je={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};exports.createMergeableStore=e=>{let s=1;const[n,l]=(e=>{let t=0,s=0;const n=(l=(e,t)=>(e<<5)+e^m(t),((e,t="",s)=>e.split(t,s))(e).reduce(l,5381)>>>0);var l;const a=e=>{const n=t,[l,a]=y(e)?[0,0]:[Ne(r=e,0)*Oe+Ne(r,1)*xe+Ne(r,2)*ze+Ne(r,3)*Ae+Ne(r,4)*We+Ne(r,5)*ke+Ne(r,6),Ne(r,7)*Ae+Ne(r,8)*We+Ne(r,9)*ke+Ne(r,10),Ne(r,11)*ze+Ne(r,12)*Ae+Ne(r,13)*We+Ne(r,14)*ke+Ne(r,15)];var r;t=Math.max(n,l,Date.now()),s=t==n?t==l?Math.max(s,a):s:t==l?a:-1};return[()=>{return a(),l=++s,r=n,De((e=t)/Oe)+De(e/xe)+De(e/ze)+De(e/Ae)+De(e/We)+De(e/ke)+De(e)+De(l/Ae)+De(l/We)+De(l/ke)+De(l)+De(r/ze)+De(r/Ae)+De(r/We)+De(r/ke)+De(r);var e,l,r},a]})(e),a=Fe(),r=[t,[ge(),ge()]],o=e=>{const t=[{},{}];return l(e[0]),fe(e,r,(([e,s],[n,l])=>[fe(e,n,((e,s)=>be(e,s,t[0],((e,s,n)=>be(e,s,t[0][n],((e,s,l)=>be(e,s,t[0][n][l]))))))),fe(s,l,((e,s)=>be(e,s,t[1])))])),s=0,a.setTransactionChanges(t),s=1,c},c={getMergeableContent:()=>Te(r,(([e,t],s)=>[s,[Ce(e,(e=>Ce(e,(e=>Ce(e,me))))),Ce(t,me)]])),applyMergeableContent:o,merge:e=>{const t=c.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableContent(t),o(s)}};return a.addPostTransactionListener(((e,t)=>{if(s){const e=n(),[s,l]=t(),[a,o]=r[1];r[0]=e,B(s)||(a[0]=e,q(s,((t,s)=>{const n=ne(a[1],s,he);if(n[0]=e,y(t))n[1]=null;else{const s=n[1]??=Z();q(t,((t,n)=>{const l=ne(s,n,he);if(l[0]=e,y(t))l[1]=null;else{const s=l[1]??=Z();q(t,((t,n)=>se(s,n,[e,t])))}}))}}))),B(l)||(o[0]=e,q(l,((t,s)=>{se(o[1],s,[e,t])})))}})),q(a,((e,t)=>c[t]=I(t,"set")||I(t,"del")||R(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),c):I(t,"add")&&R(t,"Listener")?(...s)=>{const n=je[E(t,3,-8)]??0,l=s[n];return s[n]=(e,...t)=>l(c,...t),e(...s)}:e)),D(c)};
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",s=e(t),a=e(!0),n=e(0),l=e(e),r="type",o="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",C=g+"Count",T=g+i,f="Cell",b=f+i,V="Value",v=V+"s",p=V+i,S=e=>t+e,w=(e,t)=>e.startsWith(t),m=(e,t)=>e.endsWith(t),y=(e,t=0)=>e.charCodeAt(t),R=isFinite,I=e=>null==e,L=(e,t,s)=>I(e)?s?.():t(e),J=e=>e==s||e==a,M=t=>e(t)==l,E=(e,t,s)=>e.slice(t,s),H=e=>e.length,P=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),x=Object,z=e=>x.getPrototypeOf(e),A=x.entries,W=x.keys,k=x.isFrozen,D=x.freeze,N=e=>!I(e)&&L(z(e),(e=>e==x.prototype||I(z(e))),(()=>!0)),j=(e,t)=>t in e,$=(e,t)=>(delete e[t],e),q=(e,t)=>P(A(e),(([e,s])=>t(s,e))),B=(e,t)=>F(A(e),(([e,s])=>t(s,e))),G=e=>N(e)&&0==(e=>H(W(e)))(e),K=e=>e?.size??0,Q=(e,t)=>e?.has(t)??!1,U=e=>I(e)||0==K(e),X=e=>e.clear(),Y=(e,t)=>e?.forEach(t),Z=(e,t)=>e?.delete(t),_=e=>new Map(e),ee=e=>[...e?.keys()??[]],te=(e,t)=>e?.get(t),se=(e,t)=>Y(e,((e,s)=>t(s,e))),ae=(e,t,s)=>I(s)?(Z(e,t),e):e?.set(t,s),ne=(e,t,s)=>(Q(e,t)||ae(e,t,s()),te(e,t)),le=(e,t,s,a=ae)=>(B(t,((t,a)=>s(e,a,t))),se(e,(s=>j(t,s)?0:a(e,s))),e),re=(e,t,s)=>{const a={};return Y(e,((e,n)=>{const l=t?t(e,n):e;!s?.(l,e)&&(a[n]=l)})),a},oe=(e,t,s)=>re(e,(e=>re(e,t,s)),G),ce=(e,t,s)=>re(e,(e=>oe(e,t,s)),G),ie=(e,t)=>{const s=_();return Y(e,((e,a)=>s.set(a,t?.(e)??e))),s},de=e=>ie(e,ie),ue=e=>ie(e,de),he=(e,t,s,a,n=0)=>L((s?ne:te)(e,t[n],n>H(t)-2?s:_),(l=>{if(n>H(t)-2)return a?.(l)&&ae(e,t[n]),l;const r=he(l,t,s,a,n+1);return U(l)&&ae(e,t[n]),r})),ge=()=>[t,void 0],Ce=()=>[t,_()],Te=([e,t],s)=>[e,s(t,e)],fe=(e,t)=>Te(e,(e=>re(e,t))),be=(e,t,s,a)=>q(e,((e,n)=>Ve(e,ne(t,n,Ce),s[n]=((e=[])=>x.fromEntries(e))(),a))),Ve=([e,t],s,a,n)=>{e>s[0]&&(s[0]=e),n(t,s[1],a)},ve=(e,t,s)=>q(e,(([e,a],n)=>{const l=ne(t,n,ge);e>l[0]&&(l[0]=e,l[1]=s[n]=a)})),pe=e=>new Set(Array.isArray(e)||I(e)?e:[e]),Se=(e,t)=>e?.add(t),we=/^\d+$/,me=()=>{const e=[];let s=0;return[a=>(a?e.shift():null)??t+s++,t=>{we.test(t)&&H(e)<1e3&&O(e,t)}]},ye=e=>[e,e],Re=()=>[_(),_()],Ie=e=>[...e],Le=([e,t])=>e===t,Je=t=>{const s=e(t);return J(s)||s==n&&R(t)?s:void 0},Me=(e,t,s,a,n)=>I(n)?e.delCell(t,s,a,!0):e.setCell(t,s,a,n),Ee=(e,t,s)=>I(s)?e.delValue(t):e.setValue(t,s),He=e=>JSON.stringify(e,((e,t)=>t instanceof Map?x.fromEntries([...t]):t)),Pe=JSON.parse,Fe=(e,t,s)=>I(e)||!N(e)||G(e)||k(e)?(s?.(),!1):(B(e,((s,a)=>{t(s,a)||$(e,a)})),!G(e)),Oe=(e,t,s)=>ae(e,t,te(e,t)==-s?void 0:s),xe=()=>{let e,s,a,l=!1,i=!1,w=!1,m=!1,y=0;const R=_(),x=_(),z=_(),A=_(),W=_(),k=_(),N=_(),q=_(),ge=_(),Ce=_(),Te=_(),fe=_(),be=_(),Ve=_(),ve=pe(),we=_(),ze=_(),Ae=_(),We=_(),ke=Re(),De=Re(),Ne=Re(),je=Re(),$e=Re(),qe=Re(),Be=Re(),Ge=Re(),Ke=Re(),Qe=Re(),Ue=Re(),Xe=Re(),Ye=Re(),Ze=Re(),_e=Re(),et=Re(),tt=Re(),st=Re(),at=Re(),nt=Re(),lt=Re(),rt=Re(),ot=_(),ct=Re(),[it,dt,ut,ht]=(e=>{let s;const[a,n]=me(),l=_();return[(e,n,r,o=[],c=(()=>[]))=>{s??=Ps;const i=a(1);return ae(l,i,[e,n,r,o,c]),Se(he(n,r??[t],pe),i),i},(e,a,...n)=>P(((e,s=[t])=>{const a=[],n=(e,t)=>t==H(s)?O(a,e):null===s[t]?Y(e,(e=>n(e,t+1))):P([s[t],null],(s=>n(te(e,s),t+1)));return n(e,0),a})(e,a),(e=>Y(e,(e=>te(l,e)[0](s,...a??[],...n))))),e=>L(te(l,e),(([,s,a])=>(he(s,a??[t],void 0,(t=>(Z(t,e),U(t)?1:0))),ae(l,e),n(e),a))),e=>L(te(l,e),(([e,,t=[],a,n])=>{const l=(...r)=>{const o=H(r);o==H(t)?e(s,...r,...n(r)):I(t[o])?P(a[o]?.(...r)??[],(e=>l(...r,e))):l(...r,t[o])};l()}))]})(),gt=e=>{if(!Fe(e,((e,t)=>[r,o].includes(t))))return!1;const t=e[r];return!(!J(t)&&t!=n||(Je(e[o])!=t&&$(e,o),0))},Ct=(t,s)=>(!e||Q(Te,s)||qt(s))&&Fe(t,((e,t)=>Tt(s,t,e)),(()=>qt(s))),Tt=(e,t,s,a)=>Fe(a?s:vt(s,e,t),((a,n)=>L(ft(e,t,n,a),(e=>(s[n]=e,!0)),(()=>!1))),(()=>qt(e,t))),ft=(t,s,a,n)=>e?L(te(te(Te,t),a),(e=>Je(n)!=e[r]?qt(t,s,a,n,e[o]):n),(()=>qt(t,s,a,n))):I(Je(n))?qt(t,s,a,n):n,bt=(e,t)=>Fe(t?e:pt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Bt())),Vt=(e,t)=>s?L(te(be,e),(s=>Je(t)!=s[r]?Bt(e,t,s[o]):t),(()=>Bt(e,t))):I(Je(t))?Bt(e,t):t,vt=(e,t,s)=>(L(te(fe,t),(([a,n])=>{Y(a,((t,s)=>{j(e,s)||(e[s]=t)})),Y(n,(a=>{j(e,a)||qt(t,s,a)}))})),e),pt=e=>(s&&(Y(Ve,((t,s)=>{j(e,s)||(e[s]=t)})),Y(ve,(t=>{j(e,t)||Bt(t)}))),e),St=e=>le(Te,e,((e,t,s)=>{const a=_(),n=pe();le(ne(Te,t,_),s,((e,t,s)=>{ae(e,t,s),L(s[o],(e=>ae(a,t,e)),(()=>Se(n,t)))})),ae(fe,t,[a,n])}),((e,t)=>{ae(Te,t),ae(fe,t)})),wt=e=>le(be,e,((e,t,s)=>{ae(be,t,s),L(s[o],(e=>ae(Ve,t,e)),(()=>Se(ve,t)))}),((e,t)=>{ae(be,t),ae(Ve,t),Z(ve,t)})),mt=e=>G(e)?ms():Vs(e),yt=e=>le(Ae,e,((e,t,s)=>Rt(t,s)),((e,t)=>Ot(t))),Rt=(e,t)=>le(ne(Ae,e,(()=>(Wt(e,1),ae(we,e,me()),ae(ze,e,_()),_()))),t,((t,s,a)=>It(e,t,s,a)),((t,s)=>xt(e,t,s))),It=(e,t,s,a,n)=>le(ne(t,s,(()=>(kt(e,s,1),_()))),a,((t,a,n)=>Lt(e,s,t,a,n)),((a,l)=>zt(e,t,s,a,l,n))),Lt=(e,t,s,a,n)=>{Q(s,a)||Dt(e,t,a,1);const l=te(s,a);n!==l&&(Nt(e,t,a,l,n),ae(s,a,n))},Jt=(e,t,s,a,n)=>L(te(t,s),(t=>Lt(e,s,t,a,n)),(()=>It(e,t,s,vt({[a]:n},e,s)))),Mt=e=>G(e)?Is():vs(e),Et=e=>le(We,e,((e,t,s)=>Ht(t,s)),((e,t)=>At(t))),Ht=(e,t)=>{Q(We,e)||jt(e,1);const s=te(We,e);t!==s&&($t(e,s,t),ae(We,e,t))},Pt=(e,t)=>{const[s]=te(we,e),a=s(t);return Q(te(Ae,e),a)?Pt(e,t):a},Ft=e=>te(Ae,e)??Rt(e,{}),Ot=e=>Rt(e,{}),xt=(e,t,s)=>{const[,a]=te(we,e);a(s),It(e,t,s,{},!0)},zt=(e,t,s,a,n,l)=>{const r=te(te(fe,e)?.[0],n);if(!I(r)&&!l)return Lt(e,s,a,n,r);const o=t=>{Nt(e,s,t,te(a,t)),Dt(e,s,t,-1),ae(a,t)};I(r)?o(n):se(a,o),U(a)&&(kt(e,s,-1),U(ae(t,s))&&(Wt(e,-1),ae(Ae,e),ae(we,e),ae(ze,e)))},At=e=>{const t=te(Ve,e);if(!I(t))return Ht(e,t);$t(e,te(We,e)),jt(e,-1),ae(We,e)},Wt=(e,t)=>Oe(R,e,t),kt=(e,t,s)=>Oe(ne(A,e,_),t,s)&&ae(z,e,ne(z,e,(()=>0))+s),Dt=(e,t,s,a)=>{const n=te(ze,e),l=te(n,s)??0;(0==l&&1==a||1==l&&-1==a)&&Oe(ne(x,e,_),s,a),ae(n,s,l!=-a?l+a:null),Oe(ne(ne(W,e,_),t,_),s,a)},Nt=(e,t,s,a,n)=>ne(ne(ne(k,e,_),t,_),s,(()=>[a,0]))[1]=n,jt=(e,t)=>Oe(N,e,t),$t=(e,t,s)=>ne(q,e,(()=>[t,0]))[1]=s,qt=(e,t,s,a,n)=>(O(ne(ne(ne(ge,e,_),t,_),s,(()=>[])),a),n),Bt=(e,t,s)=>(O(ne(Ce,e,(()=>[])),t),s),Gt=(e,t,s)=>L(te(te(te(k,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ye(os(e,t,s))])),Kt=e=>L(te(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ye(ds(e))])),Qt=e=>U(ge)||U(et[e])?0:Y(e?ue(ge):ge,((t,s)=>Y(t,((t,a)=>Y(t,((t,n)=>dt(et[e],[s,a,n],t))))))),Ut=e=>U(Ce)||U(tt[e])?0:Y(e?ie(Ce):Ce,((t,s)=>dt(tt[e],[s],t))),Xt=(e,t,s,a)=>{if(!U(e))return dt(t,a,(()=>re(e))),se(e,((e,t)=>dt(s,[...a??[],e],1==t))),1},Yt=e=>{const t=us();t!=w&&dt(ke[e],void 0,t);const s=U(Qe[e]),a=U(Ye[e])&&U(Ze[e])&&U(Ke[e])&&U(Ue[e])&&U(qe[e])&&U(Be[e])&&U(Ge[e])&&s&&U(Ne[e])&&U(je[e]),n=U(_e[e])&&U(Xe[e])&&U($e[e])&&U(De[e]);if(!a||!n){const t=e?[ie(R),de(x),ie(z),de(A),ue(W),ue(k)]:[R,x,z,A,W,k];if(!a){Xt(t[0],Ne[e],je[e]),Y(t[1],((t,s)=>Xt(t,qe[e],Be[e],[s]))),Y(t[2],((t,s)=>{0!=t&&dt(Ge[e],[s],as(s))}));const a=pe();Y(t[3],((t,n)=>{Xt(t,Ke[e],Ue[e],[n])&&!s&&(dt(Qe[e],[n,null]),Se(a,n))})),s||Y(t[5],((t,s)=>{if(!Q(a,s)){const a=pe();Y(t,(e=>Y(e,(([t,s],n)=>s!==t?Se(a,n):Z(e,n))))),Y(a,(t=>dt(Qe[e],[s,t])))}})),Y(t[4],((t,s)=>Y(t,((t,a)=>Xt(t,Ye[e],Ze[e],[s,a])))))}if(!n){let s;Y(t[5],((t,a)=>{let n;Y(t,((t,l)=>{let r;Y(t,(([t,o],c)=>{o!==t&&(dt(_e[e],[a,l,c],o,t,Gt),s=n=r=1)})),r&&dt(Xe[e],[a,l],Gt)})),n&&dt($e[e],[a],Gt)})),s&&dt(De[e],void 0,Gt)}}},Zt=e=>{const t=fs();t!=m&&dt(st[e],void 0,t);const s=U(nt[e])&&U(lt[e]),a=U(rt[e])&&U(at[e]);if(!s||!a){const t=e?[ie(N),ie(q)]:[N,q];if(s||Xt(t[0],nt[e],lt[e]),!a){let s;Y(t[1],(([t,a],n)=>{a!==t&&(dt(rt[e],[n],a,t,Kt),s=1)})),s&&dt(at[e],void 0,Kt)}}},_t=(e,...t)=>(Ms((()=>e(...F(t,S)))),Ps),es=()=>ce(Ae),ts=()=>ee(Ae),ss=e=>ee(te(ze,S(e))),as=e=>K(te(Ae,S(e))),ns=e=>ee(te(Ae,S(e))),ls=(e,t,s,a=0,n)=>{return F(E((r=te(Ae,S(e)),o=(e,s)=>[I(t)?s:te(e,S(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),a,I(n)?n:a+n),(([,e])=>e));var l,r,o},rs=(e,t)=>ee(te(te(Ae,S(e)),S(t))),os=(e,t,s)=>te(te(te(Ae,S(e)),S(t)),S(s)),cs=()=>re(We),is=()=>ee(We),ds=e=>te(We,S(e)),us=()=>!U(Ae),hs=e=>Q(Ae,S(e)),gs=(e,t)=>Q(te(ze,S(e)),S(t)),Cs=(e,t)=>Q(te(Ae,S(e)),S(t)),Ts=(e,t,s)=>Q(te(te(Ae,S(e)),S(t)),S(s)),fs=()=>!U(We),bs=e=>Q(We,S(e)),Vs=e=>_t((()=>(e=>Fe(e,Ct,qt))(e)?yt(e):0)),vs=e=>_t((()=>bt(e)?Et(e):0)),ps=e=>{try{mt(Pe(e))}catch{}return Ps},Ss=t=>_t((()=>{if((e=Fe(t,(e=>Fe(e,gt))))&&(St(t),!U(Ae))){const e=es();ms(),Vs(e)}})),ws=e=>_t((()=>{if(s=(e=>Fe(e,gt))(e)){const t=cs();Js(),Is(),s=!0,wt(e),vs(t)}})),ms=()=>_t((()=>yt({}))),ys=e=>_t((e=>Q(Ae,e)?Ot(e):0),e),Rs=(e,t)=>_t(((e,t)=>L(te(Ae,e),(s=>Q(s,t)?xt(e,s,t):0))),e,t),Is=()=>_t((()=>Et({}))),Ls=()=>_t((()=>{St({}),e=!1})),Js=()=>_t((()=>{wt({}),s=!1})),Ms=(e,t)=>{if(-1!=y){Es();const s=e();return Hs(t),s}},Es=()=>(-1!=y&&y++,1==y&&dt(ot,void 0),Ps),Hs=e=>(y>0&&(y--,0==y&&(l=!U(k),i=!U(q),y=1,Qt(1),l&&Yt(1),Ut(1),i&&Zt(1),e?.(Ps)&&(Y(k,((e,t)=>Y(e,((e,s)=>Y(e,(([e],a)=>Me(Ps,t,s,a,e))))))),Y(q,(([e],t)=>Ee(Ps,t,e))),l=i=!1),dt(ct[0],void 0),y=-1,Qt(0),l&&Yt(0),Ut(0),i&&Zt(0),a?.(Ps),dt(ct[1],void 0),y=0,l=i=!1,w=us(),m=fs(),P([R,x,z,A,W,k,ge,N,q,Ce],X))),Ps),Ps={getContent:()=>[es(),cs()],getTables:es,getTableIds:ts,getTable:e=>oe(te(Ae,S(e))),getTableCellIds:ss,getRowCount:as,getRowIds:ns,getSortedRowIds:ls,getRow:(e,t)=>re(te(te(Ae,S(e)),S(t))),getCellIds:rs,getCell:os,getValues:cs,getValueIds:is,getValue:ds,hasTables:us,hasTable:hs,hasTableCell:gs,hasRow:Cs,hasCell:Ts,hasValues:fs,hasValue:bs,getTablesJson:()=>He(Ae),getValuesJson:()=>He(We),getJson:()=>He([Ae,We]),getTablesSchemaJson:()=>He(Te),getValuesSchemaJson:()=>He(be),getSchemaJson:()=>He([Te,be]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>_t((()=>{(G(e)?ms:Vs)(e),(G(t)?Is:vs)(t)})),setTables:Vs,setTable:(e,t)=>_t((e=>Ct(t,e)?Rt(e,t):0),e),setRow:(e,t,s)=>_t(((e,t)=>Tt(e,t,s)?It(e,Ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ms((()=>{let a;return Tt(e,a,t)&&(e=S(e),It(e,Ft(e),a=Pt(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>_t(((e,t)=>{if(Tt(e,t,s,1)){const a=Ft(e);B(s,((s,n)=>Jt(e,a,t,n,s)))}}),e,t),setCell:(e,t,s,a)=>_t(((e,t,s)=>L(ft(e,t,s,M(a)?a(os(e,t,s)):a),(a=>Jt(e,Ft(e),t,s,a)))),e,t,s),setValues:vs,setPartialValues:e=>_t((()=>bt(e,1)?B(e,((e,t)=>Ht(t,e))):0)),setValue:(e,t)=>_t((e=>L(Vt(e,M(t)?t(ds(e)):t),(t=>Ht(e,t)))),e),applyChanges:e=>_t((()=>{B(e[0],((e,t)=>I(e)?ys(t):B(e,((e,s)=>I(e)?Rs(t,s):B(e,((e,a)=>Me(Ps,t,s,a,e))))))),B(e[1],((e,t)=>Ee(Ps,t,e)))})),setTablesJson:ps,setValuesJson:e=>{try{Mt(Pe(e))}catch{}return Ps},setJson:e=>_t((()=>{try{const[t,s]=Pe(e);mt(t),Mt(s)}catch{ps(e)}})),setTablesSchema:Ss,setValuesSchema:ws,setSchema:(e,t)=>_t((()=>{Ss(e),ws(t)})),delTables:ms,delTable:ys,delRow:Rs,delCell:(e,t,s,a)=>_t(((e,t,s)=>L(te(Ae,e),(n=>L(te(n,t),(l=>Q(l,s)?zt(e,n,t,l,s,a):0))))),e,t,s),delValues:Is,delValue:e=>_t((e=>Q(We,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Js,delSchema:()=>_t((()=>{Ls(),Js()})),transaction:Ms,startTransaction:Es,getTransactionChanges:()=>[re(k,((e,t)=>-1===te(R,t)?void 0:re(e,((e,s)=>-1===te(te(A,t),s)?void 0:re(e,(([,e])=>e),((e,t)=>Le(t)))),G)),G),re(q,(([,e])=>e),((e,t)=>Le(t)))],getTransactionLog:()=>[l,i,ce(k,Ie,Le),ce(ge),re(q,Ie,Le),re(Ce),re(R),oe(A),ce(W),re(N)],finishTransaction:Hs,forEachTable:e=>Y(Ae,((t,s)=>e(s,(e=>Y(t,((t,s)=>e(s,(e=>se(t,e))))))))),forEachTableCell:(e,t)=>se(te(ze,S(e)),t),forEachRow:(e,t)=>Y(te(Ae,S(e)),((e,s)=>t(s,(t=>se(e,t))))),forEachCell:(e,t,s)=>se(te(te(Ae,S(e)),S(t)),s),forEachValue:e=>se(We,e),addSortedRowIdsListener:(e,t,s,a,n,l,r)=>{let o=ls(e,t,s,a,n);return it((()=>{const r=ls(e,t,s,a,n);var c,i,d;i=o,H(c=r)===H(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(o=r,l(Ps,e,t,s,a,n,o))}),Qe[r?1:0],[e,t],[ts])},addStartTransactionListener:e=>it(e,ot),addWillFinishTransactionListener:e=>it(e,ct[0]),addDidFinishTransactionListener:e=>it(e,ct[1]),callListener:e=>(ht(e),Ps),delListener:e=>(ut(e),Ps),getListenerStats:()=>({}),createStore:xe,addListener:it,callListeners:dt,addPostTransactionListener:e=>{a=e}};return B({[c+u]:[0,ke,[],()=>[us()]],[u]:[0,De],[h]:[0,Ne],[c+d]:[1,je,[ts],e=>[hs(...e)]],[d]:[1,$e,[ts]],[d+b]:[1,qe,[ts]],[c+d+f]:[2,Be,[ts,ss],e=>[gs(...e)]],[C]:[1,Ge,[ts]],[T]:[1,Ke,[ts]],[c+g]:[2,Ue,[ts,ns],e=>[Cs(...e)]],[g]:[2,Xe,[ts,ns]],[b]:[2,Ye,[ts,ns]],[c+f]:[3,Ze,[ts,ns,rs],e=>[Ts(...e)]],[f]:[3,_e,[ts,ns,rs],e=>ye(os(...e))],InvalidCell:[3,et],[c+v]:[0,st,[],()=>[fs()]],[v]:[0,at],[p]:[0,nt],[c+V]:[1,lt,[is],e=>[bs(...e)]],[V]:[1,rt,[is],e=>ye(ds(e[0]))],InvalidValue:[1,tt]},(([e,t,s,a],n)=>{Ps["add"+n+"Listener"]=(...n)=>it(n[e],t[n[e+1]?1:0],e>0?E(n,0,e):void 0,s,a)})),D(Ps)},ze=2**36,Ae=2**30,We=2**24,ke=2**18,De=4096,Ne=64,je=e=>String.fromCharCode(48+(63&e)),$e=(e,t)=>y(e,t)-48,qe={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},Be=()=>[t,[Ce(),Ce()]];exports.createMergeableStore=e=>{let t=1,s=Be();const[a,n]=(e=>{let t=0,s=0;const a=(n=(e,t)=>(e<<5)+e^y(t),((e,t="",s)=>e.split(t,s))(e).reduce(n,5381)>>>0);var n;const l=e=>{const a=t,[n,l]=I(e)?[0,0]:[$e(r=e,0)*ze+$e(r,1)*Ae+$e(r,2)*We+$e(r,3)*ke+$e(r,4)*De+$e(r,5)*Ne+$e(r,6),$e(r,7)*ke+$e(r,8)*De+$e(r,9)*Ne+$e(r,10),$e(r,11)*We+$e(r,12)*ke+$e(r,13)*De+$e(r,14)*Ne+$e(r,15)];var r;t=Math.max(a,n,Date.now()),s=t==a?t==n?Math.max(s,l):s:t==n?l:-1};return[()=>{return l(),n=++s,r=a,je((e=t)/ze)+je(e/Ae)+je(e/We)+je(e/ke)+je(e/De)+je(e/Ne)+je(e)+je(n/ke)+je(n/De)+je(n/Ne)+je(n)+je(r/We)+je(r/ke)+je(r/De)+je(r/Ne)+je(r);var e,n,r},l]})(e),l=xe(),r=e=>{const s=t;t=0,e(),t=s},o=e=>{const t=[{},{}];return n(e[0]),Ve(e,s,t,(([e,t],[s,a],[n,l])=>{Ve(e,s,n,((e,t,s)=>be(e,t,s,((e,t,s)=>be(e,t,s,ve))))),Ve(t,a,l,ve)})),r((()=>l.applyChanges(t))),c},c={getMergeableContent:()=>Te(s,(([e,t])=>[fe(e,(e=>fe(e,(e=>fe(e,Ie))))),fe(t,Ie)])),setMergeableContent:e=>(r((()=>l.transaction((()=>{l.delTables().delValues(),s=Be()})))),o(e),c),applyMergeableChanges:o,merge:e=>{const t=c.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableChanges(t),o(s)}};return l.addPostTransactionListener((()=>{if(t){const e=a(),[t,n,r,,o]=l.getTransactionLog(),[c,i]=s[1];s[0]=e,t&&(c[0]=e,B(r,((t,s)=>{const a=ne(c[1],s,ge),n=a[1]??=_();a[0]=e,B(t,((t,s)=>{const a=ne(n,s,ge),l=a[1]??=_();a[0]=e,B(t,(([,t],s)=>ae(l,s,[e,t])))}))}))),n&&(i[0]=e,B(o,(([,t],s)=>{ae(i[1],s,[e,t])})))}})),B(l,((e,t)=>c[t]=w(t,"set")||w(t,"del")||w(t,"apply")||m(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),c):w(t,"add")&&m(t,"Listener")?(...s)=>{const a=qe[E(t,3,-8)]??0,n=s[a];return s[a]=(e,...t)=>n(c,...t),e(...s)}:e)),D(c)};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>
|
|
1
|
+
"use strict";const t=t=>typeof t,e=t(""),a=t=>null==t,n=(t,e,n)=>a(t)?n?.():e(t),s=Object,o=t=>s.getPrototypeOf(t),c=s.entries,r=s.keys,i=s.freeze,y=(t,e)=>n(t,(t=>t[e])),d=(t,e)=>e in t,u=(t,e)=>(delete t[e],t),l=(t,e)=>((t,e)=>t.map(e))(c(t),(([t,a])=>e(a,t))),g=t=>r(t).length,h=t=>(t=>!a(t)&&n(o(t),(t=>t==s.prototype||a(o(t))),(()=>!0)))(t)&&0==g(t),p=t=>new Map(t),v=(t,e)=>t?.get(e),w=(t,e,n)=>{return a(n)?(s=t,o=e,s?.delete(o),t):t?.set(e,n);var s,o},f=(t,e,a)=>{var n,s;return n=t,s=e,n?.has(s)||w(t,e,a()),v(t,e)},A=p(),C=p(),L=(t,e)=>[t[e].t,t[e].v],S=(t,e,n,s)=>{const o=a(e)?t:((t,e,a)=>(d(t,e)||(t[e]={}),t[e]))(t,e);let c;return l(n,((t,e)=>{s(o,e,t)&&(c=1)})),l(o,((t,e)=>{d(n,e)||(u(o,e),c=1)})),!a(e)&&h(o)&&u(t,e),c};exports.createAutomergePersister=(s,o,c="tinybase",r)=>(o.change((t=>t[c]={})),((s,o,c,r,y,d,u,[l,g]=[],p=[])=>{let L,S,b,m=0,M=0;f(A,p,(()=>0)),f(C,p,(()=>[]));const D=(u?s.getMergeableContent:null)??s.getContent,O=s.getTransactionChanges,P=async t=>(2!=m&&(m=1,await T.schedule((async()=>{await t(),m=0}))),T),T={load:async(a,n)=>await P((async()=>{try{const a=await o();(u&&(a=>t(a)==e)(a[0])?s.applyMergeableChanges:s.setContent)(a)}catch{s.setContent([a,n])}})),startAutoLoad:async(t={},e={})=>(T.stopAutoLoad(),await T.load(t,e),M=1,b=r((async(t,e)=>{if(e){const t=e();await P((async()=>s.applyChanges(t)))}else await P((async()=>{try{s.setContent(t?.()??await o())}catch(t){d?.(t)}}))})),T),stopAutoLoad:()=>(M&&(y(b),b=void 0,M=0),T),save:async t=>(1!=m&&(m=2,await T.schedule((async()=>{try{await c(D,t)}catch(t){d?.(t)}m=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),L=s.addDidFinishTransactionListener((()=>{const[t,e]=O();h(t)&&h(e)||T.save((()=>[t,e]))})),T),stopAutoSave:()=>(n(L,s.delListener),L=void 0,T),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(v(C,p),...t),await(async()=>{if(!v(A,p)){for(w(A,p,1);!a((t=v(C,p),S=t.shift()));)try{await S()}catch(t){d?.(t)}w(A,p,0)}var t})(),T),getStore:()=>s,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(T[l]=()=>g),i(T)})(s,(async()=>{const t=await o.doc();return 2==g(t[c])?L(t,c):void 0}),(async(t,e)=>o.change((s=>((t,e,s,o)=>{((t,e)=>{h(t[e])&&(t[e]={t:{},v:{}})})(t,e);const[c,r]=L(t,e),i=()=>{d=1};let d=1;if(n(o?.(),(([t,e])=>{d=0,l(t,((t,e)=>d?0:a(t)?u(c,e):n(c[e],(e=>l(t,((t,s)=>d?0:a(t)?u(e,s):n(y(e,s),(e=>l(t,((t,n)=>a(t)?u(e,n):e[n]=t))),i)))),i))),l(e,((t,e)=>d?0:a(t)?u(r,e):r[e]=t))})),d){const[t,e]=s();S(c,void 0,t,((t,e,a)=>S(c,e,a,((t,e,a)=>S(t,e,a,((t,e,a)=>{if(y(t,e)!==a)return t[e]=a,1})))))),S(r,void 0,e,((t,e,a)=>{y(r,e)!==a&&(r[e]=a)}))}})(s,c,t,e)))),(t=>{const e=({doc:e})=>t((()=>L(e,c)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),r,!1,["getDocHandle",o]));
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>
|
|
1
|
+
"use strict";const t=t=>typeof t,e=t(""),a=t=>null==t,s=(t,e,s)=>a(t)?s?.():e(t),n=Object,o=t=>n.getPrototypeOf(t),r=n.keys,c=n.freeze,i=t=>(t=>!a(t)&&s(o(t),(t=>t==n.prototype||a(o(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),y=JSON.parse,l=t=>new Map(t),g=(t,e)=>t?.get(e),u=(t,e,s)=>{return a(s)?(n=t,o=e,n?.delete(o),t):t?.set(e,s);var n,o},d=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||u(t,e,a()),g(t,e)},p=l(),w=l(),h="storage",v=globalThis.window,S=(o,r,l,S)=>((n,o,r,y,l,h,v,[S,f]=[],A=[])=>{let L,C,m,b=0,M=0;d(p,A,(()=>0)),d(w,A,(()=>[]));const O=(v?n.getMergeableContent:null)??n.getContent,E=n.getTransactionChanges,N=async t=>(2!=b&&(b=1,await P.schedule((async()=>{await t(),b=0}))),P),P={load:async(a,s)=>await N((async()=>{try{const a=await o();(v&&(a=>t(a)==e)(a[0])?n.applyMergeableChanges:n.setContent)(a)}catch{n.setContent([a,s])}})),startAutoLoad:async(t={},e={})=>(P.stopAutoLoad(),await P.load(t,e),M=1,m=y((async(t,e)=>{if(e){const t=e();await N((async()=>n.applyChanges(t)))}else await N((async()=>{try{n.setContent(t?.()??await o())}catch(t){h?.(t)}}))})),P),stopAutoLoad:()=>(M&&(l(m),m=void 0,M=0),P),save:async t=>(1!=b&&(b=2,await P.schedule((async()=>{try{await r(O,t)}catch(t){h?.(t)}b=0}))),P),startAutoSave:async()=>(await P.stopAutoSave().save(),L=n.addDidFinishTransactionListener((()=>{const[t,e]=E();i(t)&&i(e)||P.save((()=>[t,e]))})),P),stopAutoSave:()=>(s(L,n.delListener),L=void 0,P),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(g(w,A),...t),await(async()=>{if(!g(p,A)){for(u(p,A,1);!a((t=g(w,A),C=t.shift()));)try{await C()}catch(t){h?.(t)}u(p,A,0)}var t})(),P),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return S&&(P[S]=()=>f),c(P)})(o,(async()=>y(l.getItem(r))),(async t=>{return l.setItem(r,(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?n.fromEntries([...e]):e))));var e}),(t=>{const e=e=>{e.storageArea===l&&e.key===r&&t((()=>y(e.newValue)))};return v.addEventListener(h,e),e}),(t=>v.removeEventListener(h,t)),S,!1,["getStorageName",r]);exports.createLocalPersister=(t,e,a)=>S(t,e,localStorage,a),exports.createSessionPersister=(t,e,a)=>S(t,e,sessionStorage,a);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==n,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",T=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),L=a=>0==E(a),O=(a,t)=>a.filter(t),R=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,C=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),N=Object,g=a=>N.getPrototypeOf(a),S=N.entries,D=N.keys,b=N.freeze,I=(a=[])=>N.fromEntries(a),M=(...a)=>N.assign({},...a),F=(a,t)=>t in a,P=(a,t)=>m(S(a),(([a,e])=>t(e,a))),$=a=>N.values(a),_=a=>E(D(a)),B=a=>(a=>!r(a)&&l(g(a),(a=>a==N.prototype||r(g(a))),(()=>!0)))(a)&&0==_(a),H=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),U=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),Y=(a,t,e)=>(h(a,t)||U(a,t,e()),j(a,t)),k=(a,t,e,s=U)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>F(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||r(a)?a:[a]),J=(a,t)=>a?.add(t),q=A+"*FROM",z="FROM pragma_table_",K="WHERE",V=(a,t,n,i)=>{const c=H();return[async()=>k(c,I(await u(m(await a("SELECT name "+z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(A+" name,type "+z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>U(c,t,k(Y(c,t,H),e,((a,t,e)=>{e!=j(a,t)&&U(a,t,e)}),((a,t)=>U(a,t))))),((a,t)=>U(c,t))),async(t,e)=>((a,t)=>!r(j(j(c,a),t)))(t,e)?I(O(m(await a(q+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!B(t)))):{},async(t,n,o,l,w,y=!1)=>{const E=G();P(o??{},(a=>m(D(a??{}),(a=>J(E,a)))));const d=C(E);if(!y&&w&&L(d)&&h(c,t))return await a("DROP TABLE"+v(t)),void U(c,t);if(L(d)||h(c,t)){const s=j(c,t),i=G(W(s));await u([...m(d,(async n=>{f(i,n)||(await a(`ALTER TABLE${v(t)}ADD${v(n)}`),U(s,n,e))})),...!y&&l?m(C(i),(async e=>{e!=n&&(await a(`ALTER TABLE${v(t)}DROP${v(e)}`),U(s,e))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(n)} PRIMARY KEY ON CONFLICT REPLACE${T(m(d,(a=>s+v(a))))});`),U(c,t,H([[n,e],...m(d,(a=>[a,e]))]));if(y)r(o)?await a("DELETE FROM"+v(t)+"WHERE 1"):await u(P(o,(async(e,s)=>{r(e)?await a("DELETE FROM"+v(t)+K+v(n)+"=?",[s]):L(d)||await Q(a,t,n,D(e),[s,...$(e)],i)})));else if(L(d))h(c,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=O(W(j(c,t)),(a=>a!=n)),s=[],i=[];P(o??{},((a,t)=>{R(s,t,...m(e,(t=>a?.[t]))),R(i,t)})),await Q(a,t,n,e,s),await a("DELETE FROM"+v(t)+K+v(n)+"NOT IN("+X(i)+")",i)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){n?.(a)}return await a("END"),e}]},Q=async(a,t,n,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(n)+T(m(c,(a=>s+v(a))))+")VALUES"+y(i(`,(?${i(",?",E(c))})`,E(o)/(E(c)+1)),1)+(r?"ON CONFLICT("+v(n)+")DO UPDATE SET"+T(m(c,(a=>v(a)+"=excluded."+v(a))),s):e),m(o,(a=>a??null))),X=a=>T(m(a,(()=>"?")),s),Z=JSON.parse,aa=H(),ta=H(),ea=(a,t,e,s,n,i,c,[o,y]=[],E=[])=>{let u,d,p,v=0,A=0;Y(aa,E,(()=>0)),Y(ta,E,(()=>[]));const T=(c?a.getMergeableContent:null)??a.getContent,m=a.getTransactionChanges,L=async a=>(2!=v&&(v=1,await O.schedule((async()=>{await a(),v=0}))),O),O={load:async(e,s)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(O.stopAutoLoad(),await O.load(e,n),A=1,p=s((async(e,s)=>{if(s){const t=s();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),O),stopAutoLoad:()=>(A&&(n(p),p=void 0,A=0),O),save:async a=>(1!=v&&(v=2,await O.schedule((async()=>{try{await e(T,a)}catch(a){i?.(a)}v=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=m();B(a)&&B(t)||O.save((()=>[a,t]))})),O),stopAutoSave:()=>(l(u,a.delListener),u=void 0,O),schedule:async(...a)=>(R(j(ta,E),...a),await(async()=>{if(!j(aa,E)){for(U(aa,E,1);!r((a=j(ta,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}U(aa,E,0)}var a})(),O),getStore:()=>a,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(O[o]=()=>y),b(O)},sa="store",na=(a,t,e,s,n,[i],c,o,r)=>{const[l,w,y,E]=V(t,c,n);return ea(a,(async()=>await E((async()=>(await l(),Z((await w(i,p))[d]?.[sa]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,p,{[d]:{[sa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,[r,o],o)},ia=(a,t,e,s,n,[i,c,[o,l,w]],y,E,v,A)=>{const[T,m,L,R]=V(t,y,n,A),h=async(a,t)=>await u(x(c,(async([e,s,n,i],c)=>{t&&!F(a,c)||await L(e,s,a[c],n,i,t)}))),C=async(a,t)=>l?await L(w,p,{[d]:a},!0,!0,t):null;return ea(a,(async()=>await R((async()=>{await T();const a=await(async()=>I(O(await u(x(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await m(w,p))[d]:{})();return B(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await R((async()=>{if(await T(),r(t)){const[t,e]=a();await h(t),await C(e)}else{const[a,e]=t();await h(a,!0),await C(e,!0)}}))),e,s,n,!1,[v,E],E)},ca="json",oa="autoLoadIntervalSeconds",ra="rowIdColumnName",la="tableId",wa="tableName",ya={mode:ca,[oa]:1},Ea={load:0,save:0,[wa]:t+"_values"},ua=(a,t,e,s)=>{const n=H();return P(a,((a,i)=>{const c=y($(M(t,w(a)?{[e]:a}:a)),0,_(t));r(c[0])||s(i,c[0])||U(n,i,c)})),n},da="pragma ",pa="data_version",va="schema_version",Aa=(a,e,s,n,i,c,r,l,E="getDb",u)=>{let d,v,T;const[m,L,O,R]=(a=>{const e=(a=>M(ya,w(a)?{storeTableName:a}:a??{}))(a),s=e[oa];if(e.mode==ca){const{storeTableName:a=t}=e;return[1,s,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y($(M(Ea,c)),0,_(Ea)),r=o[2],l=G(r);return[0,s,[ua(n,{[la]:null,[ra]:p},la,(a=>J(l,a)&&a==r)),ua(i,{[wa]:null,[ra]:p,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>J(l,t)&&t==r)),o],l]})(e);return(m?na:ia)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+pa))[0][pa],e=(await s(da+va))[0][va],n=(await s(A+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(v??=e)&&n==(T??=n)||(a(),d=t,v=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),n((t=>R.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),d=v=null,i(t)}),r,O,C(R),l,E,u)};exports.createCrSqliteWasmPersister=(a,t,e,s,n)=>Aa(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==n,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",A=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),L=a=>0==E(a),R=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],g=(a,t)=>a?.delete(t),C=Object,N=a=>C.getPrototypeOf(a),b=C.entries,D=C.keys,S=C.freeze,I=(a=[])=>C.fromEntries(a),M=(...a)=>C.assign({},...a),F=(a,t)=>t in a,P=(a,t)=>m(b(a),(([a,e])=>t(e,a))),$=a=>C.values(a),_=a=>E(D(a)),B=a=>(a=>!o(a)&&l(N(a),(a=>a==C.prototype||o(N(a))),(()=>!0)))(a)&&0==_(a),H=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),Y=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>o(e)?(g(a,t),a):a?.set(t,e),q=(a,t,e)=>(h(a,t)||k(a,t,e()),j(a,t)),x=(a,t,e,s=k)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>F(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||o(a)?a:[a]),J=(a,t)=>a?.add(t),U=T+"*FROM",z="FROM pragma_table_",K="WHERE",V=(a,t,n,i)=>{const c=H();return[async()=>x(c,I(await u(m(await a("SELECT name "+z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(T+" name,type "+z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(c,t,x(q(c,t,H),e,((a,t,e)=>{e!=j(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(c,t))),async(t,e)=>((a,t)=>!o(j(j(c,a),t)))(t,e)?I(R(m(await a(U+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,n,r,l,w,y=!1)=>{const E=G();P(r??{},(a=>m(D(a??{}),(a=>J(E,a)))));const d=O(E);if(!y&&w&&L(d)&&h(c,t))return await a("DROP TABLE"+v(t)),void k(c,t);if(L(d)||h(c,t)){const s=j(c,t),i=G(W(s));await u([...m(d,(async n=>{g(i,n)||(await a(`ALTER TABLE${v(t)}ADD${v(n)}`),k(s,n,e))})),...!y&&l?m(O(i),(async e=>{e!=n&&(await a(`ALTER TABLE${v(t)}DROP${v(e)}`),k(s,e))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(n)} PRIMARY KEY ON CONFLICT REPLACE${A(m(d,(a=>s+v(a))))});`),k(c,t,H([[n,e],...m(d,(a=>[a,e]))]));if(y)o(r)?await a("DELETE FROM"+v(t)+"WHERE 1"):await u(P(r,(async(e,s)=>{o(e)?await a("DELETE FROM"+v(t)+K+v(n)+"=?",[s]):L(d)||await Q(a,t,n,D(e),[s,...$(e)],i)})));else if(L(d))h(c,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=R(W(j(c,t)),(a=>a!=n)),s=[],i=[];P(r??{},((a,t)=>{f(s,t,...m(e,(t=>a?.[t]))),f(i,t)})),await Q(a,t,n,e,s),await a("DELETE FROM"+v(t)+K+v(n)+"NOT IN("+X(i)+")",i)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){n?.(a)}return await a("END"),e}]},Q=async(a,t,n,c,r,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(n)+A(m(c,(a=>s+v(a))))+")VALUES"+y(i(`,(?${i(",?",E(c))})`,E(r)/(E(c)+1)),1)+(o?"ON CONFLICT("+v(n)+")DO UPDATE SET"+A(m(c,(a=>v(a)+"=excluded."+v(a))),s):e),m(r,(a=>a??null))),X=a=>A(m(a,(()=>"?")),s),Z=JSON.parse,aa=H(),ta=H(),ea=(a,t,e,s,n,i,c,[r,y]=[],E=[])=>{let u,d,p,v=0,T=0;q(aa,E,(()=>0)),q(ta,E,(()=>[]));const A=(c?a.getMergeableContent:null)??a.getContent,m=a.getTransactionChanges,L=async a=>(2!=v&&(v=1,await R.schedule((async()=>{await a(),v=0}))),R),R={load:async(e,s)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(R.stopAutoLoad(),await R.load(e,n),T=1,p=s((async(e,s)=>{if(s){const t=s();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),R),stopAutoLoad:()=>(T&&(n(p),p=void 0,T=0),R),save:async a=>(1!=v&&(v=2,await R.schedule((async()=>{try{await e(A,a)}catch(a){i?.(a)}v=0}))),R),startAutoSave:async()=>(await R.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=m();B(a)&&B(t)||R.save((()=>[a,t]))})),R),stopAutoSave:()=>(l(u,a.delListener),u=void 0,R),schedule:async(...a)=>(f(j(ta,E),...a),await(async()=>{if(!j(aa,E)){for(k(aa,E,1);!o((a=j(ta,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}k(aa,E,0)}var a})(),R),getStore:()=>a,destroy:()=>R.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(R[r]=()=>y),S(R)},sa="store",na=(a,t,e,s,n,[i],c,r,o)=>{const[l,w,y,E]=V(t,c,n);return ea(a,(async()=>await E((async()=>(await l(),Z((await w(i,p))[d]?.[sa]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,p,{[d]:{[sa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?C.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,[o,r],r)},ia=(a,t,e,s,n,[i,c,[r,l,w]],y,E,v,T)=>{const[A,m,L,f]=V(t,y,n,T),h=async(a,t)=>await u(Y(c,(async([e,s,n,i],c)=>{t&&!F(a,c)||await L(e,s,a[c],n,i,t)}))),O=async(a,t)=>l?await L(w,p,{[d]:a},!0,!0,t):null;return ea(a,(async()=>await f((async()=>{await A();const a=await(async()=>I(R(await u(Y(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>r?(await m(w,p))[d]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await f((async()=>{if(await A(),o(t)){const[t,e]=a();await h(t),await O(e)}else{const[a,e]=t();await h(a,!0),await O(e,!0)}}))),e,s,n,!1,[v,E],E)},ca="json",ra="autoLoadIntervalSeconds",oa="rowIdColumnName",la="tableId",wa="tableName",ya={mode:ca,[ra]:1},Ea={load:0,save:0,[wa]:t+"_values"},ua=(a,t,e,s)=>{const n=H();return P(a,((a,i)=>{const c=y($(M(t,w(a)?{[e]:a}:a)),0,_(t));o(c[0])||s(i,c[0])||k(n,i,c)})),n},da="pragma ",pa="data_version",va="schema_version",Ta=(a,e,s,n,i,c,o,l,E="getDb",u)=>{let d,v,A;const[m,L,R,f]=(a=>{const e=(a=>M(ya,w(a)?{storeTableName:a}:a??{}))(a),s=e[ra];if(e.mode==ca){const{storeTableName:a=t}=e;return[1,s,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,r=y($(M(Ea,c)),0,_(Ea)),o=r[2],l=G(o);return[0,s,[ua(n,{[la]:null,[oa]:p},la,(a=>J(l,a)&&a==o)),ua(i,{[wa]:null,[oa]:p,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>J(l,t)&&t==o)),r],l]})(e);return(m?na:ia)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+pa))[0][pa],e=(await s(da+va))[0][va],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(v??=e)&&n==(A??=n)||(a(),d=t,v=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),n((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{r(a),d=v=null,i(t)}),o,R,O(f),l,E,u)};exports.createElectricSqlPersister=(a,t,e,s,n)=>Ta(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return s=({tablename:t})=>a(t),t.notifier.alias(e).forEach(s);var s}))),(a=>a()),s,n,t,"getElectricClient");
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",s="
|
|
1
|
+
"use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",s="",n=",",i=t(s),c=(a,t)=>a.repeat(t),r=Promise,o=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,E=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>r.all(a),p="_",v="_id",A=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",T=(a,t="")=>a.join(t),L=(a,t)=>a.map(t),R=a=>0==u(a),O=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,g=a=>[...a?.values()??[]],C=(a,t)=>a?.delete(t),f=Object,D=a=>f.getPrototypeOf(a),S=f.entries,b=f.keys,I=f.freeze,M=(a=[])=>f.fromEntries(a),F=(...a)=>f.assign({},...a),P=(a,t)=>t in a,$=(a,t)=>L(S(a),(([a,e])=>t(e,a))),_=a=>f.values(a),x=a=>u(b(a)),B=a=>(a=>!l(a)&&y(D(a),(a=>a==f.prototype||l(D(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),q=(a,t)=>L([...a?.entries()??[]],(([a,e])=>t(e,a))),Y=(a,t,e)=>l(e)?(C(a,t),a):a?.set(t,e),k=(a,t,e)=>(N(a,t)||Y(a,t,e()),j(a,t)),G=(a,t,e,s=Y)=>($(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:s(a,e))),a),J=a=>new Set(Array.isArray(a)||l(a)?a:[a]),U=(a,t)=>a?.add(t),z=m+"*FROM",K="FROM pragma_table_",V="WHERE",Q=(a,t,e,i)=>{const c=H();return[async()=>G(c,M(await d(L(await a("SELECT name "+K+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+Z(t)+")ORDER BY name",t),(async({name:t})=>[t,M(L(await a(m+" name,type "+K+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>Y(c,t,G(k(c,t,H),e,((a,t,e)=>{e!=j(a,t)&&Y(a,t,e)}),((a,t)=>Y(a,t))))),((a,t)=>Y(c,t))),async(t,e)=>((a,t)=>!l(j(j(c,a),t)))(t,e)?M(O(L(await a(z+A(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,r,o,y,w=!1)=>{const E=J();$(r??{},(a=>L(b(a??{}),(a=>U(E,a)))));const u=g(E);if(!w&&y&&R(u)&&N(c,t))return await a("DROP TABLE"+A(t)),void Y(c,t);if(R(u)||N(c,t)){const n=j(c,t),i=J(W(n));await d([...L(u,(async e=>{C(i,e)||(await a(`ALTER TABLE${A(t)}ADD${A(e)}`),Y(n,e,s))})),...!w&&o?L(g(i),(async s=>{s!=e&&(await a(`ALTER TABLE${A(t)}DROP${A(s)}`),Y(n,s))})):[]])}else await a(`CREATE TABLE${A(t)}(${A(e)} PRIMARY KEY ON CONFLICT REPLACE${T(L(u,(a=>n+A(a))))});`),Y(c,t,H([[e,s],...L(u,(a=>[a,s]))]));if(w)l(r)?await a("DELETE FROM"+A(t)+"WHERE 1"):await d($(r,(async(s,n)=>{l(s)?await a("DELETE FROM"+A(t)+V+A(e)+"=?",[n]):R(u)||await X(a,t,e,b(s),[n,..._(s)],i)})));else if(R(u))N(c,t)&&await a("DELETE FROM"+A(t)+"WHERE 1");else{const s=O(W(j(c,t)),(a=>a!=e)),n=[],i=[];$(r??{},((a,t)=>{h(n,t,...L(s,(t=>a?.[t]))),h(i,t)})),await X(a,t,e,s,n),await a("DELETE FROM"+A(t)+V+A(e)+"NOT IN("+Z(i)+")",i)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},X=async(a,t,e,i,r,o=!0)=>await a("INSERT "+(o?s:"OR REPLACE ")+"INTO"+A(t)+"("+A(e)+T(L(i,(a=>n+A(a))))+")VALUES"+E(c(`,(?${c(",?",u(i))})`,u(r)/(u(i)+1)),1)+(o?"ON CONFLICT("+A(e)+")DO UPDATE SET"+T(L(i,(a=>A(a)+"=excluded."+A(a))),n):s),L(r,(a=>a??null))),Z=a=>T(L(a,(()=>"?")),n),aa=JSON.parse,ta=H(),ea=H(),sa=(a,t,e,s,n,i,c,[r,o]=[],E=[])=>{let u,d,p,v=0,A=0;k(ta,E,(()=>0)),k(ea,E,(()=>[]));const m=(c?a.getMergeableContent:null)??a.getContent,T=a.getTransactionChanges,L=async a=>(2!=v&&(v=1,await R.schedule((async()=>{await a(),v=0}))),R),R={load:async(e,s)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(R.stopAutoLoad(),await R.load(e,n),A=1,p=s((async(e,s)=>{if(s){const t=s();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),R),stopAutoLoad:()=>(A&&(n(p),p=void 0,A=0),R),save:async a=>(1!=v&&(v=2,await R.schedule((async()=>{try{await e(m,a)}catch(a){i?.(a)}v=0}))),R),startAutoSave:async()=>(await R.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=T();B(a)&&B(t)||R.save((()=>[a,t]))})),R),stopAutoSave:()=>(y(u,a.delListener),u=void 0,R),schedule:async(...a)=>(h(j(ea,E),...a),await(async()=>{if(!j(ta,E)){for(Y(ta,E,1);!l((a=j(ea,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}Y(ta,E,0)}var a})(),R),getStore:()=>a,destroy:()=>R.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(R[r]=()=>o),I(R)},na="store",ia=(a,t,e,s,n,[i],c,r,o)=>{const[l,y,w,E]=Q(t,c,n);return sa(a,(async()=>await E((async()=>(await l(),aa((await y(i,v))[p]?.[na]??"null"))))),(async a=>await E((async()=>{var t;await l(),await w(i,v,{[p]:{[na]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?f.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,[o,r],r)},ca=(a,t,e,s,n,[i,c,[r,o,y]],w,E,u,A)=>{const[m,T,L,R]=Q(t,w,n,A),h=async(a,t)=>await d(q(c,(async([e,s,n,i],c)=>{t&&!P(a,c)||await L(e,s,a[c],n,i,t)}))),N=async(a,t)=>o?await L(y,v,{[p]:a},!0,!0,t):null;return sa(a,(async()=>await R((async()=>{await m();const a=await(async()=>M(O(await d(q(i,(async([a,t],e)=>[a,await T(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>r?(await T(y,v))[p]:{})();return B(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await R((async()=>{if(await m(),l(t)){const[t,e]=a();await h(t),await N(e)}else{const[a,e]=t();await h(a,!0),await N(e,!0)}}))),e,s,n,!1,[u,E],E)},ra="json",oa="autoLoadIntervalSeconds",la="rowIdColumnName",ya="tableId",wa="tableName",Ea={mode:ra,[oa]:1},ua={load:0,save:0,[wa]:e+"_values"},da=(a,t,e,s)=>{const n=H();return $(a,((a,i)=>{const c=E(_(F(t,w(a)?{[e]:a}:a)),0,x(t));l(c[0])||s(i,c[0])||Y(n,i,c)})),n},pa="pragma ",va="data_version",Aa="schema_version",ma=(a,t,s,n,i,c,r,l,y="getDb",u)=>{let d,p,A;const[T,L,R,O]=(a=>{const t=(a=>F(Ea,w(a)?{storeTableName:a}:a??{}))(a),s=t[oa];if(t.mode==ra){const{storeTableName:a=e}=t;return[1,s,[a],J(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=t,r=E(_(F(ua,c)),0,x(ua)),o=r[2],l=J(o);return[0,s,[da(n,{[ya]:null,[la]:v},ya,(a=>U(l,a)&&a==o)),da(i,{[wa]:null,[la]:v,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>U(l,t)&&t==o)),r],l]})(t);return(T?ia:ca)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(pa+va))[0][va],e=(await s(pa+Aa))[0][Aa],n=(await s(m+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(p??=e)&&n==(A??=n)||(a(),d=t,p=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),n((t=>O.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),d=p=null,i(t)}),r,R,g(O),l,y,u)};exports.createExpoSqliteNextPersister=(t,e,s,n,i)=>ma(t,s,(async(a,t=[])=>await e.getAllAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),n,i,e);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==n,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",m=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),L=a=>0==E(a),R=(a,t)=>a.filter(t),O=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,g=a=>[...a?.values()??[]],C=(a,t)=>a?.delete(t),N=Object,f=a=>N.getPrototypeOf(a),D=N.entries,S=N.keys,b=N.freeze,I=(a=[])=>N.fromEntries(a),M=(...a)=>N.assign({},...a),F=(a,t)=>t in a,P=(a,t)=>T(D(a),(([a,e])=>t(e,a))),$=a=>N.values(a),_=a=>E(S(a)),B=a=>(a=>!r(a)&&l(f(a),(a=>a==N.prototype||r(f(a))),(()=>!0)))(a)&&0==_(a),H=a=>new Map(a),x=a=>[...a?.keys()??[]],W=(a,t)=>a?.get(t),j=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),Y=(a,t,e)=>r(e)?(C(a,t),a):a?.set(t,e),k=(a,t,e)=>(h(a,t)||Y(a,t,e()),W(a,t)),q=(a,t,e,s=Y)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>F(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||r(a)?a:[a]),J=(a,t)=>a?.add(t),U=A+"*FROM",z="FROM pragma_table_",K="WHERE",V=(a,t,n,i)=>{const c=H();return[async()=>q(c,I(await u(T(await a("SELECT name "+z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(T(await a(A+" name,type "+z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>Y(c,t,q(k(c,t,H),e,((a,t,e)=>{e!=W(a,t)&&Y(a,t,e)}),((a,t)=>Y(a,t))))),((a,t)=>Y(c,t))),async(t,e)=>((a,t)=>!r(W(W(c,a),t)))(t,e)?I(R(T(await a(U+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!B(t)))):{},async(t,n,o,l,w,y=!1)=>{const E=G();P(o??{},(a=>T(S(a??{}),(a=>J(E,a)))));const d=g(E);if(!y&&w&&L(d)&&h(c,t))return await a("DROP TABLE"+v(t)),void Y(c,t);if(L(d)||h(c,t)){const s=W(c,t),i=G(x(s));await u([...T(d,(async n=>{C(i,n)||(await a(`ALTER TABLE${v(t)}ADD${v(n)}`),Y(s,n,e))})),...!y&&l?T(g(i),(async e=>{e!=n&&(await a(`ALTER TABLE${v(t)}DROP${v(e)}`),Y(s,e))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(n)} PRIMARY KEY ON CONFLICT REPLACE${m(T(d,(a=>s+v(a))))});`),Y(c,t,H([[n,e],...T(d,(a=>[a,e]))]));if(y)r(o)?await a("DELETE FROM"+v(t)+"WHERE 1"):await u(P(o,(async(e,s)=>{r(e)?await a("DELETE FROM"+v(t)+K+v(n)+"=?",[s]):L(d)||await Q(a,t,n,S(e),[s,...$(e)],i)})));else if(L(d))h(c,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=R(x(W(c,t)),(a=>a!=n)),s=[],i=[];P(o??{},((a,t)=>{O(s,t,...T(e,(t=>a?.[t]))),O(i,t)})),await Q(a,t,n,e,s),await a("DELETE FROM"+v(t)+K+v(n)+"NOT IN("+X(i)+")",i)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){n?.(a)}return await a("END"),e}]},Q=async(a,t,n,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(n)+m(T(c,(a=>s+v(a))))+")VALUES"+y(i(`,(?${i(",?",E(c))})`,E(o)/(E(c)+1)),1)+(r?"ON CONFLICT("+v(n)+")DO UPDATE SET"+m(T(c,(a=>v(a)+"=excluded."+v(a))),s):e),T(o,(a=>a??null))),X=a=>m(T(a,(()=>"?")),s),Z=JSON.parse,aa=H(),ta=H(),ea=(a,t,e,s,n,i,c,[o,y]=[],E=[])=>{let u,d,p,v=0,A=0;k(aa,E,(()=>0)),k(ta,E,(()=>[]));const m=(c?a.getMergeableContent:null)??a.getContent,T=a.getTransactionChanges,L=async a=>(2!=v&&(v=1,await R.schedule((async()=>{await a(),v=0}))),R),R={load:async(e,s)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(R.stopAutoLoad(),await R.load(e,n),A=1,p=s((async(e,s)=>{if(s){const t=s();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),R),stopAutoLoad:()=>(A&&(n(p),p=void 0,A=0),R),save:async a=>(1!=v&&(v=2,await R.schedule((async()=>{try{await e(m,a)}catch(a){i?.(a)}v=0}))),R),startAutoSave:async()=>(await R.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=T();B(a)&&B(t)||R.save((()=>[a,t]))})),R),stopAutoSave:()=>(l(u,a.delListener),u=void 0,R),schedule:async(...a)=>(O(W(ta,E),...a),await(async()=>{if(!W(aa,E)){for(Y(aa,E,1);!r((a=W(ta,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}Y(aa,E,0)}var a})(),R),getStore:()=>a,destroy:()=>R.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(R[o]=()=>y),b(R)},sa="store",na=(a,t,e,s,n,[i],c,o,r)=>{const[l,w,y,E]=V(t,c,n);return ea(a,(async()=>await E((async()=>(await l(),Z((await w(i,p))[d]?.[sa]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,p,{[d]:{[sa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,[r,o],o)},ia=(a,t,e,s,n,[i,c,[o,l,w]],y,E,v,A)=>{const[m,T,L,O]=V(t,y,n,A),h=async(a,t)=>await u(j(c,(async([e,s,n,i],c)=>{t&&!F(a,c)||await L(e,s,a[c],n,i,t)}))),g=async(a,t)=>l?await L(w,p,{[d]:a},!0,!0,t):null;return ea(a,(async()=>await O((async()=>{await m();const a=await(async()=>I(R(await u(j(i,(async([a,t],e)=>[a,await T(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await T(w,p))[d]:{})();return B(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await m(),r(t)){const[t,e]=a();await h(t),await g(e)}else{const[a,e]=t();await h(a,!0),await g(e,!0)}}))),e,s,n,!1,[v,E],E)},ca="json",oa="autoLoadIntervalSeconds",ra="rowIdColumnName",la="tableId",wa="tableName",ya={mode:ca,[oa]:1},Ea={load:0,save:0,[wa]:t+"_values"},ua=(a,t,e,s)=>{const n=H();return P(a,((a,i)=>{const c=y($(M(t,w(a)?{[e]:a}:a)),0,_(t));r(c[0])||s(i,c[0])||Y(n,i,c)})),n},da="pragma ",pa="data_version",va="schema_version",Aa=(a,e,s,n,i,c,r,l,E="getDb",u)=>{let d,v,m;const[T,L,R,O]=(a=>{const e=(a=>M(ya,w(a)?{storeTableName:a}:a??{}))(a),s=e[oa];if(e.mode==ca){const{storeTableName:a=t}=e;return[1,s,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y($(M(Ea,c)),0,_(Ea)),r=o[2],l=G(r);return[0,s,[ua(n,{[la]:null,[ra]:p},la,(a=>J(l,a)&&a==r)),ua(i,{[wa]:null,[ra]:p,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>J(l,t)&&t==r)),o],l]})(e);return(T?na:ia)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+pa))[0][pa],e=(await s(da+va))[0][va],n=(await s(A+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(v??=e)&&n==(m??=n)||(a(),d=t,v=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),n((t=>O.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),d=v=null,i(t)}),r,R,g(O),l,E,u)};exports.createExpoSqlitePersister=(a,t,e,s,n)=>Aa(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),s,n,t);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var t=require("fs"),a=require("fs/promises");const e="utf8",
|
|
1
|
+
"use strict";var t=require("fs"),a=require("fs/promises");const e=t=>typeof t,s=e(""),n="utf8",o=t=>null==t,r=(t,a,e)=>o(t)?e?.():a(t),i=Object,c=t=>i.getPrototypeOf(t),y=i.keys,l=i.freeze,u=t=>(t=>!o(t)&&r(c(t),(t=>t==i.prototype||o(c(t))),(()=>!0)))(t)&&0==(t=>y(t).length)(t),p=JSON.parse,d=t=>new Map(t),w=(t,a)=>t?.get(a),h=(t,a,e)=>{return o(e)?(s=t,n=a,s?.delete(n),t):t?.set(a,e);var s,n},g=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||h(t,a,e()),w(t,a)},v=d(),f=d();exports.createFilePersister=(c,y,d)=>((t,a,n,i,c,y,p,[d,A]=[],C=[])=>{let S,L,F,M=0,O=0;g(v,C,(()=>0)),g(f,C,(()=>[]));const b=(p?t.getMergeableContent:null)??t.getContent,P=t.getTransactionChanges,m=async t=>(2!=M&&(M=1,await q.schedule((async()=>{await t(),M=0}))),q),q={load:async(n,o)=>await m((async()=>{try{const n=await a();(p&&(t=>e(t)==s)(n[0])?t.applyMergeableChanges:t.setContent)(n)}catch{t.setContent([n,o])}})),startAutoLoad:async(e={},s={})=>(q.stopAutoLoad(),await q.load(e,s),O=1,F=i((async(e,s)=>{if(s){const a=s();await m((async()=>t.applyChanges(a)))}else await m((async()=>{try{t.setContent(e?.()??await a())}catch(t){y?.(t)}}))})),q),stopAutoLoad:()=>(O&&(c(F),F=void 0,O=0),q),save:async t=>(1!=M&&(M=2,await q.schedule((async()=>{try{await n(b,t)}catch(t){y?.(t)}M=0}))),q),startAutoSave:async()=>(await q.stopAutoSave().save(),S=t.addDidFinishTransactionListener((()=>{const[t,a]=P();u(t)&&u(a)||q.save((()=>[t,a]))})),q),stopAutoSave:()=>(r(S,t.delListener),S=void 0,q),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(w(f,C),...t),await(async()=>{if(!w(v,C)){for(h(v,C,1);!o((t=w(f,C),L=t.shift()));)try{await L()}catch(t){y?.(t)}h(v,C,0)}var t})(),q),getStore:()=>t,destroy:()=>q.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(q[d]=()=>A),l(q)})(c,(async()=>p(await a.readFile(y,n))),(async t=>{return await a.writeFile(y,(e=t(),JSON.stringify(e,((t,a)=>a instanceof Map?i.fromEntries([...a]):a))),n);var e}),(a=>t.watch(y,(()=>a()))),(t=>t?.close()),d,!1,["getFilePath",y]);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=
|
|
1
|
+
"use strict";const t=t=>typeof t,e=t(""),a=Promise,s=clearInterval,n=t=>null==t,o=(t,e,a)=>n(t)?a?.():e(t),r=t=>new a(t),c=async t=>a.all(t),i=(t,e)=>t.map(e),y=(t,...e)=>t.push(...e),l=Object,d=t=>l.getPrototypeOf(t),u=l.entries,w=l.keys,p=l.freeze,h=t=>(t=>!n(t)&&o(d(t),(t=>t==l.prototype||n(d(t))),(()=>!0)))(t)&&0==(t=>w(t).length)(t),g=t=>new Map(t),v=(t,e)=>t?.get(e),b=(t,e,a)=>{return n(a)?(s=t,o=e,s?.delete(o),t):t?.set(e,a);var s,o},A=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||b(t,e,a()),v(t,e)},S=g(),f=g(),C=globalThis.window,x=["t","v"],D={keyPath:"k"},L=async(t,e)=>{const a=((e,a)=>i(u(e),(([e,a])=>j(t,"put",{k:e,v:a}))))(e);i(await j(t,"getAllKeys"),(s=>((t,e)=>e in t)(e,s)?0:y(a,j(t,"delete",s)))),await c(a)},j=async(t,e,a)=>r(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)}));exports.createIndexedDbPersister=(a,d,u=1,w)=>{const g=async(t,e=[],a=0)=>r(((s,n)=>{const o=(C?C.indexedDB:indexedDB).open(d,a?2:void 0);o.onupgradeneeded=()=>a&&i(x,(t=>{try{o.result.createObjectStore(t,D)}catch{}})),o.onsuccess=async()=>{try{const a=o.result.transaction(x,"readwrite"),n=await c(i(x,(async(s,n)=>await t(a.objectStore(s),e[n]))));o.result.close(),s(n)}catch(t){o.result.close(),n(t)}},o.onerror=()=>n("indexedDB.open error")}));return((a,s,r,c,i,l,d,[u,w]=[],g=[])=>{let C,x,D,L=0,j=0;A(S,g,(()=>0)),A(f,g,(()=>[]));const k=(d?a.getMergeableContent:null)??a.getContent,m=a.getTransactionChanges,M=async t=>(2!=L&&(L=1,await P.schedule((async()=>{await t(),L=0}))),P),P={load:async(n,o)=>await M((async()=>{try{const n=await s();(d&&(a=>t(a)==e)(n[0])?a.applyMergeableChanges:a.setContent)(n)}catch{a.setContent([n,o])}})),startAutoLoad:async(t={},e={})=>(P.stopAutoLoad(),await P.load(t,e),j=1,D=c((async(t,e)=>{if(e){const t=e();await M((async()=>a.applyChanges(t)))}else await M((async()=>{try{a.setContent(t?.()??await s())}catch(t){l?.(t)}}))})),P),stopAutoLoad:()=>(j&&(i(D),D=void 0,j=0),P),save:async t=>(1!=L&&(L=2,await P.schedule((async()=>{try{await r(k,t)}catch(t){l?.(t)}L=0}))),P),startAutoSave:async()=>(await P.stopAutoSave().save(),C=a.addDidFinishTransactionListener((()=>{const[t,e]=m();h(t)&&h(e)||P.save((()=>[t,e]))})),P),stopAutoSave:()=>(o(C,a.delListener),C=void 0,P),schedule:async(...t)=>(y(v(f,g),...t),await(async()=>{if(!v(S,g)){for(b(S,g,1);!n((t=v(f,g),x=t.shift()));)try{await x()}catch(t){l?.(t)}b(S,g,0)}var t})(),P),getStore:()=>a,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u&&(P[u]=()=>w),p(P)})(a,(async()=>await g((async t=>((t=[])=>l.fromEntries(t))(i(await j(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await g((async(t,e)=>await L(t,e)),t(),1)),(t=>setInterval(t,1e3*u)),(t=>s(t)),w,!1,["getDbName",d])},exports.objectStoreMatch=L;
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>typeof t,a="",e=t(a),s=t=>null==t,o=(t,a,e)=>s(t)?e?.():a(t),n=a=>t(a)==e,r=t=>t.length,c=Object,i=t=>c.getPrototypeOf(t),y=c.keys,d=c.freeze,
|
|
1
|
+
"use strict";const t=t=>typeof t,a="",e=t(a),s=t=>null==t,o=(t,a,e)=>s(t)?e?.():a(t),n=a=>t(a)==e,r=t=>t.length,c=Object,i=t=>c.getPrototypeOf(t),y=c.keys,d=c.freeze,p=t=>(t=>!s(t)&&o(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),h=t=>JSON.stringify(t,((t,a)=>a instanceof Map?c.fromEntries([...a]):a)),l=JSON.parse,u="/store",v=t=>new Map(t),w=(t,a)=>t?.get(a),g=(t,a,e)=>{return s(e)?(o=t,n=a,o?.delete(n),t):t?.set(a,e);var o,n},f=(t,a,e)=>{var s,o;return s=t,o=a,s?.has(o)||g(t,a,e()),w(t,a)},C=v(),S=v(),m="message";exports.createPartyKitPersister=(t,e,c,i)=>{const{host:y,room:v}=e.partySocketOptions,{storeProtocol:A="https",storePath:L=u,messagePrefix:P=a}={...n(c)?{storeProtocol:c}:c},O=A+"://"+y+"/parties/"+e.name+"/"+v+L,b=async t=>await(await fetch(O,{...t?{method:"PUT",body:h(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,a,e,r,c,i,y,[h,l]=[],u=[])=>{let v,m,A,L=0,P=0;f(C,u,(()=>0)),f(S,u,(()=>[]));const O=(y?t.getMergeableContent:null)??t.getContent,b=t.getTransactionChanges,M=async t=>(2!=L&&(L=1,await E.schedule((async()=>{await t(),L=0}))),E),E={load:async(e,s)=>await M((async()=>{try{const e=await a();(y&&n(e[0])?t.applyMergeableChanges:t.setContent)(e)}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(E.stopAutoLoad(),await E.load(e,s),P=1,A=r((async(e,s)=>{if(s){const a=s();await M((async()=>t.applyChanges(a)))}else await M((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),E),stopAutoLoad:()=>(P&&(c(A),A=void 0,P=0),E),save:async t=>(1!=L&&(L=2,await E.schedule((async()=>{try{await e(O,t)}catch(t){i?.(t)}L=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),v=t.addDidFinishTransactionListener((()=>{const[t,a]=b();p(t)&&p(a)||E.save((()=>[t,a]))})),E),stopAutoSave:()=>(o(v,t.delListener),v=void 0,E),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(w(S,u),...t),await(async()=>{if(!w(C,u)){for(g(C,u,1);!s((t=w(S,u),m=t.shift()));)try{await m()}catch(t){i?.(t)}g(C,u,0)}var t})(),E),getStore:()=>t,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return h&&(E[h]=()=>l),d(E)})(t,(async()=>await b()),(async(t,a)=>{var s,o;a?e.send((s=P,o=a(),s+"s"+(n(o)?o:h(o)))):await b(t())}),(t=>{const a=a=>o(((t,a,e)=>{const s=r(t);return((t,a)=>t.startsWith(a))(a,t)?[a[s],l((o=a,n=s+1,o.slice(n,void 0)))]:void 0;var o,n})(P,a.data),(([a,e])=>{"s"==a&&t(void 0,(()=>e))}));return e.addEventListener(m,a),a}),(t=>{e.removeEventListener(m,t)}),i,!1,["getConnection",e])};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t=a(""),e="t",s=(a,t)=>a.startsWith(t),n=Promise,r=a=>null==a,i=(a,t,e)=>r(a)?e?.():t(a),c=(a,t,e)=>a.slice(t,e),o=a=>a.length,l=async a=>n.all(a),w=(a,t)=>a.map(t),g=(a,...t)=>a.push(...t),h=Object,y=h.entries,f=(a=[])=>h.fromEntries(a),u=(a,t)=>w(y(a),(([a,e])=>t(e,a))),p=(a,t,e)=>(((a,t)
|
|
1
|
+
"use strict";const a=a=>typeof a,t=a(""),e="t",s=(a,t)=>a.startsWith(t),n=Promise,r=a=>null==a,i=(a,t,e)=>r(a)?e?.():t(a),c=(a,t,e)=>a.slice(t,e),o=a=>a.length,l=async a=>n.all(a),w=(a,t)=>a.map(t),g=(a,...t)=>a.push(...t),h=Object,y=h.entries,f=(a=[])=>h.fromEntries(a),u=(a,t)=>w(y(a),(([a,e])=>t(e,a))),p=(a,t,e)=>(((a,t)=>t in a)(a,t)||(a[t]=e()),a[t]),S=a=>JSON.stringify(a,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)),d=JSON.parse,x=(e,s,n)=>e+s+(a(n)==t?n:S(n)),P=(a,t,e)=>{const n=o(a);return s(t,a)?[t[n],(e?d:String)(c(t,n+1))]:void 0},m=(a,t)=>((a,t)=>a?.forEach(t))(a,((a,e)=>t(e,a))),D="hasStore",b=f(w(["Origin","Methods","Headers"],(a=>["Access-Control-Allow-"+a,"*"]))),R=async(a,t="")=>!!await a.get(t+D),C=async(a,t="")=>{const s={},n={};return m(await a.list(),((a,r)=>i(P(t,a),(([a,t])=>{if(a==e){const[a,e,n]=d("["+t+"]");p(p(s,a,f),e,f)[n]=r}else"v"==a&&(n[t]=r)})))),[s,n]},T=async(a,t,e)=>a.party.broadcast(x(a.config.messagePrefix,"s",t),e),v=async(a,t,n,i)=>{const c=a.party.storage,w=a.config.storagePrefix,h={[w+D]:1},y=[],f=[];await l(u(t[0],(async(t,s)=>r(t)?!n&&await a.canDelTable(s,i)&&((a,...t)=>a.unshift(...t))(f,O(w,e,s)):await a.canSetTable(s,n,i)&&await l(u(t,(async(t,o)=>r(t)?!n&&await a.canDelRow(s,o,i)&&g(f,O(w,e,s,o)):await a.canSetRow(s,o,n,i)&&await l(u(t,(async(t,l)=>{const f=[s,o,l],u=O(w,e,...f);r(t)?!n&&await a.canDelCell(...f,i)&&g(y,u):await a.canSetCell(...f,t,n,i,await c.get(u))&&(h[u]=t)}))))))))),await l(u(t[1],(async(t,e)=>{const s=w+"v"+e;r(t)?!n&&await a.canDelValue(e,i)&&g(y,s):await a.canSetValue(e,t,n,i,await c.get(s))&&(h[s]=t)}))),0!=o(f)&&m(await c.list(),(a=>f.every((t=>!s(a,t)||g(y,a)&&0)))),await c.delete(y),await c.put(h)},O=(a,t,...e)=>x(a,t,c(S(e),1,-1)),V=async(a,t,e=null)=>new Response(e,{status:t,headers:a.config.responseHeaders});exports.TinyBasePartyKitServer=class{constructor(a){this.party=a,this.config={},this.config.storePath??="/store",this.config.messagePrefix??="",this.config.storagePrefix??="",this.config.responseHeaders??=b}async onRequest(a){const{party:{storage:t},config:{storePath:e,storagePrefix:s}}=this;if(new URL(a.url).pathname.endsWith(e)){const e=await R(t,s),n=await a.text();return"PUT"==a.method?e?V(this,205):(await v(this,d(n),!0,a),V(this,201)):V(this,200,e?S(await C(t,s)):"")}return V(this,404)}async onMessage(a,t){const{config:{messagePrefix:e,storagePrefix:s}}=this;await i(P(e,a,1),(async([a,e])=>{"s"==a&&await R(this.party.storage,s)&&(await v(this,e,!1,t),T(this,e,[t.id]))}))}async canSetTable(a,t,e){return!0}async canDelTable(a,t){return!0}async canSetRow(a,t,e,s){return!0}async canDelRow(a,t,e){return!0}async canSetCell(a,t,e,s,n,r,i){return!0}async canDelCell(a,t,e,s){return!0}async canSetValue(a,t,e,s,n){return!0}async canDelValue(a,t){return!0}},exports.broadcastChanges=T,exports.hasStoreInStorage=R,exports.loadStoreFromStorage=C;
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=
|
|
1
|
+
"use strict";const t=t=>typeof t,a=t(""),e=clearInterval,s=t=>null==t,n=(t,a,e)=>s(t)?e?.():a(t),o=Object,r=t=>o.getPrototypeOf(t),c=o.keys,i=o.freeze,y=t=>(t=>!s(t)&&n(r(t),(t=>t==o.prototype||s(r(t))),(()=>!0)))(t)&&0==(t=>c(t).length)(t),l=JSON.parse,d=t=>new Map(t),h=(t,a)=>t?.get(a),p=(t,a,e)=>{return s(e)?(n=t,o=a,n?.delete(o),t):t?.set(a,e);var n,o},u=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||p(t,a,e()),h(t,a)},w=d(),g=d(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(r,c,d,f=5,A)=>{let C;return((e,o,r,c,l,d,v,[f,A]=[],C=[])=>{let S,L,O,T=0,b=0;u(w,C,(()=>0)),u(g,C,(()=>[]));const m=(v?e.getMergeableContent:null)??e.getContent,M=e.getTransactionChanges,E=async t=>(2!=T&&(T=1,await P.schedule((async()=>{await t(),T=0}))),P),P={load:async(s,n)=>await E((async()=>{try{const s=await o();(v&&(e=>t(e)==a)(s[0])?e.applyMergeableChanges:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(t={},a={})=>(P.stopAutoLoad(),await P.load(t,a),b=1,O=c((async(t,a)=>{if(a){const t=a();await E((async()=>e.applyChanges(t)))}else await E((async()=>{try{e.setContent(t?.()??await o())}catch(t){d?.(t)}}))})),P),stopAutoLoad:()=>(b&&(l(O),O=void 0,b=0),P),save:async t=>(1!=T&&(T=2,await P.schedule((async()=>{try{await r(m,t)}catch(t){d?.(t)}T=0}))),P),startAutoSave:async()=>(await P.stopAutoSave().save(),S=e.addDidFinishTransactionListener((()=>{const[t,a]=M();y(t)&&y(a)||P.save((()=>[t,a]))})),P),stopAutoSave:()=>(n(S,e.delListener),S=void 0,P),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(h(g,C),...t),await(async()=>{if(!h(w,C)){for(p(w,C,1);!s((t=h(g,C),L=t.shift()));)try{await L()}catch(t){d?.(t)}p(w,C,0)}var t})(),P),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return f&&(P[f]=()=>A),i(P)})(r,(async()=>{const t=await fetch(c);return C=v(t),l(await t.text())}),(async t=>{return await fetch(d,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?o.fromEntries([...a]):a)))});var a}),(t=>setInterval((async()=>{const a=await fetch(c,{method:"HEAD"}),e=v(a);s(C)||s(e)||e==C||(C=e,t())}),1e3*f)),(t=>e(t)),A,!1,["getUrls",[c,d]])};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=a=>typeof a,t="tinybase",e="
|
|
1
|
+
"use strict";const a=a=>typeof a,t="tinybase",e="",s=",",n=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==n,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",p="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",A=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),L=a=>0==E(a),R=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,f=a=>[...a?.values()??[]],C=(a,t)=>a?.delete(t),N=Object,g=a=>N.getPrototypeOf(a),S=N.entries,D=N.keys,b=N.freeze,I=(a=[])=>N.fromEntries(a),M=(...a)=>N.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>T(S(a),(([a,e])=>t(e,a))),P=a=>N.values(a),$=a=>E(D(a)),B=a=>(a=>!r(a)&&l(g(a),(a=>a==N.prototype||r(g(a))),(()=>!0)))(a)&&0==$(a),H=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),k=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>r(e)?(C(a,t),a):a?.set(t,e),x=(a,t,e)=>(O(a,t)||q(a,t,e()),j(a,t)),Y=(a,t,e,s=q)=>(F(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||r(a)?a:[a]),J=(a,t)=>a?.add(t),U=v+"*FROM",V="FROM pragma_table_",z="WHERE",K=(a,t,n,i)=>{const c=H();return[async()=>Y(c,I(await u(T(await a("SELECT name "+V+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(T(await a(v+" name,type "+V+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(c,t,Y(x(c,t,H),e,((a,t,e)=>{e!=j(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(c,t))),async(t,e)=>((a,t)=>!r(j(j(c,a),t)))(t,e)?I(R(T(await a(U+m(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!B(t)))):{},async(t,n,o,l,w,y=!1)=>{const E=G();F(o??{},(a=>T(D(a??{}),(a=>J(E,a)))));const d=f(E);if(!y&&w&&L(d)&&O(c,t))return await a("DROP TABLE"+m(t)),void q(c,t);if(L(d)||O(c,t)){const s=j(c,t),i=G(W(s));await u([...T(d,(async n=>{C(i,n)||(await a(`ALTER TABLE${m(t)}ADD${m(n)}`),q(s,n,e))})),...!y&&l?T(f(i),(async e=>{e!=n&&(await a(`ALTER TABLE${m(t)}DROP${m(e)}`),q(s,e))})):[]])}else await a(`CREATE TABLE${m(t)}(${m(n)} PRIMARY KEY ON CONFLICT REPLACE${A(T(d,(a=>s+m(a))))});`),q(c,t,H([[n,e],...T(d,(a=>[a,e]))]));if(y)r(o)?await a("DELETE FROM"+m(t)+"WHERE 1"):await u(F(o,(async(e,s)=>{r(e)?await a("DELETE FROM"+m(t)+z+m(n)+"=?",[s]):L(d)||await Q(a,t,n,D(e),[s,...P(e)],i)})));else if(L(d))O(c,t)&&await a("DELETE FROM"+m(t)+"WHERE 1");else{const e=R(W(j(c,t)),(a=>a!=n)),s=[],i=[];F(o??{},((a,t)=>{h(s,t,...T(e,(t=>a?.[t]))),h(i,t)})),await Q(a,t,n,e,s),await a("DELETE FROM"+m(t)+z+m(n)+"NOT IN("+X(i)+")",i)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){n?.(a)}return await a("END"),e}]},Q=async(a,t,n,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(n)+A(T(c,(a=>s+m(a))))+")VALUES"+y(i(`,(?${i(",?",E(c))})`,E(o)/(E(c)+1)),1)+(r?"ON CONFLICT("+m(n)+")DO UPDATE SET"+A(T(c,(a=>m(a)+"=excluded."+m(a))),s):e),T(o,(a=>a??null))),X=a=>A(T(a,(()=>"?")),s),Z=JSON.parse,aa=H(),ta=H(),ea=(a,t,e,s,n,i,c,[o,y]=[],E=[])=>{let u,d,p,m=0,v=0;x(aa,E,(()=>0)),x(ta,E,(()=>[]));const A=(c?a.getMergeableContent:null)??a.getContent,T=a.getTransactionChanges,L=async a=>(2!=m&&(m=1,await R.schedule((async()=>{await a(),m=0}))),R),R={load:async(e,s)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(R.stopAutoLoad(),await R.load(e,n),v=1,p=s((async(e,s)=>{if(s){const t=s();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),R),stopAutoLoad:()=>(v&&(n(p),p=void 0,v=0),R),save:async a=>(1!=m&&(m=2,await R.schedule((async()=>{try{await e(A,a)}catch(a){i?.(a)}m=0}))),R),startAutoSave:async()=>(await R.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=T();B(a)&&B(t)||R.save((()=>[a,t]))})),R),stopAutoSave:()=>(l(u,a.delListener),u=void 0,R),schedule:async(...a)=>(h(j(ta,E),...a),await(async()=>{if(!j(aa,E)){for(q(aa,E,1);!r((a=j(ta,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}q(aa,E,0)}var a})(),R),getStore:()=>a,destroy:()=>R.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(R[o]=()=>y),b(R)},sa="store",na=(a,t,e,s,n,[i],c,o,r)=>{const[l,w,y,E]=K(t,c,n);return ea(a,(async()=>await E((async()=>(await l(),Z((await w(i,p))[d]?.[sa]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,p,{[d]:{[sa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,!1,[r,o],o)},ia=(a,t,e,s,n,[i,c,[o,l,w]],y,E,m,v)=>{const[A,T,L,h]=K(t,y,n,v),O=async(a,t)=>await u(k(c,(async([e,s,n,i],c)=>{t&&!_(a,c)||await L(e,s,a[c],n,i,t)}))),f=async(a,t)=>l?await L(w,p,{[d]:a},!0,!0,t):null;return ea(a,(async()=>await h((async()=>{await A();const a=await(async()=>I(R(await u(k(i,(async([a,t],e)=>[a,await T(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await T(w,p))[d]:{})();return B(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await h((async()=>{if(await A(),r(t)){const[t,e]=a();await O(t),await f(e)}else{const[a,e]=t();await O(a,!0),await f(e,!0)}}))),e,s,n,!1,[m,E],E)},ca="json",oa="autoLoadIntervalSeconds",ra="rowIdColumnName",la="tableId",wa="tableName",ya={mode:ca,[oa]:1},Ea={load:0,save:0,[wa]:t+"_values"},ua=(a,t,e,s)=>{const n=H();return F(a,((a,i)=>{const c=y(P(M(t,w(a)?{[e]:a}:a)),0,$(t));r(c[0])||s(i,c[0])||q(n,i,c)})),n},da="pragma ",pa="data_version",ma="schema_version",va=(a,e,s,n,i,c,r,l,E="getDb",u)=>{let d,m,A;const[T,L,R,h]=(a=>{const e=(a=>M(ya,w(a)?{storeTableName:a}:a??{}))(a),s=e[oa];if(e.mode==ca){const{storeTableName:a=t}=e;return[1,s,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(P(M(Ea,c)),0,$(Ea)),r=o[2],l=G(r);return[0,s,[ua(n,{[la]:null,[ra]:p},la,(a=>J(l,a)&&a==r)),ua(i,{[wa]:null,[ra]:p,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>J(l,t)&&t==r)),o],l]})(e);return(T?na:ia)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+pa))[0][pa],e=(await s(da+ma))[0][ma],n=(await s(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(m??=e)&&n==(A??=n)||(a(),d=t,m=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),n((t=>h.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),d=m=null,i(t)}),r,R,f(h),l,E,u)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>va(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
|