@livestore/common 0.0.58-dev.1 → 0.0.58-dev.10
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 +48 -6
- package/dist/adapter-types.d.ts.map +1 -1
- package/dist/adapter-types.js +16 -1
- package/dist/adapter-types.js.map +1 -1
- package/dist/bounded-collections.js.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 +4 -2
- package/dist/derived-mutations.js.map +1 -1
- package/dist/derived-mutations.test.js +1 -0
- package/dist/derived-mutations.test.js.map +1 -1
- package/dist/devtools/devtools-bridge.d.ts +1 -1
- package/dist/devtools/devtools-bridge.d.ts.map +1 -1
- package/dist/devtools/devtools-messages.d.ts +91 -13
- package/dist/devtools/devtools-messages.d.ts.map +1 -1
- package/dist/devtools/devtools-messages.js +13 -4
- package/dist/devtools/devtools-messages.js.map +1 -1
- package/dist/devtools/index.d.ts +1 -0
- package/dist/devtools/index.d.ts.map +1 -1
- package/dist/devtools/index.js +2 -0
- package/dist/devtools/index.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/rehydrate-from-mutationlog.d.ts.map +1 -1
- package/dist/rehydrate-from-mutationlog.js +11 -5
- package/dist/rehydrate-from-mutationlog.js.map +1 -1
- package/dist/schema/index.d.ts +2 -2
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +1 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/mutations.d.ts +137 -17
- package/dist/schema/mutations.d.ts.map +1 -1
- package/dist/schema/mutations.js +42 -16
- package/dist/schema/mutations.js.map +1 -1
- package/dist/schema/schema-helpers.js +1 -1
- package/dist/schema/schema-helpers.js.map +1 -1
- package/dist/schema/system-tables.d.ts +119 -6
- package/dist/schema/system-tables.d.ts.map +1 -1
- package/dist/schema/system-tables.js +22 -9
- package/dist/schema/system-tables.js.map +1 -1
- package/dist/schema/table-def.d.ts +3 -3
- package/dist/schema/table-def.d.ts.map +1 -1
- package/dist/schema/table-def.js +1 -1
- package/dist/schema/table-def.js.map +1 -1
- package/dist/schema-management/migrations.d.ts +1 -1
- package/dist/schema-management/migrations.d.ts.map +1 -1
- package/dist/schema-management/migrations.js +2 -2
- package/dist/schema-management/migrations.js.map +1 -1
- package/dist/sql-queries/sql-queries.d.ts +10 -3
- package/dist/sql-queries/sql-queries.d.ts.map +1 -1
- package/dist/sql-queries/sql-queries.js +8 -7
- 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/types.d.ts +2 -2
- package/dist/sql-queries/types.d.ts.map +1 -1
- package/dist/sync/next/compact-events.d.ts +15 -0
- package/dist/sync/next/compact-events.d.ts.map +1 -0
- package/dist/sync/next/compact-events.js +176 -0
- package/dist/sync/next/compact-events.js.map +1 -0
- package/dist/sync/next/facts.d.ts +37 -0
- package/dist/sync/next/facts.d.ts.map +1 -0
- package/dist/sync/next/facts.js +156 -0
- package/dist/sync/next/facts.js.map +1 -0
- package/dist/sync/next/graphology.d.ts +8 -0
- package/dist/sync/next/graphology.d.ts.map +1 -0
- package/dist/sync/next/graphology.js +36 -0
- package/dist/sync/next/graphology.js.map +1 -0
- package/dist/sync/next/graphology_.d.ts +3 -0
- package/dist/sync/next/graphology_.d.ts.map +1 -0
- package/dist/sync/next/graphology_.js +3 -0
- package/dist/sync/next/graphology_.js.map +1 -0
- package/dist/sync/next/history-dag.d.ts +30 -0
- package/dist/sync/next/history-dag.d.ts.map +1 -0
- package/dist/sync/next/history-dag.js +69 -0
- package/dist/sync/next/history-dag.js.map +1 -0
- package/dist/sync/next/mod.d.ts +5 -0
- package/dist/sync/next/mod.d.ts.map +1 -0
- package/dist/sync/next/mod.js +5 -0
- package/dist/sync/next/mod.js.map +1 -0
- package/dist/sync/next/rebase-events.d.ts +27 -0
- package/dist/sync/next/rebase-events.d.ts.map +1 -0
- package/dist/sync/next/rebase-events.js +41 -0
- package/dist/sync/next/rebase-events.js.map +1 -0
- package/dist/sync/next/test/compact-events.calculator.test.d.ts +2 -0
- package/dist/sync/next/test/compact-events.calculator.test.d.ts.map +1 -0
- package/dist/sync/next/test/compact-events.calculator.test.js +101 -0
- package/dist/sync/next/test/compact-events.calculator.test.js.map +1 -0
- package/dist/sync/next/test/compact-events.test.d.ts +2 -0
- package/dist/sync/next/test/compact-events.test.d.ts.map +1 -0
- package/dist/sync/next/test/compact-events.test.js +201 -0
- package/dist/sync/next/test/compact-events.test.js.map +1 -0
- package/dist/sync/next/test/mod.d.ts +2 -0
- package/dist/sync/next/test/mod.d.ts.map +1 -0
- package/dist/sync/next/test/mod.js +2 -0
- package/dist/sync/next/test/mod.js.map +1 -0
- package/dist/sync/next/test/mutation-fixtures.d.ts +73 -0
- package/dist/sync/next/test/mutation-fixtures.d.ts.map +1 -0
- package/dist/sync/next/test/mutation-fixtures.js +161 -0
- package/dist/sync/next/test/mutation-fixtures.js.map +1 -0
- package/dist/sync/sync.d.ts +19 -6
- package/dist/sync/sync.d.ts.map +1 -1
- package/dist/sync/sync.js.map +1 -1
- package/dist/version.d.ts +8 -0
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +9 -0
- package/dist/version.js.map +1 -1
- package/package.json +21 -4
- package/src/adapter-types.ts +46 -7
- package/src/bounded-collections.ts +1 -1
- package/src/derived-mutations.test.ts +2 -1
- package/src/derived-mutations.ts +10 -10
- package/src/devtools/devtools-bridge.ts +1 -1
- package/src/devtools/devtools-messages.ts +12 -2
- package/src/devtools/index.ts +2 -0
- package/src/index.ts +6 -0
- package/src/rehydrate-from-mutationlog.ts +16 -7
- package/src/schema/index.ts +4 -3
- package/src/schema/mutations.ts +175 -30
- package/src/schema/schema-helpers.ts +1 -1
- package/src/schema/system-tables.ts +30 -9
- package/src/schema/table-def.ts +3 -3
- package/src/schema-management/migrations.ts +2 -2
- package/src/sql-queries/sql-queries.ts +21 -10
- package/src/sql-queries/sql-query-builder.ts +1 -1
- package/src/sql-queries/types.ts +2 -2
- package/src/sync/next/ambient.d.ts +3 -0
- package/src/sync/next/compact-events.ts +218 -0
- package/src/sync/next/facts.ts +229 -0
- package/src/sync/next/graphology.ts +49 -0
- package/src/sync/next/graphology_.ts +2 -0
- package/src/sync/next/history-dag.ts +109 -0
- package/src/sync/next/mod.ts +4 -0
- package/src/sync/next/rebase-events.ts +97 -0
- package/src/sync/next/test/compact-events.calculator.test.ts +121 -0
- package/src/sync/next/test/compact-events.test.ts +232 -0
- package/src/sync/next/test/mod.ts +1 -0
- package/src/sync/next/test/mutation-fixtures.ts +230 -0
- package/src/sync/sync.ts +30 -6
- package/src/version.ts +10 -0
- package/tsconfig.json +1 -1
package/src/sync/sync.ts
CHANGED
|
@@ -1,15 +1,39 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Effect, HttpClient, Option, Stream, SubscriptionRef } from '@livestore/utils/effect'
|
|
2
|
+
import { Schema } from '@livestore/utils/effect'
|
|
2
3
|
|
|
4
|
+
import type { EventId } from '../adapter-types.js'
|
|
3
5
|
import type { MutationEvent } from '../schema/mutations.js'
|
|
4
6
|
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
export interface SyncBackendOptionsBase {
|
|
8
|
+
type: string
|
|
9
|
+
[key: string]: Schema.JsonValue
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type SyncBackend<TSyncMetadata = Schema.JsonValue> = {
|
|
13
|
+
pull: (
|
|
14
|
+
args: Option.Option<{
|
|
15
|
+
cursor: EventId
|
|
16
|
+
metadata: Option.Option<TSyncMetadata>
|
|
17
|
+
}>,
|
|
18
|
+
options: { listenForNew: boolean },
|
|
19
|
+
) => Stream.Stream<
|
|
20
|
+
{
|
|
21
|
+
mutationEventEncoded: MutationEvent.AnyEncoded
|
|
22
|
+
metadata: Option.Option<TSyncMetadata>
|
|
23
|
+
persisted: boolean
|
|
24
|
+
},
|
|
25
|
+
IsOfflineError | InvalidPullError,
|
|
26
|
+
HttpClient.HttpClient
|
|
27
|
+
>
|
|
28
|
+
// TODO support batching
|
|
9
29
|
push: (
|
|
10
30
|
mutationEventEncoded: MutationEvent.AnyEncoded,
|
|
11
31
|
persisted: boolean,
|
|
12
|
-
) => Effect.Effect<
|
|
32
|
+
) => Effect.Effect<
|
|
33
|
+
{ metadata: Option.Option<TSyncMetadata> },
|
|
34
|
+
IsOfflineError | InvalidPushError,
|
|
35
|
+
HttpClient.HttpClient
|
|
36
|
+
>
|
|
13
37
|
isConnected: SubscriptionRef.SubscriptionRef<boolean>
|
|
14
38
|
}
|
|
15
39
|
|
package/src/version.ts
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
1
|
import packageJson from '../package.json' with { type: 'json' }
|
|
2
|
+
// import packageJson from '../package.json' assert { type: 'json' }
|
|
2
3
|
|
|
3
4
|
export const liveStoreVersion = packageJson.version
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* This version number is incremented whenever the internal storage format changes in a breaking way.
|
|
8
|
+
* Whenever this version changes, LiveStore will start with fresh database files. Old database files are not deleted.
|
|
9
|
+
*
|
|
10
|
+
* While LiveStore is in alpha, this might happen more frequently.
|
|
11
|
+
* In the future, LiveStore will provide a migration path for older database files to avoid the impression of data loss.
|
|
12
|
+
*/
|
|
13
|
+
export const liveStoreStorageFormatVersion = 2
|
package/tsconfig.json
CHANGED