@livestore/common 0.3.0-dev.32 → 0.3.0-dev.34

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 (236) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/adapter-types.d.ts +5 -9
  3. package/dist/adapter-types.d.ts.map +1 -1
  4. package/dist/adapter-types.js.map +1 -1
  5. package/dist/devtools/devtools-messages-client-session.d.ts +22 -21
  6. package/dist/devtools/devtools-messages-client-session.d.ts.map +1 -1
  7. package/dist/devtools/devtools-messages-client-session.js +1 -0
  8. package/dist/devtools/devtools-messages-client-session.js.map +1 -1
  9. package/dist/devtools/devtools-messages-common.d.ts +6 -6
  10. package/dist/devtools/devtools-messages-leader.d.ts +25 -25
  11. package/dist/devtools/devtools-messages-leader.js +1 -1
  12. package/dist/devtools/devtools-messages-leader.js.map +1 -1
  13. package/dist/index.d.ts +3 -3
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +3 -3
  16. package/dist/index.js.map +1 -1
  17. package/dist/leader-thread/LeaderSyncProcessor.d.ts +4 -4
  18. package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -1
  19. package/dist/leader-thread/LeaderSyncProcessor.js +21 -17
  20. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
  21. package/dist/leader-thread/apply-event.d.ts +4 -4
  22. package/dist/leader-thread/apply-event.d.ts.map +1 -1
  23. package/dist/leader-thread/apply-event.js +9 -9
  24. package/dist/leader-thread/apply-event.js.map +1 -1
  25. package/dist/leader-thread/eventlog.d.ts.map +1 -1
  26. package/dist/leader-thread/eventlog.js +11 -15
  27. package/dist/leader-thread/eventlog.js.map +1 -1
  28. package/dist/leader-thread/leader-worker-devtools.js +13 -12
  29. package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
  30. package/dist/leader-thread/make-leader-thread-layer.d.ts +2 -2
  31. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  32. package/dist/leader-thread/make-leader-thread-layer.js +11 -18
  33. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  34. package/dist/leader-thread/materialize-event.d.ts +16 -0
  35. package/dist/leader-thread/materialize-event.d.ts.map +1 -0
  36. package/dist/leader-thread/materialize-event.js +103 -0
  37. package/dist/leader-thread/materialize-event.js.map +1 -0
  38. package/dist/leader-thread/recreate-db.d.ts.map +1 -1
  39. package/dist/leader-thread/recreate-db.js +9 -17
  40. package/dist/leader-thread/recreate-db.js.map +1 -1
  41. package/dist/leader-thread/types.d.ts +5 -5
  42. package/dist/leader-thread/types.d.ts.map +1 -1
  43. package/dist/materializer-helper.d.ts.map +1 -1
  44. package/dist/materializer-helper.js +1 -1
  45. package/dist/materializer-helper.js.map +1 -1
  46. package/dist/query-builder/api.d.ts +4 -4
  47. package/dist/query-builder/api.d.ts.map +1 -1
  48. package/dist/query-builder/impl.d.ts +2 -2
  49. package/dist/query-builder/impl.test.d.ts +5 -5
  50. package/dist/query-builder/mod.d.ts +2 -2
  51. package/dist/rehydrate-from-eventlog.d.ts +1 -1
  52. package/dist/rehydrate-from-eventlog.d.ts.map +1 -1
  53. package/dist/rehydrate-from-eventlog.js +6 -7
  54. package/dist/rehydrate-from-eventlog.js.map +1 -1
  55. package/dist/rematerialize-from-eventlog.d.ts +14 -0
  56. package/dist/rematerialize-from-eventlog.d.ts.map +1 -0
  57. package/dist/rematerialize-from-eventlog.js +64 -0
  58. package/dist/rematerialize-from-eventlog.js.map +1 -0
  59. package/dist/schema/EventDef.d.ts +1 -1
  60. package/dist/schema/EventDef.d.ts.map +1 -1
  61. package/dist/schema/EventId.test.js +1 -1
  62. package/dist/schema/EventId.test.js.map +1 -1
  63. package/dist/schema/client-document-def.d.ts +2 -2
  64. package/dist/schema/db-schema/dsl/mod.d.ts +3 -3
  65. package/dist/schema/db-schema/mod.d.ts +2 -2
  66. package/dist/schema/mod.d.ts +4 -4
  67. package/dist/schema/mod.d.ts.map +1 -1
  68. package/dist/schema/mod.js +4 -4
  69. package/dist/schema/mod.js.map +1 -1
  70. package/dist/schema/schema-helpers.d.ts +1 -1
  71. package/dist/schema/schema.d.ts +12 -14
  72. package/dist/schema/schema.d.ts.map +1 -1
  73. package/dist/schema/schema.js +5 -28
  74. package/dist/schema/schema.js.map +1 -1
  75. package/dist/schema/state/mod.d.ts +3 -0
  76. package/dist/schema/state/mod.d.ts.map +1 -0
  77. package/dist/schema/state/mod.js +3 -0
  78. package/dist/schema/state/mod.js.map +1 -0
  79. package/dist/schema/state/sqlite/client-document-def.d.ts +223 -0
  80. package/dist/schema/state/sqlite/client-document-def.d.ts.map +1 -0
  81. package/dist/schema/state/sqlite/client-document-def.js +170 -0
  82. package/dist/schema/state/sqlite/client-document-def.js.map +1 -0
  83. package/dist/schema/state/sqlite/client-document-def.test.d.ts +2 -0
  84. package/dist/schema/state/sqlite/client-document-def.test.d.ts.map +1 -0
  85. package/dist/schema/state/sqlite/client-document-def.test.js +201 -0
  86. package/dist/schema/state/sqlite/client-document-def.test.js.map +1 -0
  87. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts +69 -0
  88. package/dist/schema/state/sqlite/db-schema/ast/sqlite.d.ts.map +1 -0
  89. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js +71 -0
  90. package/dist/schema/state/sqlite/db-schema/ast/sqlite.js.map +1 -0
  91. package/dist/schema/state/sqlite/db-schema/ast/validate.d.ts +3 -0
  92. package/dist/schema/state/sqlite/db-schema/ast/validate.d.ts.map +1 -0
  93. package/dist/schema/state/sqlite/db-schema/ast/validate.js +12 -0
  94. package/dist/schema/state/sqlite/db-schema/ast/validate.js.map +1 -0
  95. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts +90 -0
  96. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.d.ts.map +1 -0
  97. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js +87 -0
  98. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.js.map +1 -0
  99. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.d.ts +2 -0
  100. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.d.ts.map +1 -0
  101. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js +29 -0
  102. package/dist/schema/state/sqlite/db-schema/dsl/field-defs.test.js.map +1 -0
  103. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts +90 -0
  104. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts.map +1 -0
  105. package/dist/schema/state/sqlite/db-schema/dsl/mod.js +41 -0
  106. package/dist/schema/state/sqlite/db-schema/dsl/mod.js.map +1 -0
  107. package/dist/schema/state/sqlite/db-schema/hash.d.ts +2 -0
  108. package/dist/schema/state/sqlite/db-schema/hash.d.ts.map +1 -0
  109. package/dist/schema/state/sqlite/db-schema/hash.js +14 -0
  110. package/dist/schema/state/sqlite/db-schema/hash.js.map +1 -0
  111. package/dist/schema/state/sqlite/db-schema/mod.d.ts +3 -0
  112. package/dist/schema/state/sqlite/db-schema/mod.d.ts.map +1 -0
  113. package/dist/schema/state/sqlite/db-schema/mod.js +3 -0
  114. package/dist/schema/state/sqlite/db-schema/mod.js.map +1 -0
  115. package/dist/schema/state/sqlite/mod.d.ts +17 -0
  116. package/dist/schema/state/sqlite/mod.d.ts.map +1 -0
  117. package/dist/schema/state/sqlite/mod.js +41 -0
  118. package/dist/schema/state/sqlite/mod.js.map +1 -0
  119. package/dist/schema/state/sqlite/query-builder/api.d.ts +293 -0
  120. package/dist/schema/state/sqlite/query-builder/api.d.ts.map +1 -0
  121. package/dist/schema/state/sqlite/query-builder/api.js +6 -0
  122. package/dist/schema/state/sqlite/query-builder/api.js.map +1 -0
  123. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts +7 -0
  124. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts.map +1 -0
  125. package/dist/schema/state/sqlite/query-builder/astToSql.js +190 -0
  126. package/dist/schema/state/sqlite/query-builder/astToSql.js.map +1 -0
  127. package/dist/schema/state/sqlite/query-builder/impl.d.ts +7 -0
  128. package/dist/schema/state/sqlite/query-builder/impl.d.ts.map +1 -0
  129. package/dist/schema/state/sqlite/query-builder/impl.js +286 -0
  130. package/dist/schema/state/sqlite/query-builder/impl.js.map +1 -0
  131. package/dist/schema/state/sqlite/query-builder/impl.test.d.ts +87 -0
  132. package/dist/schema/state/sqlite/query-builder/impl.test.d.ts.map +1 -0
  133. package/dist/schema/state/sqlite/query-builder/impl.test.js +554 -0
  134. package/dist/schema/state/sqlite/query-builder/impl.test.js.map +1 -0
  135. package/dist/schema/state/sqlite/query-builder/mod.d.ts +17 -0
  136. package/dist/schema/state/sqlite/query-builder/mod.d.ts.map +1 -0
  137. package/dist/schema/state/sqlite/query-builder/mod.js +17 -0
  138. package/dist/schema/state/sqlite/query-builder/mod.js.map +1 -0
  139. package/dist/schema/state/sqlite/schema-helpers.d.ts +4 -0
  140. package/dist/schema/state/sqlite/schema-helpers.d.ts.map +1 -0
  141. package/dist/schema/state/sqlite/schema-helpers.js +30 -0
  142. package/dist/schema/state/sqlite/schema-helpers.js.map +1 -0
  143. package/dist/schema/state/sqlite/sqlite-state.d.ts +12 -0
  144. package/dist/schema/state/sqlite/sqlite-state.d.ts.map +1 -0
  145. package/dist/schema/state/sqlite/sqlite-state.js +36 -0
  146. package/dist/schema/state/sqlite/sqlite-state.js.map +1 -0
  147. package/dist/schema/state/sqlite/system-tables.d.ts +574 -0
  148. package/dist/schema/state/sqlite/system-tables.d.ts.map +1 -0
  149. package/dist/schema/state/sqlite/system-tables.js +87 -0
  150. package/dist/schema/state/sqlite/system-tables.js.map +1 -0
  151. package/dist/schema/state/sqlite/table-def.d.ts +84 -0
  152. package/dist/schema/state/sqlite/table-def.d.ts.map +1 -0
  153. package/dist/schema/state/sqlite/table-def.js +36 -0
  154. package/dist/schema/state/sqlite/table-def.js.map +1 -0
  155. package/dist/schema/state/state.d.ts +3 -0
  156. package/dist/schema/state/state.d.ts.map +1 -0
  157. package/dist/schema/state/state.js +3 -0
  158. package/dist/schema/state/state.js.map +1 -0
  159. package/dist/schema/state.d.ts +3 -0
  160. package/dist/schema/state.d.ts.map +1 -0
  161. package/dist/schema/state.js +3 -0
  162. package/dist/schema/state.js.map +1 -0
  163. package/dist/schema/system-tables.d.ts +7 -433
  164. package/dist/schema/system-tables.d.ts.map +1 -1
  165. package/dist/schema/system-tables.js +1 -1
  166. package/dist/schema/system-tables.js.map +1 -1
  167. package/dist/schema/table-def.d.ts +2 -2
  168. package/dist/schema-management/migrations.d.ts +1 -1
  169. package/dist/schema-management/migrations.d.ts.map +1 -1
  170. package/dist/schema-management/migrations.js +14 -12
  171. package/dist/schema-management/migrations.js.map +1 -1
  172. package/dist/schema-management/validate-schema.d.ts +8 -0
  173. package/dist/schema-management/validate-schema.d.ts.map +1 -0
  174. package/dist/schema-management/validate-schema.js +39 -0
  175. package/dist/schema-management/validate-schema.js.map +1 -0
  176. package/dist/sql-queries/sql-queries.d.ts +1 -1
  177. package/dist/sql-queries/sql-queries.d.ts.map +1 -1
  178. package/dist/sql-queries/sql-query-builder.d.ts +1 -1
  179. package/dist/sql-queries/sql-query-builder.d.ts.map +1 -1
  180. package/dist/sql-queries/types.d.ts +1 -1
  181. package/dist/sql-queries/types.d.ts.map +1 -1
  182. package/dist/sync/ClientSessionSyncProcessor.d.ts +3 -3
  183. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
  184. package/dist/sync/ClientSessionSyncProcessor.js +6 -6
  185. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
  186. package/dist/sync/syncstate.d.ts +2 -2
  187. package/dist/version.d.ts +1 -1
  188. package/dist/version.js +1 -1
  189. package/package.json +9 -3
  190. package/src/adapter-types.ts +4 -10
  191. package/src/devtools/devtools-messages-client-session.ts +1 -0
  192. package/src/devtools/devtools-messages-leader.ts +1 -1
  193. package/src/index.ts +3 -3
  194. package/src/leader-thread/LeaderSyncProcessor.ts +28 -30
  195. package/src/leader-thread/eventlog.ts +12 -17
  196. package/src/leader-thread/leader-worker-devtools.ts +15 -12
  197. package/src/leader-thread/make-leader-thread-layer.ts +15 -21
  198. package/src/leader-thread/{apply-event.ts → materialize-event.ts} +22 -28
  199. package/src/leader-thread/recreate-db.ts +9 -21
  200. package/src/leader-thread/types.ts +5 -5
  201. package/src/materializer-helper.ts +1 -1
  202. package/src/{rehydrate-from-eventlog.ts → rematerialize-from-eventlog.ts} +41 -38
  203. package/src/schema/EventDef.ts +1 -1
  204. package/src/schema/EventId.test.ts +1 -1
  205. package/src/schema/mod.ts +4 -4
  206. package/src/schema/schema.ts +18 -52
  207. package/src/schema/state/mod.ts +2 -0
  208. package/src/schema/{client-document-def.test.ts → state/sqlite/client-document-def.test.ts} +2 -2
  209. package/src/schema/{client-document-def.ts → state/sqlite/client-document-def.ts} +6 -6
  210. package/src/schema/{sqlite-state.ts → state/sqlite/mod.ts} +17 -6
  211. package/src/{query-builder → schema/state/sqlite/query-builder}/api.ts +21 -22
  212. package/src/{query-builder → schema/state/sqlite/query-builder}/astToSql.ts +3 -3
  213. package/src/{query-builder → schema/state/sqlite/query-builder}/impl.test.ts +1 -1
  214. package/src/{query-builder → schema/state/sqlite/query-builder}/impl.ts +3 -4
  215. package/src/schema/{schema-helpers.ts → state/sqlite/schema-helpers.ts} +1 -1
  216. package/src/schema/{system-tables.ts → state/sqlite/system-tables.ts} +6 -5
  217. package/src/schema/{table-def.ts → state/sqlite/table-def.ts} +2 -2
  218. package/src/schema-management/migrations.ts +17 -15
  219. package/src/sql-queries/sql-queries.ts +1 -1
  220. package/src/sql-queries/sql-query-builder.ts +1 -1
  221. package/src/sql-queries/types.ts +1 -1
  222. package/src/sync/ClientSessionSyncProcessor.ts +7 -7
  223. package/src/version.ts +1 -1
  224. package/src/schema/view.ts +0 -2
  225. package/tmp/pack.tgz +0 -0
  226. package/tsconfig.json +0 -12
  227. /package/src/schema/{db-schema → state/sqlite/db-schema}/ast/sqlite.ts +0 -0
  228. /package/src/schema/{db-schema → state/sqlite/db-schema}/ast/validate.ts +0 -0
  229. /package/src/schema/{db-schema → state/sqlite/db-schema}/dsl/__snapshots__/field-defs.test.ts.snap +0 -0
  230. /package/src/schema/{db-schema → state/sqlite/db-schema}/dsl/field-defs.test.ts +0 -0
  231. /package/src/schema/{db-schema → state/sqlite/db-schema}/dsl/field-defs.ts +0 -0
  232. /package/src/schema/{db-schema → state/sqlite/db-schema}/dsl/mod.ts +0 -0
  233. /package/src/schema/{db-schema → state/sqlite/db-schema}/hash.ts +0 -0
  234. /package/src/schema/{db-schema → state/sqlite/db-schema}/mod.ts +0 -0
  235. /package/src/{query-builder → schema/state/sqlite/query-builder}/mod.ts +0 -0
  236. /package/src/schema-management/{validate-mutation-defs.ts → validate-schema.ts} +0 -0
