@livestore/adapter-node 0.3.0-dev.15 → 0.3.0-dev.17

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 (43) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/client-session/index.d.ts.map +1 -1
  3. package/dist/client-session/index.js +8 -15
  4. package/dist/client-session/index.js.map +1 -1
  5. package/dist/devtools/devtools-server.d.ts.map +1 -1
  6. package/dist/devtools/devtools-server.js +24 -14
  7. package/dist/devtools/devtools-server.js.map +1 -1
  8. package/dist/devtools/mod.d.ts +1 -1
  9. package/dist/devtools/mod.d.ts.map +1 -1
  10. package/dist/devtools/vite-dev-server.d.ts +22 -2
  11. package/dist/devtools/vite-dev-server.d.ts.map +1 -1
  12. package/dist/devtools/vite-dev-server.js +12 -58
  13. package/dist/devtools/vite-dev-server.js.map +1 -1
  14. package/dist/in-memory/index.d.ts.map +1 -1
  15. package/dist/in-memory/index.js +9 -5
  16. package/dist/in-memory/index.js.map +1 -1
  17. package/dist/make-leader-worker.d.ts +1 -1
  18. package/dist/make-leader-worker.d.ts.map +1 -1
  19. package/dist/make-leader-worker.js +7 -2
  20. package/dist/make-leader-worker.js.map +1 -1
  21. package/dist/shutdown-channel.d.ts +1 -5
  22. package/dist/shutdown-channel.d.ts.map +1 -1
  23. package/dist/webchannel.d.ts.map +1 -1
  24. package/dist/webchannel.js +3 -3
  25. package/dist/webchannel.js.map +1 -1
  26. package/dist/worker-schema.d.ts +2 -2
  27. package/dist/worker-schema.d.ts.map +1 -1
  28. package/dist/worker-schema.js +2 -4
  29. package/dist/worker-schema.js.map +1 -1
  30. package/package.json +8 -8
  31. package/src/client-session/index.ts +21 -22
  32. package/src/devtools/devtools-server.ts +28 -16
  33. package/src/devtools/mod.ts +1 -1
  34. package/src/devtools/vite-dev-server.ts +30 -60
  35. package/src/in-memory/index.ts +22 -4
  36. package/src/make-leader-worker.ts +10 -3
  37. package/src/webchannel.ts +11 -8
  38. package/src/worker-schema.ts +2 -4
  39. package/dist/leader-thread.d.ts +0 -2
  40. package/dist/leader-thread.d.ts.map +0 -1
  41. package/dist/leader-thread.js +0 -140
  42. package/dist/leader-thread.js.map +0 -1
  43. package/src/devtools/types.d.ts +0 -33
