tinybase 4.1.0-beta.2 → 4.1.0-beta.4

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 (244) 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/common.cjs +1 -1
  7. package/lib/cjs/common.cjs.gz +0 -0
  8. package/lib/cjs/indexes.cjs +1 -1
  9. package/lib/cjs/indexes.cjs.gz +0 -0
  10. package/lib/cjs/metrics.cjs +1 -1
  11. package/lib/cjs/metrics.cjs.gz +0 -0
  12. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  13. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  14. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  15. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  16. package/lib/cjs/persisters/persister-file.cjs +1 -1
  17. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  18. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  19. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  20. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  21. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  22. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  23. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  24. package/lib/cjs/queries.cjs +1 -1
  25. package/lib/cjs/queries.cjs.gz +0 -0
  26. package/lib/cjs/relationships.cjs +1 -1
  27. package/lib/cjs/relationships.cjs.gz +0 -0
  28. package/lib/cjs/store.cjs +1 -1
  29. package/lib/cjs/store.cjs.gz +0 -0
  30. package/lib/cjs/tinybase.cjs +1 -1
  31. package/lib/cjs/tinybase.cjs.gz +0 -0
  32. package/lib/cjs/tools.cjs +1 -1
  33. package/lib/cjs/tools.cjs.gz +0 -0
  34. package/lib/cjs/ui-react-dom-debug.cjs +1 -0
  35. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  36. package/lib/cjs/ui-react-dom.cjs +1 -1
  37. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  38. package/lib/cjs/ui-react.cjs +1 -1
  39. package/lib/cjs/ui-react.cjs.gz +0 -0
  40. package/lib/cjs-es6/checkpoints.cjs +1 -1
  41. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  42. package/lib/cjs-es6/common.cjs +1 -1
  43. package/lib/cjs-es6/common.cjs.gz +0 -0
  44. package/lib/cjs-es6/indexes.cjs +1 -1
  45. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  46. package/lib/cjs-es6/metrics.cjs +1 -1
  47. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  48. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  49. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  50. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  51. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  52. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  53. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  54. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  55. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  56. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  57. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  58. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  59. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  60. package/lib/cjs-es6/queries.cjs +1 -1
  61. package/lib/cjs-es6/queries.cjs.gz +0 -0
  62. package/lib/cjs-es6/relationships.cjs +1 -1
  63. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  64. package/lib/cjs-es6/store.cjs +1 -1
  65. package/lib/cjs-es6/store.cjs.gz +0 -0
  66. package/lib/cjs-es6/tinybase.cjs +1 -1
  67. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  68. package/lib/cjs-es6/tools.cjs +1 -1
  69. package/lib/cjs-es6/tools.cjs.gz +0 -0
  70. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -0
  71. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  72. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  73. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  74. package/lib/cjs-es6/ui-react.cjs +1 -1
  75. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  76. package/lib/common.js +1 -1
  77. package/lib/common.js.gz +0 -0
  78. package/lib/debug/checkpoints.js +7 -7
  79. package/lib/debug/common.js +2 -1
  80. package/lib/debug/indexes.js +10 -9
  81. package/lib/debug/metrics.js +13 -13
  82. package/lib/debug/persisters/persister-browser.js +10 -19
  83. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +6 -15
  84. package/lib/debug/persisters/persister-file.js +10 -19
  85. package/lib/debug/persisters/persister-remote.js +10 -19
  86. package/lib/debug/persisters/persister-sqlite-wasm.js +6 -15
  87. package/lib/debug/persisters/persister-sqlite3.js +6 -15
  88. package/lib/debug/persisters.js +4 -4
  89. package/lib/debug/queries.js +3 -1
  90. package/lib/debug/relationships.js +8 -8
  91. package/lib/debug/store.js +48 -30
  92. package/lib/debug/tinybase.js +53 -34
  93. package/lib/debug/tools.js +14 -13
  94. package/lib/debug/ui-react-dom.js +2269 -72
  95. package/lib/debug/ui-react.js +89 -29
  96. package/lib/es6/checkpoints.js +1 -1
  97. package/lib/es6/checkpoints.js.gz +0 -0
  98. package/lib/es6/common.js +1 -1
  99. package/lib/es6/common.js.gz +0 -0
  100. package/lib/es6/indexes.js +1 -1
  101. package/lib/es6/indexes.js.gz +0 -0
  102. package/lib/es6/metrics.js +1 -1
  103. package/lib/es6/metrics.js.gz +0 -0
  104. package/lib/es6/persisters/persister-browser.js +1 -1
  105. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  106. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  107. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  108. package/lib/es6/persisters/persister-file.js +1 -1
  109. package/lib/es6/persisters/persister-file.js.gz +0 -0
  110. package/lib/es6/persisters/persister-remote.js +1 -1
  111. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  112. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  113. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  114. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  115. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  116. package/lib/es6/queries.js +1 -1
  117. package/lib/es6/queries.js.gz +0 -0
  118. package/lib/es6/relationships.js +1 -1
  119. package/lib/es6/relationships.js.gz +0 -0
  120. package/lib/es6/store.js +1 -1
  121. package/lib/es6/store.js.gz +0 -0
  122. package/lib/es6/tinybase.js +1 -1
  123. package/lib/es6/tinybase.js.gz +0 -0
  124. package/lib/es6/tools.js +1 -1
  125. package/lib/es6/tools.js.gz +0 -0
  126. package/lib/es6/ui-react-dom-debug.js +1 -0
  127. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  128. package/lib/es6/ui-react-dom.js +1 -1
  129. package/lib/es6/ui-react-dom.js.gz +0 -0
  130. package/lib/es6/ui-react.js +1 -1
  131. package/lib/es6/ui-react.js.gz +0 -0
  132. package/lib/indexes.js +1 -1
  133. package/lib/indexes.js.gz +0 -0
  134. package/lib/metrics.js +1 -1
  135. package/lib/metrics.js.gz +0 -0
  136. package/lib/persisters/persister-browser.js +1 -1
  137. package/lib/persisters/persister-browser.js.gz +0 -0
  138. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  139. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  140. package/lib/persisters/persister-file.js +1 -1
  141. package/lib/persisters/persister-file.js.gz +0 -0
  142. package/lib/persisters/persister-remote.js +1 -1
  143. package/lib/persisters/persister-remote.js.gz +0 -0
  144. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  145. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  146. package/lib/persisters/persister-sqlite3.js +1 -1
  147. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  148. package/lib/queries.js +1 -1
  149. package/lib/queries.js.gz +0 -0
  150. package/lib/relationships.js +1 -1
  151. package/lib/relationships.js.gz +0 -0
  152. package/lib/store.js +1 -1
  153. package/lib/store.js.gz +0 -0
  154. package/lib/tinybase.js +1 -1
  155. package/lib/tinybase.js.gz +0 -0
  156. package/lib/tools.js +1 -1
  157. package/lib/tools.js.gz +0 -0
  158. package/lib/types/queries.d.ts +304 -19
  159. package/lib/types/store.d.ts +155 -0
  160. package/lib/types/ui-react-dom.d.ts +402 -16
  161. package/lib/types/ui-react.d.ts +532 -1
  162. package/lib/types/with-schemas/internal/ui-react.d.ts +24 -14
  163. package/lib/types/with-schemas/queries.d.ts +338 -21
  164. package/lib/types/with-schemas/store.d.ts +188 -0
  165. package/lib/types/with-schemas/ui-react-dom.d.ts +435 -24
  166. package/lib/types/with-schemas/ui-react.d.ts +576 -2
  167. package/lib/ui-react-dom.js +1 -1
  168. package/lib/ui-react-dom.js.gz +0 -0
  169. package/lib/ui-react.js +1 -1
  170. package/lib/ui-react.js.gz +0 -0
  171. package/lib/umd/checkpoints.js +1 -1
  172. package/lib/umd/checkpoints.js.gz +0 -0
  173. package/lib/umd/common.js +1 -1
  174. package/lib/umd/common.js.gz +0 -0
  175. package/lib/umd/indexes.js +1 -1
  176. package/lib/umd/indexes.js.gz +0 -0
  177. package/lib/umd/metrics.js +1 -1
  178. package/lib/umd/metrics.js.gz +0 -0
  179. package/lib/umd/persisters/persister-browser.js +1 -1
  180. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  181. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  182. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  183. package/lib/umd/persisters/persister-file.js +1 -1
  184. package/lib/umd/persisters/persister-file.js.gz +0 -0
  185. package/lib/umd/persisters/persister-remote.js +1 -1
  186. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  187. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  188. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  189. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  190. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  191. package/lib/umd/queries.js +1 -1
  192. package/lib/umd/queries.js.gz +0 -0
  193. package/lib/umd/relationships.js +1 -1
  194. package/lib/umd/relationships.js.gz +0 -0
  195. package/lib/umd/store.js +1 -1
  196. package/lib/umd/store.js.gz +0 -0
  197. package/lib/umd/tinybase.js +1 -1
  198. package/lib/umd/tinybase.js.gz +0 -0
  199. package/lib/umd/tools.js +1 -1
  200. package/lib/umd/tools.js.gz +0 -0
  201. package/lib/umd/ui-react-dom-debug.js +1 -0
  202. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  203. package/lib/umd/ui-react-dom.js +1 -1
  204. package/lib/umd/ui-react-dom.js.gz +0 -0
  205. package/lib/umd/ui-react.js +1 -1
  206. package/lib/umd/ui-react.js.gz +0 -0
  207. package/lib/umd-es6/checkpoints.js +1 -1
  208. package/lib/umd-es6/checkpoints.js.gz +0 -0
  209. package/lib/umd-es6/common.js +1 -1
  210. package/lib/umd-es6/common.js.gz +0 -0
  211. package/lib/umd-es6/indexes.js +1 -1
  212. package/lib/umd-es6/indexes.js.gz +0 -0
  213. package/lib/umd-es6/metrics.js +1 -1
  214. package/lib/umd-es6/metrics.js.gz +0 -0
  215. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  216. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  217. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  218. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  219. package/lib/umd-es6/persisters/persister-file.js +1 -1
  220. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  221. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  222. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  223. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  224. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  225. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  226. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  227. package/lib/umd-es6/queries.js +1 -1
  228. package/lib/umd-es6/queries.js.gz +0 -0
  229. package/lib/umd-es6/relationships.js +1 -1
  230. package/lib/umd-es6/relationships.js.gz +0 -0
  231. package/lib/umd-es6/store.js +1 -1
  232. package/lib/umd-es6/store.js.gz +0 -0
  233. package/lib/umd-es6/tinybase.js +1 -1
  234. package/lib/umd-es6/tinybase.js.gz +0 -0
  235. package/lib/umd-es6/tools.js +1 -1
  236. package/lib/umd-es6/tools.js.gz +0 -0
  237. package/lib/umd-es6/ui-react-dom-debug.js +1 -0
  238. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  239. package/lib/umd-es6/ui-react-dom.js +1 -1
  240. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  241. package/lib/umd-es6/ui-react.js +1 -1
  242. package/lib/umd-es6/ui-react.js.gz +0 -0
  243. package/package.json +18 -17
  244. package/readme.md +3 -3
