tinybase 2.0.0 → 2.0.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.
Files changed (95) hide show
  1. package/lib/common.js +1 -1
  2. package/lib/common.js.gz +0 -0
  3. package/lib/debug/common.js +1 -4
  4. package/lib/debug/metrics.d.ts +1 -1
  5. package/lib/debug/persisters.d.ts +5 -5
  6. package/lib/debug/relationships.d.ts +3 -3
  7. package/lib/debug/store.js +1 -1
  8. package/lib/debug/tinybase.js +1 -2
  9. package/lib/debug/ui-react.d.ts +17 -17
  10. package/lib/es6/checkpoints.d.ts +946 -0
  11. package/lib/es6/checkpoints.js +1 -0
  12. package/lib/es6/checkpoints.js.gz +0 -0
  13. package/lib/es6/common.d.ts +115 -0
  14. package/lib/es6/common.js +1 -0
  15. package/lib/es6/common.js.gz +0 -0
  16. package/lib/es6/indexes.d.ts +941 -0
  17. package/lib/es6/indexes.js +1 -0
  18. package/lib/es6/indexes.js.gz +0 -0
  19. package/lib/es6/metrics.d.ts +829 -0
  20. package/lib/es6/metrics.js +1 -0
  21. package/lib/es6/metrics.js.gz +0 -0
  22. package/lib/es6/persisters.d.ts +717 -0
  23. package/lib/es6/persisters.js +1 -0
  24. package/lib/es6/persisters.js.gz +0 -0
  25. package/lib/es6/queries.d.ts +3026 -0
  26. package/lib/es6/queries.js +1 -0
  27. package/lib/es6/queries.js.gz +0 -0
  28. package/lib/es6/relationships.d.ts +1203 -0
  29. package/lib/es6/relationships.js +1 -0
  30. package/lib/es6/relationships.js.gz +0 -0
  31. package/lib/es6/store.d.ts +3572 -0
  32. package/lib/es6/store.js +1 -0
  33. package/lib/es6/store.js.gz +0 -0
  34. package/lib/es6/tinybase.d.ts +14 -0
  35. package/lib/es6/tinybase.js +1 -0
  36. package/lib/es6/tinybase.js.gz +0 -0
  37. package/lib/es6/ui-react.d.ts +9777 -0
  38. package/lib/es6/ui-react.js +1 -0
  39. package/lib/es6/ui-react.js.gz +0 -0
  40. package/lib/metrics.d.ts +1 -1
  41. package/lib/persisters.d.ts +5 -5
  42. package/lib/relationships.d.ts +3 -3
  43. package/lib/store.js +1 -1
  44. package/lib/store.js.gz +0 -0
  45. package/lib/tinybase.js +1 -1
  46. package/lib/tinybase.js.gz +0 -0
  47. package/lib/ui-react.d.ts +17 -17
  48. package/lib/umd/checkpoints.d.ts +946 -0
  49. package/lib/umd/common.d.ts +115 -0
  50. package/lib/umd/common.js +1 -1
  51. package/lib/umd/common.js.gz +0 -0
  52. package/lib/umd/indexes.d.ts +941 -0
  53. package/lib/umd/metrics.d.ts +829 -0
  54. package/lib/umd/persisters.d.ts +717 -0
  55. package/lib/umd/queries.d.ts +3026 -0
  56. package/lib/umd/relationships.d.ts +1203 -0
  57. package/lib/umd/store.d.ts +3572 -0
  58. package/lib/umd/store.js +1 -1
  59. package/lib/umd/store.js.gz +0 -0
  60. package/lib/umd/tinybase.d.ts +14 -0
  61. package/lib/umd/tinybase.js +1 -1
  62. package/lib/umd/tinybase.js.gz +0 -0
  63. package/lib/umd/ui-react.d.ts +9777 -0
  64. package/lib/umd-es6/checkpoints.d.ts +946 -0
  65. package/lib/umd-es6/checkpoints.js +1 -0
  66. package/lib/umd-es6/checkpoints.js.gz +0 -0
  67. package/lib/umd-es6/common.d.ts +115 -0
  68. package/lib/umd-es6/common.js +1 -0
  69. package/lib/umd-es6/common.js.gz +0 -0
  70. package/lib/umd-es6/indexes.d.ts +941 -0
  71. package/lib/umd-es6/indexes.js +1 -0
  72. package/lib/umd-es6/indexes.js.gz +0 -0
  73. package/lib/umd-es6/metrics.d.ts +829 -0
  74. package/lib/umd-es6/metrics.js +1 -0
  75. package/lib/umd-es6/metrics.js.gz +0 -0
  76. package/lib/umd-es6/persisters.d.ts +717 -0
  77. package/lib/umd-es6/persisters.js +1 -0
  78. package/lib/umd-es6/persisters.js.gz +0 -0
  79. package/lib/umd-es6/queries.d.ts +3026 -0
  80. package/lib/umd-es6/queries.js +1 -0
  81. package/lib/umd-es6/queries.js.gz +0 -0
  82. package/lib/umd-es6/relationships.d.ts +1203 -0
  83. package/lib/umd-es6/relationships.js +1 -0
  84. package/lib/umd-es6/relationships.js.gz +0 -0
  85. package/lib/umd-es6/store.d.ts +3572 -0
  86. package/lib/umd-es6/store.js +1 -0
  87. package/lib/umd-es6/store.js.gz +0 -0
  88. package/lib/umd-es6/tinybase.d.ts +14 -0
  89. package/lib/umd-es6/tinybase.js +1 -0
  90. package/lib/umd-es6/tinybase.js.gz +0 -0
  91. package/lib/umd-es6/ui-react.d.ts +9777 -0
  92. package/lib/umd-es6/ui-react.js +1 -0
  93. package/lib/umd-es6/ui-react.js.gz +0 -0
  94. package/package.json +1 -1
  95. package/readme.md +1 -1
