tinybase 5.0.0-beta.10 → 5.0.0-beta.11

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 (322) 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 -1
  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 -1
  38. package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
  39. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -1
  40. package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  41. package/lib/cjs/synchronizers/synchronizer-ws-server.cjs +1 -1
  42. package/lib/cjs/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
  43. package/lib/cjs/synchronizers.cjs +1 -1
  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/ui-react-dom-debug.cjs +1 -1
  48. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  49. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  50. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  78. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters.cjs +1 -1
  82. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  83. package/lib/cjs-es6/store.cjs +1 -1
  84. package/lib/cjs-es6/store.cjs.gz +0 -0
  85. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -1
  86. package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
  87. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -1
  88. package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
  89. package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs +1 -1
  90. package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
  91. package/lib/cjs-es6/synchronizers.cjs +1 -1
  92. package/lib/cjs-es6/synchronizers.cjs.gz +0 -0
  93. package/lib/cjs-es6/tinybase.cjs +1 -1
  94. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  95. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  96. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  97. package/lib/debug/mergeable-store.js +1 -1
  98. package/lib/debug/persisters/persister-automerge.js +113 -101
  99. package/lib/debug/persisters/persister-browser.js +113 -97
  100. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +113 -102
  101. package/lib/debug/persisters/persister-electric-sql.js +113 -102
  102. package/lib/debug/persisters/persister-expo-sqlite-next.js +113 -102
  103. package/lib/debug/persisters/persister-expo-sqlite.js +113 -102
  104. package/lib/debug/persisters/persister-file.js +108 -96
  105. package/lib/debug/persisters/persister-indexed-db.js +108 -96
  106. package/lib/debug/persisters/persister-libsql.js +113 -102
  107. package/lib/debug/persisters/persister-partykit-client.js +112 -100
  108. package/lib/debug/persisters/persister-powersync.js +113 -102
  109. package/lib/debug/persisters/persister-remote.js +108 -96
  110. package/lib/debug/persisters/persister-sqlite-wasm.js +113 -102
  111. package/lib/debug/persisters/persister-sqlite3.js +113 -102
  112. package/lib/debug/persisters/persister-yjs.js +113 -101
  113. package/lib/debug/persisters.js +107 -95
  114. package/lib/debug/store.js +1 -1
  115. package/lib/debug/synchronizers/synchronizer-local.js +114 -102
  116. package/lib/debug/synchronizers/synchronizer-ws-client.js +113 -101
  117. package/lib/debug/synchronizers/synchronizer-ws-server.js +151 -6
  118. package/lib/debug/synchronizers.js +113 -101
  119. package/lib/debug/tinybase.js +114 -102
  120. package/lib/debug/ui-react-dom.js +114 -98
  121. package/lib/es6/mergeable-store.js +1 -1
  122. package/lib/es6/mergeable-store.js.gz +0 -0
  123. package/lib/es6/persisters/persister-automerge.js +1 -1
  124. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  125. package/lib/es6/persisters/persister-browser.js +1 -1
  126. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  127. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  128. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  129. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  130. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  131. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  132. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  133. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  134. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  135. package/lib/es6/persisters/persister-file.js +1 -1
  136. package/lib/es6/persisters/persister-file.js.gz +0 -0
  137. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  138. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  139. package/lib/es6/persisters/persister-libsql.js +1 -1
  140. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  141. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  142. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  143. package/lib/es6/persisters/persister-powersync.js +1 -1
  144. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  145. package/lib/es6/persisters/persister-remote.js +1 -1
  146. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  147. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  148. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  149. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  150. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  151. package/lib/es6/persisters/persister-yjs.js +1 -1
  152. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  153. package/lib/es6/persisters.js +1 -1
  154. package/lib/es6/persisters.js.gz +0 -0
  155. package/lib/es6/store.js +1 -1
  156. package/lib/es6/store.js.gz +0 -0
  157. package/lib/es6/synchronizers/synchronizer-local.js +1 -1
  158. package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
  159. package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -1
  160. package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  161. package/lib/es6/synchronizers/synchronizer-ws-server.js +1 -1
  162. package/lib/es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
  163. package/lib/es6/synchronizers.js +1 -1
  164. package/lib/es6/synchronizers.js.gz +0 -0
  165. package/lib/es6/tinybase.js +1 -1
  166. package/lib/es6/tinybase.js.gz +0 -0
  167. package/lib/es6/ui-react-dom-debug.js +1 -1
  168. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  169. package/lib/mergeable-store.js +1 -1
  170. package/lib/mergeable-store.js.gz +0 -0
  171. package/lib/persisters/persister-automerge.js +1 -1
  172. package/lib/persisters/persister-automerge.js.gz +0 -0
  173. package/lib/persisters/persister-browser.js +1 -1
  174. package/lib/persisters/persister-browser.js.gz +0 -0
  175. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  176. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  177. package/lib/persisters/persister-electric-sql.js +1 -1
  178. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  179. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  180. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  181. package/lib/persisters/persister-expo-sqlite.js +1 -1
  182. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  183. package/lib/persisters/persister-file.js +1 -1
  184. package/lib/persisters/persister-file.js.gz +0 -0
  185. package/lib/persisters/persister-indexed-db.js +1 -1
  186. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  187. package/lib/persisters/persister-libsql.js +1 -1
  188. package/lib/persisters/persister-libsql.js.gz +0 -0
  189. package/lib/persisters/persister-partykit-client.js +1 -1
  190. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  191. package/lib/persisters/persister-powersync.js +1 -1
  192. package/lib/persisters/persister-powersync.js.gz +0 -0
  193. package/lib/persisters/persister-remote.js +1 -1
  194. package/lib/persisters/persister-remote.js.gz +0 -0
  195. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  196. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  197. package/lib/persisters/persister-sqlite3.js +1 -1
  198. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  199. package/lib/persisters/persister-yjs.js +1 -1
  200. package/lib/persisters/persister-yjs.js.gz +0 -0
  201. package/lib/persisters.js +1 -1
  202. package/lib/persisters.js.gz +0 -0
  203. package/lib/store.js +1 -1
  204. package/lib/store.js.gz +0 -0
  205. package/lib/synchronizers/synchronizer-local.js +1 -1
  206. package/lib/synchronizers/synchronizer-local.js.gz +0 -0
  207. package/lib/synchronizers/synchronizer-ws-client.js +1 -1
  208. package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
  209. package/lib/synchronizers/synchronizer-ws-server.js +1 -1
  210. package/lib/synchronizers/synchronizer-ws-server.js.gz +0 -0
  211. package/lib/synchronizers.js +1 -1
  212. package/lib/synchronizers.js.gz +0 -0
  213. package/lib/tinybase.js +1 -1
  214. package/lib/tinybase.js.gz +0 -0
  215. package/lib/types/persisters/persister-browser.d.ts +2 -2
  216. package/lib/types/persisters/persister-file.d.ts +1 -1
  217. package/lib/types/persisters.d.ts +73 -47
  218. package/lib/types/synchronizers/synchronizer-ws-server.d.ts +24 -3
  219. package/lib/types/synchronizers.d.ts +1 -1
  220. package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -2
  221. package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -1
  222. package/lib/types/with-schemas/persisters.d.ts +99 -87
  223. package/lib/types/with-schemas/synchronizers/synchronizer-ws-server.d.ts +24 -3
  224. package/lib/types/with-schemas/synchronizers.d.ts +1 -1
  225. package/lib/umd/mergeable-store.js +1 -1
  226. package/lib/umd/mergeable-store.js.gz +0 -0
  227. package/lib/umd/persisters/persister-automerge.js +1 -1
  228. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  229. package/lib/umd/persisters/persister-browser.js +1 -1
  230. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  231. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  232. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  233. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  234. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  235. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  236. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  237. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  238. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  239. package/lib/umd/persisters/persister-file.js +1 -1
  240. package/lib/umd/persisters/persister-file.js.gz +0 -0
  241. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  242. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  243. package/lib/umd/persisters/persister-libsql.js +1 -1
  244. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  245. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  246. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  247. package/lib/umd/persisters/persister-powersync.js +1 -1
  248. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  249. package/lib/umd/persisters/persister-remote.js +1 -1
  250. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  251. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  252. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  253. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  254. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  255. package/lib/umd/persisters/persister-yjs.js +1 -1
  256. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  257. package/lib/umd/persisters.js +1 -1
  258. package/lib/umd/persisters.js.gz +0 -0
  259. package/lib/umd/store.js +1 -1
  260. package/lib/umd/store.js.gz +0 -0
  261. package/lib/umd/synchronizers/synchronizer-local.js +1 -1
  262. package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
  263. package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -1
  264. package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
  265. package/lib/umd/synchronizers/synchronizer-ws-server.js +1 -1
  266. package/lib/umd/synchronizers/synchronizer-ws-server.js.gz +0 -0
  267. package/lib/umd/synchronizers.js +1 -1
  268. package/lib/umd/synchronizers.js.gz +0 -0
  269. package/lib/umd/tinybase.js +1 -1
  270. package/lib/umd/tinybase.js.gz +0 -0
  271. package/lib/umd/ui-react-dom-debug.js +1 -1
  272. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  273. package/lib/umd-es6/mergeable-store.js +1 -1
  274. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  275. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  276. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  277. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  278. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  279. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  280. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  281. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  282. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  283. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  284. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  285. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  286. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  287. package/lib/umd-es6/persisters/persister-file.js +1 -1
  288. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  289. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  290. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  291. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  292. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  293. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  294. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  295. package/lib/umd-es6/persisters/persister-powersync.js +1 -1
  296. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  297. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  298. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  299. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  300. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  301. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  302. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  303. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  304. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  305. package/lib/umd-es6/persisters.js +1 -1
  306. package/lib/umd-es6/persisters.js.gz +0 -0
  307. package/lib/umd-es6/store.js +1 -1
  308. package/lib/umd-es6/store.js.gz +0 -0
  309. package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -1
  310. package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
  311. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -1
  312. package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
  313. package/lib/umd-es6/synchronizers/synchronizer-ws-server.js +1 -1
  314. package/lib/umd-es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
  315. package/lib/umd-es6/synchronizers.js +1 -1
  316. package/lib/umd-es6/synchronizers.js.gz +0 -0
  317. package/lib/umd-es6/tinybase.js +1 -1
  318. package/lib/umd-es6/tinybase.js.gz +0 -0
  319. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  320. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  321. package/package.json +1 -1
  322. package/readme.md +2 -2
