tinybase 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) 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 +6 -15
  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 +6 -15
  68. package/lib/debug/persisters/persister-sqlite3.js +6 -15
  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/ui-react.js +1 -1
  128. package/lib/ui-react.js.gz +0 -0
  129. package/lib/umd/checkpoints.js +1 -1
  130. package/lib/umd/checkpoints.js.gz +0 -0
  131. package/lib/umd/indexes.js +1 -1
  132. package/lib/umd/indexes.js.gz +0 -0
  133. package/lib/umd/metrics.js +1 -1
  134. package/lib/umd/metrics.js.gz +0 -0
  135. package/lib/umd/persisters/persister-browser.js +1 -1
  136. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  137. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  138. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  139. package/lib/umd/persisters/persister-file.js +1 -1
  140. package/lib/umd/persisters/persister-file.js.gz +0 -0
  141. package/lib/umd/persisters/persister-remote.js +1 -1
  142. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  143. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  144. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  145. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  146. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  147. package/lib/umd/relationships.js +1 -1
  148. package/lib/umd/relationships.js.gz +0 -0
  149. package/lib/umd/store.js +1 -1
  150. package/lib/umd/store.js.gz +0 -0
  151. package/lib/umd/tinybase.js +1 -1
  152. package/lib/umd/tinybase.js.gz +0 -0
  153. package/lib/umd/tools.js +1 -1
  154. package/lib/umd/tools.js.gz +0 -0
  155. package/lib/umd/ui-react.js +1 -1
  156. package/lib/umd/ui-react.js.gz +0 -0
  157. package/lib/umd-es6/checkpoints.js +1 -1
  158. package/lib/umd-es6/checkpoints.js.gz +0 -0
  159. package/lib/umd-es6/indexes.js +1 -1
  160. package/lib/umd-es6/indexes.js.gz +0 -0
  161. package/lib/umd-es6/metrics.js +1 -1
  162. package/lib/umd-es6/metrics.js.gz +0 -0
  163. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  164. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  165. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  166. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  167. package/lib/umd-es6/persisters/persister-file.js +1 -1
  168. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  169. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  170. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  171. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  172. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  173. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  174. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  175. package/lib/umd-es6/relationships.js +1 -1
  176. package/lib/umd-es6/relationships.js.gz +0 -0
  177. package/lib/umd-es6/store.js +1 -1
  178. package/lib/umd-es6/store.js.gz +0 -0
  179. package/lib/umd-es6/tinybase.js +1 -1
  180. package/lib/umd-es6/tinybase.js.gz +0 -0
  181. package/lib/umd-es6/tools.js +1 -1
  182. package/lib/umd-es6/tools.js.gz +0 -0
  183. package/lib/umd-es6/ui-react.js +1 -1
  184. package/lib/umd-es6/ui-react.js.gz +0 -0
  185. package/package.json +30 -30
  186. 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},T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},A=(e,n)=>null==e?void 0:e.delete(n),O=Object,b=O.keys,L=O.freeze,w=(e=[])=>O.fromEntries(e),x=(...e)=>O.assign({},...e),S=(e,n)=>(delete e[n],e),C=(e,n)=>i(O.entries(e),(([e,t])=>n(t,e))),N=e=>O.values(e),g=e=>u(b(e)),R=e=>(e=>f(e,O)&&e.constructor==O)(e)&&0==g(e),I=e=>new Map(e),D=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},$=(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)))},j=(e,n,t)=>p(t)?(A(e,n),e):null==e?void 0:e.set(n,t),F=(e,n,t,l=j)=>(C(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,'""')}"`,W=e=>new Set(Array.isArray(e)||p(e)?e:[e]),U=(e,n)=>null==e?void 0:e.add(n);var k=Object.defineProperty,q=Object.getOwnPropertySymbols,H=Object.prototype.hasOwnProperty,J=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={}))H.call(n,t)&&Y(e,t,n[t]);if(q)for(var t of q(n))J.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($($(t,e),n)),s=(n,r,s,v,y)=>K(void 0,null,(function*(){const f=W();C(null!=y?y:{},(e=>i(b(e),(e=>U(f,e)))));const p=P(f);if(a(p)&&T(t,n)&&v)return yield e("DROP TABLE"+B(n)),void j(t,n);if(a(p)||T(t,n)){const l=$(t,n),o=W(D(l));yield E([...i(p,(t=>K(void 0,null,(function*(){A(o,t)||(yield e(`ALTER TABLE${B(n)}ADD${B(t)}`),j(l,t,""))})))),...s?i(P(o),(t=>K(void 0,null,(function*(){t!=r&&(yield e(`ALTER TABLE${B(n)}DROP${B(t)}`),j(l,t))})))):[]])}else yield e(`CREATE TABLE${B(n)}(${B(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+B(e))))});`),j(t,n,I([[r,""],...i(p,(e=>[e,""]))]));if(a(p))T(t,n)&&(yield e("DELETE FROM"+B(n)));else{const a=[],s=[],v=[],f=d(D($(t,n)),(e=>e!=r));C(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,w(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,w(i(yield e("SELECT name,type "+G+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return j(t,n,F((i=I,T(r=t,o=n)||j(r,o,i()),$(r,o)),l,((e,n,t)=>{t!=$(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))));var r,o,i}),((e,n)=>j(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:S(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)?w(d(i(yield e(V+B(n)),(e=>[e[t],S(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 L(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 w(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 C(e,((e,o)=>{const i=s(N(x(n,m(e)?{[t]:e}:e)),0,g(n));p(i[0])||l(o,i[0])||j(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=>x(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],W(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=n,u=s(N(x(ye,i)),0,g(ye)),a=u[2],d=W(a);return[0,l,[fe(r,{[se]:null,[de]:M},se,(e=>U(d,e)&&e==a)),fe(o,{[ce]:null,[de]:M,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,n)=>U(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,P(v))};e.createCrSqliteWasmPersister=(e,n,t)=>Ee(e,t,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return yield n.execO(e,t)},new Promise(((e,n)=>{var t=e=>{try{i(r.next(e))}catch(e){n(e)}},o=e=>{try{i(r.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>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).TinyBasePersisterCrSqliteWasm={});
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=(e,n)=>e instanceof n,f=e=>null==e,p=(e,n,t)=>f(e)?null==t?void 0:t():n(e),h=e=>n(e)==r,m=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},E=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},T=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),A=Object,O=A.keys,b=A.freeze,L=(e=[])=>A.fromEntries(e),w=(...e)=>A.assign({},...e),x=(e,n)=>(delete e[n],e),S=(e,n)=>i(A.entries(e),(([e,t])=>n(t,e))),C=e=>A.values(e),N=e=>u(O(e)),g=e=>(e=>y(e,A)&&e.constructor==A)(e)&&0==N(e),R=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),$=(e,n)=>{var t;return i([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},_=(e,n,t)=>f(t)?(P(e,n),e):null==e?void 0:e.set(n,t),j=(e,n,t,l=_)=>(S(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)=>!f(((e,n)=>p(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),F="_id",M=e=>`"${e.replace(/"/g,'""')}"`,B=e=>new Set(Array.isArray(e)||f(e)?e:[e]),W=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,k=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,H=Object.prototype.propertyIsEnumerable,J=(e,n,t)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Y=(e,n)=>{for(var t in n||(n={}))q.call(n,t)&&J(e,t,n[t]);if(k)for(var t of k(n))H.call(n,t)&&J(e,t,n[t]);return e},z=(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 K="SELECT*FROM",V="FROM pragma_table_",G="WHERE",Q=(e,n)=>{const t=R(),r=(e,n)=>!f(D(D(t,e),n)),s=(n,r,s,v,y)=>z(void 0,null,(function*(){const f=B();S(null!=y?y:{},(e=>i(O(e),(e=>W(f,e)))));const p=T(f);if(a(p)&&E(t,n)&&v)return yield e("DROP TABLE"+M(n)),void _(t,n);if(a(p)||E(t,n)){const l=D(t,n),o=B(I(l));yield m([...i(p,(t=>z(void 0,null,(function*(){P(o,t)||(yield e(`ALTER TABLE${M(n)}ADD${M(t)}`),_(l,t,""))})))),...s?i(T(o),(t=>z(void 0,null,(function*(){t!=r&&(yield e(`ALTER TABLE${M(n)}DROP${M(t)}`),_(l,t))})))):[]])}else yield e(`CREATE TABLE${M(n)}(${M(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+M(e))))});`),_(t,n,R([[r,""],...i(p,(e=>[e,""]))]));if(a(p))E(t,n)&&(yield e("DELETE FROM"+M(n)));else{const a=[],s=[],v=[],f=d(I(D(t,n)),(e=>e!=r));S(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"+M(n)+"("+M(r)+o(i(f,(e=>l+M(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+M(r)+")DO UPDATE SET"+o(i(f,(e=>M(e)+"=excluded."+M(e))),l),s),yield e("DELETE FROM"+M(n)+G+M(r)+"NOT IN("+X(v)+")",v)}}));return[()=>z(void 0,null,(function*(){return j(t,L(yield m(i(yield e("SELECT name "+V+"list WHERE schema='main'AND type='table'AND name IN("+X(n)+")",n),(n=>z(void 0,[n],(function*({name:n}){return[n,L(i(yield e("SELECT name,type "+V+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return _(t,n,j((i=R,E(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)=>z(void 0,null,(function*(){const l=r(n,t)?yield e(K+M(n)+G+M(t)+"=?",["_"]):[];return a(l)?null:x(l[0],t)})),(e,n,t,l)=>z(void 0,null,(function*(){return yield s(e,n,!0,!0,{[t]:l})})),(n,t)=>z(void 0,null,(function*(){return r(n,t)?L(d(i(yield e(K+M(n)),(e=>[e[t],x(Y({},e),t)])),(([e,n])=>!f(e)&&!g(n)))):{}})),s]},X=e=>o(i(e,(()=>"?")),l),Z=JSON.parse;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 h.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),h})),h={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 h.stopAutoLoad(),yield h.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){}}))))})))),h})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),h),save:n=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>ee(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),h})),startAutoSave:()=>ee(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();g(t)&&g(l)||h.save((()=>[t,l]))})),h})),stopAutoSave:()=>(p(o,e.delListener),h),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!f((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return b(h)};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]=Q(n,o),d=ne(e,(()=>te(void 0,null,(function*(){var e;return yield i(),Z((null!=(e=yield u(r,F))?e:{})[le])}))),(e=>te(void 0,null,(function*(){return d.schedule(i,(()=>te(void 0,null,(function*(){var n;yield a(r,F,"_",{[le]:(n=e(),JSON.stringify(n,((e,n)=>y(n,Map)?A.fromEntries([...n]):n)))})}))))}))),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,p,h]=Q(n,s);return ne(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return L(d(yield m($(r,((e,n)=>oe(void 0,[e,n],(function*([e,n],t){return[e,yield p(t,n)]}))))),(e=>!g(e[1]))))})),n=yield oe(void 0,null,(function*(){return i?yield v(a,F):{}}));return g(e)&&f(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 m($(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,F,"_",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=R();return S(e,((e,o)=>{const i=s(C(w(n,h(e)?{[t]:e}:e)),0,N(n));f(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=>w(ve,h(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[ae];if(n.mode==ue){const{storeTableName:e=t}=n;return[1,l,[e],B(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=n,u=s(C(w(ye,i)),0,N(ye)),a=u[2],d=B(a);return[0,l,[fe(r,{[se]:null,[de]:F},se,(e=>W(d,e)&&e==a)),fe(o,{[ce]:null,[de]:F,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,n)=>W(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,T(v))};e.createCrSqliteWasmPersister=(e,n,t)=>Ee(e,t,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return yield n.execO(e,t)},new Promise(((e,n)=>{var t=e=>{try{i(r.next(e))}catch(e){n(e)}},o=e=>{try{i(r.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>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).TinyBasePersisterCrSqliteWasm={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,n){"use strict";const o="utf8",r=JSON.parse,i=(e,t)=>e instanceof t,l=e=>null==e,u=Object,s=u.keys,a=u.freeze,d=e=>(e=>i(e,u)&&e.constructor==u)(e)&&0==(e=>s(e).length)(e);var c=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())})),v=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())}));e.createFilePersister=(e,u)=>((e,r,s,f,y)=>{let h,p,m,g=0,A=0,S=0;const x=[],w=e=>c(void 0,null,(function*(){return 2!=g&&(g=1,yield L.schedule((()=>c(void 0,null,(function*(){yield e(),g=0}))))),L})),L={load:(t,n)=>c(void 0,null,(function*(){return yield w((()=>c(void 0,null,(function*(){try{e.setContent(yield r())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>c(void 0,[...n],(function*(n={},o={}){return L.stopAutoLoad(),yield L.load(n,o),S=1,i=(t,n)=>c(void 0,null,(function*(){return yield w((()=>c(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield r())}catch(e){}}))))})),m=t.watch(u,(()=>i())),L;var i})),stopAutoLoad:()=>{return S&&(null==(e=m)||e.close(),m=void 0,S=0),L;var e},save:t=>c(void 0,null,(function*(){return 1!=g&&(g=2,yield L.schedule((()=>c(void 0,null,(function*(){try{yield(t=e.getContent,v(void 0,null,(function*(){return yield n.writeFile(u,(e=t(),JSON.stringify(e,((e,t)=>{return i(t,Map)?(n=(e,[t,n])=>(e[t]=n,e),o={},[...t].reduce(n,o)):t;var n,o}))),o);var e})))}catch(e){}var t;g=0}))))),L})),startAutoSave:()=>c(void 0,null,(function*(){return yield L.stopAutoSave().save(),h=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();d(n)&&d(o)||L.save((()=>[n,o]))})),L})),stopAutoSave:()=>{var t,n;return t=h,n=e.delListener,!!l(t)||n(t),L},schedule:(...e)=>c(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(x,...e),yield c(void 0,null,(function*(){if(!A){for(A=1;!l((e=x,p=e.shift()));)try{yield p()}catch(e){}A=0}var e})),L})),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return a(L)})(e,(()=>v(void 0,null,(function*(){return r(yield n.readFile(u,o))}))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("fs/promises")):"function"==typeof define&&define.amd?define(["exports","fs","fs/promises"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterFile={},e.fs,e["fs/promises"]);
1
+ var e,t;e=this,t=function(e,t,n){"use strict";const o="utf8",i=(e,t)=>e instanceof t,r=e=>null==e,l=Object,s=l.keys,u=l.freeze,a=e=>(e=>i(e,l)&&e.constructor==l)(e)&&0==(e=>s(e).length)(e),d=JSON.parse;var c=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{s(n.next(e))}catch(e){i(e)}},l=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);s((n=n.apply(e,t)).next())})),f=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{s(n.next(e))}catch(e){i(e)}},l=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);s((n=n.apply(e,t)).next())}));e.createFilePersister=(e,s)=>((e,d,v,y,h)=>{let p,m,g,A=0,S=0,x=0;const w=[],L=e=>c(void 0,null,(function*(){return 2!=A&&(A=1,yield P.schedule((()=>c(void 0,null,(function*(){yield e(),A=0}))))),P})),P={load:(t,n)=>c(void 0,null,(function*(){return yield L((()=>c(void 0,null,(function*(){try{e.setContent(yield d())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>c(void 0,[...n],(function*(n={},o={}){return P.stopAutoLoad(),yield P.load(n,o),x=1,i=(t,n)=>c(void 0,null,(function*(){return yield L((()=>c(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield d())}catch(e){}}))))})),g=t.watch(s,(()=>i())),P;var i})),stopAutoLoad:()=>{return x&&(null==(e=g)||e.close(),g=void 0,x=0),P;var e},save:t=>c(void 0,null,(function*(){return 1!=A&&(A=2,yield P.schedule((()=>c(void 0,null,(function*(){try{yield(t=e.getContent,f(void 0,null,(function*(){return yield n.writeFile(s,(e=t(),JSON.stringify(e,((e,t)=>i(t,Map)?l.fromEntries([...t]):t))),o);var e})))}catch(e){}var t;A=0}))))),P})),startAutoSave:()=>c(void 0,null,(function*(){return yield P.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();a(n)&&a(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!r(t)||n(t),P},schedule:(...e)=>c(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(w,...e),yield c(void 0,null,(function*(){if(!S){for(S=1;!r((e=w,m=e.shift()));)try{yield m()}catch(e){}S=0}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u(P)})(e,(()=>f(void 0,null,(function*(){return d(yield n.readFile(s,o))}))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("fs/promises")):"function"==typeof define&&define.amd?define(["exports","fs","fs/promises"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterFile={},e.fs,e["fs/promises"]);
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=JSON.parse,n=(e,t)=>e instanceof t,o=e=>null==e,r=Object,i=r.keys,l=r.freeze,u=e=>(e=>n(e,r)&&e.constructor==r)(e)&&0==(e=>i(e).length)(e);var d=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())})),s=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())}));const a=e=>e.headers.get("ETag");e.createRemotePersister=(e,r,i,c)=>{let v;return((e,t,f,y,h)=>{let p,g,m,A=0,S=0,x=0;const T=[],P=e=>d(void 0,null,(function*(){return 2!=A&&(A=1,yield C.schedule((()=>d(void 0,null,(function*(){yield e(),A=0}))))),C})),C={load:(n,o)=>d(void 0,null,(function*(){return yield P((()=>d(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,o])}}))))})),startAutoLoad:(...n)=>d(void 0,[...n],(function*(n={},i={}){return C.stopAutoLoad(),yield C.load(n,i),x=1,l=(n,o)=>d(void 0,null,(function*(){return yield P((()=>d(void 0,null,(function*(){var r;if(o)e.setTransactionChanges(o());else try{e.setContent(null!=(r=null==n?void 0:n())?r:yield t())}catch(e){}}))))})),m=setInterval((()=>s(void 0,null,(function*(){const e=yield fetch(r,{method:"HEAD"}),t=a(e);o(v)||o(t)||t==v||(v=t,l())}))),1e3*c),C;var l})),stopAutoLoad:()=>(x&&(clearInterval(m),m=void 0,x=0),C),save:t=>d(void 0,null,(function*(){return 1!=A&&(A=2,yield C.schedule((()=>d(void 0,null,(function*(){try{yield(t=e.getContent,s(void 0,null,(function*(){return yield fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((e,t)=>{return n(t,Map)?(o=(e,[t,n])=>(e[t]=n,e),r={},[...t].reduce(o,r)):t;var o,r})))});var e})))}catch(e){}var t;A=0}))))),C})),startAutoSave:()=>d(void 0,null,(function*(){return yield C.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();u(n)&&u(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!o(t)||n(t),C},schedule:(...e)=>d(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(T,...e),yield d(void 0,null,(function*(){if(!S){for(S=1;!o((e=T,g=e.shift()));)try{yield g()}catch(e){}S=0}var e})),C})),getStore:()=>e,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l(C)})(e,(()=>s(void 0,null,(function*(){const e=yield fetch(r);return v=a(e),t(yield e.text())}))))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e instanceof t,n=e=>null==e,o=Object,i=o.keys,r=o.freeze,l=e=>(e=>t(e,o)&&e.constructor==o)(e)&&0==(e=>i(e).length)(e),u=JSON.parse;var s=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{u(n.next(e))}catch(e){i(e)}},l=e=>{try{u(n.throw(e))}catch(e){i(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);u((n=n.apply(e,t)).next())})),d=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{u(n.next(e))}catch(e){i(e)}},l=e=>{try{u(n.throw(e))}catch(e){i(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);u((n=n.apply(e,t)).next())}));const a=e=>e.headers.get("ETag");e.createRemotePersister=(e,i,c,v)=>{let f;return((e,u,y,h,p)=>{let m,g,A,S=0,x=0,T=0;const P=[],C=e=>s(void 0,null,(function*(){return 2!=S&&(S=1,yield L.schedule((()=>s(void 0,null,(function*(){yield e(),S=0}))))),L})),L={load:(t,n)=>s(void 0,null,(function*(){return yield C((()=>s(void 0,null,(function*(){try{e.setContent(yield u())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>s(void 0,[...t],(function*(t={},o={}){return L.stopAutoLoad(),yield L.load(t,o),T=1,r=(t,n)=>s(void 0,null,(function*(){return yield C((()=>s(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield u())}catch(e){}}))))})),A=setInterval((()=>d(void 0,null,(function*(){const e=yield fetch(i,{method:"HEAD"}),t=a(e);n(f)||n(t)||t==f||(f=t,r())}))),1e3*v),L;var r})),stopAutoLoad:()=>(T&&(clearInterval(A),A=void 0,T=0),L),save:n=>s(void 0,null,(function*(){return 1!=S&&(S=2,yield L.schedule((()=>s(void 0,null,(function*(){try{yield(n=e.getContent,d(void 0,null,(function*(){return yield fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=n(),JSON.stringify(e,((e,n)=>t(n,Map)?o.fromEntries([...n]):n)))});var e})))}catch(e){}var n;S=0}))))),L})),startAutoSave:()=>s(void 0,null,(function*(){return yield L.stopAutoSave().save(),m=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();l(n)&&l(o)||L.save((()=>[n,o]))})),L})),stopAutoSave:()=>{var t,o;return t=m,o=e.delListener,!!n(t)||o(t),L},schedule:(...e)=>s(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(P,...e),yield s(void 0,null,(function*(){if(!x){for(x=1;!n((e=P,g=e.shift()));)try{yield g()}catch(e){}x=0}var e})),L})),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(L)})(e,(()=>d(void 0,null,(function*(){const e=yield fetch(i);return f=a(e),u(yield e.text())}))))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="tinybase",l=",",r=t(""),o=(e,t="")=>e.join(t),i=(e,t)=>e.map(t),u=e=>e.length,a=e=>0==u(e),d=(e,t)=>e.filter(t),s=(e,t,n)=>e.slice(t,n),c=(e,...t)=>e.push(...t),v=Promise,y=JSON.parse,f=(e,t)=>e instanceof t,p=e=>null==e,h=(e,t,n)=>p(e)?null==n?void 0:n():t(e),m=e=>t(e)==r,E=e=>{return t=function*(){return v.all(e)},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t},b=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},O=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},P=(e,t)=>null==e?void 0:e.delete(t),T=Object,w=T.keys,A=T.freeze,L=(e=[])=>T.fromEntries(e),S=(...e)=>T.assign({},...e),x=(e,t)=>(delete e[t],e),g=(e,t)=>i(T.entries(e),(([e,n])=>t(n,e))),N=e=>T.values(e),C=e=>u(w(e)),R=e=>(e=>f(e,T)&&e.constructor==T)(e)&&0==C(e),I=e=>new Map(e),j=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},_=(e,t)=>null==e?void 0:e.get(t),D=(e,t)=>{var n;return i([...null!=(n=null==e?void 0:e.entries())?n:[]],(([e,n])=>t(n,e)))},$=(e,t,n)=>p(n)?(P(e,t),e):null==e?void 0:e.set(t,n),M=(e,t,n,l=$)=>(g(t,((t,l)=>n(e,l,t))),((e,t)=>{((e,t)=>{null==e||e.forEach(t)})(e,((e,n)=>t(n)))})(e,(n=>((e,t)=>!p(((e,t)=>h(e,(e=>e[t])))(e,t)))(t,n)?0:l(e,n))),e),F="_id",B=e=>`"${e.replace(/"/g,'""')}"`,k=e=>new Set(Array.isArray(e)||p(e)?e:[e]),q=(e,t)=>null==e?void 0:e.add(t);var W=Object.defineProperty,H=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,t,n)=>t in e?W(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Y=(e,t)=>{for(var n in t||(t={}))J.call(t,n)&&V(e,n,t[n]);if(H)for(var n of H(t))U.call(t,n)&&V(e,n,t[n]);return e},z=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const K="SELECT*FROM",G="FROM pragma_table_",Q="WHERE",X=(e,t)=>{const n=I(),r=(e,t)=>!p(_(_(n,e),t)),s=(t,r,s,v,y)=>z(void 0,null,(function*(){const f=k();g(null!=y?y:{},(e=>i(w(e),(e=>q(f,e)))));const p=O(f);if(a(p)&&b(n,t)&&v)return yield e("DROP TABLE"+B(t)),void $(n,t);if(a(p)||b(n,t)){const l=_(n,t),o=k(j(l));yield E([...i(p,(n=>z(void 0,null,(function*(){P(o,n)||(yield e(`ALTER TABLE${B(t)}ADD${B(n)}`),$(l,n,""))})))),...s?i(O(o),(n=>z(void 0,null,(function*(){n!=r&&(yield e(`ALTER TABLE${B(t)}DROP${B(n)}`),$(l,n))})))):[]])}else yield e(`CREATE TABLE${B(t)}(${B(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+B(e))))});`),$(n,t,I([[r,""],...i(p,(e=>[e,""]))]));if(a(p))b(n,t)&&(yield e("DELETE FROM"+B(t)));else{const a=[],s=[],v=[],f=d(j(_(n,t)),(e=>e!=r));g(y,((e,t)=>{var n;c(a,`(?${n=u(f),",?".repeat(n)})`),c(s,t,...i(f,(t=>e[t]))),c(v,t)})),yield e("INSERT INTO"+B(t)+"("+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(t)+Q+B(r)+"NOT IN("+Z(v)+")",v)}}));return[()=>z(void 0,null,(function*(){return M(n,L(yield E(i(yield e("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+Z(t)+")",t),(t=>z(void 0,[t],(function*({name:t}){return[t,L(i(yield e("SELECT name,type "+G+"info(?)",[t]),(({name:e,type:t})=>[e,t])))]})))))),((e,t,l)=>{return $(n,t,M((i=I,b(r=n,o=t)||$(r,o,i()),_(r,o)),l,((e,t,n)=>{n!=_(e,t)&&$(e,t,n)}),((e,t)=>$(e,t))));var r,o,i}),((e,t)=>$(n,t)))})),(t,n)=>z(void 0,null,(function*(){const l=r(t,n)?yield e(K+B(t)+Q+B(n)+"=?",["_"]):[];return a(l)?null:x(l[0],n)})),(e,t,n,l)=>z(void 0,null,(function*(){return yield s(e,t,!0,!0,{[n]:l})})),(t,n)=>z(void 0,null,(function*(){return r(t,n)?L(d(i(yield e(K+B(t)),(e=>[e[n],x(Y({},e),n)])),(([e,t])=>!p(e)&&!R(t)))):{}})),s]},Z=e=>o(i(e,(()=>"?")),l);var ee=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const te=(e,t,n,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:(n,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>ee(void 0,[...n],(function*(n={},r={}){return f.stopAutoLoad(),yield f.load(n,r),s=1,u=l(((n,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==n?void 0:n())?r:yield t())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),f),save:t=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ee(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),f})),startAutoSave:()=>ee(void 0,null,(function*(){return yield f.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();R(n)&&R(l)||f.save((()=>[n,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 A(f)};var ne=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const le="store",re=(e,t,n,l,[r],o)=>{const[i,u,a]=X(t,o),d=te(e,(()=>ne(void 0,null,(function*(){var e;return yield i(),y((null!=(e=yield u(r,F))?e:{})[le])}))),(e=>ne(void 0,null,(function*(){return d.schedule(i,(()=>ne(void 0,null,(function*(){var t;yield a(r,F,"_",{[le]:(t=e(),JSON.stringify(t,((e,t)=>{return f(t,Map)?(n=(e,[t,n])=>(e[t]=n,e),l={},[...t].reduce(n,l)):t;var n,l})))})}))))}))),n,l);return d};var oe=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const ie=(e,t,n,l,[r,o,[i,u,a]],s)=>{const[c,v,y,f,h]=X(t,s);return te(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return L(d(yield E(D(r,((e,t)=>oe(void 0,[e,t],(function*([e,t],n){return[e,yield f(n,t)]}))))),(e=>!R(e[1]))))})),t=yield oe(void 0,null,(function*(){return i?yield v(a,F):{}}));return R(e)&&p(t)?void 0:[e,t]}))),(e=>oe(void 0,null,(function*(){const[t,n]=e();yield c(),yield(e=>oe(void 0,null,(function*(){return yield E(D(o,((t,n)=>oe(void 0,[t,n],(function*([t,n,l,r],o){return yield h(t,n,l,r,e[o])})))))})))(t),yield(e=>oe(void 0,null,(function*(){return u?yield y(a,F,"_",e):null})))(n)}))),n,l)},ue="json",ae="autoLoadIntervalSeconds",de="rowIdColumnName",se="tableId",ce="tableName",ve={mode:ue,[ae]:1},ye={load:0,save:0,[ce]:n+"_values"},fe=(e,t,n,l)=>{const r=I();return g(e,((e,o)=>{const i=s(N(S(t,m(e)?{[n]:e}:e)),0,C(t));p(i[0])||l(o,i[0])||$(r,o,i)})),r},pe="pragma ",he="data_version",me="schema_version",Ee=(e,t,l,r,o)=>{let i,u;const[a,d,c,v]=(e=>{const t=(e=>S(ve,m(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[ae];if(t.mode==ue){const{storeTableName:e=n}=t;return[1,l,[e],k(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=t,u=s(N(S(ye,i)),0,C(ye)),a=u[2],d=k(a);return[0,l,[fe(r,{[se]:null,[de]:F},se,(e=>q(d,e)&&e==a)),fe(o,{[ce]:null,[de]:F,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,t)=>q(d,t)&&t==a)),u],d]})(t);return(a?re:ie)(e,l,(e=>[setInterval((()=>{return t=function*(){try{const t=(yield l(pe+he))[0][he],n=(yield l(pe+me))[0][me];t==(null!=i?i:i=t)&&n==(null!=u?u:u=n)||(e(),i=t,u=n)}catch(e){}},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t}),1e3*d),r((t=>v.has(t)?e():0))]),(([e,t])=>{clearInterval(e),i=u=null,o(t)}),c,O(v))};var be=Object.defineProperty,Oe=Object.getOwnPropertySymbols,Pe=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable,we=(e,t,n)=>t in e?be(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;e.createSqliteWasmPersister=(e,t,n,l)=>Ee(e,l,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return n.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,t)=>{for(var n in t||(t={}))Pe.call(t,n)&&we(e,n,t[n]);if(Oe)for(var n of Oe(t))Te.call(t,n)&&we(e,n,t[n]);return e})({},e)))},new Promise(((e,t)=>{var n=e=>{try{i(r.next(e))}catch(e){t(e)}},o=e=>{try{i(r.throw(e))}catch(e){t(e)}},i=t=>t.done?e(t.value):Promise.resolve(t.value).then(n,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>t.capi.sqlite3_update_hook(n,((t,n,l,r)=>e(r)),0)),(()=>t.capi.sqlite3_update_hook(n,(()=>0),0)))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="tinybase",l=",",r=t(""),o=(e,t="")=>e.join(t),i=(e,t)=>e.map(t),u=e=>e.length,a=e=>0==u(e),d=(e,t)=>e.filter(t),s=(e,t,n)=>e.slice(t,n),c=(e,...t)=>e.push(...t),v=Promise,y=(e,t)=>e instanceof t,f=e=>null==e,p=(e,t,n)=>f(e)?null==n?void 0:n():t(e),h=e=>t(e)==r,m=e=>{return t=function*(){return v.all(e)},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t},E=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},b=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},O=(e,t)=>null==e?void 0:e.delete(t),P=Object,T=P.keys,w=P.freeze,A=(e=[])=>P.fromEntries(e),L=(...e)=>P.assign({},...e),S=(e,t)=>(delete e[t],e),x=(e,t)=>i(P.entries(e),(([e,n])=>t(n,e))),g=e=>P.values(e),N=e=>u(T(e)),C=e=>(e=>y(e,P)&&e.constructor==P)(e)&&0==N(e),R=e=>new Map(e),I=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},j=(e,t)=>null==e?void 0:e.get(t),_=(e,t)=>{var n;return i([...null!=(n=null==e?void 0:e.entries())?n:[]],(([e,n])=>t(n,e)))},D=(e,t,n)=>f(n)?(O(e,t),e):null==e?void 0:e.set(t,n),$=(e,t,n,l=D)=>(x(t,((t,l)=>n(e,l,t))),((e,t)=>{((e,t)=>{null==e||e.forEach(t)})(e,((e,n)=>t(n)))})(e,(n=>((e,t)=>!f(((e,t)=>p(e,(e=>e[t])))(e,t)))(t,n)?0:l(e,n))),e),M="_id",F=e=>`"${e.replace(/"/g,'""')}"`,B=e=>new Set(Array.isArray(e)||f(e)?e:[e]),k=(e,t)=>null==e?void 0:e.add(t);var q=Object.defineProperty,W=Object.getOwnPropertySymbols,H=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable,U=(e,t,n)=>t in e?q(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,V=(e,t)=>{for(var n in t||(t={}))H.call(t,n)&&U(e,n,t[n]);if(W)for(var n of W(t))J.call(t,n)&&U(e,n,t[n]);return e},Y=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const z="SELECT*FROM",K="FROM pragma_table_",G="WHERE",Q=(e,t)=>{const n=R(),r=(e,t)=>!f(j(j(n,e),t)),s=(t,r,s,v,y)=>Y(void 0,null,(function*(){const f=B();x(null!=y?y:{},(e=>i(T(e),(e=>k(f,e)))));const p=b(f);if(a(p)&&E(n,t)&&v)return yield e("DROP TABLE"+F(t)),void D(n,t);if(a(p)||E(n,t)){const l=j(n,t),o=B(I(l));yield m([...i(p,(n=>Y(void 0,null,(function*(){O(o,n)||(yield e(`ALTER TABLE${F(t)}ADD${F(n)}`),D(l,n,""))})))),...s?i(b(o),(n=>Y(void 0,null,(function*(){n!=r&&(yield e(`ALTER TABLE${F(t)}DROP${F(n)}`),D(l,n))})))):[]])}else yield e(`CREATE TABLE${F(t)}(${F(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+F(e))))});`),D(n,t,R([[r,""],...i(p,(e=>[e,""]))]));if(a(p))E(n,t)&&(yield e("DELETE FROM"+F(t)));else{const a=[],s=[],v=[],f=d(I(j(n,t)),(e=>e!=r));x(y,((e,t)=>{var n;c(a,`(?${n=u(f),",?".repeat(n)})`),c(s,t,...i(f,(t=>e[t]))),c(v,t)})),yield e("INSERT INTO"+F(t)+"("+F(r)+o(i(f,(e=>l+F(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+F(r)+")DO UPDATE SET"+o(i(f,(e=>F(e)+"=excluded."+F(e))),l),s),yield e("DELETE FROM"+F(t)+G+F(r)+"NOT IN("+X(v)+")",v)}}));return[()=>Y(void 0,null,(function*(){return $(n,A(yield m(i(yield e("SELECT name "+K+"list WHERE schema='main'AND type='table'AND name IN("+X(t)+")",t),(t=>Y(void 0,[t],(function*({name:t}){return[t,A(i(yield e("SELECT name,type "+K+"info(?)",[t]),(({name:e,type:t})=>[e,t])))]})))))),((e,t,l)=>{return D(n,t,$((i=R,E(r=n,o=t)||D(r,o,i()),j(r,o)),l,((e,t,n)=>{n!=j(e,t)&&D(e,t,n)}),((e,t)=>D(e,t))));var r,o,i}),((e,t)=>D(n,t)))})),(t,n)=>Y(void 0,null,(function*(){const l=r(t,n)?yield e(z+F(t)+G+F(n)+"=?",["_"]):[];return a(l)?null:S(l[0],n)})),(e,t,n,l)=>Y(void 0,null,(function*(){return yield s(e,t,!0,!0,{[n]:l})})),(t,n)=>Y(void 0,null,(function*(){return r(t,n)?A(d(i(yield e(z+F(t)),(e=>[e[n],S(V({},e),n)])),(([e,t])=>!f(e)&&!C(t)))):{}})),s]},X=e=>o(i(e,(()=>"?")),l),Z=JSON.parse;var ee=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const te=(e,t,n,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 h.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>ee(void 0,[...n],(function*(n={},r={}){return h.stopAutoLoad(),yield h.load(n,r),s=1,u=l(((n,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==n?void 0:n())?r:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),h),save:t=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>ee(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>ee(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();C(n)&&C(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(p(o,e.delListener),h),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!f((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return w(h)};var ne=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const le="store",re=(e,t,n,l,[r],o)=>{const[i,u,a]=Q(t,o),d=te(e,(()=>ne(void 0,null,(function*(){var e;return yield i(),Z((null!=(e=yield u(r,M))?e:{})[le])}))),(e=>ne(void 0,null,(function*(){return d.schedule(i,(()=>ne(void 0,null,(function*(){var t;yield a(r,M,"_",{[le]:(t=e(),JSON.stringify(t,((e,t)=>y(t,Map)?P.fromEntries([...t]):t)))})}))))}))),n,l);return d};var oe=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const ie=(e,t,n,l,[r,o,[i,u,a]],s)=>{const[c,v,y,p,h]=Q(t,s);return te(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return A(d(yield m(_(r,((e,t)=>oe(void 0,[e,t],(function*([e,t],n){return[e,yield p(n,t)]}))))),(e=>!C(e[1]))))})),t=yield oe(void 0,null,(function*(){return i?yield v(a,M):{}}));return C(e)&&f(t)?void 0:[e,t]}))),(e=>oe(void 0,null,(function*(){const[t,n]=e();yield c(),yield(e=>oe(void 0,null,(function*(){return yield m(_(o,((t,n)=>oe(void 0,[t,n],(function*([t,n,l,r],o){return yield h(t,n,l,r,e[o])})))))})))(t),yield(e=>oe(void 0,null,(function*(){return u?yield y(a,M,"_",e):null})))(n)}))),n,l)},ue="json",ae="autoLoadIntervalSeconds",de="rowIdColumnName",se="tableId",ce="tableName",ve={mode:ue,[ae]:1},ye={load:0,save:0,[ce]:n+"_values"},fe=(e,t,n,l)=>{const r=R();return x(e,((e,o)=>{const i=s(g(L(t,h(e)?{[n]:e}:e)),0,N(t));f(i[0])||l(o,i[0])||D(r,o,i)})),r},pe="pragma ",he="data_version",me="schema_version",Ee=(e,t,l,r,o)=>{let i,u;const[a,d,c,v]=(e=>{const t=(e=>L(ve,h(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[ae];if(t.mode==ue){const{storeTableName:e=n}=t;return[1,l,[e],B(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=t,u=s(g(L(ye,i)),0,N(ye)),a=u[2],d=B(a);return[0,l,[fe(r,{[se]:null,[de]:M},se,(e=>k(d,e)&&e==a)),fe(o,{[ce]:null,[de]:M,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,t)=>k(d,t)&&t==a)),u],d]})(t);return(a?re:ie)(e,l,(e=>[setInterval((()=>{return t=function*(){try{const t=(yield l(pe+he))[0][he],n=(yield l(pe+me))[0][me];t==(null!=i?i:i=t)&&n==(null!=u?u:u=n)||(e(),i=t,u=n)}catch(e){}},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t}),1e3*d),r((t=>v.has(t)?e():0))]),(([e,t])=>{clearInterval(e),i=u=null,o(t)}),c,b(v))};var be=Object.defineProperty,Oe=Object.getOwnPropertySymbols,Pe=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable,we=(e,t,n)=>t in e?be(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;e.createSqliteWasmPersister=(e,t,n,l)=>Ee(e,l,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return n.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,t)=>{for(var n in t||(t={}))Pe.call(t,n)&&we(e,n,t[n]);if(Oe)for(var n of Oe(t))Te.call(t,n)&&we(e,n,t[n]);return e})({},e)))},new Promise(((e,t)=>{var n=e=>{try{i(r.next(e))}catch(e){t(e)}},o=e=>{try{i(r.throw(e))}catch(e){t(e)}},i=t=>t.done?e(t.value):Promise.resolve(t.value).then(n,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>t.capi.sqlite3_update_hook(n,((t,n,l,r)=>e(r)),0)),(()=>t.capi.sqlite3_update_hook(n,(()=>0),0)))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});
@@ -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=",",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=(e,n)=>e instanceof n,f=e=>null==e,p=(e,n,t)=>f(e)?null==t?void 0:t():n(e),h=e=>n(e)==r,m=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},E=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},O=(e,n)=>null==e?void 0:e.delete(n),T=Object,P=T.keys,A=T.freeze,w=(e=[])=>T.fromEntries(e),L=(...e)=>T.assign({},...e),S=(e,n)=>(delete e[n],e),g=(e,n)=>i(T.entries(e),(([e,t])=>n(t,e))),N=e=>T.values(e),x=e=>u(P(e)),C=e=>(e=>y(e,T)&&e.constructor==T)(e)&&0==x(e),R=e=>new Map(e),I=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),D=(e,n)=>{var t;return i([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},$=(e,n,t)=>f(t)?(O(e,n),e):null==e?void 0:e.set(n,t),_=(e,n,t,l=$)=>(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)=>!f(((e,n)=>p(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),F="_id",M=e=>`"${e.replace(/"/g,'""')}"`,B=e=>new Set(Array.isArray(e)||f(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var q=Object.defineProperty,H=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,W=(e,n,t)=>n in e?q(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Y=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&W(e,t,n[t]);if(H)for(var t of H(n))U.call(n,t)&&W(e,t,n[t]);return e},z=(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 K="SELECT*FROM",V="FROM pragma_table_",G="WHERE",Q=(e,n)=>{const t=R(),r=(e,n)=>!f(j(j(t,e),n)),s=(n,r,s,v,y)=>z(void 0,null,(function*(){const f=B();g(null!=y?y:{},(e=>i(P(e),(e=>k(f,e)))));const p=b(f);if(a(p)&&E(t,n)&&v)return yield e("DROP TABLE"+M(n)),void $(t,n);if(a(p)||E(t,n)){const l=j(t,n),o=B(I(l));yield m([...i(p,(t=>z(void 0,null,(function*(){O(o,t)||(yield e(`ALTER TABLE${M(n)}ADD${M(t)}`),$(l,t,""))})))),...s?i(b(o),(t=>z(void 0,null,(function*(){t!=r&&(yield e(`ALTER TABLE${M(n)}DROP${M(t)}`),$(l,t))})))):[]])}else yield e(`CREATE TABLE${M(n)}(${M(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+M(e))))});`),$(t,n,R([[r,""],...i(p,(e=>[e,""]))]));if(a(p))E(t,n)&&(yield e("DELETE FROM"+M(n)));else{const a=[],s=[],v=[],f=d(I(j(t,n)),(e=>e!=r));g(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"+M(n)+"("+M(r)+o(i(f,(e=>l+M(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+M(r)+")DO UPDATE SET"+o(i(f,(e=>M(e)+"=excluded."+M(e))),l),s),yield e("DELETE FROM"+M(n)+G+M(r)+"NOT IN("+X(v)+")",v)}}));return[()=>z(void 0,null,(function*(){return _(t,w(yield m(i(yield e("SELECT name "+V+"list WHERE schema='main'AND type='table'AND name IN("+X(n)+")",n),(n=>z(void 0,[n],(function*({name:n}){return[n,w(i(yield e("SELECT name,type "+V+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return $(t,n,_((i=R,E(r=t,o=n)||$(r,o,i()),j(r,o)),l,((e,n,t)=>{t!=j(e,n)&&$(e,n,t)}),((e,n)=>$(e,n))));var r,o,i}),((e,n)=>$(t,n)))})),(n,t)=>z(void 0,null,(function*(){const l=r(n,t)?yield e(K+M(n)+G+M(t)+"=?",["_"]):[];return a(l)?null:S(l[0],t)})),(e,n,t,l)=>z(void 0,null,(function*(){return yield s(e,n,!0,!0,{[t]:l})})),(n,t)=>z(void 0,null,(function*(){return r(n,t)?w(d(i(yield e(K+M(n)),(e=>[e[t],S(Y({},e),t)])),(([e,n])=>!f(e)&&!C(n)))):{}})),s]},X=e=>o(i(e,(()=>"?")),l),Z=JSON.parse;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 h.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),h})),h={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 h.stopAutoLoad(),yield h.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){}}))))})))),h})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),h),save:n=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>ee(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),h})),startAutoSave:()=>ee(void 0,null,(function*(){return yield h.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();C(t)&&C(l)||h.save((()=>[t,l]))})),h})),stopAutoSave:()=>(p(o,e.delListener),h),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!f((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return A(h)};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]=Q(n,o),d=ne(e,(()=>te(void 0,null,(function*(){var e;return yield i(),Z((null!=(e=yield u(r,F))?e:{})[le])}))),(e=>te(void 0,null,(function*(){return d.schedule(i,(()=>te(void 0,null,(function*(){var n;yield a(r,F,"_",{[le]:(n=e(),JSON.stringify(n,((e,n)=>y(n,Map)?T.fromEntries([...n]):n)))})}))))}))),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,p,h]=Q(n,s);return ne(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return w(d(yield m(D(r,((e,n)=>oe(void 0,[e,n],(function*([e,n],t){return[e,yield p(t,n)]}))))),(e=>!C(e[1]))))})),n=yield oe(void 0,null,(function*(){return i?yield v(a,F):{}}));return C(e)&&f(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 m(D(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,F,"_",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=R();return g(e,((e,o)=>{const i=s(N(L(n,h(e)?{[t]:e}:e)),0,x(n));f(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=>L(ve,h(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[ae];if(n.mode==ue){const{storeTableName:e=t}=n;return[1,l,[e],B(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=n,u=s(N(L(ye,i)),0,x(ye)),a=u[2],d=B(a);return[0,l,[fe(r,{[se]:null,[de]:F},se,(e=>k(d,e)&&e==a)),fe(o,{[ce]:null,[de]:F,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,n)=>k(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,b(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 +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