tinybase 4.6.2 → 5.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  11. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  12. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  13. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  14. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  15. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  16. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  17. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  18. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  19. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  20. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  21. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  22. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  23. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  24. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  25. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  26. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  27. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  28. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  29. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  30. package/lib/cjs/queries.cjs +1 -1
  31. package/lib/cjs/queries.cjs.gz +0 -0
  32. package/lib/cjs/relationships.cjs +1 -1
  33. package/lib/cjs/relationships.cjs.gz +0 -0
  34. package/lib/cjs/store.cjs +1 -1
  35. package/lib/cjs/store.cjs.gz +0 -0
  36. package/lib/cjs/tinybase.cjs +1 -1
  37. package/lib/cjs/tinybase.cjs.gz +0 -0
  38. package/lib/cjs/tools.cjs +1 -1
  39. package/lib/cjs/tools.cjs.gz +0 -0
  40. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  41. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  42. package/lib/cjs/ui-react-dom.cjs +1 -1
  43. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  44. package/lib/cjs/ui-react.cjs +1 -1
  45. package/lib/cjs/ui-react.cjs.gz +0 -0
  46. package/lib/cjs-es6/checkpoints.cjs +1 -1
  47. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  48. package/lib/cjs-es6/indexes.cjs +1 -1
  49. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  50. package/lib/cjs-es6/metrics.cjs +1 -1
  51. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  52. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  53. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  54. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  55. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  56. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  57. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  58. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  61. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  62. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  63. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  64. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  65. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  66. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  67. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  68. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  69. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  70. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  71. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  72. package/lib/cjs-es6/queries.cjs +1 -1
  73. package/lib/cjs-es6/queries.cjs.gz +0 -0
  74. package/lib/cjs-es6/relationships.cjs +1 -1
  75. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  76. package/lib/cjs-es6/store.cjs +1 -1
  77. package/lib/cjs-es6/store.cjs.gz +0 -0
  78. package/lib/cjs-es6/tinybase.cjs +1 -1
  79. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  80. package/lib/cjs-es6/tools.cjs +1 -1
  81. package/lib/cjs-es6/tools.cjs.gz +0 -0
  82. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  83. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  84. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  85. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  86. package/lib/cjs-es6/ui-react.cjs +1 -1
  87. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  88. package/lib/debug/checkpoints.js +251 -234
  89. package/lib/debug/indexes.js +7 -5
  90. package/lib/debug/metrics.js +7 -5
  91. package/lib/debug/persisters/persister-automerge.js +3 -1
  92. package/lib/debug/persisters/persister-browser.js +1 -0
  93. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +3 -1
  94. package/lib/debug/persisters/persister-electric-sql.js +3 -1
  95. package/lib/debug/persisters/persister-expo-sqlite-next.js +3 -1
  96. package/lib/debug/persisters/persister-expo-sqlite.js +3 -1
  97. package/lib/debug/persisters/persister-file.js +1 -0
  98. package/lib/debug/persisters/persister-indexed-db.js +3 -1
  99. package/lib/debug/persisters/persister-partykit-client.js +1 -0
  100. package/lib/debug/persisters/persister-partykit-server.js +2 -1
  101. package/lib/debug/persisters/persister-remote.js +1 -0
  102. package/lib/debug/persisters/persister-sqlite-wasm.js +3 -1
  103. package/lib/debug/persisters/persister-sqlite3.js +3 -1
  104. package/lib/debug/persisters/persister-yjs.js +3 -1
  105. package/lib/debug/persisters.js +1 -0
  106. package/lib/debug/queries.js +9 -6
  107. package/lib/debug/relationships.js +7 -5
  108. package/lib/debug/store.js +3 -1
  109. package/lib/debug/tinybase.js +254 -235
  110. package/lib/debug/tools.js +10 -6
  111. package/lib/debug/ui-react-dom.js +3 -1
  112. package/lib/debug/ui-react.js +166 -200
  113. package/lib/es6/checkpoints.js +1 -1
  114. package/lib/es6/checkpoints.js.gz +0 -0
  115. package/lib/es6/indexes.js +1 -1
  116. package/lib/es6/indexes.js.gz +0 -0
  117. package/lib/es6/metrics.js +1 -1
  118. package/lib/es6/metrics.js.gz +0 -0
  119. package/lib/es6/persisters/persister-automerge.js +1 -1
  120. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  121. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  122. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  123. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  124. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  125. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  126. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  127. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  128. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  129. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  130. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  131. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  132. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  133. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  134. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  135. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  136. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  137. package/lib/es6/persisters/persister-yjs.js +1 -1
  138. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  139. package/lib/es6/queries.js +1 -1
  140. package/lib/es6/queries.js.gz +0 -0
  141. package/lib/es6/relationships.js +1 -1
  142. package/lib/es6/relationships.js.gz +0 -0
  143. package/lib/es6/store.js +1 -1
  144. package/lib/es6/store.js.gz +0 -0
  145. package/lib/es6/tinybase.js +1 -1
  146. package/lib/es6/tinybase.js.gz +0 -0
  147. package/lib/es6/tools.js +1 -1
  148. package/lib/es6/tools.js.gz +0 -0
  149. package/lib/es6/ui-react-dom-debug.js +1 -1
  150. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  151. package/lib/es6/ui-react-dom.js +1 -1
  152. package/lib/es6/ui-react-dom.js.gz +0 -0
  153. package/lib/es6/ui-react.js +1 -1
  154. package/lib/es6/ui-react.js.gz +0 -0
  155. package/lib/indexes.js +1 -1
  156. package/lib/indexes.js.gz +0 -0
  157. package/lib/metrics.js +1 -1
  158. package/lib/metrics.js.gz +0 -0
  159. package/lib/persisters/persister-automerge.js +1 -1
  160. package/lib/persisters/persister-automerge.js.gz +0 -0
  161. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  162. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  163. package/lib/persisters/persister-electric-sql.js +1 -1
  164. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  165. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  166. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  167. package/lib/persisters/persister-expo-sqlite.js +1 -1
  168. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  169. package/lib/persisters/persister-indexed-db.js +1 -1
  170. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  171. package/lib/persisters/persister-partykit-server.js +1 -1
  172. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  173. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  174. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  175. package/lib/persisters/persister-sqlite3.js +1 -1
  176. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  177. package/lib/persisters/persister-yjs.js +1 -1
  178. package/lib/persisters/persister-yjs.js.gz +0 -0
  179. package/lib/queries.js +1 -1
  180. package/lib/queries.js.gz +0 -0
  181. package/lib/relationships.js +1 -1
  182. package/lib/relationships.js.gz +0 -0
  183. package/lib/store.js +1 -1
  184. package/lib/store.js.gz +0 -0
  185. package/lib/tinybase.js +1 -1
  186. package/lib/tinybase.js.gz +0 -0
  187. package/lib/tools.js +1 -1
  188. package/lib/tools.js.gz +0 -0
  189. package/lib/types/ui-react.d.ts +77 -88
  190. package/lib/types/with-schemas/ui-react.d.ts +84 -95
  191. package/lib/ui-react-dom.js +1 -1
  192. package/lib/ui-react-dom.js.gz +0 -0
  193. package/lib/ui-react.js +1 -1
  194. package/lib/ui-react.js.gz +0 -0
  195. package/lib/umd/checkpoints.js +1 -1
  196. package/lib/umd/checkpoints.js.gz +0 -0
  197. package/lib/umd/indexes.js +1 -1
  198. package/lib/umd/indexes.js.gz +0 -0
  199. package/lib/umd/metrics.js +1 -1
  200. package/lib/umd/metrics.js.gz +0 -0
  201. package/lib/umd/persisters/persister-automerge.js +1 -1
  202. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  203. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  204. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  205. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  206. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  207. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  208. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  209. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  210. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  211. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  212. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  213. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  214. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  215. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  216. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  217. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  218. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  219. package/lib/umd/persisters/persister-yjs.js +1 -1
  220. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  221. package/lib/umd/queries.js +1 -1
  222. package/lib/umd/queries.js.gz +0 -0
  223. package/lib/umd/relationships.js +1 -1
  224. package/lib/umd/relationships.js.gz +0 -0
  225. package/lib/umd/store.js +1 -1
  226. package/lib/umd/store.js.gz +0 -0
  227. package/lib/umd/tinybase.js +1 -1
  228. package/lib/umd/tinybase.js.gz +0 -0
  229. package/lib/umd/tools.js +1 -1
  230. package/lib/umd/tools.js.gz +0 -0
  231. package/lib/umd/ui-react-dom-debug.js +1 -1
  232. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  233. package/lib/umd/ui-react-dom.js +1 -1
  234. package/lib/umd/ui-react-dom.js.gz +0 -0
  235. package/lib/umd/ui-react.js +1 -1
  236. package/lib/umd/ui-react.js.gz +0 -0
  237. package/lib/umd-es6/checkpoints.js +1 -1
  238. package/lib/umd-es6/checkpoints.js.gz +0 -0
  239. package/lib/umd-es6/indexes.js +1 -1
  240. package/lib/umd-es6/indexes.js.gz +0 -0
  241. package/lib/umd-es6/metrics.js +1 -1
  242. package/lib/umd-es6/metrics.js.gz +0 -0
  243. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  244. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  245. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  246. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  247. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  248. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  249. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  250. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  251. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  252. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  253. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  254. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  255. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  256. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  257. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  258. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  259. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  260. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  261. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  262. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  263. package/lib/umd-es6/queries.js +1 -1
  264. package/lib/umd-es6/queries.js.gz +0 -0
  265. package/lib/umd-es6/relationships.js +1 -1
  266. package/lib/umd-es6/relationships.js.gz +0 -0
  267. package/lib/umd-es6/store.js +1 -1
  268. package/lib/umd-es6/store.js.gz +0 -0
  269. package/lib/umd-es6/tinybase.js +1 -1
  270. package/lib/umd-es6/tinybase.js.gz +0 -0
  271. package/lib/umd-es6/tools.js +1 -1
  272. package/lib/umd-es6/tools.js.gz +0 -0
  273. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  274. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  275. package/lib/umd-es6/ui-react-dom.js +1 -1
  276. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  277. package/lib/umd-es6/ui-react.js +1 -1
  278. package/lib/umd-es6/ui-react.js.gz +0 -0
  279. package/package.json +4 -4
  280. package/readme.md +13 -13
