@livestore/livestore 0.0.0-snapshot-2b8a9de3ec1a701aca891ebc2c98eb328274ae9e → 0.0.0-snapshot-2c861249e50661661613204300b1fc0d902c2e46

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 (68) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/SqliteDbWrapper.d.ts +7 -1
  3. package/dist/SqliteDbWrapper.d.ts.map +1 -1
  4. package/dist/SqliteDbWrapper.js +8 -2
  5. package/dist/SqliteDbWrapper.js.map +1 -1
  6. package/dist/live-queries/base-class.d.ts +8 -12
  7. package/dist/live-queries/base-class.d.ts.map +1 -1
  8. package/dist/live-queries/base-class.js.map +1 -1
  9. package/dist/live-queries/computed.d.ts +4 -8
  10. package/dist/live-queries/computed.d.ts.map +1 -1
  11. package/dist/live-queries/computed.js +1 -6
  12. package/dist/live-queries/computed.js.map +1 -1
  13. package/dist/live-queries/db-query.d.ts +13 -18
  14. package/dist/live-queries/db-query.d.ts.map +1 -1
  15. package/dist/live-queries/db-query.js +31 -30
  16. package/dist/live-queries/db-query.js.map +1 -1
  17. package/dist/live-queries/db-query.test.js +7 -7
  18. package/dist/live-queries/db-query.test.js.map +1 -1
  19. package/dist/live-queries/make-ref.d.ts.map +1 -1
  20. package/dist/live-queries/make-ref.js +1 -0
  21. package/dist/live-queries/make-ref.js.map +1 -1
  22. package/dist/live-queries/row-query-utils.d.ts +12 -0
  23. package/dist/live-queries/row-query-utils.d.ts.map +1 -0
  24. package/dist/live-queries/row-query-utils.js +18 -0
  25. package/dist/live-queries/row-query-utils.js.map +1 -0
  26. package/dist/mod.d.ts +0 -1
  27. package/dist/mod.d.ts.map +1 -1
  28. package/dist/mod.js +0 -1
  29. package/dist/mod.js.map +1 -1
  30. package/dist/reactive.d.ts.map +1 -1
  31. package/dist/reactive.js +1 -1
  32. package/dist/reactive.js.map +1 -1
  33. package/dist/store/create-store.d.ts +12 -2
  34. package/dist/store/create-store.d.ts.map +1 -1
  35. package/dist/store/create-store.js +18 -11
  36. package/dist/store/create-store.js.map +1 -1
  37. package/dist/store/store-types.d.ts +11 -10
  38. package/dist/store/store-types.d.ts.map +1 -1
  39. package/dist/store/store.d.ts +29 -30
  40. package/dist/store/store.d.ts.map +1 -1
  41. package/dist/store/store.js +84 -85
  42. package/dist/store/store.js.map +1 -1
  43. package/dist/utils/stack-info.test.js +6 -6
  44. package/dist/utils/tests/fixture.d.ts +54 -207
  45. package/dist/utils/tests/fixture.d.ts.map +1 -1
  46. package/dist/utils/tests/fixture.js +20 -13
  47. package/dist/utils/tests/fixture.js.map +1 -1
  48. package/package.json +4 -4
  49. package/src/SqliteDbWrapper.ts +12 -3
  50. package/src/live-queries/__snapshots__/db-query.test.ts.snap +9 -9
  51. package/src/live-queries/base-class.ts +8 -25
  52. package/src/live-queries/computed.ts +4 -18
  53. package/src/live-queries/db-query.test.ts +7 -7
  54. package/src/live-queries/db-query.ts +57 -63
  55. package/src/live-queries/make-ref.ts +2 -0
  56. package/src/live-queries/row-query-utils.ts +50 -0
  57. package/src/mod.ts +0 -2
  58. package/src/reactive.ts +1 -1
  59. package/src/store/create-store.ts +33 -15
  60. package/src/store/store-types.ts +11 -11
  61. package/src/store/store.ts +120 -122
  62. package/src/utils/stack-info.test.ts +6 -6
  63. package/src/utils/tests/fixture.ts +21 -25
  64. package/dist/row-query-utils.d.ts +0 -17
  65. package/dist/row-query-utils.d.ts.map +0 -1
  66. package/dist/row-query-utils.js +0 -34
  67. package/dist/row-query-utils.js.map +0 -1
  68. package/src/row-query-utils.ts +0 -76
@@ -1,6 +1,6 @@
1
1
  import type { ClientSession, ClientSessionSyncProcessor, ParamsObject, QueryBuilder, UnexpectedError } from '@livestore/common';
