tinybase 5.5.0-beta.0 → 6.0.0-beta.1

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 (1318) hide show
  1. package/@types/mergeable-store/index.d.cts +5 -2
  2. package/@types/mergeable-store/index.d.ts +5 -2
  3. package/@types/mergeable-store/with-schemas/index.d.cts +8 -3
  4. package/@types/mergeable-store/with-schemas/index.d.ts +8 -3
  5. package/@types/persisters/index.d.cts +6 -2
  6. package/@types/persisters/index.d.ts +6 -2
  7. package/@types/persisters/with-schemas/index.d.cts +12 -4
  8. package/@types/persisters/with-schemas/index.d.ts +12 -4
  9. package/@types/store/index.d.cts +20 -2
  10. package/@types/store/index.d.ts +20 -2
  11. package/@types/store/with-schemas/index.d.cts +23 -3
  12. package/@types/store/with-schemas/index.d.ts +23 -3
  13. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +5 -2
  14. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +5 -2
  15. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +5 -2
  16. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +5 -2
  17. package/@types/ui-react/index.d.cts +42 -0
  18. package/@types/ui-react/index.d.ts +42 -0
  19. package/@types/ui-react/with-schemas/index.d.cts +48 -0
  20. package/@types/ui-react/with-schemas/index.d.ts +48 -0
  21. package/cli/index.js +5 -2
  22. package/index.js +19 -14
  23. package/mergeable-store/index.js +18 -13
  24. package/mergeable-store/with-schemas/index.js +18 -13
  25. package/min/index.js +1 -1
  26. package/min/index.js.gz +0 -0
  27. package/min/mergeable-store/index.js +1 -1
  28. package/min/mergeable-store/index.js.gz +0 -0
  29. package/min/mergeable-store/with-schemas/index.js +1 -1
  30. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  31. package/min/persisters/index.js +1 -1
  32. package/min/persisters/index.js.gz +0 -0
  33. package/min/persisters/persister-automerge/index.js +1 -1
  34. package/min/persisters/persister-automerge/index.js.gz +0 -0
  35. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  36. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  37. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  38. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  39. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  40. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  41. package/min/persisters/persister-electric-sql/index.js +1 -1
  42. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  43. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  44. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  45. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  46. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  47. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  48. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  49. package/min/persisters/persister-file/index.js +1 -1
  50. package/min/persisters/persister-file/index.js.gz +0 -0
  51. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  52. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  53. package/min/persisters/persister-libsql/index.js +1 -1
  54. package/min/persisters/persister-libsql/index.js.gz +0 -0
  55. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  56. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  57. package/min/persisters/persister-pglite/index.js +1 -1
  58. package/min/persisters/persister-pglite/index.js.gz +0 -0
  59. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  60. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  61. package/min/persisters/persister-postgres/index.js +1 -1
  62. package/min/persisters/persister-postgres/index.js.gz +0 -0
  63. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  64. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  65. package/min/persisters/persister-powersync/index.js +1 -1
  66. package/min/persisters/persister-powersync/index.js.gz +0 -0
  67. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  68. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  69. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  70. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  71. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  72. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  73. package/min/persisters/persister-sqlite3/index.js +1 -1
  74. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  75. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  76. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  77. package/min/persisters/persister-yjs/index.js +1 -1
  78. package/min/persisters/persister-yjs/index.js.gz +0 -0
  79. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  80. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  81. package/min/persisters/with-schemas/index.js +1 -1
  82. package/min/persisters/with-schemas/index.js.gz +0 -0
  83. package/min/queries/index.js +1 -1
  84. package/min/queries/index.js.gz +0 -0
  85. package/min/queries/with-schemas/index.js +1 -1
  86. package/min/queries/with-schemas/index.js.gz +0 -0
  87. package/min/store/index.js +1 -1
  88. package/min/store/index.js.gz +0 -0
  89. package/min/store/with-schemas/index.js +1 -1
  90. package/min/store/with-schemas/index.js.gz +0 -0
  91. package/min/ui-react/index.js +1 -1
  92. package/min/ui-react/index.js.gz +0 -0
  93. package/min/ui-react/with-schemas/index.js +1 -1
  94. package/min/ui-react/with-schemas/index.js.gz +0 -0
  95. package/min/ui-react-dom/index.js +1 -1
  96. package/min/ui-react-dom/index.js.gz +0 -0
  97. package/min/ui-react-dom/with-schemas/index.js +1 -1
  98. package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  99. package/min/ui-react-inspector/index.js +1 -1
  100. package/min/ui-react-inspector/index.js.gz +0 -0
  101. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  102. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  103. package/min/with-schemas/index.js +1 -1
  104. package/min/with-schemas/index.js.gz +0 -0
  105. package/package.json +332 -2983
  106. package/persisters/index.js +3 -3
  107. package/persisters/persister-automerge/index.js +8 -6
  108. package/persisters/persister-automerge/with-schemas/index.js +8 -6
  109. package/persisters/persister-cr-sqlite-wasm/index.js +3 -3
  110. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +3 -3
  111. package/persisters/persister-electric-sql/index.js +3 -3
  112. package/persisters/persister-electric-sql/with-schemas/index.js +3 -3
  113. package/persisters/persister-expo-sqlite/index.js +3 -3
  114. package/persisters/persister-expo-sqlite/with-schemas/index.js +3 -3
  115. package/persisters/persister-file/index.js +1 -1
  116. package/persisters/persister-file/with-schemas/index.js +1 -1
  117. package/persisters/persister-libsql/index.js +3 -3
  118. package/persisters/persister-libsql/with-schemas/index.js +3 -3
  119. package/persisters/persister-partykit-client/index.js +5 -2
  120. package/persisters/persister-partykit-client/with-schemas/index.js +5 -2
  121. package/persisters/persister-pglite/index.js +3 -3
  122. package/persisters/persister-pglite/with-schemas/index.js +3 -3
  123. package/persisters/persister-postgres/index.js +3 -3
  124. package/persisters/persister-postgres/with-schemas/index.js +3 -3
  125. package/persisters/persister-powersync/index.js +3 -3
  126. package/persisters/persister-powersync/with-schemas/index.js +3 -3
  127. package/persisters/persister-sqlite-wasm/index.js +3 -3
  128. package/persisters/persister-sqlite-wasm/with-schemas/index.js +3 -3
  129. package/persisters/persister-sqlite3/index.js +3 -3
  130. package/persisters/persister-sqlite3/with-schemas/index.js +3 -3
  131. package/persisters/persister-yjs/index.js +7 -5
  132. package/persisters/persister-yjs/with-schemas/index.js +7 -5
  133. package/persisters/with-schemas/index.js +3 -3
  134. package/queries/index.js +4 -1
  135. package/queries/with-schemas/index.js +4 -1
  136. package/readme.md +14 -14
  137. package/releases.md +25 -25
  138. package/store/index.js +20 -12
  139. package/store/with-schemas/index.js +20 -12
  140. package/tools/index.js +4 -4
  141. package/tools/with-schemas/index.js +4 -4
  142. package/ui-react/index.js +187 -155
  143. package/ui-react/with-schemas/index.js +187 -155
  144. package/ui-react-dom/index.js +288 -285
  145. package/ui-react-dom/with-schemas/index.js +288 -285
  146. package/ui-react-inspector/index.js +591 -603
  147. package/ui-react-inspector/with-schemas/index.js +591 -603
  148. package/with-schemas/index.js +19 -14
  149. package/cjs/checkpoints/index.cjs +0 -435
  150. package/cjs/checkpoints/with-schemas/index.cjs +0 -435
  151. package/cjs/common/index.cjs +0 -34
  152. package/cjs/common/with-schemas/index.cjs +0 -34
  153. package/cjs/es6/checkpoints/index.cjs +0 -475
  154. package/cjs/es6/checkpoints/with-schemas/index.cjs +0 -475
  155. package/cjs/es6/common/index.cjs +0 -36
  156. package/cjs/es6/common/with-schemas/index.cjs +0 -36
  157. package/cjs/es6/index.cjs +0 -3894
  158. package/cjs/es6/indexes/index.cjs +0 -598
  159. package/cjs/es6/indexes/with-schemas/index.cjs +0 -598
  160. package/cjs/es6/mergeable-store/index.cjs +0 -2380
  161. package/cjs/es6/mergeable-store/with-schemas/index.cjs +0 -2380
  162. package/cjs/es6/metrics/index.cjs +0 -579
  163. package/cjs/es6/metrics/with-schemas/index.cjs +0 -579
  164. package/cjs/es6/min/checkpoints/index.cjs +0 -1
  165. package/cjs/es6/min/checkpoints/index.cjs.gz +0 -0
  166. package/cjs/es6/min/checkpoints/with-schemas/index.cjs +0 -1
  167. package/cjs/es6/min/checkpoints/with-schemas/index.cjs.gz +0 -0
  168. package/cjs/es6/min/common/index.cjs +0 -1
  169. package/cjs/es6/min/common/index.cjs.gz +0 -0
  170. package/cjs/es6/min/common/with-schemas/index.cjs +0 -1
  171. package/cjs/es6/min/common/with-schemas/index.cjs.gz +0 -0
  172. package/cjs/es6/min/index.cjs +0 -1
  173. package/cjs/es6/min/index.cjs.gz +0 -0
  174. package/cjs/es6/min/indexes/index.cjs +0 -1
  175. package/cjs/es6/min/indexes/index.cjs.gz +0 -0
  176. package/cjs/es6/min/indexes/with-schemas/index.cjs +0 -1
  177. package/cjs/es6/min/indexes/with-schemas/index.cjs.gz +0 -0
  178. package/cjs/es6/min/mergeable-store/index.cjs +0 -1
  179. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  180. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +0 -1
  181. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  182. package/cjs/es6/min/metrics/index.cjs +0 -1
  183. package/cjs/es6/min/metrics/index.cjs.gz +0 -0
  184. package/cjs/es6/min/metrics/with-schemas/index.cjs +0 -1
  185. package/cjs/es6/min/metrics/with-schemas/index.cjs.gz +0 -0
  186. package/cjs/es6/min/persisters/index.cjs +0 -1
  187. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  188. package/cjs/es6/min/persisters/persister-automerge/index.cjs +0 -1
  189. package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
  190. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +0 -1
  191. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  192. package/cjs/es6/min/persisters/persister-browser/index.cjs +0 -1
  193. package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
  194. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +0 -1
  195. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  196. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +0 -1
  197. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  198. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +0 -1
  199. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  200. package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs +0 -1
  201. package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
  202. package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +0 -1
  203. package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
  204. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +0 -1
  205. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  206. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +0 -1
  207. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  208. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +0 -1
  209. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  210. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +0 -1
  211. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  212. package/cjs/es6/min/persisters/persister-file/index.cjs +0 -1
  213. package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
  214. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +0 -1
  215. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  216. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs +0 -1
  217. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  218. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs +0 -1
  219. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  220. package/cjs/es6/min/persisters/persister-libsql/index.cjs +0 -1
  221. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  222. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +0 -1
  223. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  224. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +0 -1
  225. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  226. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +0 -1
  227. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  228. package/cjs/es6/min/persisters/persister-partykit-server/index.cjs +0 -1
  229. package/cjs/es6/min/persisters/persister-partykit-server/index.cjs.gz +0 -0
  230. package/cjs/es6/min/persisters/persister-partykit-server/with-schemas/index.cjs +0 -1
  231. package/cjs/es6/min/persisters/persister-partykit-server/with-schemas/index.cjs.gz +0 -0
  232. package/cjs/es6/min/persisters/persister-pglite/index.cjs +0 -1
  233. package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
  234. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +0 -1
  235. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  236. package/cjs/es6/min/persisters/persister-postgres/index.cjs +0 -1
  237. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  238. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +0 -1
  239. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  240. package/cjs/es6/min/persisters/persister-powersync/index.cjs +0 -1
  241. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  242. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +0 -1
  243. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  244. package/cjs/es6/min/persisters/persister-remote/index.cjs +0 -1
  245. package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
  246. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +0 -1
  247. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  248. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +0 -1
  249. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  250. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +0 -1
  251. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  252. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +0 -1
  253. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  254. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +0 -1
  255. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  256. package/cjs/es6/min/persisters/persister-yjs/index.cjs +0 -1
  257. package/cjs/es6/min/persisters/persister-yjs/index.cjs.gz +0 -0
  258. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs +0 -1
  259. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  260. package/cjs/es6/min/persisters/with-schemas/index.cjs +0 -1
  261. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  262. package/cjs/es6/min/queries/index.cjs +0 -1
  263. package/cjs/es6/min/queries/index.cjs.gz +0 -0
  264. package/cjs/es6/min/queries/with-schemas/index.cjs +0 -1
  265. package/cjs/es6/min/queries/with-schemas/index.cjs.gz +0 -0
  266. package/cjs/es6/min/relationships/index.cjs +0 -1
  267. package/cjs/es6/min/relationships/index.cjs.gz +0 -0
  268. package/cjs/es6/min/relationships/with-schemas/index.cjs +0 -1
  269. package/cjs/es6/min/relationships/with-schemas/index.cjs.gz +0 -0
  270. package/cjs/es6/min/store/index.cjs +0 -1
  271. package/cjs/es6/min/store/index.cjs.gz +0 -0
  272. package/cjs/es6/min/store/with-schemas/index.cjs +0 -1
  273. package/cjs/es6/min/store/with-schemas/index.cjs.gz +0 -0
  274. package/cjs/es6/min/synchronizers/index.cjs +0 -1
  275. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  276. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +0 -1
  277. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  278. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +0 -1
  279. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  280. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +0 -1
  281. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  282. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +0 -1
  283. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  284. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +0 -1
  285. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  286. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +0 -1
  287. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  288. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +0 -1
  289. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  290. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +0 -1
  291. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  292. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +0 -1
  293. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
  294. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +0 -1
  295. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
  296. package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/index.cjs +0 -1
  297. package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/index.cjs.gz +0 -0
  298. package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +0 -1
  299. package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs.gz +0 -0
  300. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +0 -1
  301. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  302. package/cjs/es6/min/tools/index.cjs +0 -1
  303. package/cjs/es6/min/tools/index.cjs.gz +0 -0
  304. package/cjs/es6/min/tools/with-schemas/index.cjs +0 -1
  305. package/cjs/es6/min/tools/with-schemas/index.cjs.gz +0 -0
  306. package/cjs/es6/min/ui-react/index.cjs +0 -1
  307. package/cjs/es6/min/ui-react/index.cjs.gz +0 -0
  308. package/cjs/es6/min/ui-react/with-schemas/index.cjs +0 -1
  309. package/cjs/es6/min/ui-react/with-schemas/index.cjs.gz +0 -0
  310. package/cjs/es6/min/ui-react-dom/index.cjs +0 -1
  311. package/cjs/es6/min/ui-react-dom/index.cjs.gz +0 -0
  312. package/cjs/es6/min/ui-react-dom/with-schemas/index.cjs +0 -1
  313. package/cjs/es6/min/ui-react-dom/with-schemas/index.cjs.gz +0 -0
  314. package/cjs/es6/min/ui-react-inspector/index.cjs +0 -1
  315. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  316. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +0 -1
  317. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  318. package/cjs/es6/min/with-schemas/index.cjs +0 -1
  319. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  320. package/cjs/es6/persisters/index.cjs +0 -1562
  321. package/cjs/es6/persisters/persister-automerge/index.cjs +0 -667
  322. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +0 -667
  323. package/cjs/es6/persisters/persister-browser/index.cjs +0 -576
  324. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +0 -576
  325. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +0 -1471
  326. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +0 -1471
  327. package/cjs/es6/persisters/persister-durable-object-storage/index.cjs +0 -687
  328. package/cjs/es6/persisters/persister-durable-object-storage/with-schemas/index.cjs +0 -687
  329. package/cjs/es6/persisters/persister-electric-sql/index.cjs +0 -1478
  330. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +0 -1478
  331. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +0 -1476
  332. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +0 -1476
  333. package/cjs/es6/persisters/persister-file/index.cjs +0 -561
  334. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +0 -561
  335. package/cjs/es6/persisters/persister-indexed-db/index.cjs +0 -673
  336. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +0 -673
  337. package/cjs/es6/persisters/persister-libsql/index.cjs +0 -1472
  338. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +0 -1472
  339. package/cjs/es6/persisters/persister-partykit-client/index.cjs +0 -649
  340. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +0 -649
  341. package/cjs/es6/persisters/persister-partykit-server/index.cjs +0 -426
  342. package/cjs/es6/persisters/persister-partykit-server/with-schemas/index.cjs +0 -426
  343. package/cjs/es6/persisters/persister-pglite/index.cjs +0 -1481
  344. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +0 -1481
  345. package/cjs/es6/persisters/persister-postgres/index.cjs +0 -1485
  346. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +0 -1485
  347. package/cjs/es6/persisters/persister-powersync/index.cjs +0 -1612
  348. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +0 -1612
  349. package/cjs/es6/persisters/persister-remote/index.cjs +0 -582
  350. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +0 -582
  351. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +0 -1505
  352. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +0 -1505
  353. package/cjs/es6/persisters/persister-sqlite3/index.cjs +0 -1481
  354. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +0 -1481
  355. package/cjs/es6/persisters/persister-yjs/index.cjs +0 -724
  356. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +0 -724
  357. package/cjs/es6/persisters/with-schemas/index.cjs +0 -1562
  358. package/cjs/es6/queries/index.cjs +0 -860
  359. package/cjs/es6/queries/with-schemas/index.cjs +0 -860
  360. package/cjs/es6/relationships/index.cjs +0 -593
  361. package/cjs/es6/relationships/with-schemas/index.cjs +0 -593
  362. package/cjs/es6/store/index.cjs +0 -1721
  363. package/cjs/es6/store/with-schemas/index.cjs +0 -1721
  364. package/cjs/es6/synchronizers/index.cjs +0 -834
  365. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +0 -858
  366. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +0 -858
  367. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +0 -859
  368. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +0 -859
  369. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +0 -929
  370. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +0 -929
  371. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +0 -1063
  372. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +0 -1063
  373. package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/index.cjs +0 -1080
  374. package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +0 -1080
  375. package/cjs/es6/synchronizers/synchronizer-ws-server-simple/index.cjs +0 -130
  376. package/cjs/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +0 -130
  377. package/cjs/es6/synchronizers/with-schemas/index.cjs +0 -834
  378. package/cjs/es6/tools/index.cjs +0 -3426
  379. package/cjs/es6/tools/with-schemas/index.cjs +0 -3426
  380. package/cjs/es6/ui-react/index.cjs +0 -2408
  381. package/cjs/es6/ui-react/with-schemas/index.cjs +0 -2408
  382. package/cjs/es6/ui-react-dom/index.cjs +0 -914
  383. package/cjs/es6/ui-react-dom/with-schemas/index.cjs +0 -914
  384. package/cjs/es6/ui-react-inspector/index.cjs +0 -3706
  385. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +0 -3706
  386. package/cjs/es6/with-schemas/index.cjs +0 -3894
  387. package/cjs/index.cjs +0 -3749
  388. package/cjs/indexes/index.cjs +0 -551
  389. package/cjs/indexes/with-schemas/index.cjs +0 -551
  390. package/cjs/mergeable-store/index.cjs +0 -2280
  391. package/cjs/mergeable-store/with-schemas/index.cjs +0 -2280
  392. package/cjs/metrics/index.cjs +0 -526
  393. package/cjs/metrics/with-schemas/index.cjs +0 -526
  394. package/cjs/min/checkpoints/index.cjs +0 -1
  395. package/cjs/min/checkpoints/index.cjs.gz +0 -0
  396. package/cjs/min/checkpoints/with-schemas/index.cjs +0 -1
  397. package/cjs/min/checkpoints/with-schemas/index.cjs.gz +0 -0
  398. package/cjs/min/common/index.cjs +0 -1
  399. package/cjs/min/common/index.cjs.gz +0 -0
  400. package/cjs/min/common/with-schemas/index.cjs +0 -1
  401. package/cjs/min/common/with-schemas/index.cjs.gz +0 -0
  402. package/cjs/min/index.cjs +0 -1
  403. package/cjs/min/index.cjs.gz +0 -0
  404. package/cjs/min/indexes/index.cjs +0 -1
  405. package/cjs/min/indexes/index.cjs.gz +0 -0
  406. package/cjs/min/indexes/with-schemas/index.cjs +0 -1
  407. package/cjs/min/indexes/with-schemas/index.cjs.gz +0 -0
  408. package/cjs/min/mergeable-store/index.cjs +0 -1
  409. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  410. package/cjs/min/mergeable-store/with-schemas/index.cjs +0 -1
  411. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  412. package/cjs/min/metrics/index.cjs +0 -1
  413. package/cjs/min/metrics/index.cjs.gz +0 -0
  414. package/cjs/min/metrics/with-schemas/index.cjs +0 -1
  415. package/cjs/min/metrics/with-schemas/index.cjs.gz +0 -0
  416. package/cjs/min/persisters/index.cjs +0 -1
  417. package/cjs/min/persisters/index.cjs.gz +0 -0
  418. package/cjs/min/persisters/persister-automerge/index.cjs +0 -1
  419. package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
  420. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +0 -1
  421. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  422. package/cjs/min/persisters/persister-browser/index.cjs +0 -1
  423. package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
  424. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +0 -1
  425. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  426. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +0 -1
  427. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  428. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +0 -1
  429. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  430. package/cjs/min/persisters/persister-durable-object-storage/index.cjs +0 -1
  431. package/cjs/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
  432. package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +0 -1
  433. package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
  434. package/cjs/min/persisters/persister-electric-sql/index.cjs +0 -1
  435. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  436. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +0 -1
  437. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  438. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +0 -1
  439. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  440. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +0 -1
  441. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  442. package/cjs/min/persisters/persister-file/index.cjs +0 -1
  443. package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
  444. package/cjs/min/persisters/persister-file/with-schemas/index.cjs +0 -1
  445. package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  446. package/cjs/min/persisters/persister-indexed-db/index.cjs +0 -1
  447. package/cjs/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  448. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs +0 -1
  449. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  450. package/cjs/min/persisters/persister-libsql/index.cjs +0 -1
  451. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  452. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +0 -1
  453. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  454. package/cjs/min/persisters/persister-partykit-client/index.cjs +0 -1
  455. package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  456. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +0 -1
  457. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  458. package/cjs/min/persisters/persister-partykit-server/index.cjs +0 -1
  459. package/cjs/min/persisters/persister-partykit-server/index.cjs.gz +0 -0
  460. package/cjs/min/persisters/persister-partykit-server/with-schemas/index.cjs +0 -1
  461. package/cjs/min/persisters/persister-partykit-server/with-schemas/index.cjs.gz +0 -0
  462. package/cjs/min/persisters/persister-pglite/index.cjs +0 -1
  463. package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
  464. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +0 -1
  465. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  466. package/cjs/min/persisters/persister-postgres/index.cjs +0 -1
  467. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  468. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +0 -1
  469. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  470. package/cjs/min/persisters/persister-powersync/index.cjs +0 -1
  471. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  472. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +0 -1
  473. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  474. package/cjs/min/persisters/persister-remote/index.cjs +0 -1
  475. package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
  476. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +0 -1
  477. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  478. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +0 -1
  479. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  480. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +0 -1
  481. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  482. package/cjs/min/persisters/persister-sqlite3/index.cjs +0 -1
  483. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  484. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +0 -1
  485. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  486. package/cjs/min/persisters/persister-yjs/index.cjs +0 -1
  487. package/cjs/min/persisters/persister-yjs/index.cjs.gz +0 -0
  488. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs +0 -1
  489. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  490. package/cjs/min/persisters/with-schemas/index.cjs +0 -1
  491. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  492. package/cjs/min/queries/index.cjs +0 -1
  493. package/cjs/min/queries/index.cjs.gz +0 -0
  494. package/cjs/min/queries/with-schemas/index.cjs +0 -1
  495. package/cjs/min/queries/with-schemas/index.cjs.gz +0 -0
  496. package/cjs/min/relationships/index.cjs +0 -1
  497. package/cjs/min/relationships/index.cjs.gz +0 -0
  498. package/cjs/min/relationships/with-schemas/index.cjs +0 -1
  499. package/cjs/min/relationships/with-schemas/index.cjs.gz +0 -0
  500. package/cjs/min/store/index.cjs +0 -1
  501. package/cjs/min/store/index.cjs.gz +0 -0
  502. package/cjs/min/store/with-schemas/index.cjs +0 -1
  503. package/cjs/min/store/with-schemas/index.cjs.gz +0 -0
  504. package/cjs/min/synchronizers/index.cjs +0 -1
  505. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  506. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +0 -1
  507. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  508. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +0 -1
  509. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  510. package/cjs/min/synchronizers/synchronizer-local/index.cjs +0 -1
  511. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  512. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +0 -1
  513. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  514. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +0 -1
  515. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  516. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +0 -1
  517. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  518. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +0 -1
  519. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  520. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +0 -1
  521. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  522. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +0 -1
  523. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
  524. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +0 -1
  525. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
  526. package/cjs/min/synchronizers/synchronizer-ws-server-simple/index.cjs +0 -1
  527. package/cjs/min/synchronizers/synchronizer-ws-server-simple/index.cjs.gz +0 -0
  528. package/cjs/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +0 -1
  529. package/cjs/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs.gz +0 -0
  530. package/cjs/min/synchronizers/with-schemas/index.cjs +0 -1
  531. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  532. package/cjs/min/tools/index.cjs +0 -1
  533. package/cjs/min/tools/index.cjs.gz +0 -0
  534. package/cjs/min/tools/with-schemas/index.cjs +0 -1
  535. package/cjs/min/tools/with-schemas/index.cjs.gz +0 -0
  536. package/cjs/min/ui-react/index.cjs +0 -1
  537. package/cjs/min/ui-react/index.cjs.gz +0 -0
  538. package/cjs/min/ui-react/with-schemas/index.cjs +0 -1
  539. package/cjs/min/ui-react/with-schemas/index.cjs.gz +0 -0
  540. package/cjs/min/ui-react-dom/index.cjs +0 -1
  541. package/cjs/min/ui-react-dom/index.cjs.gz +0 -0
  542. package/cjs/min/ui-react-dom/with-schemas/index.cjs +0 -1
  543. package/cjs/min/ui-react-dom/with-schemas/index.cjs.gz +0 -0
  544. package/cjs/min/ui-react-inspector/index.cjs +0 -1
  545. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  546. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +0 -1
  547. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  548. package/cjs/min/with-schemas/index.cjs +0 -1
  549. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  550. package/cjs/persisters/index.cjs +0 -1213
  551. package/cjs/persisters/persister-automerge/index.cjs +0 -542
  552. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +0 -542
  553. package/cjs/persisters/persister-browser/index.cjs +0 -447
  554. package/cjs/persisters/persister-browser/with-schemas/index.cjs +0 -447
  555. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +0 -1126
  556. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +0 -1126
  557. package/cjs/persisters/persister-durable-object-storage/index.cjs +0 -542
  558. package/cjs/persisters/persister-durable-object-storage/with-schemas/index.cjs +0 -542
  559. package/cjs/persisters/persister-electric-sql/index.cjs +0 -1133
  560. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +0 -1133
  561. package/cjs/persisters/persister-expo-sqlite/index.cjs +0 -1131
  562. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +0 -1131
  563. package/cjs/persisters/persister-file/index.cjs +0 -434
  564. package/cjs/persisters/persister-file/with-schemas/index.cjs +0 -434
  565. package/cjs/persisters/persister-indexed-db/index.cjs +0 -507
  566. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +0 -507
  567. package/cjs/persisters/persister-libsql/index.cjs +0 -1127
  568. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +0 -1127
  569. package/cjs/persisters/persister-partykit-client/index.cjs +0 -489
  570. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +0 -489
  571. package/cjs/persisters/persister-partykit-server/index.cjs +0 -296
  572. package/cjs/persisters/persister-partykit-server/with-schemas/index.cjs +0 -296
  573. package/cjs/persisters/persister-pglite/index.cjs +0 -1130
  574. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +0 -1130
  575. package/cjs/persisters/persister-postgres/index.cjs +0 -1131
  576. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +0 -1131
  577. package/cjs/persisters/persister-powersync/index.cjs +0 -1223
  578. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +0 -1223
  579. package/cjs/persisters/persister-remote/index.cjs +0 -453
  580. package/cjs/persisters/persister-remote/with-schemas/index.cjs +0 -453
  581. package/cjs/persisters/persister-sqlite-wasm/index.cjs +0 -1135
  582. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +0 -1135
  583. package/cjs/persisters/persister-sqlite3/index.cjs +0 -1137
  584. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +0 -1137
  585. package/cjs/persisters/persister-yjs/index.cjs +0 -588
  586. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +0 -588
  587. package/cjs/persisters/with-schemas/index.cjs +0 -1213
  588. package/cjs/queries/index.cjs +0 -815
  589. package/cjs/queries/with-schemas/index.cjs +0 -815
  590. package/cjs/relationships/index.cjs +0 -533
  591. package/cjs/relationships/with-schemas/index.cjs +0 -533
  592. package/cjs/store/index.cjs +0 -1643
  593. package/cjs/store/with-schemas/index.cjs +0 -1643
  594. package/cjs/synchronizers/index.cjs +0 -673
  595. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +0 -697
  596. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +0 -697
  597. package/cjs/synchronizers/synchronizer-local/index.cjs +0 -695
  598. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +0 -695
  599. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +0 -741
  600. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +0 -741
  601. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +0 -855
  602. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +0 -855
  603. package/cjs/synchronizers/synchronizer-ws-server-durable-object/index.cjs +0 -797
  604. package/cjs/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +0 -797
  605. package/cjs/synchronizers/synchronizer-ws-server-simple/index.cjs +0 -89
  606. package/cjs/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +0 -89
  607. package/cjs/synchronizers/with-schemas/index.cjs +0 -673
  608. package/cjs/tools/index.cjs +0 -3303
  609. package/cjs/tools/with-schemas/index.cjs +0 -3303
  610. package/cjs/ui-react/index.cjs +0 -2223
  611. package/cjs/ui-react/with-schemas/index.cjs +0 -2223
  612. package/cjs/ui-react-dom/index.cjs +0 -787
  613. package/cjs/ui-react-dom/with-schemas/index.cjs +0 -787
  614. package/cjs/ui-react-inspector/index.cjs +0 -3317
  615. package/cjs/ui-react-inspector/with-schemas/index.cjs +0 -3317
  616. package/cjs/with-schemas/index.cjs +0 -3749
  617. package/es6/checkpoints/index.js +0 -473
  618. package/es6/checkpoints/with-schemas/index.js +0 -473
  619. package/es6/common/index.js +0 -33
  620. package/es6/common/with-schemas/index.js +0 -33
  621. package/es6/index.js +0 -3894
  622. package/es6/indexes/index.js +0 -596
  623. package/es6/indexes/with-schemas/index.js +0 -596
  624. package/es6/mergeable-store/index.js +0 -2378
  625. package/es6/mergeable-store/with-schemas/index.js +0 -2378
  626. package/es6/metrics/index.js +0 -577
  627. package/es6/metrics/with-schemas/index.js +0 -577
  628. package/es6/min/checkpoints/index.js +0 -1
  629. package/es6/min/checkpoints/index.js.gz +0 -0
  630. package/es6/min/checkpoints/with-schemas/index.js +0 -1
  631. package/es6/min/checkpoints/with-schemas/index.js.gz +0 -0
  632. package/es6/min/common/index.js +0 -1
  633. package/es6/min/common/index.js.gz +0 -0
  634. package/es6/min/common/with-schemas/index.js +0 -1
  635. package/es6/min/common/with-schemas/index.js.gz +0 -0
  636. package/es6/min/index.js +0 -1
  637. package/es6/min/index.js.gz +0 -0
  638. package/es6/min/indexes/index.js +0 -1
  639. package/es6/min/indexes/index.js.gz +0 -0
  640. package/es6/min/indexes/with-schemas/index.js +0 -1
  641. package/es6/min/indexes/with-schemas/index.js.gz +0 -0
  642. package/es6/min/mergeable-store/index.js +0 -1
  643. package/es6/min/mergeable-store/index.js.gz +0 -0
  644. package/es6/min/mergeable-store/with-schemas/index.js +0 -1
  645. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  646. package/es6/min/metrics/index.js +0 -1
  647. package/es6/min/metrics/index.js.gz +0 -0
  648. package/es6/min/metrics/with-schemas/index.js +0 -1
  649. package/es6/min/metrics/with-schemas/index.js.gz +0 -0
  650. package/es6/min/persisters/index.js +0 -1
  651. package/es6/min/persisters/index.js.gz +0 -0
  652. package/es6/min/persisters/persister-automerge/index.js +0 -1
  653. package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  654. package/es6/min/persisters/persister-automerge/with-schemas/index.js +0 -1
  655. package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  656. package/es6/min/persisters/persister-browser/index.js +0 -1
  657. package/es6/min/persisters/persister-browser/index.js.gz +0 -0
  658. package/es6/min/persisters/persister-browser/with-schemas/index.js +0 -1
  659. package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  660. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +0 -1
  661. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  662. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1
  663. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  664. package/es6/min/persisters/persister-durable-object-storage/index.js +0 -1
  665. package/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  666. package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +0 -1
  667. package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  668. package/es6/min/persisters/persister-electric-sql/index.js +0 -1
  669. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  670. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +0 -1
  671. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  672. package/es6/min/persisters/persister-expo-sqlite/index.js +0 -1
  673. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  674. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1
  675. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  676. package/es6/min/persisters/persister-file/index.js +0 -1
  677. package/es6/min/persisters/persister-file/index.js.gz +0 -0
  678. package/es6/min/persisters/persister-file/with-schemas/index.js +0 -1
  679. package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  680. package/es6/min/persisters/persister-indexed-db/index.js +0 -1
  681. package/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  682. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js +0 -1
  683. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  684. package/es6/min/persisters/persister-libsql/index.js +0 -1
  685. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  686. package/es6/min/persisters/persister-libsql/with-schemas/index.js +0 -1
  687. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  688. package/es6/min/persisters/persister-partykit-client/index.js +0 -1
  689. package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  690. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +0 -1
  691. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  692. package/es6/min/persisters/persister-partykit-server/index.js +0 -1
  693. package/es6/min/persisters/persister-partykit-server/index.js.gz +0 -0
  694. package/es6/min/persisters/persister-partykit-server/with-schemas/index.js +0 -1
  695. package/es6/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  696. package/es6/min/persisters/persister-pglite/index.js +0 -1
  697. package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  698. package/es6/min/persisters/persister-pglite/with-schemas/index.js +0 -1
  699. package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  700. package/es6/min/persisters/persister-postgres/index.js +0 -1
  701. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  702. package/es6/min/persisters/persister-postgres/with-schemas/index.js +0 -1
  703. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  704. package/es6/min/persisters/persister-powersync/index.js +0 -1
  705. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  706. package/es6/min/persisters/persister-powersync/with-schemas/index.js +0 -1
  707. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  708. package/es6/min/persisters/persister-remote/index.js +0 -1
  709. package/es6/min/persisters/persister-remote/index.js.gz +0 -0
  710. package/es6/min/persisters/persister-remote/with-schemas/index.js +0 -1
  711. package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  712. package/es6/min/persisters/persister-sqlite-wasm/index.js +0 -1
  713. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  714. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1
  715. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  716. package/es6/min/persisters/persister-sqlite3/index.js +0 -1
  717. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  718. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +0 -1
  719. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  720. package/es6/min/persisters/persister-yjs/index.js +0 -1
  721. package/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  722. package/es6/min/persisters/persister-yjs/with-schemas/index.js +0 -1
  723. package/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  724. package/es6/min/persisters/with-schemas/index.js +0 -1
  725. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  726. package/es6/min/queries/index.js +0 -1
  727. package/es6/min/queries/index.js.gz +0 -0
  728. package/es6/min/queries/with-schemas/index.js +0 -1
  729. package/es6/min/queries/with-schemas/index.js.gz +0 -0
  730. package/es6/min/relationships/index.js +0 -1
  731. package/es6/min/relationships/index.js.gz +0 -0
  732. package/es6/min/relationships/with-schemas/index.js +0 -1
  733. package/es6/min/relationships/with-schemas/index.js.gz +0 -0
  734. package/es6/min/store/index.js +0 -1
  735. package/es6/min/store/index.js.gz +0 -0
  736. package/es6/min/store/with-schemas/index.js +0 -1
  737. package/es6/min/store/with-schemas/index.js.gz +0 -0
  738. package/es6/min/synchronizers/index.js +0 -1
  739. package/es6/min/synchronizers/index.js.gz +0 -0
  740. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +0 -1
  741. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  742. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -1
  743. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  744. package/es6/min/synchronizers/synchronizer-local/index.js +0 -1
  745. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  746. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +0 -1
  747. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  748. package/es6/min/synchronizers/synchronizer-ws-client/index.js +0 -1
  749. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  750. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -1
  751. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  752. package/es6/min/synchronizers/synchronizer-ws-server/index.js +0 -1
  753. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  754. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -1
  755. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  756. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -1
  757. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  758. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -1
  759. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  760. package/es6/min/synchronizers/synchronizer-ws-server-simple/index.js +0 -1
  761. package/es6/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  762. package/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -1
  763. package/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  764. package/es6/min/synchronizers/with-schemas/index.js +0 -1
  765. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  766. package/es6/min/tools/index.js +0 -1
  767. package/es6/min/tools/index.js.gz +0 -0
  768. package/es6/min/tools/with-schemas/index.js +0 -1
  769. package/es6/min/tools/with-schemas/index.js.gz +0 -0
  770. package/es6/min/ui-react/index.js +0 -1
  771. package/es6/min/ui-react/index.js.gz +0 -0
  772. package/es6/min/ui-react/with-schemas/index.js +0 -1
  773. package/es6/min/ui-react/with-schemas/index.js.gz +0 -0
  774. package/es6/min/ui-react-dom/index.js +0 -1
  775. package/es6/min/ui-react-dom/index.js.gz +0 -0
  776. package/es6/min/ui-react-dom/with-schemas/index.js +0 -1
  777. package/es6/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  778. package/es6/min/ui-react-inspector/index.js +0 -1
  779. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  780. package/es6/min/ui-react-inspector/with-schemas/index.js +0 -1
  781. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  782. package/es6/min/with-schemas/index.js +0 -1
  783. package/es6/min/with-schemas/index.js.gz +0 -0
  784. package/es6/persisters/index.js +0 -1562
  785. package/es6/persisters/persister-automerge/index.js +0 -665
  786. package/es6/persisters/persister-automerge/with-schemas/index.js +0 -665
  787. package/es6/persisters/persister-browser/index.js +0 -573
  788. package/es6/persisters/persister-browser/with-schemas/index.js +0 -573
  789. package/es6/persisters/persister-cr-sqlite-wasm/index.js +0 -1469
  790. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1469
  791. package/es6/persisters/persister-durable-object-storage/index.js +0 -684
  792. package/es6/persisters/persister-durable-object-storage/with-schemas/index.js +0 -684
  793. package/es6/persisters/persister-electric-sql/index.js +0 -1476
  794. package/es6/persisters/persister-electric-sql/with-schemas/index.js +0 -1476
  795. package/es6/persisters/persister-expo-sqlite/index.js +0 -1472
  796. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1472
  797. package/es6/persisters/persister-file/index.js +0 -559
  798. package/es6/persisters/persister-file/with-schemas/index.js +0 -559
  799. package/es6/persisters/persister-indexed-db/index.js +0 -670
  800. package/es6/persisters/persister-indexed-db/with-schemas/index.js +0 -670
  801. package/es6/persisters/persister-libsql/index.js +0 -1470
  802. package/es6/persisters/persister-libsql/with-schemas/index.js +0 -1470
  803. package/es6/persisters/persister-partykit-client/index.js +0 -647
  804. package/es6/persisters/persister-partykit-client/with-schemas/index.js +0 -647
  805. package/es6/persisters/persister-partykit-server/index.js +0 -426
  806. package/es6/persisters/persister-partykit-server/with-schemas/index.js +0 -426
  807. package/es6/persisters/persister-pglite/index.js +0 -1479
  808. package/es6/persisters/persister-pglite/with-schemas/index.js +0 -1479
  809. package/es6/persisters/persister-postgres/index.js +0 -1483
  810. package/es6/persisters/persister-postgres/with-schemas/index.js +0 -1483
  811. package/es6/persisters/persister-powersync/index.js +0 -1610
  812. package/es6/persisters/persister-powersync/with-schemas/index.js +0 -1610
  813. package/es6/persisters/persister-remote/index.js +0 -580
  814. package/es6/persisters/persister-remote/with-schemas/index.js +0 -580
  815. package/es6/persisters/persister-sqlite-wasm/index.js +0 -1503
  816. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1503
  817. package/es6/persisters/persister-sqlite3/index.js +0 -1479
  818. package/es6/persisters/persister-sqlite3/with-schemas/index.js +0 -1479
  819. package/es6/persisters/persister-yjs/index.js +0 -722
  820. package/es6/persisters/persister-yjs/with-schemas/index.js +0 -722
  821. package/es6/persisters/with-schemas/index.js +0 -1562
  822. package/es6/queries/index.js +0 -858
  823. package/es6/queries/with-schemas/index.js +0 -858
  824. package/es6/relationships/index.js +0 -591
  825. package/es6/relationships/with-schemas/index.js +0 -591
  826. package/es6/store/index.js +0 -1719
  827. package/es6/store/with-schemas/index.js +0 -1719
  828. package/es6/synchronizers/index.js +0 -831
  829. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +0 -856
  830. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -856
  831. package/es6/synchronizers/synchronizer-local/index.js +0 -857
  832. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +0 -857
  833. package/es6/synchronizers/synchronizer-ws-client/index.js +0 -927
  834. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -927
  835. package/es6/synchronizers/synchronizer-ws-server/index.js +0 -1061
  836. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -1061
  837. package/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -1077
  838. package/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -1077
  839. package/es6/synchronizers/synchronizer-ws-server-simple/index.js +0 -128
  840. package/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -128
  841. package/es6/synchronizers/with-schemas/index.js +0 -831
  842. package/es6/tools/index.js +0 -3424
  843. package/es6/tools/with-schemas/index.js +0 -3424
  844. package/es6/ui-react/index.js +0 -2407
  845. package/es6/ui-react/with-schemas/index.js +0 -2407
  846. package/es6/ui-react-dom/index.js +0 -915
  847. package/es6/ui-react-dom/with-schemas/index.js +0 -915
  848. package/es6/ui-react-inspector/index.js +0 -3711
  849. package/es6/ui-react-inspector/with-schemas/index.js +0 -3711
  850. package/es6/with-schemas/index.js +0 -3894
  851. package/umd/checkpoints/index.js +0 -452
  852. package/umd/checkpoints/with-schemas/index.js +0 -452
  853. package/umd/common/index.js +0 -44
  854. package/umd/common/with-schemas/index.js +0 -44
  855. package/umd/es6/checkpoints/index.js +0 -494
  856. package/umd/es6/checkpoints/with-schemas/index.js +0 -494
  857. package/umd/es6/common/index.js +0 -46
  858. package/umd/es6/common/with-schemas/index.js +0 -46
  859. package/umd/es6/index.js +0 -3985
  860. package/umd/es6/indexes/index.js +0 -623
  861. package/umd/es6/indexes/with-schemas/index.js +0 -623
  862. package/umd/es6/mergeable-store/index.js +0 -2450
  863. package/umd/es6/mergeable-store/with-schemas/index.js +0 -2450
  864. package/umd/es6/metrics/index.js +0 -604
  865. package/umd/es6/metrics/with-schemas/index.js +0 -604
  866. package/umd/es6/min/checkpoints/index.js +0 -1
  867. package/umd/es6/min/checkpoints/index.js.gz +0 -0
  868. package/umd/es6/min/checkpoints/with-schemas/index.js +0 -1
  869. package/umd/es6/min/checkpoints/with-schemas/index.js.gz +0 -0
  870. package/umd/es6/min/common/index.js +0 -1
  871. package/umd/es6/min/common/index.js.gz +0 -0
  872. package/umd/es6/min/common/with-schemas/index.js +0 -1
  873. package/umd/es6/min/common/with-schemas/index.js.gz +0 -0
  874. package/umd/es6/min/index.js +0 -1
  875. package/umd/es6/min/index.js.gz +0 -0
  876. package/umd/es6/min/indexes/index.js +0 -1
  877. package/umd/es6/min/indexes/index.js.gz +0 -0
  878. package/umd/es6/min/indexes/with-schemas/index.js +0 -1
  879. package/umd/es6/min/indexes/with-schemas/index.js.gz +0 -0
  880. package/umd/es6/min/mergeable-store/index.js +0 -1
  881. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  882. package/umd/es6/min/mergeable-store/with-schemas/index.js +0 -1
  883. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  884. package/umd/es6/min/metrics/index.js +0 -1
  885. package/umd/es6/min/metrics/index.js.gz +0 -0
  886. package/umd/es6/min/metrics/with-schemas/index.js +0 -1
  887. package/umd/es6/min/metrics/with-schemas/index.js.gz +0 -0
  888. package/umd/es6/min/persisters/index.js +0 -1
  889. package/umd/es6/min/persisters/index.js.gz +0 -0
  890. package/umd/es6/min/persisters/persister-automerge/index.js +0 -1
  891. package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  892. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +0 -1
  893. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  894. package/umd/es6/min/persisters/persister-browser/index.js +0 -1
  895. package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
  896. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +0 -1
  897. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  898. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +0 -1
  899. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  900. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1
  901. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  902. package/umd/es6/min/persisters/persister-durable-object-storage/index.js +0 -1
  903. package/umd/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  904. package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +0 -1
  905. package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  906. package/umd/es6/min/persisters/persister-electric-sql/index.js +0 -1
  907. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  908. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +0 -1
  909. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  910. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +0 -1
  911. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  912. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1
  913. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  914. package/umd/es6/min/persisters/persister-file/index.js +0 -1
  915. package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
  916. package/umd/es6/min/persisters/persister-file/with-schemas/index.js +0 -1
  917. package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  918. package/umd/es6/min/persisters/persister-indexed-db/index.js +0 -1
  919. package/umd/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  920. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js +0 -1
  921. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  922. package/umd/es6/min/persisters/persister-libsql/index.js +0 -1
  923. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  924. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +0 -1
  925. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  926. package/umd/es6/min/persisters/persister-partykit-client/index.js +0 -1
  927. package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  928. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +0 -1
  929. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  930. package/umd/es6/min/persisters/persister-partykit-server/index.js +0 -1
  931. package/umd/es6/min/persisters/persister-partykit-server/index.js.gz +0 -0
  932. package/umd/es6/min/persisters/persister-partykit-server/with-schemas/index.js +0 -1
  933. package/umd/es6/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  934. package/umd/es6/min/persisters/persister-pglite/index.js +0 -1
  935. package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  936. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +0 -1
  937. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  938. package/umd/es6/min/persisters/persister-postgres/index.js +0 -1
  939. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  940. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +0 -1
  941. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  942. package/umd/es6/min/persisters/persister-powersync/index.js +0 -1
  943. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  944. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +0 -1
  945. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  946. package/umd/es6/min/persisters/persister-remote/index.js +0 -1
  947. package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
  948. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +0 -1
  949. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  950. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +0 -1
  951. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  952. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1
  953. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  954. package/umd/es6/min/persisters/persister-sqlite3/index.js +0 -1
  955. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  956. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +0 -1
  957. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  958. package/umd/es6/min/persisters/persister-yjs/index.js +0 -1
  959. package/umd/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  960. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js +0 -1
  961. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  962. package/umd/es6/min/persisters/with-schemas/index.js +0 -1
  963. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  964. package/umd/es6/min/queries/index.js +0 -1
  965. package/umd/es6/min/queries/index.js.gz +0 -0
  966. package/umd/es6/min/queries/with-schemas/index.js +0 -1
  967. package/umd/es6/min/queries/with-schemas/index.js.gz +0 -0
  968. package/umd/es6/min/relationships/index.js +0 -1
  969. package/umd/es6/min/relationships/index.js.gz +0 -0
  970. package/umd/es6/min/relationships/with-schemas/index.js +0 -1
  971. package/umd/es6/min/relationships/with-schemas/index.js.gz +0 -0
  972. package/umd/es6/min/store/index.js +0 -1
  973. package/umd/es6/min/store/index.js.gz +0 -0
  974. package/umd/es6/min/store/with-schemas/index.js +0 -1
  975. package/umd/es6/min/store/with-schemas/index.js.gz +0 -0
  976. package/umd/es6/min/synchronizers/index.js +0 -1
  977. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  978. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +0 -1
  979. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  980. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -1
  981. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  982. package/umd/es6/min/synchronizers/synchronizer-local/index.js +0 -1
  983. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  984. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +0 -1
  985. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  986. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +0 -1
  987. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  988. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -1
  989. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  990. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +0 -1
  991. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  992. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -1
  993. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  994. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -1
  995. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  996. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -1
  997. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  998. package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/index.js +0 -1
  999. package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  1000. package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -1
  1001. package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  1002. package/umd/es6/min/synchronizers/with-schemas/index.js +0 -1
  1003. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  1004. package/umd/es6/min/tools/index.js +0 -1
  1005. package/umd/es6/min/tools/index.js.gz +0 -0
  1006. package/umd/es6/min/tools/with-schemas/index.js +0 -1
  1007. package/umd/es6/min/tools/with-schemas/index.js.gz +0 -0
  1008. package/umd/es6/min/ui-react/index.js +0 -1
  1009. package/umd/es6/min/ui-react/index.js.gz +0 -0
  1010. package/umd/es6/min/ui-react/with-schemas/index.js +0 -1
  1011. package/umd/es6/min/ui-react/with-schemas/index.js.gz +0 -0
  1012. package/umd/es6/min/ui-react-dom/index.js +0 -1
  1013. package/umd/es6/min/ui-react-dom/index.js.gz +0 -0
  1014. package/umd/es6/min/ui-react-dom/with-schemas/index.js +0 -1
  1015. package/umd/es6/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  1016. package/umd/es6/min/ui-react-inspector/index.js +0 -1
  1017. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  1018. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +0 -1
  1019. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  1020. package/umd/es6/min/with-schemas/index.js +0 -1
  1021. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  1022. package/umd/es6/persisters/index.js +0 -1589
  1023. package/umd/es6/persisters/persister-automerge/index.js +0 -683
  1024. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +0 -683
  1025. package/umd/es6/persisters/persister-browser/index.js +0 -592
  1026. package/umd/es6/persisters/persister-browser/with-schemas/index.js +0 -592
  1027. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +0 -1499
  1028. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1499
  1029. package/umd/es6/persisters/persister-durable-object-storage/index.js +0 -707
  1030. package/umd/es6/persisters/persister-durable-object-storage/with-schemas/index.js +0 -707
  1031. package/umd/es6/persisters/persister-electric-sql/index.js +0 -1506
  1032. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +0 -1506
  1033. package/umd/es6/persisters/persister-expo-sqlite/index.js +0 -1505
  1034. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1505
  1035. package/umd/es6/persisters/persister-file/index.js +0 -578
  1036. package/umd/es6/persisters/persister-file/with-schemas/index.js +0 -578
  1037. package/umd/es6/persisters/persister-indexed-db/index.js +0 -689
  1038. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +0 -689
  1039. package/umd/es6/persisters/persister-libsql/index.js +0 -1500
  1040. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +0 -1500
  1041. package/umd/es6/persisters/persister-partykit-client/index.js +0 -665
  1042. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +0 -665
  1043. package/umd/es6/persisters/persister-partykit-server/index.js +0 -447
  1044. package/umd/es6/persisters/persister-partykit-server/with-schemas/index.js +0 -447
  1045. package/umd/es6/persisters/persister-pglite/index.js +0 -1504
  1046. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +0 -1504
  1047. package/umd/es6/persisters/persister-postgres/index.js +0 -1511
  1048. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +0 -1511
  1049. package/umd/es6/persisters/persister-powersync/index.js +0 -1644
  1050. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +0 -1644
  1051. package/umd/es6/persisters/persister-remote/index.js +0 -598
  1052. package/umd/es6/persisters/persister-remote/with-schemas/index.js +0 -598
  1053. package/umd/es6/persisters/persister-sqlite-wasm/index.js +0 -1533
  1054. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1533
  1055. package/umd/es6/persisters/persister-sqlite3/index.js +0 -1509
  1056. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +0 -1509
  1057. package/umd/es6/persisters/persister-yjs/index.js +0 -740
  1058. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +0 -740
  1059. package/umd/es6/persisters/with-schemas/index.js +0 -1589
  1060. package/umd/es6/queries/index.js +0 -876
  1061. package/umd/es6/queries/with-schemas/index.js +0 -876
  1062. package/umd/es6/relationships/index.js +0 -615
  1063. package/umd/es6/relationships/with-schemas/index.js +0 -615
  1064. package/umd/es6/store/index.js +0 -1775
  1065. package/umd/es6/store/with-schemas/index.js +0 -1775
  1066. package/umd/es6/synchronizers/index.js +0 -854
  1067. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +0 -879
  1068. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -879
  1069. package/umd/es6/synchronizers/synchronizer-local/index.js +0 -884
  1070. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +0 -884
  1071. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +0 -949
  1072. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -949
  1073. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +0 -1089
  1074. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -1089
  1075. package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -1103
  1076. package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -1103
  1077. package/umd/es6/synchronizers/synchronizer-ws-server-simple/index.js +0 -144
  1078. package/umd/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -144
  1079. package/umd/es6/synchronizers/with-schemas/index.js +0 -854
  1080. package/umd/es6/tools/index.js +0 -3484
  1081. package/umd/es6/tools/with-schemas/index.js +0 -3484
  1082. package/umd/es6/ui-react/index.js +0 -2466
  1083. package/umd/es6/ui-react/with-schemas/index.js +0 -2466
  1084. package/umd/es6/ui-react-dom/index.js +0 -929
  1085. package/umd/es6/ui-react-dom/with-schemas/index.js +0 -929
  1086. package/umd/es6/ui-react-inspector/index.js +0 -3786
  1087. package/umd/es6/ui-react-inspector/with-schemas/index.js +0 -3786
  1088. package/umd/es6/with-schemas/index.js +0 -3985
  1089. package/umd/index.js +0 -3833
  1090. package/umd/indexes/index.js +0 -574
  1091. package/umd/indexes/with-schemas/index.js +0 -574
  1092. package/umd/mergeable-store/index.js +0 -2343
  1093. package/umd/mergeable-store/with-schemas/index.js +0 -2343
  1094. package/umd/metrics/index.js +0 -549
  1095. package/umd/metrics/with-schemas/index.js +0 -549
  1096. package/umd/min/checkpoints/index.js +0 -1
  1097. package/umd/min/checkpoints/index.js.gz +0 -0
  1098. package/umd/min/checkpoints/with-schemas/index.js +0 -1
  1099. package/umd/min/checkpoints/with-schemas/index.js.gz +0 -0
  1100. package/umd/min/common/index.js +0 -1
  1101. package/umd/min/common/index.js.gz +0 -0
  1102. package/umd/min/common/with-schemas/index.js +0 -1
  1103. package/umd/min/common/with-schemas/index.js.gz +0 -0
  1104. package/umd/min/index.js +0 -1
  1105. package/umd/min/index.js.gz +0 -0
  1106. package/umd/min/indexes/index.js +0 -1
  1107. package/umd/min/indexes/index.js.gz +0 -0
  1108. package/umd/min/indexes/with-schemas/index.js +0 -1
  1109. package/umd/min/indexes/with-schemas/index.js.gz +0 -0
  1110. package/umd/min/mergeable-store/index.js +0 -1
  1111. package/umd/min/mergeable-store/index.js.gz +0 -0
  1112. package/umd/min/mergeable-store/with-schemas/index.js +0 -1
  1113. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  1114. package/umd/min/metrics/index.js +0 -1
  1115. package/umd/min/metrics/index.js.gz +0 -0
  1116. package/umd/min/metrics/with-schemas/index.js +0 -1
  1117. package/umd/min/metrics/with-schemas/index.js.gz +0 -0
  1118. package/umd/min/persisters/index.js +0 -1
  1119. package/umd/min/persisters/index.js.gz +0 -0
  1120. package/umd/min/persisters/persister-automerge/index.js +0 -1
  1121. package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
  1122. package/umd/min/persisters/persister-automerge/with-schemas/index.js +0 -1
  1123. package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  1124. package/umd/min/persisters/persister-browser/index.js +0 -1
  1125. package/umd/min/persisters/persister-browser/index.js.gz +0 -0
  1126. package/umd/min/persisters/persister-browser/with-schemas/index.js +0 -1
  1127. package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  1128. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +0 -1
  1129. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  1130. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1
  1131. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  1132. package/umd/min/persisters/persister-durable-object-storage/index.js +0 -1
  1133. package/umd/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  1134. package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js +0 -1
  1135. package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  1136. package/umd/min/persisters/persister-electric-sql/index.js +0 -1
  1137. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  1138. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +0 -1
  1139. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  1140. package/umd/min/persisters/persister-expo-sqlite/index.js +0 -1
  1141. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  1142. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1
  1143. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  1144. package/umd/min/persisters/persister-file/index.js +0 -1
  1145. package/umd/min/persisters/persister-file/index.js.gz +0 -0
  1146. package/umd/min/persisters/persister-file/with-schemas/index.js +0 -1
  1147. package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  1148. package/umd/min/persisters/persister-indexed-db/index.js +0 -1
  1149. package/umd/min/persisters/persister-indexed-db/index.js.gz +0 -0
  1150. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js +0 -1
  1151. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  1152. package/umd/min/persisters/persister-libsql/index.js +0 -1
  1153. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  1154. package/umd/min/persisters/persister-libsql/with-schemas/index.js +0 -1
  1155. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  1156. package/umd/min/persisters/persister-partykit-client/index.js +0 -1
  1157. package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
  1158. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +0 -1
  1159. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  1160. package/umd/min/persisters/persister-partykit-server/index.js +0 -1
  1161. package/umd/min/persisters/persister-partykit-server/index.js.gz +0 -0
  1162. package/umd/min/persisters/persister-partykit-server/with-schemas/index.js +0 -1
  1163. package/umd/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  1164. package/umd/min/persisters/persister-pglite/index.js +0 -1
  1165. package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
  1166. package/umd/min/persisters/persister-pglite/with-schemas/index.js +0 -1
  1167. package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  1168. package/umd/min/persisters/persister-postgres/index.js +0 -1
  1169. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  1170. package/umd/min/persisters/persister-postgres/with-schemas/index.js +0 -1
  1171. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  1172. package/umd/min/persisters/persister-powersync/index.js +0 -1
  1173. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  1174. package/umd/min/persisters/persister-powersync/with-schemas/index.js +0 -1
  1175. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  1176. package/umd/min/persisters/persister-remote/index.js +0 -1
  1177. package/umd/min/persisters/persister-remote/index.js.gz +0 -0
  1178. package/umd/min/persisters/persister-remote/with-schemas/index.js +0 -1
  1179. package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  1180. package/umd/min/persisters/persister-sqlite-wasm/index.js +0 -1
  1181. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  1182. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1
  1183. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  1184. package/umd/min/persisters/persister-sqlite3/index.js +0 -1
  1185. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  1186. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +0 -1
  1187. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  1188. package/umd/min/persisters/persister-yjs/index.js +0 -1
  1189. package/umd/min/persisters/persister-yjs/index.js.gz +0 -0
  1190. package/umd/min/persisters/persister-yjs/with-schemas/index.js +0 -1
  1191. package/umd/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  1192. package/umd/min/persisters/with-schemas/index.js +0 -1
  1193. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  1194. package/umd/min/queries/index.js +0 -1
  1195. package/umd/min/queries/index.js.gz +0 -0
  1196. package/umd/min/queries/with-schemas/index.js +0 -1
  1197. package/umd/min/queries/with-schemas/index.js.gz +0 -0
  1198. package/umd/min/relationships/index.js +0 -1
  1199. package/umd/min/relationships/index.js.gz +0 -0
  1200. package/umd/min/relationships/with-schemas/index.js +0 -1
  1201. package/umd/min/relationships/with-schemas/index.js.gz +0 -0
  1202. package/umd/min/store/index.js +0 -1
  1203. package/umd/min/store/index.js.gz +0 -0
  1204. package/umd/min/store/with-schemas/index.js +0 -1
  1205. package/umd/min/store/with-schemas/index.js.gz +0 -0
  1206. package/umd/min/synchronizers/index.js +0 -1
  1207. package/umd/min/synchronizers/index.js.gz +0 -0
  1208. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +0 -1
  1209. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  1210. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -1
  1211. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  1212. package/umd/min/synchronizers/synchronizer-local/index.js +0 -1
  1213. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  1214. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +0 -1
  1215. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  1216. package/umd/min/synchronizers/synchronizer-ws-client/index.js +0 -1
  1217. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  1218. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -1
  1219. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  1220. package/umd/min/synchronizers/synchronizer-ws-server/index.js +0 -1
  1221. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  1222. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -1
  1223. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  1224. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -1
  1225. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  1226. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -1
  1227. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  1228. package/umd/min/synchronizers/synchronizer-ws-server-simple/index.js +0 -1
  1229. package/umd/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  1230. package/umd/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -1
  1231. package/umd/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  1232. package/umd/min/synchronizers/with-schemas/index.js +0 -1
  1233. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  1234. package/umd/min/tools/index.js +0 -1
  1235. package/umd/min/tools/index.js.gz +0 -0
  1236. package/umd/min/tools/with-schemas/index.js +0 -1
  1237. package/umd/min/tools/with-schemas/index.js.gz +0 -0
  1238. package/umd/min/ui-react/index.js +0 -1
  1239. package/umd/min/ui-react/index.js.gz +0 -0
  1240. package/umd/min/ui-react/with-schemas/index.js +0 -1
  1241. package/umd/min/ui-react/with-schemas/index.js.gz +0 -0
  1242. package/umd/min/ui-react-dom/index.js +0 -1
  1243. package/umd/min/ui-react-dom/index.js.gz +0 -0
  1244. package/umd/min/ui-react-dom/with-schemas/index.js +0 -1
  1245. package/umd/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  1246. package/umd/min/ui-react-inspector/index.js +0 -1
  1247. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  1248. package/umd/min/ui-react-inspector/with-schemas/index.js +0 -1
  1249. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  1250. package/umd/min/with-schemas/index.js +0 -1
  1251. package/umd/min/with-schemas/index.js.gz +0 -0
  1252. package/umd/persisters/index.js +0 -1231
  1253. package/umd/persisters/persister-automerge/index.js +0 -558
  1254. package/umd/persisters/persister-automerge/with-schemas/index.js +0 -558
  1255. package/umd/persisters/persister-browser/index.js +0 -463
  1256. package/umd/persisters/persister-browser/with-schemas/index.js +0 -463
  1257. package/umd/persisters/persister-cr-sqlite-wasm/index.js +0 -1145
  1258. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +0 -1145
  1259. package/umd/persisters/persister-durable-object-storage/index.js +0 -562
  1260. package/umd/persisters/persister-durable-object-storage/with-schemas/index.js +0 -562
  1261. package/umd/persisters/persister-electric-sql/index.js +0 -1152
  1262. package/umd/persisters/persister-electric-sql/with-schemas/index.js +0 -1152
  1263. package/umd/persisters/persister-expo-sqlite/index.js +0 -1151
  1264. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +0 -1151
  1265. package/umd/persisters/persister-file/index.js +0 -451
  1266. package/umd/persisters/persister-file/with-schemas/index.js +0 -451
  1267. package/umd/persisters/persister-indexed-db/index.js +0 -523
  1268. package/umd/persisters/persister-indexed-db/with-schemas/index.js +0 -523
  1269. package/umd/persisters/persister-libsql/index.js +0 -1146
  1270. package/umd/persisters/persister-libsql/with-schemas/index.js +0 -1146
  1271. package/umd/persisters/persister-partykit-client/index.js +0 -505
  1272. package/umd/persisters/persister-partykit-client/with-schemas/index.js +0 -505
  1273. package/umd/persisters/persister-partykit-server/index.js +0 -324
  1274. package/umd/persisters/persister-partykit-server/with-schemas/index.js +0 -324
  1275. package/umd/persisters/persister-pglite/index.js +0 -1148
  1276. package/umd/persisters/persister-pglite/with-schemas/index.js +0 -1148
  1277. package/umd/persisters/persister-postgres/index.js +0 -1149
  1278. package/umd/persisters/persister-postgres/with-schemas/index.js +0 -1149
  1279. package/umd/persisters/persister-powersync/index.js +0 -1242
  1280. package/umd/persisters/persister-powersync/with-schemas/index.js +0 -1242
  1281. package/umd/persisters/persister-remote/index.js +0 -469
  1282. package/umd/persisters/persister-remote/with-schemas/index.js +0 -469
  1283. package/umd/persisters/persister-sqlite-wasm/index.js +0 -1158
  1284. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +0 -1158
  1285. package/umd/persisters/persister-sqlite3/index.js +0 -1156
  1286. package/umd/persisters/persister-sqlite3/with-schemas/index.js +0 -1156
  1287. package/umd/persisters/persister-yjs/index.js +0 -604
  1288. package/umd/persisters/persister-yjs/with-schemas/index.js +0 -604
  1289. package/umd/persisters/with-schemas/index.js +0 -1231
  1290. package/umd/queries/index.js +0 -829
  1291. package/umd/queries/with-schemas/index.js +0 -829
  1292. package/umd/relationships/index.js +0 -553
  1293. package/umd/relationships/with-schemas/index.js +0 -553
  1294. package/umd/store/index.js +0 -1693
  1295. package/umd/store/with-schemas/index.js +0 -1693
  1296. package/umd/synchronizers/index.js +0 -690
  1297. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +0 -715
  1298. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +0 -715
  1299. package/umd/synchronizers/synchronizer-local/index.js +0 -717
  1300. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +0 -717
  1301. package/umd/synchronizers/synchronizer-ws-client/index.js +0 -758
  1302. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +0 -758
  1303. package/umd/synchronizers/synchronizer-ws-server/index.js +0 -881
  1304. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +0 -881
  1305. package/umd/synchronizers/synchronizer-ws-server-durable-object/index.js +0 -815
  1306. package/umd/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +0 -815
  1307. package/umd/synchronizers/synchronizer-ws-server-simple/index.js +0 -102
  1308. package/umd/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +0 -102
  1309. package/umd/synchronizers/with-schemas/index.js +0 -690
  1310. package/umd/tools/index.js +0 -3354
  1311. package/umd/tools/with-schemas/index.js +0 -3354
  1312. package/umd/ui-react/index.js +0 -2280
  1313. package/umd/ui-react/with-schemas/index.js +0 -2280
  1314. package/umd/ui-react-dom/index.js +0 -810
  1315. package/umd/ui-react-dom/with-schemas/index.js +0 -810
  1316. package/umd/ui-react-inspector/index.js +0 -3397
  1317. package/umd/ui-react-inspector/with-schemas/index.js +0 -3397
  1318. package/umd/with-schemas/index.js +0 -3833
