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.
Files changed (54) hide show
  1. package/lib/checkpoints.d.ts +879 -0
  2. package/lib/checkpoints.js +1 -0
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/common.d.ts +115 -0
  5. package/lib/common.js +1 -0
  6. package/lib/common.js.gz +0 -0
  7. package/lib/debug/checkpoints.js +326 -0
  8. package/lib/debug/common.js +3 -0
  9. package/lib/debug/indexes.js +398 -0
  10. package/lib/debug/metrics.js +391 -0
  11. package/lib/debug/persisters.js +191 -0
  12. package/lib/debug/relationships.js +418 -0
  13. package/lib/debug/store.js +725 -0
  14. package/lib/indexes.d.ts +778 -0
  15. package/lib/indexes.js +1 -0
  16. package/lib/indexes.js.gz +0 -0
  17. package/lib/metrics.d.ts +757 -0
  18. package/lib/metrics.js +1 -0
  19. package/lib/metrics.js.gz +0 -0
  20. package/lib/persisters.d.ts +711 -0
  21. package/lib/persisters.js +1 -0
  22. package/lib/persisters.js.gz +0 -0
  23. package/lib/relationships.d.ts +1116 -0
  24. package/lib/relationships.js +1 -0
  25. package/lib/relationships.js.gz +0 -0
  26. package/lib/store.d.ts +2506 -0
  27. package/lib/store.js +1 -0
  28. package/lib/store.js.gz +0 -0
  29. package/lib/tinybase.d.ts +13 -0
  30. package/lib/tinybase.js +1 -0
  31. package/lib/tinybase.js.gz +0 -0
  32. package/lib/ui-react.d.ts +7185 -0
  33. package/lib/ui-react.js +1 -0
  34. package/lib/ui-react.js.gz +0 -0
  35. package/lib/umd/checkpoints.js +1 -0
  36. package/lib/umd/checkpoints.js.gz +0 -0
  37. package/lib/umd/common.js +1 -0
  38. package/lib/umd/common.js.gz +0 -0
  39. package/lib/umd/indexes.js +1 -0
  40. package/lib/umd/indexes.js.gz +0 -0
  41. package/lib/umd/metrics.js +1 -0
  42. package/lib/umd/metrics.js.gz +0 -0
  43. package/lib/umd/persisters.js +1 -0
  44. package/lib/umd/persisters.js.gz +0 -0
  45. package/lib/umd/relationships.js +1 -0
  46. package/lib/umd/relationships.js.gz +0 -0
  47. package/lib/umd/store.js +1 -0
  48. package/lib/umd/store.js.gz +0 -0
  49. package/lib/umd/tinybase.js +1 -0
  50. package/lib/umd/tinybase.js.gz +0 -0
  51. package/lib/umd/ui-react.js +1 -0
  52. package/lib/umd/ui-react.js.gz +0 -0
  53. package/package.json +1 -1
  54. package/readme.md +1 -1
