tinybase 5.0.0-beta.5 → 5.0.0-beta.7

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 (398) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -1
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  20. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-powersync.cjs +1 -0
  24. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  26. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  30. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  32. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  33. package/lib/cjs/persisters.cjs +1 -1
  34. package/lib/cjs/persisters.cjs.gz +0 -0
  35. package/lib/cjs/store.cjs +1 -1
  36. package/lib/cjs/store.cjs.gz +0 -0
  37. package/lib/cjs/synchronizers/synchronizer-local.cjs +1 -0
  38. package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
  39. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -0
  40. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  41. package/lib/cjs/synchronizers/synchronizer-ws-server.cjs +1 -0
  42. package/lib/cjs/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
  43. package/lib/cjs/synchronizers.cjs +1 -0
  44. package/lib/cjs/synchronizers.cjs.gz +0 -0
  45. package/lib/cjs/tinybase.cjs +1 -1
  46. package/lib/cjs/tinybase.cjs.gz +0 -0
  47. package/lib/cjs/tools.cjs +1 -1
  48. package/lib/cjs/tools.cjs.gz +0 -0
  49. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  50. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  51. package/lib/cjs/ui-react.cjs +1 -1
  52. package/lib/cjs/ui-react.cjs.gz +0 -0
  53. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  54. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
  76. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  78. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  82. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  83. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  84. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  85. package/lib/cjs-es6/persisters.cjs +1 -1
  86. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  87. package/lib/cjs-es6/store.cjs +1 -1
  88. package/lib/cjs-es6/store.cjs.gz +0 -0
  89. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -0
  90. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
  91. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -0
  92. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  93. package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs +1 -0
  94. package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
  95. package/lib/cjs-es6/synchronizers.cjs +1 -0
  96. package/lib/cjs-es6/synchronizers.cjs.gz +0 -0
  97. package/lib/cjs-es6/tinybase.cjs +1 -1
  98. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  99. package/lib/cjs-es6/tools.cjs +1 -1
  100. package/lib/cjs-es6/tools.cjs.gz +0 -0
  101. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  102. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  103. package/lib/cjs-es6/ui-react.cjs +1 -1
  104. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  105. package/lib/debug/mergeable-store.js +287 -130
  106. package/lib/debug/persisters/persister-automerge.js +39 -46
  107. package/lib/debug/persisters/persister-browser.js +39 -46
  108. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +64 -60
  109. package/lib/debug/persisters/persister-electric-sql.js +64 -60
  110. package/lib/debug/persisters/persister-expo-sqlite-next.js +64 -60
  111. package/lib/debug/persisters/persister-expo-sqlite.js +64 -60
  112. package/lib/debug/persisters/persister-file.js +39 -46
  113. package/lib/debug/persisters/persister-indexed-db.js +39 -46
  114. package/lib/debug/persisters/persister-libsql.js +64 -60
  115. package/lib/debug/persisters/persister-partykit-client.js +39 -46
  116. package/lib/debug/persisters/persister-powersync.js +917 -0
  117. package/lib/debug/persisters/persister-remote.js +39 -46
  118. package/lib/debug/persisters/persister-sqlite-wasm.js +64 -60
  119. package/lib/debug/persisters/persister-sqlite3.js +64 -60
  120. package/lib/debug/persisters/persister-yjs.js +41 -48
  121. package/lib/debug/persisters.js +38 -45
  122. package/lib/debug/store.js +44 -32
  123. package/lib/debug/synchronizers/synchronizer-local.js +502 -0
  124. package/lib/debug/synchronizers/synchronizer-ws-client.js +525 -0
  125. package/lib/debug/synchronizers/synchronizer-ws-server.js +57 -0
  126. package/lib/debug/synchronizers.js +466 -0
  127. package/lib/debug/tinybase.js +569 -250
  128. package/lib/debug/tools.js +2 -2
  129. package/lib/debug/ui-react-dom.js +81 -76
  130. package/lib/debug/ui-react.js +1 -1
  131. package/lib/es6/mergeable-store.js +1 -1
  132. package/lib/es6/mergeable-store.js.gz +0 -0
  133. package/lib/es6/persisters/persister-automerge.js +1 -1
  134. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  135. package/lib/es6/persisters/persister-browser.js +1 -1
  136. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  137. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  138. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  139. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  140. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  141. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  142. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  143. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  144. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  145. package/lib/es6/persisters/persister-file.js +1 -1
  146. package/lib/es6/persisters/persister-file.js.gz +0 -0
  147. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  148. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  149. package/lib/es6/persisters/persister-libsql.js +1 -1
  150. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  151. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  152. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  153. package/lib/es6/persisters/persister-powersync.js +1 -0
  154. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  155. package/lib/es6/persisters/persister-remote.js +1 -1
  156. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  157. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  158. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  159. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  160. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  161. package/lib/es6/persisters/persister-yjs.js +1 -1
  162. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  163. package/lib/es6/persisters.js +1 -1
  164. package/lib/es6/persisters.js.gz +0 -0
  165. package/lib/es6/store.js +1 -1
  166. package/lib/es6/store.js.gz +0 -0
  167. package/lib/es6/synchronizers/synchronizer-local.js +1 -0
  168. package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
  169. package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -0
  170. package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  171. package/lib/es6/synchronizers/synchronizer-ws-server.js +1 -0
  172. package/lib/es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
  173. package/lib/es6/synchronizers.js +1 -0
  174. package/lib/es6/synchronizers.js.gz +0 -0
  175. package/lib/es6/tinybase.js +1 -1
  176. package/lib/es6/tinybase.js.gz +0 -0
  177. package/lib/es6/tools.js +1 -1
  178. package/lib/es6/tools.js.gz +0 -0
  179. package/lib/es6/ui-react-dom-debug.js +1 -1
  180. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  181. package/lib/es6/ui-react.js +1 -1
  182. package/lib/es6/ui-react.js.gz +0 -0
  183. package/lib/mergeable-store.js +1 -1
  184. package/lib/mergeable-store.js.gz +0 -0
  185. package/lib/persisters/persister-automerge.js +1 -1
  186. package/lib/persisters/persister-automerge.js.gz +0 -0
  187. package/lib/persisters/persister-browser.js +1 -1
  188. package/lib/persisters/persister-browser.js.gz +0 -0
  189. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  190. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  191. package/lib/persisters/persister-electric-sql.js +1 -1
  192. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  193. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  194. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  195. package/lib/persisters/persister-expo-sqlite.js +1 -1
  196. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  197. package/lib/persisters/persister-file.js +1 -1
  198. package/lib/persisters/persister-file.js.gz +0 -0
  199. package/lib/persisters/persister-indexed-db.js +1 -1
  200. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  201. package/lib/persisters/persister-libsql.js +1 -1
  202. package/lib/persisters/persister-libsql.js.gz +0 -0
  203. package/lib/persisters/persister-partykit-client.js +1 -1
  204. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  205. package/lib/persisters/persister-powersync.js +1 -0
  206. package/lib/persisters/persister-powersync.js.gz +0 -0
  207. package/lib/persisters/persister-remote.js +1 -1
  208. package/lib/persisters/persister-remote.js.gz +0 -0
  209. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  210. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  211. package/lib/persisters/persister-sqlite3.js +1 -1
  212. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  213. package/lib/persisters/persister-yjs.js +1 -1
  214. package/lib/persisters/persister-yjs.js.gz +0 -0
  215. package/lib/persisters.js +1 -1
  216. package/lib/persisters.js.gz +0 -0
  217. package/lib/store.js +1 -1
  218. package/lib/store.js.gz +0 -0
  219. package/lib/synchronizers/synchronizer-local.js +1 -0
  220. package/lib/synchronizers/synchronizer-local.js.gz +0 -0
  221. package/lib/synchronizers/synchronizer-ws-client.js +1 -0
  222. package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
  223. package/lib/synchronizers/synchronizer-ws-server.js +1 -0
  224. package/lib/synchronizers/synchronizer-ws-server.js.gz +0 -0
  225. package/lib/synchronizers.js +1 -0
  226. package/lib/synchronizers.js.gz +0 -0
  227. package/lib/tinybase.js +1 -1
  228. package/lib/tinybase.js.gz +0 -0
  229. package/lib/tools.js +1 -1
  230. package/lib/tools.js.gz +0 -0
  231. package/lib/types/checkpoints.d.ts +2 -2
  232. package/lib/types/indexes.d.ts +2 -2
  233. package/lib/types/mergeable-store.d.ts +121 -59
  234. package/lib/types/metrics.d.ts +2 -2
  235. package/lib/types/persisters/persister-automerge.d.ts +3 -0
  236. package/lib/types/persisters/persister-browser.d.ts +9 -2
  237. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
  238. package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
  239. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
  240. package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
  241. package/lib/types/persisters/persister-file.d.ts +5 -1
  242. package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
  243. package/lib/types/persisters/persister-libsql.d.ts +3 -0
  244. package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
  245. package/lib/types/persisters/persister-powersync.d.ts +157 -0
  246. package/lib/types/persisters/persister-remote.d.ts +3 -0
  247. package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
  248. package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
  249. package/lib/types/persisters/persister-yjs.d.ts +5 -2
  250. package/lib/types/persisters.d.ts +68 -19
  251. package/lib/types/queries.d.ts +2 -2
  252. package/lib/types/relationships.d.ts +2 -2
  253. package/lib/types/store.d.ts +36 -3
  254. package/lib/types/synchronizers/synchronizer-local.d.ts +27 -0
  255. package/lib/types/synchronizers/synchronizer-ws-client.d.ts +30 -0
  256. package/lib/types/synchronizers/synchronizer-ws-server.d.ts +24 -0
  257. package/lib/types/synchronizers.d.ts +131 -0
  258. package/lib/types/tinybase.d.ts +10 -9
  259. package/lib/types/tools.d.ts +2 -2
  260. package/lib/types/ui-react.d.ts +8 -8
  261. package/lib/types/with-schemas/checkpoints.d.ts +2 -2
  262. package/lib/types/with-schemas/indexes.d.ts +2 -2
  263. package/lib/types/with-schemas/mergeable-store.d.ts +185 -87
  264. package/lib/types/with-schemas/metrics.d.ts +2 -2
  265. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
  266. package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
  267. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
  268. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
  269. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
  270. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
  271. package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
  272. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
  273. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +4 -1
  274. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
  275. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
  276. package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
  277. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
  278. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
  279. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
  280. package/lib/types/with-schemas/persisters.d.ts +90 -62
  281. package/lib/types/with-schemas/queries.d.ts +3 -3
  282. package/lib/types/with-schemas/relationships.d.ts +2 -2
  283. package/lib/types/with-schemas/store.d.ts +100 -3
  284. package/lib/types/with-schemas/synchronizers/synchronizer-local.d.ts +29 -0
  285. package/lib/types/with-schemas/synchronizers/synchronizer-ws-client.d.ts +32 -0
  286. package/lib/types/with-schemas/synchronizers/synchronizer-ws-server.d.ts +24 -0
  287. package/lib/types/with-schemas/synchronizers.d.ts +146 -0
  288. package/lib/types/with-schemas/tinybase.d.ts +9 -9
  289. package/lib/types/with-schemas/tools.d.ts +2 -2
  290. package/lib/types/with-schemas/ui-react.d.ts +8 -8
  291. package/lib/ui-react.js +1 -1
  292. package/lib/ui-react.js.gz +0 -0
  293. package/lib/umd/mergeable-store.js +1 -1
  294. package/lib/umd/mergeable-store.js.gz +0 -0
  295. package/lib/umd/persisters/persister-automerge.js +1 -1
  296. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  297. package/lib/umd/persisters/persister-browser.js +1 -1
  298. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  299. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  300. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  301. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  302. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  303. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  304. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  305. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  306. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  307. package/lib/umd/persisters/persister-file.js +1 -1
  308. package/lib/umd/persisters/persister-file.js.gz +0 -0
  309. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  310. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  311. package/lib/umd/persisters/persister-libsql.js +1 -1
  312. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  313. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  314. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  315. package/lib/umd/persisters/persister-powersync.js +1 -0
  316. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  317. package/lib/umd/persisters/persister-remote.js +1 -1
  318. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  319. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  320. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  321. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  322. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  323. package/lib/umd/persisters/persister-yjs.js +1 -1
  324. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  325. package/lib/umd/persisters.js +1 -1
  326. package/lib/umd/persisters.js.gz +0 -0
  327. package/lib/umd/store.js +1 -1
  328. package/lib/umd/store.js.gz +0 -0
  329. package/lib/umd/synchronizers/synchronizer-local.js +1 -0
  330. package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
  331. package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -0
  332. package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
  333. package/lib/umd/synchronizers/synchronizer-ws-server.js +1 -0
  334. package/lib/umd/synchronizers/synchronizer-ws-server.js.gz +0 -0
  335. package/lib/umd/synchronizers.js +1 -0
  336. package/lib/umd/synchronizers.js.gz +0 -0
  337. package/lib/umd/tinybase.js +1 -1
  338. package/lib/umd/tinybase.js.gz +0 -0
  339. package/lib/umd/tools.js +1 -1
  340. package/lib/umd/tools.js.gz +0 -0
  341. package/lib/umd/ui-react-dom-debug.js +1 -1
  342. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  343. package/lib/umd/ui-react.js +1 -1
  344. package/lib/umd/ui-react.js.gz +0 -0
  345. package/lib/umd-es6/mergeable-store.js +1 -1
  346. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  347. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  348. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  349. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  350. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  351. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  352. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  353. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  354. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  355. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  356. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  357. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  358. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  359. package/lib/umd-es6/persisters/persister-file.js +1 -1
  360. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  361. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  362. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  363. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  364. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  365. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  366. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  367. package/lib/umd-es6/persisters/persister-powersync.js +1 -0
  368. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  369. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  370. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  371. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  372. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  373. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  374. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  375. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  376. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  377. package/lib/umd-es6/persisters.js +1 -1
  378. package/lib/umd-es6/persisters.js.gz +0 -0
  379. package/lib/umd-es6/store.js +1 -1
  380. package/lib/umd-es6/store.js.gz +0 -0
  381. package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -0
  382. package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
  383. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -0
  384. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  385. package/lib/umd-es6/synchronizers/synchronizer-ws-server.js +1 -0
  386. package/lib/umd-es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
  387. package/lib/umd-es6/synchronizers.js +1 -0
  388. package/lib/umd-es6/synchronizers.js.gz +0 -0
  389. package/lib/umd-es6/tinybase.js +1 -1
  390. package/lib/umd-es6/tinybase.js.gz +0 -0
  391. package/lib/umd-es6/tools.js +1 -1
  392. package/lib/umd-es6/tools.js.gz +0 -0
  393. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  394. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  395. package/lib/umd-es6/ui-react.js +1 -1
  396. package/lib/umd-es6/ui-react.js.gz +0 -0
  397. package/package.json +37 -26
  398. package/readme.md +2 -2