@@ -1,3894 +0,0 @@
1
- const getTypeOf = (thing) => typeof thing;
2
- const EMPTY_STRING = '';
3
- const STRING = getTypeOf(EMPTY_STRING);
4
- const BOOLEAN = getTypeOf(true);
5
- const NUMBER = getTypeOf(0);
6
- const FUNCTION = getTypeOf(getTypeOf);
7
- const TYPE = 'type';
8
- const DEFAULT = 'default';
9
- const SUM = 'sum';
10
- const AVG = 'avg';
11
- const MIN = 'min';
12
- const MAX = 'max';
13
- const LISTENER = 'Listener';
14
- const RESULT = 'Result';
15
- const GET = 'get';
16
- const SET = 'set';
17
- const ADD = 'add';
18
- const DEL = 'del';
19
- const HAS = 'Has';
20
- const IDS = 'Ids';
21
- const TABLE = 'Table';
22
- const TABLES = TABLE + 's';
23
- const TABLE_IDS = TABLE + IDS;
24
- const ROW = 'Row';
25
- const ROW_COUNT = ROW + 'Count';
26
- const ROW_IDS = ROW + IDS;
27
- const SORTED_ROW_IDS = 'Sorted' + ROW + IDS;
28
- const CELL = 'Cell';
29
- const CELL_IDS = CELL + IDS;
30
- const VALUE = 'Value';
31
- const VALUES = VALUE + 's';
32
- const VALUE_IDS = VALUE + IDS;
33
- const TRANSACTION = 'Transaction';
34
- const id = (key) => EMPTY_STRING + key;
35
- const strStartsWith = (str, prefix) => str.startsWith(prefix);
36
- const strEndsWith = (str, suffix) => str.endsWith(suffix);
37
- const strSplit = (str, separator = EMPTY_STRING, limit) =>
38
- str.split(separator, limit);
39
-
40
- const GLOBAL = globalThis;
41
- const math = Math;
42
- const mathMax = math.max;
43
- const mathMin = math.min;
44
- const mathFloor = math.floor;
45
- const isFiniteNumber = isFinite;
46
- const isInstanceOf = (thing, cls) => thing instanceof cls;
47
- const isUndefined = (thing) => thing == void 0;
48
- const ifNotUndefined = (value, then, otherwise) =>
49
- isUndefined(value) ? (otherwise == null ? void 0 : otherwise()) : then(value);
50
- const isTypeStringOrBoolean = (type) => type == STRING || type == BOOLEAN;
51
- const isString = (thing) => getTypeOf(thing) == STRING;
52
- const isFunction = (thing) => getTypeOf(thing) == FUNCTION;
53
- const isArray = (thing) => Array.isArray(thing);
54
- const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
55
- const size = (arrayOrString) => arrayOrString.length;
56
- const test = (regex, subject) => regex.test(subject);
57
- const getUndefined = () => void 0;
58
-
59
- const arrayHas = (array, value) => array.includes(value);
60
- const arrayEvery = (array, cb) => array.every(cb);
61
- const arrayIsEqual = (array1, array2) =>
62
- size(array1) === size(array2) &&
63
- arrayEvery(array1, (value1, index) => array2[index] === value1);
64
- const arrayIsSorted = (array, sorter) =>
65
- arrayEvery(
66
- array,
67
- (value, index) => index == 0 || sorter(array[index - 1], value) <= 0,
68
- );
69
- const arraySort = (array, sorter) => array.sort(sorter);
70
- const arrayForEach = (array, cb) => array.forEach(cb);
71
- const arrayMap = (array, cb) => array.map(cb);
72
- const arraySum = (array) => arrayReduce(array, (i, j) => i + j, 0);
73
- const arrayIsEmpty = (array) => size(array) == 0;
74
- const arrayReduce = (array, cb, initial) => array.reduce(cb, initial);
75
- const arrayClear = (array, to) => array.splice(0, to);
76
- const arrayPush = (array, ...values) => array.push(...values);
77
- const arrayPop = (array) => array.pop();
78
- const arrayUnshift = (array, ...values) => array.unshift(...values);
79
- const arrayShift = (array) => array.shift();
80
-
81
- const object = Object;
82
- const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
83
- const objEntries = object.entries;
84
- const objFrozen = object.isFrozen;
85
- const isObject = (obj) =>
86
- !isUndefined(obj) &&
87
- ifNotUndefined(
88
- getPrototypeOf(obj),
89
- (objPrototype) =>
90
- objPrototype == object.prototype ||
91
- isUndefined(getPrototypeOf(objPrototype)),
92
-
93
- /* istanbul ignore next */
94
- () => true,
95
- );
96
- const objIds = object.keys;
97
- const objFreeze = object.freeze;
98
- const objNew = (entries = []) => object.fromEntries(entries);
99
- const objHas = (obj, id) => id in obj;
100
- const objDel = (obj, id) => {
101
- delete obj[id];
102
- return obj;
103
- };
104
- const objForEach = (obj, cb) =>
105
- arrayForEach(objEntries(obj), ([id, value]) => cb(value, id));
106
- const objToArray = (obj, cb) =>
107
- arrayMap(objEntries(obj), ([id, value]) => cb(value, id));
108
- const objSize = (obj) => size(objIds(obj));
109
- const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
110
- const objEnsure = (obj, id, getDefaultValue) => {
111
- if (!objHas(obj, id)) {
112
- obj[id] = getDefaultValue();
113
- }
114
- return obj[id];
115
- };
116
- const objValidate = (obj, validateChild, onInvalidObj, emptyIsValid = 0) => {
117
- if (
118
- isUndefined(obj) ||
119
- !isObject(obj) ||
120
- (!emptyIsValid && objIsEmpty(obj)) ||
121
- objFrozen(obj)
122
- ) {
123
- onInvalidObj == null ? void 0 : onInvalidObj();
124
- return false;
125
- }
126
- objToArray(obj, (child, id) => {
127
- if (!validateChild(child, id)) {
128
- objDel(obj, id);
129
- }
130
- });
131
- return emptyIsValid ? true : !objIsEmpty(obj);
132
- };
133
-
134
- const collSizeN = (collSizer) => (coll) =>
135
- arrayReduce(collValues(coll), (total, coll2) => total + collSizer(coll2), 0);
136
- const collSize = (coll) => {
137
- var _a;
138
- return (_a = coll == null ? void 0 : coll.size) != null ? _a : 0;
139
- };
140
- const collSize2 = collSizeN(collSize);
141
- const collSize3 = collSizeN(collSize2);
142
- const collSize4 = collSizeN(collSize3);
143
- const collHas = (coll, keyOrValue) => {
144
- var _a;
145
- return (_a = coll == null ? void 0 : coll.has(keyOrValue)) != null
146
- ? _a
147
- : false;
148
- };
149
- const collIsEmpty = (coll) => isUndefined(coll) || collSize(coll) == 0;
150
- const collValues = (coll) => {
151
- var _a;
152
- return [...((_a = coll == null ? void 0 : coll.values()) != null ? _a : [])];
153
- };
154
- const collClear = (coll) => coll.clear();
155
- const collForEach = (coll, cb) => (coll == null ? void 0 : coll.forEach(cb));
156
- const collDel = (coll, keyOrValue) =>
157
- coll == null ? void 0 : coll.delete(keyOrValue);
158
-
159
- const mapNew = (entries) => new Map(entries);
160
- const mapKeys = (map) => {
161
- var _a;
162
- return [...((_a = map == null ? void 0 : map.keys()) != null ? _a : [])];
163
- };
164
- const mapGet = (map, key) => (map == null ? void 0 : map.get(key));
165
- const mapForEach = (map, cb) =>
166
- collForEach(map, (value, key) => cb(key, value));
167
- const mapMap = (coll, cb) => {
168
- var _a;
169
- return arrayMap(
170
- [...((_a = coll == null ? void 0 : coll.entries()) != null ? _a : [])],
171
- ([key, value]) => cb(value, key),
172
- );
173
- };
174
- const mapSet = (map, key, value) =>
175
- isUndefined(value)
176
- ? (collDel(map, key), map)
177
- : map == null
178
- ? void 0
179
- : map.set(key, value);
180
- const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
181
- if (!collHas(map, key)) {
182
- mapSet(map, key, getDefaultValue());
183
- } else {
184
- hadExistingValue == null ? void 0 : hadExistingValue(mapGet(map, key));
185
- }
186
- return mapGet(map, key);
187
- };
188
- const mapMatch = (map, obj, set, del = mapSet) => {
189
- objToArray(obj, (value, id) => set(map, id, value));
190
- mapForEach(map, (id) => (objHas(obj, id) ? 0 : del(map, id)));
191
- return map;
192
- };
193
- const mapToObj = (map, valueMapper, excludeMapValue, excludeObjValue) => {
194
- const obj = {};
195
- collForEach(map, (mapValue, id) => {
196
- if (!(excludeMapValue == null ? void 0 : excludeMapValue(mapValue, id))) {
197
- const objValue = valueMapper ? valueMapper(mapValue, id) : mapValue;
198
- if (!(excludeObjValue == null ? void 0 : excludeObjValue(objValue))) {
199
- obj[id] = objValue;
200
- }
201
- }
202
- });
203
- return obj;
204
- };
205
- const mapToObj2 = (map, valueMapper, excludeMapValue) =>
206
- mapToObj(
207
- map,
208
- (childMap) => mapToObj(childMap, valueMapper, excludeMapValue),
209
- collIsEmpty,
210
- objIsEmpty,
211
- );
212
- const mapToObj3 = (map, valueMapper, excludeMapValue) =>
213
- mapToObj(
214
- map,
215
- (childMap) => mapToObj2(childMap, valueMapper, excludeMapValue),
216
- collIsEmpty,
217
- objIsEmpty,
218
- );
219
- const mapClone = (map, mapValue) => {
220
- const map2 = mapNew();
221
- collForEach(map, (value, key) => {
222
- var _a;
223
- return map2.set(
224
- key,
225
- (_a = mapValue == null ? void 0 : mapValue(value)) != null ? _a : value,
226
- );
227
- });
228
- return map2;
229
- };
230
- const mapClone2 = (map) => mapClone(map, mapClone);
231
- const mapClone3 = (map) => mapClone(map, mapClone2);
232
- const visitTree = (node, path, ensureLeaf, pruneLeaf, p = 0) =>
233
- ifNotUndefined(
234
- (ensureLeaf ? mapEnsure : mapGet)(
235
- node,
236
- path[p],
237
- p > size(path) - 2 ? ensureLeaf : mapNew,
238
- ),
239
- (nodeOrLeaf) => {
240
- if (p > size(path) - 2) {
241
- if (pruneLeaf == null ? void 0 : pruneLeaf(nodeOrLeaf)) {
242
- mapSet(node, path[p]);
243
- }
244
- return nodeOrLeaf;
245
- }
246
- const leaf = visitTree(nodeOrLeaf, path, ensureLeaf, pruneLeaf, p + 1);
247
- if (collIsEmpty(nodeOrLeaf)) {
248
- mapSet(node, path[p]);
249
- }
250
- return leaf;
251
- },
252
- );
253
-
254
- const getCellOrValueType = (cellOrValue) => {
255
- const type = getTypeOf(cellOrValue);
256
- return isTypeStringOrBoolean(type) ||
257
- (type == NUMBER && isFiniteNumber(cellOrValue))
258
- ? type
259
- : void 0;
260
- };
261
- const isCellOrValueOrNullOrUndefined = (cellOrValue) =>
262
- isUndefined(cellOrValue) || !isUndefined(getCellOrValueType(cellOrValue));
263
- const setOrDelCell = (store, tableId, rowId, cellId, cell) =>
264
- isUndefined(cell)
265
- ? store.delCell(tableId, rowId, cellId, true)
266
- : store.setCell(tableId, rowId, cellId, cell);
267
- const setOrDelValue = (store, valueId, value) =>
268
- isUndefined(value) ? store.delValue(valueId) : store.setValue(valueId, value);
269
-
270
- const setNew = (entryOrEntries) =>
271
- new Set(
272
- isArray(entryOrEntries) || isUndefined(entryOrEntries)
273
- ? entryOrEntries
274
- : [entryOrEntries],
275
- );
276
- const setAdd = (set, value) => (set == null ? void 0 : set.add(value));
277
-
278
- const getDefinableFunctions = (
279
- store,
280
- getDefaultThing,
281
- validateRowValue,
282
- addListener,
283
- callListeners,
284
- ) => {
285
- const hasRow = store.hasRow;
286
- const tableIds = mapNew();
287
- const things = mapNew();
288
- const thingIdListeners = mapNew();
289
- const allRowValues = mapNew();
290
- const allSortKeys = mapNew();
291
- const storeListenerIds = mapNew();
292
- const getStore = () => store;
293
- const getThingIds = () => mapKeys(tableIds);
294
- const forEachThing = (cb) => mapForEach(things, cb);
295
- const hasThing = (id) => collHas(things, id);
296
- const getTableId = (id) => mapGet(tableIds, id);
297
- const getThing = (id) => mapGet(things, id);
298
- const setThing = (id, thing) => mapSet(things, id, thing);
299
- const addStoreListeners = (id, andCall, ...listenerIds) => {
300
- const set = mapEnsure(storeListenerIds, id, setNew);
301
- arrayForEach(
302
- listenerIds,
303
- (listenerId) =>
304
- setAdd(set, listenerId) && andCall && store.callListener(listenerId),
305
- );
306
- return listenerIds;
307
- };
308
- const delStoreListeners = (id, ...listenerIds) =>
309
- ifNotUndefined(mapGet(storeListenerIds, id), (allListenerIds) => {
310
- arrayForEach(
311
- arrayIsEmpty(listenerIds) ? collValues(allListenerIds) : listenerIds,
312
- (listenerId) => {
313
- store.delListener(listenerId);
314
- collDel(allListenerIds, listenerId);
315
- },
316
- );
317
- if (collIsEmpty(allListenerIds)) {
318
- mapSet(storeListenerIds, id);
319
- }
320
- });
321
- const setDefinition = (id, tableId) => {
322
- mapSet(tableIds, id, tableId);
323
- if (!collHas(things, id)) {
324
- mapSet(things, id, getDefaultThing());
325
- mapSet(allRowValues, id, mapNew());
326
- mapSet(allSortKeys, id, mapNew());
327
- callListeners(thingIdListeners);
328
- }
329
- };
330
- const setDefinitionAndListen = (
331
- id,
332
- tableId,
333
- onChanged,
334
- getRowValue,
335
- getSortKey,
336
- ) => {
337
- setDefinition(id, tableId);
338
- const changedRowValues = mapNew();
339
- const changedSortKeys = mapNew();
340
- const rowValues = mapGet(allRowValues, id);
341
- const sortKeys = mapGet(allSortKeys, id);
342
- const processRow = (rowId) => {
343
- const getCell = (cellId) => store.getCell(tableId, rowId, cellId);
344
- const oldRowValue = mapGet(rowValues, rowId);
345
- const newRowValue = hasRow(tableId, rowId)
346
- ? validateRowValue(getRowValue(getCell, rowId))
347
- : void 0;
348
- if (
349
- !(
350
- oldRowValue === newRowValue ||
351
- (isArray(oldRowValue) &&
352
- isArray(newRowValue) &&
353
- arrayIsEqual(oldRowValue, newRowValue))
354
- )
355
- ) {
356
- mapSet(changedRowValues, rowId, [oldRowValue, newRowValue]);
357
- }
358
- if (!isUndefined(getSortKey)) {
359
- const oldSortKey = mapGet(sortKeys, rowId);
360
- const newSortKey = hasRow(tableId, rowId)
361
- ? getSortKey(getCell, rowId)
362
- : void 0;
363
- if (oldSortKey != newSortKey) {
364
- mapSet(changedSortKeys, rowId, newSortKey);
365
- }
366
- }
367
- };
368
- const processTable = (force) => {
369
- onChanged(
370
- () => {
371
- collForEach(changedRowValues, ([, newRowValue], rowId) =>
372
- mapSet(rowValues, rowId, newRowValue),
373
- );
374
- collForEach(changedSortKeys, (newSortKey, rowId) =>
375
- mapSet(sortKeys, rowId, newSortKey),
376
- );
377
- },
378
- changedRowValues,
379
- changedSortKeys,
380
- rowValues,
381
- sortKeys,
382
- force,
383
- );
384
- collClear(changedRowValues);
385
- collClear(changedSortKeys);
386
- };
387
- mapForEach(rowValues, processRow);
388
- if (store.hasTable(tableId)) {
389
- arrayForEach(store.getRowIds(tableId), (rowId) => {
390
- if (!collHas(rowValues, rowId)) {
391
- processRow(rowId);
392
- }
393
- });
394
- }
395
- processTable(true);
396
- delStoreListeners(id);
397
- addStoreListeners(
398
- id,
399
- 0,
400
- store.addRowListener(tableId, null, (_store, _tableId, rowId) =>
401
- processRow(rowId),
402
- ),
403
- store.addTableListener(tableId, () => processTable()),
404
- );
405
- };
406
- const delDefinition = (id) => {
407
- mapSet(tableIds, id);
408
- mapSet(things, id);
409
- mapSet(allRowValues, id);
410
- mapSet(allSortKeys, id);
411
- delStoreListeners(id);
412
- callListeners(thingIdListeners);
413
- };
414
- const addThingIdsListener = (listener) =>
415
- addListener(listener, thingIdListeners);
416
- const destroy = () => mapForEach(storeListenerIds, delDefinition);
417
- return [
418
- getStore,
419
- getThingIds,
420
- forEachThing,
421
- hasThing,
422
- getTableId,
423
- getThing,
424
- setThing,
425
- setDefinition,
426
- setDefinitionAndListen,
427
- delDefinition,
428
- addThingIdsListener,
429
- destroy,
430
- addStoreListeners,
431
- delStoreListeners,
432
- ];
433
- };
434
- const getRowCellFunction = (getRowCell, defaultCellValue) =>
435
- isString(getRowCell)
436
- ? (getCell) => getCell(getRowCell)
437
- : getRowCell != null
438
- ? getRowCell
439
- : () => (defaultCellValue != null ? defaultCellValue : EMPTY_STRING);
440
- const getCreateFunction = (getFunction, initFunction) => {
441
- const thingsByStore = /* @__PURE__ */ new WeakMap();
442
- return (store) => {
443
- if (!thingsByStore.has(store)) {
444
- thingsByStore.set(store, getFunction(store));
445
- }
446
- const thing = thingsByStore.get(store);
447
- initFunction == null ? void 0 : initFunction(thing);
448
- return thing;
449
- };
450
- };
451
-
452
- const INTEGER = /^\d+$/;
453
- const getPoolFunctions = () => {
454
- const pool = [];
455
- let nextId = 0;
456
- return [
457
- (reuse) => {
458
- var _a;
459
- return (_a = reuse ? arrayShift(pool) : null) != null
460
- ? _a
461
- : EMPTY_STRING + nextId++;
462
- },
463
- (id) => {
464
- if (test(INTEGER, id) && size(pool) < 1e3) {
465
- arrayPush(pool, id);
466
- }
467
- },
468
- ];
469
- };
470
-
471
- const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
472
- const leaves = [];
473
- const deep = (node, p) =>
474
- p == size(path)
475
- ? arrayPush(leaves, node)
476
- : path[p] === null
477
- ? collForEach(node, (node2) => deep(node2, p + 1))
478
- : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
479
- deep(deepIdSet, 0);
480
- return leaves;
481
- };
482
- const getListenerFunctions = (getThing) => {
483
- let thing;
484
- const [getId, releaseId] = getPoolFunctions();
485
- const allListeners = mapNew();
486
- const addListener = (
487
- listener,
488
- idSetNode,
489
- path,
490
- pathGetters = [],
491
- extraArgsGetter = () => [],
492
- ) => {
493
- thing != null ? thing : (thing = getThing());
494
- const id = getId(1);
495
- mapSet(allListeners, id, [
496
- listener,
497
- idSetNode,
498
- path,
499
- pathGetters,
500
- extraArgsGetter,
501
- ]);
502
- setAdd(
503
- visitTree(idSetNode, path != null ? path : [EMPTY_STRING], setNew),
504
- id,
505
- );
506
- return id;
507
- };
508
- const callListeners = (idSetNode, ids, ...extraArgs) =>
509
- arrayForEach(getWildcardedLeaves(idSetNode, ids), (set) =>
510
- collForEach(set, (id) =>
511
- mapGet(allListeners, id)[0](
512
- thing,
513
- ...(ids != null ? ids : []),
514
- ...extraArgs,
515
- ),
516
- ),
517
- );
518
- const delListener = (id) =>
519
- ifNotUndefined(mapGet(allListeners, id), ([, idSetNode, idOrNulls]) => {
520
- visitTree(
521
- idSetNode,
522
- idOrNulls != null ? idOrNulls : [EMPTY_STRING],
523
- void 0,
524
- (idSet) => {
525
- collDel(idSet, id);
526
- return collIsEmpty(idSet) ? 1 : 0;
527
- },
528
- );
529
- mapSet(allListeners, id);
530
- releaseId(id);
531
- return idOrNulls;
532
- });
533
- const callListener = (id) =>
534
- ifNotUndefined(
535
- mapGet(allListeners, id),
536
- ([listener, , path = [], pathGetters, extraArgsGetter]) => {
537
- const callWithIds = (...ids) => {
538
- var _a, _b;
539
- const index = size(ids);
540
- if (index == size(path)) {
541
- listener(thing, ...ids, ...extraArgsGetter(ids));
542
- } else if (isUndefined(path[index])) {
543
- arrayForEach(
544
- (_b =
545
- (_a = pathGetters[index]) == null
546
- ? void 0
547
- : _a.call(pathGetters, ...ids)) != null
548
- ? _b
549
- : [],
550
- (id2) => callWithIds(...ids, id2),
551
- );
552
- } else {
553
- callWithIds(...ids, path[index]);
554
- }
555
- };
556
- callWithIds();
557
- },
558
- );
559
- return [addListener, callListeners, delListener, callListener];
560
- };
561
-
562
- const createCheckpoints = getCreateFunction(
563
- (store) => {
564
- let backwardIdsSize = 100;
565
- let currentId;
566
- let cellsDelta = mapNew();
567
- let valuesDelta = mapNew();
568
- let listening = 1;
569
- let nextCheckpointId;
570
- let checkpointsChanged;
571
- const checkpointIdsListeners = mapNew();
572
- const checkpointListeners = mapNew();
573
- const [addListener, callListeners, delListenerImpl] = getListenerFunctions(
574
- () => checkpoints,
575
- );
576
- const deltas = mapNew();
577
- const labels = mapNew();
578
- const backwardIds = [];
579
- const forwardIds = [];
580
- const updateStore = (oldOrNew, checkpointId) => {
581
- listening = 0;
582
- store.transaction(() => {
583
- const [cellsDelta2, valuesDelta2] = mapGet(deltas, checkpointId);
584
- collForEach(cellsDelta2, (table, tableId) =>
585
- collForEach(table, (row, rowId) =>
586
- collForEach(row, (oldNew, cellId) =>
587
- setOrDelCell(store, tableId, rowId, cellId, oldNew[oldOrNew]),
588
- ),
589
- ),
590
- );
591
- collForEach(valuesDelta2, (oldNew, valueId) =>
592
- setOrDelValue(store, valueId, oldNew[oldOrNew]),
593
- );
594
- });
595
- listening = 1;
596
- };
597
- const clearCheckpointId = (checkpointId) => {
598
- mapSet(deltas, checkpointId);
599
- mapSet(labels, checkpointId);
600
- callListeners(checkpointListeners, [checkpointId]);
601
- };
602
- const clearCheckpointIds = (checkpointIds, to) =>
603
- arrayForEach(
604
- arrayClear(checkpointIds, to != null ? to : size(checkpointIds)),
605
- clearCheckpointId,
606
- );
607
- const trimBackwardsIds = () =>
608
- clearCheckpointIds(backwardIds, size(backwardIds) - backwardIdsSize);
609
- const storeChanged = () =>
610
- ifNotUndefined(currentId, () => {
611
- arrayPush(backwardIds, currentId);
612
- trimBackwardsIds();
613
- clearCheckpointIds(forwardIds);
614
- currentId = void 0;
615
- checkpointsChanged = 1;
616
- });
617
- const storeUnchanged = () => {
618
- currentId = arrayPop(backwardIds);
619
- checkpointsChanged = 1;
620
- };
621
- let cellListenerId;
622
- let valueListenerId;
623
- const addCheckpointImpl = (label = EMPTY_STRING) => {
624
- if (isUndefined(currentId)) {
625
- currentId = EMPTY_STRING + nextCheckpointId++;
626
- mapSet(deltas, currentId, [cellsDelta, valuesDelta]);
627
- setCheckpoint(currentId, label);
628
- cellsDelta = mapNew();
629
- valuesDelta = mapNew();
630
- checkpointsChanged = 1;
631
- }
632
- return currentId;
633
- };
634
- const goBackwardImpl = () => {
635
- if (!arrayIsEmpty(backwardIds)) {
636
- arrayUnshift(forwardIds, addCheckpointImpl());
637
- updateStore(0, currentId);
638
- currentId = arrayPop(backwardIds);
639
- checkpointsChanged = 1;
640
- }
641
- };
642
- const goForwardImpl = () => {
643
- if (!arrayIsEmpty(forwardIds)) {
644
- arrayPush(backwardIds, currentId);
645
- currentId = arrayShift(forwardIds);
646
- updateStore(1, currentId);
647
- checkpointsChanged = 1;
648
- }
649
- };
650
- const callListenersIfChanged = () => {
651
- if (checkpointsChanged) {
652
- callListeners(checkpointIdsListeners);
653
- checkpointsChanged = 0;
654
- }
655
- };
656
- const setSize = (size2) => {
657
- backwardIdsSize = size2;
658
- trimBackwardsIds();
659
- return checkpoints;
660
- };
661
- const addCheckpoint = (label) => {
662
- const id = addCheckpointImpl(label);
663
- callListenersIfChanged();
664
- return id;
665
- };
666
- const setCheckpoint = (checkpointId, label) => {
667
- if (
668
- hasCheckpoint(checkpointId) &&
669
- mapGet(labels, checkpointId) !== label
670
- ) {
671
- mapSet(labels, checkpointId, label);
672
- callListeners(checkpointListeners, [checkpointId]);
673
- }
674
- return checkpoints;
675
- };
676
- const getStore = () => store;
677
- const getCheckpointIds = () => [
678
- [...backwardIds],
679
- currentId,
680
- [...forwardIds],
681
- ];
682
- const forEachCheckpoint = (checkpointCallback) =>
683
- mapForEach(labels, checkpointCallback);
684
- const hasCheckpoint = (checkpointId) => collHas(deltas, checkpointId);
685
- const getCheckpoint = (checkpointId) => mapGet(labels, checkpointId);
686
- const goBackward = () => {
687
- goBackwardImpl();
688
- callListenersIfChanged();
689
- return checkpoints;
690
- };
691
- const goForward = () => {
692
- goForwardImpl();
693
- callListenersIfChanged();
694
- return checkpoints;
695
- };
696
- const goTo = (checkpointId) => {
697
- const action = arrayHas(backwardIds, checkpointId)
698
- ? goBackwardImpl
699
- : arrayHas(forwardIds, checkpointId)
700
- ? goForwardImpl
701
- : null;
702
- while (!isUndefined(action) && checkpointId != currentId) {
703
- action();
704
- }
705
- callListenersIfChanged();
706
- return checkpoints;
707
- };
708
- const addCheckpointIdsListener = (listener) =>
709
- addListener(listener, checkpointIdsListeners);
710
- const addCheckpointListener = (checkpointId, listener) =>
711
- addListener(listener, checkpointListeners, [checkpointId]);
712
- const delListener = (listenerId) => {
713
- delListenerImpl(listenerId);
714
- return checkpoints;
715
- };
716
- const clear = () => {
717
- clearCheckpointIds(backwardIds);
718
- clearCheckpointIds(forwardIds);
719
- if (!isUndefined(currentId)) {
720
- clearCheckpointId(currentId);
721
- }
722
- currentId = void 0;
723
- nextCheckpointId = 0;
724
- addCheckpoint();
725
- return checkpoints;
726
- };
727
- const clearForward = () => {
728
- if (!arrayIsEmpty(forwardIds)) {
729
- clearCheckpointIds(forwardIds);
730
- callListeners(checkpointIdsListeners);
731
- }
732
- return checkpoints;
733
- };
734
- const destroy = () => {
735
- store.delListener(cellListenerId);
736
- store.delListener(valueListenerId);
737
- };
738
- const getListenerStats = () => ({
739
- checkpointIds: collSize2(checkpointIdsListeners),
740
- checkpoint: collSize2(checkpointListeners),
741
- });
742
- const _registerListeners = () => {
743
- cellListenerId = store.addCellListener(
744
- null,
745
- null,
746
- null,
747
- (_store, tableId, rowId, cellId, newCell, oldCell) => {
748
- if (listening) {
749
- storeChanged();
750
- const table = mapEnsure(cellsDelta, tableId, mapNew);
751
- const row = mapEnsure(table, rowId, mapNew);
752
- const oldNew = mapEnsure(row, cellId, () => [oldCell, void 0]);
753
- oldNew[1] = newCell;
754
- if (
755
- oldNew[0] === newCell &&
756
- collIsEmpty(mapSet(row, cellId)) &&
757
- collIsEmpty(mapSet(table, rowId)) &&
758
- collIsEmpty(mapSet(cellsDelta, tableId))
759
- ) {
760
- storeUnchanged();
761
- }
762
- callListenersIfChanged();
763
- }
764
- },
765
- );
766
- valueListenerId = store.addValueListener(
767
- null,
768
- (_store, valueId, newValue, oldValue) => {
769
- if (listening) {
770
- storeChanged();
771
- const oldNew = mapEnsure(valuesDelta, valueId, () => [
772
- oldValue,
773
- void 0,
774
- ]);
775
- oldNew[1] = newValue;
776
- if (
777
- oldNew[0] === newValue &&
778
- collIsEmpty(mapSet(valuesDelta, valueId))
779
- ) {
780
- storeUnchanged();
781
- }
782
- callListenersIfChanged();
783
- }
784
- },
785
- );
786
- };
787
- const checkpoints = {
788
- setSize,
789
- addCheckpoint,
790
- setCheckpoint,
791
- getStore,
792
- getCheckpointIds,
793
- forEachCheckpoint,
794
- hasCheckpoint,
795
- getCheckpoint,
796
- goBackward,
797
- goForward,
798
- goTo,
799
- addCheckpointIdsListener,
800
- addCheckpointListener,
801
- delListener,
802
- clear,
803
- clearForward,
804
- destroy,
805
- getListenerStats,
806
- _registerListeners,
807
- };
808
- return objFreeze(checkpoints.clear());
809
- },
810
- (checkpoints) => checkpoints._registerListeners(),
811
- );
812
-
813
- const MASK6 = 63;
814
- const ENCODE = /* @__PURE__ */ strSplit(
815
- '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz',
816
- );
817
- const DECODE = /* @__PURE__ */ mapNew(
818
- /* @__PURE__ */ arrayMap(ENCODE, (char, index) => [char, index]),
819
- );
820
- const encode = (num) => ENCODE[num & MASK6];
821
- const decode = (str, pos) => {
822
- var _a;
823
- return (_a = mapGet(DECODE, str[pos])) != null ? _a : 0;
824
- };
825
-
826
- const getRandomValues = GLOBAL.crypto
827
- ? (array) => GLOBAL.crypto.getRandomValues(array)
828
- : /* istanbul ignore next */
829
- (array) => arrayMap(array, () => mathFloor(math.random() * 256));
830
- const defaultSorter = (sortKey1, sortKey2) =>
831
- (sortKey1 != null ? sortKey1 : 0) < (sortKey2 != null ? sortKey2 : 0)
832
- ? -1
833
- : 1;
834
- const getUniqueId = (length = 16) =>
835
- arrayReduce(
836
- getRandomValues(new Uint8Array(length)),
837
- (uniqueId, number) => uniqueId + encode(number),
838
- '',
839
- );
840
-
841
- const createIndexes = getCreateFunction((store) => {
842
- const sliceIdsListeners = mapNew();
843
- const sliceRowIdsListeners = mapNew();
844
- const [addListener, callListeners, delListenerImpl] = getListenerFunctions(
845
- () => indexes,
846
- );
847
- const [
848
- getStore,
849
- getIndexIds,
850
- forEachIndexImpl,
851
- hasIndex,
852
- getTableId,
853
- getIndex,
854
- setIndex,
855
- ,
856
- setDefinitionAndListen,
857
- delDefinition,
858
- addIndexIdsListener,
859
- destroy,
860
- ] = getDefinableFunctions(
861
- store,
862
- mapNew,
863
- (value) =>
864
- isUndefined(value)
865
- ? EMPTY_STRING
866
- : isArray(value)
867
- ? arrayMap(value, id)
868
- : id(value),
869
- addListener,
870
- callListeners,
871
- );
872
- const hasSlice = (indexId, sliceId) => collHas(getIndex(indexId), sliceId);
873
- const setIndexDefinition = (
874
- indexId,
875
- tableId,
876
- getSliceIdOrIds,
877
- getSortKey,
878
- sliceIdSorter,
879
- rowIdSorter = defaultSorter,
880
- ) => {
881
- const sliceIdArraySorter = isUndefined(sliceIdSorter)
882
- ? void 0
883
- : ([id1], [id2]) => sliceIdSorter(id1, id2);
884
- setDefinitionAndListen(
885
- indexId,
886
- tableId,
887
- (change, changedSliceIds, changedSortKeys, sliceIds, sortKeys, force) => {
888
- let sliceIdsChanged = 0;
889
- const changedSlices = setNew();
890
- const unsortedSlices = setNew();
891
- const index = getIndex(indexId);
892
- collForEach(
893
- changedSliceIds,
894
- ([oldSliceIdOrIds, newSliceIdOrIds], rowId) => {
895
- const oldSliceIds = setNew(oldSliceIdOrIds);
896
- const newSliceIds = setNew(newSliceIdOrIds);
897
- collForEach(oldSliceIds, (oldSliceId) =>
898
- collDel(newSliceIds, oldSliceId)
899
- ? collDel(oldSliceIds, oldSliceId)
900
- : 0,
901
- );
902
- collForEach(oldSliceIds, (oldSliceId) => {
903
- setAdd(changedSlices, oldSliceId);
904
- ifNotUndefined(mapGet(index, oldSliceId), (oldSlice) => {
905
- collDel(oldSlice, rowId);
906
- if (collIsEmpty(oldSlice)) {
907
- mapSet(index, oldSliceId);
908
- sliceIdsChanged = 1;
909
- }
910
- });
911
- });
912
- collForEach(newSliceIds, (newSliceId) => {
913
- setAdd(changedSlices, newSliceId);
914
- if (!collHas(index, newSliceId)) {
915
- mapSet(index, newSliceId, setNew());
916
- sliceIdsChanged = 1;
917
- }
918
- setAdd(mapGet(index, newSliceId), rowId);
919
- if (!isUndefined(getSortKey)) {
920
- setAdd(unsortedSlices, newSliceId);
921
- }
922
- });
923
- },
924
- );
925
- change();
926
- if (!collIsEmpty(sortKeys)) {
927
- if (force) {
928
- mapForEach(index, (sliceId) => setAdd(unsortedSlices, sliceId));
929
- } else {
930
- mapForEach(changedSortKeys, (rowId) =>
931
- ifNotUndefined(mapGet(sliceIds, rowId), (sliceId) =>
932
- setAdd(unsortedSlices, sliceId),
933
- ),
934
- );
935
- }
936
- collForEach(unsortedSlices, (sliceId) => {
937
- const rowIdArraySorter = (rowId1, rowId2) =>
938
- rowIdSorter(
939
- mapGet(sortKeys, rowId1),
940
- mapGet(sortKeys, rowId2),
941
- sliceId,
942
- );
943
- const sliceArray = [...mapGet(index, sliceId)];
944
- if (!arrayIsSorted(sliceArray, rowIdArraySorter)) {
945
- mapSet(
946
- index,
947
- sliceId,
948
- setNew(arraySort(sliceArray, rowIdArraySorter)),
949
- );
950
- setAdd(changedSlices, sliceId);
951
- }
952
- });
953
- }
954
- if (sliceIdsChanged || force) {
955
- if (!isUndefined(sliceIdArraySorter)) {
956
- const indexArray = [...index];
957
- if (!arrayIsSorted(indexArray, sliceIdArraySorter)) {
958
- setIndex(
959
- indexId,
960
- mapNew(arraySort(indexArray, sliceIdArraySorter)),
961
- );
962
- sliceIdsChanged = 1;
963
- }
964
- }
965
- }
966
- if (sliceIdsChanged) {
967
- callListeners(sliceIdsListeners, [indexId]);
968
- }
969
- collForEach(changedSlices, (sliceId) =>
970
- callListeners(sliceRowIdsListeners, [indexId, sliceId]),
971
- );
972
- },
973
- getRowCellFunction(getSliceIdOrIds),
974
- ifNotUndefined(getSortKey, getRowCellFunction),
975
- );
976
- return indexes;
977
- };
978
- const forEachIndex = (indexCallback) =>
979
- forEachIndexImpl((indexId, slices) =>
980
- indexCallback(indexId, (sliceCallback) =>
981
- forEachSliceImpl(indexId, sliceCallback, slices),
982
- ),
983
- );
984
- const forEachSlice = (indexId, sliceCallback) =>
985
- forEachSliceImpl(indexId, sliceCallback, getIndex(indexId));
986
- const forEachSliceImpl = (indexId, sliceCallback, slices) => {
987
- const tableId = getTableId(indexId);
988
- collForEach(slices, (rowIds, sliceId) =>
989
- sliceCallback(sliceId, (rowCallback) =>
990
- collForEach(rowIds, (rowId) =>
991
- rowCallback(rowId, (cellCallback) =>
992
- store.forEachCell(tableId, rowId, cellCallback),
993
- ),
994
- ),
995
- ),
996
- );
997
- };
998
- const delIndexDefinition = (indexId) => {
999
- delDefinition(indexId);
1000
- return indexes;
1001
- };
1002
- const getSliceIds = (indexId) => mapKeys(getIndex(indexId));
1003
- const getSliceRowIds = (indexId, sliceId) =>
1004
- collValues(mapGet(getIndex(indexId), sliceId));
1005
- const addSliceIdsListener = (indexId, listener) =>
1006
- addListener(listener, sliceIdsListeners, [indexId]);
1007
- const addSliceRowIdsListener = (indexId, sliceId, listener) =>
1008
- addListener(listener, sliceRowIdsListeners, [indexId, sliceId]);
1009
- const delListener = (listenerId) => {
1010
- delListenerImpl(listenerId);
1011
- return indexes;
1012
- };
1013
- const getListenerStats = () => ({
1014
- sliceIds: collSize2(sliceIdsListeners),
1015
- sliceRowIds: collSize3(sliceRowIdsListeners),
1016
- });
1017
- const indexes = {
1018
- setIndexDefinition,
1019
- delIndexDefinition,
1020
- getStore,
1021
- getIndexIds,
1022
- forEachIndex,
1023
- forEachSlice,
1024
- hasIndex,
1025
- hasSlice,
1026
- getTableId,
1027
- getSliceIds,
1028
- getSliceRowIds,
1029
- addIndexIdsListener,
1030
- addSliceIdsListener,
1031
- addSliceRowIdsListener,
1032
- delListener,
1033
- destroy,
1034
- getListenerStats,
1035
- };
1036
- return objFreeze(indexes);
1037
- });
1038
-
1039
- const numericAggregators = /* @__PURE__ */ mapNew([
1040
- [
1041
- AVG,
1042
- [
1043
- (numbers, length) => arraySum(numbers) / length,
1044
- (metric, add, length) => metric + (add - metric) / (length + 1),
1045
- (metric, remove, length) => metric + (metric - remove) / (length - 1),
1046
- (metric, add, remove, length) => metric + (add - remove) / length,
1047
- ],
1048
- ],
1049
- [
1050
- MAX,
1051
- [
1052
- (numbers) => mathMax(...numbers),
1053
- (metric, add) => mathMax(add, metric),
1054
- (metric, remove) => (remove == metric ? void 0 : metric),
1055
- (metric, add, remove) =>
1056
- remove == metric ? void 0 : mathMax(add, metric),
1057
- ],
1058
- ],
1059
- [
1060
- MIN,
1061
- [
1062
- (numbers) => mathMin(...numbers),
1063
- (metric, add) => mathMin(add, metric),
1064
- (metric, remove) => (remove == metric ? void 0 : metric),
1065
- (metric, add, remove) =>
1066
- remove == metric ? void 0 : mathMin(add, metric),
1067
- ],
1068
- ],
1069
- [
1070
- SUM,
1071
- [
1072
- (numbers) => arraySum(numbers),
1073
- (metric, add) => metric + add,
1074
- (metric, remove) => metric - remove,
1075
- (metric, add, remove) => metric - remove + add,
1076
- ],
1077
- ],
1078
- ]);
1079
- const getAggregateValue = (
1080
- aggregateValue,
1081
- oldLength,
1082
- newValues,
1083
- changedValues,
1084
- aggregators,
1085
- force = false,
1086
- ) => {
1087
- if (collIsEmpty(newValues)) {
1088
- return void 0;
1089
- }
1090
- const [aggregate, aggregateAdd, aggregateRemove, aggregateReplace] =
1091
- aggregators;
1092
- force || (force = isUndefined(aggregateValue));
1093
- collForEach(changedValues, ([oldValue, newValue]) => {
1094
- if (!force) {
1095
- aggregateValue = isUndefined(oldValue)
1096
- ? aggregateAdd == null
1097
- ? void 0
1098
- : aggregateAdd(aggregateValue, newValue, oldLength++)
1099
- : isUndefined(newValue)
1100
- ? aggregateRemove == null
1101
- ? void 0
1102
- : aggregateRemove(aggregateValue, oldValue, oldLength--)
1103
- : aggregateReplace == null
1104
- ? void 0
1105
- : aggregateReplace(aggregateValue, newValue, oldValue, oldLength);
1106
- force || (force = isUndefined(aggregateValue));
1107
- }
1108
- });
1109
- return force
1110
- ? aggregate(collValues(newValues), collSize(newValues))
1111
- : aggregateValue;
1112
- };
1113
-
1114
- const createMetrics = getCreateFunction((store) => {
1115
- const metricListeners = mapNew();
1116
- const [addListener, callListeners, delListenerImpl] = getListenerFunctions(
1117
- () => metrics,
1118
- );
1119
- const [
1120
- getStore,
1121
- getMetricIds,
1122
- forEachMetric,
1123
- hasMetric,
1124
- getTableId,
1125
- getMetric,
1126
- setMetric,
1127
- ,
1128
- setDefinitionAndListen,
1129
- delDefinition,
1130
- addMetricIdsListener,
1131
- destroy,
1132
- ] = getDefinableFunctions(
1133
- store,
1134
- getUndefined,
1135
- (value) =>
1136
- isNaN(value) ||
1137
- isUndefined(value) ||
1138
- value === true ||
1139
- value === false ||
1140
- value === EMPTY_STRING
1141
- ? void 0
1142
- : value * 1,
1143
- addListener,
1144
- callListeners,
1145
- );
1146
- const setMetricDefinition = (
1147
- metricId,
1148
- tableId,
1149
- aggregate,
1150
- getNumber,
1151
- aggregateAdd,
1152
- aggregateRemove,
1153
- aggregateReplace,
1154
- ) => {
1155
- var _a;
1156
- const aggregators = isFunction(aggregate)
1157
- ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
1158
- : (_a = mapGet(numericAggregators, aggregate)) != null
1159
- ? _a
1160
- : mapGet(numericAggregators, SUM);
1161
- setDefinitionAndListen(
1162
- metricId,
1163
- tableId,
1164
- (change, changedNumbers, _changedSortKeys, numbers, _sortKeys, force) => {
1165
- const oldMetric = getMetric(metricId);
1166
- const oldLength = collSize(numbers);
1167
- force || (force = isUndefined(oldMetric));
1168
- change();
1169
- let newMetric = getAggregateValue(
1170
- oldMetric,
1171
- oldLength,
1172
- numbers,
1173
- changedNumbers,
1174
- aggregators,
1175
- force,
1176
- );
1177
- if (!isFiniteNumber(newMetric)) {
1178
- newMetric = void 0;
1179
- }
1180
- if (newMetric != oldMetric) {
1181
- setMetric(metricId, newMetric);
1182
- callListeners(metricListeners, [metricId], newMetric, oldMetric);
1183
- }
1184
- },
1185
- getRowCellFunction(getNumber, 1),
1186
- );
1187
- return metrics;
1188
- };
1189
- const delMetricDefinition = (metricId) => {
1190
- delDefinition(metricId);
1191
- return metrics;
1192
- };
1193
- const addMetricListener = (metricId, listener) =>
1194
- addListener(listener, metricListeners, [metricId]);
1195
- const delListener = (listenerId) => {
1196
- delListenerImpl(listenerId);
1197
- return metrics;
1198
- };
1199
- const getListenerStats = () => ({
1200
- metric: collSize2(metricListeners),
1201
- });
1202
- const metrics = {
1203
- setMetricDefinition,
1204
- delMetricDefinition,
1205
- getStore,
1206
- getMetricIds,
1207
- forEachMetric,
1208
- hasMetric,
1209
- getTableId,
1210
- getMetric,
1211
- addMetricIdsListener,
1212
- addMetricListener,
1213
- delListener,
1214
- destroy,
1215
- getListenerStats,
1216
- };
1217
- return objFreeze(metrics);
1218
- });
1219
-
1220
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
1221
- var __hasOwnProp = Object.prototype.hasOwnProperty;
1222
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
1223
- var __objRest = (source, exclude) => {
1224
- var target = {};
1225
- for (var prop in source)
1226
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
1227
- target[prop] = source[prop];
1228
- if (source != null && __getOwnPropSymbols)
1229
- for (var prop of __getOwnPropSymbols(source)) {
1230
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
1231
- target[prop] = source[prop];
1232
- }
1233
- return target;
1234
- };
1235
- const createQueries = getCreateFunction((store) => {
1236
- const createStore = store.createStore;
1237
- const preStore = createStore();
1238
- const resultStore = createStore();
1239
- const preStoreListenerIds = mapNew();
1240
- const {
1241
- addListener,
1242
- callListeners,
1243
- delListener: delListenerImpl,
1244
- } = resultStore;
1245
- const [
1246
- getStore,
1247
- getQueryIds,
1248
- forEachQuery,
1249
- hasQuery,
1250
- getTableId,
1251
- ,
1252
- ,
1253
- setDefinition,
1254
- ,
1255
- delDefinition,
1256
- addQueryIdsListenerImpl,
1257
- destroy,
1258
- addStoreListeners,
1259
- delStoreListeners,
1260
- ] = getDefinableFunctions(
1261
- store,
1262
- () => true,
1263
- getUndefined,
1264
- addListener,
1265
- callListeners,
1266
- );
1267
- const addPreStoreListener = (preStore2, queryId, ...listenerIds) =>
1268
- arrayForEach(listenerIds, (listenerId) =>
1269
- setAdd(
1270
- mapEnsure(
1271
- mapEnsure(preStoreListenerIds, queryId, mapNew),
1272
- preStore2,
1273
- setNew,
1274
- ),
1275
- listenerId,
1276
- ),
1277
- );
1278
- const resetPreStores = (queryId) => {
1279
- ifNotUndefined(
1280
- mapGet(preStoreListenerIds, queryId),
1281
- (queryPreStoreListenerIds) => {
1282
- mapForEach(queryPreStoreListenerIds, (preStore2, listenerIds) =>
1283
- collForEach(listenerIds, (listenerId) =>
1284
- preStore2.delListener(listenerId),
1285
- ),
1286
- );
1287
- collClear(queryPreStoreListenerIds);
1288
- },
1289
- );
1290
- arrayForEach([resultStore, preStore], (store2) => store2.delTable(queryId));
1291
- };
1292
- const synchronizeTransactions = (queryId, fromStore, toStore) =>
1293
- addPreStoreListener(
1294
- fromStore,
1295
- queryId,
1296
- fromStore.addStartTransactionListener(toStore.startTransaction),
1297
- fromStore.addDidFinishTransactionListener(() =>
1298
- toStore.finishTransaction(),
1299
- ),
1300
- );
1301
- const setQueryDefinition = (queryId, tableId, build) => {
1302
- setDefinition(queryId, tableId);
1303
- resetPreStores(queryId);
1304
- const selectEntries = [];
1305
- const joinEntries = [[null, [tableId, null, null, [], mapNew()]]];
1306
- const wheres = [];
1307
- const groupEntries = [];
1308
- const havings = [];
1309
- const select = (arg1, arg2) => {
1310
- const selectEntry = isFunction(arg1)
1311
- ? [size(selectEntries) + EMPTY_STRING, arg1]
1312
- : [
1313
- isUndefined(arg2) ? arg1 : arg2,
1314
- (getTableCell) => getTableCell(arg1, arg2),
1315
- ];
1316
- arrayPush(selectEntries, selectEntry);
1317
- return {as: (selectedCellId) => (selectEntry[0] = selectedCellId)};
1318
- };
1319
- const join = (joinedTableId, arg1, arg2) => {
1320
- const fromIntermediateJoinedTableId =
1321
- isUndefined(arg2) || isFunction(arg1) ? null : arg1;
1322
- const onArg = isUndefined(fromIntermediateJoinedTableId) ? arg1 : arg2;
1323
- const joinEntry = [
1324
- joinedTableId,
1325
- [
1326
- joinedTableId,
1327
- fromIntermediateJoinedTableId,
1328
- isFunction(onArg) ? onArg : (getCell) => getCell(onArg),
1329
- [],
1330
- mapNew(),
1331
- ],
1332
- ];
1333
- arrayPush(joinEntries, joinEntry);
1334
- return {as: (joinedTableId2) => (joinEntry[0] = joinedTableId2)};
1335
- };
1336
- const where = (arg1, arg2, arg3) =>
1337
- arrayPush(
1338
- wheres,
1339
- isFunction(arg1)
1340
- ? arg1
1341
- : isUndefined(arg3)
1342
- ? (getTableCell) => getTableCell(arg1) === arg2
1343
- : (getTableCell) => getTableCell(arg1, arg2) === arg3,
1344
- );
1345
- const group = (
1346
- selectedCellId,
1347
- aggregate,
1348
- aggregateAdd,
1349
- aggregateRemove,
1350
- aggregateReplace,
1351
- ) => {
1352
- var _a;
1353
- const groupEntry = [
1354
- selectedCellId,
1355
- [
1356
- selectedCellId,
1357
- isFunction(aggregate)
1358
- ? [aggregate, aggregateAdd, aggregateRemove, aggregateReplace]
1359
- : (_a = mapGet(numericAggregators, aggregate)) != null
1360
- ? _a
1361
- : [(_cells, length) => length],
1362
- ],
1363
- ];
1364
- arrayPush(groupEntries, groupEntry);
1365
- return {as: (groupedCellId) => (groupEntry[0] = groupedCellId)};
1366
- };
1367
- const having = (arg1, arg2) =>
1368
- arrayPush(
1369
- havings,
1370
- isFunction(arg1)
1371
- ? arg1
1372
- : (getSelectedOrGroupedCell) =>
1373
- getSelectedOrGroupedCell(arg1) === arg2,
1374
- );
1375
- build({select, join, where, group, having});
1376
- const selects = mapNew(selectEntries);
1377
- if (collIsEmpty(selects)) {
1378
- return queries;
1379
- }
1380
- const joins = mapNew(joinEntries);
1381
- mapForEach(joins, (asTableId, [, fromAsTableId]) =>
1382
- ifNotUndefined(mapGet(joins, fromAsTableId), ({3: toAsTableIds}) =>
1383
- isUndefined(asTableId) ? 0 : arrayPush(toAsTableIds, asTableId),
1384
- ),
1385
- );
1386
- const groups = mapNew(groupEntries);
1387
- let selectJoinWhereStore = preStore;
1388
- if (collIsEmpty(groups) && arrayIsEmpty(havings)) {
1389
- selectJoinWhereStore = resultStore;
1390
- } else {
1391
- synchronizeTransactions(queryId, selectJoinWhereStore, resultStore);
1392
- const groupedSelectedCellIds = mapNew();
1393
- mapForEach(groups, (groupedCellId, [selectedCellId, aggregators]) =>
1394
- setAdd(mapEnsure(groupedSelectedCellIds, selectedCellId, setNew), [
1395
- groupedCellId,
1396
- aggregators,
1397
- ]),
1398
- );
1399
- const groupBySelectedCellIds = setNew();
1400
- mapForEach(selects, (selectedCellId) =>
1401
- collHas(groupedSelectedCellIds, selectedCellId)
1402
- ? 0
1403
- : setAdd(groupBySelectedCellIds, selectedCellId),
1404
- );
1405
- const tree = mapNew();
1406
- const writeGroupRow = (
1407
- leaf,
1408
- changedGroupedSelectedCells,
1409
- selectedRowId,
1410
- forceRemove,
1411
- ) =>
1412
- ifNotUndefined(
1413
- leaf,
1414
- ([selectedCells, selectedRowIds, groupRowId, groupRow]) => {
1415
- mapForEach(
1416
- changedGroupedSelectedCells,
1417
- (selectedCellId, [newCell]) => {
1418
- const selectedCell = mapEnsure(
1419
- selectedCells,
1420
- selectedCellId,
1421
- mapNew,
1422
- );
1423
- const oldLeafCell = mapGet(selectedCell, selectedRowId);
1424
- const newLeafCell = forceRemove ? void 0 : newCell;
1425
- if (oldLeafCell !== newLeafCell) {
1426
- const oldNewSet = setNew([[oldLeafCell, newLeafCell]]);
1427
- const oldLength = collSize(selectedCell);
1428
- mapSet(selectedCell, selectedRowId, newLeafCell);
1429
- collForEach(
1430
- mapGet(groupedSelectedCellIds, selectedCellId),
1431
- ([groupedCellId, aggregators]) => {
1432
- const aggregateValue = getAggregateValue(
1433
- groupRow[groupedCellId],
1434
- oldLength,
1435
- selectedCell,
1436
- oldNewSet,
1437
- aggregators,
1438
- );
1439
- groupRow[groupedCellId] = isUndefined(
1440
- getCellOrValueType(aggregateValue),
1441
- )
1442
- ? null
1443
- : aggregateValue;
1444
- },
1445
- );
1446
- }
1447
- },
1448
- );
1449
- if (
1450
- collIsEmpty(selectedRowIds) ||
1451
- !arrayEvery(havings, (having2) =>
1452
- having2((cellId) => groupRow[cellId]),
1453
- )
1454
- ) {
1455
- resultStore.delRow(queryId, groupRowId);
1456
- } else if (isUndefined(groupRowId)) {
1457
- leaf[2] = resultStore.addRow(queryId, groupRow);
1458
- } else {
1459
- resultStore.setRow(queryId, groupRowId, groupRow);
1460
- }
1461
- },
1462
- );
1463
- addPreStoreListener(
1464
- selectJoinWhereStore,
1465
- queryId,
1466
- selectJoinWhereStore.addRowListener(
1467
- queryId,
1468
- null,
1469
- (_store, _tableId, selectedRowId, getCellChange) => {
1470
- const oldPath = [];
1471
- const newPath = [];
1472
- const changedGroupedSelectedCells = mapNew();
1473
- const rowExists = selectJoinWhereStore.hasRow(
1474
- queryId,
1475
- selectedRowId,
1476
- );
1477
- let changedLeaf = !rowExists;
1478
- collForEach(groupBySelectedCellIds, (selectedCellId) => {
1479
- const [changed, oldCell, newCell] = getCellChange(
1480
- queryId,
1481
- selectedRowId,
1482
- selectedCellId,
1483
- );
1484
- arrayPush(oldPath, oldCell);
1485
- arrayPush(newPath, newCell);
1486
- changedLeaf || (changedLeaf = changed);
1487
- });
1488
- mapForEach(groupedSelectedCellIds, (selectedCellId) => {
1489
- const [changed, , newCell] = getCellChange(
1490
- queryId,
1491
- selectedRowId,
1492
- selectedCellId,
1493
- );
1494
- if (changedLeaf || changed) {
1495
- mapSet(changedGroupedSelectedCells, selectedCellId, [newCell]);
1496
- }
1497
- });
1498
- if (changedLeaf) {
1499
- writeGroupRow(
1500
- visitTree(tree, oldPath, void 0, ([, selectedRowIds]) => {
1501
- collDel(selectedRowIds, selectedRowId);
1502
- return collIsEmpty(selectedRowIds);
1503
- }),
1504
- changedGroupedSelectedCells,
1505
- selectedRowId,
1506
- 1,
1507
- );
1508
- }
1509
- if (rowExists) {
1510
- writeGroupRow(
1511
- visitTree(
1512
- tree,
1513
- newPath,
1514
- () => {
1515
- const groupRow = {};
1516
- collForEach(
1517
- groupBySelectedCellIds,
1518
- (selectedCellId) =>
1519
- (groupRow[selectedCellId] =
1520
- selectJoinWhereStore.getCell(
1521
- queryId,
1522
- selectedRowId,
1523
- selectedCellId,
1524
- )),
1525
- );
1526
- return [mapNew(), setNew(), void 0, groupRow];
1527
- },
1528
- ([, selectedRowIds]) => {
1529
- setAdd(selectedRowIds, selectedRowId);
1530
- },
1531
- ),
1532
- changedGroupedSelectedCells,
1533
- selectedRowId,
1534
- );
1535
- }
1536
- },
1537
- ),
1538
- );
1539
- }
1540
- synchronizeTransactions(queryId, store, selectJoinWhereStore);
1541
- const writeSelectRow = (rootRowId) => {
1542
- const getTableCell = (arg1, arg2) => {
1543
- var _a, _b, _c;
1544
- return store.getCell(
1545
- ...(isUndefined(arg2)
1546
- ? [tableId, rootRowId, arg1]
1547
- : arg1 === tableId
1548
- ? [tableId, rootRowId, arg2]
1549
- : [
1550
- (_a = mapGet(joins, arg1)) == null ? void 0 : _a[0],
1551
- (_c = mapGet(
1552
- (_b = mapGet(joins, arg1)) == null ? void 0 : _b[4],
1553
- rootRowId,
1554
- )) == null
1555
- ? void 0
1556
- : _c[0],
1557
- arg2,
1558
- ]),
1559
- );
1560
- };
1561
- selectJoinWhereStore.transaction(() =>
1562
- arrayEvery(wheres, (where2) => where2(getTableCell))
1563
- ? mapForEach(selects, (asCellId, tableCellGetter) =>
1564
- setOrDelCell(
1565
- selectJoinWhereStore,
1566
- queryId,
1567
- rootRowId,
1568
- asCellId,
1569
- tableCellGetter(getTableCell, rootRowId),
1570
- ),
1571
- )
1572
- : selectJoinWhereStore.delRow(queryId, rootRowId),
1573
- );
1574
- };
1575
- const listenToTable = (rootRowId, tableId2, rowId, joinedTableIds2) => {
1576
- const getCell = (cellId) => store.getCell(tableId2, rowId, cellId);
1577
- arrayForEach(joinedTableIds2, (remoteAsTableId) => {
1578
- var _a;
1579
- const [realJoinedTableId, , on, nextJoinedTableIds, remoteIdPair] =
1580
- mapGet(joins, remoteAsTableId);
1581
- const remoteRowId = on == null ? void 0 : on(getCell, rootRowId);
1582
- const [previousRemoteRowId, previousRemoteListenerId] =
1583
- (_a = mapGet(remoteIdPair, rootRowId)) != null ? _a : [];
1584
- if (remoteRowId != previousRemoteRowId) {
1585
- if (!isUndefined(previousRemoteListenerId)) {
1586
- delStoreListeners(queryId, previousRemoteListenerId);
1587
- }
1588
- mapSet(
1589
- remoteIdPair,
1590
- rootRowId,
1591
- isUndefined(remoteRowId)
1592
- ? null
1593
- : [
1594
- remoteRowId,
1595
- ...addStoreListeners(
1596
- queryId,
1597
- 1,
1598
- store.addRowListener(realJoinedTableId, remoteRowId, () =>
1599
- listenToTable(
1600
- rootRowId,
1601
- realJoinedTableId,
1602
- remoteRowId,
1603
- nextJoinedTableIds,
1604
- ),
1605
- ),
1606
- ),
1607
- ],
1608
- );
1609
- }
1610
- });
1611
- writeSelectRow(rootRowId);
1612
- };
1613
- const {3: joinedTableIds} = mapGet(joins, null);
1614
- selectJoinWhereStore.transaction(() =>
1615
- addStoreListeners(
1616
- queryId,
1617
- 1,
1618
- store.addRowListener(tableId, null, (_store, _tableId, rootRowId) => {
1619
- if (store.hasRow(tableId, rootRowId)) {
1620
- listenToTable(rootRowId, tableId, rootRowId, joinedTableIds);
1621
- } else {
1622
- selectJoinWhereStore.delRow(queryId, rootRowId);
1623
- collForEach(joins, ({4: idsByRootRowId}) =>
1624
- ifNotUndefined(
1625
- mapGet(idsByRootRowId, rootRowId),
1626
- ([, listenerId]) => {
1627
- delStoreListeners(queryId, listenerId);
1628
- mapSet(idsByRootRowId, rootRowId);
1629
- },
1630
- ),
1631
- );
1632
- }
1633
- }),
1634
- ),
1635
- );
1636
- return queries;
1637
- };
1638
- const delQueryDefinition = (queryId) => {
1639
- resetPreStores(queryId);
1640
- delDefinition(queryId);
1641
- return queries;
1642
- };
1643
- const addQueryIdsListener = (listener) =>
1644
- addQueryIdsListenerImpl(() => listener(queries));
1645
- const delListener = (listenerId) => {
1646
- delListenerImpl(listenerId);
1647
- return queries;
1648
- };
1649
- const getListenerStats = () => {
1650
- const _a = resultStore.getListenerStats(),
1651
- stats = __objRest(_a, ['tables', 'tableIds', 'transaction']);
1652
- return stats;
1653
- };
1654
- const queries = {
1655
- setQueryDefinition,
1656
- delQueryDefinition,
1657
- getStore,
1658
- getQueryIds,
1659
- forEachQuery,
1660
- hasQuery,
1661
- getTableId,
1662
- addQueryIdsListener,
1663
- delListener,
1664
- destroy,
1665
- getListenerStats,
1666
- };
1667
- objToArray(
1668
- {
1669
- [TABLE]: [1, 1],
1670
- [TABLE + CELL_IDS]: [0, 1],
1671
- [ROW_COUNT]: [0, 1],
1672
- [ROW_IDS]: [0, 1],
1673
- [SORTED_ROW_IDS]: [0, 5],
1674
- [ROW]: [1, 2],
1675
- [CELL_IDS]: [0, 2],
1676
- [CELL]: [1, 3],
1677
- },
1678
- ([hasAndForEach, argumentCount], gettable) => {
1679
- arrayForEach(
1680
- hasAndForEach ? [GET, 'has', 'forEach'] : [GET],
1681
- (prefix) =>
1682
- (queries[prefix + RESULT + gettable] = (...args) =>
1683
- resultStore[prefix + gettable](...args)),
1684
- );
1685
- queries[ADD + RESULT + gettable + LISTENER] = (...args) =>
1686
- resultStore[ADD + gettable + LISTENER](
1687
- ...slice(args, 0, argumentCount),
1688
- (_store, ...listenerArgs) =>
1689
- args[argumentCount](queries, ...listenerArgs),
1690
- true,
1691
- );
1692
- },
1693
- );
1694
- return objFreeze(queries);
1695
- });
1696
-
1697
- const createRelationships = getCreateFunction((store) => {
1698
- const remoteTableIds = mapNew();
1699
- const remoteRowIdListeners = mapNew();
1700
- const localRowIdsListeners = mapNew();
1701
- const linkedRowIdsListeners = mapNew();
1702
- const [addListener, callListeners, delListenerImpl] = getListenerFunctions(
1703
- () => relationships,
1704
- );
1705
- const [
1706
- getStore,
1707
- getRelationshipIds,
1708
- forEachRelationshipImpl,
1709
- hasRelationship,
1710
- getLocalTableId,
1711
- getRelationship,
1712
- ,
1713
- ,
1714
- setDefinitionAndListen,
1715
- delDefinition,
1716
- addRelationshipIdsListener,
1717
- destroy,
1718
- ] = getDefinableFunctions(
1719
- store,
1720
- () => [mapNew(), mapNew(), mapNew(), mapNew()],
1721
- (value) => (isUndefined(value) ? void 0 : value + EMPTY_STRING),
1722
- addListener,
1723
- callListeners,
1724
- );
1725
- const getLinkedRowIdsCache = (relationshipId, firstRowId, skipCache) =>
1726
- ifNotUndefined(
1727
- getRelationship(relationshipId),
1728
- ([remoteRows, , linkedRowsCache]) => {
1729
- if (!collHas(linkedRowsCache, firstRowId)) {
1730
- const linkedRows = setNew();
1731
- if (
1732
- getLocalTableId(relationshipId) != getRemoteTableId(relationshipId)
1733
- ) {
1734
- setAdd(linkedRows, firstRowId);
1735
- } else {
1736
- let rowId = firstRowId;
1737
- while (!isUndefined(rowId) && !collHas(linkedRows, rowId)) {
1738
- setAdd(linkedRows, rowId);
1739
- rowId = mapGet(remoteRows, rowId);
1740
- }
1741
- }
1742
- if (skipCache) {
1743
- return linkedRows;
1744
- }
1745
- mapSet(linkedRowsCache, firstRowId, linkedRows);
1746
- }
1747
- return mapGet(linkedRowsCache, firstRowId);
1748
- },
1749
- );
1750
- const delLinkedRowIdsCache = (relationshipId, firstRowId) =>
1751
- ifNotUndefined(getRelationship(relationshipId), ([, , linkedRowsCache]) =>
1752
- mapSet(linkedRowsCache, firstRowId),
1753
- );
1754
- const setRelationshipDefinition = (
1755
- relationshipId,
1756
- localTableId,
1757
- remoteTableId,
1758
- getRemoteRowId2,
1759
- ) => {
1760
- mapSet(remoteTableIds, relationshipId, remoteTableId);
1761
- setDefinitionAndListen(
1762
- relationshipId,
1763
- localTableId,
1764
- (change, changedRemoteRowIds) => {
1765
- const changedLocalRows = setNew();
1766
- const changedRemoteRows = setNew();
1767
- const changedLinkedRows = setNew();
1768
- const [localRows, remoteRows] = getRelationship(relationshipId);
1769
- collForEach(
1770
- changedRemoteRowIds,
1771
- ([oldRemoteRowId, newRemoteRowId], localRowId) => {
1772
- if (!isUndefined(oldRemoteRowId)) {
1773
- setAdd(changedRemoteRows, oldRemoteRowId);
1774
- ifNotUndefined(
1775
- mapGet(remoteRows, oldRemoteRowId),
1776
- (oldRemoteRow) => {
1777
- collDel(oldRemoteRow, localRowId);
1778
- if (collIsEmpty(oldRemoteRow)) {
1779
- mapSet(remoteRows, oldRemoteRowId);
1780
- }
1781
- },
1782
- );
1783
- }
1784
- if (!isUndefined(newRemoteRowId)) {
1785
- setAdd(changedRemoteRows, newRemoteRowId);
1786
- if (!collHas(remoteRows, newRemoteRowId)) {
1787
- mapSet(remoteRows, newRemoteRowId, setNew());
1788
- }
1789
- setAdd(mapGet(remoteRows, newRemoteRowId), localRowId);
1790
- }
1791
- setAdd(changedLocalRows, localRowId);
1792
- mapSet(localRows, localRowId, newRemoteRowId);
1793
- mapForEach(
1794
- mapGet(linkedRowIdsListeners, relationshipId),
1795
- (firstRowId) => {
1796
- if (
1797
- collHas(
1798
- getLinkedRowIdsCache(relationshipId, firstRowId),
1799
- localRowId,
1800
- )
1801
- ) {
1802
- setAdd(changedLinkedRows, firstRowId);
1803
- }
1804
- },
1805
- );
1806
- },
1807
- );
1808
- change();
1809
- collForEach(changedLocalRows, (localRowId) =>
1810
- callListeners(remoteRowIdListeners, [relationshipId, localRowId]),
1811
- );
1812
- collForEach(changedRemoteRows, (remoteRowId) =>
1813
- callListeners(localRowIdsListeners, [relationshipId, remoteRowId]),
1814
- );
1815
- collForEach(changedLinkedRows, (firstRowId) => {
1816
- delLinkedRowIdsCache(relationshipId, firstRowId);
1817
- callListeners(linkedRowIdsListeners, [relationshipId, firstRowId]);
1818
- });
1819
- },
1820
- getRowCellFunction(getRemoteRowId2),
1821
- );
1822
- return relationships;
1823
- };
1824
- const forEachRelationship = (relationshipCallback) =>
1825
- forEachRelationshipImpl((relationshipId) =>
1826
- relationshipCallback(relationshipId, (rowCallback) =>
1827
- store.forEachRow(getLocalTableId(relationshipId), rowCallback),
1828
- ),
1829
- );
1830
- const delRelationshipDefinition = (relationshipId) => {
1831
- mapSet(remoteTableIds, relationshipId);
1832
- delDefinition(relationshipId);
1833
- return relationships;
1834
- };
1835
- const getRemoteTableId = (relationshipId) =>
1836
- mapGet(remoteTableIds, relationshipId);
1837
- const getRemoteRowId = (relationshipId, localRowId) => {
1838
- var _a;
1839
- return mapGet(
1840
- (_a = getRelationship(relationshipId)) == null ? void 0 : _a[0],
1841
- localRowId,
1842
- );
1843
- };
1844
- const getLocalRowIds = (relationshipId, remoteRowId) => {
1845
- var _a;
1846
- return collValues(
1847
- mapGet(
1848
- (_a = getRelationship(relationshipId)) == null ? void 0 : _a[1],
1849
- remoteRowId,
1850
- ),
1851
- );
1852
- };
1853
- const getLinkedRowIds = (relationshipId, firstRowId) =>
1854
- isUndefined(getRelationship(relationshipId))
1855
- ? [firstRowId]
1856
- : collValues(getLinkedRowIdsCache(relationshipId, firstRowId, true));
1857
- const addRemoteRowIdListener = (relationshipId, localRowId, listener) =>
1858
- addListener(listener, remoteRowIdListeners, [relationshipId, localRowId]);
1859
- const addLocalRowIdsListener = (relationshipId, remoteRowId, listener) =>
1860
- addListener(listener, localRowIdsListeners, [relationshipId, remoteRowId]);
1861
- const addLinkedRowIdsListener = (relationshipId, firstRowId, listener) => {
1862
- getLinkedRowIdsCache(relationshipId, firstRowId);
1863
- return addListener(listener, linkedRowIdsListeners, [
1864
- relationshipId,
1865
- firstRowId,
1866
- ]);
1867
- };
1868
- const delListener = (listenerId) => {
1869
- var _a;
1870
- delLinkedRowIdsCache(
1871
- ...((_a = delListenerImpl(listenerId)) != null ? _a : []),
1872
- );
1873
- return relationships;
1874
- };
1875
- const getListenerStats = () => ({
1876
- remoteRowId: collSize3(remoteRowIdListeners),
1877
- localRowIds: collSize3(localRowIdsListeners),
1878
- linkedRowIds: collSize3(linkedRowIdsListeners),
1879
- });
1880
- const relationships = {
1881
- setRelationshipDefinition,
1882
- delRelationshipDefinition,
1883
- getStore,
1884
- getRelationshipIds,
1885
- forEachRelationship,
1886
- hasRelationship,
1887
- getLocalTableId,
1888
- getRemoteTableId,
1889
- getRemoteRowId,
1890
- getLocalRowIds,
1891
- getLinkedRowIds,
1892
- addRelationshipIdsListener,
1893
- addRemoteRowIdListener,
1894
- addLocalRowIdsListener,
1895
- addLinkedRowIdsListener,
1896
- delListener,
1897
- destroy,
1898
- getListenerStats,
1899
- };
1900
- return objFreeze(relationships);
1901
- });
1902
-
1903
- const textEncoder = /* @__PURE__ */ new GLOBAL.TextEncoder();
1904
- const getHash = (value) => {
1905
- let hash = 2166136261;
1906
- arrayForEach(textEncoder.encode(value), (char) => {
1907
- hash ^= char;
1908
- hash +=
1909
- (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
1910
- });
1911
- return hash >>> 0;
1912
- };
1913
-
1914
- const stampClone = ([value, time]) => stampNew(value, time);
1915
- const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
1916
- const stampNew = (value, time) => (time ? [value, time] : [value]);
1917
- const stampNewWithHash = (value, time, hash) => [value, time, hash];
1918
- const getStampHash = (stamp) => stamp[2];
1919
- const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
1920
- const replaceTimeHash = (oldTime, newTime) =>
1921
- newTime > oldTime ? (oldTime ? getHash(oldTime) : 0) ^ getHash(newTime) : 0;
1922
- const getLatestTime = (time1, time2) => {
1923
- var _a;
1924
- return (
1925
- /* istanbul ignore next */
1926
- (_a =
1927
- (time1 != null ? time1 : '') > (time2 != null ? time2 : '')
1928
- ? time1
1929
- : time2) != null
1930
- ? _a
1931
- : ''
1932
- );
1933
- };
1934
- const stampUpdate = (stamp, time, hash) => {
1935
- if (time > stamp[1]) {
1936
- stamp[1] = time;
1937
- }
1938
- stamp[2] = hash >>> 0;
1939
- };
1940
- const stampNewObj = (time = EMPTY_STRING) => stampNew(objNew(), time);
1941
- const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
1942
- const stampMapToObjWithHash = (
1943
- [map, time, hash],
1944
- mapper = stampCloneWithHash,
1945
- ) => [mapToObj(map, mapper), time, hash];
1946
- const stampMapToObjWithoutHash = ([map, time], mapper = stampClone) =>
1947
- stampNew(mapToObj(map, mapper), time);
1948
- const stampValidate = (stamp, validateThing) =>
1949
- isArray(stamp) &&
1950
- size(stamp) == 3 &&
1951
- isString(stamp[1]) &&
1952
- getTypeOf(stamp[2]) == NUMBER &&
1953
- isFiniteNumber(stamp[2]) &&
1954
- validateThing(stamp[0]);
1955
-
1956
- const pairNew = (value) => [value, value];
1957
- const pairCollSize2 = (pair, func = collSize2) => func(pair[0]) + func(pair[1]);
1958
- const pairNewMap = () => [mapNew(), mapNew()];
1959
- const pairClone = (array) => [...array];
1960
- const pairIsEqual = ([entry1, entry2]) => entry1 === entry2;
1961
-
1962
- const jsonString = JSON.stringify;
1963
- const jsonParse = JSON.parse;
1964
- const jsonStringWithMap = (obj) =>
1965
- jsonString(obj, (_key, value) =>
1966
- isInstanceOf(value, Map) ? object.fromEntries([...value]) : value,
1967
- );
1968
-
1969
- const idsChanged = (changedIds, id2, addedOrRemoved) =>
1970
- mapSet(
1971
- changedIds,
1972
- id2,
1973
- mapGet(changedIds, id2) == -addedOrRemoved ? void 0 : addedOrRemoved,
1974
- );
1975
- const createStore = () => {
1976
- let hasTablesSchema;
1977
- let hasValuesSchema;
1978
- let hadTables = false;
1979
- let hadValues = false;
1980
- let transactions = 0;
1981
- let internalListeners = [];
1982
- const changedTableIds = mapNew();
1983
- const changedTableCellIds = mapNew();
1984
- const changedRowCount = mapNew();
1985
- const changedRowIds = mapNew();
1986
- const changedCellIds = mapNew();
1987
- const changedCells = mapNew();
1988
- const changedValueIds = mapNew();
1989
- const changedValues = mapNew();
1990
- const invalidCells = mapNew();
1991
- const invalidValues = mapNew();
1992
- const tablesSchemaMap = mapNew();
1993
- const tablesSchemaRowCache = mapNew();
1994
- const valuesSchemaMap = mapNew();
1995
- const valuesDefaulted = mapNew();
1996
- const valuesNonDefaulted = setNew();
1997
- const tablePoolFunctions = mapNew();
1998
- const tableCellIds = mapNew();
1999
- const tablesMap = mapNew();
2000
- const valuesMap = mapNew();
2001
- const hasTablesListeners = pairNewMap();
2002
- const tablesListeners = pairNewMap();
2003
- const tableIdsListeners = pairNewMap();
2004
- const hasTableListeners = pairNewMap();
2005
- const tableListeners = pairNewMap();
2006
- const tableCellIdsListeners = pairNewMap();
2007
- const hasTableCellListeners = pairNewMap();
2008
- const rowCountListeners = pairNewMap();
2009
- const rowIdsListeners = pairNewMap();
2010
- const sortedRowIdsListeners = pairNewMap();
2011
- const hasRowListeners = pairNewMap();
2012
- const rowListeners = pairNewMap();
2013
- const cellIdsListeners = pairNewMap();
2014
- const hasCellListeners = pairNewMap();
2015
- const cellListeners = pairNewMap();
2016
- const invalidCellListeners = pairNewMap();
2017
- const invalidValueListeners = pairNewMap();
2018
- const hasValuesListeners = pairNewMap();
2019
- const valuesListeners = pairNewMap();
2020
- const valueIdsListeners = pairNewMap();
2021
- const hasValueListeners = pairNewMap();
2022
- const valueListeners = pairNewMap();
2023
- const startTransactionListeners = mapNew();
2024
- const finishTransactionListeners = pairNewMap();
2025
- const [addListener, callListeners, delListenerImpl, callListenerImpl] =
2026
- getListenerFunctions(() => store);
2027
- const validateTablesSchema = (tableSchema) =>
2028
- objValidate(tableSchema, (tableSchema2) =>
2029
- objValidate(tableSchema2, validateCellOrValueSchema),
2030
- );
2031
- const validateValuesSchema = (valuesSchema) =>
2032
- objValidate(valuesSchema, validateCellOrValueSchema);
2033
- const validateCellOrValueSchema = (schema) => {
2034
- if (!objValidate(schema, (_child, id2) => arrayHas([TYPE, DEFAULT], id2))) {
2035
- return false;
2036
- }
2037
- const type = schema[TYPE];
2038
- if (!isTypeStringOrBoolean(type) && type != NUMBER) {
2039
- return false;
2040
- }
2041
- if (getCellOrValueType(schema[DEFAULT]) != type) {
2042
- objDel(schema, DEFAULT);
2043
- }
2044
- return true;
2045
- };
2046
- const validateContent = isArray;
2047
- const validateTables = (tables) =>
2048
- objValidate(tables, validateTable, cellInvalid);
2049
- const validateTable = (table, tableId) =>
2050
- (!hasTablesSchema ||
2051
- collHas(tablesSchemaMap, tableId) ||
2052
- /* istanbul ignore next */
2053
- cellInvalid(tableId)) &&
2054
- objValidate(
2055
- table,
2056
- (row, rowId) => validateRow(tableId, rowId, row),
2057
- () => cellInvalid(tableId),
2058
- );
2059
- const validateRow = (tableId, rowId, row, skipDefaults) =>
2060
- objValidate(
2061
- skipDefaults ? row : addDefaultsToRow(row, tableId, rowId),
2062
- (cell, cellId) =>
2063
- ifNotUndefined(
2064
- getValidatedCell(tableId, rowId, cellId, cell),
2065
- (validCell) => {
2066
- row[cellId] = validCell;
2067
- return true;
2068
- },
2069
- () => false,
2070
- ),
2071
- () => cellInvalid(tableId, rowId),
2072
- );
2073
- const getValidatedCell = (tableId, rowId, cellId, cell) =>
2074
- hasTablesSchema
2075
- ? ifNotUndefined(
2076
- mapGet(mapGet(tablesSchemaMap, tableId), cellId),
2077
- (cellSchema) =>
2078
- getCellOrValueType(cell) != cellSchema[TYPE]
2079
- ? cellInvalid(tableId, rowId, cellId, cell, cellSchema[DEFAULT])
2080
- : cell,
2081
- () => cellInvalid(tableId, rowId, cellId, cell),
2082
- )
2083
- : isUndefined(getCellOrValueType(cell))
2084
- ? cellInvalid(tableId, rowId, cellId, cell)
2085
- : cell;
2086
- const validateValues = (values, skipDefaults) =>
2087
- objValidate(
2088
- skipDefaults ? values : addDefaultsToValues(values),
2089
- (value, valueId) =>
2090
- ifNotUndefined(
2091
- getValidatedValue(valueId, value),
2092
- (validValue) => {
2093
- values[valueId] = validValue;
2094
- return true;
2095
- },
2096
- () => false,
2097
- ),
2098
- () => valueInvalid(),
2099
- );
2100
- const getValidatedValue = (valueId, value) =>
2101
- hasValuesSchema
2102
- ? ifNotUndefined(
2103
- mapGet(valuesSchemaMap, valueId),
2104
- (valueSchema) =>
2105
- getCellOrValueType(value) != valueSchema[TYPE]
2106
- ? valueInvalid(valueId, value, valueSchema[DEFAULT])
2107
- : value,
2108
- () => valueInvalid(valueId, value),
2109
- )
2110
- : isUndefined(getCellOrValueType(value))
2111
- ? valueInvalid(valueId, value)
2112
- : value;
2113
- const addDefaultsToRow = (row, tableId, rowId) => {
2114
- ifNotUndefined(
2115
- mapGet(tablesSchemaRowCache, tableId),
2116
- ([rowDefaulted, rowNonDefaulted]) => {
2117
- collForEach(rowDefaulted, (cell, cellId) => {
2118
- if (!objHas(row, cellId)) {
2119
- row[cellId] = cell;
2120
- }
2121
- });
2122
- collForEach(rowNonDefaulted, (cellId) => {
2123
- if (!objHas(row, cellId)) {
2124
- cellInvalid(tableId, rowId, cellId);
2125
- }
2126
- });
2127
- },
2128
- );
2129
- return row;
2130
- };
2131
- const addDefaultsToValues = (values) => {
2132
- if (hasValuesSchema) {
2133
- collForEach(valuesDefaulted, (value, valueId) => {
2134
- if (!objHas(values, valueId)) {
2135
- values[valueId] = value;
2136
- }
2137
- });
2138
- collForEach(valuesNonDefaulted, (valueId) => {
2139
- if (!objHas(values, valueId)) {
2140
- valueInvalid(valueId);
2141
- }
2142
- });
2143
- }
2144
- return values;
2145
- };
2146
- const setValidTablesSchema = (tablesSchema) =>
2147
- mapMatch(
2148
- tablesSchemaMap,
2149
- tablesSchema,
2150
- (_tablesSchema, tableId, tableSchema) => {
2151
- const rowDefaulted = mapNew();
2152
- const rowNonDefaulted = setNew();
2153
- mapMatch(
2154
- mapEnsure(tablesSchemaMap, tableId, mapNew),
2155
- tableSchema,
2156
- (tableSchemaMap, cellId, cellSchema) => {
2157
- mapSet(tableSchemaMap, cellId, cellSchema);
2158
- ifNotUndefined(
2159
- cellSchema[DEFAULT],
2160
- (def) => mapSet(rowDefaulted, cellId, def),
2161
- () => setAdd(rowNonDefaulted, cellId),
2162
- );
2163
- },
2164
- );
2165
- mapSet(tablesSchemaRowCache, tableId, [rowDefaulted, rowNonDefaulted]);
2166
- },
2167
- (_tablesSchema, tableId) => {
2168
- mapSet(tablesSchemaMap, tableId);
2169
- mapSet(tablesSchemaRowCache, tableId);
2170
- },
2171
- );
2172
- const setValidValuesSchema = (valuesSchema) =>
2173
- mapMatch(
2174
- valuesSchemaMap,
2175
- valuesSchema,
2176
- (_valuesSchema, valueId, valueSchema) => {
2177
- mapSet(valuesSchemaMap, valueId, valueSchema);
2178
- ifNotUndefined(
2179
- valueSchema[DEFAULT],
2180
- (def) => mapSet(valuesDefaulted, valueId, def),
2181
- () => setAdd(valuesNonDefaulted, valueId),
2182
- );
2183
- },
2184
- (_valuesSchema, valueId) => {
2185
- mapSet(valuesSchemaMap, valueId);
2186
- mapSet(valuesDefaulted, valueId);
2187
- collDel(valuesNonDefaulted, valueId);
2188
- },
2189
- );
2190
- const setOrDelTables = (tables) =>
2191
- objIsEmpty(tables) ? delTables() : setTables(tables);
2192
- const setValidContent = ([tables, values]) => {
2193
- (objIsEmpty(tables) ? delTables : setTables)(tables);
2194
- (objIsEmpty(values) ? delValues : setValues)(values);
2195
- };
2196
- const setValidTables = (tables) =>
2197
- mapMatch(
2198
- tablesMap,
2199
- tables,
2200
- (_tables, tableId, table) => setValidTable(tableId, table),
2201
- (_tables, tableId) => delValidTable(tableId),
2202
- );
2203
- const setValidTable = (tableId, table) =>
2204
- mapMatch(
2205
- mapEnsure(tablesMap, tableId, () => {
2206
- tableIdsChanged(tableId, 1);
2207
- mapSet(tablePoolFunctions, tableId, getPoolFunctions());
2208
- mapSet(tableCellIds, tableId, mapNew());
2209
- return mapNew();
2210
- }),
2211
- table,
2212
- (tableMap, rowId, row) => setValidRow(tableId, tableMap, rowId, row),
2213
- (tableMap, rowId) => delValidRow(tableId, tableMap, rowId),
2214
- );
2215
- const setValidRow = (tableId, tableMap, rowId, row, forceDel) =>
2216
- mapMatch(
2217
- mapEnsure(tableMap, rowId, () => {
2218
- rowIdsChanged(tableId, rowId, 1);
2219
- return mapNew();
2220
- }),
2221
- row,
2222
- (rowMap, cellId, cell) =>
2223
- setValidCell(tableId, rowId, rowMap, cellId, cell),
2224
- (rowMap, cellId) =>
2225
- delValidCell(tableId, tableMap, rowId, rowMap, cellId, forceDel),
2226
- );
2227
- const setValidCell = (tableId, rowId, rowMap, cellId, cell) => {
2228
- if (!collHas(rowMap, cellId)) {
2229
- cellIdsChanged(tableId, rowId, cellId, 1);
2230
- }
2231
- const oldCell = mapGet(rowMap, cellId);
2232
- if (cell !== oldCell) {
2233
- cellChanged(tableId, rowId, cellId, oldCell, cell);
2234
- mapSet(rowMap, cellId, cell);
2235
- }
2236
- };
2237
- const setCellIntoDefaultRow = (tableId, tableMap, rowId, cellId, validCell) =>
2238
- ifNotUndefined(
2239
- mapGet(tableMap, rowId),
2240
- (rowMap) => setValidCell(tableId, rowId, rowMap, cellId, validCell),
2241
- () =>
2242
- setValidRow(
2243
- tableId,
2244
- tableMap,
2245
- rowId,
2246
- addDefaultsToRow({[cellId]: validCell}, tableId, rowId),
2247
- ),
2248
- );
2249
- const setOrDelValues = (values) =>
2250
- objIsEmpty(values) ? delValues() : setValues(values);
2251
- const setValidValues = (values) =>
2252
- mapMatch(
2253
- valuesMap,
2254
- values,
2255
- (_valuesMap, valueId, value) => setValidValue(valueId, value),
2256
- (_valuesMap, valueId) => delValidValue(valueId),
2257
- );
2258
- const setValidValue = (valueId, value) => {
2259
- if (!collHas(valuesMap, valueId)) {
2260
- valueIdsChanged(valueId, 1);
2261
- }
2262
- const oldValue = mapGet(valuesMap, valueId);
2263
- if (value !== oldValue) {
2264
- valueChanged(valueId, oldValue, value);
2265
- mapSet(valuesMap, valueId, value);
2266
- }
2267
- };
2268
- const getNewRowId = (tableId, reuse) => {
2269
- const [getId] = mapGet(tablePoolFunctions, tableId);
2270
- let rowId;
2271
- do {
2272
- rowId = getId(reuse);
2273
- } while (collHas(mapGet(tablesMap, tableId), rowId));
2274
- return rowId;
2275
- };
2276
- const getOrCreateTable = (tableId) => {
2277
- var _a;
2278
- return (_a = mapGet(tablesMap, tableId)) != null
2279
- ? _a
2280
- : setValidTable(tableId, {});
2281
- };
2282
- const delValidTable = (tableId) => setValidTable(tableId, {});
2283
- const delValidRow = (tableId, tableMap, rowId) => {
2284
- const [, releaseId] = mapGet(tablePoolFunctions, tableId);
2285
- releaseId(rowId);
2286
- setValidRow(tableId, tableMap, rowId, {}, true);
2287
- };
2288
- const delValidCell = (tableId, table, rowId, row, cellId, forceDel) => {
2289
- var _a;
2290
- const defaultCell = mapGet(
2291
- (_a = mapGet(tablesSchemaRowCache, tableId)) == null ? void 0 : _a[0],
2292
- cellId,
2293
- );
2294
- if (!isUndefined(defaultCell) && !forceDel) {
2295
- return setValidCell(tableId, rowId, row, cellId, defaultCell);
2296
- }
2297
- const delCell2 = (cellId2) => {
2298
- cellChanged(tableId, rowId, cellId2, mapGet(row, cellId2));
2299
- cellIdsChanged(tableId, rowId, cellId2, -1);
2300
- mapSet(row, cellId2);
2301
- };
2302
- if (isUndefined(defaultCell)) {
2303
- delCell2(cellId);
2304
- } else {
2305
- mapForEach(row, delCell2);
2306
- }
2307
- if (collIsEmpty(row)) {
2308
- rowIdsChanged(tableId, rowId, -1);
2309
- if (collIsEmpty(mapSet(table, rowId))) {
2310
- tableIdsChanged(tableId, -1);
2311
- mapSet(tablesMap, tableId);
2312
- mapSet(tablePoolFunctions, tableId);
2313
- mapSet(tableCellIds, tableId);
2314
- }
2315
- }
2316
- };
2317
- const delValidValue = (valueId) => {
2318
- const defaultValue = mapGet(valuesDefaulted, valueId);
2319
- if (!isUndefined(defaultValue)) {
2320
- return setValidValue(valueId, defaultValue);
2321
- }
2322
- valueChanged(valueId, mapGet(valuesMap, valueId));
2323
- valueIdsChanged(valueId, -1);
2324
- mapSet(valuesMap, valueId);
2325
- };
2326
- const tableIdsChanged = (tableId, addedOrRemoved) =>
2327
- idsChanged(changedTableIds, tableId, addedOrRemoved);
2328
- const rowIdsChanged = (tableId, rowId, addedOrRemoved) =>
2329
- idsChanged(
2330
- mapEnsure(changedRowIds, tableId, mapNew),
2331
- rowId,
2332
- addedOrRemoved,
2333
- ) &&
2334
- mapSet(
2335
- changedRowCount,
2336
- tableId,
2337
- mapEnsure(changedRowCount, tableId, () => 0) + addedOrRemoved,
2338
- );
2339
- const cellIdsChanged = (tableId, rowId, cellId, addedOrRemoved) => {
2340
- var _a;
2341
- const cellIds = mapGet(tableCellIds, tableId);
2342
- const count = (_a = mapGet(cellIds, cellId)) != null ? _a : 0;
2343
- if (
2344
- (count == 0 && addedOrRemoved == 1) ||
2345
- (count == 1 && addedOrRemoved == -1)
2346
- ) {
2347
- idsChanged(
2348
- mapEnsure(changedTableCellIds, tableId, mapNew),
2349
- cellId,
2350
- addedOrRemoved,
2351
- );
2352
- }
2353
- mapSet(
2354
- cellIds,
2355
- cellId,
2356
- count != -addedOrRemoved ? count + addedOrRemoved : null,
2357
- );
2358
- idsChanged(
2359
- mapEnsure(mapEnsure(changedCellIds, tableId, mapNew), rowId, mapNew),
2360
- cellId,
2361
- addedOrRemoved,
2362
- );
2363
- };
2364
- const cellChanged = (tableId, rowId, cellId, oldCell, newCell) => {
2365
- var _a;
2366
- mapEnsure(
2367
- mapEnsure(mapEnsure(changedCells, tableId, mapNew), rowId, mapNew),
2368
- cellId,
2369
- () => [oldCell, 0],
2370
- )[1] = newCell;
2371
- (_a = internalListeners[3]) == null
2372
- ? void 0
2373
- : _a.call(internalListeners, tableId, rowId, cellId, newCell);
2374
- };
2375
- const valueIdsChanged = (valueId, addedOrRemoved) =>
2376
- idsChanged(changedValueIds, valueId, addedOrRemoved);
2377
- const valueChanged = (valueId, oldValue, newValue) => {
2378
- var _a;
2379
- mapEnsure(changedValues, valueId, () => [oldValue, 0])[1] = newValue;
2380
- (_a = internalListeners[4]) == null
2381
- ? void 0
2382
- : _a.call(internalListeners, valueId, newValue);
2383
- };
2384
- const cellInvalid = (tableId, rowId, cellId, invalidCell, defaultedCell) => {
2385
- arrayPush(
2386
- mapEnsure(
2387
- mapEnsure(mapEnsure(invalidCells, tableId, mapNew), rowId, mapNew),
2388
- cellId,
2389
- () => [],
2390
- ),
2391
- invalidCell,
2392
- );
2393
- return defaultedCell;
2394
- };
2395
- const valueInvalid = (valueId, invalidValue, defaultedValue) => {
2396
- arrayPush(
2397
- mapEnsure(invalidValues, valueId, () => []),
2398
- invalidValue,
2399
- );
2400
- return defaultedValue;
2401
- };
2402
- const getCellChange = (tableId, rowId, cellId) =>
2403
- ifNotUndefined(
2404
- mapGet(mapGet(mapGet(changedCells, tableId), rowId), cellId),
2405
- ([oldCell, newCell]) => [true, oldCell, newCell],
2406
- () => [false, ...pairNew(getCell(tableId, rowId, cellId))],
2407
- );
2408
- const getValueChange = (valueId) =>
2409
- ifNotUndefined(
2410
- mapGet(changedValues, valueId),
2411
- ([oldValue, newValue]) => [true, oldValue, newValue],
2412
- () => [false, ...pairNew(getValue(valueId))],
2413
- );
2414
- const callInvalidCellListeners = (mutator) =>
2415
- !collIsEmpty(invalidCells) && !collIsEmpty(invalidCellListeners[mutator])
2416
- ? collForEach(
2417
- mutator ? mapClone3(invalidCells) : invalidCells,
2418
- (rows, tableId) =>
2419
- collForEach(rows, (cells, rowId) =>
2420
- collForEach(cells, (invalidCell, cellId) =>
2421
- callListeners(
2422
- invalidCellListeners[mutator],
2423
- [tableId, rowId, cellId],
2424
- invalidCell,
2425
- ),
2426
- ),
2427
- ),
2428
- )
2429
- : 0;
2430
- const callInvalidValueListeners = (mutator) =>
2431
- !collIsEmpty(invalidValues) && !collIsEmpty(invalidValueListeners[mutator])
2432
- ? collForEach(
2433
- mutator ? mapClone(invalidValues) : invalidValues,
2434
- (invalidValue, valueId) =>
2435
- callListeners(
2436
- invalidValueListeners[mutator],
2437
- [valueId],
2438
- invalidValue,
2439
- ),
2440
- )
2441
- : 0;
2442
- const callIdsAndHasListenersIfChanged = (
2443
- changedIds,
2444
- idListeners,
2445
- hasListeners,
2446
- ids,
2447
- ) => {
2448
- if (!collIsEmpty(changedIds)) {
2449
- callListeners(idListeners, ids, () => mapToObj(changedIds));
2450
- mapForEach(changedIds, (changedId, changed) =>
2451
- callListeners(
2452
- hasListeners,
2453
- [...(ids != null ? ids : []), changedId],
2454
- changed == 1,
2455
- ),
2456
- );
2457
- return 1;
2458
- }
2459
- };
2460
- const callTabularListenersForChanges = (mutator) => {
2461
- const hasTablesNow = hasTables();
2462
- if (hasTablesNow != hadTables) {
2463
- callListeners(hasTablesListeners[mutator], void 0, hasTablesNow);
2464
- }
2465
- const emptySortedRowIdListeners = collIsEmpty(
2466
- sortedRowIdsListeners[mutator],
2467
- );
2468
- const emptyIdAndHasListeners =
2469
- collIsEmpty(cellIdsListeners[mutator]) &&
2470
- collIsEmpty(hasCellListeners[mutator]) &&
2471
- collIsEmpty(rowIdsListeners[mutator]) &&
2472
- collIsEmpty(hasRowListeners[mutator]) &&
2473
- collIsEmpty(tableCellIdsListeners[mutator]) &&
2474
- collIsEmpty(hasTableCellListeners[mutator]) &&
2475
- collIsEmpty(rowCountListeners[mutator]) &&
2476
- emptySortedRowIdListeners &&
2477
- collIsEmpty(tableIdsListeners[mutator]) &&
2478
- collIsEmpty(hasTableListeners[mutator]);
2479
- const emptyOtherListeners =
2480
- collIsEmpty(cellListeners[mutator]) &&
2481
- collIsEmpty(rowListeners[mutator]) &&
2482
- collIsEmpty(tableListeners[mutator]) &&
2483
- collIsEmpty(tablesListeners[mutator]);
2484
- if (!emptyIdAndHasListeners || !emptyOtherListeners) {
2485
- const changes = mutator
2486
- ? [
2487
- mapClone(changedTableIds),
2488
- mapClone2(changedTableCellIds),
2489
- mapClone(changedRowCount),
2490
- mapClone2(changedRowIds),
2491
- mapClone3(changedCellIds),
2492
- mapClone3(changedCells),
2493
- ]
2494
- : [
2495
- changedTableIds,
2496
- changedTableCellIds,
2497
- changedRowCount,
2498
- changedRowIds,
2499
- changedCellIds,
2500
- changedCells,
2501
- ];
2502
- if (!emptyIdAndHasListeners) {
2503
- callIdsAndHasListenersIfChanged(
2504
- changes[0],
2505
- tableIdsListeners[mutator],
2506
- hasTableListeners[mutator],
2507
- );
2508
- collForEach(changes[1], (changedIds, tableId) =>
2509
- callIdsAndHasListenersIfChanged(
2510
- changedIds,
2511
- tableCellIdsListeners[mutator],
2512
- hasTableCellListeners[mutator],
2513
- [tableId],
2514
- ),
2515
- );
2516
- collForEach(changes[2], (changedCount, tableId) => {
2517
- if (changedCount != 0) {
2518
- callListeners(
2519
- rowCountListeners[mutator],
2520
- [tableId],
2521
- getRowCount(tableId),
2522
- );
2523
- }
2524
- });
2525
- const calledSortableTableIds = setNew();
2526
- collForEach(changes[3], (changedIds, tableId) => {
2527
- if (
2528
- callIdsAndHasListenersIfChanged(
2529
- changedIds,
2530
- rowIdsListeners[mutator],
2531
- hasRowListeners[mutator],
2532
- [tableId],
2533
- ) &&
2534
- !emptySortedRowIdListeners
2535
- ) {
2536
- callListeners(sortedRowIdsListeners[mutator], [tableId, null]);
2537
- setAdd(calledSortableTableIds, tableId);
2538
- }
2539
- });
2540
- if (!emptySortedRowIdListeners) {
2541
- collForEach(changes[5], (rows, tableId) => {
2542
- if (!collHas(calledSortableTableIds, tableId)) {
2543
- const sortableCellIds = setNew();
2544
- collForEach(rows, (cells) =>
2545
- collForEach(cells, ([oldCell, newCell], cellId) =>
2546
- newCell !== oldCell
2547
- ? setAdd(sortableCellIds, cellId)
2548
- : collDel(cells, cellId),
2549
- ),
2550
- );
2551
- collForEach(sortableCellIds, (cellId) =>
2552
- callListeners(sortedRowIdsListeners[mutator], [
2553
- tableId,
2554
- cellId,
2555
- ]),
2556
- );
2557
- }
2558
- });
2559
- }
2560
- collForEach(changes[4], (rowCellIds, tableId) =>
2561
- collForEach(rowCellIds, (changedIds, rowId) =>
2562
- callIdsAndHasListenersIfChanged(
2563
- changedIds,
2564
- cellIdsListeners[mutator],
2565
- hasCellListeners[mutator],
2566
- [tableId, rowId],
2567
- ),
2568
- ),
2569
- );
2570
- }
2571
- if (!emptyOtherListeners) {
2572
- let tablesChanged;
2573
- collForEach(changes[5], (rows, tableId) => {
2574
- let tableChanged;
2575
- collForEach(rows, (cells, rowId) => {
2576
- let rowChanged;
2577
- collForEach(cells, ([oldCell, newCell], cellId) => {
2578
- if (newCell !== oldCell) {
2579
- callListeners(
2580
- cellListeners[mutator],
2581
- [tableId, rowId, cellId],
2582
- newCell,
2583
- oldCell,
2584
- getCellChange,
2585
- );
2586
- tablesChanged = tableChanged = rowChanged = 1;
2587
- }
2588
- });
2589
- if (rowChanged) {
2590
- callListeners(
2591
- rowListeners[mutator],
2592
- [tableId, rowId],
2593
- getCellChange,
2594
- );
2595
- }
2596
- });
2597
- if (tableChanged) {
2598
- callListeners(tableListeners[mutator], [tableId], getCellChange);
2599
- }
2600
- });
2601
- if (tablesChanged) {
2602
- callListeners(tablesListeners[mutator], void 0, getCellChange);
2603
- }
2604
- }
2605
- }
2606
- };
2607
- const callValuesListenersForChanges = (mutator) => {
2608
- const hasValuesNow = hasValues();
2609
- if (hasValuesNow != hadValues) {
2610
- callListeners(hasValuesListeners[mutator], void 0, hasValuesNow);
2611
- }
2612
- const emptyIdAndHasListeners =
2613
- collIsEmpty(valueIdsListeners[mutator]) &&
2614
- collIsEmpty(hasValueListeners[mutator]);
2615
- const emptyOtherListeners =
2616
- collIsEmpty(valueListeners[mutator]) &&
2617
- collIsEmpty(valuesListeners[mutator]);
2618
- if (!emptyIdAndHasListeners || !emptyOtherListeners) {
2619
- const changes = mutator
2620
- ? [mapClone(changedValueIds), mapClone(changedValues)]
2621
- : [changedValueIds, changedValues];
2622
- if (!emptyIdAndHasListeners) {
2623
- callIdsAndHasListenersIfChanged(
2624
- changes[0],
2625
- valueIdsListeners[mutator],
2626
- hasValueListeners[mutator],
2627
- );
2628
- }
2629
- if (!emptyOtherListeners) {
2630
- let valuesChanged;
2631
- collForEach(changes[1], ([oldValue, newValue], valueId) => {
2632
- if (newValue !== oldValue) {
2633
- callListeners(
2634
- valueListeners[mutator],
2635
- [valueId],
2636
- newValue,
2637
- oldValue,
2638
- getValueChange,
2639
- );
2640
- valuesChanged = 1;
2641
- }
2642
- });
2643
- if (valuesChanged) {
2644
- callListeners(valuesListeners[mutator], void 0, getValueChange);
2645
- }
2646
- }
2647
- }
2648
- };
2649
- const fluentTransaction = (actions, ...args) => {
2650
- transaction(() => actions(...arrayMap(args, id)));
2651
- return store;
2652
- };
2653
- const getContent = () => [getTables(), getValues()];
2654
- const getTables = () => mapToObj3(tablesMap);
2655
- const getTableIds = () => mapKeys(tablesMap);
2656
- const getTable = (tableId) => mapToObj2(mapGet(tablesMap, id(tableId)));
2657
- const getTableCellIds = (tableId) =>
2658
- mapKeys(mapGet(tableCellIds, id(tableId)));
2659
- const getRowCount = (tableId) => collSize(mapGet(tablesMap, id(tableId)));
2660
- const getRowIds = (tableId) => mapKeys(mapGet(tablesMap, id(tableId)));
2661
- const getSortedRowIds = (tableId, cellId, descending, offset = 0, limit) =>
2662
- arrayMap(
2663
- slice(
2664
- arraySort(
2665
- mapMap(mapGet(tablesMap, id(tableId)), (row, rowId) => [
2666
- isUndefined(cellId) ? rowId : mapGet(row, id(cellId)),
2667
- rowId,
2668
- ]),
2669
- ([cell1], [cell2]) =>
2670
- defaultSorter(cell1, cell2) * (descending ? -1 : 1),
2671
- ),
2672
- offset,
2673
- isUndefined(limit) ? limit : offset + limit,
2674
- ),
2675
- ([, rowId]) => rowId,
2676
- );
2677
- const getRow = (tableId, rowId) =>
2678
- mapToObj(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)));
2679
- const getCellIds = (tableId, rowId) =>
2680
- mapKeys(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)));
2681
- const getCell = (tableId, rowId, cellId) =>
2682
- mapGet(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), id(cellId));
2683
- const getValues = () => mapToObj(valuesMap);
2684
- const getValueIds = () => mapKeys(valuesMap);
2685
- const getValue = (valueId) => mapGet(valuesMap, id(valueId));
2686
- const hasTables = () => !collIsEmpty(tablesMap);
2687
- const hasTable = (tableId) => collHas(tablesMap, id(tableId));
2688
- const hasTableCell = (tableId, cellId) =>
2689
- collHas(mapGet(tableCellIds, id(tableId)), id(cellId));
2690
- const hasRow = (tableId, rowId) =>
2691
- collHas(mapGet(tablesMap, id(tableId)), id(rowId));
2692
- const hasCell = (tableId, rowId, cellId) =>
2693
- collHas(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), id(cellId));
2694
- const hasValues = () => !collIsEmpty(valuesMap);
2695
- const hasValue = (valueId) => collHas(valuesMap, id(valueId));
2696
- const getTablesJson = () => jsonStringWithMap(tablesMap);
2697
- const getValuesJson = () => jsonStringWithMap(valuesMap);
2698
- const getJson = () => jsonStringWithMap([tablesMap, valuesMap]);
2699
- const getTablesSchemaJson = () => jsonStringWithMap(tablesSchemaMap);
2700
- const getValuesSchemaJson = () => jsonStringWithMap(valuesSchemaMap);
2701
- const getSchemaJson = () =>
2702
- jsonStringWithMap([tablesSchemaMap, valuesSchemaMap]);
2703
- const setContent = (content) =>
2704
- fluentTransaction(() =>
2705
- validateContent(content) ? setValidContent(content) : 0,
2706
- );
2707
- const setTables = (tables) =>
2708
- fluentTransaction(() =>
2709
- validateTables(tables) ? setValidTables(tables) : 0,
2710
- );
2711
- const setTable = (tableId, table) =>
2712
- fluentTransaction(
2713
- (tableId2) =>
2714
- validateTable(table, tableId2) ? setValidTable(tableId2, table) : 0,
2715
- tableId,
2716
- );
2717
- const setRow = (tableId, rowId, row) =>
2718
- fluentTransaction(
2719
- (tableId2, rowId2) =>
2720
- validateRow(tableId2, rowId2, row)
2721
- ? setValidRow(tableId2, getOrCreateTable(tableId2), rowId2, row)
2722
- : 0,
2723
- tableId,
2724
- rowId,
2725
- );
2726
- const addRow = (tableId, row, reuseRowIds = true) =>
2727
- transaction(() => {
2728
- let rowId = void 0;
2729
- if (validateRow(tableId, rowId, row)) {
2730
- tableId = id(tableId);
2731
- setValidRow(
2732
- tableId,
2733
- getOrCreateTable(tableId),
2734
- (rowId = getNewRowId(tableId, reuseRowIds ? 1 : 0)),
2735
- row,
2736
- );
2737
- }
2738
- return rowId;
2739
- });
2740
- const setPartialRow = (tableId, rowId, partialRow) =>
2741
- fluentTransaction(
2742
- (tableId2, rowId2) => {
2743
- if (validateRow(tableId2, rowId2, partialRow, 1)) {
2744
- const table = getOrCreateTable(tableId2);
2745
- objToArray(partialRow, (cell, cellId) =>
2746
- setCellIntoDefaultRow(tableId2, table, rowId2, cellId, cell),
2747
- );
2748
- }
2749
- },
2750
- tableId,
2751
- rowId,
2752
- );
2753
- const setCell = (tableId, rowId, cellId, cell) =>
2754
- fluentTransaction(
2755
- (tableId2, rowId2, cellId2) =>
2756
- ifNotUndefined(
2757
- getValidatedCell(
2758
- tableId2,
2759
- rowId2,
2760
- cellId2,
2761
- isFunction(cell) ? cell(getCell(tableId2, rowId2, cellId2)) : cell,
2762
- ),
2763
- (validCell) =>
2764
- setCellIntoDefaultRow(
2765
- tableId2,
2766
- getOrCreateTable(tableId2),
2767
- rowId2,
2768
- cellId2,
2769
- validCell,
2770
- ),
2771
- ),
2772
- tableId,
2773
- rowId,
2774
- cellId,
2775
- );
2776
- const setValues = (values) =>
2777
- fluentTransaction(() =>
2778
- validateValues(values) ? setValidValues(values) : 0,
2779
- );
2780
- const setPartialValues = (partialValues) =>
2781
- fluentTransaction(() =>
2782
- validateValues(partialValues, 1)
2783
- ? objToArray(partialValues, (value, valueId) =>
2784
- setValidValue(valueId, value),
2785
- )
2786
- : 0,
2787
- );
2788
- const setValue = (valueId, value) =>
2789
- fluentTransaction(
2790
- (valueId2) =>
2791
- ifNotUndefined(
2792
- getValidatedValue(
2793
- valueId2,
2794
- isFunction(value) ? value(getValue(valueId2)) : value,
2795
- ),
2796
- (validValue) => setValidValue(valueId2, validValue),
2797
- ),
2798
- valueId,
2799
- );
2800
- const applyChanges = (changes) =>
2801
- fluentTransaction(() => {
2802
- objToArray(changes[0], (table, tableId) =>
2803
- isUndefined(table)
2804
- ? delTable(tableId)
2805
- : objToArray(table, (row, rowId) =>
2806
- isUndefined(row)
2807
- ? delRow(tableId, rowId)
2808
- : objToArray(row, (cell, cellId) =>
2809
- setOrDelCell(store, tableId, rowId, cellId, cell),
2810
- ),
2811
- ),
2812
- );
2813
- objToArray(changes[1], (value, valueId) =>
2814
- setOrDelValue(store, valueId, value),
2815
- );
2816
- });
2817
- const setTablesJson = (tablesJson) => {
2818
- try {
2819
- setOrDelTables(jsonParse(tablesJson));
2820
- } catch (e) {}
2821
- return store;
2822
- };
2823
- const setValuesJson = (valuesJson) => {
2824
- try {
2825
- setOrDelValues(jsonParse(valuesJson));
2826
- } catch (e) {}
2827
- return store;
2828
- };
2829
- const setJson = (tablesAndValuesJson) =>
2830
- fluentTransaction(() => {
2831
- try {
2832
- const [tables, values] = jsonParse(tablesAndValuesJson);
2833
- setOrDelTables(tables);
2834
- setOrDelValues(values);
2835
- } catch (e) {
2836
- setTablesJson(tablesAndValuesJson);
2837
- }
2838
- });
2839
- const setTablesSchema = (tablesSchema) =>
2840
- fluentTransaction(() => {
2841
- if ((hasTablesSchema = validateTablesSchema(tablesSchema))) {
2842
- setValidTablesSchema(tablesSchema);
2843
- if (!collIsEmpty(tablesMap)) {
2844
- const tables = getTables();
2845
- delTables();
2846
- setTables(tables);
2847
- }
2848
- }
2849
- });
2850
- const setValuesSchema = (valuesSchema) =>
2851
- fluentTransaction(() => {
2852
- if ((hasValuesSchema = validateValuesSchema(valuesSchema))) {
2853
- const values = getValues();
2854
- delValuesSchema();
2855
- delValues();
2856
- hasValuesSchema = true;
2857
- setValidValuesSchema(valuesSchema);
2858
- setValues(values);
2859
- }
2860
- });
2861
- const setSchema = (tablesSchema, valuesSchema) =>
2862
- fluentTransaction(() => {
2863
- setTablesSchema(tablesSchema);
2864
- setValuesSchema(valuesSchema);
2865
- });
2866
- const delTables = () => fluentTransaction(() => setValidTables({}));
2867
- const delTable = (tableId) =>
2868
- fluentTransaction(
2869
- (tableId2) =>
2870
- collHas(tablesMap, tableId2) ? delValidTable(tableId2) : 0,
2871
- tableId,
2872
- );
2873
- const delRow = (tableId, rowId) =>
2874
- fluentTransaction(
2875
- (tableId2, rowId2) =>
2876
- ifNotUndefined(mapGet(tablesMap, tableId2), (tableMap) =>
2877
- collHas(tableMap, rowId2)
2878
- ? delValidRow(tableId2, tableMap, rowId2)
2879
- : 0,
2880
- ),
2881
- tableId,
2882
- rowId,
2883
- );
2884
- const delCell = (tableId, rowId, cellId, forceDel) =>
2885
- fluentTransaction(
2886
- (tableId2, rowId2, cellId2) =>
2887
- ifNotUndefined(mapGet(tablesMap, tableId2), (tableMap) =>
2888
- ifNotUndefined(mapGet(tableMap, rowId2), (rowMap) =>
2889
- collHas(rowMap, cellId2)
2890
- ? delValidCell(
2891
- tableId2,
2892
- tableMap,
2893
- rowId2,
2894
- rowMap,
2895
- cellId2,
2896
- forceDel,
2897
- )
2898
- : 0,
2899
- ),
2900
- ),
2901
- tableId,
2902
- rowId,
2903
- cellId,
2904
- );
2905
- const delValues = () => fluentTransaction(() => setValidValues({}));
2906
- const delValue = (valueId) =>
2907
- fluentTransaction(
2908
- (valueId2) =>
2909
- collHas(valuesMap, valueId2) ? delValidValue(valueId2) : 0,
2910
- valueId,
2911
- );
2912
- const delTablesSchema = () =>
2913
- fluentTransaction(() => {
2914
- setValidTablesSchema({});
2915
- hasTablesSchema = false;
2916
- });
2917
- const delValuesSchema = () =>
2918
- fluentTransaction(() => {
2919
- setValidValuesSchema({});
2920
- hasValuesSchema = false;
2921
- });
2922
- const delSchema = () =>
2923
- fluentTransaction(() => {
2924
- delTablesSchema();
2925
- delValuesSchema();
2926
- });
2927
- const transaction = (actions, doRollback) => {
2928
- if (transactions != -1) {
2929
- startTransaction();
2930
- const result = actions();
2931
- finishTransaction(doRollback);
2932
- return result;
2933
- }
2934
- };
2935
- const startTransaction = () => {
2936
- var _a;
2937
- if (transactions != -1) {
2938
- transactions++;
2939
- }
2940
- if (transactions == 1) {
2941
- (_a = internalListeners[0]) == null ? void 0 : _a.call(internalListeners);
2942
- callListeners(startTransactionListeners);
2943
- }
2944
- return store;
2945
- };
2946
- const getTransactionChanges = () => [
2947
- mapToObj(
2948
- changedCells,
2949
- (table, tableId) =>
2950
- mapGet(changedTableIds, tableId) === -1
2951
- ? void 0
2952
- : mapToObj(
2953
- table,
2954
- (row, rowId) =>
2955
- mapGet(mapGet(changedRowIds, tableId), rowId) === -1
2956
- ? void 0
2957
- : mapToObj(
2958
- row,
2959
- ([, newCell]) => newCell,
2960
- (changedCell) => pairIsEqual(changedCell),
2961
- ),
2962
- collIsEmpty,
2963
- objIsEmpty,
2964
- ),
2965
- collIsEmpty,
2966
- objIsEmpty,
2967
- ),
2968
- mapToObj(
2969
- changedValues,
2970
- ([, newValue]) => newValue,
2971
- (changedValue) => pairIsEqual(changedValue),
2972
- ),
2973
- 1,
2974
- ];
2975
- const getTransactionLog = () => [
2976
- !collIsEmpty(changedCells),
2977
- !collIsEmpty(changedValues),
2978
- mapToObj3(changedCells, pairClone, pairIsEqual),
2979
- mapToObj3(invalidCells),
2980
- mapToObj(changedValues, pairClone, pairIsEqual),
2981
- mapToObj(invalidValues),
2982
- mapToObj(changedTableIds),
2983
- mapToObj2(changedRowIds),
2984
- mapToObj3(changedCellIds),
2985
- mapToObj(changedValueIds),
2986
- ];
2987
- const finishTransaction = (doRollback) => {
2988
- var _a, _b;
2989
- if (transactions > 0) {
2990
- transactions--;
2991
- if (transactions == 0) {
2992
- transactions = 1;
2993
- callInvalidCellListeners(1);
2994
- if (!collIsEmpty(changedCells)) {
2995
- callTabularListenersForChanges(1);
2996
- }
2997
- callInvalidValueListeners(1);
2998
- if (!collIsEmpty(changedValues)) {
2999
- callValuesListenersForChanges(1);
3000
- }
3001
- if (doRollback == null ? void 0 : doRollback(store)) {
3002
- collForEach(changedCells, (table, tableId) =>
3003
- collForEach(table, (row, rowId) =>
3004
- collForEach(row, ([oldCell], cellId) =>
3005
- setOrDelCell(store, tableId, rowId, cellId, oldCell),
3006
- ),
3007
- ),
3008
- );
3009
- collClear(changedCells);
3010
- collForEach(changedValues, ([oldValue], valueId) =>
3011
- setOrDelValue(store, valueId, oldValue),
3012
- );
3013
- collClear(changedValues);
3014
- }
3015
- callListeners(finishTransactionListeners[0], void 0);
3016
- transactions = -1;
3017
- callInvalidCellListeners(0);
3018
- if (!collIsEmpty(changedCells)) {
3019
- callTabularListenersForChanges(0);
3020
- }
3021
- callInvalidValueListeners(0);
3022
- if (!collIsEmpty(changedValues)) {
3023
- callValuesListenersForChanges(0);
3024
- }
3025
- (_a = internalListeners[1]) == null
3026
- ? void 0
3027
- : _a.call(internalListeners);
3028
- callListeners(finishTransactionListeners[1], void 0);
3029
- (_b = internalListeners[2]) == null
3030
- ? void 0
3031
- : _b.call(internalListeners);
3032
- transactions = 0;
3033
- hadTables = hasTables();
3034
- hadValues = hasValues();
3035
- arrayForEach(
3036
- [
3037
- changedTableIds,
3038
- changedTableCellIds,
3039
- changedRowCount,
3040
- changedRowIds,
3041
- changedCellIds,
3042
- changedCells,
3043
- invalidCells,
3044
- changedValueIds,
3045
- changedValues,
3046
- invalidValues,
3047
- ],
3048
- collClear,
3049
- );
3050
- }
3051
- }
3052
- return store;
3053
- };
3054
- const forEachTable = (tableCallback) =>
3055
- collForEach(tablesMap, (tableMap, tableId) =>
3056
- tableCallback(tableId, (rowCallback) =>
3057
- collForEach(tableMap, (rowMap, rowId) =>
3058
- rowCallback(rowId, (cellCallback) =>
3059
- mapForEach(rowMap, cellCallback),
3060
- ),
3061
- ),
3062
- ),
3063
- );
3064
- const forEachTableCell = (tableId, tableCellCallback) =>
3065
- mapForEach(mapGet(tableCellIds, id(tableId)), tableCellCallback);
3066
- const forEachRow = (tableId, rowCallback) =>
3067
- collForEach(mapGet(tablesMap, id(tableId)), (rowMap, rowId) =>
3068
- rowCallback(rowId, (cellCallback) => mapForEach(rowMap, cellCallback)),
3069
- );
3070
- const forEachCell = (tableId, rowId, cellCallback) =>
3071
- mapForEach(mapGet(mapGet(tablesMap, id(tableId)), id(rowId)), cellCallback);
3072
- const forEachValue = (valueCallback) => mapForEach(valuesMap, valueCallback);
3073
- const addSortedRowIdsListener = (
3074
- tableId,
3075
- cellId,
3076
- descending,
3077
- offset,
3078
- limit,
3079
- listener,
3080
- mutator,
3081
- ) => {
3082
- let sortedRowIds = getSortedRowIds(
3083
- tableId,
3084
- cellId,
3085
- descending,
3086
- offset,
3087
- limit,
3088
- );
3089
- return addListener(
3090
- () => {
3091
- const newSortedRowIds = getSortedRowIds(
3092
- tableId,
3093
- cellId,
3094
- descending,
3095
- offset,
3096
- limit,
3097
- );
3098
- if (!arrayIsEqual(newSortedRowIds, sortedRowIds)) {
3099
- sortedRowIds = newSortedRowIds;
3100
- listener(
3101
- store,
3102
- tableId,
3103
- cellId,
3104
- descending,
3105
- offset,
3106
- limit,
3107
- sortedRowIds,
3108
- );
3109
- }
3110
- },
3111
- sortedRowIdsListeners[mutator ? 1 : 0],
3112
- [tableId, cellId],
3113
- [getTableIds],
3114
- );
3115
- };
3116
- const addStartTransactionListener = (listener) =>
3117
- addListener(listener, startTransactionListeners);
3118
- const addWillFinishTransactionListener = (listener) =>
3119
- addListener(listener, finishTransactionListeners[0]);
3120
- const addDidFinishTransactionListener = (listener) =>
3121
- addListener(listener, finishTransactionListeners[1]);
3122
- const callListener = (listenerId) => {
3123
- callListenerImpl(listenerId);
3124
- return store;
3125
- };
3126
- const delListener = (listenerId) => {
3127
- delListenerImpl(listenerId);
3128
- return store;
3129
- };
3130
- const getListenerStats = () => ({
3131
- hasTables: pairCollSize2(hasTablesListeners),
3132
- tables: pairCollSize2(tablesListeners),
3133
- tableIds: pairCollSize2(tableIdsListeners),
3134
- hasTable: pairCollSize2(hasTableListeners),
3135
- table: pairCollSize2(tableListeners),
3136
- tableCellIds: pairCollSize2(tableCellIdsListeners),
3137
- hasTableCell: pairCollSize2(hasTableCellListeners, collSize3),
3138
- rowCount: pairCollSize2(rowCountListeners),
3139
- rowIds: pairCollSize2(rowIdsListeners),
3140
- sortedRowIds: pairCollSize2(sortedRowIdsListeners),
3141
- hasRow: pairCollSize2(hasRowListeners, collSize3),
3142
- row: pairCollSize2(rowListeners, collSize3),
3143
- cellIds: pairCollSize2(cellIdsListeners, collSize3),
3144
- hasCell: pairCollSize2(hasCellListeners, collSize4),
3145
- cell: pairCollSize2(cellListeners, collSize4),
3146
- invalidCell: pairCollSize2(invalidCellListeners, collSize4),
3147
- hasValues: pairCollSize2(hasValuesListeners),
3148
- values: pairCollSize2(valuesListeners),
3149
- valueIds: pairCollSize2(valueIdsListeners),
3150
- hasValue: pairCollSize2(hasValueListeners),
3151
- value: pairCollSize2(valueListeners),
3152
- invalidValue: pairCollSize2(invalidValueListeners),
3153
- transaction:
3154
- collSize2(startTransactionListeners) +
3155
- pairCollSize2(finishTransactionListeners),
3156
- });
3157
- const setInternalListeners = (
3158
- preStartTransaction,
3159
- preFinishTransaction,
3160
- postFinishTransaction,
3161
- cellChanged2,
3162
- valueChanged2,
3163
- ) =>
3164
- (internalListeners = [
3165
- preStartTransaction,
3166
- preFinishTransaction,
3167
- postFinishTransaction,
3168
- cellChanged2,
3169
- valueChanged2,
3170
- ]);
3171
- const store = {
3172
- getContent,
3173
- getTables,
3174
- getTableIds,
3175
- getTable,
3176
- getTableCellIds,
3177
- getRowCount,
3178
- getRowIds,
3179
- getSortedRowIds,
3180
- getRow,
3181
- getCellIds,
3182
- getCell,
3183
- getValues,
3184
- getValueIds,
3185
- getValue,
3186
- hasTables,
3187
- hasTable,
3188
- hasTableCell,
3189
- hasRow,
3190
- hasCell,
3191
- hasValues,
3192
- hasValue,
3193
- getTablesJson,
3194
- getValuesJson,
3195
- getJson,
3196
- getTablesSchemaJson,
3197
- getValuesSchemaJson,
3198
- getSchemaJson,
3199
- hasTablesSchema: () => hasTablesSchema,
3200
- hasValuesSchema: () => hasValuesSchema,
3201
- setContent,
3202
- setTables,
3203
- setTable,
3204
- setRow,
3205
- addRow,
3206
- setPartialRow,
3207
- setCell,
3208
- setValues,
3209
- setPartialValues,
3210
- setValue,
3211
- applyChanges,
3212
- setTablesJson,
3213
- setValuesJson,
3214
- setJson,
3215
- setTablesSchema,
3216
- setValuesSchema,
3217
- setSchema,
3218
- delTables,
3219
- delTable,
3220
- delRow,
3221
- delCell,
3222
- delValues,
3223
- delValue,
3224
- delTablesSchema,
3225
- delValuesSchema,
3226
- delSchema,
3227
- transaction,
3228
- startTransaction,
3229
- getTransactionChanges,
3230
- getTransactionLog,
3231
- finishTransaction,
3232
- forEachTable,
3233
- forEachTableCell,
3234
- forEachRow,
3235
- forEachCell,
3236
- forEachValue,
3237
- addSortedRowIdsListener,
3238
- addStartTransactionListener,
3239
- addWillFinishTransactionListener,
3240
- addDidFinishTransactionListener,
3241
- callListener,
3242
- delListener,
3243
- getListenerStats,
3244
- isMergeable: () => false,
3245
- // only used internally by other modules
3246
- createStore,
3247
- addListener,
3248
- callListeners,
3249
- setInternalListeners,
3250
- };
3251
- objToArray(
3252
- {
3253
- [HAS + TABLES]: [0, hasTablesListeners, [], () => [hasTables()]],
3254
- [TABLES]: [0, tablesListeners],
3255
- [TABLE_IDS]: [0, tableIdsListeners],
3256
- [HAS + TABLE]: [
3257
- 1,
3258
- hasTableListeners,
3259
- [getTableIds],
3260
- (ids) => [hasTable(...ids)],
3261
- ],
3262
- [TABLE]: [1, tableListeners, [getTableIds]],
3263
- [TABLE + CELL_IDS]: [1, tableCellIdsListeners, [getTableIds]],
3264
- [HAS + TABLE + CELL]: [
3265
- 2,
3266
- hasTableCellListeners,
3267
- [getTableIds, getTableCellIds],
3268
- (ids) => [hasTableCell(...ids)],
3269
- ],
3270
- [ROW_COUNT]: [1, rowCountListeners, [getTableIds]],
3271
- [ROW_IDS]: [1, rowIdsListeners, [getTableIds]],
3272
- [HAS + ROW]: [
3273
- 2,
3274
- hasRowListeners,
3275
- [getTableIds, getRowIds],
3276
- (ids) => [hasRow(...ids)],
3277
- ],
3278
- [ROW]: [2, rowListeners, [getTableIds, getRowIds]],
3279
- [CELL_IDS]: [2, cellIdsListeners, [getTableIds, getRowIds]],
3280
- [HAS + CELL]: [
3281
- 3,
3282
- hasCellListeners,
3283
- [getTableIds, getRowIds, getCellIds],
3284
- (ids) => [hasCell(...ids)],
3285
- ],
3286
- [CELL]: [
3287
- 3,
3288
- cellListeners,
3289
- [getTableIds, getRowIds, getCellIds],
3290
- (ids) => pairNew(getCell(...ids)),
3291
- ],
3292
- InvalidCell: [3, invalidCellListeners],
3293
- [HAS + VALUES]: [0, hasValuesListeners, [], () => [hasValues()]],
3294
- [VALUES]: [0, valuesListeners],
3295
- [VALUE_IDS]: [0, valueIdsListeners],
3296
- [HAS + VALUE]: [
3297
- 1,
3298
- hasValueListeners,
3299
- [getValueIds],
3300
- (ids) => [hasValue(...ids)],
3301
- ],
3302
- [VALUE]: [
3303
- 1,
3304
- valueListeners,
3305
- [getValueIds],
3306
- (ids) => pairNew(getValue(ids[0])),
3307
- ],
3308
- InvalidValue: [1, invalidValueListeners],
3309
- },
3310
- ([argumentCount, idSetNode, pathGetters, extraArgsGetter], listenable) => {
3311
- store[ADD + listenable + LISTENER] = (...args) =>
3312
- addListener(
3313
- args[argumentCount],
3314
- idSetNode[args[argumentCount + 1] ? 1 : 0],
3315
- argumentCount > 0 ? slice(args, 0, argumentCount) : void 0,
3316
- pathGetters,
3317
- extraArgsGetter,
3318
- );
3319
- },
3320
- );
3321
- return objFreeze(store);
3322
- };
3323
-
3324
- var __pow = Math.pow;
3325
- const SHIFT36 = __pow(2, 36);
3326
- const SHIFT30 = __pow(2, 30);
3327
- const SHIFT24 = __pow(2, 24);
3328
- const SHIFT18 = __pow(2, 18);
3329
- const SHIFT12 = __pow(2, 12);
3330
- const SHIFT6 = __pow(2, 6);
3331
- const encodeTimeAndCounter = (logicalTime42, counter24) =>
3332
- encode(logicalTime42 / SHIFT36) +
3333
- encode(logicalTime42 / SHIFT30) +
3334
- encode(logicalTime42 / SHIFT24) +
3335
- encode(logicalTime42 / SHIFT18) +
3336
- encode(logicalTime42 / SHIFT12) +
3337
- encode(logicalTime42 / SHIFT6) +
3338
- encode(logicalTime42) +
3339
- encode(counter24 / SHIFT18) +
3340
- encode(counter24 / SHIFT12) +
3341
- encode(counter24 / SHIFT6) +
3342
- encode(counter24);
3343
- const decodeTimeAndCounter = (hlc16) => [
3344
- decode(hlc16, 0) * SHIFT36 +
3345
- decode(hlc16, 1) * SHIFT30 +
3346
- decode(hlc16, 2) * SHIFT24 +
3347
- decode(hlc16, 3) * SHIFT18 +
3348
- decode(hlc16, 4) * SHIFT12 +
3349
- decode(hlc16, 5) * SHIFT6 +
3350
- decode(hlc16, 6),
3351
- decode(hlc16, 7) * SHIFT18 +
3352
- decode(hlc16, 8) * SHIFT12 +
3353
- decode(hlc16, 9) * SHIFT6 +
3354
- decode(hlc16, 10),
3355
- ];
3356
- const getHlcFunctions = (uniqueId) => {
3357
- let logicalTime = 0;
3358
- let lastCounter = -1;
3359
- const clientPart = ifNotUndefined(
3360
- uniqueId,
3361
- (uniqueId2) => {
3362
- const clientHash30 = getHash(uniqueId2);
3363
- return (
3364
- encode(clientHash30 / SHIFT24) +
3365
- encode(clientHash30 / SHIFT18) +
3366
- encode(clientHash30 / SHIFT12) +
3367
- encode(clientHash30 / SHIFT6) +
3368
- encode(clientHash30)
3369
- );
3370
- },
3371
- () => getUniqueId(5),
3372
- );
3373
- const getHlc = () => {
3374
- seenHlc();
3375
- return encodeTimeAndCounter(logicalTime, ++lastCounter) + clientPart;
3376
- };
3377
- const seenHlc = (hlc) => {
3378
- var _a;
3379
- const previousLogicalTime = logicalTime;
3380
- const [remoteLogicalTime, remoteCounter] =
3381
- isUndefined(hlc) || hlc == '' ? [0, 0] : decodeTimeAndCounter(hlc);
3382
- logicalTime = mathMax(
3383
- previousLogicalTime,
3384
- remoteLogicalTime,
3385
- (_a = GLOBAL.HLC_TIME) != null ? _a : Date.now(),
3386
- );
3387
- lastCounter =
3388
- logicalTime == previousLogicalTime
3389
- ? logicalTime == remoteLogicalTime
3390
- ? mathMax(lastCounter, remoteCounter)
3391
- : lastCounter
3392
- : logicalTime == remoteLogicalTime
3393
- ? remoteCounter
3394
- : -1;
3395
- };
3396
- return [getHlc, seenHlc];
3397
- };
3398
-
3399
- const LISTENER_ARGS = {
3400
- HasTable: 1,
3401
- Table: 1,
3402
- TableCellIds: 1,
3403
- HasTableCell: 2,
3404
- RowCount: 1,
3405
- RowIds: 1,
3406
- SortedRowIds: 5,
3407
- HasRow: 2,
3408
- Row: 2,
3409
- CellIds: 2,
3410
- HasCell: 3,
3411
- Cell: 3,
3412
- HasValue: 1,
3413
- Value: 1,
3414
- InvalidCell: 3,
3415
- InvalidValue: 1,
3416
- };
3417
- const newContentStampMap = (time = EMPTY_STRING) => [
3418
- stampNewMap(time),
3419
- stampNewMap(time),
3420
- ];
3421
- const validateMergeableContent = (mergeableContent) =>
3422
- isArray(mergeableContent) &&
3423
- size(mergeableContent) == 2 &&
3424
- stampValidate(mergeableContent[0], (tableStamps) =>
3425
- objValidate(
3426
- tableStamps,
3427
- (tableStamp) =>
3428
- stampValidate(tableStamp, (rowStamps) =>
3429
- objValidate(
3430
- rowStamps,
3431
- (rowStamp) =>
3432
- stampValidate(rowStamp, (cellStamps) =>
3433
- objValidate(
3434
- cellStamps,
3435
- (cellStamp) =>
3436
- stampValidate(cellStamp, isCellOrValueOrNullOrUndefined),
3437
- void 0,
3438
- 1,
3439
- ),
3440
- ),
3441
- void 0,
3442
- 1,
3443
- ),
3444
- ),
3445
- void 0,
3446
- 1,
3447
- ),
3448
- ) &&
3449
- stampValidate(mergeableContent[1], (values) =>
3450
- objValidate(
3451
- values,
3452
- (value) => stampValidate(value, isCellOrValueOrNullOrUndefined),
3453
- void 0,
3454
- 1,
3455
- ),
3456
- );
3457
- const createMergeableStore = (uniqueId) => {
3458
- let listeningToRawStoreChanges = 1;
3459
- let contentStampMap = newContentStampMap();
3460
- let defaultingContent = 0;
3461
- const touchedCells = mapNew();
3462
- const touchedValues = setNew();
3463
- const [getHlc, seenHlc] = getHlcFunctions(uniqueId);
3464
- const store = createStore();
3465
- const disableListeningToRawStoreChanges = (actions) => {
3466
- const wasListening = listeningToRawStoreChanges;
3467
- listeningToRawStoreChanges = 0;
3468
- actions();
3469
- listeningToRawStoreChanges = wasListening;
3470
- return mergeableStore;
3471
- };
3472
- const mergeContentOrChanges = (contentOrChanges, isContent = 0) => {
3473
- const tablesChanges = {};
3474
- const valuesChanges = {};
3475
- const [
3476
- [tablesObj, incomingTablesTime = EMPTY_STRING, incomingTablesHash = 0],
3477
- values,
3478
- ] = contentOrChanges;
3479
- const [tablesStampMap, valuesStampMap] = contentStampMap;
3480
- const [tableStampMaps, oldTablesTime, oldTablesHash] = tablesStampMap;
3481
- let tablesHash = isContent ? incomingTablesHash : oldTablesHash;
3482
- let tablesTime = incomingTablesTime;
3483
- objForEach(
3484
- tablesObj,
3485
- (
3486
- [rowsObj, incomingTableTime = EMPTY_STRING, incomingTableHash = 0],
3487
- tableId,
3488
- ) => {
3489
- const tableStampMap = mapEnsure(tableStampMaps, tableId, stampNewMap);
3490
- const [rowStampMaps, oldTableTime, oldTableHash] = tableStampMap;
3491
- let tableHash = isContent ? incomingTableHash : oldTableHash;
3492
- let tableTime = incomingTableTime;
3493
- objForEach(rowsObj, (row, rowId) => {
3494
- const [rowTime, oldRowHash, rowHash] = mergeCellsOrValues(
3495
- row,
3496
- mapEnsure(rowStampMaps, rowId, stampNewMap),
3497
- objEnsure(objEnsure(tablesChanges, tableId, objNew), rowId, objNew),
3498
- isContent,
3499
- );
3500
- tableHash ^= isContent
3501
- ? 0
3502
- : (oldRowHash ? hashIdAndHash(rowId, oldRowHash) : 0) ^
3503
- hashIdAndHash(rowId, rowHash);
3504
- tableTime = getLatestTime(tableTime, rowTime);
3505
- });
3506
- tableHash ^= isContent
3507
- ? 0
3508
- : replaceTimeHash(oldTableTime, incomingTableTime);
3509
- stampUpdate(tableStampMap, incomingTableTime, tableHash);
3510
- tablesHash ^= isContent
3511
- ? 0
3512
- : (oldTableHash ? hashIdAndHash(tableId, oldTableHash) : 0) ^
3513
- hashIdAndHash(tableId, tableStampMap[2]);
3514
- tablesTime = getLatestTime(tablesTime, tableTime);
3515
- },
3516
- );
3517
- tablesHash ^= isContent
3518
- ? 0
3519
- : replaceTimeHash(oldTablesTime, incomingTablesTime);
3520
- stampUpdate(tablesStampMap, incomingTablesTime, tablesHash);
3521
- const [valuesTime] = mergeCellsOrValues(
3522
- values,
3523
- valuesStampMap,
3524
- valuesChanges,
3525
- isContent,
3526
- );
3527
- seenHlc(getLatestTime(tablesTime, valuesTime));
3528
- return [tablesChanges, valuesChanges, 1];
3529
- };
3530
- const mergeCellsOrValues = (
3531
- things,
3532
- thingsStampMap,
3533
- thingsChanges,
3534
- isContent,
3535
- ) => {
3536
- const [
3537
- thingsObj,
3538
- incomingThingsTime = EMPTY_STRING,
3539
- incomingThingsHash = 0,
3540
- ] = things;
3541
- const [thingStampMaps, oldThingsTime, oldThingsHash] = thingsStampMap;
3542
- let thingsTime = incomingThingsTime;
3543
- let thingsHash = isContent ? incomingThingsHash : oldThingsHash;
3544
- objForEach(
3545
- thingsObj,
3546
- ([thing, thingTime, incomingThingHash = 0], thingId) => {
3547
- const thingStampMap = mapEnsure(thingStampMaps, thingId, () => [
3548
- void 0,
3549
- EMPTY_STRING,
3550
- 0,
3551
- ]);
3552
- const [, oldThingTime, oldThingHash] = thingStampMap;
3553
- if (!oldThingTime || thingTime > oldThingTime) {
3554
- stampUpdate(
3555
- thingStampMap,
3556
- thingTime,
3557
- isContent
3558
- ? incomingThingHash
3559
- : getHash(
3560
- jsonStringWithMap(thing != null ? thing : null) +
3561
- ':' +
3562
- thingTime,
3563
- ),
3564
- );
3565
- thingStampMap[0] = thing;
3566
- thingsChanges[thingId] = thing;
3567
- thingsHash ^= isContent
3568
- ? 0
3569
- : hashIdAndHash(thingId, oldThingHash) ^
3570
- hashIdAndHash(thingId, thingStampMap[2]);
3571
- thingsTime = getLatestTime(thingsTime, thingTime);
3572
- }
3573
- },
3574
- );
3575
- thingsHash ^= isContent
3576
- ? 0
3577
- : replaceTimeHash(oldThingsTime, incomingThingsTime);
3578
- stampUpdate(thingsStampMap, incomingThingsTime, thingsHash);
3579
- return [thingsTime, oldThingsHash, thingsStampMap[2]];
3580
- };
3581
- const preStartTransaction = () => {};
3582
- const preFinishTransaction = () => {};
3583
- const postFinishTransaction = () => {
3584
- collClear(touchedCells);
3585
- collClear(touchedValues);
3586
- };
3587
- const cellChanged = (tableId, rowId, cellId, newCell) => {
3588
- setAdd(
3589
- mapEnsure(mapEnsure(touchedCells, tableId, mapNew), rowId, setNew),
3590
- cellId,
3591
- );
3592
- if (listeningToRawStoreChanges) {
3593
- mergeContentOrChanges([
3594
- [
3595
- {
3596
- [tableId]: [
3597
- {
3598
- [rowId]: [
3599
- {
3600
- [cellId]: [
3601
- newCell,
3602
- defaultingContent ? EMPTY_STRING : getHlc(),
3603
- ],
3604
- },
3605
- ],
3606
- },
3607
- ],
3608
- },
3609
- ],
3610
- [{}],
3611
- 1,
3612
- ]);
3613
- }
3614
- };
3615
- const valueChanged = (valueId, newValue) => {
3616
- setAdd(touchedValues, valueId);
3617
- if (listeningToRawStoreChanges) {
3618
- mergeContentOrChanges([
3619
- [{}],
3620
- [{[valueId]: [newValue, defaultingContent ? EMPTY_STRING : getHlc()]}],
3621
- 1,
3622
- ]);
3623
- }
3624
- };
3625
- const getMergeableContent = () => [
3626
- stampMapToObjWithHash(contentStampMap[0], (tableStampMap) =>
3627
- stampMapToObjWithHash(tableStampMap, (rowStampMap) =>
3628
- stampMapToObjWithHash(rowStampMap),
3629
- ),
3630
- ),
3631
- stampMapToObjWithHash(contentStampMap[1]),
3632
- ];
3633
- const getMergeableContentHashes = () => [
3634
- contentStampMap[0][2],
3635
- contentStampMap[1][2],
3636
- ];
3637
- const getMergeableTableHashes = () =>
3638
- mapToObj(contentStampMap[0][0], getStampHash);
3639
- const getMergeableTableDiff = (otherTableHashes) => {
3640
- const newTables = stampNewObj(contentStampMap[0][1]);
3641
- const differingTableHashes = {};
3642
- mapForEach(
3643
- contentStampMap[0][0],
3644
- (tableId, [tableStampMap, tableTime, hash]) =>
3645
- objHas(otherTableHashes, tableId)
3646
- ? hash != otherTableHashes[tableId]
3647
- ? (differingTableHashes[tableId] = hash)
3648
- : 0
3649
- : (newTables[0][tableId] = stampMapToObjWithoutHash(
3650
- [tableStampMap, tableTime],
3651
- (rowStampMap) => stampMapToObjWithoutHash(rowStampMap),
3652
- )),
3653
- );
3654
- return [newTables, differingTableHashes];
3655
- };
3656
- const getMergeableRowHashes = (otherTableHashes) => {
3657
- const rowHashes = {};
3658
- objForEach(otherTableHashes, (otherTableHash, tableId) =>
3659
- ifNotUndefined(
3660
- mapGet(contentStampMap[0][0], tableId),
3661
- ([rowStampMaps, , tableHash]) =>
3662
- tableHash != otherTableHash
3663
- ? mapForEach(
3664
- rowStampMaps,
3665
- (rowId, [, , rowHash]) =>
3666
- (objEnsure(rowHashes, tableId, objNew)[rowId] = rowHash),
3667
- )
3668
- : 0,
3669
- ),
3670
- );
3671
- return rowHashes;
3672
- };
3673
- const getMergeableRowDiff = (otherTableRowHashes) => {
3674
- const newRows = stampNewObj(contentStampMap[0][1]);
3675
- const differingRowHashes = {};
3676
- objForEach(otherTableRowHashes, (otherRowHashes, tableId) => {
3677
- var _a;
3678
- return mapForEach(
3679
- (_a = mapGet(contentStampMap[0][0], tableId)) == null ? void 0 : _a[0],
3680
- (rowId, [rowStampMap, rowTime, hash]) =>
3681
- objHas(otherRowHashes, rowId)
3682
- ? hash !== otherRowHashes[rowId]
3683
- ? (objEnsure(differingRowHashes, tableId, objNew)[rowId] = hash)
3684
- : 0
3685
- : (objEnsure(newRows[0], tableId, stampNewObj)[0][rowId] =
3686
- stampMapToObjWithoutHash([rowStampMap, rowTime])),
3687
- );
3688
- });
3689
- return [newRows, differingRowHashes];
3690
- };
3691
- const getMergeableCellHashes = (otherTableRowHashes) => {
3692
- const cellHashes = {};
3693
- objForEach(otherTableRowHashes, (otherRowHashes, tableId) =>
3694
- ifNotUndefined(mapGet(contentStampMap[0][0], tableId), ([rowStampMaps]) =>
3695
- objForEach(otherRowHashes, (otherRowHash, rowId) =>
3696
- ifNotUndefined(
3697
- mapGet(rowStampMaps, rowId),
3698
- ([cellStampMaps, , rowHash]) =>
3699
- rowHash !== otherRowHash
3700
- ? mapForEach(
3701
- cellStampMaps,
3702
- (cellId, [, , cellHash]) =>
3703
- (objEnsure(
3704
- objEnsure(cellHashes, tableId, objNew),
3705
- rowId,
3706
- objNew,
3707
- )[cellId] = cellHash),
3708
- )
3709
- : 0,
3710
- ),
3711
- ),
3712
- ),
3713
- );
3714
- return cellHashes;
3715
- };
3716
- const getMergeableCellDiff = (otherTableRowCellHashes) => {
3717
- const [[tableStampMaps, tablesTime]] = contentStampMap;
3718
- const tablesObj = {};
3719
- objForEach(otherTableRowCellHashes, (otherRowCellHashes, tableId) =>
3720
- objForEach(otherRowCellHashes, (otherCellHashes, rowId) =>
3721
- ifNotUndefined(
3722
- mapGet(tableStampMaps, tableId),
3723
- ([rowStampMaps, tableTime]) =>
3724
- ifNotUndefined(
3725
- mapGet(rowStampMaps, rowId),
3726
- ([cellStampMaps, rowTime]) =>
3727
- mapForEach(cellStampMaps, (cellId, [cell, cellTime, hash]) =>
3728
- hash !== otherCellHashes[cellId]
3729
- ? (objEnsure(
3730
- objEnsure(tablesObj, tableId, () =>
3731
- stampNewObj(tableTime),
3732
- )[0],
3733
- rowId,
3734
- () => stampNewObj(rowTime),
3735
- )[0][cellId] = [cell, cellTime])
3736
- : 0,
3737
- ),
3738
- ),
3739
- ),
3740
- ),
3741
- );
3742
- return stampNew(tablesObj, tablesTime);
3743
- };
3744
- const getMergeableValueHashes = () =>
3745
- mapToObj(contentStampMap[1][0], getStampHash);
3746
- const getMergeableValueDiff = (otherValueHashes) => {
3747
- const [, [valueStampMaps, valuesTime]] = contentStampMap;
3748
- const values = mapToObj(
3749
- valueStampMaps,
3750
- stampClone,
3751
- ([, , hash], valueId) =>
3752
- hash == (otherValueHashes == null ? void 0 : otherValueHashes[valueId]),
3753
- );
3754
- return stampNew(values, valuesTime);
3755
- };
3756
- const setMergeableContent = (mergeableContent) =>
3757
- disableListeningToRawStoreChanges(() =>
3758
- validateMergeableContent(mergeableContent)
3759
- ? store.transaction(() => {
3760
- store.delTables().delValues();
3761
- contentStampMap = newContentStampMap();
3762
- store.applyChanges(mergeContentOrChanges(mergeableContent, 1));
3763
- })
3764
- : 0,
3765
- );
3766
- const setDefaultContent = (content) => {
3767
- store.transaction(() => {
3768
- defaultingContent = 1;
3769
- store.setContent(content);
3770
- defaultingContent = 0;
3771
- });
3772
- return mergeableStore;
3773
- };
3774
- const getTransactionMergeableChanges = (withHashes = false) => {
3775
- const [
3776
- [tableStampMaps, tablesTime, tablesHash],
3777
- [valueStampMaps, valuesTime, valuesHash],
3778
- ] = contentStampMap;
3779
- const newStamp = withHashes ? stampNewWithHash : stampNew;
3780
- const tablesObj = {};
3781
- collForEach(touchedCells, (touchedTable, tableId) =>
3782
- ifNotUndefined(
3783
- mapGet(tableStampMaps, tableId),
3784
- ([rowStampMaps, tableTime, tableHash]) => {
3785
- const tableObj = {};
3786
- collForEach(touchedTable, (touchedRow, rowId) =>
3787
- ifNotUndefined(
3788
- mapGet(rowStampMaps, rowId),
3789
- ([cellStampMaps, rowTime, rowHash]) => {
3790
- const rowObj = {};
3791
- collForEach(touchedRow, (cellId) => {
3792
- ifNotUndefined(
3793
- mapGet(cellStampMaps, cellId),
3794
- ([cell, time, hash]) =>
3795
- (rowObj[cellId] = newStamp(cell, time, hash)),
3796
- );
3797
- });
3798
- tableObj[rowId] = newStamp(rowObj, rowTime, rowHash);
3799
- },
3800
- ),
3801
- );
3802
- tablesObj[tableId] = newStamp(tableObj, tableTime, tableHash);
3803
- },
3804
- ),
3805
- );
3806
- const valuesObj = {};
3807
- collForEach(touchedValues, (valueId) =>
3808
- ifNotUndefined(
3809
- mapGet(valueStampMaps, valueId),
3810
- ([value, time, hash]) =>
3811
- (valuesObj[valueId] = newStamp(value, time, hash)),
3812
- ),
3813
- );
3814
- return [
3815
- newStamp(tablesObj, tablesTime, tablesHash),
3816
- newStamp(valuesObj, valuesTime, valuesHash),
3817
- 1,
3818
- ];
3819
- };
3820
- const applyMergeableChanges = (mergeableChanges) =>
3821
- disableListeningToRawStoreChanges(() =>
3822
- store.applyChanges(mergeContentOrChanges(mergeableChanges)),
3823
- );
3824
- const merge = (mergeableStore2) => {
3825
- const mergeableChanges = getMergeableContent();
3826
- const mergeableChanges2 = mergeableStore2.getMergeableContent();
3827
- mergeableStore2.applyMergeableChanges(mergeableChanges);
3828
- return applyMergeableChanges(mergeableChanges2);
3829
- };
3830
- const mergeableStore = {
3831
- getMergeableContent,
3832
- getMergeableContentHashes,
3833
- getMergeableTableHashes,
3834
- getMergeableTableDiff,
3835
- getMergeableRowHashes,
3836
- getMergeableRowDiff,
3837
- getMergeableCellHashes,
3838
- getMergeableCellDiff,
3839
- getMergeableValueHashes,
3840
- getMergeableValueDiff,
3841
- setMergeableContent,
3842
- setDefaultContent,
3843
- getTransactionMergeableChanges,
3844
- applyMergeableChanges,
3845
- merge,
3846
- };
3847
- store.setInternalListeners(
3848
- preStartTransaction,
3849
- preFinishTransaction,
3850
- postFinishTransaction,
3851
- cellChanged,
3852
- valueChanged,
3853
- );
3854
- objToArray(
3855
- store,
3856
- (method, name) =>
3857
- (mergeableStore[name] = // fluent methods
3858
- strStartsWith(name, SET) ||
3859
- strStartsWith(name, DEL) ||
3860
- strStartsWith(name, 'apply') ||
3861
- strEndsWith(name, TRANSACTION) ||
3862
- name == 'call' + LISTENER
3863
- ? (...args) => {
3864
- method(...args);
3865
- return mergeableStore;
3866
- }
3867
- : strStartsWith(name, ADD) && strEndsWith(name, LISTENER)
3868
- ? (...args) => {
3869
- var _a;
3870
- const listenerArg =
3871
- (_a = LISTENER_ARGS[slice(name, 3, -8)]) != null ? _a : 0;
3872
- const listener = args[listenerArg];
3873
- args[listenerArg] = (_store, ...args2) =>
3874
- listener(mergeableStore, ...args2);
3875
- return method(...args);
3876
- }
3877
- : name == 'isMergeable'
3878
- ? () => true
3879
- : method),
3880
- );
3881
- return objFreeze(mergeableStore);
3882
- };
3883
-
3884
- export {
3885
- createCheckpoints,
3886
- createIndexes,
3887
- createMergeableStore,
3888
- createMetrics,
3889
- createQueries,
3890
- createRelationships,
3891
- createStore,
3892
- defaultSorter,
3893
- getUniqueId,
3894
- };