tinybase 5.2.0-beta.3 → 5.2.0-beta.5

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 (855) 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 +188 -13
  6. package/@types/persisters/index.d.ts +188 -13
  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 +178 -0
  24. package/@types/persisters/persister-pglite/index.d.ts +178 -0
  25. package/@types/persisters/persister-pglite/with-schemas/index.d.cts +197 -0
  26. package/@types/persisters/persister-pglite/with-schemas/index.d.ts +197 -0
  27. package/@types/persisters/persister-postgres/index.d.cts +3 -2
  28. package/@types/persisters/persister-postgres/index.d.ts +3 -2
  29. package/@types/persisters/persister-postgres/with-schemas/index.d.cts +4 -3
  30. package/@types/persisters/persister-postgres/with-schemas/index.d.ts +4 -3
  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 +238 -16
  44. package/@types/persisters/with-schemas/index.d.ts +238 -16
  45. package/@types/synchronizers/index.d.cts +2 -5
  46. package/@types/synchronizers/index.d.ts +2 -5
  47. package/@types/synchronizers/with-schemas/index.d.cts +2 -5
  48. package/@types/synchronizers/with-schemas/index.d.ts +2 -5
  49. package/cjs/es6/index.cjs +57 -568
  50. package/cjs/es6/mergeable-store/index.cjs +12 -8
  51. package/cjs/es6/mergeable-store/with-schemas/index.cjs +12 -8
  52. package/cjs/es6/min/index.cjs +1 -1
  53. package/cjs/es6/min/index.cjs.gz +0 -0
  54. package/cjs/es6/min/mergeable-store/index.cjs +1 -1
  55. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  56. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
  57. package/cjs/es6/min/mergeable-store/with-schemas/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-browser/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  65. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  66. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  69. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  70. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  73. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  74. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/persisters/persister-file/index.cjs +1 -1
  77. package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
  78. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  79. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  80. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  81. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  82. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  83. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  84. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +1 -1
  85. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  86. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  87. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  88. package/cjs/es6/min/persisters/persister-partykit-server/index.cjs +1 -1
  89. package/cjs/es6/min/persisters/persister-partykit-server/index.cjs.gz +0 -0
  90. package/cjs/es6/min/persisters/persister-partykit-server/with-schemas/index.cjs +1 -1
  91. package/cjs/es6/min/persisters/persister-partykit-server/with-schemas/index.cjs.gz +0 -0
  92. package/cjs/es6/min/persisters/persister-pglite/index.cjs +1 -0
  93. package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
  94. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +1 -0
  95. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  96. package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
  97. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  98. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  99. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  100. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  101. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  102. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  103. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  104. package/cjs/es6/min/persisters/persister-remote/index.cjs +1 -1
  105. package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
  106. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  107. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  108. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  109. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  110. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  111. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  112. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  113. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  114. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  115. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  116. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  117. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  118. package/cjs/es6/min/store/index.cjs +1 -1
  119. package/cjs/es6/min/store/index.cjs.gz +0 -0
  120. package/cjs/es6/min/store/with-schemas/index.cjs +1 -1
  121. package/cjs/es6/min/store/with-schemas/index.cjs.gz +0 -0
  122. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  123. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  124. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  125. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  126. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  127. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  128. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  129. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  130. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  131. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  132. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  133. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  134. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  135. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  136. package/cjs/es6/persisters/index.cjs +1095 -10
  137. package/cjs/es6/persisters/persister-browser/index.cjs +3 -2
  138. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +3 -2
  139. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +123 -106
  140. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +123 -106
  141. package/cjs/es6/persisters/persister-electric-sql/index.cjs +121 -104
  142. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +121 -104
  143. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +123 -106
  144. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +123 -106
  145. package/cjs/es6/persisters/persister-file/index.cjs +4 -2
  146. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +4 -2
  147. package/cjs/es6/persisters/persister-indexed-db/index.cjs +2 -2
  148. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  149. package/cjs/es6/persisters/persister-libsql/index.cjs +121 -104
  150. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +121 -104
  151. package/cjs/es6/persisters/persister-partykit-client/index.cjs +3 -2
  152. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +3 -2
  153. package/cjs/es6/persisters/persister-partykit-server/index.cjs +3 -2
  154. package/cjs/es6/persisters/persister-partykit-server/with-schemas/index.cjs +3 -2
  155. package/cjs/es6/persisters/persister-pglite/index.cjs +1327 -0
  156. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +1327 -0
  157. package/cjs/es6/persisters/persister-postgres/index.cjs +126 -111
  158. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +126 -111
  159. package/cjs/es6/persisters/persister-powersync/index.cjs +125 -108
  160. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +125 -108
  161. package/cjs/es6/persisters/persister-remote/index.cjs +3 -2
  162. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +3 -2
  163. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +127 -106
  164. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +127 -106
  165. package/cjs/es6/persisters/persister-sqlite3/index.cjs +123 -106
  166. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +123 -106
  167. package/cjs/es6/persisters/with-schemas/index.cjs +1095 -10
  168. package/cjs/es6/store/index.cjs +3 -2
  169. package/cjs/es6/store/with-schemas/index.cjs +3 -2
  170. package/cjs/es6/synchronizers/index.cjs +9 -6
  171. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +9 -6
  172. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +9 -6
  173. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +9 -6
  174. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +9 -6
  175. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +13 -8
  176. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +13 -8
  177. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +21 -16
  178. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +21 -16
  179. package/cjs/es6/synchronizers/with-schemas/index.cjs +9 -6
  180. package/cjs/es6/ui-react-inspector/index.cjs +5 -4
  181. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +5 -4
  182. package/cjs/es6/with-schemas/index.cjs +57 -568
  183. package/cjs/index.cjs +48 -449
  184. package/cjs/mergeable-store/index.cjs +4 -2
  185. package/cjs/mergeable-store/with-schemas/index.cjs +4 -2
  186. package/cjs/min/index.cjs +1 -1
  187. package/cjs/min/index.cjs.gz +0 -0
  188. package/cjs/min/mergeable-store/index.cjs +1 -1
  189. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  190. package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
  191. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  192. package/cjs/min/persisters/index.cjs +1 -1
  193. package/cjs/min/persisters/index.cjs.gz +0 -0
  194. package/cjs/min/persisters/persister-browser/index.cjs +1 -1
  195. package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
  196. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  197. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  198. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  199. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  200. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  201. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  202. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  203. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  204. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  205. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  206. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  207. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  208. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  209. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  210. package/cjs/min/persisters/persister-file/index.cjs +1 -1
  211. package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
  212. package/cjs/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  213. package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  214. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  215. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  216. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  217. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  218. package/cjs/min/persisters/persister-partykit-client/index.cjs +1 -1
  219. package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  220. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  221. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  222. package/cjs/min/persisters/persister-partykit-server/index.cjs +1 -1
  223. package/cjs/min/persisters/persister-partykit-server/index.cjs.gz +0 -0
  224. package/cjs/min/persisters/persister-partykit-server/with-schemas/index.cjs +1 -1
  225. package/cjs/min/persisters/persister-partykit-server/with-schemas/index.cjs.gz +0 -0
  226. package/cjs/min/persisters/persister-pglite/index.cjs +1 -0
  227. package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
  228. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +1 -0
  229. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  230. package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
  231. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  232. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  233. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  234. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  235. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  236. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  237. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  238. package/cjs/min/persisters/persister-remote/index.cjs +1 -1
  239. package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
  240. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  241. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  242. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  243. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  244. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  245. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  246. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  247. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  248. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  249. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  250. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  251. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  252. package/cjs/min/store/index.cjs +1 -1
  253. package/cjs/min/store/index.cjs.gz +0 -0
  254. package/cjs/min/store/with-schemas/index.cjs +1 -1
  255. package/cjs/min/store/with-schemas/index.cjs.gz +0 -0
  256. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  257. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  258. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  259. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  260. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  261. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  262. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  263. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  264. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  265. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  266. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  267. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  268. package/cjs/min/with-schemas/index.cjs +1 -1
  269. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  270. package/cjs/persisters/index.cjs +833 -0
  271. package/cjs/persisters/persister-browser/index.cjs +3 -2
  272. package/cjs/persisters/persister-browser/with-schemas/index.cjs +3 -2
  273. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +108 -71
  274. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +108 -71
  275. package/cjs/persisters/persister-electric-sql/index.cjs +107 -70
  276. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +107 -70
  277. package/cjs/persisters/persister-expo-sqlite/index.cjs +108 -71
  278. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +108 -71
  279. package/cjs/persisters/persister-file/index.cjs +4 -2
  280. package/cjs/persisters/persister-file/with-schemas/index.cjs +4 -2
  281. package/cjs/persisters/persister-indexed-db/index.cjs +2 -2
  282. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  283. package/cjs/persisters/persister-libsql/index.cjs +107 -70
  284. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +107 -70
  285. package/cjs/persisters/persister-partykit-client/index.cjs +3 -2
  286. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +3 -2
  287. package/cjs/persisters/persister-partykit-server/index.cjs +3 -2
  288. package/cjs/persisters/persister-partykit-server/with-schemas/index.cjs +3 -2
  289. package/cjs/persisters/persister-pglite/index.cjs +1001 -0
  290. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +1001 -0
  291. package/cjs/persisters/persister-postgres/index.cjs +110 -75
  292. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +110 -75
  293. package/cjs/persisters/persister-powersync/index.cjs +113 -74
  294. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +113 -74
  295. package/cjs/persisters/persister-remote/index.cjs +3 -2
  296. package/cjs/persisters/persister-remote/with-schemas/index.cjs +3 -2
  297. package/cjs/persisters/persister-sqlite-wasm/index.cjs +109 -72
  298. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +109 -72
  299. package/cjs/persisters/persister-sqlite3/index.cjs +109 -72
  300. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +109 -72
  301. package/cjs/persisters/with-schemas/index.cjs +833 -0
  302. package/cjs/store/index.cjs +3 -2
  303. package/cjs/store/with-schemas/index.cjs +3 -2
  304. package/cjs/synchronizers/index.cjs +1 -0
  305. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -0
  306. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -0
  307. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -0
  308. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -0
  309. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +5 -2
  310. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +5 -2
  311. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +13 -10
  312. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +13 -10
  313. package/cjs/synchronizers/with-schemas/index.cjs +1 -0
  314. package/cjs/ui-react-inspector/index.cjs +5 -4
  315. package/cjs/ui-react-inspector/with-schemas/index.cjs +5 -4
  316. package/cjs/with-schemas/index.cjs +48 -449
  317. package/es6/index.js +57 -568
  318. package/es6/mergeable-store/index.js +12 -8
  319. package/es6/mergeable-store/with-schemas/index.js +12 -8
  320. package/es6/min/index.js +1 -1
  321. package/es6/min/index.js.gz +0 -0
  322. package/es6/min/mergeable-store/index.js +1 -1
  323. package/es6/min/mergeable-store/index.js.gz +0 -0
  324. package/es6/min/mergeable-store/with-schemas/index.js +1 -1
  325. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  326. package/es6/min/persisters/index.js +1 -1
  327. package/es6/min/persisters/index.js.gz +0 -0
  328. package/es6/min/persisters/persister-browser/index.js +1 -1
  329. package/es6/min/persisters/persister-browser/index.js.gz +0 -0
  330. package/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  331. package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  332. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  333. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  334. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  335. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  336. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  337. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  338. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  339. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  340. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  341. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  342. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  343. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  344. package/es6/min/persisters/persister-file/index.js +1 -1
  345. package/es6/min/persisters/persister-file/index.js.gz +0 -0
  346. package/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  347. package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  348. package/es6/min/persisters/persister-libsql/index.js +1 -1
  349. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  350. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  351. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  352. package/es6/min/persisters/persister-partykit-client/index.js +1 -1
  353. package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  354. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  355. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  356. package/es6/min/persisters/persister-partykit-server/index.js +1 -1
  357. package/es6/min/persisters/persister-partykit-server/index.js.gz +0 -0
  358. package/es6/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  359. package/es6/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  360. package/es6/min/persisters/persister-pglite/index.js +1 -0
  361. package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  362. package/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -0
  363. package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  364. package/es6/min/persisters/persister-postgres/index.js +1 -1
  365. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  366. package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  367. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  368. package/es6/min/persisters/persister-powersync/index.js +1 -1
  369. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  370. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  371. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  372. package/es6/min/persisters/persister-remote/index.js +1 -1
  373. package/es6/min/persisters/persister-remote/index.js.gz +0 -0
  374. package/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  375. package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  376. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  377. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  378. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  379. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  380. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  381. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  382. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  383. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  384. package/es6/min/persisters/with-schemas/index.js +1 -1
  385. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  386. package/es6/min/store/index.js +1 -1
  387. package/es6/min/store/index.js.gz +0 -0
  388. package/es6/min/store/with-schemas/index.js +1 -1
  389. package/es6/min/store/with-schemas/index.js.gz +0 -0
  390. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  391. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  392. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  393. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  394. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  395. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  396. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  397. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  398. package/es6/min/ui-react-inspector/index.js +1 -1
  399. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  400. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  401. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  402. package/es6/min/with-schemas/index.js +1 -1
  403. package/es6/min/with-schemas/index.js.gz +0 -0
  404. package/es6/persisters/index.js +1099 -11
  405. package/es6/persisters/persister-browser/index.js +3 -2
  406. package/es6/persisters/persister-browser/with-schemas/index.js +3 -2
  407. package/es6/persisters/persister-cr-sqlite-wasm/index.js +123 -106
  408. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +123 -106
  409. package/es6/persisters/persister-electric-sql/index.js +121 -104
  410. package/es6/persisters/persister-electric-sql/with-schemas/index.js +121 -104
  411. package/es6/persisters/persister-expo-sqlite/index.js +123 -106
  412. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +123 -106
  413. package/es6/persisters/persister-file/index.js +4 -2
  414. package/es6/persisters/persister-file/with-schemas/index.js +4 -2
  415. package/es6/persisters/persister-indexed-db/index.js +2 -2
  416. package/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  417. package/es6/persisters/persister-libsql/index.js +121 -104
  418. package/es6/persisters/persister-libsql/with-schemas/index.js +121 -104
  419. package/es6/persisters/persister-partykit-client/index.js +3 -2
  420. package/es6/persisters/persister-partykit-client/with-schemas/index.js +3 -2
  421. package/es6/persisters/persister-partykit-server/index.js +3 -2
  422. package/es6/persisters/persister-partykit-server/with-schemas/index.js +3 -2
  423. package/es6/persisters/persister-pglite/index.js +1325 -0
  424. package/es6/persisters/persister-pglite/with-schemas/index.js +1325 -0
  425. package/es6/persisters/persister-postgres/index.js +126 -111
  426. package/es6/persisters/persister-postgres/with-schemas/index.js +126 -111
  427. package/es6/persisters/persister-powersync/index.js +125 -108
  428. package/es6/persisters/persister-powersync/with-schemas/index.js +125 -108
  429. package/es6/persisters/persister-remote/index.js +3 -2
  430. package/es6/persisters/persister-remote/with-schemas/index.js +3 -2
  431. package/es6/persisters/persister-sqlite-wasm/index.js +127 -106
  432. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +127 -106
  433. package/es6/persisters/persister-sqlite3/index.js +123 -106
  434. package/es6/persisters/persister-sqlite3/with-schemas/index.js +123 -106
  435. package/es6/persisters/with-schemas/index.js +1099 -11
  436. package/es6/store/index.js +3 -2
  437. package/es6/store/with-schemas/index.js +3 -2
  438. package/es6/synchronizers/index.js +9 -6
  439. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  440. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  441. package/es6/synchronizers/synchronizer-local/index.js +9 -6
  442. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  443. package/es6/synchronizers/synchronizer-ws-client/index.js +13 -8
  444. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +13 -8
  445. package/es6/synchronizers/synchronizer-ws-server/index.js +21 -16
  446. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +21 -16
  447. package/es6/synchronizers/with-schemas/index.js +9 -6
  448. package/es6/ui-react-inspector/index.js +5 -4
  449. package/es6/ui-react-inspector/with-schemas/index.js +5 -4
  450. package/es6/with-schemas/index.js +57 -568
  451. package/index.js +48 -449
  452. package/mergeable-store/index.js +4 -2
  453. package/mergeable-store/with-schemas/index.js +4 -2
  454. package/min/index.js +1 -1
  455. package/min/index.js.gz +0 -0
  456. package/min/mergeable-store/index.js +1 -1
  457. package/min/mergeable-store/index.js.gz +0 -0
  458. package/min/mergeable-store/with-schemas/index.js +1 -1
  459. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  460. package/min/persisters/index.js +1 -1
  461. package/min/persisters/index.js.gz +0 -0
  462. package/min/persisters/persister-browser/index.js +1 -1
  463. package/min/persisters/persister-browser/index.js.gz +0 -0
  464. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  465. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  466. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  467. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  468. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  469. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  470. package/min/persisters/persister-electric-sql/index.js +1 -1
  471. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  472. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  473. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  474. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  475. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  476. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  477. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  478. package/min/persisters/persister-file/index.js +1 -1
  479. package/min/persisters/persister-file/index.js.gz +0 -0
  480. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  481. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  482. package/min/persisters/persister-libsql/index.js +1 -1
  483. package/min/persisters/persister-libsql/index.js.gz +0 -0
  484. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  485. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  486. package/min/persisters/persister-partykit-client/index.js +1 -1
  487. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  488. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  489. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  490. package/min/persisters/persister-partykit-server/index.js +1 -1
  491. package/min/persisters/persister-partykit-server/index.js.gz +0 -0
  492. package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  493. package/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  494. package/min/persisters/persister-pglite/index.js +1 -0
  495. package/min/persisters/persister-pglite/index.js.gz +0 -0
  496. package/min/persisters/persister-pglite/with-schemas/index.js +1 -0
  497. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  498. package/min/persisters/persister-postgres/index.js +1 -1
  499. package/min/persisters/persister-postgres/index.js.gz +0 -0
  500. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  501. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  502. package/min/persisters/persister-powersync/index.js +1 -1
  503. package/min/persisters/persister-powersync/index.js.gz +0 -0
  504. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  505. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  506. package/min/persisters/persister-remote/index.js +1 -1
  507. package/min/persisters/persister-remote/index.js.gz +0 -0
  508. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  509. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  510. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  511. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  512. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  513. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  514. package/min/persisters/persister-sqlite3/index.js +1 -1
  515. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  516. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  517. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  518. package/min/persisters/with-schemas/index.js +1 -1
  519. package/min/persisters/with-schemas/index.js.gz +0 -0
  520. package/min/store/index.js +1 -1
  521. package/min/store/index.js.gz +0 -0
  522. package/min/store/with-schemas/index.js +1 -1
  523. package/min/store/with-schemas/index.js.gz +0 -0
  524. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  525. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  526. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  527. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  528. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  529. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  530. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  531. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  532. package/min/ui-react-inspector/index.js +1 -1
  533. package/min/ui-react-inspector/index.js.gz +0 -0
  534. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  535. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  536. package/min/with-schemas/index.js +1 -1
  537. package/min/with-schemas/index.js.gz +0 -0
  538. package/package.json +431 -323
  539. package/persisters/index.js +837 -1
  540. package/persisters/persister-browser/index.js +3 -2
  541. package/persisters/persister-browser/with-schemas/index.js +3 -2
  542. package/persisters/persister-cr-sqlite-wasm/index.js +108 -71
  543. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +108 -71
  544. package/persisters/persister-electric-sql/index.js +107 -70
  545. package/persisters/persister-electric-sql/with-schemas/index.js +107 -70
  546. package/persisters/persister-expo-sqlite/index.js +108 -71
  547. package/persisters/persister-expo-sqlite/with-schemas/index.js +108 -71
  548. package/persisters/persister-file/index.js +4 -2
  549. package/persisters/persister-file/with-schemas/index.js +4 -2
  550. package/persisters/persister-indexed-db/index.js +2 -2
  551. package/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  552. package/persisters/persister-libsql/index.js +107 -70
  553. package/persisters/persister-libsql/with-schemas/index.js +107 -70
  554. package/persisters/persister-partykit-client/index.js +3 -2
  555. package/persisters/persister-partykit-client/with-schemas/index.js +3 -2
  556. package/persisters/persister-partykit-server/index.js +3 -2
  557. package/persisters/persister-partykit-server/with-schemas/index.js +3 -2
  558. package/persisters/persister-pglite/index.js +999 -0
  559. package/persisters/persister-pglite/with-schemas/index.js +999 -0
  560. package/persisters/persister-postgres/index.js +110 -75
  561. package/persisters/persister-postgres/with-schemas/index.js +110 -75
  562. package/persisters/persister-powersync/index.js +113 -74
  563. package/persisters/persister-powersync/with-schemas/index.js +113 -74
  564. package/persisters/persister-remote/index.js +3 -2
  565. package/persisters/persister-remote/with-schemas/index.js +3 -2
  566. package/persisters/persister-sqlite-wasm/index.js +109 -72
  567. package/persisters/persister-sqlite-wasm/with-schemas/index.js +109 -72
  568. package/persisters/persister-sqlite3/index.js +109 -72
  569. package/persisters/persister-sqlite3/with-schemas/index.js +109 -72
  570. package/persisters/with-schemas/index.js +837 -1
  571. package/readme.md +2 -2
  572. package/releases.md +6 -2
  573. package/store/index.js +3 -2
  574. package/store/with-schemas/index.js +3 -2
  575. package/synchronizers/index.js +1 -0
  576. package/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  577. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  578. package/synchronizers/synchronizer-local/index.js +1 -0
  579. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  580. package/synchronizers/synchronizer-ws-client/index.js +5 -2
  581. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +5 -2
  582. package/synchronizers/synchronizer-ws-server/index.js +13 -10
  583. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +13 -10
  584. package/synchronizers/with-schemas/index.js +1 -0
  585. package/ui-react-inspector/index.js +5 -4
  586. package/ui-react-inspector/with-schemas/index.js +5 -4
  587. package/umd/es6/index.js +57 -579
  588. package/umd/es6/mergeable-store/index.js +12 -8
  589. package/umd/es6/mergeable-store/with-schemas/index.js +12 -8
  590. package/umd/es6/min/index.js +1 -1
  591. package/umd/es6/min/index.js.gz +0 -0
  592. package/umd/es6/min/mergeable-store/index.js +1 -1
  593. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  594. package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
  595. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  596. package/umd/es6/min/persisters/index.js +1 -1
  597. package/umd/es6/min/persisters/index.js.gz +0 -0
  598. package/umd/es6/min/persisters/persister-browser/index.js +1 -1
  599. package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
  600. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  601. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  602. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  603. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  604. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  605. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  606. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  607. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  608. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  609. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  610. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  611. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  612. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  613. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  614. package/umd/es6/min/persisters/persister-file/index.js +1 -1
  615. package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
  616. package/umd/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  617. package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  618. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  619. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  620. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  621. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  622. package/umd/es6/min/persisters/persister-partykit-client/index.js +1 -1
  623. package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  624. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  625. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  626. package/umd/es6/min/persisters/persister-partykit-server/index.js +1 -1
  627. package/umd/es6/min/persisters/persister-partykit-server/index.js.gz +0 -0
  628. package/umd/es6/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  629. package/umd/es6/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  630. package/umd/es6/min/persisters/persister-pglite/index.js +1 -0
  631. package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  632. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -0
  633. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  634. package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
  635. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  636. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  637. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  638. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  639. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  640. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  641. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  642. package/umd/es6/min/persisters/persister-remote/index.js +1 -1
  643. package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
  644. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  645. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  646. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  647. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  648. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  649. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  650. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  651. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  652. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  653. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  654. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  655. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  656. package/umd/es6/min/store/index.js +1 -1
  657. package/umd/es6/min/store/index.js.gz +0 -0
  658. package/umd/es6/min/store/with-schemas/index.js +1 -1
  659. package/umd/es6/min/store/with-schemas/index.js.gz +0 -0
  660. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  661. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  662. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  663. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  664. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  665. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  666. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  667. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  668. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  669. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  670. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  671. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  672. package/umd/es6/min/with-schemas/index.js +1 -1
  673. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  674. package/umd/es6/persisters/index.js +1106 -10
  675. package/umd/es6/persisters/persister-browser/index.js +3 -4
  676. package/umd/es6/persisters/persister-browser/with-schemas/index.js +3 -4
  677. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +123 -108
  678. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +123 -108
  679. package/umd/es6/persisters/persister-electric-sql/index.js +121 -106
  680. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +121 -106
  681. package/umd/es6/persisters/persister-expo-sqlite/index.js +123 -108
  682. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +123 -108
  683. package/umd/es6/persisters/persister-file/index.js +4 -4
  684. package/umd/es6/persisters/persister-file/with-schemas/index.js +4 -4
  685. package/umd/es6/persisters/persister-indexed-db/index.js +2 -2
  686. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  687. package/umd/es6/persisters/persister-libsql/index.js +121 -106
  688. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +121 -106
  689. package/umd/es6/persisters/persister-partykit-client/index.js +3 -2
  690. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +3 -2
  691. package/umd/es6/persisters/persister-partykit-server/index.js +3 -2
  692. package/umd/es6/persisters/persister-partykit-server/with-schemas/index.js +3 -2
  693. package/umd/es6/persisters/persister-pglite/index.js +1348 -0
  694. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +1348 -0
  695. package/umd/es6/persisters/persister-postgres/index.js +129 -113
  696. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +129 -113
  697. package/umd/es6/persisters/persister-powersync/index.js +125 -110
  698. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +125 -110
  699. package/umd/es6/persisters/persister-remote/index.js +3 -2
  700. package/umd/es6/persisters/persister-remote/with-schemas/index.js +3 -2
  701. package/umd/es6/persisters/persister-sqlite-wasm/index.js +123 -108
  702. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +123 -108
  703. package/umd/es6/persisters/persister-sqlite3/index.js +123 -108
  704. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +123 -108
  705. package/umd/es6/persisters/with-schemas/index.js +1106 -10
  706. package/umd/es6/store/index.js +3 -2
  707. package/umd/es6/store/with-schemas/index.js +3 -2
  708. package/umd/es6/synchronizers/index.js +9 -6
  709. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  710. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  711. package/umd/es6/synchronizers/synchronizer-local/index.js +9 -6
  712. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  713. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +13 -10
  714. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +13 -10
  715. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +21 -18
  716. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +21 -18
  717. package/umd/es6/synchronizers/with-schemas/index.js +9 -6
  718. package/umd/es6/ui-react-inspector/index.js +5 -6
  719. package/umd/es6/ui-react-inspector/with-schemas/index.js +5 -6
  720. package/umd/es6/with-schemas/index.js +57 -579
  721. package/umd/index.js +48 -456
  722. package/umd/mergeable-store/index.js +4 -2
  723. package/umd/mergeable-store/with-schemas/index.js +4 -2
  724. package/umd/min/index.js +1 -1
  725. package/umd/min/index.js.gz +0 -0
  726. package/umd/min/mergeable-store/index.js +1 -1
  727. package/umd/min/mergeable-store/index.js.gz +0 -0
  728. package/umd/min/mergeable-store/with-schemas/index.js +1 -1
  729. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  730. package/umd/min/persisters/index.js +1 -1
  731. package/umd/min/persisters/index.js.gz +0 -0
  732. package/umd/min/persisters/persister-browser/index.js +1 -1
  733. package/umd/min/persisters/persister-browser/index.js.gz +0 -0
  734. package/umd/min/persisters/persister-browser/with-schemas/index.js +1 -1
  735. package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  736. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  737. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  738. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  739. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  740. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  741. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  742. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  743. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  744. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  745. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  746. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  747. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  748. package/umd/min/persisters/persister-file/index.js +1 -1
  749. package/umd/min/persisters/persister-file/index.js.gz +0 -0
  750. package/umd/min/persisters/persister-file/with-schemas/index.js +1 -1
  751. package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  752. package/umd/min/persisters/persister-libsql/index.js +1 -1
  753. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  754. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  755. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  756. package/umd/min/persisters/persister-partykit-client/index.js +1 -1
  757. package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
  758. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  759. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  760. package/umd/min/persisters/persister-partykit-server/index.js +1 -1
  761. package/umd/min/persisters/persister-partykit-server/index.js.gz +0 -0
  762. package/umd/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  763. package/umd/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  764. package/umd/min/persisters/persister-pglite/index.js +1 -0
  765. package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
  766. package/umd/min/persisters/persister-pglite/with-schemas/index.js +1 -0
  767. package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  768. package/umd/min/persisters/persister-postgres/index.js +1 -1
  769. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  770. package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  771. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  772. package/umd/min/persisters/persister-powersync/index.js +1 -1
  773. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  774. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  775. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  776. package/umd/min/persisters/persister-remote/index.js +1 -1
  777. package/umd/min/persisters/persister-remote/index.js.gz +0 -0
  778. package/umd/min/persisters/persister-remote/with-schemas/index.js +1 -1
  779. package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  780. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  781. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  782. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  783. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  784. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  785. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  786. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  787. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  788. package/umd/min/persisters/with-schemas/index.js +1 -1
  789. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  790. package/umd/min/store/index.js +1 -1
  791. package/umd/min/store/index.js.gz +0 -0
  792. package/umd/min/store/with-schemas/index.js +1 -1
  793. package/umd/min/store/with-schemas/index.js.gz +0 -0
  794. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  795. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  796. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  797. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  798. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  799. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  800. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  801. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  802. package/umd/min/ui-react-inspector/index.js +1 -1
  803. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  804. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  805. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  806. package/umd/min/with-schemas/index.js +1 -1
  807. package/umd/min/with-schemas/index.js.gz +0 -0
  808. package/umd/persisters/index.js +835 -0
  809. package/umd/persisters/persister-browser/index.js +3 -4
  810. package/umd/persisters/persister-browser/with-schemas/index.js +3 -4
  811. package/umd/persisters/persister-cr-sqlite-wasm/index.js +108 -73
  812. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +108 -73
  813. package/umd/persisters/persister-electric-sql/index.js +107 -72
  814. package/umd/persisters/persister-electric-sql/with-schemas/index.js +107 -72
  815. package/umd/persisters/persister-expo-sqlite/index.js +108 -73
  816. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +108 -73
  817. package/umd/persisters/persister-file/index.js +4 -4
  818. package/umd/persisters/persister-file/with-schemas/index.js +4 -4
  819. package/umd/persisters/persister-indexed-db/index.js +2 -2
  820. package/umd/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  821. package/umd/persisters/persister-libsql/index.js +107 -72
  822. package/umd/persisters/persister-libsql/with-schemas/index.js +107 -72
  823. package/umd/persisters/persister-partykit-client/index.js +3 -2
  824. package/umd/persisters/persister-partykit-client/with-schemas/index.js +3 -2
  825. package/umd/persisters/persister-partykit-server/index.js +3 -2
  826. package/umd/persisters/persister-partykit-server/with-schemas/index.js +3 -2
  827. package/umd/persisters/persister-pglite/index.js +1017 -0
  828. package/umd/persisters/persister-pglite/with-schemas/index.js +1017 -0
  829. package/umd/persisters/persister-postgres/index.js +110 -77
  830. package/umd/persisters/persister-postgres/with-schemas/index.js +110 -77
  831. package/umd/persisters/persister-powersync/index.js +111 -76
  832. package/umd/persisters/persister-powersync/with-schemas/index.js +111 -76
  833. package/umd/persisters/persister-remote/index.js +3 -2
  834. package/umd/persisters/persister-remote/with-schemas/index.js +3 -2
  835. package/umd/persisters/persister-sqlite-wasm/index.js +113 -74
  836. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +113 -74
  837. package/umd/persisters/persister-sqlite3/index.js +109 -74
  838. package/umd/persisters/persister-sqlite3/with-schemas/index.js +109 -74
  839. package/umd/persisters/with-schemas/index.js +835 -0
  840. package/umd/store/index.js +3 -2
  841. package/umd/store/with-schemas/index.js +3 -2
  842. package/umd/synchronizers/index.js +1 -0
  843. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  844. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  845. package/umd/synchronizers/synchronizer-local/index.js +1 -0
  846. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  847. package/umd/synchronizers/synchronizer-ws-client/index.js +5 -4
  848. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +5 -4
  849. package/umd/synchronizers/synchronizer-ws-server/index.js +13 -12
  850. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +13 -12
  851. package/umd/synchronizers/with-schemas/index.js +1 -0
  852. package/umd/ui-react-inspector/index.js +5 -6
  853. package/umd/ui-react-inspector/with-schemas/index.js +5 -6
  854. package/umd/with-schemas/index.js +48 -456
  855. package/with-schemas/index.js +48 -449
