tinybase 5.0.0-beta.2 → 5.0.0-beta.4
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 +223 -211
- package/lib/debug/persisters/persister-automerge.js +62 -41
- package/lib/debug/persisters/persister-browser.js +48 -16
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +97 -52
- package/lib/debug/persisters/persister-electric-sql.js +97 -52
- package/lib/debug/persisters/persister-expo-sqlite-next.js +97 -52
- package/lib/debug/persisters/persister-expo-sqlite.js +97 -52
- package/lib/debug/persisters/persister-file.js +47 -16
- package/lib/debug/persisters/persister-indexed-db.js +48 -18
- package/lib/debug/persisters/persister-partykit-client.js +46 -21
- package/lib/debug/persisters/persister-partykit-server.js +8 -18
- package/lib/debug/persisters/persister-remote.js +48 -16
- package/lib/debug/persisters/persister-sqlite-wasm.js +97 -52
- package/lib/debug/persisters/persister-sqlite3.js +97 -52
- package/lib/debug/persisters/persister-yjs.js +64 -40
- package/lib/debug/persisters.js +47 -16
- package/lib/debug/store.js +61 -83
- package/lib/debug/tinybase.js +264 -227
- package/lib/debug/tools.js +9 -11
- package/lib/debug/ui-react-dom.js +104 -99
- 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 +43 -13
- package/lib/types/persisters/persister-browser.d.ts +2 -2
- package/lib/types/persisters/persister-file.d.ts +1 -1
- package/lib/types/persisters/persister-partykit-server.d.ts +7 -8
- package/lib/types/persisters.d.ts +61 -30
- 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 +46 -13
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +10 -11
- package/lib/types/with-schemas/persisters.d.ts +88 -45
- 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 +29 -25
- package/readme.md +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
var t
|
|
1
|
+
var e,t;e=this,t=function(e,t){"use strict";const a=e=>typeof e,s=a(""),n="t",o="v",r=e=>null==e,c=(e,t,a)=>r(e)?a?.():t(e),i=e=>e.length,l=e=>e.shift(),g=Object,d=e=>g.getPrototypeOf(e),y=g.entries,u=g.keys,p=g.freeze,f=(e=[])=>g.fromEntries(e),h=(e,t)=>t in e,v=(e,t)=>((e,t)=>e.map(t))(y(e),(([e,a])=>t(a,e))),w=e=>(e=>!r(e)&&c(d(e),(e=>e==g.prototype||r(d(e))),(()=>!0)))(e)&&0==(e=>i(u(e)))(e),b=(e,t,a)=>(h(e,t)||(e[t]=a()),e[t]),C=e=>new Map(e),S=(e,t)=>e?.get(t),M=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),A=(e,t,a)=>{return r(a)?(s=e,n=t,s?.delete(n),e):e?.set(t,a);var s,n},O=(e,t,a)=>{var s,n;return s=e,n=t,s?.has(n)||A(e,t,a()),S(e,t)},j=C(),J=C(),L=e=>{return t=e?.[0],a(t)==s;var t},N="delete",T=e=>[e.get(n),e.get(o)],m=(e,a,s,n)=>{const o=r(a)?e:e.get(a)??e.set(a,new t.Map);let c;return v(s,((e,t)=>{n(o,t,e)&&(c=1)})),o.forEach(((e,t)=>{h(s,t)||(o.delete(t),c=1)})),r(a)||o.size||e.delete(a),c};e.createYjsPersister=(e,a,s="tinybase",g)=>{const d=a.getMap(s);return((e,t,a,s,n,o,i,[g,d]=[],y=[])=>{let u,f,h,v=0,b=0;O(j,y,(()=>0)),O(J,y,(()=>[]));const[C,M,N,T]=((e,t)=>!e||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!w(e)||!w(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!w(e)||!w(t)])(i,e),m=async e=>(2!=v&&(v=1,await z.schedule((async()=>{await e(),v=0}))),z),z={load:async(a,s)=>await m((async()=>{try{const a=await t();(C&&L(a)?e.setMergeableContent:e.setContent)(a)}catch{e.setContent([a,s])}})),startAutoLoad:async(a={},n={})=>(z.stopAutoLoad(),await z.load(a,n),b=1,h=s((async(a,s)=>{if(s){const t=s();await m((async()=>(C&&L(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await m((async()=>{try{const s=a?.()??await t();(C&&L(s)?e.setMergeableContent:e.setContent)(s)}catch(e){o?.(e)}}))})),z),stopAutoLoad:()=>(b&&(n(h),h=void 0,b=0),z),save:async e=>(1!=v&&(v=2,await z.schedule((async()=>{try{await a(M,e)}catch(e){o?.(e)}v=0}))),z),startAutoSave:async()=>(await z.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=N();T(e)&&z.save((()=>e))})),z),stopAutoSave:()=>(c(u,e.delListener),u=void 0,z),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(S(J,y),...e),await(async()=>{if(!S(j,y)){for(A(j,y,1);!r(f=l(S(J,y)));)try{await f()}catch(e){o?.(e)}A(j,y,0)}})(),z),getStore:()=>e,destroy:()=>z.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return g&&(z[g]=()=>d),p(z)})(e,(async()=>d.size?[d.get(n).toJSON(),d.get(o).toJSON()]:void 0),(async(e,s)=>a.transact((()=>((e,a,s)=>{e.size||(e.set(n,new t.Map),e.set(o,new t.Map));const[i,l]=T(e),g=()=>{d=1};let d=1;if(c(s?.(),(([e,t])=>{d=0,v(e,((e,t)=>d?0:r(e)?i.delete(t):c(i.get(t),(t=>v(e,((e,a)=>d?0:r(e)?t.delete(a):c(t.get(a),(t=>v(e,((e,a)=>r(e)?t.delete(a):t.set(a,e)))),g)))),g))),v(t,((e,t)=>d?0:r(e)?l.delete(t):l.set(t,e)))})),d){const[e,t]=a();m(i,void 0,e,((e,t,a)=>m(i,t,a,((e,t,a)=>m(e,t,a,((e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1})))))),m(l,void 0,t,((e,t,a)=>{l.get(t)!==a&&l.set(t,a)}))}})(d,e,s)))),(e=>{const t=t=>e(void 0,(()=>((e,t)=>{if(1==i(t)&&(a=t[0].path,0==i(a)))return[e.get(n).toJSON(),e.get(o).toJSON()];var a;const[s,r]=T(e),g={},d={};return((e,t)=>{e.forEach((({path:e,changes:{keys:t}})=>l(e)==n?c(l(e),(a=>{const n=b(g,a,f),o=s.get(a);c(l(e),(e=>{const a=b(n,e,f),s=o.get(e);M(t,((e,{action:t})=>a[e]=t==N?null:s.get(e)))}),(()=>M(t,((e,{action:t})=>n[e]=t==N?null:o.get(e)?.toJSON()))))}),(()=>M(t,((e,{action:t})=>g[e]=t==N?null:s.get(e)?.toJSON())))):M(t,((e,{action:t})=>d[e]=t==N?null:r.get(e)))))})(t),[g,d]})(d,t)));return d.observeDeep(t),t}),(e=>{d.unobserveDeep(e)}),g,!1,["getYDoc",a])}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterYjs={},e.yjs);
|
|
Binary file
|
package/lib/umd/persisters.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var t,e;t=this,e=function(t){"use strict";const e=t=>null==t,
|
|
1
|
+
var t,e;t=this,e=function(t){"use strict";const e=t=>typeof t,a=e(""),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,r=t=>o.getPrototypeOf(t),i=o.keys,c=o.freeze,y=t=>(t=>!s(t)&&n(r(t),(t=>t==o.prototype||s(r(t))),(()=>!0)))(t)&&0==(t=>i(t).length)(t),d=t=>new Map(t),l=(t,e)=>t?.get(e),u=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},p=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||u(t,e,a()),l(t,e)},g=d(),f=d(),h=t=>{return s=t?.[0],e(s)==a;var s};t.createCustomPersister=(t,e,a,o,r,i,d,[v,w]=[],C=[])=>{let b,A,M,L=0,S=0;p(g,C,(()=>0)),p(f,C,(()=>[]));const[T,m,x,P]=((t,e)=>!t||s(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!y(t)||!y(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!y(t)||!y(e)])(d,t),j=async t=>(2!=L&&(L=1,await O.schedule((async()=>{await t(),L=0}))),O),O={load:async(a,s)=>await j((async()=>{try{const a=await e();(T&&h(a)?t.setMergeableContent:t.setContent)(a)}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(O.stopAutoLoad(),await O.load(a,s),S=1,M=o((async(a,s)=>{if(s){const e=s();await j((async()=>(T&&h(e)?t.applyMergeableChanges:t.applyChanges)(e)))}else await j((async()=>{try{const s=a?.()??await e();(T&&h(s)?t.setMergeableContent:t.setContent)(s)}catch(t){i?.(t)}}))})),O),stopAutoLoad:()=>(S&&(r(M),M=void 0,S=0),O),save:async t=>(1!=L&&(L=2,await O.schedule((async()=>{try{await a(m,t)}catch(t){i?.(t)}L=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),b=t.addDidFinishTransactionListener((()=>{const t=x();P(t)&&O.save((()=>t))})),O),stopAutoSave:()=>(n(b,t.delListener),b=void 0,O),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(l(f,C),...t),await(async()=>{if(!l(g,C)){for(u(g,C,1);!s((t=l(f,C),A=t.shift()));)try{await A()}catch(t){i?.(t)}u(g,C,0)}var t})(),O),getStore:()=>t,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return v&&(O[v]=()=>w),c(O)}},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisters={});
|
package/lib/umd/persisters.js.gz
CHANGED
|
Binary file
|
package/lib/umd/store.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),l=t(!0),a=t(0),o=t(t),r="type",c="default",i="Has",d="Ids",u="Table",h=u+"s",f=u+d,g="Row",T=g+"Count",b=g+d,V="Cell",C=V+d,S="Value",v=S+"s",y=S+d,p=e=>s+e,m=isFinite,w=e=>null==e,I=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==l,J=e=>t(e)==o,L=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),P=(e,...t)=>e.push(...t),x=Object,z=e=>x.getPrototypeOf(e),j=x.entries,k=x.keys,A=x.isFrozen,M=x.freeze,N=e=>!w(e)&&I(z(e),(e=>e==x.prototype||w(z(e))),(()=>!0)),B=(e,t)=>!w(((e,t)=>I(e,(e=>e[t])))(e,t)),D=(e,t)=>(delete e[t],e),H=(e,t)=>O(j(e),(([e,s])=>t(s,e))),W=e=>N(e)&&0==(e=>E(k(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,G=e=>w(e)||0==$(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>w(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s)=>(q(e,t)||ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>B(t,s)?0:n(e,s))),e),ne=(e,t,s)=>{const n={};return Q(e,((e,l)=>{const a=t?t(e,l):e;!s?.(a,e)&&(n[l]=a)})),n},le=(e,t,s)=>ne(e,(e=>ne(e,t,s)),W),ae=(e,t,s)=>ne(e,(e=>le(e,t,s)),W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ce=e=>oe(e,re),ie=(e,t,s,n,l=0)=>I((s?te:Z)(e,t[l],l>E(t)-2?s:X),(a=>{if(l>E(t)-2)return n?.(a)&&ee(e,t[l]),a;const o=ie(a,t,s,n,l+1);return G(a)&&ee(e,t[l]),o})),de=e=>new Set(Array.isArray(e)||w(e)?e:[e]),ue=(e,t)=>e?.add(t),he=/^\d+$/,fe=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{he.test(t)&&E(e)<1e3&&P(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Ve=([e,t])=>e===t,Ce=e=>{const s=t(e);return R(s)||s==a&&m(e)?s:void 0},Se=(e,t,s,n,l)=>w(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l),ve=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ye=e=>JSON.stringify(e,((e,t)=>t instanceof Map?x.fromEntries([...t]):t)),pe=JSON.parse,me=(e,t,s)=>w(e)||!N(e)||W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),we=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),Ie=()=>{let e,t,n,l=!1,o=!1,d=!1,m=!1,x=0;const z=X(),j=X(),k=X(),A=X(),N=X(),he=X(),Re=X(),Je=X(),Le=X(),Ee=X(),Fe=X(),Oe=X(),Pe=X(),xe=X(),ze=de(),je=X(),ke=X(),Ae=X(),Me=X(),Ne=Te(),Be=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),lt=Te(),at=Te(),ot=Te(),rt=X(),ct=Te(),[it,dt,ut,ht]=(e=>{let t;const[n,l]=fe(),a=X();return[(e,l,o,r=[],c=(()=>[]))=>{t??=zs;const i=n(1);return ee(a,i,[e,l,o,r,c]),ue(ie(l,o??[s],de),i),i},(e,n,...l)=>F(((e,t=[s])=>{const n=[],l=(e,s)=>s==E(t)?P(n,e):null===t[s]?Q(e,(e=>l(e,s+1))):F([t[s],null],(t=>l(Z(e,t),s+1)));return l(e,0),n})(e,n),(e=>Q(e,(e=>Z(a,e)[0](t,...n??[],...l))))),e=>I(Z(a,e),(([,t,n])=>(ie(t,n??[s],void 0,(t=>(U(t,e),G(t)?1:0))),ee(a,e),l(e),n))),e=>I(Z(a,e),(([e,,s=[],n,l])=>{const a=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...l(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>a(...o,e))):a(...o,s[r])};a()}))]})(),ft=e=>{if(!me(e,((e,t)=>[r,c].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=a||(Ce(e[c])!=t&&D(e,c),0))},gt=(t,s)=>(!e||q(Fe,s)||$t(s))&&me(t,((e,t)=>Tt(s,t,e)),(()=>$t(s))),Tt=(e,t,s,n)=>me(n?s:St(s,e,t),((n,l)=>I(bt(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>$t(e,t))),bt=(t,s,n,l)=>e?I(Z(Z(Fe,t),n),(e=>Ce(l)!=e[r]?$t(t,s,n,l,e[c]):l),(()=>$t(t,s,n,l))):w(Ce(l))?$t(t,s,n,l):l,Vt=(e,t)=>me(t?e:vt(e),((t,s)=>I(Ct(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),Ct=(e,s)=>t?I(Z(Pe,e),(t=>Ce(s)!=t[r]?qt(e,s,t[c]):s),(()=>qt(e,s))):w(Ce(s))?qt(e,s):s,St=(e,t,s)=>(I(Z(Oe,t),(([n,l])=>{Q(n,((t,s)=>{B(e,s)||(e[s]=t)})),Q(l,(n=>{B(e,n)||$t(t,s,n)}))})),e),vt=e=>(t&&(Q(xe,((t,s)=>{B(e,s)||(e[s]=t)})),Q(ze,(t=>{B(e,t)||qt(t)}))),e),yt=e=>se(Fe,e,((e,t,s)=>{const n=X(),l=de();se(te(Fe,t,X),s,((e,t,s)=>{ee(e,t,s),I(s[c],(e=>ee(n,t,e)),(()=>ue(l,t)))})),ee(Oe,t,[n,l])}),((e,t)=>{ee(Fe,t),ee(Oe,t)})),pt=e=>se(Pe,e,((e,t,s)=>{ee(Pe,t,s),I(s[c],(e=>ee(xe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Pe,t),ee(xe,t),U(ze,t)})),mt=e=>W(e)?Is():vs(e),wt=e=>se(Ae,e,((e,t,s)=>It(t,s)),((e,t)=>zt(t))),It=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(je,e,fe()),ee(ke,e,X()),X()))),t,((t,s,n)=>Rt(e,t,s,n)),((t,s)=>jt(e,t,s))),Rt=(e,t,s,n,l)=>se(te(t,s,(()=>(Nt(e,s,1),X()))),n,((t,n,l)=>Jt(e,s,t,n,l)),((n,a)=>kt(e,t,s,n,a,l))),Jt=(e,t,s,n,l)=>{q(s,n)||Bt(e,t,n,1);const a=Z(s,n);l!==a&&(Dt(e,t,n,a,l),ee(s,n,l))},Lt=(e,t,s,n,l)=>I(Z(t,s),(t=>Jt(e,s,t,n,l)),(()=>Rt(e,t,s,St({[n]:l},e,s)))),Et=e=>W(e)?Ls():ys(e),Ft=e=>se(Me,e,((e,t,s)=>Ot(t,s)),((e,t)=>At(t))),Ot=(e,t)=>{q(Me,e)||Ht(e,1);const s=Z(Me,e);t!==s&&(Wt(e,s,t),ee(Me,e,t))},Pt=(e,t)=>{const[s]=Z(je,e),n=s(t);return q(Z(Ae,e),n)?Pt(e,t):n},xt=e=>Z(Ae,e)??It(e,{}),zt=e=>It(e,{}),jt=(e,t,s)=>{const[,n]=Z(je,e);n(s),Rt(e,t,s,{},!0)},kt=(e,t,s,n,l,a)=>{const o=Z(Z(Oe,e)?.[0],l);if(!w(o)&&!a)return Jt(e,s,n,l,o);const r=t=>{Dt(e,s,t,Z(n,t)),Bt(e,s,t,-1),ee(n,t)};w(o)?r(l):_(n,r),G(n)&&(Nt(e,s,-1),G(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(je,e),ee(ke,e)))},At=e=>{const t=Z(xe,e);if(!w(t))return Ot(e,t);Wt(e,Z(Me,e)),Ht(e,-1),ee(Me,e)},Mt=(e,t)=>we(z,e,t),Nt=(e,t,s)=>we(te(A,e,X),t,s)&&ee(k,e,te(k,e,(()=>0))+s),Bt=(e,t,s,n)=>{const l=Z(ke,e),a=Z(l,s)??0;(0==a&&1==n||1==a&&-1==n)&&we(te(j,e,X),s,n),ee(l,s,a!=-n?a+n:null),we(te(te(N,e,X),t,X),s,n)},Dt=(e,t,s,n,l)=>te(te(te(he,e,X),t,X),s,(()=>[n,0]))[1]=l,Ht=(e,t)=>we(Re,e,t),Wt=(e,t,s)=>te(Je,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,l)=>(P(te(te(te(Le,e,X),t,X),s,(()=>[])),n),l),qt=(e,t,s)=>(P(te(Ee,e,(()=>[])),t),s),Gt=(e,t,s)=>I(Z(Z(Z(he,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(is(e,t,s))])),Kt=e=>I(Z(Je,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(hs(e))])),Qt=e=>G(Le)||G(et[e])?0:Q(e?ce(Le):Le,((t,s)=>Q(t,((t,n)=>Q(t,((t,l)=>dt(et[e],[s,n,l],t))))))),Ut=e=>G(Ee)||G(tt[e])?0:Q(e?oe(Ee):Ee,((t,s)=>dt(tt[e],[s],t))),Xt=(e,t,s,n)=>{if(!G(e))return dt(t,n,(()=>ne(e))),_(e,((e,t)=>dt(s,[...n??[],e],1==t))),1},Yt=e=>{const t=fs();t!=d&&dt(Ne[e],void 0,t);const s=G(Qe[e]),n=G(Ye[e])&&G(Ze[e])&&G(Ke[e])&&G(Ue[e])&&G($e[e])&&G(qe[e])&&G(Ge[e])&&s&&G(De[e])&&G(He[e]),l=G(_e[e])&&G(Xe[e])&&G(We[e])&&G(Be[e]);if(!n||!l){const t=e?[oe(z),re(j),oe(k),re(A),ce(N),ce(he)]:[z,j,k,A,N,he];if(!n){Xt(t[0],De[e],He[e]),Q(t[1],((t,s)=>Xt(t,$e[e],qe[e],[s]))),Q(t[2],((t,s)=>{0!=t&&dt(Ge[e],[s],as(s))}));const n=de();Q(t[3],((t,l)=>{Xt(t,Ke[e],Ue[e],[l])&&!s&&(dt(Qe[e],[l,null]),ue(n,l))})),s||Q(t[5],((t,s)=>{if(!q(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],l)=>s!==t?ue(n,l):U(e,l))))),Q(n,(t=>dt(Qe[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Xt(t,Ye[e],Ze[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let l;Q(t,((t,a)=>{let o;Q(t,(([t,r],c)=>{r!==t&&(dt(_e[e],[n,a,c],r,t,Gt),s=l=o=1)})),o&&dt(Xe[e],[n,a],Gt)})),l&&dt(We[e],[n],Gt)})),s&&dt(Be[e],void 0,Gt)}}},Zt=e=>{const t=Cs();t!=m&&dt(st[e],void 0,t);const s=G(lt[e])&&G(at[e]),n=G(ot[e])&&G(nt[e]);if(!s||!n){const t=e?[oe(Re),oe(Je)]:[Re,Je];if(s||Xt(t[0],lt[e],at[e]),!n){let s;Q(t[1],(([t,n],l)=>{n!==t&&(dt(ot[e],[l],n,t,Kt),s=1)})),s&&dt(nt[e],void 0,Kt)}}},_t=(e,...t)=>(Os((()=>e(...O(t,p)))),zs),es=()=>[ne(he,((e,t)=>-1===Z(z,t)?null:ne(e,((e,s)=>-1===Z(Z(A,t),s)?null:ne(e,(([,e])=>e??null),((e,t)=>Ve(t)))),W)),W),ne(Je,(([,e])=>e??null),((e,t)=>Ve(t)))],ts=()=>({cellsTouched:l,valuesTouched:o,changedCells:ae(he,be,Ve),invalidCells:ae(Le),changedValues:ne(Je,be,Ve),invalidValues:ne(Ee),changedTableIds:ne(z),changedRowIds:le(A),changedCellIds:ae(N),changedValueIds:ne(Re)}),ss=()=>ae(Ae),ns=()=>Y(Ae),ls=e=>Y(Z(ke,p(e))),as=e=>$(Z(Ae,p(e))),os=e=>Y(Z(Ae,p(e))),rs=(e,t,s,n=0,l)=>{return O(L((o=Z(Ae,p(e)),r=(e,s)=>[w(t)?s:Z(e,p(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),n,w(l)?l:n+l),(([,e])=>e));var a,o,r},cs=(e,t)=>Y(Z(Z(Ae,p(e)),p(t))),is=(e,t,s)=>Z(Z(Z(Ae,p(e)),p(t)),p(s)),ds=()=>ne(Me),us=()=>Y(Me),hs=e=>Z(Me,p(e)),fs=()=>!G(Ae),gs=e=>q(Ae,p(e)),Ts=(e,t)=>q(Z(ke,p(e)),p(t)),bs=(e,t)=>q(Z(Ae,p(e)),p(t)),Vs=(e,t,s)=>q(Z(Z(Ae,p(e)),p(t)),p(s)),Cs=()=>!G(Me),Ss=e=>q(Me,p(e)),vs=e=>_t((()=>(e=>me(e,gt,$t))(e)?wt(e):0)),ys=e=>_t((()=>Vt(e)?Ft(e):0)),ps=e=>{try{mt(pe(e))}catch{}return zs},ms=t=>_t((()=>{if((e=me(t,(e=>me(e,ft))))&&(yt(t),!G(Ae))){const e=ss();Is(),vs(e)}})),ws=e=>_t((()=>{if(t=(e=>me(e,ft))(e)){const s=ds();Fs(),Ls(),t=!0,pt(e),ys(s)}})),Is=()=>_t((()=>wt({}))),Rs=e=>_t((e=>q(Ae,e)?zt(e):0),e),Js=(e,t)=>_t(((e,t)=>I(Z(Ae,e),(s=>q(s,t)?jt(e,s,t):0))),e,t),Ls=()=>_t((()=>Ft({}))),Es=()=>_t((()=>{yt({}),e=!1})),Fs=()=>_t((()=>{pt({}),t=!1})),Os=(e,t)=>{if(-1!=x){Ps();const s=e();return xs(t),s}},Ps=()=>(-1!=x&&x++,1==x&&dt(rt,void 0,es,ts),zs),xs=e=>(x>0&&(x--,0==x&&(l=!G(he),o=!G(Je),x=1,Qt(1),l&&Yt(1),Ut(1),o&&Zt(1),e?.(es,ts)&&(Q(he,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>Se(zs,t,s,n,e))))))),Q(Je,(([e],t)=>ve(zs,t,e))),l=o=!1),dt(ct[0],void 0,es,ts),x=-1,Qt(0),l&&Yt(0),Ut(0),o&&Zt(0),dt(ct[1],void 0,es,ts),n?.(zs,es,ts),x=0,l=o=!1,d=fs(),m=Cs(),F([z,j,k,A,N,he,Le,Re,Je,Ee],K))),zs),zs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>le(Z(Ae,p(e))),getTableCellIds:ls,getRowCount:as,getRowIds:os,getSortedRowIds:rs,getRow:(e,t)=>ne(Z(Z(Ae,p(e)),p(t))),getCellIds:cs,getCell:is,getValues:ds,getValueIds:us,getValue:hs,hasTables:fs,hasTable:gs,hasTableCell:Ts,hasRow:bs,hasCell:Vs,hasValues:Cs,hasValue:Ss,getTablesJson:()=>ye(Ae),getValuesJson:()=>ye(Me),getJson:()=>ye([Ae,Me]),getTablesSchemaJson:()=>ye(Fe),getValuesSchemaJson:()=>ye(Pe),getSchemaJson:()=>ye([Fe,Pe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>_t((()=>{(W(e)?Is:vs)(e),(W(t)?Ls:ys)(t)})),setTables:vs,setTable:(e,t)=>_t((e=>gt(t,e)?It(e,t):0),e),setRow:(e,t,s)=>_t(((e,t)=>Tt(e,t,s)?Rt(e,xt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Os((()=>{let n;return Tt(e,n,t)&&(e=p(e),Rt(e,xt(e),n=Pt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>_t(((e,t)=>{if(Tt(e,t,s,1)){const n=xt(e);H(s,((s,l)=>Lt(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>_t(((e,t,s)=>I(bt(e,t,s,J(n)?n(is(e,t,s)):n),(n=>Lt(e,xt(e),t,s,n)))),e,t,s),setValues:ys,setPartialValues:e=>_t((()=>Vt(e,1)?H(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>_t((e=>I(Ct(e,J(t)?t(hs(e)):t),(t=>Ot(e,t)))),e),setTransactionChanges:e=>_t((()=>{H(e[0],((e,t)=>w(e)?Rs(t):H(e,((e,s)=>w(e)?Js(t,s):H(e,((e,n)=>Se(zs,t,s,n,e))))))),H(e[1],((e,t)=>ve(zs,t,e)))})),setTablesJson:ps,setValuesJson:e=>{try{Et(pe(e))}catch{}return zs},setJson:e=>_t((()=>{try{const[t,s]=pe(e);mt(t),Et(s)}catch{ps(e)}})),setTablesSchema:ms,setValuesSchema:ws,setSchema:(e,t)=>_t((()=>{ms(e),ws(t)})),delTables:Is,delTable:Rs,delRow:Js,delCell:(e,t,s,n)=>_t(((e,t,s)=>I(Z(Ae,e),(l=>I(Z(l,t),(a=>q(a,s)?kt(e,l,t,a,s,n):0))))),e,t,s),delValues:Ls,delValue:e=>_t((e=>q(Me,e)?At(e):0),e),delTablesSchema:Es,delValuesSchema:Fs,delSchema:()=>_t((()=>{Es(),Fs()})),transaction:Os,startTransaction:Ps,finishTransaction:xs,forEachTable:e=>Q(Ae,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(ke,p(e)),t),forEachRow:(e,t)=>Q(Z(Ae,p(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(Ae,p(e)),p(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,l,a,o)=>{let r=rs(e,t,s,n,l);return it((()=>{const o=rs(e,t,s,n,l);var c,i,d;i=r,E(c=o)===E(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(zs,e,t,s,n,l,r))}),Qe[o?1:0],[e,t],[ns])},addStartTransactionListener:e=>it(e,rt),addWillFinishTransactionListener:e=>it(e,ct[0]),addDidFinishTransactionListener:e=>it(e,ct[1]),callListener:e=>(ht(e),zs),delListener:e=>(ut(e),zs),getListenerStats:()=>({}),createStore:Ie,addListener:it,callListeners:dt,addPostTransactionListener:e=>{n=e}};return H({[i+h]:[0,Ne,[],()=>[fs()]],[h]:[0,Be],[f]:[0,De],[i+u]:[1,He,[ns],e=>[gs(...e)]],[u]:[1,We,[ns]],[u+C]:[1,$e,[ns]],[i+u+V]:[2,qe,[ns,ls],e=>[Ts(...e)]],[T]:[1,Ge,[ns]],[b]:[1,Ke,[ns]],[i+g]:[2,Ue,[ns,os],e=>[bs(...e)]],[g]:[2,Xe,[ns,os]],[C]:[2,Ye,[ns,os]],[i+V]:[3,Ze,[ns,os,cs],e=>[Vs(...e)]],[V]:[3,_e,[ns,os,cs],e=>ge(is(...e))],InvalidCell:[3,et],[i+v]:[0,st,[],()=>[Cs()]],[v]:[0,nt],[y]:[0,lt],[i+S]:[1,at,[us],e=>[Ss(...e)]],[S]:[1,ot,[us],e=>ge(hs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,n],l)=>{zs["add"+l+"Listener"]=(...l)=>it(l[e],t[l[e+1]?1:0],e>0?L(l,0,e):void 0,s,n)})),M(zs)};e.createStore=Ie},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",f=u+"s",h=u+d,g="Row",T=g+"Count",b=g+d,S="Cell",V=S+d,p="Value",v=p+"s",y=p+d,C=e=>s+e,m=isFinite,w=e=>null==e,L=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==a,I=e=>t(e)==o,J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.entries,k=z.keys,A=z.isFrozen,M=z.freeze,N=e=>!w(e)&&L(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),B=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>O(j(e),(([e,s])=>t(s,e))),W=e=>N(e)&&0==(e=>E(k(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,G=e=>w(e)||0==$(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>w(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s)=>(q(e,t)||ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>B(t,s)?0:n(e,s))),e),ne=(e,t,s)=>{const n={};return Q(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ie=e=>oe(e,re),ce=(e,t,s,n,a=0)=>L((s?te:Z)(e,t[a],a>E(t)-2?s:X),(l=>{if(a>E(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ce(l,t,s,n,a+1);return G(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||w(e)?e:[e]),ue=(e,t)=>e?.add(t),fe=/^\d+$/,he=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{fe.test(t)&&E(e)<1e3&&x(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Se=([e,t])=>e===t,Ve=e=>{const s=t(e);return R(s)||s==l&&m(e)?s:void 0},pe=(e,t,s,n,a)=>w(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ye=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),Ce=JSON.parse,me=(e,t,s)=>w(e)||!N(e)||W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),we=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),Le=()=>{let e,t,n=!1,a=!1,o=0,d=[];const m=X(),z=X(),P=X(),j=X(),k=X(),A=X(),N=X(),fe=X(),Re=X(),Ie=X(),Je=X(),Ee=X(),Fe=X(),Oe=X(),xe=de(),ze=X(),Pe=X(),je=X(),ke=X(),Ae=Te(),Me=Te(),Ne=Te(),Be=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=X(),ot=Te(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=he(),l=X();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const c=n(1);return ee(l,c,[e,a,o,r,i]),ue(ce(a,o??[s],de),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==E(t)?x(n,e):null===t[s]?Q(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(Z(e,t),s+1)));return a(e,0),n})(e,n),(e=>Q(e,(e=>Z(l,e)[0](t,...n??[],...a))))),e=>L(Z(l,e),(([,t,n])=>(ce(t,n??[s],void 0,(t=>(U(t,e),G(t)?1:0))),ee(l,e),a(e),n))),e=>L(Z(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...a(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!me(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=l||(Ve(e[i])!=t&&D(e,i),0))},ft=(t,s)=>(!e||q(Je,s)||Ht(s))&&me(t,((e,t)=>ht(s,t,e)),(()=>Ht(s))),ht=(e,t,s,n)=>me(n?s:St(s,e,t),((n,a)=>L(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ht(e,t))),gt=(t,s,n,a)=>e?L(Z(Z(Je,t),n),(e=>Ve(a)!=e[r]?Ht(t,s,n,a,e[i]):a),(()=>Ht(t,s,n,a))):w(Ve(a))?Ht(t,s,n,a):a,Tt=(e,t)=>me(t?e:Vt(e),((t,s)=>L(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Wt())),bt=(e,s)=>t?L(Z(Fe,e),(t=>Ve(s)!=t[r]?Wt(e,s,t[i]):s),(()=>Wt(e,s))):w(Ve(s))?Wt(e,s):s,St=(e,t,s)=>(L(Z(Ee,t),(([n,a])=>{Q(n,((t,s)=>{B(e,s)||(e[s]=t)})),Q(a,(n=>{B(e,n)||Ht(t,s,n)}))})),e),Vt=e=>(t&&(Q(Oe,((t,s)=>{B(e,s)||(e[s]=t)})),Q(xe,(t=>{B(e,t)||Wt(t)}))),e),pt=e=>se(Je,e,((e,t,s)=>{const n=X(),a=de();se(te(Je,t,X),s,((e,t,s)=>{ee(e,t,s),L(s[i],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),L(s[i],(e=>ee(Oe,t,e)),(()=>ue(xe,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),U(xe,t)})),yt=e=>W(e)?ys():bs(e),Ct=e=>se(je,e,((e,t,s)=>mt(t,s)),((e,t)=>xt(t))),mt=(e,t)=>se(te(je,e,(()=>(kt(e,1),ee(ze,e,he()),ee(Pe,e,X()),X()))),t,((t,s,n)=>wt(e,t,s,n)),((t,s)=>zt(e,t,s))),wt=(e,t,s,n,a)=>se(te(t,s,(()=>(At(e,s,1),X()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>Pt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{q(s,n)||Mt(e,t,n,1);const l=Z(s,n);a!==l&&(Nt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>L(Z(t,s),(t=>Lt(e,s,t,n,a)),(()=>wt(e,t,s,St({[n]:a},e,s)))),It=e=>W(e)?ws():Ss(e),Jt=e=>se(ke,e,((e,t,s)=>Et(t,s)),((e,t)=>jt(t))),Et=(e,t)=>{q(ke,e)||Bt(e,1);const s=Z(ke,e);t!==s&&(Dt(e,s,t),ee(ke,e,t))},Ft=(e,t)=>{const[s]=Z(ze,e),n=s(t);return q(Z(je,e),n)?Ft(e,t):n},Ot=e=>Z(je,e)??mt(e,{}),xt=e=>mt(e,{}),zt=(e,t,s)=>{const[,n]=Z(ze,e);n(s),wt(e,t,s,{},!0)},Pt=(e,t,s,n,a,l)=>{const o=Z(Z(Ee,e)?.[0],a);if(!w(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{Nt(e,s,t,Z(n,t)),Mt(e,s,t,-1),ee(n,t)};w(o)?r(a):_(n,r),G(n)&&(At(e,s,-1),G(ee(t,s))&&(kt(e,-1),ee(je,e),ee(ze,e),ee(Pe,e)))},jt=e=>{const t=Z(Oe,e);if(!w(t))return Et(e,t);Dt(e,Z(ke,e)),Bt(e,-1),ee(ke,e)},kt=(e,t)=>we(m,e,t),At=(e,t,s)=>we(te(j,e,X),t,s)&&ee(P,e,te(P,e,(()=>0))+s),Mt=(e,t,s,n)=>{const a=Z(Pe,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(te(z,e,X),s,n),ee(a,s,l!=-n?l+n:null),we(te(te(k,e,X),t,X),s,n)},Nt=(e,t,s,n,a)=>te(te(te(A,e,X),t,X),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>we(N,e,t),Dt=(e,t,s)=>te(fe,e,(()=>[t,0]))[1]=s,Ht=(e,t,s,n,a)=>(x(te(te(te(Re,e,X),t,X),s,(()=>[])),n),a),Wt=(e,t,s)=>(x(te(Ie,e,(()=>[])),t),s),$t=(e,t,s)=>L(Z(Z(Z(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),qt=e=>L(Z(fe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(is(e))])),Gt=e=>G(Re)||G(Ze[e])?0:Q(e?ie(Re):Re,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>it(Ze[e],[s,n,a],t))))))),Kt=e=>G(Ie)||G(_e[e])?0:Q(e?oe(Ie):Ie,((t,s)=>it(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!G(e))return it(t,n,(()=>ne(e))),_(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Ut=e=>{const t=cs();t!=n&&it(Ae[e],void 0,t);const s=G(Ge[e]),a=G(Ue[e])&&G(Xe[e])&&G(qe[e])&&G(Ke[e])&&G(He[e])&&G(We[e])&&G($e[e])&&s&&G(Ne[e])&&G(Be[e]),l=G(Ye[e])&&G(Qe[e])&&G(De[e])&&G(Me[e]);if(!a||!l){const t=e?[oe(m),re(z),oe(P),re(j),ie(k),ie(A)]:[m,z,P,j,k,A];if(!a){Qt(t[0],Ne[e],Be[e]),Q(t[1],((t,s)=>Qt(t,He[e],We[e],[s]))),Q(t[2],((t,s)=>{0!=t&&it($e[e],[s],ts(s))}));const n=de();Q(t[3],((t,a)=>{Qt(t,qe[e],Ke[e],[a])&&!s&&(it(Ge[e],[a,null]),ue(n,a))})),s||Q(t[5],((t,s)=>{if(!q(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],a)=>s!==t?ue(n,a):U(e,a))))),Q(n,(t=>it(Ge[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],i)=>{r!==t&&(it(Ye[e],[n,l,i],r,t,$t),s=a=o=1)})),o&&it(Qe[e],[n,l],$t)})),a&&it(De[e],[n],$t)})),s&&it(Me[e],void 0,$t)}}},Xt=e=>{const t=gs();t!=a&&it(et[e],void 0,t);const s=G(st[e])&&G(nt[e]),n=G(at[e])&&G(tt[e]);if(!s||!n){const t=e?[oe(N),oe(fe)]:[N,fe];if(s||Qt(t[0],st[e],nt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,qt),s=1)})),s&&it(tt[e],void 0,qt)}}},Yt=(e,...t)=>(Is((()=>e(...O(t,C)))),Fs),Zt=()=>le(je),_t=()=>Y(je),es=e=>Y(Z(Pe,C(e))),ts=e=>$(Z(je,C(e))),ss=e=>Y(Z(je,C(e))),ns=(e,t,s,n=0,a)=>{return O(J((o=Z(je,C(e)),r=(e,s)=>[w(t)?s:Z(e,C(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,w(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Y(Z(Z(je,C(e)),C(t))),ls=(e,t,s)=>Z(Z(Z(je,C(e)),C(t)),C(s)),os=()=>ne(ke),rs=()=>Y(ke),is=e=>Z(ke,C(e)),cs=()=>!G(je),ds=e=>q(je,C(e)),us=(e,t)=>q(Z(Pe,C(e)),C(t)),fs=(e,t)=>q(Z(je,C(e)),C(t)),hs=(e,t,s)=>q(Z(Z(je,C(e)),C(t)),C(s)),gs=()=>!G(ke),Ts=e=>q(ke,C(e)),bs=e=>Yt((()=>(e=>me(e,ft,Ht))(e)?Ct(e):0)),Ss=e=>Yt((()=>Tt(e)?Jt(e):0)),Vs=e=>{try{yt(Ce(e))}catch{}return Fs},ps=t=>Yt((()=>{if((e=me(t,(e=>me(e,ut))))&&(pt(t),!G(je))){const e=Zt();ys(),bs(e)}})),vs=e=>Yt((()=>{if(t=(e=>me(e,ut))(e)){const s=os();Rs(),ws(),t=!0,vt(e),Ss(s)}})),ys=()=>Yt((()=>Ct({}))),Cs=e=>Yt((e=>q(je,e)?xt(e):0),e),ms=(e,t)=>Yt(((e,t)=>L(Z(je,e),(s=>q(s,t)?zt(e,s,t):0))),e,t),ws=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{pt({}),e=!1})),Rs=()=>Yt((()=>{vt({}),t=!1})),Is=(e,t)=>{if(-1!=o){Js();const s=e();return Es(t),s}},Js=()=>(-1!=o&&o++,1==o&&it(lt,void 0),Fs),Es=e=>(o>0&&(o--,0==o&&(o=1,Gt(1),G(A)||Ut(1),Kt(1),G(fe)||Xt(1),e?.(Fs)&&(Q(A,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>pe(Fs,t,s,n,e))))))),K(A),Q(fe,(([e],t)=>ve(Fs,t,e))),K(fe)),it(ot[0],void 0),o=-1,Gt(0),G(A)||Ut(0),Kt(0),G(fe)||Xt(0),d[0]?.(Fs),it(ot[1],void 0),d[1]?.(Fs),o=0,n=cs(),a=gs(),F([m,z,P,j,k,A,Re,N,fe,Ie],K))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ae(Z(je,C(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne(Z(Z(je,C(e)),C(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:fs,hasCell:hs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ye(je),getValuesJson:()=>ye(ke),getJson:()=>ye([je,ke]),getTablesSchemaJson:()=>ye(Je),getValuesSchemaJson:()=>ye(Fe),getSchemaJson:()=>ye([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Yt((()=>{(W(e)?ys:bs)(e),(W(t)?ws:Ss)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ft(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ht(e,t,s)?wt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ht(e,n,t)&&(e=C(e),wt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ht(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>L(gt(e,t,s,I(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>L(bt(e,I(t)?t(is(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>w(e)?Cs(t):H(e,((e,s)=>w(e)?ms(t,s):H(e,((e,n)=>pe(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Vs,setValuesJson:e=>{try{It(Ce(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=Ce(e);yt(t),It(s)}catch{Vs(e)}})),setTablesSchema:ps,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{ps(e),vs(t)})),delTables:ys,delTable:Cs,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>L(Z(je,e),(a=>L(Z(a,t),(l=>q(l,s)?Pt(e,a,t,l,s,n):0))))),e,t,s),delValues:ws,delValue:e=>Yt((e=>q(ke,e)?jt(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(A,((e,t)=>-1===Z(m,t)?void 0:ne(e,((e,s)=>-1===Z(Z(j,t),s)?void 0:ne(e,(([,e])=>e),((e,t)=>Se(t)))),W)),W),ne(fe,(([,e])=>e),((e,t)=>Se(t)))],getTransactionLog:()=>[!G(A),!G(fe),le(A,be,Se),le(Re),ne(fe,be,Se),ne(Ie),ne(m),ae(j),le(k),ne(N)],finishTransaction:Es,forEachTable:e=>Q(je,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(Pe,C(e)),t),forEachRow:(e,t)=>Q(Z(je,C(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(je,C(e)),C(t)),s),forEachValue:e=>_(ke,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(ct(e),Fs),getListenerStats:()=>({}),createStore:Le,addListener:rt,callListeners:it,setInternalListeners:(e,t)=>d=[e,t]};return H({[c+f]:[0,Ae,[],()=>[cs()]],[f]:[0,Me],[h]:[0,Ne],[c+u]:[1,Be,[_t],e=>[ds(...e)]],[u]:[1,De,[_t]],[u+V]:[1,He,[_t]],[c+u+S]:[2,We,[_t,es],e=>[us(...e)]],[T]:[1,$e,[_t]],[b]:[1,qe,[_t]],[c+g]:[2,Ke,[_t,ss],e=>[fs(...e)]],[g]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+S]:[3,Xe,[_t,ss,as],e=>[hs(...e)]],[S]:[3,Ye,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,Ze],[c+v]:[0,et,[],()=>[gs()]],[v]:[0,tt],[y]:[0,st],[c+p]:[1,nt,[rs],e=>[Ts(...e)]],[p]:[1,at,[rs],e=>ge(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),M(Fs)};e.createStore=Le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
|
package/lib/umd/store.js.gz
CHANGED
|
Binary file
|
package/lib/umd/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",h="Has",g="Ids",f="Table",L=f+"s",w=f+g,C="Row",T=C+"Count",I=C+g,v="Sorted"+C+g,R="Cell",S=R+g,p="Value",y=p+"s",b=p+g,m=e=>s+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),E=(e,t=0)=>e.charCodeAt(t),k=Math.max,x=Math.min,D=isFinite,A=e=>null==e,J=(e,t,s)=>A(e)?s?.():t(e),F=e=>e==n||e==a,Q=e=>t(e)==r,H=e=>Array.isArray(e),P=(e,t,s)=>e.slice(t,s),z=e=>e.length,N=()=>{},O=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),j=(e,t)=>z(e)===z(t)&&W(e,((e,s)=>t[s]===e)),B=(e,t)=>W(e,((s,n)=>0==n||t(e[n-1],s)<=0)),_=(e,t)=>e.sort(t),$=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>U(e,((e,t)=>e+t),0),K=e=>0==z(e),U=(e,t,s)=>e.reduce(t,s),X=(e,...t)=>e.push(...t),Y=e=>e.pop(),Z=e=>e.shift(),ee=Object,te=e=>ee.getPrototypeOf(e),se=ee.entries,ne=ee.keys,ae=ee.isFrozen,oe=ee.freeze,re=e=>!A(e)&&J(te(e),(e=>e==ee.prototype||A(te(e))),(()=>!0)),le=(e,t)=>!A(((e,t)=>J(e,(e=>e[t])))(e,t)),ie=(e,t)=>(delete e[t],e),ce=(e,t)=>q(se(e),(([e,s])=>t(s,e))),de=e=>re(e)&&0==(e=>z(ne(e)))(e),ue=e=>e?.size??0,he=(e,t)=>e?.has(t)??!1,ge=e=>A(e)||0==ue(e),fe=e=>[...e?.values()??[]],Le=e=>e.clear(),we=(e,t)=>e?.forEach(t),Ce=(e,t)=>e?.delete(t),Te=e=>new Map(e),Ie=e=>[...e?.keys()??[]],ve=(e,t)=>e?.get(t),Re=(e,t)=>we(e,((e,s)=>t(s,e))),Se=(e,t,s)=>A(s)?(Ce(e,t),e):e?.set(t,s),pe=(e,t,s)=>(he(e,t)||Se(e,t,s()),ve(e,t)),ye=(e,t,s,n=Se)=>(ce(t,((t,n)=>s(e,n,t))),Re(e,(s=>le(t,s)?0:n(e,s))),e),be=(e,t,s)=>{const n={};return we(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},me=(e,t,s)=>be(e,(e=>be(e,t,s)),de),Ve=(e,t,s)=>be(e,(e=>me(e,t,s)),de),Me=(e,t)=>{const s=Te();return we(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ee=e=>Me(e,Me),ke=e=>Me(e,Ee),xe=(e,t,s,n,a=0)=>J((s?pe:ve)(e,t[a],a>z(t)-2?s:Te),(o=>{if(a>z(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=xe(o,t,s,n,a+1);return ge(o)&&Se(e,t[a]),r})),De=e=>{const s=t(e);return F(s)||s==o&&D(e)?s:void 0},Ae=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Je=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),Fe=e=>new Set(H(e)||A(e)?e:[e]),Qe=(e,t)=>e?.add(t),He=(e,t,s,n,a)=>{const o=e.hasRow,r=Te(),l=Te(),i=Te(),c=Te(),d=Te(),u=Te(),h=(t,s,...n)=>{const a=pe(u,t,Fe);return $(n,(t=>Qe(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>J(ve(u,t),(n=>{$(K(s)?fe(n):s,(t=>{e.delListener(t),Ce(n,t)})),ge(n)&&Se(u,t)})),f=(e,s)=>{Se(r,e,s),he(l,e)||(Se(l,e,t()),Se(c,e,Te()),Se(d,e,Te()),a(i))},L=e=>{Se(r,e),Se(l,e),Se(c,e),Se(d,e),g(e),a(i)};return[()=>e,()=>Ie(r),e=>Re(l,e),e=>he(l,e),e=>ve(r,e),e=>ve(l,e),(e,t)=>Se(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=Te(),u=Te(),L=ve(c,t),w=ve(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=ve(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||H(c)&&H(d)&&j(c,d)||Se(i,t,[c,d]),!A(l)){const e=ve(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&Se(u,t,s)}},T=e=>{a((()=>{we(i,(([,e],t)=>Se(L,t,e))),we(u,((e,t)=>Se(w,t,e)))}),i,u,L,w,e),Le(i),Le(u)};Re(L,C),e.hasTable(n)&&$(e.getRowIds(n),(e=>{he(L,e)||C(e)})),T(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>T())))},L,e=>n(e,i),()=>Re(u,L),h,g]},Pe=(e,a)=>t(e)==n?t=>t(e):e??(()=>a??s),ze=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},Ne=/^\d+$/,Oe=()=>{const e=[];let t=0;return[n=>(n?Z(e):null)??s+t++,t=>{Ne.test(t)&&z(e)<1e3&&X(e,t)}]},We=e=>{let t;const[n,a]=Oe(),o=Te();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return Se(o,d,[a,r,l,i,c]),Qe(xe(r,l??[s],Fe),d),d},(e,n,...a)=>$(((e,t=[s])=>{const n=[],a=(e,s)=>s==z(t)?X(n,e):null===t[s]?we(e,(e=>a(e,s+1))):$([t[s],null],(t=>a(ve(e,t),s+1)));return a(e,0),n})(e,n),(e=>we(e,(e=>ve(o,e)[0](t,...n??[],...a))))),e=>J(ve(o,e),(([,t,n])=>(xe(t,n??[s],void 0,(t=>(Ce(t,e),ge(t)?1:0))),Se(o,e),a(e),n))),e=>J(ve(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=z(r);l==z(s)?e(t,...r,...a(r)):A(s[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},je=ze((e=>{let t,n,a,o=100,r=Te(),l=Te(),i=1;const c=Te(),d=Te(),[u,h,g]=We((()=>F)),f=Te(),L=Te(),w=[],C=[],T=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=ve(f,s);we(n,((s,n)=>we(s,((s,a)=>we(s,((s,o)=>Ae(e,n,a,o,s[t]))))))),we(a,((s,n)=>Je(e,n,s[t])))})),i=1},I=e=>{Se(f,e),Se(L,e),h(d,[e])},v=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??z(e)),I),R=()=>v(w,z(w)-o),S=()=>J(t,(()=>{X(w,t),R(),v(C),t=void 0,a=1})),p=()=>{t=Y(w),a=1};let y,b;const m=(e="")=>(A(t)&&(t=s+n++,Se(f,t,[r,l]),x(t,e),r=Te(),l=Te(),a=1),t),V=()=>{K(w)||(((e,...t)=>{e.unshift(...t)})(C,m()),T(0,t),t=Y(w),a=1)},M=()=>{K(C)||(X(w,t),t=Z(C),T(1,t),a=1)},E=()=>{a&&(h(c),a=0)},k=e=>{const t=m(e);return E(),t},x=(e,t)=>(D(e)&&ve(L,e)!==t&&(Se(L,e,t),h(d,[e])),F),D=e=>he(f,e),F={setSize:e=>(o=e,R(),F),addCheckpoint:k,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Re(L,e),hasCheckpoint:D,getCheckpoint:e=>ve(L,e),goBackward:()=>(V(),E(),F),goForward:()=>(M(),E(),F),goTo:e=>{const s=O(w,e)?V:O(C,e)?M:null;for(;!A(s)&&e!=t;)s();return E(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),F),clear:()=>(v(w),v(C),A(t)||I(t),t=void 0,n=0,k(),F),clearForward:()=>(K(C)||(v(C),h(c)),F),destroy:()=>{e.delListener(y),e.delListener(b)},getListenerStats:()=>({}),_registerListeners:()=>{y=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){S();const e=pe(r,t,Te),l=pe(e,s,Te),i=pe(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ge(Se(l,n))&&ge(Se(e,s))&&ge(Se(r,t))&&p(),E()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){S();const e=pe(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ge(Se(l,t))&&p(),E()}}))}};return oe(F.clear())}),(e=>e._registerListeners())),Be=(e,t)=>(e??0)<(t??0)?-1:1,_e=ze((e=>{const t=Te(),n=Te(),[a,o,r]=We((()=>I)),[l,i,c,d,u,h,g,,f,L,w,C]=He(e,Te,(e=>A(e)?s:H(e)?q(e,m):m(e)),a,o),T=(t,s,n)=>{const a=u(t);we(n,((t,n)=>s(n,(s=>we(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},I={setIndexDefinition:(e,s,a,r,l,i=Be)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let L=0;const w=Fe(),C=Fe(),T=h(e);if(we(a,(([e,t],s)=>{const n=Fe(e),a=Fe(t);we(n,(e=>Ce(a,e)?Ce(n,e):0)),we(n,(e=>{Qe(w,e),J(ve(T,e),(t=>{Ce(t,s),ge(t)&&(Se(T,e),L=1)}))})),we(a,(e=>{Qe(w,e),he(T,e)||(Se(T,e,Fe()),L=1),Qe(ve(T,e),s),A(r)||Qe(C,e)}))})),s(),ge(u)||(f?Re(T,(e=>Qe(C,e))):Re(l,(e=>J(ve(d,e),(e=>Qe(C,e))))),we(C,(e=>{const t=(t,s)=>i(ve(u,t),ve(u,s),e),s=[...ve(T,e)];B(s,t)||(Se(T,e,Fe(_(s,t))),Qe(w,e))}))),(L||f)&&!A(c)){const t=[...T];B(t,c)||(g(e,Te(_(t,c))),L=1)}L&&o(t,[e]),we(w,(t=>o(n,[e,t])))}),Pe(a),J(r,Pe)),I},delIndexDefinition:e=>(L(e),I),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>T(t,e,s))))),forEachSlice:(e,t)=>T(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>he(h(e),t),getTableId:u,getSliceIds:e=>Ie(h(e)),getSliceRowIds:(e,t)=>fe(ve(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),I),destroy:C,getListenerStats:()=>({})};return oe(I)})),$e=Te([["avg",[(e,t)=>G(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),qe=(e,t,s,n,a,o=!1)=>{if(ge(s))return;const[r,l,i,c]=a;return o||=A(e),we(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(fe(s),ue(s)):e},Ge=ze((e=>{const t=Te(),[n,a,o]=We((()=>C)),[r,l,i,c,d,u,h,,g,f,L,w]=He(e,N,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:ve($e,n)??ve($e,"sum");return g(e,s,((s,n,o,r,l,i)=>{const d=u(e),g=ue(r);i||=A(d),s();let f=qe(d,g,r,n,c,i);D(f)||(f=void 0),f!=d&&(h(e,f),a(t,[e],f,d))}),Pe(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({})};return oe(C)})),Ke=Te(),Ue=Te(),Xe=ze((e=>{const t=e.createStore,n=t(),a=t(),o=Te(),{addListener:r,callListeners:l,delListener:i}=a,[h,g,L,w,p,,,y,,b,m,V,M,E]=He(e,(()=>!0),N,r,l),k=(e,t,...s)=>$(s,(s=>Qe(pe(pe(o,t,Te),e,Fe),s))),x=e=>{J(ve(o,e),(e=>{Re(e,((e,t)=>we(t,(t=>e.delListener(t))))),Le(e)})),$([a,n],(t=>t.delTable(e)))},D=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(t,o,r)=>{y(t,o),x(t);const l=[],i=[[null,[o,null,null,[],Te()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=Q(e)?[z(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return X(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||Q(t)?null:t,a=A(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],Te()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>X(c,Q(e)?e:A(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:ve($e,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,Q(e)?e:s=>s(e)===t)});const h=Te(l);if(ge(h))return F;const g=Te(i);Re(g,((e,[,t])=>J(ve(g,t),(({3:t})=>A(e)?0:X(t,e)))));const f=Te(d);let L=n;if(ge(f)&&K(u))L=a;else{D(t,L,a);const e=Te();Re(f,((t,[s,n])=>Qe(pe(e,s,Fe),[t,n])));const s=Fe();Re(h,(t=>he(e,t)?0:Qe(s,t)));const n=Te(),o=(s,n,o,r)=>J(s,(([l,i,c,d])=>{Re(n,((t,[s])=>{const n=pe(l,t,Te),a=ve(n,o),i=r?void 0:s;if(a!==i){const s=Fe([[a,i]]),r=ue(n);Se(n,o,i),we(ve(e,t),(([e,t])=>{const a=qe(d[e],r,n,s,t);d[e]=A(De(a))?null:a}))}})),ge(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));k(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=Te(),h=L.hasRow(t,l);let g=!h;we(s,(e=>{const[s,n,a]=i(t,l,e);X(c,n),X(d,a),g||=s})),Re(e,(e=>{const[s,,n]=i(t,l,e);(g||s)&&Se(u,e,[n])})),g&&o(xe(n,c,void 0,(([,e])=>(Ce(e,l),ge(e)))),u,l,1),h&&o(xe(n,d,(()=>{const e={};return we(s,(s=>e[s]=L.getCell(t,l,s))),[Te(),Fe(),void 0,e]}),(([,e])=>{Qe(e,l)})),u,l)})))}D(t,e,L);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=ve(g,n),c=o?.(l,s),[d,u]=ve(i,s)??[];c!=d&&(A(u)||E(t,u),Se(i,s,A(c)?null:[c,...M(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[ve(g,t)?.[0],ve(ve(g,t)?.[4],s)?.[0],n]);L.transaction((()=>W(c,(e=>e(n)))?Re(h,((e,a)=>Ae(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:C}=ve(g,null);return L.transaction((()=>M(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(L.delRow(t,a),we(g,(({4:e})=>J(ve(e,a),(([,s])=>{E(t,s),Se(e,a)})))))}))))),F},delQueryDefinition:e=>(x(e),b(e),F),getStore:h,getQueryIds:g,forEachQuery:L,hasQuery:w,getTableId:p,addQueryIdsListener:e=>m((()=>e(F))),delListener:e=>(i(e),F),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ce({[f]:[1,1],[f+S]:[0,1],[T]:[0,1],[I]:[0,1],[v]:[0,5],[C]:[1,2],[S]:[0,2],[R]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>F[e+d+s]=(...t)=>a[e+s](...t))),F[u+d+s+c]=(...e)=>a[u+s+c](...P(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),oe(F)})),Ye=ze((e=>{const t=Te(),n=Te(),a=Te(),o=Te(),[r,l,i]=We((()=>S)),[c,d,u,h,g,f,,,L,w,C,T]=He(e,(()=>[Te(),Te(),Te(),Te()]),(e=>A(e)?void 0:e+s),r,l),I=(e,t,s)=>J(f(e),(([n,,a])=>{if(!he(a,t)){const o=Fe();if(g(e)!=R(e))Qe(o,t);else{let e=t;for(;!A(e)&&!he(o,e);)Qe(o,e),e=ve(n,e)}if(s)return o;Se(a,t,o)}return ve(a,t)})),v=(e,t)=>J(f(e),(([,,e])=>Se(e,t))),R=e=>ve(t,e),S={setRelationshipDefinition:(e,s,r,i)=>(Se(t,e,r),L(e,s,((t,s)=>{const r=Fe(),i=Fe(),c=Fe(),[d,u]=f(e);we(s,(([t,s],n)=>{A(t)||(Qe(i,t),J(ve(u,t),(e=>{Ce(e,n),ge(e)&&Se(u,t)}))),A(s)||(Qe(i,s),he(u,s)||Se(u,s,Fe()),Qe(ve(u,s),n)),Qe(r,n),Se(d,n,s),Re(ve(o,e),(t=>{he(I(e,t),n)&&Qe(c,t)}))})),t(),we(r,(t=>l(n,[e,t]))),we(i,(t=>l(a,[e,t]))),we(c,(t=>{v(e,t),l(o,[e,t])}))}),Pe(i)),S),delRelationshipDefinition:e=>(Se(t,e),w(e),S),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:R,getRemoteRowId:(e,t)=>ve(f(e)?.[0],t),getLocalRowIds:(e,t)=>fe(ve(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:fe(I(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(I(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),S),destroy:T,getListenerStats:()=>({})};return oe(S)})),Ze=()=>[s,null],et=()=>[s,Te()],tt=(e,t)=>st(e,((e,s)=>[s,A(e)?null:be(e,t)])),st=([e,t],s)=>s(t,e),nt=([e,t],s,n,a=0)=>{const o=e>s[0];return(!a&&null!==s[1]||o)&&(s[1]=n(t,s[1])),o&&(s[0]=e),s},at=(e,t,s,n)=>{var a;return a=(e,a)=>nt(e,pe(t,a,Ze),((e,t)=>!n||A(e)?s[a]=e??null:(t??=Te(),s[a]={},n(e,t,a),t)),n?0:1),$(se(e),(([e,t])=>a(t,e))),t},ot=e=>[e,e],rt=()=>[Te(),Te()],lt=e=>[...e],it=([e,t])=>e===t,ct=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),dt=JSON.parse,ut=(e,t,s)=>A(e)||!re(e)||de(e)||ae(e)?(s?.(),!1):(ce(e,((s,n)=>{t(s,n)||ie(e,n)})),!de(e)),ht=(e,t,s)=>Se(e,t,ve(e,t)==-s?void 0:s),gt=()=>{let e,t,s,n=!1,a=!1,r=!1,d=!1,g=0;const v=Te(),V=Te(),M=Te(),E=Te(),k=Te(),x=Te(),D=Te(),H=Te(),z=Te(),N=Te(),W=Te(),B=Te(),G=Te(),K=Te(),U=Fe(),Y=Te(),Z=Te(),ee=Te(),te=Te(),se=rt(),ne=rt(),ae=rt(),re=rt(),fe=rt(),xe=rt(),He=rt(),Pe=rt(),ze=rt(),Ne=rt(),je=rt(),_e=rt(),$e=rt(),qe=rt(),Ge=rt(),Ke=rt(),Ue=rt(),Xe=rt(),Ye=rt(),Ze=rt(),et=rt(),tt=rt(),st=Te(),nt=rt(),[at,ft,Lt,wt]=We((()=>Ps)),Ct=e=>{if(!ut(e,((e,t)=>O([l,i],t))))return!1;const t=e[l];return!(!F(t)&&t!=o||(De(e[i])!=t&&ie(e,i),0))},Tt=(t,s)=>(!e||he(W,s)||Gt(s))&&ut(t,((e,t)=>It(s,t,e)),(()=>Gt(s))),It=(e,t,s,n)=>ut(n?s:pt(s,e,t),((n,a)=>J(vt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),vt=(t,s,n,a)=>e?J(ve(ve(W,t),n),(e=>De(a)!=e[l]?Gt(t,s,n,a,e[i]):a),(()=>Gt(t,s,n,a))):A(De(a))?Gt(t,s,n,a):a,Rt=(e,t)=>ut(t?e:yt(e),((t,s)=>J(St(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),St=(e,s)=>t?J(ve(G,e),(t=>De(s)!=t[l]?Kt(e,s,t[i]):s),(()=>Kt(e,s))):A(De(s))?Kt(e,s):s,pt=(e,t,s)=>(J(ve(B,t),(([n,a])=>{we(n,((t,s)=>{le(e,s)||(e[s]=t)})),we(a,(n=>{le(e,n)||Gt(t,s,n)}))})),e),yt=e=>(t&&(we(K,((t,s)=>{le(e,s)||(e[s]=t)})),we(U,(t=>{le(e,t)||Kt(t)}))),e),bt=e=>ye(W,e,((e,t,s)=>{const n=Te(),a=Fe();ye(pe(W,t,Te),s,((e,t,s)=>{Se(e,t,s),J(s[i],(e=>Se(n,t,e)),(()=>Qe(a,t)))})),Se(B,t,[n,a])}),((e,t)=>{Se(W,t),Se(B,t)})),mt=e=>ye(G,e,((e,t,s)=>{Se(G,t,s),J(s[i],(e=>Se(K,t,e)),(()=>Qe(U,t)))}),((e,t)=>{Se(G,t),Se(K,t),Ce(U,t)})),Vt=e=>de(e)?Es():ys(e),Mt=e=>ye(ee,e,((e,t,s)=>Et(t,s)),((e,t)=>Pt(t))),Et=(e,t)=>ye(pe(ee,e,(()=>(Wt(e,1),Se(Y,e,Oe()),Se(Z,e,Te()),Te()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>zt(e,t,s))),kt=(e,t,s,n,a)=>ye(pe(t,s,(()=>(jt(e,s,1),Te()))),n,((t,n,a)=>xt(e,s,t,n,a)),((n,o)=>Nt(e,t,s,n,o,a))),xt=(e,t,s,n,a)=>{he(s,n)||Bt(e,t,n,1);const o=ve(s,n);a!==o&&(_t(e,t,n,o,a),Se(s,n,a))},Dt=(e,t,s,n,a)=>J(ve(t,s),(t=>xt(e,s,t,n,a)),(()=>kt(e,t,s,pt({[n]:a},e,s)))),At=e=>de(e)?Ds():bs(e),Jt=e=>ye(te,e,((e,t,s)=>Ft(t,s)),((e,t)=>Ot(t))),Ft=(e,t)=>{he(te,e)||$t(e,1);const s=ve(te,e);t!==s&&(qt(e,s,t),Se(te,e,t))},Qt=(e,t)=>{const[s]=ve(Y,e),n=s(t);return he(ve(ee,e),n)?Qt(e,t):n},Ht=e=>ve(ee,e)??Et(e,{}),Pt=e=>Et(e,{}),zt=(e,t,s)=>{const[,n]=ve(Y,e);n(s),kt(e,t,s,{},!0)},Nt=(e,t,s,n,a,o)=>{const r=ve(ve(B,e)?.[0],a);if(!A(r)&&!o)return xt(e,s,n,a,r);const l=t=>{_t(e,s,t,ve(n,t)),Bt(e,s,t,-1),Se(n,t)};A(r)?l(a):Re(n,l),ge(n)&&(jt(e,s,-1),ge(Se(t,s))&&(Wt(e,-1),Se(ee,e),Se(Y,e),Se(Z,e)))},Ot=e=>{const t=ve(K,e);if(!A(t))return Ft(e,t);qt(e,ve(te,e)),$t(e,-1),Se(te,e)},Wt=(e,t)=>ht(v,e,t),jt=(e,t,s)=>ht(pe(E,e,Te),t,s)&&Se(M,e,pe(M,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=ve(Z,e),o=ve(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&ht(pe(V,e,Te),s,n),Se(a,s,o!=-n?o+n:null),ht(pe(pe(k,e,Te),t,Te),s,n)},_t=(e,t,s,n,a)=>pe(pe(pe(x,e,Te),t,Te),s,(()=>[n,0]))[1]=a,$t=(e,t)=>ht(D,e,t),qt=(e,t,s)=>pe(H,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(X(pe(pe(pe(z,e,Te),t,Te),s,(()=>[])),n),a),Kt=(e,t,s)=>(X(pe(N,e,(()=>[])),t),s),Ut=(e,t,s)=>J(ve(ve(ve(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ot(gs(e,t,s))])),Xt=e=>J(ve(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ot(ws(e))])),Yt=e=>ge(z)||ge(Ke[e])?0:we(e?ke(z):z,((t,s)=>we(t,((t,n)=>we(t,((t,a)=>ft(Ke[e],[s,n,a],t))))))),Zt=e=>ge(N)||ge(Ue[e])?0:we(e?Me(N):N,((t,s)=>ft(Ue[e],[s],t))),es=(e,t,s,n)=>{if(!ge(e))return ft(t,n,(()=>be(e))),Re(e,((e,t)=>ft(s,[...n??[],e],1==t))),1},ts=e=>{const t=Cs();t!=r&&ft(se[e],void 0,t);const s=ge(Ne[e]),n=ge($e[e])&&ge(qe[e])&&ge(ze[e])&&ge(je[e])&&ge(xe[e])&&ge(He[e])&&ge(Pe[e])&&s&&ge(ae[e])&&ge(re[e]),a=ge(Ge[e])&&ge(_e[e])&&ge(fe[e])&&ge(ne[e]);if(!n||!a){const t=e?[Me(v),Ee(V),Me(M),Ee(E),ke(k),ke(x)]:[v,V,M,E,k,x];if(!n){es(t[0],ae[e],re[e]),we(t[1],((t,s)=>es(t,xe[e],He[e],[s]))),we(t[2],((t,s)=>{0!=t&&ft(Pe[e],[s],cs(s))}));const n=Fe();we(t[3],((t,a)=>{es(t,ze[e],je[e],[a])&&!s&&(ft(Ne[e],[a,null]),Qe(n,a))})),s||we(t[5],((t,s)=>{if(!he(n,s)){const n=Fe();we(t,(e=>we(e,(([t,s],a)=>s!==t?Qe(n,a):Ce(e,a))))),we(n,(t=>ft(Ne[e],[s,t])))}})),we(t[4],((t,s)=>we(t,((t,n)=>es(t,$e[e],qe[e],[s,n])))))}if(!a){let s;we(t[5],((t,n)=>{let a;we(t,((t,o)=>{let r;we(t,(([t,l],i)=>{l!==t&&(ft(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&ft(_e[e],[n,o],Ut)})),a&&ft(fe[e],[n],Ut)})),s&&ft(ne[e],void 0,Ut)}}},ss=e=>{const t=Ss();t!=d&&ft(Xe[e],void 0,t);const s=ge(Ze[e])&&ge(et[e]),n=ge(tt[e])&&ge(Ye[e]);if(!s||!n){const t=e?[Me(D),Me(H)]:[D,H];if(s||es(t[0],Ze[e],et[e]),!n){let s;we(t[1],(([t,n],a)=>{n!==t&&(ft(tt[e],[a],n,t,Xt),s=1)})),s&&ft(Ye[e],void 0,Xt)}}},ns=(e,...t)=>(Fs((()=>e(...q(t,m)))),Ps),as=()=>[be(x,((e,t)=>-1===ve(v,t)?null:be(e,((e,s)=>-1===ve(ve(E,t),s)?null:be(e,(([,e])=>e??null),((e,t)=>it(t)))),de)),de),be(H,(([,e])=>e??null),((e,t)=>it(t)))],os=()=>({cellsTouched:n,valuesTouched:a,changedCells:Ve(x,lt,it),invalidCells:Ve(z),changedValues:be(H,lt,it),invalidValues:be(N),changedTableIds:be(v),changedRowIds:me(E),changedCellIds:Ve(k),changedValueIds:be(D)}),rs=()=>Ve(ee),ls=()=>Ie(ee),is=e=>Ie(ve(Z,m(e))),cs=e=>ue(ve(ee,m(e))),ds=e=>Ie(ve(ee,m(e))),us=(e,t,s,n=0,a)=>{return q(P(_((o=ve(ee,m(e)),r=(e,s)=>[A(t)?s:ve(e,m(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Be(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},hs=(e,t)=>Ie(ve(ve(ee,m(e)),m(t))),gs=(e,t,s)=>ve(ve(ve(ee,m(e)),m(t)),m(s)),fs=()=>be(te),Ls=()=>Ie(te),ws=e=>ve(te,m(e)),Cs=()=>!ge(ee),Ts=e=>he(ee,m(e)),Is=(e,t)=>he(ve(Z,m(e)),m(t)),vs=(e,t)=>he(ve(ee,m(e)),m(t)),Rs=(e,t,s)=>he(ve(ve(ee,m(e)),m(t)),m(s)),Ss=()=>!ge(te),ps=e=>he(te,m(e)),ys=e=>ns((()=>(e=>ut(e,Tt,Gt))(e)?Mt(e):0)),bs=e=>ns((()=>Rt(e)?Jt(e):0)),ms=e=>{try{Vt(dt(e))}catch{}return Ps},Vs=t=>ns((()=>{if((e=ut(t,(e=>ut(e,Ct))))&&(bt(t),!ge(ee))){const e=rs();Es(),ys(e)}})),Ms=e=>ns((()=>{if(t=(e=>ut(e,Ct))(e)){const s=fs();Js(),Ds(),t=!0,mt(e),bs(s)}})),Es=()=>ns((()=>Mt({}))),ks=e=>ns((e=>he(ee,e)?Pt(e):0),e),xs=(e,t)=>ns(((e,t)=>J(ve(ee,e),(s=>he(s,t)?zt(e,s,t):0))),e,t),Ds=()=>ns((()=>Jt({}))),As=()=>ns((()=>{bt({}),e=!1})),Js=()=>ns((()=>{mt({}),t=!1})),Fs=(e,t)=>{if(-1!=g){Qs();const s=e();return Hs(t),s}},Qs=()=>(-1!=g&&g++,1==g&&ft(st,void 0,as,os),Ps),Hs=e=>(g>0&&(g--,0==g&&(n=!ge(x),a=!ge(H),g=1,Yt(1),n&&ts(1),Zt(1),a&&ss(1),e?.(as,os)&&(we(x,((e,t)=>we(e,((e,s)=>we(e,(([e],n)=>Ae(Ps,t,s,n,e))))))),we(H,(([e],t)=>Je(Ps,t,e))),n=a=!1),ft(nt[0],void 0,as,os),g=-1,Yt(0),n&&ts(0),Zt(0),a&&ss(0),ft(nt[1],void 0,as,os),s?.(Ps,as,os),g=0,n=a=!1,r=Cs(),d=Ss(),$([v,V,M,E,k,x,z,D,H,N],Le))),Ps),Ps={getContent:()=>[rs(),fs()],getTables:rs,getTableIds:ls,getTable:e=>me(ve(ee,m(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>be(ve(ve(ee,m(e)),m(t))),getCellIds:hs,getCell:gs,getValues:fs,getValueIds:Ls,getValue:ws,hasTables:Cs,hasTable:Ts,hasTableCell:Is,hasRow:vs,hasCell:Rs,hasValues:Ss,hasValue:ps,getTablesJson:()=>ct(ee),getValuesJson:()=>ct(te),getJson:()=>ct([ee,te]),getTablesSchemaJson:()=>ct(W),getValuesSchemaJson:()=>ct(G),getSchemaJson:()=>ct([W,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ns((()=>{(de(e)?Es:ys)(e),(de(t)?Ds:bs)(t)})),setTables:ys,setTable:(e,t)=>ns((e=>Tt(t,e)?Et(e,t):0),e),setRow:(e,t,s)=>ns(((e,t)=>It(e,t,s)?kt(e,Ht(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let n;return It(e,n,t)&&(e=m(e),kt(e,Ht(e),n=Qt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ns(((e,t)=>{if(It(e,t,s,1)){const n=Ht(e);ce(s,((s,a)=>Dt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ns(((e,t,s)=>J(vt(e,t,s,Q(n)?n(gs(e,t,s)):n),(n=>Dt(e,Ht(e),t,s,n)))),e,t,s),setValues:bs,setPartialValues:e=>ns((()=>Rt(e,1)?ce(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>ns((e=>J(St(e,Q(t)?t(ws(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>ns((()=>{ce(e[0],((e,t)=>A(e)?ks(t):ce(e,((e,s)=>A(e)?xs(t,s):ce(e,((e,n)=>Ae(Ps,t,s,n,e))))))),ce(e[1],((e,t)=>Je(Ps,t,e)))})),setTablesJson:ms,setValuesJson:e=>{try{At(dt(e))}catch{}return Ps},setJson:e=>ns((()=>{try{const[t,s]=dt(e);Vt(t),At(s)}catch{ms(e)}})),setTablesSchema:Vs,setValuesSchema:Ms,setSchema:(e,t)=>ns((()=>{Vs(e),Ms(t)})),delTables:Es,delTable:ks,delRow:xs,delCell:(e,t,s,n)=>ns(((e,t,s)=>J(ve(ee,e),(a=>J(ve(a,t),(o=>he(o,s)?Nt(e,a,t,o,s,n):0))))),e,t,s),delValues:Ds,delValue:e=>ns((e=>he(te,e)?Ot(e):0),e),delTablesSchema:As,delValuesSchema:Js,delSchema:()=>ns((()=>{As(),Js()})),transaction:Fs,startTransaction:Qs,finishTransaction:Hs,forEachTable:e=>we(ee,((t,s)=>e(s,(e=>we(t,((t,s)=>e(s,(e=>Re(t,e))))))))),forEachTableCell:(e,t)=>Re(ve(Z,m(e)),t),forEachRow:(e,t)=>we(ve(ee,m(e)),((e,s)=>t(s,(t=>Re(e,t))))),forEachCell:(e,t,s)=>Re(ve(ve(ee,m(e)),m(t)),s),forEachValue:e=>Re(te,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=us(e,t,s,n,a);return at((()=>{const r=us(e,t,s,n,a);j(r,l)||(l=r,o(Ps,e,t,s,n,a,l))}),Ne[r?1:0],[e,t],[ls])},addStartTransactionListener:e=>at(e,st),addWillFinishTransactionListener:e=>at(e,nt[0]),addDidFinishTransactionListener:e=>at(e,nt[1]),callListener:e=>(wt(e),Ps),delListener:e=>(Lt(e),Ps),getListenerStats:()=>({}),createStore:gt,addListener:at,callListeners:ft,addPostTransactionListener:e=>{s=e}};return ce({[h+L]:[0,se,[],()=>[Cs()]],[L]:[0,ne],[w]:[0,ae],[h+f]:[1,re,[ls],e=>[Ts(...e)]],[f]:[1,fe,[ls]],[f+S]:[1,xe,[ls]],[h+f+R]:[2,He,[ls,is],e=>[Is(...e)]],[T]:[1,Pe,[ls]],[I]:[1,ze,[ls]],[h+C]:[2,je,[ls,ds],e=>[vs(...e)]],[C]:[2,_e,[ls,ds]],[S]:[2,$e,[ls,ds]],[h+R]:[3,qe,[ls,ds,hs],e=>[Rs(...e)]],[R]:[3,Ge,[ls,ds,hs],e=>ot(gs(...e))],InvalidCell:[3,Ke],[h+y]:[0,Xe,[],()=>[Ss()]],[y]:[0,Ye],[b]:[0,Ze],[h+p]:[1,et,[Ls],e=>[ps(...e)]],[p]:[1,tt,[Ls],e=>ot(ws(e[0]))],InvalidValue:[1,Ue]},(([e,t,s,n],a)=>{Ps[u+a+c]=(...a)=>at(a[e],t[a[e+1]?1:0],e>0?P(a,0,e):void 0,s,n)})),oe(Ps)},ft=2**36,Lt=2**30,wt=2**24,Ct=2**18,Tt=4096,It=64,vt=e=>String.fromCharCode(48+(63&e)),Rt=(e,t)=>E(e,t)-48,St={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};e.createCheckpoints=je,e.createCustomPersister=(e,t,s,n,a,o,[r,l]=[],i=[])=>{let c,d,u,h=0,g=0;pe(Ke,i,(()=>0)),pe(Ue,i,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();de(s)&&de(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(J(c,e.delListener),c=void 0,L),schedule:async(...e)=>(X(ve(Ue,i),...e),await(async()=>{if(!ve(Ke,i)){for(Se(Ke,i,1);!A(d=Z(ve(Ue,i)));)try{await d()}catch(e){o?.(e)}Se(Ke,i,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>l),oe(L)},e.createIndexes=_e,e.createMergeableStore=e=>{let t=1;const[n,a]=(e=>{let t=0,s=0;const n=U(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^E(t)),5381)>>>0,a=e=>{const n=t,[a,o]=A(e)?[0,0]:[Rt(r=e,0)*ft+Rt(r,1)*Lt+Rt(r,2)*wt+Rt(r,3)*Ct+Rt(r,4)*Tt+Rt(r,5)*It+Rt(r,6),Rt(r,7)*Ct+Rt(r,8)*Tt+Rt(r,9)*It+Rt(r,10),Rt(r,11)*wt+Rt(r,12)*Ct+Rt(r,13)*Tt+Rt(r,14)*It+Rt(r,15)];var r;t=Math.max(n,a,Date.now()),s=t==n?t==a?Math.max(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,vt((e=t)/ft)+vt(e/Lt)+vt(e/wt)+vt(e/Ct)+vt(e/Tt)+vt(e/It)+vt(e)+vt(o/Ct)+vt(o/Tt)+vt(o/It)+vt(o)+vt(r/wt)+vt(r/Ct)+vt(r/Tt)+vt(r/It)+vt(r);var e,o,r},a]})(e),o=gt(),r=[s,[et(),et()]],l=e=>{const s=[{},{}];return a(e[0]),nt(e,r,(([e,t],[n,a])=>[nt(e,n,((e,t)=>at(e,t,s[0],((e,t,n)=>at(e,t,s[0][n],((e,t,a)=>at(e,t,s[0][n][a]))))))),nt(t,a,((e,t)=>at(e,t,s[1])))])),t=0,o.setTransactionChanges(s),t=1,i},i={getMergeableContent:()=>st(r,(([e,t],s)=>[s,[tt(e,(e=>tt(e,(e=>tt(e,lt))))),tt(t,lt)]])),applyMergeableContent:l,merge:e=>{const t=i.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableContent(t),l(s)}};return o.addPostTransactionListener(((e,s)=>{if(t){const e=n(),[t,a]=s(),[o,l]=r[1];r[0]=e,de(t)||(o[0]=e,ce(t,((t,s)=>{const n=pe(o[1],s,Ze);if(n[0]=e,A(t))n[1]=null;else{const s=n[1]??=Te();ce(t,((t,n)=>{const a=pe(s,n,Ze);if(a[0]=e,A(t))a[1]=null;else{const s=a[1]??=Te();ce(t,((t,n)=>Se(s,n,[e,t])))}}))}}))),de(a)||(l[0]=e,ce(a,((t,s)=>{Se(l[1],s,[e,t])})))}})),ce(o,((e,t)=>i[t]=V(t,"set")||V(t,"del")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),i):V(t,"add")&&M(t,"Listener")?(...s)=>{const n=St[P(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(i,...t),e(...s)}:e)),oe(i)},e.createMetrics=Ge,e.createQueries=Xe,e.createRelationships=Ye,e.createStore=gt,e.defaultSorter=Be},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",L=f+"s",C=f+h,w="Row",p=w+"Count",y=w+h,T="Sorted"+w+h,b="Cell",v=b+h,I="Value",S=I+"s",R=I+h,m=e=>s+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),E=(e,t=0)=>e.charCodeAt(t),k=Math.max,x=Math.min,D=isFinite,A=e=>null==e,J=(e,t,s)=>A(e)?s?.():t(e),F=e=>e==n||e==a,Q=e=>t(e)==n,H=e=>t(e)==r,z=e=>Array.isArray(e),N=(e,t,s)=>e.slice(t,s),O=e=>e.length,P=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>O(e)===O(t)&&j(e,((e,s)=>t[s]===e)),_=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),$=(e,t)=>e.sort(t),q=(e,t)=>e.forEach(t),G=(e,t)=>e.map(t),K=e=>X(e,((e,t)=>e+t),0),U=e=>0==O(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.keys,oe=te.isFrozen,re=te.freeze,le=e=>!A(e)&&J(se(e),(e=>e==te.prototype||A(se(e))),(()=>!0)),ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>G(ne(e),(([e,s])=>t(s,e))),he=e=>le(e)&&0==(e=>O(ae(e)))(e),fe=e=>e?.size??0,Le=(e,t)=>e?.has(t)??!1,Ce=e=>A(e)||0==fe(e),we=e=>[...e?.values()??[]],pe=e=>e.clear(),ye=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),be=e=>new Map(e),ve=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Se=(e,t)=>ye(e,((e,s)=>t(s,e))),Re=(e,t,s)=>A(s)?(Te(e,t),e):e?.set(t,s),me=(e,t,s)=>(Le(e,t)||Re(e,t,s()),Ie(e,t)),Me=(e,t,s,n=Re)=>(ge(t,((t,n)=>s(e,n,t))),Se(e,(s=>ce(t,s)?0:n(e,s))),e),Ve=(e,t,s)=>{const n={};return ye(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Ee=(e,t,s)=>Ve(e,(e=>Ve(e,t,s)),he),ke=(e,t,s)=>Ve(e,(e=>Ee(e,t,s)),he),xe=(e,t)=>{const s=be();return ye(e,((e,n)=>s.set(n,t?.(e)??e))),s},De=e=>xe(e,xe),Ae=e=>xe(e,De),Je=(e,t,s,n,a=0)=>J((s?me:Ie)(e,t[a],a>O(t)-2?s:be),(o=>{if(a>O(t)-2)return n?.(o)&&Re(e,t[a]),o;const r=Je(o,t,s,n,a+1);return Ce(o)&&Re(e,t[a]),r})),Fe=e=>{const s=t(e);return F(s)||s==o&&D(e)?s:void 0},Qe=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),He=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),ze=e=>new Set(z(e)||A(e)?e:[e]),Ne=(e,t)=>e?.add(t),Oe=(e,t,s,n,a)=>{const o=e.hasRow,r=be(),l=be(),i=be(),c=be(),d=be(),u=be(),g=(t,s,...n)=>{const a=me(u,t,ze);return q(n,(t=>Ne(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>J(Ie(u,t),(n=>{q(U(s)?we(n):s,(t=>{e.delListener(t),Te(n,t)})),Ce(n)&&Re(u,t)})),f=(e,s)=>{Re(r,e,s),Le(l,e)||(Re(l,e,t()),Re(c,e,be()),Re(d,e,be()),a(i))},L=e=>{Re(r,e),Re(l,e),Re(c,e),Re(d,e),h(e),a(i)};return[()=>e,()=>ve(r),e=>Se(l,e),e=>Le(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>Re(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=be(),u=be(),L=Ie(c,t),C=Ie(d,t),w=t=>{const a=s=>e.getCell(n,t,s),c=Ie(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&B(c,d)||Re(i,t,[c,d]),!A(l)){const e=Ie(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&Re(u,t,s)}},p=e=>{a((()=>{ye(i,(([,e],t)=>Re(L,t,e))),ye(u,((e,t)=>Re(C,t,e)))}),i,u,L,C,e),pe(i),pe(u)};Se(L,w),e.hasTable(n)&&q(e.getRowIds(n),(e=>{Le(L,e)||w(e)})),p(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>p())))},L,e=>n(e,i),()=>Se(u,L),g,h]},Pe=(e,t)=>Q(e)?t=>t(e):e??(()=>t??s),We=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},je=/^\d+$/,Be=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{je.test(t)&&O(e)<1e3&&Y(e,t)}]},_e=e=>{let t;const[n,a]=Be(),o=be();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return Re(o,d,[a,r,l,i,c]),Ne(Je(r,l??[s],ze),d),d},(e,n,...a)=>q(((e,t=[s])=>{const n=[],a=(e,s)=>s==O(t)?Y(n,e):null===t[s]?ye(e,(e=>a(e,s+1))):q([t[s],null],(t=>a(Ie(e,t),s+1)));return a(e,0),n})(e,n),(e=>ye(e,(e=>Ie(o,e)[0](t,...n??[],...a))))),e=>J(Ie(o,e),(([,t,n])=>(Je(t,n??[s],void 0,(t=>(Te(t,e),Ce(t)?1:0))),Re(o,e),a(e),n))),e=>J(Ie(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=O(r);l==O(s)?e(t,...r,...a(r)):A(s[l])?q(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},$e=We((e=>{let t,n,a,o=100,r=be(),l=be(),i=1;const c=be(),d=be(),[u,g,h]=_e((()=>F)),f=be(),L=be(),C=[],w=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Ie(f,s);ye(n,((s,n)=>ye(s,((s,a)=>ye(s,((s,o)=>Qe(e,n,a,o,s[t]))))))),ye(a,((s,n)=>He(e,n,s[t])))})),i=1},y=e=>{Re(f,e),Re(L,e),g(d,[e])},T=(e,t)=>q(((e,t)=>e.splice(0,t))(e,t??O(e)),y),b=()=>T(C,O(C)-o),v=()=>J(t,(()=>{Y(C,t),b(),T(w),t=void 0,a=1})),I=()=>{t=Z(C),a=1};let S,R;const m=(e="")=>(A(t)&&(t=s+n++,Re(f,t,[r,l]),x(t,e),r=be(),l=be(),a=1),t),M=()=>{U(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),p(0,t),t=Z(C),a=1)},V=()=>{U(w)||(Y(C,t),t=ee(w),p(1,t),a=1)},E=()=>{a&&(g(c),a=0)},k=e=>{const t=m(e);return E(),t},x=(e,t)=>(D(e)&&Ie(L,e)!==t&&(Re(L,e,t),g(d,[e])),F),D=e=>Le(f,e),F={setSize:e=>(o=e,b(),F),addCheckpoint:k,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...C],t,[...w]],forEachCheckpoint:e=>Se(L,e),hasCheckpoint:D,getCheckpoint:e=>Ie(L,e),goBackward:()=>(M(),E(),F),goForward:()=>(V(),E(),F),goTo:e=>{const s=W(C,e)?M:W(w,e)?V:null;for(;!A(s)&&e!=t;)s();return E(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),F),clear:()=>(T(C),T(w),A(t)||y(t),t=void 0,n=0,k(),F),clearForward:()=>(U(w)||(T(w),g(c)),F),destroy:()=>{e.delListener(S),e.delListener(R)},getListenerStats:()=>({}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){v();const e=me(r,t,be),l=me(e,s,be),i=me(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ce(Re(l,n))&&Ce(Re(e,s))&&Ce(Re(r,t))&&I(),E()}})),R=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=me(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Ce(Re(l,t))&&I(),E()}}))}};return re(F.clear())}),(e=>e._registerListeners())),qe=(e,t)=>(e??0)<(t??0)?-1:1,Ge=We((e=>{const t=be(),n=be(),[a,o,r]=_e((()=>y)),[l,i,c,d,u,g,h,,f,L,C,w]=Oe(e,be,(e=>A(e)?s:z(e)?G(e,m):m(e)),a,o),p=(t,s,n)=>{const a=u(t);ye(n,((t,n)=>s(n,(s=>ye(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},y={setIndexDefinition:(e,s,a,r,l,i=qe)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let L=0;const C=ze(),w=ze(),p=g(e);if(ye(a,(([e,t],s)=>{const n=ze(e),a=ze(t);ye(n,(e=>Te(a,e)?Te(n,e):0)),ye(n,(e=>{Ne(C,e),J(Ie(p,e),(t=>{Te(t,s),Ce(t)&&(Re(p,e),L=1)}))})),ye(a,(e=>{Ne(C,e),Le(p,e)||(Re(p,e,ze()),L=1),Ne(Ie(p,e),s),A(r)||Ne(w,e)}))})),s(),Ce(u)||(f?Se(p,(e=>Ne(w,e))):Se(l,(e=>J(Ie(d,e),(e=>Ne(w,e))))),ye(w,(e=>{const t=(t,s)=>i(Ie(u,t),Ie(u,s),e),s=[...Ie(p,e)];_(s,t)||(Re(p,e,ze($(s,t))),Ne(C,e))}))),(L||f)&&!A(c)){const t=[...p];_(t,c)||(h(e,be($(t,c))),L=1)}L&&o(t,[e]),ye(C,(t=>o(n,[e,t])))}),Pe(a),J(r,Pe)),y},delIndexDefinition:e=>(L(e),y),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Le(g(e),t),getTableId:u,getSliceIds:e=>ve(g(e)),getSliceRowIds:(e,t)=>we(Ie(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),y),destroy:w,getListenerStats:()=>({})};return re(y)})),Ke=be([["avg",[(e,t)=>K(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>K(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ue=(e,t,s,n,a,o=!1)=>{if(Ce(s))return;const[r,l,i,c]=a;return o||=A(e),ye(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(we(s),fe(s)):e},Xe=We((e=>{const t=be(),[n,a,o]=_e((()=>w)),[r,l,i,c,d,u,g,,h,f,L,C]=Oe(e,P,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),w={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=H(n)?[n,r,l,i]:Ie(Ke,n)??Ie(Ke,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=fe(r);i||=A(d),s();let f=Ue(d,h,r,n,c,i);D(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),Pe(o,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),w),destroy:C,getListenerStats:()=>({})};return re(w)})),Ye=be(),Ze=be(),et=e=>Q(e?.[0]),tt=We((e=>{const t=e.createStore,n=t(),a=t(),o=be(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,L,C,I,,,S,,R,m,M,V,E]=Oe(e,(()=>!0),P,r,l),k=(e,t,...s)=>q(s,(s=>Ne(me(me(o,t,be),e,ze),s))),x=e=>{J(Ie(o,e),(e=>{Se(e,((e,t)=>ye(t,(t=>e.delListener(t))))),pe(e)})),q([a,n],(t=>t.delTable(e)))},D=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(t,o,r)=>{S(t,o),x(t);const l=[],i=[[null,[o,null,null,[],be()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=H(e)?[O(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||H(t)?null:t,a=A(n)?t:s,o=[e,[e,n,H(a)?a:e=>e(a),[],be()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,H(e)?e:A(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,H(t)?[t,s,n,a]:Ie(Ke,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,H(e)?e:s=>s(e)===t)});const g=be(l);if(Ce(g))return F;const h=be(i);Se(h,((e,[,t])=>J(Ie(h,t),(({3:t})=>A(e)?0:Y(t,e)))));const f=be(d);let L=n;if(Ce(f)&&U(u))L=a;else{D(t,L,a);const e=be();Se(f,((t,[s,n])=>Ne(me(e,s,ze),[t,n])));const s=ze();Se(g,(t=>Le(e,t)?0:Ne(s,t)));const n=be(),o=(s,n,o,r)=>J(s,(([l,i,c,d])=>{Se(n,((t,[s])=>{const n=me(l,t,be),a=Ie(n,o),i=r?void 0:s;if(a!==i){const s=ze([[a,i]]),r=fe(n);Re(n,o,i),ye(Ie(e,t),(([e,t])=>{const a=Ue(d[e],r,n,s,t);d[e]=A(Fe(a))?null:a}))}})),Ce(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));k(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=be(),g=L.hasRow(t,l);let h=!g;ye(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Se(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&Re(u,e,[n])})),h&&o(Je(n,c,void 0,(([,e])=>(Te(e,l),Ce(e)))),u,l,1),g&&o(Je(n,d,(()=>{const e={};return ye(s,(s=>e[s]=L.getCell(t,l,s))),[be(),ze(),void 0,e]}),(([,e])=>{Ne(e,l)})),u,l)})))}D(t,e,L);const C=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);q(r,(n=>{const[a,,o,r,i]=Ie(h,n),c=o?.(l,s),[d,u]=Ie(i,s)??[];c!=d&&(A(u)||E(t,u),Re(i,s,A(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>C(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[Ie(h,t)?.[0],Ie(Ie(h,t)?.[4],s)?.[0],n]);L.transaction((()=>j(c,(e=>e(n)))?Se(g,((e,a)=>Qe(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:w}=Ie(h,null);return L.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?C(a,o,a,w):(L.delRow(t,a),ye(h,(({4:e})=>J(Ie(e,a),(([,s])=>{E(t,s),Re(e,a)})))))}))))),F},delQueryDefinition:e=>(x(e),R(e),F),getStore:g,getQueryIds:h,forEachQuery:L,hasQuery:C,getTableId:I,addQueryIdsListener:e=>m((()=>e(F))),delListener:e=>(i(e),F),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+v]:[0,1],[p]:[0,1],[y]:[0,1],[T]:[0,5],[w]:[1,2],[v]:[0,2],[b]:[1,3]},(([e,t],s)=>{q(e?["get","has","forEach"]:["get"],(e=>F[e+d+s]=(...t)=>a[e+s](...t))),F[u+d+s+c]=(...e)=>a[u+s+c](...N(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),re(F)})),st=We((e=>{const t=be(),n=be(),a=be(),o=be(),[r,l,i]=_e((()=>v)),[c,d,u,g,h,f,,,L,C,w,p]=Oe(e,(()=>[be(),be(),be(),be()]),(e=>A(e)?void 0:e+s),r,l),y=(e,t,s)=>J(f(e),(([n,,a])=>{if(!Le(a,t)){const o=ze();if(h(e)!=b(e))Ne(o,t);else{let e=t;for(;!A(e)&&!Le(o,e);)Ne(o,e),e=Ie(n,e)}if(s)return o;Re(a,t,o)}return Ie(a,t)})),T=(e,t)=>J(f(e),(([,,e])=>Re(e,t))),b=e=>Ie(t,e),v={setRelationshipDefinition:(e,s,r,i)=>(Re(t,e,r),L(e,s,((t,s)=>{const r=ze(),i=ze(),c=ze(),[d,u]=f(e);ye(s,(([t,s],n)=>{A(t)||(Ne(i,t),J(Ie(u,t),(e=>{Te(e,n),Ce(e)&&Re(u,t)}))),A(s)||(Ne(i,s),Le(u,s)||Re(u,s,ze()),Ne(Ie(u,s),n)),Ne(r,n),Re(d,n,s),Se(Ie(o,e),(t=>{Le(y(e,t),n)&&Ne(c,t)}))})),t(),ye(r,(t=>l(n,[e,t]))),ye(i,(t=>l(a,[e,t]))),ye(c,(t=>{T(e,t),l(o,[e,t])}))}),Pe(i)),v),delRelationshipDefinition:e=>(Re(t,e),C(e),v),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:b,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:we(y(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(y(e,t),r(s,o,[e,t])),delListener:e=>(T(...i(e)??[]),v),destroy:p,getListenerStats:()=>({})};return re(v)})),nt=(e="",t)=>[e,t],at=(e="")=>nt(e,be()),ot=e=>nt(e,ie()),rt=([e,t],s)=>[e,s(t,e)],lt=([e,t])=>[e,t],it=(e,t)=>rt(e,(e=>Ve(e,t))),ct=(e,t,s,n)=>ue(e,((e,a)=>dt(e,me(t,a,at),s[a]=ie(),n))),dt=([e,t],s,n,a)=>{e>s[0]&&(s[0]=e),a(t,s[1],n)},ut=(e,t,s)=>ue(e,(([e,n],a)=>{const o=me(t,a,nt);e>o[0]&&(o[0]=e,o[1]=s[a]=n)})),gt=e=>[e,e],ht=()=>[be(),be()],ft=e=>[...e],Lt=([e,t])=>e===t,Ct=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),wt=JSON.parse,pt=(e,t,s)=>A(e)||!le(e)||he(e)||oe(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!he(e)),yt=(e,t,s)=>Re(e,t,Ie(e,t)==-s?void 0:s),Tt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=be(),h=be(),T=be(),M=be(),V=be(),E=be(),k=be(),x=be(),D=be(),Q=be(),z=be(),O=be(),P=be(),j=be(),_=ze(),K=be(),U=be(),X=be(),Z=be(),ee=ht(),te=ht(),se=ht(),ne=ht(),ae=ht(),oe=ht(),le=ht(),ie=ht(),ue=ht(),we=ht(),Je=ht(),Oe=ht(),Pe=ht(),We=ht(),je=ht(),$e=ht(),Ge=ht(),Ke=ht(),Ue=ht(),Xe=ht(),Ye=ht(),Ze=ht(),et=be(),tt=ht(),[st,nt,at,ot]=_e((()=>Js)),rt=e=>{if(!pt(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!F(t)&&t!=o||(Fe(e[i])!=t&&de(e,i),0))},lt=(t,s)=>(!e||Le(z,s)||$t(s))&&pt(t,((e,t)=>it(s,t,e)),(()=>$t(s))),it=(e,t,s,n)=>pt(n?s:bt(s,e,t),((n,a)=>J(ct(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),ct=(t,s,n,a)=>e?J(Ie(Ie(z,t),n),(e=>Fe(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):A(Fe(a))?$t(t,s,n,a):a,dt=(e,t)=>pt(t?e:vt(e),((t,s)=>J(ut(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),ut=(e,s)=>t?J(Ie(P,e),(t=>Fe(s)!=t[l]?qt(e,s,t[i]):s),(()=>qt(e,s))):A(Fe(s))?qt(e,s):s,bt=(e,t,s)=>(J(Ie(O,t),(([n,a])=>{ye(n,((t,s)=>{ce(e,s)||(e[s]=t)})),ye(a,(n=>{ce(e,n)||$t(t,s,n)}))})),e),vt=e=>(t&&(ye(j,((t,s)=>{ce(e,s)||(e[s]=t)})),ye(_,(t=>{ce(e,t)||qt(t)}))),e),It=e=>Me(z,e,((e,t,s)=>{const n=be(),a=ze();Me(me(z,t,be),s,((e,t,s)=>{Re(e,t,s),J(s[i],(e=>Re(n,t,e)),(()=>Ne(a,t)))})),Re(O,t,[n,a])}),((e,t)=>{Re(z,t),Re(O,t)})),St=e=>Me(P,e,((e,t,s)=>{Re(P,t,s),J(s[i],(e=>Re(j,t,e)),(()=>Ne(_,t)))}),((e,t)=>{Re(P,t),Re(j,t),Te(_,t)})),Rt=e=>he(e)?Rs():Ts(e),mt=e=>Me(X,e,((e,t,s)=>Mt(t,s)),((e,t)=>Qt(t))),Mt=(e,t)=>Me(me(X,e,(()=>(Ot(e,1),Re(K,e,Be()),Re(U,e,be()),be()))),t,((t,s,n)=>Vt(e,t,s,n)),((t,s)=>Ht(e,t,s))),Vt=(e,t,s,n,a)=>Me(me(t,s,(()=>(Pt(e,s,1),be()))),n,((t,n,a)=>Et(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),Et=(e,t,s,n,a)=>{Le(s,n)||Wt(e,t,n,1);const o=Ie(s,n);a!==o&&(jt(e,t,n,o,a),Re(s,n,a))},kt=(e,t,s,n,a)=>J(Ie(t,s),(t=>Et(e,s,t,n,a)),(()=>Vt(e,t,s,bt({[n]:a},e,s)))),xt=e=>he(e)?Vs():bs(e),Dt=e=>Me(Z,e,((e,t,s)=>At(t,s)),((e,t)=>Nt(t))),At=(e,t)=>{Le(Z,e)||Bt(e,1);const s=Ie(Z,e);t!==s&&(_t(e,s,t),Re(Z,e,t))},Jt=(e,t)=>{const[s]=Ie(K,e),n=s(t);return Le(Ie(X,e),n)?Jt(e,t):n},Ft=e=>Ie(X,e)??Mt(e,{}),Qt=e=>Mt(e,{}),Ht=(e,t,s)=>{const[,n]=Ie(K,e);n(s),Vt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Ie(Ie(O,e)?.[0],a);if(!A(r)&&!o)return Et(e,s,n,a,r);const l=t=>{jt(e,s,t,Ie(n,t)),Wt(e,s,t,-1),Re(n,t)};A(r)?l(a):Se(n,l),Ce(n)&&(Pt(e,s,-1),Ce(Re(t,s))&&(Ot(e,-1),Re(X,e),Re(K,e),Re(U,e)))},Nt=e=>{const t=Ie(j,e);if(!A(t))return At(e,t);_t(e,Ie(Z,e)),Bt(e,-1),Re(Z,e)},Ot=(e,t)=>yt(d,e,t),Pt=(e,t,s)=>yt(me(M,e,be),t,s)&&Re(T,e,me(T,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Ie(U,e),o=Ie(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&yt(me(h,e,be),s,n),Re(a,s,o!=-n?o+n:null),yt(me(me(V,e,be),t,be),s,n)},jt=(e,t,s,n,a)=>me(me(me(E,e,be),t,be),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>yt(k,e,t),_t=(e,t,s)=>me(x,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(Y(me(me(me(D,e,be),t,be),s,(()=>[])),n),a),qt=(e,t,s)=>(Y(me(Q,e,(()=>[])),t),s),Gt=(e,t,s)=>J(Ie(Ie(Ie(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...gt(cs(e,t,s))])),Kt=e=>J(Ie(x,e),(([e,t])=>[!0,e,t]),(()=>[!1,...gt(gs(e))])),Ut=e=>Ce(D)||Ce($e[e])?0:ye(e?Ae(D):D,((t,s)=>ye(t,((t,n)=>ye(t,((t,a)=>nt($e[e],[s,n,a],t))))))),Xt=e=>Ce(Q)||Ce(Ge[e])?0:ye(e?xe(Q):Q,((t,s)=>nt(Ge[e],[s],t))),Yt=(e,t,s,n)=>{if(!Ce(e))return nt(t,n,(()=>Ve(e))),Se(e,((e,t)=>nt(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&nt(ee[e],void 0,t);const n=Ce(we[e]),a=Ce(Pe[e])&&Ce(We[e])&&Ce(ue[e])&&Ce(Je[e])&&Ce(oe[e])&&Ce(le[e])&&Ce(ie[e])&&n&&Ce(se[e])&&Ce(ne[e]),o=Ce(je[e])&&Ce(Oe[e])&&Ce(ae[e])&&Ce(te[e]);if(!a||!o){const t=e?[xe(d),De(h),xe(T),De(M),Ae(V),Ae(E)]:[d,h,T,M,V,E];if(!a){Yt(t[0],se[e],ne[e]),ye(t[1],((t,s)=>Yt(t,oe[e],le[e],[s]))),ye(t[2],((t,s)=>{0!=t&&nt(ie[e],[s],os(s))}));const s=ze();ye(t[3],((t,a)=>{Yt(t,ue[e],Je[e],[a])&&!n&&(nt(we[e],[a,null]),Ne(s,a))})),n||ye(t[5],((t,n)=>{if(!Le(s,n)){const s=ze();ye(t,(e=>ye(e,(([t,n],a)=>n!==t?Ne(s,a):Te(e,a))))),ye(s,(t=>nt(we[e],[n,t])))}})),ye(t[4],((t,s)=>ye(t,((t,n)=>Yt(t,Pe[e],We[e],[s,n])))))}if(!o){let s;ye(t[5],((t,n)=>{let a;ye(t,((t,o)=>{let r;ye(t,(([t,l],i)=>{l!==t&&(nt(je[e],[n,o,i],l,t,Gt),s=a=r=1)})),r&&nt(Oe[e],[n,o],Gt)})),a&&nt(ae[e],[n],Gt)})),s&&nt(te[e],void 0,Gt)}}},es=e=>{const t=ps();t!=n&&nt(Ke[e],void 0,t);const s=Ce(Xe[e])&&Ce(Ye[e]),a=Ce(Ze[e])&&Ce(Ue[e]);if(!s||!a){const t=e?[xe(k),xe(x)]:[k,x];if(s||Yt(t[0],Xe[e],Ye[e]),!a){let s;ye(t[1],(([t,n],a)=>{n!==t&&(nt(Ze[e],[a],n,t,Kt),s=1)})),s&&nt(Ue[e],void 0,Kt)}}},ts=(e,...t)=>(xs((()=>e(...G(t,m)))),Js),ss=()=>ke(X),ns=()=>ve(X),as=e=>ve(Ie(U,m(e))),os=e=>fe(Ie(X,m(e))),rs=e=>ve(Ie(X,m(e))),ls=(e,t,s,n=0,a)=>{return G(N($((o=Ie(X,m(e)),r=(e,s)=>[A(t)?s:Ie(e,m(t)),s],G([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>qe(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>ve(Ie(Ie(X,m(e)),m(t))),cs=(e,t,s)=>Ie(Ie(Ie(X,m(e)),m(t)),m(s)),ds=()=>Ve(Z),us=()=>ve(Z),gs=e=>Ie(Z,m(e)),hs=()=>!Ce(X),fs=e=>Le(X,m(e)),Ls=(e,t)=>Le(Ie(U,m(e)),m(t)),Cs=(e,t)=>Le(Ie(X,m(e)),m(t)),ws=(e,t,s)=>Le(Ie(Ie(X,m(e)),m(t)),m(s)),ps=()=>!Ce(Z),ys=e=>Le(Z,m(e)),Ts=e=>ts((()=>(e=>pt(e,lt,$t))(e)?mt(e):0)),bs=e=>ts((()=>dt(e)?Dt(e):0)),vs=e=>{try{Rt(wt(e))}catch{}return Js},Is=t=>ts((()=>{if((e=pt(t,(e=>pt(e,rt))))&&(It(t),!Ce(X))){const e=ss();Rs(),Ts(e)}})),Ss=e=>ts((()=>{if(t=(e=>pt(e,rt))(e)){const s=ds();ks(),Vs(),t=!0,St(e),bs(s)}})),Rs=()=>ts((()=>mt({}))),ms=e=>ts((e=>Le(X,e)?Qt(e):0),e),Ms=(e,t)=>ts(((e,t)=>J(Ie(X,e),(s=>Le(s,t)?Ht(e,s,t):0))),e,t),Vs=()=>ts((()=>Dt({}))),Es=()=>ts((()=>{It({}),e=!1})),ks=()=>ts((()=>{St({}),t=!1})),xs=(e,t)=>{if(-1!=a){Ds();const s=e();return As(t),s}},Ds=()=>(-1!=a&&a++,1==a&&nt(et,void 0),Js),As=e=>(a>0&&(a--,0==a&&(a=1,Ut(1),Ce(E)||Zt(1),Xt(1),Ce(x)||es(1),e?.(Js)&&(ye(E,((e,t)=>ye(e,((e,s)=>ye(e,(([e],n)=>Qe(Js,t,s,n,e))))))),pe(E),ye(x,(([e],t)=>He(Js,t,e))),pe(x)),nt(tt[0],void 0),a=-1,Ut(0),Ce(E)||Zt(0),Xt(0),Ce(x)||es(0),r[0]?.(Js),nt(tt[1],void 0),r[1]?.(Js),a=0,s=hs(),n=ps(),q([d,h,T,M,V,E,D,k,x,Q],pe))),Js),Js={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>Ee(Ie(X,m(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>Ve(Ie(Ie(X,m(e)),m(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:Ls,hasRow:Cs,hasCell:ws,hasValues:ps,hasValue:ys,getTablesJson:()=>Ct(X),getValuesJson:()=>Ct(Z),getJson:()=>Ct([X,Z]),getTablesSchemaJson:()=>Ct(z),getValuesSchemaJson:()=>Ct(P),getSchemaJson:()=>Ct([z,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(he(e)?Rs:Ts)(e),(he(t)?Vs:bs)(t)})),setTables:Ts,setTable:(e,t)=>ts((e=>lt(t,e)?Mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>it(e,t,s)?Vt(e,Ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>xs((()=>{let n;return it(e,n,t)&&(e=m(e),Vt(e,Ft(e),n=Jt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(it(e,t,s,1)){const n=Ft(e);ge(s,((s,a)=>kt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>J(ct(e,t,s,H(n)?n(cs(e,t,s)):n),(n=>kt(e,Ft(e),t,s,n)))),e,t,s),setValues:bs,setPartialValues:e=>ts((()=>dt(e,1)?ge(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ts((e=>J(ut(e,H(t)?t(gs(e)):t),(t=>At(e,t)))),e),applyChanges:e=>ts((()=>{ge(e[0],((e,t)=>A(e)?ms(t):ge(e,((e,s)=>A(e)?Ms(t,s):ge(e,((e,n)=>Qe(Js,t,s,n,e))))))),ge(e[1],((e,t)=>He(Js,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{xt(wt(e))}catch{}return Js},setJson:e=>ts((()=>{try{const[t,s]=wt(e);Rt(t),xt(s)}catch{vs(e)}})),setTablesSchema:Is,setValuesSchema:Ss,setSchema:(e,t)=>ts((()=>{Is(e),Ss(t)})),delTables:Rs,delTable:ms,delRow:Ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>J(Ie(X,e),(a=>J(Ie(a,t),(o=>Le(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>Le(Z,e)?Nt(e):0),e),delTablesSchema:Es,delValuesSchema:ks,delSchema:()=>ts((()=>{Es(),ks()})),transaction:xs,startTransaction:Ds,getTransactionChanges:()=>[Ve(E,((e,t)=>-1===Ie(d,t)?void 0:Ve(e,((e,s)=>-1===Ie(Ie(M,t),s)?void 0:Ve(e,(([,e])=>e),((e,t)=>Lt(t)))),he)),he),Ve(x,(([,e])=>e),((e,t)=>Lt(t)))],getTransactionLog:()=>[!Ce(E),!Ce(x),ke(E,ft,Lt),ke(D),Ve(x,ft,Lt),Ve(Q),Ve(d),Ee(M),ke(V),Ve(k)],finishTransaction:As,forEachTable:e=>ye(X,((t,s)=>e(s,(e=>ye(t,((t,s)=>e(s,(e=>Se(t,e))))))))),forEachTableCell:(e,t)=>Se(Ie(U,m(e)),t),forEachRow:(e,t)=>ye(Ie(X,m(e)),((e,s)=>t(s,(t=>Se(e,t))))),forEachCell:(e,t,s)=>Se(Ie(Ie(X,m(e)),m(t)),s),forEachValue:e=>Se(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return st((()=>{const r=ls(e,t,s,n,a);B(r,l)||(l=r,o(Js,e,t,s,n,a,l))}),we[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>st(e,et),addWillFinishTransactionListener:e=>st(e,tt[0]),addDidFinishTransactionListener:e=>st(e,tt[1]),callListener:e=>(ot(e),Js),delListener:e=>(at(e),Js),getListenerStats:()=>({}),createStore:Tt,addListener:st,callListeners:nt,setInternalListeners:(e,t)=>r=[e,t]};return ge({[g+L]:[0,ee,[],()=>[hs()]],[L]:[0,te],[C]:[0,se],[g+f]:[1,ne,[ns],e=>[fs(...e)]],[f]:[1,ae,[ns]],[f+v]:[1,oe,[ns]],[g+f+b]:[2,le,[ns,as],e=>[Ls(...e)]],[p]:[1,ie,[ns]],[y]:[1,ue,[ns]],[g+w]:[2,Je,[ns,rs],e=>[Cs(...e)]],[w]:[2,Oe,[ns,rs]],[v]:[2,Pe,[ns,rs]],[g+b]:[3,We,[ns,rs,is],e=>[ws(...e)]],[b]:[3,je,[ns,rs,is],e=>gt(cs(...e))],InvalidCell:[3,$e],[g+S]:[0,Ke,[],()=>[ps()]],[S]:[0,Ue],[R]:[0,Xe],[g+I]:[1,Ye,[us],e=>[ys(...e)]],[I]:[1,Ze,[us],e=>gt(gs(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{Js[u+a+c]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?N(a,0,e):void 0,s,n)})),re(Js)},bt=2**36,vt=2**30,It=2**24,St=2**18,Rt=4096,mt=64,Mt=e=>String.fromCharCode(48+(63&e)),Vt=(e,t)=>E(e,t)-48,Et={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},kt=(e="")=>[e,[at(e),at(e)]];e.createCheckpoints=$e,e.createCustomPersister=(e,t,s,n,a,o,r,[l,i]=[],c=[])=>{let d,u,g,h=0,f=0;me(Ye,c,(()=>0)),me(Ze,c,(()=>[]));const[L,C,w,p]=((e,t)=>!e||A(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!he(e)||!he(t)])(r,e),y=async e=>(2!=h&&(h=1,await T.schedule((async()=>{await e(),h=0}))),T),T={load:async(s,n)=>await y((async()=>{try{const s=await t();(L&&et(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(T.stopAutoLoad(),await T.load(s,a),f=1,g=n((async(s,n)=>{if(n){const t=n();await y((async()=>(L&&et(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await y((async()=>{try{const n=s?.()??await t();(L&&et(n)?e.setMergeableContent:e.setContent)(n)}catch(e){o?.(e)}}))})),T),stopAutoLoad:()=>(f&&(a(g),g=void 0,f=0),T),save:async e=>(1!=h&&(h=2,await T.schedule((async()=>{try{await s(C,e)}catch(e){o?.(e)}h=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const e=w();p(e)&&T.save((()=>e))})),T),stopAutoSave:()=>(J(d,e.delListener),d=void 0,T),schedule:async(...e)=>(Y(Ie(Ze,c),...e),await(async()=>{if(!Ie(Ye,c)){for(Re(Ye,c,1);!A(u=ee(Ie(Ze,c)));)try{await u()}catch(e){o?.(e)}Re(Ye,c,0)}})(),T),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(T[l]=()=>i),re(T)},e.createIndexes=Ge,e.createMergeableStore=e=>{let t,n,a=1,o=kt();const[r,l]=(e=>{let t=0,s=-1;const n=X(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^E(t)),5381)>>>0,a=e=>{const n=t,[a,o]=A(e)?[0,0]:[Vt(r=e,0)*bt+Vt(r,1)*vt+Vt(r,2)*It+Vt(r,3)*St+Vt(r,4)*Rt+Vt(r,5)*mt+Vt(r,6),Vt(r,7)*St+Vt(r,8)*Rt+Vt(r,9)*mt+Vt(r,10),Vt(r,11)*It+Vt(r,12)*St+Vt(r,13)*Rt+Vt(r,14)*mt+Vt(r,15)];var r;t=k(n,a,Date.now()),s=t==n?t==a?k(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,Mt((e=t)/bt)+Mt(e/vt)+Mt(e/It)+Mt(e/St)+Mt(e/Rt)+Mt(e/mt)+Mt(e)+Mt(o/St)+Mt(o/Rt)+Mt(o/mt)+Mt(o)+Mt(r/It)+Mt(r/St)+Mt(r/Rt)+Mt(r/mt)+Mt(r);var e,o,r},a]})(e),i=Tt(),c=e=>{const t=a;a=0,e(),a=t},d=()=>{if(A(n)){const[,,e,,n]=i.getTransactionLog(),a=he(e)&&he(n)?s:t??(t=r()),o=nt(a,[ot(he(e)?s:a),ot(he(n)?s:a)]),[[,l],[,c]]=o[1];return ge(e,((e,t)=>{const[,s]=l[t]=ot(a);ge(e,((e,t)=>{const[,n]=s[t]=ot(a);ge(e,(([,e],t)=>n[t]=nt(a,e)))}))})),ge(n,(([,e],t)=>c[t]=nt(a,e))),o}return n},u=e=>{const t=[{},{}];return l(e[0]),dt(e,o,t,(([e,t],[s,n],[a,o])=>{dt(e,s,a,((e,t,s)=>ct(e,t,s,((e,t,s)=>ct(e,t,s,ut))))),dt(t,n,o,ut)})),c((()=>i.applyChanges(t))),g},g={getMergeableContent:()=>rt(o,(([e,t])=>[it(e,(e=>it(e,(e=>it(e,lt))))),it(t,lt)])),setMergeableContent:e=>(c((()=>i.transaction((()=>{i.delTables().delValues(),o=kt()})))),u(e),g),getTransactionMergeableChanges:d,applyMergeableChanges:u,merge:e=>{const t=g.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableChanges(t),u(s)}};return i.setInternalListeners((()=>{if(a){n=d();const[e,[t,s]]=n,a=!he(t[1]),r=!he(s[1]),[,[l,i]]=o;(a||r)&&(o[0]=e),a&&(l[0]=e,ge(t[1],(([,t],s)=>{const n=me(l[1],s,at);n[0]=e,ge(t,(([,t],s)=>{const a=me(n[1],s,at);a[0]=e,ge(t,(([,t],s)=>Re(a[1],s,nt(e,t))))}))}))),r&&(i[0]=e,ge(s[1],(([,t],s)=>Re(i[1],s,nt(e,t)))))}}),(()=>t=n=void 0)),ge(i,((e,t)=>g[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),g):M(t,"add")&&V(t,"Listener")?(...s)=>{const n=Et[N(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(g,...t),e(...s)}:e)),re(g)},e.createMetrics=Xe,e.createQueries=tt,e.createRelationships=st,e.createStore=Tt,e.defaultSorter=qe},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
|
package/lib/umd/tinybase.js.gz
CHANGED
|
Binary file
|
package/lib/umd/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,g="Row",m=g+b,f="Sorted"+g+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),L=e=>e.length,N=async e=>V.all(e),D=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},G=(e,l)=>e.every(l),j=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>L(q(e)),le=e=>X(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",ge="Count",me="Del",fe="Deps",we=fe+"?: React.DependencyList",Te="doRollback?: DoRollback",ye="actions: () => Return, "+Te,ve="export",xe="Id",Ve="Invalid",Re="Json",Ae=ie($),ke="?: ",Se=" | undefined",Pe="NonNullable",Oe="Partial",Ee="Props",Le="Provider",Ne=`Registers a ${Ae} that will be called`,De="Represents",Ge="rowId: "+xe,je="Schema",He="Set",Me=", descending?: boolean, offset?: number, limit?: number",Je="[]",ze="the Store",We="Transaction",Be=We+"Changes",Fe=ie(We),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+ze:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>De+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Ne+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),gl=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),ml=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",De,"Gets "+el,"Sets "+el,Ne+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[ze,C,al+p+ll+b,be+p,al+g+ll+b,be+g,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+g+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-L(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Ll=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Nl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Dl=e=>`/** ${e}. */`,Gl=(...e)=>M(z(e,(e=>e)),", "),jl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>jl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...j(Ie(e[l],((e,l)=>`import {${M(j(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Dl(l),`${n?ve+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Ll(a,1),t(Nl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Nl(l),`'${l}'`),Ll(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Nl(a),`'${a}'`),Ll(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+xe,"keyof "+s,"A "+p+" Id in "+ze),c=`<TId extends ${I}>`,u=e(p,Pe+`<${s}[TId]>`,"A "+p+" in "+ze,c),b=e(p+Xe,Pe+`<${r}[TId]>`,"A "+p+" in "+ze+Ye,c),y=e(g,u+"<TId>[Id]","A "+g+" in a "+p,c),v=e(g+Xe,b+"<TId>[Id]","A "+g+" in a "+p+Ye,c),x=e(w+xe,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+g,c),V=e(w,Pe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+g,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+g,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(g+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+g+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+g+" iterator"),a),L=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),D=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),G=e(C+$,`(${o}, getCellChange: ${N}${Se})`+Ke,il(1)),j=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${N}${Se})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(g+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(m+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+Gl(o,"tableId: "+I,"cellId: Id"+Se,"descending: boolean","offset: number","limit: number"+Se,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+g+$,"("+Gl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(g+$,"("+Gl(""+o,"tableId: "+I,Ge,`getCellChange: ${N}${Se}`)+")"+Ke,il(5,3)),q=e(T+$,"("+Gl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Se}, oldCell: ${V}<TId, CId> ${Se}, getCellChange: ${N} ${Se}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Ve+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,jl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,jl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+xe,"keyof "+o,"A "+y+" Id in "+ze),I=e(y,Pe+`<${o}[VId]>`,"A "+y+" Id in "+ze,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+ze,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Se})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),g=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Se}, oldValue: ${I}<VId> ${Se}, getValueChange: ${b} ${Se}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,g,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+Ke,il(11)),e(Ve+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(We+$,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,L,N]=zl(e,l,R),[D,G,j]=Wl(c,E,L,N),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Dl(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Oe:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Oe:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+Ae+": "+l+(o?", mutator?: boolean":a),xe,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Ll(n)}.d`,Q=Ll(n,1),q=Ll(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,N,G,j,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=D(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,De+` the '${e}' `+p),c(l+p+Xe,$+t,De+` the '${e}' `+p+Ye),c(l+g,u+t,rl(e)),c(l+g+Xe,y+t,rl(e,1)),c(l+w+xe,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+g+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,N,G,j,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,N,G,j,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+Je,Il(p,ze)),U(5,a,p,qe,$l(p,ze),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,g+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,m,b,Il(g,pl(e)),a,t),U(0,l,f,b,Il(g,pl(e),1),"cellId?: "+I+Me,t+", cellId, descending, offset, limit"),U(5,l,g,qe,$l(g,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,g,n,gl(e,s),Ge+d,t+", rowId"+o))),U(6,l,g,xe+Se,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+Je,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),L(e,((n,d,s,r,I)=>{const $="Map"+Ll(d,1);$e(X,d,$);const c=d+(A(s)?Se:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,ml(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Re,Re,sl(1,6)),U(2,a,C+Re,Q,sl(1,7),"tablesJson: "+Re,"tables"+Re),_(i+C,N,sl(1,8,0,1)+" changes"),_(C,G,sl(1,8)+" changes"),_(h,j,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(g+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),Gl("tableId: TId",`cellId: ${v}<TId>`+Se,"descending: boolean","offset: number","limit: number"+Se),Gl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+g,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Ve+w,ue,Ne+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+je+"({",El(E(((e,l,t)=>[`[${t}]: {`,...L(e,((e,l,t,n)=>`[${n}]: {[${R(Nl(r),`'${r}'`)}]: ${R(Nl(l),`'${l}'`)}${A(t)?a:`, [${R(Nl(I),`'${I}'`)}]: `+(P(t)?R(Nl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=G(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+Je,Il(y,ze)),U(5,a,y,"void",$l(y,ze),"valueCallback: "+$,"valueCallback as any"),N(((e,l,t,n,d)=>{const s="Map"+Ll(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Re,Re,sl(2,6)),U(2,a,v+Re,Q,sl(2,7),"valuesJson: "+Re,"values"+Re),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Ve+y,h,Ne+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+je+"({",N(((e,l,t,n)=>[`[${n}]: {[${R(Nl(r),`'${r}'`)}]: ${R(Nl(l),`'${l}'`)}${A(t)?a:`, [${R(Nl(I),`'${I}'`)}]: `+(P(t)?R(Nl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(2,a,Be,Q,`Applies a set of ${Be} to the Store`,"transactionChanges: "+Be,"transactionChanges"),re(X,((e,l)=>c(l,`(cell: ${e}${Se}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",xe,"IdOrNull",Re,"Store",Be),s(0,t,"Get"+Be,"GetTransactionLog"),U(0,a,Re,Re,sl(0,6)),U(2,a,Re,Q,sl(0,7),"tablesAndValuesJson: "+Re,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ye,"actions, doRollback","<Return>"),U(7,a,"start"+We,Q,_e),U(7,a,"finish"+We,Q,Ze,Te,"doRollback");const te=j(q,Q);return _("Start"+We,te,Ne+" just before the start of the "+Fe,a,a,0),_("WillFinish"+We,te,Ne+" just before "+Qe,a,a,0),_("DidFinish"+We,te,Ne+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+ze,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),ve+" interface "+Q+" {",...z(0),"}",a,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),d(...k(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>Gl(Zl(e),Zl(e)+fe),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+we,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=Gl($t+")"+Ke,Xl),ut="then, then"+fe,it=ot+at+xe,bt="View",pt=(e,...l)=>Gl(...l,Ae+": "+e,Ae+we,"mutator?: boolean"),Ct=(...e)=>Gl(...e,Ae,Ae+fe,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,L]=zl(e,l,R),N=`./${Ll(n)}.d`,D=`./${Ll(n)}-ui-react.d`,G="tinybase/ui-react",j=Ll(n,1),H=Ll(j),J=j+"Or"+j+xe,z=H+"Or"+j+xe,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,D,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Gl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[ve+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[ve+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Dl(d)),W(r,a),r}));c(null,t,xe,"Store",he,Yl+"ized"+he),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=u(J,j+" | "+xe,`Used when you need to refer to a ${j} in a React hook or component`),Y=u(Le+Ee,Hl(H+ke+j,H+`ById?: {[${H}Id: Id]: ${j}}`),`Used with the ${Le} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,Y);const ee=z+ke+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${j}?, {[${H}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+we,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Se,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Le} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",Gl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",Gl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,L,G,J,z,W,F,U,_]=d;c(null,N,e,l,n,I,y,v,x,R,k,S,P,L,G,J,z,W,U,F),c(0,N,r),c(1,N,j),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+Je,Il(p,ze)+Ce);Q(He+C+he,He+C+he,dt,sl(1,9)+tt,Gl(Zl(C)+et+l,Zl(C)+we),Ql(C),nt,Gl($t,`tables: ${l})`+Ke,Xl),ut),Q(me+C+he,me+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ee,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+ke+j,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(g+Ee,Hl("tableId?: TId","rowId: Id",H+ke+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+g),`<TId extends ${n}>`),te=u(p+Ee,Hl("tableId?: TId",H+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ee,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ee,Hl(H+ke+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,D,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,N,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+g+ge,g+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+m,m,b,Il(g,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(g,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+g,i+g,o,gl(e,0,1)+Ce,it,Gl(t,ot)),Q(l+g,g,r,gl(e)+Ce,it,Gl(t,ot)),Q(l+T,T,$+Je,Il(w,Cl(e))+Ce,it,Gl(t,ot)),Q(He+l+p+he,He+p+he,dt,hl(e,9)+tt,Gl(Zl(p)+et+d,Zl(p)+we),Gl(t,Ql(p)),nt,Gl($t,`table: ${d})`+Ke,Xl),ut),Q(me+l+p+he,me+p+he,he,hl(e,12),a,t,a,ct,ut),Q(He+l+g+he,He+g+he,dt,gl(e,9)+tt,Gl(it,Zl(g)+et+I,Zl(g)+we),Gl(t,ot,Ql(g)),nt,Gl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+g+he,"Add"+g+he,dt,gl(e,10)+tt,Gl(Zl(g)+et+I,Zl(g)+we),Gl(t,Ql(g)),nt,"then?: ("+Gl(it+Se,"store: Store","row: "+I+")"+Ke,"then"+we)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(He+l+Oe+g+he,He+Oe+g+he,dt,gl(e,11)+tt,Gl(it,Zl(Oe+g)+et+I,Zl(Oe+g)+we),Gl(t,ot,Ql(Oe+g)),nt,Gl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(me+l+g+he,me+g+he,he,gl(e,12),it,Gl(t,ot),a,ct,ut);const h=q(l+g+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],gl(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Ll(d,1);c(0,N,$),c(1,N,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,Gl(t,r)),Q(i+l+I+w,i+w,o,ml(e,n,0,1)+Ce,it,Gl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Se:a),ml(e,n)+Ce,it,Gl(t,ot,r));Q(He+l+I+w+he,He+w+he,dt,ml(e,n,9)+tt,Gl(it,Zl(w)+et+d+" | "+$,Zl(w)+we),Gl(t,ot,r,Ql(w)),nt,Gl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(me+l+I+w+he,me+w+he,he,ml(e,n,12),Gl(it,"forceDel?: boolean"),Gl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],ml(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(g+ge+$,g+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(m+$,m+$,qe,bl(4,3,1),pt(L,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(G,`tableId: ${n} | null`,"cellId: "+Ie+Se,"descending: boolean","offset: number","limit: number"+Se),Ct("tableId","cellId","descending","offset","limit")),Q(i+g+$,i+g+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(g+$,g+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,N,...r),c(1,N,j);const p=V("getDefaultValueComponent","valueId: Id",M(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+Je,Il(y,ze)+Ce);Q(He+v+he,He+v+he,dt,sl(2,9)+tt,Gl(Zl(v)+et+l,Zl(v)+we),Ql(v),nt,Gl($t,`values: ${l})`+Ke,Xl),ut),Q(He+Oe+v+he,He+Oe+v+he,dt,sl(2,11)+tt,Gl(Zl(Oe+v)+et+l,Zl(Oe+v)+we),Ql(Oe+v),nt,Gl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(me+v+he,me+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ee,Hl("valueId?: VId",H+ke+j,ql),cl("a Value"),`<VId extends ${t}>`),g=u(v+Ee,Hl(H+ke+j,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,D,g,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+g,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),L(((e,l,t,n,d)=>{const s="Map"+Ll(l,1);c(0,N,s),c(1,N,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(He+d+y+he,He+y+he,dt,fl(e,9)+tt,Gl(Zl(y)+et+l+" | "+s,Zl(y)+we),Gl(n,Ql(y)),nt,Gl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(me+d+y+he,me+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(Le,`{${H}, ${H}ById, children}: `+Y+" & {children: React.ReactNode}",["{",lt,"return (","<Context."+Le,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${Le}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},gt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},mt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=mt(e.getTablesSchemaJson());return!le(l)||G(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(G(a,(l=>G(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[D(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==L(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:D(t)}})),l},a=e=>gt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await N(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return K({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:L(e.getValueIds()),jsonLength:L(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
|
|
1
|
+
var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(q(e)),le=e=>X(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return K({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
|
package/lib/umd/tools.js.gz
CHANGED
|
Binary file
|