@@ -1 +1 @@
1
- const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=t=>n.getPrototypeOf(t),l=n.keys,i=n.freeze,u=(t,n)=>e(t,(t=>t[n])),r=(e,n)=>!t(u(e,n)),d=(t,e)=>(delete t[e],t),c=(t,e)=>((t,e)=>t.map(e))(n.entries(t),(([t,n])=>e(n,t))),a=t=>l(t).length,s=l=>(l=>!t(l)&&e(o(l),(e=>e==n.prototype||t(o(e))),(()=>!0)))(l)&&0==a(l),v=t=>new Map(t),y=(t,e)=>null==t?void 0:t.get(e),h=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},f=(t,e,n)=>{var o,l,i;return l=e,null!=(i=null==(o=t)?void 0:o.has(l))&&i||h(t,e,n()),y(t,e)};var p=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const g=v(),A=v();var L=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const m=(t,e)=>[t[e].t,t[e].v],S=(e,n,o,l)=>{const i=t(n)?e:((t,e,n)=>(r(t,e)||(t[e]={}),t[e]))(e,n);let u;return c(o,((t,e)=>{l(i,e,t)&&(u=1)})),c(i,((t,e)=>{r(o,e)||(d(i,e),u=1)})),!t(n)&&s(i)&&d(e,n),u},w=(n,o,l="tinybase",r)=>(o.change((t=>t[l]={})),((n,o,l,u,r,d,[c,a]=[],v=[])=>{let L,m,S,w=0,x=0;f(g,v,(()=>0)),f(A,v,(()=>[]));const C=t=>p(void 0,null,(function*(){return 2!=w&&(w=1,yield P.schedule((()=>p(void 0,null,(function*(){yield t(),w=0}))))),P})),P={load:(t,e)=>p(void 0,null,(function*(){return yield C((()=>p(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>p(void 0,[...t],(function*(t={},e={}){return P.stopAutoLoad(),yield P.load(t,e),x=1,S=u(((t,e)=>p(void 0,null,(function*(){if(e){const t=e();yield C((()=>p(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield C((()=>p(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==d||d(t)}}))))})))),P})),stopAutoLoad:()=>(x&&(r(S),S=void 0,x=0),P),save:t=>p(void 0,null,(function*(){return 1!=w&&(w=2,yield P.schedule((()=>p(void 0,null,(function*(){try{yield l(n.getContent,t)}catch(t){null==d||d(t)}w=0}))))),P})),startAutoSave:()=>p(void 0,null,(function*(){return yield P.stopAutoSave().save(),L=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();s(n)&&s(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>(e(L,n.delListener),L=void 0,P),schedule:(...e)=>p(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(y(A,v),...e),yield p(void 0,null,(function*(){if(!y(g,v)){for(h(g,v,1);!t((e=y(A,v),m=e.shift()));)try{yield m()}catch(t){null==d||d(t)}h(g,v,0)}var e})),P})),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(P[c]=()=>a),i(P)})(n,(()=>L(void 0,null,(function*(){return 2==a(o.doc[l])?m(o.doc,l):void 0}))),((n,i)=>L(void 0,null,(function*(){return o.change((o=>((n,o,l,i)=>{((t,e)=>{s(t[e])&&(t[e]={t:{},v:{}})})(n,o);const[r,a]=m(n,o),v=()=>{y=1};let y=1;if(e(null==i?void 0:i(),(([n,o])=>{y=0,c(n,((n,o)=>y?0:t(n)?d(r,o):e(r[o],(o=>c(n,((n,l)=>y?0:t(n)?d(o,l):e(u(o,l),(e=>c(n,((n,o)=>t(n)?d(e,o):e[o]=n))),v)))),v))),c(o,((e,n)=>y?0:t(e)?d(a,n):a[n]=e))})),y){const[t,e]=l();S(r,void 0,t,((t,e,n)=>S(r,e,n,((t,e,n)=>S(t,e,n,((t,e,n)=>{if(u(t,e)!==n)return t[e]=n,1})))))),S(a,void 0,e,((t,e,n)=>{u(a,e)!==n&&(a[e]=n)}))}})(o,l,n,i)))}))),(t=>{const e=({doc:e})=>t((()=>m(e,l)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),r,["getDocHandle",o]));export{w as createAutomergePersister};
1
+ const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=t=>n.getPrototypeOf(t),l=n.entries,i=n.keys,u=n.freeze,r=(t,n)=>e(t,(t=>t[n])),d=(e,n)=>!t(r(e,n)),c=(t,e)=>(delete t[e],t),a=(t,e)=>((t,e)=>t.map(e))(l(t),(([t,n])=>e(n,t))),s=t=>i(t).length,v=l=>(l=>!t(l)&&e(o(l),(e=>e==n.prototype||t(o(e))),(()=>!0)))(l)&&0==s(l),y=t=>new Map(t),h=(t,e)=>null==t?void 0:t.get(e),f=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},p=(t,e,n)=>{var o,l,i;return l=e,null!=(i=null==(o=t)?void 0:o.has(l))&&i||f(t,e,n()),h(t,e)};var g=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const A=y(),L=y();var m=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const S=(t,e)=>[t[e].t,t[e].v],w=(e,n,o,l)=>{const i=t(n)?e:((t,e,n)=>(d(t,e)||(t[e]={}),t[e]))(e,n);let u;return a(o,((t,e)=>{l(i,e,t)&&(u=1)})),a(i,((t,e)=>{d(o,e)||(c(i,e),u=1)})),!t(n)&&v(i)&&c(e,n),u},x=(n,o,l="tinybase",i)=>(o.change((t=>t[l]={})),((n,o,l,i,r,d,[c,a]=[],s=[])=>{let y,m,S,w=0,x=0;p(A,s,(()=>0)),p(L,s,(()=>[]));const C=t=>g(void 0,null,(function*(){return 2!=w&&(w=1,yield P.schedule((()=>g(void 0,null,(function*(){yield t(),w=0}))))),P})),P={load:(t,e)=>g(void 0,null,(function*(){return yield C((()=>g(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>g(void 0,[...t],(function*(t={},e={}){return P.stopAutoLoad(),yield P.load(t,e),x=1,S=i(((t,e)=>g(void 0,null,(function*(){if(e){const t=e();yield C((()=>g(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield C((()=>g(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==d||d(t)}}))))})))),P})),stopAutoLoad:()=>(x&&(r(S),S=void 0,x=0),P),save:t=>g(void 0,null,(function*(){return 1!=w&&(w=2,yield P.schedule((()=>g(void 0,null,(function*(){try{yield l(n.getContent,t)}catch(t){null==d||d(t)}w=0}))))),P})),startAutoSave:()=>g(void 0,null,(function*(){return yield P.stopAutoSave().save(),y=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();v(n)&&v(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>(e(y,n.delListener),y=void 0,P),schedule:(...e)=>g(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(h(L,s),...e),yield g(void 0,null,(function*(){if(!h(A,s)){for(f(A,s,1);!t((e=h(L,s),m=e.shift()));)try{yield m()}catch(t){null==d||d(t)}f(A,s,0)}var e})),P})),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(P[c]=()=>a),u(P)})(n,(()=>m(void 0,null,(function*(){return 2==s(o.doc[l])?S(o.doc,l):void 0}))),((n,i)=>m(void 0,null,(function*(){return o.change((o=>((n,o,l,i)=>{((t,e)=>{v(t[e])&&(t[e]={t:{},v:{}})})(n,o);const[u,d]=S(n,o),s=()=>{y=1};let y=1;if(e(null==i?void 0:i(),(([n,o])=>{y=0,a(n,((n,o)=>y?0:t(n)?c(u,o):e(u[o],(o=>a(n,((n,l)=>y?0:t(n)?c(o,l):e(r(o,l),(e=>a(n,((n,o)=>t(n)?c(e,o):e[o]=n))),s)))),s))),a(o,((e,n)=>y?0:t(e)?c(d,n):d[n]=e))})),y){const[t,e]=l();w(u,void 0,t,((t,e,n)=>w(u,e,n,((t,e,n)=>w(t,e,n,((t,e,n)=>{if(r(t,e)!==n)return t[e]=n,1})))))),w(d,void 0,e,((t,e,n)=>{r(d,e)!==n&&(d[e]=n)}))}})(o,l,n,i)))}))),(t=>{const e=({doc:e})=>t((()=>S(e,l)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),i,["getDocHandle",o]));export{x as createAutomergePersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,d=(e,n,l)=>u(e)?null==l?void 0:l():n(e),a=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",h=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},R=(e,n)=>null==e?void 0:e.delete(n),b=Object,w=e=>b.getPrototypeOf(e),N=b.keys,x=b.freeze,S=(e=[])=>b.fromEntries(e),C=(...e)=>b.assign({},...e),D=(e,n)=>m(b.entries(e),(([e,l])=>n(l,e))),g=e=>b.values(e),I=e=>v(N(e)),F=e=>(e=>!u(e)&&d(w(e),(e=>e==b.prototype||u(w(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(R(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(L(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),U=e=>new Set(Array.isArray(e)||u(e)?e:[e]),Y=(e,n)=>null==e?void 0:e.add(n);var k=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?k(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))J.call(n,l)&&K(e,l,n[l]);if(G)for(var l of G(n))z.call(n,l)&&K(e,l,n[l]);return e},q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>q(void 0,null,(function*(){return W(o,S(yield s(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>q(void 0,[n],(function*({name:n}){return[n,S(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>q(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?S(T(m(yield e(Q+p(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,d,a=!1)=>q(void 0,null,(function*(){const c=U();D(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>Y(c,e)))));const v=P(c);if(!a&&d&&O(v)&&L(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(v)||L(o,n)){const l=_(o,n),r=U($(l));yield s([...m(v,(t=>q(void 0,null,(function*(){R(r,t)||(yield e(`ALTER TABLE${p(n)}ADD${p(t)}`),B(l,t,""))})))),...!a&&i?m(P(r),(o=>q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(t)} PRIMARY KEY ON CONFLICT REPLACE${h(m(v,(e=>l+p(e))))});`),B(o,n,M([[t,""],...m(v,(e=>[e,""]))]));if(a)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield s(D(r,((l,o)=>q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+p(n)+Z+p(t)+"=?",[o]):O(v)||(yield ne(e,n,t,N(l),[o,...g(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];D(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+p(n)+Z+p(t)+"NOT IN("+le(u)+")",u)}})),n=>q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>q(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(t)+h(m(r,(e=>l+p(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+p(t)+")DO UPDATE SET"+h(m(r,(e=>p(e)+"=excluded."+p(e))),l),i)})),le=e=>h(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,a]=[],c=[])=>{let v,s,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>oe(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}B(re,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>a),x(h)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ae="store",ce=(e,n,l,t,o,[r],i,u,d)=>{const[a,c,v,s]=ee(n,i,o);return ue(e,(()=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var e,n;return yield a(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ae])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var n,l;yield a(),yield v(r,f,{[y]:{[ae]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?b.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const se=(e,n,l,t,o,[r,i,[d,a,c]],v,p,E)=>{const[h,m,O,A]=ee(n,v,o),L=(e,n)=>ve(void 0,null,(function*(){return yield s(j(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),P=(e,n)=>ve(void 0,null,(function*(){return a?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){yield h();const e=yield ve(void 0,null,(function*(){return S(T(yield s(j(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield ve(void 0,null,(function*(){return d?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){if(yield h(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",Ee="tableId",he="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[he]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return D(e,((e,r)=>{const i=c(g(C(n,a(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",Re="schema_version",be=(e,l,t,o,r,u,d,v,s="getDb")=>{let y,p,h;const[m,O,T,A]=(e=>{const l=(e=>C(me,a(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],U(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(g(C(Oe,i)),0,I(Oe)),d=u[2],v=U(d);return[0,t,[Te(o,{[Ee]:null,[pe]:f},Ee,(e=>Y(v,e)&&e==d)),Te(r,{[he]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},he,((e,n)=>Y(v,n)&&n==d)),u],v]})(l);return(m?ce:se)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+Re))[0][Re],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=p?p:p=l)&&o==(null!=h?h:h=o)||(e(),y=n,p=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=p=null,r(n)}),d,T,P(A),v,s)},we=(e,n,l,t,o)=>be(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);export{we as createCrSqliteWasmPersister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,d=(e,n,l)=>u(e)?null==l?void 0:l():n(e),a=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",h=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},R=(e,n)=>null==e?void 0:e.delete(n),b=Object,w=e=>b.getPrototypeOf(e),N=b.entries,x=b.keys,S=b.freeze,C=(e=[])=>b.fromEntries(e),D=(...e)=>b.assign({},...e),g=(e,n)=>m(N(e),(([e,l])=>n(l,e))),I=e=>b.values(e),F=e=>v(x(e)),M=e=>(e=>!u(e)&&d(w(e),(e=>e==b.prototype||u(w(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>u(l)?(R(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(L(e,n)||H(e,n,l()),j(e,n)),U=(e,n,l,t=H)=>(g(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(J)for(var l of J(n))K.call(n,l)&&V(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=E+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,t)=>{const o=$();return[()=>Q(void 0,null,(function*(){return U(o,C(yield s(m(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,C(m(yield e(E+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,U(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!u(j(j(o,e),n)))(n,l)?C(T(m(yield e(X+p(n)),(e=>{return[e[l],(n=q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!M(n)))):{}})),(n,t,r,i,d,a=!1)=>Q(void 0,null,(function*(){const c=Y();g(null!=r?r:{},(e=>m(x(null!=e?e:{}),(e=>k(c,e)))));const v=P(c);if(!a&&d&&O(v)&&L(o,n))return yield e("DROP TABLE"+p(n)),void H(o,n);if(O(v)||L(o,n)){const l=j(o,n),r=Y(_(l));yield s([...m(v,(t=>Q(void 0,null,(function*(){R(r,t)||(yield e(`ALTER TABLE${p(n)}ADD${p(t)}`),H(l,t,""))})))),...!a&&i?m(P(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),H(l,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(t)} PRIMARY KEY ON CONFLICT REPLACE${h(m(v,(e=>l+p(e))))});`),H(o,n,$([[t,""],...m(v,(e=>[e,""]))]));if(a)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield s(g(r,((l,o)=>Q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+p(n)+ee+p(t)+"=?",[o]):O(v)||(yield le(e,n,t,x(l),[o,...I(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const l=T(_(j(o,n)),(e=>e!=t)),i=[],u=[];g(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield le(e,n,t,l,i),yield e("DELETE FROM"+p(n)+ee+p(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},le=(e,n,t,r,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(t)+h(m(r,(e=>l+p(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+p(t)+")DO UPDATE SET"+h(m(r,(e=>p(e)+"=excluded."+p(e))),l),i)})),te=e=>h(m(e,(()=>"?")),l),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),de=(e,n,l,t,o,r,[i,a]=[],c=[])=>{let v,s,y,f=0,p=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>re(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>re(void 0,null,(function*(){return A(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!u((e=j(ue,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>a),S(h)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",ve=(e,n,l,t,o,[r],i,u,d)=>{const[a,c,v,s]=ne(n,i,o);return de(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield a(),oe(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ce])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,l;yield a(),yield v(r,f,{[y]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?b.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[d,a,c]],v,p,E)=>{const[h,m,O,A]=ne(n,v,o),L=(e,n)=>se(void 0,null,(function*(){return yield s(B(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return a?yield O(c,f,{[y]:e},!0,!0,n):null}));return de(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield h();const e=yield se(void 0,null,(function*(){return C(T(yield s(B(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield se(void 0,null,(function*(){return d?(yield m(c,f))[y]:{}}));return M(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield h(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,p],p)},fe="json",pe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",me="tableName",Oe={mode:fe,[pe]:1},Te={load:0,save:0,[me]:n+"_values"},Ae=(e,n,l,t)=>{const o=$();return g(e,((e,r)=>{const i=c(I(D(n,a(e)?{[l]:e}:e)),0,F(n));u(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",Re="data_version",be="schema_version",we=(e,l,t,o,r,u,d,v,s="getDb")=>{let y,p,h;const[m,O,T,A]=(e=>{const l=(e=>D(Oe,a(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[pe];if(l.mode==fe){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(I(D(Te,i)),0,F(Te)),d=u[2],v=Y(d);return[0,t,[Ae(o,{[he]:null,[Ee]:f},he,(e=>k(v,e)&&e==d)),Ae(r,{[me]:null,[Ee]:f,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>k(v,n)&&n==d)),u],v]})(l);return(m?ve:ye)(e,u?(e,n)=>Le(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+Re))[0][Re],l=(yield t(Pe+be))[0][be],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=p?p:p=l)&&o==(null!=h?h:h=o)||(e(),y=n,p=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=p=null,r(n)}),d,T,P(A),v,s)},Ne=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);export{Ne as createCrSqliteWasmPersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),T=e=>0==s(e),O=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),w=Object,R=e=>w.getPrototypeOf(e),N=w.keys,g=w.freeze,C=(e=[])=>w.fromEntries(e),D=(...e)=>w.assign({},...e),S=(e,n)=>m(w.entries(e),(([e,l])=>n(l,e))),x=e=>w.values(e),I=e=>s(N(e)),F=e=>(e=>!u(e)&&a(R(e),(e=>e==w.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(P(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(b(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(S(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=h+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,C(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,C(m(yield e(h+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?C(O(m(yield e(Q+E(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();S(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const s=L(c);if(!d&&a&&T(s)&&b(o,n))return yield e("DROP TABLE"+E(n)),void B(o,n);if(T(s)||b(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){P(r,t)||(yield e(`ALTER TABLE${E(n)}ADD${E(t)}`),B(l,t,""))})))),...!d&&i?m(L(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+E(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield v(S(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+E(n)+Z+E(t)+"=?",[o]):T(s)||(yield ne(e,n,t,N(l),[o,...x(l)]))})))));else if(T(s))b(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const l=O($(_(o,n)),(e=>e!=t)),i=[],u=[];S(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+E(n)+Z+E(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(t)+p(m(r,(e=>l+E(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+E(t)+")DO UPDATE SET"+p(m(r,(e=>E(e)+"=excluded."+E(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,E=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),E=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(E&&(o(y),y=void 0,E=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),g(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,E,h)=>{const[p,m,T,A]=ee(n,s,o),b=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield T(l,t,u,o,r,n))})))))})),L=(e,n)=>se(void 0,null,(function*(){return d?yield T(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield p();const e=yield se(void 0,null,(function*(){return C(O(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield b(n),yield L(l)}else{const[e,l]=n();yield b(e,!0),yield L(l,!0)}}))))}))),l,t,o,[h,E],E)},ye="json",fe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",pe="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[pe]:n+"_values"},Oe=(e,n,l,t)=>{const o=M();return S(e,((e,r)=>{const i=c(x(D(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const be="pragma ",Le="data_version",Pe="schema_version",we=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,E,p;const[m,T,O,A]=(e=>{const l=(e=>D(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(x(D(Te,i)),0,I(Te)),a=u[2],s=Y(a);return[0,t,[Oe(o,{[he]:null,[Ee]:f},he,(e=>k(s,e)&&e==a)),Oe(r,{[pe]:null,[Ee]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(m?ce:ve)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(be+Le))[0][Le],l=(yield t(be+Pe))[0][Pe],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=E?E:E=l)&&o==(null!=p?p:p=o)||(e(),y=n,E=l)}catch(e){}})),l=T,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=E=null,r(n)}),a,O,L(A),s,v)},Re=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.db.raw({sql:e,args:l})},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.notifier.subscribeToDataChanges((l=>{return t=({tablename:n})=>e(n),n.notifier.alias(l).forEach(t);var t}))),(e=>e()),t,o,n,"getElectricClient");export{Re as createElectricSqlPersister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),T=e=>0==s(e),O=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),w=Object,R=e=>w.getPrototypeOf(e),N=w.entries,g=w.keys,C=w.freeze,D=(e=[])=>w.fromEntries(e),S=(...e)=>w.assign({},...e),x=(e,n)=>m(N(e),(([e,l])=>n(l,e))),I=e=>w.values(e),F=e=>s(g(e)),M=e=>(e=>!u(e)&&a(R(e),(e=>e==w.prototype||u(R(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>u(l)?(P(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(b(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(x(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||u(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(U)for(var l of U(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=h+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,t)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,D(yield v(m(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,D(m(yield e(h+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!u(j(j(o,e),n)))(n,l)?D(O(m(yield e(X+E(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!M(n)))):{}})),(n,t,r,i,a,d=!1)=>Q(void 0,null,(function*(){const c=k();x(null!=r?r:{},(e=>m(g(null!=e?e:{}),(e=>G(c,e)))));const s=L(c);if(!d&&a&&T(s)&&b(o,n))return yield e("DROP TABLE"+E(n)),void H(o,n);if(T(s)||b(o,n)){const l=j(o,n),r=k(_(l));yield v([...m(s,(t=>Q(void 0,null,(function*(){P(r,t)||(yield e(`ALTER TABLE${E(n)}ADD${E(t)}`),H(l,t,""))})))),...!d&&i?m(L(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),H(l,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+E(e))))});`),H(o,n,$([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield v(x(r,((l,o)=>Q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+E(n)+ee+E(t)+"=?",[o]):T(s)||(yield le(e,n,t,g(l),[o,...I(l)]))})))));else if(T(s))b(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const l=O(_(j(o,n)),(e=>e!=t)),i=[],u=[];x(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield le(e,n,t,l,i),yield e("DELETE FROM"+E(n)+ee+E(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},le=(e,n,t,r,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(t)+p(m(r,(e=>l+E(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+E(t)+")DO UPDATE SET"+p(m(r,(e=>E(e)+"=excluded."+E(e))),l),i)})),te=e=>p(m(e,(()=>"?")),l),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),ae=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,E=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const h=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>re(void 0,null,(function*(){return yield h((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),E=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield h((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(E&&(o(y),y=void 0,E=0),p),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>re(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>re(void 0,null,(function*(){return A(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!u((e=j(ue,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),C(p)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",se=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield d(),oe(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[a,d,c]],s,E,h)=>{const[p,m,T,A]=ne(n,s,o),b=(e,n)=>ve(void 0,null,(function*(){return yield v(B(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield T(l,t,u,o,r,n))})))))})),L=(e,n)=>ve(void 0,null,(function*(){return d?yield T(c,f,{[y]:e},!0,!0,n):null}));return ae(e,(()=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){yield p();const e=yield ve(void 0,null,(function*(){return D(O(yield v(B(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield ve(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return M(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield b(n),yield L(l)}else{const[e,l]=n();yield b(e,!0),yield L(l,!0)}}))))}))),l,t,o,[h,E],E)},fe="json",Ee="autoLoadIntervalSeconds",he="rowIdColumnName",pe="tableId",me="tableName",Te={mode:fe,[Ee]:1},Oe={load:0,save:0,[me]:n+"_values"},Ae=(e,n,l,t)=>{const o=$();return x(e,((e,r)=>{const i=c(I(S(n,d(e)?{[l]:e}:e)),0,F(n));u(i[0])||t(r,i[0])||H(o,r,i)})),o};var be=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",we="schema_version",Re=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,E,p;const[m,T,O,A]=(e=>{const l=(e=>S(Te,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==fe){const{storeTableName:e=n}=l;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(I(S(Oe,i)),0,F(Oe)),a=u[2],s=k(a);return[0,t,[Ae(o,{[pe]:null,[he]:f},pe,(e=>G(s,e)&&e==a)),Ae(r,{[me]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(s,n)&&n==a)),u],s]})(l);return(m?se:ye)(e,u?(e,n)=>be(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>be(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+we))[0][we],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=E?E:E=l)&&o==(null!=p?p:p=o)||(e(),y=n,E=l)}catch(e){}})),l=T,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=E=null,r(n)}),a,O,L(A),s,v)},Ne=(e,n,l,t,o)=>Re(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.db.raw({sql:e,args:l})},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.notifier.subscribeToDataChanges((l=>{return t=({tablename:n})=>e(n),n.notifier.alias(l).forEach(t);var t}))),(e=>e()),t,o,n,"getElectricClient");export{Ne as createElectricSqlPersister};
@@ -1 +1 @@
1
- import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=e=>n(e)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",m=(e,n="")=>e.join(n),A=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),L=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),R=Object,w=e=>R.getPrototypeOf(e),x=R.keys,S=R.freeze,g=(e=[])=>R.fromEntries(e),C=(...e)=>R.assign({},...e),D=(e,n)=>A(R.entries(e),(([e,l])=>n(l,e))),I=e=>R.values(e),F=e=>s(x(e)),M=e=>(e=>!d(e)&&a(w(e),(e=>e==R.prototype||d(w(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return A([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>d(l)?(N(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(P(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||d(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(U)for(var l of U(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=h+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,l)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,g(yield y(A(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,g(A(yield e(h+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!d(j(j(o,e),n)))(n,l)?g(T(A(yield e(X+E(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!d(e)&&!M(n)))):{}})),(n,l,r,i,u,a=!1)=>Q(void 0,null,(function*(){const c=k();D(null!=r?r:{},(e=>A(x(null!=e?e:{}),(e=>G(c,e)))));const v=b(c);if(!a&&u&&O(v)&&P(o,n))return yield e("DROP TABLE"+E(n)),void H(o,n);if(O(v)||P(o,n)){const t=j(o,n),r=k(_(t));yield y([...A(v,(l=>Q(void 0,null,(function*(){N(r,l)||(yield e(`ALTER TABLE${E(n)}ADD${E(l)}`),H(t,l,""))})))),...!a&&i?A(b(r),(o=>Q(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),H(t,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(l)} PRIMARY KEY ON CONFLICT REPLACE${m(A(v,(e=>t+E(e))))});`),H(o,n,$([[l,""],...A(v,(e=>[e,""]))]));if(a)d(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield y(D(r,((t,o)=>Q(void 0,null,(function*(){d(t)?yield e("DELETE FROM"+E(n)+ee+E(l)+"=?",[o]):O(v)||(yield le(e,n,l,x(t),[o,...I(t)]))})))));else if(O(v))P(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const t=T(_(j(o,n)),(e=>e!=l)),i=[],u=[];D(null!=r?r:{},((e,n)=>{L(i,n,...A(t,(n=>null==e?void 0:e[n]))),L(u,n)})),yield le(e,n,l,t,i),yield e("DELETE FROM"+E(n)+ee+E(l)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},le=(e,n,l,o,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(l)+m(A(o,(e=>t+E(e))))+")VALUES"+v(r(`,(?${r(",?",s(o))})`,s(i)/(s(o)+1)),1)+"ON CONFLICT("+E(l)+")DO UPDATE SET"+m(A(o,(e=>E(e)+"=excluded."+E(e))),t),i)})),te=e=>m(A(e,(()=>"?")),t),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),de=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let v,s,y,f=0,p=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>re(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(a(v,e.delListener),v=void 0,h),schedule:(...e)=>re(void 0,null,(function*(){return L(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!d((e=j(ue,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>u),S(h)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",ve=(e,n,l,t,o,[r],i,u,d)=>{const[a,c,v,s]=ne(n,i,o);return de(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield a(),oe(null!=(n=null==(e=(yield c(r,p))[f])?void 0:e[ce])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,l;yield a(),yield v(r,p,{[f]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[u,a,c]],v,s,E)=>{const[h,m,A,O]=ne(n,v,o),L=(e,n)=>se(void 0,null,(function*(){return yield y(B(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return a?yield A(c,p,{[f]:e},!0,!0,n):null}));return de(e,(()=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){yield h();const e=yield se(void 0,null,(function*(){return g(T(yield y(B(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield se(void 0,null,(function*(){return u?(yield m(c,p))[f]:{}}));return M(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){if(yield h(),d(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,s],s)},fe="json",pe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",me="tableName",Ae={mode:fe,[pe]:1},Oe={load:0,save:0,[me]:l+"_values"},Te=(e,n,l,t)=>{const o=$();return D(e,((e,r)=>{const i=v(I(C(n,c(e)?{[l]:e}:e)),0,F(n));d(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",be="data_version",Ne="schema_version",Re=(e,n,t,o,r,i,d,a,s="getDb")=>{let y,f,E;const[m,A,O,T]=(e=>{const n=(e=>C(Ae,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[pe];if(n.mode==fe){const{storeTableName:e=l}=n;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v(I(C(Oe,i)),0,F(Oe)),d=u[2],a=k(d);return[0,t,[Te(o,{[he]:null,[Ee]:p},he,(e=>G(a,e)&&e==d)),Te(r,{[me]:null,[Ee]:p,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(a,n)&&n==d)),u],a]})(n);return(m?ve:ye)(e,i?(e,n)=>Le(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+be))[0][be],l=(yield t(Pe+Ne))[0][Ne],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=f?f:f=l)&&o==(null!=E?E:E=o)||(e(),y=n,f=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),y=f=null,r(n)}),d,O,b(T),a,s)},we=(n,l,t,o,r)=>Re(n,t,((e,...n)=>{return t=[e,...n],o=function*(e,n=[]){return yield l.getAllAsync(e,n)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(n=>e((({tableName:e})=>n(e)))),(e=>e.remove()),o,r,l);export{we as createExpoSqliteNextPersister};
1
+ import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=e=>n(e)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",m=(e,n="")=>e.join(n),A=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),L=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),R=Object,w=e=>R.getPrototypeOf(e),x=R.entries,S=R.keys,g=R.freeze,C=(e=[])=>R.fromEntries(e),D=(...e)=>R.assign({},...e),I=(e,n)=>A(x(e),(([e,l])=>n(l,e))),F=e=>R.values(e),M=e=>s(S(e)),$=e=>(e=>!d(e)&&a(w(e),(e=>e==R.prototype||d(w(e))),(()=>!0)))(e)&&0==M(e),_=e=>new Map(e),j=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return A([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},W=(e,n,l)=>d(l)?(N(e,n),e):null==e?void 0:e.set(n,l),Y=(e,n,l)=>(P(e,n)||W(e,n,l()),B(e,n)),k=(e,n,l,t=W)=>(I(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||d(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,q=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,Q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(q)for(var l of q(n))K.call(n,l)&&V(e,l,n[l]);return e},X=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Z=h+"*FROM",ee="FROM pragma_table_",ne="WHERE",le=(e,n,l)=>{const o=_();return[()=>X(void 0,null,(function*(){return k(o,C(yield y(A(yield e("SELECT name "+ee+"list WHERE schema='main'AND type='table'AND name IN("+oe(n)+")ORDER BY name",n),(n=>X(void 0,[n],(function*({name:n}){return[n,C(A(yield e(h+" name,type "+ee+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>W(o,n,k(Y(o,n,_),l,((e,n,l)=>{l!=B(e,n)&&W(e,n,l)}),((e,n)=>W(e,n))))),((e,n)=>W(o,n)))})),(n,l)=>X(void 0,null,(function*(){return((e,n)=>!d(B(B(o,e),n)))(n,l)?C(T(A(yield e(Z+E(n)),(e=>{return[e[l],(n=Q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!d(e)&&!$(n)))):{}})),(n,l,r,i,u,a=!1)=>X(void 0,null,(function*(){const c=G();I(null!=r?r:{},(e=>A(S(null!=e?e:{}),(e=>J(c,e)))));const v=b(c);if(!a&&u&&O(v)&&P(o,n))return yield e("DROP TABLE"+E(n)),void W(o,n);if(O(v)||P(o,n)){const t=B(o,n),r=G(j(t));yield y([...A(v,(l=>X(void 0,null,(function*(){N(r,l)||(yield e(`ALTER TABLE${E(n)}ADD${E(l)}`),W(t,l,""))})))),...!a&&i?A(b(r),(o=>X(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),W(t,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(l)} PRIMARY KEY ON CONFLICT REPLACE${m(A(v,(e=>t+E(e))))});`),W(o,n,_([[l,""],...A(v,(e=>[e,""]))]));if(a)d(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield y(I(r,((t,o)=>X(void 0,null,(function*(){d(t)?yield e("DELETE FROM"+E(n)+ne+E(l)+"=?",[o]):O(v)||(yield te(e,n,l,S(t),[o,...F(t)]))})))));else if(O(v))P(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const t=T(j(B(o,n)),(e=>e!=l)),i=[],u=[];I(null!=r?r:{},((e,n)=>{L(i,n,...A(t,(n=>null==e?void 0:e[n]))),L(u,n)})),yield te(e,n,l,t,i),yield e("DELETE FROM"+E(n)+ne+E(l)+"NOT IN("+oe(u)+")",u)}})),n=>X(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},te=(e,n,l,o,i)=>X(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(l)+m(A(o,(e=>t+E(e))))+")VALUES"+v(r(`,(?${r(",?",s(o))})`,s(i)/(s(o)+1)),1)+"ON CONFLICT("+E(l)+")DO UPDATE SET"+m(A(o,(e=>E(e)+"=excluded."+E(e))),t),i)})),oe=e=>m(A(e,(()=>"?")),t),re=JSON.parse;var ie=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ue=_(),de=_(),ae=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let v,s,y,f=0,p=0;Y(ue,c,(()=>0)),Y(de,c,(()=>[]));const E=e=>ie(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>ie(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>ie(void 0,null,(function*(){return yield E((()=>ie(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ie(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>ie(void 0,null,(function*(){if(t){const n=t();yield E((()=>ie(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>ie(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>ie(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>ie(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>ie(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();$(l)&&$(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(a(v,e.delListener),v=void 0,h),schedule:(...e)=>ie(void 0,null,(function*(){return L(B(de,c),...e),yield ie(void 0,null,(function*(){if(!B(ue,c)){for(W(ue,c,1);!d((e=B(de,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}W(ue,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>u),g(h)};var ce=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve="store",se=(e,n,l,t,o,[r],i,u,d)=>{const[a,c,v,s]=le(n,i,o);return ae(e,(()=>ce(void 0,null,(function*(){return yield s((()=>ce(void 0,null,(function*(){var e,n;return yield a(),re(null!=(n=null==(e=(yield c(r,p))[f])?void 0:e[ve])?n:"null")}))))}))),(e=>ce(void 0,null,(function*(){return yield s((()=>ce(void 0,null,(function*(){var n,l;yield a(),yield v(r,p,{[f]:{[ve]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe=(e,n,l,t,o,[r,i,[u,a,c]],v,s,E)=>{const[h,m,A,O]=le(n,v,o),L=(e,n)=>ye(void 0,null,(function*(){return yield y(H(i,((l,t)=>ye(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),P=(e,n)=>ye(void 0,null,(function*(){return a?yield A(c,p,{[f]:e},!0,!0,n):null}));return ae(e,(()=>ye(void 0,null,(function*(){return yield O((()=>ye(void 0,null,(function*(){yield h();const e=yield ye(void 0,null,(function*(){return C(T(yield y(H(r,((e,n)=>ye(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!$(e[1]))))})),n=yield ye(void 0,null,(function*(){return u?(yield m(c,p))[f]:{}}));return $(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>ye(void 0,null,(function*(){return yield O((()=>ye(void 0,null,(function*(){if(yield h(),d(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,s],s)},pe="json",Ee="autoLoadIntervalSeconds",he="rowIdColumnName",me="tableId",Ae="tableName",Oe={mode:pe,[Ee]:1},Te={load:0,save:0,[Ae]:l+"_values"},Le=(e,n,l,t)=>{const o=_();return I(e,((e,r)=>{const i=v(F(D(n,c(e)?{[l]:e}:e)),0,M(n));d(i[0])||t(r,i[0])||W(o,r,i)})),o};var Pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const be="pragma ",Ne="data_version",Re="schema_version",we=(e,n,t,o,r,i,d,a,s="getDb")=>{let y,f,E;const[m,A,O,T]=(e=>{const n=(e=>D(Oe,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[Ee];if(n.mode==pe){const{storeTableName:e=l}=n;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v(F(D(Te,i)),0,M(Te)),d=u[2],a=G(d);return[0,t,[Le(o,{[me]:null,[he]:p},me,(e=>J(a,e)&&e==d)),Le(r,{[Ae]:null,[he]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ae,((e,n)=>J(a,n)&&n==d)),u],a]})(n);return(m?se:fe)(e,i?(e,n)=>Pe(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Pe(void 0,null,(function*(){try{const n=(yield t(be+Ne))[0][Ne],l=(yield t(be+Re))[0][Re],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=f?f:f=l)&&o==(null!=E?E:E=o)||(e(),y=n,f=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),y=f=null,r(n)}),d,O,b(T),a,s)},xe=(n,l,t,o,r)=>we(n,t,((e,...n)=>{return t=[e,...n],o=function*(e,n=[]){return yield l.getAllAsync(e,n)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(n=>e((({tableName:e})=>n(e)))),(e=>e.remove()),o,r,l);export{xe as createExpoSqliteNextPersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),A=e=>0==s(e),O=(e,n)=>e.filter(n),T=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},b=(e,n)=>null==e?void 0:e.delete(n),w=Object,N=e=>w.getPrototypeOf(e),R=w.keys,g=w.freeze,x=(e=[])=>w.fromEntries(e),C=(...e)=>w.assign({},...e),D=(e,n)=>m(w.entries(e),(([e,l])=>n(l,e))),S=e=>w.values(e),I=e=>s(R(e)),F=e=>(e=>!u(e)&&a(N(e),(e=>e==w.prototype||u(N(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(b(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(L(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,x(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,x(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?x(O(m(yield e(Q+h(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();D(null!=r?r:{},(e=>m(R(null!=e?e:{}),(e=>k(c,e)))));const s=P(c);if(!d&&a&&A(s)&&L(o,n))return yield e("DROP TABLE"+h(n)),void B(o,n);if(A(s)||L(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){b(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),B(l,t,""))})))),...!d&&i?m(P(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+h(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield v(D(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+Z+h(t)+"=?",[o]):A(s)||(yield ne(e,n,t,R(l),[o,...S(l)]))})))));else if(A(s))L(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=O($(_(o,n)),(e=>e!=t)),i=[],u=[];D(null!=r?r:{},((e,n)=>{T(i,n,...m(l,(n=>null==e?void 0:e[n]))),T(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+h(n)+Z+h(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,h=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return T(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),g(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,h,E)=>{const[p,m,A,T]=ee(n,s,o),L=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return d?yield A(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield T((()=>se(void 0,null,(function*(){yield p();const e=yield se(void 0,null,(function*(){return x(O(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield T((()=>se(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,h],h)},ye="json",fe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",pe="tableName",me={mode:ye,[fe]:1},Ae={load:0,save:0,[pe]:n+"_values"},Oe=(e,n,l,t)=>{const o=M();return D(e,((e,r)=>{const i=c(S(C(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",be="schema_version",we=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,h,p;const[m,A,O,T]=(e=>{const l=(e=>C(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(S(C(Ae,i)),0,I(Ae)),a=u[2],s=Y(a);return[0,t,[Oe(o,{[Ee]:null,[he]:f},Ee,(e=>k(s,e)&&e==a)),Oe(r,{[pe]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(m?ce:ve)(e,u?(e,n)=>Te(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Te(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+be))[0][be],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=h?h:h=l)&&o==(null!=p?p:p=o)||(e(),y=n,h=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=h=null,r(n)}),a,O,P(T),s,v)},Ne=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return(yield n.execAsync([{sql:e,args:l}],!1))[0].rows},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onDatabaseChange((({tableName:n})=>e(n)))),(e=>e.remove()),t,o,n);export{Ne as createExpoSqlitePersister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),A=e=>0==s(e),O=(e,n)=>e.filter(n),T=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},b=(e,n)=>null==e?void 0:e.delete(n),w=Object,N=e=>w.getPrototypeOf(e),R=w.entries,g=w.keys,x=w.freeze,C=(e=[])=>w.fromEntries(e),D=(...e)=>w.assign({},...e),S=(e,n)=>m(R(e),(([e,l])=>n(l,e))),I=e=>w.values(e),F=e=>s(g(e)),M=e=>(e=>!u(e)&&a(N(e),(e=>e==w.prototype||u(N(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>u(l)?(b(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(L(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(S(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||u(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(U)for(var l of U(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=E+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,t)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,C(yield v(m(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,C(m(yield e(E+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!u(j(j(o,e),n)))(n,l)?C(O(m(yield e(X+h(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!M(n)))):{}})),(n,t,r,i,a,d=!1)=>Q(void 0,null,(function*(){const c=k();S(null!=r?r:{},(e=>m(g(null!=e?e:{}),(e=>G(c,e)))));const s=P(c);if(!d&&a&&A(s)&&L(o,n))return yield e("DROP TABLE"+h(n)),void H(o,n);if(A(s)||L(o,n)){const l=j(o,n),r=k(_(l));yield v([...m(s,(t=>Q(void 0,null,(function*(){b(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),H(l,t,""))})))),...!d&&i?m(P(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),H(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+h(e))))});`),H(o,n,$([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield v(S(r,((l,o)=>Q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+ee+h(t)+"=?",[o]):A(s)||(yield le(e,n,t,g(l),[o,...I(l)]))})))));else if(A(s))L(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=O(_(j(o,n)),(e=>e!=t)),i=[],u=[];S(null!=r?r:{},((e,n)=>{T(i,n,...m(l,(n=>null==e?void 0:e[n]))),T(u,n)})),yield le(e,n,t,l,i),yield e("DELETE FROM"+h(n)+ee+h(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},le=(e,n,t,r,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),te=e=>p(m(e,(()=>"?")),l),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),ae=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,h=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>re(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>re(void 0,null,(function*(){return T(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!u((e=j(ue,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),x(p)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",se=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield d(),oe(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[a,d,c]],s,h,E)=>{const[p,m,A,T]=ne(n,s,o),L=(e,n)=>ve(void 0,null,(function*(){return yield v(B(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),P=(e,n)=>ve(void 0,null,(function*(){return d?yield A(c,f,{[y]:e},!0,!0,n):null}));return ae(e,(()=>ve(void 0,null,(function*(){return yield T((()=>ve(void 0,null,(function*(){yield p();const e=yield ve(void 0,null,(function*(){return C(O(yield v(B(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield ve(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return M(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield T((()=>ve(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,h],h)},fe="json",he="autoLoadIntervalSeconds",Ee="rowIdColumnName",pe="tableId",me="tableName",Ae={mode:fe,[he]:1},Oe={load:0,save:0,[me]:n+"_values"},Te=(e,n,l,t)=>{const o=$();return S(e,((e,r)=>{const i=c(I(D(n,d(e)?{[l]:e}:e)),0,F(n));u(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",be="data_version",we="schema_version",Ne=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,h,p;const[m,A,O,T]=(e=>{const l=(e=>D(Ae,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[he];if(l.mode==fe){const{storeTableName:e=n}=l;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(I(D(Oe,i)),0,F(Oe)),a=u[2],s=k(a);return[0,t,[Te(o,{[pe]:null,[Ee]:f},pe,(e=>G(s,e)&&e==a)),Te(r,{[me]:null,[Ee]:f,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(s,n)&&n==a)),u],s]})(l);return(m?se:ye)(e,u?(e,n)=>Le(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+be))[0][be],l=(yield t(Pe+we))[0][we],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=h?h:h=l)&&o==(null!=p?p:p=o)||(e(),y=n,h=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=h=null,r(n)}),a,O,P(T),s,v)},Re=(e,n,l,t,o)=>Ne(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return(yield n.execAsync([{sql:e,args:l}],!1))[0].rows},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onDatabaseChange((({tableName:n})=>e(n)))),(e=>e.remove()),t,o,n);export{Re as createExpoSqlitePersister};
@@ -1 +1 @@
1
- const e=Promise,t=clearInterval,n=e=>null==e,o=(e,t,o)=>n(e)?null==o?void 0:o():t(e),l=t=>new e(t),r=t=>{return n=function*(){return e.all(t)},new Promise(((e,t)=>{var o=e=>{try{r(n.next(e))}catch(e){t(e)}},l=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,l);r((n=n.apply(void 0,null)).next())}));var n},u=(e,t)=>e.map(t),i=(e,...t)=>e.push(...t),d=Object,c=e=>d.getPrototypeOf(e),s=d.keys,a=d.freeze,v=e=>(e=>!n(e)&&o(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>s(e).length)(e),y=e=>new Map(e),f=(e,t)=>null==e?void 0:e.get(t),h=(e,t,o)=>{return n(o)?(r=t,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(t,o);var l,r},p=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||h(e,t,n()),f(e,t)};var g=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const w=y(),m=y();var A=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const x=globalThis.window,P=["t","v"],S={keyPath:"k"},b=(e,t)=>A(void 0,null,(function*(){const l=((t,n)=>u(d.entries(t),(([t,n])=>L(e,"put",{k:t,v:n}))))(t);u(yield L(e,"getAllKeys"),(r=>((e,t)=>!n(((e,t)=>o(e,(e=>e[t])))(e,t)))(t,r)?0:i(l,L(e,"delete",r)))),yield r(l)})),L=(e,t,n)=>A(void 0,null,(function*(){return l(((o,l)=>{const r=e[t](n);r.onsuccess=()=>o(r.result),r.onerror=()=>l(`objectStore.${t} error`)}))})),k=(e,c,s=1,y)=>{const k=(e,...t)=>A(void 0,[e,...t],(function*(e,t=[],n=0){return l(((o,l)=>{const i=x.indexedDB.open(c,n?2:void 0);i.onupgradeneeded=()=>n&&u(P,(e=>{try{i.result.createObjectStore(e,S)}catch(e){}})),i.onsuccess=()=>A(void 0,null,(function*(){try{const n=i.result.transaction(P,"readwrite"),l=yield r(u(P,((o,l)=>A(void 0,null,(function*(){return yield e(n.objectStore(o),t[l])})))));i.result.close(),o(l)}catch(e){i.result.close(),l(e)}})),i.onerror=()=>l("indexedDB.open error")}))}));return((e,t,l,r,u,d,[c,s]=[],y=[])=>{let A,x,P,S=0,b=0;p(w,y,(()=>0)),p(m,y,(()=>[]));const L=e=>g(void 0,null,(function*(){return 2!=S&&(S=1,yield k.schedule((()=>g(void 0,null,(function*(){yield e(),S=0}))))),k})),k={load:(n,o)=>g(void 0,null,(function*(){return yield L((()=>g(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,o])}}))))})),startAutoLoad:(...n)=>g(void 0,[...n],(function*(n={},o={}){return k.stopAutoLoad(),yield k.load(n,o),b=1,P=r(((n,o)=>g(void 0,null,(function*(){if(o){const t=o();yield L((()=>g(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield L((()=>g(void 0,null,(function*(){var o;try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){null==d||d(e)}}))))})))),k})),stopAutoLoad:()=>(b&&(u(P),P=void 0,b=0),k),save:t=>g(void 0,null,(function*(){return 1!=S&&(S=2,yield k.schedule((()=>g(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==d||d(e)}S=0}))))),k})),startAutoSave:()=>g(void 0,null,(function*(){return yield k.stopAutoSave().save(),A=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();v(n)&&v(o)||k.save((()=>[n,o]))})),k})),stopAutoSave:()=>(o(A,e.delListener),A=void 0,k),schedule:(...e)=>g(void 0,null,(function*(){return i(f(m,y),...e),yield g(void 0,null,(function*(){if(!f(w,y)){for(h(w,y,1);!n((e=f(m,y),x=e.shift()));)try{yield x()}catch(e){null==d||d(e)}h(w,y,0)}var e})),k})),getStore:()=>e,destroy:()=>k.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(k[c]=()=>s),a(k)})(e,(()=>A(void 0,null,(function*(){return yield k((e=>A(void 0,null,(function*(){return((e=[])=>d.fromEntries(e))(u(yield L(e,"getAll"),(({k:e,v:t})=>[e,t])))}))))}))),(e=>A(void 0,null,(function*(){return yield k(((e,t)=>A(void 0,null,(function*(){return yield b(e,t)}))),e(),1)}))),(e=>setInterval(e,1e3*s)),(e=>t(e)),y,["getDbName",c])};export{k as createIndexedDbPersister,b as objectStoreMatch};
1
+ const e=Promise,t=clearInterval,n=e=>null==e,o=(e,t,o)=>n(e)?null==o?void 0:o():t(e),l=t=>new e(t),r=t=>{return n=function*(){return e.all(t)},new Promise(((e,t)=>{var o=e=>{try{r(n.next(e))}catch(e){t(e)}},l=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,l);r((n=n.apply(void 0,null)).next())}));var n},u=(e,t)=>e.map(t),i=(e,...t)=>e.push(...t),d=Object,c=e=>d.getPrototypeOf(e),s=d.entries,a=d.keys,v=d.freeze,y=e=>(e=>!n(e)&&o(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>a(e).length)(e),f=e=>new Map(e),h=(e,t)=>null==e?void 0:e.get(t),p=(e,t,o)=>{return n(o)?(r=t,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(t,o);var l,r},g=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||p(e,t,n()),h(e,t)};var w=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const m=f(),A=f();var x=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const P=globalThis.window,S=["t","v"],b={keyPath:"k"},L=(e,t)=>x(void 0,null,(function*(){const l=((t,n)=>u(s(t),(([t,n])=>k(e,"put",{k:t,v:n}))))(t);u(yield k(e,"getAllKeys"),(r=>((e,t)=>!n(((e,t)=>o(e,(e=>e[t])))(e,t)))(t,r)?0:i(l,k(e,"delete",r)))),yield r(l)})),k=(e,t,n)=>x(void 0,null,(function*(){return l(((o,l)=>{const r=e[t](n);r.onsuccess=()=>o(r.result),r.onerror=()=>l(`objectStore.${t} error`)}))})),C=(e,c,s=1,a)=>{const f=(e,...t)=>x(void 0,[e,...t],(function*(e,t=[],n=0){return l(((o,l)=>{const i=P.indexedDB.open(c,n?2:void 0);i.onupgradeneeded=()=>n&&u(S,(e=>{try{i.result.createObjectStore(e,b)}catch(e){}})),i.onsuccess=()=>x(void 0,null,(function*(){try{const n=i.result.transaction(S,"readwrite"),l=yield r(u(S,((o,l)=>x(void 0,null,(function*(){return yield e(n.objectStore(o),t[l])})))));i.result.close(),o(l)}catch(e){i.result.close(),l(e)}})),i.onerror=()=>l("indexedDB.open error")}))}));return((e,t,l,r,u,d,[c,s]=[],a=[])=>{let f,x,P,S=0,b=0;g(m,a,(()=>0)),g(A,a,(()=>[]));const L=e=>w(void 0,null,(function*(){return 2!=S&&(S=1,yield k.schedule((()=>w(void 0,null,(function*(){yield e(),S=0}))))),k})),k={load:(n,o)=>w(void 0,null,(function*(){return yield L((()=>w(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,o])}}))))})),startAutoLoad:(...n)=>w(void 0,[...n],(function*(n={},o={}){return k.stopAutoLoad(),yield k.load(n,o),b=1,P=r(((n,o)=>w(void 0,null,(function*(){if(o){const t=o();yield L((()=>w(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield L((()=>w(void 0,null,(function*(){var o;try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){null==d||d(e)}}))))})))),k})),stopAutoLoad:()=>(b&&(u(P),P=void 0,b=0),k),save:t=>w(void 0,null,(function*(){return 1!=S&&(S=2,yield k.schedule((()=>w(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==d||d(e)}S=0}))))),k})),startAutoSave:()=>w(void 0,null,(function*(){return yield k.stopAutoSave().save(),f=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();y(n)&&y(o)||k.save((()=>[n,o]))})),k})),stopAutoSave:()=>(o(f,e.delListener),f=void 0,k),schedule:(...e)=>w(void 0,null,(function*(){return i(h(A,a),...e),yield w(void 0,null,(function*(){if(!h(m,a)){for(p(m,a,1);!n((e=h(A,a),x=e.shift()));)try{yield x()}catch(e){null==d||d(e)}p(m,a,0)}var e})),k})),getStore:()=>e,destroy:()=>k.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(k[c]=()=>s),v(k)})(e,(()=>x(void 0,null,(function*(){return yield f((e=>x(void 0,null,(function*(){return((e=[])=>d.fromEntries(e))(u(yield k(e,"getAll"),(({k:e,v:t})=>[e,t])))}))))}))),(e=>x(void 0,null,(function*(){return yield f(((e,t)=>x(void 0,null,(function*(){return yield L(e,t)}))),e(),1)}))),(e=>setInterval(e,1e3*s)),(e=>t(e)),a,["getDbName",c])};export{C as createIndexedDbPersister,L as objectStoreMatch};
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),n="t",i=(e,t)=>e.startsWith(t),r=Promise,l=e=>null==e,s=(e,t,n)=>l(e)?null==n?void 0:n():t(e),o=(e,t,n)=>e.slice(t,n),u=e=>e.length,a=e=>{return t=function*(){return r.all(e)},new Promise(((e,n)=>{var i=e=>{try{l(t.next(e))}catch(e){n(e)}},r=e=>{try{l(t.throw(e))}catch(e){n(e)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(i,r);l((t=t.apply(void 0,null)).next())}));var t},c=(e,t)=>e.map(t),d=(e,...t)=>e.push(...t),f=Object,h=(e=[])=>f.fromEntries(e),y=(e,t)=>c(f.entries(e),(([e,n])=>t(n,e))),g=(e,t,n)=>(((e,t)=>!l(((e,t)=>s(e,(e=>e[t])))(e,t)))(e,t)||(e[t]=n()),e[t]),v=e=>JSON.stringify(e,((e,t)=>t instanceof Map?f.fromEntries([...t]):t)),p=JSON.parse,P=(n,i,r)=>n+i+(e(r)==t?r:v(r)),x=(e,t,n)=>{const r=u(e);return i(t,e)?[t[r],(n?p:String)(o(t,r+1))]:void 0},m=(e,t)=>((e,t)=>null==e?void 0:e.forEach(t))(e,((e,n)=>t(n,e)));var S=(e,t,n)=>new Promise(((i,r)=>{var l=e=>{try{o(n.next(e))}catch(e){r(e)}},s=e=>{try{o(n.throw(e))}catch(e){r(e)}},o=e=>e.done?i(e.value):Promise.resolve(e.value).then(l,s);o((n=n.apply(e,t)).next())}));const w="hasStore",D=h(c(["Origin","Methods","Headers"],(e=>["Access-Control-Allow-"+e,"*"]))),R=(e,...t)=>S(void 0,[e,...t],(function*(e,t=""){return!!(yield e.get(t+w))})),b=(e,...t)=>S(void 0,[e,...t],(function*(e,t=""){const i={},r={};return m(yield e.list(),((e,l)=>s(x(t,e),(([e,t])=>{if(e==n){const[e,n,r]=p("["+t+"]");g(g(i,e,h),n,h)[r]=l}else"v"==e&&(r[t]=l)})))),[i,r]})),C=(e,t,n)=>S(void 0,null,(function*(){return e.party.broadcast(P(e.config.messagePrefix,"s",t),n)})),T=(e,t,r,s)=>S(void 0,null,(function*(){const o=e.party.storage,c=e.config.storagePrefix,f={[c+w]:1},h=[],g=[];yield a(y(t[0],((t,i)=>S(void 0,null,(function*(){return l(t)?!r&&(yield e.canDelTable(i,s))&&((e,...t)=>e.unshift(...t))(g,H(c,n,i)):(yield e.canSetTable(i,r,s))&&(yield a(y(t,((t,u)=>S(void 0,null,(function*(){return l(t)?!r&&(yield e.canDelRow(i,u,s))&&d(g,H(c,n,i,u)):(yield e.canSetRow(i,u,r,s))&&(yield a(y(t,((t,a)=>S(void 0,null,(function*(){const y=[i,u,a],g=H(c,n,...y);l(t)?!r&&(yield e.canDelCell(...y,s))&&d(h,g):(yield e.canSetCell(...y,t,r,s,yield o.get(g)))&&(f[g]=t)}))))))}))))))}))))),yield a(y(t[1],((t,n)=>S(void 0,null,(function*(){const i=c+"v"+n;l(t)?!r&&(yield e.canDelValue(n,s))&&d(h,i):(yield e.canSetValue(n,t,r,s,yield o.get(i)))&&(f[i]=t)}))))),0!=u(g)&&m(yield o.list(),(e=>g.every((t=>!i(e,t)||d(h,e)&&0)))),yield o.delete(h),yield o.put(f)})),H=(e,t,...n)=>P(e,t,o(v(n),1,-1)),O=(e,t,n=null)=>S(void 0,null,(function*(){return new Response(n,{status:t,headers:e.config.responseHeaders})}));class V{constructor(e){var t,n,i,r;this.party=e,this.config={},null!=(t=this.config).storePath||(t.storePath="/store"),null!=(n=this.config).messagePrefix||(n.messagePrefix=""),null!=(i=this.config).storagePrefix||(i.storagePrefix=""),null!=(r=this.config).responseHeaders||(r.responseHeaders=D)}onRequest(e){return S(this,null,(function*(){const{party:{storage:t},config:{storePath:n,storagePrefix:i}}=this;if(new URL(e.url).pathname.endsWith(n)){const n=yield R(t,i),r=yield e.text();return"PUT"==e.method?n?O(this,205):(yield T(this,p(r),!0,e),O(this,201)):O(this,200,n?v(yield b(t,i)):"")}return O(this,404)}))}onMessage(e,t){return S(this,null,(function*(){const{config:{messagePrefix:n,storagePrefix:i}}=this;yield s(x(n,e,1),(e=>S(this,[e],(function*([e,n]){"s"==e&&(yield R(this.party.storage,i))&&(yield T(this,n,!1,t),C(this,n,[t.id]))}))))}))}canSetTable(e,t,n){return S(this,null,(function*(){return!0}))}canDelTable(e,t){return S(this,null,(function*(){return!0}))}canSetRow(e,t,n,i){return S(this,null,(function*(){return!0}))}canDelRow(e,t,n){return S(this,null,(function*(){return!0}))}canSetCell(e,t,n,i,r,l,s){return S(this,null,(function*(){return!0}))}canDelCell(e,t,n,i){return S(this,null,(function*(){return!0}))}canSetValue(e,t,n,i,r){return S(this,null,(function*(){return!0}))}canDelValue(e,t){return S(this,null,(function*(){return!0}))}}export{V as TinyBasePartyKitServer,C as broadcastTransactionChanges,R as hasStoreInStorage,b as loadStoreFromStorage};
1
+ const e=e=>typeof e,t=e(""),n="t",i=(e,t)=>e.startsWith(t),r=Promise,l=e=>null==e,s=(e,t,n)=>l(e)?null==n?void 0:n():t(e),o=(e,t,n)=>e.slice(t,n),u=e=>e.length,a=e=>{return t=function*(){return r.all(e)},new Promise(((e,n)=>{var i=e=>{try{l(t.next(e))}catch(e){n(e)}},r=e=>{try{l(t.throw(e))}catch(e){n(e)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(i,r);l((t=t.apply(void 0,null)).next())}));var t},c=(e,t)=>e.map(t),d=(e,...t)=>e.push(...t),f=Object,h=f.entries,y=(e=[])=>f.fromEntries(e),g=(e,t)=>c(h(e),(([e,n])=>t(n,e))),v=(e,t,n)=>(((e,t)=>!l(((e,t)=>s(e,(e=>e[t])))(e,t)))(e,t)||(e[t]=n()),e[t]),p=e=>JSON.stringify(e,((e,t)=>t instanceof Map?f.fromEntries([...t]):t)),P=JSON.parse,x=(n,i,r)=>n+i+(e(r)==t?r:p(r)),m=(e,t,n)=>{const r=u(e);return i(t,e)?[t[r],(n?P:String)(o(t,r+1))]:void 0},S=(e,t)=>((e,t)=>null==e?void 0:e.forEach(t))(e,((e,n)=>t(n,e)));var w=(e,t,n)=>new Promise(((i,r)=>{var l=e=>{try{o(n.next(e))}catch(e){r(e)}},s=e=>{try{o(n.throw(e))}catch(e){r(e)}},o=e=>e.done?i(e.value):Promise.resolve(e.value).then(l,s);o((n=n.apply(e,t)).next())}));const D="hasStore",R=y(c(["Origin","Methods","Headers"],(e=>["Access-Control-Allow-"+e,"*"]))),b=(e,...t)=>w(void 0,[e,...t],(function*(e,t=""){return!!(yield e.get(t+D))})),C=(e,...t)=>w(void 0,[e,...t],(function*(e,t=""){const i={},r={};return S(yield e.list(),((e,l)=>s(m(t,e),(([e,t])=>{if(e==n){const[e,n,r]=P("["+t+"]");v(v(i,e,y),n,y)[r]=l}else"v"==e&&(r[t]=l)})))),[i,r]})),T=(e,t,n)=>w(void 0,null,(function*(){return e.party.broadcast(x(e.config.messagePrefix,"s",t),n)})),H=(e,t,r,s)=>w(void 0,null,(function*(){const o=e.party.storage,c=e.config.storagePrefix,f={[c+D]:1},h=[],y=[];yield a(g(t[0],((t,i)=>w(void 0,null,(function*(){return l(t)?!r&&(yield e.canDelTable(i,s))&&((e,...t)=>e.unshift(...t))(y,O(c,n,i)):(yield e.canSetTable(i,r,s))&&(yield a(g(t,((t,u)=>w(void 0,null,(function*(){return l(t)?!r&&(yield e.canDelRow(i,u,s))&&d(y,O(c,n,i,u)):(yield e.canSetRow(i,u,r,s))&&(yield a(g(t,((t,a)=>w(void 0,null,(function*(){const y=[i,u,a],g=O(c,n,...y);l(t)?!r&&(yield e.canDelCell(...y,s))&&d(h,g):(yield e.canSetCell(...y,t,r,s,yield o.get(g)))&&(f[g]=t)}))))))}))))))}))))),yield a(g(t[1],((t,n)=>w(void 0,null,(function*(){const i=c+"v"+n;l(t)?!r&&(yield e.canDelValue(n,s))&&d(h,i):(yield e.canSetValue(n,t,r,s,yield o.get(i)))&&(f[i]=t)}))))),0!=u(y)&&S(yield o.list(),(e=>y.every((t=>!i(e,t)||d(h,e)&&0)))),yield o.delete(h),yield o.put(f)})),O=(e,t,...n)=>x(e,t,o(p(n),1,-1)),V=(e,t,n=null)=>w(void 0,null,(function*(){return new Response(n,{status:t,headers:e.config.responseHeaders})}));class E{constructor(e){var t,n,i,r;this.party=e,this.config={},null!=(t=this.config).storePath||(t.storePath="/store"),null!=(n=this.config).messagePrefix||(n.messagePrefix=""),null!=(i=this.config).storagePrefix||(i.storagePrefix=""),null!=(r=this.config).responseHeaders||(r.responseHeaders=R)}onRequest(e){return w(this,null,(function*(){const{party:{storage:t},config:{storePath:n,storagePrefix:i}}=this;if(new URL(e.url).pathname.endsWith(n)){const n=yield b(t,i),r=yield e.text();return"PUT"==e.method?n?V(this,205):(yield H(this,P(r),!0,e),V(this,201)):V(this,200,n?p(yield C(t,i)):"")}return V(this,404)}))}onMessage(e,t){return w(this,null,(function*(){const{config:{messagePrefix:n,storagePrefix:i}}=this;yield s(m(n,e,1),(e=>w(this,[e],(function*([e,n]){"s"==e&&(yield b(this.party.storage,i))&&(yield H(this,n,!1,t),T(this,n,[t.id]))}))))}))}canSetTable(e,t,n){return w(this,null,(function*(){return!0}))}canDelTable(e,t){return w(this,null,(function*(){return!0}))}canSetRow(e,t,n,i){return w(this,null,(function*(){return!0}))}canDelRow(e,t,n){return w(this,null,(function*(){return!0}))}canSetCell(e,t,n,i,r,l,s){return w(this,null,(function*(){return!0}))}canDelCell(e,t,n,i){return w(this,null,(function*(){return!0}))}canSetValue(e,t,n,i,r){return w(this,null,(function*(){return!0}))}canDelValue(e,t){return w(this,null,(function*(){return!0}))}}export{E as TinyBasePartyKitServer,T as broadcastTransactionChanges,b as hasStoreInStorage,C as loadStoreFromStorage};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",t=",",l=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=n=>e(n)==l,c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",E=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),N=L.keys,S=L.freeze,g=(e=[])=>L.fromEntries(e),x=(...e)=>L.assign({},...e),C=(e,n)=>m(L.entries(e),(([e,t])=>n(t,e))),D=e=>L.values(e),I=e=>s(N(e)),j=e=>(e=>!u(e)&&a(R(e),(e=>e==L.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),_=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},F=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return m([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},B=(e,n,t)=>u(t)?(w(e,n),e):null==e?void 0:e.set(n,t),H=(e,n,t)=>(T(e,n)||B(e,n,t()),F(e,n)),k=(e,n,t,l=B)=>(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)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),W=e=>new Set(Array.isArray(e)||u(e)?e:[e]),Y=(e,n)=>null==e?void 0:e.add(n);var q=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,n,t)=>n in e?q(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&V(e,t,n[t]);if(G)for(var t of G(n))U.call(n,t)&&V(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Q=h+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,l)=>{const o=_();return[()=>K(void 0,null,(function*(){return k(o,g(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>K(void 0,[n],(function*({name:n}){return[n,g(m(yield e(h+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>B(o,n,k(H(o,n,_),t,((e,n,t)=>{t!=F(e,n)&&B(e,n,t)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,t)=>K(void 0,null,(function*(){return((e,n)=>!u(F(F(o,e),n)))(n,t)?g(b(m(yield e(Q+p(n)),(e=>{return[e[t],(n=z({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!u(e)&&!j(n)))):{}})),(n,l,r,i,a,d=!1)=>K(void 0,null,(function*(){const c=W();C(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>Y(c,e)))));const s=A(c);if(!d&&a&&O(s)&&T(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(s)||T(o,n)){const t=F(o,n),r=W(M(t));yield v([...m(s,(l=>K(void 0,null,(function*(){w(r,l)||(yield e(`ALTER TABLE${p(n)}ADD${p(l)}`),B(t,l,""))})))),...!d&&i?m(A(r),(o=>K(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(t,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(l)} PRIMARY KEY ON CONFLICT REPLACE${E(m(s,(e=>t+p(e))))});`),B(o,n,_([[l,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield v(C(r,((t,o)=>K(void 0,null,(function*(){u(t)?yield e("DELETE FROM"+p(n)+Z+p(l)+"=?",[o]):O(s)||(yield ne(e,n,l,N(t),[o,...D(t)]))})))));else if(O(s))T(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const t=b(M(F(o,n)),(e=>e!=l)),i=[],u=[];C(null!=r?r:{},((e,n)=>{P(i,n,...m(t,(n=>null==e?void 0:e[n]))),P(u,n)})),yield ne(e,n,l,t,i),yield e("DELETE FROM"+p(n)+Z+p(l)+"NOT IN("+te(u)+")",u)}})),n=>K(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},ne=(e,n,l,r,i)=>K(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(l)+E(m(r,(e=>t+p(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+p(l)+")DO UPDATE SET"+E(m(r,(e=>p(e)+"=excluded."+p(e))),t),i)})),te=e=>E(m(e,(()=>"?")),t),le=JSON.parse;var oe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const re=_(),ie=_(),ue=(e,n,t,l,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();j(t)&&j(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return P(F(ie,c),...e),yield oe(void 0,null,(function*(){if(!F(re,c)){for(B(re,c,1);!u((e=F(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>d),S(E)};var ae=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const de="store",ce=(e,n,t,l,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),le(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,t;yield d(),yield s(r,f,{[y]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,[a,u],u)};var se=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ve=(e,n,t,l,o,[r,i,[a,d,c]],s,p,h)=>{const[E,m,O,P]=ee(n,s,o),T=(e,n)=>se(void 0,null,(function*(){return yield v($(i,((t,l)=>se(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield O(t,l,u,o,r,n))})))))})),A=(e,n)=>se(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield P((()=>se(void 0,null,(function*(){yield E();const e=yield se(void 0,null,(function*(){return g(b(yield v($(r,((e,n)=>se(void 0,[e,n],(function*([e,n],t){return[e,yield m(t,n)]}))))),(e=>!j(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return j(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield P((()=>se(void 0,null,(function*(){if(yield E(),u(n)){const[n,t]=e();yield T(n),yield A(t)}else{const[e,t]=n();yield T(e,!0),yield A(t,!0)}}))))}))),t,l,o,[h,p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[Ee]:n+"_values"},be=(e,n,t,l)=>{const o=_();return C(e,((e,r)=>{const i=c(D(x(n,d(e)?{[t]:e}:e)),0,I(n));u(i[0])||l(r,i[0])||B(o,r,i)})),o};var Pe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Te="pragma ",Ae="data_version",we="schema_version",Le=(e,t,l,o,r,u,a,s,v="getDb")=>{let y,p,E;const[m,O,b,P]=(e=>{const t=(e=>x(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[fe];if(t.mode==ye){const{storeTableName:e=n}=t;return[1,l,[e],W(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=t,u=c(D(x(Oe,i)),0,I(Oe)),a=u[2],s=W(a);return[0,l,[be(o,{[he]:null,[pe]:f},he,(e=>Y(s,e)&&e==a)),be(r,{[Ee]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>Y(s,n)&&n==a)),u],s]})(t);return(m?ce:ve)(e,u?(e,n)=>Pe(void 0,null,(function*(){return u(e,n),yield l(e,n)})):l,(e=>{return[(n=()=>Pe(void 0,null,(function*(){try{const n=(yield l(Te+Ae))[0][Ae],t=(yield l(Te+we))[0][we],o=(yield l(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&t==(null!=p?p:p=t)&&o==(null!=E?E:E=o)||(e(),y=n,p=t)}catch(e){}})),t=O,n(),setInterval(n,1e3*t)),o((n=>P.has(n)?e():0))];var n,t}),(([e,n])=>{i(e),y=p=null,r(n)}),a,b,A(P),s,v)};var Re=Object.defineProperty,Ne=Object.getOwnPropertySymbols,Se=Object.prototype.hasOwnProperty,ge=Object.prototype.propertyIsEnumerable,xe=(e,n,t)=>n in e?Re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;const Ce=(e,n,t,l,o,r)=>Le(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))Se.call(n,t)&&xe(e,t,n[t]);if(Ne)for(var t of Ne(n))ge.call(n,t)&&xe(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,t);export{Ce as createSqliteWasmPersister};
1
+ const e=e=>typeof e,n="tinybase",t=",",l=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=n=>e(n)==l,c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",E=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),N=L.entries,S=L.keys,g=L.freeze,x=(e=[])=>L.fromEntries(e),C=(...e)=>L.assign({},...e),D=(e,n)=>m(N(e),(([e,t])=>n(t,e))),I=e=>L.values(e),j=e=>s(S(e)),_=e=>(e=>!u(e)&&a(R(e),(e=>e==L.prototype||u(R(e))),(()=>!0)))(e)&&0==j(e),M=e=>new Map(e),F=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},$=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var t;return m([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},H=(e,n,t)=>u(t)?(w(e,n),e):null==e?void 0:e.set(n,t),k=(e,n,t)=>(T(e,n)||H(e,n,t()),$(e,n)),W=(e,n,t,l=H)=>(D(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)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),q=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable,z=(e,n,t)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,K=(e,n)=>{for(var t in n||(n={}))U.call(n,t)&&z(e,t,n[t]);if(J)for(var t of J(n))V.call(n,t)&&z(e,t,n[t]);return e},Q=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const X=h+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,l)=>{const o=M();return[()=>Q(void 0,null,(function*(){return W(o,x(yield v(m(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,x(m(yield e(h+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>H(o,n,W(k(o,n,M),t,((e,n,t)=>{t!=$(e,n)&&H(e,n,t)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,t)=>Q(void 0,null,(function*(){return((e,n)=>!u($($(o,e),n)))(n,t)?x(b(m(yield e(X+p(n)),(e=>{return[e[t],(n=K({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!u(e)&&!_(n)))):{}})),(n,l,r,i,a,d=!1)=>Q(void 0,null,(function*(){const c=Y();D(null!=r?r:{},(e=>m(S(null!=e?e:{}),(e=>q(c,e)))));const s=A(c);if(!d&&a&&O(s)&&T(o,n))return yield e("DROP TABLE"+p(n)),void H(o,n);if(O(s)||T(o,n)){const t=$(o,n),r=Y(F(t));yield v([...m(s,(l=>Q(void 0,null,(function*(){w(r,l)||(yield e(`ALTER TABLE${p(n)}ADD${p(l)}`),H(t,l,""))})))),...!d&&i?m(A(r),(o=>Q(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),H(t,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(l)} PRIMARY KEY ON CONFLICT REPLACE${E(m(s,(e=>t+p(e))))});`),H(o,n,M([[l,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield v(D(r,((t,o)=>Q(void 0,null,(function*(){u(t)?yield e("DELETE FROM"+p(n)+ee+p(l)+"=?",[o]):O(s)||(yield te(e,n,l,S(t),[o,...I(t)]))})))));else if(O(s))T(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const t=b(F($(o,n)),(e=>e!=l)),i=[],u=[];D(null!=r?r:{},((e,n)=>{P(i,n,...m(t,(n=>null==e?void 0:e[n]))),P(u,n)})),yield te(e,n,l,t,i),yield e("DELETE FROM"+p(n)+ee+p(l)+"NOT IN("+le(u)+")",u)}})),n=>Q(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},te=(e,n,l,r,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(l)+E(m(r,(e=>t+p(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+p(l)+")DO UPDATE SET"+E(m(r,(e=>p(e)+"=excluded."+p(e))),t),i)})),le=e=>E(m(e,(()=>"?")),t),oe=JSON.parse;var re=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ie=M(),ue=M(),ae=(e,n,t,l,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,p=0;k(ie,c,(()=>0)),k(ue,c,(()=>[]));const h=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>re(void 0,null,(function*(){return yield h((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>re(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>re(void 0,null,(function*(){if(l){const n=l();yield h((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>re(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>re(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>re(void 0,null,(function*(){return yield E.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();_(t)&&_(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,E),schedule:(...e)=>re(void 0,null,(function*(){return P($(ue,c),...e),yield re(void 0,null,(function*(){if(!$(ie,c)){for(H(ie,c,1);!u((e=$(ue,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>d),g(E)};var de=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ce="store",se=(e,n,t,l,o,[r],i,u,a)=>{const[d,c,s,v]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield d(),oe(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,t;yield d(),yield s(r,f,{[y]:{[ce]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,[a,u],u)};var ve=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ye=(e,n,t,l,o,[r,i,[a,d,c]],s,p,h)=>{const[E,m,O,P]=ne(n,s,o),T=(e,n)=>ve(void 0,null,(function*(){return yield v(B(i,((t,l)=>ve(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield O(t,l,u,o,r,n))})))))})),A=(e,n)=>ve(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ae(e,(()=>ve(void 0,null,(function*(){return yield P((()=>ve(void 0,null,(function*(){yield E();const e=yield ve(void 0,null,(function*(){return x(b(yield v(B(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],t){return[e,yield m(t,n)]}))))),(e=>!_(e[1]))))})),n=yield ve(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return _(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield P((()=>ve(void 0,null,(function*(){if(yield E(),u(n)){const[n,t]=e();yield T(n),yield A(t)}else{const[e,t]=n();yield T(e,!0),yield A(t,!0)}}))))}))),t,l,o,[h,p],p)},fe="json",pe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",me="tableName",Oe={mode:fe,[pe]:1},be={load:0,save:0,[me]:n+"_values"},Pe=(e,n,t,l)=>{const o=M();return D(e,((e,r)=>{const i=c(I(C(n,d(e)?{[t]:e}:e)),0,j(n));u(i[0])||l(r,i[0])||H(o,r,i)})),o};var Te=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ae="pragma ",we="data_version",Le="schema_version",Re=(e,t,l,o,r,u,a,s,v="getDb")=>{let y,p,E;const[m,O,b,P]=(e=>{const t=(e=>C(Oe,d(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[pe];if(t.mode==fe){const{storeTableName:e=n}=t;return[1,l,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=t,u=c(I(C(be,i)),0,j(be)),a=u[2],s=Y(a);return[0,l,[Pe(o,{[Ee]:null,[he]:f},Ee,(e=>q(s,e)&&e==a)),Pe(r,{[me]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>q(s,n)&&n==a)),u],s]})(t);return(m?se:ye)(e,u?(e,n)=>Te(void 0,null,(function*(){return u(e,n),yield l(e,n)})):l,(e=>{return[(n=()=>Te(void 0,null,(function*(){try{const n=(yield l(Ae+we))[0][we],t=(yield l(Ae+Le))[0][Le],o=(yield l(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&t==(null!=p?p:p=t)&&o==(null!=E?E:E=o)||(e(),y=n,p=t)}catch(e){}})),t=O,n(),setInterval(n,1e3*t)),o((n=>P.has(n)?e():0))];var n,t}),(([e,n])=>{i(e),y=p=null,r(n)}),a,b,A(P),s,v)};var Ne=Object.defineProperty,Se=Object.getOwnPropertySymbols,ge=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable,Ce=(e,n,t)=>n in e?Ne(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;const De=(e,n,t,l,o,r)=>Re(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))ge.call(n,t)&&Ce(e,t,n[t]);if(Se)for(var t of Se(n))xe.call(n,t)&&Ce(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,t);export{De as createSqliteWasmPersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),R=Object,b=e=>R.getPrototypeOf(e),N=R.keys,S=R.freeze,g=(e=[])=>R.fromEntries(e),x=(...e)=>R.assign({},...e),C=(e,n)=>m(R.entries(e),(([e,l])=>n(l,e))),D=e=>R.values(e),I=e=>v(N(e)),F=e=>(e=>!u(e)&&a(b(e),(e=>e==R.prototype||u(b(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(w(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(L(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(C(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&K(e,l,n[l]);if(J)for(var l of J(n))z.call(n,l)&&K(e,l,n[l]);return e},q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>q(void 0,null,(function*(){return W(o,g(yield s(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>q(void 0,[n],(function*({name:n}){return[n,g(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>q(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?g(T(m(yield e(Q+h(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>q(void 0,null,(function*(){const c=Y();C(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const v=P(c);if(!d&&a&&O(v)&&L(o,n))return yield e("DROP TABLE"+h(n)),void B(o,n);if(O(v)||L(o,n)){const l=_(o,n),r=Y($(l));yield s([...m(v,(t=>q(void 0,null,(function*(){w(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),B(l,t,""))})))),...!d&&i?m(P(r),(o=>q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(v,(e=>l+h(e))))});`),B(o,n,M([[t,""],...m(v,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield s(C(r,((l,o)=>q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+Z+h(t)+"=?",[o]):O(v)||(yield ne(e,n,t,N(l),[o,...D(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];C(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+h(n)+Z+h(t)+"NOT IN("+le(u)+")",u)}})),n=>q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>q(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let v,s,y,f=0,h=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(v,e.delListener),v=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),S(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,v,s]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,l;yield d(),yield v(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const se=(e,n,l,t,o,[r,i,[a,d,c]],v,h,E)=>{const[p,m,O,A]=ee(n,v,o),L=(e,n)=>ve(void 0,null,(function*(){return yield s(j(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),P=(e,n)=>ve(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){yield p();const e=yield ve(void 0,null,(function*(){return g(T(yield s(j(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield ve(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,h],h)},ye="json",fe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",pe="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[pe]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return C(e,((e,r)=>{const i=c(D(x(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",we="schema_version",Re=(e,l,t,o,r,u,a,v,s="getDb")=>{let y,h,p;const[m,O,T,A]=(e=>{const l=(e=>x(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(D(x(Oe,i)),0,I(Oe)),a=u[2],v=Y(a);return[0,t,[Te(o,{[Ee]:null,[he]:f},Ee,(e=>k(v,e)&&e==a)),Te(r,{[pe]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(v,n)&&n==a)),u],v]})(l);return(m?ce:se)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+we))[0][we],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=h?h:h=l)&&o==(null!=p?p:p=o)||(e(),y=n,h=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=h=null,r(n)}),a,T,P(A),v,s)},be="change",Ne=(e,n,l,t,o)=>Re(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield(t=(t,o)=>n.all(e,l,((e,n)=>e?o(e):t(n))),new r(t));var t},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>{const l=(n,l,t)=>e(t);return n.on(be,l),l}),(e=>n.off(be,e)),t,o,n);export{Ne as createSqlite3Persister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),R=Object,b=e=>R.getPrototypeOf(e),N=R.entries,S=R.keys,g=R.freeze,x=(e=[])=>R.fromEntries(e),C=(...e)=>R.assign({},...e),D=(e,n)=>m(N(e),(([e,l])=>n(l,e))),I=e=>R.values(e),F=e=>v(S(e)),M=e=>(e=>!u(e)&&a(b(e),(e=>e==R.prototype||u(b(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>u(l)?(w(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(L(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||u(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(U)for(var l of U(n))K.call(n,l)&&V(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=E+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,t)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,x(yield s(m(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,x(m(yield e(E+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!u(j(j(o,e),n)))(n,l)?x(T(m(yield e(X+h(n)),(e=>{return[e[l],(n=q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!M(n)))):{}})),(n,t,r,i,a,d=!1)=>Q(void 0,null,(function*(){const c=k();D(null!=r?r:{},(e=>m(S(null!=e?e:{}),(e=>G(c,e)))));const v=P(c);if(!d&&a&&O(v)&&L(o,n))return yield e("DROP TABLE"+h(n)),void H(o,n);if(O(v)||L(o,n)){const l=j(o,n),r=k(_(l));yield s([...m(v,(t=>Q(void 0,null,(function*(){w(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),H(l,t,""))})))),...!d&&i?m(P(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),H(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(v,(e=>l+h(e))))});`),H(o,n,$([[t,""],...m(v,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield s(D(r,((l,o)=>Q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+ee+h(t)+"=?",[o]):O(v)||(yield le(e,n,t,S(l),[o,...I(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=T(_(j(o,n)),(e=>e!=t)),i=[],u=[];D(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield le(e,n,t,l,i),yield e("DELETE FROM"+h(n)+ee+h(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},le=(e,n,t,r,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),te=e=>p(m(e,(()=>"?")),l),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),ae=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let v,s,y,f=0,h=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>re(void 0,null,(function*(){return yield p.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(v,e.delListener),v=void 0,p),schedule:(...e)=>re(void 0,null,(function*(){return A(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!u((e=j(ue,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),g(p)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",ve=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,v,s]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var e,n;return yield d(),oe(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var n,l;yield d(),yield v(r,f,{[y]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[a,d,c]],v,h,E)=>{const[p,m,O,A]=ne(n,v,o),L=(e,n)=>se(void 0,null,(function*(){return yield s(B(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ae(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield p();const e=yield se(void 0,null,(function*(){return x(T(yield s(B(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return M(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,h],h)},fe="json",he="autoLoadIntervalSeconds",Ee="rowIdColumnName",pe="tableId",me="tableName",Oe={mode:fe,[he]:1},Te={load:0,save:0,[me]:n+"_values"},Ae=(e,n,l,t)=>{const o=$();return D(e,((e,r)=>{const i=c(I(C(n,d(e)?{[l]:e}:e)),0,F(n));u(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",we="data_version",Re="schema_version",be=(e,l,t,o,r,u,a,v,s="getDb")=>{let y,h,p;const[m,O,T,A]=(e=>{const l=(e=>C(Oe,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[he];if(l.mode==fe){const{storeTableName:e=n}=l;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(I(C(Te,i)),0,F(Te)),a=u[2],v=k(a);return[0,t,[Ae(o,{[pe]:null,[Ee]:f},pe,(e=>G(v,e)&&e==a)),Ae(r,{[me]:null,[Ee]:f,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(v,n)&&n==a)),u],v]})(l);return(m?ve:ye)(e,u?(e,n)=>Le(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+we))[0][we],l=(yield t(Pe+Re))[0][Re],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=h?h:h=l)&&o==(null!=p?p:p=o)||(e(),y=n,h=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=h=null,r(n)}),a,T,P(A),v,s)},Ne="change",Se=(e,n,l,t,o)=>be(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield(t=(t,o)=>n.all(e,l,((e,n)=>e?o(e):t(n))),new r(t));var t},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>{const l=(n,l,t)=>e(t);return n.on(Ne,l),l}),(e=>n.off(Ne,e)),t,o,n);export{Se as createSqlite3Persister};
@@ -1 +1 @@
1
- import{Map as t}from"yjs";const e="t",n="v",o=t=>null==t,l=(t,e,n)=>o(t)?null==n?void 0:n():e(t),r=t=>t.length,u=t=>t.shift(),i=Object,s=t=>i.getPrototypeOf(t),d=i.keys,a=i.freeze,c=(t=[])=>i.fromEntries(t),v=(t,e)=>!o(((t,e)=>l(t,(t=>t[e])))(t,e)),y=(t,e)=>((t,e)=>t.map(e))(i.entries(t),(([t,n])=>e(n,t))),f=t=>(t=>!o(t)&&l(s(t),(t=>t==i.prototype||o(s(t))),(()=>!0)))(t)&&0==(t=>r(d(t)))(t),g=(t,e,n)=>(v(t,e)||(t[e]=n()),t[e]),h=t=>new Map(t),p=(t,e)=>null==t?void 0:t.get(e),S=(t,e)=>((t,e)=>null==t?void 0:t.forEach(e))(t,((t,n)=>e(n,t))),m=(t,e,n)=>{return o(n)?(r=e,null==(l=t)||l.delete(r),t):null==t?void 0:t.set(e,n);var l,r},w=(t,e,n)=>{var o,l,r;return l=e,null!=(r=null==(o=t)?void 0:o.has(l))&&r||m(t,e,n()),p(t,e)};var A=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{i(n.next(t))}catch(t){l(t)}},u=t=>{try{i(n.throw(t))}catch(t){l(t)}},i=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,u);i((n=n.apply(t,e)).next())}));const O=h(),J=h();var L=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{i(n.next(t))}catch(t){l(t)}},u=t=>{try{i(n.throw(t))}catch(t){l(t)}},i=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,u);i((n=n.apply(t,e)).next())}));const N="delete",x=t=>[t.get(e),t.get(n)],C=(e,n,l,r)=>{var u;const i=o(n)?e:null!=(u=e.get(n))?u:e.set(n,new t);let s;return y(l,((t,e)=>{r(i,e,t)&&(s=1)})),i.forEach(((t,e)=>{v(l,e)||(i.delete(e),s=1)})),o(n)||i.size||e.delete(n),s},P=(i,s,d="tinybase",v)=>{const h=s.getMap(d);return((t,e,n,r,i,s,[d,c]=[],v=[])=>{let y,g,h,S=0,L=0;w(O,v,(()=>0)),w(J,v,(()=>[]));const N=t=>A(void 0,null,(function*(){return 2!=S&&(S=1,yield x.schedule((()=>A(void 0,null,(function*(){yield t(),S=0}))))),x})),x={load:(n,o)=>A(void 0,null,(function*(){return yield N((()=>A(void 0,null,(function*(){try{t.setContent(yield e())}catch(e){t.setContent([n,o])}}))))})),startAutoLoad:(...n)=>A(void 0,[...n],(function*(n={},o={}){return x.stopAutoLoad(),yield x.load(n,o),L=1,h=r(((n,o)=>A(void 0,null,(function*(){if(o){const e=o();yield N((()=>A(void 0,null,(function*(){return t.setTransactionChanges(e)}))))}else yield N((()=>A(void 0,null,(function*(){var o;try{t.setContent(null!=(o=null==n?void 0:n())?o:yield e())}catch(t){null==s||s(t)}}))))})))),x})),stopAutoLoad:()=>(L&&(i(h),h=void 0,L=0),x),save:e=>A(void 0,null,(function*(){return 1!=S&&(S=2,yield x.schedule((()=>A(void 0,null,(function*(){try{yield n(t.getContent,e)}catch(t){null==s||s(t)}S=0}))))),x})),startAutoSave:()=>A(void 0,null,(function*(){return yield x.stopAutoSave().save(),y=t.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();f(n)&&f(o)||x.save((()=>[n,o]))})),x})),stopAutoSave:()=>(l(y,t.delListener),y=void 0,x),schedule:(...t)=>A(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(p(J,v),...t),yield A(void 0,null,(function*(){if(!p(O,v)){for(m(O,v,1);!o(g=u(p(J,v)));)try{yield g()}catch(t){null==s||s(t)}m(O,v,0)}})),x})),getStore:()=>t,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(x[d]=()=>c),a(x)})(i,(()=>L(void 0,null,(function*(){return h.size?[h.get(e).toJSON(),h.get(n).toJSON()]:void 0}))),((r,u)=>L(void 0,null,(function*(){return s.transact((()=>((r,u,i)=>{r.size||(r.set(e,new t),r.set(n,new t));const[s,d]=x(r),a=()=>{c=1};let c=1;if(l(null==i?void 0:i(),(([t,e])=>{c=0,y(t,((t,e)=>c?0:o(t)?s.delete(e):l(s.get(e),(e=>y(t,((t,n)=>c?0:o(t)?e.delete(n):l(e.get(n),(e=>y(t,((t,n)=>o(t)?e.delete(n):e.set(n,t)))),a)))),a))),y(e,((t,e)=>c?0:o(t)?d.delete(e):d.set(e,t)))})),c){const[t,e]=u();C(s,void 0,t,((t,e,n)=>C(s,e,n,((t,e,n)=>C(t,e,n,((t,e,n)=>{if(t.get(e)!==n)return t.set(e,n),1})))))),C(d,void 0,e,((t,e,n)=>{d.get(e)!==n&&d.set(e,n)}))}})(h,r,u)))}))),(t=>{const o=o=>t(void 0,(()=>((t,o)=>{if(1==r(o)&&(i=o[0].path,0==r(i)))return[t.get(e).toJSON(),t.get(n).toJSON()];var i;const[s,d]=x(t),a={},v={};return((t,n)=>{t.forEach((({path:t,changes:{keys:n}})=>u(t)==e?l(u(t),(e=>{const o=g(a,e,c),r=s.get(e);l(u(t),(t=>{const e=g(o,t,c),l=r.get(t);S(n,((t,{action:n})=>e[t]=n==N?null:l.get(t)))}),(()=>S(n,((t,{action:e})=>{var n;return o[t]=e==N?null:null==(n=r.get(t))?void 0:n.toJSON()}))))}),(()=>S(n,((t,{action:e})=>{var n;return a[t]=e==N?null:null==(n=s.get(t))?void 0:n.toJSON()})))):S(n,((t,{action:e})=>v[t]=e==N?null:d.get(t)))))})(o),[a,v]})(h,o)));return h.observeDeep(o),o}),(t=>{h.unobserveDeep(t)}),v,["getYDoc",s])};export{P as createYjsPersister};
1
+ import{Map as t}from"yjs";const e="t",n="v",o=t=>null==t,l=(t,e,n)=>o(t)?null==n?void 0:n():e(t),r=t=>t.length,u=t=>t.shift(),i=Object,s=t=>i.getPrototypeOf(t),d=i.entries,a=i.keys,c=i.freeze,v=(t=[])=>i.fromEntries(t),y=(t,e)=>!o(((t,e)=>l(t,(t=>t[e])))(t,e)),f=(t,e)=>((t,e)=>t.map(e))(d(t),(([t,n])=>e(n,t))),g=t=>(t=>!o(t)&&l(s(t),(t=>t==i.prototype||o(s(t))),(()=>!0)))(t)&&0==(t=>r(a(t)))(t),h=(t,e,n)=>(y(t,e)||(t[e]=n()),t[e]),p=t=>new Map(t),S=(t,e)=>null==t?void 0:t.get(e),m=(t,e)=>((t,e)=>null==t?void 0:t.forEach(e))(t,((t,n)=>e(n,t))),w=(t,e,n)=>{return o(n)?(r=e,null==(l=t)||l.delete(r),t):null==t?void 0:t.set(e,n);var l,r},A=(t,e,n)=>{var o,l,r;return l=e,null!=(r=null==(o=t)?void 0:o.has(l))&&r||w(t,e,n()),S(t,e)};var O=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{i(n.next(t))}catch(t){l(t)}},u=t=>{try{i(n.throw(t))}catch(t){l(t)}},i=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,u);i((n=n.apply(t,e)).next())}));const J=p(),L=p();var N=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{i(n.next(t))}catch(t){l(t)}},u=t=>{try{i(n.throw(t))}catch(t){l(t)}},i=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,u);i((n=n.apply(t,e)).next())}));const x="delete",C=t=>[t.get(e),t.get(n)],P=(e,n,l,r)=>{var u;const i=o(n)?e:null!=(u=e.get(n))?u:e.set(n,new t);let s;return f(l,((t,e)=>{r(i,e,t)&&(s=1)})),i.forEach(((t,e)=>{y(l,e)||(i.delete(e),s=1)})),o(n)||i.size||e.delete(n),s},b=(i,s,d="tinybase",a)=>{const y=s.getMap(d);return((t,e,n,r,i,s,[d,a]=[],v=[])=>{let y,f,h,p=0,m=0;A(J,v,(()=>0)),A(L,v,(()=>[]));const N=t=>O(void 0,null,(function*(){return 2!=p&&(p=1,yield x.schedule((()=>O(void 0,null,(function*(){yield t(),p=0}))))),x})),x={load:(n,o)=>O(void 0,null,(function*(){return yield N((()=>O(void 0,null,(function*(){try{t.setContent(yield e())}catch(e){t.setContent([n,o])}}))))})),startAutoLoad:(...n)=>O(void 0,[...n],(function*(n={},o={}){return x.stopAutoLoad(),yield x.load(n,o),m=1,h=r(((n,o)=>O(void 0,null,(function*(){if(o){const e=o();yield N((()=>O(void 0,null,(function*(){return t.setTransactionChanges(e)}))))}else yield N((()=>O(void 0,null,(function*(){var o;try{t.setContent(null!=(o=null==n?void 0:n())?o:yield e())}catch(t){null==s||s(t)}}))))})))),x})),stopAutoLoad:()=>(m&&(i(h),h=void 0,m=0),x),save:e=>O(void 0,null,(function*(){return 1!=p&&(p=2,yield x.schedule((()=>O(void 0,null,(function*(){try{yield n(t.getContent,e)}catch(t){null==s||s(t)}p=0}))))),x})),startAutoSave:()=>O(void 0,null,(function*(){return yield x.stopAutoSave().save(),y=t.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();g(n)&&g(o)||x.save((()=>[n,o]))})),x})),stopAutoSave:()=>(l(y,t.delListener),y=void 0,x),schedule:(...t)=>O(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(S(L,v),...t),yield O(void 0,null,(function*(){if(!S(J,v)){for(w(J,v,1);!o(f=u(S(L,v)));)try{yield f()}catch(t){null==s||s(t)}w(J,v,0)}})),x})),getStore:()=>t,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(x[d]=()=>a),c(x)})(i,(()=>N(void 0,null,(function*(){return y.size?[y.get(e).toJSON(),y.get(n).toJSON()]:void 0}))),((r,u)=>N(void 0,null,(function*(){return s.transact((()=>((r,u,i)=>{r.size||(r.set(e,new t),r.set(n,new t));const[s,d]=C(r),a=()=>{c=1};let c=1;if(l(null==i?void 0:i(),(([t,e])=>{c=0,f(t,((t,e)=>c?0:o(t)?s.delete(e):l(s.get(e),(e=>f(t,((t,n)=>c?0:o(t)?e.delete(n):l(e.get(n),(e=>f(t,((t,n)=>o(t)?e.delete(n):e.set(n,t)))),a)))),a))),f(e,((t,e)=>c?0:o(t)?d.delete(e):d.set(e,t)))})),c){const[t,e]=u();P(s,void 0,t,((t,e,n)=>P(s,e,n,((t,e,n)=>P(t,e,n,((t,e,n)=>{if(t.get(e)!==n)return t.set(e,n),1})))))),P(d,void 0,e,((t,e,n)=>{d.get(e)!==n&&d.set(e,n)}))}})(y,r,u)))}))),(t=>{const o=o=>t(void 0,(()=>((t,o)=>{if(1==r(o)&&(i=o[0].path,0==r(i)))return[t.get(e).toJSON(),t.get(n).toJSON()];var i;const[s,d]=C(t),a={},c={};return((t,n)=>{t.forEach((({path:t,changes:{keys:n}})=>u(t)==e?l(u(t),(e=>{const o=h(a,e,v),r=s.get(e);l(u(t),(t=>{const e=h(o,t,v),l=r.get(t);m(n,((t,{action:n})=>e[t]=n==x?null:l.get(t)))}),(()=>m(n,((t,{action:e})=>{var n;return o[t]=e==x?null:null==(n=r.get(t))?void 0:n.toJSON()}))))}),(()=>m(n,((t,{action:e})=>{var n;return a[t]=e==x?null:null==(n=s.get(t))?void 0:n.toJSON()})))):m(n,((t,{action:e})=>c[t]=e==x?null:d.get(t)))))})(o),[a,c]})(y,o)));return y.observeDeep(o),o}),(t=>{y.unobserveDeep(t)}),a,["getYDoc",s])};export{b as createYjsPersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n=e(""),t=e(!0),l=e(0),r=e(e),o="Listener",s="Result",a="Ids",i="Table",d="Row",u=d+"Count",c=d+a,v="Sorted"+d+a,f="Cell",h=f+a,w=Math.max,g=Math.min,y=isFinite,L=e=>null==e,p=(e,n,t)=>L(e)?null==t?void 0:t():n(e),R=n=>e(n)==r,b=e=>Array.isArray(e),T=e=>e.length,m=()=>{},C=(e,n)=>e.every(n),O=(e,n)=>e.forEach(n),S=e=>Q(e,((e,n)=>e+n),0),I=e=>0==T(e),Q=(e,n,t)=>e.reduce(n,t),j=(e,...n)=>e.push(...n),x=Object,E=x.freeze,M=e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0},D=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},k=e=>L(e)||0==M(e),z=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},A=e=>e.clear(),F=(e,n)=>null==e?void 0:e.forEach(n),P=(e,n)=>null==e?void 0:e.delete(n),W=e=>new Map(e),q=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>F(e,((e,t)=>n(t,e))),G=(e,n,t)=>L(t)?(P(e,n),e):null==e?void 0:e.set(n,t),H=(e,n,t)=>(D(e,n)||G(e,n,t()),q(e,n)),J=(e,n,t,l,r=0)=>p((t?H:q)(e,n[r],r>T(n)-2?t:W),(o=>{if(r>T(n)-2)return(null==l?void 0:l(o))&&G(e,n[r]),o;const s=J(o,n,t,l,r+1);return k(o)&&G(e,n[r]),s})),K=e=>new Set(b(e)||L(e)?e:[e]),N=(e,n)=>null==e?void 0:e.add(n),U=W([["avg",[(e,n)=>S(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=>w(...e),(e,n)=>w(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:w(n,e)]],["min",[e=>g(...e),(e,n)=>g(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:g(n,e)]],["sum",[e=>S(e),(e,n)=>e+n,(e,n)=>e-n,(e,n,t)=>e-t+n]]]);var V=Object.getOwnPropertySymbols,X=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;const Z=(r=>{const a=new WeakMap;return r=>(a.has(r)||a.set(r,(r=>{const a=r.createStore,w=a(),g=a(),S=W(),{addListener:Q,callListeners:Z,delListener:$}=g,[_,ee,ne,te,le,,,re,,oe,se,ae,ie,de]=((e,n,t,l,r)=>{const o=e.hasRow,s=W(),a=W(),i=W(),d=W(),u=W(),c=W(),v=(n,t,...l)=>{const r=H(c,n,K);return O(l,(n=>N(r,n)&&t&&e.callListener(n))),l},f=(n,...t)=>p(q(c,n),(l=>{O(I(t)?z(l):t,(n=>{e.delListener(n),P(l,n)})),k(l)&&G(c,n)})),h=(e,n)=>{G(s,e,n),D(a,e)||(G(a,e,!0),G(d,e,W()),G(u,e,W()),r(i))},w=e=>{G(s,e),G(a,e),G(d,e),G(u,e),f(e),r(i)};return[()=>e,()=>{return[...null!=(n=null==(e=s)?void 0:e.keys())?n:[]];var e,n},e=>B(a,e),e=>D(a,e),e=>q(s,e),e=>q(a,e),(e,n)=>G(a,e,n),h,(n,l,r,s,a)=>{h(n,l);const i=W(),c=W(),w=q(d,n),g=q(u,n),y=n=>{const r=t=>e.getCell(l,n,t),d=q(w,n),u=o(l,n)?t(s(r,n)):void 0;var v,f;if(d===u||b(d)&&b(u)&&(f=u,T(v=d)===T(f)&&C(v,((e,n)=>f[n]===e)))||G(i,n,[d,u]),!L(a)){const e=q(g,n),t=o(l,n)?a(r,n):void 0;e!=t&&G(c,n,t)}},p=e=>{r((()=>{F(i,(([,e],n)=>G(w,n,e))),F(c,((e,n)=>G(g,n,e)))}),i,c,w,g,e),A(i),A(c)};B(w,y),e.hasTable(l)&&O(e.getRowIds(l),(e=>{D(w,e)||y(e)})),p(!0),f(n),v(n,0,e.addRowListener(l,null,((e,n,t)=>y(t))),e.addTableListener(l,(()=>p())))},w,e=>l(e,i),()=>B(c,w),v,f]})(r,0,m,Q,Z),ue=(e,n,...t)=>O(t,(t=>N(H(H(S,n,W),e,K),t))),ce=e=>{p(q(S,e),(e=>{B(e,((e,n)=>F(n,(n=>e.delListener(n))))),A(e)})),O([g,w],(n=>n.delTable(e)))},ve=(e,n,t)=>ue(n,e,n.addStartTransactionListener(t.startTransaction),n.addDidFinishTransactionListener((()=>t.finishTransaction()))),fe={setQueryDefinition:(o,s,a)=>{re(o,s),ce(o);const i=[],d=[[null,[s,null,null,[],W()]]],u=[],c=[],v=[];a({select:(e,n)=>{const t=R(e)?[T(i)+"",e]:[L(n)?e:n,t=>t(e,n)];return j(i,t),{as:e=>t[0]=e}},join:(e,n,t)=>{const l=L(t)||R(n)?null:n,r=L(l)?n:t,o=[e,[e,l,R(r)?r:e=>e(r),[],W()]];return j(d,o),{as:e=>o[0]=e}},where:(e,n,t)=>j(u,R(e)?e:L(t)?t=>t(e)===n:l=>l(e,n)===t),group:(e,n,t,l,r)=>{var o;const s=[e,[e,R(n)?[n,t,l,r]:null!=(o=q(U,n))?o:[(e,n)=>n]]];return j(c,s),{as:e=>s[0]=e}},having:(e,n)=>j(v,R(e)?e:t=>t(e)===n)});const f=W(i);if(k(f))return fe;const h=W(d);B(h,((e,[,n])=>p(q(h,n),(({3:n})=>L(e)?0:j(n,e)))));const b=W(c);let m=w;if(k(b)&&I(v))m=g;else{ve(o,m,g);const r=W();B(b,((e,[n,t])=>N(H(r,n,K),[e,t])));const s=K();B(f,(e=>D(r,e)?0:N(s,e)));const a=W(),i=(s,a,i,d)=>p(s,(([u,c,f,h])=>{B(a,((o,[s])=>{const a=H(u,o,W),c=q(a,i),v=d?void 0:s;if(c!==v){const s=K([[c,v]]),d=M(a);G(a,i,v),F(q(r,o),(([r,o])=>{const i=((e,n,t,l,r,o=!1)=>{if(k(t))return;const[s,a,i,d]=r;return o||(o=L(e)),F(l,(([t,l])=>{o||(e=L(t)?null==a?void 0:a(e,l,n++):L(l)?null==i?void 0:i(e,t,n--):null==d?void 0:d(e,l,t,n),o||(o=L(e)))})),o?s(z(t),M(t)):e})(h[r],d,a,s,o);h[r]=L((r=>{const o=e(r);return(e=>e==n||e==t)(o)||o==l&&y(r)?o:void 0})(i))?null:i}))}})),k(c)||!C(v,(e=>e((e=>h[e]))))?g.delRow(o,f):L(f)?s[2]=g.addRow(o,h):g.setRow(o,f,h)}));ue(m,o,m.addRowListener(o,null,((e,n,t,l)=>{const d=[],u=[],c=W(),v=m.hasRow(o,t);let f=!v;F(s,(e=>{const[n,r,s]=l(o,t,e);j(d,r),j(u,s),f||(f=n)})),B(r,(e=>{const[n,,r]=l(o,t,e);(f||n)&&G(c,e,[r])})),f&&i(J(a,d,void 0,(([,e])=>(P(e,t),k(e)))),c,t,1),v&&i(J(a,u,(()=>{const e={};return F(s,(n=>e[n]=m.getCell(o,t,n))),[W(),K(),void 0,e]}),(([,e])=>{N(e,t)})),c,t)})))}ve(o,r,m);const S=(e,n,t,l)=>{const a=e=>r.getCell(n,t,e);O(l,(n=>{var t;const[l,,s,i,d]=q(h,n),u=null==s?void 0:s(a,e),[c,v]=null!=(t=q(d,e))?t:[];u!=c&&(L(v)||de(o,v),G(d,e,L(u)?null:[u,...ie(o,1,r.addRowListener(l,u,(()=>S(e,l,u,i))))]))})),(e=>{const n=(n,t)=>{var l,o,a;return r.getCell(...L(t)?[s,e,n]:n===s?[s,e,t]:[null==(l=q(h,n))?void 0:l[0],null==(a=q(null==(o=q(h,n))?void 0:o[4],e))?void 0:a[0],t])};m.transaction((()=>C(u,(e=>e(n)))?B(f,((t,l)=>((e,n,t,l,r)=>L(r)?e.delCell(n,t,l,!0):e.setCell(n,t,l,r))(m,o,e,t,l(n,e)))):m.delRow(o,e)))})(e)},{3:Q}=q(h,null);return m.transaction((()=>ie(o,1,r.addRowListener(s,null,((e,n,t)=>{r.hasRow(s,t)?S(t,s,t,Q):(m.delRow(o,t),F(h,(({4:e})=>p(q(e,t),(([,n])=>{de(o,n),G(e,t)})))))}))))),fe},delQueryDefinition:e=>(ce(e),oe(e),fe),getStore:_,getQueryIds:ee,forEachQuery:ne,hasQuery:te,getTableId:le,addQueryIdsListener:e=>se((()=>e(fe))),delListener:e=>($(e),fe),destroy:ae,getListenerStats:()=>((e,n)=>{var t={};for(var l in e)X.call(e,l)&&n.indexOf(l)<0&&(t[l]=e[l]);if(null!=e&&V)for(var l of V(e))n.indexOf(l)<0&&Y.call(e,l)&&(t[l]=e[l]);return t})(g.getListenerStats(),["tables","tableIds","transaction"])};var he,we;return he={[i]:[1,1],[i+h]:[0,1],[u]:[0,1],[c]:[0,1],[v]:[0,5],[d]:[1,2],[h]:[0,2],[f]:[1,3]},we=([e,n],t)=>{O(e?["get","has","forEach"]:["get"],(e=>fe[e+s+t]=(...n)=>g[e+t](...n))),fe["add"+s+t+o]=(...e)=>{return g["add"+t+o](...(l=e,0,r=n,l.slice(0,r)),((t,...l)=>e[n](fe,...l)),!0);var l,r}},((e,n)=>{e.map(n)})(x.entries(he),(([e,n])=>we(n,e))),E(fe)})(r)),a.get(r))})();export{Z as createQueries};
1
+ const e=e=>typeof e,n=e(""),t=e(!0),r=e(0),l=e(e),o="Listener",s="Result",a="Ids",i="Table",d="Row",u=d+"Count",c=d+a,v="Sorted"+d+a,f="Cell",h=f+a,w=Math.max,g=Math.min,y=isFinite,L=e=>null==e,p=(e,n,t)=>L(e)?null==t?void 0:t():n(e),R=n=>e(n)==l,b=e=>Array.isArray(e),T=e=>e.length,m=()=>{},C=(e,n)=>e.every(n),O=(e,n)=>e.forEach(n),S=e=>Q(e,((e,n)=>e+n),0),I=e=>0==T(e),Q=(e,n,t)=>e.reduce(n,t),j=(e,...n)=>e.push(...n),x=Object,E=x.entries,M=x.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=>L(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),W=(e,n)=>null==e?void 0:e.delete(n),q=e=>new Map(e),B=(e,n)=>null==e?void 0:e.get(n),G=(e,n)=>P(e,((e,t)=>n(t,e))),H=(e,n,t)=>L(t)?(W(e,n),e):null==e?void 0:e.set(n,t),J=(e,n,t)=>(k(e,n)||H(e,n,t()),B(e,n)),K=(e,n,t,r,l=0)=>p((t?J:B)(e,n[l],l>T(n)-2?t:q),(o=>{if(l>T(n)-2)return(null==r?void 0:r(o))&&H(e,n[l]),o;const s=K(o,n,t,r,l+1);return z(o)&&H(e,n[l]),s})),N=e=>new Set(b(e)||L(e)?e:[e]),U=(e,n)=>null==e?void 0:e.add(n),V=q([["avg",[(e,n)=>S(e)/n,(e,n,t)=>e+(n-e)/(t+1),(e,n,t)=>e+(e-n)/(t-1),(e,n,t,r)=>e+(n-t)/r]],["max",[e=>w(...e),(e,n)=>w(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:w(n,e)]],["min",[e=>g(...e),(e,n)=>g(n,e),(e,n)=>n==e?void 0:e,(e,n,t)=>t==e?void 0:g(n,e)]],["sum",[e=>S(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 $=((l,a)=>{const w=new WeakMap;return l=>{w.has(l)||w.set(l,(l=>{const a=l.createStore,w=a(),g=a(),S=q(),{addListener:Q,callListeners:x,delListener:$}=g,[_,ee,ne,te,re,,,le,,oe,se,ae,ie,de]=((e,n,t,r,l)=>{const o=e.hasRow,s=q(),a=q(),i=q(),d=q(),u=q(),c=q(),v=(n,t,...r)=>{const l=J(c,n,N);return O(r,(n=>U(l,n)&&t&&e.callListener(n))),r},f=(n,...t)=>p(B(c,n),(r=>{O(I(t)?A(r):t,(n=>{e.delListener(n),W(r,n)})),z(r)&&H(c,n)})),h=(e,n)=>{H(s,e,n),k(a,e)||(H(a,e,!0),H(d,e,q()),H(u,e,q()),l(i))},w=e=>{H(s,e),H(a,e),H(d,e),H(u,e),f(e),l(i)};return[()=>e,()=>{return[...null!=(n=null==(e=s)?void 0:e.keys())?n:[]];var e,n},e=>G(a,e),e=>k(a,e),e=>B(s,e),e=>B(a,e),(e,n)=>H(a,e,n),h,(n,r,l,s,a)=>{h(n,r);const i=q(),c=q(),w=B(d,n),g=B(u,n),y=n=>{const l=t=>e.getCell(r,n,t),d=B(w,n),u=o(r,n)?t(s(l,n)):void 0;var v,f;if(d===u||b(d)&&b(u)&&(f=u,T(v=d)===T(f)&&C(v,((e,n)=>f[n]===e)))||H(i,n,[d,u]),!L(a)){const e=B(g,n),t=o(r,n)?a(l,n):void 0;e!=t&&H(c,n,t)}},p=e=>{l((()=>{P(i,(([,e],n)=>H(w,n,e))),P(c,((e,n)=>H(g,n,e)))}),i,c,w,g,e),F(i),F(c)};G(w,y),e.hasTable(r)&&O(e.getRowIds(r),(e=>{k(w,e)||y(e)})),p(!0),f(n),v(n,0,e.addRowListener(r,null,((e,n,t)=>y(t))),e.addTableListener(r,(()=>p())))},w,e=>r(e,i),()=>G(c,w),v,f]})(l,0,m,Q,x),ue=(e,n,...t)=>O(t,(t=>U(J(J(S,n,q),e,N),t))),ce=e=>{p(B(S,e),(e=>{G(e,((e,n)=>P(n,(n=>e.delListener(n))))),F(e)})),O([g,w],(n=>n.delTable(e)))},ve=(e,n,t)=>ue(n,e,n.addStartTransactionListener(t.startTransaction),n.addDidFinishTransactionListener((()=>t.finishTransaction()))),fe={setQueryDefinition:(o,s,a)=>{le(o,s),ce(o);const i=[],d=[[null,[s,null,null,[],q()]]],u=[],c=[],v=[];a({select:(e,n)=>{const t=R(e)?[T(i)+"",e]:[L(n)?e:n,t=>t(e,n)];return j(i,t),{as:e=>t[0]=e}},join:(e,n,t)=>{const r=L(t)||R(n)?null:n,l=L(r)?n:t,o=[e,[e,r,R(l)?l:e=>e(l),[],q()]];return j(d,o),{as:e=>o[0]=e}},where:(e,n,t)=>j(u,R(e)?e:L(t)?t=>t(e)===n:r=>r(e,n)===t),group:(e,n,t,r,l)=>{var o;const s=[e,[e,R(n)?[n,t,r,l]:null!=(o=B(V,n))?o:[(e,n)=>n]]];return j(c,s),{as:e=>s[0]=e}},having:(e,n)=>j(v,R(e)?e:t=>t(e)===n)});const f=q(i);if(z(f))return fe;const h=q(d);G(h,((e,[,n])=>p(B(h,n),(({3:n})=>L(e)?0:j(n,e)))));const b=q(c);let m=w;if(z(b)&&I(v))m=g;else{ve(o,m,g);const l=q();G(b,((e,[n,t])=>U(J(l,n,N),[e,t])));const s=N();G(f,(e=>k(l,e)?0:U(s,e)));const a=q(),i=(s,a,i,d)=>p(s,(([u,c,f,h])=>{G(a,((o,[s])=>{const a=J(u,o,q),c=B(a,i),v=d?void 0:s;if(c!==v){const s=N([[c,v]]),d=D(a);H(a,i,v),P(B(l,o),(([l,o])=>{const i=((e,n,t,r,l,o=!1)=>{if(z(t))return;const[s,a,i,d]=l;return o||(o=L(e)),P(r,(([t,r])=>{o||(e=L(t)?null==a?void 0:a(e,r,n++):L(r)?null==i?void 0:i(e,t,n--):null==d?void 0:d(e,r,t,n),o||(o=L(e)))})),o?s(A(t),D(t)):e})(h[l],d,a,s,o);h[l]=L((l=>{const o=e(l);return(e=>e==n||e==t)(o)||o==r&&y(l)?o:void 0})(i))?null:i}))}})),z(c)||!C(v,(e=>e((e=>h[e]))))?g.delRow(o,f):L(f)?s[2]=g.addRow(o,h):g.setRow(o,f,h)}));ue(m,o,m.addRowListener(o,null,((e,n,t,r)=>{const d=[],u=[],c=q(),v=m.hasRow(o,t);let f=!v;P(s,(e=>{const[n,l,s]=r(o,t,e);j(d,l),j(u,s),f||(f=n)})),G(l,(e=>{const[n,,l]=r(o,t,e);(f||n)&&H(c,e,[l])})),f&&i(K(a,d,void 0,(([,e])=>(W(e,t),z(e)))),c,t,1),v&&i(K(a,u,(()=>{const e={};return P(s,(n=>e[n]=m.getCell(o,t,n))),[q(),N(),void 0,e]}),(([,e])=>{U(e,t)})),c,t)})))}ve(o,l,m);const S=(e,n,t,r)=>{const a=e=>l.getCell(n,t,e);O(r,(n=>{var t;const[r,,s,i,d]=B(h,n),u=null==s?void 0:s(a,e),[c,v]=null!=(t=B(d,e))?t:[];u!=c&&(L(v)||de(o,v),H(d,e,L(u)?null:[u,...ie(o,1,l.addRowListener(r,u,(()=>S(e,r,u,i))))]))})),(e=>{const n=(n,t)=>{var r,o,a;return l.getCell(...L(t)?[s,e,n]:n===s?[s,e,t]:[null==(r=B(h,n))?void 0:r[0],null==(a=B(null==(o=B(h,n))?void 0:o[4],e))?void 0:a[0],t])};m.transaction((()=>C(u,(e=>e(n)))?G(f,((t,r)=>((e,n,t,r,l)=>L(l)?e.delCell(n,t,r,!0):e.setCell(n,t,r,l))(m,o,e,t,r(n,e)))):m.delRow(o,e)))})(e)},{3:Q}=B(h,null);return m.transaction((()=>ie(o,1,l.addRowListener(s,null,((e,n,t)=>{l.hasRow(s,t)?S(t,s,t,Q):(m.delRow(o,t),P(h,(({4:e})=>p(B(e,t),(([,n])=>{de(o,n),H(e,t)})))))}))))),fe},delQueryDefinition:e=>(ce(e),oe(e),fe),getStore:_,getQueryIds:ee,forEachQuery:ne,hasQuery:te,getTableId:re,addQueryIdsListener:e=>se((()=>e(fe))),delListener:e=>($(e),fe),destroy:ae,getListenerStats:()=>((e,n)=>{var t={};for(var r in e)Y.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&X)for(var r of X(e))n.indexOf(r)<0&&Z.call(e,r)&&(t[r]=e[r]);return t})(g.getListenerStats(),["tables","tableIds","transaction"])};var he;return he=([e,n],t)=>{O(e?["get","has","forEach"]:["get"],(e=>fe[e+s+t]=(...n)=>g[e+t](...n))),fe["add"+s+t+o]=(...e)=>{return g["add"+t+o](...(r=e,0,l=n,r.slice(0,l)),((t,...r)=>e[n](fe,...r)),!0);var r,l}},((e,n)=>{E({[i]:[1,1],[i+h]:[0,1],[u]:[0,1],[c]:[0,1],[v]:[0,5],[d]:[1,2],[h]:[0,2],[f]:[1,3]}).map(n)})(0,(([e,n])=>he(n,e))),M(fe)})(l));return w.get(l)}})();export{$ as createQueries};
Binary file