@@ -0,0 +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,L=()=>{},y=e=>e.size,p=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},b=e=>f(e)||0==y(e),T=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),m=e=>new Map(e),S=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>I(e,((e,t)=>n(t,e))),x=(e,n,t)=>f(t)?(O(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(p(e,n)||x(e,n,t()),S(e,n)),Q=(e,n,t,l,r=0)=>g((t?E:S)(e,n[r],r>a(n)-2?t:m),(o=>{if(r>a(n)-2)return(null==l?void 0:l(o))&&x(e,n[r]),o;const s=Q(o,n,t,l,r+1);return b(o)&&x(e,n[r]),s})),M=e=>new Set(e),D=(e,n)=>null==e?void 0:e.add(n),F=m([["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]]]),k=r=>{const o=e(r);return(e=>e==n||e==t)(o)||o==l&&w(r)?o:void 0},z=Object,P=z.freeze;var W=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;const B=(e=>{const n=new WeakMap;return t=>(n.has(t)||n.set(t,e(t)),n.get(t))})((e=>{const n=e.createStore,[t,l,r,i,u,,,v,,h,w,B,G]=((e,n,t)=>{const l=e.hasRow,r=m(),o=m(),i=m(),a=m(),u=m(),c=(n,t,...l)=>{const r=E(u,n,M);return s(l,(n=>D(r,n)&&t&&e.callListener(n))),l},v=(n,...t)=>g(S(u,n),(l=>{s(d(t)?T(l):t,(n=>{e.delListener(n),O(l,n)})),b(l)&&x(u,n)})),h=(e,t)=>{x(r,e,t),p(o,e)||(x(o,e,n()),x(i,e,m()),x(a,e,m()))},w=e=>{x(r,e),x(o,e),x(i,e),x(a,e),v(e)};return[()=>e,()=>{return[...null!=(n=null==(e=r)?void 0:e.keys())?n:[]];var e,n},e=>j(o,e),e=>p(o,e),e=>S(r,e),e=>S(o,e),(e,n)=>x(o,e,n),h,(n,r,o,d,u)=>{h(n,r);const w=m(),g=m(),R=S(i,n),L=S(a,n),y=n=>{const o=t=>e.getCell(r,n,t),s=S(R,n),i=l(r,n)?t(d(o,n)):void 0;if(s!=i&&x(w,n,[s,i]),!f(u)){const e=S(L,n),t=l(r,n)?u(o,n):void 0;e!=t&&x(g,n,t)}},b=e=>{o((()=>{I(w,(([,e],n)=>x(R,n,e))),I(g,((e,n)=>x(L,n,e)))}),w,g,R,L,e),C(w),C(g)};j(R,y),e.hasTable(r)&&s(e.getRowIds(r),(e=>{p(R,e)||y(e)})),b(!0),v(n),c(n,0,e.addRowListener(r,null,((e,n,t)=>y(t))),e.addTableListener(r,(()=>b())))},w,()=>j(u,w),c,v]})(e,(()=>!0),L),H=n(),J=n(),K=m(),N=(e,n,...t)=>s(t,(t=>D(E(E(K,n,m),e,M),t))),U=e=>{g(S(K,e),(e=>{j(e,((e,n)=>I(n,(n=>e.delListener(n))))),C(e)})),s([J,H],(n=>n.delTable(e)))},V=(e,n,t)=>N(n,e,n.addWillFinishTransactionListener(t.startTransaction),n.addDidFinishTransactionListener((()=>t.finishTransaction()))),X={setQueryDefinition:(n,t,l)=>{v(n,t),U(n);const r=[],i=[[null,[t,null,null,[],m()]]],u=[],h=[],w=[];l({select:(e,n)=>{const t=R(e)?[a(r)+"",e]:[f(n)?e:n,t=>t(e,n)];return c(r,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),[],m()]];return c(i,o),{as:e=>o[0]=e}},where:(e,n,t)=>c(u,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=S(F,n))?o:[(e,n)=>n]]];return c(h,s),{as:e=>s[0]=e}},having:(e,n)=>c(w,R(e)?e:t=>t(e)===n)});const L=m(r);if(b(L))return X;const C=m(i);j(C,((e,[,n])=>g(S(C,n),(({3:n})=>f(e)?0:c(n,e)))));const z=m(h);let P=H;if(b(z)&&d(w))P=J;else{V(n,P,J);const e=m();j(z,((n,[t,l])=>D(E(e,t,M),[n,l])));const t=M();j(L,(n=>p(e,n)?0:D(t,n)));const l=m(),r=(t,l,r,s)=>g(t,(([i,a,d,u])=>{j(l,((n,[t])=>{const l=E(i,n,m),o=S(l,r),a=s?void 0:t;if(o!==a){const t=M([[o,a]]),s=y(l);x(l,r,a),I(S(e,n),(([e,n])=>{const r=((e,n,t,l,r,o=!1)=>{if(b(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(T(t),y(t)):e})(u[e],s,l,t,n);u[e]=f(k(r))?null:r}))}})),b(a)||!o(w,(e=>e((e=>u[e]))))?J.delRow(n,d):f(d)?t[2]=J.addRow(n,u):J.setRow(n,d,u)}));N(P,n,P.addRowListener(n,null,((o,s,i,a)=>{const d=[],u=[],v=m(),h=P.hasRow(n,i);let w=!h;I(t,(e=>{const[t,l,r]=a(n,i,e);c(d,l),c(u,r),w||(w=t)})),j(e,(e=>{const[t,,l]=a(n,i,e);(w||t)&&x(v,e,[l])})),w&&r(Q(l,d,void 0,(([,e])=>(O(e,i),b(e)))),v,i,1),h&&r(Q(l,u,(()=>{const e={};return I(t,(t=>e[t]=P.getCell(n,i,t))),[m(),M(),void 0,e]}),(([,e])=>{D(e,i)})),v,i)})))}V(n,e,P);const W=l=>{const r=(n,r)=>{var o,s,i;return e.getCell(...f(r)?[t,l,n]:n===t?[t,l,r]:[null==(o=S(C,n))?void 0:o[0],null==(i=S(null==(s=S(C,n))?void 0:s[4],l))?void 0:i[0],r])};P.transaction((()=>o(u,(e=>e(r)))?j(L,((e,t)=>((e,n,t,l,r)=>f(r)?e.delCell(n,t,l,!0):e.setCell(n,t,l,r))(P,n,l,e,t(r,l)))):P.delRow(n,l)))},q=(t,l,r,o)=>{const i=n=>e.getCell(l,r,n);s(o,(l=>{var r;const[o,,s,a,d]=S(C,l),u=null==s?void 0:s(i,t),[c,v]=null!=(r=S(d,t))?r:[];u!=c&&(f(v)||G(n,v),x(d,t,f(u)?null:[u,...B(n,1,e.addRowListener(o,u,(()=>q(t,o,u,a))))]))})),W(t)},{3:A}=S(C,null);return P.transaction((()=>B(n,1,e.addRowListener(t,null,((l,r,o)=>{e.hasRow(t,o)?q(o,t,o,A):(P.delRow(n,o),I(C,(({4:e})=>g(S(e,o),(([,t])=>{G(n,t),x(e,o)})))))}))))),X},delQueryDefinition:e=>(U(e),h(e),X),getStore:t,getQueryIds:l,forEachQuery:r,hasQuery:i,getTableId:u,delListener:e=>(J.delListener(e),X),destroy:w,getListenerStats:()=>((e,n)=>{var t={};for(var l in e)q.call(e,l)&&n.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&W)for(var l of W(e))n.indexOf(l)<0&&A.call(e,l)&&(t[l]=e[l]);return t})(J.getListenerStats(),["tables","tableIds","transaction"])};var Y,Z;return Y={Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},Z=([e,n],t)=>{s(e?["get","has","forEach"]:["get"],(e=>X[e+"Result"+t]=(...n)=>J[e+t](...n))),X["addResult"+t+"Listener"]=(...e)=>{return J["add"+t+"Listener"](...(l=e,r=0,o=n,l.slice(r,o)),((t,...l)=>e[n](X,...l)));var l,r,o}},s(z.entries(Y),(([e,n])=>Z(n,e))),P(X)}));export{B as createQueries};
Binary file