@livestore/common 0.3.0-dev.2 → 0.3.0-dev.21
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 +21 -21
- package/dist/adapter-types.d.ts +97 -53
- package/dist/adapter-types.d.ts.map +1 -1
- package/dist/adapter-types.js +17 -0
- package/dist/adapter-types.js.map +1 -1
- package/dist/bounded-collections.d.ts +1 -1
- package/dist/bounded-collections.d.ts.map +1 -1
- package/dist/debug-info.d.ts +1 -1
- package/dist/debug-info.d.ts.map +1 -1
- package/dist/derived-mutations.d.ts +5 -5
- 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/derived-mutations.test.js.map +1 -1
- package/dist/devtools/devtools-messages-client-session.d.ts +389 -0
- package/dist/devtools/devtools-messages-client-session.d.ts.map +1 -0
- package/dist/devtools/devtools-messages-client-session.js +96 -0
- package/dist/devtools/devtools-messages-client-session.js.map +1 -0
- package/dist/devtools/devtools-messages-common.d.ts +61 -0
- package/dist/devtools/devtools-messages-common.d.ts.map +1 -0
- package/dist/devtools/devtools-messages-common.js +54 -0
- package/dist/devtools/devtools-messages-common.js.map +1 -0
- package/dist/devtools/devtools-messages-leader.d.ts +393 -0
- package/dist/devtools/devtools-messages-leader.d.ts.map +1 -0
- package/dist/devtools/devtools-messages-leader.js +148 -0
- package/dist/devtools/devtools-messages-leader.js.map +1 -0
- package/dist/devtools/devtools-messages.d.ts +3 -592
- package/dist/devtools/devtools-messages.d.ts.map +1 -1
- package/dist/devtools/devtools-messages.js +3 -171
- package/dist/devtools/devtools-messages.js.map +1 -1
- package/dist/devtools/devtools-sessioninfo.d.ts +28 -0
- package/dist/devtools/devtools-sessioninfo.d.ts.map +1 -0
- package/dist/devtools/devtools-sessioninfo.js +34 -0
- package/dist/devtools/devtools-sessioninfo.js.map +1 -0
- package/dist/devtools/devtools-sessions-channel.d.ts +28 -0
- package/dist/devtools/devtools-sessions-channel.d.ts.map +1 -0
- package/dist/devtools/devtools-sessions-channel.js +34 -0
- package/dist/devtools/devtools-sessions-channel.js.map +1 -0
- package/dist/devtools/index.d.ts +35 -38
- package/dist/devtools/index.d.ts.map +1 -1
- package/dist/devtools/index.js +20 -45
- package/dist/devtools/index.js.map +1 -1
- package/dist/devtools/mod.d.ts +39 -0
- package/dist/devtools/mod.d.ts.map +1 -0
- package/dist/devtools/mod.js +27 -0
- package/dist/devtools/mod.js.map +1 -0
- package/dist/index.d.ts +2 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/init-singleton-tables.d.ts +2 -2
- package/dist/init-singleton-tables.d.ts.map +1 -1
- package/dist/init-singleton-tables.js.map +1 -1
- package/dist/leader-thread/LeaderSyncProcessor.d.ts +39 -0
- package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -0
- package/dist/leader-thread/LeaderSyncProcessor.js +527 -0
- package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -0
- package/dist/leader-thread/apply-mutation.d.ts +5 -2
- package/dist/leader-thread/apply-mutation.d.ts.map +1 -1
- package/dist/leader-thread/apply-mutation.js +55 -35
- package/dist/leader-thread/apply-mutation.js.map +1 -1
- package/dist/leader-thread/connection.d.ts +34 -6
- package/dist/leader-thread/connection.d.ts.map +1 -1
- package/dist/leader-thread/connection.js +22 -7
- package/dist/leader-thread/connection.js.map +1 -1
- package/dist/leader-thread/leader-worker-devtools.d.ts +1 -1
- package/dist/leader-thread/leader-worker-devtools.d.ts.map +1 -1
- package/dist/leader-thread/leader-worker-devtools.js +147 -124
- package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
- package/dist/leader-thread/make-leader-thread-layer.d.ts +12 -11
- package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
- package/dist/leader-thread/make-leader-thread-layer.js +55 -18
- package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
- package/dist/leader-thread/mutationlog.d.ts +6 -19
- package/dist/leader-thread/mutationlog.d.ts.map +1 -1
- package/dist/leader-thread/mutationlog.js +12 -9
- package/dist/leader-thread/mutationlog.js.map +1 -1
- package/dist/leader-thread/pull-queue-set.d.ts +3 -3
- package/dist/leader-thread/pull-queue-set.d.ts.map +1 -1
- package/dist/leader-thread/pull-queue-set.js +9 -0
- package/dist/leader-thread/pull-queue-set.js.map +1 -1
- package/dist/leader-thread/recreate-db.d.ts +4 -2
- package/dist/leader-thread/recreate-db.d.ts.map +1 -1
- package/dist/leader-thread/recreate-db.js +32 -21
- package/dist/leader-thread/recreate-db.js.map +1 -1
- package/dist/leader-thread/shutdown-channel.d.ts +2 -5
- package/dist/leader-thread/shutdown-channel.d.ts.map +1 -1
- package/dist/leader-thread/shutdown-channel.js +2 -4
- package/dist/leader-thread/shutdown-channel.js.map +1 -1
- package/dist/leader-thread/types.d.ts +58 -26
- package/dist/leader-thread/types.d.ts.map +1 -1
- package/dist/leader-thread/types.js +1 -3
- package/dist/leader-thread/types.js.map +1 -1
- package/dist/mutation.d.ts +9 -2
- package/dist/mutation.d.ts.map +1 -1
- package/dist/mutation.js +5 -5
- package/dist/mutation.js.map +1 -1
- package/dist/otel.d.ts +2 -0
- package/dist/otel.d.ts.map +1 -1
- package/dist/otel.js +5 -0
- package/dist/otel.js.map +1 -1
- package/dist/query-builder/api.d.ts +3 -3
- package/dist/query-builder/api.d.ts.map +1 -1
- package/dist/query-builder/impl.d.ts +4 -4
- package/dist/query-builder/impl.d.ts.map +1 -1
- package/dist/query-builder/impl.js.map +1 -1
- package/dist/query-builder/impl.test.js +16 -1
- package/dist/query-builder/impl.test.js.map +1 -1
- package/dist/query-info.d.ts +3 -3
- package/dist/query-info.d.ts.map +1 -1
- package/dist/rehydrate-from-mutationlog.d.ts +5 -5
- package/dist/rehydrate-from-mutationlog.d.ts.map +1 -1
- package/dist/rehydrate-from-mutationlog.js +23 -27
- package/dist/rehydrate-from-mutationlog.js.map +1 -1
- package/dist/schema/EventId.d.ts +27 -16
- package/dist/schema/EventId.d.ts.map +1 -1
- package/dist/schema/EventId.js +36 -11
- package/dist/schema/EventId.js.map +1 -1
- package/dist/schema/EventId.test.d.ts +2 -0
- package/dist/schema/EventId.test.d.ts.map +1 -0
- package/dist/schema/EventId.test.js +11 -0
- package/dist/schema/EventId.test.js.map +1 -0
- package/dist/schema/MutationEvent.d.ts +76 -82
- package/dist/schema/MutationEvent.d.ts.map +1 -1
- package/dist/schema/MutationEvent.js +53 -20
- package/dist/schema/MutationEvent.js.map +1 -1
- package/dist/schema/db-schema/ast/sqlite.d.ts +69 -0
- package/dist/schema/db-schema/ast/sqlite.d.ts.map +1 -0
- package/dist/schema/db-schema/ast/sqlite.js +71 -0
- package/dist/schema/db-schema/ast/sqlite.js.map +1 -0
- package/dist/schema/db-schema/ast/validate.d.ts +3 -0
- package/dist/schema/db-schema/ast/validate.d.ts.map +1 -0
- package/dist/schema/db-schema/ast/validate.js +12 -0
- package/dist/schema/db-schema/ast/validate.js.map +1 -0
- package/dist/schema/db-schema/dsl/field-defs.d.ts +90 -0
- package/dist/schema/db-schema/dsl/field-defs.d.ts.map +1 -0
- package/dist/schema/db-schema/dsl/field-defs.js +87 -0
- package/dist/schema/db-schema/dsl/field-defs.js.map +1 -0
- package/dist/schema/db-schema/dsl/field-defs.test.d.ts +2 -0
- package/dist/schema/db-schema/dsl/field-defs.test.d.ts.map +1 -0
- package/dist/schema/db-schema/dsl/field-defs.test.js +29 -0
- package/dist/schema/db-schema/dsl/field-defs.test.js.map +1 -0
- package/dist/schema/db-schema/dsl/mod.d.ts +88 -0
- package/dist/schema/db-schema/dsl/mod.d.ts.map +1 -0
- package/dist/schema/db-schema/dsl/mod.js +35 -0
- package/dist/schema/db-schema/dsl/mod.js.map +1 -0
- package/dist/schema/db-schema/hash.d.ts +2 -0
- package/dist/schema/db-schema/hash.d.ts.map +1 -0
- package/dist/schema/db-schema/hash.js +14 -0
- package/dist/schema/db-schema/hash.js.map +1 -0
- package/dist/schema/db-schema/mod.d.ts +3 -0
- package/dist/schema/db-schema/mod.d.ts.map +1 -0
- package/dist/schema/db-schema/mod.js +3 -0
- package/dist/schema/db-schema/mod.js.map +1 -0
- package/dist/schema/mod.d.ts +1 -0
- package/dist/schema/mod.d.ts.map +1 -1
- package/dist/schema/mod.js +1 -0
- package/dist/schema/mod.js.map +1 -1
- package/dist/schema/mutations.d.ts +8 -9
- package/dist/schema/mutations.d.ts.map +1 -1
- package/dist/schema/mutations.js +2 -2
- package/dist/schema/mutations.js.map +1 -1
- package/dist/schema/schema-helpers.d.ts.map +1 -1
- package/dist/schema/schema-helpers.js +1 -1
- package/dist/schema/schema-helpers.js.map +1 -1
- package/dist/schema/schema.d.ts +5 -2
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +20 -9
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/system-tables.d.ts +65 -47
- package/dist/schema/system-tables.d.ts.map +1 -1
- package/dist/schema/system-tables.js +24 -13
- package/dist/schema/system-tables.js.map +1 -1
- package/dist/schema/table-def.d.ts +18 -24
- package/dist/schema/table-def.d.ts.map +1 -1
- package/dist/schema/table-def.js +3 -4
- package/dist/schema/table-def.js.map +1 -1
- package/dist/schema-management/common.d.ts +3 -3
- package/dist/schema-management/common.d.ts.map +1 -1
- package/dist/schema-management/common.js.map +1 -1
- package/dist/schema-management/migrations.d.ts +6 -6
- package/dist/schema-management/migrations.d.ts.map +1 -1
- package/dist/schema-management/migrations.js +13 -8
- package/dist/schema-management/migrations.js.map +1 -1
- package/dist/schema-management/validate-mutation-defs.d.ts.map +1 -1
- package/dist/schema-management/validate-mutation-defs.js +2 -2
- package/dist/schema-management/validate-mutation-defs.js.map +1 -1
- package/dist/sql-queries/misc.d.ts.map +1 -1
- package/dist/sql-queries/sql-queries.d.ts +1 -1
- package/dist/sql-queries/sql-queries.d.ts.map +1 -1
- package/dist/sql-queries/sql-queries.js.map +1 -1
- package/dist/sql-queries/sql-query-builder.d.ts +1 -1
- package/dist/sql-queries/sql-query-builder.d.ts.map +1 -1
- package/dist/sql-queries/sql-query-builder.js.map +1 -1
- package/dist/sql-queries/types.d.ts +2 -1
- package/dist/sql-queries/types.d.ts.map +1 -1
- package/dist/sql-queries/types.js.map +1 -1
- package/dist/sync/{client-session-sync-processor.d.ts → ClientSessionSyncProcessor.d.ts} +25 -14
- package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -0
- package/dist/sync/ClientSessionSyncProcessor.js +199 -0
- package/dist/sync/ClientSessionSyncProcessor.js.map +1 -0
- package/dist/sync/index.d.ts +1 -1
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +1 -1
- package/dist/sync/index.js.map +1 -1
- package/dist/sync/next/compact-events.d.ts.map +1 -1
- package/dist/sync/next/facts.d.ts.map +1 -1
- package/dist/sync/next/facts.js +1 -1
- package/dist/sync/next/facts.js.map +1 -1
- package/dist/sync/next/history-dag-common.d.ts +3 -4
- package/dist/sync/next/history-dag-common.d.ts.map +1 -1
- package/dist/sync/next/history-dag-common.js +3 -1
- package/dist/sync/next/history-dag-common.js.map +1 -1
- package/dist/sync/next/history-dag.d.ts.map +1 -1
- package/dist/sync/next/history-dag.js +1 -1
- package/dist/sync/next/history-dag.js.map +1 -1
- package/dist/sync/next/rebase-events.d.ts +6 -4
- package/dist/sync/next/rebase-events.d.ts.map +1 -1
- package/dist/sync/next/rebase-events.js +6 -3
- package/dist/sync/next/rebase-events.js.map +1 -1
- package/dist/sync/next/test/compact-events.calculator.test.js +12 -12
- package/dist/sync/next/test/compact-events.calculator.test.js.map +1 -1
- package/dist/sync/next/test/compact-events.test.js +43 -43
- package/dist/sync/next/test/compact-events.test.js.map +1 -1
- package/dist/sync/next/test/mutation-fixtures.d.ts +4 -4
- package/dist/sync/next/test/mutation-fixtures.d.ts.map +1 -1
- package/dist/sync/next/test/mutation-fixtures.js +12 -16
- package/dist/sync/next/test/mutation-fixtures.js.map +1 -1
- package/dist/sync/sync.d.ts +31 -16
- package/dist/sync/sync.d.ts.map +1 -1
- package/dist/sync/sync.js +7 -3
- package/dist/sync/sync.js.map +1 -1
- package/dist/sync/syncstate.d.ts +177 -44
- package/dist/sync/syncstate.d.ts.map +1 -1
- package/dist/sync/syncstate.js +188 -56
- package/dist/sync/syncstate.js.map +1 -1
- package/dist/sync/syncstate.test.js +162 -92
- package/dist/sync/syncstate.test.js.map +1 -1
- package/dist/sync/validate-push-payload.d.ts +2 -2
- package/dist/sync/validate-push-payload.d.ts.map +1 -1
- package/dist/sync/validate-push-payload.js +2 -2
- package/dist/sync/validate-push-payload.js.map +1 -1
- package/dist/util.d.ts +2 -2
- package/dist/util.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +6 -6
- package/src/adapter-types.ts +80 -56
- package/src/derived-mutations.test.ts +1 -1
- package/src/derived-mutations.ts +13 -9
- package/src/devtools/devtools-messages-client-session.ts +141 -0
- package/src/devtools/devtools-messages-common.ts +106 -0
- package/src/devtools/devtools-messages-leader.ts +192 -0
- package/src/devtools/devtools-messages.ts +3 -243
- package/src/devtools/devtools-sessioninfo.ts +99 -0
- package/src/devtools/mod.ts +36 -0
- package/src/index.ts +2 -8
- package/src/init-singleton-tables.ts +2 -2
- package/src/leader-thread/LeaderSyncProcessor.ts +833 -0
- package/src/leader-thread/apply-mutation.ts +87 -43
- package/src/leader-thread/connection.ts +54 -9
- package/src/leader-thread/leader-worker-devtools.ts +199 -174
- package/src/leader-thread/make-leader-thread-layer.ts +89 -35
- package/src/leader-thread/mutationlog.ts +20 -14
- package/src/leader-thread/pull-queue-set.ts +10 -1
- package/src/leader-thread/recreate-db.ts +38 -25
- package/src/leader-thread/shutdown-channel.ts +2 -4
- package/src/leader-thread/types.ts +68 -34
- package/src/mutation.ts +17 -7
- package/src/otel.ts +8 -0
- package/src/query-builder/api.ts +4 -4
- package/src/query-builder/impl.test.ts +22 -1
- package/src/query-builder/impl.ts +2 -2
- package/src/query-info.ts +3 -3
- package/src/rehydrate-from-mutationlog.ts +28 -34
- package/src/schema/EventId.test.ts +12 -0
- package/src/schema/EventId.ts +49 -15
- package/src/schema/MutationEvent.ts +78 -31
- package/src/schema/db-schema/ast/sqlite.ts +142 -0
- package/src/schema/db-schema/ast/validate.ts +13 -0
- package/src/schema/db-schema/dsl/__snapshots__/field-defs.test.ts.snap +206 -0
- package/src/schema/db-schema/dsl/field-defs.test.ts +35 -0
- package/src/schema/db-schema/dsl/field-defs.ts +242 -0
- package/src/schema/db-schema/dsl/mod.ts +195 -0
- package/src/schema/db-schema/hash.ts +14 -0
- package/src/schema/db-schema/mod.ts +2 -0
- package/src/schema/mod.ts +1 -0
- package/src/schema/mutations.ts +10 -20
- package/src/schema/schema-helpers.ts +1 -1
- package/src/schema/schema.ts +22 -10
- package/src/schema/system-tables.ts +24 -13
- package/src/schema/table-def.ts +17 -17
- package/src/schema-management/common.ts +3 -3
- package/src/schema-management/migrations.ts +19 -15
- package/src/schema-management/validate-mutation-defs.ts +2 -2
- package/src/sql-queries/sql-queries.ts +1 -1
- package/src/sql-queries/sql-query-builder.ts +1 -2
- package/src/sql-queries/types.ts +3 -1
- package/src/sync/ClientSessionSyncProcessor.ts +313 -0
- package/src/sync/index.ts +1 -1
- package/src/sync/next/facts.ts +1 -1
- package/src/sync/next/history-dag-common.ts +5 -1
- package/src/sync/next/history-dag.ts +1 -1
- package/src/sync/next/rebase-events.ts +13 -7
- package/src/sync/next/test/compact-events.calculator.test.ts +12 -12
- package/src/sync/next/test/compact-events.test.ts +43 -43
- package/src/sync/next/test/mutation-fixtures.ts +16 -19
- package/src/sync/sync.ts +26 -10
- package/src/sync/syncstate.test.ts +178 -98
- package/src/sync/syncstate.ts +170 -83
- package/src/sync/validate-push-payload.ts +7 -4
- package/src/version.ts +1 -1
- package/tmp/pack.tgz +0 -0
- package/tsconfig.json +1 -1
- package/dist/devtools/devtools-bridge.d.ts +0 -12
- package/dist/devtools/devtools-bridge.d.ts.map +0 -1
- package/dist/devtools/devtools-bridge.js +0 -2
- package/dist/devtools/devtools-bridge.js.map +0 -1
- package/dist/leader-thread/leader-sync-processor.d.ts +0 -47
- package/dist/leader-thread/leader-sync-processor.d.ts.map +0 -1
- package/dist/leader-thread/leader-sync-processor.js +0 -422
- package/dist/leader-thread/leader-sync-processor.js.map +0 -1
- package/dist/sync/client-session-sync-processor.d.ts.map +0 -1
- package/dist/sync/client-session-sync-processor.js +0 -131
- package/dist/sync/client-session-sync-processor.js.map +0 -1
- package/src/devtools/devtools-bridge.ts +0 -13
- package/src/devtools/index.ts +0 -48
- package/src/leader-thread/leader-sync-processor.ts +0 -666
- package/src/sync/client-session-sync-processor.ts +0 -207
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/schema.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
import { SqliteAst } from '@livestore/db-schema';
|
2
1
|
import { isReadonlyArray, shouldNeverHappen } from '@livestore/utils';
|
3
2
|
import { makeDerivedMutationDefsForTable } from '../derived-mutations.js';
|
3
|
+
import { SqliteAst } from './db-schema/mod.js';
|
4
4
|
import { rawSqlMutation, } from './mutations.js';
|
5
5
|
import { systemTables } from './system-tables.js';
|
6
6
|
import { tableHasDerivedMutations } from './table-def.js';
|
@@ -23,27 +23,30 @@ inputSchema) => {
|
|
23
23
|
// @ts-expect-error TODO fix type level issue
|
24
24
|
tables.set(tableDef.sqliteDef.name, tableDef);
|
25
25
|
}
|
26
|
-
const mutations =
|
26
|
+
const mutations = {
|
27
|
+
map: new Map(),
|
28
|
+
wasProvided: inputSchema.mutations !== undefined,
|
29
|
+
};
|
27
30
|
if (isReadonlyArray(inputSchema.mutations)) {
|
28
31
|
for (const mutation of inputSchema.mutations) {
|
29
|
-
mutations.set(mutation.name, mutation);
|
32
|
+
mutations.map.set(mutation.name, mutation);
|
30
33
|
}
|
31
34
|
}
|
32
35
|
else {
|
33
36
|
for (const mutation of Object.values(inputSchema.mutations ?? {})) {
|
34
|
-
if (mutations.has(mutation.name)) {
|
37
|
+
if (mutations.map.has(mutation.name)) {
|
35
38
|
shouldNeverHappen(`Duplicate mutation name: ${mutation.name}. Please use unique names for mutations.`);
|
36
39
|
}
|
37
|
-
mutations.set(mutation.name, mutation);
|
40
|
+
mutations.map.set(mutation.name, mutation);
|
38
41
|
}
|
39
42
|
}
|
40
|
-
mutations.set(rawSqlMutation.name, rawSqlMutation);
|
43
|
+
mutations.map.set(rawSqlMutation.name, rawSqlMutation);
|
41
44
|
for (const tableDef of tables.values()) {
|
42
45
|
if (tableHasDerivedMutations(tableDef)) {
|
43
46
|
const derivedMutationDefs = makeDerivedMutationDefsForTable(tableDef);
|
44
|
-
mutations.set(derivedMutationDefs.insert.name, derivedMutationDefs.insert);
|
45
|
-
mutations.set(derivedMutationDefs.update.name, derivedMutationDefs.update);
|
46
|
-
mutations.set(derivedMutationDefs.delete.name, derivedMutationDefs.delete);
|
47
|
+
mutations.map.set(derivedMutationDefs.insert.name, derivedMutationDefs.insert);
|
48
|
+
mutations.map.set(derivedMutationDefs.update.name, derivedMutationDefs.update);
|
49
|
+
mutations.map.set(derivedMutationDefs.delete.name, derivedMutationDefs.delete);
|
47
50
|
}
|
48
51
|
}
|
49
52
|
const hash = SqliteAst.hash({
|
@@ -60,4 +63,12 @@ inputSchema) => {
|
|
60
63
|
hash,
|
61
64
|
};
|
62
65
|
};
|
66
|
+
export const getMutationDef = (schema, mutationName) => {
|
67
|
+
const mutationDef = schema.mutations.map.get(mutationName);
|
68
|
+
if (mutationDef === undefined) {
|
69
|
+
const extraInfo = schema.mutations.wasProvided ? '' : ' Please provide \`mutations\` in the schema options.';
|
70
|
+
return shouldNeverHappen(`No mutation definition found for \`${mutationName}\`.${extraInfo}`);
|
71
|
+
}
|
72
|
+
return mutationDef;
|
73
|
+
};
|
63
74
|
//# sourceMappingURL=schema.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { type SqliteAst as __SqliteAst, SqliteDsl } from '@livestore/db-schema';
|
2
1
|
import { Schema } from '@livestore/utils/effect';
|
2
|
+
import { SqliteDsl } from './db-schema/mod.js';
|
3
3
|
import type { FromTable } from './table-def.js';
|
4
4
|
export declare const SCHEMA_META_TABLE = "__livestore_schema";
|
5
5
|
export declare const schemaMetaTable: import("./table-def.js").TableDef<{
|
@@ -28,7 +28,7 @@ export declare const schemaMetaTable: import("./table-def.js").TableDef<{
|
|
28
28
|
};
|
29
29
|
};
|
30
30
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
31
|
-
ast:
|
31
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
32
32
|
}, {
|
33
33
|
isSingleton: false;
|
34
34
|
disableAutomaticIdColumn: true;
|
@@ -72,7 +72,7 @@ export declare const schemaMutationsMetaTable: import("./table-def.js").TableDef
|
|
72
72
|
};
|
73
73
|
};
|
74
74
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
75
|
-
ast:
|
75
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
76
76
|
}, {
|
77
77
|
isSingleton: false;
|
78
78
|
disableAutomaticIdColumn: true;
|
@@ -99,23 +99,23 @@ export declare const sessionChangesetMetaTable: import("./table-def.js").TableDe
|
|
99
99
|
columns: {
|
100
100
|
idGlobal: {
|
101
101
|
columnType: "integer";
|
102
|
-
schema: Schema.Schema<number
|
102
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"GlobalEventId">, number, never>;
|
103
103
|
default: import("effect/Option").None<never>;
|
104
104
|
nullable: false;
|
105
105
|
primaryKey: false;
|
106
106
|
};
|
107
|
-
|
107
|
+
idClient: {
|
108
108
|
columnType: "integer";
|
109
|
-
schema: Schema.Schema<number
|
109
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"ClientEventId">, number, never>;
|
110
110
|
default: import("effect/Option").None<never>;
|
111
111
|
nullable: false;
|
112
112
|
primaryKey: false;
|
113
113
|
};
|
114
114
|
changeset: {
|
115
115
|
columnType: "blob";
|
116
|
-
schema: Schema.Schema<Uint8Array<ArrayBufferLike
|
116
|
+
schema: Schema.Schema<Uint8Array<ArrayBufferLike> | null, Uint8Array<ArrayBufferLike> | null, never>;
|
117
117
|
default: import("effect/Option").None<never>;
|
118
|
-
nullable:
|
118
|
+
nullable: true;
|
119
119
|
primaryKey: false;
|
120
120
|
};
|
121
121
|
debug: {
|
@@ -127,22 +127,22 @@ export declare const sessionChangesetMetaTable: import("./table-def.js").TableDe
|
|
127
127
|
};
|
128
128
|
};
|
129
129
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
130
|
-
ast:
|
130
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
131
131
|
}, {
|
132
132
|
isSingleton: false;
|
133
133
|
disableAutomaticIdColumn: true;
|
134
134
|
deriveMutations: never;
|
135
135
|
isSingleColumn: false;
|
136
|
-
requiredInsertColumnNames: "idGlobal" | "
|
136
|
+
requiredInsertColumnNames: "idGlobal" | "idClient";
|
137
137
|
}, Schema.Schema<{
|
138
|
-
readonly idGlobal: number
|
139
|
-
readonly
|
140
|
-
readonly changeset: Uint8Array<ArrayBufferLike
|
138
|
+
readonly idGlobal: number & import("effect/Brand").Brand<"GlobalEventId">;
|
139
|
+
readonly idClient: number & import("effect/Brand").Brand<"ClientEventId">;
|
140
|
+
readonly changeset: Uint8Array<ArrayBufferLike> | null;
|
141
141
|
readonly debug: unknown;
|
142
142
|
}, {
|
143
143
|
readonly idGlobal: number;
|
144
|
-
readonly
|
145
|
-
readonly changeset: Uint8Array<ArrayBufferLike
|
144
|
+
readonly idClient: number;
|
145
|
+
readonly changeset: Uint8Array<ArrayBufferLike> | null;
|
146
146
|
readonly debug: string | null;
|
147
147
|
}, never>>;
|
148
148
|
export type SessionChangesetMetaRow = FromTable.RowDecoded<typeof sessionChangesetMetaTable>;
|
@@ -172,7 +172,7 @@ export declare const systemTables: (import("./table-def.js").TableDef<{
|
|
172
172
|
};
|
173
173
|
};
|
174
174
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
175
|
-
ast:
|
175
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
176
176
|
}, {
|
177
177
|
isSingleton: false;
|
178
178
|
disableAutomaticIdColumn: true;
|
@@ -213,7 +213,7 @@ export declare const systemTables: (import("./table-def.js").TableDef<{
|
|
213
213
|
};
|
214
214
|
};
|
215
215
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
216
|
-
ast:
|
216
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
217
217
|
}, {
|
218
218
|
isSingleton: false;
|
219
219
|
disableAutomaticIdColumn: true;
|
@@ -233,23 +233,23 @@ export declare const systemTables: (import("./table-def.js").TableDef<{
|
|
233
233
|
columns: {
|
234
234
|
idGlobal: {
|
235
235
|
columnType: "integer";
|
236
|
-
schema: Schema.Schema<number
|
236
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"GlobalEventId">, number, never>;
|
237
237
|
default: import("effect/Option").None<never>;
|
238
238
|
nullable: false;
|
239
239
|
primaryKey: false;
|
240
240
|
};
|
241
|
-
|
241
|
+
idClient: {
|
242
242
|
columnType: "integer";
|
243
|
-
schema: Schema.Schema<number
|
243
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"ClientEventId">, number, never>;
|
244
244
|
default: import("effect/Option").None<never>;
|
245
245
|
nullable: false;
|
246
246
|
primaryKey: false;
|
247
247
|
};
|
248
248
|
changeset: {
|
249
249
|
columnType: "blob";
|
250
|
-
schema: Schema.Schema<Uint8Array<ArrayBufferLike
|
250
|
+
schema: Schema.Schema<Uint8Array<ArrayBufferLike> | null, Uint8Array<ArrayBufferLike> | null, never>;
|
251
251
|
default: import("effect/Option").None<never>;
|
252
|
-
nullable:
|
252
|
+
nullable: true;
|
253
253
|
primaryKey: false;
|
254
254
|
};
|
255
255
|
debug: {
|
@@ -261,25 +261,25 @@ export declare const systemTables: (import("./table-def.js").TableDef<{
|
|
261
261
|
};
|
262
262
|
};
|
263
263
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
264
|
-
ast:
|
264
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
265
265
|
}, {
|
266
266
|
isSingleton: false;
|
267
267
|
disableAutomaticIdColumn: true;
|
268
268
|
deriveMutations: never;
|
269
269
|
isSingleColumn: false;
|
270
|
-
requiredInsertColumnNames: "idGlobal" | "
|
270
|
+
requiredInsertColumnNames: "idGlobal" | "idClient";
|
271
271
|
}, Schema.Schema<{
|
272
|
-
readonly idGlobal: number
|
273
|
-
readonly
|
274
|
-
readonly changeset: Uint8Array<ArrayBufferLike
|
272
|
+
readonly idGlobal: number & import("effect/Brand").Brand<"GlobalEventId">;
|
273
|
+
readonly idClient: number & import("effect/Brand").Brand<"ClientEventId">;
|
274
|
+
readonly changeset: Uint8Array<ArrayBufferLike> | null;
|
275
275
|
readonly debug: unknown;
|
276
276
|
}, {
|
277
277
|
readonly idGlobal: number;
|
278
|
-
readonly
|
279
|
-
readonly changeset: Uint8Array<ArrayBufferLike
|
278
|
+
readonly idClient: number;
|
279
|
+
readonly changeset: Uint8Array<ArrayBufferLike> | null;
|
280
280
|
readonly debug: string | null;
|
281
281
|
}, never>>)[];
|
282
|
-
export declare const SyncStatus: Schema.Literal<["synced", "pending", "error", "
|
282
|
+
export declare const SyncStatus: Schema.Literal<["synced", "pending", "error", "clientOnly"]>;
|
283
283
|
export type SyncStatus = typeof SyncStatus.Type;
|
284
284
|
export declare const MUTATION_LOG_META_TABLE = "mutation_log";
|
285
285
|
export declare const mutationLogMetaTable: import("./table-def.js").TableDef<{
|
@@ -287,28 +287,28 @@ export declare const mutationLogMetaTable: import("./table-def.js").TableDef<{
|
|
287
287
|
columns: {
|
288
288
|
idGlobal: {
|
289
289
|
columnType: "integer";
|
290
|
-
schema: Schema.Schema<number
|
290
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"GlobalEventId">, number, never>;
|
291
291
|
default: import("effect/Option").None<never>;
|
292
292
|
nullable: false;
|
293
293
|
primaryKey: true;
|
294
294
|
};
|
295
|
-
|
295
|
+
idClient: {
|
296
296
|
columnType: "integer";
|
297
|
-
schema: Schema.Schema<number
|
297
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"ClientEventId">, number, never>;
|
298
298
|
default: import("effect/Option").None<never>;
|
299
299
|
nullable: false;
|
300
300
|
primaryKey: true;
|
301
301
|
};
|
302
302
|
parentIdGlobal: {
|
303
303
|
columnType: "integer";
|
304
|
-
schema: Schema.Schema<number
|
304
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"GlobalEventId">, number, never>;
|
305
305
|
default: import("effect/Option").None<never>;
|
306
306
|
nullable: false;
|
307
307
|
primaryKey: false;
|
308
308
|
};
|
309
|
-
|
309
|
+
parentIdClient: {
|
310
310
|
columnType: "integer";
|
311
|
-
schema: Schema.Schema<number
|
311
|
+
schema: Schema.Schema<number & import("effect/Brand").Brand<"ClientEventId">, number, never>;
|
312
312
|
default: import("effect/Option").None<never>;
|
313
313
|
nullable: false;
|
314
314
|
primaryKey: false;
|
@@ -327,6 +327,20 @@ export declare const mutationLogMetaTable: import("./table-def.js").TableDef<{
|
|
327
327
|
nullable: false;
|
328
328
|
primaryKey: false;
|
329
329
|
};
|
330
|
+
clientId: {
|
331
|
+
columnType: "text";
|
332
|
+
schema: Schema.Schema<string, string, never>;
|
333
|
+
default: import("effect/Option").None<never>;
|
334
|
+
nullable: false;
|
335
|
+
primaryKey: false;
|
336
|
+
};
|
337
|
+
sessionId: {
|
338
|
+
columnType: "text";
|
339
|
+
schema: Schema.Schema<string | null, string | null, never>;
|
340
|
+
default: import("effect/Option").None<never>;
|
341
|
+
nullable: true;
|
342
|
+
primaryKey: false;
|
343
|
+
};
|
330
344
|
schemaHash: {
|
331
345
|
columnType: "integer";
|
332
346
|
schema: Schema.Schema<number, number, never>;
|
@@ -336,36 +350,40 @@ export declare const mutationLogMetaTable: import("./table-def.js").TableDef<{
|
|
336
350
|
};
|
337
351
|
syncMetadataJson: {
|
338
352
|
columnType: "text";
|
339
|
-
schema: Schema.Schema<import("effect/Option").Option<Schema.JsonValue>, string, never>;
|
353
|
+
schema: Schema.Schema<import("effect/Option").None<Schema.JsonValue> | import("effect/Option").Some<Schema.JsonValue>, string, never>;
|
340
354
|
default: import("effect/Option").None<never>;
|
341
355
|
nullable: false;
|
342
356
|
primaryKey: false;
|
343
357
|
};
|
344
358
|
};
|
345
359
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
346
|
-
ast:
|
360
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
347
361
|
}, {
|
348
362
|
isSingleton: false;
|
349
363
|
disableAutomaticIdColumn: true;
|
350
364
|
deriveMutations: never;
|
351
365
|
isSingleColumn: false;
|
352
|
-
requiredInsertColumnNames: "schemaHash" | "idGlobal" | "
|
366
|
+
requiredInsertColumnNames: "schemaHash" | "idGlobal" | "idClient" | "mutation" | "clientId" | "parentIdGlobal" | "parentIdClient" | "argsJson" | "syncMetadataJson";
|
353
367
|
}, Schema.Schema<{
|
354
|
-
readonly idGlobal: number
|
355
|
-
readonly
|
356
|
-
readonly parentIdGlobal: number
|
357
|
-
readonly
|
368
|
+
readonly idGlobal: number & import("effect/Brand").Brand<"GlobalEventId">;
|
369
|
+
readonly idClient: number & import("effect/Brand").Brand<"ClientEventId">;
|
370
|
+
readonly parentIdGlobal: number & import("effect/Brand").Brand<"GlobalEventId">;
|
371
|
+
readonly parentIdClient: number & import("effect/Brand").Brand<"ClientEventId">;
|
358
372
|
readonly mutation: string;
|
359
373
|
readonly argsJson: any;
|
374
|
+
readonly clientId: string;
|
375
|
+
readonly sessionId: string | null;
|
360
376
|
readonly schemaHash: number;
|
361
|
-
readonly syncMetadataJson: import("effect/Option").Option<Schema.JsonValue>;
|
377
|
+
readonly syncMetadataJson: import("effect/Option").None<Schema.JsonValue> | import("effect/Option").Some<Schema.JsonValue>;
|
362
378
|
}, {
|
363
379
|
readonly idGlobal: number;
|
364
|
-
readonly
|
380
|
+
readonly idClient: number;
|
365
381
|
readonly parentIdGlobal: number;
|
366
|
-
readonly
|
382
|
+
readonly parentIdClient: number;
|
367
383
|
readonly mutation: string;
|
368
384
|
readonly argsJson: string;
|
385
|
+
readonly clientId: string;
|
386
|
+
readonly sessionId: string | null;
|
369
387
|
readonly schemaHash: number;
|
370
388
|
readonly syncMetadataJson: string;
|
371
389
|
}, never>>;
|
@@ -383,7 +401,7 @@ export declare const syncStatusTable: import("./table-def.js").TableDef<{
|
|
383
401
|
};
|
384
402
|
};
|
385
403
|
indexes?: ReadonlyArray<SqliteDsl.Index>;
|
386
|
-
ast:
|
404
|
+
ast: import("./db-schema/ast/sqlite.js").Table;
|
387
405
|
}, {
|
388
406
|
isSingleton: false;
|
389
407
|
disableAutomaticIdColumn: true;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"system-tables.d.ts","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
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;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,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;;;GAGG;AACH,eAAO,MAAM,4BAA4B,kCAAkC,CAAA;AAE3E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAarC,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE5F,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAAyE,CAAA;AAIlG,eAAO,MAAM,UAAU,8DAA6D,CAAA;AACpF,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAE/C,eAAO,MAAM,uBAAuB,iBAAiB,CAAA;AAErD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAsBhC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAElF,eAAO,MAAM,iBAAiB,4BAA4B,CAAA;AAE1D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;UAM3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA"}
|
@@ -1,5 +1,6 @@
|
|
1
|
-
import { SqliteDsl } from '@livestore/db-schema';
|
2
1
|
import { Schema } from '@livestore/utils/effect';
|
2
|
+
import { SqliteDsl } from './db-schema/mod.js';
|
3
|
+
import * as EventId from './EventId.js';
|
3
4
|
import { table } from './table-def.js';
|
4
5
|
/// App DB
|
5
6
|
export const SCHEMA_META_TABLE = '__livestore_schema';
|
@@ -23,27 +24,37 @@ export const schemaMutationsMetaTable = table(SCHEMA_MUTATIONS_META_TABLE, {
|
|
23
24
|
export const SESSION_CHANGESET_META_TABLE = '__livestore_session_changeset';
|
24
25
|
export const sessionChangesetMetaTable = table(SESSION_CHANGESET_META_TABLE, {
|
25
26
|
// TODO bring back primary key
|
26
|
-
idGlobal: SqliteDsl.integer({}),
|
27
|
-
|
28
|
-
|
29
|
-
// idLocal: SqliteDsl.integer({ primaryKey: true }),
|
30
|
-
changeset: SqliteDsl.blob({}),
|
27
|
+
idGlobal: SqliteDsl.integer({ schema: EventId.GlobalEventId }),
|
28
|
+
idClient: SqliteDsl.integer({ schema: EventId.ClientEventId }),
|
29
|
+
changeset: SqliteDsl.blob({ nullable: true }),
|
31
30
|
debug: SqliteDsl.json({ nullable: true }),
|
32
|
-
}, {
|
31
|
+
}, {
|
32
|
+
disableAutomaticIdColumn: true,
|
33
|
+
indexes: [{ columns: ['idGlobal', 'idClient'], name: 'idx_session_changeset_id' }],
|
34
|
+
});
|
33
35
|
export const systemTables = [schemaMetaTable, schemaMutationsMetaTable, sessionChangesetMetaTable];
|
34
36
|
/// Mutation log DB
|
35
|
-
export const SyncStatus = Schema.Literal('synced', 'pending', 'error', '
|
37
|
+
export const SyncStatus = Schema.Literal('synced', 'pending', 'error', 'clientOnly');
|
36
38
|
export const MUTATION_LOG_META_TABLE = 'mutation_log';
|
37
39
|
export const mutationLogMetaTable = table(MUTATION_LOG_META_TABLE, {
|
38
|
-
idGlobal: SqliteDsl.integer({ primaryKey: true }),
|
39
|
-
|
40
|
-
parentIdGlobal: SqliteDsl.integer({}),
|
41
|
-
|
40
|
+
idGlobal: SqliteDsl.integer({ primaryKey: true, schema: EventId.GlobalEventId }),
|
41
|
+
idClient: SqliteDsl.integer({ primaryKey: true, schema: EventId.ClientEventId }),
|
42
|
+
parentIdGlobal: SqliteDsl.integer({ schema: EventId.GlobalEventId }),
|
43
|
+
parentIdClient: SqliteDsl.integer({ schema: EventId.ClientEventId }),
|
42
44
|
mutation: SqliteDsl.text({}),
|
43
45
|
argsJson: SqliteDsl.text({ schema: Schema.parseJson(Schema.Any) }),
|
46
|
+
clientId: SqliteDsl.text({}),
|
47
|
+
/** Only available for mutations which were executed in this client */
|
48
|
+
sessionId: SqliteDsl.text({ nullable: true }),
|
44
49
|
schemaHash: SqliteDsl.integer({}),
|
45
50
|
syncMetadataJson: SqliteDsl.text({ schema: Schema.parseJson(Schema.Option(Schema.JsonValue)) }),
|
46
|
-
}, {
|
51
|
+
}, {
|
52
|
+
disableAutomaticIdColumn: true,
|
53
|
+
indexes: [
|
54
|
+
{ columns: ['idGlobal'], name: 'idx_idGlobal' },
|
55
|
+
{ columns: ['idGlobal', 'idClient'], name: 'idx_mutationlog_id' },
|
56
|
+
],
|
57
|
+
});
|
47
58
|
export const SYNC_STATUS_TABLE = '__livestore_sync_status';
|
48
59
|
export const syncStatusTable = table(SYNC_STATUS_TABLE, {
|
49
60
|
head: SqliteDsl.integer({ primaryKey: true }),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"system-tables.js","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"system-tables.js","sourceRoot":"","sources":["../../src/schema/system-tables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,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;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,+BAA+B,CAAA;AAE3E,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAC5C,4BAA4B,EAC5B;IACE,8BAA8B;IAC9B,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IAC9D,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IAC9D,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC7C,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAC1C,EACD;IACE,wBAAwB,EAAE,IAAI;IAC9B,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;CACnF,CACF,CAAA;AAID,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,eAAe,EAAE,wBAAwB,EAAE,yBAAyB,CAAC,CAAA;AAElG,mBAAmB;AAEnB,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;AAGpF,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAA;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CACvC,uBAAuB,EACvB;IACE,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IAChF,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IAChF,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IACpE,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IACpE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5B,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IAClE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5B,sEAAsE;IACtE,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC7C,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IACjC,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;CAChG,EACD;IACE,wBAAwB,EAAE,IAAI;IAC9B,OAAO,EAAE;QACP,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE;QAC/C,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE;KAClE;CACF,CACF,CAAA;AAID,MAAM,CAAC,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AAE1D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAClC,iBAAiB,EACjB;IACE,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;CAC9C,EACD,EAAE,wBAAwB,EAAE,IAAI,EAAE,CACnC,CAAA"}
|
@@ -1,10 +1,10 @@
|
|
1
|
-
import type { Nullable
|
2
|
-
import {
|
1
|
+
import type { Nullable } from '@livestore/utils';
|
2
|
+
import type { Types } from '@livestore/utils/effect';
|
3
3
|
import { Schema } from '@livestore/utils/effect';
|
4
4
|
import type { DerivedMutationHelperFns } from '../derived-mutations.js';
|
5
5
|
import type { QueryBuilder } from '../query-builder/mod.js';
|
6
|
+
import { SqliteDsl } from './db-schema/mod.js';
|
6
7
|
export declare const blob: SqliteDsl.ColDefFn<"blob">, boolean: SqliteDsl.SpecializedColDefFn<"integer", false, boolean>, column: <TColumnType extends SqliteDsl.FieldColumnType>(columnType: TColumnType) => SqliteDsl.ColDefFn<TColumnType>, datetime: SqliteDsl.SpecializedColDefFn<"text", false, Date>, integer: SqliteDsl.ColDefFn<"integer">, isColumnDefinition: (value: unknown) => value is SqliteDsl.ColumnDefinition<any, any>, json: SqliteDsl.SpecializedColDefFn<"text", true, unknown>, real: SqliteDsl.ColDefFn<"real">, text: SqliteDsl.ColDefFn<"text">;
|
7
|
-
export { SqliteDsl } from '@livestore/db-schema';
|
8
8
|
export type StateType = 'singleton' | 'dynamic';
|
9
9
|
export type DefaultSqliteTableDef = SqliteDsl.TableDefinition<string, SqliteDsl.Columns>;
|
10
10
|
export type DefaultSqliteTableDefConstrained = SqliteDsl.TableDefinition<string, SqliteDsl.ConstraintColumns>;
|
@@ -28,8 +28,7 @@ export type TableOptionsInput = Partial<{
|
|
28
28
|
disableAutomaticIdColumn: boolean;
|
29
29
|
isSingleton: boolean;
|
30
30
|
deriveMutations: boolean | {
|
31
|
-
|
32
|
-
localOnly?: boolean;
|
31
|
+
clientOnly?: boolean;
|
33
32
|
};
|
34
33
|
}>;
|
35
34
|
type ToColumns<TColumns extends SqliteDsl.Columns | SqliteDsl.ColumnDefinition<any, any>> = TColumns extends SqliteDsl.Columns ? TColumns : TColumns extends SqliteDsl.ColumnDefinition<any, any> ? {
|
@@ -66,7 +65,7 @@ export type TableOptions = {
|
|
66
65
|
/**
|
67
66
|
* When set to true, the mutations won't be synced over the network
|
68
67
|
*/
|
69
|
-
|
68
|
+
clientOnly: boolean;
|
70
69
|
};
|
71
70
|
/** Derived based on whether the table definition has one or more columns (besides the `id` column) */
|
72
71
|
readonly isSingleColumn: boolean;
|
@@ -78,20 +77,12 @@ export type TableOptions = {
|
|
78
77
|
*/
|
79
78
|
readonly requiredInsertColumnNames: string;
|
80
79
|
};
|
81
|
-
export declare const table: <TName extends string, TColumns extends SqliteDsl.Columns | SqliteDsl.ColumnDefinition<any, any>, TOptionsInput extends TableOptionsInput =
|
82
|
-
indexes: SqliteDsl.Index[];
|
83
|
-
disableAutomaticIdColumn: boolean;
|
84
|
-
isSingleton: boolean;
|
85
|
-
deriveMutations: boolean | {
|
86
|
-
enabled: true;
|
87
|
-
localOnly?: boolean;
|
88
|
-
};
|
89
|
-
}>>(name: TName, columnOrColumns: TColumns, options?: TOptionsInput) => ValidateTableOptionsInput<TColumns, TOptionsInput, TableDef<SqliteTableDefForInput<TName, TColumns, WithDefaults<TOptionsInput, TColumns>>, WithDefaults<TOptionsInput, TColumns>>>;
|
80
|
+
export declare const table: <TName extends string, TColumns extends SqliteDsl.Columns | SqliteDsl.ColumnDefinition<any, any>, TOptionsInput extends TableOptionsInput = TableOptionsInput>(name: TName, columnOrColumns: TColumns, options?: TOptionsInput) => ValidateTableOptionsInput<TColumns, TOptionsInput, TableDef<SqliteTableDefForInput<TName, TColumns, WithDefaults<TOptionsInput, TColumns>>, WithDefaults<TOptionsInput, TColumns>>>;
|
90
81
|
export declare const tableHasDerivedMutations: <TTableDef extends TableDefBase>(tableDef: TTableDef) => tableDef is TTableDef & {
|
91
82
|
options: {
|
92
83
|
deriveMutations: {
|
93
84
|
enabled: true;
|
94
|
-
|
85
|
+
clientOnly: boolean;
|
95
86
|
};
|
96
87
|
};
|
97
88
|
} & DerivedMutationHelperFns<TTableDef["sqliteDef"]["columns"], TTableDef["options"]>;
|
@@ -100,6 +91,9 @@ export declare const tableIsSingleton: <TTableDef extends TableDefBase>(tableDef
|
|
100
91
|
isSingleton: true;
|
101
92
|
};
|
102
93
|
};
|
94
|
+
export type PrettifyFlat<T> = T extends infer U ? {
|
95
|
+
[K in keyof U]: U[K];
|
96
|
+
} : never;
|
103
97
|
type SqliteTableDefForInput<TName extends string, TColumns extends SqliteDsl.Columns | SqliteDsl.ColumnDefinition<any, any>, TOptions extends TableOptions> = SqliteDsl.TableDefinition<TName, PrettifyFlat<WithId<ToColumns<TColumns>, TOptions>>>;
|
104
98
|
type WithId<TColumns extends SqliteDsl.Columns, TOptions extends TableOptions> = TColumns & ('id' extends keyof TColumns ? {} : TOptions['disableAutomaticIdColumn'] extends true ? {} : TOptions['isSingleton'] extends true ? {
|
105
99
|
id: SqliteDsl.ColumnDefinition<'singleton', 'singleton'>;
|
@@ -111,21 +105,20 @@ type WithDefaults<TOptionsInput extends TableOptionsInput, TColumns extends Sqli
|
|
111
105
|
disableAutomaticIdColumn: TOptionsInput['disableAutomaticIdColumn'] extends true ? true : false;
|
112
106
|
deriveMutations: TOptionsInput['deriveMutations'] extends true ? {
|
113
107
|
enabled: true;
|
114
|
-
|
108
|
+
clientOnly: false;
|
115
109
|
} : TOptionsInput['deriveMutations'] extends false ? {
|
116
110
|
enabled: false;
|
117
111
|
} : TOptionsInput['deriveMutations'] extends {
|
118
|
-
|
119
|
-
localOnly?: boolean;
|
112
|
+
clientOnly: boolean;
|
120
113
|
} ? {
|
121
114
|
enabled: true;
|
122
|
-
|
115
|
+
clientOnly: TOptionsInput['deriveMutations']['clientOnly'] extends true ? true : false;
|
123
116
|
} : never;
|
124
117
|
isSingleColumn: SqliteDsl.IsSingleColumn<TColumns>;
|
125
118
|
requiredInsertColumnNames: SqliteDsl.FromColumns.RequiredInsertColumnNames<ToColumns<TColumns>>;
|
126
119
|
};
|
127
120
|
export declare namespace FromTable {
|
128
|
-
type RowDecoded<TTableDef extends TableDefBase> =
|
121
|
+
type RowDecoded<TTableDef extends TableDefBase> = Types.Simplify<Nullable<Pick<RowDecodedAll<TTableDef>, NullableColumnNames<TTableDef>>> & Omit<RowDecodedAll<TTableDef>, NullableColumnNames<TTableDef>>>;
|
129
122
|
type NullableColumnNames<TTableDef extends TableDefBase> = FromColumns.NullableColumnNames<TTableDef['sqliteDef']['columns']>;
|
130
123
|
type Columns<TTableDef extends TableDefBase> = {
|
131
124
|
[K in keyof TTableDef['sqliteDef']['columns']]: TTableDef['sqliteDef']['columns'][K]['columnType'];
|
@@ -133,17 +126,17 @@ export declare namespace FromTable {
|
|
133
126
|
type RowEncodeNonNullable<TTableDef extends TableDefBase> = {
|
134
127
|
[K in keyof TTableDef['sqliteDef']['columns']]: Schema.Schema.Encoded<TTableDef['sqliteDef']['columns'][K]['schema']>;
|
135
128
|
};
|
136
|
-
type RowEncoded<TTableDef extends TableDefBase> =
|
129
|
+
type RowEncoded<TTableDef extends TableDefBase> = Types.Simplify<Nullable<Pick<RowEncodeNonNullable<TTableDef>, NullableColumnNames<TTableDef>>> & Omit<RowEncodeNonNullable<TTableDef>, NullableColumnNames<TTableDef>>>;
|
137
130
|
type RowDecodedAll<TTableDef extends TableDefBase> = {
|
138
131
|
[K in keyof TTableDef['sqliteDef']['columns']]: Schema.Schema.Type<TTableDef['sqliteDef']['columns'][K]['schema']>;
|
139
132
|
};
|
140
133
|
}
|
141
134
|
export declare namespace FromColumns {
|
142
|
-
type RowDecoded<TColumns extends SqliteDsl.Columns> =
|
135
|
+
type RowDecoded<TColumns extends SqliteDsl.Columns> = Types.Simplify<Nullable<Pick<RowDecodedAll<TColumns>, NullableColumnNames<TColumns>>> & Omit<RowDecodedAll<TColumns>, NullableColumnNames<TColumns>>>;
|
143
136
|
type RowDecodedAll<TColumns extends SqliteDsl.Columns> = {
|
144
137
|
[K in keyof TColumns]: Schema.Schema.Type<TColumns[K]['schema']>;
|
145
138
|
};
|
146
|
-
type RowEncoded<TColumns extends SqliteDsl.Columns> =
|
139
|
+
type RowEncoded<TColumns extends SqliteDsl.Columns> = Types.Simplify<Nullable<Pick<RowEncodeNonNullable<TColumns>, NullableColumnNames<TColumns>>> & Omit<RowEncodeNonNullable<TColumns>, NullableColumnNames<TColumns>>>;
|
147
140
|
type RowEncodeNonNullable<TColumns extends SqliteDsl.Columns> = {
|
148
141
|
[K in keyof TColumns]: Schema.Schema.Encoded<TColumns[K]['schema']>;
|
149
142
|
};
|
@@ -153,4 +146,5 @@ export declare namespace FromColumns {
|
|
153
146
|
type RequiredInsertColumnNames<TColumns extends SqliteDsl.Columns> = SqliteDsl.FromColumns.RequiredInsertColumnNames<TColumns>;
|
154
147
|
type InsertRowDecoded<TColumns extends SqliteDsl.Columns> = SqliteDsl.FromColumns.InsertRowDecoded<TColumns>;
|
155
148
|
}
|
149
|
+
export {};
|
156
150
|
//# sourceMappingURL=table-def.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"table-def.d.ts","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,
|
1
|
+
{"version":3,"file":"table-def.d.ts","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"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"}
|