@nmshd/transport 2.0.1 → 2.0.2
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/buildInformation.js +4 -4
- package/dist/modules/sync/DatawalletModificationsProcessor.d.ts +5 -0
- package/dist/modules/sync/DatawalletModificationsProcessor.js +19 -10
- package/dist/modules/sync/DatawalletModificationsProcessor.js.map +1 -1
- package/lib-web/nmshd.transport.js +23 -14
- package/lib-web/nmshd.transport.js.map +1 -1
- package/lib-web/nmshd.transport.min.js +1 -1
- package/lib-web/nmshd.transport.min.js.map +1 -1
- package/package.json +1 -1
package/dist/buildInformation.js
CHANGED
|
@@ -4,10 +4,10 @@ exports.buildInformation = void 0;
|
|
|
4
4
|
const ts_serval_1 = require("@js-soft/ts-serval");
|
|
5
5
|
const crypto_1 = require("@nmshd/crypto");
|
|
6
6
|
exports.buildInformation = {
|
|
7
|
-
version: "2.0.
|
|
8
|
-
build: "
|
|
9
|
-
date: "2023-01-
|
|
10
|
-
commit: "
|
|
7
|
+
version: "2.0.2",
|
|
8
|
+
build: "49",
|
|
9
|
+
date: "2023-01-13T12:48:49+00:00",
|
|
10
|
+
commit: "af841f6e9acf215080b46007abbe650ccc115730",
|
|
11
11
|
dependencies: {"@js-soft/docdb-access-abstractions":"1.0.1","@js-soft/logging-abstractions":"1.0.0","@js-soft/simple-logger":"1.0.2","@js-soft/ts-utils":"2.3.0","axios":"1.2.2","deep-equal":"^2.2.0","fast-json-patch":"^3.1.1","form-data":"^4.0.0","json-stringify-safe":"^5.0.1","lodash":"^4.17.21","luxon":"^3.2.1","qs":"^6.11.0","reflect-metadata":"^0.1.13","ts-simple-nameof":"^1.3.1","uuid":"^9.0.0"},
|
|
12
12
|
libraries: {
|
|
13
13
|
crypto: crypto_1.buildInformation,
|
|
@@ -27,6 +27,11 @@ export declare class DatawalletModificationsProcessor {
|
|
|
27
27
|
private readonly collectionsWithCacheableItems;
|
|
28
28
|
execute(): Promise<void>;
|
|
29
29
|
private applyCreates;
|
|
30
|
+
/**
|
|
31
|
+
* if a collection contains cacheable items, the cache has to be fetched after the item is created on a new device
|
|
32
|
+
* this can only happen after all creates are applied, because the fetching needs properties like the secret key
|
|
33
|
+
*/
|
|
34
|
+
private simulateCacheChangeForCreate;
|
|
30
35
|
private applyUpdates;
|
|
31
36
|
private applyCacheChanges;
|
|
32
37
|
private ensureAllItemsAreCacheable;
|
|
@@ -77,20 +77,29 @@ class DatawalletModificationsProcessor {
|
|
|
77
77
|
const updatedObject = { ...oldObject.toJSON(), ...newObject.toJSON() };
|
|
78
78
|
await targetCollection.update(oldDoc, updatedObject);
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
type: DatawalletModification_1.DatawalletModificationType.CacheChanged,
|
|
84
|
-
collection: targetCollectionName,
|
|
85
|
-
objectIdentifier: core_1.CoreId.from(objectIdentifier)
|
|
86
|
-
});
|
|
87
|
-
this.cacheChanges.push(modification);
|
|
88
|
-
this.syncStep.incrementTotalNumberOfItems();
|
|
80
|
+
else {
|
|
81
|
+
await this.simulateCacheChangeForCreate(targetCollectionName, objectIdentifier);
|
|
82
|
+
await targetCollection.create(newObject);
|
|
89
83
|
}
|
|
90
|
-
await targetCollection.create(newObject);
|
|
91
84
|
this.syncStep.progress();
|
|
92
85
|
}
|
|
93
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* if a collection contains cacheable items, the cache has to be fetched after the item is created on a new device
|
|
89
|
+
* this can only happen after all creates are applied, because the fetching needs properties like the secret key
|
|
90
|
+
*/
|
|
91
|
+
async simulateCacheChangeForCreate(targetCollectionName, objectIdentifier) {
|
|
92
|
+
if (!this.collectionsWithCacheableItems.includes(targetCollectionName))
|
|
93
|
+
return;
|
|
94
|
+
const modification = DatawalletModification_1.DatawalletModification.from({
|
|
95
|
+
localId: await core_1.TransportIds.datawalletModification.generate(),
|
|
96
|
+
type: DatawalletModification_1.DatawalletModificationType.CacheChanged,
|
|
97
|
+
collection: targetCollectionName,
|
|
98
|
+
objectIdentifier: core_1.CoreId.from(objectIdentifier)
|
|
99
|
+
});
|
|
100
|
+
this.cacheChanges.push(modification);
|
|
101
|
+
this.syncStep.incrementTotalNumberOfItems();
|
|
102
|
+
}
|
|
94
103
|
async applyUpdates() {
|
|
95
104
|
if (this.updates.length === 0) {
|
|
96
105
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatawalletModificationsProcessor.js","sourceRoot":"","sources":["../../../src/modules/sync/DatawalletModificationsProcessor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"DatawalletModificationsProcessor.js","sourceRoot":"","sources":["../../../src/modules/sync/DatawalletModificationsProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,10 +15,10 @@ exports.buildInformation = void 0;
|
|
|
15
15
|
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
16
16
|
const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
|
|
17
17
|
exports.buildInformation = {
|
|
18
|
-
version: "2.0.
|
|
19
|
-
build: "
|
|
20
|
-
date: "2023-01-
|
|
21
|
-
commit: "
|
|
18
|
+
version: "2.0.2",
|
|
19
|
+
build: "49",
|
|
20
|
+
date: "2023-01-13T12:48:49+00:00",
|
|
21
|
+
commit: "af841f6e9acf215080b46007abbe650ccc115730",
|
|
22
22
|
dependencies: {"@js-soft/docdb-access-abstractions":"1.0.1","@js-soft/logging-abstractions":"1.0.0","@js-soft/simple-logger":"1.0.2","@js-soft/ts-utils":"2.3.0","axios":"1.2.2","deep-equal":"^2.2.0","fast-json-patch":"^3.1.1","form-data":"^4.0.0","json-stringify-safe":"^5.0.1","lodash":"^4.17.21","luxon":"^3.2.1","qs":"^6.11.0","reflect-metadata":"^0.1.13","ts-simple-nameof":"^1.3.1","uuid":"^9.0.0"},
|
|
23
23
|
libraries: {
|
|
24
24
|
crypto: crypto_1.buildInformation,
|
|
@@ -10283,20 +10283,29 @@ class DatawalletModificationsProcessor {
|
|
|
10283
10283
|
const updatedObject = { ...oldObject.toJSON(), ...newObject.toJSON() };
|
|
10284
10284
|
await targetCollection.update(oldDoc, updatedObject);
|
|
10285
10285
|
}
|
|
10286
|
-
|
|
10287
|
-
|
|
10288
|
-
|
|
10289
|
-
type: DatawalletModification_1.DatawalletModificationType.CacheChanged,
|
|
10290
|
-
collection: targetCollectionName,
|
|
10291
|
-
objectIdentifier: core_1.CoreId.from(objectIdentifier)
|
|
10292
|
-
});
|
|
10293
|
-
this.cacheChanges.push(modification);
|
|
10294
|
-
this.syncStep.incrementTotalNumberOfItems();
|
|
10286
|
+
else {
|
|
10287
|
+
await this.simulateCacheChangeForCreate(targetCollectionName, objectIdentifier);
|
|
10288
|
+
await targetCollection.create(newObject);
|
|
10295
10289
|
}
|
|
10296
|
-
await targetCollection.create(newObject);
|
|
10297
10290
|
this.syncStep.progress();
|
|
10298
10291
|
}
|
|
10299
10292
|
}
|
|
10293
|
+
/**
|
|
10294
|
+
* if a collection contains cacheable items, the cache has to be fetched after the item is created on a new device
|
|
10295
|
+
* this can only happen after all creates are applied, because the fetching needs properties like the secret key
|
|
10296
|
+
*/
|
|
10297
|
+
async simulateCacheChangeForCreate(targetCollectionName, objectIdentifier) {
|
|
10298
|
+
if (!this.collectionsWithCacheableItems.includes(targetCollectionName))
|
|
10299
|
+
return;
|
|
10300
|
+
const modification = DatawalletModification_1.DatawalletModification.from({
|
|
10301
|
+
localId: await core_1.TransportIds.datawalletModification.generate(),
|
|
10302
|
+
type: DatawalletModification_1.DatawalletModificationType.CacheChanged,
|
|
10303
|
+
collection: targetCollectionName,
|
|
10304
|
+
objectIdentifier: core_1.CoreId.from(objectIdentifier)
|
|
10305
|
+
});
|
|
10306
|
+
this.cacheChanges.push(modification);
|
|
10307
|
+
this.syncStep.incrementTotalNumberOfItems();
|
|
10308
|
+
}
|
|
10300
10309
|
async applyUpdates() {
|
|
10301
10310
|
if (this.updates.length === 0) {
|
|
10302
10311
|
return;
|