tinybase 5.1.0-beta.0 → 5.1.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (883) hide show
  1. package/@types/persisters/index.d.cts +3 -1
  2. package/@types/persisters/index.d.ts +3 -1
  3. package/@types/persisters/with-schemas/index.d.cts +3 -1
  4. package/@types/persisters/with-schemas/index.d.ts +3 -1
  5. package/@types/synchronizers/index.d.cts +39 -23
  6. package/@types/synchronizers/index.d.ts +39 -23
  7. package/@types/synchronizers/synchronizer-broadcast-channel/index.d.cts +12 -1
  8. package/@types/synchronizers/synchronizer-broadcast-channel/index.d.ts +12 -1
  9. package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.cts +14 -1
  10. package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.ts +14 -1
  11. package/@types/synchronizers/synchronizer-local/index.d.cts +12 -3
  12. package/@types/synchronizers/synchronizer-local/index.d.ts +12 -3
  13. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +14 -3
  14. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +14 -3
  15. package/@types/synchronizers/synchronizer-ws-client/index.d.cts +13 -1
  16. package/@types/synchronizers/synchronizer-ws-client/index.d.ts +13 -1
  17. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +15 -1
  18. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +15 -1
  19. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +157 -29
  20. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +157 -29
  21. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +178 -29
  22. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +178 -29
  23. package/@types/synchronizers/with-schemas/index.d.cts +41 -23
  24. package/@types/synchronizers/with-schemas/index.d.ts +41 -23
  25. package/@types/ui-react/index.d.cts +62 -45
  26. package/@types/ui-react/index.d.ts +62 -45
  27. package/@types/ui-react/with-schemas/index.d.cts +83 -59
  28. package/@types/ui-react/with-schemas/index.d.ts +83 -59
  29. package/cjs/es6/index.cjs +101 -86
  30. package/cjs/es6/min/index.cjs +1 -1
  31. package/cjs/es6/min/index.cjs.gz +0 -0
  32. package/cjs/es6/min/persisters/index.cjs +1 -1
  33. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  34. package/cjs/es6/min/persisters/persister-automerge/index.cjs +1 -1
  35. package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
  36. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  37. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  38. package/cjs/es6/min/persisters/persister-browser/index.cjs +1 -1
  39. package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
  40. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  41. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  42. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  43. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  44. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  45. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  46. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  47. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  48. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  49. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  50. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  51. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  52. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  53. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  54. package/cjs/es6/min/persisters/persister-file/index.cjs +1 -1
  55. package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
  56. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  57. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  58. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs +1 -1
  59. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  60. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  64. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  65. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  66. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +1 -1
  67. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  68. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  69. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  70. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  71. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  72. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  73. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  74. package/cjs/es6/min/persisters/persister-remote/index.cjs +1 -1
  75. package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
  76. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  77. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  78. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  79. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  80. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  81. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  82. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  83. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  84. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  85. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  86. package/cjs/es6/min/persisters/persister-yjs/index.cjs +1 -1
  87. package/cjs/es6/min/persisters/persister-yjs/index.cjs.gz +0 -0
  88. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  89. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  90. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  91. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  92. package/cjs/es6/min/synchronizers/index.cjs +1 -1
  93. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  94. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  95. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  96. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  97. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  98. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
  99. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  100. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  101. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  102. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  103. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  104. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  105. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  106. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  107. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  108. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  109. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  110. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
  111. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  112. package/cjs/es6/min/ui-react/index.cjs +1 -1
  113. package/cjs/es6/min/ui-react/index.cjs.gz +0 -0
  114. package/cjs/es6/min/ui-react/with-schemas/index.cjs +1 -1
  115. package/cjs/es6/min/ui-react/with-schemas/index.cjs.gz +0 -0
  116. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  117. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  118. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  119. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  120. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  121. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  122. package/cjs/es6/persisters/index.cjs +30 -21
  123. package/cjs/es6/persisters/persister-automerge/index.cjs +29 -24
  124. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +29 -24
  125. package/cjs/es6/persisters/persister-browser/index.cjs +35 -30
  126. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +35 -30
  127. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +29 -24
  128. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +29 -24
  129. package/cjs/es6/persisters/persister-electric-sql/index.cjs +29 -24
  130. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +29 -24
  131. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +29 -24
  132. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +29 -24
  133. package/cjs/es6/persisters/persister-file/index.cjs +41 -31
  134. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +41 -31
  135. package/cjs/es6/persisters/persister-indexed-db/index.cjs +29 -24
  136. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +29 -24
  137. package/cjs/es6/persisters/persister-libsql/index.cjs +286 -281
  138. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +286 -281
  139. package/cjs/es6/persisters/persister-partykit-client/index.cjs +29 -24
  140. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +29 -24
  141. package/cjs/es6/persisters/persister-powersync/index.cjs +29 -24
  142. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +29 -24
  143. package/cjs/es6/persisters/persister-remote/index.cjs +35 -30
  144. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +35 -30
  145. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +29 -24
  146. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +29 -24
  147. package/cjs/es6/persisters/persister-sqlite3/index.cjs +29 -24
  148. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +29 -24
  149. package/cjs/es6/persisters/persister-yjs/index.cjs +29 -24
  150. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +29 -24
  151. package/cjs/es6/persisters/with-schemas/index.cjs +30 -21
  152. package/cjs/es6/synchronizers/index.cjs +113 -102
  153. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +109 -104
  154. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +109 -104
  155. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +108 -105
  156. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +108 -105
  157. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +130 -119
  158. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +130 -119
  159. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +691 -37
  160. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +691 -37
  161. package/cjs/es6/synchronizers/with-schemas/index.cjs +113 -102
  162. package/cjs/es6/ui-react/index.cjs +14 -34
  163. package/cjs/es6/ui-react/with-schemas/index.cjs +14 -34
  164. package/cjs/es6/ui-react-inspector/index.cjs +26 -24
  165. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +26 -24
  166. package/cjs/es6/with-schemas/index.cjs +101 -86
  167. package/cjs/index.cjs +105 -91
  168. package/cjs/indexes/index.cjs +1 -1
  169. package/cjs/indexes/with-schemas/index.cjs +1 -1
  170. package/cjs/metrics/index.cjs +3 -3
  171. package/cjs/metrics/with-schemas/index.cjs +3 -3
  172. package/cjs/min/index.cjs +1 -1
  173. package/cjs/min/index.cjs.gz +0 -0
  174. package/cjs/min/persisters/index.cjs +1 -1
  175. package/cjs/min/persisters/index.cjs.gz +0 -0
  176. package/cjs/min/persisters/persister-automerge/index.cjs +1 -1
  177. package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
  178. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  179. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  180. package/cjs/min/persisters/persister-browser/index.cjs +1 -1
  181. package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
  182. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  183. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  184. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  185. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  186. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  187. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  188. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  189. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  190. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  191. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  192. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  193. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  194. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  195. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  196. package/cjs/min/persisters/persister-file/index.cjs +1 -1
  197. package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
  198. package/cjs/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  199. package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  200. package/cjs/min/persisters/persister-indexed-db/index.cjs +1 -1
  201. package/cjs/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  202. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  203. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  204. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  205. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  206. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  207. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  208. package/cjs/min/persisters/persister-partykit-client/index.cjs +1 -1
  209. package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  210. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  211. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  212. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  213. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  214. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  215. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  216. package/cjs/min/persisters/persister-remote/index.cjs +1 -1
  217. package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
  218. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  219. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  220. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  221. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  222. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  223. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  224. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  225. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  226. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  227. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  228. package/cjs/min/persisters/persister-yjs/index.cjs +1 -1
  229. package/cjs/min/persisters/persister-yjs/index.cjs.gz +0 -0
  230. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  231. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  232. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  233. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  234. package/cjs/min/synchronizers/index.cjs +1 -1
  235. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  236. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  237. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  238. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  239. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  240. package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
  241. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  242. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  243. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  244. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  245. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  246. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  247. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  248. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  249. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  250. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  251. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  252. package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
  253. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  254. package/cjs/min/ui-react/index.cjs +1 -1
  255. package/cjs/min/ui-react/index.cjs.gz +0 -0
  256. package/cjs/min/ui-react/with-schemas/index.cjs +1 -1
  257. package/cjs/min/ui-react/with-schemas/index.cjs.gz +0 -0
  258. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  259. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  260. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  261. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  262. package/cjs/min/with-schemas/index.cjs +1 -1
  263. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  264. package/cjs/persisters/index.cjs +28 -19
  265. package/cjs/persisters/persister-automerge/index.cjs +27 -22
  266. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +27 -22
  267. package/cjs/persisters/persister-browser/index.cjs +33 -28
  268. package/cjs/persisters/persister-browser/with-schemas/index.cjs +33 -28
  269. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +28 -23
  270. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +28 -23
  271. package/cjs/persisters/persister-electric-sql/index.cjs +28 -23
  272. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +28 -23
  273. package/cjs/persisters/persister-expo-sqlite/index.cjs +28 -23
  274. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +28 -23
  275. package/cjs/persisters/persister-file/index.cjs +39 -29
  276. package/cjs/persisters/persister-file/with-schemas/index.cjs +39 -29
  277. package/cjs/persisters/persister-indexed-db/index.cjs +27 -22
  278. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +27 -22
  279. package/cjs/persisters/persister-libsql/index.cjs +194 -189
  280. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +194 -189
  281. package/cjs/persisters/persister-partykit-client/index.cjs +27 -22
  282. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +27 -22
  283. package/cjs/persisters/persister-powersync/index.cjs +28 -23
  284. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +28 -23
  285. package/cjs/persisters/persister-remote/index.cjs +33 -28
  286. package/cjs/persisters/persister-remote/with-schemas/index.cjs +33 -28
  287. package/cjs/persisters/persister-sqlite-wasm/index.cjs +28 -23
  288. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +28 -23
  289. package/cjs/persisters/persister-sqlite3/index.cjs +28 -23
  290. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +28 -23
  291. package/cjs/persisters/persister-yjs/index.cjs +29 -24
  292. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +29 -24
  293. package/cjs/persisters/with-schemas/index.cjs +28 -19
  294. package/cjs/queries/index.cjs +2 -2
  295. package/cjs/queries/with-schemas/index.cjs +2 -2
  296. package/cjs/relationships/index.cjs +1 -1
  297. package/cjs/relationships/with-schemas/index.cjs +1 -1
  298. package/cjs/synchronizers/index.cjs +105 -95
  299. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +101 -97
  300. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +101 -97
  301. package/cjs/synchronizers/synchronizer-local/index.cjs +100 -98
  302. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +100 -98
  303. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +119 -112
  304. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +119 -112
  305. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +524 -24
  306. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +524 -24
  307. package/cjs/synchronizers/with-schemas/index.cjs +105 -95
  308. package/cjs/ui-react/index.cjs +12 -12
  309. package/cjs/ui-react/with-schemas/index.cjs +12 -12
  310. package/cjs/ui-react-inspector/index.cjs +24 -22
  311. package/cjs/ui-react-inspector/with-schemas/index.cjs +24 -22
  312. package/cjs/with-schemas/index.cjs +105 -91
  313. package/es6/index.js +101 -86
  314. package/es6/min/index.js +1 -1
  315. package/es6/min/index.js.gz +0 -0
  316. package/es6/min/persisters/index.js +1 -1
  317. package/es6/min/persisters/index.js.gz +0 -0
  318. package/es6/min/persisters/persister-automerge/index.js +1 -1
  319. package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  320. package/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  321. package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  322. package/es6/min/persisters/persister-browser/index.js +1 -1
  323. package/es6/min/persisters/persister-browser/index.js.gz +0 -0
  324. package/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  325. package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  326. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  327. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  328. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  329. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  330. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  331. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  332. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  333. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  334. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  335. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  336. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  337. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  338. package/es6/min/persisters/persister-file/index.js +1 -1
  339. package/es6/min/persisters/persister-file/index.js.gz +0 -0
  340. package/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  341. package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  342. package/es6/min/persisters/persister-indexed-db/index.js +1 -1
  343. package/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  344. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  345. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  346. package/es6/min/persisters/persister-libsql/index.js +1 -1
  347. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  348. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  349. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  350. package/es6/min/persisters/persister-partykit-client/index.js +1 -1
  351. package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  352. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  353. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  354. package/es6/min/persisters/persister-powersync/index.js +1 -1
  355. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  356. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  357. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  358. package/es6/min/persisters/persister-remote/index.js +1 -1
  359. package/es6/min/persisters/persister-remote/index.js.gz +0 -0
  360. package/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  361. package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  362. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  363. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  364. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  365. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  366. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  367. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  368. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  369. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  370. package/es6/min/persisters/persister-yjs/index.js +1 -1
  371. package/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  372. package/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  373. package/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  374. package/es6/min/persisters/with-schemas/index.js +1 -1
  375. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  376. package/es6/min/synchronizers/index.js +1 -1
  377. package/es6/min/synchronizers/index.js.gz +0 -0
  378. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  379. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  380. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  381. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  382. package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  383. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  384. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  385. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  386. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  387. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  388. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  389. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  390. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  391. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  392. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  393. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  394. package/es6/min/synchronizers/with-schemas/index.js +1 -1
  395. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  396. package/es6/min/ui-react/index.js +1 -1
  397. package/es6/min/ui-react/index.js.gz +0 -0
  398. package/es6/min/ui-react/with-schemas/index.js +1 -1
  399. package/es6/min/ui-react/with-schemas/index.js.gz +0 -0
  400. package/es6/min/ui-react-inspector/index.js +1 -1
  401. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  402. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  403. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  404. package/es6/min/with-schemas/index.js +1 -1
  405. package/es6/min/with-schemas/index.js.gz +0 -0
  406. package/es6/persisters/index.js +30 -21
  407. package/es6/persisters/persister-automerge/index.js +29 -24
  408. package/es6/persisters/persister-automerge/with-schemas/index.js +29 -24
  409. package/es6/persisters/persister-browser/index.js +35 -30
  410. package/es6/persisters/persister-browser/with-schemas/index.js +35 -30
  411. package/es6/persisters/persister-cr-sqlite-wasm/index.js +29 -24
  412. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +29 -24
  413. package/es6/persisters/persister-electric-sql/index.js +29 -24
  414. package/es6/persisters/persister-electric-sql/with-schemas/index.js +29 -24
  415. package/es6/persisters/persister-expo-sqlite/index.js +29 -24
  416. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +29 -24
  417. package/es6/persisters/persister-file/index.js +42 -31
  418. package/es6/persisters/persister-file/with-schemas/index.js +42 -31
  419. package/es6/persisters/persister-indexed-db/index.js +29 -24
  420. package/es6/persisters/persister-indexed-db/with-schemas/index.js +29 -24
  421. package/es6/persisters/persister-libsql/index.js +286 -281
  422. package/es6/persisters/persister-libsql/with-schemas/index.js +286 -281
  423. package/es6/persisters/persister-partykit-client/index.js +29 -24
  424. package/es6/persisters/persister-partykit-client/with-schemas/index.js +29 -24
  425. package/es6/persisters/persister-powersync/index.js +29 -24
  426. package/es6/persisters/persister-powersync/with-schemas/index.js +29 -24
  427. package/es6/persisters/persister-remote/index.js +35 -30
  428. package/es6/persisters/persister-remote/with-schemas/index.js +35 -30
  429. package/es6/persisters/persister-sqlite-wasm/index.js +29 -24
  430. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +29 -24
  431. package/es6/persisters/persister-sqlite3/index.js +29 -24
  432. package/es6/persisters/persister-sqlite3/with-schemas/index.js +29 -24
  433. package/es6/persisters/persister-yjs/index.js +29 -24
  434. package/es6/persisters/persister-yjs/with-schemas/index.js +29 -24
  435. package/es6/persisters/with-schemas/index.js +30 -21
  436. package/es6/synchronizers/index.js +113 -102
  437. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +109 -104
  438. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +109 -104
  439. package/es6/synchronizers/synchronizer-local/index.js +108 -105
  440. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +108 -105
  441. package/es6/synchronizers/synchronizer-ws-client/index.js +130 -119
  442. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +130 -119
  443. package/es6/synchronizers/synchronizer-ws-server/index.js +691 -37
  444. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +691 -37
  445. package/es6/synchronizers/with-schemas/index.js +113 -102
  446. package/es6/ui-react/index.js +14 -34
  447. package/es6/ui-react/with-schemas/index.js +14 -34
  448. package/es6/ui-react-inspector/index.js +26 -24
  449. package/es6/ui-react-inspector/with-schemas/index.js +26 -24
  450. package/es6/with-schemas/index.js +101 -86
  451. package/index.js +105 -91
  452. package/indexes/index.js +1 -1
  453. package/indexes/with-schemas/index.js +1 -1
  454. package/metrics/index.js +3 -3
  455. package/metrics/with-schemas/index.js +3 -3
  456. package/min/index.js +1 -1
  457. package/min/index.js.gz +0 -0
  458. package/min/persisters/index.js +1 -1
  459. package/min/persisters/index.js.gz +0 -0
  460. package/min/persisters/persister-automerge/index.js +1 -1
  461. package/min/persisters/persister-automerge/index.js.gz +0 -0
  462. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  463. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  464. package/min/persisters/persister-browser/index.js +1 -1
  465. package/min/persisters/persister-browser/index.js.gz +0 -0
  466. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  467. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  468. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  469. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  470. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  471. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  472. package/min/persisters/persister-electric-sql/index.js +1 -1
  473. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  474. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  475. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  476. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  477. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  478. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  479. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  480. package/min/persisters/persister-file/index.js +1 -1
  481. package/min/persisters/persister-file/index.js.gz +0 -0
  482. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  483. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  484. package/min/persisters/persister-indexed-db/index.js +1 -1
  485. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  486. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  487. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  488. package/min/persisters/persister-libsql/index.js +1 -1
  489. package/min/persisters/persister-libsql/index.js.gz +0 -0
  490. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  491. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  492. package/min/persisters/persister-partykit-client/index.js +1 -1
  493. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  494. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  495. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  496. package/min/persisters/persister-powersync/index.js +1 -1
  497. package/min/persisters/persister-powersync/index.js.gz +0 -0
  498. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  499. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  500. package/min/persisters/persister-remote/index.js +1 -1
  501. package/min/persisters/persister-remote/index.js.gz +0 -0
  502. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  503. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  504. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  505. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  506. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  507. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  508. package/min/persisters/persister-sqlite3/index.js +1 -1
  509. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  510. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  511. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  512. package/min/persisters/persister-yjs/index.js +1 -1
  513. package/min/persisters/persister-yjs/index.js.gz +0 -0
  514. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  515. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  516. package/min/persisters/with-schemas/index.js +1 -1
  517. package/min/persisters/with-schemas/index.js.gz +0 -0
  518. package/min/synchronizers/index.js +1 -1
  519. package/min/synchronizers/index.js.gz +0 -0
  520. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  521. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  522. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  523. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  524. package/min/synchronizers/synchronizer-local/index.js +1 -1
  525. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  526. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  527. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  528. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  529. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  530. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  531. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  532. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  533. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  534. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  535. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  536. package/min/synchronizers/with-schemas/index.js +1 -1
  537. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  538. package/min/ui-react/index.js +1 -1
  539. package/min/ui-react/index.js.gz +0 -0
  540. package/min/ui-react/with-schemas/index.js +1 -1
  541. package/min/ui-react/with-schemas/index.js.gz +0 -0
  542. package/min/ui-react-inspector/index.js +1 -1
  543. package/min/ui-react-inspector/index.js.gz +0 -0
  544. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  545. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  546. package/min/with-schemas/index.js +1 -1
  547. package/min/with-schemas/index.js.gz +0 -0
  548. package/package.json +4 -1
  549. package/persisters/index.js +28 -19
  550. package/persisters/persister-automerge/index.js +27 -22
  551. package/persisters/persister-automerge/with-schemas/index.js +27 -22
  552. package/persisters/persister-browser/index.js +33 -28
  553. package/persisters/persister-browser/with-schemas/index.js +33 -28
  554. package/persisters/persister-cr-sqlite-wasm/index.js +28 -23
  555. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +28 -23
  556. package/persisters/persister-electric-sql/index.js +28 -23
  557. package/persisters/persister-electric-sql/with-schemas/index.js +28 -23
  558. package/persisters/persister-expo-sqlite/index.js +28 -23
  559. package/persisters/persister-expo-sqlite/with-schemas/index.js +28 -23
  560. package/persisters/persister-file/index.js +40 -29
  561. package/persisters/persister-file/with-schemas/index.js +40 -29
  562. package/persisters/persister-indexed-db/index.js +27 -22
  563. package/persisters/persister-indexed-db/with-schemas/index.js +27 -22
  564. package/persisters/persister-libsql/index.js +194 -189
  565. package/persisters/persister-libsql/with-schemas/index.js +194 -189
  566. package/persisters/persister-partykit-client/index.js +27 -22
  567. package/persisters/persister-partykit-client/with-schemas/index.js +27 -22
  568. package/persisters/persister-powersync/index.js +28 -23
  569. package/persisters/persister-powersync/with-schemas/index.js +28 -23
  570. package/persisters/persister-remote/index.js +33 -28
  571. package/persisters/persister-remote/with-schemas/index.js +33 -28
  572. package/persisters/persister-sqlite-wasm/index.js +28 -23
  573. package/persisters/persister-sqlite-wasm/with-schemas/index.js +28 -23
  574. package/persisters/persister-sqlite3/index.js +28 -23
  575. package/persisters/persister-sqlite3/with-schemas/index.js +28 -23
  576. package/persisters/persister-yjs/index.js +29 -23
  577. package/persisters/persister-yjs/with-schemas/index.js +29 -23
  578. package/persisters/with-schemas/index.js +28 -19
  579. package/queries/index.js +2 -2
  580. package/queries/with-schemas/index.js +2 -2
  581. package/readme.md +14 -14
  582. package/relationships/index.js +1 -1
  583. package/relationships/with-schemas/index.js +1 -1
  584. package/releases.md +21 -21
  585. package/synchronizers/index.js +105 -95
  586. package/synchronizers/synchronizer-broadcast-channel/index.js +101 -97
  587. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +101 -97
  588. package/synchronizers/synchronizer-local/index.js +100 -98
  589. package/synchronizers/synchronizer-local/with-schemas/index.js +100 -98
  590. package/synchronizers/synchronizer-ws-client/index.js +119 -112
  591. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +119 -112
  592. package/synchronizers/synchronizer-ws-server/index.js +524 -24
  593. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +524 -24
  594. package/synchronizers/with-schemas/index.js +105 -95
  595. package/ui-react/index.js +12 -12
  596. package/ui-react/with-schemas/index.js +12 -12
  597. package/ui-react-inspector/index.js +24 -22
  598. package/ui-react-inspector/with-schemas/index.js +24 -22
  599. package/umd/es6/index.js +106 -91
  600. package/umd/es6/min/index.js +1 -1
  601. package/umd/es6/min/index.js.gz +0 -0
  602. package/umd/es6/min/persisters/index.js +1 -1
  603. package/umd/es6/min/persisters/index.js.gz +0 -0
  604. package/umd/es6/min/persisters/persister-automerge/index.js +1 -1
  605. package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  606. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  607. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  608. package/umd/es6/min/persisters/persister-browser/index.js +1 -1
  609. package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
  610. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  611. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  612. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  613. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  614. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  615. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  616. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  617. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  618. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  619. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  620. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  621. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  622. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  623. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  624. package/umd/es6/min/persisters/persister-file/index.js +1 -1
  625. package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
  626. package/umd/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  627. package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  628. package/umd/es6/min/persisters/persister-indexed-db/index.js +1 -1
  629. package/umd/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  630. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  631. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  632. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  633. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  634. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  635. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  636. package/umd/es6/min/persisters/persister-partykit-client/index.js +1 -1
  637. package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  638. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  639. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  640. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  641. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  642. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  643. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  644. package/umd/es6/min/persisters/persister-remote/index.js +1 -1
  645. package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
  646. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  647. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  648. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  649. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  650. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  651. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  652. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  653. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  654. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  655. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  656. package/umd/es6/min/persisters/persister-yjs/index.js +1 -1
  657. package/umd/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  658. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  659. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  660. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  661. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  662. package/umd/es6/min/synchronizers/index.js +1 -1
  663. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  664. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  665. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  666. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  667. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  668. package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  669. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  670. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  671. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  672. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  673. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  674. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  675. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  676. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  677. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  678. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  679. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  680. package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
  681. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  682. package/umd/es6/min/ui-react/index.js +1 -1
  683. package/umd/es6/min/ui-react/index.js.gz +0 -0
  684. package/umd/es6/min/ui-react/with-schemas/index.js +1 -1
  685. package/umd/es6/min/ui-react/with-schemas/index.js.gz +0 -0
  686. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  687. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  688. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  689. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  690. package/umd/es6/min/with-schemas/index.js +1 -1
  691. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  692. package/umd/es6/persisters/index.js +30 -21
  693. package/umd/es6/persisters/persister-automerge/index.js +29 -24
  694. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +29 -24
  695. package/umd/es6/persisters/persister-browser/index.js +37 -32
  696. package/umd/es6/persisters/persister-browser/with-schemas/index.js +37 -32
  697. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +29 -24
  698. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +29 -24
  699. package/umd/es6/persisters/persister-electric-sql/index.js +29 -24
  700. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +29 -24
  701. package/umd/es6/persisters/persister-expo-sqlite/index.js +29 -24
  702. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +29 -24
  703. package/umd/es6/persisters/persister-file/index.js +43 -33
  704. package/umd/es6/persisters/persister-file/with-schemas/index.js +43 -33
  705. package/umd/es6/persisters/persister-indexed-db/index.js +29 -24
  706. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +29 -24
  707. package/umd/es6/persisters/persister-libsql/index.js +291 -286
  708. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +291 -286
  709. package/umd/es6/persisters/persister-partykit-client/index.js +29 -24
  710. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +29 -24
  711. package/umd/es6/persisters/persister-powersync/index.js +29 -24
  712. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +29 -24
  713. package/umd/es6/persisters/persister-remote/index.js +35 -30
  714. package/umd/es6/persisters/persister-remote/with-schemas/index.js +35 -30
  715. package/umd/es6/persisters/persister-sqlite-wasm/index.js +29 -24
  716. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +29 -24
  717. package/umd/es6/persisters/persister-sqlite3/index.js +29 -24
  718. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +29 -24
  719. package/umd/es6/persisters/persister-yjs/index.js +29 -24
  720. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +29 -24
  721. package/umd/es6/persisters/with-schemas/index.js +30 -21
  722. package/umd/es6/synchronizers/index.js +118 -107
  723. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +114 -109
  724. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +114 -109
  725. package/umd/es6/synchronizers/synchronizer-local/index.js +118 -110
  726. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +118 -110
  727. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +135 -124
  728. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +135 -124
  729. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +710 -37
  730. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +710 -37
  731. package/umd/es6/synchronizers/with-schemas/index.js +118 -107
  732. package/umd/es6/ui-react/index.js +17 -34
  733. package/umd/es6/ui-react/with-schemas/index.js +17 -34
  734. package/umd/es6/ui-react-inspector/index.js +26 -24
  735. package/umd/es6/ui-react-inspector/with-schemas/index.js +26 -24
  736. package/umd/es6/with-schemas/index.js +106 -91
  737. package/umd/index.js +108 -94
  738. package/umd/indexes/index.js +1 -1
  739. package/umd/indexes/with-schemas/index.js +1 -1
  740. package/umd/metrics/index.js +3 -3
  741. package/umd/metrics/with-schemas/index.js +3 -3
  742. package/umd/min/index.js +1 -1
  743. package/umd/min/index.js.gz +0 -0
  744. package/umd/min/persisters/index.js +1 -1
  745. package/umd/min/persisters/index.js.gz +0 -0
  746. package/umd/min/persisters/persister-automerge/index.js +1 -1
  747. package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
  748. package/umd/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  749. package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  750. package/umd/min/persisters/persister-browser/index.js +1 -1
  751. package/umd/min/persisters/persister-browser/index.js.gz +0 -0
  752. package/umd/min/persisters/persister-browser/with-schemas/index.js +1 -1
  753. package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  754. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  755. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  756. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  757. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  758. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  759. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  760. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  761. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  762. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  763. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  764. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  765. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  766. package/umd/min/persisters/persister-file/index.js +1 -1
  767. package/umd/min/persisters/persister-file/index.js.gz +0 -0
  768. package/umd/min/persisters/persister-file/with-schemas/index.js +1 -1
  769. package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  770. package/umd/min/persisters/persister-indexed-db/index.js +1 -1
  771. package/umd/min/persisters/persister-indexed-db/index.js.gz +0 -0
  772. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  773. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  774. package/umd/min/persisters/persister-libsql/index.js +1 -1
  775. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  776. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  777. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  778. package/umd/min/persisters/persister-partykit-client/index.js +1 -1
  779. package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
  780. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  781. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  782. package/umd/min/persisters/persister-powersync/index.js +1 -1
  783. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  784. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  785. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  786. package/umd/min/persisters/persister-remote/index.js +1 -1
  787. package/umd/min/persisters/persister-remote/index.js.gz +0 -0
  788. package/umd/min/persisters/persister-remote/with-schemas/index.js +1 -1
  789. package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  790. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  791. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  792. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  793. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  794. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  795. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  796. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  797. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  798. package/umd/min/persisters/persister-yjs/index.js +1 -1
  799. package/umd/min/persisters/persister-yjs/index.js.gz +0 -0
  800. package/umd/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  801. package/umd/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  802. package/umd/min/persisters/with-schemas/index.js +1 -1
  803. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  804. package/umd/min/synchronizers/index.js +1 -1
  805. package/umd/min/synchronizers/index.js.gz +0 -0
  806. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  807. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  808. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  809. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  810. package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
  811. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  812. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  813. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  814. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  815. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  816. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  817. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  818. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  819. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  820. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  821. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  822. package/umd/min/synchronizers/with-schemas/index.js +1 -1
  823. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  824. package/umd/min/ui-react/index.js +1 -1
  825. package/umd/min/ui-react/index.js.gz +0 -0
  826. package/umd/min/ui-react/with-schemas/index.js +1 -1
  827. package/umd/min/ui-react/with-schemas/index.js.gz +0 -0
  828. package/umd/min/ui-react-inspector/index.js +1 -1
  829. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  830. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  831. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  832. package/umd/min/with-schemas/index.js +1 -1
  833. package/umd/min/with-schemas/index.js.gz +0 -0
  834. package/umd/persisters/index.js +28 -19
  835. package/umd/persisters/persister-automerge/index.js +27 -22
  836. package/umd/persisters/persister-automerge/with-schemas/index.js +27 -22
  837. package/umd/persisters/persister-browser/index.js +35 -30
  838. package/umd/persisters/persister-browser/with-schemas/index.js +35 -30
  839. package/umd/persisters/persister-cr-sqlite-wasm/index.js +28 -23
  840. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +28 -23
  841. package/umd/persisters/persister-electric-sql/index.js +28 -23
  842. package/umd/persisters/persister-electric-sql/with-schemas/index.js +28 -23
  843. package/umd/persisters/persister-expo-sqlite/index.js +28 -23
  844. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +28 -23
  845. package/umd/persisters/persister-file/index.js +41 -31
  846. package/umd/persisters/persister-file/with-schemas/index.js +41 -31
  847. package/umd/persisters/persister-indexed-db/index.js +27 -22
  848. package/umd/persisters/persister-indexed-db/with-schemas/index.js +27 -22
  849. package/umd/persisters/persister-libsql/index.js +196 -191
  850. package/umd/persisters/persister-libsql/with-schemas/index.js +196 -191
  851. package/umd/persisters/persister-partykit-client/index.js +27 -22
  852. package/umd/persisters/persister-partykit-client/with-schemas/index.js +27 -22
  853. package/umd/persisters/persister-powersync/index.js +28 -23
  854. package/umd/persisters/persister-powersync/with-schemas/index.js +28 -23
  855. package/umd/persisters/persister-remote/index.js +33 -28
  856. package/umd/persisters/persister-remote/with-schemas/index.js +33 -28
  857. package/umd/persisters/persister-sqlite-wasm/index.js +28 -23
  858. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +28 -23
  859. package/umd/persisters/persister-sqlite3/index.js +28 -23
  860. package/umd/persisters/persister-sqlite3/with-schemas/index.js +28 -23
  861. package/umd/persisters/persister-yjs/index.js +29 -24
  862. package/umd/persisters/persister-yjs/with-schemas/index.js +29 -24
  863. package/umd/persisters/with-schemas/index.js +28 -19
  864. package/umd/queries/index.js +2 -2
  865. package/umd/queries/with-schemas/index.js +2 -2
  866. package/umd/relationships/index.js +1 -1
  867. package/umd/relationships/with-schemas/index.js +1 -1
  868. package/umd/synchronizers/index.js +108 -98
  869. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +104 -100
  870. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +104 -100
  871. package/umd/synchronizers/synchronizer-local/index.js +108 -101
  872. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +108 -101
  873. package/umd/synchronizers/synchronizer-ws-client/index.js +122 -115
  874. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +122 -115
  875. package/umd/synchronizers/synchronizer-ws-server/index.js +544 -36
  876. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +544 -36
  877. package/umd/synchronizers/with-schemas/index.js +108 -98
  878. package/umd/ui-react/index.js +13 -12
  879. package/umd/ui-react/with-schemas/index.js +13 -12
  880. package/umd/ui-react-inspector/index.js +24 -22
  881. package/umd/ui-react-inspector/with-schemas/index.js +24 -22
  882. package/umd/with-schemas/index.js +108 -94
  883. package/with-schemas/index.js +105 -91
