tinybase 5.0.0-beta.17 → 5.0.0-beta.18

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 (357) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -1
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  20. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-powersync.cjs +1 -1
  24. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  26. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  30. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  32. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  33. package/lib/cjs/persisters.cjs +1 -1
  34. package/lib/cjs/persisters.cjs.gz +0 -0
  35. package/lib/cjs/store.cjs +1 -1
  36. package/lib/cjs/store.cjs.gz +0 -0
  37. package/lib/cjs/synchronizers/synchronizer-local.cjs +1 -1
  38. package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
  39. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -1
  40. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  41. package/lib/cjs/synchronizers.cjs +1 -1
  42. package/lib/cjs/synchronizers.cjs.gz +0 -0
  43. package/lib/cjs/tinybase.cjs +1 -1
  44. package/lib/cjs/tinybase.cjs.gz +0 -0
  45. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  46. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  47. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  48. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  78. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters.cjs +1 -1
  80. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  81. package/lib/cjs-es6/store.cjs +1 -1
  82. package/lib/cjs-es6/store.cjs.gz +0 -0
  83. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -1
  84. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
  85. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -1
  86. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  87. package/lib/cjs-es6/synchronizers.cjs +1 -1
  88. package/lib/cjs-es6/synchronizers.cjs.gz +0 -0
  89. package/lib/cjs-es6/tinybase.cjs +1 -1
  90. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  91. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  92. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  93. package/lib/debug/mergeable-store.js +4 -1
  94. package/lib/debug/persisters/persister-automerge.js +5 -3
  95. package/lib/debug/persisters/persister-browser.js +5 -3
  96. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +5 -3
  97. package/lib/debug/persisters/persister-electric-sql.js +5 -3
  98. package/lib/debug/persisters/persister-expo-sqlite-next.js +5 -3
  99. package/lib/debug/persisters/persister-expo-sqlite.js +5 -3
  100. package/lib/debug/persisters/persister-file.js +5 -3
  101. package/lib/debug/persisters/persister-indexed-db.js +5 -3
  102. package/lib/debug/persisters/persister-libsql.js +5 -3
  103. package/lib/debug/persisters/persister-partykit-client.js +5 -3
  104. package/lib/debug/persisters/persister-powersync.js +5 -3
  105. package/lib/debug/persisters/persister-remote.js +5 -3
  106. package/lib/debug/persisters/persister-sqlite-wasm.js +5 -3
  107. package/lib/debug/persisters/persister-sqlite3.js +5 -3
  108. package/lib/debug/persisters/persister-yjs.js +5 -3
  109. package/lib/debug/persisters.js +5 -3
  110. package/lib/debug/store.js +1 -0
  111. package/lib/debug/synchronizers/synchronizer-local.js +5 -3
  112. package/lib/debug/synchronizers/synchronizer-ws-client.js +5 -3
  113. package/lib/debug/synchronizers.js +5 -3
  114. package/lib/debug/tinybase.js +9 -4
  115. package/lib/debug/ui-react-dom.js +7 -4
  116. package/lib/es6/mergeable-store.js +1 -1
  117. package/lib/es6/mergeable-store.js.gz +0 -0
  118. package/lib/es6/persisters/persister-automerge.js +1 -1
  119. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  120. package/lib/es6/persisters/persister-browser.js +1 -1
  121. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  122. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  123. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  124. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  125. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  126. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  127. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  128. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  129. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  130. package/lib/es6/persisters/persister-file.js +1 -1
  131. package/lib/es6/persisters/persister-file.js.gz +0 -0
  132. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  133. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  134. package/lib/es6/persisters/persister-libsql.js +1 -1
  135. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  136. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  137. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  138. package/lib/es6/persisters/persister-powersync.js +1 -1
  139. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  140. package/lib/es6/persisters/persister-remote.js +1 -1
  141. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  142. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  143. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  144. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  145. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  146. package/lib/es6/persisters/persister-yjs.js +1 -1
  147. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  148. package/lib/es6/persisters.js +1 -1
  149. package/lib/es6/persisters.js.gz +0 -0
  150. package/lib/es6/store.js +1 -1
  151. package/lib/es6/store.js.gz +0 -0
  152. package/lib/es6/synchronizers/synchronizer-local.js +1 -1
  153. package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
  154. package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -1
  155. package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  156. package/lib/es6/synchronizers.js +1 -1
  157. package/lib/es6/synchronizers.js.gz +0 -0
  158. package/lib/es6/tinybase.js +1 -1
  159. package/lib/es6/tinybase.js.gz +0 -0
  160. package/lib/es6/ui-react-dom-debug.js +1 -1
  161. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  162. package/lib/mergeable-store.js +1 -1
  163. package/lib/mergeable-store.js.gz +0 -0
  164. package/lib/persisters/persister-automerge.js +1 -1
  165. package/lib/persisters/persister-automerge.js.gz +0 -0
  166. package/lib/persisters/persister-browser.js +1 -1
  167. package/lib/persisters/persister-browser.js.gz +0 -0
  168. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  169. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  170. package/lib/persisters/persister-electric-sql.js +1 -1
  171. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  172. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  173. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  174. package/lib/persisters/persister-expo-sqlite.js +1 -1
  175. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  176. package/lib/persisters/persister-file.js +1 -1
  177. package/lib/persisters/persister-file.js.gz +0 -0
  178. package/lib/persisters/persister-indexed-db.js +1 -1
  179. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  180. package/lib/persisters/persister-libsql.js +1 -1
  181. package/lib/persisters/persister-libsql.js.gz +0 -0
  182. package/lib/persisters/persister-partykit-client.js +1 -1
  183. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  184. package/lib/persisters/persister-powersync.js +1 -1
  185. package/lib/persisters/persister-powersync.js.gz +0 -0
  186. package/lib/persisters/persister-remote.js +1 -1
  187. package/lib/persisters/persister-remote.js.gz +0 -0
  188. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  189. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  190. package/lib/persisters/persister-sqlite3.js +1 -1
  191. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  192. package/lib/persisters/persister-yjs.js +1 -1
  193. package/lib/persisters/persister-yjs.js.gz +0 -0
  194. package/lib/persisters.js +1 -1
  195. package/lib/persisters.js.gz +0 -0
  196. package/lib/store.js +1 -1
  197. package/lib/store.js.gz +0 -0
  198. package/lib/synchronizers/synchronizer-local.js +1 -1
  199. package/lib/synchronizers/synchronizer-local.js.gz +0 -0
  200. package/lib/synchronizers/synchronizer-ws-client.js +1 -1
  201. package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
  202. package/lib/synchronizers.js +1 -1
  203. package/lib/synchronizers.js.gz +0 -0
  204. package/lib/tinybase.js +1 -1
  205. package/lib/tinybase.js.gz +0 -0
  206. package/lib/types/checkpoints.d.ts +50 -3
  207. package/lib/types/common.d.ts +4 -0
  208. package/lib/types/indexes.d.ts +58 -14
  209. package/lib/types/mergeable-store.d.ts +9 -0
  210. package/lib/types/metrics.d.ts +46 -7
  211. package/lib/types/persisters/persister-automerge.d.ts +17 -4
  212. package/lib/types/persisters/persister-browser.d.ts +12 -0
  213. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +12 -0
  214. package/lib/types/persisters/persister-electric-sql.d.ts +18 -3
  215. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +23 -8
  216. package/lib/types/persisters/persister-expo-sqlite.d.ts +17 -4
  217. package/lib/types/persisters/persister-file.d.ts +6 -0
  218. package/lib/types/persisters/persister-indexed-db.d.ts +6 -0
  219. package/lib/types/persisters/persister-libsql.d.ts +12 -0
  220. package/lib/types/persisters/persister-partykit-client.d.ts +11 -3
  221. package/lib/types/persisters/persister-partykit-server.d.ts +37 -14
  222. package/lib/types/persisters/persister-powersync.d.ts +13 -1
  223. package/lib/types/persisters/persister-remote.d.ts +6 -0
  224. package/lib/types/persisters/persister-sqlite-wasm.d.ts +14 -1
  225. package/lib/types/persisters/persister-sqlite3.d.ts +17 -4
  226. package/lib/types/persisters/persister-yjs.d.ts +18 -6
  227. package/lib/types/persisters.d.ts +75 -8
  228. package/lib/types/queries.d.ts +137 -9
  229. package/lib/types/relationships.d.ts +28 -4
  230. package/lib/types/store.d.ts +429 -18
  231. package/lib/types/synchronizers.d.ts +3 -0
  232. package/lib/types/tools.d.ts +45 -10
  233. package/lib/types/ui-react-dom.d.ts +136 -27
  234. package/lib/types/ui-react.d.ts +1806 -326
  235. package/lib/types/with-schemas/checkpoints.d.ts +50 -3
  236. package/lib/types/with-schemas/common.d.ts +4 -0
  237. package/lib/types/with-schemas/indexes.d.ts +58 -14
  238. package/lib/types/with-schemas/mergeable-store.d.ts +23 -0
  239. package/lib/types/with-schemas/metrics.d.ts +46 -7
  240. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +17 -4
  241. package/lib/types/with-schemas/persisters/persister-browser.d.ts +12 -0
  242. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +12 -0
  243. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +18 -3
  244. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +24 -9
  245. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +18 -5
  246. package/lib/types/with-schemas/persisters/persister-file.d.ts +6 -0
  247. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +6 -0
  248. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +12 -0
  249. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +11 -3
  250. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +37 -14
  251. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +13 -1
  252. package/lib/types/with-schemas/persisters/persister-remote.d.ts +6 -0
  253. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +15 -2
  254. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +18 -5
  255. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +18 -6
  256. package/lib/types/with-schemas/persisters.d.ts +75 -8
  257. package/lib/types/with-schemas/queries.d.ts +137 -9
  258. package/lib/types/with-schemas/relationships.d.ts +28 -4
  259. package/lib/types/with-schemas/store.d.ts +429 -18
  260. package/lib/types/with-schemas/synchronizers.d.ts +3 -0
  261. package/lib/types/with-schemas/tools.d.ts +45 -10
  262. package/lib/types/with-schemas/ui-react-dom.d.ts +136 -27
  263. package/lib/types/with-schemas/ui-react.d.ts +1806 -326
  264. package/lib/umd/mergeable-store.js +1 -1
  265. package/lib/umd/mergeable-store.js.gz +0 -0
  266. package/lib/umd/persisters/persister-automerge.js +1 -1
  267. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  268. package/lib/umd/persisters/persister-browser.js +1 -1
  269. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  270. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  271. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  272. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  273. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  274. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  275. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  276. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  277. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  278. package/lib/umd/persisters/persister-file.js +1 -1
  279. package/lib/umd/persisters/persister-file.js.gz +0 -0
  280. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  281. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  282. package/lib/umd/persisters/persister-libsql.js +1 -1
  283. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  284. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  285. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  286. package/lib/umd/persisters/persister-powersync.js +1 -1
  287. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  288. package/lib/umd/persisters/persister-remote.js +1 -1
  289. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  290. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  291. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  292. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  293. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  294. package/lib/umd/persisters/persister-yjs.js +1 -1
  295. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  296. package/lib/umd/persisters.js +1 -1
  297. package/lib/umd/persisters.js.gz +0 -0
  298. package/lib/umd/store.js +1 -1
  299. package/lib/umd/store.js.gz +0 -0
  300. package/lib/umd/synchronizers/synchronizer-local.js +1 -1
  301. package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
  302. package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -1
  303. package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
  304. package/lib/umd/synchronizers.js +1 -1
  305. package/lib/umd/synchronizers.js.gz +0 -0
  306. package/lib/umd/tinybase.js +1 -1
  307. package/lib/umd/tinybase.js.gz +0 -0
  308. package/lib/umd/ui-react-dom-debug.js +1 -1
  309. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  310. package/lib/umd-es6/mergeable-store.js +1 -1
  311. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  312. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  313. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  314. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  315. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  316. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  317. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  318. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  319. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  320. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  321. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  322. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  323. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  324. package/lib/umd-es6/persisters/persister-file.js +1 -1
  325. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  326. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  327. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  328. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  329. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  330. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  331. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  332. package/lib/umd-es6/persisters/persister-powersync.js +1 -1
  333. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  334. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  335. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  336. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  337. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  338. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  339. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  340. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  341. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  342. package/lib/umd-es6/persisters.js +1 -1
  343. package/lib/umd-es6/persisters.js.gz +0 -0
  344. package/lib/umd-es6/store.js +1 -1
  345. package/lib/umd-es6/store.js.gz +0 -0
  346. package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -1
  347. package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
  348. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -1
  349. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  350. package/lib/umd-es6/synchronizers.js +1 -1
  351. package/lib/umd-es6/synchronizers.js.gz +0 -0
  352. package/lib/umd-es6/tinybase.js +1 -1
  353. package/lib/umd-es6/tinybase.js.gz +0 -0
  354. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  355. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  356. package/package.json +25 -23
  357. package/readme.md +21 -3
