tinybase 5.0.0-beta.0 → 5.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +1 -1
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/cjs/checkpoints.cjs +1 -1
- package/lib/cjs/checkpoints.cjs.gz +0 -0
- package/lib/cjs/indexes.cjs +1 -1
- package/lib/cjs/indexes.cjs.gz +0 -0
- package/lib/cjs/metrics.cjs +1 -1
- package/lib/cjs/metrics.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-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-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.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-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/queries.cjs +1 -1
- package/lib/cjs/queries.cjs.gz +0 -0
- package/lib/cjs/relationships.cjs +1 -1
- package/lib/cjs/relationships.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/ui-react-dom.cjs +1 -1
- package/lib/cjs/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/checkpoints.cjs +1 -1
- package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
- package/lib/cjs-es6/indexes.cjs +1 -1
- package/lib/cjs-es6/indexes.cjs.gz +0 -0
- package/lib/cjs-es6/metrics.cjs +1 -1
- package/lib/cjs-es6/metrics.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-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-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.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-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/queries.cjs +1 -1
- package/lib/cjs-es6/queries.cjs.gz +0 -0
- package/lib/cjs-es6/relationships.cjs +1 -1
- package/lib/cjs-es6/relationships.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/cjs-es6/ui-react-dom.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/checkpoints.js +251 -234
- package/lib/debug/indexes.js +7 -5
- package/lib/debug/metrics.js +7 -5
- package/lib/debug/persisters/persister-automerge.js +3 -1
- package/lib/debug/persisters/persister-browser.js +1 -0
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +10 -6
- package/lib/debug/persisters/persister-electric-sql.js +11 -6
- package/lib/debug/persisters/persister-expo-sqlite-next.js +11 -7
- package/lib/debug/persisters/persister-expo-sqlite.js +10 -6
- package/lib/debug/persisters/persister-file.js +1 -0
- package/lib/debug/persisters/persister-indexed-db.js +4 -1
- package/lib/debug/persisters/persister-partykit-client.js +1 -0
- package/lib/debug/persisters/persister-partykit-server.js +2 -1
- package/lib/debug/persisters/persister-remote.js +1 -0
- package/lib/debug/persisters/persister-sqlite-wasm.js +10 -6
- package/lib/debug/persisters/persister-sqlite3.js +10 -6
- package/lib/debug/persisters/persister-yjs.js +3 -1
- package/lib/debug/persisters.js +1 -0
- package/lib/debug/queries.js +9 -6
- package/lib/debug/relationships.js +7 -5
- package/lib/debug/store.js +3 -1
- package/lib/debug/tinybase.js +254 -235
- package/lib/debug/tools.js +19 -43
- package/lib/debug/ui-react-dom.js +3 -1
- package/lib/debug/ui-react.js +166 -200
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/metrics.js +1 -1
- package/lib/es6/metrics.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-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-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.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-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/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.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/es6/ui-react-dom.js +1 -1
- package/lib/es6/ui-react-dom.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.js +1 -1
- package/lib/metrics.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-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-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.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-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/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.js +1 -1
- package/lib/relationships.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/persisters/persister-expo-sqlite-next.d.ts +3 -3
- package/lib/types/ui-react.d.ts +77 -88
- package/lib/types/with-schemas/internal/queries.d.ts +4 -3
- package/lib/types/with-schemas/internal/store.d.ts +4 -3
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -4
- package/lib/types/with-schemas/ui-react.d.ts +84 -95
- package/lib/ui-react-dom.js +1 -1
- package/lib/ui-react-dom.js.gz +0 -0
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.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-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-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.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-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/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.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/ui-react-dom.js +1 -1
- package/lib/umd/ui-react-dom.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/metrics.js +1 -1
- package/lib/umd-es6/metrics.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-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-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.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-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/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.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/lib/umd-es6/ui-react-dom.js +1 -1
- package/lib/umd-es6/ui-react-dom.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +21 -21
- package/readme.md +2 -2
package/lib/umd/indexes.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=e=>n+e,o=e=>null==e,d=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),l=e=>e.length,c=(e,t)=>e.every(t),a=(e,t)=>c(e,((n,s)=>0==s||t(e[s-1],n)<=0)),
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=e=>n+e,o=e=>null==e,d=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),l=e=>e.length,c=(e,t)=>e.every(t),a=(e,t)=>c(e,((n,s)=>0==s||t(e[s-1],n)<=0)),u=(e,t)=>e.sort(t),f=(e,t)=>e.forEach(t),h=(e,...t)=>e.push(...t),I=Object.freeze,g=(e,t)=>e?.has(t)??!1,p=e=>o(e)||0==(e=>e?.size??0)(e),x=e=>[...e?.values()??[]],y=e=>e.clear(),v=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),S=e=>new Map(e),w=e=>[...e?.keys()??[]],b=(e,t)=>e?.get(t),T=(e,t)=>v(e,((e,n)=>t(n,e))),E=(e,t,n)=>o(n)?(L(e,t),e):e?.set(t,n),R=(e,t,n)=>(g(e,t)||E(e,t,n()),b(e,t)),m=(e,t,n,s,r=0)=>d((n?R:b)(e,t[r],r>l(t)-2?n:S),(o=>{if(r>l(t)-2)return s?.(o)&&E(e,t[r]),o;const d=m(o,t,n,s,r+1);return p(o)&&E(e,t[r]),d})),j=e=>new Set(i(e)||o(e)?e:[e]),k=(e,t)=>e?.add(t),z=(e,r)=>t(e)==s?t=>t(e):e??(()=>r??n),A=(e,t)=>(e??0)<(t??0)?-1:1,C=/^\d+$/,D=((e,t)=>{const s=new WeakMap;return e=>{s.has(e)||s.set(e,(e=>{const t=S(),s=S(),[D,M,B]=(e=>{let t;const[s,r]=(()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??n+t++,t=>{C.test(t)&&l(e)<1e3&&h(e,t)}]})(),i=S();return[(e,r,o,d=[],l=(()=>[]))=>{t??=U;const c=s(1);return E(i,c,[e,r,o,d,l]),k(m(r,o??[n],j),c),c},(e,s,...r)=>f(((e,t=[n])=>{const s=[],r=(e,n)=>n==l(t)?h(s,e):null===t[n]?v(e,(e=>r(e,n+1))):f([t[n],null],(t=>r(b(e,t),n+1)));return r(e,0),s})(e,s),(e=>v(e,(e=>b(i,e)[0](t,...s??[],...r))))),e=>d(b(i,e),(([,t,s])=>(m(t,s??[n],void 0,(t=>(L(t,e),p(t)?1:0))),E(i,e),r(e),s))),e=>d(b(i,e),(([e,,n=[],s,r])=>{const d=(...i)=>{const c=l(i);c==l(n)?e(t,...i,...r(i)):o(n[c])?f(s[c]?.(...i)??[],(e=>d(...i,e))):d(...i,n[c])};d()}))]})(),[O,W,$,q,F,G,H,,J,K,N,P]=((e,t,n,s,r)=>{const a=e.hasRow,u=S(),h=S(),I=S(),m=S(),z=S(),A=S(),C=(t,n,...s)=>{const r=R(A,t,j);return f(s,(t=>k(r,t)&&n&&e.callListener(t))),s},D=(t,...n)=>d(b(A,t),(s=>{f(0==l(n)?x(s):n,(t=>{e.delListener(t),L(s,t)})),p(s)&&E(A,t)})),M=(e,n)=>{E(u,e,n),g(h,e)||(E(h,e,t()),E(m,e,S()),E(z,e,S()),r(I))},B=e=>{E(u,e),E(h,e),E(m,e),E(z,e),D(e),r(I)};return[()=>e,()=>w(u),e=>T(h,e),e=>g(h,e),e=>b(u,e),e=>b(h,e),(e,t)=>E(h,e,t),M,(t,s,r,d,u)=>{M(t,s);const h=S(),I=S(),p=b(m,t),x=b(z,t),L=t=>{const r=n=>e.getCell(s,t,n),f=b(p,t),g=a(s,t)?n(d(r,t)):void 0;var y,v;if(f===g||i(f)&&i(g)&&(v=g,l(y=f)===l(v)&&c(y,((e,t)=>v[t]===e)))||E(h,t,[f,g]),!o(u)){const e=b(x,t),n=a(s,t)?u(r,t):void 0;e!=n&&E(I,t,n)}},w=e=>{r((()=>{v(h,(([,e],t)=>E(p,t,e))),v(I,((e,t)=>E(x,t,e)))}),h,I,p,x,e),y(h),y(I)};T(p,L),e.hasTable(s)&&f(e.getRowIds(s),(e=>{g(p,e)||L(e)})),w(!0),D(t),C(t,0,e.addRowListener(s,null,((e,t,n)=>L(n))),e.addTableListener(s,(()=>w())))},B,e=>s(e,I),()=>T(A,B),C,D]})(e,S,(e=>{return o(e)?n:i(e)?(t=r,e.map(t)):r(e);var t}),D,M),Q=(t,n,s)=>{const r=F(t);v(s,((t,s)=>n(s,(n=>v(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},U={setIndexDefinition:(e,n,r,i,l,c=A)=>{const f=o(l)?void 0:([e],[t])=>l(e,t);return J(e,n,((n,r,l,h,I,x)=>{let y=0;const w=j(),R=j(),m=G(e);if(v(r,(([e,t],n)=>{const s=j(e),r=j(t);v(s,(e=>L(r,e)?L(s,e):0)),v(s,(e=>{k(w,e),d(b(m,e),(t=>{L(t,n),p(t)&&(E(m,e),y=1)}))})),v(r,(e=>{k(w,e),g(m,e)||(E(m,e,j()),y=1),k(b(m,e),n),o(i)||k(R,e)}))})),n(),p(I)||(x?T(m,(e=>k(R,e))):T(l,(e=>d(b(h,e),(e=>k(R,e))))),v(R,(e=>{const t=(t,n)=>c(b(I,t),b(I,n),e),n=[...b(m,e)];a(n,t)||(E(m,e,j(u(n,t))),k(w,e))}))),(y||x)&&!o(f)){const t=[...m];a(t,f)||(H(e,S(u(t,f))),y=1)}y&&M(t,[e]),v(w,(t=>M(s,[e,t])))}),z(r),d(i,z)),U},delIndexDefinition:e=>(K(e),U),getStore:O,getIndexIds:W,forEachIndex:e=>$(((t,n)=>e(t,(e=>Q(t,e,n))))),forEachSlice:(e,t)=>Q(e,t,G(e)),hasIndex:q,hasSlice:(e,t)=>g(G(e),t),getTableId:F,getSliceIds:e=>w(G(e)),getSliceRowIds:(e,t)=>x(b(G(e),t)),addIndexIdsListener:N,addSliceIdsListener:(e,n)=>D(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>D(n,s,[e,t]),delListener:e=>(B(e),U),destroy:P,getListenerStats:()=>({})};return I(U)})(e));return s.get(e)}})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
|
package/lib/umd/indexes.js.gz
CHANGED
|
Binary file
|
package/lib/umd/metrics.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,r="",n=t(r),s=t(t),i=Math.max,o=Math.min,a=isFinite,c=e=>null==e,d=(e,t,r)=>c(e)?r?.():t(e),l=e=>Array.isArray(e),u=e=>e.length,f=()=>{},h=(e,t)=>e.forEach(t),v=e=>M(e,((e,t)=>e+t),0),M=(e,t,r)=>e.reduce(t,r),g=(e,...t)=>e.push(...t),p=Object.freeze,y=e=>e?.size??0,m=(e,t)=>e?.has(t)??!1,L=e=>c(e)||0==y(e),b=e=>[...e?.values()??[]],w=e=>e.clear(),T=(e,t)=>e?.forEach(t),x=(e,t)=>e?.delete(t),I=e=>new Map(e),E=(e,t)=>e?.get(t),R=(e,t)=>T(e,((e,r)=>t(r,e))),S=(e,t,r)=>c(r)?(x(e,t),e):e?.set(t,r),j=(e,t,r)=>(m(e,t)||S(e,t,r()),E(e,t)),k=(e,t,r,n,s=0)=>d((r?j:E)(e,t[s],s>u(t)-2?r:I),(i=>{if(s>u(t)-2)return n?.(i)&&S(e,t[s]),i;const o=k(i,t,r,n,s+1);return L(i)&&S(e,t[s]),o})),z=I([["avg",[(e,t)=>v(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>i(...e),(e,t)=>i(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:i(t,e)]],["min",[e=>o(...e),(e,t)=>o(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:o(t,e)]],["sum",[e=>v(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),A=e=>new Set(l(e)||c(e)?e:[e]),D=(e,t)=>e?.add(t),N=/^\d+$/,B=((e,i)=>{const o=new WeakMap;return e=>{o.has(e)||o.set(e,(e=>{const i=I(),[o,v,M]=(e=>{let t;const[n,s]=(()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??r+t++,t=>{N.test(t)&&u(e)<1e3&&g(e,t)}]})(),i=I();return[(e,s,o,a=[],c=(()=>[]))=>{t??=P;const d=n(1);return S(i,d,[e,s,o,a,c]),D(k(s,o??[r],A),d),d},(e,n,...s)=>h(((e,t=[r])=>{const n=[],s=(e,r)=>r==u(t)?g(n,e):null===t[r]?T(e,(e=>s(e,r+1))):h([t[r],null],(t=>s(E(e,t),r+1)));return s(e,0),n})(e,n),(e=>T(e,(e=>E(i,e)[0](t,...n??[],...s))))),e=>d(E(i,e),(([,t,n])=>(k(t,n??[r],void 0,(t=>(x(t,e),L(t)?1:0))),S(i,e),s(e),n))),e=>d(E(i,e),(([e,,r=[],n,s])=>{const i=(...o)=>{const a=u(o);a==u(r)?e(t,...o,...s(o)):c(r[a])?h(n[a]?.(...o)??[],(e=>i(...o,e))):i(...o,r[a])};i()}))]})(),[B,C,F,O,W,$,q,,G,H,J,K]=((e,t,n,s,i)=>{const o=e.hasRow,a=I(),f=I(),v=I(),M=I(),g=I(),p=I(),y=(t,r,...n)=>{const s=j(p,t,A);return h(n,(t=>D(s,t)&&r&&e.callListener(t))),n},k=(t,...r)=>d(E(p,t),(n=>{h(0==u(r)?b(n):r,(t=>{e.delListener(t),x(n,t)})),L(n)&&S(p,t)})),z=(e,r)=>{S(a,e,r),m(f,e)||(S(f,e,t()),S(M,e,I()),S(g,e,I()),i(v))},N=e=>{S(a,e),S(f,e),S(M,e),S(g,e),k(e),i(v)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>R(f,e),e=>m(f,e),e=>E(a,e),e=>E(f,e),(e,t)=>S(f,e,t),z,(t,n,s,i,a)=>{z(t,n);const d=I(),f=I(),v=E(M,t),p=E(g,t),L=t=>{const s=r=>e.getCell(n,t,r),h=E(v,t),M=o(n,t)?(g=i(s,t),isNaN(g)||c(g)||!0===g||!1===g||g===r?void 0:1*g):void 0;var g,y,m,L;if(h===M||l(h)&&l(M)&&(m=M,u(y=h)===u(m)&&(L=(e,t)=>m[t]===e,y.every(L)))||S(d,t,[h,M]),!c(a)){const e=E(p,t),r=o(n,t)?a(s,t):void 0;e!=r&&S(f,t,r)}},b=e=>{s((()=>{T(d,(([,e],t)=>S(v,t,e))),T(f,((e,t)=>S(p,t,e)))}),d,f,v,p,e),w(d),w(f)};R(v,L),e.hasTable(n)&&h(e.getRowIds(n),(e=>{m(v,e)||L(e)})),b(!0),k(t),y(t,0,e.addRowListener(n,null,((e,t,r)=>L(r))),e.addTableListener(n,(()=>b())))},N,e=>s(e,v),()=>R(p,N),y,k]})(e,f,0,o,v),P={setMetricDefinition:(e,r,o,d,l,u,f)=>{const h=t(o)==s?[o,l,u,f]:E(z,o)??E(z,"sum");return G(e,r,((t,r,n,s,o,d)=>{const l=$(e),u=y(s);d||=c(l),t();let f=((e,t,r,n,s,i=!1)=>{if(L(r))return;const[o,a,d,l]=s;return i||=c(e),T(n,(([r,n])=>{i||(e=c(r)?a?.(e,n,t++):c(n)?d?.(e,r,t--):l?.(e,n,r,t),i||=c(e))})),i?o(b(r),y(r)):e})(l,u,s,r,h,d);a(f)||(f=void 0),f!=l&&(q(e,f),v(i,[e],f,l))}),(1,t(M=d)==n?e=>e(M):M??(()=>1))),P;var M},delMetricDefinition:e=>(H(e),P),getStore:B,getMetricIds:C,forEachMetric:F,hasMetric:O,getTableId:W,getMetric:$,addMetricIdsListener:J,addMetricListener:(e,t)=>o(t,i,[e]),delListener:e=>(M(e),P),destroy:K,getListenerStats:()=>({})};return p(P)})(e));return o.get(e)}})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
|
package/lib/umd/metrics.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var t,e;t=this,e=function(t){"use strict";const e=t=>null==t,a=(t,a,s)=>e(t)?s?.():a(t),s=Object,n=t=>s.getPrototypeOf(t),o=s.
|
|
1
|
+
var t,e;t=this,e=function(t){"use strict";const e=t=>null==t,a=(t,a,s)=>e(t)?s?.():a(t),s=Object,n=t=>s.getPrototypeOf(t),o=s.entries,c=s.keys,i=s.freeze,r=(t,e)=>a(t,(t=>t[e])),d=(t,a)=>!e(r(t,a)),y=(t,e)=>(delete t[e],t),u=(t,e)=>((t,e)=>t.map(e))(o(t),(([t,a])=>e(a,t))),l=t=>c(t).length,f=t=>(t=>!e(t)&&a(n(t),(t=>t==s.prototype||e(n(t))),(()=>!0)))(t)&&0==l(t),h=t=>new Map(t),p=(t,e)=>t?.get(e),v=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},g=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||v(t,e,a()),p(t,e)},w=h(),A=h(),L=(t,e)=>[t[e].t,t[e].v],m=(t,a,s,n)=>{const o=e(a)?t:((t,e,a)=>(d(t,e)||(t[e]={}),t[e]))(t,a);let c;return u(s,((t,e)=>{n(o,e,t)&&(c=1)})),u(o,((t,e)=>{d(s,e)||(y(o,e),c=1)})),!e(a)&&f(o)&&y(t,a),c};t.createAutomergePersister=(t,s,n="tinybase",o)=>(s.change((t=>t[n]={})),((t,s,n,o,c,r,[d,y]=[],u=[])=>{let l,h,L,m=0,S=0;g(w,u,(()=>0)),g(A,u,(()=>[]));const b=async t=>(2!=m&&(m=1,await C.schedule((async()=>{await t(),m=0}))),C),C={load:async(e,a)=>await b((async()=>{try{t.setContent(await s())}catch{t.setContent([e,a])}})),startAutoLoad:async(e={},a={})=>(C.stopAutoLoad(),await C.load(e,a),S=1,L=o((async(e,a)=>{if(a){const e=a();await b((async()=>t.setTransactionChanges(e)))}else await b((async()=>{try{t.setContent(e?.()??await s())}catch(t){r?.(t)}}))})),C),stopAutoLoad:()=>(S&&(c(L),L=void 0,S=0),C),save:async e=>(1!=m&&(m=2,await C.schedule((async()=>{try{await n(t.getContent,e)}catch(t){r?.(t)}m=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),l=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();f(a)&&f(s)||C.save((()=>[a,s]))})),C),stopAutoSave:()=>(a(l,t.delListener),l=void 0,C),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(p(A,u),...t),await(async()=>{if(!p(w,u)){for(v(w,u,1);!e((t=p(A,u),h=t.shift()));)try{await h()}catch(t){r?.(t)}v(w,u,0)}var t})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(C[d]=()=>y),i(C)})(t,(async()=>2==l(s.doc[n])?L(s.doc,n):void 0),(async(t,o)=>s.change((s=>((t,s,n,o)=>{((t,e)=>{f(t[e])&&(t[e]={t:{},v:{}})})(t,s);const[c,i]=L(t,s),d=()=>{l=1};let l=1;if(a(o?.(),(([t,s])=>{l=0,u(t,((t,s)=>l?0:e(t)?y(c,s):a(c[s],(s=>u(t,((t,n)=>l?0:e(t)?y(s,n):a(r(s,n),(a=>u(t,((t,s)=>e(t)?y(a,s):a[s]=t))),d)))),d))),u(s,((t,a)=>l?0:e(t)?y(i,a):i[a]=t))})),l){const[t,e]=n();m(c,void 0,t,((t,e,a)=>m(c,e,a,((t,e,a)=>m(t,e,a,((t,e,a)=>{if(r(t,e)!==a)return t[e]=a,1})))))),m(i,void 0,e,((t,e,a)=>{r(i,e)!==a&&(i[e]=a)}))}})(s,n,t,o)))),(t=>{const e=({doc:e})=>t((()=>L(e,n)));return s.on("change",e),e}),(t=>{s.removeListener("change",t)}),o,["getDocHandle",s]))},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisterAutomerge={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>o.all(a),u="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==E(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),C=Object,S=a=>C.getPrototypeOf(a),D=C.
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>o.all(a),u="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==E(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),C=Object,S=a=>C.getPrototypeOf(a),D=C.entries,g=C.keys,b=C.freeze,I=(a=[])=>C.fromEntries(a),F=(...a)=>C.assign({},...a),M=(a,t)=>v(D(a),(([a,e])=>t(e,a))),P=a=>C.values(a),$=a=>E(g(a)),_=a=>(a=>!r(a)&&l(S(a),(a=>a==C.prototype||r(S(a))),(()=>!0)))(a)&&0==$(a),B=a=>new Map(a),W=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),H=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),j=(a,t,e)=>r(e)?(N(a,t),a):a?.set(t,e),U=(a,t,e)=>(O(a,t)||j(a,t,e()),x(a,t)),Y=(a,t,e,s=j)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),k=a=>new Set(Array.isArray(a)||r(a)?a:[a]),q=(a,t)=>a?.add(t),G=T+"*FROM",J="FROM pragma_table_",z="WHERE",K=(a,t,e)=>{const n=B();return[async()=>Y(n,I(await d(v(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+Q(t)+")ORDER BY name",t),(async({name:t})=>[t,I(v(await a(T+" name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>j(n,t,Y(U(n,t,B),e,((a,t,e)=>{e!=x(a,t)&&j(a,t,e)}),((a,t)=>j(a,t))))),((a,t)=>j(n,t))),async(t,e)=>((a,t)=>!r(x(x(n,a),t)))(t,e)?I(L(v(await a(G+p(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!_(t)))):{},async(t,e,i,o,c,l=!1)=>{const y=k();M(i??{},(a=>v(g(a??{}),(a=>q(y,a)))));const w=R(y);if(!l&&c&&A(w)&&O(n,t))return await a("DROP TABLE"+p(t)),void j(n,t);if(A(w)||O(n,t)){const s=x(n,t),i=k(W(s));await d([...v(w,(async e=>{N(i,e)||(await a(`ALTER TABLE${p(t)}ADD${p(e)}`),j(s,e,""))})),...!l&&o?v(R(i),(async n=>{n!=e&&(await a(`ALTER TABLE${p(t)}DROP${p(n)}`),j(s,n))})):[]])}else await a(`CREATE TABLE${p(t)}(${p(e)} PRIMARY KEY ON CONFLICT REPLACE${m(v(w,(a=>s+p(a))))});`),j(n,t,B([[e,""],...v(w,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+p(t)+"WHERE 1"):await d(M(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+p(t)+z+p(e)+"=?",[n]):A(w)||await V(a,t,e,g(s),[n,...P(s)])})));else if(A(w))O(n,t)&&await a("DELETE FROM"+p(t)+"WHERE 1");else{const s=L(W(x(n,t)),(a=>a!=e)),o=[],c=[];M(i??{},((a,t)=>{h(o,t,...v(s,(t=>a?.[t]))),h(c,t)})),await V(a,t,e,s,o),await a("DELETE FROM"+p(t)+z+p(e)+"NOT IN("+Q(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},V=async(a,t,e,n,o)=>await a("INSERT INTO"+p(t)+"("+p(e)+m(v(n,(a=>s+p(a))))+")VALUES"+w(i(`,(?${i(",?",E(n))})`,E(o)/(E(n)+1)),1)+"ON CONFLICT("+p(e)+")DO UPDATE SET"+m(v(n,(a=>p(a)+"=excluded."+p(a))),s),o),Q=a=>m(v(a,(()=>"?")),s),X=JSON.parse,Z=B(),aa=B(),ta=(a,t,e,s,n,i,[o,c]=[],y=[])=>{let w,E,d,u=0,f=0;U(Z,y,(()=>0)),U(aa,y,(()=>[]));const p=async a=>(2!=u&&(u=1,await T.schedule((async()=>{await a(),u=0}))),T),T={load:async(e,s)=>await p((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),f=1,d=s((async(e,s)=>{if(s){const t=s();await p((async()=>a.setTransactionChanges(t)))}else await p((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(f&&(n(d),d=void 0,f=0),T),save:async t=>(1!=u&&(u=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}u=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();_(e)&&_(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(l(w,a.delListener),w=void 0,T),schedule:async(...a)=>(h(x(aa,y),...a),await(async()=>{if(!x(Z,y)){for(j(Z,y,1);!r((a=x(aa,y),E=a.shift()));)try{await E()}catch(a){i?.(a)}j(Z,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(T[o]=()=>c),b(T)},ea="store",sa=(a,t,e,s,n,[i],o,c,r)=>{const[l,y,w,E]=K(t,o,n);return ta(a,(async()=>await E((async()=>(await l(),X((await y(i,f))[u]?.[ea]??"null"))))),(async a=>await E((async()=>{var t;await l(),await w(i,f,{[u]:{[ea]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?C.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,c],c)},na=(a,t,e,s,n,[i,o,[c,l,y]],w,E,p)=>{const[T,m,v,A]=K(t,w,n),h=async(a,t)=>await d(H(o,(async([e,s,n,i],o)=>{const c=a[o];t&&void 0===c||await v(e,s,c,n,i,t)}))),O=async(a,t)=>l?await v(y,f,{[u]:a},!0,!0,t):null;return ta(a,(async()=>await A((async()=>{await T();const a=await(async()=>I(L(await d(H(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await m(y,f))[u]:{})();return _(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),r(t)){const[t,e]=a();await h(t),await O(e)}else{const[a,e]=t();await h(a,!0),await O(e,!0)}}))),e,s,n,[p,E],E)},ia="json",oa="autoLoadIntervalSeconds",ca="rowIdColumnName",ra="tableId",la="tableName",ya={mode:ia,[oa]:1},wa={load:0,save:0,[la]:e+"_values"},Ea=(a,t,e,s)=>{const n=B();return M(a,((a,i)=>{const o=w(P(F(t,y(a)?{[e]:a}:a)),0,$(t));r(o[0])||s(i,o[0])||j(n,i,o)})),n},da="pragma ",ua="data_version",fa="schema_version",pa=(a,t,s,n,i,o,r,l,E="getDb")=>{let d,u,p;const[m,v,A,L]=(a=>{const t=(a=>F(ya,y(a)?{storeTableName:a}:a??{}))(a),s=t[oa];if(t.mode==ia){const{storeTableName:a=e}=t;return[1,s,[a],k(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=t,c=w(P(F(wa,o)),0,$(wa)),r=c[2],l=k(r);return[0,s,[Ea(n,{[ra]:null,[ca]:f},ra,(a=>q(l,a)&&a==r)),Ea(i,{[la]:null,[ca]:f,deleteEmptyColumns:0,deleteEmptyTable:0},la,((a,t)=>q(l,t)&&t==r)),c],l]})(t);return(m?sa:na)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+ua))[0][ua],e=(await s(da+fa))[0][fa],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(u??=e)&&n==(p??=n)||(a(),d=t,u=e)}catch{}},e=v,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=u=null,i(t)}),r,A,R(L),l,E)};a.createCrSqliteWasmPersister=(a,t,e,s,n)=>pa(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterCrSqliteWasm={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",v=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),A=a=>0==E(a),h=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),b=Object,g=a=>b.getPrototypeOf(a),
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",v=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),A=a=>0==E(a),h=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),b=Object,g=a=>b.getPrototypeOf(a),C=b.entries,S=b.keys,D=b.freeze,I=(a=[])=>b.fromEntries(a),F=(...a)=>b.assign({},...a),M=(a,t)=>m(C(a),(([a,e])=>t(e,a))),P=a=>b.values(a),$=a=>E(S(a)),_=a=>(a=>!r(a)&&l(g(a),(a=>a==b.prototype||r(g(a))),(()=>!0)))(a)&&0==$(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(N(a,t),a):a?.set(t,e),q=(a,t,e)=>(O(a,t)||W(a,t,e()),j(a,t)),Y=(a,t,e,s=W)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),k=a=>new Set(Array.isArray(a)||r(a)?a:[a]),G=(a,t)=>a?.add(t),J=T+"*FROM",U="FROM pragma_table_",z="WHERE",K=(a,t,e)=>{const n=B();return[async()=>Y(n,I(await u(m(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+Q(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(T+" name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,Y(q(n,t,B),e,((a,t,e)=>{e!=j(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!r(j(j(n,a),t)))(t,e)?I(h(m(await a(J+p(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!_(t)))):{},async(t,e,i,c,o,l=!1)=>{const y=k();M(i??{},(a=>m(S(a??{}),(a=>G(y,a)))));const w=R(y);if(!l&&o&&A(w)&&O(n,t))return await a("DROP TABLE"+p(t)),void W(n,t);if(A(w)||O(n,t)){const s=j(n,t),i=k(H(s));await u([...m(w,(async e=>{N(i,e)||(await a(`ALTER TABLE${p(t)}ADD${p(e)}`),W(s,e,""))})),...!l&&c?m(R(i),(async n=>{n!=e&&(await a(`ALTER TABLE${p(t)}DROP${p(n)}`),W(s,n))})):[]])}else await a(`CREATE TABLE${p(t)}(${p(e)} PRIMARY KEY ON CONFLICT REPLACE${v(m(w,(a=>s+p(a))))});`),W(n,t,B([[e,""],...m(w,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+p(t)+"WHERE 1"):await u(M(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+p(t)+z+p(e)+"=?",[n]):A(w)||await V(a,t,e,S(s),[n,...P(s)])})));else if(A(w))O(n,t)&&await a("DELETE FROM"+p(t)+"WHERE 1");else{const s=h(H(j(n,t)),(a=>a!=e)),c=[],o=[];M(i??{},((a,t)=>{L(c,t,...m(s,(t=>a?.[t]))),L(o,t)})),await V(a,t,e,s,c),await a("DELETE FROM"+p(t)+z+p(e)+"NOT IN("+Q(o)+")",o)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},V=async(a,t,e,n,c)=>await a("INSERT INTO"+p(t)+"("+p(e)+v(m(n,(a=>s+p(a))))+")VALUES"+w(i(`,(?${i(",?",E(n))})`,E(c)/(E(n)+1)),1)+"ON CONFLICT("+p(e)+")DO UPDATE SET"+v(m(n,(a=>p(a)+"=excluded."+p(a))),s),c),Q=a=>v(m(a,(()=>"?")),s),X=JSON.parse,Z=B(),aa=B(),ta=(a,t,e,s,n,i,[c,o]=[],y=[])=>{let w,E,u,d=0,f=0;q(Z,y,(()=>0)),q(aa,y,(()=>[]));const p=async a=>(2!=d&&(d=1,await T.schedule((async()=>{await a(),d=0}))),T),T={load:async(e,s)=>await p((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),f=1,u=s((async(e,s)=>{if(s){const t=s();await p((async()=>a.setTransactionChanges(t)))}else await p((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(f&&(n(u),u=void 0,f=0),T),save:async t=>(1!=d&&(d=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();_(e)&&_(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(l(w,a.delListener),w=void 0,T),schedule:async(...a)=>(L(j(aa,y),...a),await(async()=>{if(!j(Z,y)){for(W(Z,y,1);!r((a=j(aa,y),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Z,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(T[c]=()=>o),D(T)},ea="store",sa=(a,t,e,s,n,[i],c,o,r)=>{const[l,y,w,E]=K(t,c,n);return ta(a,(async()=>await E((async()=>(await l(),X((await y(i,f))[d]?.[ea]??"null"))))),(async a=>await E((async()=>{var t;await l(),await w(i,f,{[d]:{[ea]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,o],o)},na=(a,t,e,s,n,[i,c,[o,l,y]],w,E,p)=>{const[T,v,m,A]=K(t,w,n),L=async(a,t)=>await u(x(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),O=async(a,t)=>l?await m(y,f,{[d]:a},!0,!0,t):null;return ta(a,(async()=>await A((async()=>{await T();const a=await(async()=>I(h(await u(x(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>o?(await v(y,f))[d]:{})();return _(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),r(t)){const[t,e]=a();await L(t),await O(e)}else{const[a,e]=t();await L(a,!0),await O(e,!0)}}))),e,s,n,[p,E],E)},ia="json",ca="autoLoadIntervalSeconds",oa="rowIdColumnName",ra="tableId",la="tableName",ya={mode:ia,[ca]:1},wa={load:0,save:0,[la]:e+"_values"},Ea=(a,t,e,s)=>{const n=B();return M(a,((a,i)=>{const c=w(P(F(t,y(a)?{[e]:a}:a)),0,$(t));r(c[0])||s(i,c[0])||W(n,i,c)})),n},ua="pragma ",da="data_version",fa="schema_version",pa=(a,t,s,n,i,c,r,l,E="getDb")=>{let u,d,p;const[v,m,A,h]=(a=>{const t=(a=>F(ya,y(a)?{storeTableName:a}:a??{}))(a),s=t[ca];if(t.mode==ia){const{storeTableName:a=e}=t;return[1,s,[a],k(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=t,o=w(P(F(wa,c)),0,$(wa)),r=o[2],l=k(r);return[0,s,[Ea(n,{[ra]:null,[oa]:f},ra,(a=>G(l,a)&&a==r)),Ea(i,{[la]:null,[oa]:f,deleteEmptyColumns:0,deleteEmptyTable:0},la,((a,t)=>G(l,t)&&t==r)),o],l]})(t);return(v?sa:na)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ua+da))[0][da],e=(await s(ua+fa))[0][fa],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(u??=t)&&e==(d??=e)&&n==(p??=n)||(a(),u=t,d=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),n((t=>h.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),u=d=null,i(t)}),r,A,R(h),l,E)};a.createElectricSqlPersister=(a,t,e,s,n)=>pa(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return s=({tablename:t})=>a(t),t.notifier.alias(e).forEach(s);var s}))),(a=>a()),s,n,t,"getElectricClient")},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterElectricSql={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a,t){"use strict";const e=a=>typeof a,s="tinybase",n=",",i=e(""),o=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>e(a)==i,E=(a,t,e)=>a.slice(t,e),d=a=>a.length,u=async a=>c.all(a),p="_",f="_id",T=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",v=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),L=a=>0==d(a),h=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],
|
|
1
|
+
var a,t;a=this,t=function(a,t){"use strict";const e=a=>typeof a,s="tinybase",n=",",i=e(""),o=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>e(a)==i,E=(a,t,e)=>a.slice(t,e),d=a=>a.length,u=async a=>c.all(a),p="_",f="_id",T=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",v=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),L=a=>0==d(a),h=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],S=(a,t)=>a?.delete(t),g=Object,C=a=>g.getPrototypeOf(a),D=g.entries,b=g.keys,x=g.freeze,I=(a=[])=>g.fromEntries(a),F=(...a)=>g.assign({},...a),M=(a,t)=>A(D(a),(([a,e])=>t(e,a))),P=a=>g.values(a),$=a=>d(b(a)),_=a=>(a=>!l(a)&&y(C(a),(a=>a==g.prototype||l(C(a))),(()=>!0)))(a)&&0==$(a),B=a=>new Map(a),q=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),j=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>l(e)?(S(a,t),a):a?.set(t,e),Y=(a,t,e)=>(O(a,t)||W(a,t,e()),H(a,t)),k=(a,t,e,s=W)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!l(((a,t)=>y(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),G=a=>new Set(Array.isArray(a)||l(a)?a:[a]),J=(a,t)=>a?.add(t),U=m+"*FROM",z="FROM pragma_table_",K="WHERE",V=(a,t,e)=>{const s=B();return[async()=>k(s,I(await u(A(await a("SELECT name "+z+"list WHERE schema='main'AND type='table'AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(m+" name,type "+z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(s,t,k(Y(s,t,B),e,((a,t,e)=>{e!=H(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(s,t))),async(t,e)=>((a,t)=>!l(H(H(s,a),t)))(t,e)?I(h(A(await a(U+T(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,i,o,c,r=!1)=>{const y=G();M(i??{},(a=>A(b(a??{}),(a=>J(y,a)))));const w=R(y);if(!r&&c&&L(w)&&O(s,t))return await a("DROP TABLE"+T(t)),void W(s,t);if(L(w)||O(s,t)){const n=H(s,t),i=G(q(n));await u([...A(w,(async e=>{S(i,e)||(await a(`ALTER TABLE${T(t)}ADD${T(e)}`),W(n,e,""))})),...!r&&o?A(R(i),(async s=>{s!=e&&(await a(`ALTER TABLE${T(t)}DROP${T(s)}`),W(n,s))})):[]])}else await a(`CREATE TABLE${T(t)}(${T(e)} PRIMARY KEY ON CONFLICT REPLACE${v(A(w,(a=>n+T(a))))});`),W(s,t,B([[e,""],...A(w,(a=>[a,""]))]));if(r)l(i)?await a("DELETE FROM"+T(t)+"WHERE 1"):await u(M(i,(async(s,n)=>{l(s)?await a("DELETE FROM"+T(t)+K+T(e)+"=?",[n]):L(w)||await Q(a,t,e,b(s),[n,...P(s)])})));else if(L(w))O(s,t)&&await a("DELETE FROM"+T(t)+"WHERE 1");else{const n=h(q(H(s,t)),(a=>a!=e)),o=[],c=[];M(i??{},((a,t)=>{N(o,t,...A(n,(t=>a?.[t]))),N(c,t)})),await Q(a,t,e,n,o),await a("DELETE FROM"+T(t)+K+T(e)+"NOT IN("+X(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},Q=async(a,t,e,s,i)=>await a("INSERT INTO"+T(t)+"("+T(e)+v(A(s,(a=>n+T(a))))+")VALUES"+E(o(`,(?${o(",?",d(s))})`,d(i)/(d(s)+1)),1)+"ON CONFLICT("+T(e)+")DO UPDATE SET"+v(A(s,(a=>T(a)+"=excluded."+T(a))),n),i),X=a=>v(A(a,(()=>"?")),n),Z=JSON.parse,aa=B(),ta=B(),ea=(a,t,e,s,n,i,[o,c]=[],r=[])=>{let w,E,d,u=0,p=0;Y(aa,r,(()=>0)),Y(ta,r,(()=>[]));const f=async a=>(2!=u&&(u=1,await T.schedule((async()=>{await a(),u=0}))),T),T={load:async(e,s)=>await f((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),p=1,d=s((async(e,s)=>{if(s){const t=s();await f((async()=>a.setTransactionChanges(t)))}else await f((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(p&&(n(d),d=void 0,p=0),T),save:async t=>(1!=u&&(u=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}u=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();_(e)&&_(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(y(w,a.delListener),w=void 0,T),schedule:async(...a)=>(N(H(ta,r),...a),await(async()=>{if(!H(aa,r)){for(W(aa,r,1);!l((a=H(ta,r),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(aa,r,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(T[o]=()=>c),x(T)},sa="store",na=(a,t,e,s,n,[i],o,c,r)=>{const[l,y,w,E]=V(t,o,n);return ea(a,(async()=>await E((async()=>(await l(),Z((await y(i,f))[p]?.[sa]??"null"))))),(async a=>await E((async()=>{var t;await l(),await w(i,f,{[p]:{[sa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?g.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,c],c)},ia=(a,t,e,s,n,[i,o,[c,r,y]],w,E,d)=>{const[T,m,v,A]=V(t,w,n),L=async(a,t)=>await u(j(o,(async([e,s,n,i],o)=>{const c=a[o];t&&void 0===c||await v(e,s,c,n,i,t)}))),N=async(a,t)=>r?await v(y,f,{[p]:a},!0,!0,t):null;return ea(a,(async()=>await A((async()=>{await T();const a=await(async()=>I(h(await u(j(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await m(y,f))[p]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),l(t)){const[t,e]=a();await L(t),await N(e)}else{const[a,e]=t();await L(a,!0),await N(e,!0)}}))),e,s,n,[d,E],E)},oa="json",ca="autoLoadIntervalSeconds",ra="rowIdColumnName",la="tableId",ya="tableName",wa={mode:oa,[ca]:1},Ea={load:0,save:0,[ya]:s+"_values"},da=(a,t,e,s)=>{const n=B();return M(a,((a,i)=>{const o=E(P(F(t,w(a)?{[e]:a}:a)),0,$(t));l(o[0])||s(i,o[0])||W(n,i,o)})),n},ua="pragma ",pa="data_version",fa="schema_version",Ta=(a,t,e,n,i,o,c,l,y="getDb")=>{let d,u,p;const[T,v,A,L]=(a=>{const t=(a=>F(wa,w(a)?{storeTableName:a}:a??{}))(a),e=t[ca];if(t.mode==oa){const{storeTableName:a=s}=t;return[1,e,[a],G(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=t,c=E(P(F(Ea,o)),0,$(Ea)),r=c[2],l=G(r);return[0,e,[da(n,{[la]:null,[ra]:f},la,(a=>J(l,a)&&a==r)),da(i,{[ya]:null,[ra]:f,deleteEmptyColumns:0,deleteEmptyTable:0},ya,((a,t)=>J(l,t)&&t==r)),c],l]})(t);return(T?na:ia)(a,o?async(a,t)=>(o(a,t),await e(a,t)):e,(a=>{return[(t=async()=>{try{const t=(await e(ua+pa))[0][pa],s=(await e(ua+fa))[0][fa],n=(await e(m+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&s==(u??=s)&&n==(p??=n)||(a(),d=t,u=s)}catch{}},s=v,t(),setInterval(t,1e3*s)),n((t=>L.has(t)?a():0))];var t,s}),(([a,t])=>{r(a),d=u=null,i(t)}),c,A,R(L),l,y)};a.createExpoSqliteNextPersister=(a,e,s,n,i)=>Ta(a,s,(async(a,t=[])=>await e.getAllAsync(a,t)),(a=>t.addDatabaseChangeListener((({tableName:t})=>a(t)))),(a=>a.remove()),n,i,e)},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("expo-sqlite/next")):"function"==typeof define&&define.amd?define(["exports","expo-sqlite/next"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqliteNext={},a["expo-sqlite/next"]);
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>o.all(a),u="_",p="_id",f=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==E(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>o.all(a),u="_",p="_id",f=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==E(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),S=Object,g=a=>S.getPrototypeOf(a),C=S.entries,D=S.keys,b=S.freeze,I=(a=[])=>S.fromEntries(a),F=(...a)=>S.assign({},...a),M=(a,t)=>v(C(a),(([a,e])=>t(e,a))),P=a=>S.values(a),$=a=>E(D(a)),_=a=>(a=>!r(a)&&l(g(a),(a=>a==S.prototype||r(g(a))),(()=>!0)))(a)&&0==$(a),x=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),j=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(R(a,t),a):a?.set(t,e),q=(a,t,e)=>(N(a,t)||W(a,t,e()),H(a,t)),Y=(a,t,e,s=W)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),k=a=>new Set(Array.isArray(a)||r(a)?a:[a]),G=(a,t)=>a?.add(t),J=T+"*FROM",U="FROM pragma_table_",z="WHERE",K=(a,t,e)=>{const n=x();return[async()=>Y(n,I(await d(v(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+Q(t)+")ORDER BY name",t),(async({name:t})=>[t,I(v(await a(T+" name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,Y(q(n,t,x),e,((a,t,e)=>{e!=H(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!r(H(H(n,a),t)))(t,e)?I(L(v(await a(J+f(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!_(t)))):{},async(t,e,i,o,c,l=!1)=>{const y=k();M(i??{},(a=>v(D(a??{}),(a=>G(y,a)))));const w=O(y);if(!l&&c&&A(w)&&N(n,t))return await a("DROP TABLE"+f(t)),void W(n,t);if(A(w)||N(n,t)){const s=H(n,t),i=k(B(s));await d([...v(w,(async e=>{R(i,e)||(await a(`ALTER TABLE${f(t)}ADD${f(e)}`),W(s,e,""))})),...!l&&o?v(O(i),(async n=>{n!=e&&(await a(`ALTER TABLE${f(t)}DROP${f(n)}`),W(s,n))})):[]])}else await a(`CREATE TABLE${f(t)}(${f(e)} PRIMARY KEY ON CONFLICT REPLACE${m(v(w,(a=>s+f(a))))});`),W(n,t,x([[e,""],...v(w,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+f(t)+"WHERE 1"):await d(M(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+f(t)+z+f(e)+"=?",[n]):A(w)||await V(a,t,e,D(s),[n,...P(s)])})));else if(A(w))N(n,t)&&await a("DELETE FROM"+f(t)+"WHERE 1");else{const s=L(B(H(n,t)),(a=>a!=e)),o=[],c=[];M(i??{},((a,t)=>{h(o,t,...v(s,(t=>a?.[t]))),h(c,t)})),await V(a,t,e,s,o),await a("DELETE FROM"+f(t)+z+f(e)+"NOT IN("+Q(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},V=async(a,t,e,n,o)=>await a("INSERT INTO"+f(t)+"("+f(e)+m(v(n,(a=>s+f(a))))+")VALUES"+w(i(`,(?${i(",?",E(n))})`,E(o)/(E(n)+1)),1)+"ON CONFLICT("+f(e)+")DO UPDATE SET"+m(v(n,(a=>f(a)+"=excluded."+f(a))),s),o),Q=a=>m(v(a,(()=>"?")),s),X=JSON.parse,Z=x(),aa=x(),ta=(a,t,e,s,n,i,[o,c]=[],y=[])=>{let w,E,d,u=0,p=0;q(Z,y,(()=>0)),q(aa,y,(()=>[]));const f=async a=>(2!=u&&(u=1,await T.schedule((async()=>{await a(),u=0}))),T),T={load:async(e,s)=>await f((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),p=1,d=s((async(e,s)=>{if(s){const t=s();await f((async()=>a.setTransactionChanges(t)))}else await f((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(p&&(n(d),d=void 0,p=0),T),save:async t=>(1!=u&&(u=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}u=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();_(e)&&_(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(l(w,a.delListener),w=void 0,T),schedule:async(...a)=>(h(H(aa,y),...a),await(async()=>{if(!H(Z,y)){for(W(Z,y,1);!r((a=H(aa,y),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Z,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(T[o]=()=>c),b(T)},ea="store",sa=(a,t,e,s,n,[i],o,c,r)=>{const[l,y,w,E]=K(t,o,n);return ta(a,(async()=>await E((async()=>(await l(),X((await y(i,p))[u]?.[ea]??"null"))))),(async a=>await E((async()=>{var t;await l(),await w(i,p,{[u]:{[ea]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?S.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,c],c)},na=(a,t,e,s,n,[i,o,[c,l,y]],w,E,f)=>{const[T,m,v,A]=K(t,w,n),h=async(a,t)=>await d(j(o,(async([e,s,n,i],o)=>{const c=a[o];t&&void 0===c||await v(e,s,c,n,i,t)}))),N=async(a,t)=>l?await v(y,p,{[u]:a},!0,!0,t):null;return ta(a,(async()=>await A((async()=>{await T();const a=await(async()=>I(L(await d(j(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await m(y,p))[u]:{})();return _(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),r(t)){const[t,e]=a();await h(t),await N(e)}else{const[a,e]=t();await h(a,!0),await N(e,!0)}}))),e,s,n,[f,E],E)},ia="json",oa="autoLoadIntervalSeconds",ca="rowIdColumnName",ra="tableId",la="tableName",ya={mode:ia,[oa]:1},wa={load:0,save:0,[la]:e+"_values"},Ea=(a,t,e,s)=>{const n=x();return M(a,((a,i)=>{const o=w(P(F(t,y(a)?{[e]:a}:a)),0,$(t));r(o[0])||s(i,o[0])||W(n,i,o)})),n},da="pragma ",ua="data_version",pa="schema_version",fa=(a,t,s,n,i,o,r,l,E="getDb")=>{let d,u,f;const[m,v,A,L]=(a=>{const t=(a=>F(ya,y(a)?{storeTableName:a}:a??{}))(a),s=t[oa];if(t.mode==ia){const{storeTableName:a=e}=t;return[1,s,[a],k(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=t,c=w(P(F(wa,o)),0,$(wa)),r=c[2],l=k(r);return[0,s,[Ea(n,{[ra]:null,[ca]:p},ra,(a=>G(l,a)&&a==r)),Ea(i,{[la]:null,[ca]:p,deleteEmptyColumns:0,deleteEmptyTable:0},la,((a,t)=>G(l,t)&&t==r)),c],l]})(t);return(m?sa:na)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+ua))[0][ua],e=(await s(da+pa))[0][pa],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(u??=e)&&n==(f??=n)||(a(),d=t,u=e)}catch{}},e=v,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=u=null,i(t)}),r,A,O(L),l,E)};a.createExpoSqlitePersister=(a,t,e,s,n)=>fa(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),s,n,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqlite={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var t,e;t=this,e=function(t){"use strict";const e=Promise,a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=t=>new e(t),r=async t=>e.all(t),c=(t,e)=>t.map(e),i=(t,...e)=>t.push(...e),d=Object,y=t=>d.getPrototypeOf(t),l=d.
|
|
1
|
+
var t,e;t=this,e=function(t){"use strict";const e=Promise,a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=t=>new e(t),r=async t=>e.all(t),c=(t,e)=>t.map(e),i=(t,...e)=>t.push(...e),d=Object,y=t=>d.getPrototypeOf(t),l=d.entries,u=d.keys,w=d.freeze,p=t=>(t=>!s(t)&&n(y(t),(t=>t==d.prototype||s(y(t))),(()=>!0)))(t)&&0==(t=>u(t).length)(t),h=t=>new Map(t),f=(t,e)=>t?.get(e),v=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},g=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||v(t,e,a()),f(t,e)},b=h(),A=h(),S=globalThis.window,x=["t","v"],j={keyPath:"k"},m=async(t,e)=>{const a=((e,a)=>c(l(e),(([e,a])=>D(t,"put",{k:e,v:a}))))(e);c(await D(t,"getAllKeys"),(o=>((t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)))(e,o)?0:i(a,D(t,"delete",o)))),await r(a)},D=async(t,e,a)=>o(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)}));t.createIndexedDbPersister=(t,e,y=1,l)=>{const u=async(t,a=[],s=0)=>o(((n,o)=>{const i=S.indexedDB.open(e,s?2:void 0);i.onupgradeneeded=()=>s&&c(x,(t=>{try{i.result.createObjectStore(t,j)}catch{}})),i.onsuccess=async()=>{try{const e=i.result.transaction(x,"readwrite"),s=await r(c(x,(async(s,n)=>await t(e.objectStore(s),a[n]))));i.result.close(),n(s)}catch(t){i.result.close(),o(t)}},i.onerror=()=>o("indexedDB.open error")}));return((t,e,a,o,r,c,[d,y]=[],l=[])=>{let u,h,S,x=0,j=0;g(b,l,(()=>0)),g(A,l,(()=>[]));const m=async t=>(2!=x&&(x=1,await D.schedule((async()=>{await t(),x=0}))),D),D={load:async(a,s)=>await m((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(D.stopAutoLoad(),await D.load(a,s),j=1,S=o((async(a,s)=>{if(s){const e=s();await m((async()=>t.setTransactionChanges(e)))}else await m((async()=>{try{t.setContent(a?.()??await e())}catch(t){c?.(t)}}))})),D),stopAutoLoad:()=>(j&&(r(S),S=void 0,j=0),D),save:async e=>(1!=x&&(x=2,await D.schedule((async()=>{try{await a(t.getContent,e)}catch(t){c?.(t)}x=0}))),D),startAutoSave:async()=>(await D.stopAutoSave().save(),u=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();p(a)&&p(s)||D.save((()=>[a,s]))})),D),stopAutoSave:()=>(n(u,t.delListener),u=void 0,D),schedule:async(...t)=>(i(f(A,l),...t),await(async()=>{if(!f(b,l)){for(v(b,l,1);!s((t=f(A,l),h=t.shift()));)try{await h()}catch(t){c?.(t)}v(b,l,0)}var t})(),D),getStore:()=>t,destroy:()=>D.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(D[d]=()=>y),w(D)})(t,(async()=>await u((async t=>((t=[])=>d.fromEntries(t))(c(await D(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await u((async(t,e)=>await m(t,e)),t(),1)),(t=>setInterval(t,1e3*y)),(t=>a(t)),l,["getDbName",e])},t.objectStoreMatch=m},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisterIndexedDb={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e=t(""),s="t",n=(a,t)=>a.startsWith(t),i=Promise,r=a=>null==a,o=(a,t,e)=>r(a)?e?.():t(a),c=(a,t,e)=>a.slice(t,e),l=a=>a.length,f=async a=>i.all(a),y=(a,t)=>a.map(t),h=(a,...t)=>a.push(...t),g=Object,w=(a=[])=>g.fromEntries(a),
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e=t(""),s="t",n=(a,t)=>a.startsWith(t),i=Promise,r=a=>null==a,o=(a,t,e)=>r(a)?e?.():t(a),c=(a,t,e)=>a.slice(t,e),l=a=>a.length,f=async a=>i.all(a),y=(a,t)=>a.map(t),h=(a,...t)=>a.push(...t),g=Object,w=g.entries,u=(a=[])=>g.fromEntries(a),d=(a,t)=>y(w(a),(([a,e])=>t(e,a))),p=(a,t,e)=>(((a,t)=>!r(((a,t)=>o(a,(a=>a[t])))(a,t)))(a,t)||(a[t]=e()),a[t]),S=a=>JSON.stringify(a,((a,t)=>t instanceof Map?g.fromEntries([...t]):t)),P=JSON.parse,m=(a,s,n)=>a+s+(t(n)==e?n:S(n)),x=(a,t,e)=>{const s=l(a);return n(t,a)?[t[s],(e?P:String)(c(t,s+1))]:void 0},b=(a,t)=>((a,t)=>a?.forEach(t))(a,((a,e)=>t(e,a))),T="hasStore",D=u(y(["Origin","Methods","Headers"],(a=>["Access-Control-Allow-"+a,"*"]))),v=async(a,t="")=>!!await a.get(t+T),R=async(a,t="")=>{const e={},n={};return b(await a.list(),((a,i)=>o(x(t,a),(([a,t])=>{if(a==s){const[a,s,n]=P("["+t+"]");p(p(e,a,u),s,u)[n]=i}else"v"==a&&(n[t]=i)})))),[e,n]},C=async(a,t,e)=>a.party.broadcast(m(a.config.messagePrefix,"s",t),e),O=async(a,t,e,i)=>{const o=a.party.storage,c=a.config.storagePrefix,y={[c+T]:1},g=[],w=[];await f(d(t[0],(async(t,n)=>r(t)?!e&&await a.canDelTable(n,i)&&((a,...t)=>a.unshift(...t))(w,V(c,s,n)):await a.canSetTable(n,e,i)&&await f(d(t,(async(t,l)=>r(t)?!e&&await a.canDelRow(n,l,i)&&h(w,V(c,s,n,l)):await a.canSetRow(n,l,e,i)&&await f(d(t,(async(t,f)=>{const w=[n,l,f],u=V(c,s,...w);r(t)?!e&&await a.canDelCell(...w,i)&&h(g,u):await a.canSetCell(...w,t,e,i,await o.get(u))&&(y[u]=t)}))))))))),await f(d(t[1],(async(t,s)=>{const n=c+"v"+s;r(t)?!e&&await a.canDelValue(s,i)&&h(g,n):await a.canSetValue(s,t,e,i,await o.get(n))&&(y[n]=t)}))),0!=l(w)&&b(await o.list(),(a=>w.every((t=>!n(a,t)||h(g,a)&&0)))),await o.delete(g),await o.put(y)},V=(a,t,...e)=>m(a,t,c(S(e),1,-1)),E=async(a,t,e=null)=>new Response(e,{status:t,headers:a.config.responseHeaders});a.TinyBasePartyKitServer=class{constructor(a){this.party=a,this.config={},this.config.storePath??="/store",this.config.messagePrefix??="",this.config.storagePrefix??="",this.config.responseHeaders??=D}async onRequest(a){const{party:{storage:t},config:{storePath:e,storagePrefix:s}}=this;if(new URL(a.url).pathname.endsWith(e)){const e=await v(t,s),n=await a.text();return"PUT"==a.method?e?E(this,205):(await O(this,P(n),!0,a),E(this,201)):E(this,200,e?S(await R(t,s)):"")}return E(this,404)}async onMessage(a,t){const{config:{messagePrefix:e,storagePrefix:s}}=this;await o(x(e,a,1),(async([a,e])=>{"s"==a&&await v(this.party.storage,s)&&(await O(this,e,!1,t),C(this,e,[t.id]))}))}async canSetTable(a,t,e){return!0}async canDelTable(a,t){return!0}async canSetRow(a,t,e,s){return!0}async canDelRow(a,t,e){return!0}async canSetCell(a,t,e,s,n,i,r){return!0}async canDelCell(a,t,e,s){return!0}async canSetValue(a,t,e,s,n){return!0}async canDelValue(a,t){return!0}},a.broadcastTransactionChanges=C,a.hasStoreInStorage=v,a.loadStoreFromStorage=R},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterPartyKitServer={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),E="_",p="_id",f=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",T=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==u(a),h=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),R=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),S=Object,b=a=>S.getPrototypeOf(a),D=S.keys,g=S.freeze,
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),E="_",p="_id",f=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",T=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),A=a=>0==u(a),h=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),R=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),S=Object,b=a=>S.getPrototypeOf(a),C=S.entries,D=S.keys,g=S.freeze,I=(a=[])=>S.fromEntries(a),_=(...a)=>S.assign({},...a),M=(a,t)=>v(C(a),(([a,e])=>t(e,a))),F=a=>S.values(a),P=a=>u(D(a)),$=a=>(a=>!r(a)&&l(b(a),(a=>a==S.prototype||r(b(a))),(()=>!0)))(a)&&0==P(a),B=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>r(e)?(N(a,t),a):a?.set(t,e),k=(a,t,e)=>(R(a,t)||H(a,t,e()),j(a,t)),q=(a,t,e,s=H)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),Y=a=>new Set(Array.isArray(a)||r(a)?a:[a]),G=(a,t)=>a?.add(t),J=m+"*FROM",U="FROM pragma_table_",V="WHERE",z=(a,t,e)=>{const n=B();return[async()=>q(n,I(await d(v(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+Q(t)+")ORDER BY name",t),(async({name:t})=>[t,I(v(await a(m+" name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(n,t,q(k(n,t,B),e,((a,t,e)=>{e!=j(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(n,t))),async(t,e)=>((a,t)=>!r(j(j(n,a),t)))(t,e)?I(h(v(await a(J+f(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!$(t)))):{},async(t,e,i,o,c,l=!1)=>{const y=Y();M(i??{},(a=>v(D(a??{}),(a=>G(y,a)))));const w=O(y);if(!l&&c&&A(w)&&R(n,t))return await a("DROP TABLE"+f(t)),void H(n,t);if(A(w)||R(n,t)){const s=j(n,t),i=Y(W(s));await d([...v(w,(async e=>{N(i,e)||(await a(`ALTER TABLE${f(t)}ADD${f(e)}`),H(s,e,""))})),...!l&&o?v(O(i),(async n=>{n!=e&&(await a(`ALTER TABLE${f(t)}DROP${f(n)}`),H(s,n))})):[]])}else await a(`CREATE TABLE${f(t)}(${f(e)} PRIMARY KEY ON CONFLICT REPLACE${T(v(w,(a=>s+f(a))))});`),H(n,t,B([[e,""],...v(w,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+f(t)+"WHERE 1"):await d(M(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+f(t)+V+f(e)+"=?",[n]):A(w)||await K(a,t,e,D(s),[n,...F(s)])})));else if(A(w))R(n,t)&&await a("DELETE FROM"+f(t)+"WHERE 1");else{const s=h(W(j(n,t)),(a=>a!=e)),o=[],c=[];M(i??{},((a,t)=>{L(o,t,...v(s,(t=>a?.[t]))),L(c,t)})),await K(a,t,e,s,o),await a("DELETE FROM"+f(t)+V+f(e)+"NOT IN("+Q(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},K=async(a,t,e,n,o)=>await a("INSERT INTO"+f(t)+"("+f(e)+T(v(n,(a=>s+f(a))))+")VALUES"+w(i(`,(?${i(",?",u(n))})`,u(o)/(u(n)+1)),1)+"ON CONFLICT("+f(e)+")DO UPDATE SET"+T(v(n,(a=>f(a)+"=excluded."+f(a))),s),o),Q=a=>T(v(a,(()=>"?")),s),X=JSON.parse,Z=B(),aa=B(),ta=(a,t,e,s,n,i,[o,c]=[],y=[])=>{let w,u,d,E=0,p=0;k(Z,y,(()=>0)),k(aa,y,(()=>[]));const f=async a=>(2!=E&&(E=1,await m.schedule((async()=>{await a(),E=0}))),m),m={load:async(e,s)=>await f((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),p=1,d=s((async(e,s)=>{if(s){const t=s();await f((async()=>a.setTransactionChanges(t)))}else await f((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(p&&(n(d),d=void 0,p=0),m),save:async t=>(1!=E&&(E=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}E=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();$(e)&&$(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(l(w,a.delListener),w=void 0,m),schedule:async(...a)=>(L(j(aa,y),...a),await(async()=>{if(!j(Z,y)){for(H(Z,y,1);!r((a=j(aa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}H(Z,y,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(m[o]=()=>c),g(m)},ea="store",sa=(a,t,e,s,n,[i],o,c,r)=>{const[l,y,w,u]=z(t,o,n);return ta(a,(async()=>await u((async()=>(await l(),X((await y(i,p))[E]?.[ea]??"null"))))),(async a=>await u((async()=>{var t;await l(),await w(i,p,{[E]:{[ea]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?S.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,c],c)},na=(a,t,e,s,n,[i,o,[c,l,y]],w,u,f)=>{const[m,T,v,A]=z(t,w,n),L=async(a,t)=>await d(x(o,(async([e,s,n,i],o)=>{const c=a[o];t&&void 0===c||await v(e,s,c,n,i,t)}))),R=async(a,t)=>l?await v(y,p,{[E]:a},!0,!0,t):null;return ta(a,(async()=>await A((async()=>{await m();const a=await(async()=>I(h(await d(x(i,(async([a,t],e)=>[a,await T(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>c?(await T(y,p))[E]:{})();return $(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await m(),r(t)){const[t,e]=a();await L(t),await R(e)}else{const[a,e]=t();await L(a,!0),await R(e,!0)}}))),e,s,n,[f,u],u)},ia="json",oa="autoLoadIntervalSeconds",ca="rowIdColumnName",ra="tableId",la="tableName",ya={mode:ia,[oa]:1},wa={load:0,save:0,[la]:e+"_values"},ua=(a,t,e,s)=>{const n=B();return M(a,((a,i)=>{const o=w(F(_(t,y(a)?{[e]:a}:a)),0,P(t));r(o[0])||s(i,o[0])||H(n,i,o)})),n},da="pragma ",Ea="data_version",pa="schema_version",fa=(a,t,s,n,i,o,r,l,u="getDb")=>{let d,E,f;const[T,v,A,h]=(a=>{const t=(a=>_(ya,y(a)?{storeTableName:a}:a??{}))(a),s=t[oa];if(t.mode==ia){const{storeTableName:a=e}=t;return[1,s,[a],Y(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=t,c=w(F(_(wa,o)),0,P(wa)),r=c[2],l=Y(r);return[0,s,[ua(n,{[ra]:null,[ca]:p},ra,(a=>G(l,a)&&a==r)),ua(i,{[la]:null,[ca]:p,deleteEmptyColumns:0,deleteEmptyTable:0},la,((a,t)=>G(l,t)&&t==r)),c],l]})(t);return(T?sa:na)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(da+Ea))[0][Ea],e=(await s(da+pa))[0][pa],n=(await s(m+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(E??=e)&&n==(f??=n)||(a(),d=t,E=e)}catch{}},e=v,t(),setInterval(t,1e3*e)),n((t=>h.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=E=null,i(t)}),r,A,O(h),l,u)};a.createSqliteWasmPersister=(a,t,e,s,n,i)=>fa(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqliteWasm={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),u=a=>a.length,E=async a=>o.all(a),d="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",v=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),A=a=>0==u(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),S=Object,g=a=>S.getPrototypeOf(a),D=S.keys,
|
|
1
|
+
var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),y=a=>t(a)==n,w=(a,t,e)=>a.slice(t,e),u=a=>a.length,E=async a=>o.all(a),d="_",f="_id",p=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",v=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),A=a=>0==u(a),L=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),S=Object,g=a=>S.getPrototypeOf(a),C=S.entries,D=S.keys,b=S.freeze,I=(a=[])=>S.fromEntries(a),F=(...a)=>S.assign({},...a),M=(a,t)=>m(C(a),(([a,e])=>t(e,a))),P=a=>S.values(a),$=a=>u(D(a)),_=a=>(a=>!r(a)&&l(g(a),(a=>a==S.prototype||r(g(a))),(()=>!0)))(a)&&0==$(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(N(a,t),a):a?.set(t,e),Y=(a,t,e)=>(O(a,t)||W(a,t,e()),j(a,t)),k=(a,t,e,s=W)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),q=a=>new Set(Array.isArray(a)||r(a)?a:[a]),G=(a,t)=>a?.add(t),J=T+"*FROM",U="FROM pragma_table_",z="WHERE",K=(a,t,e)=>{const n=B();return[async()=>k(n,I(await E(m(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+Q(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(T+" name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,k(Y(n,t,B),e,((a,t,e)=>{e!=j(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!r(j(j(n,a),t)))(t,e)?I(L(m(await a(J+p(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!_(t)))):{},async(t,e,i,o,c,l=!1)=>{const y=q();M(i??{},(a=>m(D(a??{}),(a=>G(y,a)))));const w=R(y);if(!l&&c&&A(w)&&O(n,t))return await a("DROP TABLE"+p(t)),void W(n,t);if(A(w)||O(n,t)){const s=j(n,t),i=q(H(s));await E([...m(w,(async e=>{N(i,e)||(await a(`ALTER TABLE${p(t)}ADD${p(e)}`),W(s,e,""))})),...!l&&o?m(R(i),(async n=>{n!=e&&(await a(`ALTER TABLE${p(t)}DROP${p(n)}`),W(s,n))})):[]])}else await a(`CREATE TABLE${p(t)}(${p(e)} PRIMARY KEY ON CONFLICT REPLACE${v(m(w,(a=>s+p(a))))});`),W(n,t,B([[e,""],...m(w,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+p(t)+"WHERE 1"):await E(M(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+p(t)+z+p(e)+"=?",[n]):A(w)||await V(a,t,e,D(s),[n,...P(s)])})));else if(A(w))O(n,t)&&await a("DELETE FROM"+p(t)+"WHERE 1");else{const s=L(H(j(n,t)),(a=>a!=e)),o=[],c=[];M(i??{},((a,t)=>{h(o,t,...m(s,(t=>a?.[t]))),h(c,t)})),await V(a,t,e,s,o),await a("DELETE FROM"+p(t)+z+p(e)+"NOT IN("+Q(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},V=async(a,t,e,n,o)=>await a("INSERT INTO"+p(t)+"("+p(e)+v(m(n,(a=>s+p(a))))+")VALUES"+w(i(`,(?${i(",?",u(n))})`,u(o)/(u(n)+1)),1)+"ON CONFLICT("+p(e)+")DO UPDATE SET"+v(m(n,(a=>p(a)+"=excluded."+p(a))),s),o),Q=a=>v(m(a,(()=>"?")),s),X=JSON.parse,Z=B(),aa=B(),ta=(a,t,e,s,n,i,[o,c]=[],y=[])=>{let w,u,E,d=0,f=0;Y(Z,y,(()=>0)),Y(aa,y,(()=>[]));const p=async a=>(2!=d&&(d=1,await T.schedule((async()=>{await a(),d=0}))),T),T={load:async(e,s)=>await p((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),f=1,E=s((async(e,s)=>{if(s){const t=s();await p((async()=>a.setTransactionChanges(t)))}else await p((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(f&&(n(E),E=void 0,f=0),T),save:async t=>(1!=d&&(d=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),w=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();_(e)&&_(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(l(w,a.delListener),w=void 0,T),schedule:async(...a)=>(h(j(aa,y),...a),await(async()=>{if(!j(Z,y)){for(W(Z,y,1);!r((a=j(aa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}W(Z,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o&&(T[o]=()=>c),b(T)},ea="store",sa=(a,t,e,s,n,[i],o,c,r)=>{const[l,y,w,u]=K(t,o,n);return ta(a,(async()=>await u((async()=>(await l(),X((await y(i,f))[d]?.[ea]??"null"))))),(async a=>await u((async()=>{var t;await l(),await w(i,f,{[d]:{[ea]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?S.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,c],c)},na=(a,t,e,s,n,[i,o,[c,l,y]],w,u,p)=>{const[T,v,m,A]=K(t,w,n),h=async(a,t)=>await E(x(o,(async([e,s,n,i],o)=>{const c=a[o];t&&void 0===c||await m(e,s,c,n,i,t)}))),O=async(a,t)=>l?await m(y,f,{[d]:a},!0,!0,t):null;return ta(a,(async()=>await A((async()=>{await T();const a=await(async()=>I(L(await E(x(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await v(y,f))[d]:{})();return _(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),r(t)){const[t,e]=a();await h(t),await O(e)}else{const[a,e]=t();await h(a,!0),await O(e,!0)}}))),e,s,n,[p,u],u)},ia="json",oa="autoLoadIntervalSeconds",ca="rowIdColumnName",ra="tableId",la="tableName",ya={mode:ia,[oa]:1},wa={load:0,save:0,[la]:e+"_values"},ua=(a,t,e,s)=>{const n=B();return M(a,((a,i)=>{const o=w(P(F(t,y(a)?{[e]:a}:a)),0,$(t));r(o[0])||s(i,o[0])||W(n,i,o)})),n},Ea="pragma ",da="data_version",fa="schema_version",pa=(a,t,s,n,i,o,r,l,u="getDb")=>{let E,d,p;const[v,m,A,L]=(a=>{const t=(a=>F(ya,y(a)?{storeTableName:a}:a??{}))(a),s=t[oa];if(t.mode==ia){const{storeTableName:a=e}=t;return[1,s,[a],q(a)]}const{tables:{load:n={},save:i={}}={},values:o={}}=t,c=w(P(F(wa,o)),0,$(wa)),r=c[2],l=q(r);return[0,s,[ua(n,{[ra]:null,[ca]:f},ra,(a=>G(l,a)&&a==r)),ua(i,{[la]:null,[ca]:f,deleteEmptyColumns:0,deleteEmptyTable:0},la,((a,t)=>G(l,t)&&t==r)),c],l]})(t);return(v?sa:na)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(Ea+da))[0][da],e=(await s(Ea+fa))[0][fa],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(d??=e)&&n==(p??=n)||(a(),E=t,d=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=d=null,i(t)}),r,A,R(L),l,u)},Ta="change";a.createSqlite3Persister=(a,t,e,s,n)=>pa(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t))),new o(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),s,n,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqlite3={});
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var t,e;t=this,e=function(t,e){"use strict";const a="t",s="v",n=t=>null==t,o=(t,e,a)=>n(t)?a?.():e(t),r=t=>t.length,i=t=>t.shift(),c=Object,d=t=>c.getPrototypeOf(t),l=c.
|
|
1
|
+
var t,e;t=this,e=function(t,e){"use strict";const a="t",s="v",n=t=>null==t,o=(t,e,a)=>n(t)?a?.():e(t),r=t=>t.length,i=t=>t.shift(),c=Object,d=t=>c.getPrototypeOf(t),l=c.entries,u=c.keys,y=c.freeze,g=(t=[])=>c.fromEntries(t),p=(t,e)=>!n(((t,e)=>o(t,(t=>t[e])))(t,e)),f=(t,e)=>((t,e)=>t.map(e))(l(t),(([t,a])=>e(a,t))),h=t=>(t=>!n(t)&&o(d(t),(t=>t==c.prototype||n(d(t))),(()=>!0)))(t)&&0==(t=>r(u(t)))(t),v=(t,e,a)=>(p(t,e)||(t[e]=a()),t[e]),w=t=>new Map(t),S=(t,e)=>t?.get(e),A=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),O=(t,e,a)=>{return n(a)?(s=t,o=e,s?.delete(o),t):t?.set(e,a);var s,o},b=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||O(t,e,a()),S(t,e)},j=w(),J=w(),L="delete",N=t=>[t.get(a),t.get(s)],C=(t,a,s,o)=>{const r=n(a)?t:t.get(a)??t.set(a,new e.Map);let i;return f(s,((t,e)=>{o(r,e,t)&&(i=1)})),r.forEach(((t,e)=>{p(s,e)||(r.delete(e),i=1)})),n(a)||r.size||t.delete(a),i};t.createYjsPersister=(t,c,d="tinybase",l)=>{const u=c.getMap(d);return((t,e,a,s,r,c,[d,l]=[],u=[])=>{let g,p,f,v=0,w=0;b(j,u,(()=>0)),b(J,u,(()=>[]));const A=async t=>(2!=v&&(v=1,await L.schedule((async()=>{await t(),v=0}))),L),L={load:async(a,s)=>await A((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},n={})=>(L.stopAutoLoad(),await L.load(a,n),w=1,f=s((async(a,s)=>{if(s){const e=s();await A((async()=>t.setTransactionChanges(e)))}else await A((async()=>{try{t.setContent(a?.()??await e())}catch(t){c?.(t)}}))})),L),stopAutoLoad:()=>(w&&(r(f),f=void 0,w=0),L),save:async e=>(1!=v&&(v=2,await L.schedule((async()=>{try{await a(t.getContent,e)}catch(t){c?.(t)}v=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();h(a)&&h(s)||L.save((()=>[a,s]))})),L),stopAutoSave:()=>(o(g,t.delListener),g=void 0,L),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(S(J,u),...t),await(async()=>{if(!S(j,u)){for(O(j,u,1);!n(p=i(S(J,u)));)try{await p()}catch(t){c?.(t)}O(j,u,0)}})(),L),getStore:()=>t,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(L[d]=()=>l),y(L)})(t,(async()=>u.size?[u.get(a).toJSON(),u.get(s).toJSON()]:void 0),(async(t,r)=>c.transact((()=>((t,r,i)=>{t.size||(t.set(a,new e.Map),t.set(s,new e.Map));const[c,d]=N(t),l=()=>{u=1};let u=1;if(o(i?.(),(([t,e])=>{u=0,f(t,((t,e)=>u?0:n(t)?c.delete(e):o(c.get(e),(e=>f(t,((t,a)=>u?0:n(t)?e.delete(a):o(e.get(a),(e=>f(t,((t,a)=>n(t)?e.delete(a):e.set(a,t)))),l)))),l))),f(e,((t,e)=>u?0:n(t)?d.delete(e):d.set(e,t)))})),u){const[t,e]=r();C(c,void 0,t,((t,e,a)=>C(c,e,a,((t,e,a)=>C(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),C(d,void 0,e,((t,e,a)=>{d.get(e)!==a&&d.set(e,a)}))}})(u,t,r)))),(t=>{const e=e=>t(void 0,(()=>((t,e)=>{if(1==r(e)&&(n=e[0].path,0==r(n)))return[t.get(a).toJSON(),t.get(s).toJSON()];var n;const[c,d]=N(t),l={},u={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>i(t)==a?o(i(t),(a=>{const s=v(l,a,g),n=c.get(a);o(i(t),(t=>{const a=v(s,t,g),o=n.get(t);A(e,((t,{action:e})=>a[t]=e==L?null:o.get(t)))}),(()=>A(e,((t,{action:e})=>s[t]=e==L?null:n.get(t)?.toJSON()))))}),(()=>A(e,((t,{action:e})=>l[t]=e==L?null:c.get(t)?.toJSON())))):A(e,((t,{action:e})=>u[t]=e==L?null:d.get(t)))))})(e),[l,u]})(u,e)));return u.observeDeep(e),e}),(t=>{u.unobserveDeep(t)}),l,["getYDoc",c])}},"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisterYjs={},t.yjs);
|
|
Binary file
|
package/lib/umd/queries.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(!0),r=t(0),o=t(t),a="Listener",i="Result",l="Ids",d="Table",c="Row",u=c+"Count",f=c+l,h="Sorted"+c+l,g="Cell",v=g+l,w=Math.max,L=Math.min,y=isFinite,R=e=>null==e,p=(e,t,n)=>R(e)?n?.():t(e),T=e=>t(e)==o,b=e=>Array.isArray(e),m=e=>e.length,C=()=>{},Q=(e,t)=>e.every(t),S=(e,t)=>e.forEach(t),I=e=>E(e,((e,t)=>e+t),0),x=e=>0==m(e),E=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),j=Object,D=j.
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(!0),r=t(0),o=t(t),a="Listener",i="Result",l="Ids",d="Table",c="Row",u=c+"Count",f=c+l,h="Sorted"+c+l,g="Cell",v=g+l,w=Math.max,L=Math.min,y=isFinite,R=e=>null==e,p=(e,t,n)=>R(e)?n?.():t(e),T=e=>t(e)==o,b=e=>Array.isArray(e),m=e=>e.length,C=()=>{},Q=(e,t)=>e.every(t),S=(e,t)=>e.forEach(t),I=e=>E(e,((e,t)=>e+t),0),x=e=>0==m(e),E=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),j=Object,D=j.entries,k=j.freeze,z=e=>e?.size??0,A=(e,t)=>e?.has(t)??!1,F=e=>R(e)||0==z(e),B=e=>[...e?.values()??[]],O=e=>e.clear(),W=(e,t)=>e?.forEach(t),q=(e,t)=>e?.delete(t),G=e=>new Map(e),H=(e,t)=>e?.get(t),J=(e,t)=>W(e,((e,n)=>t(n,e))),K=(e,t,n)=>R(n)?(q(e,t),e):e?.set(t,n),N=(e,t,n)=>(A(e,t)||K(e,t,n()),H(e,t)),P=(e,t,n,s,r=0)=>p((n?N:H)(e,t[r],r>m(t)-2?n:G),(o=>{if(r>m(t)-2)return s?.(o)&&K(e,t[r]),o;const a=P(o,t,n,s,r+1);return F(o)&&K(e,t[r]),a})),U=e=>new Set(b(e)||R(e)?e:[e]),V=(e,t)=>e?.add(t),X=G([["avg",[(e,t)=>I(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>w(...e),(e,t)=>w(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:w(t,e)]],["min",[e=>L(...e),(e,t)=>L(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:L(t,e)]],["sum",[e=>I(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Y=((e,o)=>{const l=new WeakMap;return e=>{l.has(e)||l.set(e,(e=>{const o=e.createStore,l=o(),w=o(),L=G(),{addListener:I,callListeners:E,delListener:j}=w,[Y,Z,$,_,ee,,,te,,ne,se,re,oe,ae]=((e,t,n,s,r)=>{const o=e.hasRow,a=G(),i=G(),l=G(),d=G(),c=G(),u=G(),f=(t,n,...s)=>{const r=N(u,t,U);return S(s,(t=>V(r,t)&&n&&e.callListener(t))),s},h=(t,...n)=>p(H(u,t),(s=>{S(x(n)?B(s):n,(t=>{e.delListener(t),q(s,t)})),F(s)&&K(u,t)})),g=(e,t)=>{K(a,e,t),A(i,e)||(K(i,e,!0),K(d,e,G()),K(c,e,G()),r(l))},v=e=>{K(a,e),K(i,e),K(d,e),K(c,e),h(e),r(l)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>J(i,e),e=>A(i,e),e=>H(a,e),e=>H(i,e),(e,t)=>K(i,e,t),g,(t,s,r,a,i)=>{g(t,s);const l=G(),u=G(),v=H(d,t),w=H(c,t),L=t=>{const r=n=>e.getCell(s,t,n),d=H(v,t),c=o(s,t)?n(a(r,t)):void 0;var f,h;if(d===c||b(d)&&b(c)&&(h=c,m(f=d)===m(h)&&Q(f,((e,t)=>h[t]===e)))||K(l,t,[d,c]),!R(i)){const e=H(w,t),n=o(s,t)?i(r,t):void 0;e!=n&&K(u,t,n)}},y=e=>{r((()=>{W(l,(([,e],t)=>K(v,t,e))),W(u,((e,t)=>K(w,t,e)))}),l,u,v,w,e),O(l),O(u)};J(v,L),e.hasTable(s)&&S(e.getRowIds(s),(e=>{A(v,e)||L(e)})),y(!0),h(t),f(t,0,e.addRowListener(s,null,((e,t,n)=>L(n))),e.addTableListener(s,(()=>y())))},v,e=>s(e,l),()=>J(u,v),f,h]})(e,0,C,I,E),ie=(e,t,...n)=>S(n,(n=>V(N(N(L,t,G),e,U),n))),le=e=>{p(H(L,e),(e=>{J(e,((e,t)=>W(t,(t=>e.delListener(t))))),O(e)})),S([w,l],(t=>t.delTable(e)))},de=(e,t,n)=>ie(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ce={setQueryDefinition:(o,a,i)=>{te(o,a),le(o);const d=[],c=[[null,[a,null,null,[],G()]]],u=[],f=[],h=[];i({select:(e,t)=>{const n=T(e)?[m(d)+"",e]:[R(t)?e:t,n=>n(e,t)];return M(d,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=R(n)||T(t)?null:t,r=R(s)?t:n,o=[e,[e,s,T(r)?r:e=>e(r),[],G()]];return M(c,o),{as:e=>o[0]=e}},where:(e,t,n)=>M(u,T(e)?e:R(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,T(t)?[t,n,s,r]:H(X,t)??[(e,t)=>t]]];return M(f,o),{as:e=>o[0]=e}},having:(e,t)=>M(h,T(e)?e:n=>n(e)===t)});const g=G(d);if(F(g))return ce;const v=G(c);J(v,((e,[,t])=>p(H(v,t),(({3:t})=>R(e)?0:M(t,e)))));const L=G(f);let b=l;if(F(L)&&x(h))b=w;else{de(o,b,w);const e=G();J(L,((t,[n,s])=>V(N(e,n,U),[t,s])));const a=U();J(g,(t=>A(e,t)?0:V(a,t)));const i=G(),l=(a,i,l,d)=>p(a,(([c,u,f,g])=>{J(i,((o,[a])=>{const i=N(c,o,G),u=H(i,l),f=d?void 0:a;if(u!==f){const a=U([[u,f]]),d=z(i);K(i,l,f),W(H(e,o),(([e,o])=>{const l=((e,t,n,s,r,o=!1)=>{if(F(n))return;const[a,i,l,d]=r;return o||=R(e),W(s,(([n,s])=>{o||(e=R(n)?i?.(e,s,t++):R(s)?l?.(e,n,t--):d?.(e,s,n,t),o||=R(e))})),o?a(B(n),z(n)):e})(g[e],d,i,a,o);g[e]=R((e=>{const o=t(e);return(e=>e==n||e==s)(o)||o==r&&y(e)?o:void 0})(l))?null:l}))}})),F(u)||!Q(h,(e=>e((e=>g[e]))))?w.delRow(o,f):R(f)?a[2]=w.addRow(o,g):w.setRow(o,f,g)}));ie(b,o,b.addRowListener(o,null,((t,n,s,r)=>{const d=[],c=[],u=G(),f=b.hasRow(o,s);let h=!f;W(a,(e=>{const[t,n,a]=r(o,s,e);M(d,n),M(c,a),h||=t})),J(e,(e=>{const[t,,n]=r(o,s,e);(h||t)&&K(u,e,[n])})),h&&l(P(i,d,void 0,(([,e])=>(q(e,s),F(e)))),u,s,1),f&&l(P(i,c,(()=>{const e={};return W(a,(t=>e[t]=b.getCell(o,s,t))),[G(),U(),void 0,e]}),(([,e])=>{V(e,s)})),u,s)})))}de(o,e,b);const C=(t,n,s,r)=>{const i=t=>e.getCell(n,s,t);S(r,(n=>{const[s,,r,a,l]=H(v,n),d=r?.(i,t),[c,u]=H(l,t)??[];d!=c&&(R(u)||ae(o,u),K(l,t,R(d)?null:[d,...oe(o,1,e.addRowListener(s,d,(()=>C(t,s,d,a))))]))})),(t=>{const n=(n,s)=>e.getCell(...R(s)?[a,t,n]:n===a?[a,t,s]:[H(v,n)?.[0],H(H(v,n)?.[4],t)?.[0],s]);b.transaction((()=>Q(u,(e=>e(n)))?J(g,((e,s)=>((e,t,n,s,r)=>R(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,t,e,s(n,t)))):b.delRow(o,t)))})(t)},{3:I}=H(v,null);return b.transaction((()=>oe(o,1,e.addRowListener(a,null,((t,n,s)=>{e.hasRow(a,s)?C(s,a,s,I):(b.delRow(o,s),W(v,(({4:e})=>p(H(e,s),(([,t])=>{ae(o,t),K(e,s)})))))}))))),ce},delQueryDefinition:e=>(le(e),ne(e),ce),getStore:Y,getQueryIds:Z,forEachQuery:$,hasQuery:_,getTableId:ee,addQueryIdsListener:e=>se((()=>e(ce))),delListener:e=>(j(e),ce),destroy:re,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=w.getListenerStats();return s}};var ue;return ue=([e,t],n)=>{S(e?["get","has","forEach"]:["get"],(e=>ce[e+i+n]=(...t)=>w[e+n](...t))),ce["add"+i+n+a]=(...e)=>{return w["add"+n+a](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](ce,...s)),!0);var s,r}},((e,t)=>{e.map(t)})(D({[d]:[1,1],[d+v]:[0,1],[u]:[0,1],[f]:[0,1],[h]:[0,5],[c]:[1,2],[v]:[0,2],[g]:[1,3]}),(([e,t])=>ue(t,e))),k(ce)})(e));return l.get(e)}})();e.createQueries=Y},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
|
package/lib/umd/queries.js.gz
CHANGED
|
Binary file
|
package/lib/umd/relationships.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=e=>null==e,r=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),a=e=>e.length,d=(e,t)=>e.forEach(t),l=(e,...t)=>e.push(...t),c=Object.freeze,
|
|
1
|
+
var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=e=>null==e,r=(e,t,n)=>o(e)?n?.():t(e),i=e=>Array.isArray(e),a=e=>e.length,d=(e,t)=>e.forEach(t),l=(e,...t)=>e.push(...t),c=Object.freeze,u=(e,t)=>e?.has(t)??!1,f=e=>o(e)||0==(e=>e?.size??0)(e),h=e=>[...e?.values()??[]],R=e=>e.clear(),p=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),L=e=>new Map(e),w=(e,t)=>e?.get(t),y=(e,t)=>p(e,((e,n)=>t(n,e))),I=(e,t,n)=>o(n)?(g(e,t),e):e?.set(t,n),v=(e,t,n)=>(u(e,t)||I(e,t,n()),w(e,t)),b=(e,t,n,s,o=0)=>r((n?v:w)(e,t[o],o>a(t)-2?n:L),(r=>{if(o>a(t)-2)return s?.(r)&&I(e,t[o]),r;const i=b(r,t,n,s,o+1);return f(r)&&I(e,t[o]),i})),T=e=>new Set(i(e)||o(e)?e:[e]),m=(e,t)=>e?.add(t),k=/^\d+$/,E=((e,E)=>{const x=new WeakMap;return e=>{x.has(e)||x.set(e,(e=>{const E=L(),x=L(),S=L(),j=L(),[z,A,D]=(e=>{let t;const[s,i]=(()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??n+t++,t=>{k.test(t)&&a(e)<1e3&&l(e,t)}]})(),c=L();return[(e,o,r,i=[],a=(()=>[]))=>{t??=P;const d=s(1);return I(c,d,[e,o,r,i,a]),m(b(o,r??[n],T),d),d},(e,s,...o)=>d(((e,t=[n])=>{const s=[],o=(e,n)=>n==a(t)?l(s,e):null===t[n]?p(e,(e=>o(e,n+1))):d([t[n],null],(t=>o(w(e,t),n+1)));return o(e,0),s})(e,s),(e=>p(e,(e=>w(c,e)[0](t,...s??[],...o))))),e=>r(w(c,e),(([,t,s])=>(b(t,s??[n],void 0,(t=>(g(t,e),f(t)?1:0))),I(c,e),i(e),s))),e=>r(w(c,e),(([e,,n=[],s,r])=>{const i=(...l)=>{const c=a(l);c==a(n)?e(t,...l,...r(l)):o(n[c])?d(s[c]?.(...l)??[],(e=>i(...l,e))):i(...l,n[c])};i()}))]})(),[M,B,C,O,W,$,,,q,F,G,H]=((e,t,s,l,c)=>{const b=e.hasRow,k=L(),E=L(),x=L(),S=L(),j=L(),z=L(),A=(t,n,...s)=>{const o=v(z,t,T);return d(s,(t=>m(o,t)&&n&&e.callListener(t))),s},D=(t,...n)=>r(w(z,t),(s=>{d(0==a(n)?h(s):n,(t=>{e.delListener(t),g(s,t)})),f(s)&&I(z,t)})),M=(e,t)=>{I(k,e,t),u(E,e)||(I(E,e,[L(),L(),L(),L()]),I(S,e,L()),I(j,e,L()),c(x))},B=e=>{I(k,e),I(E,e),I(S,e),I(j,e),D(e),c(x)};return[()=>e,()=>{return e=k,[...e?.keys()??[]];var e},e=>y(E,e),e=>u(E,e),e=>w(k,e),e=>w(E,e),(e,t)=>I(E,e,t),M,(t,s,r,l,c)=>{M(t,s);const f=L(),h=L(),g=w(S,t),v=w(j,t),T=t=>{const r=n=>e.getCell(s,t,n),d=w(g,t),u=b(s,t)?(R=l(r,t),o(R)?void 0:R+n):void 0;var R,p,L,y;if(d===u||i(d)&&i(u)&&(L=u,a(p=d)===a(L)&&(y=(e,t)=>L[t]===e,p.every(y)))||I(f,t,[d,u]),!o(c)){const e=w(v,t),n=b(s,t)?c(r,t):void 0;e!=n&&I(h,t,n)}},m=e=>{r((()=>{p(f,(([,e],t)=>I(g,t,e))),p(h,((e,t)=>I(v,t,e)))}),f,h,g,v,e),R(f),R(h)};y(g,T),e.hasTable(s)&&d(e.getRowIds(s),(e=>{u(g,e)||T(e)})),m(!0),D(t),A(t,0,e.addRowListener(s,null,((e,t,n)=>T(n))),e.addTableListener(s,(()=>m())))},B,e=>l(e,x),()=>y(z,B),A,D]})(e,0,0,z,A),J=(e,t,n)=>r($(e),(([s,,r])=>{if(!u(r,t)){const i=T();if(W(e)!=N(e))m(i,t);else{let e=t;for(;!o(e)&&!u(i,e);)m(i,e),e=w(s,e)}if(n)return i;I(r,t,i)}return w(r,t)})),K=(e,t)=>r($(e),(([,,e])=>I(e,t))),N=e=>w(E,e),P={setRelationshipDefinition:(e,i,a,d)=>{return I(E,e,a),q(e,i,((t,n)=>{const s=T(),i=T(),a=T(),[d,l]=$(e);p(n,(([t,n],c)=>{o(t)||(m(i,t),r(w(l,t),(e=>{g(e,c),f(e)&&I(l,t)}))),o(n)||(m(i,n),u(l,n)||I(l,n,T()),m(w(l,n),c)),m(s,c),I(d,c,n),y(w(j,e),(t=>{u(J(e,t),c)&&m(a,t)}))})),t(),p(s,(t=>A(x,[e,t]))),p(i,(t=>A(S,[e,t]))),p(a,(t=>{K(e,t),A(j,[e,t])}))}),t(l=d)==s?e=>e(l):l??(()=>n)),P;var l},delRelationshipDefinition:e=>(I(E,e),F(e),P),getStore:M,getRelationshipIds:B,forEachRelationship:t=>C((n=>t(n,(t=>e.forEachRow(W(n),t))))),hasRelationship:O,getLocalTableId:W,getRemoteTableId:N,getRemoteRowId:(e,t)=>w($(e)?.[0],t),getLocalRowIds:(e,t)=>h(w($(e)?.[1],t)),getLinkedRowIds:(e,t)=>o($(e))?[t]:h(J(e,t,!0)),addRelationshipIdsListener:G,addRemoteRowIdListener:(e,t,n)=>z(n,x,[e,t]),addLocalRowIdsListener:(e,t,n)=>z(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(J(e,t),z(n,j,[e,t])),delListener:e=>(K(...D(e)??[]),P),destroy:H,getListenerStats:()=>({})};return c(P)})(e));return x.get(e)}})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
|
|
Binary file
|