2
2
  import type { LiveStoreSchema } from '@livestore/common/schema';
3
- import { MutationEvent } from '@livestore/common/schema';
3
+ import { LiveStoreEvent } from '@livestore/common/schema';
4
4
  import type { Scope } from '@livestore/utils/effect';
5
5
  import { Effect, Inspectable, Stream } from '@livestore/utils/effect';
6
6
  import * as otel from '@opentelemetry/api';
@@ -9,7 +9,7 @@ import type { Ref } from '../reactive.js';
9
9
  import { SqliteDbWrapper } from '../SqliteDbWrapper.js';
10
10
  import { ReferenceCountedSet } from '../utils/data-structures.js';
11
11
  import type { StackInfo } from '../utils/stack-info.js';
12
- import type { RefreshReason, StoreMutateOptions, StoreOptions, StoreOtel, Unsubscribe } from './store-types.js';
12
+ import type { RefreshReason, StoreCommitOptions, StoreOptions, StoreOtel, Unsubscribe } from './store-types.js';
13
13
  export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TContext = {}> extends Inspectable.Class {
14
14
  readonly storeId: string;
15
15
  reactivityGraph: ReactivityGraph;
@@ -25,15 +25,13 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
25
25
  tableRefs: {
26
26
  [key: string]: Ref<null, ReactivityGraphContext, RefreshReason>;
27
27
  };
28
- private runtime;
28
+ private effectContext;
29
29
  /** RC-based set to see which queries are currently subscribed to */
30
30
  activeQueries: ReferenceCountedSet<LiveQuery<any>>;
31
- readonly __mutationEventSchema: MutationEvent.ForMutationDefRecord<TSchema["_MutationDefMapType"]>;
32
- private unsyncedMutationEvents;
31
+ readonly __eventSchema: LiveStoreEvent.ForEventDefRecord<TSchema["_EventDefMapType"]>;
33
32
  readonly syncProcessor: ClientSessionSyncProcessor;
34
- readonly lifetimeScope: Scope.Scope;
35
33
  readonly boot: Effect.Effect<void, UnexpectedError, Scope.Scope>;
36
- constructor({ clientSession, schema, otelOptions, context, disableDevtools, batchUpdates, unsyncedMutationEvents, storeId, lifetimeScope, runtime, params, confirmUnsavedChanges, }: StoreOptions<TSchema, TContext>);
34
+ constructor({ clientSession, schema, otelOptions, context, batchUpdates, storeId, effectContext, params, confirmUnsavedChanges, __runningInDevtools, }: StoreOptions<TSchema, TContext>);
37
35
  get sessionId(): string;
38
36
  get clientId(): string;
39
37
  /**
@@ -45,10 +43,10 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
45
43
  * const unsubscribe = store.subscribe(query$, { onUpdate: (result) => console.log(result) })
46
44
  * ```
47
45
  */
48
- subscribe: <TResult>(query: LiveQueryDef<TResult, any> | LiveQuery<TResult, any>, options: {
46
+ subscribe: <TResult>(query: LiveQueryDef<TResult> | LiveQuery<TResult>, options: {
49
47
  /** Called when the query result has changed */
50
48
  onUpdate: (value: TResult) => void;
51
- onSubscribe?: (query$: LiveQuery<TResult, any>) => void;
49
+ onSubscribe?: (query$: LiveQuery<TResult>) => void;
52
50
  /** Gets called after the query subscription has been removed */
53
51
  onUnsubsubscribe?: () => void;
54
52
  label?: string;
@@ -61,7 +59,7 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
61
59
  /** If provided, the stack info will be added to the `activeSubscriptions` set of the query */
62
60
  stackInfo?: StackInfo;
63
61
  }) => Unsubscribe;
64
- subscribeStream: <TResult>(query$: LiveQueryDef<TResult, any>, options?: {
62
+ subscribeStream: <TResult>(query$: LiveQueryDef<TResult>, options?: {
65
63
  label?: string;
66
64
  skipInitialRun?: boolean;
67
65
  } | undefined) => Stream.Stream<TResult>;
@@ -79,51 +77,52 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
79
77
  * const completedTodos = store.query({ query: 'SELECT * FROM todo WHERE complete = 1', bindValues: {} })
80
78
  * ```
81
79
  */
82
- query: <TResult>(query: QueryBuilder<TResult, any, any> | LiveQuery<TResult, any> | LiveQueryDef<TResult, any> | {
80
+ query: <TResult>(query: QueryBuilder<TResult, any, any> | LiveQuery<TResult> | LiveQueryDef<TResult> | {
83
81
  query: string;
84
82
  bindValues: ParamsObject;
85
83
  }, options?: {
86
84
  otelContext?: otel.Context;
87
85
  debugRefreshReason?: RefreshReason;
88
86
  }) => TResult;
87
+ atom: () => TODO;
89
88
  setRef: <T>(refDef: ILiveQueryRefDef<T>, value: T) => void;
90
89
  /**
91
- * Commit a list of mutations to the store which will immediately update the local database
92
- * and sync the mutations across other clients (similar to a `git commit`).
90
+ * Commit a list of events to the store which will immediately update the local database
91
+ * and sync the events across other clients (similar to a `git commit`).
93
92
  *
94
93
  * @example
95
94
  * ```ts
96
- * store.commit(mutations.todoCreated({ id: nanoid(), text: 'Make coffee' }))
95
+ * store.commit(events.todoCreated({ id: nanoid(), text: 'Make coffee' }))
97
96
  * ```
98
97
  *
99
- * You can call `commit` with multiple mutations to apply them in a single database transaction.
98
+ * You can call `commit` with multiple events to apply them in a single database transaction.
100
99
  *
101
100
  * @example
102
101
  * ```ts
103
102
  * const todoId = nanoid()
104
103
  * store.commit(
105
- * mutations.todoCreated({ id: todoId, text: 'Make coffee' }),
106
- * mutations.todoCompleted({ id: todoId }))
104
+ * events.todoCreated({ id: todoId, text: 'Make coffee' }),
105
+ * events.todoCompleted({ id: todoId }))
107
106
  * ```
108
107
  *
109
108
  * For more advanced transaction scenarios, you can pass a synchronous function to `commit` which will receive a callback
110
- * to which you can pass multiple mutations to be committed in the same database transaction.
111
- * Under the hood this will simply collect all mutations and apply them in a single database transaction.
109
+ * to which you can pass multiple events to be committed in the same database transaction.
110
+ * Under the hood this will simply collect all events and apply them in a single database transaction.
112
111
  *
113
112
  * @example
114
113
  * ```ts
115
114
  * store.commit((commit) => {
116
115
  * const todoId = nanoid()
117
116
  * if (Math.random() > 0.5) {
118
- * commit(mutations.todoCreated({ id: todoId, text: 'Make coffee' }))
117
+ * commit(events.todoCreated({ id: todoId, text: 'Make coffee' }))
119
118
  * } else {
120
- * commit(mutations.todoCompleted({ id: todoId }))
119
+ * commit(events.todoCompleted({ id: todoId }))
121
120
  * }
122
121
  * })
123
122
  * ```
124
123
  *
125
- * When committing a large batch of mutations, you can also skip the database refresh to improve performance
126
- * and call `store.manualRefresh()` after all mutations have been committed.
124
+ * When committing a large batch of events, you can also skip the database refresh to improve performance
125
+ * and call `store.manualRefresh()` after all events have been committed.
127
126
  *
128
127
  * @example
129
128
  * ```ts
@@ -133,19 +132,19 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
133
132
  * // ... 1000 more todos
134
133
  * ]
135
134
  * for (const todo of todos) {
136
- * store.commit({ skipRefresh: true }, mutations.todoCreated({ id: todo.id, text: todo.text }))
135
+ * store.commit({ skipRefresh: true }, events.todoCreated({ id: todo.id, text: todo.text }))
137
136
  * }
138
137
  * store.manualRefresh()
139
138
  * ```
140
139
  */
141
140
  commit: {
142
- <const TMutationArg extends ReadonlyArray<MutationEvent.PartialForSchema<TSchema>>>(...list: TMutationArg): void;
143
- (txn: <const TMutationArg extends ReadonlyArray<MutationEvent.PartialForSchema<TSchema>>>(...list: TMutationArg) => void): void;
144
- <const TMutationArg extends ReadonlyArray<MutationEvent.PartialForSchema<TSchema>>>(options: StoreMutateOptions, ...list: TMutationArg): void;
145
- (options: StoreMutateOptions, txn: <const TMutationArg extends ReadonlyArray<MutationEvent.PartialForSchema<TSchema>>>(...list: TMutationArg) => void): void;
141
+ <const TCommitArg extends ReadonlyArray<LiveStoreEvent.PartialForSchema<TSchema>>>(...list: TCommitArg): void;
142
+ (txn: <const TCommitArg extends ReadonlyArray<LiveStoreEvent.PartialForSchema<TSchema>>>(...list: TCommitArg) => void): void;
143
+ <const TCommitArg extends ReadonlyArray<LiveStoreEvent.PartialForSchema<TSchema>>>(options: StoreCommitOptions, ...list: TCommitArg): void;
144
+ (options: StoreCommitOptions, txn: <const TCommitArg extends ReadonlyArray<LiveStoreEvent.PartialForSchema<TSchema>>>(...list: TCommitArg) => void): void;
146
145
  };
147
146
  /**
148
- * This can be used in combination with `skipRefresh` when applying mutations.
147
+ * This can be used in combination with `skipRefresh` when committing events.
149
148
  * We might need a better solution for this. Let's see.
150
149
  */
151
150
  manualRefresh: (options?: {
@@ -157,6 +156,6 @@ export declare class Store<TSchema extends LiveStoreSchema = LiveStoreSchema, TC
157
156
  reactivityGraph: import("../reactive.js").ReactiveGraphSnapshot;
158
157
  };
159
158
  private runEffectFork;
160
- private getMutateArgs;
159
+ private getCommitArgs;
161
160
  }
162
161
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { Devtools, getDurationMsFromSpan, getExecArgsFromMutation, getResultSchema, IntentionalShutdownCause, isQueryBuilder, liveStoreVersion, makeClientSessionSyncProcessor, prepareBindValues, QueryBuilderAstSymbol, replaceSessionIdSymbol, } from '@livestore/common';
2
- import { getMutationDef, MutationEvent, SCHEMA_META_TABLE, SCHEMA_MUTATIONS_META_TABLE, SESSION_CHANGESET_META_TABLE, } from '@livestore/common/schema';
1
+ import { Devtools, getDurationMsFromSpan, getExecArgsFromEvent, getResultSchema, IntentionalShutdownCause, isQueryBuilder, liveStoreVersion, makeClientSessionSyncProcessor, prepareBindValues, QueryBuilderAstSymbol, replaceSessionIdSymbol, } from '@livestore/common';
2
+ import { getEventDef, LEADER_MERGE_COUNTER_TABLE, LiveStoreEvent, SCHEMA_EVENT_DEFS_META_TABLE, SCHEMA_META_TABLE, SESSION_CHANGESET_META_TABLE, } from '@livestore/common/schema';
3
3
  import { assertNever, isDevEnv } from '@livestore/utils';
4
- import { Cause, Data, Effect, Inspectable, MutableHashMap, OtelTracer, Runtime, Schema, Stream, } from '@livestore/utils/effect';
4
+ import { Cause, Effect, Inspectable, OtelTracer, Runtime, Schema, Stream } from '@livestore/utils/effect';
5
5
  import { nanoid } from '@livestore/utils/nanoid';
6
6
  import * as otel from '@opentelemetry/api';
7
7
  import { makeReactivityGraph } from '../live-queries/base-class.js';
8
- import { makeExecBeforeFirstRun } from '../row-query-utils.js';
8
+ import { makeExecBeforeFirstRun } from '../live-queries/row-query-utils.js';
9
9
  import { SqliteDbWrapper } from '../SqliteDbWrapper.js';
10
10
  import { ReferenceCountedSet } from '../utils/data-structures.js';
11
11
  import { downloadBlob, exposeDebugUtils } from '../utils/dev.js';
@@ -25,37 +25,33 @@ export class Store extends Inspectable.Class {
25
25
  * This only works in combination with `equal: () => false` which will always trigger a refresh.
26
26
  */
27
27
  tableRefs;
28
- runtime;
28
+ effectContext;
29
29
  /** RC-based set to see which queries are currently subscribed to */
30
30
  activeQueries;
31
- // NOTE this is currently exposed for the Devtools databrowser to emit mutation events
32
- __mutationEventSchema;
33
- unsyncedMutationEvents;
31
+ // NOTE this is currently exposed for the Devtools databrowser to commit events
32
+ __eventSchema;
34
33
  syncProcessor;
35
- lifetimeScope;
36
34
  boot;
37
35
  // #region constructor
38
- constructor({ clientSession, schema, otelOptions, context, disableDevtools, batchUpdates, unsyncedMutationEvents, storeId, lifetimeScope, runtime, params, confirmUnsavedChanges, }) {
36
+ constructor({ clientSession, schema, otelOptions, context, batchUpdates, storeId, effectContext, params, confirmUnsavedChanges, __runningInDevtools, }) {
39
37
  super();
40
38
  this.storeId = storeId;
41
- this.unsyncedMutationEvents = unsyncedMutationEvents;
42
39
  this.sqliteDbWrapper = new SqliteDbWrapper({ otel: otelOptions, db: clientSession.sqliteDb });
43
40
  this.clientSession = clientSession;
44
41
  this.schema = schema;
45
42
  this.context = context;
46
- this.lifetimeScope = lifetimeScope;
47
- this.runtime = runtime;
43
+ this.effectContext = effectContext;
48
44
  const reactivityGraph = makeReactivityGraph();
49
45
  const syncSpan = otelOptions.tracer.startSpan('LiveStore:sync', {}, otelOptions.rootSpanContext);
50
46
  this.syncProcessor = makeClientSessionSyncProcessor({
51
47
  schema,
52
48
  clientSession,
53
- runtime,
54
- applyMutation: (mutationEventDecoded, { otelContext, withChangeset }) => {
55
- const mutationDef = getMutationDef(schema, mutationEventDecoded.mutation);
56
- const execArgsArr = getExecArgsFromMutation({
57
- mutationDef,
58
- mutationEvent: { decoded: mutationEventDecoded, encoded: undefined },
49
+ runtime: effectContext.runtime,
50
+ applyEvent: (eventDecoded, { otelContext, withChangeset }) => {
51
+ const eventDef = getEventDef(schema, eventDecoded.name);
52
+ const execArgsArr = getExecArgsFromEvent({
53
+ eventDef,
54
+ event: { decoded: eventDecoded, encoded: undefined },
59
55
  });
60
56
  const writeTablesForEvent = new Set();
61
57
  const exec = () => {
@@ -65,7 +61,7 @@ export class Store extends Inspectable.Class {
65
61
  writeTables.forEach((table) => writeTablesForEvent.add(table));
66
62
  }
67
63
  };
68
- let sessionChangeset;
64
+ let sessionChangeset = { _tag: 'unset' };
69
65
  if (withChangeset === true) {
70
66
  sessionChangeset = this.sqliteDbWrapper.withChangeset(exec).changeset;
71
67
  }
@@ -92,12 +88,12 @@ export class Store extends Inspectable.Class {
92
88
  },
93
89
  confirmUnsavedChanges,
94
90
  });
95
- this.__mutationEventSchema = MutationEvent.makeMutationEventSchemaMemo(schema);
91
+ this.__eventSchema = LiveStoreEvent.makeEventDefSchemaMemo(schema);
96
92
  // TODO generalize the `tableRefs` concept to allow finer-grained refs
97
93
  this.tableRefs = {};
98
94
  this.activeQueries = new ReferenceCountedSet();
99
- const mutationsSpan = otelOptions.tracer.startSpan('LiveStore:mutations', {}, otelOptions.rootSpanContext);
100
- const otelMuationsSpanContext = otel.trace.setSpan(otel.context.active(), mutationsSpan);
95
+ const commitsSpan = otelOptions.tracer.startSpan('LiveStore:commits', {}, otelOptions.rootSpanContext);
96
+ const otelMuationsSpanContext = otel.trace.setSpan(otel.context.active(), commitsSpan);
101
97
  const queriesSpan = otelOptions.tracer.startSpan('LiveStore:queries', {}, otelOptions.rootSpanContext);
102
98
  const otelQueriesSpanContext = otel.trace.setSpan(otel.context.active(), queriesSpan);
103
99
  this.reactivityGraph = reactivityGraph;
@@ -111,19 +107,19 @@ export class Store extends Inspectable.Class {
111
107
  };
112
108
  this.otel = {
113
109
  tracer: otelOptions.tracer,
114
- mutationsSpanContext: otelMuationsSpanContext,
110
+ commitsSpanContext: otelMuationsSpanContext,
115
111
  queriesSpanContext: otelQueriesSpanContext,
116
112
  };
117
- // TODO find a better way to detect if we're running LiveStore in the LiveStore devtools
118
- // But for now this is a good enough approximation with little downsides
119
- const isRunningInDevtools = disableDevtools === true;
120
113
  // Need a set here since `schema.tables` might contain duplicates and some componentStateTables
121
114
  const allTableNames = new Set(
122
- // NOTE we're excluding the LiveStore schema and mutations tables as they are not user-facing
115
+ // NOTE we're excluding the LiveStore schema and events tables as they are not user-facing
123
116
  // unless LiveStore is running in the devtools
124
- isRunningInDevtools
117
+ __runningInDevtools
125
118
  ? this.schema.tables.keys()
126
- : Array.from(this.schema.tables.keys()).filter((_) => _ !== SCHEMA_META_TABLE && _ !== SCHEMA_MUTATIONS_META_TABLE && _ !== SESSION_CHANGESET_META_TABLE));
119
+ : Array.from(this.schema.tables.keys()).filter((_) => _ !== SCHEMA_META_TABLE &&
120
+ _ !== SCHEMA_EVENT_DEFS_META_TABLE &&
121
+ _ !== SESSION_CHANGESET_META_TABLE &&
122
+ _ !== LEADER_MERGE_COUNTER_TABLE));
127
123
  const existingTableRefs = new Map(Array.from(this.reactivityGraph.atoms.values())
128
124
  .filter((_) => _._tag === 'ref' && _.label?.startsWith('tableRef:') === true)
129
125
  .map((_) => [_.label.slice('tableRef:'.length), _]));
@@ -140,7 +136,7 @@ export class Store extends Inspectable.Class {
140
136
  }
141
137
  // End the otel spans
142
138
  syncSpan.end();
143
- mutationsSpan.end();
139
+ commitsSpan.end();
144
140
  queriesSpan.end();
145
141
  }));
146
142
  yield* this.syncProcessor.boot;
@@ -235,7 +231,7 @@ export class Store extends Inspectable.Class {
235
231
  makeExecBeforeFirstRun({
236
232
  table: ast.tableDef,
237
233
  id: ast.id,
238
- insertValues: ast.insertValues,
234
+ explicitDefaultValues: ast.explicitDefaultValues,
239
235
  otelContext: options?.otelContext,
240
236
  })(this.reactivityGraph.context);
241
237
  }
@@ -257,6 +253,7 @@ export class Store extends Inspectable.Class {
257
253
  return query.run({ otelContext: options?.otelContext, debugRefreshReason: options?.debugRefreshReason });
258
254
  }
259
255
  };
256
+ atom = () => { };
260
257
  // makeLive: {
261
258
  // <T>(def: LiveQueryDef<T, any>): LiveQuery<T, any>
262
259
  // <T>(def: ILiveQueryRefDef<T>): ILiveQueryRef<T>
@@ -274,42 +271,42 @@ export class Store extends Inspectable.Class {
274
271
  };
275
272
  // #region commit
276
273
  /**
277
- * Commit a list of mutations to the store which will immediately update the local database
278
- * and sync the mutations across other clients (similar to a `git commit`).
274
+ * Commit a list of events to the store which will immediately update the local database
275
+ * and sync the events across other clients (similar to a `git commit`).
279
276
  *
280
277
  * @example
281
278
  * ```ts
282
- * store.commit(mutations.todoCreated({ id: nanoid(), text: 'Make coffee' }))
279
+ * store.commit(events.todoCreated({ id: nanoid(), text: 'Make coffee' }))
283
280
  * ```
284
281
  *
285
- * You can call `commit` with multiple mutations to apply them in a single database transaction.
282
+ * You can call `commit` with multiple events to apply them in a single database transaction.
286
283
  *
287
284
  * @example
288
285
  * ```ts
289
286
  * const todoId = nanoid()
290
287
  * store.commit(
291
- * mutations.todoCreated({ id: todoId, text: 'Make coffee' }),
292
- * mutations.todoCompleted({ id: todoId }))
288
+ * events.todoCreated({ id: todoId, text: 'Make coffee' }),
289
+ * events.todoCompleted({ id: todoId }))
293
290
  * ```
294
291
  *
295
292
  * For more advanced transaction scenarios, you can pass a synchronous function to `commit` which will receive a callback
296
- * to which you can pass multiple mutations to be committed in the same database transaction.
297
- * Under the hood this will simply collect all mutations and apply them in a single database transaction.
293
+ * to which you can pass multiple events to be committed in the same database transaction.
294
+ * Under the hood this will simply collect all events and apply them in a single database transaction.
298
295
  *
299
296
  * @example
300
297
  * ```ts
301
298
  * store.commit((commit) => {
302
299
  * const todoId = nanoid()
303
300
  * if (Math.random() > 0.5) {
304
- * commit(mutations.todoCreated({ id: todoId, text: 'Make coffee' }))
301
+ * commit(events.todoCreated({ id: todoId, text: 'Make coffee' }))
305
302
  * } else {
306
- * commit(mutations.todoCompleted({ id: todoId }))
303
+ * commit(events.todoCompleted({ id: todoId }))
307
304
  * }
308
305
  * })
309
306
  * ```
310
307
  *
311
- * When committing a large batch of mutations, you can also skip the database refresh to improve performance
312
- * and call `store.manualRefresh()` after all mutations have been committed.
308
+ * When committing a large batch of events, you can also skip the database refresh to improve performance
309
+ * and call `store.manualRefresh()` after all events have been committed.
313
310
  *
314
311
  * @example
315
312
  * ```ts
@@ -319,44 +316,44 @@ export class Store extends Inspectable.Class {
319
316
  * // ... 1000 more todos
320
317
  * ]
321
318
  * for (const todo of todos) {
322
- * store.commit({ skipRefresh: true }, mutations.todoCreated({ id: todo.id, text: todo.text }))
319
+ * store.commit({ skipRefresh: true }, events.todoCreated({ id: todo.id, text: todo.text }))
323
320
  * }
324
321
  * store.manualRefresh()
325
322
  * ```
326
323
  */
327
- commit = (firstMutationOrTxnFnOrOptions, ...restMutations) => {
328
- const { mutationsEvents, options } = this.getMutateArgs(firstMutationOrTxnFnOrOptions, restMutations);
329
- for (const mutationEvent of mutationsEvents) {
330
- replaceSessionIdSymbol(mutationEvent.args, this.clientSession.sessionId);
324
+ commit = (firstEventOrTxnFnOrOptions, ...restEvents) => {
325
+ const { events, options } = this.getCommitArgs(firstEventOrTxnFnOrOptions, restEvents);
326
+ for (const event of events) {
327
+ replaceSessionIdSymbol(event.args, this.clientSession.sessionId);
331
328
  }
332
- if (mutationsEvents.length === 0)
329
+ if (events.length === 0)
333
330
  return;
334
331
  const skipRefresh = options?.skipRefresh ?? false;
335
- const mutationsSpan = otel.trace.getSpan(this.otel.mutationsSpanContext);
336
- mutationsSpan.addEvent('commit');
332
+ const commitsSpan = otel.trace.getSpan(this.otel.commitsSpanContext);
333
+ commitsSpan.addEvent('commit');
337
334
  // console.group('LiveStore.commit', { skipRefresh, wasSyncMessage, label })
338
- // mutationsEvents.forEach((_) => console.debug(_.mutation, _.id, _.args))
335
+ // events.forEach((_) => console.debug(_.name, _.id, _.args))
339
336
  // console.groupEnd()
340
337
  let durationMs;
341
338
  return this.otel.tracer.startActiveSpan('LiveStore:commit', {
342
339
  attributes: {
343
- 'livestore.mutationEventsCount': mutationsEvents.length,
344
- 'livestore.mutationEventTags': mutationsEvents.map((_) => _.mutation),
340
+ 'livestore.eventsCount': events.length,
341
+ 'livestore.eventTags': events.map((_) => _.name),
345
342
  'livestore.commitLabel': options?.label,
346
343
  },
347
344
  links: options?.spanLinks,
348
- }, options?.otelContext ?? this.otel.mutationsSpanContext, (span) => {
345
+ }, options?.otelContext ?? this.otel.commitsSpanContext, (span) => {
349
346
  const otelContext = otel.trace.setSpan(otel.context.active(), span);
350
347
  try {
351
348
  const { writeTables } = (() => {
352
349
  try {
353
- const applyMutations = () => this.syncProcessor.push(mutationsEvents, { otelContext });
354
- if (mutationsEvents.length > 1) {
350
+ const applyEvents = () => this.syncProcessor.push(events, { otelContext });
351
+ if (events.length > 1) {
355
352
  // TODO: what to do about leader transaction here?
356
- return this.sqliteDbWrapper.txn(applyMutations);
353
+ return this.sqliteDbWrapper.txn(applyEvents);
357
354
  }
358
355
  else {
359
- return applyMutations();
356
+ return applyEvents();
360
357
  }
361
358
  }
362
359
  catch (e) {
@@ -376,7 +373,7 @@ export class Store extends Inspectable.Class {
376
373
  }
377
374
  const debugRefreshReason = {
378
375
  _tag: 'commit',
379
- mutations: mutationsEvents,
376
+ events,
380
377
  writeTables: Array.from(writeTables),
381
378
  };
382
379
  // Update all table refs together in a batch, to only trigger one reactive update
@@ -396,12 +393,12 @@ export class Store extends Inspectable.Class {
396
393
  };
397
394
  // #endregion commit
398
395
  /**
399
- * This can be used in combination with `skipRefresh` when applying mutations.
396
+ * This can be used in combination with `skipRefresh` when committing events.
400
397
  * We might need a better solution for this. Let's see.
401
398
  */
402
399
  manualRefresh = (options) => {
403
400
  const { label } = options ?? {};
404
- this.otel.tracer.startActiveSpan('LiveStore:manualRefresh', { attributes: { 'livestore.manualRefreshLabel': label } }, this.otel.mutationsSpanContext, (span) => {
401
+ this.otel.tracer.startActiveSpan('LiveStore:manualRefresh', { attributes: { 'livestore.manualRefreshLabel': label } }, this.otel.commitsSpanContext, (span) => {
405
402
  const otelContext = otel.trace.setSpan(otel.context.active(), span);
406
403
  this.reactivityGraph.runDeferredEffects({ otelContext });
407
404
  span.end();
@@ -424,10 +421,10 @@ export class Store extends Inspectable.Class {
424
421
  downloadBlob(data, `livestore-${Date.now()}.db`);
425
422
  }).pipe(this.runEffectFork);
426
423
  },
427
- downloadMutationLogDb: () => {
424
+ downloadEventlogDb: () => {
428
425
  Effect.gen(this, function* () {
429
- const data = yield* this.clientSession.leaderThread.getMutationLogData;
430
- downloadBlob(data, `livestore-mutationlog-${Date.now()}.db`);
426
+ const data = yield* this.clientSession.leaderThread.getEventlogData;
427
+ downloadBlob(data, `livestore-eventlog-${Date.now()}.db`);
431
428
  }).pipe(this.runEffectFork);
432
429
  },
433
430
  hardReset: (mode = 'all-data') => {
@@ -452,32 +449,34 @@ export class Store extends Inspectable.Class {
452
449
  _tag: 'livestore.Store',
453
450
  reactivityGraph: this.reactivityGraph.getSnapshot({ includeResults: true }),
454
451
  });
455
- runEffectFork = (effect) => effect.pipe(Effect.forkIn(this.lifetimeScope), Effect.tapCauseLogPretty, Runtime.runFork(this.runtime));
456
- getMutateArgs = (firstMutationOrTxnFnOrOptions, restMutations) => {
457
- let mutationsEvents;
452
+ runEffectFork = (effect) => effect.pipe(Effect.forkIn(this.effectContext.lifetimeScope), Effect.tapCauseLogPretty, Runtime.runFork(this.effectContext.runtime));
453
+ getCommitArgs = (firstEventOrTxnFnOrOptions, restEvents) => {
454
+ let events;
458
455
  let options;
459
- if (typeof firstMutationOrTxnFnOrOptions === 'function') {
456
+ if (typeof firstEventOrTxnFnOrOptions === 'function') {
460
457
  // TODO ensure that function is synchronous and isn't called in a async way (also write tests for this)
461
- mutationsEvents = firstMutationOrTxnFnOrOptions((arg) => mutationsEvents.push(arg));
458
+ events = firstEventOrTxnFnOrOptions((arg) => events.push(arg));
462
459
  }
463
- else if (firstMutationOrTxnFnOrOptions?.label !== undefined ||
464
- firstMutationOrTxnFnOrOptions?.skipRefresh !== undefined ||
465
- firstMutationOrTxnFnOrOptions?.otelContext !== undefined ||
466
- firstMutationOrTxnFnOrOptions?.spanLinks !== undefined) {
467
- options = firstMutationOrTxnFnOrOptions;
468
- mutationsEvents = restMutations;
460
+ else if (firstEventOrTxnFnOrOptions?.label !== undefined ||
461
+ firstEventOrTxnFnOrOptions?.skipRefresh !== undefined ||
462
+ firstEventOrTxnFnOrOptions?.otelContext !== undefined ||
463
+ firstEventOrTxnFnOrOptions?.spanLinks !== undefined) {
464
+ options = firstEventOrTxnFnOrOptions;
465
+ events = restEvents;
469
466
  }
470
- else if (firstMutationOrTxnFnOrOptions === undefined) {
471
- // When `commit` is called with no arguments (which sometimes happens when dynamically filtering mutations)
472
- mutationsEvents = [];
467
+ else if (firstEventOrTxnFnOrOptions === undefined) {
468
+ // When `commit` is called with no arguments (which sometimes happens when dynamically filtering events)
469
+ events = [];
473
470
  }
474
471
  else {
475
- mutationsEvents = [firstMutationOrTxnFnOrOptions, ...restMutations];
472
+ events = [firstEventOrTxnFnOrOptions, ...restEvents];
476
473
  }
477
- mutationsEvents = mutationsEvents.filter(
478
- // @ts-expect-error TODO
479
- (_) => _.id === undefined || !MutableHashMap.has(this.unsyncedMutationEvents, Data.struct(_.id)));
480
- return { mutationsEvents, options };
474
+ // for (const event of events) {
475
+ // if (event.args.id === SessionIdSymbol) {
476
+ // event.args.id = this.clientSession.sessionId
477
+ // }
478
+ // }
479
+ return { events, options };
481
480
  };
482
481
  }
483
482
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}