@livestore/common 0.0.48-dev.1 → 0.0.48-dev.3
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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/__tests__/fixture.d.ts +8 -2
- package/dist/__tests__/fixture.d.ts.map +1 -1
- package/dist/derived-mutations.d.ts +27 -31
- package/dist/derived-mutations.d.ts.map +1 -1
- package/dist/derived-mutations.js +3 -3
- package/dist/derived-mutations.js.map +1 -1
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +2 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/mutations.d.ts +12 -1
- package/dist/schema/mutations.d.ts.map +1 -1
- package/dist/schema/mutations.js +2 -1
- package/dist/schema/mutations.js.map +1 -1
- package/dist/schema/system-tables.d.ts +207 -232
- package/dist/schema/system-tables.d.ts.map +1 -1
- package/dist/schema/system-tables.js +1 -1
- package/dist/schema/system-tables.js.map +1 -1
- package/dist/schema/table-def.d.ts +41 -7
- package/dist/schema/table-def.d.ts.map +1 -1
- package/dist/schema/table-def.js +8 -2
- package/dist/schema/table-def.js.map +1 -1
- package/dist/schema-management/migrations.d.ts +1 -0
- package/dist/schema-management/migrations.d.ts.map +1 -1
- package/dist/schema-management/migrations.js +1 -1
- package/dist/schema-management/migrations.js.map +1 -1
- package/dist/sync/sync.d.ts +4 -0
- package/dist/sync/sync.d.ts.map +1 -1
- package/dist/sync/sync.js +6 -2
- package/dist/sync/sync.js.map +1 -1
- package/package.json +3 -3
- package/src/derived-mutations.ts +52 -13
- package/src/schema/index.ts +2 -2
- package/src/schema/mutations.ts +13 -0
- package/src/schema/system-tables.ts +1 -1
- package/src/schema/table-def.ts +44 -8
- package/src/schema-management/migrations.ts +1 -1
- package/src/sync/sync.ts +6 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-def.js","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEtE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAA;AAEzE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"table-def.js","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,4 +17,5 @@ export declare const migrateTable: ({ db, tableAst, schemaHash, behaviour, skipM
|
|
|
17
17
|
behaviour: 'drop-and-recreate' | 'create-if-not-exists';
|
|
18
18
|
skipMetaTable?: boolean;
|
|
19
19
|
}) => void;
|
|
20
|
+
export declare const makeColumnSpec: (tableAst: SqliteAst.Table) => string;
|
|
20
21
|
//# sourceMappingURL=migrations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAa,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAUzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,eAAO,MAAM,iBAAiB,OAAQ,gBAAgB,KAAG,aA6BxD,CAAA;AAGD,eAAO,MAAM,SAAS,iCAInB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,MAAM,EAAE,eAAe,CAAA;CACxB,SAsCA,CAAA;AAED,eAAO,MAAM,YAAY,4DAOtB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,QAAQ,EAAE,UAAU,KAAK,CAAA;IACzB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,mBAAmB,GAAG,sBAAsB,CAAA;IACvD,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,SA6BA,CAAA"}
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAa,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAUzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,eAAO,MAAM,iBAAiB,OAAQ,gBAAgB,KAAG,aA6BxD,CAAA;AAGD,eAAO,MAAM,SAAS,iCAInB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,MAAM,EAAE,eAAe,CAAA;CACxB,SAsCA,CAAA;AAED,eAAO,MAAM,YAAY,4DAOtB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,QAAQ,EAAE,UAAU,KAAK,CAAA;IACzB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,mBAAmB,GAAG,sBAAsB,CAAA;IACvD,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,SA6BA,CAAA;AAOD,eAAO,MAAM,cAAc,aAAc,UAAU,KAAK,WAQvD,CAAA"}
|
|
@@ -85,7 +85,7 @@ const createIndexFromDefinition = (tableName, index) => {
|
|
|
85
85
|
const uniqueStr = index.unique ? 'UNIQUE' : '';
|
|
86
86
|
return sql `create ${uniqueStr} index ${index.name} on ${tableName} (${index.columns.join(', ')})`;
|
|
87
87
|
};
|
|
88
|
-
const makeColumnSpec = (tableAst) => {
|
|
88
|
+
export const makeColumnSpec = (tableAst) => {
|
|
89
89
|
const primaryKeys = tableAst.columns.filter((_) => _.primaryKey).map((_) => _.name);
|
|
90
90
|
const columnDefStrs = tableAst.columns.map(toSqliteColumnSpec);
|
|
91
91
|
if (primaryKeys.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/sync.d.ts
CHANGED
|
@@ -13,11 +13,15 @@ export declare class IsOfflineError extends IsOfflineError_base {
|
|
|
13
13
|
}
|
|
14
14
|
declare const InvalidPushError_base: Schema.TaggedErrorClass<InvalidPushError, "InvalidPushError", {
|
|
15
15
|
readonly _tag: Schema.PropertySignature<":", "InvalidPushError", never, ":", "InvalidPushError", true, never>;
|
|
16
|
+
} & {
|
|
17
|
+
message: typeof Schema.String;
|
|
16
18
|
}>;
|
|
17
19
|
export declare class InvalidPushError extends InvalidPushError_base {
|
|
18
20
|
}
|
|
19
21
|
declare const InvalidPullError_base: Schema.TaggedErrorClass<InvalidPullError, "InvalidPullError", {
|
|
20
22
|
readonly _tag: Schema.PropertySignature<":", "InvalidPullError", never, ":", "InvalidPullError", true, never>;
|
|
23
|
+
} & {
|
|
24
|
+
message: typeof Schema.String;
|
|
21
25
|
}>;
|
|
22
26
|
export declare class InvalidPullError extends InvalidPullError_base {
|
|
23
27
|
}
|
package/dist/sync/sync.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChH,IAAI,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IACzG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC/C,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;CACtD,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG
|
|
1
|
+
{"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChH,IAAI,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IACzG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC/C,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;CACtD,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG;;;;;;AACjG,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;;;;;;AACL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG"}
|
package/dist/sync/sync.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { Schema } from '@livestore/utils/effect';
|
|
2
2
|
export class IsOfflineError extends Schema.TaggedError()('IsOfflineError', {}) {
|
|
3
3
|
}
|
|
4
|
-
export class InvalidPushError extends Schema.TaggedError()('InvalidPushError', {
|
|
4
|
+
export class InvalidPushError extends Schema.TaggedError()('InvalidPushError', {
|
|
5
|
+
message: Schema.String,
|
|
6
|
+
}) {
|
|
5
7
|
}
|
|
6
|
-
export class InvalidPullError extends Schema.TaggedError()('InvalidPullError', {
|
|
8
|
+
export class InvalidPullError extends Schema.TaggedError()('InvalidPullError', {
|
|
9
|
+
message: Schema.String,
|
|
10
|
+
}) {
|
|
7
11
|
}
|
|
8
12
|
//# sourceMappingURL=sync.js.map
|
package/dist/sync/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAqC,MAAM,yBAAyB,CAAA;AAWhG,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AACjG,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAAG;
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAqC,MAAM,yBAAyB,CAAA;AAWhG,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AACjG,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG;AACL,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/common",
|
|
3
|
-
"version": "0.0.48-dev.
|
|
3
|
+
"version": "0.0.48-dev.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@opentelemetry/api": "^1.9.0",
|
|
32
|
-
"@livestore/utils": "0.0.48-dev.
|
|
33
|
-
"effect-db-schema": "0.0.48-dev.
|
|
32
|
+
"@livestore/utils": "0.0.48-dev.3",
|
|
33
|
+
"effect-db-schema": "0.0.48-dev.3"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"vitest": "^1.6.0"
|
package/src/derived-mutations.ts
CHANGED
|
@@ -8,13 +8,29 @@ import type { TableOptions } from './schema/table-def.js'
|
|
|
8
8
|
import * as DbSchema from './schema/table-def.js'
|
|
9
9
|
import { deleteRows, insertRow, updateRows } from './sql-queries/sql-queries.js'
|
|
10
10
|
|
|
11
|
-
export const makeDerivedMutationDefsForTable = <
|
|
11
|
+
export const makeDerivedMutationDefsForTable = <
|
|
12
|
+
TTableDef extends DbSchema.TableDef<
|
|
13
|
+
DbSchema.DefaultSqliteTableDefConstrained,
|
|
14
|
+
boolean,
|
|
15
|
+
DbSchema.TableOptions & { deriveMutations: { enabled: true } }
|
|
16
|
+
>,
|
|
17
|
+
>(
|
|
18
|
+
table: TTableDef,
|
|
19
|
+
) => ({
|
|
12
20
|
insert: deriveCreateMutationDef(table),
|
|
13
21
|
update: deriveUpdateMutationDef(table),
|
|
14
22
|
delete: deriveDeleteMutationDef(table),
|
|
15
23
|
})
|
|
16
24
|
|
|
17
|
-
export const deriveCreateMutationDef = <
|
|
25
|
+
export const deriveCreateMutationDef = <
|
|
26
|
+
TTableDef extends DbSchema.TableDef<
|
|
27
|
+
DbSchema.DefaultSqliteTableDefConstrained,
|
|
28
|
+
boolean,
|
|
29
|
+
DbSchema.TableOptions & { deriveMutations: { enabled: true } }
|
|
30
|
+
>,
|
|
31
|
+
>(
|
|
32
|
+
table: TTableDef,
|
|
33
|
+
) => {
|
|
18
34
|
const tableName = table.sqliteDef.name
|
|
19
35
|
|
|
20
36
|
const [optionalFields, requiredColumns] = ReadonlyRecord.partition(
|
|
@@ -26,20 +42,33 @@ export const deriveCreateMutationDef = <TTableDef extends DbSchema.TableDef>(tab
|
|
|
26
42
|
Schema.extend(Schema.partial(Schema.Struct(ReadonlyRecord.map(optionalFields, (col) => col.schema)))),
|
|
27
43
|
)
|
|
28
44
|
|
|
29
|
-
return defineMutation(
|
|
30
|
-
|
|
45
|
+
return defineMutation(
|
|
46
|
+
`_Derived_Create_${tableName}`,
|
|
47
|
+
insertSchema,
|
|
48
|
+
({ id, ...explicitDefaultValues }) => {
|
|
49
|
+
const defaultValues = DbSchema.getDefaultValuesDecoded(table, explicitDefaultValues)
|
|
31
50
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
51
|
+
const [sql, bindValues] = insertRow({
|
|
52
|
+
tableName: table.sqliteDef.name,
|
|
53
|
+
columns: table.sqliteDef.columns,
|
|
54
|
+
values: { ...defaultValues, id },
|
|
55
|
+
})
|
|
37
56
|
|
|
38
|
-
|
|
39
|
-
|
|
57
|
+
return { sql, bindValues, writeTables: new Set([tableName]) }
|
|
58
|
+
},
|
|
59
|
+
{ localOnly: table.options.deriveMutations.localOnly },
|
|
60
|
+
)
|
|
40
61
|
}
|
|
41
62
|
|
|
42
|
-
export const deriveUpdateMutationDef = <
|
|
63
|
+
export const deriveUpdateMutationDef = <
|
|
64
|
+
TTableDef extends DbSchema.TableDef<
|
|
65
|
+
DbSchema.DefaultSqliteTableDefConstrained,
|
|
66
|
+
boolean,
|
|
67
|
+
DbSchema.TableOptions & { deriveMutations: { enabled: true } }
|
|
68
|
+
>,
|
|
69
|
+
>(
|
|
70
|
+
table: TTableDef,
|
|
71
|
+
) => {
|
|
43
72
|
const tableName = table.sqliteDef.name
|
|
44
73
|
|
|
45
74
|
return defineMutation(
|
|
@@ -58,10 +87,19 @@ export const deriveUpdateMutationDef = <TTableDef extends DbSchema.TableDef>(tab
|
|
|
58
87
|
|
|
59
88
|
return { sql, bindValues, writeTables: new Set([tableName]) }
|
|
60
89
|
},
|
|
90
|
+
{ localOnly: table.options.deriveMutations.localOnly },
|
|
61
91
|
)
|
|
62
92
|
}
|
|
63
93
|
|
|
64
|
-
export const deriveDeleteMutationDef = <
|
|
94
|
+
export const deriveDeleteMutationDef = <
|
|
95
|
+
TTableDef extends DbSchema.TableDef<
|
|
96
|
+
DbSchema.DefaultSqliteTableDefConstrained,
|
|
97
|
+
boolean,
|
|
98
|
+
DbSchema.TableOptions & { deriveMutations: { enabled: true } }
|
|
99
|
+
>,
|
|
100
|
+
>(
|
|
101
|
+
table: TTableDef,
|
|
102
|
+
) => {
|
|
65
103
|
const tableName = table.sqliteDef.name
|
|
66
104
|
|
|
67
105
|
return defineMutation(
|
|
@@ -78,6 +116,7 @@ export const deriveDeleteMutationDef = <TTableDef extends DbSchema.TableDef>(tab
|
|
|
78
116
|
|
|
79
117
|
return { sql, bindValues, writeTables: new Set([tableName]) }
|
|
80
118
|
},
|
|
119
|
+
{ localOnly: table.options.deriveMutations.localOnly },
|
|
81
120
|
)
|
|
82
121
|
}
|
|
83
122
|
|
package/src/schema/index.ts
CHANGED
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
rawSqlMutation,
|
|
13
13
|
} from './mutations.js'
|
|
14
14
|
import { systemTables } from './system-tables.js'
|
|
15
|
-
import type
|
|
15
|
+
import { type TableDef, tableHasDerivedMutations } from './table-def.js'
|
|
16
16
|
|
|
17
17
|
export * from './system-tables.js'
|
|
18
18
|
export * as DbSchema from './table-def.js'
|
|
@@ -84,7 +84,7 @@ export const makeSchema = <TInputSchema extends InputSchema>(
|
|
|
84
84
|
mutations.set(rawSqlMutation.name, rawSqlMutation)
|
|
85
85
|
|
|
86
86
|
for (const tableDef of tables.values()) {
|
|
87
|
-
if (tableDef
|
|
87
|
+
if (tableHasDerivedMutations(tableDef)) {
|
|
88
88
|
const derivedMutationDefs = makeDerivedMutationDefsForTable(tableDef)
|
|
89
89
|
mutations.set(derivedMutationDefs.insert.name, derivedMutationDefs.insert)
|
|
90
90
|
mutations.set(derivedMutationDefs.update.name, derivedMutationDefs.update)
|
package/src/schema/mutations.ts
CHANGED
|
@@ -35,6 +35,12 @@ export type MutationDef<TName extends string, TFrom, TTo> = {
|
|
|
35
35
|
name: TName
|
|
36
36
|
schema: Schema.Schema<TTo, TFrom>
|
|
37
37
|
sql: MutationDefSqlResult<TTo>
|
|
38
|
+
options: {
|
|
39
|
+
/**
|
|
40
|
+
* When set to true, the mutation won't be synced over the network
|
|
41
|
+
*/
|
|
42
|
+
localOnly: boolean
|
|
43
|
+
}
|
|
38
44
|
|
|
39
45
|
/** Helper function to construct mutation event */
|
|
40
46
|
(args: TTo): { mutation: TName; args: TTo; id: string }
|
|
@@ -49,12 +55,19 @@ export const defineMutation = <TName extends string, TFrom, TTo>(
|
|
|
49
55
|
name: TName,
|
|
50
56
|
schema: Schema.Schema<TTo, TFrom>,
|
|
51
57
|
sql: MutationDefSqlResult<TTo>,
|
|
58
|
+
options?: {
|
|
59
|
+
/**
|
|
60
|
+
* When set to true, the mutation won't be synced over the network
|
|
61
|
+
*/
|
|
62
|
+
localOnly?: boolean
|
|
63
|
+
},
|
|
52
64
|
): MutationDef<TName, TFrom, TTo> => {
|
|
53
65
|
const makeEvent = (args: TTo) => ({ mutation: name, args, id: cuid() })
|
|
54
66
|
|
|
55
67
|
Object.defineProperty(makeEvent, 'name', { value: name })
|
|
56
68
|
Object.defineProperty(makeEvent, 'schema', { value: schema })
|
|
57
69
|
Object.defineProperty(makeEvent, 'sql', { value: sql })
|
|
70
|
+
Object.defineProperty(makeEvent, 'options', { value: { localOnly: options?.localOnly ?? false } })
|
|
58
71
|
|
|
59
72
|
return makeEvent as MutationDef<TName, TFrom, TTo>
|
|
60
73
|
}
|
|
@@ -40,7 +40,7 @@ export const systemTables = [schemaMetaTable, schemaMutationsMetaTable]
|
|
|
40
40
|
|
|
41
41
|
/// Mutation log DB
|
|
42
42
|
|
|
43
|
-
export const SyncStatus = Schema.Literal('synced', 'pending', 'error')
|
|
43
|
+
export const SyncStatus = Schema.Literal('synced', 'pending', 'error', 'localOnly')
|
|
44
44
|
export type SyncStatus = typeof SyncStatus.Type
|
|
45
45
|
|
|
46
46
|
export const MUTATION_LOG_META_TABLE = 'mutation_log'
|
package/src/schema/table-def.ts
CHANGED
|
@@ -60,9 +60,21 @@ export type TableDef<
|
|
|
60
60
|
isSingleColumn: TIsSingleColumn
|
|
61
61
|
options: TOptions
|
|
62
62
|
schema: TSchema
|
|
63
|
-
} & (TOptions['deriveMutations']
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
} & (TOptions['deriveMutations']['enabled'] extends true
|
|
64
|
+
? DerivedMutationHelperFns<TSqliteDef['columns'], TOptions>
|
|
65
|
+
: {})
|
|
66
|
+
|
|
67
|
+
export type TableOptionsInput = Partial<
|
|
68
|
+
Omit<TableOptions, 'isSingleColumn' | 'deriveMutations'> & {
|
|
69
|
+
indexes: SqliteDsl.Index[]
|
|
70
|
+
deriveMutations:
|
|
71
|
+
| boolean
|
|
72
|
+
| {
|
|
73
|
+
enabled: true
|
|
74
|
+
localOnly?: boolean
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
>
|
|
66
78
|
|
|
67
79
|
export type TableOptions = {
|
|
68
80
|
/**
|
|
@@ -89,7 +101,15 @@ export type TableOptions = {
|
|
|
89
101
|
*
|
|
90
102
|
* Important: When using this option, make sure you're following the "Rules of mutations" for the table schema.
|
|
91
103
|
*/
|
|
92
|
-
deriveMutations:
|
|
104
|
+
deriveMutations:
|
|
105
|
+
| { enabled: false }
|
|
106
|
+
| {
|
|
107
|
+
enabled: true
|
|
108
|
+
/**
|
|
109
|
+
* When set to true, the mutations won't be synced over the network
|
|
110
|
+
*/
|
|
111
|
+
localOnly: boolean
|
|
112
|
+
}
|
|
93
113
|
/** Derived based on whether the table definition has one or more columns (besides the `id` column) */
|
|
94
114
|
isSingleColumn: boolean
|
|
95
115
|
}
|
|
@@ -121,7 +141,14 @@ export const table = <
|
|
|
121
141
|
isSingleton: options?.isSingleton ?? false,
|
|
122
142
|
dynamicRegistration: options?.dynamicRegistration ?? false,
|
|
123
143
|
disableAutomaticIdColumn: options?.disableAutomaticIdColumn ?? false,
|
|
124
|
-
deriveMutations:
|
|
144
|
+
deriveMutations:
|
|
145
|
+
options?.deriveMutations === true
|
|
146
|
+
? { enabled: true as const, localOnly: false }
|
|
147
|
+
: options?.deriveMutations === false
|
|
148
|
+
? { enabled: false as const }
|
|
149
|
+
: options?.deriveMutations === undefined
|
|
150
|
+
? { enabled: false as const }
|
|
151
|
+
: { enabled: true as const, localOnly: options.deriveMutations.localOnly ?? false },
|
|
125
152
|
isSingleColumn: SqliteDsl.isColumnDefinition(columnOrColumns) === true,
|
|
126
153
|
}
|
|
127
154
|
|
|
@@ -189,9 +216,9 @@ export const table = <
|
|
|
189
216
|
export const tableHasDerivedMutations = <TTableDef extends TableDef>(
|
|
190
217
|
tableDef: TTableDef,
|
|
191
218
|
): tableDef is TTableDef & {
|
|
192
|
-
options: { deriveMutations: true }
|
|
219
|
+
options: { deriveMutations: { enabled: true; localOnly: boolean } }
|
|
193
220
|
} & DerivedMutationHelperFns<TTableDef['sqliteDef']['columns'], TTableDef['options']> =>
|
|
194
|
-
tableDef.options.deriveMutations === true
|
|
221
|
+
tableDef.options.deriveMutations.enabled === true
|
|
195
222
|
|
|
196
223
|
export const tableIsSingleton = <TTableDef extends TableDef>(
|
|
197
224
|
tableDef: TTableDef,
|
|
@@ -258,7 +285,16 @@ type WithDefaults<TOptionsInput extends TableOptionsInput, TIsSingleColumn exten
|
|
|
258
285
|
isSingleton: TOptionsInput['isSingleton'] extends true ? true : false
|
|
259
286
|
dynamicRegistration: TOptionsInput['dynamicRegistration'] extends true ? true : false
|
|
260
287
|
disableAutomaticIdColumn: TOptionsInput['disableAutomaticIdColumn'] extends true ? true : false
|
|
261
|
-
deriveMutations: TOptionsInput['deriveMutations'] extends true
|
|
288
|
+
deriveMutations: TOptionsInput['deriveMutations'] extends true
|
|
289
|
+
? { enabled: true; localOnly: boolean }
|
|
290
|
+
: TOptionsInput['deriveMutations'] extends false
|
|
291
|
+
? { enabled: false }
|
|
292
|
+
: TOptionsInput['deriveMutations'] extends { enabled: true; localOnly?: boolean }
|
|
293
|
+
? {
|
|
294
|
+
enabled: true
|
|
295
|
+
localOnly: TOptionsInput['deriveMutations']['localOnly'] extends true ? true : false
|
|
296
|
+
}
|
|
297
|
+
: never
|
|
262
298
|
isSingleColumn: TIsSingleColumn
|
|
263
299
|
}
|
|
264
300
|
|
|
@@ -150,7 +150,7 @@ const createIndexFromDefinition = (tableName: string, index: SqliteAst.Index) =>
|
|
|
150
150
|
return sql`create ${uniqueStr} index ${index.name} on ${tableName} (${index.columns.join(', ')})`
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
-
const makeColumnSpec = (tableAst: SqliteAst.Table) => {
|
|
153
|
+
export const makeColumnSpec = (tableAst: SqliteAst.Table) => {
|
|
154
154
|
const primaryKeys = tableAst.columns.filter((_) => _.primaryKey).map((_) => _.name)
|
|
155
155
|
const columnDefStrs = tableAst.columns.map(toSqliteColumnSpec)
|
|
156
156
|
if (primaryKeys.length > 0) {
|
package/src/sync/sync.ts
CHANGED
|
@@ -10,5 +10,9 @@ export type SyncImpl = {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
export class IsOfflineError extends Schema.TaggedError<IsOfflineError>()('IsOfflineError', {}) {}
|
|
13
|
-
export class InvalidPushError extends Schema.TaggedError<InvalidPushError>()('InvalidPushError', {
|
|
14
|
-
|
|
13
|
+
export class InvalidPushError extends Schema.TaggedError<InvalidPushError>()('InvalidPushError', {
|
|
14
|
+
message: Schema.String,
|
|
15
|
+
}) {}
|
|
16
|
+
export class InvalidPullError extends Schema.TaggedError<InvalidPullError>()('InvalidPullError', {
|
|
17
|
+
message: Schema.String,
|
|
18
|
+
}) {}
|