Binary file
@@ -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,s=e=>(e=>n(e,r)&&e.constructor==r)(e)&&0==(e=>i(e).length)(e);var u=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{s(n.next(e))}catch(e){r(e)}},l=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);s((n=n.apply(e,t)).next())})),a=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{s(n.next(e))}catch(e){r(e)}},l=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);s((n=n.apply(e,t)).next())}));const d="storage",c=globalThis.window,v=(e,r,i)=>((e,v,f,y,h)=>{let p,g,S,m=0,A=0,L=0;const w=[],x=e=>u(void 0,null,(function*(){return 2!=m&&(m=1,yield P.schedule((()=>u(void 0,null,(function*(){yield e(),m=0}))))),P})),P={load:(t,n)=>u(void 0,null,(function*(){return yield x((()=>u(void 0,null,(function*(){try{e.setContent(yield v())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>u(void 0,[...n],(function*(n={},o={}){return P.stopAutoLoad(),yield P.load(n,o),L=1,S=(e=>{const n=n=>{n.storageArea===i&&n.key===r&&e((()=>t(n.newValue)))};return c.addEventListener(d,n),n})(((t,n)=>u(void 0,null,(function*(){return yield x((()=>u(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield v())}catch(e){}}))))})))),P})),stopAutoLoad:()=>{return L&&(e=S,c.removeEventListener(d,e),S=void 0,L=0),P;var e},save:t=>u(void 0,null,(function*(){return 1!=m&&(m=2,yield P.schedule((()=>u(void 0,null,(function*(){try{yield(t=e.getContent,a(void 0,null,(function*(){return i.setItem(r,(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;m=0}))))),P})),startAutoSave:()=>u(void 0,null,(function*(){return yield P.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!o(t)||n(t),P},schedule:(...e)=>u(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(w,...e),yield u(void 0,null,(function*(){if(!A){for(A=1;!o((e=w,g=e.shift()));)try{yield g()}catch(e){}A=0}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l(P)})(e,(()=>a(void 0,null,(function*(){return t(i.getItem(r))}))));e.createLocalPersister=(e,t)=>v(e,t,localStorage),e.createSessionPersister=(e,t)=>v(e,t,sessionStorage)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e instanceof t,n=e=>null==e,o=Object,r=o.keys,i=o.freeze,s=e=>(e=>t(e,o)&&e.constructor==o)(e)&&0==(e=>r(e).length)(e),l=JSON.parse;var u=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{l(n.next(e))}catch(e){r(e)}},s=e=>{try{l(n.throw(e))}catch(e){r(e)}},l=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,s);l((n=n.apply(e,t)).next())})),a=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{l(n.next(e))}catch(e){r(e)}},s=e=>{try{l(n.throw(e))}catch(e){r(e)}},l=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,s);l((n=n.apply(e,t)).next())}));const d="storage",c=globalThis.window,v=(e,r,v)=>((e,f,y,h,p)=>{let g,S,m,A=0,L=0,w=0;const x=[],P=e=>u(void 0,null,(function*(){return 2!=A&&(A=1,yield T.schedule((()=>u(void 0,null,(function*(){yield e(),A=0}))))),T})),T={load:(t,n)=>u(void 0,null,(function*(){return yield P((()=>u(void 0,null,(function*(){try{e.setContent(yield f())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>u(void 0,[...t],(function*(t={},n={}){return T.stopAutoLoad(),yield T.load(t,n),w=1,m=(e=>{const t=t=>{t.storageArea===v&&t.key===r&&e((()=>l(t.newValue)))};return c.addEventListener(d,t),t})(((t,n)=>u(void 0,null,(function*(){return yield P((()=>u(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield f())}catch(e){}}))))})))),T})),stopAutoLoad:()=>{return w&&(e=m,c.removeEventListener(d,e),m=void 0,w=0),T;var e},save:n=>u(void 0,null,(function*(){return 1!=A&&(A=2,yield T.schedule((()=>u(void 0,null,(function*(){try{yield(n=e.getContent,a(void 0,null,(function*(){return v.setItem(r,(e=n(),JSON.stringify(e,((e,n)=>t(n,Map)?o.fromEntries([...n]):n))));var e})))}catch(e){}var n;A=0}))))),T})),startAutoSave:()=>u(void 0,null,(function*(){return yield T.stopAutoSave().save(),g=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||T.save((()=>[n,o]))})),T})),stopAutoSave:()=>{var t,o;return t=g,o=e.delListener,!!n(t)||o(t),T},schedule:(...e)=>u(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(x,...e),yield u(void 0,null,(function*(){if(!L){for(L=1;!n((e=x,S=e.shift()));)try{yield S()}catch(e){}L=0}var e})),T})),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i(T)})(e,(()=>a(void 0,null,(function*(){return l(v.getItem(r))}))));e.createLocalPersister=(e,t)=>v(e,t,localStorage),e.createSessionPersister=(e,t)=>v(e,t,sessionStorage)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
@@ -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,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),l=t(!0),r=t(0),o=t(t),s="Listener",i="Result",a="Ids",d="Table",u="Row",c=u+a,v="Sorted"+u+a,f="Cell",h=f+a,y=(e,t)=>e.every(t),g=(e,t)=>e.forEach(t),p=e=>L(e,((e,t)=>e+t),0),w=e=>e.length,b=e=>0==w(e),L=(e,t,n)=>e.reduce(t,n),R=(e,...t)=>e.push(...t),T=Math.max,m=Math.min,O=isFinite,S=e=>null==e,x=(e,t,n)=>S(e)?null==n?void 0:n():t(e),C=e=>t(e)==o,Q=e=>Array.isArray(e),j=()=>{},I=Object,E=I.freeze,M=e=>e.size,D=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},k=e=>S(e)||0==M(e),z=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},A=e=>e.clear(),F=(e,t)=>null==e?void 0:e.forEach(t),P=(e,t)=>null==e?void 0:e.delete(t),B=e=>new Map(e),W=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>F(e,((e,n)=>t(n,e))),G=(e,t,n)=>S(n)?(P(e,t),e):null==e?void 0:e.set(t,n),H=(e,t,n)=>(D(e,t)||G(e,t,n()),W(e,t)),J=(e,t,n,l,r=0)=>x((n?H:W)(e,t[r],r>w(t)-2?n:B),(o=>{if(r>w(t)-2)return(null==l?void 0:l(o))&&G(e,t[r]),o;const s=J(o,t,n,l,r+1);return k(o)&&G(e,t[r]),s})),K=e=>new Set(Q(e)||S(e)?e:[e]),N=(e,t)=>null==e?void 0:e.add(t),U=B([["avg",[(e,t)=>p(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=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(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=>p(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var V=Object.getOwnPropertySymbols,X=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;const Z=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=e.createStore,[a,p,L,T,m,,,Z,,$,_,ee,te]=((e,t,n)=>{const l=e.hasRow,r=B(),o=B(),s=B(),i=B(),a=B(),d=(t,n,...l)=>{const r=H(a,t,K);return g(l,(t=>N(r,t)&&n&&e.callListener(t))),l},u=(t,...n)=>x(W(a,t),(l=>{g(b(n)?z(l):n,(t=>{e.delListener(t),P(l,t)})),k(l)&&G(a,t)})),c=(e,t)=>{G(r,e,t),D(o,e)||(G(o,e,!0),G(s,e,B()),G(i,e,B()))},v=e=>{G(r,e),G(o,e),G(s,e),G(i,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=r)?void 0:e.keys())?t:[]];var e,t},e=>q(o,e),e=>D(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>G(o,e,t),c,(t,r,o,a,v)=>{c(t,r);const f=B(),h=B(),p=W(s,t),b=W(i,t),L=t=>{const o=n=>e.getCell(r,t,n),s=W(p,t),i=l(r,t)?n(a(o,t)):void 0;var d,u;if(s===i||Q(s)&&Q(i)&&(u=i,w(d=s)===w(u)&&y(d,((e,t)=>u[t]===e)))||G(f,t,[s,i]),!S(v)){const e=W(b,t),n=l(r,t)?v(o,t):void 0;e!=n&&G(h,t,n)}},R=e=>{o((()=>{F(f,(([,e],t)=>G(p,t,e))),F(h,((e,t)=>G(b,t,e)))}),f,h,p,b,e),A(f),A(h)};q(p,L),e.hasTable(r)&&g(e.getRowIds(r),(e=>{D(p,e)||L(e)})),R(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>L(n))),e.addTableListener(r,(()=>R())))},v,()=>q(a,v),d,u]})(e,0,j),ne=o(),le=o(),re=B(),oe=(e,t,...n)=>g(n,(n=>N(H(H(re,t,B),e,K),n))),se=e=>{x(W(re,e),(e=>{q(e,((e,t)=>F(t,(t=>e.delListener(t))))),A(e)})),g([le,ne],(t=>t.delTable(e)))},ie=(e,t,n)=>oe(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ae={setQueryDefinition:(o,s,i)=>{Z(o,s),se(o);const a=[],d=[[null,[s,null,null,[],B()]]],u=[],c=[],v=[];i({select:(e,t)=>{const n=C(e)?[w(a)+"",e]:[S(t)?e:t,n=>n(e,t)];return R(a,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=S(n)||C(t)?null:t,r=S(l)?t:n,o=[e,[e,l,C(r)?r:e=>e(r),[],B()]];return R(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>R(u,C(e)?e:S(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,r)=>{var o;const s=[e,[e,C(t)?[t,n,l,r]:null!=(o=W(U,t))?o:[(e,t)=>t]]];return R(c,s),{as:e=>s[0]=e}},having:(e,t)=>R(v,C(e)?e:n=>n(e)===t)});const f=B(a);if(k(f))return ae;const h=B(d);q(h,((e,[,t])=>x(W(h,t),(({3:t})=>S(e)?0:R(t,e)))));const p=B(c);let L=ne;if(k(p)&&b(v))L=le;else{ie(o,L,le);const e=B();q(p,((t,[n,l])=>N(H(e,n,K),[t,l])));const s=K();q(f,(t=>D(e,t)?0:N(s,t)));const i=B(),a=(s,i,a,d)=>x(s,(([u,c,f,h])=>{q(i,((o,[s])=>{const i=H(u,o,B),c=W(i,a),v=d?void 0:s;if(c!==v){const s=K([[c,v]]),d=M(i);G(i,a,v),F(W(e,o),(([e,o])=>{const a=((e,t,n,l,r,o=!1)=>{if(k(n))return;const[s,i,a,d]=r;return o||(o=S(e)),F(l,(([n,l])=>{o||(e=S(n)?null==i?void 0:i(e,l,t++):S(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=S(e)))})),o?s(z(n),M(n)):e})(h[e],d,i,s,o);h[e]=S((e=>{const o=t(e);return(e=>e==n||e==l)(o)||o==r&&O(e)?o:void 0})(a))?null:a}))}})),k(c)||!y(v,(e=>e((e=>h[e]))))?le.delRow(o,f):S(f)?s[2]=le.addRow(o,h):le.setRow(o,f,h)}));oe(L,o,L.addRowListener(o,null,((t,n,l,r)=>{const d=[],u=[],c=B(),v=L.hasRow(o,l);let f=!v;F(s,(e=>{const[t,n,s]=r(o,l,e);R(d,n),R(u,s),f||(f=t)})),q(e,(e=>{const[t,,n]=r(o,l,e);(f||t)&&G(c,e,[n])})),f&&a(J(i,d,void 0,(([,e])=>(P(e,l),k(e)))),c,l,1),v&&a(J(i,u,(()=>{const e={};return F(s,(t=>e[t]=L.getCell(o,l,t))),[B(),K(),void 0,e]}),(([,e])=>{N(e,l)})),c,l)})))}ie(o,e,L);const T=(t,n,l,r)=>{const i=t=>e.getCell(n,l,t);g(r,(n=>{var l;const[r,,s,a,d]=W(h,n),u=null==s?void 0:s(i,t),[c,v]=null!=(l=W(d,t))?l:[];u!=c&&(S(v)||te(o,v),G(d,t,S(u)?null:[u,...ee(o,1,e.addRowListener(r,u,(()=>T(t,r,u,a))))]))})),(t=>{const n=(n,l)=>{var r,o,i;return e.getCell(...S(l)?[s,t,n]:n===s?[s,t,l]:[null==(r=W(h,n))?void 0:r[0],null==(i=W(null==(o=W(h,n))?void 0:o[4],t))?void 0:i[0],l])};L.transaction((()=>y(u,(e=>e(n)))?q(f,((e,l)=>((e,t,n,l,r)=>S(r)?e.delCell(t,n,l,!0):e.setCell(t,n,l,r))(L,o,t,e,l(n,t)))):L.delRow(o,t)))})(t)},{3:m}=W(h,null);return L.transaction((()=>ee(o,1,e.addRowListener(s,null,((t,n,l)=>{e.hasRow(s,l)?T(l,s,l,m):(L.delRow(o,l),F(h,(({4:e})=>x(W(e,l),(([,t])=>{te(o,t),G(e,l)})))))}))))),ae},delQueryDefinition:e=>(se(e),$(e),ae),getStore:a,getQueryIds:p,forEachQuery:L,hasQuery:T,getTableId:m,delListener:e=>(le.delListener(e),ae),destroy:_,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)X.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&V)for(var l of V(e))t.indexOf(l)<0&&Y.call(e,l)&&(n[l]=e[l]);return n})(le.getListenerStats(),["tables","tableIds","transaction"])};var de,ue;return de={[d]:[1,1],[d+h]:[0,1],[c]:[0,1],[v]:[0,5],[u]:[1,2],[h]:[0,2],[f]:[1,3]},ue=([e,t],n)=>{g(e?["get","has","forEach"]:["get"],(e=>ae[e+i+n]=(...t)=>le[e+n](...t))),ae["add"+i+n+s]=(...e)=>{return le["add"+n+s](...(l=e,0,r=t,l.slice(0,r)),((n,...l)=>e[t](ae,...l)));var l,r}},((e,t)=>{e.map(t)})(I.entries(de),(([e,t])=>ue(t,e))),E(ae)})(e)),o.get(e))})();e.createQueries=Z},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t=n(""),l=n(!0),r=n(0),o=n(n),s="Listener",i="Result",a="Ids",d="Table",u="Row",c=u+"Count",v=u+a,f="Sorted"+u+a,h="Cell",y=h+a,g=(e,n)=>e.every(n),p=(e,n)=>e.forEach(n),w=e=>R(e,((e,n)=>e+n),0),b=e=>e.length,L=e=>0==b(e),R=(e,n,t)=>e.reduce(n,t),T=(e,...n)=>e.push(...n),m=Math.max,C=Math.min,O=isFinite,S=e=>null==e,x=(e,n,t)=>S(e)?null==t?void 0:t():n(e),Q=e=>n(e)==o,j=e=>Array.isArray(e),I=()=>{},E=Object,M=E.freeze,D=e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0},k=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},z=e=>S(e)||0==D(e),A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},F=e=>e.clear(),P=(e,n)=>null==e?void 0:e.forEach(n),B=(e,n)=>null==e?void 0:e.delete(n),W=e=>new Map(e),q=(e,n)=>null==e?void 0:e.get(n),G=(e,n)=>P(e,((e,t)=>n(t,e))),H=(e,n,t)=>S(t)?(B(e,n),e):null==e?void 0:e.set(n,t),J=(e,n,t)=>(k(e,n)||H(e,n,t()),q(e,n)),K=(e,n,t,l,r=0)=>x((t?J:q)(e,n[r],r>b(n)-2?t:W),(o=>{if(r>b(n)-2)return(null==l?void 0:l(o))&&H(e,n[r]),o;const s=K(o,n,t,l,r+1);return z(o)&&H(e,n[r]),s})),N=e=>new Set(j(e)||S(e)?e:[e]),U=(e,n)=>null==e?void 0:e.add(n),V=W([["avg",[(e,n)=>w(e)/n,(e,n,t)=>e+(n-e)/(t+1),(e,n,t)=>e+(e-n)/(t-1),(e,n,t,l)=>e+(n-t)/l]],["max",[e=>m(...e),(e,n)=>m(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:m(n,e)]],["min",[e=>C(...e),(e,n)=>C(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:C(n,e)]],["sum",[e=>w(e),(e,n)=>e+n,(e,n)=>e-n,(e,n,t)=>e-t+n]]]);var X=Object.getOwnPropertySymbols,Y=Object.prototype.hasOwnProperty,Z=Object.prototype.propertyIsEnumerable;const $=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=e.createStore,[a,w,R,m,C,,,$,,_,ee,ne,te]=((e,n,t)=>{const l=e.hasRow,r=W(),o=W(),s=W(),i=W(),a=W(),d=(n,t,...l)=>{const r=J(a,n,N);return p(l,(n=>U(r,n)&&t&&e.callListener(n))),l},u=(n,...t)=>x(q(a,n),(l=>{p(L(t)?A(l):t,(n=>{e.delListener(n),B(l,n)})),z(l)&&H(a,n)})),c=(e,n)=>{H(r,e,n),k(o,e)||(H(o,e,!0),H(s,e,W()),H(i,e,W()))},v=e=>{H(r,e),H(o,e),H(s,e),H(i,e),u(e)};return[()=>e,()=>{return[...null!=(n=null==(e=r)?void 0:e.keys())?n:[]];var e,n},e=>G(o,e),e=>k(o,e),e=>q(r,e),e=>q(o,e),(e,n)=>H(o,e,n),c,(n,r,o,a,v)=>{c(n,r);const f=W(),h=W(),y=q(s,n),w=q(i,n),L=n=>{const o=t=>e.getCell(r,n,t),s=q(y,n),i=l(r,n)?t(a(o,n)):void 0;var d,u;if(s===i||j(s)&&j(i)&&(u=i,b(d=s)===b(u)&&g(d,((e,n)=>u[n]===e)))||H(f,n,[s,i]),!S(v)){const e=q(w,n),t=l(r,n)?v(o,n):void 0;e!=t&&H(h,n,t)}},R=e=>{o((()=>{P(f,(([,e],n)=>H(y,n,e))),P(h,((e,n)=>H(w,n,e)))}),f,h,y,w,e),F(f),F(h)};G(y,L),e.hasTable(r)&&p(e.getRowIds(r),(e=>{k(y,e)||L(e)})),R(!0),u(n),d(n,0,e.addRowListener(r,null,((e,n,t)=>L(t))),e.addTableListener(r,(()=>R())))},v,()=>G(a,v),d,u]})(e,0,I),le=o(),re=o(),oe=W(),se=(e,n,...t)=>p(t,(t=>U(J(J(oe,n,W),e,N),t))),ie=e=>{x(q(oe,e),(e=>{G(e,((e,n)=>P(n,(n=>e.delListener(n))))),F(e)})),p([re,le],(n=>n.delTable(e)))},ae=(e,n,t)=>se(n,e,n.addStartTransactionListener(t.startTransaction),n.addDidFinishTransactionListener((()=>t.finishTransaction()))),de={setQueryDefinition:(o,s,i)=>{$(o,s),ie(o);const a=[],d=[[null,[s,null,null,[],W()]]],u=[],c=[],v=[];i({select:(e,n)=>{const t=Q(e)?[b(a)+"",e]:[S(n)?e:n,t=>t(e,n)];return T(a,t),{as:e=>t[0]=e}},join:(e,n,t)=>{const l=S(t)||Q(n)?null:n,r=S(l)?n:t,o=[e,[e,l,Q(r)?r:e=>e(r),[],W()]];return T(d,o),{as:e=>o[0]=e}},where:(e,n,t)=>T(u,Q(e)?e:S(t)?t=>t(e)===n:l=>l(e,n)===t),group:(e,n,t,l,r)=>{var o;const s=[e,[e,Q(n)?[n,t,l,r]:null!=(o=q(V,n))?o:[(e,n)=>n]]];return T(c,s),{as:e=>s[0]=e}},having:(e,n)=>T(v,Q(e)?e:t=>t(e)===n)});const f=W(a);if(z(f))return de;const h=W(d);G(h,((e,[,n])=>x(q(h,n),(({3:n})=>S(e)?0:T(n,e)))));const y=W(c);let w=le;if(z(y)&&L(v))w=re;else{ae(o,w,re);const e=W();G(y,((n,[t,l])=>U(J(e,t,N),[n,l])));const s=N();G(f,(n=>k(e,n)?0:U(s,n)));const i=W(),a=(s,i,a,d)=>x(s,(([u,c,f,h])=>{G(i,((o,[s])=>{const i=J(u,o,W),c=q(i,a),v=d?void 0:s;if(c!==v){const s=N([[c,v]]),d=D(i);H(i,a,v),P(q(e,o),(([e,o])=>{const a=((e,n,t,l,r,o=!1)=>{if(z(t))return;const[s,i,a,d]=r;return o||(o=S(e)),P(l,(([t,l])=>{o||(e=S(t)?null==i?void 0:i(e,l,n++):S(l)?null==a?void 0:a(e,t,n--):null==d?void 0:d(e,l,t,n),o||(o=S(e)))})),o?s(A(t),D(t)):e})(h[e],d,i,s,o);h[e]=S((e=>{const o=n(e);return(e=>e==t||e==l)(o)||o==r&&O(e)?o:void 0})(a))?null:a}))}})),z(c)||!g(v,(e=>e((e=>h[e]))))?re.delRow(o,f):S(f)?s[2]=re.addRow(o,h):re.setRow(o,f,h)}));se(w,o,w.addRowListener(o,null,((n,t,l,r)=>{const d=[],u=[],c=W(),v=w.hasRow(o,l);let f=!v;P(s,(e=>{const[n,t,s]=r(o,l,e);T(d,t),T(u,s),f||(f=n)})),G(e,(e=>{const[n,,t]=r(o,l,e);(f||n)&&H(c,e,[t])})),f&&a(K(i,d,void 0,(([,e])=>(B(e,l),z(e)))),c,l,1),v&&a(K(i,u,(()=>{const e={};return P(s,(n=>e[n]=w.getCell(o,l,n))),[W(),N(),void 0,e]}),(([,e])=>{U(e,l)})),c,l)})))}ae(o,e,w);const R=(n,t,l,r)=>{const i=n=>e.getCell(t,l,n);p(r,(t=>{var l;const[r,,s,a,d]=q(h,t),u=null==s?void 0:s(i,n),[c,v]=null!=(l=q(d,n))?l:[];u!=c&&(S(v)||te(o,v),H(d,n,S(u)?null:[u,...ne(o,1,e.addRowListener(r,u,(()=>R(n,r,u,a))))]))})),(n=>{const t=(t,l)=>{var r,o,i;return e.getCell(...S(l)?[s,n,t]:t===s?[s,n,l]:[null==(r=q(h,t))?void 0:r[0],null==(i=q(null==(o=q(h,t))?void 0:o[4],n))?void 0:i[0],l])};w.transaction((()=>g(u,(e=>e(t)))?G(f,((e,l)=>((e,n,t,l,r)=>S(r)?e.delCell(n,t,l,!0):e.setCell(n,t,l,r))(w,o,n,e,l(t,n)))):w.delRow(o,n)))})(n)},{3:m}=q(h,null);return w.transaction((()=>ne(o,1,e.addRowListener(s,null,((n,t,l)=>{e.hasRow(s,l)?R(l,s,l,m):(w.delRow(o,l),P(h,(({4:e})=>x(q(e,l),(([,n])=>{te(o,n),H(e,l)})))))}))))),de},delQueryDefinition:e=>(ie(e),_(e),de),getStore:a,getQueryIds:w,forEachQuery:R,hasQuery:m,getTableId:C,delListener:e=>(re.delListener(e),de),destroy:ee,getListenerStats:()=>((e,n)=>{var t={};for(var l in e)Y.call(e,l)&&n.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&X)for(var l of X(e))n.indexOf(l)<0&&Z.call(e,l)&&(t[l]=e[l]);return t})(re.getListenerStats(),["tables","tableIds","transaction"])};var ue,ce;return ue={[d]:[1,1],[d+y]:[0,1],[c]:[0,1],[v]:[0,1],[f]:[0,5],[u]:[1,2],[y]:[0,2],[h]:[1,3]},ce=([e,n],t)=>{p(e?["get","has","forEach"]:["get"],(e=>de[e+i+t]=(...n)=>re[e+t](...n))),de["add"+i+t+s]=(...e)=>{return re["add"+t+s](...(l=e,0,r=n,l.slice(0,r)),((t,...l)=>e[n](de,...l)));var l,r}},((e,n)=>{e.map(n)})(E.entries(ue),(([e,n])=>ce(n,e))),M(de)})(e)),o.get(e))})();e.createQueries=$},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
Binary file
@@ -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),i=e=>Array.isArray(e),s=(e,n)=>e.forEach(n),u=e=>e.length,d=(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=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(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>u(n)-2?t:g),(r=>{if(o>u(n)-2)return(null==l?void 0:l(r))&&y(e,n[o]),r;const i=b(r,n,t,l,o+1);return v(r)&&y(e,n[o]),i})),T=e=>new Set(i(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 d=e.hasRow,a=g(),b=g(),k=g(),E=g(),x=g(),S=(n,t,...l)=>{const o=I(x,n,T);return s(l,(n=>m(o,n)&&t&&e.callListener(n))),l},j=(n,...t)=>r(L(x,n),(l=>{s(0==u(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),s=L(I,n),c=d(l,n)?(h=a(r,n),o(h)?void 0:h+t):void 0;var h,R,g,w;if(s===c||i(s)&&i(c)&&(g=c,u(R=s)===u(g)&&(w=(e,n)=>g[n]===e,R.every(w)))||y(f,n,[s,c]),!o(v)){const e=L(b,n),t=d(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)&&s(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,i]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?e.shift():null)?o:t+n++},n=>{k.test(n)&&u(e)<1e3&&d(e,n)}]})(),a=g();return[(e,o,r,i=[],s=(()=>[]))=>{null!=n||(n=N);const u=l(1);return y(a,u,[e,o,r,i,s]),m(b(o,null!=r?r:[t],T),u),u},(e,l,...o)=>s(((e,n=[t])=>{const l=[],o=(e,t)=>t==u(n)?d(l,e):null===n[t]?R(e,(e=>o(e,t+1))):s([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),i(e),l))),e=>r(L(a,e),(([e,,t=[],l,r])=>{const i=(...d)=>{var a,c;const v=u(d);v==u(t)?e(n,...d,...r(d)):o(t[v])?s(null!=(c=null==(a=l[v])?void 0:a.call(l,...d))?c:[],(e=>i(...d,e))):i(...d,t[v])};i()}))]})(),H=(e,n,t)=>r(C(e),(([l,,r])=>{if(!c(r,n)){const i=T();if(B(e)!=K(e))m(i,n);else{let e=n;for(;!o(e)&&!c(i,e);)m(i,e),e=L(l,e)}if(t)return i;y(r,n,i)}return L(r,n)})),J=(e,n)=>r(C(e),(([,,e])=>y(e,n))),K=e=>L(E,e),N={setRelationshipDefinition:(e,i,s,u)=>{return y(E,e,s),O(e,i,((n,t)=>{const l=T(),i=T(),s=T(),[u,d]=C(e);R(t,(([n,t],a)=>{o(n)||(m(i,n),r(L(d,n),(e=>{p(e,a),v(e)&&y(d,n)}))),o(t)||(m(i,t),c(d,t)||y(d,t,T()),m(L(d,t),a)),m(l,a),y(u,a,t),w(L(j,e),(n=>{c(H(e,n),a)&&m(s,n)}))})),n(),R(l,(n=>F(x,[e,n]))),R(i,(n=>F(S,[e,n]))),R(s,(n=>{J(e,n),F(j,[e,n])}))}),n(d=u)==l?e=>e(d):null!=d?d:()=>t),N;var d},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),r=l(l),o="type",u="default",i="Ids",d="Table",c=d+"s",h=d+i,v="Row",f=v+"Count",g=v+i,T="Cell",b=T+i,V="Value",C=V+"s",S=V+i,y=e=>t+e,w=isFinite,p=(e,l)=>e instanceof l,I=e=>null==e,m=(e,l,t)=>I(e)?null==t?void 0:t():l(e),R=e=>e==n||e==s,J=e=>l(e)==r,E=(e,l)=>e.forEach(l),L=(e,l)=>e.map(l),F=e=>e.length,x=(e,l,t)=>e.slice(l,t),z=(e,...l)=>e.push(...l),O=Object,j=O.keys,k=O.isFrozen,A=O.freeze,M=e=>p(e,O)&&e.constructor==O,N=(e,l)=>!I(((e,l)=>m(e,(e=>e[l])))(e,l)),P=(e,l)=>(delete e[l],e),B=(e,l)=>L(O.entries(e),(([e,t])=>l(t,e))),D=e=>M(e)&&0==(e=>F(j(e)))(e),W=e=>{var l;return null!=(l=null==e?void 0:e.size)?l:0},$=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},q=e=>I(e)||0==W(e),G=e=>e.clear(),H=(e,l)=>null==e?void 0:e.forEach(l),K=(e,l)=>null==e?void 0:e.delete(l),Q=e=>new Map(e),U=e=>{var l;return[...null!=(l=null==e?void 0:e.keys())?l:[]]},X=(e,l)=>null==e?void 0:e.get(l),Y=(e,l)=>H(e,((e,t)=>l(t,e))),Z=(e,l,t)=>I(t)?(K(e,l),e):null==e?void 0:e.set(l,t),_=(e,l,t)=>($(e,l)||Z(e,l,t()),X(e,l)),ee=(e,l,t,n=Z)=>(B(l,((l,n)=>t(e,n,l))),Y(e,(t=>N(l,t)?0:n(e,t))),e),le=(e,l,t)=>{const n={};return H(e,((e,s)=>{const a=l?l(e,s):e;!(null==t?void 0:t(a,e))&&(n[s]=a)})),n},te=(e,l,t)=>le(e,(e=>le(e,l,t)),D),ne=(e,l,t)=>le(e,(e=>te(e,l,t)),D),se=(e,l)=>{const t=Q();return H(e,((e,n)=>{var s;return t.set(n,null!=(s=null==l?void 0:l(e))?s:e)})),t},ae=e=>se(e,se),re=e=>se(e,ae),oe=(e,l,t,n,s=0)=>m((t?_:X)(e,l[s],s>F(l)-2?t:Q),(a=>{if(s>F(l)-2)return(null==n?void 0:n(a))&&Z(e,l[s]),a;const r=oe(a,l,t,n,s+1);return q(a)&&Z(e,l[s]),r})),ue=e=>new Set(Array.isArray(e)||I(e)?e:[e]),ie=(e,l)=>null==e?void 0:e.add(l),de=/^\d+$/,ce=()=>{const e=[];let l=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:t+l++},l=>{de.test(l)&&F(e)<1e3&&z(e,l)}]},he=e=>[e,e],ve=()=>[Q(),Q()],fe=e=>[...e],ge=([e,l])=>e===l,Te=e=>{const t=l(e);return R(t)||t==a&&w(e)?t:void 0},be=(e,l,t,n,s)=>I(s)?e.delCell(l,t,n,!0):e.setCell(l,t,n,s),Ve=(e,l,t)=>I(t)?e.delValue(l):e.setValue(l,t),Ce=e=>JSON.stringify(e,((e,l)=>p(l,Map)?O.fromEntries([...l]):l)),Se=JSON.parse,ye=(e,l,t)=>I(e)||!M(e)||D(e)||k(e)?(null==t||t(),!1):(B(e,((t,n)=>{l(t,n)||P(e,n)})),!D(e)),we=(e,l,t)=>Z(e,l,X(e,l)==-t?void 0:t),pe=()=>{let e,l,n=!1,s=!1,r=0;const i=Q(),w=Q(),p=Q(),O=Q(),j=Q(),k=Q(),M=Q(),de=Q(),Ie=Q(),me=Q(),Re=Q(),Je=Q(),Ee=Q(),Le=Q(),Fe=ue(),xe=Q(),ze=Q(),Oe=Q(),je=Q(),ke=ve(),Ae=ve(),Me=ve(),Ne=ve(),Pe=ve(),Be=ve(),De=ve(),We=ve(),$e=ve(),qe=ve(),Ge=ve(),He=ve(),Ke=ve(),Qe=ve(),Ue=ve(),Xe=Q(),Ye=ve(),[Ze,_e,el,ll]=(e=>{let l;const[n,s]=ce(),a=Q();return[(e,s,r,o=[],u=(()=>[]))=>{null!=l||(l=gt);const i=n(1);return Z(a,i,[e,s,r,o,u]),ie(oe(s,null!=r?r:[t],ue),i),i},(e,n,...s)=>E(((e,l=[t])=>{const n=[],s=(e,t)=>t==F(l)?z(n,e):null===l[t]?H(e,(e=>s(e,t+1))):E([l[t],null],(l=>s(X(e,l),t+1)));return s(e,0),n})(e,n),(e=>H(e,(e=>X(a,e)[0](l,...null!=n?n:[],...s))))),e=>m(X(a,e),(([,l,n])=>(oe(l,null!=n?n:[t],void 0,(l=>(K(l,e),q(l)?1:0))),Z(a,e),s(e),n))),e=>m(X(a,e),(([e,,t=[],n,s])=>{const a=(...r)=>{var o,u;const i=F(r);i==F(t)?e(l,...r,...s(r)):I(t[i])?E(null!=(u=null==(o=n[i])?void 0:o.call(n,...r))?u:[],(e=>a(...r,e))):a(...r,t[i])};a()}))]})(),tl=e=>{if(!ye(e,((e,l)=>[o,u].includes(l))))return!1;const l=e[o];return!(!R(l)&&l!=a||(Te(e[u])!=l&&P(e,u),0))},nl=(l,t)=>(!e||$(Re,t)||Ol(t))&&ye(l,((e,l)=>sl(t,l,e)),(()=>Ol(t))),sl=(e,l,t,n)=>ye(n?t:ul(t,e,l),((n,s)=>m(al(e,l,s,n),(e=>(t[s]=e,!0)),(()=>!1))),(()=>Ol(e,l))),al=(l,t,n,s)=>e?m(X(X(Re,l),n),(e=>Te(s)!=e[o]?Ol(l,t,n,s,e[u]):s),(()=>Ol(l,t,n,s))):I(Te(s))?Ol(l,t,n,s):s,rl=(e,l)=>ye(l?e:il(e),((l,t)=>m(ol(t,l),(l=>(e[t]=l,!0)),(()=>!1))),(()=>jl())),ol=(e,t)=>l?m(X(Ee,e),(l=>Te(t)!=l[o]?jl(e,t,l[u]):t),(()=>jl(e,t))):I(Te(t))?jl(e,t):t,ul=(e,l,t)=>(m(X(Je,l),(([n,s])=>{H(n,((l,t)=>{N(e,t)||(e[t]=l)})),H(s,(n=>{N(e,n)||Ol(l,t,n)}))})),e),il=e=>(l&&(H(Le,((l,t)=>{N(e,t)||(e[t]=l)})),H(Fe,(l=>{N(e,l)||jl(l)}))),e),dl=e=>ee(Re,e,((e,l,t)=>{const n=Q(),s=ue();ee(_(Re,l,Q),t,((e,l,t)=>{Z(e,l,t),m(t[u],(e=>Z(n,l,e)),(()=>ie(s,l)))})),Z(Je,l,[n,s])}),((e,l)=>{Z(Re,l),Z(Je,l)})),cl=e=>ee(Ee,e,((e,l,t)=>{Z(Ee,l,t),m(t[u],(e=>Z(Le,l,e)),(()=>ie(Fe,l)))}),((e,l)=>{Z(Ee,l),Z(Le,l),K(Fe,l)})),hl=e=>D(e)?rt():lt(e),vl=e=>ee(Oe,e,((e,l,t)=>fl(l,t)),((e,l)=>pl(l))),fl=(e,l)=>ee(_(Oe,e,(()=>(Jl(e,1),Z(xe,e,ce()),Z(ze,e,Q()),Q()))),l,((l,t,n)=>gl(e,l,t,n)),((l,t)=>Il(e,l,t))),gl=(e,l,t,n,s)=>ee(_(l,t,(()=>(El(e,t,1),Q()))),n,((l,n,s)=>Tl(e,t,l,n,s)),((n,a)=>ml(e,l,t,n,a,s))),Tl=(e,l,t,n,s)=>{$(t,n)||Ll(e,l,n,1);const a=X(t,n);s!==a&&(Fl(e,l,n,a,s),Z(t,n,s))},bl=(e,l,t,n,s)=>m(X(l,t),(l=>Tl(e,t,l,n,s)),(()=>gl(e,l,t,ul({[n]:s},e,t)))),Vl=e=>D(e)?it():tt(e),Cl=e=>ee(je,e,((e,l,t)=>Sl(l,t)),((e,l)=>Rl(l))),Sl=(e,l)=>{$(je,e)||xl(e,1);const t=X(je,e);l!==t&&(zl(e,t,l),Z(je,e,l))},yl=(e,l)=>{const[t]=X(xe,e),n=t(l);return $(X(Oe,e),n)?yl(e,l):n},wl=e=>{var l;return null!=(l=X(Oe,e))?l:fl(e,{})},pl=e=>fl(e,{}),Il=(e,l,t)=>{const[,n]=X(xe,e);n(t),gl(e,l,t,{},!0)},ml=(e,l,t,n,s,a)=>{var r;const o=X(null==(r=X(Je,e))?void 0:r[0],s);if(!I(o)&&!a)return Tl(e,t,n,s,o);const u=l=>{Fl(e,t,l,X(n,l)),Ll(e,t,l,-1),Z(n,l)};I(o)?u(s):Y(n,u),q(n)&&(El(e,t,-1),q(Z(l,t))&&(Jl(e,-1),Z(Oe,e),Z(xe,e),Z(ze,e)))},Rl=e=>{const l=X(Le,e);if(!I(l))return Sl(e,l);zl(e,X(je,e)),xl(e,-1),Z(je,e)},Jl=(e,l)=>we(i,e,l),El=(e,l,t)=>we(_(O,e,Q),l,t)&&Z(p,e,_(p,e,(()=>0))+t),Ll=(e,l,t,n)=>{var s;const a=X(ze,e),r=null!=(s=X(a,t))?s:0;(0==r&&1==n||1==r&&-1==n)&&we(_(w,e,Q),t,n),Z(a,t,r!=-n?r+n:null),we(_(_(j,e,Q),l,Q),t,n)},Fl=(e,l,t,n,s)=>_(_(_(k,e,Q),l,Q),t,(()=>[n,0]))[1]=s,xl=(e,l)=>we(M,e,l),zl=(e,l,t)=>_(de,e,(()=>[l,0]))[1]=t,Ol=(e,l,t,n,s)=>(z(_(_(_(Ie,e,Q),l,Q),t,(()=>[])),n),s),jl=(e,l,t)=>(z(_(me,e,(()=>[])),l),t),kl=(e,l,t)=>m(X(X(X(k,e),l),t),(([e,l])=>[!0,e,l]),(()=>[!1,...he(Yl(e,l,t))])),Al=e=>m(X(de,e),(([e,l])=>[!0,e,l]),(()=>[!1,...he(et(e))])),Ml=e=>q(Ie)||q(Ge[e])?0:H(e?re(Ie):Ie,((l,t)=>H(l,((l,n)=>H(l,((l,s)=>_e(Ge[e],[t,n,s],l))))))),Nl=e=>q(me)||q(He[e])?0:H(e?se(me):me,((l,t)=>_e(He[e],[t],l))),Pl=(e,l,t)=>{if(!q(l))return _e(e,t,(()=>le(l))),1},Bl=e=>{const l=q(De[e]),t=q($e[e])&&q(Ne[e])&&q(Pe[e])&&q(Be[e])&&l&&q(Ae[e]),n=q(qe[e])&&q(We[e])&&q(Me[e])&&q(ke[e]);if(!t||!n){const s=e?[se(i),ae(w),se(p),ae(O),re(j),re(k)]:[i,w,p,O,j,k];if(!t){Pl(Ae[e],s[0]),H(s[1],((l,t)=>Pl(Ne[e],l,[t]))),H(s[2],((l,t)=>{0!=l&&_e(Pe[e],[t],Kl(t))}));const t=ue();H(s[3],((n,s)=>{Pl(Be[e],n,[s])&&!l&&(_e(De[e],[s,null]),ie(t,s))})),l||H(s[5],((l,n)=>{if(!$(t,n)){const t=ue();H(l,(e=>H(e,(([l,n],s)=>n!==l?ie(t,s):K(e,s))))),H(t,(l=>_e(De[e],[n,l])))}})),H(s[4],((l,t)=>H(l,((l,n)=>Pl($e[e],l,[t,n])))))}if(!n){let l;H(s[5],((t,n)=>{let s;H(t,((t,a)=>{let r;H(t,(([t,o],u)=>{o!==t&&(_e(qe[e],[n,a,u],o,t,kl),l=s=r=1)})),r&&_e(We[e],[n,a],kl)})),s&&_e(Me[e],[n],kl)})),l&&_e(ke[e],void 0,kl)}}},Dl=e=>{const l=q(Qe[e]),t=q(Ue[e])&&q(Ke[e]);if(!l||!t){const n=e?[se(M),se(de)]:[M,de];if(l||Pl(Qe[e],n[0]),!t){let l;H(n[1],(([t,n],s)=>{n!==t&&(_e(Ue[e],[s],n,t,Al),l=1)})),l&&_e(Ke[e],void 0,Al)}}},Wl=(e,...l)=>(ht((()=>e(...L(l,y)))),gt),$l=()=>[le(k,((e,l)=>-1===X(i,l)?null:le(e,((e,t)=>-1===X(X(O,l),t)?null:le(e,(([,e])=>null!=e?e:null),((e,l)=>ge(l)))),D)),D),le(de,(([,e])=>null!=e?e:null),((e,l)=>ge(l)))],ql=()=>({cellsTouched:n,valuesTouched:s,changedCells:ne(k,fe,ge),invalidCells:ne(Ie),changedValues:le(de,fe,ge),invalidValues:le(me),changedTableIds:le(i),changedRowIds:te(O),changedCellIds:ne(j),changedValueIds:le(M)}),Gl=()=>ne(Oe),Hl=()=>U(Oe),Kl=e=>W(X(Oe,y(e))),Ql=e=>U(X(Oe,y(e))),Ul=(e,l,t,n=0,s)=>{return L(x((r=X(Oe,y(e)),o=(e,t)=>[I(l)?t:X(e,y(l)),t],a=([e],[l])=>{return((null!=(n=e)?n:0)<(null!=(s=l)?s:0)?-1:1)*(t?-1:1);var n,s},L([...null!=(u=null==r?void 0:r.entries())?u:[]],(([e,l])=>o(l,e))).sort(a)),n,I(s)?s:n+s),(([,e])=>e));var a,r,o,u},Xl=(e,l)=>U(X(X(Oe,y(e)),y(l))),Yl=(e,l,t)=>X(X(X(Oe,y(e)),y(l)),y(t)),Zl=()=>le(je),_l=()=>U(je),et=e=>X(je,y(e)),lt=e=>Wl((()=>(e=>ye(e,nl,Ol))(e)?vl(e):0)),tt=e=>Wl((()=>rl(e)?Cl(e):0)),nt=e=>{try{hl(Se(e))}catch(e){}return gt},st=l=>Wl((()=>{if((e=ye(l,(e=>ye(e,tl))))&&(dl(l),!q(Oe))){const e=Gl();rt(),lt(e)}})),at=e=>Wl((()=>{if(l=(e=>ye(e,tl))(e)){const t=Zl();ct(),it(),l=!0,cl(e),tt(t)}})),rt=()=>Wl((()=>vl({}))),ot=e=>Wl((e=>$(Oe,e)?pl(e):0),e),ut=(e,l)=>Wl(((e,l)=>m(X(Oe,e),(t=>$(t,l)?Il(e,t,l):0))),e,l),it=()=>Wl((()=>Cl({}))),dt=()=>Wl((()=>{dl({}),e=!1})),ct=()=>Wl((()=>{cl({}),l=!1})),ht=(e,l)=>{if(-1!=r){vt();const t=e();return ft(l),t}},vt=()=>(-1!=r&&r++,1==r&&_e(Xe,void 0,$l,ql),gt),ft=e=>(r>0&&(r--,0==r&&(n=!q(k),s=!q(de),r=1,Ml(1),n&&Bl(1),Nl(1),s&&Dl(1),(null==e?void 0:e($l,ql))&&(H(k,((e,l)=>H(e,((e,t)=>H(e,(([e],n)=>be(gt,l,t,n,e))))))),H(de,(([e],l)=>Ve(gt,l,e))),n=s=!1),_e(Ye[0],void 0,$l,ql),r=-1,Ml(0),n&&Bl(0),Nl(0),s&&Dl(0),_e(Ye[1],void 0,$l,ql),r=0,n=s=!1,E([i,w,p,O,j,k,Ie,M,de,me],G))),gt),gt={getContent:()=>[Gl(),Zl()],getTables:Gl,getTableIds:Hl,getTable:e=>te(X(Oe,y(e))),getTableCellIds:e=>U(X(ze,y(e))),getRowCount:Kl,getRowIds:Ql,getSortedRowIds:Ul,getRow:(e,l)=>le(X(X(Oe,y(e)),y(l))),getCellIds:Xl,getCell:Yl,getValues:Zl,getValueIds:_l,getValue:et,hasTables:()=>!q(Oe),hasTable:e=>$(Oe,y(e)),hasTableCell:(e,l)=>$(X(ze,y(e)),y(l)),hasRow:(e,l)=>$(X(Oe,y(e)),y(l)),hasCell:(e,l,t)=>$(X(X(Oe,y(e)),y(l)),y(t)),hasValues:()=>!q(je),hasValue:e=>$(je,y(e)),getTablesJson:()=>Ce(Oe),getValuesJson:()=>Ce(je),getJson:()=>Ce([Oe,je]),getTablesSchemaJson:()=>Ce(Re),getValuesSchemaJson:()=>Ce(Ee),getSchemaJson:()=>Ce([Re,Ee]),setContent:([e,l])=>Wl((()=>{(D(e)?rt:lt)(e),(D(l)?it:tt)(l)})),setTables:lt,setTable:(e,l)=>Wl((e=>nl(l,e)?fl(e,l):0),e),setRow:(e,l,t)=>Wl(((e,l)=>sl(e,l,t)?gl(e,wl(e),l,t):0),e,l),addRow:(e,l,t=!0)=>ht((()=>{let n;return sl(e,n,l)&&(e=y(e),gl(e,wl(e),n=yl(e,t?1:0),l)),n})),setPartialRow:(e,l,t)=>Wl(((e,l)=>{if(sl(e,l,t,1)){const n=wl(e);B(t,((t,s)=>bl(e,n,l,s,t)))}}),e,l),setCell:(e,l,t,n)=>Wl(((e,l,t)=>m(al(e,l,t,J(n)?n(Yl(e,l,t)):n),(n=>bl(e,wl(e),l,t,n)))),e,l,t),setValues:tt,setPartialValues:e=>Wl((()=>rl(e,1)?B(e,((e,l)=>Sl(l,e))):0)),setValue:(e,l)=>Wl((e=>m(ol(e,J(l)?l(et(e)):l),(l=>Sl(e,l)))),e),setTransactionChanges:e=>Wl((()=>{B(e[0],((e,l)=>I(e)?ot(l):B(e,((e,t)=>I(e)?ut(l,t):B(e,((e,n)=>be(gt,l,t,n,e))))))),B(e[1],((e,l)=>Ve(gt,l,e)))})),setTablesJson:nt,setValuesJson:e=>{try{Vl(Se(e))}catch(e){}return gt},setJson:e=>{try{const[l,t]=Se(e);hl(l),Vl(t)}catch(l){nt(e)}return gt},setTablesSchema:st,setValuesSchema:at,setSchema:(e,l)=>Wl((()=>{st(e),at(l)})),delTables:rt,delTable:ot,delRow:ut,delCell:(e,l,t,n)=>Wl(((e,l,t)=>m(X(Oe,e),(s=>m(X(s,l),(a=>$(a,t)?ml(e,s,l,a,t,n):0))))),e,l,t),delValues:it,delValue:e=>Wl((e=>$(je,e)?Rl(e):0),e),delTablesSchema:dt,delValuesSchema:ct,delSchema:()=>Wl((()=>{dt(),ct()})),transaction:ht,startTransaction:vt,finishTransaction:ft,forEachTable:e=>H(Oe,((l,t)=>e(t,(e=>H(l,((l,t)=>e(t,(e=>Y(l,e))))))))),forEachTableCell:(e,l)=>Y(X(ze,y(e)),l),forEachRow:(e,l)=>H(X(Oe,y(e)),((e,t)=>l(t,(l=>Y(e,l))))),forEachCell:(e,l,t)=>Y(X(X(Oe,y(e)),y(l)),t),forEachValue:e=>Y(je,e),addSortedRowIdsListener:(e,l,t,n,s,a,r)=>{let o=Ul(e,l,t,n,s);return Ze((()=>{const r=Ul(e,l,t,n,s);var u,i,d;i=o,F(u=r)===F(i)&&(d=(e,l)=>i[l]===e,u.every(d))||(o=r,a(gt,e,l,t,n,s,o))}),De[r?1:0],[e,l],[Hl])},addStartTransactionListener:e=>Ze(e,Xe),addWillFinishTransactionListener:e=>Ze(e,Ye[0]),addDidFinishTransactionListener:e=>Ze(e,Ye[1]),callListener:e=>(ll(e),gt),delListener:e=>(el(e),gt),getListenerStats:()=>({}),createStore:pe};return B({[c]:[0,ke],[h]:[0,Ae],[d]:[1,Me,[Hl]],[d+b]:[1,Ne,[Hl]],[f]:[1,Pe,[Hl]],[g]:[1,Be,[Hl]],[v]:[2,We,[Hl,Ql]],[b]:[2,$e,[Hl,Ql]],[T]:[3,qe,[Hl,Ql,Xl],e=>he(Yl(...e))],InvalidCell:[3,Ge],[C]:[0,Ke],[S]:[0,Qe],[V]:[1,Ue,[_l],e=>he(et(e[0]))],InvalidValue:[1,He]},(([e,l,t,n],s)=>{gt["add"+s+"Listener"]=(...s)=>Ze(s[e],l[s[e+1]?1:0],e>0?x(s,0,e):void 0,t,n)})),A(gt)};e.createStore=pe},"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],[h+T]:[0,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),o=t(!0),s=t(0),r=t(t),i="type",a="default",d="Listener",u="Result",c="add",v="Ids",h="Table",f=h+"s",g=h+v,L="Row",y=L+"Count",p=L+v,S="Sorted"+L+v,T="Cell",w=T+v,R="Value",I=R+"s",C=R+v,b=e=>n+e,m=Math.max,V=Math.min,E=isFinite,k=(e,t)=>e instanceof t,x=e=>null==e,M=(e,t,n)=>x(e)?null==n?void 0:n():t(e),D=e=>e==l||e==o,J=e=>t(e)==r,A=e=>Array.isArray(e),O=()=>{},F=(e,t)=>e.includes(t),P=(e,t)=>e.every(t),j=(e,t)=>$(e)===$(t)&&P(e,((e,n)=>t[n]===e)),Q=(e,t)=>P(e,((n,l)=>0==l||t(e[l-1],n)<=0)),z=(e,t)=>e.sort(t),N=(e,t)=>e.forEach(t),B=(e,t)=>e.map(t),W=e=>G(e,((e,t)=>e+t),0),$=e=>e.length,q=e=>0==$(e),G=(e,t,n)=>e.reduce(t,n),H=(e,t,n)=>e.slice(t,n),K=(e,...t)=>e.push(...t),U=e=>e.pop(),X=e=>e.shift(),Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>k(e,Y)&&e.constructor==Y,ne=(e,t)=>!x(((e,t)=>M(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),oe=(e,t)=>B(Y.entries(e),(([e,n])=>t(n,e))),se=e=>te(e)&&0==(e=>$(Z(e)))(e),re=e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0},ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>x(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ue=e=>e.clear(),ce=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ce(e,((e,n)=>t(n,e))),ye=(e,t,n)=>x(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),pe=(e,t,n)=>(ie(e,t)||ye(e,t,n()),ge(e,t)),Se=(e,t,n,l=ye)=>(oe(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),Te=(e,t,n)=>{const l={};return ce(e,((e,o)=>{const s=t?t(e,o):e;!(null==n?void 0:n(s,e))&&(l[o]=s)})),l},we=(e,t,n)=>Te(e,(e=>Te(e,t,n)),se),Re=(e,t,n)=>Te(e,(e=>we(e,t,n)),se),Ie=(e,t)=>{const n=he();return ce(e,((e,l)=>{var o;return n.set(l,null!=(o=null==t?void 0:t(e))?o:e)})),n},Ce=e=>Ie(e,Ie),be=e=>Ie(e,Ce),me=(e,t,n,l,o=0)=>M((n?pe:ge)(e,t[o],o>$(t)-2?n:he),(s=>{if(o>$(t)-2)return(null==l?void 0:l(s))&&ye(e,t[o]),s;const r=me(s,t,n,l,o+1);return ae(s)&&ye(e,t[o]),r})),Ve=e=>{const n=t(e);return D(n)||n==s&&E(e)?n:void 0},Ee=(e,t,n,l,o)=>x(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),ke=(e,t,n)=>x(n)?e.delValue(t):e.setValue(t,n),xe=e=>new Set(A(e)||x(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,o=he(),s=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const o=pe(a,t,xe);return N(l,(t=>Me(o,t)&&n&&e.callListener(t))),l},u=(t,...n)=>M(ge(a,t),(l=>{N(q(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&ye(a,t)})),c=(e,n)=>{ye(o,e,n),ie(s,e)||(ye(s,e,t()),ye(r,e,he()),ye(i,e,he()))},v=e=>{ye(o,e),ye(s,e),ye(r,e),ye(i,e),u(e)};return[()=>e,()=>fe(o),e=>Le(s,e),e=>ie(s,e),e=>ge(o,e),e=>ge(s,e),(e,t)=>ye(s,e,t),c,(t,o,s,a,v)=>{c(t,o);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),y=t=>{const s=n=>e.getCell(o,t,n),r=ge(g,t),i=l(o,t)?n(a(s,t)):void 0;if(r===i||A(r)&&A(i)&&j(r,i)||ye(h,t,[r,i]),!x(v)){const e=ge(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ye(f,t,n)}},p=e=>{s((()=>{ce(h,(([,e],t)=>ye(g,t,e))),ce(f,((e,t)=>ye(L,t,e)))}),h,f,g,L,e),ue(h),ue(f)};Le(g,y),e.hasTable(o)&&N(e.getRowIds(o),(e=>{ie(g,e)||y(e)})),p(!0),u(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>p())))},v,()=>Le(a,v),d,u]},Je=(e,o)=>t(e)==l?t=>t(e):null!=e?e:()=>null!=o?o:n,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let t=0;return[l=>{var o;return null!=(o=l?X(e):null)?o:n+t++},t=>{Oe.test(t)&&$(e)<1e3&&K(e,t)}]},Pe=e=>{let t;const[l,o]=Fe(),s=he();return[(o,r,i,a=[],d=(()=>[]))=>{null!=t||(t=e());const u=l(1);return ye(s,u,[o,r,i,a,d]),Me(me(r,null!=i?i:[n],xe),u),u},(e,l,...o)=>N(((e,t=[n])=>{const l=[],o=(e,n)=>n==$(t)?K(l,e):null===t[n]?ce(e,(e=>o(e,n+1))):N([t[n],null],(t=>o(ge(e,t),n+1)));return o(e,0),l})(e,l),(e=>ce(e,(e=>ge(s,e)[0](t,...null!=l?l:[],...o))))),e=>M(ge(s,e),(([,t,l])=>(me(t,null!=l?l:[n],void 0,(t=>(ve(t,e),ae(t)?1:0))),ye(s,e),o(e),l))),e=>M(ge(s,e),(([e,,n=[],l,o])=>{const s=(...r)=>{var i,a;const d=$(r);d==$(n)?e(t,...r,...o(r)):x(n[d])?N(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>s(...r,e))):s(...r,n[d])};s()}))]},je=Ae((e=>{let t,l,o,s=100,r=he(),i=he(),a=1;const d=he(),u=he(),[c,v,h]=Pe((()=>O)),f=he(),g=he(),L=[],y=[],p=(t,n)=>{a=0,e.transaction((()=>{const[l,o]=ge(f,n);ce(l,((n,l)=>ce(n,((n,o)=>ce(n,((n,s)=>Ee(e,l,o,s,n[t]))))))),ce(o,((n,l)=>ke(e,l,n[t])))})),a=1},S=e=>{ye(f,e),ye(g,e),v(u,[e])},T=(e,t)=>N(((e,t)=>e.splice(0,t))(e,null!=t?t:$(e)),S),w=()=>T(L,$(L)-s),R=()=>M(t,(()=>{K(L,t),w(),T(y),t=void 0,o=1})),I=()=>{t=U(L),o=1},C=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(a){R();const e=pe(r,t,he),i=pe(e,n,he),a=pe(i,l,(()=>[s,void 0]));a[1]=o,a[0]===o&&ae(ye(i,l))&&ae(ye(e,n))&&ae(ye(r,t))&&I(),k()}})),b=e.addValueListener(null,((e,t,n,l)=>{if(a){R();const e=pe(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(ye(i,t))&&I(),k()}})),m=(e="")=>(x(t)&&(t=n+l++,ye(f,t,[r,i]),J(t,e),r=he(),i=he(),o=1),t),V=()=>{q(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),p(0,t),t=U(L),o=1)},E=()=>{q(y)||(K(L,t),t=X(y),p(1,t),o=1)},k=()=>{o&&(v(d),o=0)},D=e=>{const t=m(e);return k(),t},J=(e,t)=>(A(e)&&ge(g,e)!==t&&(ye(g,e,t),v(u,[e])),O),A=e=>ie(f,e),O={setSize:e=>(s=e,w(),O),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:A,getCheckpoint:e=>ge(g,e),goBackward:()=>(V(),k(),O),goForward:()=>(E(),k(),O),goTo:e=>{const n=F(L,e)?V:F(y,e)?E:null;for(;!x(n)&&e!=t;)n();return k(),O},addCheckpointIdsListener:e=>c(e,d),addCheckpointListener:(e,t)=>c(t,u,[e]),delListener:e=>(h(e),O),clear:()=>(T(L),T(y),x(t)||S(t),t=void 0,l=0,D(),O),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return ee(O.clear())})),Qe=(e,t)=>(null!=e?e:0)<(null!=t?t:0)?-1:1,ze=Ae((e=>{const t=he(),l=he(),[o,s,r,i,a,d,u,,c,v,h]=De(e,he,(e=>x(e)?n:A(e)?B(e,b):b(e))),[f,g,L]=Pe((()=>p)),y=(t,n,l)=>{const o=a(t);ce(l,((t,l)=>n(l,(n=>ce(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},p={setIndexDefinition:(e,n,o,s,r,i=Qe)=>{const a=x(r)?void 0:([e],[t])=>r(e,t);return c(e,n,((n,o,r,c,v,h)=>{let f=0;const L=xe(),y=xe(),p=d(e);if(ce(o,(([e,t],n)=>{const l=xe(e),o=xe(t);ce(l,(e=>ve(o,e)?ve(l,e):0)),ce(l,(e=>{Me(L,e),M(ge(p,e),(t=>{ve(t,n),ae(t)&&(ye(p,e),f=1)}))})),ce(o,(e=>{Me(L,e),ie(p,e)||(ye(p,e,xe()),f=1),Me(ge(p,e),n),x(s)||Me(y,e)}))})),n(),ae(v)||(h?Le(p,(e=>Me(y,e))):Le(r,(e=>M(ge(c,e),(e=>Me(y,e))))),ce(y,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(p,e)];Q(n,t)||(ye(p,e,xe(z(n,t))),Me(L,e))}))),(f||h)&&!x(a)){const t=[...p];Q(t,a)||(u(e,he(z(t,a))),f=1)}f&&g(t,[e]),ce(L,(t=>g(l,[e,t])))}),Je(o),M(s,Je)),p},delIndexDefinition:e=>(v(e),p),getStore:o,getIndexIds:s,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)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(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 ee(p)})),Ne=he([["avg",[(e,t)=>W(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=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:m(t,e)]],["min",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:V(t,e)]],["sum",[e=>W(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Be=(e,t,n,l,o,s=!1)=>{if(ae(n))return;const[r,i,a,d]=o;return s||(s=x(e)),ce(l,(([n,l])=>{s||(e=x(n)?null==i?void 0:i(e,l,t++):x(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=x(e)))})),s?r(de(n),re(n)):e},We=Ae((e=>{const t=he(),[l,o,s,r,i,a,d,,u,c,v]=De(e,O,(e=>isNaN(e)||x(e)||!0===e||!1===e||e===n?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,n,l,o,s,r,i)=>{var c;const v=J(l)?[l,s,r,i]:null!=(c=ge(Ne,l))?c:ge(Ne,"sum");return u(e,n,((n,l,o,s,r,i)=>{const u=a(e),c=re(s);i||(i=x(u)),n();let h=Be(u,c,s,l,v,i);E(h)||(h=void 0),h!=u&&(d(e,h),f(t,[e],h,u))}),Je(o,1)),L},delMetricDefinition:e=>(c(e),L),getStore:l,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,n)=>h(n,t,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{i(n.next(e))}catch(e){o(e)}},r=e=>{try{i(n.throw(e))}catch(e){o(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);i((n=n.apply(e,t)).next())})),qe=Object.getOwnPropertySymbols,Ge=Object.prototype.hasOwnProperty,He=Object.prototype.propertyIsEnumerable;const Ke=Ae((e=>{const t=e.createStore,[l,o,s,r,i,,,a,,v,f,g,R]=De(e,(()=>!0),O),I=t(),C=t(),b=he(),m=(e,t,...n)=>N(n,(n=>Me(pe(pe(b,t,he),e,xe),n))),V=e=>{M(ge(b,e),(e=>{Le(e,((e,t)=>ce(t,(t=>e.delListener(t))))),ue(e)})),N([C,I],(t=>t.delTable(e)))},E=(e,t,n)=>m(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),k={setQueryDefinition:(t,l,o)=>{a(t,l),V(t);const s=[],r=[[null,[l,null,null,[],he()]]],i=[],d=[],u=[];o({select:(e,t)=>{const l=J(e)?[$(s)+n,e]:[x(t)?e:t,n=>n(e,t)];return K(s,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=x(n)||J(t)?null:t,o=x(l)?t:n,s=[e,[e,l,J(o)?o:e=>e(o),[],he()]];return K(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>K(i,J(e)?e:x(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,J(t)?[t,n,l,o]:null!=(s=ge(Ne,t))?s:[(e,t)=>t]]];return K(d,r),{as:e=>r[0]=e}},having:(e,t)=>K(u,J(e)?e:n=>n(e)===t)});const c=he(s);if(ae(c))return k;const v=he(r);Le(v,((e,[,t])=>M(ge(v,t),(({3:t})=>x(e)?0:K(t,e)))));const h=he(d);let f=I;if(ae(h)&&q(u))f=C;else{E(t,f,C);const e=he();Le(h,((t,[n,l])=>Me(pe(e,n,xe),[t,l])));const n=xe();Le(c,(t=>ie(e,t)?0:Me(n,t)));const l=he(),o=(n,l,o,s)=>M(n,(([r,i,a,d])=>{Le(l,((t,[n])=>{const l=pe(r,t,he),i=ge(l,o),a=s?void 0:n;if(i!==a){const n=xe([[i,a]]),s=re(l);ye(l,o,a),ce(ge(e,t),(([e,t])=>{const o=Be(d[e],s,l,n,t);d[e]=x(Ve(o))?null:o}))}})),ae(i)||!P(u,(e=>e((e=>d[e]))))?C.delRow(t,a):x(a)?n[2]=C.addRow(t,d):C.setRow(t,a,d)}));m(f,t,f.addRowListener(t,null,((s,r,i,a)=>{const d=[],u=[],c=he(),v=f.hasRow(t,i);let h=!v;ce(n,(e=>{const[n,l,o]=a(t,i,e);K(d,l),K(u,o),h||(h=n)})),Le(e,(e=>{const[n,,l]=a(t,i,e);(h||n)&&ye(c,e,[l])})),h&&o(me(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),c,i,1),v&&o(me(l,u,(()=>{const e={};return ce(n,(n=>e[n]=f.getCell(t,i,n))),[he(),xe(),void 0,e]}),(([,e])=>{Me(e,i)})),c,i)})))}E(t,e,f);const L=(n,o,s,r)=>{const a=t=>e.getCell(o,s,t);N(r,(l=>{var o;const[s,,r,i,d]=ge(v,l),u=null==r?void 0:r(a,n),[c,h]=null!=(o=ge(d,n))?o:[];u!=c&&(x(h)||R(t,h),ye(d,n,x(u)?null:[u,...g(t,1,e.addRowListener(s,u,(()=>L(n,s,u,i))))]))})),(n=>{const o=(t,o)=>{var s,r,i;return e.getCell(...x(o)?[l,n,t]:t===l?[l,n,o]:[null==(s=ge(v,t))?void 0:s[0],null==(i=ge(null==(r=ge(v,t))?void 0:r[4],n))?void 0:i[0],o])};f.transaction((()=>P(i,(e=>e(o)))?Le(c,((e,l)=>Ee(f,t,n,e,l(o,n)))):f.delRow(t,n)))})(n)},{3:y}=ge(v,null);return f.transaction((()=>g(t,1,e.addRowListener(l,null,((n,o,s)=>{e.hasRow(l,s)?L(s,l,s,y):(f.delRow(t,s),ce(v,(({4:e})=>M(ge(e,s),(([,n])=>{R(t,n),ye(e,s)})))))}))))),k},delQueryDefinition:e=>(V(e),v(e),k),getStore:l,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:i,delListener:e=>(C.delListener(e),k),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)Ge.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&qe)for(var l of qe(e))t.indexOf(l)<0&&He.call(e,l)&&(n[l]=e[l]);return n})(C.getListenerStats(),["tables","tableIds","transaction"])};return oe({[h]:[1,1],[h+w]:[0,1],[y]:[0,1],[p]:[0,1],[S]:[0,5],[L]:[1,2],[w]:[0,2],[T]:[1,3]},(([e,t],n)=>{N(e?["get","has","forEach"]:["get"],(e=>k[e+u+n]=(...t)=>C[e+n](...t))),k[c+u+n+d]=(...e)=>C[c+n+d](...H(e,0,t),((n,...l)=>e[t](k,...l)))})),ee(k)})),Ue=Ae((e=>{const t=he(),l=he(),o=he(),s=he(),[r,i,a,d,u,c,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>x(e)?void 0:e+n)),[g,L,y]=Pe((()=>w)),p=(e,t,n)=>M(c(e),(([l,,o])=>{if(!ie(o,t)){const s=xe();if(u(e)!=T(e))Me(s,t);else{let e=t;for(;!x(e)&&!ie(s,e);)Me(s,e),e=ge(l,e)}if(n)return s;ye(o,t,s)}return ge(o,t)})),S=(e,t)=>M(c(e),(([,,e])=>ye(e,t))),T=e=>ge(t,e),w={setRelationshipDefinition:(e,n,r,i)=>(ye(t,e,r),v(e,n,((t,n)=>{const r=xe(),i=xe(),a=xe(),[d,u]=c(e);ce(n,(([t,n],l)=>{x(t)||(Me(i,t),M(ge(u,t),(e=>{ve(e,l),ae(e)&&ye(u,t)}))),x(n)||(Me(i,n),ie(u,n)||ye(u,n,xe()),Me(ge(u,n),l)),Me(r,l),ye(d,l,n),Le(ge(s,e),(t=>{ie(p(e,t),l)&&Me(a,t)}))})),t(),ce(r,(t=>L(l,[e,t]))),ce(i,(t=>L(o,[e,t]))),ce(a,(t=>{S(e,t),L(s,[e,t])}))}),Je(i)),w),delRelationshipDefinition:e=>(ye(t,e),h(e),w),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(u(n),t))))),hasRelationship:d,getLocalTableId:u,getRemoteTableId:T,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=c(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=c(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>x(c(e))?[t]:de(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),g(n,s,[e,t])),delListener:e=>(S(...y(e)),w),destroy:f,getListenerStats:()=>({})};return ee(w)})),Xe=e=>[e,e],Ye=()=>[he(),he()],Ze=e=>[...e],_e=([e,t])=>e===t,et=e=>JSON.stringify(e,((e,t)=>k(t,Map)?Y.fromEntries([...t]):t)),tt=JSON.parse,nt=(e,t,n)=>x(e)||!te(e)||se(e)||_(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||le(e,l)})),!se(e)),lt=(e,t,n)=>ye(e,t,ge(e,t)==-n?void 0:n),ot=()=>{let e,t,n=!1,l=!1,o=0;const r=he(),u=he(),v=he(),S=he(),m=he(),V=he(),E=he(),k=he(),A=he(),O=he(),P=he(),Q=he(),W=he(),$=he(),q=xe(),G=he(),U=he(),X=he(),Y=he(),Z=Ye(),_=Ye(),te=Ye(),de=Ye(),me=Ye(),De=Ye(),Je=Ye(),Ae=Ye(),Oe=Ye(),je=Ye(),ze=Ye(),Ne=Ye(),Be=Ye(),We=Ye(),$e=Ye(),qe=he(),Ge=Ye(),[He,Ke,Ue,st]=Pe((()=>Tn)),rt=e=>{if(!nt(e,((e,t)=>F([i,a],t))))return!1;const t=e[i];return!(!D(t)&&t!=s||(Ve(e[a])!=t&&le(e,a),0))},it=(t,n)=>(!e||ie(P,n)||Pt(n))&&nt(t,((e,t)=>at(n,t,e)),(()=>Pt(n))),at=(e,t,n,l)=>nt(l?n:vt(n,e,t),((l,o)=>M(dt(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Pt(e,t))),dt=(t,n,l,o)=>e?M(ge(ge(P,t),l),(e=>Ve(o)!=e[i]?Pt(t,n,l,o,e[a]):o),(()=>Pt(t,n,l,o))):x(Ve(o))?Pt(t,n,l,o):o,ut=(e,t)=>nt(t?e:ht(e),((t,n)=>M(ct(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>jt())),ct=(e,n)=>t?M(ge(W,e),(t=>Ve(n)!=t[i]?jt(e,n,t[a]):n),(()=>jt(e,n))):x(Ve(n))?jt(e,n):n,vt=(e,t,n)=>(M(ge(Q,t),(([l,o])=>{ce(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ce(o,(l=>{ne(e,l)||Pt(t,n,l)}))})),e),ht=e=>(t&&(ce($,((t,n)=>{ne(e,n)||(e[n]=t)})),ce(q,(t=>{ne(e,t)||jt(t)}))),e),ft=e=>Se(P,e,((e,t,n)=>{const l=he(),o=xe();Se(pe(P,t,he),n,((e,t,n)=>{ye(e,t,n),M(n[a],(e=>ye(l,t,e)),(()=>Me(o,t)))})),ye(Q,t,[l,o])}),((e,t)=>{ye(P,t),ye(Q,t)})),gt=e=>Se(W,e,((e,t,n)=>{ye(W,t,n),M(n[a],(e=>ye($,t,e)),(()=>Me(q,t)))}),((e,t)=>{ye(W,t),ye($,t),ve(q,t)})),Lt=e=>se(e)?cn():sn(e),yt=e=>Se(X,e,((e,t,n)=>pt(t,n)),((e,t)=>Vt(t))),pt=(e,t)=>Se(pe(X,e,(()=>(Mt(e,1),ye(G,e,Fe()),ye(U,e,he()),he()))),t,((t,n,l)=>St(e,t,n,l)),((t,n)=>Et(e,t,n))),St=(e,t,n,l,o)=>Se(pe(t,n,(()=>(Dt(e,n,1),he()))),l,((t,l,o)=>Tt(e,n,t,l,o)),((l,s)=>kt(e,t,n,l,s,o))),Tt=(e,t,n,l,o)=>{ie(n,l)||Jt(e,t,l,1);const s=ge(n,l);o!==s&&(At(e,t,l,s,o),ye(n,l,o))},wt=(e,t,n,l,o)=>M(ge(t,n),(t=>Tt(e,n,t,l,o)),(()=>St(e,t,n,vt({[l]:o},e,n)))),Rt=e=>se(e)?fn():rn(e),It=e=>Se(Y,e,((e,t,n)=>Ct(t,n)),((e,t)=>xt(t))),Ct=(e,t)=>{ie(Y,e)||Ot(e,1);const n=ge(Y,e);t!==n&&(Ft(e,n,t),ye(Y,e,t))},bt=(e,t)=>{const[n]=ge(G,e),l=n(t);return ie(ge(X,e),l)?bt(e,t):l},mt=e=>{var t;return null!=(t=ge(X,e))?t:pt(e,{})},Vt=e=>pt(e,{}),Et=(e,t,n)=>{const[,l]=ge(G,e);l(n),St(e,t,n,{},!0)},kt=(e,t,n,l,o,s)=>{var r;const i=ge(null==(r=ge(Q,e))?void 0:r[0],o);if(!x(i)&&!s)return Tt(e,n,l,o,i);const a=t=>{At(e,n,t,ge(l,t)),Jt(e,n,t,-1),ye(l,t)};x(i)?a(o):Le(l,a),ae(l)&&(Dt(e,n,-1),ae(ye(t,n))&&(Mt(e,-1),ye(X,e),ye(G,e),ye(U,e)))},xt=e=>{const t=ge($,e);if(!x(t))return Ct(e,t);Ft(e,ge(Y,e)),Ot(e,-1),ye(Y,e)},Mt=(e,t)=>lt(r,e,t),Dt=(e,t,n)=>lt(pe(S,e,he),t,n)&&ye(v,e,pe(v,e,(()=>0))+n),Jt=(e,t,n,l)=>{var o;const s=ge(U,e),r=null!=(o=ge(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&lt(pe(u,e,he),n,l),ye(s,n,r!=-l?r+l:null),lt(pe(pe(m,e,he),t,he),n,l)},At=(e,t,n,l,o)=>pe(pe(pe(V,e,he),t,he),n,(()=>[l,0]))[1]=o,Ot=(e,t)=>lt(E,e,t),Ft=(e,t,n)=>pe(k,e,(()=>[t,0]))[1]=n,Pt=(e,t,n,l,o)=>(K(pe(pe(pe(A,e,he),t,he),n,(()=>[])),l),o),jt=(e,t,n)=>(K(pe(O,e,(()=>[])),t),n),Qt=(e,t,n)=>M(ge(ge(ge(V,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(tn(e,t,n))])),zt=e=>M(ge(k,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(on(e))])),Nt=e=>ae(A)||ae(ze[e])?0:ce(e?be(A):A,((t,n)=>ce(t,((t,l)=>ce(t,((t,o)=>Ke(ze[e],[n,l,o],t))))))),Bt=e=>ae(O)||ae(Ne[e])?0:ce(e?Ie(O):O,((t,n)=>Ke(Ne[e],[n],t))),Wt=(e,t,n)=>{if(!ae(t))return Ke(e,n,(()=>Te(t))),1},$t=e=>{const t=ae(Je[e]),n=ae(Oe[e])&&ae(de[e])&&ae(me[e])&&ae(De[e])&&t&&ae(_[e]),l=ae(je[e])&&ae(Ae[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const o=e?[Ie(r),Ce(u),Ie(v),Ce(S),be(m),be(V)]:[r,u,v,S,m,V];if(!n){Wt(_[e],o[0]),ce(o[1],((t,n)=>Wt(de[e],t,[n]))),ce(o[2],((t,n)=>{0!=t&&Ke(me[e],[n],Yt(n))}));const n=xe();ce(o[3],((l,o)=>{Wt(De[e],l,[o])&&!t&&(Ke(Je[e],[o,null]),Me(n,o))})),t||ce(o[5],((t,l)=>{if(!ie(n,l)){const n=xe();ce(t,(e=>ce(e,(([t,l],o)=>l!==t?Me(n,o):ve(e,o))))),ce(n,(t=>Ke(Je[e],[l,t])))}})),ce(o[4],((t,n)=>ce(t,((t,l)=>Wt(Oe[e],t,[n,l])))))}if(!l){let t;ce(o[5],((n,l)=>{let o;ce(n,((n,s)=>{let r;ce(n,(([n,i],a)=>{i!==n&&(Ke(je[e],[l,s,a],i,n,Qt),t=o=r=1)})),r&&Ke(Ae[e],[l,s],Qt)})),o&&Ke(te[e],[l],Qt)})),t&&Ke(Z[e],void 0,Qt)}}},qt=e=>{const t=ae(We[e]),n=ae($e[e])&&ae(Be[e]);if(!t||!n){const l=e?[Ie(E),Ie(k)]:[E,k];if(t||Wt(We[e],l[0]),!n){let t;ce(l[1],(([n,l],o)=>{l!==n&&(Ke($e[e],[o],l,n,zt),t=1)})),t&&Ke(Be[e],void 0,zt)}}},Gt=(e,...t)=>(yn((()=>e(...B(t,b)))),Tn),Ht=()=>[Te(V,((e,t)=>-1===ge(r,t)?null:Te(e,((e,n)=>-1===ge(ge(S,t),n)?null:Te(e,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))),se)),se),Te(k,(([,e])=>null!=e?e:null),((e,t)=>_e(t)))],Kt=()=>({cellsTouched:n,valuesTouched:l,changedCells:Re(V,Ze,_e),invalidCells:Re(A),changedValues:Te(k,Ze,_e),invalidValues:Te(O),changedTableIds:Te(r),changedRowIds:we(S),changedCellIds:Re(m),changedValueIds:Te(E)}),Ut=()=>Re(X),Xt=()=>fe(X),Yt=e=>re(ge(X,b(e))),Zt=e=>fe(ge(X,b(e))),_t=(e,t,n,l=0,o)=>{return B(H(z((s=ge(X,b(e)),r=(e,n)=>[x(t)?n:ge(e,b(t)),n],B([...null!=(i=null==s?void 0:s.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>Qe(e,t)*(n?-1:1))),l,x(o)?o:l+o),(([,e])=>e));var s,r,i},en=(e,t)=>fe(ge(ge(X,b(e)),b(t))),tn=(e,t,n)=>ge(ge(ge(X,b(e)),b(t)),b(n)),nn=()=>Te(Y),ln=()=>fe(Y),on=e=>ge(Y,b(e)),sn=e=>Gt((()=>(e=>nt(e,it,Pt))(e)?yt(e):0)),rn=e=>Gt((()=>ut(e)?It(e):0)),an=e=>{try{Lt(tt(e))}catch(e){}return Tn},dn=t=>Gt((()=>{if((e=nt(t,(e=>nt(e,rt))))&&(ft(t),!ae(X))){const e=Ut();cn(),sn(e)}})),un=e=>Gt((()=>{if(t=(e=>nt(e,rt))(e)){const n=nn();Ln(),fn(),t=!0,gt(e),rn(n)}})),cn=()=>Gt((()=>yt({}))),vn=e=>Gt((e=>ie(X,e)?Vt(e):0),e),hn=(e,t)=>Gt(((e,t)=>M(ge(X,e),(n=>ie(n,t)?Et(e,n,t):0))),e,t),fn=()=>Gt((()=>It({}))),gn=()=>Gt((()=>{ft({}),e=!1})),Ln=()=>Gt((()=>{gt({}),t=!1})),yn=(e,t)=>{if(-1!=o){pn();const n=e();return Sn(t),n}},pn=()=>(-1!=o&&o++,1==o&&Ke(qe,void 0,Ht,Kt),Tn),Sn=e=>(o>0&&(o--,0==o&&(n=!ae(V),l=!ae(k),o=1,Nt(1),n&&$t(1),Bt(1),l&&qt(1),(null==e?void 0:e(Ht,Kt))&&(ce(V,((e,t)=>ce(e,((e,n)=>ce(e,(([e],l)=>Ee(Tn,t,n,l,e))))))),ce(k,(([e],t)=>ke(Tn,t,e))),n=l=!1),Ke(Ge[0],void 0,Ht,Kt),o=-1,Nt(0),n&&$t(0),Bt(0),l&&qt(0),Ke(Ge[1],void 0,Ht,Kt),o=0,n=l=!1,N([r,u,v,S,m,V,A,E,k,O],ue))),Tn),Tn={getContent:()=>[Ut(),nn()],getTables:Ut,getTableIds:Xt,getTable:e=>we(ge(X,b(e))),getTableCellIds:e=>fe(ge(U,b(e))),getRowCount:Yt,getRowIds:Zt,getSortedRowIds:_t,getRow:(e,t)=>Te(ge(ge(X,b(e)),b(t))),getCellIds:en,getCell:tn,getValues:nn,getValueIds:ln,getValue:on,hasTables:()=>!ae(X),hasTable:e=>ie(X,b(e)),hasTableCell:(e,t)=>ie(ge(U,b(e)),b(t)),hasRow:(e,t)=>ie(ge(X,b(e)),b(t)),hasCell:(e,t,n)=>ie(ge(ge(X,b(e)),b(t)),b(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,b(e)),getTablesJson:()=>et(X),getValuesJson:()=>et(Y),getJson:()=>et([X,Y]),getTablesSchemaJson:()=>et(P),getValuesSchemaJson:()=>et(W),getSchemaJson:()=>et([P,W]),setContent:([e,t])=>Gt((()=>{(se(e)?cn:sn)(e),(se(t)?fn:rn)(t)})),setTables:sn,setTable:(e,t)=>Gt((e=>it(t,e)?pt(e,t):0),e),setRow:(e,t,n)=>Gt(((e,t)=>at(e,t,n)?St(e,mt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>yn((()=>{let l;return at(e,l,t)&&(e=b(e),St(e,mt(e),l=bt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Gt(((e,t)=>{if(at(e,t,n,1)){const l=mt(e);oe(n,((n,o)=>wt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Gt(((e,t,n)=>M(dt(e,t,n,J(l)?l(tn(e,t,n)):l),(l=>wt(e,mt(e),t,n,l)))),e,t,n),setValues:rn,setPartialValues:e=>Gt((()=>ut(e,1)?oe(e,((e,t)=>Ct(t,e))):0)),setValue:(e,t)=>Gt((e=>M(ct(e,J(t)?t(on(e)):t),(t=>Ct(e,t)))),e),setTransactionChanges:e=>Gt((()=>{oe(e[0],((e,t)=>x(e)?vn(t):oe(e,((e,n)=>x(e)?hn(t,n):oe(e,((e,l)=>Ee(Tn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(Tn,t,e)))})),setTablesJson:an,setValuesJson:e=>{try{Rt(tt(e))}catch(e){}return Tn},setJson:e=>{try{const[t,n]=tt(e);Lt(t),Rt(n)}catch(t){an(e)}return Tn},setTablesSchema:dn,setValuesSchema:un,setSchema:(e,t)=>Gt((()=>{dn(e),un(t)})),delTables:cn,delTable:vn,delRow:hn,delCell:(e,t,n,l)=>Gt(((e,t,n)=>M(ge(X,e),(o=>M(ge(o,t),(s=>ie(s,n)?kt(e,o,t,s,n,l):0))))),e,t,n),delValues:fn,delValue:e=>Gt((e=>ie(Y,e)?xt(e):0),e),delTablesSchema:gn,delValuesSchema:Ln,delSchema:()=>Gt((()=>{gn(),Ln()})),transaction:yn,startTransaction:pn,finishTransaction:Sn,forEachTable:e=>ce(X,((t,n)=>e(n,(e=>ce(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,b(e)),t),forEachRow:(e,t)=>ce(ge(X,b(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,b(e)),b(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let i=_t(e,t,n,l,o);return He((()=>{const r=_t(e,t,n,l,o);j(r,i)||(i=r,s(Tn,e,t,n,l,o,i))}),Je[r?1:0],[e,t],[Xt])},addStartTransactionListener:e=>He(e,qe),addWillFinishTransactionListener:e=>He(e,Ge[0]),addDidFinishTransactionListener:e=>He(e,Ge[1]),callListener:e=>(st(e),Tn),delListener:e=>(Ue(e),Tn),getListenerStats:()=>({}),createStore:ot};return oe({[f]:[0,Z],[g]:[0,_],[h]:[1,te,[Xt]],[h+w]:[1,de,[Xt]],[y]:[1,me,[Xt]],[p]:[1,De,[Xt]],[L]:[2,Ae,[Xt,Zt]],[w]:[2,Oe,[Xt,Zt]],[T]:[3,je,[Xt,Zt,en],e=>Xe(tn(...e))],InvalidCell:[3,ze],[I]:[0,Be],[C]:[0,We],[R]:[1,$e,[ln],e=>Xe(on(e[0]))],InvalidValue:[1,Ne]},(([e,t,n,l],o)=>{Tn[c+o+d]=(...o)=>He(o[e],t[o[e+1]?1:0],e>0?H(o,0,e):void 0,n,l)})),ee(Tn)};e.createCheckpoints=je,e.createCustomPersister=(e,t,n,l,o)=>{let s,r,i,a=0,d=0,u=0;const c=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},o={}){return h.stopAutoLoad(),yield h.load(n,o),u=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(u&&(o(i),i=void 0,u=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(M(s,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return K(c,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!x(r=X(c));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)},e.createIndexes=ze,e.createMetrics=We,e.createQueries=Ke,e.createRelationships=Ue,e.createStore=ot,e.defaultSorter=Qe},"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