@livestore/common 0.0.48-dev.0 → 0.0.48-dev.2

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 (47) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/__tests__/fixture.d.ts +8 -2
  3. package/dist/__tests__/fixture.d.ts.map +1 -1
  4. package/dist/derived-mutations.d.ts +22 -26
  5. package/dist/derived-mutations.d.ts.map +1 -1
  6. package/dist/derived-mutations.js +5 -4
  7. package/dist/derived-mutations.js.map +1 -1
  8. package/dist/schema/index.d.ts +1 -1
  9. package/dist/schema/index.d.ts.map +1 -1
  10. package/dist/schema/index.js +2 -1
  11. package/dist/schema/index.js.map +1 -1
  12. package/dist/schema/mutations.d.ts +12 -1
  13. package/dist/schema/mutations.d.ts.map +1 -1
  14. package/dist/schema/mutations.js +2 -1
  15. package/dist/schema/mutations.js.map +1 -1
  16. package/dist/schema/system-tables.d.ts +207 -232
  17. package/dist/schema/system-tables.d.ts.map +1 -1
  18. package/dist/schema/system-tables.js +1 -1
  19. package/dist/schema/system-tables.js.map +1 -1
  20. package/dist/schema/table-def.d.ts +41 -7
  21. package/dist/schema/table-def.d.ts.map +1 -1
  22. package/dist/schema/table-def.js +8 -2
  23. package/dist/schema/table-def.js.map +1 -1
  24. package/dist/schema-management/common.d.ts +8 -0
  25. package/dist/schema-management/common.d.ts.map +1 -1
  26. package/dist/schema-management/migrations.d.ts +3 -0
  27. package/dist/schema-management/migrations.d.ts.map +1 -1
  28. package/dist/schema-management/migrations.js +24 -3
  29. package/dist/schema-management/migrations.js.map +1 -1
  30. package/dist/schema-management/validate-mutation-defs.d.ts +1 -11
  31. package/dist/schema-management/validate-mutation-defs.d.ts.map +1 -1
  32. package/dist/schema-management/validate-mutation-defs.js +0 -26
  33. package/dist/schema-management/validate-mutation-defs.js.map +1 -1
  34. package/dist/sync/sync.d.ts +4 -0
  35. package/dist/sync/sync.d.ts.map +1 -1
  36. package/dist/sync/sync.js +6 -2
  37. package/dist/sync/sync.js.map +1 -1
  38. package/package.json +3 -3
  39. package/src/derived-mutations.ts +55 -15
  40. package/src/schema/index.ts +2 -2
  41. package/src/schema/mutations.ts +13 -0
  42. package/src/schema/system-tables.ts +1 -1
  43. package/src/schema/table-def.ts +44 -8
  44. package/src/schema-management/common.ts +11 -0
  45. package/src/schema-management/migrations.ts +42 -4
  46. package/src/schema-management/validate-mutation-defs.ts +1 -49
  47. package/src/sync/sync.ts +6 -2
@@ -2,247 +2,222 @@ import { Schema } from '@livestore/utils/effect';
2
2
  import { SqliteDsl } from 'effect-db-schema';
3
3
  import type { FromTable } from './table-def.js';
4
4
  export declare const SCHEMA_META_TABLE = "__livestore_schema";
