tinybase 5.2.0-beta.4 → 5.2.0

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 (511) hide show
  1. package/@types/mergeable-store/index.d.cts +114 -11
  2. package/@types/mergeable-store/index.d.ts +114 -11
  3. package/@types/mergeable-store/with-schemas/index.d.cts +192 -11
  4. package/@types/mergeable-store/with-schemas/index.d.ts +192 -11
  5. package/@types/persisters/index.d.cts +177 -16
  6. package/@types/persisters/index.d.ts +177 -16
  7. package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +1 -1
  8. package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +1 -1
  9. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +2 -2
  10. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +2 -2
  11. package/@types/persisters/persister-electric-sql/index.d.cts +1 -1
  12. package/@types/persisters/persister-electric-sql/index.d.ts +1 -1
  13. package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +2 -2
  14. package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +2 -2
  15. package/@types/persisters/persister-expo-sqlite/index.d.cts +1 -1
  16. package/@types/persisters/persister-expo-sqlite/index.d.ts +1 -1
  17. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +2 -2
  18. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +2 -2
  19. package/@types/persisters/persister-libsql/index.d.cts +1 -1
  20. package/@types/persisters/persister-libsql/index.d.ts +1 -1
  21. package/@types/persisters/persister-libsql/with-schemas/index.d.cts +2 -2
  22. package/@types/persisters/persister-libsql/with-schemas/index.d.ts +2 -2
  23. package/@types/persisters/persister-pglite/index.d.cts +1 -1
  24. package/@types/persisters/persister-pglite/index.d.ts +1 -1
  25. package/@types/persisters/persister-pglite/with-schemas/index.d.cts +2 -2
  26. package/@types/persisters/persister-pglite/with-schemas/index.d.ts +2 -2
  27. package/@types/persisters/persister-postgres/index.d.cts +1 -1
  28. package/@types/persisters/persister-postgres/index.d.ts +1 -1
  29. package/@types/persisters/persister-postgres/with-schemas/index.d.cts +2 -2
  30. package/@types/persisters/persister-postgres/with-schemas/index.d.ts +2 -2
  31. package/@types/persisters/persister-powersync/index.d.cts +1 -1
  32. package/@types/persisters/persister-powersync/index.d.ts +1 -1
  33. package/@types/persisters/persister-powersync/with-schemas/index.d.cts +2 -2
  34. package/@types/persisters/persister-powersync/with-schemas/index.d.ts +2 -2
  35. package/@types/persisters/persister-sqlite-wasm/index.d.cts +1 -1
  36. package/@types/persisters/persister-sqlite-wasm/index.d.ts +1 -1
  37. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +2 -2
  38. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +2 -2
  39. package/@types/persisters/persister-sqlite3/index.d.cts +1 -1
  40. package/@types/persisters/persister-sqlite3/index.d.ts +1 -1
  41. package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +2 -2
  42. package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +2 -2
  43. package/@types/persisters/with-schemas/index.d.cts +227 -19
  44. package/@types/persisters/with-schemas/index.d.ts +227 -19
  45. package/@types/synchronizers/index.d.cts +2 -5
  46. package/@types/synchronizers/index.d.ts +2 -5
  47. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +7 -7
  48. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +7 -7
  49. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +7 -7
  50. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +7 -7
  51. package/@types/synchronizers/with-schemas/index.d.cts +2 -5
  52. package/@types/synchronizers/with-schemas/index.d.ts +2 -5
  53. package/cjs/es6/index.cjs +54 -566
  54. package/cjs/es6/mergeable-store/index.cjs +9 -6
  55. package/cjs/es6/mergeable-store/with-schemas/index.cjs +9 -6
  56. package/cjs/es6/min/index.cjs +1 -1
  57. package/cjs/es6/min/index.cjs.gz +0 -0
  58. package/cjs/es6/min/persisters/index.cjs +1 -1
  59. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  60. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  65. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  66. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  69. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  70. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  73. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  74. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  77. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  78. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  79. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  80. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  81. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  82. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  83. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  84. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  85. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  86. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  87. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  88. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  89. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  90. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  91. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  92. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  93. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  94. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  95. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  96. package/cjs/es6/persisters/index.cjs +1095 -10
  97. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +58 -49
  98. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +58 -49
  99. package/cjs/es6/persisters/persister-electric-sql/index.cjs +56 -47
  100. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +56 -47
  101. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +58 -49
  102. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +58 -49
  103. package/cjs/es6/persisters/persister-indexed-db/index.cjs +2 -2
  104. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  105. package/cjs/es6/persisters/persister-libsql/index.cjs +56 -47
  106. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +56 -47
  107. package/cjs/es6/persisters/persister-pglite/index.cjs +61 -54
  108. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +61 -54
  109. package/cjs/es6/persisters/persister-postgres/index.cjs +63 -56
  110. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +63 -56
  111. package/cjs/es6/persisters/persister-powersync/index.cjs +58 -49
  112. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +58 -49
  113. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +62 -49
  114. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +62 -49
  115. package/cjs/es6/persisters/persister-sqlite3/index.cjs +58 -49
  116. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +58 -49
  117. package/cjs/es6/persisters/with-schemas/index.cjs +1095 -10
  118. package/cjs/es6/synchronizers/index.cjs +9 -6
  119. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +9 -6
  120. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +9 -6
  121. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +9 -6
  122. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +9 -6
  123. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +9 -6
  124. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +9 -6
  125. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +17 -14
  126. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +17 -14
  127. package/cjs/es6/synchronizers/with-schemas/index.cjs +9 -6
  128. package/cjs/es6/with-schemas/index.cjs +54 -566
  129. package/cjs/index.cjs +45 -447
  130. package/cjs/mergeable-store/index.cjs +1 -0
  131. package/cjs/mergeable-store/with-schemas/index.cjs +1 -0
  132. package/cjs/min/index.cjs +1 -1
  133. package/cjs/min/index.cjs.gz +0 -0
  134. package/cjs/min/persisters/index.cjs +1 -1
  135. package/cjs/min/persisters/index.cjs.gz +0 -0
  136. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  137. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  138. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  139. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  140. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  141. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  142. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  143. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  144. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  145. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  146. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  147. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  148. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  149. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  150. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  151. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  152. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  153. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  154. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  155. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  156. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  157. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  158. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  159. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  160. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  161. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  162. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  163. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  164. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  165. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  166. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  167. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  168. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  169. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  170. package/cjs/min/with-schemas/index.cjs +1 -1
  171. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  172. package/cjs/persisters/index.cjs +833 -0
  173. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +57 -48
  174. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +57 -48
  175. package/cjs/persisters/persister-electric-sql/index.cjs +56 -47
  176. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +56 -47
  177. package/cjs/persisters/persister-expo-sqlite/index.cjs +57 -48
  178. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +57 -48
  179. package/cjs/persisters/persister-indexed-db/index.cjs +2 -2
  180. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  181. package/cjs/persisters/persister-libsql/index.cjs +56 -47
  182. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +56 -47
  183. package/cjs/persisters/persister-pglite/index.cjs +59 -52
  184. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +59 -52
  185. package/cjs/persisters/persister-postgres/index.cjs +61 -54
  186. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +61 -54
  187. package/cjs/persisters/persister-powersync/index.cjs +60 -49
  188. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +60 -49
  189. package/cjs/persisters/persister-sqlite-wasm/index.cjs +58 -49
  190. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +58 -49
  191. package/cjs/persisters/persister-sqlite3/index.cjs +58 -49
  192. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +58 -49
  193. package/cjs/persisters/with-schemas/index.cjs +833 -0
  194. package/cjs/synchronizers/index.cjs +1 -0
  195. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -0
  196. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -0
  197. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -0
  198. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -0
  199. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +1 -0
  200. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -0
  201. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +9 -8
  202. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +9 -8
  203. package/cjs/synchronizers/with-schemas/index.cjs +1 -0
  204. package/cjs/with-schemas/index.cjs +45 -447
  205. package/es6/index.js +54 -566
  206. package/es6/mergeable-store/index.js +9 -6
  207. package/es6/mergeable-store/with-schemas/index.js +9 -6
  208. package/es6/min/index.js +1 -1
  209. package/es6/min/index.js.gz +0 -0
  210. package/es6/min/persisters/index.js +1 -1
  211. package/es6/min/persisters/index.js.gz +0 -0
  212. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  213. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  214. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  215. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  216. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  217. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  218. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  219. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  220. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  221. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  222. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  223. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  224. package/es6/min/persisters/persister-libsql/index.js +1 -1
  225. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  226. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  227. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  228. package/es6/min/persisters/persister-powersync/index.js +1 -1
  229. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  230. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  231. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  232. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  233. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  234. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  235. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  236. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  237. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  238. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  239. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  240. package/es6/min/persisters/with-schemas/index.js +1 -1
  241. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  242. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  243. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  244. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  245. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  246. package/es6/min/with-schemas/index.js +1 -1
  247. package/es6/min/with-schemas/index.js.gz +0 -0
  248. package/es6/persisters/index.js +1099 -11
  249. package/es6/persisters/persister-cr-sqlite-wasm/index.js +58 -49
  250. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +58 -49
  251. package/es6/persisters/persister-electric-sql/index.js +56 -47
  252. package/es6/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  253. package/es6/persisters/persister-expo-sqlite/index.js +58 -49
  254. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +58 -49
  255. package/es6/persisters/persister-indexed-db/index.js +2 -2
  256. package/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  257. package/es6/persisters/persister-libsql/index.js +56 -47
  258. package/es6/persisters/persister-libsql/with-schemas/index.js +56 -47
  259. package/es6/persisters/persister-pglite/index.js +61 -54
  260. package/es6/persisters/persister-pglite/with-schemas/index.js +61 -54
  261. package/es6/persisters/persister-postgres/index.js +63 -56
  262. package/es6/persisters/persister-postgres/with-schemas/index.js +63 -56
  263. package/es6/persisters/persister-powersync/index.js +58 -49
  264. package/es6/persisters/persister-powersync/with-schemas/index.js +58 -49
  265. package/es6/persisters/persister-sqlite-wasm/index.js +62 -49
  266. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +62 -49
  267. package/es6/persisters/persister-sqlite3/index.js +58 -49
  268. package/es6/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  269. package/es6/persisters/with-schemas/index.js +1099 -11
  270. package/es6/synchronizers/index.js +9 -6
  271. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  272. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  273. package/es6/synchronizers/synchronizer-local/index.js +9 -6
  274. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  275. package/es6/synchronizers/synchronizer-ws-client/index.js +9 -6
  276. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +9 -6
  277. package/es6/synchronizers/synchronizer-ws-server/index.js +17 -14
  278. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +17 -14
  279. package/es6/synchronizers/with-schemas/index.js +9 -6
  280. package/es6/with-schemas/index.js +54 -566
  281. package/index.js +45 -447
  282. package/mergeable-store/index.js +1 -0
  283. package/mergeable-store/with-schemas/index.js +1 -0
  284. package/min/index.js +1 -1
  285. package/min/index.js.gz +0 -0
  286. package/min/persisters/index.js +1 -1
  287. package/min/persisters/index.js.gz +0 -0
  288. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  289. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  290. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  291. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  292. package/min/persisters/persister-electric-sql/index.js +1 -1
  293. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  294. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  295. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  296. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  297. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  298. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  299. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  300. package/min/persisters/persister-libsql/index.js +1 -1
  301. package/min/persisters/persister-libsql/index.js.gz +0 -0
  302. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  303. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  304. package/min/persisters/persister-powersync/index.js +1 -1
  305. package/min/persisters/persister-powersync/index.js.gz +0 -0
  306. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  307. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  308. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  309. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  310. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  311. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  312. package/min/persisters/persister-sqlite3/index.js +1 -1
  313. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  314. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  315. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  316. package/min/persisters/with-schemas/index.js +1 -1
  317. package/min/persisters/with-schemas/index.js.gz +0 -0
  318. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  319. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  320. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  321. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  322. package/min/with-schemas/index.js +1 -1
  323. package/min/with-schemas/index.js.gz +0 -0
  324. package/package.json +212 -212
  325. package/persisters/index.js +837 -1
  326. package/persisters/persister-cr-sqlite-wasm/index.js +57 -48
  327. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +57 -48
  328. package/persisters/persister-electric-sql/index.js +56 -47
  329. package/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  330. package/persisters/persister-expo-sqlite/index.js +57 -48
  331. package/persisters/persister-expo-sqlite/with-schemas/index.js +57 -48
  332. package/persisters/persister-indexed-db/index.js +2 -2
  333. package/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  334. package/persisters/persister-libsql/index.js +56 -47
  335. package/persisters/persister-libsql/with-schemas/index.js +56 -47
  336. package/persisters/persister-pglite/index.js +59 -52
  337. package/persisters/persister-pglite/with-schemas/index.js +59 -52
  338. package/persisters/persister-postgres/index.js +61 -54
  339. package/persisters/persister-postgres/with-schemas/index.js +61 -54
  340. package/persisters/persister-powersync/index.js +60 -49
  341. package/persisters/persister-powersync/with-schemas/index.js +60 -49
  342. package/persisters/persister-sqlite-wasm/index.js +58 -49
  343. package/persisters/persister-sqlite-wasm/with-schemas/index.js +58 -49
  344. package/persisters/persister-sqlite3/index.js +58 -49
  345. package/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  346. package/persisters/with-schemas/index.js +837 -1
  347. package/readme.md +14 -14
  348. package/releases.md +27 -23
  349. package/synchronizers/index.js +1 -0
  350. package/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  351. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  352. package/synchronizers/synchronizer-local/index.js +1 -0
  353. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  354. package/synchronizers/synchronizer-ws-client/index.js +1 -0
  355. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  356. package/synchronizers/synchronizer-ws-server/index.js +9 -8
  357. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +9 -8
  358. package/synchronizers/with-schemas/index.js +1 -0
  359. package/umd/es6/index.js +54 -577
  360. package/umd/es6/mergeable-store/index.js +9 -6
  361. package/umd/es6/mergeable-store/with-schemas/index.js +9 -6
  362. package/umd/es6/min/index.js +1 -1
  363. package/umd/es6/min/index.js.gz +0 -0
  364. package/umd/es6/min/persisters/index.js +1 -1
  365. package/umd/es6/min/persisters/index.js.gz +0 -0
  366. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  367. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  368. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  369. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  370. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  371. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  372. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  373. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  374. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  375. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  376. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  377. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  378. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  379. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  380. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  381. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  382. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  383. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  384. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  385. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  386. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  387. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  388. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  389. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  390. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  391. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  392. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  393. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  394. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  395. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  396. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  397. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  398. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  399. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  400. package/umd/es6/min/with-schemas/index.js +1 -1
  401. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  402. package/umd/es6/persisters/index.js +1106 -10
  403. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +58 -49
  404. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +58 -49
  405. package/umd/es6/persisters/persister-electric-sql/index.js +56 -47
  406. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  407. package/umd/es6/persisters/persister-expo-sqlite/index.js +58 -49
  408. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +58 -49
  409. package/umd/es6/persisters/persister-indexed-db/index.js +2 -2
  410. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  411. package/umd/es6/persisters/persister-libsql/index.js +56 -47
  412. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +56 -47
  413. package/umd/es6/persisters/persister-pglite/index.js +61 -54
  414. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +61 -54
  415. package/umd/es6/persisters/persister-postgres/index.js +66 -56
  416. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +66 -56
  417. package/umd/es6/persisters/persister-powersync/index.js +58 -49
  418. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +58 -49
  419. package/umd/es6/persisters/persister-sqlite-wasm/index.js +58 -49
  420. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +58 -49
  421. package/umd/es6/persisters/persister-sqlite3/index.js +58 -49
  422. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  423. package/umd/es6/persisters/with-schemas/index.js +1106 -10
  424. package/umd/es6/synchronizers/index.js +9 -6
  425. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  426. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  427. package/umd/es6/synchronizers/synchronizer-local/index.js +9 -6
  428. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  429. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +9 -6
  430. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +9 -6
  431. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +17 -14
  432. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +17 -14
  433. package/umd/es6/synchronizers/with-schemas/index.js +9 -6
  434. package/umd/es6/with-schemas/index.js +54 -577
  435. package/umd/index.js +45 -454
  436. package/umd/mergeable-store/index.js +1 -0
  437. package/umd/mergeable-store/with-schemas/index.js +1 -0
  438. package/umd/min/index.js +1 -1
  439. package/umd/min/index.js.gz +0 -0
  440. package/umd/min/persisters/index.js +1 -1
  441. package/umd/min/persisters/index.js.gz +0 -0
  442. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  443. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  444. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  445. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  446. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  447. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  448. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  449. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  450. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  451. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  452. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  453. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  454. package/umd/min/persisters/persister-libsql/index.js +1 -1
  455. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  456. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  457. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  458. package/umd/min/persisters/persister-powersync/index.js +1 -1
  459. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  460. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  461. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  462. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  463. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  464. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  465. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  466. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  467. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  468. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  469. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  470. package/umd/min/persisters/with-schemas/index.js +1 -1
  471. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  472. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  473. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  474. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  475. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  476. package/umd/min/with-schemas/index.js +1 -1
  477. package/umd/min/with-schemas/index.js.gz +0 -0
  478. package/umd/persisters/index.js +835 -0
  479. package/umd/persisters/persister-cr-sqlite-wasm/index.js +57 -48
  480. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +57 -48
  481. package/umd/persisters/persister-electric-sql/index.js +56 -47
  482. package/umd/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  483. package/umd/persisters/persister-expo-sqlite/index.js +57 -48
  484. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +57 -48
  485. package/umd/persisters/persister-indexed-db/index.js +2 -2
  486. package/umd/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  487. package/umd/persisters/persister-libsql/index.js +56 -47
  488. package/umd/persisters/persister-libsql/with-schemas/index.js +56 -47
  489. package/umd/persisters/persister-pglite/index.js +59 -52
  490. package/umd/persisters/persister-pglite/with-schemas/index.js +59 -52
  491. package/umd/persisters/persister-postgres/index.js +61 -54
  492. package/umd/persisters/persister-postgres/with-schemas/index.js +61 -54
  493. package/umd/persisters/persister-powersync/index.js +58 -49
  494. package/umd/persisters/persister-powersync/with-schemas/index.js +58 -49
  495. package/umd/persisters/persister-sqlite-wasm/index.js +62 -49
  496. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +62 -49
  497. package/umd/persisters/persister-sqlite3/index.js +58 -49
  498. package/umd/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  499. package/umd/persisters/with-schemas/index.js +835 -0
  500. package/umd/synchronizers/index.js +1 -0
  501. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  502. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  503. package/umd/synchronizers/synchronizer-local/index.js +1 -0
  504. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  505. package/umd/synchronizers/synchronizer-ws-client/index.js +1 -0
  506. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  507. package/umd/synchronizers/synchronizer-ws-server/index.js +9 -8
  508. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +9 -8
  509. package/umd/synchronizers/with-schemas/index.js +1 -0
  510. package/umd/with-schemas/index.js +45 -454
  511. package/with-schemas/index.js +45 -447