@@ -0,0 +1 @@
1
+ const e=e=>typeof e,t=e(""),s=(e,t)=>e.forEach(t),n=e=>e.length,o=e=>0==n(e),r=e=>e.slice(1),d=e=>null==e,i=(e,t,s)=>d(e)?s?.():t(e),a=(e,t)=>e?.has(t)??!1,l=e=>[...e?.values()??[]],c=e=>e.clear(),R=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),u=e=>new Map(e),L=(e,t)=>e?.get(t),w=(e,t)=>R(e,((e,s)=>t(s,e))),f=(e,t,s)=>d(s)?(g(e,t),e):e?.set(t,s),h=(e,t,s,n)=>(a(e,t)||(n?.(s),e.set(t,s)),L(e,t)),p=e=>new Set(e),I=(e,t)=>e?.add(t),b=(s,n)=>e(s)==t?e=>e(s):s??(()=>n??""),v=(e,t,s)=>n(s)<2?I(o(s)?e:h(e,s[0],p()),t):v(h(e,s[0],u()),t,r(s)),k=e=>{const t=(n,d,...a)=>i(n,(n=>o(a)?e(n,d):s([a[0],null],(e=>t(L(n,e),d,...r(a))))));return t},T=Object.freeze,m=(e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))})((e=>{const t=u(),o=u(),r=u(),h=u(),[m,y,S,z,D,E,M,j]=((e,t,n)=>{const o=e.hasRow,r=u(),l=u(),g=u(),h=u(),I=u(),b=t=>i(L(I,t),(s=>{R(s,e.delListener),f(I,t)})),v=e=>{f(r,e),f(l,e),f(g,e),f(h,e),b(e)};return[()=>e,()=>[...r?.keys()??[]],e=>L(r,e),e=>L(l,e),(e,t)=>f(l,e,t),(i,v,k,T,m)=>{const y=u(),S=u();f(r,i,v),a(l,i)||(f(l,i,t()),f(g,i,u()),f(h,i,u()));const z=L(g,i),D=L(h,i),E=t=>{const s=s=>e.getCell(v,t,s),r=L(z,t),i=o(v,t)?n(T(s,t)):void 0;if(r!=i&&f(y,t,[r,i]),!d(m)){const e=L(D,t),n=o(v,t)?m(s,t):void 0;e!=n&&f(S,t,n)}},M=e=>{k((()=>{R(y,(([,e],t)=>f(z,t,e))),R(S,((e,t)=>f(D,t,e)))}),y,S,z,D,e),c(y),c(S)};w(z,E),e.hasTable(v)&&s(e.getRowIds(v),(e=>{a(z,e)||E(e)})),M(!0),b(i),f(I,i,p([e.addRowListener(v,null,((e,t,s)=>E(s))),e.addTableListener(v,(()=>M()))]))},v,()=>w(I,v)]})(e,(()=>[u(),u(),u(),u()]),(e=>d(e)?void 0:e+"")),[x,C,O]=(e=>{let t,o=0;const r=[],a=u();return[(s,n,d=[])=>{t??=e();const i=r.pop()??""+o++;return f(a,i,[s,n,d]),v(n,i,d),i},(e,s=[],...n)=>k(R)(e,(e=>i(L(a,e),(([e])=>e(t,...s,...n)))),...s),e=>i(L(a,e),(([,t,s])=>(k(g)(t,e,...s),f(a,e),n(r)<1e3&&r.push(e),s)),(()=>[])),(e,o,r)=>i(L(a,e),(([e,,i])=>{const a=(...l)=>{const c=n(l);c==n(i)?e(t,...l,...r(l)):d(i[c])?s(o[c](...l),(e=>a(...l,e))):a(...l,i[c])};a()}))]})((()=>B)),W=(e,t,s)=>i(z(e),(([n,,o])=>{if(!a(o,t)){const r=p();if(S(e)!=A(e))I(r,t);else{let e=t;for(;!d(e)&&!a(r,e);)I(r,e),e=L(n,e)}if(s)return r;f(o,t,r)}return L(o,t)})),q=(e,t)=>i(z(e),(([,,e])=>f(e,t))),A=e=>L(t,e),B={setRelationshipDefinition:(e,s,n,l)=>(f(t,e,n),E(e,s,((t,s)=>{const n=p(),l=p(),c=p(),[u,b]=z(e);R(s,(([t,s],o)=>{d(t)||(I(l,t),i(L(b,t),(e=>{var s;g(e,o),(d(s=e)||0==(e=>e.size)(s))&&f(b,t)}))),d(s)||(I(l,s),a(b,s)||f(b,s,p()),I(L(b,s),o)),I(n,o),f(u,o,s),w(L(h,e),(t=>{a(W(e,t),o)&&I(c,t)}))})),t(),R(n,(t=>C(o,[e,t]))),R(l,(t=>C(r,[e,t]))),R(c,(t=>{q(e,t),C(h,[e,t])}))}),b(l)),B),delRelationshipDefinition:e=>(f(t,e),M(e),B),getStore:m,getRelationshipIds:y,getLocalTableId:S,getRemoteTableId:A,getRemoteRowId:(e,t)=>L(z(e)?.[0],t),getLocalRowIds:(e,t)=>l(L(z(e)?.[1],t)),getLinkedRowIds:(e,t)=>d(z(e))?[t]:l(W(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>x(s,o,[e,t]),addLocalRowIdsListener:(e,t,s)=>x(s,r,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(W(e,t),x(s,h,[e,t])),delListener:e=>(q(...O(e)),B),destroy:j,getListenerStats:()=>({})};return T(B)}));export{m as createRelationships};
Binary file