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
@@ -56,13 +56,13 @@
56
56
  const SCHEMA_VERSION = 'schema_version';
57
57
  const FROM = 'FROM ';
58
58
  const PRAGMA_TABLE = 'pragma_table_';
59
- const getWrappedCommand = (rawCmd, onSqlCommand) =>
59
+ const getWrappedCommand = (executeCommand, onSqlCommand) =>
60
60
  onSqlCommand
61
- ? async (sql, args) => {
62
- onSqlCommand(sql, args);
63
- return await rawCmd(sql, args);
61
+ ? async (sql, params) => {
62
+ onSqlCommand(sql, params);
63
+ return await executeCommand(sql, params);
64
64
  }
65
- : rawCmd;
65
+ : executeCommand;
66
66
  const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
67
67
  const getPlaceholders = (array) =>
68
68
  arrayJoin(
@@ -329,7 +329,7 @@
329
329
  const setAdd = (set, value) => set?.add(value);
330
330
 
331
331
  const getCommandFunctions = (
332
- cmd,
332
+ databaseExecuteCommand,
333
333
  managedTableNames,
334
334
  querySchema,
335
335
  onIgnoredError,
@@ -343,8 +343,9 @@
343
343
  collHas(mapGet(schemaMap, tableName), rowIdColumnName);
344
344
  const refreshSchema = async () => {
345
345
  collClear(schemaMap);
346
- arrayMap(await querySchema(cmd, managedTableNames), ({tn, cn}) =>
347
- setAdd(mapEnsure(schemaMap, tn, setNew), cn),
346
+ arrayMap(
347
+ await querySchema(databaseExecuteCommand, managedTableNames),
348
+ ({tn, cn}) => setAdd(mapEnsure(schemaMap, tn, setNew), cn),
348
349
  );
349
350
  };
350
351
  const loadTable = async (tableName, rowIdColumnName) =>
@@ -352,7 +353,9 @@
352
353
  ? objNew(
353
354
  arrayFilter(
354
355
  arrayMap(
355
- await cmd(SELECT_STAR_FROM + escapeId(tableName)),
356
+ await databaseExecuteCommand(
357
+ SELECT_STAR_FROM + escapeId(tableName),
358
+ ),
356
359
  (row) => [
357
360
  row[rowIdColumnName],
358
361
  decode
@@ -385,7 +388,7 @@
385
388
  arrayIsEmpty(tableColumnNames) &&
386
389
  collHas(schemaMap, tableName)
387
390
  ) {
388
- await cmd('DROP ' + TABLE + escapeId(tableName));
391
+ await databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
389
392
  mapSet(schemaMap, tableName);
390
393
  return;
391
394
  }
@@ -393,7 +396,7 @@
393
396
  const currentColumnNames = setNew(collValues(tableSchemaColumns));
394
397
  if (!arrayIsEmpty(tableColumnNames)) {
395
398
  if (!collHas(schemaMap, tableName)) {
396
- await cmd(
399
+ await databaseExecuteCommand(
397
400
  'CREATE ' +
398
401
  TABLE +
399
402
  escapeId(tableName) +
@@ -415,7 +418,7 @@
415
418
  [rowIdColumnName, ...tableColumnNames],
416
419
  async (columnName, index) => {
417
420
  if (!collDel(currentColumnNames, columnName)) {
418
- await cmd(
421
+ await databaseExecuteCommand(
419
422
  ALTER_TABLE +
420
423
  escapeId(tableName) +
421
424
  'ADD' +
@@ -423,7 +426,7 @@
423
426
  columnType,
424
427
  );
425
428
  if (index == 0) {
426
- await cmd(
429
+ await databaseExecuteCommand(
427
430
  'CREATE UNIQUE INDEX pk ON ' +
428
431
  escapeId(tableName) +
429
432
  `(${escapeId(rowIdColumnName)})`,
@@ -440,7 +443,7 @@
440
443
  ...(!partial && deleteEmptyColumns
441
444
  ? arrayMap(collValues(currentColumnNames), async (columnName) => {
442
445
  if (columnName != rowIdColumnName) {
443
- await cmd(
446
+ await databaseExecuteCommand(
444
447
  ALTER_TABLE +
445
448
  escapeId(tableName) +
446
449
  'DROP' +
@@ -453,12 +456,14 @@
453
456
  ]);
454
457
  if (partial) {
455
458
  if (isUndefined(content)) {
456
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
459
+ await databaseExecuteCommand(
460
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
461
+ );
457
462
  } else {
458
463
  await promiseAll(
459
464
  objToArray(content, async (row, rowId) => {
460
465
  if (isUndefined(row)) {
461
- await cmd(
466
+ await databaseExecuteCommand(
462
467
  DELETE_FROM +
463
468
  escapeId(tableName) +
464
469
  WHERE +
@@ -468,7 +473,7 @@
468
473
  );
469
474
  } else if (!arrayIsEmpty(tableColumnNames)) {
470
475
  await upsert(
471
- cmd,
476
+ databaseExecuteCommand,
472
477
  tableName,
473
478
  rowIdColumnName,
474
479
  objIds(row),
@@ -490,11 +495,11 @@
490
495
  collValues(mapGet(schemaMap, tableName)),
491
496
  (columnName) => columnName != rowIdColumnName,
492
497
  );
493
- const args = [];
498
+ const params = [];
494
499
  const deleteRowIds = [];
495
500
  objToArray(content ?? {}, (row, rowId) => {
496
501
  arrayPush(
497
- args,
502
+ params,
498
503
  rowId,
499
504
  ...arrayMap(changingColumnNames, (cellId) =>
500
505
  encode ? encode(row?.[cellId]) : row?.[cellId],
@@ -503,14 +508,14 @@
503
508
  arrayPush(deleteRowIds, rowId);
504
509
  });
505
510
  await upsert(
506
- cmd,
511
+ databaseExecuteCommand,
507
512
  tableName,
508
513
  rowIdColumnName,
509
514
  changingColumnNames,
510
- args,
515
+ params,
511
516
  orReplace,
512
517
  );
513
- await cmd(
518
+ await databaseExecuteCommand(
514
519
  DELETE_FROM +
515
520
  escapeId(tableName) +
516
521
  WHERE +
@@ -519,32 +524,34 @@
519
524
  deleteRowIds,
520
525
  );
521
526
  } else if (collHas(schemaMap, tableName)) {
522
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
527
+ await databaseExecuteCommand(
528
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
529
+ );
523
530
  }
524
531
  }
525
532
  };
526
533
  const transaction = async (actions) => {
527
534
  let result;
528
- await cmd('BEGIN');
535
+ await databaseExecuteCommand('BEGIN');
529
536
  try {
530
537
  result = await actions();
531
538
  } catch (error) {
532
539
  onIgnoredError?.(error);
533
540
  }
534
- await cmd('END');
541
+ await databaseExecuteCommand('END');
535
542
  return result;
536
543
  };
537
544
  return [refreshSchema, loadTable, saveTable, transaction];
538
545
  };
539
546
  const upsert = async (
540
- cmd,
547
+ executeCommand,
541
548
  tableName,
542
549
  rowIdColumnName,
543
550
  changingColumnNames,
544
- args,
551
+ params,
545
552
  orReplace = 0,
546
553
  ) =>
547
- await cmd(
554
+ await executeCommand(
548
555
  'INSERT ' +
549
556
  (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
550
557
  'INTO' +
@@ -558,7 +565,7 @@
558
565
  ),
559
566
  ) +
560
567
  ')VALUES' +
561
- getUpsertPlaceholders(args, size(changingColumnNames) + 1) +
568
+ getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
562
569
  (orReplace
563
570
  ? EMPTY_STRING
564
571
  : 'ON CONFLICT(' +
@@ -572,7 +579,7 @@
572
579
  ),
573
580
  COMMA,
574
581
  )),
575
- arrayMap(args, (arg) => arg ?? null),
582
+ arrayMap(params, (param) => param ?? null),
576
583
  );
577
584
  const getUpsertPlaceholders = (array, columnCount) =>
578
585
  arrayJoin(
@@ -594,7 +601,7 @@
594
601
 
595
602
  const createJsonPersister = (
596
603
  store,
597
- cmd,
604
+ executeCommand,
598
605
  addPersisterListener,
599
606
  delPersisterListener,
600
607
  onIgnoredError,
@@ -610,7 +617,7 @@
610
617
  ) => {
611
618
  const [refreshSchema, loadTable, saveTable, transaction] =
612
619
  getCommandFunctions(
613
- cmd,
620
+ executeCommand,
614
621
  managedTableNames,
615
622
  querySchema,
616
623
  onIgnoredError,
@@ -662,7 +669,7 @@
662
669
 
663
670
  const createTabularPersister = (
664
671
  store,
665
- cmd,
672
+ executeCommand,
666
673
  addPersisterListener,
667
674
  delPersisterListener,
668
675
  onIgnoredError,
@@ -684,7 +691,7 @@
684
691
  ) => {
685
692
  const [refreshSchema, loadTable, saveTable, transaction] =
686
693
  getCommandFunctions(
687
- cmd,
694
+ executeCommand,
688
695
  managedTableNames,
689
696
  querySchema,
690
697
  onIgnoredError,
@@ -893,14 +900,15 @@
893
900
  return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
894
901
  };
895
902
 
896
- const createSqlitePersister = (
903
+ const createCustomSqlitePersister = (
897
904
  store,
898
905
  configOrStoreTableName,
899
- rawCmd,
900
- addUpdateListener,
901
- delUpdateListener,
906
+ rawExecuteCommand,
907
+ addChangeListener,
908
+ delChangeListener,
902
909
  onSqlCommand,
903
910
  onIgnoredError,
911
+ destroy,
904
912
  persist,
905
913
  thing,
906
914
  getThing = 'getDb',
@@ -909,7 +917,7 @@
909
917
  let dataVersion;
910
918
  let schemaVersion;
911
919
  let totalChanges;
912
- const cmd = getWrappedCommand(rawCmd, onSqlCommand);
920
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
913
921
  const [
914
922
  isJson,
915
923
  autoLoadIntervalSeconds,
@@ -921,7 +929,7 @@
921
929
  const startPolling = () =>
922
930
  (interval = startInterval(async () => {
923
931
  try {
924
- const [{d, s, c}] = await cmd(
932
+ const [{d, s, c}] = await executeCommand(
925
933
  // eslint-disable-next-line max-len
926
934
  `${SELECT} ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
927
935
  );
@@ -939,7 +947,7 @@
939
947
  dataVersion = schemaVersion = totalChanges = null;
940
948
  stopInterval(interval);
941
949
  };
942
- const listeningHandle = addUpdateListener((tableName) => {
950
+ const listeningHandle = addChangeListener((tableName) => {
943
951
  if (managedTableNamesSet.has(tableName)) {
944
952
  stopPolling();
945
953
  listener();
@@ -949,23 +957,23 @@
949
957
  startPolling();
950
958
  return () => {
951
959
  stopPolling();
952
- delUpdateListener(listeningHandle);
960
+ delChangeListener(listeningHandle);
953
961
  };
954
962
  };
955
963
  const delPersisterListener = (stopPollingAndDelUpdateListener) =>
956
964
  stopPollingAndDelUpdateListener();
957
965
  return (isJson ? createJsonPersister : createTabularPersister)(
958
966
  store,
959
- cmd,
967
+ executeCommand,
960
968
  addPersisterListener,
961
969
  delPersisterListener,
962
970
  onIgnoredError,
963
- () => 0,
971
+ destroy,
964
972
  persist,
965
973
  defaultedConfig,
966
974
  collValues(managedTableNamesSet),
967
- async (cmd2, managedTableNames) =>
968
- await cmd2(
975
+ async (executeCommand2, managedTableNames) =>
976
+ await executeCommand2(
969
977
  // eslint-disable-next-line max-len
970
978
  `${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`,
971
979
  managedTableNames,
@@ -988,12 +996,16 @@
988
996
  onSqlCommand,
989
997
  onIgnoredError,
990
998
  ) =>
991
- createSqlitePersister(
999
+ createCustomSqlitePersister(
992
1000
  store,
993
1001
  configOrStoreTableName,
994
- async (sql, args = []) =>
1002
+ async (sql, params = []) =>
995
1003
  db
996
- .exec(sql, {bind: args, rowMode: 'object', returnValue: 'resultRows'})
1004
+ .exec(sql, {
1005
+ bind: params,
1006
+ rowMode: 'object',
1007
+ returnValue: 'resultRows',
1008
+ })
997
1009
  .map((row) => ({...row})),
998
1010
  (listener) =>
999
1011
  sqlite3.capi.sqlite3_update_hook(
@@ -1004,6 +1016,7 @@
1004
1016
  () => sqlite3.capi.sqlite3_update_hook(db, () => 0, 0),
1005
1017
  onSqlCommand,
1006
1018
  onIgnoredError,
1019
+ () => 0,
1007
1020
  3,
1008
1021
  // StoreOrMergeableStore,
1009
1022
  db,
@@ -57,13 +57,13 @@
57
57
  const SCHEMA_VERSION = 'schema_version';
58
58
  const FROM = 'FROM ';
59
59
  const PRAGMA_TABLE = 'pragma_table_';
60
- const getWrappedCommand = (rawCmd, onSqlCommand) =>
60
+ const getWrappedCommand = (executeCommand, onSqlCommand) =>
61
61
  onSqlCommand
62
- ? async (sql, args) => {
63
- onSqlCommand(sql, args);
64
- return await rawCmd(sql, args);
62
+ ? async (sql, params) => {
63
+ onSqlCommand(sql, params);
64
+ return await executeCommand(sql, params);
65
65
  }
66
- : rawCmd;
66
+ : executeCommand;
67
67
  const escapeId = (str) => `"${str.replace(/"/g, '""')}"`;
68
68
  const getPlaceholders = (array) =>
69
69
  arrayJoin(
@@ -330,7 +330,7 @@
330
330
  const setAdd = (set, value) => set?.add(value);
331
331
 
332
332
  const getCommandFunctions = (
333
- cmd,
333
+ databaseExecuteCommand,
334
334
  managedTableNames,
335
335
  querySchema,
336
336
  onIgnoredError,
@@ -344,8 +344,9 @@
344
344
  collHas(mapGet(schemaMap, tableName), rowIdColumnName);
345
345
  const refreshSchema = async () => {
346
346
  collClear(schemaMap);
347
- arrayMap(await querySchema(cmd, managedTableNames), ({tn, cn}) =>
348
- setAdd(mapEnsure(schemaMap, tn, setNew), cn),
347
+ arrayMap(
348
+ await querySchema(databaseExecuteCommand, managedTableNames),
349
+ ({tn, cn}) => setAdd(mapEnsure(schemaMap, tn, setNew), cn),
349
350
  );
350
351
  };
351
352
  const loadTable = async (tableName, rowIdColumnName) =>
@@ -353,7 +354,9 @@
353
354
  ? objNew(
354
355
  arrayFilter(
355
356
  arrayMap(
356
- await cmd(SELECT_STAR_FROM + escapeId(tableName)),
357
+ await databaseExecuteCommand(
358
+ SELECT_STAR_FROM + escapeId(tableName),
359
+ ),
357
360
  (row) => [
358
361
  row[rowIdColumnName],
359
362
  decode
@@ -386,7 +389,7 @@
386
389
  arrayIsEmpty(tableColumnNames) &&
387
390
  collHas(schemaMap, tableName)
388
391
  ) {
389
- await cmd('DROP ' + TABLE + escapeId(tableName));
392
+ await databaseExecuteCommand('DROP ' + TABLE + escapeId(tableName));
390
393
  mapSet(schemaMap, tableName);
391
394
  return;
392
395
  }
@@ -394,7 +397,7 @@
394
397
  const currentColumnNames = setNew(collValues(tableSchemaColumns));
395
398
  if (!arrayIsEmpty(tableColumnNames)) {
396
399
  if (!collHas(schemaMap, tableName)) {
397
- await cmd(
400
+ await databaseExecuteCommand(
398
401
  'CREATE ' +
399
402
  TABLE +
400
403
  escapeId(tableName) +
@@ -416,7 +419,7 @@
416
419
  [rowIdColumnName, ...tableColumnNames],
417
420
  async (columnName, index) => {
418
421
  if (!collDel(currentColumnNames, columnName)) {
419
- await cmd(
422
+ await databaseExecuteCommand(
420
423
  ALTER_TABLE +
421
424
  escapeId(tableName) +
422
425
  'ADD' +
@@ -424,7 +427,7 @@
424
427
  columnType,
425
428
  );
426
429
  if (index == 0) {
427
- await cmd(
430
+ await databaseExecuteCommand(
428
431
  'CREATE UNIQUE INDEX pk ON ' +
429
432
  escapeId(tableName) +
430
433
  `(${escapeId(rowIdColumnName)})`,
@@ -441,7 +444,7 @@
441
444
  ...(!partial && deleteEmptyColumns
442
445
  ? arrayMap(collValues(currentColumnNames), async (columnName) => {
443
446
  if (columnName != rowIdColumnName) {
444
- await cmd(
447
+ await databaseExecuteCommand(
445
448
  ALTER_TABLE +
446
449
  escapeId(tableName) +
447
450
  'DROP' +
@@ -454,12 +457,14 @@
454
457
  ]);
455
458
  if (partial) {
456
459
  if (isUndefined(content)) {
457
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
460
+ await databaseExecuteCommand(
461
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
462
+ );
458
463
  } else {
459
464
  await promiseAll(
460
465
  objToArray(content, async (row, rowId) => {
461
466
  if (isUndefined(row)) {
462
- await cmd(
467
+ await databaseExecuteCommand(
463
468
  DELETE_FROM +
464
469
  escapeId(tableName) +
465
470
  WHERE +
@@ -469,7 +474,7 @@
469
474
  );
470
475
  } else if (!arrayIsEmpty(tableColumnNames)) {
471
476
  await upsert(
472
- cmd,
477
+ databaseExecuteCommand,
473
478
  tableName,
474
479
  rowIdColumnName,
475
480
  objIds(row),
@@ -491,11 +496,11 @@
491
496
  collValues(mapGet(schemaMap, tableName)),
492
497
  (columnName) => columnName != rowIdColumnName,
493
498
  );
494
- const args = [];
499
+ const params = [];
495
500
  const deleteRowIds = [];
496
501
  objToArray(content ?? {}, (row, rowId) => {
497
502
  arrayPush(
498
- args,
503
+ params,
499
504
  rowId,
500
505
  ...arrayMap(changingColumnNames, (cellId) =>
501
506
  encode ? encode(row?.[cellId]) : row?.[cellId],
@@ -504,14 +509,14 @@
504
509
  arrayPush(deleteRowIds, rowId);
505
510
  });
506
511
  await upsert(
507
- cmd,
512
+ databaseExecuteCommand,
508
513
  tableName,
509
514
  rowIdColumnName,
510
515
  changingColumnNames,
511
- args,
516
+ params,
512
517
  orReplace,
513
518
  );
514
- await cmd(
519
+ await databaseExecuteCommand(
515
520
  DELETE_FROM +
516
521
  escapeId(tableName) +
517
522
  WHERE +
@@ -520,32 +525,34 @@
520
525
  deleteRowIds,
521
526
  );
522
527
  } else if (collHas(schemaMap, tableName)) {
523
- await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' true');
528
+ await databaseExecuteCommand(
529
+ DELETE_FROM + escapeId(tableName) + WHERE + ' true',
530
+ );
524
531
  }
525
532
  }
526
533
  };
527
534
  const transaction = async (actions) => {
528
535
  let result;
529
- await cmd('BEGIN');
536
+ await databaseExecuteCommand('BEGIN');
530
537
  try {
531
538
  result = await actions();
532
539
  } catch (error) {
533
540
  onIgnoredError?.(error);
534
541
  }
535
- await cmd('END');
542
+ await databaseExecuteCommand('END');
536
543
  return result;
537
544
  };
538
545
  return [refreshSchema, loadTable, saveTable, transaction];
539
546
  };
540
547
  const upsert = async (
541
- cmd,
548
+ executeCommand,
542
549
  tableName,
543
550
  rowIdColumnName,
544
551
  changingColumnNames,
545
- args,
552
+ params,
546
553
  orReplace = 0,
547
554
  ) =>
548
- await cmd(
555
+ await executeCommand(
549
556
  'INSERT ' +
550
557
  (orReplace ? 'OR REPLACE ' : EMPTY_STRING) +
551
558
  'INTO' +
@@ -559,7 +566,7 @@
559
566
  ),
560
567
  ) +
561
568
  ')VALUES' +
562
- getUpsertPlaceholders(args, size(changingColumnNames) + 1) +
569
+ getUpsertPlaceholders(params, size(changingColumnNames) + 1) +
563
570
  (orReplace
564
571
  ? EMPTY_STRING
565
572
  : 'ON CONFLICT(' +
@@ -573,7 +580,7 @@
573
580
  ),
574
581
  COMMA,
575
582
  )),
576
- arrayMap(args, (arg) => arg ?? null),
583
+ arrayMap(params, (param) => param ?? null),
577
584
  );
578
585
  const getUpsertPlaceholders = (array, columnCount) =>
579
586
  arrayJoin(
@@ -595,7 +602,7 @@
595
602
 
596
603
  const createJsonPersister = (
597
604
  store,
598
- cmd,
605
+ executeCommand,
599
606
  addPersisterListener,
600
607
  delPersisterListener,
601
608
  onIgnoredError,
@@ -611,7 +618,7 @@
611
618
  ) => {
612
619
  const [refreshSchema, loadTable, saveTable, transaction] =
613
620
  getCommandFunctions(
614
- cmd,
621
+ executeCommand,
615
622
  managedTableNames,
616
623
  querySchema,
617
624
  onIgnoredError,
@@ -663,7 +670,7 @@
663
670
 
664
671
  const createTabularPersister = (
665
672
  store,
666
- cmd,
673
+ executeCommand,
667
674
  addPersisterListener,
668
675
  delPersisterListener,
669
676
  onIgnoredError,
@@ -685,7 +692,7 @@
685
692
  ) => {
686
693
  const [refreshSchema, loadTable, saveTable, transaction] =
687
694
  getCommandFunctions(
688
- cmd,
695
+ executeCommand,
689
696
  managedTableNames,
690
697
  querySchema,
691
698
  onIgnoredError,
@@ -894,14 +901,15 @@
894
901
  return [0, autoLoadIntervalSeconds, tabularConfig, managedTableNames];
895
902
  };
896
903
 
897
- const createSqlitePersister = (
904
+ const createCustomSqlitePersister = (
898
905
  store,
899
906
  configOrStoreTableName,
900
- rawCmd,
901
- addUpdateListener,
902
- delUpdateListener,
907
+ rawExecuteCommand,
908
+ addChangeListener,
909
+ delChangeListener,
903
910
  onSqlCommand,
904
911
  onIgnoredError,
912
+ destroy,
905
913
  persist,
906
914
  thing,
907
915
  getThing = 'getDb',
@@ -910,7 +918,7 @@
910
918
  let dataVersion;
911
919
  let schemaVersion;
912
920
  let totalChanges;
913
- const cmd = getWrappedCommand(rawCmd, onSqlCommand);
921
+ const executeCommand = getWrappedCommand(rawExecuteCommand, onSqlCommand);
914
922
  const [
915
923
  isJson,
916
924
  autoLoadIntervalSeconds,
@@ -922,7 +930,7 @@
922
930
  const startPolling = () =>
923
931
  (interval = startInterval(async () => {
924
932
  try {
925
- const [{d, s, c}] = await cmd(
933
+ const [{d, s, c}] = await executeCommand(
926
934
  // eslint-disable-next-line max-len
927
935
  `${SELECT} ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
928
936
  );
@@ -940,7 +948,7 @@
940
948
  dataVersion = schemaVersion = totalChanges = null;
941
949
  stopInterval(interval);
942
950
  };
943
- const listeningHandle = addUpdateListener((tableName) => {
951
+ const listeningHandle = addChangeListener((tableName) => {
944
952
  if (managedTableNamesSet.has(tableName)) {
945
953
  stopPolling();
946
954
  listener();
@@ -950,23 +958,23 @@
950
958
  startPolling();
951
959
  return () => {
952
960
  stopPolling();
953
- delUpdateListener(listeningHandle);
961
+ delChangeListener(listeningHandle);
954
962
  };
955
963
  };
956
964
  const delPersisterListener = (stopPollingAndDelUpdateListener) =>
957
965
  stopPollingAndDelUpdateListener();
958
966
  return (isJson ? createJsonPersister : createTabularPersister)(
959
967
  store,
960
- cmd,
968
+ executeCommand,
961
969
  addPersisterListener,
962
970
  delPersisterListener,
963
971
  onIgnoredError,
964
- () => 0,
972
+ destroy,
965
973
  persist,
966
974
  defaultedConfig,
967
975
  collValues(managedTableNamesSet),
968
- async (cmd2, managedTableNames) =>
969
- await cmd2(
976
+ async (executeCommand2, managedTableNames) =>
977
+ await executeCommand2(
970
978
  // eslint-disable-next-line max-len
971
979
  `${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`,
972
980
  managedTableNames,
@@ -989,12 +997,12 @@
989
997
  onSqlCommand,
990
998
  onIgnoredError,
991
999
  ) =>
992
- createSqlitePersister(
1000
+ createCustomSqlitePersister(
993
1001
  store,
994
1002
  configOrStoreTableName,
995
- async (sql, args = []) =>
1003
+ async (sql, params = []) =>
996
1004
  await promiseNew((resolve, reject) =>
997
- db.all(sql, args, (error, rows) =>
1005
+ db.all(sql, params, (error, rows) =>
998
1006
  error ? reject(error) : resolve(rows),
999
1007
  ),
1000
1008
  ),
@@ -1006,6 +1014,7 @@
1006
1014
  (observer) => db.off(CHANGE, observer),
1007
1015
  onSqlCommand,
1008
1016
  onIgnoredError,
1017
+ () => 0,
1009
1018
  3,
1010
1019
  // StoreOrMergeableStore,
1011
1020
  db,