@livestore/livestore 0.0.55-dev.1 → 0.0.55-dev.3

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/store.js CHANGED
@@ -1,19 +1,22 @@
1
- import { Devtools, getExecArgsFromMutation, liveStoreVersion, prepareBindValues, UnexpectedError, } from '@livestore/common';
2
- import { makeMutationEventSchemaMemo } from '@livestore/common/schema';
3
- import { assertNever, makeNoopTracer, shouldNeverHappen, throttle } from '@livestore/utils';
4
- import { cuid } from '@livestore/utils/cuid';
5
- import { Effect, Exit, FiberSet, Inspectable, Layer, Logger, LogLevel, OtelTracer, Queue, Runtime, Schema, Scope, Stream, } from '@livestore/utils/effect';
1
+ import { getExecArgsFromMutation, prepareBindValues, UnexpectedError } from '@livestore/common';
2
+ import { makeMutationEventSchemaMemo, SCHEMA_META_TABLE, SCHEMA_MUTATIONS_META_TABLE } from '@livestore/common/schema';
3
+ import { assertNever, makeNoopTracer, shouldNeverHappen } from '@livestore/utils';
4
+ import { Deferred, Duration, Effect, Exit, FiberSet, Inspectable, Layer, Logger, LogLevel, OtelTracer, Queue, Runtime, Schema, Scope, Stream, } from '@livestore/utils/effect';
6
5
  import * as otel from '@opentelemetry/api';
7
6
  import { globalReactivityGraph } from './global-state.js';
8
- import { emptyDebugInfo as makeEmptyDebugInfo, MainDatabaseWrapper } from './MainDatabaseWrapper.js';
9
- import { NOT_REFRESHED_YET } from './reactive.js';
7
+ import { MainDatabaseWrapper } from './MainDatabaseWrapper.js';
8
+ import { connectDevtoolsToStore } from './store-devtools.js';
9
+ import { ReferenceCountedSet } from './utils/data-structures.js';
10
10
  import { downloadBlob } from './utils/dev.js';
11
11
  import { getDurationMsFromSpan } from './utils/otel.js';
12
+ export class ForceStoreShutdown extends Schema.TaggedError()('LiveStore.ForceStoreShutdown', {}) {
13
+ }
14
+ export class StoreShutdown extends Schema.TaggedError()('LiveStore.StoreShutdown', {}) {
15
+ }
12
16
  let storeCount = 0;
13
17
  const uniqueStoreId = () => `store-${++storeCount}`;
