@livestore/common 0.3.0-dev.4 → 0.3.0-dev.41

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 (470) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/__tests__/fixture.d.ts +83 -221
  3. package/dist/__tests__/fixture.d.ts.map +1 -1
  4. package/dist/__tests__/fixture.js +33 -11
  5. package/dist/__tests__/fixture.js.map +1 -1
  6. package/dist/adapter-types.d.ts +132 -75
  7. package/dist/adapter-types.d.ts.map +1 -1
  8. package/dist/adapter-types.js +36 -7
  9. package/dist/adapter-types.js.map +1 -1
  10. package/dist/bounded-collections.d.ts.map +1 -1
  11. package/dist/debug-info.d.ts +1 -1
  12. package/dist/debug-info.d.ts.map +1 -1
  13. package/dist/debug-info.js +1 -0
  14. package/dist/debug-info.js.map +1 -1
  15. package/dist/devtools/devtools-messages-client-session.d.ts +390 -0
  16. package/dist/devtools/devtools-messages-client-session.d.ts.map +1 -0
  17. package/dist/devtools/devtools-messages-client-session.js +97 -0
  18. package/dist/devtools/devtools-messages-client-session.js.map +1 -0
  19. package/dist/devtools/devtools-messages-common.d.ts +68 -0
  20. package/dist/devtools/devtools-messages-common.d.ts.map +1 -0
  21. package/dist/devtools/devtools-messages-common.js +60 -0
  22. package/dist/devtools/devtools-messages-common.js.map +1 -0
  23. package/dist/devtools/devtools-messages-leader.d.ts +394 -0
  24. package/dist/devtools/devtools-messages-leader.d.ts.map +1 -0
  25. package/dist/devtools/devtools-messages-leader.js +147 -0
  26. package/dist/devtools/devtools-messages-leader.js.map +1 -0
  27. package/dist/devtools/devtools-messages.d.ts +3 -592
  28. package/dist/devtools/devtools-messages.d.ts.map +1 -1
  29. package/dist/devtools/devtools-messages.js +3 -171
  30. package/dist/devtools/devtools-messages.js.map +1 -1
  31. package/dist/devtools/devtools-sessioninfo.d.ts +32 -0
  32. package/dist/devtools/devtools-sessioninfo.d.ts.map +1 -0
  33. package/dist/devtools/devtools-sessioninfo.js +36 -0
  34. package/dist/devtools/devtools-sessioninfo.js.map +1 -0
  35. package/dist/devtools/mod.d.ts +55 -0
  36. package/dist/devtools/mod.d.ts.map +1 -0
  37. package/dist/devtools/mod.js +33 -0
  38. package/dist/devtools/mod.js.map +1 -0
  39. package/dist/index.d.ts +7 -13
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +7 -9
  42. package/dist/index.js.map +1 -1
  43. package/dist/leader-thread/LeaderSyncProcessor.d.ts +62 -0
  44. package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -0
  45. package/dist/leader-thread/LeaderSyncProcessor.js +593 -0
  46. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -0
  47. package/dist/leader-thread/connection.d.ts +34 -6
  48. package/dist/leader-thread/connection.d.ts.map +1 -1
  49. package/dist/leader-thread/connection.js +22 -7
  50. package/dist/leader-thread/connection.js.map +1 -1
  51. package/dist/leader-thread/eventlog.d.ts +27 -0
  52. package/dist/leader-thread/eventlog.d.ts.map +1 -0
  53. package/dist/leader-thread/eventlog.js +119 -0
  54. package/dist/leader-thread/eventlog.js.map +1 -0
  55. package/dist/leader-thread/leader-worker-devtools.d.ts +1 -1
  56. package/dist/leader-thread/leader-worker-devtools.d.ts.map +1 -1
  57. package/dist/leader-thread/leader-worker-devtools.js +165 -134
  58. package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
  59. package/dist/leader-thread/make-leader-thread-layer.d.ts +26 -12
  60. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  61. package/dist/leader-thread/make-leader-thread-layer.js +76 -48
  62. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  63. package/dist/leader-thread/materialize-event.d.ts +16 -0
  64. package/dist/leader-thread/materialize-event.d.ts.map +1 -0
  65. package/dist/leader-thread/materialize-event.js +105 -0
  66. package/dist/leader-thread/materialize-event.js.map +1 -0
  67. package/dist/leader-thread/mod.d.ts +1 -1
  68. package/dist/leader-thread/mod.d.ts.map +1 -1
  69. package/dist/leader-thread/mod.js +1 -1
  70. package/dist/leader-thread/mod.js.map +1 -1
  71. package/dist/leader-thread/recreate-db.d.ts +4 -2
  72. package/dist/leader-thread/recreate-db.d.ts.map +1 -1
  73. package/dist/leader-thread/recreate-db.js +33 -31
  74. package/dist/leader-thread/recreate-db.js.map +1 -1
  75. package/dist/leader-thread/shutdown-channel.d.ts +2 -5
  76. package/dist/leader-thread/shutdown-channel.d.ts.map +1 -1
  77. package/dist/leader-thread/shutdown-channel.js +2 -4
  78. package/dist/leader-thread/shutdown-channel.js.map +1 -1
  79. package/dist/leader-thread/types.d.ts +89 -40
  80. package/dist/leader-thread/types.d.ts.map +1 -1
  81. package/dist/leader-thread/types.js +1 -3
  82. package/dist/leader-thread/types.js.map +1 -1
  83. package/dist/make-client-session.d.ts +21 -0
  84. package/dist/make-client-session.d.ts.map +1 -0
  85. package/dist/make-client-session.js +51 -0
  86. package/dist/make-client-session.js.map +1 -0
  87. package/dist/materializer-helper.d.ts +23 -0
  88. package/dist/materializer-helper.d.ts.map +1 -0
  89. package/dist/materializer-helper.js +84 -0
  90. package/dist/materializer-helper.js.map +1 -0
  91. package/dist/otel.d.ts +2 -0
  92. package/dist/otel.d.ts.map +1 -1
  93. package/dist/otel.js +5 -0
  94. package/dist/otel.js.map +1 -1
  95. package/dist/rematerialize-from-eventlog.d.ts +14 -0
  96. package/dist/rematerialize-from-eventlog.d.ts.map +1 -0
  97. package/dist/rematerialize-from-eventlog.js +64 -0
  98. package/dist/rematerialize-from-eventlog.js.map +1 -0
  99. package/dist/schema/EventDef.d.ts +146 -0
  100. package/dist/schema/EventDef.d.ts.map +1 -0
  101. package/dist/schema/EventDef.js +58 -0
  102. package/dist/schema/EventDef.js.map +1 -0
  103. package/dist/schema/EventId.d.ts +35 -15
  104. package/dist/schema/EventId.d.ts.map +1 -1
  105. package/dist/schema/EventId.js +57 -11
  106. package/dist/schema/EventId.js.map +1 -1
  107. package/dist/schema/EventId.test.d.ts +2 -0
  108. package/dist/schema/EventId.test.d.ts.map +1 -0
  109. package/dist/schema/EventId.test.js +11 -0
  110. package/dist/schema/EventId.test.js.map +1 -0
  111. package/dist/schema/LiveStoreEvent.d.ts +255 -0
  112. package/dist/schema/LiveStoreEvent.d.ts.map +1 -0
  113. package/dist/schema/LiveStoreEvent.js +118 -0
  114. package/dist/schema/LiveStoreEvent.js.map +1 -0
  115. package/dist/schema/events.d.ts +2 -0
  116. package/dist/schema/events.d.ts.map +1 -0
  117. package/dist/schema/events.js +2 -0
  118. package/dist/schema/events.js.map +1 -0
  119. package/dist/schema/mod.d.ts +7 -5
  120. package/dist/schema/mod.d.ts.map +1 -1
  121. package/dist/schema/mod.js +7 -5
  122. package/dist/schema/mod.js.map +1 -1
  123. package/dist/schema/schema.d.ts +48 -30
  124. package/dist/schema/schema.d.ts.map +1 -1
  125. package/dist/schema/schema.js +36 -43
  126. package/dist/schema/schema.js.map +1 -1
  127. package/dist/schema/state/mod.d.ts +3 -0
  128. package/dist/schema/state/mod.d.ts.map +1 -0
  129. package/dist/schema/state/mod.js +3 -0
  130. package/dist/schema/state/mod.js.map +1 -0
  131. package/dist/schema/state/sqlite/client-document-def.d.ts +223 -0
  132. package/dist/schema/state/sqlite/client-document-def.d.ts.map +1 -0
  133. package/dist/schema/state/sqlite/client-document-def.js +170 -0
  134. package/dist/schema/state/sqlite/client-document-def.js.map +1 -0
  135. package/dist/schema/state/sqlite/client-document-def.test.d.ts +2 -0
  136. package/dist/schema/state/sqlite/client-document-def.test.d.ts.map +1 -0
  137. package/dist/schema/state/sqlite/client-document-def.test.js +201 -0
  138. package/dist/schema/state/sqlite/client-document-def.test.js.map +1 -0
  139. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts +69 -0
  140. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts.map +1 -0
  141. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js +71 -0
  142. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js.map +1 -0
  143. package/dist/schema/state/sqlite/db-schema/ast/validate.d.ts +3 -0
  144. package/dist/schema/state/sqlite/db-schema/ast/validate.d.ts.map +1 -0
  145. package/dist/schema/state/sqlite/db-schema/ast/validate.js +12 -0
  146. package/dist/schema/state/sqlite/db-schema/ast/validate.js.map +1 -0
  147. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts +90 -0
  148. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts.map +1 -0
  149. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js +87 -0
  150. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js.map +1 -0
  151. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.d.ts +2 -0
  152. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.d.ts.map +1 -0
  153. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js +29 -0
  154. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js.map +1 -0
  155. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts +90 -0
  156. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts.map +1 -0
  157. package/dist/schema/state/sqlite/db-schema/dsl/mod.js +41 -0
  158. package/dist/schema/state/sqlite/db-schema/dsl/mod.js.map +1 -0
  159. package/dist/schema/state/sqlite/db-schema/hash.d.ts +2 -0
  160. package/dist/schema/state/sqlite/db-schema/hash.d.ts.map +1 -0
  161. package/dist/schema/state/sqlite/db-schema/hash.js +14 -0
  162. package/dist/schema/state/sqlite/db-schema/hash.js.map +1 -0
  163. package/dist/schema/state/sqlite/db-schema/mod.d.ts +3 -0
  164. package/dist/schema/state/sqlite/db-schema/mod.d.ts.map +1 -0
  165. package/dist/schema/state/sqlite/db-schema/mod.js +3 -0
  166. package/dist/schema/state/sqlite/db-schema/mod.js.map +1 -0
  167. package/dist/schema/state/sqlite/mod.d.ts +17 -0
  168. package/dist/schema/state/sqlite/mod.d.ts.map +1 -0
  169. package/dist/schema/state/sqlite/mod.js +41 -0
  170. package/dist/schema/state/sqlite/mod.js.map +1 -0
  171. package/dist/schema/state/sqlite/query-builder/api.d.ts +294 -0
  172. package/dist/schema/state/sqlite/query-builder/api.d.ts.map +1 -0
  173. package/dist/schema/state/sqlite/query-builder/api.js +6 -0
  174. package/dist/schema/state/sqlite/query-builder/api.js.map +1 -0
  175. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts +7 -0
  176. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts.map +1 -0
  177. package/dist/schema/state/sqlite/query-builder/astToSql.js +190 -0
  178. package/dist/schema/state/sqlite/query-builder/astToSql.js.map +1 -0
  179. package/dist/schema/state/sqlite/query-builder/impl.d.ts +7 -0
  180. package/dist/schema/state/sqlite/query-builder/impl.d.ts.map +1 -0
  181. package/dist/schema/state/sqlite/query-builder/impl.js +286 -0
  182. package/dist/schema/state/sqlite/query-builder/impl.js.map +1 -0
  183. package/dist/schema/state/sqlite/query-builder/impl.test.d.ts +87 -0
  184. package/dist/schema/state/sqlite/query-builder/impl.test.d.ts.map +1 -0
  185. package/dist/schema/state/sqlite/query-builder/impl.test.js +554 -0
  186. package/dist/schema/state/sqlite/query-builder/impl.test.js.map +1 -0
  187. package/dist/{query-builder → schema/state/sqlite/query-builder}/mod.d.ts +7 -0
  188. package/dist/schema/state/sqlite/query-builder/mod.d.ts.map +1 -0
  189. package/dist/{query-builder → schema/state/sqlite/query-builder}/mod.js +7 -0
  190. package/dist/schema/state/sqlite/query-builder/mod.js.map +1 -0
  191. package/dist/schema/state/sqlite/schema-helpers.d.ts.map +1 -0
  192. package/dist/schema/{schema-helpers.js → state/sqlite/schema-helpers.js} +1 -1
  193. package/dist/schema/state/sqlite/schema-helpers.js.map +1 -0
  194. package/dist/schema/state/sqlite/system-tables.d.ts +574 -0
  195. package/dist/schema/state/sqlite/system-tables.d.ts.map +1 -0
  196. package/dist/schema/state/sqlite/system-tables.js +87 -0
  197. package/dist/schema/state/sqlite/system-tables.js.map +1 -0
  198. package/dist/schema/state/sqlite/table-def.d.ts +84 -0
  199. package/dist/schema/state/sqlite/table-def.d.ts.map +1 -0
  200. package/dist/schema/state/sqlite/table-def.js +36 -0
  201. package/dist/schema/state/sqlite/table-def.js.map +1 -0
  202. package/dist/schema-management/common.d.ts +7 -7
  203. package/dist/schema-management/common.d.ts.map +1 -1
  204. package/dist/schema-management/common.js.map +1 -1
  205. package/dist/schema-management/migrations.d.ts +6 -6
  206. package/dist/schema-management/migrations.d.ts.map +1 -1
  207. package/dist/schema-management/migrations.js +33 -24
  208. package/dist/schema-management/migrations.js.map +1 -1
  209. package/dist/schema-management/validate-schema.d.ts +8 -0
  210. package/dist/schema-management/validate-schema.d.ts.map +1 -0
  211. package/dist/schema-management/validate-schema.js +39 -0
  212. package/dist/schema-management/validate-schema.js.map +1 -0
  213. package/dist/sql-queries/misc.d.ts.map +1 -1
  214. package/dist/sql-queries/sql-queries.d.ts +1 -1
  215. package/dist/sql-queries/sql-queries.d.ts.map +1 -1
  216. package/dist/sql-queries/sql-queries.js.map +1 -1
  217. package/dist/sql-queries/sql-query-builder.d.ts +1 -1
  218. package/dist/sql-queries/sql-query-builder.d.ts.map +1 -1
  219. package/dist/sql-queries/sql-query-builder.js.map +1 -1
  220. package/dist/sql-queries/types.d.ts +2 -1
  221. package/dist/sql-queries/types.d.ts.map +1 -1
  222. package/dist/sql-queries/types.js.map +1 -1
  223. package/dist/sync/ClientSessionSyncProcessor.d.ts +66 -0
  224. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -0
  225. package/dist/sync/ClientSessionSyncProcessor.js +209 -0
  226. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -0
  227. package/dist/sync/index.d.ts +1 -1
  228. package/dist/sync/index.d.ts.map +1 -1
  229. package/dist/sync/index.js +1 -1
  230. package/dist/sync/index.js.map +1 -1
  231. package/dist/sync/next/compact-events.d.ts.map +1 -1
  232. package/dist/sync/next/facts.d.ts +19 -19
  233. package/dist/sync/next/facts.d.ts.map +1 -1
  234. package/dist/sync/next/facts.js +3 -3
  235. package/dist/sync/next/facts.js.map +1 -1
  236. package/dist/sync/next/history-dag-common.d.ts +6 -7
  237. package/dist/sync/next/history-dag-common.d.ts.map +1 -1
  238. package/dist/sync/next/history-dag-common.js +4 -2
  239. package/dist/sync/next/history-dag-common.js.map +1 -1
  240. package/dist/sync/next/history-dag.d.ts.map +1 -1
  241. package/dist/sync/next/history-dag.js +2 -2
  242. package/dist/sync/next/history-dag.js.map +1 -1
  243. package/dist/sync/next/rebase-events.d.ts +10 -8
  244. package/dist/sync/next/rebase-events.d.ts.map +1 -1
  245. package/dist/sync/next/rebase-events.js +11 -8
  246. package/dist/sync/next/rebase-events.js.map +1 -1
  247. package/dist/sync/next/test/compact-events.calculator.test.js +38 -33
  248. package/dist/sync/next/test/compact-events.calculator.test.js.map +1 -1
  249. package/dist/sync/next/test/compact-events.test.js +76 -76
  250. package/dist/sync/next/test/compact-events.test.js.map +1 -1
  251. package/dist/sync/next/test/{mutation-fixtures.d.ts → event-fixtures.d.ts} +25 -25
  252. package/dist/sync/next/test/event-fixtures.d.ts.map +1 -0
  253. package/dist/sync/next/test/{mutation-fixtures.js → event-fixtures.js} +67 -36
  254. package/dist/sync/next/test/event-fixtures.js.map +1 -0
  255. package/dist/sync/next/test/mod.d.ts +1 -1
  256. package/dist/sync/next/test/mod.d.ts.map +1 -1
  257. package/dist/sync/next/test/mod.js +1 -1
  258. package/dist/sync/next/test/mod.js.map +1 -1
  259. package/dist/sync/sync.d.ts +55 -20
  260. package/dist/sync/sync.d.ts.map +1 -1
  261. package/dist/sync/sync.js +7 -3
  262. package/dist/sync/sync.js.map +1 -1
  263. package/dist/sync/syncstate.d.ts +213 -82
  264. package/dist/sync/syncstate.d.ts.map +1 -1
  265. package/dist/sync/syncstate.js +319 -120
  266. package/dist/sync/syncstate.js.map +1 -1
  267. package/dist/sync/syncstate.test.js +295 -275
  268. package/dist/sync/syncstate.test.js.map +1 -1
  269. package/dist/sync/validate-push-payload.d.ts +2 -2
  270. package/dist/sync/validate-push-payload.d.ts.map +1 -1
  271. package/dist/sync/validate-push-payload.js +2 -2
  272. package/dist/sync/validate-push-payload.js.map +1 -1
  273. package/dist/util.d.ts +2 -2
  274. package/dist/util.d.ts.map +1 -1
  275. package/dist/version.d.ts +1 -1
  276. package/dist/version.d.ts.map +1 -1
  277. package/dist/version.js +1 -1
  278. package/dist/version.js.map +1 -1
  279. package/package.json +13 -6
  280. package/src/__tests__/fixture.ts +36 -15
  281. package/src/adapter-types.ts +116 -83
  282. package/src/debug-info.ts +1 -0
  283. package/src/devtools/devtools-messages-client-session.ts +142 -0
  284. package/src/devtools/devtools-messages-common.ts +115 -0
  285. package/src/devtools/devtools-messages-leader.ts +191 -0
  286. package/src/devtools/devtools-messages.ts +3 -243
  287. package/src/devtools/devtools-sessioninfo.ts +101 -0
  288. package/src/devtools/mod.ts +59 -0
  289. package/src/index.ts +7 -15
  290. package/src/leader-thread/LeaderSyncProcessor.ts +933 -0
  291. package/src/leader-thread/connection.ts +54 -9
  292. package/src/leader-thread/eventlog.ts +194 -0
  293. package/src/leader-thread/leader-worker-devtools.ts +235 -191
  294. package/src/leader-thread/make-leader-thread-layer.ts +138 -78
  295. package/src/leader-thread/materialize-event.ts +169 -0
  296. package/src/leader-thread/mod.ts +1 -1
  297. package/src/leader-thread/recreate-db.ts +38 -39
  298. package/src/leader-thread/shutdown-channel.ts +2 -4
  299. package/src/leader-thread/types.ts +98 -53
  300. package/src/make-client-session.ts +119 -0
  301. package/src/materializer-helper.ts +135 -0
  302. package/src/otel.ts +8 -0
  303. package/src/rematerialize-from-eventlog.ts +117 -0
  304. package/src/schema/EventDef.ts +227 -0
  305. package/src/schema/EventId.test.ts +12 -0
  306. package/src/schema/EventId.ts +75 -15
  307. package/src/schema/LiveStoreEvent.ts +239 -0
  308. package/src/schema/events.ts +1 -0
  309. package/src/schema/mod.ts +7 -5
  310. package/src/schema/schema.ts +85 -81
  311. package/src/schema/state/mod.ts +2 -0
  312. package/src/schema/state/sqlite/client-document-def.test.ts +238 -0
  313. package/src/schema/state/sqlite/client-document-def.ts +444 -0
  314. package/src/schema/state/sqlite/db-schema/ast/sqlite.ts +142 -0
  315. package/src/schema/state/sqlite/db-schema/ast/validate.ts +13 -0
  316. package/src/schema/state/sqlite/db-schema/dsl/__snapshots__/field-defs.test.ts.snap +206 -0
  317. package/src/schema/state/sqlite/db-schema/dsl/field-defs.test.ts +35 -0
  318. package/src/schema/state/sqlite/db-schema/dsl/field-defs.ts +242 -0
  319. package/src/schema/state/sqlite/db-schema/dsl/mod.ts +222 -0
  320. package/src/schema/state/sqlite/db-schema/hash.ts +14 -0
  321. package/src/schema/state/sqlite/db-schema/mod.ts +2 -0
  322. package/src/schema/state/sqlite/mod.ts +73 -0
  323. package/src/schema/state/sqlite/query-builder/api.ts +440 -0
  324. package/src/schema/state/sqlite/query-builder/astToSql.ts +232 -0
  325. package/src/schema/state/sqlite/query-builder/impl.test.ts +608 -0
  326. package/src/schema/state/sqlite/query-builder/impl.ts +350 -0
  327. package/src/{query-builder → schema/state/sqlite/query-builder}/mod.ts +7 -0
  328. package/src/schema/{schema-helpers.ts → state/sqlite/schema-helpers.ts} +1 -1
  329. package/src/schema/state/sqlite/system-tables.ts +116 -0
  330. package/src/schema/state/sqlite/table-def.ts +197 -0
  331. package/src/schema-management/common.ts +7 -7
  332. package/src/schema-management/migrations.ts +43 -37
  333. package/src/schema-management/validate-schema.ts +61 -0
  334. package/src/sql-queries/sql-queries.ts +1 -1
  335. package/src/sql-queries/sql-query-builder.ts +1 -2
  336. package/src/sql-queries/types.ts +3 -1
  337. package/src/sync/ClientSessionSyncProcessor.ts +332 -0
  338. package/src/sync/index.ts +1 -1
  339. package/src/sync/next/facts.ts +32 -33
  340. package/src/sync/next/history-dag-common.ts +9 -5
  341. package/src/sync/next/history-dag.ts +2 -2
  342. package/src/sync/next/rebase-events.ts +22 -16
  343. package/src/sync/next/test/compact-events.calculator.test.ts +45 -45
  344. package/src/sync/next/test/compact-events.test.ts +78 -78
  345. package/src/sync/next/test/event-fixtures.ts +219 -0
  346. package/src/sync/next/test/mod.ts +1 -1
  347. package/src/sync/sync.ts +51 -19
  348. package/src/sync/syncstate.test.ts +335 -308
  349. package/src/sync/syncstate.ts +394 -212
  350. package/src/sync/validate-push-payload.ts +7 -4
  351. package/src/version.ts +1 -1
  352. package/dist/derived-mutations.d.ts +0 -109
  353. package/dist/derived-mutations.d.ts.map +0 -1
  354. package/dist/derived-mutations.js +0 -54
  355. package/dist/derived-mutations.js.map +0 -1
  356. package/dist/derived-mutations.test.d.ts +0 -2
  357. package/dist/derived-mutations.test.d.ts.map +0 -1
  358. package/dist/derived-mutations.test.js +0 -93
  359. package/dist/derived-mutations.test.js.map +0 -1
  360. package/dist/devtools/devtools-bridge.d.ts +0 -12
  361. package/dist/devtools/devtools-bridge.d.ts.map +0 -1
  362. package/dist/devtools/devtools-bridge.js +0 -2
  363. package/dist/devtools/devtools-bridge.js.map +0 -1
  364. package/dist/devtools/devtools-window-message.d.ts +0 -29
  365. package/dist/devtools/devtools-window-message.d.ts.map +0 -1
  366. package/dist/devtools/devtools-window-message.js +0 -33
  367. package/dist/devtools/devtools-window-message.js.map +0 -1
  368. package/dist/devtools/index.d.ts +0 -42
  369. package/dist/devtools/index.d.ts.map +0 -1
  370. package/dist/devtools/index.js +0 -48
  371. package/dist/devtools/index.js.map +0 -1
  372. package/dist/init-singleton-tables.d.ts +0 -4
  373. package/dist/init-singleton-tables.d.ts.map +0 -1
  374. package/dist/init-singleton-tables.js +0 -16
  375. package/dist/init-singleton-tables.js.map +0 -1
  376. package/dist/leader-thread/apply-mutation.d.ts +0 -8
  377. package/dist/leader-thread/apply-mutation.d.ts.map +0 -1
  378. package/dist/leader-thread/apply-mutation.js +0 -95
  379. package/dist/leader-thread/apply-mutation.js.map +0 -1
  380. package/dist/leader-thread/leader-sync-processor.d.ts +0 -47
  381. package/dist/leader-thread/leader-sync-processor.d.ts.map +0 -1
  382. package/dist/leader-thread/leader-sync-processor.js +0 -422
  383. package/dist/leader-thread/leader-sync-processor.js.map +0 -1
  384. package/dist/leader-thread/mutationlog.d.ts +0 -23
  385. package/dist/leader-thread/mutationlog.d.ts.map +0 -1
  386. package/dist/leader-thread/mutationlog.js +0 -27
  387. package/dist/leader-thread/mutationlog.js.map +0 -1
  388. package/dist/leader-thread/pull-queue-set.d.ts +0 -7
  389. package/dist/leader-thread/pull-queue-set.d.ts.map +0 -1
  390. package/dist/leader-thread/pull-queue-set.js +0 -39
  391. package/dist/leader-thread/pull-queue-set.js.map +0 -1
  392. package/dist/mutation.d.ts +0 -13
  393. package/dist/mutation.d.ts.map +0 -1
  394. package/dist/mutation.js +0 -57
  395. package/dist/mutation.js.map +0 -1
  396. package/dist/query-builder/api.d.ts +0 -190
  397. package/dist/query-builder/api.d.ts.map +0 -1
  398. package/dist/query-builder/api.js +0 -8
  399. package/dist/query-builder/api.js.map +0 -1
  400. package/dist/query-builder/impl.d.ts +0 -12
  401. package/dist/query-builder/impl.d.ts.map +0 -1
  402. package/dist/query-builder/impl.js +0 -244
  403. package/dist/query-builder/impl.js.map +0 -1
  404. package/dist/query-builder/impl.test.d.ts +0 -2
  405. package/dist/query-builder/impl.test.d.ts.map +0 -1
  406. package/dist/query-builder/impl.test.js +0 -212
  407. package/dist/query-builder/impl.test.js.map +0 -1
  408. package/dist/query-builder/mod.d.ts.map +0 -1
  409. package/dist/query-builder/mod.js.map +0 -1
  410. package/dist/query-info.d.ts +0 -38
  411. package/dist/query-info.d.ts.map +0 -1
  412. package/dist/query-info.js +0 -7
  413. package/dist/query-info.js.map +0 -1
  414. package/dist/rehydrate-from-mutationlog.d.ts +0 -14
  415. package/dist/rehydrate-from-mutationlog.d.ts.map +0 -1
  416. package/dist/rehydrate-from-mutationlog.js +0 -72
  417. package/dist/rehydrate-from-mutationlog.js.map +0 -1
  418. package/dist/schema/MutationEvent.d.ts +0 -191
  419. package/dist/schema/MutationEvent.d.ts.map +0 -1
  420. package/dist/schema/MutationEvent.js +0 -56
  421. package/dist/schema/MutationEvent.js.map +0 -1
  422. package/dist/schema/mutations.d.ts +0 -107
  423. package/dist/schema/mutations.d.ts.map +0 -1
  424. package/dist/schema/mutations.js +0 -42
  425. package/dist/schema/mutations.js.map +0 -1
  426. package/dist/schema/schema-helpers.d.ts.map +0 -1
  427. package/dist/schema/schema-helpers.js.map +0 -1
  428. package/dist/schema/system-tables.d.ts +0 -399
  429. package/dist/schema/system-tables.d.ts.map +0 -1
  430. package/dist/schema/system-tables.js +0 -51
  431. package/dist/schema/system-tables.js.map +0 -1
  432. package/dist/schema/table-def.d.ts +0 -156
  433. package/dist/schema/table-def.d.ts.map +0 -1
  434. package/dist/schema/table-def.js +0 -79
  435. package/dist/schema/table-def.js.map +0 -1
  436. package/dist/schema-management/validate-mutation-defs.d.ts +0 -8
  437. package/dist/schema-management/validate-mutation-defs.d.ts.map +0 -1
  438. package/dist/schema-management/validate-mutation-defs.js +0 -39
  439. package/dist/schema-management/validate-mutation-defs.js.map +0 -1
  440. package/dist/sync/client-session-sync-processor.d.ts +0 -45
  441. package/dist/sync/client-session-sync-processor.d.ts.map +0 -1
  442. package/dist/sync/client-session-sync-processor.js +0 -131
  443. package/dist/sync/client-session-sync-processor.js.map +0 -1
  444. package/dist/sync/next/test/mutation-fixtures.d.ts.map +0 -1
  445. package/dist/sync/next/test/mutation-fixtures.js.map +0 -1
  446. package/src/derived-mutations.test.ts +0 -101
  447. package/src/derived-mutations.ts +0 -166
  448. package/src/devtools/devtools-bridge.ts +0 -13
  449. package/src/devtools/devtools-window-message.ts +0 -27
  450. package/src/devtools/index.ts +0 -48
  451. package/src/init-singleton-tables.ts +0 -24
  452. package/src/leader-thread/apply-mutation.ts +0 -143
  453. package/src/leader-thread/leader-sync-processor.ts +0 -666
  454. package/src/leader-thread/mutationlog.ts +0 -42
  455. package/src/leader-thread/pull-queue-set.ts +0 -58
  456. package/src/mutation.ts +0 -81
  457. package/src/query-builder/api.ts +0 -289
  458. package/src/query-builder/impl.test.ts +0 -239
  459. package/src/query-builder/impl.ts +0 -285
  460. package/src/query-info.ts +0 -78
  461. package/src/rehydrate-from-mutationlog.ts +0 -127
  462. package/src/schema/MutationEvent.ts +0 -161
  463. package/src/schema/mutations.ts +0 -192
  464. package/src/schema/system-tables.ts +0 -97
  465. package/src/schema/table-def.ts +0 -343
  466. package/src/schema-management/validate-mutation-defs.ts +0 -63
  467. package/src/sync/client-session-sync-processor.ts +0 -207
  468. package/src/sync/next/test/mutation-fixtures.ts +0 -231
  469. package/tsconfig.json +0 -11
  470. /package/dist/schema/{schema-helpers.d.ts → state/sqlite/schema-helpers.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"rehydrate-from-mutationlog.js","sourceRoot":"","sources":["../src/rehydrate-from-mutationlog.ts"],"names":[],"mappings":"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"}