@@ -1,20 +1,69 @@
1
1
  'use strict';
2
2
 
3
+ const getTypeOf = (thing) => typeof thing;
4
+ const TINYBASE = 'tinybase';
5
+ const EMPTY_STRING = '';
6
+ const COMMA = ',';
7
+ const STRING = getTypeOf(EMPTY_STRING);
8
+ const UNDEFINED = '\uFFFC';
9
+ const strMatch = (str, regex) => (str == null ? void 0 : str.match(regex));
10
+
11
+ var __async$7 = (__this, __arguments, generator) => {
12
+ return new Promise((resolve, reject) => {
13
+ var fulfilled = (value) => {
14
+ try {
15
+ step(generator.next(value));
16
+ } catch (e) {
17
+ reject(e);
18
+ }
19
+ };
20
+ var rejected = (value) => {
21
+ try {
22
+ step(generator.throw(value));
23
+ } catch (e) {
24
+ reject(e);
25
+ }
26
+ };
27
+ var step = (x) =>
28
+ x.done
29
+ ? resolve(x.value)
30
+ : Promise.resolve(x.value).then(fulfilled, rejected);
31
+ step((generator = generator.apply(__this, __arguments)).next());
32
+ });
33
+ };
34
+ const promise = Promise;
35
+ const startInterval = (callback, sec, immediate) => {
36
+ return setInterval(callback, sec * 1e3);
37
+ };
38
+ const stopInterval = clearInterval;
3
39
  const isUndefined = (thing) => thing == void 0;
