tinybase 5.0.0-beta.2 → 5.0.0-beta.21

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 (1591) hide show
  1. package/@types/_internal/queries/index.d.cts +0 -0
  2. package/@types/_internal/queries/index.d.ts +0 -0
  3. package/@types/_internal/queries/with-schemas/index.d.cts +22 -0
  4. package/@types/_internal/queries/with-schemas/index.d.ts +22 -0
  5. package/@types/_internal/store/index.d.cts +3 -0
  6. package/@types/_internal/store/index.d.ts +3 -0
  7. package/@types/_internal/store/with-schemas/index.d.cts +106 -0
  8. package/@types/_internal/store/with-schemas/index.d.ts +106 -0
  9. package/@types/_internal/ui-react/index.d.cts +0 -0
  10. package/@types/_internal/ui-react/index.d.ts +0 -0
  11. package/@types/_internal/ui-react/with-schemas/index.d.cts +813 -0
  12. package/@types/_internal/ui-react/with-schemas/index.d.ts +813 -0
  13. package/@types/checkpoints/index.d.cts +1033 -0
  14. package/@types/checkpoints/index.d.ts +1033 -0
  15. package/@types/checkpoints/with-schemas/index.d.cts +1125 -0
  16. package/@types/checkpoints/with-schemas/index.d.ts +1125 -0
  17. package/@types/common/index.d.cts +117 -0
  18. package/@types/common/index.d.ts +117 -0
  19. package/@types/common/with-schemas/index.d.cts +117 -0
  20. package/@types/common/with-schemas/index.d.ts +117 -0
  21. package/@types/index.d.cts +18 -0
  22. package/@types/index.d.ts +18 -0
  23. package/@types/indexes/index.d.cts +1037 -0
  24. package/@types/indexes/index.d.ts +1037 -0
  25. package/@types/indexes/with-schemas/index.d.cts +1183 -0
  26. package/@types/indexes/with-schemas/index.d.ts +1183 -0
  27. package/@types/mergeable-store/index.d.cts +222 -0
  28. package/@types/mergeable-store/index.d.ts +222 -0
  29. package/@types/mergeable-store/with-schemas/index.d.cts +509 -0
  30. package/@types/mergeable-store/with-schemas/index.d.ts +509 -0
  31. package/@types/metrics/index.d.cts +895 -0
  32. package/@types/metrics/index.d.ts +895 -0
  33. package/@types/metrics/with-schemas/index.d.cts +982 -0
  34. package/@types/metrics/with-schemas/index.d.ts +982 -0
  35. package/@types/persisters/index.d.cts +1319 -0
  36. package/@types/persisters/index.d.ts +1319 -0
  37. package/@types/persisters/persister-automerge/index.d.cts +162 -0
  38. package/@types/persisters/persister-automerge/index.d.ts +162 -0
  39. package/@types/persisters/persister-automerge/with-schemas/index.d.cts +177 -0
  40. package/@types/persisters/persister-automerge/with-schemas/index.d.ts +177 -0
  41. package/@types/persisters/persister-browser/index.d.cts +174 -0
  42. package/@types/persisters/persister-browser/index.d.ts +174 -0
  43. package/@types/persisters/persister-browser/with-schemas/index.d.cts +199 -0
  44. package/@types/persisters/persister-browser/with-schemas/index.d.ts +199 -0
  45. package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +157 -0
  46. package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +157 -0
  47. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +176 -0
  48. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +176 -0
  49. package/@types/persisters/persister-electric-sql/index.d.cts +183 -0
  50. package/@types/persisters/persister-electric-sql/index.d.ts +183 -0
  51. package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +202 -0
  52. package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +202 -0
  53. package/@types/persisters/persister-expo-sqlite/index.d.cts +186 -0
  54. package/@types/persisters/persister-expo-sqlite/index.d.ts +186 -0
  55. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +205 -0
  56. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +205 -0
  57. package/@types/persisters/persister-expo-sqlite-next/index.d.cts +187 -0
  58. package/@types/persisters/persister-expo-sqlite-next/index.d.ts +187 -0
  59. package/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.cts +206 -0
  60. package/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +206 -0
  61. package/@types/persisters/persister-file/index.d.cts +88 -0
  62. package/@types/persisters/persister-file/index.d.ts +88 -0
  63. package/@types/persisters/persister-file/with-schemas/index.d.cts +102 -0
  64. package/@types/persisters/persister-file/with-schemas/index.d.ts +102 -0
  65. package/@types/persisters/persister-indexed-db/index.d.cts +116 -0
  66. package/@types/persisters/persister-indexed-db/index.d.ts +116 -0
  67. package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +131 -0
  68. package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +131 -0
  69. package/@types/persisters/persister-libsql/index.d.cts +154 -0
  70. package/@types/persisters/persister-libsql/index.d.ts +154 -0
  71. package/@types/persisters/persister-libsql/with-schemas/index.d.cts +173 -0
  72. package/@types/persisters/persister-libsql/with-schemas/index.d.ts +173 -0
  73. package/@types/persisters/persister-partykit-client/index.d.cts +185 -0
  74. package/@types/persisters/persister-partykit-client/index.d.ts +185 -0
  75. package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +200 -0
  76. package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +200 -0
  77. package/@types/persisters/persister-partykit-server/index.d.cts +631 -0
  78. package/@types/persisters/persister-partykit-server/index.d.ts +631 -0
  79. package/@types/persisters/persister-partykit-server/with-schemas/index.d.cts +673 -0
  80. package/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +673 -0
  81. package/@types/persisters/persister-powersync/index.d.cts +169 -0
  82. package/@types/persisters/persister-powersync/index.d.ts +169 -0
  83. package/@types/persisters/persister-powersync/with-schemas/index.d.cts +188 -0
  84. package/@types/persisters/persister-powersync/with-schemas/index.d.ts +188 -0
  85. package/@types/persisters/persister-remote/index.d.cts +113 -0
  86. package/@types/persisters/persister-remote/index.d.ts +113 -0
  87. package/@types/persisters/persister-remote/with-schemas/index.d.cts +129 -0
  88. package/@types/persisters/persister-remote/with-schemas/index.d.ts +129 -0
  89. package/@types/persisters/persister-sqlite-wasm/index.d.cts +170 -0
  90. package/@types/persisters/persister-sqlite-wasm/index.d.ts +170 -0
  91. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +190 -0
  92. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +190 -0
  93. package/@types/persisters/persister-sqlite3/index.d.cts +171 -0
  94. package/@types/persisters/persister-sqlite3/index.d.ts +171 -0
  95. package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +190 -0
  96. package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +190 -0
  97. package/@types/persisters/persister-yjs/index.d.cts +157 -0
  98. package/@types/persisters/persister-yjs/index.d.ts +157 -0
  99. package/@types/persisters/persister-yjs/with-schemas/index.d.cts +172 -0
  100. package/@types/persisters/persister-yjs/with-schemas/index.d.ts +172 -0
  101. package/@types/persisters/with-schemas/index.d.cts +1393 -0
  102. package/@types/persisters/with-schemas/index.d.ts +1393 -0
  103. package/@types/queries/index.d.cts +3640 -0
  104. package/@types/queries/index.d.ts +3640 -0
  105. package/@types/queries/with-schemas/index.d.cts +3961 -0
  106. package/@types/queries/with-schemas/index.d.ts +3961 -0
  107. package/@types/relationships/index.d.cts +1266 -0
  108. package/@types/relationships/index.d.ts +1266 -0
  109. package/@types/relationships/with-schemas/index.d.cts +1420 -0
  110. package/@types/relationships/with-schemas/index.d.ts +1420 -0
  111. package/@types/store/index.d.cts +7453 -0
  112. package/@types/store/index.d.ts +7453 -0
  113. package/@types/store/with-schemas/index.d.cts +9131 -0
  114. package/@types/store/with-schemas/index.d.ts +9131 -0
  115. package/@types/synchronizers/index.d.cts +139 -0
  116. package/@types/synchronizers/index.d.ts +139 -0
  117. package/@types/synchronizers/synchronizer-local/index.d.cts +27 -0
  118. package/@types/synchronizers/synchronizer-local/index.d.ts +27 -0
  119. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +29 -0
  120. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +29 -0
  121. package/@types/synchronizers/synchronizer-ws-client/index.d.cts +36 -0
  122. package/@types/synchronizers/synchronizer-ws-client/index.d.ts +36 -0
  123. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +42 -0
  124. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +42 -0
  125. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +58 -0
  126. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +58 -0
  127. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +58 -0
  128. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +58 -0
  129. package/@types/synchronizers/with-schemas/index.d.cts +156 -0
  130. package/@types/synchronizers/with-schemas/index.d.ts +156 -0
  131. package/@types/tools/index.d.cts +556 -0
  132. package/@types/tools/index.d.ts +556 -0
  133. package/@types/tools/with-schemas/index.d.cts +567 -0
  134. package/@types/tools/with-schemas/index.d.ts +567 -0
  135. package/@types/ui-react/index.d.cts +15318 -0
  136. package/@types/ui-react/index.d.ts +15318 -0
  137. package/@types/ui-react/with-schemas/index.d.cts +16235 -0
  138. package/@types/ui-react/with-schemas/index.d.ts +16235 -0
  139. package/@types/ui-react-dom/index.d.cts +1751 -0
  140. package/@types/ui-react-dom/index.d.ts +1751 -0
  141. package/@types/ui-react-dom/with-schemas/index.d.cts +1883 -0
  142. package/@types/ui-react-dom/with-schemas/index.d.ts +1883 -0
  143. package/@types/ui-react-inspector/index.d.cts +76 -0
  144. package/@types/ui-react-inspector/index.d.ts +76 -0
  145. package/@types/ui-react-inspector/with-schemas/index.d.cts +1870 -0
  146. package/@types/ui-react-inspector/with-schemas/index.d.ts +1870 -0
  147. package/@types/with-schemas/index.d.cts +18 -0
  148. package/@types/with-schemas/index.d.ts +18 -0
  149. package/checkpoints/index.js +1 -0
  150. package/checkpoints/index.js.gz +0 -0
  151. package/checkpoints/with-schemas/index.js +1 -0
  152. package/cjs/checkpoints/index.cjs +1 -0
  153. package/cjs/checkpoints/index.cjs.gz +0 -0
  154. package/cjs/checkpoints/with-schemas/index.cjs +1 -0
  155. package/cjs/common/index.cjs +1 -0
  156. package/cjs/common/index.cjs.gz +0 -0
  157. package/cjs/common/with-schemas/index.cjs +1 -0
  158. package/cjs/debug/checkpoints/index.cjs +433 -0
  159. package/cjs/debug/checkpoints/with-schemas/index.cjs +433 -0
  160. package/cjs/debug/common/index.cjs +28 -0
  161. package/cjs/debug/common/with-schemas/index.cjs +28 -0
  162. package/cjs/debug/index.cjs +4102 -0
  163. package/cjs/debug/indexes/index.cjs +555 -0
  164. package/cjs/debug/indexes/with-schemas/index.cjs +555 -0
  165. package/cjs/debug/mergeable-store/index.cjs +2249 -0
  166. package/cjs/debug/mergeable-store/with-schemas/index.cjs +2249 -0
  167. package/cjs/debug/metrics/index.cjs +521 -0
  168. package/cjs/debug/metrics/with-schemas/index.cjs +521 -0
  169. package/cjs/debug/persisters/index.cjs +230 -0
  170. package/cjs/debug/persisters/persister-automerge/index.cjs +378 -0
  171. package/cjs/debug/persisters/persister-automerge/with-schemas/index.cjs +378 -0
  172. package/cjs/debug/persisters/persister-browser/index.cjs +282 -0
  173. package/cjs/debug/persisters/persister-browser/with-schemas/index.cjs +282 -0
  174. package/cjs/debug/persisters/persister-cr-sqlite-wasm/index.cjs +929 -0
  175. package/cjs/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +929 -0
  176. package/cjs/debug/persisters/persister-electric-sql/index.cjs +937 -0
  177. package/cjs/debug/persisters/persister-electric-sql/with-schemas/index.cjs +937 -0
  178. package/cjs/debug/persisters/persister-expo-sqlite/index.cjs +930 -0
  179. package/cjs/debug/persisters/persister-expo-sqlite/with-schemas/index.cjs +930 -0
  180. package/cjs/debug/persisters/persister-expo-sqlite-next/index.cjs +932 -0
  181. package/cjs/debug/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +932 -0
  182. package/cjs/debug/persisters/persister-file/index.cjs +265 -0
  183. package/cjs/debug/persisters/persister-file/with-schemas/index.cjs +265 -0
  184. package/cjs/debug/persisters/persister-indexed-db/index.cjs +342 -0
  185. package/cjs/debug/persisters/persister-indexed-db/with-schemas/index.cjs +342 -0
  186. package/cjs/debug/persisters/persister-libsql/index.cjs +930 -0
  187. package/cjs/debug/persisters/persister-libsql/with-schemas/index.cjs +930 -0
  188. package/cjs/debug/persisters/persister-partykit-client/index.cjs +329 -0
  189. package/cjs/debug/persisters/persister-partykit-client/with-schemas/index.cjs +329 -0
  190. package/cjs/debug/persisters/persister-partykit-server/index.cjs +284 -0
  191. package/cjs/debug/persisters/persister-partykit-server/with-schemas/index.cjs +284 -0
  192. package/cjs/debug/persisters/persister-powersync/index.cjs +945 -0
  193. package/cjs/debug/persisters/persister-powersync/with-schemas/index.cjs +945 -0
  194. package/cjs/debug/persisters/persister-remote/index.cjs +287 -0
  195. package/cjs/debug/persisters/persister-remote/with-schemas/index.cjs +287 -0
  196. package/cjs/debug/persisters/persister-sqlite-wasm/index.cjs +938 -0
  197. package/cjs/debug/persisters/persister-sqlite-wasm/with-schemas/index.cjs +938 -0
  198. package/cjs/debug/persisters/persister-sqlite3/index.cjs +940 -0
  199. package/cjs/debug/persisters/persister-sqlite3/with-schemas/index.cjs +940 -0
  200. package/cjs/debug/persisters/persister-yjs/index.cjs +427 -0
  201. package/cjs/debug/persisters/persister-yjs/with-schemas/index.cjs +427 -0
  202. package/cjs/debug/persisters/with-schemas/index.cjs +230 -0
  203. package/cjs/debug/queries/index.cjs +814 -0
  204. package/cjs/debug/queries/with-schemas/index.cjs +814 -0
  205. package/cjs/debug/relationships/index.cjs +531 -0
  206. package/cjs/debug/relationships/with-schemas/index.cjs +531 -0
  207. package/cjs/debug/store/index.cjs +1636 -0
  208. package/cjs/debug/store/with-schemas/index.cjs +1636 -0
  209. package/cjs/debug/synchronizers/index.cjs +466 -0
  210. package/cjs/debug/synchronizers/synchronizer-local/index.cjs +506 -0
  211. package/cjs/debug/synchronizers/synchronizer-local/with-schemas/index.cjs +506 -0
  212. package/cjs/debug/synchronizers/synchronizer-ws-client/index.cjs +529 -0
  213. package/cjs/debug/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +529 -0
  214. package/cjs/debug/synchronizers/synchronizer-ws-server/index.cjs +243 -0
  215. package/cjs/debug/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +243 -0
  216. package/cjs/debug/synchronizers/with-schemas/index.cjs +466 -0
  217. package/cjs/debug/tools/index.cjs +3300 -0
  218. package/cjs/debug/tools/with-schemas/index.cjs +3300 -0
  219. package/cjs/debug/ui-react/index.cjs +1985 -0
  220. package/cjs/debug/ui-react/with-schemas/index.cjs +1985 -0
  221. package/cjs/debug/ui-react-dom/index.cjs +779 -0
  222. package/cjs/debug/ui-react-dom/with-schemas/index.cjs +779 -0
  223. package/cjs/debug/ui-react-inspector/index.cjs +3263 -0
  224. package/cjs/debug/ui-react-inspector/with-schemas/index.cjs +3263 -0
  225. package/cjs/debug/with-schemas/index.cjs +4102 -0
  226. package/cjs/es6/checkpoints/index.cjs +1 -0
  227. package/cjs/es6/checkpoints/index.cjs.gz +0 -0
  228. package/cjs/es6/checkpoints/with-schemas/index.cjs +1 -0
  229. package/cjs/es6/common/index.cjs +1 -0
  230. package/cjs/es6/common/index.cjs.gz +0 -0
  231. package/cjs/es6/common/with-schemas/index.cjs +1 -0
  232. package/cjs/es6/debug/checkpoints/index.cjs +473 -0
  233. package/cjs/es6/debug/checkpoints/with-schemas/index.cjs +473 -0
  234. package/cjs/es6/debug/common/index.cjs +30 -0
  235. package/cjs/es6/debug/common/with-schemas/index.cjs +30 -0
  236. package/cjs/es6/debug/index.cjs +4358 -0
  237. package/cjs/es6/debug/indexes/index.cjs +602 -0
  238. package/cjs/es6/debug/indexes/with-schemas/index.cjs +602 -0
  239. package/cjs/es6/debug/mergeable-store/index.cjs +2349 -0
  240. package/cjs/es6/debug/mergeable-store/with-schemas/index.cjs +2349 -0
  241. package/cjs/es6/debug/metrics/index.cjs +574 -0
  242. package/cjs/es6/debug/metrics/with-schemas/index.cjs +574 -0
  243. package/cjs/es6/debug/persisters/index.cjs +302 -0
  244. package/cjs/es6/debug/persisters/persister-automerge/index.cjs +476 -0
  245. package/cjs/es6/debug/persisters/persister-automerge/with-schemas/index.cjs +476 -0
  246. package/cjs/es6/debug/persisters/persister-browser/index.cjs +384 -0
  247. package/cjs/es6/debug/persisters/persister-browser/with-schemas/index.cjs +384 -0
  248. package/cjs/es6/debug/persisters/persister-cr-sqlite-wasm/index.cjs +1256 -0
  249. package/cjs/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1256 -0
  250. package/cjs/es6/debug/persisters/persister-electric-sql/index.cjs +1264 -0
  251. package/cjs/es6/debug/persisters/persister-electric-sql/with-schemas/index.cjs +1264 -0
  252. package/cjs/es6/debug/persisters/persister-expo-sqlite/index.cjs +1256 -0
  253. package/cjs/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.cjs +1256 -0
  254. package/cjs/es6/debug/persisters/persister-expo-sqlite-next/index.cjs +1259 -0
  255. package/cjs/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +1259 -0
  256. package/cjs/es6/debug/persisters/persister-file/index.cjs +365 -0
  257. package/cjs/es6/debug/persisters/persister-file/with-schemas/index.cjs +365 -0
  258. package/cjs/es6/debug/persisters/persister-indexed-db/index.cjs +481 -0
  259. package/cjs/es6/debug/persisters/persister-indexed-db/with-schemas/index.cjs +481 -0
  260. package/cjs/es6/debug/persisters/persister-libsql/index.cjs +1257 -0
  261. package/cjs/es6/debug/persisters/persister-libsql/with-schemas/index.cjs +1257 -0
  262. package/cjs/es6/debug/persisters/persister-partykit-client/index.cjs +459 -0
  263. package/cjs/es6/debug/persisters/persister-partykit-client/with-schemas/index.cjs +459 -0
  264. package/cjs/es6/debug/persisters/persister-partykit-server/index.cjs +411 -0
  265. package/cjs/es6/debug/persisters/persister-partykit-server/with-schemas/index.cjs +411 -0
  266. package/cjs/es6/debug/persisters/persister-powersync/index.cjs +1312 -0
  267. package/cjs/es6/debug/persisters/persister-powersync/with-schemas/index.cjs +1312 -0
  268. package/cjs/es6/debug/persisters/persister-remote/index.cjs +389 -0
  269. package/cjs/es6/debug/persisters/persister-remote/with-schemas/index.cjs +389 -0
  270. package/cjs/es6/debug/persisters/persister-sqlite-wasm/index.cjs +1286 -0
  271. package/cjs/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1286 -0
  272. package/cjs/es6/debug/persisters/persister-sqlite3/index.cjs +1266 -0
  273. package/cjs/es6/debug/persisters/persister-sqlite3/with-schemas/index.cjs +1266 -0
  274. package/cjs/es6/debug/persisters/persister-yjs/index.cjs +536 -0
  275. package/cjs/es6/debug/persisters/persister-yjs/with-schemas/index.cjs +536 -0
  276. package/cjs/es6/debug/persisters/with-schemas/index.cjs +302 -0
  277. package/cjs/es6/debug/queries/index.cjs +859 -0
  278. package/cjs/es6/debug/queries/with-schemas/index.cjs +859 -0
  279. package/cjs/es6/debug/relationships/index.cjs +591 -0
  280. package/cjs/es6/debug/relationships/with-schemas/index.cjs +591 -0
  281. package/cjs/es6/debug/store/index.cjs +1716 -0
  282. package/cjs/es6/debug/store/with-schemas/index.cjs +1716 -0
  283. package/cjs/es6/debug/synchronizers/index.cjs +594 -0
  284. package/cjs/es6/debug/synchronizers/synchronizer-local/index.cjs +630 -0
  285. package/cjs/es6/debug/synchronizers/synchronizer-local/with-schemas/index.cjs +630 -0
  286. package/cjs/es6/debug/synchronizers/synchronizer-ws-client/index.cjs +681 -0
  287. package/cjs/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +681 -0
  288. package/cjs/es6/debug/synchronizers/synchronizer-ws-server/index.cjs +292 -0
  289. package/cjs/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +292 -0
  290. package/cjs/es6/debug/synchronizers/with-schemas/index.cjs +594 -0
  291. package/cjs/es6/debug/tools/index.cjs +3423 -0
  292. package/cjs/es6/debug/tools/with-schemas/index.cjs +3423 -0
  293. package/cjs/es6/debug/ui-react/index.cjs +2189 -0
  294. package/cjs/es6/debug/ui-react/with-schemas/index.cjs +2189 -0
  295. package/cjs/es6/debug/ui-react-dom/index.cjs +906 -0
  296. package/cjs/es6/debug/ui-react-dom/with-schemas/index.cjs +906 -0
  297. package/cjs/es6/debug/ui-react-inspector/index.cjs +3654 -0
  298. package/cjs/es6/debug/ui-react-inspector/with-schemas/index.cjs +3654 -0
  299. package/cjs/es6/debug/with-schemas/index.cjs +4358 -0
  300. package/cjs/es6/index.cjs +1 -0
  301. package/cjs/es6/index.cjs.gz +0 -0
  302. package/cjs/es6/indexes/index.cjs +1 -0
  303. package/cjs/es6/indexes/index.cjs.gz +0 -0
  304. package/cjs/es6/indexes/with-schemas/index.cjs +1 -0
  305. package/cjs/es6/mergeable-store/index.cjs +1 -0
  306. package/cjs/es6/mergeable-store/index.cjs.gz +0 -0
  307. package/cjs/es6/mergeable-store/with-schemas/index.cjs +1 -0
  308. package/cjs/es6/metrics/index.cjs +1 -0
  309. package/cjs/es6/metrics/index.cjs.gz +0 -0
  310. package/cjs/es6/metrics/with-schemas/index.cjs +1 -0
  311. package/cjs/es6/persisters/index.cjs +1 -0
  312. package/cjs/es6/persisters/index.cjs.gz +0 -0
  313. package/cjs/es6/persisters/persister-automerge/index.cjs +1 -0
  314. package/cjs/es6/persisters/persister-automerge/index.cjs.gz +0 -0
  315. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +1 -0
  316. package/cjs/es6/persisters/persister-browser/index.cjs +1 -0
  317. package/cjs/es6/persisters/persister-browser/index.cjs.gz +0 -0
  318. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +1 -0
  319. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +1 -0
  320. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  321. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -0
  322. package/cjs/es6/persisters/persister-electric-sql/index.cjs +1 -0
  323. package/cjs/es6/persisters/persister-electric-sql/index.cjs.gz +0 -0
  324. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +1 -0
  325. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +1 -0
  326. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  327. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -0
  328. package/cjs/es6/persisters/persister-expo-sqlite-next/index.cjs +1 -0
  329. package/cjs/es6/persisters/persister-expo-sqlite-next/index.cjs.gz +0 -0
  330. package/cjs/es6/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +1 -0
  331. package/cjs/es6/persisters/persister-file/index.cjs +1 -0
  332. package/cjs/es6/persisters/persister-file/index.cjs.gz +0 -0
  333. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +1 -0
  334. package/cjs/es6/persisters/persister-indexed-db/index.cjs +1 -0
  335. package/cjs/es6/persisters/persister-indexed-db/index.cjs.gz +0 -0
  336. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +1 -0
  337. package/cjs/es6/persisters/persister-libsql/index.cjs +1 -0
  338. package/cjs/es6/persisters/persister-libsql/index.cjs.gz +0 -0
  339. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +1 -0
  340. package/cjs/es6/persisters/persister-partykit-client/index.cjs +1 -0
  341. package/cjs/es6/persisters/persister-partykit-client/index.cjs.gz +0 -0
  342. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +1 -0
  343. package/cjs/es6/persisters/persister-partykit-server/index.cjs +1 -0
  344. package/cjs/es6/persisters/persister-partykit-server/index.cjs.gz +0 -0
  345. package/cjs/es6/persisters/persister-partykit-server/with-schemas/index.cjs +1 -0
  346. package/cjs/es6/persisters/persister-powersync/index.cjs +1 -0
  347. package/cjs/es6/persisters/persister-powersync/index.cjs.gz +0 -0
  348. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +1 -0
  349. package/cjs/es6/persisters/persister-remote/index.cjs +1 -0
  350. package/cjs/es6/persisters/persister-remote/index.cjs.gz +0 -0
  351. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +1 -0
  352. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +1 -0
  353. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  354. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -0
  355. package/cjs/es6/persisters/persister-sqlite3/index.cjs +1 -0
  356. package/cjs/es6/persisters/persister-sqlite3/index.cjs.gz +0 -0
  357. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +1 -0
  358. package/cjs/es6/persisters/persister-yjs/index.cjs +1 -0
  359. package/cjs/es6/persisters/persister-yjs/index.cjs.gz +0 -0
  360. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +1 -0
  361. package/cjs/es6/persisters/with-schemas/index.cjs +1 -0
  362. package/cjs/es6/queries/index.cjs +1 -0
  363. package/cjs/es6/queries/index.cjs.gz +0 -0
  364. package/cjs/es6/queries/with-schemas/index.cjs +1 -0
  365. package/cjs/es6/relationships/index.cjs +1 -0
  366. package/cjs/es6/relationships/index.cjs.gz +0 -0
  367. package/cjs/es6/relationships/with-schemas/index.cjs +1 -0
  368. package/cjs/es6/store/index.cjs +1 -0
  369. package/cjs/es6/store/index.cjs.gz +0 -0
  370. package/cjs/es6/store/with-schemas/index.cjs +1 -0
  371. package/cjs/es6/synchronizers/index.cjs +1 -0
  372. package/cjs/es6/synchronizers/index.cjs.gz +0 -0
  373. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +1 -0
  374. package/cjs/es6/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  375. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -0
  376. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +1 -0
  377. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  378. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -0
  379. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +1 -0
  380. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  381. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -0
  382. package/cjs/es6/synchronizers/with-schemas/index.cjs +1 -0
  383. package/cjs/es6/tools/index.cjs +1 -0
  384. package/cjs/es6/tools/index.cjs.gz +0 -0
  385. package/cjs/es6/tools/with-schemas/index.cjs +1 -0
  386. package/cjs/es6/ui-react/index.cjs +1 -0
  387. package/cjs/es6/ui-react/index.cjs.gz +0 -0
  388. package/cjs/es6/ui-react/with-schemas/index.cjs +1 -0
  389. package/cjs/es6/ui-react-dom/index.cjs +1 -0
  390. package/cjs/es6/ui-react-dom/index.cjs.gz +0 -0
  391. package/cjs/es6/ui-react-dom/with-schemas/index.cjs +1 -0
  392. package/cjs/es6/ui-react-inspector/index.cjs +1 -0
  393. package/cjs/es6/ui-react-inspector/index.cjs.gz +0 -0
  394. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +1 -0
  395. package/cjs/es6/with-schemas/index.cjs +1 -0
  396. package/cjs/index.cjs +1 -0
  397. package/cjs/index.cjs.gz +0 -0
  398. package/cjs/indexes/index.cjs +1 -0
  399. package/cjs/indexes/index.cjs.gz +0 -0
  400. package/cjs/indexes/with-schemas/index.cjs +1 -0
  401. package/cjs/mergeable-store/index.cjs +1 -0
  402. package/cjs/mergeable-store/index.cjs.gz +0 -0
  403. package/cjs/mergeable-store/with-schemas/index.cjs +1 -0
  404. package/cjs/metrics/index.cjs +1 -0
  405. package/cjs/metrics/index.cjs.gz +0 -0
  406. package/cjs/metrics/with-schemas/index.cjs +1 -0
  407. package/cjs/persisters/index.cjs +1 -0
  408. package/cjs/persisters/index.cjs.gz +0 -0
  409. package/cjs/persisters/persister-automerge/index.cjs +1 -0
  410. package/cjs/persisters/persister-automerge/index.cjs.gz +0 -0
  411. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +1 -0
  412. package/cjs/persisters/persister-browser/index.cjs +1 -0
  413. package/cjs/persisters/persister-browser/index.cjs.gz +0 -0
  414. package/cjs/persisters/persister-browser/with-schemas/index.cjs +1 -0
  415. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +1 -0
  416. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  417. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -0
  418. package/cjs/persisters/persister-electric-sql/index.cjs +1 -0
  419. package/cjs/persisters/persister-electric-sql/index.cjs.gz +0 -0
  420. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +1 -0
  421. package/cjs/persisters/persister-expo-sqlite/index.cjs +1 -0
  422. package/cjs/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  423. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -0
  424. package/cjs/persisters/persister-expo-sqlite-next/index.cjs +1 -0
  425. package/cjs/persisters/persister-expo-sqlite-next/index.cjs.gz +0 -0
  426. package/cjs/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +1 -0
  427. package/cjs/persisters/persister-file/index.cjs +1 -0
  428. package/cjs/persisters/persister-file/index.cjs.gz +0 -0
  429. package/cjs/persisters/persister-file/with-schemas/index.cjs +1 -0
  430. package/cjs/persisters/persister-indexed-db/index.cjs +1 -0
  431. package/cjs/persisters/persister-indexed-db/index.cjs.gz +0 -0
  432. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +1 -0
  433. package/cjs/persisters/persister-libsql/index.cjs +1 -0
  434. package/cjs/persisters/persister-libsql/index.cjs.gz +0 -0
  435. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +1 -0
  436. package/cjs/persisters/persister-partykit-client/index.cjs +1 -0
  437. package/cjs/persisters/persister-partykit-client/index.cjs.gz +0 -0
  438. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +1 -0
  439. package/cjs/persisters/persister-partykit-server/index.cjs +1 -0
  440. package/cjs/persisters/persister-partykit-server/index.cjs.gz +0 -0
  441. package/cjs/persisters/persister-partykit-server/with-schemas/index.cjs +1 -0
  442. package/cjs/persisters/persister-powersync/index.cjs +1 -0
  443. package/cjs/persisters/persister-powersync/index.cjs.gz +0 -0
  444. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +1 -0
  445. package/cjs/persisters/persister-remote/index.cjs +1 -0
  446. package/cjs/persisters/persister-remote/index.cjs.gz +0 -0
  447. package/cjs/persisters/persister-remote/with-schemas/index.cjs +1 -0
  448. package/cjs/persisters/persister-sqlite-wasm/index.cjs +1 -0
  449. package/cjs/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  450. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -0
  451. package/cjs/persisters/persister-sqlite3/index.cjs +1 -0
  452. package/cjs/persisters/persister-sqlite3/index.cjs.gz +0 -0
  453. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +1 -0
  454. package/cjs/persisters/persister-yjs/index.cjs +1 -0
  455. package/cjs/persisters/persister-yjs/index.cjs.gz +0 -0
  456. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +1 -0
  457. package/cjs/persisters/with-schemas/index.cjs +1 -0
  458. package/cjs/queries/index.cjs +1 -0
  459. package/cjs/queries/index.cjs.gz +0 -0
  460. package/cjs/queries/with-schemas/index.cjs +1 -0
  461. package/cjs/relationships/index.cjs +1 -0
  462. package/cjs/relationships/index.cjs.gz +0 -0
  463. package/cjs/relationships/with-schemas/index.cjs +1 -0
  464. package/cjs/store/index.cjs +1 -0
  465. package/cjs/store/index.cjs.gz +0 -0
  466. package/cjs/store/with-schemas/index.cjs +1 -0
  467. package/cjs/synchronizers/index.cjs +1 -0
  468. package/cjs/synchronizers/index.cjs.gz +0 -0
  469. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -0
  470. package/cjs/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  471. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -0
  472. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +1 -0
  473. package/cjs/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  474. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -0
  475. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +1 -0
  476. package/cjs/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  477. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -0
  478. package/cjs/synchronizers/with-schemas/index.cjs +1 -0
  479. package/cjs/tools/index.cjs +1 -0
  480. package/cjs/tools/index.cjs.gz +0 -0
  481. package/cjs/tools/with-schemas/index.cjs +1 -0
  482. package/cjs/ui-react/index.cjs +1 -0
  483. package/cjs/ui-react/index.cjs.gz +0 -0
  484. package/cjs/ui-react/with-schemas/index.cjs +1 -0
  485. package/cjs/ui-react-dom/index.cjs +1 -0
  486. package/cjs/ui-react-dom/index.cjs.gz +0 -0
  487. package/cjs/ui-react-dom/with-schemas/index.cjs +1 -0
  488. package/cjs/ui-react-inspector/index.cjs +1 -0
  489. package/cjs/ui-react-inspector/index.cjs.gz +0 -0
  490. package/cjs/ui-react-inspector/with-schemas/index.cjs +1 -0
  491. package/cjs/with-schemas/index.cjs +1 -0
  492. package/cli/index.js +2 -0
  493. package/common/index.js +1 -0
  494. package/common/index.js.gz +0 -0
  495. package/common/with-schemas/index.js +1 -0
  496. package/debug/checkpoints/index.js +431 -0
  497. package/debug/checkpoints/with-schemas/index.js +431 -0
  498. package/debug/common/index.js +25 -0
  499. package/debug/common/with-schemas/index.js +25 -0
  500. package/debug/index.js +4102 -0
  501. package/debug/indexes/index.js +553 -0
  502. package/debug/indexes/with-schemas/index.js +553 -0
  503. package/debug/mergeable-store/index.js +2247 -0
  504. package/debug/mergeable-store/with-schemas/index.js +2247 -0
  505. package/debug/metrics/index.js +519 -0
  506. package/debug/metrics/with-schemas/index.js +519 -0
  507. package/debug/persisters/index.js +228 -0
  508. package/debug/persisters/persister-automerge/index.js +376 -0
  509. package/debug/persisters/persister-automerge/with-schemas/index.js +376 -0
  510. package/debug/persisters/persister-browser/index.js +279 -0
  511. package/debug/persisters/persister-browser/with-schemas/index.js +279 -0
  512. package/debug/persisters/persister-cr-sqlite-wasm/index.js +927 -0
  513. package/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +927 -0
  514. package/debug/persisters/persister-electric-sql/index.js +935 -0
  515. package/debug/persisters/persister-electric-sql/with-schemas/index.js +935 -0
  516. package/debug/persisters/persister-expo-sqlite/index.js +928 -0
  517. package/debug/persisters/persister-expo-sqlite/with-schemas/index.js +928 -0
  518. package/debug/persisters/persister-expo-sqlite-next/index.js +930 -0
  519. package/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +930 -0
  520. package/debug/persisters/persister-file/index.js +258 -0
  521. package/debug/persisters/persister-file/with-schemas/index.js +258 -0
  522. package/debug/persisters/persister-indexed-db/index.js +339 -0
  523. package/debug/persisters/persister-indexed-db/with-schemas/index.js +339 -0
  524. package/debug/persisters/persister-libsql/index.js +928 -0
  525. package/debug/persisters/persister-libsql/with-schemas/index.js +928 -0
  526. package/debug/persisters/persister-partykit-client/index.js +327 -0
  527. package/debug/persisters/persister-partykit-client/with-schemas/index.js +327 -0
  528. package/debug/persisters/persister-partykit-server/index.js +284 -0
  529. package/debug/persisters/persister-partykit-server/with-schemas/index.js +284 -0
  530. package/debug/persisters/persister-powersync/index.js +943 -0
  531. package/debug/persisters/persister-powersync/with-schemas/index.js +943 -0
  532. package/debug/persisters/persister-remote/index.js +285 -0
  533. package/debug/persisters/persister-remote/with-schemas/index.js +285 -0
  534. package/debug/persisters/persister-sqlite-wasm/index.js +936 -0
  535. package/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +936 -0
  536. package/debug/persisters/persister-sqlite3/index.js +938 -0
  537. package/debug/persisters/persister-sqlite3/with-schemas/index.js +938 -0
  538. package/debug/persisters/persister-yjs/index.js +424 -0
  539. package/debug/persisters/persister-yjs/with-schemas/index.js +424 -0
  540. package/debug/persisters/with-schemas/index.js +228 -0
  541. package/debug/queries/index.js +812 -0
  542. package/debug/queries/with-schemas/index.js +812 -0
  543. package/debug/relationships/index.js +529 -0
  544. package/debug/relationships/with-schemas/index.js +529 -0
  545. package/debug/store/index.js +1634 -0
  546. package/debug/store/with-schemas/index.js +1634 -0
  547. package/debug/synchronizers/index.js +464 -0
  548. package/debug/synchronizers/synchronizer-local/index.js +504 -0
  549. package/debug/synchronizers/synchronizer-local/with-schemas/index.js +504 -0
  550. package/debug/synchronizers/synchronizer-ws-client/index.js +527 -0
  551. package/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +527 -0
  552. package/debug/synchronizers/synchronizer-ws-server/index.js +241 -0
  553. package/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +241 -0
  554. package/debug/synchronizers/with-schemas/index.js +464 -0
  555. package/debug/tools/index.js +3298 -0
  556. package/debug/tools/with-schemas/index.js +3298 -0
  557. package/debug/ui-react/index.js +1984 -0
  558. package/debug/ui-react/with-schemas/index.js +1984 -0
  559. package/debug/ui-react-dom/index.js +789 -0
  560. package/debug/ui-react-dom/with-schemas/index.js +789 -0
  561. package/debug/ui-react-inspector/index.js +3281 -0
  562. package/debug/ui-react-inspector/with-schemas/index.js +3281 -0
  563. package/debug/with-schemas/index.js +4102 -0
  564. package/es6/checkpoints/index.js +1 -0
  565. package/es6/checkpoints/index.js.gz +0 -0
  566. package/es6/checkpoints/with-schemas/index.js +1 -0
  567. package/es6/common/index.js +1 -0
  568. package/es6/common/index.js.gz +0 -0
  569. package/es6/common/with-schemas/index.js +1 -0
  570. package/es6/debug/checkpoints/index.js +471 -0
  571. package/es6/debug/checkpoints/with-schemas/index.js +471 -0
  572. package/es6/debug/common/index.js +27 -0
  573. package/es6/debug/common/with-schemas/index.js +27 -0
  574. package/es6/debug/index.js +4358 -0
  575. package/es6/debug/indexes/index.js +600 -0
  576. package/es6/debug/indexes/with-schemas/index.js +600 -0
  577. package/es6/debug/mergeable-store/index.js +2347 -0
  578. package/es6/debug/mergeable-store/with-schemas/index.js +2347 -0
  579. package/es6/debug/metrics/index.js +572 -0
  580. package/es6/debug/metrics/with-schemas/index.js +572 -0
  581. package/es6/debug/persisters/index.js +300 -0
  582. package/es6/debug/persisters/persister-automerge/index.js +474 -0
  583. package/es6/debug/persisters/persister-automerge/with-schemas/index.js +474 -0
  584. package/es6/debug/persisters/persister-browser/index.js +381 -0
  585. package/es6/debug/persisters/persister-browser/with-schemas/index.js +381 -0
  586. package/es6/debug/persisters/persister-cr-sqlite-wasm/index.js +1254 -0
  587. package/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1254 -0
  588. package/es6/debug/persisters/persister-electric-sql/index.js +1262 -0
  589. package/es6/debug/persisters/persister-electric-sql/with-schemas/index.js +1262 -0
  590. package/es6/debug/persisters/persister-expo-sqlite/index.js +1254 -0
  591. package/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.js +1254 -0
  592. package/es6/debug/persisters/persister-expo-sqlite-next/index.js +1257 -0
  593. package/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +1257 -0
  594. package/es6/debug/persisters/persister-file/index.js +362 -0
  595. package/es6/debug/persisters/persister-file/with-schemas/index.js +362 -0
  596. package/es6/debug/persisters/persister-indexed-db/index.js +478 -0
  597. package/es6/debug/persisters/persister-indexed-db/with-schemas/index.js +478 -0
  598. package/es6/debug/persisters/persister-libsql/index.js +1255 -0
  599. package/es6/debug/persisters/persister-libsql/with-schemas/index.js +1255 -0
  600. package/es6/debug/persisters/persister-partykit-client/index.js +457 -0
  601. package/es6/debug/persisters/persister-partykit-client/with-schemas/index.js +457 -0
  602. package/es6/debug/persisters/persister-partykit-server/index.js +411 -0
  603. package/es6/debug/persisters/persister-partykit-server/with-schemas/index.js +411 -0
  604. package/es6/debug/persisters/persister-powersync/index.js +1310 -0
  605. package/es6/debug/persisters/persister-powersync/with-schemas/index.js +1310 -0
  606. package/es6/debug/persisters/persister-remote/index.js +387 -0
  607. package/es6/debug/persisters/persister-remote/with-schemas/index.js +387 -0
  608. package/es6/debug/persisters/persister-sqlite-wasm/index.js +1284 -0
  609. package/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +1284 -0
  610. package/es6/debug/persisters/persister-sqlite3/index.js +1264 -0
  611. package/es6/debug/persisters/persister-sqlite3/with-schemas/index.js +1264 -0
  612. package/es6/debug/persisters/persister-yjs/index.js +534 -0
  613. package/es6/debug/persisters/persister-yjs/with-schemas/index.js +534 -0
  614. package/es6/debug/persisters/with-schemas/index.js +300 -0
  615. package/es6/debug/queries/index.js +857 -0
  616. package/es6/debug/queries/with-schemas/index.js +857 -0
  617. package/es6/debug/relationships/index.js +589 -0
  618. package/es6/debug/relationships/with-schemas/index.js +589 -0
  619. package/es6/debug/store/index.js +1714 -0
  620. package/es6/debug/store/with-schemas/index.js +1714 -0
  621. package/es6/debug/synchronizers/index.js +592 -0
  622. package/es6/debug/synchronizers/synchronizer-local/index.js +628 -0
  623. package/es6/debug/synchronizers/synchronizer-local/with-schemas/index.js +628 -0
  624. package/es6/debug/synchronizers/synchronizer-ws-client/index.js +679 -0
  625. package/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +679 -0
  626. package/es6/debug/synchronizers/synchronizer-ws-server/index.js +290 -0
  627. package/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +290 -0
  628. package/es6/debug/synchronizers/with-schemas/index.js +592 -0
  629. package/es6/debug/tools/index.js +3421 -0
  630. package/es6/debug/tools/with-schemas/index.js +3421 -0
  631. package/es6/debug/ui-react/index.js +2188 -0
  632. package/es6/debug/ui-react/with-schemas/index.js +2188 -0
  633. package/es6/debug/ui-react-dom/index.js +907 -0
  634. package/es6/debug/ui-react-dom/with-schemas/index.js +907 -0
  635. package/es6/debug/ui-react-inspector/index.js +3659 -0
  636. package/es6/debug/ui-react-inspector/with-schemas/index.js +3659 -0
  637. package/es6/debug/with-schemas/index.js +4358 -0
  638. package/es6/index.js +1 -0
  639. package/es6/index.js.gz +0 -0
  640. package/es6/indexes/index.js +1 -0
  641. package/es6/indexes/index.js.gz +0 -0
  642. package/es6/indexes/with-schemas/index.js +1 -0
  643. package/es6/mergeable-store/index.js +1 -0
  644. package/es6/mergeable-store/index.js.gz +0 -0
  645. package/es6/mergeable-store/with-schemas/index.js +1 -0
  646. package/es6/metrics/index.js +1 -0
  647. package/es6/metrics/index.js.gz +0 -0
  648. package/es6/metrics/with-schemas/index.js +1 -0
  649. package/es6/persisters/index.js +1 -0
  650. package/es6/persisters/index.js.gz +0 -0
  651. package/es6/persisters/persister-automerge/index.js +1 -0
  652. package/es6/persisters/persister-automerge/index.js.gz +0 -0
  653. package/es6/persisters/persister-automerge/with-schemas/index.js +1 -0
  654. package/es6/persisters/persister-browser/index.js +1 -0
  655. package/es6/persisters/persister-browser/index.js.gz +0 -0
  656. package/es6/persisters/persister-browser/with-schemas/index.js +1 -0
  657. package/es6/persisters/persister-cr-sqlite-wasm/index.js +1 -0
  658. package/es6/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  659. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -0
  660. package/es6/persisters/persister-electric-sql/index.js +1 -0
  661. package/es6/persisters/persister-electric-sql/index.js.gz +0 -0
  662. package/es6/persisters/persister-electric-sql/with-schemas/index.js +1 -0
  663. package/es6/persisters/persister-expo-sqlite/index.js +1 -0
  664. package/es6/persisters/persister-expo-sqlite/index.js.gz +0 -0
  665. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +1 -0
  666. package/es6/persisters/persister-expo-sqlite-next/index.js +1 -0
  667. package/es6/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  668. package/es6/persisters/persister-expo-sqlite-next/with-schemas/index.js +1 -0
  669. package/es6/persisters/persister-file/index.js +1 -0
  670. package/es6/persisters/persister-file/index.js.gz +0 -0
  671. package/es6/persisters/persister-file/with-schemas/index.js +1 -0
  672. package/es6/persisters/persister-indexed-db/index.js +1 -0
  673. package/es6/persisters/persister-indexed-db/index.js.gz +0 -0
  674. package/es6/persisters/persister-indexed-db/with-schemas/index.js +1 -0
  675. package/es6/persisters/persister-libsql/index.js +1 -0
  676. package/es6/persisters/persister-libsql/index.js.gz +0 -0
  677. package/es6/persisters/persister-libsql/with-schemas/index.js +1 -0
  678. package/es6/persisters/persister-partykit-client/index.js +1 -0
  679. package/es6/persisters/persister-partykit-client/index.js.gz +0 -0
  680. package/es6/persisters/persister-partykit-client/with-schemas/index.js +1 -0
  681. package/es6/persisters/persister-partykit-server/index.js +1 -0
  682. package/es6/persisters/persister-partykit-server/index.js.gz +0 -0
  683. package/es6/persisters/persister-partykit-server/with-schemas/index.js +1 -0
  684. package/es6/persisters/persister-powersync/index.js +1 -0
  685. package/es6/persisters/persister-powersync/index.js.gz +0 -0
  686. package/es6/persisters/persister-powersync/with-schemas/index.js +1 -0
  687. package/es6/persisters/persister-remote/index.js +1 -0
  688. package/es6/persisters/persister-remote/index.js.gz +0 -0
  689. package/es6/persisters/persister-remote/with-schemas/index.js +1 -0
  690. package/es6/persisters/persister-sqlite-wasm/index.js +1 -0
  691. package/es6/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  692. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -0
  693. package/es6/persisters/persister-sqlite3/index.js +1 -0
  694. package/es6/persisters/persister-sqlite3/index.js.gz +0 -0
  695. package/es6/persisters/persister-sqlite3/with-schemas/index.js +1 -0
  696. package/es6/persisters/persister-yjs/index.js +1 -0
  697. package/es6/persisters/persister-yjs/index.js.gz +0 -0
  698. package/es6/persisters/persister-yjs/with-schemas/index.js +1 -0
  699. package/es6/persisters/with-schemas/index.js +1 -0
  700. package/es6/queries/index.js +1 -0
  701. package/es6/queries/index.js.gz +0 -0
  702. package/es6/queries/with-schemas/index.js +1 -0
  703. package/es6/relationships/index.js +1 -0
  704. package/es6/relationships/index.js.gz +0 -0
  705. package/es6/relationships/with-schemas/index.js +1 -0
  706. package/es6/store/index.js +1 -0
  707. package/es6/store/index.js.gz +0 -0
  708. package/es6/store/with-schemas/index.js +1 -0
  709. package/es6/synchronizers/index.js +1 -0
  710. package/es6/synchronizers/index.js.gz +0 -0
  711. package/es6/synchronizers/synchronizer-local/index.js +1 -0
  712. package/es6/synchronizers/synchronizer-local/index.js.gz +0 -0
  713. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  714. package/es6/synchronizers/synchronizer-ws-client/index.js +1 -0
  715. package/es6/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  716. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  717. package/es6/synchronizers/synchronizer-ws-server/index.js +1 -0
  718. package/es6/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  719. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -0
  720. package/es6/synchronizers/with-schemas/index.js +1 -0
  721. package/es6/tools/index.js +1 -0
  722. package/es6/tools/index.js.gz +0 -0
  723. package/es6/tools/with-schemas/index.js +1 -0
  724. package/es6/ui-react/index.js +1 -0
  725. package/es6/ui-react/index.js.gz +0 -0
  726. package/es6/ui-react/with-schemas/index.js +1 -0
  727. package/es6/ui-react-dom/index.js +1 -0
  728. package/es6/ui-react-dom/index.js.gz +0 -0
  729. package/es6/ui-react-dom/with-schemas/index.js +1 -0
  730. package/es6/ui-react-inspector/index.js +1 -0
  731. package/es6/ui-react-inspector/index.js.gz +0 -0
  732. package/es6/ui-react-inspector/with-schemas/index.js +1 -0
  733. package/es6/with-schemas/index.js +1 -0
  734. package/index.js +1 -0
  735. package/index.js.gz +0 -0
  736. package/indexes/index.js +1 -0
  737. package/indexes/index.js.gz +0 -0
  738. package/indexes/with-schemas/index.js +1 -0
  739. package/mergeable-store/index.js +1 -0
  740. package/mergeable-store/index.js.gz +0 -0
  741. package/mergeable-store/with-schemas/index.js +1 -0
  742. package/metrics/index.js +1 -0
  743. package/metrics/index.js.gz +0 -0
  744. package/metrics/with-schemas/index.js +1 -0
  745. package/package.json +3571 -279
  746. package/persisters/index.js +1 -0
  747. package/persisters/index.js.gz +0 -0
  748. package/persisters/persister-automerge/index.js +1 -0
  749. package/persisters/persister-automerge/index.js.gz +0 -0
  750. package/persisters/persister-automerge/with-schemas/index.js +1 -0
  751. package/persisters/persister-browser/index.js +1 -0
  752. package/persisters/persister-browser/index.js.gz +0 -0
  753. package/persisters/persister-browser/with-schemas/index.js +1 -0
  754. package/persisters/persister-cr-sqlite-wasm/index.js +1 -0
  755. package/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  756. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -0
  757. package/persisters/persister-electric-sql/index.js +1 -0
  758. package/persisters/persister-electric-sql/index.js.gz +0 -0
  759. package/persisters/persister-electric-sql/with-schemas/index.js +1 -0
  760. package/persisters/persister-expo-sqlite/index.js +1 -0
  761. package/persisters/persister-expo-sqlite/index.js.gz +0 -0
  762. package/persisters/persister-expo-sqlite/with-schemas/index.js +1 -0
  763. package/persisters/persister-expo-sqlite-next/index.js +1 -0
  764. package/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  765. package/persisters/persister-expo-sqlite-next/with-schemas/index.js +1 -0
  766. package/persisters/persister-file/index.js +1 -0
  767. package/persisters/persister-file/index.js.gz +0 -0
  768. package/persisters/persister-file/with-schemas/index.js +1 -0
  769. package/persisters/persister-indexed-db/index.js +1 -0
  770. package/persisters/persister-indexed-db/index.js.gz +0 -0
  771. package/persisters/persister-indexed-db/with-schemas/index.js +1 -0
  772. package/persisters/persister-libsql/index.js +1 -0
  773. package/persisters/persister-libsql/index.js.gz +0 -0
  774. package/persisters/persister-libsql/with-schemas/index.js +1 -0
  775. package/persisters/persister-partykit-client/index.js +1 -0
  776. package/persisters/persister-partykit-client/index.js.gz +0 -0
  777. package/persisters/persister-partykit-client/with-schemas/index.js +1 -0
  778. package/persisters/persister-partykit-server/index.js +1 -0
  779. package/persisters/persister-partykit-server/index.js.gz +0 -0
  780. package/persisters/persister-partykit-server/with-schemas/index.js +1 -0
  781. package/persisters/persister-powersync/index.js +1 -0
  782. package/persisters/persister-powersync/index.js.gz +0 -0
  783. package/persisters/persister-powersync/with-schemas/index.js +1 -0
  784. package/persisters/persister-remote/index.js +1 -0
  785. package/persisters/persister-remote/index.js.gz +0 -0
  786. package/persisters/persister-remote/with-schemas/index.js +1 -0
  787. package/persisters/persister-sqlite-wasm/index.js +1 -0
  788. package/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  789. package/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -0
  790. package/persisters/persister-sqlite3/index.js +1 -0
  791. package/persisters/persister-sqlite3/index.js.gz +0 -0
  792. package/persisters/persister-sqlite3/with-schemas/index.js +1 -0
  793. package/persisters/persister-yjs/index.js +1 -0
  794. package/persisters/persister-yjs/index.js.gz +0 -0
  795. package/persisters/persister-yjs/with-schemas/index.js +1 -0
  796. package/persisters/with-schemas/index.js +1 -0
  797. package/queries/index.js +1 -0
  798. package/queries/index.js.gz +0 -0
  799. package/queries/with-schemas/index.js +1 -0
  800. package/readme.md +22 -4
  801. package/relationships/index.js +1 -0
  802. package/relationships/index.js.gz +0 -0
  803. package/relationships/with-schemas/index.js +1 -0
  804. package/releases.md +452 -0
  805. package/store/index.js +1 -0
  806. package/store/index.js.gz +0 -0
  807. package/store/with-schemas/index.js +1 -0
  808. package/synchronizers/index.js +1 -0
  809. package/synchronizers/index.js.gz +0 -0
  810. package/synchronizers/synchronizer-local/index.js +1 -0
  811. package/synchronizers/synchronizer-local/index.js.gz +0 -0
  812. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  813. package/synchronizers/synchronizer-ws-client/index.js +1 -0
  814. package/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  815. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  816. package/synchronizers/synchronizer-ws-server/index.js +1 -0
  817. package/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  818. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -0
  819. package/synchronizers/with-schemas/index.js +1 -0
  820. package/tools/index.js +1 -0
  821. package/tools/index.js.gz +0 -0
  822. package/tools/with-schemas/index.js +1 -0
  823. package/ui-react/index.js +1 -0
  824. package/ui-react/index.js.gz +0 -0
  825. package/ui-react/with-schemas/index.js +1 -0
  826. package/ui-react-dom/index.js +1 -0
  827. package/ui-react-dom/index.js.gz +0 -0
  828. package/ui-react-dom/with-schemas/index.js +1 -0
  829. package/ui-react-inspector/index.js +1 -0
  830. package/ui-react-inspector/index.js.gz +0 -0
  831. package/ui-react-inspector/with-schemas/index.js +1 -0
  832. package/umd/checkpoints/index.js +1 -0
  833. package/umd/checkpoints/index.js.gz +0 -0
  834. package/umd/checkpoints/with-schemas/index.js +1 -0
  835. package/umd/common/index.js +1 -0
  836. package/umd/common/index.js.gz +0 -0
  837. package/umd/common/with-schemas/index.js +1 -0
  838. package/umd/debug/checkpoints/index.js +450 -0
  839. package/umd/debug/checkpoints/with-schemas/index.js +450 -0
  840. package/umd/debug/common/index.js +38 -0
  841. package/umd/debug/common/with-schemas/index.js +38 -0
  842. package/umd/debug/index.js +4192 -0
  843. package/umd/debug/indexes/index.js +578 -0
  844. package/umd/debug/indexes/with-schemas/index.js +578 -0
  845. package/umd/debug/mergeable-store/index.js +2312 -0
  846. package/umd/debug/mergeable-store/with-schemas/index.js +2312 -0
  847. package/umd/debug/metrics/index.js +544 -0
  848. package/umd/debug/metrics/with-schemas/index.js +544 -0
  849. package/umd/debug/persisters/index.js +242 -0
  850. package/umd/debug/persisters/persister-automerge/index.js +390 -0
  851. package/umd/debug/persisters/persister-automerge/with-schemas/index.js +390 -0
  852. package/umd/debug/persisters/persister-browser/index.js +296 -0
  853. package/umd/debug/persisters/persister-browser/with-schemas/index.js +296 -0
  854. package/umd/debug/persisters/persister-cr-sqlite-wasm/index.js +959 -0
  855. package/umd/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +959 -0
  856. package/umd/debug/persisters/persister-electric-sql/index.js +967 -0
  857. package/umd/debug/persisters/persister-electric-sql/with-schemas/index.js +967 -0
  858. package/umd/debug/persisters/persister-expo-sqlite/index.js +960 -0
  859. package/umd/debug/persisters/persister-expo-sqlite/with-schemas/index.js +960 -0
  860. package/umd/debug/persisters/persister-expo-sqlite-next/index.js +963 -0
  861. package/umd/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +963 -0
  862. package/umd/debug/persisters/persister-file/index.js +280 -0
  863. package/umd/debug/persisters/persister-file/with-schemas/index.js +280 -0
  864. package/umd/debug/persisters/persister-indexed-db/index.js +354 -0
  865. package/umd/debug/persisters/persister-indexed-db/with-schemas/index.js +354 -0
  866. package/umd/debug/persisters/persister-libsql/index.js +960 -0
  867. package/umd/debug/persisters/persister-libsql/with-schemas/index.js +960 -0
  868. package/umd/debug/persisters/persister-partykit-client/index.js +341 -0
  869. package/umd/debug/persisters/persister-partykit-client/with-schemas/index.js +341 -0
  870. package/umd/debug/persisters/persister-partykit-server/index.js +312 -0
  871. package/umd/debug/persisters/persister-partykit-server/with-schemas/index.js +312 -0
  872. package/umd/debug/persisters/persister-powersync/index.js +977 -0
  873. package/umd/debug/persisters/persister-powersync/with-schemas/index.js +977 -0
  874. package/umd/debug/persisters/persister-remote/index.js +299 -0
  875. package/umd/debug/persisters/persister-remote/with-schemas/index.js +299 -0
  876. package/umd/debug/persisters/persister-sqlite-wasm/index.js +968 -0
  877. package/umd/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +968 -0
  878. package/umd/debug/persisters/persister-sqlite3/index.js +970 -0
  879. package/umd/debug/persisters/persister-sqlite3/with-schemas/index.js +970 -0
  880. package/umd/debug/persisters/persister-yjs/index.js +439 -0
  881. package/umd/debug/persisters/persister-yjs/with-schemas/index.js +439 -0
  882. package/umd/debug/persisters/with-schemas/index.js +242 -0
  883. package/umd/debug/queries/index.js +828 -0
  884. package/umd/debug/queries/with-schemas/index.js +828 -0
  885. package/umd/debug/relationships/index.js +551 -0
  886. package/umd/debug/relationships/with-schemas/index.js +551 -0
  887. package/umd/debug/store/index.js +1686 -0
  888. package/umd/debug/store/with-schemas/index.js +1686 -0
  889. package/umd/debug/synchronizers/index.js +482 -0
  890. package/umd/debug/synchronizers/synchronizer-local/index.js +522 -0
  891. package/umd/debug/synchronizers/synchronizer-local/with-schemas/index.js +522 -0
  892. package/umd/debug/synchronizers/synchronizer-ws-client/index.js +547 -0
  893. package/umd/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +547 -0
  894. package/umd/debug/synchronizers/synchronizer-ws-server/index.js +261 -0
  895. package/umd/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +261 -0
  896. package/umd/debug/synchronizers/with-schemas/index.js +482 -0
  897. package/umd/debug/tools/index.js +3351 -0
  898. package/umd/debug/tools/with-schemas/index.js +3351 -0
  899. package/umd/debug/ui-react/index.js +2036 -0
  900. package/umd/debug/ui-react/with-schemas/index.js +2036 -0
  901. package/umd/debug/ui-react-dom/index.js +802 -0
  902. package/umd/debug/ui-react-dom/with-schemas/index.js +802 -0
  903. package/umd/debug/ui-react-inspector/index.js +3342 -0
  904. package/umd/debug/ui-react-inspector/with-schemas/index.js +3342 -0
  905. package/umd/debug/with-schemas/index.js +4192 -0
  906. package/umd/es6/checkpoints/index.js +1 -0
  907. package/umd/es6/checkpoints/index.js.gz +0 -0
  908. package/umd/es6/checkpoints/with-schemas/index.js +1 -0
  909. package/umd/es6/common/index.js +1 -0
  910. package/umd/es6/common/index.js.gz +0 -0
  911. package/umd/es6/common/with-schemas/index.js +1 -0
  912. package/umd/es6/debug/checkpoints/index.js +492 -0
  913. package/umd/es6/debug/checkpoints/with-schemas/index.js +492 -0
  914. package/umd/es6/debug/common/index.js +40 -0
  915. package/umd/es6/debug/common/with-schemas/index.js +40 -0
  916. package/umd/es6/debug/index.js +4456 -0
  917. package/umd/es6/debug/indexes/index.js +627 -0
  918. package/umd/es6/debug/indexes/with-schemas/index.js +627 -0
  919. package/umd/es6/debug/mergeable-store/index.js +2418 -0
  920. package/umd/es6/debug/mergeable-store/with-schemas/index.js +2418 -0
  921. package/umd/es6/debug/metrics/index.js +599 -0
  922. package/umd/es6/debug/metrics/with-schemas/index.js +599 -0
  923. package/umd/es6/debug/persisters/index.js +316 -0
  924. package/umd/es6/debug/persisters/persister-automerge/index.js +490 -0
  925. package/umd/es6/debug/persisters/persister-automerge/with-schemas/index.js +490 -0
  926. package/umd/es6/debug/persisters/persister-browser/index.js +400 -0
  927. package/umd/es6/debug/persisters/persister-browser/with-schemas/index.js +400 -0
  928. package/umd/es6/debug/persisters/persister-cr-sqlite-wasm/index.js +1295 -0
  929. package/umd/es6/debug/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1295 -0
  930. package/umd/es6/debug/persisters/persister-electric-sql/index.js +1303 -0
  931. package/umd/es6/debug/persisters/persister-electric-sql/with-schemas/index.js +1303 -0
  932. package/umd/es6/debug/persisters/persister-expo-sqlite/index.js +1295 -0
  933. package/umd/es6/debug/persisters/persister-expo-sqlite/with-schemas/index.js +1295 -0
  934. package/umd/es6/debug/persisters/persister-expo-sqlite-next/index.js +1299 -0
  935. package/umd/es6/debug/persisters/persister-expo-sqlite-next/with-schemas/index.js +1299 -0
  936. package/umd/es6/debug/persisters/persister-file/index.js +382 -0
  937. package/umd/es6/debug/persisters/persister-file/with-schemas/index.js +382 -0
  938. package/umd/es6/debug/persisters/persister-indexed-db/index.js +495 -0
  939. package/umd/es6/debug/persisters/persister-indexed-db/with-schemas/index.js +495 -0
  940. package/umd/es6/debug/persisters/persister-libsql/index.js +1296 -0
  941. package/umd/es6/debug/persisters/persister-libsql/with-schemas/index.js +1296 -0
  942. package/umd/es6/debug/persisters/persister-partykit-client/index.js +473 -0
  943. package/umd/es6/debug/persisters/persister-partykit-client/with-schemas/index.js +473 -0
  944. package/umd/es6/debug/persisters/persister-partykit-server/index.js +432 -0
  945. package/umd/es6/debug/persisters/persister-partykit-server/with-schemas/index.js +432 -0
  946. package/umd/es6/debug/persisters/persister-powersync/index.js +1355 -0
  947. package/umd/es6/debug/persisters/persister-powersync/with-schemas/index.js +1355 -0
  948. package/umd/es6/debug/persisters/persister-remote/index.js +403 -0
  949. package/umd/es6/debug/persisters/persister-remote/with-schemas/index.js +403 -0
  950. package/umd/es6/debug/persisters/persister-sqlite-wasm/index.js +1329 -0
  951. package/umd/es6/debug/persisters/persister-sqlite-wasm/with-schemas/index.js +1329 -0
  952. package/umd/es6/debug/persisters/persister-sqlite3/index.js +1305 -0
  953. package/umd/es6/debug/persisters/persister-sqlite3/with-schemas/index.js +1305 -0
  954. package/umd/es6/debug/persisters/persister-yjs/index.js +550 -0
  955. package/umd/es6/debug/persisters/persister-yjs/with-schemas/index.js +550 -0
  956. package/umd/es6/debug/persisters/with-schemas/index.js +316 -0
  957. package/umd/es6/debug/queries/index.js +875 -0
  958. package/umd/es6/debug/queries/with-schemas/index.js +875 -0
  959. package/umd/es6/debug/relationships/index.js +613 -0
  960. package/umd/es6/debug/relationships/with-schemas/index.js +613 -0
  961. package/umd/es6/debug/store/index.js +1770 -0
  962. package/umd/es6/debug/store/with-schemas/index.js +1770 -0
  963. package/umd/es6/debug/synchronizers/index.js +616 -0
  964. package/umd/es6/debug/synchronizers/synchronizer-local/index.js +652 -0
  965. package/umd/es6/debug/synchronizers/synchronizer-local/with-schemas/index.js +652 -0
  966. package/umd/es6/debug/synchronizers/synchronizer-ws-client/index.js +705 -0
  967. package/umd/es6/debug/synchronizers/synchronizer-ws-client/with-schemas/index.js +705 -0
  968. package/umd/es6/debug/synchronizers/synchronizer-ws-server/index.js +314 -0
  969. package/umd/es6/debug/synchronizers/synchronizer-ws-server/with-schemas/index.js +314 -0
  970. package/umd/es6/debug/synchronizers/with-schemas/index.js +616 -0
  971. package/umd/es6/debug/tools/index.js +3481 -0
  972. package/umd/es6/debug/tools/with-schemas/index.js +3481 -0
  973. package/umd/es6/debug/ui-react/index.js +2248 -0
  974. package/umd/es6/debug/ui-react/with-schemas/index.js +2248 -0
  975. package/umd/es6/debug/ui-react-dom/index.js +921 -0
  976. package/umd/es6/debug/ui-react-dom/with-schemas/index.js +921 -0
  977. package/umd/es6/debug/ui-react-inspector/index.js +3735 -0
  978. package/umd/es6/debug/ui-react-inspector/with-schemas/index.js +3735 -0
  979. package/umd/es6/debug/with-schemas/index.js +4456 -0
  980. package/umd/es6/index.js +1 -0
  981. package/umd/es6/index.js.gz +0 -0
  982. package/umd/es6/indexes/index.js +1 -0
  983. package/umd/es6/indexes/index.js.gz +0 -0
  984. package/umd/es6/indexes/with-schemas/index.js +1 -0
  985. package/umd/es6/mergeable-store/index.js +1 -0
  986. package/umd/es6/mergeable-store/index.js.gz +0 -0
  987. package/umd/es6/mergeable-store/with-schemas/index.js +1 -0
  988. package/umd/es6/metrics/index.js +1 -0
  989. package/umd/es6/metrics/index.js.gz +0 -0
  990. package/umd/es6/metrics/with-schemas/index.js +1 -0
  991. package/umd/es6/persisters/index.js +1 -0
  992. package/umd/es6/persisters/index.js.gz +0 -0
  993. package/umd/es6/persisters/persister-automerge/index.js +1 -0
  994. package/umd/es6/persisters/persister-automerge/index.js.gz +0 -0
  995. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +1 -0
  996. package/umd/es6/persisters/persister-browser/index.js +1 -0
  997. package/umd/es6/persisters/persister-browser/index.js.gz +0 -0
  998. package/umd/es6/persisters/persister-browser/with-schemas/index.js +1 -0
  999. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +1 -0
  1000. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  1001. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -0
  1002. package/umd/es6/persisters/persister-electric-sql/index.js +1 -0
  1003. package/umd/es6/persisters/persister-electric-sql/index.js.gz +0 -0
  1004. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +1 -0
  1005. package/umd/es6/persisters/persister-expo-sqlite/index.js +1 -0
  1006. package/umd/es6/persisters/persister-expo-sqlite/index.js.gz +0 -0
  1007. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +1 -0
  1008. package/umd/es6/persisters/persister-expo-sqlite-next/index.js +1 -0
  1009. package/umd/es6/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  1010. package/umd/es6/persisters/persister-expo-sqlite-next/with-schemas/index.js +1 -0
  1011. package/umd/es6/persisters/persister-file/index.js +1 -0
  1012. package/umd/es6/persisters/persister-file/index.js.gz +0 -0
  1013. package/umd/es6/persisters/persister-file/with-schemas/index.js +1 -0
  1014. package/umd/es6/persisters/persister-indexed-db/index.js +1 -0
  1015. package/umd/es6/persisters/persister-indexed-db/index.js.gz +0 -0
  1016. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +1 -0
  1017. package/umd/es6/persisters/persister-libsql/index.js +1 -0
  1018. package/umd/es6/persisters/persister-libsql/index.js.gz +0 -0
  1019. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +1 -0
  1020. package/umd/es6/persisters/persister-partykit-client/index.js +1 -0
  1021. package/umd/es6/persisters/persister-partykit-client/index.js.gz +0 -0
  1022. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +1 -0
  1023. package/umd/es6/persisters/persister-partykit-server/index.js +1 -0
  1024. package/umd/es6/persisters/persister-partykit-server/index.js.gz +0 -0
  1025. package/umd/es6/persisters/persister-partykit-server/with-schemas/index.js +1 -0
  1026. package/umd/es6/persisters/persister-powersync/index.js +1 -0
  1027. package/umd/es6/persisters/persister-powersync/index.js.gz +0 -0
  1028. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +1 -0
  1029. package/umd/es6/persisters/persister-remote/index.js +1 -0
  1030. package/umd/es6/persisters/persister-remote/index.js.gz +0 -0
  1031. package/umd/es6/persisters/persister-remote/with-schemas/index.js +1 -0
  1032. package/umd/es6/persisters/persister-sqlite-wasm/index.js +1 -0
  1033. package/umd/es6/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  1034. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -0
  1035. package/umd/es6/persisters/persister-sqlite3/index.js +1 -0
  1036. package/umd/es6/persisters/persister-sqlite3/index.js.gz +0 -0
  1037. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +1 -0
  1038. package/umd/es6/persisters/persister-yjs/index.js +1 -0
  1039. package/umd/es6/persisters/persister-yjs/index.js.gz +0 -0
  1040. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +1 -0
  1041. package/umd/es6/persisters/with-schemas/index.js +1 -0
  1042. package/umd/es6/queries/index.js +1 -0
  1043. package/umd/es6/queries/index.js.gz +0 -0
  1044. package/umd/es6/queries/with-schemas/index.js +1 -0
  1045. package/umd/es6/relationships/index.js +1 -0
  1046. package/umd/es6/relationships/index.js.gz +0 -0
  1047. package/umd/es6/relationships/with-schemas/index.js +1 -0
  1048. package/umd/es6/store/index.js +1 -0
  1049. package/umd/es6/store/index.js.gz +0 -0
  1050. package/umd/es6/store/with-schemas/index.js +1 -0
  1051. package/umd/es6/synchronizers/index.js +1 -0
  1052. package/umd/es6/synchronizers/index.js.gz +0 -0
  1053. package/umd/es6/synchronizers/synchronizer-local/index.js +1 -0
  1054. package/umd/es6/synchronizers/synchronizer-local/index.js.gz +0 -0
  1055. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  1056. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +1 -0
  1057. package/umd/es6/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  1058. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  1059. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +1 -0
  1060. package/umd/es6/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  1061. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -0
  1062. package/umd/es6/synchronizers/with-schemas/index.js +1 -0
  1063. package/umd/es6/tools/index.js +1 -0
  1064. package/umd/es6/tools/index.js.gz +0 -0
  1065. package/umd/es6/tools/with-schemas/index.js +1 -0
  1066. package/umd/es6/ui-react/index.js +1 -0
  1067. package/umd/es6/ui-react/index.js.gz +0 -0
  1068. package/umd/es6/ui-react/with-schemas/index.js +1 -0
  1069. package/umd/es6/ui-react-dom/index.js +1 -0
  1070. package/umd/es6/ui-react-dom/index.js.gz +0 -0
  1071. package/umd/es6/ui-react-dom/with-schemas/index.js +1 -0
  1072. package/umd/es6/ui-react-inspector/index.js +1 -0
  1073. package/umd/es6/ui-react-inspector/index.js.gz +0 -0
  1074. package/umd/es6/ui-react-inspector/with-schemas/index.js +1 -0
  1075. package/umd/es6/with-schemas/index.js +1 -0
  1076. package/umd/index.js +1 -0
  1077. package/umd/index.js.gz +0 -0
  1078. package/umd/indexes/index.js +1 -0
  1079. package/umd/indexes/index.js.gz +0 -0
  1080. package/umd/indexes/with-schemas/index.js +1 -0
  1081. package/umd/mergeable-store/index.js +1 -0
  1082. package/umd/mergeable-store/index.js.gz +0 -0
  1083. package/umd/mergeable-store/with-schemas/index.js +1 -0
  1084. package/umd/metrics/index.js +1 -0
  1085. package/umd/metrics/index.js.gz +0 -0
  1086. package/umd/metrics/with-schemas/index.js +1 -0
  1087. package/umd/persisters/index.js +1 -0
  1088. package/umd/persisters/index.js.gz +0 -0
  1089. package/umd/persisters/persister-automerge/index.js +1 -0
  1090. package/umd/persisters/persister-automerge/index.js.gz +0 -0
  1091. package/umd/persisters/persister-automerge/with-schemas/index.js +1 -0
  1092. package/umd/persisters/persister-browser/index.js +1 -0
  1093. package/umd/persisters/persister-browser/index.js.gz +0 -0
  1094. package/umd/persisters/persister-browser/with-schemas/index.js +1 -0
  1095. package/umd/persisters/persister-cr-sqlite-wasm/index.js +1 -0
  1096. package/umd/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  1097. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -0
  1098. package/umd/persisters/persister-electric-sql/index.js +1 -0
  1099. package/umd/persisters/persister-electric-sql/index.js.gz +0 -0
  1100. package/umd/persisters/persister-electric-sql/with-schemas/index.js +1 -0
  1101. package/umd/persisters/persister-expo-sqlite/index.js +1 -0
  1102. package/umd/persisters/persister-expo-sqlite/index.js.gz +0 -0
  1103. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +1 -0
  1104. package/umd/persisters/persister-expo-sqlite-next/index.js +1 -0
  1105. package/umd/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  1106. package/umd/persisters/persister-expo-sqlite-next/with-schemas/index.js +1 -0
  1107. package/umd/persisters/persister-file/index.js +1 -0
  1108. package/umd/persisters/persister-file/index.js.gz +0 -0
  1109. package/umd/persisters/persister-file/with-schemas/index.js +1 -0
  1110. package/umd/persisters/persister-indexed-db/index.js +1 -0
  1111. package/umd/persisters/persister-indexed-db/index.js.gz +0 -0
  1112. package/umd/persisters/persister-indexed-db/with-schemas/index.js +1 -0
  1113. package/umd/persisters/persister-libsql/index.js +1 -0
  1114. package/umd/persisters/persister-libsql/index.js.gz +0 -0
  1115. package/umd/persisters/persister-libsql/with-schemas/index.js +1 -0
  1116. package/umd/persisters/persister-partykit-client/index.js +1 -0
  1117. package/umd/persisters/persister-partykit-client/index.js.gz +0 -0
  1118. package/umd/persisters/persister-partykit-client/with-schemas/index.js +1 -0
  1119. package/umd/persisters/persister-partykit-server/index.js +1 -0
  1120. package/umd/persisters/persister-partykit-server/index.js.gz +0 -0
  1121. package/umd/persisters/persister-partykit-server/with-schemas/index.js +1 -0
  1122. package/umd/persisters/persister-powersync/index.js +1 -0
  1123. package/umd/persisters/persister-powersync/index.js.gz +0 -0
  1124. package/umd/persisters/persister-powersync/with-schemas/index.js +1 -0
  1125. package/umd/persisters/persister-remote/index.js +1 -0
  1126. package/umd/persisters/persister-remote/index.js.gz +0 -0
  1127. package/umd/persisters/persister-remote/with-schemas/index.js +1 -0
  1128. package/umd/persisters/persister-sqlite-wasm/index.js +1 -0
  1129. package/umd/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  1130. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -0
  1131. package/umd/persisters/persister-sqlite3/index.js +1 -0
  1132. package/umd/persisters/persister-sqlite3/index.js.gz +0 -0
  1133. package/umd/persisters/persister-sqlite3/with-schemas/index.js +1 -0
  1134. package/umd/persisters/persister-yjs/index.js +1 -0
  1135. package/umd/persisters/persister-yjs/index.js.gz +0 -0
  1136. package/umd/persisters/persister-yjs/with-schemas/index.js +1 -0
  1137. package/umd/persisters/with-schemas/index.js +1 -0
  1138. package/umd/queries/index.js +1 -0
  1139. package/umd/queries/index.js.gz +0 -0
  1140. package/umd/queries/with-schemas/index.js +1 -0
  1141. package/umd/relationships/index.js +1 -0
  1142. package/umd/relationships/index.js.gz +0 -0
  1143. package/umd/relationships/with-schemas/index.js +1 -0
  1144. package/umd/store/index.js +1 -0
  1145. package/umd/store/index.js.gz +0 -0
  1146. package/umd/store/with-schemas/index.js +1 -0
  1147. package/umd/synchronizers/index.js +1 -0
  1148. package/umd/synchronizers/index.js.gz +0 -0
  1149. package/umd/synchronizers/synchronizer-local/index.js +1 -0
  1150. package/umd/synchronizers/synchronizer-local/index.js.gz +0 -0
  1151. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -0
  1152. package/umd/synchronizers/synchronizer-ws-client/index.js +1 -0
  1153. package/umd/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  1154. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -0
  1155. package/umd/synchronizers/synchronizer-ws-server/index.js +1 -0
  1156. package/umd/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  1157. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -0
  1158. package/umd/synchronizers/with-schemas/index.js +1 -0
  1159. package/umd/tools/index.js +1 -0
  1160. package/umd/tools/index.js.gz +0 -0
  1161. package/umd/tools/with-schemas/index.js +1 -0
  1162. package/umd/ui-react/index.js +1 -0
  1163. package/umd/ui-react/index.js.gz +0 -0
  1164. package/umd/ui-react/with-schemas/index.js +1 -0
  1165. package/umd/ui-react-dom/index.js +1 -0
  1166. package/umd/ui-react-dom/index.js.gz +0 -0
  1167. package/umd/ui-react-dom/with-schemas/index.js +1 -0
  1168. package/umd/ui-react-inspector/index.js +1 -0
  1169. package/umd/ui-react-inspector/index.js.gz +0 -0
  1170. package/umd/ui-react-inspector/with-schemas/index.js +1 -0
  1171. package/umd/with-schemas/index.js +1 -0
  1172. package/with-schemas/index.js +1 -0
  1173. package/bin/cli.js +0 -2
  1174. package/lib/checkpoints.js +0 -1
  1175. package/lib/checkpoints.js.gz +0 -0
  1176. package/lib/cjs/checkpoints.cjs +0 -1
  1177. package/lib/cjs/checkpoints.cjs.gz +0 -0
  1178. package/lib/cjs/common.cjs +0 -1
  1179. package/lib/cjs/common.cjs.gz +0 -0
  1180. package/lib/cjs/indexes.cjs +0 -1
  1181. package/lib/cjs/indexes.cjs.gz +0 -0
  1182. package/lib/cjs/mergeable-store.cjs +0 -1
  1183. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  1184. package/lib/cjs/metrics.cjs +0 -1
  1185. package/lib/cjs/metrics.cjs.gz +0 -0
  1186. package/lib/cjs/persisters/persister-automerge.cjs +0 -1
  1187. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  1188. package/lib/cjs/persisters/persister-browser.cjs +0 -1
  1189. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  1190. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +0 -1
  1191. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  1192. package/lib/cjs/persisters/persister-electric-sql.cjs +0 -1
  1193. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  1194. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +0 -1
  1195. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  1196. package/lib/cjs/persisters/persister-expo-sqlite.cjs +0 -1
  1197. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  1198. package/lib/cjs/persisters/persister-file.cjs +0 -1
  1199. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  1200. package/lib/cjs/persisters/persister-indexed-db.cjs +0 -1
  1201. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  1202. package/lib/cjs/persisters/persister-partykit-client.cjs +0 -1
  1203. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  1204. package/lib/cjs/persisters/persister-partykit-server.cjs +0 -1
  1205. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  1206. package/lib/cjs/persisters/persister-remote.cjs +0 -1
  1207. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  1208. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +0 -1
  1209. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  1210. package/lib/cjs/persisters/persister-sqlite3.cjs +0 -1
  1211. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  1212. package/lib/cjs/persisters/persister-yjs.cjs +0 -1
  1213. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  1214. package/lib/cjs/persisters.cjs +0 -1
  1215. package/lib/cjs/persisters.cjs.gz +0 -0
  1216. package/lib/cjs/queries.cjs +0 -1
  1217. package/lib/cjs/queries.cjs.gz +0 -0
  1218. package/lib/cjs/relationships.cjs +0 -1
  1219. package/lib/cjs/relationships.cjs.gz +0 -0
  1220. package/lib/cjs/store.cjs +0 -1
  1221. package/lib/cjs/store.cjs.gz +0 -0
  1222. package/lib/cjs/tinybase.cjs +0 -1
  1223. package/lib/cjs/tinybase.cjs.gz +0 -0
  1224. package/lib/cjs/tools.cjs +0 -1
  1225. package/lib/cjs/tools.cjs.gz +0 -0
  1226. package/lib/cjs/ui-react-dom-debug.cjs +0 -1
  1227. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  1228. package/lib/cjs/ui-react-dom.cjs +0 -1
  1229. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  1230. package/lib/cjs/ui-react.cjs +0 -1
  1231. package/lib/cjs/ui-react.cjs.gz +0 -0
  1232. package/lib/cjs-es6/checkpoints.cjs +0 -1
  1233. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  1234. package/lib/cjs-es6/common.cjs +0 -1
  1235. package/lib/cjs-es6/common.cjs.gz +0 -0
  1236. package/lib/cjs-es6/indexes.cjs +0 -1
  1237. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  1238. package/lib/cjs-es6/mergeable-store.cjs +0 -1
  1239. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  1240. package/lib/cjs-es6/metrics.cjs +0 -1
  1241. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  1242. package/lib/cjs-es6/persisters/persister-automerge.cjs +0 -1
  1243. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  1244. package/lib/cjs-es6/persisters/persister-browser.cjs +0 -1
  1245. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  1246. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +0 -1
  1247. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  1248. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +0 -1
  1249. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  1250. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +0 -1
  1251. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  1252. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +0 -1
  1253. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  1254. package/lib/cjs-es6/persisters/persister-file.cjs +0 -1
  1255. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  1256. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +0 -1
  1257. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  1258. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +0 -1
  1259. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  1260. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +0 -1
  1261. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  1262. package/lib/cjs-es6/persisters/persister-remote.cjs +0 -1
  1263. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  1264. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +0 -1
  1265. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  1266. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +0 -1
  1267. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  1268. package/lib/cjs-es6/persisters/persister-yjs.cjs +0 -1
  1269. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  1270. package/lib/cjs-es6/persisters.cjs +0 -1
  1271. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  1272. package/lib/cjs-es6/queries.cjs +0 -1
  1273. package/lib/cjs-es6/queries.cjs.gz +0 -0
  1274. package/lib/cjs-es6/relationships.cjs +0 -1
  1275. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  1276. package/lib/cjs-es6/store.cjs +0 -1
  1277. package/lib/cjs-es6/store.cjs.gz +0 -0
  1278. package/lib/cjs-es6/tinybase.cjs +0 -1
  1279. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  1280. package/lib/cjs-es6/tools.cjs +0 -1
  1281. package/lib/cjs-es6/tools.cjs.gz +0 -0
  1282. package/lib/cjs-es6/ui-react-dom-debug.cjs +0 -1
  1283. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  1284. package/lib/cjs-es6/ui-react-dom.cjs +0 -1
  1285. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  1286. package/lib/cjs-es6/ui-react.cjs +0 -1
  1287. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  1288. package/lib/common.js +0 -1
  1289. package/lib/common.js.gz +0 -0
  1290. package/lib/debug/checkpoints.js +0 -429
  1291. package/lib/debug/common.js +0 -4
  1292. package/lib/debug/indexes.js +0 -546
  1293. package/lib/debug/mergeable-store.js +0 -1892
  1294. package/lib/debug/metrics.js +0 -518
  1295. package/lib/debug/persisters/persister-automerge.js +0 -341
  1296. package/lib/debug/persisters/persister-browser.js +0 -228
  1297. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +0 -850
  1298. package/lib/debug/persisters/persister-electric-sql.js +0 -858
  1299. package/lib/debug/persisters/persister-expo-sqlite-next.js +0 -853
  1300. package/lib/debug/persisters/persister-expo-sqlite.js +0 -851
  1301. package/lib/debug/persisters/persister-file.js +0 -213
  1302. package/lib/debug/persisters/persister-indexed-db.js +0 -296
  1303. package/lib/debug/persisters/persister-partykit-client.js +0 -284
  1304. package/lib/debug/persisters/persister-partykit-server.js +0 -292
  1305. package/lib/debug/persisters/persister-remote.js +0 -241
  1306. package/lib/debug/persisters/persister-sqlite-wasm.js +0 -859
  1307. package/lib/debug/persisters/persister-sqlite3.js +0 -861
  1308. package/lib/debug/persisters/persister-yjs.js +0 -386
  1309. package/lib/debug/persisters.js +0 -184
  1310. package/lib/debug/queries.js +0 -810
  1311. package/lib/debug/relationships.js +0 -528
  1312. package/lib/debug/store.js +0 -1614
  1313. package/lib/debug/tinybase.js +0 -3507
  1314. package/lib/debug/tools.js +0 -3299
  1315. package/lib/debug/ui-react-dom.js +0 -3251
  1316. package/lib/debug/ui-react.js +0 -1944
  1317. package/lib/es6/checkpoints.js +0 -1
  1318. package/lib/es6/checkpoints.js.gz +0 -0
  1319. package/lib/es6/common.js +0 -1
  1320. package/lib/es6/common.js.gz +0 -0
  1321. package/lib/es6/indexes.js +0 -1
  1322. package/lib/es6/indexes.js.gz +0 -0
  1323. package/lib/es6/mergeable-store.js +0 -1
  1324. package/lib/es6/mergeable-store.js.gz +0 -0
  1325. package/lib/es6/metrics.js +0 -1
  1326. package/lib/es6/metrics.js.gz +0 -0
  1327. package/lib/es6/persisters/persister-automerge.js +0 -1
  1328. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  1329. package/lib/es6/persisters/persister-browser.js +0 -1
  1330. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  1331. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +0 -1
  1332. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  1333. package/lib/es6/persisters/persister-electric-sql.js +0 -1
  1334. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  1335. package/lib/es6/persisters/persister-expo-sqlite-next.js +0 -1
  1336. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  1337. package/lib/es6/persisters/persister-expo-sqlite.js +0 -1
  1338. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  1339. package/lib/es6/persisters/persister-file.js +0 -1
  1340. package/lib/es6/persisters/persister-file.js.gz +0 -0
  1341. package/lib/es6/persisters/persister-indexed-db.js +0 -1
  1342. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  1343. package/lib/es6/persisters/persister-partykit-client.js +0 -1
  1344. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  1345. package/lib/es6/persisters/persister-partykit-server.js +0 -1
  1346. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  1347. package/lib/es6/persisters/persister-remote.js +0 -1
  1348. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  1349. package/lib/es6/persisters/persister-sqlite-wasm.js +0 -1
  1350. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  1351. package/lib/es6/persisters/persister-sqlite3.js +0 -1
  1352. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  1353. package/lib/es6/persisters/persister-yjs.js +0 -1
  1354. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  1355. package/lib/es6/persisters.js +0 -1
  1356. package/lib/es6/persisters.js.gz +0 -0
  1357. package/lib/es6/queries.js +0 -1
  1358. package/lib/es6/queries.js.gz +0 -0
  1359. package/lib/es6/relationships.js +0 -1
  1360. package/lib/es6/relationships.js.gz +0 -0
  1361. package/lib/es6/store.js +0 -1
  1362. package/lib/es6/store.js.gz +0 -0
  1363. package/lib/es6/tinybase.js +0 -1
  1364. package/lib/es6/tinybase.js.gz +0 -0
  1365. package/lib/es6/tools.js +0 -1
  1366. package/lib/es6/tools.js.gz +0 -0
  1367. package/lib/es6/ui-react-dom-debug.js +0 -1
  1368. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  1369. package/lib/es6/ui-react-dom.js +0 -1
  1370. package/lib/es6/ui-react-dom.js.gz +0 -0
  1371. package/lib/es6/ui-react.js +0 -1
  1372. package/lib/es6/ui-react.js.gz +0 -0
  1373. package/lib/indexes.js +0 -1
  1374. package/lib/indexes.js.gz +0 -0
  1375. package/lib/mergeable-store.js +0 -1
  1376. package/lib/mergeable-store.js.gz +0 -0
  1377. package/lib/metrics.js +0 -1
  1378. package/lib/metrics.js.gz +0 -0
  1379. package/lib/persisters/persister-automerge.js +0 -1
  1380. package/lib/persisters/persister-automerge.js.gz +0 -0
  1381. package/lib/persisters/persister-browser.js +0 -1
  1382. package/lib/persisters/persister-browser.js.gz +0 -0
  1383. package/lib/persisters/persister-cr-sqlite-wasm.js +0 -1
  1384. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  1385. package/lib/persisters/persister-electric-sql.js +0 -1
  1386. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  1387. package/lib/persisters/persister-expo-sqlite-next.js +0 -1
  1388. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  1389. package/lib/persisters/persister-expo-sqlite.js +0 -1
  1390. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  1391. package/lib/persisters/persister-file.js +0 -1
  1392. package/lib/persisters/persister-file.js.gz +0 -0
  1393. package/lib/persisters/persister-indexed-db.js +0 -1
  1394. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  1395. package/lib/persisters/persister-partykit-client.js +0 -1
  1396. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  1397. package/lib/persisters/persister-partykit-server.js +0 -1
  1398. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  1399. package/lib/persisters/persister-remote.js +0 -1
  1400. package/lib/persisters/persister-remote.js.gz +0 -0
  1401. package/lib/persisters/persister-sqlite-wasm.js +0 -1
  1402. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  1403. package/lib/persisters/persister-sqlite3.js +0 -1
  1404. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  1405. package/lib/persisters/persister-yjs.js +0 -1
  1406. package/lib/persisters/persister-yjs.js.gz +0 -0
  1407. package/lib/persisters.js +0 -1
  1408. package/lib/persisters.js.gz +0 -0
  1409. package/lib/queries.js +0 -1
  1410. package/lib/queries.js.gz +0 -0
  1411. package/lib/relationships.js +0 -1
  1412. package/lib/relationships.js.gz +0 -0
  1413. package/lib/store.js +0 -1
  1414. package/lib/store.js.gz +0 -0
  1415. package/lib/tinybase.js +0 -1
  1416. package/lib/tinybase.js.gz +0 -0
  1417. package/lib/tools.js +0 -1
  1418. package/lib/tools.js.gz +0 -0
  1419. package/lib/types/checkpoints.d.ts +0 -986
  1420. package/lib/types/common.d.ts +0 -106
  1421. package/lib/types/indexes.d.ts +0 -993
  1422. package/lib/types/mergeable-store.d.ts +0 -55
  1423. package/lib/types/metrics.d.ts +0 -856
  1424. package/lib/types/persisters/persister-automerge.d.ts +0 -146
  1425. package/lib/types/persisters/persister-browser.d.ts +0 -155
  1426. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +0 -142
  1427. package/lib/types/persisters/persister-electric-sql.d.ts +0 -165
  1428. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +0 -169
  1429. package/lib/types/persisters/persister-expo-sqlite.d.ts +0 -170
  1430. package/lib/types/persisters/persister-file.d.ts +0 -78
  1431. package/lib/types/persisters/persister-indexed-db.d.ts +0 -107
  1432. package/lib/types/persisters/persister-partykit-client.d.ts +0 -175
  1433. package/lib/types/persisters/persister-partykit-server.d.ts +0 -604
  1434. package/lib/types/persisters/persister-remote.d.ts +0 -104
  1435. package/lib/types/persisters/persister-sqlite-wasm.d.ts +0 -154
  1436. package/lib/types/persisters/persister-sqlite3.d.ts +0 -155
  1437. package/lib/types/persisters/persister-yjs.d.ts +0 -142
  1438. package/lib/types/persisters.d.ts +0 -1137
  1439. package/lib/types/queries.d.ts +0 -3506
  1440. package/lib/types/relationships.d.ts +0 -1242
  1441. package/lib/types/store.d.ts +0 -6967
  1442. package/lib/types/tinybase.d.ts +0 -14
  1443. package/lib/types/tools.d.ts +0 -521
  1444. package/lib/types/ui-react-dom.d.ts +0 -1705
  1445. package/lib/types/ui-react.d.ts +0 -13695
  1446. package/lib/types/with-schemas/checkpoints.d.ts +0 -1078
  1447. package/lib/types/with-schemas/common.d.ts +0 -106
  1448. package/lib/types/with-schemas/indexes.d.ts +0 -1131
  1449. package/lib/types/with-schemas/internal/queries.d.ts +0 -16
  1450. package/lib/types/with-schemas/internal/store.d.ts +0 -106
  1451. package/lib/types/with-schemas/internal/ui-react.d.ts +0 -806
  1452. package/lib/types/with-schemas/mergeable-store.d.ts +0 -85
  1453. package/lib/types/with-schemas/metrics.d.ts +0 -936
  1454. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +0 -158
  1455. package/lib/types/with-schemas/persisters/persister-browser.d.ts +0 -177
  1456. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +0 -155
  1457. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +0 -178
  1458. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +0 -182
  1459. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +0 -183
  1460. package/lib/types/with-schemas/persisters/persister-file.d.ts +0 -89
  1461. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +0 -119
  1462. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +0 -187
  1463. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +0 -652
  1464. package/lib/types/with-schemas/persisters/persister-remote.d.ts +0 -117
  1465. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +0 -168
  1466. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +0 -168
  1467. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +0 -154
  1468. package/lib/types/with-schemas/persisters.d.ts +0 -1242
  1469. package/lib/types/with-schemas/queries.d.ts +0 -3827
  1470. package/lib/types/with-schemas/relationships.d.ts +0 -1393
  1471. package/lib/types/with-schemas/store.d.ts +0 -8639
  1472. package/lib/types/with-schemas/tinybase.d.ts +0 -14
  1473. package/lib/types/with-schemas/tools.d.ts +0 -532
  1474. package/lib/types/with-schemas/ui-react-dom.d.ts +0 -1834
  1475. package/lib/types/with-schemas/ui-react.d.ts +0 -14595
  1476. package/lib/ui-react-dom.js +0 -1
  1477. package/lib/ui-react-dom.js.gz +0 -0
  1478. package/lib/ui-react.js +0 -1
  1479. package/lib/ui-react.js.gz +0 -0
  1480. package/lib/umd/checkpoints.js +0 -1
  1481. package/lib/umd/checkpoints.js.gz +0 -0
  1482. package/lib/umd/common.js +0 -1
  1483. package/lib/umd/common.js.gz +0 -0
  1484. package/lib/umd/indexes.js +0 -1
  1485. package/lib/umd/indexes.js.gz +0 -0
  1486. package/lib/umd/mergeable-store.js +0 -1
  1487. package/lib/umd/mergeable-store.js.gz +0 -0
  1488. package/lib/umd/metrics.js +0 -1
  1489. package/lib/umd/metrics.js.gz +0 -0
  1490. package/lib/umd/persisters/persister-automerge.js +0 -1
  1491. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  1492. package/lib/umd/persisters/persister-browser.js +0 -1
  1493. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  1494. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +0 -1
  1495. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  1496. package/lib/umd/persisters/persister-electric-sql.js +0 -1
  1497. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  1498. package/lib/umd/persisters/persister-expo-sqlite-next.js +0 -1
  1499. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  1500. package/lib/umd/persisters/persister-expo-sqlite.js +0 -1
  1501. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  1502. package/lib/umd/persisters/persister-file.js +0 -1
  1503. package/lib/umd/persisters/persister-file.js.gz +0 -0
  1504. package/lib/umd/persisters/persister-indexed-db.js +0 -1
  1505. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  1506. package/lib/umd/persisters/persister-partykit-client.js +0 -1
  1507. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  1508. package/lib/umd/persisters/persister-partykit-server.js +0 -1
  1509. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  1510. package/lib/umd/persisters/persister-remote.js +0 -1
  1511. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  1512. package/lib/umd/persisters/persister-sqlite-wasm.js +0 -1
  1513. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  1514. package/lib/umd/persisters/persister-sqlite3.js +0 -1
  1515. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  1516. package/lib/umd/persisters/persister-yjs.js +0 -1
  1517. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  1518. package/lib/umd/persisters.js +0 -1
  1519. package/lib/umd/persisters.js.gz +0 -0
  1520. package/lib/umd/queries.js +0 -1
  1521. package/lib/umd/queries.js.gz +0 -0
  1522. package/lib/umd/relationships.js +0 -1
  1523. package/lib/umd/relationships.js.gz +0 -0
  1524. package/lib/umd/store.js +0 -1
  1525. package/lib/umd/store.js.gz +0 -0
  1526. package/lib/umd/tinybase.js +0 -1
  1527. package/lib/umd/tinybase.js.gz +0 -0
  1528. package/lib/umd/tools.js +0 -1
  1529. package/lib/umd/tools.js.gz +0 -0
  1530. package/lib/umd/ui-react-dom-debug.js +0 -1
  1531. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  1532. package/lib/umd/ui-react-dom.js +0 -1
  1533. package/lib/umd/ui-react-dom.js.gz +0 -0
  1534. package/lib/umd/ui-react.js +0 -1
  1535. package/lib/umd/ui-react.js.gz +0 -0
  1536. package/lib/umd-es6/checkpoints.js +0 -1
  1537. package/lib/umd-es6/checkpoints.js.gz +0 -0
  1538. package/lib/umd-es6/common.js +0 -1
  1539. package/lib/umd-es6/common.js.gz +0 -0
  1540. package/lib/umd-es6/indexes.js +0 -1
  1541. package/lib/umd-es6/indexes.js.gz +0 -0
  1542. package/lib/umd-es6/mergeable-store.js +0 -1
  1543. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  1544. package/lib/umd-es6/metrics.js +0 -1
  1545. package/lib/umd-es6/metrics.js.gz +0 -0
  1546. package/lib/umd-es6/persisters/persister-automerge.js +0 -1
  1547. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  1548. package/lib/umd-es6/persisters/persister-browser.js +0 -1
  1549. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  1550. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +0 -1
  1551. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  1552. package/lib/umd-es6/persisters/persister-electric-sql.js +0 -1
  1553. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  1554. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +0 -1
  1555. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  1556. package/lib/umd-es6/persisters/persister-expo-sqlite.js +0 -1
  1557. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  1558. package/lib/umd-es6/persisters/persister-file.js +0 -1
  1559. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  1560. package/lib/umd-es6/persisters/persister-indexed-db.js +0 -1
  1561. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  1562. package/lib/umd-es6/persisters/persister-partykit-client.js +0 -1
  1563. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  1564. package/lib/umd-es6/persisters/persister-partykit-server.js +0 -1
  1565. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  1566. package/lib/umd-es6/persisters/persister-remote.js +0 -1
  1567. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  1568. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +0 -1
  1569. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  1570. package/lib/umd-es6/persisters/persister-sqlite3.js +0 -1
  1571. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  1572. package/lib/umd-es6/persisters/persister-yjs.js +0 -1
  1573. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  1574. package/lib/umd-es6/persisters.js +0 -1
  1575. package/lib/umd-es6/persisters.js.gz +0 -0
  1576. package/lib/umd-es6/queries.js +0 -1
  1577. package/lib/umd-es6/queries.js.gz +0 -0
  1578. package/lib/umd-es6/relationships.js +0 -1
  1579. package/lib/umd-es6/relationships.js.gz +0 -0
  1580. package/lib/umd-es6/store.js +0 -1
  1581. package/lib/umd-es6/store.js.gz +0 -0
  1582. package/lib/umd-es6/tinybase.js +0 -1
  1583. package/lib/umd-es6/tinybase.js.gz +0 -0
  1584. package/lib/umd-es6/tools.js +0 -1
  1585. package/lib/umd-es6/tools.js.gz +0 -0
  1586. package/lib/umd-es6/ui-react-dom-debug.js +0 -1
  1587. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  1588. package/lib/umd-es6/ui-react-dom.js +0 -1
  1589. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  1590. package/lib/umd-es6/ui-react.js +0 -1
  1591. package/lib/umd-es6/ui-react.js.gz +0 -0
