@memberjunction/ng-conversations 2.117.0 → 2.118.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/dist/lib/components/collection/collection-artifact-card.component.d.ts +7 -1
- package/dist/lib/components/collection/collection-artifact-card.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collection-artifact-card.component.js +14 -18
- package/dist/lib/components/collection/collection-artifact-card.component.js.map +1 -1
- package/dist/lib/components/collection/collections-full-view.component.d.ts +86 -1
- package/dist/lib/components/collection/collections-full-view.component.d.ts.map +1 -1
- package/dist/lib/components/collection/collections-full-view.component.js +1042 -255
- package/dist/lib/components/collection/collections-full-view.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +9 -2
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.js +236 -162
- package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
- package/dist/lib/components/mention/mention-dropdown.component.js +2 -2
- package/dist/lib/components/mention/mention-editor.component.d.ts +21 -0
- package/dist/lib/components/mention/mention-editor.component.d.ts.map +1 -1
- package/dist/lib/components/mention/mention-editor.component.js +299 -2
- package/dist/lib/components/mention/mention-editor.component.js.map +1 -1
- package/dist/lib/components/message/actionable-commands.component.d.ts +33 -0
- package/dist/lib/components/message/actionable-commands.component.d.ts.map +1 -0
- package/dist/lib/components/message/actionable-commands.component.js +107 -0
- package/dist/lib/components/message/actionable-commands.component.js.map +1 -0
- package/dist/lib/components/message/agent-response-form.component.d.ts +72 -0
- package/dist/lib/components/message/agent-response-form.component.d.ts.map +1 -0
- package/dist/lib/components/message/agent-response-form.component.js +310 -0
- package/dist/lib/components/message/agent-response-form.component.js.map +1 -0
- package/dist/lib/components/message/form-question.component.d.ts +105 -0
- package/dist/lib/components/message/form-question.component.d.ts.map +1 -0
- package/dist/lib/components/message/form-question.component.js +621 -0
- package/dist/lib/components/message/form-question.component.js.map +1 -0
- package/dist/lib/components/message/message-input-box.component.d.ts +12 -0
- package/dist/lib/components/message/message-input-box.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input-box.component.js +14 -1
- package/dist/lib/components/message/message-input-box.component.js.map +1 -1
- package/dist/lib/components/message/message-input.component.d.ts +3 -3
- package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input.component.js +85 -51
- package/dist/lib/components/message/message-input.component.js.map +1 -1
- package/dist/lib/components/message/message-item.component.d.ts +39 -6
- package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-item.component.js +490 -196
- package/dist/lib/components/message/message-item.component.js.map +1 -1
- package/dist/lib/components/message/message-list.component.d.ts +2 -1
- package/dist/lib/components/message/message-list.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-list.component.js +5 -1
- package/dist/lib/components/message/message-list.component.js.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts +23 -6
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.js +128 -52
- package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
- package/dist/lib/conversations.module.d.ts +60 -56
- package/dist/lib/conversations.module.d.ts.map +1 -1
- package/dist/lib/conversations.module.js +17 -1
- package/dist/lib/conversations.module.js.map +1 -1
- package/dist/lib/models/collection-view.model.d.ts +30 -0
- package/dist/lib/models/collection-view.model.d.ts.map +1 -0
- package/dist/lib/models/collection-view.model.js +2 -0
- package/dist/lib/models/collection-view.model.js.map +1 -0
- package/dist/lib/models/conversation-state.model.d.ts +1 -0
- package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
- package/dist/lib/services/conversation-agent.service.d.ts +4 -1
- package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-agent.service.js +22 -2
- package/dist/lib/services/conversation-agent.service.js.map +1 -1
- package/dist/lib/services/data-cache.service.d.ts +12 -0
- package/dist/lib/services/data-cache.service.d.ts.map +1 -1
- package/dist/lib/services/data-cache.service.js +41 -0
- package/dist/lib/services/data-cache.service.js.map +1 -1
- package/dist/lib/services/mention-parser.service.d.ts +6 -1
- package/dist/lib/services/mention-parser.service.d.ts.map +1 -1
- package/dist/lib/services/mention-parser.service.js +114 -34
- package/dist/lib/services/mention-parser.service.js.map +1 -1
- package/dist/lib/services/ui-command-handler.service.d.ts +45 -0
- package/dist/lib/services/ui-command-handler.service.d.ts.map +1 -0
- package/dist/lib/services/ui-command-handler.service.js +95 -0
- package/dist/lib/services/ui-command-handler.service.js.map +1 -0
- package/package.json +15 -14
|
@@ -4,12 +4,15 @@ import { UserInfo } from '@memberjunction/core';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
/**
|
|
6
6
|
* Service for parsing @mentions from message text
|
|
7
|
+
* Supports both JSON format and legacy text format
|
|
7
8
|
*/
|
|
8
9
|
export declare class MentionParserService {
|
|
9
|
-
private readonly
|
|
10
|
+
private readonly JSON_MENTION_REGEX;
|
|
11
|
+
private readonly LEGACY_MENTION_REGEX;
|
|
10
12
|
constructor();
|
|
11
13
|
/**
|
|
12
14
|
* Parse mentions from message text
|
|
15
|
+
* Supports both JSON format (@{type:"agent",id:"uuid",...}) and legacy text format (@AgentName)
|
|
13
16
|
* @param text The message text to parse
|
|
14
17
|
* @param availableAgents List of available agents for matching
|
|
15
18
|
* @param availableUsers List of available users for matching (optional)
|
|
@@ -29,10 +32,12 @@ export declare class MentionParserService {
|
|
|
29
32
|
/**
|
|
30
33
|
* Validate mentions - check if all mentions are valid
|
|
31
34
|
* Returns array of invalid mention names
|
|
35
|
+
* Supports both JSON and legacy mention formats
|
|
32
36
|
*/
|
|
33
37
|
validateMentions(text: string, availableAgents: AIAgentEntityExtended[], availableUsers?: UserInfo[]): string[];
|
|
34
38
|
/**
|
|
35
39
|
* Extract all mention names from text (raw strings)
|
|
40
|
+
* Supports both JSON and legacy mention formats
|
|
36
41
|
*/
|
|
37
42
|
extractMentionNames(text: string): string[];
|
|
38
43
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention-parser.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/mention-parser.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;;AAEhD
|
|
1
|
+
{"version":3,"file":"mention-parser.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/mention-parser.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;;AAEhD;;;GAGG;AACH,qBAGa,oBAAoB;IAE/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiB;IAEpD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;;IAI7D;;;;;;;OAOG;IACH,aAAa,CACX,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,qBAAqB,EAAE,EACxC,cAAc,CAAC,EAAE,QAAQ,EAAE,GAC1B,kBAAkB;IA8ErB;;;OAGG;IACH,OAAO,CAAC,SAAS;IAwBjB;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAkBhB;;;;OAIG;IACH,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,qBAAqB,EAAE,EACxC,cAAc,CAAC,EAAE,QAAQ,EAAE,GAC1B,MAAM,EAAE;IAgDX;;;OAGG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAoB3C;;;OAGG;IACH,cAAc,CACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAAE,GAClB,MAAM;yCA5OE,oBAAoB;6CAApB,oBAAoB;CA6PhC"}
|
|
@@ -2,13 +2,17 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
/**
|
|
4
4
|
* Service for parsing @mentions from message text
|
|
5
|
+
* Supports both JSON format and legacy text format
|
|
5
6
|
*/
|
|
6
7
|
export class MentionParserService {
|
|
7
|
-
// Regex to match
|
|
8
|
-
|
|
8
|
+
// Regex to match JSON mentions: @{type:"agent",id:"uuid",name:"Name",configId:"uuid",config:"High"}
|
|
9
|
+
JSON_MENTION_REGEX = /@\{[^}]+\}/g;
|
|
10
|
+
// Regex to match legacy @mentions - supports names with spaces if quoted: @"Agent Name" or @AgentName
|
|
11
|
+
LEGACY_MENTION_REGEX = /@"([^"]+)"|@(\S+)/g;
|
|
9
12
|
constructor() { }
|
|
10
13
|
/**
|
|
11
14
|
* Parse mentions from message text
|
|
15
|
+
* Supports both JSON format (@{type:"agent",id:"uuid",...}) and legacy text format (@AgentName)
|
|
12
16
|
* @param text The message text to parse
|
|
13
17
|
* @param availableAgents List of available agents for matching
|
|
14
18
|
* @param availableUsers List of available users for matching (optional)
|
|
@@ -16,31 +20,60 @@ export class MentionParserService {
|
|
|
16
20
|
*/
|
|
17
21
|
parseMentions(text, availableAgents, availableUsers) {
|
|
18
22
|
const mentions = [];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
23
|
+
// First, try to parse JSON mentions (new format)
|
|
24
|
+
const jsonMatches = Array.from(text.matchAll(this.JSON_MENTION_REGEX));
|
|
25
|
+
for (const match of jsonMatches) {
|
|
26
|
+
try {
|
|
27
|
+
// Extract JSON string (remove @ prefix)
|
|
28
|
+
const jsonStr = match[0].substring(1); // Remove '@'
|
|
29
|
+
const mentionData = JSON.parse(jsonStr);
|
|
30
|
+
// Validate required fields
|
|
31
|
+
if (mentionData.type && mentionData.id && mentionData.name) {
|
|
32
|
+
const mention = {
|
|
33
|
+
type: mentionData.type,
|
|
34
|
+
id: mentionData.id,
|
|
35
|
+
name: mentionData.name
|
|
36
|
+
};
|
|
37
|
+
// Add configuration if present (for agents)
|
|
38
|
+
if (mentionData.configId) {
|
|
39
|
+
mention.configurationId = mentionData.configId;
|
|
40
|
+
}
|
|
41
|
+
mentions.push(mention);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
console.warn('Failed to parse JSON mention:', match[0], error);
|
|
46
|
+
// Continue to next match
|
|
34
47
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
48
|
+
}
|
|
49
|
+
// If no JSON mentions found, fall back to legacy text format
|
|
50
|
+
if (mentions.length === 0) {
|
|
51
|
+
const legacyMatches = Array.from(text.matchAll(this.LEGACY_MENTION_REGEX));
|
|
52
|
+
for (const match of legacyMatches) {
|
|
53
|
+
// Extract the mention name (either quoted or unquoted)
|
|
54
|
+
const mentionName = match[1] || match[2];
|
|
55
|
+
if (!mentionName)
|
|
56
|
+
continue;
|
|
57
|
+
// Try to match against agents first
|
|
58
|
+
const agent = this.findAgent(mentionName, availableAgents);
|
|
59
|
+
if (agent) {
|
|
39
60
|
mentions.push({
|
|
40
|
-
type: '
|
|
41
|
-
id:
|
|
42
|
-
name:
|
|
61
|
+
type: 'agent',
|
|
62
|
+
id: agent.ID,
|
|
63
|
+
name: agent.Name || 'Unknown'
|
|
43
64
|
});
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
// Try to match against users
|
|
68
|
+
if (availableUsers) {
|
|
69
|
+
const user = this.findUser(mentionName, availableUsers);
|
|
70
|
+
if (user) {
|
|
71
|
+
mentions.push({
|
|
72
|
+
type: 'user',
|
|
73
|
+
id: user.ID,
|
|
74
|
+
name: user.Name
|
|
75
|
+
});
|
|
76
|
+
}
|
|
44
77
|
}
|
|
45
78
|
}
|
|
46
79
|
}
|
|
@@ -98,27 +131,74 @@ export class MentionParserService {
|
|
|
98
131
|
/**
|
|
99
132
|
* Validate mentions - check if all mentions are valid
|
|
100
133
|
* Returns array of invalid mention names
|
|
134
|
+
* Supports both JSON and legacy mention formats
|
|
101
135
|
*/
|
|
102
136
|
validateMentions(text, availableAgents, availableUsers) {
|
|
103
137
|
const invalidMentions = [];
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
138
|
+
// Check JSON mentions first
|
|
139
|
+
const jsonMatches = Array.from(text.matchAll(this.JSON_MENTION_REGEX));
|
|
140
|
+
if (jsonMatches.length > 0) {
|
|
141
|
+
for (const match of jsonMatches) {
|
|
142
|
+
try {
|
|
143
|
+
const jsonStr = match[0].substring(1);
|
|
144
|
+
const mentionData = JSON.parse(jsonStr);
|
|
145
|
+
const mentionName = mentionData.name;
|
|
146
|
+
if (mentionData.type === 'agent') {
|
|
147
|
+
const isAgent = this.findAgent(mentionName, availableAgents) !== null;
|
|
148
|
+
if (!isAgent) {
|
|
149
|
+
invalidMentions.push(mentionName);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
else if (mentionData.type === 'user') {
|
|
153
|
+
const isUser = availableUsers ? this.findUser(mentionName, availableUsers) !== null : false;
|
|
154
|
+
if (!isUser) {
|
|
155
|
+
invalidMentions.push(mentionName);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
catch (error) {
|
|
160
|
+
// Invalid JSON mention
|
|
161
|
+
invalidMentions.push(match[0]);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
// Fall back to legacy format
|
|
167
|
+
const matches = Array.from(text.matchAll(this.LEGACY_MENTION_REGEX));
|
|
168
|
+
for (const match of matches) {
|
|
169
|
+
const mentionName = match[1] || match[2];
|
|
170
|
+
if (!mentionName)
|
|
171
|
+
continue;
|
|
172
|
+
const isAgent = this.findAgent(mentionName, availableAgents) !== null;
|
|
173
|
+
const isUser = availableUsers ? this.findUser(mentionName, availableUsers) !== null : false;
|
|
174
|
+
if (!isAgent && !isUser) {
|
|
175
|
+
invalidMentions.push(mentionName);
|
|
176
|
+
}
|
|
113
177
|
}
|
|
114
178
|
}
|
|
115
179
|
return invalidMentions;
|
|
116
180
|
}
|
|
117
181
|
/**
|
|
118
182
|
* Extract all mention names from text (raw strings)
|
|
183
|
+
* Supports both JSON and legacy mention formats
|
|
119
184
|
*/
|
|
120
185
|
extractMentionNames(text) {
|
|
121
|
-
|
|
186
|
+
// Check JSON mentions first
|
|
187
|
+
const jsonMatches = Array.from(text.matchAll(this.JSON_MENTION_REGEX));
|
|
188
|
+
if (jsonMatches.length > 0) {
|
|
189
|
+
return jsonMatches.map(match => {
|
|
190
|
+
try {
|
|
191
|
+
const jsonStr = match[0].substring(1);
|
|
192
|
+
const mentionData = JSON.parse(jsonStr);
|
|
193
|
+
return mentionData.name;
|
|
194
|
+
}
|
|
195
|
+
catch (error) {
|
|
196
|
+
return '';
|
|
197
|
+
}
|
|
198
|
+
}).filter(Boolean);
|
|
199
|
+
}
|
|
200
|
+
// Fall back to legacy format
|
|
201
|
+
const matches = Array.from(text.matchAll(this.LEGACY_MENTION_REGEX));
|
|
122
202
|
return matches.map(match => match[1] || match[2]).filter(Boolean);
|
|
123
203
|
}
|
|
124
204
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention-parser.service.js","sourceRoot":"","sources":["../../../src/lib/services/mention-parser.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;;AAK3C
|
|
1
|
+
{"version":3,"file":"mention-parser.service.js","sourceRoot":"","sources":["../../../src/lib/services/mention-parser.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { ActionableCommand, AutomaticCommand } from '@memberjunction/ai-core-plus';
|
|
3
|
+
import { DataCacheService } from './data-cache.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* Service for handling UI commands from agents
|
|
7
|
+
* Emits events for commands to be handled by the host application
|
|
8
|
+
* This allows the generic conversations package to remain app-agnostic
|
|
9
|
+
*/
|
|
10
|
+
export declare class UICommandHandlerService {
|
|
11
|
+
private dataCacheService;
|
|
12
|
+
/**
|
|
13
|
+
* Event emitted when an actionable command should be executed
|
|
14
|
+
* Host application should subscribe to this and handle the command appropriately
|
|
15
|
+
*/
|
|
16
|
+
actionableCommandRequested: EventEmitter<ActionableCommand>;
|
|
17
|
+
/**
|
|
18
|
+
* Event emitted when an automatic command should be executed
|
|
19
|
+
* Host application should subscribe to this and handle the command appropriately
|
|
20
|
+
*/
|
|
21
|
+
automaticCommandRequested: EventEmitter<AutomaticCommand>;
|
|
22
|
+
constructor(dataCacheService: DataCacheService);
|
|
23
|
+
/**
|
|
24
|
+
* Execute an actionable command (triggered by user clicking a button)
|
|
25
|
+
* Emits the command for the host application to handle
|
|
26
|
+
*/
|
|
27
|
+
executeActionableCommand(command: ActionableCommand): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Execute an automatic command (runs immediately without user interaction)
|
|
30
|
+
* Special handling: refresh:data commands execute locally, others emit to host
|
|
31
|
+
*/
|
|
32
|
+
executeAutomaticCommand(command: AutomaticCommand): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Execute all automatic commands from an agent result
|
|
35
|
+
*/
|
|
36
|
+
executeAutomaticCommands(commands: AutomaticCommand[]): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Handle refreshing data (entity data or caches)
|
|
39
|
+
* This is handled locally as it's a generic operation that doesn't require host app knowledge
|
|
40
|
+
*/
|
|
41
|
+
private handleRefreshData;
|
|
42
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UICommandHandlerService, never>;
|
|
43
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<UICommandHandlerService>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=ui-command-handler.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-command-handler.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/ui-command-handler.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAsB,MAAM,8BAA8B,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;;AAExD;;;;GAIG;AACH,qBAGa,uBAAuB;IAchC,OAAO,CAAC,gBAAgB;IAb1B;;;OAGG;IACI,0BAA0B,kCAAyC;IAE1E;;;OAGG;IACI,yBAAyB,iCAAwC;gBAG9D,gBAAgB,EAAE,gBAAgB;IAG5C;;;OAGG;IACU,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhF;;;OAGG;IACU,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9E;;OAEG;IACU,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAclF;;;OAGG;YACW,iBAAiB;yCAhEpB,uBAAuB;6CAAvB,uBAAuB;CAiFnC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Injectable, EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./data-cache.service";
|
|
4
|
+
/**
|
|
5
|
+
* Service for handling UI commands from agents
|
|
6
|
+
* Emits events for commands to be handled by the host application
|
|
7
|
+
* This allows the generic conversations package to remain app-agnostic
|
|
8
|
+
*/
|
|
9
|
+
export class UICommandHandlerService {
|
|
10
|
+
dataCacheService;
|
|
11
|
+
/**
|
|
12
|
+
* Event emitted when an actionable command should be executed
|
|
13
|
+
* Host application should subscribe to this and handle the command appropriately
|
|
14
|
+
*/
|
|
15
|
+
actionableCommandRequested = new EventEmitter();
|
|
16
|
+
/**
|
|
17
|
+
* Event emitted when an automatic command should be executed
|
|
18
|
+
* Host application should subscribe to this and handle the command appropriately
|
|
19
|
+
*/
|
|
20
|
+
automaticCommandRequested = new EventEmitter();
|
|
21
|
+
constructor(dataCacheService) {
|
|
22
|
+
this.dataCacheService = dataCacheService;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Execute an actionable command (triggered by user clicking a button)
|
|
26
|
+
* Emits the command for the host application to handle
|
|
27
|
+
*/
|
|
28
|
+
async executeActionableCommand(command) {
|
|
29
|
+
console.log('📤 Emitting actionable command for host app:', command);
|
|
30
|
+
this.actionableCommandRequested.emit(command);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Execute an automatic command (runs immediately without user interaction)
|
|
34
|
+
* Special handling: refresh:data commands execute locally, others emit to host
|
|
35
|
+
*/
|
|
36
|
+
async executeAutomaticCommand(command) {
|
|
37
|
+
console.log('Executing automatic command:', command);
|
|
38
|
+
if (command.type === 'refresh:data') {
|
|
39
|
+
// Handle data refresh locally as it's a generic operation
|
|
40
|
+
await this.handleRefreshData(command);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
// Emit other automatic commands (like notifications) for host to handle
|
|
44
|
+
console.log('📤 Emitting automatic command for host app:', command);
|
|
45
|
+
this.automaticCommandRequested.emit(command);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Execute all automatic commands from an agent result
|
|
50
|
+
*/
|
|
51
|
+
async executeAutomaticCommands(commands) {
|
|
52
|
+
if (!commands || commands.length === 0) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
for (const command of commands) {
|
|
56
|
+
try {
|
|
57
|
+
await this.executeAutomaticCommand(command);
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
console.error('Error executing automatic command:', command, error);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Handle refreshing data (entity data or caches)
|
|
66
|
+
* This is handled locally as it's a generic operation that doesn't require host app knowledge
|
|
67
|
+
*/
|
|
68
|
+
async handleRefreshData(command) {
|
|
69
|
+
const { scope, entityNames, cacheName } = command;
|
|
70
|
+
if (scope === 'entity' && entityNames && entityNames.length > 0) {
|
|
71
|
+
// Refresh specific entity data
|
|
72
|
+
for (const entityName of entityNames) {
|
|
73
|
+
await this.dataCacheService.refreshEntity(entityName);
|
|
74
|
+
}
|
|
75
|
+
console.log('Refreshed entity data:', entityNames);
|
|
76
|
+
}
|
|
77
|
+
else if (scope === 'cache' && cacheName) {
|
|
78
|
+
// Refresh a specific cache
|
|
79
|
+
await this.dataCacheService.refreshCache(cacheName);
|
|
80
|
+
console.log('Refreshed cache:', cacheName);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
console.warn('Invalid refresh:data command parameters:', command);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
static ɵfac = function UICommandHandlerService_Factory(t) { return new (t || UICommandHandlerService)(i0.ɵɵinject(i1.DataCacheService)); };
|
|
87
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: UICommandHandlerService, factory: UICommandHandlerService.ɵfac, providedIn: 'root' });
|
|
88
|
+
}
|
|
89
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UICommandHandlerService, [{
|
|
90
|
+
type: Injectable,
|
|
91
|
+
args: [{
|
|
92
|
+
providedIn: 'root'
|
|
93
|
+
}]
|
|
94
|
+
}], () => [{ type: i1.DataCacheService }], null); })();
|
|
95
|
+
//# sourceMappingURL=ui-command-handler.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-command-handler.service.js","sourceRoot":"","sources":["../../../src/lib/services/ui-command-handler.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;;;AAIzD;;;;GAIG;AAIH,MAAM,OAAO,uBAAuB;IAcxB;IAbV;;;OAGG;IACI,0BAA0B,GAAG,IAAI,YAAY,EAAqB,CAAC;IAE1E;;;OAGG;IACI,yBAAyB,GAAG,IAAI,YAAY,EAAoB,CAAC;IAExE,YACU,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;IACzC,CAAC;IAEJ;;;OAGG;IACI,KAAK,CAAC,wBAAwB,CAAC,OAA0B;QAC9D,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,uBAAuB,CAAC,OAAyB;QAC5D,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;QAErD,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpC,0DAA0D;YAC1D,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,wEAAwE;YACxE,OAAO,CAAC,GAAG,CAAC,6CAA6C,EAAE,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,wBAAwB,CAAC,QAA4B;QAChE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO;QACT,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAAC,OAA2B;QACzD,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QAElD,IAAI,KAAK,KAAK,QAAQ,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChE,+BAA+B;YAC/B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,KAAK,KAAK,OAAO,IAAI,SAAS,EAAE,CAAC;YAC1C,2BAA2B;YAC3B,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,0CAA0C,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;iFAhFU,uBAAuB;gEAAvB,uBAAuB,WAAvB,uBAAuB,mBAFtB,MAAM;;iFAEP,uBAAuB;cAHnC,UAAU;eAAC;gBACV,UAAU,EAAE,MAAM;aACnB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-conversations",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.118.0",
|
|
4
4
|
"description": "MemberJunction: Conversation, Collection, and Artifact management components for any Angular application",
|
|
5
5
|
"main": "./dist/public-api.js",
|
|
6
6
|
"typings": "./dist/public-api.d.ts",
|
|
@@ -26,19 +26,20 @@
|
|
|
26
26
|
"@angular/router": "18.0.2"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@memberjunction/core": "2.
|
|
30
|
-
"@memberjunction/global": "2.
|
|
31
|
-
"@memberjunction/core-entities": "2.
|
|
32
|
-
"@memberjunction/graphql-dataprovider": "2.
|
|
33
|
-
"@memberjunction/ai-engine-base": "2.
|
|
34
|
-
"@memberjunction/ai": "2.
|
|
35
|
-
"@memberjunction/ai-core-plus": "2.
|
|
36
|
-
"@memberjunction/ng-base-types": "2.
|
|
37
|
-
"@memberjunction/ng-container-directives": "2.
|
|
38
|
-
"@memberjunction/ng-notifications": "2.
|
|
39
|
-
"@memberjunction/ng-code-editor": "2.
|
|
40
|
-
"@memberjunction/ng-tasks": "2.
|
|
41
|
-
"@memberjunction/ng-artifacts": "2.
|
|
29
|
+
"@memberjunction/core": "2.118.0",
|
|
30
|
+
"@memberjunction/global": "2.118.0",
|
|
31
|
+
"@memberjunction/core-entities": "2.118.0",
|
|
32
|
+
"@memberjunction/graphql-dataprovider": "2.118.0",
|
|
33
|
+
"@memberjunction/ai-engine-base": "2.118.0",
|
|
34
|
+
"@memberjunction/ai": "2.118.0",
|
|
35
|
+
"@memberjunction/ai-core-plus": "2.118.0",
|
|
36
|
+
"@memberjunction/ng-base-types": "2.118.0",
|
|
37
|
+
"@memberjunction/ng-container-directives": "2.118.0",
|
|
38
|
+
"@memberjunction/ng-notifications": "2.118.0",
|
|
39
|
+
"@memberjunction/ng-code-editor": "2.118.0",
|
|
40
|
+
"@memberjunction/ng-tasks": "2.118.0",
|
|
41
|
+
"@memberjunction/ng-artifacts": "2.118.0",
|
|
42
|
+
"@memberjunction/ng-testing": "2.118.0",
|
|
42
43
|
"@progress/kendo-angular-dialog": "16.2.0",
|
|
43
44
|
"@progress/kendo-angular-buttons": "16.2.0",
|
|
44
45
|
"@progress/kendo-angular-inputs": "16.2.0",
|