@auxilium/datalynk-client 1.5.1 โ 1.6.0
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/bin/datalynk-models.mjs +0 -0
- package/dist/api.d.ts +65 -6
- package/dist/api.d.ts.map +1 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/chat-entry.d.ts +3 -0
- package/dist/chat-entry.d.ts.map +1 -0
- package/dist/chat-gui.d.ts +64 -0
- package/dist/chat-gui.d.ts.map +1 -0
- package/dist/chat-gui.view.d.ts +3 -0
- package/dist/chat-gui.view.d.ts.map +1 -0
- package/dist/chat.cjs +2202 -0
- package/dist/chat.d.ts +75 -0
- package/dist/chat.d.ts.map +1 -0
- package/dist/chat.mjs +2198 -0
- package/dist/index.cjs +514 -50
- package/dist/index.mjs +514 -50
- package/dist/service.worker.mjs +11 -6
- package/dist/socket.d.ts +14 -1
- package/dist/socket.d.ts.map +1 -1
- package/package.json +7 -2
package/dist/service.worker.mjs
CHANGED
|
@@ -48,7 +48,7 @@ self.addEventListener('activate', (event) => {
|
|
|
48
48
|
|
|
49
49
|
const settings = await getSettings();
|
|
50
50
|
if(settings?.url) {
|
|
51
|
-
api = new Api(settings.url, { ...(settings.options || {}), serviceWorker: false });
|
|
51
|
+
api = new Api(settings.url, { ...(settings.options || {}), serviceWorker: false, replayOfflineQueue: false });
|
|
52
52
|
if(settings.token) api.token = settings.token;
|
|
53
53
|
}
|
|
54
54
|
})());
|
|
@@ -117,12 +117,17 @@ self.addEventListener('fetch', (event) => {
|
|
|
117
117
|
|
|
118
118
|
self.addEventListener('message', async (event) => {
|
|
119
119
|
if(event.data?.options) { // ๐ง Update settings
|
|
120
|
-
api = new Api(event.data.options.url, { ...event.data.options, serviceWorker: false });
|
|
120
|
+
api = new Api(event.data.options.url, { ...event.data.options, serviceWorker: false, replayOfflineQueue: false });
|
|
121
121
|
await setSettings(event.data.options);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
122
|
+
}
|
|
123
|
+
// `null` is an intentional token update during logout/expiry, so check for the
|
|
124
|
+
// property rather than truthiness.
|
|
125
|
+
if(event.data && Object.prototype.hasOwnProperty.call(event.data, 'token')) { // ๐ Update token
|
|
126
|
+
const token = event.data.token ?? null;
|
|
127
|
+
if(api) api.token = token;
|
|
128
|
+
await setSettings({token});
|
|
129
|
+
}
|
|
130
|
+
if(event.data?.clearCache) { // ๐งน Clear cache
|
|
126
131
|
await caches.delete(CACHE_NAME);
|
|
127
132
|
}
|
|
128
133
|
});
|
package/dist/socket.d.ts
CHANGED
|
@@ -43,6 +43,10 @@ export type WebRTCEvent = {
|
|
|
43
43
|
export type SocketOptions = {
|
|
44
44
|
/** Set connection URL or disable with false */
|
|
45
45
|
url?: string | false;
|
|
46
|
+
/** Use one-time socket tickets only when explicitly enabled by a chat-capable host. */
|
|
47
|
+
authentication?: 'token' | 'ticket';
|
|
48
|
+
/** Optional realm used by backward-compatible token authentication. */
|
|
49
|
+
realm?: string;
|
|
46
50
|
};
|
|
47
51
|
/** Callback shape */
|
|
48
52
|
export type SocketListener<T = SocketEvent<any>> = (event: T) => any;
|
|
@@ -55,6 +59,7 @@ export declare class Socket {
|
|
|
55
59
|
private listeners;
|
|
56
60
|
private retry?;
|
|
57
61
|
private socket?;
|
|
62
|
+
private connectGeneration;
|
|
58
63
|
open: boolean;
|
|
59
64
|
constructor(api: Api, options?: SocketOptions);
|
|
60
65
|
/**
|
|
@@ -76,7 +81,14 @@ export declare class Socket {
|
|
|
76
81
|
* Connect socket client to socket server
|
|
77
82
|
* @param {number} timeout Retry to connect every x seconds
|
|
78
83
|
*/
|
|
79
|
-
connect(timeout?: number): void
|
|
84
|
+
connect(timeout?: number): void | Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Ticket-authenticated connection path, used only once a chat-capable host switches
|
|
87
|
+
* this instance to `authentication: 'ticket'` (see Api.openChat). Entirely separate
|
|
88
|
+
* from the token path above so existing non-chat consumers are never affected.
|
|
89
|
+
*/
|
|
90
|
+
private connectWithTicket;
|
|
91
|
+
private scheduleReconnect;
|
|
80
92
|
/**
|
|
81
93
|
* Send data to socket server
|
|
82
94
|
*
|
|
@@ -91,5 +103,6 @@ export declare class Socket {
|
|
|
91
103
|
* @return {Unsubscribe} Run returned function to unsubscribe callback
|
|
92
104
|
*/
|
|
93
105
|
sliceEvents(slice: number | number[] | string | string[], callback: SocketListener<SocketEventSlice>): Unsubscribe;
|
|
106
|
+
private normalizeUrl;
|
|
94
107
|
}
|
|
95
108
|
//# sourceMappingURL=socket.d.ts.map
|
package/dist/socket.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../src/socket.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAA;CACP,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GACvC,CAAC;IAAC,SAAS,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAA;CAAC,GAC7C;IAAC,YAAY,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAA;CAAC,GAC/C;IAAC,KAAK,EAAE;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,yBAAyB,CAAA;KAAC,CAAA;CAAC,GACtF;IAAC,MAAM,EAAE;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,yBAAyB,CAAA;KAAC,CAAA;CAAC,CAAC,CAAC;AAE1F,yBAAyB;AACzB,MAAM,MAAM,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../src/socket.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAA;CACP,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GACvC,CAAC;IAAC,SAAS,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAA;CAAC,GAC7C;IAAC,YAAY,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAA;CAAC,GAC/C;IAAC,KAAK,EAAE;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,yBAAyB,CAAA;KAAC,CAAA;CAAC,GACtF;IAAC,MAAM,EAAE;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,yBAAyB,CAAA;KAAC,CAAA;CAAC,CAAC,CAAC;AAE1F,yBAAyB;AACzB,MAAM,MAAM,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACrB,uFAAuF;IACvF,cAAc,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACpC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAA;AAED,qBAAqB;AACrB,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,GAAG,CAAC;AACrE,8CAA8C;AAC9C,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC,iCAAiC;AACjC,qBAAa,MAAM;IAQN,OAAO,CAAC,QAAQ,CAAC,GAAG;aAAuB,OAAO,EAAE,aAAa;IAP7E,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,KAAK,CAAC,CAAM;IACpB,OAAO,CAAC,MAAM,CAAC,CAAY;IAC3B,OAAO,CAAC,iBAAiB,CAAK;IAE9B,IAAI,UAAS;gBAEgB,GAAG,EAAE,GAAG,EAAkB,OAAO,GAAE,aAAkB;IAWlF;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,IAAI,GAAG,WAAW;IAOnE;;OAEG;IACH,KAAK;IAUL;;;OAGG;IACH,OAAO,CAAC,OAAO,GAAE,MAAW;IAiC5B;;;;OAIG;YACW,iBAAiB;IA6D/B,OAAO,CAAC,iBAAiB;IASzB;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,GAAG;IAKjB;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAAG,WAAW;IAWlH,OAAO,CAAC,YAAY;CAUpB"}
|
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.
|
|
5
|
+
"version": "1.6.0",
|
|
6
6
|
"author": "Auxilium Group <devops@auxiliumgroup.com>",
|
|
7
7
|
"private": false,
|
|
8
8
|
"main": "./dist/index.cjs",
|
|
@@ -13,13 +13,18 @@
|
|
|
13
13
|
"types": "./dist/index.d.ts",
|
|
14
14
|
"import": "./dist/index.mjs",
|
|
15
15
|
"require": "./dist/index.cjs"
|
|
16
|
+
},
|
|
17
|
+
"./chat": {
|
|
18
|
+
"types": "./dist/chat-entry.d.ts",
|
|
19
|
+
"import": "./dist/chat.mjs",
|
|
20
|
+
"require": "./dist/chat.cjs"
|
|
16
21
|
}
|
|
17
22
|
},
|
|
18
23
|
"bin": {
|
|
19
24
|
"datalynk-models": "./bin/datalynk-models.mjs"
|
|
20
25
|
},
|
|
21
26
|
"scripts": {
|
|
22
|
-
"build": "tsc && npx vite build",
|
|
27
|
+
"build": "tsc && npx vite build && npx vite build --config vite.chat.config.ts",
|
|
23
28
|
"postbuild": "node -e \"const fs=require('fs');fs.cpSync('src/service.worker.mjs','dist/service.worker.mjs')\"",
|
|
24
29
|
"test": "npm run build && node --test test/*.test.mjs",
|
|
25
30
|
"datalynk-models": "node --no-warnings ./bin/datalynk-models.mjs",
|