tinybase 4.0.0-beta.0 → 4.0.0-beta.2
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/persister-browser.cjs +1 -0
- package/lib/cjs/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persister-file.cjs +1 -0
- package/lib/cjs/persister-file.cjs.gz +0 -0
- package/lib/cjs/persister-remote.cjs +1 -0
- package/lib/cjs/persister-remote.cjs.gz +0 -0
- package/lib/cjs/persister-yjs.cjs +1 -1
- package/lib/cjs/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.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.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/persister-browser.cjs +1 -0
- package/lib/cjs-es6/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persister-file.cjs +1 -0
- package/lib/cjs-es6/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persister-remote.cjs +1 -0
- package/lib/cjs-es6/persister-remote.cjs.gz +0 -0
- package/lib/cjs-es6/persister-yjs.cjs +1 -1
- package/lib/cjs-es6/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/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.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/checkpoints.js +3 -3
- package/lib/debug/indexes.js +3 -3
- package/lib/debug/metrics.js +3 -3
- package/lib/debug/persister-browser.js +147 -0
- package/lib/debug/persister-file.js +140 -0
- package/lib/debug/persister-remote.js +159 -0
- package/lib/debug/persister-yjs.js +234 -40
- package/lib/debug/persisters.js +43 -133
- package/lib/debug/queries.js +5 -5
- package/lib/debug/relationships.js +3 -3
- package/lib/debug/store.js +137 -87
- package/lib/debug/tinybase.js +179 -215
- package/lib/debug/tools.js +9 -9
- 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/persister-browser.js +1 -0
- package/lib/es6/persister-browser.js.gz +0 -0
- package/lib/es6/persister-file.js +1 -0
- package/lib/es6/persister-file.js.gz +0 -0
- package/lib/es6/persister-remote.js +1 -0
- package/lib/es6/persister-remote.js.gz +0 -0
- package/lib/es6/persister-yjs.js +1 -1
- package/lib/es6/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.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.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/persister-browser.js +1 -0
- package/lib/persister-browser.js.gz +0 -0
- package/lib/persister-file.js +1 -0
- package/lib/persister-file.js.gz +0 -0
- package/lib/persister-remote.js +1 -0
- package/lib/persister-remote.js.gz +0 -0
- package/lib/persister-yjs.js +1 -1
- package/lib/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.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/persister-browser.d.ts +85 -0
- package/lib/types/persister-file.d.ts +41 -0
- package/lib/types/persister-remote.d.ts +60 -0
- package/lib/types/persister-yjs.d.ts +70 -8
- package/lib/types/persisters.d.ts +73 -181
- package/lib/types/queries.d.ts +52 -52
- package/lib/types/store.d.ts +499 -139
- package/lib/types/tools.d.ts +16 -16
- package/lib/types/ui-react.d.ts +56 -47
- package/lib/types/with-schemas/internal/ui-react.d.ts +2 -2
- package/lib/types/with-schemas/persister-browser.d.ts +103 -0
- package/lib/types/with-schemas/persister-file.d.ts +50 -0
- package/lib/types/with-schemas/persister-remote.d.ts +71 -0
- package/lib/types/with-schemas/persister-yjs.d.ts +72 -9
- package/lib/types/with-schemas/persisters.d.ts +99 -223
- package/lib/types/with-schemas/queries.d.ts +52 -52
- package/lib/types/with-schemas/store.d.ts +595 -153
- package/lib/types/with-schemas/tools.d.ts +16 -16
- package/lib/types/with-schemas/ui-react.d.ts +54 -45
- 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/persister-browser.js +1 -0
- package/lib/umd/persister-browser.js.gz +0 -0
- package/lib/umd/persister-file.js +1 -0
- package/lib/umd/persister-file.js.gz +0 -0
- package/lib/umd/persister-remote.js +1 -0
- package/lib/umd/persister-remote.js.gz +0 -0
- package/lib/umd/persister-yjs.js +1 -1
- package/lib/umd/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.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.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/persister-browser.js +1 -0
- package/lib/umd-es6/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persister-file.js +1 -0
- package/lib/umd-es6/persister-file.js.gz +0 -0
- package/lib/umd-es6/persister-remote.js +1 -0
- package/lib/umd-es6/persister-remote.js.gz +0 -0
- package/lib/umd-es6/persister-yjs.js +1 -1
- package/lib/umd-es6/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/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.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +15 -15
- package/readme.md +2 -2
package/bin/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#! /usr/bin/env node
|
|
2
|
-
import{resolve as t,dirname as e}from"path";import{readFileSync as r,writeFileSync as s}from"fs";import{createStore as a}from"tinybase";import{createTools as o}from"tinybase/tools";import{fileURLToPath as i}from"url";const n=JSON.parse,
|
|
2
|
+
import{resolve as t,dirname as e}from"path";import{readFileSync as r,writeFileSync as s}from"fs";import{createStore as a}from"tinybase";import{createTools as o}from"tinybase/tools";import{fileURLToPath as i}from"url";const n="utf8",m=JSON.parse,c=Object,p=(...t)=>{return e=t=>process.stdout.write(t+"\n"),t.forEach(e);var e},d=t=>m(r(t,n)),l=(e,r,a,o)=>{const i=t(e,r);p(o.padStart(23)+": "+i),s(i,a,n)},u=()=>{var t,e;p("","tinybase <command>","","Usage:",""),t=f,e=([,t,e],r)=>p(` tinybase ${r} ${t}`," - "+e,""),((t,e)=>{t.map(e)})(c.entries(t),(([t,r])=>e(r,t))),p("See also http://tinybase.org/guides/developer-tools/command-line/","")},f={help:[u,"","print this message"],version:[()=>p(d(t(e(i(import.meta.url)),"../package.json")).version),"","get the current TinyBase version"],getStoreApi:[async(t,e,r)=>{try{const[s,i,n,m]=await(t=>{const e=d(t);return o(a().setSchema(...(r=e,Array.isArray(r)?e:[e])));var r})(t).getPrettyStoreApi(e);l(r,e+".d.ts",s,"Definition"),l(r,e+".ts",i,"Implementation"),l(r,e+"-ui-react.d.ts",n,"UI React definition"),l(r,e+"-ui-react.tsx",m,"UI React implementation")}catch{process.stderr.write("ERROR: provide a valid schemaFile, storeName, and outputDir\n")}},"<schemaFile> <storeName> <outputDir>","generate .d.ts, .ts, and .tsx API files from a schema file"]};(()=>{const[,,t,...e]=process.argv;(f[t]?.[0]??u)(...e)})();
|
package/lib/checkpoints.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,
|
|
1
|
+
const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),f=(e,t)=>e?.get(t),g=(e,t,n)=>c(n)?(p(e,t),e):e?.set(t,n),k=(e,t,n)=>(d(e,t)||g(e,t,n()),f(e,t)),L=(e,t,r,s,o=0)=>i((r?k:f)(e,t[o],o>n(t)-2?r:C),(l=>{if(o>n(t)-2)return s?.(l)&&g(e,t[o]),l;const c=L(l,t,r,s,o+1);return u(l)&&g(e,t[o]),c})),v=e=>new Set(Array.isArray(e)||c(e)?e:[e]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[n=>(n?l(e):null)??""+t++,t=>{w.test(t)&&n(e)<1e3&&s(e,t)}]})(),d=C();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o(1);var i,a;return g(d,c,[e,t,n,s,l]),i=L(t,n??[""],v),a=c,i?.add(a),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?h(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(f(e,t),c+1)));return l(e,0),o})(e,o),(e=>h(e,(e=>f(d,e)[0](r,...o??[],...l))))),e=>i(f(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),g(d,e),a(e),n))),e=>i(f(d,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=f(O,t);h(n,((t,n)=>h(t,((t,r)=>h(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),h(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{g(O,e),g(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=k(A,t,C),l=k(e,n,C),c=k(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(g(l,r))&&u(g(e,n))&&u(g(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=k(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(g(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,g(O,y,[A,I]),Y(y,e),A=C(),I=C(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&f(T,e)!==t&&(g(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>f(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
|
package/lib/checkpoints.js.gz
CHANGED
|
Binary file
|
package/lib/cjs/checkpoints.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,
|
|
1
|
+
"use strict";const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),k=(e,t)=>e?.get(t),f=(e,t,n)=>c(n)?(p(e,t),e):e?.set(t,n),g=(e,t,n)=>(d(e,t)||f(e,t,n()),k(e,t)),L=(e,t,r,s,o=0)=>i((r?g:k)(e,t[o],o>n(t)-2?r:C),(l=>{if(o>n(t)-2)return s?.(l)&&f(e,t[o]),l;const c=L(l,t,r,s,o+1);return u(l)&&f(e,t[o]),c})),v=e=>new Set(Array.isArray(e)||c(e)?e:[e]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[n=>(n?l(e):null)??""+t++,t=>{w.test(t)&&n(e)<1e3&&s(e,t)}]})(),d=C();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o(1);var i,a;return f(d,c,[e,t,n,s,l]),i=L(t,n??[""],v),a=c,i?.add(a),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?h(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(k(e,t),c+1)));return l(e,0),o})(e,o),(e=>h(e,(e=>k(d,e)[0](r,...o??[],...l))))),e=>i(k(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),f(d,e),a(e),n))),e=>i(k(d,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=k(O,t);h(n,((t,n)=>h(t,((t,r)=>h(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),h(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{f(O,e),f(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=g(A,t,C),l=g(e,n,C),c=g(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(f(l,r))&&u(f(e,n))&&u(f(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=g(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(f(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,f(O,y,[A,I]),Y(y,e),A=C(),I=C(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&k(T,e)!==t&&(f(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>k(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();exports.createCheckpoints=S;
|
|
Binary file
|
package/lib/cjs/indexes.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=(e,t)=>e.every(t),o=(e,t)=>r(e,((n,s)=>0==s||t(e[s-1],n)<=0)),c=(e,t)=>e.sort(t),l=(e,t)=>e.forEach(t),d=e=>e.length,a=(e,...t)=>e.push(...t),i=e=>null==e,u=(e,t,n)=>i(e)?n?.():t(e),h=e=>Array.isArray(e),f=Object.freeze,I=(e,t)=>e?.has(t)??!1,g=e=>i(e)||0==(e=>e.size)(e),S=e=>[...e?.values()??[]],v=e=>e.clear(),w=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),x=e=>new Map(e),p=e=>[...e?.keys()??[]],y=(e,t)=>e?.get(t),E=(e,t)=>w(e,((e,n)=>t(n,e))),R=(e,t,n)=>i(n)?(L(e,t),e):e?.set(t,n),b=(e,t,n)=>(I(e,t)||R(e,t,n()),y(e,t)),T=(e,t,n,s,r=0)=>u((n?b:y)(e,t[r],r>d(t)-2?n:x),(o=>{if(r>d(t)-2)return s?.(o)&&R(e,t[r]),o;const c=T(o,t,n,s,r+1);return g(o)&&R(e,t[r]),c})),k=e=>new Set(h(e)||i(e)?e:[e]),z=(e,t)=>e?.add(t),A=(s,r)=>e(s)==n?e=>e(s):s??(()=>r??t),C=(e,t)=>e<t?-1:1,D=/^\d+$/,M=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=x(),M=x(),[j,m,O,W,$,q,B,,F,G,H]=((e,t,n)=>{const s=e.hasRow,o=x(),c=x(),a=x(),f=x(),T=x(),A=(t,n,...s)=>{const r=b(T,t,k);return l(s,(t=>z(r,t)&&n&&e.callListener(t))),s},C=(t,...n)=>u(y(T,t),(s=>{l(0==d(n)?S(s):n,(t=>{e.delListener(t),L(s,t)})),g(s)&&R(T,t)})),D=(e,n)=>{R(o,e,n),I(c,e)||(R(c,e,t()),R(a,e,x()),R(f,e,x()))},M=e=>{R(o,e),R(c,e),R(a,e),R(f,e),C(e)};return[()=>e,()=>p(o),e=>E(c,e),e=>I(c,e),e=>y(o,e),e=>y(c,e),(e,t)=>R(c,e,t),D,(t,o,c,u,g)=>{D(t,o);const S=x(),L=x(),p=y(a,t),b=y(f,t),T=t=>{const c=n=>e.getCell(o,t,n),l=y(p,t),a=s(o,t)?n(u(c,t)):void 0;var f,I;if(l===a||h(l)&&h(a)&&(I=a,d(f=l)===d(I)&&r(f,((e,t)=>I[t]===e)))||R(S,t,[l,a]),!i(g)){const e=y(b,t),n=s(o,t)?g(c,t):void 0;e!=n&&R(L,t,n)}},k=e=>{c((()=>{w(S,(([,e],t)=>R(p,t,e))),w(L,((e,t)=>R(b,t,e)))}),S,L,p,b,e),v(S),v(L)};E(p,T),e.hasTable(o)&&l(e.getRowIds(o),(e=>{I(p,e)||T(e)})),k(!0),C(t),A(t,0,e.addRowListener(o,null,((e,t,n)=>T(n))),e.addTableListener(o,(()=>k())))},M,()=>E(T,M),A,C]})(e,x,(e=>{return i(e)?t:h(e)?(n=s,e.map(n)):s(e);var n})),[J,K,N]=(e=>{let n;const[s,r]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{D.test(t)&&d(e)<1e3&&a(e,t)}]})(),o=x();return[(e,r,c,l=[],d=(()=>[]))=>{n??=Q;const a=s(1);return R(o,a,[e,r,c,l,d]),z(T(r,c??[t],k),a),a},(e,s,...r)=>l(((e,n=[t])=>{const s=[],r=(e,t)=>t==d(n)?a(s,e):null===n[t]?w(e,(e=>r(e,t+1))):l([n[t],null],(n=>r(y(e,n),t+1)));return r(e,0),s})(e,s),(e=>w(e,(e=>y(o,e)[0](n,...s??[],...r))))),e=>u(y(o,e),(([,n,s])=>(T(n,s??[t],void 0,(t=>(L(t,e),g(t)?1:0))),R(o,e),r(e),s))),e=>u(y(o,e),(([e,,t=[],s,r])=>{const o=(...c)=>{const a=d(c);a==d(t)?e(n,...c,...r(c)):i(t[a])?l(s[a]?.(...c)??[],(e=>o(...c,e))):o(...c,t[a])};o()}))]})(),P=(t,n,s)=>{const r=$(t);w(s,((t,s)=>n(s,(n=>w(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},Q={setIndexDefinition:(e,t,s,r,l,d=C)=>{const a=i(l)?void 0:([e],[t])=>l(e,t);return F(e,t,((t,s,l,h,f,S)=>{let v=0;const p=k(),b=k(),T=q(e);if(w(s,(([e,t],n)=>{const s=k(e),o=k(t);w(s,(e=>L(o,e)?L(s,e):0)),w(s,(e=>{z(p,e),u(y(T,e),(t=>{L(t,n),g(t)&&(R(T,e),v=1)}))})),w(o,(e=>{z(p,e),I(T,e)||(R(T,e,k()),v=1),z(y(T,e),n),i(r)||z(b,e)}))})),t(),g(f)||(S?E(T,(e=>z(b,e))):E(l,(e=>u(y(h,e),(e=>z(b,e))))),w(b,(e=>{const t=(t,n)=>d(y(f,t),y(f,n),e),n=[...y(T,e)];o(n,t)||(R(T,e,k(c(n,t))),z(p,e))}))),(v||S)&&!i(a)){const t=[...T];o(t,a)||(B(e,x(c(t,a))),v=1)}v&&K(n,[e]),w(p,(t=>K(M,[e,t])))}),A(s),u(r,A)),Q},delIndexDefinition:e=>(G(e),Q),getStore:j,getIndexIds:m,forEachIndex:e=>O(((t,n)=>e(t,(e=>P(t,e,n))))),forEachSlice:(e,t)=>P(e,t,q(e)),hasIndex:W,hasSlice:(e,t)=>I(q(e),t),getTableId:$,getSliceIds:e=>p(q(e)),getSliceRowIds:(e,t)=>S(y(q(e),t)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>J(n,M,[e,t]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return f(Q)})(e)),n.get(e))})();exports.createIndexes=M;
|
package/lib/cjs/indexes.cjs.gz
CHANGED
|
Binary file
|
package/lib/cjs/metrics.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",r=e(t),n=e(e),s=(e,t)=>e.forEach(t),i=e=>c(e,((e,t)=>e+t),0),o=e=>e.length,c=(e,t,r)=>e.reduce(t,r),a=(e,...t)=>e.push(...t),d=Math.max,l=Math.min,u=isFinite,v=e=>null==e,h=(e,t,r)=>v(e)?r?.():t(e),M=e=>Array.isArray(e),f=()=>{},g=Object.freeze,L=e=>e.size,m=(e,t)=>e?.has(t)??!1,w=e=>v(e)||0==L(e),y=e=>[...e?.values()??[]],p=e=>e.clear(),b=(e,t)=>e?.forEach(t),x=(e,t)=>e?.delete(t),E=e=>new Map(e),I=(e,t)=>e?.get(t),R=(e,t)=>b(e,((e,r)=>t(r,e))),S=(e,t,r)=>v(r)?(x(e,t),e):e?.set(t,r),T=(e,t,r)=>(m(e,t)||S(e,t,r()),I(e,t)),k=(e,t,r,n,s=0)=>h((r?T:I)(e,t[s],s>o(t)-2?r:E),(i=>{if(s>o(t)-2)return n?.(i)&&S(e,t[s]),i;const c=k(i,t,r,n,s+1);return w(i)&&S(e,t[s]),c})),z=E([["avg",[(e,t)=>i(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=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:d(t,e)]],["min",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:l(t,e)]],["sum",[e=>i(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),A=e=>new Set(M(e)||v(e)?e:[e]),D=(e,t)=>e?.add(t),N=/^\d+$/,j=(i=>{const c=new WeakMap;return i=>(c.has(i)||c.set(i,(i=>{const c=E(),[d,l,j,C,F,O,W,,$,q,B]=((e,r,n)=>{const i=e.hasRow,c=E(),a=E(),d=E(),l=E(),u=E(),f=(t,r,...n)=>{const i=T(u,t,A);return s(n,(t=>D(i,t)&&r&&e.callListener(t))),n},g=(t,...r)=>h(I(u,t),(n=>{s(0==o(r)?y(n):r,(t=>{e.delListener(t),x(n,t)})),w(n)&&S(u,t)})),L=(e,t)=>{S(c,e,t),m(a,e)||(S(a,e,r()),S(d,e,E()),S(l,e,E()))},k=e=>{S(c,e),S(a,e),S(d,e),S(l,e),g(e)};return[()=>e,()=>{return e=c,[...e?.keys()??[]];var e},e=>R(a,e),e=>m(a,e),e=>I(c,e),e=>I(a,e),(e,t)=>S(a,e,t),L,(r,n,c,a,u)=>{L(r,n);const h=E(),w=E(),y=I(d,r),x=I(l,r),T=r=>{const s=t=>e.getCell(n,r,t),c=I(y,r),d=i(n,r)?(l=a(s,r),isNaN(l)||v(l)||!0===l||!1===l||l===t?void 0:1*l):void 0;var l,f,g,L;if(c===d||M(c)&&M(d)&&(g=d,o(f=c)===o(g)&&(L=(e,t)=>g[t]===e,f.every(L)))||S(h,r,[c,d]),!v(u)){const e=I(x,r),t=i(n,r)?u(s,r):void 0;e!=t&&S(w,r,t)}},k=e=>{c((()=>{b(h,(([,e],t)=>S(y,t,e))),b(w,((e,t)=>S(x,t,e)))}),h,w,y,x,e),p(h),p(w)};R(y,T),e.hasTable(n)&&s(e.getRowIds(n),(e=>{m(y,e)||T(e)})),k(!0),g(r),f(r,0,e.addRowListener(n,null,((e,t,r)=>T(r))),e.addTableListener(n,(()=>k())))},k,()=>R(u,k),f,g]})(i,f),[G,H,J]=(e=>{let r;const[n,i]=(()=>{const e=[];let r=0;return[n=>(n?e.shift():null)??t+r++,t=>{N.test(t)&&o(e)<1e3&&a(e,t)}]})(),c=E();return[(e,s,i,o=[],a=(()=>[]))=>{r??=K;const d=n(1);return S(c,d,[e,s,i,o,a]),D(k(s,i??[t],A),d),d},(e,n,...i)=>s(((e,r=[t])=>{const n=[],i=(e,t)=>t==o(r)?a(n,e):null===r[t]?b(e,(e=>i(e,t+1))):s([r[t],null],(r=>i(I(e,r),t+1)));return i(e,0),n})(e,n),(e=>b(e,(e=>I(c,e)[0](r,...n??[],...i))))),e=>h(I(c,e),(([,r,n])=>(k(r,n??[t],void 0,(t=>(x(t,e),w(t)?1:0))),S(c,e),i(e),n))),e=>h(I(c,e),(([e,,t=[],n,i])=>{const c=(...a)=>{const d=o(a);d==o(t)?e(r,...a,...i(a)):v(t[d])?s(n[d]?.(...a)??[],(e=>c(...a,e))):c(...a,t[d])};c()}))]})(),K={setMetricDefinition:(t,s,i,o,a,d,l)=>{const h=e(i)==n?[i,a,d,l]:I(z,i)??I(z,"sum");return $(t,s,((e,r,n,s,i,o)=>{const a=O(t),d=L(s);o||=v(a),e();let l=((e,t,r,n,s,i=!1)=>{if(w(r))return;const[o,c,a,d]=s;return i||=v(e),b(n,(([r,n])=>{i||(e=v(r)?c?.(e,n,t++):v(n)?a?.(e,r,t--):d?.(e,n,r,t),i||=v(e))})),i?o(y(r),L(r)):e})(a,d,s,r,h,o);u(l)||(l=void 0),l!=a&&(W(t,l),H(c,[t],l,a))}),(1,e(M=o)==r?e=>e(M):M??(()=>1))),K;var M},delMetricDefinition:e=>(q(e),K),getStore:d,getMetricIds:l,forEachMetric:j,hasMetric:C,getTableId:F,getMetric:O,addMetricListener:(e,t)=>G(t,c,[e]),delListener:e=>(J(e),K),destroy:B,getListenerStats:()=>({})};return g(K)})(i)),c.get(i))})();exports.createMetrics=j;
|
package/lib/cjs/metrics.cjs.gz
CHANGED
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=Object.freeze,e="storage",a=globalThis.window,s=(s,r,n)=>((s,o,i,c,u)=>{let d,v,y=0,l=!1;const S=async t=>{2!=y&&(y=1,await t(),y=0)},g={load:async(t,e)=>(await S((async()=>{let a;try{a=await o()}catch{}s.setContent(a??[t,e])})),g),startAutoLoad:async(t,i)=>(g.stopAutoLoad(),await g.load(t,i),l=!0,v=(t=>{const i=t=>{t.storageArea===n&&t.key===r&&(async(t,e)=>{await S((async()=>{if(e)s.setTransactionChanges(e());else try{s.setContent(t?.()??await o())}catch{}}))})((()=>JSON.parse(t.newValue)))};return a.addEventListener(e,i),i})(),g),stopAutoLoad:()=>{return l&&(t=v,a.removeEventListener(e,t),v=void 0,l=!1),g;var t},save:async t=>(1!=y&&(y=2,await(async t=>{return n.setItem(r,(e=t(),JSON.stringify(e,((t,e)=>{return e instanceof Map?(a=(t,[e,a])=>(t[e]=a,t),s={},[...e].reduce(a,s)):e;var a,s}))));var e})(s.getContent),y=0),g),startAutoSave:async()=>(await g.stopAutoSave().save(),d=s.addDidFinishTransactionListener(((t,e)=>g.save(e))),g),stopAutoSave:()=>{var t,e;return t=d,e=s.delListener,null==t||e(t),g},getStore:()=>s,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return t(g)})(s,(async()=>JSON.parse(n.getItem(r))));exports.createLocalPersister=(t,e)=>s(t,e,localStorage),exports.createSessionPersister=(t,e)=>s(t,e,sessionStorage);
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=require("fs/promises"),a=require("fs");const e="utf8",s=Object.freeze;exports.createFilePersister=(r,n)=>((r,o,i,c,u)=>{let y,d,v=0,l=!1;const w=async t=>{2!=v&&(v=1,await t(),v=0)},p={load:async(t,a)=>(await w((async()=>{let e;try{e=await o()}catch{}r.setContent(e??[t,a])})),p),startAutoLoad:async(t,e)=>{return p.stopAutoLoad(),await p.load(t,e),l=!0,s=async(t,a)=>{await w((async()=>{if(a)r.setTransactionChanges(a());else try{r.setContent(t?.()??await o())}catch{}}))},d=a.watch(n,(()=>s())),p;var s},stopAutoLoad:()=>{return l&&(t=d,t?.close(),d=void 0,l=!1),p;var t},save:async a=>(1!=v&&(v=2,await(async a=>{try{await t.writeFile(n,(s=a(),JSON.stringify(s,((t,a)=>{return a instanceof Map?(e=(t,[a,e])=>(t[a]=e,t),s={},[...a].reduce(e,s)):a;var e,s}))),e)}catch{}var s})(r.getContent),v=0),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=r.addDidFinishTransactionListener(((t,a)=>p.save(a))),p),stopAutoSave:()=>{var t,a;return t=y,a=r.delListener,null==t||a(t),p},getStore:()=>r,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return s(p)})(r,(async()=>JSON.parse(await t.readFile(n,e))));
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const t=t=>null==t,a=Object.freeze,e=t=>t.headers.get("ETag");exports.createRemotePersister=(s,n,r,o)=>{let c;return((s,i,d,u,y)=>{let v,l,p=0,w=!1;const h=async t=>{2!=p&&(p=1,await t(),p=0)},A={load:async(t,a)=>(await h((async()=>{let e;try{e=await i()}catch{}s.setContent(e??[t,a])})),A),startAutoLoad:async(a,r)=>{return A.stopAutoLoad(),await A.load(a,r),w=!0,d=async(t,a)=>{await h((async()=>{if(a)s.setTransactionChanges(a());else try{s.setContent(t?.()??await i())}catch{}}))},l=setInterval((async()=>{const a=await fetch(n,{method:"HEAD"}),s=e(a);t(c)||t(s)||s==c||(c=s,d())}),1e3*o),A;var d},stopAutoLoad:()=>(w&&(clearInterval(l),l=void 0,w=!1),A),save:async t=>(1!=p&&(p=2,await(async t=>{return await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>{return a instanceof Map?(e=(t,[a,e])=>(t[a]=e,t),s={},[...a].reduce(e,s)):a;var e,s})))});var a})(s.getContent),p=0),A),startAutoSave:async()=>(await A.stopAutoSave().save(),v=s.addDidFinishTransactionListener(((t,a)=>A.save(a))),A),stopAutoSave:()=>{var a,e;return a=v,e=s.delListener,t(a)||e(a),A},getStore:()=>s,destroy:()=>A.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return a(A)})(s,(async()=>{const t=await fetch(n);return c=e(t),JSON.parse(await t.text())}))};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const t=t=>null==t,
|
|
1
|
+
"use strict";var t=require("yjs");const e=t=>t.length,a=t=>t.shift(),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,r=o.freeze,c=()=>({}),i=(t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)),l=(t,e)=>((t,e)=>t.map(e))(o.entries(t),(([t,a])=>e(a,t))),g=(t,e,a)=>(i(t,e)||(t[e]=a()),t[e]),u=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),d="delete",v=t=>[t.get("t"),t.get("v")],p=(e,a,n,o)=>{const r=s(a)?e:e.get(a)??e.set(a,new t.Map);let c;return l(n,((t,e)=>{o(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{i(n,e)||(r.delete(e),c=1)})),s(a)||r.size||e.delete(a),c};exports.createYjsPersister=(o,i,y="tinybase")=>{const h=i.getMap(y);return((o,y,S,w,f)=>{let A,O,J=0,L=!1;const N=async t=>{2!=J&&(J=1,await t(),J=0)},b={load:async(t,e)=>(await N((async()=>{let a;try{a=await y()}catch{}o.setContent(a??[t,e])})),b),startAutoLoad:async(t,s)=>(b.stopAutoLoad(),await b.load(t,s),L=!0,O=(t=>{const s=t=>(async(t,e)=>{await N((async()=>{if(e)o.setTransactionChanges(e());else try{o.setContent(t?.()??await y())}catch{}}))})(void 0,(()=>((t,s)=>{if(1==e(s)&&(o=s[0].path,0==e(o)))return[t.get("t").toJSON(),t.get("v").toJSON()];var o;const[r,i]=v(t),l={},p={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>"t"==a(t)?n(a(t),(s=>{const o=g(l,s,c),i=r.get(s);n(a(t),(t=>{const a=g(o,t,c),s=i.get(t);u(e,((t,{action:e})=>a[t]=e==d?null:s.get(t)))}),(()=>u(e,((t,{action:e})=>o[t]=e==d?null:i.get(t)?.toJSON()))))}),(()=>u(e,((t,{action:e})=>l[t]=e==d?null:r.get(t)?.toJSON())))):u(e,((t,{action:e})=>p[t]=e==d?null:i.get(t)))))})(s),[l,p]})(h,t)));return h.observeDeep(s),s})(),b),stopAutoLoad:()=>{return L&&(t=O,h.unobserveDeep(t),O=void 0,L=!1),b;var t},save:async e=>(1!=J&&(J=2,await(async(e,a)=>i.transact((()=>((e,a,o)=>{(e=>{e.size||(e.set("t",new t.Map),e.set("v",new t.Map))})(e);const[r,c]=v(e),i=()=>{g=1};let g=1;if(n(o?.(),(([t,e])=>{g=0,l(t,((t,e)=>g?0:s(t)?r.delete(e):n(r.get(e),(e=>l(t,((t,a)=>g?0:s(t)?e.delete(a):n(e.get(a),(e=>l(t,((t,a)=>s(t)?e.delete(a):e.set(a,t)))),i)))),i))),l(e,((t,e)=>g?0:s(t)?c.delete(e):c.set(e,t)))})),g){const[t,e]=a();p(r,void 0,t,((t,e,a)=>p(r,e,a,((t,e,a)=>p(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),p(c,void 0,e,((t,e,a)=>{c.get(e)!==a&&c.set(e,a)}))}})(h,e,a))))(o.getContent,e),J=0),b),startAutoSave:async()=>(await b.stopAutoSave().save(),A=o.addDidFinishTransactionListener(((t,e)=>b.save(e))),b),stopAutoSave:()=>(n(A,o.delListener),b),getStore:()=>o,destroy:()=>b.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(b)})(o,(async()=>h.size?[h.get("t").toJSON(),h.get("v").toJSON()]:void 0))};
|
|
Binary file
|
package/lib/cjs/persisters.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";const t=Object.freeze;exports.createCustomPersister=(a,e,s,o,n)=>{let r,c,i=0,u=!1;const d=async t=>{2!=i&&(i=1,await t(),i=0)},y={load:async(t,s)=>(await d((async()=>{let o;try{o=await e()}catch{}a.setContent(o??[t,s])})),y),startAutoLoad:async(t,s)=>(y.stopAutoLoad(),await y.load(t,s),u=!0,c=o((async(t,s)=>{await d((async()=>{if(s)a.setTransactionChanges(s());else try{a.setContent(t?.()??await e())}catch{}}))})),y),stopAutoLoad:()=>(u&&(n(c),c=void 0,u=!1),y),save:async t=>(1!=i&&(i=2,await s(a.getContent,t),i=0),y),startAutoSave:async()=>(await y.stopAutoSave().save(),r=a.addDidFinishTransactionListener(((t,a)=>y.save(a))),y),stopAutoSave:()=>{var t,e;return t=r,e=a.delListener,null==t||e(t),y},getStore:()=>a,destroy:()=>y.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return t(y)};
|
|
Binary file
|
package/lib/cjs/queries.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o=(e,t)=>e.every(t),
|
|
1
|
+
"use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Row",c=i+l,d="Sorted"+i+l,u="Cell",h=u+l,g=(e,t)=>e.every(t),v=(e,t)=>e.forEach(t),w=e=>R(e,((e,t)=>e+t),0),f=e=>e.length,L=e=>0==f(e),R=(e,t,n)=>e.reduce(t,n),y=(e,...t)=>e.push(...t),T=Math.max,b=Math.min,p=isFinite,C=e=>null==e,m=(e,t,n)=>C(e)?n?.():t(e),Q=t=>e(t)==r,S=e=>Array.isArray(e),I=()=>{},E=Object,M=E.freeze,x=e=>e.size,D=(e,t)=>e?.has(t)??!1,F=e=>C(e)||0==x(e),j=e=>[...e?.values()??[]],k=e=>e.clear(),z=(e,t)=>e?.forEach(t),A=(e,t)=>e?.delete(t),W=e=>new Map(e),O=(e,t)=>e?.get(t),q=(e,t)=>z(e,((e,n)=>t(n,e))),B=(e,t,n)=>C(n)?(A(e,t),e):e?.set(t,n),G=(e,t,n)=>(D(e,t)||B(e,t,n()),O(e,t)),H=(e,t,n,s,r=0)=>m((n?G:O)(e,t[r],r>f(t)-2?n:W),(o=>{if(r>f(t)-2)return s?.(o)&&B(e,t[r]),o;const a=H(o,t,n,s,r+1);return F(o)&&B(e,t[r]),a})),J=e=>new Set(S(e)||C(e)?e:[e]),K=(e,t)=>e?.add(t),N=W([["avg",[(e,t)=>w(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=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),P=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[w,R,T,b,P,,,U,,V,X,Y,Z]=((e,t,n)=>{const s=e.hasRow,r=W(),o=W(),a=W(),l=W(),i=W(),c=(t,n,...s)=>{const r=G(i,t,J);return v(s,(t=>K(r,t)&&n&&e.callListener(t))),s},d=(t,...n)=>m(O(i,t),(s=>{v(L(n)?j(s):n,(t=>{e.delListener(t),A(s,t)})),F(s)&&B(i,t)})),u=(e,t)=>{B(r,e,t),D(o,e)||(B(o,e,!0),B(a,e,W()),B(l,e,W()))},h=e=>{B(r,e),B(o,e),B(a,e),B(l,e),d(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>q(o,e),e=>D(o,e),e=>O(r,e),e=>O(o,e),(e,t)=>B(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const w=W(),L=W(),R=O(a,t),y=O(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=O(R,t),l=s(r,t)?n(i(o,t)):void 0;var c,d;if(a===l||S(a)&&S(l)&&(d=l,f(c=a)===f(d)&&g(c,((e,t)=>d[t]===e)))||B(w,t,[a,l]),!C(h)){const e=O(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&B(L,t,n)}},b=e=>{o((()=>{z(w,(([,e],t)=>B(R,t,e))),z(L,((e,t)=>B(y,t,e)))}),w,L,R,y,e),k(w),k(L)};q(R,T),e.hasTable(r)&&v(e.getRowIds(r),(e=>{D(R,e)||T(e)})),b(!0),d(t),c(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>q(i,h),c,d]})(r,0,I),$=l(),_=l(),ee=W(),te=(e,t,...n)=>v(n,(n=>K(G(G(ee,t,W),e,J),n))),ne=e=>{m(O(ee,e),(e=>{q(e,((e,t)=>z(t,(t=>e.delListener(t))))),k(e)})),v([_,$],(t=>t.delTable(e)))},se=(e,t,n)=>te(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),re={setQueryDefinition:(o,a,l)=>{U(o,a),ne(o);const i=[],c=[[null,[a,null,null,[],W()]]],d=[],u=[],h=[];l({select:(e,t)=>{const n=Q(e)?[f(i)+"",e]:[C(t)?e:t,n=>n(e,t)];return y(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=C(n)||Q(t)?null:t,r=C(s)?t:n,o=[e,[e,s,Q(r)?r:e=>e(r),[],W()]];return y(c,o),{as:e=>o[0]=e}},where:(e,t,n)=>y(d,Q(e)?e:C(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,Q(t)?[t,n,s,r]:O(N,t)??[(e,t)=>t]]];return y(u,o),{as:e=>o[0]=e}},having:(e,t)=>y(h,Q(e)?e:n=>n(e)===t)});const w=W(i);if(F(w))return re;const R=W(c);q(R,((e,[,t])=>m(O(R,t),(({3:t})=>C(e)?0:y(t,e)))));const T=W(u);let b=$;if(F(T)&&L(h))b=_;else{se(o,b,_);const r=W();q(T,((e,[t,n])=>K(G(r,t,J),[e,n])));const a=J();q(w,(e=>D(r,e)?0:K(a,e)));const l=W(),i=(a,l,i,c)=>m(a,(([d,u,v,w])=>{q(l,((o,[a])=>{const l=G(d,o,W),u=O(l,i),h=c?void 0:a;if(u!==h){const a=J([[u,h]]),c=x(l);B(l,i,h),z(O(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(F(n))return;const[a,l,i,c]=r;return o||=C(e),z(s,(([n,s])=>{o||(e=C(n)?l?.(e,s,t++):C(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=C(e))})),o?a(j(n),x(n)):e})(w[r],c,l,a,o);w[r]=C((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&p(r)?o:void 0})(i))?null:i}))}})),F(u)||!g(h,(e=>e((e=>w[e]))))?_.delRow(o,v):C(v)?a[2]=_.addRow(o,w):_.setRow(o,v,w)}));te(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const c=[],d=[],u=W(),h=b.hasRow(o,n);let g=!h;z(a,(e=>{const[t,r,a]=s(o,n,e);y(c,r),y(d,a),g||=t})),q(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&B(u,e,[r])})),g&&i(H(l,c,void 0,(([,e])=>(A(e,n),F(e)))),u,n,1),h&&i(H(l,d,(()=>{const e={};return z(a,(t=>e[t]=b.getCell(o,n,t))),[W(),J(),void 0,e]}),(([,e])=>{K(e,n)})),u,n)})))}se(o,r,b);const S=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);v(s,(t=>{const[n,,s,a,i]=O(R,t),c=s?.(l,e),[d,u]=O(i,e)??[];c!=d&&(C(u)||Z(o,u),B(i,e,C(c)?null:[c,...Y(o,1,r.addRowListener(n,c,(()=>S(e,n,c,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...C(n)?[a,e,t]:t===a?[a,e,n]:[O(R,t)?.[0],O(O(R,t)?.[4],e)?.[0],n]);b.transaction((()=>g(d,(e=>e(t)))?q(w,((n,s)=>((e,t,n,s,r)=>C(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:I}=O(R,null);return b.transaction((()=>Y(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?S(n,a,n,I):(b.delRow(o,n),z(R,(({4:e})=>m(O(e,n),(([,t])=>{Z(o,t),B(e,n)})))))}))))),re},delQueryDefinition:e=>(ne(e),V(e),re),getStore:w,getQueryIds:R,forEachQuery:T,hasQuery:b,getTableId:P,delListener:e=>(_.delListener(e),re),destroy:X,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=_.getListenerStats();return s}};var oe,ae;return oe={Table:[1,1],[c]:[0,1],[d]:[0,5],[i]:[1,2],[h]:[0,2],[u]:[1,3]},ae=([e,t],n)=>{v(e?["get","has","forEach"]:["get"],(e=>re[e+a+n]=(...t)=>_[e+n](...t))),re["add"+a+n+o]=(...e)=>{return _["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](re,...s)));var s,r}},((e,t)=>{e.map(t)})(E.entries(oe),(([e,t])=>ae(t,e))),M(re)})(r)),l.get(r))})();exports.createQueries=P;
|
package/lib/cjs/queries.cjs.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",n=e(t),s=(e,t)=>e.forEach(t),r=e=>e.length,o=(e,...t)=>e.push(...t),i=e=>null==e,a=(e,t,n)=>i(e)?n?.():t(e),l=e=>Array.isArray(e),d=Object.freeze,c=(e,t)=>e?.has(t)??!1,u=e=>i(e)||0==(e=>e.size)(e),R=e=>[...e?.values()??[]],h=e=>e.clear(),f=(e,t)=>e?.forEach(t),L=(e,t)=>e?.delete(t),g=e=>new Map(e),w=(e,t)=>e?.get(t),p=(e,t)=>f(e,((e,n)=>t(n,e))),I=(e,t,n)=>i(n)?(L(e,t),e):e?.set(t,n),v=(e,t,n)=>(c(e,t)||I(e,t,n()),w(e,t)),y=(e,t,n,s,o=0)=>a((n?v:w)(e,t[o],o>r(t)-2?n:g),(i=>{if(o>r(t)-2)return s?.(i)&&I(e,t[o]),i;const a=y(i,t,n,s,o+1);return u(i)&&I(e,t[o]),a})),b=e=>new Set(l(e)||i(e)?e:[e]),k=(e,t)=>e?.add(t),E=/^\d+$/,T=(T=>{const m=new WeakMap;return T=>(m.has(T)||m.set(T,(T=>{const m=g(),S=g(),z=g(),A=g(),[D,M,j,x,C,O,,,W,$,q]=((e,n,o)=>{const d=e.hasRow,y=g(),E=g(),T=g(),m=g(),S=g(),z=(t,n,...r)=>{const o=v(S,t,b);return s(r,(t=>k(o,t)&&n&&e.callListener(t))),r},A=(t,...n)=>a(w(S,t),(o=>{s(0==r(n)?R(o):n,(t=>{e.delListener(t),L(o,t)})),u(o)&&I(S,t)})),D=(e,t)=>{I(y,e,t),c(E,e)||(I(E,e,[g(),g(),g(),g()]),I(T,e,g()),I(m,e,g()))},M=e=>{I(y,e),I(E,e),I(T,e),I(m,e),A(e)};return[()=>e,()=>{return e=y,[...e?.keys()??[]];var e},e=>p(E,e),e=>c(E,e),e=>w(y,e),e=>w(E,e),(e,t)=>I(E,e,t),D,(n,o,a,u,R)=>{D(n,o);const L=g(),v=g(),y=w(T,n),b=w(m,n),k=n=>{const s=t=>e.getCell(o,n,t),a=w(y,n),c=d(o,n)?(h=u(s,n),i(h)?void 0:h+t):void 0;var h,f,g,p;if(a===c||l(a)&&l(c)&&(g=c,r(f=a)===r(g)&&(p=(e,t)=>g[t]===e,f.every(p)))||I(L,n,[a,c]),!i(R)){const e=w(b,n),t=d(o,n)?R(s,n):void 0;e!=t&&I(v,n,t)}},E=e=>{a((()=>{f(L,(([,e],t)=>I(y,t,e))),f(v,((e,t)=>I(b,t,e)))}),L,v,y,b,e),h(L),h(v)};p(y,k),e.hasTable(o)&&s(e.getRowIds(o),(e=>{c(y,e)||k(e)})),E(!0),A(n),z(n,0,e.addRowListener(o,null,((e,t,n)=>k(n))),e.addTableListener(o,(()=>E())))},M,()=>p(S,M),z,A]})(T),[B,F,G]=(e=>{let n;const[l,d]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{E.test(t)&&r(e)<1e3&&o(e,t)}]})(),c=g();return[(e,s,r,o=[],i=(()=>[]))=>{n??=N;const a=l(1);return I(c,a,[e,s,r,o,i]),k(y(s,r??[t],b),a),a},(e,i,...a)=>s(((e,n=[t])=>{const i=[],a=(e,t)=>t==r(n)?o(i,e):null===n[t]?f(e,(e=>a(e,t+1))):s([n[t],null],(n=>a(w(e,n),t+1)));return a(e,0),i})(e,i),(e=>f(e,(e=>w(c,e)[0](n,...i??[],...a))))),e=>a(w(c,e),(([,n,s])=>(y(n,s??[t],void 0,(t=>(L(t,e),u(t)?1:0))),I(c,e),d(e),s))),e=>a(w(c,e),(([e,,t=[],o,a])=>{const l=(...d)=>{const c=r(d);c==r(t)?e(n,...d,...a(d)):i(t[c])?s(o[c]?.(...d)??[],(e=>l(...d,e))):l(...d,t[c])};l()}))]})(),H=(e,t,n)=>a(O(e),(([s,,r])=>{if(!c(r,t)){const o=b();if(C(e)!=K(e))k(o,t);else{let e=t;for(;!i(e)&&!c(o,e);)k(o,e),e=w(s,e)}if(n)return o;I(r,t,o)}return w(r,t)})),J=(e,t)=>a(O(e),(([,,e])=>I(e,t))),K=e=>w(m,e),N={setRelationshipDefinition:(s,r,o,l)=>{return I(m,s,o),W(s,r,((e,t)=>{const n=b(),r=b(),o=b(),[l,d]=O(s);f(t,(([e,t],R)=>{i(e)||(k(r,e),a(w(d,e),(t=>{L(t,R),u(t)&&I(d,e)}))),i(t)||(k(r,t),c(d,t)||I(d,t,b()),k(w(d,t),R)),k(n,R),I(l,R,t),p(w(A,s),(e=>{c(H(s,e),R)&&k(o,e)}))})),e(),f(n,(e=>F(S,[s,e]))),f(r,(e=>F(z,[s,e]))),f(o,(e=>{J(s,e),F(A,[s,e])}))}),e(d=l)==n?e=>e(d):d??(()=>t)),N;var d},delRelationshipDefinition:e=>(I(m,e),$(e),N),getStore:D,getRelationshipIds:M,forEachRelationship:e=>j((t=>e(t,(e=>T.forEachRow(C(t),e))))),hasRelationship:x,getLocalTableId:C,getRemoteTableId:K,getRemoteRowId:(e,t)=>w(O(e)?.[0],t),getLocalRowIds:(e,t)=>R(w(O(e)?.[1],t)),getLinkedRowIds:(e,t)=>i(O(e))?[t]:R(H(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>B(n,S,[e,t]),addLocalRowIdsListener:(e,t,n)=>B(n,z,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(H(e,t),B(n,A,[e,t])),delListener:e=>(J(...G(e)),N),destroy:q,getListenerStats:()=>({})};return d(N)})(T)),m.get(T))})();exports.createRelationships=T;
|
|
Binary file
|
package/lib/cjs/store.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=e=>typeof e,t=e(""),s=e(!0),l=e(0),a=e(e),n=e=>""+e,r=(e,t)=>e.forEach(t),o=(e,t)=>e.map(t),c=e=>e.length,u=(e,t,s)=>e.slice(t,s),i=(e,...t)=>e.push(...t),d=e=>JSON.stringify(e,((e,t)=>{return T(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),f=JSON.parse,h=isFinite,T=(e,t)=>e instanceof t,V=e=>null==e,g=(e,t,s)=>V(e)?s?.():t(e),b=e=>e==t||e==s,S=t=>e(t)==a,v=(e,t)=>e?.has(t)??!1,w=e=>V(e)||0==(e=>e.size)(e),y=e=>e.clear(),I=(e,t)=>e?.forEach(t),R=(e,t)=>e?.delete(t),p=e=>new Map(e),C=e=>[...e?.keys()??[]],J=(e,t)=>e?.get(t),m=(e,t)=>I(e,((e,s)=>t(s,e))),L=(e,t,s)=>V(s)?(R(e,t),e):e?.set(t,s),E=(e,t,s)=>(v(e,t)||L(e,t,s()),J(e,t)),F=(e,t,s)=>{const l={},a=t??(e=>e);return I(e,((e,t)=>g(a(e),(e=>s?.(e)?0:l[t]=e)))),l},z=(e,t)=>{const s=p(),l=t??(e=>e);return I(e,((e,t)=>s.set(t,l(e)))),s},O=e=>z(e,z),k=(e,t,s,l,a=0)=>g((s?E:J)(e,t[a],a>c(t)-2?s:p),(n=>{if(a>c(t)-2)return l?.(n)&&L(e,t[a]),n;const r=k(n,t,s,l,a+1);return w(n)&&L(e,t[a]),r})),A=e=>new Set(Array.isArray(e)||V(e)?e:[e]),M=(e,t)=>e?.add(t),N=/^\d+$/,P=()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??""+t++,t=>{N.test(t)&&c(e)<1e3&&i(e,t)}]},j=Object,x=j.keys,D=j.isFrozen,W=j.freeze,$=e=>T(e,j)&&e.constructor==j,q=(e,t)=>!V(((e,t)=>g(e,(e=>e[t])))(e,t)),B=(e,t)=>delete e[t],G=(e,t)=>o(j.entries(e),(([e,s])=>t(s,e))),H=e=>{return $(e)&&(t=x(e),0==c(t));var t},K=e=>[e,e],Q=()=>[p(),p()],U=t=>{const s=e(t);return b(s)||s==l&&h(t)?s:void 0},X=(e,t,s,l=L)=>{const a=(n=e=>!q(t,e),C(e).filter(n));var n;return r(x(t),(l=>s(e,l,t[l]))),r(a,(t=>l(e,t))),e},Y=(e,t,s)=>V(e)||!$(e)||H(e)||D(e)?(s?.(),!1):(G(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),Z=(e,t,s)=>L(e,t,J(e,t)==-s?void 0:s),_=()=>{let e,t,s,a,h=0;const T=p(),N=p(),j=p(),x=p(),D=p(),$=p(),ee=p(),te=p(),se=p(),le=p(),ae=p(),ne=p(),re=A(),oe=p(),ce=p(),ue=p(),ie=Q(),de=Q(),fe=Q(),he=Q(),Te=Q(),Ve=Q(),ge=Q(),be=Q(),Se=Q(),ve=Q(),we=Q(),ye=Q(),Ie=Q(),Re=Q(),[pe,Ce,Je,me]=(e=>{let t;const[s,l]=P(),a=p();return[(e,l,n,r=[],o=(()=>[]))=>{t??=Nt;const c=s(1);return L(a,c,[e,l,n,r,o]),M(k(l,n??[""],A),c),c},(e,s,...l)=>r(((e,t=[""])=>{const s=[],l=(e,a)=>a==c(t)?i(s,e):null===t[a]?I(e,(e=>l(e,a+1))):r([t[a],null],(t=>l(J(e,t),a+1)));return l(e,0),s})(e,s),(e=>I(e,(e=>J(a,e)[0](t,...s??[],...l))))),e=>g(J(a,e),(([,t,s])=>(k(t,s??[""],void 0,(t=>(R(t,e),w(t)?1:0))),L(a,e),l(e),s))),e=>g(J(a,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const u=c(o);u==c(s)?e(t,...o,...a(o)):V(s[u])?r(l[u]?.(...o)??[],(e=>n(...o,e))):n(...o,s[u])};n()}))]})(),Le=e=>{if(!Y(e,((e,t)=>["type","default"].includes(t))))return!1;const t=e.type;return!(!b(t)&&t!=l||(U(e.default)!=t&&B(e,"default"),0))},Ee=(t,s)=>(!e||v(se,s)||nt(s))&&Y(t,((e,t)=>Fe(s,t,e)),(()=>nt(s))),Fe=(e,t,s,l)=>Y(l?s:Ae(s,e,t),((l,a)=>g(ze(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>nt(e,t))),ze=(t,s,l,a)=>e?g(J(J(se,t),l),(e=>U(a)!=e.type?nt(t,s,l,a,e.default):a),(()=>nt(t,s,l,a))):V(U(a))?nt(t,s,l,a):a,Oe=(e,t)=>Y(t?e:Me(e),((t,s)=>g(ke(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>rt())),ke=(e,s)=>t?g(J(ae,e),(t=>U(s)!=t.type?rt(e,s,t.default):s),(()=>rt(e,s))):V(U(s))?rt(e,s):s,Ae=(e,t,s)=>(g(J(le,t),(([l,a])=>{I(l,((t,s)=>{q(e,s)||(e[s]=t)})),I(a,(l=>{q(e,l)||nt(t,s,l)}))})),e),Me=e=>(t&&(I(ne,((t,s)=>{q(e,s)||(e[s]=t)})),I(re,(t=>{q(e,t)||rt(t)}))),e),Ne=e=>X(se,e,((e,t,s)=>{const l=p(),a=A();X(E(se,t,p),s,((e,t,s)=>{L(e,t,s),g(s.default,(e=>L(l,t,e)),(()=>M(a,t)))})),L(le,t,[l,a])}),((e,t)=>{L(se,t),L(le,t)})),Pe=e=>X(ae,e,((e,t,s)=>{L(ae,t,s),g(s.default,(e=>L(ne,t,e)),(()=>M(re,t)))}),((e,t)=>{L(ae,t),L(ne,t),R(re,t)})),je=e=>H(e)?Et():pt(e),xe=e=>X(ce,e,((e,t,s)=>De(t,s)),((e,t)=>Ue(t))),De=(e,t)=>X(E(ce,e,(()=>(_e(e,1),p()))),t,((t,s,l)=>We(e,t,s,l)),((t,s)=>Xe(e,t,s))),We=(e,t,s,l,a)=>X(E(t,s,(()=>(et(e,s,1),p()))),l,((t,l,a)=>$e(e,s,t,l,a)),((l,n)=>Ye(e,t,s,l,n,a))),$e=(e,t,s,l,a)=>{v(s,l)||tt(e,t,l,1);const n=J(s,l);a!==n&&(st(e,t,l,n,a),L(s,l,a))},qe=(e,t,s,l,a)=>g(J(t,s),(t=>$e(e,s,t,l,a)),(()=>We(e,t,s,Ae({[l]:a},e,s)))),Be=e=>H(e)?Ft():Ct(e),Ge=e=>X(ue,e,((e,t,s)=>He(t,s)),((e,t)=>Ze(t))),He=(e,t)=>{v(ue,e)||lt(e,1);const s=J(ue,e);t!==s&&(at(e,s,t),L(ue,e,t))},Ke=(e,t)=>{const[s]=E(oe,e,P),l=s(t);return v(J(ce,e),l)?Ke(e,t):l},Qe=e=>J(ce,e)??De(e,{}),Ue=e=>De(e,{}),Xe=(e,t,s)=>{const[,l]=E(oe,e,P);l(s),We(e,t,s,{},!0)},Ye=(e,t,s,l,a,n)=>{const r=J(J(le,e)?.[0],a);if(!V(r)&&!n)return $e(e,s,l,a,r);const o=t=>{st(e,s,t,J(l,t)),tt(e,s,t,-1),L(l,t)};V(r)?o(a):m(l,o),w(l)&&(et(e,s,-1),w(L(t,s))&&(_e(e,-1),L(ce,e),L(oe,e)))},Ze=e=>{const t=J(ne,e);if(!V(t))return He(e,t);at(e,J(ue,e)),lt(e,-1),L(ue,e)},_e=(e,t)=>Z(T,e,t),et=(e,t,s)=>Z(E(N,e,p),t,s),tt=(e,t,s,l)=>Z(E(E(j,e,p),t,p),s,l),st=(e,t,s,l,a)=>E(E(E(x,e,p),t,p),s,(()=>[l,0]))[1]=a,lt=(e,t)=>Z(D,e,t),at=(e,t,s)=>E($,e,(()=>[t,0]))[1]=s,nt=(e,t,s,l,a)=>(i(E(E(E(ee,e,p),t,p),s,(()=>[])),l),a),rt=(e,t,s)=>(i(E(te,e,(()=>[])),t),s),ot=(e,t,s)=>g(J(J(J(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...K(wt(e,t,s))])),ct=e=>g(J($,e),(([e,t])=>[!0,e,t]),(()=>[!1,...K(Rt(e))])),ut=e=>w(ee)||w(Se[e])?0:I(e?z(ee,O):ee,((t,s)=>I(t,((t,l)=>I(t,((t,a)=>Ce(Se[e],[s,l,a],t))))))),it=e=>w(te)||w(ve[e])?0:I(e?z(te):te,((t,s)=>Ce(ve[e],[s],t))),dt=(e,t,s)=>{if(!w(t))return Ce(e,s),1},ft=e=>{const t=w(Te[e]),s=w(ge[e])&&w(he[e])&&t&&w(de[e]),l=w(be[e])&&w(Ve[e])&&w(fe[e])&&w(ie[e]);if(!s||!l){const a=e?[z(T),O(N),z(j,O),z(x,O)]:[T,N,j,x];if(!s){I(a[2],((t,s)=>I(t,((t,l)=>dt(ge[e],t,[s,l])))));const s=A();I(a[1],((l,a)=>{dt(he[e],l,[a])&&!t&&(Ce(Te[e],[a,null]),M(s,a))})),t||I(a[3],((t,l)=>{if(!v(s,l)){const s=A();I(t,(e=>I(e,(([t,l],a)=>l!==t?M(s,a):R(e,a))))),I(s,(t=>Ce(Te[e],[l,t])))}})),dt(de[e],a[0])}if(!l){let t;I(a[3],((s,l)=>{let a;I(s,((s,n)=>{let r;I(s,(([s,o],c)=>{o!==s&&(Ce(be[e],[l,n,c],o,s,ot),t=a=r=1)})),r&&Ce(Ve[e],[l,n],ot)})),a&&Ce(fe[e],[l],ot)})),t&&Ce(ie[e],void 0,ot)}}},ht=e=>{const t=w(ye[e]),s=w(Ie[e])&&w(we[e]);if(!t||!s){const l=e?[z(D),z($)]:[D,$];if(t||dt(ye[e],l[0]),!s){let t;I(l[1],(([s,l],a)=>{l!==s&&(Ce(Ie[e],[a],l,s,ct),t=1)})),t&&Ce(we[e],void 0,ct)}}},Tt=(e,...t)=>(kt((()=>e(...o(t,n)))),Nt),Vt=()=>F(ce,(e=>F(e,F))),gt=()=>C(ce),bt=e=>C(J(ce,n(e))),St=(e,t,s,l=0,a)=>{return o(u((c=J(ce,n(e)),i=(e,s)=>[V(t)?s:J(e,n(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),o([...c?.entries()??[]],(([e,t])=>i(t,e))).sort(r)),l,V(a)?a:l+a),(([,e])=>e));var r,c,i},vt=(e,t)=>C(J(J(ce,n(e)),n(t))),wt=(e,t,s)=>J(J(J(ce,n(e)),n(t)),n(s)),yt=()=>F(ue),It=()=>C(ue),Rt=e=>J(ue,n(e)),pt=e=>Tt((()=>(e=>Y(e,Ee,nt))(e)?xe(e):0)),Ct=e=>Tt((()=>Oe(e)?Ge(e):0)),Jt=e=>{try{je(f(e))}catch{}return Nt},mt=t=>Tt((()=>{if((e=Y(t,(e=>Y(e,Le))))&&(Ne(t),!w(ce))){const e=Vt();Et(),pt(e)}})),Lt=e=>Tt((()=>{if(t=(e=>Y(e,Le))(e)){const s=yt();Ot(),Ft(),t=!0,Pe(e),Ct(s)}})),Et=()=>Tt((()=>xe({}))),Ft=()=>Tt((()=>Ge({}))),zt=()=>Tt((()=>{Ne({}),e=!1})),Ot=()=>Tt((()=>{Pe({}),t=!1})),kt=(e,t)=>{if(-1==h)return;At();const s=e();return Mt(t),s},At=()=>(h++,Nt),Mt=e=>(h>0&&(h--,0==h&&(s=!w(x),a=!w($),h=1,ut(1),s&&ft(1),it(1),a&&ht(1),h=-1,e?.(F(x,(e=>F(e,(e=>F(e,(e=>[...e]),(([e,t])=>e===t))),H)),H),F(ee,(e=>F(e,F))),F($,(e=>[...e]),(([e,t])=>e===t)),F(te))&&(h=1,I(x,((e,t)=>I(e,((e,s)=>I(e,(([e],l)=>((e,t,s,l,a)=>V(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a))(Nt,t,s,l,e))))))),I($,(([e],t)=>((e,t,s)=>V(s)?e.delValue(t):e.setValue(t,s))(Nt,t,e))),h=-1,s=a=!1),Ce(Re[0],void 0,s,a),ut(0),s&&ft(0),it(0),a&&ht(0),Ce(Re[1],void 0,s,a),h=0,r([T,N,j,x,ee,D,$,te],y))),Nt),Nt={getTables:Vt,getTableIds:gt,getTable:e=>F(J(ce,n(e)),F),getRowIds:bt,getSortedRowIds:St,getRow:(e,t)=>F(J(J(ce,n(e)),n(t))),getCellIds:vt,getCell:wt,getValues:yt,getValueIds:It,getValue:Rt,hasTables:()=>!w(ce),hasTable:e=>v(ce,n(e)),hasRow:(e,t)=>v(J(ce,n(e)),n(t)),hasCell:(e,t,s)=>v(J(J(ce,n(e)),n(t)),n(s)),hasValues:()=>!w(ue),hasValue:e=>v(ue,n(e)),getTablesJson:()=>d(ce),getValuesJson:()=>d(ue),getJson:()=>d([ce,ue]),getTablesSchemaJson:()=>d(se),getValuesSchemaJson:()=>d(ae),getSchemaJson:()=>d([se,ae]),setTables:pt,setTable:(e,t)=>Tt((e=>Ee(t,e)?De(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Fe(e,t,s)?We(e,Qe(e),t,s):0),e,t),addRow:(e,t,s=!0)=>kt((()=>{let l;return Fe(e,l,t)&&(e=n(e),We(e,Qe(e),l=Ke(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Fe(e,t,s,1)){const l=Qe(e);G(s,((s,a)=>qe(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>g(ze(e,t,s,S(l)?l(wt(e,t,s)):l),(l=>qe(e,Qe(e),t,s,l)))),e,t,s),setValues:Ct,setPartialValues:e=>Tt((()=>Oe(e,1)?G(e,((e,t)=>He(t,e))):0)),setValue:(e,t)=>Tt((e=>g(ke(e,S(t)?t(Rt(e)):t),(t=>He(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Be(f(e))}catch{}return Nt},setJson:e=>{try{const[t,s]=f(e);je(t),Be(s)}catch{Jt(e)}return Nt},setTablesSchema:mt,setValuesSchema:Lt,setSchema:(e,t)=>Tt((()=>{mt(e),Lt(t)})),delTables:Et,delTable:e=>Tt((e=>v(ce,e)?Ue(e):0),e),delRow:(e,t)=>Tt(((e,t)=>g(J(ce,e),(s=>v(s,t)?Xe(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Tt(((e,t,s)=>g(J(ce,e),(a=>g(J(a,t),(n=>v(n,s)?Ye(e,a,t,n,s,l):0))))),e,t,s),delValues:Ft,delValue:e=>Tt((e=>v(ue,e)?Ze(e):0),e),delTablesSchema:zt,delValuesSchema:Ot,delSchema:()=>Tt((()=>{zt(),Ot()})),transaction:kt,startTransaction:At,finishTransaction:Mt,forEachTable:e=>I(ce,((t,s)=>e(s,(e=>I(t,((t,s)=>e(s,(e=>m(t,e))))))))),forEachRow:(e,t)=>I(J(ce,n(e)),((e,s)=>t(s,(t=>m(e,t))))),forEachCell:(e,t,s)=>m(J(J(ce,n(e)),n(t)),s),forEachValue:e=>m(ue,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=St(e,t,s,l,a);return pe((()=>{const r=St(e,t,s,l,a);var u,i,d;i=o,c(u=r)===c(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=r,n(Nt,e,t,s,l,a,o))}),Te[r?1:0],[e,t],[gt])},addWillFinishTransactionListener:e=>pe(e,Re[0]),addDidFinishTransactionListener:e=>pe(e,Re[1]),callListener:e=>(me(e),Nt),delListener:e=>(Je(e),Nt),getListenerStats:()=>({}),createStore:_};return G({Tables:[0,ie],TableIds:[0,de],Table:[1,fe,[gt]],RowIds:[1,he,[gt]],Row:[2,Ve,[gt,bt]],CellIds:[2,ge,[gt,bt]],Cell:[3,be,[gt,bt,vt],e=>K(wt(...e))],InvalidCell:[3,Se],Values:[0,we],ValueIds:[0,ye],Value:[1,Ie,[It],e=>K(Rt(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Nt["add"+a+"Listener"]=(...a)=>pe(a[e],t[a[e+1]?1:0],e>0?u(a,0,e):void 0,s,l)})),W(Nt)};exports.createStore=_;
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),l=e(0),a=e(e),r="type",o="default",c="Ids",i="Table",u=i+"s",d=i+c,h="Row"+c,g="Cell",f=g+c,T="Value",V=T+"s",b=T+c,v=e=>t+e,S=(e,t)=>e.forEach(t),C=(e,t)=>e.map(t),w=e=>e.length,I=(e,t,s)=>e.slice(t,s),R=(e,...t)=>e.push(...t),y=e=>JSON.stringify(e,((e,t)=>{return p(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),n={},[...t].reduce(s,n)):t;var s,n})),J=JSON.parse,m=isFinite,p=(e,t)=>e instanceof t,L=e=>null==e,E=(e,t,s)=>L(e)?s?.():t(e),F=e=>e==s||e==n,z=t=>e(t)==a,O=Object,k=O.keys,A=O.isFrozen,M=O.freeze,N=e=>p(e,O)&&e.constructor==O,P=(e,t)=>!L(((e,t)=>E(e,(e=>e[t])))(e,t)),j=(e,t)=>delete e[t],x=(e,t)=>C(O.entries(e),(([e,s])=>t(s,e))),D=e=>{return N(e)&&(t=k(e),0==w(t));var t},W=(e,t)=>e?.has(t)??!1,$=e=>L(e)||0==(e=>e.size)(e),q=e=>e.clear(),B=(e,t)=>e?.forEach(t),G=(e,t)=>e?.delete(t),H=e=>new Map(e),K=e=>[...e?.keys()??[]],Q=(e,t)=>e?.get(t),U=(e,t)=>B(e,((e,s)=>t(s,e))),X=(e,t,s)=>L(s)?(G(e,t),e):e?.set(t,s),Y=(e,t,s)=>(W(e,t)||X(e,t,s()),Q(e,t)),Z=(e,t,s)=>{const n={};return B(e,((e,l)=>{const a=t?t(e,l):e;!s?.(a,e)&&(n[l]=a)})),n},_=(e,t,s)=>Z(e,(e=>Z(e,t,s)),D),ee=(e,t,s)=>Z(e,(e=>_(e,t,s)),D),te=(e,t)=>{const s=H();return B(e,((e,n)=>s.set(n,t?.(e)??e))),s},se=e=>te(e,te),ne=e=>te(e,se),le=(e,t,s,n,l=0)=>E((s?Y:Q)(e,t[l],l>w(t)-2?s:H),(a=>{if(l>w(t)-2)return n?.(a)&&X(e,t[l]),a;const r=le(a,t,s,n,l+1);return $(a)&&X(e,t[l]),r})),ae=e=>new Set(Array.isArray(e)||L(e)?e:[e]),re=(e,t)=>e?.add(t),oe=/^\d+$/,ce=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{oe.test(t)&&w(e)<1e3&&R(e,t)}]},ie=e=>[e,e],ue=()=>[H(),H()],de=e=>[...e],he=([e,t])=>e===t,ge=t=>{const s=e(t);return F(s)||s==l&&m(t)?s:void 0},fe=(e,t,s,n,l)=>L(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l),Te=(e,t,s)=>L(s)?e.delValue(t):e.setValue(t,s),Ve=(e,t,s,n=X)=>(x(t,((t,n)=>s(e,n,t))),U(e,(s=>P(t,s)?0:n(e,s))),e),be=(e,t,s)=>L(e)||!N(e)||D(e)||A(e)?(s?.(),!1):(x(e,((s,n)=>{t(s,n)||j(e,n)})),!D(e)),ve=(e,t,s)=>X(e,t,Q(e,t)==-s?void 0:s),Se=()=>{let e,s,n,a,c=0;const m=H(),p=H(),O=H(),k=H(),A=H(),N=H(),oe=H(),Ce=H(),we=H(),Ie=H(),Re=H(),ye=H(),Je=ae(),me=H(),pe=H(),Le=H(),Ee=ue(),Fe=ue(),ze=ue(),Oe=ue(),ke=ue(),Ae=ue(),Me=ue(),Ne=ue(),Pe=ue(),je=ue(),xe=ue(),De=ue(),We=ue(),$e=ue(),[qe,Be,Ge,He]=(e=>{let s;const[n,l]=ce(),a=H();return[(e,l,r,o=[],c=(()=>[]))=>{s??=as;const i=n(1);return X(a,i,[e,l,r,o,c]),re(le(l,r??[t],ae),i),i},(e,n,...l)=>S(((e,s=[t])=>{const n=[],l=(e,t)=>t==w(s)?R(n,e):null===s[t]?B(e,(e=>l(e,t+1))):S([s[t],null],(s=>l(Q(e,s),t+1)));return l(e,0),n})(e,n),(e=>B(e,(e=>Q(a,e)[0](s,...n??[],...l))))),e=>E(Q(a,e),(([,s,n])=>(le(s,n??[t],void 0,(t=>(G(t,e),$(t)?1:0))),X(a,e),l(e),n))),e=>E(Q(a,e),(([e,,t=[],n,l])=>{const a=(...r)=>{const o=w(r);o==w(t)?e(s,...r,...l(r)):L(t[o])?S(n[o]?.(...r)??[],(e=>a(...r,e))):a(...r,t[o])};a()}))]})(),Ke=e=>{if(!be(e,((e,t)=>[r,o].includes(t))))return!1;const t=e[r];return!(!F(t)&&t!=l||(ge(e[o])!=t&&j(e,o),0))},Qe=(t,s)=>(!e||W(we,s)||yt(s))&&be(t,((e,t)=>Ue(s,t,e)),(()=>yt(s))),Ue=(e,t,s,n)=>be(n?s:_e(s,e,t),((n,l)=>E(Xe(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>yt(e,t))),Xe=(t,s,n,l)=>e?E(Q(Q(we,t),n),(e=>ge(l)!=e[r]?yt(t,s,n,l,e[o]):l),(()=>yt(t,s,n,l))):L(ge(l))?yt(t,s,n,l):l,Ye=(e,t)=>be(t?e:et(e),((t,s)=>E(Ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Jt())),Ze=(e,t)=>s?E(Q(Re,e),(s=>ge(t)!=s[r]?Jt(e,t,s[o]):t),(()=>Jt(e,t))):L(ge(t))?Jt(e,t):t,_e=(e,t,s)=>(E(Q(Ie,t),(([n,l])=>{B(n,((t,s)=>{P(e,s)||(e[s]=t)})),B(l,(n=>{P(e,n)||yt(t,s,n)}))})),e),et=e=>(s&&(B(ye,((t,s)=>{P(e,s)||(e[s]=t)})),B(Je,(t=>{P(e,t)||Jt(t)}))),e),tt=e=>Ve(we,e,((e,t,s)=>{const n=H(),l=ae();Ve(Y(we,t,H),s,((e,t,s)=>{X(e,t,s),E(s[o],(e=>X(n,t,e)),(()=>re(l,t)))})),X(Ie,t,[n,l])}),((e,t)=>{X(we,t),X(Ie,t)})),st=e=>Ve(Re,e,((e,t,s)=>{X(Re,t,s),E(s[o],(e=>X(ye,t,e)),(()=>re(Je,t)))}),((e,t)=>{X(Re,t),X(ye,t),G(Je,t)})),nt=e=>D(e)?Xt():Gt(e),lt=e=>Ve(pe,e,((e,t,s)=>at(t,s)),((e,t)=>ft(t))),at=(e,t)=>Ve(Y(pe,e,(()=>(vt(e,1),H()))),t,((t,s,n)=>rt(e,t,s,n)),((t,s)=>Tt(e,t,s))),rt=(e,t,s,n,l)=>Ve(Y(t,s,(()=>(St(e,s,1),H()))),n,((t,n,l)=>ot(e,s,t,n,l)),((n,a)=>Vt(e,t,s,n,a,l))),ot=(e,t,s,n,l)=>{W(s,n)||Ct(e,t,n,1);const a=Q(s,n);l!==a&&(wt(e,t,n,a,l),X(s,n,l))},ct=(e,t,s,n,l)=>E(Q(t,s),(t=>ot(e,s,t,n,l)),(()=>rt(e,t,s,_e({[n]:l},e,s)))),it=e=>D(e)?_t():Ht(e),ut=e=>Ve(Le,e,((e,t,s)=>dt(t,s)),((e,t)=>bt(t))),dt=(e,t)=>{W(Le,e)||It(e,1);const s=Q(Le,e);t!==s&&(Rt(e,s,t),X(Le,e,t))},ht=(e,t)=>{const[s]=Y(me,e,ce),n=s(t);return W(Q(pe,e),n)?ht(e,t):n},gt=e=>Q(pe,e)??at(e,{}),ft=e=>at(e,{}),Tt=(e,t,s)=>{const[,n]=Y(me,e,ce);n(s),rt(e,t,s,{},!0)},Vt=(e,t,s,n,l,a)=>{const r=Q(Q(Ie,e)?.[0],l);if(!L(r)&&!a)return ot(e,s,n,l,r);const o=t=>{wt(e,s,t,Q(n,t)),Ct(e,s,t,-1),X(n,t)};L(r)?o(l):U(n,o),$(n)&&(St(e,s,-1),$(X(t,s))&&(vt(e,-1),X(pe,e),X(me,e)))},bt=e=>{const t=Q(ye,e);if(!L(t))return dt(e,t);Rt(e,Q(Le,e)),It(e,-1),X(Le,e)},vt=(e,t)=>ve(m,e,t),St=(e,t,s)=>ve(Y(p,e,H),t,s),Ct=(e,t,s,n)=>ve(Y(Y(O,e,H),t,H),s,n),wt=(e,t,s,n,l)=>Y(Y(Y(k,e,H),t,H),s,(()=>[n,0]))[1]=l,It=(e,t)=>ve(A,e,t),Rt=(e,t,s)=>Y(N,e,(()=>[t,0]))[1]=s,yt=(e,t,s,n,l)=>(R(Y(Y(Y(oe,e,H),t,H),s,(()=>[])),n),l),Jt=(e,t,s)=>(R(Y(Ce,e,(()=>[])),t),s),mt=(e,t,s)=>E(Q(Q(Q(k,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ie(Wt(e,t,s))])),pt=e=>E(Q(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ie(Bt(e))])),Lt=e=>$(oe)||$(Pe[e])?0:B(e?ne(oe):oe,((t,s)=>B(t,((t,n)=>B(t,((t,l)=>Be(Pe[e],[s,n,l],t))))))),Et=e=>$(Ce)||$(je[e])?0:B(e?te(Ce):Ce,((t,s)=>Be(je[e],[s],t))),Ft=(e,t,s)=>{if(!$(t))return Be(e,s),1},zt=e=>{const t=$(ke[e]),s=$(Me[e])&&$(Oe[e])&&t&&$(Fe[e]),n=$(Ne[e])&&$(Ae[e])&&$(ze[e])&&$(Ee[e]);if(!s||!n){const l=e?[te(m),se(p),ne(O),ne(k)]:[m,p,O,k];if(!s){B(l[2],((t,s)=>B(t,((t,n)=>Ft(Me[e],t,[s,n])))));const s=ae();B(l[1],((n,l)=>{Ft(Oe[e],n,[l])&&!t&&(Be(ke[e],[l,null]),re(s,l))})),t||B(l[3],((t,n)=>{if(!W(s,n)){const s=ae();B(t,(e=>B(e,(([t,n],l)=>n!==t?re(s,l):G(e,l))))),B(s,(t=>Be(ke[e],[n,t])))}})),Ft(Fe[e],l[0])}if(!n){let t;B(l[3],((s,n)=>{let l;B(s,((s,a)=>{let r;B(s,(([s,o],c)=>{o!==s&&(Be(Ne[e],[n,a,c],o,s,mt),t=l=r=1)})),r&&Be(Ae[e],[n,a],mt)})),l&&Be(ze[e],[n],mt)})),t&&Be(Ee[e],void 0,mt)}}},Ot=e=>{const t=$(De[e]),s=$(We[e])&&$(xe[e]);if(!t||!s){const n=e?[te(A),te(N)]:[A,N];if(t||Ft(De[e],n[0]),!s){let t;B(n[1],(([s,n],l)=>{n!==s&&(Be(We[e],[l],n,s,pt),t=1)})),t&&Be(xe[e],void 0,pt)}}},kt=(e,...t)=>(ss((()=>e(...C(t,v)))),as),At=()=>[Z(k,((e,t)=>-1===Q(m,t)?null:Z(e,((e,s)=>-1===Q(Q(p,t),s)?null:Z(e,(([,e])=>e??null),((e,t)=>he(t)))),D)),D),Z(N,(([,e])=>e??null),((e,t)=>he(t)))],Mt=()=>({cellsTouched:n,valuesTouched:a,changedCells:ee(k,de,he),invalidCells:ee(oe),changedValues:Z(N,de,he),invalidValues:Z(Ce),changedTableIds:Z(m),changedRowIds:_(p),changedCellIds:ee(O),changedValueIds:Z(A)}),Nt=()=>ee(pe),Pt=()=>K(pe),jt=e=>K(Q(pe,v(e))),xt=(e,t,s,n=0,l)=>{return C(I((r=Q(pe,v(e)),o=(e,s)=>[L(t)?s:Q(e,v(t)),s],a=([e],[t])=>(e<t?-1:1)*(s?-1:1),C([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),n,L(l)?l:n+l),(([,e])=>e));var a,r,o},Dt=(e,t)=>K(Q(Q(pe,v(e)),v(t))),Wt=(e,t,s)=>Q(Q(Q(pe,v(e)),v(t)),v(s)),$t=()=>Z(Le),qt=()=>K(Le),Bt=e=>Q(Le,v(e)),Gt=e=>kt((()=>(e=>be(e,Qe,yt))(e)?lt(e):0)),Ht=e=>kt((()=>Ye(e)?ut(e):0)),Kt=e=>{try{nt(J(e))}catch{}return as},Qt=t=>kt((()=>{if((e=be(t,(e=>be(e,Ke))))&&(tt(t),!$(pe))){const e=Nt();Xt(),Gt(e)}})),Ut=e=>kt((()=>{if(s=(e=>be(e,Ke))(e)){const t=$t();ts(),_t(),s=!0,st(e),Ht(t)}})),Xt=()=>kt((()=>lt({}))),Yt=e=>kt((e=>W(pe,e)?ft(e):0),e),Zt=(e,t)=>kt(((e,t)=>E(Q(pe,e),(s=>W(s,t)?Tt(e,s,t):0))),e,t),_t=()=>kt((()=>ut({}))),es=()=>kt((()=>{tt({}),e=!1})),ts=()=>kt((()=>{st({}),s=!1})),ss=(e,t)=>{if(-1==c)return;ns();const s=e();return ls(t),s},ns=()=>(c++,as),ls=e=>(c>0&&(c--,0==c&&(n=!$(k),a=!$(N),c=1,Lt(1),n&&zt(1),Et(1),a&&Ot(1),c=-1,e?.(At,Mt)&&(c=1,B(k,((e,t)=>B(e,((e,s)=>B(e,(([e],n)=>fe(as,t,s,n,e))))))),B(N,(([e],t)=>Te(as,t,e))),c=-1,n=a=!1),Be($e[0],void 0,At,Mt),Lt(0),n&&zt(0),Et(0),a&&Ot(0),Be($e[1],void 0,At,Mt),c=0,S([m,p,O,k,oe,A,N,Ce],q))),as),as={getContent:()=>[Nt(),$t()],getTables:Nt,getTableIds:Pt,getTable:e=>_(Q(pe,v(e))),getRowIds:jt,getSortedRowIds:xt,getRow:(e,t)=>Z(Q(Q(pe,v(e)),v(t))),getCellIds:Dt,getCell:Wt,getValues:$t,getValueIds:qt,getValue:Bt,hasTables:()=>!$(pe),hasTable:e=>W(pe,v(e)),hasRow:(e,t)=>W(Q(pe,v(e)),v(t)),hasCell:(e,t,s)=>W(Q(Q(pe,v(e)),v(t)),v(s)),hasValues:()=>!$(Le),hasValue:e=>W(Le,v(e)),getTablesJson:()=>y(pe),getValuesJson:()=>y(Le),getJson:()=>y([pe,Le]),getTablesSchemaJson:()=>y(we),getValuesSchemaJson:()=>y(Re),getSchemaJson:()=>y([we,Re]),setContent:([e,t])=>kt((()=>{Gt(e),Ht(t)})),setTables:Gt,setTable:(e,t)=>kt((e=>Qe(t,e)?at(e,t):0),e),setRow:(e,t,s)=>kt(((e,t)=>Ue(e,t,s)?rt(e,gt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ss((()=>{let n;return Ue(e,n,t)&&(e=v(e),rt(e,gt(e),n=ht(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>kt(((e,t)=>{if(Ue(e,t,s,1)){const n=gt(e);x(s,((s,l)=>ct(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>kt(((e,t,s)=>E(Xe(e,t,s,z(n)?n(Wt(e,t,s)):n),(n=>ct(e,gt(e),t,s,n)))),e,t,s),setValues:Ht,setPartialValues:e=>kt((()=>Ye(e,1)?x(e,((e,t)=>dt(t,e))):0)),setValue:(e,t)=>kt((e=>E(Ze(e,z(t)?t(Bt(e)):t),(t=>dt(e,t)))),e),setTransactionChanges:e=>kt((()=>{x(e[0],((e,t)=>L(e)?Yt(t):x(e,((e,s)=>L(e)?Zt(t,s):x(e,((e,n)=>fe(as,t,s,n,e))))))),x(e[1],((e,t)=>Te(as,t,e)))})),setTablesJson:Kt,setValuesJson:e=>{try{it(J(e))}catch{}return as},setJson:e=>{try{const[t,s]=J(e);nt(t),it(s)}catch{Kt(e)}return as},setTablesSchema:Qt,setValuesSchema:Ut,setSchema:(e,t)=>kt((()=>{Qt(e),Ut(t)})),delTables:Xt,delTable:Yt,delRow:Zt,delCell:(e,t,s,n)=>kt(((e,t,s)=>E(Q(pe,e),(l=>E(Q(l,t),(a=>W(a,s)?Vt(e,l,t,a,s,n):0))))),e,t,s),delValues:_t,delValue:e=>kt((e=>W(Le,e)?bt(e):0),e),delTablesSchema:es,delValuesSchema:ts,delSchema:()=>kt((()=>{es(),ts()})),transaction:ss,startTransaction:ns,finishTransaction:ls,forEachTable:e=>B(pe,((t,s)=>e(s,(e=>B(t,((t,s)=>e(s,(e=>U(t,e))))))))),forEachRow:(e,t)=>B(Q(pe,v(e)),((e,s)=>t(s,(t=>U(e,t))))),forEachCell:(e,t,s)=>U(Q(Q(pe,v(e)),v(t)),s),forEachValue:e=>U(Le,e),addSortedRowIdsListener:(e,t,s,n,l,a,r)=>{let o=xt(e,t,s,n,l);return qe((()=>{const r=xt(e,t,s,n,l);var c,i,u;i=o,w(c=r)===w(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,a(as,e,t,s,n,l,o))}),ke[r?1:0],[e,t],[Pt])},addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(He(e),as),delListener:e=>(Ge(e),as),getListenerStats:()=>({}),createStore:Se};return x({[u]:[0,Ee],[d]:[0,Fe],[i]:[1,ze,[Pt]],[h]:[1,Oe,[Pt]],Row:[2,Ae,[Pt,jt]],[f]:[2,Me,[Pt,jt]],[g]:[3,Ne,[Pt,jt,Dt],e=>ie(Wt(...e))],InvalidCell:[3,Pe],[V]:[0,xe],[b]:[0,De],[T]:[1,We,[qt],e=>ie(Bt(e[0]))],InvalidValue:[1,je]},(([e,t,s,n],l)=>{as["add"+l+"Listener"]=(...l)=>qe(l[e],t[l[e+1]?1:0],e>0?I(l,0,e):void 0,s,n)})),M(as)};exports.createStore=Se;
|
package/lib/cjs/store.cjs.gz
CHANGED
|
Binary file
|
package/lib/cjs/tinybase.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("fs");const t=e=>typeof e,s=t(""),n=t(!0),r=t(0),o=t(t),a=e=>""+e,l=(e,t)=>e.includes(t),i=(e,t)=>e.every(t),c=(e,t)=>L(e)===L(t)&&i(e,((e,s)=>t[s]===e)),d=(e,t)=>i(e,((s,n)=>0==n||t(e[n-1],s)<=0)),u=(e,t)=>e.sort(t),h=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),g=e=>p(e,((e,t)=>e+t),0),L=e=>e.length,w=e=>0==L(e),p=(e,t,s)=>e.reduce(t,s),R=(e,t,s)=>e.slice(t,s),v=(e,...t)=>e.push(...t),I=e=>e.pop(),S=e=>e.shift(),T=e=>JSON.stringify(e,((e,t)=>V(t,Map)?p([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),y=JSON.parse,b=Math.max,C=Math.min,m=isFinite,V=(e,t)=>e instanceof t,x=e=>null==e,E=(e,t,s)=>x(e)?s?.():t(e),k=e=>e==s||e==n,J=e=>t(e)==o,M=e=>Array.isArray(e),A=()=>{},D=e=>e.size,F=(e,t)=>e?.has(t)??!1,P=e=>x(e)||0==D(e),Q=e=>[...e?.values()??[]],z=e=>e.clear(),N=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),j=e=>new Map(e),W=e=>[...e?.keys()??[]],q=(e,t)=>e?.get(t),B=(e,t)=>N(e,((e,s)=>t(s,e))),H=(e,t,s)=>x(s)?(O(e,t),e):e?.set(t,s),$=(e,t,s)=>(F(e,t)||H(e,t,s()),q(e,t)),G=(e,t,s)=>{const n={},r=t??(e=>e);return N(e,((e,t)=>E(r(e),(e=>s?.(e)?0:n[t]=e)))),n},K=(e,t)=>{const s=j(),n=t??(e=>e);return N(e,((e,t)=>s.set(t,n(e)))),s},U=e=>K(e,K),X=(e,t,s,n,r=0)=>E((s?$:q)(e,t[r],r>L(t)-2?s:j),(o=>{if(r>L(t)-2)return n?.(o)&&H(e,t[r]),o;const a=X(o,t,s,n,r+1);return P(o)&&H(e,t[r]),a})),Y=e=>{const s=t(e);return k(s)||s==r&&m(e)?s:void 0},Z=(e,t,s,n,r)=>x(r)?e.delCell(t,s,n,!0):e.setCell(t,s,n,r),_=(e,t,s)=>x(s)?e.delValue(t):e.setValue(t,s),ee=e=>new Set(M(e)||x(e)?e:[e]),te=(e,t)=>e?.add(t),se=(e,t,s)=>{const n=e.hasRow,r=j(),o=j(),a=j(),l=j(),i=j(),d=(t,s,...n)=>{const r=$(i,t,ee);return h(n,(t=>te(r,t)&&s&&e.callListener(t))),n},u=(t,...s)=>E(q(i,t),(n=>{h(w(s)?Q(n):s,(t=>{e.delListener(t),O(n,t)})),P(n)&&H(i,t)})),f=(e,s)=>{H(r,e,s),F(o,e)||(H(o,e,t()),H(a,e,j()),H(l,e,j()))},g=e=>{H(r,e),H(o,e),H(a,e),H(l,e),u(e)};return[()=>e,()=>W(r),e=>B(o,e),e=>F(o,e),e=>q(r,e),e=>q(o,e),(e,t)=>H(o,e,t),f,(t,r,o,i,g)=>{f(t,r);const L=j(),w=j(),p=q(a,t),R=q(l,t),v=t=>{const o=s=>e.getCell(r,t,s),a=q(p,t),l=n(r,t)?s(i(o,t)):void 0;if(a===l||M(a)&&M(l)&&c(a,l)||H(L,t,[a,l]),!x(g)){const e=q(R,t),s=n(r,t)?g(o,t):void 0;e!=s&&H(w,t,s)}},I=e=>{o((()=>{N(L,(([,e],t)=>H(p,t,e))),N(w,((e,t)=>H(R,t,e)))}),L,w,p,R,e),z(L),z(w)};B(p,v),e.hasTable(r)&&h(e.getRowIds(r),(e=>{F(p,e)||v(e)})),I(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,s)=>v(s))),e.addTableListener(r,(()=>I())))},g,()=>B(i,g),d,u]},ne=(e,n)=>t(e)==s?t=>t(e):e??(()=>n??""),re=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},oe=/^\d+$/,ae=()=>{const e=[];let t=0;return[s=>(s?S(e):null)??""+t++,t=>{oe.test(t)&&L(e)<1e3&&v(e,t)}]},le=e=>{let t;const[s,n]=ae(),r=j();return[(n,o,a,l=[],i=(()=>[]))=>{t??=e();const c=s(1);return H(r,c,[n,o,a,l,i]),te(X(o,a??[""],ee),c),c},(e,s,...n)=>h(((e,t=[""])=>{const s=[],n=(e,r)=>r==L(t)?v(s,e):null===t[r]?N(e,(e=>n(e,r+1))):h([t[r],null],(t=>n(q(e,t),r+1)));return n(e,0),s})(e,s),(e=>N(e,(e=>q(r,e)[0](t,...s??[],...n))))),e=>E(q(r,e),(([,t,s])=>(X(t,s??[""],void 0,(t=>(O(t,e),P(t)?1:0))),H(r,e),n(e),s))),e=>E(q(r,e),(([e,,s=[],n,r])=>{const o=(...a)=>{const l=L(a);l==L(s)?e(t,...a,...r(a)):x(s[l])?h(n[l]?.(...a)??[],(e=>o(...a,e))):o(...a,s[l])};o()}))]},ie=Object,ce=ie.keys,de=ie.isFrozen,ue=ie.freeze,he=e=>V(e,ie)&&e.constructor==ie,fe=(e,t)=>!x(((e,t)=>E(e,(e=>e[t])))(e,t)),ge=(e,t)=>delete e[t],Le=(e,t)=>f(ie.entries(e),(([e,s])=>t(s,e))),we=e=>he(e)&&w(ce(e)),pe=re((e=>{let t,s,n,r=100,o=j(),a=j(),i=1;const c=j(),d=j(),[u,f,g]=le((()=>U)),p=j(),R=j(),T=[],y=[],b=(t,s)=>{i=0,e.transaction((()=>{const[n,r]=q(p,s);N(n,((s,n)=>N(s,((s,r)=>N(s,((s,o)=>Z(e,n,r,o,s[t]))))))),N(r,((s,n)=>_(e,n,s[t])))})),i=1},C=e=>{H(p,e),H(R,e),f(d,[e])},m=(e,t)=>h(((e,t)=>e.splice(0,t))(e,t??L(e)),C),V=()=>m(T,L(T)-r),k=()=>E(t,(()=>{v(T,t),V(),m(y),t=void 0,n=1})),J=()=>{t=I(T),n=1},M=e.addCellListener(null,null,null,((e,t,s,n,r,a)=>{if(i){k();const e=$(o,t,j),l=$(e,s,j),i=$(l,n,(()=>[a,void 0]));i[1]=r,i[0]===r&&P(H(l,n))&&P(H(e,s))&&P(H(o,t))&&J(),O()}})),A=e.addValueListener(null,((e,t,s,n)=>{if(i){k();const e=$(a,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&P(H(a,t))&&J(),O()}})),D=(e="")=>(x(t)&&(t=""+s++,H(p,t,[o,a]),G(t,e),o=j(),a=j(),n=1),t),Q=()=>{w(T)||(((e,...t)=>{e.unshift(...t)})(y,D()),b(0,t),t=I(T),n=1)},z=()=>{w(y)||(v(T,t),t=S(y),b(1,t),n=1)},O=()=>{n&&(f(c),n=0)},W=e=>{const t=D(e);return O(),t},G=(e,t)=>(K(e)&&q(R,e)!==t&&(H(R,e,t),f(d,[e])),U),K=e=>F(p,e),U={setSize:e=>(r=e,V(),U),addCheckpoint:W,setCheckpoint:G,getStore:()=>e,getCheckpointIds:()=>[[...T],t,[...y]],forEachCheckpoint:e=>B(R,e),hasCheckpoint:K,getCheckpoint:e=>q(R,e),goBackward:()=>(Q(),O(),U),goForward:()=>(z(),O(),U),goTo:e=>{const s=l(T,e)?Q:l(y,e)?z:null;for(;!x(s)&&e!=t;)s();return O(),U},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),U),clear:()=>(m(T),m(y),x(t)||C(t),t=void 0,s=0,W(),U),destroy:()=>{e.delListener(M),e.delListener(A)},getListenerStats:()=>({})};return ue(U.clear())})),Re=(e,t)=>e<t?-1:1,ve=re((e=>{const t=j(),s=j(),[n,r,o,l,i,c,h,,g,L,w]=se(e,j,(e=>x(e)?"":M(e)?f(e,a):a(e))),[p,R,v]=le((()=>S)),I=(t,s,n)=>{const r=i(t);N(n,((t,n)=>s(n,(s=>N(t,(t=>s(t,(s=>e.forEachCell(r,t,s)))))))))},S={setIndexDefinition:(e,n,r,o,a,l=Re)=>{const i=x(a)?void 0:([e],[t])=>a(e,t);return g(e,n,((n,r,a,f,g,L)=>{let w=0;const p=ee(),v=ee(),I=c(e);if(N(r,(([e,t],s)=>{const n=ee(e),r=ee(t);N(n,(e=>O(r,e)?O(n,e):0)),N(n,(e=>{te(p,e),E(q(I,e),(t=>{O(t,s),P(t)&&(H(I,e),w=1)}))})),N(r,(e=>{te(p,e),F(I,e)||(H(I,e,ee()),w=1),te(q(I,e),s),x(o)||te(v,e)}))})),n(),P(g)||(L?B(I,(e=>te(v,e))):B(a,(e=>E(q(f,e),(e=>te(v,e))))),N(v,(e=>{const t=(t,s)=>l(q(g,t),q(g,s),e),s=[...q(I,e)];d(s,t)||(H(I,e,ee(u(s,t))),te(p,e))}))),(w||L)&&!x(i)){const t=[...I];d(t,i)||(h(e,j(u(t,i))),w=1)}w&&R(t,[e]),N(p,(t=>R(s,[e,t])))}),ne(r),E(o,ne)),S},delIndexDefinition:e=>(L(e),S),getStore:n,getIndexIds:r,forEachIndex:e=>o(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,c(e)),hasIndex:l,hasSlice:(e,t)=>F(c(e),t),getTableId:i,getSliceIds:e=>W(c(e)),getSliceRowIds:(e,t)=>Q(q(c(e),t)),addSliceIdsListener:(e,s)=>p(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>p(n,s,[e,t]),delListener:e=>(v(e),S),destroy:w,getListenerStats:()=>({})};return ue(S)})),Ie=j([["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=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:b(t,e)]],["min",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:C(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Se=(e,t,s,n,r,o=!1)=>{if(P(s))return;const[a,l,i,c]=r;return o||=x(e),N(n,(([s,n])=>{o||(e=x(s)?l?.(e,n,t++):x(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=x(e))})),o?a(Q(s),D(s)):e},Te=re((e=>{const t=j(),[s,n,r,o,a,l,i,,c,d,u]=se(e,A,(e=>isNaN(e)||x(e)||!0===e||!1===e||""===e?void 0:1*e)),[h,f,g]=le((()=>L)),L={setMetricDefinition:(e,s,n,r,o,a,d)=>{const u=J(n)?[n,o,a,d]:q(Ie,n)??q(Ie,"sum");return c(e,s,((s,n,r,o,a,c)=>{const d=l(e),h=D(o);c||=x(d),s();let g=Se(d,h,o,n,u,c);m(g)||(g=void 0),g!=d&&(i(e,g),f(t,[e],g,d))}),ne(r,1)),L},delMetricDefinition:e=>(d(e),L),getStore:s,getMetricIds:n,forEachMetric:r,hasMetric:o,getTableId:a,getMetric:l,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(g(e),L),destroy:u,getListenerStats:()=>({})};return ue(L)})),ye=(e,t,s,n,r)=>{let o,a,l,i=0,c=!1;const d={load:async(s,n)=>{if(2!=i){i=1;const r=await t();x(r)||""==r?e.transaction((()=>e.setTables(s).setValues(n))):e.setJson(r),i=0}return d},startAutoLoad:async(e,t)=>(d.stopAutoLoad(),await d.load(e,t),c=!0,l=n(d.load),d),stopAutoLoad:()=>(c&&(r(l),l=void 0,c=!1),d),save:async()=>(1!=i&&(i=2,await s(e.getJson()),i=0),d),startAutoSave:async()=>(await d.stopAutoSave().save(),o=e.addTablesListener(d.save),a=e.addValuesListener(d.save),d),stopAutoSave:()=>(E(o,e.delListener),E(a,e.delListener),d),getStore:()=>e,destroy:()=>d.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ue(d)},be=globalThis.window,Ce=(e,t,s)=>ye(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{const n=n=>{n.storageArea===s&&n.key===t&&e()};return be.addEventListener("storage",n),n}),(e=>be.removeEventListener("storage",e))),me=e=>e.headers.get("ETag"),Ve=re((e=>{const t=e.createStore,[s,n,r,o,a,,,l,,c,d,u,f]=se(e,(()=>!0),A),g=t(),p=t(),I=j(),S=(e,t,...s)=>h(s,(s=>te($($(I,t,j),e,ee),s))),T=e=>{E(q(I,e),(e=>{B(e,((e,t)=>N(t,(t=>e.delListener(t))))),z(e)})),h([p,g],(t=>t.delTable(e)))},y=(e,t,s)=>S(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),b={setQueryDefinition:(t,s,n)=>{l(t,s),T(t);const r=[],o=[[null,[s,null,null,[],j()]]],a=[],c=[],d=[];n({select:(e,t)=>{const s=J(e)?[L(r)+"",e]:[x(t)?e:t,s=>s(e,t)];return v(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=x(s)||J(t)?null:t,r=x(n)?t:s,a=[e,[e,n,J(r)?r:e=>e(r),[],j()]];return v(o,a),{as:e=>a[0]=e}},where:(e,t,s)=>v(a,J(e)?e:x(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,r)=>{const o=[e,[e,J(t)?[t,s,n,r]:q(Ie,t)??[(e,t)=>t]]];return v(c,o),{as:e=>o[0]=e}},having:(e,t)=>v(d,J(e)?e:s=>s(e)===t)});const R=j(r);if(P(R))return b;const I=j(o);B(I,((e,[,t])=>E(q(I,t),(({3:t})=>x(e)?0:v(t,e)))));const C=j(c);let m=g;if(P(C)&&w(d))m=p;else{y(t,m,p);const e=j();B(C,((t,[s,n])=>te($(e,s,ee),[t,n])));const s=ee();B(R,(t=>F(e,t)?0:te(s,t)));const n=j(),r=(s,n,r,o)=>E(s,(([a,l,c,u])=>{B(n,((t,[s])=>{const n=$(a,t,j),l=q(n,r),i=o?void 0:s;if(l!==i){const s=ee([[l,i]]),o=D(n);H(n,r,i),N(q(e,t),(([e,t])=>{const r=Se(u[e],o,n,s,t);u[e]=x(Y(r))?null:r}))}})),P(l)||!i(d,(e=>e((e=>u[e]))))?p.delRow(t,c):x(c)?s[2]=p.addRow(t,u):p.setRow(t,c,u)}));S(m,t,m.addRowListener(t,null,((o,a,l,i)=>{const c=[],d=[],u=j(),h=m.hasRow(t,l);let f=!h;N(s,(e=>{const[s,n,r]=i(t,l,e);v(c,n),v(d,r),f||=s})),B(e,(e=>{const[s,,n]=i(t,l,e);(f||s)&&H(u,e,[n])})),f&&r(X(n,c,void 0,(([,e])=>(O(e,l),P(e)))),u,l,1),h&&r(X(n,d,(()=>{const e={};return N(s,(s=>e[s]=m.getCell(t,l,s))),[j(),ee(),void 0,e]}),(([,e])=>{te(e,l)})),u,l)})))}y(t,e,m);const V=(n,r,o,l)=>{const c=t=>e.getCell(r,o,t);h(l,(s=>{const[r,,o,a,l]=q(I,s),i=o?.(c,n),[d,h]=q(l,n)??[];i!=d&&(x(h)||f(t,h),H(l,n,x(i)?null:[i,...u(t,1,e.addRowListener(r,i,(()=>V(n,r,i,a))))]))})),(n=>{const r=(t,r)=>e.getCell(...x(r)?[s,n,t]:t===s?[s,n,r]:[q(I,t)?.[0],q(q(I,t)?.[4],n)?.[0],r]);m.transaction((()=>i(a,(e=>e(r)))?B(R,((e,s)=>Z(m,t,n,e,s(r,n)))):m.delRow(t,n)))})(n)},{3:k}=q(I,null);return m.transaction((()=>u(t,1,e.addRowListener(s,null,((n,r,o)=>{e.hasRow(s,o)?V(o,s,o,k):(m.delRow(t,o),N(I,(({4:e})=>E(q(e,o),(([,s])=>{f(t,s),H(e,o)})))))}))))),b},delQueryDefinition:e=>(T(e),c(e),b),getStore:s,getQueryIds:n,forEachQuery:r,hasQuery:o,getTableId:a,delListener:e=>(p.delListener(e),b),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=p.getListenerStats();return n}};return Le({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],s)=>{h(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+s]=(...t)=>p[e+s](...t))),b["addResult"+s+"Listener"]=(...e)=>p["add"+s+"Listener"](...R(e,0,t),((s,...n)=>e[t](b,...n)))})),ue(b)})),xe=re((e=>{const t=j(),s=j(),n=j(),r=j(),[o,a,l,i,c,d,,,u,h,f]=se(e,(()=>[j(),j(),j(),j()]),(e=>x(e)?void 0:e+"")),[g,L,w]=le((()=>I)),p=(e,t,s)=>E(d(e),(([n,,r])=>{if(!F(r,t)){const o=ee();if(c(e)!=v(e))te(o,t);else{let e=t;for(;!x(e)&&!F(o,e);)te(o,e),e=q(n,e)}if(s)return o;H(r,t,o)}return q(r,t)})),R=(e,t)=>E(d(e),(([,,e])=>H(e,t))),v=e=>q(t,e),I={setRelationshipDefinition:(e,o,a,l)=>(H(t,e,a),u(e,o,((t,o)=>{const a=ee(),l=ee(),i=ee(),[c,u]=d(e);N(o,(([t,s],n)=>{x(t)||(te(l,t),E(q(u,t),(e=>{O(e,n),P(e)&&H(u,t)}))),x(s)||(te(l,s),F(u,s)||H(u,s,ee()),te(q(u,s),n)),te(a,n),H(c,n,s),B(q(r,e),(t=>{F(p(e,t),n)&&te(i,t)}))})),t(),N(a,(t=>L(s,[e,t]))),N(l,(t=>L(n,[e,t]))),N(i,(t=>{R(e,t),L(r,[e,t])}))}),ne(l)),I),delRelationshipDefinition:e=>(H(t,e),h(e),I),getStore:o,getRelationshipIds:a,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:i,getLocalTableId:c,getRemoteTableId:v,getRemoteRowId:(e,t)=>q(d(e)?.[0],t),getLocalRowIds:(e,t)=>Q(q(d(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(d(e))?[t]:Q(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>g(s,n,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),g(s,r,[e,t])),delListener:e=>(R(...w(e)),I),destroy:f,getListenerStats:()=>({})};return ue(I)})),Ee=e=>[e,e],ke=()=>[j(),j()],Je=(e,t,s,n=H)=>{const r=(o=e=>!fe(t,e),W(e).filter(o));var o;return h(ce(t),(n=>s(e,n,t[n]))),h(r,(t=>n(e,t))),e},Me=(e,t,s)=>x(e)||!he(e)||we(e)||de(e)?(s?.(),!1):(Le(e,((s,n)=>{t(s,n)||ge(e,n)})),!we(e)),Ae=(e,t,s)=>H(e,t,q(e,t)==-s?void 0:s),De=()=>{let e,t,s,n,o=0;const i=j(),d=j(),g=j(),L=j(),w=j(),p=j(),I=j(),S=j(),b=j(),C=j(),m=j(),V=j(),M=ee(),A=j(),D=j(),Q=j(),X=ke(),se=ke(),ne=ke(),re=ke(),oe=ke(),ie=ke(),ce=ke(),de=ke(),he=ke(),pe=ke(),ve=ke(),Ie=ke(),Se=ke(),Te=ke(),[ye,be,Ce,me]=le((()=>jt)),Ve=e=>{if(!Me(e,((e,t)=>l(["type","default"],t))))return!1;const t=e.type;return!(!k(t)&&t!=r||(Y(e.default)!=t&&ge(e,"default"),0))},xe=(t,s)=>(!e||F(b,s)||dt(s))&&Me(t,((e,t)=>Fe(s,t,e)),(()=>dt(s))),Fe=(e,t,s,n)=>Me(n?s:Ne(s,e,t),((n,r)=>E(Pe(e,t,r,n),(e=>(s[r]=e,!0)),(()=>!1))),(()=>dt(e,t))),Pe=(t,s,n,r)=>e?E(q(q(b,t),n),(e=>Y(r)!=e.type?dt(t,s,n,r,e.default):r),(()=>dt(t,s,n,r))):x(Y(r))?dt(t,s,n,r):r,Qe=(e,t)=>Me(t?e:Oe(e),((t,s)=>E(ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>ut())),ze=(e,s)=>t?E(q(m,e),(t=>Y(s)!=t.type?ut(e,s,t.default):s),(()=>ut(e,s))):x(Y(s))?ut(e,s):s,Ne=(e,t,s)=>(E(q(C,t),(([n,r])=>{N(n,((t,s)=>{fe(e,s)||(e[s]=t)})),N(r,(n=>{fe(e,n)||dt(t,s,n)}))})),e),Oe=e=>(t&&(N(V,((t,s)=>{fe(e,s)||(e[s]=t)})),N(M,(t=>{fe(e,t)||ut(t)}))),e),je=e=>Je(b,e,((e,t,s)=>{const n=j(),r=ee();Je($(b,t,j),s,((e,t,s)=>{H(e,t,s),E(s.default,(e=>H(n,t,e)),(()=>te(r,t)))})),H(C,t,[n,r])}),((e,t)=>{H(b,t),H(C,t)})),We=e=>Je(m,e,((e,t,s)=>{H(m,t,s),E(s.default,(e=>H(V,t,e)),(()=>te(M,t)))}),((e,t)=>{H(m,t),H(V,t),O(M,t)})),qe=e=>we(e)?Dt():Et(e),Be=e=>Je(D,e,((e,t,s)=>He(t,s)),((e,t)=>et(t))),He=(e,t)=>Je($(D,e,(()=>(rt(e,1),j()))),t,((t,s,n)=>$e(e,t,s,n)),((t,s)=>tt(e,t,s))),$e=(e,t,s,n,r)=>Je($(t,s,(()=>(ot(e,s,1),j()))),n,((t,n,r)=>Ge(e,s,t,n,r)),((n,o)=>st(e,t,s,n,o,r))),Ge=(e,t,s,n,r)=>{F(s,n)||at(e,t,n,1);const o=q(s,n);r!==o&&(lt(e,t,n,o,r),H(s,n,r))},Ke=(e,t,s,n,r)=>E(q(t,s),(t=>Ge(e,s,t,n,r)),(()=>$e(e,t,s,Ne({[n]:r},e,s)))),Ue=e=>we(e)?Ft():kt(e),Xe=e=>Je(Q,e,((e,t,s)=>Ye(t,s)),((e,t)=>nt(t))),Ye=(e,t)=>{F(Q,e)||it(e,1);const s=q(Q,e);t!==s&&(ct(e,s,t),H(Q,e,t))},Ze=(e,t)=>{const[s]=$(A,e,ae),n=s(t);return F(q(D,e),n)?Ze(e,t):n},_e=e=>q(D,e)??He(e,{}),et=e=>He(e,{}),tt=(e,t,s)=>{const[,n]=$(A,e,ae);n(s),$e(e,t,s,{},!0)},st=(e,t,s,n,r,o)=>{const a=q(q(C,e)?.[0],r);if(!x(a)&&!o)return Ge(e,s,n,r,a);const l=t=>{lt(e,s,t,q(n,t)),at(e,s,t,-1),H(n,t)};x(a)?l(r):B(n,l),P(n)&&(ot(e,s,-1),P(H(t,s))&&(rt(e,-1),H(D,e),H(A,e)))},nt=e=>{const t=q(V,e);if(!x(t))return Ye(e,t);ct(e,q(Q,e)),it(e,-1),H(Q,e)},rt=(e,t)=>Ae(i,e,t),ot=(e,t,s)=>Ae($(d,e,j),t,s),at=(e,t,s,n)=>Ae($($(g,e,j),t,j),s,n),lt=(e,t,s,n,r)=>$($($(L,e,j),t,j),s,(()=>[n,0]))[1]=r,it=(e,t)=>Ae(w,e,t),ct=(e,t,s)=>$(p,e,(()=>[t,0]))[1]=s,dt=(e,t,s,n,r)=>(v($($($(I,e,j),t,j),s,(()=>[])),n),r),ut=(e,t,s)=>(v($(S,e,(()=>[])),t),s),ht=(e,t,s)=>E(q(q(q(L,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(Ct(e,t,s))])),ft=e=>E(q(p,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(xt(e))])),gt=e=>P(I)||P(he[e])?0:N(e?K(I,U):I,((t,s)=>N(t,((t,n)=>N(t,((t,r)=>be(he[e],[s,n,r],t))))))),Lt=e=>P(S)||P(pe[e])?0:N(e?K(S):S,((t,s)=>be(pe[e],[s],t))),wt=(e,t,s)=>{if(!P(t))return be(e,s),1},pt=e=>{const t=P(oe[e]),s=P(ce[e])&&P(re[e])&&t&&P(se[e]),n=P(de[e])&&P(ie[e])&&P(ne[e])&&P(X[e]);if(!s||!n){const r=e?[K(i),U(d),K(g,U),K(L,U)]:[i,d,g,L];if(!s){N(r[2],((t,s)=>N(t,((t,n)=>wt(ce[e],t,[s,n])))));const s=ee();N(r[1],((n,r)=>{wt(re[e],n,[r])&&!t&&(be(oe[e],[r,null]),te(s,r))})),t||N(r[3],((t,n)=>{if(!F(s,n)){const s=ee();N(t,(e=>N(e,(([t,n],r)=>n!==t?te(s,r):O(e,r))))),N(s,(t=>be(oe[e],[n,t])))}})),wt(se[e],r[0])}if(!n){let t;N(r[3],((s,n)=>{let r;N(s,((s,o)=>{let a;N(s,(([s,l],i)=>{l!==s&&(be(de[e],[n,o,i],l,s,ht),t=r=a=1)})),a&&be(ie[e],[n,o],ht)})),r&&be(ne[e],[n],ht)})),t&&be(X[e],void 0,ht)}}},Rt=e=>{const t=P(Ie[e]),s=P(Se[e])&&P(ve[e]);if(!t||!s){const n=e?[K(w),K(p)]:[w,p];if(t||wt(Ie[e],n[0]),!s){let t;N(n[1],(([s,n],r)=>{n!==s&&(be(Se[e],[r],n,s,ft),t=1)})),t&&be(ve[e],void 0,ft)}}},vt=(e,...t)=>(zt((()=>e(...f(t,a)))),jt),It=()=>G(D,(e=>G(e,G))),St=()=>W(D),Tt=e=>W(q(D,a(e))),yt=(e,t,s,n=0,r)=>{return f(R(u((o=q(D,a(e)),l=(e,s)=>[x(t)?s:q(e,a(t)),s],f([...o?.entries()??[]],(([e,t])=>l(t,e)))),(([e],[t])=>Re(e,t)*(s?-1:1))),n,x(r)?r:n+r),(([,e])=>e));var o,l},bt=(e,t)=>W(q(q(D,a(e)),a(t))),Ct=(e,t,s)=>q(q(q(D,a(e)),a(t)),a(s)),mt=()=>G(Q),Vt=()=>W(Q),xt=e=>q(Q,a(e)),Et=e=>vt((()=>(e=>Me(e,xe,dt))(e)?Be(e):0)),kt=e=>vt((()=>Qe(e)?Xe(e):0)),Jt=e=>{try{qe(y(e))}catch{}return jt},Mt=t=>vt((()=>{if((e=Me(t,(e=>Me(e,Ve))))&&(je(t),!P(D))){const e=It();Dt(),Et(e)}})),At=e=>vt((()=>{if(t=(e=>Me(e,Ve))(e)){const s=mt();Qt(),Ft(),t=!0,We(e),kt(s)}})),Dt=()=>vt((()=>Be({}))),Ft=()=>vt((()=>Xe({}))),Pt=()=>vt((()=>{je({}),e=!1})),Qt=()=>vt((()=>{We({}),t=!1})),zt=(e,t)=>{if(-1==o)return;Nt();const s=e();return Ot(t),s},Nt=()=>(o++,jt),Ot=e=>(o>0&&(o--,0==o&&(s=!P(L),n=!P(p),o=1,gt(1),s&&pt(1),Lt(1),n&&Rt(1),o=-1,e?.(G(L,(e=>G(e,(e=>G(e,(e=>[...e]),(([e,t])=>e===t))),we)),we),G(I,(e=>G(e,G))),G(p,(e=>[...e]),(([e,t])=>e===t)),G(S))&&(o=1,N(L,((e,t)=>N(e,((e,s)=>N(e,(([e],n)=>Z(jt,t,s,n,e))))))),N(p,(([e],t)=>_(jt,t,e))),o=-1,s=n=!1),be(Te[0],void 0,s,n),gt(0),s&&pt(0),Lt(0),n&&Rt(0),be(Te[1],void 0,s,n),o=0,h([i,d,g,L,I,w,p,S],z))),jt),jt={getTables:It,getTableIds:St,getTable:e=>G(q(D,a(e)),G),getRowIds:Tt,getSortedRowIds:yt,getRow:(e,t)=>G(q(q(D,a(e)),a(t))),getCellIds:bt,getCell:Ct,getValues:mt,getValueIds:Vt,getValue:xt,hasTables:()=>!P(D),hasTable:e=>F(D,a(e)),hasRow:(e,t)=>F(q(D,a(e)),a(t)),hasCell:(e,t,s)=>F(q(q(D,a(e)),a(t)),a(s)),hasValues:()=>!P(Q),hasValue:e=>F(Q,a(e)),getTablesJson:()=>T(D),getValuesJson:()=>T(Q),getJson:()=>T([D,Q]),getTablesSchemaJson:()=>T(b),getValuesSchemaJson:()=>T(m),getSchemaJson:()=>T([b,m]),setTables:Et,setTable:(e,t)=>vt((e=>xe(t,e)?He(e,t):0),e),setRow:(e,t,s)=>vt(((e,t)=>Fe(e,t,s)?$e(e,_e(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zt((()=>{let n;return Fe(e,n,t)&&(e=a(e),$e(e,_e(e),n=Ze(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>vt(((e,t)=>{if(Fe(e,t,s,1)){const n=_e(e);Le(s,((s,r)=>Ke(e,n,t,r,s)))}}),e,t),setCell:(e,t,s,n)=>vt(((e,t,s)=>E(Pe(e,t,s,J(n)?n(Ct(e,t,s)):n),(n=>Ke(e,_e(e),t,s,n)))),e,t,s),setValues:kt,setPartialValues:e=>vt((()=>Qe(e,1)?Le(e,((e,t)=>Ye(t,e))):0)),setValue:(e,t)=>vt((e=>E(ze(e,J(t)?t(xt(e)):t),(t=>Ye(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Ue(y(e))}catch{}return jt},setJson:e=>{try{const[t,s]=y(e);qe(t),Ue(s)}catch{Jt(e)}return jt},setTablesSchema:Mt,setValuesSchema:At,setSchema:(e,t)=>vt((()=>{Mt(e),At(t)})),delTables:Dt,delTable:e=>vt((e=>F(D,e)?et(e):0),e),delRow:(e,t)=>vt(((e,t)=>E(q(D,e),(s=>F(s,t)?tt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>vt(((e,t,s)=>E(q(D,e),(r=>E(q(r,t),(o=>F(o,s)?st(e,r,t,o,s,n):0))))),e,t,s),delValues:Ft,delValue:e=>vt((e=>F(Q,e)?nt(e):0),e),delTablesSchema:Pt,delValuesSchema:Qt,delSchema:()=>vt((()=>{Pt(),Qt()})),transaction:zt,startTransaction:Nt,finishTransaction:Ot,forEachTable:e=>N(D,((t,s)=>e(s,(e=>N(t,((t,s)=>e(s,(e=>B(t,e))))))))),forEachRow:(e,t)=>N(q(D,a(e)),((e,s)=>t(s,(t=>B(e,t))))),forEachCell:(e,t,s)=>B(q(q(D,a(e)),a(t)),s),forEachValue:e=>B(Q,e),addSortedRowIdsListener:(e,t,s,n,r,o,a)=>{let l=yt(e,t,s,n,r);return ye((()=>{const a=yt(e,t,s,n,r);c(a,l)||(l=a,o(jt,e,t,s,n,r,l))}),oe[a?1:0],[e,t],[St])},addWillFinishTransactionListener:e=>ye(e,Te[0]),addDidFinishTransactionListener:e=>ye(e,Te[1]),callListener:e=>(me(e),jt),delListener:e=>(Ce(e),jt),getListenerStats:()=>({}),createStore:De};return Le({Tables:[0,X],TableIds:[0,se],Table:[1,ne,[St]],RowIds:[1,re,[St]],Row:[2,ie,[St,Tt]],CellIds:[2,ce,[St,Tt]],Cell:[3,de,[St,Tt,bt],e=>Ee(Ct(...e))],InvalidCell:[3,he],Values:[0,ve],ValueIds:[0,Ie],Value:[1,Se,[Vt],e=>Ee(xt(e[0]))],InvalidValue:[1,pe]},(([e,t,s,n],r)=>{jt["add"+r+"Listener"]=(...r)=>ye(r[e],t[r[e+1]?1:0],e>0?R(r,0,e):void 0,s,n)})),ue(jt)};exports.createCheckpoints=pe,exports.createCustomPersister=ye,exports.createFilePersister=(t,s)=>ye(t,(async()=>{try{return await e.promises.readFile(s,"utf8")}catch{}}),(async t=>{try{await e.promises.writeFile(s,t,"utf8")}catch{}}),(t=>e.watch(s,t)),(e=>e?.close())),exports.createIndexes=ve,exports.createLocalPersister=(e,t)=>Ce(e,t,localStorage),exports.createMetrics=Te,exports.createQueries=Ve,exports.createRelationships=xe,exports.createRemotePersister=(e,t,s,n)=>{let r;return ye(e,(async()=>{const e=await fetch(t);return r=me(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=me(s);x(r)||x(n)||n==r||(r=n,e())}),1e3*n)),(e=>clearInterval(e)))},exports.createSessionPersister=(e,t)=>Ce(e,t,sessionStorage),exports.createStore=De,exports.defaultSorter=Re;
|
|
1
|
+
"use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),o=e(0),a=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Ids",h="Table",g=h+"s",f=h+u,L="Row",w=L+u,R="Sorted"+L+u,S="Cell",v=S+u,I="Value",p=I+"s",T=I+u,C=e=>t+e,y=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,s)=>t[s]===e)),m=(e,t)=>b(e,((s,n)=>0==n||t(e[n-1],s)<=0)),x=(e,t)=>e.sort(t),k=(e,t)=>e.forEach(t),E=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,s)=>e.reduce(t,s),F=(e,t,s)=>e.slice(t,s),Q=(e,...t)=>e.push(...t),z=e=>e.pop(),N=e=>e.shift(),O=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),P=JSON.parse,W=Math.max,j=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,s)=>q(e)?s?.():t(e),H=e=>e==s||e==n,K=t=>e(t)==a,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,se=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),ne=(e,t)=>delete e[t],oe=(e,t)=>E(Y.entries(e),(([e,s])=>t(s,e))),ae=e=>te(e)&&J(Z(e)),re=e=>e.size,le=(e,t)=>e?.has(t)??!1,ie=e=>q(e)||0==re(e),ce=e=>[...e?.values()??[]],de=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),Re=(e,t,s)=>q(s)?(he(e,t),e):e?.set(t,s),Se=(e,t,s)=>(le(e,t)||Re(e,t,s()),Le(e,t)),ve=(e,t,s)=>{const n={};return ue(e,((e,o)=>{const a=t?t(e,o):e;!s?.(a,e)&&(n[o]=a)})),n},Ie=(e,t,s)=>ve(e,(e=>ve(e,t,s)),ae),pe=(e,t,s)=>ve(e,(e=>Ie(e,t,s)),ae),Te=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ce=e=>Te(e,Te),ye=e=>Te(e,Ce),be=(e,t,s,n,o=0)=>G((s?Se:Le)(e,t[o],o>D(t)-2?s:ge),(a=>{if(o>D(t)-2)return n?.(a)&&Re(e,t[o]),a;const r=be(a,t,s,n,o+1);return ie(a)&&Re(e,t[o]),r})),Ve=t=>{const s=e(t);return H(s)||s==o&&B(t)?s:void 0},me=(e,t,s,n,o)=>q(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),xe=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),ke=e=>new Set(U(e)||q(e)?e:[e]),Ee=(e,t)=>e?.add(t),Me=(e,t,s)=>{const n=e.hasRow,o=ge(),a=ge(),r=ge(),l=ge(),i=ge(),c=(t,s,...n)=>{const o=Se(i,t,ke);return k(n,(t=>Ee(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>G(Le(i,t),(n=>{k(J(s)?ce(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&Re(i,t)})),u=(e,s)=>{Re(o,e,s),le(a,e)||(Re(a,e,t()),Re(r,e,ge()),Re(l,e,ge()))},h=e=>{Re(o,e),Re(a,e),Re(r,e),Re(l,e),d(e)};return[()=>e,()=>fe(o),e=>we(a,e),e=>le(a,e),e=>Le(o,e),e=>Le(a,e),(e,t)=>Re(a,e,t),u,(t,o,a,i,h)=>{u(t,o);const g=ge(),f=ge(),L=Le(r,t),w=Le(l,t),R=t=>{const a=s=>e.getCell(o,t,s),r=Le(L,t),l=n(o,t)?s(i(a,t)):void 0;if(r===l||U(r)&&U(l)&&V(r,l)||Re(g,t,[r,l]),!q(h)){const e=Le(w,t),s=n(o,t)?h(a,t):void 0;e!=s&&Re(f,t,s)}},S=e=>{a((()=>{ue(g,(([,e],t)=>Re(L,t,e))),ue(f,((e,t)=>Re(w,t,e)))}),g,f,L,w,e),de(g),de(f)};we(L,R),e.hasTable(o)&&k(e.getRowIds(o),(e=>{le(L,e)||R(e)})),S(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>R(s))),e.addTableListener(o,(()=>S())))},h,()=>we(i,h),c,d]},De=(n,o)=>e(n)==s?e=>e(n):n??(()=>o??t),Je=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Ae=/^\d+$/,Fe=()=>{const e=[];let s=0;return[n=>(n?N(e):null)??t+s++,t=>{Ae.test(t)&&D(e)<1e3&&Q(e,t)}]},Qe=e=>{let s;const[n,o]=Fe(),a=ge();return[(o,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Re(a,d,[o,r,l,i,c]),Ee(be(r,l??[t],ke),d),d},(e,n,...o)=>k(((e,s=[t])=>{const n=[],o=(e,t)=>t==D(s)?Q(n,e):null===s[t]?ue(e,(e=>o(e,t+1))):k([s[t],null],(s=>o(Le(e,s),t+1)));return o(e,0),n})(e,n),(e=>ue(e,(e=>Le(a,e)[0](s,...n??[],...o))))),e=>G(Le(a,e),(([,s,n])=>(be(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),Re(a,e),o(e),n))),e=>G(Le(a,e),(([e,,t=[],n,o])=>{const a=(...r)=>{const l=D(r);l==D(t)?e(s,...r,...o(r)):q(t[l])?k(n[l]?.(...r)??[],(e=>a(...r,e))):a(...r,t[l])};a()}))]},ze=Je((e=>{let s,n,o,a=100,r=ge(),l=ge(),i=1;const c=ge(),d=ge(),[u,h,g]=Qe((()=>P)),f=ge(),L=ge(),w=[],R=[],S=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=Le(f,s);ue(n,((s,n)=>ue(s,((s,o)=>ue(s,((s,a)=>me(e,n,o,a,s[t]))))))),ue(o,((s,n)=>xe(e,n,s[t])))})),i=1},v=e=>{Re(f,e),Re(L,e),h(d,[e])},I=(e,t)=>k(((e,t)=>e.splice(0,t))(e,t??D(e)),v),p=()=>I(w,D(w)-a),T=()=>G(s,(()=>{Q(w,s),p(),I(R),s=void 0,o=1})),C=()=>{s=z(w),o=1},b=e.addCellListener(null,null,null,((e,t,s,n,o,a)=>{if(i){T();const e=Se(r,t,ge),l=Se(e,s,ge),i=Se(l,n,(()=>[a,void 0]));i[1]=o,i[0]===o&&ie(Re(l,n))&&ie(Re(e,s))&&ie(Re(r,t))&&C(),M()}})),V=e.addValueListener(null,((e,t,s,n)=>{if(i){T();const e=Se(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(Re(l,t))&&C(),M()}})),m=(e="")=>(q(s)&&(s=t+n++,Re(f,s,[r,l]),F(s,e),r=ge(),l=ge(),o=1),s),x=()=>{J(w)||(((e,...t)=>{e.unshift(...t)})(R,m()),S(0,s),s=z(w),o=1)},E=()=>{J(R)||(Q(w,s),s=N(R),S(1,s),o=1)},M=()=>{o&&(h(c),o=0)},A=e=>{const t=m(e);return M(),t},F=(e,t)=>(O(e)&&Le(L,e)!==t&&(Re(L,e,t),h(d,[e])),P),O=e=>le(f,e),P={setSize:e=>(a=e,p(),P),addCheckpoint:A,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...R]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:O,getCheckpoint:e=>Le(L,e),goBackward:()=>(x(),M(),P),goForward:()=>(E(),M(),P),goTo:e=>{const t=y(w,e)?x:y(R,e)?E:null;for(;!q(t)&&e!=s;)t();return M(),P},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),P),clear:()=>(I(w),I(R),q(s)||v(s),s=void 0,n=0,A(),P),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(P.clear())})),Ne=(e,t)=>e<t?-1:1,Oe=Je((e=>{const s=ge(),n=ge(),[o,a,r,l,i,c,d,,u,h,g]=Me(e,ge,(e=>q(e)?t:U(e)?E(e,C):C(e))),[f,L,w]=Qe((()=>S)),R=(t,s,n)=>{const o=i(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,t,o,a,r,l=Ne)=>{const i=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,o,r,u,h,g)=>{let f=0;const w=ke(),R=ke(),S=c(e);if(ue(o,(([e,t],s)=>{const n=ke(e),o=ke(t);ue(n,(e=>he(o,e)?he(n,e):0)),ue(n,(e=>{Ee(w,e),G(Le(S,e),(t=>{he(t,s),ie(t)&&(Re(S,e),f=1)}))})),ue(o,(e=>{Ee(w,e),le(S,e)||(Re(S,e,ke()),f=1),Ee(Le(S,e),s),q(a)||Ee(R,e)}))})),t(),ie(h)||(g?we(S,(e=>Ee(R,e))):we(r,(e=>G(Le(u,e),(e=>Ee(R,e))))),ue(R,(e=>{const t=(t,s)=>l(Le(h,t),Le(h,s),e),s=[...Le(S,e)];m(s,t)||(Re(S,e,ke(x(s,t))),Ee(w,e))}))),(f||g)&&!q(i)){const t=[...S];m(t,i)||(d(e,ge(x(t,i))),f=1)}f&&L(s,[e]),ue(w,(t=>L(n,[e,t])))}),De(o),G(a,De)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:a,forEachIndex:e=>r(((t,s)=>e(t,(e=>R(t,e,s))))),forEachSlice:(e,t)=>R(e,t,c(e)),hasIndex:l,hasSlice:(e,t)=>le(c(e),t),getTableId:i,getSliceIds:e=>fe(c(e)),getSliceRowIds:(e,t)=>ce(Le(c(e),t)),addSliceIdsListener:(e,t)=>f(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>f(s,n,[e,t]),delListener:e=>(w(e),S),destroy:g,getListenerStats:()=>({})};return ee(S)})),Pe=ge([["avg",[(e,t)=>M(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=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:W(t,e)]],["min",[e=>j(...e),(e,t)=>j(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:j(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,o,a=!1)=>{if(ie(s))return;const[r,l,i,c]=o;return a||=q(e),ue(n,(([s,n])=>{a||(e=q(s)?l?.(e,n,t++):q(n)?i?.(e,s,t--):c?.(e,n,s,t),a||=q(e))})),a?r(ce(s),re(s)):e},je=Je((e=>{const s=ge(),[n,o,a,r,l,i,c,,d,u,h]=Me(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[g,f,L]=Qe((()=>w)),w={setMetricDefinition:(e,t,n,o,a,r,l)=>{const u=K(n)?[n,a,r,l]:Le(Pe,n)??Le(Pe,"sum");return d(e,t,((t,n,o,a,r,l)=>{const d=i(e),h=re(a);l||=q(d),t();let g=We(d,h,a,n,u,l);B(g)||(g=void 0),g!=d&&(c(e,g),f(s,[e],g,d))}),De(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:n,getMetricIds:o,forEachMetric:a,hasMetric:r,getTableId:l,getMetric:i,addMetricListener:(e,t)=>g(t,s,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return ee(w)})),Be=Je((e=>{const s=e.createStore,[n,o,a,r,l,,,u,,g,f,I,p]=Me(e,(()=>!0),X),T=s(),C=s(),y=ge(),V=(e,t,...s)=>k(s,(s=>Ee(Se(Se(y,t,ge),e,ke),s))),m=e=>{G(Le(y,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),de(e)})),k([C,T],(t=>t.delTable(e)))},x=(e,t,s)=>V(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),E={setQueryDefinition:(s,n,o)=>{u(s,n),m(s);const a=[],r=[[null,[n,null,null,[],ge()]]],l=[],i=[],c=[];o({select:(e,s)=>{const n=K(e)?[D(a)+t,e]:[q(s)?e:s,t=>t(e,s)];return Q(a,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=q(s)||K(t)?null:t,o=q(n)?t:s,a=[e,[e,n,K(o)?o:e=>e(o),[],ge()]];return Q(r,a),{as:e=>a[0]=e}},where:(e,t,s)=>Q(l,K(e)?e:q(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,K(t)?[t,s,n,o]:Le(Pe,t)??[(e,t)=>t]]];return Q(i,a),{as:e=>a[0]=e}},having:(e,t)=>Q(c,K(e)?e:s=>s(e)===t)});const d=ge(a);if(ie(d))return E;const h=ge(r);we(h,((e,[,t])=>G(Le(h,t),(({3:t})=>q(e)?0:Q(t,e)))));const g=ge(i);let f=T;if(ie(g)&&J(c))f=C;else{x(s,f,C);const e=ge();we(g,((t,[s,n])=>Ee(Se(e,s,ke),[t,n])));const t=ke();we(d,(s=>le(e,s)?0:Ee(t,s)));const n=ge(),o=(t,n,o,a)=>G(t,(([r,l,i,d])=>{we(n,((t,[s])=>{const n=Se(r,t,ge),l=Le(n,o),i=a?void 0:s;if(l!==i){const s=ke([[l,i]]),a=re(n);Re(n,o,i),ue(Le(e,t),(([e,t])=>{const o=We(d[e],a,n,s,t);d[e]=q(Ve(o))?null:o}))}})),ie(l)||!b(c,(e=>e((e=>d[e]))))?C.delRow(s,i):q(i)?t[2]=C.addRow(s,d):C.setRow(s,i,d)}));V(f,s,f.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=ge(),h=f.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,o]=i(s,l,e);Q(c,n),Q(d,o),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&Re(u,e,[n])})),g&&o(be(n,c,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&o(be(n,d,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(s,l,t))),[ge(),ke(),void 0,e]}),(([,e])=>{Ee(e,l)})),u,l)})))}x(s,e,f);const L=(t,o,a,r)=>{const i=t=>e.getCell(o,a,t);k(r,(n=>{const[o,,a,r,l]=Le(h,n),c=a?.(i,t),[d,u]=Le(l,t)??[];c!=d&&(q(u)||p(s,u),Re(l,t,q(c)?null:[c,...I(s,1,e.addRowListener(o,c,(()=>L(t,o,c,r))))]))})),(t=>{const o=(s,o)=>e.getCell(...q(o)?[n,t,s]:s===n?[n,t,o]:[Le(h,s)?.[0],Le(Le(h,s)?.[4],t)?.[0],o]);f.transaction((()=>b(l,(e=>e(o)))?we(d,((e,n)=>me(f,s,t,e,n(o,t)))):f.delRow(s,t)))})(t)},{3:w}=Le(h,null);return f.transaction((()=>I(s,1,e.addRowListener(n,null,((t,o,a)=>{e.hasRow(n,a)?L(a,n,a,w):(f.delRow(s,a),ue(h,(({4:e})=>G(Le(e,a),(([,t])=>{p(s,t),Re(e,a)})))))}))))),E},delQueryDefinition:e=>(m(e),g(e),E),getStore:n,getQueryIds:o,forEachQuery:a,hasQuery:r,getTableId:l,delListener:e=>(C.delListener(e),E),destroy:f,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=C.getListenerStats();return n}};return oe({[h]:[1,1],[w]:[0,1],[R]:[0,5],[L]:[1,2],[v]:[0,2],[S]:[1,3]},(([e,t],s)=>{k(e?["get","has","forEach"]:["get"],(e=>E[e+c+s]=(...t)=>C[e+s](...t))),E[d+c+s+i]=(...e)=>C[d+s+i](...F(e,0,t),((s,...n)=>e[t](E,...n)))})),ee(E)})),$e=Je((e=>{const s=ge(),n=ge(),o=ge(),a=ge(),[r,l,i,c,d,u,,,h,g,f]=Me(e,(()=>[ge(),ge(),ge(),ge()]),(e=>q(e)?void 0:e+t)),[L,w,R]=Qe((()=>p)),S=(e,t,s)=>G(u(e),(([n,,o])=>{if(!le(o,t)){const a=ke();if(d(e)!=I(e))Ee(a,t);else{let e=t;for(;!q(e)&&!le(a,e);)Ee(a,e),e=Le(n,e)}if(s)return a;Re(o,t,a)}return Le(o,t)})),v=(e,t)=>G(u(e),(([,,e])=>Re(e,t))),I=e=>Le(s,e),p={setRelationshipDefinition:(e,t,r,l)=>(Re(s,e,r),h(e,t,((t,s)=>{const r=ke(),l=ke(),i=ke(),[c,d]=u(e);ue(s,(([t,s],n)=>{q(t)||(Ee(l,t),G(Le(d,t),(e=>{he(e,n),ie(e)&&Re(d,t)}))),q(s)||(Ee(l,s),le(d,s)||Re(d,s,ke()),Ee(Le(d,s),n)),Ee(r,n),Re(c,n,s),we(Le(a,e),(t=>{le(S(e,t),n)&&Ee(i,t)}))})),t(),ue(r,(t=>w(n,[e,t]))),ue(l,(t=>w(o,[e,t]))),ue(i,(t=>{v(e,t),w(a,[e,t])}))}),De(l)),p),delRelationshipDefinition:e=>(Re(s,e),g(e),p),getStore:r,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:I,getRemoteRowId:(e,t)=>Le(u(e)?.[0],t),getLocalRowIds:(e,t)=>ce(Le(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>q(u(e))?[t]:ce(S(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>L(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),L(s,a,[e,t])),delListener:e=>(v(...R(e)),p),destroy:f,getListenerStats:()=>({})};return ee(p)})),qe=e=>[e,e],Ge=()=>[ge(),ge()],He=e=>[...e],Ke=([e,t])=>e===t,Ue=(e,t,s,n=Re)=>(oe(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Xe=(e,t,s)=>q(e)||!te(e)||ae(e)||_(e)?(s?.(),!1):(oe(e,((s,n)=>{t(s,n)||ne(e,n)})),!ae(e)),Ye=(e,t,s)=>Re(e,t,Le(e,t)==-s?void 0:s),Ze=()=>{let e,t,s,n,a=0;const c=ge(),u=ge(),R=ge(),b=ge(),m=ge(),M=ge(),D=ge(),J=ge(),A=ge(),z=ge(),N=ge(),W=ge(),j=ke(),B=ge(),$=ge(),U=ge(),X=Ge(),Y=Ge(),Z=Ge(),_=Ge(),te=Ge(),re=Ge(),ce=Ge(),be=Ge(),Me=Ge(),De=Ge(),Je=Ge(),Ae=Ge(),ze=Ge(),Oe=Ge(),[Pe,We,je,Be]=Qe((()=>ds)),$e=e=>{if(!Xe(e,((e,t)=>y([r,l],t))))return!1;const t=e[r];return!(!H(t)&&t!=o||(Ve(e[l])!=t&&ne(e,l),0))},_e=(t,s)=>(!e||le(A,s)||kt(s))&&Xe(t,((e,t)=>et(s,t,e)),(()=>kt(s))),et=(e,t,s,n)=>Xe(n?s:ot(s,e,t),((n,o)=>G(tt(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>kt(e,t))),tt=(t,s,n,o)=>e?G(Le(Le(A,t),n),(e=>Ve(o)!=e[r]?kt(t,s,n,o,e[l]):o),(()=>kt(t,s,n,o))):q(Ve(o))?kt(t,s,n,o):o,st=(e,t)=>Xe(t?e:at(e),((t,s)=>G(nt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Et())),nt=(e,s)=>t?G(Le(N,e),(t=>Ve(s)!=t[r]?Et(e,s,t[l]):s),(()=>Et(e,s))):q(Ve(s))?Et(e,s):s,ot=(e,t,s)=>(G(Le(z,t),(([n,o])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(o,(n=>{se(e,n)||kt(t,s,n)}))})),e),at=e=>(t&&(ue(W,((t,s)=>{se(e,s)||(e[s]=t)})),ue(j,(t=>{se(e,t)||Et(t)}))),e),rt=e=>Ue(A,e,((e,t,s)=>{const n=ge(),o=ke();Ue(Se(A,t,ge),s,((e,t,s)=>{Re(e,t,s),G(s[l],(e=>Re(n,t,e)),(()=>Ee(o,t)))})),Re(z,t,[n,o])}),((e,t)=>{Re(A,t),Re(z,t)})),lt=e=>Ue(N,e,((e,t,s)=>{Re(N,t,s),G(s[l],(e=>Re(W,t,e)),(()=>Ee(j,t)))}),((e,t)=>{Re(N,t),Re(W,t),he(j,t)})),it=e=>ae(e)?ts():Xt(e),ct=e=>Ue($,e,((e,t,s)=>dt(t,s)),((e,t)=>vt(t))),dt=(e,t)=>Ue(Se($,e,(()=>(Ct(e,1),ge()))),t,((t,s,n)=>ut(e,t,s,n)),((t,s)=>It(e,t,s))),ut=(e,t,s,n,o)=>Ue(Se(t,s,(()=>(yt(e,s,1),ge()))),n,((t,n,o)=>ht(e,s,t,n,o)),((n,a)=>pt(e,t,s,n,a,o))),ht=(e,t,s,n,o)=>{le(s,n)||bt(e,t,n,1);const a=Le(s,n);o!==a&&(Vt(e,t,n,a,o),Re(s,n,o))},gt=(e,t,s,n,o)=>G(Le(t,s),(t=>ht(e,s,t,n,o)),(()=>ut(e,t,s,ot({[n]:o},e,s)))),ft=e=>ae(e)?os():Yt(e),Lt=e=>Ue(U,e,((e,t,s)=>wt(t,s)),((e,t)=>Tt(t))),wt=(e,t)=>{le(U,e)||mt(e,1);const s=Le(U,e);t!==s&&(xt(e,s,t),Re(U,e,t))},Rt=(e,t)=>{const[s]=Se(B,e,Fe),n=s(t);return le(Le($,e),n)?Rt(e,t):n},St=e=>Le($,e)??dt(e,{}),vt=e=>dt(e,{}),It=(e,t,s)=>{const[,n]=Se(B,e,Fe);n(s),ut(e,t,s,{},!0)},pt=(e,t,s,n,o,a)=>{const r=Le(Le(z,e)?.[0],o);if(!q(r)&&!a)return ht(e,s,n,o,r);const l=t=>{Vt(e,s,t,Le(n,t)),bt(e,s,t,-1),Re(n,t)};q(r)?l(o):we(n,l),ie(n)&&(yt(e,s,-1),ie(Re(t,s))&&(Ct(e,-1),Re($,e),Re(B,e)))},Tt=e=>{const t=Le(W,e);if(!q(t))return wt(e,t);xt(e,Le(U,e)),mt(e,-1),Re(U,e)},Ct=(e,t)=>Ye(c,e,t),yt=(e,t,s)=>Ye(Se(u,e,ge),t,s),bt=(e,t,s,n)=>Ye(Se(Se(R,e,ge),t,ge),s,n),Vt=(e,t,s,n,o)=>Se(Se(Se(b,e,ge),t,ge),s,(()=>[n,0]))[1]=o,mt=(e,t)=>Ye(m,e,t),xt=(e,t,s)=>Se(M,e,(()=>[t,0]))[1]=s,kt=(e,t,s,n,o)=>(Q(Se(Se(Se(D,e,ge),t,ge),s,(()=>[])),n),o),Et=(e,t,s)=>(Q(Se(J,e,(()=>[])),t),s),Mt=(e,t,s)=>G(Le(Le(Le(b,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...qe(Gt(e,t,s))])),Dt=e=>G(Le(M,e),(([e,t])=>[!0,e,t]),(()=>[!1,...qe(Ut(e))])),Jt=e=>ie(D)||ie(Me[e])?0:ue(e?ye(D):D,((t,s)=>ue(t,((t,n)=>ue(t,((t,o)=>We(Me[e],[s,n,o],t))))))),At=e=>ie(J)||ie(De[e])?0:ue(e?Te(J):J,((t,s)=>We(De[e],[s],t))),Ft=(e,t,s)=>{if(!ie(t))return We(e,s),1},Qt=e=>{const t=ie(te[e]),s=ie(ce[e])&&ie(_[e])&&t&&ie(Y[e]),n=ie(be[e])&&ie(re[e])&&ie(Z[e])&&ie(X[e]);if(!s||!n){const o=e?[Te(c),Ce(u),ye(R),ye(b)]:[c,u,R,b];if(!s){ue(o[2],((t,s)=>ue(t,((t,n)=>Ft(ce[e],t,[s,n])))));const s=ke();ue(o[1],((n,o)=>{Ft(_[e],n,[o])&&!t&&(We(te[e],[o,null]),Ee(s,o))})),t||ue(o[3],((t,n)=>{if(!le(s,n)){const s=ke();ue(t,(e=>ue(e,(([t,n],o)=>n!==t?Ee(s,o):he(e,o))))),ue(s,(t=>We(te[e],[n,t])))}})),Ft(Y[e],o[0])}if(!n){let t;ue(o[3],((s,n)=>{let o;ue(s,((s,a)=>{let r;ue(s,(([s,l],i)=>{l!==s&&(We(be[e],[n,a,i],l,s,Mt),t=o=r=1)})),r&&We(re[e],[n,a],Mt)})),o&&We(Z[e],[n],Mt)})),t&&We(X[e],void 0,Mt)}}},zt=e=>{const t=ie(Ae[e]),s=ie(ze[e])&&ie(Je[e]);if(!t||!s){const n=e?[Te(m),Te(M)]:[m,M];if(t||Ft(Ae[e],n[0]),!s){let t;ue(n[1],(([s,n],o)=>{n!==s&&(We(ze[e],[o],n,s,Dt),t=1)})),t&&We(Je[e],void 0,Dt)}}},Nt=(e,...t)=>(ls((()=>e(...E(t,C)))),ds),Ot=()=>[ve(b,((e,t)=>-1===Le(c,t)?null:ve(e,((e,s)=>-1===Le(Le(u,t),s)?null:ve(e,(([,e])=>e??null),((e,t)=>Ke(t)))),ae)),ae),ve(M,(([,e])=>e??null),((e,t)=>Ke(t)))],Pt=()=>({cellsTouched:s,valuesTouched:n,changedCells:pe(b,He,Ke),invalidCells:pe(D),changedValues:ve(M,He,Ke),invalidValues:ve(J),changedTableIds:ve(c),changedRowIds:Ie(u),changedCellIds:pe(R),changedValueIds:ve(m)}),Wt=()=>pe($),jt=()=>fe($),Bt=e=>fe(Le($,C(e))),$t=(e,t,s,n=0,o)=>{return E(F(x((a=Le($,C(e)),r=(e,s)=>[q(t)?s:Le(e,C(t)),s],E([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ne(e,t)*(s?-1:1))),n,q(o)?o:n+o),(([,e])=>e));var a,r},qt=(e,t)=>fe(Le(Le($,C(e)),C(t))),Gt=(e,t,s)=>Le(Le(Le($,C(e)),C(t)),C(s)),Ht=()=>ve(U),Kt=()=>fe(U),Ut=e=>Le(U,C(e)),Xt=e=>Nt((()=>(e=>Xe(e,_e,kt))(e)?ct(e):0)),Yt=e=>Nt((()=>st(e)?Lt(e):0)),Zt=e=>{try{it(P(e))}catch{}return ds},_t=t=>Nt((()=>{if((e=Xe(t,(e=>Xe(e,$e))))&&(rt(t),!ie($))){const e=Wt();ts(),Xt(e)}})),es=e=>Nt((()=>{if(t=(e=>Xe(e,$e))(e)){const s=Ht();rs(),os(),t=!0,lt(e),Yt(s)}})),ts=()=>Nt((()=>ct({}))),ss=e=>Nt((e=>le($,e)?vt(e):0),e),ns=(e,t)=>Nt(((e,t)=>G(Le($,e),(s=>le(s,t)?It(e,s,t):0))),e,t),os=()=>Nt((()=>Lt({}))),as=()=>Nt((()=>{rt({}),e=!1})),rs=()=>Nt((()=>{lt({}),t=!1})),ls=(e,t)=>{if(-1==a)return;is();const s=e();return cs(t),s},is=()=>(a++,ds),cs=e=>(a>0&&(a--,0==a&&(s=!ie(b),n=!ie(M),a=1,Jt(1),s&&Qt(1),At(1),n&&zt(1),a=-1,e?.(Ot,Pt)&&(a=1,ue(b,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>me(ds,t,s,n,e))))))),ue(M,(([e],t)=>xe(ds,t,e))),a=-1,s=n=!1),We(Oe[0],void 0,Ot,Pt),Jt(0),s&&Qt(0),At(0),n&&zt(0),We(Oe[1],void 0,Ot,Pt),a=0,k([c,u,R,b,D,m,M,J],de))),ds),ds={getContent:()=>[Wt(),Ht()],getTables:Wt,getTableIds:jt,getTable:e=>Ie(Le($,C(e))),getRowIds:Bt,getSortedRowIds:$t,getRow:(e,t)=>ve(Le(Le($,C(e)),C(t))),getCellIds:qt,getCell:Gt,getValues:Ht,getValueIds:Kt,getValue:Ut,hasTables:()=>!ie($),hasTable:e=>le($,C(e)),hasRow:(e,t)=>le(Le($,C(e)),C(t)),hasCell:(e,t,s)=>le(Le(Le($,C(e)),C(t)),C(s)),hasValues:()=>!ie(U),hasValue:e=>le(U,C(e)),getTablesJson:()=>O($),getValuesJson:()=>O(U),getJson:()=>O([$,U]),getTablesSchemaJson:()=>O(A),getValuesSchemaJson:()=>O(N),getSchemaJson:()=>O([A,N]),setContent:([e,t])=>Nt((()=>{Xt(e),Yt(t)})),setTables:Xt,setTable:(e,t)=>Nt((e=>_e(t,e)?dt(e,t):0),e),setRow:(e,t,s)=>Nt(((e,t)=>et(e,t,s)?ut(e,St(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ls((()=>{let n;return et(e,n,t)&&(e=C(e),ut(e,St(e),n=Rt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Nt(((e,t)=>{if(et(e,t,s,1)){const n=St(e);oe(s,((s,o)=>gt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Nt(((e,t,s)=>G(tt(e,t,s,K(n)?n(Gt(e,t,s)):n),(n=>gt(e,St(e),t,s,n)))),e,t,s),setValues:Yt,setPartialValues:e=>Nt((()=>st(e,1)?oe(e,((e,t)=>wt(t,e))):0)),setValue:(e,t)=>Nt((e=>G(nt(e,K(t)?t(Ut(e)):t),(t=>wt(e,t)))),e),setTransactionChanges:e=>Nt((()=>{oe(e[0],((e,t)=>q(e)?ss(t):oe(e,((e,s)=>q(e)?ns(t,s):oe(e,((e,n)=>me(ds,t,s,n,e))))))),oe(e[1],((e,t)=>xe(ds,t,e)))})),setTablesJson:Zt,setValuesJson:e=>{try{ft(P(e))}catch{}return ds},setJson:e=>{try{const[t,s]=P(e);it(t),ft(s)}catch{Zt(e)}return ds},setTablesSchema:_t,setValuesSchema:es,setSchema:(e,t)=>Nt((()=>{_t(e),es(t)})),delTables:ts,delTable:ss,delRow:ns,delCell:(e,t,s,n)=>Nt(((e,t,s)=>G(Le($,e),(o=>G(Le(o,t),(a=>le(a,s)?pt(e,o,t,a,s,n):0))))),e,t,s),delValues:os,delValue:e=>Nt((e=>le(U,e)?Tt(e):0),e),delTablesSchema:as,delValuesSchema:rs,delSchema:()=>Nt((()=>{as(),rs()})),transaction:ls,startTransaction:is,finishTransaction:cs,forEachTable:e=>ue($,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachRow:(e,t)=>ue(Le($,C(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le($,C(e)),C(t)),s),forEachValue:e=>we(U,e),addSortedRowIdsListener:(e,t,s,n,o,a,r)=>{let l=$t(e,t,s,n,o);return Pe((()=>{const r=$t(e,t,s,n,o);V(r,l)||(l=r,a(ds,e,t,s,n,o,l))}),te[r?1:0],[e,t],[jt])},addWillFinishTransactionListener:e=>Pe(e,Oe[0]),addDidFinishTransactionListener:e=>Pe(e,Oe[1]),callListener:e=>(Be(e),ds),delListener:e=>(je(e),ds),getListenerStats:()=>({}),createStore:Ze};return oe({[g]:[0,X],[f]:[0,Y],[h]:[1,Z,[jt]],[w]:[1,_,[jt]],[L]:[2,re,[jt,Bt]],[v]:[2,ce,[jt,Bt]],[S]:[3,be,[jt,Bt,qt],e=>qe(Gt(...e))],InvalidCell:[3,Me],[p]:[0,Je],[T]:[0,Ae],[I]:[1,ze,[Kt],e=>qe(Ut(e[0]))],InvalidValue:[1,De]},(([e,t,s,n],o)=>{ds[d+o+i]=(...o)=>Pe(o[e],t[o[e+1]?1:0],e>0?F(o,0,e):void 0,s,n)})),ee(ds)};exports.createCheckpoints=ze,exports.createCustomPersister=(e,t,s,n,o)=>{let a,r,l=0,i=!1;const c=async e=>{2!=l&&(l=1,await e(),l=0)},d={load:async(s,n)=>(await c((async()=>{let o;try{o=await t()}catch{}e.setContent(o??[s,n])})),d),startAutoLoad:async(s,o)=>(d.stopAutoLoad(),await d.load(s,o),i=!0,r=n((async(s,n)=>{await c((async()=>{if(n)e.setTransactionChanges(n());else try{e.setContent(s?.()??await t())}catch{}}))})),d),stopAutoLoad:()=>(i&&(o(r),r=void 0,i=!1),d),save:async t=>(1!=l&&(l=2,await s(e.getContent,t),l=0),d),startAutoSave:async()=>(await d.stopAutoSave().save(),a=e.addDidFinishTransactionListener(((e,t)=>d.save(t))),d),stopAutoSave:()=>(G(a,e.delListener),d),getStore:()=>e,destroy:()=>d.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(d)},exports.createIndexes=Oe,exports.createMetrics=je,exports.createQueries=Be,exports.createRelationships=$e,exports.createStore=Ze,exports.defaultSorter=Ne;
|
package/lib/cjs/tinybase.cjs.gz
CHANGED
|
Binary file
|