@livestore/common 0.4.0 → 0.5.0-dev.0

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 (421) 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 +1 -1
  17. package/dist/__tests__/fixture.d.ts.map +1 -1
  18. package/dist/__tests__/fixture.js +3 -3
  19. package/dist/__tests__/fixture.js.map +1 -1
  20. package/dist/adapter-types.d.ts +29 -57
  21. package/dist/adapter-types.d.ts.map +1 -1
  22. package/dist/adapter-types.js +20 -37
  23. package/dist/adapter-types.js.map +1 -1
  24. package/dist/debug-info.d.ts +56 -56
  25. package/dist/debug-info.d.ts.map +1 -1
  26. package/dist/debug-info.js +28 -41
  27. package/dist/debug-info.js.map +1 -1
  28. package/dist/defs.d.ts +9 -9
  29. package/dist/defs.js +2 -2
  30. package/dist/devtools/devtools-compatibility.test.js +1 -0
  31. package/dist/devtools/devtools-compatibility.test.js.map +1 -1
  32. package/dist/devtools/devtools-messages-client-session.d.ts +520 -332
  33. package/dist/devtools/devtools-messages-client-session.d.ts.map +1 -1
  34. package/dist/devtools/devtools-messages-client-session.js +76 -74
  35. package/dist/devtools/devtools-messages-client-session.js.map +1 -1
  36. package/dist/devtools/devtools-messages-common.d.ts +27 -27
  37. package/dist/devtools/devtools-messages-common.d.ts.map +1 -1
  38. package/dist/devtools/devtools-messages-common.js +5 -5
  39. package/dist/devtools/devtools-messages-common.js.map +1 -1
  40. package/dist/devtools/devtools-messages-leader.d.ts +405 -343
  41. package/dist/devtools/devtools-messages-leader.d.ts.map +1 -1
  42. package/dist/devtools/devtools-messages-leader.js +101 -89
  43. package/dist/devtools/devtools-messages-leader.js.map +1 -1
  44. package/dist/devtools/devtools-sessioninfo.d.ts +18 -19
  45. package/dist/devtools/devtools-sessioninfo.d.ts.map +1 -1
  46. package/dist/devtools/devtools-sessioninfo.js +8 -5
  47. package/dist/devtools/devtools-sessioninfo.js.map +1 -1
  48. package/dist/devtools/mod.d.ts +4 -5
  49. package/dist/devtools/mod.d.ts.map +1 -1
  50. package/dist/devtools/mod.js +9 -5
  51. package/dist/devtools/mod.js.map +1 -1
  52. package/dist/errors.d.ts +45 -69
  53. package/dist/errors.d.ts.map +1 -1
  54. package/dist/errors.js +18 -16
  55. package/dist/errors.js.map +1 -1
  56. package/dist/index.d.ts +4 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +4 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/leader-thread/LeaderSyncProcessor.d.ts +66 -18
  61. package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -1
  62. package/dist/leader-thread/LeaderSyncProcessor.js +519 -461
  63. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
  64. package/dist/leader-thread/RejectedPushError.d.ts +67 -36
  65. package/dist/leader-thread/RejectedPushError.d.ts.map +1 -1
  66. package/dist/leader-thread/RejectedPushError.js +24 -5
  67. package/dist/leader-thread/RejectedPushError.js.map +1 -1
  68. package/dist/leader-thread/connection.d.ts +1 -0
  69. package/dist/leader-thread/connection.d.ts.map +1 -1
  70. package/dist/leader-thread/connection.js +9 -8
  71. package/dist/leader-thread/connection.js.map +1 -1
  72. package/dist/leader-thread/eventlog.d.ts +4 -4
  73. package/dist/leader-thread/eventlog.d.ts.map +1 -1
  74. package/dist/leader-thread/eventlog.js +6 -6
  75. package/dist/leader-thread/eventlog.js.map +1 -1
  76. package/dist/leader-thread/leader-worker-devtools.d.ts +1 -1
  77. package/dist/leader-thread/leader-worker-devtools.d.ts.map +1 -1
  78. package/dist/leader-thread/leader-worker-devtools.js +33 -17
  79. package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
  80. package/dist/leader-thread/make-leader-thread-layer.d.ts +9 -5
  81. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  82. package/dist/leader-thread/make-leader-thread-layer.js +25 -35
  83. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  84. package/dist/leader-thread/make-leader-thread-layer.test.js +7 -7
  85. package/dist/leader-thread/make-leader-thread-layer.test.js.map +1 -1
  86. package/dist/leader-thread/materialize-event.d.ts +2 -1
  87. package/dist/leader-thread/materialize-event.d.ts.map +1 -1
  88. package/dist/leader-thread/materialize-event.js +4 -0
  89. package/dist/leader-thread/materialize-event.js.map +1 -1
  90. package/dist/leader-thread/recreate-db.d.ts.map +1 -1
  91. package/dist/leader-thread/recreate-db.js +18 -39
  92. package/dist/leader-thread/recreate-db.js.map +1 -1
  93. package/dist/leader-thread/shutdown-channel.d.ts +2 -6
  94. package/dist/leader-thread/shutdown-channel.d.ts.map +1 -1
  95. package/dist/leader-thread/shutdown-channel.js +2 -3
  96. package/dist/leader-thread/shutdown-channel.js.map +1 -1
  97. package/dist/leader-thread/stream-events.d.ts +4 -7
  98. package/dist/leader-thread/stream-events.d.ts.map +1 -1
  99. package/dist/leader-thread/stream-events.js +13 -16
  100. package/dist/leader-thread/stream-events.js.map +1 -1
  101. package/dist/leader-thread/types.d.ts +32 -69
  102. package/dist/leader-thread/types.d.ts.map +1 -1
  103. package/dist/leader-thread/types.js +5 -5
  104. package/dist/leader-thread/types.js.map +1 -1
  105. package/dist/logging.d.ts +5 -30
  106. package/dist/logging.d.ts.map +1 -1
  107. package/dist/logging.js +1 -32
  108. package/dist/logging.js.map +1 -1
  109. package/dist/make-client-session.d.ts +1 -2
  110. package/dist/make-client-session.d.ts.map +1 -1
  111. package/dist/make-client-session.js +3 -3
  112. package/dist/make-client-session.js.map +1 -1
  113. package/dist/materializer-helper.d.ts +0 -1
  114. package/dist/materializer-helper.d.ts.map +1 -1
  115. package/dist/materializer-helper.js +7 -35
  116. package/dist/materializer-helper.js.map +1 -1
  117. package/dist/otel.d.ts +2 -3
  118. package/dist/otel.d.ts.map +1 -1
  119. package/dist/otel.js +2 -7
  120. package/dist/otel.js.map +1 -1
  121. package/dist/rematerialize-from-eventlog.d.ts.map +1 -1
  122. package/dist/rematerialize-from-eventlog.js +28 -26
  123. package/dist/rematerialize-from-eventlog.js.map +1 -1
  124. package/dist/schema/EventDef/define.d.ts +4 -4
  125. package/dist/schema/EventDef/define.d.ts.map +1 -1
  126. package/dist/schema/EventDef/define.js +5 -5
  127. package/dist/schema/EventDef/define.js.map +1 -1
  128. package/dist/schema/EventDef/define.test.d.ts +2 -0
  129. package/dist/schema/EventDef/define.test.d.ts.map +1 -0
  130. package/dist/schema/EventDef/define.test.js +23 -0
  131. package/dist/schema/EventDef/define.test.js.map +1 -0
  132. package/dist/schema/EventDef/deprecated.d.ts +8 -13
  133. package/dist/schema/EventDef/deprecated.d.ts.map +1 -1
  134. package/dist/schema/EventDef/deprecated.js +12 -13
  135. package/dist/schema/EventDef/deprecated.js.map +1 -1
  136. package/dist/schema/EventDef/deprecated.test.js +1 -1
  137. package/dist/schema/EventDef/deprecated.test.js.map +1 -1
  138. package/dist/schema/EventDef/event-def.d.ts +1 -1
  139. package/dist/schema/EventDef/event-def.d.ts.map +1 -1
  140. package/dist/schema/EventSequenceNumber/client.d.ts +12 -12
  141. package/dist/schema/EventSequenceNumber/client.d.ts.map +1 -1
  142. package/dist/schema/EventSequenceNumber/client.js +8 -9
  143. package/dist/schema/EventSequenceNumber/client.js.map +1 -1
  144. package/dist/schema/EventSequenceNumber/global.d.ts +2 -2
  145. package/dist/schema/EventSequenceNumber/global.d.ts.map +1 -1
  146. package/dist/schema/EventSequenceNumber/global.js +1 -1
  147. package/dist/schema/EventSequenceNumber/global.js.map +1 -1
  148. package/dist/schema/EventSequenceNumber.test.js +5 -5
  149. package/dist/schema/EventSequenceNumber.test.js.map +1 -1
  150. package/dist/schema/LiveStoreEvent/client.d.ts +50 -179
  151. package/dist/schema/LiveStoreEvent/client.d.ts.map +1 -1
  152. package/dist/schema/LiveStoreEvent/client.js +32 -29
  153. package/dist/schema/LiveStoreEvent/client.js.map +1 -1
  154. package/dist/schema/LiveStoreEvent/client.test.js +11 -2
  155. package/dist/schema/LiveStoreEvent/client.test.js.map +1 -1
  156. package/dist/schema/LiveStoreEvent/for-event-def.d.ts +7 -7
  157. package/dist/schema/LiveStoreEvent/for-event-def.d.ts.map +1 -1
  158. package/dist/schema/LiveStoreEvent/global.d.ts +6 -6
  159. package/dist/schema/LiveStoreEvent/global.d.ts.map +1 -1
  160. package/dist/schema/LiveStoreEvent/global.js +1 -1
  161. package/dist/schema/LiveStoreEvent/global.js.map +1 -1
  162. package/dist/schema/LiveStoreEvent/input.d.ts +5 -5
  163. package/dist/schema/LiveStoreEvent/input.d.ts.map +1 -1
  164. package/dist/schema/LiveStoreEvent/input.js +3 -3
  165. package/dist/schema/LiveStoreEvent/input.js.map +1 -1
  166. package/dist/schema/mod.d.ts +1 -0
  167. package/dist/schema/mod.d.ts.map +1 -1
  168. package/dist/schema/mod.js +1 -0
  169. package/dist/schema/mod.js.map +1 -1
  170. package/dist/schema/schema.d.ts.map +1 -1
  171. package/dist/schema/schema.js +3 -2
  172. package/dist/schema/schema.js.map +1 -1
  173. package/dist/schema/state/sqlite/client-document-def.d.ts +12 -17
  174. package/dist/schema/state/sqlite/client-document-def.d.ts.map +1 -1
  175. package/dist/schema/state/sqlite/client-document-def.js +23 -20
  176. package/dist/schema/state/sqlite/client-document-def.js.map +1 -1
  177. package/dist/schema/state/sqlite/client-document-def.test.js +29 -8
  178. package/dist/schema/state/sqlite/client-document-def.test.js.map +1 -1
  179. package/dist/schema/state/sqlite/column-annotations.d.ts +13 -13
  180. package/dist/schema/state/sqlite/column-annotations.d.ts.map +1 -1
  181. package/dist/schema/state/sqlite/column-annotations.js +13 -15
  182. package/dist/schema/state/sqlite/column-annotations.js.map +1 -1
  183. package/dist/schema/state/sqlite/column-annotations.test.js +19 -43
  184. package/dist/schema/state/sqlite/column-annotations.test.js.map +1 -1
  185. package/dist/schema/state/sqlite/column-def.d.ts +1 -1
  186. package/dist/schema/state/sqlite/column-def.d.ts.map +1 -1
  187. package/dist/schema/state/sqlite/column-def.js +57 -31
  188. package/dist/schema/state/sqlite/column-def.js.map +1 -1
  189. package/dist/schema/state/sqlite/column-def.test.js +118 -72
  190. package/dist/schema/state/sqlite/column-def.test.js.map +1 -1
  191. package/dist/schema/state/sqlite/column-spec.js.map +1 -1
  192. package/dist/schema/state/sqlite/column-spec.test.js +2 -2
  193. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts +2 -2
  194. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts.map +1 -1
  195. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js +13 -4
  196. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js.map +1 -1
  197. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts +9 -9
  198. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts.map +1 -1
  199. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js +8 -13
  200. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js.map +1 -1
  201. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js +27 -16
  202. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js.map +1 -1
  203. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts +13 -11
  204. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts.map +1 -1
  205. package/dist/schema/state/sqlite/db-schema/dsl/mod.js +5 -3
  206. package/dist/schema/state/sqlite/db-schema/dsl/mod.js.map +1 -1
  207. package/dist/schema/state/sqlite/mod.d.ts +1 -3
  208. package/dist/schema/state/sqlite/mod.d.ts.map +1 -1
  209. package/dist/schema/state/sqlite/mod.js +1 -1
  210. package/dist/schema/state/sqlite/mod.js.map +1 -1
  211. package/dist/schema/state/sqlite/persistence.d.ts +11 -0
  212. package/dist/schema/state/sqlite/persistence.d.ts.map +1 -0
  213. package/dist/schema/state/sqlite/persistence.js +10 -0
  214. package/dist/schema/state/sqlite/persistence.js.map +1 -0
  215. package/dist/schema/state/sqlite/query-builder/api.d.ts +7 -7
  216. package/dist/schema/state/sqlite/query-builder/api.d.ts.map +1 -1
  217. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts.map +1 -1
  218. package/dist/schema/state/sqlite/query-builder/astToSql.js +27 -23
  219. package/dist/schema/state/sqlite/query-builder/astToSql.js.map +1 -1
  220. package/dist/schema/state/sqlite/query-builder/impl.d.ts +3 -1
  221. package/dist/schema/state/sqlite/query-builder/impl.d.ts.map +1 -1
  222. package/dist/schema/state/sqlite/query-builder/impl.js +16 -14
  223. package/dist/schema/state/sqlite/query-builder/impl.js.map +1 -1
  224. package/dist/schema/state/sqlite/query-builder/impl.test.js +362 -596
  225. package/dist/schema/state/sqlite/query-builder/impl.test.js.map +1 -1
  226. package/dist/schema/state/sqlite/schema-helpers.js +1 -1
  227. package/dist/schema/state/sqlite/schema-helpers.js.map +1 -1
  228. package/dist/schema/state/sqlite/system-tables/eventlog-tables.d.ts +102 -134
  229. package/dist/schema/state/sqlite/system-tables/eventlog-tables.d.ts.map +1 -1
  230. package/dist/schema/state/sqlite/system-tables/eventlog-tables.js +2 -2
  231. package/dist/schema/state/sqlite/system-tables/eventlog-tables.js.map +1 -1
  232. package/dist/schema/state/sqlite/system-tables/state-tables.d.ts +328 -106
  233. package/dist/schema/state/sqlite/system-tables/state-tables.d.ts.map +1 -1
  234. package/dist/schema/state/sqlite/system-tables/state-tables.js +33 -1
  235. package/dist/schema/state/sqlite/system-tables/state-tables.js.map +1 -1
  236. package/dist/schema/state/sqlite/table-def.d.ts +16 -19
  237. package/dist/schema/state/sqlite/table-def.d.ts.map +1 -1
  238. package/dist/schema/state/sqlite/table-def.js +53 -3
  239. package/dist/schema/state/sqlite/table-def.js.map +1 -1
  240. package/dist/schema/state/sqlite/table-def.test.js +153 -36
  241. package/dist/schema/state/sqlite/table-def.test.js.map +1 -1
  242. package/dist/schema/unknown-events.d.ts.map +1 -1
  243. package/dist/schema/unknown-events.js +2 -1
  244. package/dist/schema/unknown-events.js.map +1 -1
  245. package/dist/schema-management/__tests__/migrations-autoincrement-quoting.test.js +2 -2
  246. package/dist/session-id-symbol.d.ts +29 -0
  247. package/dist/session-id-symbol.d.ts.map +1 -0
  248. package/dist/session-id-symbol.js +44 -0
  249. package/dist/session-id-symbol.js.map +1 -0
  250. package/dist/sql-queries/sql-queries.d.ts.map +1 -1
  251. package/dist/sql-queries/sql-queries.js +8 -10
  252. package/dist/sql-queries/sql-queries.js.map +1 -1
  253. package/dist/sql-queries/types.d.ts +6 -7
  254. package/dist/sql-queries/types.d.ts.map +1 -1
  255. package/dist/sql-queries/types.js.map +1 -1
  256. package/dist/sqlite-db-helper.d.ts +21 -1
  257. package/dist/sqlite-db-helper.d.ts.map +1 -1
  258. package/dist/sqlite-db-helper.js +37 -2
  259. package/dist/sqlite-db-helper.js.map +1 -1
  260. package/dist/sqlite-types.d.ts +3 -6
  261. package/dist/sqlite-types.d.ts.map +1 -1
  262. package/dist/sqlite-types.js +3 -3
  263. package/dist/sqlite-types.js.map +1 -1
  264. package/dist/sync/ClientSessionSyncProcessor.d.ts +38 -16
  265. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
  266. package/dist/sync/ClientSessionSyncProcessor.js +196 -66
  267. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
  268. package/dist/sync/errors.d.ts +12 -18
  269. package/dist/sync/errors.d.ts.map +1 -1
  270. package/dist/sync/errors.js +2 -2
  271. package/dist/sync/errors.js.map +1 -1
  272. package/dist/sync/mock-sync-backend.d.ts +2 -3
  273. package/dist/sync/mock-sync-backend.d.ts.map +1 -1
  274. package/dist/sync/mock-sync-backend.js +54 -33
  275. package/dist/sync/mock-sync-backend.js.map +1 -1
  276. package/dist/sync/mock-sync-backend.test.d.ts +2 -0
  277. package/dist/sync/mock-sync-backend.test.d.ts.map +1 -0
  278. package/dist/sync/mock-sync-backend.test.js +49 -0
  279. package/dist/sync/mock-sync-backend.test.js.map +1 -0
  280. package/dist/sync/next/history-dag-common.d.ts +4 -0
  281. package/dist/sync/next/history-dag-common.d.ts.map +1 -1
  282. package/dist/sync/next/history-dag-common.js +52 -31
  283. package/dist/sync/next/history-dag-common.js.map +1 -1
  284. package/dist/sync/next/history-dag.d.ts.map +1 -1
  285. package/dist/sync/next/history-dag.js +2 -1
  286. package/dist/sync/next/history-dag.js.map +1 -1
  287. package/dist/sync/next/test/compact-events.calculator.test.js +2 -2
  288. package/dist/sync/next/test/event-fixtures.d.ts +7 -7
  289. package/dist/sync/next/test/event-fixtures.js +1 -1
  290. package/dist/sync/next/test/event-fixtures.js.map +1 -1
  291. package/dist/sync/next/test/history-dag-common.test.d.ts +2 -0
  292. package/dist/sync/next/test/history-dag-common.test.d.ts.map +1 -0
  293. package/dist/sync/next/test/history-dag-common.test.js +73 -0
  294. package/dist/sync/next/test/history-dag-common.test.js.map +1 -0
  295. package/dist/sync/sync-backend-kv.d.ts.map +1 -1
  296. package/dist/sync/sync-backend-kv.js +4 -2
  297. package/dist/sync/sync-backend-kv.js.map +1 -1
  298. package/dist/sync/sync-backend.d.ts +15 -15
  299. package/dist/sync/sync-backend.d.ts.map +1 -1
  300. package/dist/sync/sync-backend.js +9 -5
  301. package/dist/sync/sync-backend.js.map +1 -1
  302. package/dist/sync/sync.d.ts +1 -1
  303. package/dist/sync/sync.d.ts.map +1 -1
  304. package/dist/sync/syncstate.d.ts +97 -173
  305. package/dist/sync/syncstate.d.ts.map +1 -1
  306. package/dist/sync/syncstate.js +34 -37
  307. package/dist/sync/syncstate.js.map +1 -1
  308. package/dist/sync/syncstate.test.js +100 -61
  309. package/dist/sync/syncstate.test.js.map +1 -1
  310. package/dist/sync/transport-chunking.d.ts +15 -16
  311. package/dist/sync/transport-chunking.d.ts.map +1 -1
  312. package/dist/sync/transport-chunking.js +23 -32
  313. package/dist/sync/transport-chunking.js.map +1 -1
  314. package/dist/util.d.ts +11 -4
  315. package/dist/util.d.ts.map +1 -1
  316. package/dist/util.js +19 -2
  317. package/dist/util.js.map +1 -1
  318. package/dist/version.d.ts.map +1 -1
  319. package/dist/version.js.map +1 -1
  320. package/package.json +19 -37
  321. package/src/ClientSessionLeaderThreadProxy.ts +1 -1
  322. package/src/MaterializationJournal.ts +184 -0
  323. package/src/StateHead.ts +80 -0
  324. package/src/WorkerTransportError.ts +4 -4
  325. package/src/__tests__/fixture.ts +3 -3
  326. package/src/adapter-types.ts +24 -61
  327. package/src/debug-info.ts +50 -70
  328. package/src/defs.ts +2 -2
  329. package/src/devtools/devtools-compatibility.test.ts +1 -0
  330. package/src/devtools/devtools-messages-client-session.ts +56 -65
  331. package/src/devtools/devtools-messages-common.ts +12 -11
  332. package/src/devtools/devtools-messages-leader.ts +71 -69
  333. package/src/devtools/devtools-sessioninfo.ts +13 -11
  334. package/src/devtools/mod.ts +4 -5
  335. package/src/errors.ts +46 -34
  336. package/src/index.ts +8 -1
  337. package/src/leader-thread/LeaderSyncProcessor.ts +794 -691
  338. package/src/leader-thread/RejectedPushError.ts +40 -27
  339. package/src/leader-thread/connection.ts +12 -8
  340. package/src/leader-thread/eventlog.ts +7 -7
  341. package/src/leader-thread/leader-worker-devtools.ts +37 -19
  342. package/src/leader-thread/make-leader-thread-layer.test.ts +7 -7
  343. package/src/leader-thread/make-leader-thread-layer.ts +56 -53
  344. package/src/leader-thread/materialize-event.ts +13 -8
  345. package/src/leader-thread/recreate-db.ts +24 -59
  346. package/src/leader-thread/shutdown-channel.ts +3 -14
  347. package/src/leader-thread/stream-events.ts +104 -101
  348. package/src/leader-thread/types.ts +24 -62
  349. package/src/logging.ts +5 -52
  350. package/src/make-client-session.ts +6 -6
  351. package/src/materializer-helper.ts +8 -37
  352. package/src/otel.ts +5 -14
  353. package/src/rematerialize-from-eventlog.ts +97 -94
  354. package/src/schema/EventDef/define.test.ts +28 -0
  355. package/src/schema/EventDef/define.ts +20 -19
  356. package/src/schema/EventDef/deprecated.test.ts +1 -8
  357. package/src/schema/EventDef/deprecated.ts +17 -20
  358. package/src/schema/EventDef/event-def.ts +2 -4
  359. package/src/schema/EventSequenceNumber/client.ts +8 -9
  360. package/src/schema/EventSequenceNumber/global.ts +1 -1
  361. package/src/schema/EventSequenceNumber.test.ts +5 -5
  362. package/src/schema/LiveStoreEvent/client.test.ts +17 -4
  363. package/src/schema/LiveStoreEvent/client.ts +36 -35
  364. package/src/schema/LiveStoreEvent/for-event-def.ts +7 -7
  365. package/src/schema/LiveStoreEvent/global.ts +1 -1
  366. package/src/schema/LiveStoreEvent/input.ts +6 -6
  367. package/src/schema/mod.ts +1 -0
  368. package/src/schema/schema.ts +3 -2
  369. package/src/schema/state/sqlite/client-document-def.test.ts +32 -13
  370. package/src/schema/state/sqlite/client-document-def.ts +95 -80
  371. package/src/schema/state/sqlite/column-annotations.test.ts +26 -45
  372. package/src/schema/state/sqlite/column-annotations.ts +26 -30
  373. package/src/schema/state/sqlite/column-def.test.ts +132 -77
  374. package/src/schema/state/sqlite/column-def.ts +72 -37
  375. package/src/schema/state/sqlite/column-spec.test.ts +2 -2
  376. package/src/schema/state/sqlite/column-spec.ts +3 -2
  377. package/src/schema/state/sqlite/db-schema/ast/sqlite.ts +15 -5
  378. package/src/schema/state/sqlite/db-schema/dsl/__snapshots__/field-defs.test.ts.snap +123 -63
  379. package/src/schema/state/sqlite/db-schema/dsl/field-defs.test.ts +35 -16
  380. package/src/schema/state/sqlite/db-schema/dsl/field-defs.ts +25 -31
  381. package/src/schema/state/sqlite/db-schema/dsl/mod.ts +35 -21
  382. package/src/schema/state/sqlite/mod.ts +2 -4
  383. package/src/schema/state/sqlite/persistence.ts +11 -0
  384. package/src/schema/state/sqlite/query-builder/api.ts +9 -9
  385. package/src/schema/state/sqlite/query-builder/astToSql.ts +31 -26
  386. package/src/schema/state/sqlite/query-builder/impl.test.ts +433 -669
  387. package/src/schema/state/sqlite/query-builder/impl.ts +19 -15
  388. package/src/schema/state/sqlite/schema-helpers.ts +1 -1
  389. package/src/schema/state/sqlite/system-tables/eventlog-tables.ts +2 -2
  390. package/src/schema/state/sqlite/system-tables/state-tables.ts +41 -1
  391. package/src/schema/state/sqlite/table-def.test.ts +204 -66
  392. package/src/schema/state/sqlite/table-def.ts +96 -45
  393. package/src/schema/unknown-events.ts +3 -2
  394. package/src/schema-management/__tests__/migrations-autoincrement-quoting.test.ts +2 -2
  395. package/src/session-id-symbol.ts +59 -0
  396. package/src/sql-queries/sql-queries.ts +8 -12
  397. package/src/sql-queries/types.ts +6 -7
  398. package/src/sqlite-db-helper.ts +64 -2
  399. package/src/sqlite-types.ts +5 -8
  400. package/src/sync/ClientSessionSyncProcessor.ts +303 -119
  401. package/src/sync/errors.ts +14 -12
  402. package/src/sync/mock-sync-backend.test.ts +78 -0
  403. package/src/sync/mock-sync-backend.ts +93 -47
  404. package/src/sync/next/history-dag-common.ts +60 -34
  405. package/src/sync/next/history-dag.ts +4 -1
  406. package/src/sync/next/test/compact-events.calculator.test.ts +2 -2
  407. package/src/sync/next/test/event-fixtures.ts +1 -1
  408. package/src/sync/next/test/history-dag-common.test.ts +87 -0
  409. package/src/sync/sync-backend-kv.ts +4 -2
  410. package/src/sync/sync-backend.ts +15 -15
  411. package/src/sync/sync.ts +1 -1
  412. package/src/sync/syncstate.test.ts +191 -140
  413. package/src/sync/syncstate.ts +63 -53
  414. package/src/sync/transport-chunking.ts +34 -39
  415. package/src/util.ts +18 -9
  416. package/src/version.ts +1 -2
  417. package/dist/sql-queries/misc.d.ts +0 -2
  418. package/dist/sql-queries/misc.d.ts.map +0 -1
  419. package/dist/sql-queries/misc.js +0 -2
  420. package/dist/sql-queries/misc.js.map +0 -1
  421. package/src/sql-queries/misc.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-types.js","sourceRoot":"","sources":["../src/adapter-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,MAAM,GAIP,MAAM,yBAAyB,CAAA;AAShC,OAAO,KAAK,8BAA8B,MAAM,qCAAqC,CAAA;AACrF,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AA6BjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM;CACrB,CAAC,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAA;AAGrG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;AAGnE,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CACpC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EACnD,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,EAClF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,EACpF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,EAChF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;AAChD;;;GAGG;AACH,MAAM,CAAC,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;IAChC,MAAM,EAAE,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC,CACH,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;AAItC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA"}