5
- export declare const schemaMetaTable: {
6
- sqliteDef: SqliteDsl.TableDefinition<"__livestore_schema", {
7
- tableName: {
8
- columnType: "text";
9
- schema: Schema.Schema<string, string, never>;
10
- default: import("effect/Option").None<never>;
11
- nullable: false;
12
- primaryKey: true;
13
- };
14
- schemaHash: {
15
- columnType: "integer";
16
- schema: Schema.Schema<number, number, never>;
17
- default: import("effect/Option").None<never>;
18
- nullable: false;
19
- primaryKey: false;
20
- };
21
- updatedAt: {
22
- columnType: "text";
23
- schema: Schema.Schema<string, string, never>;
24
- default: import("effect/Option").None<never>;
25
- nullable: false;
26
- primaryKey: false;
27
- };
28
- }>;
5
+ export declare const schemaMetaTable: import("./table-def.js").TableDef<SqliteDsl.TableDefinition<"__livestore_schema", {
6
+ tableName: {
7
+ columnType: "text";
8
+ schema: Schema.Schema<string, string, never>;
9
+ default: import("effect/Option").None<never>;
10
+ nullable: false;
11
+ primaryKey: true;
12
+ };
13
+ schemaHash: {
14
+ columnType: "integer";
15
+ schema: Schema.Schema<number, number, never>;
16
+ default: import("effect/Option").None<never>;
17
+ nullable: false;
18
+ primaryKey: false;
19
+ };
20
+ updatedAt: {
21
+ columnType: "text";
22
+ schema: Schema.Schema<string, string, never>;
23
+ default: import("effect/Option").None<never>;
24
+ nullable: false;
25
+ primaryKey: false;
26
+ };
27
+ }>, false, {
28
+ isSingleton: false;
29
+ dynamicRegistration: false;
30
+ disableAutomaticIdColumn: true;
31
+ deriveMutations: never;
29
32
  isSingleColumn: false;
30
- options: {
31
- isSingleton: false;
32
- dynamicRegistration: false;
33
- disableAutomaticIdColumn: true;
34
- deriveMutations: false;
35
- isSingleColumn: false;
36
- };
37
- schema: Schema.Schema<{
38
- readonly tableName: string;
39
- readonly schemaHash: number;
40
- readonly updatedAt: string;
41
- }, {
42
- readonly tableName: string;
43
- readonly schemaHash: number;
44
- readonly updatedAt: string;
45
- }, never>;
46
- };
33
+ }, Schema.Schema<{
34
+ readonly tableName: string;
35
+ readonly schemaHash: number;
36
+ readonly updatedAt: string;
37
+ }, {
38
+ readonly tableName: string;
39
+ readonly schemaHash: number;
40
+ readonly updatedAt: string;
41
+ }, never>>;
47
42
  export type SchemaMetaRow = FromTable.RowDecoded<typeof schemaMetaTable>;
48
43
  export declare const SCHEMA_MUTATIONS_META_TABLE = "__livestore_schema_mutations";
49
- export declare const schemaMutationsMetaTable: {
50
- sqliteDef: SqliteDsl.TableDefinition<"__livestore_schema_mutations", {
51
- mutationName: {
52
- columnType: "text";
53
- schema: Schema.Schema<string, string, never>;
54
- default: import("effect/Option").None<never>;
55
- nullable: false;
56
- primaryKey: true;
57
- };
58
- schemaHash: {
59
- columnType: "integer";
60
- schema: Schema.Schema<number, number, never>;
61
- default: import("effect/Option").None<never>;
62
- nullable: false;
63
- primaryKey: false;
64
- };
65
- updatedAt: {
66
- columnType: "text";
67
- schema: Schema.Schema<string, string, never>;
68
- default: import("effect/Option").None<never>;
69
- nullable: false;
70
- primaryKey: false;
71
- };
72
- }>;
44
+ export declare const schemaMutationsMetaTable: import("./table-def.js").TableDef<SqliteDsl.TableDefinition<"__livestore_schema_mutations", {
45
+ mutationName: {
46
+ columnType: "text";
47
+ schema: Schema.Schema<string, string, never>;
48
+ default: import("effect/Option").None<never>;
49
+ nullable: false;
50
+ primaryKey: true;
51
+ };
52
+ schemaHash: {
53
+ columnType: "integer";
54
+ schema: Schema.Schema<number, number, never>;
55
+ default: import("effect/Option").None<never>;
56
+ nullable: false;
57
+ primaryKey: false;
58
+ };
59
+ updatedAt: {
60
+ columnType: "text";
61
+ schema: Schema.Schema<string, string, never>;
62
+ default: import("effect/Option").None<never>;
63
+ nullable: false;
64
+ primaryKey: false;
65
+ };
66
+ }>, false, {
67
+ isSingleton: false;
68
+ dynamicRegistration: false;
69
+ disableAutomaticIdColumn: true;
70
+ deriveMutations: never;
73
71
  isSingleColumn: false;
74
- options: {
75
- isSingleton: false;
76
- dynamicRegistration: false;
77
- disableAutomaticIdColumn: true;
78
- deriveMutations: false;
79
- isSingleColumn: false;
80
- };
81
- schema: Schema.Schema<{
82
- readonly mutationName: string;
83
- readonly schemaHash: number;
84
- readonly updatedAt: string;
85
- }, {
86
- readonly mutationName: string;
87
- readonly schemaHash: number;
88
- readonly updatedAt: string;
89
- }, never>;
90
- };
72
+ }, Schema.Schema<{
73
+ readonly mutationName: string;
74
+ readonly schemaHash: number;
75
+ readonly updatedAt: string;
76
+ }, {
77
+ readonly mutationName: string;
78
+ readonly schemaHash: number;
79
+ readonly updatedAt: string;
80
+ }, never>>;
91
81
  export type SchemaMutationsMetaRow = FromTable.RowDecoded<typeof schemaMutationsMetaTable>;
