jsgar 3.7.8 → 3.8.1
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/gar.umd.js +15 -7
- package/package.json +1 -1
package/dist/gar.umd.js
CHANGED
|
@@ -362,11 +362,11 @@
|
|
|
362
362
|
|
|
363
363
|
/**
|
|
364
364
|
* Register handler for DeleteKey message.
|
|
365
|
-
* @param {Function} handler - Callback with (keyId)
|
|
365
|
+
* @param {Function} handler - Callback with (keyId, keyName)
|
|
366
366
|
* @param subscriptionGroup - The subscription group for callback (default 0)
|
|
367
367
|
*/
|
|
368
368
|
registerDeleteKeyHandler(handler, subscriptionGroup = 0) {
|
|
369
|
-
this.registerHandler('DeleteKey', (msg) => handler(msg.value.key_id), subscriptionGroup);
|
|
369
|
+
this.registerHandler('DeleteKey', (msg) => handler(msg.value.key_id, (msg.value && ('name' in msg.value)) ? msg.value.name : null), subscriptionGroup);
|
|
370
370
|
}
|
|
371
371
|
|
|
372
372
|
/**
|
|
@@ -459,8 +459,8 @@
|
|
|
459
459
|
this.log('DEBUG', `New server topic: ${name} (Server ID: ${topicId})`));
|
|
460
460
|
this.registerKeyIntroductionHandler((keyId, name, classList, deletedClass) =>
|
|
461
461
|
this.log('DEBUG', `Key: ${name} : ${keyId} (Classes: ${JSON.stringify(classList)}/-${deletedClass})`));
|
|
462
|
-
this.registerDeleteKeyHandler((keyId) =>
|
|
463
|
-
this.log('DEBUG', `Delete key: ${
|
|
462
|
+
this.registerDeleteKeyHandler((keyId, keyName) =>
|
|
463
|
+
this.log('DEBUG', `Delete key: ${keyName || 'unknown'} (Server ID: ${keyId})`));
|
|
464
464
|
this.registerSubscriptionStatusHandler(this._defaultSubscriptionStatusHandler.bind(this));
|
|
465
465
|
this.registerDeleteRecordHandler((keyId, topicId) =>
|
|
466
466
|
this.log('DEBUG', `Delete record: ${this.serverKeyIdToName.get(keyId) || 'unknown'} - ${this.serverTopicIdToName.get(topicId) || 'unknown'}`));
|
|
@@ -693,8 +693,16 @@
|
|
|
693
693
|
this.serverKeyNameToId.set(message.value.name, message.value.key_id);
|
|
694
694
|
} else if (msgType === 'DeleteKey') {
|
|
695
695
|
subscriptionGroup = this.activeSubscriptionGroup;
|
|
696
|
-
|
|
697
|
-
this.serverKeyIdToName.
|
|
696
|
+
const keyId = message.value.key_id;
|
|
697
|
+
const keyName = this.serverKeyIdToName.get(keyId) || null;
|
|
698
|
+
message.value.name = keyName;
|
|
699
|
+
if (keyName) {
|
|
700
|
+
this.serverKeyNameToId.delete(keyName);
|
|
701
|
+
} else {
|
|
702
|
+
// Ensure 'name' field exists even if unknown
|
|
703
|
+
if (!('name' in message.value)) message.value.name = null;
|
|
704
|
+
}
|
|
705
|
+
this.serverKeyIdToName.delete(keyId);
|
|
698
706
|
} else if (msgType === 'Heartbeat') {
|
|
699
707
|
this.lastHeartbeatTime = Date.now() / 1000;
|
|
700
708
|
if (this._initialGracePeriod) {
|
|
@@ -917,7 +925,7 @@
|
|
|
917
925
|
// Convert keyName to array
|
|
918
926
|
let keyNames = [];
|
|
919
927
|
if (typeof keyName === 'string') {
|
|
920
|
-
keyNames = keyName
|
|
928
|
+
keyNames = [keyName];
|
|
921
929
|
} else if (Array.isArray(keyName)) {
|
|
922
930
|
keyNames = keyName;
|
|
923
931
|
}
|