tinybase 5.3.2 → 5.3.3

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 (686) hide show
  1. package/cjs/common/index.cjs +1 -1
  2. package/cjs/common/with-schemas/index.cjs +1 -1
  3. package/cjs/es6/common/index.cjs +1 -1
  4. package/cjs/es6/common/with-schemas/index.cjs +1 -1
  5. package/cjs/es6/index.cjs +1 -1
  6. package/cjs/es6/mergeable-store/index.cjs +1 -1
  7. package/cjs/es6/mergeable-store/with-schemas/index.cjs +1 -1
  8. package/cjs/es6/min/common/index.cjs +1 -1
  9. package/cjs/es6/min/common/index.cjs.gz +0 -0
  10. package/cjs/es6/min/common/with-schemas/index.cjs +1 -1
  11. package/cjs/es6/min/common/with-schemas/index.cjs.gz +0 -0
  12. package/cjs/es6/min/index.cjs +1 -1
  13. package/cjs/es6/min/index.cjs.gz +0 -0
  14. package/cjs/es6/min/mergeable-store/index.cjs +1 -1
  15. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  16. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
  17. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  18. package/cjs/es6/min/persisters/index.cjs +1 -1
  19. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  20. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  21. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  22. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  23. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  24. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  25. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  26. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  27. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  28. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  29. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  30. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  31. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  32. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  33. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  34. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  35. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  36. package/cjs/es6/min/persisters/persister-pglite/index.cjs +1 -1
  37. package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
  38. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  39. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  40. package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
  41. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  42. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  43. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  44. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  45. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  46. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  47. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  48. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  49. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  50. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  51. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  52. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  53. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  54. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  55. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  56. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  57. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  58. package/cjs/es6/min/synchronizers/index.cjs +1 -1
  59. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  60. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  61. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  62. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
  65. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  66. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  69. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  70. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  73. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  74. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
  77. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  78. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  79. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  80. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  81. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  82. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  83. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  84. package/cjs/es6/persisters/index.cjs +83 -103
  85. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +82 -102
  86. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +82 -102
  87. package/cjs/es6/persisters/persister-electric-sql/index.cjs +82 -102
  88. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +82 -102
  89. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +82 -102
  90. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +82 -102
  91. package/cjs/es6/persisters/persister-libsql/index.cjs +82 -102
  92. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +82 -102
  93. package/cjs/es6/persisters/persister-pglite/index.cjs +81 -101
  94. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +81 -101
  95. package/cjs/es6/persisters/persister-postgres/index.cjs +81 -101
  96. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +81 -101
  97. package/cjs/es6/persisters/persister-powersync/index.cjs +212 -147
  98. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +212 -147
  99. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +82 -102
  100. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +82 -102
  101. package/cjs/es6/persisters/persister-sqlite3/index.cjs +82 -102
  102. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +82 -102
  103. package/cjs/es6/persisters/with-schemas/index.cjs +83 -103
  104. package/cjs/es6/synchronizers/index.cjs +1 -1
  105. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  106. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  107. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +1 -1
  108. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  109. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  110. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  111. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  112. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  113. package/cjs/es6/synchronizers/with-schemas/index.cjs +1 -1
  114. package/cjs/es6/ui-react-inspector/index.cjs +0 -2
  115. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +0 -2
  116. package/cjs/es6/with-schemas/index.cjs +1 -1
  117. package/cjs/index.cjs +1 -1
  118. package/cjs/mergeable-store/index.cjs +1 -1
  119. package/cjs/mergeable-store/with-schemas/index.cjs +1 -1
  120. package/cjs/min/common/index.cjs +1 -1
  121. package/cjs/min/common/index.cjs.gz +0 -0
  122. package/cjs/min/common/with-schemas/index.cjs +1 -1
  123. package/cjs/min/common/with-schemas/index.cjs.gz +0 -0
  124. package/cjs/min/index.cjs +1 -1
  125. package/cjs/min/index.cjs.gz +0 -0
  126. package/cjs/min/mergeable-store/index.cjs +1 -1
  127. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  128. package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
  129. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  130. package/cjs/min/persisters/index.cjs +1 -1
  131. package/cjs/min/persisters/index.cjs.gz +0 -0
  132. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  133. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  134. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  135. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  136. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  137. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  138. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  139. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  140. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  141. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  142. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  143. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  144. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  145. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  146. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  147. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  148. package/cjs/min/persisters/persister-pglite/index.cjs +1 -1
  149. package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
  150. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  151. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  152. package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
  153. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  154. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  155. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  156. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  157. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  158. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  159. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  160. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  161. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  162. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  163. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  164. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  165. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  166. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  167. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  168. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  169. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  170. package/cjs/min/synchronizers/index.cjs +1 -1
  171. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  172. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  173. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  174. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  175. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  176. package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
  177. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  178. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  179. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  180. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  181. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  182. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  183. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  184. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  185. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  186. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  187. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  188. package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
  189. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  190. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  191. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  192. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  193. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  194. package/cjs/min/with-schemas/index.cjs +1 -1
  195. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  196. package/cjs/persisters/index.cjs +80 -98
  197. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +79 -97
  198. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +79 -97
  199. package/cjs/persisters/persister-electric-sql/index.cjs +79 -97
  200. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +79 -97
  201. package/cjs/persisters/persister-expo-sqlite/index.cjs +79 -97
  202. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +79 -97
  203. package/cjs/persisters/persister-libsql/index.cjs +79 -97
  204. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +79 -97
  205. package/cjs/persisters/persister-pglite/index.cjs +78 -96
  206. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +78 -96
  207. package/cjs/persisters/persister-postgres/index.cjs +78 -96
  208. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +78 -96
  209. package/cjs/persisters/persister-powersync/index.cjs +203 -142
  210. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +203 -142
  211. package/cjs/persisters/persister-sqlite-wasm/index.cjs +79 -97
  212. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +79 -97
  213. package/cjs/persisters/persister-sqlite3/index.cjs +79 -97
  214. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +79 -97
  215. package/cjs/persisters/with-schemas/index.cjs +80 -98
  216. package/cjs/synchronizers/index.cjs +1 -1
  217. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  218. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  219. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -1
  220. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  221. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  222. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  223. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  224. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  225. package/cjs/synchronizers/with-schemas/index.cjs +1 -1
  226. package/cjs/ui-react-inspector/index.cjs +0 -2
  227. package/cjs/ui-react-inspector/with-schemas/index.cjs +0 -2
  228. package/cjs/with-schemas/index.cjs +1 -1
  229. package/common/index.js +1 -1
  230. package/common/with-schemas/index.js +1 -1
  231. package/es6/common/index.js +1 -1
  232. package/es6/common/with-schemas/index.js +1 -1
  233. package/es6/index.js +1 -1
  234. package/es6/mergeable-store/index.js +1 -1
  235. package/es6/mergeable-store/with-schemas/index.js +1 -1
  236. package/es6/min/common/index.js +1 -1
  237. package/es6/min/common/index.js.gz +0 -0
  238. package/es6/min/common/with-schemas/index.js +1 -1
  239. package/es6/min/common/with-schemas/index.js.gz +0 -0
  240. package/es6/min/index.js +1 -1
  241. package/es6/min/index.js.gz +0 -0
  242. package/es6/min/mergeable-store/index.js +1 -1
  243. package/es6/min/mergeable-store/index.js.gz +0 -0
  244. package/es6/min/mergeable-store/with-schemas/index.js +1 -1
  245. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  246. package/es6/min/persisters/index.js +1 -1
  247. package/es6/min/persisters/index.js.gz +0 -0
  248. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  249. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  250. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  251. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  252. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  253. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  254. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  255. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  256. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  257. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  258. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  259. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  260. package/es6/min/persisters/persister-libsql/index.js +1 -1
  261. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  262. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  263. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  264. package/es6/min/persisters/persister-pglite/index.js +1 -1
  265. package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  266. package/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  267. package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  268. package/es6/min/persisters/persister-postgres/index.js +1 -1
  269. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  270. package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  271. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  272. package/es6/min/persisters/persister-powersync/index.js +1 -1
  273. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  274. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  275. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  276. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  277. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  278. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  279. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  280. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  281. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  282. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  283. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  284. package/es6/min/persisters/with-schemas/index.js +1 -1
  285. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  286. package/es6/min/synchronizers/index.js +1 -1
  287. package/es6/min/synchronizers/index.js.gz +0 -0
  288. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  289. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  290. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  291. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  292. package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  293. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  294. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  295. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  296. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  297. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  298. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  299. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  300. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  301. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  302. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  303. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  304. package/es6/min/synchronizers/with-schemas/index.js +1 -1
  305. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  306. package/es6/min/ui-react-inspector/index.js +1 -1
  307. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  308. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  309. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  310. package/es6/min/with-schemas/index.js +1 -1
  311. package/es6/min/with-schemas/index.js.gz +0 -0
  312. package/es6/persisters/index.js +83 -103
  313. package/es6/persisters/persister-cr-sqlite-wasm/index.js +82 -102
  314. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +82 -102
  315. package/es6/persisters/persister-electric-sql/index.js +82 -102
  316. package/es6/persisters/persister-electric-sql/with-schemas/index.js +82 -102
  317. package/es6/persisters/persister-expo-sqlite/index.js +82 -102
  318. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +82 -102
  319. package/es6/persisters/persister-libsql/index.js +82 -102
  320. package/es6/persisters/persister-libsql/with-schemas/index.js +82 -102
  321. package/es6/persisters/persister-pglite/index.js +81 -101
  322. package/es6/persisters/persister-pglite/with-schemas/index.js +81 -101
  323. package/es6/persisters/persister-postgres/index.js +81 -101
  324. package/es6/persisters/persister-postgres/with-schemas/index.js +81 -101
  325. package/es6/persisters/persister-powersync/index.js +212 -147
  326. package/es6/persisters/persister-powersync/with-schemas/index.js +212 -147
  327. package/es6/persisters/persister-sqlite-wasm/index.js +82 -102
  328. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +82 -102
  329. package/es6/persisters/persister-sqlite3/index.js +82 -102
  330. package/es6/persisters/persister-sqlite3/with-schemas/index.js +82 -102
  331. package/es6/persisters/with-schemas/index.js +83 -103
  332. package/es6/synchronizers/index.js +1 -1
  333. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  334. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  335. package/es6/synchronizers/synchronizer-local/index.js +1 -1
  336. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  337. package/es6/synchronizers/synchronizer-ws-client/index.js +1 -1
  338. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  339. package/es6/synchronizers/synchronizer-ws-server/index.js +1 -1
  340. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  341. package/es6/synchronizers/with-schemas/index.js +1 -1
  342. package/es6/ui-react-inspector/index.js +0 -2
  343. package/es6/ui-react-inspector/with-schemas/index.js +0 -2
  344. package/es6/with-schemas/index.js +1 -1
  345. package/index.js +1 -1
  346. package/mergeable-store/index.js +1 -1
  347. package/mergeable-store/with-schemas/index.js +1 -1
  348. package/min/common/index.js +1 -1
  349. package/min/common/index.js.gz +0 -0
  350. package/min/common/with-schemas/index.js +1 -1
  351. package/min/common/with-schemas/index.js.gz +0 -0
  352. package/min/index.js +1 -1
  353. package/min/index.js.gz +0 -0
  354. package/min/mergeable-store/index.js +1 -1
  355. package/min/mergeable-store/index.js.gz +0 -0
  356. package/min/mergeable-store/with-schemas/index.js +1 -1
  357. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  358. package/min/persisters/index.js +1 -1
  359. package/min/persisters/index.js.gz +0 -0
  360. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  361. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  362. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  363. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  364. package/min/persisters/persister-electric-sql/index.js +1 -1
  365. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  366. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  367. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  368. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  369. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  370. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  371. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  372. package/min/persisters/persister-libsql/index.js +1 -1
  373. package/min/persisters/persister-libsql/index.js.gz +0 -0
  374. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  375. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  376. package/min/persisters/persister-pglite/index.js +1 -1
  377. package/min/persisters/persister-pglite/index.js.gz +0 -0
  378. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  379. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  380. package/min/persisters/persister-postgres/index.js +1 -1
  381. package/min/persisters/persister-postgres/index.js.gz +0 -0
  382. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  383. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  384. package/min/persisters/persister-powersync/index.js +1 -1
  385. package/min/persisters/persister-powersync/index.js.gz +0 -0
  386. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  387. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  388. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  389. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  390. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  391. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  392. package/min/persisters/persister-sqlite3/index.js +1 -1
  393. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  394. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  395. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  396. package/min/persisters/with-schemas/index.js +1 -1
  397. package/min/persisters/with-schemas/index.js.gz +0 -0
  398. package/min/synchronizers/index.js +1 -1
  399. package/min/synchronizers/index.js.gz +0 -0
  400. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  401. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  402. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  403. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  404. package/min/synchronizers/synchronizer-local/index.js +1 -1
  405. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  406. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  407. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  408. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  409. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  410. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  411. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  412. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  413. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  414. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  415. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  416. package/min/synchronizers/with-schemas/index.js +1 -1
  417. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  418. package/min/ui-react-inspector/index.js +1 -1
  419. package/min/ui-react-inspector/index.js.gz +0 -0
  420. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  421. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  422. package/min/with-schemas/index.js +1 -1
  423. package/min/with-schemas/index.js.gz +0 -0
  424. package/package.json +5 -5
  425. package/persisters/index.js +80 -98
  426. package/persisters/persister-cr-sqlite-wasm/index.js +79 -97
  427. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +79 -97
  428. package/persisters/persister-electric-sql/index.js +79 -97
  429. package/persisters/persister-electric-sql/with-schemas/index.js +79 -97
  430. package/persisters/persister-expo-sqlite/index.js +79 -97
  431. package/persisters/persister-expo-sqlite/with-schemas/index.js +79 -97
  432. package/persisters/persister-libsql/index.js +79 -97
  433. package/persisters/persister-libsql/with-schemas/index.js +79 -97
  434. package/persisters/persister-pglite/index.js +78 -96
  435. package/persisters/persister-pglite/with-schemas/index.js +78 -96
  436. package/persisters/persister-postgres/index.js +78 -96
  437. package/persisters/persister-postgres/with-schemas/index.js +78 -96
  438. package/persisters/persister-powersync/index.js +203 -142
  439. package/persisters/persister-powersync/with-schemas/index.js +203 -142
  440. package/persisters/persister-sqlite-wasm/index.js +79 -97
  441. package/persisters/persister-sqlite-wasm/with-schemas/index.js +79 -97
  442. package/persisters/persister-sqlite3/index.js +79 -97
  443. package/persisters/persister-sqlite3/with-schemas/index.js +79 -97
  444. package/persisters/with-schemas/index.js +80 -98
  445. package/readme.md +2 -2
  446. package/synchronizers/index.js +1 -1
  447. package/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  448. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  449. package/synchronizers/synchronizer-local/index.js +1 -1
  450. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  451. package/synchronizers/synchronizer-ws-client/index.js +1 -1
  452. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  453. package/synchronizers/synchronizer-ws-server/index.js +1 -1
  454. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  455. package/synchronizers/with-schemas/index.js +1 -1
  456. package/ui-react-inspector/index.js +0 -2
  457. package/ui-react-inspector/with-schemas/index.js +0 -2
  458. package/umd/common/index.js +1 -1
  459. package/umd/common/with-schemas/index.js +1 -1
  460. package/umd/es6/common/index.js +1 -1
  461. package/umd/es6/common/with-schemas/index.js +1 -1
  462. package/umd/es6/index.js +1 -1
  463. package/umd/es6/mergeable-store/index.js +1 -1
  464. package/umd/es6/mergeable-store/with-schemas/index.js +1 -1
  465. package/umd/es6/min/common/index.js +1 -1
  466. package/umd/es6/min/common/index.js.gz +0 -0
  467. package/umd/es6/min/common/with-schemas/index.js +1 -1
  468. package/umd/es6/min/common/with-schemas/index.js.gz +0 -0
  469. package/umd/es6/min/index.js +1 -1
  470. package/umd/es6/min/index.js.gz +0 -0
  471. package/umd/es6/min/mergeable-store/index.js +1 -1
  472. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  473. package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
  474. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  475. package/umd/es6/min/persisters/index.js +1 -1
  476. package/umd/es6/min/persisters/index.js.gz +0 -0
  477. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  478. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  479. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  480. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  481. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  482. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  483. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  484. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  485. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  486. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  487. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  488. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  489. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  490. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  491. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  492. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  493. package/umd/es6/min/persisters/persister-pglite/index.js +1 -1
  494. package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  495. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  496. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  497. package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
  498. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  499. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  500. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  501. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  502. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  503. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  504. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  505. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  506. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  507. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  508. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  509. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  510. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  511. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  512. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  513. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  514. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  515. package/umd/es6/min/synchronizers/index.js +1 -1
  516. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  517. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  518. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  519. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  520. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  521. package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  522. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  523. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  524. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  525. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  526. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  527. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  528. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  529. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  530. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  531. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  532. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  533. package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
  534. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  535. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  536. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  537. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  538. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  539. package/umd/es6/min/with-schemas/index.js +1 -1
  540. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  541. package/umd/es6/persisters/index.js +83 -103
  542. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +82 -102
  543. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +82 -102
  544. package/umd/es6/persisters/persister-electric-sql/index.js +82 -102
  545. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +82 -102
  546. package/umd/es6/persisters/persister-expo-sqlite/index.js +82 -102
  547. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +82 -102
  548. package/umd/es6/persisters/persister-libsql/index.js +82 -102
  549. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +82 -102
  550. package/umd/es6/persisters/persister-pglite/index.js +81 -101
  551. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +81 -101
  552. package/umd/es6/persisters/persister-postgres/index.js +81 -101
  553. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +81 -101
  554. package/umd/es6/persisters/persister-powersync/index.js +212 -147
  555. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +212 -147
  556. package/umd/es6/persisters/persister-sqlite-wasm/index.js +82 -102
  557. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +82 -102
  558. package/umd/es6/persisters/persister-sqlite3/index.js +82 -102
  559. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +82 -102
  560. package/umd/es6/persisters/with-schemas/index.js +83 -103
  561. package/umd/es6/synchronizers/index.js +1 -1
  562. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  563. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  564. package/umd/es6/synchronizers/synchronizer-local/index.js +1 -1
  565. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  566. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +1 -1
  567. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  568. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +1 -1
  569. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  570. package/umd/es6/synchronizers/with-schemas/index.js +1 -1
  571. package/umd/es6/ui-react-inspector/index.js +0 -2
  572. package/umd/es6/ui-react-inspector/with-schemas/index.js +0 -2
  573. package/umd/es6/with-schemas/index.js +1 -1
  574. package/umd/index.js +1 -1
  575. package/umd/mergeable-store/index.js +1 -1
  576. package/umd/mergeable-store/with-schemas/index.js +1 -1
  577. package/umd/min/common/index.js +1 -1
  578. package/umd/min/common/index.js.gz +0 -0
  579. package/umd/min/common/with-schemas/index.js +1 -1
  580. package/umd/min/common/with-schemas/index.js.gz +0 -0
  581. package/umd/min/index.js +1 -1
  582. package/umd/min/index.js.gz +0 -0
  583. package/umd/min/mergeable-store/index.js +1 -1
  584. package/umd/min/mergeable-store/index.js.gz +0 -0
  585. package/umd/min/mergeable-store/with-schemas/index.js +1 -1
  586. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  587. package/umd/min/persisters/index.js +1 -1
  588. package/umd/min/persisters/index.js.gz +0 -0
  589. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  590. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  591. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  592. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  593. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  594. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  595. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  596. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  597. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  598. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  599. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  600. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  601. package/umd/min/persisters/persister-libsql/index.js +1 -1
  602. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  603. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  604. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  605. package/umd/min/persisters/persister-pglite/index.js +1 -1
  606. package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
  607. package/umd/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  608. package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  609. package/umd/min/persisters/persister-postgres/index.js +1 -1
  610. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  611. package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  612. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  613. package/umd/min/persisters/persister-powersync/index.js +1 -1
  614. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  615. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  616. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  617. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  618. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  619. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  620. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  621. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  622. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  623. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  624. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  625. package/umd/min/persisters/with-schemas/index.js +1 -1
  626. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  627. package/umd/min/synchronizers/index.js +1 -1
  628. package/umd/min/synchronizers/index.js.gz +0 -0
  629. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  630. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  631. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  632. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  633. package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
  634. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  635. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  636. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  637. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  638. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  639. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  640. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  641. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  642. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  643. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  644. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  645. package/umd/min/synchronizers/with-schemas/index.js +1 -1
  646. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  647. package/umd/min/ui-react-inspector/index.js +1 -1
  648. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  649. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  650. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  651. package/umd/min/with-schemas/index.js +1 -1
  652. package/umd/min/with-schemas/index.js.gz +0 -0
  653. package/umd/persisters/index.js +80 -98
  654. package/umd/persisters/persister-cr-sqlite-wasm/index.js +79 -97
  655. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +79 -97
  656. package/umd/persisters/persister-electric-sql/index.js +79 -97
  657. package/umd/persisters/persister-electric-sql/with-schemas/index.js +79 -97
  658. package/umd/persisters/persister-expo-sqlite/index.js +79 -97
  659. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +79 -97
  660. package/umd/persisters/persister-libsql/index.js +79 -97
  661. package/umd/persisters/persister-libsql/with-schemas/index.js +79 -97
  662. package/umd/persisters/persister-pglite/index.js +78 -96
  663. package/umd/persisters/persister-pglite/with-schemas/index.js +78 -96
  664. package/umd/persisters/persister-postgres/index.js +78 -96
  665. package/umd/persisters/persister-postgres/with-schemas/index.js +78 -96
  666. package/umd/persisters/persister-powersync/index.js +203 -142
  667. package/umd/persisters/persister-powersync/with-schemas/index.js +203 -142
  668. package/umd/persisters/persister-sqlite-wasm/index.js +79 -97
  669. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +79 -97
  670. package/umd/persisters/persister-sqlite3/index.js +79 -97
  671. package/umd/persisters/persister-sqlite3/with-schemas/index.js +79 -97
  672. package/umd/persisters/with-schemas/index.js +80 -98
  673. package/umd/synchronizers/index.js +1 -1
  674. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  675. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  676. package/umd/synchronizers/synchronizer-local/index.js +1 -1
  677. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  678. package/umd/synchronizers/synchronizer-ws-client/index.js +1 -1
  679. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  680. package/umd/synchronizers/synchronizer-ws-server/index.js +1 -1
  681. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  682. package/umd/synchronizers/with-schemas/index.js +1 -1
  683. package/umd/ui-react-inspector/index.js +0 -2
  684. package/umd/ui-react-inspector/with-schemas/index.js +0 -2
  685. package/umd/with-schemas/index.js +1 -1
  686. package/with-schemas/index.js +1 -1