1
+ {"version":3,"file":"adapter-types.js","sourceRoot":"","sources":["../src/adapter-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,MAAM,GAIP,MAAM,yBAAyB,CAAA;AAShC,OAAO,KAAK,8BAA8B,MAAM,qCAAqC,CAAA;AACrF,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AA0BjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,KAAK,EAAE,MAAM,CAAC,MAAM;CACrB,CAAC,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAC,CAAA;AAGxG;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;AAGtE,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;IACrC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAClF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IACpF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAChF,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAChD;;;OAGG;IACH,MAAM,CAAC,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;QAChC,MAAM,EAAE,iBAAiB;QACzB,OAAO,EAAE,MAAM,CAAC,MAAM;KACvB,CAAC;CACH,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA"}
@@ -10,40 +10,19 @@ export type SlowQueryInfo = {
10
10
  startTimePerfNow: DOMHighResTimeStamp;
11
11
  };
12
12
  export declare const SlowQueryInfo: Schema.Struct<{
13
- queryStr: typeof Schema.String;
14
- bindValues: Schema.UndefinedOr<Schema.brand<Schema.Union<[Schema.Array$<Schema.Union<[typeof Schema.String, typeof Schema.Number, Schema.Schema<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>, never>, typeof Schema.Null]>>, Schema.Record$<typeof Schema.String, Schema.Union<[typeof Schema.String, typeof Schema.Number, Schema.Schema<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>, never>, typeof Schema.Null]>>]>, "PreparedBindValues">>;
15
- durationMs: typeof Schema.Number;
16
- rowsCount: Schema.UndefinedOr<typeof Schema.Number>;
17
- queriedTables: Schema.ReadonlySet$<typeof Schema.String>;
18
- startTimePerfNow: typeof Schema.Number;
13
+ readonly queryStr: Schema.String;
14
+ readonly bindValues: Schema.UndefinedOr<Schema.brand<Schema.Union<readonly [Schema.$Array<Schema.Union<readonly [Schema.String, Schema.Number, Schema.Codec<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>, never, never>, Schema.Null]>>, Schema.$Record<Schema.String, Schema.Union<readonly [Schema.String, Schema.Number, Schema.Codec<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>, never, never>, Schema.Null]>>]>, "PreparedBindValues">>;
15
+ readonly durationMs: Schema.Finite;
16
+ readonly rowsCount: Schema.UndefinedOr<Schema.Finite>;
17
+ readonly queriedTables: Schema.$ReadonlySet<Schema.String>;
18
+ readonly startTimePerfNow: Schema.Finite;
19
19
  }>;
20
- export declare const BoundArraySchema: <ItemDecoded, ItemEncoded>(elSchema: Schema.Schema<ItemDecoded, ItemEncoded>) => Schema.transform<Schema.Struct<{
21
- size: typeof Schema.Number;
22
- items: Schema.Array$<Schema.Schema<ItemDecoded, ItemEncoded, never>>;
23
- }>, Schema.Schema<BoundArray<ItemDecoded>, BoundArray<ItemDecoded>, never>>;
20
+ export declare const BoundArraySchema: <ItemDecoded, ItemEncoded>(elSchema: Schema.Codec<ItemDecoded, ItemEncoded>) => Schema.decodeTo<Schema.Codec<BoundArray<ItemDecoded>, BoundArray<ItemDecoded>, never, never>, Schema.Struct<{
21
+ readonly size: Schema.Finite;
22
+ readonly items: Schema.$Array<Schema.Codec<ItemDecoded, ItemEncoded, never, never>>;
23
+ }>, never, never>;
24
24
  export declare const DebugInfo: Schema.Struct<{
25
- slowQueries: Schema.transform<Schema.Struct<{
26
- size: typeof Schema.Number;
27
- items: Schema.Array$<Schema.Schema<{
28
- readonly queryStr: string;
29
- readonly bindValues: ((readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
30
- readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
31
- }) & import("effect/Brand").Brand<"PreparedBindValues">) | undefined;
32
- readonly durationMs: number;
33
- readonly rowsCount: number | undefined;
34
- readonly queriedTables: ReadonlySet<string>;
35
- readonly startTimePerfNow: number;
36
- }, {
37
- readonly queryStr: string;
38
- readonly bindValues: readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
39
- readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
40
- } | undefined;
41
- readonly durationMs: number;
42
- readonly rowsCount: number | undefined;
43
- readonly queriedTables: readonly string[];
44
- readonly startTimePerfNow: number;
45
- }, never>>;
46
- }>, Schema.Schema<BoundArray<{
25
+ readonly slowQueries: Schema.decodeTo<Schema.Codec<BoundArray<{
47
26
  readonly queryStr: string;
48
27
  readonly bindValues: ((readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
49
28
  readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
@@ -61,19 +40,9 @@ export declare const DebugInfo: Schema.Struct<{
61
40
  readonly rowsCount: number | undefined;
62
41
  readonly queriedTables: ReadonlySet<string>;
63
42
  readonly startTimePerfNow: number;
64
- }>, never>>;
65
- queryFrameDuration: typeof Schema.Number;
66
- queryFrameCount: typeof Schema.Number;
67
- events: Schema.transform<Schema.Struct<{
68
- size: typeof Schema.Number;
69
- items: Schema.Array$<Schema.Schema<readonly [string, any], readonly [string, any], never>>;
70
- }>, Schema.Schema<BoundArray<readonly [string, any]>, BoundArray<readonly [string, any]>, never>>;
71
- }>;
72
- export type DebugInfo = typeof DebugInfo.Type;
73
- export declare const MutableDebugInfo: Schema.mutable<Schema.Struct<{
74
- slowQueries: Schema.transform<Schema.Struct<{
75
- size: typeof Schema.Number;
76
- items: Schema.Array$<Schema.Schema<{
43
+ }>, never, never>, Schema.Struct<{
44
+ readonly size: Schema.Finite;
45
+ readonly items: Schema.$Array<Schema.Codec<{
77
46
  readonly queryStr: string;
78
47
  readonly bindValues: ((readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
79
48
  readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
@@ -89,10 +58,20 @@ export declare const MutableDebugInfo: Schema.mutable<Schema.Struct<{
89
58
  } | undefined;
90
59
  readonly durationMs: number;
91
60
  readonly rowsCount: number | undefined;
92
- readonly queriedTables: readonly string[];
61
+ readonly queriedTables: ReadonlySet<string>;
93
62
  readonly startTimePerfNow: number;
94
- }, never>>;
95
- }>, Schema.Schema<BoundArray<{
63
+ }, never, never>>;
64
+ }>, never, never>;
65
+ readonly queryFrameDuration: Schema.Finite;
66
+ readonly queryFrameCount: Schema.Finite;
67
+ readonly events: Schema.decodeTo<Schema.Codec<BoundArray<readonly [string, any]>, BoundArray<readonly [string, any]>, never, never>, Schema.Struct<{
68
+ readonly size: Schema.Finite;
69
+ readonly items: Schema.$Array<Schema.Codec<readonly [string, any], readonly [string, any], never, never>>;
70
+ }>, never, never>;
71
+ }>;
72
+ export type DebugInfo = typeof DebugInfo.Type;
73
+ export declare const MutableDebugInfo: Schema.Struct<{
74
+ readonly slowQueries: Schema.mutableKey<Schema.decodeTo<Schema.Codec<BoundArray<{
96
75
  readonly queryStr: string;
97
76
  readonly bindValues: ((readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
98
77
  readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
@@ -110,13 +89,34 @@ export declare const MutableDebugInfo: Schema.mutable<Schema.Struct<{
110
89
  readonly rowsCount: number | undefined;
111
90
  readonly queriedTables: ReadonlySet<string>;
112
91
  readonly startTimePerfNow: number;
113
- }>, never>>;
114
- queryFrameDuration: typeof Schema.Number;
115
- queryFrameCount: typeof Schema.Number;
116
- events: Schema.transform<Schema.Struct<{
117
- size: typeof Schema.Number;
118
- items: Schema.Array$<Schema.Schema<readonly [string, any], readonly [string, any], never>>;
119
- }>, Schema.Schema<BoundArray<readonly [string, any]>, BoundArray<readonly [string, any]>, never>>;
120
- }>>;
92
+ }>, never, never>, Schema.Struct<{
93
+ readonly size: Schema.Finite;
94
+ readonly items: Schema.$Array<Schema.Codec<{
95
+ readonly queryStr: string;
96
+ readonly bindValues: ((readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
97
+ readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
98
+ }) & import("effect/Brand").Brand<"PreparedBindValues">) | undefined;
99
+ readonly durationMs: number;
100
+ readonly rowsCount: number | undefined;
101
+ readonly queriedTables: ReadonlySet<string>;
102
+ readonly startTimePerfNow: number;
103
+ }, {
104
+ readonly queryStr: string;
105
+ readonly bindValues: readonly (string | number | Uint8Array<ArrayBuffer> | null)[] | {
106
+ readonly [x: string]: string | number | Uint8Array<ArrayBuffer> | null;
107
+ } | undefined;
108
+ readonly durationMs: number;
109
+ readonly rowsCount: number | undefined;
110
+ readonly queriedTables: ReadonlySet<string>;
111
+ readonly startTimePerfNow: number;
112
+ }, never, never>>;
113
+ }>, never, never>>;
114
+ readonly queryFrameDuration: Schema.mutableKey<Schema.Finite>;
115
+ readonly queryFrameCount: Schema.mutableKey<Schema.Finite>;
116
+ readonly events: Schema.mutableKey<Schema.decodeTo<Schema.Codec<BoundArray<readonly [string, any]>, BoundArray<readonly [string, any]>, never, never>, Schema.Struct<{
117
+ readonly size: Schema.Finite;
118
+ readonly items: Schema.$Array<Schema.Codec<readonly [string, any], readonly [string, any], never, never>>;
119
+ }>, never, never>>;
120
+ }>;
121
121
  export type MutableDebugInfo = typeof MutableDebugInfo.Type;
122
122
  //# sourceMappingURL=debug-info.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-info.d.ts","sourceRoot":"","sources":["../src/debug-info.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,gBAAgB,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;;EAOxB,CAAA;AA8DF,eAAO,MAAM,gBAAgB,GAAI,WAAW,EAAE,WAAW,EAAE,UAAU,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC;;;2EAWzG,CAAA;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpB,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA4B,CAAA;AACzD,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAA"}
1
+ {"version":3,"file":"debug-info.d.ts","sourceRoot":"","sources":["../src/debug-info.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAwB,MAAM,yBAAyB,CAAA;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAE9C,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,gBAAgB,EAAE,mBAAmB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;;EAOxB,CAAA;AA4CF,eAAO,MAAM,gBAAgB,GAAI,WAAW,EAAE,WAAW,EAAE,UAAU,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC;;;iBASxG,CAAA;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpB,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAqD,CAAA;AAClF,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAA"}
@@ -1,42 +1,29 @@
1
1
  /// <reference lib="dom" />
2
- import { ParseResult, Schema } from '@livestore/utils/effect';
2
+ import { Schema, SchemaGetter, Struct } from '@livestore/utils/effect';
3
3
  import { BoundArray } from "./bounded-collections.js";
4
4
  import { PreparedBindValues } from "./util.js";
5
5
  export const SlowQueryInfo = Schema.Struct({
6
6
  queryStr: Schema.String,
7
7
  bindValues: Schema.UndefinedOr(PreparedBindValues),
8
- durationMs: Schema.Number,
9
- rowsCount: Schema.UndefinedOr(Schema.Number),
8
+ durationMs: Schema.Finite,
9
+ rowsCount: Schema.UndefinedOr(Schema.Finite),
10
10
  queriedTables: Schema.ReadonlySet(Schema.String),
11
- startTimePerfNow: Schema.Number,
11
+ startTimePerfNow: Schema.Finite,
12
12
  });
13
- const getSizeLimit = (value) => typeof value.sizeLimit === 'number'
14
- ? value.sizeLimit
15
- : Number.POSITIVE_INFINITY;
16
- const isBoundArrayLike = (value) => value instanceof BoundArray ||
17
- (value !== null && typeof value === 'object' && typeof value.sizeLimit === 'number');
18
- const BoundArraySchemaFromSelf = (item) => Schema.declare([item], {
19
- decode: (item) => (input, parseOptions, ast) => {
20
- if (isBoundArrayLike(input) === true) {
21
- const elements = ParseResult.decodeUnknown(Schema.Array(item))([...input], parseOptions);
22
- return ParseResult.map(elements, (as) => BoundArray.make(getSizeLimit(input), as));
23
- }
24
- return ParseResult.fail(new ParseResult.Type(ast, input));
13
+ const isBoundArrayLike = (value) => value instanceof BoundArray;
14
+ const BoundArraySchemaFromSelf = (item) => Schema.declare(isBoundArrayLike, {
15
+ identifier: 'BoundArray',
16
+ expected: 'BoundArray',
17
+ description: 'Bounded array',
18
+ toFormatter: () => (_) => `BoundArray(${_.length})`,
19
+ toArbitrary: () => (fc) => {
20
+ const itemArbitrary = Schema.toArbitrary(item)(fc);
21
+ return fc
22
+ .integer({ min: 0, max: 100 })
23
+ .chain((sizeLimit) => fc.array(itemArbitrary, { maxLength: sizeLimit }).map((items) => BoundArray.make(sizeLimit, items)));
25
24
  },
26
- encode: (item) => (input, parseOptions, ast) => {
27
- if (isBoundArrayLike(input) === true) {
28
- const items = [...input];
29
- const elements = ParseResult.encodeUnknown(Schema.Array(item))(items, parseOptions);
30
- return ParseResult.map(elements, (is) => BoundArray.make(getSizeLimit(input), is));
31
- }
32
- return ParseResult.fail(new ParseResult.Type(ast, input));
33
- },
34
- }, {
35
- description: `BoundArray<${Schema.format(item)}>`,
36
- pretty: () => (_) => `BoundArray(${_.length})`,
37
- arbitrary: () => (fc) => fc.anything(),
38
- equivalence: () => {
39
- const elementEquivalence = Schema.equivalence(item);
25
+ toEquivalence: () => {
26
+ const elementEquivalence = Schema.toEquivalence(item);
40
27
  return (a, b) => {
41
28
  if (a === b) {
42
29
  return true;
@@ -44,7 +31,7 @@ const BoundArraySchemaFromSelf = (item) => Schema.declare([item], {
44
31
  if (isBoundArrayLike(a) === false || isBoundArrayLike(b) === false) {
45
32
  return false;
46
33
  }
47
- if (getSizeLimit(a) !== getSizeLimit(b) || a.length !== b.length) {
34
+ if (a.sizeLimit !== b.sizeLimit || a.length !== b.length) {
48
35
  return false;
49
36
  }
50
37
  const itemsA = [...a];
@@ -58,18 +45,18 @@ const BoundArraySchemaFromSelf = (item) => Schema.declare([item], {
58
45
  };
59
46
  },
60
47
  });
61
- export const BoundArraySchema = (elSchema) => Schema.transform(Schema.Struct({
62
- size: Schema.Number,
48
+ export const BoundArraySchema = (elSchema) => Schema.Struct({
49
+ size: Schema.Finite,
63
50
  items: Schema.Array(elSchema),
64
- }), BoundArraySchemaFromSelf(Schema.typeSchema(elSchema)), {
65
- encode: (_) => ({ size: _.sizeLimit, items: [..._] }),
66
- decode: (_) => BoundArray.make(_.size, _.items),
67
- });
51
+ }).pipe(Schema.decodeTo(BoundArraySchemaFromSelf(Schema.toType(elSchema)), {
52
+ decode: SchemaGetter.transform((_) => BoundArray.make(_.size, _.items)),
53
+ encode: SchemaGetter.transform((_) => ({ size: _.sizeLimit, items: [..._] })),
54
+ }));
68
55
  export const DebugInfo = Schema.Struct({
69
56
  slowQueries: BoundArraySchema(SlowQueryInfo),
70
- queryFrameDuration: Schema.Number,
71
- queryFrameCount: Schema.Number,
72
- events: BoundArraySchema(Schema.Tuple(Schema.String, Schema.Any)),
57
+ queryFrameDuration: Schema.Finite,
58
+ queryFrameCount: Schema.Finite,
59
+ events: BoundArraySchema(Schema.Tuple([Schema.String, Schema.Any])),
73
60
  });
74
- export const MutableDebugInfo = Schema.mutable(DebugInfo);
61
+ export const MutableDebugInfo = DebugInfo.mapFields(Struct.map(Schema.mutableKey));
75
62
  //# sourceMappingURL=debug-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-info.js","sourceRoot":"","sources":["../src/debug-info.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-info.js","sourceRoot":"","sources":["../src/debug-info.ts"],"names":[],"mappings":"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"}
package/dist/defs.d.ts CHANGED
@@ -1,17 +1,17 @@
1
1
  import { Schema } from '@livestore/utils/effect';
2
2
  export declare const MigrationsReportEntry: Schema.Struct<{
3
- tableName: typeof Schema.String;
4
- hashes: Schema.Struct<{
5
- expected: typeof Schema.Number;
6
- actual: Schema.optional<typeof Schema.Number>;
3
+ readonly tableName: Schema.String;
4
+ readonly hashes: Schema.Struct<{
5
+ readonly expected: Schema.Finite;
6
+ readonly actual: Schema.optional<Schema.Finite>;
7
7
  }>;
8
8
  }>;
9
9
  export declare const MigrationsReport: Schema.Struct<{
10
- migrations: Schema.Array$<Schema.Struct<{
11
- tableName: typeof Schema.String;
12
- hashes: Schema.Struct<{
13
- expected: typeof Schema.Number;
14
- actual: Schema.optional<typeof Schema.Number>;
10
+ readonly migrations: Schema.$Array<Schema.Struct<{
11
+ readonly tableName: Schema.String;
12
+ readonly hashes: Schema.Struct<{
13
+ readonly expected: Schema.Finite;
14
+ readonly actual: Schema.optional<Schema.Finite>;
15
15
  }>;
16
16
  }>>;
17
17
  }>;
package/dist/defs.js CHANGED
@@ -2,8 +2,8 @@ import { Schema } from '@livestore/utils/effect';
2
2
  export const MigrationsReportEntry = Schema.Struct({
3
3
  tableName: Schema.String,
4
4
  hashes: Schema.Struct({
5
- expected: Schema.Number,
6
- actual: Schema.optional(Schema.Number),
5
+ expected: Schema.Finite,
6
+ actual: Schema.optional(Schema.Finite),
7
7
  }),
8
8
  });
9
9
  export const MigrationsReport = Schema.Struct({
@@ -1,5 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { isDevtoolsProtocolVersionSupported, resolveDevtoolsProtocolVersion } from "../version.js";
3
+ /** Verifies: LS.SYS.DT-R02, LS.SYS.VER.PROTO-R01 */
3
4
  describe('DevTools protocol compatibility', () => {
4
5
  it('treats legacy pings without a protocol version as protocol 1', () => {
5
6
  expect(resolveDevtoolsProtocolVersion(undefined)).toBe(1);
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-compatibility.test.js","sourceRoot":"","sources":["../../src/devtools/devtools-compatibility.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,kCAAkC,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAA;AAElG,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACzD,MAAM,CAAC,kCAAkC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"devtools-compatibility.test.js","sourceRoot":"","sources":["../../src/devtools/devtools-compatibility.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,kCAAkC,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAA;AAElG,oDAAoD;AACpD,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACzD,MAAM,CAAC,kCAAkC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,kCAAkC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}