@@ -388,24 +388,27 @@ const jsonParse = JSON.parse;
388
388
 
389
389
  const scheduleRunning = mapNew();
390
390
  const scheduleActions = mapNew();
391
- const getStoreFunctions = (supportsMergeableStore, store) =>
392
- !supportsMergeableStore || isUndefined(store.getMergeableContent)
391
+ const getStoreFunctions = (supportedStoreType = 1, store) =>
392
+ supportedStoreType > 1 && 'getMergeableContent' in store
393
393
  ? [
394
- 0,
395
- store.getContent,
396
- store.getTransactionChanges,
397
- ([changedTables, changedValues]) =>
398
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
399
- store.setContent,
400
- ]
401
- : [
402
394
  1,
403
395
  store.getMergeableContent,
404
396
  store.getTransactionMergeableChanges,
405
397
  ([[changedTables], [changedValues]]) =>
406
398
  !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
407
399
  store.setDefaultContent,
408
- ];
400
+ ]
401
+ : supportedStoreType != 2
402
+ ? [
403
+ 0,
404
+ store.getContent,
405
+ store.getTransactionChanges,
406
+ ([changedTables, changedValues]) =>
407
+ !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
408
+ store.setContent,
409
+ ]
410
+ : /* istanbul ignore next */
411
+ 0;
409
412
  const createCustomPersister = (
410
413
  store,
411
414
  getPersisted,
@@ -413,7 +416,7 @@ const createCustomPersister = (
413
416
  addPersisterListener,
414
417
  delPersisterListener,
415
418
  onIgnoredError,
416
- supportsMergeableStore,
419
+ supportedStoreType,
417
420
  extra = {},
418
421
  scheduleId = [],
419
422
  ) => {
@@ -431,7 +434,7 @@ const createCustomPersister = (
431
434
  getChanges,
432
435
  hasChanges,
433
436
  setDefaultContent,
434
- ] = getStoreFunctions(supportsMergeableStore, store);
437
+ ] = getStoreFunctions(supportedStoreType, store);
435
438
  const run = async () => {
436
439
  /* istanbul ignore else */
437
440
  if (!mapGet(scheduleRunning, scheduleId)) {
@@ -449,20 +452,6 @@ const createCustomPersister = (
449
452
  mapSet(scheduleRunning, scheduleId, 0);
450
453
  }
451
454
  };
452
- const loadLock = async (actions) => {
453
- /* istanbul ignore else */
454
- if (loadSave != 2) {
455
- loadSave = 1;
456
- {
457
- loads++;
458
- }
459
- await persister.schedule(async () => {
460
- await actions();
461
- loadSave = 0;
462
- });
463
- }
464
- return persister;
465
- };
466
455
  const setContentOrChanges = (contentOrChanges) => {
467
456
  (isMergeableStore && isArray(contentOrChanges?.[0])
468
457
  ? contentOrChanges?.[2] === 1
@@ -472,9 +461,14 @@ const createCustomPersister = (
472
461
  ? store.applyChanges
473
462
  : store.setContent)(contentOrChanges);
474
463
  };
475
- const persister = {
476
- load: async (initialContent) =>
477
- await loadLock(async () => {
464
+ const load = async (initialContent) => {
465
+ /* istanbul ignore else */
466
+ if (loadSave != 2) {
467
+ loadSave = 1;
468
+ {
469
+ loads++;
470
+ }
471
+ await schedule(async () => {
478
472
  try {
479
473
  setContentOrChanges(await getPersisted());
480
474
  } catch (error) {
@@ -483,76 +477,94 @@ const createCustomPersister = (
483
477
  setDefaultContent(initialContent);
484
478
  }
485
479
  }
486
- }),
487
- startAutoLoad: async (initialContent) => {
488
- await persister.stopAutoLoad().load(initialContent);
489
- autoLoadHandle = addPersisterListener(
490
- async (getContent2, getChanges2) => {
491
- const changes = getChanges2?.();
492
- await loadLock(async () => {
493
- try {
494
- setContentOrChanges(
495
- changes ?? getContent2?.() ?? (await getPersisted()),
496
- );
497
- } catch (error) {
498
- onIgnoredError?.(error);
499
- }
500
- });
501
- },
502
- );
503
- return persister;
504
- },
505
- stopAutoLoad: () => {
506
- if (autoLoadHandle) {
507
- delPersisterListener(autoLoadHandle);
508
- autoLoadHandle = void 0;
509
- }
510
- return persister;
511
- },
512
- isAutoLoading: () => !isUndefined(autoLoadHandle),
513
- save: async (getChanges2) => {
514
- /* istanbul ignore else */
515
- if (loadSave != 1) {
516
- loadSave = 2;
517
- {
518
- saves++;
519
- }
520
- await persister.schedule(async () => {
521
- try {
522
- await setPersisted(getContent, getChanges2);
523
- } catch (error) {
524
- /* istanbul ignore next */
525
- onIgnoredError?.(error);
480
+ loadSave = 0;
481
+ });
482
+ }
483
+ return persister;
484
+ };
485
+ const startAutoLoad = async (initialContent) => {
486
+ await stopAutoLoad().load(initialContent);
487
+ autoLoadHandle = addPersisterListener(async (content, changes) => {
488
+ if (changes || content) {
489
+ /* istanbul ignore else */
490
+ if (loadSave != 2) {
491
+ loadSave = 1;
492
+ {
493
+ loads++;
526
494
  }
495
+ setContentOrChanges(changes ?? content);
527
496
  loadSave = 0;
528
- });
497
+ }
498
+ } else {
499
+ await load();
529
500
  }
530
- return persister;
531
- },
532
- startAutoSave: async () => {
533
- await persister.stopAutoSave().save();
534
- autoSaveListenerId = store.addDidFinishTransactionListener(() => {
535
- const changes = getChanges();
536
- if (hasChanges(changes)) {
537
- persister.save(() => changes);
501
+ });
502
+ return persister;
503
+ };
504
+ const stopAutoLoad = () => {
505
+ if (autoLoadHandle) {
506
+ delPersisterListener(autoLoadHandle);
507
+ autoLoadHandle = void 0;
508
+ }
509
+ return persister;
510
+ };
511
+ const isAutoLoading = () => !isUndefined(autoLoadHandle);
512
+ const save = async (changes) => {
513
+ /* istanbul ignore else */
514
+ if (loadSave != 1) {
515
+ loadSave = 2;
516
+ {
517
+ saves++;
518
+ }
519
+ await schedule(async () => {
520
+ try {
521
+ await setPersisted(getContent, changes);
522
+ } catch (error) {
523
+ /* istanbul ignore next */
524
+ onIgnoredError?.(error);
538
525
  }
526
+ loadSave = 0;
539
527
  });
540
- return persister;
541
- },
542
- stopAutoSave: () => {
543
- ifNotUndefined(autoSaveListenerId, store.delListener);
544
- autoSaveListenerId = void 0;
545
- return persister;
546
- },
547
- isAutoSaving: () => !isUndefined(autoSaveListenerId),
548
- schedule: async (...actions) => {
549
- arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
550
- await run();
551
- return persister;
552
- },
553
- getStore: () => store,
554
- destroy: () => persister.stopAutoLoad().stopAutoSave(),
555
- getStats: () => ({loads, saves}),
528
+ }
529
+ return persister;
530
+ };
531
+ const startAutoSave = async () => {
532
+ await stopAutoSave().save();
533
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
534
+ const changes = getChanges();
535
+ if (hasChanges(changes)) {
536
+ save(changes);
537
+ }
538
+ });
539
+ return persister;
540
+ };
541
+ const stopAutoSave = () => {
542
+ ifNotUndefined(autoSaveListenerId, store.delListener);
543
+ autoSaveListenerId = void 0;
544
+ return persister;
545
+ };
546
+ const isAutoSaving = () => !isUndefined(autoSaveListenerId);
547
+ const schedule = async (...actions) => {
548
+ arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
549
+ await run();
550
+ return persister;
551
+ };
552
+ const getStore = () => store;
553
+ const destroy = () => stopAutoLoad().stopAutoSave();
554
+ const getStats = () => ({loads, saves});
555
+ const persister = {
556
+ load,
557
+ startAutoLoad,
558
+ stopAutoLoad,
559
+ isAutoLoading,
560
+ save,
561
+ startAutoSave,
562
+ stopAutoSave,
563
+ isAutoSaving,
564
+ schedule,
565
+ getStore,
566
+ destroy,
567
+ getStats,
556
568
  ...extra,
557
569
  };
558
570
  return objFreeze(persister);
@@ -604,7 +616,7 @@ const createJsonSqlitePersister = (
604
616
  addPersisterListener,
605
617
  delPersisterListener,
606
618
  onIgnoredError,
607
- false,
619
+ 1,
608
620
  {[getThing]: () => db},
609
621
  db,
610
622
  );
@@ -691,13 +703,12 @@ const createTabularSqlitePersister = (
691
703
  ? [tables, values]
692
704
  : void 0;
693
705
  });
694
- const setPersisted = async (getContent, getChanges) =>
706
+ const setPersisted = async (getContent, changes) =>
695
707
  await transaction(async () => {
696
708
  await refreshSchema();
697
- if (!isUndefined(getChanges)) {
698
- const [tableChanges, valueChanges] = getChanges();
699
- await saveTables(tableChanges, true);
700
- await saveValues(valueChanges, true);
709
+ if (!isUndefined(changes)) {
710
+ await saveTables(changes[0], true);
711
+ await saveValues(changes[1], true);
701
712
  } else {
702
713
  const [tables, values] = getContent();
703
714
  await saveTables(tables);
@@ -711,7 +722,7 @@ const createTabularSqlitePersister = (
711
722
  addPersisterListener,
712
723
  delPersisterListener,
713
724
  onIgnoredError,
714
- false,
725
+ 1,
715
726
  {[getThing]: () => db},
716
727
  db,
717
728
  );
@@ -54,24 +54,27 @@ const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
54
54
 
55
55
  const scheduleRunning = mapNew();
56
56
  const scheduleActions = mapNew();
57
- const getStoreFunctions = (supportsMergeableStore, store) =>
58
- !supportsMergeableStore || isUndefined(store.getMergeableContent)
57
+ const getStoreFunctions = (supportedStoreType = 1, store) =>
58
+ supportedStoreType > 1 && 'getMergeableContent' in store
59
59
  ? [
60
- 0,
61
- store.getContent,
62
- store.getTransactionChanges,
63
- ([changedTables, changedValues]) =>
64
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
65
- store.setContent,
66
- ]
67
- : [
68
60
  1,
69
61
  store.getMergeableContent,
70
62
  store.getTransactionMergeableChanges,
71
63
  ([[changedTables], [changedValues]]) =>
72
64
  !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
73
65
  store.setDefaultContent,
74
- ];
66
+ ]
67
+ : supportedStoreType != 2
68
+ ? [
69
+ 0,
70
+ store.getContent,
71
+ store.getTransactionChanges,
72
+ ([changedTables, changedValues]) =>
73
+ !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
74
+ store.setContent,
75
+ ]
76
+ : /* istanbul ignore next */
77
+ 0;
75
78
  const createCustomPersister = (
76
79
  store,
77
80
  getPersisted,
@@ -79,7 +82,7 @@ const createCustomPersister = (
79
82
  addPersisterListener,
80
83
  delPersisterListener,
81
84
  onIgnoredError,
82
- supportsMergeableStore,
85
+ supportedStoreType,
83
86
  extra = {},
84
87
  scheduleId = [],
85
88
  ) => {
@@ -97,7 +100,7 @@ const createCustomPersister = (
97
100
  getChanges,
98
101
  hasChanges,
99
102
  setDefaultContent,
100
- ] = getStoreFunctions(supportsMergeableStore, store);
103
+ ] = getStoreFunctions(supportedStoreType, store);
101
104
  const run = async () => {
102
105
  /* istanbul ignore else */
103
106
  if (!mapGet(scheduleRunning, scheduleId)) {
@@ -115,20 +118,6 @@ const createCustomPersister = (
115
118
  mapSet(scheduleRunning, scheduleId, 0);
116
119
  }
117
120
  };
118
- const loadLock = async (actions) => {
119
- /* istanbul ignore else */
120
- if (loadSave != 2) {
121
- loadSave = 1;
122
- {
123
- loads++;
124
- }
125
- await persister.schedule(async () => {
126
- await actions();
127
- loadSave = 0;
128
- });
129
- }
130
- return persister;
131
- };
132
121
  const setContentOrChanges = (contentOrChanges) => {
133
122
  (isMergeableStore && isArray(contentOrChanges?.[0])
134
123
  ? contentOrChanges?.[2] === 1
@@ -138,9 +127,14 @@ const createCustomPersister = (
138
127
  ? store.applyChanges
139
128
  : store.setContent)(contentOrChanges);
140
129
  };
141
- const persister = {
142
- load: async (initialContent) =>
143
- await loadLock(async () => {
130
+ const load = async (initialContent) => {
131
+ /* istanbul ignore else */
132
+ if (loadSave != 2) {
133
+ loadSave = 1;
134
+ {
135
+ loads++;
136
+ }
137
+ await schedule(async () => {
144
138
  try {
145
139
  setContentOrChanges(await getPersisted());
146
140
  } catch (error) {
@@ -149,76 +143,94 @@ const createCustomPersister = (
149
143
  setDefaultContent(initialContent);
150
144
  }
151
145
  }
152
- }),
153
- startAutoLoad: async (initialContent) => {
154
- await persister.stopAutoLoad().load(initialContent);
155
- autoLoadHandle = addPersisterListener(
156
- async (getContent2, getChanges2) => {
157
- const changes = getChanges2?.();
158
- await loadLock(async () => {
159
- try {
160
- setContentOrChanges(
161
- changes ?? getContent2?.() ?? (await getPersisted()),
162
- );
163
- } catch (error) {
164
- onIgnoredError?.(error);
165
- }
166
- });
167
- },
168
- );
169
- return persister;
170
- },
171
- stopAutoLoad: () => {
172
- if (autoLoadHandle) {
173
- delPersisterListener(autoLoadHandle);
174
- autoLoadHandle = void 0;
175
- }
176
- return persister;
177
- },
178
- isAutoLoading: () => !isUndefined(autoLoadHandle),
179
- save: async (getChanges2) => {
180
- /* istanbul ignore else */
181
- if (loadSave != 1) {
182
- loadSave = 2;
183
- {
184
- saves++;
185
- }
186
- await persister.schedule(async () => {
187
- try {
188
- await setPersisted(getContent, getChanges2);
189
- } catch (error) {
190
- /* istanbul ignore next */
191
- onIgnoredError?.(error);
146
+ loadSave = 0;
147
+ });
148
+ }
149
+ return persister;
150
+ };
151
+ const startAutoLoad = async (initialContent) => {
152
+ await stopAutoLoad().load(initialContent);
153
+ autoLoadHandle = addPersisterListener(async (content, changes) => {
154
+ if (changes || content) {
155
+ /* istanbul ignore else */
156
+ if (loadSave != 2) {
157
+ loadSave = 1;
158
+ {
159
+ loads++;
192
160
  }
161
+ setContentOrChanges(changes ?? content);
193
162
  loadSave = 0;
194
- });
163
+ }
164
+ } else {
165
+ await load();
166
+ }
167
+ });
168
+ return persister;
169
+ };
170
+ const stopAutoLoad = () => {
171
+ if (autoLoadHandle) {
172
+ delPersisterListener(autoLoadHandle);
173
+ autoLoadHandle = void 0;
174
+ }
175
+ return persister;
176
+ };
177
+ const isAutoLoading = () => !isUndefined(autoLoadHandle);
178
+ const save = async (changes) => {
179
+ /* istanbul ignore else */
180
+ if (loadSave != 1) {
181
+ loadSave = 2;
182
+ {
183
+ saves++;
195
184
  }
196
- return persister;
197
- },
198
- startAutoSave: async () => {
199
- await persister.stopAutoSave().save();
200
- autoSaveListenerId = store.addDidFinishTransactionListener(() => {
201
- const changes = getChanges();
202
- if (hasChanges(changes)) {
203
- persister.save(() => changes);
185
+ await schedule(async () => {
186
+ try {
187
+ await setPersisted(getContent, changes);
188
+ } catch (error) {
189
+ /* istanbul ignore next */
190
+ onIgnoredError?.(error);
204
191
  }
192
+ loadSave = 0;
205
193
  });
206
- return persister;
207
- },
208
- stopAutoSave: () => {
209
- ifNotUndefined(autoSaveListenerId, store.delListener);
210
- autoSaveListenerId = void 0;
211
- return persister;
212
- },
213
- isAutoSaving: () => !isUndefined(autoSaveListenerId),
214
- schedule: async (...actions) => {
215
- arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
216
- await run();
217
- return persister;
218
- },
219
- getStore: () => store,
220
- destroy: () => persister.stopAutoLoad().stopAutoSave(),
221
- getStats: () => ({loads, saves}),
194
+ }
195
+ return persister;
196
+ };
197
+ const startAutoSave = async () => {
198
+ await stopAutoSave().save();
199
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
200
+ const changes = getChanges();
201
+ if (hasChanges(changes)) {
202
+ save(changes);
203
+ }
204
+ });
205
+ return persister;
206
+ };
207
+ const stopAutoSave = () => {
208
+ ifNotUndefined(autoSaveListenerId, store.delListener);
209
+ autoSaveListenerId = void 0;
210
+ return persister;
211
+ };
212
+ const isAutoSaving = () => !isUndefined(autoSaveListenerId);
213
+ const schedule = async (...actions) => {
214
+ arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
215
+ await run();
216
+ return persister;
217
+ };
218
+ const getStore = () => store;
219
+ const destroy = () => stopAutoLoad().stopAutoSave();
220
+ const getStats = () => ({loads, saves});
221
+ const persister = {
222
+ load,
223
+ startAutoLoad,
224
+ stopAutoLoad,
225
+ isAutoLoading,
226
+ save,
227
+ startAutoSave,
228
+ stopAutoSave,
229
+ isAutoSaving,
230
+ schedule,
231
+ getStore,
232
+ destroy,
233
+ getStats,
222
234
  ...extra,
223
235
  };
224
236
  return objFreeze(persister);
@@ -265,7 +277,7 @@ const createRemotePersister = (
265
277
  addPersisterListener,
266
278
  delPersisterListener,
267
279
  onIgnoredError,
268
- false,
280
+ 1,
269
281
  {getUrls: () => [loadUrl, saveUrl]},
270
282
  );
271
283
  };