@@ -32,7 +32,6 @@ const id = (key) => EMPTY_STRING + key;
32
32
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
33
33
  const strEndsWith = (str, suffix) => str.endsWith(suffix);
34
34
 
35
- const promise = Promise;
36
35
  const GLOBAL = globalThis;
37
36
  const math = Math;
38
37
  const mathMax = math.max;
@@ -51,10 +50,6 @@ const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
51
50
  const size = (arrayOrString) => arrayOrString.length;
52
51
  const test = (regex, subject) => regex.test(subject);
53
52
  const getUndefined = () => void 0;
54
- const promiseNew = (resolver) => new promise(resolver);
55
- const errorNew = (message) => {
56
- throw new Error(message);
57
- };
58
53
 
59
54
  const arrayHas = (array, value) => array.includes(value);
60
55
  const arrayEvery = (array, cb) => array.every(cb);
@@ -1216,563 +1211,6 @@ const createMetrics = getCreateFunction((store) => {
1216
1211
  return objFreeze(metrics);
1217
1212
  });
1218
1213
 
1219
- var __defProp$1 = Object.defineProperty;
1220
- var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols;
1221
- var __hasOwnProp$2 = Object.prototype.hasOwnProperty;
1222
- var __propIsEnum$2 = Object.prototype.propertyIsEnumerable;
1223
- var __defNormalProp$1 = (obj, key, value) =>
1224
- key in obj
1225
- ? __defProp$1(obj, key, {
1226
- enumerable: true,
1227
- configurable: true,
1228
- writable: true,
1229
- value,
1230
- })
1231
- : (obj[key] = value);
1232
- var __spreadValues$1 = (a, b) => {
1233
- for (var prop in b || (b = {}))
1234
- if (__hasOwnProp$2.call(b, prop)) __defNormalProp$1(a, prop, b[prop]);
1235
- if (__getOwnPropSymbols$2)
1236
- for (var prop of __getOwnPropSymbols$2(b)) {
1237
- if (__propIsEnum$2.call(b, prop)) __defNormalProp$1(a, prop, b[prop]);
1238
- }
1239
- return a;
1240
- };
1241
- var __async$1 = (__this, __arguments, generator) => {
1242
- return new Promise((resolve, reject) => {
1243
- var fulfilled = (value) => {
1244
- try {
1245
- step(generator.next(value));
1246
- } catch (e) {
1247
- reject(e);
1248
- }
1249
- };
1250
- var rejected = (value) => {
1251
- try {
1252
- step(generator.throw(value));
1253
- } catch (e) {
1254
- reject(e);
1255
- }
1256
- };
1257
- var step = (x) =>
1258
- x.done
1259
- ? resolve(x.value)
1260
- : Promise.resolve(x.value).then(fulfilled, rejected);
1261
- step((generator = generator.apply(__this, __arguments)).next());
1262
- });
1263
- };
1264
- const Persists = {
1265
- StoreOnly: 1 /* StoreOnly */,
1266
- MergeableStoreOnly: 2 /* MergeableStoreOnly */,
1267
- StoreOrMergeableStore: 3 /* StoreOrMergeableStore */,
1268
- };
1269
- const scheduleRunning = mapNew();
1270
- const scheduleActions = mapNew();
1271
- const getStoreFunctions = (persist = 1 /* StoreOnly */, store) =>
1272
- persist != 1 /* StoreOnly */ && store.isMergeable()
1273
- ? [
1274
- 1,
1275
- store.getMergeableContent,
1276
- store.getTransactionMergeableChanges,
1277
- ([[changedTables], [changedValues]]) =>
1278
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
1279
- store.setDefaultContent,
1280
- ]
1281
- : persist != 2 /* MergeableStoreOnly */
1282
- ? [
1283
- 0,
1284
- store.getContent,
1285
- store.getTransactionChanges,
1286
- ([changedTables, changedValues]) =>
1287
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
1288
- store.setContent,
1289
- ]
1290
- : errorNew('Store type not supported by this Persister');
1291
- const createCustomPersister = (
1292
- store,
1293
- getPersisted,
1294
- setPersisted,
1295
- addPersisterListener,
1296
- delPersisterListener,
1297
- onIgnoredError,
1298
- persist,
1299
- extra = {},
1300
- scheduleId = [],
1301
- ) => {
1302
- let loadSave = 0;
1303
- let loads = 0;
1304
- let saves = 0;
1305
- let action;
1306
- let autoLoadHandle;
1307
- let autoSaveListenerId;
1308
- mapEnsure(scheduleRunning, scheduleId, () => 0);
1309
- mapEnsure(scheduleActions, scheduleId, () => []);
1310
- const [
1311
- isMergeableStore,
1312
- getContent,
1313
- getChanges,
1314
- hasChanges,
1315
- setDefaultContent,
1316
- ] = getStoreFunctions(persist, store);
1317
- const run = () =>
1318
- __async$1(void 0, null, function* () {
1319
- /* istanbul ignore else */
1320
- if (!mapGet(scheduleRunning, scheduleId)) {
1321
- mapSet(scheduleRunning, scheduleId, 1);
1322
- while (
1323
- !isUndefined(
1324
- (action = arrayShift(mapGet(scheduleActions, scheduleId))),
1325
- )
1326
- ) {
1327
- try {
1328
- yield action();
1329
- } catch (error) {
1330
- /* istanbul ignore next */
1331
- onIgnoredError == null ? void 0 : onIgnoredError(error);
1332
- }
1333
- }
1334
- mapSet(scheduleRunning, scheduleId, 0);
1335
- }
1336
- });
1337
- const setContentOrChanges = (contentOrChanges) => {
1338
- (isMergeableStore &&
1339
- isArray(contentOrChanges == null ? void 0 : contentOrChanges[0])
1340
- ? (contentOrChanges == null ? void 0 : contentOrChanges[2]) === 1
1341
- ? store.applyMergeableChanges
1342
- : store.setMergeableContent
1343
- : (contentOrChanges == null ? void 0 : contentOrChanges[2]) === 1
1344
- ? store.applyChanges
1345
- : store.setContent)(contentOrChanges);
1346
- };
1347
- const load = (initialContent) =>
1348
- __async$1(void 0, null, function* () {
1349
- /* istanbul ignore else */
1350
- if (loadSave != 2) {
1351
- loadSave = 1;
1352
- loads++;
1353
- yield schedule(() =>
1354
- __async$1(void 0, null, function* () {
1355
- try {
1356
- const content = yield getPersisted();
1357
- if (isArray(content)) {
1358
- setContentOrChanges(content);
1359
- } else {
1360
- errorNew(`Content is not an array ${content}`);
1361
- }
1362
- } catch (error) {
1363
- onIgnoredError == null ? void 0 : onIgnoredError(error);
1364
- if (initialContent) {
1365
- setDefaultContent(initialContent);
1366
- }
1367
- }
1368
- loadSave = 0;
1369
- }),
1370
- );
1371
- }
1372
- return persister;
1373
- });
1374
- const startAutoLoad = (initialContent) =>
1375
- __async$1(void 0, null, function* () {
1376
- yield stopAutoLoad().load(initialContent);
1377
- try {
1378
- autoLoadHandle = yield addPersisterListener((content, changes) =>
1379
- __async$1(void 0, null, function* () {
1380
- if (changes || content) {
1381
- /* istanbul ignore else */
1382
- if (loadSave != 2) {
1383
- loadSave = 1;
1384
- loads++;
1385
- setContentOrChanges(changes != null ? changes : content);
1386
- loadSave = 0;
1387
- }
1388
- } else {
1389
- yield load();
1390
- }
1391
- }),
1392
- );
1393
- } catch (error) {
1394
- /* istanbul ignore next */
1395
- onIgnoredError == null ? void 0 : onIgnoredError(error);
1396
- }
1397
- return persister;
1398
- });
1399
- const stopAutoLoad = () => {
1400
- if (autoLoadHandle) {
1401
- delPersisterListener(autoLoadHandle);
1402
- autoLoadHandle = void 0;
1403
- }
1404
- return persister;
1405
- };
1406
- const isAutoLoading = () => !isUndefined(autoLoadHandle);
1407
- const save = (changes) =>
1408
- __async$1(void 0, null, function* () {
1409
- /* istanbul ignore else */
1410
- if (loadSave != 1) {
1411
- loadSave = 2;
1412
- saves++;
1413
- yield schedule(() =>
1414
- __async$1(void 0, null, function* () {
1415
- try {
1416
- yield setPersisted(getContent, changes);
1417
- } catch (error) {
1418
- /* istanbul ignore next */
1419
- onIgnoredError == null ? void 0 : onIgnoredError(error);
1420
- }
1421
- loadSave = 0;
1422
- }),
1423
- );
1424
- }
1425
- return persister;
1426
- });
1427
- const startAutoSave = () =>
1428
- __async$1(void 0, null, function* () {
1429
- yield stopAutoSave().save();
1430
- autoSaveListenerId = store.addDidFinishTransactionListener(() => {
1431
- const changes = getChanges();
1432
- if (hasChanges(changes)) {
1433
- save(changes);
1434
- }
1435
- });
1436
- return persister;
1437
- });
1438
- const stopAutoSave = () => {
1439
- ifNotUndefined(autoSaveListenerId, store.delListener);
1440
- autoSaveListenerId = void 0;
1441
- return persister;
1442
- };
1443
- const isAutoSaving = () => !isUndefined(autoSaveListenerId);
1444
- const schedule = (...actions) =>
1445
- __async$1(void 0, null, function* () {
1446
- arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
1447
- yield run();
1448
- return persister;
1449
- });
1450
- const getStore = () => store;
1451
- const destroy = () => {
1452
- arrayClear(mapGet(scheduleActions, scheduleId));
1453
- return stopAutoLoad().stopAutoSave();
1454
- };
1455
- const getStats = () => ({loads, saves});
1456
- const persister = __spreadValues$1(
1457
- {
1458
- load,
1459
- startAutoLoad,
1460
- stopAutoLoad,
1461
- isAutoLoading,
1462
- save,
1463
- startAutoSave,
1464
- stopAutoSave,
1465
- isAutoSaving,
1466
- schedule,
1467
- getStore,
1468
- destroy,
1469
- getStats,
1470
- },
1471
- extra,
1472
- );
1473
- return objFreeze(persister);
1474
- };
1475
-
1476
- const textEncoder = new GLOBAL.TextEncoder();
1477
- const getHash = (value) => {
1478
- let hash = 2166136261;
1479
- arrayForEach(textEncoder.encode(value), (char) => {
1480
- hash ^= char;
1481
- hash +=
1482
- (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
1483
- });
1484
- return hash >>> 0;
1485
- };
1486
-
1487
- const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
1488
- const stampCloneWithoutHash = ([value, time]) => newStamp(value, time);
1489
- const newStamp = (value, time) => (time ? [value, time] : [value]);
1490
- const getStampHash = (stamp) => stamp[2];
1491
- const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
1492
- const replaceTimeHash = (oldTime, newTime) =>
1493
- newTime > oldTime ? (oldTime ? getHash(oldTime) : 0) ^ getHash(newTime) : 0;
1494
- const getLatestTime = (time1, time2) => {
1495
- var _a;
1496
- return (_a =
1497
- (time1 != null ? time1 : '') > (time2 != null ? time2 : '')
1498
- ? time1
1499
- : time2) != null
1500
- ? _a
1501
- : '';
1502
- };
1503
- const stampUpdate = (stamp, hash, time) => {
1504
- stamp[2] = hash >>> 0;
1505
- if (time > stamp[1]) {
1506
- stamp[1] = time;
1507
- }
1508
- };
1509
- const stampNewObj = (time = EMPTY_STRING) => newStamp(objNew(), time);
1510
- const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
1511
- const stampMapToObjWithHash = (
1512
- [map, time, hash],
1513
- mapper = stampCloneWithHash,
1514
- ) => [mapToObj(map, mapper), time, hash];
1515
- const stampMapToObjWithoutHash = (
1516
- [map, time],
1517
- mapper = stampCloneWithoutHash,
1518
- ) => newStamp(mapToObj(map, mapper), time);
1519
- const stampValidate = (stamp, validateThing) =>
1520
- isArray(stamp) &&
1521
- size(stamp) == 3 &&
1522
- isString(stamp[1]) &&
1523
- getTypeOf(stamp[2]) == NUMBER &&
1524
- isFiniteNumber(stamp[2]) &&
1525
- validateThing(stamp[0]);
1526
-
1527
- var __defProp = Object.defineProperty;
1528
- var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols;
1529
- var __hasOwnProp$1 = Object.prototype.hasOwnProperty;
1530
- var __propIsEnum$1 = Object.prototype.propertyIsEnumerable;
1531
- var __defNormalProp = (obj, key, value) =>
1532
- key in obj
1533
- ? __defProp(obj, key, {
1534
- enumerable: true,
1535
- configurable: true,
1536
- writable: true,
1537
- value,
1538
- })
1539
- : (obj[key] = value);
1540
- var __spreadValues = (a, b) => {
1541
- for (var prop in b || (b = {}))
1542
- if (__hasOwnProp$1.call(b, prop)) __defNormalProp(a, prop, b[prop]);
1543
- if (__getOwnPropSymbols$1)
1544
- for (var prop of __getOwnPropSymbols$1(b)) {
1545
- if (__propIsEnum$1.call(b, prop)) __defNormalProp(a, prop, b[prop]);
1546
- }
1547
- return a;
1548
- };
1549
- var __async = (__this, __arguments, generator) => {
1550
- return new Promise((resolve, reject) => {
1551
- var fulfilled = (value) => {
1552
- try {
1553
- step(generator.next(value));
1554
- } catch (e) {
1555
- reject(e);
1556
- }
1557
- };
1558
- var rejected = (value) => {
1559
- try {
1560
- step(generator.throw(value));
1561
- } catch (e) {
1562
- reject(e);
1563
- }
1564
- };
1565
- var step = (x) =>
1566
- x.done
1567
- ? resolve(x.value)
1568
- : Promise.resolve(x.value).then(fulfilled, rejected);
1569
- step((generator = generator.apply(__this, __arguments)).next());
1570
- });
1571
- };
1572
- const Message = {
1573
- Response: 0 /* Response */,
1574
- GetContentHashes: 1 /* GetContentHashes */,
1575
- ContentHashes: 2 /* ContentHashes */,
1576
- ContentDiff: 3 /* ContentDiff */,
1577
- GetTableDiff: 4 /* GetTableDiff */,
1578
- GetRowDiff: 5 /* GetRowDiff */,
1579
- GetCellDiff: 6 /* GetCellDiff */,
1580
- GetValueDiff: 7 /* GetValueDiff */,
1581
- };
1582
- const createCustomSynchronizer = (
1583
- store,
1584
- send,
1585
- registerReceive,
1586
- destroyImpl,
1587
- requestTimeoutSeconds,
1588
- onSend,
1589
- onReceive,
1590
- onIgnoredError,
1591
- extra = {},
1592
- ) => {
1593
- let persisterListener;
1594
- let sends = 0;
1595
- let receives = 0;
1596
- const pendingRequests = mapNew();
1597
- const sendImpl = (toClientId, requestId, message, body) => {
1598
- sends++;
1599
- onSend == null ? void 0 : onSend(toClientId, requestId, message, body);
1600
- send(toClientId, requestId, message, body);
1601
- };
1602
- const request = (_0, _1, ..._2) =>
1603
- __async(
1604
- void 0,
1605
- [_0, _1, ..._2],
1606
- function* (toClientId, message, body = EMPTY_STRING) {
1607
- return promiseNew((resolve, reject) => {
1608
- const requestId = getUniqueId();
1609
- const timeout = setTimeout(() => {
1610
- collDel(pendingRequests, requestId);
1611
- reject(
1612
- `No response from ${toClientId != null ? toClientId : 'anyone'} to ${requestId}, ` +
1613
- message,
1614
- );
1615
- }, requestTimeoutSeconds * 1e3);
1616
- mapSet(pendingRequests, requestId, [
1617
- toClientId,
1618
- (response, fromClientId) => {
1619
- clearTimeout(timeout);
1620
- collDel(pendingRequests, requestId);
1621
- resolve([response, fromClientId]);
1622
- },
1623
- ]);
1624
- sendImpl(toClientId, requestId, message, body);
1625
- });
1626
- },
1627
- );
1628
- const mergeTablesStamps = (tablesStamp, [tableStamps2, tablesTime2]) => {
1629
- objForEach(tableStamps2, ([rowStamps2, tableTime2], tableId) => {
1630
- const tableStamp = objEnsure(tablesStamp[0], tableId, stampNewObj);
1631
- objForEach(rowStamps2, ([cellStamps2, rowTime2], rowId) => {
1632
- const rowStamp = objEnsure(tableStamp[0], rowId, stampNewObj);
1633
- objForEach(
1634
- cellStamps2,
1635
- ([cell2, cellTime2], cellId) =>
1636
- (rowStamp[0][cellId] = newStamp(cell2, cellTime2)),
1637
- );
1638
- rowStamp[1] = getLatestTime(rowStamp[1], rowTime2);
1639
- });
1640
- tableStamp[1] = getLatestTime(tableStamp[1], tableTime2);
1641
- });
1642
- tablesStamp[1] = getLatestTime(tablesStamp[1], tablesTime2);
1643
- };
1644
- const getChangesFromOtherStore = (otherClientId = null, otherContentHashes) =>
1645
- __async(void 0, null, function* () {
1646
- if (isUndefined(otherContentHashes)) {
1647
- [otherContentHashes, otherClientId] = yield request(
1648
- otherClientId,
1649
- 1 /* GetContentHashes */,
1650
- );
1651
- }
1652
- const [otherTablesHash, otherValuesHash] = otherContentHashes;
1653
- const [tablesHash, valuesHash] = store.getMergeableContentHashes();
1654
- let tablesChanges = stampNewObj();
1655
- if (tablesHash != otherTablesHash) {
1656
- const [newTables, differentTableHashes] = (yield request(
1657
- otherClientId,
1658
- 4 /* GetTableDiff */,
1659
- store.getMergeableTableHashes(),
1660
- ))[0];
1661
- tablesChanges = newTables;
1662
- if (!objIsEmpty(differentTableHashes)) {
1663
- const [newRows, differentRowHashes] = (yield request(
1664
- otherClientId,
1665
- 5 /* GetRowDiff */,
1666
- store.getMergeableRowHashes(differentTableHashes),
1667
- ))[0];
1668
- mergeTablesStamps(tablesChanges, newRows);
1669
- if (!objIsEmpty(differentRowHashes)) {
1670
- const newCells = (yield request(
1671
- otherClientId,
1672
- 6 /* GetCellDiff */,
1673
- store.getMergeableCellHashes(differentRowHashes),
1674
- ))[0];
1675
- mergeTablesStamps(tablesChanges, newCells);
1676
- }
1677
- }
1678
- }
1679
- return [
1680
- tablesChanges,
1681
- valuesHash == otherValuesHash
1682
- ? stampNewObj()
1683
- : (yield request(
1684
- otherClientId,
1685
- 7 /* GetValueDiff */,
1686
- store.getMergeableValueHashes(),
1687
- ))[0],
1688
- 1,
1689
- ];
1690
- });
1691
- const getPersisted = () =>
1692
- __async(void 0, null, function* () {
1693
- const changes = yield getChangesFromOtherStore();
1694
- return !objIsEmpty(changes[0][0]) || !objIsEmpty(changes[1][0])
1695
- ? changes
1696
- : void 0;
1697
- });
1698
- const setPersisted = (_getContent, changes) =>
1699
- __async(void 0, null, function* () {
1700
- return changes
1701
- ? sendImpl(null, null, 3 /* ContentDiff */, changes)
1702
- : sendImpl(
1703
- null,
1704
- null,
1705
- 2 /* ContentHashes */,
1706
- store.getMergeableContentHashes(),
1707
- );
1708
- });
1709
- const addPersisterListener = (listener) => (persisterListener = listener);
1710
- const delPersisterListener = () => (persisterListener = void 0);
1711
- const startSync = (initialContent) =>
1712
- __async(void 0, null, function* () {
1713
- return yield (yield persister.startAutoLoad(
1714
- initialContent,
1715
- )).startAutoSave();
1716
- });
1717
- const stopSync = () => persister.stopAutoLoad().stopAutoSave();
1718
- const destroy = () => {
1719
- destroyImpl();
1720
- return persister.stopSync();
1721
- };
1722
- const getSynchronizerStats = () => ({sends, receives});
1723
- const persister = createCustomPersister(
1724
- store,
1725
- getPersisted,
1726
- setPersisted,
1727
- addPersisterListener,
1728
- delPersisterListener,
1729
- onIgnoredError,
1730
- 2,
1731
- // MergeableStoreOnly
1732
- __spreadValues({startSync, stopSync, destroy, getSynchronizerStats}, extra),
1733
- );
1734
- registerReceive((fromClientId, requestId, message, body) => {
1735
- receives++;
1736
- onReceive == null
1737
- ? void 0
1738
- : onReceive(fromClientId, requestId, message, body);
1739
- if (message == 0 /* Response */) {
1740
- ifNotUndefined(
1741
- mapGet(pendingRequests, requestId),
1742
- ([toClientId, handleResponse]) =>
1743
- isUndefined(toClientId) || toClientId == fromClientId
1744
- ? handleResponse(body, fromClientId)
1745
- : /* istanbul ignore next */
1746
- 0,
1747
- );
1748
- } else if (message == 2 /* ContentHashes */ && persister.isAutoLoading()) {
1749
- getChangesFromOtherStore(fromClientId, body).then((changes) => {
1750
- persisterListener == null ? void 0 : persisterListener(void 0, changes);
1751
- });
1752
- } else if (message == 3 /* ContentDiff */ && persister.isAutoLoading()) {
1753
- persisterListener == null ? void 0 : persisterListener(void 0, body);
1754
- } else {
1755
- ifNotUndefined(
1756
- message == 1 /* GetContentHashes */ && persister.isAutoSaving()
1757
- ? store.getMergeableContentHashes()
1758
- : message == 4 /* GetTableDiff */
1759
- ? store.getMergeableTableDiff(body)
1760
- : message == 5 /* GetRowDiff */
1761
- ? store.getMergeableRowDiff(body)
1762
- : message == 6 /* GetCellDiff */
1763
- ? store.getMergeableCellDiff(body)
1764
- : message == 7 /* GetValueDiff */
1765
- ? store.getMergeableValueDiff(body)
1766
- : void 0,
1767
- (response) => {
1768
- sendImpl(fromClientId, requestId, 0 /* Response */, response);
1769
- },
1770
- );
1771
- }
1772
- });
1773
- return persister;
1774
- };
1775
-
1776
1214
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
1777
1215
  var __hasOwnProp = Object.prototype.hasOwnProperty;
1778
1216
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -2456,6 +1894,60 @@ const createRelationships = getCreateFunction((store) => {
2456
1894
  return objFreeze(relationships);
2457
1895
  });
2458
1896
 
1897
+ const textEncoder = new GLOBAL.TextEncoder();
1898
+ const getHash = (value) => {
1899
+ let hash = 2166136261;
1900
+ arrayForEach(textEncoder.encode(value), (char) => {
1901
+ hash ^= char;
1902
+ hash +=
1903
+ (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
1904
+ });
1905
+ return hash >>> 0;
1906
+ };
1907
+
1908
+ const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
1909
+ const stampCloneWithoutHash = ([value, time]) => newStamp(value, time);
1910
+ const newStamp = (value, time) => (time ? [value, time] : [value]);
1911
+ const getStampHash = (stamp) => stamp[2];
1912
+ const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
1913
+ const replaceTimeHash = (oldTime, newTime) =>
1914
+ newTime > oldTime ? (oldTime ? getHash(oldTime) : 0) ^ getHash(newTime) : 0;
1915
+ const getLatestTime = (time1, time2) => {
1916
+ var _a;
1917
+ return (
1918
+ /* istanbul ignore next */
1919
+ (_a =
1920
+ (time1 != null ? time1 : '') > (time2 != null ? time2 : '')
1921
+ ? time1
1922
+ : time2) != null
1923
+ ? _a
1924
+ : ''
1925
+ );
1926
+ };
1927
+ const stampUpdate = (stamp, hash, time) => {
1928
+ stamp[2] = hash >>> 0;
1929
+ if (time > stamp[1]) {
1930
+ stamp[1] = time;
1931
+ }
1932
+ };
1933
+ const stampNewObj = (time = EMPTY_STRING) => newStamp(objNew(), time);
1934
+ const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
1935
+ const stampMapToObjWithHash = (
1936
+ [map, time, hash],
1937
+ mapper = stampCloneWithHash,
1938
+ ) => [mapToObj(map, mapper), time, hash];
1939
+ const stampMapToObjWithoutHash = (
1940
+ [map, time],
1941
+ mapper = stampCloneWithoutHash,
1942
+ ) => newStamp(mapToObj(map, mapper), time);
1943
+ const stampValidate = (stamp, validateThing) =>
1944
+ isArray(stamp) &&
1945
+ size(stamp) == 3 &&
1946
+ isString(stamp[1]) &&
1947
+ getTypeOf(stamp[2]) == NUMBER &&
1948
+ isFiniteNumber(stamp[2]) &&
1949
+ validateThing(stamp[0]);
1950
+
2459
1951
  const pairNew = (value) => [value, value];
2460
1952
  const pairCollSize2 = (pair, func = collSize2) => func(pair[0]) + func(pair[1]);
2461
1953
  const pairNewMap = () => [mapNew(), mapNew()];
@@ -4380,11 +3872,7 @@ const createMergeableStore = (uniqueId) => {
4380
3872
  };
4381
3873
 
4382
3874
  export {
4383
- Message,
4384
- Persists,
4385
3875
  createCheckpoints,
4386
- createCustomPersister,
4387
- createCustomSynchronizer,
4388
3876
  createIndexes,
4389
3877
  createMergeableStore,
4390
3878
  createMetrics,