4
40
  const ifNotUndefined = (value, then, otherwise) =>
5
41
  isUndefined(value) ? (otherwise == null ? void 0 : otherwise()) : then(value);
42
+ const isString = (thing) => getTypeOf(thing) == STRING;
6
43
  const isArray = (thing) => Array.isArray(thing);
44
+ const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
7
45
  const size = (arrayOrString) => arrayOrString.length;
46
+ const promiseAll = (promises) =>
47
+ __async$7(void 0, null, function* () {
48
+ return promise.all(promises);
49
+ });
8
50
  const errorNew = (message) => {
9
51
  throw new Error(message);
10
52
  };
11
53
 
54
+ const arrayNew = (size2, cb) =>
55
+ arrayMap(new Array(size2).fill(0), (_, index) => cb(index));
56
+ const arrayJoin = (array, sep = EMPTY_STRING) => array.join(sep);
57
+ const arrayMap = (array, cb) => array.map(cb);
58
+ const arrayIsEmpty = (array) => size(array) == 0;
59
+ const arrayFilter = (array, cb) => array.filter(cb);
12
60
  const arrayClear = (array, to) => array.splice(0, to);
13
61
  const arrayPush = (array, ...values) => array.push(...values);
14
62
  const arrayShift = (array) => array.shift();
