tinybase 5.4.0-beta.2 → 5.4.0-beta.3

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 (1091) hide show
  1. package/@types/mergeable-store/index.d.cts +7 -5
  2. package/@types/mergeable-store/index.d.ts +7 -5
  3. package/@types/mergeable-store/with-schemas/index.d.cts +16 -9
  4. package/@types/mergeable-store/with-schemas/index.d.ts +16 -9
  5. package/@types/persisters/index.d.cts +14 -10
  6. package/@types/persisters/index.d.ts +14 -10
  7. package/@types/persisters/persister-durable-object-storage/index.d.cts +108 -0
  8. package/@types/persisters/persister-durable-object-storage/index.d.ts +108 -0
  9. package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.cts +122 -0
  10. package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +122 -0
  11. package/@types/persisters/with-schemas/index.d.cts +14 -10
  12. package/@types/persisters/with-schemas/index.d.ts +14 -10
  13. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +4 -0
  14. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +4 -0
  15. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +5 -0
  16. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +5 -0
  17. package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.cts +60 -3
  18. package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +60 -3
  19. package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.cts +89 -7
  20. package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +89 -7
  21. package/cjs/es6/index.cjs +32 -27
  22. package/cjs/es6/indexes/index.cjs +1 -1
  23. package/cjs/es6/indexes/with-schemas/index.cjs +1 -1
  24. package/cjs/es6/mergeable-store/index.cjs +31 -27
  25. package/cjs/es6/mergeable-store/with-schemas/index.cjs +31 -27
  26. package/cjs/es6/metrics/index.cjs +1 -1
  27. package/cjs/es6/metrics/with-schemas/index.cjs +1 -1
  28. package/cjs/es6/min/index.cjs +1 -1
  29. package/cjs/es6/min/index.cjs.gz +0 -0
  30. package/cjs/es6/min/indexes/index.cjs +1 -1
  31. package/cjs/es6/min/indexes/index.cjs.gz +0 -0
  32. package/cjs/es6/min/indexes/with-schemas/index.cjs +1 -1
  33. package/cjs/es6/min/indexes/with-schemas/index.cjs.gz +0 -0
  34. package/cjs/es6/min/mergeable-store/index.cjs +1 -1
  35. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  36. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
  37. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  38. package/cjs/es6/min/metrics/index.cjs +1 -1
  39. package/cjs/es6/min/metrics/index.cjs.gz +0 -0
  40. package/cjs/es6/min/metrics/with-schemas/index.cjs +1 -1
  41. package/cjs/es6/min/metrics/with-schemas/index.cjs.gz +0 -0
  42. package/cjs/es6/min/persisters/index.cjs +1 -1
  43. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  44. package/cjs/es6/min/persisters/persister-automerge/index.cjs +1 -1
  45. package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
  46. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  47. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  48. package/cjs/es6/min/persisters/persister-browser/index.cjs +1 -1
  49. package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
  50. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  51. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  52. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  53. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  54. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  55. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  56. package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs +1 -0
  57. package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
  58. package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +1 -0
  59. package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
  60. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  65. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  66. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/persisters/persister-file/index.cjs +1 -1
  69. package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
  70. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs +1 -1
  73. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  74. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  77. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  78. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  79. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  80. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +1 -1
  81. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  82. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  83. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  84. package/cjs/es6/min/persisters/persister-pglite/index.cjs +1 -1
  85. package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
  86. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  87. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  88. package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
  89. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  90. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  91. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  92. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  93. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  94. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  95. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  96. package/cjs/es6/min/persisters/persister-remote/index.cjs +1 -1
  97. package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
  98. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  99. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  100. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  101. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  102. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  103. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  104. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  105. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  106. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  107. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  108. package/cjs/es6/min/persisters/persister-yjs/index.cjs +1 -1
  109. package/cjs/es6/min/persisters/persister-yjs/index.cjs.gz +0 -0
  110. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  111. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  112. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  113. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  114. package/cjs/es6/min/queries/index.cjs +1 -1
  115. package/cjs/es6/min/queries/index.cjs.gz +0 -0
  116. package/cjs/es6/min/queries/with-schemas/index.cjs +1 -1
  117. package/cjs/es6/min/queries/with-schemas/index.cjs.gz +0 -0
  118. package/cjs/es6/min/relationships/index.cjs +1 -1
  119. package/cjs/es6/min/relationships/index.cjs.gz +0 -0
  120. package/cjs/es6/min/relationships/with-schemas/index.cjs +1 -1
  121. package/cjs/es6/min/relationships/with-schemas/index.cjs.gz +0 -0
  122. package/cjs/es6/min/synchronizers/index.cjs +1 -1
  123. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  124. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  125. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  126. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  127. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  128. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
  129. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  130. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  131. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  132. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  133. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  134. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  135. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  136. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  137. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  138. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  139. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  140. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +1 -1
  141. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
  142. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +1 -1
  143. package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
  144. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
  145. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  146. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  147. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  148. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  149. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  150. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  151. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  152. package/cjs/es6/persisters/index.cjs +21 -9
  153. package/cjs/es6/persisters/persister-automerge/index.cjs +17 -8
  154. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +17 -8
  155. package/cjs/es6/persisters/persister-browser/index.cjs +17 -8
  156. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +17 -8
  157. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +21 -9
  158. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +21 -9
  159. package/cjs/es6/persisters/persister-durable-object-storage/index.cjs +687 -0
  160. package/cjs/es6/persisters/persister-durable-object-storage/with-schemas/index.cjs +687 -0
  161. package/cjs/es6/persisters/persister-electric-sql/index.cjs +21 -9
  162. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +21 -9
  163. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +21 -9
  164. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +21 -9
  165. package/cjs/es6/persisters/persister-file/index.cjs +17 -8
  166. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +17 -8
  167. package/cjs/es6/persisters/persister-indexed-db/index.cjs +19 -9
  168. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +19 -9
  169. package/cjs/es6/persisters/persister-libsql/index.cjs +21 -9
  170. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +21 -9
  171. package/cjs/es6/persisters/persister-partykit-client/index.cjs +23 -11
  172. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +23 -11
  173. package/cjs/es6/persisters/persister-pglite/index.cjs +19 -8
  174. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +19 -8
  175. package/cjs/es6/persisters/persister-postgres/index.cjs +19 -8
  176. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +19 -8
  177. package/cjs/es6/persisters/persister-powersync/index.cjs +21 -9
  178. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +21 -9
  179. package/cjs/es6/persisters/persister-remote/index.cjs +19 -9
  180. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +19 -9
  181. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +21 -9
  182. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +21 -9
  183. package/cjs/es6/persisters/persister-sqlite3/index.cjs +21 -9
  184. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +21 -9
  185. package/cjs/es6/persisters/persister-yjs/index.cjs +17 -8
  186. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +17 -8
  187. package/cjs/es6/persisters/with-schemas/index.cjs +21 -9
  188. package/cjs/es6/queries/index.cjs +1 -0
  189. package/cjs/es6/queries/with-schemas/index.cjs +1 -0
  190. package/cjs/es6/relationships/index.cjs +1 -1
  191. package/cjs/es6/relationships/with-schemas/index.cjs +1 -1
  192. package/cjs/es6/synchronizers/index.cjs +142 -93
  193. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +142 -93
  194. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +142 -93
  195. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +145 -97
  196. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +145 -97
  197. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +160 -98
  198. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +160 -98
  199. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +171 -97
  200. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +171 -97
  201. package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/index.cjs +980 -20
  202. package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +980 -20
  203. package/cjs/es6/synchronizers/synchronizer-ws-server-simple/index.cjs +2 -1
  204. package/cjs/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +2 -1
  205. package/cjs/es6/synchronizers/with-schemas/index.cjs +142 -93
  206. package/cjs/es6/ui-react-inspector/index.cjs +17 -8
  207. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +17 -8
  208. package/cjs/es6/with-schemas/index.cjs +32 -27
  209. package/cjs/index.cjs +31 -27
  210. package/cjs/mergeable-store/index.cjs +31 -27
  211. package/cjs/mergeable-store/with-schemas/index.cjs +31 -27
  212. package/cjs/min/index.cjs +1 -1
  213. package/cjs/min/index.cjs.gz +0 -0
  214. package/cjs/min/mergeable-store/index.cjs +1 -1
  215. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  216. package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
  217. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  218. package/cjs/min/persisters/index.cjs +1 -1
  219. package/cjs/min/persisters/index.cjs.gz +0 -0
  220. package/cjs/min/persisters/persister-automerge/index.cjs +1 -1
  221. package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
  222. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  223. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  224. package/cjs/min/persisters/persister-browser/index.cjs +1 -1
  225. package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
  226. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  227. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  228. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  229. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  230. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  231. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  232. package/cjs/min/persisters/persister-durable-object-storage/index.cjs +1 -0
  233. package/cjs/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
  234. package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +1 -0
  235. package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
  236. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  237. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  238. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  239. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  240. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  241. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  242. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  243. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  244. package/cjs/min/persisters/persister-file/index.cjs +1 -1
  245. package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
  246. package/cjs/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  247. package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  248. package/cjs/min/persisters/persister-indexed-db/index.cjs +1 -1
  249. package/cjs/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  250. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  251. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  252. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  253. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  254. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  255. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  256. package/cjs/min/persisters/persister-partykit-client/index.cjs +1 -1
  257. package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  258. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  259. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  260. package/cjs/min/persisters/persister-pglite/index.cjs +1 -1
  261. package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
  262. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  263. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  264. package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
  265. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  266. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  267. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  268. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  269. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  270. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  271. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  272. package/cjs/min/persisters/persister-remote/index.cjs +1 -1
  273. package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
  274. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  275. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  276. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  277. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  278. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  279. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  280. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  281. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  282. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  283. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  284. package/cjs/min/persisters/persister-yjs/index.cjs +1 -1
  285. package/cjs/min/persisters/persister-yjs/index.cjs.gz +0 -0
  286. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  287. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  288. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  289. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  290. package/cjs/min/synchronizers/index.cjs +1 -1
  291. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  292. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  293. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  294. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  295. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  296. package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
  297. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  298. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  299. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  300. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  301. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  302. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  303. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  304. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  305. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  306. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  307. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  308. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +1 -1
  309. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
  310. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +1 -1
  311. package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
  312. package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
  313. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  314. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  315. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  316. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  317. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  318. package/cjs/min/with-schemas/index.cjs +1 -1
  319. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  320. package/cjs/persisters/index.cjs +21 -9
  321. package/cjs/persisters/persister-automerge/index.cjs +17 -8
  322. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +17 -8
  323. package/cjs/persisters/persister-browser/index.cjs +17 -8
  324. package/cjs/persisters/persister-browser/with-schemas/index.cjs +17 -8
  325. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +21 -9
  326. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +21 -9
  327. package/cjs/persisters/persister-durable-object-storage/index.cjs +542 -0
  328. package/cjs/persisters/persister-durable-object-storage/with-schemas/index.cjs +542 -0
  329. package/cjs/persisters/persister-electric-sql/index.cjs +21 -9
  330. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +21 -9
  331. package/cjs/persisters/persister-expo-sqlite/index.cjs +21 -9
  332. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +21 -9
  333. package/cjs/persisters/persister-file/index.cjs +17 -8
  334. package/cjs/persisters/persister-file/with-schemas/index.cjs +17 -8
  335. package/cjs/persisters/persister-indexed-db/index.cjs +19 -9
  336. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +19 -9
  337. package/cjs/persisters/persister-libsql/index.cjs +21 -9
  338. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +21 -9
  339. package/cjs/persisters/persister-partykit-client/index.cjs +18 -9
  340. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +18 -9
  341. package/cjs/persisters/persister-pglite/index.cjs +19 -8
  342. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +19 -8
  343. package/cjs/persisters/persister-postgres/index.cjs +19 -8
  344. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +19 -8
  345. package/cjs/persisters/persister-powersync/index.cjs +21 -9
  346. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +21 -9
  347. package/cjs/persisters/persister-remote/index.cjs +19 -9
  348. package/cjs/persisters/persister-remote/with-schemas/index.cjs +19 -9
  349. package/cjs/persisters/persister-sqlite-wasm/index.cjs +21 -9
  350. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +21 -9
  351. package/cjs/persisters/persister-sqlite3/index.cjs +21 -9
  352. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +21 -9
  353. package/cjs/persisters/persister-yjs/index.cjs +17 -8
  354. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +17 -8
  355. package/cjs/persisters/with-schemas/index.cjs +21 -9
  356. package/cjs/synchronizers/index.cjs +119 -73
  357. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +119 -73
  358. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +119 -73
  359. package/cjs/synchronizers/synchronizer-local/index.cjs +128 -85
  360. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +128 -85
  361. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +137 -78
  362. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +137 -78
  363. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +148 -77
  364. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +148 -77
  365. package/cjs/synchronizers/synchronizer-ws-server-durable-object/index.cjs +712 -17
  366. package/cjs/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +712 -17
  367. package/cjs/synchronizers/synchronizer-ws-server-simple/index.cjs +2 -1
  368. package/cjs/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +2 -1
  369. package/cjs/synchronizers/with-schemas/index.cjs +119 -73
  370. package/cjs/ui-react-inspector/index.cjs +17 -8
  371. package/cjs/ui-react-inspector/with-schemas/index.cjs +17 -8
  372. package/cjs/with-schemas/index.cjs +31 -27
  373. package/es6/index.js +32 -27
  374. package/es6/indexes/index.js +1 -1
  375. package/es6/indexes/with-schemas/index.js +1 -1
  376. package/es6/mergeable-store/index.js +31 -27
  377. package/es6/mergeable-store/with-schemas/index.js +31 -27
  378. package/es6/metrics/index.js +1 -1
  379. package/es6/metrics/with-schemas/index.js +1 -1
  380. package/es6/min/index.js +1 -1
  381. package/es6/min/index.js.gz +0 -0
  382. package/es6/min/indexes/index.js +1 -1
  383. package/es6/min/indexes/index.js.gz +0 -0
  384. package/es6/min/indexes/with-schemas/index.js +1 -1
  385. package/es6/min/indexes/with-schemas/index.js.gz +0 -0
  386. package/es6/min/mergeable-store/index.js +1 -1
  387. package/es6/min/mergeable-store/index.js.gz +0 -0
  388. package/es6/min/mergeable-store/with-schemas/index.js +1 -1
  389. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  390. package/es6/min/metrics/index.js +1 -1
  391. package/es6/min/metrics/index.js.gz +0 -0
  392. package/es6/min/metrics/with-schemas/index.js +1 -1
  393. package/es6/min/metrics/with-schemas/index.js.gz +0 -0
  394. package/es6/min/persisters/index.js +1 -1
  395. package/es6/min/persisters/index.js.gz +0 -0
  396. package/es6/min/persisters/persister-automerge/index.js +1 -1
  397. package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  398. package/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  399. package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  400. package/es6/min/persisters/persister-browser/index.js +1 -1
  401. package/es6/min/persisters/persister-browser/index.js.gz +0 -0
  402. package/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  403. package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  404. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  405. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  406. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  407. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  408. package/es6/min/persisters/persister-durable-object-storage/index.js +1 -0
  409. package/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  410. package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
  411. package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  412. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  413. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  414. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  415. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  416. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  417. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  418. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  419. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  420. package/es6/min/persisters/persister-file/index.js +1 -1
  421. package/es6/min/persisters/persister-file/index.js.gz +0 -0
  422. package/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  423. package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  424. package/es6/min/persisters/persister-indexed-db/index.js +1 -1
  425. package/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  426. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  427. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  428. package/es6/min/persisters/persister-libsql/index.js +1 -1
  429. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  430. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  431. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  432. package/es6/min/persisters/persister-partykit-client/index.js +1 -1
  433. package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  434. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  435. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  436. package/es6/min/persisters/persister-pglite/index.js +1 -1
  437. package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  438. package/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  439. package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  440. package/es6/min/persisters/persister-postgres/index.js +1 -1
  441. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  442. package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  443. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  444. package/es6/min/persisters/persister-powersync/index.js +1 -1
  445. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  446. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  447. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  448. package/es6/min/persisters/persister-remote/index.js +1 -1
  449. package/es6/min/persisters/persister-remote/index.js.gz +0 -0
  450. package/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  451. package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  452. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  453. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  454. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  455. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  456. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  457. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  458. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  459. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  460. package/es6/min/persisters/persister-yjs/index.js +1 -1
  461. package/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  462. package/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  463. package/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  464. package/es6/min/persisters/with-schemas/index.js +1 -1
  465. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  466. package/es6/min/queries/index.js +1 -1
  467. package/es6/min/queries/index.js.gz +0 -0
  468. package/es6/min/queries/with-schemas/index.js +1 -1
  469. package/es6/min/queries/with-schemas/index.js.gz +0 -0
  470. package/es6/min/relationships/index.js +1 -1
  471. package/es6/min/relationships/index.js.gz +0 -0
  472. package/es6/min/relationships/with-schemas/index.js +1 -1
  473. package/es6/min/relationships/with-schemas/index.js.gz +0 -0
  474. package/es6/min/synchronizers/index.js +1 -1
  475. package/es6/min/synchronizers/index.js.gz +0 -0
  476. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  477. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  478. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  479. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  480. package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  481. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  482. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  483. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  484. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  485. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  486. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  487. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  488. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  489. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  490. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  491. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  492. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  493. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  494. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  495. package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  496. package/es6/min/synchronizers/with-schemas/index.js +1 -1
  497. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  498. package/es6/min/ui-react-dom/index.js +1 -1
  499. package/es6/min/ui-react-dom/index.js.gz +0 -0
  500. package/es6/min/ui-react-dom/with-schemas/index.js +1 -1
  501. package/es6/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  502. package/es6/min/ui-react-inspector/index.js +1 -1
  503. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  504. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  505. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  506. package/es6/min/with-schemas/index.js +1 -1
  507. package/es6/min/with-schemas/index.js.gz +0 -0
  508. package/es6/persisters/index.js +21 -9
  509. package/es6/persisters/persister-automerge/index.js +17 -8
  510. package/es6/persisters/persister-automerge/with-schemas/index.js +17 -8
  511. package/es6/persisters/persister-browser/index.js +17 -8
  512. package/es6/persisters/persister-browser/with-schemas/index.js +17 -8
  513. package/es6/persisters/persister-cr-sqlite-wasm/index.js +21 -9
  514. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
  515. package/es6/persisters/persister-durable-object-storage/index.js +684 -0
  516. package/es6/persisters/persister-durable-object-storage/with-schemas/index.js +684 -0
  517. package/es6/persisters/persister-electric-sql/index.js +21 -9
  518. package/es6/persisters/persister-electric-sql/with-schemas/index.js +21 -9
  519. package/es6/persisters/persister-expo-sqlite/index.js +21 -9
  520. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
  521. package/es6/persisters/persister-file/index.js +18 -9
  522. package/es6/persisters/persister-file/with-schemas/index.js +18 -9
  523. package/es6/persisters/persister-indexed-db/index.js +19 -9
  524. package/es6/persisters/persister-indexed-db/with-schemas/index.js +19 -9
  525. package/es6/persisters/persister-libsql/index.js +21 -9
  526. package/es6/persisters/persister-libsql/with-schemas/index.js +21 -9
  527. package/es6/persisters/persister-partykit-client/index.js +23 -11
  528. package/es6/persisters/persister-partykit-client/with-schemas/index.js +23 -11
  529. package/es6/persisters/persister-pglite/index.js +19 -8
  530. package/es6/persisters/persister-pglite/with-schemas/index.js +19 -8
  531. package/es6/persisters/persister-postgres/index.js +19 -8
  532. package/es6/persisters/persister-postgres/with-schemas/index.js +19 -8
  533. package/es6/persisters/persister-powersync/index.js +21 -9
  534. package/es6/persisters/persister-powersync/with-schemas/index.js +21 -9
  535. package/es6/persisters/persister-remote/index.js +19 -9
  536. package/es6/persisters/persister-remote/with-schemas/index.js +19 -9
  537. package/es6/persisters/persister-sqlite-wasm/index.js +21 -9
  538. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
  539. package/es6/persisters/persister-sqlite3/index.js +21 -9
  540. package/es6/persisters/persister-sqlite3/with-schemas/index.js +21 -9
  541. package/es6/persisters/persister-yjs/index.js +17 -8
  542. package/es6/persisters/persister-yjs/with-schemas/index.js +17 -8
  543. package/es6/persisters/with-schemas/index.js +21 -9
  544. package/es6/queries/index.js +1 -0
  545. package/es6/queries/with-schemas/index.js +1 -0
  546. package/es6/relationships/index.js +1 -1
  547. package/es6/relationships/with-schemas/index.js +1 -1
  548. package/es6/synchronizers/index.js +142 -93
  549. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +142 -93
  550. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +142 -93
  551. package/es6/synchronizers/synchronizer-local/index.js +145 -97
  552. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +145 -97
  553. package/es6/synchronizers/synchronizer-ws-client/index.js +160 -98
  554. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +160 -98
  555. package/es6/synchronizers/synchronizer-ws-server/index.js +171 -97
  556. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +171 -97
  557. package/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +980 -20
  558. package/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +980 -20
  559. package/es6/synchronizers/synchronizer-ws-server-simple/index.js +2 -1
  560. package/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +2 -1
  561. package/es6/synchronizers/with-schemas/index.js +142 -93
  562. package/es6/ui-react-dom/index.js +8 -8
  563. package/es6/ui-react-dom/with-schemas/index.js +8 -8
  564. package/es6/ui-react-inspector/index.js +21 -12
  565. package/es6/ui-react-inspector/with-schemas/index.js +21 -12
  566. package/es6/with-schemas/index.js +32 -27
  567. package/index.js +31 -27
  568. package/mergeable-store/index.js +31 -27
  569. package/mergeable-store/with-schemas/index.js +31 -27
  570. package/min/index.js +1 -1
  571. package/min/index.js.gz +0 -0
  572. package/min/mergeable-store/index.js +1 -1
  573. package/min/mergeable-store/index.js.gz +0 -0
  574. package/min/mergeable-store/with-schemas/index.js +1 -1
  575. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  576. package/min/persisters/index.js +1 -1
  577. package/min/persisters/index.js.gz +0 -0
  578. package/min/persisters/persister-automerge/index.js +1 -1
  579. package/min/persisters/persister-automerge/index.js.gz +0 -0
  580. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  581. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  582. package/min/persisters/persister-browser/index.js +1 -1
  583. package/min/persisters/persister-browser/index.js.gz +0 -0
  584. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  585. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  586. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  587. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  588. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  589. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  590. package/min/persisters/persister-durable-object-storage/index.js +1 -0
  591. package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  592. package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
  593. package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  594. package/min/persisters/persister-electric-sql/index.js +1 -1
  595. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  596. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  597. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  598. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  599. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  600. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  601. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  602. package/min/persisters/persister-file/index.js +1 -1
  603. package/min/persisters/persister-file/index.js.gz +0 -0
  604. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  605. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  606. package/min/persisters/persister-indexed-db/index.js +1 -1
  607. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  608. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  609. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  610. package/min/persisters/persister-libsql/index.js +1 -1
  611. package/min/persisters/persister-libsql/index.js.gz +0 -0
  612. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  613. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  614. package/min/persisters/persister-partykit-client/index.js +1 -1
  615. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  616. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  617. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  618. package/min/persisters/persister-pglite/index.js +1 -1
  619. package/min/persisters/persister-pglite/index.js.gz +0 -0
  620. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  621. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  622. package/min/persisters/persister-postgres/index.js +1 -1
  623. package/min/persisters/persister-postgres/index.js.gz +0 -0
  624. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  625. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  626. package/min/persisters/persister-powersync/index.js +1 -1
  627. package/min/persisters/persister-powersync/index.js.gz +0 -0
  628. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  629. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  630. package/min/persisters/persister-remote/index.js +1 -1
  631. package/min/persisters/persister-remote/index.js.gz +0 -0
  632. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  633. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  634. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  635. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  636. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  637. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  638. package/min/persisters/persister-sqlite3/index.js +1 -1
  639. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  640. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  641. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  642. package/min/persisters/persister-yjs/index.js +1 -1
  643. package/min/persisters/persister-yjs/index.js.gz +0 -0
  644. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  645. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  646. package/min/persisters/with-schemas/index.js +1 -1
  647. package/min/persisters/with-schemas/index.js.gz +0 -0
  648. package/min/synchronizers/index.js +1 -1
  649. package/min/synchronizers/index.js.gz +0 -0
  650. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  651. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  652. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  653. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  654. package/min/synchronizers/synchronizer-local/index.js +1 -1
  655. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  656. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  657. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  658. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  659. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  660. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  661. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  662. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  663. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  664. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  665. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  666. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  667. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  668. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  669. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  670. package/min/synchronizers/with-schemas/index.js +1 -1
  671. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  672. package/min/ui-react-dom/index.js +1 -1
  673. package/min/ui-react-dom/index.js.gz +0 -0
  674. package/min/ui-react-dom/with-schemas/index.js +1 -1
  675. package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  676. package/min/ui-react-inspector/index.js +1 -1
  677. package/min/ui-react-inspector/index.js.gz +0 -0
  678. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  679. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  680. package/min/with-schemas/index.js +1 -1
  681. package/min/with-schemas/index.js.gz +0 -0
  682. package/package.json +112 -8
  683. package/persisters/index.js +21 -9
  684. package/persisters/persister-automerge/index.js +17 -8
  685. package/persisters/persister-automerge/with-schemas/index.js +17 -8
  686. package/persisters/persister-browser/index.js +17 -8
  687. package/persisters/persister-browser/with-schemas/index.js +17 -8
  688. package/persisters/persister-cr-sqlite-wasm/index.js +21 -9
  689. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
  690. package/persisters/persister-durable-object-storage/index.js +539 -0
  691. package/persisters/persister-durable-object-storage/with-schemas/index.js +539 -0
  692. package/persisters/persister-electric-sql/index.js +21 -9
  693. package/persisters/persister-electric-sql/with-schemas/index.js +21 -9
  694. package/persisters/persister-expo-sqlite/index.js +21 -9
  695. package/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
  696. package/persisters/persister-file/index.js +18 -9
  697. package/persisters/persister-file/with-schemas/index.js +18 -9
  698. package/persisters/persister-indexed-db/index.js +19 -9
  699. package/persisters/persister-indexed-db/with-schemas/index.js +19 -9
  700. package/persisters/persister-libsql/index.js +21 -9
  701. package/persisters/persister-libsql/with-schemas/index.js +21 -9
  702. package/persisters/persister-partykit-client/index.js +18 -9
  703. package/persisters/persister-partykit-client/with-schemas/index.js +18 -9
  704. package/persisters/persister-pglite/index.js +19 -8
  705. package/persisters/persister-pglite/with-schemas/index.js +19 -8
  706. package/persisters/persister-postgres/index.js +19 -8
  707. package/persisters/persister-postgres/with-schemas/index.js +19 -8
  708. package/persisters/persister-powersync/index.js +21 -9
  709. package/persisters/persister-powersync/with-schemas/index.js +21 -9
  710. package/persisters/persister-remote/index.js +19 -9
  711. package/persisters/persister-remote/with-schemas/index.js +19 -9
  712. package/persisters/persister-sqlite-wasm/index.js +21 -9
  713. package/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
  714. package/persisters/persister-sqlite3/index.js +21 -9
  715. package/persisters/persister-sqlite3/with-schemas/index.js +21 -9
  716. package/persisters/persister-yjs/index.js +17 -8
  717. package/persisters/persister-yjs/with-schemas/index.js +17 -8
  718. package/persisters/with-schemas/index.js +21 -9
  719. package/readme.md +2 -2
  720. package/releases.md +23 -1
  721. package/synchronizers/index.js +119 -73
  722. package/synchronizers/synchronizer-broadcast-channel/index.js +119 -73
  723. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +119 -73
  724. package/synchronizers/synchronizer-local/index.js +128 -85
  725. package/synchronizers/synchronizer-local/with-schemas/index.js +128 -85
  726. package/synchronizers/synchronizer-ws-client/index.js +137 -78
  727. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +137 -78
  728. package/synchronizers/synchronizer-ws-server/index.js +148 -77
  729. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +148 -77
  730. package/synchronizers/synchronizer-ws-server-durable-object/index.js +712 -17
  731. package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +712 -17
  732. package/synchronizers/synchronizer-ws-server-simple/index.js +2 -1
  733. package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +2 -1
  734. package/synchronizers/with-schemas/index.js +119 -73
  735. package/ui-react-dom/index.js +8 -8
  736. package/ui-react-dom/with-schemas/index.js +8 -8
  737. package/ui-react-inspector/index.js +21 -12
  738. package/ui-react-inspector/with-schemas/index.js +21 -12
  739. package/umd/es6/index.js +32 -27
  740. package/umd/es6/indexes/index.js +5 -1
  741. package/umd/es6/indexes/with-schemas/index.js +5 -1
  742. package/umd/es6/mergeable-store/index.js +31 -27
  743. package/umd/es6/mergeable-store/with-schemas/index.js +31 -27
  744. package/umd/es6/metrics/index.js +5 -1
  745. package/umd/es6/metrics/with-schemas/index.js +5 -1
  746. package/umd/es6/min/index.js +1 -1
  747. package/umd/es6/min/index.js.gz +0 -0
  748. package/umd/es6/min/indexes/index.js +1 -1
  749. package/umd/es6/min/indexes/index.js.gz +0 -0
  750. package/umd/es6/min/indexes/with-schemas/index.js +1 -1
  751. package/umd/es6/min/indexes/with-schemas/index.js.gz +0 -0
  752. package/umd/es6/min/mergeable-store/index.js +1 -1
  753. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  754. package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
  755. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  756. package/umd/es6/min/metrics/index.js +1 -1
  757. package/umd/es6/min/metrics/index.js.gz +0 -0
  758. package/umd/es6/min/metrics/with-schemas/index.js +1 -1
  759. package/umd/es6/min/metrics/with-schemas/index.js.gz +0 -0
  760. package/umd/es6/min/persisters/index.js +1 -1
  761. package/umd/es6/min/persisters/index.js.gz +0 -0
  762. package/umd/es6/min/persisters/persister-automerge/index.js +1 -1
  763. package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  764. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  765. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  766. package/umd/es6/min/persisters/persister-browser/index.js +1 -1
  767. package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
  768. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  769. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  770. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  771. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  772. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  773. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  774. package/umd/es6/min/persisters/persister-durable-object-storage/index.js +1 -0
  775. package/umd/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  776. package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
  777. package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  778. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  779. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  780. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  781. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  782. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  783. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  784. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  785. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  786. package/umd/es6/min/persisters/persister-file/index.js +1 -1
  787. package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
  788. package/umd/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  789. package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  790. package/umd/es6/min/persisters/persister-indexed-db/index.js +1 -1
  791. package/umd/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  792. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  793. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  794. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  795. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  796. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  797. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  798. package/umd/es6/min/persisters/persister-partykit-client/index.js +1 -1
  799. package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  800. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  801. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  802. package/umd/es6/min/persisters/persister-pglite/index.js +1 -1
  803. package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  804. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  805. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  806. package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
  807. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  808. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  809. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  810. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  811. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  812. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  813. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  814. package/umd/es6/min/persisters/persister-remote/index.js +1 -1
  815. package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
  816. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  817. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  818. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  819. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  820. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  821. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  822. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  823. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  824. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  825. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  826. package/umd/es6/min/persisters/persister-yjs/index.js +1 -1
  827. package/umd/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  828. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  829. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  830. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  831. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  832. package/umd/es6/min/queries/index.js +1 -1
  833. package/umd/es6/min/queries/index.js.gz +0 -0
  834. package/umd/es6/min/queries/with-schemas/index.js +1 -1
  835. package/umd/es6/min/queries/with-schemas/index.js.gz +0 -0
  836. package/umd/es6/min/relationships/index.js +1 -1
  837. package/umd/es6/min/relationships/index.js.gz +0 -0
  838. package/umd/es6/min/relationships/with-schemas/index.js +1 -1
  839. package/umd/es6/min/relationships/with-schemas/index.js.gz +0 -0
  840. package/umd/es6/min/synchronizers/index.js +1 -1
  841. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  842. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  843. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  844. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  845. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  846. package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  847. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  848. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  849. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  850. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  851. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  852. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  853. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  854. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  855. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  856. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  857. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  858. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  859. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  860. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  861. package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  862. package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
  863. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  864. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  865. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  866. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  867. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  868. package/umd/es6/min/with-schemas/index.js +1 -1
  869. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  870. package/umd/es6/persisters/index.js +21 -9
  871. package/umd/es6/persisters/persister-automerge/index.js +17 -8
  872. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +17 -8
  873. package/umd/es6/persisters/persister-browser/index.js +17 -8
  874. package/umd/es6/persisters/persister-browser/with-schemas/index.js +17 -8
  875. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +21 -9
  876. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
  877. package/umd/es6/persisters/persister-durable-object-storage/index.js +707 -0
  878. package/umd/es6/persisters/persister-durable-object-storage/with-schemas/index.js +707 -0
  879. package/umd/es6/persisters/persister-electric-sql/index.js +21 -9
  880. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +21 -9
  881. package/umd/es6/persisters/persister-expo-sqlite/index.js +21 -9
  882. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
  883. package/umd/es6/persisters/persister-file/index.js +17 -8
  884. package/umd/es6/persisters/persister-file/with-schemas/index.js +17 -8
  885. package/umd/es6/persisters/persister-indexed-db/index.js +19 -9
  886. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +19 -9
  887. package/umd/es6/persisters/persister-libsql/index.js +21 -9
  888. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +21 -9
  889. package/umd/es6/persisters/persister-partykit-client/index.js +23 -11
  890. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +23 -11
  891. package/umd/es6/persisters/persister-pglite/index.js +19 -8
  892. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +19 -8
  893. package/umd/es6/persisters/persister-postgres/index.js +19 -8
  894. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +19 -8
  895. package/umd/es6/persisters/persister-powersync/index.js +21 -9
  896. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +21 -9
  897. package/umd/es6/persisters/persister-remote/index.js +19 -9
  898. package/umd/es6/persisters/persister-remote/with-schemas/index.js +19 -9
  899. package/umd/es6/persisters/persister-sqlite-wasm/index.js +21 -9
  900. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
  901. package/umd/es6/persisters/persister-sqlite3/index.js +21 -9
  902. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +21 -9
  903. package/umd/es6/persisters/persister-yjs/index.js +17 -8
  904. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +17 -8
  905. package/umd/es6/persisters/with-schemas/index.js +21 -9
  906. package/umd/es6/queries/index.js +1 -0
  907. package/umd/es6/queries/with-schemas/index.js +1 -0
  908. package/umd/es6/relationships/index.js +5 -1
  909. package/umd/es6/relationships/with-schemas/index.js +5 -1
  910. package/umd/es6/synchronizers/index.js +143 -101
  911. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +143 -101
  912. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +143 -101
  913. package/umd/es6/synchronizers/synchronizer-local/index.js +146 -105
  914. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +146 -105
  915. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +161 -106
  916. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +161 -106
  917. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +172 -105
  918. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +172 -105
  919. package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +989 -21
  920. package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +989 -21
  921. package/umd/es6/synchronizers/synchronizer-ws-server-simple/index.js +2 -1
  922. package/umd/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +2 -1
  923. package/umd/es6/synchronizers/with-schemas/index.js +143 -101
  924. package/umd/es6/ui-react-inspector/index.js +17 -8
  925. package/umd/es6/ui-react-inspector/with-schemas/index.js +17 -8
  926. package/umd/es6/with-schemas/index.js +32 -27
  927. package/umd/index.js +31 -27
  928. package/umd/mergeable-store/index.js +31 -27
  929. package/umd/mergeable-store/with-schemas/index.js +31 -27
  930. package/umd/min/index.js +1 -1
  931. package/umd/min/index.js.gz +0 -0
  932. package/umd/min/mergeable-store/index.js +1 -1
  933. package/umd/min/mergeable-store/index.js.gz +0 -0
  934. package/umd/min/mergeable-store/with-schemas/index.js +1 -1
  935. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  936. package/umd/min/persisters/index.js +1 -1
  937. package/umd/min/persisters/index.js.gz +0 -0
  938. package/umd/min/persisters/persister-automerge/index.js +1 -1
  939. package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
  940. package/umd/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  941. package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  942. package/umd/min/persisters/persister-browser/index.js +1 -1
  943. package/umd/min/persisters/persister-browser/index.js.gz +0 -0
  944. package/umd/min/persisters/persister-browser/with-schemas/index.js +1 -1
  945. package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  946. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  947. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  948. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  949. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  950. package/umd/min/persisters/persister-durable-object-storage/index.js +1 -0
  951. package/umd/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  952. package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
  953. package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  954. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  955. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  956. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  957. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  958. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  959. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  960. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  961. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  962. package/umd/min/persisters/persister-file/index.js +1 -1
  963. package/umd/min/persisters/persister-file/index.js.gz +0 -0
  964. package/umd/min/persisters/persister-file/with-schemas/index.js +1 -1
  965. package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  966. package/umd/min/persisters/persister-indexed-db/index.js +1 -1
  967. package/umd/min/persisters/persister-indexed-db/index.js.gz +0 -0
  968. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  969. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  970. package/umd/min/persisters/persister-libsql/index.js +1 -1
  971. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  972. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  973. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  974. package/umd/min/persisters/persister-partykit-client/index.js +1 -1
  975. package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
  976. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  977. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  978. package/umd/min/persisters/persister-pglite/index.js +1 -1
  979. package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
  980. package/umd/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  981. package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  982. package/umd/min/persisters/persister-postgres/index.js +1 -1
  983. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  984. package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  985. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  986. package/umd/min/persisters/persister-powersync/index.js +1 -1
  987. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  988. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  989. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  990. package/umd/min/persisters/persister-remote/index.js +1 -1
  991. package/umd/min/persisters/persister-remote/index.js.gz +0 -0
  992. package/umd/min/persisters/persister-remote/with-schemas/index.js +1 -1
  993. package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  994. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  995. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  996. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  997. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  998. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  999. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  1000. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  1001. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  1002. package/umd/min/persisters/persister-yjs/index.js +1 -1
  1003. package/umd/min/persisters/persister-yjs/index.js.gz +0 -0
  1004. package/umd/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  1005. package/umd/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  1006. package/umd/min/persisters/with-schemas/index.js +1 -1
  1007. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  1008. package/umd/min/synchronizers/index.js +1 -1
  1009. package/umd/min/synchronizers/index.js.gz +0 -0
  1010. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  1011. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  1012. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  1013. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  1014. package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
  1015. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  1016. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  1017. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  1018. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  1019. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  1020. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  1021. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  1022. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  1023. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  1024. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  1025. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  1026. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  1027. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  1028. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  1029. package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  1030. package/umd/min/synchronizers/with-schemas/index.js +1 -1
  1031. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  1032. package/umd/min/ui-react-inspector/index.js +1 -1
  1033. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  1034. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  1035. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  1036. package/umd/min/with-schemas/index.js +1 -1
  1037. package/umd/min/with-schemas/index.js.gz +0 -0
  1038. package/umd/persisters/index.js +21 -9
  1039. package/umd/persisters/persister-automerge/index.js +17 -8
  1040. package/umd/persisters/persister-automerge/with-schemas/index.js +17 -8
  1041. package/umd/persisters/persister-browser/index.js +17 -8
  1042. package/umd/persisters/persister-browser/with-schemas/index.js +17 -8
  1043. package/umd/persisters/persister-cr-sqlite-wasm/index.js +21 -9
  1044. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
  1045. package/umd/persisters/persister-durable-object-storage/index.js +562 -0
  1046. package/umd/persisters/persister-durable-object-storage/with-schemas/index.js +562 -0
  1047. package/umd/persisters/persister-electric-sql/index.js +21 -9
  1048. package/umd/persisters/persister-electric-sql/with-schemas/index.js +21 -9
  1049. package/umd/persisters/persister-expo-sqlite/index.js +21 -9
  1050. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
  1051. package/umd/persisters/persister-file/index.js +17 -8
  1052. package/umd/persisters/persister-file/with-schemas/index.js +17 -8
  1053. package/umd/persisters/persister-indexed-db/index.js +19 -9
  1054. package/umd/persisters/persister-indexed-db/with-schemas/index.js +19 -9
  1055. package/umd/persisters/persister-libsql/index.js +21 -9
  1056. package/umd/persisters/persister-libsql/with-schemas/index.js +21 -9
  1057. package/umd/persisters/persister-partykit-client/index.js +18 -9
  1058. package/umd/persisters/persister-partykit-client/with-schemas/index.js +18 -9
  1059. package/umd/persisters/persister-pglite/index.js +19 -8
  1060. package/umd/persisters/persister-pglite/with-schemas/index.js +19 -8
  1061. package/umd/persisters/persister-postgres/index.js +19 -8
  1062. package/umd/persisters/persister-postgres/with-schemas/index.js +19 -8
  1063. package/umd/persisters/persister-powersync/index.js +21 -9
  1064. package/umd/persisters/persister-powersync/with-schemas/index.js +21 -9
  1065. package/umd/persisters/persister-remote/index.js +19 -9
  1066. package/umd/persisters/persister-remote/with-schemas/index.js +19 -9
  1067. package/umd/persisters/persister-sqlite-wasm/index.js +21 -9
  1068. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
  1069. package/umd/persisters/persister-sqlite3/index.js +21 -9
  1070. package/umd/persisters/persister-sqlite3/with-schemas/index.js +21 -9
  1071. package/umd/persisters/persister-yjs/index.js +17 -8
  1072. package/umd/persisters/persister-yjs/with-schemas/index.js +17 -8
  1073. package/umd/persisters/with-schemas/index.js +21 -9
  1074. package/umd/synchronizers/index.js +120 -76
  1075. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +120 -76
  1076. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +120 -76
  1077. package/umd/synchronizers/synchronizer-local/index.js +129 -88
  1078. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +129 -88
  1079. package/umd/synchronizers/synchronizer-ws-client/index.js +138 -81
  1080. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +138 -81
  1081. package/umd/synchronizers/synchronizer-ws-server/index.js +149 -80
  1082. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +149 -80
  1083. package/umd/synchronizers/synchronizer-ws-server-durable-object/index.js +720 -18
  1084. package/umd/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +720 -18
  1085. package/umd/synchronizers/synchronizer-ws-server-simple/index.js +2 -1
  1086. package/umd/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +2 -1
  1087. package/umd/synchronizers/with-schemas/index.js +120 -76
  1088. package/umd/ui-react-inspector/index.js +17 -8
  1089. package/umd/ui-react-inspector/with-schemas/index.js +17 -8
  1090. package/umd/with-schemas/index.js +31 -27
  1091. package/with-schemas/index.js +31 -27
