mindoodb 0.0.9 → 0.0.11
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/appendonlystores/InMemoryContentAddressedStoreFactory.d.ts.map +1 -1
- package/dist/appendonlystores/InMemoryContentAddressedStoreFactory.js +3 -5
- package/dist/appendonlystores/InMemoryContentAddressedStoreFactory.js.map +1 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts +7 -2
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +23 -3
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.d.ts +5 -0
- package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.js +66 -36
- package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts +4 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.d.ts.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js +15 -3
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStore.js.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStoreFactory.d.ts.map +1 -1
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStoreFactory.js +7 -3
- package/dist/browser/appendonlystores/IndexedDBContentAddressedStoreFactory.js.map +1 -1
- package/dist/browser/index.mjs +1 -0
- package/dist/core/BaseMindooDB.d.ts +44 -5
- package/dist/core/BaseMindooDB.d.ts.map +1 -1
- package/dist/core/BaseMindooDB.js +244 -53
- package/dist/core/BaseMindooDB.js.map +1 -1
- package/dist/core/BaseMindooTenant.d.ts +2 -3
- package/dist/core/BaseMindooTenant.d.ts.map +1 -1
- package/dist/core/BaseMindooTenant.js +9 -18
- package/dist/core/BaseMindooTenant.js.map +1 -1
- package/dist/core/BaseMindooTenantDirectory.d.ts +1 -0
- package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
- package/dist/core/BaseMindooTenantDirectory.js +24 -8
- package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
- package/dist/core/appendonlystores/AttachmentReadPlanner.d.ts.map +1 -1
- package/dist/core/appendonlystores/AttachmentReadPlanner.js +1 -1
- package/dist/core/appendonlystores/AttachmentReadPlanner.js.map +1 -1
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts +4 -2
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.d.ts.map +1 -1
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.js +13 -8
- package/dist/core/appendonlystores/InMemoryContentAddressedStore.js.map +1 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts +5 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts.map +1 -1
- package/dist/core/appendonlystores/types.d.ts +14 -10
- package/dist/core/appendonlystores/types.d.ts.map +1 -1
- package/dist/core/appendonlystores/types.js +6 -0
- package/dist/core/appendonlystores/types.js.map +1 -1
- package/dist/core/types.d.ts +24 -12
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +3 -1
- package/dist/core/types.js.map +1 -1
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts +5 -2
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.d.ts.map +1 -1
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js +10 -4
- package/dist/node/appendonlystores/BasicOnDiskContentAddressedStore.js.map +1 -1
- package/dist/node/server/MindooDBServer.d.ts +105 -0
- package/dist/node/server/MindooDBServer.d.ts.map +1 -1
- package/dist/node/server/MindooDBServer.js +240 -66
- package/dist/node/server/MindooDBServer.js.map +1 -1
- package/dist/node/server/ServerSync.d.ts +1 -1
- package/dist/node/server/ServerSync.d.ts.map +1 -1
- package/dist/node/server/ServerSync.js +2 -1
- package/dist/node/server/ServerSync.js.map +1 -1
- package/dist/node/server/StoreFactory.d.ts +3 -3
- package/dist/node/server/StoreFactory.d.ts.map +1 -1
- package/dist/node/server/StoreFactory.js +8 -8
- package/dist/node/server/StoreFactory.js.map +1 -1
- package/dist/node/server/TenantManager.d.ts +5 -3
- package/dist/node/server/TenantManager.d.ts.map +1 -1
- package/dist/node/server/TenantManager.js +33 -20
- package/dist/node/server/TenantManager.js.map +1 -1
- package/dist/node/server/config.d.ts.map +1 -1
- package/dist/node/server/config.js +4 -0
- package/dist/node/server/config.js.map +1 -1
- package/dist/node/server/server.js +6 -5
- package/dist/node/server/server.js.map +1 -1
- package/dist/node/server/types.d.ts +1 -0
- package/dist/node/server/types.d.ts.map +1 -1
- package/dist/node/server/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryContentAddressedStoreFactory.d.ts","sourceRoot":"","sources":["../../src/appendonlystores/InMemoryContentAddressedStoreFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"InMemoryContentAddressedStoreFactory.d.ts","sourceRoot":"","sources":["../../src/appendonlystores/InMemoryContentAddressedStoreFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,gBAAgB,EAAa,MAAM,eAAe,CAAC;AAE7G,qBAAa,oCAAqC,YAAW,4BAA4B;IACvF,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB;CAWzE"}
|
|
@@ -2,14 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InMemoryContentAddressedStoreFactory = void 0;
|
|
4
4
|
const InMemoryContentAddressedStore_1 = require("../core/appendonlystores/InMemoryContentAddressedStore");
|
|
5
|
+
const types_1 = require("../core/types");
|
|
5
6
|
class InMemoryContentAddressedStoreFactory {
|
|
6
7
|
createStore(dbId, options) {
|
|
7
|
-
// For in-memory stores, we use a single store for both documents and attachments
|
|
8
|
-
// (no separate attachment store needed for simple/test scenarios)
|
|
9
|
-
// Note: options are ignored for in-memory stores but accepted for interface compatibility
|
|
10
8
|
return {
|
|
11
|
-
docStore: new InMemoryContentAddressedStore_1.InMemoryContentAddressedStore(dbId, undefined, options),
|
|
12
|
-
|
|
9
|
+
docStore: new InMemoryContentAddressedStore_1.InMemoryContentAddressedStore(dbId, types_1.StoreKind.docs, undefined, options),
|
|
10
|
+
attachmentStore: new InMemoryContentAddressedStore_1.InMemoryContentAddressedStore(dbId, types_1.StoreKind.attachments, undefined, options),
|
|
13
11
|
};
|
|
14
12
|
}
|
|
15
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryContentAddressedStoreFactory.js","sourceRoot":"","sources":["../../src/appendonlystores/InMemoryContentAddressedStoreFactory.ts"],"names":[],"mappings":";;;AAAA,0GAAuG;
|
|
1
|
+
{"version":3,"file":"InMemoryContentAddressedStoreFactory.js","sourceRoot":"","sources":["../../src/appendonlystores/InMemoryContentAddressedStoreFactory.ts"],"names":[],"mappings":";;;AAAA,0GAAuG;AACvG,yCAA6G;AAE7G,MAAa,oCAAoC;IAC/C,WAAW,CAAC,IAAY,EAAE,OAA0B;QAClD,OAAO;YACL,QAAQ,EAAE,IAAI,6DAA6B,CAAC,IAAI,EAAE,iBAAS,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC;YACrF,eAAe,EAAE,IAAI,6DAA6B,CAChD,IAAI,EACJ,iBAAS,CAAC,WAAW,EACrB,SAAS,EACT,OAAO,CACR;SACF,CAAC;IACJ,CAAC;CACF;AAZD,oFAYC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ContentAddressedStore } from "../../core/types";
|
|
2
2
|
import type { StoreEntry, StoreEntryMetadata, StoreEntryType, StoreScanCursor, StoreScanFilters, StoreScanResult, StoreIdBloomSummary, StoreCompactionStatus } from "../../core/types";
|
|
3
|
-
import type { AttachmentReadPlan, AttachmentReadPlanOptions, DocumentMaterializationBatchPlan, DocumentMaterializationPlan, MaterializationPlanOptions } from "../../core/appendonlystores/types";
|
|
3
|
+
import type { AttachmentReadPlan, AttachmentReadPlanOptions, DocumentMaterializationBatchPlan, DocumentMaterializationPlan, MaterializationPlanOptions, StoreKind } from "../../core/appendonlystores/types";
|
|
4
4
|
import type { CryptoAdapter } from "../../core/crypto/CryptoAdapter";
|
|
5
5
|
import type { NetworkTransport } from "../../core/appendonlystores/network/NetworkTransport";
|
|
6
6
|
import type { NetworkSyncCapabilities } from "../../core/appendonlystores/network/types";
|
|
@@ -21,6 +21,7 @@ import { Logger } from "../../core/logging";
|
|
|
21
21
|
*/
|
|
22
22
|
export declare class ClientNetworkContentAddressedStore implements ContentAddressedStore {
|
|
23
23
|
private dbId;
|
|
24
|
+
private readonly storeKind;
|
|
24
25
|
private transport;
|
|
25
26
|
private rsaEncryption;
|
|
26
27
|
private privateEncryptionKey;
|
|
@@ -33,6 +34,7 @@ export declare class ClientNetworkContentAddressedStore implements ContentAddres
|
|
|
33
34
|
private logger;
|
|
34
35
|
private capabilitiesCache;
|
|
35
36
|
private syncAuthOverride;
|
|
37
|
+
private _syncAbortSignal?;
|
|
36
38
|
/**
|
|
37
39
|
* Create a new ClientNetworkContentAddressedStore.
|
|
38
40
|
*
|
|
@@ -44,9 +46,12 @@ export declare class ClientNetworkContentAddressedStore implements ContentAddres
|
|
|
44
46
|
* @param privateEncryptionKey The user's private RSA key (for decrypting received entries)
|
|
45
47
|
* @param logger Optional logger instance
|
|
46
48
|
*/
|
|
47
|
-
constructor(dbId: string, transport: NetworkTransport, cryptoAdapter: CryptoAdapter, username: string, signingKey: CryptoKey, privateEncryptionKey: CryptoKey | string, logger?: Logger);
|
|
49
|
+
constructor(dbId: string, storeKind: StoreKind, transport: NetworkTransport, cryptoAdapter: CryptoAdapter, username: string, signingKey: CryptoKey, privateEncryptionKey: CryptoKey | string, logger?: Logger);
|
|
48
50
|
getId(): string;
|
|
51
|
+
getStoreKind(): StoreKind;
|
|
49
52
|
getCacheIdentity(): string;
|
|
53
|
+
setSyncAbortSignal(signal?: AbortSignal): void;
|
|
54
|
+
private throwIfSyncAborted;
|
|
50
55
|
/**
|
|
51
56
|
* Store entries to the remote store.
|
|
52
57
|
* The entries are pushed to the server immediately.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientNetworkContentAddressedStore.d.ts","sourceRoot":"","sources":["../../../src/appendonlystores/network/ClientNetworkContentAddressedStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,EAChC,2BAA2B,EAC3B,0BAA0B,
|
|
1
|
+
{"version":3,"file":"ClientNetworkContentAddressedStore.d.ts","sourceRoot":"","sources":["../../../src/appendonlystores/network/ClientNetworkContentAddressedStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,EAChC,2BAA2B,EAC3B,0BAA0B,EAC1B,SAAS,EACV,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,2CAA2C,CAAC;AAGnD,OAAO,EAAE,MAAM,EAAoC,MAAM,oBAAoB,CAAC;AAG9E;;;;;;;;;;;;;GAaG;AACH,qBAAa,kCAAmC,YAAW,qBAAqB;IAC9E,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAgB;IAGrC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,qBAAqB,CAAgC;IAC7D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,iBAAiB,CAAwC;IACjE,OAAO,CAAC,gBAAgB,CAIR;IAChB,OAAO,CAAC,gBAAgB,CAAC,CAAc;IAEvC;;;;;;;;;;OAUG;gBAED,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,EACrB,oBAAoB,EAAE,SAAS,GAAG,MAAM,EACxC,MAAM,CAAC,EAAE,MAAM;IAgBjB,KAAK,IAAI,MAAM;IAIf,YAAY,IAAI,SAAS;IAIzB,gBAAgB,IAAI,MAAM;IAK1B,kBAAkB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI;IAO9C,OAAO,CAAC,kBAAkB;IAQ1B;;;OAGG;IACG,UAAU,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD;;;;;OAKG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAqBhD,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAQhE,mCAAmC,CACvC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,kBAAkB,CAAC;IAW9B;;;;;OAKG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAclD;;;;;OAKG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAYvE;;OAEG;IACG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAW5F;;OAEG;IACG,WAAW,CACf,IAAI,EAAE,cAAc,EACpB,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAC/B,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAgBhC,OAAO,CAAC,kCAAkC;IAQ1C;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAWpC;;;OAGG;IACG,gBAAgB,CACpB,MAAM,EAAE,eAAe,GAAG,IAAI,EAC9B,KAAK,GAAE,MAAgC,EACvC,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IA4DrB,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAcjD,eAAe,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAuBnD,mBAAmB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAwBrD,2BAA2B,CAC/B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,2BAA2B,CAAC;IAWjC,gCAAgC,CACpC,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAAC,gCAAgC,CAAC;IAW5C;;;;OAIG;IACG,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC;IAYpB;;;;;;;;OAQG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD;;OAEG;YACW,mBAAmB;YAsBnB,qBAAqB;IAyCnC;;OAEG;YACW,aAAa;YAIb,oBAAoB;IAalC;;;OAGG;YACW,qBAAqB;IAqCnC;;;OAGG;IACH,cAAc,IAAI,IAAI;YAMR,qBAAqB;IAKnC,OAAO,CAAC,mBAAmB;YAIb,qBAAqB;IAiBnC;;;OAGG;IACH,mBAAmB,CACjB,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,SAAS,CAAC;QACtB,oBAAoB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;KAC3C,GAAG,IAAI,GACP,IAAI;IAMP,qBAAqB,IAAI,IAAI;IAO7B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,6BAA6B;CAGtC"}
|
|
@@ -31,7 +31,7 @@ class ClientNetworkContentAddressedStore {
|
|
|
31
31
|
* @param privateEncryptionKey The user's private RSA key (for decrypting received entries)
|
|
32
32
|
* @param logger Optional logger instance
|
|
33
33
|
*/
|
|
34
|
-
constructor(dbId, transport, cryptoAdapter, username, signingKey, privateEncryptionKey, logger) {
|
|
34
|
+
constructor(dbId, storeKind, transport, cryptoAdapter, username, signingKey, privateEncryptionKey, logger) {
|
|
35
35
|
// Cached access token
|
|
36
36
|
this.accessToken = null;
|
|
37
37
|
this.tokenExpiry = 0;
|
|
@@ -39,6 +39,7 @@ class ClientNetworkContentAddressedStore {
|
|
|
39
39
|
this.capabilitiesCache = null;
|
|
40
40
|
this.syncAuthOverride = null;
|
|
41
41
|
this.dbId = dbId;
|
|
42
|
+
this.storeKind = storeKind;
|
|
42
43
|
this.transport = transport;
|
|
43
44
|
this.cryptoAdapter = cryptoAdapter;
|
|
44
45
|
this.username = username;
|
|
@@ -46,16 +47,32 @@ class ClientNetworkContentAddressedStore {
|
|
|
46
47
|
this.privateEncryptionKey = privateEncryptionKey;
|
|
47
48
|
this.logger =
|
|
48
49
|
logger ||
|
|
49
|
-
new logging_1.MindooLogger((0, logging_1.getDefaultLogLevel)(), `ClientNetworkStore:${dbId}`, true);
|
|
50
|
+
new logging_1.MindooLogger((0, logging_1.getDefaultLogLevel)(), `ClientNetworkStore:${dbId}:${storeKind}`, true);
|
|
50
51
|
const rsaLogger = this.logger.createChild("RSAEncryption");
|
|
51
52
|
this.rsaEncryption = new RSAEncryption_1.RSAEncryption(cryptoAdapter, rsaLogger);
|
|
52
53
|
}
|
|
53
54
|
getId() {
|
|
54
55
|
return this.dbId;
|
|
55
56
|
}
|
|
57
|
+
getStoreKind() {
|
|
58
|
+
return this.storeKind;
|
|
59
|
+
}
|
|
56
60
|
getCacheIdentity() {
|
|
57
61
|
const transportId = this.transport.getIdentity?.() ?? "unknown";
|
|
58
|
-
return `net:${transportId}/${this.dbId}`;
|
|
62
|
+
return `net:${transportId}/${this.dbId}/${this.storeKind}`;
|
|
63
|
+
}
|
|
64
|
+
setSyncAbortSignal(signal) {
|
|
65
|
+
this._syncAbortSignal = signal;
|
|
66
|
+
if ('setSyncAbortSignal' in this.transport) {
|
|
67
|
+
this.transport.setSyncAbortSignal(signal);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
throwIfSyncAborted() {
|
|
71
|
+
if (this._syncAbortSignal?.aborted) {
|
|
72
|
+
const error = new Error("Sync cancelled");
|
|
73
|
+
error.name = "AbortError";
|
|
74
|
+
throw error;
|
|
75
|
+
}
|
|
59
76
|
}
|
|
60
77
|
/**
|
|
61
78
|
* Store entries to the remote store.
|
|
@@ -84,10 +101,12 @@ class ClientNetworkContentAddressedStore {
|
|
|
84
101
|
}
|
|
85
102
|
return this.withTransparentReauth("getEntries", async () => {
|
|
86
103
|
this.logger.debug(`Getting ${ids.length} entries from remote`);
|
|
104
|
+
this.throwIfSyncAborted();
|
|
87
105
|
const token = await this.ensureAuthenticated();
|
|
88
106
|
const encryptedEntries = await this.transport.getEntries(token, ids);
|
|
89
107
|
this.logger.debug(`Received ${encryptedEntries.length} encrypted entries from remote`);
|
|
90
108
|
// Decrypt the RSA layer for each entry
|
|
109
|
+
this.throwIfSyncAborted();
|
|
91
110
|
const entries = await this.decryptNetworkEntries(encryptedEntries);
|
|
92
111
|
this.logger.debug(`Decrypted ${entries.length} entries`);
|
|
93
112
|
return entries;
|
|
@@ -416,6 +435,7 @@ class ClientNetworkContentAddressedStore {
|
|
|
416
435
|
async decryptNetworkEntries(encryptedEntries) {
|
|
417
436
|
const results = [];
|
|
418
437
|
for (const enc of encryptedEntries) {
|
|
438
|
+
this.throwIfSyncAborted();
|
|
419
439
|
// Decrypt the RSA layer to get the original symmetric-encrypted payload
|
|
420
440
|
const encryptedData = await this.rsaEncryption.decrypt(enc.rsaEncryptedPayload, this.getActivePrivateEncryptionKey());
|
|
421
441
|
// Create the full StoreEntry using metadata from the network entry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientNetworkContentAddressedStore.js","sourceRoot":"","sources":["../../../src/appendonlystores/network/ClientNetworkContentAddressedStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ClientNetworkContentAddressedStore.js","sourceRoot":"","sources":["../../../src/appendonlystores/network/ClientNetworkContentAddressedStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,12 +19,17 @@ import { Logger } from "../../core/logging";
|
|
|
19
19
|
* - GET /sync/getAllIds - Get all entry IDs from the server
|
|
20
20
|
*/
|
|
21
21
|
export declare class HttpTransport implements NetworkTransport {
|
|
22
|
+
private static readonly DEFAULT_TIMEOUT_MS;
|
|
22
23
|
private config;
|
|
23
24
|
private baseUrl;
|
|
24
25
|
private logger;
|
|
25
26
|
private remoteJsonBodyLimitBytesPromise;
|
|
27
|
+
private _syncAbortSignal?;
|
|
26
28
|
constructor(config: NetworkTransportConfig, logger?: Logger);
|
|
27
29
|
getIdentity(): string;
|
|
30
|
+
setSyncAbortSignal(signal?: AbortSignal): void;
|
|
31
|
+
private getStoreKind;
|
|
32
|
+
private getSyncBasePath;
|
|
28
33
|
/**
|
|
29
34
|
* Request a challenge string for authentication.
|
|
30
35
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpTransport.d.ts","sourceRoot":"","sources":["../../../src/appendonlystores/network/HttpTransport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,EAChC,2BAA2B,EAC3B,0BAA0B,EAC3B,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"HttpTransport.d.ts","sourceRoot":"","sources":["../../../src/appendonlystores/network/HttpTransport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HttpTransport = void 0;
|
|
4
|
-
const types_1 = require("../../core/appendonlystores/
|
|
4
|
+
const types_1 = require("../../core/appendonlystores/types");
|
|
5
|
+
const types_2 = require("../../core/appendonlystores/network/types");
|
|
5
6
|
const logging_1 = require("../../core/logging");
|
|
6
7
|
/**
|
|
7
8
|
* HTTP implementation of the NetworkTransport interface.
|
|
@@ -22,7 +23,7 @@ class HttpTransport {
|
|
|
22
23
|
constructor(config, logger) {
|
|
23
24
|
this.remoteJsonBodyLimitBytesPromise = null;
|
|
24
25
|
this.config = {
|
|
25
|
-
timeout:
|
|
26
|
+
timeout: HttpTransport.DEFAULT_TIMEOUT_MS,
|
|
26
27
|
retryAttempts: 3,
|
|
27
28
|
retryDelayMs: 1000,
|
|
28
29
|
...config,
|
|
@@ -39,6 +40,15 @@ class HttpTransport {
|
|
|
39
40
|
getIdentity() {
|
|
40
41
|
return this.baseUrl;
|
|
41
42
|
}
|
|
43
|
+
setSyncAbortSignal(signal) {
|
|
44
|
+
this._syncAbortSignal = signal;
|
|
45
|
+
}
|
|
46
|
+
getStoreKind() {
|
|
47
|
+
return this.config.storeKind ?? types_1.StoreKind.docs;
|
|
48
|
+
}
|
|
49
|
+
getSyncBasePath() {
|
|
50
|
+
return `${this.baseUrl}/sync/${this.getStoreKind()}`;
|
|
51
|
+
}
|
|
42
52
|
/**
|
|
43
53
|
* Request a challenge string for authentication.
|
|
44
54
|
*/
|
|
@@ -53,7 +63,7 @@ class HttpTransport {
|
|
|
53
63
|
});
|
|
54
64
|
const data = await response.json();
|
|
55
65
|
if (!data.challenge) {
|
|
56
|
-
throw new
|
|
66
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.SERVER_ERROR, "Server did not return a challenge");
|
|
57
67
|
}
|
|
58
68
|
this.logger.debug(`Received challenge: ${data.challenge}`);
|
|
59
69
|
return data.challenge;
|
|
@@ -83,7 +93,7 @@ class HttpTransport {
|
|
|
83
93
|
}
|
|
84
94
|
async getCapabilities(token) {
|
|
85
95
|
try {
|
|
86
|
-
const response = await this.fetchWithRetry(`${this.
|
|
96
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/capabilities${this.config.dbId ? `?dbId=${encodeURIComponent(this.config.dbId)}` : ""}`, {
|
|
87
97
|
method: "GET",
|
|
88
98
|
headers: {
|
|
89
99
|
"Authorization": `Bearer ${token}`,
|
|
@@ -114,7 +124,7 @@ class HttpTransport {
|
|
|
114
124
|
*/
|
|
115
125
|
async findNewEntries(token, haveIds) {
|
|
116
126
|
this.logger.debug(`Finding new entries, have ${haveIds.length} IDs`);
|
|
117
|
-
const response = await this.fetchWithRetry(`${this.
|
|
127
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/findNewEntries`, {
|
|
118
128
|
method: "POST",
|
|
119
129
|
headers: {
|
|
120
130
|
"Content-Type": "application/json",
|
|
@@ -137,7 +147,7 @@ class HttpTransport {
|
|
|
137
147
|
*/
|
|
138
148
|
async findNewEntriesForDoc(token, haveIds, docId) {
|
|
139
149
|
this.logger.debug(`Finding new entries for doc ${docId}, have ${haveIds.length} IDs`);
|
|
140
|
-
const response = await this.fetchWithRetry(`${this.
|
|
150
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/findNewEntriesForDoc`, {
|
|
141
151
|
method: "POST",
|
|
142
152
|
headers: {
|
|
143
153
|
"Content-Type": "application/json",
|
|
@@ -161,7 +171,7 @@ class HttpTransport {
|
|
|
161
171
|
*/
|
|
162
172
|
async findEntries(token, type, creationDateFrom, creationDateUntil) {
|
|
163
173
|
this.logger.debug(`Finding entries of type ${type} in date range`);
|
|
164
|
-
const response = await this.fetchWithRetry(`${this.
|
|
174
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/findEntries`, {
|
|
165
175
|
method: "POST",
|
|
166
176
|
headers: {
|
|
167
177
|
"Content-Type": "application/json",
|
|
@@ -186,7 +196,7 @@ class HttpTransport {
|
|
|
186
196
|
*/
|
|
187
197
|
async scanEntriesSince(token, cursor, limit = Number.MAX_SAFE_INTEGER, filters) {
|
|
188
198
|
this.logger.debug(`Scanning entries since cursor`);
|
|
189
|
-
const response = await this.fetchWithRetry(`${this.
|
|
199
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/scanEntriesSince`, {
|
|
190
200
|
method: "POST",
|
|
191
201
|
headers: {
|
|
192
202
|
"Content-Type": "application/json",
|
|
@@ -212,7 +222,7 @@ class HttpTransport {
|
|
|
212
222
|
* Get probabilistic ID summary from remote store.
|
|
213
223
|
*/
|
|
214
224
|
async getIdBloomSummary(token) {
|
|
215
|
-
const response = await this.fetchWithRetry(`${this.
|
|
225
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/getIdBloomSummary`, {
|
|
216
226
|
method: "POST",
|
|
217
227
|
headers: {
|
|
218
228
|
"Content-Type": "application/json",
|
|
@@ -227,7 +237,7 @@ class HttpTransport {
|
|
|
227
237
|
return data.summary;
|
|
228
238
|
}
|
|
229
239
|
async getCompactionStatus(token) {
|
|
230
|
-
const response = await this.fetchWithRetry(`${this.
|
|
240
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/getCompactionStatus`, {
|
|
231
241
|
method: "POST",
|
|
232
242
|
headers: {
|
|
233
243
|
"Content-Type": "application/json",
|
|
@@ -242,7 +252,7 @@ class HttpTransport {
|
|
|
242
252
|
return data.status;
|
|
243
253
|
}
|
|
244
254
|
async planDocumentMaterialization(token, docId, options) {
|
|
245
|
-
const response = await this.fetchWithRetry(`${this.
|
|
255
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/planDocumentMaterialization`, {
|
|
246
256
|
method: "POST",
|
|
247
257
|
headers: {
|
|
248
258
|
"Content-Type": "application/json",
|
|
@@ -259,7 +269,7 @@ class HttpTransport {
|
|
|
259
269
|
return data.plan;
|
|
260
270
|
}
|
|
261
271
|
async planDocumentMaterializationBatch(token, docIds, options) {
|
|
262
|
-
const response = await this.fetchWithRetry(`${this.
|
|
272
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/planDocumentMaterializationBatch`, {
|
|
263
273
|
method: "POST",
|
|
264
274
|
headers: {
|
|
265
275
|
"Content-Type": "application/json",
|
|
@@ -276,7 +286,7 @@ class HttpTransport {
|
|
|
276
286
|
return data.batchPlan;
|
|
277
287
|
}
|
|
278
288
|
async planAttachmentReadByWalkingMetadata(token, lastChunkId, attachmentSize, options) {
|
|
279
|
-
const response = await this.fetchWithRetry(`${this.
|
|
289
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/planAttachmentReadByWalkingMetadata`, {
|
|
280
290
|
method: "POST",
|
|
281
291
|
headers: {
|
|
282
292
|
"Content-Type": "application/json",
|
|
@@ -298,7 +308,7 @@ class HttpTransport {
|
|
|
298
308
|
*/
|
|
299
309
|
async getEntries(token, ids) {
|
|
300
310
|
this.logger.debug(`Getting ${ids.length} entries`);
|
|
301
|
-
const response = await this.fetchWithRetry(`${this.
|
|
311
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/getEntries`, {
|
|
302
312
|
method: "POST",
|
|
303
313
|
headers: {
|
|
304
314
|
"Content-Type": "application/json",
|
|
@@ -321,7 +331,7 @@ class HttpTransport {
|
|
|
321
331
|
}
|
|
322
332
|
async getEntryMetadata(token, id) {
|
|
323
333
|
this.logger.debug(`Getting metadata for entry ${id}`);
|
|
324
|
-
const response = await this.fetchWithRetry(`${this.
|
|
334
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/getEntryMetadata`, {
|
|
325
335
|
method: "POST",
|
|
326
336
|
headers: {
|
|
327
337
|
"Content-Type": "application/json",
|
|
@@ -360,7 +370,7 @@ class HttpTransport {
|
|
|
360
370
|
if (ids.length === 0) {
|
|
361
371
|
return [];
|
|
362
372
|
}
|
|
363
|
-
const response = await this.fetchWithRetry(`${this.
|
|
373
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/hasEntries`, {
|
|
364
374
|
method: "POST",
|
|
365
375
|
headers: {
|
|
366
376
|
"Content-Type": "application/json",
|
|
@@ -382,7 +392,7 @@ class HttpTransport {
|
|
|
382
392
|
*/
|
|
383
393
|
async getAllIds(token) {
|
|
384
394
|
this.logger.debug(`Getting all entry IDs`);
|
|
385
|
-
const response = await this.fetchWithRetry(`${this.
|
|
395
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/getAllIds?tenantId=${encodeURIComponent(this.config.tenantId)}${this.config.dbId ? `&dbId=${encodeURIComponent(this.config.dbId)}` : ""}`, {
|
|
386
396
|
method: "GET",
|
|
387
397
|
headers: {
|
|
388
398
|
"Authorization": `Bearer ${token}`,
|
|
@@ -398,7 +408,7 @@ class HttpTransport {
|
|
|
398
408
|
*/
|
|
399
409
|
async resolveDependencies(token, startId, options) {
|
|
400
410
|
this.logger.debug(`Resolving dependencies for ${startId}`);
|
|
401
|
-
const response = await this.fetchWithRetry(`${this.
|
|
411
|
+
const response = await this.fetchWithRetry(`${this.getSyncBasePath()}/resolveDependencies`, {
|
|
402
412
|
method: "POST",
|
|
403
413
|
headers: {
|
|
404
414
|
"Content-Type": "application/json",
|
|
@@ -423,10 +433,19 @@ class HttpTransport {
|
|
|
423
433
|
let lastError = null;
|
|
424
434
|
const attempts = this.config.retryAttempts || 3;
|
|
425
435
|
const baseDelay = this.config.retryDelayMs || 1000;
|
|
436
|
+
const externalSignal = this._syncAbortSignal;
|
|
426
437
|
for (let attempt = 0; attempt < attempts; attempt++) {
|
|
438
|
+
if (externalSignal?.aborted) {
|
|
439
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.SERVER_ERROR, "Sync cancelled");
|
|
440
|
+
}
|
|
441
|
+
const controller = new AbortController();
|
|
442
|
+
const timeoutId = setTimeout(() => controller.abort(), this.config.timeout || HttpTransport.DEFAULT_TIMEOUT_MS);
|
|
443
|
+
let onExternalAbort;
|
|
444
|
+
if (externalSignal && !externalSignal.aborted) {
|
|
445
|
+
onExternalAbort = () => controller.abort();
|
|
446
|
+
externalSignal.addEventListener('abort', onExternalAbort);
|
|
447
|
+
}
|
|
427
448
|
try {
|
|
428
|
-
const controller = new AbortController();
|
|
429
|
-
const timeoutId = setTimeout(() => controller.abort(), this.config.timeout || 30000);
|
|
430
449
|
const response = await fetch(url, {
|
|
431
450
|
...options,
|
|
432
451
|
signal: controller.signal,
|
|
@@ -437,27 +456,31 @@ class HttpTransport {
|
|
|
437
456
|
const errorData = await response.json().catch(() => ({}));
|
|
438
457
|
switch (response.status) {
|
|
439
458
|
case 401:
|
|
440
|
-
throw new
|
|
459
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.INVALID_TOKEN, errorData.error || "Unauthorized");
|
|
441
460
|
case 403:
|
|
442
|
-
throw new
|
|
461
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.USER_REVOKED, errorData.error || "Access denied");
|
|
443
462
|
case 404:
|
|
444
|
-
throw new
|
|
463
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.USER_NOT_FOUND, errorData.error || "Not found");
|
|
445
464
|
case 413:
|
|
446
|
-
throw new
|
|
465
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.PAYLOAD_TOO_LARGE, errorData.error || "Request body too large");
|
|
447
466
|
default:
|
|
448
|
-
throw new
|
|
467
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.SERVER_ERROR, errorData.error || `HTTP ${response.status}`);
|
|
449
468
|
}
|
|
450
469
|
}
|
|
451
470
|
return response;
|
|
452
471
|
}
|
|
453
472
|
catch (error) {
|
|
473
|
+
if (externalSignal?.aborted) {
|
|
474
|
+
clearTimeout(timeoutId);
|
|
475
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.SERVER_ERROR, "Sync cancelled");
|
|
476
|
+
}
|
|
454
477
|
lastError = error;
|
|
455
478
|
// Don't retry for certain error types
|
|
456
|
-
if (error instanceof
|
|
457
|
-
if (error.type ===
|
|
458
|
-
error.type ===
|
|
459
|
-
error.type ===
|
|
460
|
-
error.type ===
|
|
479
|
+
if (error instanceof types_2.NetworkError) {
|
|
480
|
+
if (error.type === types_2.NetworkErrorType.INVALID_TOKEN ||
|
|
481
|
+
error.type === types_2.NetworkErrorType.USER_REVOKED ||
|
|
482
|
+
error.type === types_2.NetworkErrorType.INVALID_SIGNATURE ||
|
|
483
|
+
error.type === types_2.NetworkErrorType.PAYLOAD_TOO_LARGE) {
|
|
461
484
|
throw error;
|
|
462
485
|
}
|
|
463
486
|
}
|
|
@@ -474,8 +497,14 @@ class HttpTransport {
|
|
|
474
497
|
await this.sleep(delay);
|
|
475
498
|
}
|
|
476
499
|
}
|
|
500
|
+
finally {
|
|
501
|
+
clearTimeout(timeoutId);
|
|
502
|
+
if (onExternalAbort) {
|
|
503
|
+
externalSignal.removeEventListener('abort', onExternalAbort);
|
|
504
|
+
}
|
|
505
|
+
}
|
|
477
506
|
}
|
|
478
|
-
throw new
|
|
507
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.NETWORK_ERROR, lastError?.message || "Request failed after retries");
|
|
479
508
|
}
|
|
480
509
|
sleep(ms) {
|
|
481
510
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
@@ -488,7 +517,7 @@ class HttpTransport {
|
|
|
488
517
|
}
|
|
489
518
|
async fetchRemoteJsonBodyLimitBytes() {
|
|
490
519
|
const controller = new AbortController();
|
|
491
|
-
const timeoutId = setTimeout(() => controller.abort(), this.config.timeout ||
|
|
520
|
+
const timeoutId = setTimeout(() => controller.abort(), this.config.timeout || HttpTransport.DEFAULT_TIMEOUT_MS);
|
|
492
521
|
try {
|
|
493
522
|
const serverInfoUrl = new URL("/.well-known/mindoodb-server-info", this.baseUrl);
|
|
494
523
|
const response = await fetch(serverInfoUrl.toString(), {
|
|
@@ -563,8 +592,8 @@ class HttpTransport {
|
|
|
563
592
|
await this.postSerializedEntries(token, serializedEntries);
|
|
564
593
|
}
|
|
565
594
|
catch (error) {
|
|
566
|
-
if (error instanceof
|
|
567
|
-
&& error.type ===
|
|
595
|
+
if (error instanceof types_2.NetworkError
|
|
596
|
+
&& error.type === types_2.NetworkErrorType.PAYLOAD_TOO_LARGE
|
|
568
597
|
&& serializedEntries.length > 1) {
|
|
569
598
|
const midpoint = Math.ceil(serializedEntries.length / 2);
|
|
570
599
|
const left = serializedEntries.slice(0, midpoint);
|
|
@@ -591,7 +620,7 @@ class HttpTransport {
|
|
|
591
620
|
const separatorBytes = currentBatch.length > 0 ? 1 : 0;
|
|
592
621
|
const nextBodyBytes = currentBodyBytes + separatorBytes + entryBodyBytes;
|
|
593
622
|
if (emptyBodyBytes + entryBodyBytes > maxBodyBytes) {
|
|
594
|
-
throw new
|
|
623
|
+
throw new types_2.NetworkError(types_2.NetworkErrorType.PAYLOAD_TOO_LARGE, `Single entry ${entry.id} exceeds remote request body limit of ${maxBodyBytes} bytes`);
|
|
595
624
|
}
|
|
596
625
|
if (nextBodyBytes > maxBodyBytes) {
|
|
597
626
|
batches.push(currentBatch);
|
|
@@ -609,7 +638,7 @@ class HttpTransport {
|
|
|
609
638
|
return batches;
|
|
610
639
|
}
|
|
611
640
|
async postSerializedEntries(token, serializedEntries) {
|
|
612
|
-
await this.fetchWithRetry(`${this.
|
|
641
|
+
await this.fetchWithRetry(`${this.getSyncBasePath()}/putEntries`, {
|
|
613
642
|
method: "POST",
|
|
614
643
|
headers: {
|
|
615
644
|
"Content-Type": "application/json",
|
|
@@ -693,4 +722,5 @@ class HttpTransport {
|
|
|
693
722
|
}
|
|
694
723
|
}
|
|
695
724
|
exports.HttpTransport = HttpTransport;
|
|
725
|
+
HttpTransport.DEFAULT_TIMEOUT_MS = 120000;
|
|
696
726
|
//# sourceMappingURL=HttpTransport.js.map
|