dexie-cloud-addon 4.0.1-beta.44 → 4.0.1-beta.45
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/modern/dexie-cloud-addon.js +31 -20
- package/dist/modern/dexie-cloud-addon.js.map +1 -1
- package/dist/modern/dexie-cloud-addon.min.js +1 -1
- package/dist/modern/dexie-cloud-addon.min.js.map +1 -1
- package/dist/modern/service-worker.js +30 -19
- package/dist/modern/service-worker.js.map +1 -1
- package/dist/modern/service-worker.min.js +1 -1
- package/dist/modern/service-worker.min.js.map +1 -1
- package/dist/umd/dexie-cloud-addon.js +31 -20
- package/dist/umd/dexie-cloud-addon.js.map +1 -1
- package/dist/umd/dexie-cloud-addon.min.js +1 -1
- package/dist/umd/dexie-cloud-addon.min.js.map +1 -1
- package/dist/umd/service-worker.js +30 -19
- package/dist/umd/service-worker.js.map +1 -1
- package/dist/umd/service-worker.min.js +1 -1
- package/dist/umd/service-worker.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*
|
|
9
9
|
* ==========================================================================
|
|
10
10
|
*
|
|
11
|
-
* Version 4.0.1-beta.44,
|
|
11
|
+
* Version 4.0.1-beta.44, Wed Jul 05 2023
|
|
12
12
|
*
|
|
13
13
|
* https://dexie.org
|
|
14
14
|
*
|
|
@@ -4302,14 +4302,17 @@ const DISABLE_SERVICEWORKER_STRATEGY = (isSafari && safariVersion <= 605) || //
|
|
|
4302
4302
|
*/
|
|
4303
4303
|
function dbOnClosed(db, handler) {
|
|
4304
4304
|
db.on.close.subscribe(handler);
|
|
4305
|
-
|
|
4306
|
-
|
|
4305
|
+
// @ts-ignore
|
|
4306
|
+
const origClose = db._close;
|
|
4307
|
+
// @ts-ignore
|
|
4308
|
+
db._close = function () {
|
|
4307
4309
|
origClose.call(this);
|
|
4308
4310
|
handler();
|
|
4309
4311
|
};
|
|
4310
4312
|
return () => {
|
|
4311
4313
|
db.on.close.unsubscribe(handler);
|
|
4312
|
-
|
|
4314
|
+
// @ts-ignore
|
|
4315
|
+
db._close = origClose;
|
|
4313
4316
|
};
|
|
4314
4317
|
}
|
|
4315
4318
|
|
|
@@ -5218,13 +5221,17 @@ function connectWebSocket(db) {
|
|
|
5218
5221
|
return db.cloud.persistedSyncState.pipe(filter((syncState) => (syncState === null || syncState === void 0 ? void 0 : syncState.realms.includes(userLogin.userId)) || false), take(1), map((syncState) => [userLogin, syncState]));
|
|
5219
5222
|
}
|
|
5220
5223
|
return new BehaviorSubject([userLogin, syncState]);
|
|
5221
|
-
}), switchMap(([userLogin, syncState]) => __awaiter(this, void 0, void 0, function* () { return [userLogin, yield computeRealmSetHash(syncState)]; })), switchMap(([userLogin, realmSetHash]) =>
|
|
5222
|
-
|
|
5223
|
-
|
|
5224
|
-
|
|
5225
|
-
|
|
5226
|
-
|
|
5227
|
-
|
|
5224
|
+
}), switchMap(([userLogin, syncState]) => __awaiter(this, void 0, void 0, function* () { return [userLogin, yield computeRealmSetHash(syncState)]; })), distinctUntilChanged(([prevUser, prevHash], [currUser, currHash]) => prevUser === currUser && prevHash === currHash), switchMap(([userLogin, realmSetHash]) => {
|
|
5225
|
+
// Let server end query changes from last entry of same client-ID and forward.
|
|
5226
|
+
// If no new entries, server won't bother the client. If new entries, server sends only those
|
|
5227
|
+
// and the baseRev of the last from same client-ID.
|
|
5228
|
+
if (userLogin) {
|
|
5229
|
+
return new WSObservable(db.cloud.options.databaseUrl, db.cloud.persistedSyncState.value.serverRevision, realmSetHash, db.cloud.persistedSyncState.value.clientIdentity, messageProducer, db.cloud.webSocketStatus, userLogin.accessToken, userLogin.accessTokenExpiration);
|
|
5230
|
+
}
|
|
5231
|
+
else {
|
|
5232
|
+
return from$1([]);
|
|
5233
|
+
}
|
|
5234
|
+
}), catchError((error) => {
|
|
5228
5235
|
if ((error === null || error === void 0 ? void 0 : error.name) === 'TokenExpiredError') {
|
|
5229
5236
|
console.debug('WebSocket observable: Token expired. Refreshing token...');
|
|
5230
5237
|
return of(true).pipe(switchMap(() => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -5246,15 +5253,19 @@ function connectWebSocket(db) {
|
|
|
5246
5253
|
return from$1(waitAndReconnectWhenUserDoesSomething(error)).pipe(switchMap(() => createObservable()));
|
|
5247
5254
|
}));
|
|
5248
5255
|
}
|
|
5249
|
-
return createObservable().subscribe(
|
|
5250
|
-
|
|
5251
|
-
|
|
5252
|
-
|
|
5253
|
-
|
|
5254
|
-
|
|
5255
|
-
|
|
5256
|
-
|
|
5257
|
-
|
|
5256
|
+
return createObservable().subscribe({
|
|
5257
|
+
next: (msg) => {
|
|
5258
|
+
if (msg) {
|
|
5259
|
+
console.debug('WS got message', msg);
|
|
5260
|
+
db.messageConsumer.enqueue(msg);
|
|
5261
|
+
}
|
|
5262
|
+
},
|
|
5263
|
+
error: (error) => {
|
|
5264
|
+
console.error('WS got error', error);
|
|
5265
|
+
},
|
|
5266
|
+
complete: () => {
|
|
5267
|
+
console.debug('WS observable completed');
|
|
5268
|
+
},
|
|
5258
5269
|
});
|
|
5259
5270
|
}
|
|
5260
5271
|
|