@livestore/common 0.0.0-snapshot-2b8a9de3ec1a701aca891ebc2c98eb328274ae9e → 0.0.0-snapshot-2ef046b02334f52613d31dbe06af53487685edc0
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/adapter-types.d.ts +4 -11
- package/dist/adapter-types.d.ts.map +1 -1
- package/dist/adapter-types.js +0 -6
- package/dist/adapter-types.js.map +1 -1
- package/dist/devtools/devtools-messages-common.d.ts +7 -0
- package/dist/devtools/devtools-messages-common.d.ts.map +1 -1
- package/dist/devtools/devtools-messages-common.js +6 -0
- package/dist/devtools/devtools-messages-common.js.map +1 -1
- package/dist/devtools/devtools-messages-leader.d.ts +1 -1
- package/dist/devtools/devtools-messages-leader.d.ts.map +1 -1
- package/dist/devtools/devtools-messages-leader.js +1 -2
- package/dist/devtools/devtools-messages-leader.js.map +1 -1
- package/dist/leader-thread/LeaderSyncProcessor.d.ts +15 -6
- package/dist/leader-thread/LeaderSyncProcessor.d.ts.map +1 -1
- package/dist/leader-thread/LeaderSyncProcessor.js +199 -189
- package/dist/leader-thread/LeaderSyncProcessor.js.map +1 -1
- package/dist/leader-thread/apply-mutation.d.ts +14 -9
- package/dist/leader-thread/apply-mutation.d.ts.map +1 -1
- package/dist/leader-thread/apply-mutation.js +43 -36
- package/dist/leader-thread/apply-mutation.js.map +1 -1
- package/dist/leader-thread/leader-worker-devtools.d.ts.map +1 -1
- package/dist/leader-thread/leader-worker-devtools.js +2 -5
- package/dist/leader-thread/leader-worker-devtools.js.map +1 -1
- package/dist/leader-thread/make-leader-thread-layer.d.ts.map +1 -1
- package/dist/leader-thread/make-leader-thread-layer.js +21 -33
- package/dist/leader-thread/make-leader-thread-layer.js.map +1 -1
- package/dist/leader-thread/mod.d.ts +1 -1
- package/dist/leader-thread/mod.d.ts.map +1 -1
- package/dist/leader-thread/mod.js +1 -1
- package/dist/leader-thread/mod.js.map +1 -1
- package/dist/leader-thread/mutationlog.d.ts +19 -3
- package/dist/leader-thread/mutationlog.d.ts.map +1 -1
- package/dist/leader-thread/mutationlog.js +105 -12
- package/dist/leader-thread/mutationlog.js.map +1 -1
- package/dist/leader-thread/recreate-db.d.ts.map +1 -1
- package/dist/leader-thread/recreate-db.js +4 -3
- package/dist/leader-thread/recreate-db.js.map +1 -1
- package/dist/leader-thread/types.d.ts +35 -19
- package/dist/leader-thread/types.d.ts.map +1 -1
- package/dist/leader-thread/types.js.map +1 -1
- package/dist/rehydrate-from-mutationlog.d.ts +5 -4
- package/dist/rehydrate-from-mutationlog.d.ts.map +1 -1
- package/dist/rehydrate-from-mutationlog.js +7 -9
- package/dist/rehydrate-from-mutationlog.js.map +1 -1
- package/dist/schema/EventId.d.ts +4 -0
- package/dist/schema/EventId.d.ts.map +1 -1
- package/dist/schema/EventId.js +7 -1
- package/dist/schema/EventId.js.map +1 -1
- package/dist/schema/MutationEvent.d.ts +78 -25
- package/dist/schema/MutationEvent.d.ts.map +1 -1
- package/dist/schema/MutationEvent.js +25 -12
- package/dist/schema/MutationEvent.js.map +1 -1
- package/dist/schema/schema.js +1 -1
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/system-tables.d.ts +67 -0
- package/dist/schema/system-tables.d.ts.map +1 -1
- package/dist/schema/system-tables.js +12 -1
- package/dist/schema/system-tables.js.map +1 -1
- package/dist/sync/ClientSessionSyncProcessor.d.ts +9 -1
- package/dist/sync/ClientSessionSyncProcessor.d.ts.map +1 -1
- package/dist/sync/ClientSessionSyncProcessor.js +23 -19
- package/dist/sync/ClientSessionSyncProcessor.js.map +1 -1
- package/dist/sync/sync.d.ts +6 -5
- package/dist/sync/sync.d.ts.map +1 -1
- package/dist/sync/sync.js.map +1 -1
- package/dist/sync/syncstate.d.ts +47 -71
- package/dist/sync/syncstate.d.ts.map +1 -1
- package/dist/sync/syncstate.js +76 -112
- package/dist/sync/syncstate.js.map +1 -1
- package/dist/sync/syncstate.test.js +67 -139
- package/dist/sync/syncstate.test.js.map +1 -1
- package/package.json +2 -2
- package/src/adapter-types.ts +3 -12
- package/src/devtools/devtools-messages-common.ts +9 -0
- package/src/devtools/devtools-messages-leader.ts +1 -2
- package/src/leader-thread/LeaderSyncProcessor.ts +372 -348
- package/src/leader-thread/apply-mutation.ts +81 -71
- package/src/leader-thread/leader-worker-devtools.ts +3 -8
- package/src/leader-thread/make-leader-thread-layer.ts +26 -41
- package/src/leader-thread/mod.ts +1 -1
- package/src/leader-thread/mutationlog.ts +166 -13
- package/src/leader-thread/recreate-db.ts +4 -3
- package/src/leader-thread/types.ts +34 -23
- package/src/rehydrate-from-mutationlog.ts +12 -12
- package/src/schema/EventId.ts +8 -1
- package/src/schema/MutationEvent.ts +32 -16
- package/src/schema/schema.ts +1 -1
- package/src/schema/system-tables.ts +20 -1
- package/src/sync/ClientSessionSyncProcessor.ts +33 -25
- package/src/sync/sync.ts +6 -9
- package/src/sync/syncstate.test.ts +130 -208
- package/src/sync/syncstate.ts +76 -123
- package/dist/leader-thread/pull-queue-set.d.ts +0 -7
- package/dist/leader-thread/pull-queue-set.d.ts.map +0 -1
- package/dist/leader-thread/pull-queue-set.js +0 -48
- package/dist/leader-thread/pull-queue-set.js.map +0 -1
- package/src/leader-thread/pull-queue-set.ts +0 -67
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/common",
|
|
3
|
-
"version": "0.0.0-snapshot-
|
|
3
|
+
"version": "0.0.0-snapshot-2ef046b02334f52613d31dbe06af53487685edc0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"exports": {
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"graphology": "0.26.0-alpha1",
|
|
55
55
|
"graphology-dag": "0.4.1",
|
|
56
56
|
"graphology-types": "0.24.8",
|
|
57
|
-
"@livestore/utils": "0.0.0-snapshot-
|
|
57
|
+
"@livestore/utils": "0.0.0-snapshot-2ef046b02334f52613d31dbe06af53487685edc0"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"vitest": "^3.0.8"
|
package/src/adapter-types.ts
CHANGED
|
@@ -41,8 +41,9 @@ export interface ClientSession {
|
|
|
41
41
|
export interface ClientSessionLeaderThreadProxy {
|
|
42
42
|
mutations: {
|
|
43
43
|
pull: (args: {
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
/** The merge counter of the leader thread */
|
|
45
|
+
cursor: number
|
|
46
|
+
}) => Stream.Stream<{ payload: typeof PayloadUpstream.Type; mergeCounter: number }, UnexpectedError>
|
|
46
47
|
/** It's important that a client session doesn't call `push` concurrently. */
|
|
47
48
|
push(batch: ReadonlyArray<MutationEvent.AnyEncoded>): Effect.Effect<void, UnexpectedError | LeaderAheadError>
|
|
48
49
|
}
|
|
@@ -56,7 +57,6 @@ export interface ClientSessionLeaderThreadProxy {
|
|
|
56
57
|
export: Effect.Effect<Uint8Array, UnexpectedError>
|
|
57
58
|
getMutationLogData: Effect.Effect<Uint8Array, UnexpectedError>
|
|
58
59
|
getSyncState: Effect.Effect<SyncState, UnexpectedError>
|
|
59
|
-
networkStatus: SubscriptionRef.SubscriptionRef<NetworkStatus>
|
|
60
60
|
/** For debugging purposes it can be useful to manually trigger devtools messages (e.g. to reset the database) */
|
|
61
61
|
sendDevtoolsMessage: (message: Devtools.Leader.MessageToApp) => Effect.Effect<void, UnexpectedError>
|
|
62
62
|
}
|
|
@@ -108,15 +108,6 @@ export type PersistenceInfo<With extends {} = {}> = typeof PersistenceInfo.Type
|
|
|
108
108
|
|
|
109
109
|
export type ResetMode = 'all-data' | 'only-app-db'
|
|
110
110
|
|
|
111
|
-
export const NetworkStatus = Schema.Struct({
|
|
112
|
-
isConnected: Schema.Boolean,
|
|
113
|
-
timestampMs: Schema.Number,
|
|
114
|
-
/** Whether the network status devtools latch is closed. Used to simulate network disconnection. */
|
|
115
|
-
latchClosed: Schema.Boolean,
|
|
116
|
-
})
|
|
117
|
-
|
|
118
|
-
export type NetworkStatus = typeof NetworkStatus.Type
|
|
119
|
-
|
|
120
111
|
export const BootStateProgress = Schema.Struct({
|
|
121
112
|
done: Schema.Number,
|
|
122
113
|
total: Schema.Number,
|
|
@@ -2,6 +2,15 @@ import { Schema } from '@livestore/utils/effect'
|
|
|
2
2
|
|
|
3
3
|
import { liveStoreVersion as pkgVersion } from '../version.js'
|
|
4
4
|
|
|
5
|
+
export const NetworkStatus = Schema.Struct({
|
|
6
|
+
isConnected: Schema.Boolean,
|
|
7
|
+
timestampMs: Schema.Number,
|
|
8
|
+
/** Whether the network status devtools latch is closed. Used to simulate network disconnection. */
|
|
9
|
+
latchClosed: Schema.Boolean,
|
|
10
|
+
})
|
|
11
|
+
|
|
12
|
+
export type NetworkStatus = typeof NetworkStatus.Type
|
|
13
|
+
|
|
5
14
|
export const requestId = Schema.String
|
|
6
15
|
export const clientId = Schema.String
|
|
7
16
|
export const sessionId = Schema.String
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { Schema, Transferable } from '@livestore/utils/effect'
|
|
2
2
|
|
|
3
|
-
import { NetworkStatus } from '../adapter-types.js'
|
|
4
3
|
import { EventId } from '../schema/mod.js'
|
|
5
4
|
import * as MutationEvent from '../schema/MutationEvent.js'
|
|
6
5
|
import * as SyncState from '../sync/syncstate.js'
|
|
7
|
-
import { LeaderReqResMessage, LSDMessage, LSDReqResMessage } from './devtools-messages-common.js'
|
|
6
|
+
import { LeaderReqResMessage, LSDMessage, LSDReqResMessage, NetworkStatus } from './devtools-messages-common.js'
|
|
8
7
|
|
|
9
8
|
export class ResetAllDataReq extends LSDReqResMessage('LSD.Leader.ResetAllDataReq', {
|
|
10
9
|
mode: Schema.Literal('all-data', 'only-app-db'),
|