@livestore/livestore 0.0.47-dev.0 → 0.0.48-dev.0
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/README.md +3 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/MainDatabaseWrapper.d.ts +2 -2
- package/dist/MainDatabaseWrapper.d.ts.map +1 -1
- package/dist/MainDatabaseWrapper.js.map +1 -1
- package/dist/__tests__/react/fixture.d.ts +262 -158
- package/dist/__tests__/react/fixture.d.ts.map +1 -1
- package/dist/__tests__/react/fixture.js +14 -12
- package/dist/__tests__/react/fixture.js.map +1 -1
- package/dist/__tests__/react/utils/otel.d.ts +1 -1
- package/dist/__tests__/react/utils/otel.d.ts.map +1 -1
- package/dist/effect/LiveStore.d.ts +5 -5
- package/dist/effect/LiveStore.d.ts.map +1 -1
- package/dist/effect/LiveStore.js +5 -4
- package/dist/effect/LiveStore.js.map +1 -1
- package/dist/index.d.ts +3 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/react/LiveStoreProvider.d.ts +4 -4
- package/dist/react/LiveStoreProvider.d.ts.map +1 -1
- package/dist/react/LiveStoreProvider.js +8 -8
- package/dist/react/LiveStoreProvider.js.map +1 -1
- package/dist/react/LiveStoreProvider.test.js +3 -4
- package/dist/react/LiveStoreProvider.test.js.map +1 -1
- package/dist/react/index.d.ts +1 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +1 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/useAtom.d.ts +5 -2
- package/dist/react/useAtom.d.ts.map +1 -1
- package/dist/react/useAtom.js +20 -4
- package/dist/react/useAtom.js.map +1 -1
- package/dist/react/useLocalId.d.ts +10 -0
- package/dist/react/useLocalId.d.ts.map +1 -0
- package/dist/react/useLocalId.js +15 -0
- package/dist/react/useLocalId.js.map +1 -0
- package/dist/react/useQuery.test.js +7 -7
- package/dist/react/useQuery.test.js.map +1 -1
- package/dist/react/useRow.d.ts +3 -1
- package/dist/react/useRow.d.ts.map +1 -1
- package/dist/react/useRow.js +25 -8
- package/dist/react/useRow.js.map +1 -1
- package/dist/react/useRow.test.js +58 -29
- package/dist/react/useRow.test.js.map +1 -1
- package/dist/react/useTemporaryQuery.d.ts +1 -1
- package/dist/react/useTemporaryQuery.d.ts.map +1 -1
- package/dist/react/useTemporaryQuery.js.map +1 -1
- package/dist/react/useTemporaryQuery.test.js +3 -3
- package/dist/react/useTemporaryQuery.test.js.map +1 -1
- package/dist/react/utils/useStateRefWithReactiveInput.d.ts.map +1 -1
- package/dist/reactive.test.js +1 -1
- package/dist/reactive.test.js.map +1 -1
- package/dist/reactiveQueries/base-class.d.ts +1 -1
- package/dist/reactiveQueries/base-class.d.ts.map +1 -1
- package/dist/reactiveQueries/base-class.js.map +1 -1
- package/dist/reactiveQueries/graphql.d.ts +4 -4
- package/dist/reactiveQueries/graphql.d.ts.map +1 -1
- package/dist/reactiveQueries/graphql.js +2 -1
- package/dist/reactiveQueries/graphql.js.map +1 -1
- package/dist/reactiveQueries/js.d.ts +1 -1
- package/dist/reactiveQueries/js.d.ts.map +1 -1
- package/dist/reactiveQueries/js.js.map +1 -1
- package/dist/reactiveQueries/sql.d.ts +1 -1
- package/dist/reactiveQueries/sql.d.ts.map +1 -1
- package/dist/reactiveQueries/sql.js +2 -2
- package/dist/reactiveQueries/sql.js.map +1 -1
- package/dist/row-query.d.ts +3 -3
- package/dist/row-query.d.ts.map +1 -1
- package/dist/row-query.js +47 -34
- package/dist/row-query.js.map +1 -1
- package/dist/store.d.ts +20 -19
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +67 -41
- package/dist/store.js.map +1 -1
- package/dist/utils/bounded-collections.d.ts +1 -1
- package/dist/utils/bounded-collections.d.ts.map +1 -1
- package/dist/utils/util.d.ts +0 -1
- package/dist/utils/util.d.ts.map +1 -1
- package/dist/utils/util.js.map +1 -1
- package/package.json +16 -16
- package/src/MainDatabaseWrapper.ts +3 -3
- package/src/__tests__/react/fixture.tsx +32 -18
- package/src/effect/LiveStore.ts +9 -8
- package/src/index.ts +7 -5
- package/src/react/LiveStoreProvider.test.tsx +5 -5
- package/src/react/LiveStoreProvider.tsx +11 -11
- package/src/react/index.ts +1 -0
- package/src/react/useAtom.ts +31 -5
- package/src/react/useLocalId.ts +25 -0
- package/src/react/useQuery.test.tsx +8 -8
- package/src/react/useRow.test.tsx +60 -35
- package/src/react/useRow.ts +43 -12
- package/src/react/useTemporaryQuery.test.tsx +4 -4
- package/src/react/useTemporaryQuery.ts +1 -1
- package/src/reactive.test.ts +1 -1
- package/src/reactiveQueries/base-class.ts +1 -1
- package/src/reactiveQueries/graphql.ts +3 -2
- package/src/reactiveQueries/js.ts +1 -1
- package/src/reactiveQueries/sql.ts +3 -3
- package/src/row-query.ts +67 -55
- package/src/store.ts +89 -59
- package/src/utils/util.ts +0 -2
- package/dist/cud.d.ts +0 -28
- package/dist/cud.d.ts.map +0 -1
- package/dist/cud.js +0 -47
- package/dist/cud.js.map +0 -1
- package/dist/cud.test.d.ts +0 -2
- package/dist/cud.test.d.ts.map +0 -1
- package/dist/cud.test.js +0 -47
- package/dist/cud.test.js.map +0 -1
- package/dist/migrations.d.ts +0 -16
- package/dist/migrations.d.ts.map +0 -1
- package/dist/migrations.js +0 -98
- package/dist/migrations.js.map +0 -1
- package/dist/query-info.d.ts +0 -48
- package/dist/query-info.d.ts.map +0 -1
- package/dist/query-info.js +0 -39
- package/dist/query-info.js.map +0 -1
- package/src/cud.test.ts +0 -52
- package/src/cud.ts +0 -88
- package/src/migrations.ts +0 -151
- package/src/query-info.ts +0 -104
package/dist/store.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getExecArgsFromMutation
|
|
1
|
+
import { getExecArgsFromMutation } from '@livestore/common';
|
|
2
2
|
import { makeMutationEventSchema } from '@livestore/common/schema';
|
|
3
3
|
import { assertNever, isPromise, makeNoopTracer, shouldNeverHappen } from '@livestore/utils';
|
|
4
|
-
import { Schema } from '@livestore/utils/effect';
|
|
4
|
+
import { Effect, Schema, Stream } from '@livestore/utils/effect';
|
|
5
5
|
import * as otel from '@opentelemetry/api';
|
|
6
6
|
import { globalDbGraph } from './global-state.js';
|
|
7
7
|
import { MainDatabaseWrapper } from './MainDatabaseWrapper.js';
|
|
@@ -17,7 +17,7 @@ export class Store {
|
|
|
17
17
|
// TODO refactor
|
|
18
18
|
// _proxyDb: InMemoryDatabase
|
|
19
19
|
// TODO
|
|
20
|
-
|
|
20
|
+
adapter;
|
|
21
21
|
schema;
|
|
22
22
|
graphQLSchema;
|
|
23
23
|
graphQLContext;
|
|
@@ -27,15 +27,15 @@ export class Store {
|
|
|
27
27
|
* This only works in combination with `equal: () => false` which will always trigger a refresh.
|
|
28
28
|
*/
|
|
29
29
|
tableRefs;
|
|
30
|
+
// TODO remove this temporary solution and find a better way to avoid re-processing the same mutation
|
|
31
|
+
__processedMutationIds = new Set();
|
|
32
|
+
__processedMutationWithoutRefreshIds = new Set();
|
|
30
33
|
/** RC-based set to see which queries are currently subscribed to */
|
|
31
34
|
activeQueries;
|
|
32
35
|
mutationEventSchema;
|
|
33
|
-
constructor({
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.mainDbWrapper = new MainDatabaseWrapper({ otelTracer, otelRootSpanContext, db: db.mainDb });
|
|
37
|
-
this.db = db;
|
|
38
|
-
// this._proxyDb = dbProxy
|
|
36
|
+
constructor({ adapter, schema, graphQLOptions, dbGraph, otelTracer, otelRootSpanContext, mutationEventSchema, }) {
|
|
37
|
+
this.mainDbWrapper = new MainDatabaseWrapper({ otelTracer, otelRootSpanContext, db: adapter.mainDb });
|
|
38
|
+
this.adapter = adapter;
|
|
39
39
|
this.schema = schema;
|
|
40
40
|
// TODO refactor
|
|
41
41
|
this.mutationEventSchema = mutationEventSchema;
|
|
@@ -43,13 +43,15 @@ export class Store {
|
|
|
43
43
|
// TODO generalize the `tableRefs` concept to allow finer-grained refs
|
|
44
44
|
this.tableRefs = {};
|
|
45
45
|
this.activeQueries = new ReferenceCountedSet();
|
|
46
|
-
// this.storage = storage
|
|
47
46
|
const mutationsSpan = otelTracer.startSpan('LiveStore:mutations', {}, otelRootSpanContext);
|
|
48
47
|
const otelMuationsSpanContext = otel.trace.setSpan(otel.context.active(), mutationsSpan);
|
|
49
48
|
const queriesSpan = otelTracer.startSpan('LiveStore:queries', {}, otelRootSpanContext);
|
|
50
49
|
const otelQueriesSpanContext = otel.trace.setSpan(otel.context.active(), queriesSpan);
|
|
51
50
|
this.graph = dbGraph;
|
|
52
51
|
this.graph.context = { store: this, otelTracer, rootOtelContext: otelQueriesSpanContext };
|
|
52
|
+
this.adapter.coordinator.syncMutations.pipe(Stream.tapSync((mutationEventDecoded) => {
|
|
53
|
+
this.mutate({ wasSyncMessage: true }, mutationEventDecoded);
|
|
54
|
+
}), Stream.runDrain, Effect.tapCauseLogPretty, Effect.runFork);
|
|
53
55
|
this.otel = {
|
|
54
56
|
tracer: otelTracer,
|
|
55
57
|
mutationsSpanContext: otelMuationsSpanContext,
|
|
@@ -119,27 +121,39 @@ export class Store {
|
|
|
119
121
|
}
|
|
120
122
|
otel.trace.getSpan(this.otel.mutationsSpanContext).end();
|
|
121
123
|
otel.trace.getSpan(this.otel.queriesSpanContext).end();
|
|
122
|
-
await this.
|
|
124
|
+
await this.adapter.coordinator.shutdown();
|
|
123
125
|
};
|
|
124
126
|
mutate = (firstMutationOrTxnFnOrOptions, ...restMutations) => {
|
|
125
127
|
let mutationsEvents;
|
|
126
128
|
let options;
|
|
127
129
|
if (typeof firstMutationOrTxnFnOrOptions === 'function') {
|
|
130
|
+
// TODO ensure that function is synchronous and isn't called in a async way (also write tests for this)
|
|
128
131
|
mutationsEvents = firstMutationOrTxnFnOrOptions((arg) => mutationsEvents.push(arg));
|
|
129
132
|
}
|
|
130
133
|
else if (firstMutationOrTxnFnOrOptions?.label !== undefined ||
|
|
131
|
-
firstMutationOrTxnFnOrOptions?.skipRefresh !== undefined
|
|
134
|
+
firstMutationOrTxnFnOrOptions?.skipRefresh !== undefined ||
|
|
135
|
+
firstMutationOrTxnFnOrOptions?.wasSyncMessage !== undefined) {
|
|
132
136
|
options = firstMutationOrTxnFnOrOptions;
|
|
133
137
|
mutationsEvents = restMutations;
|
|
134
138
|
}
|
|
135
139
|
else {
|
|
136
140
|
mutationsEvents = [firstMutationOrTxnFnOrOptions, ...restMutations];
|
|
137
141
|
}
|
|
142
|
+
mutationsEvents = mutationsEvents.filter((_) => !this.__processedMutationIds.has(_.id));
|
|
143
|
+
if (mutationsEvents.length === 0) {
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
for (const mutationEvent of mutationsEvents) {
|
|
147
|
+
this.__processedMutationIds.add(mutationEvent.id);
|
|
148
|
+
}
|
|
138
149
|
const label = options?.label ?? 'mutate';
|
|
139
150
|
const skipRefresh = options?.skipRefresh ?? false;
|
|
151
|
+
const wasSyncMessage = options?.wasSyncMessage ?? false;
|
|
140
152
|
const mutationsSpan = otel.trace.getSpan(this.otel.mutationsSpanContext);
|
|
141
153
|
mutationsSpan.addEvent('mutate');
|
|
142
|
-
// console.
|
|
154
|
+
// console.group('LiveStore.mutate', { skipRefresh, wasSyncMessage, label })
|
|
155
|
+
// mutationsEvents.forEach((_) => console.log(_.mutation, _.id, _.args))
|
|
156
|
+
// console.groupEnd()
|
|
143
157
|
return this.otel.tracer.startActiveSpan('LiveStore:mutate', { attributes: { 'livestore.mutateLabel': label } }, this.otel.mutationsSpanContext, (span) => {
|
|
144
158
|
const otelContext = otel.trace.setSpan(otel.context.active(), span);
|
|
145
159
|
try {
|
|
@@ -150,7 +164,7 @@ export class Store {
|
|
|
150
164
|
const applyMutations = () => {
|
|
151
165
|
for (const mutationEvent of mutationsEvents) {
|
|
152
166
|
try {
|
|
153
|
-
const { writeTables: writeTablesForEvent } = this.mutateWithoutRefresh(mutationEvent, otelContext);
|
|
167
|
+
const { writeTables: writeTablesForEvent } = this.mutateWithoutRefresh(mutationEvent, otelContext, wasSyncMessage);
|
|
154
168
|
for (const tableName of writeTablesForEvent) {
|
|
155
169
|
writeTables.add(tableName);
|
|
156
170
|
}
|
|
@@ -162,7 +176,7 @@ export class Store {
|
|
|
162
176
|
}
|
|
163
177
|
};
|
|
164
178
|
if (mutationsEvents.length > 1) {
|
|
165
|
-
// TODO: what to do about
|
|
179
|
+
// TODO: what to do about coordinator transaction here?
|
|
166
180
|
this.mainDbWrapper.txn(applyMutations);
|
|
167
181
|
}
|
|
168
182
|
else {
|
|
@@ -218,7 +232,16 @@ export class Store {
|
|
|
218
232
|
* This is an internal method that doesn't trigger a refresh;
|
|
219
233
|
* the caller must refresh queries after calling this method.
|
|
220
234
|
*/
|
|
221
|
-
mutateWithoutRefresh = (mutationEventDecoded, otelContext) => {
|
|
235
|
+
mutateWithoutRefresh = (mutationEventDecoded, otelContext, skipStorage = false) => {
|
|
236
|
+
// NOTE we also need this temporary workaround here since some code-paths use `mutateWithoutRefresh` directly
|
|
237
|
+
// e.g. the row-query functionality
|
|
238
|
+
if (this.__processedMutationWithoutRefreshIds.has(mutationEventDecoded.id)) {
|
|
239
|
+
// NOTE this data should never be used
|
|
240
|
+
return { writeTables: new Set(), durationMs: 0 };
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
this.__processedMutationWithoutRefreshIds.add(mutationEventDecoded.id);
|
|
244
|
+
}
|
|
222
245
|
return this.otel.tracer.startActiveSpan('LiveStore:mutatetWithoutRefresh', {
|
|
223
246
|
attributes: {
|
|
224
247
|
'livestore.mutation': mutationEventDecoded.mutation,
|
|
@@ -232,13 +255,17 @@ export class Store {
|
|
|
232
255
|
shouldNeverHappen(`Unknown mutation type: ${mutationEventDecoded.mutation}`);
|
|
233
256
|
const execArgsArr = getExecArgsFromMutation({ mutationDef, mutationEventDecoded });
|
|
234
257
|
for (const { statementSql, bindValues, writeTables = this.mainDbWrapper.getTablesUsed(statementSql), } of execArgsArr) {
|
|
258
|
+
// TODO when the store doesn't have the lock, we need wait for the coordinator to confirm the mutation
|
|
259
|
+
// before executing the mutation on the main db
|
|
235
260
|
const { durationMs } = this.mainDbWrapper.execute(statementSql, bindValues, writeTables, { otelContext });
|
|
236
261
|
durationMsTotal += durationMs;
|
|
237
262
|
writeTables.forEach((table) => allWriteTables.add(table));
|
|
238
263
|
}
|
|
239
|
-
// Asynchronously apply mutation to a persistent storage (we're not awaiting this promise here)
|
|
240
264
|
const mutationEventEncoded = Schema.encodeUnknownSync(this.mutationEventSchema)(mutationEventDecoded);
|
|
241
|
-
|
|
265
|
+
if (skipStorage === false) {
|
|
266
|
+
// Asynchronously apply mutation to a persistent storage (we're not awaiting this promise here)
|
|
267
|
+
void this.adapter.coordinator.mutate(mutationEventEncoded, span);
|
|
268
|
+
}
|
|
242
269
|
// Uncomment to print a list of queries currently registered on the store
|
|
243
270
|
// console.debug(JSON.parse(JSON.stringify([...this.queries].map((q) => `${labelForKey(q.componentKey)}/${q.label}`))))
|
|
244
271
|
span.end();
|
|
@@ -253,7 +280,7 @@ export class Store {
|
|
|
253
280
|
execute = (query, params = {}, writeTables, otelContext) => {
|
|
254
281
|
this.mainDbWrapper.execute(query, prepareBindValues(params, query), writeTables, { otelContext });
|
|
255
282
|
const parentSpan = otel.trace.getSpan(otel.context.active());
|
|
256
|
-
this.
|
|
283
|
+
this.adapter.coordinator.execute(query, prepareBindValues(params, query), parentSpan);
|
|
257
284
|
};
|
|
258
285
|
select = (query, params = {}) => {
|
|
259
286
|
return this.mainDbWrapper.select(query, { bindValues: prepareBindValues(params, query) });
|
|
@@ -268,20 +295,20 @@ export class Store {
|
|
|
268
295
|
downloadBlob(data, `livestore-${Date.now()}.db`);
|
|
269
296
|
};
|
|
270
297
|
__devDownloadMutationLogDb = async () => {
|
|
271
|
-
const data = await this.
|
|
298
|
+
const data = await this.adapter.coordinator.getMutationLogData();
|
|
272
299
|
downloadBlob(data, `livestore-mutationlog-${Date.now()}.db`);
|
|
273
300
|
};
|
|
274
301
|
// TODO allow for graceful store reset without requiring a full page reload (which should also call .boot)
|
|
275
|
-
dangerouslyResetStorage = () => this.
|
|
302
|
+
dangerouslyResetStorage = (mode) => this.adapter.coordinator.dangerouslyReset(mode);
|
|
276
303
|
}
|
|
277
304
|
/** Create a new LiveStore Store */
|
|
278
|
-
export const createStore = async ({ schema, graphQLOptions, otelTracer = makeNoopTracer(), otelRootSpanContext = otel.context.active(),
|
|
305
|
+
export const createStore = async ({ schema, graphQLOptions, otelTracer = makeNoopTracer(), otelRootSpanContext = otel.context.active(), adapter: adapterFactory, boot, dbGraph = globalDbGraph, batchUpdates, }) => {
|
|
279
306
|
return otelTracer.startActiveSpan('createStore', {}, otelRootSpanContext, async (span) => {
|
|
280
307
|
try {
|
|
281
308
|
performance.mark('livestore:db-creating');
|
|
282
309
|
const otelContext = otel.trace.setSpan(otel.context.active(), span);
|
|
283
|
-
const
|
|
284
|
-
const
|
|
310
|
+
const adapterPromise = adapterFactory({ otelTracer, otelContext, schema });
|
|
311
|
+
const adapter = adapterPromise instanceof Promise ? await adapterPromise : adapterPromise;
|
|
285
312
|
performance.mark('livestore:db-created');
|
|
286
313
|
performance.measure('livestore:db-create', 'livestore:db-creating', 'livestore:db-created');
|
|
287
314
|
if (batchUpdates !== undefined) {
|
|
@@ -293,15 +320,15 @@ export const createStore = async ({ schema, graphQLOptions, otelTracer = makeNoo
|
|
|
293
320
|
let isInTxn = false;
|
|
294
321
|
let txnExecuteStmnts = [];
|
|
295
322
|
const bootDbImpl = {
|
|
323
|
+
_tag: 'BootDb',
|
|
296
324
|
execute: (queryStr, bindValues) => {
|
|
297
|
-
const stmt =
|
|
298
|
-
|
|
299
|
-
stmt.execute(preparedBindValues);
|
|
325
|
+
const stmt = adapter.mainDb.prepare(queryStr);
|
|
326
|
+
stmt.execute(bindValues);
|
|
300
327
|
if (isInTxn === true) {
|
|
301
|
-
txnExecuteStmnts.push([queryStr,
|
|
328
|
+
txnExecuteStmnts.push([queryStr, bindValues]);
|
|
302
329
|
}
|
|
303
330
|
else {
|
|
304
|
-
void
|
|
331
|
+
void adapter.coordinator.execute(queryStr, bindValues, undefined);
|
|
305
332
|
}
|
|
306
333
|
},
|
|
307
334
|
mutate: (...list) => {
|
|
@@ -311,31 +338,30 @@ export const createStore = async ({ schema, graphQLOptions, otelTracer = makeNoo
|
|
|
311
338
|
const execArgsArr = getExecArgsFromMutation({ mutationDef, mutationEventDecoded });
|
|
312
339
|
// const { bindValues, statementSql } = getExecArgsFromMutation({ mutationDef, mutationEventDecoded })
|
|
313
340
|
for (const { statementSql, bindValues } of execArgsArr) {
|
|
314
|
-
|
|
341
|
+
adapter.mainDb.execute(statementSql, bindValues);
|
|
315
342
|
}
|
|
316
343
|
const mutationEventEncoded = Schema.encodeUnknownSync(mutationEventSchema)(mutationEventDecoded);
|
|
317
|
-
void
|
|
344
|
+
void adapter.coordinator.mutate(mutationEventEncoded, span);
|
|
318
345
|
}
|
|
319
346
|
},
|
|
320
347
|
select: (queryStr, bindValues) => {
|
|
321
|
-
const stmt =
|
|
322
|
-
|
|
323
|
-
return stmt.select(preparedBindValues);
|
|
348
|
+
const stmt = adapter.mainDb.prepare(queryStr);
|
|
349
|
+
return stmt.select(bindValues);
|
|
324
350
|
},
|
|
325
351
|
txn: (callback) => {
|
|
326
352
|
try {
|
|
327
353
|
isInTxn = true;
|
|
328
|
-
|
|
354
|
+
adapter.mainDb.execute('BEGIN', undefined);
|
|
329
355
|
callback();
|
|
330
|
-
|
|
331
|
-
//
|
|
356
|
+
adapter.mainDb.execute('COMMIT', undefined);
|
|
357
|
+
// adapter.coordinator.execute('BEGIN', undefined, undefined)
|
|
332
358
|
for (const [queryStr, bindValues] of txnExecuteStmnts) {
|
|
333
|
-
|
|
359
|
+
adapter.coordinator.execute(queryStr, bindValues, undefined);
|
|
334
360
|
}
|
|
335
|
-
//
|
|
361
|
+
// adapter.coordinator.execute('COMMIT', undefined, undefined)
|
|
336
362
|
}
|
|
337
363
|
catch (e) {
|
|
338
|
-
|
|
364
|
+
adapter.mainDb.execute('ROLLBACK', undefined);
|
|
339
365
|
throw e;
|
|
340
366
|
}
|
|
341
367
|
finally {
|
|
@@ -353,7 +379,7 @@ export const createStore = async ({ schema, graphQLOptions, otelTracer = makeNoo
|
|
|
353
379
|
// TODO: we can't apply the schema at this point, we've already loaded persisted data!
|
|
354
380
|
// Think about what to do about this case.
|
|
355
381
|
// await applySchema(db, schema)
|
|
356
|
-
return Store.createStore({
|
|
382
|
+
return Store.createStore({ adapter: adapter, schema, graphQLOptions, otelTracer, otelRootSpanContext, dbGraph, mutationEventSchema }, span);
|
|
357
383
|
}
|
|
358
384
|
finally {
|
|
359
385
|
span.end();
|
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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"}
|
|
@@ -29,6 +29,6 @@ export declare class BoundArray<V> {
|
|
|
29
29
|
[Symbol.iterator]: () => IterableIterator<V>;
|
|
30
30
|
map: <T>(fn: (v: V) => T) => T[];
|
|
31
31
|
clear: () => void;
|
|
32
|
-
sort: (fn?: (
|
|
32
|
+
sort: (fn?: (a: V, b: V) => number) => V[];
|
|
33
33
|
}
|
|
34
34
|
//# sourceMappingURL=bounded-collections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bounded-collections.d.ts","sourceRoot":"","sources":["../../src/utils/bounded-collections.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC;;gBAIpB,SAAS,EAAE,MAAM;IAI7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEjD,GAAG,QAAS,CAAC,SAAS,CAAC,UAWtB;IAED,GAAG,QAAS,CAAC,KAAG,CAAC,GAAG,SAAS,CAE5B;IAED,MAAM,QAAS,CAAC,UAEf;IAED,IAAI,4BAEH;CACF;AAED,qBAAa,QAAQ,CAAC,CAAC;;gBAGT,SAAS,EAAE,MAAM;IAW7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvC,GAAG,MAAO,CAAC,UAET;IAEF,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAEhB;CACF;AAED,qBAAa,UAAU,CAAC,CAAC;;gBAIX,SAAS,EAAE,MAAM;IAI7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvC,IAAI,MAAO,CAAC,UAQX;IAED,GAAG,UAAW,MAAM,KAAG,CAAC,GAAG,SAAS,CAEnC;IAED,MAAM,UAAW,MAAM,UAEtB;IAED,IAAI,MAAM,WAET;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAEhB;IAED,GAAG,
|
|
1
|
+
{"version":3,"file":"bounded-collections.d.ts","sourceRoot":"","sources":["../../src/utils/bounded-collections.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC;;gBAIpB,SAAS,EAAE,MAAM;IAI7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEjD,GAAG,QAAS,CAAC,SAAS,CAAC,UAWtB;IAED,GAAG,QAAS,CAAC,KAAG,CAAC,GAAG,SAAS,CAE5B;IAED,MAAM,QAAS,CAAC,UAEf;IAED,IAAI,4BAEH;CACF;AAED,qBAAa,QAAQ,CAAC,CAAC;;gBAGT,SAAS,EAAE,MAAM;IAW7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvC,GAAG,MAAO,CAAC,UAET;IAEF,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAEhB;CACF;AAED,qBAAa,UAAU,CAAC,CAAC;;gBAIX,SAAS,EAAE,MAAM;IAI7B,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAA;IAEvC,IAAI,MAAO,CAAC,UAQX;IAED,GAAG,UAAW,MAAM,KAAG,CAAC,GAAG,SAAS,CAEnC;IAED,MAAM,UAAW,MAAM,UAEtB;IAED,IAAI,MAAM,WAET;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAEhB;IAED,GAAG,UAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAG,CAAC,EAAE,CAE9B;IAED,KAAK,aAEJ;IAED,IAAI,QAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,SAElC;CACF"}
|
package/dist/utils/util.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference lib="es2022" />
|
|
2
2
|
import type { Brand } from '@livestore/utils/effect';
|
|
3
|
-
export type GetValForKey<T, K> = K extends keyof T ? T[K] : never;
|
|
4
3
|
export type ParamsObject = Record<string, SqlValue>;
|
|
5
4
|
export type SqlValue = string | number | Uint8Array | null;
|
|
6
5
|
export type Bindable = SqlValue[] | ParamsObject;
|
package/dist/utils/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/utils/util.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/utils/util.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAEpD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,CAAA;AAE1D,MAAM,MAAM,QAAQ,GAAG,QAAQ,EAAE,GAAG,YAAY,CAAA;AAEhD,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,WAAY,QAAQ,aAAa,MAAM,KAAG,kBAWvE,CAAA"}
|
package/dist/utils/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/utils/util.ts"],"names":[],"mappings":"AAAA,8BAA8B;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/utils/util.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAW9B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,SAAiB,EAAsB,EAAE;IAC3F,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAA4B,CAAA;IAE9D,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,KAAK,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,MAA4B,CAAA;AACrC,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@livestore/livestore",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.48-dev.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -36,26 +36,26 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@graphql-typed-document-node/core": "^3.2.0",
|
|
39
|
-
"@opentelemetry/api": "^1.
|
|
39
|
+
"@opentelemetry/api": "^1.9.0",
|
|
40
40
|
"lodash-es": "^4.17.21",
|
|
41
|
-
"@livestore/
|
|
42
|
-
"@livestore/
|
|
43
|
-
"effect-db-schema": "0.0.
|
|
41
|
+
"@livestore/common": "0.0.48-dev.0",
|
|
42
|
+
"@livestore/utils": "0.0.48-dev.0",
|
|
43
|
+
"effect-db-schema": "0.0.48-dev.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@opentelemetry/sdk-trace-base": "1.
|
|
47
|
-
"@tauri-apps/api": "^1.5.
|
|
48
|
-
"@testing-library/react": "^
|
|
46
|
+
"@opentelemetry/sdk-trace-base": "1.25.0",
|
|
47
|
+
"@tauri-apps/api": "^1.5.5",
|
|
48
|
+
"@testing-library/react": "^16.0.0",
|
|
49
49
|
"@types/lodash-es": "^4.17.12",
|
|
50
|
-
"@types/react": "^18.
|
|
51
|
-
"@types/react-dom": "^18.
|
|
50
|
+
"@types/react": "^18.3.1",
|
|
51
|
+
"@types/react-dom": "^18.3.0",
|
|
52
52
|
"jsdom": "^24.0.0",
|
|
53
|
-
"react": "^18.
|
|
54
|
-
"react-dom": "^18.
|
|
55
|
-
"typescript": "5.4.
|
|
56
|
-
"vite": "5.2.
|
|
57
|
-
"vitest": "^1.
|
|
58
|
-
"@livestore/web": "0.0.
|
|
53
|
+
"react": "^18.3.1",
|
|
54
|
+
"react-dom": "^18.3.1",
|
|
55
|
+
"typescript": "5.4.5",
|
|
56
|
+
"vite": "5.2.13",
|
|
57
|
+
"vitest": "^1.6.0",
|
|
58
|
+
"@livestore/web": "0.0.48-dev.0"
|
|
59
59
|
},
|
|
60
60
|
"peerDependencies": {
|
|
61
61
|
"@tauri-apps/api": "^1.4.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable prefer-arrow/prefer-arrow-functions */
|
|
2
2
|
|
|
3
|
-
import { type
|
|
3
|
+
import { type InMemoryDatabase, type PreparedStatement, sql } from '@livestore/common'
|
|
4
4
|
import { shouldNeverHappen } from '@livestore/utils'
|
|
5
5
|
import type * as otel from '@opentelemetry/api'
|
|
6
6
|
|
|
@@ -37,7 +37,7 @@ export class MainDatabaseWrapper {
|
|
|
37
37
|
private cachedStmts = new BoundMap<string, PreparedStatement>(200)
|
|
38
38
|
private tablesUsedCache = new BoundMap<string, Set<string>>(200)
|
|
39
39
|
private resultCache = new QueryCache()
|
|
40
|
-
private db:
|
|
40
|
+
private db: InMemoryDatabase
|
|
41
41
|
private otelTracer: otel.Tracer
|
|
42
42
|
private otelRootSpanContext: otel.Context
|
|
43
43
|
private tablesUsedStmt
|
|
@@ -48,7 +48,7 @@ export class MainDatabaseWrapper {
|
|
|
48
48
|
otelTracer,
|
|
49
49
|
otelRootSpanContext,
|
|
50
50
|
}: {
|
|
51
|
-
db:
|
|
51
|
+
db: InMemoryDatabase
|
|
52
52
|
otelTracer: otel.Tracer
|
|
53
53
|
otelRootSpanContext: otel.Context
|
|
54
54
|
}) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Schema as __Schema } from '@livestore/utils/effect'
|
|
2
|
-
import {
|
|
2
|
+
import { makeInMemoryAdapter } from '@livestore/web'
|
|
3
3
|
import type * as otel from '@opentelemetry/api'
|
|
4
4
|
import React from 'react'
|
|
5
5
|
|
|
6
6
|
import { globalDbGraph } from '../../global-state.js'
|
|
7
7
|
import type { LiveStoreContext } from '../../index.js'
|
|
8
|
-
import { createStore, DbSchema,
|
|
8
|
+
import { createStore, DbSchema, makeDbGraph, makeSchema, ParseUtils, sql } from '../../index.js'
|
|
9
9
|
import * as LiveStoreReact from '../../react/index.js'
|
|
10
10
|
|
|
11
11
|
export type Todo = {
|
|
@@ -21,11 +21,15 @@ export type AppState = {
|
|
|
21
21
|
filter: Filter
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
export const todos = DbSchema.table(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
})
|
|
24
|
+
export const todos = DbSchema.table(
|
|
25
|
+
'todos',
|
|
26
|
+
{
|
|
27
|
+
id: DbSchema.text({ primaryKey: true }),
|
|
28
|
+
text: DbSchema.text({ default: '', nullable: false }),
|
|
29
|
+
completed: DbSchema.boolean({ default: false, nullable: false }),
|
|
30
|
+
},
|
|
31
|
+
{ deriveMutations: true, isSingleton: false },
|
|
32
|
+
)
|
|
29
33
|
|
|
30
34
|
export const app = DbSchema.table('app', {
|
|
31
35
|
id: DbSchema.text({ primaryKey: true }),
|
|
@@ -33,7 +37,24 @@ export const app = DbSchema.table('app', {
|
|
|
33
37
|
filter: DbSchema.text({ default: 'all', nullable: false }),
|
|
34
38
|
})
|
|
35
39
|
|
|
36
|
-
|
|
40
|
+
const userInfo = DbSchema.table(
|
|
41
|
+
'UserInfo',
|
|
42
|
+
{
|
|
43
|
+
username: DbSchema.text({ default: '' }),
|
|
44
|
+
text: DbSchema.text({ default: '' }),
|
|
45
|
+
},
|
|
46
|
+
{ deriveMutations: true },
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
const AppRouterSchema = DbSchema.table(
|
|
50
|
+
'AppRouter',
|
|
51
|
+
{
|
|
52
|
+
currentTaskId: DbSchema.text({ default: null, nullable: true }),
|
|
53
|
+
},
|
|
54
|
+
{ isSingleton: true, deriveMutations: true },
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
export const tables = { todos, app, userInfo, AppRouterSchema }
|
|
37
58
|
export const schema = makeSchema({ tables })
|
|
38
59
|
|
|
39
60
|
export const parseTodos = ParseUtils.many(todos)
|
|
@@ -49,11 +70,6 @@ export const makeTodoMvc = async ({
|
|
|
49
70
|
useGlobalDbGraph?: boolean
|
|
50
71
|
strictMode?: boolean
|
|
51
72
|
} = {}) => {
|
|
52
|
-
const AppComponentSchema = DbSchema.table('UserInfo', {
|
|
53
|
-
username: DbSchema.text({ default: '' }),
|
|
54
|
-
text: DbSchema.text({ default: '' }),
|
|
55
|
-
})
|
|
56
|
-
|
|
57
73
|
const dbGraph = useGlobalDbGraph ? globalDbGraph : makeDbGraph()
|
|
58
74
|
|
|
59
75
|
const makeRenderCount = () => {
|
|
@@ -74,14 +90,12 @@ export const makeTodoMvc = async ({
|
|
|
74
90
|
const store = await createStore({
|
|
75
91
|
schema,
|
|
76
92
|
boot: (db) => db.execute(sql`INSERT OR IGNORE INTO app (id, newTodoText, filter) VALUES ('static', '', 'all');`),
|
|
77
|
-
|
|
93
|
+
adapter: makeInMemoryAdapter(),
|
|
78
94
|
dbGraph,
|
|
79
95
|
otelTracer,
|
|
80
96
|
otelRootSpanContext: otelContext,
|
|
81
97
|
})
|
|
82
98
|
|
|
83
|
-
const cud = makeCudMutations(tables)
|
|
84
|
-
|
|
85
99
|
// TODO improve typing of `LiveStoreContext`
|
|
86
100
|
const storeContext: LiveStoreContext = { store } as TODO
|
|
87
101
|
|
|
@@ -98,10 +112,10 @@ export const makeTodoMvc = async ({
|
|
|
98
112
|
return {
|
|
99
113
|
[Symbol.dispose]: () => store.destroy(),
|
|
100
114
|
wrapper,
|
|
101
|
-
AppComponentSchema,
|
|
115
|
+
AppComponentSchema: userInfo,
|
|
116
|
+
AppRouterSchema,
|
|
102
117
|
store,
|
|
103
118
|
dbGraph,
|
|
104
|
-
cud,
|
|
105
119
|
makeRenderCount,
|
|
106
120
|
strictMode,
|
|
107
121
|
}
|
package/src/effect/LiveStore.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BootDb, StoreAdapterFactory } from '@livestore/common'
|
|
2
2
|
import type { LiveStoreSchema } from '@livestore/common/schema'
|
|
3
3
|
import type { Scope } from '@livestore/utils/effect'
|
|
4
4
|
import { Context, Deferred, Duration, Effect, Layer, OtelTracer, pipe, Runtime } from '@livestore/utils/effect'
|
|
@@ -7,7 +7,7 @@ import type { GraphQLSchema } from 'graphql'
|
|
|
7
7
|
|
|
8
8
|
import type { MainDatabaseWrapper } from '../MainDatabaseWrapper.js'
|
|
9
9
|
import type { LiveQuery } from '../reactiveQueries/base-class.js'
|
|
10
|
-
import type { BaseGraphQLContext,
|
|
10
|
+
import type { BaseGraphQLContext, GraphQLOptions, Store } from '../store.js'
|
|
11
11
|
import { createStore } from '../store.js'
|
|
12
12
|
|
|
13
13
|
// TODO get rid of `LiveStoreContext` wrapper and only expose the `Store` directly
|
|
@@ -23,7 +23,7 @@ export type LiveStoreCreateStoreOptions<GraphQLContext extends BaseGraphQLContex
|
|
|
23
23
|
otelTracer?: otel.Tracer
|
|
24
24
|
otelRootSpanContext?: otel.Context
|
|
25
25
|
boot?: (db: BootDb, parentSpan: otel.Span) => unknown | Promise<unknown>
|
|
26
|
-
|
|
26
|
+
adapter: StoreAdapterFactory
|
|
27
27
|
batchUpdates?: (run: () => void) => void
|
|
28
28
|
}
|
|
29
29
|
|
|
@@ -43,7 +43,7 @@ export type LiveStoreContextProps<GraphQLContext extends BaseGraphQLContext> = {
|
|
|
43
43
|
makeContext: (db: MainDatabaseWrapper) => GraphQLContext
|
|
44
44
|
}
|
|
45
45
|
boot?: (db: BootDb) => Effect.Effect<void>
|
|
46
|
-
|
|
46
|
+
adapter: StoreAdapterFactory
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
export const LiveStoreContextLayer = <GraphQLContext extends BaseGraphQLContext>(
|
|
@@ -60,7 +60,7 @@ export const makeLiveStoreContext = <GraphQLContext extends BaseGraphQLContext>(
|
|
|
60
60
|
schema,
|
|
61
61
|
graphQLOptions: graphQLOptions_,
|
|
62
62
|
boot: boot_,
|
|
63
|
-
|
|
63
|
+
adapter,
|
|
64
64
|
}: LiveStoreContextProps<GraphQLContext>): Effect.Effect<
|
|
65
65
|
LiveStoreContext,
|
|
66
66
|
never,
|
|
@@ -92,7 +92,7 @@ export const makeLiveStoreContext = <GraphQLContext extends BaseGraphQLContext>(
|
|
|
92
92
|
otelTracer,
|
|
93
93
|
otelRootSpanContext,
|
|
94
94
|
boot,
|
|
95
|
-
|
|
95
|
+
adapter,
|
|
96
96
|
}),
|
|
97
97
|
),
|
|
98
98
|
Effect.acquireRelease((store) => Effect.sync(() => store.destroy())),
|
|
@@ -104,8 +104,9 @@ export const makeLiveStoreContext = <GraphQLContext extends BaseGraphQLContext>(
|
|
|
104
104
|
}),
|
|
105
105
|
Effect.tap((storeCtx) => Effect.flatMap(DeferredStoreContext, (def) => Deferred.succeed(def, storeCtx))),
|
|
106
106
|
Effect.timeoutFail({
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
// NOTE migrating from the mutation log can take a long time (so might need to increase this even further)
|
|
108
|
+
onTimeout: () => new Error('Timed out while creating LiveStore store after 60sec'),
|
|
109
|
+
duration: Duration.seconds(60),
|
|
109
110
|
}),
|
|
110
111
|
Effect.orDie,
|
|
111
112
|
)
|