92
- export declare const systemTables: ({
93
- sqliteDef: SqliteDsl.TableDefinition<"__livestore_schema", {
94
- tableName: {
95
- columnType: "text";
96
- schema: Schema.Schema<string, string, never>;
97
- default: import("effect/Option").None<never>;
98
- nullable: false;
99
- primaryKey: true;
100
- };
101
- schemaHash: {
102
- columnType: "integer";
103
- schema: Schema.Schema<number, number, never>;
104
- default: import("effect/Option").None<never>;
105
- nullable: false;
106
- primaryKey: false;
107
- };
108
- updatedAt: {
109
- columnType: "text";
110
- schema: Schema.Schema<string, string, never>;
111
- default: import("effect/Option").None<never>;
112
- nullable: false;
113
- primaryKey: false;
114
- };
115
- }>;
82
+ export declare const systemTables: (import("./table-def.js").TableDef<SqliteDsl.TableDefinition<"__livestore_schema", {
83
+ tableName: {
84
+ columnType: "text";
85
+ schema: Schema.Schema<string, string, never>;
86
+ default: import("effect/Option").None<never>;
87
+ nullable: false;
88
+ primaryKey: true;
89
+ };
90
+ schemaHash: {
91
+ columnType: "integer";
92
+ schema: Schema.Schema<number, number, never>;
93
+ default: import("effect/Option").None<never>;
94
+ nullable: false;
95
+ primaryKey: false;
96
+ };
97
+ updatedAt: {
98
+ columnType: "text";
99
+ schema: Schema.Schema<string, string, never>;
100
+ default: import("effect/Option").None<never>;
101
+ nullable: false;
102
+ primaryKey: false;
103
+ };
104
+ }>, false, {
105
+ isSingleton: false;
106
+ dynamicRegistration: false;
107
+ disableAutomaticIdColumn: true;
108
+ deriveMutations: never;
116
109
  isSingleColumn: false;
117
- options: {
118
- isSingleton: false;
119
- dynamicRegistration: false;
120
- disableAutomaticIdColumn: true;
121
- deriveMutations: false;
122
- isSingleColumn: false;
123
- };
124
- schema: Schema.Schema<{
125
- readonly tableName: string;
126
- readonly schemaHash: number;
127
- readonly updatedAt: string;
128
- }, {
129
- readonly tableName: string;
130
- readonly schemaHash: number;
131
- readonly updatedAt: string;
132
- }, never>;
133
- } | {
134
- sqliteDef: SqliteDsl.TableDefinition<"__livestore_schema_mutations", {
135
- mutationName: {
136
- columnType: "text";
137
- schema: Schema.Schema<string, string, never>;
138
- default: import("effect/Option").None<never>;
139
- nullable: false;
140
- primaryKey: true;
141
- };
142
- schemaHash: {
143
- columnType: "integer";
144
- schema: Schema.Schema<number, number, never>;
145
- default: import("effect/Option").None<never>;
146
- nullable: false;
147
- primaryKey: false;
148
- };
149
- updatedAt: {
150
- columnType: "text";
151
- schema: Schema.Schema<string, string, never>;
152
- default: import("effect/Option").None<never>;
153
- nullable: false;
154
- primaryKey: false;
155
- };
156
- }>;
110
+ }, Schema.Schema<{
111
+ readonly tableName: string;
112
+ readonly schemaHash: number;
113
+ readonly updatedAt: string;
114
+ }, {
115
+ readonly tableName: string;
116
+ readonly schemaHash: number;
117
+ readonly updatedAt: string;
118
+ }, never>> | import("./table-def.js").TableDef<SqliteDsl.TableDefinition<"__livestore_schema_mutations", {
119
+ mutationName: {
120
+ columnType: "text";
121
+ schema: Schema.Schema<string, string, never>;
122
+ default: import("effect/Option").None<never>;
123
+ nullable: false;
124
+ primaryKey: true;
125
+ };
126
+ schemaHash: {
127
+ columnType: "integer";
128
+ schema: Schema.Schema<number, number, never>;
129
+ default: import("effect/Option").None<never>;
130
+ nullable: false;
131
+ primaryKey: false;
132
+ };
133
+ updatedAt: {
134
+ columnType: "text";
135
+ schema: Schema.Schema<string, string, never>;
136
+ default: import("effect/Option").None<never>;
137
+ nullable: false;
138
+ primaryKey: false;
139
+ };
140
+ }>, false, {
141
+ isSingleton: false;
142
+ dynamicRegistration: false;
143
+ disableAutomaticIdColumn: true;
144
+ deriveMutations: never;
157
145
  isSingleColumn: false;
158
- options: {
159
- isSingleton: false;
160
- dynamicRegistration: false;
161
- disableAutomaticIdColumn: true;
162
- deriveMutations: false;
163
- isSingleColumn: false;
164
- };
165
- schema: Schema.Schema<{
166
- readonly mutationName: string;
167
- readonly schemaHash: number;
168
- readonly updatedAt: string;
169
- }, {
170
- readonly mutationName: string;
171
- readonly schemaHash: number;
172
- readonly updatedAt: string;
173
- }, never>;
174
- })[];
175
- export declare const SyncStatus: Schema.Literal<["synced", "pending", "error"]>;
146
+ }, Schema.Schema<{
147
+ readonly mutationName: string;
148
+ readonly schemaHash: number;
149
+ readonly updatedAt: string;
150
+ }, {
151
+ readonly mutationName: string;
152
+ readonly schemaHash: number;
153
+ readonly updatedAt: string;
154
+ }, never>>)[];
155
+ export declare const SyncStatus: Schema.Literal<["synced", "pending", "error", "localOnly"]>;
176
156
  export type SyncStatus = typeof SyncStatus.Type;