@@ -41,8 +41,6 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
41
41
  const object = Object;
42
42
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
43
43
  const objEntries = object.entries;
44
- const objIds = object.keys;
45
- const objFreeze = object.freeze;
46
44
  const isObject = (obj) =>
47
45
  !isUndefined(obj) &&
48
46
  ifNotUndefined(
@@ -53,6 +51,8 @@ const isObject = (obj) =>
53
51
  /* istanbul ignore next */
54
52
  () => true,
55
53
  );
54
+ const objIds = object.keys;
55
+ const objFreeze = object.freeze;
56
56
  const objNew = (entries = []) => object.fromEntries(entries);
57
57
  const objMerge = (...objs) => object.assign({}, ...objs);
58
58
  const objHas = (obj, id) => id in obj;
@@ -97,6 +97,9 @@ const setNew = (entryOrEntries) =>
97
97
  );
98
98
  const setAdd = (set, value) => set?.add(value);
99
99
 
100
+ const TABLE = 'TABLE';
101
+ const ALTER_TABLE = 'ALTER ' + TABLE;
102
+ const DELETE_FROM = 'DELETE FROM';
100
103
  const SELECT_STAR_FROM = SELECT + '*FROM';
101
104
  const FROM_PRAGMA_TABLE = 'FROM pragma_table_';