@@ -1 +1 @@
1
- const e=e=>typeof e,t="",s=e(t),n=e(!0),o=e(0),r=e(e),a="type",l="default",i="Listener",d="Result",c="add",u="Has",g="Ids",h="Table",f=h+"s",I=h+g,b="Row",L=b+"Count",w=b+g,C="Sorted"+b+g,R="Cell",T=R+g,v="Value",p=v+"s",S=v+g,y=e=>t+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),m=globalThis,E=Math,k=E.max,D=E.min,H=E.floor,J=isFinite,x=e=>null==e,F=(e,t,s)=>x(e)?s?.():t(e),Q=e=>e==s||e==n,z=t=>e(t)==s,N=t=>e(t)==r,O=e=>Array.isArray(e),W=(e,t,s)=>e.slice(t,s),A=e=>e.length,P=()=>{},_=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>A(e)===A(t)&&j(e,((e,s)=>t[s]===e)),U=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),q=(e,t)=>e.sort(t),G=(e,t)=>e.forEach(t),K=(e,t)=>e.map(t),X=e=>Z(e,((e,t)=>e+t),0),Y=e=>0==A(e),Z=(e,t,s)=>e.reduce(t,s),$=(e,...t)=>e.push(...t),ee=e=>e.pop(),te=e=>e.shift(),se=Object,ne=e=>se.getPrototypeOf(e),oe=se.entries,re=se.isFrozen,ae=e=>!x(e)&&F(ne(e),(e=>e==se.prototype||x(ne(e))),(()=>!0)),le=se.keys,ie=se.freeze,de=(e=[])=>se.fromEntries(e),ce=(e,t)=>t in e,ue=(e,t)=>(delete e[t],e),ge=(e,t)=>G(oe(e),(([e,s])=>t(s,e))),he=(e,t)=>K(oe(e),(([e,s])=>t(s,e))),fe=e=>ae(e)&&0==(e=>A(le(e)))(e),Ie=(e,t,s)=>(ce(e,t)||(e[t]=s()),e[t]),be=(e,t,s,n=0)=>x(e)||!ae(e)||!n&&fe(e)||re(e)?(s?.(),!1):(he(e,((s,n)=>{t(s,n)||ue(e,n)})),!!n||!fe(e)),Le=e=>t=>Z(Se(t),((t,s)=>t+e(s)),0),we=e=>e?.size??0,Ce=Le(we),Re=Le(Ce),Te=Le(Re),ve=(e,t)=>e?.has(t)??!1,pe=e=>x(e)||0==we(e),Se=e=>[...e?.values()??[]],ye=e=>e.clear(),Ve=(e,t)=>e?.forEach(t),Me=(e,t)=>e?.delete(t),me=e=>new Map(e),Ee=e=>[...e?.keys()??[]],ke=(e,t)=>e?.get(t),De=(e,t)=>Ve(e,((e,s)=>t(s,e))),He=(e,t,s)=>x(s)?(Me(e,t),e):e?.set(t,s),Je=(e,t,s,n)=>(ve(e,t)?n?.(ke(e,t)):He(e,t,s()),ke(e,t)),xe=(e,t,s,n=He)=>(he(t,((t,n)=>s(e,n,t))),De(e,(s=>ce(t,s)?0:n(e,s))),e),Fe=(e,t,s,n)=>{const o={};return Ve(e,((e,r)=>{if(!s?.(e,r)){const s=t?t(e,r):e;n?.(s)||(o[r]=s)}})),o},Qe=(e,t,s)=>Fe(e,(e=>Fe(e,t,s)),pe,fe),ze=(e,t,s)=>Fe(e,(e=>Qe(e,t,s)),pe,fe),Ne=(e,t)=>{const s=me();return Ve(e,((e,n)=>s.set(n,t?.(e)??e))),s},Oe=e=>Ne(e,Ne),We=e=>Ne(e,Oe),Ae=(e,t,s,n,o=0)=>F((s?Je:ke)(e,t[o],o>A(t)-2?s:me),(r=>{if(o>A(t)-2)return n?.(r)&&He(e,t[o]),r;const a=Ae(r,t,s,n,o+1);return pe(r)&&He(e,t[o]),a})),Pe=t=>{const s=e(t);return Q(s)||s==o&&J(t)?s:void 0},_e=e=>x(e)||!x(Pe(e)),je=(e,t,s,n,o)=>x(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Be=(e,t,s)=>x(s)?e.delValue(t):e.setValue(t,s),Ue=e=>new Set(O(e)||x(e)?e:[e]),qe=(e,t)=>e?.add(t),Ge=(e,t,s,n,o)=>{const r=e.hasRow,a=me(),l=me(),i=me(),d=me(),c=me(),u=me(),g=(t,s,...n)=>{const o=Je(u,t,Ue);return G(n,(t=>qe(o,t)&&s&&e.callListener(t))),n},h=(t,...s)=>F(ke(u,t),(n=>{G(Y(s)?Se(n):s,(t=>{e.delListener(t),Me(n,t)})),pe(n)&&He(u,t)})),f=(e,s)=>{He(a,e,s),ve(l,e)||(He(l,e,t()),He(d,e,me()),He(c,e,me()),o(i))},I=e=>{He(a,e),He(l,e),He(d,e),He(c,e),h(e),o(i)};return[()=>e,()=>Ee(a),e=>De(l,e),e=>ve(l,e),e=>ke(a,e),e=>ke(l,e),(e,t)=>He(l,e,t),f,(t,n,o,a,l)=>{f(t,n);const i=me(),u=me(),I=ke(d,t),b=ke(c,t),L=t=>{const o=s=>e.getCell(n,t,s),d=ke(I,t),c=r(n,t)?s(a(o,t)):void 0;if(d===c||O(d)&&O(c)&&B(d,c)||He(i,t,[d,c]),!x(l)){const e=ke(b,t),s=r(n,t)?l(o,t):void 0;e!=s&&He(u,t,s)}},w=e=>{o((()=>{Ve(i,(([,e],t)=>He(I,t,e))),Ve(u,((e,t)=>He(b,t,e)))}),i,u,I,b,e),ye(i),ye(u)};De(I,L),e.hasTable(n)&&G(e.getRowIds(n),(e=>{ve(I,e)||L(e)})),w(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>L(s))),e.addTableListener(n,(()=>w())))},I,e=>n(e,i),()=>De(u,I),g,h]},Ke=(e,s)=>z(e)?t=>t(e):e??(()=>s??t),Xe=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const o=s.get(n);return t?.(o),o}},Ye=/^\d+$/,Ze=()=>{const e=[];let s=0;return[n=>(n?te(e):null)??t+s++,t=>{Ye.test(t)&&A(e)<1e3&&$(e,t)}]},$e=e=>{let s;const[n,o]=Ze(),r=me();return[(o,a,l,i=[],d=()=>[])=>{s??=e();const c=n(1);return He(r,c,[o,a,l,i,d]),qe(Ae(a,l??[t],Ue),c),c},(e,n,...o)=>G(((e,s=[t])=>{const n=[],o=(e,t)=>t==A(s)?$(n,e):null===s[t]?Ve(e,(e=>o(e,t+1))):G([s[t],null],(s=>o(ke(e,s),t+1)));return o(e,0),n})(e,n),(e=>Ve(e,(e=>ke(r,e)[0](s,...n??[],...o))))),e=>F(ke(r,e),(([,s,n])=>(Ae(s,n??[t],void 0,(t=>(Me(t,e),pe(t)?1:0))),He(r,e),o(e),n))),e=>F(ke(r,e),(([e,,t=[],n,o])=>{const r=(...a)=>{const l=A(a);l==A(t)?e(s,...a,...o(a)):x(t[l])?G(n[l]?.(...a)??[],(e=>r(...a,e))):r(...a,t[l])};r()}))]},et=Xe((e=>{let s,n,o,r=100,a=me(),l=me(),i=1;const d=me(),c=me(),[u,g,h]=$e((()=>J)),f=me(),I=me(),b=[],L=[],w=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=ke(f,s);Ve(n,((s,n)=>Ve(s,((s,o)=>Ve(s,((s,r)=>je(e,n,o,r,s[t]))))))),Ve(o,((s,n)=>Be(e,n,s[t])))})),i=1},C=e=>{He(f,e),He(I,e),g(c,[e])},R=(e,t)=>G(((e,t)=>e.splice(0,t))(e,t??A(e)),C),T=()=>R(b,A(b)-r),v=()=>F(s,(()=>{$(b,s),T(),R(L),s=void 0,o=1})),p=()=>{s=ee(b),o=1};let S,y;const V=(e=t)=>(x(s)&&(s=t+n++,He(f,s,[a,l]),D(s,e),a=me(),l=me(),o=1),s),M=()=>{Y(b)||(((e,...t)=>{e.unshift(...t)})(L,V()),w(0,s),s=ee(b),o=1)},m=()=>{Y(L)||($(b,s),s=te(L),w(1,s),o=1)},E=()=>{o&&(g(d),o=0)},k=e=>{const t=V(e);return E(),t},D=(e,t)=>(H(e)&&ke(I,e)!==t&&(He(I,e,t),g(c,[e])),J),H=e=>ve(f,e),J={setSize:e=>(r=e,T(),J),addCheckpoint:k,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...b],s,[...L]],forEachCheckpoint:e=>De(I,e),hasCheckpoint:H,getCheckpoint:e=>ke(I,e),goBackward:()=>(M(),E(),J),goForward:()=>(m(),E(),J),goTo:e=>{const t=_(b,e)?M:_(L,e)?m:null;for(;!x(t)&&e!=s;)t();return E(),J},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),J),clear:()=>(R(b),R(L),x(s)||C(s),s=void 0,n=0,k(),J),clearForward:()=>(Y(L)||(R(L),g(d)),J),destroy:()=>{e.delListener(S),e.delListener(y)},getListenerStats:()=>({checkpointIds:Ce(d),checkpoint:Ce(c)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(i){v();const e=Je(a,t,me),l=Je(e,s,me),i=Je(l,n,(()=>[r,void 0]));i[1]=o,i[0]===o&&pe(He(l,n))&&pe(He(e,s))&&pe(He(a,t))&&p(),E()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=Je(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&pe(He(l,t))&&p(),E()}}))}};return ie(J.clear())}),(e=>e._registerListeners())),tt=((e,s=t)=>"-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s,void 0))(),st=me(K(tt,((e,t)=>[e,t]))),nt=e=>tt[63&e],ot=(e,t)=>ke(st,e[t])??0,rt=m.crypto?e=>m.crypto.getRandomValues(e):e=>K(e,(()=>H(256*E.random()))),at=(e,t)=>(e??0)<(t??0)?-1:1,lt=(e=16)=>Z(rt(new Uint8Array(e)),((e,t)=>e+nt(t)),""),it=Xe((e=>{const s=me(),n=me(),[o,r,a]=$e((()=>C)),[l,i,d,c,u,g,h,,f,I,b,L]=Ge(e,me,(e=>x(e)?t:O(e)?K(e,y):y(e)),o,r),w=(t,s,n)=>{const o=u(t);Ve(n,((t,n)=>s(n,(s=>Ve(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},C={setIndexDefinition:(e,t,o,a,l,i=at)=>{const d=x(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,o,l,c,u,f)=>{let I=0;const b=Ue(),L=Ue(),w=g(e);if(Ve(o,(([e,t],s)=>{const n=Ue(e),o=Ue(t);Ve(n,(e=>Me(o,e)?Me(n,e):0)),Ve(n,(e=>{qe(b,e),F(ke(w,e),(t=>{Me(t,s),pe(t)&&(He(w,e),I=1)}))})),Ve(o,(e=>{qe(b,e),ve(w,e)||(He(w,e,Ue()),I=1),qe(ke(w,e),s),x(a)||qe(L,e)}))})),t(),pe(u)||(f?De(w,(e=>qe(L,e))):De(l,(e=>F(ke(c,e),(e=>qe(L,e))))),Ve(L,(e=>{const t=(t,s)=>i(ke(u,t),ke(u,s),e),s=[...ke(w,e)];U(s,t)||(He(w,e,Ue(q(s,t))),qe(b,e))}))),(I||f)&&!x(d)){const t=[...w];U(t,d)||(h(e,me(q(t,d))),I=1)}I&&r(s,[e]),Ve(b,(t=>r(n,[e,t])))}),Ke(o),F(a,Ke)),C},delIndexDefinition:e=>(I(e),C),getStore:l,getIndexIds:i,forEachIndex:e=>d(((t,s)=>e(t,(e=>w(t,e,s))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:c,hasSlice:(e,t)=>ve(g(e),t),getTableId:u,getSliceIds:e=>Ee(g(e)),getSliceRowIds:(e,t)=>Se(ke(g(e),t)),addIndexIdsListener:b,addSliceIdsListener:(e,t)=>o(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>o(s,n,[e,t]),delListener:e=>(a(e),C),destroy:L,getListenerStats:()=>({sliceIds:Ce(s),sliceRowIds:Re(n)})};return ie(C)})),dt=me([["avg",[(e,t)=>X(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=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["min",[e=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:D(t,e)]],["sum",[e=>X(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ct=(e,t,s,n,o,r=!1)=>{if(pe(s))return;const[a,l,i,d]=o;return r||=x(e),Ve(n,(([s,n])=>{r||(e=x(s)?l?.(e,n,t++):x(n)?i?.(e,s,t--):d?.(e,n,s,t),r||=x(e))})),r?a(Se(s),we(s)):e},ut=Xe((e=>{const s=me(),[n,o,r]=$e((()=>L)),[a,l,i,d,c,u,g,,h,f,I,b]=Ge(e,P,(e=>isNaN(e)||x(e)||!0===e||!1===e||e===t?void 0:1*e),n,o),L={setMetricDefinition:(e,t,n,r,a,l,i)=>{const d=N(n)?[n,a,l,i]:ke(dt,n)??ke(dt,"sum");return h(e,t,((t,n,r,a,l,i)=>{const c=u(e),h=we(a);i||=x(c),t();let f=ct(c,h,a,n,d,i);J(f)||(f=void 0),f!=c&&(g(e,f),o(s,[e],f,c))}),Ke(r,1)),L},delMetricDefinition:e=>(f(e),L),getStore:a,getMetricIds:l,forEachMetric:i,hasMetric:d,getTableId:c,getMetric:u,addMetricIdsListener:I,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(r(e),L),destroy:b,getListenerStats:()=>({metric:Ce(s)})};return ie(L)})),gt=Xe((e=>{const s=e.createStore,n=s(),o=s(),r=me(),{addListener:a,callListeners:l,delListener:u}=o,[g,f,I,v,p,,,S,,y,V,M,m,E]=Ge(e,(()=>!0),P,a,l),k=(e,t,...s)=>G(s,(s=>qe(Je(Je(r,t,me),e,Ue),s))),D=e=>{F(ke(r,e),(e=>{De(e,((e,t)=>Ve(t,(t=>e.delListener(t))))),ye(e)})),G([o,n],(t=>t.delTable(e)))},H=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(s,r,a)=>{S(s,r),D(s);const l=[],i=[[null,[r,null,null,[],me()]]],d=[],c=[],u=[];a({select:(e,s)=>{const n=N(e)?[A(l)+t,e]:[x(s)?e:s,t=>t(e,s)];return $(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=x(s)||N(t)?null:t,o=x(n)?t:s,r=[e,[e,n,N(o)?o:e=>e(o),[],me()]];return $(i,r),{as:e=>r[0]=e}},where:(e,t,s)=>$(d,N(e)?e:x(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,N(t)?[t,s,n,o]:ke(dt,t)??[(e,t)=>t]]];return $(c,r),{as:e=>r[0]=e}},having:(e,t)=>$(u,N(e)?e:s=>s(e)===t)});const g=me(l);if(pe(g))return J;const h=me(i);De(h,((e,[,t])=>F(ke(h,t),(({3:t})=>x(e)?0:$(t,e)))));const f=me(c);let I=n;if(pe(f)&&Y(u))I=o;else{H(s,I,o);const e=me();De(f,((t,[s,n])=>qe(Je(e,s,Ue),[t,n])));const t=Ue();De(g,(s=>ve(e,s)?0:qe(t,s)));const n=me(),r=(t,n,r,a)=>F(t,(([l,i,d,c])=>{De(n,((t,[s])=>{const n=Je(l,t,me),o=ke(n,r),i=a?void 0:s;if(o!==i){const s=Ue([[o,i]]),a=we(n);He(n,r,i),Ve(ke(e,t),(([e,t])=>{const o=ct(c[e],a,n,s,t);c[e]=x(Pe(o))?null:o}))}})),pe(i)||!j(u,(e=>e((e=>c[e]))))?o.delRow(s,d):x(d)?t[2]=o.addRow(s,c):o.setRow(s,d,c)}));k(I,s,I.addRowListener(s,null,((o,a,l,i)=>{const d=[],c=[],u=me(),g=I.hasRow(s,l);let h=!g;Ve(t,(e=>{const[t,n,o]=i(s,l,e);$(d,n),$(c,o),h||=t})),De(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&He(u,e,[n])})),h&&r(Ae(n,d,void 0,(([,e])=>(Me(e,l),pe(e)))),u,l,1),g&&r(Ae(n,c,(()=>{const e={};return Ve(t,(t=>e[t]=I.getCell(s,l,t))),[me(),Ue(),void 0,e]}),(([,e])=>{qe(e,l)})),u,l)})))}H(s,e,I);const b=(t,n,o,a)=>{const l=t=>e.getCell(n,o,t);G(a,(n=>{const[o,,r,a,i]=ke(h,n),d=r?.(l,t),[c,u]=ke(i,t)??[];d!=c&&(x(u)||E(s,u),He(i,t,x(d)?null:[d,...m(s,1,e.addRowListener(o,d,(()=>b(t,o,d,a))))]))})),(t=>{const n=(s,n)=>e.getCell(...x(n)?[r,t,s]:s===r?[r,t,n]:[ke(h,s)?.[0],ke(ke(h,s)?.[4],t)?.[0],n]);I.transaction((()=>j(d,(e=>e(n)))?De(g,((e,o)=>je(I,s,t,e,o(n,t)))):I.delRow(s,t)))})(t)},{3:L}=ke(h,null);return I.transaction((()=>m(s,1,e.addRowListener(r,null,((t,n,o)=>{e.hasRow(r,o)?b(o,r,o,L):(I.delRow(s,o),Ve(h,(({4:e})=>F(ke(e,o),(([,t])=>{E(s,t),He(e,o)})))))}))))),J},delQueryDefinition:e=>(D(e),y(e),J),getStore:g,getQueryIds:f,forEachQuery:I,hasQuery:v,getTableId:p,addQueryIdsListener:e=>V((()=>e(J))),delListener:e=>(u(e),J),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=o.getListenerStats();return n}};return he({[h]:[1,1],[h+T]:[0,1],[L]:[0,1],[w]:[0,1],[C]:[0,5],[b]:[1,2],[T]:[0,2],[R]:[1,3]},(([e,t],s)=>{G(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>o[e+s](...t))),J[c+d+s+i]=(...e)=>o[c+s+i](...W(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),ie(J)})),ht=Xe((e=>{const s=me(),n=me(),o=me(),r=me(),[a,l,i]=$e((()=>v)),[d,c,u,g,h,f,,,I,b,L,w]=Ge(e,(()=>[me(),me(),me(),me()]),(e=>x(e)?void 0:e+t),a,l),C=(e,t,s)=>F(f(e),(([n,,o])=>{if(!ve(o,t)){const r=Ue();if(h(e)!=T(e))qe(r,t);else{let e=t;for(;!x(e)&&!ve(r,e);)qe(r,e),e=ke(n,e)}if(s)return r;He(o,t,r)}return ke(o,t)})),R=(e,t)=>F(f(e),(([,,e])=>He(e,t))),T=e=>ke(s,e),v={setRelationshipDefinition:(e,t,a,i)=>(He(s,e,a),I(e,t,((t,s)=>{const a=Ue(),i=Ue(),d=Ue(),[c,u]=f(e);Ve(s,(([t,s],n)=>{x(t)||(qe(i,t),F(ke(u,t),(e=>{Me(e,n),pe(e)&&He(u,t)}))),x(s)||(qe(i,s),ve(u,s)||He(u,s,Ue()),qe(ke(u,s),n)),qe(a,n),He(c,n,s),De(ke(r,e),(t=>{ve(C(e,t),n)&&qe(d,t)}))})),t(),Ve(a,(t=>l(n,[e,t]))),Ve(i,(t=>l(o,[e,t]))),Ve(d,(t=>{R(e,t),l(r,[e,t])}))}),Ke(i)),v),delRelationshipDefinition:e=>(He(s,e),b(e),v),getStore:d,getRelationshipIds:c,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>ke(f(e)?.[0],t),getLocalRowIds:(e,t)=>Se(ke(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(f(e))?[t]:Se(C(e,t,!0)),addRelationshipIdsListener:L,addRemoteRowIdListener:(e,t,s)=>a(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>a(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(C(e,t),a(s,r,[e,t])),delListener:e=>(R(...i(e)??[]),v),destroy:w,getListenerStats:()=>({remoteRowId:Re(n),localRowIds:Re(o),linkedRowIds:Re(r)})};return ie(v)})),ft=new m.TextEncoder,It=e=>{let t=2166136261;return G(ft.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},bt=([e,t,s])=>[e,t,s],Lt=([e,t])=>wt(e,t),wt=(e,t)=>t?[e,t]:[e],Ct=e=>e[2],Rt=(e,t)=>It(e+":"+t),Tt=(e,t)=>t>e?(e?It(e):0)^It(t):0,vt=(e,t)=>((e??"")>(t??"")?e:t)??"",pt=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},St=(e=t)=>wt(de(),e),yt=(e=t)=>[me(),e,0],Vt=([e,t,s],n=bt)=>[Fe(e,n),t,s],Mt=([e,t],s=Lt)=>wt(Fe(e,s),t),mt=(t,s)=>O(t)&&3==A(t)&&z(t[1])&&e(t[2])==o&&J(t[2])&&s(t[0]),Et=e=>[e,e],kt=(e,t=Ce)=>t(e[0])+t(e[1]),Dt=()=>[me(),me()],Ht=e=>[...e],Jt=([e,t])=>e===t,xt=JSON.stringify,Ft=JSON.parse,Qt=e=>xt(e,((e,t)=>t instanceof Map?se.fromEntries([...t]):t)),zt=(e,t,s)=>He(e,t,ke(e,t)==-s?void 0:s),Nt=()=>{let e,t,s=!1,n=!1,r=0,d=[];const g=me(),C=me(),V=me(),M=me(),m=me(),E=me(),k=me(),D=me(),H=me(),J=me(),z=me(),A=me(),P=me(),j=me(),U=Ue(),X=me(),Y=me(),Z=me(),ee=me(),te=Dt(),se=Dt(),ne=Dt(),oe=Dt(),re=Dt(),ae=Dt(),le=Dt(),de=Dt(),ge=Dt(),Ie=Dt(),Le=Dt(),Se=Dt(),Ae=Dt(),_e=Dt(),Ge=Dt(),Ke=Dt(),Xe=Dt(),Ye=Dt(),et=Dt(),tt=Dt(),st=Dt(),nt=Dt(),ot=me(),rt=Dt(),[lt,it,dt,ct]=$e((()=>Ws)),ut=e=>{if(!be(e,((e,t)=>_([a,l],t))))return!1;const t=e[a];return!(!Q(t)&&t!=o||(Pe(e[l])!=t&&ue(e,l),0))},gt=O,ht=(t,s)=>(!e||ve(z,s)||Zt(s))&&be(t,((e,t)=>ft(s,t,e)),(()=>Zt(s))),ft=(e,t,s,n)=>be(n?s:wt(s,e,t),((n,o)=>F(It(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Zt(e,t))),It=(t,s,n,o)=>e?F(ke(ke(z,t),n),(e=>Pe(o)!=e[a]?Zt(t,s,n,o,e[l]):o),(()=>Zt(t,s,n,o))):x(Pe(o))?Zt(t,s,n,o):o,bt=(e,t)=>be(t?e:Ct(e),((t,s)=>F(Lt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),Lt=(e,s)=>t?F(ke(P,e),(t=>Pe(s)!=t[a]?$t(e,s,t[l]):s),(()=>$t(e,s))):x(Pe(s))?$t(e,s):s,wt=(e,t,s)=>(F(ke(A,t),(([n,o])=>{Ve(n,((t,s)=>{ce(e,s)||(e[s]=t)})),Ve(o,(n=>{ce(e,n)||Zt(t,s,n)}))})),e),Ct=e=>(t&&(Ve(j,((t,s)=>{ce(e,s)||(e[s]=t)})),Ve(U,(t=>{ce(e,t)||$t(t)}))),e),Rt=e=>xe(z,e,((e,t,s)=>{const n=me(),o=Ue();xe(Je(z,t,me),s,((e,t,s)=>{He(e,t,s),F(s[l],(e=>He(n,t,e)),(()=>qe(o,t)))})),He(A,t,[n,o])}),((e,t)=>{He(z,t),He(A,t)})),Tt=e=>xe(P,e,((e,t,s)=>{He(P,t,s),F(s[l],(e=>He(j,t,e)),(()=>qe(U,t)))}),((e,t)=>{He(P,t),He(j,t),Me(U,t)})),vt=e=>fe(e)?Ds():Vs(e),pt=e=>xe(Z,e,((e,t,s)=>St(t,s)),((e,t)=>Pt(t))),St=(e,t)=>xe(Je(Z,e,(()=>(Ut(e,1),He(X,e,Ze()),He(Y,e,me()),me()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>_t(e,t,s))),yt=(e,t,s,n,o)=>xe(Je(t,s,(()=>(qt(e,s,1),me()))),n,((t,n,o)=>Vt(e,s,t,n,o)),((n,r)=>jt(e,t,s,n,r,o))),Vt=(e,t,s,n,o)=>{ve(s,n)||Gt(e,t,n,1);const r=ke(s,n);o!==r&&(Kt(e,t,n,r,o),He(s,n,o))},Mt=(e,t,s,n,o)=>F(ke(t,s),(t=>Vt(e,s,t,n,o)),(()=>yt(e,t,s,wt({[n]:o},e,s)))),mt=e=>fe(e)?xs():Ms(e),xt=e=>xe(ee,e,((e,t,s)=>Ot(t,s)),((e,t)=>Bt(t))),Ot=(e,t)=>{ve(ee,e)||Xt(e,1);const s=ke(ee,e);t!==s&&(Yt(e,s,t),He(ee,e,t))},Wt=(e,t)=>{const[s]=ke(X,e),n=s(t);return ve(ke(Z,e),n)?Wt(e,t):n},At=e=>ke(Z,e)??St(e,{}),Pt=e=>St(e,{}),_t=(e,t,s)=>{const[,n]=ke(X,e);n(s),yt(e,t,s,{},!0)},jt=(e,t,s,n,o,r)=>{const a=ke(ke(A,e)?.[0],o);if(!x(a)&&!r)return Vt(e,s,n,o,a);const l=t=>{Kt(e,s,t,ke(n,t)),Gt(e,s,t,-1),He(n,t)};x(a)?l(o):De(n,l),pe(n)&&(qt(e,s,-1),pe(He(t,s))&&(Ut(e,-1),He(Z,e),He(X,e),He(Y,e)))},Bt=e=>{const t=ke(j,e);if(!x(t))return Ot(e,t);Yt(e,ke(ee,e)),Xt(e,-1),He(ee,e)},Ut=(e,t)=>zt(g,e,t),qt=(e,t,s)=>zt(Je(M,e,me),t,s)&&He(V,e,Je(V,e,(()=>0))+s),Gt=(e,t,s,n)=>{const o=ke(Y,e),r=ke(o,s)??0;(0==r&&1==n||1==r&&-1==n)&&zt(Je(C,e,me),s,n),He(o,s,r!=-n?r+n:null),zt(Je(Je(m,e,me),t,me),s,n)},Kt=(e,t,s,n,o)=>{Je(Je(Je(E,e,me),t,me),s,(()=>[n,0]))[1]=o,d[3]?.(e,t,s,o)},Xt=(e,t)=>zt(k,e,t),Yt=(e,t,s)=>{Je(D,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},Zt=(e,t,s,n,o)=>($(Je(Je(Je(H,e,me),t,me),s,(()=>[])),n),o),$t=(e,t,s)=>($(Je(J,e,(()=>[])),t),s),es=(e,t,s)=>F(ke(ke(ke(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(Is(e,t,s))])),ts=e=>F(ke(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(ws(e))])),ss=e=>pe(H)||pe(Ke[e])?0:Ve(e?We(H):H,((t,s)=>Ve(t,((t,n)=>Ve(t,((t,o)=>it(Ke[e],[s,n,o],t))))))),ns=e=>pe(J)||pe(Xe[e])?0:Ve(e?Ne(J):J,((t,s)=>it(Xe[e],[s],t))),os=(e,t,s,n)=>{if(!pe(e))return it(t,n,(()=>Fe(e))),De(e,((e,t)=>it(s,[...n??[],e],1==t))),1},rs=e=>{const t=Cs();t!=s&&it(te[e],void 0,t);const n=pe(Ie[e]),o=pe(Ae[e])&&pe(_e[e])&&pe(ge[e])&&pe(Le[e])&&pe(ae[e])&&pe(le[e])&&pe(de[e])&&n&&pe(ne[e])&&pe(oe[e]),r=pe(Ge[e])&&pe(Se[e])&&pe(re[e])&&pe(se[e]);if(!o||!r){const t=e?[Ne(g),Oe(C),Ne(V),Oe(M),We(m),We(E)]:[g,C,V,M,m,E];if(!o){os(t[0],ne[e],oe[e]),Ve(t[1],((t,s)=>os(t,ae[e],le[e],[s]))),Ve(t[2],((t,s)=>{0!=t&&it(de[e],[s],us(s))}));const s=Ue();Ve(t[3],((t,o)=>{os(t,ge[e],Le[e],[o])&&!n&&(it(Ie[e],[o,null]),qe(s,o))})),n||Ve(t[5],((t,n)=>{if(!ve(s,n)){const s=Ue();Ve(t,(e=>Ve(e,(([t,n],o)=>n!==t?qe(s,o):Me(e,o))))),Ve(s,(t=>it(Ie[e],[n,t])))}})),Ve(t[4],((t,s)=>Ve(t,((t,n)=>os(t,Ae[e],_e[e],[s,n])))))}if(!r){let s;Ve(t[5],((t,n)=>{let o;Ve(t,((t,r)=>{let a;Ve(t,(([t,l],i)=>{l!==t&&(it(Ge[e],[n,r,i],l,t,es),s=o=a=1)})),a&&it(Se[e],[n,r],es)})),o&&it(re[e],[n],es)})),s&&it(se[e],void 0,es)}}},as=e=>{const t=Ss();t!=n&&it(Ye[e],void 0,t);const s=pe(tt[e])&&pe(st[e]),o=pe(nt[e])&&pe(et[e]);if(!s||!o){const t=e?[Ne(k),Ne(D)]:[k,D];if(s||os(t[0],tt[e],st[e]),!o){let s;Ve(t[1],(([t,n],o)=>{n!==t&&(it(nt[e],[o],n,t,ts),s=1)})),s&&it(et[e],void 0,ts)}}},ls=(e,...t)=>(zs((()=>e(...K(t,y)))),Ws),is=()=>ze(Z),ds=()=>Ee(Z),cs=e=>Ee(ke(Y,y(e))),us=e=>we(ke(Z,y(e))),gs=e=>Ee(ke(Z,y(e))),hs=(e,t,s,n=0,o)=>{return K(W(q((r=ke(Z,y(e)),a=(e,s)=>[x(t)?s:ke(e,y(t)),s],K([...r?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>at(e,t)*(s?-1:1))),n,x(o)?o:n+o),(([,e])=>e));var r,a},fs=(e,t)=>Ee(ke(ke(Z,y(e)),y(t))),Is=(e,t,s)=>ke(ke(ke(Z,y(e)),y(t)),y(s)),bs=()=>Fe(ee),Ls=()=>Ee(ee),ws=e=>ke(ee,y(e)),Cs=()=>!pe(Z),Rs=e=>ve(Z,y(e)),Ts=(e,t)=>ve(ke(Y,y(e)),y(t)),vs=(e,t)=>ve(ke(Z,y(e)),y(t)),ps=(e,t,s)=>ve(ke(ke(Z,y(e)),y(t)),y(s)),Ss=()=>!pe(ee),ys=e=>ve(ee,y(e)),Vs=e=>ls((()=>(e=>be(e,ht,Zt))(e)?pt(e):0)),Ms=e=>ls((()=>bt(e)?xt(e):0)),ms=e=>{try{vt(Ft(e))}catch{}return Ws},Es=t=>ls((()=>{if((e=be(t,(e=>be(e,ut))))&&(Rt(t),!pe(Z))){const e=is();Ds(),Vs(e)}})),ks=e=>ls((()=>{if(t=(e=>be(e,ut))(e)){const s=bs();Qs(),xs(),t=!0,Tt(e),Ms(s)}})),Ds=()=>ls((()=>pt({}))),Hs=e=>ls((e=>ve(Z,e)?Pt(e):0),e),Js=(e,t)=>ls(((e,t)=>F(ke(Z,e),(s=>ve(s,t)?_t(e,s,t):0))),e,t),xs=()=>ls((()=>xt({}))),Fs=()=>ls((()=>{Rt({}),e=!1})),Qs=()=>ls((()=>{Tt({}),t=!1})),zs=(e,t)=>{if(-1!=r){Ns();const s=e();return Os(t),s}},Ns=()=>(-1!=r&&r++,1==r&&(d[0]?.(),it(ot)),Ws),Os=e=>(r>0&&(r--,0==r&&(r=1,ss(1),pe(E)||rs(1),ns(1),pe(D)||as(1),e?.(Ws)&&(Ve(E,((e,t)=>Ve(e,((e,s)=>Ve(e,(([e],n)=>je(Ws,t,s,n,e))))))),ye(E),Ve(D,(([e],t)=>Be(Ws,t,e))),ye(D)),it(rt[0],void 0),r=-1,ss(0),pe(E)||rs(0),ns(0),pe(D)||as(0),d[1]?.(),it(rt[1],void 0),d[2]?.(),r=0,s=Cs(),n=Ss(),G([g,C,V,M,m,E,H,k,D,J],ye))),Ws),Ws={getContent:()=>[is(),bs()],getTables:is,getTableIds:ds,getTable:e=>Qe(ke(Z,y(e))),getTableCellIds:cs,getRowCount:us,getRowIds:gs,getSortedRowIds:hs,getRow:(e,t)=>Fe(ke(ke(Z,y(e)),y(t))),getCellIds:fs,getCell:Is,getValues:bs,getValueIds:Ls,getValue:ws,hasTables:Cs,hasTable:Rs,hasTableCell:Ts,hasRow:vs,hasCell:ps,hasValues:Ss,hasValue:ys,getTablesJson:()=>Qt(Z),getValuesJson:()=>Qt(ee),getJson:()=>Qt([Z,ee]),getTablesSchemaJson:()=>Qt(z),getValuesSchemaJson:()=>Qt(P),getSchemaJson:()=>Qt([z,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>ls((()=>gt(e)?(([e,t])=>{(fe(e)?Ds:Vs)(e),(fe(t)?xs:Ms)(t)})(e):0)),setTables:Vs,setTable:(e,t)=>ls((e=>ht(t,e)?St(e,t):0),e),setRow:(e,t,s)=>ls(((e,t)=>ft(e,t,s)?yt(e,At(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let n;return ft(e,n,t)&&(e=y(e),yt(e,At(e),n=Wt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ls(((e,t)=>{if(ft(e,t,s,1)){const n=At(e);he(s,((s,o)=>Mt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>ls(((e,t,s)=>F(It(e,t,s,N(n)?n(Is(e,t,s)):n),(n=>Mt(e,At(e),t,s,n)))),e,t,s),setValues:Ms,setPartialValues:e=>ls((()=>bt(e,1)?he(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>ls((e=>F(Lt(e,N(t)?t(ws(e)):t),(t=>Ot(e,t)))),e),applyChanges:e=>ls((()=>{he(e[0],((e,t)=>x(e)?Hs(t):he(e,((e,s)=>x(e)?Js(t,s):he(e,((e,n)=>je(Ws,t,s,n,e))))))),he(e[1],((e,t)=>Be(Ws,t,e)))})),setTablesJson:ms,setValuesJson:e=>{try{mt(Ft(e))}catch{}return Ws},setJson:e=>ls((()=>{try{const[t,s]=Ft(e);vt(t),mt(s)}catch{ms(e)}})),setTablesSchema:Es,setValuesSchema:ks,setSchema:(e,t)=>ls((()=>{Es(e),ks(t)})),delTables:Ds,delTable:Hs,delRow:Js,delCell:(e,t,s,n)=>ls(((e,t,s)=>F(ke(Z,e),(o=>F(ke(o,t),(r=>ve(r,s)?jt(e,o,t,r,s,n):0))))),e,t,s),delValues:xs,delValue:e=>ls((e=>ve(ee,e)?Bt(e):0),e),delTablesSchema:Fs,delValuesSchema:Qs,delSchema:()=>ls((()=>{Fs(),Qs()})),transaction:zs,startTransaction:Ns,getTransactionChanges:()=>[Fe(E,((e,t)=>-1===ke(g,t)?void 0:Fe(e,((e,s)=>-1===ke(ke(M,t),s)?void 0:Fe(e,(([,e])=>e),(e=>Jt(e)))),pe,fe)),pe,fe),Fe(D,(([,e])=>e),(e=>Jt(e))),1],getTransactionLog:()=>[!pe(E),!pe(D),ze(E,Ht,Jt),ze(H),Fe(D,Ht,Jt),Fe(J),Fe(g),Qe(M),ze(m),Fe(k)],finishTransaction:Os,forEachTable:e=>Ve(Z,((t,s)=>e(s,(e=>Ve(t,((t,s)=>e(s,(e=>De(t,e))))))))),forEachTableCell:(e,t)=>De(ke(Y,y(e)),t),forEachRow:(e,t)=>Ve(ke(Z,y(e)),((e,s)=>t(s,(t=>De(e,t))))),forEachCell:(e,t,s)=>De(ke(ke(Z,y(e)),y(t)),s),forEachValue:e=>De(ee,e),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let l=hs(e,t,s,n,o);return lt((()=>{const a=hs(e,t,s,n,o);B(a,l)||(l=a,r(Ws,e,t,s,n,o,l))}),Ie[a?1:0],[e,t],[ds])},addStartTransactionListener:e=>lt(e,ot),addWillFinishTransactionListener:e=>lt(e,rt[0]),addDidFinishTransactionListener:e=>lt(e,rt[1]),callListener:e=>(ct(e),Ws),delListener:e=>(dt(e),Ws),getListenerStats:()=>({hasTables:kt(te),tables:kt(se),tableIds:kt(ne),hasTable:kt(oe),table:kt(re),tableCellIds:kt(ae),hasTableCell:kt(le,Re),rowCount:kt(de),rowIds:kt(ge),sortedRowIds:kt(Ie),hasRow:kt(Le,Re),row:kt(Se,Re),cellIds:kt(Ae,Re),hasCell:kt(_e,Te),cell:kt(Ge,Te),invalidCell:kt(Ke,Te),hasValues:kt(Ye),values:kt(et),valueIds:kt(tt),hasValue:kt(st),value:kt(nt),invalidValue:kt(Xe),transaction:Ce(ot)+kt(rt)}),isMergeable:()=>!1,createStore:Nt,addListener:lt,callListeners:it,setInternalListeners:(e,t,s,n,o)=>d=[e,t,s,n,o]};return he({[u+f]:[0,te,[],()=>[Cs()]],[f]:[0,se],[I]:[0,ne],[u+h]:[1,oe,[ds],e=>[Rs(...e)]],[h]:[1,re,[ds]],[h+T]:[1,ae,[ds]],[u+h+R]:[2,le,[ds,cs],e=>[Ts(...e)]],[L]:[1,de,[ds]],[w]:[1,ge,[ds]],[u+b]:[2,Le,[ds,gs],e=>[vs(...e)]],[b]:[2,Se,[ds,gs]],[T]:[2,Ae,[ds,gs]],[u+R]:[3,_e,[ds,gs,fs],e=>[ps(...e)]],[R]:[3,Ge,[ds,gs,fs],e=>Et(Is(...e))],InvalidCell:[3,Ke],[u+p]:[0,Ye,[],()=>[Ss()]],[p]:[0,et],[S]:[0,tt],[u+v]:[1,st,[Ls],e=>[ys(...e)]],[v]:[1,nt,[Ls],e=>Et(ws(e[0]))],InvalidValue:[1,Xe]},(([e,t,s,n],o)=>{Ws[c+o+i]=(...o)=>lt(o[e],t[o[e+1]?1:0],e>0?W(o,0,e):void 0,s,n)})),ie(Ws)},Ot=2**36,Wt=2**30,At=2**24,Pt=2**18,_t=4096,jt={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},Bt=(e=t)=>[yt(e),yt(e)],Ut=e=>{let s=1,n=Bt(),o=0;const r=me(),a=Ue(),[l,d]=(e=>{let t=0,s=-1;const n=F(e,(e=>{const t=It(e);return nt(t/At)+nt(t/Pt)+nt(t/_t)+nt(t/64)+nt(t)}),(()=>lt(5))),o=e=>{const n=t,[o,r]=x(e)||""==e?[0,0]:[ot(a=e,0)*Ot+ot(a,1)*Wt+ot(a,2)*At+ot(a,3)*Pt+ot(a,4)*_t+64*ot(a,5)+ot(a,6),ot(a,7)*Pt+ot(a,8)*_t+64*ot(a,9)+ot(a,10)];var a;t=k(n,o,m.HLC_TIME??Date.now()),s=t==n?t==o?k(s,r):s:t==o?r:-1};return[()=>{return o(),r=++s,nt((e=t)/Ot)+nt(e/Wt)+nt(e/At)+nt(e/Pt)+nt(e/_t)+nt(e/64)+nt(e)+nt(r/Pt)+nt(r/_t)+nt(r/64)+nt(r)+n;var e,r},o]})(e),u=Nt(),g=e=>{const t=s;return s=0,e(),s=t,L},h=(e,s=0)=>{const o={},r={},[[a,l=t,i=0],c]=e,[u,g]=n,[h,I,b]=u;let L=s?i:b,w=l;ge(a,(([e,n=t,r=0],a)=>{const l=Je(h,a,yt),[i,d,c]=l;let u=s?r:c,g=n;ge(e,((e,t)=>{const[n,r,l]=f(e,Je(i,t,yt),Ie(Ie(o,a,de),t,de),s);u^=s?0:(r?Rt(t,r):0)^Rt(t,l),g=vt(g,n)})),u^=s?0:Tt(d,n),pt(l,u,n),L^=s?0:(c?Rt(a,c):0)^Rt(a,l[2]),w=vt(w,g)})),L^=s?0:Tt(I,l),pt(u,L,l);const[C]=f(c,g,r,s);return d(vt(w,C)),[o,r,1]},f=(e,s,n,o)=>{const[r,a=t,l=0]=e,[i,d,c]=s;let u=a,g=o?l:c;return ge(r,(([e,s,r=0],a)=>{const l=Je(i,a,(()=>[void 0,t,0])),[,d,c]=l;(!d||s>d)&&(pt(l,o?r:It(Qt(e??null)+":"+s),s),l[0]=e,n[a]=e,g^=o?0:Rt(a,c)^Rt(a,l[2]),u=vt(u,s))})),g^=o?0:Tt(d,a),pt(s,g,a),[u,c,s[2]]},I=()=>[Vt(n[0],(e=>Vt(e,(e=>Vt(e))))),Vt(n[1])],b=e=>g((()=>u.applyChanges(h(e)))),L={getMergeableContent:I,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Fe(n[0][0],Ct),getMergeableTableDiff:e=>{const t=St(n[0][1]),s={};return De(n[0][0],((n,[o,r,a])=>ce(e,n)?a!=e[n]?s[n]=a:0:t[0][n]=Mt([o,r],(e=>Mt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return ge(e,((e,s)=>F(ke(n[0][0],s),(([n,,o])=>o!=e?De(n,((e,[,,n])=>Ie(t,s,de)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=St(n[0][1]),s={};return ge(e,((e,o)=>De(ke(n[0][0],o)?.[0],((n,[r,a,l])=>ce(e,n)?l!==e[n]?Ie(s,o,de)[n]=l:0:Ie(t[0],o,St)[0][n]=Mt([r,a]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return ge(e,((e,s)=>F(ke(n[0][0],s),(([n])=>ge(e,((e,o)=>F(ke(n,o),(([n,,r])=>r!==e?De(n,((e,[,,n])=>Ie(Ie(t,s,de),o,de)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,o={};return ge(e,((e,s)=>ge(e,((e,n)=>F(ke(t,s),(([t,r])=>F(ke(t,n),(([t,a])=>De(t,((t,[l,i,d])=>d!==e[t]?Ie(Ie(o,s,(()=>St(r)))[0],n,(()=>St(a)))[0][t]=[l,i]:0)))))))))),wt(o,s)},getMergeableValueHashes:()=>Fe(n[1][0],Ct),getMergeableValueDiff:e=>{const[,[t,s]]=n,o=Fe(t,Lt,(([,,t],s)=>t==e?.[s]));return wt(o,s)},setMergeableContent:e=>g((()=>(e=>O(e)&&2==A(e)&&mt(e[0],(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,_e)),void 0,1)))),void 0,1)))),void 0,1)))&&mt(e[1],(e=>be(e,(e=>mt(e,_e)),void 0,1))))(e)?u.transaction((()=>{u.delTables().delValues(),n=Bt(),u.applyChanges(h(e,1))})):0)),setDefaultContent:e=>(u.transaction((()=>{o=1,u.setContent(e),o=0})),L),getTransactionMergeableChanges:()=>{const[[e,t],[s,o]]=n,l={};Ve(r,((t,s)=>F(ke(e,s),(([e,n])=>{const o={};Ve(t,((t,s)=>F(ke(e,s),(([e,n])=>{const r={};Ve(t,(t=>{F(ke(e,t),(([e,s])=>r[t]=wt(e,s)))})),o[s]=wt(r,n)})))),l[s]=wt(o,n)}))));const i={};return Ve(a,(e=>F(ke(s,e),(([t,s])=>i[e]=wt(t,s))))),[wt(l,t),wt(i,o),1]},applyMergeableChanges:b,merge:e=>{const t=I(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return u.setInternalListeners((()=>{}),(()=>{}),(()=>{ye(r),ye(a)}),((e,n,a,i)=>{qe(Je(Je(r,e,me),n,Ue),a),s&&h([[{[e]:[{[n]:[{[a]:[i,o?t:l()]}]}]}],[{}],1])}),((e,n)=>{qe(a,e),s&&h([[{}],[{[e]:[n,o?t:l()]}],1])})),he(u,((e,t)=>L[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||t=="call"+i?(...t)=>(e(...t),L):V(t,c)&&M(t,i)?(...s)=>{const n=jt[W(t,3,-8)]??0,o=s[n];return s[n]=(e,...t)=>o(L,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),ie(L)};export{et as createCheckpoints,it as createIndexes,Ut as createMergeableStore,ut as createMetrics,gt as createQueries,ht as createRelationships,Nt as createStore,at as defaultSorter,lt as getUniqueId};
1
+ const e=e=>typeof e,t="",s=e(t),n=e(!0),o=e(0),r=e(e),a="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",I=h+g,b="Row",L=b+"Count",w=b+g,C="Sorted"+b+g,R="Cell",T=R+g,v="Value",p=v+"s",S=v+g,y=e=>t+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),m=(e,s=t,n)=>e.split(s,n),E=globalThis,k=Math,D=k.max,H=k.min,J=k.floor,x=isFinite,F=e=>null==e,Q=(e,t,s)=>F(e)?s?.():t(e),z=e=>e==s||e==n,N=t=>e(t)==s,O=t=>e(t)==r,W=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),P=e=>e.length,_=()=>{},j=(e,t)=>e.includes(t),B=(e,t)=>e.every(t),U=(e,t)=>P(e)===P(t)&&B(e,((e,s)=>t[s]===e)),q=(e,t)=>B(e,((s,n)=>0==n||t(e[n-1],s)<=0)),G=(e,t)=>e.sort(t),K=(e,t)=>e.forEach(t),X=(e,t)=>e.map(t),Y=e=>$(e,((e,t)=>e+t),0),Z=e=>0==P(e),$=(e,t,s)=>e.reduce(t,s),ee=(e,...t)=>e.push(...t),te=e=>e.pop(),se=e=>e.shift(),ne=Object,oe=e=>ne.getPrototypeOf(e),re=ne.entries,ae=ne.isFrozen,le=e=>!F(e)&&Q(oe(e),(e=>e==ne.prototype||F(oe(e))),(()=>!0)),ie=ne.keys,ce=ne.freeze,de=(e=[])=>ne.fromEntries(e),ue=(e,t)=>t in e,ge=(e,t)=>(delete e[t],e),he=(e,t)=>K(re(e),(([e,s])=>t(s,e))),fe=(e,t)=>X(re(e),(([e,s])=>t(s,e))),Ie=e=>le(e)&&0==(e=>P(ie(e)))(e),be=(e,t,s)=>(ue(e,t)||(e[t]=s()),e[t]),Le=(e,t,s,n=0)=>F(e)||!le(e)||!n&&Ie(e)||ae(e)?(s?.(),!1):(fe(e,((s,n)=>{t(s,n)||ge(e,n)})),!!n||!Ie(e)),we=e=>t=>$(ye(t),((t,s)=>t+e(s)),0),Ce=e=>e?.size??0,Re=we(Ce),Te=we(Re),ve=we(Te),pe=(e,t)=>e?.has(t)??!1,Se=e=>F(e)||0==Ce(e),ye=e=>[...e?.values()??[]],Ve=e=>e.clear(),Me=(e,t)=>e?.forEach(t),me=(e,t)=>e?.delete(t),Ee=e=>new Map(e),ke=e=>[...e?.keys()??[]],De=(e,t)=>e?.get(t),He=(e,t)=>Me(e,((e,s)=>t(s,e))),Je=(e,t,s)=>F(s)?(me(e,t),e):e?.set(t,s),xe=(e,t,s,n)=>(pe(e,t)?n?.(De(e,t)):Je(e,t,s()),De(e,t)),Fe=(e,t,s,n=Je)=>(fe(t,((t,n)=>s(e,n,t))),He(e,(s=>ue(t,s)?0:n(e,s))),e),Qe=(e,t,s,n)=>{const o={};return Me(e,((e,r)=>{if(!s?.(e,r)){const s=t?t(e,r):e;n?.(s)||(o[r]=s)}})),o},ze=(e,t,s)=>Qe(e,(e=>Qe(e,t,s)),Se,Ie),Ne=(e,t,s)=>Qe(e,(e=>ze(e,t,s)),Se,Ie),Oe=(e,t)=>{const s=Ee();return Me(e,((e,n)=>s.set(n,t?.(e)??e))),s},We=e=>Oe(e,Oe),Ae=e=>Oe(e,We),Pe=(e,t,s,n,o=0)=>Q((s?xe:De)(e,t[o],o>P(t)-2?s:Ee),(r=>{if(o>P(t)-2)return n?.(r)&&Je(e,t[o]),r;const a=Pe(r,t,s,n,o+1);return Se(r)&&Je(e,t[o]),a})),_e=t=>{const s=e(t);return z(s)||s==o&&x(t)?s:void 0},je=e=>F(e)||!F(_e(e)),Be=(e,t,s,n,o)=>F(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Ue=(e,t,s)=>F(s)?e.delValue(t):e.setValue(t,s),qe=e=>new Set(W(e)||F(e)?e:[e]),Ge=(e,t)=>e?.add(t),Ke=(e,t,s,n,o)=>{const r=e.hasRow,a=Ee(),l=Ee(),i=Ee(),c=Ee(),d=Ee(),u=Ee(),g=(t,s,...n)=>{const o=xe(u,t,qe);return K(n,(t=>Ge(o,t)&&s&&e.callListener(t))),n},h=(t,...s)=>Q(De(u,t),(n=>{K(Z(s)?ye(n):s,(t=>{e.delListener(t),me(n,t)})),Se(n)&&Je(u,t)})),f=(e,s)=>{Je(a,e,s),pe(l,e)||(Je(l,e,t()),Je(c,e,Ee()),Je(d,e,Ee()),o(i))},I=e=>{Je(a,e),Je(l,e),Je(c,e),Je(d,e),h(e),o(i)};return[()=>e,()=>ke(a),e=>He(l,e),e=>pe(l,e),e=>De(a,e),e=>De(l,e),(e,t)=>Je(l,e,t),f,(t,n,o,a,l)=>{f(t,n);const i=Ee(),u=Ee(),I=De(c,t),b=De(d,t),L=t=>{const o=s=>e.getCell(n,t,s),c=De(I,t),d=r(n,t)?s(a(o,t)):void 0;if(c===d||W(c)&&W(d)&&U(c,d)||Je(i,t,[c,d]),!F(l)){const e=De(b,t),s=r(n,t)?l(o,t):void 0;e!=s&&Je(u,t,s)}},w=e=>{o((()=>{Me(i,(([,e],t)=>Je(I,t,e))),Me(u,((e,t)=>Je(b,t,e)))}),i,u,I,b,e),Ve(i),Ve(u)};He(I,L),e.hasTable(n)&&K(e.getRowIds(n),(e=>{pe(I,e)||L(e)})),w(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>L(s))),e.addTableListener(n,(()=>w())))},I,e=>n(e,i),()=>He(u,I),g,h]},Xe=(e,s)=>N(e)?t=>t(e):e??(()=>s??t),Ye=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const o=s.get(n);return t?.(o),o}},Ze=/^\d+$/,$e=()=>{const e=[];let s=0;return[n=>(n?se(e):null)??t+s++,t=>{Ze.test(t)&&P(e)<1e3&&ee(e,t)}]},et=e=>{let s;const[n,o]=$e(),r=Ee();return[(o,a,l,i=[],c=()=>[])=>{s??=e();const d=n(1);return Je(r,d,[o,a,l,i,c]),Ge(Pe(a,l??[t],qe),d),d},(e,n,...o)=>K(((e,s=[t])=>{const n=[],o=(e,t)=>t==P(s)?ee(n,e):null===s[t]?Me(e,(e=>o(e,t+1))):K([s[t],null],(s=>o(De(e,s),t+1)));return o(e,0),n})(e,n),(e=>Me(e,(e=>De(r,e)[0](s,...n??[],...o))))),e=>Q(De(r,e),(([,s,n])=>(Pe(s,n??[t],void 0,(t=>(me(t,e),Se(t)?1:0))),Je(r,e),o(e),n))),e=>Q(De(r,e),(([e,,t=[],n,o])=>{const r=(...a)=>{const l=P(a);l==P(t)?e(s,...a,...o(a)):F(t[l])?K(n[l]?.(...a)??[],(e=>r(...a,e))):r(...a,t[l])};r()}))]},tt=Ye((e=>{let s,n,o,r=100,a=Ee(),l=Ee(),i=1;const c=Ee(),d=Ee(),[u,g,h]=et((()=>J)),f=Ee(),I=Ee(),b=[],L=[],w=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=De(f,s);Me(n,((s,n)=>Me(s,((s,o)=>Me(s,((s,r)=>Be(e,n,o,r,s[t]))))))),Me(o,((s,n)=>Ue(e,n,s[t])))})),i=1},C=e=>{Je(f,e),Je(I,e),g(d,[e])},R=(e,t)=>K(((e,t)=>e.splice(0,t))(e,t??P(e)),C),T=()=>R(b,P(b)-r),v=()=>Q(s,(()=>{ee(b,s),T(),R(L),s=void 0,o=1})),p=()=>{s=te(b),o=1};let S,y;const V=(e=t)=>(F(s)&&(s=t+n++,Je(f,s,[a,l]),D(s,e),a=Ee(),l=Ee(),o=1),s),M=()=>{Z(b)||(((e,...t)=>{e.unshift(...t)})(L,V()),w(0,s),s=te(b),o=1)},m=()=>{Z(L)||(ee(b,s),s=se(L),w(1,s),o=1)},E=()=>{o&&(g(c),o=0)},k=e=>{const t=V(e);return E(),t},D=(e,t)=>(H(e)&&De(I,e)!==t&&(Je(I,e,t),g(d,[e])),J),H=e=>pe(f,e),J={setSize:e=>(r=e,T(),J),addCheckpoint:k,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...b],s,[...L]],forEachCheckpoint:e=>He(I,e),hasCheckpoint:H,getCheckpoint:e=>De(I,e),goBackward:()=>(M(),E(),J),goForward:()=>(m(),E(),J),goTo:e=>{const t=j(b,e)?M:j(L,e)?m:null;for(;!F(t)&&e!=s;)t();return E(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(R(b),R(L),F(s)||C(s),s=void 0,n=0,k(),J),clearForward:()=>(Z(L)||(R(L),g(c)),J),destroy:()=>{e.delListener(S),e.delListener(y)},getListenerStats:()=>({checkpointIds:Re(c),checkpoint:Re(d)}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(i){v();const e=xe(a,t,Ee),l=xe(e,s,Ee),i=xe(l,n,(()=>[r,void 0]));i[1]=o,i[0]===o&&Se(Je(l,n))&&Se(Je(e,s))&&Se(Je(a,t))&&p(),E()}})),y=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=xe(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Se(Je(l,t))&&p(),E()}}))}};return ce(J.clear())}),(e=>e._registerListeners())),st=m("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),nt=Ee(X(st,((e,t)=>[e,t]))),ot=e=>st[63&e],rt=(e,t)=>De(nt,e[t])??0,at=E.crypto?e=>E.crypto.getRandomValues(e):e=>X(e,(()=>J(256*k.random()))),lt=(e,t)=>(e??0)<(t??0)?-1:1,it=(e=16)=>$(at(new Uint8Array(e)),((e,t)=>e+ot(t)),""),ct=Ye((e=>{const s=Ee(),n=Ee(),[o,r,a]=et((()=>C)),[l,i,c,d,u,g,h,,f,I,b,L]=Ke(e,Ee,(e=>F(e)?t:W(e)?X(e,y):y(e)),o,r),w=(t,s,n)=>{const o=u(t);Me(n,((t,n)=>s(n,(s=>Me(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},C={setIndexDefinition:(e,t,o,a,l,i=lt)=>{const c=F(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,o,l,d,u,f)=>{let I=0;const b=qe(),L=qe(),w=g(e);if(Me(o,(([e,t],s)=>{const n=qe(e),o=qe(t);Me(n,(e=>me(o,e)?me(n,e):0)),Me(n,(e=>{Ge(b,e),Q(De(w,e),(t=>{me(t,s),Se(t)&&(Je(w,e),I=1)}))})),Me(o,(e=>{Ge(b,e),pe(w,e)||(Je(w,e,qe()),I=1),Ge(De(w,e),s),F(a)||Ge(L,e)}))})),t(),Se(u)||(f?He(w,(e=>Ge(L,e))):He(l,(e=>Q(De(d,e),(e=>Ge(L,e))))),Me(L,(e=>{const t=(t,s)=>i(De(u,t),De(u,s),e),s=[...De(w,e)];q(s,t)||(Je(w,e,qe(G(s,t))),Ge(b,e))}))),(I||f)&&!F(c)){const t=[...w];q(t,c)||(h(e,Ee(G(t,c))),I=1)}I&&r(s,[e]),Me(b,(t=>r(n,[e,t])))}),Xe(o),Q(a,Xe)),C},delIndexDefinition:e=>(I(e),C),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>w(t,e,s))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>pe(g(e),t),getTableId:u,getSliceIds:e=>ke(g(e)),getSliceRowIds:(e,t)=>ye(De(g(e),t)),addIndexIdsListener:b,addSliceIdsListener:(e,t)=>o(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>o(s,n,[e,t]),delListener:e=>(a(e),C),destroy:L,getListenerStats:()=>({sliceIds:Re(s),sliceRowIds:Te(n)})};return ce(C)})),dt=Ee([["avg",[(e,t)=>Y(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=>D(...e),(e,t)=>D(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:D(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=>Y(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ut=(e,t,s,n,o,r=!1)=>{if(Se(s))return;const[a,l,i,c]=o;return r||=F(e),Me(n,(([s,n])=>{r||(e=F(s)?l?.(e,n,t++):F(n)?i?.(e,s,t--):c?.(e,n,s,t),r||=F(e))})),r?a(ye(s),Ce(s)):e},gt=Ye((e=>{const s=Ee(),[n,o,r]=et((()=>L)),[a,l,i,c,d,u,g,,h,f,I,b]=Ke(e,_,(e=>isNaN(e)||F(e)||!0===e||!1===e||e===t?void 0:1*e),n,o),L={setMetricDefinition:(e,t,n,r,a,l,i)=>{const c=O(n)?[n,a,l,i]:De(dt,n)??De(dt,"sum");return h(e,t,((t,n,r,a,l,i)=>{const d=u(e),h=Ce(a);i||=F(d),t();let f=ut(d,h,a,n,c,i);x(f)||(f=void 0),f!=d&&(g(e,f),o(s,[e],f,d))}),Xe(r,1)),L},delMetricDefinition:e=>(f(e),L),getStore:a,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:I,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(r(e),L),destroy:b,getListenerStats:()=>({metric:Re(s)})};return ce(L)})),ht=Ye((e=>{const s=e.createStore,n=s(),o=s(),r=Ee(),{addListener:a,callListeners:l,delListener:u}=o,[g,f,I,v,p,,,S,,y,V,M,m,E]=Ke(e,(()=>!0),_,a,l),k=(e,t,...s)=>K(s,(s=>Ge(xe(xe(r,t,Ee),e,qe),s))),D=e=>{Q(De(r,e),(e=>{He(e,((e,t)=>Me(t,(t=>e.delListener(t))))),Ve(e)})),K([o,n],(t=>t.delTable(e)))},H=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(s,r,a)=>{S(s,r),D(s);const l=[],i=[[null,[r,null,null,[],Ee()]]],c=[],d=[],u=[];a({select:(e,s)=>{const n=O(e)?[P(l)+t,e]:[F(s)?e:s,t=>t(e,s)];return ee(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=F(s)||O(t)?null:t,o=F(n)?t:s,r=[e,[e,n,O(o)?o:e=>e(o),[],Ee()]];return ee(i,r),{as:e=>r[0]=e}},where:(e,t,s)=>ee(c,O(e)?e:F(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,O(t)?[t,s,n,o]:De(dt,t)??[(e,t)=>t]]];return ee(d,r),{as:e=>r[0]=e}},having:(e,t)=>ee(u,O(e)?e:s=>s(e)===t)});const g=Ee(l);if(Se(g))return J;const h=Ee(i);He(h,((e,[,t])=>Q(De(h,t),(({3:t})=>F(e)?0:ee(t,e)))));const f=Ee(d);let I=n;if(Se(f)&&Z(u))I=o;else{H(s,I,o);const e=Ee();He(f,((t,[s,n])=>Ge(xe(e,s,qe),[t,n])));const t=qe();He(g,(s=>pe(e,s)?0:Ge(t,s)));const n=Ee(),r=(t,n,r,a)=>Q(t,(([l,i,c,d])=>{He(n,((t,[s])=>{const n=xe(l,t,Ee),o=De(n,r),i=a?void 0:s;if(o!==i){const s=qe([[o,i]]),a=Ce(n);Je(n,r,i),Me(De(e,t),(([e,t])=>{const o=ut(d[e],a,n,s,t);d[e]=F(_e(o))?null:o}))}})),Se(i)||!B(u,(e=>e((e=>d[e]))))?o.delRow(s,c):F(c)?t[2]=o.addRow(s,d):o.setRow(s,c,d)}));k(I,s,I.addRowListener(s,null,((o,a,l,i)=>{const c=[],d=[],u=Ee(),g=I.hasRow(s,l);let h=!g;Me(t,(e=>{const[t,n,o]=i(s,l,e);ee(c,n),ee(d,o),h||=t})),He(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&Je(u,e,[n])})),h&&r(Pe(n,c,void 0,(([,e])=>(me(e,l),Se(e)))),u,l,1),g&&r(Pe(n,d,(()=>{const e={};return Me(t,(t=>e[t]=I.getCell(s,l,t))),[Ee(),qe(),void 0,e]}),(([,e])=>{Ge(e,l)})),u,l)})))}H(s,e,I);const b=(t,n,o,a)=>{const l=t=>e.getCell(n,o,t);K(a,(n=>{const[o,,r,a,i]=De(h,n),c=r?.(l,t),[d,u]=De(i,t)??[];c!=d&&(F(u)||E(s,u),Je(i,t,F(c)?null:[c,...m(s,1,e.addRowListener(o,c,(()=>b(t,o,c,a))))]))})),(t=>{const n=(s,n)=>e.getCell(...F(n)?[r,t,s]:s===r?[r,t,n]:[De(h,s)?.[0],De(De(h,s)?.[4],t)?.[0],n]);I.transaction((()=>B(c,(e=>e(n)))?He(g,((e,o)=>Be(I,s,t,e,o(n,t)))):I.delRow(s,t)))})(t)},{3:L}=De(h,null);return I.transaction((()=>m(s,1,e.addRowListener(r,null,((t,n,o)=>{e.hasRow(r,o)?b(o,r,o,L):(I.delRow(s,o),Me(h,(({4:e})=>Q(De(e,o),(([,t])=>{E(s,t),Je(e,o)})))))}))))),J},delQueryDefinition:e=>(D(e),y(e),J),getStore:g,getQueryIds:f,forEachQuery:I,hasQuery:v,getTableId:p,addQueryIdsListener:e=>V((()=>e(J))),delListener:e=>(u(e),J),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=o.getListenerStats();return n}};return fe({[h]:[1,1],[h+T]:[0,1],[L]:[0,1],[w]:[0,1],[C]:[0,5],[b]:[1,2],[T]:[0,2],[R]:[1,3]},(([e,t],s)=>{K(e?["get","has","forEach"]:["get"],(e=>J[e+c+s]=(...t)=>o[e+s](...t))),J[d+c+s+i]=(...e)=>o[d+s+i](...A(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),ce(J)})),ft=Ye((e=>{const s=Ee(),n=Ee(),o=Ee(),r=Ee(),[a,l,i]=et((()=>v)),[c,d,u,g,h,f,,,I,b,L,w]=Ke(e,(()=>[Ee(),Ee(),Ee(),Ee()]),(e=>F(e)?void 0:e+t),a,l),C=(e,t,s)=>Q(f(e),(([n,,o])=>{if(!pe(o,t)){const r=qe();if(h(e)!=T(e))Ge(r,t);else{let e=t;for(;!F(e)&&!pe(r,e);)Ge(r,e),e=De(n,e)}if(s)return r;Je(o,t,r)}return De(o,t)})),R=(e,t)=>Q(f(e),(([,,e])=>Je(e,t))),T=e=>De(s,e),v={setRelationshipDefinition:(e,t,a,i)=>(Je(s,e,a),I(e,t,((t,s)=>{const a=qe(),i=qe(),c=qe(),[d,u]=f(e);Me(s,(([t,s],n)=>{F(t)||(Ge(i,t),Q(De(u,t),(e=>{me(e,n),Se(e)&&Je(u,t)}))),F(s)||(Ge(i,s),pe(u,s)||Je(u,s,qe()),Ge(De(u,s),n)),Ge(a,n),Je(d,n,s),He(De(r,e),(t=>{pe(C(e,t),n)&&Ge(c,t)}))})),t(),Me(a,(t=>l(n,[e,t]))),Me(i,(t=>l(o,[e,t]))),Me(c,(t=>{R(e,t),l(r,[e,t])}))}),Xe(i)),v),delRelationshipDefinition:e=>(Je(s,e),b(e),v),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>De(f(e)?.[0],t),getLocalRowIds:(e,t)=>ye(De(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>F(f(e))?[t]:ye(C(e,t,!0)),addRelationshipIdsListener:L,addRemoteRowIdListener:(e,t,s)=>a(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>a(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(C(e,t),a(s,r,[e,t])),delListener:e=>(R(...i(e)??[]),v),destroy:w,getListenerStats:()=>({remoteRowId:Te(n),localRowIds:Te(o),linkedRowIds:Te(r)})};return ce(v)})),It=new E.TextEncoder,bt=e=>{let t=2166136261;return K(It.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},Lt=([e,t,s])=>[e,t,s],wt=([e,t])=>Ct(e,t),Ct=(e,t)=>t?[e,t]:[e],Rt=e=>e[2],Tt=(e,t)=>bt(e+":"+t),vt=(e,t)=>t>e?(e?bt(e):0)^bt(t):0,pt=(e,t)=>((e??"")>(t??"")?e:t)??"",St=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},yt=(e=t)=>Ct(de(),e),Vt=(e=t)=>[Ee(),e,0],Mt=([e,t,s],n=Lt)=>[Qe(e,n),t,s],mt=([e,t],s=wt)=>Ct(Qe(e,s),t),Et=(t,s)=>W(t)&&3==P(t)&&N(t[1])&&e(t[2])==o&&x(t[2])&&s(t[0]),kt=e=>[e,e],Dt=(e,t=Re)=>t(e[0])+t(e[1]),Ht=()=>[Ee(),Ee()],Jt=e=>[...e],xt=([e,t])=>e===t,Ft=JSON.stringify,Qt=JSON.parse,zt=e=>Ft(e,((e,t)=>t instanceof Map?ne.fromEntries([...t]):t)),Nt=(e,t,s)=>Je(e,t,De(e,t)==-s?void 0:s),Ot=()=>{let e,t,s=!1,n=!1,r=0,c=[];const g=Ee(),C=Ee(),V=Ee(),M=Ee(),m=Ee(),E=Ee(),k=Ee(),D=Ee(),H=Ee(),J=Ee(),x=Ee(),N=Ee(),P=Ee(),_=Ee(),B=qe(),q=Ee(),Y=Ee(),Z=Ee(),$=Ee(),te=Ht(),se=Ht(),ne=Ht(),oe=Ht(),re=Ht(),ae=Ht(),le=Ht(),ie=Ht(),de=Ht(),he=Ht(),be=Ht(),we=Ht(),ye=Ht(),Pe=Ht(),je=Ht(),Ke=Ht(),Xe=Ht(),Ye=Ht(),Ze=Ht(),tt=Ht(),st=Ht(),nt=Ht(),ot=Ee(),rt=Ht(),[at,it,ct,dt]=et((()=>Ws)),ut=e=>{if(!Le(e,((e,t)=>j([a,l],t))))return!1;const t=e[a];return!(!z(t)&&t!=o||(_e(e[l])!=t&&ge(e,l),0))},gt=W,ht=(t,s)=>(!e||pe(x,s)||Zt(s))&&Le(t,((e,t)=>ft(s,t,e)),(()=>Zt(s))),ft=(e,t,s,n)=>Le(n?s:wt(s,e,t),((n,o)=>Q(It(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Zt(e,t))),It=(t,s,n,o)=>e?Q(De(De(x,t),n),(e=>_e(o)!=e[a]?Zt(t,s,n,o,e[l]):o),(()=>Zt(t,s,n,o))):F(_e(o))?Zt(t,s,n,o):o,bt=(e,t)=>Le(t?e:Ct(e),((t,s)=>Q(Lt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),Lt=(e,s)=>t?Q(De(P,e),(t=>_e(s)!=t[a]?$t(e,s,t[l]):s),(()=>$t(e,s))):F(_e(s))?$t(e,s):s,wt=(e,t,s)=>(Q(De(N,t),(([n,o])=>{Me(n,((t,s)=>{ue(e,s)||(e[s]=t)})),Me(o,(n=>{ue(e,n)||Zt(t,s,n)}))})),e),Ct=e=>(t&&(Me(_,((t,s)=>{ue(e,s)||(e[s]=t)})),Me(B,(t=>{ue(e,t)||$t(t)}))),e),Rt=e=>Fe(x,e,((e,t,s)=>{const n=Ee(),o=qe();Fe(xe(x,t,Ee),s,((e,t,s)=>{Je(e,t,s),Q(s[l],(e=>Je(n,t,e)),(()=>Ge(o,t)))})),Je(N,t,[n,o])}),((e,t)=>{Je(x,t),Je(N,t)})),Tt=e=>Fe(P,e,((e,t,s)=>{Je(P,t,s),Q(s[l],(e=>Je(_,t,e)),(()=>Ge(B,t)))}),((e,t)=>{Je(P,t),Je(_,t),me(B,t)})),vt=e=>Ie(e)?Ds():Vs(e),pt=e=>Fe(Z,e,((e,t,s)=>St(t,s)),((e,t)=>Pt(t))),St=(e,t)=>Fe(xe(Z,e,(()=>(Ut(e,1),Je(q,e,$e()),Je(Y,e,Ee()),Ee()))),t,((t,s,n)=>yt(e,t,s,n)),((t,s)=>_t(e,t,s))),yt=(e,t,s,n,o)=>Fe(xe(t,s,(()=>(qt(e,s,1),Ee()))),n,((t,n,o)=>Vt(e,s,t,n,o)),((n,r)=>jt(e,t,s,n,r,o))),Vt=(e,t,s,n,o)=>{pe(s,n)||Gt(e,t,n,1);const r=De(s,n);o!==r&&(Kt(e,t,n,r,o),Je(s,n,o))},Mt=(e,t,s,n,o)=>Q(De(t,s),(t=>Vt(e,s,t,n,o)),(()=>yt(e,t,s,wt({[n]:o},e,s)))),mt=e=>Ie(e)?xs():Ms(e),Et=e=>Fe($,e,((e,t,s)=>Ft(t,s)),((e,t)=>Bt(t))),Ft=(e,t)=>{pe($,e)||Xt(e,1);const s=De($,e);t!==s&&(Yt(e,s,t),Je($,e,t))},Wt=(e,t)=>{const[s]=De(q,e),n=s(t);return pe(De(Z,e),n)?Wt(e,t):n},At=e=>De(Z,e)??St(e,{}),Pt=e=>St(e,{}),_t=(e,t,s)=>{const[,n]=De(q,e);n(s),yt(e,t,s,{},!0)},jt=(e,t,s,n,o,r)=>{const a=De(De(N,e)?.[0],o);if(!F(a)&&!r)return Vt(e,s,n,o,a);const l=t=>{Kt(e,s,t,De(n,t)),Gt(e,s,t,-1),Je(n,t)};F(a)?l(o):He(n,l),Se(n)&&(qt(e,s,-1),Se(Je(t,s))&&(Ut(e,-1),Je(Z,e),Je(q,e),Je(Y,e)))},Bt=e=>{const t=De(_,e);if(!F(t))return Ft(e,t);Yt(e,De($,e)),Xt(e,-1),Je($,e)},Ut=(e,t)=>Nt(g,e,t),qt=(e,t,s)=>Nt(xe(M,e,Ee),t,s)&&Je(V,e,xe(V,e,(()=>0))+s),Gt=(e,t,s,n)=>{const o=De(Y,e),r=De(o,s)??0;(0==r&&1==n||1==r&&-1==n)&&Nt(xe(C,e,Ee),s,n),Je(o,s,r!=-n?r+n:null),Nt(xe(xe(m,e,Ee),t,Ee),s,n)},Kt=(e,t,s,n,o)=>{xe(xe(xe(E,e,Ee),t,Ee),s,(()=>[n,0]))[1]=o,c[3]?.(e,t,s,o)},Xt=(e,t)=>Nt(k,e,t),Yt=(e,t,s)=>{xe(D,e,(()=>[t,0]))[1]=s,c[4]?.(e,s)},Zt=(e,t,s,n,o)=>(ee(xe(xe(xe(H,e,Ee),t,Ee),s,(()=>[])),n),o),$t=(e,t,s)=>(ee(xe(J,e,(()=>[])),t),s),es=(e,t,s)=>Q(De(De(De(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...kt(Is(e,t,s))])),ts=e=>Q(De(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...kt(ws(e))])),ss=e=>Se(H)||Se(Ke[e])?0:Me(e?Ae(H):H,((t,s)=>Me(t,((t,n)=>Me(t,((t,o)=>it(Ke[e],[s,n,o],t))))))),ns=e=>Se(J)||Se(Xe[e])?0:Me(e?Oe(J):J,((t,s)=>it(Xe[e],[s],t))),os=(e,t,s,n)=>{if(!Se(e))return it(t,n,(()=>Qe(e))),He(e,((e,t)=>it(s,[...n??[],e],1==t))),1},rs=e=>{const t=Cs();t!=s&&it(te[e],void 0,t);const n=Se(he[e]),o=Se(ye[e])&&Se(Pe[e])&&Se(de[e])&&Se(be[e])&&Se(ae[e])&&Se(le[e])&&Se(ie[e])&&n&&Se(ne[e])&&Se(oe[e]),r=Se(je[e])&&Se(we[e])&&Se(re[e])&&Se(se[e]);if(!o||!r){const t=e?[Oe(g),We(C),Oe(V),We(M),Ae(m),Ae(E)]:[g,C,V,M,m,E];if(!o){os(t[0],ne[e],oe[e]),Me(t[1],((t,s)=>os(t,ae[e],le[e],[s]))),Me(t[2],((t,s)=>{0!=t&&it(ie[e],[s],us(s))}));const s=qe();Me(t[3],((t,o)=>{os(t,de[e],be[e],[o])&&!n&&(it(he[e],[o,null]),Ge(s,o))})),n||Me(t[5],((t,n)=>{if(!pe(s,n)){const s=qe();Me(t,(e=>Me(e,(([t,n],o)=>n!==t?Ge(s,o):me(e,o))))),Me(s,(t=>it(he[e],[n,t])))}})),Me(t[4],((t,s)=>Me(t,((t,n)=>os(t,ye[e],Pe[e],[s,n])))))}if(!r){let s;Me(t[5],((t,n)=>{let o;Me(t,((t,r)=>{let a;Me(t,(([t,l],i)=>{l!==t&&(it(je[e],[n,r,i],l,t,es),s=o=a=1)})),a&&it(we[e],[n,r],es)})),o&&it(re[e],[n],es)})),s&&it(se[e],void 0,es)}}},as=e=>{const t=Ss();t!=n&&it(Ye[e],void 0,t);const s=Se(tt[e])&&Se(st[e]),o=Se(nt[e])&&Se(Ze[e]);if(!s||!o){const t=e?[Oe(k),Oe(D)]:[k,D];if(s||os(t[0],tt[e],st[e]),!o){let s;Me(t[1],(([t,n],o)=>{n!==t&&(it(nt[e],[o],n,t,ts),s=1)})),s&&it(Ze[e],void 0,ts)}}},ls=(e,...t)=>(zs((()=>e(...X(t,y)))),Ws),is=()=>Ne(Z),cs=()=>ke(Z),ds=e=>ke(De(Y,y(e))),us=e=>Ce(De(Z,y(e))),gs=e=>ke(De(Z,y(e))),hs=(e,t,s,n=0,o)=>{return X(A(G((r=De(Z,y(e)),a=(e,s)=>[F(t)?s:De(e,y(t)),s],X([...r?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>lt(e,t)*(s?-1:1))),n,F(o)?o:n+o),(([,e])=>e));var r,a},fs=(e,t)=>ke(De(De(Z,y(e)),y(t))),Is=(e,t,s)=>De(De(De(Z,y(e)),y(t)),y(s)),bs=()=>Qe($),Ls=()=>ke($),ws=e=>De($,y(e)),Cs=()=>!Se(Z),Rs=e=>pe(Z,y(e)),Ts=(e,t)=>pe(De(Y,y(e)),y(t)),vs=(e,t)=>pe(De(Z,y(e)),y(t)),ps=(e,t,s)=>pe(De(De(Z,y(e)),y(t)),y(s)),Ss=()=>!Se($),ys=e=>pe($,y(e)),Vs=e=>ls((()=>(e=>Le(e,ht,Zt))(e)?pt(e):0)),Ms=e=>ls((()=>bt(e)?Et(e):0)),ms=e=>{try{vt(Qt(e))}catch{}return Ws},Es=t=>ls((()=>{if((e=Le(t,(e=>Le(e,ut))))&&(Rt(t),!Se(Z))){const e=is();Ds(),Vs(e)}})),ks=e=>ls((()=>{if(t=(e=>Le(e,ut))(e)){const s=bs();Qs(),xs(),t=!0,Tt(e),Ms(s)}})),Ds=()=>ls((()=>pt({}))),Hs=e=>ls((e=>pe(Z,e)?Pt(e):0),e),Js=(e,t)=>ls(((e,t)=>Q(De(Z,e),(s=>pe(s,t)?_t(e,s,t):0))),e,t),xs=()=>ls((()=>Et({}))),Fs=()=>ls((()=>{Rt({}),e=!1})),Qs=()=>ls((()=>{Tt({}),t=!1})),zs=(e,t)=>{if(-1!=r){Ns();const s=e();return Os(t),s}},Ns=()=>(-1!=r&&r++,1==r&&(c[0]?.(),it(ot)),Ws),Os=e=>(r>0&&(r--,0==r&&(r=1,ss(1),Se(E)||rs(1),ns(1),Se(D)||as(1),e?.(Ws)&&(Me(E,((e,t)=>Me(e,((e,s)=>Me(e,(([e],n)=>Be(Ws,t,s,n,e))))))),Ve(E),Me(D,(([e],t)=>Ue(Ws,t,e))),Ve(D)),it(rt[0],void 0),r=-1,ss(0),Se(E)||rs(0),ns(0),Se(D)||as(0),c[1]?.(),it(rt[1],void 0),c[2]?.(),r=0,s=Cs(),n=Ss(),K([g,C,V,M,m,E,H,k,D,J],Ve))),Ws),Ws={getContent:()=>[is(),bs()],getTables:is,getTableIds:cs,getTable:e=>ze(De(Z,y(e))),getTableCellIds:ds,getRowCount:us,getRowIds:gs,getSortedRowIds:hs,getRow:(e,t)=>Qe(De(De(Z,y(e)),y(t))),getCellIds:fs,getCell:Is,getValues:bs,getValueIds:Ls,getValue:ws,hasTables:Cs,hasTable:Rs,hasTableCell:Ts,hasRow:vs,hasCell:ps,hasValues:Ss,hasValue:ys,getTablesJson:()=>zt(Z),getValuesJson:()=>zt($),getJson:()=>zt([Z,$]),getTablesSchemaJson:()=>zt(x),getValuesSchemaJson:()=>zt(P),getSchemaJson:()=>zt([x,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>ls((()=>gt(e)?(([e,t])=>{(Ie(e)?Ds:Vs)(e),(Ie(t)?xs:Ms)(t)})(e):0)),setTables:Vs,setTable:(e,t)=>ls((e=>ht(t,e)?St(e,t):0),e),setRow:(e,t,s)=>ls(((e,t)=>ft(e,t,s)?yt(e,At(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let n;return ft(e,n,t)&&(e=y(e),yt(e,At(e),n=Wt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ls(((e,t)=>{if(ft(e,t,s,1)){const n=At(e);fe(s,((s,o)=>Mt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>ls(((e,t,s)=>Q(It(e,t,s,O(n)?n(Is(e,t,s)):n),(n=>Mt(e,At(e),t,s,n)))),e,t,s),setValues:Ms,setPartialValues:e=>ls((()=>bt(e,1)?fe(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>ls((e=>Q(Lt(e,O(t)?t(ws(e)):t),(t=>Ft(e,t)))),e),applyChanges:e=>ls((()=>{fe(e[0],((e,t)=>F(e)?Hs(t):fe(e,((e,s)=>F(e)?Js(t,s):fe(e,((e,n)=>Be(Ws,t,s,n,e))))))),fe(e[1],((e,t)=>Ue(Ws,t,e)))})),setTablesJson:ms,setValuesJson:e=>{try{mt(Qt(e))}catch{}return Ws},setJson:e=>ls((()=>{try{const[t,s]=Qt(e);vt(t),mt(s)}catch{ms(e)}})),setTablesSchema:Es,setValuesSchema:ks,setSchema:(e,t)=>ls((()=>{Es(e),ks(t)})),delTables:Ds,delTable:Hs,delRow:Js,delCell:(e,t,s,n)=>ls(((e,t,s)=>Q(De(Z,e),(o=>Q(De(o,t),(r=>pe(r,s)?jt(e,o,t,r,s,n):0))))),e,t,s),delValues:xs,delValue:e=>ls((e=>pe($,e)?Bt(e):0),e),delTablesSchema:Fs,delValuesSchema:Qs,delSchema:()=>ls((()=>{Fs(),Qs()})),transaction:zs,startTransaction:Ns,getTransactionChanges:()=>[Qe(E,((e,t)=>-1===De(g,t)?void 0:Qe(e,((e,s)=>-1===De(De(M,t),s)?void 0:Qe(e,(([,e])=>e),(e=>xt(e)))),Se,Ie)),Se,Ie),Qe(D,(([,e])=>e),(e=>xt(e))),1],getTransactionLog:()=>[!Se(E),!Se(D),Ne(E,Jt,xt),Ne(H),Qe(D,Jt,xt),Qe(J),Qe(g),ze(M),Ne(m),Qe(k)],finishTransaction:Os,forEachTable:e=>Me(Z,((t,s)=>e(s,(e=>Me(t,((t,s)=>e(s,(e=>He(t,e))))))))),forEachTableCell:(e,t)=>He(De(Y,y(e)),t),forEachRow:(e,t)=>Me(De(Z,y(e)),((e,s)=>t(s,(t=>He(e,t))))),forEachCell:(e,t,s)=>He(De(De(Z,y(e)),y(t)),s),forEachValue:e=>He($,e),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let l=hs(e,t,s,n,o);return at((()=>{const a=hs(e,t,s,n,o);U(a,l)||(l=a,r(Ws,e,t,s,n,o,l))}),he[a?1:0],[e,t],[cs])},addStartTransactionListener:e=>at(e,ot),addWillFinishTransactionListener:e=>at(e,rt[0]),addDidFinishTransactionListener:e=>at(e,rt[1]),callListener:e=>(dt(e),Ws),delListener:e=>(ct(e),Ws),getListenerStats:()=>({hasTables:Dt(te),tables:Dt(se),tableIds:Dt(ne),hasTable:Dt(oe),table:Dt(re),tableCellIds:Dt(ae),hasTableCell:Dt(le,Te),rowCount:Dt(ie),rowIds:Dt(de),sortedRowIds:Dt(he),hasRow:Dt(be,Te),row:Dt(we,Te),cellIds:Dt(ye,Te),hasCell:Dt(Pe,ve),cell:Dt(je,ve),invalidCell:Dt(Ke,ve),hasValues:Dt(Ye),values:Dt(Ze),valueIds:Dt(tt),hasValue:Dt(st),value:Dt(nt),invalidValue:Dt(Xe),transaction:Re(ot)+Dt(rt)}),isMergeable:()=>!1,createStore:Ot,addListener:at,callListeners:it,setInternalListeners:(e,t,s,n,o)=>c=[e,t,s,n,o]};return fe({[u+f]:[0,te,[],()=>[Cs()]],[f]:[0,se],[I]:[0,ne],[u+h]:[1,oe,[cs],e=>[Rs(...e)]],[h]:[1,re,[cs]],[h+T]:[1,ae,[cs]],[u+h+R]:[2,le,[cs,ds],e=>[Ts(...e)]],[L]:[1,ie,[cs]],[w]:[1,de,[cs]],[u+b]:[2,be,[cs,gs],e=>[vs(...e)]],[b]:[2,we,[cs,gs]],[T]:[2,ye,[cs,gs]],[u+R]:[3,Pe,[cs,gs,fs],e=>[ps(...e)]],[R]:[3,je,[cs,gs,fs],e=>kt(Is(...e))],InvalidCell:[3,Ke],[u+p]:[0,Ye,[],()=>[Ss()]],[p]:[0,Ze],[S]:[0,tt],[u+v]:[1,st,[Ls],e=>[ys(...e)]],[v]:[1,nt,[Ls],e=>kt(ws(e[0]))],InvalidValue:[1,Xe]},(([e,t,s,n],o)=>{Ws[d+o+i]=(...o)=>at(o[e],t[o[e+1]?1:0],e>0?A(o,0,e):void 0,s,n)})),ce(Ws)},Wt=2**36,At=2**30,Pt=2**24,_t=2**18,jt=4096,Bt={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},Ut=(e=t)=>[Vt(e),Vt(e)],qt=e=>{let s=1,n=Ut(),o=0;const r=Ee(),a=qe(),[l,c]=(e=>{let t=0,s=-1;const n=Q(e,(e=>{const t=bt(e);return ot(t/Pt)+ot(t/_t)+ot(t/jt)+ot(t/64)+ot(t)}),(()=>it(5))),o=e=>{const n=t,[o,r]=F(e)||""==e?[0,0]:[rt(a=e,0)*Wt+rt(a,1)*At+rt(a,2)*Pt+rt(a,3)*_t+rt(a,4)*jt+64*rt(a,5)+rt(a,6),rt(a,7)*_t+rt(a,8)*jt+64*rt(a,9)+rt(a,10)];var a;t=D(n,o,E.HLC_TIME??Date.now()),s=t==n?t==o?D(s,r):s:t==o?r:-1};return[()=>{return o(),r=++s,ot((e=t)/Wt)+ot(e/At)+ot(e/Pt)+ot(e/_t)+ot(e/jt)+ot(e/64)+ot(e)+ot(r/_t)+ot(r/jt)+ot(r/64)+ot(r)+n;var e,r},o]})(e),u=Ot(),g=e=>{const t=s;return s=0,e(),s=t,L},h=(e,s=0)=>{const o={},r={},[[a,l=t,i=0],d]=e,[u,g]=n,[h,I,b]=u;let L=s?i:b,w=l;he(a,(([e,n=t,r=0],a)=>{const l=xe(h,a,Vt),[i,c,d]=l;let u=s?r:d,g=n;he(e,((e,t)=>{const[n,r,l]=f(e,xe(i,t,Vt),be(be(o,a,de),t,de),s);u^=s?0:(r?Tt(t,r):0)^Tt(t,l),g=pt(g,n)})),u^=s?0:vt(c,n),St(l,u,n),L^=s?0:(d?Tt(a,d):0)^Tt(a,l[2]),w=pt(w,g)})),L^=s?0:vt(I,l),St(u,L,l);const[C]=f(d,g,r,s);return c(pt(w,C)),[o,r,1]},f=(e,s,n,o)=>{const[r,a=t,l=0]=e,[i,c,d]=s;let u=a,g=o?l:d;return he(r,(([e,s,r=0],a)=>{const l=xe(i,a,(()=>[void 0,t,0])),[,c,d]=l;(!c||s>c)&&(St(l,o?r:bt(zt(e??null)+":"+s),s),l[0]=e,n[a]=e,g^=o?0:Tt(a,d)^Tt(a,l[2]),u=pt(u,s))})),g^=o?0:vt(c,a),St(s,g,a),[u,d,s[2]]},I=()=>[Mt(n[0],(e=>Mt(e,(e=>Mt(e))))),Mt(n[1])],b=e=>g((()=>u.applyChanges(h(e)))),L={getMergeableContent:I,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Qe(n[0][0],Rt),getMergeableTableDiff:e=>{const t=yt(n[0][1]),s={};return He(n[0][0],((n,[o,r,a])=>ue(e,n)?a!=e[n]?s[n]=a:0:t[0][n]=mt([o,r],(e=>mt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return he(e,((e,s)=>Q(De(n[0][0],s),(([n,,o])=>o!=e?He(n,((e,[,,n])=>be(t,s,de)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=yt(n[0][1]),s={};return he(e,((e,o)=>He(De(n[0][0],o)?.[0],((n,[r,a,l])=>ue(e,n)?l!==e[n]?be(s,o,de)[n]=l:0:be(t[0],o,yt)[0][n]=mt([r,a]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return he(e,((e,s)=>Q(De(n[0][0],s),(([n])=>he(e,((e,o)=>Q(De(n,o),(([n,,r])=>r!==e?He(n,((e,[,,n])=>be(be(t,s,de),o,de)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,o={};return he(e,((e,s)=>he(e,((e,n)=>Q(De(t,s),(([t,r])=>Q(De(t,n),(([t,a])=>He(t,((t,[l,i,c])=>c!==e[t]?be(be(o,s,(()=>yt(r)))[0],n,(()=>yt(a)))[0][t]=[l,i]:0)))))))))),Ct(o,s)},getMergeableValueHashes:()=>Qe(n[1][0],Rt),getMergeableValueDiff:e=>{const[,[t,s]]=n,o=Qe(t,wt,(([,,t],s)=>t==e?.[s]));return Ct(o,s)},setMergeableContent:e=>g((()=>(e=>W(e)&&2==P(e)&&Et(e[0],(e=>Le(e,(e=>Et(e,(e=>Le(e,(e=>Et(e,(e=>Le(e,(e=>Et(e,je)),void 0,1)))),void 0,1)))),void 0,1)))&&Et(e[1],(e=>Le(e,(e=>Et(e,je)),void 0,1))))(e)?u.transaction((()=>{u.delTables().delValues(),n=Ut(),u.applyChanges(h(e,1))})):0)),setDefaultContent:e=>(u.transaction((()=>{o=1,u.setContent(e),o=0})),L),getTransactionMergeableChanges:()=>{const[[e,t],[s,o]]=n,l={};Me(r,((t,s)=>Q(De(e,s),(([e,n])=>{const o={};Me(t,((t,s)=>Q(De(e,s),(([e,n])=>{const r={};Me(t,(t=>{Q(De(e,t),(([e,s])=>r[t]=Ct(e,s)))})),o[s]=Ct(r,n)})))),l[s]=Ct(o,n)}))));const i={};return Me(a,(e=>Q(De(s,e),(([t,s])=>i[e]=Ct(t,s))))),[Ct(l,t),Ct(i,o),1]},applyMergeableChanges:b,merge:e=>{const t=I(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return u.setInternalListeners((()=>{}),(()=>{}),(()=>{Ve(r),Ve(a)}),((e,n,a,i)=>{Ge(xe(xe(r,e,Ee),n,qe),a),s&&h([[{[e]:[{[n]:[{[a]:[i,o?t:l()]}]}]}],[{}],1])}),((e,n)=>{Ge(a,e),s&&h([[{}],[{[e]:[n,o?t:l()]}],1])})),fe(u,((e,t)=>L[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||t=="call"+i?(...t)=>(e(...t),L):V(t,d)&&M(t,i)?(...s)=>{const n=Bt[A(t,3,-8)]??0,o=s[n];return s[n]=(e,...t)=>o(L,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),ce(L)};export{tt as createCheckpoints,ct as createIndexes,qt as createMergeableStore,gt as createMetrics,ht as createQueries,ft as createRelationships,Ot as createStore,lt as defaultSorter,it as getUniqueId};
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tinybase",
3
- "version": "5.3.2",
3
+ "version": "5.3.3",
4
4
  "author": "jamesgpearce",
5
5
  "repository": "github:tinyplex/tinybase",
6
6
  "license": "MIT",
@@ -21,10 +21,10 @@
21
21
  "sideEffects": false,
22
22
  "peerDependencies": {
23
23
  "@automerge/automerge-repo": "^1.2.0",
24
- "@electric-sql/pglite": "^0.2.10",
24
+ "@electric-sql/pglite": "^0.2.12",
25
25
  "@libsql/client": "^0.14.0",
26
- "@powersync/common": "^1.18.1",
27
- "@sqlite.org/sqlite-wasm": "^3.46.1-build3",
26
+ "@powersync/common": "^1.20.0",
27
+ "@sqlite.org/sqlite-wasm": "^3.46.1-build4",
28
28
  "@vlcn.io/crsqlite-wasm": "^0.16.0",
29
29
  "electric-sql": "^0.12.1",
30
30
  "expo": "^51.0.0",
@@ -37,7 +37,7 @@
37
37
  "react-dom": "^18.2.0",
38
38
  "sqlite3": "^5.1.7",
39
39
  "ws": "^8.17.0",
40
- "yjs": "^13.6.19"
40
+ "yjs": "^13.6.20"
41
41
  },
42
42
  "peerDependenciesMeta": {
43
43
  "@automerge/automerge-repo": {
@@ -24,8 +24,6 @@ const errorNew = (message) => {
24
24
  throw new Error(message);
25
25
  };
26
26
 
27
- const arrayNew = (size2, cb) =>
28
- arrayMap(new Array(size2).fill(0), (_, index) => cb(index));
29
27
  const arrayForEach = (array, cb) => array.forEach(cb);
30
28
  const arrayJoin = (array, sep = EMPTY_STRING) => array.join(sep);
31
29
  const arrayMap = (array, cb) => array.map(cb);
@@ -445,9 +443,11 @@ const getWrappedCommand = (executeCommand, onSqlCommand) =>
445
443
  }
446
444
  : executeCommand;
447
445
  const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
448
- const getPlaceholders = (array) =>
446
+ const escapeColumnNames = (...columnNames) =>
447
+ arrayJoin(arrayMap(columnNames, escapeId), COMMA);
448
+ const getPlaceholders = (array, offset = [1]) =>
449
449
  arrayJoin(
450
- arrayMap(array, (_, index) => '$' + (index + 1)),
450
+ arrayMap(array, () => '$' + offset[0]++),
451
451
  COMMA,
452
452
  );
453
453
 
@@ -464,7 +464,7 @@ const getCommandFunctions = (
464
464
  querySchema,
465
465
  onIgnoredError,
466
466
  columnType,
467
- orReplace,
467
+ upsert = defaultUpsert,
468
468
  encode,
469
469
  decode,
470
470
  ) => {
@@ -505,26 +505,26 @@ const getCommandFunctions = (
505
505
  deleteEmptyTable,
506
506
  partial = false,
507
507
  ) => {
508
- const tableCellOrValueIds = setNew();
508
+ const settingColumnNameSet = setNew();
509
509
  objToArray(content ?? {}, (contentRow) =>
510
510
  arrayMap(objIds(contentRow ?? {}), (cellOrValueId) =>
511
- setAdd(tableCellOrValueIds, cellOrValueId),
511
+ setAdd(settingColumnNameSet, cellOrValueId),
512
512
  ),
513
513
  );
514
- const tableColumnNames = collValues(tableCellOrValueIds);
514
+ const settingColumnNames = collValues(settingColumnNameSet);
515
515
  if (
516
516
  !partial &&
517
517
  deleteEmptyTable &&
518
- arrayIsEmpty(tableColumnNames) &&
518
+ arrayIsEmpty(settingColumnNames) &&
519
519
  collHas(schemaMap, tableName)
520
520
  ) {
521
521
  await databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
522
522
  mapSet(schemaMap, tableName);
523
523
  return;
524
524
  }
525
- const tableSchemaColumns = mapGet(schemaMap, tableName);
526
- const currentColumnNames = setNew(collValues(tableSchemaColumns));
527
- if (!arrayIsEmpty(tableColumnNames)) {
525
+ const currentColumnNames = mapGet(schemaMap, tableName);
526
+ const unaccountedColumnNames = setNew(collValues(currentColumnNames));
527
+ if (!arrayIsEmpty(settingColumnNames)) {
528
528
  if (!collHas(schemaMap, tableName)) {
529
529
  await databaseExecuteCommand(
530
530
  'CREATE ' +
@@ -532,27 +532,28 @@ const getCommandFunctions = (
532
532
  escapeId(tableName) +
533
533
  `(${escapeId(rowIdColumnName)}${columnType} PRIMARY KEY${arrayJoin(
534
534
  arrayMap(
535
- tableColumnNames,
536
- (columnName) => COMMA + escapeId(columnName) + columnType,
535
+ settingColumnNames,
536
+ (settingColumnName) =>
537
+ COMMA + escapeId(settingColumnName) + columnType,
537
538
  ),
538
539
  )});`,
539
540
  );
540
541
  mapSet(
541
542
  schemaMap,
542
543
  tableName,
543
- setNew([rowIdColumnName, ...tableColumnNames]),
544
+ setNew([rowIdColumnName, ...settingColumnNames]),
544
545
  );
545
546
  } else {
546
547
  await promiseAll(
547
548
  arrayMap(
548
- [rowIdColumnName, ...tableColumnNames],
549
- async (columnName, index) => {
550
- if (!collDel(currentColumnNames, columnName)) {
549
+ [rowIdColumnName, ...settingColumnNames],
550
+ async (settingColumnName, index) => {
551
+ if (!collDel(unaccountedColumnNames, settingColumnName)) {
551
552
  await databaseExecuteCommand(
552
553
  ALTER_TABLE +
553
554
  escapeId(tableName) +
554
555
  'ADD' +
555
- escapeId(columnName) +
556
+ escapeId(settingColumnName) +
556
557
  columnType,
557
558
  );
558
559
  if (index == 0) {
@@ -562,7 +563,7 @@ const getCommandFunctions = (
562
563
  `(${escapeId(rowIdColumnName)})`,
563
564
  );
564
565
  }
565
- setAdd(tableSchemaColumns, columnName);
566
+ setAdd(currentColumnNames, settingColumnName);
566
567
  }
567
568
  },
568
569
  ),
@@ -571,17 +572,20 @@ const getCommandFunctions = (
571
572
  }
572
573
  await promiseAll([
573
574
  ...(!partial && deleteEmptyColumns
574
- ? arrayMap(collValues(currentColumnNames), async (columnName) => {
575
- if (columnName != rowIdColumnName) {
576
- await databaseExecuteCommand(
577
- ALTER_TABLE +
578
- escapeId(tableName) +
579
- 'DROP' +
580
- escapeId(columnName),
581
- );
582
- collDel(tableSchemaColumns, columnName);
583
- }
584
- })
575
+ ? arrayMap(
576
+ collValues(unaccountedColumnNames),
577
+ async (unaccountedColumnName) => {
578
+ if (unaccountedColumnName != rowIdColumnName) {
579
+ await databaseExecuteCommand(
580
+ ALTER_TABLE +
581
+ escapeId(tableName) +
582
+ 'DROP' +
583
+ escapeId(unaccountedColumnName),
584
+ );
585
+ collDel(currentColumnNames, unaccountedColumnName);
586
+ }
587
+ },
588
+ )
585
589
  : []),
586
590
  ]);
587
591
  if (partial) {
@@ -601,39 +605,34 @@ const getCommandFunctions = (
601
605
  '=$1',
602
606
  [rowId],
603
607
  );
604
- } else if (!arrayIsEmpty(tableColumnNames)) {
608
+ } else if (!arrayIsEmpty(settingColumnNames)) {
605
609
  await upsert(
606
610
  databaseExecuteCommand,
607
611
  tableName,
608
612
  rowIdColumnName,
609
613
  objIds(row),
610
- [
611
- rowId,
612
- ...(encode
614
+ {
615
+ [rowId]: encode
613
616
  ? arrayMap(objValues(row), encode)
614
- : objValues(row)),
615
- ],
616
- orReplace,
617
+ : objValues(row),
618
+ },
619
+ currentColumnNames,
617
620
  );
618
621
  }
619
622
  }),
620
623
  );
621
624
  }
622
625
  } else {
623
- if (!arrayIsEmpty(tableColumnNames)) {
626
+ if (!arrayIsEmpty(settingColumnNames)) {
624
627
  const changingColumnNames = arrayFilter(
625
628
  collValues(mapGet(schemaMap, tableName)),
626
- (columnName) => columnName != rowIdColumnName,
629
+ (changingColumnName) => changingColumnName != rowIdColumnName,
627
630
  );
628
- const params = [];
631
+ const rows = {};
629
632
  const deleteRowIds = [];
630
633
  objToArray(content ?? {}, (row, rowId) => {
631
- arrayPush(
632
- params,
633
- rowId,
634
- ...arrayMap(changingColumnNames, (cellId) =>
635
- encode ? encode(row?.[cellId]) : row?.[cellId],
636
- ),
634
+ rows[rowId] = arrayMap(changingColumnNames, (cellId) =>
635
+ encode ? encode(row?.[cellId]) : row?.[cellId],
637
636
  );
638
637
  arrayPush(deleteRowIds, rowId);
639
638
  });
@@ -642,8 +641,7 @@ const getCommandFunctions = (
642
641
  tableName,
643
642
  rowIdColumnName,
644
643
  changingColumnNames,
645
- params,
646
- orReplace,
644
+ rows,
647
645
  );
648
646
  await databaseExecuteCommand(
649
647
  DELETE_FROM +
@@ -673,61 +671,45 @@ const getCommandFunctions = (
673
671
  };
674
672
  return [refreshSchema, loadTable, saveTable, transaction];
675
673
  };
676
- const upsert = async (
674
+ const defaultUpsert = async (
677
675
  executeCommand,
678
676
  tableName,
679
677
  rowIdColumnName,
680
678
  changingColumnNames,
681
- params,
682
- orReplace = 0,
683
- ) =>
679
+ rows,
680
+ ) => {
681
+ const offset = [1];
684
682
  await executeCommand(
685
- 'INSERT ' +
686
- (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
687
- 'INTO' +
683
+ 'INSERT INTO' +
688
684
  escapeId(tableName) +
689
685
  '(' +
686
+ escapeColumnNames(rowIdColumnName, ...changingColumnNames) +
687
+ ')VALUES' +
688
+ arrayJoin(
689
+ objToArray(
690
+ rows,
691
+ (row) =>
692
+ '($' + offset[0]++ + ',' + getPlaceholders(row, offset) + ')',
693
+ ),
694
+ COMMA,
695
+ ) +
696
+ 'ON CONFLICT(' +
690
697
  escapeId(rowIdColumnName) +
698
+ ')DO UPDATE SET' +
691
699
  arrayJoin(
692
700
  arrayMap(
693
701
  changingColumnNames,
694
- (columnName) => COMMA + escapeId(columnName),
702
+ (columnName) =>
703
+ escapeId(columnName) + '=excluded.' + escapeId(columnName),
695
704
  ),
696
- ) +
697
- ')VALUES' +
698
- getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
699
- (orReplace
700
- ? EMPTY_STRING
701
- : 'ON CONFLICT(' +
702
- escapeId(rowIdColumnName) +
703
- ')DO UPDATE SET' +
704
- arrayJoin(
705
- arrayMap(
706
- changingColumnNames,
707
- (columnName) =>
708
- escapeId(columnName) + '=excluded.' + escapeId(columnName),
709
- ),
710
- COMMA,
711
- )),
712
- arrayMap(params, (param) => param ?? null),
713
- );
714
- const getUpsertPlaceholders = (array, columnCount) =>
715
- arrayJoin(
716
- arrayNew(
717
- size(array) / columnCount,
718
- (row) =>
719
- '(' +
720
- arrayJoin(
721
- arrayNew(
722
- columnCount,
723
- (column) => '$' + (row * columnCount + column + 1),
724
- ),
725
- COMMA,
726
- ) +
727
- ')',
728
- ),
729
- COMMA,
705
+ COMMA,
706
+ ),
707
+ objToArray(rows, (row, id) => [
708
+ id,
709
+ ...arrayMap(row, (value) => value ?? null),
710
+ ]).flat(),
730
711
  );
712
+ };
731
713
 
732
714
  const createJsonPersister = (
733
715
  store,
@@ -743,7 +725,7 @@ const createJsonPersister = (
743
725
  thing,
744
726
  getThing,
745
727
  columnType,
746
- orReplace,
728
+ upsert,
747
729
  ) => {
748
730
  const [refreshSchema, loadTable, saveTable, transaction] =
749
731
  getCommandFunctions(
@@ -752,7 +734,7 @@ const createJsonPersister = (
752
734
  querySchema,
753
735
  onIgnoredError,
754
736
  columnType,
755
- orReplace,
737
+ upsert,
756
738
  );
757
739
  const getPersisted = async () =>
758
740
  await transaction(async () => {
@@ -815,7 +797,7 @@ const createTabularPersister = (
815
797
  thing,
816
798
  getThing,
817
799
  columnType,
818
- orReplace,
800
+ upsert,
819
801
  encode,
820
802
  decode,
821
803
  ) => {
@@ -826,7 +808,7 @@ const createTabularPersister = (
826
808
  querySchema,
827
809
  onIgnoredError,
828
810
  columnType,
829
- orReplace,
811
+ upsert,
830
812
  encode,
831
813
  decode,
832
814
  );
@@ -1039,7 +1021,7 @@ const createCustomSqlitePersister = (
1039
1021
  persist,
1040
1022
  thing,
1041
1023
  getThing = 'getDb',
1042
- orReplace,
1024
+ upsert,
1043
1025
  ) => {
1044
1026
  let dataVersion;
1045
1027
  let schemaVersion;
@@ -1108,7 +1090,7 @@ const createCustomSqlitePersister = (
1108
1090
  thing,
1109
1091
  getThing,
1110
1092
  EMPTY_STRING,
1111
- orReplace,
1093
+ upsert,
1112
1094
  (cellOrValue) =>
1113
1095
  cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1114
1096
  void 0,
@@ -1202,7 +1184,7 @@ const createCustomPostgreSqlPersister = (
1202
1184
  thing,
1203
1185
  getThing,
1204
1186
  'text',
1205
- 0,
1187
+ void 0,
1206
1188
  (cellOrValue) => jsonString(cellOrValue),
1207
1189
  (field) => jsonParse(field),
1208
1190
  );