15
63
 
16
64
  const object = Object;
17
65
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
66
+ const objEntries = object.entries;
18
67
  const isObject = (obj) =>
19
68
  !isUndefined(obj) &&
20
69
  ifNotUndefined(
@@ -28,6 +77,18 @@ const isObject = (obj) =>
28
77
  );
29
78
  const objIds = object.keys;
30
79
  const objFreeze = object.freeze;
80
+ const objNew = (entries = []) => object.fromEntries(entries);
81
+ const objMerge = (...objs) => object.assign({}, ...objs);
82
+ const objHas = (obj, id) => id in obj;
83
+ const objDel = (obj, id) => {
84
+ delete obj[id];
85
+ return obj;
86
+ };
87
+ const objToArray = (obj, cb) =>
88
+ arrayMap(objEntries(obj), ([id, value]) => cb(value, id));
89
+ const objMap = (obj, cb) =>
90
+ objNew(objToArray(obj, (value, id) => [id, cb(value, id)]));
91
+ const objValues = (obj) => object.values(obj);
31
92
  const objSize = (obj) => size(objIds(obj));
32
93
  const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
33
94
 
@@ -37,11 +98,23 @@ const collHas = (coll, keyOrValue) => {
37
98
  ? _a
38
99
  : false;
39
100
  };
101
+ const collValues = (coll) => {
102
+ var _a;
103
+ return [...((_a = coll == null ? void 0 : coll.values()) != null ? _a : [])];
104
+ };
105
+ const collClear = (coll) => coll.clear();
40
106
  const collDel = (coll, keyOrValue) =>
41
107
  coll == null ? void 0 : coll.delete(keyOrValue);
42
108
 
43
109
  const mapNew = (entries) => new Map(entries);
44
110
  const mapGet = (map, key) => (map == null ? void 0 : map.get(key));
111
+ const mapMap = (coll, cb) => {
112
+ var _a;
113
+ return arrayMap(
114
+ [...((_a = coll == null ? void 0 : coll.entries()) != null ? _a : [])],
115
+ ([key, value]) => cb(value, key),
116
+ );
117
+ };
45
118
  const mapSet = (map, key, value) =>
46
119
  isUndefined(value)
47
120
  ? (collDel(map, key), map)
@@ -77,7 +150,7 @@ var __spreadValues = (a, b) => {
77
150
  }
78
151
  return a;
79
152
  };
