tinybase 5.2.0-beta.4 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/@types/mergeable-store/index.d.cts +114 -11
  2. package/@types/mergeable-store/index.d.ts +114 -11
  3. package/@types/mergeable-store/with-schemas/index.d.cts +192 -11
  4. package/@types/mergeable-store/with-schemas/index.d.ts +192 -11
  5. package/@types/persisters/index.d.cts +177 -16
  6. package/@types/persisters/index.d.ts +177 -16
  7. package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +1 -1
  8. package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +1 -1
  9. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +2 -2
  10. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +2 -2
  11. package/@types/persisters/persister-electric-sql/index.d.cts +1 -1
  12. package/@types/persisters/persister-electric-sql/index.d.ts +1 -1
  13. package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +2 -2
  14. package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +2 -2
  15. package/@types/persisters/persister-expo-sqlite/index.d.cts +1 -1
  16. package/@types/persisters/persister-expo-sqlite/index.d.ts +1 -1
  17. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +2 -2
  18. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +2 -2
  19. package/@types/persisters/persister-libsql/index.d.cts +1 -1
  20. package/@types/persisters/persister-libsql/index.d.ts +1 -1
  21. package/@types/persisters/persister-libsql/with-schemas/index.d.cts +2 -2
  22. package/@types/persisters/persister-libsql/with-schemas/index.d.ts +2 -2
  23. package/@types/persisters/persister-pglite/index.d.cts +1 -1
  24. package/@types/persisters/persister-pglite/index.d.ts +1 -1
  25. package/@types/persisters/persister-pglite/with-schemas/index.d.cts +2 -2
  26. package/@types/persisters/persister-pglite/with-schemas/index.d.ts +2 -2
  27. package/@types/persisters/persister-postgres/index.d.cts +1 -1
  28. package/@types/persisters/persister-postgres/index.d.ts +1 -1
  29. package/@types/persisters/persister-postgres/with-schemas/index.d.cts +2 -2
  30. package/@types/persisters/persister-postgres/with-schemas/index.d.ts +2 -2
  31. package/@types/persisters/persister-powersync/index.d.cts +1 -1
  32. package/@types/persisters/persister-powersync/index.d.ts +1 -1
  33. package/@types/persisters/persister-powersync/with-schemas/index.d.cts +2 -2
  34. package/@types/persisters/persister-powersync/with-schemas/index.d.ts +2 -2
  35. package/@types/persisters/persister-sqlite-wasm/index.d.cts +1 -1
  36. package/@types/persisters/persister-sqlite-wasm/index.d.ts +1 -1
  37. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +2 -2
  38. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +2 -2
  39. package/@types/persisters/persister-sqlite3/index.d.cts +1 -1
  40. package/@types/persisters/persister-sqlite3/index.d.ts +1 -1
  41. package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +2 -2
  42. package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +2 -2
  43. package/@types/persisters/with-schemas/index.d.cts +227 -19
  44. package/@types/persisters/with-schemas/index.d.ts +227 -19
  45. package/@types/synchronizers/index.d.cts +2 -5
  46. package/@types/synchronizers/index.d.ts +2 -5
  47. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +7 -7
  48. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +7 -7
  49. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +7 -7
  50. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +7 -7
  51. package/@types/synchronizers/with-schemas/index.d.cts +2 -5
  52. package/@types/synchronizers/with-schemas/index.d.ts +2 -5
  53. package/cjs/es6/index.cjs +54 -566
  54. package/cjs/es6/mergeable-store/index.cjs +9 -6
  55. package/cjs/es6/mergeable-store/with-schemas/index.cjs +9 -6
  56. package/cjs/es6/min/index.cjs +1 -1
  57. package/cjs/es6/min/index.cjs.gz +0 -0
  58. package/cjs/es6/min/persisters/index.cjs +1 -1
  59. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  60. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  65. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  66. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  69. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  70. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  73. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  74. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  77. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  78. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  79. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  80. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  81. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  82. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  83. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  84. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  85. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  86. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  87. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  88. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  89. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  90. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  91. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  92. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  93. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  94. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  95. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  96. package/cjs/es6/persisters/index.cjs +1095 -10
  97. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +58 -49
  98. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +58 -49
  99. package/cjs/es6/persisters/persister-electric-sql/index.cjs +56 -47
  100. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +56 -47
  101. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +58 -49
  102. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +58 -49
  103. package/cjs/es6/persisters/persister-indexed-db/index.cjs +2 -2
  104. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  105. package/cjs/es6/persisters/persister-libsql/index.cjs +56 -47
  106. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +56 -47
  107. package/cjs/es6/persisters/persister-pglite/index.cjs +61 -54
  108. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +61 -54
  109. package/cjs/es6/persisters/persister-postgres/index.cjs +63 -56
  110. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +63 -56
  111. package/cjs/es6/persisters/persister-powersync/index.cjs +58 -49
  112. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +58 -49
  113. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +62 -49
  114. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +62 -49
  115. package/cjs/es6/persisters/persister-sqlite3/index.cjs +58 -49
  116. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +58 -49
  117. package/cjs/es6/persisters/with-schemas/index.cjs +1095 -10
  118. package/cjs/es6/synchronizers/index.cjs +9 -6
  119. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +9 -6
  120. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +9 -6
  121. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +9 -6
  122. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +9 -6
  123. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +9 -6
  124. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +9 -6
  125. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +17 -14
  126. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +17 -14
  127. package/cjs/es6/synchronizers/with-schemas/index.cjs +9 -6
  128. package/cjs/es6/with-schemas/index.cjs +54 -566
  129. package/cjs/index.cjs +45 -447
  130. package/cjs/mergeable-store/index.cjs +1 -0
  131. package/cjs/mergeable-store/with-schemas/index.cjs +1 -0
  132. package/cjs/min/index.cjs +1 -1
  133. package/cjs/min/index.cjs.gz +0 -0
  134. package/cjs/min/persisters/index.cjs +1 -1
  135. package/cjs/min/persisters/index.cjs.gz +0 -0
  136. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  137. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  138. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  139. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  140. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  141. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  142. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  143. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  144. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  145. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  146. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  147. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  148. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  149. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  150. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  151. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  152. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  153. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  154. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  155. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  156. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  157. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  158. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  159. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  160. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  161. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  162. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  163. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  164. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  165. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  166. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  167. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  168. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  169. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  170. package/cjs/min/with-schemas/index.cjs +1 -1
  171. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  172. package/cjs/persisters/index.cjs +833 -0
  173. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +57 -48
  174. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +57 -48
  175. package/cjs/persisters/persister-electric-sql/index.cjs +56 -47
  176. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +56 -47
  177. package/cjs/persisters/persister-expo-sqlite/index.cjs +57 -48
  178. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +57 -48
  179. package/cjs/persisters/persister-indexed-db/index.cjs +2 -2
  180. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +2 -2
  181. package/cjs/persisters/persister-libsql/index.cjs +56 -47
  182. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +56 -47
  183. package/cjs/persisters/persister-pglite/index.cjs +59 -52
  184. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +59 -52
  185. package/cjs/persisters/persister-postgres/index.cjs +61 -54
  186. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +61 -54
  187. package/cjs/persisters/persister-powersync/index.cjs +60 -49
  188. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +60 -49
  189. package/cjs/persisters/persister-sqlite-wasm/index.cjs +58 -49
  190. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +58 -49
  191. package/cjs/persisters/persister-sqlite3/index.cjs +58 -49
  192. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +58 -49
  193. package/cjs/persisters/with-schemas/index.cjs +833 -0
  194. package/cjs/synchronizers/index.cjs +1 -0
  195. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -0
  196. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -0
  197. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -0
  198. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -0
  199. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +1 -0
  200. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -0
  201. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +9 -8
  202. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +9 -8
  203. package/cjs/synchronizers/with-schemas/index.cjs +1 -0
  204. package/cjs/with-schemas/index.cjs +45 -447
  205. package/es6/index.js +54 -566
  206. package/es6/mergeable-store/index.js +9 -6
  207. package/es6/mergeable-store/with-schemas/index.js +9 -6
  208. package/es6/min/index.js +1 -1
  209. package/es6/min/index.js.gz +0 -0
  210. package/es6/min/persisters/index.js +1 -1
  211. package/es6/min/persisters/index.js.gz +0 -0
  212. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  213. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  214. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  215. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  216. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  217. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  218. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  219. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  220. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  221. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  222. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  223. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  224. package/es6/min/persisters/persister-libsql/index.js +1 -1
  225. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  226. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  227. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  228. package/es6/min/persisters/persister-powersync/index.js +1 -1
  229. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  230. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  231. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  232. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  233. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  234. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  235. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  236. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  237. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  238. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  239. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  240. package/es6/min/persisters/with-schemas/index.js +1 -1
  241. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  242. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  243. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  244. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  245. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  246. package/es6/min/with-schemas/index.js +1 -1
  247. package/es6/min/with-schemas/index.js.gz +0 -0
  248. package/es6/persisters/index.js +1099 -11
  249. package/es6/persisters/persister-cr-sqlite-wasm/index.js +58 -49
  250. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +58 -49
  251. package/es6/persisters/persister-electric-sql/index.js +56 -47
  252. package/es6/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  253. package/es6/persisters/persister-expo-sqlite/index.js +58 -49
  254. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +58 -49
  255. package/es6/persisters/persister-indexed-db/index.js +2 -2
  256. package/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  257. package/es6/persisters/persister-libsql/index.js +56 -47
  258. package/es6/persisters/persister-libsql/with-schemas/index.js +56 -47
  259. package/es6/persisters/persister-pglite/index.js +61 -54
  260. package/es6/persisters/persister-pglite/with-schemas/index.js +61 -54
  261. package/es6/persisters/persister-postgres/index.js +63 -56
  262. package/es6/persisters/persister-postgres/with-schemas/index.js +63 -56
  263. package/es6/persisters/persister-powersync/index.js +58 -49
  264. package/es6/persisters/persister-powersync/with-schemas/index.js +58 -49
  265. package/es6/persisters/persister-sqlite-wasm/index.js +62 -49
  266. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +62 -49
  267. package/es6/persisters/persister-sqlite3/index.js +58 -49
  268. package/es6/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  269. package/es6/persisters/with-schemas/index.js +1099 -11
  270. package/es6/synchronizers/index.js +9 -6
  271. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  272. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  273. package/es6/synchronizers/synchronizer-local/index.js +9 -6
  274. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  275. package/es6/synchronizers/synchronizer-ws-client/index.js +9 -6
  276. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +9 -6
  277. package/es6/synchronizers/synchronizer-ws-server/index.js +17 -14
  278. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +17 -14
  279. package/es6/synchronizers/with-schemas/index.js +9 -6
  280. package/es6/with-schemas/index.js +54 -566
  281. package/index.js +45 -447
  282. package/mergeable-store/index.js +1 -0
  283. package/mergeable-store/with-schemas/index.js +1 -0
  284. package/min/index.js +1 -1
  285. package/min/index.js.gz +0 -0
  286. package/min/persisters/index.js +1 -1
  287. package/min/persisters/index.js.gz +0 -0
  288. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  289. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  290. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  291. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  292. package/min/persisters/persister-electric-sql/index.js +1 -1
  293. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  294. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  295. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  296. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  297. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  298. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  299. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  300. package/min/persisters/persister-libsql/index.js +1 -1
  301. package/min/persisters/persister-libsql/index.js.gz +0 -0
  302. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  303. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  304. package/min/persisters/persister-powersync/index.js +1 -1
  305. package/min/persisters/persister-powersync/index.js.gz +0 -0
  306. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  307. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  308. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  309. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  310. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  311. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  312. package/min/persisters/persister-sqlite3/index.js +1 -1
  313. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  314. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  315. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  316. package/min/persisters/with-schemas/index.js +1 -1
  317. package/min/persisters/with-schemas/index.js.gz +0 -0
  318. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  319. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  320. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  321. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  322. package/min/with-schemas/index.js +1 -1
  323. package/min/with-schemas/index.js.gz +0 -0
  324. package/package.json +212 -212
  325. package/persisters/index.js +837 -1
  326. package/persisters/persister-cr-sqlite-wasm/index.js +57 -48
  327. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +57 -48
  328. package/persisters/persister-electric-sql/index.js +56 -47
  329. package/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  330. package/persisters/persister-expo-sqlite/index.js +57 -48
  331. package/persisters/persister-expo-sqlite/with-schemas/index.js +57 -48
  332. package/persisters/persister-indexed-db/index.js +2 -2
  333. package/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  334. package/persisters/persister-libsql/index.js +56 -47
  335. package/persisters/persister-libsql/with-schemas/index.js +56 -47
  336. package/persisters/persister-pglite/index.js +59 -52
  337. package/persisters/persister-pglite/with-schemas/index.js +59 -52
  338. package/persisters/persister-postgres/index.js +61 -54
  339. package/persisters/persister-postgres/with-schemas/index.js +61 -54
  340. package/persisters/persister-powersync/index.js +60 -49
  341. package/persisters/persister-powersync/with-schemas/index.js +60 -49
  342. package/persisters/persister-sqlite-wasm/index.js +58 -49
  343. package/persisters/persister-sqlite-wasm/with-schemas/index.js +58 -49
  344. package/persisters/persister-sqlite3/index.js +58 -49
  345. package/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  346. package/persisters/with-schemas/index.js +837 -1
  347. package/readme.md +14 -14
  348. package/releases.md +27 -23
  349. package/synchronizers/index.js +1 -0
  350. package/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  351. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  352. package/synchronizers/synchronizer-local/index.js +1 -0
  353. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  354. package/synchronizers/synchronizer-ws-client/index.js +1 -0
  355. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  356. package/synchronizers/synchronizer-ws-server/index.js +9 -8
  357. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +9 -8
  358. package/synchronizers/with-schemas/index.js +1 -0
  359. package/umd/es6/index.js +54 -577
  360. package/umd/es6/mergeable-store/index.js +9 -6
  361. package/umd/es6/mergeable-store/with-schemas/index.js +9 -6
  362. package/umd/es6/min/index.js +1 -1
  363. package/umd/es6/min/index.js.gz +0 -0
  364. package/umd/es6/min/persisters/index.js +1 -1
  365. package/umd/es6/min/persisters/index.js.gz +0 -0
  366. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  367. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  368. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  369. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  370. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  371. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  372. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  373. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  374. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  375. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  376. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  377. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  378. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  379. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  380. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  381. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  382. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  383. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  384. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  385. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  386. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  387. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  388. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  389. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  390. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  391. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  392. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  393. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  394. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  395. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  396. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  397. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  398. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  399. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  400. package/umd/es6/min/with-schemas/index.js +1 -1
  401. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  402. package/umd/es6/persisters/index.js +1106 -10
  403. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +58 -49
  404. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +58 -49
  405. package/umd/es6/persisters/persister-electric-sql/index.js +56 -47
  406. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  407. package/umd/es6/persisters/persister-expo-sqlite/index.js +58 -49
  408. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +58 -49
  409. package/umd/es6/persisters/persister-indexed-db/index.js +2 -2
  410. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  411. package/umd/es6/persisters/persister-libsql/index.js +56 -47
  412. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +56 -47
  413. package/umd/es6/persisters/persister-pglite/index.js +61 -54
  414. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +61 -54
  415. package/umd/es6/persisters/persister-postgres/index.js +66 -56
  416. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +66 -56
  417. package/umd/es6/persisters/persister-powersync/index.js +58 -49
  418. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +58 -49
  419. package/umd/es6/persisters/persister-sqlite-wasm/index.js +58 -49
  420. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +58 -49
  421. package/umd/es6/persisters/persister-sqlite3/index.js +58 -49
  422. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  423. package/umd/es6/persisters/with-schemas/index.js +1106 -10
  424. package/umd/es6/synchronizers/index.js +9 -6
  425. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +9 -6
  426. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +9 -6
  427. package/umd/es6/synchronizers/synchronizer-local/index.js +9 -6
  428. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +9 -6
  429. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +9 -6
  430. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +9 -6
  431. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +17 -14
  432. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +17 -14
  433. package/umd/es6/synchronizers/with-schemas/index.js +9 -6
  434. package/umd/es6/with-schemas/index.js +54 -577
  435. package/umd/index.js +45 -454
  436. package/umd/mergeable-store/index.js +1 -0
  437. package/umd/mergeable-store/with-schemas/index.js +1 -0
  438. package/umd/min/index.js +1 -1
  439. package/umd/min/index.js.gz +0 -0
  440. package/umd/min/persisters/index.js +1 -1
  441. package/umd/min/persisters/index.js.gz +0 -0
  442. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  443. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  444. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  445. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  446. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  447. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  448. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  449. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  450. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  451. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  452. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  453. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  454. package/umd/min/persisters/persister-libsql/index.js +1 -1
  455. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  456. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  457. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  458. package/umd/min/persisters/persister-powersync/index.js +1 -1
  459. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  460. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  461. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  462. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  463. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  464. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  465. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  466. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  467. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  468. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  469. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  470. package/umd/min/persisters/with-schemas/index.js +1 -1
  471. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  472. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  473. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  474. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  475. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  476. package/umd/min/with-schemas/index.js +1 -1
  477. package/umd/min/with-schemas/index.js.gz +0 -0
  478. package/umd/persisters/index.js +835 -0
  479. package/umd/persisters/persister-cr-sqlite-wasm/index.js +57 -48
  480. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +57 -48
  481. package/umd/persisters/persister-electric-sql/index.js +56 -47
  482. package/umd/persisters/persister-electric-sql/with-schemas/index.js +56 -47
  483. package/umd/persisters/persister-expo-sqlite/index.js +57 -48
  484. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +57 -48
  485. package/umd/persisters/persister-indexed-db/index.js +2 -2
  486. package/umd/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  487. package/umd/persisters/persister-libsql/index.js +56 -47
  488. package/umd/persisters/persister-libsql/with-schemas/index.js +56 -47
  489. package/umd/persisters/persister-pglite/index.js +59 -52
  490. package/umd/persisters/persister-pglite/with-schemas/index.js +59 -52
  491. package/umd/persisters/persister-postgres/index.js +61 -54
  492. package/umd/persisters/persister-postgres/with-schemas/index.js +61 -54
  493. package/umd/persisters/persister-powersync/index.js +58 -49
  494. package/umd/persisters/persister-powersync/with-schemas/index.js +58 -49
  495. package/umd/persisters/persister-sqlite-wasm/index.js +62 -49
  496. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +62 -49
  497. package/umd/persisters/persister-sqlite3/index.js +58 -49
  498. package/umd/persisters/persister-sqlite3/with-schemas/index.js +58 -49
  499. package/umd/persisters/with-schemas/index.js +835 -0
  500. package/umd/synchronizers/index.js +1 -0
  501. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +1 -0
  502. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
  503. package/umd/synchronizers/synchronizer-local/index.js +1 -0
  504. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  505. package/umd/synchronizers/synchronizer-ws-client/index.js +1 -0
  506. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  507. package/umd/synchronizers/synchronizer-ws-server/index.js +9 -8
  508. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +9 -8
  509. package/umd/synchronizers/with-schemas/index.js +1 -0
  510. package/umd/with-schemas/index.js +45 -454
  511. package/with-schemas/index.js +45 -447