177
157
  export declare const MUTATION_LOG_META_TABLE = "mutation_log";
178
- export declare const mutationLogMetaTable: {
179
- sqliteDef: SqliteDsl.TableDefinition<"mutation_log", {
180
- id: {
181
- columnType: "text";
182
- schema: Schema.Schema<string, string, never>;
183
- default: import("effect/Option").None<never>;
184
- nullable: false;
185
- primaryKey: true;
186
- };
187
- mutation: {
188
- columnType: "text";
189
- schema: Schema.Schema<string, string, never>;
190
- default: import("effect/Option").None<never>;
191
- nullable: false;
192
- primaryKey: false;
193
- };
194
- argsJson: {
195
- columnType: "text";
196
- schema: Schema.Schema<any, string, never>;
197
- default: import("effect/Option").None<never>;
198
- nullable: false;
199
- primaryKey: false;
200
- };
201
- schemaHash: {
202
- columnType: "integer";
203
- schema: Schema.Schema<number, number, never>;
204
- default: import("effect/Option").None<never>;
205
- nullable: false;
206
- primaryKey: false;
207
- };
208
- createdAt: {
209
- columnType: "text";
210
- schema: Schema.Schema<string, string, never>;
211
- default: import("effect/Option").None<never>;
212
- nullable: false;
213
- primaryKey: false;
214
- };
215
- syncStatus: {
216
- columnType: "text";
217
- schema: Schema.Schema<"synced" | "pending" | "error", "synced" | "pending" | "error", never>;
218
- default: import("effect/Option").None<never>;
219
- nullable: false;
220
- primaryKey: false;
221
- };
222
- }>;
158
+ export declare const mutationLogMetaTable: import("./table-def.js").TableDef<SqliteDsl.TableDefinition<"mutation_log", {
159
+ id: {
160
+ columnType: "text";
161
+ schema: Schema.Schema<string, string, never>;
162
+ default: import("effect/Option").None<never>;
163
+ nullable: false;
164
+ primaryKey: true;
165
+ };
166
+ mutation: {
167
+ columnType: "text";
168
+ schema: Schema.Schema<string, string, never>;
169
+ default: import("effect/Option").None<never>;
170
+ nullable: false;
171
+ primaryKey: false;
172
+ };
173
+ argsJson: {
174
+ columnType: "text";
175
+ schema: Schema.Schema<any, string, never>;
176
+ default: import("effect/Option").None<never>;
177
+ nullable: false;
178
+ primaryKey: false;
179
+ };
180
+ schemaHash: {
181
+ columnType: "integer";
182
+ schema: Schema.Schema<number, number, never>;
183
+ default: import("effect/Option").None<never>;
184
+ nullable: false;
185
+ primaryKey: false;
186
+ };
187
+ createdAt: {
188
+ columnType: "text";
189
+ schema: Schema.Schema<string, string, never>;
190
+ default: import("effect/Option").None<never>;
191
+ nullable: false;
192
+ primaryKey: false;
193
+ };
194
+ syncStatus: {
195
+ columnType: "text";
196
+ schema: Schema.Schema<"localOnly" | "synced" | "pending" | "error", "localOnly" | "synced" | "pending" | "error", never>;
197
+ default: import("effect/Option").None<never>;
198
+ nullable: false;
199
+ primaryKey: false;
200
+ };
201
+ }>, false, {
202
+ isSingleton: false;
203
+ dynamicRegistration: false;
204
+ disableAutomaticIdColumn: true;
205
+ deriveMutations: never;
223
206
  isSingleColumn: false;
224
- options: {
225
- isSingleton: false;
226
- dynamicRegistration: false;
227
- disableAutomaticIdColumn: true;
228
- deriveMutations: false;
229
- isSingleColumn: false;
230
- };
231
- schema: Schema.Schema<{
232
- readonly id: string;
233
- readonly mutation: string;
234
- readonly argsJson: any;
235
- readonly schemaHash: number;
236
- readonly createdAt: string;
237
- readonly syncStatus: "synced" | "pending" | "error";
238
- }, {
239
- readonly id: string;
240
- readonly mutation: string;
241
- readonly argsJson: string;
242
- readonly schemaHash: number;
243
- readonly createdAt: string;
244
- readonly syncStatus: "synced" | "pending" | "error";
245
- }, never>;
246
- };
207
+ }, Schema.Schema<{
208
+ readonly id: string;
209
+ readonly mutation: string;
210
+ readonly argsJson: any;
211
+ readonly schemaHash: number;
212
+ readonly createdAt: string;
213
+ readonly syncStatus: "localOnly" | "synced" | "pending" | "error";
214
+ }, {
215
+ readonly id: string;
216
+ readonly mutation: string;
217
+ readonly argsJson: string;
218
+ readonly schemaHash: number;
219
+ readonly createdAt: string;
220
+ readonly syncStatus: "localOnly" | "synced" | "pending" | "error";
221
+ }, never>>;
247
222
  export type MutationLogMetaRow = FromTable.RowDecoded<typeof mutationLogMetaTable>;