14
18
  export class Store extends Inspectable.Class {
15
19
  id = uniqueStoreId();
16
- devtoolsConnectionId = cuid();
17
20
  fiberSet;
18
21
  reactivityGraph;
19
22
  mainDbWrapper;
@@ -33,6 +36,7 @@ export class Store extends Inspectable.Class {
33
36
  /** RC-based set to see which queries are currently subscribed to */
34
37
  activeQueries;
35
38
  __mutationEventSchema;
39
+ // #region constructor
36
40
  constructor({ adapter, schema, graphQLOptions, reactivityGraph, otelOptions, disableDevtools, __processedMutationIds, fiberSet, }) {
37
41
  super();
38
42
  this.mainDbWrapper = new MainDatabaseWrapper({ otel: otelOptions, db: adapter.mainDb });
@@ -61,8 +65,16 @@ export class Store extends Inspectable.Class {
61
65
  mutationsSpanContext: otelMuationsSpanContext,
62
66
  queriesSpanContext: otelQueriesSpanContext,
63
67
  };
68
+ // TODO find a better way to detect if we're running LiveStore in the LiveStore devtools
69
+ // But for now this is a good enough approximation with little downsides
70
+ const isRunningInDevtools = disableDevtools === true;
64
71
  // Need a set here since `schema.tables` might contain duplicates and some componentStateTables
65
- const allTableNames = new Set(this.schema.tables.keys());
72
+ const allTableNames = new Set(
73
+ // NOTE we're excluding the LiveStore schema and mutations tables as they are not user-facing
74
+ // unless LiveStore is running in the devtools
75
+ isRunningInDevtools
76
+ ? this.schema.tables.keys()
77
+ : Array.from(this.schema.tables.keys()).filter((_) => _ !== SCHEMA_META_TABLE && _ !== SCHEMA_MUTATIONS_META_TABLE));
66
78
  const existingTableRefs = new Map(Array.from(this.reactivityGraph.atoms.values())
67
79
  .filter((_) => _._tag === 'ref' && _.label?.startsWith('tableRef:') === true)
68
80
  .map((_) => [_.label.slice('tableRef:'.length), _]));
@@ -76,10 +88,7 @@ export class Store extends Inspectable.Class {
76
88
  Effect.gen(this, function* () {
77
89
  yield* this.adapter.coordinator.syncMutations.pipe(Stream.tapSync((mutationEventDecoded) => {
78
90
  this.mutate({ wasSyncMessage: true }, mutationEventDecoded);
79
- }), Stream.runDrain, Effect.withSpan('LiveStore:syncMutations'), Effect.forkScoped);
80
- if (disableDevtools !== true) {
81
- yield* this.bootDevtools().pipe(Effect.forkScoped);
82
- }
91
+ }), Stream.runDrain, Effect.interruptible, Effect.withSpan('LiveStore:syncMutations'), Effect.forkScoped);
83
92
  yield* Effect.addFinalizer(() => Effect.sync(() => {
84
93
  for (const tableRef of Object.values(this.tableRefs)) {
85
94
  for (const superComp of tableRef.super) {
@@ -92,6 +101,7 @@ export class Store extends Inspectable.Class {
92
101
  yield* Effect.never;
93
102
  }).pipe(Effect.scoped, Effect.withSpan('LiveStore:store-constructor'), FiberSet.run(fiberSet), runEffectFork);
94
103
  }
104
+ // #endregion constructor
95
105
  static createStore = (storeOptions, parentSpan) => {
96
106
  const ctx = otel.trace.setSpan(otel.context.active(), parentSpan);
97
107
  return storeOptions.otelOptions.tracer.startActiveSpan('LiveStore:store-constructor', {}, ctx, (span) => {
@@ -138,6 +148,7 @@ export class Store extends Inspectable.Class {
138
148
  destroy = async () => {
139
149
  await FiberSet.clear(this.fiberSet).pipe(Effect.withSpan('Store:destroy'), runEffectPromise);
140
150
  };
151
+ // #region mutate
141
152
  mutate = (firstMutationOrTxnFnOrOptions, ...restMutations) => {
142
153
  let mutationsEvents;
143
154
  let options;
@@ -305,6 +316,7 @@ export class Store extends Inspectable.Class {
305
316
  return { writeTables: allWriteTables, durationMs: durationMsTotal };
306
317
  });
307
318
  };
319
+ // #endregion mutate
308
320
  /**
309
321
  * Directly execute a SQL query on the Store.
310
322
  * This should only be used for framework-internal purposes;
@@ -322,166 +334,6 @@ export class Store extends Inspectable.Class {
322
334
  label: `tableRef:${tableName}`,
323
335
  meta: { liveStoreRefType: 'table' },
324
336
  });
325
- // #region devtools
326
- // TODO shutdown behaviour
327
- bootDevtools = () => Effect.gen(this, function* () {
328
- const sendToDevtoolsContentscript = (message) => {
329
- window.postMessage(Schema.encodeSync(Devtools.DevtoolsWindowMessage.MessageForContentscript)(message), '*');
330
- };
331
- sendToDevtoolsContentscript(Devtools.DevtoolsWindowMessage.LoadIframe.make({}));
332
- const channelId = this.adapter.coordinator.devtools.channelId;
333
- const runtime = yield* Effect.runtime();
334
- window.addEventListener('message', (event) => {
335
- const decodedMessageRes = Schema.decodeOption(Devtools.DevtoolsWindowMessage.MessageForStore)(event.data);
336
- if (decodedMessageRes._tag === 'None')
337
- return;
338
- const message = decodedMessageRes.value;
339
- if (message._tag === 'LSD.WindowMessage.ContentscriptListening') {
340
- sendToDevtoolsContentscript(Devtools.DevtoolsWindowMessage.StoreReady.make({ channelId }));
341
- return;
342
- }
343
- if (message.channelId !== channelId)
344
- return;
345
- if (message._tag === 'LSD.WindowMessage.MessagePortForStore') {
346
- const reactivityGraphSubcriptions = new Map();
347
- const liveQueriesSubscriptions = new Map();
348
- const debugInfoHistorySubscriptions = new Map();
349
- this.adapter.coordinator.devtools
350
- .connect({ port: message.port, connectionId: this.devtoolsConnectionId })
351
- .pipe(Effect.tapSync(({ storeMessagePort }) => {
352
- // console.log('storeMessagePort', storeMessagePort)
353
- storeMessagePort.addEventListener('message', (event) => {
354
- const decodedMessage = Schema.decodeUnknownSync(Devtools.MessageToAppHostStore)(event.data);
355
- // console.log('storeMessagePort message', decodedMessage)
356
- if (decodedMessage.channelId !== this.adapter.coordinator.devtools.channelId) {
357
- // console.log(`Unknown message`, event)
358
- return;
359
- }
360
- const requestId = decodedMessage.requestId;
361
- const sendToDevtools = (message) => storeMessagePort.postMessage(Schema.encodeSync(Devtools.MessageFromAppHostStore)(message));
362
- const requestIdleCallback = window.requestIdleCallback ?? ((cb) => cb());
363
- switch (decodedMessage._tag) {
364
- case 'LSD.ReactivityGraphSubscribe': {
365
- const includeResults = decodedMessage.includeResults;
366
- const send = () =>
367
- // In order to not add more work to the current tick, we use requestIdleCallback
368
- // to send the reactivity graph updates to the devtools
369
- requestIdleCallback(() => sendToDevtools(Devtools.ReactivityGraphRes.make({
370
- reactivityGraph: this.reactivityGraph.getSnapshot({ includeResults }),
371
- requestId,
372
- channelId,
373
- liveStoreVersion,
374
- })), { timeout: 500 });
375
- send();
376
- // In some cases, there can be A LOT of reactivity graph updates in a short period of time
377
- // so we throttle the updates to avoid sending too much data
378
- // This might need to be tweaked further and possibly be exposed to the user in some way.
379
- const throttledSend = throttle(send, 20);
380
- reactivityGraphSubcriptions.set(requestId, this.reactivityGraph.subscribeToRefresh(throttledSend));
381
- break;
382
- }
383
- case 'LSD.DebugInfoReq': {
384
- sendToDevtools(Devtools.DebugInfoRes.make({
385
- debugInfo: this.mainDbWrapper.debugInfo,
386
- requestId,
387
- channelId,
388
- liveStoreVersion,
389
- }));
390
- break;
391
- }
392
- case 'LSD.DebugInfoHistorySubscribe': {
393
- const buffer = [];
394
- let hasStopped = false;
395
- let rafHandle;
396
- const tick = () => {
397
- buffer.push(this.mainDbWrapper.debugInfo);
398
- // NOTE this resets the debug info, so all other "readers" e.g. in other `requestAnimationFrame` loops,
399
- // will get the empty debug info
400
- // TODO We need to come up with a more graceful way to do this. Probably via a single global
401
- // `requestAnimationFrame` loop that is passed in somehow.
402
- this.mainDbWrapper.debugInfo = makeEmptyDebugInfo();
403
- if (buffer.length > 10) {
404
- sendToDevtools(Devtools.DebugInfoHistoryRes.make({
405
- debugInfoHistory: buffer,
406
- requestId,
407
- channelId,
408
- liveStoreVersion,
409
- }));
410
- buffer.length = 0;
411
- }
412
- if (hasStopped === false) {
413
- rafHandle = requestAnimationFrame(tick);
414
- }
415
- };
416
- rafHandle = requestAnimationFrame(tick);
417
- const unsub = () => {
418
- hasStopped = true;
419
- if (rafHandle !== undefined) {
420
- cancelAnimationFrame(rafHandle);
421
- }
422
- };
423
- debugInfoHistorySubscriptions.set(requestId, unsub);
424
- break;
425
- }
426
- case 'LSD.DebugInfoHistoryUnsubscribe': {
427
- debugInfoHistorySubscriptions.get(requestId)();
428
- debugInfoHistorySubscriptions.delete(requestId);
429
- break;
430
- }
431
- case 'LSD.DebugInfoResetReq': {
432
- this.mainDbWrapper.debugInfo.slowQueries.clear();
433
- sendToDevtools(Devtools.DebugInfoResetRes.make({ requestId, channelId, liveStoreVersion }));
434
- break;
435
- }
436
- case 'LSD.DebugInfoRerunQueryReq': {
437
- const { queryStr, bindValues, queriedTables } = decodedMessage;
438
- this.mainDbWrapper.select(queryStr, { bindValues, queriedTables, skipCache: true });
439
- sendToDevtools(Devtools.DebugInfoRerunQueryRes.make({ requestId, channelId, liveStoreVersion }));
440
- break;
441
- }
442
- case 'LSD.ReactivityGraphUnsubscribe': {
443
- reactivityGraphSubcriptions.get(requestId)();
444
- break;
445
- }
446
- case 'LSD.LiveQueriesSubscribe': {
447
- const send = () => requestIdleCallback(() => sendToDevtools(Devtools.LiveQueriesRes.make({
448
- liveQueries: [...this.activeQueries].map((q) => ({
449
- _tag: q._tag,
450
- id: q.id,
451
- label: q.label,
452
- runs: q.runs,
453
- executionTimes: q.executionTimes.map((_) => Number(_.toString().slice(0, 5))),
454
- lastestResult: q.results$.previousResult === NOT_REFRESHED_YET
455
- ? 'SYMBOL_NOT_REFRESHED_YET'
456
- : q.results$.previousResult,
457
- activeSubscriptions: Array.from(q.activeSubscriptions),
458
- })),
459
- requestId,
460
- liveStoreVersion,
461
- channelId,
462
- })), { timeout: 500 });
463
- send();
464
- // Same as in the reactivity graph subscription case above, we need to throttle the updates
465
- const throttledSend = throttle(send, 20);
466
- liveQueriesSubscriptions.set(requestId, this.reactivityGraph.subscribeToRefresh(throttledSend));
467
- break;
468
- }
469
- case 'LSD.LiveQueriesUnsubscribe': {
470
- liveQueriesSubscriptions.get(requestId)();
471
- liveQueriesSubscriptions.delete(requestId);
472
- break;
473
- }
474
- // No default
475
- }
476
- });
477
- storeMessagePort.start();
478
- }), Runtime.runFork(runtime));
479
- return;
480
- }
481
- });
482
- sendToDevtoolsContentscript(Devtools.DevtoolsWindowMessage.StoreReady.make({ channelId }));
483
- });
484
- // #endregion devtools
485
337
  __devDownloadDb = () => {
486
338
  const data = this.mainDbWrapper.export();
487
339
  downloadBlob(data, `livestore-${Date.now()}.db`);
@@ -492,6 +344,7 @@ export class Store extends Inspectable.Class {
492
344
  };
493
345
  // TODO allow for graceful store reset without requiring a full page reload (which should also call .boot)
494
346
  dangerouslyResetStorage = (mode) => this.adapter.coordinator.dangerouslyReset(mode).pipe(runEffectPromise);
347
+ // NOTE This is needed because when booting a Store via Effect it seems to call `toJSON` in the error path
495
348
  toJSON = () => {
496
349
  return {
497
350
  _tag: 'Store',
@@ -518,16 +371,23 @@ export const createStore = ({ schema, graphQLOptions, otelOptions, adapter: adap
518
371
  return Effect.gen(function* () {
519
372
  const span = yield* OtelTracer.currentOtelSpan.pipe(Effect.orDie);
520
373
  const bootStatusQueue = yield* Queue.unbounded().pipe(Effect.acquireRelease(Queue.shutdown));
521
- yield* Queue.take(bootStatusQueue).pipe(Effect.tapSync((status) => onBootStatus?.(status)), Effect.forever, Effect.tapCauseLogPretty, Effect.forkScoped);
374
+ yield* Queue.take(bootStatusQueue).pipe(Effect.tapSync((status) => onBootStatus?.(status)), Effect.tap((status) => (status.stage === 'done' ? Queue.shutdown(bootStatusQueue) : Effect.void)), Effect.forever, Effect.tapCauseLogPretty, Effect.forkScoped);
375
+ const storeDeferred = yield* Deferred.make();
376
+ const connectDevtoolsToStore_ = ({ storeMessagePort }) => Effect.gen(function* () {
377
+ const store = yield* Deferred.await(storeDeferred);
378
+ yield* connectDevtoolsToStore({ storeMessagePort, store });
379
+ });
380
+ // TODO close parent scope? (Needs refactor with Mike A)
381
+ const shutdown = (cause) => Effect.gen(function* () {
382
+ yield* Effect.logWarning(`Shutting down LiveStore`, cause);
383
+ FiberSet.clear(fiberSet).pipe(Effect.andThen(() => FiberSet.run(fiberSet, Effect.fail(StoreShutdown.make()))), Effect.timeout(Duration.seconds(1)), Effect.logWarnIfTakesLongerThan({ label: '@livestore/livestore:shutdown:clear-fiber-set', duration: 500 }), Effect.catchTag('TimeoutException', () => Effect.logWarning('Store shutdown timed out. Forcing shutdown.').pipe(Effect.andThen(FiberSet.run(fiberSet, Effect.fail(ForceStoreShutdown.make()))))), runEffectFork);
384
+ }).pipe(Effect.withSpan('livestore:shutdown'));
522
385
  const adapter = yield* adapterFactory({
523
386
  schema,
524
387
  devtoolsEnabled: disableDevtools !== true,
525
388
  bootStatusQueue,
526
- shutdown: (cause) => Effect.gen(function* () {
527
- yield* Effect.logWarning(`Shutting down LiveStore`, cause);
528
- // TODO close parent scope? (Needs refactor with Mike A)
529
- yield* FiberSet.clear(fiberSet);
530
- }).pipe(Effect.withSpan('livestore:shutdown')),
389
+ shutdown,
390
+ connectDevtoolsToStore: connectDevtoolsToStore_,
531
391
  }).pipe(Effect.withPerformanceMeasure('livestore:makeAdapter'), Effect.withSpan('createStore:makeAdapter'));
532
392
  if (batchUpdates !== undefined) {
533
393
  reactivityGraph.effectsWrapper = batchUpdates;
@@ -594,7 +454,7 @@ export const createStore = ({ schema, graphQLOptions, otelOptions, adapter: adap
594
454
  };
595
455
  yield* Effect.tryAll(() => boot(bootDbImpl, span)).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('createStore:boot'));
596
456
  }
597
- return Store.createStore({
457
+ const store = Store.createStore({
598
458
  adapter,
599
459
  schema,
600
460
  graphQLOptions,
@@ -604,6 +464,8 @@ export const createStore = ({ schema, graphQLOptions, otelOptions, adapter: adap
604
464
  __processedMutationIds,
605
465
  fiberSet,
606
466
  }, span);
467
+ yield* Deferred.succeed(storeDeferred, store);
468
+ return store;
607
469
  }).pipe(Effect.withSpan('createStore', {
608
470
  parent: otelOptions?.rootSpanContext
609
471
  ? OtelTracer.makeExternalSpan(otel.trace.getSpanContext(otelOptions.rootSpanContext))
@@ -611,37 +473,8 @@ export const createStore = ({ schema, graphQLOptions, otelOptions, adapter: adap
611
473
  }), Effect.provide(TracingLive));
612
474
  };
613
475
  // #endregion createStore
614
- // TODO consider replacing with Effect's RC data structures
615
- class ReferenceCountedSet {
616
- map;
617
- constructor() {
618
- this.map = new Map();
619
- }
620
- add = (key) => {
621
- const count = this.map.get(key) ?? 0;
622
- this.map.set(key, count + 1);
623
- };
624
- remove = (key) => {
625
- const count = this.map.get(key) ?? 0;
626
- if (count === 1) {
627
- this.map.delete(key);
628
- }
629
- else {
630
- this.map.set(key, count - 1);
631
- }
632
- };
633
- has = (key) => {
634
- return this.map.has(key);
635
- };
636
- get size() {
637
- return this.map.size;
638
- }
639
- *[Symbol.iterator]() {
640
- for (const key of this.map.keys()) {
641
- yield key;
642
- }
643
- }
644
- }
476
+ // TODO propagate runtime
645
477
  const runEffectFork = (effect) => effect.pipe(Effect.tapCauseLogPretty, Effect.annotateLogs({ thread: 'window' }), Effect.provide(Logger.pretty), Logger.withMinimumLogLevel(LogLevel.Debug), Effect.runFork);
478
+ // TODO propagate runtime
646
479
  const runEffectPromise = (effect) => effect.pipe(Effect.tapCauseLogPretty, Effect.annotateLogs({ thread: 'window' }), Effect.provide(Logger.pretty), Logger.withMinimumLogLevel(LogLevel.Debug), Effect.runPromise);
647
480
  //# sourceMappingURL=store.js.map
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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"}
@@ -0,0 +1,10 @@
1
+ export declare class ReferenceCountedSet<T> {
2
+ private map;
3
+ constructor();
4
+ add: (key: T) => void;
5
+ remove: (key: T) => void;
6
+ has: (key: T) => boolean;
7
+ get size(): number;
8
+ [Symbol.iterator](): Generator<T, void, unknown>;
9
+ }
10
+ //# sourceMappingURL=data-structures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-structures.d.ts","sourceRoot":"","sources":["../../src/utils/data-structures.ts"],"names":[],"mappings":"AACA,qBAAa,mBAAmB,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAgB;;IAM3B,GAAG,QAAS,CAAC,UAGZ;IAED,MAAM,QAAS,CAAC,UAOf;IAED,GAAG,QAAS,CAAC,aAEZ;IAED,IAAI,IAAI,WAEP;IAEA,CAAC,MAAM,CAAC,QAAQ,CAAC;CAKnB"}
@@ -0,0 +1,32 @@
1
+ // TODO consider replacing with Effect's RC data structures
2
+ export class ReferenceCountedSet {
3
+ map;
4
+ constructor() {
5
+ this.map = new Map();
6
+ }
7
+ add = (key) => {
8
+ const count = this.map.get(key) ?? 0;
9
+ this.map.set(key, count + 1);
10
+ };
11
+ remove = (key) => {
12
+ const count = this.map.get(key) ?? 0;
13
+ if (count === 1) {
14
+ this.map.delete(key);
15
+ }
16
+ else {
17
+ this.map.set(key, count - 1);
18
+ }
19
+ };
20
+ has = (key) => {
21
+ return this.map.has(key);
22
+ };
23
+ get size() {
24
+ return this.map.size;
25
+ }
26
+ *[Symbol.iterator]() {
27
+ for (const key of this.map.keys()) {
28
+ yield key;
29
+ }
30
+ }
31
+ }
32
+ //# sourceMappingURL=data-structures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-structures.js","sourceRoot":"","sources":["../../src/utils/data-structures.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,OAAO,mBAAmB;IACtB,GAAG,CAAgB;IAE3B;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAa,CAAA;IACjC,CAAC;IAED,GAAG,GAAG,CAAC,GAAM,EAAE,EAAE;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED,MAAM,GAAG,CAAC,GAAM,EAAE,EAAE;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACpC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC,CAAA;IAED,GAAG,GAAG,CAAC,GAAM,EAAE,EAAE;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC,CAAA;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAA;IACtB,CAAC;IAED,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAClC,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/livestore",
3
- "version": "0.0.55-dev.1",
3
+ "version": "0.0.55-dev.3",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -30,9 +30,9 @@
30
30
  "dependencies": {
31
31
  "@graphql-typed-document-node/core": "^3.2.0",
32
32
  "@opentelemetry/api": "^1.9.0",
33
- "@livestore/common": "0.0.55-dev.1",
34
- "@livestore/utils": "0.0.55-dev.1",
35
- "effect-db-schema": "0.0.55-dev.1"
33
+ "@livestore/common": "0.0.55-dev.3",
34
+ "@livestore/utils": "0.0.55-dev.3",
35
+ "effect-db-schema": "0.0.55-dev.3"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@opentelemetry/sdk-trace-base": "1.25.1",
@@ -46,7 +46,7 @@
46
46
  "typescript": "5.5.4",
47
47
  "vite": "5.3.5",
48
48
  "vitest": "^2.0.4",
49
- "@livestore/web": "0.0.55-dev.1"
49
+ "@livestore/web": "0.0.55-dev.3"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "@tauri-apps/api": "^1.4.0",