tinybase 1.3.6 → 2.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/lib/checkpoints.d.ts +4 -3
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/debug/checkpoints.d.ts +4 -3
- package/lib/debug/checkpoints.js +69 -56
- package/lib/debug/indexes.d.ts +4 -2
- package/lib/debug/indexes.js +106 -69
- package/lib/debug/metrics.d.ts +1 -1
- package/lib/debug/metrics.js +187 -131
- package/lib/debug/persisters.d.ts +6 -0
- package/lib/debug/persisters.js +2 -1
- package/lib/debug/queries.d.ts +3251 -0
- package/lib/debug/queries.js +900 -0
- package/lib/debug/relationships.d.ts +12 -10
- package/lib/debug/relationships.js +104 -68
- package/lib/debug/store.d.ts +415 -74
- package/lib/debug/store.js +295 -120
- package/lib/debug/tinybase.d.ts +1 -0
- package/lib/debug/tinybase.js +985 -176
- package/lib/debug/ui-react.d.ts +4325 -1754
- package/lib/debug/ui-react.js +413 -85
- package/lib/indexes.d.ts +4 -2
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.d.ts +1 -1
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters.d.ts +6 -0
- package/lib/queries.d.ts +3251 -0
- package/lib/queries.js +1 -0
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.d.ts +12 -10
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.d.ts +415 -74
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.d.ts +1 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/ui-react.d.ts +4325 -1754
- 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/queries.js +1 -0
- 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/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/package.json +4 -4
- package/readme.md +2 -2
package/lib/indexes.d.ts
CHANGED
|
@@ -128,11 +128,13 @@ export type SliceRowIdsListener = (
|
|
|
128
128
|
*/
|
|
129
129
|
export type IndexesListenerStats = {
|
|
130
130
|
/**
|
|
131
|
-
* The number of
|
|
131
|
+
* The number of SlideIdsListener functions registered with the Indexes
|
|
132
|
+
* object.
|
|
132
133
|
*/
|
|
133
134
|
sliceIds?: number;
|
|
134
135
|
/**
|
|
135
|
-
* The number of
|
|
136
|
+
* The number of SliceRowIdsListener functions registered with the Indexes
|
|
137
|
+
* object.
|
|
136
138
|
*/
|
|
137
139
|
sliceRowIds?: number;
|
|
138
140
|
};
|
package/lib/indexes.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=(e,t)=>e.every(((n,s)=>0==s||t(e[s-1],n)<=0)),
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=(e,t)=>e.every(t),s=(e,t)=>n(e,((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),r=(e,t)=>e.forEach(t),c=e=>e.length,l=(e,...t)=>e.push(...t),d=e=>null==e,i=(e,t,n)=>d(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,u=e=>d(e)||0==(e=>e.size)(e),h=e=>[...e?.values()??[]],f=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),S=e=>new Map(e),w=e=>[...e?.keys()??[]],L=(e,t)=>e?.get(t),p=(e,t)=>I(e,((e,n)=>t(n,e))),v=(e,t,n)=>d(n)?(g(e,t),e):e?.set(t,n),x=(e,t,n)=>(a(e,t)||v(e,t,n()),L(e,t)),E=(e,t,n,s,o=0)=>i((n?x:L)(e,t[o],o>c(t)-2?n:S),(r=>{if(o>c(t)-2)return s?.(r)&&v(e,t[o]),r;const l=E(r,t,n,s,o+1);return u(r)&&v(e,t[o]),l})),R=e=>new Set(e),b=(e,t)=>e?.add(t),y=(e,t,n)=>{const s=e.hasRow,o=S(),l=S(),E=S(),y=S(),T=S(),k=(t,n,...s)=>{const o=x(T,t,R);return r(s,(t=>b(o,t)&&n&&e.callListener(t))),s},z=(t,...n)=>i(L(T,t),(s=>{r(0==c(n)?h(s):n,(t=>{e.delListener(t),g(s,t)})),u(s)&&v(T,t)})),C=(e,n)=>{v(o,e,n),a(l,e)||(v(l,e,t()),v(E,e,S()),v(y,e,S()))},D=e=>{v(o,e),v(l,e),v(E,e),v(y,e),z(e)};return[()=>e,()=>w(o),e=>p(l,e),e=>a(l,e),e=>L(o,e),e=>L(l,e),(e,t)=>v(l,e,t),C,(t,o,c,l,i)=>{C(t,o);const u=S(),h=S(),g=L(E,t),w=L(y,t),x=t=>{const r=n=>e.getCell(o,t,n),c=L(g,t),a=s(o,t)?n(l(r,t)):void 0;if(c!=a&&v(u,t,[c,a]),!d(i)){const e=L(w,t),n=s(o,t)?i(r,t):void 0;e!=n&&v(h,t,n)}},R=e=>{c((()=>{I(u,(([,e],t)=>v(g,t,e))),I(h,((e,t)=>v(w,t,e)))}),u,h,g,w,e),f(u),f(h)};p(g,x),e.hasTable(o)&&r(e.getRowIds(o),(e=>{a(g,e)||x(e)})),R(!0),z(t),k(t,0,e.addRowListener(o,null,((e,t,n)=>x(n))),e.addTableListener(o,(()=>R())))},D,()=>p(T,D),k,z]},T=(n,s)=>e(n)==t?e=>e(n):n??(()=>s??""),k=(e,t)=>e<t?-1:1,z=(e,t=[""])=>{const n=[],s=(e,o)=>o==c(t)?l(n,e):null===t[o]?I(e,(e=>s(e,o+1))):r([t[o],null],(t=>s(L(e,t),o+1)));return s(e,0),n},C=Object.freeze,D=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const t=S(),f=S(),[x,D,M,j,O,W,m,,q,A,B]=y(e,S,(e=>d(e)?"":e+"")),[F,G,H]=(e=>{let t,s=0;const o=[],a=S();return[(n,r,c)=>{t??=e();const l=o.pop()??""+s++;return v(a,l,[n,r,c]),b(E(r,c??[""],R),l),l},(e,n,...s)=>r(z(e,n),(e=>I(e,(e=>L(a,e)[0](t,...n??[],...s))))),e=>i(L(a,e),(([,t,n])=>(E(t,n??[""],void 0,(t=>(g(t,e),u(t)?1:0))),v(a,e),c(o)<1e3&&l(o,e),n))),(e,t)=>!n(z(e,t),d),(e,n,s)=>i(L(a,e),(([e,,o=[]])=>{const l=(...i)=>{const a=c(i);a==c(o)?e(t,...i,...s(i)):d(o[a])?r(n[a](...i),(e=>l(...i,e))):l(...i,o[a])};l()}))]})((()=>K)),J=(t,n,s)=>{const o=O(t);I(s,((t,s)=>n(s,(n=>I(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},K={setIndexDefinition:(e,n,r,c,l,h=k)=>{const w=d(l)?void 0:([e],[t])=>l(e,t);return q(e,n,((n,r,l,x,E,y)=>{let T=0;const k=R(),z=R(),C=W(e);if(I(r,(([e,t],n)=>{d(e)||(b(k,e),i(L(C,e),(t=>{g(t,n),u(t)&&(v(C,e),T=1)}))),d(t)||(b(k,t),a(C,t)||(v(C,t,R()),T=1),b(L(C,t),n),d(c)||b(z,t))})),n(),u(E)||(y?p(C,(e=>b(z,e))):p(l,(e=>i(L(x,e),(e=>b(z,e))))),I(z,(e=>{const t=(t,n)=>h(L(E,t),L(E,n),e),n=[...L(C,e)];s(n,t)||(v(C,e,R(o(n,t))),b(k,e))}))),(T||y)&&!d(w)){const t=[...C];s(t,w)||(m(e,S(o(t,w))),T=1)}T&&G(t,[e]),I(k,(t=>G(f,[e,t])))}),T(r),i(c,T)),K},delIndexDefinition:e=>(A(e),K),getStore:x,getIndexIds:D,forEachIndex:e=>M(((t,n)=>e(t,(e=>J(t,e,n))))),forEachSlice:(e,t)=>J(e,t,W(e)),hasIndex:j,hasSlice:(e,t)=>a(W(e),t),getTableId:O,getSliceIds:e=>w(W(e)),getSliceRowIds:(e,t)=>h(L(W(e),t)),addSliceIdsListener:(e,n)=>F(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>F(n,f,[e,t]),delListener:e=>(H(e),K),destroy:B,getListenerStats:()=>({})};return C(K)}));export{D as createIndexes};
|
package/lib/indexes.js.gz
CHANGED
|
Binary file
|
package/lib/metrics.d.ts
CHANGED
|
@@ -186,7 +186,7 @@ export type MetricListener = (
|
|
|
186
186
|
*/
|
|
187
187
|
export type MetricsListenerStats = {
|
|
188
188
|
/**
|
|
189
|
-
* The number of
|
|
189
|
+
* The number of MetricListener functions registered with the Metrics object.
|
|
190
190
|
*/
|
|
191
191
|
metric?: number;
|
|
192
192
|
};
|
package/lib/metrics.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(e),
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(e),r=(e,t)=>e.forEach(t),s=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,n)=>e.reduce(t,n),c=(e,...t)=>e.push(...t),a=Math.max,d=Math.min,l=isFinite,u=e=>null==e,v=(e,t,n)=>u(e)?n?.():t(e),h=()=>{},g=e=>e.size,M=(e,t)=>e?.has(t)??!1,f=e=>u(e)||0==g(e),p=e=>[...e?.values()??[]],L=e=>e.clear(),m=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),b=e=>new Map(e),y=(e,t)=>e?.get(t),x=(e,t)=>m(e,((e,n)=>t(n,e))),E=(e,t,n)=>u(n)?(w(e,t),e):e?.set(t,n),I=(e,t,n)=>(M(e,t)||E(e,t,n()),y(e,t)),R=(e,t,n,r,s=0)=>v((n?I:y)(e,t[s],s>i(t)-2?n:b),(o=>{if(s>i(t)-2)return r?.(o)&&E(e,t[s]),o;const c=R(o,t,n,r,s+1);return f(o)&&E(e,t[s]),c})),S=b([["avg",[(e,t)=>s(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>a(...e),(e,t)=>a(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:a(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=>s(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),T=e=>new Set(e),k=(e,t)=>e?.add(t),z=(e,t,n)=>{const s=e.hasRow,o=b(),c=b(),a=b(),d=b(),l=b(),h=(t,n,...s)=>{const i=I(l,t,T);return r(s,(t=>k(i,t)&&n&&e.callListener(t))),s},g=(t,...n)=>v(y(l,t),(s=>{r(0==i(n)?p(s):n,(t=>{e.delListener(t),w(s,t)})),f(s)&&E(l,t)})),R=(e,n)=>{E(o,e,n),M(c,e)||(E(c,e,t()),E(a,e,b()),E(d,e,b()))},S=e=>{E(o,e),E(c,e),E(a,e),E(d,e),g(e)};return[()=>e,()=>[...o?.keys()??[]],e=>x(c,e),e=>M(c,e),e=>y(o,e),e=>y(c,e),(e,t)=>E(c,e,t),R,(t,i,o,c,l)=>{R(t,i);const v=b(),f=b(),p=y(a,t),w=y(d,t),I=t=>{const r=n=>e.getCell(i,t,n),o=y(p,t),a=s(i,t)?n(c(r,t)):void 0;if(o!=a&&E(v,t,[o,a]),!u(l)){const e=y(w,t),n=s(i,t)?l(r,t):void 0;e!=n&&E(f,t,n)}},S=e=>{o((()=>{m(v,(([,e],t)=>E(p,t,e))),m(f,((e,t)=>E(w,t,e)))}),v,f,p,w,e),L(v),L(f)};x(p,I),e.hasTable(i)&&r(e.getRowIds(i),(e=>{M(p,e)||I(e)})),S(!0),g(t),h(t,0,e.addRowListener(i,null,((e,t,n)=>I(n))),e.addTableListener(i,(()=>S())))},S,()=>x(l,S),h,g]},D=(n,r)=>e(n)==t?e=>e(n):n??(()=>r??""),N=(e,t=[""])=>{const n=[],s=(e,o)=>o==i(t)?c(n,e):null===t[o]?m(e,(e=>s(e,o+1))):r([t[o],null],(t=>s(y(e,t),o+1)));return s(e,0),n},j=Object.freeze,C=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((t=>{const s=b(),[o,a,d,M,L,x,I,,C,F,O]=z(t,h,(e=>isNaN(e)||u(e)||!0===e||!1===e||""===e?void 0:1*e)),[W,q,A]=(e=>{let t,n=0;const s=[],o=b();return[(r,i,c)=>{t??=e();const a=s.pop()??""+n++;return E(o,a,[r,i,c]),k(R(i,c??[""],T),a),a},(e,n,...s)=>r(N(e,n),(e=>m(e,(e=>y(o,e)[0](t,...n??[],...s))))),e=>v(y(o,e),(([,t,n])=>(R(t,n??[""],void 0,(t=>(w(t,e),f(t)?1:0))),E(o,e),i(s)<1e3&&c(s,e),n))),(e,t)=>{return n=N(e,t),r=u,!n.every(r);var n,r},(e,n,s)=>v(y(o,e),(([e,,o=[]])=>{const c=(...a)=>{const d=i(a);d==i(o)?e(t,...a,...s(a)):u(o[d])?r(n[d](...a),(e=>c(...a,e))):c(...a,o[d])};c()}))]})((()=>B)),B={setMetricDefinition:(t,r,i,o,c,a,d)=>{const v=e(i)==n?[i,c,a,d]:y(S,i)??y(S,"sum");return C(t,r,((e,n,r,i,o,c)=>{const a=x(t),d=g(i);c||=u(a),e();let h=((e,t,n,r,s,i=!1)=>{if(f(n))return;const[o,c,a,d]=s;return i||=u(e),m(r,(([n,r])=>{i||(e=u(n)?c?.(e,r,t++):u(r)?a?.(e,n,t--):d?.(e,r,n,t),i||=u(e))})),i?o(p(n),g(n)):e})(a,d,i,n,v,c);l(h)||(h=void 0),h!=a&&(I(t,h),q(s,[t],h,a))}),D(o,1)),B},delMetricDefinition:e=>(F(e),B),getStore:o,getMetricIds:a,forEachMetric:d,hasMetric:M,getTableId:L,getMetric:x,addMetricListener:(e,t)=>W(t,s,[e]),delListener:e=>(A(e),B),destroy:O,getListenerStats:()=>({})};return j(B)}));export{C as createMetrics};
|
package/lib/metrics.js.gz
CHANGED
|
Binary file
|
package/lib/persisters.d.ts
CHANGED
|
@@ -40,7 +40,13 @@ import {Callback} from './common.d';
|
|
|
40
40
|
* @category Development
|
|
41
41
|
*/
|
|
42
42
|
export type PersisterStats = {
|
|
43
|
+
/**
|
|
44
|
+
* The number of times data has been loaded.
|
|
45
|
+
*/
|
|
43
46
|
loads?: number;
|
|
47
|
+
/**
|
|
48
|
+
* The number of times data has been saved.
|
|
49
|
+
*/
|
|
44
50
|
saves?: number;
|
|
45
51
|
};
|
|
46
52
|
|