@@ -1,140 +0,0 @@
1
- import './thread-polyfill.js';
2
- import inspector from 'node:inspector';
3
- import path from 'node:path';
4
- if (process.execArgv.includes('--inspect')) {
5
- inspector.open();
6
- inspector.waitForDebugger();
7
- }
8
- import { NodeFileSystem, NodeWorkerRunner } from '@effect/platform-node';
9
- import { Devtools, liveStoreStorageFormatVersion, sql, UnexpectedError } from '@livestore/common';
10
- import { configureConnection, LeaderThreadCtx, makeLeaderThreadLayer } from '@livestore/common/leader-thread';
11
- import { EventId, MutationEvent } from '@livestore/common/schema';
12
- import { makeNodeDevtoolsChannel } from '@livestore/devtools-node-common/web-channel';
13
- import { loadSqlite3Wasm } from '@livestore/sqlite-wasm/load-wasm';
14
- import { syncDbFactory } from '@livestore/sqlite-wasm/node';
15
- import { Effect, FetchHttpClient, Layer, Logger, LogLevel, Schema, Stream, WorkerRunner } from '@livestore/utils/effect';
16
- import { OtelLiveHttp } from '@livestore/utils/node';
17
- import { startDevtoolsServer } from './devtools/devtools-server.js';
18
- import { makeShutdownChannel } from './shutdown-channel.js';
19
- import * as WorkerSchema from './worker-schema.js';
20
- const argvOptions = Schema.decodeSync(WorkerSchema.WorkerArgv)(process.argv[2]);
21
- WorkerRunner.layerSerialized(WorkerSchema.LeaderWorkerInner.Request, {
22
- InitialMessage: (args) => makeLeaderThread(args),
23
- PushToLeader: ({ batch }) => Effect.andThen(LeaderThreadCtx, (_) => _.syncProcessor.push(batch.map((item) => new MutationEvent.EncodedWithMeta(item)))).pipe(Effect.uninterruptible, Effect.withSpan('@livestore/node:worker:PushToLeader')),
24
- BootStatusStream: () => Effect.andThen(LeaderThreadCtx, (_) => Stream.fromQueue(_.bootStatusQueue)).pipe(Stream.unwrap),
25
- PullStream: ({ cursor }) => Effect.gen(function* () {
26
- const { connectedClientSessionPullQueues } = yield* LeaderThreadCtx;
27
- const pullQueue = yield* connectedClientSessionPullQueues.makeQueue(cursor);
28
- return Stream.fromQueue(pullQueue);
29
- }).pipe(Stream.unwrapScoped),
30
- Export: () => Effect.andThen(LeaderThreadCtx, (_) => _.db.export()).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:Export')),
31
- ExportMutationlog: () => Effect.andThen(LeaderThreadCtx, (_) => _.dbLog.export()).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:ExportMutationlog')),
32
- GetCurrentMutationEventId: () => Effect.gen(function* () {
33
- const workerCtx = yield* LeaderThreadCtx;
34
- const result = workerCtx.dbLog.select(sql `SELECT idGlobal, idLocal FROM mutation_log ORDER BY idGlobal DESC, idLocal DESC LIMIT 1`)[0];
35
- return result ? { global: result.idGlobal, local: result.idLocal } : EventId.ROOT;
36
- }).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:GetCurrentMutationEventId')),
37
- NetworkStatusStream: () => Effect.gen(function* (_) {
38
- const ctx = yield* LeaderThreadCtx;
39
- if (ctx.syncBackend === undefined) {
40
- return Stream.make({ isConnected: false, timestampMs: Date.now() });
41
- }
42
- return ctx.syncBackend.isConnected.changes.pipe(Stream.map((isConnected) => ({ isConnected, timestampMs: Date.now() })));
43
- }).pipe(Stream.unwrap),
44
- GetLeaderSyncState: () => Effect.gen(function* () {
45
- const workerCtx = yield* LeaderThreadCtx;
46
- return yield* workerCtx.syncProcessor.syncState;
47
- }).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:GetLeaderSyncState')),
48
- // GetRecreateSnapshot: () =>
49
- // Effect.gen(function* () {
50
- // const workerCtx = yield* LeaderThreadCtx
51
- // const result = yield* Deferred.await(workerCtx.initialSetupDeferred)
52
- // // NOTE we can only return the cached snapshot once as it's transferred (i.e. disposed), so we need to set it to undefined
53
- // const cachedSnapshot =
54
- // result._tag === 'Recreate' ? yield* Ref.getAndSet(result.snapshotRef, undefined) : undefined
55
- // return cachedSnapshot ?? workerCtx.db.export()
56
- // }).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:GetRecreateSnapshot')),
57
- Shutdown: () => Effect.gen(function* () {
58
- const { db, dbLog } = yield* LeaderThreadCtx;
59
- yield* Effect.logDebug('[@livestore/node:worker] Shutdown');
60
- // if (devtools.enabled) {
61
- // yield* FiberSet.clear(devtools.connections)
62
- // }
63
- db.close();
64
- dbLog.close();
65
- // Buy some time for Otel to flush
66
- // TODO find a cleaner way to do this
67
- // yield* Effect.sleep(1000)
68
- }).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:Shutdown')),
69
- ExtraDevtoolsMessage: ({ message }) => Effect.andThen(LeaderThreadCtx, (_) => _.extraIncomingMessagesQueue.offer(message)).pipe(UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:ExtraDevtoolsMessage')),
70
- }).pipe(Layer.provide(NodeWorkerRunner.layer), Layer.launch, Effect.scoped, Effect.tapCauseLogPretty, Effect.annotateLogs({ thread: argvOptions.otel?.workerServiceName ?? 'livestore-node-leader-thread' }), Effect.provide(Logger.prettyWithThread(argvOptions.otel?.workerServiceName ?? 'livestore-node-leader-thread')), Effect.provide(FetchHttpClient.layer), Effect.provide(NodeFileSystem.layer), Effect.provide(OtelLiveHttp({
71
- serviceName: argvOptions.otel?.workerServiceName ?? 'livestore-node-leader-thread',
72
- skipLogUrl: true,
73
- })), Logger.withMinimumLogLevel(LogLevel.Debug), Effect.runFork);
74
- const makeLeaderThread = ({ schemaPath, storeId, clientId, syncOptions, makeSyncBackendUrl, baseDirectory, devtoolsEnabled, devtoolsPort, initialSyncOptions, }) => Effect.gen(function* () {
75
- const schema = yield* Effect.promise(() => import(schemaPath).then((m) => m.schema));
76
- const makeSyncBackend = makeSyncBackendUrl
77
- ? yield* Effect.promise(() => import(makeSyncBackendUrl).then((m) => m.makeWsSync))
78
- : undefined;
79
- const sqlite3 = yield* Effect.promise(() => loadSqlite3Wasm()).pipe(Effect.withSpan('@livestore/node:leader-thread:loadSqlite3Wasm'));
80
- const makeSyncDb = yield* syncDbFactory({ sqlite3 });
81
- const schemaHashSuffix = schema.migrationOptions.strategy === 'manual' ? 'fixed' : schema.hash.toString();
82
- const makeDb = (kind) => makeSyncDb({
83
- _tag: 'fs',
84
- directory: path.join(baseDirectory ?? '', storeId),
85
- fileName: kind === 'app' ? getAppDbFileName(schemaHashSuffix) : `mutationlog@${liveStoreStorageFormatVersion}.db`,
86
- // TODO enable WAL for nodejs
87
- configureDb: (db) => configureConnection(db, { fkEnabled: true }),
88
- }).pipe(Effect.acquireRelease((db) => Effect.sync(() => db.close())));
89
- // Might involve some async work, so we're running them concurrently
90
- const [db, dbLog] = yield* Effect.all([makeDb('app'), makeDb('mutationlog')], { concurrency: 2 });
91
- const devtoolsOptions = yield* makeDevtoolsOptions({
92
- devtoolsEnabled,
93
- db,
94
- dbLog,
95
- storeId,
96
- clientId,
97
- devtoolsPort,
98
- schemaPath,
99
- });
100
- const shutdownChannel = yield* makeShutdownChannel(storeId);
101
- return makeLeaderThreadLayer({
102
- schema,
103
- storeId,
104
- clientId,
105
- makeSyncDb,
106
- makeSyncBackend: makeSyncBackend === undefined || syncOptions === undefined ? undefined : makeSyncBackend(syncOptions),
107
- db,
108
- dbLog,
109
- devtoolsOptions,
110
- initialSyncOptions,
111
- shutdownChannel,
112
- });
113
- }).pipe(Effect.tapCauseLogPretty, UnexpectedError.mapToUnexpectedError, Effect.withSpan('@livestore/node:worker:InitialMessage'), Layer.unwrapScoped);
114
- const getAppDbFileName = (suffix) => `app${suffix}@${liveStoreStorageFormatVersion}.db`;
115
- const makeDevtoolsOptions = ({ devtoolsEnabled, db, dbLog, storeId, clientId, devtoolsPort, schemaPath, }) => Effect.gen(function* () {
116
- if (devtoolsEnabled === false) {
117
- return {
118
- enabled: false,
119
- };
120
- }
121
- return {
122
- enabled: true,
123
- makeContext: Effect.gen(function* () {
124
- yield* startDevtoolsServer({ schemaPath, storeId, port: devtoolsPort }).pipe(Effect.tapCauseLogPretty, Effect.forkScoped);
125
- return {
126
- devtoolsWebChannel: yield* makeNodeDevtoolsChannel({
127
- nodeName: `leader-${storeId}-${clientId}`,
128
- target: `devtools`,
129
- url: `ws://localhost:${devtoolsPort}`,
130
- schema: { listen: Devtools.MessageToAppLeader, send: Devtools.MessageFromAppLeader },
131
- }),
132
- persistenceInfo: {
133
- db: db.metadata.persistenceInfo,
134
- mutationLog: dbLog.metadata.persistenceInfo,
135
- },
136
- };
137
- }),
138
- };
139
- });
140
- //# sourceMappingURL=leader-thread.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"leader-thread.js","sourceRoot":"","sources":["../src/leader-thread.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import type * as http from 'node:http'
2
-
3
- import type * as Vite from 'vite'
4
-
5
- export type Middleware = (req: http.IncomingMessage, res: http.ServerResponse, next: () => void) => void
6
-
7
- export type Options = {
8
- viteConfig?: (config: Vite.UserConfig) => Vite.UserConfig
9
- /**
10
- * Path to the file exporting the LiveStore schema as `export const schema = ...`
11
- * File path must be relative to the project root and will be imported via Vite.
12
- *
13
- * Example: `./src/schema.ts`
14
- */
15
- schemaPath: string
16
- // TODO consolidate with `Mode` in `@livestore/devtools-react/devtools-api.ts`
17
- /**
18
- * The mode of the devtools server.
19
- *
20
- * @default 'node'
21
- */
22
- mode:
23
- | {
24
- _tag: 'node'
25
- storeId: string
26
- clientId: string
27
- sessionId: string
28
- url: string
29
- }
30
- | {
31
- _tag: 'expo'
32
- }
33
- }