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,
@@ -987,14 +995,15 @@
987
995
  onSqlCommand,
988
996
  onIgnoredError,
989
997
  ) =>
990
- createSqlitePersister(
998
+ createCustomSqlitePersister(
991
999
  store,
992
1000
  configOrStoreTableName,
993
- async (sql, args = []) => await db.execO(sql, args),
1001
+ async (sql, params = []) => await db.execO(sql, params),
994
1002
  (listener) => db.onUpdate((_, _2, tableName) => listener(tableName)),
995
1003
  (removeListener) => removeListener(),
996
1004
  onSqlCommand,
997
1005
  onIgnoredError,
1006
+ () => 0,
998
1007
  1,
999
1008
  // StoreOnly,
1000
1009
  db,
@@ -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,
@@ -987,14 +995,15 @@
987
995
  onSqlCommand,
988
996
  onIgnoredError,
989
997
  ) =>
990
- createSqlitePersister(
998
+ createCustomSqlitePersister(
991
999
  store,
992
1000
  configOrStoreTableName,
993
- async (sql, args = []) => await db.execO(sql, args),
1001
+ async (sql, params = []) => await db.execO(sql, params),
994
1002
  (listener) => db.onUpdate((_, _2, tableName) => listener(tableName)),
995
1003
  (removeListener) => removeListener(),
996
1004
  onSqlCommand,
997
1005
  onIgnoredError,
1006
+ () => 0,
998
1007
  1,
999
1008
  // StoreOnly,
1000
1009
  db,