@@ -26,7 +26,7 @@ export declare const issue: State.SQLite.TableDef<{
26
26
  };
27
27
  readonly priority: {
28
28
  columnType: "integer";
29
- schema: Schema.Schema<0 | 3 | 1 | 2 | 4, 0 | 3 | 1 | 2 | 4, never>;
29
+ schema: Schema.Schema<0 | 1 | 2 | 3 | 4, 0 | 1 | 2 | 3 | 4, never>;
30
30
  default: import("effect/Option").Some<0>;
31
31
  nullable: false;
32
32
  primaryKey: false;
@@ -60,8 +60,8 @@ export declare const issue: State.SQLite.TableDef<{
60
60
  primaryKey: false;
61
61
  };
62
62
  };
63
- indexes?: ReadonlyArray<import("../schema/db-schema/dsl/mod.js").Index>;
64
- ast: import("../schema/db-schema/ast/sqlite.js").Table;
63
+ indexes?: ReadonlyArray<import("../schema/state/sqlite/db-schema/dsl/mod.js").Index>;
64
+ ast: import("../schema/state/sqlite/db-schema/ast/sqlite.js").Table;
65
65
  }, {
66
66
  isClientDocumentTable: false;
67
67
  requiredInsertColumnNames: "id" | "created" | "modified";
@@ -69,7 +69,7 @@ export declare const issue: State.SQLite.TableDef<{
69
69
  readonly id: number;
70
70
  readonly title: string;
71
71
  readonly creator: string;
72
- readonly priority: 0 | 3 | 1 | 2 | 4;
72
+ readonly priority: 0 | 1 | 2 | 3 | 4;
73
73
  readonly created: Date;
74
74
  readonly deleted: Date | null;
75
75
  readonly modified: Date;
@@ -78,7 +78,7 @@ export declare const issue: State.SQLite.TableDef<{
78
78
  readonly id: number;
79
79
  readonly title: string;
80
80
  readonly creator: string;
81
- readonly priority: 0 | 3 | 1 | 2 | 4;
81
+ readonly priority: 0 | 1 | 2 | 3 | 4;
82
82
  readonly created: number;
83
83
  readonly deleted: number | null;
84
84
  readonly modified: number;
@@ -1,5 +1,5 @@
1
- export * from './api.js';
2
- export * from './impl.js';
1
+ export * from './api.ts';
2
+ export * from './impl.ts';
3
3
  /**
4
4
  * Design decisions:
5
5
  *
@@ -2,7 +2,7 @@ import { Effect } from '@livestore/utils/effect';
2
2
  import { type SqliteDb, UnexpectedError } from './adapter-types.js';
3
3
  import type { ApplyEvent } from './leader-thread/mod.js';
4
4
  import type { LiveStoreSchema } from './schema/mod.js';
5
- export declare const rehydrateFromEventlog: ({ dbEventlog, schema, onProgress, applyEvent, }: {
5
+ export declare const rematerializeFromEventlog: ({ dbEventlog, schema, onProgress, applyEvent, }: {
6
6
  dbEventlog: SqliteDb;
7
7
  schema: LiveStoreSchema;
8
8
  onProgress: (_: {
@@ -1 +1 @@
1
- {"version":3,"file":"rehydrate-from-eventlog.d.ts","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,MAAM,EAA0B,MAAM,yBAAyB,CAAA;AAE/E,OAAO,EAAE,KAAK,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAA6B,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKjF,eAAO,MAAM,qBAAqB,GAAI,iDAOnC;IACD,UAAU,EAAE,QAAQ,CAAA;IAEpB,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACvE,UAAU,EAAE,UAAU,CAAA;CACvB,2FA0FE,CAAA"}
1
+ {"version":3,"file":"rehydrate-from-eventlog.d.ts","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,MAAM,EAA0B,MAAM,yBAAyB,CAAA;AAE/E,OAAO,EAAE,KAAK,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKhE,eAAO,MAAM,yBAAyB,GAAI,iDAOvC;IACD,UAAU,EAAE,QAAQ,CAAA;IAEpB,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACvE,UAAU,EAAE,UAAU,CAAA;CACvB,2FA2FE,CAAA"}
@@ -1,14 +1,13 @@
1
1
  import { memoizeByRef } from '@livestore/utils';
2
2
  import { Chunk, Effect, Option, Schema, Stream } from '@livestore/utils/effect';
3
3
  import { UnexpectedError } from './adapter-types.js';
4
- import { EventId, EVENTLOG_META_TABLE, getEventDef, LiveStoreEvent } from './schema/mod.js';
4
+ import { EventId, getEventDef, LiveStoreEvent, SystemTables } from './schema/mod.js';
5
5
  import { sql } from './util.js';
6
- export const rehydrateFromEventlog = ({ dbEventlog,
6
+ export const rematerializeFromEventlog = ({ dbEventlog,
7
7
  // TODO re-use this db when bringing back the boot in-memory db implementation
8
8
  // db,
9
9
  schema, onProgress, applyEvent, }) => Effect.gen(function* () {
10
- const eventsCount = dbEventlog.select(`SELECT COUNT(*) AS count FROM ${EVENTLOG_META_TABLE}`)[0]
11
- .count;
10
+ const eventsCount = dbEventlog.select(`SELECT COUNT(*) AS count FROM ${SystemTables.EVENTLOG_META_TABLE}`)[0].count;
12
11
  const hashEvent = memoizeByRef((event) => Schema.hash(event.schema));
13
12
  const processEvent = (row) => Effect.gen(function* () {
14
13
  const eventDef = getEventDef(schema, row.name);
@@ -34,10 +33,10 @@ This likely means the schema has changed in an incompatible way.
34
33
  sessionId: row.sessionId,
35
34
  });
36
35
  yield* applyEvent(eventEncoded, { skipEventlog: true });
37
- }).pipe(Effect.withSpan(`@livestore/common:rehydrateFromEventlog:processEvent`));
36
+ }).pipe(Effect.withSpan(`@livestore/common:rematerializeFromEventlog:processEvent`));
38
37
  const CHUNK_SIZE = 100;
39
38
  const stmt = dbEventlog.prepare(sql `\
40
- SELECT * FROM ${EVENTLOG_META_TABLE}
39
+ SELECT * FROM ${SystemTables.EVENTLOG_META_TABLE}
41
40
  WHERE idGlobal > $idGlobal OR (idGlobal = $idGlobal AND idClient > $idClient)
42
41
  ORDER BY idGlobal ASC, idClient ASC
43
42
  LIMIT ${CHUNK_SIZE}
@@ -61,5 +60,5 @@ LIMIT ${CHUNK_SIZE}
61
60
  processedEvents++;
62
61
  yield* onProgress({ done: processedEvents, total: eventsCount });
63
62
  })), Stream.runDrain);
64
- }).pipe(Effect.withPerformanceMeasure('@livestore/common:rehydrateFromEventlog'), Effect.withSpan('@livestore/common:rehydrateFromEventlog'));
63
+ }).pipe(Effect.withPerformanceMeasure('@livestore/common:rematerializeFromEventlog'), Effect.withSpan('@livestore/common:rematerializeFromEventlog'));
65
64
  //# sourceMappingURL=rehydrate-from-eventlog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rehydrate-from-eventlog.js","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rehydrate-from-eventlog.js","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { Effect } from '@livestore/utils/effect';
2
+ import { type SqliteDb, UnexpectedError } from './adapter-types.js';
3
+ import type { MaterializeEvent } from './leader-thread/mod.js';
4
+ import type { LiveStoreSchema } from './schema/mod.js';
5
+ export declare const rematerializeFromEventlog: ({ dbEventlog, schema, onProgress, materializeEvent, }: {
6
+ dbEventlog: SqliteDb;
7
+ schema: LiveStoreSchema;
8
+ onProgress: (_: {
9
+ done: number;
10
+ total: number;
11
+ }) => Effect.Effect<void>;
12
+ materializeEvent: MaterializeEvent;
13
+ }) => Effect.Effect<void, UnexpectedError | import("./adapter-types.js").SqliteError, never>;
14
+ //# sourceMappingURL=rematerialize-from-eventlog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rematerialize-from-eventlog.d.ts","sourceRoot":"","sources":["../src/rematerialize-from-eventlog.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,MAAM,EAA0B,MAAM,yBAAyB,CAAA;AAE/E,OAAO,EAAE,KAAK,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAY,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKhE,eAAO,MAAM,yBAAyB,GAAI,uDAOvC;IACD,UAAU,EAAE,QAAQ,CAAA;IAEpB,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACvE,gBAAgB,EAAE,gBAAgB,CAAA;CACnC,2FA6FE,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { memoizeByRef } from '@livestore/utils';
2
+ import { Chunk, Effect, Option, Schema, Stream } from '@livestore/utils/effect';
3
+ import { UnexpectedError } from './adapter-types.js';
4
+ import { EventId, getEventDef, LiveStoreEvent, SystemTables } from './schema/mod.js';
5
+ import { sql } from './util.js';
6
+ export const rematerializeFromEventlog = ({ dbEventlog,
7
+ // TODO re-use this db when bringing back the boot in-memory db implementation
8
+ // db,
9
+ schema, onProgress, materializeEvent, }) => Effect.gen(function* () {
10
+ const eventsCount = dbEventlog.select(`SELECT COUNT(*) AS count FROM ${SystemTables.EVENTLOG_META_TABLE}`)[0].count;
11
+ const hashEvent = memoizeByRef((event) => Schema.hash(event.schema));
12
+ const processEvent = (row) => Effect.gen(function* () {
13
+ const eventDef = getEventDef(schema, row.name);
14
+ if (hashEvent(eventDef.eventDef) !== row.schemaHash) {
15
+ yield* Effect.logWarning(`Schema hash mismatch for event definition ${row.name}. Trying to materialize event anyway.`);
16
+ }
17
+ const args = JSON.parse(row.argsJson);
18
+ // Checking whether the schema has changed in an incompatible way
19
+ yield* Schema.decodeUnknown(eventDef.eventDef.schema)(args).pipe(Effect.mapError((cause) => UnexpectedError.make({
20
+ cause,
21
+ note: `\
22
+ There was an error during rematerializing from the eventlog while decoding
23
+ the persisted event args for event definition "${row.name}".
24
+ This likely means the schema has changed in an incompatible way.
25
+ `,
26
+ })));
27
+ const eventEncoded = LiveStoreEvent.EncodedWithMeta.make({
28
+ id: { global: row.idGlobal, client: row.idClient },
29
+ parentId: { global: row.parentIdGlobal, client: row.parentIdClient },
30
+ name: row.name,
31
+ args,
32
+ clientId: row.clientId,
33
+ sessionId: row.sessionId,
34
+ });
35
+ yield* materializeEvent(eventEncoded, { skipEventlog: true });
36
+ }).pipe(Effect.withSpan(`@livestore/common:rematerializeFromEventlog:processEvent`));
37
+ const CHUNK_SIZE = 100;
38
+ const stmt = dbEventlog.prepare(sql `\
39
+ SELECT * FROM ${SystemTables.EVENTLOG_META_TABLE}
40
+ WHERE idGlobal > $idGlobal OR (idGlobal = $idGlobal AND idClient > $idClient)
41
+ ORDER BY idGlobal ASC, idClient ASC
42
+ LIMIT ${CHUNK_SIZE}
43
+ `);
44
+ let processedEvents = 0;
45
+ yield* Stream.unfoldChunk({ _tag: 'Initial ' }, (item) => {
46
+ // End stream if no more rows
47
+ if (Chunk.isChunk(item) && item.length === 0)
48
+ return Option.none();
49
+ const lastId = Chunk.isChunk(item)
50
+ ? Chunk.last(item).pipe(Option.map((_) => ({ global: _.idGlobal, client: _.idClient })), Option.getOrElse(() => EventId.ROOT))
51
+ : EventId.ROOT;
52
+ const nextItem = Chunk.fromIterable(stmt.select({
53
+ $idGlobal: lastId?.global,
54
+ $idClient: lastId?.client,
55
+ }));
56
+ const prevItem = Chunk.isChunk(item) ? item : Chunk.empty();
57
+ return Option.some([prevItem, nextItem]);
58
+ }).pipe(Stream.bufferChunks({ capacity: 2 }), Stream.tap((row) => Effect.gen(function* () {
59
+ yield* processEvent(row);
60
+ processedEvents++;
61
+ yield* onProgress({ done: processedEvents, total: eventsCount });
62
+ })), Stream.runDrain);
63
+ }).pipe(Effect.withPerformanceMeasure('@livestore/common:rematerializeFromEventlog'), Effect.withSpan('@livestore/common:rematerializeFromEventlog'));
64
+ //# sourceMappingURL=rematerialize-from-eventlog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rematerialize-from-eventlog.js","sourceRoot":"","sources":["../src/rematerialize-from-eventlog.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { SingleOrReadonlyArray } from '@livestore/utils';
2
2
  import { Schema } from '@livestore/utils/effect';
3
- import type { QueryBuilder } from '../query-builder/mod.js';
4
3
  import type { BindValues } from '../sql-queries/sql-queries.js';
4
+ import type { QueryBuilder } from './state/sqlite/query-builder/mod.js';
5
5
  export type EventDefMap = {
6
6
  map: Map<string | 'livestore.RawSql', EventDef.Any>;
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EventDef.d.ts","sourceRoot":"","sources":["../../src/schema/EventDef.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventDef.d.ts","sourceRoot":"","sources":["../../src/schema/EventDef.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Vitest } from '@livestore/utils/node-vitest';
1
+ import { Vitest } from '@livestore/utils-dev/node-vitest';
2
2
  import { expect } from 'vitest';
3
3
  import { EventId } from './mod.js';
4
4
  Vitest.describe('EventId', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"EventId.test.js","sourceRoot":"","sources":["../../src/schema/EventId.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IAC9B,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QACpD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QACjF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IAClF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"EventId.test.js","sourceRoot":"","sources":["../../src/schema/EventId.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IAC9B,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QACpD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;QACjF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAA;IAClF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,8 +1,8 @@
1
1
  import type { Option, Types } from '@livestore/utils/effect';
2
2
  import { Schema } from '@livestore/utils/effect';
3
3
  import { SessionIdSymbol } from '../adapter-types.js';
4
- import type { QueryBuilder } from '../query-builder/mod.js';
5
- import { SqliteDsl } from './db-schema/mod.js';
4
+ import type { QueryBuilder } from './state/sqlite/query-builder/mod.ts';
5
+ import { SqliteDsl } from './state/sqlite/db-schema/mod.ts';
6
6
  import type { EventDef, Materializer } from './EventDef.js';
7
7
  import type { TableDef, TableDefBase } from './table-def.js';
8
8
  /**
@@ -1,9 +1,9 @@
1
1
  import type { Nullable } from '@livestore/utils';
2
2
  import type { Option, Types } from '@livestore/utils/effect';
3
3
  import { Schema } from '@livestore/utils/effect';
4
- import type * as SqliteAst from '../ast/sqlite.js';
5
- import type { ColumnDefinition } from './field-defs.js';
6
- export * from './field-defs.js';
4
+ import type * as SqliteAst from '../ast/sqlite.ts';
5
+ import type { ColumnDefinition } from './field-defs.ts';
6
+ export * from './field-defs.ts';
7
7
  export type DbSchema = {
8
8
  [key: string]: TableDefinition<string, Columns>;
9
9
  };
@@ -1,3 +1,3 @@
1
- export * as SqliteDsl from './dsl/mod.js';
2
- export * as SqliteAst from './ast/sqlite.js';
1
+ export * as SqliteDsl from './dsl/mod.ts';
2
+ export * as SqliteAst from './ast/sqlite.ts';
3
3
  //# sourceMappingURL=mod.d.ts.map
@@ -1,9 +1,9 @@
1
- export * from './system-tables.js';
2
- export { SqliteAst, SqliteDsl } from './db-schema/mod.js';
1
+ export * as SystemTables from './state/sqlite/system-tables.js';
2
+ export { SqliteAst, SqliteDsl } from './state/sqlite/db-schema/mod.js';
3
3
  export * from './EventDef.js';
4
- export * from './schema-helpers.js';
4
+ export * from './state/sqlite/schema-helpers.js';
5
5
  export * from './schema.js';
6
- export * as State from './view.js';
6
+ export * as State from './state/mod.js';
7
7
  export * as LiveStoreEvent from './LiveStoreEvent.js';
8
8
  export * as EventId from './EventId.js';
9
9
  export * as Events from './events.js';
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/schema/mod.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACzD,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,KAAK,MAAM,WAAW,CAAA;AAClC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/schema/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,iCAAiC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AACtE,cAAc,eAAe,CAAA;AAC7B,cAAc,kCAAkC,CAAA;AAChD,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
@@ -1,9 +1,9 @@
1
- export * from './system-tables.js';
2
- export { SqliteAst, SqliteDsl } from './db-schema/mod.js';
1
+ export * as SystemTables from './state/sqlite/system-tables.js';
2
+ export { SqliteAst, SqliteDsl } from './state/sqlite/db-schema/mod.js';
3
3
  export * from './EventDef.js';
4
- export * from './schema-helpers.js';
4
+ export * from './state/sqlite/schema-helpers.js';
5
5
  export * from './schema.js';
6
- export * as State from './view.js';
6
+ export * as State from './state/mod.js';
7
7
  export * as LiveStoreEvent from './LiveStoreEvent.js';
8
8
  export * as EventId from './EventId.js';
9
9
  export * as Events from './events.js';
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../src/schema/mod.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACzD,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,KAAK,MAAM,WAAW,CAAA;AAClC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../src/schema/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,iCAAiC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AACtE,cAAc,eAAe,CAAA;AAC7B,cAAc,kCAAkC,CAAA;AAChD,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { TableDef, TableDefBase } from './table-def.js';
1
+ import type { TableDef, TableDefBase } from '../../table-def.js';
2
2
  export declare const getDefaultValuesEncoded: <TTableDef extends TableDef>(tableDef: TTableDef, fallbackValues?: Record<string, any>) => Record<string, any>;
3
3
  export declare const getDefaultValuesDecoded: <TTableDef extends TableDefBase>(tableDef: TTableDef, fallbackValues?: Record<string, any>) => Record<string, any>;
4
4
  //# sourceMappingURL=schema-helpers.d.ts.map
@@ -1,24 +1,25 @@
1
1
  import type { MigrationOptions } from '../adapter-types.js';
2
- import type { SqliteDsl } from './db-schema/mod.js';
3
2
  import type { EventDef, EventDefRecord, Materializer, RawSqlEvent } from './EventDef.js';
4
- import type { TableDef } from './table-def.js';
3
+ import type { SqliteDsl } from './state/sqlite/db-schema/mod.js';
4
+ import type { TableDef } from './state/sqlite/table-def.js';
5
5
  export declare const LiveStoreSchemaSymbol: unique symbol;
6
6
  export type LiveStoreSchemaSymbol = typeof LiveStoreSchemaSymbol;
7
7
  export type LiveStoreSchema<TDbSchema extends SqliteDsl.DbSchema = SqliteDsl.DbSchema, TEventsDefRecord extends EventDefRecord = EventDefRecord> = {
8
- readonly _Type: LiveStoreSchemaSymbol;
8
+ readonly LiveStoreSchemaSymbol: LiveStoreSchemaSymbol;
9
9
  /** Only used on type-level */
10
10
  readonly _DbSchemaType: TDbSchema;
11
11
  /** Only used on type-level */
12
12
  readonly _EventDefMapType: TEventsDefRecord;
13
- readonly tables: Map<string, TableDef>;
14
- /** Compound hash of all table defs etc */
15
- readonly hash: number;
16
13
  readonly state: State;
17
14
  readonly eventsDefsMap: Map<string, EventDef.AnyWithoutFn>;
18
- migrationOptions: MigrationOptions;
19
15
  };
20
16
  export type State = {
21
- readonly tables: Map<string, TableDef.Any>;
17
+ readonly sqlite: {
18
+ readonly tables: Map<string, TableDef.Any>;
19
+ readonly migrations: MigrationOptions;
20
+ /** Compound hash of all table defs etc */
21
+ readonly hash: number;
22
+ };
22
23
  readonly materializers: Map<string, Materializer>;
23
24
  };
24
25
  export type InputSchema = {
@@ -27,22 +28,19 @@ export type InputSchema = {
27
28
  };
28
29
  export declare const makeSchema: <TInputSchema extends InputSchema>(
29
30
  /** Note when using the object-notation for tables/events, the object keys are ignored and not used as table/mutation names */
30
- inputSchema: TInputSchema & {
31
- /** "hard-reset" is currently the default strategy */
32
- migrations?: MigrationOptions;
33
- }) => FromInputSchema.DeriveSchema<TInputSchema>;
31
+ inputSchema: TInputSchema) => FromInputSchema.DeriveSchema<TInputSchema>;
34
32
  export declare const getEventDef: <TSchema extends LiveStoreSchema>(schema: TSchema, eventName: string) => {
35
33
  eventDef: EventDef.AnyWithoutFn;
36
34
  materializer: Materializer;
37
35
  };
38
36
  export declare namespace FromInputSchema {
39
- export type DeriveSchema<TInputSchema extends InputSchema> = LiveStoreSchema<DbSchemaFromInputSchemaTables<TInputSchema['state']['tables']>, EventDefRecordFromInputSchemaEvents<TInputSchema['events']>>;
37
+ export type DeriveSchema<TInputSchema extends InputSchema> = LiveStoreSchema<DbSchemaFromInputSchemaTables<TInputSchema['state']['sqlite']['tables']>, EventDefRecordFromInputSchemaEvents<TInputSchema['events']>>;
40
38
  /**
41
39
  * In case of ...
42
40
  * - array: we use the table name of each array item (= table definition) as the object key
43
41
  * - object: we discard the keys of the input object and use the table name of each object value (= table definition) as the new object key
44
42
  */
45
- type DbSchemaFromInputSchemaTables<TTables extends InputSchema['state']['tables']> = TTables extends ReadonlyArray<TableDef> ? {
43
+ type DbSchemaFromInputSchemaTables<TTables extends InputSchema['state']['sqlite']['tables']> = TTables extends ReadonlyArray<TableDef> ? {
46
44
  [K in TTables[number] as K['sqliteDef']['name']]: K['sqliteDef'];
47
45
  } : TTables extends Record<string, TableDef> ? {
48
46
  [K in keyof TTables as TTables[K]['sqliteDef']['name']]: TTables[K]['sqliteDef'];
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,14 @@
1
1
  import { isReadonlyArray, shouldNeverHappen } from '@livestore/utils';
2
- import { tableIsClientDocumentTable } from './client-document-def.js';
3
- import { SqliteAst } from './db-schema/mod.js';
4
2
  import { rawSqlEvent } from './EventDef.js';
5
- import { systemTables } from './system-tables.js';
3
+ import { tableIsClientDocumentTable } from './state/sqlite/client-document-def.js';
4
+ import { stateSystemTables } from './state/sqlite/system-tables.js';
6
5
  export const LiveStoreSchemaSymbol = Symbol.for('livestore.LiveStoreSchema');
7
6
  export const makeSchema = (
8
7
  /** Note when using the object-notation for tables/events, the object keys are ignored and not used as table/mutation names */
9
8
  inputSchema) => {
10
- // const inputTables: ReadonlyArray<TableDef> = Array.isArray(inputSchema.tables)
11
- // ? inputSchema.tables
12
- // : Object.values(inputSchema.tables)
13
- // const inputTables = []
14
- // const tables = new Map<string, TableDef>()
15
- // for (const tableDef of inputTables) {
16
- // // TODO validate tables (e.g. index names are unique)
17
- // if (tables.has(tableDef.sqliteDef.ast.name)) {
18
- // shouldNeverHappen(`Duplicate table name: ${tableDef.sqliteDef.ast.name}. Please use unique names for tables.`)
19
- // }
20
- // tables.set(tableDef.sqliteDef.ast.name, tableDef)
21
- // }
22
9
  const state = inputSchema.state;
23
- const tables = inputSchema.state.tables;
24
- for (const tableDef of systemTables) {
25
- // // @ts-expect-error TODO fix type level issue
10
+ const tables = inputSchema.state.sqlite.tables;
11
+ for (const tableDef of stateSystemTables) {
26
12
  tables.set(tableDef.sqliteDef.name, tableDef);
27
13
  }
28
14
  const eventsDefsMap = new Map();
@@ -45,21 +31,12 @@ inputSchema) => {
45
31
  eventsDefsMap.set(tableDef.set.name, tableDef.set);
46
32
  }
47
33
  }
48
- const hash = SqliteAst.hash({
49
- _tag: 'dbSchema',
50
- tables: [...tables.values()].map((_) => _.sqliteDef.ast),
51
- });
52
34
  return {
53
- _Type: LiveStoreSchemaSymbol,
35
+ LiveStoreSchemaSymbol,
54
36
  _DbSchemaType: Symbol.for('livestore.DbSchemaType'),
55
37
  _EventDefMapType: Symbol.for('livestore.EventDefMapType'),
56
- // tables,
57
- // events,
58
38
  state,
59
- tables: state.tables,
60
39
  eventsDefsMap,
61
- migrationOptions: inputSchema.migrations ?? { strategy: 'from-eventlog' },
62
- hash,
63
40
  };
64
41
  };
65
42
  export const getEventDef = (schema, eventName) => {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * as SQLite from './sqlite/mod.js';
2
+ export { QueryBuilderAstSymbol, QueryBuilderTypeId } from './sqlite/query-builder/mod.js';
3
+ //# sourceMappingURL=mod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/schema/state/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * as SQLite from './sqlite/mod.js';
2
+ export { QueryBuilderAstSymbol, QueryBuilderTypeId } from './sqlite/query-builder/mod.js';
3
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/schema/state/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA"}