@livestore/livestore 0.0.54-dev.26 → 0.0.54-dev.28

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 (70) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/QueryCache.d.ts.map +1 -1
  3. package/dist/__tests__/react/fixture.d.ts +5 -15
  4. package/dist/__tests__/react/fixture.d.ts.map +1 -1
  5. package/dist/__tests__/react/fixture.js +2 -2
  6. package/dist/__tests__/react/fixture.js.map +1 -1
  7. package/dist/effect/LiveStore.d.ts +15 -8
  8. package/dist/effect/LiveStore.d.ts.map +1 -1
  9. package/dist/effect/LiveStore.js +15 -16
  10. package/dist/effect/LiveStore.js.map +1 -1
  11. package/dist/effect/index.d.ts +1 -1
  12. package/dist/effect/index.d.ts.map +1 -1
  13. package/dist/effect/index.js +1 -1
  14. package/dist/effect/index.js.map +1 -1
  15. package/dist/index.d.ts +3 -3
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +2 -2
  18. package/dist/index.js.map +1 -1
  19. package/dist/react/LiveStoreContext.d.ts +5 -2
  20. package/dist/react/LiveStoreContext.d.ts.map +1 -1
  21. package/dist/react/LiveStoreContext.js.map +1 -1
  22. package/dist/react/LiveStoreProvider.d.ts +3 -2
  23. package/dist/react/LiveStoreProvider.d.ts.map +1 -1
  24. package/dist/react/LiveStoreProvider.js +63 -39
  25. package/dist/react/LiveStoreProvider.js.map +1 -1
  26. package/dist/react/LiveStoreProvider.test.js +28 -9
  27. package/dist/react/LiveStoreProvider.test.js.map +1 -1
  28. package/dist/react/components/LiveList.d.ts.map +1 -1
  29. package/dist/react/useAtom.d.ts +1 -1
  30. package/dist/react/useAtom.d.ts.map +1 -1
  31. package/dist/react/useLocalId.d.ts.map +1 -1
  32. package/dist/react/useQuery.d.ts.map +1 -1
  33. package/dist/react/useQuery.js +2 -2
  34. package/dist/react/useQuery.js.map +1 -1
  35. package/dist/react/useRow.d.ts.map +1 -1
  36. package/dist/react/useRow.js +2 -2
  37. package/dist/react/useRow.js.map +1 -1
  38. package/dist/react/useRow.test.js +1 -1
  39. package/dist/react/useRow.test.js.map +1 -1
  40. package/dist/react/useTemporaryQuery.d.ts.map +1 -1
  41. package/dist/react/utils/useStateRefWithReactiveInput.d.ts.map +1 -1
  42. package/dist/reactive.d.ts +1 -1
  43. package/dist/reactive.d.ts.map +1 -1
  44. package/dist/reactive.js +3 -4
  45. package/dist/reactive.js.map +1 -1
  46. package/dist/reactiveQueries/base-class.d.ts.map +1 -1
  47. package/dist/reactiveQueries/graphql.d.ts.map +1 -1
  48. package/dist/reactiveQueries/js.d.ts.map +1 -1
  49. package/dist/reactiveQueries/sql.d.ts.map +1 -1
  50. package/dist/reactiveQueries/sql.test.js +6 -6
  51. package/dist/reactiveQueries/sql.test.js.map +1 -1
  52. package/dist/store.d.ts +12 -5
  53. package/dist/store.d.ts.map +1 -1
  54. package/dist/store.js +59 -122
  55. package/dist/store.js.map +1 -1
  56. package/dist/utils/otel.d.ts.map +1 -1
  57. package/package.json +8 -10
  58. package/src/__tests__/react/fixture.tsx +2 -2
  59. package/src/effect/LiveStore.ts +50 -43
  60. package/src/effect/index.ts +2 -1
  61. package/src/index.ts +7 -3
  62. package/src/react/LiveStoreContext.ts +3 -2
  63. package/src/react/LiveStoreProvider.test.tsx +47 -10
  64. package/src/react/LiveStoreProvider.tsx +95 -38
  65. package/src/react/useQuery.ts +2 -2
  66. package/src/react/useRow.test.tsx +1 -1
  67. package/src/react/useRow.ts +2 -5
  68. package/src/reactive.ts +3 -4
  69. package/src/reactiveQueries/sql.test.ts +6 -6
  70. package/src/store.ts +243 -286
