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
@@ -57,24 +57,27 @@ const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
57
57
 
58
58
  const scheduleRunning = mapNew();
59
59
  const scheduleActions = mapNew();
60
- const getStoreFunctions = (supportsMergeableStore, store) =>
61
- !supportsMergeableStore || isUndefined(store.getMergeableContent)
60
+ const getStoreFunctions = (supportedStoreType = 1, store) =>
61
+ supportedStoreType > 1 && 'getMergeableContent' in store
62
62
  ? [
63
- 0,
64
- store.getContent,
65
- store.getTransactionChanges,
66
- ([changedTables, changedValues]) =>
67
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
68
- store.setContent,
69
- ]
70
- : [
71
63
  1,
72
64
  store.getMergeableContent,
73
65
  store.getTransactionMergeableChanges,
74
66
  ([[changedTables], [changedValues]]) =>
75
67
  !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
76
68
  store.setDefaultContent,
77
- ];
69
+ ]
70
+ : supportedStoreType != 2
71
+ ? [
72
+ 0,
73
+ store.getContent,
74
+ store.getTransactionChanges,
75
+ ([changedTables, changedValues]) =>
76
+ !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
77
+ store.setContent,
78
+ ]
79
+ : /* istanbul ignore next */
80
+ 0;
78
81
  const createCustomPersister = (
79
82
  store,
80
83
  getPersisted,
@@ -82,7 +85,7 @@ const createCustomPersister = (
82
85
  addPersisterListener,
83
86
  delPersisterListener,
84
87
  onIgnoredError,
85
- supportsMergeableStore,
88
+ supportedStoreType,
86
89
  extra = {},
87
90
  scheduleId = [],
88
91
  ) => {
@@ -100,7 +103,7 @@ const createCustomPersister = (
100
103
  getChanges,
101
104
  hasChanges,
102
105
  setDefaultContent,
103
- ] = getStoreFunctions(supportsMergeableStore, store);
106
+ ] = getStoreFunctions(supportedStoreType, store);
104
107
  const run = async () => {
105
108
  /* istanbul ignore else */
106
109
  if (!mapGet(scheduleRunning, scheduleId)) {
@@ -118,20 +121,6 @@ const createCustomPersister = (
118
121
  mapSet(scheduleRunning, scheduleId, 0);
119
122
  }
120
123
  };
121
- const loadLock = async (actions) => {
122
- /* istanbul ignore else */
123
- if (loadSave != 2) {
124
- loadSave = 1;
125
- {
126
- loads++;
127
- }
128
- await persister.schedule(async () => {
129
- await actions();
130
- loadSave = 0;
131
- });
132
- }
133
- return persister;
134
- };
135
124
  const setContentOrChanges = (contentOrChanges) => {
136
125
  (isMergeableStore && isArray(contentOrChanges?.[0])
137
126
  ? contentOrChanges?.[2] === 1
@@ -141,9 +130,14 @@ const createCustomPersister = (
141
130
  ? store.applyChanges
142
131
  : store.setContent)(contentOrChanges);
143
132
  };
144
- const persister = {
145
- load: async (initialContent) =>
146
- await loadLock(async () => {
133
+ const load = async (initialContent) => {
134
+ /* istanbul ignore else */
135
+ if (loadSave != 2) {
136
+ loadSave = 1;
137
+ {
138
+ loads++;
139
+ }
140
+ await schedule(async () => {
147
141
  try {
148
142
  setContentOrChanges(await getPersisted());
149
143
  } catch (error) {
@@ -152,76 +146,94 @@ const createCustomPersister = (
152
146
  setDefaultContent(initialContent);
153
147
  }
154
148
  }
155
- }),
156
- startAutoLoad: async (initialContent) => {
157
- await persister.stopAutoLoad().load(initialContent);
158
- autoLoadHandle = addPersisterListener(
159
- async (getContent2, getChanges2) => {
160
- const changes = getChanges2?.();
161
- await loadLock(async () => {
162
- try {
163
- setContentOrChanges(
164
- changes ?? getContent2?.() ?? (await getPersisted()),
165
- );
166
- } catch (error) {
167
- onIgnoredError?.(error);
168
- }
169
- });
170
- },
171
- );
172
- return persister;
173
- },
174
- stopAutoLoad: () => {
175
- if (autoLoadHandle) {
176
- delPersisterListener(autoLoadHandle);
177
- autoLoadHandle = void 0;
178
- }
179
- return persister;
180
- },
181
- isAutoLoading: () => !isUndefined(autoLoadHandle),
182
- save: async (getChanges2) => {
183
- /* istanbul ignore else */
184
- if (loadSave != 1) {
185
- loadSave = 2;
186
- {
187
- saves++;
188
- }
189
- await persister.schedule(async () => {
190
- try {
191
- await setPersisted(getContent, getChanges2);
192
- } catch (error) {
193
- /* istanbul ignore next */
194
- onIgnoredError?.(error);
149
+ loadSave = 0;
150
+ });
151
+ }
152
+ return persister;
153
+ };
154
+ const startAutoLoad = async (initialContent) => {
155
+ await stopAutoLoad().load(initialContent);
156
+ autoLoadHandle = addPersisterListener(async (content, changes) => {
157
+ if (changes || content) {
158
+ /* istanbul ignore else */
159
+ if (loadSave != 2) {
160
+ loadSave = 1;
161
+ {
162
+ loads++;
195
163
  }
164
+ setContentOrChanges(changes ?? content);
196
165
  loadSave = 0;
197
- });
166
+ }
167
+ } else {
168
+ await load();
198
169
  }
199
- return persister;
200
- },
201
- startAutoSave: async () => {
202
- await persister.stopAutoSave().save();
203
- autoSaveListenerId = store.addDidFinishTransactionListener(() => {
204
- const changes = getChanges();
205
- if (hasChanges(changes)) {
206
- persister.save(() => changes);
170
+ });
171
+ return persister;
172
+ };
173
+ const stopAutoLoad = () => {
174
+ if (autoLoadHandle) {
175
+ delPersisterListener(autoLoadHandle);
176
+ autoLoadHandle = void 0;
177
+ }
178
+ return persister;
179
+ };
180
+ const isAutoLoading = () => !isUndefined(autoLoadHandle);
181
+ const save = async (changes) => {
182
+ /* istanbul ignore else */
183
+ if (loadSave != 1) {
184
+ loadSave = 2;
185
+ {
186
+ saves++;
187
+ }
188
+ await schedule(async () => {
189
+ try {
190
+ await setPersisted(getContent, changes);
191
+ } catch (error) {
192
+ /* istanbul ignore next */
193
+ onIgnoredError?.(error);
207
194
  }
195
+ loadSave = 0;
208
196
  });
209
- return persister;
210
- },
211
- stopAutoSave: () => {
212
- ifNotUndefined(autoSaveListenerId, store.delListener);
213
- autoSaveListenerId = void 0;
214
- return persister;
215
- },
216
- isAutoSaving: () => !isUndefined(autoSaveListenerId),
217
- schedule: async (...actions) => {
218
- arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
219
- await run();
220
- return persister;
221
- },
222
- getStore: () => store,
223
- destroy: () => persister.stopAutoLoad().stopAutoSave(),
224
- getStats: () => ({loads, saves}),
197
+ }
198
+ return persister;
199
+ };
200
+ const startAutoSave = async () => {
201
+ await stopAutoSave().save();
202
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
203
+ const changes = getChanges();
204
+ if (hasChanges(changes)) {
205
+ save(changes);
206
+ }
207
+ });
208
+ return persister;
209
+ };
210
+ const stopAutoSave = () => {
211
+ ifNotUndefined(autoSaveListenerId, store.delListener);
212
+ autoSaveListenerId = void 0;
213
+ return persister;
214
+ };
215
+ const isAutoSaving = () => !isUndefined(autoSaveListenerId);
216
+ const schedule = async (...actions) => {
217
+ arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
218
+ await run();
219
+ return persister;
220
+ };
221
+ const getStore = () => store;
222
+ const destroy = () => stopAutoLoad().stopAutoSave();
223
+ const getStats = () => ({loads, saves});
224
+ const persister = {
225
+ load,
226
+ startAutoLoad,
227
+ stopAutoLoad,
228
+ isAutoLoading,
229
+ save,
230
+ startAutoSave,
231
+ stopAutoSave,
232
+ isAutoSaving,
233
+ schedule,
234
+ getStore,
235
+ destroy,
236
+ getStats,
225
237
  ...extra,
226
238
  };
227
239
  return objFreeze(persister);
@@ -241,7 +253,7 @@ const createFilePersister = (store, filePath, onIgnoredError) => {
241
253
  addPersisterListener,
242
254
  delPersisterListener,
243
255
  onIgnoredError,
244
- true,
256
+ 3,
245
257
  {getFilePath: () => filePath},
246
258
  );
247
259
  };
@@ -59,24 +59,27 @@ const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
59
59
 
60
60
  const scheduleRunning = mapNew();
61
61
  const scheduleActions = mapNew();
62
- const getStoreFunctions = (supportsMergeableStore, store) =>
63
- !supportsMergeableStore || isUndefined(store.getMergeableContent)
62
+ const getStoreFunctions = (supportedStoreType = 1, store) =>
63
+ supportedStoreType > 1 && 'getMergeableContent' in store
64
64
  ? [
65
- 0,
66
- store.getContent,
67
- store.getTransactionChanges,
68
- ([changedTables, changedValues]) =>
69
- !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
70
- store.setContent,
71
- ]
72
- : [
73
65
  1,
74
66
  store.getMergeableContent,
75
67
  store.getTransactionMergeableChanges,
76
68
  ([[changedTables], [changedValues]]) =>
77
69
  !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
78
70
  store.setDefaultContent,
79
- ];
71
+ ]
72
+ : supportedStoreType != 2
73
+ ? [
74
+ 0,
75
+ store.getContent,
76
+ store.getTransactionChanges,
77
+ ([changedTables, changedValues]) =>
78
+ !objIsEmpty(changedTables) || !objIsEmpty(changedValues),
79
+ store.setContent,
80
+ ]
81
+ : /* istanbul ignore next */
82
+ 0;
80
83
  const createCustomPersister = (
81
84
  store,
82
85
  getPersisted,
@@ -84,7 +87,7 @@ const createCustomPersister = (
84
87
  addPersisterListener,
85
88
  delPersisterListener,
86
89
  onIgnoredError,
87
- supportsMergeableStore,
90
+ supportedStoreType,
88
91
  extra = {},
89
92
  scheduleId = [],
90
93
  ) => {
@@ -102,7 +105,7 @@ const createCustomPersister = (
102
105
  getChanges,
103
106
  hasChanges,
104
107
  setDefaultContent,
105
- ] = getStoreFunctions(supportsMergeableStore, store);
108
+ ] = getStoreFunctions(supportedStoreType, store);
106
109
  const run = async () => {
107
110
  /* istanbul ignore else */
108
111
  if (!mapGet(scheduleRunning, scheduleId)) {
@@ -120,20 +123,6 @@ const createCustomPersister = (
120
123
  mapSet(scheduleRunning, scheduleId, 0);
121
124
  }
122
125
  };
123
- const loadLock = async (actions) => {
124
- /* istanbul ignore else */
125
- if (loadSave != 2) {
126
- loadSave = 1;
127
- {
128
- loads++;
129
- }
130
- await persister.schedule(async () => {
131
- await actions();
132
- loadSave = 0;
133
- });
134
- }
135
- return persister;
136
- };
137
126
  const setContentOrChanges = (contentOrChanges) => {
138
127
  (isMergeableStore && isArray(contentOrChanges?.[0])
139
128
  ? contentOrChanges?.[2] === 1
@@ -143,9 +132,14 @@ const createCustomPersister = (
143
132
  ? store.applyChanges
144
133
  : store.setContent)(contentOrChanges);
145
134
  };
146
- const persister = {
147
- load: async (initialContent) =>
148
- await loadLock(async () => {
135
+ const load = async (initialContent) => {
136
+ /* istanbul ignore else */
137
+ if (loadSave != 2) {
138
+ loadSave = 1;
139
+ {
140
+ loads++;
141
+ }
142
+ await schedule(async () => {
149
143
  try {
150
144
  setContentOrChanges(await getPersisted());
151
145
  } catch (error) {
@@ -154,76 +148,94 @@ const createCustomPersister = (
154
148
  setDefaultContent(initialContent);
155
149
  }
156
150
  }
157
- }),
158
- startAutoLoad: async (initialContent) => {
159
- await persister.stopAutoLoad().load(initialContent);
160
- autoLoadHandle = addPersisterListener(
161
- async (getContent2, getChanges2) => {
162
- const changes = getChanges2?.();
163
- await loadLock(async () => {
164
- try {
165
- setContentOrChanges(
166
- changes ?? getContent2?.() ?? (await getPersisted()),
167
- );
168
- } catch (error) {
169
- onIgnoredError?.(error);
170
- }
171
- });
172
- },
173
- );
174
- return persister;
175
- },
176
- stopAutoLoad: () => {
177
- if (autoLoadHandle) {
178
- delPersisterListener(autoLoadHandle);
179
- autoLoadHandle = void 0;
180
- }
181
- return persister;
182
- },
183
- isAutoLoading: () => !isUndefined(autoLoadHandle),
184
- save: async (getChanges2) => {
185
- /* istanbul ignore else */
186
- if (loadSave != 1) {
187
- loadSave = 2;
188
- {
189
- saves++;
190
- }
191
- await persister.schedule(async () => {
192
- try {
193
- await setPersisted(getContent, getChanges2);
194
- } catch (error) {
195
- /* istanbul ignore next */
196
- onIgnoredError?.(error);
151
+ loadSave = 0;
152
+ });
153
+ }
154
+ return persister;
155
+ };
156
+ const startAutoLoad = async (initialContent) => {
157
+ await stopAutoLoad().load(initialContent);
158
+ autoLoadHandle = addPersisterListener(async (content, changes) => {
159
+ if (changes || content) {
160
+ /* istanbul ignore else */
161
+ if (loadSave != 2) {
162
+ loadSave = 1;
163
+ {
164
+ loads++;
197
165
  }
166
+ setContentOrChanges(changes ?? content);
198
167
  loadSave = 0;
199
- });
168
+ }
169
+ } else {
170
+ await load();
200
171
  }
201
- return persister;
202
- },
203
- startAutoSave: async () => {
204
- await persister.stopAutoSave().save();
205
- autoSaveListenerId = store.addDidFinishTransactionListener(() => {
206
- const changes = getChanges();
207
- if (hasChanges(changes)) {
208
- persister.save(() => changes);
172
+ });
173
+ return persister;
174
+ };
175
+ const stopAutoLoad = () => {
176
+ if (autoLoadHandle) {
177
+ delPersisterListener(autoLoadHandle);
178
+ autoLoadHandle = void 0;
179
+ }
180
+ return persister;
181
+ };
182
+ const isAutoLoading = () => !isUndefined(autoLoadHandle);
183
+ const save = async (changes) => {
184
+ /* istanbul ignore else */
185
+ if (loadSave != 1) {
186
+ loadSave = 2;
187
+ {
188
+ saves++;
189
+ }
190
+ await schedule(async () => {
191
+ try {
192
+ await setPersisted(getContent, changes);
193
+ } catch (error) {
194
+ /* istanbul ignore next */
195
+ onIgnoredError?.(error);
209
196
  }
197
+ loadSave = 0;
210
198
  });
211
- return persister;
212
- },
213
- stopAutoSave: () => {
214
- ifNotUndefined(autoSaveListenerId, store.delListener);
215
- autoSaveListenerId = void 0;
216
- return persister;
217
- },
218
- isAutoSaving: () => !isUndefined(autoSaveListenerId),
219
- schedule: async (...actions) => {
220
- arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
221
- await run();
222
- return persister;
223
- },
224
- getStore: () => store,
225
- destroy: () => persister.stopAutoLoad().stopAutoSave(),
226
- getStats: () => ({loads, saves}),
199
+ }
200
+ return persister;
201
+ };
202
+ const startAutoSave = async () => {
203
+ await stopAutoSave().save();
204
+ autoSaveListenerId = store.addDidFinishTransactionListener(() => {
205
+ const changes = getChanges();
206
+ if (hasChanges(changes)) {
207
+ save(changes);
208
+ }
209
+ });
210
+ return persister;
211
+ };
212
+ const stopAutoSave = () => {
213
+ ifNotUndefined(autoSaveListenerId, store.delListener);
214
+ autoSaveListenerId = void 0;
215
+ return persister;
216
+ };
217
+ const isAutoSaving = () => !isUndefined(autoSaveListenerId);
218
+ const schedule = async (...actions) => {
219
+ arrayPush(mapGet(scheduleActions, scheduleId), ...actions);
220
+ await run();
221
+ return persister;
222
+ };
223
+ const getStore = () => store;
224
+ const destroy = () => stopAutoLoad().stopAutoSave();
225
+ const getStats = () => ({loads, saves});
226
+ const persister = {
227
+ load,
228
+ startAutoLoad,
229
+ stopAutoLoad,
230
+ isAutoLoading,
231
+ save,
232
+ startAutoSave,
233
+ stopAutoSave,
234
+ isAutoSaving,
235
+ schedule,
236
+ getStore,
237
+ destroy,
238
+ getStats,
227
239
  ...extra,
228
240
  };
229
241
  return objFreeze(persister);
@@ -319,7 +331,7 @@ const createIndexedDbPersister = (
319
331
  addPersisterListener,
320
332
  delPersisterListener,
321
333
  onIgnoredError,
322
- false,
334
+ 1,
323
335
  {getDbName: () => dbName},
324
336
  );
325
337
  };