@qikdev/sdk 1.0.1 → 1.0.4
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 +1 -1
- package/dist/access.html +16371 -0
- package/dist/api.html +1503 -0
- package/dist/auth.html +8455 -0
- package/dist/cache.html +1135 -0
- package/dist/content.html +10067 -0
- package/dist/files.html +3415 -0
- package/dist/filter.html +4973 -0
- package/dist/geo.html +3851 -0
- package/dist/global.html +328 -0
- package/dist/index.html +96 -0
- package/dist/main.js +1100 -1126
- package/dist/module-QikStorage-CookieStorageAdapter.html +1177 -0
- package/dist/module-QikStorage-LocalStorageAdapter.html +329 -0
- package/dist/module-QikStorage-StorageAdapter.html +3457 -0
- package/dist/module-QikStorage.html +1445 -0
- package/dist/qik.access.js.html +904 -0
- package/dist/qik.api.js.html +409 -0
- package/dist/{docs/qik.auth.js.html → qik.auth.js.html} +142 -104
- package/dist/qik.cache.js.html +125 -0
- package/dist/qik.content.js.html +967 -0
- package/dist/qik.core.js.html +322 -0
- package/dist/qik.files.js.html +249 -0
- package/dist/{docs/qik.filter.js.html → qik.filter.js.html} +2 -2
- package/dist/qik.geo.js.html +963 -0
- package/dist/qik.socket.js.html +451 -0
- package/dist/qik.storage.js.html +375 -0
- package/dist/qik.system.js.html +117 -0
- package/dist/qik.utils.js.html +1542 -0
- package/dist/socket.html +2975 -0
- package/dist/{docs/styles → styles}/jsdoc.css +2 -2
- package/dist/system.html +523 -0
- package/package.json +2 -2
- package/src/api/qik.access.js +2 -53
- package/src/api/qik.socket.js +51 -10
- package/src/version.js +1 -1
- package/dist/docs/access.html +0 -3826
- package/dist/docs/api.html +0 -1356
- package/dist/docs/auth.html +0 -2180
- package/dist/docs/cache.html +0 -351
- package/dist/docs/content.html +0 -2560
- package/dist/docs/files.html +0 -779
- package/dist/docs/filter.html +0 -1355
- package/dist/docs/index.html +0 -96
- package/dist/docs/qik.access.js.html +0 -790
- package/dist/docs/qik.api.js.html +0 -511
- package/dist/docs/qik.cache.js.html +0 -131
- package/dist/docs/qik.content.js.html +0 -918
- package/dist/docs/qik.core.js.html +0 -301
- package/dist/docs/qik.files.js.html +0 -219
- package/dist/docs/qik.socket.js.html +0 -416
- package/dist/docs/qik.system.js.html +0 -117
- package/dist/docs/qik.utils.js.html +0 -1467
- package/dist/docs/socket.html +0 -810
- package/dist/docs/system.html +0 -197
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Bold.eot +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Bold.ttf +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Bold.woff +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Bold.woff2 +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Regular.eot +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Regular.ttf +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Regular.woff +0 -0
- /package/dist/{docs/fonts → fonts}/Montserrat/Montserrat-Regular.woff2 +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
- /package/dist/{docs/fonts → fonts}/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
- /package/dist/{docs/scripts → scripts}/collapse.js +0 -0
- /package/dist/{docs/scripts → scripts}/linenumber.js +0 -0
- /package/dist/{docs/scripts → scripts}/nav.js +0 -0
- /package/dist/{docs/scripts → scripts}/polyfill.js +0 -0
- /package/dist/{docs/scripts → scripts}/prettify/Apache-License-2.0.txt +0 -0
- /package/dist/{docs/scripts → scripts}/prettify/lang-css.js +0 -0
- /package/dist/{docs/scripts → scripts}/prettify/prettify.js +0 -0
- /package/dist/{docs/scripts → scripts}/search.js +0 -0
- /package/dist/{docs/styles → styles}/prettify.css +0 -0
package/src/api/qik.socket.js
CHANGED
|
@@ -73,6 +73,26 @@ const QikSocket = function(qik, mode) {
|
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
const bucket = new EventDispatcher();
|
|
76
|
+
|
|
77
|
+
function dispatchMessage(message) {
|
|
78
|
+
bucket.dispatch('message', message);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// Destroy this channel - stop receiving its events and tell the
|
|
82
|
+
// server to unsubscribe. Only touches this channel's own listeners,
|
|
83
|
+
// leaving every other channel (and connection-level listeners) intact.
|
|
84
|
+
bucket.destroy = function() {
|
|
85
|
+
service.removeEventListener(key, dispatchMessage);
|
|
86
|
+
service.unsubscribe(key);
|
|
87
|
+
bucket.removeAllListeners();
|
|
88
|
+
delete buckets[key];
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// Cache the fully-formed bucket (with destroy attached) BEFORE the
|
|
92
|
+
// connect() await below. A concurrent channel(key) call can hit the
|
|
93
|
+
// early return above while we're suspended awaiting connect(); if we
|
|
94
|
+
// registered the bucket before assigning destroy, that caller would
|
|
95
|
+
// receive a bucket whose destroy() is missing and throw on teardown.
|
|
76
96
|
buckets[key] = bucket;
|
|
77
97
|
|
|
78
98
|
if (!service.connected) {
|
|
@@ -86,16 +106,6 @@ const QikSocket = function(qik, mode) {
|
|
|
86
106
|
// Listen for all relevant events
|
|
87
107
|
service.addEventListener(key, dispatchMessage);
|
|
88
108
|
|
|
89
|
-
function dispatchMessage(message) {
|
|
90
|
-
bucket.dispatch('message', message);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// Destroy the service
|
|
94
|
-
bucket.destroy = function() {
|
|
95
|
-
service.removeAllListeners();
|
|
96
|
-
buckets[key] = null;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
109
|
return buckets[key];
|
|
100
110
|
}
|
|
101
111
|
|
|
@@ -340,6 +350,37 @@ const QikSocket = function(qik, mode) {
|
|
|
340
350
|
|
|
341
351
|
///////////////////////////////////////////////////
|
|
342
352
|
|
|
353
|
+
// Reconnect the socket whenever the authenticated organisation changes.
|
|
354
|
+
// The WebSocket authenticates with an access token at connect time, so the
|
|
355
|
+
// connection stays bound to whichever organisation was active when it
|
|
356
|
+
// opened. Switching organisations issues a new token but leaves the socket
|
|
357
|
+
// untouched, so without this it keeps streaming the previous
|
|
358
|
+
// organisation's events. Reconnecting re-authenticates with the new token.
|
|
359
|
+
let currentOrganisationID = qik.utils.id(qik.auth.getCurrentUser()?.organisation);
|
|
360
|
+
|
|
361
|
+
qik.auth.addEventListener('change', async function(user) {
|
|
362
|
+
const organisationID = qik.utils.id(user?.organisation);
|
|
363
|
+
|
|
364
|
+
// Ignore auth changes that don't change the organisation (e.g. routine
|
|
365
|
+
// access token refreshes) so we don't churn the connection needlessly.
|
|
366
|
+
if (organisationID === currentOrganisationID) {
|
|
367
|
+
return;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
currentOrganisationID = organisationID;
|
|
371
|
+
|
|
372
|
+
// Nothing to reconnect if the socket was never opened.
|
|
373
|
+
if (!socket) {
|
|
374
|
+
return;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
service.debug ? console.log('[socket] - organisation changed, reconnecting') : null;
|
|
378
|
+
await service.close();
|
|
379
|
+
await service.reconnect();
|
|
380
|
+
});
|
|
381
|
+
|
|
382
|
+
///////////////////////////////////////////////////
|
|
383
|
+
|
|
343
384
|
return service;
|
|
344
385
|
|
|
345
386
|
}
|
package/src/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = "1.0.
|
|
1
|
+
export const version = "1.0.4";
|