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