tinybase 6.0.0-beta.0 → 6.0.0-beta.2

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