@@ -0,0 +1,2249 @@
1
+ 'use strict';
2
+
3
+ const getTypeOf = (thing) => typeof thing;
4
+ const EMPTY_STRING = '';
5
+ const STRING = getTypeOf(EMPTY_STRING);
6
+ const BOOLEAN = getTypeOf(true);
7
+ const NUMBER = getTypeOf(0);
8
+ const FUNCTION = getTypeOf(getTypeOf);
9
+ const TYPE = 'type';
10
+ const DEFAULT = 'default';
11
+ const LISTENER = 'Listener';
12
+ const ADD = 'add';
13
+ const HAS = 'Has';
14
+ const IDS = 'Ids';
15
+ const TABLE = 'Table';
16
+ const TABLES = TABLE + 's';
17
+ const TABLE_IDS = TABLE + IDS;
18
+ const ROW = 'Row';
19
+ const ROW_COUNT = ROW + 'Count';
20
+ const ROW_IDS = ROW + IDS;
21
+ const CELL = 'Cell';
22
+ const CELL_IDS = CELL + IDS;
23
+ const VALUE = 'Value';
24
+ const VALUES = VALUE + 's';
25
+ const VALUE_IDS = VALUE + IDS;
26
+ const id = (key) => EMPTY_STRING + key;
27
+ const strStartsWith = (str, prefix) => str.startsWith(prefix);
28
+ const strEndsWith = (str, suffix) => str.endsWith(suffix);
29
+
30
+ const mathMax = Math.max;
31
+ const isFiniteNumber = isFinite;
32
+ const isInstanceOf = (thing, cls) => thing instanceof cls;
33
+ const isUndefined = (thing) => thing == void 0;
34
+ const ifNotUndefined = (value, then, otherwise) =>
35
+ isUndefined(value) ? otherwise?.() : then(value);
36
+ const isTypeStringOrBoolean = (type) => type == STRING || type == BOOLEAN;
37
+ const isString = (thing) => getTypeOf(thing) == STRING;
38
+ const isFunction = (thing) => getTypeOf(thing) == FUNCTION;
39
+ const isArray = (thing) => Array.isArray(thing);
40
+ const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
41
+ const size = (arrayOrString) => arrayOrString.length;
42
+ const test = (regex, subject) => regex.test(subject);
43
+
44
+ const arrayHas = (array, value) => array.includes(value);
45
+ const arrayEvery = (array, cb) => array.every(cb);
46
+ const arrayIsEqual = (array1, array2) =>
47
+ size(array1) === size(array2) &&
48
+ arrayEvery(array1, (value1, index) => array2[index] === value1);
49
+ const arraySort = (array, sorter) => array.sort(sorter);
50
+ const arrayForEach = (array, cb) => array.forEach(cb);
51
+ const arrayMap = (array, cb) => array.map(cb);
52
+ const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
53
+ const arrayPush = (array, ...values) => array.push(...values);
54
+ const arrayShift = (array) => array.shift();
55
+
56
+ const object = Object;
57
+ const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
58
+ const objEntries = object.entries;
59
+ const objFrozen = object.isFrozen;
60
+ const isObject = (obj) =>
61
+ !isUndefined(obj) &&
62
+ ifNotUndefined(
63
+ getPrototypeOf(obj),
64
+ (objPrototype) =>
65
+ objPrototype == object.prototype ||
66
+ isUndefined(getPrototypeOf(objPrototype)),
67
+
68
+ /* istanbul ignore next */
69
+ () => true,
70
+ );
71
+ const objIds = object.keys;
72
+ const objFreeze = object.freeze;
73
+ const objNew = (entries = []) => object.fromEntries(entries);
74
+ const objHas = (obj, id) => id in obj;
75
+ const objDel = (obj, id) => {
76
+ delete obj[id];
77
+ return obj;
78
+ };
79
+ const objForEach = (obj, cb) =>
80
+ arrayForEach(objEntries(obj), ([id, value]) => cb(value, id));
81
+ const objToArray = (obj, cb) =>
82
+ arrayMap(objEntries(obj), ([id, value]) => cb(value, id));
83
+ const objSize = (obj) => size(objIds(obj));
84
+ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
85
+ const objEnsure = (obj, id, getDefaultValue) => {
86
+ if (!objHas(obj, id)) {
87
+ obj[id] = getDefaultValue();
88
+ }
89
+ return obj[id];
90
+ };
91
+ const objValidate = (obj, validateChild, onInvalidObj, emptyIsValid = 0) => {
92
+ if (
93
+ isUndefined(obj) ||
94
+ !isObject(obj) ||
95
+ (!emptyIsValid && objIsEmpty(obj)) ||
96
+ objFrozen(obj)
97
+ ) {
98
+ onInvalidObj?.();
99
+ return false;
100
+ }
101
+ objToArray(obj, (child, id) => {
102
+ if (!validateChild(child, id)) {
103
+ objDel(obj, id);
104
+ }
105
+ });
106
+ return emptyIsValid ? true : !objIsEmpty(obj);
107
+ };
108
+
109
+ const setNew = (entryOrEntries) =>
110
+ new Set(
111
+ isArray(entryOrEntries) || isUndefined(entryOrEntries)
112
+ ? entryOrEntries
113
+ : [entryOrEntries],
114
+ );
115
+ const setAdd = (set, value) => set?.add(value);
116
+
117
+ const collSizeN = (collSizer) => (coll) =>
118
+ arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
119
+ const collSize = (coll) => coll?.size ?? 0;
120
+ const collSize2 = collSizeN(collSize);
121
+ const collSize3 = collSizeN(collSize2);
122
+ const collSize4 = collSizeN(collSize3);
123
+ const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
124
+ const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
125
+ const collValues = (coll) => [...(coll?.values() ?? [])];
126
+ const collClear = (coll) => coll.clear();
127
+ const collForEach = (coll, cb) => coll?.forEach(cb);
128
+ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
129
+
130
+ const mapNew = (entries) => new Map(entries);
131
+ const mapKeys = (map) => [...(map?.keys() ?? [])];
132
+ const mapGet = (map, key) => map?.get(key);
133
+ const mapForEach = (map, cb) =>
134
+ collForEach(map, (value, key) => cb(key, value));
135
+ const mapMap = (coll, cb) =>
136
+ arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
137
+ const mapSet = (map, key, value) =>
138
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
139
+ const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
140
+ if (!collHas(map, key)) {
141
+ mapSet(map, key, getDefaultValue());
142
+ } else {
143
+ hadExistingValue?.(mapGet(map, key));
144
+ }
145
+ return mapGet(map, key);
146
+ };
147
+ const mapMatch = (map, obj, set, del = mapSet) => {
148
+ objToArray(obj, (value, id) => set(map, id, value));
149
+ mapForEach(map, (id) => (objHas(obj, id) ? 0 : del(map, id)));
150
+ return map;
151
+ };
152
+ const mapToObj = (map, valueMapper, excludeMapValue, excludeObjValue) => {
153
+ const obj = {};
154
+ collForEach(map, (mapValue, id) => {
155
+ if (!excludeMapValue?.(mapValue, id)) {
156
+ const objValue = valueMapper ? valueMapper(mapValue, id) : mapValue;
157
+ excludeObjValue?.(objValue) ? 0 : (obj[id] = objValue);
158
+ }
159
+ });
160
+ return obj;
161
+ };
162
+ const mapToObj2 = (map, valueMapper, excludeMapValue) =>
163
+ mapToObj(
164
+ map,
165
+ (childMap) => mapToObj(childMap, valueMapper, excludeMapValue),
166
+ collIsEmpty,
167
+ objIsEmpty,
168
+ );
169
+ const mapToObj3 = (map, valueMapper, excludeMapValue) =>
170
+ mapToObj(
171
+ map,
172
+ (childMap) => mapToObj2(childMap, valueMapper, excludeMapValue),
173
+ collIsEmpty,
174
+ objIsEmpty,
175
+ );
176
+ const mapClone = (map, mapValue) => {
177
+ const map2 = mapNew();
178
+ collForEach(map, (value, key) => map2.set(key, mapValue?.(value) ?? value));
179
+ return map2;
180
+ };
181
+ const mapClone2 = (map) => mapClone(map, mapClone);
182
+ const mapClone3 = (map) => mapClone(map, mapClone2);
183
+ const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
184
+ ifNotUndefined(
185
+ (ensureLeaf ? mapEnsure : mapGet)(
186
+ node,
187
+ path[p],
188
+ p > size(path) - 2 ? ensureLeaf : mapNew,
189
+ ),
190
+ (nodeOrLeaf) => {
191
+ if (p > size(path) - 2) {
192
+ if (pruneLeaf?.(nodeOrLeaf)) {
193
+ mapSet(node, path[p]);
194
+ }
195
+ return nodeOrLeaf;
196
+ }
197
+ const leaf = visitTree(nodeOrLeaf, path, ensureLeaf, pruneLeaf, p + 1);
198
+ if (collIsEmpty(nodeOrLeaf)) {
199
+ mapSet(node, path[p]);
200
+ }
201
+ return leaf;
202
+ },
203
+ );
204
+
205
+ const textEncoder = new globalThis.TextEncoder();
206
+ const getHash = (value) => {
207
+ let hash = 2166136261;
208
+ arrayForEach(textEncoder.encode(value), (char) => {
209
+ hash ^= char;
210
+ hash +=
211
+ (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
212
+ });
213
+ return hash >>> 0;
214
+ };
215
+
216
+ const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
217
+ const stampCloneWithoutHash = ([value, time]) => newStamp(value, time);
218
+ const newStamp = (value, time) => (time ? [value, time] : [value]);
219
+ const getStampHash = (stamp) => stamp[2];
220
+ const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
221
+ const replaceTimeHash = (oldTime, newTime) =>
222
+ newTime > oldTime ? (oldTime ? getHash(oldTime) : 0) ^ getHash(newTime) : 0;
223
+ const getLatestTime = (time1, time2) =>
224
+ ((time1 ?? '') > (time2 ?? '') ? time1 : time2) ?? '';
225
+ const stampUpdate = (stamp, hash, time) => {
226
+ stamp[2] = hash >>> 0;
227
+ if (time > stamp[1]) {
228
+ stamp[1] = time;
229
+ }
230
+ };
231
+ const stampNewObj = (time = EMPTY_STRING) => newStamp(objNew(), time);
232
+ const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
233
+ const stampMapToObjWithHash = (
234
+ [map, time, hash],
235
+ mapper = stampCloneWithHash,
236
+ ) => [mapToObj(map, mapper), time, hash];
237
+ const stampMapToObjWithoutHash = (
238
+ [map, time],
239
+ mapper = stampCloneWithoutHash,
240
+ ) => newStamp(mapToObj(map, mapper), time);
241
+ const stampValidate = (stamp, validateThing) =>
242
+ isArray(stamp) &&
243
+ size(stamp) == 3 &&
244
+ isString(stamp[1]) &&
245
+ getTypeOf(stamp[2]) == NUMBER &&
246
+ isFiniteNumber(stamp[2]) &&
247
+ validateThing(stamp[0]);
248
+
249
+ const INTEGER = /^\d+$/;
250
+ const getPoolFunctions = () => {
251
+ const pool = [];
252
+ let nextId = 0;
253
+ return [
254
+ (reuse) => (reuse ? arrayShift(pool) : null) ?? EMPTY_STRING + nextId++,
255
+ (id) => {
256
+ if (test(INTEGER, id) && size(pool) < 1e3) {
257
+ arrayPush(pool, id);
258
+ }
259
+ },
260
+ ];
261
+ };
262
+
263
+ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
264
+ const leaves = [];
265
+ const deep = (node, p) =>
266
+ p == size(path)
267
+ ? arrayPush(leaves, node)
268
+ : path[p] === null
269
+ ? collForEach(node, (node2) => deep(node2, p + 1))
270
+ : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
271
+ deep(deepIdSet, 0);
272
+ return leaves;
273
+ };
274
+ const getListenerFunctions = (getThing) => {
275
+ let thing;
276
+ const [getId, releaseId] = getPoolFunctions();
277
+ const allListeners = mapNew();
278
+ const addListener = (
279
+ listener,
280
+ idSetNode,
281
+ path,
282
+ pathGetters = [],
283
+ extraArgsGetter = () => [],
284
+ ) => {
285
+ thing ??= getThing();
286
+ const id = getId(1);
287
+ mapSet(allListeners, id, [
288
+ listener,
289
+ idSetNode,
290
+ path,
291
+ pathGetters,
292
+ extraArgsGetter,
293
+ ]);
294
+ setAdd(visitTree(idSetNode, path ?? [EMPTY_STRING], setNew), id);
295
+ return id;
296
+ };
297
+ const callListeners = (idSetNode, ids, ...extraArgs) =>
298
+ arrayForEach(getWildcardedLeaves(idSetNode, ids), (set) =>
299
+ collForEach(set, (id) =>
300
+ mapGet(allListeners, id)[0](thing, ...(ids ?? []), ...extraArgs),
301
+ ),
302
+ );
303
+ const delListener = (id) =>
304
+ ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
305
+ visitTree(idSetNode, idOrNulls ?? [EMPTY_STRING], void 0, (idSet) => {
306
+ collDel(idSet, id);
307
+ return collIsEmpty(idSet) ? 1 : 0;
308
+ });
309
+ mapSet(allListeners, id);
310
+ releaseId(id);
311
+ return idOrNulls;
312
+ });
313
+ const callListener = (id) =>
314
+ ifNotUndefined(
315
+ mapGet(allListeners, id),
316
+ ([listener, , path = [], pathGetters, extraArgsGetter]) => {
317
+ const callWithIds = (...ids) => {
318
+ const index = size(ids);
319
+ index == size(path)
320
+ ? listener(thing, ...ids, ...extraArgsGetter(ids))
321
+ : isUndefined(path[index])
322
+ ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
323
+ callWithIds(...ids, id2),
324
+ )
325
+ : callWithIds(...ids, path[index]);
326
+ };
327
+ callWithIds();
328
+ },
329
+ );
330
+ return [addListener, callListeners, delListener, callListener];
331
+ };
332
+
333
+ const pairNew = (value) => [value, value];
334
+ const pairCollSize2 = (pair, func = collSize2) => func(pair[0]) + func(pair[1]);
335
+ const pairNewMap = () => [mapNew(), mapNew()];
336
+ const pairClone = (array) => [...array];
337
+ const pairIsEqual = ([entry1, entry2]) => entry1 === entry2;
338
+
339
+ const getCellOrValueType = (cellOrValue) => {
340
+ const type = getTypeOf(cellOrValue);
341
+ return isTypeStringOrBoolean(type) ||
342
+ (type == NUMBER && isFiniteNumber(cellOrValue))
343
+ ? type
344
+ : void 0;
345
+ };
346
+ const isCellOrValueOrNullOrUndefined = (cellOrValue) =>
347
+ isUndefined(cellOrValue) || !isUndefined(getCellOrValueType(cellOrValue));
348
+ const setOrDelCell = (store, tableId, rowId, cellId, cell) =>
349
+ isUndefined(cell)
350
+ ? store.delCell(tableId, rowId, cellId, true)
351
+ : store.setCell(tableId, rowId, cellId, cell);
352
+ const setOrDelValue = (store, valueId, value) =>
353
+ isUndefined(value) ? store.delValue(valueId) : store.setValue(valueId, value);
354
+
355
+ const jsonStringWithMap = (obj) =>
356
+ JSON.stringify(obj, (_key, value) =>
357
+ isInstanceOf(value, Map) ? object.fromEntries([...value]) : value,
358
+ );
359
+ const jsonParse = JSON.parse;
360
+
361
+ const MASK6 = 63;
362
+ const ENCODE =
363
+ '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz'.split(
364
+ EMPTY_STRING,
365
+ );
366
+ const DECODE = mapNew(arrayMap(ENCODE, (char, index) => [char, index]));
367
+ const encode = (num) => ENCODE[num & MASK6];
368
+ const decode = (str, pos) => mapGet(DECODE, str[pos]) ?? 0;
369
+
370
+ const defaultSorter = (sortKey1, sortKey2) =>
371
+ (sortKey1 ?? 0) < (sortKey2 ?? 0) ? -1 : 1;
372
+ const getUniqueId = (length = 16) =>
373
+ arrayReduce(
374
+ crypto.getRandomValues(new Uint8Array(length)),
375
+ (uniqueId, number) => uniqueId + encode(number),
376
+ '',
377
+ );
378
+
379
+ const idsChanged = (changedIds, id2, addedOrRemoved) =>
380
+ mapSet(
381
+ changedIds,
382
+ id2,
383
+ mapGet(changedIds, id2) == -addedOrRemoved ? void 0 : addedOrRemoved,
384
+ );
385
+ const createStore = () => {
386
+ let hasTablesSchema;
387
+ let hasValuesSchema;
388
+ let hadTables = false;
389
+ let hadValues = false;
390
+ let transactions = 0;
391
+ let internalListeners = [];
392
+ const changedTableIds = mapNew();
393
+ const changedTableCellIds = mapNew();
394
+ const changedRowCount = mapNew();
395
+ const changedRowIds = mapNew();
396
+ const changedCellIds = mapNew();
397
+ const changedCells = mapNew();
398
+ const changedValueIds = mapNew();
399
+ const changedValues = mapNew();
400
+ const invalidCells = mapNew();
401
+ const invalidValues = mapNew();
402
+ const tablesSchemaMap = mapNew();
403
+ const tablesSchemaRowCache = mapNew();
404
+ const valuesSchemaMap = mapNew();
405
+ const valuesDefaulted = mapNew();
406
+ const valuesNonDefaulted = setNew();
407
+ const tablePoolFunctions = mapNew();
408
+ const tableCellIds = mapNew();
409
+ const tablesMap = mapNew();
410
+ const valuesMap = mapNew();
411
+ const hasTablesListeners = pairNewMap();
412
+ const tablesListeners = pairNewMap();
413
+ const tableIdsListeners = pairNewMap();
414
+ const hasTableListeners = pairNewMap();
415
+ const tableListeners = pairNewMap();
416
+ const tableCellIdsListeners = pairNewMap();
417
+ const hasTableCellListeners = pairNewMap();
418
+ const rowCountListeners = pairNewMap();
419
+ const rowIdsListeners = pairNewMap();
420
+ const sortedRowIdsListeners = pairNewMap();
421
+ const hasRowListeners = pairNewMap();
422
+ const rowListeners = pairNewMap();
423
+ const cellIdsListeners = pairNewMap();
424
+ const hasCellListeners = pairNewMap();
425
+ const cellListeners = pairNewMap();
426
+ const invalidCellListeners = pairNewMap();
427
+ const invalidValueListeners = pairNewMap();
428
+ const hasValuesListeners = pairNewMap();
429
+ const valuesListeners = pairNewMap();
430
+ const valueIdsListeners = pairNewMap();
431
+ const hasValueListeners = pairNewMap();
432
+ const valueListeners = pairNewMap();
433
+ const startTransactionListeners = mapNew();
434
+ const finishTransactionListeners = pairNewMap();
435
+ const [addListener, callListeners, delListenerImpl, callListenerImpl] =
436
+ getListenerFunctions(() => store);
437
+ const validateTablesSchema = (tableSchema) =>
438
+ objValidate(tableSchema, (tableSchema2) =>
439
+ objValidate(tableSchema2, validateCellOrValueSchema),
440
+ );
441
+ const validateValuesSchema = (valuesSchema) =>
442
+ objValidate(valuesSchema, validateCellOrValueSchema);
443
+ const validateCellOrValueSchema = (schema) => {
444
+ if (!objValidate(schema, (_child, id2) => arrayHas([TYPE, DEFAULT], id2))) {
445
+ return false;
446
+ }
447
+ const type = schema[TYPE];
448
+ if (!isTypeStringOrBoolean(type) && type != NUMBER) {
449
+ return false;
450
+ }
451
+ if (getCellOrValueType(schema[DEFAULT]) != type) {
452
+ objDel(schema, DEFAULT);
453
+ }
454
+ return true;
455
+ };
456
+ const validateTables = (tables) =>
457
+ objValidate(tables, validateTable, cellInvalid);
458
+ const validateTable = (table, tableId) =>
459
+ (!hasTablesSchema ||
460
+ collHas(tablesSchemaMap, tableId) ||
461
+ /* istanbul ignore next */
462
+ cellInvalid(tableId)) &&
463
+ objValidate(
464
+ table,
465
+ (row, rowId) => validateRow(tableId, rowId, row),
466
+ () => cellInvalid(tableId),
467
+ );
468
+ const validateRow = (tableId, rowId, row, skipDefaults) =>
469
+ objValidate(
470
+ skipDefaults ? row : addDefaultsToRow(row, tableId, rowId),
471
+ (cell, cellId) =>
472
+ ifNotUndefined(
473
+ getValidatedCell(tableId, rowId, cellId, cell),
474
+ (validCell) => {
475
+ row[cellId] = validCell;
476
+ return true;
477
+ },
478
+ () => false,
479
+ ),
480
+ () => cellInvalid(tableId, rowId),
481
+ );
482
+ const getValidatedCell = (tableId, rowId, cellId, cell) =>
483
+ hasTablesSchema
484
+ ? ifNotUndefined(
485
+ mapGet(mapGet(tablesSchemaMap, tableId), cellId),
486
+ (cellSchema) =>
487
+ getCellOrValueType(cell) != cellSchema[TYPE]
488
+ ? cellInvalid(tableId, rowId, cellId, cell, cellSchema[DEFAULT])
489
+ : cell,
490
+ () => cellInvalid(tableId, rowId, cellId, cell),
491
+ )
492
+ : isUndefined(getCellOrValueType(cell))
493
+ ? cellInvalid(tableId, rowId, cellId, cell)
494
+ : cell;
495
+ const validateValues = (values, skipDefaults) =>
496
+ objValidate(
497
+ skipDefaults ? values : addDefaultsToValues(values),
498
+ (value, valueId) =>
499
+ ifNotUndefined(
500
+ getValidatedValue(valueId, value),
501
+ (validValue) => {
502
+ values[valueId] = validValue;
503
+ return true;
504
+ },
505
+ () => false,
506
+ ),
507
+ () => valueInvalid(),
508
+ );
509
+ const getValidatedValue = (valueId, value) =>
510
+ hasValuesSchema
511
+ ? ifNotUndefined(
512
+ mapGet(valuesSchemaMap, valueId),
513
+ (valueSchema) =>
514
+ getCellOrValueType(value) != valueSchema[TYPE]
515
+ ? valueInvalid(valueId, value, valueSchema[DEFAULT])
516
+ : value,
517
+ () => valueInvalid(valueId, value),
518
+ )
519
+ : isUndefined(getCellOrValueType(value))
520
+ ? valueInvalid(valueId, value)
521
+ : value;
522
+ const addDefaultsToRow = (row, tableId, rowId) => {
523
+ ifNotUndefined(
524
+ mapGet(tablesSchemaRowCache, tableId),
525
+ ([rowDefaulted, rowNonDefaulted]) => {
526
+ collForEach(rowDefaulted, (cell, cellId) => {
527
+ if (!objHas(row, cellId)) {
528
+ row[cellId] = cell;
529
+ }
530
+ });
531
+ collForEach(rowNonDefaulted, (cellId) => {
532
+ if (!objHas(row, cellId)) {
533
+ cellInvalid(tableId, rowId, cellId);
534
+ }
535
+ });
536
+ },
537
+ );
538
+ return row;
539
+ };
540
+ const addDefaultsToValues = (values) => {
541
+ if (hasValuesSchema) {
542
+ collForEach(valuesDefaulted, (value, valueId) => {
543
+ if (!objHas(values, valueId)) {
544
+ values[valueId] = value;
545
+ }
546
+ });
547
+ collForEach(valuesNonDefaulted, (valueId) => {
548
+ if (!objHas(values, valueId)) {
549
+ valueInvalid(valueId);
550
+ }
551
+ });
552
+ }
553
+ return values;
554
+ };
555
+ const setValidTablesSchema = (tablesSchema) =>
556
+ mapMatch(
557
+ tablesSchemaMap,
558
+ tablesSchema,
559
+ (_tablesSchema, tableId, tableSchema) => {
560
+ const rowDefaulted = mapNew();
561
+ const rowNonDefaulted = setNew();
562
+ mapMatch(
563
+ mapEnsure(tablesSchemaMap, tableId, mapNew),
564
+ tableSchema,
565
+ (tableSchemaMap, cellId, cellSchema) => {
566
+ mapSet(tableSchemaMap, cellId, cellSchema);
567
+ ifNotUndefined(
568
+ cellSchema[DEFAULT],
569
+ (def) => mapSet(rowDefaulted, cellId, def),
570
+ () => setAdd(rowNonDefaulted, cellId),
571
+ );
572
+ },
573
+ );
574
+ mapSet(tablesSchemaRowCache, tableId, [rowDefaulted, rowNonDefaulted]);
575
+ },
576
+ (_tablesSchema, tableId) => {
577
+ mapSet(tablesSchemaMap, tableId);
578
+ mapSet(tablesSchemaRowCache, tableId);
579
+ },
580
+ );
581
+ const setValidValuesSchema = (valuesSchema) =>
582
+ mapMatch(
583
+ valuesSchemaMap,
584
+ valuesSchema,
585
+ (_valuesSchema, valueId, valueSchema) => {
586
+ mapSet(valuesSchemaMap, valueId, valueSchema);
587
+ ifNotUndefined(
588
+ valueSchema[DEFAULT],
589
+ (def) => mapSet(valuesDefaulted, valueId, def),
590
+ () => setAdd(valuesNonDefaulted, valueId),
591
+ );
592
+ },
593
+ (_valuesSchema, valueId) => {
594
+ mapSet(valuesSchemaMap, valueId);
595
+ mapSet(valuesDefaulted, valueId);
596
+ collDel(valuesNonDefaulted, valueId);
597
+ },
598
+ );
599
+ const setOrDelTables = (tables) =>
600
+ objIsEmpty(tables) ? delTables() : setTables(tables);
601
+ const setValidTables = (tables) =>
602
+ mapMatch(
603
+ tablesMap,
604
+ tables,
605
+ (_tables, tableId, table) => setValidTable(tableId, table),
606
+ (_tables, tableId) => delValidTable(tableId),
607
+ );
608
+ const setValidTable = (tableId, table) =>
609
+ mapMatch(
610
+ mapEnsure(tablesMap, tableId, () => {
611
+ tableIdsChanged(tableId, 1);
612
+ mapSet(tablePoolFunctions, tableId, getPoolFunctions());
613
+ mapSet(tableCellIds, tableId, mapNew());
614
+ return mapNew();
615
+ }),
616
+ table,
617
+ (tableMap, rowId, row) => setValidRow(tableId, tableMap, rowId, row),
618
+ (tableMap, rowId) => delValidRow(tableId, tableMap, rowId),
619
+ );
620
+ const setValidRow = (tableId, tableMap, rowId, row, forceDel) =>
621
+ mapMatch(
622
+ mapEnsure(tableMap, rowId, () => {
623
+ rowIdsChanged(tableId, rowId, 1);
624
+ return mapNew();
625
+ }),
626
+ row,
627
+ (rowMap, cellId, cell) =>
628
+ setValidCell(tableId, rowId, rowMap, cellId, cell),
629
+ (rowMap, cellId) =>
630
+ delValidCell(tableId, tableMap, rowId, rowMap, cellId, forceDel),
631
+ );
632
+ const setValidCell = (tableId, rowId, rowMap, cellId, cell) => {
633
+ if (!collHas(rowMap, cellId)) {
634
+ cellIdsChanged(tableId, rowId, cellId, 1);
635
+ }
636
+ const oldCell = mapGet(rowMap, cellId);
637
+ if (cell !== oldCell) {
638
+ cellChanged(tableId, rowId, cellId, oldCell, cell);
639
+ mapSet(rowMap, cellId, cell);
640
+ }
641
+ };
642
+ const setCellIntoDefaultRow = (tableId, tableMap, rowId, cellId, validCell) =>
643
+ ifNotUndefined(
644
+ mapGet(tableMap, rowId),
645
+ (rowMap) => setValidCell(tableId, rowId, rowMap, cellId, validCell),
646
+ () =>
647
+ setValidRow(
648
+ tableId,
649
+ tableMap,
650
+ rowId,
651
+ addDefaultsToRow({[cellId]: validCell}, tableId, rowId),
652
+ ),
653
+ );
654
+ const setOrDelValues = (values) =>
655
+ objIsEmpty(values) ? delValues() : setValues(values);
656
+ const setValidValues = (values) =>
657
+ mapMatch(
658
+ valuesMap,
659
+ values,
660
+ (_valuesMap, valueId, value) => setValidValue(valueId, value),
661
+ (_valuesMap, valueId) => delValidValue(valueId),
662
+ );
663
+ const setValidValue = (valueId, value) => {
664
+ if (!collHas(valuesMap, valueId)) {
665
+ valueIdsChanged(valueId, 1);
666
+ }
667
+ const oldValue = mapGet(valuesMap, valueId);
668
+ if (value !== oldValue) {
669
+ valueChanged(valueId, oldValue, value);
670
+ mapSet(valuesMap, valueId, value);
671
+ }
672
+ };
673
+ const getNewRowId = (tableId, reuse) => {
674
+ const [getId] = mapGet(tablePoolFunctions, tableId);
675
+ const rowId = getId(reuse);
676
+ if (!collHas(mapGet(tablesMap, tableId), rowId)) {
677
+ return rowId;
678
+ }
679
+ return getNewRowId(tableId, reuse);
680
+ };
681
+ const getOrCreateTable = (tableId) =>
682
+ mapGet(tablesMap, tableId) ?? setValidTable(tableId, {});
683
+ const delValidTable = (tableId) => setValidTable(tableId, {});
684
+ const delValidRow = (tableId, tableMap, rowId) => {
685
+ const [, releaseId] = mapGet(tablePoolFunctions, tableId);
686
+ releaseId(rowId);
687
+ setValidRow(tableId, tableMap, rowId, {}, true);
688
+ };
689
+ const delValidCell = (tableId, table, rowId, row, cellId, forceDel) => {
690
+ const defaultCell = mapGet(
691
+ mapGet(tablesSchemaRowCache, tableId)?.[0],
692
+ cellId,
693
+ );
694
+ if (!isUndefined(defaultCell) && !forceDel) {
695
+ return setValidCell(tableId, rowId, row, cellId, defaultCell);
696
+ }
697
+ const delCell2 = (cellId2) => {
698
+ cellChanged(tableId, rowId, cellId2, mapGet(row, cellId2));
699
+ cellIdsChanged(tableId, rowId, cellId2, -1);
700
+ mapSet(row, cellId2);
701
+ };
702
+ isUndefined(defaultCell) ? delCell2(cellId) : mapForEach(row, delCell2);
703
+ if (collIsEmpty(row)) {
704
+ rowIdsChanged(tableId, rowId, -1);
705
+ if (collIsEmpty(mapSet(table, rowId))) {
706
+ tableIdsChanged(tableId, -1);
707
+ mapSet(tablesMap, tableId);
708
+ mapSet(tablePoolFunctions, tableId);
709
+ mapSet(tableCellIds, tableId);
710
+ }
711
+ }
712
+ };
713
+ const delValidValue = (valueId) => {
714
+ const defaultValue = mapGet(valuesDefaulted, valueId);
715
+ if (!isUndefined(defaultValue)) {
716
+ return setValidValue(valueId, defaultValue);
717
+ }
718
+ valueChanged(valueId, mapGet(valuesMap, valueId));
719
+ valueIdsChanged(valueId, -1);
720
+ mapSet(valuesMap, valueId);
721
+ };
722
+ const tableIdsChanged = (tableId, addedOrRemoved) =>
723
+ idsChanged(changedTableIds, tableId, addedOrRemoved);
724
+ const rowIdsChanged = (tableId, rowId, addedOrRemoved) =>
725
+ idsChanged(
726
+ mapEnsure(changedRowIds, tableId, mapNew),
727
+ rowId,
728
+ addedOrRemoved,
729
+ ) &&
730
+ mapSet(
731
+ changedRowCount,
732
+ tableId,
733
+ mapEnsure(changedRowCount, tableId, () => 0) + addedOrRemoved,
734
+ );
735
+ const cellIdsChanged = (tableId, rowId, cellId, addedOrRemoved) => {
736
+ const cellIds = mapGet(tableCellIds, tableId);
737
+ const count = mapGet(cellIds, cellId) ?? 0;
738
+ if (
739
+ (count == 0 && addedOrRemoved == 1) ||
740
+ (count == 1 && addedOrRemoved == -1)
741
+ ) {
742
+ idsChanged(
743
+ mapEnsure(changedTableCellIds, tableId, mapNew),
744
+ cellId,
745
+ addedOrRemoved,
746
+ );
747
+ }
748
+ mapSet(
749
+ cellIds,
750
+ cellId,
751
+ count != -addedOrRemoved ? count + addedOrRemoved : null,
752
+ );
753
+ idsChanged(
754
+ mapEnsure(mapEnsure(changedCellIds, tableId, mapNew), rowId, mapNew),
755
+ cellId,
756
+ addedOrRemoved,
757
+ );
758
+ };
759
+ const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
760
+ mapEnsure(
761
+ mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
762
+ cellId,
763
+ () => [oldCell, 0],
764
+ )[1] = newCell;
765
+ internalListeners[3]?.(tableId, rowId, cellId, newCell);
766
+ };
767
+ const valueIdsChanged = (valueId, addedOrRemoved) =>
768
+ idsChanged(changedValueIds, valueId, addedOrRemoved);
769
+ const valueChanged = (valueId, oldValue, newValue) => {
770
+ mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
771
+ internalListeners[4]?.(valueId, newValue);
772
+ };
773
+ const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
774
+ arrayPush(
775
+ mapEnsure(
776
+ mapEnsure(mapEnsure(invalidCells, tableId, mapNew), rowId, mapNew),
777
+ cellId,
778
+ () => [],
779
+ ),
780
+ invalidCell,
781
+ );
782
+ return defaultedCell;
783
+ };
784
+ const valueInvalid = (valueId, invalidValue, defaultedValue) => {
785
+ arrayPush(
786
+ mapEnsure(invalidValues, valueId, () => []),
787
+ invalidValue,
788
+ );
789
+ return defaultedValue;
790
+ };
791
+ const getCellChange = (tableId, rowId, cellId) =>
792
+ ifNotUndefined(
793
+ mapGet(mapGet(mapGet(changedCells, tableId), rowId), cellId),
794
+ ([oldCell, newCell]) => [true, oldCell, newCell],
795
+ () => [false, ...pairNew(getCell(tableId, rowId, cellId))],
796
+ );
797
+ const getValueChange = (valueId) =>
798
+ ifNotUndefined(
799
+ mapGet(changedValues, valueId),
800
+ ([oldValue, newValue]) => [true, oldValue, newValue],
801
+ () => [false, ...pairNew(getValue(valueId))],
802
+ );
803
+ const callInvalidCellListeners = (mutator) =>
804
+ !collIsEmpty(invalidCells) && !collIsEmpty(invalidCellListeners[mutator])
805
+ ? collForEach(
806
+ mutator ? mapClone3(invalidCells) : invalidCells,
807
+ (rows, tableId) =>
808
+ collForEach(rows, (cells, rowId) =>
809
+ collForEach(cells, (invalidCell, cellId) =>
810
+ callListeners(
811
+ invalidCellListeners[mutator],
812
+ [tableId, rowId, cellId],
813
+ invalidCell,
814
+ ),
815
+ ),
816
+ ),
817
+ )
818
+ : 0;
819
+ const callInvalidValueListeners = (mutator) =>
820
+ !collIsEmpty(invalidValues) && !collIsEmpty(invalidValueListeners[mutator])
821
+ ? collForEach(
822
+ mutator ? mapClone(invalidValues) : invalidValues,
823
+ (invalidValue, valueId) =>
824
+ callListeners(
825
+ invalidValueListeners[mutator],
826
+ [valueId],
827
+ invalidValue,
828
+ ),
829
+ )
830
+ : 0;
831
+ const callIdsAndHasListenersIfChanged = (
832
+ changedIds,
833
+ idListeners,
834
+ hasListeners,
835
+ ids,
836
+ ) => {
837
+ if (!collIsEmpty(changedIds)) {
838
+ callListeners(idListeners, ids, () => mapToObj(changedIds));
839
+ mapForEach(changedIds, (changedId, changed) =>
840
+ callListeners(hasListeners, [...(ids ?? []), changedId], changed == 1),
841
+ );
842
+ return 1;
843
+ }
844
+ };
845
+ const callTabularListenersForChanges = (mutator) => {
846
+ const hasTablesNow = hasTables();
847
+ if (hasTablesNow != hadTables) {
848
+ callListeners(hasTablesListeners[mutator], void 0, hasTablesNow);
849
+ }
850
+ const emptySortedRowIdListeners = collIsEmpty(
851
+ sortedRowIdsListeners[mutator],
852
+ );
853
+ const emptyIdAndHasListeners =
854
+ collIsEmpty(cellIdsListeners[mutator]) &&
855
+ collIsEmpty(hasCellListeners[mutator]) &&
856
+ collIsEmpty(rowIdsListeners[mutator]) &&
857
+ collIsEmpty(hasRowListeners[mutator]) &&
858
+ collIsEmpty(tableCellIdsListeners[mutator]) &&
859
+ collIsEmpty(hasTableCellListeners[mutator]) &&
860
+ collIsEmpty(rowCountListeners[mutator]) &&
861
+ emptySortedRowIdListeners &&
862
+ collIsEmpty(tableIdsListeners[mutator]) &&
863
+ collIsEmpty(hasTableListeners[mutator]);
864
+ const emptyOtherListeners =
865
+ collIsEmpty(cellListeners[mutator]) &&
866
+ collIsEmpty(rowListeners[mutator]) &&
867
+ collIsEmpty(tableListeners[mutator]) &&
868
+ collIsEmpty(tablesListeners[mutator]);
869
+ if (!emptyIdAndHasListeners || !emptyOtherListeners) {
870
+ const changes = mutator
871
+ ? [
872
+ mapClone(changedTableIds),
873
+ mapClone2(changedTableCellIds),
874
+ mapClone(changedRowCount),
875
+ mapClone2(changedRowIds),
876
+ mapClone3(changedCellIds),
877
+ mapClone3(changedCells),
878
+ ]
879
+ : [
880
+ changedTableIds,
881
+ changedTableCellIds,
882
+ changedRowCount,
883
+ changedRowIds,
884
+ changedCellIds,
885
+ changedCells,
886
+ ];
887
+ if (!emptyIdAndHasListeners) {
888
+ callIdsAndHasListenersIfChanged(
889
+ changes[0],
890
+ tableIdsListeners[mutator],
891
+ hasTableListeners[mutator],
892
+ );
893
+ collForEach(changes[1], (changedIds, tableId) =>
894
+ callIdsAndHasListenersIfChanged(
895
+ changedIds,
896
+ tableCellIdsListeners[mutator],
897
+ hasTableCellListeners[mutator],
898
+ [tableId],
899
+ ),
900
+ );
901
+ collForEach(changes[2], (changedCount, tableId) => {
902
+ if (changedCount != 0) {
903
+ callListeners(
904
+ rowCountListeners[mutator],
905
+ [tableId],
906
+ getRowCount(tableId),
907
+ );
908
+ }
909
+ });
910
+ const calledSortableTableIds = setNew();
911
+ collForEach(changes[3], (changedIds, tableId) => {
912
+ if (
913
+ callIdsAndHasListenersIfChanged(
914
+ changedIds,
915
+ rowIdsListeners[mutator],
916
+ hasRowListeners[mutator],
917
+ [tableId],
918
+ ) &&
919
+ !emptySortedRowIdListeners
920
+ ) {
921
+ callListeners(sortedRowIdsListeners[mutator], [tableId, null]);
922
+ setAdd(calledSortableTableIds, tableId);
923
+ }
924
+ });
925
+ if (!emptySortedRowIdListeners) {
926
+ collForEach(changes[5], (rows, tableId) => {
927
+ if (!collHas(calledSortableTableIds, tableId)) {
928
+ const sortableCellIds = setNew();
929
+ collForEach(rows, (cells) =>
930
+ collForEach(cells, ([oldCell, newCell], cellId) =>
931
+ newCell !== oldCell
932
+ ? setAdd(sortableCellIds, cellId)
933
+ : collDel(cells, cellId),
934
+ ),
935
+ );
936
+ collForEach(sortableCellIds, (cellId) =>
937
+ callListeners(sortedRowIdsListeners[mutator], [
938
+ tableId,
939
+ cellId,
940
+ ]),
941
+ );
942
+ }
943
+ });
944
+ }
945
+ collForEach(changes[4], (rowCellIds, tableId) =>
946
+ collForEach(rowCellIds, (changedIds, rowId) =>
947
+ callIdsAndHasListenersIfChanged(
948
+ changedIds,
949
+ cellIdsListeners[mutator],
950
+ hasCellListeners[mutator],
951
+ [tableId, rowId],
952
+ ),
953
+ ),
954
+ );
955
+ }
956
+ if (!emptyOtherListeners) {
957
+ let tablesChanged;
958
+ collForEach(changes[5], (rows, tableId) => {
959
+ let tableChanged;
960
+ collForEach(rows, (cells, rowId) => {
961
+ let rowChanged;
962
+ collForEach(cells, ([oldCell, newCell], cellId) => {
963
+ if (newCell !== oldCell) {
964
+ callListeners(
965
+ cellListeners[mutator],
966
+ [tableId, rowId, cellId],
967
+ newCell,
968
+ oldCell,
969
+ getCellChange,
970
+ );
971
+ tablesChanged = tableChanged = rowChanged = 1;
972
+ }
973
+ });
974
+ if (rowChanged) {
975
+ callListeners(
976
+ rowListeners[mutator],
977
+ [tableId, rowId],
978
+ getCellChange,
979
+ );
980
+ }
981
+ });
982
+ if (tableChanged) {
983
+ callListeners(tableListeners[mutator], [tableId], getCellChange);
984
+ }
985
+ });
986
+ if (tablesChanged) {
987
+ callListeners(tablesListeners[mutator], void 0, getCellChange);
988
+ }
989
+ }
990
+ }
991
+ };
992
+ const callValuesListenersForChanges = (mutator) => {
993
+ const hasValuesNow = hasValues();
994
+ if (hasValuesNow != hadValues) {
995
+ callListeners(hasValuesListeners[mutator], void 0, hasValuesNow);
996
+ }
997
+ const emptyIdAndHasListeners =
998
+ collIsEmpty(valueIdsListeners[mutator]) &&
999
+ collIsEmpty(hasValueListeners[mutator]);
1000
+ const emptyOtherListeners =
1001
+ collIsEmpty(valueListeners[mutator]) &&
1002
+ collIsEmpty(valuesListeners[mutator]);
1003
+ if (!emptyIdAndHasListeners || !emptyOtherListeners) {
1004
+ const changes = mutator
1005
+ ? [mapClone(changedValueIds), mapClone(changedValues)]
1006
+ : [changedValueIds, changedValues];
1007
+ if (!emptyIdAndHasListeners) {
1008
+ callIdsAndHasListenersIfChanged(
1009
+ changes[0],
1010
+ valueIdsListeners[mutator],
1011
+ hasValueListeners[mutator],
1012
+ );
1013
+ }
1014
+ if (!emptyOtherListeners) {
1015
+ let valuesChanged;
1016
+ collForEach(changes[1], ([oldValue, newValue], valueId) => {
1017
+ if (newValue !== oldValue) {
1018
+ callListeners(
1019
+ valueListeners[mutator],
1020
+ [valueId],
1021
+ newValue,
1022
+ oldValue,
1023
+ getValueChange,
1024
+ );
1025
+ valuesChanged = 1;
1026
+ }
1027
+ });
1028
+ if (valuesChanged) {
1029
+ callListeners(valuesListeners[mutator], void 0, getValueChange);
1030
+ }
1031
+ }
1032
+ }
1033
+ };
1034
+ const fluentTransaction = (actions, ...args) => {
1035
+ transaction(() => actions(...arrayMap(args, id)));
1036
+ return store;
1037
+ };
1038
+ const getContent = () => [getTables(), getValues()];
1039
+ const getTables = () => mapToObj3(tablesMap);
1040
+ const getTableIds = () => mapKeys(tablesMap);
1041
+ const getTable = (tableId) => mapToObj2(mapGet(tablesMap, id(tableId)));
1042
+ const getTableCellIds = (tableId) =>
1043
+ mapKeys(mapGet(tableCellIds, id(tableId)));
1044
+ const getRowCount = (tableId) => collSize(mapGet(tablesMap, id(tableId)));
1045
+ const getRowIds = (tableId) => mapKeys(mapGet(tablesMap, id(tableId)));
1046
+ const getSortedRowIds = (tableId, cellId, descending, offset = 0, limit) =>
1047
+ arrayMap(
1048
+ slice(
1049
+ arraySort(
1050
+ mapMap(mapGet(tablesMap, id(tableId)), (row, rowId) => [
1051
+ isUndefined(cellId) ? rowId : mapGet(row, id(cellId)),
1052
+ rowId,
1053
+ ]),
1054
+ ([cell1], [cell2]) =>
1055
+ defaultSorter(cell1, cell2) * (descending ? -1 : 1),
1056
+ ),
1057
+ offset,
1058
+ isUndefined(limit) ? limit : offset + limit,
1059
+ ),
1060
+ ([, rowId]) => rowId,
1061
+ );
1062
+ const getRow = (tableId, rowId) =>
1063
+ mapToObj(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)));
1064
+ const getCellIds = (tableId, rowId) =>
1065
+ mapKeys(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)));
1066
+ const getCell = (tableId, rowId, cellId) =>
1067
+ mapGet(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), id(cellId));
1068
+ const getValues = () => mapToObj(valuesMap);
1069
+ const getValueIds = () => mapKeys(valuesMap);
1070
+ const getValue = (valueId) => mapGet(valuesMap, id(valueId));
1071
+ const hasTables = () => !collIsEmpty(tablesMap);
1072
+ const hasTable = (tableId) => collHas(tablesMap, id(tableId));
1073
+ const hasTableCell = (tableId, cellId) =>
1074
+ collHas(mapGet(tableCellIds, id(tableId)), id(cellId));
1075
+ const hasRow = (tableId, rowId) =>
1076
+ collHas(mapGet(tablesMap, id(tableId)), id(rowId));
1077
+ const hasCell = (tableId, rowId, cellId) =>
1078
+ collHas(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), id(cellId));
1079
+ const hasValues = () => !collIsEmpty(valuesMap);
1080
+ const hasValue = (valueId) => collHas(valuesMap, id(valueId));
1081
+ const getTablesJson = () => jsonStringWithMap(tablesMap);
1082
+ const getValuesJson = () => jsonStringWithMap(valuesMap);
1083
+ const getJson = () => jsonStringWithMap([tablesMap, valuesMap]);
1084
+ const getTablesSchemaJson = () => jsonStringWithMap(tablesSchemaMap);
1085
+ const getValuesSchemaJson = () => jsonStringWithMap(valuesSchemaMap);
1086
+ const getSchemaJson = () =>
1087
+ jsonStringWithMap([tablesSchemaMap, valuesSchemaMap]);
1088
+ const setContent = ([tables, values]) =>
1089
+ fluentTransaction(() => {
1090
+ (objIsEmpty(tables) ? delTables : setTables)(tables);
1091
+ (objIsEmpty(values) ? delValues : setValues)(values);
1092
+ });
1093
+ const setTables = (tables) =>
1094
+ fluentTransaction(() =>
1095
+ validateTables(tables) ? setValidTables(tables) : 0,
1096
+ );
1097
+ const setTable = (tableId, table) =>
1098
+ fluentTransaction(
1099
+ (tableId2) =>
1100
+ validateTable(table, tableId2) ? setValidTable(tableId2, table) : 0,
1101
+ tableId,
1102
+ );
1103
+ const setRow = (tableId, rowId, row) =>
1104
+ fluentTransaction(
1105
+ (tableId2, rowId2) =>
1106
+ validateRow(tableId2, rowId2, row)
1107
+ ? setValidRow(tableId2, getOrCreateTable(tableId2), rowId2, row)
1108
+ : 0,
1109
+ tableId,
1110
+ rowId,
1111
+ );
1112
+ const addRow = (tableId, row, reuseRowIds = true) =>
1113
+ transaction(() => {
1114
+ let rowId = void 0;
1115
+ if (validateRow(tableId, rowId, row)) {
1116
+ tableId = id(tableId);
1117
+ setValidRow(
1118
+ tableId,
1119
+ getOrCreateTable(tableId),
1120
+ (rowId = getNewRowId(tableId, reuseRowIds ? 1 : 0)),
1121
+ row,
1122
+ );
1123
+ }
1124
+ return rowId;
1125
+ });
1126
+ const setPartialRow = (tableId, rowId, partialRow) =>
1127
+ fluentTransaction(
1128
+ (tableId2, rowId2) => {
1129
+ if (validateRow(tableId2, rowId2, partialRow, 1)) {
1130
+ const table = getOrCreateTable(tableId2);
1131
+ objToArray(partialRow, (cell, cellId) =>
1132
+ setCellIntoDefaultRow(tableId2, table, rowId2, cellId, cell),
1133
+ );
1134
+ }
1135
+ },
1136
+ tableId,
1137
+ rowId,
1138
+ );
1139
+ const setCell = (tableId, rowId, cellId, cell) =>
1140
+ fluentTransaction(
1141
+ (tableId2, rowId2, cellId2) =>
1142
+ ifNotUndefined(
1143
+ getValidatedCell(
1144
+ tableId2,
1145
+ rowId2,
1146
+ cellId2,
1147
+ isFunction(cell) ? cell(getCell(tableId2, rowId2, cellId2)) : cell,
1148
+ ),
1149
+ (validCell) =>
1150
+ setCellIntoDefaultRow(
1151
+ tableId2,
1152
+ getOrCreateTable(tableId2),
1153
+ rowId2,
1154
+ cellId2,
1155
+ validCell,
1156
+ ),
1157
+ ),
1158
+ tableId,
1159
+ rowId,
1160
+ cellId,
1161
+ );
1162
+ const setValues = (values) =>
1163
+ fluentTransaction(() =>
1164
+ validateValues(values) ? setValidValues(values) : 0,
1165
+ );
1166
+ const setPartialValues = (partialValues) =>
1167
+ fluentTransaction(() =>
1168
+ validateValues(partialValues, 1)
1169
+ ? objToArray(partialValues, (value, valueId) =>
1170
+ setValidValue(valueId, value),
1171
+ )
1172
+ : 0,
1173
+ );
1174
+ const setValue = (valueId, value) =>
1175
+ fluentTransaction(
1176
+ (valueId2) =>
1177
+ ifNotUndefined(
1178
+ getValidatedValue(
1179
+ valueId2,
1180
+ isFunction(value) ? value(getValue(valueId2)) : value,
1181
+ ),
1182
+ (validValue) => setValidValue(valueId2, validValue),
1183
+ ),
1184
+ valueId,
1185
+ );
1186
+ const applyChanges = (changes) =>
1187
+ fluentTransaction(() => {
1188
+ objToArray(changes[0], (table, tableId) =>
1189
+ isUndefined(table)
1190
+ ? delTable(tableId)
1191
+ : objToArray(table, (row, rowId) =>
1192
+ isUndefined(row)
1193
+ ? delRow(tableId, rowId)
1194
+ : objToArray(row, (cell, cellId) =>
1195
+ setOrDelCell(store, tableId, rowId, cellId, cell),
1196
+ ),
1197
+ ),
1198
+ );
1199
+ objToArray(changes[1], (value, valueId) =>
1200
+ setOrDelValue(store, valueId, value),
1201
+ );
1202
+ });
1203
+ const setTablesJson = (tablesJson) => {
1204
+ try {
1205
+ setOrDelTables(jsonParse(tablesJson));
1206
+ } catch {}
1207
+ return store;
1208
+ };
1209
+ const setValuesJson = (valuesJson) => {
1210
+ try {
1211
+ setOrDelValues(jsonParse(valuesJson));
1212
+ } catch {}
1213
+ return store;
1214
+ };
1215
+ const setJson = (tablesAndValuesJson) =>
1216
+ fluentTransaction(() => {
1217
+ try {
1218
+ const [tables, values] = jsonParse(tablesAndValuesJson);
1219
+ setOrDelTables(tables);
1220
+ setOrDelValues(values);
1221
+ } catch {
1222
+ setTablesJson(tablesAndValuesJson);
1223
+ }
1224
+ });
1225
+ const setTablesSchema = (tablesSchema) =>
1226
+ fluentTransaction(() => {
1227
+ if ((hasTablesSchema = validateTablesSchema(tablesSchema))) {
1228
+ setValidTablesSchema(tablesSchema);
1229
+ if (!collIsEmpty(tablesMap)) {
1230
+ const tables = getTables();
1231
+ delTables();
1232
+ setTables(tables);
1233
+ }
1234
+ }
1235
+ });
1236
+ const setValuesSchema = (valuesSchema) =>
1237
+ fluentTransaction(() => {
1238
+ if ((hasValuesSchema = validateValuesSchema(valuesSchema))) {
1239
+ const values = getValues();
1240
+ delValuesSchema();
1241
+ delValues();
1242
+ hasValuesSchema = true;
1243
+ setValidValuesSchema(valuesSchema);
1244
+ setValues(values);
1245
+ }
1246
+ });
1247
+ const setSchema = (tablesSchema, valuesSchema) =>
1248
+ fluentTransaction(() => {
1249
+ setTablesSchema(tablesSchema);
1250
+ setValuesSchema(valuesSchema);
1251
+ });
1252
+ const delTables = () => fluentTransaction(() => setValidTables({}));
1253
+ const delTable = (tableId) =>
1254
+ fluentTransaction(
1255
+ (tableId2) =>
1256
+ collHas(tablesMap, tableId2) ? delValidTable(tableId2) : 0,
1257
+ tableId,
1258
+ );
1259
+ const delRow = (tableId, rowId) =>
1260
+ fluentTransaction(
1261
+ (tableId2, rowId2) =>
1262
+ ifNotUndefined(mapGet(tablesMap, tableId2), (tableMap) =>
1263
+ collHas(tableMap, rowId2)
1264
+ ? delValidRow(tableId2, tableMap, rowId2)
1265
+ : 0,
1266
+ ),
1267
+ tableId,
1268
+ rowId,
1269
+ );
1270
+ const delCell = (tableId, rowId, cellId, forceDel) =>
1271
+ fluentTransaction(
1272
+ (tableId2, rowId2, cellId2) =>
1273
+ ifNotUndefined(mapGet(tablesMap, tableId2), (tableMap) =>
1274
+ ifNotUndefined(mapGet(tableMap, rowId2), (rowMap) =>
1275
+ collHas(rowMap, cellId2)
1276
+ ? delValidCell(
1277
+ tableId2,
1278
+ tableMap,
1279
+ rowId2,
1280
+ rowMap,
1281
+ cellId2,
1282
+ forceDel,
1283
+ )
1284
+ : 0,
1285
+ ),
1286
+ ),
1287
+ tableId,
1288
+ rowId,
1289
+ cellId,
1290
+ );
1291
+ const delValues = () => fluentTransaction(() => setValidValues({}));
1292
+ const delValue = (valueId) =>
1293
+ fluentTransaction(
1294
+ (valueId2) =>
1295
+ collHas(valuesMap, valueId2) ? delValidValue(valueId2) : 0,
1296
+ valueId,
1297
+ );
1298
+ const delTablesSchema = () =>
1299
+ fluentTransaction(() => {
1300
+ setValidTablesSchema({});
1301
+ hasTablesSchema = false;
1302
+ });
1303
+ const delValuesSchema = () =>
1304
+ fluentTransaction(() => {
1305
+ setValidValuesSchema({});
1306
+ hasValuesSchema = false;
1307
+ });
1308
+ const delSchema = () =>
1309
+ fluentTransaction(() => {
1310
+ delTablesSchema();
1311
+ delValuesSchema();
1312
+ });
1313
+ const transaction = (actions, doRollback) => {
1314
+ if (transactions != -1) {
1315
+ startTransaction();
1316
+ const result = actions();
1317
+ finishTransaction(doRollback);
1318
+ return result;
1319
+ }
1320
+ };
1321
+ const startTransaction = () => {
1322
+ if (transactions != -1) {
1323
+ transactions++;
1324
+ }
1325
+ if (transactions == 1) {
1326
+ internalListeners[0]?.();
1327
+ callListeners(startTransactionListeners);
1328
+ }
1329
+ return store;
1330
+ };
1331
+ const getTransactionChanges = () => [
1332
+ mapToObj(
1333
+ changedCells,
1334
+ (table, tableId) =>
1335
+ mapGet(changedTableIds, tableId) === -1
1336
+ ? void 0
1337
+ : mapToObj(
1338
+ table,
1339
+ (row, rowId) =>
1340
+ mapGet(mapGet(changedRowIds, tableId), rowId) === -1
1341
+ ? void 0
1342
+ : mapToObj(
1343
+ row,
1344
+ ([, newCell]) => newCell,
1345
+ (changedCell) => pairIsEqual(changedCell),
1346
+ ),
1347
+ collIsEmpty,
1348
+ objIsEmpty,
1349
+ ),
1350
+ collIsEmpty,
1351
+ objIsEmpty,
1352
+ ),
1353
+ mapToObj(
1354
+ changedValues,
1355
+ ([, newValue]) => newValue,
1356
+ (changedValue) => pairIsEqual(changedValue),
1357
+ ),
1358
+ 1,
1359
+ ];
1360
+ const getTransactionLog = () => [
1361
+ !collIsEmpty(changedCells),
1362
+ !collIsEmpty(changedValues),
1363
+ mapToObj3(changedCells, pairClone, pairIsEqual),
1364
+ mapToObj3(invalidCells),
1365
+ mapToObj(changedValues, pairClone, pairIsEqual),
1366
+ mapToObj(invalidValues),
1367
+ mapToObj(changedTableIds),
1368
+ mapToObj2(changedRowIds),
1369
+ mapToObj3(changedCellIds),
1370
+ mapToObj(changedValueIds),
1371
+ ];
1372
+ const finishTransaction = (doRollback) => {
1373
+ if (transactions > 0) {
1374
+ transactions--;
1375
+ if (transactions == 0) {
1376
+ transactions = 1;
1377
+ callInvalidCellListeners(1);
1378
+ if (!collIsEmpty(changedCells)) {
1379
+ callTabularListenersForChanges(1);
1380
+ }
1381
+ callInvalidValueListeners(1);
1382
+ if (!collIsEmpty(changedValues)) {
1383
+ callValuesListenersForChanges(1);
1384
+ }
1385
+ if (doRollback?.(store)) {
1386
+ collForEach(changedCells, (table, tableId) =>
1387
+ collForEach(table, (row, rowId) =>
1388
+ collForEach(row, ([oldCell], cellId) =>
1389
+ setOrDelCell(store, tableId, rowId, cellId, oldCell),
1390
+ ),
1391
+ ),
1392
+ );
1393
+ collClear(changedCells);
1394
+ collForEach(changedValues, ([oldValue], valueId) =>
1395
+ setOrDelValue(store, valueId, oldValue),
1396
+ );
1397
+ collClear(changedValues);
1398
+ }
1399
+ callListeners(finishTransactionListeners[0], void 0);
1400
+ transactions = -1;
1401
+ callInvalidCellListeners(0);
1402
+ if (!collIsEmpty(changedCells)) {
1403
+ callTabularListenersForChanges(0);
1404
+ }
1405
+ callInvalidValueListeners(0);
1406
+ if (!collIsEmpty(changedValues)) {
1407
+ callValuesListenersForChanges(0);
1408
+ }
1409
+ internalListeners[1]?.();
1410
+ callListeners(finishTransactionListeners[1], void 0);
1411
+ internalListeners[2]?.();
1412
+ transactions = 0;
1413
+ hadTables = hasTables();
1414
+ hadValues = hasValues();
1415
+ arrayForEach(
1416
+ [
1417
+ changedTableIds,
1418
+ changedTableCellIds,
1419
+ changedRowCount,
1420
+ changedRowIds,
1421
+ changedCellIds,
1422
+ changedCells,
1423
+ invalidCells,
1424
+ changedValueIds,
1425
+ changedValues,
1426
+ invalidValues,
1427
+ ],
1428
+ collClear,
1429
+ );
1430
+ }
1431
+ }
1432
+ return store;
1433
+ };
1434
+ const forEachTable = (tableCallback) =>
1435
+ collForEach(tablesMap, (tableMap, tableId) =>
1436
+ tableCallback(tableId, (rowCallback) =>
1437
+ collForEach(tableMap, (rowMap, rowId) =>
1438
+ rowCallback(rowId, (cellCallback) =>
1439
+ mapForEach(rowMap, cellCallback),
1440
+ ),
1441
+ ),
1442
+ ),
1443
+ );
1444
+ const forEachTableCell = (tableId, tableCellCallback) =>
1445
+ mapForEach(mapGet(tableCellIds, id(tableId)), tableCellCallback);
1446
+ const forEachRow = (tableId, rowCallback) =>
1447
+ collForEach(mapGet(tablesMap, id(tableId)), (rowMap, rowId) =>
1448
+ rowCallback(rowId, (cellCallback) => mapForEach(rowMap, cellCallback)),
1449
+ );
1450
+ const forEachCell = (tableId, rowId, cellCallback) =>
1451
+ mapForEach(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), cellCallback);
1452
+ const forEachValue = (valueCallback) => mapForEach(valuesMap, valueCallback);
1453
+ const addSortedRowIdsListener = (
1454
+ tableId,
1455
+ cellId,
1456
+ descending,
1457
+ offset,
1458
+ limit,
1459
+ listener,
1460
+ mutator,
1461
+ ) => {
1462
+ let sortedRowIds = getSortedRowIds(
1463
+ tableId,
1464
+ cellId,
1465
+ descending,
1466
+ offset,
1467
+ limit,
1468
+ );
1469
+ return addListener(
1470
+ () => {
1471
+ const newSortedRowIds = getSortedRowIds(
1472
+ tableId,
1473
+ cellId,
1474
+ descending,
1475
+ offset,
1476
+ limit,
1477
+ );
1478
+ if (!arrayIsEqual(newSortedRowIds, sortedRowIds)) {
1479
+ sortedRowIds = newSortedRowIds;
1480
+ listener(
1481
+ store,
1482
+ tableId,
1483
+ cellId,
1484
+ descending,
1485
+ offset,
1486
+ limit,
1487
+ sortedRowIds,
1488
+ );
1489
+ }
1490
+ },
1491
+ sortedRowIdsListeners[mutator ? 1 : 0],
1492
+ [tableId, cellId],
1493
+ [getTableIds],
1494
+ );
1495
+ };
1496
+ const addStartTransactionListener = (listener) =>
1497
+ addListener(listener, startTransactionListeners);
1498
+ const addWillFinishTransactionListener = (listener) =>
1499
+ addListener(listener, finishTransactionListeners[0]);
1500
+ const addDidFinishTransactionListener = (listener) =>
1501
+ addListener(listener, finishTransactionListeners[1]);
1502
+ const callListener = (listenerId) => {
1503
+ callListenerImpl(listenerId);
1504
+ return store;
1505
+ };
1506
+ const delListener = (listenerId) => {
1507
+ delListenerImpl(listenerId);
1508
+ return store;
1509
+ };
1510
+ const getListenerStats = () => ({
1511
+ hasTables: pairCollSize2(hasTablesListeners),
1512
+ tables: pairCollSize2(tablesListeners),
1513
+ tableIds: pairCollSize2(tableIdsListeners),
1514
+ hasTable: pairCollSize2(hasTableListeners),
1515
+ table: pairCollSize2(tableListeners),
1516
+ tableCellIds: pairCollSize2(tableCellIdsListeners),
1517
+ hasTableCell: pairCollSize2(hasTableCellListeners, collSize3),
1518
+ rowCount: pairCollSize2(rowCountListeners),
1519
+ rowIds: pairCollSize2(rowIdsListeners),
1520
+ sortedRowIds: pairCollSize2(sortedRowIdsListeners),
1521
+ hasRow: pairCollSize2(hasRowListeners, collSize3),
1522
+ row: pairCollSize2(rowListeners, collSize3),
1523
+ cellIds: pairCollSize2(cellIdsListeners, collSize3),
1524
+ hasCell: pairCollSize2(hasCellListeners, collSize4),
1525
+ cell: pairCollSize2(cellListeners, collSize4),
1526
+ invalidCell: pairCollSize2(invalidCellListeners, collSize4),
1527
+ hasValues: pairCollSize2(hasValuesListeners),
1528
+ values: pairCollSize2(valuesListeners),
1529
+ valueIds: pairCollSize2(valueIdsListeners),
1530
+ hasValue: pairCollSize2(hasValueListeners),
1531
+ value: pairCollSize2(valueListeners),
1532
+ invalidValue: pairCollSize2(invalidValueListeners),
1533
+ transaction:
1534
+ collSize2(startTransactionListeners) +
1535
+ pairCollSize2(finishTransactionListeners),
1536
+ });
1537
+ const setInternalListeners = (
1538
+ preStartTransaction,
1539
+ preFinishTransaction,
1540
+ postFinishTransaction,
1541
+ cellChanged2,
1542
+ valueChanged2,
1543
+ ) =>
1544
+ (internalListeners = [
1545
+ preStartTransaction,
1546
+ preFinishTransaction,
1547
+ postFinishTransaction,
1548
+ cellChanged2,
1549
+ valueChanged2,
1550
+ ]);
1551
+ const store = {
1552
+ getContent,
1553
+ getTables,
1554
+ getTableIds,
1555
+ getTable,
1556
+ getTableCellIds,
1557
+ getRowCount,
1558
+ getRowIds,
1559
+ getSortedRowIds,
1560
+ getRow,
1561
+ getCellIds,
1562
+ getCell,
1563
+ getValues,
1564
+ getValueIds,
1565
+ getValue,
1566
+ hasTables,
1567
+ hasTable,
1568
+ hasTableCell,
1569
+ hasRow,
1570
+ hasCell,
1571
+ hasValues,
1572
+ hasValue,
1573
+ getTablesJson,
1574
+ getValuesJson,
1575
+ getJson,
1576
+ getTablesSchemaJson,
1577
+ getValuesSchemaJson,
1578
+ getSchemaJson,
1579
+ hasTablesSchema: () => hasTablesSchema,
1580
+ hasValuesSchema: () => hasValuesSchema,
1581
+ setContent,
1582
+ setTables,
1583
+ setTable,
1584
+ setRow,
1585
+ addRow,
1586
+ setPartialRow,
1587
+ setCell,
1588
+ setValues,
1589
+ setPartialValues,
1590
+ setValue,
1591
+ applyChanges,
1592
+ setTablesJson,
1593
+ setValuesJson,
1594
+ setJson,
1595
+ setTablesSchema,
1596
+ setValuesSchema,
1597
+ setSchema,
1598
+ delTables,
1599
+ delTable,
1600
+ delRow,
1601
+ delCell,
1602
+ delValues,
1603
+ delValue,
1604
+ delTablesSchema,
1605
+ delValuesSchema,
1606
+ delSchema,
1607
+ transaction,
1608
+ startTransaction,
1609
+ getTransactionChanges,
1610
+ getTransactionLog,
1611
+ finishTransaction,
1612
+ forEachTable,
1613
+ forEachTableCell,
1614
+ forEachRow,
1615
+ forEachCell,
1616
+ forEachValue,
1617
+ addSortedRowIdsListener,
1618
+ addStartTransactionListener,
1619
+ addWillFinishTransactionListener,
1620
+ addDidFinishTransactionListener,
1621
+ callListener,
1622
+ delListener,
1623
+ getListenerStats,
1624
+ isMergeable: () => false,
1625
+ // only used internally by other modules
1626
+ createStore,
1627
+ addListener,
1628
+ callListeners,
1629
+ setInternalListeners,
1630
+ };
1631
+ objToArray(
1632
+ {
1633
+ [HAS + TABLES]: [0, hasTablesListeners, [], () => [hasTables()]],
1634
+ [TABLES]: [0, tablesListeners],
1635
+ [TABLE_IDS]: [0, tableIdsListeners],
1636
+ [HAS + TABLE]: [
1637
+ 1,
1638
+ hasTableListeners,
1639
+ [getTableIds],
1640
+ (ids) => [hasTable(...ids)],
1641
+ ],
1642
+ [TABLE]: [1, tableListeners, [getTableIds]],
1643
+ [TABLE + CELL_IDS]: [1, tableCellIdsListeners, [getTableIds]],
1644
+ [HAS + TABLE + CELL]: [
1645
+ 2,
1646
+ hasTableCellListeners,
1647
+ [getTableIds, getTableCellIds],
1648
+ (ids) => [hasTableCell(...ids)],
1649
+ ],
1650
+ [ROW_COUNT]: [1, rowCountListeners, [getTableIds]],
1651
+ [ROW_IDS]: [1, rowIdsListeners, [getTableIds]],
1652
+ [HAS + ROW]: [
1653
+ 2,
1654
+ hasRowListeners,
1655
+ [getTableIds, getRowIds],
1656
+ (ids) => [hasRow(...ids)],
1657
+ ],
1658
+ [ROW]: [2, rowListeners, [getTableIds, getRowIds]],
1659
+ [CELL_IDS]: [2, cellIdsListeners, [getTableIds, getRowIds]],
1660
+ [HAS + CELL]: [
1661
+ 3,
1662
+ hasCellListeners,
1663
+ [getTableIds, getRowIds, getCellIds],
1664
+ (ids) => [hasCell(...ids)],
1665
+ ],
1666
+ [CELL]: [
1667
+ 3,
1668
+ cellListeners,
1669
+ [getTableIds, getRowIds, getCellIds],
1670
+ (ids) => pairNew(getCell(...ids)),
1671
+ ],
1672
+ InvalidCell: [3, invalidCellListeners],
1673
+ [HAS + VALUES]: [0, hasValuesListeners, [], () => [hasValues()]],
1674
+ [VALUES]: [0, valuesListeners],
1675
+ [VALUE_IDS]: [0, valueIdsListeners],
1676
+ [HAS + VALUE]: [
1677
+ 1,
1678
+ hasValueListeners,
1679
+ [getValueIds],
1680
+ (ids) => [hasValue(...ids)],
1681
+ ],
1682
+ [VALUE]: [
1683
+ 1,
1684
+ valueListeners,
1685
+ [getValueIds],
1686
+ (ids) => pairNew(getValue(ids[0])),
1687
+ ],
1688
+ InvalidValue: [1, invalidValueListeners],
1689
+ },
1690
+ ([argumentCount, idSetNode, pathGetters, extraArgsGetter], listenable) => {
1691
+ store[ADD + listenable + LISTENER] = (...args) =>
1692
+ addListener(
1693
+ args[argumentCount],
1694
+ idSetNode[args[argumentCount + 1] ? 1 : 0],
1695
+ argumentCount > 0 ? slice(args, 0, argumentCount) : void 0,
1696
+ pathGetters,
1697
+ extraArgsGetter,
1698
+ );
1699
+ },
1700
+ );
1701
+ return objFreeze(store);
1702
+ };
1703
+
1704
+ const SHIFT36 = 2 ** 36;
1705
+ const SHIFT30 = 2 ** 30;
1706
+ const SHIFT24 = 2 ** 24;
1707
+ const SHIFT18 = 2 ** 18;
1708
+ const SHIFT12 = 2 ** 12;
1709
+ const SHIFT6 = 2 ** 6;
1710
+ const encodeTimeAndCounter = (logicalTime42, counter24) =>
1711
+ encode(logicalTime42 / SHIFT36) +
1712
+ encode(logicalTime42 / SHIFT30) +
1713
+ encode(logicalTime42 / SHIFT24) +
1714
+ encode(logicalTime42 / SHIFT18) +
1715
+ encode(logicalTime42 / SHIFT12) +
1716
+ encode(logicalTime42 / SHIFT6) +
1717
+ encode(logicalTime42) +
1718
+ encode(counter24 / SHIFT18) +
1719
+ encode(counter24 / SHIFT12) +
1720
+ encode(counter24 / SHIFT6) +
1721
+ encode(counter24);
1722
+ const decodeTimeAndCounter = (hlc16) => [
1723
+ decode(hlc16, 0) * SHIFT36 +
1724
+ decode(hlc16, 1) * SHIFT30 +
1725
+ decode(hlc16, 2) * SHIFT24 +
1726
+ decode(hlc16, 3) * SHIFT18 +
1727
+ decode(hlc16, 4) * SHIFT12 +
1728
+ decode(hlc16, 5) * SHIFT6 +
1729
+ decode(hlc16, 6),
1730
+ decode(hlc16, 7) * SHIFT18 +
1731
+ decode(hlc16, 8) * SHIFT12 +
1732
+ decode(hlc16, 9) * SHIFT6 +
1733
+ decode(hlc16, 10),
1734
+ ];
1735
+ const getHlcFunctions = (uniqueId) => {
1736
+ let logicalTime = 0;
1737
+ let lastCounter = -1;
1738
+ const clientPart = ifNotUndefined(
1739
+ uniqueId,
1740
+ (uniqueId2) => {
1741
+ const clientHash30 = getHash(uniqueId2);
1742
+ return (
1743
+ encode(clientHash30 / SHIFT24) +
1744
+ encode(clientHash30 / SHIFT18) +
1745
+ encode(clientHash30 / SHIFT12) +
1746
+ encode(clientHash30 / SHIFT6) +
1747
+ encode(clientHash30)
1748
+ );
1749
+ },
1750
+ () => getUniqueId(5),
1751
+ );
1752
+ const getHlc = () => {
1753
+ seenHlc();
1754
+ return encodeTimeAndCounter(logicalTime, ++lastCounter) + clientPart;
1755
+ };
1756
+ const seenHlc = (hlc) => {
1757
+ const previousLogicalTime = logicalTime;
1758
+ const [remoteLogicalTime, remoteCounter] =
1759
+ isUndefined(hlc) || hlc == '' ? [0, 0] : decodeTimeAndCounter(hlc);
1760
+ logicalTime = mathMax(
1761
+ previousLogicalTime,
1762
+ remoteLogicalTime,
1763
+ globalThis.HLC_TIME ?? Date.now(),
1764
+ );
1765
+ lastCounter =
1766
+ logicalTime == previousLogicalTime
1767
+ ? logicalTime == remoteLogicalTime
1768
+ ? mathMax(lastCounter, remoteCounter)
1769
+ : lastCounter
1770
+ : logicalTime == remoteLogicalTime
1771
+ ? remoteCounter
1772
+ : -1;
1773
+ };
1774
+ return [getHlc, seenHlc];
1775
+ };
1776
+
1777
+ const LISTENER_ARGS = {
1778
+ HasTable: 1,
1779
+ Table: 1,
1780
+ TableCellIds: 1,
1781
+ HasTableCell: 2,
1782
+ RowCount: 1,
1783
+ RowIds: 1,
1784
+ SortedRowIds: 5,
1785
+ HasRow: 2,
1786
+ Row: 2,
1787
+ CellIds: 2,
1788
+ HasCell: 3,
1789
+ Cell: 3,
1790
+ HasValue: 1,
1791
+ Value: 1,
1792
+ InvalidCell: 3,
1793
+ InvalidValue: 1,
1794
+ };
1795
+ const newContentStampMap = (time = EMPTY_STRING) => [
1796
+ stampNewMap(time),
1797
+ stampNewMap(time),
1798
+ ];
1799
+ const validateMergeableContent = (mergeableContent) =>
1800
+ isArray(mergeableContent) &&
1801
+ size(mergeableContent) == 2 &&
1802
+ stampValidate(mergeableContent[0], (tableStamps) =>
1803
+ objValidate(
1804
+ tableStamps,
1805
+ (tableStamp) =>
1806
+ stampValidate(tableStamp, (rowStamps) =>
1807
+ objValidate(
1808
+ rowStamps,
1809
+ (rowStamp) =>
1810
+ stampValidate(rowStamp, (cellStamps) =>
1811
+ objValidate(
1812
+ cellStamps,
1813
+ (cellStamp) =>
1814
+ stampValidate(cellStamp, isCellOrValueOrNullOrUndefined),
1815
+ void 0,
1816
+ 1,
1817
+ ),
1818
+ ),
1819
+ void 0,
1820
+ 1,
1821
+ ),
1822
+ ),
1823
+ void 0,
1824
+ 1,
1825
+ ),
1826
+ ) &&
1827
+ stampValidate(mergeableContent[1], (values) =>
1828
+ objValidate(
1829
+ values,
1830
+ (value) => stampValidate(value, isCellOrValueOrNullOrUndefined),
1831
+ void 0,
1832
+ 1,
1833
+ ),
1834
+ );
1835
+ const createMergeableStore = (uniqueId) => {
1836
+ let listeningToRawStoreChanges = 1;
1837
+ let contentStampMap = newContentStampMap();
1838
+ let defaultingContent = 0;
1839
+ const touchedCells = mapNew();
1840
+ const touchedValues = setNew();
1841
+ const [getHlc, seenHlc] = getHlcFunctions(uniqueId);
1842
+ const store = createStore();
1843
+ const disableListeningToRawStoreChanges = (actions) => {
1844
+ const wasListening = listeningToRawStoreChanges;
1845
+ listeningToRawStoreChanges = 0;
1846
+ actions();
1847
+ listeningToRawStoreChanges = wasListening;
1848
+ return mergeableStore;
1849
+ };
1850
+ const mergeContentOrChanges = (contentOrChanges, isContent = 0) => {
1851
+ const tablesChanges = {};
1852
+ const valuesChanges = {};
1853
+ const [
1854
+ [tablesObj, incomingTablesTime = EMPTY_STRING, incomingTablesHash = 0],
1855
+ values,
1856
+ ] = contentOrChanges;
1857
+ const [tablesStampMap, valuesStampMap] = contentStampMap;
1858
+ const [tableStampMaps, oldTablesTime, oldTablesHash] = tablesStampMap;
1859
+ let tablesHash = isContent ? incomingTablesHash : oldTablesHash;
1860
+ let tablesTime = incomingTablesTime;
1861
+ objForEach(
1862
+ tablesObj,
1863
+ (
1864
+ [rowsObj, incomingTableTime = EMPTY_STRING, incomingTableHash = 0],
1865
+ tableId,
1866
+ ) => {
1867
+ const tableStampMap = mapEnsure(tableStampMaps, tableId, stampNewMap);
1868
+ const [rowStampMaps, oldTableTime, oldTableHash] = tableStampMap;
1869
+ let tableHash = isContent ? incomingTableHash : oldTableHash;
1870
+ let tableTime = incomingTableTime;
1871
+ objForEach(rowsObj, (row, rowId) => {
1872
+ const [rowTime, oldRowHash, rowHash] = mergeCellsOrValues(
1873
+ row,
1874
+ mapEnsure(rowStampMaps, rowId, stampNewMap),
1875
+ objEnsure(objEnsure(tablesChanges, tableId, objNew), rowId, objNew),
1876
+ isContent,
1877
+ );
1878
+ tableHash ^= isContent
1879
+ ? 0
1880
+ : (oldRowHash ? hashIdAndHash(rowId, oldRowHash) : 0) ^
1881
+ hashIdAndHash(rowId, rowHash);
1882
+ tableTime = getLatestTime(tableTime, rowTime);
1883
+ });
1884
+ tableHash ^= isContent
1885
+ ? 0
1886
+ : replaceTimeHash(oldTableTime, incomingTableTime);
1887
+ stampUpdate(tableStampMap, tableHash, incomingTableTime);
1888
+ tablesHash ^= isContent
1889
+ ? 0
1890
+ : (oldTableHash ? hashIdAndHash(tableId, oldTableHash) : 0) ^
1891
+ hashIdAndHash(tableId, tableStampMap[2]);
1892
+ tablesTime = getLatestTime(tablesTime, tableTime);
1893
+ },
1894
+ );
1895
+ tablesHash ^= isContent
1896
+ ? 0
1897
+ : replaceTimeHash(oldTablesTime, incomingTablesTime);
1898
+ stampUpdate(tablesStampMap, tablesHash, incomingTablesTime);
1899
+ const [valuesTime] = mergeCellsOrValues(
1900
+ values,
1901
+ valuesStampMap,
1902
+ valuesChanges,
1903
+ isContent,
1904
+ );
1905
+ seenHlc(getLatestTime(tablesTime, valuesTime));
1906
+ return [tablesChanges, valuesChanges, 1];
1907
+ };
1908
+ const mergeCellsOrValues = (
1909
+ things,
1910
+ thingsStampMap,
1911
+ thingsChanges,
1912
+ isContent,
1913
+ ) => {
1914
+ const [
1915
+ thingsObj,
1916
+ incomingThingsTime = EMPTY_STRING,
1917
+ incomingThingsHash = 0,
1918
+ ] = things;
1919
+ const [thingStampMaps, oldThingsTime, oldThingsHash] = thingsStampMap;
1920
+ let thingsTime = incomingThingsTime;
1921
+ let thingsHash = isContent ? incomingThingsHash : oldThingsHash;
1922
+ objForEach(
1923
+ thingsObj,
1924
+ ([thing, thingTime, incomingThingHash = 0], thingId) => {
1925
+ const thingStampMap = mapEnsure(thingStampMaps, thingId, () => [
1926
+ void 0,
1927
+ EMPTY_STRING,
1928
+ 0,
1929
+ ]);
1930
+ const [, oldThingTime, oldThingHash] = thingStampMap;
1931
+ if (!oldThingTime || thingTime > oldThingTime) {
1932
+ stampUpdate(
1933
+ thingStampMap,
1934
+ isContent
1935
+ ? incomingThingHash
1936
+ : getHash(jsonStringWithMap(thing ?? null) + ':' + thingTime),
1937
+ thingTime,
1938
+ );
1939
+ thingStampMap[0] = thing;
1940
+ thingsChanges[thingId] = thing;
1941
+ thingsHash ^= isContent
1942
+ ? 0
1943
+ : hashIdAndHash(thingId, oldThingHash) ^
1944
+ hashIdAndHash(thingId, thingStampMap[2]);
1945
+ thingsTime = getLatestTime(thingsTime, thingTime);
1946
+ }
1947
+ },
1948
+ );
1949
+ thingsHash ^= isContent
1950
+ ? 0
1951
+ : replaceTimeHash(oldThingsTime, incomingThingsTime);
1952
+ stampUpdate(thingsStampMap, thingsHash, incomingThingsTime);
1953
+ return [thingsTime, oldThingsHash, thingsStampMap[2]];
1954
+ };
1955
+ const preStartTransaction = () => {};
1956
+ const preFinishTransaction = () => {};
1957
+ const postFinishTransaction = () => {
1958
+ collClear(touchedCells);
1959
+ collClear(touchedValues);
1960
+ };
1961
+ const cellChanged = (tableId, rowId, cellId, newCell) => {
1962
+ setAdd(
1963
+ mapEnsure(mapEnsure(touchedCells, tableId, mapNew), rowId, setNew),
1964
+ cellId,
1965
+ );
1966
+ if (listeningToRawStoreChanges) {
1967
+ mergeContentOrChanges([
1968
+ [
1969
+ {
1970
+ [tableId]: [
1971
+ {
1972
+ [rowId]: [
1973
+ {
1974
+ [cellId]: [
1975
+ newCell,
1976
+ defaultingContent ? EMPTY_STRING : getHlc(),
1977
+ ],
1978
+ },
1979
+ ],
1980
+ },
1981
+ ],
1982
+ },
1983
+ ],
1984
+ [{}],
1985
+ 1,
1986
+ ]);
1987
+ }
1988
+ };
1989
+ const valueChanged = (valueId, newValue) => {
1990
+ setAdd(touchedValues, valueId);
1991
+ if (listeningToRawStoreChanges) {
1992
+ mergeContentOrChanges([
1993
+ [{}],
1994
+ [{[valueId]: [newValue, defaultingContent ? EMPTY_STRING : getHlc()]}],
1995
+ 1,
1996
+ ]);
1997
+ }
1998
+ };
1999
+ const getMergeableContent = () => [
2000
+ stampMapToObjWithHash(contentStampMap[0], (tableStampMap) =>
2001
+ stampMapToObjWithHash(tableStampMap, (rowStampMap) =>
2002
+ stampMapToObjWithHash(rowStampMap),
2003
+ ),
2004
+ ),
2005
+ stampMapToObjWithHash(contentStampMap[1]),
2006
+ ];
2007
+ const getMergeableContentHashes = () => [
2008
+ contentStampMap[0][2],
2009
+ contentStampMap[1][2],
2010
+ ];
2011
+ const getMergeableTableHashes = () =>
2012
+ mapToObj(contentStampMap[0][0], getStampHash);
2013
+ const getMergeableTableDiff = (otherTableHashes) => {
2014
+ const newTables = stampNewObj(contentStampMap[0][1]);
2015
+ const differentTableHashes = {};
2016
+ mapForEach(
2017
+ contentStampMap[0][0],
2018
+ (tableId, [tableStampMap, tableTime, hash]) =>
2019
+ objHas(otherTableHashes, tableId)
2020
+ ? hash != otherTableHashes[tableId]
2021
+ ? (differentTableHashes[tableId] = hash)
2022
+ : 0
2023
+ : (newTables[0][tableId] = stampMapToObjWithoutHash(
2024
+ [tableStampMap, tableTime],
2025
+ (rowStampMap) => stampMapToObjWithoutHash(rowStampMap),
2026
+ )),
2027
+ );
2028
+ return [newTables, differentTableHashes];
2029
+ };
2030
+ const getMergeableRowHashes = (otherTableHashes) => {
2031
+ const rowHashes = {};
2032
+ objForEach(otherTableHashes, (otherTableHash, tableId) =>
2033
+ ifNotUndefined(
2034
+ mapGet(contentStampMap[0][0], tableId),
2035
+ ([rowStampMaps, , tableHash]) =>
2036
+ tableHash != otherTableHash
2037
+ ? mapForEach(
2038
+ rowStampMaps,
2039
+ (rowId, [, , rowHash]) =>
2040
+ (objEnsure(rowHashes, tableId, objNew)[rowId] = rowHash),
2041
+ )
2042
+ : 0,
2043
+ ),
2044
+ );
2045
+ return rowHashes;
2046
+ };
2047
+ const getMergeableRowDiff = (otherTableRowHashes) => {
2048
+ const newRows = stampNewObj(contentStampMap[0][1]);
2049
+ const differentRowHashes = {};
2050
+ objForEach(otherTableRowHashes, (otherRowHashes, tableId) =>
2051
+ mapForEach(
2052
+ mapGet(contentStampMap[0][0], tableId)?.[0],
2053
+ (rowId, [rowStampMap, rowTime, hash]) =>
2054
+ objHas(otherRowHashes, rowId)
2055
+ ? hash !== otherRowHashes[rowId]
2056
+ ? (objEnsure(differentRowHashes, tableId, objNew)[rowId] = hash)
2057
+ : 0
2058
+ : (objEnsure(newRows[0], tableId, stampNewObj)[0][rowId] =
2059
+ stampMapToObjWithoutHash([rowStampMap, rowTime])),
2060
+ ),
2061
+ );
2062
+ return [newRows, differentRowHashes];
2063
+ };
2064
+ const getMergeableCellHashes = (otherTableRowHashes) => {
2065
+ const cellHashes = {};
2066
+ objForEach(otherTableRowHashes, (otherRowHashes, tableId) =>
2067
+ ifNotUndefined(mapGet(contentStampMap[0][0], tableId), ([rowStampMaps]) =>
2068
+ objForEach(otherRowHashes, (otherRowHash, rowId) =>
2069
+ ifNotUndefined(
2070
+ mapGet(rowStampMaps, rowId),
2071
+ ([cellStampMaps, , rowHash]) =>
2072
+ rowHash !== otherRowHash
2073
+ ? mapForEach(
2074
+ cellStampMaps,
2075
+ (cellId, [, , cellHash]) =>
2076
+ (objEnsure(
2077
+ objEnsure(cellHashes, tableId, objNew),
2078
+ rowId,
2079
+ objNew,
2080
+ )[cellId] = cellHash),
2081
+ )
2082
+ : 0,
2083
+ ),
2084
+ ),
2085
+ ),
2086
+ );
2087
+ return cellHashes;
2088
+ };
2089
+ const getMergeableCellDiff = (otherTableRowCellHashes) => {
2090
+ const [[tableStampMaps, tablesTime]] = contentStampMap;
2091
+ const tablesObj = {};
2092
+ objForEach(otherTableRowCellHashes, (otherRowCellHashes, tableId) =>
2093
+ objForEach(otherRowCellHashes, (otherCellHashes, rowId) =>
2094
+ ifNotUndefined(
2095
+ mapGet(tableStampMaps, tableId),
2096
+ ([rowStampMaps, tableTime]) =>
2097
+ ifNotUndefined(
2098
+ mapGet(rowStampMaps, rowId),
2099
+ ([cellStampMaps, rowTime]) =>
2100
+ mapForEach(cellStampMaps, (cellId, [cell, cellTime, hash]) =>
2101
+ hash !== otherCellHashes[cellId]
2102
+ ? (objEnsure(
2103
+ objEnsure(tablesObj, tableId, () =>
2104
+ stampNewObj(tableTime),
2105
+ )[0],
2106
+ rowId,
2107
+ () => stampNewObj(rowTime),
2108
+ )[0][cellId] = [cell, cellTime])
2109
+ : 0,
2110
+ ),
2111
+ ),
2112
+ ),
2113
+ ),
2114
+ );
2115
+ return newStamp(tablesObj, tablesTime);
2116
+ };
2117
+ const getMergeableValuesHashes = () =>
2118
+ mapToObj(contentStampMap[1][0], getStampHash);
2119
+ const getMergeableValueDiff = (relativeTo) => {
2120
+ const [, [valueStampMaps, valuesTime]] = contentStampMap;
2121
+ const values = mapToObj(
2122
+ valueStampMaps,
2123
+ stampCloneWithoutHash,
2124
+ ([, , hash], valueId) => hash == relativeTo?.[valueId],
2125
+ );
2126
+ return newStamp(values, valuesTime);
2127
+ };
2128
+ const setMergeableContent = (mergeableContent) =>
2129
+ disableListeningToRawStoreChanges(() =>
2130
+ validateMergeableContent(mergeableContent)
2131
+ ? store.transaction(() => {
2132
+ store.delTables().delValues();
2133
+ contentStampMap = newContentStampMap();
2134
+ store.applyChanges(mergeContentOrChanges(mergeableContent, 1));
2135
+ })
2136
+ : 0,
2137
+ );
2138
+ const setDefaultContent = (content) => {
2139
+ store.transaction(() => {
2140
+ defaultingContent = 1;
2141
+ store.setContent(content);
2142
+ defaultingContent = 0;
2143
+ });
2144
+ return mergeableStore;
2145
+ };
2146
+ const getTransactionMergeableChanges = () => {
2147
+ const [[tableStampMaps, tablesTime], [valueStampMaps, valuesTime]] =
2148
+ contentStampMap;
2149
+ const tablesObj = {};
2150
+ collForEach(touchedCells, (touchedTable, tableId) =>
2151
+ ifNotUndefined(
2152
+ mapGet(tableStampMaps, tableId),
2153
+ ([rowStampMaps, tableTime]) => {
2154
+ const tableObj = {};
2155
+ collForEach(touchedTable, (touchedRow, rowId) =>
2156
+ ifNotUndefined(
2157
+ mapGet(rowStampMaps, rowId),
2158
+ ([cellStampMaps, rowTime]) => {
2159
+ const rowObj = {};
2160
+ collForEach(touchedRow, (cellId) => {
2161
+ ifNotUndefined(
2162
+ mapGet(cellStampMaps, cellId),
2163
+ ([cell, time]) => (rowObj[cellId] = newStamp(cell, time)),
2164
+ );
2165
+ });
2166
+ tableObj[rowId] = newStamp(rowObj, rowTime);
2167
+ },
2168
+ ),
2169
+ );
2170
+ tablesObj[tableId] = newStamp(tableObj, tableTime);
2171
+ },
2172
+ ),
2173
+ );
2174
+ const valuesObj = {};
2175
+ collForEach(touchedValues, (valueId) =>
2176
+ ifNotUndefined(
2177
+ mapGet(valueStampMaps, valueId),
2178
+ ([value, time]) => (valuesObj[valueId] = newStamp(value, time)),
2179
+ ),
2180
+ );
2181
+ return [
2182
+ newStamp(tablesObj, tablesTime),
2183
+ newStamp(valuesObj, valuesTime),
2184
+ 1,
2185
+ ];
2186
+ };
2187
+ const applyMergeableChanges = (mergeableChanges) =>
2188
+ disableListeningToRawStoreChanges(() =>
2189
+ store.applyChanges(mergeContentOrChanges(mergeableChanges)),
2190
+ );
2191
+ const merge = (mergeableStore2) => {
2192
+ const mergeableChanges = getMergeableContent();
2193
+ const mergeableChanges2 = mergeableStore2.getMergeableContent();
2194
+ mergeableStore2.applyMergeableChanges(mergeableChanges);
2195
+ return applyMergeableChanges(mergeableChanges2);
2196
+ };
2197
+ const mergeableStore = {
2198
+ getMergeableContent,
2199
+ getMergeableContentHashes,
2200
+ getMergeableTableHashes,
2201
+ getMergeableTableDiff,
2202
+ getMergeableRowHashes,
2203
+ getMergeableRowDiff,
2204
+ getMergeableCellHashes,
2205
+ getMergeableCellDiff,
2206
+ getMergeableValuesHashes,
2207
+ getMergeableValueDiff,
2208
+ setMergeableContent,
2209
+ setDefaultContent,
2210
+ getTransactionMergeableChanges,
2211
+ applyMergeableChanges,
2212
+ merge,
2213
+ };
2214
+ store.setInternalListeners(
2215
+ preStartTransaction,
2216
+ preFinishTransaction,
2217
+ postFinishTransaction,
2218
+ cellChanged,
2219
+ valueChanged,
2220
+ );
2221
+ objToArray(
2222
+ store,
2223
+ (method, name) =>
2224
+ (mergeableStore[name] = // fluent methods
2225
+ strStartsWith(name, 'set') ||
2226
+ strStartsWith(name, 'del') ||
2227
+ strStartsWith(name, 'apply') ||
2228
+ strEndsWith(name, 'Transaction') ||
2229
+ name == 'callListener'
2230
+ ? (...args) => {
2231
+ method(...args);
2232
+ return mergeableStore;
2233
+ }
2234
+ : strStartsWith(name, 'add') && strEndsWith(name, 'Listener')
2235
+ ? (...args) => {
2236
+ const listenerArg = LISTENER_ARGS[slice(name, 3, -8)] ?? 0;
2237
+ const listener = args[listenerArg];
2238
+ args[listenerArg] = (_store, ...args2) =>
2239
+ listener(mergeableStore, ...args2);
2240
+ return method(...args);
2241
+ }
2242
+ : name == 'isMergeable'
2243
+ ? () => true
2244
+ : method),
2245
+ );
2246
+ return objFreeze(mergeableStore);
2247
+ };
2248
+
2249
+ exports.createMergeableStore = createMergeableStore;