tinybase 4.0.0 → 4.0.2

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 (188) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  11. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  12. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  13. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  14. package/lib/cjs/persisters/persister-file.cjs +1 -1
  15. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  16. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  17. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  18. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  19. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  20. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  21. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  22. package/lib/cjs/relationships.cjs +1 -1
  23. package/lib/cjs/relationships.cjs.gz +0 -0
  24. package/lib/cjs/store.cjs +1 -1
  25. package/lib/cjs/store.cjs.gz +0 -0
  26. package/lib/cjs/tinybase.cjs +1 -1
  27. package/lib/cjs/tinybase.cjs.gz +0 -0
  28. package/lib/cjs/tools.cjs +1 -1
  29. package/lib/cjs/tools.cjs.gz +0 -0
  30. package/lib/cjs/ui-react.cjs +1 -1
  31. package/lib/cjs/ui-react.cjs.gz +0 -0
  32. package/lib/cjs-es6/checkpoints.cjs +1 -1
  33. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  34. package/lib/cjs-es6/indexes.cjs +1 -1
  35. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  36. package/lib/cjs-es6/metrics.cjs +1 -1
  37. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  38. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  39. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  40. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  41. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  42. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  43. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  44. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  45. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  46. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  47. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  48. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  49. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  50. package/lib/cjs-es6/relationships.cjs +1 -1
  51. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  52. package/lib/cjs-es6/store.cjs +1 -1
  53. package/lib/cjs-es6/store.cjs.gz +0 -0
  54. package/lib/cjs-es6/tinybase.cjs +1 -1
  55. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  56. package/lib/cjs-es6/tools.cjs +1 -1
  57. package/lib/cjs-es6/tools.cjs.gz +0 -0
  58. package/lib/cjs-es6/ui-react.cjs +1 -1
  59. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  60. package/lib/debug/checkpoints.js +6 -6
  61. package/lib/debug/indexes.js +7 -7
  62. package/lib/debug/metrics.js +12 -12
  63. package/lib/debug/persisters/persister-browser.js +10 -19
  64. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +183 -132
  65. package/lib/debug/persisters/persister-file.js +10 -19
  66. package/lib/debug/persisters/persister-remote.js +10 -19
  67. package/lib/debug/persisters/persister-sqlite-wasm.js +178 -131
  68. package/lib/debug/persisters/persister-sqlite3.js +178 -132
  69. package/lib/debug/persisters.js +4 -4
  70. package/lib/debug/relationships.js +7 -7
  71. package/lib/debug/store.js +16 -24
  72. package/lib/debug/tinybase.js +20 -28
  73. package/lib/debug/tools.js +14 -13
  74. package/lib/debug/ui-react.js +4 -4
  75. package/lib/es6/checkpoints.js +1 -1
  76. package/lib/es6/checkpoints.js.gz +0 -0
  77. package/lib/es6/indexes.js +1 -1
  78. package/lib/es6/indexes.js.gz +0 -0
  79. package/lib/es6/metrics.js +1 -1
  80. package/lib/es6/metrics.js.gz +0 -0
  81. package/lib/es6/persisters/persister-browser.js +1 -1
  82. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  83. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  84. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  85. package/lib/es6/persisters/persister-file.js +1 -1
  86. package/lib/es6/persisters/persister-file.js.gz +0 -0
  87. package/lib/es6/persisters/persister-remote.js +1 -1
  88. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  89. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  90. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  91. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  92. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  93. package/lib/es6/relationships.js +1 -1
  94. package/lib/es6/relationships.js.gz +0 -0
  95. package/lib/es6/store.js +1 -1
  96. package/lib/es6/store.js.gz +0 -0
  97. package/lib/es6/tinybase.js +1 -1
  98. package/lib/es6/tinybase.js.gz +0 -0
  99. package/lib/es6/tools.js +1 -1
  100. package/lib/es6/tools.js.gz +0 -0
  101. package/lib/es6/ui-react.js +1 -1
  102. package/lib/es6/ui-react.js.gz +0 -0
  103. package/lib/indexes.js +1 -1
  104. package/lib/indexes.js.gz +0 -0
  105. package/lib/metrics.js +1 -1
  106. package/lib/metrics.js.gz +0 -0
  107. package/lib/persisters/persister-browser.js +1 -1
  108. package/lib/persisters/persister-browser.js.gz +0 -0
  109. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  110. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  111. package/lib/persisters/persister-file.js +1 -1
  112. package/lib/persisters/persister-file.js.gz +0 -0
  113. package/lib/persisters/persister-remote.js +1 -1
  114. package/lib/persisters/persister-remote.js.gz +0 -0
  115. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  116. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  117. package/lib/persisters/persister-sqlite3.js +1 -1
  118. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  119. package/lib/relationships.js +1 -1
  120. package/lib/relationships.js.gz +0 -0
  121. package/lib/store.js +1 -1
  122. package/lib/store.js.gz +0 -0
  123. package/lib/tinybase.js +1 -1
  124. package/lib/tinybase.js.gz +0 -0
  125. package/lib/tools.js +1 -1
  126. package/lib/tools.js.gz +0 -0
  127. package/lib/types/persisters.d.ts +7 -0
  128. package/lib/types/with-schemas/persisters.d.ts +7 -0
  129. package/lib/ui-react.js +1 -1
  130. package/lib/ui-react.js.gz +0 -0
  131. package/lib/umd/checkpoints.js +1 -1
  132. package/lib/umd/checkpoints.js.gz +0 -0
  133. package/lib/umd/indexes.js +1 -1
  134. package/lib/umd/indexes.js.gz +0 -0
  135. package/lib/umd/metrics.js +1 -1
  136. package/lib/umd/metrics.js.gz +0 -0
  137. package/lib/umd/persisters/persister-browser.js +1 -1
  138. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  139. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  140. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  141. package/lib/umd/persisters/persister-file.js +1 -1
  142. package/lib/umd/persisters/persister-file.js.gz +0 -0
  143. package/lib/umd/persisters/persister-remote.js +1 -1
  144. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  145. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  146. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  147. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  148. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  149. package/lib/umd/relationships.js +1 -1
  150. package/lib/umd/relationships.js.gz +0 -0
  151. package/lib/umd/store.js +1 -1
  152. package/lib/umd/store.js.gz +0 -0
  153. package/lib/umd/tinybase.js +1 -1
  154. package/lib/umd/tinybase.js.gz +0 -0
  155. package/lib/umd/tools.js +1 -1
  156. package/lib/umd/tools.js.gz +0 -0
  157. package/lib/umd/ui-react.js +1 -1
  158. package/lib/umd/ui-react.js.gz +0 -0
  159. package/lib/umd-es6/checkpoints.js +1 -1
  160. package/lib/umd-es6/checkpoints.js.gz +0 -0
  161. package/lib/umd-es6/indexes.js +1 -1
  162. package/lib/umd-es6/indexes.js.gz +0 -0
  163. package/lib/umd-es6/metrics.js +1 -1
  164. package/lib/umd-es6/metrics.js.gz +0 -0
  165. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  166. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  167. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  168. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  169. package/lib/umd-es6/persisters/persister-file.js +1 -1
  170. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  171. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  172. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  173. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  174. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  175. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  176. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  177. package/lib/umd-es6/relationships.js +1 -1
  178. package/lib/umd-es6/relationships.js.gz +0 -0
  179. package/lib/umd-es6/store.js +1 -1
  180. package/lib/umd-es6/store.js.gz +0 -0
  181. package/lib/umd-es6/tinybase.js +1 -1
  182. package/lib/umd-es6/tinybase.js.gz +0 -0
  183. package/lib/umd-es6/tools.js +1 -1
  184. package/lib/umd-es6/tools.js.gz +0 -0
  185. package/lib/umd-es6/ui-react.js +1 -1
  186. package/lib/umd-es6/ui-react.js.gz +0 -0
  187. package/package.json +33 -33
  188. package/readme.md +5 -5
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",r=n(""),o=(e,n="")=>e.join(n),i=(e,n)=>e.map(n),u=e=>e.length,a=e=>0==u(e),d=(e,n)=>e.filter(n),s=(e,n,t)=>e.slice(n,t),c=(e,...n)=>e.push(...n),v=Promise,y=JSON.parse,f=(e,n)=>e instanceof n,p=e=>null==e,h=(e,n,t)=>p(e)?null==t?void 0:t():n(e),m=e=>n(e)==r,E=e=>{return n=function*(){return v.all(e)},new Promise(((e,t)=>{var l=e=>{try{o(n.next(e))}catch(e){t(e)}},r=e=>{try{o(n.throw(e))}catch(e){t(e)}},o=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);o((n=n.apply(void 0,null)).next())}));var n},b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},O=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),P=Object,A=P.keys,w=P.freeze,L=(e=[])=>P.fromEntries(e),S=(...e)=>P.assign({},...e),g=(e,n)=>(delete e[n],e),N=(e,n)=>i(P.entries(e),(([e,t])=>n(t,e))),x=e=>P.values(e),C=e=>u(A(e)),R=e=>(e=>f(e,P)&&e.constructor==P)(e)&&0==C(e),I=e=>new Map(e),j=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},D=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return i([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},_=(e,n,t)=>p(t)?(T(e,n),e):null==e?void 0:e.set(n,t),F=(e,n,t,l=_)=>(N(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!p(((e,n)=>h(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),M="_id",B=e=>`"${e.replace(/"/g,'""')}"`,k=e=>new Set(Array.isArray(e)||p(e)?e:[e]),q=(e,n)=>null==e?void 0:e.add(n);var H=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable,Y=(e,n,t)=>n in e?H(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))U.call(n,t)&&Y(e,t,n[t]);if(J)for(var t of J(n))W.call(n,t)&&Y(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const V="SELECT*FROM",G="FROM pragma_table_",Q="WHERE",X=(e,n)=>{const t=I(),r=(e,n)=>!p(D(D(t,e),n)),s=(n,r,s,v,y)=>K(void 0,null,(function*(){const f=k();N(null!=y?y:{},(e=>i(A(e),(e=>q(f,e)))));const p=O(f);if(a(p)&&b(t,n)&&v)return yield e("DROP TABLE"+B(n)),void _(t,n);if(a(p)||b(t,n)){const l=D(t,n),o=k(j(l));yield E([...i(p,(t=>K(void 0,null,(function*(){T(o,t)||(yield e(`ALTER TABLE${B(n)}ADD${B(t)}`),_(l,t,""))})))),...s?i(O(o),(t=>K(void 0,null,(function*(){t!=r&&(yield e(`ALTER TABLE${B(n)}DROP${B(t)}`),_(l,t))})))):[]])}else yield e(`CREATE TABLE${B(n)}(${B(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+B(e))))});`),_(t,n,I([[r,""],...i(p,(e=>[e,""]))]));if(a(p))b(t,n)&&(yield e("DELETE FROM"+B(n)));else{const a=[],s=[],v=[],f=d(j(D(t,n)),(e=>e!=r));N(y,((e,n)=>{var t;c(a,`(?${t=u(f),",?".repeat(t)})`),c(s,n,...i(f,(n=>e[n]))),c(v,n)})),yield e("INSERT INTO"+B(n)+"("+B(r)+o(i(f,(e=>l+B(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+B(r)+")DO UPDATE SET"+o(i(f,(e=>B(e)+"=excluded."+B(e))),l),s),yield e("DELETE FROM"+B(n)+Q+B(r)+"NOT IN("+Z(v)+")",v)}}));return[()=>K(void 0,null,(function*(){return F(t,L(yield E(i(yield e("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+Z(n)+")",n),(n=>K(void 0,[n],(function*({name:n}){return[n,L(i(yield e("SELECT name,type "+G+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return _(t,n,F((i=I,b(r=t,o=n)||_(r,o,i()),D(r,o)),l,((e,n,t)=>{t!=D(e,n)&&_(e,n,t)}),((e,n)=>_(e,n))));var r,o,i}),((e,n)=>_(t,n)))})),(n,t)=>K(void 0,null,(function*(){const l=r(n,t)?yield e(V+B(n)+Q+B(t)+"=?",["_"]):[];return a(l)?null:g(l[0],t)})),(e,n,t,l)=>K(void 0,null,(function*(){return yield s(e,n,!0,!0,{[t]:l})})),(n,t)=>K(void 0,null,(function*(){return r(n,t)?L(d(i(yield e(V+B(n)),(e=>[e[t],g(z({},e),t)])),(([e,n])=>!p(e)&&!R(n)))):{}})),s]},Z=e=>o(i(e,(()=>"?")),l);var ee=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const ne=(e,n,t,l,r)=>{let o,i,u,a=0,d=0,s=0;const v=[],y=e=>ee(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(t,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ee(void 0,[...t],(function*(t={},r={}){return f.stopAutoLoad(),yield f.load(t,r),s=1,u=l(((t,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){var r;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(r=null==t?void 0:t())?r:yield n())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),f),save:n=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ee(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),f})),startAutoSave:()=>ee(void 0,null,(function*(){return yield f.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();R(t)&&R(l)||f.save((()=>[t,l]))})),f})),stopAutoSave:()=>(h(o,e.delListener),f),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!p((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return w(f)};var te=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const le="store",re=(e,n,t,l,[r],o)=>{const[i,u,a]=X(n,o),d=ne(e,(()=>te(void 0,null,(function*(){var e;return yield i(),y((null!=(e=yield u(r,M))?e:{})[le])}))),(e=>te(void 0,null,(function*(){return d.schedule(i,(()=>te(void 0,null,(function*(){var n;yield a(r,M,"_",{[le]:(n=e(),JSON.stringify(n,((e,n)=>{return f(n,Map)?(t=(e,[n,t])=>(e[n]=t,e),l={},[...n].reduce(t,l)):n;var t,l})))})}))))}))),t,l);return d};var oe=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const ie=(e,n,t,l,[r,o,[i,u,a]],s)=>{const[c,v,y,f,h]=X(n,s);return ne(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return L(d(yield E($(r,((e,n)=>oe(void 0,[e,n],(function*([e,n],t){return[e,yield f(t,n)]}))))),(e=>!R(e[1]))))})),n=yield oe(void 0,null,(function*(){return i?yield v(a,M):{}}));return R(e)&&p(n)?void 0:[e,n]}))),(e=>oe(void 0,null,(function*(){const[n,t]=e();yield c(),yield(e=>oe(void 0,null,(function*(){return yield E($(o,((n,t)=>oe(void 0,[n,t],(function*([n,t,l,r],o){return yield h(n,t,l,r,e[o])})))))})))(n),yield(e=>oe(void 0,null,(function*(){return u?yield y(a,M,"_",e):null})))(t)}))),t,l)},ue="json",ae="autoLoadIntervalSeconds",de="rowIdColumnName",se="tableId",ce="tableName",ve={mode:ue,[ae]:1},ye={load:0,save:0,[ce]:t+"_values"},fe=(e,n,t,l)=>{const r=I();return N(e,((e,o)=>{const i=s(x(S(n,m(e)?{[t]:e}:e)),0,C(n));p(i[0])||l(o,i[0])||_(r,o,i)})),r},pe="pragma ",he="data_version",me="schema_version",Ee=(e,n,l,r,o)=>{let i,u;const[a,d,c,v]=(e=>{const n=(e=>S(ve,m(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[ae];if(n.mode==ue){const{storeTableName:e=t}=n;return[1,l,[e],k(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=n,u=s(x(S(ye,i)),0,C(ye)),a=u[2],d=k(a);return[0,l,[fe(r,{[se]:null,[de]:M},se,(e=>q(d,e)&&e==a)),fe(o,{[ce]:null,[de]:M,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,n)=>q(d,n)&&n==a)),u],d]})(n);return(a?re:ie)(e,l,(e=>[setInterval((()=>{return n=function*(){try{const n=(yield l(pe+he))[0][he],t=(yield l(pe+me))[0][me];n==(null!=i?i:i=n)&&t==(null!=u?u:u=t)||(e(),i=n,u=t)}catch(e){}},new Promise(((e,t)=>{var l=e=>{try{o(n.next(e))}catch(e){t(e)}},r=e=>{try{o(n.throw(e))}catch(e){t(e)}},o=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);o((n=n.apply(void 0,null)).next())}));var n}),1e3*d),r((n=>v.has(n)?e():0))]),(([e,n])=>{clearInterval(e),i=u=null,o(n)}),c,O(v))};var be=Object.defineProperty,Oe=Object.getOwnPropertySymbols,Te=Object.prototype.hasOwnProperty,Pe=Object.prototype.propertyIsEnumerable,Ae=(e,n,t)=>n in e?be(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;const we="change";e.createSqlite3Persister=(e,n,t)=>Ee(e,t,((e,t=[])=>new v(((l,r)=>n.all(e,t,((e,n)=>e?r(e):l(n.map((e=>((e,n)=>{for(var t in n||(n={}))Te.call(n,t)&&Ae(e,t,n[t]);if(Oe)for(var t of Oe(n))Pe.call(n,t)&&Ae(e,t,n[t]);return e})({},e))))))))),(e=>{const t=(n,t,l)=>e(l);return n.on(we,t),t}),(e=>n.off(we,e)))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqlite3={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=(e,n="")=>e.join(n),u=(e,n)=>e.map(n),a=e=>e.length,d=e=>0==a(e),s=(e,n)=>e.filter(n),c=(e,n,t)=>e.slice(n,t),v=(e,...n)=>e.push(...n),y=Promise,f=(e,n)=>e instanceof n,p=e=>null==e,h=(e,n,t)=>p(e)?null==t?void 0:t():n(e),E=e=>n(e)==o,m=e=>{return n=function*(){return y.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},O=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),P=Object,A=P.keys,L=P.freeze,w=(e=[])=>P.fromEntries(e),S=(...e)=>P.assign({},...e),g=(e,n)=>u(P.entries(e),(([e,t])=>n(t,e))),R=e=>P.values(e),N=e=>a(A(e)),x=e=>(e=>f(e,P)&&e.constructor==P)(e)&&0==N(e),C=e=>new Map(e),I=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},D=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var t;return u([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},F=(e,n,t)=>p(t)?(T(e,n),e):null==e?void 0:e.set(n,t),M=(e,n,t,l=F)=>(g(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!p(((e,n)=>h(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),$=e=>new Set(Array.isArray(e)||p(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),B="_",H="_id",W=e=>`"${e.replace(/"/g,'""')}"`;var k=Object.defineProperty,q=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,Y=(e,n,t)=>n in e?k(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&Y(e,t,n[t]);if(q)for(var t of q(n))U.call(n,t)&&Y(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const V="FROM pragma_table_",G="WHERE",Q=(e,n)=>{const t=C();return[()=>K(void 0,null,(function*(){return M(t,w(yield m(u(yield e("SELECT name "+V+"list WHERE schema='main'AND type='table'AND name IN("+Z(n)+")",n),(n=>K(void 0,[n],(function*({name:n}){return[n,w(u(yield e("SELECT name,type "+V+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return F(t,n,M((i=C,b(o=t,r=n)||F(o,r,i()),D(o,r)),l,((e,n,t)=>{t!=D(e,n)&&F(e,n,t)}),((e,n)=>F(e,n))));var o,r,i}),((e,n)=>F(t,n)))})),(n,l)=>K(void 0,null,(function*(){return((e,n)=>!p(D(D(t,e),n)))(n,l)?w(s(u(yield e("SELECT*FROM"+W(n)),(e=>{return[e[l],(n=z({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!p(e)&&!x(n)))):{}})),(n,o,r,a,c,y=!1)=>K(void 0,null,(function*(){const f=$();g(null!=r?r:{},(e=>u(A(null!=e?e:{}),(e=>_(f,e)))));const h=O(f);if(!y&&c&&d(h)&&b(t,n))return yield e("DROP TABLE"+W(n)),void F(t,n);if(d(h)||b(t,n)){const l=D(t,n),r=$(I(l));yield m([...u(h,(t=>K(void 0,null,(function*(){T(r,t)||(yield e(`ALTER TABLE${W(n)}ADD${W(t)}`),F(l,t,""))})))),...!y&&a?u(O(r),(t=>K(void 0,null,(function*(){t!=o&&(yield e(`ALTER TABLE${W(n)}DROP${W(t)}`),F(l,t))})))):[]])}else yield e(`CREATE TABLE${W(n)}(${W(o)} PRIMARY KEY ON CONFLICT REPLACE${i(u(h,(e=>l+W(e))))});`),F(t,n,C([[o,""],...u(h,(e=>[e,""]))]));if(y)p(r)?yield e("DELETE FROM"+W(n)+"WHERE 1"):yield m(g(r,((t,l)=>K(void 0,null,(function*(){p(t)?yield e("DELETE FROM"+W(n)+G+W(o)+"=?",[l]):d(h)||(yield X(e,n,o,A(t),[l,...R(t)]))})))));else if(d(h))b(t,n)&&(yield e("DELETE FROM"+W(n)+"WHERE 1"));else{const l=s(I(D(t,n)),(e=>e!=o)),i=[],a=[];g(null!=r?r:{},((e,n)=>{v(i,n,...u(l,(n=>null==e?void 0:e[n]))),v(a,n)})),yield X(e,n,o,l,i),yield e("DELETE FROM"+W(n)+G+W(o)+"NOT IN("+Z(a)+")",a)}}))]},X=(e,n,t,o,d)=>K(void 0,null,(function*(){return yield e("INSERT INTO"+W(n)+"("+W(t)+i(u(o,(e=>l+W(e))))+")VALUES"+r(`,(?${r(",?",a(o))})`,a(d)/(a(o)+1)).substring(1)+"ON CONFLICT("+W(t)+")DO UPDATE SET"+i(u(o,(e=>W(e)+"=excluded."+W(e))),l),d)})),Z=e=>i(u(e,(()=>"?")),l),ee=JSON.parse;var ne=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const te=(e,n,t,l,o)=>{let r,i,u,a=0,d=0,s=0;const c=[],y=e=>ne(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ne(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ne(void 0,[...t],(function*(t={},o={}){return f.stopAutoLoad(),yield f.load(t,o),s=1,u=l(((t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield n())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(o(u),u=void 0,s=0),f),save:n=>ne(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ne(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),f})),startAutoSave:()=>ne(void 0,null,(function*(){return yield f.stopAutoSave().save(),r=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();x(t)&&x(l)||f.save((()=>[t,l]))})),f})),stopAutoSave:()=>(h(r,e.delListener),f),schedule:(...e)=>ne(void 0,null,(function*(){return v(c,...e),yield ne(void 0,null,(function*(){if(!d){for(d=1;!p((e=c,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return L(f)};var le=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const oe="store",re=(e,n,t,l,[o],r)=>{const[i,u,a]=Q(n,r),d=te(e,(()=>le(void 0,null,(function*(){var e;return yield i(),ee(null==(e=(yield u(o,H))[B])?void 0:e[oe])}))),(e=>le(void 0,null,(function*(){return d.schedule(i,(()=>le(void 0,null,(function*(){var n;yield a(o,H,{[B]:{[oe]:(n=e(),JSON.stringify(n,((e,n)=>f(n,Map)?P.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l);return d};var ie=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ue=(e,n,t,l,[o,r,[i,u,a]],d)=>{const[c,v,y]=Q(n,d),f=(e,n)=>ie(void 0,null,(function*(){return yield m(j(r,((t,l)=>ie(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield y(t,l,u,o,r,n))})))))})),h=(e,n)=>ie(void 0,null,(function*(){return u?yield y(a,H,{[B]:e},!0,!0,n):null}));return te(e,(()=>ie(void 0,null,(function*(){yield c();const e=yield ie(void 0,null,(function*(){return w(s(yield m(j(o,((e,n)=>ie(void 0,[e,n],(function*([e,n],t){return[e,yield v(t,n)]}))))),(e=>!x(e[1]))))})),n=yield ie(void 0,null,(function*(){return i?(yield v(a,H))[B]:{}}));return x(e)&&p(n)?void 0:[e,n]}))),((e,n)=>ie(void 0,null,(function*(){if(yield c(),p(n)){const[n,t]=e();yield f(n),yield h(t)}else{const[e,t]=n();yield f(e,!0),yield h(t,!0)}}))),t,l)},ae="json",de="autoLoadIntervalSeconds",se="rowIdColumnName",ce="tableId",ve="tableName",ye={mode:ae,[de]:1},fe={load:0,save:0,[ve]:t+"_values"},pe=(e,n,t,l)=>{const o=C();return g(e,((e,r)=>{const i=c(R(S(n,E(e)?{[t]:e}:e)),0,N(n));p(i[0])||l(r,i[0])||F(o,r,i)})),o};var he=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ee="pragma ",me="data_version",be="schema_version",Oe=(e,n,l,o,r,i)=>{let u,a;const[d,s,v,y]=(e=>{const n=(e=>S(ye,E(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[de];if(n.mode==ae){const{storeTableName:e=t}=n;return[1,l,[e],$(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=c(R(S(fe,i)),0,N(fe)),a=u[2],d=$(a);return[0,l,[pe(o,{[ce]:null,[se]:H},ce,(e=>_(d,e)&&e==a)),pe(r,{[ve]:null,[se]:H,deleteEmptyColumns:0,deleteEmptyTable:0},ve,((e,n)=>_(d,n)&&n==a)),u],d]})(n);return(d?re:ue)(e,i?(e,n)=>he(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>[setInterval((()=>he(void 0,null,(function*(){try{const n=(yield l(Ee+me))[0][me],t=(yield l(Ee+be))[0][be];n==(null!=u?u:u=n)&&t==(null!=a?a:a=t)||(e(),u=n,a=t)}catch(e){}}))),1e3*s),o((n=>y.has(n)?e():0))]),(([e,n])=>{clearInterval(e),u=a=null,r(n)}),v,O(y))};var Te=Object.defineProperty,Pe=Object.getOwnPropertySymbols,Ae=Object.prototype.hasOwnProperty,Le=Object.prototype.propertyIsEnumerable,we=(e,n,t)=>n in e?Te(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;const Se="change";e.createSqlite3Persister=(e,n,t,l)=>Oe(e,t,((e,t=[])=>new y(((l,o)=>n.all(e,t,((e,n)=>e?o(e):l(n.map((e=>((e,n)=>{for(var t in n||(n={}))Ae.call(n,t)&&we(e,t,n[t]);if(Pe)for(var t of Pe(n))Le.call(n,t)&&we(e,t,n[t]);return e})({},e))))))))),(e=>{const t=(n,t,l)=>e(l);return n.on(Se,t),t}),(e=>n.off(Se,e)),l)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqlite3={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),o=(e,n)=>e.forEach(n),r=e=>e.length,s=(e,...n)=>e.push(...n),i=e=>null==e,d=(e,n,t)=>i(e)?null==t?void 0:t():n(e),u=e=>Array.isArray(e),a=Object.freeze,c=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},v=e=>i(e)||0==(e=>e.size)(e),f=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},h=e=>e.clear(),R=(e,n)=>null==e?void 0:e.forEach(n),p=(e,n)=>null==e?void 0:e.delete(n),g=e=>new Map(e),L=(e,n)=>null==e?void 0:e.get(n),w=(e,n)=>R(e,((e,t)=>n(t,e))),y=(e,n,t)=>i(t)?(p(e,n),e):null==e?void 0:e.set(n,t),I=(e,n,t)=>(c(e,n)||y(e,n,t()),L(e,n)),b=(e,n,t,l,o=0)=>d((t?I:L)(e,n[o],o>r(n)-2?t:g),(s=>{if(o>r(n)-2)return(null==l?void 0:l(s))&&y(e,n[o]),s;const i=b(s,n,t,l,o+1);return v(s)&&y(e,n[o]),i})),T=e=>new Set(u(e)||i(e)?e:[e]),m=(e,n)=>null==e?void 0:e.add(n),k=/^\d+$/,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=g(),x=g(),S=g(),j=g(),[z,A,D,M,B,C,,,O,W,$]=((e,n,l)=>{const s=e.hasRow,a=g(),b=g(),k=g(),E=g(),x=g(),S=(n,t,...l)=>{const r=I(x,n,T);return o(l,(n=>m(r,n)&&t&&e.callListener(n))),l},j=(n,...t)=>d(L(x,n),(l=>{o(0==r(t)?f(l):t,(n=>{e.delListener(n),p(l,n)})),v(l)&&y(x,n)})),z=(e,n)=>{y(a,e,n),c(b,e)||(y(b,e,[g(),g(),g(),g()]),y(k,e,g()),y(E,e,g()))},A=e=>{y(a,e),y(b,e),y(k,e),y(E,e),j(e)};return[()=>e,()=>{return[...null!=(n=null==(e=a)?void 0:e.keys())?n:[]];var e,n},e=>w(b,e),e=>c(b,e),e=>L(a,e),e=>L(b,e),(e,n)=>y(b,e,n),z,(n,l,d,a,v)=>{z(n,l);const f=g(),p=g(),I=L(k,n),b=L(E,n),T=n=>{const o=t=>e.getCell(l,n,t),d=L(I,n),c=s(l,n)?(h=a(o,n),i(h)?void 0:h+t):void 0;var h,R,g,w;if(d===c||u(d)&&u(c)&&(g=c,r(R=d)===r(g)&&(w=(e,n)=>g[n]===e,R.every(w)))||y(f,n,[d,c]),!i(v)){const e=L(b,n),t=s(l,n)?v(o,n):void 0;e!=t&&y(p,n,t)}},m=e=>{d((()=>{R(f,(([,e],n)=>y(I,n,e))),R(p,((e,n)=>y(b,n,e)))}),f,p,I,b,e),h(f),h(p)};w(I,T),e.hasTable(l)&&o(e.getRowIds(l),(e=>{c(I,e)||T(e)})),m(!0),j(n),S(n,0,e.addRowListener(l,null,((e,n,t)=>T(t))),e.addTableListener(l,(()=>m())))},A,()=>w(x,A),S,j]})(e),[q,F,G]=(e=>{let n;const[l,u]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?e.shift():null)?o:t+n++},n=>{k.test(n)&&r(e)<1e3&&s(e,n)}]})(),a=g();return[(e,o,r,s=[],i=(()=>[]))=>{null!=n||(n=N);const d=l(1);return y(a,d,[e,o,r,s,i]),m(b(o,null!=r?r:[t],T),d),d},(e,l,...i)=>o(((e,n=[t])=>{const l=[],i=(e,t)=>t==r(n)?s(l,e):null===n[t]?R(e,(e=>i(e,t+1))):o([n[t],null],(n=>i(L(e,n),t+1)));return i(e,0),l})(e,l),(e=>R(e,(e=>L(a,e)[0](n,...null!=l?l:[],...i))))),e=>d(L(a,e),(([,n,l])=>(b(n,null!=l?l:[t],void 0,(n=>(p(n,e),v(n)?1:0))),y(a,e),u(e),l))),e=>d(L(a,e),(([e,,t=[],l,s])=>{const d=(...u)=>{var a,c;const v=r(u);v==r(t)?e(n,...u,...s(u)):i(t[v])?o(null!=(c=null==(a=l[v])?void 0:a.call(l,...u))?c:[],(e=>d(...u,e))):d(...u,t[v])};d()}))]})(),H=(e,n,t)=>d(C(e),(([l,,o])=>{if(!c(o,n)){const r=T();if(B(e)!=K(e))m(r,n);else{let e=n;for(;!i(e)&&!c(r,e);)m(r,e),e=L(l,e)}if(t)return r;y(o,n,r)}return L(o,n)})),J=(e,n)=>d(C(e),(([,,e])=>y(e,n))),K=e=>L(E,e),N={setRelationshipDefinition:(e,o,r,s)=>{return y(E,e,r),O(e,o,((n,t)=>{const l=T(),o=T(),r=T(),[s,u]=C(e);R(t,(([n,t],a)=>{i(n)||(m(o,n),d(L(u,n),(e=>{p(e,a),v(e)&&y(u,n)}))),i(t)||(m(o,t),c(u,t)||y(u,t,T()),m(L(u,t),a)),m(l,a),y(s,a,t),w(L(j,e),(n=>{c(H(e,n),a)&&m(r,n)}))})),n(),R(l,(n=>F(x,[e,n]))),R(o,(n=>F(S,[e,n]))),R(r,(n=>{J(e,n),F(j,[e,n])}))}),n(u=s)==l?e=>e(u):null!=u?u:()=>t),N;var u},delRelationshipDefinition:e=>(y(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:n=>D((t=>n(t,(n=>e.forEachRow(B(t),n))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,n)=>{var t;return L(null==(t=C(e))?void 0:t[0],n)},getLocalRowIds:(e,n)=>{var t;return f(L(null==(t=C(e))?void 0:t[1],n))},getLinkedRowIds:(e,n)=>i(C(e))?[n]:f(H(e,n,!0)),addRemoteRowIdListener:(e,n,t)=>q(t,x,[e,n]),addLocalRowIdsListener:(e,n,t)=>q(t,S,[e,n]),addLinkedRowIdsListener:(e,n,t)=>(H(e,n),q(t,j,[e,n])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return a(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),o=e=>null==e,r=(e,n,t)=>o(e)?null==t?void 0:t():n(e),s=e=>Array.isArray(e),i=(e,n)=>e.forEach(n),d=e=>e.length,u=(e,...n)=>e.push(...n),a=Object.freeze,c=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},v=e=>o(e)||0==(e=>e.size)(e),f=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},h=e=>e.clear(),R=(e,n)=>null==e?void 0:e.forEach(n),p=(e,n)=>null==e?void 0:e.delete(n),g=e=>new Map(e),L=(e,n)=>null==e?void 0:e.get(n),w=(e,n)=>R(e,((e,t)=>n(t,e))),y=(e,n,t)=>o(t)?(p(e,n),e):null==e?void 0:e.set(n,t),I=(e,n,t)=>(c(e,n)||y(e,n,t()),L(e,n)),b=(e,n,t,l,o=0)=>r((t?I:L)(e,n[o],o>d(n)-2?t:g),(r=>{if(o>d(n)-2)return(null==l?void 0:l(r))&&y(e,n[o]),r;const s=b(r,n,t,l,o+1);return v(r)&&y(e,n[o]),s})),T=e=>new Set(s(e)||o(e)?e:[e]),m=(e,n)=>null==e?void 0:e.add(n),k=/^\d+$/,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=g(),x=g(),S=g(),j=g(),[z,A,D,M,B,C,,,O,W,$]=((e,n,l)=>{const u=e.hasRow,a=g(),b=g(),k=g(),E=g(),x=g(),S=(n,t,...l)=>{const o=I(x,n,T);return i(l,(n=>m(o,n)&&t&&e.callListener(n))),l},j=(n,...t)=>r(L(x,n),(l=>{i(0==d(t)?f(l):t,(n=>{e.delListener(n),p(l,n)})),v(l)&&y(x,n)})),z=(e,n)=>{y(a,e,n),c(b,e)||(y(b,e,[g(),g(),g(),g()]),y(k,e,g()),y(E,e,g()))},A=e=>{y(a,e),y(b,e),y(k,e),y(E,e),j(e)};return[()=>e,()=>{return[...null!=(n=null==(e=a)?void 0:e.keys())?n:[]];var e,n},e=>w(b,e),e=>c(b,e),e=>L(a,e),e=>L(b,e),(e,n)=>y(b,e,n),z,(n,l,r,a,v)=>{z(n,l);const f=g(),p=g(),I=L(k,n),b=L(E,n),T=n=>{const r=t=>e.getCell(l,n,t),i=L(I,n),c=u(l,n)?(h=a(r,n),o(h)?void 0:h+t):void 0;var h,R,g,w;if(i===c||s(i)&&s(c)&&(g=c,d(R=i)===d(g)&&(w=(e,n)=>g[n]===e,R.every(w)))||y(f,n,[i,c]),!o(v)){const e=L(b,n),t=u(l,n)?v(r,n):void 0;e!=t&&y(p,n,t)}},m=e=>{r((()=>{R(f,(([,e],n)=>y(I,n,e))),R(p,((e,n)=>y(b,n,e)))}),f,p,I,b,e),h(f),h(p)};w(I,T),e.hasTable(l)&&i(e.getRowIds(l),(e=>{c(I,e)||T(e)})),m(!0),j(n),S(n,0,e.addRowListener(l,null,((e,n,t)=>T(t))),e.addTableListener(l,(()=>m())))},A,()=>w(x,A),S,j]})(e),[q,F,G]=(e=>{let n;const[l,s]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?e.shift():null)?o:t+n++},n=>{k.test(n)&&d(e)<1e3&&u(e,n)}]})(),a=g();return[(e,o,r,s=[],i=(()=>[]))=>{null!=n||(n=N);const d=l(1);return y(a,d,[e,o,r,s,i]),m(b(o,null!=r?r:[t],T),d),d},(e,l,...o)=>i(((e,n=[t])=>{const l=[],o=(e,t)=>t==d(n)?u(l,e):null===n[t]?R(e,(e=>o(e,t+1))):i([n[t],null],(n=>o(L(e,n),t+1)));return o(e,0),l})(e,l),(e=>R(e,(e=>L(a,e)[0](n,...null!=l?l:[],...o))))),e=>r(L(a,e),(([,n,l])=>(b(n,null!=l?l:[t],void 0,(n=>(p(n,e),v(n)?1:0))),y(a,e),s(e),l))),e=>r(L(a,e),(([e,,t=[],l,r])=>{const s=(...u)=>{var a,c;const v=d(u);v==d(t)?e(n,...u,...r(u)):o(t[v])?i(null!=(c=null==(a=l[v])?void 0:a.call(l,...u))?c:[],(e=>s(...u,e))):s(...u,t[v])};s()}))]})(),H=(e,n,t)=>r(C(e),(([l,,r])=>{if(!c(r,n)){const s=T();if(B(e)!=K(e))m(s,n);else{let e=n;for(;!o(e)&&!c(s,e);)m(s,e),e=L(l,e)}if(t)return s;y(r,n,s)}return L(r,n)})),J=(e,n)=>r(C(e),(([,,e])=>y(e,n))),K=e=>L(E,e),N={setRelationshipDefinition:(e,s,i,d)=>{return y(E,e,i),O(e,s,((n,t)=>{const l=T(),s=T(),i=T(),[d,u]=C(e);R(t,(([n,t],a)=>{o(n)||(m(s,n),r(L(u,n),(e=>{p(e,a),v(e)&&y(u,n)}))),o(t)||(m(s,t),c(u,t)||y(u,t,T()),m(L(u,t),a)),m(l,a),y(d,a,t),w(L(j,e),(n=>{c(H(e,n),a)&&m(i,n)}))})),n(),R(l,(n=>F(x,[e,n]))),R(s,(n=>F(S,[e,n]))),R(i,(n=>{J(e,n),F(j,[e,n])}))}),n(u=d)==l?e=>e(u):null!=u?u:()=>t),N;var u},delRelationshipDefinition:e=>(y(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:n=>D((t=>n(t,(n=>e.forEachRow(B(t),n))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,n)=>{var t;return L(null==(t=C(e))?void 0:t[0],n)},getLocalRowIds:(e,n)=>{var t;return f(L(null==(t=C(e))?void 0:t[1],n))},getLinkedRowIds:(e,n)=>o(C(e))?[n]:f(H(e,n,!0)),addRemoteRowIdListener:(e,n,t)=>q(t,x,[e,n]),addLocalRowIdsListener:(e,n,t)=>q(t,S,[e,n]),addLinkedRowIdsListener:(e,n,t)=>(H(e,n),q(t,j,[e,n])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return a(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
Binary file
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="",n=l(t),s=l(!0),a=l(0),r=l(l),o="type",u="default",i="Ids",d="Table",c=d+"s",h=d+i,v="Row"+i,f="Cell",g=f+i,T="Value",b=T+"s",V=T+i,C=e=>t+e,S=(e,l)=>e.forEach(l),y=(e,l)=>e.map(l),w=e=>e.length,p=(e,l,t)=>e.slice(l,t),I=(e,...l)=>e.push(...l),R=e=>JSON.stringify(e,((e,l)=>{return L(l,Map)?(t=(e,[l,t])=>(e[l]=t,e),n={},[...l].reduce(t,n)):l;var t,n})),m=JSON.parse,J=isFinite,L=(e,l)=>e instanceof l,E=e=>null==e,F=(e,l,t)=>E(e)?null==t?void 0:t():l(e),x=e=>e==n||e==s,z=e=>l(e)==r,O=Object,j=O.keys,k=O.isFrozen,A=O.freeze,M=e=>L(e,O)&&e.constructor==O,N=(e,l)=>!E(((e,l)=>F(e,(e=>e[l])))(e,l)),P=(e,l)=>(delete e[l],e),B=(e,l)=>y(O.entries(e),(([e,t])=>l(t,e))),D=e=>M(e)&&0==(e=>w(j(e)))(e),W=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},$=e=>E(e)||0==(e=>e.size)(e),q=e=>e.clear(),G=(e,l)=>null==e?void 0:e.forEach(l),H=(e,l)=>null==e?void 0:e.delete(l),K=e=>new Map(e),Q=e=>{var l;return[...null!=(l=null==e?void 0:e.keys())?l:[]]},U=(e,l)=>null==e?void 0:e.get(l),X=(e,l)=>G(e,((e,t)=>l(t,e))),Y=(e,l,t)=>E(t)?(H(e,l),e):null==e?void 0:e.set(l,t),Z=(e,l,t)=>(W(e,l)||Y(e,l,t()),U(e,l)),_=(e,l,t,n=Y)=>(B(l,((l,n)=>t(e,n,l))),X(e,(t=>N(l,t)?0:n(e,t))),e),ee=(e,l,t)=>{const n={};return G(e,((e,s)=>{const a=l?l(e,s):e;!(null==t?void 0:t(a,e))&&(n[s]=a)})),n},le=(e,l,t)=>ee(e,(e=>ee(e,l,t)),D),te=(e,l,t)=>ee(e,(e=>le(e,l,t)),D),ne=(e,l)=>{const t=K();return G(e,((e,n)=>{var s;return t.set(n,null!=(s=null==l?void 0:l(e))?s:e)})),t},se=e=>ne(e,ne),ae=e=>ne(e,se),re=(e,l,t,n,s=0)=>F((t?Z:U)(e,l[s],s>w(l)-2?t:K),(a=>{if(s>w(l)-2)return(null==n?void 0:n(a))&&Y(e,l[s]),a;const r=re(a,l,t,n,s+1);return $(a)&&Y(e,l[s]),r})),oe=e=>new Set(Array.isArray(e)||E(e)?e:[e]),ue=(e,l)=>null==e?void 0:e.add(l),ie=/^\d+$/,de=()=>{const e=[];let l=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:t+l++},l=>{ie.test(l)&&w(e)<1e3&&I(e,l)}]},ce=e=>[e,e],he=()=>[K(),K()],ve=e=>[...e],fe=([e,l])=>e===l,ge=e=>{const t=l(e);return x(t)||t==a&&J(e)?t:void 0},Te=(e,l,t,n,s)=>E(s)?e.delCell(l,t,n,!0):e.setCell(l,t,n,s),be=(e,l,t)=>E(t)?e.delValue(l):e.setValue(l,t),Ve=(e,l,t)=>E(e)||!M(e)||D(e)||k(e)?(null==t||t(),!1):(B(e,((t,n)=>{l(t,n)||P(e,n)})),!D(e)),Ce=(e,l,t)=>Y(e,l,U(e,l)==-t?void 0:t),Se=()=>{let e,l,n=!1,s=!1,r=0;const i=K(),J=K(),L=K(),O=K(),j=K(),k=K(),M=K(),ie=K(),ye=K(),we=K(),pe=K(),Ie=K(),Re=K(),me=oe(),Je=K(),Le=K(),Ee=K(),Fe=K(),xe=he(),ze=he(),Oe=he(),je=he(),ke=he(),Ae=he(),Me=he(),Ne=he(),Pe=he(),Be=he(),De=he(),We=he(),$e=he(),qe=he(),Ge=K(),He=he(),[Ke,Qe,Ue,Xe]=(e=>{let l;const[n,s]=de(),a=K();return[(e,s,r,o=[],u=(()=>[]))=>{null!=l||(l=it);const i=n(1);return Y(a,i,[e,s,r,o,u]),ue(re(s,null!=r?r:[t],oe),i),i},(e,n,...s)=>S(((e,l=[t])=>{const n=[],s=(e,t)=>t==w(l)?I(n,e):null===l[t]?G(e,(e=>s(e,t+1))):S([l[t],null],(l=>s(U(e,l),t+1)));return s(e,0),n})(e,n),(e=>G(e,(e=>U(a,e)[0](l,...null!=n?n:[],...s))))),e=>F(U(a,e),(([,l,n])=>(re(l,null!=n?n:[t],void 0,(l=>(H(l,e),$(l)?1:0))),Y(a,e),s(e),n))),e=>F(U(a,e),(([e,,t=[],n,s])=>{const a=(...r)=>{var o,u;const i=w(r);i==w(t)?e(l,...r,...s(r)):E(t[i])?S(null!=(u=null==(o=n[i])?void 0:o.call(n,...r))?u:[],(e=>a(...r,e))):a(...r,t[i])};a()}))]})(),Ye=e=>{if(!Ve(e,((e,l)=>[o,u].includes(l))))return!1;const l=e[o];return!(!x(l)&&l!=a||(ge(e[u])!=l&&P(e,u),0))},Ze=(l,t)=>(!e||W(we,t)||Ll(t))&&Ve(l,((e,l)=>_e(t,l,e)),(()=>Ll(t))),_e=(e,l,t,n)=>Ve(n?t:nl(t,e,l),((n,s)=>F(el(e,l,s,n),(e=>(t[s]=e,!0)),(()=>!1))),(()=>Ll(e,l))),el=(l,t,n,s)=>e?F(U(U(we,l),n),(e=>ge(s)!=e[o]?Ll(l,t,n,s,e[u]):s),(()=>Ll(l,t,n,s))):E(ge(s))?Ll(l,t,n,s):s,ll=(e,l)=>Ve(l?e:sl(e),((l,t)=>F(tl(t,l),(l=>(e[t]=l,!0)),(()=>!1))),(()=>El())),tl=(e,t)=>l?F(U(Ie,e),(l=>ge(t)!=l[o]?El(e,t,l[u]):t),(()=>El(e,t))):E(ge(t))?El(e,t):t,nl=(e,l,t)=>(F(U(pe,l),(([n,s])=>{G(n,((l,t)=>{N(e,t)||(e[t]=l)})),G(s,(n=>{N(e,n)||Ll(l,t,n)}))})),e),sl=e=>(l&&(G(Re,((l,t)=>{N(e,t)||(e[t]=l)})),G(me,(l=>{N(e,l)||El(l)}))),e),al=e=>_(we,e,((e,l,t)=>{const n=K(),s=oe();_(Z(we,l,K),t,((e,l,t)=>{Y(e,l,t),F(t[u],(e=>Y(n,l,e)),(()=>ue(s,l)))})),Y(pe,l,[n,s])}),((e,l)=>{Y(we,l),Y(pe,l)})),rl=e=>_(Ie,e,((e,l,t)=>{Y(Ie,l,t),F(t[u],(e=>Y(Re,l,e)),(()=>ue(me,l)))}),((e,l)=>{Y(Ie,l),Y(Re,l),H(me,l)})),ol=e=>D(e)?et():Ul(e),ul=e=>_(Ee,e,((e,l,t)=>il(l,t)),((e,l)=>Vl(l))),il=(e,l)=>_(Z(Ee,e,(()=>(wl(e,1),Y(Je,e,de()),Y(Le,e,K()),K()))),l,((l,t,n)=>dl(e,l,t,n)),((l,t)=>Cl(e,l,t))),dl=(e,l,t,n,s)=>_(Z(l,t,(()=>(pl(e,t,1),K()))),n,((l,n,s)=>cl(e,t,l,n,s)),((n,a)=>Sl(e,l,t,n,a,s))),cl=(e,l,t,n,s)=>{W(t,n)||Il(e,l,n,1);const a=U(t,n);s!==a&&(Rl(e,l,n,a,s),Y(t,n,s))},hl=(e,l,t,n,s)=>F(U(l,t),(l=>cl(e,t,l,n,s)),(()=>dl(e,l,t,nl({[n]:s},e,t)))),vl=e=>D(e)?nt():Xl(e),fl=e=>_(Fe,e,((e,l,t)=>gl(l,t)),((e,l)=>yl(l))),gl=(e,l)=>{W(Fe,e)||ml(e,1);const t=U(Fe,e);l!==t&&(Jl(e,t,l),Y(Fe,e,l))},Tl=(e,l)=>{const[t]=U(Je,e),n=t(l);return W(U(Ee,e),n)?Tl(e,l):n},bl=e=>{var l;return null!=(l=U(Ee,e))?l:il(e,{})},Vl=e=>il(e,{}),Cl=(e,l,t)=>{const[,n]=U(Je,e);n(t),dl(e,l,t,{},!0)},Sl=(e,l,t,n,s,a)=>{var r;const o=U(null==(r=U(pe,e))?void 0:r[0],s);if(!E(o)&&!a)return cl(e,t,n,s,o);const u=l=>{Rl(e,t,l,U(n,l)),Il(e,t,l,-1),Y(n,l)};E(o)?u(s):X(n,u),$(n)&&(pl(e,t,-1),$(Y(l,t))&&(wl(e,-1),Y(Ee,e),Y(Je,e),Y(Le,e)))},yl=e=>{const l=U(Re,e);if(!E(l))return gl(e,l);Jl(e,U(Fe,e)),ml(e,-1),Y(Fe,e)},wl=(e,l)=>Ce(i,e,l),pl=(e,l,t)=>Ce(Z(L,e,K),l,t),Il=(e,l,t,n)=>{var s;const a=U(Le,e),r=null!=(s=U(a,t))?s:0;(0==r&&1==n||1==r&&-1==n)&&Ce(Z(J,e,K),t,n),Y(a,t,r!=-n?r+n:null),Ce(Z(Z(O,e,K),l,K),t,n)},Rl=(e,l,t,n,s)=>Z(Z(Z(j,e,K),l,K),t,(()=>[n,0]))[1]=s,ml=(e,l)=>Ce(k,e,l),Jl=(e,l,t)=>Z(M,e,(()=>[l,0]))[1]=t,Ll=(e,l,t,n,s)=>(I(Z(Z(Z(ie,e,K),l,K),t,(()=>[])),n),s),El=(e,l,t)=>(I(Z(ye,e,(()=>[])),l),t),Fl=(e,l,t)=>F(U(U(U(j,e),l),t),(([e,l])=>[!0,e,l]),(()=>[!1,...ce(Gl(e,l,t))])),xl=e=>F(U(M,e),(([e,l])=>[!0,e,l]),(()=>[!1,...ce(Ql(e))])),zl=e=>$(ie)||$(Be[e])?0:G(e?ae(ie):ie,((l,t)=>G(l,((l,n)=>G(l,((l,s)=>Qe(Be[e],[t,n,s],l))))))),Ol=e=>$(ye)||$(De[e])?0:G(e?ne(ye):ye,((l,t)=>Qe(De[e],[t],l))),jl=(e,l,t)=>{if(!$(l))return Qe(e,t,(()=>ee(l))),1},kl=e=>{const l=$(Ae[e]),t=$(Ne[e])&&$(je[e])&&$(ke[e])&&l&&$(ze[e]),n=$(Pe[e])&&$(Me[e])&&$(Oe[e])&&$(xe[e]);if(!t||!n){const s=e?[ne(i),se(J),se(L),ae(O),ae(j)]:[i,J,L,O,j];if(!t){jl(ze[e],s[0]),G(s[1],((l,t)=>jl(je[e],l,[t])));const t=oe();G(s[2],((n,s)=>{jl(ke[e],n,[s])&&!l&&(Qe(Ae[e],[s,null]),ue(t,s))})),l||G(s[4],((l,n)=>{if(!W(t,n)){const t=oe();G(l,(e=>G(e,(([l,n],s)=>n!==l?ue(t,s):H(e,s))))),G(t,(l=>Qe(Ae[e],[n,l])))}})),G(s[3],((l,t)=>G(l,((l,n)=>jl(Ne[e],l,[t,n])))))}if(!n){let l;G(s[4],((t,n)=>{let s;G(t,((t,a)=>{let r;G(t,(([t,o],u)=>{o!==t&&(Qe(Pe[e],[n,a,u],o,t,Fl),l=s=r=1)})),r&&Qe(Me[e],[n,a],Fl)})),s&&Qe(Oe[e],[n],Fl)})),l&&Qe(xe[e],void 0,Fl)}}},Al=e=>{const l=$($e[e]),t=$(qe[e])&&$(We[e]);if(!l||!t){const n=e?[ne(k),ne(M)]:[k,M];if(l||jl($e[e],n[0]),!t){let l;G(n[1],(([t,n],s)=>{n!==t&&(Qe(qe[e],[s],n,t,xl),l=1)})),l&&Qe(We[e],void 0,xl)}}},Ml=(e,...l)=>(rt((()=>e(...y(l,C)))),it),Nl=()=>[ee(j,((e,l)=>-1===U(i,l)?null:ee(e,((e,t)=>-1===U(U(L,l),t)?null:ee(e,(([,e])=>null!=e?e:null),((e,l)=>fe(l)))),D)),D),ee(M,(([,e])=>null!=e?e:null),((e,l)=>fe(l)))],Pl=()=>({cellsTouched:n,valuesTouched:s,changedCells:te(j,ve,fe),invalidCells:te(ie),changedValues:ee(M,ve,fe),invalidValues:ee(ye),changedTableIds:ee(i),changedRowIds:le(L),changedCellIds:te(O),changedValueIds:ee(k)}),Bl=()=>te(Ee),Dl=()=>Q(Ee),Wl=e=>Q(U(Ee,C(e))),$l=(e,l,t,n=0,s)=>{return y(p((r=U(Ee,C(e)),o=(e,t)=>[E(l)?t:U(e,C(l)),t],a=([e],[l])=>(e<l?-1:1)*(t?-1:1),y([...null!=(u=null==r?void 0:r.entries())?u:[]],(([e,l])=>o(l,e))).sort(a)),n,E(s)?s:n+s),(([,e])=>e));var a,r,o,u},ql=(e,l)=>Q(U(U(Ee,C(e)),C(l))),Gl=(e,l,t)=>U(U(U(Ee,C(e)),C(l)),C(t)),Hl=()=>ee(Fe),Kl=()=>Q(Fe),Ql=e=>U(Fe,C(e)),Ul=e=>Ml((()=>(e=>Ve(e,Ze,Ll))(e)?ul(e):0)),Xl=e=>Ml((()=>ll(e)?fl(e):0)),Yl=e=>{try{ol(m(e))}catch(e){}return it},Zl=l=>Ml((()=>{if((e=Ve(l,(e=>Ve(e,Ye))))&&(al(l),!$(Ee))){const e=Bl();et(),Ul(e)}})),_l=e=>Ml((()=>{if(l=(e=>Ve(e,Ye))(e)){const t=Hl();at(),nt(),l=!0,rl(e),Xl(t)}})),et=()=>Ml((()=>ul({}))),lt=e=>Ml((e=>W(Ee,e)?Vl(e):0),e),tt=(e,l)=>Ml(((e,l)=>F(U(Ee,e),(t=>W(t,l)?Cl(e,t,l):0))),e,l),nt=()=>Ml((()=>fl({}))),st=()=>Ml((()=>{al({}),e=!1})),at=()=>Ml((()=>{rl({}),l=!1})),rt=(e,l)=>{if(-1!=r){ot();const t=e();return ut(l),t}},ot=()=>(-1!=r&&r++,1==r&&Qe(Ge,void 0,Nl,Pl),it),ut=e=>(r>0&&(r--,0==r&&(n=!$(j),s=!$(M),r=1,zl(1),n&&kl(1),Ol(1),s&&Al(1),(null==e?void 0:e(Nl,Pl))&&(G(j,((e,l)=>G(e,((e,t)=>G(e,(([e],n)=>Te(it,l,t,n,e))))))),G(M,(([e],l)=>be(it,l,e))),n=s=!1),Qe(He[0],void 0,Nl,Pl),r=-1,zl(0),n&&kl(0),Ol(0),s&&Al(0),Qe(He[1],void 0,Nl,Pl),r=0,n=s=!1,S([i,J,L,O,j,ie,k,M,ye],q))),it),it={getContent:()=>[Bl(),Hl()],getTables:Bl,getTableIds:Dl,getTable:e=>le(U(Ee,C(e))),getTableCellIds:e=>Q(U(Le,C(e))),getRowIds:Wl,getSortedRowIds:$l,getRow:(e,l)=>ee(U(U(Ee,C(e)),C(l))),getCellIds:ql,getCell:Gl,getValues:Hl,getValueIds:Kl,getValue:Ql,hasTables:()=>!$(Ee),hasTable:e=>W(Ee,C(e)),hasTableCell:(e,l)=>W(U(Le,C(e)),C(l)),hasRow:(e,l)=>W(U(Ee,C(e)),C(l)),hasCell:(e,l,t)=>W(U(U(Ee,C(e)),C(l)),C(t)),hasValues:()=>!$(Fe),hasValue:e=>W(Fe,C(e)),getTablesJson:()=>R(Ee),getValuesJson:()=>R(Fe),getJson:()=>R([Ee,Fe]),getTablesSchemaJson:()=>R(we),getValuesSchemaJson:()=>R(Ie),getSchemaJson:()=>R([we,Ie]),setContent:([e,l])=>Ml((()=>{(D(e)?et:Ul)(e),(D(l)?nt:Xl)(l)})),setTables:Ul,setTable:(e,l)=>Ml((e=>Ze(l,e)?il(e,l):0),e),setRow:(e,l,t)=>Ml(((e,l)=>_e(e,l,t)?dl(e,bl(e),l,t):0),e,l),addRow:(e,l,t=!0)=>rt((()=>{let n;return _e(e,n,l)&&(e=C(e),dl(e,bl(e),n=Tl(e,t?1:0),l)),n})),setPartialRow:(e,l,t)=>Ml(((e,l)=>{if(_e(e,l,t,1)){const n=bl(e);B(t,((t,s)=>hl(e,n,l,s,t)))}}),e,l),setCell:(e,l,t,n)=>Ml(((e,l,t)=>F(el(e,l,t,z(n)?n(Gl(e,l,t)):n),(n=>hl(e,bl(e),l,t,n)))),e,l,t),setValues:Xl,setPartialValues:e=>Ml((()=>ll(e,1)?B(e,((e,l)=>gl(l,e))):0)),setValue:(e,l)=>Ml((e=>F(tl(e,z(l)?l(Ql(e)):l),(l=>gl(e,l)))),e),setTransactionChanges:e=>Ml((()=>{B(e[0],((e,l)=>E(e)?lt(l):B(e,((e,t)=>E(e)?tt(l,t):B(e,((e,n)=>Te(it,l,t,n,e))))))),B(e[1],((e,l)=>be(it,l,e)))})),setTablesJson:Yl,setValuesJson:e=>{try{vl(m(e))}catch(e){}return it},setJson:e=>{try{const[l,t]=m(e);ol(l),vl(t)}catch(l){Yl(e)}return it},setTablesSchema:Zl,setValuesSchema:_l,setSchema:(e,l)=>Ml((()=>{Zl(e),_l(l)})),delTables:et,delTable:lt,delRow:tt,delCell:(e,l,t,n)=>Ml(((e,l,t)=>F(U(Ee,e),(s=>F(U(s,l),(a=>W(a,t)?Sl(e,s,l,a,t,n):0))))),e,l,t),delValues:nt,delValue:e=>Ml((e=>W(Fe,e)?yl(e):0),e),delTablesSchema:st,delValuesSchema:at,delSchema:()=>Ml((()=>{st(),at()})),transaction:rt,startTransaction:ot,finishTransaction:ut,forEachTable:e=>G(Ee,((l,t)=>e(t,(e=>G(l,((l,t)=>e(t,(e=>X(l,e))))))))),forEachTableCell:(e,l)=>X(U(Le,C(e)),l),forEachRow:(e,l)=>G(U(Ee,C(e)),((e,t)=>l(t,(l=>X(e,l))))),forEachCell:(e,l,t)=>X(U(U(Ee,C(e)),C(l)),t),forEachValue:e=>X(Fe,e),addSortedRowIdsListener:(e,l,t,n,s,a,r)=>{let o=$l(e,l,t,n,s);return Ke((()=>{const r=$l(e,l,t,n,s);var u,i,d;i=o,w(u=r)===w(i)&&(d=(e,l)=>i[l]===e,u.every(d))||(o=r,a(it,e,l,t,n,s,o))}),Ae[r?1:0],[e,l],[Dl])},addStartTransactionListener:e=>Ke(e,Ge),addWillFinishTransactionListener:e=>Ke(e,He[0]),addDidFinishTransactionListener:e=>Ke(e,He[1]),callListener:e=>(Xe(e),it),delListener:e=>(Ue(e),it),getListenerStats:()=>({}),createStore:Se};return B({[c]:[0,xe],[h]:[0,ze],[d]:[1,Oe,[Dl]],[d+g]:[1,je,[Dl]],[v]:[1,ke,[Dl]],Row:[2,Me,[Dl,Wl]],[g]:[2,Ne,[Dl,Wl]],[f]:[3,Pe,[Dl,Wl,ql],e=>ce(Gl(...e))],InvalidCell:[3,Be],[b]:[0,We],[V]:[0,$e],[T]:[1,qe,[Kl],e=>ce(Ql(e[0]))],InvalidValue:[1,De]},(([e,l,t,n],s)=>{it["add"+s+"Listener"]=(...s)=>Ke(s[e],l[s[e+1]?1:0],e>0?p(s,0,e):void 0,t,n)})),A(it)};e.createStore=Se},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="",n=l(t),s=l(!0),a=l(0),o=l(l),r="type",u="default",i="Ids",d="Table",c=d+"s",h=d+i,f="Row"+i,v="Cell",g=v+i,T="Value",b=T+"s",V=T+i,C=e=>t+e,S=isFinite,y=(e,l)=>e instanceof l,w=e=>null==e,p=(e,l,t)=>w(e)?null==t?void 0:t():l(e),I=e=>e==n||e==s,m=e=>l(e)==o,R=(e,l)=>e.forEach(l),J=(e,l)=>e.map(l),E=e=>e.length,L=(e,l,t)=>e.slice(l,t),F=(e,...l)=>e.push(...l),x=Object,z=x.keys,O=x.isFrozen,j=x.freeze,k=e=>y(e,x)&&e.constructor==x,A=(e,l)=>!w(((e,l)=>p(e,(e=>e[l])))(e,l)),M=(e,l)=>(delete e[l],e),N=(e,l)=>J(x.entries(e),(([e,t])=>l(t,e))),P=e=>k(e)&&0==(e=>E(z(e)))(e),B=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},D=e=>w(e)||0==(e=>e.size)(e),W=e=>e.clear(),$=(e,l)=>null==e?void 0:e.forEach(l),q=(e,l)=>null==e?void 0:e.delete(l),G=e=>new Map(e),H=e=>{var l;return[...null!=(l=null==e?void 0:e.keys())?l:[]]},K=(e,l)=>null==e?void 0:e.get(l),Q=(e,l)=>$(e,((e,t)=>l(t,e))),U=(e,l,t)=>w(t)?(q(e,l),e):null==e?void 0:e.set(l,t),X=(e,l,t)=>(B(e,l)||U(e,l,t()),K(e,l)),Y=(e,l,t,n=U)=>(N(l,((l,n)=>t(e,n,l))),Q(e,(t=>A(l,t)?0:n(e,t))),e),Z=(e,l,t)=>{const n={};return $(e,((e,s)=>{const a=l?l(e,s):e;!(null==t?void 0:t(a,e))&&(n[s]=a)})),n},_=(e,l,t)=>Z(e,(e=>Z(e,l,t)),P),ee=(e,l,t)=>Z(e,(e=>_(e,l,t)),P),le=(e,l)=>{const t=G();return $(e,((e,n)=>{var s;return t.set(n,null!=(s=null==l?void 0:l(e))?s:e)})),t},te=e=>le(e,le),ne=e=>le(e,te),se=(e,l,t,n,s=0)=>p((t?X:K)(e,l[s],s>E(l)-2?t:G),(a=>{if(s>E(l)-2)return(null==n?void 0:n(a))&&U(e,l[s]),a;const o=se(a,l,t,n,s+1);return D(a)&&U(e,l[s]),o})),ae=e=>new Set(Array.isArray(e)||w(e)?e:[e]),oe=(e,l)=>null==e?void 0:e.add(l),re=/^\d+$/,ue=()=>{const e=[];let l=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:t+l++},l=>{re.test(l)&&E(e)<1e3&&F(e,l)}]},ie=e=>[e,e],de=()=>[G(),G()],ce=e=>[...e],he=([e,l])=>e===l,fe=e=>{const t=l(e);return I(t)||t==a&&S(e)?t:void 0},ve=(e,l,t,n,s)=>w(s)?e.delCell(l,t,n,!0):e.setCell(l,t,n,s),ge=(e,l,t)=>w(t)?e.delValue(l):e.setValue(l,t),Te=e=>JSON.stringify(e,((e,l)=>y(l,Map)?x.fromEntries([...l]):l)),be=JSON.parse,Ve=(e,l,t)=>w(e)||!k(e)||P(e)||O(e)?(null==t||t(),!1):(N(e,((t,n)=>{l(t,n)||M(e,n)})),!P(e)),Ce=(e,l,t)=>U(e,l,K(e,l)==-t?void 0:t),Se=()=>{let e,l,n=!1,s=!1,o=0;const i=G(),S=G(),y=G(),x=G(),z=G(),O=G(),k=G(),re=G(),ye=G(),we=G(),pe=G(),Ie=G(),me=G(),Re=ae(),Je=G(),Ee=G(),Le=G(),Fe=G(),xe=de(),ze=de(),Oe=de(),je=de(),ke=de(),Ae=de(),Me=de(),Ne=de(),Pe=de(),Be=de(),De=de(),We=de(),$e=de(),qe=de(),Ge=G(),He=de(),[Ke,Qe,Ue,Xe]=(e=>{let l;const[n,s]=ue(),a=G();return[(e,s,o,r=[],u=(()=>[]))=>{null!=l||(l=it);const i=n(1);return U(a,i,[e,s,o,r,u]),oe(se(s,null!=o?o:[t],ae),i),i},(e,n,...s)=>R(((e,l=[t])=>{const n=[],s=(e,t)=>t==E(l)?F(n,e):null===l[t]?$(e,(e=>s(e,t+1))):R([l[t],null],(l=>s(K(e,l),t+1)));return s(e,0),n})(e,n),(e=>$(e,(e=>K(a,e)[0](l,...null!=n?n:[],...s))))),e=>p(K(a,e),(([,l,n])=>(se(l,null!=n?n:[t],void 0,(l=>(q(l,e),D(l)?1:0))),U(a,e),s(e),n))),e=>p(K(a,e),(([e,,t=[],n,s])=>{const a=(...o)=>{var r,u;const i=E(o);i==E(t)?e(l,...o,...s(o)):w(t[i])?R(null!=(u=null==(r=n[i])?void 0:r.call(n,...o))?u:[],(e=>a(...o,e))):a(...o,t[i])};a()}))]})(),Ye=e=>{if(!Ve(e,((e,l)=>[r,u].includes(l))))return!1;const l=e[r];return!(!I(l)&&l!=a||(fe(e[u])!=l&&M(e,u),0))},Ze=(l,t)=>(!e||B(we,t)||El(t))&&Ve(l,((e,l)=>_e(t,l,e)),(()=>El(t))),_e=(e,l,t,n)=>Ve(n?t:nl(t,e,l),((n,s)=>p(el(e,l,s,n),(e=>(t[s]=e,!0)),(()=>!1))),(()=>El(e,l))),el=(l,t,n,s)=>e?p(K(K(we,l),n),(e=>fe(s)!=e[r]?El(l,t,n,s,e[u]):s),(()=>El(l,t,n,s))):w(fe(s))?El(l,t,n,s):s,ll=(e,l)=>Ve(l?e:sl(e),((l,t)=>p(tl(t,l),(l=>(e[t]=l,!0)),(()=>!1))),(()=>Ll())),tl=(e,t)=>l?p(K(Ie,e),(l=>fe(t)!=l[r]?Ll(e,t,l[u]):t),(()=>Ll(e,t))):w(fe(t))?Ll(e,t):t,nl=(e,l,t)=>(p(K(pe,l),(([n,s])=>{$(n,((l,t)=>{A(e,t)||(e[t]=l)})),$(s,(n=>{A(e,n)||El(l,t,n)}))})),e),sl=e=>(l&&($(me,((l,t)=>{A(e,t)||(e[t]=l)})),$(Re,(l=>{A(e,l)||Ll(l)}))),e),al=e=>Y(we,e,((e,l,t)=>{const n=G(),s=ae();Y(X(we,l,G),t,((e,l,t)=>{U(e,l,t),p(t[u],(e=>U(n,l,e)),(()=>oe(s,l)))})),U(pe,l,[n,s])}),((e,l)=>{U(we,l),U(pe,l)})),ol=e=>Y(Ie,e,((e,l,t)=>{U(Ie,l,t),p(t[u],(e=>U(me,l,e)),(()=>oe(Re,l)))}),((e,l)=>{U(Ie,l),U(me,l),q(Re,l)})),rl=e=>P(e)?et():Ul(e),ul=e=>Y(Le,e,((e,l,t)=>il(l,t)),((e,l)=>Vl(l))),il=(e,l)=>Y(X(Le,e,(()=>(wl(e,1),U(Je,e,ue()),U(Ee,e,G()),G()))),l,((l,t,n)=>dl(e,l,t,n)),((l,t)=>Cl(e,l,t))),dl=(e,l,t,n,s)=>Y(X(l,t,(()=>(pl(e,t,1),G()))),n,((l,n,s)=>cl(e,t,l,n,s)),((n,a)=>Sl(e,l,t,n,a,s))),cl=(e,l,t,n,s)=>{B(t,n)||Il(e,l,n,1);const a=K(t,n);s!==a&&(ml(e,l,n,a,s),U(t,n,s))},hl=(e,l,t,n,s)=>p(K(l,t),(l=>cl(e,t,l,n,s)),(()=>dl(e,l,t,nl({[n]:s},e,t)))),fl=e=>P(e)?nt():Xl(e),vl=e=>Y(Fe,e,((e,l,t)=>gl(l,t)),((e,l)=>yl(l))),gl=(e,l)=>{B(Fe,e)||Rl(e,1);const t=K(Fe,e);l!==t&&(Jl(e,t,l),U(Fe,e,l))},Tl=(e,l)=>{const[t]=K(Je,e),n=t(l);return B(K(Le,e),n)?Tl(e,l):n},bl=e=>{var l;return null!=(l=K(Le,e))?l:il(e,{})},Vl=e=>il(e,{}),Cl=(e,l,t)=>{const[,n]=K(Je,e);n(t),dl(e,l,t,{},!0)},Sl=(e,l,t,n,s,a)=>{var o;const r=K(null==(o=K(pe,e))?void 0:o[0],s);if(!w(r)&&!a)return cl(e,t,n,s,r);const u=l=>{ml(e,t,l,K(n,l)),Il(e,t,l,-1),U(n,l)};w(r)?u(s):Q(n,u),D(n)&&(pl(e,t,-1),D(U(l,t))&&(wl(e,-1),U(Le,e),U(Je,e),U(Ee,e)))},yl=e=>{const l=K(me,e);if(!w(l))return gl(e,l);Jl(e,K(Fe,e)),Rl(e,-1),U(Fe,e)},wl=(e,l)=>Ce(i,e,l),pl=(e,l,t)=>Ce(X(y,e,G),l,t),Il=(e,l,t,n)=>{var s;const a=K(Ee,e),o=null!=(s=K(a,t))?s:0;(0==o&&1==n||1==o&&-1==n)&&Ce(X(S,e,G),t,n),U(a,t,o!=-n?o+n:null),Ce(X(X(x,e,G),l,G),t,n)},ml=(e,l,t,n,s)=>X(X(X(z,e,G),l,G),t,(()=>[n,0]))[1]=s,Rl=(e,l)=>Ce(O,e,l),Jl=(e,l,t)=>X(k,e,(()=>[l,0]))[1]=t,El=(e,l,t,n,s)=>(F(X(X(X(re,e,G),l,G),t,(()=>[])),n),s),Ll=(e,l,t)=>(F(X(ye,e,(()=>[])),l),t),Fl=(e,l,t)=>p(K(K(K(z,e),l),t),(([e,l])=>[!0,e,l]),(()=>[!1,...ie(Gl(e,l,t))])),xl=e=>p(K(k,e),(([e,l])=>[!0,e,l]),(()=>[!1,...ie(Ql(e))])),zl=e=>D(re)||D(Be[e])?0:$(e?ne(re):re,((l,t)=>$(l,((l,n)=>$(l,((l,s)=>Qe(Be[e],[t,n,s],l))))))),Ol=e=>D(ye)||D(De[e])?0:$(e?le(ye):ye,((l,t)=>Qe(De[e],[t],l))),jl=(e,l,t)=>{if(!D(l))return Qe(e,t,(()=>Z(l))),1},kl=e=>{const l=D(Ae[e]),t=D(Ne[e])&&D(je[e])&&D(ke[e])&&l&&D(ze[e]),n=D(Pe[e])&&D(Me[e])&&D(Oe[e])&&D(xe[e]);if(!t||!n){const s=e?[le(i),te(S),te(y),ne(x),ne(z)]:[i,S,y,x,z];if(!t){jl(ze[e],s[0]),$(s[1],((l,t)=>jl(je[e],l,[t])));const t=ae();$(s[2],((n,s)=>{jl(ke[e],n,[s])&&!l&&(Qe(Ae[e],[s,null]),oe(t,s))})),l||$(s[4],((l,n)=>{if(!B(t,n)){const t=ae();$(l,(e=>$(e,(([l,n],s)=>n!==l?oe(t,s):q(e,s))))),$(t,(l=>Qe(Ae[e],[n,l])))}})),$(s[3],((l,t)=>$(l,((l,n)=>jl(Ne[e],l,[t,n])))))}if(!n){let l;$(s[4],((t,n)=>{let s;$(t,((t,a)=>{let o;$(t,(([t,r],u)=>{r!==t&&(Qe(Pe[e],[n,a,u],r,t,Fl),l=s=o=1)})),o&&Qe(Me[e],[n,a],Fl)})),s&&Qe(Oe[e],[n],Fl)})),l&&Qe(xe[e],void 0,Fl)}}},Al=e=>{const l=D($e[e]),t=D(qe[e])&&D(We[e]);if(!l||!t){const n=e?[le(O),le(k)]:[O,k];if(l||jl($e[e],n[0]),!t){let l;$(n[1],(([t,n],s)=>{n!==t&&(Qe(qe[e],[s],n,t,xl),l=1)})),l&&Qe(We[e],void 0,xl)}}},Ml=(e,...l)=>(ot((()=>e(...J(l,C)))),it),Nl=()=>[Z(z,((e,l)=>-1===K(i,l)?null:Z(e,((e,t)=>-1===K(K(y,l),t)?null:Z(e,(([,e])=>null!=e?e:null),((e,l)=>he(l)))),P)),P),Z(k,(([,e])=>null!=e?e:null),((e,l)=>he(l)))],Pl=()=>({cellsTouched:n,valuesTouched:s,changedCells:ee(z,ce,he),invalidCells:ee(re),changedValues:Z(k,ce,he),invalidValues:Z(ye),changedTableIds:Z(i),changedRowIds:_(y),changedCellIds:ee(x),changedValueIds:Z(O)}),Bl=()=>ee(Le),Dl=()=>H(Le),Wl=e=>H(K(Le,C(e))),$l=(e,l,t,n=0,s)=>{return J(L((o=K(Le,C(e)),r=(e,t)=>[w(l)?t:K(e,C(l)),t],a=([e],[l])=>(e<l?-1:1)*(t?-1:1),J([...null!=(u=null==o?void 0:o.entries())?u:[]],(([e,l])=>r(l,e))).sort(a)),n,w(s)?s:n+s),(([,e])=>e));var a,o,r,u},ql=(e,l)=>H(K(K(Le,C(e)),C(l))),Gl=(e,l,t)=>K(K(K(Le,C(e)),C(l)),C(t)),Hl=()=>Z(Fe),Kl=()=>H(Fe),Ql=e=>K(Fe,C(e)),Ul=e=>Ml((()=>(e=>Ve(e,Ze,El))(e)?ul(e):0)),Xl=e=>Ml((()=>ll(e)?vl(e):0)),Yl=e=>{try{rl(be(e))}catch(e){}return it},Zl=l=>Ml((()=>{if((e=Ve(l,(e=>Ve(e,Ye))))&&(al(l),!D(Le))){const e=Bl();et(),Ul(e)}})),_l=e=>Ml((()=>{if(l=(e=>Ve(e,Ye))(e)){const t=Hl();at(),nt(),l=!0,ol(e),Xl(t)}})),et=()=>Ml((()=>ul({}))),lt=e=>Ml((e=>B(Le,e)?Vl(e):0),e),tt=(e,l)=>Ml(((e,l)=>p(K(Le,e),(t=>B(t,l)?Cl(e,t,l):0))),e,l),nt=()=>Ml((()=>vl({}))),st=()=>Ml((()=>{al({}),e=!1})),at=()=>Ml((()=>{ol({}),l=!1})),ot=(e,l)=>{if(-1!=o){rt();const t=e();return ut(l),t}},rt=()=>(-1!=o&&o++,1==o&&Qe(Ge,void 0,Nl,Pl),it),ut=e=>(o>0&&(o--,0==o&&(n=!D(z),s=!D(k),o=1,zl(1),n&&kl(1),Ol(1),s&&Al(1),(null==e?void 0:e(Nl,Pl))&&($(z,((e,l)=>$(e,((e,t)=>$(e,(([e],n)=>ve(it,l,t,n,e))))))),$(k,(([e],l)=>ge(it,l,e))),n=s=!1),Qe(He[0],void 0,Nl,Pl),o=-1,zl(0),n&&kl(0),Ol(0),s&&Al(0),Qe(He[1],void 0,Nl,Pl),o=0,n=s=!1,R([i,S,y,x,z,re,O,k,ye],W))),it),it={getContent:()=>[Bl(),Hl()],getTables:Bl,getTableIds:Dl,getTable:e=>_(K(Le,C(e))),getTableCellIds:e=>H(K(Ee,C(e))),getRowIds:Wl,getSortedRowIds:$l,getRow:(e,l)=>Z(K(K(Le,C(e)),C(l))),getCellIds:ql,getCell:Gl,getValues:Hl,getValueIds:Kl,getValue:Ql,hasTables:()=>!D(Le),hasTable:e=>B(Le,C(e)),hasTableCell:(e,l)=>B(K(Ee,C(e)),C(l)),hasRow:(e,l)=>B(K(Le,C(e)),C(l)),hasCell:(e,l,t)=>B(K(K(Le,C(e)),C(l)),C(t)),hasValues:()=>!D(Fe),hasValue:e=>B(Fe,C(e)),getTablesJson:()=>Te(Le),getValuesJson:()=>Te(Fe),getJson:()=>Te([Le,Fe]),getTablesSchemaJson:()=>Te(we),getValuesSchemaJson:()=>Te(Ie),getSchemaJson:()=>Te([we,Ie]),setContent:([e,l])=>Ml((()=>{(P(e)?et:Ul)(e),(P(l)?nt:Xl)(l)})),setTables:Ul,setTable:(e,l)=>Ml((e=>Ze(l,e)?il(e,l):0),e),setRow:(e,l,t)=>Ml(((e,l)=>_e(e,l,t)?dl(e,bl(e),l,t):0),e,l),addRow:(e,l,t=!0)=>ot((()=>{let n;return _e(e,n,l)&&(e=C(e),dl(e,bl(e),n=Tl(e,t?1:0),l)),n})),setPartialRow:(e,l,t)=>Ml(((e,l)=>{if(_e(e,l,t,1)){const n=bl(e);N(t,((t,s)=>hl(e,n,l,s,t)))}}),e,l),setCell:(e,l,t,n)=>Ml(((e,l,t)=>p(el(e,l,t,m(n)?n(Gl(e,l,t)):n),(n=>hl(e,bl(e),l,t,n)))),e,l,t),setValues:Xl,setPartialValues:e=>Ml((()=>ll(e,1)?N(e,((e,l)=>gl(l,e))):0)),setValue:(e,l)=>Ml((e=>p(tl(e,m(l)?l(Ql(e)):l),(l=>gl(e,l)))),e),setTransactionChanges:e=>Ml((()=>{N(e[0],((e,l)=>w(e)?lt(l):N(e,((e,t)=>w(e)?tt(l,t):N(e,((e,n)=>ve(it,l,t,n,e))))))),N(e[1],((e,l)=>ge(it,l,e)))})),setTablesJson:Yl,setValuesJson:e=>{try{fl(be(e))}catch(e){}return it},setJson:e=>{try{const[l,t]=be(e);rl(l),fl(t)}catch(l){Yl(e)}return it},setTablesSchema:Zl,setValuesSchema:_l,setSchema:(e,l)=>Ml((()=>{Zl(e),_l(l)})),delTables:et,delTable:lt,delRow:tt,delCell:(e,l,t,n)=>Ml(((e,l,t)=>p(K(Le,e),(s=>p(K(s,l),(a=>B(a,t)?Sl(e,s,l,a,t,n):0))))),e,l,t),delValues:nt,delValue:e=>Ml((e=>B(Fe,e)?yl(e):0),e),delTablesSchema:st,delValuesSchema:at,delSchema:()=>Ml((()=>{st(),at()})),transaction:ot,startTransaction:rt,finishTransaction:ut,forEachTable:e=>$(Le,((l,t)=>e(t,(e=>$(l,((l,t)=>e(t,(e=>Q(l,e))))))))),forEachTableCell:(e,l)=>Q(K(Ee,C(e)),l),forEachRow:(e,l)=>$(K(Le,C(e)),((e,t)=>l(t,(l=>Q(e,l))))),forEachCell:(e,l,t)=>Q(K(K(Le,C(e)),C(l)),t),forEachValue:e=>Q(Fe,e),addSortedRowIdsListener:(e,l,t,n,s,a,o)=>{let r=$l(e,l,t,n,s);return Ke((()=>{const o=$l(e,l,t,n,s);var u,i,d;i=r,E(u=o)===E(i)&&(d=(e,l)=>i[l]===e,u.every(d))||(r=o,a(it,e,l,t,n,s,r))}),Ae[o?1:0],[e,l],[Dl])},addStartTransactionListener:e=>Ke(e,Ge),addWillFinishTransactionListener:e=>Ke(e,He[0]),addDidFinishTransactionListener:e=>Ke(e,He[1]),callListener:e=>(Xe(e),it),delListener:e=>(Ue(e),it),getListenerStats:()=>({}),createStore:Se};return N({[c]:[0,xe],[h]:[0,ze],[d]:[1,Oe,[Dl]],[d+g]:[1,je,[Dl]],[f]:[1,ke,[Dl]],Row:[2,Me,[Dl,Wl]],[g]:[2,Ne,[Dl,Wl]],[v]:[3,Pe,[Dl,Wl,ql],e=>ie(Gl(...e))],InvalidCell:[3,Be],[b]:[0,We],[V]:[0,$e],[T]:[1,qe,[Kl],e=>ie(Ql(e[0]))],InvalidValue:[1,De]},(([e,l,t,n],s)=>{it["add"+s+"Listener"]=(...s)=>Ke(s[e],l[s[e+1]?1:0],e>0?L(s,0,e):void 0,t,n)})),j(it)};e.createStore=Se},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),s=t(!0),o=t(0),r=t(t),i="type",a="default",d="Listener",c="Result",u="add",v="Ids",h="Table",f=h+"s",g=h+v,L="Row",y=L+v,p="Sorted"+L+v,S="Cell",T=S+v,w="Value",I=w+"s",R=w+v,C=e=>n+e,b=(e,t)=>e.includes(t),m=(e,t)=>e.every(t),V=(e,t)=>J(e)===J(t)&&m(e,((e,n)=>t[n]===e)),E=(e,t)=>m(e,((n,l)=>0==l||t(e[l-1],n)<=0)),k=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),M=(e,t)=>e.map(t),D=e=>O(e,((e,t)=>e+t),0),J=e=>e.length,A=e=>0==J(e),O=(e,t,n)=>e.reduce(t,n),F=(e,t,n)=>e.slice(t,n),P=(e,...t)=>e.push(...t),j=e=>e.pop(),Q=e=>e.shift(),z=e=>JSON.stringify(e,((e,t)=>q(t,Map)?O([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),N=JSON.parse,B=Math.max,W=Math.min,$=isFinite,q=(e,t)=>e instanceof t,G=e=>null==e,H=(e,t,n)=>G(e)?null==n?void 0:n():t(e),K=e=>e==l||e==s,U=e=>t(e)==r,X=e=>Array.isArray(e),Y=()=>{},Z=Object,_=Z.keys,ee=Z.isFrozen,te=Z.freeze,ne=e=>q(e,Z)&&e.constructor==Z,le=(e,t)=>!G(((e,t)=>H(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),oe=(e,t)=>M(Z.entries(e),(([e,n])=>t(n,e))),re=e=>ne(e)&&0==(e=>J(_(e)))(e),ie=e=>e.size,ae=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},de=e=>G(e)||0==ie(e),ce=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ue=e=>e.clear(),ve=(e,t)=>null==e?void 0:e.forEach(t),he=(e,t)=>null==e?void 0:e.delete(t),fe=e=>new Map(e),ge=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},Le=(e,t)=>null==e?void 0:e.get(t),ye=(e,t)=>ve(e,((e,n)=>t(n,e))),pe=(e,t,n)=>G(n)?(he(e,t),e):null==e?void 0:e.set(t,n),Se=(e,t,n)=>(ae(e,t)||pe(e,t,n()),Le(e,t)),Te=(e,t,n,l=pe)=>(oe(t,((t,l)=>n(e,l,t))),ye(e,(n=>le(t,n)?0:l(e,n))),e),we=(e,t,n)=>{const l={};return ve(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Ie=(e,t,n)=>we(e,(e=>we(e,t,n)),re),Re=(e,t,n)=>we(e,(e=>Ie(e,t,n)),re),Ce=(e,t)=>{const n=fe();return ve(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},be=e=>Ce(e,Ce),me=e=>Ce(e,be),Ve=(e,t,n,l,s=0)=>H((n?Se:Le)(e,t[s],s>J(t)-2?n:fe),(o=>{if(s>J(t)-2)return(null==l?void 0:l(o))&&pe(e,t[s]),o;const r=Ve(o,t,n,l,s+1);return de(o)&&pe(e,t[s]),r})),Ee=e=>{const n=t(e);return K(n)||n==o&&$(e)?n:void 0},ke=(e,t,n,l,s)=>G(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),xe=(e,t,n)=>G(n)?e.delValue(t):e.setValue(t,n),Me=e=>new Set(X(e)||G(e)?e:[e]),De=(e,t)=>null==e?void 0:e.add(t),Je=(e,t,n)=>{const l=e.hasRow,s=fe(),o=fe(),r=fe(),i=fe(),a=fe(),d=(t,n,...l)=>{const s=Se(a,t,Me);return x(l,(t=>De(s,t)&&n&&e.callListener(t))),l},c=(t,...n)=>H(Le(a,t),(l=>{x(A(n)?ce(l):n,(t=>{e.delListener(t),he(l,t)})),de(l)&&pe(a,t)})),u=(e,n)=>{pe(s,e,n),ae(o,e)||(pe(o,e,t()),pe(r,e,fe()),pe(i,e,fe()))},v=e=>{pe(s,e),pe(o,e),pe(r,e),pe(i,e),c(e)};return[()=>e,()=>ge(s),e=>ye(o,e),e=>ae(o,e),e=>Le(s,e),e=>Le(o,e),(e,t)=>pe(o,e,t),u,(t,s,o,a,v)=>{u(t,s);const h=fe(),f=fe(),g=Le(r,t),L=Le(i,t),y=t=>{const o=n=>e.getCell(s,t,n),r=Le(g,t),i=l(s,t)?n(a(o,t)):void 0;if(r===i||X(r)&&X(i)&&V(r,i)||pe(h,t,[r,i]),!G(v)){const e=Le(L,t),n=l(s,t)?v(o,t):void 0;e!=n&&pe(f,t,n)}},p=e=>{o((()=>{ve(h,(([,e],t)=>pe(g,t,e))),ve(f,((e,t)=>pe(L,t,e)))}),h,f,g,L,e),ue(h),ue(f)};ye(g,y),e.hasTable(s)&&x(e.getRowIds(s),(e=>{ae(g,e)||y(e)})),p(!0),c(t),d(t,0,e.addRowListener(s,null,((e,t,n)=>y(n))),e.addTableListener(s,(()=>p())))},v,()=>ye(a,v),d,c]},Ae=(e,s)=>t(e)==l?t=>t(e):null!=e?e:()=>null!=s?s:n,Oe=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Fe=/^\d+$/,Pe=()=>{const e=[];let t=0;return[l=>{var s;return null!=(s=l?Q(e):null)?s:n+t++},t=>{Fe.test(t)&&J(e)<1e3&&P(e,t)}]},je=e=>{let t;const[l,s]=Pe(),o=fe();return[(s,r,i,a=[],d=(()=>[]))=>{null!=t||(t=e());const c=l(1);return pe(o,c,[s,r,i,a,d]),De(Ve(r,null!=i?i:[n],Me),c),c},(e,l,...s)=>x(((e,t=[n])=>{const l=[],s=(e,n)=>n==J(t)?P(l,e):null===t[n]?ve(e,(e=>s(e,n+1))):x([t[n],null],(t=>s(Le(e,t),n+1)));return s(e,0),l})(e,l),(e=>ve(e,(e=>Le(o,e)[0](t,...null!=l?l:[],...s))))),e=>H(Le(o,e),(([,t,l])=>(Ve(t,null!=l?l:[n],void 0,(t=>(he(t,e),de(t)?1:0))),pe(o,e),s(e),l))),e=>H(Le(o,e),(([e,,n=[],l,s])=>{const o=(...r)=>{var i,a;const d=J(r);d==J(n)?e(t,...r,...s(r)):G(n[d])?x(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,n[d])};o()}))]},Qe=Oe((e=>{let t,l,s,o=100,r=fe(),i=fe(),a=1;const d=fe(),c=fe(),[u,v,h]=je((()=>z)),f=fe(),g=fe(),L=[],y=[],p=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=Le(f,n);ve(l,((n,l)=>ve(n,((n,s)=>ve(n,((n,o)=>ke(e,l,s,o,n[t]))))))),ve(s,((n,l)=>xe(e,l,n[t])))})),a=1},S=e=>{pe(f,e),pe(g,e),v(c,[e])},T=(e,t)=>x(((e,t)=>e.splice(0,t))(e,null!=t?t:J(e)),S),w=()=>T(L,J(L)-o),I=()=>H(t,(()=>{P(L,t),w(),T(y),t=void 0,s=1})),R=()=>{t=j(L),s=1},C=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){I();const e=Se(r,t,fe),i=Se(e,n,fe),a=Se(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&de(pe(i,l))&&de(pe(e,n))&&de(pe(r,t))&&R(),M()}})),m=e.addValueListener(null,((e,t,n,l)=>{if(a){I();const e=Se(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&de(pe(i,t))&&R(),M()}})),V=(e="")=>(G(t)&&(t=n+l++,pe(f,t,[r,i]),O(t,e),r=fe(),i=fe(),s=1),t),E=()=>{A(L)||(((e,...t)=>{e.unshift(...t)})(y,V()),p(0,t),t=j(L),s=1)},k=()=>{A(y)||(P(L,t),t=Q(y),p(1,t),s=1)},M=()=>{s&&(v(d),s=0)},D=e=>{const t=V(e);return M(),t},O=(e,t)=>(F(e)&&Le(g,e)!==t&&(pe(g,e,t),v(c,[e])),z),F=e=>ae(f,e),z={setSize:e=>(o=e,w(),z),addCheckpoint:D,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ye(g,e),hasCheckpoint:F,getCheckpoint:e=>Le(g,e),goBackward:()=>(E(),M(),z),goForward:()=>(k(),M(),z),goTo:e=>{const n=b(L,e)?E:b(y,e)?k:null;for(;!G(n)&&e!=t;)n();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(T(L),T(y),G(t)||S(t),t=void 0,l=0,D(),z),destroy:()=>{e.delListener(C),e.delListener(m)},getListenerStats:()=>({})};return te(z.clear())})),ze=(e,t)=>e<t?-1:1,Ne=Oe((e=>{const t=fe(),l=fe(),[s,o,r,i,a,d,c,,u,v,h]=Je(e,fe,(e=>G(e)?n:X(e)?M(e,C):C(e))),[f,g,L]=je((()=>p)),y=(t,n,l)=>{const s=a(t);ve(l,((t,l)=>n(l,(n=>ve(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},p={setIndexDefinition:(e,n,s,o,r,i=ze)=>{const a=G(r)?void 0:([e],[t])=>r(e,t);return u(e,n,((n,s,r,u,v,h)=>{let f=0;const L=Me(),y=Me(),p=d(e);if(ve(s,(([e,t],n)=>{const l=Me(e),s=Me(t);ve(l,(e=>he(s,e)?he(l,e):0)),ve(l,(e=>{De(L,e),H(Le(p,e),(t=>{he(t,n),de(t)&&(pe(p,e),f=1)}))})),ve(s,(e=>{De(L,e),ae(p,e)||(pe(p,e,Me()),f=1),De(Le(p,e),n),G(o)||De(y,e)}))})),n(),de(v)||(h?ye(p,(e=>De(y,e))):ye(r,(e=>H(Le(u,e),(e=>De(y,e))))),ve(y,(e=>{const t=(t,n)=>i(Le(v,t),Le(v,n),e),n=[...Le(p,e)];E(n,t)||(pe(p,e,Me(k(n,t))),De(L,e))}))),(f||h)&&!G(a)){const t=[...p];E(t,a)||(c(e,fe(k(t,a))),f=1)}f&&g(t,[e]),ve(L,(t=>g(l,[e,t])))}),Ae(s),H(o,Ae)),p},delIndexDefinition:e=>(v(e),p),getStore:s,getIndexIds:o,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ae(d(e),t),getTableId:a,getSliceIds:e=>ge(d(e)),getSliceRowIds:(e,t)=>ce(Le(d(e),t)),addSliceIdsListener:(e,n)=>f(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),p),destroy:h,getListenerStats:()=>({})};return te(p)})),Be=fe([["avg",[(e,t)=>D(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>B(...e),(e,t)=>B(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:B(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>D(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,s,o=!1)=>{if(de(n))return;const[r,i,a,d]=s;return o||(o=G(e)),ve(l,(([n,l])=>{o||(e=G(n)?null==i?void 0:i(e,l,t++):G(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=G(e)))})),o?r(ce(n),ie(n)):e},$e=Oe((e=>{const t=fe(),[l,s,o,r,i,a,d,,c,u,v]=Je(e,Y,(e=>isNaN(e)||G(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,f,g]=je((()=>L)),L={setMetricDefinition:(e,n,l,s,o,r,i)=>{var u;const v=U(l)?[l,o,r,i]:null!=(u=Le(Be,l))?u:Le(Be,"sum");return c(e,n,((n,l,s,o,r,i)=>{const c=a(e),u=ie(o);i||(i=G(c)),n();let h=We(c,u,o,l,v,i);$(h)||(h=void 0),h!=c&&(d(e,h),f(t,[e],h,c))}),Ae(s,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:s,forEachMetric:o,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,n)=>h(n,t,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return te(L)}));var qe=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())})),Ge=Object.getOwnPropertySymbols,He=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;const Ue=Oe((e=>{const t=e.createStore,[l,s,o,r,i,,,a,,v,f,g,w]=Je(e,(()=>!0),Y),I=t(),R=t(),C=fe(),b=(e,t,...n)=>x(n,(n=>De(Se(Se(C,t,fe),e,Me),n))),V=e=>{H(Le(C,e),(e=>{ye(e,((e,t)=>ve(t,(t=>e.delListener(t))))),ue(e)})),x([R,I],(t=>t.delTable(e)))},E=(e,t,n)=>b(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),k={setQueryDefinition:(t,l,s)=>{a(t,l),V(t);const o=[],r=[[null,[l,null,null,[],fe()]]],i=[],d=[],c=[];s({select:(e,t)=>{const l=U(e)?[J(o)+n,e]:[G(t)?e:t,n=>n(e,t)];return P(o,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=G(n)||U(t)?null:t,s=G(l)?t:n,o=[e,[e,l,U(s)?s:e=>e(s),[],fe()]];return P(r,o),{as:e=>o[0]=e}},where:(e,t,n)=>P(i,U(e)?e:G(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,U(t)?[t,n,l,s]:null!=(o=Le(Be,t))?o:[(e,t)=>t]]];return P(d,r),{as:e=>r[0]=e}},having:(e,t)=>P(c,U(e)?e:n=>n(e)===t)});const u=fe(o);if(de(u))return k;const v=fe(r);ye(v,((e,[,t])=>H(Le(v,t),(({3:t})=>G(e)?0:P(t,e)))));const h=fe(d);let f=I;if(de(h)&&A(c))f=R;else{E(t,f,R);const e=fe();ye(h,((t,[n,l])=>De(Se(e,n,Me),[t,l])));const n=Me();ye(u,(t=>ae(e,t)?0:De(n,t)));const l=fe(),s=(n,l,s,o)=>H(n,(([r,i,a,d])=>{ye(l,((t,[n])=>{const l=Se(r,t,fe),i=Le(l,s),a=o?void 0:n;if(i!==a){const n=Me([[i,a]]),o=ie(l);pe(l,s,a),ve(Le(e,t),(([e,t])=>{const s=We(d[e],o,l,n,t);d[e]=G(Ee(s))?null:s}))}})),de(i)||!m(c,(e=>e((e=>d[e]))))?R.delRow(t,a):G(a)?n[2]=R.addRow(t,d):R.setRow(t,a,d)}));b(f,t,f.addRowListener(t,null,((o,r,i,a)=>{const d=[],c=[],u=fe(),v=f.hasRow(t,i);let h=!v;ve(n,(e=>{const[n,l,s]=a(t,i,e);P(d,l),P(c,s),h||(h=n)})),ye(e,(e=>{const[n,,l]=a(t,i,e);(h||n)&&pe(u,e,[l])})),h&&s(Ve(l,d,void 0,(([,e])=>(he(e,i),de(e)))),u,i,1),v&&s(Ve(l,c,(()=>{const e={};return ve(n,(n=>e[n]=f.getCell(t,i,n))),[fe(),Me(),void 0,e]}),(([,e])=>{De(e,i)})),u,i)})))}E(t,e,f);const L=(n,s,o,r)=>{const a=t=>e.getCell(s,o,t);x(r,(l=>{var s;const[o,,r,i,d]=Le(v,l),c=null==r?void 0:r(a,n),[u,h]=null!=(s=Le(d,n))?s:[];c!=u&&(G(h)||w(t,h),pe(d,n,G(c)?null:[c,...g(t,1,e.addRowListener(o,c,(()=>L(n,o,c,i))))]))})),(n=>{const s=(t,s)=>{var o,r,i;return e.getCell(...G(s)?[l,n,t]:t===l?[l,n,s]:[null==(o=Le(v,t))?void 0:o[0],null==(i=Le(null==(r=Le(v,t))?void 0:r[4],n))?void 0:i[0],s])};f.transaction((()=>m(i,(e=>e(s)))?ye(u,((e,l)=>ke(f,t,n,e,l(s,n)))):f.delRow(t,n)))})(n)},{3:y}=Le(v,null);return f.transaction((()=>g(t,1,e.addRowListener(l,null,((n,s,o)=>{e.hasRow(l,o)?L(o,l,o,y):(f.delRow(t,o),ve(v,(({4:e})=>H(Le(e,o),(([,n])=>{w(t,n),pe(e,o)})))))}))))),k},delQueryDefinition:e=>(V(e),v(e),k),getStore:l,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:i,delListener:e=>(R.delListener(e),k),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)He.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ge)for(var l of Ge(e))t.indexOf(l)<0&&Ke.call(e,l)&&(n[l]=e[l]);return n})(R.getListenerStats(),["tables","tableIds","transaction"])};return oe({[h]:[1,1],[y]:[0,1],[p]:[0,5],[L]:[1,2],[T]:[0,2],[S]:[1,3]},(([e,t],n)=>{x(e?["get","has","forEach"]:["get"],(e=>k[e+c+n]=(...t)=>R[e+n](...t))),k[u+c+n+d]=(...e)=>R[u+n+d](...F(e,0,t),((n,...l)=>e[t](k,...l)))})),te(k)})),Xe=Oe((e=>{const t=fe(),l=fe(),s=fe(),o=fe(),[r,i,a,d,c,u,,,v,h,f]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>G(e)?void 0:e+n)),[g,L,y]=je((()=>w)),p=(e,t,n)=>H(u(e),(([l,,s])=>{if(!ae(s,t)){const o=Me();if(c(e)!=T(e))De(o,t);else{let e=t;for(;!G(e)&&!ae(o,e);)De(o,e),e=Le(l,e)}if(n)return o;pe(s,t,o)}return Le(s,t)})),S=(e,t)=>H(u(e),(([,,e])=>pe(e,t))),T=e=>Le(t,e),w={setRelationshipDefinition:(e,n,r,i)=>(pe(t,e,r),v(e,n,((t,n)=>{const r=Me(),i=Me(),a=Me(),[d,c]=u(e);ve(n,(([t,n],l)=>{G(t)||(De(i,t),H(Le(c,t),(e=>{he(e,l),de(e)&&pe(c,t)}))),G(n)||(De(i,n),ae(c,n)||pe(c,n,Me()),De(Le(c,n),l)),De(r,l),pe(d,l,n),ye(Le(o,e),(t=>{ae(p(e,t),l)&&De(a,t)}))})),t(),ve(r,(t=>L(l,[e,t]))),ve(i,(t=>L(s,[e,t]))),ve(a,(t=>{S(e,t),L(o,[e,t])}))}),Ae(i)),w),delRelationshipDefinition:e=>(pe(t,e),h(e),w),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:T,getRemoteRowId:(e,t)=>{var n;return Le(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return ce(Le(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>G(u(e))?[t]:ce(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),g(n,o,[e,t])),delListener:e=>(S(...y(e)),w),destroy:f,getListenerStats:()=>({})};return te(w)})),Ye=e=>[e,e],Ze=()=>[fe(),fe()],_e=e=>[...e],et=([e,t])=>e===t,tt=(e,t,n)=>G(e)||!ne(e)||re(e)||ee(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||se(e,l)})),!re(e)),nt=(e,t,n)=>pe(e,t,Le(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const r=fe(),c=fe(),v=fe(),p=fe(),m=fe(),E=fe(),D=fe(),J=fe(),A=fe(),O=fe(),j=fe(),Q=fe(),B=fe(),W=Me(),$=fe(),q=fe(),X=fe(),Y=fe(),Z=Ze(),_=Ze(),ee=Ze(),ne=Ze(),ie=Ze(),ce=Ze(),Ve=Ze(),Je=Ze(),Ae=Ze(),Oe=Ze(),Fe=Ze(),Qe=Ze(),Ne=Ze(),Be=Ze(),We=fe(),$e=Ze(),[qe,Ge,He,Ke]=je((()=>gn)),Ue=e=>{if(!tt(e,((e,t)=>b([i,a],t))))return!1;const t=e[i];return!(!K(t)&&t!=o||(Ee(e[a])!=t&&se(e,a),0))},Xe=(t,n)=>(!e||ae(O,n)||Jt(n))&&tt(t,((e,t)=>st(n,t,e)),(()=>Jt(n))),st=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,s)=>H(ot(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,n,l,s)=>e?H(Le(Le(O,t),l),(e=>Ee(s)!=e[i]?Jt(t,n,l,s,e[a]):s),(()=>Jt(t,n,l,s))):G(Ee(s))?Jt(t,n,l,s):s,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>H(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?H(Le(Q,e),(t=>Ee(n)!=t[i]?At(e,n,t[a]):n),(()=>At(e,n))):G(Ee(n))?At(e,n):n,at=(e,t,n)=>(H(Le(j,t),(([l,s])=>{ve(l,((t,n)=>{le(e,n)||(e[n]=t)})),ve(s,(l=>{le(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ve(B,((t,n)=>{le(e,n)||(e[n]=t)})),ve(W,(t=>{le(e,t)||At(t)}))),e),ct=e=>Te(O,e,((e,t,n)=>{const l=fe(),s=Me();Te(Se(O,t,fe),n,((e,t,n)=>{pe(e,t,n),H(n[a],(e=>pe(l,t,e)),(()=>De(s,t)))})),pe(j,t,[l,s])}),((e,t)=>{pe(O,t),pe(j,t)})),ut=e=>Te(Q,e,((e,t,n)=>{pe(Q,t,n),H(n[a],(e=>pe(B,t,e)),(()=>De(W,t)))}),((e,t)=>{pe(Q,t),pe(B,t),he(W,t)})),vt=e=>re(e)?on():en(e),ht=e=>Te(X,e,((e,t,n)=>ft(t,n)),((e,t)=>Rt(t))),ft=(e,t)=>Te(Se(X,e,(()=>(Vt(e,1),pe($,e,Pe()),pe(q,e,fe()),fe()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,s)=>Te(Se(t,n,(()=>(Et(e,n,1),fe()))),l,((t,l,s)=>Lt(e,n,t,l,s)),((l,o)=>bt(e,t,n,l,o,s))),Lt=(e,t,n,l,s)=>{ae(n,l)||kt(e,t,l,1);const o=Le(n,l);s!==o&&(xt(e,t,l,o,s),pe(n,l,s))},yt=(e,t,n,l,s)=>H(Le(t,n),(t=>Lt(e,n,t,l,s)),(()=>gt(e,t,n,at({[l]:s},e,n)))),pt=e=>re(e)?dn():tn(e),St=e=>Te(Y,e,((e,t,n)=>Tt(t,n)),((e,t)=>mt(t))),Tt=(e,t)=>{ae(Y,e)||Mt(e,1);const n=Le(Y,e);t!==n&&(Dt(e,n,t),pe(Y,e,t))},wt=(e,t)=>{const[n]=Le($,e),l=n(t);return ae(Le(X,e),l)?wt(e,t):l},It=e=>{var t;return null!=(t=Le(X,e))?t:ft(e,{})},Rt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=Le($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,s,o)=>{var r;const i=Le(null==(r=Le(j,e))?void 0:r[0],s);if(!G(i)&&!o)return Lt(e,n,l,s,i);const a=t=>{xt(e,n,t,Le(l,t)),kt(e,n,t,-1),pe(l,t)};G(i)?a(s):ye(l,a),de(l)&&(Et(e,n,-1),de(pe(t,n))&&(Vt(e,-1),pe(X,e),pe($,e),pe(q,e)))},mt=e=>{const t=Le(B,e);if(!G(t))return Tt(e,t);Dt(e,Le(Y,e)),Mt(e,-1),pe(Y,e)},Vt=(e,t)=>nt(r,e,t),Et=(e,t,n)=>nt(Se(v,e,fe),t,n),kt=(e,t,n,l)=>{var s;const o=Le(q,e),r=null!=(s=Le(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&nt(Se(c,e,fe),n,l),pe(o,n,r!=-l?r+l:null),nt(Se(Se(p,e,fe),t,fe),n,l)},xt=(e,t,n,l,s)=>Se(Se(Se(m,e,fe),t,fe),n,(()=>[l,0]))[1]=s,Mt=(e,t)=>nt(E,e,t),Dt=(e,t,n)=>Se(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,s)=>(P(Se(Se(Se(J,e,fe),t,fe),n,(()=>[])),l),s),At=(e,t,n)=>(P(Se(A,e,(()=>[])),t),n),Ot=(e,t,n)=>H(Le(Le(Le(m,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(Xt(e,t,n))])),Ft=e=>H(Le(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(_t(e))])),Pt=e=>de(J)||de(Oe[e])?0:ve(e?me(J):J,((t,n)=>ve(t,((t,l)=>ve(t,((t,s)=>Ge(Oe[e],[n,l,s],t))))))),jt=e=>de(A)||de(Fe[e])?0:ve(e?Ce(A):A,((t,n)=>Ge(Fe[e],[n],t))),Qt=(e,t,n)=>{if(!de(t))return Ge(e,n,(()=>we(t))),1},zt=e=>{const t=de(ce[e]),n=de(Je[e])&&de(ne[e])&&de(ie[e])&&t&&de(_[e]),l=de(Ae[e])&&de(Ve[e])&&de(ee[e])&&de(Z[e]);if(!n||!l){const s=e?[Ce(r),be(c),be(v),me(p),me(m)]:[r,c,v,p,m];if(!n){Qt(_[e],s[0]),ve(s[1],((t,n)=>Qt(ne[e],t,[n])));const n=Me();ve(s[2],((l,s)=>{Qt(ie[e],l,[s])&&!t&&(Ge(ce[e],[s,null]),De(n,s))})),t||ve(s[4],((t,l)=>{if(!ae(n,l)){const n=Me();ve(t,(e=>ve(e,(([t,l],s)=>l!==t?De(n,s):he(e,s))))),ve(n,(t=>Ge(ce[e],[l,t])))}})),ve(s[3],((t,n)=>ve(t,((t,l)=>Qt(Je[e],t,[n,l])))))}if(!l){let t;ve(s[4],((n,l)=>{let s;ve(n,((n,o)=>{let r;ve(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,o,a],i,n,Ot),t=s=r=1)})),r&&Ge(Ve[e],[l,o],Ot)})),s&&Ge(ee[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=de(Ne[e]),n=de(Be[e])&&de(Qe[e]);if(!t||!n){const l=e?[Ce(E),Ce(D)]:[E,D];if(t||Qt(Ne[e],l[0]),!n){let t;ve(l[1],(([n,l],s)=>{l!==n&&(Ge(Be[e],[s],l,n,Ft),t=1)})),t&&Ge(Qe[e],void 0,Ft)}}},Bt=(e,...t)=>(vn((()=>e(...M(t,C)))),gn),Wt=()=>[we(m,((e,t)=>-1===Le(r,t)?null:we(e,((e,n)=>-1===Le(Le(v,t),n)?null:we(e,(([,e])=>null!=e?e:null),((e,t)=>et(t)))),re)),re),we(D,(([,e])=>null!=e?e:null),((e,t)=>et(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Re(m,_e,et),invalidCells:Re(J),changedValues:we(D,_e,et),invalidValues:we(A),changedTableIds:we(r),changedRowIds:Ie(v),changedCellIds:Re(p),changedValueIds:we(E)}),qt=()=>Re(X),Gt=()=>ge(X),Ht=e=>ge(Le(X,C(e))),Kt=(e,t,n,l=0,s)=>{return M(F(k((o=Le(X,C(e)),r=(e,n)=>[G(t)?n:Le(e,C(t)),n],M([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>ze(e,t)*(n?-1:1))),l,G(s)?s:l+s),(([,e])=>e));var o,r,i},Ut=(e,t)=>ge(Le(Le(X,C(e)),C(t))),Xt=(e,t,n)=>Le(Le(Le(X,C(e)),C(t)),C(n)),Yt=()=>we(Y),Zt=()=>ge(Y),_t=e=>Le(Y,C(e)),en=e=>Bt((()=>(e=>tt(e,Xe,Jt))(e)?ht(e):0)),tn=e=>Bt((()=>rt(e)?St(e):0)),nn=e=>{try{vt(N(e))}catch(e){}return gn},ln=t=>Bt((()=>{if((e=tt(t,(e=>tt(e,Ue))))&&(ct(t),!de(X))){const e=qt();on(),en(e)}})),sn=e=>Bt((()=>{if(t=(e=>tt(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),on=()=>Bt((()=>ht({}))),rn=e=>Bt((e=>ae(X,e)?Rt(e):0),e),an=(e,t)=>Bt(((e,t)=>H(Le(X,e),(n=>ae(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Bt((()=>St({}))),cn=()=>Bt((()=>{ct({}),e=!1})),un=()=>Bt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&Ge(We,void 0,Wt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!de(m),l=!de(D),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Wt,$t))&&(ve(m,((e,t)=>ve(e,((e,n)=>ve(e,(([e],l)=>ke(gn,t,n,l,e))))))),ve(D,(([e],t)=>xe(gn,t,e))),n=l=!1),Ge($e[0],void 0,Wt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),Ge($e[1],void 0,Wt,$t),s=0,n=l=!1,x([r,c,v,p,m,J,E,D,A],ue))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Ie(Le(X,C(e))),getTableCellIds:e=>ge(Le(q,C(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>we(Le(Le(X,C(e)),C(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!de(X),hasTable:e=>ae(X,C(e)),hasTableCell:(e,t)=>ae(Le(q,C(e)),C(t)),hasRow:(e,t)=>ae(Le(X,C(e)),C(t)),hasCell:(e,t,n)=>ae(Le(Le(X,C(e)),C(t)),C(n)),hasValues:()=>!de(Y),hasValue:e=>ae(Y,C(e)),getTablesJson:()=>z(X),getValuesJson:()=>z(Y),getJson:()=>z([X,Y]),getTablesSchemaJson:()=>z(O),getValuesSchemaJson:()=>z(Q),getSchemaJson:()=>z([O,Q]),setContent:([e,t])=>Bt((()=>{(re(e)?on:en)(e),(re(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Bt((e=>Xe(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Bt(((e,t)=>st(e,t,n)?gt(e,It(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return st(e,l,t)&&(e=C(e),gt(e,It(e),l=wt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Bt(((e,t)=>{if(st(e,t,n,1)){const l=It(e);oe(n,((n,s)=>yt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>Bt(((e,t,n)=>H(ot(e,t,n,U(l)?l(Xt(e,t,n)):l),(l=>yt(e,It(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Bt((()=>rt(e,1)?oe(e,((e,t)=>Tt(t,e))):0)),setValue:(e,t)=>Bt((e=>H(it(e,U(t)?t(_t(e)):t),(t=>Tt(e,t)))),e),setTransactionChanges:e=>Bt((()=>{oe(e[0],((e,t)=>G(e)?rn(t):oe(e,((e,n)=>G(e)?an(t,n):oe(e,((e,l)=>ke(gn,t,n,l,e))))))),oe(e[1],((e,t)=>xe(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{pt(N(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=N(e);vt(t),pt(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:sn,setSchema:(e,t)=>Bt((()=>{ln(e),sn(t)})),delTables:on,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Bt(((e,t,n)=>H(Le(X,e),(s=>H(Le(s,t),(o=>ae(o,n)?bt(e,s,t,o,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Bt((e=>ae(Y,e)?mt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Bt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ve(X,((t,n)=>e(n,(e=>ve(t,((t,n)=>e(n,(e=>ye(t,e))))))))),forEachTableCell:(e,t)=>ye(Le(q,C(e)),t),forEachRow:(e,t)=>ve(Le(X,C(e)),((e,n)=>t(n,(t=>ye(e,t))))),forEachCell:(e,t,n)=>ye(Le(Le(X,C(e)),C(t)),n),forEachValue:e=>ye(Y,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=Kt(e,t,n,l,s);return qe((()=>{const r=Kt(e,t,n,l,s);V(r,i)||(i=r,o(gn,e,t,n,l,s,i))}),ce[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,We),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:lt};return oe({[f]:[0,Z],[g]:[0,_],[h]:[1,ee,[Gt]],[h+T]:[1,ne,[Gt]],[y]:[1,ie,[Gt]],[L]:[2,Ve,[Gt,Ht]],[T]:[2,Je,[Gt,Ht]],[S]:[3,Ae,[Gt,Ht,Ut],e=>Ye(Xt(...e))],InvalidCell:[3,Oe],[I]:[0,Qe],[R]:[0,Ne],[w]:[1,Be,[Zt],e=>Ye(_t(e[0]))],InvalidValue:[1,Fe]},(([e,t,n,l],s)=>{gn[u+s+d]=(...s)=>qe(s[e],t[s[e+1]?1:0],e>0?F(s,0,e):void 0,n,l)})),te(gn)};e.createCheckpoints=Qe,e.createCustomPersister=(e,t,n,l,s)=>{let o,r,i,a=0,d=0,c=0;const u=[],v=e=>qe(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>qe(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>qe(void 0,null,(function*(){return yield v((()=>qe(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>qe(void 0,[...n],(function*(n={},s={}){return h.stopAutoLoad(),yield h.load(n,s),c=1,i=l(((n,l)=>qe(void 0,null,(function*(){return yield v((()=>qe(void 0,null,(function*(){var s;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(s=null==n?void 0:n())?s:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(s(i),i=void 0,c=0),h),save:t=>qe(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>qe(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>qe(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();re(n)&&re(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(H(o,e.delListener),h),schedule:(...e)=>qe(void 0,null,(function*(){return P(u,...e),yield qe(void 0,null,(function*(){if(!d){for(d=1;!G(r=Q(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return te(h)},e.createIndexes=Ne,e.createMetrics=$e,e.createQueries=Ue,e.createRelationships=Xe,e.createStore=lt,e.defaultSorter=ze},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),s=t(!0),o=t(0),r=t(t),i="type",a="default",d="Listener",c="Result",u="add",v="Ids",h="Table",f=h+"s",g=h+v,L="Row",y=L+v,p="Sorted"+L+v,S="Cell",T=S+v,w="Value",I=w+"s",R=w+v,C=e=>n+e,b=Math.max,m=Math.min,V=isFinite,E=(e,t)=>e instanceof t,k=e=>null==e,x=(e,t,n)=>k(e)?null==n?void 0:n():t(e),M=e=>e==l||e==s,D=e=>t(e)==r,J=e=>Array.isArray(e),A=()=>{},O=(e,t)=>e.includes(t),F=(e,t)=>e.every(t),P=(e,t)=>W(e)===W(t)&&F(e,((e,n)=>t[n]===e)),j=(e,t)=>F(e,((n,l)=>0==l||t(e[l-1],n)<=0)),Q=(e,t)=>e.sort(t),z=(e,t)=>e.forEach(t),N=(e,t)=>e.map(t),B=e=>q(e,((e,t)=>e+t),0),W=e=>e.length,$=e=>0==W(e),q=(e,t,n)=>e.reduce(t,n),G=(e,t,n)=>e.slice(t,n),H=(e,...t)=>e.push(...t),K=e=>e.pop(),U=e=>e.shift(),X=Object,Y=X.keys,Z=X.isFrozen,_=X.freeze,ee=e=>E(e,X)&&e.constructor==X,te=(e,t)=>!k(((e,t)=>x(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),le=(e,t)=>N(X.entries(e),(([e,n])=>t(n,e))),se=e=>ee(e)&&0==(e=>W(Y(e)))(e),oe=e=>e.size,re=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ie=e=>k(e)||0==oe(e),ae=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},de=e=>e.clear(),ce=(e,t)=>null==e?void 0:e.forEach(t),ue=(e,t)=>null==e?void 0:e.delete(t),ve=e=>new Map(e),he=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},fe=(e,t)=>null==e?void 0:e.get(t),ge=(e,t)=>ce(e,((e,n)=>t(n,e))),Le=(e,t,n)=>k(n)?(ue(e,t),e):null==e?void 0:e.set(t,n),ye=(e,t,n)=>(re(e,t)||Le(e,t,n()),fe(e,t)),pe=(e,t,n,l=Le)=>(le(t,((t,l)=>n(e,l,t))),ge(e,(n=>te(t,n)?0:l(e,n))),e),Se=(e,t,n)=>{const l={};return ce(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Te=(e,t,n)=>Se(e,(e=>Se(e,t,n)),se),we=(e,t,n)=>Se(e,(e=>Te(e,t,n)),se),Ie=(e,t)=>{const n=ve();return ce(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},Re=e=>Ie(e,Ie),Ce=e=>Ie(e,Re),be=(e,t,n,l,s=0)=>x((n?ye:fe)(e,t[s],s>W(t)-2?n:ve),(o=>{if(s>W(t)-2)return(null==l?void 0:l(o))&&Le(e,t[s]),o;const r=be(o,t,n,l,s+1);return ie(o)&&Le(e,t[s]),r})),me=e=>{const n=t(e);return M(n)||n==o&&V(e)?n:void 0},Ve=(e,t,n,l,s)=>k(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),Ee=(e,t,n)=>k(n)?e.delValue(t):e.setValue(t,n),ke=e=>new Set(J(e)||k(e)?e:[e]),xe=(e,t)=>null==e?void 0:e.add(t),Me=(e,t,n)=>{const l=e.hasRow,s=ve(),o=ve(),r=ve(),i=ve(),a=ve(),d=(t,n,...l)=>{const s=ye(a,t,ke);return z(l,(t=>xe(s,t)&&n&&e.callListener(t))),l},c=(t,...n)=>x(fe(a,t),(l=>{z($(n)?ae(l):n,(t=>{e.delListener(t),ue(l,t)})),ie(l)&&Le(a,t)})),u=(e,n)=>{Le(s,e,n),re(o,e)||(Le(o,e,t()),Le(r,e,ve()),Le(i,e,ve()))},v=e=>{Le(s,e),Le(o,e),Le(r,e),Le(i,e),c(e)};return[()=>e,()=>he(s),e=>ge(o,e),e=>re(o,e),e=>fe(s,e),e=>fe(o,e),(e,t)=>Le(o,e,t),u,(t,s,o,a,v)=>{u(t,s);const h=ve(),f=ve(),g=fe(r,t),L=fe(i,t),y=t=>{const o=n=>e.getCell(s,t,n),r=fe(g,t),i=l(s,t)?n(a(o,t)):void 0;if(r===i||J(r)&&J(i)&&P(r,i)||Le(h,t,[r,i]),!k(v)){const e=fe(L,t),n=l(s,t)?v(o,t):void 0;e!=n&&Le(f,t,n)}},p=e=>{o((()=>{ce(h,(([,e],t)=>Le(g,t,e))),ce(f,((e,t)=>Le(L,t,e)))}),h,f,g,L,e),de(h),de(f)};ge(g,y),e.hasTable(s)&&z(e.getRowIds(s),(e=>{re(g,e)||y(e)})),p(!0),c(t),d(t,0,e.addRowListener(s,null,((e,t,n)=>y(n))),e.addTableListener(s,(()=>p())))},v,()=>ge(a,v),d,c]},De=(e,s)=>t(e)==l?t=>t(e):null!=e?e:()=>null!=s?s:n,Je=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Ae=/^\d+$/,Oe=()=>{const e=[];let t=0;return[l=>{var s;return null!=(s=l?U(e):null)?s:n+t++},t=>{Ae.test(t)&&W(e)<1e3&&H(e,t)}]},Fe=e=>{let t;const[l,s]=Oe(),o=ve();return[(s,r,i,a=[],d=(()=>[]))=>{null!=t||(t=e());const c=l(1);return Le(o,c,[s,r,i,a,d]),xe(be(r,null!=i?i:[n],ke),c),c},(e,l,...s)=>z(((e,t=[n])=>{const l=[],s=(e,n)=>n==W(t)?H(l,e):null===t[n]?ce(e,(e=>s(e,n+1))):z([t[n],null],(t=>s(fe(e,t),n+1)));return s(e,0),l})(e,l),(e=>ce(e,(e=>fe(o,e)[0](t,...null!=l?l:[],...s))))),e=>x(fe(o,e),(([,t,l])=>(be(t,null!=l?l:[n],void 0,(t=>(ue(t,e),ie(t)?1:0))),Le(o,e),s(e),l))),e=>x(fe(o,e),(([e,,n=[],l,s])=>{const o=(...r)=>{var i,a;const d=W(r);d==W(n)?e(t,...r,...s(r)):k(n[d])?z(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,n[d])};o()}))]},Pe=Je((e=>{let t,l,s,o=100,r=ve(),i=ve(),a=1;const d=ve(),c=ve(),[u,v,h]=Fe((()=>F)),f=ve(),g=ve(),L=[],y=[],p=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=fe(f,n);ce(l,((n,l)=>ce(n,((n,s)=>ce(n,((n,o)=>Ve(e,l,s,o,n[t]))))))),ce(s,((n,l)=>Ee(e,l,n[t])))})),a=1},S=e=>{Le(f,e),Le(g,e),v(c,[e])},T=(e,t)=>z(((e,t)=>e.splice(0,t))(e,null!=t?t:W(e)),S),w=()=>T(L,W(L)-o),I=()=>x(t,(()=>{H(L,t),w(),T(y),t=void 0,s=1})),R=()=>{t=K(L),s=1},C=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){I();const e=ye(r,t,ve),i=ye(e,n,ve),a=ye(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&ie(Le(i,l))&&ie(Le(e,n))&&ie(Le(r,t))&&R(),M()}})),b=e.addValueListener(null,((e,t,n,l)=>{if(a){I();const e=ye(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ie(Le(i,t))&&R(),M()}})),m=(e="")=>(k(t)&&(t=n+l++,Le(f,t,[r,i]),J(t,e),r=ve(),i=ve(),s=1),t),V=()=>{$(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),p(0,t),t=K(L),s=1)},E=()=>{$(y)||(H(L,t),t=U(y),p(1,t),s=1)},M=()=>{s&&(v(d),s=0)},D=e=>{const t=m(e);return M(),t},J=(e,t)=>(A(e)&&fe(g,e)!==t&&(Le(g,e,t),v(c,[e])),F),A=e=>re(f,e),F={setSize:e=>(o=e,w(),F),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ge(g,e),hasCheckpoint:A,getCheckpoint:e=>fe(g,e),goBackward:()=>(V(),M(),F),goForward:()=>(E(),M(),F),goTo:e=>{const n=O(L,e)?V:O(y,e)?E:null;for(;!k(n)&&e!=t;)n();return M(),F},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),F),clear:()=>(T(L),T(y),k(t)||S(t),t=void 0,l=0,D(),F),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return _(F.clear())})),je=(e,t)=>e<t?-1:1,Qe=Je((e=>{const t=ve(),l=ve(),[s,o,r,i,a,d,c,,u,v,h]=Me(e,ve,(e=>k(e)?n:J(e)?N(e,C):C(e))),[f,g,L]=Fe((()=>p)),y=(t,n,l)=>{const s=a(t);ce(l,((t,l)=>n(l,(n=>ce(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},p={setIndexDefinition:(e,n,s,o,r,i=je)=>{const a=k(r)?void 0:([e],[t])=>r(e,t);return u(e,n,((n,s,r,u,v,h)=>{let f=0;const L=ke(),y=ke(),p=d(e);if(ce(s,(([e,t],n)=>{const l=ke(e),s=ke(t);ce(l,(e=>ue(s,e)?ue(l,e):0)),ce(l,(e=>{xe(L,e),x(fe(p,e),(t=>{ue(t,n),ie(t)&&(Le(p,e),f=1)}))})),ce(s,(e=>{xe(L,e),re(p,e)||(Le(p,e,ke()),f=1),xe(fe(p,e),n),k(o)||xe(y,e)}))})),n(),ie(v)||(h?ge(p,(e=>xe(y,e))):ge(r,(e=>x(fe(u,e),(e=>xe(y,e))))),ce(y,(e=>{const t=(t,n)=>i(fe(v,t),fe(v,n),e),n=[...fe(p,e)];j(n,t)||(Le(p,e,ke(Q(n,t))),xe(L,e))}))),(f||h)&&!k(a)){const t=[...p];j(t,a)||(c(e,ve(Q(t,a))),f=1)}f&&g(t,[e]),ce(L,(t=>g(l,[e,t])))}),De(s),x(o,De)),p},delIndexDefinition:e=>(v(e),p),getStore:s,getIndexIds:o,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>re(d(e),t),getTableId:a,getSliceIds:e=>he(d(e)),getSliceRowIds:(e,t)=>ae(fe(d(e),t)),addSliceIdsListener:(e,n)=>f(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),p),destroy:h,getListenerStats:()=>({})};return _(p)})),ze=ve([["avg",[(e,t)=>B(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:m(t,e)]],["sum",[e=>B(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Ne=(e,t,n,l,s,o=!1)=>{if(ie(n))return;const[r,i,a,d]=s;return o||(o=k(e)),ce(l,(([n,l])=>{o||(e=k(n)?null==i?void 0:i(e,l,t++):k(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=k(e)))})),o?r(ae(n),oe(n)):e},Be=Je((e=>{const t=ve(),[l,s,o,r,i,a,d,,c,u,v]=Me(e,A,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,f,g]=Fe((()=>L)),L={setMetricDefinition:(e,n,l,s,o,r,i)=>{var u;const v=D(l)?[l,o,r,i]:null!=(u=fe(ze,l))?u:fe(ze,"sum");return c(e,n,((n,l,s,o,r,i)=>{const c=a(e),u=oe(o);i||(i=k(c)),n();let h=Ne(c,u,o,l,v,i);V(h)||(h=void 0),h!=c&&(d(e,h),f(t,[e],h,c))}),De(s,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:s,forEachMetric:o,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,n)=>h(n,t,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return _(L)}));var We=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())})),$e=Object.getOwnPropertySymbols,qe=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable;const He=Je((e=>{const t=e.createStore,[l,s,o,r,i,,,a,,v,f,g,w]=Me(e,(()=>!0),A),I=t(),R=t(),C=ve(),b=(e,t,...n)=>z(n,(n=>xe(ye(ye(C,t,ve),e,ke),n))),m=e=>{x(fe(C,e),(e=>{ge(e,((e,t)=>ce(t,(t=>e.delListener(t))))),de(e)})),z([R,I],(t=>t.delTable(e)))},V=(e,t,n)=>b(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),E={setQueryDefinition:(t,l,s)=>{a(t,l),m(t);const o=[],r=[[null,[l,null,null,[],ve()]]],i=[],d=[],c=[];s({select:(e,t)=>{const l=D(e)?[W(o)+n,e]:[k(t)?e:t,n=>n(e,t)];return H(o,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=k(n)||D(t)?null:t,s=k(l)?t:n,o=[e,[e,l,D(s)?s:e=>e(s),[],ve()]];return H(r,o),{as:e=>o[0]=e}},where:(e,t,n)=>H(i,D(e)?e:k(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,D(t)?[t,n,l,s]:null!=(o=fe(ze,t))?o:[(e,t)=>t]]];return H(d,r),{as:e=>r[0]=e}},having:(e,t)=>H(c,D(e)?e:n=>n(e)===t)});const u=ve(o);if(ie(u))return E;const v=ve(r);ge(v,((e,[,t])=>x(fe(v,t),(({3:t})=>k(e)?0:H(t,e)))));const h=ve(d);let f=I;if(ie(h)&&$(c))f=R;else{V(t,f,R);const e=ve();ge(h,((t,[n,l])=>xe(ye(e,n,ke),[t,l])));const n=ke();ge(u,(t=>re(e,t)?0:xe(n,t)));const l=ve(),s=(n,l,s,o)=>x(n,(([r,i,a,d])=>{ge(l,((t,[n])=>{const l=ye(r,t,ve),i=fe(l,s),a=o?void 0:n;if(i!==a){const n=ke([[i,a]]),o=oe(l);Le(l,s,a),ce(fe(e,t),(([e,t])=>{const s=Ne(d[e],o,l,n,t);d[e]=k(me(s))?null:s}))}})),ie(i)||!F(c,(e=>e((e=>d[e]))))?R.delRow(t,a):k(a)?n[2]=R.addRow(t,d):R.setRow(t,a,d)}));b(f,t,f.addRowListener(t,null,((o,r,i,a)=>{const d=[],c=[],u=ve(),v=f.hasRow(t,i);let h=!v;ce(n,(e=>{const[n,l,s]=a(t,i,e);H(d,l),H(c,s),h||(h=n)})),ge(e,(e=>{const[n,,l]=a(t,i,e);(h||n)&&Le(u,e,[l])})),h&&s(be(l,d,void 0,(([,e])=>(ue(e,i),ie(e)))),u,i,1),v&&s(be(l,c,(()=>{const e={};return ce(n,(n=>e[n]=f.getCell(t,i,n))),[ve(),ke(),void 0,e]}),(([,e])=>{xe(e,i)})),u,i)})))}V(t,e,f);const L=(n,s,o,r)=>{const a=t=>e.getCell(s,o,t);z(r,(l=>{var s;const[o,,r,i,d]=fe(v,l),c=null==r?void 0:r(a,n),[u,h]=null!=(s=fe(d,n))?s:[];c!=u&&(k(h)||w(t,h),Le(d,n,k(c)?null:[c,...g(t,1,e.addRowListener(o,c,(()=>L(n,o,c,i))))]))})),(n=>{const s=(t,s)=>{var o,r,i;return e.getCell(...k(s)?[l,n,t]:t===l?[l,n,s]:[null==(o=fe(v,t))?void 0:o[0],null==(i=fe(null==(r=fe(v,t))?void 0:r[4],n))?void 0:i[0],s])};f.transaction((()=>F(i,(e=>e(s)))?ge(u,((e,l)=>Ve(f,t,n,e,l(s,n)))):f.delRow(t,n)))})(n)},{3:y}=fe(v,null);return f.transaction((()=>g(t,1,e.addRowListener(l,null,((n,s,o)=>{e.hasRow(l,o)?L(o,l,o,y):(f.delRow(t,o),ce(v,(({4:e})=>x(fe(e,o),(([,n])=>{w(t,n),Le(e,o)})))))}))))),E},delQueryDefinition:e=>(m(e),v(e),E),getStore:l,getQueryIds:s,forEachQuery:o,hasQuery:r,getTableId:i,delListener:e=>(R.delListener(e),E),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)qe.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&$e)for(var l of $e(e))t.indexOf(l)<0&&Ge.call(e,l)&&(n[l]=e[l]);return n})(R.getListenerStats(),["tables","tableIds","transaction"])};return le({[h]:[1,1],[y]:[0,1],[p]:[0,5],[L]:[1,2],[T]:[0,2],[S]:[1,3]},(([e,t],n)=>{z(e?["get","has","forEach"]:["get"],(e=>E[e+c+n]=(...t)=>R[e+n](...t))),E[u+c+n+d]=(...e)=>R[u+n+d](...G(e,0,t),((n,...l)=>e[t](E,...l)))})),_(E)})),Ke=Je((e=>{const t=ve(),l=ve(),s=ve(),o=ve(),[r,i,a,d,c,u,,,v,h,f]=Me(e,(()=>[ve(),ve(),ve(),ve()]),(e=>k(e)?void 0:e+n)),[g,L,y]=Fe((()=>w)),p=(e,t,n)=>x(u(e),(([l,,s])=>{if(!re(s,t)){const o=ke();if(c(e)!=T(e))xe(o,t);else{let e=t;for(;!k(e)&&!re(o,e);)xe(o,e),e=fe(l,e)}if(n)return o;Le(s,t,o)}return fe(s,t)})),S=(e,t)=>x(u(e),(([,,e])=>Le(e,t))),T=e=>fe(t,e),w={setRelationshipDefinition:(e,n,r,i)=>(Le(t,e,r),v(e,n,((t,n)=>{const r=ke(),i=ke(),a=ke(),[d,c]=u(e);ce(n,(([t,n],l)=>{k(t)||(xe(i,t),x(fe(c,t),(e=>{ue(e,l),ie(e)&&Le(c,t)}))),k(n)||(xe(i,n),re(c,n)||Le(c,n,ke()),xe(fe(c,n),l)),xe(r,l),Le(d,l,n),ge(fe(o,e),(t=>{re(p(e,t),l)&&xe(a,t)}))})),t(),ce(r,(t=>L(l,[e,t]))),ce(i,(t=>L(s,[e,t]))),ce(a,(t=>{S(e,t),L(o,[e,t])}))}),De(i)),w),delRelationshipDefinition:e=>(Le(t,e),h(e),w),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:T,getRemoteRowId:(e,t)=>{var n;return fe(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return ae(fe(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>k(u(e))?[t]:ae(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),g(n,o,[e,t])),delListener:e=>(S(...y(e)),w),destroy:f,getListenerStats:()=>({})};return _(w)})),Ue=e=>[e,e],Xe=()=>[ve(),ve()],Ye=e=>[...e],Ze=([e,t])=>e===t,_e=e=>JSON.stringify(e,((e,t)=>E(t,Map)?X.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,n)=>k(e)||!ee(e)||se(e)||Z(e)?(null==n||n(),!1):(le(e,((n,l)=>{t(n,l)||ne(e,l)})),!se(e)),nt=(e,t,n)=>Le(e,t,fe(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const r=ve(),c=ve(),v=ve(),p=ve(),b=ve(),m=ve(),V=ve(),E=ve(),J=ve(),A=ve(),F=ve(),j=ve(),B=ve(),W=ke(),$=ve(),q=ve(),K=ve(),U=ve(),X=Xe(),Y=Xe(),Z=Xe(),ee=Xe(),oe=Xe(),ae=Xe(),be=Xe(),Me=Xe(),De=Xe(),Je=Xe(),Ae=Xe(),Pe=Xe(),Qe=Xe(),ze=Xe(),Ne=ve(),Be=Xe(),[We,$e,qe,Ge]=Fe((()=>gn)),He=e=>{if(!tt(e,((e,t)=>O([i,a],t))))return!1;const t=e[i];return!(!M(t)&&t!=o||(me(e[a])!=t&&ne(e,a),0))},Ke=(t,n)=>(!e||re(A,n)||Jt(n))&&tt(t,((e,t)=>st(n,t,e)),(()=>Jt(n))),st=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,s)=>x(ot(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Jt(e,t))),ot=(t,n,l,s)=>e?x(fe(fe(A,t),l),(e=>me(s)!=e[i]?Jt(t,n,l,s,e[a]):s),(()=>Jt(t,n,l,s))):k(me(s))?Jt(t,n,l,s):s,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>x(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?x(fe(j,e),(t=>me(n)!=t[i]?At(e,n,t[a]):n),(()=>At(e,n))):k(me(n))?At(e,n):n,at=(e,t,n)=>(x(fe(F,t),(([l,s])=>{ce(l,((t,n)=>{te(e,n)||(e[n]=t)})),ce(s,(l=>{te(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ce(B,((t,n)=>{te(e,n)||(e[n]=t)})),ce(W,(t=>{te(e,t)||At(t)}))),e),ct=e=>pe(A,e,((e,t,n)=>{const l=ve(),s=ke();pe(ye(A,t,ve),n,((e,t,n)=>{Le(e,t,n),x(n[a],(e=>Le(l,t,e)),(()=>xe(s,t)))})),Le(F,t,[l,s])}),((e,t)=>{Le(A,t),Le(F,t)})),ut=e=>pe(j,e,((e,t,n)=>{Le(j,t,n),x(n[a],(e=>Le(B,t,e)),(()=>xe(W,t)))}),((e,t)=>{Le(j,t),Le(B,t),ue(W,t)})),vt=e=>se(e)?on():en(e),ht=e=>pe(K,e,((e,t,n)=>ft(t,n)),((e,t)=>Rt(t))),ft=(e,t)=>pe(ye(K,e,(()=>(Vt(e,1),Le($,e,Oe()),Le(q,e,ve()),ve()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,s)=>pe(ye(t,n,(()=>(Et(e,n,1),ve()))),l,((t,l,s)=>Lt(e,n,t,l,s)),((l,o)=>bt(e,t,n,l,o,s))),Lt=(e,t,n,l,s)=>{re(n,l)||kt(e,t,l,1);const o=fe(n,l);s!==o&&(xt(e,t,l,o,s),Le(n,l,s))},yt=(e,t,n,l,s)=>x(fe(t,n),(t=>Lt(e,n,t,l,s)),(()=>gt(e,t,n,at({[l]:s},e,n)))),pt=e=>se(e)?dn():tn(e),St=e=>pe(U,e,((e,t,n)=>Tt(t,n)),((e,t)=>mt(t))),Tt=(e,t)=>{re(U,e)||Mt(e,1);const n=fe(U,e);t!==n&&(Dt(e,n,t),Le(U,e,t))},wt=(e,t)=>{const[n]=fe($,e),l=n(t);return re(fe(K,e),l)?wt(e,t):l},It=e=>{var t;return null!=(t=fe(K,e))?t:ft(e,{})},Rt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=fe($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,s,o)=>{var r;const i=fe(null==(r=fe(F,e))?void 0:r[0],s);if(!k(i)&&!o)return Lt(e,n,l,s,i);const a=t=>{xt(e,n,t,fe(l,t)),kt(e,n,t,-1),Le(l,t)};k(i)?a(s):ge(l,a),ie(l)&&(Et(e,n,-1),ie(Le(t,n))&&(Vt(e,-1),Le(K,e),Le($,e),Le(q,e)))},mt=e=>{const t=fe(B,e);if(!k(t))return Tt(e,t);Dt(e,fe(U,e)),Mt(e,-1),Le(U,e)},Vt=(e,t)=>nt(r,e,t),Et=(e,t,n)=>nt(ye(v,e,ve),t,n),kt=(e,t,n,l)=>{var s;const o=fe(q,e),r=null!=(s=fe(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&nt(ye(c,e,ve),n,l),Le(o,n,r!=-l?r+l:null),nt(ye(ye(p,e,ve),t,ve),n,l)},xt=(e,t,n,l,s)=>ye(ye(ye(b,e,ve),t,ve),n,(()=>[l,0]))[1]=s,Mt=(e,t)=>nt(m,e,t),Dt=(e,t,n)=>ye(V,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,s)=>(H(ye(ye(ye(E,e,ve),t,ve),n,(()=>[])),l),s),At=(e,t,n)=>(H(ye(J,e,(()=>[])),t),n),Ot=(e,t,n)=>x(fe(fe(fe(b,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Xt(e,t,n))])),Ft=e=>x(fe(V,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(_t(e))])),Pt=e=>ie(E)||ie(Je[e])?0:ce(e?Ce(E):E,((t,n)=>ce(t,((t,l)=>ce(t,((t,s)=>$e(Je[e],[n,l,s],t))))))),jt=e=>ie(J)||ie(Ae[e])?0:ce(e?Ie(J):J,((t,n)=>$e(Ae[e],[n],t))),Qt=(e,t,n)=>{if(!ie(t))return $e(e,n,(()=>Se(t))),1},zt=e=>{const t=ie(ae[e]),n=ie(Me[e])&&ie(ee[e])&&ie(oe[e])&&t&&ie(Y[e]),l=ie(De[e])&&ie(be[e])&&ie(Z[e])&&ie(X[e]);if(!n||!l){const s=e?[Ie(r),Re(c),Re(v),Ce(p),Ce(b)]:[r,c,v,p,b];if(!n){Qt(Y[e],s[0]),ce(s[1],((t,n)=>Qt(ee[e],t,[n])));const n=ke();ce(s[2],((l,s)=>{Qt(oe[e],l,[s])&&!t&&($e(ae[e],[s,null]),xe(n,s))})),t||ce(s[4],((t,l)=>{if(!re(n,l)){const n=ke();ce(t,(e=>ce(e,(([t,l],s)=>l!==t?xe(n,s):ue(e,s))))),ce(n,(t=>$e(ae[e],[l,t])))}})),ce(s[3],((t,n)=>ce(t,((t,l)=>Qt(Me[e],t,[n,l])))))}if(!l){let t;ce(s[4],((n,l)=>{let s;ce(n,((n,o)=>{let r;ce(n,(([n,i],a)=>{i!==n&&($e(De[e],[l,o,a],i,n,Ot),t=s=r=1)})),r&&$e(be[e],[l,o],Ot)})),s&&$e(Z[e],[l],Ot)})),t&&$e(X[e],void 0,Ot)}}},Nt=e=>{const t=ie(Qe[e]),n=ie(ze[e])&&ie(Pe[e]);if(!t||!n){const l=e?[Ie(m),Ie(V)]:[m,V];if(t||Qt(Qe[e],l[0]),!n){let t;ce(l[1],(([n,l],s)=>{l!==n&&($e(ze[e],[s],l,n,Ft),t=1)})),t&&$e(Pe[e],void 0,Ft)}}},Bt=(e,...t)=>(vn((()=>e(...N(t,C)))),gn),Wt=()=>[Se(b,((e,t)=>-1===fe(r,t)?null:Se(e,((e,n)=>-1===fe(fe(v,t),n)?null:Se(e,(([,e])=>null!=e?e:null),((e,t)=>Ze(t)))),se)),se),Se(V,(([,e])=>null!=e?e:null),((e,t)=>Ze(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:we(b,Ye,Ze),invalidCells:we(E),changedValues:Se(V,Ye,Ze),invalidValues:Se(J),changedTableIds:Se(r),changedRowIds:Te(v),changedCellIds:we(p),changedValueIds:Se(m)}),qt=()=>we(K),Gt=()=>he(K),Ht=e=>he(fe(K,C(e))),Kt=(e,t,n,l=0,s)=>{return N(G(Q((o=fe(K,C(e)),r=(e,n)=>[k(t)?n:fe(e,C(t)),n],N([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>je(e,t)*(n?-1:1))),l,k(s)?s:l+s),(([,e])=>e));var o,r,i},Ut=(e,t)=>he(fe(fe(K,C(e)),C(t))),Xt=(e,t,n)=>fe(fe(fe(K,C(e)),C(t)),C(n)),Yt=()=>Se(U),Zt=()=>he(U),_t=e=>fe(U,C(e)),en=e=>Bt((()=>(e=>tt(e,Ke,Jt))(e)?ht(e):0)),tn=e=>Bt((()=>rt(e)?St(e):0)),nn=e=>{try{vt(et(e))}catch(e){}return gn},ln=t=>Bt((()=>{if((e=tt(t,(e=>tt(e,He))))&&(ct(t),!ie(K))){const e=qt();on(),en(e)}})),sn=e=>Bt((()=>{if(t=(e=>tt(e,He))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),on=()=>Bt((()=>ht({}))),rn=e=>Bt((e=>re(K,e)?Rt(e):0),e),an=(e,t)=>Bt(((e,t)=>x(fe(K,e),(n=>re(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Bt((()=>St({}))),cn=()=>Bt((()=>{ct({}),e=!1})),un=()=>Bt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&$e(Ne,void 0,Wt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!ie(b),l=!ie(V),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Wt,$t))&&(ce(b,((e,t)=>ce(e,((e,n)=>ce(e,(([e],l)=>Ve(gn,t,n,l,e))))))),ce(V,(([e],t)=>Ee(gn,t,e))),n=l=!1),$e(Be[0],void 0,Wt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),$e(Be[1],void 0,Wt,$t),s=0,n=l=!1,z([r,c,v,p,b,E,m,V,J],de))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Te(fe(K,C(e))),getTableCellIds:e=>he(fe(q,C(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Se(fe(fe(K,C(e)),C(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ie(K),hasTable:e=>re(K,C(e)),hasTableCell:(e,t)=>re(fe(q,C(e)),C(t)),hasRow:(e,t)=>re(fe(K,C(e)),C(t)),hasCell:(e,t,n)=>re(fe(fe(K,C(e)),C(t)),C(n)),hasValues:()=>!ie(U),hasValue:e=>re(U,C(e)),getTablesJson:()=>_e(K),getValuesJson:()=>_e(U),getJson:()=>_e([K,U]),getTablesSchemaJson:()=>_e(A),getValuesSchemaJson:()=>_e(j),getSchemaJson:()=>_e([A,j]),setContent:([e,t])=>Bt((()=>{(se(e)?on:en)(e),(se(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Bt((e=>Ke(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Bt(((e,t)=>st(e,t,n)?gt(e,It(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return st(e,l,t)&&(e=C(e),gt(e,It(e),l=wt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Bt(((e,t)=>{if(st(e,t,n,1)){const l=It(e);le(n,((n,s)=>yt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>Bt(((e,t,n)=>x(ot(e,t,n,D(l)?l(Xt(e,t,n)):l),(l=>yt(e,It(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Bt((()=>rt(e,1)?le(e,((e,t)=>Tt(t,e))):0)),setValue:(e,t)=>Bt((e=>x(it(e,D(t)?t(_t(e)):t),(t=>Tt(e,t)))),e),setTransactionChanges:e=>Bt((()=>{le(e[0],((e,t)=>k(e)?rn(t):le(e,((e,n)=>k(e)?an(t,n):le(e,((e,l)=>Ve(gn,t,n,l,e))))))),le(e[1],((e,t)=>Ee(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{pt(et(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=et(e);vt(t),pt(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:sn,setSchema:(e,t)=>Bt((()=>{ln(e),sn(t)})),delTables:on,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Bt(((e,t,n)=>x(fe(K,e),(s=>x(fe(s,t),(o=>re(o,n)?bt(e,s,t,o,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Bt((e=>re(U,e)?mt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Bt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ce(K,((t,n)=>e(n,(e=>ce(t,((t,n)=>e(n,(e=>ge(t,e))))))))),forEachTableCell:(e,t)=>ge(fe(q,C(e)),t),forEachRow:(e,t)=>ce(fe(K,C(e)),((e,n)=>t(n,(t=>ge(e,t))))),forEachCell:(e,t,n)=>ge(fe(fe(K,C(e)),C(t)),n),forEachValue:e=>ge(U,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=Kt(e,t,n,l,s);return We((()=>{const r=Kt(e,t,n,l,s);P(r,i)||(i=r,o(gn,e,t,n,l,s,i))}),ae[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>We(e,Ne),addWillFinishTransactionListener:e=>We(e,Be[0]),addDidFinishTransactionListener:e=>We(e,Be[1]),callListener:e=>(Ge(e),gn),delListener:e=>(qe(e),gn),getListenerStats:()=>({}),createStore:lt};return le({[f]:[0,X],[g]:[0,Y],[h]:[1,Z,[Gt]],[h+T]:[1,ee,[Gt]],[y]:[1,oe,[Gt]],[L]:[2,be,[Gt,Ht]],[T]:[2,Me,[Gt,Ht]],[S]:[3,De,[Gt,Ht,Ut],e=>Ue(Xt(...e))],InvalidCell:[3,Je],[I]:[0,Pe],[R]:[0,Qe],[w]:[1,ze,[Zt],e=>Ue(_t(e[0]))],InvalidValue:[1,Ae]},(([e,t,n,l],s)=>{gn[u+s+d]=(...s)=>We(s[e],t[s[e+1]?1:0],e>0?G(s,0,e):void 0,n,l)})),_(gn)};e.createCheckpoints=Pe,e.createCustomPersister=(e,t,n,l,s)=>{let o,r,i,a=0,d=0,c=0;const u=[],v=e=>We(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>We(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>We(void 0,null,(function*(){return yield v((()=>We(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>We(void 0,[...n],(function*(n={},s={}){return h.stopAutoLoad(),yield h.load(n,s),c=1,i=l(((n,l)=>We(void 0,null,(function*(){return yield v((()=>We(void 0,null,(function*(){var s;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(s=null==n?void 0:n())?s:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(s(i),i=void 0,c=0),h),save:t=>We(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>We(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>We(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(x(o,e.delListener),h),schedule:(...e)=>We(void 0,null,(function*(){return H(u,...e),yield We(void 0,null,(function*(){if(!d){for(d=1;!k(r=U(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return _(h)},e.createIndexes=Qe,e.createMetrics=Be,e.createQueries=He,e.createRelationships=Ke,e.createStore=lt,e.defaultSorter=je},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),r=t(0),s="type",I="default",c="Listener",i="get",$="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",g=h+u,f="Sorted"+h+u,m="Cell",w=m+u,y="Value",v=y+"s",T=y+u,V=(e,t)=>e.every(t),x=(e,t)=>e.sort(t),R=(e,t)=>e.forEach(t),k=(e,t=a)=>e.join(t),P=(e,t)=>e.map(t),S=e=>e.length,A=(e,t)=>e.filter(t),O=(e,...t)=>e.push(...t),E=e=>e.pop(),D=(e,...t)=>e.unshift(...t),j=e=>e.shift(),N=JSON.parse,L=isFinite,G=(e,t)=>e instanceof t,M=e=>null==e,J=e=>e==o||e==d,z=e=>t(e)==o,W=e=>Array.isArray(e),B=e=>{const l=t(e);return J(l)||l==r&&L(e)?l:void 0},F=Object,U=F.keys,_=F.freeze,Z=e=>G(e,F)&&e.constructor==F,H=(e,t)=>P(F.entries(e),(([e,l])=>t(l,e))),Q=e=>S(U(e)),q=e=>Z(e)&&0==Q(e),K=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},X=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},Y=(e,t)=>null==e?void 0:e.forEach(t),ee=(e,t)=>null==e?void 0:e.delete(t),te=e=>new Map(e),le=(e,t)=>null==e?void 0:e.get(t),ae=(e,t)=>Y(e,((e,l)=>t(l,e))),ne=(e,t)=>{var l;return P([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},oe=(e,t,l)=>M(l)?(ee(e,t),e):null==e?void 0:e.set(t,l),de=(e,t,l)=>(K(e,t)||oe(e,t,l()),le(e,t)),re=e=>e.toUpperCase(),se=e=>e.toLowerCase(),Ie="a ",ce="A function for",ie=", and registers a listener so that any changes to that result will cause a re-render",$e="Callback",ue="Del",pe="Deps",be=pe+"?: React.DependencyList",Ce="doRollback?: DoRollback",he="actions: () => Return, "+Ce,ge="export",fe="Id",me="Invalid",we="Json",ye=se(c),ve="?: ",Te=" | undefined",Ve="NonNullable",xe="Partial",Re="Props",ke="Provider",Pe=`Registers a ${ye} that will be called`,Se="Represents",Ae="rowId: "+fe,Oe="Schema",Ee="Set",De=", descending?: boolean, offset?: number, limit?: number",je="[]",Ne="the Store",Le="Transaction",Ge=Le+"Changes",Me=se(Le),Je="Execute a "+Me+" to make multiple mutations",ze="Explicitly starts a "+Me,We="Explicitly finishes a "+Me,Be="the end of the "+Me,Fe="void",Ue=" => "+Fe,_e="WhenSet",Ze=" when setting it",He=Ie+"string serialization of",Qe=" ",qe="Gets a callback that can ",Ke="the ",Xe=" the schema for",Ye=(e=0,t=0)=>`the ${ht[e]}content of`+(t?Qe+Ne:a),et=(e=0,t,l=0)=>pt[t]+Qe+Ye(e,1)+(l?" when setting it":a),tt=(e,t=0)=>Se+` a Row when ${t?"s":"g"}etting ${Ye()} the '${e}' `+p,lt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,at=(e,t)=>`Calls a function for each ${e} in `+t,nt=e=>"The props passed to a component that renders "+e,ot=e=>"A function that takes "+e,dt=(e,t=0)=>ce+" listening to changes to "+Ct[e]+" in "+Ct[t],rt=(e,t,l=0)=>Pe+" whenever "+Ct[e]+" in "+Ct[t]+" change"+(l?a:"s"),st=e=>`the '${e}' `+p,It=e=>"the specified Row in "+st(e),ct=(e,t=0)=>pt[t]+` ${Ye()} `+st(e),it=(e,t=0)=>pt[t]+` ${Ye()} `+It(e),$t=(e,t,l=0)=>pt[l]+` the '${t}' Cell for `+It(e),ut=(e,t=0)=>pt[t]+` the '${e}' Value`,pt=["Gets","Checks existence of","Sets","Deletes","Sets part of",Se,"Gets "+He,"Sets "+He,Pe+" whenever",qe+"set",qe+"add",qe+"set part of",qe+"delete","Renders","Gets "+He+Xe,"Sets"+Xe,"Deletes"+Xe],bt=[i,"has","set","del","set","forEach",$,a],Ct=[Ne,b,Ke+p+Qe+u,Ie+p,Ke+h+Qe+u,Ie+h,Ke+m+Qe+u,Ie+m,"invalid Cell changes",v,Ke+y+Qe+u,Ie+y,"invalid Value changes",Ke+"sorted "+h+Qe+u,Ke+m+Qe+u+" anywhere"],ht=[a,"tabular ","keyed value "],gt=e=>new Set(W(e)||M(e)?e:[e]),ft=(e,t)=>null==e?void 0:e.add(t),mt=/[^A-Za-z]+/,wt=/[^A-Za-z0-9]+/,yt=/^( *)\/\*\* *(.*?) *\*\/$/gm,vt=(e,t,l)=>e.substring(t,l),Tt=e=>e.includes(n),Vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return K(e,n)?Vt(e,t,l,a+1):(oe(e,n,l),n)},xt=e=>e.replace(yt,((e,t,l)=>{const a=77-Rt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Rt=e=>e.length,kt=e=>e.flat(1e3),Pt=(e,t=0)=>k(P(e.split(wt),((e,l)=>(l>0||t?re:se)(vt(e,0,1))+vt(e,1)))),St=e=>re(k((e&&!mt.test(e[0])?e:" "+e).split(wt),"_")),At=e=>`/** ${e}. */`,Ot=(...e)=>k(A(e,(e=>e)),", "),Et=(...e)=>"{"+k(e,"; ")+"}",Dt=(...e)=>Et(...P(e,(e=>"readonly "+e))),jt=()=>{const e=[te(),te(),te(),te()],t=te(),l=te(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>k(kt(e),"\n"),(t,l,...a)=>R(a,(a=>R([0,1],(n=>(null!=t?t:n)==n?ft(de(e[n],l,gt),a):0)))),(e,l,n,o=a,d=1)=>Vt(t,e,[l,n,o,d]),(e,t,a)=>Vt(l,e,W(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>le(l,e)===t?e:Vt(l,e,t),(t=0)=>P([...x(ne(e[t],((e,t)=>`import {${k(x(X(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Tt(e)!=Tt(t)?Tt(e)?-1:1:e>t?1:-1)),a],(e=>e.replace("{React}","React"))),()=>ne(t,(([e,t,l,n],o)=>[At(t),`${n?ge+" ":a}type ${o}${l} = ${e};`,a])),()=>ne(l,((e,t)=>(e=W(e)?e:[e],O(e,E(e)+";"),[`const ${t} = ${j(e)}`,e,a])))]},Nt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>H(e,((e,a)=>t(a,Pt(a,1),l(St(a),`'${a}'`)))),(t,a)=>H(e[t],((e,t)=>a(t,e[s],e[I],l(St(t),`'${t}'`),Pt(t,1)))),e=>H(t,((t,a)=>e(a,t[s],t[I],l(St(a),`'${a}'`),Pt(a,1))))],Gt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,r=e(b,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...l(e,((e,t,l)=>`'${e}'${M(l)?"?":a}: ${t}`)))+"}"))),et(1,5)),s=e(b+_e,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),et(1,5,1)),I=e(p+fe,"keyof "+r,"A "+p+" Id in "+Ne),i=`<TId extends ${I}>`,$=e(p,Ve+`<${r}[TId]>`,"A "+p+" in "+Ne,i),u=e(p+_e,Ve+`<${s}[TId]>`,"A "+p+" in "+Ne+Ze,i),y=e(h,$+"<TId>[Id]","A "+h+" in a "+p,i),v=e(h+_e,u+"<TId>[Id]","A "+h+" in a "+p+Ze,i),T=e(m+fe,`Extract<keyof ${y}<TId>, Id>`,"A "+m+" Id in a "+h,i),V=e(m,Ve+`<${r}[TId]>[Id][CId]`,"A "+m+" in a "+h,`<TId extends ${I}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,m+" Ids and types in a "+h,`<TId extends ${I}, CId = ${T}<TId>>`,0),R=e(m+$e,`(...[cellId, cell]: ${x}<TId>)`+Ue,ot(Ie+m+" Id, and "+m),i),k=e(h+$e,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ue+") "+Ue,ot(Ie+h+" Id, and a "+m+" iterator"),i),P=e(p+m+$e,`(cellId: ${T}<TId>, count: number) `+Ue,ot(Ie+m+" Id, and count of how many times it appears"),i),S=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Ue}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),A=e(p+$e,`(...[tableId, forEachRow]: ${S})`+Ue,ot(Ie+p+" Id, and a "+h+" iterator"),a),O=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ce+" returning information about any Cell's changes during a "+Me),D=e(b+c,`(${d}, getCellChange: ${E}${Te})`+Ue,dt(1)),j=e(C+c,`(${d})`+Ue,dt(2)),N=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${E}${Te})`+Ue,dt(3)),L=e(p+w+c,`(${d}, tableId: ${I})`+Ue,dt(14,3)),G=e(g+c,`(${d}, tableId: ${I})`+Ue,dt(4,3)),J=e(f+c,"("+Ot(d,"tableId: "+I,"cellId: Id"+Te,"descending: boolean","offset: number","limit: number"+Te,"sortedRowIds: Ids")+")"+Ue,dt(13,3)),z=e(h+c,"("+Ot(""+d,"tableId: "+I,Ae,`getCellChange: ${E}${Te}`)+")"+Ue,dt(5,3)),W=e(w+c,"("+Ot(""+d,"tableId: "+I,Ae)+")"+Ue,dt(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${Ae}, cellId: CId, newCell: ${V}<TId, CId> ${Te}, oldCell: ${V}<TId, CId> ${Te}, getCellChange: ${E} ${Te}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${T}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[r,s,I,$,u,y,v,T,V,R,k,P,A,D,j,N,L,G,J,z,W,e(m+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Ue,dt(7,5)),e(me+m+c,`(${d}, tableId: Id, ${Ae}, cellId: Id, invalidCells: any[])`+Ue,dt(8))]},(t,l)=>{const o=t+": "+l,d=e(v,Et(...n(((e,t,l)=>`'${e}'${M(l)?"?":a}: ${t}`))),et(2,5)),r=e(v+_e,Et(...n(((e,t)=>`'${e}'?: ${t}`))),et(2,5,1)),s=e(y+fe,"keyof "+d,"A "+y+" Id in "+Ne),I=e(y,Ve+`<${d}[VId]>`,"A "+y+" Id in "+Ne,`<VId extends ${s}>`),i=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Ne,`<VId = ${s}>`,0),$=e(y+$e,`(...[valueId, value]: ${i})`+Ue,ot(Ie+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,ce+" returning information about any Value's changes during a "+Me),p=e(v+c,`(${o}, getValueChange: ${u}${Te})`+Ue,dt(9)),b=e(T+c,`(${o})`+Ue,dt(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${I}<VId> ${Te}, oldValue: ${I}<VId> ${Te}, getValueChange: ${u} ${Te}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,I,$,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ue,dt(11)),e(me+y+c,`(${o}, valueId: Id, invalidValues: any[])`+Ue,dt(12))]},(t,l)=>e(Le+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ue,ce+" listening to the completion of a "+Me)],Mt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),Jt=(e,t=a)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,Wt=(e,t,n)=>{const[o,r,i,V,x,P,S,A]=jt(),[E,j,N]=Lt(e,t,x),[L,G,J]=Gt(i,E,j,N),W=te(),B=(e=0)=>ne(W,(([t,l,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${l} => ${n},`]:[r+d+`(${t}): ${l};`];return e||D(s,At(o)),O(s,a),s})),F=(e,t,l,n,o,d=a)=>Vt(W,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,r=a,s=a)=>F(bt[e]+t+(4==e?xe:a)+l,d,n,(n==H?Jt:Mt)(bt[e]+(4==e?xe:a)+l,r,e?void 0:n),o,s),_=(e,t,l,n=a,o=a,d=1,r=a)=>F($+e+c,(n?n+", ":a)+ye+": "+t+(d?", mutator?: boolean":a),fe,zt($+e+c,o,d?"mutator":a),l,r),Z=`./${Pt(n)}.d`,H=Pt(n,1),Q=Pt(H),K=[],Y=te();let ee=[],de=[];if(r(1,Z,H,`create${H} as create${H}Decl`),q(e))r(null,l,b);else{r(0,l,"CellChange"),r(null,l,u);const[e,t,n,o,c,$,y,v,T,V,P,S,A,D,N,G,J,W,B,F,q,ae,ne]=L(Q,H),de=te();E(((e,t)=>{const l=`<'${e}'>`,a=[i(t+p,o+l,Se+` the '${e}' `+p),i(t+p+_e,c+l,Se+` the '${e}' `+p+Ze),i(t+h,$+l,tt(e)),i(t+h+_e,y+l,tt(e,1)),i(t+m+fe,v+l,`A Cell Id for the '${e}' `+p),i(t+m+$e,V+l,ot(`a Cell Id and value from a Row in the '${e}' `+p)),i(t+h+$e,P+l,ot(`a Row Id from the '${e}' Table, and a Cell iterator`)),i(t+p+m+$e,S+l,ot(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];oe(de,e,a),r(1,Z,...a)})),r(1,Z,e,t,n,v,A,D,N,G,J,W,B,F,q,ae,ne),ee=[e,t,n,v,D,N,G,J,W,B,F,q,ae,de],R([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,et(1,n),t,l))),U(0,a,C,n+je,lt(p,Ne)),U(5,a,p,Fe,at(p,Ne),"tableCallback: "+A,"tableCallback as any"),E(((e,t,l)=>{const[n,o,r,s,I,c,i,$]=le(de,e);R([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],r)=>U(r,t,p,n,ct(e,r),o,l+d))),U(0,t,p+w,u,lt(m,"the whole of "+st(e)),a,l),U(5,t,p+m,Fe,at(p+m,"the whole of "+st(e)),"tableCellCallback: "+$,l+", tableCellCallback as any"),U(0,t,g,u,lt(h,st(e)),a,l),U(0,t,f,u,lt(h,st(e),1),"cellId?: "+I+De,l+", cellId, descending, offset, limit"),U(5,t,h,Fe,at(h,st(e)),"rowCallback: "+i,l+", rowCallback as any"),R([[r],[d],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=a,d=a],r)=>U(r,t,h,n,it(e,r),Ae+o,l+", rowId"+d))),U(6,t,h,fe+Te,"Add a new Row to "+st(e),"row: "+s+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+je,lt(m,It(e)),Ae,l+", rowId"),U(5,t,m,Fe,at(m,It(e)),Ae+", cellCallback: "+c,l+", rowId, cellCallback as any"),j(e,((n,o,r,s,I)=>{const c="Map"+Pt(o,1);oe(Y,o,c);const i=o+(M(r)?Te:a);R([[i],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,r=a],c)=>U(c,t+I,m,o,$t(e,n,c),Ae+d,l+", rowId, "+s+r))),U(1,t+I,p+m,d,pt[1]+` the '${n}' Cell anywhere in `+st(e),a,l+", "+s)}))})),U(0,a,b+we,we,et(1,6)),U(2,a,b+we,H,et(1,7),"tablesJson: "+we,"tables"+we),_(b,D,et(1,8)+" changes"),_(C,N,rt(2,0,1)),_(p,G,rt(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,J,rt(14,3,1),`tableId: ${n} | null`,"tableId"),_(g,W,rt(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,B,rt(13,3,1),Ot("tableId: TId",`cellId: ${v}<TId>`+Te,"descending: boolean","offset: number","limit: number"+Te),Ot("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,F,rt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,q,rt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,ae,rt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${k(E((e=>{var t,l;return null!=(l=null==(t=le(de,e))?void 0:t[4])?l:a}))," | ")} | null`,"tableId, rowId, cellId"),_(me+m,ne,Pe+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),r(1,Z,...X(Y)),O(K,".set"+b+Oe+"({",kt(E(((e,t,l)=>[`[${l}]: {`,...j(e,((e,t,l,n)=>`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${M(l)?a:`, [${x(St(I),`'${I}'`)}]: `+(z(l)?x(St(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(q(t))r(null,l,v);else{const[e,t,n,o,c,i,$,u,p]=G(Q,H);r(1,Z,e,t,n,c,i,$,u,p),de=[e,t,n,i,$,u],R([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,v,e,et(2,n),t,l))),U(0,a,T,n+je,lt(y,Ne)),U(5,a,y,"void",at(y,Ne),"valueCallback: "+c,"valueCallback as any"),N(((e,t,l,n,o)=>{const r="Map"+Pt(t,1);oe(Y,t,r),R([[t],[d],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,l,d=a],r)=>U(r,o,y,t,ut(e,r),l,n+d)))})),U(0,a,v+we,we,et(2,6)),U(2,a,v+we,H,et(2,7),"valuesJson: "+we,"values"+we),_(v,i,et(2,8)+" changes"),_(T,$,rt(10,0,1)),_(y,u,rt(11,0),`valueId: ${n} | null`,"valueId"),_(me+y,p,Pe+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),r(1,Z,...X(Y)),r(0,l,"ValueChange"),O(K,".set"+v+Oe+"({",N(((e,t,l,n)=>[`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${M(l)?a:`, [${x(St(I),`'${I}'`)}]: `+(z(l)?x(St(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${v}]`,et(0,0)),U(2,a,"Content",H,et(0,2),`[tables, values]: [${b}, ${v}]`,"[tables, values]"),U(2,a,Ge,H,`Applies a set of ${Ge} to the Store`,"transactionChanges: "+Ge,"transactionChanges"),ae(Y,((e,t)=>i(t,`(cell: ${e}${Te}) => `+e,`Takes a ${e} Cell value and returns another`))),r(null,l,"DoRollback",fe,"IdOrNull",we,"Store",Ge),r(0,l,"Get"+Ge,"GetTransactionLog"),U(0,a,we,we,et(0,6)),U(2,a,we,H,et(0,7),"tablesAndValuesJson: "+we,"tablesAndValuesJson"),U(7,a,Me,"Return",Je,he,"actions, doRollback","<Return>"),U(7,a,"start"+Le,H,ze),U(7,a,"finish"+Le,H,We,Ce,"doRollback");const re=J(Q,H);return _("Start"+Le,re,Pe+" just before the start of the "+Me,a,a,0),_("WillFinish"+Le,re,Pe+" just before "+Be,a,a,0),_("DidFinish"+Le,re,Pe+" just after "+Be,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+Ne,"listenerId: Id","listenerId"),F("getStore",a,"Store","store",pt[0]+" the underlying Store object"),r(1,l,"createStore"),r(1,Z,H,`create${H} as create${H}Decl`,re),x("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...B(1),"}"]),[o(...P(0),...S(),ge+" interface "+H+" {",...B(0),"}",a,At(`Creates a ${H} object`),ge+" function create"+H+"(): "+H+";"),o(...P(1),ge+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),ee,de]},Bt=e=>i+e,Ft=e=>Ot(Bt(e),Bt(e)+pe),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+be,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+$e+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Ot(ol+")"+Ue,Zt),rl="then, then"+pe,sl=tl+Xt+fe,Il="View",cl=(e,...t)=>Ot(...t,ye+": "+e,ye+be,"mutator?: boolean"),il=(...e)=>Ot(...e,ye,ye+pe,"mutator"),$l=(e,t,n,o,d)=>{const[r,s,I,i,$,V,x,R]=jt(),[P,S,A]=Lt(e,t,$),E=`./${Pt(n)}.d`,j=`./${Pt(n)}-ui-react.d`,N="tinybase/ui-react",L=Pt(n,1),G=Pt(L),J=L+"Or"+L+fe,z=G+"Or"+L+fe,W=G+`={${G}}`,B=te(),F=(e,t,l,n,o,d=a)=>(s(1,j,e+" as "+e+"Decl"),Vt(B,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>F("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,r=a,I=a,c=a)=>(s(1,N,`use${t} as use${t}Core`),U(e,Ot(o,X,I),l,ee+`(${z}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ne(B,(([t,l,n,o,d],r)=>{const s=e?[ge+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[ge+` function ${r}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||D(s,At(o)),O(s,a),s}));s(null,l,fe,"Store",$e,Ht+"ized"+$e),s(0,N,"ComponentReturnType"),s(null,N,"ExtraProps"),s(0,E,L);const Q=I(J,L+" | "+fe,`Used when you need to refer to a ${L} in a React hook or component`),K=I(ke+Re,Dt(G+ve+L,G+`ById?: {[${G}Id: Id]: ${L}}`),`Used with the ${ke} component, so that a `+L+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,j,Q,K);const X=z+ve+Q;$("{createContext, useContext, useMemo}","React"),$("Context",`createContext<[${L}?, {[${G}Id: Id]: ${L}}?]>([])`),U("Create"+L,`create: () => ${L}, create`+be,L,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${L} within a React application with convenient memoization`);const Y=U(L,"id?: Id",L+Te,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${L} from within a ${ke} component context`),ee=i("useHook",z+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${G} : ${z})?.getStore(), ...postParams)`]),ae=i("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=i("wrap",Ot("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=$("NullComponent","() => null");if(!q(e)){const[e,t,n,d,r,$,y,v,T,V,x,R,A,O]=o;s(null,E,e,t,n,r,$,y,v,T,V,x,R,A),s(0,E,d),s(1,E,L),s(null,l,u,"IdOrNull");const D=i("tableView",`{${G}, rowComponent, getRowComponentProps`+al+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ae+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ll,W,_t,"/>","))",al,", tableId,",");"]),N=i("getDefaultTableComponent","tableId: Id",k(P(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=i("getDefaultCellComponent","tableId: Id, cellId: Id",k(P(((e,t,l)=>`tableId == ${l} ? ${k(S(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,et(1,0)+ie);const z=_(C,C,n+je,lt(p,Ne)+ie);_(Ee+b+$e,Ee+b+$e,el,et(1,9)+Kt,Ot(Bt(b)+Qt+t,Bt(b)+be),Ft(b),Yt,Ot(ol,`tables: ${t})`+Ue,Zt),rl),_(ue+b+$e,ue+b+$e,$e,et(1,12),a,a,a,dl,rl);const B=I(m+Re,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+ve+L,Ut),nt(Ie+m),`<TId extends ${n}, CId extends ${d}<TId>>`),F=I(h+Re,Dt("tableId?: TId","rowId: Id",G+ve+L,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,nl,Ut),nt(Ie+h),`<TId extends ${n}>`),U=I(p+Re,Dt("tableId?: TId",G+ve+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",nl,Ut),nt(Ie+p),`<TId extends ${n}>`),H=I("Sorted"+p+Re,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+ve+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",nl,Ut),nt(Ie+"sorted "+p),`<TId extends ${n}>`),Q=I(b+Re,Dt(G+ve+L,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),nt(Ye(1,1)));s(1,j,Q,U,H,F,B),Z(b+Il,"{"+G+", tableComponents, getTableComponentProps"+al+"}: "+Q,[oe+`(${z}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+N+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ae}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,_t,"/>;","}), separator)"],et(1,13)+ie),P(((e,t,l)=>{const[n,o,d,r,I]=le(O,e);s(null,E,n,o,d,r,I),_(t+p,p,n,ct(e)+ie,a,l),_(t+p+w,p+w,u,lt(m,"the whole of "+st(e))+ie,a,l);const c=_(t+g,g,u,lt(h,st(e))+ie,a,l),i=_(t+f,f,u,lt(h,st(e),1)+ie,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,it(e)+ie,sl,Ot(l,tl));const $=_(t+w,w,I+je,lt(m,It(e))+ie,sl,Ot(l,tl));_(Ee+t+p+$e,Ee+p+$e,el,ct(e,9)+Kt,Ot(Bt(p)+Qt+o,Bt(p)+be),Ot(l,Ft(p)),Yt,Ot(ol,`table: ${o})`+Ue,Zt),rl),_(ue+t+p+$e,ue+p+$e,$e,ct(e,12),a,l,a,dl,rl),_(Ee+t+h+$e,Ee+h+$e,el,it(e,9)+Kt,Ot(sl,Bt(h)+Qt+r,Bt(h)+be),Ot(l,tl,Ft(h)),Yt,Ot(ol,`row: ${r})`+Ue,Zt),rl),_("Add"+t+h+$e,"Add"+h+$e,el,it(e,10)+Kt,Ot(Bt(h)+Qt+r,Bt(h)+be),Ot(l,Ft(h)),Yt,"then?: ("+Ot(sl+Te,"store: Store","row: "+r+")"+Ue,"then"+be)+", reuseRowIds?: boolean",rl+", reuseRowIds"),_(Ee+t+xe+h+$e,Ee+xe+h+$e,el,it(e,11)+Kt,Ot(sl,Bt(xe+h)+Qt+r,Bt(xe+h)+be),Ot(l,tl,Ft(xe+h)),Yt,Ot(ol,`partialRow: ${r})`+Ue,Zt),rl),_(ue+t+h+$e,ue+h+$e,$e,it(e,12),sl,Ot(l,tl),a,dl,rl);const b=Z(t+h+Il,"{rowId, "+G+", cellComponents, getCellComponentProps"+al+`}: ${F}<'${e}'>`,[oe+`(${$}(rowId, ${G}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${ae}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,ll,"cellId={cellId}",W,_t,"/>;","})"+al+", rowId)"],it(e,13)+ie);Z(t+"Sorted"+p+Il,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,D+"(props, "+i+`(cellId, descending, offset, limit, props.${G}), ${l}, ${b});`,ct(e,13)+", sorted"+ie),Z(t+p+Il,`props: ${U}<'${e}'>`,D+"(props, "+c+`(props.${G}), ${l}, ${b});`,ct(e,13)+ie),S(e,((n,o,d,r,I)=>{const c="Map"+Pt(o,1);s(0,E,c),s(1,E,c);const i=_(t+I+m,m,o+(M(d)?Te:a),$t(e,n)+ie,sl,Ot(l,tl,r));_(Ee+t+I+m+$e,Ee+m+$e,el,$t(e,n,9)+Kt,Ot(sl,Bt(m)+Qt+o+" | "+c,Bt(m)+be),Ot(l,tl,r,Ft(m)),Yt,Ot(ol,`cell: ${o} | ${c})`+Ue,Zt),rl),_(ue+t+I+m+$e,ue+m+$e,$e,$t(e,n,12),Ot(sl,"forceDel?: boolean"),Ot(l,tl,r,"forceDel"),a,dl,rl),Z(t+I+m+Il,`{rowId, ${G}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${i}(rowId, `+G+`) ?? '', undefined, debugIds, ${r})`],$t(e,n,13)+ie)}))}));const q=k(P((e=>{var t,l;return null!=(l=null==(t=le(O,e))?void 0:t[4])?l:a}))," | ");_(b+c,b+c,Fe,et(1,8)+" changes",cl(r),il()),_(C+c,C+c,Fe,rt(2,0,1),cl($),il()),_(p+c,p+c,Fe,rt(3,0),cl(y,`tableId: ${n} | null`),il("tableId")),_(p+w+c,p+w+c,Fe,rt(14,3,1),cl(v,`tableId: ${n} | null`),il("tableId")),_(g+c,g+c,Fe,rt(4,3,1),cl(T,`tableId: ${n} | null`),il("tableId")),_(f+c,f+c,Fe,rt(13,3,1),cl(V,`tableId: ${n} | null`,"cellId: "+q+Te,"descending: boolean","offset: number","limit: number"+Te),il("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Fe,rt(5,3),cl(x,`tableId: ${n} | null`,tl+": IdOrNull"),il("tableId",tl)),_(w+c,w+c,Fe,rt(6,5,1),cl(R,`tableId: ${n} | null`,tl+": IdOrNull"),il("tableId",tl)),_(m+c,m+c,Fe,rt(7,5),cl(A,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${q} | null`),il("tableId",tl,"cellId"))}if(!q(t)){const[e,t,l,n,o,r]=d;s(null,E,...d),s(1,E,L);const $=i("getDefaultValueComponent","valueId: Id",k(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(v,v,e,et(2,0)+ie);const u=_(T,T,l+je,lt(y,Ne)+ie);_(Ee+v+$e,Ee+v+$e,el,et(2,9)+Kt,Ot(Bt(v)+Qt+t,Bt(v)+be),Ft(v),Yt,Ot(ol,`values: ${t})`+Ue,Zt),rl),_(Ee+xe+v+$e,Ee+xe+v+$e,el,et(2,11)+Kt,Ot(Bt(xe+v)+Qt+t,Bt(xe+v)+be),Ft(xe+v),Yt,Ot(ol,`partialValues: ${t})`+Ue,Zt),rl),_(ue+v+$e,ue+v+$e,$e,et(2,12),a,a,a,dl,rl);const p=I(y+Re,Dt("valueId?: VId",G+ve+L,Ut),nt("a Value"),`<VId extends ${l}>`),b=I(v+Re,Dt(G+ve+L,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,nl,Ut),nt(Ye(2,1)));s(1,j,b,p),Z(v+Il,"{"+G+", valueComponents, getValueComponentProps"+al+"}: "+b,[oe+`(${u}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+$+"(valueId);","return <Value",`{...${ae}(getValueComponentProps, valueId)}`,"key={valueId}",W,_t,"/>;","}), separator)"],et(2,13)+ie),A(((e,t,l,n,o)=>{const d="Map"+Pt(t,1);s(0,E,d),s(1,E,d);const r=_(o+y,y,t,ut(e)+ie,a,n);_(Ee+o+y+$e,Ee+y+$e,el,ut(e,9)+Kt,Ot(Bt(y)+Qt+t+" | "+d,Bt(y)+be),Ot(n,Ft(y)),Yt,Ot(ol,`value: ${t} | ${d})`+Ue,Zt),rl),_(ue+o+y+$e,ue+y+$e,$e,ut(e,12),a,n,a,dl,rl),Z(o+y+Il,`{${G}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+G+`) ?? '', undefined, debugIds, ${n})`],ut(e,13)+ie)})),_(v+c,v+c,Fe,et(2,8)+" changes",cl(n),il()),_(T+c,T+c,Fe,rt(10,0,1),cl(o),il()),_(y+c,y+c,Fe,rt(11,0),cl(r,`valueId: ${l} | null`),il("valueId"))}return Z(ke,`{${G}, ${G}ById, children}: `+K+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+ke,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${ke}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...R(),...H(1))]},ul=(e,t,l)=>{if(q(e)&&q(t))return[a,a,a,a];const[n,o,d,r]=Wt(e,t,l);return[n,o,...$l(e,t,l,d,r)]};var pl=Object.defineProperty,bl=Object.defineProperties,Cl=Object.getOwnPropertyDescriptors,hl=Object.getOwnPropertySymbols,gl=Object.prototype.hasOwnProperty,fl=Object.prototype.propertyIsEnumerable,ml=(e,t,l)=>t in e?pl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,wl=(e,t)=>{for(var l in t||(t={}))gl.call(t,l)&&ml(e,l,t[l]);if(hl)for(var l of hl(t))fl.call(t,l)&&ml(e,l,t[l]);return e},yl=(e,t)=>bl(e,Cl(t)),vl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const Tl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Vl=Nt((e=>{const t=()=>{const t=N(e.getTablesSchemaJson());return!q(t)||V(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=te();if(V(a,(t=>V(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=de(n,a,(()=>[B(o),te(),[0],0])),[r,s,[I]]=d,c=de(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),oe(s,o,c),d[3]++,r==B(o)})))))return t[l]={},Y(n,(([e,,[,n],o],d)=>{t[l][d]=wl({[s]:e},o==S(a)?{[I]:n}:{})})),1}))?t:{}},l=()=>{const t=N(e.getValuesSchemaJson());return q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:B(l)}})),t},a=e=>ul(t(),l(),e),n=e=>vl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return P(a(e),((e,a)=>xt(l(e,yl(wl({},Tl),{filepath:"_."+t[a]})))))}));return _({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),wl({totalTables:l,totalRows:a,totalCells:n,totalValues:S(e.getValueIds()),jsonLength:Rt(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=Vl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),r=t(0),s="type",I="default",c="Listener",i="get",$="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",g=h+u,f="Sorted"+h+u,m="Cell",w=m+u,y="Value",v=y+"s",T=y+u,V=isFinite,x=(e,t)=>e instanceof t,R=e=>null==e,k=e=>e==o||e==d,P=e=>t(e)==o,S=e=>Array.isArray(e),A=e=>{const l=t(e);return k(l)||l==r&&V(e)?l:void 0},O=(e,t)=>e.every(t),E=(e,t)=>e.sort(t),D=(e,t)=>e.forEach(t),j=(e,t=a)=>e.join(t),N=(e,t)=>e.map(t),L=e=>e.length,G=(e,t)=>e.filter(t),M=(e,...t)=>e.push(...t),J=e=>e.pop(),z=(e,...t)=>e.unshift(...t),W=e=>e.shift(),B=Object,F=B.keys,U=B.freeze,_=e=>x(e,B)&&e.constructor==B,Z=(e,t)=>N(B.entries(e),(([e,l])=>t(l,e))),H=e=>L(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},K=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},X=(e,t)=>null==e?void 0:e.forEach(t),Y=(e,t)=>null==e?void 0:e.delete(t),ee=e=>new Map(e),te=(e,t)=>null==e?void 0:e.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>{var l;return N([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},ne=(e,t,l)=>R(l)?(Y(e,t),e):null==e?void 0:e.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),re=e=>e.toLowerCase(),se="a ",Ie="A function for",ce=", and registers a listener so that any changes to that result will cause a re-render",ie="Callback",$e="Del",ue="Deps",pe=ue+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",ge="Id",fe="Invalid",me="Json",we=re(c),ye="?: ",ve=" | undefined",Te="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Pe="Represents",Se="rowId: "+ge,Ae="Schema",Oe="Set",Ee=", descending?: boolean, offset?: number, limit?: number",De="[]",je="the Store",Ne="Transaction",Le=Ne+"Changes",Ge=re(Ne),Me="Execute a "+Ge+" to make multiple mutations",Je="Explicitly starts a "+Ge,ze="Explicitly finishes a "+Ge,We="the end of the "+Ge,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=se+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+je:a),Ye=(e=0,t,l=0)=>ut[t]+He+Xe(e,1)+(l?" when setting it":a),et=(e,t=0)=>Pe+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+p,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,l=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(l?a:"s"),rt=e=>`the '${e}' `+p,st=e=>"the specified Row in "+rt(e),It=(e,t=0)=>ut[t]+` ${Xe()} `+rt(e),ct=(e,t=0)=>ut[t]+` ${Xe()} `+st(e),it=(e,t,l=0)=>ut[l]+` the '${t}' Cell for `+st(e),$t=(e,t=0)=>ut[t]+` the '${e}' Value`,ut=["Gets","Checks existence of","Sets","Deletes","Sets part of",Pe,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[i,"has","set","del","set","forEach",$,a],bt=[je,b,qe+p+He+u,se+p,qe+h+He+u,se+h,qe+m+He+u,se+m,"invalid Cell changes",v,qe+y+He+u,se+y,"invalid Value changes",qe+"sorted "+h+He+u,qe+m+He+u+" anywhere"],Ct=[a,"tabular ","keyed value "],ht=e=>new Set(S(e)||R(e)?e:[e]),gt=(e,t)=>null==e?void 0:e.add(t),ft=/[^A-Za-z]+/,mt=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),vt=e=>e.includes(n),Tt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?Tt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>j(N(e.split(mt),((e,l)=>(l>0||t?de:re)(yt(e,0,1))+yt(e,1)))),Pt=e=>de(j((e&&!ft.test(e[0])?e:" "+e).split(mt),"_")),St=e=>`/** ${e}. */`,At=(...e)=>j(G(e,(e=>e)),", "),Ot=(...e)=>"{"+j(e,"; ")+"}",Et=(...e)=>Ot(...N(e,(e=>"readonly "+e))),Dt=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),l=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>j(Rt(e),"\n"),(t,l,...a)=>D(a,(a=>D([0,1],(n=>(null!=t?t:n)==n?gt(oe(e[n],l,ht),a):0)))),(e,l,n,o=a,d=1)=>Tt(t,e,[l,n,o,d]),(e,t,a)=>Tt(l,e,S(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>te(l,e)===t?e:Tt(l,e,t),(t=0)=>N([...E(ae(e[t],((e,t)=>`import {${j(E(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>vt(e)!=vt(t)?vt(e)?-1:1:e>t?1:-1)),a],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,l,n],o)=>[St(t),`${n?he+" ":a}type ${o}${l} = ${e};`,a])),()=>ae(l,((e,t)=>(e=S(e)?e:[e],M(e,J(e)+";"),[`const ${t} = ${W(e)}`,e,a])))]},jt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Nt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[s],e[I],l(Pt(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[s],t[I],l(Pt(a),`'${a}'`),kt(a,1))))],Lt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,r=e(b,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...l(e,((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`)))+"}"))),Ye(1,5)),s=e(b+Ue,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),I=e(p+ge,"keyof "+r,"A "+p+" Id in "+je),i=`<TId extends ${I}>`,$=e(p,Te+`<${r}[TId]>`,"A "+p+" in "+je,i),u=e(p+Ue,Te+`<${s}[TId]>`,"A "+p+" in "+je+_e,i),y=e(h,$+"<TId>[Id]","A "+h+" in a "+p,i),v=e(h+Ue,u+"<TId>[Id]","A "+h+" in a "+p+_e,i),T=e(m+ge,`Extract<keyof ${y}<TId>, Id>`,"A "+m+" Id in a "+h,i),V=e(m,Te+`<${r}[TId]>[Id][CId]`,"A "+m+" in a "+h,`<TId extends ${I}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,m+" Ids and types in a "+h,`<TId extends ${I}, CId = ${T}<TId>>`,0),k=e(m+ie,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(se+m+" Id, and "+m),i),P=e(h+ie,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(se+h+" Id, and a "+m+" iterator"),i),S=e(p+m+ie,`(cellId: ${T}<TId>, count: number) `+Fe,nt(se+m+" Id, and count of how many times it appears"),i),A=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${P}<TId>)${Fe}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),O=e(p+ie,`(...[tableId, forEachRow]: ${A})`+Fe,nt(se+p+" Id, and a "+h+" iterator"),a),E=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${E}) => CellChange`,Ie+" returning information about any Cell's changes during a "+Ge),j=e(b+c,`(${d}, getCellChange: ${D}${ve})`+Fe,ot(1)),N=e(C+c,`(${d})`+Fe,ot(2)),L=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${D}${ve})`+Fe,ot(3)),G=e(p+w+c,`(${d}, tableId: ${I})`+Fe,ot(14,3)),M=e(g+c,`(${d}, tableId: ${I})`+Fe,ot(4,3)),J=e(f+c,"("+At(d,"tableId: "+I,"cellId: Id"+ve,"descending: boolean","offset: number","limit: number"+ve,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(h+c,"("+At(""+d,"tableId: "+I,Se,`getCellChange: ${D}${ve}`)+")"+Fe,ot(5,3)),W=e(w+c,"("+At(""+d,"tableId: "+I,Se)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${Se}, cellId: CId, newCell: ${V}<TId, CId> ${ve}, oldCell: ${V}<TId, CId> ${ve}, getCellChange: ${D} ${ve}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${T}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[r,s,I,$,u,y,v,T,V,k,P,S,O,j,N,L,G,M,J,z,W,e(m+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(fe+m+c,`(${d}, tableId: Id, ${Se}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,l)=>{const o=t+": "+l,d=e(v,Ot(...n(((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`))),Ye(2,5)),r=e(v+Ue,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),s=e(y+ge,"keyof "+d,"A "+y+" Id in "+je),I=e(y,Te+`<${d}[VId]>`,"A "+y+" Id in "+je,`<VId extends ${s}>`),i=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+je,`<VId = ${s}>`,0),$=e(y+ie,`(...[valueId, value]: ${i})`+Fe,nt(se+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,Ie+" returning information about any Value's changes during a "+Ge),p=e(v+c,`(${o}, getValueChange: ${u}${ve})`+Fe,ot(9)),b=e(T+c,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${I}<VId> ${ve}, oldValue: ${I}<VId> ${ve}, getValueChange: ${u} ${ve}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,I,$,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(fe+y+c,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Ne+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+Ge)],Gt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),Mt=(e,t=a)=>`fluent(() => ${Gt(e,t)})`,Jt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,zt=(e,t,n)=>{const[o,r,i,V,x,k,S,A]=Dt(),[O,E,N]=Nt(e,t,x),[L,G,J]=Lt(i,O,E,N),W=ee(),B=(e=0)=>ae(W,(([t,l,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${l} => ${n},`]:[r+d+`(${t}): ${l};`];return e||z(s,St(o)),M(s,a),s})),F=(e,t,l,n,o,d=a)=>Tt(W,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,r=a,s=a)=>F(pt[e]+t+(4==e?Ve:a)+l,d,n,(n==H?Mt:Gt)(pt[e]+(4==e?Ve:a)+l,r,e?void 0:n),o,s),_=(e,t,l,n=a,o=a,d=1,r=a)=>F($+e+c,(n?n+", ":a)+we+": "+t+(d?", mutator?: boolean":a),ge,Jt($+e+c,o,d?"mutator":a),l,r),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if(r(1,Z,H,`create${H} as create${H}Decl`),Q(e))r(null,l,b);else{r(0,l,"CellChange"),r(null,l,u);const[e,t,n,o,c,$,y,v,T,V,k,S,A,N,G,J,z,W,B,F,Q,le,ae]=L(q,H),de=ee();O(((e,t)=>{const l=`<'${e}'>`,a=[i(t+p,o+l,Pe+` the '${e}' `+p),i(t+p+Ue,c+l,Pe+` the '${e}' `+p+_e),i(t+h,$+l,et(e)),i(t+h+Ue,y+l,et(e,1)),i(t+m+ge,v+l,`A Cell Id for the '${e}' `+p),i(t+m+ie,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+p)),i(t+h+ie,k+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),i(t+p+m+ie,S+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),r(1,Z,...a)})),r(1,Z,e,t,n,v,A,N,G,J,z,W,B,F,Q,le,ae),oe=[e,t,n,v,N,G,J,z,W,B,F,Q,le,de],D([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,Ye(1,n),t,l))),U(0,a,C,n+De,tt(p,je)),U(5,a,p,Be,lt(p,je),"tableCallback: "+A,"tableCallback as any"),O(((e,t,l)=>{const[n,o,r,s,I,c,i,$]=te(de,e);D([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],r)=>U(r,t,p,n,It(e,r),o,l+d))),U(0,t,p+w,u,tt(m,"the whole of "+rt(e)),a,l),U(5,t,p+m,Be,lt(p+m,"the whole of "+rt(e)),"tableCellCallback: "+$,l+", tableCellCallback as any"),U(0,t,g,u,tt(h,rt(e)),a,l),U(0,t,f,u,tt(h,rt(e),1),"cellId?: "+I+Ee,l+", cellId, descending, offset, limit"),U(5,t,h,Be,lt(h,rt(e)),"rowCallback: "+i,l+", rowCallback as any"),D([[r],[d],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=a,d=a],r)=>U(r,t,h,n,ct(e,r),Se+o,l+", rowId"+d))),U(6,t,h,ge+ve,"Add a new Row to "+rt(e),"row: "+s+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+De,tt(m,st(e)),Se,l+", rowId"),U(5,t,m,Be,lt(m,st(e)),Se+", cellCallback: "+c,l+", rowId, cellCallback as any"),E(e,((n,o,r,s,I)=>{const c="Map"+kt(o,1);ne(Y,o,c);const i=o+(R(r)?ve:a);D([[i],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,r=a],c)=>U(c,t+I,m,o,it(e,n,c),Se+d,l+", rowId, "+s+r))),U(1,t+I,p+m,d,ut[1]+` the '${n}' Cell anywhere in `+rt(e),a,l+", "+s)}))})),U(0,a,b+me,me,Ye(1,6)),U(2,a,b+me,H,Ye(1,7),"tablesJson: "+me,"tables"+me),_(b,N,Ye(1,8)+" changes"),_(C,G,dt(2,0,1)),_(p,J,dt(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(g,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,B,dt(13,3,1),At("tableId: TId",`cellId: ${v}<TId>`+ve,"descending: boolean","offset: number","limit: number"+ve),At("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${j(O((e=>{var t,l;return null!=(l=null==(t=te(de,e))?void 0:t[4])?l:a}))," | ")} | null`,"tableId, rowId, cellId"),_(fe+m,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),r(1,Z,...K(Y)),M(X,".set"+b+Ae+"({",Rt(O(((e,t,l)=>[`[${l}]: {`,...E(e,((e,t,l,n)=>`[${n}]: {[${x(Pt(s),`'${s}'`)}]: ${x(Pt(t),`'${t}'`)}${R(l)?a:`, [${x(Pt(I),`'${I}'`)}]: `+(P(l)?x(Pt(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(Q(t))r(null,l,v);else{const[e,t,n,o,c,i,$,u,p]=G(q,H);r(1,Z,e,t,n,c,i,$,u,p),de=[e,t,n,i,$,u],D([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,v,e,Ye(2,n),t,l))),U(0,a,T,n+De,tt(y,je)),U(5,a,y,"void",lt(y,je),"valueCallback: "+c,"valueCallback as any"),N(((e,t,l,n,o)=>{const r="Map"+kt(t,1);ne(Y,t,r),D([[t],[d],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,l,d=a],r)=>U(r,o,y,t,$t(e,r),l,n+d)))})),U(0,a,v+me,me,Ye(2,6)),U(2,a,v+me,H,Ye(2,7),"valuesJson: "+me,"values"+me),_(v,i,Ye(2,8)+" changes"),_(T,$,dt(10,0,1)),_(y,u,dt(11,0),`valueId: ${n} | null`,"valueId"),_(fe+y,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),r(1,Z,...K(Y)),r(0,l,"ValueChange"),M(X,".set"+v+Ae+"({",N(((e,t,l,n)=>[`[${n}]: {[${x(Pt(s),`'${s}'`)}]: ${x(Pt(t),`'${t}'`)}${R(l)?a:`, [${x(Pt(I),`'${I}'`)}]: `+(P(l)?x(Pt(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${v}]`,Ye(0,0)),U(2,a,"Content",H,Ye(0,2),`[tables, values]: [${b}, ${v}]`,"[tables, values]"),U(2,a,Le,H,`Applies a set of ${Le} to the Store`,"transactionChanges: "+Le,"transactionChanges"),le(Y,((e,t)=>i(t,`(cell: ${e}${ve}) => `+e,`Takes a ${e} Cell value and returns another`))),r(null,l,"DoRollback",ge,"IdOrNull",me,"Store",Le),r(0,l,"Get"+Le,"GetTransactionLog"),U(0,a,me,me,Ye(0,6)),U(2,a,me,H,Ye(0,7),"tablesAndValuesJson: "+me,"tablesAndValuesJson"),U(7,a,Ge,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,a,"start"+Ne,H,Je),U(7,a,"finish"+Ne,H,ze,be,"doRollback");const re=J(q,H);return _("Start"+Ne,re,ke+" just before the start of the "+Ge,a,a,0),_("WillFinish"+Ne,re,ke+" just before "+We,a,a,0),_("DidFinish"+Ne,re,ke+" just after "+We,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",a,"Store","store",ut[0]+" the underlying Store object"),r(1,l,"createStore"),r(1,Z,H,`create${H} as create${H}Decl`,re),x("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),x(q,["{",...B(1),"}"]),[o(...k(0),...S(),he+" interface "+H+" {",...B(0),"}",a,St(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),o(...k(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>i+e,Bt=e=>At(Wt(e),Wt(e)+ue),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+ie+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=At(nl+")"+Fe,_t),dl="then, then"+ue,rl=el+Kt+ge,sl="View",Il=(e,...t)=>At(...t,we+": "+e,we+pe,"mutator?: boolean"),cl=(...e)=>At(...e,we,we+ue,"mutator"),il=(e,t,n,o,d)=>{const[r,s,I,i,$,V,x,k]=Dt(),[P,S,A]=Nt(e,t,$),O=`./${kt(n)}.d`,E=`./${kt(n)}-ui-react.d`,D="tinybase/ui-react",N=kt(n,1),L=kt(N),G=N+"Or"+N+ge,J=L+"Or"+N+ge,W=L+`={${L}}`,B=ee(),F=(e,t,l,n,o,d=a)=>(s(1,E,e+" as "+e+"Decl"),Tt(B,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>F("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,r=a,I=a,c=a)=>(s(1,D,`use${t} as use${t}Core`),U(e,At(o,X,I),l,le+`(${J}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,l,n,o,d],r)=>{const s=e?[he+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[he+` function ${r}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||z(s,St(o)),M(s,a),s}));s(null,l,ge,"Store",ie,Zt+"ized"+ie),s(0,D,"ComponentReturnType"),s(null,D,"ExtraProps"),s(0,O,N);const q=I(G,N+" | "+ge,`Used when you need to refer to a ${N} in a React hook or component`),K=I(Re+xe,Et(L+ye+N,L+`ById?: {[${L}Id: Id]: ${N}}`),`Used with the ${Re} component, so that a `+N+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,E,q,K);const X=J+ye+q;$("{createContext, useContext, useMemo}","React"),$("Context",`createContext<[${N}?, {[${L}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+pe,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+ve,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Re} component context`),le=i("useHook",J+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${L} = ${Y}(${J} as Id);`,`return hook(...preParams, ((${J} == null || typeof ${J} == 'string')`,`? ${L} : ${J})?.getStore(), ...postParams)`]),ne=i("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=i("wrap",At("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=$("NullComponent","() => null");if(!Q(e)){const[e,t,n,d,r,$,y,v,T,V,x,k,A,D]=o;s(null,O,e,t,n,r,$,y,v,T,V,x,k,A),s(0,O,d),s(1,O,N),s(null,l,u,"IdOrNull");const G=i("tableView",`{${L}, rowComponent, getRowComponentProps`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,W,Ut,"/>","))",ll,", tableId,",");"]),M=i("getDefaultTableComponent","tableId: Id",j(P(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=i("getDefaultCellComponent","tableId: Id, cellId: Id",j(P(((e,t,l)=>`tableId == ${l} ? ${j(S(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,Ye(1,0)+ce);const z=_(C,C,n+De,tt(p,je)+ce);_(Oe+b+ie,Oe+b+ie,Yt,Ye(1,9)+qt,At(Wt(b)+Ht+t,Wt(b)+pe),Bt(b),Xt,At(nl,`tables: ${t})`+Fe,_t),dl),_($e+b+ie,$e+b+ie,ie,Ye(1,12),a,a,a,ol,dl);const B=I(m+xe,Et("tableId?: TId","rowId: Id","cellId?: CId",L+ye+N,Ft),at(se+m),`<TId extends ${n}, CId extends ${d}<TId>>`),F=I(h+xe,Et("tableId?: TId","rowId: Id",L+ye+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,al,Ft),at(se+h),`<TId extends ${n}>`),U=I(p+xe,Et("tableId?: TId",L+ye+N,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+p),`<TId extends ${n}>`),H=I("Sorted"+p+xe,Et("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",L+ye+N,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+"sorted "+p),`<TId extends ${n}>`),Q=I(b+xe,Et(L+ye+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));s(1,E,Q,U,H,F,B),Z(b+sl,"{"+L+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${L}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+M+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+ce),P(((e,t,l)=>{const[n,o,d,r,I]=te(D,e);s(null,O,n,o,d,r,I),_(t+p,p,n,It(e)+ce,a,l),_(t+p+w,p+w,u,tt(m,"the whole of "+rt(e))+ce,a,l);const c=_(t+g,g,u,tt(h,rt(e))+ce,a,l),i=_(t+f,f,u,tt(h,rt(e),1)+ce,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,ct(e)+ce,rl,At(l,el));const $=_(t+w,w,I+De,tt(m,st(e))+ce,rl,At(l,el));_(Oe+t+p+ie,Oe+p+ie,Yt,It(e,9)+qt,At(Wt(p)+Ht+o,Wt(p)+pe),At(l,Bt(p)),Xt,At(nl,`table: ${o})`+Fe,_t),dl),_($e+t+p+ie,$e+p+ie,ie,It(e,12),a,l,a,ol,dl),_(Oe+t+h+ie,Oe+h+ie,Yt,ct(e,9)+qt,At(rl,Wt(h)+Ht+r,Wt(h)+pe),At(l,el,Bt(h)),Xt,At(nl,`row: ${r})`+Fe,_t),dl),_("Add"+t+h+ie,"Add"+h+ie,Yt,ct(e,10)+qt,At(Wt(h)+Ht+r,Wt(h)+pe),At(l,Bt(h)),Xt,"then?: ("+At(rl+ve,"store: Store","row: "+r+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Oe+t+Ve+h+ie,Oe+Ve+h+ie,Yt,ct(e,11)+qt,At(rl,Wt(Ve+h)+Ht+r,Wt(Ve+h)+pe),At(l,el,Bt(Ve+h)),Xt,At(nl,`partialRow: ${r})`+Fe,_t),dl),_($e+t+h+ie,$e+h+ie,ie,ct(e,12),rl,At(l,el),a,ol,dl);const b=Z(t+h+sl,"{rowId, "+L+", cellComponents, getCellComponentProps"+ll+`}: ${F}<'${e}'>`,[oe+`(${$}(rowId, ${L}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],ct(e,13)+ce);Z(t+"Sorted"+p+sl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,G+"(props, "+i+`(cellId, descending, offset, limit, props.${L}), ${l}, ${b});`,It(e,13)+", sorted"+ce),Z(t+p+sl,`props: ${U}<'${e}'>`,G+"(props, "+c+`(props.${L}), ${l}, ${b});`,It(e,13)+ce),S(e,((n,o,d,r,I)=>{const c="Map"+kt(o,1);s(0,O,c),s(1,O,c);const i=_(t+I+m,m,o+(R(d)?ve:a),it(e,n)+ce,rl,At(l,el,r));_(Oe+t+I+m+ie,Oe+m+ie,Yt,it(e,n,9)+qt,At(rl,Wt(m)+Ht+o+" | "+c,Wt(m)+pe),At(l,el,r,Bt(m)),Xt,At(nl,`cell: ${o} | ${c})`+Fe,_t),dl),_($e+t+I+m+ie,$e+m+ie,ie,it(e,n,12),At(rl,"forceDel?: boolean"),At(l,el,r,"forceDel"),a,ol,dl),Z(t+I+m+sl,`{rowId, ${L}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${i}(rowId, `+L+`) ?? '', undefined, debugIds, ${r})`],it(e,n,13)+ce)}))}));const q=j(P((e=>{var t,l;return null!=(l=null==(t=te(D,e))?void 0:t[4])?l:a}))," | ");_(b+c,b+c,Be,Ye(1,8)+" changes",Il(r),cl()),_(C+c,C+c,Be,dt(2,0,1),Il($),cl()),_(p+c,p+c,Be,dt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(p+w+c,p+w+c,Be,dt(14,3,1),Il(v,`tableId: ${n} | null`),cl("tableId")),_(g+c,g+c,Be,dt(4,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(f+c,f+c,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+ve,"descending: boolean","offset: number","limit: number"+ve),cl("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(w+c,w+c,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(m+c,m+c,Be,dt(7,5),Il(A,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),cl("tableId",el,"cellId"))}if(!Q(t)){const[e,t,l,n,o,r]=d;s(null,O,...d),s(1,O,N);const $=i("getDefaultValueComponent","valueId: Id",j(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(v,v,e,Ye(2,0)+ce);const u=_(T,T,l+De,tt(y,je)+ce);_(Oe+v+ie,Oe+v+ie,Yt,Ye(2,9)+qt,At(Wt(v)+Ht+t,Wt(v)+pe),Bt(v),Xt,At(nl,`values: ${t})`+Fe,_t),dl),_(Oe+Ve+v+ie,Oe+Ve+v+ie,Yt,Ye(2,11)+qt,At(Wt(Ve+v)+Ht+t,Wt(Ve+v)+pe),Bt(Ve+v),Xt,At(nl,`partialValues: ${t})`+Fe,_t),dl),_($e+v+ie,$e+v+ie,ie,Ye(2,12),a,a,a,ol,dl);const p=I(y+xe,Et("valueId?: VId",L+ye+N,Ft),at("a Value"),`<VId extends ${l}>`),b=I(v+xe,Et(L+ye+N,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,al,Ft),at(Xe(2,1)));s(1,E,b,p),Z(v+sl,"{"+L+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${u}(${L}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+$+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+ce),A(((e,t,l,n,o)=>{const d="Map"+kt(t,1);s(0,O,d),s(1,O,d);const r=_(o+y,y,t,$t(e)+ce,a,n);_(Oe+o+y+ie,Oe+y+ie,Yt,$t(e,9)+qt,At(Wt(y)+Ht+t+" | "+d,Wt(y)+pe),At(n,Bt(y)),Xt,At(nl,`value: ${t} | ${d})`+Fe,_t),dl),_($e+o+y+ie,$e+y+ie,ie,$t(e,12),a,n,a,ol,dl),Z(o+y+sl,`{${L}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+L+`) ?? '', undefined, debugIds, ${n})`],$t(e,13)+ce)})),_(v+c,v+c,Be,Ye(2,8)+" changes",Il(n),cl()),_(T+c,T+c,Be,dt(10,0,1),Il(o),cl()),_(y+c,y+c,Be,dt(11,0),Il(r,`valueId: ${l} | null`),cl("valueId"))}return Z(Re,`{${L}, ${L}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${L} ?? contextValue[0], {...contextValue[1], ...${L}ById}],`,`[${L}, ${L}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...k(),...H(1))]},$l=(e,t,l)=>{if(Q(e)&&Q(t))return[a,a,a,a];const[n,o,d,r]=zt(e,t,l);return[n,o,...il(e,t,l,d,r)]},ul=JSON.parse;var pl=Object.defineProperty,bl=Object.defineProperties,Cl=Object.getOwnPropertyDescriptors,hl=Object.getOwnPropertySymbols,gl=Object.prototype.hasOwnProperty,fl=Object.prototype.propertyIsEnumerable,ml=(e,t,l)=>t in e?pl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,wl=(e,t)=>{for(var l in t||(t={}))gl.call(t,l)&&ml(e,l,t[l]);if(hl)for(var l of hl(t))fl.call(t,l)&&ml(e,l,t[l]);return e},yl=(e,t)=>bl(e,Cl(t)),vl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const Tl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Vl=jt((e=>{const t=()=>{const t=ul(e.getTablesSchemaJson());return!Q(t)||O(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(O(a,(t=>O(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[A(o),ee(),[0],0])),[r,s,[I]]=d,c=oe(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),ne(s,o,c),d[3]++,r==A(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]=wl({[s]:e},o==L(a)?{[I]:n}:{})})),1}))?t:{}},l=()=>{const t=ul(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:A(l)}})),t},a=e=>$l(t(),l(),e),n=e=>vl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return N(a(e),((e,a)=>Vt(l(e,yl(wl({},Tl),{filepath:"_."+t[a]})))))}));return U({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),wl({totalTables:l,totalRows:a,totalCells:n,totalValues:L(e.getValueIds()),jsonLength:xt(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=Vl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,l="",o=t(l),r="Ids",u="Table",n=u+"s",d=u+r,i="Row",a=i+r,c="Sorted"+i+r,I="Cell",w=I+r,p="Value",b=p+"s",R=p+r,C=(e,s)=>e.map(s),k=e=>null==e,v=(e,s,t)=>k(e)?null==t?void 0:t():s(e),g=e=>t(e)==o,m=()=>{},{createContext:y,useContext:h}=s,f=y([]),L=(e,s)=>{const t=h(f);return k(e)?t[s]:g(e)?((e,s)=>v(e,(e=>e[s])))(t[s+1],e):e},V=(e,s)=>{const t=L(e,s);return k(e)||g(e)?t:e},S=e=>V(e,0),T=e=>V(e,2),P=e=>V(e,4),x=e=>V(e,6),q=e=>V(e,8),O=e=>V(e,10),{useCallback:B,useEffect:M,useMemo:j,useRef:D,useState:A}=s,E=(e,s,t=[])=>{const l=j((()=>s(e)),[e,...t]);return M((()=>()=>l.destroy()),[l]),l},F=(e,s,t,l=[],o)=>{const[,r]=A(),u=B((()=>{var o,r;return null!=(r=null==(o=null==s?void 0:s["get"+e])?void 0:o.call(s,...l))?r:t}),[s,...l]),[n]=A(u),d=D(n);return j((()=>d.current=u()),[u]),G(e,s,((...e)=>{d.current=k(o)?u():e[o],r([])}),[],l),d.current},G=(e,s,t,l=[],o=[],...r)=>M((()=>{var l;const u=null==(l=null==s?void 0:s["add"+e+"Listener"])?void 0:l.call(s,...o,t,...r);return()=>null==s?void 0:s.delListener(u)}),[s,...o,...l,...r]),Q=(e,s,t,l=[],o=m,r=[],...u)=>{const n=S(e);return B((e=>v(n,(l=>v(t(e,l),(e=>o(l["set"+s](...u,e),e)))))),[n,s,...l,...r,...u])},U=(e,s,t=m,l=[],...o)=>{const r=S(e);return B((()=>t(null==r?void 0:r["del"+s](...o))),[r,s,...l,...o])},z=(e,s,t)=>{const l=O(e);return B((()=>null==l?void 0:l[s](t)),[l,s,t])},H=e=>F(d,S(e),[],[]),J=(e,s)=>F(a,S(s),[],[e]),K=(e,s,t,l=0,o,r)=>F(c,S(r),[],[e,s,t,l,o],6),N=(e,s,t)=>F(w,S(t),[],[e,s]),W=(e,s,t,l)=>F(I,S(l),void 0,[e,s,t],4),X=e=>F(R,S(e),[],[]),Y=(e,s)=>F(p,S(s),void 0,[e]),Z=(e,s)=>F("Metric",T(s),void 0,[e]),$=(e,s)=>F("SliceIds",P(s),[],[e]),_=(e,s,t)=>F("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>F("RemoteRowId",x(t),void 0,[e,s]),se=(e,s,t)=>F("LocalRowIds",x(t),[],[e,s]),te=(e,s,t)=>F("LinkedRowIds",x(t),[],[e,s]),le=(e,s)=>F("ResultRowIds",q(s),[],[e]),oe=(e,s,t,l=0,o,r)=>F("ResultSortedRowIds",q(r),[],[e,s,t,l,o],6),re=(e,s,t)=>F("ResultCellIds",q(t),[],[e,s]),ue=(e,s,t,l)=>F("ResultCell",q(l),void 0,[e,s,t]),ne=e=>F("CheckpointIds",O(e),[[],void 0,[]]),de=(e,s)=>F("Checkpoint",O(s),void 0,[e]),ie=e=>z(e,"goBackward"),ae=e=>z(e,"goForward");var ce=Object.defineProperty,Ie=Object.defineProperties,we=Object.getOwnPropertyDescriptors,pe=Object.getOwnPropertySymbols,be=Object.prototype.hasOwnProperty,Re=Object.prototype.propertyIsEnumerable,Ce=(e,s,t)=>s in e?ce(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,ke=(e,s)=>{for(var t in s||(s={}))be.call(s,t)&&Ce(e,t,s[t]);if(pe)for(var t of pe(s))Re.call(s,t)&&Ce(e,t,s[t]);return e},ve=(e,s)=>Ie(e,we(s)),ge=(e,s)=>{var t={};for(var l in e)be.call(e,l)&&s.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&pe)for(var l of pe(e))s.indexOf(l)<0&&Re.call(e,l)&&(t[l]=e[l]);return t};const{createElement:me,useMemo:ye}=s,he=({tableId:e,store:s,rowComponent:t=qe,getRowComponentProps:l,separator:o,debugIds:r},u)=>Pe(C(u,(o=>me(t,ve(ke({},Te(l,o)),{key:o,tableId:e,rowId:o,store:s,debugIds:r})))),o,r,e),fe=({queryId:e,queries:s,resultRowComponent:t=De,getResultRowComponentProps:l,separator:o,debugIds:r},u)=>Pe(C(u,(o=>me(t,ve(ke({},Te(l,o)),{key:o,queryId:e,rowId:o,queries:s,debugIds:r})))),o,r,e),Le=e=>{const s=x(e);return[s,null==s?void 0:s.getStore()]},Ve=({relationshipId:e,relationships:s,rowComponent:t=qe,getRowComponentProps:l,separator:o,debugIds:r},u,n)=>{const[d,i]=Le(s),a=null==d?void 0:d.getLocalTableId(e),c=u(e,n,d);return Pe(C(c,(e=>me(t,ve(ke({},Te(l,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:r})))),o,r,n)},Se=e=>({checkpoints:s,checkpointComponent:t=Ae,getCheckpointComponentProps:l,separator:o,debugIds:r})=>{const u=O(s);return Pe(C(e(ne(u)),(e=>me(t,ve(ke({},Te(l,e)),{key:e,checkpoints:u,checkpointId:e,debugIds:r})))),o)},Te=(e,s)=>k(e)?{}:e(s),Pe=(e,s,t,l)=>{const o=k(s)||!Array.isArray(e)?e:C(e,((e,t)=>t>0?[s,e]:e));return t?[l,":{",o,"}"]:o},xe=({tableId:e,rowId:s,cellId:t,store:o,debugIds:r})=>{var u;return Pe(l+(null!=(u=W(e,s,t,o))?u:l),void 0,r,t)},qe=({tableId:e,rowId:s,store:t,cellComponent:l=xe,getCellComponentProps:o,separator:r,debugIds:u})=>Pe(C(N(e,s,t),(r=>me(l,ve(ke({},Te(o,r)),{key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:u})))),r,u,s),Oe=e=>he(e,J(e.tableId,e.store)),Be=({valueId:e,store:s,debugIds:t})=>{var o;return Pe(l+(null!=(o=Y(e,s))?o:l),void 0,t,e)},Me=({indexId:e,sliceId:s,indexes:t,rowComponent:l=qe,getRowComponentProps:o,separator:r,debugIds:u})=>{const n=P(t),d=null==n?void 0:n.getStore(),i=null==n?void 0:n.getTableId(e),a=_(e,s,n);return Pe(C(a,(e=>me(l,ve(ke({},Te(o,e)),{key:e,tableId:i,rowId:e,store:d,debugIds:u})))),r,u,s)},je=({queryId:e,rowId:s,cellId:t,queries:o,debugIds:r})=>{var u;return Pe(l+(null!=(u=ue(e,s,t,o))?u:l),void 0,r,t)},De=({queryId:e,rowId:s,queries:t,resultCellComponent:l=je,getResultCellComponentProps:o,separator:r,debugIds:u})=>Pe(C(re(e,s,t),(r=>me(l,ve(ke({},Te(o,r)),{key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:u})))),r,u,s),Ae=({checkpoints:e,checkpointId:s,debugIds:t})=>{var o;return Pe(null!=(o=de(s,e))?o:l,void 0,t,s)},Ee=Se((e=>e[0])),Fe=Se((e=>k(e[1])?[]:[e[1]])),Ge=Se((e=>e[2]));e.BackwardCheckpointsView=Ee,e.CellView=xe,e.CheckpointView=Ae,e.CurrentCheckpointView=Fe,e.ForwardCheckpointsView=Ge,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Me,getSliceComponentProps:l,separator:o,debugIds:r})=>Pe(C($(e,s),(o=>me(t,ve(ke({},Te(l,o)),{key:o,indexId:e,sliceId:o,indexes:s,debugIds:r})))),o,r,e),e.LinkedRowsView=e=>Ve(e,te,e.firstRowId),e.LocalRowsView=e=>Ve(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>{var o;return Pe(null!=(o=Z(e,s))?o:l,void 0,t,e)},e.Provider=({store:e,storesById:t,metrics:l,metricsById:o,indexes:r,indexesById:u,relationships:n,relationshipsById:d,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:w})=>{const p=s.useContext(f);return me(f.Provider,{value:ye((()=>[null!=e?e:p[0],ke(ke({},p[1]),t),null!=l?l:p[2],ke(ke({},p[3]),o),null!=r?r:p[4],ke(ke({},p[5]),u),null!=n?n:p[6],ke(ke({},p[7]),d),null!=i?i:p[8],ke(ke({},p[9]),a),null!=c?c:p[10],ke(ke({},p[11]),I)]),[e,t,l,o,r,u,n,d,i,a,c,I,p])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:l=qe,getRowComponentProps:o,debugIds:r})=>{const[u,n]=Le(t),d=null==u?void 0:u.getRemoteTableId(e),i=ee(e,s,u);return Pe(k(d)||k(i)?null:me(l,ve(ke({},Te(o,i)),{key:i,tableId:d,rowId:i,store:n,debugIds:r})),void 0,r,s)},e.ResultCellView=je,e.ResultRowView=De,e.ResultSortedTableView=e=>{var s=e,{cellId:t,descending:l,offset:o,limit:r}=s,u=ge(s,["cellId","descending","offset","limit"]);return fe(u,oe(u.queryId,t,l,o,r,u.queries))},e.ResultTableView=e=>fe(e,le(e.queryId,e.queries)),e.RowView=qe,e.SliceView=Me,e.SortedTableView=e=>{var s=e,{cellId:t,descending:l,offset:o,limit:r}=s,u=ge(s,["cellId","descending","offset","limit"]);return he(u,K(u.tableId,t,l,o,r,u.store))},e.TableView=Oe,e.TablesView=({store:e,tableComponent:s=Oe,getTableComponentProps:t,separator:l,debugIds:o})=>Pe(C(H(e),(l=>me(s,ve(ke({},Te(t,l)),{key:l,tableId:l,store:e,debugIds:o})))),l),e.ValueView=Be,e.ValuesView=({store:e,valueComponent:s=Be,getValueComponentProps:t,separator:l,debugIds:o})=>Pe(C(X(e),(l=>me(s,ve(ke({},Te(t,l)),{key:l,valueId:l,store:e,debugIds:o})))),l),e.tableView=he,e.useAddRowCallback=(e,s,t=[],l,o=m,r=[],u=!0)=>{const n=S(l);return B((t=>v(n,(l=>v(s(t,l),(s=>o(l.addRow(e,s,u),l,s)))))),[n,e,...t,...r,u])},e.useCell=W,e.useCellIds=N,e.useCellIdsListener=(e,s,t,l,o,r)=>G(w,S(r),t,l,[e,s],o),e.useCellListener=(e,s,t,l,o,r,u)=>G(I,S(u),l,o,[e,s,t],r),e.useCheckpoint=de,e.useCheckpointIds=ne,e.useCheckpointIdsListener=(e,s,t)=>G("CheckpointIds",O(t),e,s),e.useCheckpointListener=(e,s,t,l)=>G("Checkpoint",O(l),s,t,[e]),e.useCheckpoints=e=>L(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],l,o=[])=>{const[,r]=A(),u=j((()=>s(e)),[e,...t]);return M((()=>{var e;return e=function*(){yield null==l?void 0:l(u),r(1)},new Promise(((s,t)=>{var l=s=>{try{r(e.next(s))}catch(e){t(e)}},o=s=>{try{r(e.throw(s))}catch(e){t(e)}},r=e=>e.done?s(e.value):Promise.resolve(e.value).then(l,o);r((e=e.apply(void 0,null)).next())})),()=>{u.destroy()}}),[u,...o]),u},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>j(e,s),e.useDelCellCallback=(e,s,t,l,o,r,u)=>U(o,I,r,u,e,s,t,l),e.useDelRowCallback=(e,s,t,l,o)=>U(t,i,l,o,e,s),e.useDelTableCallback=(e,s,t,l)=>U(s,u,t,l,e),e.useDelTablesCallback=(e,s,t)=>U(e,n,s,t),e.useDelValueCallback=(e,s,t,l)=>U(s,p,t,l,e),e.useDelValuesCallback=(e,s,t)=>U(e,b,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,l=m,o=[])=>{const r=O(t);return B((s=>v(r,(t=>v(e(s),(e=>l(t.goTo(e),e)))))),[r,...s,...o])},e.useIndexes=e=>L(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,l,o)=>G("LinkedRowIds",x(o),t,l,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,l,o)=>G("LocalRowIds",x(o),t,l,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,l)=>G("Metric",T(l),s,t,[e]),e.useMetrics=e=>L(e,2),e.useQueries=e=>L(e,8),e.useRedoInformation=e=>{var s;const t=O(e),[,,[o]]=ne(t);return[!k(o),ae(t),o,null!=(s=v(o,(e=>null==t?void 0:t.getCheckpoint(e))))?s:l]},e.useRelationships=e=>L(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,l,o)=>G("RemoteRowId",x(o),t,l,[e,s]),e.useResultCell=ue,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,l,o)=>G("ResultCellIds",q(o),t,l,[e,s]),e.useResultCellListener=(e,s,t,l,o,r)=>G("ResultCell",q(r),l,o,[e,s,t]),e.useResultRow=(e,s,t)=>F("ResultRow",q(t),{},[e,s]),e.useResultRowIds=le,e.useResultRowIdsListener=(e,s,t,l)=>G("ResultRowIds",q(l),s,t,[e]),e.useResultRowListener=(e,s,t,l,o)=>G("ResultRow",q(o),t,l,[e,s]),e.useResultSortedRowIds=oe,e.useResultSortedRowIdsListener=(e,s,t,l,o,r,u,n)=>G("ResultSortedRowIds",q(n),r,u,[e,s,t,l,o]),e.useResultTable=(e,s)=>F("ResultTable",q(s),{},[e]),e.useResultTableListener=(e,s,t,l)=>G("ResultTable",q(l),s,t,[e]),e.useRow=(e,s,t)=>F(i,S(t),{},[e,s]),e.useRowIds=J,e.useRowIdsListener=(e,s,t,l,o)=>G(a,S(o),s,t,[e],l),e.useRowListener=(e,s,t,l,o,r)=>G(i,S(r),t,l,[e,s],o),e.useSetCellCallback=(e,s,t,l,o,r,u,n)=>Q(r,I,l,o,u,n,e,s,t),e.useSetCheckpointCallback=(e=m,s=[],t,l=m,o=[])=>{const r=O(t);return B((s=>v(r,(t=>{const o=e(s);l(t.addCheckpoint(o),t,o)}))),[r,...s,...o])},e.useSetPartialRowCallback=(e,s,t,l,o,r,u)=>Q(o,"PartialRow",t,l,r,u,e,s),e.useSetPartialValuesCallback=(e,s,t,l,o)=>Q(t,"PartialValues",e,s,l,o),e.useSetRowCallback=(e,s,t,l,o,r,u)=>Q(o,i,t,l,r,u,e,s),e.useSetTableCallback=(e,s,t,l,o,r)=>Q(l,u,s,t,o,r,e),e.useSetTablesCallback=(e,s,t,l,o)=>Q(t,n,e,s,l,o),e.useSetValueCallback=(e,s,t,l,o,r)=>Q(l,p,s,t,o,r,e),e.useSetValuesCallback=(e,s,t,l,o)=>Q(t,b,e,s,l,o),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,l)=>G("SliceIds",P(l),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,l,o)=>G("SliceRowIds",P(o),t,l,[e,s]),e.useSortedRowIds=K,e.useSortedRowIdsListener=(e,s,t,l,o,r,u,n,d)=>G(c,S(d),r,u,[e,s,t,l,o],n),e.useStore=e=>L(e,0),e.useTable=(e,s)=>F(u,S(s),{},[e]),e.useTableCellIds=(e,s)=>F(u+w,S(s),[],[e]),e.useTableCellIdsListener=(e,s,t,l,o)=>G(u+w,S(o),s,t,[e],l),e.useTableIds=H,e.useTableIdsListener=(e,s,t,l)=>G(d,S(l),e,s,[],t),e.useTableListener=(e,s,t,l,o)=>G(u,S(o),s,t,[e],l),e.useTables=e=>F(n,S(e),{}),e.useTablesListener=(e,s,t,l)=>G(n,S(l),e,s,[],t),e.useUndoInformation=e=>{var s;const t=O(e),[o,r]=ne(t);return[(u=o,!(0==(e=>e.length)(u))),ie(t),r,null!=(s=v(r,(e=>null==t?void 0:t.getCheckpoint(e))))?s:l];var u},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,l)=>G(R,S(l),e,s,[],t),e.useValueListener=(e,s,t,l,o)=>G(p,S(o),s,t,[e],l),e.useValues=e=>F(b,S(e),{}),e.useValuesListener=(e,s,t,l)=>G(b,S(l),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,l="",o=t(l),r="Ids",u="Table",n=u+"s",d=u+r,i="Row",a=i+r,c="Sorted"+i+r,I="Cell",w=I+r,p="Value",b=p+"s",R=p+r,C=e=>null==e,k=(e,s,t)=>C(e)?null==t?void 0:t():s(e),v=e=>t(e)==o,g=()=>{},m=(e,s)=>e.map(s),{createContext:y,useContext:h}=s,f=y([]),L=(e,s)=>{const t=h(f);return C(e)?t[s]:v(e)?((e,s)=>k(e,(e=>e[s])))(t[s+1],e):e},V=(e,s)=>{const t=L(e,s);return C(e)||v(e)?t:e},S=e=>V(e,0),T=e=>V(e,2),P=e=>V(e,4),x=e=>V(e,6),q=e=>V(e,8),O=e=>V(e,10),{useCallback:B,useEffect:M,useMemo:j,useRef:D,useState:A}=s,E=(e,s,t=[])=>{const l=j((()=>s(e)),[e,...t]);return M((()=>()=>l.destroy()),[l]),l},F=(e,s,t,l=[],o)=>{const[,r]=A(),u=B((()=>{var o,r;return null!=(r=null==(o=null==s?void 0:s["get"+e])?void 0:o.call(s,...l))?r:t}),[s,...l]),[n]=A(u),d=D(n);return j((()=>d.current=u()),[u]),G(e,s,((...e)=>{d.current=C(o)?u():e[o],r([])}),[],l),d.current},G=(e,s,t,l=[],o=[],...r)=>M((()=>{var l;const u=null==(l=null==s?void 0:s["add"+e+"Listener"])?void 0:l.call(s,...o,t,...r);return()=>null==s?void 0:s.delListener(u)}),[s,...o,...l,...r]),Q=(e,s,t,l=[],o=g,r=[],...u)=>{const n=S(e);return B((e=>k(n,(l=>k(t(e,l),(e=>o(l["set"+s](...u,e),e)))))),[n,s,...l,...r,...u])},U=(e,s,t=g,l=[],...o)=>{const r=S(e);return B((()=>t(null==r?void 0:r["del"+s](...o))),[r,s,...l,...o])},z=(e,s,t)=>{const l=O(e);return B((()=>null==l?void 0:l[s](t)),[l,s,t])},H=e=>F(d,S(e),[],[]),J=(e,s)=>F(a,S(s),[],[e]),K=(e,s,t,l=0,o,r)=>F(c,S(r),[],[e,s,t,l,o],6),N=(e,s,t)=>F(w,S(t),[],[e,s]),W=(e,s,t,l)=>F(I,S(l),void 0,[e,s,t],4),X=e=>F(R,S(e),[],[]),Y=(e,s)=>F(p,S(s),void 0,[e]),Z=(e,s)=>F("Metric",T(s),void 0,[e]),$=(e,s)=>F("SliceIds",P(s),[],[e]),_=(e,s,t)=>F("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>F("RemoteRowId",x(t),void 0,[e,s]),se=(e,s,t)=>F("LocalRowIds",x(t),[],[e,s]),te=(e,s,t)=>F("LinkedRowIds",x(t),[],[e,s]),le=(e,s)=>F("ResultRowIds",q(s),[],[e]),oe=(e,s,t,l=0,o,r)=>F("ResultSortedRowIds",q(r),[],[e,s,t,l,o],6),re=(e,s,t)=>F("ResultCellIds",q(t),[],[e,s]),ue=(e,s,t,l)=>F("ResultCell",q(l),void 0,[e,s,t]),ne=e=>F("CheckpointIds",O(e),[[],void 0,[]]),de=(e,s)=>F("Checkpoint",O(s),void 0,[e]),ie=e=>z(e,"goBackward"),ae=e=>z(e,"goForward");var ce=Object.defineProperty,Ie=Object.defineProperties,we=Object.getOwnPropertyDescriptors,pe=Object.getOwnPropertySymbols,be=Object.prototype.hasOwnProperty,Re=Object.prototype.propertyIsEnumerable,Ce=(e,s,t)=>s in e?ce(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,ke=(e,s)=>{for(var t in s||(s={}))be.call(s,t)&&Ce(e,t,s[t]);if(pe)for(var t of pe(s))Re.call(s,t)&&Ce(e,t,s[t]);return e},ve=(e,s)=>Ie(e,we(s)),ge=(e,s)=>{var t={};for(var l in e)be.call(e,l)&&s.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&pe)for(var l of pe(e))s.indexOf(l)<0&&Re.call(e,l)&&(t[l]=e[l]);return t};const{createElement:me,useMemo:ye}=s,he=({tableId:e,store:s,rowComponent:t=qe,getRowComponentProps:l,separator:o,debugIds:r},u)=>Pe(m(u,(o=>me(t,ve(ke({},Te(l,o)),{key:o,tableId:e,rowId:o,store:s,debugIds:r})))),o,r,e),fe=({queryId:e,queries:s,resultRowComponent:t=De,getResultRowComponentProps:l,separator:o,debugIds:r},u)=>Pe(m(u,(o=>me(t,ve(ke({},Te(l,o)),{key:o,queryId:e,rowId:o,queries:s,debugIds:r})))),o,r,e),Le=e=>{const s=x(e);return[s,null==s?void 0:s.getStore()]},Ve=({relationshipId:e,relationships:s,rowComponent:t=qe,getRowComponentProps:l,separator:o,debugIds:r},u,n)=>{const[d,i]=Le(s),a=null==d?void 0:d.getLocalTableId(e),c=u(e,n,d);return Pe(m(c,(e=>me(t,ve(ke({},Te(l,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:r})))),o,r,n)},Se=e=>({checkpoints:s,checkpointComponent:t=Ae,getCheckpointComponentProps:l,separator:o,debugIds:r})=>{const u=O(s);return Pe(m(e(ne(u)),(e=>me(t,ve(ke({},Te(l,e)),{key:e,checkpoints:u,checkpointId:e,debugIds:r})))),o)},Te=(e,s)=>C(e)?{}:e(s),Pe=(e,s,t,l)=>{const o=C(s)||!Array.isArray(e)?e:m(e,((e,t)=>t>0?[s,e]:e));return t?[l,":{",o,"}"]:o},xe=({tableId:e,rowId:s,cellId:t,store:o,debugIds:r})=>{var u;return Pe(l+(null!=(u=W(e,s,t,o))?u:l),void 0,r,t)},qe=({tableId:e,rowId:s,store:t,cellComponent:l=xe,getCellComponentProps:o,separator:r,debugIds:u})=>Pe(m(N(e,s,t),(r=>me(l,ve(ke({},Te(o,r)),{key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:u})))),r,u,s),Oe=e=>he(e,J(e.tableId,e.store)),Be=({valueId:e,store:s,debugIds:t})=>{var o;return Pe(l+(null!=(o=Y(e,s))?o:l),void 0,t,e)},Me=({indexId:e,sliceId:s,indexes:t,rowComponent:l=qe,getRowComponentProps:o,separator:r,debugIds:u})=>{const n=P(t),d=null==n?void 0:n.getStore(),i=null==n?void 0:n.getTableId(e),a=_(e,s,n);return Pe(m(a,(e=>me(l,ve(ke({},Te(o,e)),{key:e,tableId:i,rowId:e,store:d,debugIds:u})))),r,u,s)},je=({queryId:e,rowId:s,cellId:t,queries:o,debugIds:r})=>{var u;return Pe(l+(null!=(u=ue(e,s,t,o))?u:l),void 0,r,t)},De=({queryId:e,rowId:s,queries:t,resultCellComponent:l=je,getResultCellComponentProps:o,separator:r,debugIds:u})=>Pe(m(re(e,s,t),(r=>me(l,ve(ke({},Te(o,r)),{key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:u})))),r,u,s),Ae=({checkpoints:e,checkpointId:s,debugIds:t})=>{var o;return Pe(null!=(o=de(s,e))?o:l,void 0,t,s)},Ee=Se((e=>e[0])),Fe=Se((e=>C(e[1])?[]:[e[1]])),Ge=Se((e=>e[2]));e.BackwardCheckpointsView=Ee,e.CellView=xe,e.CheckpointView=Ae,e.CurrentCheckpointView=Fe,e.ForwardCheckpointsView=Ge,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Me,getSliceComponentProps:l,separator:o,debugIds:r})=>Pe(m($(e,s),(o=>me(t,ve(ke({},Te(l,o)),{key:o,indexId:e,sliceId:o,indexes:s,debugIds:r})))),o,r,e),e.LinkedRowsView=e=>Ve(e,te,e.firstRowId),e.LocalRowsView=e=>Ve(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>{var o;return Pe(null!=(o=Z(e,s))?o:l,void 0,t,e)},e.Provider=({store:e,storesById:t,metrics:l,metricsById:o,indexes:r,indexesById:u,relationships:n,relationshipsById:d,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:w})=>{const p=s.useContext(f);return me(f.Provider,{value:ye((()=>[null!=e?e:p[0],ke(ke({},p[1]),t),null!=l?l:p[2],ke(ke({},p[3]),o),null!=r?r:p[4],ke(ke({},p[5]),u),null!=n?n:p[6],ke(ke({},p[7]),d),null!=i?i:p[8],ke(ke({},p[9]),a),null!=c?c:p[10],ke(ke({},p[11]),I)]),[e,t,l,o,r,u,n,d,i,a,c,I,p])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:l=qe,getRowComponentProps:o,debugIds:r})=>{const[u,n]=Le(t),d=null==u?void 0:u.getRemoteTableId(e),i=ee(e,s,u);return Pe(C(d)||C(i)?null:me(l,ve(ke({},Te(o,i)),{key:i,tableId:d,rowId:i,store:n,debugIds:r})),void 0,r,s)},e.ResultCellView=je,e.ResultRowView=De,e.ResultSortedTableView=e=>{var s=e,{cellId:t,descending:l,offset:o,limit:r}=s,u=ge(s,["cellId","descending","offset","limit"]);return fe(u,oe(u.queryId,t,l,o,r,u.queries))},e.ResultTableView=e=>fe(e,le(e.queryId,e.queries)),e.RowView=qe,e.SliceView=Me,e.SortedTableView=e=>{var s=e,{cellId:t,descending:l,offset:o,limit:r}=s,u=ge(s,["cellId","descending","offset","limit"]);return he(u,K(u.tableId,t,l,o,r,u.store))},e.TableView=Oe,e.TablesView=({store:e,tableComponent:s=Oe,getTableComponentProps:t,separator:l,debugIds:o})=>Pe(m(H(e),(l=>me(s,ve(ke({},Te(t,l)),{key:l,tableId:l,store:e,debugIds:o})))),l),e.ValueView=Be,e.ValuesView=({store:e,valueComponent:s=Be,getValueComponentProps:t,separator:l,debugIds:o})=>Pe(m(X(e),(l=>me(s,ve(ke({},Te(t,l)),{key:l,valueId:l,store:e,debugIds:o})))),l),e.tableView=he,e.useAddRowCallback=(e,s,t=[],l,o=g,r=[],u=!0)=>{const n=S(l);return B((t=>k(n,(l=>k(s(t,l),(s=>o(l.addRow(e,s,u),l,s)))))),[n,e,...t,...r,u])},e.useCell=W,e.useCellIds=N,e.useCellIdsListener=(e,s,t,l,o,r)=>G(w,S(r),t,l,[e,s],o),e.useCellListener=(e,s,t,l,o,r,u)=>G(I,S(u),l,o,[e,s,t],r),e.useCheckpoint=de,e.useCheckpointIds=ne,e.useCheckpointIdsListener=(e,s,t)=>G("CheckpointIds",O(t),e,s),e.useCheckpointListener=(e,s,t,l)=>G("Checkpoint",O(l),s,t,[e]),e.useCheckpoints=e=>L(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],l,o=[])=>{const[,r]=A(),u=j((()=>s(e)),[e,...t]);return M((()=>{var e;return e=function*(){yield null==l?void 0:l(u),r(1)},new Promise(((s,t)=>{var l=s=>{try{r(e.next(s))}catch(e){t(e)}},o=s=>{try{r(e.throw(s))}catch(e){t(e)}},r=e=>e.done?s(e.value):Promise.resolve(e.value).then(l,o);r((e=e.apply(void 0,null)).next())})),()=>{u.destroy()}}),[u,...o]),u},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>j(e,s),e.useDelCellCallback=(e,s,t,l,o,r,u)=>U(o,I,r,u,e,s,t,l),e.useDelRowCallback=(e,s,t,l,o)=>U(t,i,l,o,e,s),e.useDelTableCallback=(e,s,t,l)=>U(s,u,t,l,e),e.useDelTablesCallback=(e,s,t)=>U(e,n,s,t),e.useDelValueCallback=(e,s,t,l)=>U(s,p,t,l,e),e.useDelValuesCallback=(e,s,t)=>U(e,b,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,l=g,o=[])=>{const r=O(t);return B((s=>k(r,(t=>k(e(s),(e=>l(t.goTo(e),e)))))),[r,...s,...o])},e.useIndexes=e=>L(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,l,o)=>G("LinkedRowIds",x(o),t,l,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,l,o)=>G("LocalRowIds",x(o),t,l,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,l)=>G("Metric",T(l),s,t,[e]),e.useMetrics=e=>L(e,2),e.useQueries=e=>L(e,8),e.useRedoInformation=e=>{var s;const t=O(e),[,,[o]]=ne(t);return[!C(o),ae(t),o,null!=(s=k(o,(e=>null==t?void 0:t.getCheckpoint(e))))?s:l]},e.useRelationships=e=>L(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,l,o)=>G("RemoteRowId",x(o),t,l,[e,s]),e.useResultCell=ue,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,l,o)=>G("ResultCellIds",q(o),t,l,[e,s]),e.useResultCellListener=(e,s,t,l,o,r)=>G("ResultCell",q(r),l,o,[e,s,t]),e.useResultRow=(e,s,t)=>F("ResultRow",q(t),{},[e,s]),e.useResultRowIds=le,e.useResultRowIdsListener=(e,s,t,l)=>G("ResultRowIds",q(l),s,t,[e]),e.useResultRowListener=(e,s,t,l,o)=>G("ResultRow",q(o),t,l,[e,s]),e.useResultSortedRowIds=oe,e.useResultSortedRowIdsListener=(e,s,t,l,o,r,u,n)=>G("ResultSortedRowIds",q(n),r,u,[e,s,t,l,o]),e.useResultTable=(e,s)=>F("ResultTable",q(s),{},[e]),e.useResultTableListener=(e,s,t,l)=>G("ResultTable",q(l),s,t,[e]),e.useRow=(e,s,t)=>F(i,S(t),{},[e,s]),e.useRowIds=J,e.useRowIdsListener=(e,s,t,l,o)=>G(a,S(o),s,t,[e],l),e.useRowListener=(e,s,t,l,o,r)=>G(i,S(r),t,l,[e,s],o),e.useSetCellCallback=(e,s,t,l,o,r,u,n)=>Q(r,I,l,o,u,n,e,s,t),e.useSetCheckpointCallback=(e=g,s=[],t,l=g,o=[])=>{const r=O(t);return B((s=>k(r,(t=>{const o=e(s);l(t.addCheckpoint(o),t,o)}))),[r,...s,...o])},e.useSetPartialRowCallback=(e,s,t,l,o,r,u)=>Q(o,"PartialRow",t,l,r,u,e,s),e.useSetPartialValuesCallback=(e,s,t,l,o)=>Q(t,"PartialValues",e,s,l,o),e.useSetRowCallback=(e,s,t,l,o,r,u)=>Q(o,i,t,l,r,u,e,s),e.useSetTableCallback=(e,s,t,l,o,r)=>Q(l,u,s,t,o,r,e),e.useSetTablesCallback=(e,s,t,l,o)=>Q(t,n,e,s,l,o),e.useSetValueCallback=(e,s,t,l,o,r)=>Q(l,p,s,t,o,r,e),e.useSetValuesCallback=(e,s,t,l,o)=>Q(t,b,e,s,l,o),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,l)=>G("SliceIds",P(l),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,l,o)=>G("SliceRowIds",P(o),t,l,[e,s]),e.useSortedRowIds=K,e.useSortedRowIdsListener=(e,s,t,l,o,r,u,n,d)=>G(c,S(d),r,u,[e,s,t,l,o],n),e.useStore=e=>L(e,0),e.useTable=(e,s)=>F(u,S(s),{},[e]),e.useTableCellIds=(e,s)=>F(u+w,S(s),[],[e]),e.useTableCellIdsListener=(e,s,t,l,o)=>G(u+w,S(o),s,t,[e],l),e.useTableIds=H,e.useTableIdsListener=(e,s,t,l)=>G(d,S(l),e,s,[],t),e.useTableListener=(e,s,t,l,o)=>G(u,S(o),s,t,[e],l),e.useTables=e=>F(n,S(e),{}),e.useTablesListener=(e,s,t,l)=>G(n,S(l),e,s,[],t),e.useUndoInformation=e=>{var s;const t=O(e),[o,r]=ne(t);return[(u=o,!(0==(e=>e.length)(u))),ie(t),r,null!=(s=k(r,(e=>null==t?void 0:t.getCheckpoint(e))))?s:l];var u},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,l)=>G(R,S(l),e,s,[],t),e.useValueListener=(e,s,t,l,o)=>G(p,S(o),s,t,[e],l),e.useValues=e=>F(b,S(e),{}),e.useValuesListener=(e,s,t,l)=>G(b,S(l),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file