@@ -1 +1 @@
1
- "use strict";const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=Math,s=n.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),l=t=>t.length,c=t=>{throw Error(t)},u=(t,e)=>t.forEach(e),g=(t,...e)=>t.push(...e),d=t=>t.shift(),y=Object,h=t=>y.getPrototypeOf(t),p=y.entries,v=y.keys,w=y.freeze,f=(t,e)=>u(p(t),(([t,a])=>e(a,t))),b=t=>(t=>!o(t)&&r(h(t),(t=>t==y.prototype||o(h(t))),(()=>!0)))(t)&&0==(t=>l(v(t)))(t),S=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),M=t=>o(t)||0==(t=>t?.size??0)(t),A=(t,e)=>t?.forEach(e),C=(t,e)=>t?.delete(e),L=t=>new Map(t),m=(t,e)=>t?.get(e),T=(t,e,a)=>o(a)?(C(t,e),t):t?.set(e,a),H=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(m(t,e)):T(t,e,a()),m(t,e)},D=(t,e,a,n,s=0)=>r((a?H:m)(t,e[s],s>l(e)-2?a:L),(o=>{if(s>l(e)-2)return n?.(o)&&T(t,e[s]),o;const r=D(o,e,a,n,s+1);return M(o)&&T(t,e[s]),r})),z=(t,e)=>e?[t,e]:[t],E=(t,e)=>((t??"")>(e??"")?t:e)??"",P=(t="")=>z(((t=[])=>y.fromEntries(t))(),t),R=t=>new Set(i(t)||o(t)?t:[t]),V=/^\d+$/,O=L(),$=L(),j=(t,e,a,n,s,y,h,p={},v=[])=>{let f,S,z,E=0,P=0,j=0;H(O,v,(()=>0)),H($,v,(()=>[]));const k=L(),[x,F,N,U,q]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!b(t)||!b(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!b(t)||!b(e),e.setContent]:c("Store type not supported by this Persister"))(h,t),[B,G,I]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{V.test(e)&&l(t)<1e3&&g(t,e)}]})(),n=L();return[(a,s,o,r=[],i=()=>[])=>{t??=_;const l=e(1);var c,u;return T(n,l,[a,s,o,r,i]),c=D(s,o??[""],R),u=l,c?.add(u),l},(e,a,...s)=>u(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?g(a,t):null===e[s]?A(t,(t=>n(t,s+1))):u([e[s],null],(e=>n(m(t,e),s+1)));return n(t,0),a})(e,a),(e=>A(e,(e=>m(n,e)[0](t,...a??[],...s))))),t=>r(m(n,t),(([,e,s])=>(D(e,s??[""],void 0,(e=>(C(e,t),M(e)?1:0))),T(n,t),a(t),s))),e=>r(m(n,e),(([e,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):o(a[c])?u(n[c]?.(...i)??[],(t=>r(...i,t))):r(...i,a[c])};r()}))]})(),J=t=>{t!=E&&(E=t,G(k,void 0,E))},K=e=>{(x&&i(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},Q=async t=>(2!=E&&(J(1),P++,await Z((async()=>{try{const a=await e();i(a)?K(a):t?q(t):c("Content is not an array "+a)}catch(e){y?.(e),t&&q(t)}J(0)}))),_),W=()=>(S&&(s(S),S=void 0),_),X=async t=>(1!=E&&(J(2),j++,await Z((async()=>{try{await a(F,t)}catch(t){y?.(t)}J(0)}))),_),Y=()=>(r(z,t.delListener),z=void 0,_),Z=async(...t)=>(g(m($,v),...t),await(async()=>{if(!m(O,v)){for(T(O,v,1);!o(f=d(m($,v)));)try{await f()}catch(t){y?.(t)}T(O,v,0)}})(),_),_={load:Q,startAutoLoad:async t=>{await W().load(t);try{S=await n((async(t,e)=>{e||t?2!=E&&(J(1),P++,K(e??t),J(0)):await Q()}))}catch(t){y?.(t)}return _},stopAutoLoad:W,isAutoLoading:()=>!o(S),save:X,startAutoSave:async()=>(await Y().save(),z=t.addDidFinishTransactionListener((()=>{const t=N();U(t)&&X(t)})),_),stopAutoSave:Y,isAutoSaving:()=>!o(z),getStatus:()=>E,addStatusListener:t=>B(t,k),delListener:e=>(I(e),t),schedule:Z,getStore:()=>t,destroy:()=>(m($,v).splice(0,void 0),W().stopAutoSave()),getStats:()=>({loads:P,saves:j}),...p};return w(_)},k=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),x=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map((()=>s(256*n.random()))))(t),F=(t=16)=>{return e=(t,e)=>t+k[63&e],x(new Uint8Array(t)).reduce(e,"");var e},N=L();exports.createLocalSynchronizer=(t,a,n,s)=>{const i=F();return((t,a,n,s,i,l,c,u,g={})=>{let d,y=0,h=0;const p=L(),v=(t,e,n,s)=>{y++,l?.(t,e,n,s),a(t,e,n,s)},w=async(t,a,n="")=>new e(((e,s)=>{const o=F(),r=setTimeout((()=>{C(p,o),s(`No response from ${t??"anyone"} to ${o}, `+a)}),1e3*i);T(p,o,[t,(t,a)=>{clearTimeout(r),C(p,o),e([t,a])}]),v(t,o,a,n)})),M=(t,[e,a])=>{f(e,(([e,a],n)=>{const s=S(t[0],n,P);f(e,(([t,e],a)=>{const n=S(s[0],a,P);f(t,(([t,e],a)=>n[0][a]=z(t,e))),n[1]=E(n[1],e)})),s[1]=E(s[1],a)})),t[1]=E(t[1],a)},A=async(e=null,a)=>{o(a)&&([a,e]=await w(e,1));const[n,s]=a,[r,i]=t.getMergeableContentHashes();let l=P();if(r!=n){const[a,n]=(await w(e,4,t.getMergeableTableHashes()))[0];if(l=a,!b(n)){const[a,s]=(await w(e,5,t.getMergeableRowHashes(n)))[0];if(M(l,a),!b(s)){const a=(await w(e,6,t.getMergeableCellHashes(s)))[0];M(l,a)}}}return[l,i==s?P():(await w(e,7,t.getMergeableValueHashes()))[0],1]},H=j(t,(async()=>{const t=await A();return b(t[0][0])&&b(t[1][0])?void 0:t}),(async(e,a)=>a?v(null,null,3,a):v(null,null,2,t.getMergeableContentHashes())),(t=>d=t),(()=>d=void 0),u,2,{startSync:async t=>await(await H.startAutoLoad(t)).startAutoSave(),stopSync:()=>H.stopAutoLoad().stopAutoSave(),destroy:()=>(s(),H.stopSync()),getSynchronizerStats:()=>({sends:y,receives:h}),...g});return n(((e,a,n,s)=>{h++,c?.(e,a,n,s),0==n?r(m(p,a),(([t,a])=>o(t)||t==e?a(s,e):0)):2==n&&H.isAutoLoading()?A(e,s).then((t=>{d?.(void 0,t)})):3==n&&H.isAutoLoading()?d?.(void 0,s):r(1==n&&H.isAutoSaving()?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{v(e,a,0,t)}))})),H})(t,((t,e,a,n)=>{setTimeout((()=>{return o(t)?(s=(t,s)=>t!=i?s(i,e,a,n):0,A(N,((t,e)=>s(e,t)))):m(N,t)?.(i,e,a,n);var s}),0)}),(t=>{T(N,i,t)}),(()=>{C(N,i)}),.01,a,n,s)};
1
+ "use strict";const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,o=s.floor,r=t=>null==t,i=(t,e,a)=>r(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,u=t=>{throw Error(t)},g=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),h=Object,p=t=>h.getPrototypeOf(t),v=h.entries,w=h.keys,f=h.freeze,b=(t,e)=>g(v(t),(([t,a])=>e(a,t))),S=t=>(t=>!r(t)&&i(p(t),(t=>t==h.prototype||r(p(t))),(()=>!0)))(t)&&0==(t=>l(w(t)))(t),M=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),A=t=>r(t)||0==(t=>t?.size??0)(t),C=(t,e)=>t?.forEach(e),L=(t,e)=>t?.delete(e),m=t=>new Map(t),T=(t,e)=>t?.get(e),H=(t,e,a)=>r(a)?(L(t,e),t):t?.set(e,a),D=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(T(t,e)):H(t,e,a()),T(t,e)},z=(t,e,a,n,s=0)=>i((a?D:T)(t,e[s],s>l(e)-2?a:m),(o=>{if(s>l(e)-2)return n?.(o)&&H(t,e[s]),o;const r=z(o,e,a,n,s+1);return A(o)&&H(t,e[s]),r})),E=(t,e)=>e?[t,e]:[t],P=(t,e)=>((t??"")>(e??"")?t:e)??"",R=(t="")=>E(((t=[])=>h.fromEntries(t))(),t),V=t=>new Set(c(t)||r(t)?t:[t]),O=/^\d+$/,$=m(),j=m(),k=(t,e,a,n,s,o,h,p={},v=0,w=[])=>{let b,M,E,P=0,R=0,k=0;D($,w,(()=>0)),D(j,w,(()=>[]));const x=m(),[F,N,U,q,B]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!S(t)||!S(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!S(t)||!S(e),e.setContent]:u("Store type not supported by this Persister"))(h,t,v),[G,I,J]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{O.test(e)&&l(t)<1e3&&y(t,e)}]})(),n=m();return[(a,s,o,r=[],i=()=>[])=>{t??=tt;const c=e(1);var l,u;return H(n,c,[a,s,o,r,i]),l=z(s,o??[""],V),u=c,l?.add(u),c},(e,a,...s)=>g(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?y(a,t):null===e[s]?C(t,(t=>n(t,s+1))):g([e[s],null],(e=>n(T(t,e),s+1)));return n(t,0),a})(e,a),(e=>C(e,(e=>T(n,e)[0](t,...a??[],...s))))),t=>i(T(n,t),(([,e,s])=>(z(e,s??[""],void 0,(e=>(L(e,t),A(e)?1:0))),H(n,t),a(t),s))),e=>i(T(n,e),(([e,,a=[],n,s])=>{const o=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):r(a[c])?g(n[c]?.(...i)??[],(t=>o(...i,t))):o(...i,a[c])};o()}))]})(),K=t=>{t!=P&&(P=t,I(x,void 0,P))},Q=e=>{(F&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},W=async t=>(2!=P&&(K(1),R++,await _((async()=>{try{const a=await e();c(a)?Q(a):t?B(t):u("Content is not an array: "+a)}catch(e){o?.(e),t&&B(t)}K(0)}))),tt),X=()=>(M&&(s(M),M=void 0),tt),Y=async t=>(1!=P&&(K(2),k++,await _((async()=>{try{await a(N,t)}catch(t){o?.(t)}K(0)}))),tt),Z=()=>(E&&(t.delListener(E),E=void 0),tt),_=async(...t)=>(y(T(j,w),...t),await(async()=>{if(!T($,w)){for(H($,w,1);!r(b=d(T(j,w)));)try{await b()}catch(t){o?.(t)}H($,w,0)}})(),tt),tt={load:W,startAutoLoad:async t=>{X(),await W(t);try{M=await n((async(t,e)=>{e||t?2!=P&&(K(1),R++,Q(e??t),K(0)):await W()}))}catch(t){o?.(t)}return tt},stopAutoLoad:X,isAutoLoading:()=>!r(M),save:Y,startAutoSave:async()=>(Z(),await Y(),E=t.addDidFinishTransactionListener((()=>{const t=U();q(t)&&Y(t)})),tt),stopAutoSave:Z,isAutoSaving:()=>!r(E),getStatus:()=>P,addStatusListener:t=>G(t,x),delListener:e=>(J(e),t),schedule:_,getStore:()=>t,destroy:()=>(T(j,w).splice(0,void 0),X().stopAutoSave()),getStats:()=>({loads:R,saves:k}),...p};return f(tt)},x=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),F=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map((()=>o(256*s.random()))))(t),N=(t=16)=>{return e=(t,e)=>t+x[63&e],F(new Uint8Array(t)).reduce(e,"");var e},U=m();exports.createLocalSynchronizer=(t,a,s,o)=>{const c=N();return((t,a,s,o,c,l,u,g,y={})=>{let d,h=0,p=0,v=0;const w=m(),f=()=>N(11),A=(t,e,n,s)=>{p++,l?.(t,e,n,s),a(t,e,n,s)},C=async(t,a,s,o)=>new e(((e,r)=>{const i=o+"."+N(4),l=n((()=>{L(w,i),r(`No response from ${t??"anyone"} to ${i}, `+a)}),c);H(w,i,[t,(t,a)=>{clearTimeout(l),L(w,i),e([t,a,o])}]),A(t,i,a,s)})),D=(t,[e,a])=>{b(e,(([e,a],n)=>{const s=M(t[0],n,R);b(e,(([t,e],a)=>{const n=M(s[0],a,R);b(t,(([t,e],a)=>n[0][a]=E(t,e))),n[1]=P(n[1],e)})),s[1]=P(s[1],a)})),t[1]=P(t[1],a)},z=async(e=null,a,n=f())=>{try{r(a)&&([a,e,n]=await C(null,1,"",n));const[s,o]=a,[i,c]=t.getMergeableContentHashes();let l=R();if(i!=s){const[a,s]=(await C(e,4,t.getMergeableTableHashes(),n))[0];if(l=a,!S(s)){const[a,o]=(await C(e,5,t.getMergeableRowHashes(s),n))[0];if(D(l,a),!S(o)){const a=(await C(e,6,t.getMergeableCellHashes(o),n))[0];D(l,a)}}}return[l,c==o?R():(await C(e,7,t.getMergeableValueHashes(),n))[0],1]}catch(t){g?.(t)}},V=k(t,(async()=>{const t=await z();return!t||S(t[0][0])&&S(t[1][0])?void 0:t}),(async(e,a)=>a?A(null,f(),3,a):A(null,f(),2,t.getMergeableContentHashes())),(t=>d=t),(()=>d=void 0),g,2,{startSync:async t=>(h=1,await(await V.startAutoLoad(t)).startAutoSave()),stopSync:()=>(h=0,V.stopAutoLoad().stopAutoSave()),destroy:()=>(o(),V.stopSync()),getSynchronizerStats:()=>({sends:p,receives:v}),...y},1);return s(((e,a,n,s)=>{const o=h||V.isAutoLoading();v++,u?.(e,a,n,s),0==n?i(T(w,a),(([t,a])=>r(t)||t==e?a(s,e):0)):2==n&&o?z(e,s,a??void 0).then((t=>{d?.(void 0,t)})).catch(g):3==n&&o?d?.(void 0,s):i(1==n&&(h||V.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{A(e,a,0,t)}))})),V})(t,((t,e,a,s)=>n((()=>{return r(t)?(n=(t,n)=>t!=c?n(c,e,a,s):0,C(U,((t,e)=>n(e,t)))):T(U,t)?.(c,e,a,s);var n}))),(t=>{H(U,c,t)}),(()=>{L(U,c)}),.01,a,s,o)};
@@ -1 +1 @@
1
- "use strict";const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=Math,s=n.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),l=t=>t.length,c=t=>{throw Error(t)},u=(t,e)=>t.forEach(e),g=(t,...e)=>t.push(...e),d=t=>t.shift(),y=Object,h=t=>y.getPrototypeOf(t),p=y.entries,v=y.keys,w=y.freeze,f=(t,e)=>u(p(t),(([t,a])=>e(a,t))),b=t=>(t=>!o(t)&&r(h(t),(t=>t==y.prototype||o(h(t))),(()=>!0)))(t)&&0==(t=>l(v(t)))(t),S=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),M=t=>o(t)||0==(t=>t?.size??0)(t),A=(t,e)=>t?.forEach(e),C=(t,e)=>t?.delete(e),L=t=>new Map(t),m=(t,e)=>t?.get(e),T=(t,e,a)=>o(a)?(C(t,e),t):t?.set(e,a),H=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(m(t,e)):T(t,e,a()),m(t,e)},D=(t,e,a,n,s=0)=>r((a?H:m)(t,e[s],s>l(e)-2?a:L),(o=>{if(s>l(e)-2)return n?.(o)&&T(t,e[s]),o;const r=D(o,e,a,n,s+1);return M(o)&&T(t,e[s]),r})),z=(t,e)=>e?[t,e]:[t],E=(t,e)=>((t??"")>(e??"")?t:e)??"",P=(t="")=>z(((t=[])=>y.fromEntries(t))(),t),R=t=>new Set(i(t)||o(t)?t:[t]),V=/^\d+$/,O=L(),$=L(),j=(t,e,a,n,s,y,h,p={},v=[])=>{let f,S,z,E=0,P=0,j=0;H(O,v,(()=>0)),H($,v,(()=>[]));const k=L(),[x,F,N,U,q]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!b(t)||!b(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!b(t)||!b(e),e.setContent]:c("Store type not supported by this Persister"))(h,t),[B,G,I]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{V.test(e)&&l(t)<1e3&&g(t,e)}]})(),n=L();return[(a,s,o,r=[],i=()=>[])=>{t??=_;const l=e(1);var c,u;return T(n,l,[a,s,o,r,i]),c=D(s,o??[""],R),u=l,c?.add(u),l},(e,a,...s)=>u(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?g(a,t):null===e[s]?A(t,(t=>n(t,s+1))):u([e[s],null],(e=>n(m(t,e),s+1)));return n(t,0),a})(e,a),(e=>A(e,(e=>m(n,e)[0](t,...a??[],...s))))),t=>r(m(n,t),(([,e,s])=>(D(e,s??[""],void 0,(e=>(C(e,t),M(e)?1:0))),T(n,t),a(t),s))),e=>r(m(n,e),(([e,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):o(a[c])?u(n[c]?.(...i)??[],(t=>r(...i,t))):r(...i,a[c])};r()}))]})(),J=t=>{t!=E&&(E=t,G(k,void 0,E))},K=e=>{(x&&i(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},Q=async t=>(2!=E&&(J(1),P++,await Z((async()=>{try{const a=await e();i(a)?K(a):t?q(t):c("Content is not an array "+a)}catch(e){y?.(e),t&&q(t)}J(0)}))),_),W=()=>(S&&(s(S),S=void 0),_),X=async t=>(1!=E&&(J(2),j++,await Z((async()=>{try{await a(F,t)}catch(t){y?.(t)}J(0)}))),_),Y=()=>(r(z,t.delListener),z=void 0,_),Z=async(...t)=>(g(m($,v),...t),await(async()=>{if(!m(O,v)){for(T(O,v,1);!o(f=d(m($,v)));)try{await f()}catch(t){y?.(t)}T(O,v,0)}})(),_),_={load:Q,startAutoLoad:async t=>{await W().load(t);try{S=await n((async(t,e)=>{e||t?2!=E&&(J(1),P++,K(e??t),J(0)):await Q()}))}catch(t){y?.(t)}return _},stopAutoLoad:W,isAutoLoading:()=>!o(S),save:X,startAutoSave:async()=>(await Y().save(),z=t.addDidFinishTransactionListener((()=>{const t=N();U(t)&&X(t)})),_),stopAutoSave:Y,isAutoSaving:()=>!o(z),getStatus:()=>E,addStatusListener:t=>B(t,k),delListener:e=>(I(e),t),schedule:Z,getStore:()=>t,destroy:()=>(m($,v).splice(0,void 0),W().stopAutoSave()),getStats:()=>({loads:P,saves:j}),...p};return w(_)},k=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),x=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map((()=>s(256*n.random()))))(t),F=(t=16)=>{return e=(t,e)=>t+k[63&e],x(new Uint8Array(t)).reduce(e,"");var e},N=L();exports.createLocalSynchronizer=(t,a,n,s)=>{const i=F();return((t,a,n,s,i,l,c,u,g={})=>{let d,y=0,h=0;const p=L(),v=(t,e,n,s)=>{y++,l?.(t,e,n,s),a(t,e,n,s)},w=async(t,a,n="")=>new e(((e,s)=>{const o=F(),r=setTimeout((()=>{C(p,o),s(`No response from ${t??"anyone"} to ${o}, `+a)}),1e3*i);T(p,o,[t,(t,a)=>{clearTimeout(r),C(p,o),e([t,a])}]),v(t,o,a,n)})),M=(t,[e,a])=>{f(e,(([e,a],n)=>{const s=S(t[0],n,P);f(e,(([t,e],a)=>{const n=S(s[0],a,P);f(t,(([t,e],a)=>n[0][a]=z(t,e))),n[1]=E(n[1],e)})),s[1]=E(s[1],a)})),t[1]=E(t[1],a)},A=async(e=null,a)=>{o(a)&&([a,e]=await w(e,1));const[n,s]=a,[r,i]=t.getMergeableContentHashes();let l=P();if(r!=n){const[a,n]=(await w(e,4,t.getMergeableTableHashes()))[0];if(l=a,!b(n)){const[a,s]=(await w(e,5,t.getMergeableRowHashes(n)))[0];if(M(l,a),!b(s)){const a=(await w(e,6,t.getMergeableCellHashes(s)))[0];M(l,a)}}}return[l,i==s?P():(await w(e,7,t.getMergeableValueHashes()))[0],1]},H=j(t,(async()=>{const t=await A();return b(t[0][0])&&b(t[1][0])?void 0:t}),(async(e,a)=>a?v(null,null,3,a):v(null,null,2,t.getMergeableContentHashes())),(t=>d=t),(()=>d=void 0),u,2,{startSync:async t=>await(await H.startAutoLoad(t)).startAutoSave(),stopSync:()=>H.stopAutoLoad().stopAutoSave(),destroy:()=>(s(),H.stopSync()),getSynchronizerStats:()=>({sends:y,receives:h}),...g});return n(((e,a,n,s)=>{h++,c?.(e,a,n,s),0==n?r(m(p,a),(([t,a])=>o(t)||t==e?a(s,e):0)):2==n&&H.isAutoLoading()?A(e,s).then((t=>{d?.(void 0,t)})):3==n&&H.isAutoLoading()?d?.(void 0,s):r(1==n&&H.isAutoSaving()?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{v(e,a,0,t)}))})),H})(t,((t,e,a,n)=>{setTimeout((()=>{return o(t)?(s=(t,s)=>t!=i?s(i,e,a,n):0,A(N,((t,e)=>s(e,t)))):m(N,t)?.(i,e,a,n);var s}),0)}),(t=>{T(N,i,t)}),(()=>{C(N,i)}),.01,a,n,s)};
1
+ "use strict";const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,o=s.floor,r=t=>null==t,i=(t,e,a)=>r(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,u=t=>{throw Error(t)},g=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),h=Object,p=t=>h.getPrototypeOf(t),v=h.entries,w=h.keys,f=h.freeze,b=(t,e)=>g(v(t),(([t,a])=>e(a,t))),S=t=>(t=>!r(t)&&i(p(t),(t=>t==h.prototype||r(p(t))),(()=>!0)))(t)&&0==(t=>l(w(t)))(t),M=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),A=t=>r(t)||0==(t=>t?.size??0)(t),C=(t,e)=>t?.forEach(e),L=(t,e)=>t?.delete(e),m=t=>new Map(t),T=(t,e)=>t?.get(e),H=(t,e,a)=>r(a)?(L(t,e),t):t?.set(e,a),D=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(T(t,e)):H(t,e,a()),T(t,e)},z=(t,e,a,n,s=0)=>i((a?D:T)(t,e[s],s>l(e)-2?a:m),(o=>{if(s>l(e)-2)return n?.(o)&&H(t,e[s]),o;const r=z(o,e,a,n,s+1);return A(o)&&H(t,e[s]),r})),E=(t,e)=>e?[t,e]:[t],P=(t,e)=>((t??"")>(e??"")?t:e)??"",R=(t="")=>E(((t=[])=>h.fromEntries(t))(),t),V=t=>new Set(c(t)||r(t)?t:[t]),O=/^\d+$/,$=m(),j=m(),k=(t,e,a,n,s,o,h,p={},v=0,w=[])=>{let b,M,E,P=0,R=0,k=0;D($,w,(()=>0)),D(j,w,(()=>[]));const x=m(),[F,N,U,q,B]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!S(t)||!S(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!S(t)||!S(e),e.setContent]:u("Store type not supported by this Persister"))(h,t,v),[G,I,J]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{O.test(e)&&l(t)<1e3&&y(t,e)}]})(),n=m();return[(a,s,o,r=[],i=()=>[])=>{t??=tt;const c=e(1);var l,u;return H(n,c,[a,s,o,r,i]),l=z(s,o??[""],V),u=c,l?.add(u),c},(e,a,...s)=>g(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?y(a,t):null===e[s]?C(t,(t=>n(t,s+1))):g([e[s],null],(e=>n(T(t,e),s+1)));return n(t,0),a})(e,a),(e=>C(e,(e=>T(n,e)[0](t,...a??[],...s))))),t=>i(T(n,t),(([,e,s])=>(z(e,s??[""],void 0,(e=>(L(e,t),A(e)?1:0))),H(n,t),a(t),s))),e=>i(T(n,e),(([e,,a=[],n,s])=>{const o=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):r(a[c])?g(n[c]?.(...i)??[],(t=>o(...i,t))):o(...i,a[c])};o()}))]})(),K=t=>{t!=P&&(P=t,I(x,void 0,P))},Q=e=>{(F&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},W=async t=>(2!=P&&(K(1),R++,await _((async()=>{try{const a=await e();c(a)?Q(a):t?B(t):u("Content is not an array: "+a)}catch(e){o?.(e),t&&B(t)}K(0)}))),tt),X=()=>(M&&(s(M),M=void 0),tt),Y=async t=>(1!=P&&(K(2),k++,await _((async()=>{try{await a(N,t)}catch(t){o?.(t)}K(0)}))),tt),Z=()=>(E&&(t.delListener(E),E=void 0),tt),_=async(...t)=>(y(T(j,w),...t),await(async()=>{if(!T($,w)){for(H($,w,1);!r(b=d(T(j,w)));)try{await b()}catch(t){o?.(t)}H($,w,0)}})(),tt),tt={load:W,startAutoLoad:async t=>{X(),await W(t);try{M=await n((async(t,e)=>{e||t?2!=P&&(K(1),R++,Q(e??t),K(0)):await W()}))}catch(t){o?.(t)}return tt},stopAutoLoad:X,isAutoLoading:()=>!r(M),save:Y,startAutoSave:async()=>(Z(),await Y(),E=t.addDidFinishTransactionListener((()=>{const t=U();q(t)&&Y(t)})),tt),stopAutoSave:Z,isAutoSaving:()=>!r(E),getStatus:()=>P,addStatusListener:t=>G(t,x),delListener:e=>(J(e),t),schedule:_,getStore:()=>t,destroy:()=>(T(j,w).splice(0,void 0),X().stopAutoSave()),getStats:()=>({loads:R,saves:k}),...p};return f(tt)},x=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),F=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map((()=>o(256*s.random()))))(t),N=(t=16)=>{return e=(t,e)=>t+x[63&e],F(new Uint8Array(t)).reduce(e,"");var e},U=m();exports.createLocalSynchronizer=(t,a,s,o)=>{const c=N();return((t,a,s,o,c,l,u,g,y={})=>{let d,h=0,p=0,v=0;const w=m(),f=()=>N(11),A=(t,e,n,s)=>{p++,l?.(t,e,n,s),a(t,e,n,s)},C=async(t,a,s,o)=>new e(((e,r)=>{const i=o+"."+N(4),l=n((()=>{L(w,i),r(`No response from ${t??"anyone"} to ${i}, `+a)}),c);H(w,i,[t,(t,a)=>{clearTimeout(l),L(w,i),e([t,a,o])}]),A(t,i,a,s)})),D=(t,[e,a])=>{b(e,(([e,a],n)=>{const s=M(t[0],n,R);b(e,(([t,e],a)=>{const n=M(s[0],a,R);b(t,(([t,e],a)=>n[0][a]=E(t,e))),n[1]=P(n[1],e)})),s[1]=P(s[1],a)})),t[1]=P(t[1],a)},z=async(e=null,a,n=f())=>{try{r(a)&&([a,e,n]=await C(null,1,"",n));const[s,o]=a,[i,c]=t.getMergeableContentHashes();let l=R();if(i!=s){const[a,s]=(await C(e,4,t.getMergeableTableHashes(),n))[0];if(l=a,!S(s)){const[a,o]=(await C(e,5,t.getMergeableRowHashes(s),n))[0];if(D(l,a),!S(o)){const a=(await C(e,6,t.getMergeableCellHashes(o),n))[0];D(l,a)}}}return[l,c==o?R():(await C(e,7,t.getMergeableValueHashes(),n))[0],1]}catch(t){g?.(t)}},V=k(t,(async()=>{const t=await z();return!t||S(t[0][0])&&S(t[1][0])?void 0:t}),(async(e,a)=>a?A(null,f(),3,a):A(null,f(),2,t.getMergeableContentHashes())),(t=>d=t),(()=>d=void 0),g,2,{startSync:async t=>(h=1,await(await V.startAutoLoad(t)).startAutoSave()),stopSync:()=>(h=0,V.stopAutoLoad().stopAutoSave()),destroy:()=>(o(),V.stopSync()),getSynchronizerStats:()=>({sends:p,receives:v}),...y},1);return s(((e,a,n,s)=>{const o=h||V.isAutoLoading();v++,u?.(e,a,n,s),0==n?i(T(w,a),(([t,a])=>r(t)||t==e?a(s,e):0)):2==n&&o?z(e,s,a??void 0).then((t=>{d?.(void 0,t)})).catch(g):3==n&&o?d?.(void 0,s):i(1==n&&(h||V.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{A(e,a,0,t)}))})),V})(t,((t,e,a,s)=>n((()=>{return r(t)?(n=(t,n)=>t!=c?n(c,e,a,s):0,C(U,((t,e)=>n(e,t)))):T(U,t)?.(c,e,a,s);var n}))),(t=>{H(U,c,t)}),(()=>{L(U,c)}),.01,a,s,o)};
@@ -1 +1 @@
1
- "use strict";const e=(e,t="",a)=>e.split(t,a),t=Promise,a=globalThis,n=Math,s=n.floor,o=e=>null==e,r=(e,t,a)=>o(e)?a?.():t(e),i=e=>Array.isArray(e),c=(e,t,a)=>e.slice(t,a),l=e=>e.length,g=e=>new t(e),u=e=>{throw Error(e)},d=(e,t)=>e.forEach(t),y=(e,...t)=>e.push(...t),h=e=>e.shift(),v=Object,p=e=>v.getPrototypeOf(e),f=v.entries,w=v.keys,S=v.freeze,b=(e,t)=>d(f(e),(([e,a])=>t(a,e))),M=e=>(e=>!o(e)&&r(p(e),(e=>e==v.prototype||o(p(e))),(()=>!0)))(e)&&0==(e=>l(w(e)))(e),A=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),C=JSON.stringify,L=JSON.parse,m=e=>o(e)||0==(e=>e?.size??0)(e),T=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),D=e=>new Map(e),E=(e,t)=>e?.get(t),O=(e,t,a)=>o(a)?(H(e,t),e):e?.set(t,a),z=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)?n?.(E(e,t)):O(e,t,a()),E(e,t)},N=(e,t,a,n,s=0)=>r((a?z:E)(e,t[s],s>l(t)-2?a:D),(o=>{if(s>l(t)-2)return n?.(o)&&O(e,t[s]),o;const r=N(o,t,a,n,s+1);return m(o)&&O(e,t[s]),r})),P=(e,t)=>t?[e,t]:[e],R=(e,t)=>((e??"")>(t??"")?e:t)??"",V=(e="")=>P(((e=[])=>v.fromEntries(e))(),e),k=e=>new Set(i(e)||o(e)?e:[e]),x=/^\d+$/,J=D(),W=D(),$=(e,t,a,n,s,c,g,v={},p=[])=>{let f,w,b,A=0,C=0,L=0;z(J,p,(()=>0)),z(W,p,(()=>[]));const P=D(),[R,V,$,j,F]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:u("Store type not supported by this Persister"))(g,e),[U,q,B]=(()=>{let e;const[t,a]=(()=>{const e=[];let t=0;return[a=>(a?h(e):null)??""+t++,t=>{x.test(t)&&l(e)<1e3&&y(e,t)}]})(),n=D();return[(a,s,o,r=[],i=()=>[])=>{e??=_;const c=t(1);var l,g;return O(n,c,[a,s,o,r,i]),l=N(s,o??[""],k),g=c,l?.add(g),c},(t,a,...s)=>d(((e,t=[""])=>{const a=[],n=(e,s)=>s==l(t)?y(a,e):null===t[s]?T(e,(e=>n(e,s+1))):d([t[s],null],(t=>n(E(e,t),s+1)));return n(e,0),a})(t,a),(t=>T(t,(t=>E(n,t)[0](e,...a??[],...s))))),e=>r(E(n,e),(([,t,s])=>(N(t,s??[""],void 0,(t=>(H(t,e),m(t)?1:0))),O(n,e),a(e),s))),t=>r(E(n,t),(([t,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?t(e,...i,...s(i)):o(a[c])?d(n[c]?.(...i)??[],(e=>r(...i,e))):r(...i,a[c])};r()}))]})(),G=e=>{e!=A&&(A=e,q(P,void 0,A))},I=t=>{(R&&i(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},K=async e=>(2!=A&&(G(1),C++,await Z((async()=>{try{const a=await t();i(a)?I(a):e?F(e):u("Content is not an array "+a)}catch(t){c?.(t),e&&F(e)}G(0)}))),_),Q=()=>(w&&(s(w),w=void 0),_),X=async e=>(1!=A&&(G(2),L++,await Z((async()=>{try{await a(V,e)}catch(e){c?.(e)}G(0)}))),_),Y=()=>(r(b,e.delListener),b=void 0,_),Z=async(...e)=>(y(E(W,p),...e),await(async()=>{if(!E(J,p)){for(O(J,p,1);!o(f=h(E(W,p)));)try{await f()}catch(e){c?.(e)}O(J,p,0)}})(),_),_={load:K,startAutoLoad:async e=>{await Q().load(e);try{w=await n((async(e,t)=>{t||e?2!=A&&(G(1),C++,I(t??e),G(0)):await K()}))}catch(e){c?.(e)}return _},stopAutoLoad:Q,isAutoLoading:()=>!o(w),save:X,startAutoSave:async()=>(await Y().save(),b=e.addDidFinishTransactionListener((()=>{const e=$();j(e)&&X(e)})),_),stopAutoSave:Y,isAutoSaving:()=>!o(b),getStatus:()=>A,addStatusListener:e=>U(e,P),delListener:t=>(B(t),e),schedule:Z,getStore:()=>e,destroy:()=>(E(W,p).splice(0,void 0),Q().stopAutoSave()),getStats:()=>({loads:C,saves:L}),...v};return S(_)},j=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),F=a.crypto?e=>a.crypto.getRandomValues(e):e=>(e=>e.map((()=>s(256*n.random()))))(e);exports.createWsSynchronizer=async(e,t,a=1,n,s,i)=>{const l=(e,a)=>t.addEventListener(e,a),u=((e,t,a,n,s,i,c,l,u={})=>{let d,y=0,h=0;const v=D(),p=(e,a,n,s)=>{y++,i?.(e,a,n,s),t(e,a,n,s)},f=async(e,t,a="")=>g(((n,o)=>{const r=((e=16)=>{return t=(e,t)=>e+j[63&t],F(new Uint8Array(e)).reduce(t,"");var t})(),i=setTimeout((()=>{H(v,r),o(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*s);O(v,r,[e,(e,t)=>{clearTimeout(i),H(v,r),n([e,t])}]),p(e,r,t,a)})),w=(e,[t,a])=>{b(t,(([t,a],n)=>{const s=A(e[0],n,V);b(t,(([e,t],a)=>{const n=A(s[0],a,V);b(e,(([e,t],a)=>n[0][a]=P(e,t))),n[1]=R(n[1],t)})),s[1]=R(s[1],a)})),e[1]=R(e[1],a)},S=async(t=null,a)=>{o(a)&&([a,t]=await f(t,1));const[n,s]=a,[r,i]=e.getMergeableContentHashes();let c=V();if(r!=n){const[a,n]=(await f(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(n)){const[a,s]=(await f(t,5,e.getMergeableRowHashes(n)))[0];if(w(c,a),!M(s)){const a=(await f(t,6,e.getMergeableCellHashes(s)))[0];w(c,a)}}}return[c,i==s?V():(await f(t,7,e.getMergeableValueHashes()))[0],1]},C=$(e,(async()=>{const e=await S();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?p(null,null,3,a):p(null,null,2,e.getMergeableContentHashes())),(e=>d=e),(()=>d=void 0),l,2,{startSync:async e=>await(await C.startAutoLoad(e)).startAutoSave(),stopSync:()=>C.stopAutoLoad().stopAutoSave(),destroy:()=>(n(),C.stopSync()),getSynchronizerStats:()=>({sends:y,receives:h}),...u});return a(((t,a,n,s)=>{h++,c?.(t,a,n,s),0==n?r(E(v,a),(([e,a])=>o(e)||e==t?a(s,t):0)):2==n&&C.isAutoLoading()?S(t,s).then((e=>{d?.(void 0,e)})):3==n&&C.isAutoLoading()?d?.(void 0,s):r(1==n&&C.isAutoSaving()?e.getMergeableContentHashes():4==n?e.getMergeableTableDiff(s):5==n?e.getMergeableRowDiff(s):6==n?e.getMergeableCellDiff(s):7==n?e.getMergeableValueDiff(s):void 0,(e=>{p(t,a,0,e)}))})),C})(e,((e,...a)=>t.send(((e,...t)=>{return a=e??"",n=C(t,((e,t)=>void 0===t?"":t)),a+"\n"+n;var a,n})(e,...a))),(e=>l("message",(({data:t})=>((e,t)=>(e=>{const a=e.indexOf("\n");var n,s,o;-1!==a&&(n=c(e,0,a),s=c(e,a+1),t(n,...(o=s,L(o,((e,t)=>""===t?void 0:t)))))})(e))(t.toString("utf8"),e)))),(()=>{t.close()}),a,n,s,i,{getWebSocket:()=>t});return g(((e,a)=>{t.readyState!=t.OPEN?(l("error",a),l("open",(()=>e(u)))):e(u)}))};
1
+ "use strict";const e="",t=(e,t="",a)=>e.split(t,a),a=Promise,n=globalThis,s=Math,r=s.floor,o=e=>null==e,i=(e,t,a)=>o(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),g=e=>e.length,u=e=>new a(e),d=e=>{throw Error(e)},y=(e,t)=>e.forEach(t),h=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,f=e=>p.getPrototypeOf(e),w=p.entries,S=p.keys,b=p.freeze,M=(e,t)=>y(w(e),(([e,a])=>t(a,e))),A=e=>(e=>!o(e)&&i(f(e),(e=>e==p.prototype||o(f(e))),(()=>!0)))(e)&&0==(e=>g(S(e)))(e),C=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),L=JSON.stringify,m=JSON.parse,T=e=>o(e)||0==(e=>e?.size??0)(e),E=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),D=e=>new Map(e),O=(e,t)=>e?.get(t),z=(e,t,a)=>o(a)?(H(e,t),e):e?.set(t,a),N=(e,t,a,n)=>{var s,r;return s=e,r=t,s?.has(r)?n?.(O(e,t)):z(e,t,a()),O(e,t)},P=(e,t,a,n,s=0)=>i((a?N:O)(e,t[s],s>g(t)-2?a:D),(r=>{if(s>g(t)-2)return n?.(r)&&z(e,t[s]),r;const o=P(r,t,a,n,s+1);return T(r)&&z(e,t[s]),o})),R=(e,t)=>t?[e,t]:[e],V=(e,t)=>((e??"")>(t??"")?e:t)??"",k=(e="")=>R(((e=[])=>p.fromEntries(e))(),e),x=e=>new Set(c(e)||o(e)?e:[e]),J=/^\d+$/,W=D(),$=D(),j=(t,a,n,s,r,l,u,p={},f=0,w=[])=>{let S,M,C,L=0,m=0,R=0;N(W,w,(()=>0)),N($,w,(()=>[]));const V=D(),[k,j,F,U,q]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!a),([[e],[t]])=>!A(e)||!A(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!A(e)||!A(t),t.setContent]:d("Store type not supported by this Persister"))(u,t,f),[B,G,I]=(()=>{let t;const[a,n]=(()=>{const t=[];let a=0;return[n=>(n?v(t):null)??e+a++,e=>{J.test(e)&&g(t)<1e3&&h(t,e)}]})(),s=D();return[(n,r,o,i=[],c=()=>[])=>{t??=te;const l=a(1);var g,u;return z(s,l,[n,r,o,i,c]),g=P(r,o??[e],x),u=l,g?.add(u),l},(a,n,...r)=>y(((t,a=[e])=>{const n=[],s=(e,t)=>t==g(a)?h(n,e):null===a[t]?E(e,(e=>s(e,t+1))):y([a[t],null],(a=>s(O(e,a),t+1)));return s(t,0),n})(a,n),(e=>E(e,(e=>O(s,e)[0](t,...n??[],...r))))),t=>i(O(s,t),(([,a,r])=>(P(a,r??[e],void 0,(e=>(H(e,t),T(e)?1:0))),z(s,t),n(t),r))),e=>i(O(s,e),(([e,,a=[],n,s])=>{const r=(...i)=>{const c=g(i);c==g(a)?e(t,...i,...s(i)):o(a[c])?y(n[c]?.(...i)??[],(e=>r(...i,e))):r(...i,a[c])};r()}))]})(),K=e=>{e!=L&&(L=e,G(V,void 0,L))},Q=e=>{(k&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async e=>(2!=L&&(K(1),m++,await ee((async()=>{try{const t=await a();c(t)?Q(t):e?q(e):d("Content is not an array: "+t)}catch(t){l?.(t),e&&q(e)}K(0)}))),te),Y=()=>(M&&(r(M),M=void 0),te),Z=async e=>(1!=L&&(K(2),R++,await ee((async()=>{try{await n(j,e)}catch(e){l?.(e)}K(0)}))),te),_=()=>(C&&(t.delListener(C),C=void 0),te),ee=async(...e)=>(h(O($,w),...e),await(async()=>{if(!O(W,w)){for(z(W,w,1);!o(S=v(O($,w)));)try{await S()}catch(e){l?.(e)}z(W,w,0)}})(),te),te={load:X,startAutoLoad:async e=>{Y(),await X(e);try{M=await s((async(e,t)=>{t||e?2!=L&&(K(1),m++,Q(t??e),K(0)):await X()}))}catch(e){l?.(e)}return te},stopAutoLoad:Y,isAutoLoading:()=>!o(M),save:Z,startAutoSave:async()=>(_(),await Z(),C=t.addDidFinishTransactionListener((()=>{const e=F();U(e)&&Z(e)})),te),stopAutoSave:_,isAutoSaving:()=>!o(C),getStatus:()=>L,addStatusListener:e=>B(e,V),delListener:e=>(I(e),t),schedule:ee,getStore:()=>t,destroy:()=>(O($,w).splice(0,void 0),Y().stopAutoSave()),getStats:()=>({loads:m,saves:R}),...p};return b(te)},F=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),U=n.crypto?e=>n.crypto.getRandomValues(e):e=>(e=>e.map((()=>r(256*s.random()))))(e),q=(e=16)=>{return t=(e,t)=>e+F[63&t],U(new Uint8Array(e)).reduce(t,"");var t};exports.createWsSynchronizer=async(t,a,n=1,s,r,c)=>{const g=(e,t)=>(a.addEventListener(e,t),()=>a.removeEventListener(e,t)),d=((t,a,n,s,r,c,l,g,d={})=>{let y,h=0,v=0,p=0;const f=D(),w=()=>q(11),S=(e,t,n,s)=>{v++,c?.(e,t,n,s),a(e,t,n,s)},b=async(e,t,a,n)=>u(((s,o)=>{const i=n+"."+q(4),c=((e,t=0)=>setTimeout(e,1e3*t))((()=>{H(f,i),o(`No response from ${e??"anyone"} to ${i}, `+t)}),r);z(f,i,[e,(e,t)=>{clearTimeout(c),H(f,i),s([e,t,n])}]),S(e,i,t,a)})),L=(e,[t,a])=>{M(t,(([t,a],n)=>{const s=C(e[0],n,k);M(t,(([e,t],a)=>{const n=C(s[0],a,k);M(e,(([e,t],a)=>n[0][a]=R(e,t))),n[1]=V(n[1],t)})),s[1]=V(s[1],a)})),e[1]=V(e[1],a)},m=async(a=null,n,s=w())=>{try{o(n)&&([n,a,s]=await b(null,1,e,s));const[r,i]=n,[c,l]=t.getMergeableContentHashes();let g=k();if(c!=r){const[e,n]=(await b(a,4,t.getMergeableTableHashes(),s))[0];if(g=e,!A(n)){const[e,r]=(await b(a,5,t.getMergeableRowHashes(n),s))[0];if(L(g,e),!A(r)){const e=(await b(a,6,t.getMergeableCellHashes(r),s))[0];L(g,e)}}}return[g,l==i?k():(await b(a,7,t.getMergeableValueHashes(),s))[0],1]}catch(e){g?.(e)}},T=j(t,(async()=>{const e=await m();return!e||A(e[0][0])&&A(e[1][0])?void 0:e}),(async(e,a)=>a?S(null,w(),3,a):S(null,w(),2,t.getMergeableContentHashes())),(e=>y=e),(()=>y=void 0),g,2,{startSync:async e=>(h=1,await(await T.startAutoLoad(e)).startAutoSave()),stopSync:()=>(h=0,T.stopAutoLoad().stopAutoSave()),destroy:()=>(s(),T.stopSync()),getSynchronizerStats:()=>({sends:v,receives:p}),...d},1);return n(((e,a,n,s)=>{const r=h||T.isAutoLoading();p++,l?.(e,a,n,s),0==n?i(O(f,a),(([t,a])=>o(t)||t==e?a(s,e):0)):2==n&&r?m(e,s,a??void 0).then((e=>{y?.(void 0,e)})).catch(g):3==n&&r?y?.(void 0,s):i(1==n&&(h||T.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{S(e,a,0,t)}))})),T})(t,((t,...n)=>a.send(((t,...a)=>{return n=t??e,s=L(a,((e,t)=>void 0===t?"":t)),n+"\n"+s;var n,s})(t,...n))),(e=>g("message",(({data:t})=>((e,t)=>(e=>{const a=e.indexOf("\n");var n,s,r;-1!==a&&(n=l(e,0,a),s=l(e,a+1),t(n,...(r=s,m(r,((e,t)=>""===t?void 0:t)))))})(e))(t.toString("utf8"),e)))),(()=>{a.close()}),n,s,r,c,{getWebSocket:()=>a});return u((e=>{if(a.readyState!=a.OPEN){const t=t=>{t&&c?.(t),a(),n(),e(d)},a=g("open",(()=>t())),n=g("error",t)}else e(d)}))};
@@ -1 +1 @@
1
- "use strict";const e=(e,t="",a)=>e.split(t,a),t=Promise,a=globalThis,n=Math,s=n.floor,o=e=>null==e,r=(e,t,a)=>o(e)?a?.():t(e),i=e=>Array.isArray(e),c=(e,t,a)=>e.slice(t,a),l=e=>e.length,g=e=>new t(e),u=e=>{throw Error(e)},d=(e,t)=>e.forEach(t),y=(e,...t)=>e.push(...t),h=e=>e.shift(),v=Object,p=e=>v.getPrototypeOf(e),f=v.entries,w=v.keys,S=v.freeze,b=(e,t)=>d(f(e),(([e,a])=>t(a,e))),M=e=>(e=>!o(e)&&r(p(e),(e=>e==v.prototype||o(p(e))),(()=>!0)))(e)&&0==(e=>l(w(e)))(e),A=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),C=JSON.stringify,L=JSON.parse,m=e=>o(e)||0==(e=>e?.size??0)(e),T=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),D=e=>new Map(e),E=(e,t)=>e?.get(t),O=(e,t,a)=>o(a)?(H(e,t),e):e?.set(t,a),z=(e,t,a,n)=>{var s,o;return s=e,o=t,s?.has(o)?n?.(E(e,t)):O(e,t,a()),E(e,t)},N=(e,t,a,n,s=0)=>r((a?z:E)(e,t[s],s>l(t)-2?a:D),(o=>{if(s>l(t)-2)return n?.(o)&&O(e,t[s]),o;const r=N(o,t,a,n,s+1);return m(o)&&O(e,t[s]),r})),P=(e,t)=>t?[e,t]:[e],R=(e,t)=>((e??"")>(t??"")?e:t)??"",V=(e="")=>P(((e=[])=>v.fromEntries(e))(),e),k=e=>new Set(i(e)||o(e)?e:[e]),x=/^\d+$/,J=D(),W=D(),$=(e,t,a,n,s,c,g,v={},p=[])=>{let f,w,b,A=0,C=0,L=0;z(J,p,(()=>0)),z(W,p,(()=>[]));const P=D(),[R,V,$,j,F]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:u("Store type not supported by this Persister"))(g,e),[U,q,B]=(()=>{let e;const[t,a]=(()=>{const e=[];let t=0;return[a=>(a?h(e):null)??""+t++,t=>{x.test(t)&&l(e)<1e3&&y(e,t)}]})(),n=D();return[(a,s,o,r=[],i=()=>[])=>{e??=_;const c=t(1);var l,g;return O(n,c,[a,s,o,r,i]),l=N(s,o??[""],k),g=c,l?.add(g),c},(t,a,...s)=>d(((e,t=[""])=>{const a=[],n=(e,s)=>s==l(t)?y(a,e):null===t[s]?T(e,(e=>n(e,s+1))):d([t[s],null],(t=>n(E(e,t),s+1)));return n(e,0),a})(t,a),(t=>T(t,(t=>E(n,t)[0](e,...a??[],...s))))),e=>r(E(n,e),(([,t,s])=>(N(t,s??[""],void 0,(t=>(H(t,e),m(t)?1:0))),O(n,e),a(e),s))),t=>r(E(n,t),(([t,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?t(e,...i,...s(i)):o(a[c])?d(n[c]?.(...i)??[],(e=>r(...i,e))):r(...i,a[c])};r()}))]})(),G=e=>{e!=A&&(A=e,q(P,void 0,A))},I=t=>{(R&&i(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},K=async e=>(2!=A&&(G(1),C++,await Z((async()=>{try{const a=await t();i(a)?I(a):e?F(e):u("Content is not an array "+a)}catch(t){c?.(t),e&&F(e)}G(0)}))),_),Q=()=>(w&&(s(w),w=void 0),_),X=async e=>(1!=A&&(G(2),L++,await Z((async()=>{try{await a(V,e)}catch(e){c?.(e)}G(0)}))),_),Y=()=>(r(b,e.delListener),b=void 0,_),Z=async(...e)=>(y(E(W,p),...e),await(async()=>{if(!E(J,p)){for(O(J,p,1);!o(f=h(E(W,p)));)try{await f()}catch(e){c?.(e)}O(J,p,0)}})(),_),_={load:K,startAutoLoad:async e=>{await Q().load(e);try{w=await n((async(e,t)=>{t||e?2!=A&&(G(1),C++,I(t??e),G(0)):await K()}))}catch(e){c?.(e)}return _},stopAutoLoad:Q,isAutoLoading:()=>!o(w),save:X,startAutoSave:async()=>(await Y().save(),b=e.addDidFinishTransactionListener((()=>{const e=$();j(e)&&X(e)})),_),stopAutoSave:Y,isAutoSaving:()=>!o(b),getStatus:()=>A,addStatusListener:e=>U(e,P),delListener:t=>(B(t),e),schedule:Z,getStore:()=>e,destroy:()=>(E(W,p).splice(0,void 0),Q().stopAutoSave()),getStats:()=>({loads:C,saves:L}),...v};return S(_)},j=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),F=a.crypto?e=>a.crypto.getRandomValues(e):e=>(e=>e.map((()=>s(256*n.random()))))(e);exports.createWsSynchronizer=async(e,t,a=1,n,s,i)=>{const l=(e,a)=>t.addEventListener(e,a),u=((e,t,a,n,s,i,c,l,u={})=>{let d,y=0,h=0;const v=D(),p=(e,a,n,s)=>{y++,i?.(e,a,n,s),t(e,a,n,s)},f=async(e,t,a="")=>g(((n,o)=>{const r=((e=16)=>{return t=(e,t)=>e+j[63&t],F(new Uint8Array(e)).reduce(t,"");var t})(),i=setTimeout((()=>{H(v,r),o(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*s);O(v,r,[e,(e,t)=>{clearTimeout(i),H(v,r),n([e,t])}]),p(e,r,t,a)})),w=(e,[t,a])=>{b(t,(([t,a],n)=>{const s=A(e[0],n,V);b(t,(([e,t],a)=>{const n=A(s[0],a,V);b(e,(([e,t],a)=>n[0][a]=P(e,t))),n[1]=R(n[1],t)})),s[1]=R(s[1],a)})),e[1]=R(e[1],a)},S=async(t=null,a)=>{o(a)&&([a,t]=await f(t,1));const[n,s]=a,[r,i]=e.getMergeableContentHashes();let c=V();if(r!=n){const[a,n]=(await f(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(n)){const[a,s]=(await f(t,5,e.getMergeableRowHashes(n)))[0];if(w(c,a),!M(s)){const a=(await f(t,6,e.getMergeableCellHashes(s)))[0];w(c,a)}}}return[c,i==s?V():(await f(t,7,e.getMergeableValueHashes()))[0],1]},C=$(e,(async()=>{const e=await S();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?p(null,null,3,a):p(null,null,2,e.getMergeableContentHashes())),(e=>d=e),(()=>d=void 0),l,2,{startSync:async e=>await(await C.startAutoLoad(e)).startAutoSave(),stopSync:()=>C.stopAutoLoad().stopAutoSave(),destroy:()=>(n(),C.stopSync()),getSynchronizerStats:()=>({sends:y,receives:h}),...u});return a(((t,a,n,s)=>{h++,c?.(t,a,n,s),0==n?r(E(v,a),(([e,a])=>o(e)||e==t?a(s,t):0)):2==n&&C.isAutoLoading()?S(t,s).then((e=>{d?.(void 0,e)})):3==n&&C.isAutoLoading()?d?.(void 0,s):r(1==n&&C.isAutoSaving()?e.getMergeableContentHashes():4==n?e.getMergeableTableDiff(s):5==n?e.getMergeableRowDiff(s):6==n?e.getMergeableCellDiff(s):7==n?e.getMergeableValueDiff(s):void 0,(e=>{p(t,a,0,e)}))})),C})(e,((e,...a)=>t.send(((e,...t)=>{return a=e??"",n=C(t,((e,t)=>void 0===t?"":t)),a+"\n"+n;var a,n})(e,...a))),(e=>l("message",(({data:t})=>((e,t)=>(e=>{const a=e.indexOf("\n");var n,s,o;-1!==a&&(n=c(e,0,a),s=c(e,a+1),t(n,...(o=s,L(o,((e,t)=>""===t?void 0:t)))))})(e))(t.toString("utf8"),e)))),(()=>{t.close()}),a,n,s,i,{getWebSocket:()=>t});return g(((e,a)=>{t.readyState!=t.OPEN?(l("error",a),l("open",(()=>e(u)))):e(u)}))};
1
+ "use strict";const e="",t=(e,t="",a)=>e.split(t,a),a=Promise,n=globalThis,s=Math,r=s.floor,o=e=>null==e,i=(e,t,a)=>o(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),g=e=>e.length,u=e=>new a(e),d=e=>{throw Error(e)},y=(e,t)=>e.forEach(t),h=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,f=e=>p.getPrototypeOf(e),w=p.entries,S=p.keys,b=p.freeze,M=(e,t)=>y(w(e),(([e,a])=>t(a,e))),A=e=>(e=>!o(e)&&i(f(e),(e=>e==p.prototype||o(f(e))),(()=>!0)))(e)&&0==(e=>g(S(e)))(e),C=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),L=JSON.stringify,m=JSON.parse,T=e=>o(e)||0==(e=>e?.size??0)(e),E=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),D=e=>new Map(e),O=(e,t)=>e?.get(t),z=(e,t,a)=>o(a)?(H(e,t),e):e?.set(t,a),N=(e,t,a,n)=>{var s,r;return s=e,r=t,s?.has(r)?n?.(O(e,t)):z(e,t,a()),O(e,t)},P=(e,t,a,n,s=0)=>i((a?N:O)(e,t[s],s>g(t)-2?a:D),(r=>{if(s>g(t)-2)return n?.(r)&&z(e,t[s]),r;const o=P(r,t,a,n,s+1);return T(r)&&z(e,t[s]),o})),R=(e,t)=>t?[e,t]:[e],V=(e,t)=>((e??"")>(t??"")?e:t)??"",k=(e="")=>R(((e=[])=>p.fromEntries(e))(),e),x=e=>new Set(c(e)||o(e)?e:[e]),J=/^\d+$/,W=D(),$=D(),j=(t,a,n,s,r,l,u,p={},f=0,w=[])=>{let S,M,C,L=0,m=0,R=0;N(W,w,(()=>0)),N($,w,(()=>[]));const V=D(),[k,j,F,U,q]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!a),([[e],[t]])=>!A(e)||!A(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!A(e)||!A(t),t.setContent]:d("Store type not supported by this Persister"))(u,t,f),[B,G,I]=(()=>{let t;const[a,n]=(()=>{const t=[];let a=0;return[n=>(n?v(t):null)??e+a++,e=>{J.test(e)&&g(t)<1e3&&h(t,e)}]})(),s=D();return[(n,r,o,i=[],c=()=>[])=>{t??=te;const l=a(1);var g,u;return z(s,l,[n,r,o,i,c]),g=P(r,o??[e],x),u=l,g?.add(u),l},(a,n,...r)=>y(((t,a=[e])=>{const n=[],s=(e,t)=>t==g(a)?h(n,e):null===a[t]?E(e,(e=>s(e,t+1))):y([a[t],null],(a=>s(O(e,a),t+1)));return s(t,0),n})(a,n),(e=>E(e,(e=>O(s,e)[0](t,...n??[],...r))))),t=>i(O(s,t),(([,a,r])=>(P(a,r??[e],void 0,(e=>(H(e,t),T(e)?1:0))),z(s,t),n(t),r))),e=>i(O(s,e),(([e,,a=[],n,s])=>{const r=(...i)=>{const c=g(i);c==g(a)?e(t,...i,...s(i)):o(a[c])?y(n[c]?.(...i)??[],(e=>r(...i,e))):r(...i,a[c])};r()}))]})(),K=e=>{e!=L&&(L=e,G(V,void 0,L))},Q=e=>{(k&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async e=>(2!=L&&(K(1),m++,await ee((async()=>{try{const t=await a();c(t)?Q(t):e?q(e):d("Content is not an array: "+t)}catch(t){l?.(t),e&&q(e)}K(0)}))),te),Y=()=>(M&&(r(M),M=void 0),te),Z=async e=>(1!=L&&(K(2),R++,await ee((async()=>{try{await n(j,e)}catch(e){l?.(e)}K(0)}))),te),_=()=>(C&&(t.delListener(C),C=void 0),te),ee=async(...e)=>(h(O($,w),...e),await(async()=>{if(!O(W,w)){for(z(W,w,1);!o(S=v(O($,w)));)try{await S()}catch(e){l?.(e)}z(W,w,0)}})(),te),te={load:X,startAutoLoad:async e=>{Y(),await X(e);try{M=await s((async(e,t)=>{t||e?2!=L&&(K(1),m++,Q(t??e),K(0)):await X()}))}catch(e){l?.(e)}return te},stopAutoLoad:Y,isAutoLoading:()=>!o(M),save:Z,startAutoSave:async()=>(_(),await Z(),C=t.addDidFinishTransactionListener((()=>{const e=F();U(e)&&Z(e)})),te),stopAutoSave:_,isAutoSaving:()=>!o(C),getStatus:()=>L,addStatusListener:e=>B(e,V),delListener:e=>(I(e),t),schedule:ee,getStore:()=>t,destroy:()=>(O($,w).splice(0,void 0),Y().stopAutoSave()),getStats:()=>({loads:m,saves:R}),...p};return b(te)},F=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),U=n.crypto?e=>n.crypto.getRandomValues(e):e=>(e=>e.map((()=>r(256*s.random()))))(e),q=(e=16)=>{return t=(e,t)=>e+F[63&t],U(new Uint8Array(e)).reduce(t,"");var t};exports.createWsSynchronizer=async(t,a,n=1,s,r,c)=>{const g=(e,t)=>(a.addEventListener(e,t),()=>a.removeEventListener(e,t)),d=((t,a,n,s,r,c,l,g,d={})=>{let y,h=0,v=0,p=0;const f=D(),w=()=>q(11),S=(e,t,n,s)=>{v++,c?.(e,t,n,s),a(e,t,n,s)},b=async(e,t,a,n)=>u(((s,o)=>{const i=n+"."+q(4),c=((e,t=0)=>setTimeout(e,1e3*t))((()=>{H(f,i),o(`No response from ${e??"anyone"} to ${i}, `+t)}),r);z(f,i,[e,(e,t)=>{clearTimeout(c),H(f,i),s([e,t,n])}]),S(e,i,t,a)})),L=(e,[t,a])=>{M(t,(([t,a],n)=>{const s=C(e[0],n,k);M(t,(([e,t],a)=>{const n=C(s[0],a,k);M(e,(([e,t],a)=>n[0][a]=R(e,t))),n[1]=V(n[1],t)})),s[1]=V(s[1],a)})),e[1]=V(e[1],a)},m=async(a=null,n,s=w())=>{try{o(n)&&([n,a,s]=await b(null,1,e,s));const[r,i]=n,[c,l]=t.getMergeableContentHashes();let g=k();if(c!=r){const[e,n]=(await b(a,4,t.getMergeableTableHashes(),s))[0];if(g=e,!A(n)){const[e,r]=(await b(a,5,t.getMergeableRowHashes(n),s))[0];if(L(g,e),!A(r)){const e=(await b(a,6,t.getMergeableCellHashes(r),s))[0];L(g,e)}}}return[g,l==i?k():(await b(a,7,t.getMergeableValueHashes(),s))[0],1]}catch(e){g?.(e)}},T=j(t,(async()=>{const e=await m();return!e||A(e[0][0])&&A(e[1][0])?void 0:e}),(async(e,a)=>a?S(null,w(),3,a):S(null,w(),2,t.getMergeableContentHashes())),(e=>y=e),(()=>y=void 0),g,2,{startSync:async e=>(h=1,await(await T.startAutoLoad(e)).startAutoSave()),stopSync:()=>(h=0,T.stopAutoLoad().stopAutoSave()),destroy:()=>(s(),T.stopSync()),getSynchronizerStats:()=>({sends:v,receives:p}),...d},1);return n(((e,a,n,s)=>{const r=h||T.isAutoLoading();p++,l?.(e,a,n,s),0==n?i(O(f,a),(([t,a])=>o(t)||t==e?a(s,e):0)):2==n&&r?m(e,s,a??void 0).then((e=>{y?.(void 0,e)})).catch(g):3==n&&r?y?.(void 0,s):i(1==n&&(h||T.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,(t=>{S(e,a,0,t)}))})),T})(t,((t,...n)=>a.send(((t,...a)=>{return n=t??e,s=L(a,((e,t)=>void 0===t?"":t)),n+"\n"+s;var n,s})(t,...n))),(e=>g("message",(({data:t})=>((e,t)=>(e=>{const a=e.indexOf("\n");var n,s,r;-1!==a&&(n=l(e,0,a),s=l(e,a+1),t(n,...(r=s,m(r,((e,t)=>""===t?void 0:t)))))})(e))(t.toString("utf8"),e)))),(()=>{a.close()}),n,s,r,c,{getWebSocket:()=>a});return u((e=>{if(a.readyState!=a.OPEN){const t=t=>{t&&c?.(t),a(),n(),e(d)},a=g("open",(()=>t())),n=g("error",t)}else e(d)}))};
@@ -1 +1 @@
1
- "use strict";const t="",e=(t,e="",a)=>t.split(e,a),a=Promise,s=globalThis,n=Math,o=n.floor,r=t=>null==t,i=(t,e,a)=>r(t)?a?.():e(t),c=t=>Array.isArray(t),l=(t,e,a)=>t.slice(e,a),d=t=>t.length,g=t=>{throw Error(t)},u=(t,e)=>t.forEach(e),y=(t,e,a)=>t.reduce(e,a),h=(t,...e)=>t.push(...e),v=t=>t.shift(),S=Object,w=t=>S.getPrototypeOf(t),p=S.entries,f=S.keys,b=S.freeze,A=(t,e)=>u(p(t),(([t,a])=>e(a,t))),C=t=>(t=>!r(t)&&i(w(t),(t=>t==S.prototype||r(w(t))),(()=>!0)))(t)&&0==(t=>d(f(t)))(t),M=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),L=t=>t?.size??0,m=(T=L,t=>y(D(t),((t,e)=>t+T(e)),0));var T;const H=t=>r(t)||0==L(t),D=t=>[...t?.values()??[]],k=(t,e)=>t?.forEach(e),O=(t,e)=>t?.delete(e),P=t=>new Map(t),E=t=>[...t?.keys()??[]],I=(t,e)=>t?.get(e),z=(t,e,a)=>r(a)?(O(t,e),t):t?.set(e,a),N=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(I(t,e)):z(t,e,a()),I(t,e)},R=(t,e,a,s,n=0)=>i((a?N:I)(t,e[n],n>d(e)-2?a:P),(o=>{if(n>d(e)-2)return s?.(o)&&z(t,e[n]),o;const r=R(o,e,a,s,n+1);return H(o)&&z(t,e[n]),r})),V=JSON.stringify,x=JSON.parse,J=(t,e)=>{const a=t.indexOf("\n");-1!==a&&e(l(t,0,a),l(t,a+1))},W=(t,e)=>t+"\n"+e,$=(t,e)=>e?[t,e]:[t],j=(t,e)=>((t??"")>(e??"")?t:e)??"",F=(t="")=>$(((t=[])=>S.fromEntries(t))(),t),U=t=>new Set(c(t)||r(t)?t:[t]),q=/^\d+$/,B=e=>{let a;const[s,n]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{q.test(t)&&d(e)<1e3&&h(e,t)}]})(),o=P();return[(n,r,i,c=[],l=()=>[])=>{a??=e();const d=s(1);var g,u;return z(o,d,[n,r,i,c,l]),g=R(r,i??[t],U),u=d,g?.add(u),d},(e,s,...n)=>u(((e,a=[t])=>{const s=[],n=(t,e)=>e==d(a)?h(s,t):null===a[e]?k(t,(t=>n(t,e+1))):u([a[e],null],(a=>n(I(t,a),e+1)));return n(e,0),s})(e,s),(t=>k(t,(t=>I(o,t)[0](a,...s??[],...n))))),e=>i(I(o,e),(([,a,s])=>(R(a,s??[t],void 0,(t=>(O(t,e),H(t)?1:0))),z(o,e),n(e),s))),t=>i(I(o,t),(([t,,e=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(e)?t(a,...i,...n(i)):r(e[c])?u(s[c]?.(...i)??[],(t=>o(...i,t))):o(...i,e[c])};o()}))]},G=P(),K=P(),Q=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),X=s.crypto?t=>s.crypto.getRandomValues(t):t=>(t=>t.map((()=>o(256*n.random()))))(t),Y=/\/([^?]*)/;exports.createWsServer=(e,s)=>{const n=P(),o=P(),l=P(),d=P(),[S,w,p]=B((()=>D)),f=t=>{t[1]?.destroy(),t[2]?.destroy()},T=(e,a,s)=>n=>J(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,k(a,((t,e)=>i(e,t)))):"S"===n?s[3]?.(r):I(a,n)?.send(r)}));e.on("connection",((e,S)=>{return i((p=S.url,L=Y,p?.match(L)),(([,p])=>i(S.headers["sec-websocket-key"],(async S=>{const L=N(l,p,P),m=N(d,p,(()=>[0])),D=T(S,L,m);H(L)&&(w(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=T("S",o,e);e[2]=((t,e,s,n,o,l,d,u,S={})=>{let w,p=0,f=0;const L=P(),m=(t,a,s,n)=>{p++,e(t,a,s,n)},T=async(t,e,s="")=>new a(((a,n)=>{const r=((t=16)=>y(X(new Uint8Array(t)),((t,e)=>t+Q[63&e]),""))(),i=setTimeout((()=>{O(L,r),n(`No response from ${t??"anyone"} to ${r}, `+e)}),1e3*o);z(L,r,[t,(t,e)=>{clearTimeout(i),O(L,r),a([t,e])}]),m(t,r,e,s)})),H=(t,[e,a])=>{A(e,(([e,a],s)=>{const n=M(t[0],s,F);A(e,(([t,e],a)=>{const s=M(n[0],a,F);A(t,(([t,e],a)=>s[0][a]=$(t,e))),s[1]=j(s[1],e)})),n[1]=j(n[1],a)})),t[1]=j(t[1],a)},D=async(e=null,a)=>{r(a)&&([a,e]=await T(e,1));const[s,n]=a,[o,i]=t.getMergeableContentHashes();let c=F();if(o!=s){const[a,s]=(await T(e,4,t.getMergeableTableHashes()))[0];if(c=a,!C(s)){const[a,n]=(await T(e,5,t.getMergeableRowHashes(s)))[0];if(H(c,a),!C(n)){const a=(await T(e,6,t.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?F():(await T(e,7,t.getMergeableValueHashes()))[0],1]},k=((t,e,a,s,n,o,l,d={},u=[])=>{let y,S,w,p=0,f=0,A=0;N(G,u,(()=>0)),N(K,u,(()=>[]));const M=P(),[L,m,T,H,D]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!C(t)||!C(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!C(t)||!C(e),e.setContent]:g("Store type not supported by this Persister"))(l,t),[k,O,E]=B((()=>F)),R=t=>{t!=p&&(p=t,O(M,void 0,p))},V=e=>{(L&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},x=async t=>(2!=p&&(R(1),f++,await j((async()=>{try{const a=await e();c(a)?V(a):t?D(t):g("Content is not an array "+a)}catch(e){t&&D(t)}R(0)}))),F),J=()=>(S&&(n(S),S=void 0),F),W=async t=>(1!=p&&(R(2),A++,await j((async()=>{try{await a(m,t)}catch(t){}R(0)}))),F),$=()=>(i(w,t.delListener),w=void 0,F),j=async(...t)=>(h(I(K,u),...t),await(async()=>{if(!I(G,u)){for(z(G,u,1);!r(y=v(I(K,u)));)try{await y()}catch(t){}z(G,u,0)}})(),F),F={load:x,startAutoLoad:async t=>{await J().load(t);try{S=await s((async(t,e)=>{e||t?2!=p&&(R(1),f++,V(e??t),R(0)):await x()}))}catch(t){}return F},stopAutoLoad:J,isAutoLoading:()=>!r(S),save:W,startAutoSave:async()=>(await $().save(),w=t.addDidFinishTransactionListener((()=>{const t=T();H(t)&&W(t)})),F),stopAutoSave:$,isAutoSaving:()=>!r(w),getStatus:()=>p,addStatusListener:t=>k(t,M),delListener:e=>(E(e),t),schedule:j,getStore:()=>t,destroy:()=>(I(K,u).splice(0,void 0),J().stopAutoSave()),getStats:()=>({loads:f,saves:A}),...d};return b(F)})(t,(async()=>{const t=await D();return C(t[0][0])&&C(t[1][0])?void 0:t}),(async(e,a)=>a?m(null,null,3,a):m(null,null,2,t.getMergeableContentHashes())),(t=>w=t),(()=>w=void 0),0,2,{startSync:async t=>await(await k.startAutoLoad(t)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:p,receives:f}),...S});return s(((e,a,s,n)=>{f++,0==s?i(I(L,a),(([t,a])=>r(t)||t==e?a(n,e):0)):2==s&&k.isAutoLoading()?D(e,n).then((t=>{w?.(void 0,t)})):3==s&&k.isAutoLoading()?w?.(void 0,n):i(1==s&&k.isAutoSaving()?t.getMergeableContentHashes():4==s?t.getMergeableTableDiff(n):5==s?t.getMergeableRowDiff(n):6==s?t.getMergeableCellDiff(n):7==s?t.getMergeableValueDiff(n):void 0,(t=>{m(e,a,0,t)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,V(a,((t,e)=>void 0===e?"":e))))(e,a,s,o))),(t=>e[3]=e=>((t,e)=>J(t,((t,a)=>{return e(t,...(s=a,x(s,((t,e)=>""===e?void 0:e))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:t=>0})))(m,p,L)),z(L,S,e),w(o,[p],S,1),e.on("message",(t=>{const e=t.toString("utf8");0==m[0]?D(e):h(m[4],e)})),1==m[0]&&(await(async t=>{t[0]=2,await t[1].schedule(t[1].startAutoLoad,t[1].startAutoSave,t[2].startSync),t[5](t[1].getStore()),t[0]=0})(m),u(m[4],D),m[4]=[]),e.on("close",(()=>{O(L,S),w(o,[p],S,-1),H(L)&&(f(m),O(d,p),O(l,p),w(n,void 0,p,-1))}))}))));var p,L}));const D={getWebSocketServer:()=>e,getPathIds:()=>E(l),getClientIds:t=>E(I(l,t)),addPathIdsListener:t=>S(t,n),addClientIdsListener:(t,e)=>S(e,o,[t]),delListener:t=>(p(t),D),getStats:()=>({paths:L(l),clients:m(l)}),destroy:()=>{l.clear(),k(d,f),e.close()}};return b(D)};
1
+ "use strict";const t="",e="error",a=(t,e="",a)=>t.split(e,a),s=Promise,n=globalThis,o=Math,r=o.floor,i=t=>null==t,c=(t,e,a)=>i(t)?a?.():e(t),l=t=>Array.isArray(t),d=(t,e,a)=>t.slice(e,a),g=t=>t.length,u=t=>{throw Error(t)},y=(t,e)=>t.forEach(e),h=(t,e,a)=>t.reduce(e,a),v=(t,...e)=>t.push(...e),S=t=>t.shift(),w=Object,p=t=>w.getPrototypeOf(t),f=w.entries,b=w.keys,A=w.freeze,C=(t,e)=>y(f(t),(([t,a])=>e(a,t))),M=t=>(t=>!i(t)&&c(p(t),(t=>t==w.prototype||i(p(t))),(()=>!0)))(t)&&0==(t=>g(b(t)))(t),L=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),m=t=>t?.size??0,T=(H=m,t=>h(k(t),((t,e)=>t+H(e)),0));var H;const D=t=>i(t)||0==m(t),k=t=>[...t?.values()??[]],O=(t,e)=>t?.forEach(e),P=(t,e)=>t?.delete(e),E=t=>new Map(t),I=t=>[...t?.keys()??[]],z=(t,e)=>t?.get(e),N=(t,e,a)=>i(a)?(P(t,e),t):t?.set(e,a),R=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(z(t,e)):N(t,e,a()),z(t,e)},V=(t,e,a,s,n=0)=>c((a?R:z)(t,e[n],n>g(e)-2?a:E),(o=>{if(n>g(e)-2)return s?.(o)&&N(t,e[n]),o;const r=V(o,e,a,s,n+1);return D(o)&&N(t,e[n]),r})),x=JSON.stringify,J=JSON.parse,W=(t,e)=>{const a=t.indexOf("\n");-1!==a&&e(d(t,0,a),d(t,a+1))},$=(t,e)=>t+"\n"+e,j=(t,e)=>e?[t,e]:[t],F=(t,e)=>((t??"")>(e??"")?t:e)??"",U=(t="")=>j(((t=[])=>w.fromEntries(t))(),t),q=t=>new Set(l(t)||i(t)?t:[t]),B=/^\d+$/,G=e=>{let a;const[s,n]=(()=>{const e=[];let a=0;return[s=>(s?S(e):null)??t+a++,t=>{B.test(t)&&g(e)<1e3&&v(e,t)}]})(),o=E();return[(n,r,i,c=[],l=()=>[])=>{a??=e();const d=s(1);var g,u;return N(o,d,[n,r,i,c,l]),g=V(r,i??[t],q),u=d,g?.add(u),d},(e,s,...n)=>y(((e,a=[t])=>{const s=[],n=(t,e)=>e==g(a)?v(s,t):null===a[e]?O(t,(t=>n(t,e+1))):y([a[e],null],(a=>n(z(t,a),e+1)));return n(e,0),s})(e,s),(t=>O(t,(t=>z(o,t)[0](a,...s??[],...n))))),e=>c(z(o,e),(([,a,s])=>(V(a,s??[t],void 0,(t=>(P(t,e),D(t)?1:0))),N(o,e),n(e),s))),t=>c(z(o,t),(([t,,e=[],s,n])=>{const o=(...r)=>{const c=g(r);c==g(e)?t(a,...r,...n(r)):i(e[c])?y(s[c]?.(...r)??[],(t=>o(...r,t))):o(...r,e[c])};o()}))]},K=E(),Q=E(),X=a("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),Y=n.crypto?t=>n.crypto.getRandomValues(t):t=>(t=>t.map((()=>r(256*o.random()))))(t),Z=(t=16)=>h(Y(new Uint8Array(t)),((t,e)=>t+X[63&e]),""),_=/\/([^?]*)/;exports.createWsServer=(a,n,o)=>{const r=E(),d=E(),g=E(),h=E(),[w,p,f]=G((()=>k)),b=t=>{t[1]?.destroy(),t[2]?.destroy()},H=(e,a,s)=>n=>W(n,((n,o)=>{const r=$(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,O(a,((t,e)=>i(e,t)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));a.on("connection",((a,w)=>{return c((f=w.url,m=_,f?.match(m)),(([,f])=>c(w.headers["sec-websocket-key"],(async w=>{const m=R(g,f,E),T=R(h,f,(()=>[0])),k=H(w,m,T);D(m)&&(p(r,void 0,f,1),await(async(e,a,r)=>c(await(n?.(a)),(a=>{e[0]=1,e[1]=l(a)?a[0]:a;const n=H("S",r,e);e[2]=((e,a,n,o,r,d,g,y,h={})=>{let w,p=0,f=0,b=0;const m=E(),T=()=>Z(11),H=(t,e,s,n)=>{f++,a(t,e,s,n)},D=async(t,e,a,n)=>new s(((s,o)=>{const i=n+"."+Z(4),c=((t,e=0)=>setTimeout(t,1e3*e))((()=>{P(m,i),o(`No response from ${t??"anyone"} to ${i}, `+e)}),r);N(m,i,[t,(t,e)=>{clearTimeout(c),P(m,i),s([t,e,n])}]),H(t,i,e,a)})),k=(t,[e,a])=>{C(e,(([e,a],s)=>{const n=L(t[0],s,U);C(e,(([t,e],a)=>{const s=L(n[0],a,U);C(t,(([t,e],a)=>s[0][a]=j(t,e))),s[1]=F(s[1],e)})),n[1]=F(n[1],a)})),t[1]=F(t[1],a)},O=async(a=null,s,n=T())=>{try{i(s)&&([s,a,n]=await D(null,1,t,n));const[o,r]=s,[c,l]=e.getMergeableContentHashes();let d=U();if(c!=o){const[t,s]=(await D(a,4,e.getMergeableTableHashes(),n))[0];if(d=t,!M(s)){const[t,o]=(await D(a,5,e.getMergeableRowHashes(s),n))[0];if(k(d,t),!M(o)){const t=(await D(a,6,e.getMergeableCellHashes(o),n))[0];k(d,t)}}}return[d,l==r?U():(await D(a,7,e.getMergeableValueHashes(),n))[0],1]}catch(t){y?.(t)}},I=((t,e,a,s,n,o,r,c={},d=0,g=[])=>{let y,h,w,p=0,f=0,b=0;R(K,g,(()=>0)),R(Q,g,(()=>[]));const C=E(),[L,m,T,H,D]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!M(t)||!M(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!M(t)||!M(e),e.setContent]:u("Store type not supported by this Persister"))(r,t,d),[k,O,P]=G((()=>F)),I=t=>{t!=p&&(p=t,O(C,void 0,p))},V=e=>{(L&&l(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},x=async t=>(2!=p&&(I(1),f++,await j((async()=>{try{const a=await e();l(a)?V(a):t?D(t):u("Content is not an array: "+a)}catch(e){o?.(e),t&&D(t)}I(0)}))),F),J=()=>(h&&(n(h),h=void 0),F),W=async t=>(1!=p&&(I(2),b++,await j((async()=>{try{await a(m,t)}catch(t){o?.(t)}I(0)}))),F),$=()=>(w&&(t.delListener(w),w=void 0),F),j=async(...t)=>(v(z(Q,g),...t),await(async()=>{if(!z(K,g)){for(N(K,g,1);!i(y=S(z(Q,g)));)try{await y()}catch(t){o?.(t)}N(K,g,0)}})(),F),F={load:x,startAutoLoad:async t=>{J(),await x(t);try{h=await s((async(t,e)=>{e||t?2!=p&&(I(1),f++,V(e??t),I(0)):await x()}))}catch(t){o?.(t)}return F},stopAutoLoad:J,isAutoLoading:()=>!i(h),save:W,startAutoSave:async()=>($(),await W(),w=t.addDidFinishTransactionListener((()=>{const t=T();H(t)&&W(t)})),F),stopAutoSave:$,isAutoSaving:()=>!i(w),getStatus:()=>p,addStatusListener:t=>k(t,C),delListener:e=>(P(e),t),schedule:j,getStore:()=>t,destroy:()=>(z(Q,g).splice(0,void 0),J().stopAutoSave()),getStats:()=>({loads:f,saves:b}),...c};return A(F)})(e,(async()=>{const t=await O();return!t||M(t[0][0])&&M(t[1][0])?void 0:t}),(async(t,a)=>a?H(null,T(),3,a):H(null,T(),2,e.getMergeableContentHashes())),(t=>w=t),(()=>w=void 0),y,2,{startSync:async t=>(p=1,await(await I.startAutoLoad(t)).startAutoSave()),stopSync:()=>(p=0,I.stopAutoLoad().stopAutoSave()),destroy:()=>I.stopSync(),getSynchronizerStats:()=>({sends:f,receives:b}),...h},1);return n(((t,a,s,n)=>{const o=p||I.isAutoLoading();b++,0==s?c(z(m,a),(([e,a])=>i(e)||e==t?a(n,t):0)):2==s&&o?O(t,n,a??void 0).then((t=>{w?.(void 0,t)})).catch(y):3==s&&o?w?.(void 0,n):c(1==s&&(p||I.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{H(t,a,0,e)}))})),I})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>$(e??t,x(a,((t,e)=>void 0===e?"":e))))(e,a,s,o))),(t=>e[3]=e=>((t,e)=>W(t,((t,a)=>{return e(t,...(s=a,J(s,((t,e)=>""===e?void 0:e))));var s})))(e,t)),0,1,0,0,o),e[4]=[],e[5]=l(a)?a[1]:t=>0})))(T,f,m)),N(m,w,a),p(d,[f],w,1),a.on("message",(t=>{const e=t.toString("utf8");0==T[0]?k(e):v(T[4],e)})),1==T[0]&&(await(async t=>{t[0]=2,await t[1].schedule(t[1].startAutoLoad,t[1].startAutoSave,t[2].startSync),t[5](t[1].getStore()),t[0]=0})(T),y(T[4],k),T[4]=[]),a.on("close",(()=>{P(m,w),p(d,[f],w,-1),D(m)&&(b(T),P(h,f),P(g,f),p(r,void 0,f,-1))})),o&&a.on(e,o)}))));var f,m})),o&&a.on(e,o);const k={getWebSocketServer:()=>a,getPathIds:()=>I(g),getClientIds:t=>I(z(g,t)),addPathIdsListener:t=>w(t,r),addClientIdsListener:(t,e)=>w(e,d,[t]),delListener:t=>(f(t),k),getStats:()=>({paths:m(g),clients:T(g)}),destroy:()=>{g.clear(),O(h,b),a.close()}};return A(k)};
@@ -1 +1 @@
1
- "use strict";const t="",e=(t,e="",a)=>t.split(e,a),a=Promise,s=globalThis,n=Math,o=n.floor,r=t=>null==t,i=(t,e,a)=>r(t)?a?.():e(t),c=t=>Array.isArray(t),l=(t,e,a)=>t.slice(e,a),d=t=>t.length,g=t=>{throw Error(t)},u=(t,e)=>t.forEach(e),y=(t,e,a)=>t.reduce(e,a),h=(t,...e)=>t.push(...e),v=t=>t.shift(),S=Object,w=t=>S.getPrototypeOf(t),p=S.entries,f=S.keys,b=S.freeze,A=(t,e)=>u(p(t),(([t,a])=>e(a,t))),C=t=>(t=>!r(t)&&i(w(t),(t=>t==S.prototype||r(w(t))),(()=>!0)))(t)&&0==(t=>d(f(t)))(t),M=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),L=t=>t?.size??0,m=(T=L,t=>y(D(t),((t,e)=>t+T(e)),0));var T;const H=t=>r(t)||0==L(t),D=t=>[...t?.values()??[]],k=(t,e)=>t?.forEach(e),O=(t,e)=>t?.delete(e),P=t=>new Map(t),E=t=>[...t?.keys()??[]],I=(t,e)=>t?.get(e),z=(t,e,a)=>r(a)?(O(t,e),t):t?.set(e,a),N=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(I(t,e)):z(t,e,a()),I(t,e)},R=(t,e,a,s,n=0)=>i((a?N:I)(t,e[n],n>d(e)-2?a:P),(o=>{if(n>d(e)-2)return s?.(o)&&z(t,e[n]),o;const r=R(o,e,a,s,n+1);return H(o)&&z(t,e[n]),r})),V=JSON.stringify,x=JSON.parse,J=(t,e)=>{const a=t.indexOf("\n");-1!==a&&e(l(t,0,a),l(t,a+1))},W=(t,e)=>t+"\n"+e,$=(t,e)=>e?[t,e]:[t],j=(t,e)=>((t??"")>(e??"")?t:e)??"",F=(t="")=>$(((t=[])=>S.fromEntries(t))(),t),U=t=>new Set(c(t)||r(t)?t:[t]),q=/^\d+$/,B=e=>{let a;const[s,n]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{q.test(t)&&d(e)<1e3&&h(e,t)}]})(),o=P();return[(n,r,i,c=[],l=()=>[])=>{a??=e();const d=s(1);var g,u;return z(o,d,[n,r,i,c,l]),g=R(r,i??[t],U),u=d,g?.add(u),d},(e,s,...n)=>u(((e,a=[t])=>{const s=[],n=(t,e)=>e==d(a)?h(s,t):null===a[e]?k(t,(t=>n(t,e+1))):u([a[e],null],(a=>n(I(t,a),e+1)));return n(e,0),s})(e,s),(t=>k(t,(t=>I(o,t)[0](a,...s??[],...n))))),e=>i(I(o,e),(([,a,s])=>(R(a,s??[t],void 0,(t=>(O(t,e),H(t)?1:0))),z(o,e),n(e),s))),t=>i(I(o,t),(([t,,e=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(e)?t(a,...i,...n(i)):r(e[c])?u(s[c]?.(...i)??[],(t=>o(...i,t))):o(...i,e[c])};o()}))]},G=P(),K=P(),Q=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),X=s.crypto?t=>s.crypto.getRandomValues(t):t=>(t=>t.map((()=>o(256*n.random()))))(t),Y=/\/([^?]*)/;exports.createWsServer=(e,s)=>{const n=P(),o=P(),l=P(),d=P(),[S,w,p]=B((()=>D)),f=t=>{t[1]?.destroy(),t[2]?.destroy()},T=(e,a,s)=>n=>J(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,k(a,((t,e)=>i(e,t)))):"S"===n?s[3]?.(r):I(a,n)?.send(r)}));e.on("connection",((e,S)=>{return i((p=S.url,L=Y,p?.match(L)),(([,p])=>i(S.headers["sec-websocket-key"],(async S=>{const L=N(l,p,P),m=N(d,p,(()=>[0])),D=T(S,L,m);H(L)&&(w(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=T("S",o,e);e[2]=((t,e,s,n,o,l,d,u,S={})=>{let w,p=0,f=0;const L=P(),m=(t,a,s,n)=>{p++,e(t,a,s,n)},T=async(t,e,s="")=>new a(((a,n)=>{const r=((t=16)=>y(X(new Uint8Array(t)),((t,e)=>t+Q[63&e]),""))(),i=setTimeout((()=>{O(L,r),n(`No response from ${t??"anyone"} to ${r}, `+e)}),1e3*o);z(L,r,[t,(t,e)=>{clearTimeout(i),O(L,r),a([t,e])}]),m(t,r,e,s)})),H=(t,[e,a])=>{A(e,(([e,a],s)=>{const n=M(t[0],s,F);A(e,(([t,e],a)=>{const s=M(n[0],a,F);A(t,(([t,e],a)=>s[0][a]=$(t,e))),s[1]=j(s[1],e)})),n[1]=j(n[1],a)})),t[1]=j(t[1],a)},D=async(e=null,a)=>{r(a)&&([a,e]=await T(e,1));const[s,n]=a,[o,i]=t.getMergeableContentHashes();let c=F();if(o!=s){const[a,s]=(await T(e,4,t.getMergeableTableHashes()))[0];if(c=a,!C(s)){const[a,n]=(await T(e,5,t.getMergeableRowHashes(s)))[0];if(H(c,a),!C(n)){const a=(await T(e,6,t.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?F():(await T(e,7,t.getMergeableValueHashes()))[0],1]},k=((t,e,a,s,n,o,l,d={},u=[])=>{let y,S,w,p=0,f=0,A=0;N(G,u,(()=>0)),N(K,u,(()=>[]));const M=P(),[L,m,T,H,D]=((t=1,e)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,e.getTransactionMergeableChanges,([[t],[e]])=>!C(t)||!C(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!C(t)||!C(e),e.setContent]:g("Store type not supported by this Persister"))(l,t),[k,O,E]=B((()=>F)),R=t=>{t!=p&&(p=t,O(M,void 0,p))},V=e=>{(L&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},x=async t=>(2!=p&&(R(1),f++,await j((async()=>{try{const a=await e();c(a)?V(a):t?D(t):g("Content is not an array "+a)}catch(e){t&&D(t)}R(0)}))),F),J=()=>(S&&(n(S),S=void 0),F),W=async t=>(1!=p&&(R(2),A++,await j((async()=>{try{await a(m,t)}catch(t){}R(0)}))),F),$=()=>(i(w,t.delListener),w=void 0,F),j=async(...t)=>(h(I(K,u),...t),await(async()=>{if(!I(G,u)){for(z(G,u,1);!r(y=v(I(K,u)));)try{await y()}catch(t){}z(G,u,0)}})(),F),F={load:x,startAutoLoad:async t=>{await J().load(t);try{S=await s((async(t,e)=>{e||t?2!=p&&(R(1),f++,V(e??t),R(0)):await x()}))}catch(t){}return F},stopAutoLoad:J,isAutoLoading:()=>!r(S),save:W,startAutoSave:async()=>(await $().save(),w=t.addDidFinishTransactionListener((()=>{const t=T();H(t)&&W(t)})),F),stopAutoSave:$,isAutoSaving:()=>!r(w),getStatus:()=>p,addStatusListener:t=>k(t,M),delListener:e=>(E(e),t),schedule:j,getStore:()=>t,destroy:()=>(I(K,u).splice(0,void 0),J().stopAutoSave()),getStats:()=>({loads:f,saves:A}),...d};return b(F)})(t,(async()=>{const t=await D();return C(t[0][0])&&C(t[1][0])?void 0:t}),(async(e,a)=>a?m(null,null,3,a):m(null,null,2,t.getMergeableContentHashes())),(t=>w=t),(()=>w=void 0),0,2,{startSync:async t=>await(await k.startAutoLoad(t)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:p,receives:f}),...S});return s(((e,a,s,n)=>{f++,0==s?i(I(L,a),(([t,a])=>r(t)||t==e?a(n,e):0)):2==s&&k.isAutoLoading()?D(e,n).then((t=>{w?.(void 0,t)})):3==s&&k.isAutoLoading()?w?.(void 0,n):i(1==s&&k.isAutoSaving()?t.getMergeableContentHashes():4==s?t.getMergeableTableDiff(n):5==s?t.getMergeableRowDiff(n):6==s?t.getMergeableCellDiff(n):7==s?t.getMergeableValueDiff(n):void 0,(t=>{m(e,a,0,t)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,V(a,((t,e)=>void 0===e?"":e))))(e,a,s,o))),(t=>e[3]=e=>((t,e)=>J(t,((t,a)=>{return e(t,...(s=a,x(s,((t,e)=>""===e?void 0:e))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:t=>0})))(m,p,L)),z(L,S,e),w(o,[p],S,1),e.on("message",(t=>{const e=t.toString("utf8");0==m[0]?D(e):h(m[4],e)})),1==m[0]&&(await(async t=>{t[0]=2,await t[1].schedule(t[1].startAutoLoad,t[1].startAutoSave,t[2].startSync),t[5](t[1].getStore()),t[0]=0})(m),u(m[4],D),m[4]=[]),e.on("close",(()=>{O(L,S),w(o,[p],S,-1),H(L)&&(f(m),O(d,p),O(l,p),w(n,void 0,p,-1))}))}))));var p,L}));const D={getWebSocketServer:()=>e,getPathIds:()=>E(l),getClientIds:t=>E(I(l,t)),addPathIdsListener:t=>S(t,n),addClientIdsListener:(t,e)=>S(e,o,[t]),delListener:t=>(p(t),D),getStats:()=>({paths:L(l),clients:m(l)}),destroy:()=>{l.clear(),k(d,f),e.close()}};return b(D)};
1
+ "use strict";const t="",e="error",a=(t,e="",a)=>t.split(e,a),s=Promise,n=globalThis,o=Math,r=o.floor,i=t=>null==t,c=(t,e,a)=>i(t)?a?.():e(t),l=t=>Array.isArray(t),d=(t,e,a)=>t.slice(e,a),g=t=>t.length,u=t=>{throw Error(t)},y=(t,e)=>t.forEach(e),h=(t,e,a)=>t.reduce(e,a),v=(t,...e)=>t.push(...e),S=t=>t.shift(),w=Object,p=t=>w.getPrototypeOf(t),f=w.entries,b=w.keys,A=w.freeze,C=(t,e)=>y(f(t),(([t,a])=>e(a,t))),M=t=>(t=>!i(t)&&c(p(t),(t=>t==w.prototype||i(p(t))),(()=>!0)))(t)&&0==(t=>g(b(t)))(t),L=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),m=t=>t?.size??0,T=(H=m,t=>h(k(t),((t,e)=>t+H(e)),0));var H;const D=t=>i(t)||0==m(t),k=t=>[...t?.values()??[]],O=(t,e)=>t?.forEach(e),P=(t,e)=>t?.delete(e),E=t=>new Map(t),I=t=>[...t?.keys()??[]],z=(t,e)=>t?.get(e),N=(t,e,a)=>i(a)?(P(t,e),t):t?.set(e,a),R=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(z(t,e)):N(t,e,a()),z(t,e)},V=(t,e,a,s,n=0)=>c((a?R:z)(t,e[n],n>g(e)-2?a:E),(o=>{if(n>g(e)-2)return s?.(o)&&N(t,e[n]),o;const r=V(o,e,a,s,n+1);return D(o)&&N(t,e[n]),r})),x=JSON.stringify,J=JSON.parse,W=(t,e)=>{const a=t.indexOf("\n");-1!==a&&e(d(t,0,a),d(t,a+1))},$=(t,e)=>t+"\n"+e,j=(t,e)=>e?[t,e]:[t],F=(t,e)=>((t??"")>(e??"")?t:e)??"",U=(t="")=>j(((t=[])=>w.fromEntries(t))(),t),q=t=>new Set(l(t)||i(t)?t:[t]),B=/^\d+$/,G=e=>{let a;const[s,n]=(()=>{const e=[];let a=0;return[s=>(s?S(e):null)??t+a++,t=>{B.test(t)&&g(e)<1e3&&v(e,t)}]})(),o=E();return[(n,r,i,c=[],l=()=>[])=>{a??=e();const d=s(1);var g,u;return N(o,d,[n,r,i,c,l]),g=V(r,i??[t],q),u=d,g?.add(u),d},(e,s,...n)=>y(((e,a=[t])=>{const s=[],n=(t,e)=>e==g(a)?v(s,t):null===a[e]?O(t,(t=>n(t,e+1))):y([a[e],null],(a=>n(z(t,a),e+1)));return n(e,0),s})(e,s),(t=>O(t,(t=>z(o,t)[0](a,...s??[],...n))))),e=>c(z(o,e),(([,a,s])=>(V(a,s??[t],void 0,(t=>(P(t,e),D(t)?1:0))),N(o,e),n(e),s))),t=>c(z(o,t),(([t,,e=[],s,n])=>{const o=(...r)=>{const c=g(r);c==g(e)?t(a,...r,...n(r)):i(e[c])?y(s[c]?.(...r)??[],(t=>o(...r,t))):o(...r,e[c])};o()}))]},K=E(),Q=E(),X=a("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),Y=n.crypto?t=>n.crypto.getRandomValues(t):t=>(t=>t.map((()=>r(256*o.random()))))(t),Z=(t=16)=>h(Y(new Uint8Array(t)),((t,e)=>t+X[63&e]),""),_=/\/([^?]*)/;exports.createWsServer=(a,n,o)=>{const r=E(),d=E(),g=E(),h=E(),[w,p,f]=G((()=>k)),b=t=>{t[1]?.destroy(),t[2]?.destroy()},H=(e,a,s)=>n=>W(n,((n,o)=>{const r=$(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,O(a,((t,e)=>i(e,t)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));a.on("connection",((a,w)=>{return c((f=w.url,m=_,f?.match(m)),(([,f])=>c(w.headers["sec-websocket-key"],(async w=>{const m=R(g,f,E),T=R(h,f,(()=>[0])),k=H(w,m,T);D(m)&&(p(r,void 0,f,1),await(async(e,a,r)=>c(await(n?.(a)),(a=>{e[0]=1,e[1]=l(a)?a[0]:a;const n=H("S",r,e);e[2]=((e,a,n,o,r,d,g,y,h={})=>{let w,p=0,f=0,b=0;const m=E(),T=()=>Z(11),H=(t,e,s,n)=>{f++,a(t,e,s,n)},D=async(t,e,a,n)=>new s(((s,o)=>{const i=n+"."+Z(4),c=((t,e=0)=>setTimeout(t,1e3*e))((()=>{P(m,i),o(`No response from ${t??"anyone"} to ${i}, `+e)}),r);N(m,i,[t,(t,e)=>{clearTimeout(c),P(m,i),s([t,e,n])}]),H(t,i,e,a)})),k=(t,[e,a])=>{C(e,(([e,a],s)=>{const n=L(t[0],s,U);C(e,(([t,e],a)=>{const s=L(n[0],a,U);C(t,(([t,e],a)=>s[0][a]=j(t,e))),s[1]=F(s[1],e)})),n[1]=F(n[1],a)})),t[1]=F(t[1],a)},O=async(a=null,s,n=T())=>{try{i(s)&&([s,a,n]=await D(null,1,t,n));const[o,r]=s,[c,l]=e.getMergeableContentHashes();let d=U();if(c!=o){const[t,s]=(await D(a,4,e.getMergeableTableHashes(),n))[0];if(d=t,!M(s)){const[t,o]=(await D(a,5,e.getMergeableRowHashes(s),n))[0];if(k(d,t),!M(o)){const t=(await D(a,6,e.getMergeableCellHashes(o),n))[0];k(d,t)}}}return[d,l==r?U():(await D(a,7,e.getMergeableValueHashes(),n))[0],1]}catch(t){y?.(t)}},I=((t,e,a,s,n,o,r,c={},d=0,g=[])=>{let y,h,w,p=0,f=0,b=0;R(K,g,(()=>0)),R(Q,g,(()=>[]));const C=E(),[L,m,T,H,D]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!M(t)||!M(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!M(t)||!M(e),e.setContent]:u("Store type not supported by this Persister"))(r,t,d),[k,O,P]=G((()=>F)),I=t=>{t!=p&&(p=t,O(C,void 0,p))},V=e=>{(L&&l(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},x=async t=>(2!=p&&(I(1),f++,await j((async()=>{try{const a=await e();l(a)?V(a):t?D(t):u("Content is not an array: "+a)}catch(e){o?.(e),t&&D(t)}I(0)}))),F),J=()=>(h&&(n(h),h=void 0),F),W=async t=>(1!=p&&(I(2),b++,await j((async()=>{try{await a(m,t)}catch(t){o?.(t)}I(0)}))),F),$=()=>(w&&(t.delListener(w),w=void 0),F),j=async(...t)=>(v(z(Q,g),...t),await(async()=>{if(!z(K,g)){for(N(K,g,1);!i(y=S(z(Q,g)));)try{await y()}catch(t){o?.(t)}N(K,g,0)}})(),F),F={load:x,startAutoLoad:async t=>{J(),await x(t);try{h=await s((async(t,e)=>{e||t?2!=p&&(I(1),f++,V(e??t),I(0)):await x()}))}catch(t){o?.(t)}return F},stopAutoLoad:J,isAutoLoading:()=>!i(h),save:W,startAutoSave:async()=>($(),await W(),w=t.addDidFinishTransactionListener((()=>{const t=T();H(t)&&W(t)})),F),stopAutoSave:$,isAutoSaving:()=>!i(w),getStatus:()=>p,addStatusListener:t=>k(t,C),delListener:e=>(P(e),t),schedule:j,getStore:()=>t,destroy:()=>(z(Q,g).splice(0,void 0),J().stopAutoSave()),getStats:()=>({loads:f,saves:b}),...c};return A(F)})(e,(async()=>{const t=await O();return!t||M(t[0][0])&&M(t[1][0])?void 0:t}),(async(t,a)=>a?H(null,T(),3,a):H(null,T(),2,e.getMergeableContentHashes())),(t=>w=t),(()=>w=void 0),y,2,{startSync:async t=>(p=1,await(await I.startAutoLoad(t)).startAutoSave()),stopSync:()=>(p=0,I.stopAutoLoad().stopAutoSave()),destroy:()=>I.stopSync(),getSynchronizerStats:()=>({sends:f,receives:b}),...h},1);return n(((t,a,s,n)=>{const o=p||I.isAutoLoading();b++,0==s?c(z(m,a),(([e,a])=>i(e)||e==t?a(n,t):0)):2==s&&o?O(t,n,a??void 0).then((t=>{w?.(void 0,t)})).catch(y):3==s&&o?w?.(void 0,n):c(1==s&&(p||I.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{H(t,a,0,e)}))})),I})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>$(e??t,x(a,((t,e)=>void 0===e?"":e))))(e,a,s,o))),(t=>e[3]=e=>((t,e)=>W(t,((t,a)=>{return e(t,...(s=a,J(s,((t,e)=>""===e?void 0:e))));var s})))(e,t)),0,1,0,0,o),e[4]=[],e[5]=l(a)?a[1]:t=>0})))(T,f,m)),N(m,w,a),p(d,[f],w,1),a.on("message",(t=>{const e=t.toString("utf8");0==T[0]?k(e):v(T[4],e)})),1==T[0]&&(await(async t=>{t[0]=2,await t[1].schedule(t[1].startAutoLoad,t[1].startAutoSave,t[2].startSync),t[5](t[1].getStore()),t[0]=0})(T),y(T[4],k),T[4]=[]),a.on("close",(()=>{P(m,w),p(d,[f],w,-1),D(m)&&(b(T),P(h,f),P(g,f),p(r,void 0,f,-1))})),o&&a.on(e,o)}))));var f,m})),o&&a.on(e,o);const k={getWebSocketServer:()=>a,getPathIds:()=>I(g),getClientIds:t=>I(z(g,t)),addPathIdsListener:t=>w(t,r),addClientIdsListener:(t,e)=>w(e,d,[t]),delListener:t=>(f(t),k),getStats:()=>({paths:m(g),clients:T(g)}),destroy:()=>{g.clear(),O(h,b),a.close()}};return A(k)};
@@ -1 +1 @@
1
- "use strict";var e=require("cloudflare:workers");const t=(e,t,s)=>null==e?s?.():t(e),s=(e,t,s)=>e.slice(t,s),c=e=>e.length,r=Object,n=/\/([^?]*)/,a=e=>{return(t=new URL(e.url).pathname,s=n,t?.match(s))?.[1]??"";var t,s},o=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,h=(e,t=null,s=null)=>new Response(s,{status:e,webSocket:t}),i=()=>h(426,null,"Upgrade required");class l extends e.DurableObject{constructor(e,t){super(e,t)}fetch(e){const s=a(e);return t(o(e),(e=>{const[t,n]=(a=new WebSocketPair,r.values(a));var a,o;return n.serializeAttachment({pathId:s}),o=this.ctx.getWebSockets(),0==c(o)&&this.onPathId(s,1),this.ctx.acceptWebSocket(n,[e]),this.onClientId(s,e,1),h(101,t)}),i)}webSocketMessage(e,c){t(this.ctx.getTags(e)[0],(t=>((e,t)=>{const c=e.indexOf("\n");-1!==c&&t(s(e,0,c),s(e,c+1))})(c.toString(),((s,c)=>{const r=((e,t)=>e+"\n"+t)(t,c);var n;""===s?(n=t=>t!==e?t.send(r):0,this.ctx.getWebSockets().forEach(n)):this.ctx.getWebSockets(s)[0]?.send(r)}))))}webSocketClose(e){const{pathId:t}=e.deserializeAttachment();this.onClientId(t,this.ctx.getTags(e)[0],-1),1==c(this.ctx.getWebSockets())&&this.onPathId(t,-1)}getClientIds(e){return t=e=>this.ctx.getTags(e)[0],this.ctx.getWebSockets().map(t);var t}onPathId(e,t){}onClientId(e,t,s){}}exports.WsServerDurableObject=l,exports.getWsServerDurableObjectFetch=e=>(t,s)=>o(t)?s[e].get(s[e].idFromName(a(t))).fetch(t):i();
1
+ "use strict";var e=require("cloudflare:workers");const t="",s=(e,t="",s)=>e.split(t,s),a=Promise,n=globalThis,r=(e,t=0)=>setTimeout(e,1e3*t),o=Math,i=o.floor,c=e=>null==e,l=(e,t,s)=>c(e)?s?.():t(e),g=e=>Array.isArray(e),u=(e,t,s)=>e.slice(t,s),h=e=>e.length,d=e=>{throw Error(e)},y=(e,t)=>e.forEach(t),w=(e,t)=>e.map(t),v=(e,...t)=>e.push(...t),S=e=>e.shift(),b=Object,p=e=>b.getPrototypeOf(e),C=b.entries,f=b.keys,M=b.freeze,A=(e,t)=>y(C(e),(([e,s])=>t(s,e))),k=e=>(e=>!c(e)&&l(p(e),(e=>e==b.prototype||c(p(e))),(()=>!0)))(e)&&0==(e=>h(f(e)))(e),m=(e,t,s)=>(((e,t)=>t in e)(e,t)||(e[t]=s()),e[t]),L=JSON.stringify,T=JSON.parse,x=(e,t)=>{const s=e.indexOf("\n");-1!==s&&t(u(e,0,s),u(e,s+1))},P=(e,...s)=>D(e??t,L(s,((e,t)=>void 0===t?"":t))),D=(e,t)=>e+"\n"+t,I=e=>c(e)||0==(e=>e?.size??0)(e),O=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),W=e=>new Map(e),R=(e,t)=>e?.get(t),j=(e,t,s)=>c(s)?(H(e,t),e):e?.set(t,s),E=(e,t,s,a)=>{var n,r;return n=e,r=t,n?.has(r)?a?.(R(e,t)):j(e,t,s()),R(e,t)},N=(e,t,s,a,n=0)=>l((s?E:R)(e,t[n],n>h(t)-2?s:W),(r=>{if(n>h(t)-2)return a?.(r)&&j(e,t[n]),r;const o=N(r,t,s,a,n+1);return I(r)&&j(e,t[n]),o})),z=(e,t)=>t?[e,t]:[e],F=(e,t)=>((e??"")>(t??"")?e:t)??"",U=(e="")=>z(((e=[])=>b.fromEntries(e))(),e),V=e=>new Set(g(e)||c(e)?e:[e]),q=/^\d+$/,J=W(),$=W(),B=(e,s,a,n,r,o,i,u={},w=0,b=[])=>{let p,C,f,A=0,m=0,L=0;E(J,b,(()=>0)),E($,b,(()=>[]));const T=W(),[x,P,D,z,F]=((e=1,t,s)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!s),([[e],[t]])=>!k(e)||!k(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!k(e)||!k(t),t.setContent]:d("Store type not supported by this Persister"))(i,e,w),[U,B,G]=(()=>{let e;const[s,a]=(()=>{const e=[];let s=0;return[a=>(a?S(e):null)??t+s++,t=>{q.test(t)&&h(e)<1e3&&v(e,t)}]})(),n=W();return[(a,r,o,i=[],c=()=>[])=>{e??=te;const l=s(1);var g,u;return j(n,l,[a,r,o,i,c]),g=N(r,o??[t],V),u=l,g?.add(u),l},(s,a,...r)=>y(((e,s=[t])=>{const a=[],n=(e,t)=>t==h(s)?v(a,e):null===s[t]?O(e,(e=>n(e,t+1))):y([s[t],null],(s=>n(R(e,s),t+1)));return n(e,0),a})(s,a),(t=>O(t,(t=>R(n,t)[0](e,...a??[],...r))))),e=>l(R(n,e),(([,s,r])=>(N(s,r??[t],void 0,(t=>(H(t,e),I(t)?1:0))),j(n,e),a(e),r))),t=>l(R(n,t),(([t,,s=[],a,n])=>{const r=(...o)=>{const i=h(o);i==h(s)?t(e,...o,...n(o)):c(s[i])?y(a[i]?.(...o)??[],(e=>r(...o,e))):r(...o,s[i])};r()}))]})(),K=e=>{e!=A&&(A=e,B(T,void 0,A))},Q=t=>{(x&&g(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},X=async e=>(2!=A&&(K(1),m++,await ee((async()=>{try{const t=await s();g(t)?Q(t):e?F(e):d("Content is not an array: "+t)}catch(t){e&&F(e)}K(0)}))),te),Y=()=>(C&&(r(C),C=void 0),te),Z=async e=>(1!=A&&(K(2),L++,await ee((async()=>{try{await a(P,e)}catch(e){}K(0)}))),te),_=()=>(f&&(e.delListener(f),f=void 0),te),ee=async(...e)=>(v(R($,b),...e),await(async()=>{if(!R(J,b)){for(j(J,b,1);!c(p=S(R($,b)));)try{await p()}catch(e){}j(J,b,0)}})(),te),te={load:X,startAutoLoad:async e=>{Y(),await X(e);try{C=await n((async(e,t)=>{t||e?2!=A&&(K(1),m++,Q(t??e),K(0)):await X()}))}catch(e){}return te},stopAutoLoad:Y,isAutoLoading:()=>!c(C),save:Z,startAutoSave:async()=>(_(),await Z(),f=e.addDidFinishTransactionListener((()=>{const e=D();z(e)&&Z(e)})),te),stopAutoSave:_,isAutoSaving:()=>!c(f),getStatus:()=>A,addStatusListener:e=>U(e,T),delListener:t=>(G(t),e),schedule:ee,getStore:()=>e,destroy:()=>(R($,b).splice(0,void 0),Y().stopAutoSave()),getStats:()=>({loads:m,saves:L}),...u};return M(te)},G=s("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),K=n.crypto?e=>n.crypto.getRandomValues(e):e=>w(e,(()=>i(256*o.random()))),Q=(e=16)=>{return t=(e,t)=>e+G[63&t],K(new Uint8Array(e)).reduce(t,"");var t},X=/\/([^?]*)/,Y="S",Z=e=>{return(s=new URL(e.url).pathname,a=X,s?.match(a))?.[1]??t;var s,a},_=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,ee=(e,t=null,s=null)=>new Response(s,{status:e,webSocket:t}),te=()=>ee(426,null,"Upgrade required");class se extends e.DurableObject{#e;constructor(e,s){super(e,s),this.ctx.blockConcurrencyWhile((async()=>await l(await this.createPersister(),(async e=>{const s=((e,s,n,o,i,g,u,h,d={})=>{let y,w=0,v=0,S=0;const b=W(),p=()=>Q(11),C=(e,t,a,n)=>{v++,s(e,t,a,n)},f=async(e,t,s,n)=>new a(((a,o)=>{const c=n+"."+Q(4),l=r((()=>{H(b,c),o(`No response from ${e??"anyone"} to ${c}, `+t)}),i);j(b,c,[e,(e,t)=>{clearTimeout(l),H(b,c),a([e,t,n])}]),C(e,c,t,s)})),M=(e,[t,s])=>{A(t,(([t,s],a)=>{const n=m(e[0],a,U);A(t,(([e,t],s)=>{const a=m(n[0],s,U);A(e,(([e,t],s)=>a[0][s]=z(e,t))),a[1]=F(a[1],t)})),n[1]=F(n[1],s)})),e[1]=F(e[1],s)},L=async(s=null,a,n=p())=>{try{c(a)&&([a,s,n]=await f(null,1,t,n));const[r,o]=a,[i,l]=e.getMergeableContentHashes();let g=U();if(i!=r){const[t,a]=(await f(s,4,e.getMergeableTableHashes(),n))[0];if(g=t,!k(a)){const[t,r]=(await f(s,5,e.getMergeableRowHashes(a),n))[0];if(M(g,t),!k(r)){const t=(await f(s,6,e.getMergeableCellHashes(r),n))[0];M(g,t)}}}return[g,l==o?U():(await f(s,7,e.getMergeableValueHashes(),n))[0],1]}catch(e){}},T=B(e,(async()=>{const e=await L();return!e||k(e[0][0])&&k(e[1][0])?void 0:e}),(async(t,s)=>s?C(null,p(),3,s):C(null,p(),2,e.getMergeableContentHashes())),(e=>y=e),(()=>y=void 0),0,2,{startSync:async e=>(w=1,await(await T.startAutoLoad(e)).startAutoSave()),stopSync:()=>(w=0,T.stopAutoLoad().stopAutoSave()),destroy:()=>T.stopSync(),getSynchronizerStats:()=>({sends:v,receives:S}),...d},1);return n(((t,s,a,n)=>{const r=w||T.isAutoLoading();S++,0==a?l(R(b,s),(([e,s])=>c(e)||e==t?s(n,t):0)):2==a&&r?L(t,n,s??void 0).then((e=>{y?.(void 0,e)})).catch(h):3==a&&r?y?.(void 0,n):l(1==a&&(w||T.isAutoSaving())?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(n):5==a?e.getMergeableRowDiff(n):6==a?e.getMergeableCellDiff(n):7==a?e.getMergeableValueDiff(n):void 0,(e=>{C(t,s,0,e)}))})),T})(e.getStore(),((e,t,s,a)=>this.#t(Y,P(e,t,s,a))),(e=>this.#e=t=>((e,t)=>x(e,((e,s)=>{return t(e,...(a=s,T(a,((e,t)=>""===t?void 0:t))));var a})))(t,e)),0,1);await e.load(),await e.startAutoSave(),r(s.startSync)}))))}fetch(e){const s=Z(e);return l(_(e),(e=>{const[a,n]=(r=new WebSocketPair,b.values(r));var r,o;return o=this.#s(),0==h(o)&&this.onPathId(s,1),this.ctx.acceptWebSocket(n,[e,s]),this.onClientId(s,e,1),n.send(P(Y,null,1,t)),ee(101,a)}),te)}webSocketMessage(e,t){l(this.ctx.getTags(e)[0],(s=>this.#t(s,t.toString(),e)))}webSocketClose(e){const[t,s]=this.ctx.getTags(e);this.onClientId(s,t,-1),1==h(this.#s())&&this.onPathId(s,-1)}#t(e,s,a){x(s.toString(),((s,n)=>{const r=D(e,n);this.onMessage(e,s,n),s==t?(e!=Y&&this.#e(r),y(this.#s(),(e=>{e!=a&&e.send(r)}))):s==Y?this.#e(r):s!=e&&this.#s(s)[0]?.send(r)}))}#s(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#s()[0])?.[1]}getClientIds(e){return w(this.#s(),(e=>this.ctx.getTags(e)[0]))}onPathId(e,t){}onClientId(e,t,s){}onMessage(e,t,s){}}exports.WsServerDurableObject=se,exports.getWsServerDurableObjectFetch=e=>(t,s)=>_(t)?s[e].get(s[e].idFromName(Z(t))).fetch(t):te();
@@ -1 +1 @@
1
- "use strict";var e=require("cloudflare:workers");const t=(e,t,s)=>null==e?s?.():t(e),s=(e,t,s)=>e.slice(t,s),c=e=>e.length,r=Object,n=/\/([^?]*)/,a=e=>{return(t=new URL(e.url).pathname,s=n,t?.match(s))?.[1]??"";var t,s},o=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,h=(e,t=null,s=null)=>new Response(s,{status:e,webSocket:t}),i=()=>h(426,null,"Upgrade required");class l extends e.DurableObject{constructor(e,t){super(e,t)}fetch(e){const s=a(e);return t(o(e),(e=>{const[t,n]=(a=new WebSocketPair,r.values(a));var a,o;return n.serializeAttachment({pathId:s}),o=this.ctx.getWebSockets(),0==c(o)&&this.onPathId(s,1),this.ctx.acceptWebSocket(n,[e]),this.onClientId(s,e,1),h(101,t)}),i)}webSocketMessage(e,c){t(this.ctx.getTags(e)[0],(t=>((e,t)=>{const c=e.indexOf("\n");-1!==c&&t(s(e,0,c),s(e,c+1))})(c.toString(),((s,c)=>{const r=((e,t)=>e+"\n"+t)(t,c);var n;""===s?(n=t=>t!==e?t.send(r):0,this.ctx.getWebSockets().forEach(n)):this.ctx.getWebSockets(s)[0]?.send(r)}))))}webSocketClose(e){const{pathId:t}=e.deserializeAttachment();this.onClientId(t,this.ctx.getTags(e)[0],-1),1==c(this.ctx.getWebSockets())&&this.onPathId(t,-1)}getClientIds(e){return t=e=>this.ctx.getTags(e)[0],this.ctx.getWebSockets().map(t);var t}onPathId(e,t){}onClientId(e,t,s){}}exports.WsServerDurableObject=l,exports.getWsServerDurableObjectFetch=e=>(t,s)=>o(t)?s[e].get(s[e].idFromName(a(t))).fetch(t):i();
1
+ "use strict";var e=require("cloudflare:workers");const t="",s=(e,t="",s)=>e.split(t,s),a=Promise,n=globalThis,r=(e,t=0)=>setTimeout(e,1e3*t),o=Math,i=o.floor,c=e=>null==e,l=(e,t,s)=>c(e)?s?.():t(e),g=e=>Array.isArray(e),u=(e,t,s)=>e.slice(t,s),h=e=>e.length,d=e=>{throw Error(e)},y=(e,t)=>e.forEach(t),w=(e,t)=>e.map(t),v=(e,...t)=>e.push(...t),S=e=>e.shift(),b=Object,p=e=>b.getPrototypeOf(e),C=b.entries,f=b.keys,M=b.freeze,A=(e,t)=>y(C(e),(([e,s])=>t(s,e))),k=e=>(e=>!c(e)&&l(p(e),(e=>e==b.prototype||c(p(e))),(()=>!0)))(e)&&0==(e=>h(f(e)))(e),m=(e,t,s)=>(((e,t)=>t in e)(e,t)||(e[t]=s()),e[t]),L=JSON.stringify,T=JSON.parse,x=(e,t)=>{const s=e.indexOf("\n");-1!==s&&t(u(e,0,s),u(e,s+1))},P=(e,...s)=>D(e??t,L(s,((e,t)=>void 0===t?"":t))),D=(e,t)=>e+"\n"+t,I=e=>c(e)||0==(e=>e?.size??0)(e),O=(e,t)=>e?.forEach(t),H=(e,t)=>e?.delete(t),W=e=>new Map(e),R=(e,t)=>e?.get(t),j=(e,t,s)=>c(s)?(H(e,t),e):e?.set(t,s),E=(e,t,s,a)=>{var n,r;return n=e,r=t,n?.has(r)?a?.(R(e,t)):j(e,t,s()),R(e,t)},N=(e,t,s,a,n=0)=>l((s?E:R)(e,t[n],n>h(t)-2?s:W),(r=>{if(n>h(t)-2)return a?.(r)&&j(e,t[n]),r;const o=N(r,t,s,a,n+1);return I(r)&&j(e,t[n]),o})),z=(e,t)=>t?[e,t]:[e],F=(e,t)=>((e??"")>(t??"")?e:t)??"",U=(e="")=>z(((e=[])=>b.fromEntries(e))(),e),V=e=>new Set(g(e)||c(e)?e:[e]),q=/^\d+$/,J=W(),$=W(),B=(e,s,a,n,r,o,i,u={},w=0,b=[])=>{let p,C,f,A=0,m=0,L=0;E(J,b,(()=>0)),E($,b,(()=>[]));const T=W(),[x,P,D,z,F]=((e=1,t,s)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!s),([[e],[t]])=>!k(e)||!k(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!k(e)||!k(t),t.setContent]:d("Store type not supported by this Persister"))(i,e,w),[U,B,G]=(()=>{let e;const[s,a]=(()=>{const e=[];let s=0;return[a=>(a?S(e):null)??t+s++,t=>{q.test(t)&&h(e)<1e3&&v(e,t)}]})(),n=W();return[(a,r,o,i=[],c=()=>[])=>{e??=te;const l=s(1);var g,u;return j(n,l,[a,r,o,i,c]),g=N(r,o??[t],V),u=l,g?.add(u),l},(s,a,...r)=>y(((e,s=[t])=>{const a=[],n=(e,t)=>t==h(s)?v(a,e):null===s[t]?O(e,(e=>n(e,t+1))):y([s[t],null],(s=>n(R(e,s),t+1)));return n(e,0),a})(s,a),(t=>O(t,(t=>R(n,t)[0](e,...a??[],...r))))),e=>l(R(n,e),(([,s,r])=>(N(s,r??[t],void 0,(t=>(H(t,e),I(t)?1:0))),j(n,e),a(e),r))),t=>l(R(n,t),(([t,,s=[],a,n])=>{const r=(...o)=>{const i=h(o);i==h(s)?t(e,...o,...n(o)):c(s[i])?y(a[i]?.(...o)??[],(e=>r(...o,e))):r(...o,s[i])};r()}))]})(),K=e=>{e!=A&&(A=e,B(T,void 0,A))},Q=t=>{(x&&g(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},X=async e=>(2!=A&&(K(1),m++,await ee((async()=>{try{const t=await s();g(t)?Q(t):e?F(e):d("Content is not an array: "+t)}catch(t){e&&F(e)}K(0)}))),te),Y=()=>(C&&(r(C),C=void 0),te),Z=async e=>(1!=A&&(K(2),L++,await ee((async()=>{try{await a(P,e)}catch(e){}K(0)}))),te),_=()=>(f&&(e.delListener(f),f=void 0),te),ee=async(...e)=>(v(R($,b),...e),await(async()=>{if(!R(J,b)){for(j(J,b,1);!c(p=S(R($,b)));)try{await p()}catch(e){}j(J,b,0)}})(),te),te={load:X,startAutoLoad:async e=>{Y(),await X(e);try{C=await n((async(e,t)=>{t||e?2!=A&&(K(1),m++,Q(t??e),K(0)):await X()}))}catch(e){}return te},stopAutoLoad:Y,isAutoLoading:()=>!c(C),save:Z,startAutoSave:async()=>(_(),await Z(),f=e.addDidFinishTransactionListener((()=>{const e=D();z(e)&&Z(e)})),te),stopAutoSave:_,isAutoSaving:()=>!c(f),getStatus:()=>A,addStatusListener:e=>U(e,T),delListener:t=>(G(t),e),schedule:ee,getStore:()=>e,destroy:()=>(R($,b).splice(0,void 0),Y().stopAutoSave()),getStats:()=>({loads:m,saves:L}),...u};return M(te)},G=s("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),K=n.crypto?e=>n.crypto.getRandomValues(e):e=>w(e,(()=>i(256*o.random()))),Q=(e=16)=>{return t=(e,t)=>e+G[63&t],K(new Uint8Array(e)).reduce(t,"");var t},X=/\/([^?]*)/,Y="S",Z=e=>{return(s=new URL(e.url).pathname,a=X,s?.match(a))?.[1]??t;var s,a},_=e=>"websocket"==e.headers.get("upgrade")?.toLowerCase()?e.headers.get("sec-websocket-key"):null,ee=(e,t=null,s=null)=>new Response(s,{status:e,webSocket:t}),te=()=>ee(426,null,"Upgrade required");class se extends e.DurableObject{#e;constructor(e,s){super(e,s),this.ctx.blockConcurrencyWhile((async()=>await l(await this.createPersister(),(async e=>{const s=((e,s,n,o,i,g,u,h,d={})=>{let y,w=0,v=0,S=0;const b=W(),p=()=>Q(11),C=(e,t,a,n)=>{v++,s(e,t,a,n)},f=async(e,t,s,n)=>new a(((a,o)=>{const c=n+"."+Q(4),l=r((()=>{H(b,c),o(`No response from ${e??"anyone"} to ${c}, `+t)}),i);j(b,c,[e,(e,t)=>{clearTimeout(l),H(b,c),a([e,t,n])}]),C(e,c,t,s)})),M=(e,[t,s])=>{A(t,(([t,s],a)=>{const n=m(e[0],a,U);A(t,(([e,t],s)=>{const a=m(n[0],s,U);A(e,(([e,t],s)=>a[0][s]=z(e,t))),a[1]=F(a[1],t)})),n[1]=F(n[1],s)})),e[1]=F(e[1],s)},L=async(s=null,a,n=p())=>{try{c(a)&&([a,s,n]=await f(null,1,t,n));const[r,o]=a,[i,l]=e.getMergeableContentHashes();let g=U();if(i!=r){const[t,a]=(await f(s,4,e.getMergeableTableHashes(),n))[0];if(g=t,!k(a)){const[t,r]=(await f(s,5,e.getMergeableRowHashes(a),n))[0];if(M(g,t),!k(r)){const t=(await f(s,6,e.getMergeableCellHashes(r),n))[0];M(g,t)}}}return[g,l==o?U():(await f(s,7,e.getMergeableValueHashes(),n))[0],1]}catch(e){}},T=B(e,(async()=>{const e=await L();return!e||k(e[0][0])&&k(e[1][0])?void 0:e}),(async(t,s)=>s?C(null,p(),3,s):C(null,p(),2,e.getMergeableContentHashes())),(e=>y=e),(()=>y=void 0),0,2,{startSync:async e=>(w=1,await(await T.startAutoLoad(e)).startAutoSave()),stopSync:()=>(w=0,T.stopAutoLoad().stopAutoSave()),destroy:()=>T.stopSync(),getSynchronizerStats:()=>({sends:v,receives:S}),...d},1);return n(((t,s,a,n)=>{const r=w||T.isAutoLoading();S++,0==a?l(R(b,s),(([e,s])=>c(e)||e==t?s(n,t):0)):2==a&&r?L(t,n,s??void 0).then((e=>{y?.(void 0,e)})).catch(h):3==a&&r?y?.(void 0,n):l(1==a&&(w||T.isAutoSaving())?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(n):5==a?e.getMergeableRowDiff(n):6==a?e.getMergeableCellDiff(n):7==a?e.getMergeableValueDiff(n):void 0,(e=>{C(t,s,0,e)}))})),T})(e.getStore(),((e,t,s,a)=>this.#t(Y,P(e,t,s,a))),(e=>this.#e=t=>((e,t)=>x(e,((e,s)=>{return t(e,...(a=s,T(a,((e,t)=>""===t?void 0:t))));var a})))(t,e)),0,1);await e.load(),await e.startAutoSave(),r(s.startSync)}))))}fetch(e){const s=Z(e);return l(_(e),(e=>{const[a,n]=(r=new WebSocketPair,b.values(r));var r,o;return o=this.#s(),0==h(o)&&this.onPathId(s,1),this.ctx.acceptWebSocket(n,[e,s]),this.onClientId(s,e,1),n.send(P(Y,null,1,t)),ee(101,a)}),te)}webSocketMessage(e,t){l(this.ctx.getTags(e)[0],(s=>this.#t(s,t.toString(),e)))}webSocketClose(e){const[t,s]=this.ctx.getTags(e);this.onClientId(s,t,-1),1==h(this.#s())&&this.onPathId(s,-1)}#t(e,s,a){x(s.toString(),((s,n)=>{const r=D(e,n);this.onMessage(e,s,n),s==t?(e!=Y&&this.#e(r),y(this.#s(),(e=>{e!=a&&e.send(r)}))):s==Y?this.#e(r):s!=e&&this.#s(s)[0]?.send(r)}))}#s(e){return this.ctx.getWebSockets(e)}createPersister(){}getPathId(){return this.ctx.getTags(this.#s()[0])?.[1]}getClientIds(e){return w(this.#s(),(e=>this.ctx.getTags(e)[0]))}onPathId(e,t){}onClientId(e,t,s){}onMessage(e,t,s){}}exports.WsServerDurableObject=se,exports.getWsServerDurableObjectFetch=e=>(t,s)=>_(t)?s[e].get(s[e].idFromName(Z(t))).fetch(t):te();
@@ -1 +1 @@
1
- "use strict";const e=(e,t="",a)=>e.split(t,a),t=Promise,a=globalThis,s=Math,n=s.floor,o=e=>null==e,r=(e,t,a)=>o(e)?a?.():t(e),i=e=>Array.isArray(e),l=e=>e.length,c=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),g=(e,...t)=>e.push(...t),d=e=>e.shift(),y=Object,f=e=>y.getPrototypeOf(e),h=y.entries,p=y.keys,w=y.freeze,v=(e,t)=>u(h(e),(([e,a])=>t(a,e))),b=e=>(e=>!o(e)&&r(f(e),(e=>e==y.prototype||o(f(e))),(()=>!0)))(e)&&0==(e=>l(p(e)))(e),C=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),M=e=>o(e)||0==(e=>e?.size??0)(e),S=(e,t)=>e?.forEach(t),A=(e,t)=>e?.delete(t),D=e=>new Map(e),L=(e,t)=>e?.get(t),m=(e,t,a)=>o(a)?(A(e,t),e):e?.set(t,a),H=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(L(e,t)):m(e,t,a()),L(e,t)},T=(e,t,a,s,n=0)=>r((a?H:L)(e,t[n],n>l(t)-2?a:D),(o=>{if(n>l(t)-2)return s?.(o)&&m(e,t[n]),o;const r=T(o,t,a,s,n+1);return M(o)&&m(e,t[n]),r})),G=(e,t)=>t?[e,t]:[e],R=(e,t)=>((e??"")>(t??"")?e:t)??"",z=(e="")=>G(((e=[])=>y.fromEntries(e))(),e),E=e=>new Set(i(e)||o(e)?e:[e]),V=/^\d+$/,P=D(),x=D(),O=(e,t,a,s,n,y,f,h={},p=[])=>{let v,C,G,R=0,z=0,O=0;H(P,p,(()=>0)),H(x,p,(()=>[]));const $=D(),[j,k,F,N,U]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!b(e)||!b(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!b(e)||!b(t),t.setContent]:c("Store type not supported by this Persister"))(f,e),[q,B,I]=(()=>{let e;const[t,a]=(()=>{const e=[];let t=0;return[a=>(a?d(e):null)??""+t++,t=>{V.test(t)&&l(e)<1e3&&g(e,t)}]})(),s=D();return[(a,n,o,r=[],i=()=>[])=>{e??=_;const l=t(1);var c,u;return m(s,l,[a,n,o,r,i]),c=T(n,o??[""],E),u=l,c?.add(u),l},(t,a,...n)=>u(((e,t=[""])=>{const a=[],s=(e,n)=>n==l(t)?g(a,e):null===t[n]?S(e,(e=>s(e,n+1))):u([t[n],null],(t=>s(L(e,t),n+1)));return s(e,0),a})(t,a),(t=>S(t,(t=>L(s,t)[0](e,...a??[],...n))))),e=>r(L(s,e),(([,t,n])=>(T(t,n??[""],void 0,(t=>(A(t,e),M(t)?1:0))),m(s,e),a(e),n))),t=>r(L(s,t),(([t,,a=[],s,n])=>{const r=(...i)=>{const c=l(i);c==l(a)?t(e,...i,...n(i)):o(a[c])?u(s[c]?.(...i)??[],(e=>r(...i,e))):r(...i,a[c])};r()}))]})(),J=e=>{e!=R&&(R=e,B($,void 0,R))},K=t=>{(j&&i(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},Q=async e=>(2!=R&&(J(1),z++,await Z((async()=>{try{const a=await t();i(a)?K(a):e?U(e):c("Content is not an array "+a)}catch(t){y?.(t),e&&U(e)}J(0)}))),_),W=()=>(C&&(n(C),C=void 0),_),X=async e=>(1!=R&&(J(2),O++,await Z((async()=>{try{await a(k,e)}catch(e){y?.(e)}J(0)}))),_),Y=()=>(r(G,e.delListener),G=void 0,_),Z=async(...e)=>(g(L(x,p),...e),await(async()=>{if(!L(P,p)){for(m(P,p,1);!o(v=d(L(x,p)));)try{await v()}catch(e){y?.(e)}m(P,p,0)}})(),_),_={load:Q,startAutoLoad:async e=>{await W().load(e);try{C=await s((async(e,t)=>{t||e?2!=R&&(J(1),z++,K(t??e),J(0)):await Q()}))}catch(e){y?.(e)}return _},stopAutoLoad:W,isAutoLoading:()=>!o(C),save:X,startAutoSave:async()=>(await Y().save(),G=e.addDidFinishTransactionListener((()=>{const e=F();N(e)&&X(e)})),_),stopAutoSave:Y,isAutoSaving:()=>!o(G),getStatus:()=>R,addStatusListener:e=>q(e,$),delListener:t=>(I(t),e),schedule:Z,getStore:()=>e,destroy:()=>(L(x,p).splice(0,void 0),W().stopAutoSave()),getStats:()=>({loads:z,saves:O}),...h};return w(_)},$=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),j=a.crypto?e=>a.crypto.getRandomValues(e):e=>(e=>e.map((()=>n(256*s.random()))))(e);exports.Message={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},exports.createCustomSynchronizer=(e,a,s,n,i,l,c,u,g={})=>{let d,y=0,f=0;const h=D(),p=(e,t,s,n)=>{y++,l?.(e,t,s,n),a(e,t,s,n)},w=async(e,a,s="")=>new t(((t,n)=>{const o=((e=16)=>{return t=(e,t)=>e+$[63&t],j(new Uint8Array(e)).reduce(t,"");var t})(),r=setTimeout((()=>{A(h,o),n(`No response from ${e??"anyone"} to ${o}, `+a)}),1e3*i);m(h,o,[e,(e,a)=>{clearTimeout(r),A(h,o),t([e,a])}]),p(e,o,a,s)})),M=(e,[t,a])=>{v(t,(([t,a],s)=>{const n=C(e[0],s,z);v(t,(([e,t],a)=>{const s=C(n[0],a,z);v(e,(([e,t],a)=>s[0][a]=G(e,t))),s[1]=R(s[1],t)})),n[1]=R(n[1],a)})),e[1]=R(e[1],a)},S=async(t=null,a)=>{o(a)&&([a,t]=await w(t,1));const[s,n]=a,[r,i]=e.getMergeableContentHashes();let l=z();if(r!=s){const[a,s]=(await w(t,4,e.getMergeableTableHashes()))[0];if(l=a,!b(s)){const[a,n]=(await w(t,5,e.getMergeableRowHashes(s)))[0];if(M(l,a),!b(n)){const a=(await w(t,6,e.getMergeableCellHashes(n)))[0];M(l,a)}}}return[l,i==n?z():(await w(t,7,e.getMergeableValueHashes()))[0],1]},H=O(e,(async()=>{const e=await S();return b(e[0][0])&&b(e[1][0])?void 0:e}),(async(t,a)=>a?p(null,null,3,a):p(null,null,2,e.getMergeableContentHashes())),(e=>d=e),(()=>d=void 0),u,2,{startSync:async e=>await(await H.startAutoLoad(e)).startAutoSave(),stopSync:()=>H.stopAutoLoad().stopAutoSave(),destroy:()=>(n(),H.stopSync()),getSynchronizerStats:()=>({sends:y,receives:f}),...g});return s(((t,a,s,n)=>{f++,c?.(t,a,s,n),0==s?r(L(h,a),(([e,a])=>o(e)||e==t?a(n,t):0)):2==s&&H.isAutoLoading()?S(t,n).then((e=>{d?.(void 0,e)})):3==s&&H.isAutoLoading()?d?.(void 0,n):r(1==s&&H.isAutoSaving()?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{p(t,a,0,e)}))})),H};
1
+ "use strict";const e=(e,t="",a)=>e.split(t,a),t=Promise,a=globalThis,s=Math,n=s.floor,o=e=>null==e,r=(e,t,a)=>o(e)?a?.():t(e),i=e=>Array.isArray(e),c=e=>e.length,l=e=>{throw Error(e)},g=(e,t)=>e.forEach(t),u=(e,...t)=>e.push(...t),y=e=>e.shift(),d=Object,h=e=>d.getPrototypeOf(e),f=d.entries,p=d.keys,w=d.freeze,v=(e,t)=>g(f(e),(([e,a])=>t(a,e))),b=e=>(e=>!o(e)&&r(h(e),(e=>e==d.prototype||o(h(e))),(()=>!0)))(e)&&0==(e=>c(p(e)))(e),C=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),M=e=>o(e)||0==(e=>e?.size??0)(e),S=(e,t)=>e?.forEach(t),A=(e,t)=>e?.delete(t),D=e=>new Map(e),L=(e,t)=>e?.get(t),m=(e,t,a)=>o(a)?(A(e,t),e):e?.set(t,a),H=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(L(e,t)):m(e,t,a()),L(e,t)},T=(e,t,a,s,n=0)=>r((a?H:L)(e,t[n],n>c(t)-2?a:D),(o=>{if(n>c(t)-2)return s?.(o)&&m(e,t[n]),o;const r=T(o,t,a,s,n+1);return M(o)&&m(e,t[n]),r})),G=(e,t)=>t?[e,t]:[e],R=(e,t)=>((e??"")>(t??"")?e:t)??"",z=(e="")=>G(((e=[])=>d.fromEntries(e))(),e),E=e=>new Set(i(e)||o(e)?e:[e]),V=/^\d+$/,P=D(),x=D(),O=(e,t,a,s,n,d,h,f={},p=0,v=[])=>{let C,G,R,z=0,O=0,$=0;H(P,v,(()=>0)),H(x,v,(()=>[]));const j=D(),[k,F,N,U,q]=((e=1,t,a)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!a),([[e],[t]])=>!b(e)||!b(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!b(e)||!b(t),t.setContent]:l("Store type not supported by this Persister"))(h,e,p),[B,I,J]=(()=>{let e;const[t,a]=(()=>{const e=[];let t=0;return[a=>(a?y(e):null)??""+t++,t=>{V.test(t)&&c(e)<1e3&&u(e,t)}]})(),s=D();return[(a,n,o,r=[],i=()=>[])=>{e??=ee;const c=t(1);var l,g;return m(s,c,[a,n,o,r,i]),l=T(n,o??[""],E),g=c,l?.add(g),c},(t,a,...n)=>g(((e,t=[""])=>{const a=[],s=(e,n)=>n==c(t)?u(a,e):null===t[n]?S(e,(e=>s(e,n+1))):g([t[n],null],(t=>s(L(e,t),n+1)));return s(e,0),a})(t,a),(t=>S(t,(t=>L(s,t)[0](e,...a??[],...n))))),e=>r(L(s,e),(([,t,n])=>(T(t,n??[""],void 0,(t=>(A(t,e),M(t)?1:0))),m(s,e),a(e),n))),t=>r(L(s,t),(([t,,a=[],s,n])=>{const r=(...i)=>{const l=c(i);l==c(a)?t(e,...i,...n(i)):o(a[l])?g(s[l]?.(...i)??[],(e=>r(...i,e))):r(...i,a[l])};r()}))]})(),K=e=>{e!=z&&(z=e,I(j,void 0,z))},Q=t=>{(k&&i(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},W=async e=>(2!=z&&(K(1),O++,await _((async()=>{try{const a=await t();i(a)?Q(a):e?q(e):l("Content is not an array: "+a)}catch(t){d?.(t),e&&q(e)}K(0)}))),ee),X=()=>(G&&(n(G),G=void 0),ee),Y=async e=>(1!=z&&(K(2),$++,await _((async()=>{try{await a(F,e)}catch(e){d?.(e)}K(0)}))),ee),Z=()=>(R&&(e.delListener(R),R=void 0),ee),_=async(...e)=>(u(L(x,v),...e),await(async()=>{if(!L(P,v)){for(m(P,v,1);!o(C=y(L(x,v)));)try{await C()}catch(e){d?.(e)}m(P,v,0)}})(),ee),ee={load:W,startAutoLoad:async e=>{X(),await W(e);try{G=await s((async(e,t)=>{t||e?2!=z&&(K(1),O++,Q(t??e),K(0)):await W()}))}catch(e){d?.(e)}return ee},stopAutoLoad:X,isAutoLoading:()=>!o(G),save:Y,startAutoSave:async()=>(Z(),await Y(),R=e.addDidFinishTransactionListener((()=>{const e=N();U(e)&&Y(e)})),ee),stopAutoSave:Z,isAutoSaving:()=>!o(R),getStatus:()=>z,addStatusListener:e=>B(e,j),delListener:t=>(J(t),e),schedule:_,getStore:()=>e,destroy:()=>(L(x,v).splice(0,void 0),X().stopAutoSave()),getStats:()=>({loads:O,saves:$}),...f};return w(ee)},$=e("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),j=a.crypto?e=>a.crypto.getRandomValues(e):e=>(e=>e.map((()=>n(256*s.random()))))(e),k=(e=16)=>{return t=(e,t)=>e+$[63&t],j(new Uint8Array(e)).reduce(t,"");var t};exports.Message={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},exports.createCustomSynchronizer=(e,a,s,n,i,c,l,g,u={})=>{let y,d=0,h=0,f=0;const p=D(),w=()=>k(11),M=(e,t,s,n)=>{h++,c?.(e,t,s,n),a(e,t,s,n)},S=async(e,a,s,n)=>new t(((t,o)=>{const r=n+"."+k(4),c=((e,t=0)=>setTimeout(e,1e3*t))((()=>{A(p,r),o(`No response from ${e??"anyone"} to ${r}, `+a)}),i);m(p,r,[e,(e,a)=>{clearTimeout(c),A(p,r),t([e,a,n])}]),M(e,r,a,s)})),H=(e,[t,a])=>{v(t,(([t,a],s)=>{const n=C(e[0],s,z);v(t,(([e,t],a)=>{const s=C(n[0],a,z);v(e,(([e,t],a)=>s[0][a]=G(e,t))),s[1]=R(s[1],t)})),n[1]=R(n[1],a)})),e[1]=R(e[1],a)},T=async(t=null,a,s=w())=>{try{o(a)&&([a,t,s]=await S(null,1,"",s));const[n,r]=a,[i,c]=e.getMergeableContentHashes();let l=z();if(i!=n){const[a,n]=(await S(t,4,e.getMergeableTableHashes(),s))[0];if(l=a,!b(n)){const[a,o]=(await S(t,5,e.getMergeableRowHashes(n),s))[0];if(H(l,a),!b(o)){const a=(await S(t,6,e.getMergeableCellHashes(o),s))[0];H(l,a)}}}return[l,c==r?z():(await S(t,7,e.getMergeableValueHashes(),s))[0],1]}catch(e){g?.(e)}},E=O(e,(async()=>{const e=await T();return!e||b(e[0][0])&&b(e[1][0])?void 0:e}),(async(t,a)=>a?M(null,w(),3,a):M(null,w(),2,e.getMergeableContentHashes())),(e=>y=e),(()=>y=void 0),g,2,{startSync:async e=>(d=1,await(await E.startAutoLoad(e)).startAutoSave()),stopSync:()=>(d=0,E.stopAutoLoad().stopAutoSave()),destroy:()=>(n(),E.stopSync()),getSynchronizerStats:()=>({sends:h,receives:f}),...u},1);return s(((t,a,s,n)=>{const i=d||E.isAutoLoading();f++,l?.(t,a,s,n),0==s?r(L(p,a),(([e,a])=>o(e)||e==t?a(n,t):0)):2==s&&i?T(t,n,a??void 0).then((e=>{y?.(void 0,e)})).catch(g):3==s&&i?y?.(void 0,n):r(1==s&&(d||E.isAutoSaving())?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{M(t,a,0,e)}))})),E};