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
@@ -0,0 +1 @@
1
+ import{watch as e,promises as t}from"fs";const o=e=>null==e,n=(e,t,n)=>o(e)?null==n?void 0:n():t(e),r=Object.freeze;var l=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const a=(e,t,a,s,i)=>{let u,c=0;const d={load:n=>l(void 0,null,(function*(){if(2!=c){c=1;const r=yield t();o(r)||""==r?e.setTables(n):e.setJson(r),c=0}return d})),startAutoLoad:e=>l(void 0,null,(function*(){return d.stopAutoLoad(),yield d.load(e),s(d.load),d})),stopAutoLoad:()=>(i(),d),save:()=>l(void 0,null,(function*(){return 1!=c&&(c=2,yield a(e.getJson()),c=0),d})),startAutoSave:()=>l(void 0,null,(function*(){return yield d.stopAutoSave().save(),u=e.addTablesListener((()=>d.save())),d})),stopAutoSave:()=>(n(u,e.delListener),d),getStore:()=>e,destroy:()=>d.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(d)};var s=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const i=globalThis.window,u=(e,t,o)=>{let n;return a(e,(()=>s(void 0,null,(function*(){return o.getItem(t)}))),(e=>s(void 0,null,(function*(){return o.setItem(t,e)}))),(e=>{n=n=>{n.storageArea===o&&n.key===t&&e()},i.addEventListener("storage",n)}),(()=>{i.removeEventListener("storage",n),n=void 0}))},c=(e,t)=>u(e,t,localStorage),d=(e,t)=>u(e,t,sessionStorage);var v=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const y=(o,n)=>{let r;return a(o,(()=>v(void 0,null,(function*(){try{return yield t.readFile(n,"utf8")}catch(e){}}))),(e=>v(void 0,null,(function*(){try{yield t.writeFile(n,e,"utf8")}catch(e){}}))),(t=>{r=e(n,t)}),(()=>{null==r||r.close(),r=void 0}))};var h=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const f=e=>e.headers.get("ETag"),p=(e,t,r,l)=>{let s,i;return a(e,(()=>h(void 0,null,(function*(){const e=yield fetch(t);return i=f(e),e.text()}))),(e=>h(void 0,null,(function*(){return yield fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{s=setInterval((()=>h(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),r=f(n);o(i)||o(r)||r==i||(i=r,e())}))),1e3*l)}),(()=>{n(s,clearInterval),s=void 0}))};export{a as createCustomPersister,y as createFilePersister,c as createLocalPersister,p as createRemotePersister,d as createSessionPersister};
Binary file