248
223
  //# sourceMappingURL=system-tables.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"system-tables.d.ts","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAiC,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAK/C,eAAO,MAAM,iBAAiB,uBAAuB,CAAA;AAErD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAS3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAExE,eAAO,MAAM,2BAA2B,iCAAiC,CAAA;AAEzE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE1F,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA8C,CAAA;AAIvE,eAAO,MAAM,UAAU,gDAA+C,CAAA;AACtE,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAE/C,eAAO,MAAM,uBAAuB,iBAAiB,CAAA;AAErD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAahC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
1
+ {"version":3,"file":"system-tables.d.ts","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAiC,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAK/C,eAAO,MAAM,iBAAiB,uBAAuB,CAAA;AAErD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAS3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAExE,eAAO,MAAM,2BAA2B,iCAAiC,CAAA;AAEzE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UASpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE1F,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAA8C,CAAA;AAIvE,eAAO,MAAM,UAAU,6DAA4D,CAAA;AACnF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAE/C,eAAO,MAAM,uBAAuB,iBAAiB,CAAA;AAErD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAahC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -18,7 +18,7 @@ export const schemaMutationsMetaTable = table(SCHEMA_MUTATIONS_META_TABLE, {
18
18
  }, { disableAutomaticIdColumn: true });
19
19
  export const systemTables = [schemaMetaTable, schemaMutationsMetaTable];
20
20
  /// Mutation log DB
21
- export const SyncStatus = Schema.Literal('synced', 'pending', 'error');
21
+ export const SyncStatus = Schema.Literal('synced', 'pending', 'error', 'localOnly');
22
22
  export const MUTATION_LOG_META_TABLE = 'mutation_log';
