tinybase 2.1.1 → 2.2.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +2 -0
- package/lib/checkpoints.d.ts +0 -2
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/debug/checkpoints.d.ts +0 -2
- package/lib/debug/checkpoints.js +4 -2
- package/lib/debug/indexes.d.ts +0 -2
- package/lib/debug/indexes.js +2 -1
- package/lib/debug/metrics.d.ts +0 -2
- package/lib/debug/metrics.js +2 -1
- package/lib/debug/queries.d.ts +0 -2
- package/lib/debug/queries.js +4 -3
- package/lib/debug/relationships.d.ts +0 -2
- package/lib/debug/relationships.js +2 -1
- package/lib/debug/store.d.ts +1 -1
- package/lib/debug/store.js +15 -17
- package/lib/debug/tinybase.js +18 -19
- package/lib/debug/tools.d.ts +440 -0
- package/lib/debug/tools.js +1012 -0
- package/lib/es6/checkpoints.d.ts +0 -2
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/indexes.d.ts +0 -2
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/metrics.d.ts +0 -2
- package/lib/es6/metrics.js +1 -1
- package/lib/es6/metrics.js.gz +0 -0
- package/lib/es6/queries.d.ts +0 -2
- package/lib/es6/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.d.ts +0 -2
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.d.ts +1 -1
- 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.d.ts +440 -0
- package/lib/es6/tools.js +1 -0
- 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.d.ts +0 -2
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.d.ts +0 -2
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/queries.d.ts +0 -2
- package/lib/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.d.ts +0 -2
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.d.ts +1 -1
- 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.d.ts +440 -0
- package/lib/tools.js +1 -0
- package/lib/tools.js.gz +0 -0
- package/lib/umd/checkpoints.d.ts +0 -2
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/indexes.d.ts +0 -2
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/metrics.d.ts +0 -2
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/queries.d.ts +0 -2
- package/lib/umd/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.d.ts +0 -2
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.d.ts +1 -1
- 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.d.ts +440 -0
- package/lib/umd/tools.js +1 -0
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd-es6/checkpoints.d.ts +0 -2
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/indexes.d.ts +0 -2
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/metrics.d.ts +0 -2
- package/lib/umd-es6/metrics.js +1 -1
- package/lib/umd-es6/metrics.js.gz +0 -0
- package/lib/umd-es6/queries.d.ts +0 -2
- package/lib/umd-es6/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.d.ts +0 -2
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.d.ts +1 -1
- 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.d.ts +440 -0
- package/lib/umd-es6/tools.js +1 -0
- 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 +27 -17
- package/readme.md +31 -12
package/lib/es6/checkpoints.d.ts
CHANGED
|
@@ -913,8 +913,6 @@ export interface Checkpoints {
|
|
|
913
913
|
* The createCheckpoints function creates a Checkpoints object, and is the main
|
|
914
914
|
* entry point into the checkpoints module.
|
|
915
915
|
*
|
|
916
|
-
* It is trivially simple.
|
|
917
|
-
*
|
|
918
916
|
* A given Store can only have one Checkpoints object associated with it. If you
|
|
919
917
|
* call this function twice on the same Store, your second call will return a
|
|
920
918
|
* reference to the Checkpoints object created by the first.
|
package/lib/es6/checkpoints.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=(e,n)=>e.includes(n),n=(e,n)=>e.forEach(n),t=e=>e.length,l=e=>0==t(e),r=(e,...n)=>e.push(...n),o=e=>e.pop(),s=e=>e.shift(),u=e=>null==e,i=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},c=e=>u(e)||0==(e=>e.size)(e),a=(e,n)=>null==e?void 0:e.forEach(n),h=(e,n)=>null==e?void 0:e.delete(n),p=e=>new Map(e),v=(e,n)=>null==e?void 0:e.get(n),C=(e,n,t)=>u(t)?(h(e,n),e):null==e?void 0:e.set(n,t),g=(e,n,t)=>(d(e,n)||C(e,n,t()),v(e,n)),k=(e,n,l,r,o=0)=>i((l?g:v)(e,n[o],o>t(n)-2?l:p),(s=>{if(o>t(n)-2)return(null==r?void 0:r(s))&&C(e,n[o]),s;const u=k(s,n,l,r,o+1);return c(s)&&C(e,n[o]),u})),f=e=>new Set(Array.isArray(e)||u(e)?e:[e]),L=/^\d+$/,w=e=>{let l;const[o,d]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=s(e))?t:""+n++},n=>{L.test(n)&&t(e)<1e3&&r(e,n)}]})(),g=p();return[(n,t
|
|
1
|
+
const e=(e,n)=>e.includes(n),n=(e,n)=>e.forEach(n),t=e=>e.length,l=e=>0==t(e),r=(e,...n)=>e.push(...n),o=e=>e.pop(),s=e=>e.shift(),u=e=>null==e,i=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},c=e=>u(e)||0==(e=>e.size)(e),a=(e,n)=>null==e?void 0:e.forEach(n),h=(e,n)=>null==e?void 0:e.delete(n),p=e=>new Map(e),v=(e,n)=>null==e?void 0:e.get(n),C=(e,n,t)=>u(t)?(h(e,n),e):null==e?void 0:e.set(n,t),g=(e,n,t)=>(d(e,n)||C(e,n,t()),v(e,n)),k=(e,n,l,r,o=0)=>i((l?g:v)(e,n[o],o>t(n)-2?l:p),(s=>{if(o>t(n)-2)return(null==r?void 0:r(s))&&C(e,n[o]),s;const u=k(s,n,l,r,o+1);return c(s)&&C(e,n[o]),u})),f=e=>new Set(Array.isArray(e)||u(e)?e:[e]),L=/^\d+$/,w=Object.freeze,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,A=100,I=p(),M=1;const b=p(),j=p(),[x,B,F]=(e=>{let l;const[o,d]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=s(e))?t:""+n++},n=>{L.test(n)&&t(e)<1e3&&r(e,n)}]})(),g=p();return[(e,n,t)=>{null!=l||(l=V);const r=o();var s,u;return C(g,r,[e,n,t]),u=r,null==(s=k(n,null!=t?t:[""],f))||s.add(u),r},(e,o,...s)=>n(((e,l=[""])=>{const o=[],s=(e,u)=>u==t(l)?r(o,e):null===l[u]?a(e,(e=>s(e,u+1))):n([l[u],null],(n=>s(v(e,n),u+1)));return s(e,0),o})(e,o),(e=>a(e,(e=>v(g,e)[0](l,...null!=o?o:[],...s))))),e=>i(v(g,e),(([,n,t])=>(k(n,null!=t?t:[""],void 0,(n=>(h(n,e),c(n)?1:0))),C(g,e),d(e),t))),(e,r,o)=>i(v(g,e),(([e,,s=[]])=>{const i=(...d)=>{const c=t(d);c==t(s)?e(l,...d,...o(d)):u(s[c])?n(r[c](...d),(e=>i(...d,e))):i(...d,s[c])};i()}))]})(),O=p(),T=p(),W=[],$=[],m=(e,n)=>{M=0,S.transaction((()=>a(v(O,n),((n,t)=>a(n,((n,l)=>a(n,((n,r)=>((e,n,t,l,r)=>u(r)?e.delCell(n,t,l,!0):e.setCell(n,t,l,r))(S,t,l,r,n[e]))))))))),M=1},q=e=>{C(O,e),C(T,e),B(j,[e])},D=(e,l)=>n(((e,n)=>e.splice(0,n))(e,null!=l?l:t(e)),q),G=()=>D(W,t(W)-A),H=S.addCellListener(null,null,null,((e,n,t,l,s,u)=>{if(M){i(y,(()=>{r(W,y),G(),D($),y=void 0,E=1}));const e=g(I,n,p),d=g(e,t,p),a=g(d,l,(()=>[u,void 0]));a[1]=s,a[0]===s&&c(C(d,l))&&c(C(e,t))&&c(C(I,n))&&(y=o(W),E=1),P()}})),J=(e="")=>(u(y)&&(y=""+z++,C(O,y,I),R(y,e),I=p(),E=1),y),K=()=>{l(W)||(((e,...n)=>{e.unshift(...n)})($,J()),m(0,y),y=o(W),E=1)},N=()=>{l($)||(r(W,y),y=s($),m(1,y),E=1)},P=()=>{E&&(B(b),E=0)},Q=e=>{const n=J(e);return P(),n},R=(e,n)=>(U(e)&&v(T,e)!==n&&(C(T,e,n),B(j,[e])),V),U=e=>d(O,e),V={setSize:e=>(A=e,G(),V),addCheckpoint:Q,setCheckpoint:R,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return n=e,a(T,((e,t)=>n(t,e)));var n},hasCheckpoint:U,getCheckpoint:e=>v(T,e),goBackward:()=>(K(),P(),V),goForward:()=>(N(),P(),V),goTo:n=>{const t=e(W,n)?K:e($,n)?N:null;for(;!u(t)&&n!=y;)t();return P(),V},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,n)=>x(n,j,[e]),delListener:e=>(F(e),V),clear:()=>(D(W),D($),u(y)||q(y),y=void 0,z=0,Q(),V),destroy:()=>{S.delListener(H)},getListenerStats:()=>({})};return w(V.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
|
|
Binary file
|
package/lib/es6/indexes.d.ts
CHANGED
|
@@ -935,8 +935,6 @@ export interface Indexes {
|
|
|
935
935
|
* The createIndexes function creates an Indexes object, and is the main entry
|
|
936
936
|
* point into the indexes module.
|
|
937
937
|
*
|
|
938
|
-
* It is trivially simple.
|
|
939
|
-
*
|
|
940
938
|
* A given Store can only have one Indexes object associated with it. If you
|
|
941
939
|
* call this function twice on the same Store, your second call will return a
|
|
942
940
|
* reference to the Indexes object created by the first.
|
package/lib/es6/indexes.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n=e(""),t=e=>""+e,l=(e,n)=>e.every(n),r=(e,n)=>l(e,((t,l)=>0==l||n(e[l-1],t)<=0)),s=(e,n)=>e.sort(n),o=(e,n)=>e.forEach(n),d=e=>e.length,u=(e,...n)=>e.push(...n),i=e=>null==e,a=(e,n,t)=>i(e)?null==t?void 0:t():n(e),c=e=>Array.isArray(e),v=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>i(e)||0==(e=>e.size)(e),f=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},I=e=>e.clear(),g=(e,n)=>null==e?void 0:e.forEach(n),S=(e,n)=>null==e?void 0:e.delete(n),w=e=>new Map(e),L=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},p=(e,n)=>null==e?void 0:e.get(n),x=(e,n)=>g(e,((e,t)=>n(t,e))),y=(e,n,t)=>i(t)?(S(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(v(e,n)||y(e,n,t()),p(e,n)),R=(e,n,t,l,r=0)=>a((t?E:p)(e,n[r],r>d(n)-2?t:w),(s=>{if(r>d(n)-2)return(null==l?void 0:l(s))&&y(e,n[r]),s;const o=R(s,n,t,l,r+1);return h(s)&&y(e,n[r]),o})),b=e=>new Set(c(e)||i(e)?e:[e]),T=(e,n)=>null==e?void 0:e.add(n),k=(e,n,t)=>{const r=e.hasRow,s=w(),u=w(),R=w(),k=w(),z=w(),A=(n,t,...l)=>{const r=E(z,n,b);return o(l,(n=>T(r,n)&&t&&e.callListener(n))),l},C=(n,...t)=>a(p(z,n),(l=>{o(0==d(t)?f(l):t,(n=>{e.delListener(n),S(l,n)})),h(l)&&y(z,n)})),D=(e,t)=>{y(s,e,t),v(u,e)||(y(u,e,n()),y(R,e,w()),y(k,e,w()))},M=e=>{y(s,e),y(u,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(s),e=>x(u,e),e=>v(u,e),e=>p(s,e),e=>p(u,e),(e,n)=>y(u,e,n),D,(n,s,u,a,h)=>{D(n,s);const f=w(),S=w(),L=p(R,n),E=p(k,n),b=n=>{const o=t=>e.getCell(s,n,t),u=p(L,n),v=r(s,n)?t(a(o,n)):void 0;var I,g;if(u===v||c(u)&&c(v)&&(g=v,d(I=u)===d(g)&&l(I,((e,n)=>g[n]===e)))||y(f,n,[u,v]),!i(h)){const e=p(E,n),t=r(s,n)?h(o,n):void 0;e!=t&&y(S,n,t)}},T=e=>{u((()=>{g(f,(([,e],n)=>y(L,n,e))),g(S,((e,n)=>y(E,n,e)))}),f,S,L,E,e),I(f),I(S)};x(L,b),e.hasTable(s)&&o(e.getRowIds(s),(e=>{v(L,e)||b(e)})),T(!0),C(n),A(n,0,e.addRowListener(s,null,((e,n,t)=>b(t))),e.addTableListener(s,(()=>T())))},M,()=>x(z,M),A,C]}
|
|
1
|
+
const e=e=>typeof e,n=e(""),t=e=>""+e,l=(e,n)=>e.every(n),r=(e,n)=>l(e,((t,l)=>0==l||n(e[l-1],t)<=0)),s=(e,n)=>e.sort(n),o=(e,n)=>e.forEach(n),d=e=>e.length,u=(e,...n)=>e.push(...n),i=e=>null==e,a=(e,n,t)=>i(e)?null==t?void 0:t():n(e),c=e=>Array.isArray(e),v=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>i(e)||0==(e=>e.size)(e),f=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},I=e=>e.clear(),g=(e,n)=>null==e?void 0:e.forEach(n),S=(e,n)=>null==e?void 0:e.delete(n),w=e=>new Map(e),L=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},p=(e,n)=>null==e?void 0:e.get(n),x=(e,n)=>g(e,((e,t)=>n(t,e))),y=(e,n,t)=>i(t)?(S(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(v(e,n)||y(e,n,t()),p(e,n)),R=(e,n,t,l,r=0)=>a((t?E:p)(e,n[r],r>d(n)-2?t:w),(s=>{if(r>d(n)-2)return(null==l?void 0:l(s))&&y(e,n[r]),s;const o=R(s,n,t,l,r+1);return h(s)&&y(e,n[r]),o})),b=e=>new Set(c(e)||i(e)?e:[e]),T=(e,n)=>null==e?void 0:e.add(n),k=(t,l)=>e(t)==n?e=>e(t):null!=t?t:()=>null!=l?l:"",z=(e,n)=>e<n?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=w(),D=w(),[M,j,m,O,W,$,q,,B,F,G]=((e,n,t)=>{const r=e.hasRow,s=w(),u=w(),R=w(),k=w(),z=w(),A=(n,t,...l)=>{const r=E(z,n,b);return o(l,(n=>T(r,n)&&t&&e.callListener(n))),l},C=(n,...t)=>a(p(z,n),(l=>{o(0==d(t)?f(l):t,(n=>{e.delListener(n),S(l,n)})),h(l)&&y(z,n)})),D=(e,t)=>{y(s,e,t),v(u,e)||(y(u,e,n()),y(R,e,w()),y(k,e,w()))},M=e=>{y(s,e),y(u,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(s),e=>x(u,e),e=>v(u,e),e=>p(s,e),e=>p(u,e),(e,n)=>y(u,e,n),D,(n,s,u,a,h)=>{D(n,s);const f=w(),S=w(),L=p(R,n),E=p(k,n),b=n=>{const o=t=>e.getCell(s,n,t),u=p(L,n),v=r(s,n)?t(a(o,n)):void 0;var I,g;if(u===v||c(u)&&c(v)&&(g=v,d(I=u)===d(g)&&l(I,((e,n)=>g[n]===e)))||y(f,n,[u,v]),!i(h)){const e=p(E,n),t=r(s,n)?h(o,n):void 0;e!=t&&y(S,n,t)}},T=e=>{u((()=>{g(f,(([,e],n)=>y(L,n,e))),g(S,((e,n)=>y(E,n,e)))}),f,S,L,E,e),I(f),I(S)};x(L,b),e.hasTable(s)&&o(e.getRowIds(s),(e=>{v(L,e)||b(e)})),T(!0),C(n),A(n,0,e.addRowListener(s,null,((e,n,t)=>b(t))),e.addTableListener(s,(()=>T())))},M,()=>x(z,M),A,C]})(e,w,(e=>{return i(e)?"":c(e)?(n=t,e.map(n)):t(e);var n})),[H,J,K]=(e=>{let n;const[t,l]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=e.shift())?t:""+n++},n=>{A.test(n)&&d(e)<1e3&&u(e,n)}]})(),r=w();return[(e,l,s)=>{null!=n||(n=P);const o=t();return y(r,o,[e,l,s]),T(R(l,null!=s?s:[""],b),o),o},(e,t,...l)=>o(((e,n=[""])=>{const t=[],l=(e,r)=>r==d(n)?u(t,e):null===n[r]?g(e,(e=>l(e,r+1))):o([n[r],null],(n=>l(p(e,n),r+1)));return l(e,0),t})(e,t),(e=>g(e,(e=>p(r,e)[0](n,...null!=t?t:[],...l))))),e=>a(p(r,e),(([,n,t])=>(R(n,null!=t?t:[""],void 0,(n=>(S(n,e),h(n)?1:0))),y(r,e),l(e),t))),(e,t,l)=>a(p(r,e),(([e,,r=[]])=>{const s=(...u)=>{const a=d(u);a==d(r)?e(n,...u,...l(u)):i(r[a])?o(t[a](...u),(e=>s(...u,e))):s(...u,r[a])};s()}))]})(),N=(n,t,l)=>{const r=W(n);g(l,((n,l)=>t(l,(t=>g(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},P={setIndexDefinition:(e,t,l,o,d,u=z)=>{const c=i(d)?void 0:([e],[n])=>d(e,n);return B(e,t,((t,l,d,f,I,L)=>{let E=0;const R=b(),k=b(),z=$(e);if(g(l,(([e,n],t)=>{const l=b(e),r=b(n);g(l,(e=>S(r,e)?S(l,e):0)),g(l,(e=>{T(R,e),a(p(z,e),(n=>{S(n,t),h(n)&&(y(z,e),E=1)}))})),g(r,(e=>{T(R,e),v(z,e)||(y(z,e,b()),E=1),T(p(z,e),t),i(o)||T(k,e)}))})),t(),h(I)||(L?x(z,(e=>T(k,e))):x(d,(e=>a(p(f,e),(e=>T(k,e))))),g(k,(e=>{const n=(n,t)=>u(p(I,n),p(I,t),e),t=[...p(z,e)];r(t,n)||(y(z,e,b(s(t,n))),T(R,e))}))),(E||L)&&!i(c)){const n=[...z];r(n,c)||(q(e,w(s(n,c))),E=1)}E&&J(n,[e]),g(R,(n=>J(D,[e,n])))}),k(l),a(o,k)),P},delIndexDefinition:e=>(F(e),P),getStore:M,getIndexIds:j,forEachIndex:e=>m(((n,t)=>e(n,(e=>N(n,e,t))))),forEachSlice:(e,n)=>N(e,n,$(e)),hasIndex:O,hasSlice:(e,n)=>v($(e),n),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,n)=>f(p($(e),n)),addSliceIdsListener:(e,t)=>H(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>H(t,D,[e,n]),delListener:e=>(K(e),P),destroy:G,getListenerStats:()=>({})};return C(P)})(e)),n.get(e))})();export{D as createIndexes};
|
package/lib/es6/indexes.js.gz
CHANGED
|
Binary file
|
package/lib/es6/metrics.d.ts
CHANGED
|
@@ -796,8 +796,6 @@ export interface Metrics {
|
|
|
796
796
|
* The createMetrics function creates a Metrics object, and is the main entry
|
|
797
797
|
* point into the metrics module.
|
|
798
798
|
*
|
|
799
|
-
* It is trivially simple.
|
|
800
|
-
*
|
|
801
799
|
* A given Store can only have one Metrics object associated with it. If you
|
|
802
800
|
* call this function twice on the same Store, your second call will return a
|
|
803
801
|
* reference to the Metrics object created by the first.
|
package/lib/es6/metrics.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(e),l=(e,t)=>e.forEach(t),r=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,n)=>e.reduce(t,n),u=(e,...t)=>e.push(...t),s=Math.max,d=Math.min,a=isFinite,c=e=>null==e,v=(e,t,n)=>c(e)?null==n?void 0:n():t(e),h=e=>Array.isArray(e),f=()=>{},g=e=>e.size,M=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},L=e=>c(e)||0==g(e),m=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},w=e=>e.clear(),y=(e,t)=>null==e?void 0:e.forEach(t),p=(e,t)=>null==e?void 0:e.delete(t),b=e=>new Map(e),x=(e,t)=>null==e?void 0:e.get(t),E=(e,t)=>y(e,((e,n)=>t(n,e))),I=(e,t,n)=>c(n)?(p(e,t),e):null==e?void 0:e.set(t,n),R=(e,t,n)=>(M(e,t)||I(e,t,n()),x(e,t)),S=(e,t,n,l,r=0)=>v((n?R:x)(e,t[r],r>i(t)-2?n:b),(o=>{if(r>i(t)-2)return(null==l?void 0:l(o))&&I(e,t[r]),o;const u=S(o,t,n,l,r+1);return L(o)&&I(e,t[r]),u})),T=b([["avg",[(e,t)=>r(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>s(...e),(e,t)=>s(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:s(t,e)]],["min",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:d(t,e)]],["sum",[e=>r(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),k=e=>new Set(h(e)||c(e)?e:[e]),z=(e,t)=>null==e?void 0:e.add(t),A=(e,t,n)=>{const r=e.hasRow,o=b(),u=b(),s=b(),d=b(),a=b(),f=(t,n,...r)=>{const i=R(a,t,k);return l(r,(t=>z(i,t)&&n&&e.callListener(t))),r},g=(t,...n)=>v(x(a,t),(r=>{l(0==i(n)?m(r):n,(t=>{e.delListener(t),p(r,t)})),L(r)&&I(a,t)})),S=(e,n)=>{I(o,e,n),M(u,e)||(I(u,e,t()),I(s,e,b()),I(d,e,b()))},T=e=>{I(o,e),I(u,e),I(s,e),I(d,e),g(e)};return[()=>e,()=>{return[...null!=(t=null==(e=o)?void 0:e.keys())?t:[]];var e,t},e=>E(u,e),e=>M(u,e),e=>x(o,e),e=>x(u,e),(e,t)=>I(u,e,t),S,(t,o,u,a
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(e),l=(e,t)=>e.forEach(t),r=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,n)=>e.reduce(t,n),u=(e,...t)=>e.push(...t),s=Math.max,d=Math.min,a=isFinite,c=e=>null==e,v=(e,t,n)=>c(e)?null==n?void 0:n():t(e),h=e=>Array.isArray(e),f=()=>{},g=e=>e.size,M=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},L=e=>c(e)||0==g(e),m=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},w=e=>e.clear(),y=(e,t)=>null==e?void 0:e.forEach(t),p=(e,t)=>null==e?void 0:e.delete(t),b=e=>new Map(e),x=(e,t)=>null==e?void 0:e.get(t),E=(e,t)=>y(e,((e,n)=>t(n,e))),I=(e,t,n)=>c(n)?(p(e,t),e):null==e?void 0:e.set(t,n),R=(e,t,n)=>(M(e,t)||I(e,t,n()),x(e,t)),S=(e,t,n,l,r=0)=>v((n?R:x)(e,t[r],r>i(t)-2?n:b),(o=>{if(r>i(t)-2)return(null==l?void 0:l(o))&&I(e,t[r]),o;const u=S(o,t,n,l,r+1);return L(o)&&I(e,t[r]),u})),T=b([["avg",[(e,t)=>r(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>s(...e),(e,t)=>s(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:s(t,e)]],["min",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:d(t,e)]],["sum",[e=>r(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),k=e=>new Set(h(e)||c(e)?e:[e]),z=(e,t)=>null==e?void 0:e.add(t),A=/^\d+$/,D=Object.freeze,N=(r=>{const o=new WeakMap;return r=>(o.has(r)||o.set(r,(r=>{const o=b(),[s,d,N,j,C,F,O,,W,$,q]=((e,t,n)=>{const r=e.hasRow,o=b(),u=b(),s=b(),d=b(),a=b(),f=(t,n,...r)=>{const i=R(a,t,k);return l(r,(t=>z(i,t)&&n&&e.callListener(t))),r},g=(t,...n)=>v(x(a,t),(r=>{l(0==i(n)?m(r):n,(t=>{e.delListener(t),p(r,t)})),L(r)&&I(a,t)})),S=(e,n)=>{I(o,e,n),M(u,e)||(I(u,e,t()),I(s,e,b()),I(d,e,b()))},T=e=>{I(o,e),I(u,e),I(s,e),I(d,e),g(e)};return[()=>e,()=>{return[...null!=(t=null==(e=o)?void 0:e.keys())?t:[]];var e,t},e=>E(u,e),e=>M(u,e),e=>x(o,e),e=>x(u,e),(e,t)=>I(u,e,t),S,(t,n,o,u,a)=>{S(t,n);const v=b(),L=b(),m=x(s,t),p=x(d,t),R=t=>{const l=l=>e.getCell(n,t,l),o=x(m,t),s=r(n,t)?(d=u(l,t),isNaN(d)||c(d)||!0===d||!1===d||""===d?void 0:1*d):void 0;var d,f,g,M;if(o===s||h(o)&&h(s)&&(g=s,i(f=o)===i(g)&&(M=(e,t)=>g[t]===e,f.every(M)))||I(v,t,[o,s]),!c(a)){const e=x(p,t),i=r(n,t)?a(l,t):void 0;e!=i&&I(L,t,i)}},T=e=>{o((()=>{y(v,(([,e],t)=>I(m,t,e))),y(L,((e,t)=>I(p,t,e)))}),v,L,m,p,e),w(v),w(L)};E(m,R),e.hasTable(n)&&l(e.getRowIds(n),(e=>{M(m,e)||R(e)})),T(!0),g(t),f(t,0,e.addRowListener(n,null,((e,t,n)=>R(n))),e.addTableListener(n,(()=>T())))},T,()=>E(a,T),f,g]})(r,f),[B,G,H]=(e=>{let t;const[n,r]=(()=>{const e=[];let t=0;return[()=>{var n;return null!=(n=e.shift())?n:""+t++},t=>{A.test(t)&&i(e)<1e3&&u(e,t)}]})(),o=b();return[(e,l,r)=>{null!=t||(t=J);const i=n();return I(o,i,[e,l,r]),z(S(l,null!=r?r:[""],k),i),i},(e,n,...r)=>l(((e,t=[""])=>{const n=[],r=(e,o)=>o==i(t)?u(n,e):null===t[o]?y(e,(e=>r(e,o+1))):l([t[o],null],(t=>r(x(e,t),o+1)));return r(e,0),n})(e,n),(e=>y(e,(e=>x(o,e)[0](t,...null!=n?n:[],...r))))),e=>v(x(o,e),(([,t,n])=>(S(t,null!=n?n:[""],void 0,(t=>(p(t,e),L(t)?1:0))),I(o,e),r(e),n))),(e,n,r)=>v(x(o,e),(([e,,o=[]])=>{const u=(...s)=>{const d=i(s);d==i(o)?e(t,...s,...r(s)):c(o[d])?l(n[d](...s),(e=>u(...s,e))):u(...s,o[d])};u()}))]})(),J={setMetricDefinition:(l,r,i,u,s,d,v)=>{var h;const f=e(i)==n?[i,s,d,v]:null!=(h=x(T,i))?h:x(T,"sum");return W(l,r,((e,t,n,r,i,u)=>{const s=F(l),d=g(r);u||(u=c(s)),e();let v=((e,t,n,l,r,i=!1)=>{if(L(n))return;const[o,u,s,d]=r;return i||(i=c(e)),y(l,(([n,l])=>{i||(e=c(n)?null==u?void 0:u(e,l,t++):c(l)?null==s?void 0:s(e,n,t--):null==d?void 0:d(e,l,n,t),i||(i=c(e)))})),i?o(m(n),g(n)):e})(s,d,r,t,f,u);a(v)||(v=void 0),v!=s&&(O(l,v),G(o,[l],v,s))}),(1,e(M=u)==t?e=>e(M):null!=M?M:()=>1)),J;var M},delMetricDefinition:e=>($(e),J),getStore:s,getMetricIds:d,forEachMetric:N,hasMetric:j,getTableId:C,getMetric:F,addMetricListener:(e,t)=>B(t,o,[e]),delListener:e=>(H(e),J),destroy:q,getListenerStats:()=>({})};return D(J)})(r)),o.get(r))})();export{N as createMetrics};
|
package/lib/es6/metrics.js.gz
CHANGED
|
Binary file
|
package/lib/es6/queries.d.ts
CHANGED
|
@@ -2992,8 +2992,6 @@ export interface Queries {
|
|
|
2992
2992
|
* The createQueries function creates a Queries object, and is the main entry
|
|
2993
2993
|
* point into the queries module.
|
|
2994
2994
|
*
|
|
2995
|
-
* It is trivially simple.
|
|
2996
|
-
*
|
|
2997
2995
|
* A given Store can only have one Queries object associated with it. If you
|
|
2998
2996
|
* call this function twice on the same Store, your second call will return a
|
|
2999
2997
|
* reference to the Queries object created by the first.
|
package/lib/es6/queries.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n=e(""),t=e(!0),l=e(0),r=e(e),o=(e,n)=>e.every(n),s=(e,n)=>e.forEach(n),i=e=>u(e,((e,n)=>e+n),0),a=e=>e.length,d=e=>0==a(e),u=(e,n,t)=>e.reduce(n,t),c=(e,...n)=>e.push(...n),v=Math.max,h=Math.min,w=isFinite,f=e=>null==e,g=(e,n,t)=>f(e)?null==t?void 0:t():n(e),R=n=>e(n)==r,y=e=>Array.isArray(e),L=()=>{},p=e=>e.size,b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},T=e=>f(e)||0==p(e),
|
|
1
|
+
const e=e=>typeof e,n=e(""),t=e(!0),l=e(0),r=e(e),o=(e,n)=>e.every(n),s=(e,n)=>e.forEach(n),i=e=>u(e,((e,n)=>e+n),0),a=e=>e.length,d=e=>0==a(e),u=(e,n,t)=>e.reduce(n,t),c=(e,...n)=>e.push(...n),v=Math.max,h=Math.min,w=isFinite,f=e=>null==e,g=(e,n,t)=>f(e)?null==t?void 0:t():n(e),R=n=>e(n)==r,y=e=>Array.isArray(e),L=()=>{},p=e=>e.size,b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},T=e=>f(e)||0==p(e),m=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},C=e=>e.clear(),I=(e,n)=>null==e?void 0:e.forEach(n),O=(e,n)=>null==e?void 0:e.delete(n),S=e=>new Map(e),j=(e,n)=>null==e?void 0:e.get(n),x=(e,n)=>I(e,((e,t)=>n(t,e))),E=(e,n,t)=>f(t)?(O(e,n),e):null==e?void 0:e.set(n,t),Q=(e,n,t)=>(b(e,n)||E(e,n,t()),j(e,n)),M=(e,n,t,l,r=0)=>g((t?Q:j)(e,n[r],r>a(n)-2?t:S),(o=>{if(r>a(n)-2)return(null==l?void 0:l(o))&&E(e,n[r]),o;const s=M(o,n,t,l,r+1);return T(o)&&E(e,n[r]),s})),D=e=>new Set(y(e)||f(e)?e:[e]),F=(e,n)=>null==e?void 0:e.add(n),k=S([["avg",[(e,n)=>i(e)/n,(e,n,t)=>e+(n-e)/(t+1),(e,n,t)=>e+(e-n)/(t-1),(e,n,t,l)=>e+(n-t)/l]],["max",[e=>v(...e),(e,n)=>v(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:v(n,e)]],["min",[e=>h(...e),(e,n)=>h(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:h(n,e)]],["sum",[e=>i(e),(e,n)=>e+n,(e,n)=>e-n,(e,n,t)=>e-t+n]]]),z=Object,A=z.freeze;var P=Object.getOwnPropertySymbols,W=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;const B=(r=>{const i=new WeakMap;return r=>(i.has(r)||i.set(r,(r=>{const i=r.createStore,[u,v,h,B,G,,,H,,J,K,N,U]=((e,n,t)=>{const l=e.hasRow,r=S(),i=S(),u=S(),c=S(),v=S(),h=(n,t,...l)=>{const r=Q(v,n,D);return s(l,(n=>F(r,n)&&t&&e.callListener(n))),l},w=(n,...t)=>g(j(v,n),(l=>{s(d(t)?m(l):t,(n=>{e.delListener(n),O(l,n)})),T(l)&&E(v,n)})),R=(e,n)=>{E(r,e,n),b(i,e)||(E(i,e,!0),E(u,e,S()),E(c,e,S()))},L=e=>{E(r,e),E(i,e),E(u,e),E(c,e),w(e)};return[()=>e,()=>{return[...null!=(n=null==(e=r)?void 0:e.keys())?n:[]];var e,n},e=>x(i,e),e=>b(i,e),e=>j(r,e),e=>j(i,e),(e,n)=>E(i,e,n),R,(n,r,i,d,v)=>{R(n,r);const g=S(),L=S(),p=j(u,n),T=j(c,n),m=n=>{const s=t=>e.getCell(r,n,t),i=j(p,n),u=l(r,n)?t(d(s,n)):void 0;var c,h;if(i===u||y(i)&&y(u)&&(h=u,a(c=i)===a(h)&&o(c,((e,n)=>h[n]===e)))||E(g,n,[i,u]),!f(v)){const e=j(T,n),t=l(r,n)?v(s,n):void 0;e!=t&&E(L,n,t)}},O=e=>{i((()=>{I(g,(([,e],n)=>E(p,n,e))),I(L,((e,n)=>E(T,n,e)))}),g,L,p,T,e),C(g),C(L)};x(p,m),e.hasTable(r)&&s(e.getRowIds(r),(e=>{b(p,e)||m(e)})),O(!0),w(n),h(n,0,e.addRowListener(r,null,((e,n,t)=>m(t))),e.addTableListener(r,(()=>O())))},L,()=>x(v,L),h,w]})(r,0,L),V=i(),X=i(),Y=S(),Z=(e,n,...t)=>s(t,(t=>F(Q(Q(Y,n,S),e,D),t))),$=e=>{g(j(Y,e),(e=>{x(e,((e,n)=>I(n,(n=>e.delListener(n))))),C(e)})),s([X,V],(n=>n.delTable(e)))},_=(e,n,t)=>Z(n,e,n.addWillFinishTransactionListener(t.startTransaction),n.addDidFinishTransactionListener((()=>t.finishTransaction()))),ee={setQueryDefinition:(i,u,v)=>{H(i,u),$(i);const h=[],y=[[null,[u,null,null,[],S()]]],L=[],C=[],z=[];v({select:(e,n)=>{const t=R(e)?[a(h)+"",e]:[f(n)?e:n,t=>t(e,n)];return c(h,t),{as:e=>t[0]=e}},join:(e,n,t)=>{const l=f(t)||R(n)?null:n,r=f(l)?n:t,o=[e,[e,l,R(r)?r:e=>e(r),[],S()]];return c(y,o),{as:e=>o[0]=e}},where:(e,n,t)=>c(L,R(e)?e:f(t)?t=>t(e)===n:l=>l(e,n)===t),group:(e,n,t,l,r)=>{var o;const s=[e,[e,R(n)?[n,t,l,r]:null!=(o=j(k,n))?o:[(e,n)=>n]]];return c(C,s),{as:e=>s[0]=e}},having:(e,n)=>c(z,R(e)?e:t=>t(e)===n)});const A=S(h);if(T(A))return ee;const P=S(y);x(P,((e,[,n])=>g(j(P,n),(({3:n})=>f(e)?0:c(n,e)))));const W=S(C);let q=V;if(T(W)&&d(z))q=X;else{_(i,q,X);const r=S();x(W,((e,[n,t])=>F(Q(r,n,D),[e,t])));const s=D();x(A,(e=>b(r,e)?0:F(s,e)));const a=S(),d=(s,a,d,u)=>g(s,(([c,v,h,g])=>{x(a,((o,[s])=>{const i=Q(c,o,S),a=j(i,d),v=u?void 0:s;if(a!==v){const s=D([[a,v]]),u=p(i);E(i,d,v),I(j(r,o),(([r,o])=>{const a=((e,n,t,l,r,o=!1)=>{if(T(t))return;const[s,i,a,d]=r;return o||(o=f(e)),I(l,(([t,l])=>{o||(e=f(t)?null==i?void 0:i(e,l,n++):f(l)?null==a?void 0:a(e,t,n--):null==d?void 0:d(e,l,t,n),o||(o=f(e)))})),o?s(m(t),p(t)):e})(g[r],u,i,s,o);g[r]=f((r=>{const o=e(r);return(e=>e==n||e==t)(o)||o==l&&w(r)?o:void 0})(a))?null:a}))}})),T(v)||!o(z,(e=>e((e=>g[e]))))?X.delRow(i,h):f(h)?s[2]=X.addRow(i,g):X.setRow(i,h,g)}));Z(q,i,q.addRowListener(i,null,((e,n,t,l)=>{const o=[],u=[],v=S(),h=q.hasRow(i,t);let w=!h;I(s,(e=>{const[n,r,s]=l(i,t,e);c(o,r),c(u,s),w||(w=n)})),x(r,(e=>{const[n,,r]=l(i,t,e);(w||n)&&E(v,e,[r])})),w&&d(M(a,o,void 0,(([,e])=>(O(e,t),T(e)))),v,t,1),h&&d(M(a,u,(()=>{const e={};return I(s,(n=>e[n]=q.getCell(i,t,n))),[S(),D(),void 0,e]}),(([,e])=>{F(e,t)})),v,t)})))}_(i,r,q);const B=(e,n,t,l)=>{const a=e=>r.getCell(n,t,e);s(l,(n=>{var t;const[l,,o,s,d]=j(P,n),u=null==o?void 0:o(a,e),[c,v]=null!=(t=j(d,e))?t:[];u!=c&&(f(v)||U(i,v),E(d,e,f(u)?null:[u,...N(i,1,r.addRowListener(l,u,(()=>B(e,l,u,s))))]))})),(e=>{const n=(n,t)=>{var l,o,s;return r.getCell(...f(t)?[u,e,n]:n===u?[u,e,t]:[null==(l=j(P,n))?void 0:l[0],null==(s=j(null==(o=j(P,n))?void 0:o[4],e))?void 0:s[0],t])};q.transaction((()=>o(L,(e=>e(n)))?x(A,((t,l)=>((e,n,t,l,r)=>f(r)?e.delCell(n,t,l,!0):e.setCell(n,t,l,r))(q,i,e,t,l(n,e)))):q.delRow(i,e)))})(e)},{3:G}=j(P,null);return q.transaction((()=>N(i,1,r.addRowListener(u,null,((e,n,t)=>{r.hasRow(u,t)?B(t,u,t,G):(q.delRow(i,t),I(P,(({4:e})=>g(j(e,t),(([,n])=>{U(i,n),E(e,t)})))))}))))),ee},delQueryDefinition:e=>($(e),J(e),ee),getStore:u,getQueryIds:v,forEachQuery:h,hasQuery:B,getTableId:G,delListener:e=>(X.delListener(e),ee),destroy:K,getListenerStats:()=>((e,n)=>{var t={};for(var l in e)W.call(e,l)&&n.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&P)for(var l of P(e))n.indexOf(l)<0&&q.call(e,l)&&(t[l]=e[l]);return t})(X.getListenerStats(),["tables","tableIds","transaction"])};var ne,te;return ne={Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},te=([e,n],t)=>{s(e?["get","has","forEach"]:["get"],(e=>ee[e+"Result"+t]=(...n)=>X[e+t](...n))),ee["addResult"+t+"Listener"]=(...e)=>{return X["add"+t+"Listener"](...(l=e,0,r=n,l.slice(0,r)),((t,...l)=>e[n](ee,...l)));var l,r}},((e,n)=>{e.map(n)})(z.entries(ne),(([e,n])=>te(n,e))),A(ee)})(r)),i.get(r))})();export{B as createQueries};
|
package/lib/es6/queries.js.gz
CHANGED
|
Binary file
|
|
@@ -1170,8 +1170,6 @@ export interface Relationships {
|
|
|
1170
1170
|
* The createRelationships function creates a Relationships object, and is the
|
|
1171
1171
|
* main entry point into the relationships module.
|
|
1172
1172
|
*
|
|
1173
|
-
* It is trivially simple.
|
|
1174
|
-
*
|
|
1175
1173
|
* A given Store can only have one Relationships object associated with it. If
|
|
1176
1174
|
* you call this function twice on the same Store, your second call will return
|
|
1177
1175
|
* a reference to the Relationships object created by the first.
|
package/lib/es6/relationships.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=(e,t)=>e.forEach(t),l=e=>e.length,r=(e,...t)=>e.push(...t),o=e=>null==e,s=(e,t,n)=>o(e)?null==n?void 0:n():t(e),i=e=>Array.isArray(e),d=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},u=e=>o(e)||0==(e=>e.size)(e),a=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},c=e=>e.clear(),v=(e,t)=>null==e?void 0:e.forEach(t),R=(e,t)=>null==e?void 0:e.delete(t),h=e=>new Map(e),f=(e,t)=>null==e?void 0:e.get(t),L=(e,t)=>v(e,((e,n)=>t(n,e))),g=(e,t,n)=>o(n)?(R(e,t),e):null==e?void 0:e.set(t,n),w=(e,t,n)=>(d(e,t)||g(e,t,n()),f(e,t)),p=(e,t,n,r,o=0)=>s((n?w:f)(e,t[o],o>l(t)-2?n:h),(s=>{if(o>l(t)-2)return(null==r?void 0:r(s))&&g(e,t[o]),s;const i=p(s,t,n,r,o+1);return u(s)&&g(e,t[o]),i})),I=e=>new Set(i(e)||o(e)?e:[e]),y=(e,t)=>null==e?void 0:e.add(t),b=/^\d+$/,k=Object.freeze,E=(E=>{const T=new WeakMap;return E=>(T.has(E)||T.set(E,(E=>{const T=h(),m=h(),S=h(),z=h(),[A,D,M,j,x,C,,,O,W,$]=((e,t,r)=>{const p=e.hasRow,b=h(),k=h(),E=h(),T=h(),m=h(),S=(t,l,...r)=>{const o=w(m,t,I);return n(r,(t=>y(o,t)&&l&&e.callListener(t))),r},z=(t,...r)=>s(f(m,t),(o=>{n(0==l(r)?a(o):r,(t=>{e.delListener(t),R(o,t)})),u(o)&&g(m,t)})),A=(e,t)=>{g(b,e,t),d(k,e)||(g(k,e,[h(),h(),h(),h()]),g(E,e,h()),g(T,e,h()))},D=e=>{g(b,e),g(k,e),g(E,e),g(T,e),z(e)};return[()=>e,()=>{return[...null!=(t=null==(e=b)?void 0:e.keys())?t:[]];var e,t},e=>L(k,e),e=>d(k,e),e=>f(b,e),e=>f(k,e),(e,t)=>g(k,e,t),A,(t,r,s,u,a)=>{A(t,r);const R=h(),w=h(),I=f(E,t),y=f(T,t),b=t=>{const n=n=>e.getCell(r,t,n),s=f(I,t),d=p(r,t)?(c=u(n,t),o(c)?void 0:c+""):void 0;var c,v,h,L;if(s===d||i(s)&&i(d)&&(h=d,l(v=s)===l(h)&&(L=(e,t)=>h[t]===e,v.every(L)))||g(R,t,[s,d]),!o(a)){const e=f(y,t),l=p(r,t)?a(n,t):void 0;e!=l&&g(w,t,l)}},k=e=>{s((()=>{v(R,(([,e],t)=>g(I,t,e))),v(w,((e,t)=>g(y,t,e)))}),R,w,I,y,e),c(R),c(w)};L(I,b),e.hasTable(r)&&n(e.getRowIds(r),(e=>{d(I,e)||b(e)})),k(!0),z(t),S(t,0,e.addRowListener(r,null,((e,t,n)=>b(n))),e.addTableListener(r,(()=>k())))},D,()=>L(m,D),S,z]})(E),[q,B,F]=(e=>{let t;const[i,d]=(()=>{const e=[];let t=0;return[()=>{var n;return null!=(n=e.shift())?n:""+t++},t=>{b.test(t)&&l(e)<1e3&&r(e,t)}]})(),a=h();return[(e,n,l)=>{null!=t||(t=K);const r=i();return g(a,r,[e,n,l]),y(p(n,null!=l?l:[""],I),r),r},(e,o,...s)=>n(((e,t=[""])=>{const o=[],s=(e,i)=>i==l(t)?r(o,e):null===t[i]?v(e,(e=>s(e,i+1))):n([t[i],null],(t=>s(f(e,t),i+1)));return s(e,0),o})(e,o),(e=>v(e,(e=>f(a,e)[0](t,...null!=o?o:[],...s))))),e=>s(f(a,e),(([,t,n])=>(p(t,null!=n?n:[""],void 0,(t=>(R(t,e),u(t)?1:0))),g(a,e),d(e),n))),(e,r,i)=>s(f(a,e),(([e,,s=[]])=>{const d=(...u)=>{const a=l(u);a==l(s)?e(t,...u,...i(u)):o(s[a])?n(r[a](...u),(e=>d(...u,e))):d(...u,s[a])};d()}))]})(),G=(e,t,n)=>s(C(e),(([l,,r])=>{if(!d(r,t)){const s=I();if(x(e)!=J(e))y(s,t);else{let e=t;for(;!o(e)&&!d(s,e);)y(s,e),e=f(l,e)}if(n)return s;g(r,t,s)}return f(r,t)})),H=(e,t)=>s(C(e),(([,,e])=>g(e,t))),J=e=>f(T,e),K={setRelationshipDefinition:(n,l,r,i)=>{return g(T,n,r),O(n,l,((e,t)=>{const l=I(),r=I(),i=I(),[a,c]=C(n);v(t,(([e,t],v)=>{o(e)||(y(r,e),s(f(c,e),(t=>{R(t,v),u(t)&&g(c,e)}))),o(t)||(y(r,t),d(c,t)||g(c,t,I()),y(f(c,t),v)),y(l,v),g(a,v,t),L(f(z,n),(e=>{d(G(n,e),v)&&y(i,e)}))})),e(),v(l,(e=>B(m,[n,e]))),v(r,(e=>B(S,[n,e]))),v(i,(e=>{H(n,e),B(z,[n,e])}))}),e(a=i)==t?e=>e(a):null!=a?a:()=>""),K;var a},delRelationshipDefinition:e=>(g(T,e),W(e),K),getStore:A,getRelationshipIds:D,forEachRelationship:e=>M((t=>e(t,(e=>E.forEachRow(x(t),e))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:J,getRemoteRowId:(e,t)=>{var n;return f(null==(n=C(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return a(f(null==(n=C(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>o(C(e))?[t]:a(G(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>q(n,m,[e,t]),addLocalRowIdsListener:(e,t,n)=>q(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(G(e,t),q(n,z,[e,t])),delListener:e=>(H(...F(e)),K),destroy:$,getListenerStats:()=>({})};return k(K)})(E)),T.get(E))})();export{E as createRelationships};
|
|
Binary file
|
package/lib/es6/store.d.ts
CHANGED
package/lib/es6/store.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),l=e(!0),n=e(0),r=e(e),s=e=>""+e,o=(e,t)=>e.forEach(t),a=(e,t)=>e.map(t),i=e=>e.length,u=(e,t,l)=>e.slice(t,l),d=(e,...t)=>e.push(...t),c=e=>JSON.stringify(e,((e,t)=>{return h(t,Map)?(l=
|
|
1
|
+
const e=e=>typeof e,t=e(""),l=e(!0),n=e(0),r=e(e),s=e=>""+e,o=(e,t)=>e.forEach(t),a=(e,t)=>e.map(t),i=e=>e.length,u=(e,t,l)=>e.slice(t,l),d=(e,...t)=>e.push(...t),c=e=>JSON.stringify(e,((e,t)=>{return h(t,Map)?(l=(e,[t,l])=>(e[t]=l,e),n={},[...t].reduce(l,n)):t;var l,n})),v=JSON.parse,f=isFinite,h=(e,t)=>e instanceof t,T=e=>null==e,b=(e,t,l)=>T(e)?null==l?void 0:l():t(e),g=e=>e==t||e==l,w=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},R=e=>T(e)||0==(e=>e.size)(e),y=e=>e.clear(),C=(e,t)=>null==e?void 0:e.forEach(t),p=(e,t)=>null==e?void 0:e.delete(t),S=e=>new Map(e),I=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},L=(e,t)=>null==e?void 0:e.get(t),E=(e,t)=>C(e,((e,l)=>t(l,e))),J=(e,t,l)=>T(l)?(p(e,t),e):null==e?void 0:e.set(t,l),m=(e,t,l)=>(w(e,t)||J(e,t,l()),L(e,t)),F=(e,t,l)=>{const n={},r=null!=t?t:e=>e;return C(e,((e,t)=>b(r(e),(e=>(null==l?void 0:l(e))?0:n[t]=e)))),n},z=(e,t)=>{const l=S(),n=null!=t?t:e=>e;return C(e,((e,t)=>l.set(t,n(e)))),l},O=e=>z(e,z),k=(e,t,l,n,r=0)=>b((l?m:L)(e,t[r],r>i(t)-2?l:S),(s=>{if(r>i(t)-2)return(null==n?void 0:n(s))&&J(e,t[r]),s;const o=k(s,t,l,n,r+1);return R(s)&&J(e,t[r]),o})),A=Object,M=A.keys,N=A.isFrozen,j=A.freeze,x=(e,t)=>!T(((e,t)=>b(e,(e=>e[t])))(e,t)),D=(e,t)=>delete e[t],P=(e,t)=>a(A.entries(e),(([e,l])=>t(l,e))),W=e=>{return t=M(e),0==i(t);var t},$=e=>new Set(Array.isArray(e)||T(e)?e:[e]),q=(e,t)=>null==e?void 0:e.add(t),B=/^\d+$/,G=()=>{const e=[];let t=0;return[()=>{var l;return null!=(l=e.shift())?l:""+t++},t=>{B.test(t)&&i(e)<1e3&&d(e,t)}]},H=e=>[e,e],K=()=>[S(),S()],Q=t=>{const l=e(t);return g(l)||l==n&&f(t)?l:void 0},U=(e,t,l,n=J)=>{const r=(s=e=>!x(t,e),I(e).filter(s));var s;return o(M(t),(n=>l(e,n,t[n]))),o(r,(t=>n(e,t))),e},V=(e,t,l)=>T(e)||!(e=>h(e,A)&&e.constructor==A)(e)||W(e)||N(e)?(null==l||l(),!1):(P(e,((l,n)=>{t(l,n)||D(e,n)})),!W(e)),X=(e,t,l)=>J(e,t,L(e,t)==-l?void 0:l),Y=()=>{let t,l,f=0;const h=S(),A=S(),M=S(),N=S(),B=S(),Z=S(),_=S(),ee=S(),te=S(),le=K(),ne=K(),re=K(),se=K(),oe=K(),ae=K(),ie=K(),ue=K(),de=K(),ce=K(),[ve,fe,he,Te]=(e=>{let t;const[l,n]=G(),r=S();return[(e,n,s)=>{null!=t||(t=Ze);const o=l();return J(r,o,[e,n,s]),q(k(n,null!=s?s:[""],$),o),o},(e,l,...n)=>o(((e,t=[""])=>{const l=[],n=(e,r)=>r==i(t)?d(l,e):null===t[r]?C(e,(e=>n(e,r+1))):o([t[r],null],(t=>n(L(e,t),r+1)));return n(e,0),l})(e,l),(e=>C(e,(e=>L(r,e)[0](t,...null!=l?l:[],...n))))),e=>b(L(r,e),(([,t,l])=>(k(t,null!=l?l:[""],void 0,(t=>(p(t,e),R(t)?1:0))),J(r,e),n(e),l))),(e,l,n)=>b(L(r,e),(([e,,r=[]])=>{const s=(...a)=>{const u=i(a);u==i(r)?e(t,...a,...n(a)):T(r[u])?o(l[u](...a),(e=>s(...a,e))):s(...a,r[u])};s()}))]})(),be=(e,l)=>(!t||w(Z,l)||Ne(l))&&V(e,((e,t)=>ge(l,t,e)),(()=>Ne(l))),ge=(e,t,l,n)=>V(n?l:Re(l,e,t),((n,r)=>b(we(e,t,r,n),(e=>(l[r]=e,!0)),(()=>!1))),(()=>Ne(e,t))),we=(e,l,n,r)=>t?b(L(L(Z,e),n),(t=>Q(r)!=t.type?Ne(e,l,n,r,t.default):r),(()=>Ne(e,l,n,r))):T(Q(r))?Ne(e,l,n,r):r,Re=(e,t,l)=>(b(L(_,t),(([n,r])=>{C(n,((t,l)=>{x(e,l)||(e[l]=t)})),C(r,(n=>{x(e,n)||Ne(t,l,n)}))})),e),ye=e=>U(Z,e,((e,t,l)=>{const n=S(),r=$();U(m(Z,t,S),l,((e,t,l)=>{J(e,t,l),b(l.default,(e=>J(n,t,e)),(()=>q(r,t)))})),J(_,t,[n,r])}),((e,t)=>{J(Z,t),J(_,t)})),Ce=e=>U(te,e,((e,t,l)=>pe(t,l)),((e,t)=>me(t))),pe=(e,t)=>U(m(te,e,(()=>(Oe(e,1),S()))),t,((t,l,n)=>Se(e,t,l,n)),((t,l)=>Fe(e,t,l))),Se=(e,t,l,n,r)=>U(m(t,l,(()=>(ke(e,l,1),S()))),n,((t,n,r)=>Ie(e,l,t,n,r)),((n,s)=>ze(e,t,l,n,s,r))),Ie=(e,t,l,n,r)=>{w(l,n)||Ae(e,t,n,1);const s=L(l,n);r!==s&&(Me(e,t,n,s,r),J(l,n,r))},Le=(e,t,l,n,r)=>b(L(t,l),(t=>Ie(e,l,t,n,r)),(()=>Se(e,t,l,Re({[n]:r},e,l)))),Ee=e=>{const[t]=m(ee,e,G),l=t();return w(L(te,e),l)?Ee(e):l},Je=e=>{var t;return null!=(t=L(te,e))?t:pe(e,{})},me=e=>pe(e,{}),Fe=(e,t,l)=>{const[,n]=m(ee,e,G);n(l),Se(e,t,l,{},!0)},ze=(e,t,l,n,r,s)=>{var o;const a=L(null==(o=L(_,e))?void 0:o[0],r);if(!T(a)&&!s)return Ie(e,l,n,r,a);const i=t=>{Me(e,l,t,L(n,t)),Ae(e,l,t,-1),J(n,t)};T(a)?i(r):E(n,i),R(n)&&(ke(e,l,-1),R(J(t,l))&&(Oe(e,-1),J(te,e),J(ee,e)))},Oe=(e,t)=>X(h,e,t),ke=(e,t,l)=>X(m(A,e,S),t,l),Ae=(e,t,l,n)=>X(m(m(M,e,S),t,S),l,n),Me=(e,t,l,n,r)=>m(m(m(N,e,S),t,S),l,(()=>[n,0]))[1]=r,Ne=(e,t,l,n,r)=>(d(m(m(m(B,e,S),t,S),l,(()=>[])),n),r),je=(e,t,l)=>b(L(L(L(N,e),t),l),(([e,t])=>[!0,e,t]),(()=>[!1,...H(Ke(e,t,l))])),xe=e=>R(B)||R(de[e])?0:C(e?z(B,O):B,((t,l)=>C(t,((t,n)=>C(t,((t,r)=>fe(de[e],[l,n,r],t))))))),De=(e,t,l)=>{if(!R(t))return fe(e,l),1},Pe=e=>{const t=R(oe[e]),l=R(ie[e])&&R(se[e])&&t&&R(ne[e]),n=R(ue[e])&&R(ae[e])&&R(re[e])&&R(le[e]);if(!l||!n){const r=e?[z(h),O(A),z(M,O),z(N,O)]:[h,A,M,N];if(!l){C(r[2],((t,l)=>C(t,((t,n)=>De(ie[e],t,[l,n])))));const l=$();C(r[1],((n,r)=>{De(se[e],n,[r])&&!t&&(fe(oe[e],[r,null]),q(l,r))})),t||C(r[3],((t,n)=>{if(!w(l,n)){const l=$();C(t,(e=>C(e,(([t,n],r)=>n!==t?q(l,r):p(e,r))))),C(l,(t=>fe(oe[e],[n,t])))}})),De(ne[e],r[0])}if(!n){let t;C(r[3],((l,n)=>{let r;C(l,((l,s)=>{let o;C(l,(([l,a],i)=>{a!==l&&(fe(ue[e],[n,s,i],a,l,je),t=r=o=1)})),o&&fe(ae[e],[n,s],je)})),r&&fe(re[e],[n],je)})),t&&fe(le[e],void 0,je)}}},We=(e,...t)=>(Ve((()=>e(...a(t,s)))),Ze),$e=()=>F(te,(e=>F(e,F))),qe=()=>I(te),Be=e=>I(L(te,s(e))),Ge=(e,t,l,n=0,r)=>{return a(u((i=L(te,s(e)),d=(e,l)=>[T(t)?l:L(e,s(t)),l],o=([e],[t])=>(e<t?-1:1)*(l?-1:1),a([...null!=(c=null==i?void 0:i.entries())?c:[]],(([e,t])=>d(t,e))).sort(o)),n,T(r)?r:n+r),(([,e])=>e));var o,i,d,c},He=(e,t)=>I(L(L(te,s(e)),s(t))),Ke=(e,t,l)=>L(L(L(te,s(e)),s(t)),s(l)),Qe=e=>We((()=>(e=>V(e,be,Ne))(e)?Ce(e):0)),Ue=()=>We((()=>Ce({}))),Ve=(e,t)=>{if(-1==f)return;Xe();const l=e();return Ye(t),l},Xe=()=>(f++,Ze),Ye=e=>(f>0&&(f--,0==f&&(l=!R(N),f=1,xe(1),l&&Pe(1),f=-1,(null==e?void 0:e(F(N,(e=>F(e,(e=>F(e,(e=>[...e]),(([e,t])=>e===t))),W)),W),F(B,(e=>F(e,F)))))&&(f=1,C(N,((e,t)=>C(e,((e,l)=>C(e,(([e],n)=>((e,t,l,n,r)=>T(r)?e.delCell(t,l,n,!0):e.setCell(t,l,n,r))(Ze,t,l,n,e))))))),f=-1,l=!1),fe(ce[0],void 0,l),xe(0),l&&Pe(0),fe(ce[1],void 0,l),f=0,o([N,B,h,A,M],y))),Ze),Ze={getTables:$e,getTableIds:qe,getTable:e=>F(L(te,s(e)),F),getRowIds:Be,getSortedRowIds:Ge,getRow:(e,t)=>F(L(L(te,s(e)),s(t))),getCellIds:He,getCell:Ke,hasTables:()=>!R(te),hasTable:e=>w(te,s(e)),hasRow:(e,t)=>w(L(te,s(e)),s(t)),hasCell:(e,t,l)=>w(L(L(te,s(e)),s(t)),s(l)),getJson:()=>c(te),getSchemaJson:()=>c(Z),setTables:Qe,setTable:(e,t)=>We((e=>be(t,e)?pe(e,t):0),e),setRow:(e,t,l)=>We(((e,t)=>ge(s(e),s(t),l)?Se(s(e),Je(s(e)),s(t),l):0),e,t),addRow:(e,t)=>Ve((()=>{let l;return ge(e,l,t)&&(e=s(e),Se(e,Je(e),l=Ee(e),t)),l})),setPartialRow:(e,t,l)=>We(((e,t)=>{if(ge(e,t,l,1)){const n=Je(e);P(l,((l,r)=>Le(e,n,t,r,l)))}}),e,t),setCell:(t,l,n,s)=>We(((t,l,n)=>b(we(t,l,n,e(s)==r?s(Ke(t,l,n)):s),(e=>Le(t,Je(t),l,n,e)))),t,l,n),setJson:e=>{try{"{}"===e?Ue():Qe(v(e))}catch(e){}return Ze},setSchema:e=>We((()=>{if((t=(e=>V(e,(e=>V(e,(e=>{if(!V(e,((e,t)=>["type","default"].includes(t))))return!1;const t=e.type;return!(!g(t)&&t!=n||(Q(e.default)!=t&&D(e,"default"),0))})))))(e))&&(ye(e),!R(te))){const e=$e();Ue(),Qe(e)}})),delTables:Ue,delTable:e=>We((e=>w(te,e)?me(e):0),e),delRow:(e,t)=>We(((e,t)=>b(L(te,e),(l=>w(l,t)?Fe(e,l,t):0))),e,t),delCell:(e,t,l,n)=>We(((e,t,l)=>b(L(te,e),(r=>b(L(r,t),(s=>w(s,l)?ze(e,r,t,s,l,n):0))))),e,t,l),delSchema:()=>We((()=>{ye({}),t=!1})),transaction:Ve,startTransaction:Xe,finishTransaction:Ye,forEachTable:e=>C(te,((t,l)=>e(l,(e=>C(t,((t,l)=>e(l,(e=>E(t,e))))))))),forEachRow:(e,t)=>C(L(te,s(e)),((e,l)=>t(l,(t=>E(e,t))))),forEachCell:(e,t,l)=>E(L(L(te,s(e)),s(t)),l),addSortedRowIdsListener:(e,t,l,n,r,s,o)=>{let a=Ge(e,t,l,n,r);return ve((()=>{const o=Ge(e,t,l,n,r);var u,d,c;d=a,i(u=o)===i(d)&&(c=(e,t)=>d[t]===e,u.every(c))||(a=o,s(Ze,e,t,l,n,r,a))}),oe[o?1:0],[e,t])},addWillFinishTransactionListener:e=>ve(e,ce[0]),addDidFinishTransactionListener:e=>ve(e,ce[1]),callListener:e=>(Te(e,[qe,Be,He],(e=>T(e[2])?[]:H(Ke(...e)))),Ze),delListener:e=>(he(e),Ze),getListenerStats:()=>({}),createStore:Y};return P({Tables:[0,le],TableIds:[0,ne],Table:[1,re],RowIds:[1,se],Row:[2,ae],CellIds:[2,ie],Cell:[3,ue],InvalidCell:[3,de]},(([e,t],l)=>{Ze["add"+l+"Listener"]=(...l)=>ve(l[e],t[l[e+1]?1:0],e>0?u(l,0,e):void 0)})),j(Ze)};export{Y as createStore};
|
package/lib/es6/store.js.gz
CHANGED
|
Binary file
|
package/lib/es6/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{watch as e,promises as t}from"fs";const n=e=>typeof e,o=n(""),r=n(!0),l=n(0),s=n(n),i=e=>""+e,a=(e,t)=>e.includes(t),d=(e,t)=>e.every(t),c=(e,t)=>w(e)===w(t)&&d(e,((e,n)=>t[n]===e)),u=(e,t)=>d(e,((n,o)=>0==o||t(e[o-1],n)<=0)),v=(e,t)=>e.sort(t),h=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),g=e=>y(e,((e,t)=>e+t),0),w=e=>e.length,p=e=>0==w(e),y=(e,t,n)=>e.reduce(t,n),L=(e,t,n)=>e.slice(t,n),R=(e,...t)=>e.push(...t),I=e=>e.pop(),S=e=>e.shift(),T=e=>JSON.stringify(e,((e,t)=>E(t,Map)?y([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),b=JSON.parse,m=Math.max,C=Math.min,x=isFinite,E=(e,t)=>e instanceof t,k=e=>null==e,A=(e,t,n)=>k(e)?null==n?void 0:n():t(e),M=e=>e==o||e==r,P=e=>n(e)==s,D=e=>Array.isArray(e),O=()=>{},F=e=>e.size,J=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},j=e=>k(e)||0==F(e),Q=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},z=e=>e.clear(),N=(e,t)=>null==e?void 0:e.forEach(t),W=(e,t)=>null==e?void 0:e.delete(t),B=e=>new Map(e),H=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},$=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>N(e,((e,n)=>t(n,e))),G=(e,t,n)=>k(n)?(W(e,t),e):null==e?void 0:e.set(t,n),K=(e,t,n)=>(J(e,t)||G(e,t,n()),$(e,t)),U=(e,t,n)=>{const o={},r=null!=t?t:e=>e;return N(e,((e,t)=>A(r(e),(e=>(null==n?void 0:n(e))?0:o[t]=e)))),o},V=(e,t)=>{const n=B(),o=null!=t?t:e=>e;return N(e,((e,t)=>n.set(t,o(e)))),n},X=e=>V(e,V),Y=(e,t,n,o,r=0)=>A((n?K:$)(e,t[r],r>w(t)-2?n:B),(l=>{if(r>w(t)-2)return(null==o?void 0:o(l))&&G(e,t[r]),l;const s=Y(l,t,n,o,r+1);return j(l)&&G(e,t[r]),s})),Z=e=>new Set(D(e)||k(e)?e:[e]),_=(e,t)=>null==e?void 0:e.add(t),ee=(e,t,n)=>{const o=e.hasRow,r=B(),l=B(),s=B(),i=B(),a=B(),d=(t,n,...o)=>{const r=K(a,t,Z);return h(o,(t=>_(r,t)&&n&&e.callListener(t))),o},u=(t,...n)=>A($(a,t),(o=>{h(p(n)?Q(o):n,(t=>{e.delListener(t),W(o,t)})),j(o)&&G(a,t)})),v=(e,n)=>{G(r,e,n),J(l,e)||(G(l,e,t()),G(s,e,B()),G(i,e,B()))},f=e=>{G(r,e),G(l,e),G(s,e),G(i,e),u(e)};return[()=>e,()=>H(r),e=>q(l,e),e=>J(l,e),e=>$(r,e),e=>$(l,e),(e,t)=>G(l,e,t),v,(t,r,l,a,f)=>{v(t,r);const g=B(),w=B(),p=$(s,t),y=$(i,t),L=t=>{const l=n=>e.getCell(r,t,n),s=$(p,t),i=o(r,t)?n(a(l,t)):void 0;if(s===i||D(s)&&D(i)&&c(s,i)||G(g,t,[s,i]),!k(f)){const e=$(y,t),n=o(r,t)?f(l,t):void 0;e!=n&&G(w,t,n)}},R=e=>{l((()=>{N(g,(([,e],t)=>G(p,t,e))),N(w,((e,t)=>G(y,t,e)))}),g,w,p,y,e),z(g),z(w)};q(p,L),e.hasTable(r)&&h(e.getRowIds(r),(e=>{J(p,e)||L(e)})),R(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>L(n))),e.addTableListener(r,(()=>R())))},f,()=>q(a,f),d,u]},te=(e,t)=>n(e)==o?t=>t(e):null!=e?e:()=>null!=t?t:"",ne=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},oe=/^\d+$/,re=()=>{const e=[];let t=0;return[()=>{var n;return null!=(n=S(e))?n:""+t++},t=>{oe.test(t)&&w(e)<1e3&&R(e,t)}]},le=e=>{let t;const[n,o]=re(),r=B();return[(o,l,s)=>{null!=t||(t=e());const i=n();return G(r,i,[o,l,s]),_(Y(l,null!=s?s:[""],Z),i),i},(e,n,...o)=>h(((e,t=[""])=>{const n=[],o=(e,r)=>r==w(t)?R(n,e):null===t[r]?N(e,(e=>o(e,r+1))):h([t[r],null],(t=>o($(e,t),r+1)));return o(e,0),n})(e,n),(e=>N(e,(e=>$(r,e)[0](t,...null!=n?n:[],...o))))),e=>A($(r,e),(([,t,n])=>(Y(t,null!=n?n:[""],void 0,(t=>(W(t,e),j(t)?1:0))),G(r,e),o(e),n))),(e,n,o)=>A($(r,e),(([e,,r=[]])=>{const l=(...s)=>{const i=w(s);i==w(r)?e(t,...s,...o(s)):k(r[i])?h(n[i](...s),(e=>l(...s,e))):l(...s,r[i])};l()}))]},se=Object,ie=se.keys,ae=se.isFrozen,de=se.freeze,ce=(e,t)=>!k(((e,t)=>A(e,(e=>e[t])))(e,t)),ue=(e,t)=>delete e[t],ve=(e,t)=>h(se.entries(e),(([e,n])=>t(n,e))),he=e=>p(ie(e)),fe=e=>{const t=n(e);return M(t)||t==l&&x(e)?t:void 0},ge=(e,t,n,o,r)=>k(r)?e.delCell(t,n,o,!0):e.setCell(t,n,o,r),we=ne((e=>{let t,n,o,r=100,l=B(),s=1;const i=B(),d=B(),[c,u,v]=le((()=>z)),f=B(),g=B(),y=[],L=[],T=(t,n)=>{s=0,e.transaction((()=>N($(f,n),((n,o)=>N(n,((n,r)=>N(n,((n,l)=>ge(e,o,r,l,n[t]))))))))),s=1},b=e=>{G(f,e),G(g,e),u(d,[e])},m=(e,t)=>h(((e,t)=>e.splice(0,t))(e,null!=t?t:w(e)),b),C=()=>m(y,w(y)-r),x=e.addCellListener(null,null,null,((e,n,r,i,a,d)=>{if(s){A(t,(()=>{R(y,t),C(),m(L),t=void 0,o=1}));const e=K(l,n,B),s=K(e,r,B),c=K(s,i,(()=>[d,void 0]));c[1]=a,c[0]===a&&j(G(s,i))&&j(G(e,r))&&j(G(l,n))&&(t=I(y),o=1),D()}})),E=(e="")=>(k(t)&&(t=""+n++,G(f,t,l),F(t,e),l=B(),o=1),t),M=()=>{p(y)||(L.unshift(E()),T(0,t),t=I(y),o=1)},P=()=>{p(L)||(R(y,t),t=S(L),T(1,t),o=1)},D=()=>{o&&(u(i),o=0)},O=e=>{const t=E(e);return D(),t},F=(e,t)=>(Q(e)&&$(g,e)!==t&&(G(g,e,t),u(d,[e])),z),Q=e=>J(f,e),z={setSize:e=>(r=e,C(),z),addCheckpoint:O,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...y],t,[...L]],forEachCheckpoint:e=>q(g,e),hasCheckpoint:Q,getCheckpoint:e=>$(g,e),goBackward:()=>(M(),D(),z),goForward:()=>(P(),D(),z),goTo:e=>{const n=a(y,e)?M:a(L,e)?P:null;for(;!k(n)&&e!=t;)n();return D(),z},addCheckpointIdsListener:e=>c(e,i),addCheckpointListener:(e,t)=>c(t,d,[e]),delListener:e=>(v(e),z),clear:()=>(m(y),m(L),k(t)||b(t),t=void 0,n=0,O(),z),destroy:()=>{e.delListener(x)},getListenerStats:()=>({})};return de(z.clear())})),pe=(e,t)=>e<t?-1:1,ye=ne((e=>{const t=B(),n=B(),[o,r,l,s,a,d,c,,h,g,w]=ee(e,B,(e=>k(e)?"":D(e)?f(e,i):i(e))),[p,y,L]=le((()=>I)),R=(t,n,o)=>{const r=a(t);N(o,((t,o)=>n(o,(n=>N(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},I={setIndexDefinition:(e,o,r,l,s,i=pe)=>{const a=k(s)?void 0:([e],[t])=>s(e,t);return h(e,o,((o,r,s,h,f,g)=>{let w=0;const p=Z(),L=Z(),R=d(e);if(N(r,(([e,t],n)=>{const o=Z(e),r=Z(t);N(o,(e=>W(r,e)?W(o,e):0)),N(o,(e=>{_(p,e),A($(R,e),(t=>{W(t,n),j(t)&&(G(R,e),w=1)}))})),N(r,(e=>{_(p,e),J(R,e)||(G(R,e,Z()),w=1),_($(R,e),n),k(l)||_(L,e)}))})),o(),j(f)||(g?q(R,(e=>_(L,e))):q(s,(e=>A($(h,e),(e=>_(L,e))))),N(L,(e=>{const t=(t,n)=>i($(f,t),$(f,n),e),n=[...$(R,e)];u(n,t)||(G(R,e,Z(v(n,t))),_(p,e))}))),(w||g)&&!k(a)){const t=[...R];u(t,a)||(c(e,B(v(t,a))),w=1)}w&&y(t,[e]),N(p,(t=>y(n,[e,t])))}),te(r),A(l,te)),I},delIndexDefinition:e=>(g(e),I),getStore:o,getIndexIds:r,forEachIndex:e=>l(((t,n)=>e(t,(e=>R(t,e,n))))),forEachSlice:(e,t)=>R(e,t,d(e)),hasIndex:s,hasSlice:(e,t)=>J(d(e),t),getTableId:a,getSliceIds:e=>H(d(e)),getSliceRowIds:(e,t)=>Q($(d(e),t)),addSliceIdsListener:(e,n)=>p(n,t,[e]),addSliceRowIdsListener:(e,t,o)=>p(o,n,[e,t]),delListener:e=>(L(e),I),destroy:w,getListenerStats:()=>({})};return de(I)})),Le=B([["avg",[(e,t)=>g(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,o)=>e+(t-n)/o]],["max",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:m(t,e)]],["min",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:C(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Re=(e,t,n,o,r,l=!1)=>{if(j(n))return;const[s,i,a,d]=r;return l||(l=k(e)),N(o,(([n,o])=>{l||(e=k(n)?null==i?void 0:i(e,o,t++):k(o)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,o,n,t),l||(l=k(e)))})),l?s(Q(n),F(n)):e},Ie=ne((e=>{const t=B(),[n,o,r,l,s,i,a,,d,c,u]=ee(e,O,(e=>isNaN(e)||k(e)||!0===e||!1===e||""===e?void 0:1*e)),[v,h,f]=le((()=>g)),g={setMetricDefinition:(e,n,o,r,l,s,c)=>{var u;const v=P(o)?[o,l,s,c]:null!=(u=$(Le,o))?u:$(Le,"sum");return d(e,n,((n,o,r,l,s,d)=>{const c=i(e),u=F(l);d||(d=k(c)),n();let f=Re(c,u,l,o,v,d);x(f)||(f=void 0),f!=c&&(a(e,f),h(t,[e],f,c))}),te(r,1)),g},delMetricDefinition:e=>(c(e),g),getStore:n,getMetricIds:o,forEachMetric:r,hasMetric:l,getTableId:s,getMetric:i,addMetricListener:(e,n)=>v(n,t,[e]),delListener:e=>(f(e),g),destroy:u,getListenerStats:()=>({})};return de(g)}));var Se=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Te=(e,t,n,o,r)=>{let l,s=0;const i={load:n=>Se(void 0,null,(function*(){if(2!=s){s=1;const o=yield t();k(o)||""==o?e.setTables(n):e.setJson(o),s=0}return i})),startAutoLoad:e=>Se(void 0,null,(function*(){return i.stopAutoLoad(),yield i.load(e),o(i.load),i})),stopAutoLoad:()=>(r(),i),save:()=>Se(void 0,null,(function*(){return 1!=s&&(s=2,yield n(e.getJson()),s=0),i})),startAutoSave:()=>Se(void 0,null,(function*(){return yield i.stopAutoSave().save(),l=e.addTablesListener((()=>i.save())),i})),stopAutoSave:()=>(A(l,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return de(i)};var be=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const me=globalThis.window,Ce=(e,t,n)=>{let o;return Te(e,(()=>be(void 0,null,(function*(){return n.getItem(t)}))),(e=>be(void 0,null,(function*(){return n.setItem(t,e)}))),(e=>{o=o=>{o.storageArea===n&&o.key===t&&e()},me.addEventListener("storage",o)}),(()=>{me.removeEventListener("storage",o),o=void 0}))},xe=(e,t)=>Ce(e,t,localStorage),Ee=(e,t)=>Ce(e,t,sessionStorage);var ke=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Ae=(n,o)=>{let r;return Te(n,(()=>ke(void 0,null,(function*(){try{return yield t.readFile(o,"utf8")}catch(e){}}))),(e=>ke(void 0,null,(function*(){try{yield t.writeFile(o,e,"utf8")}catch(e){}}))),(t=>{r=e(o,t)}),(()=>{null==r||r.close(),r=void 0}))};var Me=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Pe=e=>e.headers.get("ETag"),De=(e,t,n,o)=>{let r,l;return Te(e,(()=>Me(void 0,null,(function*(){const e=yield fetch(t);return l=Pe(e),e.text()}))),(e=>Me(void 0,null,(function*(){return yield fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{r=setInterval((()=>Me(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),o=Pe(n);k(l)||k(o)||o==l||(l=o,e())}))),1e3*o)}),(()=>{A(r,clearInterval),r=void 0}))};var Oe=Object.getOwnPropertySymbols,Fe=Object.prototype.hasOwnProperty,Je=Object.prototype.propertyIsEnumerable;const je=ne((e=>{const t=e.createStore,[n,o,r,l,s,,,i,,a,c,u,v]=ee(e,(()=>!0),O),f=t(),g=t(),y=B(),I=(e,t,...n)=>h(n,(n=>_(K(K(y,t,B),e,Z),n))),S=e=>{A($(y,e),(e=>{q(e,((e,t)=>N(t,(t=>e.delListener(t))))),z(e)})),h([g,f],(t=>t.delTable(e)))},T=(e,t,n)=>I(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),b={setQueryDefinition:(t,n,o)=>{i(t,n),S(t);const r=[],l=[[null,[n,null,null,[],B()]]],s=[],a=[],c=[];o({select:(e,t)=>{const n=P(e)?[w(r)+"",e]:[k(t)?e:t,n=>n(e,t)];return R(r,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const o=k(n)||P(t)?null:t,r=k(o)?t:n,s=[e,[e,o,P(r)?r:e=>e(r),[],B()]];return R(l,s),{as:e=>s[0]=e}},where:(e,t,n)=>R(s,P(e)?e:k(n)?n=>n(e)===t:o=>o(e,t)===n),group:(e,t,n,o,r)=>{var l;const s=[e,[e,P(t)?[t,n,o,r]:null!=(l=$(Le,t))?l:[(e,t)=>t]]];return R(a,s),{as:e=>s[0]=e}},having:(e,t)=>R(c,P(e)?e:n=>n(e)===t)});const y=B(r);if(j(y))return b;const L=B(l);q(L,((e,[,t])=>A($(L,t),(({3:t})=>k(e)?0:R(t,e)))));const m=B(a);let C=f;if(j(m)&&p(c))C=g;else{T(t,C,g);const e=B();q(m,((t,[n,o])=>_(K(e,n,Z),[t,o])));const n=Z();q(y,(t=>J(e,t)?0:_(n,t)));const o=B(),r=(n,o,r,l)=>A(n,(([s,i,a,u])=>{q(o,((t,[n])=>{const o=K(s,t,B),i=$(o,r),a=l?void 0:n;if(i!==a){const n=Z([[i,a]]),l=F(o);G(o,r,a),N($(e,t),(([e,t])=>{const r=Re(u[e],l,o,n,t);u[e]=k(fe(r))?null:r}))}})),j(i)||!d(c,(e=>e((e=>u[e]))))?g.delRow(t,a):k(a)?n[2]=g.addRow(t,u):g.setRow(t,a,u)}));I(C,t,C.addRowListener(t,null,((l,s,i,a)=>{const d=[],c=[],u=B(),v=C.hasRow(t,i);let h=!v;N(n,(e=>{const[n,o,r]=a(t,i,e);R(d,o),R(c,r),h||(h=n)})),q(e,(e=>{const[n,,o]=a(t,i,e);(h||n)&&G(u,e,[o])})),h&&r(Y(o,d,void 0,(([,e])=>(W(e,i),j(e)))),u,i,1),v&&r(Y(o,c,(()=>{const e={};return N(n,(n=>e[n]=C.getCell(t,i,n))),[B(),Z(),void 0,e]}),(([,e])=>{_(e,i)})),u,i)})))}T(t,e,C);const x=(o,r,l,i)=>{const a=t=>e.getCell(r,l,t);h(i,(n=>{var r;const[l,,s,i,d]=$(L,n),c=null==s?void 0:s(a,o),[h,f]=null!=(r=$(d,o))?r:[];c!=h&&(k(f)||v(t,f),G(d,o,k(c)?null:[c,...u(t,1,e.addRowListener(l,c,(()=>x(o,l,c,i))))]))})),(o=>{const r=(t,r)=>{var l,s,i;return e.getCell(...k(r)?[n,o,t]:t===n?[n,o,r]:[null==(l=$(L,t))?void 0:l[0],null==(i=$(null==(s=$(L,t))?void 0:s[4],o))?void 0:i[0],r])};C.transaction((()=>d(s,(e=>e(r)))?q(y,((e,n)=>ge(C,t,o,e,n(r,o)))):C.delRow(t,o)))})(o)},{3:E}=$(L,null);return C.transaction((()=>u(t,1,e.addRowListener(n,null,((o,r,l)=>{e.hasRow(n,l)?x(l,n,l,E):(C.delRow(t,l),N(L,(({4:e})=>A($(e,l),(([,n])=>{v(t,n),G(e,l)})))))}))))),b},delQueryDefinition:e=>(S(e),a(e),b),getStore:n,getQueryIds:o,forEachQuery:r,hasQuery:l,getTableId:s,delListener:e=>(g.delListener(e),b),destroy:c,getListenerStats:()=>((e,t)=>{var n={};for(var o in e)Fe.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&Oe)for(var o of Oe(e))t.indexOf(o)<0&&Je.call(e,o)&&(n[o]=e[o]);return n})(g.getListenerStats(),["tables","tableIds","transaction"])};return ve({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],n)=>{h(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+n]=(...t)=>g[e+n](...t))),b["addResult"+n+"Listener"]=(...e)=>g["add"+n+"Listener"](...L(e,0,t),((n,...o)=>e[t](b,...o)))})),de(b)})),Qe=ne((e=>{const t=B(),n=B(),o=B(),r=B(),[l,s,i,a,d,c,,,u,v,h]=ee(e,(()=>[B(),B(),B(),B()]),(e=>k(e)?void 0:e+"")),[f,g,w]=le((()=>R)),p=(e,t,n)=>A(c(e),(([o,,r])=>{if(!J(r,t)){const l=Z();if(d(e)!=L(e))_(l,t);else{let e=t;for(;!k(e)&&!J(l,e);)_(l,e),e=$(o,e)}if(n)return l;G(r,t,l)}return $(r,t)})),y=(e,t)=>A(c(e),(([,,e])=>G(e,t))),L=e=>$(t,e),R={setRelationshipDefinition:(e,l,s,i)=>(G(t,e,s),u(e,l,((t,l)=>{const s=Z(),i=Z(),a=Z(),[d,u]=c(e);N(l,(([t,n],o)=>{k(t)||(_(i,t),A($(u,t),(e=>{W(e,o),j(e)&&G(u,t)}))),k(n)||(_(i,n),J(u,n)||G(u,n,Z()),_($(u,n),o)),_(s,o),G(d,o,n),q($(r,e),(t=>{J(p(e,t),o)&&_(a,t)}))})),t(),N(s,(t=>g(n,[e,t]))),N(i,(t=>g(o,[e,t]))),N(a,(t=>{y(e,t),g(r,[e,t])}))}),te(i)),R),delRelationshipDefinition:e=>(G(t,e),v(e),R),getStore:l,getRelationshipIds:s,forEachRelationship:t=>i((n=>t(n,(t=>e.forEachRow(d(n),t))))),hasRelationship:a,getLocalTableId:d,getRemoteTableId:L,getRemoteRowId:(e,t)=>{var n;return $(null==(n=c(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return Q($(null==(n=c(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>k(c(e))?[t]:Q(p(e,t,!0)),addRemoteRowIdListener:(e,t,o)=>f(o,n,[e,t]),addLocalRowIdsListener:(e,t,n)=>f(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),f(n,r,[e,t])),delListener:e=>(y(...w(e)),R),destroy:h,getListenerStats:()=>({})};return de(R)})),ze=e=>[e,e],Ne=()=>[B(),B()],We=(e,t,n,o=G)=>{const r=(l=H(e),s=e=>!ce(t,e),l.filter(s));var l,s;return h(ie(t),(o=>n(e,o,t[o]))),h(r,(t=>o(e,t))),e},Be=(e,t,n)=>k(e)||!(e=>E(e,se)&&e.constructor==se)(e)||he(e)||ae(e)?(null==n||n(),!1):(ve(e,((n,o)=>{t(n,o)||ue(e,o)})),!he(e)),He=(e,t,n)=>G(e,t,$(e,t)==-n?void 0:n),$e=()=>{let e,t,n=0;const o=B(),r=B(),s=B(),d=B(),u=B(),g=B(),w=B(),p=B(),y=B(),I=Ne(),S=Ne(),m=Ne(),C=Ne(),x=Ne(),E=Ne(),D=Ne(),O=Ne(),F=Ne(),Q=Ne(),[Y,ee,te,ne]=le((()=>tt)),oe=(t,n)=>(!e||J(g,n)||Pe(n))&&Be(t,((e,t)=>se(n,t,e)),(()=>Pe(n))),se=(e,t,n,o)=>Be(o?n:ae(n,e,t),((o,r)=>A(ie(e,t,r,o),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Pe(e,t))),ie=(t,n,o,r)=>e?A($($(g,t),o),(e=>fe(r)!=e.type?Pe(t,n,o,r,e.default):r),(()=>Pe(t,n,o,r))):k(fe(r))?Pe(t,n,o,r):r,ae=(e,t,n)=>(A($(w,t),(([o,r])=>{N(o,((t,n)=>{ce(e,n)||(e[n]=t)})),N(r,(o=>{ce(e,o)||Pe(t,n,o)}))})),e),we=e=>We(g,e,((e,t,n)=>{const o=B(),r=Z();We(K(g,t,B),n,((e,t,n)=>{G(e,t,n),A(n.default,(e=>G(o,t,e)),(()=>_(r,t)))})),G(w,t,[o,r])}),((e,t)=>{G(g,t),G(w,t)})),ye=e=>We(y,e,((e,t,n)=>Le(t,n)),((e,t)=>me(t))),Le=(e,t)=>We(K(y,e,(()=>(Ee(e,1),B()))),t,((t,n,o)=>Re(e,t,n,o)),((t,n)=>Ce(e,t,n))),Re=(e,t,n,o,r)=>We(K(t,n,(()=>(ke(e,n,1),B()))),o,((t,o,r)=>Ie(e,n,t,o,r)),((o,l)=>xe(e,t,n,o,l,r))),Ie=(e,t,n,o,r)=>{J(n,o)||Ae(e,t,o,1);const l=$(n,o);r!==l&&(Me(e,t,o,l,r),G(n,o,r))},Se=(e,t,n,o,r)=>A($(t,n),(t=>Ie(e,n,t,o,r)),(()=>Re(e,t,n,ae({[o]:r},e,n)))),Te=e=>{const[t]=K(p,e,re),n=t();return J($(y,e),n)?Te(e):n},be=e=>{var t;return null!=(t=$(y,e))?t:Le(e,{})},me=e=>Le(e,{}),Ce=(e,t,n)=>{const[,o]=K(p,e,re);o(n),Re(e,t,n,{},!0)},xe=(e,t,n,o,r,l)=>{var s;const i=$(null==(s=$(w,e))?void 0:s[0],r);if(!k(i)&&!l)return Ie(e,n,o,r,i);const a=t=>{Me(e,n,t,$(o,t)),Ae(e,n,t,-1),G(o,t)};k(i)?a(r):q(o,a),j(o)&&(ke(e,n,-1),j(G(t,n))&&(Ee(e,-1),G(y,e),G(p,e)))},Ee=(e,t)=>He(o,e,t),ke=(e,t,n)=>He(K(r,e,B),t,n),Ae=(e,t,n,o)=>He(K(K(s,e,B),t,B),n,o),Me=(e,t,n,o,r)=>K(K(K(d,e,B),t,B),n,(()=>[o,0]))[1]=r,Pe=(e,t,n,o,r)=>(R(K(K(K(u,e,B),t,B),n,(()=>[])),o),r),De=(e,t,n)=>A($($($(d,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...ze(Ve(e,t,n))])),Oe=e=>j(u)||j(F[e])?0:N(e?V(u,X):u,((t,n)=>N(t,((t,o)=>N(t,((t,r)=>ee(F[e],[n,o,r],t))))))),Fe=(e,t,n)=>{if(!j(t))return ee(e,n),1},Je=e=>{const t=j(x[e]),n=j(D[e])&&j(C[e])&&t&&j(S[e]),l=j(O[e])&&j(E[e])&&j(m[e])&&j(I[e]);if(!n||!l){const i=e?[V(o),X(r),V(s,X),V(d,X)]:[o,r,s,d];if(!n){N(i[2],((t,n)=>N(t,((t,o)=>Fe(D[e],t,[n,o])))));const n=Z();N(i[1],((o,r)=>{Fe(C[e],o,[r])&&!t&&(ee(x[e],[r,null]),_(n,r))})),t||N(i[3],((t,o)=>{if(!J(n,o)){const n=Z();N(t,(e=>N(e,(([t,o],r)=>o!==t?_(n,r):W(e,r))))),N(n,(t=>ee(x[e],[o,t])))}})),Fe(S[e],i[0])}if(!l){let t;N(i[3],((n,o)=>{let r;N(n,((n,l)=>{let s;N(n,(([n,i],a)=>{i!==n&&(ee(O[e],[o,l,a],i,n,De),t=r=s=1)})),s&&ee(E[e],[o,l],De)})),r&&ee(m[e],[o],De)})),t&&ee(I[e],void 0,De)}}},je=(e,...t)=>(Ze((()=>e(...f(t,i)))),tt),Qe=()=>U(y,(e=>U(e,U))),qe=()=>H(y),Ge=e=>H($(y,i(e))),Ke=(e,t,n,o=0,r)=>{const l=[];return q($(y,i(e)),((e,n)=>R(l,[k(t)?e:$(n,i(t)),e]))),f(L(v(l,(([e],[t])=>pe(e,t)*(n?-1:1))),o,k(r)?r:o+r),(([,e])=>e))},Ue=(e,t)=>H($($(y,i(e)),i(t))),Ve=(e,t,n)=>$($($(y,i(e)),i(t)),i(n)),Xe=e=>je((()=>(e=>Be(e,oe,Pe))(e)?ye(e):0)),Ye=()=>je((()=>ye({}))),Ze=(e,t)=>{if(-1==n)return;_e();const o=e();return et(t),o},_e=()=>(n++,tt),et=e=>(n>0&&(n--,0==n&&(t=!j(d),n=1,Oe(1),t&&Je(1),n=-1,(null==e?void 0:e(U(d,(e=>U(e,(e=>U(e,(e=>[...e]),(([e,t])=>e===t))),he)),he),U(u,(e=>U(e,U)))))&&(n=1,N(d,((e,t)=>N(e,((e,n)=>N(e,(([e],o)=>ge(tt,t,n,o,e))))))),n=-1,t=!1),ee(Q[0],void 0,t),Oe(0),t&&Je(0),ee(Q[1],void 0,t),n=0,h([d,u,o,r,s],z))),tt),tt={getTables:Qe,getTableIds:qe,getTable:e=>U($(y,i(e)),U),getRowIds:Ge,getSortedRowIds:Ke,getRow:(e,t)=>U($($(y,i(e)),i(t))),getCellIds:Ue,getCell:Ve,hasTables:()=>!j(y),hasTable:e=>J(y,i(e)),hasRow:(e,t)=>J($(y,i(e)),i(t)),hasCell:(e,t,n)=>J($($(y,i(e)),i(t)),i(n)),getJson:()=>T(y),getSchemaJson:()=>T(g),setTables:Xe,setTable:(e,t)=>je((e=>oe(t,e)?Le(e,t):0),e),setRow:(e,t,n)=>je(((e,t)=>se(i(e),i(t),n)?Re(i(e),be(i(e)),i(t),n):0),e,t),addRow:(e,t)=>Ze((()=>{let n;return se(e,n,t)&&(e=i(e),Re(e,be(e),n=Te(e),t)),n})),setPartialRow:(e,t,n)=>je(((e,t)=>{if(se(e,t,n,1)){const o=be(e);ve(n,((n,r)=>Se(e,o,t,r,n)))}}),e,t),setCell:(e,t,n,o)=>je(((e,t,n)=>A(ie(e,t,n,P(o)?o(Ve(e,t,n)):o),(o=>Se(e,be(e),t,n,o)))),e,t,n),setJson:e=>{try{"{}"===e?Ye():Xe(b(e))}catch(e){}return tt},setSchema:t=>je((()=>{if((e=(e=>Be(e,(e=>Be(e,(e=>{if(!Be(e,((e,t)=>a(["type","default"],t))))return!1;const t=e.type;return!(!M(t)&&t!=l||(fe(e.default)!=t&&ue(e,"default"),0))})))))(t))&&(we(t),!j(y))){const e=Qe();Ye(),Xe(e)}})),delTables:Ye,delTable:e=>je((e=>J(y,e)?me(e):0),e),delRow:(e,t)=>je(((e,t)=>A($(y,e),(n=>J(n,t)?Ce(e,n,t):0))),e,t),delCell:(e,t,n,o)=>je(((e,t,n)=>A($(y,e),(r=>A($(r,t),(l=>J(l,n)?xe(e,r,t,l,n,o):0))))),e,t,n),delSchema:()=>je((()=>{we({}),e=!1})),transaction:Ze,startTransaction:_e,finishTransaction:et,forEachTable:e=>N(y,((t,n)=>e(n,(e=>N(t,((t,n)=>e(n,(e=>q(t,e))))))))),forEachRow:(e,t)=>N($(y,i(e)),((e,n)=>t(n,(t=>q(e,t))))),forEachCell:(e,t,n)=>q($($(y,i(e)),i(t)),n),addSortedRowIdsListener:(e,t,n,o,r,l,s)=>{let i=Ke(e,t,n,o,r);return Y((()=>{const s=Ke(e,t,n,o,r);c(s,i)||(i=s,l(tt,e,t,n,o,r,i))}),x[s?1:0],[e,t])},addWillFinishTransactionListener:e=>Y(e,Q[0]),addDidFinishTransactionListener:e=>Y(e,Q[1]),callListener:e=>(ne(e,[qe,Ge,Ue],(e=>k(e[2])?[]:ze(Ve(...e)))),tt),delListener:e=>(te(e),tt),getListenerStats:()=>({}),createStore:$e};return ve({Tables:[0,I],TableIds:[0,S],Table:[1,m],RowIds:[1,C],Row:[2,E],CellIds:[2,D],Cell:[3,O],InvalidCell:[3,F]},(([e,t],n)=>{tt["add"+n+"Listener"]=(...n)=>Y(n[e],t[n[e+1]?1:0],e>0?L(n,0,e):void 0)})),de(tt)};export{we as createCheckpoints,Te as createCustomPersister,Ae as createFilePersister,ye as createIndexes,xe as createLocalPersister,Ie as createMetrics,je as createQueries,Qe as createRelationships,De as createRemotePersister,Ee as createSessionPersister,$e as createStore,pe as defaultSorter};
|
|
1
|
+
import{watch as e,promises as t}from"fs";const n=e=>typeof e,o=n(""),r=n(!0),l=n(0),s=n(n),i=e=>""+e,a=(e,t)=>e.includes(t),d=(e,t)=>e.every(t),c=(e,t)=>w(e)===w(t)&&d(e,((e,n)=>t[n]===e)),u=(e,t)=>d(e,((n,o)=>0==o||t(e[o-1],n)<=0)),v=(e,t)=>e.sort(t),h=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),g=e=>y(e,((e,t)=>e+t),0),w=e=>e.length,p=e=>0==w(e),y=(e,t,n)=>e.reduce(t,n),L=(e,t,n)=>e.slice(t,n),R=(e,...t)=>e.push(...t),I=e=>e.pop(),S=e=>e.shift(),T=e=>JSON.stringify(e,((e,t)=>E(t,Map)?y([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),b=JSON.parse,m=Math.max,C=Math.min,x=isFinite,E=(e,t)=>e instanceof t,k=e=>null==e,A=(e,t,n)=>k(e)?null==n?void 0:n():t(e),M=e=>e==o||e==r,P=e=>n(e)==s,D=e=>Array.isArray(e),O=()=>{},F=e=>e.size,J=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},j=e=>k(e)||0==F(e),Q=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},z=e=>e.clear(),N=(e,t)=>null==e?void 0:e.forEach(t),W=(e,t)=>null==e?void 0:e.delete(t),B=e=>new Map(e),H=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},$=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>N(e,((e,n)=>t(n,e))),G=(e,t,n)=>k(n)?(W(e,t),e):null==e?void 0:e.set(t,n),K=(e,t,n)=>(J(e,t)||G(e,t,n()),$(e,t)),U=(e,t,n)=>{const o={},r=null!=t?t:e=>e;return N(e,((e,t)=>A(r(e),(e=>(null==n?void 0:n(e))?0:o[t]=e)))),o},V=(e,t)=>{const n=B(),o=null!=t?t:e=>e;return N(e,((e,t)=>n.set(t,o(e)))),n},X=e=>V(e,V),Y=(e,t,n,o,r=0)=>A((n?K:$)(e,t[r],r>w(t)-2?n:B),(l=>{if(r>w(t)-2)return(null==o?void 0:o(l))&&G(e,t[r]),l;const s=Y(l,t,n,o,r+1);return j(l)&&G(e,t[r]),s})),Z=e=>new Set(D(e)||k(e)?e:[e]),_=(e,t)=>null==e?void 0:e.add(t),ee=(e,t,n)=>{const o=e.hasRow,r=B(),l=B(),s=B(),i=B(),a=B(),d=(t,n,...o)=>{const r=K(a,t,Z);return h(o,(t=>_(r,t)&&n&&e.callListener(t))),o},u=(t,...n)=>A($(a,t),(o=>{h(p(n)?Q(o):n,(t=>{e.delListener(t),W(o,t)})),j(o)&&G(a,t)})),v=(e,n)=>{G(r,e,n),J(l,e)||(G(l,e,t()),G(s,e,B()),G(i,e,B()))},f=e=>{G(r,e),G(l,e),G(s,e),G(i,e),u(e)};return[()=>e,()=>H(r),e=>q(l,e),e=>J(l,e),e=>$(r,e),e=>$(l,e),(e,t)=>G(l,e,t),v,(t,r,l,a,f)=>{v(t,r);const g=B(),w=B(),p=$(s,t),y=$(i,t),L=t=>{const l=n=>e.getCell(r,t,n),s=$(p,t),i=o(r,t)?n(a(l,t)):void 0;if(s===i||D(s)&&D(i)&&c(s,i)||G(g,t,[s,i]),!k(f)){const e=$(y,t),n=o(r,t)?f(l,t):void 0;e!=n&&G(w,t,n)}},R=e=>{l((()=>{N(g,(([,e],t)=>G(p,t,e))),N(w,((e,t)=>G(y,t,e)))}),g,w,p,y,e),z(g),z(w)};q(p,L),e.hasTable(r)&&h(e.getRowIds(r),(e=>{J(p,e)||L(e)})),R(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>L(n))),e.addTableListener(r,(()=>R())))},f,()=>q(a,f),d,u]},te=(e,t)=>n(e)==o?t=>t(e):null!=e?e:()=>null!=t?t:"",ne=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},oe=/^\d+$/,re=()=>{const e=[];let t=0;return[()=>{var n;return null!=(n=S(e))?n:""+t++},t=>{oe.test(t)&&w(e)<1e3&&R(e,t)}]},le=e=>{let t;const[n,o]=re(),r=B();return[(o,l,s)=>{null!=t||(t=e());const i=n();return G(r,i,[o,l,s]),_(Y(l,null!=s?s:[""],Z),i),i},(e,n,...o)=>h(((e,t=[""])=>{const n=[],o=(e,r)=>r==w(t)?R(n,e):null===t[r]?N(e,(e=>o(e,r+1))):h([t[r],null],(t=>o($(e,t),r+1)));return o(e,0),n})(e,n),(e=>N(e,(e=>$(r,e)[0](t,...null!=n?n:[],...o))))),e=>A($(r,e),(([,t,n])=>(Y(t,null!=n?n:[""],void 0,(t=>(W(t,e),j(t)?1:0))),G(r,e),o(e),n))),(e,n,o)=>A($(r,e),(([e,,r=[]])=>{const l=(...s)=>{const i=w(s);i==w(r)?e(t,...s,...o(s)):k(r[i])?h(n[i](...s),(e=>l(...s,e))):l(...s,r[i])};l()}))]},se=Object,ie=se.keys,ae=se.isFrozen,de=se.freeze,ce=(e,t)=>!k(((e,t)=>A(e,(e=>e[t])))(e,t)),ue=(e,t)=>delete e[t],ve=(e,t)=>f(se.entries(e),(([e,n])=>t(n,e))),he=e=>p(ie(e)),fe=e=>{const t=n(e);return M(t)||t==l&&x(e)?t:void 0},ge=(e,t,n,o,r)=>k(r)?e.delCell(t,n,o,!0):e.setCell(t,n,o,r),we=ne((e=>{let t,n,o,r=100,l=B(),s=1;const i=B(),d=B(),[c,u,v]=le((()=>z)),f=B(),g=B(),y=[],L=[],T=(t,n)=>{s=0,e.transaction((()=>N($(f,n),((n,o)=>N(n,((n,r)=>N(n,((n,l)=>ge(e,o,r,l,n[t]))))))))),s=1},b=e=>{G(f,e),G(g,e),u(d,[e])},m=(e,t)=>h(((e,t)=>e.splice(0,t))(e,null!=t?t:w(e)),b),C=()=>m(y,w(y)-r),x=e.addCellListener(null,null,null,((e,n,r,i,a,d)=>{if(s){A(t,(()=>{R(y,t),C(),m(L),t=void 0,o=1}));const e=K(l,n,B),s=K(e,r,B),c=K(s,i,(()=>[d,void 0]));c[1]=a,c[0]===a&&j(G(s,i))&&j(G(e,r))&&j(G(l,n))&&(t=I(y),o=1),D()}})),E=(e="")=>(k(t)&&(t=""+n++,G(f,t,l),F(t,e),l=B(),o=1),t),M=()=>{p(y)||(((e,...t)=>{e.unshift(...t)})(L,E()),T(0,t),t=I(y),o=1)},P=()=>{p(L)||(R(y,t),t=S(L),T(1,t),o=1)},D=()=>{o&&(u(i),o=0)},O=e=>{const t=E(e);return D(),t},F=(e,t)=>(Q(e)&&$(g,e)!==t&&(G(g,e,t),u(d,[e])),z),Q=e=>J(f,e),z={setSize:e=>(r=e,C(),z),addCheckpoint:O,setCheckpoint:F,getStore:()=>e,getCheckpointIds:()=>[[...y],t,[...L]],forEachCheckpoint:e=>q(g,e),hasCheckpoint:Q,getCheckpoint:e=>$(g,e),goBackward:()=>(M(),D(),z),goForward:()=>(P(),D(),z),goTo:e=>{const n=a(y,e)?M:a(L,e)?P:null;for(;!k(n)&&e!=t;)n();return D(),z},addCheckpointIdsListener:e=>c(e,i),addCheckpointListener:(e,t)=>c(t,d,[e]),delListener:e=>(v(e),z),clear:()=>(m(y),m(L),k(t)||b(t),t=void 0,n=0,O(),z),destroy:()=>{e.delListener(x)},getListenerStats:()=>({})};return de(z.clear())})),pe=(e,t)=>e<t?-1:1,ye=ne((e=>{const t=B(),n=B(),[o,r,l,s,a,d,c,,h,g,w]=ee(e,B,(e=>k(e)?"":D(e)?f(e,i):i(e))),[p,y,L]=le((()=>I)),R=(t,n,o)=>{const r=a(t);N(o,((t,o)=>n(o,(n=>N(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},I={setIndexDefinition:(e,o,r,l,s,i=pe)=>{const a=k(s)?void 0:([e],[t])=>s(e,t);return h(e,o,((o,r,s,h,f,g)=>{let w=0;const p=Z(),L=Z(),R=d(e);if(N(r,(([e,t],n)=>{const o=Z(e),r=Z(t);N(o,(e=>W(r,e)?W(o,e):0)),N(o,(e=>{_(p,e),A($(R,e),(t=>{W(t,n),j(t)&&(G(R,e),w=1)}))})),N(r,(e=>{_(p,e),J(R,e)||(G(R,e,Z()),w=1),_($(R,e),n),k(l)||_(L,e)}))})),o(),j(f)||(g?q(R,(e=>_(L,e))):q(s,(e=>A($(h,e),(e=>_(L,e))))),N(L,(e=>{const t=(t,n)=>i($(f,t),$(f,n),e),n=[...$(R,e)];u(n,t)||(G(R,e,Z(v(n,t))),_(p,e))}))),(w||g)&&!k(a)){const t=[...R];u(t,a)||(c(e,B(v(t,a))),w=1)}w&&y(t,[e]),N(p,(t=>y(n,[e,t])))}),te(r),A(l,te)),I},delIndexDefinition:e=>(g(e),I),getStore:o,getIndexIds:r,forEachIndex:e=>l(((t,n)=>e(t,(e=>R(t,e,n))))),forEachSlice:(e,t)=>R(e,t,d(e)),hasIndex:s,hasSlice:(e,t)=>J(d(e),t),getTableId:a,getSliceIds:e=>H(d(e)),getSliceRowIds:(e,t)=>Q($(d(e),t)),addSliceIdsListener:(e,n)=>p(n,t,[e]),addSliceRowIdsListener:(e,t,o)=>p(o,n,[e,t]),delListener:e=>(L(e),I),destroy:w,getListenerStats:()=>({})};return de(I)})),Le=B([["avg",[(e,t)=>g(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,o)=>e+(t-n)/o]],["max",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:m(t,e)]],["min",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:C(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Re=(e,t,n,o,r,l=!1)=>{if(j(n))return;const[s,i,a,d]=r;return l||(l=k(e)),N(o,(([n,o])=>{l||(e=k(n)?null==i?void 0:i(e,o,t++):k(o)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,o,n,t),l||(l=k(e)))})),l?s(Q(n),F(n)):e},Ie=ne((e=>{const t=B(),[n,o,r,l,s,i,a,,d,c,u]=ee(e,O,(e=>isNaN(e)||k(e)||!0===e||!1===e||""===e?void 0:1*e)),[v,h,f]=le((()=>g)),g={setMetricDefinition:(e,n,o,r,l,s,c)=>{var u;const v=P(o)?[o,l,s,c]:null!=(u=$(Le,o))?u:$(Le,"sum");return d(e,n,((n,o,r,l,s,d)=>{const c=i(e),u=F(l);d||(d=k(c)),n();let f=Re(c,u,l,o,v,d);x(f)||(f=void 0),f!=c&&(a(e,f),h(t,[e],f,c))}),te(r,1)),g},delMetricDefinition:e=>(c(e),g),getStore:n,getMetricIds:o,forEachMetric:r,hasMetric:l,getTableId:s,getMetric:i,addMetricListener:(e,n)=>v(n,t,[e]),delListener:e=>(f(e),g),destroy:u,getListenerStats:()=>({})};return de(g)}));var Se=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Te=(e,t,n,o,r)=>{let l,s=0;const i={load:n=>Se(void 0,null,(function*(){if(2!=s){s=1;const o=yield t();k(o)||""==o?e.setTables(n):e.setJson(o),s=0}return i})),startAutoLoad:e=>Se(void 0,null,(function*(){return i.stopAutoLoad(),yield i.load(e),o(i.load),i})),stopAutoLoad:()=>(r(),i),save:()=>Se(void 0,null,(function*(){return 1!=s&&(s=2,yield n(e.getJson()),s=0),i})),startAutoSave:()=>Se(void 0,null,(function*(){return yield i.stopAutoSave().save(),l=e.addTablesListener((()=>i.save())),i})),stopAutoSave:()=>(A(l,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return de(i)};var be=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const me=globalThis.window,Ce=(e,t,n)=>{let o;return Te(e,(()=>be(void 0,null,(function*(){return n.getItem(t)}))),(e=>be(void 0,null,(function*(){return n.setItem(t,e)}))),(e=>{o=o=>{o.storageArea===n&&o.key===t&&e()},me.addEventListener("storage",o)}),(()=>{me.removeEventListener("storage",o),o=void 0}))},xe=(e,t)=>Ce(e,t,localStorage),Ee=(e,t)=>Ce(e,t,sessionStorage);var ke=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Ae=(n,o)=>{let r;return Te(n,(()=>ke(void 0,null,(function*(){try{return yield t.readFile(o,"utf8")}catch(e){}}))),(e=>ke(void 0,null,(function*(){try{yield t.writeFile(o,e,"utf8")}catch(e){}}))),(t=>{r=e(o,t)}),(()=>{null==r||r.close(),r=void 0}))};var Me=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{i(n.next(e))}catch(e){r(e)}},s=e=>{try{i(n.throw(e))}catch(e){r(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,s);i((n=n.apply(e,t)).next())}));const Pe=e=>e.headers.get("ETag"),De=(e,t,n,o)=>{let r,l;return Te(e,(()=>Me(void 0,null,(function*(){const e=yield fetch(t);return l=Pe(e),e.text()}))),(e=>Me(void 0,null,(function*(){return yield fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{r=setInterval((()=>Me(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),o=Pe(n);k(l)||k(o)||o==l||(l=o,e())}))),1e3*o)}),(()=>{A(r,clearInterval),r=void 0}))};var Oe=Object.getOwnPropertySymbols,Fe=Object.prototype.hasOwnProperty,Je=Object.prototype.propertyIsEnumerable;const je=ne((e=>{const t=e.createStore,[n,o,r,l,s,,,i,,a,c,u,v]=ee(e,(()=>!0),O),f=t(),g=t(),y=B(),I=(e,t,...n)=>h(n,(n=>_(K(K(y,t,B),e,Z),n))),S=e=>{A($(y,e),(e=>{q(e,((e,t)=>N(t,(t=>e.delListener(t))))),z(e)})),h([g,f],(t=>t.delTable(e)))},T=(e,t,n)=>I(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),b={setQueryDefinition:(t,n,o)=>{i(t,n),S(t);const r=[],l=[[null,[n,null,null,[],B()]]],s=[],a=[],c=[];o({select:(e,t)=>{const n=P(e)?[w(r)+"",e]:[k(t)?e:t,n=>n(e,t)];return R(r,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const o=k(n)||P(t)?null:t,r=k(o)?t:n,s=[e,[e,o,P(r)?r:e=>e(r),[],B()]];return R(l,s),{as:e=>s[0]=e}},where:(e,t,n)=>R(s,P(e)?e:k(n)?n=>n(e)===t:o=>o(e,t)===n),group:(e,t,n,o,r)=>{var l;const s=[e,[e,P(t)?[t,n,o,r]:null!=(l=$(Le,t))?l:[(e,t)=>t]]];return R(a,s),{as:e=>s[0]=e}},having:(e,t)=>R(c,P(e)?e:n=>n(e)===t)});const y=B(r);if(j(y))return b;const L=B(l);q(L,((e,[,t])=>A($(L,t),(({3:t})=>k(e)?0:R(t,e)))));const m=B(a);let C=f;if(j(m)&&p(c))C=g;else{T(t,C,g);const e=B();q(m,((t,[n,o])=>_(K(e,n,Z),[t,o])));const n=Z();q(y,(t=>J(e,t)?0:_(n,t)));const o=B(),r=(n,o,r,l)=>A(n,(([s,i,a,u])=>{q(o,((t,[n])=>{const o=K(s,t,B),i=$(o,r),a=l?void 0:n;if(i!==a){const n=Z([[i,a]]),l=F(o);G(o,r,a),N($(e,t),(([e,t])=>{const r=Re(u[e],l,o,n,t);u[e]=k(fe(r))?null:r}))}})),j(i)||!d(c,(e=>e((e=>u[e]))))?g.delRow(t,a):k(a)?n[2]=g.addRow(t,u):g.setRow(t,a,u)}));I(C,t,C.addRowListener(t,null,((l,s,i,a)=>{const d=[],c=[],u=B(),v=C.hasRow(t,i);let h=!v;N(n,(e=>{const[n,o,r]=a(t,i,e);R(d,o),R(c,r),h||(h=n)})),q(e,(e=>{const[n,,o]=a(t,i,e);(h||n)&&G(u,e,[o])})),h&&r(Y(o,d,void 0,(([,e])=>(W(e,i),j(e)))),u,i,1),v&&r(Y(o,c,(()=>{const e={};return N(n,(n=>e[n]=C.getCell(t,i,n))),[B(),Z(),void 0,e]}),(([,e])=>{_(e,i)})),u,i)})))}T(t,e,C);const x=(o,r,l,i)=>{const a=t=>e.getCell(r,l,t);h(i,(n=>{var r;const[l,,s,i,d]=$(L,n),c=null==s?void 0:s(a,o),[h,f]=null!=(r=$(d,o))?r:[];c!=h&&(k(f)||v(t,f),G(d,o,k(c)?null:[c,...u(t,1,e.addRowListener(l,c,(()=>x(o,l,c,i))))]))})),(o=>{const r=(t,r)=>{var l,s,i;return e.getCell(...k(r)?[n,o,t]:t===n?[n,o,r]:[null==(l=$(L,t))?void 0:l[0],null==(i=$(null==(s=$(L,t))?void 0:s[4],o))?void 0:i[0],r])};C.transaction((()=>d(s,(e=>e(r)))?q(y,((e,n)=>ge(C,t,o,e,n(r,o)))):C.delRow(t,o)))})(o)},{3:E}=$(L,null);return C.transaction((()=>u(t,1,e.addRowListener(n,null,((o,r,l)=>{e.hasRow(n,l)?x(l,n,l,E):(C.delRow(t,l),N(L,(({4:e})=>A($(e,l),(([,n])=>{v(t,n),G(e,l)})))))}))))),b},delQueryDefinition:e=>(S(e),a(e),b),getStore:n,getQueryIds:o,forEachQuery:r,hasQuery:l,getTableId:s,delListener:e=>(g.delListener(e),b),destroy:c,getListenerStats:()=>((e,t)=>{var n={};for(var o in e)Fe.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&Oe)for(var o of Oe(e))t.indexOf(o)<0&&Je.call(e,o)&&(n[o]=e[o]);return n})(g.getListenerStats(),["tables","tableIds","transaction"])};return ve({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],n)=>{h(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+n]=(...t)=>g[e+n](...t))),b["addResult"+n+"Listener"]=(...e)=>g["add"+n+"Listener"](...L(e,0,t),((n,...o)=>e[t](b,...o)))})),de(b)})),Qe=ne((e=>{const t=B(),n=B(),o=B(),r=B(),[l,s,i,a,d,c,,,u,v,h]=ee(e,(()=>[B(),B(),B(),B()]),(e=>k(e)?void 0:e+"")),[f,g,w]=le((()=>R)),p=(e,t,n)=>A(c(e),(([o,,r])=>{if(!J(r,t)){const l=Z();if(d(e)!=L(e))_(l,t);else{let e=t;for(;!k(e)&&!J(l,e);)_(l,e),e=$(o,e)}if(n)return l;G(r,t,l)}return $(r,t)})),y=(e,t)=>A(c(e),(([,,e])=>G(e,t))),L=e=>$(t,e),R={setRelationshipDefinition:(e,l,s,i)=>(G(t,e,s),u(e,l,((t,l)=>{const s=Z(),i=Z(),a=Z(),[d,u]=c(e);N(l,(([t,n],o)=>{k(t)||(_(i,t),A($(u,t),(e=>{W(e,o),j(e)&&G(u,t)}))),k(n)||(_(i,n),J(u,n)||G(u,n,Z()),_($(u,n),o)),_(s,o),G(d,o,n),q($(r,e),(t=>{J(p(e,t),o)&&_(a,t)}))})),t(),N(s,(t=>g(n,[e,t]))),N(i,(t=>g(o,[e,t]))),N(a,(t=>{y(e,t),g(r,[e,t])}))}),te(i)),R),delRelationshipDefinition:e=>(G(t,e),v(e),R),getStore:l,getRelationshipIds:s,forEachRelationship:t=>i((n=>t(n,(t=>e.forEachRow(d(n),t))))),hasRelationship:a,getLocalTableId:d,getRemoteTableId:L,getRemoteRowId:(e,t)=>{var n;return $(null==(n=c(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return Q($(null==(n=c(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>k(c(e))?[t]:Q(p(e,t,!0)),addRemoteRowIdListener:(e,t,o)=>f(o,n,[e,t]),addLocalRowIdsListener:(e,t,n)=>f(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),f(n,r,[e,t])),delListener:e=>(y(...w(e)),R),destroy:h,getListenerStats:()=>({})};return de(R)})),ze=e=>[e,e],Ne=()=>[B(),B()],We=(e,t,n,o=G)=>{const r=(l=e=>!ce(t,e),H(e).filter(l));var l;return h(ie(t),(o=>n(e,o,t[o]))),h(r,(t=>o(e,t))),e},Be=(e,t,n)=>k(e)||!(e=>E(e,se)&&e.constructor==se)(e)||he(e)||ae(e)?(null==n||n(),!1):(ve(e,((n,o)=>{t(n,o)||ue(e,o)})),!he(e)),He=(e,t,n)=>G(e,t,$(e,t)==-n?void 0:n),$e=()=>{let e,t,n=0;const o=B(),r=B(),s=B(),d=B(),u=B(),g=B(),w=B(),p=B(),y=B(),I=Ne(),S=Ne(),m=Ne(),C=Ne(),x=Ne(),E=Ne(),D=Ne(),O=Ne(),F=Ne(),Q=Ne(),[Y,ee,te,ne]=le((()=>tt)),oe=(t,n)=>(!e||J(g,n)||Pe(n))&&Be(t,((e,t)=>se(n,t,e)),(()=>Pe(n))),se=(e,t,n,o)=>Be(o?n:ae(n,e,t),((o,r)=>A(ie(e,t,r,o),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Pe(e,t))),ie=(t,n,o,r)=>e?A($($(g,t),o),(e=>fe(r)!=e.type?Pe(t,n,o,r,e.default):r),(()=>Pe(t,n,o,r))):k(fe(r))?Pe(t,n,o,r):r,ae=(e,t,n)=>(A($(w,t),(([o,r])=>{N(o,((t,n)=>{ce(e,n)||(e[n]=t)})),N(r,(o=>{ce(e,o)||Pe(t,n,o)}))})),e),we=e=>We(g,e,((e,t,n)=>{const o=B(),r=Z();We(K(g,t,B),n,((e,t,n)=>{G(e,t,n),A(n.default,(e=>G(o,t,e)),(()=>_(r,t)))})),G(w,t,[o,r])}),((e,t)=>{G(g,t),G(w,t)})),ye=e=>We(y,e,((e,t,n)=>Le(t,n)),((e,t)=>me(t))),Le=(e,t)=>We(K(y,e,(()=>(Ee(e,1),B()))),t,((t,n,o)=>Re(e,t,n,o)),((t,n)=>Ce(e,t,n))),Re=(e,t,n,o,r)=>We(K(t,n,(()=>(ke(e,n,1),B()))),o,((t,o,r)=>Ie(e,n,t,o,r)),((o,l)=>xe(e,t,n,o,l,r))),Ie=(e,t,n,o,r)=>{J(n,o)||Ae(e,t,o,1);const l=$(n,o);r!==l&&(Me(e,t,o,l,r),G(n,o,r))},Se=(e,t,n,o,r)=>A($(t,n),(t=>Ie(e,n,t,o,r)),(()=>Re(e,t,n,ae({[o]:r},e,n)))),Te=e=>{const[t]=K(p,e,re),n=t();return J($(y,e),n)?Te(e):n},be=e=>{var t;return null!=(t=$(y,e))?t:Le(e,{})},me=e=>Le(e,{}),Ce=(e,t,n)=>{const[,o]=K(p,e,re);o(n),Re(e,t,n,{},!0)},xe=(e,t,n,o,r,l)=>{var s;const i=$(null==(s=$(w,e))?void 0:s[0],r);if(!k(i)&&!l)return Ie(e,n,o,r,i);const a=t=>{Me(e,n,t,$(o,t)),Ae(e,n,t,-1),G(o,t)};k(i)?a(r):q(o,a),j(o)&&(ke(e,n,-1),j(G(t,n))&&(Ee(e,-1),G(y,e),G(p,e)))},Ee=(e,t)=>He(o,e,t),ke=(e,t,n)=>He(K(r,e,B),t,n),Ae=(e,t,n,o)=>He(K(K(s,e,B),t,B),n,o),Me=(e,t,n,o,r)=>K(K(K(d,e,B),t,B),n,(()=>[o,0]))[1]=r,Pe=(e,t,n,o,r)=>(R(K(K(K(u,e,B),t,B),n,(()=>[])),o),r),De=(e,t,n)=>A($($($(d,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...ze(Ve(e,t,n))])),Oe=e=>j(u)||j(F[e])?0:N(e?V(u,X):u,((t,n)=>N(t,((t,o)=>N(t,((t,r)=>ee(F[e],[n,o,r],t))))))),Fe=(e,t,n)=>{if(!j(t))return ee(e,n),1},Je=e=>{const t=j(x[e]),n=j(D[e])&&j(C[e])&&t&&j(S[e]),l=j(O[e])&&j(E[e])&&j(m[e])&&j(I[e]);if(!n||!l){const i=e?[V(o),X(r),V(s,X),V(d,X)]:[o,r,s,d];if(!n){N(i[2],((t,n)=>N(t,((t,o)=>Fe(D[e],t,[n,o])))));const n=Z();N(i[1],((o,r)=>{Fe(C[e],o,[r])&&!t&&(ee(x[e],[r,null]),_(n,r))})),t||N(i[3],((t,o)=>{if(!J(n,o)){const n=Z();N(t,(e=>N(e,(([t,o],r)=>o!==t?_(n,r):W(e,r))))),N(n,(t=>ee(x[e],[o,t])))}})),Fe(S[e],i[0])}if(!l){let t;N(i[3],((n,o)=>{let r;N(n,((n,l)=>{let s;N(n,(([n,i],a)=>{i!==n&&(ee(O[e],[o,l,a],i,n,De),t=r=s=1)})),s&&ee(E[e],[o,l],De)})),r&&ee(m[e],[o],De)})),t&&ee(I[e],void 0,De)}}},je=(e,...t)=>(Ze((()=>e(...f(t,i)))),tt),Qe=()=>U(y,(e=>U(e,U))),qe=()=>H(y),Ge=e=>H($(y,i(e))),Ke=(e,t,n,o=0,r)=>{return f(L(v((l=$(y,i(e)),s=(e,n)=>[k(t)?n:$(e,i(t)),n],f([...null!=(a=null==l?void 0:l.entries())?a:[]],(([e,t])=>s(t,e)))),(([e],[t])=>pe(e,t)*(n?-1:1))),o,k(r)?r:o+r),(([,e])=>e));var l,s,a},Ue=(e,t)=>H($($(y,i(e)),i(t))),Ve=(e,t,n)=>$($($(y,i(e)),i(t)),i(n)),Xe=e=>je((()=>(e=>Be(e,oe,Pe))(e)?ye(e):0)),Ye=()=>je((()=>ye({}))),Ze=(e,t)=>{if(-1==n)return;_e();const o=e();return et(t),o},_e=()=>(n++,tt),et=e=>(n>0&&(n--,0==n&&(t=!j(d),n=1,Oe(1),t&&Je(1),n=-1,(null==e?void 0:e(U(d,(e=>U(e,(e=>U(e,(e=>[...e]),(([e,t])=>e===t))),he)),he),U(u,(e=>U(e,U)))))&&(n=1,N(d,((e,t)=>N(e,((e,n)=>N(e,(([e],o)=>ge(tt,t,n,o,e))))))),n=-1,t=!1),ee(Q[0],void 0,t),Oe(0),t&&Je(0),ee(Q[1],void 0,t),n=0,h([d,u,o,r,s],z))),tt),tt={getTables:Qe,getTableIds:qe,getTable:e=>U($(y,i(e)),U),getRowIds:Ge,getSortedRowIds:Ke,getRow:(e,t)=>U($($(y,i(e)),i(t))),getCellIds:Ue,getCell:Ve,hasTables:()=>!j(y),hasTable:e=>J(y,i(e)),hasRow:(e,t)=>J($(y,i(e)),i(t)),hasCell:(e,t,n)=>J($($(y,i(e)),i(t)),i(n)),getJson:()=>T(y),getSchemaJson:()=>T(g),setTables:Xe,setTable:(e,t)=>je((e=>oe(t,e)?Le(e,t):0),e),setRow:(e,t,n)=>je(((e,t)=>se(i(e),i(t),n)?Re(i(e),be(i(e)),i(t),n):0),e,t),addRow:(e,t)=>Ze((()=>{let n;return se(e,n,t)&&(e=i(e),Re(e,be(e),n=Te(e),t)),n})),setPartialRow:(e,t,n)=>je(((e,t)=>{if(se(e,t,n,1)){const o=be(e);ve(n,((n,r)=>Se(e,o,t,r,n)))}}),e,t),setCell:(e,t,n,o)=>je(((e,t,n)=>A(ie(e,t,n,P(o)?o(Ve(e,t,n)):o),(o=>Se(e,be(e),t,n,o)))),e,t,n),setJson:e=>{try{"{}"===e?Ye():Xe(b(e))}catch(e){}return tt},setSchema:t=>je((()=>{if((e=(e=>Be(e,(e=>Be(e,(e=>{if(!Be(e,((e,t)=>a(["type","default"],t))))return!1;const t=e.type;return!(!M(t)&&t!=l||(fe(e.default)!=t&&ue(e,"default"),0))})))))(t))&&(we(t),!j(y))){const e=Qe();Ye(),Xe(e)}})),delTables:Ye,delTable:e=>je((e=>J(y,e)?me(e):0),e),delRow:(e,t)=>je(((e,t)=>A($(y,e),(n=>J(n,t)?Ce(e,n,t):0))),e,t),delCell:(e,t,n,o)=>je(((e,t,n)=>A($(y,e),(r=>A($(r,t),(l=>J(l,n)?xe(e,r,t,l,n,o):0))))),e,t,n),delSchema:()=>je((()=>{we({}),e=!1})),transaction:Ze,startTransaction:_e,finishTransaction:et,forEachTable:e=>N(y,((t,n)=>e(n,(e=>N(t,((t,n)=>e(n,(e=>q(t,e))))))))),forEachRow:(e,t)=>N($(y,i(e)),((e,n)=>t(n,(t=>q(e,t))))),forEachCell:(e,t,n)=>q($($(y,i(e)),i(t)),n),addSortedRowIdsListener:(e,t,n,o,r,l,s)=>{let i=Ke(e,t,n,o,r);return Y((()=>{const s=Ke(e,t,n,o,r);c(s,i)||(i=s,l(tt,e,t,n,o,r,i))}),x[s?1:0],[e,t])},addWillFinishTransactionListener:e=>Y(e,Q[0]),addDidFinishTransactionListener:e=>Y(e,Q[1]),callListener:e=>(ne(e,[qe,Ge,Ue],(e=>k(e[2])?[]:ze(Ve(...e)))),tt),delListener:e=>(te(e),tt),getListenerStats:()=>({}),createStore:$e};return ve({Tables:[0,I],TableIds:[0,S],Table:[1,m],RowIds:[1,C],Row:[2,E],CellIds:[2,D],Cell:[3,O],InvalidCell:[3,F]},(([e,t],n)=>{tt["add"+n+"Listener"]=(...n)=>Y(n[e],t[n[e+1]?1:0],e>0?L(n,0,e):void 0)})),de(tt)};export{we as createCheckpoints,Te as createCustomPersister,Ae as createFilePersister,ye as createIndexes,xe as createLocalPersister,Ie as createMetrics,je as createQueries,Qe as createRelationships,De as createRemotePersister,Ee as createSessionPersister,$e as createStore,pe as defaultSorter};
|
package/lib/es6/tinybase.js.gz
CHANGED
|
Binary file
|