@powerhousedao/reactor 5.0.1-staging.15 → 5.0.1-staging.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.
- package/dist/src/client/reactor-client.d.ts +5 -3
- package/dist/src/client/reactor-client.d.ts.map +1 -1
- package/dist/src/client/reactor-client.js +142 -37
- package/dist/src/client/reactor-client.js.map +1 -1
- package/dist/src/core/builder.d.ts +15 -2
- package/dist/src/core/builder.d.ts.map +1 -1
- package/dist/src/core/builder.js +48 -7
- package/dist/src/core/builder.js.map +1 -1
- package/dist/src/core/reactor-builder.d.ts +8 -0
- package/dist/src/core/reactor-builder.d.ts.map +1 -1
- package/dist/src/core/reactor-builder.js +26 -7
- package/dist/src/core/reactor-builder.js.map +1 -1
- package/dist/src/core/reactor.d.ts +14 -3
- package/dist/src/core/reactor.d.ts.map +1 -1
- package/dist/src/core/reactor.js +96 -95
- package/dist/src/core/reactor.js.map +1 -1
- package/dist/src/core/types.d.ts +22 -3
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/utils.d.ts +0 -4
- package/dist/src/core/utils.d.ts.map +1 -1
- package/dist/src/core/utils.js +0 -9
- package/dist/src/core/utils.js.map +1 -1
- package/dist/src/events/types.d.ts +28 -0
- package/dist/src/events/types.d.ts.map +1 -1
- package/dist/src/events/types.js +2 -0
- package/dist/src/events/types.js.map +1 -1
- package/dist/src/executor/simple-job-executor-manager.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor-manager.js +19 -3
- package/dist/src/executor/simple-job-executor-manager.js.map +1 -1
- package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor.js +21 -7
- package/dist/src/executor/simple-job-executor.js.map +1 -1
- package/dist/src/index.d.ts +3 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts +11 -2
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts.map +1 -1
- package/dist/src/job-tracker/in-memory-job-tracker.js +54 -26
- package/dist/src/job-tracker/in-memory-job-tracker.js.map +1 -1
- package/dist/src/job-tracker/interfaces.d.ts +6 -9
- package/dist/src/job-tracker/interfaces.d.ts.map +1 -1
- package/dist/src/read-models/coordinator.d.ts.map +1 -1
- package/dist/src/read-models/coordinator.js +11 -0
- package/dist/src/read-models/coordinator.js.map +1 -1
- package/dist/src/read-models/document-view.d.ts +1 -0
- package/dist/src/read-models/document-view.d.ts.map +1 -1
- package/dist/src/read-models/document-view.js +72 -2
- package/dist/src/read-models/document-view.js.map +1 -1
- package/dist/src/shared/awaiter.d.ts +11 -8
- package/dist/src/shared/awaiter.d.ts.map +1 -1
- package/dist/src/shared/awaiter.js +66 -75
- package/dist/src/shared/awaiter.js.map +1 -1
- package/dist/src/shared/types.d.ts +4 -2
- package/dist/src/shared/types.d.ts.map +1 -1
- package/dist/src/shared/types.js +4 -2
- package/dist/src/shared/types.js.map +1 -1
- package/dist/src/storage/index.d.ts +4 -0
- package/dist/src/storage/index.d.ts.map +1 -0
- package/dist/src/storage/index.js +3 -0
- package/dist/src/storage/index.js.map +1 -0
- package/dist/src/storage/interfaces.d.ts +79 -0
- package/dist/src/storage/interfaces.d.ts.map +1 -1
- package/dist/src/storage/interfaces.js.map +1 -1
- package/dist/src/storage/kysely/sync-cursor-storage.d.ts +13 -0
- package/dist/src/storage/kysely/sync-cursor-storage.d.ts.map +1 -0
- package/dist/src/storage/kysely/sync-cursor-storage.js +93 -0
- package/dist/src/storage/kysely/sync-cursor-storage.js.map +1 -0
- package/dist/src/storage/kysely/sync-remote-storage.d.ts +13 -0
- package/dist/src/storage/kysely/sync-remote-storage.d.ts.map +1 -0
- package/dist/src/storage/kysely/sync-remote-storage.js +134 -0
- package/dist/src/storage/kysely/sync-remote-storage.js.map +1 -0
- package/dist/src/storage/kysely/types.d.ts +35 -0
- package/dist/src/storage/kysely/types.d.ts.map +1 -1
- package/dist/src/storage/migrations/010_create_sync_tables.d.ts +3 -0
- package/dist/src/storage/migrations/010_create_sync_tables.d.ts.map +1 -0
- package/dist/src/storage/migrations/010_create_sync_tables.js +43 -0
- package/dist/src/storage/migrations/010_create_sync_tables.js.map +1 -0
- package/dist/src/storage/migrations/migrator.d.ts.map +1 -1
- package/dist/src/storage/migrations/migrator.js +2 -0
- package/dist/src/storage/migrations/migrator.js.map +1 -1
- package/dist/src/sync/channels/index.d.ts +3 -0
- package/dist/src/sync/channels/index.d.ts.map +1 -0
- package/dist/src/sync/channels/index.js +3 -0
- package/dist/src/sync/channels/index.js.map +1 -0
- package/dist/src/sync/channels/internal-channel.d.ts +57 -0
- package/dist/src/sync/channels/internal-channel.d.ts.map +1 -0
- package/dist/src/sync/channels/internal-channel.js +106 -0
- package/dist/src/sync/channels/internal-channel.js.map +1 -0
- package/dist/src/sync/channels/utils.d.ts +15 -0
- package/dist/src/sync/channels/utils.d.ts.map +1 -0
- package/dist/src/sync/channels/utils.js +26 -0
- package/dist/src/sync/channels/utils.js.map +1 -0
- package/dist/src/sync/errors.d.ts +10 -0
- package/dist/src/sync/errors.d.ts.map +1 -0
- package/dist/src/sync/errors.js +17 -0
- package/dist/src/sync/errors.js.map +1 -0
- package/dist/src/sync/index.d.ts +12 -0
- package/dist/src/sync/index.d.ts.map +1 -0
- package/dist/src/sync/index.js +9 -0
- package/dist/src/sync/index.js.map +1 -0
- package/dist/src/sync/interfaces.d.ts +150 -0
- package/dist/src/sync/interfaces.d.ts.map +1 -0
- package/dist/src/sync/interfaces.js +2 -0
- package/dist/src/sync/interfaces.js.map +1 -0
- package/dist/src/sync/mailbox.d.ts +21 -0
- package/dist/src/sync/mailbox.d.ts.map +1 -0
- package/dist/src/sync/mailbox.js +59 -0
- package/dist/src/sync/mailbox.js.map +1 -0
- package/dist/src/sync/sync-builder.d.ts +17 -0
- package/dist/src/sync/sync-builder.d.ts.map +1 -0
- package/dist/src/sync/sync-builder.js +29 -0
- package/dist/src/sync/sync-builder.js.map +1 -0
- package/dist/src/sync/sync-manager.d.ts +33 -0
- package/dist/src/sync/sync-manager.d.ts.map +1 -0
- package/dist/src/sync/sync-manager.js +197 -0
- package/dist/src/sync/sync-manager.js.map +1 -0
- package/dist/src/sync/sync-operation.d.ts +28 -0
- package/dist/src/sync/sync-operation.d.ts.map +1 -0
- package/dist/src/sync/sync-operation.js +63 -0
- package/dist/src/sync/sync-operation.js.map +1 -0
- package/dist/src/sync/types.d.ts +61 -0
- package/dist/src/sync/types.d.ts.map +1 -0
- package/dist/src/sync/types.js +16 -0
- package/dist/src/sync/types.js.map +1 -0
- package/dist/src/sync/utils.d.ts +17 -0
- package/dist/src/sync/utils.d.ts.map +1 -0
- package/dist/src/sync/utils.js +34 -0
- package/dist/src/sync/utils.js.map +1 -0
- package/package.json +4 -3
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Operation, PHDocument } from "document-model";
|
|
2
2
|
import type { ConsistencyToken } from "../shared/types.js";
|
|
3
|
+
import type { RemoteCursor, RemoteRecord } from "../sync/types.js";
|
|
3
4
|
export type OperationContext = {
|
|
4
5
|
documentId: string;
|
|
5
6
|
documentType: string;
|
|
@@ -129,6 +130,17 @@ export interface IDocumentView {
|
|
|
129
130
|
* @param signal - Optional abort signal to cancel the request
|
|
130
131
|
*/
|
|
131
132
|
get<TDocument extends PHDocument>(documentId: string, view?: ViewFilter, consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<TDocument>;
|
|
133
|
+
/**
|
|
134
|
+
* Returns the document with the given identifier (either id or slug).
|
|
135
|
+
* Throws an error if the identifier matches both an id and a slug that refer to different documents.
|
|
136
|
+
*
|
|
137
|
+
* @param identifier - The id or slug of the document to get.
|
|
138
|
+
* @param view - Optional filter containing branch and scopes information
|
|
139
|
+
* @param consistencyToken - Optional token for read-after-write consistency
|
|
140
|
+
* @param signal - Optional abort signal to cancel the request
|
|
141
|
+
* @throws {Error} If identifier matches both an ID and slug referring to different documents
|
|
142
|
+
*/
|
|
143
|
+
getByIdOrSlug<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<TDocument>;
|
|
132
144
|
/**
|
|
133
145
|
* Finds documents by their document type.
|
|
134
146
|
*
|
|
@@ -264,4 +276,71 @@ export interface IDocumentIndexer {
|
|
|
264
276
|
*/
|
|
265
277
|
getRelationshipTypes(consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<string[]>;
|
|
266
278
|
}
|
|
279
|
+
export interface ISyncRemoteStorage {
|
|
280
|
+
/**
|
|
281
|
+
* Lists all remotes.
|
|
282
|
+
*
|
|
283
|
+
* @param signal - Optional abort signal to cancel the request
|
|
284
|
+
* @returns The remotes
|
|
285
|
+
*/
|
|
286
|
+
list(signal?: AbortSignal): Promise<RemoteRecord[]>;
|
|
287
|
+
/**
|
|
288
|
+
* Gets a remote by name.
|
|
289
|
+
*
|
|
290
|
+
* @param name - The name of the remote
|
|
291
|
+
* @param signal - Optional abort signal to cancel the request
|
|
292
|
+
* @returns The remote
|
|
293
|
+
*/
|
|
294
|
+
get(name: string, signal?: AbortSignal): Promise<RemoteRecord>;
|
|
295
|
+
/**
|
|
296
|
+
* Upserts a remote.
|
|
297
|
+
*
|
|
298
|
+
* @param remote - The remote to upsert
|
|
299
|
+
* @param signal - Optional abort signal to cancel the request
|
|
300
|
+
* @returns The remote
|
|
301
|
+
*/
|
|
302
|
+
upsert(remote: RemoteRecord, signal?: AbortSignal): Promise<void>;
|
|
303
|
+
/**
|
|
304
|
+
* Removes a remote by name.
|
|
305
|
+
*
|
|
306
|
+
* @param name - The name of the remote
|
|
307
|
+
* @param signal - Optional abort signal to cancel the request
|
|
308
|
+
* @returns The remote
|
|
309
|
+
*/
|
|
310
|
+
remove(name: string, signal?: AbortSignal): Promise<void>;
|
|
311
|
+
}
|
|
312
|
+
export interface ISyncCursorStorage {
|
|
313
|
+
/**
|
|
314
|
+
* Lists all cursors for a remote.
|
|
315
|
+
*
|
|
316
|
+
* @param remoteName - The name of the remote
|
|
317
|
+
* @param signal - Optional abort signal to cancel the request
|
|
318
|
+
* @returns The cursors
|
|
319
|
+
*/
|
|
320
|
+
list(remoteName: string, signal?: AbortSignal): Promise<RemoteCursor[]>;
|
|
321
|
+
/**
|
|
322
|
+
* Gets a cursor for a remote.
|
|
323
|
+
*
|
|
324
|
+
* @param remoteName - The name of the remote
|
|
325
|
+
* @param signal - Optional abort signal to cancel the request
|
|
326
|
+
* @returns The cursor
|
|
327
|
+
*/
|
|
328
|
+
get(remoteName: string, signal?: AbortSignal): Promise<RemoteCursor>;
|
|
329
|
+
/**
|
|
330
|
+
* Upserts a cursor.
|
|
331
|
+
*
|
|
332
|
+
* @param cursor - The cursor to upsert
|
|
333
|
+
* @param signal - Optional abort signal to cancel the request
|
|
334
|
+
* @returns The cursor
|
|
335
|
+
*/
|
|
336
|
+
upsert(cursor: RemoteCursor, signal?: AbortSignal): Promise<void>;
|
|
337
|
+
/**
|
|
338
|
+
* Removes a cursor for a remote.
|
|
339
|
+
*
|
|
340
|
+
* @param remoteName - The name of the remote
|
|
341
|
+
* @param signal - Optional abort signal to cancel the request
|
|
342
|
+
* @returns The cursor
|
|
343
|
+
*/
|
|
344
|
+
remove(remoteName: string, signal?: AbortSignal): Promise<void>;
|
|
345
|
+
}
|
|
267
346
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/storage/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/storage/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/storage/interfaces.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/storage/interfaces.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,YAAY,IAAY;QACtB,KAAK,CAAC,uBAAuB,IAAI,iBAAiB,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,QAAgB,EAAE,MAAc;QAC1C,KAAK,CAAC,+BAA+B,QAAQ,SAAS,MAAM,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Kysely } from "kysely";
|
|
2
|
+
import type { RemoteCursor } from "../../sync/types.js";
|
|
3
|
+
import type { ISyncCursorStorage } from "../interfaces.js";
|
|
4
|
+
import type { Database } from "./types.js";
|
|
5
|
+
export declare class KyselySyncCursorStorage implements ISyncCursorStorage {
|
|
6
|
+
private readonly db;
|
|
7
|
+
constructor(db: Kysely<Database>);
|
|
8
|
+
list(remoteName: string, signal?: AbortSignal): Promise<RemoteCursor[]>;
|
|
9
|
+
get(remoteName: string, signal?: AbortSignal): Promise<RemoteCursor>;
|
|
10
|
+
upsert(cursor: RemoteCursor, signal?: AbortSignal): Promise<void>;
|
|
11
|
+
remove(remoteName: string, signal?: AbortSignal): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=sync-cursor-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-cursor-storage.d.ts","sourceRoot":"","sources":["../../../../src/storage/kysely/sync-cursor-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAC;AAsBhF,qBAAa,uBAAwB,YAAW,kBAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;IAE3C,IAAI,CACR,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAkBpB,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAyBpE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAgBtE"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { sql } from "kysely";
|
|
2
|
+
function rowToRemoteCursor(row) {
|
|
3
|
+
return {
|
|
4
|
+
remoteName: row.remote_name,
|
|
5
|
+
cursorOrdinal: Number(row.cursor_ordinal),
|
|
6
|
+
lastSyncedAtUtcMs: row.last_synced_at_utc_ms
|
|
7
|
+
? Number(row.last_synced_at_utc_ms)
|
|
8
|
+
: undefined,
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
function remoteCursorToRow(cursor) {
|
|
12
|
+
return {
|
|
13
|
+
remote_name: cursor.remoteName,
|
|
14
|
+
cursor_ordinal: BigInt(cursor.cursorOrdinal),
|
|
15
|
+
last_synced_at_utc_ms: cursor.lastSyncedAtUtcMs
|
|
16
|
+
? BigInt(cursor.lastSyncedAtUtcMs)
|
|
17
|
+
: null,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export class KyselySyncCursorStorage {
|
|
21
|
+
db;
|
|
22
|
+
constructor(db) {
|
|
23
|
+
this.db = db;
|
|
24
|
+
}
|
|
25
|
+
async list(remoteName, signal) {
|
|
26
|
+
if (signal?.aborted) {
|
|
27
|
+
throw new Error("Operation aborted");
|
|
28
|
+
}
|
|
29
|
+
const rows = await this.db
|
|
30
|
+
.selectFrom("sync_cursors")
|
|
31
|
+
.selectAll()
|
|
32
|
+
.where("remote_name", "=", remoteName)
|
|
33
|
+
.execute();
|
|
34
|
+
if (signal?.aborted) {
|
|
35
|
+
throw new Error("Operation aborted");
|
|
36
|
+
}
|
|
37
|
+
return rows.map(rowToRemoteCursor);
|
|
38
|
+
}
|
|
39
|
+
async get(remoteName, signal) {
|
|
40
|
+
if (signal?.aborted) {
|
|
41
|
+
throw new Error("Operation aborted");
|
|
42
|
+
}
|
|
43
|
+
const row = await this.db
|
|
44
|
+
.selectFrom("sync_cursors")
|
|
45
|
+
.selectAll()
|
|
46
|
+
.where("remote_name", "=", remoteName)
|
|
47
|
+
.executeTakeFirst();
|
|
48
|
+
if (signal?.aborted) {
|
|
49
|
+
throw new Error("Operation aborted");
|
|
50
|
+
}
|
|
51
|
+
if (!row) {
|
|
52
|
+
return {
|
|
53
|
+
remoteName,
|
|
54
|
+
cursorOrdinal: 0,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
return rowToRemoteCursor(row);
|
|
58
|
+
}
|
|
59
|
+
async upsert(cursor, signal) {
|
|
60
|
+
if (signal?.aborted) {
|
|
61
|
+
throw new Error("Operation aborted");
|
|
62
|
+
}
|
|
63
|
+
await this.db.transaction().execute(async (trx) => {
|
|
64
|
+
const insertable = remoteCursorToRow(cursor);
|
|
65
|
+
await trx
|
|
66
|
+
.insertInto("sync_cursors")
|
|
67
|
+
.values(insertable)
|
|
68
|
+
.onConflict((oc) => oc.column("remote_name").doUpdateSet({
|
|
69
|
+
...insertable,
|
|
70
|
+
updated_at: sql `NOW()`,
|
|
71
|
+
}))
|
|
72
|
+
.execute();
|
|
73
|
+
});
|
|
74
|
+
if (signal?.aborted) {
|
|
75
|
+
throw new Error("Operation aborted");
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
async remove(remoteName, signal) {
|
|
79
|
+
if (signal?.aborted) {
|
|
80
|
+
throw new Error("Operation aborted");
|
|
81
|
+
}
|
|
82
|
+
await this.db.transaction().execute(async (trx) => {
|
|
83
|
+
await trx
|
|
84
|
+
.deleteFrom("sync_cursors")
|
|
85
|
+
.where("remote_name", "=", remoteName)
|
|
86
|
+
.execute();
|
|
87
|
+
});
|
|
88
|
+
if (signal?.aborted) {
|
|
89
|
+
throw new Error("Operation aborted");
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=sync-cursor-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-cursor-storage.js","sourceRoot":"","sources":["../../../../src/storage/kysely/sync-cursor-storage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAK7B,SAAS,iBAAiB,CAAC,GAAkB;IAC3C,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;QACzC,iBAAiB,EAAE,GAAG,CAAC,qBAAqB;YAC1C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;YACnC,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,UAAU;QAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;QAC5C,qBAAqB,EAAE,MAAM,CAAC,iBAAiB;YAC7C,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAClC,CAAC,CAAC,IAAI;KACT,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,uBAAuB;IACL;IAA7B,YAA6B,EAAoB;QAApB,OAAE,GAAF,EAAE,CAAkB;IAAG,CAAC;IAErD,KAAK,CAAC,IAAI,CACR,UAAkB,EAClB,MAAoB;QAEpB,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE;aACvB,UAAU,CAAC,cAAc,CAAC;aAC1B,SAAS,EAAE;aACX,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC;aACrC,OAAO,EAAE,CAAC;QAEb,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,UAAkB,EAAE,MAAoB;QAChD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE;aACtB,UAAU,CAAC,cAAc,CAAC;aAC1B,SAAS,EAAE;aACX,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC;aACrC,gBAAgB,EAAE,CAAC;QAEtB,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;gBACL,UAAU;gBACV,aAAa,EAAE,CAAC;aACjB,CAAC;QACJ,CAAC;QAED,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAoB,EAAE,MAAoB;QACrD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAChD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAE7C,MAAM,GAAG;iBACN,UAAU,CAAC,cAAc,CAAC;iBAC1B,MAAM,CAAC,UAAU,CAAC;iBAClB,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,CACjB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC;gBACnC,GAAG,UAAU;gBACb,UAAU,EAAE,GAAG,CAAA,OAAO;aACvB,CAAC,CACH;iBACA,OAAO,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,MAAoB;QACnD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAChD,MAAM,GAAG;iBACN,UAAU,CAAC,cAAc,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,UAAU,CAAC;iBACrC,OAAO,EAAE,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Kysely } from "kysely";
|
|
2
|
+
import type { RemoteRecord } from "../../sync/types.js";
|
|
3
|
+
import type { ISyncRemoteStorage } from "../interfaces.js";
|
|
4
|
+
import type { Database } from "./types.js";
|
|
5
|
+
export declare class KyselySyncRemoteStorage implements ISyncRemoteStorage {
|
|
6
|
+
private readonly db;
|
|
7
|
+
constructor(db: Kysely<Database>);
|
|
8
|
+
list(signal?: AbortSignal): Promise<RemoteRecord[]>;
|
|
9
|
+
get(name: string, signal?: AbortSignal): Promise<RemoteRecord>;
|
|
10
|
+
upsert(remote: RemoteRecord, signal?: AbortSignal): Promise<void>;
|
|
11
|
+
remove(name: string, signal?: AbortSignal): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=sync-remote-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-remote-storage.d.ts","sourceRoot":"","sources":["../../../../src/storage/kysely/sync-remote-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAC;AA0EhF,qBAAa,uBAAwB,YAAW,kBAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;IAE3C,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAcnD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAsB9D,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAahE"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { sql } from "kysely";
|
|
2
|
+
function rowToRemoteRecord(row) {
|
|
3
|
+
return {
|
|
4
|
+
name: row.name,
|
|
5
|
+
collectionId: row.collection_id,
|
|
6
|
+
channelConfig: {
|
|
7
|
+
type: row.channel_type,
|
|
8
|
+
channelId: row.channel_id,
|
|
9
|
+
remoteName: row.remote_name,
|
|
10
|
+
parameters: (row.channel_parameters ?? {}),
|
|
11
|
+
},
|
|
12
|
+
filter: {
|
|
13
|
+
documentId: (row.filter_document_ids ?? []),
|
|
14
|
+
scope: (row.filter_scopes ?? []),
|
|
15
|
+
branch: row.filter_branch,
|
|
16
|
+
},
|
|
17
|
+
options: {},
|
|
18
|
+
status: {
|
|
19
|
+
push: {
|
|
20
|
+
state: row.push_state,
|
|
21
|
+
lastSuccessUtcMs: row.push_last_success_utc_ms
|
|
22
|
+
? Number(row.push_last_success_utc_ms)
|
|
23
|
+
: undefined,
|
|
24
|
+
lastFailureUtcMs: row.push_last_failure_utc_ms
|
|
25
|
+
? Number(row.push_last_failure_utc_ms)
|
|
26
|
+
: undefined,
|
|
27
|
+
failureCount: row.push_failure_count,
|
|
28
|
+
},
|
|
29
|
+
pull: {
|
|
30
|
+
state: row.pull_state,
|
|
31
|
+
lastSuccessUtcMs: row.pull_last_success_utc_ms
|
|
32
|
+
? Number(row.pull_last_success_utc_ms)
|
|
33
|
+
: undefined,
|
|
34
|
+
lastFailureUtcMs: row.pull_last_failure_utc_ms
|
|
35
|
+
? Number(row.pull_last_failure_utc_ms)
|
|
36
|
+
: undefined,
|
|
37
|
+
failureCount: row.pull_failure_count,
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function remoteRecordToRow(remote) {
|
|
43
|
+
return {
|
|
44
|
+
name: remote.name,
|
|
45
|
+
collection_id: remote.collectionId,
|
|
46
|
+
channel_type: remote.channelConfig.type,
|
|
47
|
+
channel_id: remote.channelConfig.channelId,
|
|
48
|
+
remote_name: remote.channelConfig.remoteName,
|
|
49
|
+
channel_parameters: remote.channelConfig.parameters,
|
|
50
|
+
filter_document_ids: remote.filter.documentId.length > 0 ? remote.filter.documentId : null,
|
|
51
|
+
filter_scopes: remote.filter.scope.length > 0 ? remote.filter.scope : null,
|
|
52
|
+
filter_branch: remote.filter.branch,
|
|
53
|
+
push_state: remote.status.push.state,
|
|
54
|
+
push_last_success_utc_ms: remote.status.push.lastSuccessUtcMs
|
|
55
|
+
? BigInt(remote.status.push.lastSuccessUtcMs)
|
|
56
|
+
: null,
|
|
57
|
+
push_last_failure_utc_ms: remote.status.push.lastFailureUtcMs
|
|
58
|
+
? BigInt(remote.status.push.lastFailureUtcMs)
|
|
59
|
+
: null,
|
|
60
|
+
push_failure_count: remote.status.push.failureCount,
|
|
61
|
+
pull_state: remote.status.pull.state,
|
|
62
|
+
pull_last_success_utc_ms: remote.status.pull.lastSuccessUtcMs
|
|
63
|
+
? BigInt(remote.status.pull.lastSuccessUtcMs)
|
|
64
|
+
: null,
|
|
65
|
+
pull_last_failure_utc_ms: remote.status.pull.lastFailureUtcMs
|
|
66
|
+
? BigInt(remote.status.pull.lastFailureUtcMs)
|
|
67
|
+
: null,
|
|
68
|
+
pull_failure_count: remote.status.pull.failureCount,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
export class KyselySyncRemoteStorage {
|
|
72
|
+
db;
|
|
73
|
+
constructor(db) {
|
|
74
|
+
this.db = db;
|
|
75
|
+
}
|
|
76
|
+
async list(signal) {
|
|
77
|
+
if (signal?.aborted) {
|
|
78
|
+
throw new Error("Operation aborted");
|
|
79
|
+
}
|
|
80
|
+
const rows = await this.db.selectFrom("sync_remotes").selectAll().execute();
|
|
81
|
+
if (signal?.aborted) {
|
|
82
|
+
throw new Error("Operation aborted");
|
|
83
|
+
}
|
|
84
|
+
return rows.map(rowToRemoteRecord);
|
|
85
|
+
}
|
|
86
|
+
async get(name, signal) {
|
|
87
|
+
if (signal?.aborted) {
|
|
88
|
+
throw new Error("Operation aborted");
|
|
89
|
+
}
|
|
90
|
+
const row = await this.db
|
|
91
|
+
.selectFrom("sync_remotes")
|
|
92
|
+
.selectAll()
|
|
93
|
+
.where("name", "=", name)
|
|
94
|
+
.executeTakeFirst();
|
|
95
|
+
if (signal?.aborted) {
|
|
96
|
+
throw new Error("Operation aborted");
|
|
97
|
+
}
|
|
98
|
+
if (!row) {
|
|
99
|
+
throw new Error(`Remote not found: ${name}`);
|
|
100
|
+
}
|
|
101
|
+
return rowToRemoteRecord(row);
|
|
102
|
+
}
|
|
103
|
+
async upsert(remote, signal) {
|
|
104
|
+
if (signal?.aborted) {
|
|
105
|
+
throw new Error("Operation aborted");
|
|
106
|
+
}
|
|
107
|
+
await this.db.transaction().execute(async (trx) => {
|
|
108
|
+
const insertable = remoteRecordToRow(remote);
|
|
109
|
+
await trx
|
|
110
|
+
.insertInto("sync_remotes")
|
|
111
|
+
.values(insertable)
|
|
112
|
+
.onConflict((oc) => oc.column("name").doUpdateSet({
|
|
113
|
+
...insertable,
|
|
114
|
+
updated_at: sql `NOW()`,
|
|
115
|
+
}))
|
|
116
|
+
.execute();
|
|
117
|
+
});
|
|
118
|
+
if (signal?.aborted) {
|
|
119
|
+
throw new Error("Operation aborted");
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
async remove(name, signal) {
|
|
123
|
+
if (signal?.aborted) {
|
|
124
|
+
throw new Error("Operation aborted");
|
|
125
|
+
}
|
|
126
|
+
await this.db.transaction().execute(async (trx) => {
|
|
127
|
+
await trx.deleteFrom("sync_remotes").where("name", "=", name).execute();
|
|
128
|
+
});
|
|
129
|
+
if (signal?.aborted) {
|
|
130
|
+
throw new Error("Operation aborted");
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=sync-remote-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-remote-storage.js","sourceRoot":"","sources":["../../../../src/storage/kysely/sync-remote-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,11 +46,40 @@ export interface OperationIndexOperationTable {
|
|
|
46
46
|
hash: string;
|
|
47
47
|
action: unknown;
|
|
48
48
|
}
|
|
49
|
+
export interface SyncRemoteTable {
|
|
50
|
+
name: string;
|
|
51
|
+
collection_id: string;
|
|
52
|
+
channel_type: string;
|
|
53
|
+
channel_id: string;
|
|
54
|
+
remote_name: string;
|
|
55
|
+
channel_parameters: unknown;
|
|
56
|
+
filter_document_ids: unknown;
|
|
57
|
+
filter_scopes: unknown;
|
|
58
|
+
filter_branch: string;
|
|
59
|
+
push_state: string;
|
|
60
|
+
push_last_success_utc_ms: bigint | null;
|
|
61
|
+
push_last_failure_utc_ms: bigint | null;
|
|
62
|
+
push_failure_count: number;
|
|
63
|
+
pull_state: string;
|
|
64
|
+
pull_last_success_utc_ms: bigint | null;
|
|
65
|
+
pull_last_failure_utc_ms: bigint | null;
|
|
66
|
+
pull_failure_count: number;
|
|
67
|
+
created_at: Generated<Date>;
|
|
68
|
+
updated_at: Generated<Date>;
|
|
69
|
+
}
|
|
70
|
+
export interface SyncCursorTable {
|
|
71
|
+
remote_name: string;
|
|
72
|
+
cursor_ordinal: bigint;
|
|
73
|
+
last_synced_at_utc_ms: bigint | null;
|
|
74
|
+
updated_at: Generated<Date>;
|
|
75
|
+
}
|
|
49
76
|
export interface Database {
|
|
50
77
|
Operation: OperationTable;
|
|
51
78
|
Keyframe: KeyframeTable;
|
|
52
79
|
document_collections: DocumentCollectionTable;
|
|
53
80
|
operation_index_operations: OperationIndexOperationTable;
|
|
81
|
+
sync_remotes: SyncRemoteTable;
|
|
82
|
+
sync_cursors: SyncCursorTable;
|
|
54
83
|
}
|
|
55
84
|
export type OperationRow = Selectable<OperationTable>;
|
|
56
85
|
export type InsertableOperation = Insertable<OperationTable>;
|
|
@@ -97,4 +126,10 @@ export type UpdateableDocumentCollection = Updateable<DocumentCollectionTable>;
|
|
|
97
126
|
export type OperationIndexOperationRow = Selectable<OperationIndexOperationTable>;
|
|
98
127
|
export type InsertableOperationIndexOperation = Insertable<OperationIndexOperationTable>;
|
|
99
128
|
export type UpdateableOperationIndexOperation = Updateable<OperationIndexOperationTable>;
|
|
129
|
+
export type SyncRemoteRow = Selectable<SyncRemoteTable>;
|
|
130
|
+
export type InsertableSyncRemote = Insertable<SyncRemoteTable>;
|
|
131
|
+
export type UpdateableSyncRemote = Updateable<SyncRemoteTable>;
|
|
132
|
+
export type SyncCursorRow = Selectable<SyncCursorTable>;
|
|
133
|
+
export type InsertableSyncCursor = Insertable<SyncCursorTable>;
|
|
134
|
+
export type UpdateableSyncCursor = Updateable<SyncCursorTable>;
|
|
100
135
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/storage/kysely/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE5E,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,oBAAoB,EAAE,uBAAuB,CAAC;IAC9C,0BAA0B,EAAE,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/storage/kysely/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"010_create_sync_tables.d.ts","sourceRoot":"","sources":["../../../../src/storage/migrations/010_create_sync_tables.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,wBAAsB,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DvD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { sql } from "kysely";
|
|
2
|
+
export async function up(db) {
|
|
3
|
+
await db.schema
|
|
4
|
+
.createTable("sync_remotes")
|
|
5
|
+
.addColumn("name", "text", (col) => col.primaryKey())
|
|
6
|
+
.addColumn("collection_id", "text", (col) => col.notNull())
|
|
7
|
+
.addColumn("channel_type", "text", (col) => col.notNull())
|
|
8
|
+
.addColumn("channel_id", "text", (col) => col.notNull().defaultTo(""))
|
|
9
|
+
.addColumn("remote_name", "text", (col) => col.notNull().defaultTo(""))
|
|
10
|
+
.addColumn("channel_parameters", "jsonb", (col) => col.notNull().defaultTo(sql `'{}'::jsonb`))
|
|
11
|
+
.addColumn("filter_document_ids", "jsonb")
|
|
12
|
+
.addColumn("filter_scopes", "jsonb")
|
|
13
|
+
.addColumn("filter_branch", "text", (col) => col.notNull().defaultTo("main"))
|
|
14
|
+
.addColumn("push_state", "text", (col) => col.notNull().defaultTo("idle"))
|
|
15
|
+
.addColumn("push_last_success_utc_ms", "bigint")
|
|
16
|
+
.addColumn("push_last_failure_utc_ms", "bigint")
|
|
17
|
+
.addColumn("push_failure_count", "integer", (col) => col.notNull().defaultTo(0))
|
|
18
|
+
.addColumn("pull_state", "text", (col) => col.notNull().defaultTo("idle"))
|
|
19
|
+
.addColumn("pull_last_success_utc_ms", "bigint")
|
|
20
|
+
.addColumn("pull_last_failure_utc_ms", "bigint")
|
|
21
|
+
.addColumn("pull_failure_count", "integer", (col) => col.notNull().defaultTo(0))
|
|
22
|
+
.addColumn("created_at", "timestamptz", (col) => col.notNull().defaultTo(sql `NOW()`))
|
|
23
|
+
.addColumn("updated_at", "timestamptz", (col) => col.notNull().defaultTo(sql `NOW()`))
|
|
24
|
+
.execute();
|
|
25
|
+
await db.schema
|
|
26
|
+
.createIndex("idx_sync_remotes_collection")
|
|
27
|
+
.on("sync_remotes")
|
|
28
|
+
.column("collection_id")
|
|
29
|
+
.execute();
|
|
30
|
+
await db.schema
|
|
31
|
+
.createTable("sync_cursors")
|
|
32
|
+
.addColumn("remote_name", "text", (col) => col.primaryKey().references("sync_remotes.name").onDelete("cascade"))
|
|
33
|
+
.addColumn("cursor_ordinal", "bigint", (col) => col.notNull().defaultTo(0))
|
|
34
|
+
.addColumn("last_synced_at_utc_ms", "bigint")
|
|
35
|
+
.addColumn("updated_at", "timestamptz", (col) => col.notNull().defaultTo(sql `NOW()`))
|
|
36
|
+
.execute();
|
|
37
|
+
await db.schema
|
|
38
|
+
.createIndex("idx_sync_cursors_ordinal")
|
|
39
|
+
.on("sync_cursors")
|
|
40
|
+
.column("cursor_ordinal")
|
|
41
|
+
.execute();
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=010_create_sync_tables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"010_create_sync_tables.js","sourceRoot":"","sources":["../../../../src/storage/migrations/010_create_sync_tables.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.d.ts","sourceRoot":"","sources":["../../../../src/storage/migrations/migrator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"migrator.d.ts","sourceRoot":"","sources":["../../../../src/storage/migrations/migrator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,MAAM,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA+BlD,wBAAsB,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAwB7E;AAED,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,sDAOvD"}
|
|
@@ -8,6 +8,7 @@ import * as migration006 from "./006_create_document_snapshot_table.js";
|
|
|
8
8
|
import * as migration007 from "./007_create_slug_mapping_table.js";
|
|
9
9
|
import * as migration008 from "./008_create_view_state_table.js";
|
|
10
10
|
import * as migration009 from "./009_create_operation_index_tables.js";
|
|
11
|
+
import * as migration010 from "./010_create_sync_tables.js";
|
|
11
12
|
const migrations = {
|
|
12
13
|
"001_create_operation_table": migration001,
|
|
13
14
|
"002_create_keyframe_table": migration002,
|
|
@@ -18,6 +19,7 @@ const migrations = {
|
|
|
18
19
|
"007_create_slug_mapping_table": migration007,
|
|
19
20
|
"008_create_view_state_table": migration008,
|
|
20
21
|
"009_create_operation_index_tables": migration009,
|
|
22
|
+
"010_create_sync_tables": migration010,
|
|
21
23
|
};
|
|
22
24
|
class ProgrammaticMigrationProvider {
|
|
23
25
|
getMigrations() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../../../src/storage/migrations/migrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,KAAK,YAAY,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,6CAA6C,CAAC;AAC5E,OAAO,KAAK,YAAY,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,YAAY,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,YAAY,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"migrator.js","sourceRoot":"","sources":["../../../../src/storage/migrations/migrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,KAAK,YAAY,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,6CAA6C,CAAC;AAC5E,OAAO,KAAK,YAAY,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,YAAY,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,YAAY,MAAM,wCAAwC,CAAC;AACvE,OAAO,KAAK,YAAY,MAAM,6BAA6B,CAAC;AAE5D,MAAM,UAAU,GAAG;IACjB,4BAA4B,EAAE,YAAY;IAC1C,2BAA2B,EAAE,YAAY;IACzC,2BAA2B,EAAE,YAAY;IACzC,wCAAwC,EAAE,YAAY;IACtD,gCAAgC,EAAE,YAAY;IAC9C,oCAAoC,EAAE,YAAY;IAClD,+BAA+B,EAAE,YAAY;IAC7C,6BAA6B,EAAE,YAAY;IAC3C,mCAAmC,EAAE,YAAY;IACjD,wBAAwB,EAAE,YAAY;CACvC,CAAC;AAEF,MAAM,6BAA6B;IACjC,aAAa;QACX,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAAe;IACjD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;QAC5B,EAAE;QACF,QAAQ,EAAE,IAAI,6BAA6B,EAAE;KAC9C,CAAC,CAAC;IAEH,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC;IAE5D,MAAM,kBAAkB,GACtB,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAEvD,IAAI,KAAK,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE,KAAK;YACd,kBAAkB;YAClB,KAAK,EACH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC;SACxE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,kBAAkB;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EAAe;IACtD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC;QAC5B,EAAE;QACF,QAAQ,EAAE,IAAI,6BAA6B,EAAE;KAC9C,CAAC,CAAC;IAEH,OAAO,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sync/channels/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sync/channels/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC"}
|