@@ -1 +1 @@
1
- var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),o=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),p=a=>a.length,E=async a=>r.all(a),f=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),m=a=>0==p(a),g=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,C=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,N=a=>O.getPrototypeOf(a),R=O.entries,b=O.keys,S=O.freeze,L=(a=[])=>O.fromEntries(a),I=(...a)=>O.assign({},...a),D=(a,t)=>t in a,_=(a,t)=>v(R(a),(([a,e])=>t(e,a))),M=a=>O.values(a),P=a=>p(b(a)),$=a=>(a=>!l(a)&&y(N(a),(a=>a==O.prototype||l(N(a))),(()=>!0)))(a)&&0==P(a),F=a=>new Map(a),j=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),k=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),B=(a,t,e,n)=>(T(a,t)||q(a,t,e()),x(a,t)),W=(a,t,e,n=q)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),H="_",J="_id",Y=a=>`"${a.replace(/"/g,'""')}"`,G="SELECT",U=a=>new Set(d(a)||l(a)?a:[a]),V=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,Q="DELETE FROM",X=G+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const o=F();return[async()=>W(o,L(await E(v(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,L(v(await a(G+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(o,t,W(B(o,t,F),e,((a,t,e)=>{e!=x(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(o,t))),async(t,e)=>((a,t)=>!l(x(x(o,a),t)))(t,e)?L(g(v(await a(X+Y(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!$(t)))):{},async(t,e,r,c,y,w=!1)=>{const d=U();_(r??{},(a=>v(b(a??{}),(a=>V(d,a)))));const u=C(d);if(!w&&y&&m(u)&&T(o,t))return await a("DROP "+z+Y(t)),void q(o,t);if(m(u)||T(o,t)){const s=x(o,t),i=U(j(s));await E([...v(u,(async e=>{A(i,e)||(await a(K+Y(t)+"ADD"+Y(e)),q(s,e,n))})),...!w&&c?v(C(i),(async n=>{n!=e&&(await a(K+Y(t)+"DROP"+Y(n)),q(s,n))})):[]])}else await a("CREATE "+z+Y(t)+"("+Y(e)+` PRIMARY KEY ON CONFLICT REPLACE${f(v(u,(a=>s+Y(a))))});`),q(o,t,F([[e,n],...v(u,(a=>[a,n]))]));if(w)l(r)?await a(Q+Y(t)+aa+" 1"):await E(_(r,(async(n,s)=>{l(n)?await a(Q+Y(t)+aa+Y(e)+"=?",[s]):m(u)||await ea(a,t,e,b(n),[s,...M(n)],i)})));else if(m(u))T(o,t)&&await a(Q+Y(t)+aa+" 1");else{const n=g(j(x(o,t)),(a=>a!=e)),s=[],c=[];_(r??{},((a,t)=>{h(s,t,...v(n,(t=>a?.[t]))),h(c,t)})),await ea(a,t,e,n,s,i),await a(Q+Y(t)+aa+Y(e)+"NOT IN("+na(c)+")",c)}},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,r,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+Y(t)+"("+Y(e)+f(v(i,(a=>s+Y(a))))+")VALUES"+u(o(`,(?${o(",?",p(i))})`,p(r)/(p(i)+1)),1)+(c?"ON CONFLICT("+Y(e)+")DO UPDATE SET"+f(v(i,(a=>Y(a)+"=excluded."+Y(a))),s):n),v(r,(a=>a??null))),na=a=>f(v(a,(()=>"?")),s),sa=F(),ia=F(),oa=(a,t,e,n,s,i,o,r={},c=[])=>{let w,u,p,E=0;B(sa,c,(()=>0)),B(ia,c,(()=>[]));const[f,v,m,g,T]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(o,a),C=t=>{(f&&d(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},A=async a=>(2!=E&&(E=1,await b((async()=>{try{C(await t())}catch(t){i?.(t),a&&T(a)}E=0}))),L),O=()=>(u&&(s(u),u=void 0),L),N=async a=>(1!=E&&(E=2,await b((async()=>{try{await e(v,a)}catch(a){i?.(a)}E=0}))),L),R=()=>(y(p,a.delListener),p=void 0,L),b=async(...a)=>(h(x(ia,c),...a),await(async()=>{if(!x(sa,c)){for(q(sa,c,1);!l((a=x(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}q(sa,c,0)}var a})(),L),L={load:A,startAutoLoad:async a=>(await O().load(a),u=n((async(a,t)=>{t||a?2!=E&&(E=1,C(t??a),E=0):await A()})),L),stopAutoLoad:O,isAutoLoading:()=>!l(u),save:N,startAutoSave:async()=>(await R().save(),p=a.addDidFinishTransactionListener((()=>{const a=m();g(a)&&N(a)})),L),stopAutoSave:R,isAutoSaving:()=>!l(p),schedule:b,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...r};return S(L)},ra=(a,t,e,n,s,i,[o,r,c],l,y,w,d)=>{const[u,p,E,f]=ta(t,l,s,d);return oa(a,(async()=>await f((async()=>{return await u(),a=(await p(o,r))[H]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await f((async()=>{var t;await u(),await E(o,r,{[H]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[o,r,[c,y,w]],d,u,p,f)=>{const[v,m,h,T]=ta(t,d,s,f),C=async(a,t)=>await E(k(r,(async([e,n,s,i],o)=>{t&&!D(a,o)||await h(e,n,a[o],s,i,t)}))),A=async(a,t)=>y?await h(w,J,{[H]:a},!0,!0,t):null;return oa(a,(async()=>await T((async()=>{await v();const a=await(async()=>L(g(await E(k(o,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>c?(await m(w,J))[H]:{})();return $(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),l(t)){const[t,e]=a();await C(t),await A(e)}else await C(t[0],!0),await A(t[1],!0)}))),e,n,s,i,{[p]:()=>u},u)},la="ColumnName",ya="store",wa="json",da=ya+"TableName",ua=ya+"Id"+la,pa=ya+la,Ea="autoLoadIntervalSeconds",fa="rowId"+la,va="tableId",ma="tableName",ga={mode:wa,[Ea]:1},ha={load:0,save:0,[ma]:e+"_values"},Ta=(a,t,e,n,s)=>{const i=F();return _(a,((a,o)=>{const r=u(M(I(t,w(a)?{[e]:a}:a)),0,P(t));l(r[0])||n(o,r[0])||(s(o,r[0]),q(i,o,r))})),i},Ca="pragma_",Aa="data_version",Oa="schema_version";a.createSqliteWasmPersister=(a,t,n,s,i,o)=>((a,t,n,s,i,o,r,l,y,d="getDb",p)=>{let E,f,v;const[m,g,h,A]=(a=>{const t=(a=>I(ga,w(a)?{[da]:a}:a??{}))(a),n=t[Ea];if(t.mode==wa){const a=t[da]??e;return[1,n,[a,t[ua]??J,t[pa]??ya],U(a)]}const{tables:{load:s={},save:i={}}={},values:o={}}=t,r=u(M(I(ha,o)),0,P(ha)),c=r[2],l=U(c),y=U(c);return[0,n,[Ta(s,{[va]:null,[fa]:J},va,(a=>T(y,a)),(a=>V(l,a))),Ta(i,{[ma]:null,[fa]:J,deleteEmptyColumns:0,deleteEmptyTable:0},ma,((a,t)=>T(y,t)),((a,t)=>V(l,t))),r],l]})(t);return(m?ra:ca)(a,o?async(a,t)=>(o(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ca}${Aa} JOIN ${Ca}${Oa}`);t==(E??=t)&&e==(f??=e)&&s==(v??=s)||(a(),E=t,f=e)}catch{}},e=g,t(),setInterval(t,1e3*e)),s((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=f=v=null,i(t)}),r,l,h,C(A),y,d,p)})(a,s,(async(a,t=[])=>n.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(n,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(n,(()=>0),0)),i,o,3,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqliteWasm={});
1
+ var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),p=a=>a.length,E=async a=>o.all(a),f=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),g=a=>0==p(a),m=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,C=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,b=a=>O.getPrototypeOf(a),N=O.entries,R=O.keys,S=O.freeze,L=(a=[])=>O.fromEntries(a),I=(...a)=>O.assign({},...a),D=(a,t)=>t in a,_=(a,t)=>v(N(a),(([a,e])=>t(e,a))),M=a=>O.values(a),P=a=>p(R(a)),$=a=>(a=>!l(a)&&y(b(a),(a=>a==O.prototype||l(b(a))),(()=>!0)))(a)&&0==P(a),F=a=>new Map(a),j=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),k=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),B=(a,t,e,n)=>(T(a,t)||q(a,t,e()),x(a,t)),W=(a,t,e,n=q)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),H="_",J="_id",Y=a=>`"${a.replace(/"/g,'""')}"`,G="SELECT",U=a=>new Set(d(a)||l(a)?a:[a]),V=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,Q="DELETE FROM",X=G+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=F();return[async()=>W(r,L(await E(v(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,L(v(await a(G+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,W(B(r,t,F),e,((a,t,e)=>{e!=x(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!l(x(x(r,a),t)))(t,e)?L(m(v(await a(X+Y(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!$(t)))):{},async(t,e,o,c,y,w=!1)=>{const d=U();_(o??{},(a=>v(R(a??{}),(a=>V(d,a)))));const u=C(d);if(!w&&y&&g(u)&&T(r,t))return await a("DROP "+z+Y(t)),void q(r,t);if(g(u)||T(r,t)){const s=x(r,t),i=U(j(s));await E([...v(u,(async e=>{A(i,e)||(await a(K+Y(t)+"ADD"+Y(e)),q(s,e,n))})),...!w&&c?v(C(i),(async n=>{n!=e&&(await a(K+Y(t)+"DROP"+Y(n)),q(s,n))})):[]])}else await a("CREATE "+z+Y(t)+"("+Y(e)+` PRIMARY KEY ON CONFLICT REPLACE${f(v(u,(a=>s+Y(a))))});`),q(r,t,F([[e,n],...v(u,(a=>[a,n]))]));if(w)l(o)?await a(Q+Y(t)+aa+" 1"):await E(_(o,(async(n,s)=>{l(n)?await a(Q+Y(t)+aa+Y(e)+"=?",[s]):g(u)||await ea(a,t,e,R(n),[s,...M(n)],i)})));else if(g(u))T(r,t)&&await a(Q+Y(t)+aa+" 1");else{const n=m(j(x(r,t)),(a=>a!=e)),s=[],c=[];_(o??{},((a,t)=>{h(s,t,...v(n,(t=>a?.[t]))),h(c,t)})),await ea(a,t,e,n,s,i),await a(Q+Y(t)+aa+Y(e)+"NOT IN("+na(c)+")",c)}},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,o,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+Y(t)+"("+Y(e)+f(v(i,(a=>s+Y(a))))+")VALUES"+u(r(`,(?${r(",?",p(i))})`,p(o)/(p(i)+1)),1)+(c?"ON CONFLICT("+Y(e)+")DO UPDATE SET"+f(v(i,(a=>Y(a)+"=excluded."+Y(a))),s):n),v(o,(a=>a??null))),na=a=>f(v(a,(()=>"?")),s),sa=F(),ia=F(),ra=(a,t,e,n,s,i,r,o={},c=[])=>{let w,u,p,E=0;B(sa,c,(()=>0)),B(ia,c,(()=>[]));const[f,v,g,m,T]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),C=t=>{(f&&d(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},A=async a=>(2!=E&&(E=1,await R((async()=>{try{C(await t())}catch(t){i?.(t),a&&T(a)}E=0}))),L),O=()=>(u&&(s(u),u=void 0),L),b=async a=>(1!=E&&(E=2,await R((async()=>{try{await e(v,a)}catch(a){i?.(a)}E=0}))),L),N=()=>(y(p,a.delListener),p=void 0,L),R=async(...a)=>(h(x(ia,c),...a),await(async()=>{if(!x(sa,c)){for(q(sa,c,1);!l((a=x(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}q(sa,c,0)}var a})(),L),L={load:A,startAutoLoad:async a=>(await O().load(a),u=n((async(a,t)=>{t||a?2!=E&&(E=1,C(t??a),E=0):await A()})),L),stopAutoLoad:O,isAutoLoading:()=>!l(u),save:b,startAutoSave:async()=>(await N().save(),p=a.addDidFinishTransactionListener((()=>{const a=g();m(a)&&b(a)})),L),stopAutoSave:N,isAutoSaving:()=>!l(p),schedule:R,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...o};return S(L)},oa=(a,t,e,n,s,i,[r,o,c],l,y,w,d)=>{const[u,p,E,f]=ta(t,l,s,d);return ra(a,(async()=>await f((async()=>{return await u(),a=(await p(r,o))[H]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await f((async()=>{var t;await u(),await E(r,o,{[H]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[r,o,[c,y,w]],d,u,p,f)=>{const[v,g,h,T]=ta(t,d,s,f),C=async(a,t)=>await E(k(o,(async([e,n,s,i],r)=>{t&&!D(a,r)||await h(e,n,a[r],s,i,t)}))),A=async(a,t)=>y?await h(w,J,{[H]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>L(m(await E(k(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>c?(await g(w,J))[H]:{})();return $(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),l(t)){const[t,e]=a();await C(t),await A(e)}else await C(t[0],!0),await A(t[1],!0)}))),e,n,s,i,{[p]:()=>u},u)},la="ColumnName",ya="store",wa="json",da=ya+"TableName",ua=ya+"Id"+la,pa=ya+la,Ea="autoLoadIntervalSeconds",fa="rowId"+la,va="tableId",ga="tableName",ma={mode:wa,[Ea]:1},ha={load:0,save:0,[ga]:e+"_values"},Ta=(a,t,e,n,s)=>{const i=F();return _(a,((a,r)=>{const o=u(M(I(t,w(a)?{[e]:a}:a)),0,P(t));l(o[0])||n(r,o[0])||(s(r,o[0]),q(i,r,o))})),i},Ca="pragma_",Aa="data_version",Oa="schema_version";a.createSqliteWasmPersister=(a,t,n,s,i,r)=>((a,t,n,s,i,r,o,l,y,d="getDb",p)=>{let E,f,v;const[g,m,h,A]=(a=>{const t=(a=>I(ma,w(a)?{[da]:a}:a??{}))(a),n=t[Ea];if(t.mode==wa){const a=t[da]??e;return[1,n,[a,t[ua]??J,t[pa]??ya],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,o=u(M(I(ha,r)),0,P(ha)),c=o[2],l=U(c),y=U(c);return[0,n,[Ta(s,{[va]:null,[fa]:J},va,(a=>T(y,a)),(a=>V(l,a))),Ta(i,{[ga]:null,[fa]:J,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>T(y,t)),((a,t)=>V(l,t))),o],l]})(t);return(g?oa:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ca}${Aa} JOIN ${Ca}${Oa}`);t==(E??=t)&&e==(f??=e)&&s==(v??=s)||(a(),E=t,f=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),s((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=f=v=null,i(t)}),o,l,h,C(A),y,d,p)})(a,s,(async(a,t=[])=>n.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(n,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(n,(()=>0),0)),i,r,3,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqliteWasm={});
@@ -1 +1 @@
1
- var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,f=async a=>o.all(a),p=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),g=a=>0==E(a),m=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,C=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,N=a=>O.getPrototypeOf(a),R=O.entries,S=O.keys,L=O.freeze,b=(a=[])=>O.fromEntries(a),I=(...a)=>O.assign({},...a),D=(a,t)=>t in a,M=(a,t)=>v(R(a),(([a,e])=>t(e,a))),P=a=>O.values(a),$=a=>E(S(a)),_=a=>(a=>!l(a)&&y(N(a),(a=>a==O.prototype||l(N(a))),(()=>!0)))(a)&&0==$(a),F=a=>new Map(a),j=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),B=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(h(a,t)||H(a,t,e()),x(a,t)),Y=(a,t,e,n=H)=>(M(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),k="_",q="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",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=U+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=F();return[async()=>Y(r,b(await f(v(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,b(v(await a(U+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,F),e,((a,t,e)=>{e!=x(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!l(x(x(r,a),t)))(t,e)?b(m(v(await a(X+G(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,o,c,y,w=!1)=>{const u=W();M(o??{},(a=>v(S(a??{}),(a=>z(u,a)))));const d=C(u);if(!w&&y&&g(d)&&h(r,t))return await a("DROP "+K+G(t)),void H(r,t);if(g(d)||h(r,t)){const s=x(r,t),i=W(j(s));await f([...v(d,(async e=>{A(i,e)||(await a(V+G(t)+"ADD"+G(e)),H(s,e,n))})),...!w&&c?v(C(i),(async n=>{n!=e&&(await a(V+G(t)+"DROP"+G(n)),H(s,n))})):[]])}else await a("CREATE "+K+G(t)+"("+G(e)+` PRIMARY KEY ON CONFLICT REPLACE${p(v(d,(a=>s+G(a))))});`),H(r,t,F([[e,n],...v(d,(a=>[a,n]))]));if(w)l(o)?await a(Q+G(t)+aa+" 1"):await f(M(o,(async(n,s)=>{l(n)?await a(Q+G(t)+aa+G(e)+"=?",[s]):g(d)||await ea(a,t,e,S(n),[s,...P(n)],i)})));else if(g(d))h(r,t)&&await a(Q+G(t)+aa+" 1");else{const n=m(j(x(r,t)),(a=>a!=e)),s=[],c=[];M(o??{},((a,t)=>{T(s,t,...v(n,(t=>a?.[t]))),T(c,t)})),await ea(a,t,e,n,s,i),await a(Q+G(t)+aa+G(e)+"NOT IN("+na(c)+")",c)}},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,o,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+G(t)+"("+G(e)+p(v(i,(a=>s+G(a))))+")VALUES"+d(r(`,(?${r(",?",E(i))})`,E(o)/(E(i)+1)),1)+(c?"ON CONFLICT("+G(e)+")DO UPDATE SET"+p(v(i,(a=>G(a)+"=excluded."+G(a))),s):n),v(o,(a=>a??null))),na=a=>p(v(a,(()=>"?")),s),sa=F(),ia=F(),ra=(a,t,e,n,s,i,r,o={},c=[])=>{let w,d,E,f=0;J(sa,c,(()=>0)),J(ia,c,(()=>[]));const[p,v,g,m,h]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:0)(r,a),C=t=>{(p&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},A=async a=>(2!=f&&(f=1,await S((async()=>{try{C(await t())}catch(t){i?.(t),a&&h(a)}f=0}))),b),O=()=>(d&&(s(d),d=void 0),b),N=async a=>(1!=f&&(f=2,await S((async()=>{try{await e(v,a)}catch(a){i?.(a)}f=0}))),b),R=()=>(y(E,a.delListener),E=void 0,b),S=async(...a)=>(T(x(ia,c),...a),await(async()=>{if(!x(sa,c)){for(H(sa,c,1);!l((a=x(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}H(sa,c,0)}var a})(),b),b={load:A,startAutoLoad:async a=>(await O().load(a),d=n((async(a,t)=>{t||a?2!=f&&(f=1,C(t??a),f=0):await A()})),b),stopAutoLoad:O,isAutoLoading:()=>!l(d),save:N,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=g();m(a)&&N(a)})),b),stopAutoSave:R,isAutoSaving:()=>!l(E),schedule:S,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...o};return L(b)},oa=(a,t,e,n,s,i,[r,o,c],l,y,w,u)=>{const[d,E,f,p]=ta(t,l,s,u);return ra(a,(async()=>await p((async()=>{return await d(),a=(await E(r,o))[k]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await p((async()=>{var t;await d(),await f(r,o,{[k]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[r,o,[c,y,w]],u,d,E,p)=>{const[v,g,T,h]=ta(t,u,s,p),C=async(a,t)=>await f(B(o,(async([e,n,s,i],r)=>{t&&!D(a,r)||await T(e,n,a[r],s,i,t)}))),A=async(a,t)=>y?await T(w,q,{[k]:a},!0,!0,t):null;return ra(a,(async()=>await h((async()=>{await v();const a=await(async()=>b(m(await f(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,q))[k]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await h((async()=>{if(await v(),l(t)){const[t,e]=a();await C(t),await A(e)}else await C(t[0],!0),await A(t[1],!0)}))),e,n,s,i,{[E]:()=>d},d)},la="ColumnName",ya="store",wa="json",ua=ya+"TableName",da=ya+"Id"+la,Ea=ya+la,fa="autoLoadIntervalSeconds",pa="rowId"+la,va="tableId",ga="tableName",ma={mode:wa,[fa]:1},Ta={load:0,save:0,[ga]:e+"_values"},ha=(a,t,e,n,s)=>{const i=F();return M(a,((a,r)=>{const o=d(P(I(t,w(a)?{[e]:a}:a)),0,$(t));l(o[0])||n(r,o[0])||(s(r,o[0]),H(i,r,o))})),i},Ca="pragma_",Aa="data_version",Oa="schema_version",Na="change";a.createSqlite3Persister=(a,t,n,s,i)=>((a,t,n,s,i,r,o,l,y,u="getDb",E)=>{let f,p,v;const[g,m,T,A]=(a=>{const t=(a=>I(ma,w(a)?{[ua]:a}:a??{}))(a),n=t[fa];if(t.mode==wa){const a=t[ua]??e;return[1,n,[a,t[da]??q,t[Ea]??ya],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,o=d(P(I(Ta,r)),0,$(Ta)),c=o[2],l=W(c),y=W(c);return[0,n,[ha(s,{[va]:null,[pa]:q},va,(a=>h(y,a)),(a=>z(l,a))),ha(i,{[ga]:null,[pa]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>h(y,t)),((a,t)=>z(l,t))),o],l]})(t);return(g?oa:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ca}${Aa} JOIN ${Ca}${Oa}`);t==(f??=t)&&e==(p??=e)&&s==(v??=s)||(a(),f=t,p=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),s((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),f=p=v=null,i(t)}),o,l,T,C(A),y,u,E)})(a,n,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new o(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Na,e),e}),(a=>t.off(Na,a)),s,i,3,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqlite3={});
1
+ var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),p=a=>a.length,E=async a=>o.all(a),f=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),g=a=>0==p(a),h=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,C=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,N=a=>O.getPrototypeOf(a),S=O.entries,b=O.keys,R=O.freeze,L=(a=[])=>O.fromEntries(a),I=(...a)=>O.assign({},...a),D=(a,t)=>t in a,M=(a,t)=>v(S(a),(([a,e])=>t(e,a))),P=a=>O.values(a),$=a=>p(b(a)),_=a=>(a=>!l(a)&&y(N(a),(a=>a==O.prototype||l(N(a))),(()=>!0)))(a)&&0==$(a),F=a=>new Map(a),j=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),B=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(T(a,t)||H(a,t,e()),x(a,t)),Y=(a,t,e,n=H)=>(M(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),k="_",q="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",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=U+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=F();return[async()=>Y(r,L(await E(v(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,L(v(await a(U+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,F),e,((a,t,e)=>{e!=x(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!l(x(x(r,a),t)))(t,e)?L(h(v(await a(X+G(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,o,c,y,w=!1)=>{const u=W();M(o??{},(a=>v(b(a??{}),(a=>z(u,a)))));const d=C(u);if(!w&&y&&g(d)&&T(r,t))return await a("DROP "+K+G(t)),void H(r,t);if(g(d)||T(r,t)){const s=x(r,t),i=W(j(s));await E([...v(d,(async e=>{A(i,e)||(await a(V+G(t)+"ADD"+G(e)),H(s,e,n))})),...!w&&c?v(C(i),(async n=>{n!=e&&(await a(V+G(t)+"DROP"+G(n)),H(s,n))})):[]])}else await a("CREATE "+K+G(t)+"("+G(e)+` PRIMARY KEY ON CONFLICT REPLACE${f(v(d,(a=>s+G(a))))});`),H(r,t,F([[e,n],...v(d,(a=>[a,n]))]));if(w)l(o)?await a(Q+G(t)+aa+" 1"):await E(M(o,(async(n,s)=>{l(n)?await a(Q+G(t)+aa+G(e)+"=?",[s]):g(d)||await ea(a,t,e,b(n),[s,...P(n)],i)})));else if(g(d))T(r,t)&&await a(Q+G(t)+aa+" 1");else{const n=h(j(x(r,t)),(a=>a!=e)),s=[],c=[];M(o??{},((a,t)=>{m(s,t,...v(n,(t=>a?.[t]))),m(c,t)})),await ea(a,t,e,n,s,i),await a(Q+G(t)+aa+G(e)+"NOT IN("+na(c)+")",c)}},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,o,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+G(t)+"("+G(e)+f(v(i,(a=>s+G(a))))+")VALUES"+d(r(`,(?${r(",?",p(i))})`,p(o)/(p(i)+1)),1)+(c?"ON CONFLICT("+G(e)+")DO UPDATE SET"+f(v(i,(a=>G(a)+"=excluded."+G(a))),s):n),v(o,(a=>a??null))),na=a=>f(v(a,(()=>"?")),s),sa=F(),ia=F(),ra=(a,t,e,n,s,i,r,o={},c=[])=>{let w,d,p,E=0;J(sa,c,(()=>0)),J(ia,c,(()=>[]));const[f,v,g,h,T]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),C=t=>{(f&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},A=async a=>(2!=E&&(E=1,await b((async()=>{try{C(await t())}catch(t){i?.(t),a&&T(a)}E=0}))),L),O=()=>(d&&(s(d),d=void 0),L),N=async a=>(1!=E&&(E=2,await b((async()=>{try{await e(v,a)}catch(a){i?.(a)}E=0}))),L),S=()=>(y(p,a.delListener),p=void 0,L),b=async(...a)=>(m(x(ia,c),...a),await(async()=>{if(!x(sa,c)){for(H(sa,c,1);!l((a=x(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}H(sa,c,0)}var a})(),L),L={load:A,startAutoLoad:async a=>(await O().load(a),d=n((async(a,t)=>{t||a?2!=E&&(E=1,C(t??a),E=0):await A()})),L),stopAutoLoad:O,isAutoLoading:()=>!l(d),save:N,startAutoSave:async()=>(await S().save(),p=a.addDidFinishTransactionListener((()=>{const a=g();h(a)&&N(a)})),L),stopAutoSave:S,isAutoSaving:()=>!l(p),schedule:b,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...o};return R(L)},oa=(a,t,e,n,s,i,[r,o,c],l,y,w,u)=>{const[d,p,E,f]=ta(t,l,s,u);return ra(a,(async()=>await f((async()=>{return await d(),a=(await p(r,o))[k]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await f((async()=>{var t;await d(),await E(r,o,{[k]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[r,o,[c,y,w]],u,d,p,f)=>{const[v,g,m,T]=ta(t,u,s,f),C=async(a,t)=>await E(B(o,(async([e,n,s,i],r)=>{t&&!D(a,r)||await m(e,n,a[r],s,i,t)}))),A=async(a,t)=>y?await m(w,q,{[k]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>L(h(await E(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,q))[k]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),l(t)){const[t,e]=a();await C(t),await A(e)}else await C(t[0],!0),await A(t[1],!0)}))),e,n,s,i,{[p]:()=>d},d)},la="ColumnName",ya="store",wa="json",ua=ya+"TableName",da=ya+"Id"+la,pa=ya+la,Ea="autoLoadIntervalSeconds",fa="rowId"+la,va="tableId",ga="tableName",ha={mode:wa,[Ea]:1},ma={load:0,save:0,[ga]:e+"_values"},Ta=(a,t,e,n,s)=>{const i=F();return M(a,((a,r)=>{const o=d(P(I(t,w(a)?{[e]:a}:a)),0,$(t));l(o[0])||n(r,o[0])||(s(r,o[0]),H(i,r,o))})),i},Ca="pragma_",Aa="data_version",Oa="schema_version",Na="change";a.createSqlite3Persister=(a,t,n,s,i)=>((a,t,n,s,i,r,o,l,y,u="getDb",p)=>{let E,f,v;const[g,h,m,A]=(a=>{const t=(a=>I(ha,w(a)?{[ua]:a}:a??{}))(a),n=t[Ea];if(t.mode==wa){const a=t[ua]??e;return[1,n,[a,t[da]??q,t[pa]??ya],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,o=d(P(I(ma,r)),0,$(ma)),c=o[2],l=W(c),y=W(c);return[0,n,[Ta(s,{[va]:null,[fa]:q},va,(a=>T(y,a)),(a=>z(l,a))),Ta(i,{[ga]:null,[fa]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>T(y,t)),((a,t)=>z(l,t))),o],l]})(t);return(g?oa:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ca}${Aa} JOIN ${Ca}${Oa}`);t==(E??=t)&&e==(f??=e)&&s==(v??=s)||(a(),E=t,f=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=f=v=null,i(t)}),o,l,m,C(A),y,u,p)})(a,n,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new o(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Na,e),e}),(a=>t.off(Na,a)),s,i,3,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterSqlite3={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t){"use strict";const a="t",n="v",s=e=>null==e,o=(e,t,a)=>s(e)?a?.():t(e),r=e=>e.length,i=e=>e.shift(),c=Object,g=e=>c.getPrototypeOf(e),l=c.entries,d=c.keys,u=c.freeze,y=(e=[])=>c.fromEntries(e),p=(e,t)=>t in e,f=(e,t)=>((e,t)=>e.map(t))(l(e),(([e,a])=>t(a,e))),h=e=>(e=>!s(e)&&o(g(e),(e=>e==c.prototype||s(g(e))),(()=>!0)))(e)&&0==(e=>r(d(e)))(e),v=(e,t,a)=>(p(e,t)||(e[t]=a()),e[t]),w=e=>new Map(e),S=(e,t)=>e?.get(t),b=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),C=(e,t,a)=>{return s(a)?(n=e,o=t,n?.delete(o),e):e?.set(t,a);var n,o},A=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||C(e,t,a()),S(e,t)},M=w(),O=w(),j="delete",J=e=>[e.get(a),e.get(n)],N=(e,a,n,o)=>{const r=s(a)?e:e.get(a)??e.set(a,new t.Map);let i;return f(n,((e,t)=>{o(r,t,e)&&(i=1)})),r.forEach(((e,t)=>{p(n,t)||(r.delete(t),i=1)})),s(a)||r.size||e.delete(a),i};e.createYjsPersister=(e,c,g="tinybase",l)=>{const d=c.getMap(g);return((e,t,a,n,r,c,g,l={},d=[])=>{let y,p,f,v=0;A(M,d,(()=>0)),A(O,d,(()=>[]));const[w,b,j,J,N]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!h(e)||!h(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!h(e)||!h(t),t.setContent]:0)(g,e),T=t=>{var a;(w&&(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!=v&&(v=1,await E((async()=>{try{T(await t())}catch(t){c?.(t),e&&N(e)}v=0}))),x),D=()=>(p&&(r(p),p=void 0),x),L=async e=>(1!=v&&(v=2,await E((async()=>{try{await a(b,e)}catch(e){c?.(e)}v=0}))),x),z=()=>(o(f,e.delListener),f=void 0,x),E=async(...e)=>(((e,...t)=>{e.push(...t)})(S(O,d),...e),await(async()=>{if(!S(M,d)){for(C(M,d,1);!s(y=i(S(O,d)));)try{await y()}catch(e){c?.(e)}C(M,d,0)}})(),x),x={load:m,startAutoLoad:async e=>(await D().load(e),p=n((async(e,t)=>{t||e?2!=v&&(v=1,T(t??e),v=0):await m()})),x),stopAutoLoad:D,isAutoLoading:()=>!s(p),save:L,startAutoSave:async()=>(await z().save(),f=e.addDidFinishTransactionListener((()=>{const e=j();J(e)&&L(e)})),x),stopAutoSave:z,isAutoSaving:()=>!s(f),schedule:E,getStore:()=>e,destroy:()=>D().stopAutoSave(),getStats:()=>({}),...l};return u(x)})(e,(async()=>d.size?[d.get(a).toJSON(),d.get(n).toJSON()]:void 0),(async(e,r)=>c.transact((()=>((e,r,i)=>{e.size||(e.set(a,new t.Map),e.set(n,new t.Map));const[c,g]=J(e),l=()=>{d=1};let d=1;if(o(i,(([e,t])=>{d=0,f(e,((e,t)=>d?0:s(e)?c.delete(t):o(c.get(t),(t=>f(e,((e,a)=>d?0:s(e)?t.delete(a):o(t.get(a),(t=>f(e,((e,a)=>s(e)?t.delete(a):t.set(a,e)))),l)))),l))),f(t,((e,t)=>d?0:s(e)?g.delete(t):g.set(t,e)))})),d){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)}))}})(d,e,r)))),(e=>{const t=t=>e(void 0,((e,t)=>{if(1==r(t)&&(s=t[0].path,0==r(s)))return[e.get(a).toJSON(),e.get(n).toJSON(),1];var s;const[c,g]=J(e),l={},d={};return((e,t)=>{e.forEach((({path:e,changes:{keys:t}})=>i(e)==a?o(i(e),(a=>{const n=v(l,a,y),s=c.get(a);o(i(e),(e=>{const a=v(n,e,y),o=s.get(e);b(t,((e,{action:t})=>a[e]=t==j?null:o.get(e)))}),(()=>b(t,((e,{action:t})=>n[e]=t==j?null:s.get(e)?.toJSON()))))}),(()=>b(t,((e,{action:t})=>l[e]=t==j?null:c.get(e)?.toJSON())))):b(t,((e,{action:t})=>d[e]=t==j?null:g.get(e)))))})(t),[l,d,1]})(d,t));return d.observeDeep(t),t}),(e=>{d.unobserveDeep(e)}),l,1,{getYDoc:()=>c})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterYjs={},e.yjs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const a="t",s="v",n=e=>null==e,o=(e,t,a)=>n(e)?a?.():t(e),r=e=>e.length,i=e=>e.shift(),c=Object,g=e=>c.getPrototypeOf(e),l=c.entries,d=c.keys,y=c.freeze,u=(e=[])=>c.fromEntries(e),p=(e,t)=>t in e,f=(e,t)=>((e,t)=>e.map(t))(l(e),(([e,a])=>t(a,e))),h=e=>(e=>!n(e)&&o(g(e),(e=>e==c.prototype||n(g(e))),(()=>!0)))(e)&&0==(e=>r(d(e)))(e),v=(e,t,a)=>(p(e,t)||(e[t]=a()),e[t]),w=e=>new Map(e),b=(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,s)=>{var n,o;return n=e,o=t,n?.has(o)||C(e,t,a()),b(e,t)},A=w(),O=w(),j="delete",J=e=>[e.get(a),e.get(s)],N=(e,a,s,o)=>{const r=n(a)?e:e.get(a)??e.set(a,new t.Map);let i;return f(s,((e,t)=>{o(r,t,e)&&(i=1)})),r.forEach(((e,t)=>{p(s,t)||(r.delete(t),i=1)})),n(a)||r.size||e.delete(a),i};e.createYjsPersister=(e,c,g="tinybase",l)=>{const d=c.getMap(g);return((e,t,a,s,r,c,g,l={},d=[])=>{let u,p,f,v=0;M(A,d,(()=>0)),M(O,d,(()=>[]));const[w,S,j,J,N]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!h(e)||!h(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!h(e)||!h(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(g,e),T=t=>{var a;(w&&(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!=v&&(v=1,await z((async()=>{try{T(await t())}catch(t){c?.(t),e&&N(e)}v=0}))),P),E=()=>(p&&(r(p),p=void 0),P),L=async e=>(1!=v&&(v=2,await z((async()=>{try{await a(S,e)}catch(e){c?.(e)}v=0}))),P),m=()=>(o(f,e.delListener),f=void 0,P),z=async(...e)=>(((e,...t)=>{e.push(...t)})(b(O,d),...e),await(async()=>{if(!b(A,d)){for(C(A,d,1);!n(u=i(b(O,d)));)try{await u()}catch(e){c?.(e)}C(A,d,0)}})(),P),P={load:D,startAutoLoad:async e=>(await E().load(e),p=s((async(e,t)=>{t||e?2!=v&&(v=1,T(t??e),v=0):await D()})),P),stopAutoLoad:E,isAutoLoading:()=>!n(p),save:L,startAutoSave:async()=>(await m().save(),f=e.addDidFinishTransactionListener((()=>{const e=j();J(e)&&L(e)})),P),stopAutoSave:m,isAutoSaving:()=>!n(f),schedule:z,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...l};return y(P)})(e,(async()=>d.size?[d.get(a).toJSON(),d.get(s).toJSON()]:void 0),(async(e,r)=>c.transact((()=>((e,r,i)=>{e.size||(e.set(a,new t.Map),e.set(s,new t.Map));const[c,g]=J(e),l=()=>{d=1};let d=1;if(o(i,(([e,t])=>{d=0,f(e,((e,t)=>d?0:n(e)?c.delete(t):o(c.get(t),(t=>f(e,((e,a)=>d?0:n(e)?t.delete(a):o(t.get(a),(t=>f(e,((e,a)=>n(e)?t.delete(a):t.set(a,e)))),l)))),l))),f(t,((e,t)=>d?0:n(e)?g.delete(t):g.set(t,e)))})),d){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)}))}})(d,e,r)))),(e=>{const t=t=>e(void 0,((e,t)=>{if(1==r(t)&&(n=t[0].path,0==r(n)))return[e.get(a).toJSON(),e.get(s).toJSON(),1];var n;const[c,g]=J(e),l={},d={};return((e,t)=>{e.forEach((({path:e,changes:{keys:t}})=>i(e)==a?o(i(e),(a=>{const s=v(l,a,u),n=c.get(a);o(i(e),(e=>{const a=v(s,e,u),o=n.get(e);S(t,((e,{action:t})=>a[e]=t==j?null:o.get(e)))}),(()=>S(t,((e,{action:t})=>s[e]=t==j?null:n.get(e)?.toJSON()))))}),(()=>S(t,((e,{action:t})=>l[e]=t==j?null:c.get(e)?.toJSON())))):S(t,((e,{action:t})=>d[e]=t==j?null:g.get(e)))))})(t),[l,d,1]})(d,t));return d.observeDeep(t),t}),(e=>{d.unobserveDeep(e)}),l,1,{getYDoc:()=>c})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterYjs={},e.yjs);
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,a=(e,a,s)=>t(e)?s?.():a(e),s=Object,n=e=>s.getPrototypeOf(e),o=s.keys,r=s.freeze,i=e=>(e=>!t(e)&&a(n(e),(e=>e==s.prototype||t(n(e))),(()=>!0)))(e)&&0==(e=>o(e).length)(e),c=e=>new Map(e),y=(e,t)=>e?.get(t),d=(e,a,s)=>{return t(s)?(n=e,o=a,n?.delete(o),e):e?.set(a,s);var n,o},g=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)||d(e,t,a()),y(e,t)},l=c(),u=c();e.createCustomPersister=(e,s,n,o,c,p,f,h={},v=[])=>{let C,w,A,b=0;g(l,v,(()=>0)),g(u,v,(()=>[]));const[S,T,L,M,m]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!i(e)||!i(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!i(e)||!i(t),t.setContent]:0)(f,e),x=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)},P=async e=>(2!=b&&(b=1,await k((async()=>{try{x(await s())}catch(t){p?.(t),e&&m(e)}b=0}))),z),j=()=>(w&&(c(w),w=void 0),z),D=async e=>(1!=b&&(b=2,await k((async()=>{try{await n(T,e)}catch(e){p?.(e)}b=0}))),z),O=()=>(a(A,e.delListener),A=void 0,z),k=async(...e)=>(((e,...t)=>{e.push(...t)})(y(u,v),...e),await(async()=>{if(!y(l,v)){for(d(l,v,1);!t((e=y(u,v),C=e.shift()));)try{await C()}catch(e){p?.(e)}d(l,v,0)}var e})(),z),z={load:P,startAutoLoad:async e=>(await j().load(e),w=o((async(e,t)=>{t||e?2!=b&&(b=1,x(t??e),b=0):await P()})),z),stopAutoLoad:j,isAutoLoading:()=>!t(w),save:D,startAutoSave:async()=>(await O().save(),A=e.addDidFinishTransactionListener((()=>{const e=L();M(e)&&D(e)})),z),stopAutoSave:O,isAutoSaving:()=>!t(A),schedule:k,getStore:()=>e,destroy:()=>j().stopAutoSave(),getStats:()=>({}),...h};return r(z)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisters={});
1
+ var t,e;t=this,e=function(t){"use strict";const e=t=>null==t,a=(t,a,s)=>e(t)?s?.():a(t),s=Object,n=t=>s.getPrototypeOf(t),o=s.keys,r=s.freeze,i=t=>(t=>!e(t)&&a(n(t),(t=>t==s.prototype||e(n(t))),(()=>!0)))(t)&&0==(t=>o(t).length)(t),c=t=>new Map(t),y=(t,e)=>t?.get(e),d=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},l=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)||d(t,e,a()),y(t,e)},g=c(),p=c();t.createCustomPersister=(t,s,n,o,c,u,f,h={},v=[])=>{let w,C,b,A=0;l(g,v,(()=>0)),l(p,v,(()=>[]));const[S,M,T,L,P]=((t=1,e)=>t>1&&e.isMergeable()?[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]:(t=>{throw Error("Store type not supported by this Persister")})())(f,t),m=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)},x=async t=>(2!=A&&(A=1,await k((async()=>{try{m(await s())}catch(e){u?.(e),t&&P(t)}A=0}))),z),j=()=>(C&&(c(C),C=void 0),z),D=async t=>(1!=A&&(A=2,await k((async()=>{try{await n(M,t)}catch(t){u?.(t)}A=0}))),z),O=()=>(a(b,t.delListener),b=void 0,z),k=async(...t)=>(((t,...e)=>{t.push(...e)})(y(p,v),...t),await(async()=>{if(!y(g,v)){for(d(g,v,1);!e((t=y(p,v),w=t.shift()));)try{await w()}catch(t){u?.(t)}d(g,v,0)}var t})(),z),z={load:x,startAutoLoad:async t=>(await j().load(t),C=o((async(t,e)=>{e||t?2!=A&&(A=1,m(e??t),A=0):await x()})),z),stopAutoLoad:j,isAutoLoading:()=>!e(C),save:D,startAutoSave:async()=>(await O().save(),b=t.addDidFinishTransactionListener((()=>{const t=T();L(t)&&D(t)})),z),stopAutoSave:O,isAutoSaving:()=>!e(b),schedule:k,getStore:()=>t,destroy:()=>j().stopAutoSave(),getStats:()=>({}),...h};return r(z)}},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisters={});
Binary file
package/lib/umd/store.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",f=u+"s",h=u+d,g="Row",T=g+"Count",b=g+d,S="Cell",V=S+d,p="Value",y=p+"s",C=p+d,v=e=>s+e,m=isFinite,w=e=>null==e,L=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==a,I=e=>t(e)==o,J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.entries,k=z.isFrozen,A=e=>!w(e)&&L(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),M=z.keys,N=z.freeze,B=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>O(j(e),(([e,s])=>t(s,e))),W=e=>A(e)&&0==(e=>E(M(e)))(e),q=(e,t,s,n=0)=>w(e)||!A(e)||!n&&W(e)||k(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),G=e=>e?.size??0,K=(e,t)=>e?.has(t)??!1,Q=e=>w(e)||0==G(e),U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),$=e=>[...e?.keys()??[]],_=(e,t)=>e?.get(t),ee=(e,t)=>X(e,((e,s)=>t(s,e))),te=(e,t,s)=>w(s)?(Y(e,t),e):e?.set(t,s),se=(e,t,s,n)=>(K(e,t)?n?.(_(e,t)):te(e,t,s()),_(e,t)),ne=(e,t,s,n=te)=>(H(t,((t,n)=>s(e,n,t))),ee(e,(s=>B(t,s)?0:n(e,s))),e),ae=(e,t,s,n)=>{const a={};return X(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},le=(e,t,s)=>ae(e,(e=>ae(e,t,s)),Q,W),oe=(e,t,s)=>ae(e,(e=>le(e,t,s)),Q,W),re=(e,t)=>{const s=Z();return X(e,((e,n)=>s.set(n,t?.(e)??e))),s},ie=e=>re(e,re),ce=e=>re(e,ie),de=(e,t,s,n,a=0)=>L((s?se:_)(e,t[a],a>E(t)-2?s:Z),(l=>{if(a>E(t)-2)return n?.(l)&&te(e,t[a]),l;const o=de(l,t,s,n,a+1);return Q(l)&&te(e,t[a]),o})),ue=e=>new Set(Array.isArray(e)||w(e)?e:[e]),fe=(e,t)=>e?.add(t),he=/^\d+$/,ge=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{he.test(t)&&E(e)<1e3&&x(e,t)}]},Te=e=>[e,e],be=()=>[Z(),Z()],Se=e=>[...e],Ve=([e,t])=>e===t,pe=e=>{const s=t(e);return R(s)||s==l&&m(e)?s:void 0},ye=(e,t,s,n,a)=>w(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ce=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),me=JSON.parse;Z(O("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),((e,t)=>[e,t])));const we=(e,t,s)=>te(e,t,_(e,t)==-s?void 0:s),Le=()=>{let e,t,n=!1,a=!1,o=0,d=[];const m=Z(),z=Z(),P=Z(),j=Z(),k=Z(),A=Z(),M=Z(),he=Z(),Re=Z(),Ie=Z(),Je=Z(),Ee=Z(),Fe=Z(),Oe=Z(),xe=ue(),ze=Z(),Pe=Z(),je=Z(),ke=Z(),Ae=be(),Me=be(),Ne=be(),Be=be(),De=be(),He=be(),We=be(),qe=be(),Ge=be(),Ke=be(),Qe=be(),Ue=be(),Xe=be(),Ye=be(),Ze=be(),$e=be(),_e=be(),et=be(),tt=be(),st=be(),nt=be(),at=be(),lt=Z(),ot=be(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=ge(),l=Z();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const c=n(1);return te(l,c,[e,a,o,r,i]),fe(de(a,o??[s],ue),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==E(t)?x(n,e):null===t[s]?X(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(_(e,t),s+1)));return a(e,0),n})(e,n),(e=>X(e,(e=>_(l,e)[0](t,...n??[],...a))))),e=>L(_(l,e),(([,t,n])=>(de(t,n??[s],void 0,(t=>(Y(t,e),Q(t)?1:0))),te(l,e),a(e),n))),e=>L(_(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...a(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!q(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=l||(pe(e[i])!=t&&D(e,i),0))},ft=(t,s)=>(!e||K(Je,s)||Ht(s))&&q(t,((e,t)=>ht(s,t,e)),(()=>Ht(s))),ht=(e,t,s,n)=>q(n?s:St(s,e,t),((n,a)=>L(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ht(e,t))),gt=(t,s,n,a)=>e?L(_(_(Je,t),n),(e=>pe(a)!=e[r]?Ht(t,s,n,a,e[i]):a),(()=>Ht(t,s,n,a))):w(pe(a))?Ht(t,s,n,a):a,Tt=(e,t)=>q(t?e:Vt(e),((t,s)=>L(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Wt())),bt=(e,s)=>t?L(_(Fe,e),(t=>pe(s)!=t[r]?Wt(e,s,t[i]):s),(()=>Wt(e,s))):w(pe(s))?Wt(e,s):s,St=(e,t,s)=>(L(_(Ee,t),(([n,a])=>{X(n,((t,s)=>{B(e,s)||(e[s]=t)})),X(a,(n=>{B(e,n)||Ht(t,s,n)}))})),e),Vt=e=>(t&&(X(Oe,((t,s)=>{B(e,s)||(e[s]=t)})),X(xe,(t=>{B(e,t)||Wt(t)}))),e),pt=e=>ne(Je,e,((e,t,s)=>{const n=Z(),a=ue();ne(se(Je,t,Z),s,((e,t,s)=>{te(e,t,s),L(s[i],(e=>te(n,t,e)),(()=>fe(a,t)))})),te(Ee,t,[n,a])}),((e,t)=>{te(Je,t),te(Ee,t)})),yt=e=>ne(Fe,e,((e,t,s)=>{te(Fe,t,s),L(s[i],(e=>te(Oe,t,e)),(()=>fe(xe,t)))}),((e,t)=>{te(Fe,t),te(Oe,t),Y(xe,t)})),Ct=e=>W(e)?Cs():bs(e),vt=e=>ne(je,e,((e,t,s)=>mt(t,s)),((e,t)=>xt(t))),mt=(e,t)=>ne(se(je,e,(()=>(kt(e,1),te(ze,e,ge()),te(Pe,e,Z()),Z()))),t,((t,s,n)=>wt(e,t,s,n)),((t,s)=>zt(e,t,s))),wt=(e,t,s,n,a)=>ne(se(t,s,(()=>(At(e,s,1),Z()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>Pt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{K(s,n)||Mt(e,t,n,1);const l=_(s,n);a!==l&&(Nt(e,t,n,l,a),te(s,n,a))},Rt=(e,t,s,n,a)=>L(_(t,s),(t=>Lt(e,s,t,n,a)),(()=>wt(e,t,s,St({[n]:a},e,s)))),It=e=>W(e)?ws():Ss(e),Jt=e=>ne(ke,e,((e,t,s)=>Et(t,s)),((e,t)=>jt(t))),Et=(e,t)=>{K(ke,e)||Bt(e,1);const s=_(ke,e);t!==s&&(Dt(e,s,t),te(ke,e,t))},Ft=(e,t)=>{const[s]=_(ze,e),n=s(t);return K(_(je,e),n)?Ft(e,t):n},Ot=e=>_(je,e)??mt(e,{}),xt=e=>mt(e,{}),zt=(e,t,s)=>{const[,n]=_(ze,e);n(s),wt(e,t,s,{},!0)},Pt=(e,t,s,n,a,l)=>{const o=_(_(Ee,e)?.[0],a);if(!w(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{Nt(e,s,t,_(n,t)),Mt(e,s,t,-1),te(n,t)};w(o)?r(a):ee(n,r),Q(n)&&(At(e,s,-1),Q(te(t,s))&&(kt(e,-1),te(je,e),te(ze,e),te(Pe,e)))},jt=e=>{const t=_(Oe,e);if(!w(t))return Et(e,t);Dt(e,_(ke,e)),Bt(e,-1),te(ke,e)},kt=(e,t)=>we(m,e,t),At=(e,t,s)=>we(se(j,e,Z),t,s)&&te(P,e,se(P,e,(()=>0))+s),Mt=(e,t,s,n)=>{const a=_(Pe,e),l=_(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(se(z,e,Z),s,n),te(a,s,l!=-n?l+n:null),we(se(se(k,e,Z),t,Z),s,n)},Nt=(e,t,s,n,a)=>{se(se(se(A,e,Z),t,Z),s,(()=>[n,0]))[1]=a,d[3]?.(e,t,s,a)},Bt=(e,t)=>we(M,e,t),Dt=(e,t,s)=>{se(he,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},Ht=(e,t,s,n,a)=>(x(se(se(se(Re,e,Z),t,Z),s,(()=>[])),n),a),Wt=(e,t,s)=>(x(se(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>L(_(_(_(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(ls(e,t,s))])),Gt=e=>L(_(he,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(is(e))])),Kt=e=>Q(Re)||Q($e[e])?0:X(e?ce(Re):Re,((t,s)=>X(t,((t,n)=>X(t,((t,a)=>it($e[e],[s,n,a],t))))))),Qt=e=>Q(Ie)||Q(_e[e])?0:X(e?re(Ie):Ie,((t,s)=>it(_e[e],[s],t))),Ut=(e,t,s,n)=>{if(!Q(e))return it(t,n,(()=>ae(e))),ee(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Xt=e=>{const t=cs();t!=n&&it(Ae[e],void 0,t);const s=Q(Ke[e]),a=Q(Xe[e])&&Q(Ye[e])&&Q(Ge[e])&&Q(Qe[e])&&Q(He[e])&&Q(We[e])&&Q(qe[e])&&s&&Q(Ne[e])&&Q(Be[e]),l=Q(Ze[e])&&Q(Ue[e])&&Q(De[e])&&Q(Me[e]);if(!a||!l){const t=e?[re(m),ie(z),re(P),ie(j),ce(k),ce(A)]:[m,z,P,j,k,A];if(!a){Ut(t[0],Ne[e],Be[e]),X(t[1],((t,s)=>Ut(t,He[e],We[e],[s]))),X(t[2],((t,s)=>{0!=t&&it(qe[e],[s],ts(s))}));const n=ue();X(t[3],((t,a)=>{Ut(t,Ge[e],Qe[e],[a])&&!s&&(it(Ke[e],[a,null]),fe(n,a))})),s||X(t[5],((t,s)=>{if(!K(n,s)){const n=ue();X(t,(e=>X(e,(([t,s],a)=>s!==t?fe(n,a):Y(e,a))))),X(n,(t=>it(Ke[e],[s,t])))}})),X(t[4],((t,s)=>X(t,((t,n)=>Ut(t,Xe[e],Ye[e],[s,n])))))}if(!l){let s;X(t[5],((t,n)=>{let a;X(t,((t,l)=>{let o;X(t,(([t,r],i)=>{r!==t&&(it(Ze[e],[n,l,i],r,t,qt),s=a=o=1)})),o&&it(Ue[e],[n,l],qt)})),a&&it(De[e],[n],qt)})),s&&it(Me[e],void 0,qt)}}},Yt=e=>{const t=gs();t!=a&&it(et[e],void 0,t);const s=Q(st[e])&&Q(nt[e]),n=Q(at[e])&&Q(tt[e]);if(!s||!n){const t=e?[re(M),re(he)]:[M,he];if(s||Ut(t[0],st[e],nt[e]),!n){let s;X(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,Gt),s=1)})),s&&it(tt[e],void 0,Gt)}}},Zt=(e,...t)=>(Is((()=>e(...O(t,v)))),Fs),$t=()=>oe(je),_t=()=>$(je),es=e=>$(_(Pe,v(e))),ts=e=>G(_(je,v(e))),ss=e=>$(_(je,v(e))),ns=(e,t,s,n=0,a)=>{return O(J((o=_(je,v(e)),r=(e,s)=>[w(t)?s:_(e,v(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,w(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>$(_(_(je,v(e)),v(t))),ls=(e,t,s)=>_(_(_(je,v(e)),v(t)),v(s)),os=()=>ae(ke),rs=()=>$(ke),is=e=>_(ke,v(e)),cs=()=>!Q(je),ds=e=>K(je,v(e)),us=(e,t)=>K(_(Pe,v(e)),v(t)),fs=(e,t)=>K(_(je,v(e)),v(t)),hs=(e,t,s)=>K(_(_(je,v(e)),v(t)),v(s)),gs=()=>!Q(ke),Ts=e=>K(ke,v(e)),bs=e=>Zt((()=>(e=>q(e,ft,Ht))(e)?vt(e):0)),Ss=e=>Zt((()=>Tt(e)?Jt(e):0)),Vs=e=>{try{Ct(me(e))}catch{}return Fs},ps=t=>Zt((()=>{if((e=q(t,(e=>q(e,ut))))&&(pt(t),!Q(je))){const e=$t();Cs(),bs(e)}})),ys=e=>Zt((()=>{if(t=(e=>q(e,ut))(e)){const s=os();Rs(),ws(),t=!0,yt(e),Ss(s)}})),Cs=()=>Zt((()=>vt({}))),vs=e=>Zt((e=>K(je,e)?xt(e):0),e),ms=(e,t)=>Zt(((e,t)=>L(_(je,e),(s=>K(s,t)?zt(e,s,t):0))),e,t),ws=()=>Zt((()=>Jt({}))),Ls=()=>Zt((()=>{pt({}),e=!1})),Rs=()=>Zt((()=>{yt({}),t=!1})),Is=(e,t)=>{if(-1!=o){Js();const s=e();return Es(t),s}},Js=()=>(-1!=o&&o++,1==o&&(d[0]?.(),it(lt)),Fs),Es=e=>(o>0&&(o--,0==o&&(o=1,Kt(1),Q(A)||Xt(1),Qt(1),Q(he)||Yt(1),e?.(Fs)&&(X(A,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>ye(Fs,t,s,n,e))))))),U(A),X(he,(([e],t)=>Ce(Fs,t,e))),U(he)),it(ot[0],void 0),o=-1,Kt(0),Q(A)||Xt(0),Qt(0),Q(he)||Yt(0),d[1]?.(),it(ot[1],void 0),d[2]?.(),o=0,n=cs(),a=gs(),F([m,z,P,j,k,A,Re,M,he,Ie],U))),Fs),Fs={getContent:()=>[$t(),os()],getTables:$t,getTableIds:_t,getTable:e=>le(_(je,v(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ae(_(_(je,v(e)),v(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:fs,hasCell:hs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ve(je),getValuesJson:()=>ve(ke),getJson:()=>ve([je,ke]),getTablesSchemaJson:()=>ve(Je),getValuesSchemaJson:()=>ve(Fe),getSchemaJson:()=>ve([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Zt((()=>{(W(e)?Cs:bs)(e),(W(t)?ws:Ss)(t)})),setTables:bs,setTable:(e,t)=>Zt((e=>ft(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ht(e,t,s)?wt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ht(e,n,t)&&(e=v(e),wt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ht(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Zt(((e,t,s)=>L(gt(e,t,s,I(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>Zt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Zt((e=>L(bt(e,I(t)?t(is(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Zt((()=>{H(e[0],((e,t)=>w(e)?vs(t):H(e,((e,s)=>w(e)?ms(t,s):H(e,((e,n)=>ye(Fs,t,s,n,e))))))),H(e[1],((e,t)=>Ce(Fs,t,e)))})),setTablesJson:Vs,setValuesJson:e=>{try{It(me(e))}catch{}return Fs},setJson:e=>Zt((()=>{try{const[t,s]=me(e);Ct(t),It(s)}catch{Vs(e)}})),setTablesSchema:ps,setValuesSchema:ys,setSchema:(e,t)=>Zt((()=>{ps(e),ys(t)})),delTables:Cs,delTable:vs,delRow:ms,delCell:(e,t,s,n)=>Zt(((e,t,s)=>L(_(je,e),(a=>L(_(a,t),(l=>K(l,s)?Pt(e,a,t,l,s,n):0))))),e,t,s),delValues:ws,delValue:e=>Zt((e=>K(ke,e)?jt(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Zt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ae(A,((e,t)=>-1===_(m,t)?void 0:ae(e,((e,s)=>-1===_(_(j,t),s)?void 0:ae(e,(([,e])=>e),(e=>Ve(e)))),Q,W)),Q,W),ae(he,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!Q(A),!Q(he),oe(A,Se,Ve),oe(Re),ae(he,Se,Ve),ae(Ie),ae(m),le(j),oe(k),ae(M)],finishTransaction:Es,forEachTable:e=>X(je,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>ee(t,e))))))))),forEachTableCell:(e,t)=>ee(_(Pe,v(e)),t),forEachRow:(e,t)=>X(_(je,v(e)),((e,s)=>t(s,(t=>ee(e,t))))),forEachCell:(e,t,s)=>ee(_(_(je,v(e)),v(t)),s),forEachValue:e=>ee(ke,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ke[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(ct(e),Fs),getListenerStats:()=>({}),createStore:Le,addListener:rt,callListeners:it,setInternalListeners:(e,t,s,n,a)=>d=[e,t,s,n,a]};return H({[c+f]:[0,Ae,[],()=>[cs()]],[f]:[0,Me],[h]:[0,Ne],[c+u]:[1,Be,[_t],e=>[ds(...e)]],[u]:[1,De,[_t]],[u+V]:[1,He,[_t]],[c+u+S]:[2,We,[_t,es],e=>[us(...e)]],[T]:[1,qe,[_t]],[b]:[1,Ge,[_t]],[c+g]:[2,Qe,[_t,ss],e=>[fs(...e)]],[g]:[2,Ue,[_t,ss]],[V]:[2,Xe,[_t,ss]],[c+S]:[3,Ye,[_t,ss,as],e=>[hs(...e)]],[S]:[3,Ze,[_t,ss,as],e=>Te(ls(...e))],InvalidCell:[3,$e],[c+y]:[0,et,[],()=>[gs()]],[y]:[0,tt],[C]:[0,st],[c+p]:[1,nt,[rs],e=>[Ts(...e)]],[p]:[1,at,[rs],e=>Te(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),N(Fs)};e.createStore=Le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",f=u+"s",h=u+d,g="Row",T=g+"Count",b=g+d,S="Cell",V=S+d,p="Value",y=p+"s",C=p+d,v=e=>s+e,m=isFinite,w=e=>null==e,L=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==a,I=e=>t(e)==o,J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,M=e=>z.getPrototypeOf(e),P=z.entries,j=z.isFrozen,k=e=>!w(e)&&L(M(e),(e=>e==z.prototype||w(M(e))),(()=>!0)),A=z.keys,N=z.freeze,B=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>O(P(e),(([e,s])=>t(s,e))),W=e=>k(e)&&0==(e=>E(A(e)))(e),q=(e,t,s,n=0)=>w(e)||!k(e)||!n&&W(e)||j(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),G=e=>e?.size??0,K=(e,t)=>e?.has(t)??!1,Q=e=>w(e)||0==G(e),U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),$=e=>[...e?.keys()??[]],_=(e,t)=>e?.get(t),ee=(e,t)=>X(e,((e,s)=>t(s,e))),te=(e,t,s)=>w(s)?(Y(e,t),e):e?.set(t,s),se=(e,t,s,n)=>(K(e,t)?n?.(_(e,t)):te(e,t,s()),_(e,t)),ne=(e,t,s,n=te)=>(H(t,((t,n)=>s(e,n,t))),ee(e,(s=>B(t,s)?0:n(e,s))),e),ae=(e,t,s,n)=>{const a={};return X(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},le=(e,t,s)=>ae(e,(e=>ae(e,t,s)),Q,W),oe=(e,t,s)=>ae(e,(e=>le(e,t,s)),Q,W),re=(e,t)=>{const s=Z();return X(e,((e,n)=>s.set(n,t?.(e)??e))),s},ie=e=>re(e,re),ce=e=>re(e,ie),de=(e,t,s,n,a=0)=>L((s?se:_)(e,t[a],a>E(t)-2?s:Z),(l=>{if(a>E(t)-2)return n?.(l)&&te(e,t[a]),l;const o=de(l,t,s,n,a+1);return Q(l)&&te(e,t[a]),o})),ue=e=>new Set(Array.isArray(e)||w(e)?e:[e]),fe=(e,t)=>e?.add(t),he=/^\d+$/,ge=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{he.test(t)&&E(e)<1e3&&x(e,t)}]},Te=e=>[e,e],be=()=>[Z(),Z()],Se=e=>[...e],Ve=([e,t])=>e===t,pe=e=>{const s=t(e);return R(s)||s==l&&m(e)?s:void 0},ye=(e,t,s,n,a)=>w(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ce=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),me=JSON.parse;Z(O("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),((e,t)=>[e,t])));const we=(e,t,s)=>te(e,t,_(e,t)==-s?void 0:s),Le=()=>{let e,t,n=!1,a=!1,o=0,d=[];const m=Z(),z=Z(),M=Z(),P=Z(),j=Z(),k=Z(),A=Z(),he=Z(),Re=Z(),Ie=Z(),Je=Z(),Ee=Z(),Fe=Z(),Oe=Z(),xe=ue(),ze=Z(),Me=Z(),Pe=Z(),je=Z(),ke=be(),Ae=be(),Ne=be(),Be=be(),De=be(),He=be(),We=be(),qe=be(),Ge=be(),Ke=be(),Qe=be(),Ue=be(),Xe=be(),Ye=be(),Ze=be(),$e=be(),_e=be(),et=be(),tt=be(),st=be(),nt=be(),at=be(),lt=Z(),ot=be(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=ge(),l=Z();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const c=n(1);return te(l,c,[e,a,o,r,i]),fe(de(a,o??[s],ue),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==E(t)?x(n,e):null===t[s]?X(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(_(e,t),s+1)));return a(e,0),n})(e,n),(e=>X(e,(e=>_(l,e)[0](t,...n??[],...a))))),e=>L(_(l,e),(([,t,n])=>(de(t,n??[s],void 0,(t=>(Y(t,e),Q(t)?1:0))),te(l,e),a(e),n))),e=>L(_(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...a(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!q(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=l||(pe(e[i])!=t&&D(e,i),0))},ft=(t,s)=>(!e||K(Je,s)||Ht(s))&&q(t,((e,t)=>ht(s,t,e)),(()=>Ht(s))),ht=(e,t,s,n)=>q(n?s:St(s,e,t),((n,a)=>L(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ht(e,t))),gt=(t,s,n,a)=>e?L(_(_(Je,t),n),(e=>pe(a)!=e[r]?Ht(t,s,n,a,e[i]):a),(()=>Ht(t,s,n,a))):w(pe(a))?Ht(t,s,n,a):a,Tt=(e,t)=>q(t?e:Vt(e),((t,s)=>L(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Wt())),bt=(e,s)=>t?L(_(Fe,e),(t=>pe(s)!=t[r]?Wt(e,s,t[i]):s),(()=>Wt(e,s))):w(pe(s))?Wt(e,s):s,St=(e,t,s)=>(L(_(Ee,t),(([n,a])=>{X(n,((t,s)=>{B(e,s)||(e[s]=t)})),X(a,(n=>{B(e,n)||Ht(t,s,n)}))})),e),Vt=e=>(t&&(X(Oe,((t,s)=>{B(e,s)||(e[s]=t)})),X(xe,(t=>{B(e,t)||Wt(t)}))),e),pt=e=>ne(Je,e,((e,t,s)=>{const n=Z(),a=ue();ne(se(Je,t,Z),s,((e,t,s)=>{te(e,t,s),L(s[i],(e=>te(n,t,e)),(()=>fe(a,t)))})),te(Ee,t,[n,a])}),((e,t)=>{te(Je,t),te(Ee,t)})),yt=e=>ne(Fe,e,((e,t,s)=>{te(Fe,t,s),L(s[i],(e=>te(Oe,t,e)),(()=>fe(xe,t)))}),((e,t)=>{te(Fe,t),te(Oe,t),Y(xe,t)})),Ct=e=>W(e)?Cs():bs(e),vt=e=>ne(Pe,e,((e,t,s)=>mt(t,s)),((e,t)=>xt(t))),mt=(e,t)=>ne(se(Pe,e,(()=>(jt(e,1),te(ze,e,ge()),te(Me,e,Z()),Z()))),t,((t,s,n)=>wt(e,t,s,n)),((t,s)=>zt(e,t,s))),wt=(e,t,s,n,a)=>ne(se(t,s,(()=>(kt(e,s,1),Z()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>Mt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{K(s,n)||At(e,t,n,1);const l=_(s,n);a!==l&&(Nt(e,t,n,l,a),te(s,n,a))},Rt=(e,t,s,n,a)=>L(_(t,s),(t=>Lt(e,s,t,n,a)),(()=>wt(e,t,s,St({[n]:a},e,s)))),It=e=>W(e)?ws():Ss(e),Jt=e=>ne(je,e,((e,t,s)=>Et(t,s)),((e,t)=>Pt(t))),Et=(e,t)=>{K(je,e)||Bt(e,1);const s=_(je,e);t!==s&&(Dt(e,s,t),te(je,e,t))},Ft=(e,t)=>{const[s]=_(ze,e),n=s(t);return K(_(Pe,e),n)?Ft(e,t):n},Ot=e=>_(Pe,e)??mt(e,{}),xt=e=>mt(e,{}),zt=(e,t,s)=>{const[,n]=_(ze,e);n(s),wt(e,t,s,{},!0)},Mt=(e,t,s,n,a,l)=>{const o=_(_(Ee,e)?.[0],a);if(!w(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{Nt(e,s,t,_(n,t)),At(e,s,t,-1),te(n,t)};w(o)?r(a):ee(n,r),Q(n)&&(kt(e,s,-1),Q(te(t,s))&&(jt(e,-1),te(Pe,e),te(ze,e),te(Me,e)))},Pt=e=>{const t=_(Oe,e);if(!w(t))return Et(e,t);Dt(e,_(je,e)),Bt(e,-1),te(je,e)},jt=(e,t)=>we(m,e,t),kt=(e,t,s)=>we(se(P,e,Z),t,s)&&te(M,e,se(M,e,(()=>0))+s),At=(e,t,s,n)=>{const a=_(Me,e),l=_(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(se(z,e,Z),s,n),te(a,s,l!=-n?l+n:null),we(se(se(j,e,Z),t,Z),s,n)},Nt=(e,t,s,n,a)=>{se(se(se(k,e,Z),t,Z),s,(()=>[n,0]))[1]=a,d[3]?.(e,t,s,a)},Bt=(e,t)=>we(A,e,t),Dt=(e,t,s)=>{se(he,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},Ht=(e,t,s,n,a)=>(x(se(se(se(Re,e,Z),t,Z),s,(()=>[])),n),a),Wt=(e,t,s)=>(x(se(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>L(_(_(_(k,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(ls(e,t,s))])),Gt=e=>L(_(he,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(is(e))])),Kt=e=>Q(Re)||Q($e[e])?0:X(e?ce(Re):Re,((t,s)=>X(t,((t,n)=>X(t,((t,a)=>it($e[e],[s,n,a],t))))))),Qt=e=>Q(Ie)||Q(_e[e])?0:X(e?re(Ie):Ie,((t,s)=>it(_e[e],[s],t))),Ut=(e,t,s,n)=>{if(!Q(e))return it(t,n,(()=>ae(e))),ee(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Xt=e=>{const t=cs();t!=n&&it(ke[e],void 0,t);const s=Q(Ke[e]),a=Q(Xe[e])&&Q(Ye[e])&&Q(Ge[e])&&Q(Qe[e])&&Q(He[e])&&Q(We[e])&&Q(qe[e])&&s&&Q(Ne[e])&&Q(Be[e]),l=Q(Ze[e])&&Q(Ue[e])&&Q(De[e])&&Q(Ae[e]);if(!a||!l){const t=e?[re(m),ie(z),re(M),ie(P),ce(j),ce(k)]:[m,z,M,P,j,k];if(!a){Ut(t[0],Ne[e],Be[e]),X(t[1],((t,s)=>Ut(t,He[e],We[e],[s]))),X(t[2],((t,s)=>{0!=t&&it(qe[e],[s],ts(s))}));const n=ue();X(t[3],((t,a)=>{Ut(t,Ge[e],Qe[e],[a])&&!s&&(it(Ke[e],[a,null]),fe(n,a))})),s||X(t[5],((t,s)=>{if(!K(n,s)){const n=ue();X(t,(e=>X(e,(([t,s],a)=>s!==t?fe(n,a):Y(e,a))))),X(n,(t=>it(Ke[e],[s,t])))}})),X(t[4],((t,s)=>X(t,((t,n)=>Ut(t,Xe[e],Ye[e],[s,n])))))}if(!l){let s;X(t[5],((t,n)=>{let a;X(t,((t,l)=>{let o;X(t,(([t,r],i)=>{r!==t&&(it(Ze[e],[n,l,i],r,t,qt),s=a=o=1)})),o&&it(Ue[e],[n,l],qt)})),a&&it(De[e],[n],qt)})),s&&it(Ae[e],void 0,qt)}}},Yt=e=>{const t=gs();t!=a&&it(et[e],void 0,t);const s=Q(st[e])&&Q(nt[e]),n=Q(at[e])&&Q(tt[e]);if(!s||!n){const t=e?[re(A),re(he)]:[A,he];if(s||Ut(t[0],st[e],nt[e]),!n){let s;X(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,Gt),s=1)})),s&&it(tt[e],void 0,Gt)}}},Zt=(e,...t)=>(Is((()=>e(...O(t,v)))),Fs),$t=()=>oe(Pe),_t=()=>$(Pe),es=e=>$(_(Me,v(e))),ts=e=>G(_(Pe,v(e))),ss=e=>$(_(Pe,v(e))),ns=(e,t,s,n=0,a)=>{return O(J((o=_(Pe,v(e)),r=(e,s)=>[w(t)?s:_(e,v(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,w(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>$(_(_(Pe,v(e)),v(t))),ls=(e,t,s)=>_(_(_(Pe,v(e)),v(t)),v(s)),os=()=>ae(je),rs=()=>$(je),is=e=>_(je,v(e)),cs=()=>!Q(Pe),ds=e=>K(Pe,v(e)),us=(e,t)=>K(_(Me,v(e)),v(t)),fs=(e,t)=>K(_(Pe,v(e)),v(t)),hs=(e,t,s)=>K(_(_(Pe,v(e)),v(t)),v(s)),gs=()=>!Q(je),Ts=e=>K(je,v(e)),bs=e=>Zt((()=>(e=>q(e,ft,Ht))(e)?vt(e):0)),Ss=e=>Zt((()=>Tt(e)?Jt(e):0)),Vs=e=>{try{Ct(me(e))}catch{}return Fs},ps=t=>Zt((()=>{if((e=q(t,(e=>q(e,ut))))&&(pt(t),!Q(Pe))){const e=$t();Cs(),bs(e)}})),ys=e=>Zt((()=>{if(t=(e=>q(e,ut))(e)){const s=os();Rs(),ws(),t=!0,yt(e),Ss(s)}})),Cs=()=>Zt((()=>vt({}))),vs=e=>Zt((e=>K(Pe,e)?xt(e):0),e),ms=(e,t)=>Zt(((e,t)=>L(_(Pe,e),(s=>K(s,t)?zt(e,s,t):0))),e,t),ws=()=>Zt((()=>Jt({}))),Ls=()=>Zt((()=>{pt({}),e=!1})),Rs=()=>Zt((()=>{yt({}),t=!1})),Is=(e,t)=>{if(-1!=o){Js();const s=e();return Es(t),s}},Js=()=>(-1!=o&&o++,1==o&&(d[0]?.(),it(lt)),Fs),Es=e=>(o>0&&(o--,0==o&&(o=1,Kt(1),Q(k)||Xt(1),Qt(1),Q(he)||Yt(1),e?.(Fs)&&(X(k,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>ye(Fs,t,s,n,e))))))),U(k),X(he,(([e],t)=>Ce(Fs,t,e))),U(he)),it(ot[0],void 0),o=-1,Kt(0),Q(k)||Xt(0),Qt(0),Q(he)||Yt(0),d[1]?.(),it(ot[1],void 0),d[2]?.(),o=0,n=cs(),a=gs(),F([m,z,M,P,j,k,Re,A,he,Ie],U))),Fs),Fs={getContent:()=>[$t(),os()],getTables:$t,getTableIds:_t,getTable:e=>le(_(Pe,v(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ae(_(_(Pe,v(e)),v(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:fs,hasCell:hs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ve(Pe),getValuesJson:()=>ve(je),getJson:()=>ve([Pe,je]),getTablesSchemaJson:()=>ve(Je),getValuesSchemaJson:()=>ve(Fe),getSchemaJson:()=>ve([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Zt((()=>{(W(e)?Cs:bs)(e),(W(t)?ws:Ss)(t)})),setTables:bs,setTable:(e,t)=>Zt((e=>ft(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ht(e,t,s)?wt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ht(e,n,t)&&(e=v(e),wt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ht(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Zt(((e,t,s)=>L(gt(e,t,s,I(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>Zt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Zt((e=>L(bt(e,I(t)?t(is(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Zt((()=>{H(e[0],((e,t)=>w(e)?vs(t):H(e,((e,s)=>w(e)?ms(t,s):H(e,((e,n)=>ye(Fs,t,s,n,e))))))),H(e[1],((e,t)=>Ce(Fs,t,e)))})),setTablesJson:Vs,setValuesJson:e=>{try{It(me(e))}catch{}return Fs},setJson:e=>Zt((()=>{try{const[t,s]=me(e);Ct(t),It(s)}catch{Vs(e)}})),setTablesSchema:ps,setValuesSchema:ys,setSchema:(e,t)=>Zt((()=>{ps(e),ys(t)})),delTables:Cs,delTable:vs,delRow:ms,delCell:(e,t,s,n)=>Zt(((e,t,s)=>L(_(Pe,e),(a=>L(_(a,t),(l=>K(l,s)?Mt(e,a,t,l,s,n):0))))),e,t,s),delValues:ws,delValue:e=>Zt((e=>K(je,e)?Pt(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Zt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ae(k,((e,t)=>-1===_(m,t)?void 0:ae(e,((e,s)=>-1===_(_(P,t),s)?void 0:ae(e,(([,e])=>e),(e=>Ve(e)))),Q,W)),Q,W),ae(he,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!Q(k),!Q(he),oe(k,Se,Ve),oe(Re),ae(he,Se,Ve),ae(Ie),ae(m),le(P),oe(j),ae(A)],finishTransaction:Es,forEachTable:e=>X(Pe,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>ee(t,e))))))))),forEachTableCell:(e,t)=>ee(_(Me,v(e)),t),forEachRow:(e,t)=>X(_(Pe,v(e)),((e,s)=>t(s,(t=>ee(e,t))))),forEachCell:(e,t,s)=>ee(_(_(Pe,v(e)),v(t)),s),forEachValue:e=>ee(je,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ke[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(ct(e),Fs),getListenerStats:()=>({}),isMergeable:()=>!1,createStore:Le,addListener:rt,callListeners:it,setInternalListeners:(e,t,s,n,a)=>d=[e,t,s,n,a]};return H({[c+f]:[0,ke,[],()=>[cs()]],[f]:[0,Ae],[h]:[0,Ne],[c+u]:[1,Be,[_t],e=>[ds(...e)]],[u]:[1,De,[_t]],[u+V]:[1,He,[_t]],[c+u+S]:[2,We,[_t,es],e=>[us(...e)]],[T]:[1,qe,[_t]],[b]:[1,Ge,[_t]],[c+g]:[2,Qe,[_t,ss],e=>[fs(...e)]],[g]:[2,Ue,[_t,ss]],[V]:[2,Xe,[_t,ss]],[c+S]:[3,Ye,[_t,ss,as],e=>[hs(...e)]],[S]:[3,Ze,[_t,ss,as],e=>Te(ls(...e))],InvalidCell:[3,$e],[c+y]:[0,et,[],()=>[gs()]],[y]:[0,tt],[C]:[0,st],[c+p]:[1,nt,[rs],e=>[Ts(...e)]],[p]:[1,at,[rs],e=>Te(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),N(Fs)};e.createStore=Le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),o=Object,s=e=>o.getPrototypeOf(e),r=o.entries,i=o.keys,c=o.freeze,l=(e,t)=>((e,t)=>e.forEach(t))(r(e),(([e,a])=>t(a,e))),g=e=>(e=>!a(e)&&n(s(e),(e=>e==o.prototype||a(s(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),y=(e,t)=>e?.delete(t),d=e=>new Map(e),f=(e,t)=>e?.get(t),h=(e,t,n)=>a(n)?(y(e,t),e):e?.set(t,n),p=(e,t,a,n)=>{var o,s;return o=e,s=t,o?.has(s)||h(e,t,a()),f(e,t)};new globalThis.TextEncoder;const v=(e,t)=>t?[e,t]:[e],w=(e,t)=>((e??"")>(t??"")?e:t)??"",b=(e="")=>v(((e=[])=>o.fromEntries(e))(),e),A=d(),M=d(),S="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;d((C=(e,t)=>[e,t],S.map(C)));const T=(e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+S[63&t]),""),m=d();e.createLocalSynchronizer=(e,o)=>{const s=T();return((e,o,s,r,i,S,C={})=>{let m;const L=d();s(((t,s,r,i)=>{0==r?n(f(L,s),(([e,n])=>a(e)||e==t?n(i,t):0)):2==r&&z.isAutoLoading()?x(t,i).then((e=>{m?.(void 0,e)})):3==r&&z.isAutoLoading()?m?.(void 0,i):n(1==r&&z.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=>{o(t,s,0,e)}))}));const H=async(e,a,n="")=>new t(((t,s)=>{const r=T(),c=setTimeout((()=>{y(L,r),s(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);h(L,r,[e,(e,a)=>{clearTimeout(c),y(L,r),t([e,a])}]),o(e,r,a,n)})),D=(e,[t,a])=>{l(t,(([t,a],n)=>{const o=u(e[0],n,b);l(t,(([e,t],a)=>{const n=u(o[0],a,b);l(e,(([e,t],a)=>n[0][a]=v(e,t))),n[1]=w(n[1],t)})),o[1]=w(o[1],a)})),e[1]=w(e[1],a)},x=async(t=null,n)=>{a(n)&&([n,t]=await H(t,1));const[o,s]=n,[r,i]=e.getMergeableContentHashes();let c=b();if(r!=o){const[a,n]=(await H(t,4,e.getMergeableTableHashes()))[0];if(c=a,!g(n)){const[a,o]=(await H(t,5,e.getMergeableRowHashes(n)))[0];if(D(c,a),!g(o)){const a=(await H(t,6,e.getMergeableCellHashes(o)))[0];D(c,a)}}}return[c,i==s?b():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},z=((e,t,o,s,r,i,l,u={},y=[])=>{let d,v,w,b=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,T,m,L]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!g(e)||!g(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!g(e)||!g(t),t.setContent]:0)(l,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 R((async()=>{try{H(await t())}catch(t){i?.(t),e&&L(e)}b=0}))),V),x=()=>(v&&(r(v),v=void 0),V),z=async e=>(1!=b&&(b=2,await R((async()=>{try{await o(C,e)}catch(e){i?.(e)}b=0}))),V),E=()=>(n(w,e.delListener),w=void 0,V),R=async(...e)=>(((e,...t)=>{e.push(...t)})(f(M,y),...e),await(async()=>{if(!f(A,y)){for(h(A,y,1);!a((e=f(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}h(A,y,0)}var e})(),V),V={load:D,startAutoLoad:async e=>(await x().load(e),v=s((async(e,t)=>{t||e?2!=b&&(b=1,H(t??e),b=0):await D()})),V),stopAutoLoad:x,isAutoLoading:()=>!a(v),save:z,startAutoSave:async()=>(await E().save(),w=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&z(e)})),V),stopAutoSave:E,isAutoSaving:()=>!a(w),schedule:R,getStore:()=>e,destroy:()=>x().stopAutoSave(),getStats:()=>({}),...u};return c(V)})(e,(async()=>{const e=await x();return g(e[0][0])&&g(e[1][0])?void 0:e}),(async(t,a)=>{a?o(null,null,3,a):o(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),S,2,{startSync:async e=>await(await z.startAutoLoad(e)).startAutoSave(),stopSync:()=>z.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),z.stopSync()),getSynchronizerStats:()=>({}),...C});return z})(e,((e,t,n,o)=>{setTimeout((()=>{return a(e)?(r=m,r?.forEach(((e,a)=>{return r=e,a!=s?r(s,t,n,o):0;var r}))):f(m,e)?.(s,t,n,o);var r}),0)}),(e=>{h(m,s,e)}),(()=>{y(m,s)}),.01,o)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerLocal={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),o=Object,s=e=>o.getPrototypeOf(e),r=o.entries,i=o.keys,l=o.freeze,c=(e,t)=>((e,t)=>e.forEach(t))(r(e),(([e,a])=>t(a,e))),g=e=>(e=>!a(e)&&n(s(e),(e=>e==o.prototype||a(s(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),y=(e,t)=>e?.delete(t),d=e=>new Map(e),f=(e,t)=>e?.get(t),h=(e,t,n)=>a(n)?(y(e,t),e):e?.set(t,n),p=(e,t,a,n)=>{var o,s;return o=e,s=t,o?.has(s)||h(e,t,a()),f(e,t)};new globalThis.TextEncoder;const b=(e,t)=>t?[e,t]:[e],w=(e,t)=>((e??"")>(t??"")?e:t)??"",v=(e="")=>b(((e=[])=>o.fromEntries(e))(),e),A=d(),M=d(),S="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;d((C=(e,t)=>[e,t],S.map(C)));const T=(e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+S[63&t]),""),L=d();e.createLocalSynchronizer=(e,o)=>{const s=T();return((e,o,s,r,i,S,C={})=>{let L;const m=d();s(((t,s,r,i)=>{0==r?n(f(m,s),(([e,n])=>a(e)||e==t?n(i,t):0)):2==r&&x.isAutoLoading()?E(t,i).then((e=>{L?.(void 0,e)})):3==r&&x.isAutoLoading()?L?.(void 0,i):n(1==r&&x.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=>{o(t,s,0,e)}))}));const H=async(e,a,n="")=>new t(((t,s)=>{const r=T(),l=setTimeout((()=>{y(m,r),s(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);h(m,r,[e,(e,a)=>{clearTimeout(l),y(m,r),t([e,a])}]),o(e,r,a,n)})),D=(e,[t,a])=>{c(t,(([t,a],n)=>{const o=u(e[0],n,v);c(t,(([e,t],a)=>{const n=u(o[0],a,v);c(e,(([e,t],a)=>n[0][a]=b(e,t))),n[1]=w(n[1],t)})),o[1]=w(o[1],a)})),e[1]=w(e[1],a)},E=async(t=null,n)=>{a(n)&&([n,t]=await H(t,1));const[o,s]=n,[r,i]=e.getMergeableContentHashes();let l=v();if(r!=o){const[a,n]=(await H(t,4,e.getMergeableTableHashes()))[0];if(l=a,!g(n)){const[a,o]=(await H(t,5,e.getMergeableRowHashes(n)))[0];if(D(l,a),!g(o)){const a=(await H(t,6,e.getMergeableCellHashes(o)))[0];D(l,a)}}}return[l,i==s?v():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},x=((e,t,o,s,r,i,c,u={},y=[])=>{let d,b,w,v=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,T,L,m]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!g(e)||!g(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!g(e)||!g(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(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!=v&&(v=1,await P((async()=>{try{H(await t())}catch(t){i?.(t),e&&m(e)}v=0}))),R),E=()=>(b&&(r(b),b=void 0),R),x=async e=>(1!=v&&(v=2,await P((async()=>{try{await o(C,e)}catch(e){i?.(e)}v=0}))),R),z=()=>(n(w,e.delListener),w=void 0,R),P=async(...e)=>(((e,...t)=>{e.push(...t)})(f(M,y),...e),await(async()=>{if(!f(A,y)){for(h(A,y,1);!a((e=f(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}h(A,y,0)}var e})(),R),R={load:D,startAutoLoad:async e=>(await E().load(e),b=s((async(e,t)=>{t||e?2!=v&&(v=1,H(t??e),v=0):await D()})),R),stopAutoLoad:E,isAutoLoading:()=>!a(b),save:x,startAutoSave:async()=>(await z().save(),w=e.addDidFinishTransactionListener((()=>{const e=T();L(e)&&x(e)})),R),stopAutoSave:z,isAutoSaving:()=>!a(w),schedule:P,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...u};return l(R)})(e,(async()=>{const e=await E();return g(e[0][0])&&g(e[1][0])?void 0:e}),(async(t,a)=>{a?o(null,null,3,a):o(null,null,2,e.getMergeableContentHashes())}),(e=>L=e),(()=>L=void 0),S,2,{startSync:async e=>await(await x.startAutoLoad(e)).startAutoSave(),stopSync:()=>x.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),x.stopSync()),getSynchronizerStats:()=>({}),...C});return x})(e,((e,t,n,o)=>{setTimeout((()=>{return a(e)?(r=L,r?.forEach(((e,a)=>{return r=e,a!=s?r(s,t,n,o):0;var r}))):f(L,e)?.(s,t,n,o);var r}),0)}),(e=>{h(L,s,e)}),(()=>{y(L,s)}),.01,o)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerLocal={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),s=(e,t,a)=>e.slice(t,a),o=e=>new t(e),r=Object,i=e=>r.getPrototypeOf(e),l=r.entries,c=r.keys,g=r.freeze,d=(e,t)=>((e,t)=>e.forEach(t))(l(e),(([e,a])=>t(a,e))),y=e=>(e=>!a(e)&&n(i(e),(e=>e==r.prototype||a(i(e))),(()=>!0)))(e)&&0==(e=>c(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),f=(e,t)=>e?.delete(t),h=e=>new Map(e),p=(e,t)=>e?.get(t),v=(e,t,n)=>a(n)?(f(e,t),e):e?.set(t,n),b=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||v(e,t,a()),p(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],S=(e,t)=>((e??"")>(t??"")?e:t)??"",A=(e="")=>w(((e=[])=>r.fromEntries(e))(),e),C=h(),M=h(),T="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var m;h((m=(e,t)=>[e,t],T.map(m)));e.createWsSynchronizer=async(e,t,r=1,i)=>{let l;const c=(e,a)=>t.addEventListener(e,a),m=((e,t,s,r,i,l,c={})=>{let m;const L=h();s(((s,o,r,i)=>{0==r?n(p(L,o),(([e,t])=>a(e)||e==s?t(i,s):0)):2==r&&x.isAutoLoading()?O(s,i).then((e=>{m?.(void 0,e)})):3==r&&x.isAutoLoading()?m?.(void 0,i):n(1==r&&x.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=>{t(s,o,0,e)}))}));const H=async(e,a,n="")=>o(((s,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+T[63&t]),""))(),l=setTimeout((()=>{f(L,r),o(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);v(L,r,[e,(e,t)=>{clearTimeout(l),f(L,r),s([e,t])}]),t(e,r,a,n)})),D=(e,[t,a])=>{d(t,(([t,a],n)=>{const s=u(e[0],n,A);d(t,(([e,t],a)=>{const n=u(s[0],a,A);d(e,(([e,t],a)=>n[0][a]=w(e,t))),n[1]=S(n[1],t)})),s[1]=S(s[1],a)})),e[1]=S(e[1],a)},O=async(t=null,n)=>{a(n)&&([n,t]=await H(t,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let l=A();if(r!=s){const[a,n]=(await H(t,4,e.getMergeableTableHashes()))[0];if(l=a,!y(n)){const[a,s]=(await H(t,5,e.getMergeableRowHashes(n)))[0];if(D(l,a),!y(s)){const a=(await H(t,6,e.getMergeableCellHashes(s)))[0];D(l,a)}}}return[l,i==o?A():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},x=((e,t,s,o,r,i,l,c={},d=[])=>{let u,f,h,w=0;b(C,d,(()=>0)),b(M,d,(()=>[]));const[S,A,T,m,L]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!y(e)||!y(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!y(e)||!y(t),t.setContent]:0)(l,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!=w&&(w=1,await z((async()=>{try{H(await t())}catch(t){i?.(t),e&&L(e)}w=0}))),N),O=()=>(f&&(r(f),f=void 0),N),x=async e=>(1!=w&&(w=2,await z((async()=>{try{await s(A,e)}catch(e){i?.(e)}w=0}))),N),E=()=>(n(h,e.delListener),h=void 0,N),z=async(...e)=>(((e,...t)=>{e.push(...t)})(p(M,d),...e),await(async()=>{if(!p(C,d)){for(v(C,d,1);!a((e=p(M,d),u=e.shift()));)try{await u()}catch(e){i?.(e)}v(C,d,0)}var e})(),N),N={load:D,startAutoLoad:async e=>(await O().load(e),f=o((async(e,t)=>{t||e?2!=w&&(w=1,H(t??e),w=0):await D()})),N),stopAutoLoad:O,isAutoLoading:()=>!a(f),save:x,startAutoSave:async()=>(await E().save(),h=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&x(e)})),N),stopAutoSave:E,isAutoSaving:()=>!a(h),schedule:z,getStore:()=>e,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...c};return g(N)})(e,(async()=>{const e=await O();return y(e[0][0])&&y(e[1][0])?void 0:e}),(async(a,n)=>{n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),l,2,{startSync:async e=>await(await x.startAutoLoad(e)).startAutoSave(),stopSync:()=>x.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),x.stopSync()),getSynchronizerStats:()=>({}),...c});return x})(e,((e,...a)=>{t.send((e??"")+"\n"+JSON.stringify(a,((e,t)=>void 0===t?"":t)))}),(e=>{l=e}),(()=>{t.close()}),r,i,{getWebSocket:()=>t});return c("message",(({data:e})=>{if(!a(l)){const a=e.toString("utf8").indexOf("\n");-1!==a&&l(s(e,0,a),...(t=s(e,a+1),JSON.parse(t,((e,t)=>""===t?void 0:t))))}var t})),o(((e,a)=>{t.readyState!=t.OPEN?(c("error",a),c("open",(()=>e(m)))):e(m)}))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsClient={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),s=(e,t,a)=>e.slice(t,a),o=e=>new t(e),r=Object,i=e=>r.getPrototypeOf(e),l=r.entries,c=r.keys,g=r.freeze,d=(e,t)=>((e,t)=>e.forEach(t))(l(e),(([e,a])=>t(a,e))),y=e=>(e=>!a(e)&&n(i(e),(e=>e==r.prototype||a(i(e))),(()=>!0)))(e)&&0==(e=>c(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),f=(e,t)=>e?.delete(t),p=e=>new Map(e),h=(e,t)=>e?.get(t),b=(e,t,n)=>a(n)?(f(e,t),e):e?.set(t,n),v=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||b(e,t,a()),h(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],S=(e,t)=>((e??"")>(t??"")?e:t)??"",A=(e="")=>w(((e=[])=>r.fromEntries(e))(),e),M=p(),C=p(),T="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var m;p((m=(e,t)=>[e,t],T.map(m)));e.createWsSynchronizer=async(e,t,r=1,i)=>{let l;const c=(e,a)=>t.addEventListener(e,a),m=((e,t,s,r,i,l,c={})=>{let m;const L=p();s(((s,o,r,i)=>{0==r?n(h(L,o),(([e,t])=>a(e)||e==s?t(i,s):0)):2==r&&O.isAutoLoading()?E(s,i).then((e=>{m?.(void 0,e)})):3==r&&O.isAutoLoading()?m?.(void 0,i):n(1==r&&O.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=>{t(s,o,0,e)}))}));const H=async(e,a,n="")=>o(((s,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+T[63&t]),""))(),l=setTimeout((()=>{f(L,r),o(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);b(L,r,[e,(e,t)=>{clearTimeout(l),f(L,r),s([e,t])}]),t(e,r,a,n)})),D=(e,[t,a])=>{d(t,(([t,a],n)=>{const s=u(e[0],n,A);d(t,(([e,t],a)=>{const n=u(s[0],a,A);d(e,(([e,t],a)=>n[0][a]=w(e,t))),n[1]=S(n[1],t)})),s[1]=S(s[1],a)})),e[1]=S(e[1],a)},E=async(t=null,n)=>{a(n)&&([n,t]=await H(t,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let l=A();if(r!=s){const[a,n]=(await H(t,4,e.getMergeableTableHashes()))[0];if(l=a,!y(n)){const[a,s]=(await H(t,5,e.getMergeableRowHashes(n)))[0];if(D(l,a),!y(s)){const a=(await H(t,6,e.getMergeableCellHashes(s)))[0];D(l,a)}}}return[l,i==o?A():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},O=((e,t,s,o,r,i,l,c={},d=[])=>{let u,f,p,w=0;v(M,d,(()=>0)),v(C,d,(()=>[]));const[S,A,T,m,L]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!y(e)||!y(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!y(e)||!y(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(l,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!=w&&(w=1,await z((async()=>{try{H(await t())}catch(t){i?.(t),e&&L(e)}w=0}))),N),E=()=>(f&&(r(f),f=void 0),N),O=async e=>(1!=w&&(w=2,await z((async()=>{try{await s(A,e)}catch(e){i?.(e)}w=0}))),N),x=()=>(n(p,e.delListener),p=void 0,N),z=async(...e)=>(((e,...t)=>{e.push(...t)})(h(C,d),...e),await(async()=>{if(!h(M,d)){for(b(M,d,1);!a((e=h(C,d),u=e.shift()));)try{await u()}catch(e){i?.(e)}b(M,d,0)}var e})(),N),N={load:D,startAutoLoad:async e=>(await E().load(e),f=o((async(e,t)=>{t||e?2!=w&&(w=1,H(t??e),w=0):await D()})),N),stopAutoLoad:E,isAutoLoading:()=>!a(f),save:O,startAutoSave:async()=>(await x().save(),p=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&O(e)})),N),stopAutoSave:x,isAutoSaving:()=>!a(p),schedule:z,getStore:()=>e,destroy:()=>E().stopAutoSave(),getStats:()=>({}),...c};return g(N)})(e,(async()=>{const e=await E();return y(e[0][0])&&y(e[1][0])?void 0:e}),(async(a,n)=>{n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),l,2,{startSync:async e=>await(await O.startAutoLoad(e)).startAutoSave(),stopSync:()=>O.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),O.stopSync()),getSynchronizerStats:()=>({}),...c});return O})(e,((e,...a)=>{t.send((e??"")+"\n"+JSON.stringify(a,((e,t)=>void 0===t?"":t)))}),(e=>{l=e}),(()=>{t.close()}),r,i,{getWebSocket:()=>t});return c("message",(({data:e})=>{if(!a(l)){const a=e.toString("utf8").indexOf("\n");-1!==a&&l(s(e,0,a),...(t=s(e,a+1),JSON.parse(t,((e,t)=>""===t?void 0:t))))}var t})),o(((e,a)=>{t.readyState!=t.OPEN?(c("error",a),c("open",(()=>e(m)))):e(m)}))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsClient={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,n=(e,t,n)=>a(e)?n?.():t(e),s=Object,o=e=>s.getPrototypeOf(e),r=s.entries,i=s.keys,l=s.freeze,c=(e,t)=>((e,t)=>e.forEach(t))(r(e),(([e,a])=>t(a,e))),g=e=>(e=>!a(e)&&n(o(e),(e=>e==s.prototype||a(o(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),y=(e,t)=>e?.delete(t),d=e=>new Map(e),f=(e,t)=>e?.get(t),h=(e,t,n)=>a(n)?(y(e,t),e):e?.set(t,n),p=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)||h(e,t,a()),f(e,t)};new globalThis.TextEncoder;const w=(e,t)=>t?[e,t]:[e],b=(e,t)=>((e??"")>(t??"")?e:t)??"",v=(e="")=>w(((e=[])=>s.fromEntries(e))(),e),A=d(),C=d(),M="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var S;d((S=(e,t)=>[e,t],M.map(S)));e.createCustomSynchronizer=(e,s,o,r,i,S,T={})=>{let m;const L=d();o(((t,o,r,i)=>{0==r?n(f(L,o),(([e,n])=>a(e)||e==t?n(i,t):0)):2==r&&z.isAutoLoading()?x(t,i).then((e=>{m?.(void 0,e)})):3==r&&z.isAutoLoading()?m?.(void 0,i):n(1==r&&z.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=>{s(t,o,0,e)}))}));const H=async(e,a,n="")=>new t(((t,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+M[63&t]),""))(),l=setTimeout((()=>{y(L,r),o(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);h(L,r,[e,(e,a)=>{clearTimeout(l),y(L,r),t([e,a])}]),s(e,r,a,n)})),D=(e,[t,a])=>{c(t,(([t,a],n)=>{const s=u(e[0],n,v);c(t,(([e,t],a)=>{const n=u(s[0],a,v);c(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)},x=async(t=null,n)=>{a(n)&&([n,t]=await H(t,1));const[s,o]=n,[r,i]=e.getMergeableContentHashes();let l=v();if(r!=s){const[a,n]=(await H(t,4,e.getMergeableTableHashes()))[0];if(l=a,!g(n)){const[a,s]=(await H(t,5,e.getMergeableRowHashes(n)))[0];if(D(l,a),!g(s)){const a=(await H(t,6,e.getMergeableCellHashes(s)))[0];D(l,a)}}}return[l,i==o?v():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},z=((e,t,s,o,r,i,c,u={},y=[])=>{let d,w,b,v=0;p(A,y,(()=>0)),p(C,y,(()=>[]));const[M,S,T,m,L]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!g(e)||!g(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!g(e)||!g(t),t.setContent]:0)(c,e),H=t=>{var a;(M&&(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!=v&&(v=1,await R((async()=>{try{H(await t())}catch(t){i?.(t),e&&L(e)}v=0}))),V),x=()=>(w&&(r(w),w=void 0),V),z=async e=>(1!=v&&(v=2,await R((async()=>{try{await s(S,e)}catch(e){i?.(e)}v=0}))),V),E=()=>(n(b,e.delListener),b=void 0,V),R=async(...e)=>(((e,...t)=>{e.push(...t)})(f(C,y),...e),await(async()=>{if(!f(A,y)){for(h(A,y,1);!a((e=f(C,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}h(A,y,0)}var e})(),V),V={load:D,startAutoLoad:async e=>(await x().load(e),w=o((async(e,t)=>{t||e?2!=v&&(v=1,H(t??e),v=0):await D()})),V),stopAutoLoad:x,isAutoLoading:()=>!a(w),save:z,startAutoSave:async()=>(await E().save(),b=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&z(e)})),V),stopAutoSave:E,isAutoSaving:()=>!a(b),schedule:R,getStore:()=>e,destroy:()=>x().stopAutoSave(),getStats:()=>({}),...u};return l(V)})(e,(async()=>{const e=await x();return g(e[0][0])&&g(e[1][0])?void 0:e}),(async(t,a)=>{a?s(null,null,3,a):s(null,null,2,e.getMergeableContentHashes())}),(e=>m=e),(()=>m=void 0),S,2,{startSync:async e=>await(await z.startAutoLoad(e)).startAutoSave(),stopSync:()=>z.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),z.stopSync()),getSynchronizerStats:()=>({}),...T});return z}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizers={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=Promise,a=e=>null==e,s=(e,t,s)=>a(e)?s?.():t(e),n=Object,o=e=>n.getPrototypeOf(e),r=n.entries,i=n.keys,l=n.freeze,c=(e,t)=>((e,t)=>e.forEach(t))(r(e),(([e,a])=>t(a,e))),g=e=>(e=>!a(e)&&s(o(e),(e=>e==n.prototype||a(o(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),u=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),y=(e,t)=>e?.delete(t),d=e=>new Map(e),f=(e,t)=>e?.get(t),h=(e,t,s)=>a(s)?(y(e,t),e):e?.set(t,s),p=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)||h(e,t,a()),f(e,t)};new globalThis.TextEncoder;const b=(e,t)=>t?[e,t]:[e],w=(e,t)=>((e??"")>(t??"")?e:t)??"",v=(e="")=>b(((e=[])=>n.fromEntries(e))(),e),A=d(),M=d(),S="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split("");var C;d((C=(e,t)=>[e,t],S.map(C)));e.createCustomSynchronizer=(e,n,o,r,i,C,T={})=>{let m;const L=d();o(((t,o,r,i)=>{0==r?s(f(L,o),(([e,s])=>a(e)||e==t?s(i,t):0)):2==r&&z.isAutoLoading()?x(t,i).then((e=>{m?.(void 0,e)})):3==r&&z.isAutoLoading()?m?.(void 0,i):s(1==r&&z.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(t,o,0,e)}))}));const H=async(e,a,s="")=>new t(((t,o)=>{const r=((e=16)=>crypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+S[63&t]),""))(),l=setTimeout((()=>{y(L,r),o(`No response from ${e??"anyone"} to '${a}'`)}),1e3*i);h(L,r,[e,(e,a)=>{clearTimeout(l),y(L,r),t([e,a])}]),n(e,r,a,s)})),D=(e,[t,a])=>{c(t,(([t,a],s)=>{const n=u(e[0],s,v);c(t,(([e,t],a)=>{const s=u(n[0],a,v);c(e,(([e,t],a)=>s[0][a]=b(e,t))),s[1]=w(s[1],t)})),n[1]=w(n[1],a)})),e[1]=w(e[1],a)},x=async(t=null,s)=>{a(s)&&([s,t]=await H(t,1));const[n,o]=s,[r,i]=e.getMergeableContentHashes();let l=v();if(r!=n){const[a,s]=(await H(t,4,e.getMergeableTableHashes()))[0];if(l=a,!g(s)){const[a,n]=(await H(t,5,e.getMergeableRowHashes(s)))[0];if(D(l,a),!g(n)){const a=(await H(t,6,e.getMergeableCellHashes(n)))[0];D(l,a)}}}return[l,i==o?v():(await H(t,7,e.getMergeableValuesHashes()))[0],1]},z=((e,t,n,o,r,i,c,u={},y=[])=>{let d,b,w,v=0;p(A,y,(()=>0)),p(M,y,(()=>[]));const[S,C,T,m,L]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!g(e)||!g(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!g(e)||!g(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(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!=v&&(v=1,await P((async()=>{try{H(await t())}catch(t){i?.(t),e&&L(e)}v=0}))),R),x=()=>(b&&(r(b),b=void 0),R),z=async e=>(1!=v&&(v=2,await P((async()=>{try{await n(C,e)}catch(e){i?.(e)}v=0}))),R),E=()=>(s(w,e.delListener),w=void 0,R),P=async(...e)=>(((e,...t)=>{e.push(...t)})(f(M,y),...e),await(async()=>{if(!f(A,y)){for(h(A,y,1);!a((e=f(M,y),d=e.shift()));)try{await d()}catch(e){i?.(e)}h(A,y,0)}var e})(),R),R={load:D,startAutoLoad:async e=>(await x().load(e),b=o((async(e,t)=>{t||e?2!=v&&(v=1,H(t??e),v=0):await D()})),R),stopAutoLoad:x,isAutoLoading:()=>!a(b),save:z,startAutoSave:async()=>(await E().save(),w=e.addDidFinishTransactionListener((()=>{const e=T();m(e)&&z(e)})),R),stopAutoSave:E,isAutoSaving:()=>!a(w),schedule:P,getStore:()=>e,destroy:()=>x().stopAutoSave(),getStats:()=>({}),...u};return l(R)})(e,(async()=>{const e=await x();return g(e[0][0])&&g(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 z.startAutoLoad(e)).startAutoSave(),stopSync:()=>z.stopAutoLoad().stopAutoSave(),destroy:()=>(r(),z.stopSync()),getSynchronizerStats:()=>({}),...T});return z}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizers={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",b=f+"s",w=f+h,C="Row",L=C+"Count",p=C+h,y="Sorted"+C+h,v="Cell",T=v+h,S="Value",R=S+"s",I=S+h,M=e=>s+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),D=Promise,E=Math.max,H=Math.min,A=isFinite,k=e=>null==e,x=(e,t,s)=>k(e)?s?.():t(e),J=e=>e==n||e==a,F=e=>t(e)==n,Q=e=>t(e)==r,z=e=>Array.isArray(e),N=(e,t,s)=>e.slice(t,s),P=e=>e.length,O=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>P(e)===P(t)&&j(e,((e,s)=>t[s]===e)),U=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),$=(e,t)=>e.sort(t),_=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>X(e,((e,t)=>e+t),0),K=e=>0==P(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.isFrozen,oe=e=>!k(e)&&x(se(e),(e=>e==te.prototype||k(se(e))),(()=>!0)),re=te.keys,le=te.freeze,ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>_(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),he=e=>oe(e)&&0==(e=>P(re(e)))(e),fe=(e,t,s)=>(ce(e,t)||(e[t]=s()),e[t]),be=(e,t,s,n=0)=>k(e)||!oe(e)||!n&&he(e)||ae(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!!n||!he(e)),we=e=>e?.size??0,Ce=(e,t)=>e?.has(t)??!1,Le=e=>k(e)||0==we(e),pe=e=>[...e?.values()??[]],ye=e=>e.clear(),ve=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),Se=e=>new Map(e),Re=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Me=(e,t)=>ve(e,((e,s)=>t(s,e))),me=(e,t,s)=>k(s)?(Te(e,t),e):e?.set(t,s),Ve=(e,t,s,n)=>(Ce(e,t)?n?.(Ie(e,t)):me(e,t,s()),Ie(e,t)),De=(e,t,s,n=me)=>(ge(t,((t,n)=>s(e,n,t))),Me(e,(s=>ce(t,s)?0:n(e,s))),e),Ee=(e,t,s,n)=>{const a={};return ve(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},He=(e,t,s)=>Ee(e,(e=>Ee(e,t,s)),Le,he),Ae=(e,t,s)=>Ee(e,(e=>He(e,t,s)),Le,he),ke=(e,t)=>{const s=Se();return ve(e,((e,n)=>s.set(n,t?.(e)??e))),s},xe=e=>ke(e,ke),Je=e=>ke(e,xe),Fe=(e,t,s,n,a=0)=>x((s?Ve:Ie)(e,t[a],a>P(t)-2?s:Se),(o=>{if(a>P(t)-2)return n?.(o)&&me(e,t[a]),o;const r=Fe(o,t,s,n,a+1);return Le(o)&&me(e,t[a]),r})),Qe=e=>{const s=t(e);return J(s)||s==o&&A(e)?s:void 0},ze=e=>k(e)||!k(Qe(e)),Ne=(e,t,s,n,a)=>k(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Pe=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),Oe=e=>new Set(z(e)||k(e)?e:[e]),We=(e,t)=>e?.add(t),je=(e,t,s,n,a)=>{const o=e.hasRow,r=Se(),l=Se(),i=Se(),c=Se(),d=Se(),u=Se(),g=(t,s,...n)=>{const a=Ve(u,t,Oe);return _(n,(t=>We(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>x(Ie(u,t),(n=>{_(K(s)?pe(n):s,(t=>{e.delListener(t),Te(n,t)})),Le(n)&&me(u,t)})),f=(e,s)=>{me(r,e,s),Ce(l,e)||(me(l,e,t()),me(c,e,Se()),me(d,e,Se()),a(i))},b=e=>{me(r,e),me(l,e),me(c,e),me(d,e),h(e),a(i)};return[()=>e,()=>Re(r),e=>Me(l,e),e=>Ce(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>me(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=Se(),u=Se(),b=Ie(c,t),w=Ie(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=Ie(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&B(c,d)||me(i,t,[c,d]),!k(l)){const e=Ie(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&me(u,t,s)}},L=e=>{a((()=>{ve(i,(([,e],t)=>me(b,t,e))),ve(u,((e,t)=>me(w,t,e)))}),i,u,b,w,e),ye(i),ye(u)};Me(b,C),e.hasTable(n)&&_(e.getRowIds(n),(e=>{Ce(b,e)||C(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>L())))},b,e=>n(e,i),()=>Me(u,b),g,h]},Be=(e,t)=>F(e)?t=>t(e):e??(()=>t??s),Ue=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},$e=/^\d+$/,_e=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{$e.test(t)&&P(e)<1e3&&Y(e,t)}]},qe=e=>{let t;const[n,a]=_e(),o=Se();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return me(o,d,[a,r,l,i,c]),We(Fe(r,l??[s],Oe),d),d},(e,n,...a)=>_(((e,t=[s])=>{const n=[],a=(e,s)=>s==P(t)?Y(n,e):null===t[s]?ve(e,(e=>a(e,s+1))):_([t[s],null],(t=>a(Ie(e,t),s+1)));return a(e,0),n})(e,n),(e=>ve(e,(e=>Ie(o,e)[0](t,...n??[],...a))))),e=>x(Ie(o,e),(([,t,n])=>(Fe(t,n??[s],void 0,(t=>(Te(t,e),Le(t)?1:0))),me(o,e),a(e),n))),e=>x(Ie(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=P(r);l==P(s)?e(t,...r,...a(r)):k(s[l])?_(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},Ge=Ue((e=>{let t,n,a,o=100,r=Se(),l=Se(),i=1;const c=Se(),d=Se(),[u,g,h]=qe((()=>J)),f=Se(),b=Se(),w=[],C=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Ie(f,s);ve(n,((s,n)=>ve(s,((s,a)=>ve(s,((s,o)=>Ne(e,n,a,o,s[t]))))))),ve(a,((s,n)=>Pe(e,n,s[t])))})),i=1},p=e=>{me(f,e),me(b,e),g(d,[e])},y=(e,t)=>_(((e,t)=>e.splice(0,t))(e,t??P(e)),p),v=()=>y(w,P(w)-o),T=()=>x(t,(()=>{Y(w,t),v(),y(C),t=void 0,a=1})),S=()=>{t=Z(w),a=1};let R,I;const M=(e=s)=>(k(t)&&(t=s+n++,me(f,t,[r,l]),H(t,e),r=Se(),l=Se(),a=1),t),m=()=>{K(w)||(((e,...t)=>{e.unshift(...t)})(C,M()),L(0,t),t=Z(w),a=1)},V=()=>{K(C)||(Y(w,t),t=ee(C),L(1,t),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(A(e)&&Ie(b,e)!==t&&(me(b,e,t),g(d,[e])),J),A=e=>Ce(f,e),J={setSize:e=>(o=e,v(),J),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Me(b,e),hasCheckpoint:A,getCheckpoint:e=>Ie(b,e),goBackward:()=>(m(),D(),J),goForward:()=>(V(),D(),J),goTo:e=>{const s=W(w,e)?m:W(C,e)?V:null;for(;!k(s)&&e!=t;)s();return D(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(y(w),y(C),k(t)||p(t),t=void 0,n=0,E(),J),clearForward:()=>(K(C)||(y(C),g(c)),J),destroy:()=>{e.delListener(R),e.delListener(I)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){T();const e=Ve(r,t,Se),l=Ve(e,s,Se),i=Ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(me(l,n))&&Le(me(e,s))&&Le(me(r,t))&&S(),D()}})),I=e.addValueListener(null,((e,t,s,n)=>{if(i){T();const e=Ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Le(me(l,t))&&S(),D()}}))}};return le(J.clear())}),(e=>e._registerListeners())),Ke="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),Xe=Se(q(Ke,((e,t)=>[e,t]))),Ye=e=>Ke[63&e],Ze=(e,t)=>Ie(Xe,e[t])??0,et=(e,t)=>(e??0)<(t??0)?-1:1,tt=(e=16)=>X(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+Ye(t)),""),st=Ue((e=>{const t=Se(),n=Se(),[a,o,r]=qe((()=>p)),[l,i,c,d,u,g,h,,f,b,w,C]=je(e,Se,(e=>k(e)?s:z(e)?q(e,M):M(e)),a,o),L=(t,s,n)=>{const a=u(t);ve(n,((t,n)=>s(n,(s=>ve(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},p={setIndexDefinition:(e,s,a,r,l,i=et)=>{const c=k(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let b=0;const w=Oe(),C=Oe(),L=g(e);if(ve(a,(([e,t],s)=>{const n=Oe(e),a=Oe(t);ve(n,(e=>Te(a,e)?Te(n,e):0)),ve(n,(e=>{We(w,e),x(Ie(L,e),(t=>{Te(t,s),Le(t)&&(me(L,e),b=1)}))})),ve(a,(e=>{We(w,e),Ce(L,e)||(me(L,e,Oe()),b=1),We(Ie(L,e),s),k(r)||We(C,e)}))})),s(),Le(u)||(f?Me(L,(e=>We(C,e))):Me(l,(e=>x(Ie(d,e),(e=>We(C,e))))),ve(C,(e=>{const t=(t,s)=>i(Ie(u,t),Ie(u,s),e),s=[...Ie(L,e)];U(s,t)||(me(L,e,Oe($(s,t))),We(w,e))}))),(b||f)&&!k(c)){const t=[...L];U(t,c)||(h(e,Se($(t,c))),b=1)}b&&o(t,[e]),ve(w,(t=>o(n,[e,t])))}),Be(a),x(r,Be)),p},delIndexDefinition:e=>(b(e),p),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Ce(g(e),t),getTableId:u,getSliceIds:e=>Re(g(e)),getSliceRowIds:(e,t)=>pe(Ie(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),p),destroy:C,getListenerStats:()=>({})};return le(p)})),nt=Se([["avg",[(e,t)=>G(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),at=(e,t,s,n,a,o=!1)=>{if(Le(s))return;const[r,l,i,c]=a;return o||=k(e),ve(n,(([s,n])=>{o||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=k(e))})),o?r(pe(s),we(s)):e},ot=Ue((e=>{const t=Se(),[n,a,o]=qe((()=>C)),[r,l,i,c,d,u,g,,h,f,b,w]=je(e,O,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:Ie(nt,n)??Ie(nt,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=we(r);i||=k(d),s();let f=at(d,h,r,n,c,i);A(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),Be(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({})};return le(C)})),rt=Se(),lt=Se(),it=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(rt,i,(()=>0)),Ve(lt,i,(()=>[]));const[h,f,b,w,C]=((e=1,t)=>e>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!he(e)||!he(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t),t.setContent]:0)(r,e),L=t=>{(h&&z(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},p=async e=>(2!=g&&(g=1,await S((async()=>{try{L(await t())}catch(t){o?.(t),e&&C(e)}g=0}))),R),y=()=>(d&&(a(d),d=void 0),R),v=async e=>(1!=g&&(g=2,await S((async()=>{try{await s(f,e)}catch(e){o?.(e)}g=0}))),R),T=()=>(x(u,e.delListener),u=void 0,R),S=async(...e)=>(Y(Ie(lt,i),...e),await(async()=>{if(!Ie(rt,i)){for(me(rt,i,1);!k(c=ee(Ie(lt,i)));)try{await c()}catch(e){o?.(e)}me(rt,i,0)}})(),R),R={load:p,startAutoLoad:async e=>(await y().load(e),d=n((async(e,t)=>{t||e?2!=g&&(g=1,L(t??e),g=0):await p()})),R),stopAutoLoad:y,isAutoLoading:()=>!k(d),save:v,startAutoSave:async()=>(await T().save(),u=e.addDidFinishTransactionListener((()=>{const e=b();w(e)&&v(e)})),R),stopAutoSave:T,isAutoSaving:()=>!k(u),schedule:S,getStore:()=>e,destroy:()=>y().stopAutoSave(),getStats:()=>({}),...l};return le(R)},ct=new globalThis.TextEncoder,dt=e=>{let t=2166136261;return _(ct.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},ut=([e,t,s])=>[e,t,s],gt=([e,t])=>ht(e,t),ht=(e,t)=>t?[e,t]:[e],ft=e=>e[2],bt=(e,t)=>dt(e+":"+t),wt=(e,t)=>t>e?(e?dt(e):0)^dt(t):0,Ct=(e,t)=>((e??"")>(t??"")?e:t)??"",Lt=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},pt=(e=s)=>ht(ie(),e),yt=(e=s)=>[Se(),e,0],vt=([e,t,s],n=ut)=>[Ee(e,n),t,s],Tt=([e,t],s=gt)=>ht(Ee(e,s),t),St=(e,s)=>z(e)&&3==P(e)&&F(e[1])&&t(e[2])==o&&A(e[2])&&s(e[0]),Rt=Ue((e=>{const t=e.createStore,n=t(),a=t(),o=Se(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,b,w,S,,,R,,I,M,m,V,D]=je(e,(()=>!0),O,r,l),E=(e,t,...s)=>_(s,(s=>We(Ve(Ve(o,t,Se),e,Oe),s))),H=e=>{x(Ie(o,e),(e=>{Me(e,((e,t)=>ve(t,(t=>e.delListener(t))))),ye(e)})),_([a,n],(t=>t.delTable(e)))},A=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),H(t);const l=[],i=[[null,[o,null,null,[],Se()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=Q(e)?[P(l)+s,e]:[k(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=k(s)||Q(t)?null:t,a=k(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],Se()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,Q(e)?e:k(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:Ie(nt,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,Q(e)?e:s=>s(e)===t)});const g=Se(l);if(Le(g))return J;const h=Se(i);Me(h,((e,[,t])=>x(Ie(h,t),(({3:t})=>k(e)?0:Y(t,e)))));const f=Se(d);let b=n;if(Le(f)&&K(u))b=a;else{A(t,b,a);const e=Se();Me(f,((t,[s,n])=>We(Ve(e,s,Oe),[t,n])));const s=Oe();Me(g,(t=>Ce(e,t)?0:We(s,t)));const n=Se(),o=(s,n,o,r)=>x(s,(([l,i,c,d])=>{Me(n,((t,[s])=>{const n=Ve(l,t,Se),a=Ie(n,o),i=r?void 0:s;if(a!==i){const s=Oe([[a,i]]),r=we(n);me(n,o,i),ve(Ie(e,t),(([e,t])=>{const a=at(d[e],r,n,s,t);d[e]=k(Qe(a))?null:a}))}})),Le(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):k(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));E(b,t,b.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=Se(),g=b.hasRow(t,l);let h=!g;ve(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Me(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&me(u,e,[n])})),h&&o(Fe(n,c,void 0,(([,e])=>(Te(e,l),Le(e)))),u,l,1),g&&o(Fe(n,d,(()=>{const e={};return ve(s,(s=>e[s]=b.getCell(t,l,s))),[Se(),Oe(),void 0,e]}),(([,e])=>{We(e,l)})),u,l)})))}A(t,e,b);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);_(r,(n=>{const[a,,o,r,i]=Ie(h,n),c=o?.(l,s),[d,u]=Ie(i,s)??[];c!=d&&(k(u)||D(t,u),me(i,s,k(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...k(n)?[o,s,t]:t===o?[o,s,n]:[Ie(h,t)?.[0],Ie(Ie(h,t)?.[4],s)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?Me(g,((e,a)=>Ne(b,t,s,e,a(n,s)))):b.delRow(t,s)))})(s)},{3:C}=Ie(h,null);return b.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(b.delRow(t,a),ve(h,(({4:e})=>x(Ie(e,a),(([,s])=>{D(t,s),me(e,a)})))))}))))),J},delQueryDefinition:e=>(H(e),I(e),J),getStore:g,getQueryIds:h,forEachQuery:b,hasQuery:w,getTableId:S,addQueryIdsListener:e=>M((()=>e(J))),delListener:e=>(i(e),J),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+T]:[0,1],[L]:[0,1],[p]:[0,1],[y]:[0,5],[C]:[1,2],[T]:[0,2],[v]:[1,3]},(([e,t],s)=>{_(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>a[e+s](...t))),J[u+d+s+c]=(...e)=>a[u+s+c](...N(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),le(J)})),It=Ue((e=>{const t=Se(),n=Se(),a=Se(),o=Se(),[r,l,i]=qe((()=>T)),[c,d,u,g,h,f,,,b,w,C,L]=je(e,(()=>[Se(),Se(),Se(),Se()]),(e=>k(e)?void 0:e+s),r,l),p=(e,t,s)=>x(f(e),(([n,,a])=>{if(!Ce(a,t)){const o=Oe();if(h(e)!=v(e))We(o,t);else{let e=t;for(;!k(e)&&!Ce(o,e);)We(o,e),e=Ie(n,e)}if(s)return o;me(a,t,o)}return Ie(a,t)})),y=(e,t)=>x(f(e),(([,,e])=>me(e,t))),v=e=>Ie(t,e),T={setRelationshipDefinition:(e,s,r,i)=>(me(t,e,r),b(e,s,((t,s)=>{const r=Oe(),i=Oe(),c=Oe(),[d,u]=f(e);ve(s,(([t,s],n)=>{k(t)||(We(i,t),x(Ie(u,t),(e=>{Te(e,n),Le(e)&&me(u,t)}))),k(s)||(We(i,s),Ce(u,s)||me(u,s,Oe()),We(Ie(u,s),n)),We(r,n),me(d,n,s),Me(Ie(o,e),(t=>{Ce(p(e,t),n)&&We(c,t)}))})),t(),ve(r,(t=>l(n,[e,t]))),ve(i,(t=>l(a,[e,t]))),ve(c,(t=>{y(e,t),l(o,[e,t])}))}),Be(i)),T),delRelationshipDefinition:e=>(me(t,e),w(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:v,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>pe(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(f(e))?[t]:pe(p(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),r(s,o,[e,t])),delListener:e=>(y(...i(e)??[]),T),destroy:L,getListenerStats:()=>({})};return le(T)})),Mt=e=>[e,e],mt=()=>[Se(),Se()],Vt=e=>[...e],Dt=([e,t])=>e===t,Et=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),Ht=JSON.parse,At=(e,t,s)=>me(e,t,Ie(e,t)==-s?void 0:s),kt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=Se(),h=Se(),y=Se(),m=Se(),V=Se(),D=Se(),E=Se(),H=Se(),A=Se(),F=Se(),z=Se(),P=Se(),O=Se(),j=Se(),U=Oe(),G=Se(),K=Se(),X=Se(),Z=Se(),ee=mt(),te=mt(),se=mt(),ne=mt(),ae=mt(),oe=mt(),re=mt(),ie=mt(),ue=mt(),fe=mt(),pe=mt(),Fe=mt(),ze=mt(),je=mt(),Be=mt(),Ue=mt(),$e=mt(),Ge=mt(),Ke=mt(),Xe=mt(),Ye=mt(),Ze=mt(),tt=Se(),st=mt(),[nt,at,ot,rt]=qe((()=>xs)),lt=e=>{if(!be(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!J(t)&&t!=o||(Qe(e[i])!=t&&de(e,i),0))},it=(t,s)=>(!e||Ce(z,s)||$t(s))&&be(t,((e,t)=>ct(s,t,e)),(()=>$t(s))),ct=(e,t,s,n)=>be(n?s:ht(s,e,t),((n,a)=>x(dt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),dt=(t,s,n,a)=>e?x(Ie(Ie(z,t),n),(e=>Qe(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):k(Qe(a))?$t(t,s,n,a):a,ut=(e,t)=>be(t?e:ft(e),((t,s)=>x(gt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>_t())),gt=(e,s)=>t?x(Ie(O,e),(t=>Qe(s)!=t[l]?_t(e,s,t[i]):s),(()=>_t(e,s))):k(Qe(s))?_t(e,s):s,ht=(e,t,s)=>(x(Ie(P,t),(([n,a])=>{ve(n,((t,s)=>{ce(e,s)||(e[s]=t)})),ve(a,(n=>{ce(e,n)||$t(t,s,n)}))})),e),ft=e=>(t&&(ve(j,((t,s)=>{ce(e,s)||(e[s]=t)})),ve(U,(t=>{ce(e,t)||_t(t)}))),e),bt=e=>De(z,e,((e,t,s)=>{const n=Se(),a=Oe();De(Ve(z,t,Se),s,((e,t,s)=>{me(e,t,s),x(s[i],(e=>me(n,t,e)),(()=>We(a,t)))})),me(P,t,[n,a])}),((e,t)=>{me(z,t),me(P,t)})),wt=e=>De(O,e,((e,t,s)=>{me(O,t,s),x(s[i],(e=>me(j,t,e)),(()=>We(U,t)))}),((e,t)=>{me(O,t),me(j,t),Te(U,t)})),Ct=e=>he(e)?Is():ys(e),Lt=e=>De(X,e,((e,t,s)=>pt(t,s)),((e,t)=>Ft(t))),pt=(e,t)=>De(Ve(X,e,(()=>(Pt(e,1),me(G,e,_e()),me(K,e,Se()),Se()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>Qt(e,t,s))),yt=(e,t,s,n,a)=>De(Ve(t,s,(()=>(Ot(e,s,1),Se()))),n,((t,n,a)=>vt(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),vt=(e,t,s,n,a)=>{Ce(s,n)||Wt(e,t,n,1);const o=Ie(s,n);a!==o&&(jt(e,t,n,o,a),me(s,n,a))},Tt=(e,t,s,n,a)=>x(Ie(t,s),(t=>vt(e,s,t,n,a)),(()=>yt(e,t,s,ht({[n]:a},e,s)))),St=e=>he(e)?Vs():vs(e),Rt=e=>De(Z,e,((e,t,s)=>It(t,s)),((e,t)=>Nt(t))),It=(e,t)=>{Ce(Z,e)||Bt(e,1);const s=Ie(Z,e);t!==s&&(Ut(e,s,t),me(Z,e,t))},xt=(e,t)=>{const[s]=Ie(G,e),n=s(t);return Ce(Ie(X,e),n)?xt(e,t):n},Jt=e=>Ie(X,e)??pt(e,{}),Ft=e=>pt(e,{}),Qt=(e,t,s)=>{const[,n]=Ie(G,e);n(s),yt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Ie(Ie(P,e)?.[0],a);if(!k(r)&&!o)return vt(e,s,n,a,r);const l=t=>{jt(e,s,t,Ie(n,t)),Wt(e,s,t,-1),me(n,t)};k(r)?l(a):Me(n,l),Le(n)&&(Ot(e,s,-1),Le(me(t,s))&&(Pt(e,-1),me(X,e),me(G,e),me(K,e)))},Nt=e=>{const t=Ie(j,e);if(!k(t))return It(e,t);Ut(e,Ie(Z,e)),Bt(e,-1),me(Z,e)},Pt=(e,t)=>At(d,e,t),Ot=(e,t,s)=>At(Ve(m,e,Se),t,s)&&me(y,e,Ve(y,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Ie(K,e),o=Ie(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&At(Ve(h,e,Se),s,n),me(a,s,o!=-n?o+n:null),At(Ve(Ve(V,e,Se),t,Se),s,n)},jt=(e,t,s,n,a)=>{Ve(Ve(Ve(D,e,Se),t,Se),s,(()=>[n,0]))[1]=a,r[3]?.(e,t,s,a)},Bt=(e,t)=>At(E,e,t),Ut=(e,t,s)=>{Ve(H,e,(()=>[t,0]))[1]=s,r[4]?.(e,s)},$t=(e,t,s,n,a)=>(Y(Ve(Ve(Ve(A,e,Se),t,Se),s,(()=>[])),n),a),_t=(e,t,s)=>(Y(Ve(F,e,(()=>[])),t),s),qt=(e,t,s)=>x(Ie(Ie(Ie(D,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(cs(e,t,s))])),Gt=e=>x(Ie(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(gs(e))])),Kt=e=>Le(A)||Le(Ue[e])?0:ve(e?Je(A):A,((t,s)=>ve(t,((t,n)=>ve(t,((t,a)=>at(Ue[e],[s,n,a],t))))))),Xt=e=>Le(F)||Le($e[e])?0:ve(e?ke(F):F,((t,s)=>at($e[e],[s],t))),Yt=(e,t,s,n)=>{if(!Le(e))return at(t,n,(()=>Ee(e))),Me(e,((e,t)=>at(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&at(ee[e],void 0,t);const n=Le(fe[e]),a=Le(ze[e])&&Le(je[e])&&Le(ue[e])&&Le(pe[e])&&Le(oe[e])&&Le(re[e])&&Le(ie[e])&&n&&Le(se[e])&&Le(ne[e]),o=Le(Be[e])&&Le(Fe[e])&&Le(ae[e])&&Le(te[e]);if(!a||!o){const t=e?[ke(d),xe(h),ke(y),xe(m),Je(V),Je(D)]:[d,h,y,m,V,D];if(!a){Yt(t[0],se[e],ne[e]),ve(t[1],((t,s)=>Yt(t,oe[e],re[e],[s]))),ve(t[2],((t,s)=>{0!=t&&at(ie[e],[s],os(s))}));const s=Oe();ve(t[3],((t,a)=>{Yt(t,ue[e],pe[e],[a])&&!n&&(at(fe[e],[a,null]),We(s,a))})),n||ve(t[5],((t,n)=>{if(!Ce(s,n)){const s=Oe();ve(t,(e=>ve(e,(([t,n],a)=>n!==t?We(s,a):Te(e,a))))),ve(s,(t=>at(fe[e],[n,t])))}})),ve(t[4],((t,s)=>ve(t,((t,n)=>Yt(t,ze[e],je[e],[s,n])))))}if(!o){let s;ve(t[5],((t,n)=>{let a;ve(t,((t,o)=>{let r;ve(t,(([t,l],i)=>{l!==t&&(at(Be[e],[n,o,i],l,t,qt),s=a=r=1)})),r&&at(Fe[e],[n,o],qt)})),a&&at(ae[e],[n],qt)})),s&&at(te[e],void 0,qt)}}},es=e=>{const t=Ls();t!=n&&at(Ge[e],void 0,t);const s=Le(Xe[e])&&Le(Ye[e]),a=Le(Ze[e])&&Le(Ke[e]);if(!s||!a){const t=e?[ke(E),ke(H)]:[E,H];if(s||Yt(t[0],Xe[e],Ye[e]),!a){let s;ve(t[1],(([t,n],a)=>{n!==t&&(at(Ze[e],[a],n,t,Gt),s=1)})),s&&at(Ke[e],void 0,Gt)}}},ts=(e,...t)=>(Hs((()=>e(...q(t,M)))),xs),ss=()=>Ae(X),ns=()=>Re(X),as=e=>Re(Ie(K,M(e))),os=e=>we(Ie(X,M(e))),rs=e=>Re(Ie(X,M(e))),ls=(e,t,s,n=0,a)=>{return q(N($((o=Ie(X,M(e)),r=(e,s)=>[k(t)?s:Ie(e,M(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>et(e,t)*(s?-1:1))),n,k(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>Re(Ie(Ie(X,M(e)),M(t))),cs=(e,t,s)=>Ie(Ie(Ie(X,M(e)),M(t)),M(s)),ds=()=>Ee(Z),us=()=>Re(Z),gs=e=>Ie(Z,M(e)),hs=()=>!Le(X),fs=e=>Ce(X,M(e)),bs=(e,t)=>Ce(Ie(K,M(e)),M(t)),ws=(e,t)=>Ce(Ie(X,M(e)),M(t)),Cs=(e,t,s)=>Ce(Ie(Ie(X,M(e)),M(t)),M(s)),Ls=()=>!Le(Z),ps=e=>Ce(Z,M(e)),ys=e=>ts((()=>(e=>be(e,it,$t))(e)?Lt(e):0)),vs=e=>ts((()=>ut(e)?Rt(e):0)),Ts=e=>{try{Ct(Ht(e))}catch{}return xs},Ss=t=>ts((()=>{if((e=be(t,(e=>be(e,lt))))&&(bt(t),!Le(X))){const e=ss();Is(),ys(e)}})),Rs=e=>ts((()=>{if(t=(e=>be(e,lt))(e)){const s=ds();Es(),Vs(),t=!0,wt(e),vs(s)}})),Is=()=>ts((()=>Lt({}))),Ms=e=>ts((e=>Ce(X,e)?Ft(e):0),e),ms=(e,t)=>ts(((e,t)=>x(Ie(X,e),(s=>Ce(s,t)?Qt(e,s,t):0))),e,t),Vs=()=>ts((()=>Rt({}))),Ds=()=>ts((()=>{bt({}),e=!1})),Es=()=>ts((()=>{wt({}),t=!1})),Hs=(e,t)=>{if(-1!=a){As();const s=e();return ks(t),s}},As=()=>(-1!=a&&a++,1==a&&(r[0]?.(),at(tt)),xs),ks=e=>(a>0&&(a--,0==a&&(a=1,Kt(1),Le(D)||Zt(1),Xt(1),Le(H)||es(1),e?.(xs)&&(ve(D,((e,t)=>ve(e,((e,s)=>ve(e,(([e],n)=>Ne(xs,t,s,n,e))))))),ye(D),ve(H,(([e],t)=>Pe(xs,t,e))),ye(H)),at(st[0],void 0),a=-1,Kt(0),Le(D)||Zt(0),Xt(0),Le(H)||es(0),r[1]?.(),at(st[1],void 0),r[2]?.(),a=0,s=hs(),n=Ls(),_([d,h,y,m,V,D,A,E,H,F],ye))),xs),xs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>He(Ie(X,M(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>Ee(Ie(Ie(X,M(e)),M(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:bs,hasRow:ws,hasCell:Cs,hasValues:Ls,hasValue:ps,getTablesJson:()=>Et(X),getValuesJson:()=>Et(Z),getJson:()=>Et([X,Z]),getTablesSchemaJson:()=>Et(z),getValuesSchemaJson:()=>Et(O),getSchemaJson:()=>Et([z,O]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(he(e)?Is:ys)(e),(he(t)?Vs:vs)(t)})),setTables:ys,setTable:(e,t)=>ts((e=>it(t,e)?pt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>ct(e,t,s)?yt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Hs((()=>{let n;return ct(e,n,t)&&(e=M(e),yt(e,Jt(e),n=xt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(ct(e,t,s,1)){const n=Jt(e);ge(s,((s,a)=>Tt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>x(dt(e,t,s,Q(n)?n(cs(e,t,s)):n),(n=>Tt(e,Jt(e),t,s,n)))),e,t,s),setValues:vs,setPartialValues:e=>ts((()=>ut(e,1)?ge(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>ts((e=>x(gt(e,Q(t)?t(gs(e)):t),(t=>It(e,t)))),e),applyChanges:e=>ts((()=>{ge(e[0],((e,t)=>k(e)?Ms(t):ge(e,((e,s)=>k(e)?ms(t,s):ge(e,((e,n)=>Ne(xs,t,s,n,e))))))),ge(e[1],((e,t)=>Pe(xs,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{St(Ht(e))}catch{}return xs},setJson:e=>ts((()=>{try{const[t,s]=Ht(e);Ct(t),St(s)}catch{Ts(e)}})),setTablesSchema:Ss,setValuesSchema:Rs,setSchema:(e,t)=>ts((()=>{Ss(e),Rs(t)})),delTables:Is,delTable:Ms,delRow:ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>x(Ie(X,e),(a=>x(Ie(a,t),(o=>Ce(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>Ce(Z,e)?Nt(e):0),e),delTablesSchema:Ds,delValuesSchema:Es,delSchema:()=>ts((()=>{Ds(),Es()})),transaction:Hs,startTransaction:As,getTransactionChanges:()=>[Ee(D,((e,t)=>-1===Ie(d,t)?void 0:Ee(e,((e,s)=>-1===Ie(Ie(m,t),s)?void 0:Ee(e,(([,e])=>e),(e=>Dt(e)))),Le,he)),Le,he),Ee(H,(([,e])=>e),(e=>Dt(e))),1],getTransactionLog:()=>[!Le(D),!Le(H),Ae(D,Vt,Dt),Ae(A),Ee(H,Vt,Dt),Ee(F),Ee(d),He(m),Ae(V),Ee(E)],finishTransaction:ks,forEachTable:e=>ve(X,((t,s)=>e(s,(e=>ve(t,((t,s)=>e(s,(e=>Me(t,e))))))))),forEachTableCell:(e,t)=>Me(Ie(K,M(e)),t),forEachRow:(e,t)=>ve(Ie(X,M(e)),((e,s)=>t(s,(t=>Me(e,t))))),forEachCell:(e,t,s)=>Me(Ie(Ie(X,M(e)),M(t)),s),forEachValue:e=>Me(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return nt((()=>{const r=ls(e,t,s,n,a);B(r,l)||(l=r,o(xs,e,t,s,n,a,l))}),fe[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>nt(e,tt),addWillFinishTransactionListener:e=>nt(e,st[0]),addDidFinishTransactionListener:e=>nt(e,st[1]),callListener:e=>(rt(e),xs),delListener:e=>(ot(e),xs),getListenerStats:()=>({}),createStore:kt,addListener:nt,callListeners:at,setInternalListeners:(e,t,s,n,a)=>r=[e,t,s,n,a]};return ge({[g+b]:[0,ee,[],()=>[hs()]],[b]:[0,te],[w]:[0,se],[g+f]:[1,ne,[ns],e=>[fs(...e)]],[f]:[1,ae,[ns]],[f+T]:[1,oe,[ns]],[g+f+v]:[2,re,[ns,as],e=>[bs(...e)]],[L]:[1,ie,[ns]],[p]:[1,ue,[ns]],[g+C]:[2,pe,[ns,rs],e=>[ws(...e)]],[C]:[2,Fe,[ns,rs]],[T]:[2,ze,[ns,rs]],[g+v]:[3,je,[ns,rs,is],e=>[Cs(...e)]],[v]:[3,Be,[ns,rs,is],e=>Mt(cs(...e))],InvalidCell:[3,Ue],[g+R]:[0,Ge,[],()=>[Ls()]],[R]:[0,Ke],[I]:[0,Xe],[g+S]:[1,Ye,[us],e=>[ps(...e)]],[S]:[1,Ze,[us],e=>Mt(gs(e[0]))],InvalidValue:[1,$e]},(([e,t,s,n],a)=>{xs[u+a+c]=(...a)=>nt(a[e],t[a[e+1]?1:0],e>0?N(a,0,e):void 0,s,n)})),le(xs)},xt=2**36,Jt=2**30,Ft=2**24,Qt=2**18,zt=4096,Nt={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},Pt=(e=s)=>[yt(e),yt(e)];e.createCheckpoints=Ge,e.createCustomPersister=it,e.createCustomSynchronizer=(e,t,n,a,o,r,l={})=>{let i;const c=Se();n(((s,n,a,o)=>{0==a?x(Ie(c,n),(([e,t])=>k(e)||e==s?t(o,s):0)):2==a&&h.isAutoLoading()?g(s,o).then((e=>{i?.(void 0,e)})):3==a&&h.isAutoLoading()?i?.(void 0,o):x(1==a&&h.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{t(s,n,0,e)}))}));const d=async(e,n,a=s)=>new D(((s,r)=>{const l=tt(),i=setTimeout((()=>{Te(c,l),r(`No response from ${e??"anyone"} to '${n}'`)}),1e3*o);me(c,l,[e,(e,t)=>{clearTimeout(i),Te(c,l),s([e,t])}]),t(e,l,n,a)})),u=(e,[t,s])=>{ue(t,(([t,s],n)=>{const a=fe(e[0],n,pt);ue(t,(([e,t],s)=>{const n=fe(a[0],s,pt);ue(e,(([e,t],s)=>n[0][s]=ht(e,t))),n[1]=Ct(n[1],t)})),a[1]=Ct(a[1],s)})),e[1]=Ct(e[1],s)},g=async(t=null,s)=>{k(s)&&([s,t]=await d(t,1));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=pt();if(o!=n){const[s,n]=(await d(t,4,e.getMergeableTableHashes()))[0];if(l=s,!he(n)){const[s,a]=(await d(t,5,e.getMergeableRowHashes(n)))[0];if(u(l,s),!he(a)){const s=(await d(t,6,e.getMergeableCellHashes(a)))[0];u(l,s)}}}return[l,r==a?pt():(await d(t,7,e.getMergeableValuesHashes()))[0],1]},h=it(e,(async()=>{const e=await g();return he(e[0][0])&&he(e[1][0])?void 0:e}),(async(s,n)=>{n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await h.startAutoLoad(e)).startAutoSave(),stopSync:()=>h.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),h.stopSync()),getSynchronizerStats:()=>({}),...l});return h},e.createIndexes=st,e.createMergeableStore=e=>{let t=1,n=Pt(),a=0;const o=Se(),r=Oe(),[l,i]=(e=>{let t=0,s=-1;const n=x(e,(e=>{const t=dt(e);return Ye(t/Ft)+Ye(t/Qt)+Ye(t/zt)+Ye(t/64)+Ye(t)}),(()=>tt(5))),a=e=>{const n=t,[a,o]=k(e)||""==e?[0,0]:[Ze(r=e,0)*xt+Ze(r,1)*Jt+Ze(r,2)*Ft+Ze(r,3)*Qt+Ze(r,4)*zt+64*Ze(r,5)+Ze(r,6),Ze(r,7)*Qt+Ze(r,8)*zt+64*Ze(r,9)+Ze(r,10)];var r;t=E(n,a,Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,Ye((e=t)/xt)+Ye(e/Jt)+Ye(e/Ft)+Ye(e/Qt)+Ye(e/zt)+Ye(e/64)+Ye(e)+Ye(o/Qt)+Ye(o/zt)+Ye(o/64)+Ye(o)+n;var e,o},a]})(e),c=kt(),d=e=>{const s=t;return t=0,e(),t=s,b},u=(e,t=0)=>{const a={},o={},[[r,l=s,c=0],d]=e,[u,h]=n,[f,b,w]=u;let C=t?c:w,L=l;ue(r,(([e,n=s,o=0],r)=>{const l=Ve(f,r,yt),[i,c,d]=l;let u=t?o:d,h=n;ue(e,((e,s)=>{const[n,o,l]=g(e,Ve(i,s,yt),fe(fe(a,r,ie),s,ie),t);u^=t?0:(o?bt(s,o):0)^bt(s,l),h=Ct(h,n)})),u^=t?0:wt(c,n),Lt(l,u,n),C^=t?0:(d?bt(r,d):0)^bt(r,l[2]),L=Ct(L,h)})),C^=t?0:wt(b,l),Lt(u,C,l);const[p]=g(d,h,o,t);return i(Ct(L,p)),[a,o,1]},g=(e,t,n,a)=>{const[o,r=s,l=0]=e,[i,c,d]=t;let u=r,g=a?l:d;return ue(o,(([e,t,o=0],r)=>{const l=Ve(i,r,(()=>[void 0,s,0])),[,c,d]=l;(!c||t>c)&&(Lt(l,a?o:dt(Et(e??null)+":"+t),t),l[0]=e,n[r]=e,g^=a?0:bt(r,d)^bt(r,l[2]),u=Ct(u,t))})),g^=a?0:wt(c,r),Lt(t,g,r),[u,d,t[2]]},h=()=>[vt(n[0],(e=>vt(e,(e=>vt(e))))),vt(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Ee(n[0][0],ft),getMergeableTableDiff:e=>{const t=pt(n[0][1]),s={};return Me(n[0][0],((n,[a,o,r])=>ce(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Tt([a,o],(e=>Tt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return ue(e,((e,s)=>x(Ie(n[0][0],s),(([n,,a])=>a!=e?Me(n,((e,[,,n])=>fe(t,s,ie)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=pt(n[0][1]),s={};return ue(e,((e,a)=>Me(Ie(n[0][0],a)?.[0],((n,[o,r,l])=>ce(e,n)?l!==e[n]?fe(s,a,ie)[n]=l:0:fe(t[0],a,pt)[0][n]=Tt([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return ue(e,((e,s)=>x(Ie(n[0][0],s),(([n])=>ue(e,((e,a)=>x(Ie(n,a),(([n,,o])=>o!==e?Me(n,((e,[,,n])=>fe(fe(t,s,ie),a,ie)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return ue(e,((e,s)=>ue(e,((e,n)=>x(Ie(t,s),(([t,o])=>x(Ie(t,n),(([t,r])=>Me(t,((t,[l,i,c])=>c!==e[t]?fe(fe(a,s,(()=>pt(o)))[0],n,(()=>pt(r)))[0][t]=[l,i]:0)))))))))),ht(a,s)},getMergeableValuesHashes:()=>Ee(n[1][0],ft),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=Ee(t,gt,(([,,t],s)=>t==e?.[s]));return ht(a,s)},setMergeableContent:e=>d((()=>(e=>z(e)&&2==P(e)&&St(e[0],(e=>be(e,(e=>St(e,(e=>be(e,(e=>St(e,(e=>be(e,(e=>St(e,ze)),void 0,1)))),void 0,1)))),void 0,1)))&&St(e[1],(e=>be(e,(e=>St(e,ze)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Pt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};ve(o,((t,s)=>x(Ie(e,s),(([e,n])=>{const a={};ve(t,((t,s)=>x(Ie(e,s),(([e,n])=>{const o={};ve(t,(t=>{x(Ie(e,t),(([e,s])=>o[t]=ht(e,s)))})),a[s]=ht(o,n)})))),l[s]=ht(a,n)}))));const i={};return ve(r,(e=>x(Ie(s,e),(([t,s])=>i[e]=ht(t,s))))),[ht(l,t),ht(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ye(o),ye(r)}),((e,n,r,i)=>{We(Ve(Ve(o,e,Se),n,Oe),r),t&&u([[{[e]:[{[n]:[{[r]:[i,a?s:l()]}]}]}],[{}],1])}),((e,n)=>{We(r,e),t&&u([[{}],[{[e]:[n,a?s:l()]}],1])})),ge(c,((e,t)=>b[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=Nt[N(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:e)),le(b)},e.createMetrics=ot,e.createQueries=Rt,e.createRelationships=It,e.createStore=kt,e.defaultSorter=et,e.getUniqueId=tt},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",b=f+"s",w=f+h,C="Row",L=C+"Count",p=C+h,y="Sorted"+C+h,v="Cell",T=v+h,S="Value",R=S+"s",I=S+h,M=e=>s+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),D=Promise,E=Math.max,H=Math.min,A=isFinite,k=e=>null==e,x=(e,t,s)=>k(e)?s?.():t(e),J=e=>e==n||e==a,F=e=>t(e)==n,Q=e=>t(e)==r,z=e=>Array.isArray(e),P=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),U=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),$=(e,t)=>e.sort(t),_=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>X(e,((e,t)=>e+t),0),K=e=>0==N(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.isFrozen,oe=e=>!k(e)&&x(se(e),(e=>e==te.prototype||k(se(e))),(()=>!0)),re=te.keys,le=te.freeze,ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>_(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),he=e=>oe(e)&&0==(e=>N(re(e)))(e),fe=(e,t,s)=>(ce(e,t)||(e[t]=s()),e[t]),be=(e,t,s,n=0)=>k(e)||!oe(e)||!n&&he(e)||ae(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!!n||!he(e)),we=e=>e?.size??0,Ce=(e,t)=>e?.has(t)??!1,Le=e=>k(e)||0==we(e),pe=e=>[...e?.values()??[]],ye=e=>e.clear(),ve=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),Se=e=>new Map(e),Re=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Me=(e,t)=>ve(e,((e,s)=>t(s,e))),me=(e,t,s)=>k(s)?(Te(e,t),e):e?.set(t,s),Ve=(e,t,s,n)=>(Ce(e,t)?n?.(Ie(e,t)):me(e,t,s()),Ie(e,t)),De=(e,t,s,n=me)=>(ge(t,((t,n)=>s(e,n,t))),Me(e,(s=>ce(t,s)?0:n(e,s))),e),Ee=(e,t,s,n)=>{const a={};return ve(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},He=(e,t,s)=>Ee(e,(e=>Ee(e,t,s)),Le,he),Ae=(e,t,s)=>Ee(e,(e=>He(e,t,s)),Le,he),ke=(e,t)=>{const s=Se();return ve(e,((e,n)=>s.set(n,t?.(e)??e))),s},xe=e=>ke(e,ke),Je=e=>ke(e,xe),Fe=(e,t,s,n,a=0)=>x((s?Ve:Ie)(e,t[a],a>N(t)-2?s:Se),(o=>{if(a>N(t)-2)return n?.(o)&&me(e,t[a]),o;const r=Fe(o,t,s,n,a+1);return Le(o)&&me(e,t[a]),r})),Qe=e=>{const s=t(e);return J(s)||s==o&&A(e)?s:void 0},ze=e=>k(e)||!k(Qe(e)),Pe=(e,t,s,n,a)=>k(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ne=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),Oe=e=>new Set(z(e)||k(e)?e:[e]),We=(e,t)=>e?.add(t),je=(e,t,s,n,a)=>{const o=e.hasRow,r=Se(),l=Se(),i=Se(),c=Se(),d=Se(),u=Se(),g=(t,s,...n)=>{const a=Ve(u,t,Oe);return _(n,(t=>We(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>x(Ie(u,t),(n=>{_(K(s)?pe(n):s,(t=>{e.delListener(t),Te(n,t)})),Le(n)&&me(u,t)})),f=(e,s)=>{me(r,e,s),Ce(l,e)||(me(l,e,t()),me(c,e,Se()),me(d,e,Se()),a(i))},b=e=>{me(r,e),me(l,e),me(c,e),me(d,e),h(e),a(i)};return[()=>e,()=>Re(r),e=>Me(l,e),e=>Ce(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>me(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=Se(),u=Se(),b=Ie(c,t),w=Ie(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=Ie(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&B(c,d)||me(i,t,[c,d]),!k(l)){const e=Ie(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&me(u,t,s)}},L=e=>{a((()=>{ve(i,(([,e],t)=>me(b,t,e))),ve(u,((e,t)=>me(w,t,e)))}),i,u,b,w,e),ye(i),ye(u)};Me(b,C),e.hasTable(n)&&_(e.getRowIds(n),(e=>{Ce(b,e)||C(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>L())))},b,e=>n(e,i),()=>Me(u,b),g,h]},Be=(e,t)=>F(e)?t=>t(e):e??(()=>t??s),Ue=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},$e=/^\d+$/,_e=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{$e.test(t)&&N(e)<1e3&&Y(e,t)}]},qe=e=>{let t;const[n,a]=_e(),o=Se();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return me(o,d,[a,r,l,i,c]),We(Fe(r,l??[s],Oe),d),d},(e,n,...a)=>_(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?Y(n,e):null===t[s]?ve(e,(e=>a(e,s+1))):_([t[s],null],(t=>a(Ie(e,t),s+1)));return a(e,0),n})(e,n),(e=>ve(e,(e=>Ie(o,e)[0](t,...n??[],...a))))),e=>x(Ie(o,e),(([,t,n])=>(Fe(t,n??[s],void 0,(t=>(Te(t,e),Le(t)?1:0))),me(o,e),a(e),n))),e=>x(Ie(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):k(s[l])?_(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},Ge=Ue((e=>{let t,n,a,o=100,r=Se(),l=Se(),i=1;const c=Se(),d=Se(),[u,g,h]=qe((()=>J)),f=Se(),b=Se(),w=[],C=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Ie(f,s);ve(n,((s,n)=>ve(s,((s,a)=>ve(s,((s,o)=>Pe(e,n,a,o,s[t]))))))),ve(a,((s,n)=>Ne(e,n,s[t])))})),i=1},p=e=>{me(f,e),me(b,e),g(d,[e])},y=(e,t)=>_(((e,t)=>e.splice(0,t))(e,t??N(e)),p),v=()=>y(w,N(w)-o),T=()=>x(t,(()=>{Y(w,t),v(),y(C),t=void 0,a=1})),S=()=>{t=Z(w),a=1};let R,I;const M=(e=s)=>(k(t)&&(t=s+n++,me(f,t,[r,l]),H(t,e),r=Se(),l=Se(),a=1),t),m=()=>{K(w)||(((e,...t)=>{e.unshift(...t)})(C,M()),L(0,t),t=Z(w),a=1)},V=()=>{K(C)||(Y(w,t),t=ee(C),L(1,t),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(A(e)&&Ie(b,e)!==t&&(me(b,e,t),g(d,[e])),J),A=e=>Ce(f,e),J={setSize:e=>(o=e,v(),J),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Me(b,e),hasCheckpoint:A,getCheckpoint:e=>Ie(b,e),goBackward:()=>(m(),D(),J),goForward:()=>(V(),D(),J),goTo:e=>{const s=W(w,e)?m:W(C,e)?V:null;for(;!k(s)&&e!=t;)s();return D(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(y(w),y(C),k(t)||p(t),t=void 0,n=0,E(),J),clearForward:()=>(K(C)||(y(C),g(c)),J),destroy:()=>{e.delListener(R),e.delListener(I)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){T();const e=Ve(r,t,Se),l=Ve(e,s,Se),i=Ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(me(l,n))&&Le(me(e,s))&&Le(me(r,t))&&S(),D()}})),I=e.addValueListener(null,((e,t,s,n)=>{if(i){T();const e=Ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Le(me(l,t))&&S(),D()}}))}};return le(J.clear())}),(e=>e._registerListeners())),Ke="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),Xe=Se(q(Ke,((e,t)=>[e,t]))),Ye=e=>Ke[63&e],Ze=(e,t)=>Ie(Xe,e[t])??0,et=(e,t)=>(e??0)<(t??0)?-1:1,tt=(e=16)=>X(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+Ye(t)),""),st=Ue((e=>{const t=Se(),n=Se(),[a,o,r]=qe((()=>p)),[l,i,c,d,u,g,h,,f,b,w,C]=je(e,Se,(e=>k(e)?s:z(e)?q(e,M):M(e)),a,o),L=(t,s,n)=>{const a=u(t);ve(n,((t,n)=>s(n,(s=>ve(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},p={setIndexDefinition:(e,s,a,r,l,i=et)=>{const c=k(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let b=0;const w=Oe(),C=Oe(),L=g(e);if(ve(a,(([e,t],s)=>{const n=Oe(e),a=Oe(t);ve(n,(e=>Te(a,e)?Te(n,e):0)),ve(n,(e=>{We(w,e),x(Ie(L,e),(t=>{Te(t,s),Le(t)&&(me(L,e),b=1)}))})),ve(a,(e=>{We(w,e),Ce(L,e)||(me(L,e,Oe()),b=1),We(Ie(L,e),s),k(r)||We(C,e)}))})),s(),Le(u)||(f?Me(L,(e=>We(C,e))):Me(l,(e=>x(Ie(d,e),(e=>We(C,e))))),ve(C,(e=>{const t=(t,s)=>i(Ie(u,t),Ie(u,s),e),s=[...Ie(L,e)];U(s,t)||(me(L,e,Oe($(s,t))),We(w,e))}))),(b||f)&&!k(c)){const t=[...L];U(t,c)||(h(e,Se($(t,c))),b=1)}b&&o(t,[e]),ve(w,(t=>o(n,[e,t])))}),Be(a),x(r,Be)),p},delIndexDefinition:e=>(b(e),p),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Ce(g(e),t),getTableId:u,getSliceIds:e=>Re(g(e)),getSliceRowIds:(e,t)=>pe(Ie(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),p),destroy:C,getListenerStats:()=>({})};return le(p)})),nt=Se([["avg",[(e,t)=>G(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),at=(e,t,s,n,a,o=!1)=>{if(Le(s))return;const[r,l,i,c]=a;return o||=k(e),ve(n,(([s,n])=>{o||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=k(e))})),o?r(pe(s),we(s)):e},ot=Ue((e=>{const t=Se(),[n,a,o]=qe((()=>C)),[r,l,i,c,d,u,g,,h,f,b,w]=je(e,O,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:Ie(nt,n)??Ie(nt,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=we(r);i||=k(d),s();let f=at(d,h,r,n,c,i);A(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),Be(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({})};return le(C)})),rt=Se(),lt=Se(),it=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(rt,i,(()=>0)),Ve(lt,i,(()=>[]));const[h,f,b,w,C]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!he(e)||!he(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(r,e),L=t=>{(h&&z(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},p=async e=>(2!=g&&(g=1,await S((async()=>{try{L(await t())}catch(t){o?.(t),e&&C(e)}g=0}))),R),y=()=>(d&&(a(d),d=void 0),R),v=async e=>(1!=g&&(g=2,await S((async()=>{try{await s(f,e)}catch(e){o?.(e)}g=0}))),R),T=()=>(x(u,e.delListener),u=void 0,R),S=async(...e)=>(Y(Ie(lt,i),...e),await(async()=>{if(!Ie(rt,i)){for(me(rt,i,1);!k(c=ee(Ie(lt,i)));)try{await c()}catch(e){o?.(e)}me(rt,i,0)}})(),R),R={load:p,startAutoLoad:async e=>(await y().load(e),d=n((async(e,t)=>{t||e?2!=g&&(g=1,L(t??e),g=0):await p()})),R),stopAutoLoad:y,isAutoLoading:()=>!k(d),save:v,startAutoSave:async()=>(await T().save(),u=e.addDidFinishTransactionListener((()=>{const e=b();w(e)&&v(e)})),R),stopAutoSave:T,isAutoSaving:()=>!k(u),schedule:S,getStore:()=>e,destroy:()=>y().stopAutoSave(),getStats:()=>({}),...l};return le(R)},ct=new globalThis.TextEncoder,dt=e=>{let t=2166136261;return _(ct.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},ut=([e,t,s])=>[e,t,s],gt=([e,t])=>ht(e,t),ht=(e,t)=>t?[e,t]:[e],ft=e=>e[2],bt=(e,t)=>dt(e+":"+t),wt=(e,t)=>t>e?(e?dt(e):0)^dt(t):0,Ct=(e,t)=>((e??"")>(t??"")?e:t)??"",Lt=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},pt=(e=s)=>ht(ie(),e),yt=(e=s)=>[Se(),e,0],vt=([e,t,s],n=ut)=>[Ee(e,n),t,s],Tt=([e,t],s=gt)=>ht(Ee(e,s),t),St=(e,s)=>z(e)&&3==N(e)&&F(e[1])&&t(e[2])==o&&A(e[2])&&s(e[0]),Rt=Ue((e=>{const t=e.createStore,n=t(),a=t(),o=Se(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,b,w,S,,,R,,I,M,m,V,D]=je(e,(()=>!0),O,r,l),E=(e,t,...s)=>_(s,(s=>We(Ve(Ve(o,t,Se),e,Oe),s))),H=e=>{x(Ie(o,e),(e=>{Me(e,((e,t)=>ve(t,(t=>e.delListener(t))))),ye(e)})),_([a,n],(t=>t.delTable(e)))},A=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),H(t);const l=[],i=[[null,[o,null,null,[],Se()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=Q(e)?[N(l)+s,e]:[k(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=k(s)||Q(t)?null:t,a=k(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],Se()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,Q(e)?e:k(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:Ie(nt,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,Q(e)?e:s=>s(e)===t)});const g=Se(l);if(Le(g))return J;const h=Se(i);Me(h,((e,[,t])=>x(Ie(h,t),(({3:t})=>k(e)?0:Y(t,e)))));const f=Se(d);let b=n;if(Le(f)&&K(u))b=a;else{A(t,b,a);const e=Se();Me(f,((t,[s,n])=>We(Ve(e,s,Oe),[t,n])));const s=Oe();Me(g,(t=>Ce(e,t)?0:We(s,t)));const n=Se(),o=(s,n,o,r)=>x(s,(([l,i,c,d])=>{Me(n,((t,[s])=>{const n=Ve(l,t,Se),a=Ie(n,o),i=r?void 0:s;if(a!==i){const s=Oe([[a,i]]),r=we(n);me(n,o,i),ve(Ie(e,t),(([e,t])=>{const a=at(d[e],r,n,s,t);d[e]=k(Qe(a))?null:a}))}})),Le(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):k(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));E(b,t,b.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=Se(),g=b.hasRow(t,l);let h=!g;ve(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Me(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&me(u,e,[n])})),h&&o(Fe(n,c,void 0,(([,e])=>(Te(e,l),Le(e)))),u,l,1),g&&o(Fe(n,d,(()=>{const e={};return ve(s,(s=>e[s]=b.getCell(t,l,s))),[Se(),Oe(),void 0,e]}),(([,e])=>{We(e,l)})),u,l)})))}A(t,e,b);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);_(r,(n=>{const[a,,o,r,i]=Ie(h,n),c=o?.(l,s),[d,u]=Ie(i,s)??[];c!=d&&(k(u)||D(t,u),me(i,s,k(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...k(n)?[o,s,t]:t===o?[o,s,n]:[Ie(h,t)?.[0],Ie(Ie(h,t)?.[4],s)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?Me(g,((e,a)=>Pe(b,t,s,e,a(n,s)))):b.delRow(t,s)))})(s)},{3:C}=Ie(h,null);return b.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(b.delRow(t,a),ve(h,(({4:e})=>x(Ie(e,a),(([,s])=>{D(t,s),me(e,a)})))))}))))),J},delQueryDefinition:e=>(H(e),I(e),J),getStore:g,getQueryIds:h,forEachQuery:b,hasQuery:w,getTableId:S,addQueryIdsListener:e=>M((()=>e(J))),delListener:e=>(i(e),J),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+T]:[0,1],[L]:[0,1],[p]:[0,1],[y]:[0,5],[C]:[1,2],[T]:[0,2],[v]:[1,3]},(([e,t],s)=>{_(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>a[e+s](...t))),J[u+d+s+c]=(...e)=>a[u+s+c](...P(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),le(J)})),It=Ue((e=>{const t=Se(),n=Se(),a=Se(),o=Se(),[r,l,i]=qe((()=>T)),[c,d,u,g,h,f,,,b,w,C,L]=je(e,(()=>[Se(),Se(),Se(),Se()]),(e=>k(e)?void 0:e+s),r,l),p=(e,t,s)=>x(f(e),(([n,,a])=>{if(!Ce(a,t)){const o=Oe();if(h(e)!=v(e))We(o,t);else{let e=t;for(;!k(e)&&!Ce(o,e);)We(o,e),e=Ie(n,e)}if(s)return o;me(a,t,o)}return Ie(a,t)})),y=(e,t)=>x(f(e),(([,,e])=>me(e,t))),v=e=>Ie(t,e),T={setRelationshipDefinition:(e,s,r,i)=>(me(t,e,r),b(e,s,((t,s)=>{const r=Oe(),i=Oe(),c=Oe(),[d,u]=f(e);ve(s,(([t,s],n)=>{k(t)||(We(i,t),x(Ie(u,t),(e=>{Te(e,n),Le(e)&&me(u,t)}))),k(s)||(We(i,s),Ce(u,s)||me(u,s,Oe()),We(Ie(u,s),n)),We(r,n),me(d,n,s),Me(Ie(o,e),(t=>{Ce(p(e,t),n)&&We(c,t)}))})),t(),ve(r,(t=>l(n,[e,t]))),ve(i,(t=>l(a,[e,t]))),ve(c,(t=>{y(e,t),l(o,[e,t])}))}),Be(i)),T),delRelationshipDefinition:e=>(me(t,e),w(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:v,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>pe(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(f(e))?[t]:pe(p(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),r(s,o,[e,t])),delListener:e=>(y(...i(e)??[]),T),destroy:L,getListenerStats:()=>({})};return le(T)})),Mt=e=>[e,e],mt=()=>[Se(),Se()],Vt=e=>[...e],Dt=([e,t])=>e===t,Et=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),Ht=JSON.parse,At=(e,t,s)=>me(e,t,Ie(e,t)==-s?void 0:s),kt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=Se(),h=Se(),y=Se(),m=Se(),V=Se(),D=Se(),E=Se(),H=Se(),A=Se(),F=Se(),z=Se(),N=Se(),O=Se(),j=Se(),U=Oe(),G=Se(),K=Se(),X=Se(),Z=Se(),ee=mt(),te=mt(),se=mt(),ne=mt(),ae=mt(),oe=mt(),re=mt(),ie=mt(),ue=mt(),fe=mt(),pe=mt(),Fe=mt(),ze=mt(),je=mt(),Be=mt(),Ue=mt(),$e=mt(),Ge=mt(),Ke=mt(),Xe=mt(),Ye=mt(),Ze=mt(),tt=Se(),st=mt(),[nt,at,ot,rt]=qe((()=>xs)),lt=e=>{if(!be(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!J(t)&&t!=o||(Qe(e[i])!=t&&de(e,i),0))},it=(t,s)=>(!e||Ce(z,s)||$t(s))&&be(t,((e,t)=>ct(s,t,e)),(()=>$t(s))),ct=(e,t,s,n)=>be(n?s:ht(s,e,t),((n,a)=>x(dt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),dt=(t,s,n,a)=>e?x(Ie(Ie(z,t),n),(e=>Qe(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):k(Qe(a))?$t(t,s,n,a):a,ut=(e,t)=>be(t?e:ft(e),((t,s)=>x(gt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>_t())),gt=(e,s)=>t?x(Ie(O,e),(t=>Qe(s)!=t[l]?_t(e,s,t[i]):s),(()=>_t(e,s))):k(Qe(s))?_t(e,s):s,ht=(e,t,s)=>(x(Ie(N,t),(([n,a])=>{ve(n,((t,s)=>{ce(e,s)||(e[s]=t)})),ve(a,(n=>{ce(e,n)||$t(t,s,n)}))})),e),ft=e=>(t&&(ve(j,((t,s)=>{ce(e,s)||(e[s]=t)})),ve(U,(t=>{ce(e,t)||_t(t)}))),e),bt=e=>De(z,e,((e,t,s)=>{const n=Se(),a=Oe();De(Ve(z,t,Se),s,((e,t,s)=>{me(e,t,s),x(s[i],(e=>me(n,t,e)),(()=>We(a,t)))})),me(N,t,[n,a])}),((e,t)=>{me(z,t),me(N,t)})),wt=e=>De(O,e,((e,t,s)=>{me(O,t,s),x(s[i],(e=>me(j,t,e)),(()=>We(U,t)))}),((e,t)=>{me(O,t),me(j,t),Te(U,t)})),Ct=e=>he(e)?Is():ys(e),Lt=e=>De(X,e,((e,t,s)=>pt(t,s)),((e,t)=>Ft(t))),pt=(e,t)=>De(Ve(X,e,(()=>(Nt(e,1),me(G,e,_e()),me(K,e,Se()),Se()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>Qt(e,t,s))),yt=(e,t,s,n,a)=>De(Ve(t,s,(()=>(Ot(e,s,1),Se()))),n,((t,n,a)=>vt(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),vt=(e,t,s,n,a)=>{Ce(s,n)||Wt(e,t,n,1);const o=Ie(s,n);a!==o&&(jt(e,t,n,o,a),me(s,n,a))},Tt=(e,t,s,n,a)=>x(Ie(t,s),(t=>vt(e,s,t,n,a)),(()=>yt(e,t,s,ht({[n]:a},e,s)))),St=e=>he(e)?Vs():vs(e),Rt=e=>De(Z,e,((e,t,s)=>It(t,s)),((e,t)=>Pt(t))),It=(e,t)=>{Ce(Z,e)||Bt(e,1);const s=Ie(Z,e);t!==s&&(Ut(e,s,t),me(Z,e,t))},xt=(e,t)=>{const[s]=Ie(G,e),n=s(t);return Ce(Ie(X,e),n)?xt(e,t):n},Jt=e=>Ie(X,e)??pt(e,{}),Ft=e=>pt(e,{}),Qt=(e,t,s)=>{const[,n]=Ie(G,e);n(s),yt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Ie(Ie(N,e)?.[0],a);if(!k(r)&&!o)return vt(e,s,n,a,r);const l=t=>{jt(e,s,t,Ie(n,t)),Wt(e,s,t,-1),me(n,t)};k(r)?l(a):Me(n,l),Le(n)&&(Ot(e,s,-1),Le(me(t,s))&&(Nt(e,-1),me(X,e),me(G,e),me(K,e)))},Pt=e=>{const t=Ie(j,e);if(!k(t))return It(e,t);Ut(e,Ie(Z,e)),Bt(e,-1),me(Z,e)},Nt=(e,t)=>At(d,e,t),Ot=(e,t,s)=>At(Ve(m,e,Se),t,s)&&me(y,e,Ve(y,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Ie(K,e),o=Ie(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&At(Ve(h,e,Se),s,n),me(a,s,o!=-n?o+n:null),At(Ve(Ve(V,e,Se),t,Se),s,n)},jt=(e,t,s,n,a)=>{Ve(Ve(Ve(D,e,Se),t,Se),s,(()=>[n,0]))[1]=a,r[3]?.(e,t,s,a)},Bt=(e,t)=>At(E,e,t),Ut=(e,t,s)=>{Ve(H,e,(()=>[t,0]))[1]=s,r[4]?.(e,s)},$t=(e,t,s,n,a)=>(Y(Ve(Ve(Ve(A,e,Se),t,Se),s,(()=>[])),n),a),_t=(e,t,s)=>(Y(Ve(F,e,(()=>[])),t),s),qt=(e,t,s)=>x(Ie(Ie(Ie(D,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(cs(e,t,s))])),Gt=e=>x(Ie(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Mt(gs(e))])),Kt=e=>Le(A)||Le(Ue[e])?0:ve(e?Je(A):A,((t,s)=>ve(t,((t,n)=>ve(t,((t,a)=>at(Ue[e],[s,n,a],t))))))),Xt=e=>Le(F)||Le($e[e])?0:ve(e?ke(F):F,((t,s)=>at($e[e],[s],t))),Yt=(e,t,s,n)=>{if(!Le(e))return at(t,n,(()=>Ee(e))),Me(e,((e,t)=>at(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&at(ee[e],void 0,t);const n=Le(fe[e]),a=Le(ze[e])&&Le(je[e])&&Le(ue[e])&&Le(pe[e])&&Le(oe[e])&&Le(re[e])&&Le(ie[e])&&n&&Le(se[e])&&Le(ne[e]),o=Le(Be[e])&&Le(Fe[e])&&Le(ae[e])&&Le(te[e]);if(!a||!o){const t=e?[ke(d),xe(h),ke(y),xe(m),Je(V),Je(D)]:[d,h,y,m,V,D];if(!a){Yt(t[0],se[e],ne[e]),ve(t[1],((t,s)=>Yt(t,oe[e],re[e],[s]))),ve(t[2],((t,s)=>{0!=t&&at(ie[e],[s],os(s))}));const s=Oe();ve(t[3],((t,a)=>{Yt(t,ue[e],pe[e],[a])&&!n&&(at(fe[e],[a,null]),We(s,a))})),n||ve(t[5],((t,n)=>{if(!Ce(s,n)){const s=Oe();ve(t,(e=>ve(e,(([t,n],a)=>n!==t?We(s,a):Te(e,a))))),ve(s,(t=>at(fe[e],[n,t])))}})),ve(t[4],((t,s)=>ve(t,((t,n)=>Yt(t,ze[e],je[e],[s,n])))))}if(!o){let s;ve(t[5],((t,n)=>{let a;ve(t,((t,o)=>{let r;ve(t,(([t,l],i)=>{l!==t&&(at(Be[e],[n,o,i],l,t,qt),s=a=r=1)})),r&&at(Fe[e],[n,o],qt)})),a&&at(ae[e],[n],qt)})),s&&at(te[e],void 0,qt)}}},es=e=>{const t=Ls();t!=n&&at(Ge[e],void 0,t);const s=Le(Xe[e])&&Le(Ye[e]),a=Le(Ze[e])&&Le(Ke[e]);if(!s||!a){const t=e?[ke(E),ke(H)]:[E,H];if(s||Yt(t[0],Xe[e],Ye[e]),!a){let s;ve(t[1],(([t,n],a)=>{n!==t&&(at(Ze[e],[a],n,t,Gt),s=1)})),s&&at(Ke[e],void 0,Gt)}}},ts=(e,...t)=>(Hs((()=>e(...q(t,M)))),xs),ss=()=>Ae(X),ns=()=>Re(X),as=e=>Re(Ie(K,M(e))),os=e=>we(Ie(X,M(e))),rs=e=>Re(Ie(X,M(e))),ls=(e,t,s,n=0,a)=>{return q(P($((o=Ie(X,M(e)),r=(e,s)=>[k(t)?s:Ie(e,M(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>et(e,t)*(s?-1:1))),n,k(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>Re(Ie(Ie(X,M(e)),M(t))),cs=(e,t,s)=>Ie(Ie(Ie(X,M(e)),M(t)),M(s)),ds=()=>Ee(Z),us=()=>Re(Z),gs=e=>Ie(Z,M(e)),hs=()=>!Le(X),fs=e=>Ce(X,M(e)),bs=(e,t)=>Ce(Ie(K,M(e)),M(t)),ws=(e,t)=>Ce(Ie(X,M(e)),M(t)),Cs=(e,t,s)=>Ce(Ie(Ie(X,M(e)),M(t)),M(s)),Ls=()=>!Le(Z),ps=e=>Ce(Z,M(e)),ys=e=>ts((()=>(e=>be(e,it,$t))(e)?Lt(e):0)),vs=e=>ts((()=>ut(e)?Rt(e):0)),Ts=e=>{try{Ct(Ht(e))}catch{}return xs},Ss=t=>ts((()=>{if((e=be(t,(e=>be(e,lt))))&&(bt(t),!Le(X))){const e=ss();Is(),ys(e)}})),Rs=e=>ts((()=>{if(t=(e=>be(e,lt))(e)){const s=ds();Es(),Vs(),t=!0,wt(e),vs(s)}})),Is=()=>ts((()=>Lt({}))),Ms=e=>ts((e=>Ce(X,e)?Ft(e):0),e),ms=(e,t)=>ts(((e,t)=>x(Ie(X,e),(s=>Ce(s,t)?Qt(e,s,t):0))),e,t),Vs=()=>ts((()=>Rt({}))),Ds=()=>ts((()=>{bt({}),e=!1})),Es=()=>ts((()=>{wt({}),t=!1})),Hs=(e,t)=>{if(-1!=a){As();const s=e();return ks(t),s}},As=()=>(-1!=a&&a++,1==a&&(r[0]?.(),at(tt)),xs),ks=e=>(a>0&&(a--,0==a&&(a=1,Kt(1),Le(D)||Zt(1),Xt(1),Le(H)||es(1),e?.(xs)&&(ve(D,((e,t)=>ve(e,((e,s)=>ve(e,(([e],n)=>Pe(xs,t,s,n,e))))))),ye(D),ve(H,(([e],t)=>Ne(xs,t,e))),ye(H)),at(st[0],void 0),a=-1,Kt(0),Le(D)||Zt(0),Xt(0),Le(H)||es(0),r[1]?.(),at(st[1],void 0),r[2]?.(),a=0,s=hs(),n=Ls(),_([d,h,y,m,V,D,A,E,H,F],ye))),xs),xs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>He(Ie(X,M(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>Ee(Ie(Ie(X,M(e)),M(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:bs,hasRow:ws,hasCell:Cs,hasValues:Ls,hasValue:ps,getTablesJson:()=>Et(X),getValuesJson:()=>Et(Z),getJson:()=>Et([X,Z]),getTablesSchemaJson:()=>Et(z),getValuesSchemaJson:()=>Et(O),getSchemaJson:()=>Et([z,O]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(he(e)?Is:ys)(e),(he(t)?Vs:vs)(t)})),setTables:ys,setTable:(e,t)=>ts((e=>it(t,e)?pt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>ct(e,t,s)?yt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Hs((()=>{let n;return ct(e,n,t)&&(e=M(e),yt(e,Jt(e),n=xt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(ct(e,t,s,1)){const n=Jt(e);ge(s,((s,a)=>Tt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>x(dt(e,t,s,Q(n)?n(cs(e,t,s)):n),(n=>Tt(e,Jt(e),t,s,n)))),e,t,s),setValues:vs,setPartialValues:e=>ts((()=>ut(e,1)?ge(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>ts((e=>x(gt(e,Q(t)?t(gs(e)):t),(t=>It(e,t)))),e),applyChanges:e=>ts((()=>{ge(e[0],((e,t)=>k(e)?Ms(t):ge(e,((e,s)=>k(e)?ms(t,s):ge(e,((e,n)=>Pe(xs,t,s,n,e))))))),ge(e[1],((e,t)=>Ne(xs,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{St(Ht(e))}catch{}return xs},setJson:e=>ts((()=>{try{const[t,s]=Ht(e);Ct(t),St(s)}catch{Ts(e)}})),setTablesSchema:Ss,setValuesSchema:Rs,setSchema:(e,t)=>ts((()=>{Ss(e),Rs(t)})),delTables:Is,delTable:Ms,delRow:ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>x(Ie(X,e),(a=>x(Ie(a,t),(o=>Ce(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>Ce(Z,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Es,delSchema:()=>ts((()=>{Ds(),Es()})),transaction:Hs,startTransaction:As,getTransactionChanges:()=>[Ee(D,((e,t)=>-1===Ie(d,t)?void 0:Ee(e,((e,s)=>-1===Ie(Ie(m,t),s)?void 0:Ee(e,(([,e])=>e),(e=>Dt(e)))),Le,he)),Le,he),Ee(H,(([,e])=>e),(e=>Dt(e))),1],getTransactionLog:()=>[!Le(D),!Le(H),Ae(D,Vt,Dt),Ae(A),Ee(H,Vt,Dt),Ee(F),Ee(d),He(m),Ae(V),Ee(E)],finishTransaction:ks,forEachTable:e=>ve(X,((t,s)=>e(s,(e=>ve(t,((t,s)=>e(s,(e=>Me(t,e))))))))),forEachTableCell:(e,t)=>Me(Ie(K,M(e)),t),forEachRow:(e,t)=>ve(Ie(X,M(e)),((e,s)=>t(s,(t=>Me(e,t))))),forEachCell:(e,t,s)=>Me(Ie(Ie(X,M(e)),M(t)),s),forEachValue:e=>Me(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return nt((()=>{const r=ls(e,t,s,n,a);B(r,l)||(l=r,o(xs,e,t,s,n,a,l))}),fe[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>nt(e,tt),addWillFinishTransactionListener:e=>nt(e,st[0]),addDidFinishTransactionListener:e=>nt(e,st[1]),callListener:e=>(rt(e),xs),delListener:e=>(ot(e),xs),getListenerStats:()=>({}),isMergeable:()=>!1,createStore:kt,addListener:nt,callListeners:at,setInternalListeners:(e,t,s,n,a)=>r=[e,t,s,n,a]};return ge({[g+b]:[0,ee,[],()=>[hs()]],[b]:[0,te],[w]:[0,se],[g+f]:[1,ne,[ns],e=>[fs(...e)]],[f]:[1,ae,[ns]],[f+T]:[1,oe,[ns]],[g+f+v]:[2,re,[ns,as],e=>[bs(...e)]],[L]:[1,ie,[ns]],[p]:[1,ue,[ns]],[g+C]:[2,pe,[ns,rs],e=>[ws(...e)]],[C]:[2,Fe,[ns,rs]],[T]:[2,ze,[ns,rs]],[g+v]:[3,je,[ns,rs,is],e=>[Cs(...e)]],[v]:[3,Be,[ns,rs,is],e=>Mt(cs(...e))],InvalidCell:[3,Ue],[g+R]:[0,Ge,[],()=>[Ls()]],[R]:[0,Ke],[I]:[0,Xe],[g+S]:[1,Ye,[us],e=>[ps(...e)]],[S]:[1,Ze,[us],e=>Mt(gs(e[0]))],InvalidValue:[1,$e]},(([e,t,s,n],a)=>{xs[u+a+c]=(...a)=>nt(a[e],t[a[e+1]?1:0],e>0?P(a,0,e):void 0,s,n)})),le(xs)},xt=2**36,Jt=2**30,Ft=2**24,Qt=2**18,zt=4096,Pt={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},Nt=(e=s)=>[yt(e),yt(e)];e.createCheckpoints=Ge,e.createCustomPersister=it,e.createCustomSynchronizer=(e,t,n,a,o,r,l={})=>{let i;const c=Se();n(((s,n,a,o)=>{0==a?x(Ie(c,n),(([e,t])=>k(e)||e==s?t(o,s):0)):2==a&&h.isAutoLoading()?g(s,o).then((e=>{i?.(void 0,e)})):3==a&&h.isAutoLoading()?i?.(void 0,o):x(1==a&&h.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{t(s,n,0,e)}))}));const d=async(e,n,a=s)=>new D(((s,r)=>{const l=tt(),i=setTimeout((()=>{Te(c,l),r(`No response from ${e??"anyone"} to '${n}'`)}),1e3*o);me(c,l,[e,(e,t)=>{clearTimeout(i),Te(c,l),s([e,t])}]),t(e,l,n,a)})),u=(e,[t,s])=>{ue(t,(([t,s],n)=>{const a=fe(e[0],n,pt);ue(t,(([e,t],s)=>{const n=fe(a[0],s,pt);ue(e,(([e,t],s)=>n[0][s]=ht(e,t))),n[1]=Ct(n[1],t)})),a[1]=Ct(a[1],s)})),e[1]=Ct(e[1],s)},g=async(t=null,s)=>{k(s)&&([s,t]=await d(t,1));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=pt();if(o!=n){const[s,n]=(await d(t,4,e.getMergeableTableHashes()))[0];if(l=s,!he(n)){const[s,a]=(await d(t,5,e.getMergeableRowHashes(n)))[0];if(u(l,s),!he(a)){const s=(await d(t,6,e.getMergeableCellHashes(a)))[0];u(l,s)}}}return[l,r==a?pt():(await d(t,7,e.getMergeableValuesHashes()))[0],1]},h=it(e,(async()=>{const e=await g();return he(e[0][0])&&he(e[1][0])?void 0:e}),(async(s,n)=>{n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await h.startAutoLoad(e)).startAutoSave(),stopSync:()=>h.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),h.stopSync()),getSynchronizerStats:()=>({}),...l});return h},e.createIndexes=st,e.createMergeableStore=e=>{let t=1,n=Nt(),a=0;const o=Se(),r=Oe(),[l,i]=(e=>{let t=0,s=-1;const n=x(e,(e=>{const t=dt(e);return Ye(t/Ft)+Ye(t/Qt)+Ye(t/zt)+Ye(t/64)+Ye(t)}),(()=>tt(5))),a=e=>{const n=t,[a,o]=k(e)||""==e?[0,0]:[Ze(r=e,0)*xt+Ze(r,1)*Jt+Ze(r,2)*Ft+Ze(r,3)*Qt+Ze(r,4)*zt+64*Ze(r,5)+Ze(r,6),Ze(r,7)*Qt+Ze(r,8)*zt+64*Ze(r,9)+Ze(r,10)];var r;t=E(n,a,Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,Ye((e=t)/xt)+Ye(e/Jt)+Ye(e/Ft)+Ye(e/Qt)+Ye(e/zt)+Ye(e/64)+Ye(e)+Ye(o/Qt)+Ye(o/zt)+Ye(o/64)+Ye(o)+n;var e,o},a]})(e),c=kt(),d=e=>{const s=t;return t=0,e(),t=s,b},u=(e,t=0)=>{const a={},o={},[[r,l=s,c=0],d]=e,[u,h]=n,[f,b,w]=u;let C=t?c:w,L=l;ue(r,(([e,n=s,o=0],r)=>{const l=Ve(f,r,yt),[i,c,d]=l;let u=t?o:d,h=n;ue(e,((e,s)=>{const[n,o,l]=g(e,Ve(i,s,yt),fe(fe(a,r,ie),s,ie),t);u^=t?0:(o?bt(s,o):0)^bt(s,l),h=Ct(h,n)})),u^=t?0:wt(c,n),Lt(l,u,n),C^=t?0:(d?bt(r,d):0)^bt(r,l[2]),L=Ct(L,h)})),C^=t?0:wt(b,l),Lt(u,C,l);const[p]=g(d,h,o,t);return i(Ct(L,p)),[a,o,1]},g=(e,t,n,a)=>{const[o,r=s,l=0]=e,[i,c,d]=t;let u=r,g=a?l:d;return ue(o,(([e,t,o=0],r)=>{const l=Ve(i,r,(()=>[void 0,s,0])),[,c,d]=l;(!c||t>c)&&(Lt(l,a?o:dt(Et(e??null)+":"+t),t),l[0]=e,n[r]=e,g^=a?0:bt(r,d)^bt(r,l[2]),u=Ct(u,t))})),g^=a?0:wt(c,r),Lt(t,g,r),[u,d,t[2]]},h=()=>[vt(n[0],(e=>vt(e,(e=>vt(e))))),vt(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Ee(n[0][0],ft),getMergeableTableDiff:e=>{const t=pt(n[0][1]),s={};return Me(n[0][0],((n,[a,o,r])=>ce(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Tt([a,o],(e=>Tt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return ue(e,((e,s)=>x(Ie(n[0][0],s),(([n,,a])=>a!=e?Me(n,((e,[,,n])=>fe(t,s,ie)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=pt(n[0][1]),s={};return ue(e,((e,a)=>Me(Ie(n[0][0],a)?.[0],((n,[o,r,l])=>ce(e,n)?l!==e[n]?fe(s,a,ie)[n]=l:0:fe(t[0],a,pt)[0][n]=Tt([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return ue(e,((e,s)=>x(Ie(n[0][0],s),(([n])=>ue(e,((e,a)=>x(Ie(n,a),(([n,,o])=>o!==e?Me(n,((e,[,,n])=>fe(fe(t,s,ie),a,ie)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return ue(e,((e,s)=>ue(e,((e,n)=>x(Ie(t,s),(([t,o])=>x(Ie(t,n),(([t,r])=>Me(t,((t,[l,i,c])=>c!==e[t]?fe(fe(a,s,(()=>pt(o)))[0],n,(()=>pt(r)))[0][t]=[l,i]:0)))))))))),ht(a,s)},getMergeableValuesHashes:()=>Ee(n[1][0],ft),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=Ee(t,gt,(([,,t],s)=>t==e?.[s]));return ht(a,s)},setMergeableContent:e=>d((()=>(e=>z(e)&&2==N(e)&&St(e[0],(e=>be(e,(e=>St(e,(e=>be(e,(e=>St(e,(e=>be(e,(e=>St(e,ze)),void 0,1)))),void 0,1)))),void 0,1)))&&St(e[1],(e=>be(e,(e=>St(e,ze)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Nt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};ve(o,((t,s)=>x(Ie(e,s),(([e,n])=>{const a={};ve(t,((t,s)=>x(Ie(e,s),(([e,n])=>{const o={};ve(t,(t=>{x(Ie(e,t),(([e,s])=>o[t]=ht(e,s)))})),a[s]=ht(o,n)})))),l[s]=ht(a,n)}))));const i={};return ve(r,(e=>x(Ie(s,e),(([t,s])=>i[e]=ht(t,s))))),[ht(l,t),ht(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ye(o),ye(r)}),((e,n,r,i)=>{We(Ve(Ve(o,e,Se),n,Oe),r),t&&u([[{[e]:[{[n]:[{[r]:[i,a?s:l()]}]}]}],[{}],1])}),((e,n)=>{We(r,e),t&&u([[{}],[{[e]:[n,a?s:l()]}],1])})),ge(c,((e,t)=>b[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=Pt[P(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),le(b)},e.createMetrics=ot,e.createQueries=Rt,e.createRelationships=It,e.createStore=kt,e.defaultSorter=et,e.getUniqueId=tt},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file