@livestore/common 0.3.2-dev.10 → 0.3.2-dev.12

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 (92) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/adapter-types.d.ts +3 -3
  3. package/dist/adapter-types.d.ts.map +1 -1
  4. package/dist/devtools/devtools-messages-client-session.d.ts +21 -21
  5. package/dist/devtools/devtools-messages-common.d.ts +6 -6
  6. package/dist/devtools/devtools-messages-leader.d.ts +24 -24
  7. package/dist/leader-thread/LeaderSyncProcessor.js +3 -1
  8. package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
  9. package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
  10. package/dist/leader-thread/make-leader-thread-layer.js +21 -4
  11. package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
  12. package/dist/leader-thread/shutdown-channel.d.ts +2 -2
  13. package/dist/leader-thread/shutdown-channel.d.ts.map +1 -1
  14. package/dist/leader-thread/shutdown-channel.js +2 -2
  15. package/dist/leader-thread/shutdown-channel.js.map +1 -1
  16. package/dist/materializer-helper.d.ts +3 -3
  17. package/dist/materializer-helper.d.ts.map +1 -1
  18. package/dist/materializer-helper.js +2 -2
  19. package/dist/materializer-helper.js.map +1 -1
  20. package/dist/rematerialize-from-eventlog.js +1 -1
  21. package/dist/rematerialize-from-eventlog.js.map +1 -1
  22. package/dist/schema/EventDef.d.ts +104 -178
  23. package/dist/schema/EventSequenceNumber.d.ts +5 -0
  24. package/dist/schema/EventSequenceNumber.d.ts.map +1 -1
  25. package/dist/schema/EventSequenceNumber.js +7 -2
  26. package/dist/schema/EventSequenceNumber.js.map +1 -1
  27. package/dist/schema/EventSequenceNumber.test.js +2 -2
  28. package/dist/schema/LiveStoreEvent.d.ts +1 -0
  29. package/dist/schema/LiveStoreEvent.d.ts.map +1 -1
  30. package/dist/schema/LiveStoreEvent.js +5 -0
  31. package/dist/schema/LiveStoreEvent.js.map +1 -1
  32. package/dist/schema/schema.d.ts +3 -0
  33. package/dist/schema/schema.d.ts.map +1 -1
  34. package/dist/schema/schema.js.map +1 -1
  35. package/dist/schema/state/sqlite/client-document-def.d.ts +3 -2
  36. package/dist/schema/state/sqlite/client-document-def.d.ts.map +1 -1
  37. package/dist/schema/state/sqlite/client-document-def.js +6 -4
  38. package/dist/schema/state/sqlite/client-document-def.js.map +1 -1
  39. package/dist/schema/state/sqlite/client-document-def.test.js +76 -1
  40. package/dist/schema/state/sqlite/client-document-def.test.js.map +1 -1
  41. package/dist/schema/state/sqlite/db-schema/dsl/mod.d.ts +65 -165
  42. package/dist/schema/state/sqlite/query-builder/api.d.ts +309 -560
  43. package/dist/schema/state/sqlite/query-builder/api.d.ts.map +1 -1
  44. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts +1 -0
  45. package/dist/schema/state/sqlite/query-builder/astToSql.d.ts.map +1 -1
  46. package/dist/schema/state/sqlite/query-builder/astToSql.js +8 -6
  47. package/dist/schema/state/sqlite/query-builder/astToSql.js.map +1 -1
  48. package/dist/schema/state/sqlite/table-def.d.ts +70 -152
  49. package/dist/schema-management/common.d.ts +1 -1
  50. package/dist/schema-management/common.d.ts.map +1 -1
  51. package/dist/schema-management/common.js +11 -2
  52. package/dist/schema-management/common.js.map +1 -1
  53. package/dist/schema-management/migrations.js +1 -1
  54. package/dist/schema-management/migrations.js.map +1 -1
  55. package/dist/schema-management/migrations.test.d.ts +2 -0
  56. package/dist/schema-management/migrations.test.d.ts.map +1 -0
  57. package/dist/schema-management/migrations.test.js +52 -0
  58. package/dist/schema-management/migrations.test.js.map +1 -0
  59. package/dist/sql-queries/types.d.ts +37 -133
  60. package/dist/sqlite-db-helper.d.ts +3 -1
  61. package/dist/sqlite-db-helper.d.ts.map +1 -1
  62. package/dist/sqlite-db-helper.js +16 -0
  63. package/dist/sqlite-db-helper.js.map +1 -1
  64. package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
  65. package/dist/sync/ClientSessionSyncProcessor.js +8 -7
  66. package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
  67. package/dist/sync/sync.d.ts.map +1 -1
  68. package/dist/sync/sync.js.map +1 -1
  69. package/dist/version.d.ts +1 -1
  70. package/dist/version.js +1 -1
  71. package/package.json +4 -4
  72. package/src/adapter-types.ts +3 -3
  73. package/src/leader-thread/LeaderSyncProcessor.ts +3 -1
  74. package/src/leader-thread/make-leader-thread-layer.ts +26 -7
  75. package/src/leader-thread/shutdown-channel.ts +2 -2
  76. package/src/materializer-helper.ts +5 -11
  77. package/src/rematerialize-from-eventlog.ts +2 -2
  78. package/src/schema/EventSequenceNumber.test.ts +2 -2
  79. package/src/schema/EventSequenceNumber.ts +8 -2
  80. package/src/schema/LiveStoreEvent.ts +6 -0
  81. package/src/schema/schema.ts +4 -0
  82. package/src/schema/state/sqlite/client-document-def.test.ts +89 -1
  83. package/src/schema/state/sqlite/client-document-def.ts +7 -4
  84. package/src/schema/state/sqlite/query-builder/api.ts +4 -3
  85. package/src/schema/state/sqlite/query-builder/astToSql.ts +9 -7
  86. package/src/schema-management/common.ts +10 -3
  87. package/src/schema-management/migrations.test.ts +65 -0
  88. package/src/schema-management/migrations.ts +1 -1
  89. package/src/sqlite-db-helper.ts +19 -1
  90. package/src/sync/ClientSessionSyncProcessor.ts +8 -6
  91. package/src/sync/sync.ts +2 -0
  92. package/src/version.ts +1 -1