@@ -1,191 +0,0 @@
1
- import type { Deferred } from '@livestore/utils/effect';
2
- import { Schema } from '@livestore/utils/effect';
3
- import * as EventId from './EventId.js';
4
- import type { MutationDef, MutationDefRecord } from './mutations.js';
5
- import type { LiveStoreSchema } from './schema.js';
6
- export type MutationEventPartial<TMutationsDef extends MutationDef.Any> = {
7
- mutation: TMutationsDef['name'];
8
- args: Schema.Schema.Type<TMutationsDef['schema']>;
9
- };
10
- export type MutationEventPartialEncoded<TMutationsDef extends MutationDef.Any> = {
11
- mutation: TMutationsDef['name'];
12
- args: Schema.Schema.Encoded<TMutationsDef['schema']>;
13
- };
14
- export type MutationEvent<TMutationsDef extends MutationDef.Any> = {
15
- mutation: TMutationsDef['name'];
16
- args: Schema.Schema.Type<TMutationsDef['schema']>;
17
- id: EventId.EventId;
18
- parentId: EventId.EventId;
19
- };
20
- export type MutationEventEncoded<TMutationsDef extends MutationDef.Any> = {
21
- mutation: TMutationsDef['name'];
22
- args: Schema.Schema.Encoded<TMutationsDef['schema']>;
23
- id: EventId.EventId;
24
- parentId: EventId.EventId;
25
- };
26
- export type Any = MutationEvent<MutationDef.Any>;
27
- export type AnyEncoded = MutationEventEncoded<MutationDef.Any>;
28
- export type PartialAny = MutationEventPartial<MutationDef.Any>;
29
- export type PartialAnyEncoded = MutationEventPartialEncoded<MutationDef.Any>;
30
- export type PartialForSchema<TSchema extends LiveStoreSchema> = {
31
- [K in keyof TSchema['_MutationDefMapType']]: MutationEventPartial<TSchema['_MutationDefMapType'][K]>;
32
- }[keyof TSchema['_MutationDefMapType']];
33
- export type ForSchema<TSchema extends LiveStoreSchema> = {
34
- [K in keyof TSchema['_MutationDefMapType']]: MutationEvent<TSchema['_MutationDefMapType'][K]>;
35
- }[keyof TSchema['_MutationDefMapType']];
36
- export declare const isPartialMutationEvent: (mutationEvent: Any | PartialAny) => mutationEvent is PartialAny;
37
- export type ForMutationDefRecord<TMutationsDefRecord extends MutationDefRecord> = Schema.Schema<{
38
- [K in keyof TMutationsDefRecord]: {
39
- mutation: K;
40
- args: Schema.Schema.Type<TMutationsDefRecord[K]['schema']>;
41
- id: EventId.EventId;
42
- parentId: EventId.EventId;
43
- };
44
- }[keyof TMutationsDefRecord], {
45
- [K in keyof TMutationsDefRecord]: {
46
- mutation: K;
47
- args: Schema.Schema.Encoded<TMutationsDefRecord[K]['schema']>;
48
- id: EventId.EventId;
49
- parentId: EventId.EventId;
50
- };
51
- }[keyof TMutationsDefRecord]>;
52
- export type MutationEventPartialSchema<TMutationsDefRecord extends MutationDefRecord> = Schema.Schema<{
53
- [K in keyof TMutationsDefRecord]: {
54
- mutation: K;
55
- args: Schema.Schema.Type<TMutationsDefRecord[K]['schema']>;
56
- };
57
- }[keyof TMutationsDefRecord], {
58
- [K in keyof TMutationsDefRecord]: {
59
- mutation: K;
60
- args: Schema.Schema.Encoded<TMutationsDefRecord[K]['schema']>;
61
- };
62
- }[keyof TMutationsDefRecord]>;
63
- export declare const makeMutationEventSchema: <TSchema extends LiveStoreSchema>(schema: TSchema) => ForMutationDefRecord<TSchema["_MutationDefMapType"]>;
64
- export declare const makeMutationEventPartialSchema: <TSchema extends LiveStoreSchema>(schema: TSchema) => MutationEventPartialSchema<TSchema["_MutationDefMapType"]>;
65
- export declare const makeMutationEventSchemaMemo: <TSchema extends LiveStoreSchema>(schema: TSchema) => ForMutationDefRecord<TSchema["_MutationDefMapType"]>;
66
- export declare const Any: Schema.Struct<{
67
- mutation: typeof Schema.String;
68
- args: typeof Schema.Any;
69
- id: Schema.Struct<{
70
- global: typeof Schema.Number;
71
- local: typeof Schema.Number;
72
- }>;
73
- parentId: Schema.Struct<{
74
- global: typeof Schema.Number;
75
- local: typeof Schema.Number;
76
- }>;
77
- }>;
78
- export declare const DecodedAny: Schema.SchemaClass<{
79
- readonly id: {
80
- readonly global: number;
81
- readonly local: number;
82
- };
83
- readonly mutation: string;
84
- readonly args: any;
85
- readonly parentId: {
86
- readonly global: number;
87
- readonly local: number;
88
- };
89
- }, {
90
- readonly id: {
91
- readonly global: number;
92
- readonly local: number;
93
- };
94
- readonly mutation: string;
95
- readonly args: any;
96
- readonly parentId: {
97
- readonly global: number;
98
- readonly local: number;
99
- };
100
- }, never>;
101
- export declare const EncodedAny: Schema.SchemaClass<{
102
- readonly id: {
103
- readonly global: number;
104
- readonly local: number;
105
- };
106
- readonly mutation: string;
107
- readonly args: any;
108
- readonly parentId: {
109
- readonly global: number;
110
- readonly local: number;
111
- };
112
- }, {
113
- readonly id: {
114
- readonly global: number;
115
- readonly local: number;
116
- };
117
- readonly mutation: string;
118
- readonly args: any;
119
- readonly parentId: {
120
- readonly global: number;
121
- readonly local: number;
122
- };
123
- }, never>;
124
- declare const EncodedWithMeta_base: Schema.Class<EncodedWithMeta, {
125
- mutation: typeof Schema.String;
126
- args: typeof Schema.Any;
127
- id: Schema.Struct<{
128
- global: typeof Schema.Number;
129
- local: typeof Schema.Number;
130
- }>;
131
- parentId: Schema.Struct<{
132
- global: typeof Schema.Number;
133
- local: typeof Schema.Number;
134
- }>;
135
- meta: Schema.optionalWith<Schema.Schema<{
136
- deferred?: Deferred.Deferred<void>;
137
- sessionChangeset?: Uint8Array;
138
- }, {
139
- deferred?: Deferred.Deferred<void>;
140
- sessionChangeset?: Uint8Array;
141
- }, never>, {
142
- default: () => {};
143
- }>;
144
- }, Schema.Struct.Encoded<{
145
- mutation: typeof Schema.String;
146
- args: typeof Schema.Any;
147
- id: Schema.Struct<{
148
- global: typeof Schema.Number;
149
- local: typeof Schema.Number;
150
- }>;
151
- parentId: Schema.Struct<{
152
- global: typeof Schema.Number;
153
- local: typeof Schema.Number;
154
- }>;
155
- meta: Schema.optionalWith<Schema.Schema<{
156
- deferred?: Deferred.Deferred<void>;
157
- sessionChangeset?: Uint8Array;
158
- }, {
159
- deferred?: Deferred.Deferred<void>;
160
- sessionChangeset?: Uint8Array;
161
- }, never>, {
162
- default: () => {};
163
- }>;
164
- }>, never, {
165
- readonly id: {
166
- readonly global: number;
167
- readonly local: number;
168
- };
169
- } & {
170
- readonly mutation: string;
171
- } & {
172
- readonly args: any;
173
- } & {
174
- readonly parentId: {
175
- readonly global: number;
176
- readonly local: number;
177
- };
178
- } & {
179
- readonly meta?: {
180
- deferred?: Deferred.Deferred<void>;
181
- sessionChangeset?: Uint8Array;
182
- } | undefined;
183
- }, {}, {}>;
184
- /** Equivalent to EncodedAny but with a meta field and some convenience methods */
185
- export declare class EncodedWithMeta extends EncodedWithMeta_base {
186
- toJSON: () => any;
187
- rebase: (parentId: EventId.EventId, isLocal: boolean) => EncodedWithMeta;
188
- }
189
- export declare const isEqualEncoded: (a: AnyEncoded, b: AnyEncoded) => boolean;
190
- export {};
191
- //# sourceMappingURL=MutationEvent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MutationEvent.d.ts","sourceRoot":"","sources":["../../src/schema/MutationEvent.ts"],"names":[],"mappings":"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"}
@@ -1,56 +0,0 @@
1
- import { memoizeByRef } from '@livestore/utils';
2
- import { Schema } from '@livestore/utils/effect';
3
- import * as EventId from './EventId.js';
4
- export const isPartialMutationEvent = (mutationEvent) => 'id' in mutationEvent === false && 'parentId' in mutationEvent === false;
5
- export const makeMutationEventSchema = (schema) => Schema.Union(...[...schema.mutations.values()].map((def) => Schema.Struct({
6
- mutation: Schema.Literal(def.name),
7
- args: def.schema,
8
- id: EventId.EventId,
9
- parentId: EventId.EventId,
10
- }))).annotations({ title: 'MutationEvent' });
11
- export const makeMutationEventPartialSchema = (schema) => Schema.Union(...[...schema.mutations.values()].map((def) => Schema.Struct({
12
- mutation: Schema.Literal(def.name),
13
- args: def.schema,
14
- }))).annotations({ title: 'MutationEventSchemaPartial' });
15
- export const makeMutationEventSchemaMemo = memoizeByRef(makeMutationEventSchema);
16
- export const Any = Schema.Struct({
17
- mutation: Schema.String,
18
- args: Schema.Any,
19
- id: EventId.EventId,
20
- parentId: EventId.EventId,
21
- }).annotations({ title: 'MutationEvent.Any' });
22
- export const DecodedAny = Schema.typeSchema(Any).annotations({
23
- title: 'MutationEvent.DecodedAny',
24
- });
25
- export const EncodedAny = Schema.encodedSchema(Any).annotations({
26
- title: 'MutationEvent.EncodedAny',
27
- });
28
- /** Equivalent to EncodedAny but with a meta field and some convenience methods */
29
- export class EncodedWithMeta extends Schema.Class('MutationEvent.EncodedWithMeta')({
30
- mutation: Schema.String,
31
- args: Schema.Any,
32
- id: EventId.EventId,
33
- parentId: EventId.EventId,
34
- meta: Schema.optionalWith(Schema.Any, { default: () => ({}) }),
35
- }) {
36
- toJSON = () => {
37
- // Only used for logging/debugging
38
- // - More readable way to print the id + parentId
39
- // - not including `meta`
40
- return {
41
- id: `(${this.id.global},${this.id.local}) → (${this.parentId.global},${this.parentId.local})`,
42
- mutation: this.mutation,
43
- args: this.args,
44
- };
45
- };
46
- rebase = (parentId, isLocal) => new EncodedWithMeta({
47
- ...this,
48
- ...EventId.nextPair(this.id, isLocal),
49
- });
50
- }
51
- export const isEqualEncoded = (a, b) => a.id.global === b.id.global &&
52
- a.id.local === b.id.local &&
53
- a.mutation === b.mutation &&
54
- // TODO use schema equality here
55
- JSON.stringify(a.args) === JSON.stringify(b.args);
56
- //# sourceMappingURL=MutationEvent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MutationEvent.js","sourceRoot":"","sources":["../../src/schema/MutationEvent.ts"],"names":[],"mappings":"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"}
@@ -1,107 +0,0 @@
1
- import { Schema } from '@livestore/utils/effect';
2
- import type { BindValues } from '../sql-queries/sql-queries.js';
3
- import type * as EventId from './EventId.js';
4
- export type MutationDefMap = Map<string | 'livestore.RawSql', MutationDef.Any>;
5
- export type MutationDefRecord = {
6
- 'livestore.RawSql': RawSqlMutation;
7
- [name: string]: MutationDef.Any;
8
- };
9
- export type InternalMutationSchema<TRecord extends MutationDefRecord = MutationDefRecord> = {
10
- _DefRecord: TRecord;
11
- map: Map<keyof TRecord, TRecord[keyof TRecord]>;
12
- schemaHashMap: Map<keyof TRecord, number>;
13
- };
14
- export type MutationDefSqlResult<TTo> = SingleOrReadonlyArray<string> | ((args: TTo) => SingleOrReadonlyArray<string | {
15
- sql: string;
16
- /** Note args need to be manually encoded to `BindValues` when returning this argument */
17
- bindValues: BindValues;
18
- writeTables?: ReadonlySet<string>;
19
- }>);
20
- export type SingleOrReadonlyArray<T> = T | ReadonlyArray<T>;
21
- export type MutationDef<TName extends string, TFrom, TTo> = {
22
- name: TName;
23
- schema: Schema.Schema<TTo, TFrom>;
24
- sql: MutationDefSqlResult<NoInfer<TTo>>;
25
- options: {
26
- /** Warning: This feature is not fully implemented yet */
27
- historyId: string;
28
- /**
29
- * When set to true, the mutation won't be synced over the network
30
- */
31
- localOnly: boolean;
32
- /** Warning: This feature is not fully implemented yet */
33
- facts: FactsCallback<TTo> | undefined;
34
- };
35
- /** Helper function to construct a partial mutation event */
36
- (args: TTo, options?: {
37
- id?: number;
38
- }): {
39
- mutation: TName;
40
- args: TTo;
41
- id?: EventId.EventId;
42
- };
43
- };
44
- export type FactsCallback<TTo> = (args: TTo, currentFacts: MutationEventFacts) => {
45
- modify: {
46
- set: Iterable<MutationEventFactInput>;
47
- unset: Iterable<MutationEventFactInput>;
48
- };
49
- require: Iterable<MutationEventFactInput>;
50
- };
51
- export declare namespace MutationDef {
52
- type Any = MutationDef<string, any, any>;
53
- }
54
- export type MutationEventKey = string;
55
- export type MutationEventFact = string;
56
- export type MutationEventFacts = ReadonlyMap<string, any>;
57
- export type MutationEventFactsGroup = {
58
- modifySet: MutationEventFacts;
59
- modifyUnset: MutationEventFacts;
60
- /**
61
- * Events on independent "dependency" branches are commutative which can facilitate more prioritized syncing
62
- */
63
- depRequire: MutationEventFacts;
64
- depRead: MutationEventFacts;
65
- };
66
- export type MutationEventFactsSnapshot = Map<string, any>;
67
- export type MutationEventFactInput = string | readonly [string, any];
68
- export declare const defineFacts: <TRecord extends Record<string, MutationEventFactInput | ((...args: any[]) => MutationEventFactInput)>>(record: TRecord) => TRecord;
69
- export type DefineMutationOptions<TTo> = {
70
- onError?: (error: any) => void;
71
- historyId?: string;
72
- /** Warning: This feature is not fully implemented yet */
73
- facts?: (args: TTo, currentFacts: MutationEventFacts) => {
74
- modify?: {
75
- set?: Iterable<MutationEventFactInput>;
76
- unset?: Iterable<MutationEventFactInput>;
77
- };
78
- /**
79
- * Two purposes: constrain history and constrain compaction
80
- */
81
- require?: Iterable<MutationEventFactInput>;
82
- };
83
- /**
84
- * When set to true, the mutation won't be synced over the network
85
- */
86
- localOnly?: boolean;
87
- };
88
- export declare const defineMutation: <TName extends string, TFrom, TTo>(name: TName, schema: Schema.Schema<TTo, TFrom>, sql: MutationDefSqlResult<NoInfer<TTo>>, options?: DefineMutationOptions<TTo>) => MutationDef<TName, TFrom, TTo>;
89
- export declare const makeMutationDefRecord: <TInputRecord extends Record<string, MutationDef.Any>>(inputRecord: TInputRecord) => { [K in TInputRecord[keyof TInputRecord]["name"]]: Extract<TInputRecord[keyof TInputRecord], {
90
- name: K;
91
- }>; };
92
- export declare const rawSqlMutation: MutationDef<"livestore.RawSql", {
93
- readonly sql: string;
94
- readonly bindValues?: {
95
- readonly [x: string]: any;
96
- } | undefined;
97
- readonly writeTables?: readonly string[] | undefined;
98
- }, {
99
- readonly bindValues?: {
100
- readonly [x: string]: any;
101
- } | undefined;
102
- readonly sql: string;
103
- readonly writeTables?: ReadonlySet<string> | undefined;
104
- }>;
105
- export type RawSqlMutation = typeof rawSqlMutation;
106
- export type RawSqlMutationEvent = ReturnType<typeof rawSqlMutation>;
107
- //# sourceMappingURL=mutations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutations.d.ts","sourceRoot":"","sources":["../../src/schema/mutations.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import { Schema } from '@livestore/utils/effect';
2
- export const defineFacts = (record) => record;
3
- // TODO possibly also allow for mutation event subsumption behaviour
4
- export const defineMutation = (name, schema, sql, options) => {
5
- const makePartialEvent = (args, options) => ({ mutation: name, args, ...options });
6
- Object.defineProperty(makePartialEvent, 'name', { value: name });
7
- Object.defineProperty(makePartialEvent, 'schema', { value: schema });
8
- Object.defineProperty(makePartialEvent, 'sql', { value: sql });
9
- Object.defineProperty(makePartialEvent, 'options', {
10
- value: {
11
- historyId: options?.historyId ?? 'main',
12
- localOnly: options?.localOnly ?? false,
13
- facts: options?.facts
14
- ? (args, currentFacts) => {
15
- const res = options.facts(args, currentFacts);
16
- return {
17
- modify: {
18
- set: res.modify?.set ? new Set(res.modify.set) : new Set(),
19
- unset: res.modify?.unset ? new Set(res.modify.unset) : new Set(),
20
- },
21
- require: res.require ? new Set(res.require) : new Set(),
22
- };
23
- }
24
- : undefined,
25
- },
26
- });
27
- return makePartialEvent;
28
- };
29
- export const makeMutationDefRecord = (inputRecord) => {
30
- const result = {};
31
- for (const [name, def] of Object.entries(inputRecord)) {
32
- result[name] = def;
33
- }
34
- result['livestore.RawSql'] = rawSqlMutation;
35
- return result;
36
- };
37
- export const rawSqlMutation = defineMutation('livestore.RawSql', Schema.Struct({
38
- sql: Schema.String,
39
- bindValues: Schema.optional(Schema.Record({ key: Schema.String, value: Schema.Any })),
40
- writeTables: Schema.optional(Schema.ReadonlySet(Schema.String)),
41
- }), ({ sql, bindValues, writeTables }) => ({ sql, bindValues: bindValues ?? {}, writeTables }));
42
- //# sourceMappingURL=mutations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../src/schema/mutations.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-helpers.d.ts","sourceRoot":"","sources":["../../src/schema/schema-helpers.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE5D,eAAO,MAAM,uBAAuB,GAAI,SAAS,SAAS,QAAQ,YACtD,SAAS,mBACF,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,wBAkBnC,CAAA;AAEH,eAAO,MAAM,uBAAuB,GAAI,SAAS,SAAS,YAAY,YAC1D,SAAS,mBACF,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,wBAkBnC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-helpers.js","sourceRoot":"","sources":["../../src/schema/schema-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAItE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,QAAmB,EACnB,cAAoC,EACpC,EAAE,CACF,IAAI,CACF,QAAQ,CAAC,SAAS,CAAC,OAAO,EAC1B,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjC,IAAI,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,GAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;AAClG,CAAC,CAAC,EACF,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CACxC,cAAc,EAAE,CAAC,UAAU,CAAC,KAAK,SAAS;IACxC,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;QAC/B,CAAC,CAAC,MAAO,CAAC,QAAQ,KAAK,IAAI;YACzB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,iBAAiB,CAAC,UAAU,UAAU,2CAA2C,CAAC;QACtF,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5D,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAC/B,CACF,CAAA;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,QAAmB,EACnB,cAAoC,EACpC,EAAE,CACF,IAAI,CACF,QAAQ,CAAC,SAAS,CAAC,OAAO,EAC1B,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjC,IAAI,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,GAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;AAClG,CAAC,CAAC,EACF,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CACxC,cAAc,EAAE,CAAC,UAAU,CAAC,KAAK,SAAS;IACxC,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;QAC/B,CAAC,CAAC,MAAO,CAAC,QAAQ,KAAK,IAAI;YACzB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,iBAAiB,CAAC,UAAU,UAAU,2CAA2C,CAAC;QACtF,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,KAAK,CAAC;IAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAC/B,CACF,CAAA"}