tinybase 2.0.0 → 2.1.0-beta.0

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.
Files changed (123) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/common.js +1 -1
  4. package/lib/common.js.gz +0 -0
  5. package/lib/debug/checkpoints.js +7 -1
  6. package/lib/debug/common.js +1 -4
  7. package/lib/debug/indexes.d.ts +36 -10
  8. package/lib/debug/indexes.js +57 -25
  9. package/lib/debug/metrics.d.ts +1 -1
  10. package/lib/debug/metrics.js +19 -2
  11. package/lib/debug/persisters.d.ts +5 -5
  12. package/lib/debug/queries.js +18 -2
  13. package/lib/debug/relationships.d.ts +3 -3
  14. package/lib/debug/relationships.js +19 -2
  15. package/lib/debug/store.js +8 -2
  16. package/lib/debug/tinybase.js +53 -27
  17. package/lib/debug/ui-react.d.ts +17 -17
  18. package/lib/debug/ui-react.js +2 -1
  19. package/lib/es6/checkpoints.d.ts +946 -0
  20. package/lib/es6/checkpoints.js +1 -0
  21. package/lib/es6/checkpoints.js.gz +0 -0
  22. package/lib/es6/common.d.ts +115 -0
  23. package/lib/es6/common.js +1 -0
  24. package/lib/es6/common.js.gz +0 -0
  25. package/lib/es6/indexes.d.ts +967 -0
  26. package/lib/es6/indexes.js +1 -0
  27. package/lib/es6/indexes.js.gz +0 -0
  28. package/lib/es6/metrics.d.ts +829 -0
  29. package/lib/es6/metrics.js +1 -0
  30. package/lib/es6/metrics.js.gz +0 -0
  31. package/lib/es6/persisters.d.ts +717 -0
  32. package/lib/es6/persisters.js +1 -0
  33. package/lib/es6/persisters.js.gz +0 -0
  34. package/lib/es6/queries.d.ts +3026 -0
  35. package/lib/es6/queries.js +1 -0
  36. package/lib/es6/queries.js.gz +0 -0
  37. package/lib/es6/relationships.d.ts +1203 -0
  38. package/lib/es6/relationships.js +1 -0
  39. package/lib/es6/relationships.js.gz +0 -0
  40. package/lib/es6/store.d.ts +3572 -0
  41. package/lib/es6/store.js +1 -0
  42. package/lib/es6/store.js.gz +0 -0
  43. package/lib/es6/tinybase.d.ts +14 -0
  44. package/lib/es6/tinybase.js +1 -0
  45. package/lib/es6/tinybase.js.gz +0 -0
  46. package/lib/es6/ui-react.d.ts +9777 -0
  47. package/lib/es6/ui-react.js +1 -0
  48. package/lib/es6/ui-react.js.gz +0 -0
  49. package/lib/indexes.d.ts +36 -10
  50. package/lib/indexes.js +1 -1
  51. package/lib/indexes.js.gz +0 -0
  52. package/lib/metrics.d.ts +1 -1
  53. package/lib/metrics.js +1 -1
  54. package/lib/metrics.js.gz +0 -0
  55. package/lib/persisters.d.ts +5 -5
  56. package/lib/queries.js +1 -1
  57. package/lib/queries.js.gz +0 -0
  58. package/lib/relationships.d.ts +3 -3
  59. package/lib/relationships.js +1 -1
  60. package/lib/relationships.js.gz +0 -0
  61. package/lib/store.js +1 -1
  62. package/lib/store.js.gz +0 -0
  63. package/lib/tinybase.js +1 -1
  64. package/lib/tinybase.js.gz +0 -0
  65. package/lib/ui-react.d.ts +17 -17
  66. package/lib/umd/checkpoints.d.ts +946 -0
  67. package/lib/umd/checkpoints.js +1 -1
  68. package/lib/umd/checkpoints.js.gz +0 -0
  69. package/lib/umd/common.d.ts +115 -0
  70. package/lib/umd/common.js +1 -1
  71. package/lib/umd/common.js.gz +0 -0
  72. package/lib/umd/indexes.d.ts +967 -0
  73. package/lib/umd/indexes.js +1 -1
  74. package/lib/umd/indexes.js.gz +0 -0
  75. package/lib/umd/metrics.d.ts +829 -0
  76. package/lib/umd/metrics.js +1 -1
  77. package/lib/umd/metrics.js.gz +0 -0
  78. package/lib/umd/persisters.d.ts +717 -0
  79. package/lib/umd/queries.d.ts +3026 -0
  80. package/lib/umd/queries.js +1 -1
  81. package/lib/umd/queries.js.gz +0 -0
  82. package/lib/umd/relationships.d.ts +1203 -0
  83. package/lib/umd/relationships.js +1 -1
  84. package/lib/umd/relationships.js.gz +0 -0
  85. package/lib/umd/store.d.ts +3572 -0
  86. package/lib/umd/store.js +1 -1
  87. package/lib/umd/store.js.gz +0 -0
  88. package/lib/umd/tinybase.d.ts +14 -0
  89. package/lib/umd/tinybase.js +1 -1
  90. package/lib/umd/tinybase.js.gz +0 -0
  91. package/lib/umd/ui-react.d.ts +9777 -0
  92. package/lib/umd-es6/checkpoints.d.ts +946 -0
  93. package/lib/umd-es6/checkpoints.js +1 -0
  94. package/lib/umd-es6/checkpoints.js.gz +0 -0
  95. package/lib/umd-es6/common.d.ts +115 -0
  96. package/lib/umd-es6/common.js +1 -0
  97. package/lib/umd-es6/common.js.gz +0 -0
  98. package/lib/umd-es6/indexes.d.ts +967 -0
  99. package/lib/umd-es6/indexes.js +1 -0
  100. package/lib/umd-es6/indexes.js.gz +0 -0
  101. package/lib/umd-es6/metrics.d.ts +829 -0
  102. package/lib/umd-es6/metrics.js +1 -0
  103. package/lib/umd-es6/metrics.js.gz +0 -0
  104. package/lib/umd-es6/persisters.d.ts +717 -0
  105. package/lib/umd-es6/persisters.js +1 -0
  106. package/lib/umd-es6/persisters.js.gz +0 -0
  107. package/lib/umd-es6/queries.d.ts +3026 -0
  108. package/lib/umd-es6/queries.js +1 -0
  109. package/lib/umd-es6/queries.js.gz +0 -0
  110. package/lib/umd-es6/relationships.d.ts +1203 -0
  111. package/lib/umd-es6/relationships.js +1 -0
  112. package/lib/umd-es6/relationships.js.gz +0 -0
  113. package/lib/umd-es6/store.d.ts +3572 -0
  114. package/lib/umd-es6/store.js +1 -0
  115. package/lib/umd-es6/store.js.gz +0 -0
  116. package/lib/umd-es6/tinybase.d.ts +14 -0
  117. package/lib/umd-es6/tinybase.js +1 -0
  118. package/lib/umd-es6/tinybase.js.gz +0 -0
  119. package/lib/umd-es6/ui-react.d.ts +9777 -0
  120. package/lib/umd-es6/ui-react.js +1 -0
  121. package/lib/umd-es6/ui-react.js.gz +0 -0
  122. package/package.json +2 -1
  123. package/readme.md +12 -12
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),r=t(t),i=(e,t)=>e.forEach(t),o=e=>d(e,((e,t)=>e+t),0),c=e=>e.length,d=(e,t,n)=>e.reduce(t,n),a=(e,...t)=>e.push(...t),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,M=(e,t,n)=>h(e)?n?.():t(e),g=()=>{},v=e=>e.size,p=(e,t)=>e?.has(t)??!1,y=e=>h(e)||0==v(e),b=e=>[...e?.values()??[]],m=e=>e.clear(),L=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),T=e=>new Map(e),x=(e,t)=>e?.get(t),j=(e,t)=>L(e,((e,n)=>t(n,e))),E=(e,t,n)=>h(n)?(w(e,t),e):e?.set(t,n),I=(e,t,n)=>(p(e,t)||E(e,t,n()),x(e,t)),R=(e,t,n,s,r=0)=>M((n?I:x)(e,t[r],r>c(t)-2?n:T),(i=>{if(r>c(t)-2)return s?.(i)&&E(e,t[r]),i;const o=R(i,t,n,s,r+1);return y(i)&&E(e,t[r]),o})),S=T([["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=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),k=e=>new Set(e),z=(e,t)=>e?.add(t),D=(e,t,n)=>{const s=e.hasRow,r=T(),o=T(),d=T(),a=T(),l=T(),u=(t,n,...s)=>{const r=I(l,t,k);return i(s,(t=>z(r,t)&&n&&e.callListener(t))),s},f=(t,...n)=>M(x(l,t),(s=>{i(0==c(n)?b(s):n,(t=>{e.delListener(t),w(s,t)})),y(s)&&E(l,t)})),g=(e,n)=>{E(r,e,n),p(o,e)||(E(o,e,t()),E(d,e,T()),E(a,e,T()))},v=e=>{E(r,e),E(o,e),E(d,e),E(a,e),f(e)};return[()=>e,()=>[...r?.keys()??[]],e=>j(o,e),e=>p(o,e),e=>x(r,e),e=>x(o,e),(e,t)=>E(o,e,t),g,(t,r,o,c,l)=>{g(t,r);const M=T(),v=T(),y=x(d,t),b=x(a,t),w=t=>{const i=n=>e.getCell(r,t,n),o=x(y,t),d=s(r,t)?n(c(i,t)):void 0;if(o!=d&&E(M,t,[o,d]),!h(l)){const e=x(b,t),n=s(r,t)?l(i,t):void 0;e!=n&&E(v,t,n)}},I=e=>{o((()=>{L(M,(([,e],t)=>E(y,t,e))),L(v,((e,t)=>E(b,t,e)))}),M,v,y,b,e),m(M),m(v)};j(y,w),e.hasTable(r)&&i(e.getRowIds(r),(e=>{p(y,e)||w(e)})),I(!0),f(t),u(t,0,e.addRowListener(r,null,((e,t,n)=>w(n))),e.addTableListener(r,(()=>I())))},v,()=>j(l,v),u,f]},N=(e,r)=>t(e)==s?t=>t(e):e??(()=>r??n),O=/^\d+$/,_=e=>{let t;const[s,r]=(()=>{const e=[];let t=0;return[()=>e.shift()??n+t++,t=>{O.test(t)&&c(e)<1e3&&a(e,t)}]})(),o=T();return[(r,i,c)=>{t??=e();const d=s();return E(o,d,[r,i,c]),z(R(i,c??[n],k),d),d},(e,s,...r)=>i(((e,t=[n])=>{const s=[],r=(e,n)=>n==c(t)?a(s,e):null===t[n]?L(e,(e=>r(e,n+1))):i([t[n],null],(t=>r(x(e,t),n+1)));return r(e,0),s})(e,s),(e=>L(e,(e=>x(o,e)[0](t,...s??[],...r))))),e=>M(x(o,e),(([,t,s])=>(R(t,s??[n],void 0,(t=>(w(t,e),y(t)?1:0))),E(o,e),r(e),s))),(e,n,s)=>M(x(o,e),(([e,,r=[]])=>{const o=(...d)=>{const a=c(d);a==c(r)?e(t,...d,...s(d)):h(r[a])?i(n[a](...d),(e=>o(...d,e))):o(...d,r[a])};o()}))]},B=Object.freeze,C=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const s=T(),[i,o,c,d,a,l,u,,M,p,m]=D(e,g,(e=>isNaN(e)||h(e)||!0===e||!1===e||e===n?void 0:1*e)),[w,j,E]=_((()=>I)),I={setMetricDefinition:(e,n,i,o,c,d,a)=>{const g=t(i)==r?[i,c,d,a]:x(S,i)??x(S,"sum");return M(e,n,((t,n,r,i,o,c)=>{const d=l(e),a=v(i);c||=h(d),t();let M=((e,t,n,s,r,i=!1)=>{if(y(n))return;const[o,c,d,a]=r;return i||=h(e),L(s,(([n,s])=>{i||(e=h(n)?c?.(e,s,t++):h(s)?d?.(e,n,t--):a?.(e,s,n,t),i||=h(e))})),i?o(b(n),v(n)):e})(d,a,i,n,g,c);f(M)||(M=void 0),M!=d&&(u(e,M),j(s,[e],M,d))}),N(o,1)),I},delMetricDefinition:e=>(p(e),I),getStore:i,getMetricIds:o,forEachMetric:c,hasMetric:d,getTableId:a,getMetric:l,addMetricListener:(e,t)=>w(t,s,[e]),delListener:e=>(E(e),I),destroy:m,getListenerStats:()=>({})};return B(I)}));e.createMetrics=C,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",r=t(n),s=t(t),i=(e,t)=>e.forEach(t),o=e=>a(e,((e,t)=>e+t),0),c=e=>e.length,a=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,v=(e,t,n)=>h(e)?n?.():t(e),M=e=>Array.isArray(e),g=()=>{},p=e=>e.size,y=(e,t)=>e?.has(t)??!1,b=e=>h(e)||0==p(e),m=e=>[...e?.values()??[]],L=e=>e.clear(),w=(e,t)=>e?.forEach(t),T=(e,t)=>e?.delete(t),x=e=>new Map(e),j=(e,t)=>e?.get(t),E=(e,t)=>w(e,((e,n)=>t(n,e))),I=(e,t,n)=>h(n)?(T(e,t),e):e?.set(t,n),R=(e,t,n)=>(y(e,t)||I(e,t,n()),j(e,t)),S=(e,t,n,r,s=0)=>v((n?R:j)(e,t[s],s>c(t)-2?n:x),(i=>{if(s>c(t)-2)return r?.(i)&&I(e,t[s]),i;const o=S(i,t,n,r,s+1);return b(i)&&I(e,t[s]),o})),k=x([["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,r)=>e+(t-n)/r]],["max",[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)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),z=e=>new Set(M(e)||h(e)?e:[e]),A=(e,t)=>e?.add(t),D=(e,t,n)=>{const r=e.hasRow,s=x(),o=x(),a=x(),d=x(),l=x(),u=(t,n,...r)=>{const s=R(l,t,z);return i(r,(t=>A(s,t)&&n&&e.callListener(t))),r},f=(t,...n)=>v(j(l,t),(r=>{i(0==c(n)?m(r):n,(t=>{e.delListener(t),T(r,t)})),b(r)&&I(l,t)})),g=(e,n)=>{I(s,e,n),y(o,e)||(I(o,e,t()),I(a,e,x()),I(d,e,x()))},p=e=>{I(s,e),I(o,e),I(a,e),I(d,e),f(e)};return[()=>e,()=>[...s?.keys()??[]],e=>E(o,e),e=>y(o,e),e=>j(s,e),e=>j(o,e),(e,t)=>I(o,e,t),g,(t,s,o,l,v)=>{g(t,s);const p=x(),b=x(),m=j(a,t),T=j(d,t),R=t=>{const i=n=>e.getCell(s,t,n),o=j(m,t),a=r(s,t)?n(l(i,t)):void 0;var d,u,f;if(o===a||M(o)&&M(a)&&(u=a,c(d=o)===c(u)&&(f=(e,t)=>u[t]===e,d.every(f)))||I(p,t,[o,a]),!h(v)){const e=j(T,t),n=r(s,t)?v(i,t):void 0;e!=n&&I(b,t,n)}},S=e=>{o((()=>{w(p,(([,e],t)=>I(m,t,e))),w(b,((e,t)=>I(T,t,e)))}),p,b,m,T,e),L(p),L(b)};E(m,R),e.hasTable(s)&&i(e.getRowIds(s),(e=>{y(m,e)||R(e)})),S(!0),f(t),u(t,0,e.addRowListener(s,null,((e,t,n)=>R(n))),e.addTableListener(s,(()=>S())))},p,()=>E(l,p),u,f]},N=(e,s)=>t(e)==r?t=>t(e):e??(()=>s??n),O=/^\d+$/,_=e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[()=>e.shift()??n+t++,t=>{O.test(t)&&c(e)<1e3&&d(e,t)}]})(),o=x();return[(s,i,c)=>{t??=e();const a=r();return I(o,a,[s,i,c]),A(S(i,c??[n],z),a),a},(e,r,...s)=>i(((e,t=[n])=>{const r=[],s=(e,n)=>n==c(t)?d(r,e):null===t[n]?w(e,(e=>s(e,n+1))):i([t[n],null],(t=>s(j(e,t),n+1)));return s(e,0),r})(e,r),(e=>w(e,(e=>j(o,e)[0](t,...r??[],...s))))),e=>v(j(o,e),(([,t,r])=>(S(t,r??[n],void 0,(t=>(T(t,e),b(t)?1:0))),I(o,e),s(e),r))),(e,n,r)=>v(j(o,e),(([e,,s=[]])=>{const o=(...a)=>{const d=c(a);d==c(s)?e(t,...a,...r(a)):h(s[d])?i(n[d](...a),(e=>o(...a,e))):o(...a,s[d])};o()}))]},B=Object.freeze,C=(e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))})((e=>{const r=x(),[i,o,c,a,d,l,u,,v,M,y]=D(e,g,(e=>isNaN(e)||h(e)||!0===e||!1===e||e===n?void 0:1*e)),[L,T,E]=_((()=>I)),I={setMetricDefinition:(e,n,i,o,c,a,d)=>{const M=t(i)==s?[i,c,a,d]:j(k,i)??j(k,"sum");return v(e,n,((t,n,s,i,o,c)=>{const a=l(e),d=p(i);c||=h(a),t();let v=((e,t,n,r,s,i=!1)=>{if(b(n))return;const[o,c,a,d]=s;return i||=h(e),w(r,(([n,r])=>{i||(e=h(n)?c?.(e,r,t++):h(r)?a?.(e,n,t--):d?.(e,r,n,t),i||=h(e))})),i?o(m(n),p(n)):e})(a,d,i,n,M,c);f(v)||(v=void 0),v!=a&&(u(e,v),T(r,[e],v,a))}),N(o,1)),I},delMetricDefinition:e=>(M(e),I),getStore:i,getMetricIds:o,forEachMetric:c,hasMetric:a,getTableId:d,getMetric:l,addMetricListener:(e,t)=>L(t,r,[e]),delListener:e=>(E(e),I),destroy:y,getListenerStats:()=>({})};return B(I)}));e.createMetrics=C,Object.defineProperty(e,"__esModule",{value:!0})},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
Binary file