@livestore/common 0.4.0 → 0.5.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (501) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/ClientSessionLeaderThreadProxy.d.ts +1 -1
  3. package/dist/ClientSessionLeaderThreadProxy.d.ts.map +1 -1
  4. package/dist/MaterializationJournal.d.ts +44 -0
  5. package/dist/MaterializationJournal.d.ts.map +1 -0
  6. package/dist/MaterializationJournal.js +112 -0
  7. package/dist/MaterializationJournal.js.map +1 -0
  8. package/dist/StateHead.d.ts +26 -0
  9. package/dist/StateHead.d.ts.map +1 -0
  10. package/dist/StateHead.js +50 -0
  11. package/dist/StateHead.js.map +1 -0
  12. package/dist/WorkerTransportError.d.ts +3 -3
  13. package/dist/WorkerTransportError.d.ts.map +1 -1
  14. package/dist/WorkerTransportError.js +3 -3
  15. package/dist/WorkerTransportError.js.map +1 -1
  16. package/dist/__tests__/fixture.d.ts +8 -8
  17. package/dist/__tests__/fixture.d.ts.map +1 -1
  18. package/dist/__tests__/fixture.js +4 -4
  19. package/dist/__tests__/fixture.js.map +1 -1
  20. package/dist/adapter-types.d.ts +33 -57
  21. package/dist/adapter-types.d.ts.map +1 -1
  22. package/dist/adapter-types.js +24 -41
  23. package/dist/adapter-types.js.map +1 -1
  24. package/dist/bounded-collections.d.ts.map +1 -1
  25. package/dist/bounded-collections.js.map +1 -1
  26. package/dist/debug-info.d.ts +56 -56
  27. package/dist/debug-info.d.ts.map +1 -1
  28. package/dist/debug-info.js +32 -44
  29. package/dist/debug-info.js.map +1 -1
  30. package/dist/defs.d.ts +9 -9
  31. package/dist/defs.js +2 -2
  32. package/dist/devtools/devtools-compatibility.test.js +2 -1
  33. package/dist/devtools/devtools-compatibility.test.js.map +1 -1
  34. package/dist/devtools/devtools-messages-client-session.d.ts +522 -334
  35. package/dist/devtools/devtools-messages-client-session.d.ts.map +1 -1
  36. package/dist/devtools/devtools-messages-client-session.js +80 -78
  37. package/dist/devtools/devtools-messages-client-session.js.map +1 -1
  38. package/dist/devtools/devtools-messages-common.d.ts +27 -27
  39. package/dist/devtools/devtools-messages-common.d.ts.map +1 -1
  40. package/dist/devtools/devtools-messages-common.js +6 -6
  41. package/dist/devtools/devtools-messages-common.js.map +1 -1
  42. package/dist/devtools/devtools-messages-leader.d.ts +410 -348
  43. package/dist/devtools/devtools-messages-leader.d.ts.map +1 -1
  44. package/dist/devtools/devtools-messages-leader.js +105 -93
  45. package/dist/devtools/devtools-messages-leader.js.map +1 -1
  46. package/dist/devtools/devtools-messages.js +3 -3
  47. package/dist/devtools/devtools-sessioninfo.d.ts +18 -19
  48. package/dist/devtools/devtools-sessioninfo.d.ts.map +1 -1
  49. package/dist/devtools/devtools-sessioninfo.js +8 -5
  50. package/dist/devtools/devtools-sessioninfo.js.map +1 -1
  51. package/dist/devtools/mod.d.ts +4 -5
  52. package/dist/devtools/mod.d.ts.map +1 -1
  53. package/dist/devtools/mod.js +12 -8
  54. package/dist/devtools/mod.js.map +1 -1
  55. package/dist/errors.d.ts +45 -69
  56. package/dist/errors.d.ts.map +1 -1
  57. package/dist/errors.js +19 -17
  58. package/dist/errors.js.map +1 -1
  59. package/dist/index.d.ts +4 -1
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +22 -19
  62. package/dist/index.js.map +1 -1
  63. package/dist/leader-thread/LeaderSyncProcessor.d.ts +87 -18
  64. package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -1
  65. package/dist/leader-thread/LeaderSyncProcessor.js +548 -480
  66. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
  67. package/dist/leader-thread/RejectedPushError.d.ts +72 -41
  68. package/dist/leader-thread/RejectedPushError.d.ts.map +1 -1
  69. package/dist/leader-thread/RejectedPushError.js +25 -6
  70. package/dist/leader-thread/RejectedPushError.js.map +1 -1
  71. package/dist/leader-thread/connection.d.ts +1 -0
  72. package/dist/leader-thread/connection.d.ts.map +1 -1
  73. package/dist/leader-thread/connection.js +11 -10
  74. package/dist/leader-thread/connection.js.map +1 -1
  75. package/dist/leader-thread/eventlog.d.ts +15 -5
  76. package/dist/leader-thread/eventlog.d.ts.map +1 -1
  77. package/dist/leader-thread/eventlog.js +19 -19
  78. package/dist/leader-thread/eventlog.js.map +1 -1
  79. package/dist/leader-thread/leader-worker-devtools.d.ts +1 -1
  80. package/dist/leader-thread/leader-worker-devtools.d.ts.map +1 -1
  81. package/dist/leader-thread/leader-worker-devtools.js +36 -20
  82. package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
  83. package/dist/leader-thread/make-leader-thread-layer.d.ts +15 -5
  84. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  85. package/dist/leader-thread/make-leader-thread-layer.js +62 -58
  86. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  87. package/dist/leader-thread/make-leader-thread-layer.test.js +9 -9
  88. package/dist/leader-thread/make-leader-thread-layer.test.js.map +1 -1
  89. package/dist/leader-thread/materialize-event.d.ts +2 -1
  90. package/dist/leader-thread/materialize-event.d.ts.map +1 -1
  91. package/dist/leader-thread/materialize-event.js +12 -8
  92. package/dist/leader-thread/materialize-event.js.map +1 -1
  93. package/dist/leader-thread/mod.js +9 -9
  94. package/dist/leader-thread/recreate-db.d.ts +5 -1
  95. package/dist/leader-thread/recreate-db.d.ts.map +1 -1
  96. package/dist/leader-thread/recreate-db.js +34 -59
  97. package/dist/leader-thread/recreate-db.js.map +1 -1
  98. package/dist/leader-thread/shutdown-channel.d.ts +2 -6
  99. package/dist/leader-thread/shutdown-channel.d.ts.map +1 -1
  100. package/dist/leader-thread/shutdown-channel.js +2 -3
  101. package/dist/leader-thread/shutdown-channel.js.map +1 -1
  102. package/dist/leader-thread/stream-events.d.ts +4 -7
  103. package/dist/leader-thread/stream-events.d.ts.map +1 -1
  104. package/dist/leader-thread/stream-events.js +16 -21
  105. package/dist/leader-thread/stream-events.js.map +1 -1
  106. package/dist/leader-thread/types.d.ts +38 -73
  107. package/dist/leader-thread/types.d.ts.map +1 -1
  108. package/dist/leader-thread/types.js +10 -6
  109. package/dist/leader-thread/types.js.map +1 -1
  110. package/dist/logging.d.ts +5 -30
  111. package/dist/logging.d.ts.map +1 -1
  112. package/dist/logging.js +1 -32
  113. package/dist/logging.js.map +1 -1
  114. package/dist/make-client-session.d.ts +2 -3
  115. package/dist/make-client-session.d.ts.map +1 -1
  116. package/dist/make-client-session.js +5 -5
  117. package/dist/make-client-session.js.map +1 -1
  118. package/dist/materializer-helper.d.ts +0 -1
  119. package/dist/materializer-helper.d.ts.map +1 -1
  120. package/dist/materializer-helper.js +9 -37
  121. package/dist/materializer-helper.js.map +1 -1
  122. package/dist/otel.d.ts +2 -3
  123. package/dist/otel.d.ts.map +1 -1
  124. package/dist/otel.js +2 -7
  125. package/dist/otel.js.map +1 -1
  126. package/dist/rematerialize-from-eventlog.d.ts +3 -1
  127. package/dist/rematerialize-from-eventlog.d.ts.map +1 -1
  128. package/dist/rematerialize-from-eventlog.js +42 -33
  129. package/dist/rematerialize-from-eventlog.js.map +1 -1
  130. package/dist/schema/EventDef/define.d.ts +6 -6
  131. package/dist/schema/EventDef/define.d.ts.map +1 -1
  132. package/dist/schema/EventDef/define.js +5 -5
  133. package/dist/schema/EventDef/define.js.map +1 -1
  134. package/dist/schema/EventDef/define.test.d.ts +2 -0
  135. package/dist/schema/EventDef/define.test.d.ts.map +1 -0
  136. package/dist/schema/EventDef/define.test.js +23 -0
  137. package/dist/schema/EventDef/define.test.js.map +1 -0
  138. package/dist/schema/EventDef/deprecated.d.ts +8 -13
  139. package/dist/schema/EventDef/deprecated.d.ts.map +1 -1
  140. package/dist/schema/EventDef/deprecated.js +12 -13
  141. package/dist/schema/EventDef/deprecated.js.map +1 -1
  142. package/dist/schema/EventDef/deprecated.test.js +3 -3
  143. package/dist/schema/EventDef/deprecated.test.js.map +1 -1
  144. package/dist/schema/EventDef/event-def.d.ts +1 -1
  145. package/dist/schema/EventDef/event-def.d.ts.map +1 -1
  146. package/dist/schema/EventDef/facts.d.ts.map +1 -1
  147. package/dist/schema/EventDef/materializer.d.ts +2 -2
  148. package/dist/schema/EventDef/materializer.d.ts.map +1 -1
  149. package/dist/schema/EventDef/mod.js +5 -5
  150. package/dist/schema/EventSequenceNumber/client.d.ts +12 -17
  151. package/dist/schema/EventSequenceNumber/client.d.ts.map +1 -1
  152. package/dist/schema/EventSequenceNumber/client.js +20 -24
  153. package/dist/schema/EventSequenceNumber/client.js.map +1 -1
  154. package/dist/schema/EventSequenceNumber/global.d.ts +2 -2
  155. package/dist/schema/EventSequenceNumber/global.d.ts.map +1 -1
  156. package/dist/schema/EventSequenceNumber/global.js +1 -1
  157. package/dist/schema/EventSequenceNumber/global.js.map +1 -1
  158. package/dist/schema/EventSequenceNumber/mod.js +2 -2
  159. package/dist/schema/EventSequenceNumber.test.js +6 -6
  160. package/dist/schema/EventSequenceNumber.test.js.map +1 -1
  161. package/dist/schema/LiveStoreEvent/client.d.ts +58 -187
  162. package/dist/schema/LiveStoreEvent/client.d.ts.map +1 -1
  163. package/dist/schema/LiveStoreEvent/client.js +33 -30
  164. package/dist/schema/LiveStoreEvent/client.js.map +1 -1
  165. package/dist/schema/LiveStoreEvent/client.test.js +13 -4
  166. package/dist/schema/LiveStoreEvent/client.test.js.map +1 -1
  167. package/dist/schema/LiveStoreEvent/for-event-def.d.ts +7 -7
  168. package/dist/schema/LiveStoreEvent/for-event-def.d.ts.map +1 -1
  169. package/dist/schema/LiveStoreEvent/global.d.ts +6 -6
  170. package/dist/schema/LiveStoreEvent/global.d.ts.map +1 -1
  171. package/dist/schema/LiveStoreEvent/global.js +2 -2
  172. package/dist/schema/LiveStoreEvent/global.js.map +1 -1
  173. package/dist/schema/LiveStoreEvent/input.d.ts +6 -6
  174. package/dist/schema/LiveStoreEvent/input.d.ts.map +1 -1
  175. package/dist/schema/LiveStoreEvent/input.js +3 -3
  176. package/dist/schema/LiveStoreEvent/input.js.map +1 -1
  177. package/dist/schema/LiveStoreEvent/mod.js +4 -4
  178. package/dist/schema/events.js +1 -1
  179. package/dist/schema/mod.d.ts +1 -0
  180. package/dist/schema/mod.d.ts.map +1 -1
  181. package/dist/schema/mod.js +11 -10
  182. package/dist/schema/mod.js.map +1 -1
  183. package/dist/schema/schema.d.ts +1 -1
  184. package/dist/schema/schema.d.ts.map +1 -1
  185. package/dist/schema/schema.js +6 -5
  186. package/dist/schema/schema.js.map +1 -1
  187. package/dist/schema/state/mod.js +2 -2
  188. package/dist/schema/state/sqlite/client-document-def.d.ts +13 -18
  189. package/dist/schema/state/sqlite/client-document-def.d.ts.map +1 -1
  190. package/dist/schema/state/sqlite/client-document-def.js +30 -27
  191. package/dist/schema/state/sqlite/client-document-def.js.map +1 -1
  192. package/dist/schema/state/sqlite/client-document-def.test.js +53 -18
  193. package/dist/schema/state/sqlite/client-document-def.test.js.map +1 -1
  194. package/dist/schema/state/sqlite/column-annotations.d.ts +13 -13
  195. package/dist/schema/state/sqlite/column-annotations.d.ts.map +1 -1
  196. package/dist/schema/state/sqlite/column-annotations.js +13 -15
  197. package/dist/schema/state/sqlite/column-annotations.js.map +1 -1
  198. package/dist/schema/state/sqlite/column-annotations.test.js +19 -43
  199. package/dist/schema/state/sqlite/column-annotations.test.js.map +1 -1
  200. package/dist/schema/state/sqlite/column-def.d.ts +1 -1
  201. package/dist/schema/state/sqlite/column-def.d.ts.map +1 -1
  202. package/dist/schema/state/sqlite/column-def.js +73 -33
  203. package/dist/schema/state/sqlite/column-def.js.map +1 -1
  204. package/dist/schema/state/sqlite/column-def.test.js +176 -75
  205. package/dist/schema/state/sqlite/column-def.test.js.map +1 -1
  206. package/dist/schema/state/sqlite/column-spec.d.ts.map +1 -1
  207. package/dist/schema/state/sqlite/column-spec.js +1 -1
  208. package/dist/schema/state/sqlite/column-spec.js.map +1 -1
  209. package/dist/schema/state/sqlite/column-spec.test.js +4 -4
  210. package/dist/schema/state/sqlite/column-spec.test.js.map +1 -1
  211. package/dist/schema/state/sqlite/db-schema/ast/fingerprint-digest.d.ts +3 -0
  212. package/dist/schema/state/sqlite/db-schema/ast/fingerprint-digest.d.ts.map +1 -0
  213. package/dist/schema/state/sqlite/db-schema/ast/fingerprint-digest.js +5 -0
  214. package/dist/schema/state/sqlite/db-schema/ast/fingerprint-digest.js.map +1 -0
  215. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.d.ts +5 -0
  216. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.d.ts.map +1 -0
  217. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.js +183 -0
  218. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.js.map +1 -0
  219. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.test.d.ts +2 -0
  220. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.test.d.ts.map +1 -0
  221. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.test.js +142 -0
  222. package/dist/schema/state/sqlite/db-schema/ast/fingerprint.test.js.map +1 -0
  223. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts +3 -8
  224. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts.map +1 -1
  225. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js +1 -73
  226. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js.map +1 -1
  227. package/dist/schema/state/sqlite/db-schema/ast/validate.d.ts.map +1 -1
  228. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts +9 -9
  229. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts.map +1 -1
  230. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js +9 -13
  231. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js.map +1 -1
  232. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js +28 -17
  233. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js.map +1 -1
  234. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts +13 -11
  235. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts.map +1 -1
  236. package/dist/schema/state/sqlite/db-schema/dsl/mod.js +6 -4
  237. package/dist/schema/state/sqlite/db-schema/dsl/mod.js.map +1 -1
  238. package/dist/schema/state/sqlite/db-schema/has-json-string-encoding.d.ts +3 -0
  239. package/dist/schema/state/sqlite/db-schema/has-json-string-encoding.d.ts.map +1 -0
  240. package/dist/schema/state/sqlite/db-schema/has-json-string-encoding.js +6 -0
  241. package/dist/schema/state/sqlite/db-schema/has-json-string-encoding.js.map +1 -0
  242. package/dist/schema/state/sqlite/db-schema/mod.js +2 -2
  243. package/dist/schema/state/sqlite/mod.d.ts +1 -3
  244. package/dist/schema/state/sqlite/mod.d.ts.map +1 -1
  245. package/dist/schema/state/sqlite/mod.js +11 -10
  246. package/dist/schema/state/sqlite/mod.js.map +1 -1
  247. package/dist/schema/state/sqlite/persistence.d.ts +11 -0
  248. package/dist/schema/state/sqlite/persistence.d.ts.map +1 -0
  249. package/dist/schema/state/sqlite/persistence.js +10 -0
  250. package/dist/schema/state/sqlite/persistence.js.map +1 -0
  251. package/dist/schema/state/sqlite/query-builder/api.d.ts +7 -7
  252. package/dist/schema/state/sqlite/query-builder/api.d.ts.map +1 -1
  253. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts.map +1 -1
  254. package/dist/schema/state/sqlite/query-builder/astToSql.js +22 -23
  255. package/dist/schema/state/sqlite/query-builder/astToSql.js.map +1 -1
  256. package/dist/schema/state/sqlite/query-builder/impl.d.ts +1 -1
  257. package/dist/schema/state/sqlite/query-builder/impl.d.ts.map +1 -1
  258. package/dist/schema/state/sqlite/query-builder/impl.js +18 -16
  259. package/dist/schema/state/sqlite/query-builder/impl.js.map +1 -1
  260. package/dist/schema/state/sqlite/query-builder/impl.test.js +364 -598
  261. package/dist/schema/state/sqlite/query-builder/impl.test.js.map +1 -1
  262. package/dist/schema/state/sqlite/query-builder/mod.js +2 -2
  263. package/dist/schema/state/sqlite/schema-helpers.d.ts.map +1 -1
  264. package/dist/schema/state/sqlite/schema-helpers.js +2 -2
  265. package/dist/schema/state/sqlite/schema-helpers.js.map +1 -1
  266. package/dist/schema/state/sqlite/schema-helpers.test.js +2 -2
  267. package/dist/schema/state/sqlite/system-tables/eventlog-tables.d.ts +102 -134
  268. package/dist/schema/state/sqlite/system-tables/eventlog-tables.d.ts.map +1 -1
  269. package/dist/schema/state/sqlite/system-tables/eventlog-tables.js +5 -5
  270. package/dist/schema/state/sqlite/system-tables/eventlog-tables.js.map +1 -1
  271. package/dist/schema/state/sqlite/system-tables/mod.js +2 -2
  272. package/dist/schema/state/sqlite/system-tables/state-tables.d.ts +380 -115
  273. package/dist/schema/state/sqlite/system-tables/state-tables.d.ts.map +1 -1
  274. package/dist/schema/state/sqlite/system-tables/state-tables.js +47 -6
  275. package/dist/schema/state/sqlite/system-tables/state-tables.js.map +1 -1
  276. package/dist/schema/state/sqlite/table-def.d.ts +17 -20
  277. package/dist/schema/state/sqlite/table-def.d.ts.map +1 -1
  278. package/dist/schema/state/sqlite/table-def.js +72 -6
  279. package/dist/schema/state/sqlite/table-def.js.map +1 -1
  280. package/dist/schema/state/sqlite/table-def.test.js +207 -37
  281. package/dist/schema/state/sqlite/table-def.test.js.map +1 -1
  282. package/dist/schema/unknown-events.d.ts.map +1 -1
  283. package/dist/schema/unknown-events.js +3 -2
  284. package/dist/schema/unknown-events.js.map +1 -1
  285. package/dist/schema-management/__tests__/migrations-autoincrement-quoting.test.js +28 -6
  286. package/dist/schema-management/__tests__/migrations-autoincrement-quoting.test.js.map +1 -1
  287. package/dist/schema-management/common.d.ts.map +1 -1
  288. package/dist/schema-management/common.js +2 -2
  289. package/dist/schema-management/migrations.d.ts +4 -4
  290. package/dist/schema-management/migrations.d.ts.map +1 -1
  291. package/dist/schema-management/migrations.js +9 -9
  292. package/dist/schema-management/migrations.js.map +1 -1
  293. package/dist/schema-management/validate-schema.d.ts.map +1 -1
  294. package/dist/schema-management/validate-schema.js +1 -1
  295. package/dist/session-id-symbol.d.ts +29 -0
  296. package/dist/session-id-symbol.d.ts.map +1 -0
  297. package/dist/session-id-symbol.js +44 -0
  298. package/dist/session-id-symbol.js.map +1 -0
  299. package/dist/sql-queries/index.js +3 -3
  300. package/dist/sql-queries/sql-queries.d.ts.map +1 -1
  301. package/dist/sql-queries/sql-queries.js +11 -13
  302. package/dist/sql-queries/sql-queries.js.map +1 -1
  303. package/dist/sql-queries/sql-query-builder.d.ts.map +1 -1
  304. package/dist/sql-queries/sql-query-builder.js +1 -1
  305. package/dist/sql-queries/types.d.ts +6 -7
  306. package/dist/sql-queries/types.d.ts.map +1 -1
  307. package/dist/sql-queries/types.js.map +1 -1
  308. package/dist/sqlite-db-helper.d.ts +23 -3
  309. package/dist/sqlite-db-helper.d.ts.map +1 -1
  310. package/dist/sqlite-db-helper.js +39 -4
  311. package/dist/sqlite-db-helper.js.map +1 -1
  312. package/dist/sqlite-types.d.ts +3 -6
  313. package/dist/sqlite-types.d.ts.map +1 -1
  314. package/dist/sqlite-types.js +3 -3
  315. package/dist/sqlite-types.js.map +1 -1
  316. package/dist/sync/ClientSessionSyncProcessor.d.ts +41 -19
  317. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
  318. package/dist/sync/ClientSessionSyncProcessor.js +200 -70
  319. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
  320. package/dist/sync/errors.d.ts +12 -18
  321. package/dist/sync/errors.d.ts.map +1 -1
  322. package/dist/sync/errors.js +3 -3
  323. package/dist/sync/errors.js.map +1 -1
  324. package/dist/sync/index.js +6 -6
  325. package/dist/sync/mock-sync-backend.d.ts +2 -3
  326. package/dist/sync/mock-sync-backend.d.ts.map +1 -1
  327. package/dist/sync/mock-sync-backend.js +58 -37
  328. package/dist/sync/mock-sync-backend.js.map +1 -1
  329. package/dist/sync/mock-sync-backend.test.d.ts +2 -0
  330. package/dist/sync/mock-sync-backend.test.d.ts.map +1 -0
  331. package/dist/sync/mock-sync-backend.test.js +49 -0
  332. package/dist/sync/mock-sync-backend.test.js.map +1 -0
  333. package/dist/sync/next/compact-events.d.ts.map +1 -1
  334. package/dist/sync/next/compact-events.js +3 -3
  335. package/dist/sync/next/facts.d.ts.map +1 -1
  336. package/dist/sync/next/facts.js +1 -1
  337. package/dist/sync/next/history-dag-common.d.ts +5 -1
  338. package/dist/sync/next/history-dag-common.d.ts.map +1 -1
  339. package/dist/sync/next/history-dag-common.js +53 -32
  340. package/dist/sync/next/history-dag-common.js.map +1 -1
  341. package/dist/sync/next/history-dag.d.ts.map +1 -1
  342. package/dist/sync/next/history-dag.js +5 -4
  343. package/dist/sync/next/history-dag.js.map +1 -1
  344. package/dist/sync/next/mod.js +5 -5
  345. package/dist/sync/next/rebase-events.d.ts.map +1 -1
  346. package/dist/sync/next/rebase-events.js +2 -2
  347. package/dist/sync/next/test/compact-events.calculator.test.js +6 -6
  348. package/dist/sync/next/test/compact-events.test.js +4 -4
  349. package/dist/sync/next/test/event-fixtures.d.ts +8 -8
  350. package/dist/sync/next/test/event-fixtures.d.ts.map +1 -1
  351. package/dist/sync/next/test/event-fixtures.js +6 -6
  352. package/dist/sync/next/test/event-fixtures.js.map +1 -1
  353. package/dist/sync/next/test/history-dag-common.test.d.ts +2 -0
  354. package/dist/sync/next/test/history-dag-common.test.d.ts.map +1 -0
  355. package/dist/sync/next/test/history-dag-common.test.js +73 -0
  356. package/dist/sync/next/test/history-dag-common.test.js.map +1 -0
  357. package/dist/sync/next/test/mod.js +1 -1
  358. package/dist/sync/sync-backend-kv.d.ts.map +1 -1
  359. package/dist/sync/sync-backend-kv.js +5 -3
  360. package/dist/sync/sync-backend-kv.js.map +1 -1
  361. package/dist/sync/sync-backend.d.ts +15 -15
  362. package/dist/sync/sync-backend.d.ts.map +1 -1
  363. package/dist/sync/sync-backend.js +10 -6
  364. package/dist/sync/sync-backend.js.map +1 -1
  365. package/dist/sync/sync.d.ts +1 -1
  366. package/dist/sync/sync.d.ts.map +1 -1
  367. package/dist/sync/sync.js +2 -2
  368. package/dist/sync/syncstate.d.ts +100 -176
  369. package/dist/sync/syncstate.d.ts.map +1 -1
  370. package/dist/sync/syncstate.js +36 -39
  371. package/dist/sync/syncstate.js.map +1 -1
  372. package/dist/sync/syncstate.test.js +103 -64
  373. package/dist/sync/syncstate.test.js.map +1 -1
  374. package/dist/sync/transport-chunking.d.ts +15 -16
  375. package/dist/sync/transport-chunking.d.ts.map +1 -1
  376. package/dist/sync/transport-chunking.js +23 -32
  377. package/dist/sync/transport-chunking.js.map +1 -1
  378. package/dist/sync/validate-push-payload.d.ts.map +1 -1
  379. package/dist/sync/validate-push-payload.js +2 -2
  380. package/dist/testing/event-factory.d.ts.map +1 -1
  381. package/dist/testing/event-factory.js +2 -2
  382. package/dist/testing/event-factory.js.map +1 -1
  383. package/dist/testing/mod.js +1 -1
  384. package/dist/util.d.ts +11 -4
  385. package/dist/util.d.ts.map +1 -1
  386. package/dist/util.js +20 -2
  387. package/dist/util.js.map +1 -1
  388. package/dist/version.d.ts.map +1 -1
  389. package/dist/version.js.map +1 -1
  390. package/package.json +40 -57
  391. package/src/ClientSessionLeaderThreadProxy.ts +1 -1
  392. package/src/MaterializationJournal.ts +184 -0
  393. package/src/StateHead.ts +80 -0
  394. package/src/WorkerTransportError.ts +4 -4
  395. package/src/__tests__/fixture.ts +3 -3
  396. package/src/adapter-types.ts +28 -61
  397. package/src/debug-info.ts +53 -70
  398. package/src/defs.ts +2 -2
  399. package/src/devtools/devtools-compatibility.test.ts +1 -0
  400. package/src/devtools/devtools-messages-client-session.ts +56 -65
  401. package/src/devtools/devtools-messages-common.ts +12 -11
  402. package/src/devtools/devtools-messages-leader.ts +71 -69
  403. package/src/devtools/devtools-sessioninfo.ts +13 -11
  404. package/src/devtools/mod.ts +4 -5
  405. package/src/errors.ts +46 -34
  406. package/src/index.ts +8 -1
  407. package/src/leader-thread/LeaderSyncProcessor.ts +777 -650
  408. package/src/leader-thread/RejectedPushError.ts +40 -27
  409. package/src/leader-thread/connection.ts +12 -8
  410. package/src/leader-thread/eventlog.ts +20 -12
  411. package/src/leader-thread/leader-worker-devtools.ts +38 -20
  412. package/src/leader-thread/make-leader-thread-layer.test.ts +7 -7
  413. package/src/leader-thread/make-leader-thread-layer.ts +100 -71
  414. package/src/leader-thread/materialize-event.ts +13 -8
  415. package/src/leader-thread/recreate-db.ts +41 -75
  416. package/src/leader-thread/shutdown-channel.ts +3 -14
  417. package/src/leader-thread/stream-events.ts +102 -101
  418. package/src/leader-thread/types.ts +29 -62
  419. package/src/logging.ts +5 -52
  420. package/src/make-client-session.ts +6 -6
  421. package/src/materializer-helper.ts +7 -36
  422. package/src/otel.ts +5 -14
  423. package/src/rematerialize-from-eventlog.ts +116 -98
  424. package/src/schema/EventDef/define.test.ts +28 -0
  425. package/src/schema/EventDef/define.ts +20 -19
  426. package/src/schema/EventDef/deprecated.test.ts +1 -8
  427. package/src/schema/EventDef/deprecated.ts +17 -20
  428. package/src/schema/EventDef/event-def.ts +2 -4
  429. package/src/schema/EventSequenceNumber/client.ts +20 -24
  430. package/src/schema/EventSequenceNumber/global.ts +1 -1
  431. package/src/schema/EventSequenceNumber.test.ts +5 -5
  432. package/src/schema/LiveStoreEvent/client.test.ts +17 -4
  433. package/src/schema/LiveStoreEvent/client.ts +36 -35
  434. package/src/schema/LiveStoreEvent/for-event-def.ts +7 -7
  435. package/src/schema/LiveStoreEvent/global.ts +1 -1
  436. package/src/schema/LiveStoreEvent/input.ts +6 -6
  437. package/src/schema/mod.ts +1 -0
  438. package/src/schema/schema.ts +4 -3
  439. package/src/schema/state/sqlite/client-document-def.test.ts +55 -20
  440. package/src/schema/state/sqlite/client-document-def.ts +95 -80
  441. package/src/schema/state/sqlite/column-annotations.test.ts +26 -45
  442. package/src/schema/state/sqlite/column-annotations.ts +26 -30
  443. package/src/schema/state/sqlite/column-def.test.ts +213 -77
  444. package/src/schema/state/sqlite/column-def.ts +87 -37
  445. package/src/schema/state/sqlite/column-spec.test.ts +2 -2
  446. package/src/schema/state/sqlite/column-spec.ts +3 -2
  447. package/src/schema/state/sqlite/db-schema/ast/fingerprint-digest.ts +6 -0
  448. package/src/schema/state/sqlite/db-schema/ast/fingerprint.test.ts +209 -0
  449. package/src/schema/state/sqlite/db-schema/ast/fingerprint.ts +225 -0
  450. package/src/schema/state/sqlite/db-schema/ast/sqlite.ts +2 -81
  451. package/src/schema/state/sqlite/db-schema/dsl/__snapshots__/field-defs.test.ts.snap +123 -63
  452. package/src/schema/state/sqlite/db-schema/dsl/field-defs.test.ts +35 -16
  453. package/src/schema/state/sqlite/db-schema/dsl/field-defs.ts +26 -31
  454. package/src/schema/state/sqlite/db-schema/dsl/mod.ts +35 -21
  455. package/src/schema/state/sqlite/db-schema/has-json-string-encoding.ts +9 -0
  456. package/src/schema/state/sqlite/mod.ts +4 -5
  457. package/src/schema/state/sqlite/persistence.ts +11 -0
  458. package/src/schema/state/sqlite/query-builder/api.ts +9 -9
  459. package/src/schema/state/sqlite/query-builder/astToSql.ts +24 -26
  460. package/src/schema/state/sqlite/query-builder/impl.test.ts +433 -669
  461. package/src/schema/state/sqlite/query-builder/impl.ts +19 -15
  462. package/src/schema/state/sqlite/schema-helpers.ts +1 -1
  463. package/src/schema/state/sqlite/system-tables/eventlog-tables.ts +2 -2
  464. package/src/schema/state/sqlite/system-tables/state-tables.ts +54 -3
  465. package/src/schema/state/sqlite/table-def.test.ts +270 -66
  466. package/src/schema/state/sqlite/table-def.ts +112 -45
  467. package/src/schema/unknown-events.ts +3 -2
  468. package/src/schema-management/__tests__/migrations-autoincrement-quoting.test.ts +35 -4
  469. package/src/schema-management/migrations.ts +7 -6
  470. package/src/session-id-symbol.ts +59 -0
  471. package/src/sql-queries/sql-queries.ts +9 -13
  472. package/src/sql-queries/types.ts +6 -7
  473. package/src/sqlite-db-helper.ts +64 -2
  474. package/src/sqlite-types.ts +5 -8
  475. package/src/sync/ClientSessionSyncProcessor.ts +303 -119
  476. package/src/sync/errors.ts +14 -12
  477. package/src/sync/mock-sync-backend.test.ts +78 -0
  478. package/src/sync/mock-sync-backend.ts +93 -47
  479. package/src/sync/next/history-dag-common.ts +60 -34
  480. package/src/sync/next/history-dag.ts +4 -1
  481. package/src/sync/next/test/compact-events.calculator.test.ts +2 -2
  482. package/src/sync/next/test/event-fixtures.ts +1 -1
  483. package/src/sync/next/test/history-dag-common.test.ts +87 -0
  484. package/src/sync/sync-backend-kv.ts +4 -2
  485. package/src/sync/sync-backend.ts +15 -15
  486. package/src/sync/sync.ts +1 -1
  487. package/src/sync/syncstate.test.ts +191 -140
  488. package/src/sync/syncstate.ts +63 -53
  489. package/src/sync/transport-chunking.ts +34 -39
  490. package/src/util.ts +19 -9
  491. package/src/version.ts +1 -2
  492. package/dist/schema/state/sqlite/db-schema/hash.d.ts +0 -2
  493. package/dist/schema/state/sqlite/db-schema/hash.d.ts.map +0 -1
  494. package/dist/schema/state/sqlite/db-schema/hash.js +0 -15
  495. package/dist/schema/state/sqlite/db-schema/hash.js.map +0 -1
  496. package/dist/sql-queries/misc.d.ts +0 -2
  497. package/dist/sql-queries/misc.d.ts.map +0 -1
  498. package/dist/sql-queries/misc.js +0 -2
  499. package/dist/sql-queries/misc.js.map +0 -1
  500. package/src/schema/state/sqlite/db-schema/hash.ts +0 -13
  501. package/src/sql-queries/misc.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"sync-backend-kv.js","sourceRoot":"","sources":["../../src/sync/sync-backend-kv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IACrD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,aAAa,CAAA;IAE7C,MAAM,YAAY,GAAG,WAAW,CAAA;IAChC,MAAM,YAAY,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,CAAA;IAElG,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CACzC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACrF,YAAY,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7C,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;IAEzC,OAAO;QACL,OAAO,EAAE,YAAY;QACrB,GAAG,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO;KAChC,CAAA;AACH,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"sync-backend-kv.js","sourceRoot":"","sources":["../../src/sync/sync-backend-kv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IACrD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,aAAa,CAAA;IAE7C,MAAM,YAAY,GAAG,WAAW,CAAA;IAChC,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;KAClG,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CACzC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9D,YAAY,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7C,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;IAEzC,OAAO;QACL,OAAO,EAAE,YAAY;QACrB,GAAG,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO;KAChC,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -7,13 +7,13 @@ export * from './sync-backend-kv.ts';
7
7
  /**
8
8
  * Those arguments can be used to implement multi-tenancy etc and are passed in from the store.
9
9
  */
10
- export type MakeBackendArgs<TPayload = Schema.JsonValue> = {
10
+ export type MakeBackendArgs<TPayload = Schema.Json> = {
11
11
  storeId: string;
12
12
  clientId: string;
13
13
  payload: TPayload | undefined;
14
14
  };
15
- export type SyncBackendConstructor<TSyncMetadata = Schema.JsonValue, TPayload = Schema.JsonValue> = (args: MakeBackendArgs<TPayload>) => Effect.Effect<SyncBackend<TSyncMetadata>, UnknownError, Scope.Scope | HttpClient.HttpClient | KeyValueStore.KeyValueStore>;
16
- export type SyncBackend<TSyncMetadata = Schema.JsonValue> = {
15
+ export type SyncBackendConstructor<TSyncMetadata = Schema.Json, TPayload = Schema.Json> = (args: MakeBackendArgs<TPayload>) => Effect.Effect<SyncBackend<TSyncMetadata>, UnknownError, Scope.Scope | HttpClient.HttpClient | KeyValueStore.KeyValueStore>;
16
+ export type SyncBackend<TSyncMetadata = Schema.Json> = {
17
17
  /**
18
18
  * Can be implemented to prepare a connection to the sync backend to speed up the first pull/push.
19
19
  */
@@ -37,7 +37,7 @@ export type SyncBackend<TSyncMetadata = Schema.JsonValue> = {
37
37
  * - sequence numbers must be in ascending order
38
38
  * */
39
39
  batch: ReadonlyArray<LiveStoreEvent.Global.Encoded>) => Effect.Effect<void, IsOfflineError | BackendIdMismatchError | UnknownError | ServerAheadError>;
40
- ping: Effect.Effect<void, IsOfflineError | UnknownError | Cause.TimeoutException>;
40
+ ping: Effect.Effect<void, IsOfflineError | UnknownError | Cause.TimeoutError>;
41
41
  isConnected: SubscriptionRef.SubscriptionRef<boolean>;
42
42
  /**
43
43
  * Metadata describing the sync backend. (Currently only used by devtools.)
@@ -45,7 +45,7 @@ export type SyncBackend<TSyncMetadata = Schema.JsonValue> = {
45
45
  metadata: {
46
46
  name: string;
47
47
  description: string;
48
- } & Record<string, Schema.JsonValue>;
48
+ } & Record<string, Schema.Json>;
49
49
  /** Information about the sync backend capabilities. */
50
50
  supports: {
51
51
  /**
@@ -64,13 +64,13 @@ export type SyncBackend<TSyncMetadata = Schema.JsonValue> = {
64
64
  */
65
65
  export declare const NetworkStatus: Schema.Struct<{
66
66
  /** True when the upstream sync backend is reachable and responding to health checks. */
67
- isConnected: typeof Schema.Boolean;
67
+ readonly isConnected: Schema.Boolean;
68
68
  /** Unix epoch timestamp (ms) of the latest connectivity state transition. */
69
- timestampMs: typeof Schema.Number;
69
+ readonly timestampMs: Schema.Finite;
70
70
  /** Devtools specific metadata describing simulator overrides. */
71
- devtools: Schema.Struct<{
71
+ readonly devtools: Schema.Struct<{
72
72
  /** Indicates whether the devtools latch forced the client into an offline state. */
73
- latchClosed: typeof Schema.Boolean;
73
+ readonly latchClosed: Schema.Boolean;
74
74
  }>;
75
75
  }>;
76
76
  export type NetworkStatus = typeof NetworkStatus.Type;
@@ -79,26 +79,26 @@ export type NetworkStatus = typeof NetworkStatus.Type;
79
79
  * Performs lightweight structural checks on the object shape.
80
80
  */
81
81
  export declare const isSyncBackend: (value: unknown) => value is SyncBackend<any>;
82
- export declare const PullResPageInfo: Schema.Union<[Schema.TaggedStruct<"MoreUnknown", {}>, Schema.TaggedStruct<"MoreKnown", {
83
- remaining: typeof Schema.Number;
82
+ export declare const PullResPageInfo: Schema.Union<readonly [Schema.TaggedStruct<"MoreUnknown", {}>, Schema.TaggedStruct<"MoreKnown", {
83
+ readonly remaining: Schema.Finite;
84
84
  }>, Schema.TaggedStruct<"NoMore", {}>]>;
85
85
  export type PullResPageInfo = typeof PullResPageInfo.Type;
86
86
  export declare const pageInfoNoMore: PullResPageInfo;
87
87
  export declare const pageInfoMoreUnknown: PullResPageInfo;
88
88
  export declare const pageInfoMoreKnown: (remaining: number) => PullResPageInfo;
89
- export declare const pullResItemEmpty: <TSyncMetadata = Schema.JsonValue>() => PullResItem<TSyncMetadata>;
90
- export interface PullResItem<TSyncMetadata = Schema.JsonValue> {
89
+ export declare const pullResItemEmpty: <TSyncMetadata = Schema.Json>() => PullResItem<TSyncMetadata>;
90
+ export interface PullResItem<TSyncMetadata = Schema.Json> {
91
91
  batch: ReadonlyArray<{
92
92
  eventEncoded: LiveStoreEvent.Global.Encoded;
93
93
  metadata: Option.Option<TSyncMetadata>;
94
94
  }>;
95
95
  pageInfo: PullResPageInfo;
96
96
  }
97
- export declare const of: <TSyncMetadata = Schema.JsonValue>(obj: SyncBackend<TSyncMetadata>) => SyncBackend<TSyncMetadata>;
97
+ export declare const of: <TSyncMetadata = Schema.Json>(obj: SyncBackend<TSyncMetadata>) => SyncBackend<TSyncMetadata>;
98
98
  /**
99
99
  * Useful to continue pulling from the last event in the batch.
100
100
  */
101
- export declare const cursorFromPullResItem: <TSyncMetadata = Schema.JsonValue>(item: PullResItem<TSyncMetadata>) => Option.Option<{
101
+ export declare const cursorFromPullResItem: <TSyncMetadata = Schema.Json>(item: PullResItem<TSyncMetadata>) => Option.Option<{
102
102
  eventSequenceNumber: EventSequenceNumber.Global.Type;
103
103
  metadata: Option.Option<TSyncMetadata>;
104
104
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-backend.d.ts","sourceRoot":"","sources":["../../src/sync/sync-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-backend.d.ts","sourceRoot":"","sources":["../../src/sync/sync-backend.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Option, Schema, } from '@livestore/utils/effect';
2
- export * from "./sync-backend-kv.js";
2
+ export * from './sync-backend-kv.js';
3
3
  /**
4
4
  * Connectivity metadata emitted by sync backends.
5
5
  */
@@ -7,13 +7,13 @@ export const NetworkStatus = Schema.Struct({
7
7
  /** True when the upstream sync backend is reachable and responding to health checks. */
8
8
  isConnected: Schema.Boolean,
9
9
  /** Unix epoch timestamp (ms) of the latest connectivity state transition. */
10
- timestampMs: Schema.Number,
10
+ timestampMs: Schema.Finite,
11
11
  /** Devtools specific metadata describing simulator overrides. */
12
12
  devtools: Schema.Struct({
13
13
  /** Indicates whether the devtools latch forced the client into an offline state. */
14
14
  latchClosed: Schema.Boolean,
15
15
  }),
16
- }).annotations({ title: 'NetworkStatus' });
16
+ }).annotate({ title: 'NetworkStatus' });
17
17
  /**
18
18
  * Runtime type guard for SyncBackend objects.
19
19
  * Performs lightweight structural checks on the object shape.
@@ -37,9 +37,13 @@ export const isSyncBackend = (value) => {
37
37
  const hasIsConnected = typeof v.isConnected === 'object' && v.isConnected !== null;
38
38
  return hasCoreFns && hasSupports && hasMetadata && hasIsConnected;
39
39
  };
40
- export const PullResPageInfo = Schema.Union(Schema.TaggedStruct('MoreUnknown', {}), Schema.TaggedStruct('MoreKnown', {
41
- remaining: Schema.Number,
42
- }), Schema.TaggedStruct('NoMore', {}));
40
+ export const PullResPageInfo = Schema.Union([
41
+ Schema.TaggedStruct('MoreUnknown', {}),
42
+ Schema.TaggedStruct('MoreKnown', {
43
+ remaining: Schema.Finite,
44
+ }),
45
+ Schema.TaggedStruct('NoMore', {}),
46
+ ]);
43
47
  export const pageInfoNoMore = { _tag: 'NoMore' };
44
48
  export const pageInfoMoreUnknown = { _tag: 'MoreUnknown' };
45
49
  export const pageInfoMoreKnown = (remaining) => ({ _tag: 'MoreKnown', remaining });
@@ -1 +1 @@
1
- {"version":3,"file":"sync-backend.js","sourceRoot":"","sources":["../../src/sync/sync-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-backend.js","sourceRoot":"","sources":["../../src/sync/sync-backend.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ export * as SyncBackend from './sync-backend.ts';
3
3
  import type { Schema } from '@livestore/utils/effect';
4
4
  import type { InitialSyncOptions } from '../leader-thread/types.ts';
5
5
  import type { SyncBackendConstructor } from './sync-backend.ts';
6
- export type SyncOptions<TPayload = Schema.JsonValue> = {
6
+ export type SyncOptions<TPayload = Schema.Json> = {
7
7
  backend?: SyncBackendConstructor<any, TPayload>;
8
8
  /** @default { _tag: 'Skip' } */
9
9
  initialSyncOptions?: InitialSyncOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,MAAM,MAAM,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC,SAAS,IAAI;IACrD,OAAO,CAAC,EAAE,sBAAsB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAC/C,gCAAgC;IAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;;;;SAQK;IACL,WAAW,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;IACnC;;;;;;;;;;;;;;;;;;OAkBG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAA;IACrD;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAA;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAE/D,MAAM,MAAM,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI;IAChD,OAAO,CAAC,EAAE,sBAAsB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAC/C,gCAAgC;IAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;;;;SAQK;IACL,WAAW,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;IACnC;;;;;;;;;;;;;;;;;;OAkBG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAA;IACrD;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA"}
package/dist/sync/sync.js CHANGED
@@ -1,3 +1,3 @@
1
- export * from "./errors.js";
2
- export * as SyncBackend from "./sync-backend.js";
1
+ export * from './errors.js';
2
+ export * as SyncBackend from './sync-backend.js';
3
3
  //# sourceMappingURL=sync.js.map
@@ -1,57 +1,25 @@
1
1
  import { Effect, Schema } from '@livestore/utils/effect';
2
2
  import * as EventSequenceNumber from '../schema/EventSequenceNumber/mod.ts';
3
3
  import * as LiveStoreEvent from '../schema/LiveStoreEvent/mod.ts';
4
- declare const SyncState_base: Schema.Class<SyncState, {
5
- pending: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
4
+ declare const SyncState_base: Schema.Class<SyncState, Schema.Struct<{
5
+ readonly pending: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
6
6
  /** What this node expects the next upstream node to have as its own local head */
7
- upstreamHead: Schema.Struct<{
8
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
9
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
10
- rebaseGeneration: typeof Schema.Int;
7
+ readonly upstreamHead: Schema.Struct<{
8
+ readonly global: Schema.brand<Schema.Int, "GlobalEventSequenceNumber">;
9
+ readonly client: Schema.brand<Schema.Int, "ClientEventSequenceNumber">;
10
+ readonly rebaseGeneration: Schema.Int;
11
11
  }> & {
12
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
12
+ make(seqNum: EventSequenceNumber.Client.CompositeInput): EventSequenceNumber.Client.Composite;
13
13
  };
14
14
  /** Equivalent to `pending.at(-1)?.id` if there are pending events */
15
- localHead: Schema.Struct<{
16
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
17
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
18
- rebaseGeneration: typeof Schema.Int;
15
+ readonly localHead: Schema.Struct<{
16
+ readonly global: Schema.brand<Schema.Int, "GlobalEventSequenceNumber">;
17
+ readonly client: Schema.brand<Schema.Int, "ClientEventSequenceNumber">;
18
+ readonly rebaseGeneration: Schema.Int;
19
19
  }> & {
20
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
20
+ make(seqNum: EventSequenceNumber.Client.CompositeInput): EventSequenceNumber.Client.Composite;
21
21
  };
22
- }, Schema.Struct.Encoded<{
23
- pending: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
24
- /** What this node expects the next upstream node to have as its own local head */
25
- upstreamHead: Schema.Struct<{
26
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
27
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
28
- rebaseGeneration: typeof Schema.Int;
29
- }> & {
30
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
31
- };
32
- /** Equivalent to `pending.at(-1)?.id` if there are pending events */
33
- localHead: Schema.Struct<{
34
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
35
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
36
- rebaseGeneration: typeof Schema.Int;
37
- }> & {
38
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
39
- };
40
- }>, never, {
41
- readonly upstreamHead: {
42
- readonly global: number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">;
43
- readonly client: number & import("effect/Brand").Brand<"ClientEventSequenceNumber">;
44
- readonly rebaseGeneration: number;
45
- };
46
- } & {
47
- readonly localHead: {
48
- readonly global: number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">;
49
- readonly client: number & import("effect/Brand").Brand<"ClientEventSequenceNumber">;
50
- readonly rebaseGeneration: number;
51
- };
52
- } & {
53
- readonly pending: readonly LiveStoreEvent.Client.EncodedWithMeta[];
54
- }, {}, {}>;
22
+ }>, {}>;
55
23
  /**
56
24
  * SyncState represents the current sync state of a sync node relative to an upstream node.
57
25
  * Events flow from local to upstream, with each state maintaining its own event head.
@@ -92,172 +60,128 @@ declare const SyncState_base: Schema.Class<SyncState, {
92
60
  export declare class SyncState extends SyncState_base {
93
61
  toJSON: () => any;
94
62
  }
95
- declare const PayloadUpstreamRebase_base: Schema.TaggedStruct<"upstream-rebase", {
96
- /** Events which need to be rolled back */
97
- rollbackEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
98
- /** Events which need to be applied after the rollback (already rebased by the upstream node) */
99
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
100
- }>;
101
63
  /**
102
64
  * This payload propagates a rebase from the upstream node
103
65
  */
104
- export declare class PayloadUpstreamRebase extends PayloadUpstreamRebase_base {
105
- }
106
- declare const PayloadUpstreamAdvance_base: Schema.TaggedStruct<"upstream-advance", {
107
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
66
+ export declare const PayloadUpstreamRebase: Schema.TaggedStruct<"upstream-rebase", {
67
+ /** Events which need to be rolled back */
68
+ readonly rollbackEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
69
+ /** Events which need to be applied after the rollback (already rebased by the upstream node) */
70
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
108
71
  }>;
109
- export declare class PayloadUpstreamAdvance extends PayloadUpstreamAdvance_base {
110
- }
111
- declare const PayloadLocalPush_base: Schema.TaggedStruct<"local-push", {
112
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
72
+ export declare const PayloadUpstreamAdvance: Schema.TaggedStruct<"upstream-advance", {
73
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
113
74
  }>;
114
- export declare class PayloadLocalPush extends PayloadLocalPush_base {
115
- }
116
- declare const Payload_base: Schema.Union<[typeof PayloadUpstreamRebase, typeof PayloadUpstreamAdvance, typeof PayloadLocalPush]>;
117
- export declare class Payload extends Payload_base {
118
- }
119
- declare const PayloadUpstream_base: Schema.Union<[typeof PayloadUpstreamRebase, typeof PayloadUpstreamAdvance]>;
120
- export declare class PayloadUpstream extends PayloadUpstream_base {
121
- }
122
- declare const MergeContext_base: Schema.Class<MergeContext, {
123
- payload: typeof Payload;
124
- syncState: typeof SyncState;
125
- }, Schema.Struct.Encoded<{
126
- payload: typeof Payload;
127
- syncState: typeof SyncState;
128
- }>, never, {
129
- readonly payload: {
130
- readonly _tag: "upstream-rebase";
131
- readonly rollbackEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
132
- readonly newEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
133
- } | {
134
- readonly _tag: "upstream-advance";
135
- readonly newEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
136
- } | {
137
- readonly _tag: "local-push";
138
- readonly newEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
139
- };
140
- } & {
141
- readonly syncState: SyncState;
142
- }, {}, {}>;
75
+ export declare const PayloadLocalPush: Schema.TaggedStruct<"local-push", {
76
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
77
+ }>;
78
+ export declare const Payload: Schema.Union<readonly [Schema.TaggedStruct<"upstream-rebase", {
79
+ /** Events which need to be rolled back */
80
+ readonly rollbackEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
81
+ /** Events which need to be applied after the rollback (already rebased by the upstream node) */
82
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
83
+ }>, Schema.TaggedStruct<"upstream-advance", {
84
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
85
+ }>, Schema.TaggedStruct<"local-push", {
86
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
87
+ }>]>;
88
+ export declare const PayloadUpstream: Schema.Union<readonly [Schema.TaggedStruct<"upstream-rebase", {
89
+ /** Events which need to be rolled back */
90
+ readonly rollbackEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
91
+ /** Events which need to be applied after the rollback (already rebased by the upstream node) */
92
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
93
+ }>, Schema.TaggedStruct<"upstream-advance", {
94
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
95
+ }>]>;
96
+ declare const MergeContext_base: Schema.Class<MergeContext, Schema.Struct<{
97
+ readonly payload: Schema.Union<readonly [Schema.TaggedStruct<"upstream-rebase", {
98
+ /** Events which need to be rolled back */
99
+ readonly rollbackEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
100
+ /** Events which need to be applied after the rollback (already rebased by the upstream node) */
101
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
102
+ }>, Schema.TaggedStruct<"upstream-advance", {
103
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
104
+ }>, Schema.TaggedStruct<"local-push", {
105
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
106
+ }>]>;
107
+ readonly syncState: typeof SyncState;
108
+ }>, {}>;
143
109
  /** Only used for debugging purposes */
144
110
  export declare class MergeContext extends MergeContext_base {
145
111
  toJSON: () => any;
146
112
  }
147
- declare const MergeResultAdvance_base: Schema.Class<MergeResultAdvance, {
148
- _tag: Schema.Literal<["advance"]>;
149
- newSyncState: typeof SyncState;
150
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
113
+ declare const MergeResultAdvance_base: Schema.Class<MergeResultAdvance, Schema.Struct<{
114
+ readonly _tag: Schema.Literal<"advance">;
115
+ readonly newSyncState: typeof SyncState;
116
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
151
117
  /** Events which were previously pending but are now confirmed */
152
- confirmedEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
153
- mergeContext: typeof MergeContext;
154
- }, Schema.Struct.Encoded<{
155
- _tag: Schema.Literal<["advance"]>;
156
- newSyncState: typeof SyncState;
157
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
158
- /** Events which were previously pending but are now confirmed */
159
- confirmedEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
160
- mergeContext: typeof MergeContext;
161
- }>, never, {
162
- readonly _tag: "advance";
163
- } & {
164
- readonly newEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
165
- } & {
166
- readonly newSyncState: SyncState;
167
- } & {
168
- readonly mergeContext: MergeContext;
169
- } & {
170
- readonly confirmedEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
171
- }, {}, {}>;
118
+ readonly confirmedEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
119
+ readonly mergeContext: typeof MergeContext;
120
+ }>, {}>;
172
121
  export declare class MergeResultAdvance extends MergeResultAdvance_base {
173
122
  toJSON: () => any;
174
123
  }
175
- declare const MergeResultRebase_base: Schema.Class<MergeResultRebase, {
176
- _tag: Schema.Literal<["rebase"]>;
177
- newSyncState: typeof SyncState;
178
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
179
- /** Events which need to be rolled back */
180
- rollbackEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
181
- mergeContext: typeof MergeContext;
182
- }, Schema.Struct.Encoded<{
183
- _tag: Schema.Literal<["rebase"]>;
184
- newSyncState: typeof SyncState;
185
- newEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
124
+ declare const MergeResultRebase_base: Schema.Class<MergeResultRebase, Schema.Struct<{
125
+ readonly _tag: Schema.Literal<"rebase">;
126
+ readonly newSyncState: typeof SyncState;
127
+ readonly newEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
186
128
  /** Events which need to be rolled back */
187
- rollbackEvents: Schema.Array$<typeof LiveStoreEvent.Client.EncodedWithMeta>;
188
- mergeContext: typeof MergeContext;
189
- }>, never, {
190
- readonly _tag: "rebase";
191
- } & {
192
- readonly rollbackEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
193
- } & {
194
- readonly newEvents: readonly LiveStoreEvent.Client.EncodedWithMeta[];
195
- } & {
196
- readonly newSyncState: SyncState;
197
- } & {
198
- readonly mergeContext: MergeContext;
199
- }, {}, {}>;
129
+ readonly rollbackEvents: Schema.$Array<typeof LiveStoreEvent.Client.EncodedWithMeta>;
130
+ readonly mergeContext: typeof MergeContext;
131
+ }>, {}>;
200
132
  export declare class MergeResultRebase extends MergeResultRebase_base {
201
133
  toJSON: () => any;
202
134
  }
203
- declare const MergeResultReject_base: Schema.Class<MergeResultReject, {
204
- _tag: Schema.Literal<["reject"]>;
135
+ declare const MergeResultReject_base: Schema.Class<MergeResultReject, Schema.Struct<{
136
+ readonly _tag: Schema.Literal<"reject">;
205
137
  /** The minimum id that the new events must have */
206
- expectedMinimumId: Schema.Struct<{
207
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
208
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
209
- rebaseGeneration: typeof Schema.Int;
138
+ readonly expectedMinimumId: Schema.Struct<{
139
+ readonly global: Schema.brand<Schema.Int, "GlobalEventSequenceNumber">;
140
+ readonly client: Schema.brand<Schema.Int, "ClientEventSequenceNumber">;
141
+ readonly rebaseGeneration: Schema.Int;
210
142
  }> & {
211
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
143
+ make(seqNum: EventSequenceNumber.Client.CompositeInput): EventSequenceNumber.Client.Composite;
212
144
  };
213
- mergeContext: typeof MergeContext;
214
- }, Schema.Struct.Encoded<{
215
- _tag: Schema.Literal<["reject"]>;
216
- /** The minimum id that the new events must have */
217
- expectedMinimumId: Schema.Struct<{
218
- global: Schema.BrandSchema<number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">, number, never>;
219
- client: Schema.BrandSchema<number & import("effect/Brand").Brand<"ClientEventSequenceNumber">, number, never>;
220
- rebaseGeneration: typeof Schema.Int;
221
- }> & {
222
- make: (seqNum: EventSequenceNumber.Client.CompositeInput) => EventSequenceNumber.Client.Composite;
223
- };
224
- mergeContext: typeof MergeContext;
225
- }>, never, {
226
- readonly _tag: "reject";
227
- } & {
228
- readonly mergeContext: MergeContext;
229
- } & {
230
- readonly expectedMinimumId: {
231
- readonly global: number & import("effect/Brand").Brand<"GlobalEventSequenceNumber">;
232
- readonly client: number & import("effect/Brand").Brand<"ClientEventSequenceNumber">;
233
- readonly rebaseGeneration: number;
234
- };
235
- }, {}, {}>;
145
+ readonly mergeContext: typeof MergeContext;
146
+ }>, {}>;
236
147
  export declare class MergeResultReject extends MergeResultReject_base {
237
148
  toJSON: () => any;
238
149
  }
239
- declare const MergeResult_base: Schema.Union<[typeof MergeResultAdvance, typeof MergeResultRebase, typeof MergeResultReject]>;
240
- export declare class MergeResult extends MergeResult_base {
241
- }
242
- export declare const payloadFromMergeResult: (mergeResult: typeof MergeResultAdvance.Type | typeof MergeResultRebase.Type) => typeof PayloadUpstream.Type;
150
+ export declare const MergeResult: Schema.Union<readonly [typeof MergeResultAdvance, typeof MergeResultRebase, typeof MergeResultReject]>;
151
+ export declare const payloadFromMergeResult: (mergeResult: MergeResultAdvance | MergeResultRebase) => typeof PayloadUpstream.Type;
243
152
  export declare const merge: (args_0: {
244
153
  syncState: SyncState;
245
154
  payload: typeof Payload.Type;
246
- isClientEvent: (event: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
155
+ /**
156
+ * `LiveStoreEvent.Client.EncodedWithMeta` does not carry the event definition's
157
+ * `clientOnly` flag. The caller supplies this schema-aware predicate so `merge`
158
+ * can preserve the correct sequence-number shape when rebasing: client-only
159
+ * events advance the client component, synced events advance the global component.
160
+ */
161
+ isClientOnlyEvent: (event: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
162
+ /**
163
+ * Pending events are confirmed by comparing their logical encoded identity with
164
+ * upstream events. This is caller-supplied because comparing encoded args may
165
+ * require event-schema knowledge that the generic merge algorithm does not own.
166
+ * Implementations should ignore transport/runtime metadata.
167
+ */
247
168
  isEqualEvent: (a: LiveStoreEvent.Client.EncodedWithMeta, b: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
248
- /** This is used in the leader which should ignore client events when receiving an upstream-advance payload */
249
- ignoreClientEvents?: boolean;
169
+ /**
170
+ * This is used in the leader which should ignore client events when
171
+ * receiving an upstream-advance payload
172
+ */
173
+ ignoreClientOnlyEvents?: boolean;
250
174
  }) => Effect.Effect<MergeResultAdvance | MergeResultRebase | MergeResultReject, never, never>;
251
175
  /**
252
176
  * Gets the index relative to `existingEvents` where the divergence point is
253
177
  * by comparing each event in `existingEvents` to the corresponding event in `incomingEvents`
254
178
  */
255
- export declare const findDivergencePoint: ({ existingEvents, incomingEvents, isEqualEvent, isClientEvent, ignoreClientEvents, }: {
179
+ export declare const findDivergencePoint: ({ existingEvents, incomingEvents, isEqualEvent, isClientOnlyEvent, ignoreClientOnlyEvents, }: {
256
180
  existingEvents: ReadonlyArray<LiveStoreEvent.Client.EncodedWithMeta>;
257
181
  incomingEvents: ReadonlyArray<LiveStoreEvent.Client.EncodedWithMeta>;
258
182
  isEqualEvent: (a: LiveStoreEvent.Client.EncodedWithMeta, b: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
259
- isClientEvent: (event: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
260
- ignoreClientEvents: boolean;
183
+ isClientOnlyEvent: (event: LiveStoreEvent.Client.EncodedWithMeta) => boolean;
184
+ ignoreClientOnlyEvents: boolean;
261
185
  }) => number;
262
186
  export {};
263
187
  //# sourceMappingURL=syncstate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"syncstate.d.ts","sourceRoot":"","sources":["../../src/sync/syncstate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAwB,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAE9E,OAAO,KAAK,mBAAmB,MAAM,sCAAsC,CAAA;AAC3E,OAAO,KAAK,cAAc,MAAM,iCAAiC,CAAA;;;IAyC/D,kFAAkF;;;;;;;;IAElF,qEAAqE;;;;;;;;;;IAFrE,kFAAkF;;;;;;;;IAElF,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;AAzCvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,SAAU,SAAQ,cAM7B;IACA,MAAM,QAAO,GAAG,CAId;CACH;;IAMC,0CAA0C;;IAE1C,gGAAgG;;;AANlG;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,0BAKzC;CAAG;;;;AAEL,qBAAa,sBAAuB,SAAQ,2BAE1C;CAAG;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;;AAEL,qBAAa,OAAQ,SAAQ,YAA6E;CAAG;;AAE7G,qBAAa,eAAgB,SAAQ,oBAA2D;CAAG;;;;;;;;;;;;;;;;;;;;;;AAEnG,uCAAuC;AACvC,qBAAa,YAAa,SAAQ,iBAGhC;IACA,MAAM,QAAO,GAAG,CAqBf;CACF;;;;;IAMC,iEAAiE;;;;;;;IAAjE,iEAAiE;;;;;;;;;;;;;;AAJnE,qBAAa,kBAAmB,SAAQ,uBAOtC;IACA,MAAM,QAAO,GAAG,CAQf;CACF;;;;;IAMC,0CAA0C;;;;;;;IAA1C,0CAA0C;;;;;;;;;;;;;;AAJ5C,qBAAa,iBAAkB,SAAQ,sBAOrC;IACA,MAAM,QAAO,GAAG,CAQf;CACF;;;IAIC,mDAAmD;;;;;;;;;;;IAAnD,mDAAmD;;;;;;;;;;;;;;;;;;;;AAFrD,qBAAa,iBAAkB,SAAQ,sBAKrC;IACA,MAAM,QAAO,GAAG,CAMf;CACF;;AAED,qBAAa,WAAY,SAAQ,gBAIhC;CAAG;AAEJ,eAAO,MAAM,sBAAsB,GACjC,aAAa,OAAO,kBAAkB,CAAC,IAAI,GAAG,OAAO,iBAAiB,CAAC,IAAI,KAC1E,OAAO,eAAe,CAAC,IAYvB,CAAA;AASH,eAAO,MAAM,KAAK;eAOL,SAAS;aACX,OAAO,OAAO,CAAC,IAAI;mBACb,CAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO;kBAC1D,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO;IAC7G,8GAA8G;yBACzF,OAAO;6FA8N1B,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,sFAMjC;IACD,cAAc,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACpE,cAAc,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACpE,YAAY,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAA;IAC7G,aAAa,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAA;IACxE,kBAAkB,EAAE,OAAO,CAAA;CAC5B,KAAG,MAyBH,CAAA"}
1
+ {"version":3,"file":"syncstate.d.ts","sourceRoot":"","sources":["../../src/sync/syncstate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAwB,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAE9E,OAAO,KAAK,mBAAmB,MAAM,sCAAsC,CAAA;AAC3E,OAAO,KAAK,cAAc,MAAM,iCAAiC,CAAA;;;IAyC/D,kFAAkF;;;;;;;;IAElF,qEAAqE;;;;;;;;;AAzCvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,SAAU,SAAQ,cAM7B;IACA,MAAM,QAAO,GAAG,CAId;CACH;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB;IAChC,0CAA0C;;IAE1C,gGAAgG;;EAEhG,CAAA;AAEF,eAAO,MAAM,sBAAsB;;EAEjC,CAAA;AAEF,eAAO,MAAM,gBAAgB;;EAE3B,CAAA;AAEF,eAAO,MAAM,OAAO;IAdlB,0CAA0C;;IAE1C,gGAAgG;;;;;;IAYI,CAAA;AAEtG,eAAO,MAAM,eAAe;IAhB1B,0CAA0C;;IAE1C,gGAAgG;;;;IAcN,CAAA;;;QAhB1F,0CAA0C;;QAE1C,gGAAgG;;;;;;;;;AAgBlG,uCAAuC;AACvC,qBAAa,YAAa,SAAQ,iBAGhC;IACA,MAAM,QAAO,GAAG,CAqBf;CACF;;;;;IAMC,iEAAiE;;;;AAJnE,qBAAa,kBAAmB,SAAQ,uBAOtC;IACA,MAAM,QAAO,GAAG,CAQf;CACF;;;;;IAMC,0CAA0C;;;;AAJ5C,qBAAa,iBAAkB,SAAQ,sBAOrC;IACA,MAAM,QAAO,GAAG,CAQf;CACF;;;IAIC,mDAAmD;;;;;;;;;;AAFrD,qBAAa,iBAAkB,SAAQ,sBAKrC;IACA,MAAM,QAAO,GAAG,CAMf;CACF;AAED,eAAO,MAAM,WAAW,wGAA2E,CAAA;AAEnG,eAAO,MAAM,sBAAsB,gBACpB,kBAAkB,GAAG,iBAAiB,KAClD,OAAO,eAAe,CAAC,IAYvB,CAAA;AASH,eAAO,MAAM,KAAK;eAOL,SAAS;aACX,OAAO,OAAO,CAAC,IAAI;IAC5B;;;;;OAKG;uBACgB,CAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO;IAC5E;;;;;OAKG;kBACW,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO;IAC7G;;;OAGG;6BACsB,OAAO;6FAgOhC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,iGAM7B;IACD,cAAc,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACpE,cAAc,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAA;IACpE,YAAY,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAA;IAC7G,iBAAiB,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAA;IAC5E,sBAAsB,EAAE,OAAO,CAAA;CAChC,KAAG,MAyBH,CAAA"}