tinybase 5.0.0-beta.13 → 5.0.0-beta.14

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 (293) hide show
  1. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  2. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  4. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  6. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  8. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  10. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-file.cjs +1 -1
  14. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  16. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  18. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  20. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-powersync.cjs +1 -1
  22. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  24. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  26. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  30. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  31. package/lib/cjs/persisters.cjs +1 -1
  32. package/lib/cjs/persisters.cjs.gz +0 -0
  33. package/lib/cjs/synchronizers/synchronizer-local.cjs +1 -1
  34. package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
  35. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -1
  36. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  37. package/lib/cjs/synchronizers.cjs +1 -1
  38. package/lib/cjs/synchronizers.cjs.gz +0 -0
  39. package/lib/cjs/tinybase.cjs +1 -1
  40. package/lib/cjs/tinybase.cjs.gz +0 -0
  41. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  42. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  43. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  44. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  45. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  46. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  47. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  48. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters.cjs +1 -1
  74. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  75. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -1
  76. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
  77. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -1
  78. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  79. package/lib/cjs-es6/synchronizers.cjs +1 -1
  80. package/lib/cjs-es6/synchronizers.cjs.gz +0 -0
  81. package/lib/cjs-es6/tinybase.cjs +1 -1
  82. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  83. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  84. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  85. package/lib/debug/persisters/persister-automerge.js +1 -1
  86. package/lib/debug/persisters/persister-browser.js +1 -1
  87. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +1 -1
  88. package/lib/debug/persisters/persister-electric-sql.js +1 -1
  89. package/lib/debug/persisters/persister-expo-sqlite-next.js +1 -1
  90. package/lib/debug/persisters/persister-expo-sqlite.js +1 -1
  91. package/lib/debug/persisters/persister-file.js +1 -1
  92. package/lib/debug/persisters/persister-indexed-db.js +1 -1
  93. package/lib/debug/persisters/persister-libsql.js +1 -1
  94. package/lib/debug/persisters/persister-partykit-client.js +1 -1
  95. package/lib/debug/persisters/persister-powersync.js +1 -1
  96. package/lib/debug/persisters/persister-remote.js +1 -1
  97. package/lib/debug/persisters/persister-sqlite-wasm.js +1 -1
  98. package/lib/debug/persisters/persister-sqlite3.js +1 -1
  99. package/lib/debug/persisters/persister-yjs.js +1 -1
  100. package/lib/debug/persisters.js +1 -1
  101. package/lib/debug/synchronizers/synchronizer-local.js +1 -1
  102. package/lib/debug/synchronizers/synchronizer-ws-client.js +1 -1
  103. package/lib/debug/synchronizers.js +1 -1
  104. package/lib/debug/tinybase.js +1 -1
  105. package/lib/debug/ui-react-dom.js +5 -2
  106. package/lib/es6/persisters/persister-automerge.js +1 -1
  107. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  108. package/lib/es6/persisters/persister-browser.js +1 -1
  109. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  110. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  111. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  112. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  113. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  114. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  115. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  116. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  117. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  118. package/lib/es6/persisters/persister-file.js +1 -1
  119. package/lib/es6/persisters/persister-file.js.gz +0 -0
  120. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  121. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  122. package/lib/es6/persisters/persister-libsql.js +1 -1
  123. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  124. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  125. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  126. package/lib/es6/persisters/persister-powersync.js +1 -1
  127. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  128. package/lib/es6/persisters/persister-remote.js +1 -1
  129. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  130. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  131. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  132. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  133. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  134. package/lib/es6/persisters/persister-yjs.js +1 -1
  135. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  136. package/lib/es6/persisters.js +1 -1
  137. package/lib/es6/persisters.js.gz +0 -0
  138. package/lib/es6/synchronizers/synchronizer-local.js +1 -1
  139. package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
  140. package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -1
  141. package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  142. package/lib/es6/synchronizers.js +1 -1
  143. package/lib/es6/synchronizers.js.gz +0 -0
  144. package/lib/es6/tinybase.js +1 -1
  145. package/lib/es6/tinybase.js.gz +0 -0
  146. package/lib/es6/ui-react-dom-debug.js +1 -1
  147. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  148. package/lib/persisters/persister-automerge.js +1 -1
  149. package/lib/persisters/persister-automerge.js.gz +0 -0
  150. package/lib/persisters/persister-browser.js +1 -1
  151. package/lib/persisters/persister-browser.js.gz +0 -0
  152. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  153. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  154. package/lib/persisters/persister-electric-sql.js +1 -1
  155. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  156. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  157. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  158. package/lib/persisters/persister-expo-sqlite.js +1 -1
  159. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  160. package/lib/persisters/persister-file.js +1 -1
  161. package/lib/persisters/persister-file.js.gz +0 -0
  162. package/lib/persisters/persister-indexed-db.js +1 -1
  163. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  164. package/lib/persisters/persister-libsql.js +1 -1
  165. package/lib/persisters/persister-libsql.js.gz +0 -0
  166. package/lib/persisters/persister-partykit-client.js +1 -1
  167. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  168. package/lib/persisters/persister-powersync.js +1 -1
  169. package/lib/persisters/persister-powersync.js.gz +0 -0
  170. package/lib/persisters/persister-remote.js +1 -1
  171. package/lib/persisters/persister-remote.js.gz +0 -0
  172. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  173. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  174. package/lib/persisters/persister-sqlite3.js +1 -1
  175. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  176. package/lib/persisters/persister-yjs.js +1 -1
  177. package/lib/persisters/persister-yjs.js.gz +0 -0
  178. package/lib/persisters.js +1 -1
  179. package/lib/persisters.js.gz +0 -0
  180. package/lib/synchronizers/synchronizer-local.js +1 -1
  181. package/lib/synchronizers/synchronizer-local.js.gz +0 -0
  182. package/lib/synchronizers/synchronizer-ws-client.js +1 -1
  183. package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
  184. package/lib/synchronizers.js +1 -1
  185. package/lib/synchronizers.js.gz +0 -0
  186. package/lib/tinybase.js +1 -1
  187. package/lib/tinybase.js.gz +0 -0
  188. package/lib/types/mergeable-store.d.ts +1 -1
  189. package/lib/types/persisters/persister-libsql.d.ts +1 -1
  190. package/lib/types/persisters/persister-powersync.d.ts +1 -1
  191. package/lib/types/persisters.d.ts +5 -4
  192. package/lib/types/relationships.d.ts +1 -1
  193. package/lib/types/synchronizers/synchronizer-local.d.ts +2 -2
  194. package/lib/types/synchronizers/synchronizer-ws-client.d.ts +2 -2
  195. package/lib/types/synchronizers/synchronizer-ws-server.d.ts +2 -2
  196. package/lib/types/synchronizers.d.ts +13 -9
  197. package/lib/types/ui-react.d.ts +5 -5
  198. package/lib/types/with-schemas/mergeable-store.d.ts +2 -2
  199. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +1 -1
  200. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +2 -2
  201. package/lib/types/with-schemas/persisters.d.ts +4 -3
  202. package/lib/types/with-schemas/relationships.d.ts +1 -1
  203. package/lib/types/with-schemas/synchronizers/synchronizer-local.d.ts +3 -3
  204. package/lib/types/with-schemas/synchronizers/synchronizer-ws-client.d.ts +3 -3
  205. package/lib/types/with-schemas/synchronizers/synchronizer-ws-server.d.ts +2 -2
  206. package/lib/types/with-schemas/synchronizers.d.ts +13 -9
  207. package/lib/types/with-schemas/ui-react.d.ts +5 -5
  208. package/lib/umd/persisters/persister-automerge.js +1 -1
  209. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  210. package/lib/umd/persisters/persister-browser.js +1 -1
  211. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  212. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  213. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  214. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  215. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  216. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  217. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  218. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  219. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  220. package/lib/umd/persisters/persister-file.js +1 -1
  221. package/lib/umd/persisters/persister-file.js.gz +0 -0
  222. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  223. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  224. package/lib/umd/persisters/persister-libsql.js +1 -1
  225. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  226. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  227. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  228. package/lib/umd/persisters/persister-powersync.js +1 -1
  229. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  230. package/lib/umd/persisters/persister-remote.js +1 -1
  231. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  232. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  233. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  234. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  235. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  236. package/lib/umd/persisters/persister-yjs.js +1 -1
  237. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  238. package/lib/umd/persisters.js +1 -1
  239. package/lib/umd/persisters.js.gz +0 -0
  240. package/lib/umd/synchronizers/synchronizer-local.js +1 -1
  241. package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
  242. package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -1
  243. package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
  244. package/lib/umd/synchronizers.js +1 -1
  245. package/lib/umd/synchronizers.js.gz +0 -0
  246. package/lib/umd/tinybase.js +1 -1
  247. package/lib/umd/tinybase.js.gz +0 -0
  248. package/lib/umd/ui-react-dom-debug.js +1 -1
  249. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  250. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  251. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  252. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  253. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  254. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  255. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  256. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  257. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  258. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  259. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  260. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  261. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  262. package/lib/umd-es6/persisters/persister-file.js +1 -1
  263. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  264. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  265. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  266. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  267. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  268. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  269. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  270. package/lib/umd-es6/persisters/persister-powersync.js +1 -1
  271. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  272. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  273. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  274. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  275. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  276. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  277. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  278. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  279. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  280. package/lib/umd-es6/persisters.js +1 -1
  281. package/lib/umd-es6/persisters.js.gz +0 -0
  282. package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -1
  283. package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
  284. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -1
  285. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  286. package/lib/umd-es6/synchronizers.js +1 -1
  287. package/lib/umd-es6/synchronizers.js.gz +0 -0
  288. package/lib/umd-es6/tinybase.js +1 -1
  289. package/lib/umd-es6/tinybase.js.gz +0 -0
  290. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  291. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  292. package/package.json +3 -3
  293. package/readme.md +2 -2
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,o=a.keys,r=a.freeze,c=(t,a)=>e(t,(t=>t[a])),i=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>o(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),v=(t,e)=>t?.get(e),h=(e,a,n)=>{return t(n)?(s=e,o=a,s?.delete(o),e):e?.set(a,n);var s,o},p=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)||h(t,e,a()),v(t,e)},w=u(),C=u(),A=(t,e)=>[t[e].t,t[e].v],f=(e,a,n,s)=>{const o=t(a)?e:((t,e,a)=>(i(t,e)||(t[e]={}),t[e]))(e,a);let r;return y(n,((t,e)=>{s(o,e,t)&&(r=1)})),y(o,((t,e)=>{i(n,e)||(g(o,e),r=1)})),!t(a)&&l(o)&&g(e,a),r};exports.createAutomergePersister=(a,n,s="tinybase",o)=>(n.change((t=>t[s]={})),((a,n,s,o,c,i,g,y={},d=[])=>{let u,A,f,b=0;p(w,d,(()=>0)),p(C,d,(()=>[]));const[L,M,S,m,D]=((t=1,e)=>t>1&&"getMergeableContent"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:0)(g,a),T=t=>{var e;(L&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},O=async t=>(2!=b&&(b=1,await x((async()=>{try{T(await n())}catch(e){i?.(e),t&&D(t)}b=0}))),z),P=()=>(A&&(c(A),A=void 0),z),j=async t=>(1!=b&&(b=2,await x((async()=>{try{await s(M,t)}catch(t){i?.(t)}b=0}))),z),k=()=>(e(f,a.delListener),f=void 0,z),x=async(...e)=>(((t,...e)=>{t.push(...e)})(v(C,d),...e),await(async()=>{if(!v(w,d)){for(h(w,d,1);!t((e=v(C,d),u=e.shift()));)try{await u()}catch(t){i?.(t)}h(w,d,0)}var e})(),z),z={load:O,startAutoLoad:async t=>(await P().load(t),A=o((async(t,e)=>{e||t?2!=b&&(b=1,T(e??t),b=0):await O()})),z),stopAutoLoad:P,isAutoLoading:()=>!t(A),save:j,startAutoSave:async()=>(await k().save(),f=a.addDidFinishTransactionListener((()=>{const t=S();m(t)&&j(t)})),z),stopAutoSave:k,isAutoSaving:()=>!t(f),schedule:x,getStore:()=>a,destroy:()=>P().stopAutoSave(),getStats:()=>({}),...y};return r(z)})(a,(async()=>{const t=await n.doc();return 2==d(t[s])?A(t,s):void 0}),(async(a,o)=>n.change((n=>((a,n,s,o)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[r,i]=A(a,n),d=()=>{u=1};let u=1;if(e(o,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(r,n):e(r[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(c(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(i,a):i[a]=e))})),u){const[t,e]=s();f(r,void 0,t,((t,e,a)=>f(r,e,a,((t,e,a)=>f(t,e,a,((t,e,a)=>{if(c(t,e)!==a)return t[e]=a,1})))))),f(i,void 0,e,((t,e,a)=>{c(i,e)!==a&&(i[e]=a)}))}})(n,s,a,o)))),(t=>{const e=({doc:e})=>t(A(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),o,1,{getDocHandle:()=>n}));
1
+ "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,r=a.keys,o=a.freeze,c=(t,a)=>e(t,(t=>t[a])),i=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>r(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),v=(t,e)=>t?.get(e),h=(e,a,n)=>{return t(n)?(s=e,r=a,s?.delete(r),e):e?.set(a,n);var s,r},p=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||h(t,e,a()),v(t,e)},w=u(),A=u(),C=(t,e)=>[t[e].t,t[e].v],f=(e,a,n,s)=>{const r=t(a)?e:((t,e,a)=>(i(t,e)||(t[e]={}),t[e]))(e,a);let o;return y(n,((t,e)=>{s(r,e,t)&&(o=1)})),y(r,((t,e)=>{i(n,e)||(g(r,e),o=1)})),!t(a)&&l(r)&&g(e,a),o};exports.createAutomergePersister=(a,n,s="tinybase",r)=>(n.change((t=>t[s]={})),((a,n,s,r,c,i,g,y={},d=[])=>{let u,C,f,b=0;p(w,d,(()=>0)),p(A,d,(()=>[]));const[L,S,M,m,D]=((t=1,e)=>t>1&&"merge"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:0)(g,a),T=t=>{var e;(L&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},O=async t=>(2!=b&&(b=1,await x((async()=>{try{T(await n())}catch(e){i?.(e),t&&D(t)}b=0}))),z),P=()=>(C&&(c(C),C=void 0),z),j=async t=>(1!=b&&(b=2,await x((async()=>{try{await s(S,t)}catch(t){i?.(t)}b=0}))),z),k=()=>(e(f,a.delListener),f=void 0,z),x=async(...e)=>(((t,...e)=>{t.push(...e)})(v(A,d),...e),await(async()=>{if(!v(w,d)){for(h(w,d,1);!t((e=v(A,d),u=e.shift()));)try{await u()}catch(t){i?.(t)}h(w,d,0)}var e})(),z),z={load:O,startAutoLoad:async t=>(await P().load(t),C=r((async(t,e)=>{e||t?2!=b&&(b=1,T(e??t),b=0):await O()})),z),stopAutoLoad:P,isAutoLoading:()=>!t(C),save:j,startAutoSave:async()=>(await k().save(),f=a.addDidFinishTransactionListener((()=>{const t=M();m(t)&&j(t)})),z),stopAutoSave:k,isAutoSaving:()=>!t(f),schedule:x,getStore:()=>a,destroy:()=>P().stopAutoSave(),getStats:()=>({}),...y};return o(z)})(a,(async()=>{const t=await n.doc();return 2==d(t[s])?C(t,s):void 0}),(async(a,r)=>n.change((n=>((a,n,s,r)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[o,i]=C(a,n),d=()=>{u=1};let u=1;if(e(r,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(o,n):e(o[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(c(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(i,a):i[a]=e))})),u){const[t,e]=s();f(o,void 0,t,((t,e,a)=>f(o,e,a,((t,e,a)=>f(t,e,a,((t,e,a)=>{if(c(t,e)!==a)return t[e]=a,1})))))),f(i,void 0,e,((t,e,a)=>{c(i,e)!==a&&(i[e]=a)}))}})(n,s,a,r)))),(t=>{const e=({doc:e})=>t(C(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),r,1,{getDocHandle:()=>n}));
@@ -1 +1 @@
1
- "use strict";const e=e=>null==e,t=(t,a,s)=>e(t)?s?.():a(t),a=Object,s=e=>a.getPrototypeOf(e),r=a.keys,n=a.freeze,o=n=>(r=>!e(r)&&t(s(r),(t=>t==a.prototype||e(s(t))),(()=>!0)))(n)&&0==(e=>r(e).length)(n),i=JSON.parse,c=e=>new Map(e),g=(e,t)=>e?.get(t),y=(t,a,s)=>{return e(s)?(r=t,n=a,r?.delete(n),t):t?.set(a,s);var r,n},l=(e,t,a,s)=>{var r,n;return r=e,n=t,r?.has(n)||y(e,t,a()),g(e,t)},d=c(),u=c(),v="storage",p=globalThis.window,h=(a,s,r,c)=>((a,s,r,i,c,v,p,h={},w=[])=>{let S,C,A,f=0;l(d,w,(()=>0)),l(u,w,(()=>[]));const[L,b,M,O,m]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!o(e)||!o(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!o(e)||!o(t),t.setContent]:0)(p,a),N=e=>{var t;(L&&(t=e?.[0],Array.isArray(t))?1===e?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===e?.[2]?a.applyChanges:a.setContent)(e)},T=async e=>(2!=f&&(f=1,await x((async()=>{try{N(await s())}catch(t){v?.(t),e&&m(e)}f=0}))),D),J=()=>(C&&(c(C),C=void 0),D),P=async e=>(1!=f&&(f=2,await x((async()=>{try{await r(b,e)}catch(e){v?.(e)}f=0}))),D),k=()=>(t(A,a.delListener),A=void 0,D),x=async(...t)=>(((e,...t)=>{e.push(...t)})(g(u,w),...t),await(async()=>{if(!g(d,w)){for(y(d,w,1);!e((t=g(u,w),S=t.shift()));)try{await S()}catch(e){v?.(e)}y(d,w,0)}var t})(),D),D={load:T,startAutoLoad:async e=>(await J().load(e),C=i((async(e,t)=>{t||e?2!=f&&(f=1,N(t??e),f=0):await T()})),D),stopAutoLoad:J,isAutoLoading:()=>!e(C),save:P,startAutoSave:async()=>(await k().save(),A=a.addDidFinishTransactionListener((()=>{const e=M();O(e)&&P(e)})),D),stopAutoSave:k,isAutoSaving:()=>!e(A),schedule:x,getStore:()=>a,destroy:()=>J().stopAutoSave(),getStats:()=>({}),...h};return n(D)})(a,(async()=>{return e=r.getItem(s),JSON.parse(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return r.setItem(s,(t=e(),JSON.stringify(t,((e,t)=>void 0===t?"":t))));var t}),(e=>{const t=t=>{if(t.storageArea===r&&t.key===s)try{e(i(t.newValue))}catch{e()}};return p.addEventListener(v,t),t}),(e=>p.removeEventListener(v,e)),c,3,{getStorageName:()=>s});exports.createLocalPersister=(e,t,a)=>h(e,t,localStorage,a),exports.createSessionPersister=(e,t,a)=>h(e,t,sessionStorage,a);
1
+ "use strict";const e=e=>null==e,t=(t,a,s)=>e(t)?s?.():a(t),a=Object,s=e=>a.getPrototypeOf(e),r=a.keys,n=a.freeze,o=n=>(r=>!e(r)&&t(s(r),(t=>t==a.prototype||e(s(t))),(()=>!0)))(n)&&0==(e=>r(e).length)(n),i=JSON.parse,c=e=>new Map(e),g=(e,t)=>e?.get(t),y=(t,a,s)=>{return e(s)?(r=t,n=a,r?.delete(n),t):t?.set(a,s);var r,n},l=(e,t,a,s)=>{var r,n;return r=e,n=t,r?.has(n)||y(e,t,a()),g(e,t)},d=c(),u=c(),v="storage",p=globalThis.window,h=(a,s,r,c)=>((a,s,r,i,c,v,p,h={},w=[])=>{let S,A,C,f=0;l(d,w,(()=>0)),l(u,w,(()=>[]));const[L,b,m,M,O]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!o(e)||!o(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!o(e)||!o(t),t.setContent]:0)(p,a),N=e=>{var t;(L&&(t=e?.[0],Array.isArray(t))?1===e?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===e?.[2]?a.applyChanges:a.setContent)(e)},T=async e=>(2!=f&&(f=1,await x((async()=>{try{N(await s())}catch(t){v?.(t),e&&O(e)}f=0}))),D),J=()=>(A&&(c(A),A=void 0),D),P=async e=>(1!=f&&(f=2,await x((async()=>{try{await r(b,e)}catch(e){v?.(e)}f=0}))),D),k=()=>(t(C,a.delListener),C=void 0,D),x=async(...t)=>(((e,...t)=>{e.push(...t)})(g(u,w),...t),await(async()=>{if(!g(d,w)){for(y(d,w,1);!e((t=g(u,w),S=t.shift()));)try{await S()}catch(e){v?.(e)}y(d,w,0)}var t})(),D),D={load:T,startAutoLoad:async e=>(await J().load(e),A=i((async(e,t)=>{t||e?2!=f&&(f=1,N(t??e),f=0):await T()})),D),stopAutoLoad:J,isAutoLoading:()=>!e(A),save:P,startAutoSave:async()=>(await k().save(),C=a.addDidFinishTransactionListener((()=>{const e=m();M(e)&&P(e)})),D),stopAutoSave:k,isAutoSaving:()=>!e(C),schedule:x,getStore:()=>a,destroy:()=>J().stopAutoSave(),getStats:()=>({}),...h};return n(D)})(a,(async()=>{return e=r.getItem(s),JSON.parse(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return r.setItem(s,(t=e(),JSON.stringify(t,((e,t)=>void 0===t?"":t))));var t}),(e=>{const t=t=>{if(t.storageArea===r&&t.key===s)try{e(i(t.newValue))}catch{e()}};return p.addEventListener(v,t),t}),(e=>p.removeEventListener(v,e)),c,3,{getStorageName:()=>s});exports.createLocalPersister=(e,t,a)=>h(e,t,localStorage,a),exports.createSessionPersister=(e,t,a)=>h(e,t,sessionStorage,a);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",g="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),O=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),U=a=>[...a?.keys()??[]],W=(a,t)=>a?.get(t),Y=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),$=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),k=(a,t,e,n)=>(N(a,t)||$(a,t,e()),W(a,t)),G=(a,t,e,n=$)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>G(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>$(r,t,G(k(r,t,H),e,((a,t,e)=>{e!=W(a,t)&&$(a,t,e)}),((a,t)=>$(a,t))))),((a,t)=>$(r,t))),async(t,e)=>((a,t)=>!o(W(W(r,a),t)))(t,e)?M(T(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();F(c??{},(a=>A(D(a??{}),(a=>q(u,a)))));const d=h(u);if(!y&&w&&O(d)&&N(r,t))return await a("DROP "+z+m(t)),void $(r,t);if(O(d)||N(r,t)){const n=W(r,t),i=J(U(n));await E([...A(d,(async s=>{R(i,s)||(await a(K+m(t)+"ADD"+m(s)),$(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+m(t)+"DROP"+m(e)),$(n,e))})):[]])}else await a("CREATE "+z+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+m(a))))});`),$(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+m(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+m(t)+Z+m(s)+"=?",[n]):O(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(O(d))N(r,t)&&await a(V+m(t)+Z+" 1");else{const e=T(U(W(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+m(t)+Z+m(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;k(sa,w,(()=>0)),k(ia,w,(()=>[]));const[g,m,v,C,A]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),O=t=>{(g&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await L((async()=>{try{O(await t())}catch(t){i?.(t),a&&A(a)}p=0}))),S),N=()=>(d&&(s(d),d=void 0),S),h=async a=>(1!=p&&(p=2,await L((async()=>{try{await e(m,a)}catch(a){i?.(a)}p=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(f(W(ia,w),...a),await(async()=>{if(!W(sa,w)){for($(sa,w,1);!o((a=W(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}$(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,O(t??a),p=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&h(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,g))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,g,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,m)=>{const[v,C,A,O]=aa(t,y,s,m),f=async(a,t)=>await E(Y(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,g,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await O((async()=>{await v();const a=await(async()=>M(T(await E(Y(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,g))[p]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ga={load:0,save:0,[Ea]:t+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||$(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Oa=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,p,m;const[C,A,O,T]=(a=>{const e=(a=>P(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(ga,r)),0,x(ga)),o=c[2],l=J(o);return[0,n,[ma(s,{[da]:null,[ua]:g},da,(a=>q(l,a)&&a==o)),ma(i,{[Ea]:null,[ua]:g,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(m??=s)||(a(),E=t,p=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),o,O,h(T),l,y,d)};exports.createCrSqliteWasmPersister=(a,t,e,n,s)=>Oa(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,n)=>a(n)))),(a=>a()),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",m="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),O=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),U=a=>[...a?.keys()??[]],W=(a,t)=>a?.get(t),Y=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),$=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),k=(a,t,e,n)=>(N(a,t)||$(a,t,e()),W(a,t)),G=(a,t,e,n=$)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>G(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>$(r,t,G(k(r,t,H),e,((a,t,e)=>{e!=W(a,t)&&$(a,t,e)}),((a,t)=>$(a,t))))),((a,t)=>$(r,t))),async(t,e)=>((a,t)=>!o(W(W(r,a),t)))(t,e)?M(T(A(await a(Q+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();F(c??{},(a=>A(D(a??{}),(a=>q(u,a)))));const d=h(u);if(!y&&w&&O(d)&&N(r,t))return await a("DROP "+z+g(t)),void $(r,t);if(O(d)||N(r,t)){const n=W(r,t),i=J(U(n));await E([...A(d,(async s=>{R(i,s)||(await a(K+g(t)+"ADD"+g(s)),$(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+g(t)+"DROP"+g(e)),$(n,e))})):[]])}else await a("CREATE "+z+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+g(a))))});`),$(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+g(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+g(t)+Z+g(s)+"=?",[n]):O(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(O(d))N(r,t)&&await a(V+g(t)+Z+" 1");else{const e=T(U(W(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+g(t)+Z+g(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+C(A(r,(a=>n+g(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+g(s)+")DO UPDATE SET"+C(A(r,(a=>g(a)+"=excluded."+g(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;k(sa,w,(()=>0)),k(ia,w,(()=>[]));const[m,g,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),O=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await L((async()=>{try{O(await t())}catch(t){i?.(t),a&&A(a)}p=0}))),S),N=()=>(d&&(s(d),d=void 0),S),h=async a=>(1!=p&&(p=2,await L((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(f(W(ia,w),...a),await(async()=>{if(!W(sa,w)){for($(sa,w,1);!o((a=W(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}$(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,O(t??a),p=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&h(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,g)=>{const[v,C,A,O]=aa(t,y,s,g),f=async(a,t)=>await E(Y(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,m,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await O((async()=>{await v();const a=await(async()=>M(T(await E(Y(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,m))[p]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},ga=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||$(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Oa=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,p,g;const[C,A,O,T]=(a=>{const e=(a=>P(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(ma,r)),0,x(ma)),o=c[2],l=J(o);return[0,n,[ga(s,{[da]:null,[ua]:m},da,(a=>q(l,a)&&a==o)),ga(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),o,O,h(T),l,y,d)};exports.createCrSqliteWasmPersister=(a,t,e,n,s)=>Oa(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,n)=>a(n)))),(a=>a()),n,s,t);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",C=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),A=a=>0==E(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),b=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),R=Object,L=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>f(S(a),(([a,e])=>t(e,a))),j=a=>R.values(a),B=a=>E(D(a)),H=a=>(a=>!o(a)&&l(L(a),(a=>a==R.prototype||o(L(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),q=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>o(e)?(O(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(b(a,t)||x(a,t,e()),k(a,t)),J=(a,t,e,n=x)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=m+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>J(r,M(await d(f(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(f(await a(m+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(r,t,J(G(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(f(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>f(D(a??{}),(a=>W(u,a)))));const E=N(u);if(!y&&w&&A(E)&&b(r,t))return await a("DROP "+z+v(t)),void x(r,t);if(A(E)||b(r,t)){const n=k(r,t),i=U($(n));await d([...f(E,(async s=>{O(i,s)||(await a(K+v(t)+"ADD"+v(s)),x(n,s,e))})),...!y&&l?f(N(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),x(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(f(E,(a=>n+v(a))))});`),x(r,t,Y([[s,e],...f(E,(a=>[a,e]))]));if(y)o(c)?await a(V+v(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+v(t)+Z+v(s)+"=?",[n]):A(E)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(A(E))b(r,t)&&await a(V+v(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...f(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+v(t)+Z+v(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+C(f(r,(a=>n+v(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+C(f(r,(a=>v(a)+"=excluded."+v(a))),n):e),f(c,(a=>a??null))),ea=a=>C(f(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[p,v,m,C,f]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),A=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await R((async()=>{try{A(await t())}catch(t){i?.(t),a&&f(a)}g=0}))),L),b=()=>(E&&(s(E),E=void 0),L),N=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),L),O=()=>(l(d,a.delListener),d=void 0,L),R=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(x(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}x(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await b().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,A(t??a),g=0):await T()})),L),stopAutoLoad:b,isAutoLoading:()=>!o(E),save:N,startAutoSave:async()=>(await O().save(),d=a.addDidFinishTransactionListener((()=>{const a=m();C(a)&&N(a)})),L),stopAutoSave:O,isAutoSaving:()=>!o(d),schedule:R,getStore:()=>a,destroy:()=>b().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,v)=>{const[m,C,f,A]=aa(t,y,s,v),h=async(a,t)=>await d(q(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await f(e,n,a[r],s,i,t)}))),b=async(a,t)=>l?await f(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await A((async()=>{await m();const a=await(async()=>M(T(await d(q(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await m(),o(t)){const[t,e]=a();await h(t),await b(e)}else await h(t[0],!0),await b(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[da]:t+"_values"},va=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||x(s,i,r)})),s},ma="pragma ",Ca="data_version",fa="schema_version",Aa=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,v;const[C,f,A,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,B(pa)),o=c[2],l=U(o);return[0,n,[va(s,{[Ea]:null,[ua]:p},Ea,(a=>W(l,a)&&a==o)),va(i,{[da]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ma+Ca))[0][Ca],e=(await n(ma+fa))[0][fa],s=(await n(m+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(v??=s)||(a(),d=t,g=e)}catch{}},e=f,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,A,N(T),l,y,E)};exports.createElectricSqlPersister=(a,t,e,n,s)=>Aa(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return n=({tablename:t})=>a(t),t.notifier.alias(e).forEach(n);var n}))),(a=>a()),n,s,t,"getElectricClient");
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),A=a=>0==E(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),R=Object,L=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>f(S(a),(([a,e])=>t(e,a))),j=a=>R.values(a),B=a=>E(D(a)),H=a=>(a=>!o(a)&&l(L(a),(a=>a==R.prototype||o(L(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),q=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>o(e)?(b(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(N(a,t)||x(a,t,e()),k(a,t)),J=(a,t,e,n=x)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>J(r,M(await d(f(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(f(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(r,t,J(G(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(f(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>f(D(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&A(E)&&N(r,t))return await a("DROP "+z+p(t)),void x(r,t);if(A(E)||N(r,t)){const n=k(r,t),i=U($(n));await d([...f(E,(async s=>{b(i,s)||(await a(K+p(t)+"ADD"+p(s)),x(n,s,e))})),...!y&&l?f(O(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),x(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(f(E,(a=>n+p(a))))});`),x(r,t,Y([[s,e],...f(E,(a=>[a,e]))]));if(y)o(c)?await a(V+p(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+p(t)+Z+p(s)+"=?",[n]):A(E)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(A(E))N(r,t)&&await a(V+p(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...f(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+p(t)+Z+p(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+C(f(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+p(s)+")DO UPDATE SET"+C(f(r,(a=>p(a)+"=excluded."+p(a))),n):e),f(c,(a=>a??null))),ea=a=>C(f(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[m,p,v,C,f]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),A=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await R((async()=>{try{A(await t())}catch(t){i?.(t),a&&f(a)}g=0}))),L),N=()=>(E&&(s(E),E=void 0),L),O=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),L),b=()=>(l(d,a.delListener),d=void 0,L),R=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(x(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}x(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await N().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,A(t??a),g=0):await T()})),L),stopAutoLoad:N,isAutoLoading:()=>!o(E),save:O,startAutoSave:async()=>(await b().save(),d=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),L),stopAutoSave:b,isAutoSaving:()=>!o(d),schedule:R,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,m))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,m,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,p)=>{const[v,C,f,A]=aa(t,y,s,p),h=async(a,t)=>await d(q(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await f(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await f(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await A((async()=>{await v();const a=await(async()=>M(T(await d(q(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await C(w,m))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await v(),o(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||x(s,i,r)})),s},va="pragma ",Ca="data_version",fa="schema_version",Aa=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,p;const[C,f,A,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(ma,r)),0,B(ma)),o=c[2],l=U(o);return[0,n,[pa(s,{[Ea]:null,[ua]:m},Ea,(a=>W(l,a)&&a==o)),pa(i,{[da]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+fa))[0][fa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(p??=s)||(a(),d=t,g=e)}catch{}},e=f,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,A,O(T),l,y,E)};exports.createElectricSqlPersister=(a,t,e,n,s)=>Aa(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return n=({tablename:t})=>a(t),t.notifier.alias(e).forEach(n);var n}))),(a=>a()),n,s,t,"getElectricClient");
@@ -1 +1 @@
1
- "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,g=async a=>c.all(a),p="_",v="_id",m=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",C=(a,t="")=>a.join(t),N=(a,t)=>a.map(t),T=a=>0==E(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,b=a=>[...a?.values()??[]],L=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),D=R.entries,I=R.keys,M=R.freeze,P=(a=[])=>R.fromEntries(a),_=(...a)=>R.assign({},...a),x=(a,t)=>t in a,F=(a,t)=>N(D(a),(([a,e])=>t(e,a))),j=a=>R.values(a),q=a=>E(I(a)),B=a=>(a=>!l(a)&&w(S(a),(a=>a==R.prototype||l(S(a))),(()=>!0)))(a)&&0==q(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>N([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>l(e)?(L(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(O(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>x(t,e)?0:n(a,e))),a),W=a=>new Set(u(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=A+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=H();return[async()=>U(r,P(await g(N(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,P(N(await a(A+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!l($($(r,a),t)))(t,e)?P(f(N(await a(X+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,c,o,w,y=!1)=>{const u=W();F(c??{},(a=>N(I(a??{}),(a=>z(u,a)))));const d=b(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+K+m(t)),void G(r,t);if(T(d)||O(r,t)){const s=$(r,t),i=W(Y(s));await g([...N(d,(async e=>{L(i,e)||(await a(V+m(t)+"ADD"+m(e)),G(s,e,n))})),...!y&&o?N(b(i),(async n=>{n!=e&&(await a(V+m(t)+"DROP"+m(n)),G(s,n))})):[]])}else await a("CREATE "+K+m(t)+"("+m(e)+` PRIMARY KEY ON CONFLICT REPLACE${C(N(d,(a=>s+m(a))))});`),G(r,t,H([[e,n],...N(d,(a=>[a,n]))]));if(y)l(c)?await a(Q+m(t)+aa+" 1"):await g(F(c,(async(n,s)=>{l(n)?await a(Q+m(t)+aa+m(e)+"=?",[s]):T(d)||await ea(a,t,e,I(n),[s,...j(n)],i)})));else if(T(d))O(r,t)&&await a(Q+m(t)+aa+" 1");else{const n=f(Y($(r,t)),(a=>a!=e)),s=[],o=[];F(c??{},((a,t)=>{h(s,t,...N(n,(t=>a?.[t]))),h(o,t)})),await ea(a,t,e,n,s,i),await a(Q+m(t)+aa+m(e)+"NOT IN("+na(o)+")",o)}},async t=>{let n;await a("BEGIN");try{n=await t()}catch(a){e?.(a)}return await a("END"),n}]},ea=async(a,t,e,i,c,o=!0)=>await a("INSERT "+(o?n:"OR REPLACE ")+"INTO"+m(t)+"("+m(e)+C(N(i,(a=>s+m(a))))+")VALUES"+d(r(`,(?${r(",?",E(i))})`,E(c)/(E(i)+1)),1)+(o?"ON CONFLICT("+m(e)+")DO UPDATE SET"+C(N(i,(a=>m(a)+"=excluded."+m(a))),s):n),N(c,(a=>a??null))),na=a=>C(N(a,(()=>"?")),s),sa=JSON.parse,ia=H(),ra=H(),ca=(a,t,e,n,s,i,r,c={},o=[])=>{let y,d,E,g=0;J(ia,o,(()=>0)),J(ra,o,(()=>[]));const[p,v,m,A,C]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(p&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await L((async()=>{try{N(await t())}catch(t){i?.(t),a&&C(a)}g=0}))),R),f=()=>(d&&(s(d),d=void 0),R),O=async a=>(1!=g&&(g=2,await L((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),R),b=()=>(w(E,a.delListener),E=void 0,R),L=async(...a)=>(h($(ra,o),...a),await(async()=>{if(!$(ia,o)){for(G(ia,o,1);!l((a=$(ra,o),y=a.shift()));)try{await y()}catch(a){i?.(a)}G(ia,o,0)}var a})(),R),R={load:T,startAutoLoad:async a=>(await f().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,N(t??a),g=0):await T()})),R),stopAutoLoad:f,isAutoLoading:()=>!l(d),save:O,startAutoSave:async()=>(await b().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&O(a)})),R),stopAutoSave:b,isAutoSaving:()=>!l(E),schedule:L,getStore:()=>a,destroy:()=>f().stopAutoSave(),getStats:()=>({}),...c};return M(R)},oa="store",la=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=ta(t,r,s,l);return ca(a,(async()=>await d((async()=>(await w(),sa((await y(i,v))[p]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,v,{[p]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},wa=(a,t,e,n,s,[i,r,[c,o,w]],y,u,d,E)=>{const[m,A,C,N]=ta(t,y,s,E),T=async(a,t)=>await g(k(r,(async([e,n,s,i],r)=>{t&&!x(a,r)||await C(e,n,a[r],s,i,t)}))),h=async(a,t)=>o?await C(w,v,{[p]:a},!0,!0,t):null;return ca(a,(async()=>await N((async()=>{await m();const a=await(async()=>P(f(await g(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(w,v))[p]:{})();return B(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await m(),l(t)){const[t,e]=a();await T(t),await h(e)}else await T(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},ya="json",ua="autoLoadIntervalSeconds",da="rowIdColumnName",Ea="tableId",ga="tableName",pa={mode:ya,[ua]:1},va={load:0,save:0,[ga]:e+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=d(j(_(t,y(a)?{[e]:a}:a)),0,q(t));l(r[0])||n(i,r[0])||G(s,i,r)})),s},Aa="pragma ",Ca="data_version",Na="schema_version",Ta=(a,t,n,s,i,r,c,l,w="getDb",u)=>{let E,g,p;const[m,C,N,T]=(a=>{const t=(a=>_(pa,y(a)?{storeTableName:a}:a??{}))(a),n=t[ua];if(t.mode==ya){const{storeTableName:a=e}=t;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,c=d(j(_(va,r)),0,q(va)),o=c[2],l=W(o);return[0,n,[ma(s,{[Ea]:null,[da]:v},Ea,(a=>z(l,a)&&a==o)),ma(i,{[ga]:null,[da]:v,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>z(l,t)&&t==o)),c],l]})(t);return(m?la:wa)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(Aa+Ca))[0][Ca],e=(await n(Aa+Na))[0][Na],s=(await n(A+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(p??=s)||(a(),E=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),c,N,b(T),l,w,u)};exports.createExpoSqliteNextPersister=(t,e,n,s,i)=>Ta(t,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),s,i,e);
1
+ "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,p=async a=>c.all(a),g="_",m="_id",v=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",C=(a,t="")=>a.join(t),N=(a,t)=>a.map(t),T=a=>0==E(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,S=a=>b.getPrototypeOf(a),D=b.entries,I=b.keys,M=b.freeze,P=(a=[])=>b.fromEntries(a),_=(...a)=>b.assign({},...a),x=(a,t)=>t in a,F=(a,t)=>N(D(a),(([a,e])=>t(e,a))),j=a=>b.values(a),q=a=>E(I(a)),B=a=>(a=>!l(a)&&w(S(a),(a=>a==b.prototype||l(S(a))),(()=>!0)))(a)&&0==q(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>N([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>l(e)?(R(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(O(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>x(t,e)?0:n(a,e))),a),W=a=>new Set(u(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=A+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=H();return[async()=>U(r,P(await p(N(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,P(N(await a(A+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!l($($(r,a),t)))(t,e)?P(f(N(await a(X+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,c,o,w,y=!1)=>{const u=W();F(c??{},(a=>N(I(a??{}),(a=>z(u,a)))));const d=L(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+K+v(t)),void G(r,t);if(T(d)||O(r,t)){const s=$(r,t),i=W(Y(s));await p([...N(d,(async e=>{R(i,e)||(await a(V+v(t)+"ADD"+v(e)),G(s,e,n))})),...!y&&o?N(L(i),(async n=>{n!=e&&(await a(V+v(t)+"DROP"+v(n)),G(s,n))})):[]])}else await a("CREATE "+K+v(t)+"("+v(e)+` PRIMARY KEY ON CONFLICT REPLACE${C(N(d,(a=>s+v(a))))});`),G(r,t,H([[e,n],...N(d,(a=>[a,n]))]));if(y)l(c)?await a(Q+v(t)+aa+" 1"):await p(F(c,(async(n,s)=>{l(n)?await a(Q+v(t)+aa+v(e)+"=?",[s]):T(d)||await ea(a,t,e,I(n),[s,...j(n)],i)})));else if(T(d))O(r,t)&&await a(Q+v(t)+aa+" 1");else{const n=f(Y($(r,t)),(a=>a!=e)),s=[],o=[];F(c??{},((a,t)=>{h(s,t,...N(n,(t=>a?.[t]))),h(o,t)})),await ea(a,t,e,n,s,i),await a(Q+v(t)+aa+v(e)+"NOT IN("+na(o)+")",o)}},async t=>{let n;await a("BEGIN");try{n=await t()}catch(a){e?.(a)}return await a("END"),n}]},ea=async(a,t,e,i,c,o=!0)=>await a("INSERT "+(o?n:"OR REPLACE ")+"INTO"+v(t)+"("+v(e)+C(N(i,(a=>s+v(a))))+")VALUES"+d(r(`,(?${r(",?",E(i))})`,E(c)/(E(i)+1)),1)+(o?"ON CONFLICT("+v(e)+")DO UPDATE SET"+C(N(i,(a=>v(a)+"=excluded."+v(a))),s):n),N(c,(a=>a??null))),na=a=>C(N(a,(()=>"?")),s),sa=JSON.parse,ia=H(),ra=H(),ca=(a,t,e,n,s,i,r,c={},o=[])=>{let y,d,E,p=0;J(ia,o,(()=>0)),J(ra,o,(()=>[]));const[g,m,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(g&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await R((async()=>{try{N(await t())}catch(t){i?.(t),a&&C(a)}p=0}))),b),f=()=>(d&&(s(d),d=void 0),b),O=async a=>(1!=p&&(p=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}p=0}))),b),L=()=>(w(E,a.delListener),E=void 0,b),R=async(...a)=>(h($(ra,o),...a),await(async()=>{if(!$(ia,o)){for(G(ia,o,1);!l((a=$(ra,o),y=a.shift()));)try{await y()}catch(a){i?.(a)}G(ia,o,0)}var a})(),b),b={load:T,startAutoLoad:async a=>(await f().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,N(t??a),p=0):await T()})),b),stopAutoLoad:f,isAutoLoading:()=>!l(d),save:O,startAutoSave:async()=>(await L().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),b),stopAutoSave:L,isAutoSaving:()=>!l(E),schedule:R,getStore:()=>a,destroy:()=>f().stopAutoSave(),getStats:()=>({}),...c};return M(b)},oa="store",la=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=ta(t,r,s,l);return ca(a,(async()=>await d((async()=>(await w(),sa((await y(i,m))[g]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[g]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},wa=(a,t,e,n,s,[i,r,[c,o,w]],y,u,d,E)=>{const[v,A,C,N]=ta(t,y,s,E),T=async(a,t)=>await p(k(r,(async([e,n,s,i],r)=>{t&&!x(a,r)||await C(e,n,a[r],s,i,t)}))),h=async(a,t)=>o?await C(w,m,{[g]:a},!0,!0,t):null;return ca(a,(async()=>await N((async()=>{await v();const a=await(async()=>P(f(await p(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(w,m))[g]:{})();return B(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await v(),l(t)){const[t,e]=a();await T(t),await h(e)}else await T(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},ya="json",ua="autoLoadIntervalSeconds",da="rowIdColumnName",Ea="tableId",pa="tableName",ga={mode:ya,[ua]:1},ma={load:0,save:0,[pa]:e+"_values"},va=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=d(j(_(t,y(a)?{[e]:a}:a)),0,q(t));l(r[0])||n(i,r[0])||G(s,i,r)})),s},Aa="pragma ",Ca="data_version",Na="schema_version",Ta=(a,t,n,s,i,r,c,l,w="getDb",u)=>{let E,p,g;const[v,C,N,T]=(a=>{const t=(a=>_(ga,y(a)?{storeTableName:a}:a??{}))(a),n=t[ua];if(t.mode==ya){const{storeTableName:a=e}=t;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,c=d(j(_(ma,r)),0,q(ma)),o=c[2],l=W(o);return[0,n,[va(s,{[Ea]:null,[da]:m},Ea,(a=>z(l,a)&&a==o)),va(i,{[pa]:null,[da]:m,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>z(l,t)&&t==o)),c],l]})(t);return(v?la:wa)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(Aa+Ca))[0][Ca],e=(await n(Aa+Na))[0][Na],s=(await n(A+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=p=null,i(t)}),c,N,L(T),l,w,u)};exports.createExpoSqliteNextPersister=(t,e,n,s,i)=>Ta(t,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),s,i,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",p="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),N=a=>0==E(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),R=Object,L=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(S(a),(([a,e])=>t(e,a))),x=a=>R.values(a),j=a=>E(D(a)),B=a=>(a=>!o(a)&&l(L(a),(a=>a==R.prototype||o(L(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(b(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(h(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await d(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(T(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>A(D(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&N(E)&&h(r,t))return await a("DROP "+z+m(t)),void q(r,t);if(N(E)||h(r,t)){const n=$(r,t),i=U(Y(n));await d([...A(E,(async s=>{b(i,s)||(await a(K+m(t)+"ADD"+m(s)),q(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(K+m(t)+"DROP"+m(e)),q(n,e))})):[]])}else await a("CREATE "+z+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(E,(a=>n+m(a))))});`),q(r,t,H([[s,e],...A(E,(a=>[a,e]))]));if(y)o(c)?await a(V+m(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+m(t)+Z+m(s)+"=?",[n]):N(E)||await ta(a,t,s,D(e),[n,...x(e)],i)})));else if(N(E))h(r,t)&&await a(V+m(t)+Z+" 1");else{const e=T(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+m(t)+Z+m(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[p,m,v,C,A]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await R((async()=>{try{N(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),L),h=()=>(E&&(s(E),E=void 0),L),O=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}g=0}))),L),b=()=>(l(d,a.delListener),d=void 0,L),R=async(...a)=>(f($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await h().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,N(t??a),g=0):await T()})),L),stopAutoLoad:h,isAutoLoading:()=>!o(E),save:O,startAutoSave:async()=>(await b().save(),d=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),L),stopAutoSave:b,isAutoSaving:()=>!o(d),schedule:R,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,m)=>{const[v,C,A,N]=aa(t,y,s,m),f=async(a,t)=>await d(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),h=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await N((async()=>{await v();const a=await(async()=>M(T(await d(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await h(e)}else await f(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[da]:t+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(x(P(t,w(a)?{[e]:a}:a)),0,j(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Na=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,m;const[C,A,N,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(x(P(pa,r)),0,j(pa)),o=c[2],l=U(o);return[0,n,[ma(s,{[Ea]:null,[ua]:p},Ea,(a=>W(l,a)&&a==o)),ma(i,{[da]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(m??=s)||(a(),d=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,N,O(T),l,y,E)};exports.createExpoSqlitePersister=(a,t,e,n,s)=>Na(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",A=(a,t="")=>a.join(t),C=(a,t)=>a.map(t),N=a=>0==E(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,L=a=>b.getPrototypeOf(a),S=b.entries,D=b.keys,I=b.freeze,M=(a=[])=>b.fromEntries(a),P=(...a)=>b.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>C(S(a),(([a,e])=>t(e,a))),x=a=>b.values(a),j=a=>E(D(a)),B=a=>(a=>!o(a)&&l(L(a),(a=>a==b.prototype||o(L(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>C([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(h(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await d(C(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(C(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(T(C(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>C(D(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&N(E)&&h(r,t))return await a("DROP "+z+p(t)),void q(r,t);if(N(E)||h(r,t)){const n=$(r,t),i=U(Y(n));await d([...C(E,(async s=>{R(i,s)||(await a(K+p(t)+"ADD"+p(s)),q(n,s,e))})),...!y&&l?C(O(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),q(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${A(C(E,(a=>n+p(a))))});`),q(r,t,H([[s,e],...C(E,(a=>[a,e]))]));if(y)o(c)?await a(V+p(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+p(t)+Z+p(s)+"=?",[n]):N(E)||await ta(a,t,s,D(e),[n,...x(e)],i)})));else if(N(E))h(r,t)&&await a(V+p(t)+Z+" 1");else{const e=T(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...C(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+p(t)+Z+p(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+A(C(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+p(s)+")DO UPDATE SET"+A(C(r,(a=>p(a)+"=excluded."+p(a))),n):e),C(c,(a=>a??null))),ea=a=>A(C(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[m,p,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await b((async()=>{try{N(await t())}catch(t){i?.(t),a&&C(a)}g=0}))),L),h=()=>(E&&(s(E),E=void 0),L),O=async a=>(1!=g&&(g=2,await b((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),L),R=()=>(l(d,a.delListener),d=void 0,L),b=async(...a)=>(f($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await h().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,N(t??a),g=0):await T()})),L),stopAutoLoad:h,isAutoLoading:()=>!o(E),save:O,startAutoSave:async()=>(await R().save(),d=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),L),stopAutoSave:R,isAutoSaving:()=>!o(d),schedule:b,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,m))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,m,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,p)=>{const[v,A,C,N]=aa(t,y,s,p),f=async(a,t)=>await d(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await C(e,n,a[r],s,i,t)}))),h=async(a,t)=>l?await C(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await N((async()=>{await v();const a=await(async()=>M(T(await d(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(w,m))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await h(e)}else await f(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(x(P(t,w(a)?{[e]:a}:a)),0,j(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},va="pragma ",Aa="data_version",Ca="schema_version",Na=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,p;const[A,C,N,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(x(P(ma,r)),0,j(ma)),o=c[2],l=U(o);return[0,n,[pa(s,{[Ea]:null,[ua]:m},Ea,(a=>W(l,a)&&a==o)),pa(i,{[da]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(A?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Aa))[0][Aa],e=(await n(va+Ca))[0][Ca],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(p??=s)||(a(),d=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,N,O(T),l,y,E)};exports.createExpoSqlitePersister=(a,t,e,n,s)=>Na(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,s,t);
@@ -1 +1 @@
1
- "use strict";var t=require("fs"),e=require("fs/promises");const a="utf8",s=t=>null==t,r=(t,e,a)=>s(t)?a?.():e(t),n=Object,i=t=>n.getPrototypeOf(t),o=n.keys,c=n.freeze,g=t=>(t=>!s(t)&&r(i(t),(t=>t==n.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>o(t).length)(t),y=t=>new Map(t),l=(t,e)=>t?.get(e),u=(t,e,a)=>{return s(a)?(r=t,n=e,r?.delete(n),t):t?.set(e,a);var r,n},d=(t,e,a,s)=>{var r,n;return r=t,n=e,r?.has(n)||u(t,e,a()),l(t,e)},v=y(),h=y();exports.createFilePersister=(n,i,o)=>((t,e,a,n,i,o,y,p={},w=[])=>{let C,f,A,S=0;d(v,w,(()=>0)),d(h,w,(()=>[]));const[b,M,F,L,O]=((t=1,e)=>t>1&&"getMergeableContent"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!g(t)||!g(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!g(t)||!g(e),e.setContent]:0)(y,t),P=e=>{var a;(b&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},T=async t=>(2!=S&&(S=1,await N((async()=>{try{P(await e())}catch(e){o?.(e),t&&O(t)}S=0}))),j),q=()=>(f&&(i(f),f=void 0),j),D=async t=>(1!=S&&(S=2,await N((async()=>{try{await a(M,t)}catch(t){o?.(t)}S=0}))),j),J=()=>(r(A,t.delListener),A=void 0,j),N=async(...t)=>(((t,...e)=>{t.push(...e)})(l(h,w),...t),await(async()=>{if(!l(v,w)){for(u(v,w,1);!s((t=l(h,w),C=t.shift()));)try{await C()}catch(t){o?.(t)}u(v,w,0)}var t})(),j),j={load:T,startAutoLoad:async t=>(await q().load(t),f=n((async(t,e)=>{e||t?2!=S&&(S=1,P(e??t),S=0):await T()})),j),stopAutoLoad:q,isAutoLoading:()=>!s(f),save:D,startAutoSave:async()=>(await J().save(),A=t.addDidFinishTransactionListener((()=>{const t=F();L(t)&&D(t)})),j),stopAutoSave:J,isAutoSaving:()=>!s(A),schedule:N,getStore:()=>t,destroy:()=>q().stopAutoSave(),getStats:()=>({}),...p};return c(j)})(n,(async()=>{return t=await e.readFile(i,a),JSON.parse(t,((t,e)=>""===e?void 0:e));var t}),(async t=>{return await e.writeFile(i,(s=t(),JSON.stringify(s,((t,e)=>void 0===e?"":e))),a);var s}),(e=>t.watch(i,(()=>e()))),(t=>t?.close()),o,3,{getFilePath:()=>i});
1
+ "use strict";var t=require("fs"),e=require("fs/promises");const a="utf8",s=t=>null==t,r=(t,e,a)=>s(t)?a?.():e(t),n=Object,i=t=>n.getPrototypeOf(t),o=n.keys,c=n.freeze,y=t=>(t=>!s(t)&&r(i(t),(t=>t==n.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>o(t).length)(t),g=t=>new Map(t),l=(t,e)=>t?.get(e),u=(t,e,a)=>{return s(a)?(r=t,n=e,r?.delete(n),t):t?.set(e,a);var r,n},d=(t,e,a,s)=>{var r,n;return r=t,n=e,r?.has(n)||u(t,e,a()),l(t,e)},v=g(),h=g();exports.createFilePersister=(n,i,o)=>((t,e,a,n,i,o,g,p={},w=[])=>{let f,C,A,S=0;d(v,w,(()=>0)),d(h,w,(()=>[]));const[b,F,L,M,O]=((t=1,e)=>t>1&&"merge"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!y(t)||!y(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!y(t)||!y(e),e.setContent]:0)(g,t),P=e=>{var a;(b&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},T=async t=>(2!=S&&(S=1,await J((async()=>{try{P(await e())}catch(e){o?.(e),t&&O(t)}S=0}))),N),m=()=>(C&&(i(C),C=void 0),N),q=async t=>(1!=S&&(S=2,await J((async()=>{try{await a(F,t)}catch(t){o?.(t)}S=0}))),N),D=()=>(r(A,t.delListener),A=void 0,N),J=async(...t)=>(((t,...e)=>{t.push(...e)})(l(h,w),...t),await(async()=>{if(!l(v,w)){for(u(v,w,1);!s((t=l(h,w),f=t.shift()));)try{await f()}catch(t){o?.(t)}u(v,w,0)}var t})(),N),N={load:T,startAutoLoad:async t=>(await m().load(t),C=n((async(t,e)=>{e||t?2!=S&&(S=1,P(e??t),S=0):await T()})),N),stopAutoLoad:m,isAutoLoading:()=>!s(C),save:q,startAutoSave:async()=>(await D().save(),A=t.addDidFinishTransactionListener((()=>{const t=L();M(t)&&q(t)})),N),stopAutoSave:D,isAutoSaving:()=>!s(A),schedule:J,getStore:()=>t,destroy:()=>m().stopAutoSave(),getStats:()=>({}),...p};return c(N)})(n,(async()=>{return t=await e.readFile(i,a),JSON.parse(t,((t,e)=>""===e?void 0:e));var t}),(async t=>{return await e.writeFile(i,(s=t(),JSON.stringify(s,((t,e)=>void 0===e?"":e))),a);var s}),(e=>t.watch(i,(()=>e()))),(t=>t?.close()),o,3,{getFilePath:()=>i});
@@ -1 +1 @@
1
- "use strict";const e=Promise,t=clearInterval,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),s=t=>new e(t),r=async t=>e.all(t),o=(e,t)=>e.map(t),c=(e,...t)=>e.push(...t),i=Object,l=e=>i.getPrototypeOf(e),y=i.entries,d=i.keys,g=i.freeze,u=e=>(e=>!a(e)&&n(l(e),(e=>e==i.prototype||a(l(e))),(()=>!0)))(e)&&0==(e=>d(e).length)(e),w=e=>new Map(e),p=(e,t)=>e?.get(t),h=(e,t,n)=>{return a(n)?(s=e,r=t,s?.delete(r),e):e?.set(t,n);var s,r},v=(e,t,a,n)=>{var s,r;return s=e,r=t,s?.has(r)||h(e,t,a()),p(e,t)},b=w(),A=w(),C=globalThis.window,S=["t","v"],f={keyPath:"k"},D=async(e,t)=>{const a=((t,a)=>o(y(t),(([t,a])=>M(e,"put",{k:t,v:a}))))(t);o(await M(e,"getAllKeys"),(n=>((e,t)=>t in e)(t,n)?0:c(a,M(e,"delete",n)))),await r(a)},M=async(e,t,a)=>s(((n,s)=>{const r=e[t](a);r.onsuccess=()=>n(r.result),r.onerror=()=>s(`objectStore.${t} error`)}));exports.createIndexedDbPersister=(e,l,y=1,d)=>{const w=async(e,t=[],a=0)=>s(((n,s)=>{const c=(C?C.indexedDB:indexedDB).open(l,a?2:void 0);c.onupgradeneeded=()=>a&&o(S,(e=>{try{c.result.createObjectStore(e,f)}catch{}})),c.onsuccess=async()=>{try{const a=c.result.transaction(S,"readwrite"),s=await r(o(S,(async(n,s)=>await e(a.objectStore(n),t[s]))));c.result.close(),n(s)}catch(e){c.result.close(),s(e)}},c.onerror=()=>s("indexedDB.open error")}));return((e,t,s,r,o,i,l,y={},d=[])=>{let w,C,S,f=0;v(b,d,(()=>0)),v(A,d,(()=>[]));const[D,M,x,j,k]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!u(e)||!u(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!u(e)||!u(t),t.setContent]:0)(l,e),L=t=>{var a;(D&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},m=async e=>(2!=f&&(f=1,await I((async()=>{try{L(await t())}catch(t){i?.(t),e&&k(e)}f=0}))),O),P=()=>(C&&(o(C),C=void 0),O),T=async e=>(1!=f&&(f=2,await I((async()=>{try{await s(M,e)}catch(e){i?.(e)}f=0}))),O),B=()=>(n(S,e.delListener),S=void 0,O),I=async(...e)=>(c(p(A,d),...e),await(async()=>{if(!p(b,d)){for(h(b,d,1);!a((e=p(A,d),w=e.shift()));)try{await w()}catch(e){i?.(e)}h(b,d,0)}var e})(),O),O={load:m,startAutoLoad:async e=>(await P().load(e),C=r((async(e,t)=>{t||e?2!=f&&(f=1,L(t??e),f=0):await m()})),O),stopAutoLoad:P,isAutoLoading:()=>!a(C),save:T,startAutoSave:async()=>(await B().save(),S=e.addDidFinishTransactionListener((()=>{const e=x();j(e)&&T(e)})),O),stopAutoSave:B,isAutoSaving:()=>!a(S),schedule:I,getStore:()=>e,destroy:()=>P().stopAutoSave(),getStats:()=>({}),...y};return g(O)})(e,(async()=>await w((async e=>((e=[])=>i.fromEntries(e))(o(await M(e,"getAll"),(({k:e,v:t})=>[e,t])))))),(async e=>await w((async(e,t)=>await D(e,t)),e(),1)),(e=>setInterval(e,1e3*y)),(e=>t(e)),d,1,{getDbName:()=>l})},exports.objectStoreMatch=D;
1
+ "use strict";const e=Promise,t=clearInterval,a=e=>null==e,s=(e,t,s)=>a(e)?s?.():t(e),n=t=>new e(t),r=async t=>e.all(t),o=(e,t)=>e.map(t),c=(e,...t)=>e.push(...t),i=Object,l=e=>i.getPrototypeOf(e),y=i.entries,d=i.keys,g=i.freeze,u=e=>(e=>!a(e)&&s(l(e),(e=>e==i.prototype||a(l(e))),(()=>!0)))(e)&&0==(e=>d(e).length)(e),w=e=>new Map(e),p=(e,t)=>e?.get(t),h=(e,t,s)=>{return a(s)?(n=e,r=t,n?.delete(r),e):e?.set(t,s);var n,r},v=(e,t,a,s)=>{var n,r;return n=e,r=t,n?.has(r)||h(e,t,a()),p(e,t)},b=w(),A=w(),C=globalThis.window,S=["t","v"],f={keyPath:"k"},D=async(e,t)=>{const a=((t,a)=>o(y(t),(([t,a])=>x(e,"put",{k:t,v:a}))))(t);o(await x(e,"getAllKeys"),(s=>((e,t)=>t in e)(t,s)?0:c(a,x(e,"delete",s)))),await r(a)},x=async(e,t,a)=>n(((s,n)=>{const r=e[t](a);r.onsuccess=()=>s(r.result),r.onerror=()=>n(`objectStore.${t} error`)}));exports.createIndexedDbPersister=(e,l,y=1,d)=>{const w=async(e,t=[],a=0)=>n(((s,n)=>{const c=(C?C.indexedDB:indexedDB).open(l,a?2:void 0);c.onupgradeneeded=()=>a&&o(S,(e=>{try{c.result.createObjectStore(e,f)}catch{}})),c.onsuccess=async()=>{try{const a=c.result.transaction(S,"readwrite"),n=await r(o(S,(async(s,n)=>await e(a.objectStore(s),t[n]))));c.result.close(),s(n)}catch(e){c.result.close(),n(e)}},c.onerror=()=>n("indexedDB.open error")}));return((e,t,n,r,o,i,l,y={},d=[])=>{let w,C,S,f=0;v(b,d,(()=>0)),v(A,d,(()=>[]));const[D,x,M,j,k]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!u(e)||!u(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!u(e)||!u(t),t.setContent]:0)(l,e),m=t=>{var a;(D&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},L=async e=>(2!=f&&(f=1,await I((async()=>{try{m(await t())}catch(t){i?.(t),e&&k(e)}f=0}))),O),P=()=>(C&&(o(C),C=void 0),O),T=async e=>(1!=f&&(f=2,await I((async()=>{try{await n(x,e)}catch(e){i?.(e)}f=0}))),O),B=()=>(s(S,e.delListener),S=void 0,O),I=async(...e)=>(c(p(A,d),...e),await(async()=>{if(!p(b,d)){for(h(b,d,1);!a((e=p(A,d),w=e.shift()));)try{await w()}catch(e){i?.(e)}h(b,d,0)}var e})(),O),O={load:L,startAutoLoad:async e=>(await P().load(e),C=r((async(e,t)=>{t||e?2!=f&&(f=1,m(t??e),f=0):await L()})),O),stopAutoLoad:P,isAutoLoading:()=>!a(C),save:T,startAutoSave:async()=>(await B().save(),S=e.addDidFinishTransactionListener((()=>{const e=M();j(e)&&T(e)})),O),stopAutoSave:B,isAutoSaving:()=>!a(S),schedule:I,getStore:()=>e,destroy:()=>P().stopAutoSave(),getStats:()=>({}),...y};return g(O)})(e,(async()=>await w((async e=>((e=[])=>i.fromEntries(e))(o(await x(e,"getAll"),(({k:e,v:t})=>[e,t])))))),(async e=>await w((async(e,t)=>await D(e,t)),e(),1)),(e=>setInterval(e,1e3*y)),(e=>t(e)),d,1,{getDbName:()=>l})},exports.objectStoreMatch=D;
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],L=(a,t)=>a?.delete(t),R=Object,b=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(S(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(b(a),(a=>a==R.prototype||o(b(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(L(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(O(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=m+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(m+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(f(A(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>A(D(a??{}),(a=>W(u,a)))));const d=h(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+z+v(t)),void q(r,t);if(T(d)||O(r,t)){const n=$(r,t),i=U(Y(n));await E([...A(d,(async s=>{L(i,s)||(await a(K+v(t)+"ADD"+v(s)),q(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),q(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+v(a))))});`),q(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+v(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+v(t)+Z+v(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))O(r,t)&&await a(V+v(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{N(n,t,...A(e,(t=>a?.[t]))),N(o,t)})),await ta(a,t,s,e,n,i),await a(V+v(t)+Z+v(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+C(A(r,(a=>n+v(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+C(A(r,(a=>v(a)+"=excluded."+v(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[p,v,m,C,A]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),b),O=()=>(d&&(s(d),d=void 0),b),h=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),b),L=()=>(l(E,a.delListener),E=void 0,b),R=async(...a)=>(N($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),b),b={load:f,startAutoLoad:async a=>(await O().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),b),stopAutoLoad:O,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await L().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();C(a)&&h(a)})),b),stopAutoSave:L,isAutoSaving:()=>!o(E),schedule:R,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...c};return I(b)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,v)=>{const[m,C,A,T]=aa(t,y,s,v),N=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),O=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await m();const a=await(async()=>M(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),o(t)){const[t,e]=a();await N(t),await O(e)}else await N(t[0],!0),await O(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},va=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},ma="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,v;const[C,A,T,f]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,x(pa)),o=c[2],l=U(o);return[0,n,[va(s,{[da]:null,[ua]:p},da,(a=>W(l,a)&&a==o)),va(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ma+Ca))[0][Ca],e=(await n(ma+Aa))[0][Aa],s=(await n(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(v??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,T,h(f),l,y,d)};exports.createLibSqlPersister=(a,t,e,n,s)=>Ta(a,e,(async(a,e=[])=>(await t.execute({sql:a,args:e})).rows),(()=>()=>0),(a=>a()),n,s,t,"getClient");
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],L=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),b=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(S(a),(a=>a==R.prototype||o(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(L(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(O(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(f(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>A(D(a??{}),(a=>W(u,a)))));const d=h(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+z+m(t)),void q(r,t);if(T(d)||O(r,t)){const n=$(r,t),i=U(Y(n));await E([...A(d,(async s=>{L(i,s)||(await a(K+m(t)+"ADD"+m(s)),q(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+m(t)+"DROP"+m(e)),q(n,e))})):[]])}else await a("CREATE "+z+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+m(a))))});`),q(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+m(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+m(t)+Z+m(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))O(r,t)&&await a(V+m(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{N(n,t,...A(e,(t=>a?.[t]))),N(o,t)})),await ta(a,t,s,e,n,i),await a(V+m(t)+Z+m(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[p,m,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),O=()=>(d&&(s(d),d=void 0),S),h=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}g=0}))),S),L=()=>(l(E,a.delListener),E=void 0,S),R=async(...a)=>(N($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await O().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),S),stopAutoLoad:O,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await L().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&h(a)})),S),stopAutoSave:L,isAutoSaving:()=>!o(E),schedule:R,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,m)=>{const[v,C,A,T]=aa(t,y,s,m),N=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),O=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>M(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),o(t)){const[t,e]=a();await N(t),await O(e)}else await N(t[0],!0),await O(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,m;const[C,A,T,f]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,x(pa)),o=c[2],l=U(o);return[0,n,[ma(s,{[da]:null,[ua]:p},da,(a=>W(l,a)&&a==o)),ma(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(m??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,T,h(f),l,y,d)};exports.createLibSqlPersister=(a,t,e,n,s)=>Ta(a,e,(async(a,e=[])=>(await t.execute({sql:a,args:e})).rows),(()=>()=>0),(a=>a()),n,s,t,"getClient");
@@ -1 +1 @@
1
- "use strict";const t=t=>typeof t,e="",a=t(e),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=e=>t(e)==a,r=t=>t.length,i=Object,c=t=>i.getPrototypeOf(t),y=i.keys,g=i.freeze,d=t=>(t=>!s(t)&&n(c(t),(t=>t==i.prototype||s(c(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),h=t=>JSON.stringify(t,((t,e)=>e instanceof Map?i.fromEntries([...e]):e)),l=JSON.parse,p="/store",v=t=>new Map(t),u=(t,e)=>t?.get(e),w=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},f=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)||w(t,e,a()),u(t,e)},C=v(),A=v(),S="message";exports.createPartyKitPersister=(t,a,i,c)=>{const{host:y,room:v}=a.partySocketOptions,{storeProtocol:m="https",storePath:P=p,messagePrefix:b=e}={...o(i)?{storeProtocol:i}:i},L=m+"://"+y+"/parties/"+a.name+"/"+v+P,M=async t=>await(await fetch(L,{...t?{method:"PUT",body:h(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,e,a,o,r,i,c,y={},h=[])=>{let l,p,v,S=0;f(C,h,(()=>0)),f(A,h,(()=>[]));const[m,P,b,L,M]=((t=1,e)=>t>1&&"getMergeableContent"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!d(t)||!d(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!d(t)||!d(e),e.setContent]:0)(c,t),O=e=>{var a;(m&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},T=async t=>(2!=S&&(S=1,await x((async()=>{try{O(await e())}catch(e){i?.(e),t&&M(t)}S=0}))),D),E=()=>(p&&(r(p),p=void 0),D),j=async t=>(1!=S&&(S=2,await x((async()=>{try{await a(P,t)}catch(t){i?.(t)}S=0}))),D),k=()=>(n(v,t.delListener),v=void 0,D),x=async(...t)=>(((t,...e)=>{t.push(...e)})(u(A,h),...t),await(async()=>{if(!u(C,h)){for(w(C,h,1);!s((t=u(A,h),l=t.shift()));)try{await l()}catch(t){i?.(t)}w(C,h,0)}var t})(),D),D={load:T,startAutoLoad:async t=>(await E().load(t),p=o((async(t,e)=>{e||t?2!=S&&(S=1,O(e??t),S=0):await T()})),D),stopAutoLoad:E,isAutoLoading:()=>!s(p),save:j,startAutoSave:async()=>(await k().save(),v=t.addDidFinishTransactionListener((()=>{const t=b();L(t)&&j(t)})),D),stopAutoSave:k,isAutoSaving:()=>!s(v),schedule:x,getStore:()=>t,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...y};return g(D)})(t,(async()=>await M()),(async(t,e)=>{var s;e?a.send(b+"s"+(o(s=e)?s:h(s))):await M(t())}),(t=>{const e=e=>n(((t,e,a)=>{const s=r(t);return((t,e)=>t.startsWith(e))(e,t)?[e[s],l((n=e,o=s+1,n.slice(o,void 0)))]:void 0;var n,o})(b,e.data),(([e,a])=>{"s"==e&&t(void 0,a)}));return a.addEventListener(S,e),e}),(t=>{a.removeEventListener(S,t)}),c,1,{getConnection:()=>a})};
1
+ "use strict";const t=t=>typeof t,e="",a=t(e),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=e=>t(e)==a,r=t=>t.length,i=Object,c=t=>i.getPrototypeOf(t),y=i.keys,d=i.freeze,g=t=>(t=>!s(t)&&n(c(t),(t=>t==i.prototype||s(c(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),h=t=>JSON.stringify(t,((t,e)=>e instanceof Map?i.fromEntries([...e]):e)),p=JSON.parse,v="/store",l=t=>new Map(t),u=(t,e)=>t?.get(e),w=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},f=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)||w(t,e,a()),u(t,e)},C=l(),m=l(),A="message";exports.createPartyKitPersister=(t,a,i,c)=>{const{host:y,room:l}=a.partySocketOptions,{storeProtocol:S="https",storePath:P=v,messagePrefix:L=e}={...o(i)?{storeProtocol:i}:i},b=S+"://"+y+"/parties/"+a.name+"/"+l+P,M=async t=>await(await fetch(b,{...t?{method:"PUT",body:h(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,e,a,o,r,i,c,y={},h=[])=>{let p,v,l,A=0;f(C,h,(()=>0)),f(m,h,(()=>[]));const[S,P,L,b,M]=((t=1,e)=>t>1&&"merge"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!g(t)||!g(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!g(t)||!g(e),e.setContent]:0)(c,t),O=e=>{var a;(S&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},T=async t=>(2!=A&&(A=1,await x((async()=>{try{O(await e())}catch(e){i?.(e),t&&M(t)}A=0}))),D),E=()=>(v&&(r(v),v=void 0),D),j=async t=>(1!=A&&(A=2,await x((async()=>{try{await a(P,t)}catch(t){i?.(t)}A=0}))),D),k=()=>(n(l,t.delListener),l=void 0,D),x=async(...t)=>(((t,...e)=>{t.push(...e)})(u(m,h),...t),await(async()=>{if(!u(C,h)){for(w(C,h,1);!s((t=u(m,h),p=t.shift()));)try{await p()}catch(t){i?.(t)}w(C,h,0)}var t})(),D),D={load:T,startAutoLoad:async t=>(await E().load(t),v=o((async(t,e)=>{e||t?2!=A&&(A=1,O(e??t),A=0):await T()})),D),stopAutoLoad:E,isAutoLoading:()=>!s(v),save:j,startAutoSave:async()=>(await k().save(),l=t.addDidFinishTransactionListener((()=>{const t=L();b(t)&&j(t)})),D),stopAutoSave:k,isAutoSaving:()=>!s(l),schedule:x,getStore:()=>t,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...y};return d(D)})(t,(async()=>await M()),(async(t,e)=>{var s;e?a.send(L+"s"+(o(s=e)?s:h(s))):await M(t())}),(t=>{const e=e=>n(((t,e,a)=>{const s=r(t);return((t,e)=>t.startsWith(e))(e,t)?[e[s],p((n=e,o=s+1,n.slice(o,void 0)))]:void 0;var n,o})(L,e.data),(([e,a])=>{"s"==e&&t(void 0,a)}));return a.addEventListener(A,e),e}),(t=>{a.removeEventListener(A,t)}),c,1,{getConnection:()=>a})};
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,o=clearInterval,c=a=>null==a,l=(a,t,e)=>c(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,b=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),L=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(L(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!c(a)&&l(S(a),(a=>a==R.prototype||c(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>c(e)?(O(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||c(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,q="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>U(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!c($($(r,a),t)))(t,e)?M(f(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!c(a)&&!B(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=W();F(o??{},(a=>A(D(a??{}),(a=>z(u,a)))));const d=b(u);if(!y&&w&&T(d)&&N(r,t))return await a("DROP "+K+m(t)),void G(r,t);if(T(d)||N(r,t)){const n=$(r,t),i=W(Y(n));await E([...A(d,(async s=>{O(i,s)||(await a(V+m(t)+"ADD"+m(s)),G(n,s,e))})),...!y&&l?A(b(i),(async e=>{e!=s&&(await a(V+m(t)+"DROP"+m(e)),G(n,e))})):[]])}else await a("CREATE "+K+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+m(a))))});`),G(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)c(o)?await a(q+m(t)+Z+" 1"):await E(F(o,(async(e,n)=>{c(e)?await a(q+m(t)+Z+m(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))N(r,t)&&await a(q+m(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],c=[];F(o??{},((a,t)=>{h(n,t,...A(e,(t=>a?.[t]))),h(c,t)})),await ta(a,t,s,e,n,i),await a(q+m(t)+Z+m(s)+"NOT IN("+ea(c)+")",c)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,o,c=!0)=>await a("INSERT "+(c?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(o)/(d(r)+1)),1)+(c?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(o,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,o={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[p,m,v,C,A]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),b=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}g=0}))),S),O=()=>(l(E,a.delListener),E=void 0,S),R=async(...a)=>(h($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(G(sa,w,1);!c((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),S),stopAutoLoad:N,isAutoLoading:()=>!c(d),save:b,startAutoSave:async()=>(await O().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&b(a)})),S),stopAutoSave:O,isAutoSaving:()=>!c(E),schedule:R,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...o};return I(S)},oa="store",ca=(a,t,e,n,s,[i],r,o,c,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[c]:()=>o},o)},la=(a,t,e,n,s,[i,r,[o,l,w]],y,u,d,m)=>{const[v,C,A,T]=aa(t,y,s,m),h=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>M(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await C(w,p))[g]:{})();return B(a)&&c(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),c(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));c(r[0])||n(i,r[0])||G(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,c,l,y="getDb",d)=>{let E,g,m;const[C,A,T,f]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,o=u(j(P(pa,r)),0,x(pa)),c=o[2],l=W(c);return[0,n,[ma(s,{[da]:null,[ua]:p},da,(a=>z(l,a)&&a==c)),ma(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>z(l,t)&&t==c)),o],l]})(e);return(C?ca:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(m??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),c,T,b(f),l,y,d)};exports.createPowerSyncPersister=(a,t,e,n,s,i=!1)=>Ta(a,e,(async(a,e=[])=>t.execute(a,e).then((a=>a.rows?._array??[]))),(a=>{const e=new AbortController,n=t.onChange({rawTableNames:!0,signal:e.signal});return(async()=>{for await(const t of n)A(t.changedTables,a)})(),e}),(a=>a.abort()),n,s,t,"getPowerSync",i);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,o=clearInterval,c=a=>null==a,l=(a,t,e)=>c(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),L=R.entries,D=R.keys,I=R.freeze,P=(a=[])=>R.fromEntries(a),M=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(L(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!c(a)&&l(S(a),(a=>a==R.prototype||c(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>c(e)?(b(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||c(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,q="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>U(r,P(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,P(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!c($($(r,a),t)))(t,e)?P(f(A(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!c(a)&&!B(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=W();F(o??{},(a=>A(D(a??{}),(a=>z(u,a)))));const d=O(u);if(!y&&w&&T(d)&&N(r,t))return await a("DROP "+K+p(t)),void G(r,t);if(T(d)||N(r,t)){const n=$(r,t),i=W(Y(n));await E([...A(d,(async s=>{b(i,s)||(await a(V+p(t)+"ADD"+p(s)),G(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(V+p(t)+"DROP"+p(e)),G(n,e))})):[]])}else await a("CREATE "+K+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+p(a))))});`),G(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)c(o)?await a(q+p(t)+Z+" 1"):await E(F(o,(async(e,n)=>{c(e)?await a(q+p(t)+Z+p(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))N(r,t)&&await a(q+p(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],c=[];F(o??{},((a,t)=>{h(n,t,...A(e,(t=>a?.[t]))),h(c,t)})),await ta(a,t,s,e,n,i),await a(q+p(t)+Z+p(s)+"NOT IN("+ea(c)+")",c)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,o,c=!0)=>await a("INSERT "+(c?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+C(A(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(o)/(d(r)+1)),1)+(c?"ON CONFLICT("+p(s)+")DO UPDATE SET"+C(A(r,(a=>p(a)+"=excluded."+p(a))),n):e),A(o,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,o={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[m,p,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),O=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),S),b=()=>(l(E,a.delListener),E=void 0,S),R=async(...a)=>(h($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(G(sa,w,1);!c((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),S),stopAutoLoad:N,isAutoLoading:()=>!c(d),save:O,startAutoSave:async()=>(await b().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),S),stopAutoSave:b,isAutoSaving:()=>!c(E),schedule:R,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...o};return I(S)},oa="store",ca=(a,t,e,n,s,[i],r,o,c,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[g]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[g]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[c]:()=>o},o)},la=(a,t,e,n,s,[i,r,[o,l,w]],y,u,d,p)=>{const[v,C,A,T]=aa(t,y,s,p),h=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>P(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await C(w,m))[g]:{})();return B(a)&&c(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),c(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},pa=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(M(t,w(a)?{[e]:a}:a)),0,x(t));c(r[0])||n(i,r[0])||G(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,c,l,y="getDb",d)=>{let E,g,p;const[C,A,T,f]=(a=>{const e=(a=>M(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,o=u(j(M(ma,r)),0,x(ma)),c=o[2],l=W(c);return[0,n,[pa(s,{[da]:null,[ua]:m},da,(a=>z(l,a)&&a==c)),pa(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>z(l,t)&&t==c)),o],l]})(e);return(C?ca:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(p??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),c,T,O(f),l,y,d)};exports.createPowerSyncPersister=(a,t,e,n,s,i=!1)=>Ta(a,e,(async(a,e=[])=>t.execute(a,e).then((a=>a.rows?._array??[]))),(a=>{const e=new AbortController,n=t.onChange({rawTableNames:!0,signal:e.signal});return(async()=>{for await(const t of n)A(t.changedTables,a)})(),e}),(a=>a.abort()),n,s,t,"getPowerSync",i);
@@ -1 +1 @@
1
- "use strict";const t=clearInterval,e=t=>null==t,a=(t,a,n)=>e(t)?n?.():a(t),n=Object,s=t=>n.getPrototypeOf(t),r=n.keys,o=n.freeze,i=t=>(t=>!e(t)&&a(s(t),(t=>t==n.prototype||e(s(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),c=JSON.parse,y=t=>new Map(t),g=(t,e)=>t?.get(e),l=(t,a,n)=>{return e(n)?(s=t,r=a,s?.delete(r),t):t?.set(a,n);var s,r},h=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||l(t,e,a()),g(t,e)},d=y(),p=y(),u=t=>t.headers.get("ETag");exports.createRemotePersister=(s,r,y,v=5,w)=>{let f;return((t,n,s,r,c,y,u,v={},w=[])=>{let f,C,A,S=0;h(d,w,(()=>0)),h(p,w,(()=>[]));const[b,M,T,L,O]=((t=1,e)=>t>1&&"getMergeableContent"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!i(t)||!i(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!i(t)||!i(e),e.setContent]:0)(u,t),m=e=>{var a;(b&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},D=async t=>(2!=S&&(S=1,await x((async()=>{try{m(await n())}catch(e){y?.(e),t&&O(t)}S=0}))),I),E=()=>(C&&(c(C),C=void 0),I),P=async t=>(1!=S&&(S=2,await x((async()=>{try{await s(M,t)}catch(t){y?.(t)}S=0}))),I),j=()=>(a(A,t.delListener),A=void 0,I),x=async(...t)=>(((t,...e)=>{t.push(...e)})(g(p,w),...t),await(async()=>{if(!g(d,w)){for(l(d,w,1);!e((t=g(p,w),f=t.shift()));)try{await f()}catch(t){y?.(t)}l(d,w,0)}var t})(),I),I={load:D,startAutoLoad:async t=>(await E().load(t),C=r((async(t,e)=>{e||t?2!=S&&(S=1,m(e??t),S=0):await D()})),I),stopAutoLoad:E,isAutoLoading:()=>!e(C),save:P,startAutoSave:async()=>(await j().save(),A=t.addDidFinishTransactionListener((()=>{const t=T();L(t)&&P(t)})),I),stopAutoSave:j,isAutoSaving:()=>!e(A),schedule:x,getStore:()=>t,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...v};return o(I)})(s,(async()=>{const t=await fetch(r);return f=u(t),c(await t.text())}),(async t=>{return await fetch(y,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?n.fromEntries([...e]):e)))});var e}),(t=>setInterval((async()=>{const a=await fetch(r,{method:"HEAD"}),n=u(a);e(f)||e(n)||n==f||(f=n,t())}),1e3*v)),(e=>t(e)),w,1,{getUrls:()=>[r,y]})};
1
+ "use strict";const t=clearInterval,e=t=>null==t,a=(t,a,n)=>e(t)?n?.():a(t),n=Object,s=t=>n.getPrototypeOf(t),r=n.keys,o=n.freeze,i=t=>(t=>!e(t)&&a(s(t),(t=>t==n.prototype||e(s(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),c=JSON.parse,y=t=>new Map(t),g=(t,e)=>t?.get(e),l=(t,a,n)=>{return e(n)?(s=t,r=a,s?.delete(r),t):t?.set(a,n);var s,r},h=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||l(t,e,a()),g(t,e)},d=y(),p=y(),u=t=>t.headers.get("ETag");exports.createRemotePersister=(s,r,y,v=5,w)=>{let f;return((t,n,s,r,c,y,u,v={},w=[])=>{let f,C,A,S=0;h(d,w,(()=>0)),h(p,w,(()=>[]));const[b,M,T,m,L]=((t=1,e)=>t>1&&"merge"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!i(t)||!i(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!i(t)||!i(e),e.setContent]:0)(u,t),O=e=>{var a;(b&&(a=e?.[0],Array.isArray(a))?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},D=async t=>(2!=S&&(S=1,await x((async()=>{try{O(await n())}catch(e){y?.(e),t&&L(t)}S=0}))),I),E=()=>(C&&(c(C),C=void 0),I),P=async t=>(1!=S&&(S=2,await x((async()=>{try{await s(M,t)}catch(t){y?.(t)}S=0}))),I),j=()=>(a(A,t.delListener),A=void 0,I),x=async(...t)=>(((t,...e)=>{t.push(...e)})(g(p,w),...t),await(async()=>{if(!g(d,w)){for(l(d,w,1);!e((t=g(p,w),f=t.shift()));)try{await f()}catch(t){y?.(t)}l(d,w,0)}var t})(),I),I={load:D,startAutoLoad:async t=>(await E().load(t),C=r((async(t,e)=>{e||t?2!=S&&(S=1,O(e??t),S=0):await D()})),I),stopAutoLoad:E,isAutoLoading:()=>!e(C),save:P,startAutoSave:async()=>(await j().save(),A=t.addDidFinishTransactionListener((()=>{const t=T();m(t)&&P(t)})),I),stopAutoSave:j,isAutoSaving:()=>!e(A),schedule:x,getStore:()=>t,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...v};return o(I)})(s,(async()=>{const t=await fetch(r);return f=u(t),c(await t.text())}),(async t=>{return await fetch(y,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?n.fromEntries([...e]):e)))});var e}),(t=>setInterval((async()=>{const a=await fetch(r,{method:"HEAD"}),n=u(a);e(f)||e(n)||n==f||(f=n,t())}),1e3*v)),(e=>t(e)),w,1,{getUrls:()=>[r,y]})};
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,o=clearInterval,c=a=>null==a,l=(a,t,e)=>c(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",g="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,L=a=>b.getPrototypeOf(a),S=b.entries,D=b.keys,I=b.freeze,M=(a=[])=>b.fromEntries(a),_=(...a)=>b.assign({},...a),P=(a,t)=>t in a,F=(a,t)=>A(S(a),(([a,e])=>t(e,a))),j=a=>b.values(a),k=a=>d(D(a)),q=a=>(a=>!c(a)&&l(L(a),(a=>a==b.prototype||c(L(a))),(()=>!0)))(a)&&0==k(a),x=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),W=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),Y=(a,t,e)=>c(e)?(R(a,t),a):a?.set(t,e),$=(a,t,e,n)=>(N(a,t)||Y(a,t,e()),H(a,t)),G=(a,t,e,n=Y)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||c(a)?a:[a]),U=(a,t)=>a?.add(t),V="TABLE",z="ALTER "+V,K="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=x();return[async()=>G(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>Y(r,t,G($(r,t,x),e,((a,t,e)=>{e!=H(a,t)&&Y(a,t,e)}),((a,t)=>Y(a,t))))),((a,t)=>Y(r,t))),async(t,e)=>((a,t)=>!c(H(H(r,a),t)))(t,e)?M(T(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!c(a)&&!q(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=J();F(o??{},(a=>A(D(a??{}),(a=>U(u,a)))));const d=O(u);if(!y&&w&&h(d)&&N(r,t))return await a("DROP "+V+m(t)),void Y(r,t);if(h(d)||N(r,t)){const n=H(r,t),i=J(B(n));await E([...A(d,(async s=>{R(i,s)||(await a(z+m(t)+"ADD"+m(s)),Y(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(z+m(t)+"DROP"+m(e)),Y(n,e))})):[]])}else await a("CREATE "+V+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+m(a))))});`),Y(r,t,x([[s,e],...A(d,(a=>[a,e]))]));if(y)c(o)?await a(K+m(t)+Z+" 1"):await E(F(o,(async(e,n)=>{c(e)?await a(K+m(t)+Z+m(s)+"=?",[n]):h(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(h(d))N(r,t)&&await a(K+m(t)+Z+" 1");else{const e=T(B(H(r,t)),(a=>a!=s)),n=[],c=[];F(o??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(c,t)})),await ta(a,t,s,e,n,i),await a(K+m(t)+Z+m(s)+"NOT IN("+ea(c)+")",c)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,o,c=!0)=>await a("INSERT "+(c?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(o)/(d(r)+1)),1)+(c?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(o,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=x(),ia=x(),ra=(a,t,e,n,s,i,r,o={},w=[])=>{let u,d,E,p=0;$(sa,w,(()=>0)),$(ia,w,(()=>[]));const[g,m,v,C,A]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!q(a)||!q(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!q(a)||!q(t),t.setContent]:0)(r,a),h=t=>{(g&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await b((async()=>{try{h(await t())}catch(t){i?.(t),a&&A(a)}p=0}))),L),N=()=>(d&&(s(d),d=void 0),L),O=async a=>(1!=p&&(p=2,await b((async()=>{try{await e(m,a)}catch(a){i?.(a)}p=0}))),L),R=()=>(l(E,a.delListener),E=void 0,L),b=async(...a)=>(f(H(ia,w),...a),await(async()=>{if(!H(sa,w)){for(Y(sa,w,1);!c((a=H(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}Y(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,h(t??a),p=0):await T()})),L),stopAutoLoad:N,isAutoLoading:()=>!c(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),L),stopAutoSave:R,isAutoSaving:()=>!c(E),schedule:b,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...o};return I(L)},oa="store",ca=(a,t,e,n,s,[i],r,o,c,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,g))[p]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,g,{[p]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[c]:()=>o},o)},la=(a,t,e,n,s,[i,r,[o,l,w]],y,u,d,m)=>{const[v,C,A,h]=aa(t,y,s,m),f=async(a,t)=>await E(W(r,(async([e,n,s,i],r)=>{t&&!P(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,g,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await h((async()=>{await v();const a=await(async()=>M(T(await E(W(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!q(a[1])))))(),t=await(async()=>o?(await C(w,g))[p]:{})();return q(a)&&c(t)?void 0:[a,t]}))),(async(a,t)=>await h((async()=>{if(await v(),c(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ga={load:0,save:0,[Ea]:t+"_values"},ma=(a,t,e,n)=>{const s=x();return F(a,((a,i)=>{const r=u(j(_(t,w(a)?{[e]:a}:a)),0,k(t));c(r[0])||n(i,r[0])||Y(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",ha=(a,e,n,s,i,r,c,l,y="getDb",d)=>{let E,p,m;const[C,A,h,T]=(a=>{const e=(a=>_(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,o=u(j(_(ga,r)),0,k(ga)),c=o[2],l=J(c);return[0,n,[ma(s,{[da]:null,[ua]:g},da,(a=>U(l,a)&&a==c)),ma(i,{[Ea]:null,[ua]:g,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>U(l,t)&&t==c)),o],l]})(e);return(C?ca:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(m??=s)||(a(),E=t,p=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=p=null,i(t)}),c,h,O(T),l,y,d)};exports.createSqliteWasmPersister=(a,t,e,n,s,i)=>ha(a,n,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),s,i,e);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",m="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",A=(a,t="")=>a.join(t),C=(a,t)=>a.map(t),h=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,L=a=>b.getPrototypeOf(a),S=b.entries,D=b.keys,I=b.freeze,_=(a=[])=>b.fromEntries(a),M=(...a)=>b.assign({},...a),P=(a,t)=>t in a,F=(a,t)=>C(S(a),(([a,e])=>t(e,a))),j=a=>b.values(a),k=a=>d(D(a)),q=a=>(a=>!o(a)&&l(L(a),(a=>a==b.prototype||o(L(a))),(()=>!0)))(a)&&0==k(a),x=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),W=(a,t)=>C([...a?.entries()??[]],(([a,e])=>t(e,a))),Y=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),$=(a,t,e,n)=>(N(a,t)||Y(a,t,e()),H(a,t)),G=(a,t,e,n=Y)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||o(a)?a:[a]),U=(a,t)=>a?.add(t),V="TABLE",z="ALTER "+V,K="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=x();return[async()=>G(r,_(await E(C(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,_(C(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>Y(r,t,G($(r,t,x),e,((a,t,e)=>{e!=H(a,t)&&Y(a,t,e)}),((a,t)=>Y(a,t))))),((a,t)=>Y(r,t))),async(t,e)=>((a,t)=>!o(H(H(r,a),t)))(t,e)?_(T(C(await a(Q+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!q(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();F(c??{},(a=>C(D(a??{}),(a=>U(u,a)))));const d=O(u);if(!y&&w&&h(d)&&N(r,t))return await a("DROP "+V+g(t)),void Y(r,t);if(h(d)||N(r,t)){const n=H(r,t),i=J(B(n));await E([...C(d,(async s=>{R(i,s)||(await a(z+g(t)+"ADD"+g(s)),Y(n,s,e))})),...!y&&l?C(O(i),(async e=>{e!=s&&(await a(z+g(t)+"DROP"+g(e)),Y(n,e))})):[]])}else await a("CREATE "+V+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${A(C(d,(a=>n+g(a))))});`),Y(r,t,x([[s,e],...C(d,(a=>[a,e]))]));if(y)o(c)?await a(K+g(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(K+g(t)+Z+g(s)+"=?",[n]):h(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(h(d))N(r,t)&&await a(K+g(t)+Z+" 1");else{const e=T(B(H(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...C(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(K+g(t)+Z+g(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+A(C(r,(a=>n+g(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+g(s)+")DO UPDATE SET"+A(C(r,(a=>g(a)+"=excluded."+g(a))),n):e),C(c,(a=>a??null))),ea=a=>A(C(a,(()=>"?")),n),na=JSON.parse,sa=x(),ia=x(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;$(sa,w,(()=>0)),$(ia,w,(()=>[]));const[m,g,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!q(a)||!q(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!q(a)||!q(t),t.setContent]:0)(r,a),h=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await b((async()=>{try{h(await t())}catch(t){i?.(t),a&&C(a)}p=0}))),L),N=()=>(d&&(s(d),d=void 0),L),O=async a=>(1!=p&&(p=2,await b((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),L),R=()=>(l(E,a.delListener),E=void 0,L),b=async(...a)=>(f(H(ia,w),...a),await(async()=>{if(!H(sa,w)){for(Y(sa,w,1);!o((a=H(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}Y(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,h(t??a),p=0):await T()})),L),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),L),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:b,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,g)=>{const[v,A,C,h]=aa(t,y,s,g),f=async(a,t)=>await E(W(r,(async([e,n,s,i],r)=>{t&&!P(a,r)||await C(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await C(w,m,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await h((async()=>{await v();const a=await(async()=>_(T(await E(W(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!q(a[1])))))(),t=await(async()=>c?(await A(w,m))[p]:{})();return q(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await h((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},ga=(a,t,e,n)=>{const s=x();return F(a,((a,i)=>{const r=u(j(M(t,w(a)?{[e]:a}:a)),0,k(t));o(r[0])||n(i,r[0])||Y(s,i,r)})),s},va="pragma ",Aa="data_version",Ca="schema_version",ha=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,p,g;const[A,C,h,T]=(a=>{const e=(a=>M(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(M(ma,r)),0,k(ma)),o=c[2],l=J(o);return[0,n,[ga(s,{[da]:null,[ua]:m},da,(a=>U(l,a)&&a==o)),ga(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>U(l,t)&&t==o)),c],l]})(e);return(A?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Aa))[0][Aa],e=(await n(va+Ca))[0][Ca],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),o,h,O(T),l,y,d)};exports.createSqliteWasmPersister=(a,t,e,n,s,i)=>ha(a,n,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),s,i,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",C=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),A=a=>0==d(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>f(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),B=a=>d(D(a)),H=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),x=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),k(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=m+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>U(r,M(await E(f(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(f(await a(m+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(f(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=W();F(c??{},(a=>f(D(a??{}),(a=>q(u,a)))));const d=O(u);if(!y&&w&&A(d)&&N(r,t))return await a("DROP "+z+v(t)),void G(r,t);if(A(d)||N(r,t)){const n=k(r,t),i=W($(n));await E([...f(d,(async s=>{R(i,s)||(await a(K+v(t)+"ADD"+v(s)),G(n,s,e))})),...!y&&l?f(O(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),G(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(f(d,(a=>n+v(a))))});`),G(r,t,Y([[s,e],...f(d,(a=>[a,e]))]));if(y)o(c)?await a(V+v(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+v(t)+Z+v(s)+"=?",[n]):A(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(A(d))N(r,t)&&await a(V+v(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...f(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+v(t)+Z+v(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+C(f(r,(a=>n+v(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+C(f(r,(a=>v(a)+"=excluded."+v(a))),n):e),f(c,(a=>a??null))),ea=a=>C(f(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[p,v,m,C,f]=((a=1,t)=>a>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),A=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await L((async()=>{try{A(await t())}catch(t){i?.(t),a&&f(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),O=async a=>(1!=g&&(g=2,await L((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(G(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,A(t??a),g=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();C(a)&&O(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,v)=>{const[m,C,f,A]=aa(t,y,s,v),h=async(a,t)=>await E(x(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await f(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await f(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await A((async()=>{await m();const a=await(async()=>M(T(await E(x(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await m(),o(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},va=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||G(s,i,r)})),s},ma="pragma ",Ca="data_version",fa="schema_version",Aa=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,v;const[C,f,A,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,B(pa)),o=c[2],l=W(o);return[0,n,[va(s,{[da]:null,[ua]:p},da,(a=>q(l,a)&&a==o)),va(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ma+Ca))[0][Ca],e=(await n(ma+fa))[0][fa],s=(await n(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(v??=s)||(a(),E=t,g=e)}catch{}},e=f,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,A,O(T),l,y,d)},Ta="change";exports.createSqlite3Persister=(a,t,e,n,s)=>Aa(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new r(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",f=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),C=a=>0==d(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),B=a=>d(D(a)),H=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),x=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),k(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=m+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>U(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(m+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(A(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=W();F(c??{},(a=>A(D(a??{}),(a=>q(u,a)))));const d=O(u);if(!y&&w&&C(d)&&N(r,t))return await a("DROP "+z+v(t)),void G(r,t);if(C(d)||N(r,t)){const n=k(r,t),i=W($(n));await E([...A(d,(async s=>{R(i,s)||(await a(K+v(t)+"ADD"+v(s)),G(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),G(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${f(A(d,(a=>n+v(a))))});`),G(r,t,Y([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+v(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+v(t)+Z+v(s)+"=?",[n]):C(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(C(d))N(r,t)&&await a(V+v(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...A(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+v(t)+Z+v(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+f(A(r,(a=>n+v(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+f(A(r,(a=>v(a)+"=excluded."+v(a))),n):e),A(c,(a=>a??null))),ea=a=>f(A(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[p,v,m,f,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),C=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await L((async()=>{try{C(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),O=async a=>(1!=g&&(g=2,await L((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(G(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,C(t??a),g=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();f(a)&&O(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,v)=>{const[m,f,A,C]=aa(t,y,s,v),h=async(a,t)=>await E(x(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await C((async()=>{await m();const a=await(async()=>M(T(await E(x(i,(async([a,t],e)=>[a,await f(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await f(w,p))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await C((async()=>{if(await m(),o(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},va=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||G(s,i,r)})),s},ma="pragma ",fa="data_version",Aa="schema_version",Ca=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,v;const[f,A,C,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,B(pa)),o=c[2],l=W(o);return[0,n,[va(s,{[da]:null,[ua]:p},da,(a=>q(l,a)&&a==o)),va(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(f?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ma+fa))[0][fa],e=(await n(ma+Aa))[0][Aa],s=(await n(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(v??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,C,O(T),l,y,d)},Ta="change";exports.createSqlite3Persister=(a,t,e,n,s)=>Ca(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new r(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),n,s,t);
@@ -1 +1 @@
1
- "use strict";var e=require("yjs");const t="t",a="v",n=e=>null==e,s=(e,t,a)=>n(e)?a?.():t(e),o=e=>e.length,r=e=>e.shift(),i=Object,c=e=>i.getPrototypeOf(e),g=i.entries,l=i.keys,u=i.freeze,d=(e=[])=>i.fromEntries(e),y=(e,t)=>t in e,p=(e,t)=>((e,t)=>e.map(t))(g(e),(([e,a])=>t(a,e))),v=e=>(e=>!n(e)&&s(c(e),(e=>e==i.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>o(l(e)))(e),h=(e,t,a)=>(y(e,t)||(e[t]=a()),e[t]),f=e=>new Map(e),w=(e,t)=>e?.get(t),S=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),C=(e,t,a)=>{return n(a)?(s=e,o=t,s?.delete(o),e):e?.set(t,a);var s,o},M=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||C(e,t,a()),w(e,t)},b=f(),A=f(),O="delete",J=e=>[e.get(t),e.get(a)],N=(t,a,s,o)=>{const r=n(a)?t:t.get(a)??t.set(a,new e.Map);let i;return p(s,((e,t)=>{o(r,t,e)&&(i=1)})),r.forEach(((e,t)=>{y(s,t)||(r.delete(t),i=1)})),n(a)||r.size||t.delete(a),i};exports.createYjsPersister=(i,c,g="tinybase",l)=>{const y=c.getMap(g);return((e,t,a,o,i,c,g,l={},d=[])=>{let y,p,h,f=0;M(b,d,(()=>0)),M(A,d,(()=>[]));const[S,O,J,N,D]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!v(e)||!v(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!v(e)||!v(t),t.setContent]:0)(g,e),L=t=>{var a;(S&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},z=async e=>(2!=f&&(f=1,await k((async()=>{try{L(await t())}catch(t){c?.(t),e&&D(e)}f=0}))),m),E=()=>(p&&(i(p),p=void 0),m),j=async e=>(1!=f&&(f=2,await k((async()=>{try{await a(O,e)}catch(e){c?.(e)}f=0}))),m),T=()=>(s(h,e.delListener),h=void 0,m),k=async(...e)=>(((e,...t)=>{e.push(...t)})(w(A,d),...e),await(async()=>{if(!w(b,d)){for(C(b,d,1);!n(y=r(w(A,d)));)try{await y()}catch(e){c?.(e)}C(b,d,0)}})(),m),m={load:z,startAutoLoad:async e=>(await E().load(e),p=o((async(e,t)=>{t||e?2!=f&&(f=1,L(t??e),f=0):await z()})),m),stopAutoLoad:E,isAutoLoading:()=>!n(p),save:j,startAutoSave:async()=>(await T().save(),h=e.addDidFinishTransactionListener((()=>{const e=J();N(e)&&j(e)})),m),stopAutoSave:T,isAutoSaving:()=>!n(h),schedule:k,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...l};return u(m)})(i,(async()=>y.size?[y.get(t).toJSON(),y.get(a).toJSON()]:void 0),(async(o,r)=>c.transact((()=>((o,r,i)=>{o.size||(o.set(t,new e.Map),o.set(a,new e.Map));const[c,g]=J(o),l=()=>{u=1};let u=1;if(s(i,(([e,t])=>{u=0,p(e,((e,t)=>u?0:n(e)?c.delete(t):s(c.get(t),(t=>p(e,((e,a)=>u?0:n(e)?t.delete(a):s(t.get(a),(t=>p(e,((e,a)=>n(e)?t.delete(a):t.set(a,e)))),l)))),l))),p(t,((e,t)=>u?0:n(e)?g.delete(t):g.set(t,e)))})),u){const[e,t]=r();N(c,void 0,e,((e,t,a)=>N(c,t,a,((e,t,a)=>N(e,t,a,((e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1})))))),N(g,void 0,t,((e,t,a)=>{g.get(t)!==a&&g.set(t,a)}))}})(y,o,r)))),(e=>{const n=n=>e(void 0,((e,n)=>{if(1==o(n)&&(i=n[0].path,0==o(i)))return[e.get(t).toJSON(),e.get(a).toJSON(),1];var i;const[c,g]=J(e),l={},u={};return((e,a)=>{e.forEach((({path:e,changes:{keys:a}})=>r(e)==t?s(r(e),(t=>{const n=h(l,t,d),o=c.get(t);s(r(e),(e=>{const t=h(n,e,d),s=o.get(e);S(a,((e,{action:a})=>t[e]=a==O?null:s.get(e)))}),(()=>S(a,((e,{action:t})=>n[e]=t==O?null:o.get(e)?.toJSON()))))}),(()=>S(a,((e,{action:t})=>l[e]=t==O?null:c.get(e)?.toJSON())))):S(a,((e,{action:t})=>u[e]=t==O?null:g.get(e)))))})(n),[l,u,1]})(y,n));return y.observeDeep(n),n}),(e=>{y.unobserveDeep(e)}),l,1,{getYDoc:()=>c})};
1
+ "use strict";var e=require("yjs");const t="t",a="v",n=e=>null==e,s=(e,t,a)=>n(e)?a?.():t(e),o=e=>e.length,r=e=>e.shift(),i=Object,c=e=>i.getPrototypeOf(e),g=i.entries,l=i.keys,u=i.freeze,d=(e=[])=>i.fromEntries(e),y=(e,t)=>t in e,p=(e,t)=>((e,t)=>e.map(t))(g(e),(([e,a])=>t(a,e))),v=e=>(e=>!n(e)&&s(c(e),(e=>e==i.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>o(l(e)))(e),h=(e,t,a)=>(y(e,t)||(e[t]=a()),e[t]),f=e=>new Map(e),w=(e,t)=>e?.get(t),S=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),C=(e,t,a)=>{return n(a)?(s=e,o=t,s?.delete(o),e):e?.set(t,a);var s,o},A=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||C(e,t,a()),w(e,t)},M=f(),b=f(),O="delete",J=e=>[e.get(t),e.get(a)],N=(t,a,s,o)=>{const r=n(a)?t:t.get(a)??t.set(a,new e.Map);let i;return p(s,((e,t)=>{o(r,t,e)&&(i=1)})),r.forEach(((e,t)=>{y(s,t)||(r.delete(t),i=1)})),n(a)||r.size||t.delete(a),i};exports.createYjsPersister=(i,c,g="tinybase",l)=>{const y=c.getMap(g);return((e,t,a,o,i,c,g,l={},d=[])=>{let y,p,h,f=0;A(M,d,(()=>0)),A(b,d,(()=>[]));const[S,O,J,N,D]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!v(e)||!v(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!v(e)||!v(t),t.setContent]:0)(g,e),L=t=>{var a;(S&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},z=async e=>(2!=f&&(f=1,await T((async()=>{try{L(await t())}catch(t){c?.(t),e&&D(e)}f=0}))),k),E=()=>(p&&(i(p),p=void 0),k),j=async e=>(1!=f&&(f=2,await T((async()=>{try{await a(O,e)}catch(e){c?.(e)}f=0}))),k),m=()=>(s(h,e.delListener),h=void 0,k),T=async(...e)=>(((e,...t)=>{e.push(...t)})(w(b,d),...e),await(async()=>{if(!w(M,d)){for(C(M,d,1);!n(y=r(w(b,d)));)try{await y()}catch(e){c?.(e)}C(M,d,0)}})(),k),k={load:z,startAutoLoad:async e=>(await E().load(e),p=o((async(e,t)=>{t||e?2!=f&&(f=1,L(t??e),f=0):await z()})),k),stopAutoLoad:E,isAutoLoading:()=>!n(p),save:j,startAutoSave:async()=>(await m().save(),h=e.addDidFinishTransactionListener((()=>{const e=J();N(e)&&j(e)})),k),stopAutoSave:m,isAutoSaving:()=>!n(h),schedule:T,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...l};return u(k)})(i,(async()=>y.size?[y.get(t).toJSON(),y.get(a).toJSON()]:void 0),(async(o,r)=>c.transact((()=>((o,r,i)=>{o.size||(o.set(t,new e.Map),o.set(a,new e.Map));const[c,g]=J(o),l=()=>{u=1};let u=1;if(s(i,(([e,t])=>{u=0,p(e,((e,t)=>u?0:n(e)?c.delete(t):s(c.get(t),(t=>p(e,((e,a)=>u?0:n(e)?t.delete(a):s(t.get(a),(t=>p(e,((e,a)=>n(e)?t.delete(a):t.set(a,e)))),l)))),l))),p(t,((e,t)=>u?0:n(e)?g.delete(t):g.set(t,e)))})),u){const[e,t]=r();N(c,void 0,e,((e,t,a)=>N(c,t,a,((e,t,a)=>N(e,t,a,((e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1})))))),N(g,void 0,t,((e,t,a)=>{g.get(t)!==a&&g.set(t,a)}))}})(y,o,r)))),(e=>{const n=n=>e(void 0,((e,n)=>{if(1==o(n)&&(i=n[0].path,0==o(i)))return[e.get(t).toJSON(),e.get(a).toJSON(),1];var i;const[c,g]=J(e),l={},u={};return((e,a)=>{e.forEach((({path:e,changes:{keys:a}})=>r(e)==t?s(r(e),(t=>{const n=h(l,t,d),o=c.get(t);s(r(e),(e=>{const t=h(n,e,d),s=o.get(e);S(a,((e,{action:a})=>t[e]=a==O?null:s.get(e)))}),(()=>S(a,((e,{action:t})=>n[e]=t==O?null:o.get(e)?.toJSON()))))}),(()=>S(a,((e,{action:t})=>l[e]=t==O?null:c.get(e)?.toJSON())))):S(a,((e,{action:t})=>u[e]=t==O?null:g.get(e)))))})(n),[l,u,1]})(y,n));return y.observeDeep(n),n}),(e=>{y.unobserveDeep(e)}),l,1,{getYDoc:()=>c})};
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),n=a.keys,r=a.freeze,o=r=>(n=>!t(n)&&e(s(n),(e=>e==a.prototype||t(s(e))),(()=>!0)))(r)&&0==(t=>n(t).length)(r),i=t=>new Map(t),c=(t,e)=>t?.get(e),g=(e,a,s)=>{return t(s)?(n=e,r=a,n?.delete(r),e):e?.set(a,s);var n,r},y=(t,e,a,s)=>{var n,r;return n=t,r=e,n?.has(r)||g(t,e,a()),c(t,e)},l=i(),u=i();exports.createCustomPersister=(a,s,n,i,d,h,p,v={},C=[])=>{let w,A,b,f=0;y(l,C,(()=>0)),y(u,C,(()=>[]));const[M,S,L,T,D]=((t=1,e)=>t>1&&"getMergeableContent"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!o(t)||!o(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!o(t)||!o(e),e.setContent]:0)(p,a),O=t=>{var e;(M&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},P=async t=>(2!=f&&(f=1,await x((async()=>{try{O(await s())}catch(e){h?.(e),t&&D(t)}f=0}))),z),j=()=>(A&&(d(A),A=void 0),z),k=async t=>(1!=f&&(f=2,await x((async()=>{try{await n(S,t)}catch(t){h?.(t)}f=0}))),z),m=()=>(e(b,a.delListener),b=void 0,z),x=async(...e)=>(((t,...e)=>{t.push(...e)})(c(u,C),...e),await(async()=>{if(!c(l,C)){for(g(l,C,1);!t((e=c(u,C),w=e.shift()));)try{await w()}catch(t){h?.(t)}g(l,C,0)}var e})(),z),z={load:P,startAutoLoad:async t=>(await j().load(t),A=i((async(t,e)=>{e||t?2!=f&&(f=1,O(e??t),f=0):await P()})),z),stopAutoLoad:j,isAutoLoading:()=>!t(A),save:k,startAutoSave:async()=>(await m().save(),b=a.addDidFinishTransactionListener((()=>{const t=L();T(t)&&k(t)})),z),stopAutoSave:m,isAutoSaving:()=>!t(b),schedule:x,getStore:()=>a,destroy:()=>j().stopAutoSave(),getStats:()=>({}),...v};return r(z)};
1
+ "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),n=a.keys,r=a.freeze,o=r=>(n=>!t(n)&&e(s(n),(e=>e==a.prototype||t(s(e))),(()=>!0)))(r)&&0==(t=>n(t).length)(r),i=t=>new Map(t),c=(t,e)=>t?.get(e),g=(e,a,s)=>{return t(s)?(n=e,r=a,n?.delete(r),e):e?.set(a,s);var n,r},y=(t,e,a,s)=>{var n,r;return n=t,r=e,n?.has(r)||g(t,e,a()),c(t,e)},l=i(),u=i();exports.createCustomPersister=(a,s,n,i,d,h,p,v={},C=[])=>{let w,A,f,S=0;y(l,C,(()=>0)),y(u,C,(()=>[]));const[b,L,M,T,m]=((t=1,e)=>t>1&&"merge"in e?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!o(t)||!o(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!o(t)||!o(e),e.setContent]:0)(p,a),D=t=>{var e;(b&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},O=async t=>(2!=S&&(S=1,await x((async()=>{try{D(await s())}catch(e){h?.(e),t&&m(t)}S=0}))),z),P=()=>(A&&(d(A),A=void 0),z),j=async t=>(1!=S&&(S=2,await x((async()=>{try{await n(L,t)}catch(t){h?.(t)}S=0}))),z),k=()=>(e(f,a.delListener),f=void 0,z),x=async(...e)=>(((t,...e)=>{t.push(...e)})(c(u,C),...e),await(async()=>{if(!c(l,C)){for(g(l,C,1);!t((e=c(u,C),w=e.shift()));)try{await w()}catch(t){h?.(t)}g(l,C,0)}var e})(),z),z={load:O,startAutoLoad:async t=>(await P().load(t),A=i((async(t,e)=>{e||t?2!=S&&(S=1,D(e??t),S=0):await O()})),z),stopAutoLoad:P,isAutoLoading:()=>!t(A),save:j,startAutoSave:async()=>(await k().save(),f=a.addDidFinishTransactionListener((()=>{const t=M();T(t)&&j(t)})),z),stopAutoSave:k,isAutoSaving:()=>!t(f),schedule:x,getStore:()=>a,destroy:()=>P().stopAutoSave(),getStats:()=>({}),...v};return r(z)};
Binary file
@@ -1 +1 @@
1
- "use strict";const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=Object,s=e=>n.getPrototypeOf(e),o=n.entries,r=n.keys,i=n.freeze,c=(e,t)=>((e,t)=>e.forEach(t))(o(e),(([e,a])=>t(a,e))),l=e=>(e=>!t(e)&&a(s(e),(e=>e==n.prototype||t(s(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),g=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),u=(e,t)=>e?.delete(t),y=e=>new Map(e),d=(e,t)=>e?.get(t),h=(e,a,n)=>t(n)?(u(e,a),e):e?.set(a,n),w=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||h(e,t,a()),d(e,t)};new globalThis.TextEncoder;const v=(e,t)=>t?[e,t]:[e],f=(e,t)=>((e??"")>(t??"")?e:t)??"",p=(e="")=>v(((e=[])=>n.fromEntries(e))(),e),b=y(),A=y(),M="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;y((C=(e,t)=>[e,t],M.map(C)));const S=(e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+M[63&t]),""),L=y();exports.createLocalSynchronizer=(n,s)=>{const o=S();return((n,s,o,r,M,C,L={})=>{let T;const m=y();o(((e,o,r,i)=>{0==r?a(d(m,o),(([a,n])=>t(a)||a==e?n(i,e):0)):2==r&&z.isAutoLoading()?E(e,i).then((e=>{T?.(void 0,e)})):3==r&&z.isAutoLoading()?T?.(void 0,i):a(1==r&&z.isAutoSaving()?n.getMergeableContentHashes():4==r?n.getMergeableTableDiff(i):5==r?n.getMergeableRowDiff(i):6==r?n.getMergeableCellDiff(i):7==r?n.getMergeableValueDiff(i):void 0,(t=>{s(e,o,0,t)}))}));const H=async(t,a,n="")=>new e(((e,o)=>{const r=S(),i=setTimeout((()=>{u(m,r),o(`No response from ${t??"anyone"} to '${a}'`)}),1e3*M);h(m,r,[t,(t,a)=>{clearTimeout(i),u(m,r),e([t,a])}]),s(t,r,a,n)})),D=(e,[t,a])=>{c(t,(([t,a],n)=>{const s=g(e[0],n,p);c(t,(([e,t],a)=>{const n=g(s[0],a,p);c(e,(([e,t],a)=>n[0][a]=v(e,t))),n[1]=f(n[1],t)})),s[1]=f(s[1],a)})),e[1]=f(e[1],a)},E=async(e=null,a)=>{t(a)&&([a,e]=await H(e,1));const[s,o]=a,[r,i]=n.getMergeableContentHashes();let c=p();if(r!=s){const[t,a]=(await H(e,4,n.getMergeableTableHashes()))[0];if(c=t,!l(a)){const[t,s]=(await H(e,5,n.getMergeableRowHashes(a)))[0];if(D(c,t),!l(s)){const t=(await H(e,6,n.getMergeableCellHashes(s)))[0];D(c,t)}}}return[c,i==o?p():(await H(e,7,n.getMergeableValuesHashes()))[0],1]},z=((e,n,s,o,r,c,g,u={},y=[])=>{let v,f,p,M=0;w(b,y,(()=>0)),w(A,y,(()=>[]));const[C,S,L,T,m]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!l(e)||!l(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!l(e)||!l(t),t.setContent]:0)(g,e),H=t=>{var a;(C&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=M&&(M=1,await V((async()=>{try{H(await n())}catch(t){c?.(t),e&&m(e)}M=0}))),x),E=()=>(f&&(r(f),f=void 0),x),z=async e=>(1!=M&&(M=2,await V((async()=>{try{await s(S,e)}catch(e){c?.(e)}M=0}))),x),R=()=>(a(p,e.delListener),p=void 0,x),V=async(...e)=>(((e,...t)=>{e.push(...t)})(d(A,y),...e),await(async()=>{if(!d(b,y)){for(h(b,y,1);!t((e=d(A,y),v=e.shift()));)try{await v()}catch(e){c?.(e)}h(b,y,0)}var e})(),x),x={load:D,startAutoLoad:async e=>(await E().load(e),f=o((async(e,t)=>{t||e?2!=M&&(M=1,H(t??e),M=0):await D()})),x),stopAutoLoad:E,isAutoLoading:()=>!t(f),save:z,startAutoSave:async()=>(await R().save(),p=e.addDidFinishTransactionListener((()=>{const e=L();T(e)&&z(e)})),x),stopAutoSave:R,isAutoSaving:()=>!t(p),schedule:V,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...u};return i(x)})(n,(async()=>{const e=await E();return l(e[0][0])&&l(e[1][0])?void 0:e}),(async(e,t)=>{t?s(null,null,3,t):s(null,null,2,n.getMergeableContentHashes())}),(e=>T=e),(()=>T=void 0),C,2,{startSync:async e=>await(await z.startAutoLoad(e)).startAutoSave(),stopSync:()=>z.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),z.stopSync()),getSynchronizerStats:()=>({}),...L});return z})(n,((e,a,n,s)=>{setTimeout((()=>{return t(e)?(r=L,r?.forEach(((e,t)=>{return r=e,t!=o?r(o,a,n,s):0;var r}))):d(L,e)?.(o,a,n,s);var r}),0)}),(e=>{h(L,o,e)}),(()=>{u(L,o)}),.01,s)};
1
+ "use strict";const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=Object,s=e=>n.getPrototypeOf(e),o=n.entries,r=n.keys,i=n.freeze,c=(e,t)=>((e,t)=>e.forEach(t))(o(e),(([e,a])=>t(a,e))),l=e=>(e=>!t(e)&&a(s(e),(e=>e==n.prototype||t(s(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),g=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),u=(e,t)=>e?.delete(t),y=e=>new Map(e),d=(e,t)=>e?.get(t),h=(e,a,n)=>t(n)?(u(e,a),e):e?.set(a,n),w=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||h(e,t,a()),d(e,t)};new globalThis.TextEncoder;const v=(e,t)=>t?[e,t]:[e],f=(e,t)=>((e??"")>(t??"")?e:t)??"",p=(e="")=>v(((e=[])=>n.fromEntries(e))(),e),b=y(),A=y(),M="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;y((C=(e,t)=>[e,t],M.map(C)));const S=(e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+M[63&t]),""),L=y();exports.createLocalSynchronizer=(n,s)=>{const o=S();return((n,s,o,r,M,C,L={})=>{let T;const m=y();o(((e,o,r,i)=>{0==r?a(d(m,o),(([a,n])=>t(a)||a==e?n(i,e):0)):2==r&&z.isAutoLoading()?E(e,i).then((e=>{T?.(void 0,e)})):3==r&&z.isAutoLoading()?T?.(void 0,i):a(1==r&&z.isAutoSaving()?n.getMergeableContentHashes():4==r?n.getMergeableTableDiff(i):5==r?n.getMergeableRowDiff(i):6==r?n.getMergeableCellDiff(i):7==r?n.getMergeableValueDiff(i):void 0,(t=>{s(e,o,0,t)}))}));const H=async(t,a,n="")=>new e(((e,o)=>{const r=S(),i=setTimeout((()=>{u(m,r),o(`No response from ${t??"anyone"} to '${a}'`)}),1e3*M);h(m,r,[t,(t,a)=>{clearTimeout(i),u(m,r),e([t,a])}]),s(t,r,a,n)})),D=(e,[t,a])=>{c(t,(([t,a],n)=>{const s=g(e[0],n,p);c(t,(([e,t],a)=>{const n=g(s[0],a,p);c(e,(([e,t],a)=>n[0][a]=v(e,t))),n[1]=f(n[1],t)})),s[1]=f(s[1],a)})),e[1]=f(e[1],a)},E=async(e=null,a)=>{t(a)&&([a,e]=await H(e,1));const[s,o]=a,[r,i]=n.getMergeableContentHashes();let c=p();if(r!=s){const[t,a]=(await H(e,4,n.getMergeableTableHashes()))[0];if(c=t,!l(a)){const[t,s]=(await H(e,5,n.getMergeableRowHashes(a)))[0];if(D(c,t),!l(s)){const t=(await H(e,6,n.getMergeableCellHashes(s)))[0];D(c,t)}}}return[c,i==o?p():(await H(e,7,n.getMergeableValuesHashes()))[0],1]},z=((e,n,s,o,r,c,g,u={},y=[])=>{let v,f,p,M=0;w(b,y,(()=>0)),w(A,y,(()=>[]));const[C,S,L,T,m]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!l(e)||!l(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!l(e)||!l(t),t.setContent]:0)(g,e),H=t=>{var a;(C&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=M&&(M=1,await V((async()=>{try{H(await n())}catch(t){c?.(t),e&&m(e)}M=0}))),x),E=()=>(f&&(r(f),f=void 0),x),z=async e=>(1!=M&&(M=2,await V((async()=>{try{await s(S,e)}catch(e){c?.(e)}M=0}))),x),R=()=>(a(p,e.delListener),p=void 0,x),V=async(...e)=>(((e,...t)=>{e.push(...t)})(d(A,y),...e),await(async()=>{if(!d(b,y)){for(h(b,y,1);!t((e=d(A,y),v=e.shift()));)try{await v()}catch(e){c?.(e)}h(b,y,0)}var e})(),x),x={load:D,startAutoLoad:async e=>(await E().load(e),f=o((async(e,t)=>{t||e?2!=M&&(M=1,H(t??e),M=0):await D()})),x),stopAutoLoad:E,isAutoLoading:()=>!t(f),save:z,startAutoSave:async()=>(await R().save(),p=e.addDidFinishTransactionListener((()=>{const e=L();T(e)&&z(e)})),x),stopAutoSave:R,isAutoSaving:()=>!t(p),schedule:V,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...u};return i(x)})(n,(async()=>{const e=await E();return l(e[0][0])&&l(e[1][0])?void 0:e}),(async(e,t)=>{t?s(null,null,3,t):s(null,null,2,n.getMergeableContentHashes())}),(e=>T=e),(()=>T=void 0),C,2,{startSync:async e=>await(await z.startAutoLoad(e)).startAutoSave(),stopSync:()=>z.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),z.stopSync()),getSynchronizerStats:()=>({}),...L});return z})(n,((e,a,n,s)=>{setTimeout((()=>{return t(e)?(r=L,r?.forEach(((e,t)=>{return r=e,t!=o?r(o,a,n,s):0;var r}))):d(L,e)?.(o,a,n,s);var r}),0)}),(e=>{h(L,o,e)}),(()=>{u(L,o)}),.01,s)};
@@ -1 +1 @@
1
- "use strict";const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=(e,t,a)=>e.slice(t,a),s=t=>new e(t),o=Object,r=e=>o.getPrototypeOf(e),i=o.entries,c=o.keys,l=o.freeze,g=(e,t)=>((e,t)=>e.forEach(t))(i(e),(([e,a])=>t(a,e))),u=e=>(e=>!t(e)&&a(r(e),(e=>e==o.prototype||t(r(e))),(()=>!0)))(e)&&0==(e=>c(e).length)(e),y=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),d=(e,t)=>e?.delete(t),h=e=>new Map(e),f=(e,t)=>e?.get(t),v=(e,a,n)=>t(n)?(d(e,a),e):e?.set(a,n),p=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||v(e,t,a()),f(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],b=(e,t)=>((e??"")>(t??"")?e:t)??"",S=(e="")=>w(((e=[])=>o.fromEntries(e))(),e),A=h(),M=h(),C="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var L;h((L=(e,t)=>[e,t],C.map(L)));exports.createWsSynchronizer=async(e,o,r=1,i)=>{let c;const L=(e,t)=>o.addEventListener(e,t),T=((e,n,o,r,i,c,L={})=>{let T;const m=h();o(((s,o,r,i)=>{0==r?a(f(m,o),(([e,a])=>t(e)||e==s?a(i,s):0)):2==r&&E.isAutoLoading()?O(s,i).then((e=>{T?.(void 0,e)})):3==r&&E.isAutoLoading()?T?.(void 0,i):a(1==r&&E.isAutoSaving()?e.getMergeableContentHashes():4==r?e.getMergeableTableDiff(i):5==r?e.getMergeableRowDiff(i):6==r?e.getMergeableCellDiff(i):7==r?e.getMergeableValueDiff(i):void 0,(e=>{n(s,o,0,e)}))}));const H=async(e,t,a="")=>s(((s,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+C[63&t]),""))(),c=setTimeout((()=>{d(m,r),o(`No response from ${e??"anyone"} to '${t}'`)}),1e3*i);v(m,r,[e,(e,t)=>{clearTimeout(c),d(m,r),s([e,t])}]),n(e,r,t,a)})),D=(e,[t,a])=>{g(t,(([t,a],n)=>{const s=y(e[0],n,S);g(t,(([e,t],a)=>{const n=y(s[0],a,S);g(e,(([e,t],a)=>n[0][a]=w(e,t))),n[1]=b(n[1],t)})),s[1]=b(s[1],a)})),e[1]=b(e[1],a)},O=async(a=null,n)=>{t(n)&&([n,a]=await H(a,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let c=S();if(r!=s){const[t,n]=(await H(a,4,e.getMergeableTableHashes()))[0];if(c=t,!u(n)){const[t,s]=(await H(a,5,e.getMergeableRowHashes(n)))[0];if(D(c,t),!u(s)){const t=(await H(a,6,e.getMergeableCellHashes(s)))[0];D(c,t)}}}return[c,i==o?S():(await H(a,7,e.getMergeableValuesHashes()))[0],1]},E=((e,n,s,o,r,i,c,g={},y=[])=>{let d,h,w,b=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,L,T,m]=((e=1,t)=>e>1&&"getMergeableContent"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!u(e)||!u(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!u(e)||!u(t),t.setContent]:0)(c,e),H=t=>{var a;(S&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=b&&(b=1,await x((async()=>{try{H(await n())}catch(t){i?.(t),e&&m(e)}b=0}))),z),O=()=>(h&&(r(h),h=void 0),z),E=async e=>(1!=b&&(b=2,await x((async()=>{try{await s(C,e)}catch(e){i?.(e)}b=0}))),z),N=()=>(a(w,e.delListener),w=void 0,z),x=async(...e)=>(((e,...t)=>{e.push(...t)})(f(M,y),...e),await(async()=>{if(!f(A,y)){for(v(A,y,1);!t((e=f(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}v(A,y,0)}var e})(),z),z={load:D,startAutoLoad:async e=>(await O().load(e),h=o((async(e,t)=>{t||e?2!=b&&(b=1,H(t??e),b=0):await D()})),z),stopAutoLoad:O,isAutoLoading:()=>!t(h),save:E,startAutoSave:async()=>(await N().save(),w=e.addDidFinishTransactionListener((()=>{const e=L();T(e)&&E(e)})),z),stopAutoSave:N,isAutoSaving:()=>!t(w),schedule:x,getStore:()=>e,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...g};return l(z)})(e,(async()=>{const e=await O();return u(e[0][0])&&u(e[1][0])?void 0:e}),(async(t,a)=>{a?n(null,null,3,a):n(null,null,2,e.getMergeableContentHashes())}),(e=>T=e),(()=>T=void 0),c,2,{startSync:async e=>await(await E.startAutoLoad(e)).startAutoSave(),stopSync:()=>E.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),E.stopSync()),getSynchronizerStats:()=>({}),...L});return E})(e,((e,...t)=>{o.send((e??"")+"\n"+JSON.stringify(t,((e,t)=>void 0===t?"":t)))}),(e=>{c=e}),(()=>{o.close()}),r,i,{getWebSocket:()=>o});return L("message",(({data:e})=>{if(!t(c)){const t=e.toString("utf8").indexOf("\n");-1!==t&&c(n(e,0,t),...(a=n(e,t+1),JSON.parse(a,((e,t)=>""===t?void 0:t))))}var a})),s(((e,t)=>{o.readyState!=o.OPEN?(L("error",t),L("open",(()=>e(T)))):e(T)}))};
1
+ "use strict";const e=Promise,t=e=>null==e,a=(e,a,n)=>t(e)?n?.():a(e),n=(e,t,a)=>e.slice(t,a),s=t=>new e(t),o=Object,r=e=>o.getPrototypeOf(e),i=o.entries,c=o.keys,l=o.freeze,g=(e,t)=>((e,t)=>e.forEach(t))(i(e),(([e,a])=>t(a,e))),u=e=>(e=>!t(e)&&a(r(e),(e=>e==o.prototype||t(r(e))),(()=>!0)))(e)&&0==(e=>c(e).length)(e),y=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),d=(e,t)=>e?.delete(t),h=e=>new Map(e),f=(e,t)=>e?.get(t),v=(e,a,n)=>t(n)?(d(e,a),e):e?.set(a,n),p=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||v(e,t,a()),f(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],b=(e,t)=>((e??"")>(t??"")?e:t)??"",S=(e="")=>w(((e=[])=>o.fromEntries(e))(),e),A=h(),M=h(),C="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var L;h((L=(e,t)=>[e,t],C.map(L)));exports.createWsSynchronizer=async(e,o,r=1,i)=>{let c;const L=(e,t)=>o.addEventListener(e,t),m=((e,n,o,r,i,c,L={})=>{let m;const T=h();o(((s,o,r,i)=>{0==r?a(f(T,o),(([e,a])=>t(e)||e==s?a(i,s):0)):2==r&&E.isAutoLoading()?O(s,i).then((e=>{m?.(void 0,e)})):3==r&&E.isAutoLoading()?m?.(void 0,i):a(1==r&&E.isAutoSaving()?e.getMergeableContentHashes():4==r?e.getMergeableTableDiff(i):5==r?e.getMergeableRowDiff(i):6==r?e.getMergeableCellDiff(i):7==r?e.getMergeableValueDiff(i):void 0,(e=>{n(s,o,0,e)}))}));const H=async(e,t,a="")=>s(((s,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+C[63&t]),""))(),c=setTimeout((()=>{d(T,r),o(`No response from ${e??"anyone"} to '${t}'`)}),1e3*i);v(T,r,[e,(e,t)=>{clearTimeout(c),d(T,r),s([e,t])}]),n(e,r,t,a)})),D=(e,[t,a])=>{g(t,(([t,a],n)=>{const s=y(e[0],n,S);g(t,(([e,t],a)=>{const n=y(s[0],a,S);g(e,(([e,t],a)=>n[0][a]=w(e,t))),n[1]=b(n[1],t)})),s[1]=b(s[1],a)})),e[1]=b(e[1],a)},O=async(a=null,n)=>{t(n)&&([n,a]=await H(a,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let c=S();if(r!=s){const[t,n]=(await H(a,4,e.getMergeableTableHashes()))[0];if(c=t,!u(n)){const[t,s]=(await H(a,5,e.getMergeableRowHashes(n)))[0];if(D(c,t),!u(s)){const t=(await H(a,6,e.getMergeableCellHashes(s)))[0];D(c,t)}}}return[c,i==o?S():(await H(a,7,e.getMergeableValuesHashes()))[0],1]},E=((e,n,s,o,r,i,c,g={},y=[])=>{let d,h,w,b=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,L,m,T]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!u(e)||!u(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!u(e)||!u(t),t.setContent]:0)(c,e),H=t=>{var a;(S&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async e=>(2!=b&&(b=1,await x((async()=>{try{H(await n())}catch(t){i?.(t),e&&T(e)}b=0}))),z),O=()=>(h&&(r(h),h=void 0),z),E=async e=>(1!=b&&(b=2,await x((async()=>{try{await s(C,e)}catch(e){i?.(e)}b=0}))),z),N=()=>(a(w,e.delListener),w=void 0,z),x=async(...e)=>(((e,...t)=>{e.push(...t)})(f(M,y),...e),await(async()=>{if(!f(A,y)){for(v(A,y,1);!t((e=f(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}v(A,y,0)}var e})(),z),z={load:D,startAutoLoad:async e=>(await O().load(e),h=o((async(e,t)=>{t||e?2!=b&&(b=1,H(t??e),b=0):await D()})),z),stopAutoLoad:O,isAutoLoading:()=>!t(h),save:E,startAutoSave:async()=>(await N().save(),w=e.addDidFinishTransactionListener((()=>{const e=L();m(e)&&E(e)})),z),stopAutoSave:N,isAutoSaving:()=>!t(w),schedule:x,getStore:()=>e,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...g};return l(z)})(e,(async()=>{const e=await O();return u(e[0][0])&&u(e[1][0])?void 0:e}),(async(t,a)=>{a?n(null,null,3,a):n(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),c,2,{startSync:async e=>await(await E.startAutoLoad(e)).startAutoSave(),stopSync:()=>E.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),E.stopSync()),getSynchronizerStats:()=>({}),...L});return E})(e,((e,...t)=>{o.send((e??"")+"\n"+JSON.stringify(t,((e,t)=>void 0===t?"":t)))}),(e=>{c=e}),(()=>{o.close()}),r,i,{getWebSocket:()=>o});return L("message",(({data:e})=>{if(!t(c)){const t=e.toString("utf8").indexOf("\n");-1!==t&&c(n(e,0,t),...(a=n(e,t+1),JSON.parse(a,((e,t)=>""===t?void 0:t))))}var a})),s(((e,t)=>{o.readyState!=o.OPEN?(L("error",t),L("open",(()=>e(m)))):e(m)}))};