23
23
  export const mutationLogMetaTable = table(MUTATION_LOG_META_TABLE, {
24
24
  // TODO add parent ids (see https://vlcn.io/blog/crdt-substrate)
@@ -1 +1 @@
1
- {"version":3,"file":"system-tables.js","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAiC,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG3E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAEtC,UAAU;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAAoB,CAAA;AAErD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAClC,iBAAiB,EACjB;IACE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC/C,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;CAC/C,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA;AAID,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAA8B,CAAA;AAEzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAC3C,2BAA2B,EAC3B;IACE,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAClD,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;CAC/C,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA;AAID,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;AAEvE,mBAAmB;AAEnB,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;AAGtE,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAA;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CACvC,uBAAuB,EACvB;IACE,gEAAgE;IAChE,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACxC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7C,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACnF,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC9C,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;CACnD,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA"}
1
+ {"version":3,"file":"system-tables.js","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAiC,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG3E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAEtC,UAAU;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG,oBAAoB,CAAA;AAErD,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAClC,iBAAiB,EACjB;IACE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC/C,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;CAC/C,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA;AAID,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAA8B,CAAA;AAEzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAC3C,2BAA2B,EAC3B;IACE,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAClD,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;CAC/C,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA;AAID,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;AAEvE,mBAAmB;AAEnB,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;AAGnF,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAA;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CACvC,uBAAuB,EACvB;IACE,gEAAgE;IAChE,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACxC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7C,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACnF,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClD,sBAAsB;IACtB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC9C,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;CACnD,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA"}
@@ -16,9 +16,13 @@ export type TableDef<TSqliteDef extends DefaultSqliteTableDef = DefaultSqliteTab
16
16
  isSingleColumn: TIsSingleColumn;
17
17
  options: TOptions;
18
18
  schema: TSchema;
19
- } & (TOptions['deriveMutations'] extends true ? DerivedMutationHelperFns<TSqliteDef['columns'], TOptions> : {});
20
- export type TableOptionsInput = Partial<Omit<TableOptions, 'isSingleColumn'> & {
19
+ } & (TOptions['deriveMutations']['enabled'] extends true ? DerivedMutationHelperFns<TSqliteDef['columns'], TOptions> : {});
20
+ export type TableOptionsInput = Partial<Omit<TableOptions, 'isSingleColumn' | 'deriveMutations'> & {
21
21
  indexes: SqliteDsl.Index[];
22
+ deriveMutations: boolean | {
23
+ enabled: true;
24
+ localOnly?: boolean;
25
+ };
22
26
  }>;
23
27
  export type TableOptions = {
24
28
  /**
@@ -44,14 +48,30 @@ export type TableOptions = {
44
48
  *
45
49
  * Important: When using this option, make sure you're following the "Rules of mutations" for the table schema.
46
50
  */
47
- deriveMutations: boolean;
51
+ deriveMutations: {
52
+ enabled: false;
53
+ } | {
54
+ enabled: true;
55
+ /**
56
+ * When set to true, the mutations won't be synced over the network
57
+ */
58
+ localOnly: boolean;
59
+ };
48
60
  /** Derived based on whether the table definition has one or more columns (besides the `id` column) */
49
61
  isSingleColumn: boolean;
50
62
  };
51
- export declare const table: <TName extends string, TColumns extends SqliteDsl.ColumnDefinition<any, any> | SqliteDsl.Columns, const TOptionsInput extends Partial<Omit<TableOptions, "isSingleColumn"> & {
63
+ export declare const table: <TName extends string, TColumns extends SqliteDsl.ColumnDefinition<any, any> | SqliteDsl.Columns, const TOptionsInput extends Partial<Omit<TableOptions, "deriveMutations" | "isSingleColumn"> & {
52
64
  indexes: SqliteDsl.Index[];
53
- }> = Partial<Omit<TableOptions, "isSingleColumn"> & {
65
+ deriveMutations: boolean | {
66
+ enabled: true;
67
+ localOnly?: boolean;
68
+ };
69
+ }> = Partial<Omit<TableOptions, "deriveMutations" | "isSingleColumn"> & {
54
70
  indexes: SqliteDsl.Index[];
71
+ deriveMutations: boolean | {
72
+ enabled: true;
73
+ localOnly?: boolean;
74
+ };
55
75
  }>>(name: TName, columnOrColumns: TColumns, options?: TOptionsInput) => TableDef<SqliteDsl.TableDefinition<TName, PrettifyFlat<WithId<TColumns extends SqliteDsl.Columns ? TColumns : {
56
76
  value: TColumns;
57
77
  }, WithDefaults<TOptionsInput, SqliteDsl.IsSingleColumn<TColumns>>>>>, SqliteDsl.IsSingleColumn<TColumns>, WithDefaults<TOptionsInput, SqliteDsl.IsSingleColumn<TColumns>>>;
@@ -62,7 +82,10 @@ export declare const tableHasDerivedMutations: <TTableDef extends {
62
82
  schema: Schema.Schema<any, any, never>;
63
83
  }>(tableDef: TTableDef) => tableDef is TTableDef & {
64
84
  options: {
65
- deriveMutations: true;
85
+ deriveMutations: {
86
+ enabled: true;
87
+ localOnly: boolean;
88
+ };
66
89
  };
67
90
  } & DerivedMutationHelperFns<TTableDef["sqliteDef"]["columns"], TTableDef["options"]>;
68
91
  export declare const tableIsSingleton: <TTableDef extends {
@@ -96,7 +119,18 @@ type WithDefaults<TOptionsInput extends TableOptionsInput, TIsSingleColumn exten
96
119
  isSingleton: TOptionsInput['isSingleton'] extends true ? true : false;
97
120
  dynamicRegistration: TOptionsInput['dynamicRegistration'] extends true ? true : false;
98
121
  disableAutomaticIdColumn: TOptionsInput['disableAutomaticIdColumn'] extends true ? true : false;
99
- deriveMutations: TOptionsInput['deriveMutations'] extends true ? true : false;
122
+ deriveMutations: TOptionsInput['deriveMutations'] extends true ? {
123
+ enabled: true;
124
+ localOnly: boolean;
125
+ } : TOptionsInput['deriveMutations'] extends false ? {
126
+ enabled: false;
127
+ } : TOptionsInput['deriveMutations'] extends {
128
+ enabled: true;
129
+ localOnly?: boolean;
130
+ } ? {
131
+ enabled: true;
132
+ localOnly: TOptionsInput['deriveMutations']['localOnly'] extends true ? true : false;
133
+ } : never;
100
134
  isSingleColumn: TIsSingleColumn;
101
135
  };
102
136
  export declare namespace FromTable {
@@ -1 +1 @@
1
- {"version":3,"file":"table-def.d.ts","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-def.d.ts","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,13 @@ export const table = (name, columnOrColumns, options) => {
9
9
  isSingleton: options?.isSingleton ?? false,
10
10
  dynamicRegistration: options?.dynamicRegistration ?? false,
11
11
  disableAutomaticIdColumn: options?.disableAutomaticIdColumn ?? false,
12
- deriveMutations: options?.deriveMutations ?? false,
12
+ deriveMutations: options?.deriveMutations === true
13
+ ? { enabled: true, localOnly: false }
14
+ : options?.deriveMutations === false
15
+ ? { enabled: false }
16
+ : options?.deriveMutations === undefined
17
+ ? { enabled: false }
18
+ : { enabled: true, localOnly: options.deriveMutations.localOnly ?? false },
13
19
  isSingleColumn: SqliteDsl.isColumnDefinition(columnOrColumns) === true,
14
20
  };
15
21
  const columns = (SqliteDsl.isColumnDefinition(columnOrColumns) ? { value: columnOrColumns } : columnOrColumns);
@@ -60,7 +66,7 @@ export const table = (name, columnOrColumns, options) => {
60
66
  }
61
67
  return tableDef;
62
68
  };
63
- export const tableHasDerivedMutations = (tableDef) => tableDef.options.deriveMutations === true;
69
+ export const tableHasDerivedMutations = (tableDef) => tableDef.options.deriveMutations.enabled === true;
64
70
  export const tableIsSingleton = (tableDef) => tableDef.options.isSingleton === true;
65
71
  export const getDefaultValuesEncoded = (tableDef, fallbackValues) => pipe(tableDef.sqliteDef.columns, ReadonlyRecord.filter((col, key) => {
66
72
  if (fallbackValues?.[key] !== undefined)