@@ -1,147 +1,51 @@
1
- import type { Schema } from "@livestore/utils/effect";
2
- import type { Prettify } from "../../../utils/dist/mod.ts";
3
- import type { SqliteDsl } from "../schema/state/sqlite/db-schema/mod.ts";
4
- export type DecodedValuesForTableAll<
5
- TSchema extends SqliteDsl.DbSchema,
6
- TTableName extends keyof TSchema,
7
- > = {
8
- [K in keyof GetColumns<TSchema, TTableName>]: Schema.Schema.Type<
9
- GetColumn<TSchema, TTableName, K>["schema"]
10
- >;
11
- };
12
- export type DecodedValuesForTablePretty<
13
- TSchema extends SqliteDsl.DbSchema,
14
- TTableName extends keyof TSchema,
15
- > = Prettify<DecodedValuesForTable<TSchema, TTableName>>;
16
- export type DecodedValuesForTable<
17
- TSchema extends SqliteDsl.DbSchema,
18
- TTableName extends keyof TSchema,
19
- > = Partial<
20
- Pick<
21
- DecodedValuesForTableAll<TSchema, TTableName>,
22
- GetNullableColumnNamesForTable<TSchema, TTableName>
23
- >
24
- > &
25
- Omit<
26
- DecodedValuesForTableAll<TSchema, TTableName>,
27
- GetNullableColumnNamesForTable<TSchema, TTableName>
28
- >;
29
- export type DecodedValuesForTableOrNull<
30
- TSchema extends SqliteDsl.DbSchema,
31
- TTableName extends keyof TSchema,
32
- > = NullableObj<
33
- Pick<
34
- DecodedValuesForTableAll<TSchema, TTableName>,
35
- GetNullableColumnNamesForTable<TSchema, TTableName>
36
- >
37
- > &
38
- Omit<
39
- DecodedValuesForTableAll<TSchema, TTableName>,
40
- GetNullableColumnNamesForTable<TSchema, TTableName>
41
- >;
42
- export type WhereValuesForTable<
43
- TSchema extends SqliteDsl.DbSchema,
44
- TTableName extends keyof TSchema,
45
- > = PartialOrNull<{
46
- [K in keyof DecodedValuesForTableAll<
47
- TSchema,
48
- TTableName
49
- >]: WhereValueForDecoded<DecodedValuesForTableAll<TSchema, TTableName>[K]>;
1
+ import type { Prettify } from '@livestore/utils';
2
+ import type { Schema } from '@livestore/utils/effect';
3
+ import type { SqliteDsl } from '../schema/state/sqlite/db-schema/mod.ts';
4
+ export type DecodedValuesForTableAll<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = {
5
+ [K in keyof GetColumns<TSchema, TTableName>]: Schema.Schema.Type<GetColumn<TSchema, TTableName, K>['schema']>;
6
+ };
7
+ export type DecodedValuesForTablePretty<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = Prettify<DecodedValuesForTable<TSchema, TTableName>>;
8
+ export type DecodedValuesForTable<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = Partial<Pick<DecodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>> & Omit<DecodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>;
9
+ export type DecodedValuesForTableOrNull<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = NullableObj<Pick<DecodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>> & Omit<DecodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>;
10
+ export type WhereValuesForTable<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = PartialOrNull<{
11
+ [K in keyof DecodedValuesForTableAll<TSchema, TTableName>]: WhereValueForDecoded<DecodedValuesForTableAll<TSchema, TTableName>[K]>;
50
12
  }>;
51
- export type WhereValueForDecoded<TDecoded> =
52
- | TDecoded
53
- | {
54
- op: WhereOp;
55
- val: TDecoded;
56
- }
57
- | {
58
- op: "in";
59
- val: TDecoded[];
60
- };
61
- export type WhereOp = ">" | "<" | "=";
13
+ export type WhereValueForDecoded<TDecoded> = TDecoded | {
14
+ op: WhereOp;
15
+ val: TDecoded;
16
+ } | {
17
+ op: 'in';
18
+ val: TDecoded[];
19
+ };
20
+ export type WhereOp = '>' | '<' | '=';
62
21
  export declare const isValidWhereOp: (op: string) => op is WhereOp;
63
- export type EncodedValuesForTableAll<
64
- TSchema extends SqliteDsl.DbSchema,
65
- TTableName extends keyof TSchema,
66
- > = {
67
- [K in keyof GetColumns<TSchema, TTableName>]: Schema.Schema.Type<
68
- GetColumn<TSchema, TTableName, K>["schema"]
69
- >;
22
+ export type EncodedValuesForTableAll<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = {
23
+ [K in keyof GetColumns<TSchema, TTableName>]: Schema.Schema.Type<GetColumn<TSchema, TTableName, K>['schema']>;
70
24
  };
71
- export type EncodedValuesForTable<
72
- TSchema extends SqliteDsl.DbSchema,
73
- TTableName extends keyof TSchema,
74
- > = Partial<
75
- Pick<
76
- EncodedValuesForTableAll<TSchema, TTableName>,
77
- GetNullableColumnNamesForTable<TSchema, TTableName>
78
- >
79
- > &
80
- Omit<
81
- EncodedValuesForTableAll<TSchema, TTableName>,
82
- GetNullableColumnNamesForTable<TSchema, TTableName>
83
- >;
84
- export type GetNullableColumnNamesForTable<
85
- TSchema extends SqliteDsl.DbSchema,
86
- TTableName extends keyof TSchema,
87
- > = keyof {
88
- [K in keyof GetColumns<TSchema, TTableName> as GetColumn<
89
- TSchema,
90
- TTableName,
91
- K
92
- >["nullable"] extends true
93
- ? K
94
- : never]: {};
25
+ export type EncodedValuesForTable<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = Partial<Pick<EncodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>> & Omit<EncodedValuesForTableAll<TSchema, TTableName>, GetNullableColumnNamesForTable<TSchema, TTableName>>;
26
+ export type GetNullableColumnNamesForTable<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = keyof {
27
+ [K in keyof GetColumns<TSchema, TTableName> as GetColumn<TSchema, TTableName, K>['nullable'] extends true ? K : never]: {};
95
28
  };
96
- export type GetColumns<
97
- TSchema extends SqliteDsl.DbSchema,
98
- TTableName extends keyof TSchema,
99
- > = TSchema[TTableName]["columns"];
100
- export type GetColumn<
101
- TSchema extends SqliteDsl.DbSchema,
102
- TTableName extends keyof TSchema,
103
- TColumnName extends keyof TSchema[TTableName]["columns"],
104
- > = TSchema[TTableName]["columns"][TColumnName];
29
+ export type GetColumns<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema> = TSchema[TTableName]['columns'];
30
+ export type GetColumn<TSchema extends SqliteDsl.DbSchema, TTableName extends keyof TSchema, TColumnName extends keyof TSchema[TTableName]['columns']> = TSchema[TTableName]['columns'][TColumnName];
105
31
  export type DecodedValuesForColumnsAll<TColumns extends SqliteDsl.Columns> = {
106
- [K in keyof TColumns]: Schema.Schema.Type<TColumns[K]["schema"]>;
32
+ [K in keyof TColumns]: Schema.Schema.Type<TColumns[K]['schema']>;
107
33
  };
108
- export type DecodedValuesForColumns<TColumns extends SqliteDsl.Columns> =
109
- Partial<
110
- Pick<DecodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>
111
- > &
112
- Omit<
113
- DecodedValuesForColumnsAll<TColumns>,
114
- GetNullableColumnNames<TColumns>
115
- >;
34
+ export type DecodedValuesForColumns<TColumns extends SqliteDsl.Columns> = Partial<Pick<DecodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>> & Omit<DecodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>;
116
35
  export type EncodedValuesForColumnsAll<TColumns extends SqliteDsl.Columns> = {
117
- [K in keyof TColumns]: Schema.Schema.Encoded<TColumns[K]["schema"]>;
36
+ [K in keyof TColumns]: Schema.Schema.Encoded<TColumns[K]['schema']>;
118
37
  };
119
- export type EncodedValuesForColumns<TColumns extends SqliteDsl.Columns> =
120
- Partial<
121
- Pick<EncodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>
122
- > &
123
- Omit<
124
- EncodedValuesForColumnsAll<TColumns>,
125
- GetNullableColumnNames<TColumns>
126
- >;
127
- export type WhereValuesForColumns<TColumns extends SqliteDsl.Columns> =
128
- PartialOrNull<{
129
- [K in keyof EncodedValuesForColumns<TColumns>]: WhereValueForDecoded<
130
- DecodedValuesForColumnsAll<TColumns>[K]
131
- >;
132
- }>;
38
+ export type EncodedValuesForColumns<TColumns extends SqliteDsl.Columns> = Partial<Pick<EncodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>> & Omit<EncodedValuesForColumnsAll<TColumns>, GetNullableColumnNames<TColumns>>;
39
+ export type WhereValuesForColumns<TColumns extends SqliteDsl.Columns> = PartialOrNull<{
40
+ [K in keyof EncodedValuesForColumns<TColumns>]: WhereValueForDecoded<DecodedValuesForColumnsAll<TColumns>[K]>;
41
+ }>;
133
42
  export type GetNullableColumnNames<TColumns extends SqliteDsl.Columns> = keyof {
134
- [K in keyof TColumns as TColumns[K] extends SqliteDsl.ColumnDefinition<
135
- any,
136
- true
137
- >
138
- ? K
139
- : never]: unknown;
43
+ [K in keyof TColumns as TColumns[K] extends SqliteDsl.ColumnDefinition<any, true> ? K : never]: unknown;
140
44
  };
141
45
  export type PartialOrNull<T> = {
142
- [P in keyof T]?: T[P] | null;
46
+ [P in keyof T]?: T[P] | null;
143
47
  };
144
48
  export type NullableObj<T> = {
145
- [P in keyof T]: T[P] | null;
49
+ [P in keyof T]: T[P] | null;
146
50
  };
147
- //# sourceMappingURL=types.d.ts.map
51
+ //# sourceMappingURL=types.d.ts.map
@@ -1,7 +1,9 @@
1
- import type { SqliteDb } from './adapter-types.ts';
1
+ import { type SqliteDb } from './adapter-types.ts';
2
2
  import type { PreparedBindValues } from './util.ts';
3
3
  export declare const makeExecute: (execute: (queryStr: string, bindValues: PreparedBindValues | undefined, options?: {
4
4
  onRowsChanged?: (rowsChanged: number) => void;
5
5
  }) => void) => SqliteDb["execute"];
6
6
  export declare const makeSelect: <T>(select: (queryStr: string, bindValues: PreparedBindValues | undefined) => ReadonlyArray<T>) => SqliteDb["select"];
7
+ export declare const validateSnapshot: (snapshot: Uint8Array) => void;
8
+ export declare const makeExport: (exportFn: () => Uint8Array) => () => Uint8Array<ArrayBufferLike>;
7
9
  //# sourceMappingURL=sqlite-db-helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-db-helper.d.ts","sourceRoot":"","sources":["../src/sqlite-db-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAEnD,eAAO,MAAM,WAAW,GACtB,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAC1C,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,KACxD,IAAI,KACR,QAAQ,CAAC,SAAS,CAWpB,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,KACzF,QAAQ,CAAC,QAAQ,CAanB,CAAA"}
1
+ {"version":3,"file":"sqlite-db-helper.d.ts","sourceRoot":"","sources":["../src/sqlite-db-helper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,oBAAoB,CAAA;AAE/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAEnD,eAAO,MAAM,WAAW,GACtB,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,kBAAkB,GAAG,SAAS,EAC1C,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,KACxD,IAAI,KACR,QAAQ,CAAC,SAAS,CAWpB,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,KACzF,QAAQ,CAAC,QAAQ,CAanB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,UAAU,UAAU,SAUpD,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,UAAU,MAAM,UAAU,sCAIpD,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { Schema } from '@livestore/utils/effect';
2
+ import { SqliteError } from "./adapter-types.js";
2
3
  import { getResultSchema, isQueryBuilder } from "./schema/state/sqlite/query-builder/mod.js";
3
4
  export const makeExecute = (execute) => {
4
5
  return (...args) => {
@@ -26,4 +27,19 @@ export const makeSelect = (select) => {
26
27
  }
27
28
  };
28
29
  };
30
+ export const validateSnapshot = (snapshot) => {
31
+ const headerBytes = new TextDecoder().decode(snapshot.slice(0, 16));
32
+ const hasValidHeader = headerBytes.startsWith('SQLite format 3');
33
+ if (!hasValidHeader) {
34
+ throw new SqliteError({
35
+ cause: 'Invalid SQLite header',
36
+ note: `Expected header to start with 'SQLite format 3', but got: ${headerBytes}`,
37
+ });
38
+ }
39
+ };
40
+ export const makeExport = (exportFn) => () => {
41
+ const snapshot = exportFn();
42
+ validateSnapshot(snapshot);
43
+ return snapshot;
44
+ };
29
45
  //# sourceMappingURL=sqlite-db-helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-db-helper.js","sourceRoot":"","sources":["../src/sqlite-db-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAGhD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAG5F,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAIS,EACY,EAAE;IACvB,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;QACxB,MAAM,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,YAAY,CAAC,GAAG,IAAI,CAAA;QAExE,IAAI,cAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;YAC5D,OAAO,OAAO,CAAC,KAAK,EAAE,UAA2C,EAAE,mBAAmB,CAAC,CAAA;QACzF,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAA0F,EACtE,EAAE;IACtB,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;QACxB,MAAM,CAAC,sBAAsB,EAAE,eAAe,CAAC,GAAG,IAAI,CAAA;QAEtD,IAAI,cAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;YAC5D,MAAM,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAA;YAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,UAA2C,CAAC,CAAA;YAC1E,OAAO,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAA;QACxD,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"sqlite-db-helper.js","sourceRoot":"","sources":["../src/sqlite-db-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAiB,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAA;AAG5F,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAIS,EACY,EAAE;IACvB,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;QACxB,MAAM,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,YAAY,CAAC,GAAG,IAAI,CAAA;QAExE,IAAI,cAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;YAC5D,OAAO,OAAO,CAAC,KAAK,EAAE,UAA2C,EAAE,mBAAmB,CAAC,CAAA;QACzF,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,sBAAsB,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAA0F,EACtE,EAAE;IACtB,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;QACxB,MAAM,CAAC,sBAAsB,EAAE,eAAe,CAAC,GAAG,IAAI,CAAA;QAEtD,IAAI,cAAc,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC3C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;YAC5D,MAAM,YAAY,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAA;YAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,UAA2C,CAAC,CAAA;YAC1E,OAAO,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,CAAC,sBAAsB,EAAE,eAAe,CAAC,CAAA;QACxD,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAoB,EAAE,EAAE;IACvD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IACnE,MAAM,cAAc,GAAG,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAEhE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,WAAW,CAAC;YACpB,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,6DAA6D,WAAW,EAAE;SACjF,CAAC,CAAA;IACJ,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAA0B,EAAE,EAAE,CAAC,GAAG,EAAE;IAC7D,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAA;IAC3B,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC1B,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ClientSessionSyncProcessor.d.ts","sourceRoot":"","sources":["../../src/sync/ClientSessionSyncProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,MAAM,EAEN,MAAM,EAEN,KAAK,OAAO,EACZ,MAAM,EACN,KAAK,KAAK,EAEV,YAAY,EACb,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE1C,OAAO,EAAE,KAAK,aAAa,EAAa,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAEzF,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACpE,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,8BAA8B,GAAI,qHAU5C;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACrC,gBAAgB,EAAE,CAChB,YAAY,EAAE,cAAc,CAAC,UAAU,EACvC,OAAO,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAC;QAAC,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAAE,KAC1G;QACH,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QACxB,gBAAgB,EAAE;YAAE,IAAI,EAAE,kBAAkB,CAAC;YAAC,IAAI,EAAE,UAAU,CAAC;YAAC,KAAK,EAAE,GAAG,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,CAAA;QACpH,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KACxC,CAAA;IACD,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,aAAa,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IAC5C,IAAI,EAAE,IAAI,CAAC,IAAI,CAAA;IACf,MAAM,EAAE;QACN,mBAAmB,EAAE,MAAM,CAAA;QAC3B,UAAU,CAAC,EAAE,0CAA0C,CAAA;KACxD,CAAA;IACD;;;OAGG;IACH,qBAAqB,EAAE,OAAO,CAAA;CAC/B,KAAG,0BA8RH,CAAA;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,CACJ,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,iBAAiB,CAAC,EACtD,OAAO,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAA;KAAE,KACnC;QACH,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;KACzB,CAAA;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IACzD,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,IAAI,CAAA;QACjB,SAAS,EAAE,MAAM;YACf,WAAW,EAAE,MAAM,CAAA;YACnB,YAAY,EAAE,MAAM,CAAA;SACrB,CAAA;KACF,CAAA;CACF;AAKD,eAAO,MAAM,0CAA0C;;;;;;;;EAQrD,CAAA;AACF,KAAK,0CAA0C,GAAG,OAAO,0CAA0C,CAAC,IAAI,CAAA"}
1
+ {"version":3,"file":"ClientSessionSyncProcessor.d.ts","sourceRoot":"","sources":["../../src/sync/ClientSessionSyncProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,MAAM,EAGN,MAAM,EAEN,KAAK,OAAO,EACZ,MAAM,EACN,KAAK,KAAK,EAEV,YAAY,EACb,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE1C,OAAO,EAAE,KAAK,aAAa,EAAa,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAEzF,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACpE,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,8BAA8B,GAAI,qHAU5C;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,aAAa,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACrC,gBAAgB,EAAE,CAChB,YAAY,EAAE,cAAc,CAAC,UAAU,EACvC,OAAO,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAC;QAAC,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAAE,KAC1G;QACH,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QACxB,gBAAgB,EAAE;YAAE,IAAI,EAAE,kBAAkB,CAAC;YAAC,IAAI,EAAE,UAAU,CAAC;YAAC,KAAK,EAAE,GAAG,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,GAAG;YAAE,IAAI,EAAE,OAAO,CAAA;SAAE,CAAA;QACpH,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KACxC,CAAA;IACD,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,KAAK,IAAI,CAAA;IACzC,aAAa,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IAC5C,IAAI,EAAE,IAAI,CAAC,IAAI,CAAA;IACf,MAAM,EAAE;QACN,mBAAmB,EAAE,MAAM,CAAA;QAC3B,UAAU,CAAC,EAAE,0CAA0C,CAAA;KACxD,CAAA;IACD;;;OAGG;IACH,qBAAqB,EAAE,OAAO,CAAA;CAC/B,KAAG,0BA8RH,CAAA;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,CACJ,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,iBAAiB,CAAC,EACtD,OAAO,EAAE;QAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAA;KAAE,KACnC;QACH,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;KACzB,CAAA;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD;;OAEG;IACH,SAAS,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IACzD,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,IAAI,CAAA;QACjB,SAAS,EAAE,MAAM;YACf,WAAW,EAAE,MAAM,CAAA;YACnB,YAAY,EAAE,MAAM,CAAA;SACrB,CAAA;KACF,CAAA;CACF;AAMD,eAAO,MAAM,0CAA0C;;;;;;;;EAQrD,CAAA;AACF,KAAK,0CAA0C,GAAG,OAAO,0CAA0C,CAAC,IAAI,CAAA"}
@@ -1,6 +1,6 @@
1
1
  /// <reference lib="dom" />
2
2
  import { LS_DEV, shouldNeverHappen, TRACE_VERBOSE } from '@livestore/utils';
3
- import { BucketQueue, Effect, FiberHandle, Option, Queue, Schema, Stream, Subscribable, } from '@livestore/utils/effect';
3
+ import { BucketQueue, Effect, Exit, FiberHandle, Option, Queue, Schema, Stream, Subscribable, } from '@livestore/utils/effect';
4
4
  import * as otel from '@opentelemetry/api';
5
5
  import { SyncError } from "../adapter-types.js";
6
6
  import * as EventSequenceNumber from "../schema/EventSequenceNumber.js";
@@ -204,7 +204,7 @@ export const makeClientSessionSyncProcessor = ({ schema, clientSession, runtime,
204
204
  event.meta.materializerHashSession = materializerHash;
205
205
  }
206
206
  refreshTables(writeTables);
207
- }).pipe(Effect.tapCauseLogPretty, Effect.catchAllCause((cause) => clientSession.shutdown(cause)))), Stream.runDrain, Effect.forever, // NOTE Whenever the leader changes, we need to re-start the stream
207
+ }).pipe(Effect.tapCauseLogPretty, Effect.catchAllCause((cause) => clientSession.shutdown(Exit.failCause(cause))))), Stream.runDrain, Effect.forever, // NOTE Whenever the leader changes, we need to re-start the stream
208
208
  Effect.interruptible, Effect.withSpan('client-session-sync-processor:pull'), Effect.tapCauseLogPretty, Effect.forkScoped);
