@auxilium/datalynk-client 1.6.1 โ 1.6.3
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/README.md +2 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/index.cjs +44 -18
- package/dist/index.mjs +44 -18
- package/dist/service.worker.mjs +192 -59
- package/dist/utils.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -289,7 +289,8 @@ api.pwa.prompt();
|
|
|
289
289
|
|
|
290
290
|
#### Static assets
|
|
291
291
|
Upload the [service worker](https://datalynk-client.primary.auxilium.world/dist/service.worker.mjs) `dist/service.worker.mjs` to the *root* directory of the server
|
|
292
|
-
to cache
|
|
292
|
+
to cache app files for use offline. Replace `/service.worker.mjs` on every client release; updating the library alone does not replace the server's copy.
|
|
293
|
+
Serve the worker with `Cache-Control: no-cache` so browsers can detect changes. The client checks for updates on startup and when it comes back online. A device must reconnect to receive a new worker.
|
|
293
294
|
```ts
|
|
294
295
|
const api = new Api(`https://${spoke}.auxiliumgroup.com`, {
|
|
295
296
|
serviceWorker: 'https://.../service.worker.mjs', // Shouldnt be needed but can be overriden
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/index.cjs
CHANGED
|
@@ -241,9 +241,21 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
241
241
|
async tx(operation, readonly = false) {
|
|
242
242
|
const db = await this.database.connection;
|
|
243
243
|
return new Promise((resolve, reject) => {
|
|
244
|
-
const
|
|
245
|
-
|
|
246
|
-
|
|
244
|
+
const transaction = db.transaction(this.name, readonly ? "readonly" : "readwrite");
|
|
245
|
+
let result;
|
|
246
|
+
transaction.oncomplete = () => resolve(result);
|
|
247
|
+
transaction.onabort = () => reject(transaction.error || new Error("IndexedDB transaction aborted"));
|
|
248
|
+
transaction.onerror = () => reject(transaction.error || new Error("IndexedDB transaction failed"));
|
|
249
|
+
try {
|
|
250
|
+
const request = operation(transaction.objectStore(this.name));
|
|
251
|
+
request.onsuccess = () => {
|
|
252
|
+
result = request.result;
|
|
253
|
+
};
|
|
254
|
+
request.onerror = () => reject(request.error || new Error("IndexedDB request failed"));
|
|
255
|
+
} catch (error) {
|
|
256
|
+
transaction.abort();
|
|
257
|
+
reject(error);
|
|
258
|
+
}
|
|
247
259
|
});
|
|
248
260
|
}
|
|
249
261
|
add(value, key) {
|
|
@@ -3410,7 +3422,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
3410
3422
|
} });
|
|
3411
3423
|
}
|
|
3412
3424
|
}
|
|
3413
|
-
const version = "1.6.
|
|
3425
|
+
const version = "1.6.3";
|
|
3414
3426
|
class WebRtc {
|
|
3415
3427
|
constructor(api) {
|
|
3416
3428
|
__publicField(this, "ice");
|
|
@@ -4095,25 +4107,40 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4095
4107
|
(_b = this.options.offline) == null ? void 0 : _b.forEach((id) => this.slice(id));
|
|
4096
4108
|
if (this.options.serviceWorker && typeof navigator["serviceWorker"] != "undefined") {
|
|
4097
4109
|
(async () => {
|
|
4098
|
-
|
|
4099
|
-
|
|
4100
|
-
|
|
4101
|
-
this.token$.subscribe((token) => {
|
|
4102
|
-
var _a3;
|
|
4103
|
-
return (_a3 = navigator.serviceWorker.controller) == null ? void 0 : _a3.postMessage({ token });
|
|
4104
|
-
});
|
|
4110
|
+
let initialized = false;
|
|
4111
|
+
const sendAssets = () => {
|
|
4112
|
+
var _a2;
|
|
4105
4113
|
const assets = [
|
|
4106
4114
|
location.pathname,
|
|
4107
4115
|
...Array.from(document.querySelectorAll('script[src], link[rel="stylesheet"][href], link[rel="icon"][href], img[src]')).map((element) => element.getAttribute("src") || element.getAttribute("href") || ""),
|
|
4108
4116
|
...performance.getEntriesByType("resource").filter((entry) => ["script", "link", "css", "img", "font"].includes(entry.initiatorType)).map((entry) => entry.name),
|
|
4109
4117
|
...this.options.offlineAssets || []
|
|
4110
4118
|
].filter(Boolean).map((value) => new URL(value, location.href).href);
|
|
4111
|
-
(
|
|
4119
|
+
(_a2 = navigator.serviceWorker.controller) == null ? void 0 : _a2.postMessage({ offlineAssets: assets });
|
|
4120
|
+
};
|
|
4121
|
+
const init = () => {
|
|
4122
|
+
var _a2;
|
|
4123
|
+
(_a2 = navigator.serviceWorker.controller) == null ? void 0 : _a2.postMessage({ options: { ...this.options, url: this.url } });
|
|
4124
|
+
if (!initialized) {
|
|
4125
|
+
initialized = true;
|
|
4126
|
+
this.token$.subscribe((token) => {
|
|
4127
|
+
var _a3;
|
|
4128
|
+
return (_a3 = navigator.serviceWorker.controller) == null ? void 0 : _a3.postMessage({ token });
|
|
4129
|
+
});
|
|
4130
|
+
}
|
|
4131
|
+
sendAssets();
|
|
4112
4132
|
};
|
|
4113
|
-
await navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
|
|
4133
|
+
const registration = await navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
|
|
4134
|
+
navigator.serviceWorker.addEventListener("controllerchange", () => {
|
|
4135
|
+
if (navigator.serviceWorker.controller) init();
|
|
4136
|
+
});
|
|
4114
4137
|
navigator.serviceWorker.ready.then(() => {
|
|
4115
|
-
if (navigator.serviceWorker.controller)
|
|
4116
|
-
|
|
4138
|
+
if (navigator.serviceWorker.controller) init();
|
|
4139
|
+
});
|
|
4140
|
+
registration.update().catch((error) => console.warn("Service worker update check failed", error));
|
|
4141
|
+
window.addEventListener("online", () => {
|
|
4142
|
+
registration.update().catch((error) => console.warn("Service worker update check failed", error));
|
|
4143
|
+
if (navigator.serviceWorker.controller) sendAssets();
|
|
4117
4144
|
});
|
|
4118
4145
|
})();
|
|
4119
4146
|
}
|
|
@@ -4931,7 +4958,6 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4931
4958
|
});
|
|
4932
4959
|
}
|
|
4933
4960
|
request(data, options = {}) {
|
|
4934
|
-
var _a, _b;
|
|
4935
4961
|
data = typeof data == "string" ? { [data]: {} } : data;
|
|
4936
4962
|
let key = JSON.stringify(data);
|
|
4937
4963
|
if (this.offline && typeof navigator != "undefined") {
|
|
@@ -4939,8 +4965,8 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4939
4965
|
if (options.offline) {
|
|
4940
4966
|
if (!this.ensureOfflineSessionOwner(this.token))
|
|
4941
4967
|
return Promise.reject(errorFromCode(409, "Offline queue belongs to another authenticated user"));
|
|
4942
|
-
|
|
4943
|
-
return
|
|
4968
|
+
if (!this.database) return Promise.reject(new Error("Offline queue storage is unavailable"));
|
|
4969
|
+
return this.database.table("pending").add(data, key).then(() => void 0);
|
|
4944
4970
|
}
|
|
4945
4971
|
return Promise.reject(errorFromCode(503, this.status === "unavailable" ? "Datalynk is unavailable" : "You are offline"));
|
|
4946
4972
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -237,9 +237,21 @@ class Table {
|
|
|
237
237
|
async tx(operation, readonly = false) {
|
|
238
238
|
const db = await this.database.connection;
|
|
239
239
|
return new Promise((resolve, reject) => {
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
240
|
+
const transaction = db.transaction(this.name, readonly ? "readonly" : "readwrite");
|
|
241
|
+
let result;
|
|
242
|
+
transaction.oncomplete = () => resolve(result);
|
|
243
|
+
transaction.onabort = () => reject(transaction.error || new Error("IndexedDB transaction aborted"));
|
|
244
|
+
transaction.onerror = () => reject(transaction.error || new Error("IndexedDB transaction failed"));
|
|
245
|
+
try {
|
|
246
|
+
const request = operation(transaction.objectStore(this.name));
|
|
247
|
+
request.onsuccess = () => {
|
|
248
|
+
result = request.result;
|
|
249
|
+
};
|
|
250
|
+
request.onerror = () => reject(request.error || new Error("IndexedDB request failed"));
|
|
251
|
+
} catch (error) {
|
|
252
|
+
transaction.abort();
|
|
253
|
+
reject(error);
|
|
254
|
+
}
|
|
243
255
|
});
|
|
244
256
|
}
|
|
245
257
|
add(value, key) {
|
|
@@ -3406,7 +3418,7 @@ class Superuser {
|
|
|
3406
3418
|
} });
|
|
3407
3419
|
}
|
|
3408
3420
|
}
|
|
3409
|
-
const version = "1.6.
|
|
3421
|
+
const version = "1.6.3";
|
|
3410
3422
|
class WebRtc {
|
|
3411
3423
|
constructor(api) {
|
|
3412
3424
|
__publicField(this, "ice");
|
|
@@ -4091,25 +4103,40 @@ const _Api = class _Api {
|
|
|
4091
4103
|
(_b = this.options.offline) == null ? void 0 : _b.forEach((id) => this.slice(id));
|
|
4092
4104
|
if (this.options.serviceWorker && typeof navigator["serviceWorker"] != "undefined") {
|
|
4093
4105
|
(async () => {
|
|
4094
|
-
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
this.token$.subscribe((token) => {
|
|
4098
|
-
var _a3;
|
|
4099
|
-
return (_a3 = navigator.serviceWorker.controller) == null ? void 0 : _a3.postMessage({ token });
|
|
4100
|
-
});
|
|
4106
|
+
let initialized = false;
|
|
4107
|
+
const sendAssets = () => {
|
|
4108
|
+
var _a2;
|
|
4101
4109
|
const assets = [
|
|
4102
4110
|
location.pathname,
|
|
4103
4111
|
...Array.from(document.querySelectorAll('script[src], link[rel="stylesheet"][href], link[rel="icon"][href], img[src]')).map((element) => element.getAttribute("src") || element.getAttribute("href") || ""),
|
|
4104
4112
|
...performance.getEntriesByType("resource").filter((entry) => ["script", "link", "css", "img", "font"].includes(entry.initiatorType)).map((entry) => entry.name),
|
|
4105
4113
|
...this.options.offlineAssets || []
|
|
4106
4114
|
].filter(Boolean).map((value) => new URL(value, location.href).href);
|
|
4107
|
-
(
|
|
4115
|
+
(_a2 = navigator.serviceWorker.controller) == null ? void 0 : _a2.postMessage({ offlineAssets: assets });
|
|
4116
|
+
};
|
|
4117
|
+
const init = () => {
|
|
4118
|
+
var _a2;
|
|
4119
|
+
(_a2 = navigator.serviceWorker.controller) == null ? void 0 : _a2.postMessage({ options: { ...this.options, url: this.url } });
|
|
4120
|
+
if (!initialized) {
|
|
4121
|
+
initialized = true;
|
|
4122
|
+
this.token$.subscribe((token) => {
|
|
4123
|
+
var _a3;
|
|
4124
|
+
return (_a3 = navigator.serviceWorker.controller) == null ? void 0 : _a3.postMessage({ token });
|
|
4125
|
+
});
|
|
4126
|
+
}
|
|
4127
|
+
sendAssets();
|
|
4108
4128
|
};
|
|
4109
|
-
await navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
|
|
4129
|
+
const registration = await navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
|
|
4130
|
+
navigator.serviceWorker.addEventListener("controllerchange", () => {
|
|
4131
|
+
if (navigator.serviceWorker.controller) init();
|
|
4132
|
+
});
|
|
4110
4133
|
navigator.serviceWorker.ready.then(() => {
|
|
4111
|
-
if (navigator.serviceWorker.controller)
|
|
4112
|
-
|
|
4134
|
+
if (navigator.serviceWorker.controller) init();
|
|
4135
|
+
});
|
|
4136
|
+
registration.update().catch((error) => console.warn("Service worker update check failed", error));
|
|
4137
|
+
window.addEventListener("online", () => {
|
|
4138
|
+
registration.update().catch((error) => console.warn("Service worker update check failed", error));
|
|
4139
|
+
if (navigator.serviceWorker.controller) sendAssets();
|
|
4113
4140
|
});
|
|
4114
4141
|
})();
|
|
4115
4142
|
}
|
|
@@ -4927,7 +4954,6 @@ const _Api = class _Api {
|
|
|
4927
4954
|
});
|
|
4928
4955
|
}
|
|
4929
4956
|
request(data, options = {}) {
|
|
4930
|
-
var _a, _b;
|
|
4931
4957
|
data = typeof data == "string" ? { [data]: {} } : data;
|
|
4932
4958
|
let key = JSON.stringify(data);
|
|
4933
4959
|
if (this.offline && typeof navigator != "undefined") {
|
|
@@ -4935,8 +4961,8 @@ const _Api = class _Api {
|
|
|
4935
4961
|
if (options.offline) {
|
|
4936
4962
|
if (!this.ensureOfflineSessionOwner(this.token))
|
|
4937
4963
|
return Promise.reject(errorFromCode(409, "Offline queue belongs to another authenticated user"));
|
|
4938
|
-
|
|
4939
|
-
return
|
|
4964
|
+
if (!this.database) return Promise.reject(new Error("Offline queue storage is unavailable"));
|
|
4965
|
+
return this.database.table("pending").add(data, key).then(() => void 0);
|
|
4940
4966
|
}
|
|
4941
4967
|
return Promise.reject(errorFromCode(503, this.status === "unavailable" ? "Datalynk is unavailable" : "You are offline"));
|
|
4942
4968
|
}
|
package/dist/service.worker.mjs
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import {Api} from 'https://datalynk-client.primary.auxilium.world/dist/index.mjs';
|
|
2
|
-
|
|
3
|
-
let api = null;
|
|
4
1
|
const CACHE_NAME = 'datalynk';
|
|
5
2
|
const STATE_CACHE = 'datalynk-app-state';
|
|
3
|
+
const SCOPE_PREFIX = self.location.origin + '/datalynk-app-scope?path=';
|
|
6
4
|
let ONLINE = true;
|
|
7
5
|
const netChan = 'BroadcastChannel' in self ? new BroadcastChannel('sw-net') : null;
|
|
8
6
|
let updateQueue = Promise.resolve();
|
|
7
|
+
let settingsQueue = Promise.resolve();
|
|
9
8
|
|
|
10
9
|
function safeAsset(url) {
|
|
11
10
|
return ['http:', 'https:'].includes(url.protocol)
|
|
@@ -13,6 +12,98 @@ function safeAsset(url) {
|
|
|
13
12
|
&& ![...url.searchParams.keys()].some(key => /token|auth|secret|key|session|password/i.test(key));
|
|
14
13
|
}
|
|
15
14
|
|
|
15
|
+
function safeResponse(response) {
|
|
16
|
+
return !!response && (response.status === 200 || response.type === 'opaque')
|
|
17
|
+
&& !response.headers.has('content-range') && !response.headers.has('set-cookie')
|
|
18
|
+
&& !/private|no-store/i.test(response.headers.get('cache-control') || '');
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function validAssetResponse(response, url) {
|
|
22
|
+
if(!safeResponse(response)) return false;
|
|
23
|
+
const asset = new URL(url);
|
|
24
|
+
if(/\.json$/i.test(asset.pathname) && !/\bpublic\b/i.test(response.headers.get('cache-control') || '')) return false;
|
|
25
|
+
if(/\.html$/i.test(asset.pathname) && (asset.origin !== self.location.origin
|
|
26
|
+
|| !/text\/html/i.test(response.headers.get('content-type') || '')
|
|
27
|
+
|| (response.url && (new URL(response.url).origin !== asset.origin
|
|
28
|
+
|| new URL(response.url).pathname !== asset.pathname)))) return false;
|
|
29
|
+
if(/\.(?:m?js|css)$/i.test(asset.pathname)
|
|
30
|
+
&& /text\/html/i.test(response.headers.get('content-type') || '')) return false;
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function appScope(pathname) {
|
|
35
|
+
if(pathname === '/' || pathname === '/index.html') return '/';
|
|
36
|
+
if(pathname.endsWith('/index.html')) return pathname.slice(0, -'index.html'.length);
|
|
37
|
+
return pathname.endsWith('/') ? pathname : pathname + '/';
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async function navigationFallback(cache, url) {
|
|
41
|
+
if(url.origin !== self.location.origin) return null;
|
|
42
|
+
const state = await caches.open(STATE_CACHE);
|
|
43
|
+
const scopes = [];
|
|
44
|
+
for(const request of await state.keys()) {
|
|
45
|
+
if(!request.url.startsWith(SCOPE_PREFIX)) continue;
|
|
46
|
+
const scope = decodeURIComponent(request.url.slice(SCOPE_PREFIX.length));
|
|
47
|
+
if(!scope.startsWith('/') || (scope === '/'
|
|
48
|
+
? !['/', '/index.html'].includes(url.pathname)
|
|
49
|
+
: url.pathname !== scope.slice(0, -1) && !url.pathname.startsWith(scope))) continue;
|
|
50
|
+
const saved = await state.match(request);
|
|
51
|
+
if(saved) scopes.push({scope, page: await saved.text()});
|
|
52
|
+
}
|
|
53
|
+
scopes.sort((a, b) => b.scope.length - a.scope.length);
|
|
54
|
+
for(const {page} of scopes) {
|
|
55
|
+
const cached = await cache.match(page);
|
|
56
|
+
if(validAssetResponse(cached, page)) return cached;
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
async function cachedMediaRange(cache, request, destination) {
|
|
62
|
+
if(request.headers.has('if-range')) return null;
|
|
63
|
+
const match = /^bytes=(\d*)-(\d*)$/i.exec(request.headers.get('range') || '');
|
|
64
|
+
if(!match || (!match[1] && !match[2])) return null;
|
|
65
|
+
const cached = await savedAsset(cache, request, destination);
|
|
66
|
+
if(!cached || cached.status !== 200 || cached.type === 'opaque') return null;
|
|
67
|
+
const full = await cached.blob();
|
|
68
|
+
const size = full.size;
|
|
69
|
+
const start = match[1] ? Number(match[1]) : Math.max(0, size - Number(match[2]));
|
|
70
|
+
const end = match[1] ? (match[2] ? Number(match[2]) : size - 1) : size - 1;
|
|
71
|
+
if(!Number.isSafeInteger(start) || !Number.isSafeInteger(end) || start >= size || end < start)
|
|
72
|
+
return new Response(null, {status: 416, headers: {'Content-Range': `bytes */${size}`}});
|
|
73
|
+
const last = Math.min(end, size - 1);
|
|
74
|
+
const headers = new Headers();
|
|
75
|
+
const type = cached.headers.get('content-type');
|
|
76
|
+
if(type) headers.set('Content-Type', type);
|
|
77
|
+
headers.set('Accept-Ranges', 'bytes');
|
|
78
|
+
headers.set('Content-Range', `bytes ${start}-${last}/${size}`);
|
|
79
|
+
headers.set('Content-Length', String(last - start + 1));
|
|
80
|
+
return new Response(full.slice(start, last + 1), {status: 206, headers});
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function assetKey(url, destination) {
|
|
84
|
+
const key = new URL(url);
|
|
85
|
+
if(destination !== 'navigate' && destination !== 'json') key.searchParams.delete('bust');
|
|
86
|
+
if(destination === 'navigate') key.search = '';
|
|
87
|
+
return key.href;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
async function savedAsset(cache, request, destination) {
|
|
91
|
+
const key = assetKey(request.url || request, destination);
|
|
92
|
+
const params = new URL(request.url || request).searchParams;
|
|
93
|
+
const versionedFile = destination === 'navigate'
|
|
94
|
+
|| (destination === 'asset' && [...params.keys()].every(name => name === 'v' || name === 'bust'));
|
|
95
|
+
const response = await cache.match(key) || (versionedFile && await cache.match(key, {ignoreSearch: true}));
|
|
96
|
+
return validAssetResponse(response, key) && (destination !== 'json' || /\bpublic\b/i.test(response.headers.get('cache-control') || ''))
|
|
97
|
+
? response : null;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
async function removeOtherVersions(cache, key) {
|
|
101
|
+
const current = new URL(key);
|
|
102
|
+
for(const old of await cache.keys())
|
|
103
|
+
if(old.url !== key && new URL(old.url).origin === current.origin && new URL(old.url).pathname === current.pathname)
|
|
104
|
+
await cache.delete(old);
|
|
105
|
+
}
|
|
106
|
+
|
|
16
107
|
async function activeCacheName() {
|
|
17
108
|
const state = await caches.open(STATE_CACHE);
|
|
18
109
|
const response = await state.match(self.location.origin + '/datalynk-app-active');
|
|
@@ -25,6 +116,9 @@ async function activeCache() {
|
|
|
25
116
|
|
|
26
117
|
function updateAppAssets(values) {
|
|
27
118
|
updateQueue = updateQueue.catch(() => {}).then(async () => {
|
|
119
|
+
const first = (() => {
|
|
120
|
+
try { return new URL(values[0], self.location.origin); } catch { return null; }
|
|
121
|
+
})();
|
|
28
122
|
const urls = [...new Set(values.map(value => {
|
|
29
123
|
try {
|
|
30
124
|
const url = new URL(value, self.location.origin);
|
|
@@ -43,26 +137,41 @@ function updateAppAssets(values) {
|
|
|
43
137
|
if(new URL(request.url).pathname === new URL(urls[0]).pathname
|
|
44
138
|
&& new URL(request.url).origin === new URL(urls[0]).origin) continue;
|
|
45
139
|
const saved = await previous.match(request);
|
|
46
|
-
if(saved && safeAsset(new URL(request.url))) await next.put(request, saved);
|
|
140
|
+
if(saved && safeAsset(new URL(request.url)) && validAssetResponse(saved, request.url)) await next.put(request, saved);
|
|
47
141
|
}
|
|
48
142
|
for(const url of urls) {
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
143
|
+
const asset = new URL(url);
|
|
144
|
+
const corsRequired = asset.origin !== self.location.origin && /\.(?:m?js|woff2?|ttf|otf)$/i.test(asset.pathname);
|
|
145
|
+
const response = await fetch(url, {mode: asset.origin === self.location.origin ? 'same-origin' : corsRequired ? 'cors' : 'no-cors'});
|
|
146
|
+
if(!safeResponse(response) || (corsRequired && response.type === 'opaque')
|
|
147
|
+
|| (/\.html$/i.test(asset.pathname) && (asset.origin !== self.location.origin
|
|
148
|
+
|| !/text\/html/i.test(response.headers.get('content-type') || '')
|
|
149
|
+
|| (response.url && response.url !== url)))
|
|
52
150
|
|| (/\.json$/i.test(new URL(url).pathname) && !/\bpublic\b/i.test(response.headers.get('cache-control') || ''))
|
|
53
151
|
|| (/\.(?:m?js|css)(?:$|\?)/i.test(url) && /text\/html/i.test(response.headers.get('content-type') || '')))
|
|
54
152
|
throw new Error('Offline app update incomplete: ' + url);
|
|
55
|
-
|
|
56
|
-
await
|
|
153
|
+
const destination = /\.json$/i.test(new URL(url).pathname) ? 'json' : 'asset';
|
|
154
|
+
if(response.type === 'opaque' && await savedAsset(previous, url, destination)) continue;
|
|
155
|
+
const key = assetKey(url, destination);
|
|
156
|
+
await next.put(key, response);
|
|
157
|
+
await removeOtherVersions(next, key);
|
|
57
158
|
}
|
|
58
159
|
for(const request of await previous.keys()) {
|
|
59
160
|
if(new URL(request.url).pathname === new URL(urls[0]).pathname
|
|
60
161
|
&& new URL(request.url).origin === new URL(urls[0]).origin) continue;
|
|
162
|
+
if(urls.some(url => new URL(url).origin === new URL(request.url).origin
|
|
163
|
+
&& new URL(url).pathname === new URL(request.url).pathname)) continue;
|
|
61
164
|
if(await next.match(request)) continue;
|
|
62
165
|
const saved = await previous.match(request);
|
|
63
|
-
if(saved && safeAsset(new URL(request.url))) await next.put(request, saved);
|
|
166
|
+
if(saved && safeAsset(new URL(request.url)) && validAssetResponse(saved, request.url)) await next.put(request, saved);
|
|
64
167
|
}
|
|
65
168
|
const state = await caches.open(STATE_CACHE);
|
|
169
|
+
if(first?.origin === self.location.origin && safeAsset(first) && urls.includes(first.href)) {
|
|
170
|
+
const page = assetKey(first.href, 'navigate');
|
|
171
|
+
const scope = appScope(first.pathname);
|
|
172
|
+
if(validAssetResponse(await next.match(page), page))
|
|
173
|
+
await state.put(SCOPE_PREFIX + encodeURIComponent(scope), new Response(page));
|
|
174
|
+
}
|
|
66
175
|
await state.put(self.location.origin + '/datalynk-app-active', new Response(nextName));
|
|
67
176
|
} catch(error) {
|
|
68
177
|
await caches.delete(nextName);
|
|
@@ -104,6 +213,11 @@ async function setSettings(settings) {
|
|
|
104
213
|
return newSettings;
|
|
105
214
|
}
|
|
106
215
|
|
|
216
|
+
function saveSettings(settings) {
|
|
217
|
+
settingsQueue = settingsQueue.catch(() => {}).then(() => setSettings(settings));
|
|
218
|
+
return settingsQueue;
|
|
219
|
+
}
|
|
220
|
+
|
|
107
221
|
self.addEventListener('install', (event) => {
|
|
108
222
|
event.waitUntil(self.skipWaiting());
|
|
109
223
|
});
|
|
@@ -115,6 +229,7 @@ self.addEventListener('activate', (event) => {
|
|
|
115
229
|
const appCache = await activeCache();
|
|
116
230
|
for(const request of await appCache.keys())
|
|
117
231
|
if(!safeAsset(new URL(request.url))
|
|
232
|
+
|| !validAssetResponse(await appCache.match(request), request.url)
|
|
118
233
|
|| (/\.json$/i.test(new URL(request.url).pathname)
|
|
119
234
|
&& !/\bpublic\b/i.test((await appCache.match(request))?.headers.get('cache-control') || '')))
|
|
120
235
|
await appCache.delete(request);
|
|
@@ -128,11 +243,6 @@ self.addEventListener('activate', (event) => {
|
|
|
128
243
|
.map((k) => caches.delete(k))
|
|
129
244
|
);
|
|
130
245
|
|
|
131
|
-
const settings = await getSettings();
|
|
132
|
-
if(settings?.url) {
|
|
133
|
-
api = new Api(settings.url, { ...(settings.options || {}), serviceWorker: false, replayOfflineQueue: false });
|
|
134
|
-
if(settings.token) api.token = settings.token;
|
|
135
|
-
}
|
|
136
246
|
})());
|
|
137
247
|
});
|
|
138
248
|
|
|
@@ -158,55 +268,80 @@ self.addEventListener('fetch', (event) => {
|
|
|
158
268
|
}
|
|
159
269
|
|
|
160
270
|
event.respondWith((async () => {
|
|
161
|
-
const cache = await activeCache();
|
|
162
271
|
const url = new URL(request.url);
|
|
163
|
-
const appFile = request.mode === 'navigate' || ['script', 'style', 'image', 'font', 'worker'].includes(request.destination);
|
|
272
|
+
const appFile = request.mode === 'navigate' || ['script', 'style', 'image', 'font', 'worker', 'audio'].includes(request.destination);
|
|
164
273
|
const staticJson = url.origin === self.location.origin && /\.json$/i.test(url.pathname) && !request.destination;
|
|
165
|
-
const
|
|
166
|
-
&&
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
274
|
+
const safeRequest = safeAsset(url) && !request.headers.has('authorization')
|
|
275
|
+
&& (url.origin === self.location.origin || !['image', 'audio'].includes(request.destination));
|
|
276
|
+
const range = request.headers.has('range');
|
|
277
|
+
const destination = request.mode === 'navigate' ? 'navigate' : staticJson ? 'json' : 'asset';
|
|
278
|
+
let warmedHtml = false;
|
|
279
|
+
if(safeRequest && !range && url.origin === self.location.origin && !request.destination
|
|
280
|
+
&& /\.html$/i.test(url.pathname)) {
|
|
281
|
+
try { warmedHtml = !!await savedAsset(await activeCache(), request, destination); }
|
|
282
|
+
catch(error) { console.warn('Unable to check warmed HTML fragment', error); }
|
|
283
|
+
}
|
|
284
|
+
const cacheable = (appFile || staticJson || warmedHtml) && safeRequest && !range;
|
|
285
|
+
let networkResponse;
|
|
286
|
+
try {
|
|
287
|
+
networkResponse = await fetch(request);
|
|
288
|
+
broadcastStatus(true);
|
|
289
|
+
} catch {
|
|
290
|
+
broadcastStatus(false);
|
|
291
|
+
try {
|
|
292
|
+
const cache = await activeCache();
|
|
293
|
+
if(range && request.destination === 'audio' && safeRequest && url.origin === self.location.origin) {
|
|
294
|
+
const media = await cachedMediaRange(cache, request, destination);
|
|
295
|
+
if(media) return media;
|
|
296
|
+
}
|
|
297
|
+
if(cacheable) {
|
|
298
|
+
const cached = await savedAsset(cache, request, destination);
|
|
299
|
+
if(cached && !(request.mode === 'cors' && cached.type === 'opaque')) return cached;
|
|
300
|
+
if(request.mode === 'navigate') {
|
|
301
|
+
const fallback = await navigationFallback(cache, url);
|
|
302
|
+
if(fallback) return fallback;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
} catch(error) { console.warn('Unable to read offline app cache', error); }
|
|
306
|
+
return new Response('You are offline', {
|
|
307
|
+
status: 503, statusText: 'Service Unavailable', headers: {'Content-Type': 'text/plain'}
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
try {
|
|
311
|
+
if(networkResponse.status === 404 || networkResponse.status >= 500) {
|
|
312
|
+
const cache = await activeCache();
|
|
313
|
+
if(range && request.destination === 'audio' && safeRequest && url.origin === self.location.origin) {
|
|
314
|
+
const media = await cachedMediaRange(cache, request, destination);
|
|
315
|
+
if(media) { broadcastStatus(false); return media; }
|
|
316
|
+
}
|
|
317
|
+
if(cacheable) {
|
|
318
|
+
const cached = await savedAsset(cache, request, destination);
|
|
319
|
+
if(cached && !(request.mode === 'cors' && cached.type === 'opaque')) { broadcastStatus(false); return cached; }
|
|
320
|
+
if(request.mode === 'navigate') {
|
|
321
|
+
const fallback = await navigationFallback(cache, url);
|
|
322
|
+
if(fallback) { broadcastStatus(false); return fallback; }
|
|
323
|
+
}
|
|
324
|
+
}
|
|
173
325
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
&& !(/\.(?:m?js|css)(?:$|\?)/i.test(url.href) && /text\/html/i.test(networkResponse.headers.get('content-type') || ''))) {
|
|
326
|
+
const saved = cacheable && await savedAsset(await activeCache(), request, destination);
|
|
327
|
+
if(safeResponse(networkResponse) && cacheable && (networkResponse.status === 200 || !saved)
|
|
328
|
+
&& (!staticJson || /\bpublic\b/i.test(networkResponse.headers.get('cache-control') || ''))
|
|
329
|
+
&& (!warmedHtml || (/text\/html/i.test(networkResponse.headers.get('content-type') || '')
|
|
330
|
+
&& (!networkResponse.url || networkResponse.url === request.url)))
|
|
331
|
+
&& !(/\.(?:m?js|css)(?:$|\?)/i.test(url.href) && /text\/html/i.test(networkResponse.headers.get('content-type') || ''))) {
|
|
181
332
|
const isOpaqueNav = networkResponse.type === 'opaque' && request.mode === 'navigate';
|
|
182
333
|
if (!isOpaqueNav) {
|
|
183
334
|
event.waitUntil((async () => {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
if(old.url !== key && new URL(old.url).origin === url.origin && new URL(old.url).pathname === url.pathname)
|
|
190
|
-
await current.delete(old);
|
|
191
|
-
})());
|
|
335
|
+
const current = await activeCache();
|
|
336
|
+
const key = assetKey(url.href, destination);
|
|
337
|
+
await current.put(key, networkResponse.clone());
|
|
338
|
+
if(destination !== 'json') await removeOtherVersions(current, key);
|
|
339
|
+
})().catch(error => console.warn('Unable to save offline app file', error)));
|
|
192
340
|
}
|
|
193
341
|
}
|
|
194
342
|
return networkResponse;
|
|
195
|
-
} catch {
|
|
196
|
-
|
|
197
|
-
const cached = cacheable && await (await activeCache()).match(request, {ignoreSearch: request.mode === 'navigate'});
|
|
198
|
-
if(cached) return cached;
|
|
199
|
-
if(cacheable && request.mode === 'navigate') {
|
|
200
|
-
const fallback = (await cache.match('/')) || (await cache.match('/index.html'));
|
|
201
|
-
if(fallback) return fallback;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
return new Response('You are offline', {
|
|
205
|
-
status: 503,
|
|
206
|
-
statusText: 'Service Unavailable',
|
|
207
|
-
headers: {'Content-Type': 'text/plain'}
|
|
208
|
-
});
|
|
209
|
-
}
|
|
343
|
+
} catch(error) { console.warn('Unable to read app cache', error); }
|
|
344
|
+
return networkResponse;
|
|
210
345
|
})());
|
|
211
346
|
});
|
|
212
347
|
|
|
@@ -215,15 +350,13 @@ self.addEventListener('message', async (event) => {
|
|
|
215
350
|
event.waitUntil(updateAppAssets(event.data.offlineAssets));
|
|
216
351
|
}
|
|
217
352
|
if(event.data?.options) { // ๐ง Update settings
|
|
218
|
-
|
|
219
|
-
await setSettings(event.data.options);
|
|
353
|
+
event.waitUntil(saveSettings(event.data.options));
|
|
220
354
|
}
|
|
221
355
|
// `null` is an intentional token update during logout/expiry, so check for the
|
|
222
356
|
// property rather than truthiness.
|
|
223
357
|
if(event.data && Object.prototype.hasOwnProperty.call(event.data, 'token')) { // ๐ Update token
|
|
224
358
|
const token = event.data.token ?? null;
|
|
225
|
-
|
|
226
|
-
await setSettings({token});
|
|
359
|
+
event.waitUntil(saveSettings({token}));
|
|
227
360
|
}
|
|
228
361
|
if(event.data?.clearCache) { // ๐งน Clear cache
|
|
229
362
|
await caches.delete(await activeCacheName());
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@auxilium/datalynk-client",
|
|
3
3
|
"description": "Datalynk client library",
|
|
4
4
|
"repository": "https://gitlab.auxiliumgroup.com/auxilium/datalynk/datalynk-client",
|
|
5
|
-
"version": "1.6.
|
|
5
|
+
"version": "1.6.3",
|
|
6
6
|
"author": "Auxilium Group <devops@auxiliumgroup.com>",
|
|
7
7
|
"private": false,
|
|
8
8
|
"main": "./dist/index.cjs",
|