tinybase 1.0.2 → 1.0.3
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 +879 -0
- package/lib/checkpoints.js +1 -0
- package/lib/checkpoints.js.gz +0 -0
- package/lib/common.d.ts +115 -0
- package/lib/common.js +1 -0
- package/lib/common.js.gz +0 -0
- package/lib/debug/checkpoints.js +326 -0
- package/lib/debug/common.js +3 -0
- package/lib/debug/indexes.js +398 -0
- package/lib/debug/metrics.js +391 -0
- package/lib/debug/persisters.js +191 -0
- package/lib/debug/relationships.js +418 -0
- package/lib/debug/store.js +725 -0
- package/lib/indexes.d.ts +778 -0
- package/lib/indexes.js +1 -0
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.d.ts +757 -0
- package/lib/metrics.js +1 -0
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters.d.ts +711 -0
- package/lib/persisters.js +1 -0
- package/lib/persisters.js.gz +0 -0
- package/lib/relationships.d.ts +1116 -0
- package/lib/relationships.js +1 -0
- package/lib/relationships.js.gz +0 -0
- package/lib/store.d.ts +2506 -0
- package/lib/store.js +1 -0
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.d.ts +13 -0
- package/lib/tinybase.js +1 -0
- package/lib/tinybase.js.gz +0 -0
- package/lib/ui-react.d.ts +7185 -0
- package/lib/ui-react.js +1 -0
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/checkpoints.js +1 -0
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/common.js +1 -0
- package/lib/umd/common.js.gz +0 -0
- package/lib/umd/indexes.js +1 -0
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/metrics.js +1 -0
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/persisters.js +1 -0
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/relationships.js +1 -0
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.js +1 -0
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -0
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -0
- package/lib/umd/ui-react.js.gz +0 -0
- package/package.json +1 -1
- package/readme.md +1 -1
package/lib/metrics.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(e),s=(e,t)=>e.forEach(t),o=e=>c(e,((e,t)=>e+t),0),i=e=>e.length,r=e=>0==i(e),c=(e,t,n)=>e.reduce(t,n),a=e=>e.slice(1),d=Math.max,l=Math.min,u=isFinite,v=e=>null==e,g=(e,t,n)=>v(e)?n?.():t(e),h=()=>{},M=e=>e.size,f=(e,t)=>e?.has(t)??!1,p=e=>e.clear(),m=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),L=e=>new Map(e),b=(e,t)=>e?.get(t),x=(e,t)=>m(e,((e,n)=>t(n,e))),y=(e,t,n)=>v(n)?(w(e,t),e):e?.set(t,n),I=(e,t,n,s)=>(f(e,t)||(s?.(n),e.set(t,n)),b(e,t)),R=e=>new Set(e),S=(n,s)=>e(n)==t?e=>e(n):n??(()=>s??""),T=(e,t,n)=>i(n)<2?((e,t)=>e?.add(t))(r(n)?e:I(e,n[0],R()),t):T(I(e,n[0],L()),t,a(n)),k=e=>{const t=(n,o,...i)=>g(n,(n=>r(i)?e(n,o):s([i[0],null],(e=>t(b(n,e),o,...a(i))))));return t},z=Object.freeze,D=L([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:d(t,e)]],["min",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),E=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((t=>{const o=L(),[r,c,a,d,l,I,E,N]=((e,t,n)=>{const o=e.hasRow,i=L(),r=L(),c=L(),a=L(),d=L(),l=t=>g(b(d,t),(n=>{m(n,e.delListener),y(d,t)})),u=e=>{y(i,e),y(r,e),y(c,e),y(a,e),l(e)};return[()=>e,()=>[...i?.keys()??[]],e=>b(i,e),e=>b(r,e),(e,t)=>y(r,e,t),(u,g,h,M,w)=>{const I=L(),S=L();y(i,u,g),f(r,u)||(y(r,u,t()),y(c,u,L()),y(a,u,L()));const T=b(c,u),k=b(a,u),z=t=>{const s=n=>e.getCell(g,t,n),i=b(T,t),r=o(g,t)?n(M(s,t)):void 0;if(i!=r&&y(I,t,[i,r]),!v(w)){const e=b(k,t),n=o(g,t)?w(s,t):void 0;e!=n&&y(S,t,n)}},D=e=>{h((()=>{m(I,(([,e],t)=>y(T,t,e))),m(S,((e,t)=>y(k,t,e)))}),I,S,T,k,e),p(I),p(S)};x(T,z),e.hasTable(g)&&s(e.getRowIds(g),(e=>{f(T,e)||z(e)})),D(!0),l(u),y(d,u,R([e.addRowListener(g,null,((e,t,n)=>z(n))),e.addTableListener(g,(()=>D()))]))},u,()=>x(d,u)]})(t,h,(e=>isNaN(e)||v(e)||!0===e||!1===e||""===e?void 0:1*e)),[j,C,F]=(e=>{let t,n=0;const o=[],r=L();return[(s,i,c=[])=>{t??=e();const a=o.pop()??""+n++;return y(r,a,[s,i,c]),T(i,a,c),a},(e,n=[],...s)=>k(m)(e,(e=>g(b(r,e),(([e])=>e(t,...n,...s)))),...n),e=>g(b(r,e),(([,t,n])=>(k(w)(t,e,...n),y(r,e),i(o)<1e3&&o.push(e),n)),(()=>[])),(e,n,o)=>g(b(r,e),(([e,,r])=>{const c=(...a)=>{const d=i(a);d==i(r)?e(t,...a,...o(a)):v(r[d])?s(n[d](...a),(e=>c(...a,e))):c(...a,r[d])};c()}))]})((()=>O)),O={setMetricDefinition:(t,s,i,r,c,a,g)=>{const h=e(i)==n?[i,c,a,g]:b(D,i)??b(D,"sum");return I(t,s,((e,n,s,i,r,c)=>{let a=d(t),g=M(i);const[f,p,w,L]=h;var b;c=c||v(a),m(n,(([e,t])=>{c||(a=v(e)?p?.(a,t,g++):v(t)?w?.(a,e,g--):L?.(a,t,e,g)),c=c||v(a)})),e(),v(b=i)||0==M(b)?a=void 0:c&&(a=f((e=>[...e?.values()??[]])(i),M(i))),u(a)||(a=void 0);const x=d(t);a!=x&&(l(t,a),C(o,[t],a,x))}),S(r,1)),O},delMetricDefinition:e=>(E(e),O),getStore:r,getMetricIds:c,getTableId:a,getMetric:d,addMetricListener:(e,t)=>j(t,o,[e]),delListener:e=>(F(e),O),destroy:N,getListenerStats:()=>({})};return z(O)}));export{E as createMetrics};
|
|
Binary file
|