209
209
  });
210
210
  return {
@@ -234,13 +234,14 @@ export const makeClientSessionSyncProcessor = ({ schema, clientSession, runtime,
234
234
  };
235
235
  // TODO turn this into a build-time "macro" so all simulation snippets are removed for production builds
236
236
  const SIMULATION_ENABLED = true;
237
+ // Warning: High values for the simulation params can lead to very long test runs since those get multiplied with the number of events
237
238
  export const ClientSessionSyncProcessorSimulationParams = Schema.Struct({
238
239
  pull: Schema.Struct({
239
- '1_before_leader_push_fiber_interrupt': Schema.Int.pipe(Schema.between(0, 1000)),
240
- '2_before_leader_push_queue_clear': Schema.Int.pipe(Schema.between(0, 1000)),
241
- '3_before_rebase_rollback': Schema.Int.pipe(Schema.between(0, 1000)),
242
- '4_before_leader_push_queue_offer': Schema.Int.pipe(Schema.between(0, 1000)),
243
- '5_before_leader_push_fiber_run': Schema.Int.pipe(Schema.between(0, 1000)),
240
+ '1_before_leader_push_fiber_interrupt': Schema.Int.pipe(Schema.between(0, 25)),
241
+ '2_before_leader_push_queue_clear': Schema.Int.pipe(Schema.between(0, 25)),
242
+ '3_before_rebase_rollback': Schema.Int.pipe(Schema.between(0, 25)),
243
+ '4_before_leader_push_queue_offer': Schema.Int.pipe(Schema.between(0, 25)),
244
+ '5_before_leader_push_fiber_run': Schema.Int.pipe(Schema.between(0, 25)),
244
245
  }),
245
246
  });
246
247
  //# sourceMappingURL=ClientSessionSyncProcessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientSessionSyncProcessor.js","sourceRoot":"","sources":["../../src/sync/ClientSessionSyncProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClientSessionSyncProcessor.js","sourceRoot":"","sources":["../../src/sync/ClientSessionSyncProcessor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzG,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,KAAK,mBAAmB,MAAM,kCAAkC,CAAA;AACvE,OAAO,KAAK,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAElE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAA;IACrC,gCAAgC;IAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;;;;SAQK;IACL,WAAW,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,sBAAsB,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,IAAI,CACrE,IAAI,EAAE,eAAe,KAClB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;AAQpG,MAAM,MAAM,WAAW,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,IAAI;IAC1D;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe,EAAE,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IACnG,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,mBAAmB,CAAC,mBAAmB,CAAA;QAC/C,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;KACvC,CAAC,KACC,MAAM,CAAC,MAAM,CAChB;QACE,KAAK,EAAE,aAAa,CAAC;YACnB,YAAY,EAAE,cAAc,CAAC,gBAAgB,CAAA;YAC7C,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;SACvC,CAAC,CAAA;QACF,SAAS,EAAE,MAAM,CAAA;KAClB,EACD,cAAc,GAAG,gBAAgB,EACjC,UAAU,CAAC,UAAU,CACtB,CAAA;IAED,IAAI,EAAE;IACJ;;;;SAIK;IACL,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAClD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;IAClF,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IACrD;;OAEG;IACH,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;CACnF,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG;;;;;;;;;;;AAGjG,qBAAa,gBAAiB,SAAQ,qBAUpC;CAAG;;;;;;AAGL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;;;;;;;;;;;;;;;AAGL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzG,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,KAAK,mBAAmB,MAAM,kCAAkC,CAAA;AACvE,OAAO,KAAK,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAElE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAA;IACrC,gCAAgC;IAChC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC;;;;;;;;SAQK;IACL,WAAW,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAA;CACpC,CAAA;AAGD,MAAM,MAAM,sBAAsB,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,IAAI,CACrE,IAAI,EAAE,eAAe,KAClB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;AASpG,MAAM,MAAM,WAAW,CAAC,aAAa,GAAG,MAAM,CAAC,SAAS,IAAI;IAC1D;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe,EAAE,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;IACnG,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,mBAAmB,CAAC,mBAAmB,CAAA;QAC/C,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;KACvC,CAAC,KACC,MAAM,CAAC,MAAM,CAChB;QACE,KAAK,EAAE,aAAa,CAAC;YACnB,YAAY,EAAE,cAAc,CAAC,gBAAgB,CAAA;YAC7C,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;SACvC,CAAC,CAAA;QACF,SAAS,EAAE,MAAM,CAAA;KAClB,EACD,cAAc,GAAG,gBAAgB,EACjC,UAAU,CAAC,UAAU,CACtB,CAAA;IAED,IAAI,EAAE;IACJ;;;;SAIK;IACL,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAClD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAC,CAAA;IAClF,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;IACrD;;OAEG;IACH,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAA;CACnF,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG;;;;;;;;;;;AAGjG,qBAAa,gBAAiB,SAAQ,qBAUpC;CAAG;;;;;;AAGL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;;;;;;;;;;;;;;;AAGL,qBAAa,gBAAiB,SAAQ,qBAKpC;CAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAIhD,OAAO,KAAK,mBAAmB,MAAM,kCAAkC,CAAA;AA2EvE,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AAEjG,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,MAAM,EAAE,MAAM,CAAC,KAAK,CAClB,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE;QAChC,OAAO,EAAE,MAAM,CAAC,MAAM;KACvB,CAAC,EACF,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE;QACjC,kBAAkB,EAAE,MAAM,CAAC,MAAM;QACjC,WAAW,EAAE,MAAM,CAAC,MAAM;KAC3B,CAAC,CACH;CACF,CAAC;CAAG;AAEL,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG;AAEL,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,kBAAkB,EAAE,mBAAmB,CAAC,mBAAmB;IAC3D,WAAW,EAAE,mBAAmB,CAAC,mBAAmB;IACpD,4EAA4E;IAC5E,iCAAiC;CAClC,CAAC;CAAG"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAIhD,OAAO,KAAK,mBAAmB,MAAM,kCAAkC,CAAA;AA6EvE,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AAEjG,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,MAAM,EAAE,MAAM,CAAC,KAAK,CAClB,MAAM,CAAC,YAAY,CAAC,YAAY,EAAE;QAChC,OAAO,EAAE,MAAM,CAAC,MAAM;KACvB,CAAC,EACF,MAAM,CAAC,YAAY,CAAC,aAAa,EAAE;QACjC,kBAAkB,EAAE,MAAM,CAAC,MAAM;QACjC,WAAW,EAAE,MAAM,CAAC,MAAM;KAC3B,CAAC,CACH;CACF,CAAC;CAAG;AAEL,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG;AAEL,mDAAmD;AACnD,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,kBAAkB,EAAE,mBAAmB,CAAC,mBAAmB;IAC3D,WAAW,EAAE,mBAAmB,CAAC,mBAAmB;IACpD,4EAA4E;IAC5E,iCAAiC;CAClC,CAAC;CAAG"}
package/dist/version.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const liveStoreVersion: "0.3.2-dev.10";
1
+ export declare const liveStoreVersion: "0.3.2-dev.12";
2
2
  /**
3
3
  * This version number is incremented whenever the internal storage format changes in a breaking way.
4
4
  * Whenever this version changes, LiveStore will start with fresh database files. Old database files are not deleted.
package/dist/version.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // TODO bring back when Expo and Playwright supports `with` imports
2
2
  // import packageJson from '../package.json' with { type: 'json' }
3
3
  // export const liveStoreVersion = packageJson.version
4
- export const liveStoreVersion = '0.3.2-dev.10';
4
+ export const liveStoreVersion = '0.3.2-dev.12';
5
5
  /**
6
6
  * This version number is incremented whenever the internal storage format changes in a breaking way.
7
7
  * Whenever this version changes, LiveStore will start with fresh database files. Old database files are not deleted.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/common",
3
- "version": "0.3.2-dev.10",
3
+ "version": "0.3.2-dev.12",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -16,12 +16,12 @@
16
16
  "graphology": "0.26.0-alpha1",
17
17
  "graphology-dag": "0.4.1",
18
18
  "graphology-types": "0.24.8",
19
- "@livestore/utils": "0.3.2-dev.10",
20
- "@livestore/webmesh": "0.3.2-dev.10"
19
+ "@livestore/utils": "0.3.2-dev.12",
20
+ "@livestore/webmesh": "0.3.2-dev.12"
21
21
  },
22
22
  "devDependencies": {
23
23
  "vitest": "3.2.4",
24
- "@livestore/utils-dev": "0.3.2-dev.10"
24
+ "@livestore/utils-dev": "0.3.2-dev.12"
25
25
  },
26
26
  "files": [
27
27
  "package.json",
@@ -1,6 +1,6 @@
1
1
  import {
2
- type Cause,
3
2
  type Effect,
3
+ type Exit,
4
4
  type Queue,
5
5
  Schema,
6
6
  type Scope,
@@ -27,7 +27,7 @@ export interface ClientSession {
27
27
  sessionId: string
28
28
  /** Status info whether current session is leader or not */
29
29
  lockStatus: SubscriptionRef.SubscriptionRef<LockStatus>
30
- shutdown: (cause: Cause.Cause<UnexpectedError | IntentionalShutdownCause | SyncError>) => Effect.Effect<void>
30
+ shutdown: (cause: Exit.Exit<IntentionalShutdownCause, UnexpectedError | SyncError>) => Effect.Effect<void>
31
31
  /** A proxy API to communicate with the leader thread */
32
32
  leaderThread: ClientSessionLeaderThreadProxy
33
33
  /** A unique identifier for the current instance of the client session. Used for debugging purposes. */
@@ -119,7 +119,7 @@ export interface AdapterArgs {
119
119
  devtoolsEnabled: boolean
120
120
  debugInstanceId: string
121
121
  bootStatusQueue: Queue.Queue<BootStatus>
122
- shutdown: (cause: Cause.Cause<any>) => Effect.Effect<void>
122
+ shutdown: (exit: Exit.Exit<IntentionalShutdownCause, UnexpectedError | SyncError>) => Effect.Effect<void>
123
123
  connectDevtoolsToStore: ConnectDevtoolsToStore
124
124
  /**
125
125
  * Payload that will be passed to the sync backend when connecting
@@ -700,7 +700,9 @@ const backgroundBackendPulling = ({
700
700
  batch.map((_) =>
701
701
  LiveStoreEvent.EncodedWithMeta.fromGlobal(_.eventEncoded, {
702
702
  syncMetadata: _.metadata,
703
- materializerHashLeader: hashMaterializerResult(_.eventEncoded),
703
+ // TODO we can't really know the materializer result here yet beyond the first event batch item as we need to materialize it one by one first
704
+ // This is a bug and needs to be fixed https://github.com/livestorejs/livestore/issues/503#issuecomment-3114533165
705
+ materializerHashLeader: hashMaterializerResult(LiveStoreEvent.encodedFromGlobal(_.eventEncoded)),
704
706
  materializerHashSession: Option.none(),
705
707
  }),
706
708
  ),
@@ -6,7 +6,7 @@ import type { BootStatus, MakeSqliteDb, SqliteDb, SqliteError } from '../adapter
6
6
  import { UnexpectedError } from '../adapter-types.ts'
7
7
  import type * as Devtools from '../devtools/mod.ts'
8
8
  import type { LiveStoreSchema } from '../schema/mod.ts'
9
- import { EventSequenceNumber, LiveStoreEvent } from '../schema/mod.ts'
9
+ import { EventSequenceNumber, LiveStoreEvent, SystemTables } from '../schema/mod.ts'
10
10
  import type { InvalidPullError, IsOfflineError, SyncOptions } from '../sync/sync.ts'
11
11
  import { SyncState } from '../sync/syncstate.ts'
12
12
  import { sql } from '../util.ts'
@@ -66,13 +66,10 @@ export const makeLeaderThreadLayer = ({
66
66
  Effect.gen(function* () {
67
67
  const bootStatusQueue = yield* Queue.unbounded<BootStatus>().pipe(Effect.acquireRelease(Queue.shutdown))
68
68
 
69
- // TODO do more validation here than just checking the count of tables
70
- // Either happens on initial boot or if schema changes
71
- const dbEventlogMissing =
72
- dbEventlog.select<{ count: number }>(sql`select count(*) as count from sqlite_master`)[0]!.count === 0
69
+ const dbEventlogMissing = !hasEventlogTables(dbEventlog)
73
70
 
74
- const dbStateMissing =
75
- dbState.select<{ count: number }>(sql`select count(*) as count from sqlite_master`)[0]!.count === 0
71
+ // Either happens on initial boot or if schema changes
72
+ const dbStateMissing = !hasStateTables(dbState)
76
73
 
77
74
  const syncBackend =
78
75
  syncOptions?.backend === undefined
@@ -158,6 +155,28 @@ export const makeLeaderThreadLayer = ({
158
155
  Layer.unwrapScoped,
159
156
  )
160
157
 
158
+ const hasEventlogTables = (db: SqliteDb) => {
159
+ const tableNames = new Set(db.select<{ name: string }>(sql`select name from sqlite_master`).map((_) => _.name))
160
+ const eventlogTables = new Set(SystemTables.eventlogSystemTables.map((_) => _.sqliteDef.name))
161
+ return isSubsetOf(eventlogTables, tableNames)
162
+ }
163
+
164
+ const hasStateTables = (db: SqliteDb) => {
165
+ const tableNames = new Set(db.select<{ name: string }>(sql`select name from sqlite_master`).map((_) => _.name))
166
+ const stateTables = new Set(SystemTables.stateSystemTables.map((_) => _.sqliteDef.name))
167
+ return isSubsetOf(stateTables, tableNames)
168
+ }
169
+
170
+ const isSubsetOf = (a: Set<string>, b: Set<string>): boolean => {
171
+ for (const item of a) {
172
+ if (!b.has(item)) {
173
+ return false
174
+ }
175
+ }
176
+
177
+ return true
178
+ }
179
+
161
180
  const getInitialSyncState = ({
162
181
  dbEventlog,
163
182
  dbState,
@@ -1,9 +1,9 @@
1
1
  import type { WebChannel } from '@livestore/utils/effect'
2
2
  import { Schema } from '@livestore/utils/effect'
3
3
 
4
- import { IntentionalShutdownCause, UnexpectedError } from '../index.ts'
4
+ import { IntentionalShutdownCause, SyncError, UnexpectedError } from '../index.ts'
5
5
 
6
- export class All extends Schema.Union(IntentionalShutdownCause, UnexpectedError) {}
6
+ export class All extends Schema.Union(IntentionalShutdownCause, UnexpectedError, SyncError) {}
7
7
 
8
8
  /**
9
9
  * Used internally by an adapter to shutdown gracefully.
@@ -24,14 +24,8 @@ export const getExecStatementsFromMaterializer = ({
24
24
  dbState: SqliteDb
25
25
  /** Both encoded and decoded events are supported to reduce the number of times we need to decode/encode */
26
26
  event:
27
- | {
28
- decoded: LiveStoreEvent.AnyDecoded | LiveStoreEvent.PartialAnyDecoded
29
- encoded: undefined
30
- }
31
- | {
32
- decoded: undefined
33
- encoded: LiveStoreEvent.AnyEncoded | LiveStoreEvent.PartialAnyEncoded
34
- }
27
+ | { decoded: LiveStoreEvent.AnyDecoded; encoded: undefined }
28
+ | { decoded: undefined; encoded: LiveStoreEvent.AnyEncoded }
35
29
  }): ReadonlyArray<{
36
30
  statementSql: string
37
31
  bindValues: PreparedBindValues
@@ -85,7 +79,7 @@ export const getExecStatementsFromMaterializer = ({
85
79
 
86
80
  export const makeMaterializerHash =
87
81
  ({ schema, dbState }: { schema: LiveStoreSchema; dbState: SqliteDb }) =>
88
- (event: LiveStoreEvent.AnyEncodedGlobal): Option.Option<number> => {
82
+ (event: LiveStoreEvent.AnyEncoded): Option.Option<number> => {
89
83
  if (isDevEnv()) {
90
84
  const { eventDef, materializer } = getEventDef(schema, event.name)
91
85
  const materializerResults = getExecStatementsFromMaterializer({
@@ -119,8 +113,8 @@ const fromMaterializerResult = (
119
113
  return materializerResult.flatMap(fromMaterializerResult)
120
114
  }
121
115
  if (isQueryBuilder(materializerResult)) {
122
- const { query, bindValues } = materializerResult.asSql()
123
- return [{ sql: query, bindValues: bindValues as BindValues, writeTables: undefined }]
116
+ const { query, bindValues, usedTables } = materializerResult.asSql()
117
+ return [{ sql: query, bindValues: bindValues as BindValues, writeTables: usedTables }]
124
118
  } else if (typeof materializerResult === 'string') {
125
119
  return [{ sql: materializerResult, bindValues: {} as BindValues, writeTables: undefined }]
126
120
  } else {
@@ -87,9 +87,9 @@ LIMIT ${CHUNK_SIZE}
87
87
  let processedEvents = 0
88
88
 
89
89
  yield* Stream.unfoldChunk<
90
- Chunk.Chunk<SystemTables.EventlogMetaRow> | { _tag: 'Initial ' },
90
+ Chunk.Chunk<SystemTables.EventlogMetaRow> | { _tag: 'Initial' },
91
91
  SystemTables.EventlogMetaRow
92
- >({ _tag: 'Initial ' }, (item) => {
92
+ >({ _tag: 'Initial' }, (item) => {
93
93
  // End stream if no more rows
94
94
  if (Chunk.isChunk(item) && item.length === 0) return Option.none()
95
95
 
@@ -23,7 +23,7 @@ Vitest.describe('EventSequenceNumber', () => {
23
23
  expect(EventSequenceNumber.nextPair({ seqNum: e_0_0, isClient: false, rebaseGeneration: 1 }).seqNum).toStrictEqual({
24
24
  global: 1,
25
25
  client: 0,
26
- rebaseGeneration: 1,
26
+ rebaseGeneration: 0,
27
27
  })
28
28
  expect(EventSequenceNumber.nextPair({ seqNum: e_0_0, isClient: true, rebaseGeneration: 1 }).seqNum).toStrictEqual({
29
29
  global: 0,
@@ -35,7 +35,7 @@ Vitest.describe('EventSequenceNumber', () => {
35
35
  expect(EventSequenceNumber.nextPair({ seqNum: e_0_0_g1, isClient: false }).seqNum).toStrictEqual({
36
36
  global: 1,
37
37
  client: 0,
38
- rebaseGeneration: 2,
38
+ rebaseGeneration: 0,
39
39
  })
40
40
  })
41
41
 
@@ -122,8 +122,14 @@ export const fromString = (str: string): EventSequenceNumber => {
122
122
  }
123
123
  }
124
124
 
125
+ export const fromGlobal = (seqNum: GlobalEventSequenceNumber) => ({
126
+ global: seqNum,
127
+ client: clientDefault,
128
+ rebaseGeneration: rebaseGenerationDefault,
129
+ })
130
+
125
131
  export const isEqual = (a: EventSequenceNumber, b: EventSequenceNumber) =>
126
- a.global === b.global && a.client === b.client
132
+ a.global === b.global && a.client === b.client && a.rebaseGeneration === b.rebaseGeneration
127
133
 
128
134
  export type EventSequenceNumberPair = { seqNum: EventSequenceNumber; parentSeqNum: EventSequenceNumber }
129
135
 
@@ -185,7 +191,7 @@ export const nextPair = ({
185
191
  seqNum: {
186
192
  global: (seqNum.global + 1) as any as GlobalEventSequenceNumber,
187
193
  client: clientDefault,
188
- rebaseGeneration: rebaseGeneration ?? seqNum.rebaseGeneration,
194
+ rebaseGeneration: rebaseGenerationDefault,
189
195
  },
190
196
  // NOTE we always point to `client: 0` for non-clientOnly events
191
197
  parentSeqNum: { global: seqNum.global, client: clientDefault, rebaseGeneration: seqNum.rebaseGeneration },
@@ -152,6 +152,12 @@ export const makeEventDefPartialSchema = <TSchema extends LiveStoreSchema>(
152
152
 
153
153
  export const makeEventDefSchemaMemo = memoizeByRef(makeEventDefSchema)
154
154
 
155
+ export const encodedFromGlobal = (event: AnyEncodedGlobal): AnyEncoded => ({
156
+ ...event,
157
+ seqNum: EventSequenceNumber.fromGlobal(event.seqNum),
158
+ parentSeqNum: EventSequenceNumber.fromGlobal(event.parentSeqNum),
159
+ })
160
+
155
161
  /** Equivalent to AnyEncoded but with a meta field and some convenience methods */
156
162
  export class EncodedWithMeta extends Schema.Class<EncodedWithMeta>('LiveStoreEvent.EncodedWithMeta')({
157
163
  name: Schema.String,