package/dist/store.js CHANGED
@@ -1,8 +1,8 @@
1
- import { Devtools, getExecArgsFromMutation, liveStoreVersion, prepareBindValues } from '@livestore/common';
1
+ import { Devtools, getExecArgsFromMutation, liveStoreVersion, prepareBindValues, UnexpectedError, } from '@livestore/common';
2
2
  import { makeMutationEventSchemaMemo } from '@livestore/common/schema';
3
3
  import { assertNever, isPromise, makeNoopTracer, shouldNeverHappen, throttle } from '@livestore/utils';
4
4
  import { cuid } from '@livestore/utils/cuid';
5
- import { Effect, Layer, Logger, LogLevel, OtelTracer, Queue, Schema, Stream } from '@livestore/utils/effect';
5
+ import { Effect, Exit, Layer, Logger, LogLevel, OtelTracer, Queue, Runtime, Schema, Scope, Stream, } from '@livestore/utils/effect';
6
6
  import * as otel from '@opentelemetry/api';
7
7
  import { globalReactivityGraph } from './global-state.js';
8
8
  import { MainDatabaseWrapper } from './MainDatabaseWrapper.js';
@@ -14,6 +14,7 @@ const uniqueStoreId = () => `store-${++storeCount}`;
14
14
  export class Store {
15
15
  id = uniqueStoreId();
16
16
  devtoolsConnectionId = cuid();
17
+ storeScope;
17
18
  reactivityGraph;
18
19
  mainDbWrapper;
19
20
  adapter;
@@ -32,10 +33,11 @@ export class Store {
32
33
  /** RC-based set to see which queries are currently subscribed to */
33
34
  activeQueries;
34
35
  __mutationEventSchema;
35
- constructor({ adapter, schema, graphQLOptions, reactivityGraph, otelOptions, disableDevtools, __processedMutationIds, }) {
36
+ constructor({ adapter, schema, graphQLOptions, reactivityGraph, otelOptions, disableDevtools, __processedMutationIds, storeScope, }) {
36
37
  this.mainDbWrapper = new MainDatabaseWrapper({ otel: otelOptions, db: adapter.mainDb });
37
38
  this.adapter = adapter;
38
39
  this.schema = schema;
40
+ this.storeScope = storeScope;
39
41
  // TODO refactor
40
42
  this.__mutationEventSchema = makeMutationEventSchemaMemo(schema);
41
43
  // TODO remove this temporary solution and find a better way to avoid re-processing the same mutation
@@ -53,12 +55,6 @@ export class Store {
53
55
  otelTracer: otelOptions.tracer,
54
56
  rootOtelContext: otelQueriesSpanContext,
55
57
  };
56
- this.adapter.coordinator.syncMutations.pipe(Stream.tapSync((mutationEventDecoded) => {
57
- this.mutate({ wasSyncMessage: true }, mutationEventDecoded);
58
- }), Stream.runDrain, runEffectFork);
59
- if (disableDevtools !== true) {
60
- this.bootDevtools();
61
- }
62
58
  this.otel = {
63
59
  tracer: otelOptions.tracer,
64
60
  mutationsSpanContext: otelMuationsSpanContext,
@@ -76,6 +72,23 @@ export class Store {
76
72
  this.graphQLSchema = graphQLOptions.schema;
77
73
  this.graphQLContext = graphQLOptions.makeContext(this.mainDbWrapper, this.otel.tracer);
78
74
  }
75
+ Effect.gen(this, function* () {
76
+ yield* this.adapter.coordinator.syncMutations.pipe(Stream.tapSync((mutationEventDecoded) => {
77
+ this.mutate({ wasSyncMessage: true }, mutationEventDecoded);
78
+ }), Stream.runDrain, Effect.withSpan('LiveStore:syncMutations'), Effect.forkScoped);
79
+ if (disableDevtools !== true) {
80
+ yield* this.bootDevtools().pipe(Effect.forkScoped);
81
+ }
82
+ yield* Effect.addFinalizer(() => Effect.sync(() => {
83
+ for (const tableRef of Object.values(this.tableRefs)) {
84
+ for (const superComp of tableRef.super) {
85
+ this.reactivityGraph.removeEdge(superComp, tableRef);
86
+ }
87
+ }
88
+ otel.trace.getSpan(this.otel.mutationsSpanContext).end();
89
+ otel.trace.getSpan(this.otel.queriesSpanContext).end();
90
+ }));
91
+ }).pipe(Scope.extend(storeScope), Effect.forkIn(storeScope), Effect.scoped, runEffectFork);
79
92
  }
80
93
  static createStore = (storeOptions, parentSpan) => {
81
94
  const ctx = otel.trace.setSpan(otel.context.active(), parentSpan);
@@ -121,14 +134,7 @@ export class Store {
121
134
  * Currently only used when shutting down the app for debugging purposes (e.g. to close Otel spans).
122
135
  */
123
136
  destroy = async () => {
124
- for (const tableRef of Object.values(this.tableRefs)) {
125
- for (const superComp of tableRef.super) {
126
- this.reactivityGraph.removeEdge(superComp, tableRef);
127
- }
128
- }
129
- otel.trace.getSpan(this.otel.mutationsSpanContext).end();
130
- otel.trace.getSpan(this.otel.queriesSpanContext).end();
131
- await this.adapter.coordinator.shutdown.pipe(runEffectPromise);
137
+ await Scope.close(this.storeScope, Exit.void).pipe(Effect.withSpan('Store:destroy'), runEffectPromise);
132
138
  };
133
139
  mutate = (firstMutationOrTxnFnOrOptions, ...restMutations) => {
134
140
  let mutationsEvents;
@@ -167,6 +173,7 @@ export class Store {
167
173
  // console.group('LiveStore.mutate', { skipRefresh, wasSyncMessage, label })
168
174
  // mutationsEvents.forEach((_) => console.log(_.mutation, _.id, _.args))
169
175
  // console.groupEnd()
176
+ let durationMs;
170
177
  return this.otel.tracer.startActiveSpan('LiveStore:mutate', { attributes: { 'livestore.mutateLabel': label } }, this.otel.mutationsSpanContext, (span) => {
171
178
  const otelContext = otel.trace.setSpan(otel.context.active(), span);
172
179
  try {
@@ -187,8 +194,8 @@ export class Store {
187
194
  }
188
195
  }
189
196
  catch (e) {
190
- debugger;
191
197
  console.error(e, mutationEvent);
198
+ throw e;
192
199
  }
193
200
  }
194
201
  };
@@ -203,6 +210,7 @@ export class Store {
203
210
  catch (e) {
204
211
  console.error(e);
205
212
  span.setStatus({ code: otel.SpanStatusCode.ERROR, message: e.toString() });
213
+ throw e;
206
214
  }
207
215
  finally {
208
216
  span.end();
@@ -223,12 +231,15 @@ export class Store {
223
231
  this.reactivityGraph.setRefs(tablesToUpdate, { debugRefreshReason, otelContext, skipRefresh });
224
232
  }
225
233
  catch (e) {
234
+ console.error(e);
226
235
  span.setStatus({ code: otel.SpanStatusCode.ERROR, message: e.toString() });
236
+ throw e;
227
237
  }
228
238
  finally {
229
239
  span.end();
230
- return { durationMs: getDurationMsFromSpan(span) };
240
+ durationMs = getDurationMsFromSpan(span);
231
241
  }
242
+ return { durationMs };
232
243
  });
233
244
  };
234
245
  /**
@@ -310,10 +321,11 @@ export class Store {
310
321
  meta: { liveStoreRefType: 'table' },
311
322
  });
312
323
  // TODO shutdown behaviour
313
- bootDevtools = () => {
324
+ bootDevtools = () => Effect.gen(this, function* () {
314
325
  const sendToDevtoolsContentscript = (message) => {
315
326
  window.postMessage(Schema.encodeSync(Devtools.DevtoolsWindowMessage.MessageForContentscript)(message), '*');
316
327
  };
328
+ sendToDevtoolsContentscript(Devtools.DevtoolsWindowMessage.LoadIframe.make({}));
317
329
  const channelId = this.adapter.coordinator.devtools.channelId;
318
330
  window.addEventListener('message', (event) => {
319
331
  const decodedMessageRes = Schema.decodeOption(Devtools.DevtoolsWindowMessage.MessageForStore)(event.data);
@@ -327,7 +339,11 @@ export class Store {
327
339
  if (message.channelId !== channelId)
328
340
  return;
329
341
  if (message._tag === 'LSD.WindowMessage.MessagePortForStore') {
330
- this.adapter.coordinator.devtools.connect({ port: message.port, connectionId: this.devtoolsConnectionId }).pipe(Effect.tapSync(({ storeMessagePort }) => {
342
+ const reactivityGraphSubcriptions = new Map();
343
+ const liveQueriesSubscriptions = new Map();
344
+ this.adapter.coordinator.devtools
345
+ .connect({ port: message.port, connectionId: this.devtoolsConnectionId })
346
+ .pipe(Effect.tapSync(({ storeMessagePort }) => {
331
347
  // console.log('storeMessagePort', storeMessagePort)
332
348
  storeMessagePort.addEventListener('message', (event) => {
333
349
  const decodedMessage = Schema.decodeUnknownSync(Devtools.MessageToAppHostStore)(event.data);
@@ -416,102 +432,7 @@ export class Store {
416
432
  }
417
433
  });
418
434
  sendToDevtoolsContentscript(Devtools.DevtoolsWindowMessage.StoreReady.make({ channelId }));
419
- const reactivityGraphSubcriptions = new Map();
420
- const liveQueriesSubscriptions = new Map();
421
- // devtoolsChannel.toAppHost.addEventListener('message', async (event) => {
422
- // const decoded = Schema.decodeUnknownOption(Devtools.MessageToAppHostStore)(event.data)
423
- // if (decoded._tag === 'None' || decoded.value.channelId !== this.adapter.coordinator.devtools.channelId) {
424
- // // console.log(`Unknown message`, event)
425
- // return
426
- // }
427
- // const requestId = decoded.value.requestId
428
- // const sendToDevtools = (message: Devtools.MessageFromAppHostStore) =>
429
- // devtoolsChannel.fromAppHost.postMessage(Schema.encodeSync(Devtools.MessageFromAppHostStore)(message))
430
- // const requestIdleCallback = window.requestIdleCallback ?? ((cb: Function) => cb())
431
- // switch (decoded.value._tag) {
432
- // case 'LSD.ReactivityGraphSubscribe': {
433
- // const includeResults = decoded.value.includeResults
434
- // const send = () =>
435
- // // In order to not add more work to the current tick, we use requestIdleCallback
436
- // // to send the reactivity graph updates to the devtools
437
- // requestIdleCallback(
438
- // () =>
439
- // sendToDevtools(
440
- // Devtools.ReactivityGraphRes.make({
441
- // reactivityGraph: this.reactivityGraph.getSnapshot({ includeResults }),
442
- // requestId,
443
- // liveStoreVersion,
444
- // }),
445
- // ),
446
- // { timeout: 500 },
447
- // )
448
- // send()
449
- // // In some cases, there can be A LOT of reactivity graph updates in a short period of time
450
- // // so we throttle the updates to avoid sending too much data
451
- // // This might need to be tweaked further and possibly be exposed to the user in some way.
452
- // const throttledSend = throttle(send, 20)
453
- // reactivityGraphSubcriptions.set(requestId, this.reactivityGraph.subscribeToRefresh(throttledSend))
454
- // break
455
- // }
456
- // case 'LSD.DebugInfoReq': {
457
- // sendToDevtools(
458
- // Devtools.DebugInfoRes.make({ debugInfo: this.mainDbWrapper.debugInfo, requestId, liveStoreVersion }),
459
- // )
460
- // break
461
- // }
462
- // case 'LSD.DebugInfoResetReq': {
463
- // this.mainDbWrapper.debugInfo.slowQueries.clear()
464
- // sendToDevtools(Devtools.DebugInfoResetRes.make({ requestId, liveStoreVersion }))
465
- // break
466
- // }
467
- // case 'LSD.DebugInfoRerunQueryReq': {
468
- // const { queryStr, bindValues, queriedTables } = decoded.value
469
- // this.mainDbWrapper.select(queryStr, { bindValues, queriedTables, skipCache: true })
470
- // sendToDevtools(Devtools.DebugInfoRerunQueryRes.make({ requestId, liveStoreVersion }))
471
- // break
472
- // }
473
- // case 'LSD.ReactivityGraphUnsubscribe': {
474
- // reactivityGraphSubcriptions.get(requestId)!()
475
- // break
476
- // }
477
- // case 'LSD.LiveQueriesSubscribe': {
478
- // const send = () =>
479
- // requestIdleCallback(
480
- // () =>
481
- // sendToDevtools(
482
- // Devtools.LiveQueriesRes.make({
483
- // liveQueries: [...this.activeQueries].map((q) => ({
484
- // _tag: q._tag,
485
- // id: q.id,
486
- // label: q.label,
487
- // runs: q.runs,
488
- // executionTimes: q.executionTimes.map((_) => Number(_.toString().slice(0, 5))),
489
- // lastestResult:
490
- // q.results$.previousResult === NOT_REFRESHED_YET
491
- // ? 'SYMBOL_NOT_REFRESHED_YET'
492
- // : q.results$.previousResult,
493
- // activeSubscriptions: Array.from(q.activeSubscriptions),
494
- // })),
495
- // requestId,
496
- // liveStoreVersion,
497
- // }),
498
- // ),
499
- // { timeout: 500 },
500
- // )
501
- // send()
502
- // // Same as in the reactivity graph subscription case above, we need to throttle the updates
503
- // const throttledSend = throttle(send, 20)
504
- // liveQueriesSubscriptions.set(requestId, this.reactivityGraph.subscribeToRefresh(throttledSend))
505
- // break
506
- // }
507
- // case 'LSD.LiveQueriesUnsubscribe': {
508
- // liveQueriesSubscriptions.get(requestId)!()
509
- // break
510
- // }
511
- // // No default
512
- // }
513
- // })
514
- };
435
+ });
515
436
  __devDownloadDb = () => {
516
437
  const data = this.mainDbWrapper.export();
517
438
  downloadBlob(data, `livestore-${Date.now()}.db`);
@@ -524,8 +445,17 @@ export class Store {
524
445
  dangerouslyResetStorage = (mode) => this.adapter.coordinator.dangerouslyReset(mode).pipe(runEffectPromise);
525
446
  }
526
447
  /** Create a new LiveStore Store */
527
- export const createStore = async (options) => createStoreEff(options).pipe(runEffectPromise);
528
- export const createStoreEff = ({ schema, graphQLOptions, otelOptions, adapter: adapterFactory, boot, reactivityGraph = globalReactivityGraph, batchUpdates, disableDevtools, onBootStatus, }) => {
448
+ export const createStorePromise = async ({ signal, ...options }) => Effect.gen(function* () {
449
+ const scope = yield* Scope.make();
450
+ const runtime = yield* Effect.runtime();
451
+ if (signal !== undefined) {
452
+ signal.addEventListener('abort', () => {
453
+ Scope.close(scope, Exit.void).pipe(Effect.tapCauseLogPretty, Runtime.runFork(runtime));
454
+ });
455
+ }
456
+ return yield* createStore({ ...options, storeScope: scope }).pipe(Scope.extend(scope));
457
+ }).pipe(Effect.withSpan('createStore'), runEffectPromise);
458
+ export const createStore = ({ schema, graphQLOptions, otelOptions, adapter: adapterFactory, boot, reactivityGraph = globalReactivityGraph, batchUpdates, disableDevtools, onBootStatus, storeScope, }) => {
529
459
  const otelTracer = otelOptions?.tracer ?? makeNoopTracer();
530
460
  const otelRootSpanContext = otelOptions?.rootSpanContext ?? otel.context.active();
531
461
  const TracingLive = Layer.unwrapEffect(Effect.map(OtelTracer.make, Layer.setTracer)).pipe(Layer.provide(Layer.sync(OtelTracer.Tracer, () => otelTracer)));
@@ -537,6 +467,7 @@ export const createStoreEff = ({ schema, graphQLOptions, otelOptions, adapter: a
537
467
  schema,
538
468
  devtoolsEnabled: disableDevtools !== true,
539
469
  bootStatusQueue,
470
+ shutdown: (cause) => Scope.close(storeScope, Exit.failCause(cause)),
540
471
  }).pipe(Effect.withPerformanceMeasure('livestore:makeAdapter'), Effect.withSpan('createStore:makeAdapter'));
541
472
  if (batchUpdates !== undefined) {
542
473
  reactivityGraph.effectsWrapper = batchUpdates;
@@ -601,10 +532,13 @@ export const createStoreEff = ({ schema, graphQLOptions, otelOptions, adapter: a
601
532
  }
602
533
  },
603
534
  };
604
- const booting = boot(bootDbImpl, span);
535
+ const booting = yield* Effect.try({
536
+ try: () => boot(bootDbImpl, span),
537
+ catch: (cause) => new UnexpectedError({ cause }),
538
+ });
605
539
  // NOTE only awaiting if it's actually a promise to avoid unnecessary async/await
606
540
  if (isPromise(booting)) {
607
- yield* Effect.promise(() => booting);
541
+ yield* Effect.tryPromise({ try: () => booting, catch: (cause) => new UnexpectedError({ cause }) });
608
542
  }
609
543
  }
610
544
  // TODO: we can't apply the schema at this point, we've already loaded persisted data!
@@ -618,8 +552,11 @@ export const createStoreEff = ({ schema, graphQLOptions, otelOptions, adapter: a
618
552
  reactivityGraph,
619
553
  disableDevtools,
620
554
  __processedMutationIds,
555
+ storeScope,
621
556
  }, span);
622
- }).pipe(Effect.scoped, Effect.withSpan('createStore', {
557
+ }).pipe(
558
+ // Effect.scoped,
559
+ Effect.withSpan('createStore', {
623
560
  parent: otelOptions?.rootSpanContext
624
561
  ? OtelTracer.makeExternalSpan(otel.trace.getSpanContext(otelOptions.rootSpanContext))
625
562
  : undefined,
package/dist/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"otel.d.ts","sourceRoot":"","sources":["../../src/utils/otel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE/C,eAAO,MAAM,qBAAqB,SAAU,KAAK,IAAI,KAAG,MAGvD,CAAA;AAED,eAAO,MAAM,2BAA2B,SAAU,KAAK,IAAI,KAAG,mBACF,CAAA"}
1
+ {"version":3,"file":"otel.d.ts","sourceRoot":"","sources":["../../src/utils/otel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAE/C,eAAO,MAAM,qBAAqB,SAAU,IAAI,CAAC,IAAI,KAAG,MAGvD,CAAA;AAED,eAAO,MAAM,2BAA2B,SAAU,IAAI,CAAC,IAAI,KAAG,mBACF,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/livestore",
3
- "version": "0.0.54-dev.26",
3
+ "version": "0.0.54-dev.28",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -30,25 +30,23 @@
30
30
  "dependencies": {
31
31
  "@graphql-typed-document-node/core": "^3.2.0",
32
32
  "@opentelemetry/api": "^1.9.0",
33
- "lodash-es": "^4.17.21",
34
- "@livestore/common": "0.0.54-dev.26",
35
- "@livestore/utils": "0.0.54-dev.26",
36
- "effect-db-schema": "0.0.54-dev.26"
33
+ "@livestore/common": "0.0.54-dev.28",
34
+ "effect-db-schema": "0.0.54-dev.28",
35
+ "@livestore/utils": "0.0.54-dev.28"
37
36
  },
38
37
  "devDependencies": {
39
- "@opentelemetry/sdk-trace-base": "1.25.0",
40
- "@tauri-apps/api": "^1.5.6",
38
+ "@opentelemetry/sdk-trace-base": "1.25.1",
39
+ "@tauri-apps/api": "^1.6.0",
41
40
  "@testing-library/react": "^16.0.0",
42
- "@types/lodash-es": "^4.17.12",
43
41
  "@types/react": "^18.3.1",
44
42
  "@types/react-dom": "^18.3.0",
45
43
  "jsdom": "^24.0.0",
46
44
  "react": "^18.3.1",
47
45
  "react-dom": "^18.3.1",
48
- "typescript": "5.4.5",
46
+ "typescript": "5.5.4",
49
47
  "vite": "5.3.1",
50
48
  "vitest": "^1.6.0",
51
- "@livestore/web": "0.0.54-dev.26"
49
+ "@livestore/web": "0.0.54-dev.28"
52
50
  },
53
51
  "peerDependencies": {
54
52
  "@tauri-apps/api": "^1.4.0",
@@ -5,7 +5,7 @@ import React from 'react'
5
5
 
6
6
  import { globalReactivityGraph } from '../../global-state.js'
7
7
  import type { LiveStoreContext } from '../../index.js'
8
- import { createStore, DbSchema, makeReactivityGraph, makeSchema, ParseUtils, sql } from '../../index.js'
8
+ import { createStorePromise, DbSchema, makeReactivityGraph, makeSchema, ParseUtils, sql } from '../../index.js'
9
9
  import * as LiveStoreReact from '../../react/index.js'
10
10
 
11
11
  export type Todo = {
@@ -87,7 +87,7 @@ export const makeTodoMvc = async ({
87
87
  }
88
88
  }
89
89
 
90
- const store = await createStore({
90
+ const store = await createStorePromise({
91
91
  schema,
92
92
  boot: (db) => db.execute(sql`INSERT OR IGNORE INTO app (id, newTodoText, filter) VALUES ('static', '', 'all');`),
93
93
  adapter: makeInMemoryAdapter(),
@@ -1,7 +1,7 @@
1
- import type { BootDb, StoreAdapterFactory } from '@livestore/common'
1
+ import type { BootDb, StoreAdapterFactory, UnexpectedError } from '@livestore/common'
2
2
  import type { LiveStoreSchema } from '@livestore/common/schema'
3
- import type { Scope } from '@livestore/utils/effect'
4
- import { Context, Deferred, Duration, Effect, Layer, OtelTracer, pipe, Runtime } from '@livestore/utils/effect'
3
+ import type { Cause } from '@livestore/utils/effect'
4
+ import { Context, Deferred, Duration, Effect, Layer, OtelTracer, pipe, Runtime, Scope } from '@livestore/utils/effect'
5
5
  import * as otel from '@opentelemetry/api'
6
6
  import type { GraphQLSchema } from 'graphql'
7
7
 
@@ -11,7 +11,17 @@ import type { BaseGraphQLContext, GraphQLOptions, OtelOptions, Store } from '../
11
11
  import { createStore } from '../store.js'
12
12
 
13
13
  // TODO get rid of `LiveStoreContext` wrapper and only expose the `Store` directly
14
- export type LiveStoreContext = {
14
+ export type LiveStoreContext =
15
+ | LiveStoreContextRunning
16
+ | {
17
+ stage: 'error'
18
+ error: UnexpectedError | unknown
19
+ }
20
+ | {
21
+ stage: 'shutdown'
22
+ }
23
+
24
+ export type LiveStoreContextRunning = {
15
25
  stage: 'running'
16
26
  store: Store
17
27
  }
@@ -26,13 +36,16 @@ export type LiveStoreCreateStoreOptions<GraphQLContext extends BaseGraphQLContex
26
36
  adapter: StoreAdapterFactory
27
37
  batchUpdates?: (run: () => void) => void
28
38
  disableDevtools?: boolean
39
+ signal?: AbortSignal
29
40
  }
30
41
 
31
- export const LiveStoreContext = Context.GenericTag<LiveStoreContext>('@livestore/livestore/LiveStoreContext')
42
+ export const LiveStoreContextRunning = Context.GenericTag<LiveStoreContextRunning>(
43
+ '@livestore/livestore/effect/LiveStoreContextRunning',
44
+ )
32
45
 
33
- export type DeferredStoreContext = Deferred.Deferred<LiveStoreContext>
46
+ export type DeferredStoreContext = Deferred.Deferred<LiveStoreContextRunning>
34
47
  export const DeferredStoreContext = Context.GenericTag<DeferredStoreContext>(
35
- '@livestore/livestore/DeferredStoreContext',
48
+ '@livestore/livestore/effect/DeferredStoreContext',
36
49
  )
37
50
 
38
51
  // export const DeferredStoreContext = Effect.cached(Effect.flatMap(StoreContext, (_) => Effect.succeed(_)))
@@ -50,13 +63,13 @@ export type LiveStoreContextProps<GraphQLContext extends BaseGraphQLContext> = {
50
63
 
51
64
  export const LiveStoreContextLayer = <GraphQLContext extends BaseGraphQLContext>(
52
65
  props: LiveStoreContextProps<GraphQLContext>,
53
- ): Layer.Layer<LiveStoreContext, never, otel.Tracer> =>
54
- Layer.scoped(LiveStoreContext, makeLiveStoreContext(props)).pipe(
66
+ ): Layer.Layer<LiveStoreContextRunning, UnexpectedError | Cause.TimeoutException, otel.Tracer> =>
67
+ Layer.scoped(LiveStoreContextRunning, makeLiveStoreContext(props)).pipe(
55
68
  Layer.withSpan('LiveStore'),
56
69
  Layer.provide(LiveStoreContextDeferred),
57
70
  )
58
71
 
59
- export const LiveStoreContextDeferred = Layer.effect(DeferredStoreContext, Deferred.make<LiveStoreContext>())
72
+ export const LiveStoreContextDeferred = Layer.effect(DeferredStoreContext, Deferred.make<LiveStoreContextRunning>())
60
73
 
61
74
  export const makeLiveStoreContext = <GraphQLContext extends BaseGraphQLContext>({
62
75
  schema,
@@ -65,54 +78,48 @@ export const makeLiveStoreContext = <GraphQLContext extends BaseGraphQLContext>(
65
78
  adapter,
66
79
  disableDevtools,
67
80
  }: LiveStoreContextProps<GraphQLContext>): Effect.Effect<
68
- LiveStoreContext,
69
- never,
81
+ LiveStoreContextRunning,
82
+ UnexpectedError | Cause.TimeoutException,
70
83
  DeferredStoreContext | Scope.Scope | otel.Tracer
71
84
  > =>
72
85
  pipe(
73
- Effect.gen(function* ($) {
74
- const runtime = yield* $(Effect.runtime<never>())
86
+ Effect.gen(function* () {
87
+ const runtime = yield* Effect.runtime<never>()
75
88
 
76
89
  const otelRootSpanContext = otel.context.active()
77
90
 
78
- const otelTracer = yield* $(OtelTracer.Tracer)
91
+ const storeScope = yield* Scope.make()
92
+
93
+ yield* Effect.addFinalizer((ex) => Scope.close(storeScope, ex))
79
94
 
80
- const graphQLOptions = yield* $(
81
- graphQLOptions_
82
- ? Effect.all({ schema: graphQLOptions_.schema, makeContext: Effect.succeed(graphQLOptions_.makeContext) })
83
- : Effect.succeed(undefined),
84
- )
95
+ const otelTracer = yield* OtelTracer.Tracer
96
+
97
+ const graphQLOptions = yield* graphQLOptions_
98
+ ? Effect.all({ schema: graphQLOptions_.schema, makeContext: Effect.succeed(graphQLOptions_.makeContext) })
99
+ : Effect.succeed(undefined)
85
100
 
86
101
  const boot = boot_
87
102
  ? (db: BootDb) => boot_(db).pipe(Effect.withSpan('boot'), Effect.tapCauseLogPretty, Runtime.runPromise(runtime))
88
103
  : undefined
89
104
 
90
- const store = yield* $(
91
- Effect.tryPromise(() =>
92
- createStore({
93
- schema,
94
- graphQLOptions,
95
- otelOptions: {
96
- tracer: otelTracer,
97
- rootSpanContext: otelRootSpanContext,
98
- },
99
- boot,
100
- adapter,
101
- disableDevtools,
102
- }),
103
- ),
104
- Effect.acquireRelease((store) => Effect.sync(() => store.destroy())),
105
- )
105
+ const store = yield* createStore({
106
+ schema,
107
+ graphQLOptions,
108
+ otelOptions: {
109
+ tracer: otelTracer,
110
+ rootSpanContext: otelRootSpanContext,
111
+ },
112
+ boot,
113
+ adapter,
114
+ disableDevtools,
115
+ storeScope,
116
+ })
106
117
 
107
118
  window.__debugLiveStore = store
108
119
 
109
- return { stage: 'running', store } satisfies LiveStoreContext
120
+ return { stage: 'running', store } satisfies LiveStoreContextRunning
110
121
  }),
111
122
  Effect.tap((storeCtx) => Effect.flatMap(DeferredStoreContext, (def) => Deferred.succeed(def, storeCtx))),
112
- Effect.timeoutFail({
113
- // NOTE migrating from the mutation log can take a long time (so might need to increase this even further)
114
- onTimeout: () => new Error('Timed out while creating LiveStore store after 60sec'),
115
- duration: Duration.seconds(60),
116
- }),
117
- Effect.orDie,
123
+ Effect.timeout(Duration.seconds(60)),
124
+ Effect.withSpan('@livestore/livestore/effect:makeLiveStoreContext'),
118
125
  )