102
105
  const WHERE = 'WHERE';
@@ -191,15 +194,20 @@ const getCommandFunctions = (
191
194
  arrayIsEmpty(tableColumnNames) &&
192
195
  collHas(schemaMap, tableName)
193
196
  ) {
194
- await cmd('DROP TABLE' + escapeId(tableName));
197
+ await cmd('DROP ' + TABLE + escapeId(tableName));
195
198
  mapSet(schemaMap, tableName);
196
199
  return;
197
200
  }
198
201
  if (!arrayIsEmpty(tableColumnNames) && !collHas(schemaMap, tableName)) {
199
202
  await cmd(
200
- `CREATE TABLE${escapeId(tableName)}(${escapeId(rowIdColumnName)} PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
201
- arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
202
- )});`,
203
+ `CREATE ` +
204
+ TABLE +
205
+ escapeId(tableName) +
206
+ '(' +
207
+ escapeId(rowIdColumnName) +
208
+ ` PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
209
+ arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
210
+ )});`,
203
211
  );
204
212
  mapSet(
205
213
  schemaMap,
@@ -219,7 +227,7 @@ const getCommandFunctions = (
219
227
  ...arrayMap(tableColumnNames, async (columnName) => {
220
228
  if (!collDel(columnNamesAccountedFor, columnName)) {
221
229
  await cmd(
222
- `ALTER TABLE${escapeId(tableName)}ADD${escapeId(columnName)}`,
230
+ ALTER_TABLE + escapeId(tableName) + 'ADD' + escapeId(columnName),
223
231
  );
224
232
  mapSet(tableSchemaMap, columnName, EMPTY_STRING);
225
233
  }
@@ -230,9 +238,10 @@ const getCommandFunctions = (
230
238
  async (columnName) => {
231
239
  if (columnName != rowIdColumnName) {
232
240
  await cmd(
233
- `ALTER TABLE${escapeId(tableName)}DROP${escapeId(
234
- columnName,
235
- )}`,
241
+ ALTER_TABLE +
242
+ escapeId(tableName) +
243
+ 'DROP' +
244
+ escapeId(columnName),
236
245
  );
237
246
  mapSet(tableSchemaMap, columnName);
238
247
  }
@@ -243,13 +252,13 @@ const getCommandFunctions = (
243
252
  }
244
253
  if (partial) {
245
254
  if (isUndefined(content)) {
246
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
255
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
247
256
  } else {
248
257
  await promiseAll(
249
258
  objToArray(content, async (row, rowId) => {
250
259
  if (isUndefined(row)) {
251
260
  await cmd(
252
- 'DELETE FROM' +
261
+ DELETE_FROM +
253
262
  escapeId(tableName) +
254
263
  WHERE +
255
264
  escapeId(rowIdColumnName) +
@@ -291,9 +300,10 @@ const getCommandFunctions = (
291
300
  rowIdColumnName,
292
301
  changingColumnNames,
293
302
  args,
303
+ useOnConflict,
294
304
  );
295
305
  await cmd(
296
- 'DELETE FROM' +
306
+ DELETE_FROM +
297
307
  escapeId(tableName) +
298
308
  WHERE +
299
309
  escapeId(rowIdColumnName) +
@@ -303,7 +313,7 @@ const getCommandFunctions = (
303
313
  deleteRowIds,
304
314
  );
305
315
  } else if (collHas(schemaMap, tableName)) {
306
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
316
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
307
317
  }
308
318
  }
309
319
  };
@@ -378,7 +388,6 @@ const jsonParse = JSON.parse;
378
388
 
379
389
  const scheduleRunning = mapNew();
380
390
  const scheduleActions = mapNew();
381
- const isMergeable = (contentOrChanges) => isString(contentOrChanges?.[0]);
382
391
  const getStoreFunctions = (supportsMergeableStore, store) =>
383
392
  !supportsMergeableStore || isUndefined(store.getMergeableContent)
384
393
  ? [
@@ -403,16 +412,15 @@ const createCustomPersister = (
403
412
  delPersisterListener,
404
413
  onIgnoredError,
405
414
  supportsMergeableStore,
406
- [getThing, thing] = [],
415
+ extra = {},
407
416
  scheduleId = [],
408
417
  ) => {
409
- let listenerId;
410
418
  let loadSave = 0;
411
419
  let loads = 0;
412
420
  let saves = 0;
413
- let listening = 0;
414
421
  let action;
415
- let listeningHandle;
422
+ let autoLoadHandle;
423
+ let autoSaveListenerId;
416
424
  mapEnsure(scheduleRunning, scheduleId, () => 0);
417
425
  mapEnsure(scheduleActions, scheduleId, () => []);
418
426
  const [isMergeableStore, getContent, getChanges, hasChanges] =
@@ -448,55 +456,51 @@ const createCustomPersister = (
448
456
  }
449
457
  return persister;
450
458
  };
459
+ const setContentOrChanges = (contentOrChanges) => {
460
+ (isMergeableStore && isString(contentOrChanges?.[0])
461
+ ? contentOrChanges?.[1][2] === 1
462
+ ? store.applyMergeableChanges
463
+ : store.setMergeableContent
464
+ : contentOrChanges?.[2] === 1
465
+ ? store.applyChanges
466
+ : store.setContent)(contentOrChanges);
467
+ };
451
468
  const persister = {
452
469
  load: async (initialTables, initialValues) =>
453
470
  await loadLock(async () => {
454
471
  try {
455
- const content = await getPersisted();
456
- (isMergeableStore && isMergeable(content)
457
- ? store.setMergeableContent
458
- : store.setContent)(content);
459
- } catch {
472
+ setContentOrChanges(await getPersisted());
473
+ } catch (error) {
474
+ onIgnoredError?.(error);
460
475
  store.setContent([initialTables, initialValues]);
461
476
  }
462
477
  }),
463
478
  startAutoLoad: async (initialTables = {}, initialValues = {}) => {
464
- persister.stopAutoLoad();
465
- await persister.load(initialTables, initialValues);
466
- listening = 1;
467
- listeningHandle = addPersisterListener(
479
+ await persister.stopAutoLoad().load(initialTables, initialValues);
480
+ autoLoadHandle = addPersisterListener(
468
481
  async (getContent2, getChanges2) => {
469
- if (getChanges2) {
470
- const changes = getChanges2();
471
- await loadLock(async () =>
472
- (isMergeableStore && isMergeable(changes)
473
- ? store.applyMergeableChanges
474
- : store.applyChanges)(changes),
475
- );
476
- } else {
477
- await loadLock(async () => {
478
- try {
479
- const content = getContent2?.() ?? (await getPersisted());
480
- (isMergeableStore && isMergeable(content)
481
- ? store.setMergeableContent
482
- : store.setContent)(content);
483
- } catch (error) {
484
- onIgnoredError?.(error);
485
- }
486
- });
487
- }
482
+ const changes = getChanges2?.();
483
+ await loadLock(async () => {
484
+ try {
485
+ setContentOrChanges(
486
+ changes ?? getContent2?.() ?? (await getPersisted()),
487
+ );
488
+ } catch (error) {
489
+ onIgnoredError?.(error);
490
+ }
491
+ });
488
492
  },
489
493
  );
490
494
  return persister;
491
495
  },
492
496
  stopAutoLoad: () => {
493
- if (listening) {
494
- delPersisterListener(listeningHandle);
495
- listeningHandle = void 0;
496
- listening = 0;
497
+ if (autoLoadHandle) {
498
+ delPersisterListener(autoLoadHandle);
499
+ autoLoadHandle = void 0;
497
500
  }
498
501
  return persister;
499
502
  },
503
+ isAutoLoading: () => !isUndefined(autoLoadHandle),
500
504
  save: async (getChanges2) => {
501
505
  /* istanbul ignore else */
502
506
  if (loadSave != 1) {
@@ -518,7 +522,7 @@ const createCustomPersister = (
518
522
  },
519
523
  startAutoSave: async () => {
520
524
  await persister.stopAutoSave().save();
521
- listenerId = store.addDidFinishTransactionListener(() => {
525
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
522
526
  const changes = getChanges();
523
527
  if (hasChanges(changes)) {
524
528
  persister.save(() => changes);
@@ -527,10 +531,11 @@ const createCustomPersister = (
527
531
  return persister;
528
532
  },
529
533
  stopAutoSave: () => {
530
- ifNotUndefined(listenerId, store.delListener);
531
- listenerId = void 0;
534
+ ifNotUndefined(autoSaveListenerId, store.delListener);
535
+ autoSaveListenerId = void 0;
532
536
  return persister;
533
537
  },
538
+ isAutoSaving: () => !isUndefined(autoSaveListenerId),
534
539
  schedule: async (...actions) => {
535
540
  arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
536
541
  await run();
@@ -539,10 +544,8 @@ const createCustomPersister = (
539
544
  getStore: () => store,
540
545
  destroy: () => persister.stopAutoLoad().stopAutoSave(),
541
546
  getStats: () => ({loads, saves}),
547
+ ...extra,
542
548
  };
543
- if (getThing) {
544
- persister[getThing] = () => thing;
545
- }
546
549
  return objFreeze(persister);
547
550
  };
548
551
 
@@ -557,9 +560,10 @@ const createJsonSqlitePersister = (
557
560
  managedTableNames,
558
561
  db,
559
562
  getThing,
563
+ useOnConflict,
560
564
  ) => {
561
565
  const [refreshSchema, loadTable, saveTable, transaction] =
562
- getCommandFunctions(cmd, managedTableNames, onIgnoredError);
566
+ getCommandFunctions(cmd, managedTableNames, onIgnoredError, useOnConflict);
563
567
  const getPersisted = async () =>
564
568
  await transaction(async () => {
565
569
  await refreshSchema();
@@ -590,7 +594,7 @@ const createJsonSqlitePersister = (
590
594
  delPersisterListener,
591
595
  onIgnoredError,
592
596
  false,
593
- [getThing, db],
597
+ {[getThing]: () => db},
594
598
  db,
595
599
  );
596
600
  return persister;
@@ -697,7 +701,7 @@ const createTabularSqlitePersister = (
697
701
  delPersisterListener,
698
702
  onIgnoredError,
699
703
  false,
700
- [getThing, db],
704
+ {[getThing]: () => db},
701
705
  db,
702
706
  );
703
707
  return persister;
@@ -16,8 +16,6 @@ const arrayShift = (array) => array.shift();
16
16
 
17
17
  const object = Object;
18
18
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
19
- const objIds = object.keys;
20
- const objFreeze = object.freeze;
21
19
  const isObject = (obj) =>
22
20
  !isUndefined(obj) &&
23
21
  ifNotUndefined(
@@ -28,6 +26,8 @@ const isObject = (obj) =>
28
26
  /* istanbul ignore next */
29
27
  () => true,
30
28
  );
29
+ const objIds = object.keys;
30
+ const objFreeze = object.freeze;
31
31
  const objSize = (obj) => size(objIds(obj));
32
32
  const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
33
33
 
@@ -70,7 +70,6 @@ const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
70
70
 
71
71
  const scheduleRunning = mapNew();
72
72
  const scheduleActions = mapNew();
73
- const isMergeable = (contentOrChanges) => isString(contentOrChanges?.[0]);
74
73
  const getStoreFunctions = (supportsMergeableStore, store) =>
75
74
  !supportsMergeableStore || isUndefined(store.getMergeableContent)
76
75
  ? [
@@ -95,16 +94,15 @@ const createCustomPersister = (
95
94
  delPersisterListener,
96
95
  onIgnoredError,
97
96
  supportsMergeableStore,
98
- [getThing, thing] = [],
97
+ extra = {},
99
98
  scheduleId = [],
100
99
  ) => {
101
- let listenerId;
102
100
  let loadSave = 0;
103
101
  let loads = 0;
104
102
  let saves = 0;
105
- let listening = 0;
106
103
  let action;
107
- let listeningHandle;
104
+ let autoLoadHandle;
105
+ let autoSaveListenerId;
108
106
  mapEnsure(scheduleRunning, scheduleId, () => 0);
109
107
  mapEnsure(scheduleActions, scheduleId, () => []);
110
108
  const [isMergeableStore, getContent, getChanges, hasChanges] =
@@ -140,55 +138,51 @@ const createCustomPersister = (
140
138
  }
141
139
  return persister;
142
140
  };
141
+ const setContentOrChanges = (contentOrChanges) => {
142
+ (isMergeableStore && isString(contentOrChanges?.[0])
143
+ ? contentOrChanges?.[1][2] === 1
144
+ ? store.applyMergeableChanges
145
+ : store.setMergeableContent
146
+ : contentOrChanges?.[2] === 1
147
+ ? store.applyChanges
148
+ : store.setContent)(contentOrChanges);
149
+ };
143
150
  const persister = {
144
151
  load: async (initialTables, initialValues) =>
145
152
  await loadLock(async () => {
146
153
  try {
147
- const content = await getPersisted();
148
- (isMergeableStore && isMergeable(content)
149
- ? store.setMergeableContent
150
- : store.setContent)(content);
151
- } catch {
154
+ setContentOrChanges(await getPersisted());
155
+ } catch (error) {
156
+ onIgnoredError?.(error);
152
157
  store.setContent([initialTables, initialValues]);
153
158
  }
154
159
  }),
155
160
  startAutoLoad: async (initialTables = {}, initialValues = {}) => {
156
- persister.stopAutoLoad();
157
- await persister.load(initialTables, initialValues);
158
- listening = 1;
159
- listeningHandle = addPersisterListener(
161
+ await persister.stopAutoLoad().load(initialTables, initialValues);
162
+ autoLoadHandle = addPersisterListener(
160
163
  async (getContent2, getChanges2) => {
161
- if (getChanges2) {
162
- const changes = getChanges2();
163
- await loadLock(async () =>
164
- (isMergeableStore && isMergeable(changes)
165
- ? store.applyMergeableChanges
166
- : store.applyChanges)(changes),
167
- );
168
- } else {
169
- await loadLock(async () => {
170
- try {
171
- const content = getContent2?.() ?? (await getPersisted());
172
- (isMergeableStore && isMergeable(content)
173
- ? store.setMergeableContent
174
- : store.setContent)(content);
175
- } catch (error) {
176
- onIgnoredError?.(error);
177
- }
178
- });
179
- }
164
+ const changes = getChanges2?.();
165
+ await loadLock(async () => {
166
+ try {
167
+ setContentOrChanges(
168
+ changes ?? getContent2?.() ?? (await getPersisted()),
169
+ );
170
+ } catch (error) {
171
+ onIgnoredError?.(error);
172
+ }
173
+ });
180
174
  },
181
175
  );
182
176
  return persister;
183
177
  },
184
178
  stopAutoLoad: () => {
185
- if (listening) {
186
- delPersisterListener(listeningHandle);
187
- listeningHandle = void 0;
188
- listening = 0;
179
+ if (autoLoadHandle) {
180
+ delPersisterListener(autoLoadHandle);
181
+ autoLoadHandle = void 0;
189
182
  }
190
183
  return persister;
191
184
  },
185
+ isAutoLoading: () => !isUndefined(autoLoadHandle),
192
186
  save: async (getChanges2) => {
193
187
  /* istanbul ignore else */
194
188
  if (loadSave != 1) {
@@ -210,7 +204,7 @@ const createCustomPersister = (
210
204
  },
211
205
  startAutoSave: async () => {
212
206
  await persister.stopAutoSave().save();
213
- listenerId = store.addDidFinishTransactionListener(() => {
207
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
214
208
  const changes = getChanges();
215
209
  if (hasChanges(changes)) {
216
210
  persister.save(() => changes);
@@ -219,10 +213,11 @@ const createCustomPersister = (
219
213
  return persister;
220
214
  },
221
215
  stopAutoSave: () => {
222
- ifNotUndefined(listenerId, store.delListener);
223
- listenerId = void 0;
216
+ ifNotUndefined(autoSaveListenerId, store.delListener);
217
+ autoSaveListenerId = void 0;
224
218
  return persister;
225
219
  },
220
+ isAutoSaving: () => !isUndefined(autoSaveListenerId),
226
221
  schedule: async (...actions) => {
227
222
  arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
228
223
  await run();
@@ -231,10 +226,8 @@ const createCustomPersister = (
231
226
  getStore: () => store,
232
227
  destroy: () => persister.stopAutoLoad().stopAutoSave(),
233
228
  getStats: () => ({loads, saves}),
229
+ ...extra,
234
230
  };
235
- if (getThing) {
236
- persister[getThing] = () => thing;
237
- }
238
231
  return objFreeze(persister);
239
232
  };
240
233
 
@@ -304,7 +297,7 @@ const createPartyKitPersister = (
304
297
  delPersisterListener,
305
298
  onIgnoredError,
306
299
  false,
307
- ['getConnection', connection],
300
+ {getConnection: () => connection},
308
301
  );
309
302
  };
310
303