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