80
- var __async = (__this, __arguments, generator) => {
153
+ var __async$6 = (__this, __arguments, generator) => {
81
154
  return new Promise((resolve, reject) => {
82
155
  var fulfilled = (value) => {
83
156
  try {
@@ -154,7 +227,7 @@ const createCustomPersister = (
154
227
  setDefaultContent,
155
228
  ] = getStoreFunctions(persist, store);
156
229
  const run = () =>
157
- __async(void 0, null, function* () {
230
+ __async$6(void 0, null, function* () {
158
231
  /* istanbul ignore else */
159
232
  if (!mapGet(scheduleRunning, scheduleId)) {
160
233
  mapSet(scheduleRunning, scheduleId, 1);
@@ -184,13 +257,13 @@ const createCustomPersister = (
184
257
  : store.setContent)(contentOrChanges);
185
258
  };
186
259
  const load = (initialContent) =>
187
- __async(void 0, null, function* () {
260
+ __async$6(void 0, null, function* () {
188
261
  /* istanbul ignore else */
189
262
  if (loadSave != 2) {
190
263
  loadSave = 1;
191
264
  loads++;
192
265
  yield schedule(() =>
193
- __async(void 0, null, function* () {
266
+ __async$6(void 0, null, function* () {
194
267
  try {
195
268
  const content = yield getPersisted();
196
269
  if (isArray(content)) {
@@ -211,11 +284,11 @@ const createCustomPersister = (
211
284
  return persister;
212
285
  });
213
286
  const startAutoLoad = (initialContent) =>
214
- __async(void 0, null, function* () {
287
+ __async$6(void 0, null, function* () {
215
288
  yield stopAutoLoad().load(initialContent);
216
289
  try {
217
290
  autoLoadHandle = yield addPersisterListener((content, changes) =>
218
- __async(void 0, null, function* () {
291
+ __async$6(void 0, null, function* () {
219
292
  if (changes || content) {
220
293
  /* istanbul ignore else */
221
294
  if (loadSave != 2) {
@@ -244,13 +317,13 @@ const createCustomPersister = (
244
317
  };
245
318
  const isAutoLoading = () => !isUndefined(autoLoadHandle);
246
319
  const save = (changes) =>
247
- __async(void 0, null, function* () {
320
+ __async$6(void 0, null, function* () {
248
321
  /* istanbul ignore else */
249
322
  if (loadSave != 1) {
250
323
  loadSave = 2;
251
324
  saves++;
252
325
  yield schedule(() =>
253
- __async(void 0, null, function* () {
326
+ __async$6(void 0, null, function* () {
254
327
  try {
255
328
  yield setPersisted(getContent, changes);
256
329
  } catch (error) {
@@ -264,7 +337,7 @@ const createCustomPersister = (
264
337
  return persister;
265
338
  });
266
339
  const startAutoSave = () =>
267
- __async(void 0, null, function* () {
340
+ __async$6(void 0, null, function* () {
268
341
  yield stopAutoSave().save();
269
342
  autoSaveListenerId = store.addDidFinishTransactionListener(() => {
270
343
  const changes = getChanges();
@@ -281,7 +354,7 @@ const createCustomPersister = (
281
354
  };
282
355
  const isAutoSaving = () => !isUndefined(autoSaveListenerId);
283
356
  const schedule = (...actions) =>
284
- __async(void 0, null, function* () {
357
+ __async$6(void 0, null, function* () {
285
358
  arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
286
359
  yield run();
287
360
  return persister;
@@ -312,5 +385,1017 @@ const createCustomPersister = (
312
385
  return objFreeze(persister);
313
386
  };
314
387
 
388
+ var __async$5 = (__this, __arguments, generator) => {
389
+ return new Promise((resolve, reject) => {
390
+ var fulfilled = (value) => {
391
+ try {
392
+ step(generator.next(value));
393
+ } catch (e) {
394
+ reject(e);
395
+ }
396
+ };
397
+ var rejected = (value) => {
398
+ try {
399
+ step(generator.throw(value));
400
+ } catch (e) {
401
+ reject(e);
402
+ }
403
+ };
404
+ var step = (x) =>
405
+ x.done
406
+ ? resolve(x.value)
407
+ : Promise.resolve(x.value).then(fulfilled, rejected);
408
+ step((generator = generator.apply(__this, __arguments)).next());
409
+ });
410
+ };
411
+ const SINGLE_ROW_ID = '_';
412
+ const DEFAULT_ROW_ID_COLUMN_NAME = '_id';
413
+ const SELECT = 'SELECT';
414
+ const WHERE = 'WHERE';
415
+ const TABLE = 'TABLE';
416
+ const ALTER_TABLE = 'ALTER ' + TABLE;
417
+ const DELETE_FROM = 'DELETE FROM';
418
+ const SELECT_STAR_FROM = SELECT + '*FROM';
419
+ const PRAGMA = 'pragma_';
420
+ const DATA_VERSION = 'data_version';
421
+ const SCHEMA_VERSION = 'schema_version';
422
+ const FROM = 'FROM ';
423
+ const PRAGMA_TABLE = 'pragma_table_';
424
+ const getWrappedCommand = (executeCommand, onSqlCommand) =>
425
+ onSqlCommand
426
+ ? (sql, params) =>
427
+ __async$5(void 0, null, function* () {
428
+ onSqlCommand(sql, params);
429
+ return yield executeCommand(sql, params);
430
+ })
431
+ : executeCommand;
432
+ const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
433
+ const getPlaceholders = (array) =>
434
+ arrayJoin(
435
+ arrayMap(array, (_, index) => '$' + (index + 1)),
436
+ COMMA,
437
+ );
438
+
439
+ const jsonString = JSON.stringify;
440
+ const jsonParse = JSON.parse;
441
+ const jsonStringWithUndefined = (obj) =>
442
+ jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
443
+ const jsonParseWithUndefined = (str) =>
444
+ jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
445
+
446
+ const setNew = (entryOrEntries) =>
447
+ new Set(
448
+ isArray(entryOrEntries) || isUndefined(entryOrEntries)
449
+ ? entryOrEntries
450
+ : [entryOrEntries],
451
+ );
452
+ const setAdd = (set, value) => (set == null ? void 0 : set.add(value));
453
+
454
+ var __async$4 = (__this, __arguments, generator) => {
455
+ return new Promise((resolve, reject) => {
456
+ var fulfilled = (value) => {
457
+ try {
458
+ step(generator.next(value));
459
+ } catch (e) {
460
+ reject(e);
461
+ }
462
+ };
463
+ var rejected = (value) => {
464
+ try {
465
+ step(generator.throw(value));
466
+ } catch (e) {
467
+ reject(e);
468
+ }
469
+ };
470
+ var step = (x) =>
471
+ x.done
472
+ ? resolve(x.value)
473
+ : Promise.resolve(x.value).then(fulfilled, rejected);
474
+ step((generator = generator.apply(__this, __arguments)).next());
475
+ });
476
+ };
477
+ const getCommandFunctions = (
478
+ databaseExecuteCommand,
479
+ managedTableNames,
480
+ querySchema,
481
+ onIgnoredError,
482
+ columnType,
483
+ orReplace,
484
+ encode,
485
+ decode,
486
+ ) => {
487
+ const schemaMap = mapNew();
488
+ const canSelect = (tableName, rowIdColumnName) =>
489
+ collHas(mapGet(schemaMap, tableName), rowIdColumnName);
490
+ const refreshSchema = () =>
491
+ __async$4(void 0, null, function* () {
492
+ collClear(schemaMap);
493
+ arrayMap(
494
+ yield querySchema(databaseExecuteCommand, managedTableNames),
495
+ ({tn, cn}) => setAdd(mapEnsure(schemaMap, tn, setNew), cn),
496
+ );
497
+ });
498
+ const loadTable = (tableName, rowIdColumnName) =>
499
+ __async$4(void 0, null, function* () {
500
+ return canSelect(tableName, rowIdColumnName)
501
+ ? objNew(
502
+ arrayFilter(
503
+ arrayMap(
504
+ yield databaseExecuteCommand(
505
+ SELECT_STAR_FROM + escapeId(tableName),
506
+ ),
507
+ (row) => [
508
+ row[rowIdColumnName],
509
+ decode
510
+ ? objMap(objDel(row, rowIdColumnName), decode)
511
+ : objDel(row, rowIdColumnName),
512
+ ],
513
+ ),
514
+ ([rowId, row]) => !isUndefined(rowId) && !objIsEmpty(row),
515
+ ),
516
+ )
517
+ : {};
518
+ });
519
+ const saveTable = (
520
+ tableName,
521
+ rowIdColumnName,
522
+ content,
523
+ deleteEmptyColumns,
524
+ deleteEmptyTable,
525
+ partial = false,
526
+ ) =>
527
+ __async$4(void 0, null, function* () {
528
+ const tableCellOrValueIds = setNew();
529
+ objToArray(content != null ? content : {}, (contentRow) =>
530
+ arrayMap(
531
+ objIds(contentRow != null ? contentRow : {}),
532
+ (cellOrValueId) => setAdd(tableCellOrValueIds, cellOrValueId),
533
+ ),
534
+ );
535
+ const tableColumnNames = collValues(tableCellOrValueIds);
536
+ if (
537
+ !partial &&
538
+ deleteEmptyTable &&
539
+ arrayIsEmpty(tableColumnNames) &&
540
+ collHas(schemaMap, tableName)
541
+ ) {
542
+ yield databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
543
+ mapSet(schemaMap, tableName);
544
+ return;
545
+ }
546
+ const tableSchemaColumns = mapGet(schemaMap, tableName);
547
+ const currentColumnNames = setNew(collValues(tableSchemaColumns));
548
+ if (!arrayIsEmpty(tableColumnNames)) {
549
+ if (!collHas(schemaMap, tableName)) {
550
+ yield databaseExecuteCommand(
551
+ 'CREATE ' +
552
+ TABLE +
553
+ escapeId(tableName) +
554
+ `(${escapeId(rowIdColumnName)}${columnType} PRIMARY KEY${arrayJoin(
555
+ arrayMap(
556
+ tableColumnNames,
557
+ (columnName) => COMMA + escapeId(columnName) + columnType,
558
+ ),
559
+ )});`,
560
+ );
561
+ mapSet(
562
+ schemaMap,
563
+ tableName,
564
+ setNew([rowIdColumnName, ...tableColumnNames]),
565
+ );
566
+ } else {
567
+ yield promiseAll(
568
+ arrayMap(
569
+ [rowIdColumnName, ...tableColumnNames],
570
+ (columnName, index) =>
571
+ __async$4(void 0, null, function* () {
572
+ if (!collDel(currentColumnNames, columnName)) {
573
+ yield databaseExecuteCommand(
574
+ ALTER_TABLE +
575
+ escapeId(tableName) +
576
+ 'ADD' +
577
+ escapeId(columnName) +
578
+ columnType,
579
+ );
580
+ if (index == 0) {
581
+ yield databaseExecuteCommand(
582
+ 'CREATE UNIQUE INDEX pk ON ' +
583
+ escapeId(tableName) +
584
+ `(${escapeId(rowIdColumnName)})`,
585
+ );
586
+ }
587
+ setAdd(tableSchemaColumns, columnName);
588
+ }
589
+ }),
590
+ ),
591
+ );
592
+ }
593
+ }
594
+ yield promiseAll([
595
+ ...(!partial && deleteEmptyColumns
596
+ ? arrayMap(collValues(currentColumnNames), (columnName) =>
597
+ __async$4(void 0, null, function* () {
598
+ if (columnName != rowIdColumnName) {
599
+ yield databaseExecuteCommand(
600
+ ALTER_TABLE +
601
+ escapeId(tableName) +
602
+ 'DROP' +
603
+ escapeId(columnName),
604
+ );
605
+ collDel(tableSchemaColumns, columnName);
606
+ }
607
+ }),
608
+ )
609
+ : []),
610
+ ]);
611
+ if (partial) {
612
+ if (isUndefined(content)) {
613
+ yield databaseExecuteCommand(
614
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
615
+ );
616
+ } else {
617
+ yield promiseAll(
618
+ objToArray(content, (row, rowId) =>
619
+ __async$4(void 0, null, function* () {
620
+ if (isUndefined(row)) {
621
+ yield databaseExecuteCommand(
622
+ DELETE_FROM +
623
+ escapeId(tableName) +
624
+ WHERE +
625
+ escapeId(rowIdColumnName) +
626
+ '=$1',
627
+ [rowId],
628
+ );
629
+ } else if (!arrayIsEmpty(tableColumnNames)) {
630
+ yield upsert(
631
+ databaseExecuteCommand,
632
+ tableName,
633
+ rowIdColumnName,
634
+ objIds(row),
635
+ [
636
+ rowId,
637
+ ...(encode
638
+ ? arrayMap(objValues(row), encode)
639
+ : objValues(row)),
640
+ ],
641
+ orReplace,
642
+ );
643
+ }
644
+ }),
645
+ ),
646
+ );
647
+ }
648
+ } else {
649
+ if (!arrayIsEmpty(tableColumnNames)) {
650
+ const changingColumnNames = arrayFilter(
651
+ collValues(mapGet(schemaMap, tableName)),
652
+ (columnName) => columnName != rowIdColumnName,
653
+ );
654
+ const params = [];
655
+ const deleteRowIds = [];
656
+ objToArray(content != null ? content : {}, (row, rowId) => {
657
+ arrayPush(
658
+ params,
659
+ rowId,
660
+ ...arrayMap(changingColumnNames, (cellId) =>
661
+ encode
662
+ ? encode(row == null ? void 0 : row[cellId])
663
+ : row == null
664
+ ? void 0
665
+ : row[cellId],
666
+ ),
667
+ );
668
+ arrayPush(deleteRowIds, rowId);
669
+ });
670
+ yield upsert(
671
+ databaseExecuteCommand,
672
+ tableName,
673
+ rowIdColumnName,
674
+ changingColumnNames,
675
+ params,
676
+ orReplace,
677
+ );
678
+ yield databaseExecuteCommand(
679
+ DELETE_FROM +
680
+ escapeId(tableName) +
681
+ WHERE +
682
+ escapeId(rowIdColumnName) +
683
+ `NOT IN(${getPlaceholders(deleteRowIds)})`,
684
+ deleteRowIds,
685
+ );
686
+ } else if (collHas(schemaMap, tableName)) {
687
+ yield databaseExecuteCommand(
688
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
689
+ );
690
+ }
691
+ }
692
+ });
693
+ const transaction = (actions) =>
694
+ __async$4(void 0, null, function* () {
695
+ let result;
696
+ yield databaseExecuteCommand('BEGIN');
697
+ try {
698
+ result = yield actions();
699
+ } catch (error) {
700
+ onIgnoredError == null ? void 0 : onIgnoredError(error);
701
+ }
702
+ yield databaseExecuteCommand('END');
703
+ return result;
704
+ });
705
+ return [refreshSchema, loadTable, saveTable, transaction];
706
+ };
707
+ const upsert = (
708
+ executeCommand,
709
+ tableName,
710
+ rowIdColumnName,
711
+ changingColumnNames,
712
+ params,
713
+ orReplace = 0,
714
+ ) =>
715
+ __async$4(void 0, null, function* () {
716
+ return yield executeCommand(
717
+ 'INSERT ' +
718
+ (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
719
+ 'INTO' +
720
+ escapeId(tableName) +
721
+ '(' +
722
+ escapeId(rowIdColumnName) +
723
+ arrayJoin(
724
+ arrayMap(
725
+ changingColumnNames,
726
+ (columnName) => COMMA + escapeId(columnName),
727
+ ),
728
+ ) +
729
+ ')VALUES' +
730
+ getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
731
+ (orReplace
732
+ ? EMPTY_STRING
733
+ : 'ON CONFLICT(' +
734
+ escapeId(rowIdColumnName) +
735
+ ')DO UPDATE SET' +
736
+ arrayJoin(
737
+ arrayMap(
738
+ changingColumnNames,
739
+ (columnName) =>
740
+ escapeId(columnName) + '=excluded.' + escapeId(columnName),
741
+ ),
742
+ COMMA,
743
+ )),
744
+ arrayMap(params, (param) => (param != null ? param : null)),
745
+ );
746
+ });
747
+ const getUpsertPlaceholders = (array, columnCount) =>
748
+ arrayJoin(
749
+ arrayNew(
750
+ size(array) / columnCount,
751
+ (row) =>
752
+ '(' +
753
+ arrayJoin(
754
+ arrayNew(
755
+ columnCount,
756
+ (column) => '$' + (row * columnCount + column + 1),
757
+ ),
758
+ COMMA,
759
+ ) +
760
+ ')',
761
+ ),
762
+ COMMA,
763
+ );
764
+
765
+ var __async$3 = (__this, __arguments, generator) => {
766
+ return new Promise((resolve, reject) => {
767
+ var fulfilled = (value) => {
768
+ try {
769
+ step(generator.next(value));
770
+ } catch (e) {
771
+ reject(e);
772
+ }
773
+ };
774
+ var rejected = (value) => {
775
+ try {
776
+ step(generator.throw(value));
777
+ } catch (e) {
778
+ reject(e);
779
+ }
780
+ };
781
+ var step = (x) =>
782
+ x.done
783
+ ? resolve(x.value)
784
+ : Promise.resolve(x.value).then(fulfilled, rejected);
785
+ step((generator = generator.apply(__this, __arguments)).next());
786
+ });
787
+ };
788
+ const createJsonPersister = (
789
+ store,
790
+ executeCommand,
791
+ addPersisterListener,
792
+ delPersisterListener,
793
+ onIgnoredError,
794
+ destroyImpl,
795
+ persist,
796
+ [storeTableName, storeIdColumnName, storeColumnName],
797
+ managedTableNames,
798
+ querySchema,
799
+ thing,
800
+ getThing,
801
+ columnType,
802
+ orReplace,
803
+ ) => {
804
+ const [refreshSchema, loadTable, saveTable, transaction] =
805
+ getCommandFunctions(
806
+ executeCommand,
807
+ managedTableNames,
808
+ querySchema,
809
+ onIgnoredError,
810
+ columnType,
811
+ orReplace,
812
+ );
813
+ const getPersisted = () =>
814
+ __async$3(void 0, null, function* () {
815
+ return yield transaction(() =>
816
+ __async$3(void 0, null, function* () {
817
+ var _a, _b;
818
+ yield refreshSchema();
819
+ return jsonParseWithUndefined(
820
+ (_b =
821
+ (_a = (yield loadTable(storeTableName, storeIdColumnName))[
822
+ SINGLE_ROW_ID
823
+ ]) == null
824
+ ? void 0
825
+ : _a[storeColumnName]) != null
826
+ ? _b
827
+ : 'null',
828
+ );
829
+ }),
830
+ );
831
+ });
832
+ const setPersisted = (getContent) =>
833
+ __async$3(void 0, null, function* () {
834
+ return yield transaction(() =>
835
+ __async$3(void 0, null, function* () {
836
+ var _a;
837
+ yield refreshSchema();
838
+ yield saveTable(
839
+ storeTableName,
840
+ storeIdColumnName,
841
+ {
842
+ [SINGLE_ROW_ID]: {
843
+ [storeColumnName]: jsonStringWithUndefined(
844
+ (_a = getContent()) != null ? _a : null,
845
+ ),
846
+ },
847
+ },
848
+ true,
849
+ true,
850
+ );
851
+ }),
852
+ );
853
+ });
854
+ const destroy = () => {
855
+ persister.stopAutoLoad().stopAutoSave();
856
+ destroyImpl();
857
+ return persister;
858
+ };
859
+ const persister = createCustomPersister(
860
+ store,
861
+ getPersisted,
862
+ setPersisted,
863
+ addPersisterListener,
864
+ delPersisterListener,
865
+ onIgnoredError,
866
+ persist,
867
+ {[getThing]: () => thing, destroy},
868
+ thing,
869
+ );
870
+ return persister;
871
+ };
872
+
873
+ var __async$2 = (__this, __arguments, generator) => {
874
+ return new Promise((resolve, reject) => {
875
+ var fulfilled = (value) => {
876
+ try {
877
+ step(generator.next(value));
878
+ } catch (e) {
879
+ reject(e);
880
+ }
881
+ };
882
+ var rejected = (value) => {
883
+ try {
884
+ step(generator.throw(value));
885
+ } catch (e) {
886
+ reject(e);
887
+ }
888
+ };
889
+ var step = (x) =>
890
+ x.done
891
+ ? resolve(x.value)
892
+ : Promise.resolve(x.value).then(fulfilled, rejected);
893
+ step((generator = generator.apply(__this, __arguments)).next());
894
+ });
895
+ };
896
+ const createTabularPersister = (
897
+ store,
898
+ executeCommand,
899
+ addPersisterListener,
900
+ delPersisterListener,
901
+ onIgnoredError,
902
+ destroyImpl,
903
+ persist,
904
+ [
905
+ tablesLoadConfig,
906
+ tablesSaveConfig,
907
+ [valuesLoad, valuesSave, valuesTableName],
908
+ ],
909
+ managedTableNames,
910
+ querySchema,
911
+ thing,
912
+ getThing,
913
+ columnType,
914
+ orReplace,
915
+ encode,
916
+ decode,
917
+ ) => {
918
+ const [refreshSchema, loadTable, saveTable, transaction] =
919
+ getCommandFunctions(
920
+ executeCommand,
921
+ managedTableNames,
922
+ querySchema,
923
+ onIgnoredError,
924
+ columnType,
925
+ orReplace,
926
+ encode,
927
+ decode,
928
+ );
929
+ const saveTables = (tables, partial) =>
930
+ __async$2(void 0, null, function* () {
931
+ return yield promiseAll(
932
+ mapMap(tablesSaveConfig, (_0, _1) =>
933
+ __async$2(
934
+ void 0,
935
+ [_0, _1],
936
+ function* (
937
+ [
938
+ tableName,
939
+ rowIdColumnName,
940
+ deleteEmptyColumns,
941
+ deleteEmptyTable,
942
+ ],
943
+ tableId,
944
+ ) {
945
+ if (!partial || objHas(tables, tableId)) {
946
+ yield saveTable(
947
+ tableName,
948
+ rowIdColumnName,
949
+ tables[tableId],
950
+ deleteEmptyColumns,
951
+ deleteEmptyTable,
952
+ partial,
953
+ );
954
+ }
955
+ },
956
+ ),
957
+ ),
958
+ );
959
+ });
960
+ const saveValues = (values, partial) =>
961
+ __async$2(void 0, null, function* () {
962
+ return valuesSave
963
+ ? yield saveTable(
964
+ valuesTableName,
965
+ DEFAULT_ROW_ID_COLUMN_NAME,
966
+ {[SINGLE_ROW_ID]: values},
967
+ true,
968
+ true,
969
+ partial,
970
+ )
971
+ : null;
972
+ });
973
+ const loadTables = () =>
974
+ __async$2(void 0, null, function* () {
975
+ return objNew(
976
+ arrayFilter(
977
+ yield promiseAll(
978
+ mapMap(tablesLoadConfig, (_0, _1) =>
979
+ __async$2(
980
+ void 0,
981
+ [_0, _1],
982
+ function* ([tableId, rowIdColumnName], tableName) {
983
+ return [tableId, yield loadTable(tableName, rowIdColumnName)];
984
+ },
985
+ ),
986
+ ),
987
+ ),
988
+ (pair) => !objIsEmpty(pair[1]),
989
+ ),
990
+ );
991
+ });
992
+ const loadValues = () =>
993
+ __async$2(void 0, null, function* () {
994
+ return valuesLoad
995
+ ? (yield loadTable(valuesTableName, DEFAULT_ROW_ID_COLUMN_NAME))[
996
+ SINGLE_ROW_ID
997
+ ]
998
+ : {};
999
+ });
1000
+ const getPersisted = () =>
1001
+ __async$2(void 0, null, function* () {
1002
+ return yield transaction(() =>
1003
+ __async$2(void 0, null, function* () {
1004
+ yield refreshSchema();
1005
+ const tables = yield loadTables();
1006
+ const values = yield loadValues();
1007
+ return !objIsEmpty(tables) || !isUndefined(values)
1008
+ ? [tables, values]
1009
+ : void 0;
1010
+ }),
1011
+ );
1012
+ });
1013
+ const setPersisted = (getContent, changes) =>
1014
+ __async$2(void 0, null, function* () {
1015
+ return yield transaction(() =>
1016
+ __async$2(void 0, null, function* () {
1017
+ yield refreshSchema();
1018
+ if (!isUndefined(changes)) {
1019
+ yield saveTables(changes[0], true);
1020
+ yield saveValues(changes[1], true);
1021
+ } else {
1022
+ const [tables, values] = getContent();
1023
+ yield saveTables(tables);
1024
+ yield saveValues(values);
1025
+ }
1026
+ }),
1027
+ );
1028
+ });
1029
+ const destroy = () => {
1030
+ persister.stopAutoLoad().stopAutoSave();
1031
+ destroyImpl();
1032
+ return persister;
1033
+ };
1034
+ const persister = createCustomPersister(
1035
+ store,
1036
+ getPersisted,
1037
+ setPersisted,
1038
+ addPersisterListener,
1039
+ delPersisterListener,
1040
+ onIgnoredError,
1041
+ persist,
1042
+ {[getThing]: () => thing, destroy},
1043
+ thing,
1044
+ );
1045
+ return persister;
1046
+ };
1047
+
1048
+ const COLUMN_NAME = 'ColumnName';
1049
+ const STORE = 'store';
1050
+ const JSON$1 = 'json';
1051
+ const STORE_TABLE_NAME = STORE + 'TableName';
1052
+ const STORE_ID_COLUMN_NAME = STORE + 'Id' + COLUMN_NAME;
1053
+ const STORE_COLUMN_NAME = STORE + COLUMN_NAME;
1054
+ const AUTO_LOAD_INTERVAL_SECONDS = 'autoLoadIntervalSeconds';
1055
+ const ROW_ID_COLUMN_NAME = 'rowId' + COLUMN_NAME;
1056
+ const TABLE_ID = 'tableId';
1057
+ const TABLE_NAME = 'tableName';
1058
+ const DELETE_EMPTY_COLUMNS = 'deleteEmptyColumns';
1059
+ const DELETE_EMPTY_TABLE = 'deleteEmptyTable';
1060
+ const DEFAULT_CONFIG = {
1061
+ mode: JSON$1,
1062
+ [AUTO_LOAD_INTERVAL_SECONDS]: 1,
1063
+ };
1064
+ const DEFAULT_TABULAR_VALUES_CONFIG = {
1065
+ load: 0,
1066
+ save: 0,
1067
+ [TABLE_NAME]: TINYBASE + '_values',
1068
+ };
1069
+ const getDefaultedConfig = (configOrStoreTableName) =>
1070
+ objMerge(
1071
+ DEFAULT_CONFIG,
1072
+ isString(configOrStoreTableName)
1073
+ ? {[STORE_TABLE_NAME]: configOrStoreTableName}
1074
+ : configOrStoreTableName != null
1075
+ ? configOrStoreTableName
1076
+ : {},
1077
+ );
1078
+ const getDefaultedTabularConfigMap = (
1079
+ configsObj,
1080
+ defaultObj,
1081
+ tableField,
1082
+ exclude,
1083
+ then,
1084
+ ) => {
1085
+ const configMap = mapNew();
1086
+ objToArray(configsObj, (configObj, id) => {
1087
+ const defaultedConfig = slice(
1088
+ objValues(
1089
+ objMerge(
1090
+ defaultObj,
1091
+ isString(configObj) ? {[tableField]: configObj} : configObj,
1092
+ ),
1093
+ ),
1094
+ 0,
1095
+ objSize(defaultObj),
1096
+ );
1097
+ if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
1098
+ then(id, defaultedConfig[0]);
1099
+ mapSet(configMap, id, defaultedConfig);
1100
+ }
1101
+ });
1102
+ return configMap;
1103
+ };
1104
+ const getConfigStructures = (configOrStoreTableName) => {
1105
+ var _a, _b, _c;
1106
+ const config = getDefaultedConfig(configOrStoreTableName);
1107
+ const autoLoadIntervalSeconds = config[AUTO_LOAD_INTERVAL_SECONDS];
1108
+ if (config.mode == JSON$1) {
1109
+ const storeTableName =
1110
+ (_a = config[STORE_TABLE_NAME]) != null ? _a : TINYBASE;
1111
+ return [
1112
+ 1,
1113
+ autoLoadIntervalSeconds,
1114
+ [
1115
+ storeTableName,
1116
+ (_b = config[STORE_ID_COLUMN_NAME]) != null
1117
+ ? _b
1118
+ : DEFAULT_ROW_ID_COLUMN_NAME,
1119
+ (_c = config[STORE_COLUMN_NAME]) != null ? _c : STORE,
1120
+ ],
1121
+ setNew(storeTableName),
1122
+ ];
1123
+ }
1124
+ const {tables: {load = {}, save = {}} = {}, values = {}} = config;
1125
+ const valuesConfig = slice(
1126
+ objValues(objMerge(DEFAULT_TABULAR_VALUES_CONFIG, values)),
1127
+ 0,
1128
+ objSize(DEFAULT_TABULAR_VALUES_CONFIG),
1129
+ );
1130
+ const valuesTable = valuesConfig[2];
1131
+ const managedTableNames = setNew(valuesTable);
1132
+ const excludedTableNames = setNew(valuesTable);
1133
+ const tabularConfig = [
1134
+ getDefaultedTabularConfigMap(
1135
+ load,
1136
+ {[TABLE_ID]: null, [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME},
1137
+ TABLE_ID,
1138
+ (tableName) => collHas(excludedTableNames, tableName),
1139
+ (tableName) => setAdd(managedTableNames, tableName),
1140
+ ),
1141
+ getDefaultedTabularConfigMap(
1142
+ save,
1143
+ {
1144
+ [TABLE_NAME]: null,
1145
+ [ROW_ID_COLUMN_NAME]: DEFAULT_ROW_ID_COLUMN_NAME,
1146
+ [DELETE_EMPTY_COLUMNS]: 0,
1147
+ [DELETE_EMPTY_TABLE]: 0,
1148
+ },
1149
+ TABLE_NAME,
1150
+ (_, tableName) => collHas(excludedTableNames, tableName),
1151
+ (_, tableName) => setAdd(managedTableNames, tableName),
1152
+ ),
1153
+ valuesConfig,
1154
+ ];
1155
+ return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
1156
+ };
1157
+
1158
+ var __async$1 = (__this, __arguments, generator) => {
1159
+ return new Promise((resolve, reject) => {
1160
+ var fulfilled = (value) => {
1161
+ try {
1162
+ step(generator.next(value));
1163
+ } catch (e) {
1164
+ reject(e);
1165
+ }
1166
+ };
1167
+ var rejected = (value) => {
1168
+ try {
1169
+ step(generator.throw(value));
1170
+ } catch (e) {
1171
+ reject(e);
1172
+ }
1173
+ };
1174
+ var step = (x) =>
1175
+ x.done
1176
+ ? resolve(x.value)
1177
+ : Promise.resolve(x.value).then(fulfilled, rejected);
1178
+ step((generator = generator.apply(__this, __arguments)).next());
1179
+ });
1180
+ };
1181
+ const createCustomSqlitePersister = (
1182
+ store,
1183
+ configOrStoreTableName,
1184
+ rawExecuteCommand,
1185
+ addChangeListener,
1186
+ delChangeListener,
1187
+ onSqlCommand,
1188
+ onIgnoredError,
1189
+ destroy,
1190
+ persist,
1191
+ thing,
1192
+ getThing = 'getDb',
1193
+ orReplace,
1194
+ ) => {
1195
+ let dataVersion;
1196
+ let schemaVersion;
1197
+ let totalChanges;
1198
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
1199
+ const [
1200
+ isJson,
1201
+ autoLoadIntervalSeconds,
1202
+ defaultedConfig,
1203
+ managedTableNamesSet,
1204
+ ] = getConfigStructures(configOrStoreTableName);
1205
+ const addPersisterListener = (listener) => {
1206
+ let interval;
1207
+ const startPolling = () =>
1208
+ (interval = startInterval(
1209
+ () =>
1210
+ __async$1(void 0, null, function* () {
1211
+ try {
1212
+ const [{d, s, c}] = yield executeCommand(
1213
+ // eslint-disable-next-line max-len
1214
+ `${SELECT} ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1215
+ );
1216
+ if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1217
+ if (dataVersion != null) {
1218
+ listener();
1219
+ }
1220
+ dataVersion = d;
1221
+ schemaVersion = s;
1222
+ totalChanges = c;
1223
+ }
1224
+ } catch (e) {}
1225
+ }),
1226
+ autoLoadIntervalSeconds,
1227
+ ));
1228
+ const stopPolling = () => {
1229
+ dataVersion = schemaVersion = totalChanges = null;
1230
+ stopInterval(interval);
1231
+ };
1232
+ const listeningHandle = addChangeListener((tableName) => {
1233
+ if (managedTableNamesSet.has(tableName)) {
1234
+ stopPolling();
1235
+ listener();
1236
+ startPolling();
1237
+ }
1238
+ });
1239
+ startPolling();
1240
+ return () => {
1241
+ stopPolling();
1242
+ delChangeListener(listeningHandle);
1243
+ };
1244
+ };
1245
+ const delPersisterListener = (stopPollingAndDelUpdateListener) =>
1246
+ stopPollingAndDelUpdateListener();
1247
+ return (isJson ? createJsonPersister : createTabularPersister)(
1248
+ store,
1249
+ executeCommand,
1250
+ addPersisterListener,
1251
+ delPersisterListener,
1252
+ onIgnoredError,
1253
+ destroy,
1254
+ persist,
1255
+ defaultedConfig,
1256
+ collValues(managedTableNamesSet),
1257
+ (executeCommand2, managedTableNames) =>
1258
+ __async$1(void 0, null, function* () {
1259
+ return yield executeCommand2(
1260
+ // eslint-disable-next-line max-len
1261
+ `${SELECT} t.name tn,c.name cn ${FROM}${PRAGMA_TABLE}list()t,${PRAGMA_TABLE}info(t.name)c ${WHERE} t.schema='main'AND t.type IN('table','view')AND t.name IN(${getPlaceholders(managedTableNames)})ORDER BY t.name,c.name`,
1262
+ managedTableNames,
1263
+ );
1264
+ }),
1265
+ thing,
1266
+ getThing,
1267
+ EMPTY_STRING,
1268
+ orReplace,
1269
+ (cellOrValue) =>
1270
+ cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1271
+ void 0,
1272
+ );
1273
+ };
1274
+
1275
+ var __async = (__this, __arguments, generator) => {
1276
+ return new Promise((resolve, reject) => {
1277
+ var fulfilled = (value) => {
1278
+ try {
1279
+ step(generator.next(value));
1280
+ } catch (e) {
1281
+ reject(e);
1282
+ }
1283
+ };
1284
+ var rejected = (value) => {
1285
+ try {
1286
+ step(generator.throw(value));
1287
+ } catch (e) {
1288
+ reject(e);
1289
+ }
1290
+ };
1291
+ var step = (x) =>
1292
+ x.done
1293
+ ? resolve(x.value)
1294
+ : Promise.resolve(x.value).then(fulfilled, rejected);
1295
+ step((generator = generator.apply(__this, __arguments)).next());
1296
+ });
1297
+ };
1298
+ const EVENT_CHANNEL = TINYBASE;
1299
+ const EVENT_REGEX = /^([cd]:)(.+)/;
1300
+ const CHANGE_DATA_TRIGGER = TINYBASE + '_data';
1301
+ const CREATE_TABLE_TRIGGER = TINYBASE + '_table';
1302
+ const createCustomPostgreSqlPersister = (
1303
+ store,
1304
+ configOrStoreTableName,
1305
+ rawExecuteCommand,
1306
+ addChangeListener,
1307
+ delChangeListener,
1308
+ onSqlCommand,
1309
+ onIgnoredError,
1310
+ destroy,
1311
+ persist,
1312
+ thing,
1313
+ getThing = 'getDb',
1314
+ ) => {
1315
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
1316
+ const [isJson, , defaultedConfig, managedTableNamesSet] = getConfigStructures(
1317
+ configOrStoreTableName,
1318
+ );
1319
+ const addDataTrigger = (tableName) =>
1320
+ __async(void 0, null, function* () {
1321
+ yield executeCommand(
1322
+ // eslint-disable-next-line max-len
1323
+ `CREATE OR REPLACE TRIGGER ${escapeId(CHANGE_DATA_TRIGGER + '_' + tableName)} AFTER INSERT OR UPDATE OR DELETE ON ${escapeId(tableName)} EXECUTE FUNCTION ${CHANGE_DATA_TRIGGER}()`,
1324
+ );
1325
+ });
1326
+ const addPersisterListener = (listener) =>
1327
+ __async(void 0, null, function* () {
1328
+ yield executeCommand(
1329
+ // eslint-disable-next-line max-len
1330
+ `CREATE OR REPLACE FUNCTION ${CREATE_TABLE_TRIGGER}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${EVENT_CHANNEL}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`,
1331
+ );
1332
+ try {
1333
+ yield executeCommand(
1334
+ // eslint-disable-next-line max-len
1335
+ `CREATE EVENT TRIGGER ${CREATE_TABLE_TRIGGER} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${CREATE_TABLE_TRIGGER}();`,
1336
+ );
1337
+ } catch (e) {}
1338
+ yield executeCommand(
1339
+ // eslint-disable-next-line max-len
1340
+ `CREATE OR REPLACE FUNCTION ${CHANGE_DATA_TRIGGER}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${EVENT_CHANNEL}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`,
1341
+ );
1342
+ yield promiseAll(
1343
+ arrayMap(collValues(managedTableNamesSet), (tableName) =>
1344
+ __async(void 0, null, function* () {
1345
+ yield executeCommand(
1346
+ // eslint-disable-next-line max-len
1347
+ `CREATE TABLE IF NOT EXISTS ${escapeId(tableName)}("_id"text PRIMARY KEY)`,
1348
+ );
1349
+ yield addDataTrigger(tableName);
1350
+ }),
1351
+ ),
1352
+ );
1353
+ return yield addChangeListener(EVENT_CHANNEL, (prefixAndTableName) =>
1354
+ __async(void 0, null, function* () {
1355
+ return yield ifNotUndefined(
1356
+ strMatch(prefixAndTableName, EVENT_REGEX),
1357
+ (_0) =>
1358
+ __async(void 0, [_0], function* ([, eventType, tableName]) {
1359
+ if (collHas(managedTableNamesSet, tableName)) {
1360
+ if (eventType == 'c:') {
1361
+ yield addDataTrigger(tableName);
1362
+ }
1363
+ listener();
1364
+ }
1365
+ }),
1366
+ );
1367
+ }),
1368
+ );
1369
+ });
1370
+ const delPersisterListener = delChangeListener;
1371
+ return (isJson ? createJsonPersister : createTabularPersister)(
1372
+ store,
1373
+ executeCommand,
1374
+ addPersisterListener,
1375
+ delPersisterListener,
1376
+ onIgnoredError,
1377
+ destroy,
1378
+ persist,
1379
+ defaultedConfig,
1380
+ collValues(managedTableNamesSet),
1381
+ (executeCommand2, managedTableNames) =>
1382
+ __async(void 0, null, function* () {
1383
+ return yield executeCommand2(
1384
+ // eslint-disable-next-line max-len
1385
+ `${SELECT} table_name tn,column_name cn FROM information_schema.columns ${WHERE} table_schema='public'AND table_name IN(${getPlaceholders(managedTableNames)})`,
1386
+ managedTableNames,
1387
+ );
1388
+ }),
1389
+ thing,
1390
+ getThing,
1391
+ 'text',
1392
+ 0,
1393
+ (cellOrValue) => jsonString(cellOrValue),
1394
+ (field) => jsonParse(field),
1395
+ );
1396
+ };
1397
+
315
1398
  exports.Persists = Persists;
316
1399
  exports.createCustomPersister = createCustomPersister;
1400
+ exports.createCustomPostgreSqlPersister = createCustomPostgreSqlPersister;
1401
+ exports.createCustomSqlitePersister = createCustomSqlitePersister;