@hivegpt/hiveai-angular 0.0.564 → 0.0.565
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/bundles/hivegpt-hiveai-angular.umd.js +19 -11
- package/bundles/hivegpt-hiveai-angular.umd.js.map +1 -1
- package/bundles/hivegpt-hiveai-angular.umd.min.js +1 -1
- package/bundles/hivegpt-hiveai-angular.umd.min.js.map +1 -1
- package/esm2015/lib/components/chat-drawer/chat-drawer.component.js +8 -8
- package/esm2015/lib/components/conversation.service.js +13 -5
- package/fesm2015/hivegpt-hiveai-angular.js +19 -11
- package/fesm2015/hivegpt-hiveai-angular.js.map +1 -1
- package/lib/components/chat-drawer/chat-drawer.component.d.ts.map +1 -1
- package/lib/components/conversation.service.d.ts +8 -2
- package/lib/components/conversation.service.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -14,8 +14,15 @@ export class ConversationService {
|
|
|
14
14
|
});
|
|
15
15
|
return timestamp + randomHex;
|
|
16
16
|
}
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Returns a stable conversation id persisted in localStorage.
|
|
19
|
+
*
|
|
20
|
+
* IMPORTANT: call-sites should pass an event-specific scope when needed (e.g. eventId)
|
|
21
|
+
* so switching events does not reuse the previous event's conversation thread.
|
|
22
|
+
*/
|
|
23
|
+
getKey(botId, resetKey = false, scope) {
|
|
24
|
+
const normalizedScope = scope != null && String(scope).trim() !== '' ? String(scope).trim() : '';
|
|
25
|
+
const storageKey = `${this.conversationStorageKeyPrefix}${botId}${normalizedScope ? `_${normalizedScope}` : ''}`;
|
|
19
26
|
let value = localStorage.getItem(storageKey);
|
|
20
27
|
if (!value || resetKey) {
|
|
21
28
|
value = this.generateKey();
|
|
@@ -23,8 +30,9 @@ export class ConversationService {
|
|
|
23
30
|
}
|
|
24
31
|
return value;
|
|
25
32
|
}
|
|
26
|
-
getSessionKey(sessionId, resetKey = false) {
|
|
27
|
-
const
|
|
33
|
+
getSessionKey(sessionId, resetKey = false, scope) {
|
|
34
|
+
const normalizedScope = scope != null && String(scope).trim() !== '' ? String(scope).trim() : '';
|
|
35
|
+
const storageKey = `${this.sessionStorageKeyPrefix}${sessionId}${normalizedScope ? `_${normalizedScope}` : ''}`;
|
|
28
36
|
let value = localStorage.getItem(storageKey);
|
|
29
37
|
if (!value || resetKey) {
|
|
30
38
|
value = this.generateKey();
|
|
@@ -46,4 +54,4 @@ ConversationService.decorators = [
|
|
|
46
54
|
},] }
|
|
47
55
|
];
|
|
48
56
|
ConversationService.ctorParameters = () => [];
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL1VzZXJzL3JvaGl0dGhha3VyL2hpdmUtZ3B0L0hpdmVBSS1QYWNrYWdlcy9Bbmd1bGFyL3Byb2plY3RzL2hpdmVncHQvZXZlbnRzZ3B0LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29udmVyc2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUszQyxNQUFNLE9BQU8sbUJBQW1CO0lBTTlCO1FBTFEsaUNBQTRCLEdBQUcsa0JBQWtCLENBQUM7UUFDbEQsNEJBQXVCLEdBQUcsYUFBYSxDQUFDO1FBRXhDLDZCQUF3QixHQUFpQixJQUFJLE9BQU8sRUFBTyxDQUFDO0lBRXBELENBQUM7SUFFakIsV0FBVztRQUNULE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkUsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDeEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEtBQWEsRUFBRSxXQUFvQixLQUFLLEVBQUUsS0FBYztRQUM3RCxNQUFNLGVBQWUsR0FDbkIsS0FBSyxJQUFJLElBQUksSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzRSxNQUFNLFVBQVUsR0FBRyxHQUFHLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxLQUFLLEdBQzdELGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDNUMsRUFBRSxDQUFDO1FBQ0gsSUFBSSxLQUFLLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU3QyxJQUFJLENBQUMsS0FBSyxJQUFJLFFBQVEsRUFBRTtZQUN0QixLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzNCLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ3pDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsYUFBYSxDQUFDLFNBQWlCLEVBQUUsV0FBb0IsS0FBSyxFQUFFLEtBQWM7UUFDeEUsTUFBTSxlQUFlLEdBQ25CLEtBQUssSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0UsTUFBTSxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsU0FBUyxHQUM1RCxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQzVDLEVBQUUsQ0FBQztRQUNILElBQUksS0FBSyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLEtBQUssSUFBSSxRQUFRLEVBQUU7WUFDdEIsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMzQixZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUN6QztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELHFCQUFxQixDQUFDLE9BQVk7UUFDaEMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsMkJBQTJCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RELENBQUM7Ozs7WUEvREYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29udmVyc2F0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgY29udmVyc2F0aW9uU3RvcmFnZUtleVByZWZpeCA9ICdjb252ZXJzYXRpb25LZXlfJztcbiAgcHJpdmF0ZSBzZXNzaW9uU3RvcmFnZUtleVByZWZpeCA9ICdzZXNzaW9uS2V5Xyc7XG5cbiAgcHJpdmF0ZSB1c2VyU3BlY2lmaWNOb3RpZmljYXRpb246IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIGdlbmVyYXRlS2V5KCk6IHN0cmluZyB7XG4gICAgY29uc3QgdGltZXN0YW1wID0gTWF0aC5mbG9vcihuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDApLnRvU3RyaW5nKDE2KTtcbiAgICBjb25zdCByYW5kb21IZXggPSAneHh4eHh4eHh4eHh4eHh4eCcucmVwbGFjZSgvW3hdL2csICgpID0+IHtcbiAgICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxNikudG9TdHJpbmcoMTYpO1xuICAgIH0pO1xuICAgIHJldHVybiB0aW1lc3RhbXAgKyByYW5kb21IZXg7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHN0YWJsZSBjb252ZXJzYXRpb24gaWQgcGVyc2lzdGVkIGluIGxvY2FsU3RvcmFnZS5cbiAgICpcbiAgICogSU1QT1JUQU5UOiBjYWxsLXNpdGVzIHNob3VsZCBwYXNzIGFuIGV2ZW50LXNwZWNpZmljIHNjb3BlIHdoZW4gbmVlZGVkIChlLmcuIGV2ZW50SWQpXG4gICAqIHNvIHN3aXRjaGluZyBldmVudHMgZG9lcyBub3QgcmV1c2UgdGhlIHByZXZpb3VzIGV2ZW50J3MgY29udmVyc2F0aW9uIHRocmVhZC5cbiAgICovXG4gIGdldEtleShib3RJZDogc3RyaW5nLCByZXNldEtleTogYm9vbGVhbiA9IGZhbHNlLCBzY29wZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID1cbiAgICAgIHNjb3BlICE9IG51bGwgJiYgU3RyaW5nKHNjb3BlKS50cmltKCkgIT09ICcnID8gU3RyaW5nKHNjb3BlKS50cmltKCkgOiAnJztcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gYCR7dGhpcy5jb252ZXJzYXRpb25TdG9yYWdlS2V5UHJlZml4fSR7Ym90SWR9JHtcbiAgICAgIG5vcm1hbGl6ZWRTY29wZSA/IGBfJHtub3JtYWxpemVkU2NvcGV9YCA6ICcnXG4gICAgfWA7XG4gICAgbGV0IHZhbHVlID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oc3RvcmFnZUtleSk7XG5cbiAgICBpZiAoIXZhbHVlIHx8IHJlc2V0S2V5KSB7XG4gICAgICB2YWx1ZSA9IHRoaXMuZ2VuZXJhdGVLZXkoKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHN0b3JhZ2VLZXksIHZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBnZXRTZXNzaW9uS2V5KHNlc3Npb25JZDogc3RyaW5nLCByZXNldEtleTogYm9vbGVhbiA9IGZhbHNlLCBzY29wZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNjb3BlID1cbiAgICAgIHNjb3BlICE9IG51bGwgJiYgU3RyaW5nKHNjb3BlKS50cmltKCkgIT09ICcnID8gU3RyaW5nKHNjb3BlKS50cmltKCkgOiAnJztcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gYCR7dGhpcy5zZXNzaW9uU3RvcmFnZUtleVByZWZpeH0ke3Nlc3Npb25JZH0ke1xuICAgICAgbm9ybWFsaXplZFNjb3BlID8gYF8ke25vcm1hbGl6ZWRTY29wZX1gIDogJydcbiAgICB9YDtcbiAgICBsZXQgdmFsdWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShzdG9yYWdlS2V5KTtcblxuICAgIGlmICghdmFsdWUgfHwgcmVzZXRLZXkpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5nZW5lcmF0ZUtleSgpO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oc3RvcmFnZUtleSwgdmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHNlbmRWYWxpZGF0ZWRVc2VyRGF0YShtZXNzYWdlOiBhbnkpIHtcbiAgICB0aGlzLnVzZXJTcGVjaWZpY05vdGlmaWNhdGlvbi5uZXh0KG1lc3NhZ2UpO1xuICB9XG5cbiAgZ2V0VXNlclNwZWNpZmljTm90aWZpY2F0aW9uKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclNwZWNpZmljTm90aWZpY2F0aW9uLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -325,8 +325,15 @@ class ConversationService {
|
|
|
325
325
|
});
|
|
326
326
|
return timestamp + randomHex;
|
|
327
327
|
}
|
|
328
|
-
|
|
329
|
-
|
|
328
|
+
/**
|
|
329
|
+
* Returns a stable conversation id persisted in localStorage.
|
|
330
|
+
*
|
|
331
|
+
* IMPORTANT: call-sites should pass an event-specific scope when needed (e.g. eventId)
|
|
332
|
+
* so switching events does not reuse the previous event's conversation thread.
|
|
333
|
+
*/
|
|
334
|
+
getKey(botId, resetKey = false, scope) {
|
|
335
|
+
const normalizedScope = scope != null && String(scope).trim() !== '' ? String(scope).trim() : '';
|
|
336
|
+
const storageKey = `${this.conversationStorageKeyPrefix}${botId}${normalizedScope ? `_${normalizedScope}` : ''}`;
|
|
330
337
|
let value = localStorage.getItem(storageKey);
|
|
331
338
|
if (!value || resetKey) {
|
|
332
339
|
value = this.generateKey();
|
|
@@ -334,8 +341,9 @@ class ConversationService {
|
|
|
334
341
|
}
|
|
335
342
|
return value;
|
|
336
343
|
}
|
|
337
|
-
getSessionKey(sessionId, resetKey = false) {
|
|
338
|
-
const
|
|
344
|
+
getSessionKey(sessionId, resetKey = false, scope) {
|
|
345
|
+
const normalizedScope = scope != null && String(scope).trim() !== '' ? String(scope).trim() : '';
|
|
346
|
+
const storageKey = `${this.sessionStorageKeyPrefix}${sessionId}${normalizedScope ? `_${normalizedScope}` : ''}`;
|
|
339
347
|
let value = localStorage.getItem(storageKey);
|
|
340
348
|
if (!value || resetKey) {
|
|
341
349
|
value = this.generateKey();
|
|
@@ -1718,7 +1726,7 @@ class ChatDrawerComponent {
|
|
|
1718
1726
|
this.socketService.connectSocketConnection();
|
|
1719
1727
|
setTimeout(() => {
|
|
1720
1728
|
console.log('YES INIT');
|
|
1721
|
-
const conversation_id = this.conversationService.getKey(this.botId);
|
|
1729
|
+
const conversation_id = this.conversationService.getKey(this.botId, false, this.eventId);
|
|
1722
1730
|
this.socketService.registerUserSpecificHiveSocket(this.botId, conversation_id, this.orgId);
|
|
1723
1731
|
setTimeout(() => {
|
|
1724
1732
|
this.listenSockets();
|
|
@@ -3187,8 +3195,8 @@ class ChatDrawerComponent {
|
|
|
3187
3195
|
}
|
|
3188
3196
|
fetchChatHistory() {
|
|
3189
3197
|
this.loading = true;
|
|
3190
|
-
this.conversationKey = this.conversationService.getKey(this.botId, false);
|
|
3191
|
-
this.conSessionKey = this.conversationService.getSessionKey(this.botId, false);
|
|
3198
|
+
this.conversationKey = this.conversationService.getKey(this.botId, false, this.eventId);
|
|
3199
|
+
this.conSessionKey = this.conversationService.getSessionKey(this.botId, false, this.eventId);
|
|
3192
3200
|
const url = `${this.environment.BASE_URL}/conversations/${this.conversationKey}?session_id=${this.conSessionKey}`;
|
|
3193
3201
|
const headers = new HttpHeaders({
|
|
3194
3202
|
accept: 'application/json',
|
|
@@ -3730,7 +3738,7 @@ class ChatDrawerComponent {
|
|
|
3730
3738
|
console.log(message);
|
|
3731
3739
|
this.feedbackDone = true;
|
|
3732
3740
|
this.showFeedBackIconsIndex = null;
|
|
3733
|
-
const conversation_id = this.conversationService.getKey(this.botId);
|
|
3741
|
+
const conversation_id = this.conversationService.getKey(this.botId, false, this.eventId);
|
|
3734
3742
|
const url = `${this.environment.AGENTS_API}/Conversation/coPilot/${this.botId}/conversation/${conversation_id}/helpful-response`;
|
|
3735
3743
|
fetch(url, {
|
|
3736
3744
|
method: 'POST',
|
|
@@ -4167,7 +4175,7 @@ class ChatDrawerComponent {
|
|
|
4167
4175
|
this.isContentLoaded = false;
|
|
4168
4176
|
console.log('API call function');
|
|
4169
4177
|
this.loading = true;
|
|
4170
|
-
const conversation_id = this.conversationService.getKey(this.botId);
|
|
4178
|
+
const conversation_id = this.conversationService.getKey(this.botId, false, this.eventId);
|
|
4171
4179
|
this.conversationId = conversation_id;
|
|
4172
4180
|
const url = `${this.environment.AGENTS_API}/ConversationDocuments?conversationId=${conversation_id}&botId=${this.botId}`;
|
|
4173
4181
|
const headers = new HttpHeaders({
|
|
@@ -4609,7 +4617,7 @@ class ChatDrawerComponent {
|
|
|
4609
4617
|
return Object.keys(obj).map((key) => ({ key, value: obj[key] }));
|
|
4610
4618
|
}
|
|
4611
4619
|
startNewConversation() {
|
|
4612
|
-
this.conversationKey = this.conversationService.getKey(this.botId, true);
|
|
4620
|
+
this.conversationKey = this.conversationService.getKey(this.botId, true, this.eventId);
|
|
4613
4621
|
this.chatLog = [this.chatLog[0]];
|
|
4614
4622
|
this.isChatingWithAi = false;
|
|
4615
4623
|
this.chatSocketInitialized = false;
|
|
@@ -4677,7 +4685,7 @@ class ChatDrawerComponent {
|
|
|
4677
4685
|
}
|
|
4678
4686
|
openVoiceModal() {
|
|
4679
4687
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
4680
|
-
const conversationId = (_b = (_a = this.conversationKey) !== null && _a !== void 0 ? _a : this.conversationService.getKey(this.botId, false)) !== null && _b !== void 0 ? _b : '';
|
|
4688
|
+
const conversationId = (_b = (_a = this.conversationKey) !== null && _a !== void 0 ? _a : this.conversationService.getKey(this.botId, false, this.eventId)) !== null && _b !== void 0 ? _b : '';
|
|
4681
4689
|
this.voiceModalConversationId = conversationId;
|
|
4682
4690
|
this.setupVoiceTranscripts();
|
|
4683
4691
|
// Close existing overlay if any
|