@@ -47,13 +47,13 @@ const DATA_VERSION = 'data_version';
47
47
  const SCHEMA_VERSION = 'schema_version';
48
48
  const FROM = 'FROM ';
49
49
  const PRAGMA_TABLE = 'pragma_table_';
50
- const getWrappedCommand = (rawCmd, onSqlCommand) =>
50
+ const getWrappedCommand = (executeCommand, onSqlCommand) =>
51
51
  onSqlCommand
52
- ? async (sql, args) => {
53
- onSqlCommand(sql, args);
54
- return await rawCmd(sql, args);
52
+ ? async (sql, params) => {
53
+ onSqlCommand(sql, params);
54
+ return await executeCommand(sql, params);
55
55
  }
56
- : rawCmd;
56
+ : executeCommand;
57
57
  const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
58
58
  const getPlaceholders = (array) =>
59
59
  arrayJoin(
@@ -316,7 +316,7 @@ const setNew = (entryOrEntries) =>
316
316
  const setAdd = (set, value) => set?.add(value);
317
317
 
318
318
  const getCommandFunctions = (
319
- cmd,
319
+ databaseExecuteCommand,
320
320
  managedTableNames,
321
321
  querySchema,
322
322
  onIgnoredError,
@@ -330,8 +330,9 @@ const getCommandFunctions = (
330
330
  collHas(mapGet(schemaMap, tableName), rowIdColumnName);
331
331
  const refreshSchema = async () => {
332
332
  collClear(schemaMap);
333
- arrayMap(await querySchema(cmd, managedTableNames), ({tn, cn}) =>
334
- setAdd(mapEnsure(schemaMap, tn, setNew), cn),
333
+ arrayMap(
334
+ await querySchema(databaseExecuteCommand, managedTableNames),
335
+ ({tn, cn}) => setAdd(mapEnsure(schemaMap, tn, setNew), cn),
335
336
  );
336
337
  };
337
338
  const loadTable = async (tableName, rowIdColumnName) =>
@@ -339,7 +340,9 @@ const getCommandFunctions = (
339
340
  ? objNew(
340
341
  arrayFilter(
341
342
  arrayMap(
342
- await cmd(SELECT_STAR_FROM + escapeId(tableName)),
343
+ await databaseExecuteCommand(
344
+ SELECT_STAR_FROM + escapeId(tableName),
345
+ ),
343
346
  (row) => [
344
347
  row[rowIdColumnName],
345
348
  decode
@@ -372,7 +375,7 @@ const getCommandFunctions = (
372
375
  arrayIsEmpty(tableColumnNames) &&
373
376
  collHas(schemaMap, tableName)
374
377
  ) {
375
- await cmd('DROP ' + TABLE + escapeId(tableName));
378
+ await databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
376
379
  mapSet(schemaMap, tableName);
377
380
  return;
378
381
  }
@@ -380,7 +383,7 @@ const getCommandFunctions = (
380
383
  const currentColumnNames = setNew(collValues(tableSchemaColumns));
381
384
  if (!arrayIsEmpty(tableColumnNames)) {
382
385
  if (!collHas(schemaMap, tableName)) {
383
- await cmd(
386
+ await databaseExecuteCommand(
384
387
  'CREATE ' +
385
388
  TABLE +
386
389
  escapeId(tableName) +
@@ -402,7 +405,7 @@ const getCommandFunctions = (
402
405
  [rowIdColumnName, ...tableColumnNames],
403
406
  async (columnName, index) => {
404
407
  if (!collDel(currentColumnNames, columnName)) {
405
- await cmd(
408
+ await databaseExecuteCommand(
406
409
  ALTER_TABLE +
407
410
  escapeId(tableName) +
408
411
  'ADD' +
@@ -410,7 +413,7 @@ const getCommandFunctions = (
410
413
  columnType,
411
414
  );
412
415
  if (index == 0) {
413
- await cmd(
416
+ await databaseExecuteCommand(
414
417
  'CREATE UNIQUE INDEX pk ON ' +
415
418
  escapeId(tableName) +
416
419
  `(${escapeId(rowIdColumnName)})`,
@@ -427,7 +430,7 @@ const getCommandFunctions = (
427
430
  ...(!partial && deleteEmptyColumns
428
431
  ? arrayMap(collValues(currentColumnNames), async (columnName) => {
429
432
  if (columnName != rowIdColumnName) {
430
- await cmd(
433
+ await databaseExecuteCommand(
431
434
  ALTER_TABLE +
432
435
  escapeId(tableName) +
433
436
  'DROP' +
@@ -440,12 +443,14 @@ const getCommandFunctions = (
440
443
  ]);
441
444
  if (partial) {
442
445
  if (isUndefined(content)) {
443
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
446
+ await databaseExecuteCommand(
447
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
448
+ );
444
449
  } else {
445
450
  await promiseAll(
446
451
  objToArray(content, async (row, rowId) => {
447
452
  if (isUndefined(row)) {
448
- await cmd(
453
+ await databaseExecuteCommand(
449
454
  DELETE_FROM +
450
455
  escapeId(tableName) +
451
456
  WHERE +
@@ -455,7 +460,7 @@ const getCommandFunctions = (
455
460
  );
456
461
  } else if (!arrayIsEmpty(tableColumnNames)) {
457
462
  await upsert(
458
- cmd,
463
+ databaseExecuteCommand,
459
464
  tableName,
460
465
  rowIdColumnName,
461
466
  objIds(row),
@@ -477,11 +482,11 @@ const getCommandFunctions = (
477
482
  collValues(mapGet(schemaMap, tableName)),
478
483
  (columnName) => columnName != rowIdColumnName,
479
484
  );
480
- const args = [];
485
+ const params = [];
481
486
  const deleteRowIds = [];
482
487
  objToArray(content ?? {}, (row, rowId) => {
483
488
  arrayPush(
484
- args,
489
+ params,
485
490
  rowId,
486
491
  ...arrayMap(changingColumnNames, (cellId) =>
487
492
  encode ? encode(row?.[cellId]) : row?.[cellId],
@@ -490,14 +495,14 @@ const getCommandFunctions = (
490
495
  arrayPush(deleteRowIds, rowId);
491
496
  });
492
497
  await upsert(
493
- cmd,
498
+ databaseExecuteCommand,
494
499
  tableName,
495
500
  rowIdColumnName,
496
501
  changingColumnNames,
497
- args,
502
+ params,
498
503
  orReplace,
499
504
  );
500
- await cmd(
505
+ await databaseExecuteCommand(
501
506
  DELETE_FROM +
502
507
  escapeId(tableName) +
503
508
  WHERE +
@@ -506,32 +511,34 @@ const getCommandFunctions = (
506
511
  deleteRowIds,
507
512
  );
508
513
  } else if (collHas(schemaMap, tableName)) {
509
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
514
+ await databaseExecuteCommand(
515
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
516
+ );
510
517
  }
511
518
  }
512
519
  };
513
520
  const transaction = async (actions) => {
514
521
  let result;
515
- await cmd('BEGIN');
522
+ await databaseExecuteCommand('BEGIN');
516
523
  try {
517
524
  result = await actions();
518
525
  } catch (error) {
519
526
  onIgnoredError?.(error);
520
527
  }
521
- await cmd('END');
528
+ await databaseExecuteCommand('END');
522
529
  return result;
523
530
  };
524
531
  return [refreshSchema, loadTable, saveTable, transaction];
525
532
  };
526
533
  const upsert = async (
527
- cmd,
534
+ executeCommand,
528
535
  tableName,
529
536
  rowIdColumnName,
530
537
  changingColumnNames,
531
- args,
538
+ params,
532
539
  orReplace = 0,
533
540
  ) =>
534
- await cmd(
541
+ await executeCommand(
535
542
  'INSERT ' +
536
543
  (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
537
544
  'INTO' +
@@ -545,7 +552,7 @@ const upsert = async (
545
552
  ),
546
553
  ) +
547
554
  ')VALUES' +
548
- getUpsertPlaceholders(args, size(changingColumnNames) + 1) +
555
+ getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
549
556
  (orReplace
550
557
  ? EMPTY_STRING
551
558
  : 'ON CONFLICT(' +
@@ -559,7 +566,7 @@ const upsert = async (
559
566
  ),
560
567
  COMMA,
561
568
  )),
562
- arrayMap(args, (arg) => arg ?? null),
569
+ arrayMap(params, (param) => param ?? null),
563
570
  );
564
571
  const getUpsertPlaceholders = (array, columnCount) =>
565
572
  arrayJoin(
@@ -581,7 +588,7 @@ const getUpsertPlaceholders = (array, columnCount) =>
581
588
 
582
589
  const createJsonPersister = (
583
590
  store,
584
- cmd,
591
+ executeCommand,
585
592
  addPersisterListener,
586
593
  delPersisterListener,
587
594
  onIgnoredError,
@@ -597,7 +604,7 @@ const createJsonPersister = (
597
604
  ) => {
598
605
  const [refreshSchema, loadTable, saveTable, transaction] =
599
606
  getCommandFunctions(
600
- cmd,
607
+ executeCommand,
601
608
  managedTableNames,
602
609
  querySchema,
603
610
  onIgnoredError,
@@ -649,7 +656,7 @@ const createJsonPersister = (
649
656
 
650
657
  const createTabularPersister = (
651
658
  store,
652
- cmd,
659
+ executeCommand,
653
660
  addPersisterListener,
654
661
  delPersisterListener,
655
662
  onIgnoredError,
@@ -671,7 +678,7 @@ const createTabularPersister = (
671
678
  ) => {
672
679
  const [refreshSchema, loadTable, saveTable, transaction] =
673
680
  getCommandFunctions(
674
- cmd,
681
+ executeCommand,
675
682
  managedTableNames,
676
683
  querySchema,
677
684
  onIgnoredError,
@@ -877,14 +884,15 @@ const getConfigStructures = (configOrStoreTableName) => {
877
884
  return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
878
885
  };
879
886
 
880
- const createSqlitePersister = (
887
+ const createCustomSqlitePersister = (
881
888
  store,
882
889
  configOrStoreTableName,
883
- rawCmd,
884
- addUpdateListener,
885
- delUpdateListener,
890
+ rawExecuteCommand,
891
+ addChangeListener,
892
+ delChangeListener,
886
893
  onSqlCommand,
887
894
  onIgnoredError,
895
+ destroy,
888
896
  persist,
889
897
  thing,
890
898
  getThing = 'getDb',
@@ -893,7 +901,7 @@ const createSqlitePersister = (
893
901
  let dataVersion;
894
902
  let schemaVersion;
895
903
  let totalChanges;
896
- const cmd = getWrappedCommand(rawCmd, onSqlCommand);
904
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
897
905
  const [
898
906
  isJson,
899
907
  autoLoadIntervalSeconds,
@@ -905,7 +913,7 @@ const createSqlitePersister = (
905
913
  const startPolling = () =>
906
914
  (interval = startInterval(async () => {
907
915
  try {
908
- const [{d, s, c}] = await cmd(
916
+ const [{d, s, c}] = await executeCommand(
909
917
  // eslint-disable-next-line max-len
910
918
  `${SELECT} ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
911
919
  );
@@ -923,7 +931,7 @@ const createSqlitePersister = (
923
931
  dataVersion = schemaVersion = totalChanges = null;
924
932
  stopInterval(interval);
925
933
  };
926
- const listeningHandle = addUpdateListener((tableName) => {
934
+ const listeningHandle = addChangeListener((tableName) => {
927
935
  if (managedTableNamesSet.has(tableName)) {
928
936
  stopPolling();
929
937
  listener();
@@ -933,23 +941,23 @@ const createSqlitePersister = (
933
941
  startPolling();
934
942
  return () => {
935
943
  stopPolling();
936
- delUpdateListener(listeningHandle);
944
+ delChangeListener(listeningHandle);
937
945
  };
938
946
  };
939
947
  const delPersisterListener = (stopPollingAndDelUpdateListener) =>
940
948
  stopPollingAndDelUpdateListener();
941
949
  return (isJson ? createJsonPersister : createTabularPersister)(
942
950
  store,
943
- cmd,
951
+ executeCommand,
944
952
  addPersisterListener,
945
953
  delPersisterListener,
946
954
  onIgnoredError,
947
- () => 0,
955
+ destroy,
948
956
  persist,
949
957
  defaultedConfig,
950
958
  collValues(managedTableNamesSet),
951
- async (cmd2, managedTableNames) =>
952
- await cmd2(
959
+ async (executeCommand2, managedTableNames) =>
960
+ await executeCommand2(
953
961
  // eslint-disable-next-line max-len
954
962
  `${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`,
955
963
  managedTableNames,
@@ -972,12 +980,12 @@ const createSqliteWasmPersister = (
972
980
  onSqlCommand,
973
981
  onIgnoredError,
974
982
  ) =>
975
- createSqlitePersister(
983
+ createCustomSqlitePersister(
976
984
  store,
977
985
  configOrStoreTableName,
978
- async (sql, args = []) =>
986
+ async (sql, params = []) =>
979
987
  db
980
- .exec(sql, {bind: args, rowMode: 'object', returnValue: 'resultRows'})
988
+ .exec(sql, {bind: params, rowMode: 'object', returnValue: 'resultRows'})
981
989
  .map((row) => ({...row})),
982
990
  (listener) =>
983
991
  sqlite3.capi.sqlite3_update_hook(
@@ -988,6 +996,7 @@ const createSqliteWasmPersister = (
988
996
  () => sqlite3.capi.sqlite3_update_hook(db, () => 0, 0),
989
997
  onSqlCommand,
990
998
  onIgnoredError,
999
+ () => 0,
991
1000
  3,
992
1001
  // StoreOrMergeableStore,
993
1002
  db,
@@ -48,13 +48,13 @@ const DATA_VERSION = 'data_version';
48
48
  const SCHEMA_VERSION = 'schema_version';
49
49
  const FROM = 'FROM ';
50
50
  const PRAGMA_TABLE = 'pragma_table_';
51
- const getWrappedCommand = (rawCmd, onSqlCommand) =>
51
+ const getWrappedCommand = (executeCommand, onSqlCommand) =>
52
52
  onSqlCommand
53
- ? async (sql, args) => {
54
- onSqlCommand(sql, args);
55
- return await rawCmd(sql, args);
53
+ ? async (sql, params) => {
54
+ onSqlCommand(sql, params);
55
+ return await executeCommand(sql, params);
56
56
  }
57
- : rawCmd;
57
+ : executeCommand;
58
58
  const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
59
59
  const getPlaceholders = (array) =>
60
60
  arrayJoin(
@@ -317,7 +317,7 @@ const setNew = (entryOrEntries) =>
317
317
  const setAdd = (set, value) => set?.add(value);
318
318
 
319
319
  const getCommandFunctions = (
320
- cmd,
320
+ databaseExecuteCommand,
321
321
  managedTableNames,
322
322
  querySchema,
323
323
  onIgnoredError,
@@ -331,8 +331,9 @@ const getCommandFunctions = (
331
331
  collHas(mapGet(schemaMap, tableName), rowIdColumnName);
332
332
  const refreshSchema = async () => {
333
333
  collClear(schemaMap);
334
- arrayMap(await querySchema(cmd, managedTableNames), ({tn, cn}) =>
335
- setAdd(mapEnsure(schemaMap, tn, setNew), cn),
334
+ arrayMap(
335
+ await querySchema(databaseExecuteCommand, managedTableNames),
336
+ ({tn, cn}) => setAdd(mapEnsure(schemaMap, tn, setNew), cn),
336
337
  );
337
338
  };
338
339
  const loadTable = async (tableName, rowIdColumnName) =>
@@ -340,7 +341,9 @@ const getCommandFunctions = (
340
341
  ? objNew(
341
342
  arrayFilter(
342
343
  arrayMap(
343
- await cmd(SELECT_STAR_FROM + escapeId(tableName)),
344
+ await databaseExecuteCommand(
345
+ SELECT_STAR_FROM + escapeId(tableName),
346
+ ),
344
347
  (row) => [
345
348
  row[rowIdColumnName],
346
349
  decode
@@ -373,7 +376,7 @@ const getCommandFunctions = (
373
376
  arrayIsEmpty(tableColumnNames) &&
374
377
  collHas(schemaMap, tableName)
375
378
  ) {
376
- await cmd('DROP ' + TABLE + escapeId(tableName));
379
+ await databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
377
380
  mapSet(schemaMap, tableName);
378
381
  return;
379
382
  }
@@ -381,7 +384,7 @@ const getCommandFunctions = (
381
384
  const currentColumnNames = setNew(collValues(tableSchemaColumns));
382
385
  if (!arrayIsEmpty(tableColumnNames)) {
383
386
  if (!collHas(schemaMap, tableName)) {
384
- await cmd(
387
+ await databaseExecuteCommand(
385
388
  'CREATE ' +
386
389
  TABLE +
387
390
  escapeId(tableName) +
@@ -403,7 +406,7 @@ const getCommandFunctions = (
403
406
  [rowIdColumnName, ...tableColumnNames],
404
407
  async (columnName, index) => {
405
408
  if (!collDel(currentColumnNames, columnName)) {
406
- await cmd(
409
+ await databaseExecuteCommand(
407
410
  ALTER_TABLE +
408
411
  escapeId(tableName) +
409
412
  'ADD' +
@@ -411,7 +414,7 @@ const getCommandFunctions = (
411
414
  columnType,
412
415
  );
413
416
  if (index == 0) {
414
- await cmd(
417
+ await databaseExecuteCommand(
415
418
  'CREATE UNIQUE INDEX pk ON ' +
416
419
  escapeId(tableName) +
417
420
  `(${escapeId(rowIdColumnName)})`,
@@ -428,7 +431,7 @@ const getCommandFunctions = (
428
431
  ...(!partial && deleteEmptyColumns
429
432
  ? arrayMap(collValues(currentColumnNames), async (columnName) => {
430
433
  if (columnName != rowIdColumnName) {
431
- await cmd(
434
+ await databaseExecuteCommand(
432
435
  ALTER_TABLE +
433
436
  escapeId(tableName) +
434
437
  'DROP' +
@@ -441,12 +444,14 @@ const getCommandFunctions = (
441
444
  ]);
442
445
  if (partial) {
443
446
  if (isUndefined(content)) {
444
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
447
+ await databaseExecuteCommand(
448
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
449
+ );
445
450
  } else {
446
451
  await promiseAll(
447
452
  objToArray(content, async (row, rowId) => {
448
453
  if (isUndefined(row)) {
449
- await cmd(
454
+ await databaseExecuteCommand(
450
455
  DELETE_FROM +
451
456
  escapeId(tableName) +
452
457
  WHERE +
@@ -456,7 +461,7 @@ const getCommandFunctions = (
456
461
  );
457
462
  } else if (!arrayIsEmpty(tableColumnNames)) {
458
463
  await upsert(
459
- cmd,
464
+ databaseExecuteCommand,
460
465
  tableName,
461
466
  rowIdColumnName,
462
467
  objIds(row),
@@ -478,11 +483,11 @@ const getCommandFunctions = (
478
483
  collValues(mapGet(schemaMap, tableName)),
479
484
  (columnName) => columnName != rowIdColumnName,
480
485
  );
481
- const args = [];
486
+ const params = [];
482
487
  const deleteRowIds = [];
483
488
  objToArray(content ?? {}, (row, rowId) => {
484
489
  arrayPush(
485
- args,
490
+ params,
486
491
  rowId,
487
492
  ...arrayMap(changingColumnNames, (cellId) =>
488
493
  encode ? encode(row?.[cellId]) : row?.[cellId],
@@ -491,14 +496,14 @@ const getCommandFunctions = (
491
496
  arrayPush(deleteRowIds, rowId);
492
497
  });
493
498
  await upsert(
494
- cmd,
499
+ databaseExecuteCommand,
495
500
  tableName,
496
501
  rowIdColumnName,
497
502
  changingColumnNames,
498
- args,
503
+ params,
499
504
  orReplace,
500
505
  );
501
- await cmd(
506
+ await databaseExecuteCommand(
502
507
  DELETE_FROM +
503
508
  escapeId(tableName) +
504
509
  WHERE +
@@ -507,32 +512,34 @@ const getCommandFunctions = (
507
512
  deleteRowIds,
508
513
  );
509
514
  } else if (collHas(schemaMap, tableName)) {
510
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
515
+ await databaseExecuteCommand(
516
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
517
+ );
511
518
  }
512
519
  }
513
520
  };
514
521
  const transaction = async (actions) => {
515
522
  let result;
516
- await cmd('BEGIN');
523
+ await databaseExecuteCommand('BEGIN');
517
524
  try {
518
525
  result = await actions();
519
526
  } catch (error) {
520
527
  onIgnoredError?.(error);
521
528
  }
522
- await cmd('END');
529
+ await databaseExecuteCommand('END');
523
530
  return result;
524
531
  };
525
532
  return [refreshSchema, loadTable, saveTable, transaction];
526
533
  };
527
534
  const upsert = async (
528
- cmd,
535
+ executeCommand,
529
536
  tableName,
530
537
  rowIdColumnName,
531
538
  changingColumnNames,
532
- args,
539
+ params,
533
540
  orReplace = 0,
534
541
  ) =>
535
- await cmd(
542
+ await executeCommand(
536
543
  'INSERT ' +
537
544
  (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
538
545
  'INTO' +
@@ -546,7 +553,7 @@ const upsert = async (
546
553
  ),
547
554
  ) +
548
555
  ')VALUES' +
549
- getUpsertPlaceholders(args, size(changingColumnNames) + 1) +
556
+ getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
550
557
  (orReplace
551
558
  ? EMPTY_STRING
552
559
  : 'ON CONFLICT(' +
@@ -560,7 +567,7 @@ const upsert = async (
560
567
  ),
561
568
  COMMA,
562
569
  )),
563
- arrayMap(args, (arg) => arg ?? null),
570
+ arrayMap(params, (param) => param ?? null),
564
571
  );
565
572
  const getUpsertPlaceholders = (array, columnCount) =>
566
573
  arrayJoin(
@@ -582,7 +589,7 @@ const getUpsertPlaceholders = (array, columnCount) =>
582
589
 
583
590
  const createJsonPersister = (
584
591
  store,
585
- cmd,
592
+ executeCommand,
586
593
  addPersisterListener,
587
594
  delPersisterListener,
588
595
  onIgnoredError,
@@ -598,7 +605,7 @@ const createJsonPersister = (
598
605
  ) => {
599
606
  const [refreshSchema, loadTable, saveTable, transaction] =
600
607
  getCommandFunctions(
601
- cmd,
608
+ executeCommand,
602
609
  managedTableNames,
603
610
  querySchema,
604
611
  onIgnoredError,
@@ -650,7 +657,7 @@ const createJsonPersister = (
650
657
 
651
658
  const createTabularPersister = (
652
659
  store,
653
- cmd,
660
+ executeCommand,
654
661
  addPersisterListener,
655
662
  delPersisterListener,
656
663
  onIgnoredError,
@@ -672,7 +679,7 @@ const createTabularPersister = (
672
679
  ) => {
673
680
  const [refreshSchema, loadTable, saveTable, transaction] =
674
681
  getCommandFunctions(
675
- cmd,
682
+ executeCommand,
676
683
  managedTableNames,
677
684
  querySchema,
678
685
  onIgnoredError,
@@ -878,14 +885,15 @@ const getConfigStructures = (configOrStoreTableName) => {
878
885
  return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
879
886
  };
880
887
 
881
- const createSqlitePersister = (
888
+ const createCustomSqlitePersister = (
882
889
  store,
883
890
  configOrStoreTableName,
884
- rawCmd,
885
- addUpdateListener,
886
- delUpdateListener,
891
+ rawExecuteCommand,
892
+ addChangeListener,
893
+ delChangeListener,
887
894
  onSqlCommand,
888
895
  onIgnoredError,
896
+ destroy,
889
897
  persist,
890
898
  thing,
891
899
  getThing = 'getDb',
@@ -894,7 +902,7 @@ const createSqlitePersister = (
894
902
  let dataVersion;
895
903
  let schemaVersion;
896
904
  let totalChanges;
897
- const cmd = getWrappedCommand(rawCmd, onSqlCommand);
905
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
898
906
  const [
899
907
  isJson,
900
908
  autoLoadIntervalSeconds,
@@ -906,7 +914,7 @@ const createSqlitePersister = (
906
914
  const startPolling = () =>
907
915
  (interval = startInterval(async () => {
908
916
  try {
909
- const [{d, s, c}] = await cmd(
917
+ const [{d, s, c}] = await executeCommand(
910
918
  // eslint-disable-next-line max-len
911
919
  `${SELECT} ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
912
920
  );
@@ -924,7 +932,7 @@ const createSqlitePersister = (
924
932
  dataVersion = schemaVersion = totalChanges = null;
925
933
  stopInterval(interval);
926
934
  };
927
- const listeningHandle = addUpdateListener((tableName) => {
935
+ const listeningHandle = addChangeListener((tableName) => {
928
936
  if (managedTableNamesSet.has(tableName)) {
929
937
  stopPolling();
930
938
  listener();
@@ -934,23 +942,23 @@ const createSqlitePersister = (
934
942
  startPolling();
935
943
  return () => {
936
944
  stopPolling();
937
- delUpdateListener(listeningHandle);
945
+ delChangeListener(listeningHandle);
938
946
  };
939
947
  };
940
948
  const delPersisterListener = (stopPollingAndDelUpdateListener) =>
941
949
  stopPollingAndDelUpdateListener();
942
950
  return (isJson ? createJsonPersister : createTabularPersister)(
943
951
  store,
944
- cmd,
952
+ executeCommand,
945
953
  addPersisterListener,
946
954
  delPersisterListener,
947
955
  onIgnoredError,
948
- () => 0,
956
+ destroy,
949
957
  persist,
950
958
  defaultedConfig,
951
959
  collValues(managedTableNamesSet),
952
- async (cmd2, managedTableNames) =>
953
- await cmd2(
960
+ async (executeCommand2, managedTableNames) =>
961
+ await executeCommand2(
954
962
  // eslint-disable-next-line max-len
955
963
  `${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`,
956
964
  managedTableNames,
@@ -973,12 +981,12 @@ const createSqlite3Persister = (
973
981
  onSqlCommand,
974
982
  onIgnoredError,
975
983
  ) =>
976
- createSqlitePersister(
984
+ createCustomSqlitePersister(
977
985
  store,
978
986
  configOrStoreTableName,
979
- async (sql, args = []) =>
987
+ async (sql, params = []) =>
980
988
  await promiseNew((resolve, reject) =>
981
- db.all(sql, args, (error, rows) =>
989
+ db.all(sql, params, (error, rows) =>
982
990
  error ? reject(error) : resolve(rows),
983
991
  ),
984
992
  ),
@@ -990,6 +998,7 @@ const createSqlite3Persister = (
990
998
  (observer) => db.off(CHANGE, observer),
991
999
  onSqlCommand,
992
1000
  onIgnoredError,
1001
+ () => 0,
993
1002
  3,
994
1003
  // StoreOrMergeableStore,
995
1004
  db,