package/cjs/index.cjs CHANGED
@@ -404,7 +404,7 @@ const getDefinableFunctions = (
404
404
  const getRowCellFunction = (getRowCell, defaultCellValue) =>
405
405
  isString(getRowCell)
406
406
  ? (getCell) => getCell(getRowCell)
407
- : getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING);
407
+ : (getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING));
408
408
  const getCreateFunction = (getFunction, initFunction) => {
409
409
  const thingsByStore = /* @__PURE__ */ new WeakMap();
410
410
  return (store) => {
@@ -1084,8 +1084,8 @@ const createMetrics = getCreateFunction((store) => {
1084
1084
  ) => {
1085
1085
  const aggregators = isFunction(aggregate)
1086
1086
  ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
1087
- : mapGet(numericAggregators, aggregate) ??
1088
- mapGet(numericAggregators, SUM);
1087
+ : (mapGet(numericAggregators, aggregate) ??
1088
+ mapGet(numericAggregators, SUM));
1089
1089
  setDefinitionAndListen(
1090
1090
  metricId,
1091
1091
  tableId,
@@ -1146,14 +1146,14 @@ const createMetrics = getCreateFunction((store) => {
1146
1146
  });
1147
1147
 
1148
1148
  const Persists = {
1149
- StoreOnly: 1,
1150
- MergeableStoreOnly: 2,
1151
- StoreOrMergeableStore: 3,
1149
+ StoreOnly: 1 /* StoreOnly */,
1150
+ MergeableStoreOnly: 2 /* MergeableStoreOnly */,
1151
+ StoreOrMergeableStore: 3 /* StoreOrMergeableStore */,
1152
1152
  };
1153
1153
  const scheduleRunning = mapNew();
1154
1154
  const scheduleActions = mapNew();
1155
- const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
1156
- persist != Persists.StoreOnly && store.isMergeable()
1155
+ const getStoreFunctions = (persist = 1 /* StoreOnly */, store) =>
1156
+ persist != 1 /* StoreOnly */ && store.isMergeable()
1157
1157
  ? [
1158
1158
  1,
1159
1159
  store.getMergeableContent,
@@ -1162,7 +1162,7 @@ const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
1162
1162
  !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
1163
1163
  store.setDefaultContent,
1164
1164
  ]
1165
- : persist != Persists.MergeableStoreOnly
1165
+ : persist != 2 /* MergeableStoreOnly */
1166
1166
  ? [
1167
1167
  0,
1168
1168
  store.getContent,
@@ -1245,19 +1245,24 @@ const createCustomPersister = (
1245
1245
  };
1246
1246
  const startAutoLoad = async (initialContent) => {
1247
1247
  await stopAutoLoad().load(initialContent);
1248
- autoLoadHandle = addPersisterListener(async (content, changes) => {
1249
- if (changes || content) {
1250
- /* istanbul ignore else */
1251
- if (loadSave != 2) {
1252
- loadSave = 1;
1253
- loads++;
1254
- setContentOrChanges(changes ?? content);
1255
- loadSave = 0;
1248
+ try {
1249
+ autoLoadHandle = addPersisterListener(async (content, changes) => {
1250
+ if (changes || content) {
1251
+ /* istanbul ignore else */
1252
+ if (loadSave != 2) {
1253
+ loadSave = 1;
1254
+ loads++;
1255
+ setContentOrChanges(changes ?? content);
1256
+ loadSave = 0;
1257
+ }
1258
+ } else {
1259
+ await load();
1256
1260
  }
1257
- } else {
1258
- await load();
1259
- }
1260
- });
1261
+ });
1262
+ } catch (error) {
1263
+ /* istanbul ignore next */
1264
+ onIgnoredError?.(error);
1265
+ }
1261
1266
  return persister;
1262
1267
  };
1263
1268
  const stopAutoLoad = () => {
@@ -1307,7 +1312,10 @@ const createCustomPersister = (
1307
1312
  return persister;
1308
1313
  };
1309
1314
  const getStore = () => store;
1310
- const destroy = () => stopAutoLoad().stopAutoSave();
1315
+ const destroy = () => {
1316
+ arrayClear(mapGet(scheduleActions, scheduleId));
1317
+ return stopAutoLoad().stopAutoSave();
1318
+ };
1311
1319
  const getStats = () => ({loads, saves});
1312
1320
  const persister = {
1313
1321
  load,
@@ -1372,14 +1380,14 @@ const stampValidate = (stamp, validateThing) =>
1372
1380
  validateThing(stamp[0]);
1373
1381
 
1374
1382
  const Message = {
1375
- Response: 0,
1376
- GetContentHashes: 1,
1377
- ContentHashes: 2,
1378
- ContentDiff: 3,
1379
- GetTableDiff: 4,
1380
- GetRowDiff: 5,
1381
- GetCellDiff: 6,
1382
- GetValueDiff: 7,
1383
+ Response: 0 /* Response */,
1384
+ GetContentHashes: 1 /* GetContentHashes */,
1385
+ ContentHashes: 2 /* ContentHashes */,
1386
+ ContentDiff: 3 /* ContentDiff */,
1387
+ GetTableDiff: 4 /* GetTableDiff */,
1388
+ GetRowDiff: 5 /* GetRowDiff */,
1389
+ GetCellDiff: 6 /* GetCellDiff */,
1390
+ GetValueDiff: 7 /* GetValueDiff */,
1383
1391
  };
1384
1392
  const createCustomSynchronizer = (
1385
1393
  store,
@@ -1387,6 +1395,8 @@ const createCustomSynchronizer = (
1387
1395
  registerReceive,
1388
1396
  destroyImpl,
1389
1397
  requestTimeoutSeconds,
1398
+ onSend,
1399
+ onReceive,
1390
1400
  onIgnoredError,
1391
1401
  extra = {},
1392
1402
  ) => {
@@ -1394,49 +1404,20 @@ const createCustomSynchronizer = (
1394
1404
  let sends = 0;
1395
1405
  let receives = 0;
1396
1406
  const pendingRequests = mapNew();
1397
- registerReceive((fromClientId, requestId, message, body) => {
1398
- receives++;
1399
- if (message == Message.Response) {
1400
- ifNotUndefined(
1401
- mapGet(pendingRequests, requestId),
1402
- ([toClientId, handleResponse]) =>
1403
- isUndefined(toClientId) || toClientId == fromClientId
1404
- ? handleResponse(body, fromClientId)
1405
- : /* istanbul ignore next */
1406
- 0,
1407
- );
1408
- } else if (message == Message.ContentHashes && persister.isAutoLoading()) {
1409
- getChangesFromOtherStore(fromClientId, body).then((changes) => {
1410
- persisterListener?.(void 0, changes);
1411
- });
1412
- } else if (message == Message.ContentDiff && persister.isAutoLoading()) {
1413
- persisterListener?.(void 0, body);
1414
- } else {
1415
- ifNotUndefined(
1416
- message == Message.GetContentHashes && persister.isAutoSaving()
1417
- ? store.getMergeableContentHashes()
1418
- : message == Message.GetTableDiff
1419
- ? store.getMergeableTableDiff(body)
1420
- : message == Message.GetRowDiff
1421
- ? store.getMergeableRowDiff(body)
1422
- : message == Message.GetCellDiff
1423
- ? store.getMergeableCellDiff(body)
1424
- : message == Message.GetValueDiff
1425
- ? store.getMergeableValueDiff(body)
1426
- : void 0,
1427
- (response) => {
1428
- sends++;
1429
- send(fromClientId, requestId, Message.Response, response);
1430
- },
1431
- );
1432
- }
1433
- });
1407
+ const sendImpl = (toClientId, requestId, message, body) => {
1408
+ sends++;
1409
+ onSend?.(toClientId, requestId, message, body);
1410
+ send(toClientId, requestId, message, body);
1411
+ };
1434
1412
  const request = async (toClientId, message, body = EMPTY_STRING) =>
1435
1413
  promiseNew((resolve, reject) => {
1436
1414
  const requestId = getUniqueId();
1437
1415
  const timeout = setTimeout(() => {
1438
1416
  collDel(pendingRequests, requestId);
1439
- reject(`No response from ${toClientId ?? 'anyone'} to '${message}'`);
1417
+ reject(
1418
+ `No response from ${toClientId ?? 'anyone'} to ${requestId}, ` +
1419
+ message,
1420
+ );
1440
1421
  }, requestTimeoutSeconds * 1e3);
1441
1422
  mapSet(pendingRequests, requestId, [
1442
1423
  toClientId,
@@ -1446,8 +1427,7 @@ const createCustomSynchronizer = (
1446
1427
  resolve([response, fromClientId]);
1447
1428
  },
1448
1429
  ]);
1449
- sends++;
1450
- send(toClientId, requestId, message, body);
1430
+ sendImpl(toClientId, requestId, message, body);
1451
1431
  });
1452
1432
  const mergeTablesStamps = (tablesStamp, [tableStamps2, tablesTime2]) => {
1453
1433
  objForEach(tableStamps2, ([rowStamps2, tableTime2], tableId) => {
@@ -1472,7 +1452,7 @@ const createCustomSynchronizer = (
1472
1452
  if (isUndefined(otherContentHashes)) {
1473
1453
  [otherContentHashes, otherClientId] = await request(
1474
1454
  otherClientId,
1475
- Message.GetContentHashes,
1455
+ 1 /* GetContentHashes */,
1476
1456
  );
1477
1457
  }
1478
1458
  const [otherTablesHash, otherValuesHash] = otherContentHashes;
@@ -1482,7 +1462,7 @@ const createCustomSynchronizer = (
1482
1462
  const [newTables, differentTableHashes] = (
1483
1463
  await request(
1484
1464
  otherClientId,
1485
- Message.GetTableDiff,
1465
+ 4 /* GetTableDiff */,
1486
1466
  store.getMergeableTableHashes(),
1487
1467
  )
1488
1468
  )[0];
@@ -1491,7 +1471,7 @@ const createCustomSynchronizer = (
1491
1471
  const [newRows, differentRowHashes] = (
1492
1472
  await request(
1493
1473
  otherClientId,
1494
- Message.GetRowDiff,
1474
+ 5 /* GetRowDiff */,
1495
1475
  store.getMergeableRowHashes(differentTableHashes),
1496
1476
  )
1497
1477
  )[0];
@@ -1500,7 +1480,7 @@ const createCustomSynchronizer = (
1500
1480
  const newCells = (
1501
1481
  await request(
1502
1482
  otherClientId,
1503
- Message.GetCellDiff,
1483
+ 6 /* GetCellDiff */,
1504
1484
  store.getMergeableCellHashes(differentRowHashes),
1505
1485
  )
1506
1486
  )[0];
@@ -1515,7 +1495,7 @@ const createCustomSynchronizer = (
1515
1495
  : (
1516
1496
  await request(
1517
1497
  otherClientId,
1518
- Message.GetValueDiff,
1498
+ 7 /* GetValueDiff */,
1519
1499
  store.getMergeableValueHashes(),
1520
1500
  )
1521
1501
  )[0],
@@ -1528,19 +1508,15 @@ const createCustomSynchronizer = (
1528
1508
  ? changes
1529
1509
  : void 0;
1530
1510
  };
1531
- const setPersisted = async (_getContent, changes) => {
1532
- sends++;
1533
- if (changes) {
1534
- send(null, null, Message.ContentDiff, changes);
1535
- } else {
1536
- send(
1537
- null,
1538
- null,
1539
- Message.ContentHashes,
1540
- store.getMergeableContentHashes(),
1541
- );
1542
- }
1543
- };
1511
+ const setPersisted = async (_getContent, changes) =>
1512
+ changes
1513
+ ? sendImpl(null, null, 3 /* ContentDiff */, changes)
1514
+ : sendImpl(
1515
+ null,
1516
+ null,
1517
+ 2 /* ContentHashes */,
1518
+ store.getMergeableContentHashes(),
1519
+ );
1544
1520
  const addPersisterListener = (listener) => (persisterListener = listener);
1545
1521
  const delPersisterListener = () => (persisterListener = void 0);
1546
1522
  const startSync = async (initialContent) =>
@@ -1558,9 +1534,47 @@ const createCustomSynchronizer = (
1558
1534
  addPersisterListener,
1559
1535
  delPersisterListener,
1560
1536
  onIgnoredError,
1561
- Persists.MergeableStoreOnly,
1537
+ 2,
1538
+ // MergeableStoreOnly
1562
1539
  {startSync, stopSync, destroy, getSynchronizerStats, ...extra},
1563
1540
  );
1541
+ registerReceive((fromClientId, requestId, message, body) => {
1542
+ receives++;
1543
+ onReceive?.(fromClientId, requestId, message, body);
1544
+ if (message == 0 /* Response */) {
1545
+ ifNotUndefined(
1546
+ mapGet(pendingRequests, requestId),
1547
+ ([toClientId, handleResponse]) =>
1548
+ isUndefined(toClientId) || toClientId == fromClientId
1549
+ ? handleResponse(body, fromClientId)
1550
+ : /* istanbul ignore next */
1551
+ 0,
1552
+ );
1553
+ } else if (message == 2 /* ContentHashes */ && persister.isAutoLoading()) {
1554
+ getChangesFromOtherStore(fromClientId, body).then((changes) => {
1555
+ persisterListener?.(void 0, changes);
1556
+ });
1557
+ } else if (message == 3 /* ContentDiff */ && persister.isAutoLoading()) {
1558
+ persisterListener?.(void 0, body);
1559
+ } else {
1560
+ ifNotUndefined(
1561
+ message == 1 /* GetContentHashes */ && persister.isAutoSaving()
1562
+ ? store.getMergeableContentHashes()
1563
+ : message == 4 /* GetTableDiff */
1564
+ ? store.getMergeableTableDiff(body)
1565
+ : message == 5 /* GetRowDiff */
1566
+ ? store.getMergeableRowDiff(body)
1567
+ : message == 6 /* GetCellDiff */
1568
+ ? store.getMergeableCellDiff(body)
1569
+ : message == 7 /* GetValueDiff */
1570
+ ? store.getMergeableValueDiff(body)
1571
+ : void 0,
1572
+ (response) => {
1573
+ sendImpl(fromClientId, requestId, 0 /* Response */, response);
1574
+ },
1575
+ );
1576
+ }
1577
+ });
1564
1578
  return persister;
1565
1579
  };
1566
1580
 
@@ -1687,9 +1701,9 @@ const createQueries = getCreateFunction((store) => {
1687
1701
  selectedCellId,
1688
1702
  isFunction(aggregate)
1689
1703
  ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
1690
- : mapGet(numericAggregators, aggregate) ?? [
1704
+ : (mapGet(numericAggregators, aggregate) ?? [
1691
1705
  (_cells, length) => length,
1692
- ],
1706
+ ]),
1693
1707
  ],
1694
1708
  ];
1695
1709
  arrayPush(groupEntries, groupEntry);
@@ -249,7 +249,7 @@ const getDefinableFunctions = (
249
249
  const getRowCellFunction = (getRowCell, defaultCellValue) =>
250
250
  isString(getRowCell)
251
251
  ? (getCell) => getCell(getRowCell)
252
- : getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING);
252
+ : (getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING));
253
253
  const getCreateFunction = (getFunction, initFunction) => {
254
254
  const thingsByStore = /* @__PURE__ */ new WeakMap();
255
255
  return (store) => {
@@ -249,7 +249,7 @@ const getDefinableFunctions = (
249
249
  const getRowCellFunction = (getRowCell, defaultCellValue) =>
250
250
  isString(getRowCell)
251
251
  ? (getCell) => getCell(getRowCell)
252
- : getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING);
252
+ : (getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING));
253
253
  const getCreateFunction = (getFunction, initFunction) => {
254
254
  const thingsByStore = /* @__PURE__ */ new WeakMap();
255
255
  return (store) => {
@@ -321,7 +321,7 @@ const getDefinableFunctions = (
321
321
  const getRowCellFunction = (getRowCell, defaultCellValue) =>
322
322
  isString(getRowCell)
323
323
  ? (getCell) => getCell(getRowCell)
324
- : getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING);
324
+ : (getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING));
325
325
  const getCreateFunction = (getFunction, initFunction) => {
326
326
  const thingsByStore = /* @__PURE__ */ new WeakMap();
327
327
  return (store) => {
@@ -460,8 +460,8 @@ const createMetrics = getCreateFunction((store) => {
460
460
  ) => {
461
461
  const aggregators = isFunction(aggregate)
462
462
  ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
463
- : mapGet(numericAggregators, aggregate) ??
464
- mapGet(numericAggregators, SUM);
463
+ : (mapGet(numericAggregators, aggregate) ??
464
+ mapGet(numericAggregators, SUM));
465
465
  setDefinitionAndListen(
466
466
  metricId,
467
467
  tableId,
@@ -321,7 +321,7 @@ const getDefinableFunctions = (
321
321
  const getRowCellFunction = (getRowCell, defaultCellValue) =>
322
322
  isString(getRowCell)
323
323
  ? (getCell) => getCell(getRowCell)
324
- : getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING);
324
+ : (getRowCell ?? (() => defaultCellValue ?? EMPTY_STRING));
325
325
  const getCreateFunction = (getFunction, initFunction) => {
326
326
  const thingsByStore = /* @__PURE__ */ new WeakMap();
327
327
  return (store) => {
@@ -460,8 +460,8 @@ const createMetrics = getCreateFunction((store) => {
460
460
  ) => {
461
461
  const aggregators = isFunction(aggregate)
462
462
  ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
463
- : mapGet(numericAggregators, aggregate) ??
464
- mapGet(numericAggregators, SUM);
463
+ : (mapGet(numericAggregators, aggregate) ??
464
+ mapGet(numericAggregators, SUM));
465
465
  setDefinitionAndListen(
466
466
  metricId,
467
467
  tableId,
package/cjs/min/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",b=h+g,C="Row",w=C+"Count",p=C+g,L="Sorted"+C+g,v="Cell",y=v+g,S="Value",R=S+"s",I=S+g,T=e=>t+e,M=(e,t)=>e.startsWith(t),D=(e,t)=>e.endsWith(t),V=Promise,m=globalThis,H=Math,x=H.max,E=H.min,k=H.floor,A=isFinite,G=e=>null==e,J=(e,t,s)=>G(e)?s?.():t(e),O=e=>e==s||e==n,F=t=>e(t)==s,P=t=>e(t)==o,Q=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),N=e=>e.length,W=()=>{},_=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),U=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),$=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),q=(e,t)=>e.sort(t),B=(e,t)=>e.forEach(t),K=(e,t)=>e.map(t),X=e=>Z(e,((e,t)=>e+t),0),Y=e=>0==N(e),Z=(e,t,s)=>e.reduce(t,s),ee=(e,...t)=>e.push(...t),te=e=>e.pop(),se=e=>e.shift(),ne=Object,ae=e=>ne.getPrototypeOf(e),oe=ne.entries,re=ne.isFrozen,le=e=>!G(e)&&J(ae(e),(e=>e==ne.prototype||G(ae(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)=>B(oe(e),(([e,s])=>t(s,e))),fe=(e,t)=>K(oe(e),(([e,s])=>t(s,e))),be=e=>le(e)&&0==(e=>N(ie(e)))(e),Ce=(e,t,s)=>(ue(e,t)||(e[t]=s()),e[t]),we=(e,t,s,n=0)=>G(e)||!le(e)||!n&&be(e)||re(e)?(s?.(),!1):(fe(e,((s,n)=>{t(s,n)||ge(e,n)})),!!n||!be(e)),pe=e=>t=>Z(Te(t),((t,s)=>t+e(s)),0),Le=e=>e?.size??0,ve=pe(Le),ye=pe(ve),Se=pe(ye),Re=(e,t)=>e?.has(t)??!1,Ie=e=>G(e)||0==Le(e),Te=e=>[...e?.values()??[]],Me=e=>e.clear(),De=(e,t)=>e?.forEach(t),Ve=(e,t)=>e?.delete(t),me=e=>new Map(e),He=e=>[...e?.keys()??[]],xe=(e,t)=>e?.get(t),Ee=(e,t)=>De(e,((e,s)=>t(s,e))),ke=(e,t,s)=>G(s)?(Ve(e,t),e):e?.set(t,s),Ae=(e,t,s,n)=>(Re(e,t)?n?.(xe(e,t)):ke(e,t,s()),xe(e,t)),Ge=(e,t,s,n=ke)=>(fe(t,((t,n)=>s(e,n,t))),Ee(e,(s=>ue(t,s)?0:n(e,s))),e),Je=(e,t,s,n)=>{const a={};return De(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},Oe=(e,t,s)=>Je(e,(e=>Je(e,t,s)),Ie,be),Fe=(e,t,s)=>Je(e,(e=>Oe(e,t,s)),Ie,be),Pe=(e,t)=>{const s=me();return De(e,((e,n)=>s.set(n,t?.(e)??e))),s},Qe=e=>Pe(e,Pe),ze=e=>Pe(e,Qe),Ne=(e,t,s,n,a=0)=>J((s?Ae:xe)(e,t[a],a>N(t)-2?s:me),(o=>{if(a>N(t)-2)return n?.(o)&&ke(e,t[a]),o;const r=Ne(o,t,s,n,a+1);return Ie(o)&&ke(e,t[a]),r})),We=t=>{const s=e(t);return O(s)||s==a&&A(t)?s:void 0},_e=e=>G(e)||!G(We(e)),je=(e,t,s,n,a)=>G(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ue=(e,t,s)=>G(s)?e.delValue(t):e.setValue(t,s),$e=e=>new Set(Q(e)||G(e)?e:[e]),qe=(e,t)=>e?.add(t),Be=(e,t,s,n,a)=>{const o=e.hasRow,r=me(),l=me(),i=me(),c=me(),d=me(),u=me(),g=(t,s,...n)=>{const a=Ae(u,t,$e);return B(n,(t=>qe(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>J(xe(u,t),(n=>{B(Y(s)?Te(n):s,(t=>{e.delListener(t),Ve(n,t)})),Ie(n)&&ke(u,t)})),f=(e,s)=>{ke(r,e,s),Re(l,e)||(ke(l,e,t()),ke(c,e,me()),ke(d,e,me()),a(i))},b=e=>{ke(r,e),ke(l,e),ke(c,e),ke(d,e),h(e),a(i)};return[()=>e,()=>He(r),e=>Ee(l,e),e=>Re(l,e),e=>xe(r,e),e=>xe(l,e),(e,t)=>ke(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=me(),u=me(),b=xe(c,t),C=xe(d,t),w=t=>{const a=s=>e.getCell(n,t,s),c=xe(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||Q(c)&&Q(d)&&U(c,d)||ke(i,t,[c,d]),!G(l)){const e=xe(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&ke(u,t,s)}},p=e=>{a((()=>{De(i,(([,e],t)=>ke(b,t,e))),De(u,((e,t)=>ke(C,t,e)))}),i,u,b,C,e),Me(i),Me(u)};Ee(b,w),e.hasTable(n)&&B(e.getRowIds(n),(e=>{Re(b,e)||w(e)})),p(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>p())))},b,e=>n(e,i),()=>Ee(u,b),g,h]},Ke=(e,s)=>F(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 a=s.get(n);return t?.(a),a}},Ye=/^\d+$/,Ze=()=>{const e=[];let s=0;return[n=>(n?se(e):null)??t+s++,t=>{Ye.test(t)&&N(e)<1e3&&ee(e,t)}]},et=e=>{let s;const[n,a]=Ze(),o=me();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return ke(o,d,[a,r,l,i,c]),qe(Ne(r,l??[t],$e),d),d},(e,n,...a)=>B(((e,s=[t])=>{const n=[],a=(e,t)=>t==N(s)?ee(n,e):null===s[t]?De(e,(e=>a(e,t+1))):B([s[t],null],(s=>a(xe(e,s),t+1)));return a(e,0),n})(e,n),(e=>De(e,(e=>xe(o,e)[0](s,...n??[],...a))))),e=>J(xe(o,e),(([,s,n])=>(Ne(s,n??[t],void 0,(t=>(Ve(t,e),Ie(t)?1:0))),ke(o,e),a(e),n))),e=>J(xe(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(t)?e(s,...r,...a(r)):G(t[l])?B(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},tt=Xe((e=>{let s,n,a,o=100,r=me(),l=me(),i=1;const c=me(),d=me(),[u,g,h]=et((()=>k)),f=me(),b=me(),C=[],w=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=xe(f,s);De(n,((s,n)=>De(s,((s,a)=>De(s,((s,o)=>je(e,n,a,o,s[t]))))))),De(a,((s,n)=>Ue(e,n,s[t])))})),i=1},L=e=>{ke(f,e),ke(b,e),g(d,[e])},v=(e,t)=>B(((e,t)=>e.splice(0,t))(e,t??N(e)),L),y=()=>v(C,N(C)-o),S=()=>J(s,(()=>{ee(C,s),y(),v(w),s=void 0,a=1})),R=()=>{s=te(C),a=1};let I,T;const M=(e=t)=>(G(s)&&(s=t+n++,ke(f,s,[r,l]),x(s,e),r=me(),l=me(),a=1),s),D=()=>{Y(C)||(((e,...t)=>{e.unshift(...t)})(w,M()),p(0,s),s=te(C),a=1)},V=()=>{Y(w)||(ee(C,s),s=se(w),p(1,s),a=1)},m=()=>{a&&(g(c),a=0)},H=e=>{const t=M(e);return m(),t},x=(e,t)=>(E(e)&&xe(b,e)!==t&&(ke(b,e,t),g(d,[e])),k),E=e=>Re(f,e),k={setSize:e=>(o=e,y(),k),addCheckpoint:H,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...C],s,[...w]],forEachCheckpoint:e=>Ee(b,e),hasCheckpoint:E,getCheckpoint:e=>xe(b,e),goBackward:()=>(D(),m(),k),goForward:()=>(V(),m(),k),goTo:e=>{const t=_(C,e)?D:_(w,e)?V:null;for(;!G(t)&&e!=s;)t();return m(),k},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),k),clear:()=>(v(C),v(w),G(s)||L(s),s=void 0,n=0,H(),k),clearForward:()=>(Y(w)||(v(w),g(c)),k),destroy:()=>{e.delListener(I),e.delListener(T)},getListenerStats:()=>({checkpointIds:ve(c),checkpoint:ve(d)}),_registerListeners:()=>{I=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){S();const e=Ae(r,t,me),l=Ae(e,s,me),i=Ae(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ie(ke(l,n))&&Ie(ke(e,s))&&Ie(ke(r,t))&&R(),m()}})),T=e.addValueListener(null,((e,t,s,n)=>{if(i){S();const e=Ae(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Ie(ke(l,t))&&R(),m()}}))}};return ce(k.clear())}),(e=>e._registerListeners())),st="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t),nt=me(K(st,((e,t)=>[e,t]))),at=e=>st[63&e],ot=(e,t)=>xe(nt,e[t])??0,rt=m.crypto?e=>m.crypto.getRandomValues(e):e=>K(e,(()=>k(256*H.random()))),lt=(e,t)=>(e??0)<(t??0)?-1:1,it=(e=16)=>Z(rt(new Uint8Array(e)),((e,t)=>e+at(t)),""),ct=Xe((e=>{const s=me(),n=me(),[a,o,r]=et((()=>L)),[l,i,c,d,u,g,h,,f,b,C,w]=Be(e,me,(e=>G(e)?t:Q(e)?K(e,T):T(e)),a,o),p=(t,s,n)=>{const a=u(t);De(n,((t,n)=>s(n,(s=>De(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},L={setIndexDefinition:(e,t,a,r,l,i=lt)=>{const c=G(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let b=0;const C=$e(),w=$e(),p=g(e);if(De(a,(([e,t],s)=>{const n=$e(e),a=$e(t);De(n,(e=>Ve(a,e)?Ve(n,e):0)),De(n,(e=>{qe(C,e),J(xe(p,e),(t=>{Ve(t,s),Ie(t)&&(ke(p,e),b=1)}))})),De(a,(e=>{qe(C,e),Re(p,e)||(ke(p,e,$e()),b=1),qe(xe(p,e),s),G(r)||qe(w,e)}))})),t(),Ie(u)||(f?Ee(p,(e=>qe(w,e))):Ee(l,(e=>J(xe(d,e),(e=>qe(w,e))))),De(w,(e=>{const t=(t,s)=>i(xe(u,t),xe(u,s),e),s=[...xe(p,e)];$(s,t)||(ke(p,e,$e(q(s,t))),qe(C,e))}))),(b||f)&&!G(c)){const t=[...p];$(t,c)||(h(e,me(q(t,c))),b=1)}b&&o(s,[e]),De(C,(t=>o(n,[e,t])))}),Ke(a),J(r,Ke)),L},delIndexDefinition:e=>(b(e),L),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Re(g(e),t),getTableId:u,getSliceIds:e=>He(g(e)),getSliceRowIds:(e,t)=>Te(xe(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),L),destroy:w,getListenerStats:()=>({sliceIds:ve(s),sliceRowIds:ye(n)})};return ce(L)})),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=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["sum",[e=>X(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ut=(e,t,s,n,a,o=!1)=>{if(Ie(s))return;const[r,l,i,c]=a;return o||=G(e),De(n,(([s,n])=>{o||(e=G(s)?l?.(e,n,t++):G(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=G(e))})),o?r(Te(s),Le(s)):e},gt=Xe((e=>{const s=me(),[n,a,o]=et((()=>w)),[r,l,i,c,d,u,g,,h,f,b,C]=Be(e,W,(e=>isNaN(e)||G(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),w={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=P(n)?[n,r,l,i]:xe(dt,n)??xe(dt,"sum");return h(e,t,((t,n,o,r,l,i)=>{const d=u(e),h=Le(r);i||=G(d),t();let f=ut(d,h,r,n,c,i);A(f)||(f=void 0),f!=d&&(g(e,f),a(s,[e],f,d))}),Ke(o,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),w),destroy:C,getListenerStats:()=>({metric:ve(s)})};return ce(w)})),ht={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ft=me(),bt=me(),Ct=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0,h=0,f=0;Ae(ft,i,(()=>0)),Ae(bt,i,(()=>[]));const[b,C,w,p,L]=((e=ht.StoreOnly,t)=>e!=ht.StoreOnly&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!be(e)||!be(t),t.setDefaultContent]:e!=ht.MergeableStoreOnly?[0,t.getContent,t.getTransactionChanges,([e,t])=>!be(e)||!be(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(r,e),v=t=>{(b&&Q(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},y=async e=>(2!=g&&(g=1,h++,await T((async()=>{try{v(await t())}catch(t){o?.(t),e&&L(e)}g=0}))),M),S=()=>(d&&(a(d),d=void 0),M),R=async e=>(1!=g&&(g=2,f++,await T((async()=>{try{await s(C,e)}catch(e){o?.(e)}g=0}))),M),I=()=>(J(u,e.delListener),u=void 0,M),T=async(...e)=>(ee(xe(bt,i),...e),await(async()=>{if(!xe(ft,i)){for(ke(ft,i,1);!G(c=se(xe(bt,i)));)try{await c()}catch(e){o?.(e)}ke(ft,i,0)}})(),M),M={load:y,startAutoLoad:async e=>(await S().load(e),d=n((async(e,t)=>{t||e?2!=g&&(g=1,h++,v(t??e),g=0):await y()})),M),stopAutoLoad:S,isAutoLoading:()=>!G(d),save:R,startAutoSave:async()=>(await I().save(),u=e.addDidFinishTransactionListener((()=>{const e=w();p(e)&&R(e)})),M),stopAutoSave:I,isAutoSaving:()=>!G(u),schedule:T,getStore:()=>e,destroy:()=>S().stopAutoSave(),getStats:()=>({loads:h,saves:f}),...l};return ce(M)},wt=new m.TextEncoder,pt=e=>{let t=2166136261;return B(wt.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],vt=([e,t])=>yt(e,t),yt=(e,t)=>t?[e,t]:[e],St=e=>e[2],Rt=(e,t)=>pt(e+":"+t),It=(e,t)=>t>e?(e?pt(e):0)^pt(t):0,Tt=(e,t)=>((e??"")>(t??"")?e:t)??"",Mt=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},Dt=(e=t)=>yt(de(),e),Vt=(e=t)=>[me(),e,0],mt=([e,t,s],n=Lt)=>[Je(e,n),t,s],Ht=([e,t],s=vt)=>yt(Je(e,s),t),xt=(t,s)=>Q(t)&&3==N(t)&&F(t[1])&&e(t[2])==a&&A(t[2])&&s(t[0]),Et={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},kt=Xe((e=>{const s=e.createStore,n=s(),a=s(),o=me(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,b,S,R,,,I,,T,M,D,V,m]=Be(e,(()=>!0),W,r,l),H=(e,t,...s)=>B(s,(s=>qe(Ae(Ae(o,t,me),e,$e),s))),x=e=>{J(xe(o,e),(e=>{Ee(e,((e,t)=>De(t,(t=>e.delListener(t))))),Me(e)})),B([a,n],(t=>t.delTable(e)))},E=(e,t,s)=>H(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(s,o,r)=>{I(s,o),x(s);const l=[],i=[[null,[o,null,null,[],me()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=P(e)?[N(l)+t,e]:[G(s)?e:s,t=>t(e,s)];return ee(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=G(s)||P(t)?null:t,a=G(n)?t:s,o=[e,[e,n,P(a)?a:e=>e(a),[],me()]];return ee(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>ee(c,P(e)?e:G(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,P(t)?[t,s,n,a]:xe(dt,t)??[(e,t)=>t]]];return ee(d,o),{as:e=>o[0]=e}},having:(e,t)=>ee(u,P(e)?e:s=>s(e)===t)});const g=me(l);if(Ie(g))return k;const h=me(i);Ee(h,((e,[,t])=>J(xe(h,t),(({3:t})=>G(e)?0:ee(t,e)))));const f=me(d);let b=n;if(Ie(f)&&Y(u))b=a;else{E(s,b,a);const e=me();Ee(f,((t,[s,n])=>qe(Ae(e,s,$e),[t,n])));const t=$e();Ee(g,(s=>Re(e,s)?0:qe(t,s)));const n=me(),o=(t,n,o,r)=>J(t,(([l,i,c,d])=>{Ee(n,((t,[s])=>{const n=Ae(l,t,me),a=xe(n,o),i=r?void 0:s;if(a!==i){const s=$e([[a,i]]),r=Le(n);ke(n,o,i),De(xe(e,t),(([e,t])=>{const a=ut(d[e],r,n,s,t);d[e]=G(We(a))?null:a}))}})),Ie(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(s,c):G(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));H(b,s,b.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=me(),g=b.hasRow(s,l);let h=!g;De(t,(e=>{const[t,n,a]=i(s,l,e);ee(c,n),ee(d,a),h||=t})),Ee(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&ke(u,e,[n])})),h&&o(Ne(n,c,void 0,(([,e])=>(Ve(e,l),Ie(e)))),u,l,1),g&&o(Ne(n,d,(()=>{const e={};return De(t,(t=>e[t]=b.getCell(s,l,t))),[me(),$e(),void 0,e]}),(([,e])=>{qe(e,l)})),u,l)})))}E(s,e,b);const C=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);B(r,(n=>{const[a,,o,r,i]=xe(h,n),c=o?.(l,t),[d,u]=xe(i,t)??[];c!=d&&(G(u)||m(s,u),ke(i,t,G(c)?null:[c,...V(s,1,e.addRowListener(a,c,(()=>C(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...G(n)?[o,t,s]:s===o?[o,t,n]:[xe(h,s)?.[0],xe(xe(h,s)?.[4],t)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?Ee(g,((e,a)=>je(b,s,t,e,a(n,t)))):b.delRow(s,t)))})(t)},{3:w}=xe(h,null);return b.transaction((()=>V(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?C(a,o,a,w):(b.delRow(s,a),De(h,(({4:e})=>J(xe(e,a),(([,t])=>{m(s,t),ke(e,a)})))))}))))),k},delQueryDefinition:e=>(x(e),T(e),k),getStore:g,getQueryIds:f,forEachQuery:b,hasQuery:S,getTableId:R,addQueryIdsListener:e=>M((()=>e(k))),delListener:e=>(u(e),k),destroy:D,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return fe({[h]:[1,1],[h+y]:[0,1],[w]:[0,1],[p]:[0,1],[L]:[0,5],[C]:[1,2],[y]:[0,2],[v]:[1,3]},(([e,t],s)=>{B(e?["get","has","forEach"]:["get"],(e=>k[e+c+s]=(...t)=>a[e+s](...t))),k[d+c+s+i]=(...e)=>a[d+s+i](...z(e,0,t),((s,...n)=>e[t](k,...n)),!0)})),ce(k)})),At=Xe((e=>{const s=me(),n=me(),a=me(),o=me(),[r,l,i]=et((()=>S)),[c,d,u,g,h,f,,,b,C,w,p]=Be(e,(()=>[me(),me(),me(),me()]),(e=>G(e)?void 0:e+t),r,l),L=(e,t,s)=>J(f(e),(([n,,a])=>{if(!Re(a,t)){const o=$e();if(h(e)!=y(e))qe(o,t);else{let e=t;for(;!G(e)&&!Re(o,e);)qe(o,e),e=xe(n,e)}if(s)return o;ke(a,t,o)}return xe(a,t)})),v=(e,t)=>J(f(e),(([,,e])=>ke(e,t))),y=e=>xe(s,e),S={setRelationshipDefinition:(e,t,r,i)=>(ke(s,e,r),b(e,t,((t,s)=>{const r=$e(),i=$e(),c=$e(),[d,u]=f(e);De(s,(([t,s],n)=>{G(t)||(qe(i,t),J(xe(u,t),(e=>{Ve(e,n),Ie(e)&&ke(u,t)}))),G(s)||(qe(i,s),Re(u,s)||ke(u,s,$e()),qe(xe(u,s),n)),qe(r,n),ke(d,n,s),Ee(xe(o,e),(t=>{Re(L(e,t),n)&&qe(c,t)}))})),t(),De(r,(t=>l(n,[e,t]))),De(i,(t=>l(a,[e,t]))),De(c,(t=>{v(e,t),l(o,[e,t])}))}),Ke(i)),S),delRelationshipDefinition:e=>(ke(s,e),C(e),S),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:y,getRemoteRowId:(e,t)=>xe(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(xe(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>G(f(e))?[t]:Te(L(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(L(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),S),destroy:p,getListenerStats:()=>({remoteRowId:ye(n),localRowIds:ye(a),linkedRowIds:ye(o)})};return ce(S)})),Gt=e=>[e,e],Jt=(e,t=ve)=>t(e[0])+t(e[1]),Ot=()=>[me(),me()],Ft=e=>[...e],Pt=([e,t])=>e===t,Qt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ne.fromEntries([...t]):t)),zt=JSON.parse,Nt=(e,t,s)=>ke(e,t,xe(e,t)==-s?void 0:s),Wt=()=>{let e,t,s=!1,n=!1,o=0,c=[];const g=me(),L=me(),M=me(),D=me(),V=me(),m=me(),H=me(),x=me(),E=me(),k=me(),A=me(),F=me(),Q=me(),N=me(),W=$e(),j=me(),$=me(),X=me(),Y=me(),Z=Ot(),te=Ot(),se=Ot(),ne=Ot(),ae=Ot(),oe=Ot(),re=Ot(),le=Ot(),ie=Ot(),de=Ot(),he=Ot(),Ce=Ot(),pe=Ot(),Te=Ot(),Ne=Ot(),_e=Ot(),Be=Ot(),Ke=Ot(),Xe=Ot(),Ye=Ot(),tt=Ot(),st=Ot(),nt=me(),at=Ot(),[ot,rt,it,ct]=et((()=>Fs)),dt=e=>{if(!we(e,((e,t)=>_([r,l],t))))return!1;const t=e[r];return!(!O(t)&&t!=a||(We(e[l])!=t&&ge(e,l),0))},ut=(t,s)=>(!e||Re(A,s)||Kt(s))&&we(t,((e,t)=>gt(s,t,e)),(()=>Kt(s))),gt=(e,t,s,n)=>we(n?s:Ct(s,e,t),((n,a)=>J(ht(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Kt(e,t))),ht=(t,s,n,a)=>e?J(xe(xe(A,t),n),(e=>We(a)!=e[r]?Kt(t,s,n,a,e[l]):a),(()=>Kt(t,s,n,a))):G(We(a))?Kt(t,s,n,a):a,ft=(e,t)=>we(t?e:wt(e),((t,s)=>J(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),bt=(e,s)=>t?J(xe(Q,e),(t=>We(s)!=t[r]?Xt(e,s,t[l]):s),(()=>Xt(e,s))):G(We(s))?Xt(e,s):s,Ct=(e,t,s)=>(J(xe(F,t),(([n,a])=>{De(n,((t,s)=>{ue(e,s)||(e[s]=t)})),De(a,(n=>{ue(e,n)||Kt(t,s,n)}))})),e),wt=e=>(t&&(De(N,((t,s)=>{ue(e,s)||(e[s]=t)})),De(W,(t=>{ue(e,t)||Xt(t)}))),e),pt=e=>Ge(A,e,((e,t,s)=>{const n=me(),a=$e();Ge(Ae(A,t,me),s,((e,t,s)=>{ke(e,t,s),J(s[l],(e=>ke(n,t,e)),(()=>qe(a,t)))})),ke(F,t,[n,a])}),((e,t)=>{ke(A,t),ke(F,t)})),Lt=e=>Ge(Q,e,((e,t,s)=>{ke(Q,t,s),J(s[l],(e=>ke(N,t,e)),(()=>qe(W,t)))}),((e,t)=>{ke(Q,t),ke(N,t),Ve(W,t)})),vt=e=>be(e)?ms():Is(e),yt=e=>Ge(X,e,((e,t,s)=>St(t,s)),((e,t)=>xt(t))),St=(e,t)=>Ge(Ae(X,e,(()=>(_t(e,1),ke(j,e,Ze()),ke($,e,me()),me()))),t,((t,s,n)=>Rt(e,t,s,n)),((t,s)=>Et(e,t,s))),Rt=(e,t,s,n,a)=>Ge(Ae(t,s,(()=>(jt(e,s,1),me()))),n,((t,n,a)=>It(e,s,t,n,a)),((n,o)=>kt(e,t,s,n,o,a))),It=(e,t,s,n,a)=>{Re(s,n)||Ut(e,t,n,1);const o=xe(s,n);a!==o&&($t(e,t,n,o,a),ke(s,n,a))},Tt=(e,t,s,n,a)=>J(xe(t,s),(t=>It(e,s,t,n,a)),(()=>Rt(e,t,s,Ct({[n]:a},e,s)))),Mt=e=>be(e)?Es():Ts(e),Dt=e=>Ge(Y,e,((e,t,s)=>Vt(t,s)),((e,t)=>At(t))),Vt=(e,t)=>{Re(Y,e)||qt(e,1);const s=xe(Y,e);t!==s&&(Bt(e,s,t),ke(Y,e,t))},mt=(e,t)=>{const[s]=xe(j,e),n=s(t);return Re(xe(X,e),n)?mt(e,t):n},Ht=e=>xe(X,e)??St(e,{}),xt=e=>St(e,{}),Et=(e,t,s)=>{const[,n]=xe(j,e);n(s),Rt(e,t,s,{},!0)},kt=(e,t,s,n,a,o)=>{const r=xe(xe(F,e)?.[0],a);if(!G(r)&&!o)return It(e,s,n,a,r);const l=t=>{$t(e,s,t,xe(n,t)),Ut(e,s,t,-1),ke(n,t)};G(r)?l(a):Ee(n,l),Ie(n)&&(jt(e,s,-1),Ie(ke(t,s))&&(_t(e,-1),ke(X,e),ke(j,e),ke($,e)))},At=e=>{const t=xe(N,e);if(!G(t))return Vt(e,t);Bt(e,xe(Y,e)),qt(e,-1),ke(Y,e)},_t=(e,t)=>Nt(g,e,t),jt=(e,t,s)=>Nt(Ae(D,e,me),t,s)&&ke(M,e,Ae(M,e,(()=>0))+s),Ut=(e,t,s,n)=>{const a=xe($,e),o=xe(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Nt(Ae(L,e,me),s,n),ke(a,s,o!=-n?o+n:null),Nt(Ae(Ae(V,e,me),t,me),s,n)},$t=(e,t,s,n,a)=>{Ae(Ae(Ae(m,e,me),t,me),s,(()=>[n,0]))[1]=a,c[3]?.(e,t,s,a)},qt=(e,t)=>Nt(H,e,t),Bt=(e,t,s)=>{Ae(x,e,(()=>[t,0]))[1]=s,c[4]?.(e,s)},Kt=(e,t,s,n,a)=>(ee(Ae(Ae(Ae(E,e,me),t,me),s,(()=>[])),n),a),Xt=(e,t,s)=>(ee(Ae(k,e,(()=>[])),t),s),Yt=(e,t,s)=>J(xe(xe(xe(m,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Gt(hs(e,t,s))])),Zt=e=>J(xe(x,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Gt(Cs(e))])),es=e=>Ie(E)||Ie(_e[e])?0:De(e?ze(E):E,((t,s)=>De(t,((t,n)=>De(t,((t,a)=>rt(_e[e],[s,n,a],t))))))),ts=e=>Ie(k)||Ie(Be[e])?0:De(e?Pe(k):k,((t,s)=>rt(Be[e],[s],t))),ss=(e,t,s,n)=>{if(!Ie(e))return rt(t,n,(()=>Je(e))),Ee(e,((e,t)=>rt(s,[...n??[],e],1==t))),1},ns=e=>{const t=ws();t!=s&&rt(Z[e],void 0,t);const n=Ie(de[e]),a=Ie(pe[e])&&Ie(Te[e])&&Ie(ie[e])&&Ie(he[e])&&Ie(oe[e])&&Ie(re[e])&&Ie(le[e])&&n&&Ie(se[e])&&Ie(ne[e]),o=Ie(Ne[e])&&Ie(Ce[e])&&Ie(ae[e])&&Ie(te[e]);if(!a||!o){const t=e?[Pe(g),Qe(L),Pe(M),Qe(D),ze(V),ze(m)]:[g,L,M,D,V,m];if(!a){ss(t[0],se[e],ne[e]),De(t[1],((t,s)=>ss(t,oe[e],re[e],[s]))),De(t[2],((t,s)=>{0!=t&&rt(le[e],[s],cs(s))}));const s=$e();De(t[3],((t,a)=>{ss(t,ie[e],he[e],[a])&&!n&&(rt(de[e],[a,null]),qe(s,a))})),n||De(t[5],((t,n)=>{if(!Re(s,n)){const s=$e();De(t,(e=>De(e,(([t,n],a)=>n!==t?qe(s,a):Ve(e,a))))),De(s,(t=>rt(de[e],[n,t])))}})),De(t[4],((t,s)=>De(t,((t,n)=>ss(t,pe[e],Te[e],[s,n])))))}if(!o){let s;De(t[5],((t,n)=>{let a;De(t,((t,o)=>{let r;De(t,(([t,l],i)=>{l!==t&&(rt(Ne[e],[n,o,i],l,t,Yt),s=a=r=1)})),r&&rt(Ce[e],[n,o],Yt)})),a&&rt(ae[e],[n],Yt)})),s&&rt(te[e],void 0,Yt)}}},as=e=>{const t=Ss();t!=n&&rt(Ke[e],void 0,t);const s=Ie(Ye[e])&&Ie(tt[e]),a=Ie(st[e])&&Ie(Xe[e]);if(!s||!a){const t=e?[Pe(H),Pe(x)]:[H,x];if(s||ss(t[0],Ye[e],tt[e]),!a){let s;De(t[1],(([t,n],a)=>{n!==t&&(rt(st[e],[a],n,t,Zt),s=1)})),s&&rt(Xe[e],void 0,Zt)}}},os=(e,...t)=>(Gs((()=>e(...K(t,T)))),Fs),rs=()=>Fe(X),ls=()=>He(X),is=e=>He(xe($,T(e))),cs=e=>Le(xe(X,T(e))),ds=e=>He(xe(X,T(e))),us=(e,t,s,n=0,a)=>{return K(z(q((o=xe(X,T(e)),r=(e,s)=>[G(t)?s:xe(e,T(t)),s],K([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>lt(e,t)*(s?-1:1))),n,G(a)?a:n+a),(([,e])=>e));var o,r},gs=(e,t)=>He(xe(xe(X,T(e)),T(t))),hs=(e,t,s)=>xe(xe(xe(X,T(e)),T(t)),T(s)),fs=()=>Je(Y),bs=()=>He(Y),Cs=e=>xe(Y,T(e)),ws=()=>!Ie(X),ps=e=>Re(X,T(e)),Ls=(e,t)=>Re(xe($,T(e)),T(t)),vs=(e,t)=>Re(xe(X,T(e)),T(t)),ys=(e,t,s)=>Re(xe(xe(X,T(e)),T(t)),T(s)),Ss=()=>!Ie(Y),Rs=e=>Re(Y,T(e)),Is=e=>os((()=>(e=>we(e,ut,Kt))(e)?yt(e):0)),Ts=e=>os((()=>ft(e)?Dt(e):0)),Ms=e=>{try{vt(zt(e))}catch{}return Fs},Ds=t=>os((()=>{if((e=we(t,(e=>we(e,dt))))&&(pt(t),!Ie(X))){const e=rs();ms(),Is(e)}})),Vs=e=>os((()=>{if(t=(e=>we(e,dt))(e)){const s=fs();As(),Es(),t=!0,Lt(e),Ts(s)}})),ms=()=>os((()=>yt({}))),Hs=e=>os((e=>Re(X,e)?xt(e):0),e),xs=(e,t)=>os(((e,t)=>J(xe(X,e),(s=>Re(s,t)?Et(e,s,t):0))),e,t),Es=()=>os((()=>Dt({}))),ks=()=>os((()=>{pt({}),e=!1})),As=()=>os((()=>{Lt({}),t=!1})),Gs=(e,t)=>{if(-1!=o){Js();const s=e();return Os(t),s}},Js=()=>(-1!=o&&o++,1==o&&(c[0]?.(),rt(nt)),Fs),Os=e=>(o>0&&(o--,0==o&&(o=1,es(1),Ie(m)||ns(1),ts(1),Ie(x)||as(1),e?.(Fs)&&(De(m,((e,t)=>De(e,((e,s)=>De(e,(([e],n)=>je(Fs,t,s,n,e))))))),Me(m),De(x,(([e],t)=>Ue(Fs,t,e))),Me(x)),rt(at[0],void 0),o=-1,es(0),Ie(m)||ns(0),ts(0),Ie(x)||as(0),c[1]?.(),rt(at[1],void 0),c[2]?.(),o=0,s=ws(),n=Ss(),B([g,L,M,D,V,m,E,H,x,k],Me))),Fs),Fs={getContent:()=>[rs(),fs()],getTables:rs,getTableIds:ls,getTable:e=>Oe(xe(X,T(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>Je(xe(xe(X,T(e)),T(t))),getCellIds:gs,getCell:hs,getValues:fs,getValueIds:bs,getValue:Cs,hasTables:ws,hasTable:ps,hasTableCell:Ls,hasRow:vs,hasCell:ys,hasValues:Ss,hasValue:Rs,getTablesJson:()=>Qt(X),getValuesJson:()=>Qt(Y),getJson:()=>Qt([X,Y]),getTablesSchemaJson:()=>Qt(A),getValuesSchemaJson:()=>Qt(Q),getSchemaJson:()=>Qt([A,Q]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>os((()=>{(be(e)?ms:Is)(e),(be(t)?Es:Ts)(t)})),setTables:Is,setTable:(e,t)=>os((e=>ut(t,e)?St(e,t):0),e),setRow:(e,t,s)=>os(((e,t)=>gt(e,t,s)?Rt(e,Ht(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Gs((()=>{let n;return gt(e,n,t)&&(e=T(e),Rt(e,Ht(e),n=mt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>os(((e,t)=>{if(gt(e,t,s,1)){const n=Ht(e);fe(s,((s,a)=>Tt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>os(((e,t,s)=>J(ht(e,t,s,P(n)?n(hs(e,t,s)):n),(n=>Tt(e,Ht(e),t,s,n)))),e,t,s),setValues:Ts,setPartialValues:e=>os((()=>ft(e,1)?fe(e,((e,t)=>Vt(t,e))):0)),setValue:(e,t)=>os((e=>J(bt(e,P(t)?t(Cs(e)):t),(t=>Vt(e,t)))),e),applyChanges:e=>os((()=>{fe(e[0],((e,t)=>G(e)?Hs(t):fe(e,((e,s)=>G(e)?xs(t,s):fe(e,((e,n)=>je(Fs,t,s,n,e))))))),fe(e[1],((e,t)=>Ue(Fs,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{Mt(zt(e))}catch{}return Fs},setJson:e=>os((()=>{try{const[t,s]=zt(e);vt(t),Mt(s)}catch{Ms(e)}})),setTablesSchema:Ds,setValuesSchema:Vs,setSchema:(e,t)=>os((()=>{Ds(e),Vs(t)})),delTables:ms,delTable:Hs,delRow:xs,delCell:(e,t,s,n)=>os(((e,t,s)=>J(xe(X,e),(a=>J(xe(a,t),(o=>Re(o,s)?kt(e,a,t,o,s,n):0))))),e,t,s),delValues:Es,delValue:e=>os((e=>Re(Y,e)?At(e):0),e),delTablesSchema:ks,delValuesSchema:As,delSchema:()=>os((()=>{ks(),As()})),transaction:Gs,startTransaction:Js,getTransactionChanges:()=>[Je(m,((e,t)=>-1===xe(g,t)?void 0:Je(e,((e,s)=>-1===xe(xe(D,t),s)?void 0:Je(e,(([,e])=>e),(e=>Pt(e)))),Ie,be)),Ie,be),Je(x,(([,e])=>e),(e=>Pt(e))),1],getTransactionLog:()=>[!Ie(m),!Ie(x),Fe(m,Ft,Pt),Fe(E),Je(x,Ft,Pt),Je(k),Je(g),Oe(D),Fe(V),Je(H)],finishTransaction:Os,forEachTable:e=>De(X,((t,s)=>e(s,(e=>De(t,((t,s)=>e(s,(e=>Ee(t,e))))))))),forEachTableCell:(e,t)=>Ee(xe($,T(e)),t),forEachRow:(e,t)=>De(xe(X,T(e)),((e,s)=>t(s,(t=>Ee(e,t))))),forEachCell:(e,t,s)=>Ee(xe(xe(X,T(e)),T(t)),s),forEachValue:e=>Ee(Y,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=us(e,t,s,n,a);return ot((()=>{const r=us(e,t,s,n,a);U(r,l)||(l=r,o(Fs,e,t,s,n,a,l))}),de[r?1:0],[e,t],[ls])},addStartTransactionListener:e=>ot(e,nt),addWillFinishTransactionListener:e=>ot(e,at[0]),addDidFinishTransactionListener:e=>ot(e,at[1]),callListener:e=>(ct(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({hasTables:Jt(Z),tables:Jt(te),tableIds:Jt(se),hasTable:Jt(ne),table:Jt(ae),tableCellIds:Jt(oe),hasTableCell:Jt(re,ye),rowCount:Jt(le),rowIds:Jt(ie),sortedRowIds:Jt(de),hasRow:Jt(he,ye),row:Jt(Ce,ye),cellIds:Jt(pe,ye),hasCell:Jt(Te,Se),cell:Jt(Ne,Se),invalidCell:Jt(_e,Se),hasValues:Jt(Ke),values:Jt(Xe),valueIds:Jt(Ye),hasValue:Jt(tt),value:Jt(st),invalidValue:Jt(Be),transaction:ve(nt)+Jt(at)}),isMergeable:()=>!1,createStore:Wt,addListener:ot,callListeners:rt,setInternalListeners:(e,t,s,n,a)=>c=[e,t,s,n,a]};return fe({[u+f]:[0,Z,[],()=>[ws()]],[f]:[0,te],[b]:[0,se],[u+h]:[1,ne,[ls],e=>[ps(...e)]],[h]:[1,ae,[ls]],[h+y]:[1,oe,[ls]],[u+h+v]:[2,re,[ls,is],e=>[Ls(...e)]],[w]:[1,le,[ls]],[p]:[1,ie,[ls]],[u+C]:[2,he,[ls,ds],e=>[vs(...e)]],[C]:[2,Ce,[ls,ds]],[y]:[2,pe,[ls,ds]],[u+v]:[3,Te,[ls,ds,gs],e=>[ys(...e)]],[v]:[3,Ne,[ls,ds,gs],e=>Gt(hs(...e))],InvalidCell:[3,_e],[u+R]:[0,Ke,[],()=>[Ss()]],[R]:[0,Xe],[I]:[0,Ye],[u+S]:[1,tt,[bs],e=>[Rs(...e)]],[S]:[1,st,[bs],e=>Gt(Cs(e[0]))],InvalidValue:[1,Be]},(([e,t,s,n],a)=>{Fs[d+a+i]=(...a)=>ot(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,n)})),ce(Fs)},_t=2**36,jt=2**30,Ut=2**24,$t=2**18,qt=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},Kt=(e=t)=>[Vt(e),Vt(e)];exports.Message=Et,exports.Persists=ht,exports.createCheckpoints=tt,exports.createCustomPersister=Ct,exports.createCustomSynchronizer=(e,s,n,a,o,r,l={})=>{let i,c=0,d=0;const u=me();n(((t,n,a,o)=>{d++,a==Et.Response?J(xe(u,n),(([e,s])=>G(e)||e==t?s(o,t):0)):a==Et.ContentHashes&&b.isAutoLoading()?f(t,o).then((e=>{i?.(void 0,e)})):a==Et.ContentDiff&&b.isAutoLoading()?i?.(void 0,o):J(a==Et.GetContentHashes&&b.isAutoSaving()?e.getMergeableContentHashes():a==Et.GetTableDiff?e.getMergeableTableDiff(o):a==Et.GetRowDiff?e.getMergeableRowDiff(o):a==Et.GetCellDiff?e.getMergeableCellDiff(o):a==Et.GetValueDiff?e.getMergeableValueDiff(o):void 0,(e=>{c++,s(t,n,Et.Response,e)}))}));const g=async(e,n,a=t)=>new V(((t,r)=>{const l=it(),i=setTimeout((()=>{Ve(u,l),r(`No response from ${e??"anyone"} to '${n}'`)}),1e3*o);ke(u,l,[e,(e,s)=>{clearTimeout(i),Ve(u,l),t([e,s])}]),c++,s(e,l,n,a)})),h=(e,[t,s])=>{he(t,(([t,s],n)=>{const a=Ce(e[0],n,Dt);he(t,(([e,t],s)=>{const n=Ce(a[0],s,Dt);he(e,(([e,t],s)=>n[0][s]=yt(e,t))),n[1]=Tt(n[1],t)})),a[1]=Tt(a[1],s)})),e[1]=Tt(e[1],s)},f=async(t=null,s)=>{G(s)&&([s,t]=await g(t,Et.GetContentHashes));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=Dt();if(o!=n){const[s,n]=(await g(t,Et.GetTableDiff,e.getMergeableTableHashes()))[0];if(l=s,!be(n)){const[s,a]=(await g(t,Et.GetRowDiff,e.getMergeableRowHashes(n)))[0];if(h(l,s),!be(a)){const s=(await g(t,Et.GetCellDiff,e.getMergeableCellHashes(a)))[0];h(l,s)}}}return[l,r==a?Dt():(await g(t,Et.GetValueDiff,e.getMergeableValueHashes()))[0],1]},b=Ct(e,(async()=>{const e=await f();return be(e[0][0])&&be(e[1][0])?void 0:e}),(async(t,n)=>{c++,n?s(null,null,Et.ContentDiff,n):s(null,null,Et.ContentHashes,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,ht.MergeableStoreOnly,{startSync:async e=>await(await b.startAutoLoad(e)).startAutoSave(),stopSync:()=>b.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),b.stopSync()),getSynchronizerStats:()=>({sends:c,receives:d}),...l});return b},exports.createIndexes=ct,exports.createMergeableStore=e=>{let s=1,n=Kt(),a=0;const o=me(),r=$e(),[l,i]=(e=>{let t=0,s=-1;const n=J(e,(e=>{const t=pt(e);return at(t/Ut)+at(t/$t)+at(t/qt)+at(t/64)+at(t)}),(()=>it(5))),a=e=>{const n=t,[a,o]=G(e)||""==e?[0,0]:[ot(r=e,0)*_t+ot(r,1)*jt+ot(r,2)*Ut+ot(r,3)*$t+ot(r,4)*qt+64*ot(r,5)+ot(r,6),ot(r,7)*$t+ot(r,8)*qt+64*ot(r,9)+ot(r,10)];var r;t=x(n,a,m.HLC_TIME??Date.now()),s=t==n?t==a?x(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,at((e=t)/_t)+at(e/jt)+at(e/Ut)+at(e/$t)+at(e/qt)+at(e/64)+at(e)+at(o/$t)+at(o/qt)+at(o/64)+at(o)+n;var e,o},a]})(e),c=Wt(),d=e=>{const t=s;return s=0,e(),s=t,b},u=(e,s=0)=>{const a={},o={},[[r,l=t,c=0],d]=e,[u,h]=n,[f,b,C]=u;let w=s?c:C,p=l;he(r,(([e,n=t,o=0],r)=>{const l=Ae(f,r,Vt),[i,c,d]=l;let u=s?o:d,h=n;he(e,((e,t)=>{const[n,o,l]=g(e,Ae(i,t,Vt),Ce(Ce(a,r,de),t,de),s);u^=s?0:(o?Rt(t,o):0)^Rt(t,l),h=Tt(h,n)})),u^=s?0:It(c,n),Mt(l,u,n),w^=s?0:(d?Rt(r,d):0)^Rt(r,l[2]),p=Tt(p,h)})),w^=s?0:It(b,l),Mt(u,w,l);const[L]=g(d,h,o,s);return i(Tt(p,L)),[a,o,1]},g=(e,s,n,a)=>{const[o,r=t,l=0]=e,[i,c,d]=s;let u=r,g=a?l:d;return he(o,(([e,s,o=0],r)=>{const l=Ae(i,r,(()=>[void 0,t,0])),[,c,d]=l;(!c||s>c)&&(Mt(l,a?o:pt(Qt(e??null)+":"+s),s),l[0]=e,n[r]=e,g^=a?0:Rt(r,d)^Rt(r,l[2]),u=Tt(u,s))})),g^=a?0:It(c,r),Mt(s,g,r),[u,d,s[2]]},h=()=>[mt(n[0],(e=>mt(e,(e=>mt(e))))),mt(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Je(n[0][0],St),getMergeableTableDiff:e=>{const t=Dt(n[0][1]),s={};return Ee(n[0][0],((n,[a,o,r])=>ue(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Ht([a,o],(e=>Ht(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return he(e,((e,s)=>J(xe(n[0][0],s),(([n,,a])=>a!=e?Ee(n,((e,[,,n])=>Ce(t,s,de)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=Dt(n[0][1]),s={};return he(e,((e,a)=>Ee(xe(n[0][0],a)?.[0],((n,[o,r,l])=>ue(e,n)?l!==e[n]?Ce(s,a,de)[n]=l:0:Ce(t[0],a,Dt)[0][n]=Ht([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return he(e,((e,s)=>J(xe(n[0][0],s),(([n])=>he(e,((e,a)=>J(xe(n,a),(([n,,o])=>o!==e?Ee(n,((e,[,,n])=>Ce(Ce(t,s,de),a,de)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return he(e,((e,s)=>he(e,((e,n)=>J(xe(t,s),(([t,o])=>J(xe(t,n),(([t,r])=>Ee(t,((t,[l,i,c])=>c!==e[t]?Ce(Ce(a,s,(()=>Dt(o)))[0],n,(()=>Dt(r)))[0][t]=[l,i]:0)))))))))),yt(a,s)},getMergeableValueHashes:()=>Je(n[1][0],St),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=Je(t,vt,(([,,t],s)=>t==e?.[s]));return yt(a,s)},setMergeableContent:e=>d((()=>(e=>Q(e)&&2==N(e)&&xt(e[0],(e=>we(e,(e=>xt(e,(e=>we(e,(e=>xt(e,(e=>we(e,(e=>xt(e,_e)),void 0,1)))),void 0,1)))),void 0,1)))&&xt(e[1],(e=>we(e,(e=>xt(e,_e)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Kt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};De(o,((t,s)=>J(xe(e,s),(([e,n])=>{const a={};De(t,((t,s)=>J(xe(e,s),(([e,n])=>{const o={};De(t,(t=>{J(xe(e,t),(([e,s])=>o[t]=yt(e,s)))})),a[s]=yt(o,n)})))),l[s]=yt(a,n)}))));const i={};return De(r,(e=>J(xe(s,e),(([t,s])=>i[e]=yt(t,s))))),[yt(l,t),yt(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{Me(o),Me(r)}),((e,n,r,i)=>{qe(Ae(Ae(o,e,me),n,$e),r),s&&u([[{[e]:[{[n]:[{[r]:[i,a?t:l()]}]}]}],[{}],1])}),((e,n)=>{qe(r,e),s&&u([[{}],[{[e]:[n,a?t:l()]}],1])})),fe(c,((e,t)=>b[t]=M(t,"set")||M(t,"del")||M(t,"apply")||D(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):M(t,"add")&&D(t,"Listener")?(...s)=>{const n=Bt[z(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),ce(b)},exports.createMetrics=gt,exports.createQueries=kt,exports.createRelationships=At,exports.createStore=Wt,exports.defaultSorter=lt,exports.getUniqueId=it;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",g="Ids",h="Table",f=h+"s",b=h+g,w="Row",C=w+"Count",p=w+g,L="Sorted"+w+g,v="Cell",I=v+g,y="Value",S=y+"s",R=y+g,T=e=>t+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),m=Promise,D=globalThis,x=Math,E=x.max,H=x.min,k=x.floor,A=isFinite,J=e=>null==e,F=(e,t,s)=>J(e)?s?.():t(e),O=e=>e==s||e==n,P=t=>e(t)==s,Q=t=>e(t)==o,z=e=>Array.isArray(e),G=(e,t,s)=>e.slice(t,s),N=e=>e.length,W=()=>{},_=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),U=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),$=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),q=(e,t)=>e.sort(t),B=(e,t)=>e.forEach(t),K=(e,t)=>e.map(t),X=e=>Z(e,((e,t)=>e+t),0),Y=e=>0==N(e),Z=(e,t,s)=>e.reduce(t,s),ee=(e,t)=>e.splice(0,t),te=(e,...t)=>e.push(...t),se=e=>e.pop(),ne=e=>e.shift(),ae=Object,oe=e=>ae.getPrototypeOf(e),re=ae.entries,le=ae.isFrozen,ie=e=>!J(e)&&F(oe(e),(e=>e==ae.prototype||J(oe(e))),(()=>!0)),ce=ae.keys,de=ae.freeze,ue=(e=[])=>ae.fromEntries(e),ge=(e,t)=>t in e,he=(e,t)=>(delete e[t],e),fe=(e,t)=>B(re(e),(([e,s])=>t(s,e))),be=(e,t)=>K(re(e),(([e,s])=>t(s,e))),we=e=>ie(e)&&0==(e=>N(ce(e)))(e),Ce=(e,t,s)=>(ge(e,t)||(e[t]=s()),e[t]),pe=(e,t,s,n=0)=>J(e)||!ie(e)||!n&&we(e)||le(e)?(s?.(),!1):(be(e,((s,n)=>{t(s,n)||he(e,n)})),!!n||!we(e)),Le=e=>t=>Z(Me(t),((t,s)=>t+e(s)),0),ve=e=>e?.size??0,Ie=Le(ve),ye=Le(Ie),Se=Le(ye),Re=(e,t)=>e?.has(t)??!1,Te=e=>J(e)||0==ve(e),Me=e=>[...e?.values()??[]],Ve=e=>e.clear(),me=(e,t)=>e?.forEach(t),De=(e,t)=>e?.delete(t),xe=e=>new Map(e),Ee=e=>[...e?.keys()??[]],He=(e,t)=>e?.get(t),ke=(e,t)=>me(e,((e,s)=>t(s,e))),Ae=(e,t,s)=>J(s)?(De(e,t),e):e?.set(t,s),Je=(e,t,s,n)=>(Re(e,t)?n?.(He(e,t)):Ae(e,t,s()),He(e,t)),Fe=(e,t,s,n=Ae)=>(be(t,((t,n)=>s(e,n,t))),ke(e,(s=>ge(t,s)?0:n(e,s))),e),Oe=(e,t,s,n)=>{const a={};return me(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},Pe=(e,t,s)=>Oe(e,(e=>Oe(e,t,s)),Te,we),Qe=(e,t,s)=>Oe(e,(e=>Pe(e,t,s)),Te,we),ze=(e,t)=>{const s=xe();return me(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ge=e=>ze(e,ze),Ne=e=>ze(e,Ge),We=(e,t,s,n,a=0)=>F((s?Je:He)(e,t[a],a>N(t)-2?s:xe),(o=>{if(a>N(t)-2)return n?.(o)&&Ae(e,t[a]),o;const r=We(o,t,s,n,a+1);return Te(o)&&Ae(e,t[a]),r})),_e=t=>{const s=e(t);return O(s)||s==a&&A(t)?s:void 0},je=e=>J(e)||!J(_e(e)),Ue=(e,t,s,n,a)=>J(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),$e=(e,t,s)=>J(s)?e.delValue(t):e.setValue(t,s),qe=e=>new Set(z(e)||J(e)?e:[e]),Be=(e,t)=>e?.add(t),Ke=(e,t,s,n,a)=>{const o=e.hasRow,r=xe(),l=xe(),i=xe(),c=xe(),d=xe(),u=xe(),g=(t,s,...n)=>{const a=Je(u,t,qe);return B(n,(t=>Be(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>F(He(u,t),(n=>{B(Y(s)?Me(n):s,(t=>{e.delListener(t),De(n,t)})),Te(n)&&Ae(u,t)})),f=(e,s)=>{Ae(r,e,s),Re(l,e)||(Ae(l,e,t()),Ae(c,e,xe()),Ae(d,e,xe()),a(i))},b=e=>{Ae(r,e),Ae(l,e),Ae(c,e),Ae(d,e),h(e),a(i)};return[()=>e,()=>Ee(r),e=>ke(l,e),e=>Re(l,e),e=>He(r,e),e=>He(l,e),(e,t)=>Ae(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=xe(),u=xe(),b=He(c,t),w=He(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=He(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&U(c,d)||Ae(i,t,[c,d]),!J(l)){const e=He(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&Ae(u,t,s)}},p=e=>{a((()=>{me(i,(([,e],t)=>Ae(b,t,e))),me(u,((e,t)=>Ae(w,t,e)))}),i,u,b,w,e),Ve(i),Ve(u)};ke(b,C),e.hasTable(n)&&B(e.getRowIds(n),(e=>{Re(b,e)||C(e)})),p(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>p())))},b,e=>n(e,i),()=>ke(u,b),g,h]},Xe=(e,s)=>P(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 a=s.get(n);return t?.(a),a}},Ze=/^\d+$/,et=()=>{const e=[];let s=0;return[n=>(n?ne(e):null)??t+s++,t=>{Ze.test(t)&&N(e)<1e3&&te(e,t)}]},tt=e=>{let s;const[n,a]=et(),o=xe();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Ae(o,d,[a,r,l,i,c]),Be(We(r,l??[t],qe),d),d},(e,n,...a)=>B(((e,s=[t])=>{const n=[],a=(e,t)=>t==N(s)?te(n,e):null===s[t]?me(e,(e=>a(e,t+1))):B([s[t],null],(s=>a(He(e,s),t+1)));return a(e,0),n})(e,n),(e=>me(e,(e=>He(o,e)[0](s,...n??[],...a))))),e=>F(He(o,e),(([,s,n])=>(We(s,n??[t],void 0,(t=>(De(t,e),Te(t)?1:0))),Ae(o,e),a(e),n))),e=>F(He(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(t)?e(s,...r,...a(r)):J(t[l])?B(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},st=Ye((e=>{let s,n,a,o=100,r=xe(),l=xe(),i=1;const c=xe(),d=xe(),[u,g,h]=tt((()=>k)),f=xe(),b=xe(),w=[],C=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=He(f,s);me(n,((s,n)=>me(s,((s,a)=>me(s,((s,o)=>Ue(e,n,a,o,s[t]))))))),me(a,((s,n)=>$e(e,n,s[t])))})),i=1},L=e=>{Ae(f,e),Ae(b,e),g(d,[e])},v=(e,t)=>B(ee(e,t??N(e)),L),I=()=>v(w,N(w)-o),y=()=>F(s,(()=>{te(w,s),I(),v(C),s=void 0,a=1})),S=()=>{s=se(w),a=1};let R,T;const M=(e=t)=>(J(s)&&(s=t+n++,Ae(f,s,[r,l]),E(s,e),r=xe(),l=xe(),a=1),s),V=()=>{Y(w)||(((e,...t)=>{e.unshift(...t)})(C,M()),p(0,s),s=se(w),a=1)},m=()=>{Y(C)||(te(w,s),s=ne(C),p(1,s),a=1)},D=()=>{a&&(g(c),a=0)},x=e=>{const t=M(e);return D(),t},E=(e,t)=>(H(e)&&He(b,e)!==t&&(Ae(b,e,t),g(d,[e])),k),H=e=>Re(f,e),k={setSize:e=>(o=e,I(),k),addCheckpoint:x,setCheckpoint:E,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...C]],forEachCheckpoint:e=>ke(b,e),hasCheckpoint:H,getCheckpoint:e=>He(b,e),goBackward:()=>(V(),D(),k),goForward:()=>(m(),D(),k),goTo:e=>{const t=_(w,e)?V:_(C,e)?m:null;for(;!J(t)&&e!=s;)t();return D(),k},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),k),clear:()=>(v(w),v(C),J(s)||L(s),s=void 0,n=0,x(),k),clearForward:()=>(Y(C)||(v(C),g(c)),k),destroy:()=>{e.delListener(R),e.delListener(T)},getListenerStats:()=>({checkpointIds:Ie(c),checkpoint:Ie(d)}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){y();const e=Je(r,t,xe),l=Je(e,s,xe),i=Je(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Te(Ae(l,n))&&Te(Ae(e,s))&&Te(Ae(r,t))&&S(),D()}})),T=e.addValueListener(null,((e,t,s,n)=>{if(i){y();const e=Je(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Te(Ae(l,t))&&S(),D()}}))}};return de(k.clear())}),(e=>e._registerListeners())),nt="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t),at=xe(K(nt,((e,t)=>[e,t]))),ot=e=>nt[63&e],rt=(e,t)=>He(at,e[t])??0,lt=D.crypto?e=>D.crypto.getRandomValues(e):e=>K(e,(()=>k(256*x.random()))),it=(e,t)=>(e??0)<(t??0)?-1:1,ct=(e=16)=>Z(lt(new Uint8Array(e)),((e,t)=>e+ot(t)),""),dt=Ye((e=>{const s=xe(),n=xe(),[a,o,r]=tt((()=>L)),[l,i,c,d,u,g,h,,f,b,w,C]=Ke(e,xe,(e=>J(e)?t:z(e)?K(e,T):T(e)),a,o),p=(t,s,n)=>{const a=u(t);me(n,((t,n)=>s(n,(s=>me(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},L={setIndexDefinition:(e,t,a,r,l,i=it)=>{const c=J(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let b=0;const w=qe(),C=qe(),p=g(e);if(me(a,(([e,t],s)=>{const n=qe(e),a=qe(t);me(n,(e=>De(a,e)?De(n,e):0)),me(n,(e=>{Be(w,e),F(He(p,e),(t=>{De(t,s),Te(t)&&(Ae(p,e),b=1)}))})),me(a,(e=>{Be(w,e),Re(p,e)||(Ae(p,e,qe()),b=1),Be(He(p,e),s),J(r)||Be(C,e)}))})),t(),Te(u)||(f?ke(p,(e=>Be(C,e))):ke(l,(e=>F(He(d,e),(e=>Be(C,e))))),me(C,(e=>{const t=(t,s)=>i(He(u,t),He(u,s),e),s=[...He(p,e)];$(s,t)||(Ae(p,e,qe(q(s,t))),Be(w,e))}))),(b||f)&&!J(c)){const t=[...p];$(t,c)||(h(e,xe(q(t,c))),b=1)}b&&o(s,[e]),me(w,(t=>o(n,[e,t])))}),Xe(a),F(r,Xe)),L},delIndexDefinition:e=>(b(e),L),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Re(g(e),t),getTableId:u,getSliceIds:e=>Ee(g(e)),getSliceRowIds:(e,t)=>Me(He(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),L),destroy:C,getListenerStats:()=>({sliceIds:Ie(s),sliceRowIds:ye(n)})};return de(L)})),ut=xe([["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=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>X(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),gt=(e,t,s,n,a,o=!1)=>{if(Te(s))return;const[r,l,i,c]=a;return o||=J(e),me(n,(([s,n])=>{o||(e=J(s)?l?.(e,n,t++):J(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=J(e))})),o?r(Me(s),ve(s)):e},ht=Ye((e=>{const s=xe(),[n,a,o]=tt((()=>C)),[r,l,i,c,d,u,g,,h,f,b,w]=Ke(e,W,(e=>isNaN(e)||J(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),C={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:He(ut,n)??He(ut,"sum");return h(e,t,((t,n,o,r,l,i)=>{const d=u(e),h=ve(r);i||=J(d),t();let f=gt(d,h,r,n,c,i);A(f)||(f=void 0),f!=d&&(g(e,f),a(s,[e],f,d))}),Xe(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({metric:Ie(s)})};return de(C)})),ft=xe(),bt=xe(),wt=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0,h=0,f=0;Je(ft,i,(()=>0)),Je(bt,i,(()=>[]));const[b,w,C,p,L]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!we(e)||!we(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!we(e)||!we(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(r,e),v=t=>{(b&&z(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},I=async e=>(2!=g&&(g=1,h++,await T((async()=>{try{v(await t())}catch(t){o?.(t),e&&L(e)}g=0}))),M),y=()=>(d&&(a(d),d=void 0),M),S=async e=>(1!=g&&(g=2,f++,await T((async()=>{try{await s(w,e)}catch(e){o?.(e)}g=0}))),M),R=()=>(F(u,e.delListener),u=void 0,M),T=async(...e)=>(te(He(bt,i),...e),await(async()=>{if(!He(ft,i)){for(Ae(ft,i,1);!J(c=ne(He(bt,i)));)try{await c()}catch(e){o?.(e)}Ae(ft,i,0)}})(),M),M={load:I,startAutoLoad:async e=>{await y().load(e);try{d=n((async(e,t)=>{t||e?2!=g&&(g=1,h++,v(t??e),g=0):await I()}))}catch(e){o?.(e)}return M},stopAutoLoad:y,isAutoLoading:()=>!J(d),save:S,startAutoSave:async()=>(await R().save(),u=e.addDidFinishTransactionListener((()=>{const e=C();p(e)&&S(e)})),M),stopAutoSave:R,isAutoSaving:()=>!J(u),schedule:T,getStore:()=>e,destroy:()=>(ee(He(bt,i)),y().stopAutoSave()),getStats:()=>({loads:h,saves:f}),...l};return de(M)},Ct=new D.TextEncoder,pt=e=>{let t=2166136261;return B(Ct.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],vt=([e,t])=>It(e,t),It=(e,t)=>t?[e,t]:[e],yt=e=>e[2],St=(e,t)=>pt(e+":"+t),Rt=(e,t)=>t>e?(e?pt(e):0)^pt(t):0,Tt=(e,t)=>((e??"")>(t??"")?e:t)??"",Mt=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},Vt=(e=t)=>It(ue(),e),mt=(e=t)=>[xe(),e,0],Dt=([e,t,s],n=Lt)=>[Oe(e,n),t,s],xt=([e,t],s=vt)=>It(Oe(e,s),t),Et=(t,s)=>z(t)&&3==N(t)&&P(t[1])&&e(t[2])==a&&A(t[2])&&s(t[0]),Ht=Ye((e=>{const s=e.createStore,n=s(),a=s(),o=xe(),{addListener:r,callListeners:l,delListener:u}=a,[g,f,b,y,S,,,R,,T,M,V,m,D]=Ke(e,(()=>!0),W,r,l),x=(e,t,...s)=>B(s,(s=>Be(Je(Je(o,t,xe),e,qe),s))),E=e=>{F(He(o,e),(e=>{ke(e,((e,t)=>me(t,(t=>e.delListener(t))))),Ve(e)})),B([a,n],(t=>t.delTable(e)))},H=(e,t,s)=>x(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(s,o,r)=>{R(s,o),E(s);const l=[],i=[[null,[o,null,null,[],xe()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=Q(e)?[N(l)+t,e]:[J(s)?e:s,t=>t(e,s)];return te(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=J(s)||Q(t)?null:t,a=J(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],xe()]];return te(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>te(c,Q(e)?e:J(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:He(ut,t)??[(e,t)=>t]]];return te(d,o),{as:e=>o[0]=e}},having:(e,t)=>te(u,Q(e)?e:s=>s(e)===t)});const g=xe(l);if(Te(g))return k;const h=xe(i);ke(h,((e,[,t])=>F(He(h,t),(({3:t})=>J(e)?0:te(t,e)))));const f=xe(d);let b=n;if(Te(f)&&Y(u))b=a;else{H(s,b,a);const e=xe();ke(f,((t,[s,n])=>Be(Je(e,s,qe),[t,n])));const t=qe();ke(g,(s=>Re(e,s)?0:Be(t,s)));const n=xe(),o=(t,n,o,r)=>F(t,(([l,i,c,d])=>{ke(n,((t,[s])=>{const n=Je(l,t,xe),a=He(n,o),i=r?void 0:s;if(a!==i){const s=qe([[a,i]]),r=ve(n);Ae(n,o,i),me(He(e,t),(([e,t])=>{const a=gt(d[e],r,n,s,t);d[e]=J(_e(a))?null:a}))}})),Te(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(s,c):J(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));x(b,s,b.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=xe(),g=b.hasRow(s,l);let h=!g;me(t,(e=>{const[t,n,a]=i(s,l,e);te(c,n),te(d,a),h||=t})),ke(e,(e=>{const[t,,n]=i(s,l,e);(h||t)&&Ae(u,e,[n])})),h&&o(We(n,c,void 0,(([,e])=>(De(e,l),Te(e)))),u,l,1),g&&o(We(n,d,(()=>{const e={};return me(t,(t=>e[t]=b.getCell(s,l,t))),[xe(),qe(),void 0,e]}),(([,e])=>{Be(e,l)})),u,l)})))}H(s,e,b);const w=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);B(r,(n=>{const[a,,o,r,i]=He(h,n),c=o?.(l,t),[d,u]=He(i,t)??[];c!=d&&(J(u)||D(s,u),Ae(i,t,J(c)?null:[c,...m(s,1,e.addRowListener(a,c,(()=>w(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...J(n)?[o,t,s]:s===o?[o,t,n]:[He(h,s)?.[0],He(He(h,s)?.[4],t)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?ke(g,((e,a)=>Ue(b,s,t,e,a(n,t)))):b.delRow(s,t)))})(t)},{3:C}=He(h,null);return b.transaction((()=>m(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(b.delRow(s,a),me(h,(({4:e})=>F(He(e,a),(([,t])=>{D(s,t),Ae(e,a)})))))}))))),k},delQueryDefinition:e=>(E(e),T(e),k),getStore:g,getQueryIds:f,forEachQuery:b,hasQuery:y,getTableId:S,addQueryIdsListener:e=>M((()=>e(k))),delListener:e=>(u(e),k),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return be({[h]:[1,1],[h+I]:[0,1],[C]:[0,1],[p]:[0,1],[L]:[0,5],[w]:[1,2],[I]:[0,2],[v]:[1,3]},(([e,t],s)=>{B(e?["get","has","forEach"]:["get"],(e=>k[e+c+s]=(...t)=>a[e+s](...t))),k[d+c+s+i]=(...e)=>a[d+s+i](...G(e,0,t),((s,...n)=>e[t](k,...n)),!0)})),de(k)})),kt=Ye((e=>{const s=xe(),n=xe(),a=xe(),o=xe(),[r,l,i]=tt((()=>y)),[c,d,u,g,h,f,,,b,w,C,p]=Ke(e,(()=>[xe(),xe(),xe(),xe()]),(e=>J(e)?void 0:e+t),r,l),L=(e,t,s)=>F(f(e),(([n,,a])=>{if(!Re(a,t)){const o=qe();if(h(e)!=I(e))Be(o,t);else{let e=t;for(;!J(e)&&!Re(o,e);)Be(o,e),e=He(n,e)}if(s)return o;Ae(a,t,o)}return He(a,t)})),v=(e,t)=>F(f(e),(([,,e])=>Ae(e,t))),I=e=>He(s,e),y={setRelationshipDefinition:(e,t,r,i)=>(Ae(s,e,r),b(e,t,((t,s)=>{const r=qe(),i=qe(),c=qe(),[d,u]=f(e);me(s,(([t,s],n)=>{J(t)||(Be(i,t),F(He(u,t),(e=>{De(e,n),Te(e)&&Ae(u,t)}))),J(s)||(Be(i,s),Re(u,s)||Ae(u,s,qe()),Be(He(u,s),n)),Be(r,n),Ae(d,n,s),ke(He(o,e),(t=>{Re(L(e,t),n)&&Be(c,t)}))})),t(),me(r,(t=>l(n,[e,t]))),me(i,(t=>l(a,[e,t]))),me(c,(t=>{v(e,t),l(o,[e,t])}))}),Xe(i)),y),delRelationshipDefinition:e=>(Ae(s,e),w(e),y),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:I,getRemoteRowId:(e,t)=>He(f(e)?.[0],t),getLocalRowIds:(e,t)=>Me(He(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>J(f(e))?[t]:Me(L(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(L(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),y),destroy:p,getListenerStats:()=>({remoteRowId:ye(n),localRowIds:ye(a),linkedRowIds:ye(o)})};return de(y)})),At=e=>[e,e],Jt=(e,t=Ie)=>t(e[0])+t(e[1]),Ft=()=>[xe(),xe()],Ot=e=>[...e],Pt=([e,t])=>e===t,Qt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ae.fromEntries([...t]):t)),zt=JSON.parse,Gt=(e,t,s)=>Ae(e,t,He(e,t)==-s?void 0:s),Nt=()=>{let e,t,s=!1,n=!1,o=0,c=[];const g=xe(),L=xe(),M=xe(),V=xe(),m=xe(),D=xe(),x=xe(),E=xe(),H=xe(),k=xe(),A=xe(),P=xe(),z=xe(),N=xe(),W=qe(),j=xe(),$=xe(),X=xe(),Y=xe(),Z=Ft(),ee=Ft(),se=Ft(),ne=Ft(),ae=Ft(),oe=Ft(),re=Ft(),le=Ft(),ie=Ft(),ce=Ft(),ue=Ft(),fe=Ft(),Ce=Ft(),Le=Ft(),Me=Ft(),We=Ft(),je=Ft(),Ke=Ft(),Xe=Ft(),Ye=Ft(),Ze=Ft(),st=Ft(),nt=xe(),at=Ft(),[ot,rt,lt,ct]=tt((()=>Ps)),dt=e=>{if(!pe(e,((e,t)=>_([r,l],t))))return!1;const t=e[r];return!(!O(t)&&t!=a||(_e(e[l])!=t&&he(e,l),0))},ut=(t,s)=>(!e||Re(A,s)||Kt(s))&&pe(t,((e,t)=>gt(s,t,e)),(()=>Kt(s))),gt=(e,t,s,n)=>pe(n?s:wt(s,e,t),((n,a)=>F(ht(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Kt(e,t))),ht=(t,s,n,a)=>e?F(He(He(A,t),n),(e=>_e(a)!=e[r]?Kt(t,s,n,a,e[l]):a),(()=>Kt(t,s,n,a))):J(_e(a))?Kt(t,s,n,a):a,ft=(e,t)=>pe(t?e:Ct(e),((t,s)=>F(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),bt=(e,s)=>t?F(He(z,e),(t=>_e(s)!=t[r]?Xt(e,s,t[l]):s),(()=>Xt(e,s))):J(_e(s))?Xt(e,s):s,wt=(e,t,s)=>(F(He(P,t),(([n,a])=>{me(n,((t,s)=>{ge(e,s)||(e[s]=t)})),me(a,(n=>{ge(e,n)||Kt(t,s,n)}))})),e),Ct=e=>(t&&(me(N,((t,s)=>{ge(e,s)||(e[s]=t)})),me(W,(t=>{ge(e,t)||Xt(t)}))),e),pt=e=>Fe(A,e,((e,t,s)=>{const n=xe(),a=qe();Fe(Je(A,t,xe),s,((e,t,s)=>{Ae(e,t,s),F(s[l],(e=>Ae(n,t,e)),(()=>Be(a,t)))})),Ae(P,t,[n,a])}),((e,t)=>{Ae(A,t),Ae(P,t)})),Lt=e=>Fe(z,e,((e,t,s)=>{Ae(z,t,s),F(s[l],(e=>Ae(N,t,e)),(()=>Be(W,t)))}),((e,t)=>{Ae(z,t),Ae(N,t),De(W,t)})),vt=e=>we(e)?Ds():Rs(e),It=e=>Fe(X,e,((e,t,s)=>yt(t,s)),((e,t)=>Et(t))),yt=(e,t)=>Fe(Je(X,e,(()=>(_t(e,1),Ae(j,e,et()),Ae($,e,xe()),xe()))),t,((t,s,n)=>St(e,t,s,n)),((t,s)=>Ht(e,t,s))),St=(e,t,s,n,a)=>Fe(Je(t,s,(()=>(jt(e,s,1),xe()))),n,((t,n,a)=>Rt(e,s,t,n,a)),((n,o)=>kt(e,t,s,n,o,a))),Rt=(e,t,s,n,a)=>{Re(s,n)||Ut(e,t,n,1);const o=He(s,n);a!==o&&($t(e,t,n,o,a),Ae(s,n,a))},Tt=(e,t,s,n,a)=>F(He(t,s),(t=>Rt(e,s,t,n,a)),(()=>St(e,t,s,wt({[n]:a},e,s)))),Mt=e=>we(e)?Hs():Ts(e),Vt=e=>Fe(Y,e,((e,t,s)=>mt(t,s)),((e,t)=>Wt(t))),mt=(e,t)=>{Re(Y,e)||qt(e,1);const s=He(Y,e);t!==s&&(Bt(e,s,t),Ae(Y,e,t))},Dt=(e,t)=>{const[s]=He(j,e),n=s(t);return Re(He(X,e),n)?Dt(e,t):n},xt=e=>He(X,e)??yt(e,{}),Et=e=>yt(e,{}),Ht=(e,t,s)=>{const[,n]=He(j,e);n(s),St(e,t,s,{},!0)},kt=(e,t,s,n,a,o)=>{const r=He(He(P,e)?.[0],a);if(!J(r)&&!o)return Rt(e,s,n,a,r);const l=t=>{$t(e,s,t,He(n,t)),Ut(e,s,t,-1),Ae(n,t)};J(r)?l(a):ke(n,l),Te(n)&&(jt(e,s,-1),Te(Ae(t,s))&&(_t(e,-1),Ae(X,e),Ae(j,e),Ae($,e)))},Wt=e=>{const t=He(N,e);if(!J(t))return mt(e,t);Bt(e,He(Y,e)),qt(e,-1),Ae(Y,e)},_t=(e,t)=>Gt(g,e,t),jt=(e,t,s)=>Gt(Je(V,e,xe),t,s)&&Ae(M,e,Je(M,e,(()=>0))+s),Ut=(e,t,s,n)=>{const a=He($,e),o=He(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Gt(Je(L,e,xe),s,n),Ae(a,s,o!=-n?o+n:null),Gt(Je(Je(m,e,xe),t,xe),s,n)},$t=(e,t,s,n,a)=>{Je(Je(Je(D,e,xe),t,xe),s,(()=>[n,0]))[1]=a,c[3]?.(e,t,s,a)},qt=(e,t)=>Gt(x,e,t),Bt=(e,t,s)=>{Je(E,e,(()=>[t,0]))[1]=s,c[4]?.(e,s)},Kt=(e,t,s,n,a)=>(te(Je(Je(Je(H,e,xe),t,xe),s,(()=>[])),n),a),Xt=(e,t,s)=>(te(Je(k,e,(()=>[])),t),s),Yt=(e,t,s)=>F(He(He(He(D,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...At(hs(e,t,s))])),Zt=e=>F(He(E,e),(([e,t])=>[!0,e,t]),(()=>[!1,...At(ws(e))])),es=e=>Te(H)||Te(We[e])?0:me(e?Ne(H):H,((t,s)=>me(t,((t,n)=>me(t,((t,a)=>rt(We[e],[s,n,a],t))))))),ts=e=>Te(k)||Te(je[e])?0:me(e?ze(k):k,((t,s)=>rt(je[e],[s],t))),ss=(e,t,s,n)=>{if(!Te(e))return rt(t,n,(()=>Oe(e))),ke(e,((e,t)=>rt(s,[...n??[],e],1==t))),1},ns=e=>{const t=Cs();t!=s&&rt(Z[e],void 0,t);const n=Te(ce[e]),a=Te(Ce[e])&&Te(Le[e])&&Te(ie[e])&&Te(ue[e])&&Te(oe[e])&&Te(re[e])&&Te(le[e])&&n&&Te(se[e])&&Te(ne[e]),o=Te(Me[e])&&Te(fe[e])&&Te(ae[e])&&Te(ee[e]);if(!a||!o){const t=e?[ze(g),Ge(L),ze(M),Ge(V),Ne(m),Ne(D)]:[g,L,M,V,m,D];if(!a){ss(t[0],se[e],ne[e]),me(t[1],((t,s)=>ss(t,oe[e],re[e],[s]))),me(t[2],((t,s)=>{0!=t&&rt(le[e],[s],cs(s))}));const s=qe();me(t[3],((t,a)=>{ss(t,ie[e],ue[e],[a])&&!n&&(rt(ce[e],[a,null]),Be(s,a))})),n||me(t[5],((t,n)=>{if(!Re(s,n)){const s=qe();me(t,(e=>me(e,(([t,n],a)=>n!==t?Be(s,a):De(e,a))))),me(s,(t=>rt(ce[e],[n,t])))}})),me(t[4],((t,s)=>me(t,((t,n)=>ss(t,Ce[e],Le[e],[s,n])))))}if(!o){let s;me(t[5],((t,n)=>{let a;me(t,((t,o)=>{let r;me(t,(([t,l],i)=>{l!==t&&(rt(Me[e],[n,o,i],l,t,Yt),s=a=r=1)})),r&&rt(fe[e],[n,o],Yt)})),a&&rt(ae[e],[n],Yt)})),s&&rt(ee[e],void 0,Yt)}}},as=e=>{const t=ys();t!=n&&rt(Ke[e],void 0,t);const s=Te(Ye[e])&&Te(Ze[e]),a=Te(st[e])&&Te(Xe[e]);if(!s||!a){const t=e?[ze(x),ze(E)]:[x,E];if(s||ss(t[0],Ye[e],Ze[e]),!a){let s;me(t[1],(([t,n],a)=>{n!==t&&(rt(st[e],[a],n,t,Zt),s=1)})),s&&rt(Xe[e],void 0,Zt)}}},os=(e,...t)=>(Js((()=>e(...K(t,T)))),Ps),rs=()=>Qe(X),ls=()=>Ee(X),is=e=>Ee(He($,T(e))),cs=e=>ve(He(X,T(e))),ds=e=>Ee(He(X,T(e))),us=(e,t,s,n=0,a)=>{return K(G(q((o=He(X,T(e)),r=(e,s)=>[J(t)?s:He(e,T(t)),s],K([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>it(e,t)*(s?-1:1))),n,J(a)?a:n+a),(([,e])=>e));var o,r},gs=(e,t)=>Ee(He(He(X,T(e)),T(t))),hs=(e,t,s)=>He(He(He(X,T(e)),T(t)),T(s)),fs=()=>Oe(Y),bs=()=>Ee(Y),ws=e=>He(Y,T(e)),Cs=()=>!Te(X),ps=e=>Re(X,T(e)),Ls=(e,t)=>Re(He($,T(e)),T(t)),vs=(e,t)=>Re(He(X,T(e)),T(t)),Is=(e,t,s)=>Re(He(He(X,T(e)),T(t)),T(s)),ys=()=>!Te(Y),Ss=e=>Re(Y,T(e)),Rs=e=>os((()=>(e=>pe(e,ut,Kt))(e)?It(e):0)),Ts=e=>os((()=>ft(e)?Vt(e):0)),Ms=e=>{try{vt(zt(e))}catch{}return Ps},Vs=t=>os((()=>{if((e=pe(t,(e=>pe(e,dt))))&&(pt(t),!Te(X))){const e=rs();Ds(),Rs(e)}})),ms=e=>os((()=>{if(t=(e=>pe(e,dt))(e)){const s=fs();As(),Hs(),t=!0,Lt(e),Ts(s)}})),Ds=()=>os((()=>It({}))),xs=e=>os((e=>Re(X,e)?Et(e):0),e),Es=(e,t)=>os(((e,t)=>F(He(X,e),(s=>Re(s,t)?Ht(e,s,t):0))),e,t),Hs=()=>os((()=>Vt({}))),ks=()=>os((()=>{pt({}),e=!1})),As=()=>os((()=>{Lt({}),t=!1})),Js=(e,t)=>{if(-1!=o){Fs();const s=e();return Os(t),s}},Fs=()=>(-1!=o&&o++,1==o&&(c[0]?.(),rt(nt)),Ps),Os=e=>(o>0&&(o--,0==o&&(o=1,es(1),Te(D)||ns(1),ts(1),Te(E)||as(1),e?.(Ps)&&(me(D,((e,t)=>me(e,((e,s)=>me(e,(([e],n)=>Ue(Ps,t,s,n,e))))))),Ve(D),me(E,(([e],t)=>$e(Ps,t,e))),Ve(E)),rt(at[0],void 0),o=-1,es(0),Te(D)||ns(0),ts(0),Te(E)||as(0),c[1]?.(),rt(at[1],void 0),c[2]?.(),o=0,s=Cs(),n=ys(),B([g,L,M,V,m,D,H,x,E,k],Ve))),Ps),Ps={getContent:()=>[rs(),fs()],getTables:rs,getTableIds:ls,getTable:e=>Pe(He(X,T(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>Oe(He(He(X,T(e)),T(t))),getCellIds:gs,getCell:hs,getValues:fs,getValueIds:bs,getValue:ws,hasTables:Cs,hasTable:ps,hasTableCell:Ls,hasRow:vs,hasCell:Is,hasValues:ys,hasValue:Ss,getTablesJson:()=>Qt(X),getValuesJson:()=>Qt(Y),getJson:()=>Qt([X,Y]),getTablesSchemaJson:()=>Qt(A),getValuesSchemaJson:()=>Qt(z),getSchemaJson:()=>Qt([A,z]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>os((()=>{(we(e)?Ds:Rs)(e),(we(t)?Hs:Ts)(t)})),setTables:Rs,setTable:(e,t)=>os((e=>ut(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>os(((e,t)=>gt(e,t,s)?St(e,xt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let n;return gt(e,n,t)&&(e=T(e),St(e,xt(e),n=Dt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>os(((e,t)=>{if(gt(e,t,s,1)){const n=xt(e);be(s,((s,a)=>Tt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>os(((e,t,s)=>F(ht(e,t,s,Q(n)?n(hs(e,t,s)):n),(n=>Tt(e,xt(e),t,s,n)))),e,t,s),setValues:Ts,setPartialValues:e=>os((()=>ft(e,1)?be(e,((e,t)=>mt(t,e))):0)),setValue:(e,t)=>os((e=>F(bt(e,Q(t)?t(ws(e)):t),(t=>mt(e,t)))),e),applyChanges:e=>os((()=>{be(e[0],((e,t)=>J(e)?xs(t):be(e,((e,s)=>J(e)?Es(t,s):be(e,((e,n)=>Ue(Ps,t,s,n,e))))))),be(e[1],((e,t)=>$e(Ps,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{Mt(zt(e))}catch{}return Ps},setJson:e=>os((()=>{try{const[t,s]=zt(e);vt(t),Mt(s)}catch{Ms(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>os((()=>{Vs(e),ms(t)})),delTables:Ds,delTable:xs,delRow:Es,delCell:(e,t,s,n)=>os(((e,t,s)=>F(He(X,e),(a=>F(He(a,t),(o=>Re(o,s)?kt(e,a,t,o,s,n):0))))),e,t,s),delValues:Hs,delValue:e=>os((e=>Re(Y,e)?Wt(e):0),e),delTablesSchema:ks,delValuesSchema:As,delSchema:()=>os((()=>{ks(),As()})),transaction:Js,startTransaction:Fs,getTransactionChanges:()=>[Oe(D,((e,t)=>-1===He(g,t)?void 0:Oe(e,((e,s)=>-1===He(He(V,t),s)?void 0:Oe(e,(([,e])=>e),(e=>Pt(e)))),Te,we)),Te,we),Oe(E,(([,e])=>e),(e=>Pt(e))),1],getTransactionLog:()=>[!Te(D),!Te(E),Qe(D,Ot,Pt),Qe(H),Oe(E,Ot,Pt),Oe(k),Oe(g),Pe(V),Qe(m),Oe(x)],finishTransaction:Os,forEachTable:e=>me(X,((t,s)=>e(s,(e=>me(t,((t,s)=>e(s,(e=>ke(t,e))))))))),forEachTableCell:(e,t)=>ke(He($,T(e)),t),forEachRow:(e,t)=>me(He(X,T(e)),((e,s)=>t(s,(t=>ke(e,t))))),forEachCell:(e,t,s)=>ke(He(He(X,T(e)),T(t)),s),forEachValue:e=>ke(Y,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=us(e,t,s,n,a);return ot((()=>{const r=us(e,t,s,n,a);U(r,l)||(l=r,o(Ps,e,t,s,n,a,l))}),ce[r?1:0],[e,t],[ls])},addStartTransactionListener:e=>ot(e,nt),addWillFinishTransactionListener:e=>ot(e,at[0]),addDidFinishTransactionListener:e=>ot(e,at[1]),callListener:e=>(ct(e),Ps),delListener:e=>(lt(e),Ps),getListenerStats:()=>({hasTables:Jt(Z),tables:Jt(ee),tableIds:Jt(se),hasTable:Jt(ne),table:Jt(ae),tableCellIds:Jt(oe),hasTableCell:Jt(re,ye),rowCount:Jt(le),rowIds:Jt(ie),sortedRowIds:Jt(ce),hasRow:Jt(ue,ye),row:Jt(fe,ye),cellIds:Jt(Ce,ye),hasCell:Jt(Le,Se),cell:Jt(Me,Se),invalidCell:Jt(We,Se),hasValues:Jt(Ke),values:Jt(Xe),valueIds:Jt(Ye),hasValue:Jt(Ze),value:Jt(st),invalidValue:Jt(je),transaction:Ie(nt)+Jt(at)}),isMergeable:()=>!1,createStore:Nt,addListener:ot,callListeners:rt,setInternalListeners:(e,t,s,n,a)=>c=[e,t,s,n,a]};return be({[u+f]:[0,Z,[],()=>[Cs()]],[f]:[0,ee],[b]:[0,se],[u+h]:[1,ne,[ls],e=>[ps(...e)]],[h]:[1,ae,[ls]],[h+I]:[1,oe,[ls]],[u+h+v]:[2,re,[ls,is],e=>[Ls(...e)]],[C]:[1,le,[ls]],[p]:[1,ie,[ls]],[u+w]:[2,ue,[ls,ds],e=>[vs(...e)]],[w]:[2,fe,[ls,ds]],[I]:[2,Ce,[ls,ds]],[u+v]:[3,Le,[ls,ds,gs],e=>[Is(...e)]],[v]:[3,Me,[ls,ds,gs],e=>At(hs(...e))],InvalidCell:[3,We],[u+S]:[0,Ke,[],()=>[ys()]],[S]:[0,Xe],[R]:[0,Ye],[u+y]:[1,Ze,[bs],e=>[Ss(...e)]],[y]:[1,st,[bs],e=>At(ws(e[0]))],InvalidValue:[1,je]},(([e,t,s,n],a)=>{Ps[d+a+i]=(...a)=>ot(a[e],t[a[e+1]?1:0],e>0?G(a,0,e):void 0,s,n)})),de(Ps)},Wt=2**36,_t=2**30,jt=2**24,Ut=2**18,$t=4096,qt={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)=>[mt(e),mt(e)];exports.Message={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},exports.Persists={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},exports.createCheckpoints=st,exports.createCustomPersister=wt,exports.createCustomSynchronizer=(e,s,n,a,o,r,l,i,c={})=>{let d,u=0,g=0;const h=xe(),f=(e,t,n,a)=>{u++,r?.(e,t,n,a),s(e,t,n,a)},b=async(e,s,n=t)=>new m(((t,a)=>{const r=ct(),l=setTimeout((()=>{De(h,r),a(`No response from ${e??"anyone"} to ${r}, `+s)}),1e3*o);Ae(h,r,[e,(e,s)=>{clearTimeout(l),De(h,r),t([e,s])}]),f(e,r,s,n)})),w=(e,[t,s])=>{fe(t,(([t,s],n)=>{const a=Ce(e[0],n,Vt);fe(t,(([e,t],s)=>{const n=Ce(a[0],s,Vt);fe(e,(([e,t],s)=>n[0][s]=It(e,t))),n[1]=Tt(n[1],t)})),a[1]=Tt(a[1],s)})),e[1]=Tt(e[1],s)},C=async(t=null,s)=>{J(s)&&([s,t]=await b(t,1));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=Vt();if(o!=n){const[s,n]=(await b(t,4,e.getMergeableTableHashes()))[0];if(l=s,!we(n)){const[s,a]=(await b(t,5,e.getMergeableRowHashes(n)))[0];if(w(l,s),!we(a)){const s=(await b(t,6,e.getMergeableCellHashes(a)))[0];w(l,s)}}}return[l,r==a?Vt():(await b(t,7,e.getMergeableValueHashes()))[0],1]},p=wt(e,(async()=>{const e=await C();return we(e[0][0])&&we(e[1][0])?void 0:e}),(async(t,s)=>s?f(null,null,3,s):f(null,null,2,e.getMergeableContentHashes())),(e=>d=e),(()=>d=void 0),i,2,{startSync:async e=>await(await p.startAutoLoad(e)).startAutoSave(),stopSync:()=>p.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),p.stopSync()),getSynchronizerStats:()=>({sends:u,receives:g}),...c});return n(((t,s,n,a)=>{g++,l?.(t,s,n,a),0==n?F(He(h,s),(([e,s])=>J(e)||e==t?s(a,t):0)):2==n&&p.isAutoLoading()?C(t,a).then((e=>{d?.(void 0,e)})):3==n&&p.isAutoLoading()?d?.(void 0,a):F(1==n&&p.isAutoSaving()?e.getMergeableContentHashes():4==n?e.getMergeableTableDiff(a):5==n?e.getMergeableRowDiff(a):6==n?e.getMergeableCellDiff(a):7==n?e.getMergeableValueDiff(a):void 0,(e=>{f(t,s,0,e)}))})),p},exports.createIndexes=dt,exports.createMergeableStore=e=>{let s=1,n=Bt(),a=0;const o=xe(),r=qe(),[l,i]=(e=>{let t=0,s=-1;const n=F(e,(e=>{const t=pt(e);return ot(t/jt)+ot(t/Ut)+ot(t/$t)+ot(t/64)+ot(t)}),(()=>ct(5))),a=e=>{const n=t,[a,o]=J(e)||""==e?[0,0]:[rt(r=e,0)*Wt+rt(r,1)*_t+rt(r,2)*jt+rt(r,3)*Ut+rt(r,4)*$t+64*rt(r,5)+rt(r,6),rt(r,7)*Ut+rt(r,8)*$t+64*rt(r,9)+rt(r,10)];var r;t=E(n,a,D.HLC_TIME??Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,ot((e=t)/Wt)+ot(e/_t)+ot(e/jt)+ot(e/Ut)+ot(e/$t)+ot(e/64)+ot(e)+ot(o/Ut)+ot(o/$t)+ot(o/64)+ot(o)+n;var e,o},a]})(e),c=Nt(),d=e=>{const t=s;return s=0,e(),s=t,b},u=(e,s=0)=>{const a={},o={},[[r,l=t,c=0],d]=e,[u,h]=n,[f,b,w]=u;let C=s?c:w,p=l;fe(r,(([e,n=t,o=0],r)=>{const l=Je(f,r,mt),[i,c,d]=l;let u=s?o:d,h=n;fe(e,((e,t)=>{const[n,o,l]=g(e,Je(i,t,mt),Ce(Ce(a,r,ue),t,ue),s);u^=s?0:(o?St(t,o):0)^St(t,l),h=Tt(h,n)})),u^=s?0:Rt(c,n),Mt(l,u,n),C^=s?0:(d?St(r,d):0)^St(r,l[2]),p=Tt(p,h)})),C^=s?0:Rt(b,l),Mt(u,C,l);const[L]=g(d,h,o,s);return i(Tt(p,L)),[a,o,1]},g=(e,s,n,a)=>{const[o,r=t,l=0]=e,[i,c,d]=s;let u=r,g=a?l:d;return fe(o,(([e,s,o=0],r)=>{const l=Je(i,r,(()=>[void 0,t,0])),[,c,d]=l;(!c||s>c)&&(Mt(l,a?o:pt(Qt(e??null)+":"+s),s),l[0]=e,n[r]=e,g^=a?0:St(r,d)^St(r,l[2]),u=Tt(u,s))})),g^=a?0:Rt(c,r),Mt(s,g,r),[u,d,s[2]]},h=()=>[Dt(n[0],(e=>Dt(e,(e=>Dt(e))))),Dt(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>Oe(n[0][0],yt),getMergeableTableDiff:e=>{const t=Vt(n[0][1]),s={};return ke(n[0][0],((n,[a,o,r])=>ge(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=xt([a,o],(e=>xt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return fe(e,((e,s)=>F(He(n[0][0],s),(([n,,a])=>a!=e?ke(n,((e,[,,n])=>Ce(t,s,ue)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=Vt(n[0][1]),s={};return fe(e,((e,a)=>ke(He(n[0][0],a)?.[0],((n,[o,r,l])=>ge(e,n)?l!==e[n]?Ce(s,a,ue)[n]=l:0:Ce(t[0],a,Vt)[0][n]=xt([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return fe(e,((e,s)=>F(He(n[0][0],s),(([n])=>fe(e,((e,a)=>F(He(n,a),(([n,,o])=>o!==e?ke(n,((e,[,,n])=>Ce(Ce(t,s,ue),a,ue)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return fe(e,((e,s)=>fe(e,((e,n)=>F(He(t,s),(([t,o])=>F(He(t,n),(([t,r])=>ke(t,((t,[l,i,c])=>c!==e[t]?Ce(Ce(a,s,(()=>Vt(o)))[0],n,(()=>Vt(r)))[0][t]=[l,i]:0)))))))))),It(a,s)},getMergeableValueHashes:()=>Oe(n[1][0],yt),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=Oe(t,vt,(([,,t],s)=>t==e?.[s]));return It(a,s)},setMergeableContent:e=>d((()=>(e=>z(e)&&2==N(e)&&Et(e[0],(e=>pe(e,(e=>Et(e,(e=>pe(e,(e=>Et(e,(e=>pe(e,(e=>Et(e,je)),void 0,1)))),void 0,1)))),void 0,1)))&&Et(e[1],(e=>pe(e,(e=>Et(e,je)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Bt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};me(o,((t,s)=>F(He(e,s),(([e,n])=>{const a={};me(t,((t,s)=>F(He(e,s),(([e,n])=>{const o={};me(t,(t=>{F(He(e,t),(([e,s])=>o[t]=It(e,s)))})),a[s]=It(o,n)})))),l[s]=It(a,n)}))));const i={};return me(r,(e=>F(He(s,e),(([t,s])=>i[e]=It(t,s))))),[It(l,t),It(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{Ve(o),Ve(r)}),((e,n,r,i)=>{Be(Je(Je(o,e,xe),n,qe),r),s&&u([[{[e]:[{[n]:[{[r]:[i,a?t:l()]}]}]}],[{}],1])}),((e,n)=>{Be(r,e),s&&u([[{}],[{[e]:[n,a?t:l()]}],1])})),be(c,((e,t)=>b[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):M(t,"add")&&V(t,"Listener")?(...s)=>{const n=qt[G(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),de(b)},exports.createMetrics=ht,exports.createQueries=Ht,exports.createRelationships=kt,exports.createStore=Nt,exports.defaultSorter=it,exports.getUniqueId=ct;
Binary file
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),r=a.keys,o=a.freeze,n=o=>(r=>!t(r)&&e(s(r),(e=>e==a.prototype||t(s(e))),(()=>!0)))(o)&&0==(t=>r(t).length)(o),i=t=>new Map(t),y=(t,e)=>t?.get(e),l=(e,a,s)=>{return t(s)?(r=e,o=a,r?.delete(o),e):e?.set(a,s);var r,o},c=(t,e,a,s)=>{var r,o;return r=t,o=e,r?.has(o)||l(t,e,a()),y(t,e)},g={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},p=i(),u=i();exports.Persists=g,exports.createCustomPersister=(a,s,r,i,d,h,S,v={},w=[])=>{let C,b,A,M=0,O=0,f=0;c(p,w,(()=>0)),c(u,w,(()=>[]));const[L,P,T,x,D]=((t=g.StoreOnly,e)=>t!=g.StoreOnly&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!n(t)||!n(e),e.setDefaultContent]:t!=g.MergeableStoreOnly?[0,e.getContent,e.getTransactionChanges,([t,e])=>!n(t)||!n(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(S,a),j=t=>{var e;(L&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},k=async t=>(2!=M&&(M=1,O++,await F((async()=>{try{j(await s())}catch(e){h?.(e),t&&D(t)}M=0}))),q),m=()=>(b&&(d(b),b=void 0),q),z=async t=>(1!=M&&(M=2,f++,await F((async()=>{try{await r(P,t)}catch(t){h?.(t)}M=0}))),q),E=()=>(e(A,a.delListener),A=void 0,q),F=async(...e)=>(((t,...e)=>{t.push(...e)})(y(u,w),...e),await(async()=>{if(!y(p,w)){for(l(p,w,1);!t((e=y(u,w),C=e.shift()));)try{await C()}catch(t){h?.(t)}l(p,w,0)}var e})(),q),q={load:k,startAutoLoad:async t=>(await m().load(t),b=i((async(t,e)=>{e||t?2!=M&&(M=1,O++,j(e??t),M=0):await k()})),q),stopAutoLoad:m,isAutoLoading:()=>!t(b),save:z,startAutoSave:async()=>(await E().save(),A=a.addDidFinishTransactionListener((()=>{const t=T();x(t)&&z(t)})),q),stopAutoSave:E,isAutoSaving:()=>!t(A),schedule:F,getStore:()=>a,destroy:()=>m().stopAutoSave(),getStats:()=>({loads:O,saves:f}),...v};return o(q)};
1
+ "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),r=a.keys,o=a.freeze,n=o=>(r=>!t(r)&&e(s(r),(e=>e==a.prototype||t(s(e))),(()=>!0)))(o)&&0==(t=>r(t).length)(o),i=t=>new Map(t),c=(t,e)=>t?.get(e),y=(e,a,s)=>{return t(s)?(r=e,o=a,r?.delete(o),e):e?.set(a,s);var r,o},l=(t,e,a,s)=>{var r,o;return r=t,o=e,r?.has(o)||y(t,e,a()),c(t,e)},g=i(),p=i();exports.Persists={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},exports.createCustomPersister=(a,s,r,i,u,d,h,v={},w=[])=>{let C,S,b,A=0,M=0,f=0;l(g,w,(()=>0)),l(p,w,(()=>[]));const[L,O,P,T,x]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!n(t)||!n(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!n(t)||!n(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(h,a),D=t=>{var e;(L&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},j=async t=>(2!=A&&(A=1,M++,await E((async()=>{try{D(await s())}catch(e){d?.(e),t&&x(t)}A=0}))),F),k=()=>(S&&(u(S),S=void 0),F),m=async t=>(1!=A&&(A=2,f++,await E((async()=>{try{await r(O,t)}catch(t){d?.(t)}A=0}))),F),z=()=>(e(b,a.delListener),b=void 0,F),E=async(...e)=>(((t,...e)=>{t.push(...e)})(c(p,w),...e),await(async()=>{if(!c(g,w)){for(y(g,w,1);!t((e=c(p,w),C=e.shift()));)try{await C()}catch(t){d?.(t)}y(g,w,0)}var e})(),F),F={load:j,startAutoLoad:async t=>{await k().load(t);try{S=i((async(t,e)=>{e||t?2!=A&&(A=1,M++,D(e??t),A=0):await j()}))}catch(t){d?.(t)}return F},stopAutoLoad:k,isAutoLoading:()=>!t(S),save:m,startAutoSave:async()=>(await z().save(),b=a.addDidFinishTransactionListener((()=>{const t=P();T(t)&&m(t)})),F),stopAutoSave:z,isAutoSaving:()=>!t(b),schedule:E,getStore:()=>a,destroy:()=>(c(p,w).splice(0,void 0),k().stopAutoSave()),getStats:()=>({loads:M,saves:f}),...v};return o(F)};
Binary file
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,r=a.keys,o=a.freeze,i=(t,a)=>e(t,(t=>t[a])),c=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>r(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),h=(t,e)=>t?.get(e),v=(e,a,n)=>{return t(n)?(s=e,r=a,s?.delete(r),e):e?.set(a,n);var s,r},p=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||v(t,e,a()),h(t,e)},w=u(),A=u(),C=(t,e)=>[t[e].t,t[e].v],b=(e,a,n,s)=>{const r=t(a)?e:((t,e,a)=>(c(t,e)||(t[e]={}),t[e]))(e,a);let o;return y(n,((t,e)=>{s(r,e,t)&&(o=1)})),y(r,((t,e)=>{c(n,e)||(g(r,e),o=1)})),!t(a)&&l(r)&&g(e,a),o};exports.createAutomergePersister=(a,n,s="tinybase",r)=>(n.change((t=>t[s]={})),((a,n,s,r,i,c,g,y={},d=[])=>{let u,C,b,f=0,S=0,L=0;p(w,d,(()=>0)),p(A,d,(()=>[]));const[M,m,D,P,T]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(g,a),O=t=>{var e;(M&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},j=async t=>(2!=f&&(f=1,S++,await E((async()=>{try{O(await n())}catch(e){c?.(e),t&&T(t)}f=0}))),F),k=()=>(C&&(i(C),C=void 0),F),x=async t=>(1!=f&&(f=2,L++,await E((async()=>{try{await s(m,t)}catch(t){c?.(t)}f=0}))),F),z=()=>(e(b,a.delListener),b=void 0,F),E=async(...e)=>(((t,...e)=>{t.push(...e)})(h(A,d),...e),await(async()=>{if(!h(w,d)){for(v(w,d,1);!t((e=h(A,d),u=e.shift()));)try{await u()}catch(t){c?.(t)}v(w,d,0)}var e})(),F),F={load:j,startAutoLoad:async t=>(await k().load(t),C=r((async(t,e)=>{e||t?2!=f&&(f=1,S++,O(e??t),f=0):await j()})),F),stopAutoLoad:k,isAutoLoading:()=>!t(C),save:x,startAutoSave:async()=>(await z().save(),b=a.addDidFinishTransactionListener((()=>{const t=D();P(t)&&x(t)})),F),stopAutoSave:z,isAutoSaving:()=>!t(b),schedule:E,getStore:()=>a,destroy:()=>k().stopAutoSave(),getStats:()=>({loads:S,saves:L}),...y};return o(F)})(a,(async()=>{const t=await n.doc();return 2==d(t?.[s])?C(t,s):void 0}),(async(a,r)=>n.change((n=>((a,n,s,r)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[o,c]=C(a,n),d=()=>{u=1};let u=1;if(e(r,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(o,n):e(o[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(i(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(c,a):c[a]=e))})),u){const[t,e]=s();b(o,void 0,t,((t,e,a)=>b(o,e,a,((t,e,a)=>b(t,e,a,((t,e,a)=>{if(i(t,e)!==a)return t[e]=a,1})))))),b(c,void 0,e,((t,e,a)=>{i(c,e)!==a&&(c[e]=a)}))}})(n,s,a,r)))),(t=>{const e=({doc:e})=>t(C(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),r,1,{getDocHandle:()=>n}));
1
+ "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,r=a.keys,o=a.freeze,i=(t,a)=>e(t,(t=>t[a])),c=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>r(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),h=(t,e)=>t?.get(e),v=(e,a,n)=>{return t(n)?(s=e,r=a,s?.delete(r),e):e?.set(a,n);var s,r},p=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||v(t,e,a()),h(t,e)},w=u(),A=u(),C=(t,e)=>[t[e].t,t[e].v],b=(e,a,n,s)=>{const r=t(a)?e:((t,e,a)=>(c(t,e)||(t[e]={}),t[e]))(e,a);let o;return y(n,((t,e)=>{s(r,e,t)&&(o=1)})),y(r,((t,e)=>{c(n,e)||(g(r,e),o=1)})),!t(a)&&l(r)&&g(e,a),o};exports.createAutomergePersister=(a,n,s="tinybase",r)=>(n.change((t=>t[s]={})),((a,n,s,r,i,c,g,y={},d=[])=>{let u,C,b,f=0,S=0,L=0;p(w,d,(()=>0)),p(A,d,(()=>[]));const[M,m,D,P,T]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(g,a),O=t=>{var e;(M&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},j=async t=>(2!=f&&(f=1,S++,await E((async()=>{try{O(await n())}catch(e){c?.(e),t&&T(t)}f=0}))),F),k=()=>(C&&(i(C),C=void 0),F),x=async t=>(1!=f&&(f=2,L++,await E((async()=>{try{await s(m,t)}catch(t){c?.(t)}f=0}))),F),z=()=>(e(b,a.delListener),b=void 0,F),E=async(...e)=>(((t,...e)=>{t.push(...e)})(h(A,d),...e),await(async()=>{if(!h(w,d)){for(v(w,d,1);!t((e=h(A,d),u=e.shift()));)try{await u()}catch(t){c?.(t)}v(w,d,0)}var e})(),F),F={load:j,startAutoLoad:async t=>{await k().load(t);try{C=r((async(t,e)=>{e||t?2!=f&&(f=1,S++,O(e??t),f=0):await j()}))}catch(t){c?.(t)}return F},stopAutoLoad:k,isAutoLoading:()=>!t(C),save:x,startAutoSave:async()=>(await z().save(),b=a.addDidFinishTransactionListener((()=>{const t=D();P(t)&&x(t)})),F),stopAutoSave:z,isAutoSaving:()=>!t(b),schedule:E,getStore:()=>a,destroy:()=>(h(A,d).splice(0,void 0),k().stopAutoSave()),getStats:()=>({loads:S,saves:L}),...y};return o(F)})(a,(async()=>{const t=await n.doc();return 2==d(t?.[s])?C(t,s):void 0}),(async(a,r)=>n.change((n=>((a,n,s,r)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[o,c]=C(a,n),d=()=>{u=1};let u=1;if(e(r,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(o,n):e(o[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(i(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(c,a):c[a]=e))})),u){const[t,e]=s();b(o,void 0,t,((t,e,a)=>b(o,e,a,((t,e,a)=>b(t,e,a,((t,e,a)=>{if(i(t,e)!==a)return t[e]=a,1})))))),b(c,void 0,e,((t,e,a)=>{i(c,e)!==a&&(c[e]=a)}))}})(n,s,a,r)))),(t=>{const e=({doc:e})=>t(C(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),r,1,{getDocHandle:()=>n}));
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,r=a.keys,o=a.freeze,i=(t,a)=>e(t,(t=>t[a])),c=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>r(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),h=(t,e)=>t?.get(e),v=(e,a,n)=>{return t(n)?(s=e,r=a,s?.delete(r),e):e?.set(a,n);var s,r},p=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||v(t,e,a()),h(t,e)},w=u(),A=u(),C=(t,e)=>[t[e].t,t[e].v],b=(e,a,n,s)=>{const r=t(a)?e:((t,e,a)=>(c(t,e)||(t[e]={}),t[e]))(e,a);let o;return y(n,((t,e)=>{s(r,e,t)&&(o=1)})),y(r,((t,e)=>{c(n,e)||(g(r,e),o=1)})),!t(a)&&l(r)&&g(e,a),o};exports.createAutomergePersister=(a,n,s="tinybase",r)=>(n.change((t=>t[s]={})),((a,n,s,r,i,c,g,y={},d=[])=>{let u,C,b,f=0,S=0,L=0;p(w,d,(()=>0)),p(A,d,(()=>[]));const[M,m,D,P,T]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(g,a),O=t=>{var e;(M&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},j=async t=>(2!=f&&(f=1,S++,await E((async()=>{try{O(await n())}catch(e){c?.(e),t&&T(t)}f=0}))),F),k=()=>(C&&(i(C),C=void 0),F),x=async t=>(1!=f&&(f=2,L++,await E((async()=>{try{await s(m,t)}catch(t){c?.(t)}f=0}))),F),z=()=>(e(b,a.delListener),b=void 0,F),E=async(...e)=>(((t,...e)=>{t.push(...e)})(h(A,d),...e),await(async()=>{if(!h(w,d)){for(v(w,d,1);!t((e=h(A,d),u=e.shift()));)try{await u()}catch(t){c?.(t)}v(w,d,0)}var e})(),F),F={load:j,startAutoLoad:async t=>(await k().load(t),C=r((async(t,e)=>{e||t?2!=f&&(f=1,S++,O(e??t),f=0):await j()})),F),stopAutoLoad:k,isAutoLoading:()=>!t(C),save:x,startAutoSave:async()=>(await z().save(),b=a.addDidFinishTransactionListener((()=>{const t=D();P(t)&&x(t)})),F),stopAutoSave:z,isAutoSaving:()=>!t(b),schedule:E,getStore:()=>a,destroy:()=>k().stopAutoSave(),getStats:()=>({loads:S,saves:L}),...y};return o(F)})(a,(async()=>{const t=await n.doc();return 2==d(t?.[s])?C(t,s):void 0}),(async(a,r)=>n.change((n=>((a,n,s,r)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[o,c]=C(a,n),d=()=>{u=1};let u=1;if(e(r,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(o,n):e(o[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(i(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(c,a):c[a]=e))})),u){const[t,e]=s();b(o,void 0,t,((t,e,a)=>b(o,e,a,((t,e,a)=>b(t,e,a,((t,e,a)=>{if(i(t,e)!==a)return t[e]=a,1})))))),b(c,void 0,e,((t,e,a)=>{i(c,e)!==a&&(c[e]=a)}))}})(n,s,a,r)))),(t=>{const e=({doc:e})=>t(C(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),r,1,{getDocHandle:()=>n}));
1
+ "use strict";const t=t=>null==t,e=(e,a,n)=>t(e)?n?.():a(e),a=Object,n=t=>a.getPrototypeOf(t),s=a.entries,r=a.keys,o=a.freeze,i=(t,a)=>e(t,(t=>t[a])),c=(t,e)=>e in t,g=(t,e)=>(delete t[e],t),y=(t,e)=>((t,e)=>t.map(e))(s(t),(([t,a])=>e(a,t))),d=t=>r(t).length,l=s=>(s=>!t(s)&&e(n(s),(e=>e==a.prototype||t(n(e))),(()=>!0)))(s)&&0==d(s),u=t=>new Map(t),h=(t,e)=>t?.get(e),v=(e,a,n)=>{return t(n)?(s=e,r=a,s?.delete(r),e):e?.set(a,n);var s,r},p=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)||v(t,e,a()),h(t,e)},w=u(),A=u(),C=(t,e)=>[t[e].t,t[e].v],b=(e,a,n,s)=>{const r=t(a)?e:((t,e,a)=>(c(t,e)||(t[e]={}),t[e]))(e,a);let o;return y(n,((t,e)=>{s(r,e,t)&&(o=1)})),y(r,((t,e)=>{c(n,e)||(g(r,e),o=1)})),!t(a)&&l(r)&&g(e,a),o};exports.createAutomergePersister=(a,n,s="tinybase",r)=>(n.change((t=>t[s]={})),((a,n,s,r,i,c,g,y={},d=[])=>{let u,C,b,f=0,S=0,L=0;p(w,d,(()=>0)),p(A,d,(()=>[]));const[M,m,D,P,T]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!l(t)||!l(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!l(t)||!l(e),e.setContent]:(t=>{throw Error("Store type not supported by this Persister")})())(g,a),O=t=>{var e;(M&&(e=t?.[0],Array.isArray(e))?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},j=async t=>(2!=f&&(f=1,S++,await E((async()=>{try{O(await n())}catch(e){c?.(e),t&&T(t)}f=0}))),F),k=()=>(C&&(i(C),C=void 0),F),x=async t=>(1!=f&&(f=2,L++,await E((async()=>{try{await s(m,t)}catch(t){c?.(t)}f=0}))),F),z=()=>(e(b,a.delListener),b=void 0,F),E=async(...e)=>(((t,...e)=>{t.push(...e)})(h(A,d),...e),await(async()=>{if(!h(w,d)){for(v(w,d,1);!t((e=h(A,d),u=e.shift()));)try{await u()}catch(t){c?.(t)}v(w,d,0)}var e})(),F),F={load:j,startAutoLoad:async t=>{await k().load(t);try{C=r((async(t,e)=>{e||t?2!=f&&(f=1,S++,O(e??t),f=0):await j()}))}catch(t){c?.(t)}return F},stopAutoLoad:k,isAutoLoading:()=>!t(C),save:x,startAutoSave:async()=>(await z().save(),b=a.addDidFinishTransactionListener((()=>{const t=D();P(t)&&x(t)})),F),stopAutoSave:z,isAutoSaving:()=>!t(b),schedule:E,getStore:()=>a,destroy:()=>(h(A,d).splice(0,void 0),k().stopAutoSave()),getStats:()=>({loads:S,saves:L}),...y};return o(F)})(a,(async()=>{const t=await n.doc();return 2==d(t?.[s])?C(t,s):void 0}),(async(a,r)=>n.change((n=>((a,n,s,r)=>{((t,e)=>{l(t[e])&&(t[e]={t:{},v:{}})})(a,n);const[o,c]=C(a,n),d=()=>{u=1};let u=1;if(e(r,(([a,n])=>{u=0,y(a,((a,n)=>u?0:t(a)?g(o,n):e(o[n],(n=>y(a,((a,s)=>u?0:t(a)?g(n,s):e(i(n,s),(e=>y(a,((a,n)=>t(a)?g(e,n):e[n]=a))),d)))),d))),y(n,((e,a)=>u?0:t(e)?g(c,a):c[a]=e))})),u){const[t,e]=s();b(o,void 0,t,((t,e,a)=>b(o,e,a,((t,e,a)=>b(t,e,a,((t,e,a)=>{if(i(t,e)!==a)return t[e]=a,1})))))),b(c,void 0,e,((t,e,a)=>{i(c,e)!==a&&(c[e]=a)}))}})(n,s,a,r)))),(t=>{const e=({doc:e})=>t(C(e,s));return n.on("change",e),e}),(t=>{n.removeListener("change",t)}),r,1,{getDocHandle:()=>n}));
@@ -1 +1 @@
1
- "use strict";const e=globalThis.window,t=e=>null==e,a=(e,a,s)=>t(e)?s?.():a(e),s=Object,r=e=>s.getPrototypeOf(e),n=s.keys,o=s.freeze,i=e=>(e=>!t(e)&&a(r(e),(e=>e==s.prototype||t(r(e))),(()=>!0)))(e)&&0==(e=>n(e).length)(e),c=e=>new Map(e),g=(e,t)=>e?.get(t),y=(e,a,s)=>{return t(s)?(r=e,n=a,r?.delete(n),e):e?.set(a,s);var r,n},l=(e,t,a,s)=>{var r,n;return r=e,n=t,r?.has(n)||y(e,t,a()),g(e,t)},d=c(),u=c(),v=JSON.parse,p="storage",h=(s,r,n,c)=>((e,s,r,n,c,v,p,h={},w=[])=>{let S,A,C,b=0,f=0,L=0;l(d,w,(()=>0)),l(u,w,(()=>[]));const[M,O,m,N,P]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!i(e)||!i(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!i(e)||!i(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(p,e),T=t=>{var a;(M&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},E=async e=>(2!=b&&(b=1,f++,await D((async()=>{try{T(await s())}catch(t){v?.(t),e&&P(e)}b=0}))),I),J=()=>(A&&(c(A),A=void 0),I),k=async e=>(1!=b&&(b=2,L++,await D((async()=>{try{await r(O,e)}catch(e){v?.(e)}b=0}))),I),x=()=>(a(C,e.delListener),C=void 0,I),D=async(...e)=>(((e,...t)=>{e.push(...t)})(g(u,w),...e),await(async()=>{if(!g(d,w)){for(y(d,w,1);!t((e=g(u,w),S=e.shift()));)try{await S()}catch(e){v?.(e)}y(d,w,0)}var e})(),I),I={load:E,startAutoLoad:async e=>(await J().load(e),A=n((async(e,t)=>{t||e?2!=b&&(b=1,f++,T(t??e),b=0):await E()})),I),stopAutoLoad:J,isAutoLoading:()=>!t(A),save:k,startAutoSave:async()=>(await x().save(),C=e.addDidFinishTransactionListener((()=>{const e=m();N(e)&&k(e)})),I),stopAutoSave:x,isAutoSaving:()=>!t(C),schedule:D,getStore:()=>e,destroy:()=>J().stopAutoSave(),getStats:()=>({loads:f,saves:L}),...h};return o(I)})(s,(async()=>{return e=n.getItem(r),JSON.parse(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return n.setItem(r,(t=e(),JSON.stringify(t,((e,t)=>void 0===t?"":t))));var t}),(t=>{const a=e=>{if(e.storageArea===n&&e.key===r)try{t(v(e.newValue))}catch{t()}};return e.addEventListener(p,a),a}),(t=>e.removeEventListener(p,t)),c,3,{getStorageName:()=>r});exports.createLocalPersister=(e,t,a)=>h(e,t,localStorage,a),exports.createSessionPersister=(e,t,a)=>h(e,t,sessionStorage,a);
1
+ "use strict";const e=globalThis.window,t=e=>null==e,a=(e,a,s)=>t(e)?s?.():a(e),s=Object,r=e=>s.getPrototypeOf(e),n=s.keys,o=s.freeze,i=e=>(e=>!t(e)&&a(r(e),(e=>e==s.prototype||t(r(e))),(()=>!0)))(e)&&0==(e=>n(e).length)(e),c=JSON.parse,g=e=>new Map(e),y=(e,t)=>e?.get(t),l=(e,a,s)=>{return t(s)?(r=e,n=a,r?.delete(n),e):e?.set(a,s);var r,n},d=(e,t,a,s)=>{var r,n;return r=e,n=t,r?.has(n)||l(e,t,a()),y(e,t)},u=g(),v=g(),p="storage",h=(s,r,n,g)=>((e,s,r,n,c,g,p,h={},w=[])=>{let S,A,C,b=0,f=0,L=0;d(u,w,(()=>0)),d(v,w,(()=>[]));const[M,O,m,N,P]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!i(e)||!i(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!i(e)||!i(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(p,e),T=t=>{var a;(M&&(a=t?.[0],Array.isArray(a))?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},E=async e=>(2!=b&&(b=1,f++,await D((async()=>{try{T(await s())}catch(t){g?.(t),e&&P(e)}b=0}))),I),J=()=>(A&&(c(A),A=void 0),I),k=async e=>(1!=b&&(b=2,L++,await D((async()=>{try{await r(O,e)}catch(e){g?.(e)}b=0}))),I),x=()=>(a(C,e.delListener),C=void 0,I),D=async(...e)=>(((e,...t)=>{e.push(...t)})(y(v,w),...e),await(async()=>{if(!y(u,w)){for(l(u,w,1);!t((e=y(v,w),S=e.shift()));)try{await S()}catch(e){g?.(e)}l(u,w,0)}var e})(),I),I={load:E,startAutoLoad:async e=>{await J().load(e);try{A=n((async(e,t)=>{t||e?2!=b&&(b=1,f++,T(t??e),b=0):await E()}))}catch(e){g?.(e)}return I},stopAutoLoad:J,isAutoLoading:()=>!t(A),save:k,startAutoSave:async()=>(await x().save(),C=e.addDidFinishTransactionListener((()=>{const e=m();N(e)&&k(e)})),I),stopAutoSave:x,isAutoSaving:()=>!t(C),schedule:D,getStore:()=>e,destroy:()=>(y(v,w).splice(0,void 0),J().stopAutoSave()),getStats:()=>({loads:f,saves:L}),...h};return o(I)})(s,(async()=>{return e=n.getItem(r),JSON.parse(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return n.setItem(r,(t=e(),JSON.stringify(t,((e,t)=>void 0===t?"":t))));var t}),(t=>{const a=e=>{if(e.storageArea===n&&e.key===r)try{t(c(e.newValue))}catch{t()}};return e.addEventListener(p,a),a}),(t=>e.removeEventListener(p,t)),g,3,{getStorageName:()=>r});exports.createLocalPersister=(e,t,a)=>h(e,t,localStorage,a),exports.createSessionPersister=(e,t,a)=>h(e,t,sessionStorage,a);