@memberjunction/ng-conversations 2.114.0 → 2.116.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/conversation/conversation-chat-area.component.d.ts +12 -0
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.js +149 -11
- package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-list.component.d.ts +9 -3
- package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-list.component.js +398 -197
- package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
- package/dist/lib/components/mention/mention-dropdown.component.js +31 -23
- package/dist/lib/components/mention/mention-dropdown.component.js.map +1 -1
- package/dist/lib/components/mention/mention-editor.component.d.ts +117 -0
- package/dist/lib/components/mention/mention-editor.component.d.ts.map +1 -0
- package/dist/lib/components/mention/mention-editor.component.js +550 -0
- package/dist/lib/components/mention/mention-editor.component.js.map +1 -0
- package/dist/lib/components/message/message-input-box.component.d.ts +22 -33
- package/dist/lib/components/message/message-input-box.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input-box.component.js +71 -172
- package/dist/lib/components/message/message-input-box.component.js.map +1 -1
- package/dist/lib/components/message/message-input.component.d.ts +18 -15
- package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input.component.js +108 -93
- package/dist/lib/components/message/message-input.component.js.map +1 -1
- package/dist/lib/components/message/message-item.component.d.ts +1 -0
- package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-item.component.js +49 -7
- package/dist/lib/components/message/message-item.component.js.map +1 -1
- package/dist/lib/components/navigation/conversation-navigation.component.js +2 -2
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts +6 -1
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.js +115 -73
- package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
- package/dist/lib/conversations.module.d.ts +55 -54
- package/dist/lib/conversations.module.d.ts.map +1 -1
- package/dist/lib/conversations.module.js +4 -0
- package/dist/lib/conversations.module.js.map +1 -1
- package/dist/lib/services/conversation-state.service.d.ts +14 -0
- package/dist/lib/services/conversation-state.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-state.service.js +32 -0
- package/dist/lib/services/conversation-state.service.js.map +1 -1
- package/dist/lib/services/conversation-streaming.service.d.ts +101 -0
- package/dist/lib/services/conversation-streaming.service.d.ts.map +1 -0
- package/dist/lib/services/conversation-streaming.service.js +319 -0
- package/dist/lib/services/conversation-streaming.service.js.map +1 -0
- package/dist/lib/services/mention-autocomplete.service.d.ts +8 -0
- package/dist/lib/services/mention-autocomplete.service.d.ts.map +1 -1
- package/dist/lib/services/mention-autocomplete.service.js +34 -3
- package/dist/lib/services/mention-autocomplete.service.js.map +1 -1
- package/dist/public-api.d.ts +2 -0
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +2 -0
- package/dist/public-api.js.map +1 -1
- package/package.json +14 -14
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { GraphQLDataProvider } from '@memberjunction/graphql-dataprovider';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./active-tasks.service";
|
|
6
|
+
import * as i2 from "./data-cache.service";
|
|
7
|
+
/**
|
|
8
|
+
* Global streaming service that manages PubSub subscriptions for all conversations.
|
|
9
|
+
*
|
|
10
|
+
* This service maintains a single WebSocket connection and routes updates to all
|
|
11
|
+
* registered message callbacks, regardless of which conversation is currently visible.
|
|
12
|
+
* This ensures that messages update correctly even when users navigate away and return.
|
|
13
|
+
*/
|
|
14
|
+
export class ConversationStreamingService {
|
|
15
|
+
activeTasks;
|
|
16
|
+
dataCache;
|
|
17
|
+
// Single PubSub subscription shared across the entire app
|
|
18
|
+
pushStatusSubscription;
|
|
19
|
+
// Registry of callbacks per conversation detail ID
|
|
20
|
+
// Multiple callbacks can be registered for the same message (e.g., different components)
|
|
21
|
+
callbackRegistry = new Map();
|
|
22
|
+
// Subject to emit connection status changes
|
|
23
|
+
connectionStatus$ = new BehaviorSubject('disconnected');
|
|
24
|
+
// Track if service has been initialized
|
|
25
|
+
initialized = false;
|
|
26
|
+
// Reconnection timeout
|
|
27
|
+
reconnectionTimeout;
|
|
28
|
+
constructor(activeTasks, dataCache) {
|
|
29
|
+
this.activeTasks = activeTasks;
|
|
30
|
+
this.dataCache = dataCache;
|
|
31
|
+
console.log('[ConversationStreamingService] Service created');
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Initialize the global PubSub subscription.
|
|
35
|
+
* Should be called once at app startup (e.g., in workspace component).
|
|
36
|
+
*/
|
|
37
|
+
initialize() {
|
|
38
|
+
if (this.initialized) {
|
|
39
|
+
console.log('[ConversationStreamingService] Already initialized, skipping');
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
console.log('[ConversationStreamingService] Initializing global PubSub subscription...');
|
|
43
|
+
try {
|
|
44
|
+
const dataProvider = GraphQLDataProvider.Instance;
|
|
45
|
+
const sessionId = dataProvider.sessionId || dataProvider._sessionId;
|
|
46
|
+
this.pushStatusSubscription = dataProvider.PushStatusUpdates().subscribe({
|
|
47
|
+
next: (status) => {
|
|
48
|
+
this.handlePushStatusUpdate(status);
|
|
49
|
+
},
|
|
50
|
+
error: (error) => {
|
|
51
|
+
console.error('[ConversationStreamingService] PubSub connection error:', error);
|
|
52
|
+
this.connectionStatus$.next('error');
|
|
53
|
+
this.scheduleReconnection();
|
|
54
|
+
},
|
|
55
|
+
complete: () => {
|
|
56
|
+
console.log('[ConversationStreamingService] PubSub connection closed');
|
|
57
|
+
this.connectionStatus$.next('disconnected');
|
|
58
|
+
this.scheduleReconnection();
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
this.initialized = true;
|
|
62
|
+
this.connectionStatus$.next('connected');
|
|
63
|
+
console.log('[ConversationStreamingService] Successfully initialized');
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
console.error('[ConversationStreamingService] Failed to initialize:', error);
|
|
67
|
+
this.connectionStatus$.next('error');
|
|
68
|
+
this.scheduleReconnection();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get the current connection status as an observable
|
|
73
|
+
*/
|
|
74
|
+
getConnectionStatus$() {
|
|
75
|
+
return this.connectionStatus$.asObservable();
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get the current connection status value
|
|
79
|
+
*/
|
|
80
|
+
getConnectionStatus() {
|
|
81
|
+
return this.connectionStatus$.value;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Register a callback for a specific conversation detail (message).
|
|
85
|
+
* The callback will be invoked whenever progress updates arrive for this message.
|
|
86
|
+
*
|
|
87
|
+
* @param conversationDetailId - The ID of the conversation detail entity
|
|
88
|
+
* @param callback - Function to call with progress updates
|
|
89
|
+
*/
|
|
90
|
+
registerMessageCallback(conversationDetailId, callback) {
|
|
91
|
+
const existing = this.callbackRegistry.get(conversationDetailId) || [];
|
|
92
|
+
existing.push(callback);
|
|
93
|
+
this.callbackRegistry.set(conversationDetailId, existing);
|
|
94
|
+
console.log(`[ConversationStreamingService] Registered callback for message ${conversationDetailId} (total callbacks: ${existing.length})`);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Unregister a callback for a specific conversation detail.
|
|
98
|
+
* If no callback is provided, all callbacks for the message are removed.
|
|
99
|
+
*
|
|
100
|
+
* @param conversationDetailId - The ID of the conversation detail entity
|
|
101
|
+
* @param callback - Optional specific callback to remove
|
|
102
|
+
*/
|
|
103
|
+
unregisterMessageCallback(conversationDetailId, callback) {
|
|
104
|
+
if (callback) {
|
|
105
|
+
// Remove specific callback
|
|
106
|
+
const existing = this.callbackRegistry.get(conversationDetailId) || [];
|
|
107
|
+
const filtered = existing.filter(cb => cb !== callback);
|
|
108
|
+
if (filtered.length > 0) {
|
|
109
|
+
this.callbackRegistry.set(conversationDetailId, filtered);
|
|
110
|
+
console.log(`[ConversationStreamingService] Unregistered specific callback for message ${conversationDetailId} (remaining: ${filtered.length})`);
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
this.callbackRegistry.delete(conversationDetailId);
|
|
114
|
+
console.log(`[ConversationStreamingService] Unregistered last callback for message ${conversationDetailId}`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
// Remove all callbacks for this message
|
|
119
|
+
const hadCallbacks = this.callbackRegistry.has(conversationDetailId);
|
|
120
|
+
this.callbackRegistry.delete(conversationDetailId);
|
|
121
|
+
if (hadCallbacks) {
|
|
122
|
+
console.log(`[ConversationStreamingService] Unregistered all callbacks for message ${conversationDetailId}`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Get the number of registered callbacks (for monitoring/debugging)
|
|
128
|
+
*/
|
|
129
|
+
getRegisteredCallbackCount() {
|
|
130
|
+
let count = 0;
|
|
131
|
+
for (const callbacks of this.callbackRegistry.values()) {
|
|
132
|
+
count += callbacks.length;
|
|
133
|
+
}
|
|
134
|
+
return count;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Get the number of messages being tracked (for monitoring/debugging)
|
|
138
|
+
*/
|
|
139
|
+
getTrackedMessageCount() {
|
|
140
|
+
return this.callbackRegistry.size;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Handle incoming PubSub status updates and route to registered callbacks
|
|
144
|
+
*/
|
|
145
|
+
async handlePushStatusUpdate(status) {
|
|
146
|
+
if (!status) {
|
|
147
|
+
console.warn('PubSub status is null or undefined');
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
try {
|
|
151
|
+
// Parse the status if it's a JSON string, otherwise use as-is
|
|
152
|
+
// GraphQL subscription emits JSON strings that need to be parsed
|
|
153
|
+
const statusObj = typeof status === 'string' ? JSON.parse(status) : status;
|
|
154
|
+
// Handle both resolver types for agent progress updates
|
|
155
|
+
if (statusObj.resolver === 'TaskOrchestrator') {
|
|
156
|
+
// Task graph execution (multi-step workflows)
|
|
157
|
+
await this.routeTaskProgress(statusObj);
|
|
158
|
+
}
|
|
159
|
+
else if (statusObj.resolver === 'RunAIAgentResolver') {
|
|
160
|
+
// Direct agent execution (Sage, Research Agent, etc.)
|
|
161
|
+
await this.routeAgentProgress(statusObj);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
catch (error) {
|
|
167
|
+
console.error('[ConversationStreamingService] Error processing push status update:', error);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Route task progress updates to registered callbacks.
|
|
172
|
+
* Uses conversationDetailId from PubSub message for direct routing.
|
|
173
|
+
*/
|
|
174
|
+
async routeTaskProgress(statusObj) {
|
|
175
|
+
try {
|
|
176
|
+
// Extract progress information from status object
|
|
177
|
+
const { taskName, message, percentComplete, metadata, conversationDetailId } = statusObj.data || {};
|
|
178
|
+
console.log(`[ConversationStreamingService] 📥 Received progress update:`, {
|
|
179
|
+
taskName,
|
|
180
|
+
hasMessage: !!message,
|
|
181
|
+
conversationDetailId,
|
|
182
|
+
registeredCallbacks: Array.from(this.callbackRegistry.keys())
|
|
183
|
+
});
|
|
184
|
+
if (!message) {
|
|
185
|
+
console.warn('[ConversationStreamingService] ⚠️ No message content in progress update');
|
|
186
|
+
return; // No message content to update
|
|
187
|
+
}
|
|
188
|
+
if (!conversationDetailId) {
|
|
189
|
+
console.warn('[ConversationStreamingService] ⚠️ Progress update missing conversationDetailId, cannot route', { taskName, message });
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
// Direct lookup using conversationDetailId from backend
|
|
193
|
+
const callbacks = this.callbackRegistry.get(conversationDetailId) || [];
|
|
194
|
+
if (callbacks.length === 0) {
|
|
195
|
+
// No callbacks registered - message might be in a hidden conversation
|
|
196
|
+
// This is fine, callbacks will be registered when conversation becomes visible
|
|
197
|
+
console.warn(`[ConversationStreamingService] ⚠️ No callbacks registered for message ${conversationDetailId}. Registered: [${Array.from(this.callbackRegistry.keys()).join(', ')}]`);
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
// Create progress update object
|
|
201
|
+
const progressUpdate = {
|
|
202
|
+
message,
|
|
203
|
+
percentComplete,
|
|
204
|
+
taskName,
|
|
205
|
+
conversationDetailId,
|
|
206
|
+
metadata
|
|
207
|
+
};
|
|
208
|
+
// Invoke all registered callbacks for this specific message
|
|
209
|
+
for (const callback of callbacks) {
|
|
210
|
+
try {
|
|
211
|
+
await callback(progressUpdate);
|
|
212
|
+
}
|
|
213
|
+
catch (error) {
|
|
214
|
+
console.error(`[ConversationStreamingService] Error executing callback for message ${conversationDetailId}:`, error);
|
|
215
|
+
// Continue with other callbacks even if one fails
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
console.log(`[ConversationStreamingService] ✅ Routed progress update to message ${conversationDetailId} (${callbacks.length} callback(s))`);
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
console.error('[ConversationStreamingService] Error routing task progress:', error);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Route agent progress updates (from RunAIAgentResolver) to registered callbacks.
|
|
226
|
+
* Uses conversationDetailID from agentRun data for direct routing.
|
|
227
|
+
*/
|
|
228
|
+
async routeAgentProgress(statusObj) {
|
|
229
|
+
try {
|
|
230
|
+
// Extract progress information from RunAIAgentResolver message
|
|
231
|
+
const { agentRun, progress } = statusObj.data || {};
|
|
232
|
+
const conversationDetailId = agentRun?.ConversationDetailID;
|
|
233
|
+
const message = progress?.message;
|
|
234
|
+
const percentComplete = progress?.percentage;
|
|
235
|
+
console.log(`[ConversationStreamingService] 📥 Received agent progress update:`, {
|
|
236
|
+
agentName: agentRun?.Agent,
|
|
237
|
+
hasMessage: !!message,
|
|
238
|
+
conversationDetailId,
|
|
239
|
+
registeredCallbacks: Array.from(this.callbackRegistry.keys())
|
|
240
|
+
});
|
|
241
|
+
if (!message) {
|
|
242
|
+
console.warn('[ConversationStreamingService] ⚠️ No message content in agent progress update');
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
if (!conversationDetailId) {
|
|
246
|
+
console.warn('[ConversationStreamingService] ⚠️ Agent progress update missing conversationDetailId', { agentName: agentRun?.Agent, message });
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
// Direct lookup using conversationDetailID from backend
|
|
250
|
+
const callbacks = this.callbackRegistry.get(conversationDetailId) || [];
|
|
251
|
+
if (callbacks.length === 0) {
|
|
252
|
+
console.warn(`[ConversationStreamingService] ⚠️ No callbacks registered for message ${conversationDetailId}. Registered: [${Array.from(this.callbackRegistry.keys()).join(', ')}]`);
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
// Create progress update object
|
|
256
|
+
const progressUpdate = {
|
|
257
|
+
message,
|
|
258
|
+
percentComplete,
|
|
259
|
+
taskName: agentRun?.Agent || 'Agent',
|
|
260
|
+
conversationDetailId,
|
|
261
|
+
metadata: { agentRun, progress }
|
|
262
|
+
};
|
|
263
|
+
// Invoke all registered callbacks for this specific message
|
|
264
|
+
for (const callback of callbacks) {
|
|
265
|
+
try {
|
|
266
|
+
await callback(progressUpdate);
|
|
267
|
+
}
|
|
268
|
+
catch (error) {
|
|
269
|
+
console.error(`[ConversationStreamingService] Error executing callback for message ${conversationDetailId}:`, error);
|
|
270
|
+
// Continue with other callbacks even if one fails
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
console.log(`[ConversationStreamingService] ✅ Routed agent progress to message ${conversationDetailId} (${callbacks.length} callback(s))`);
|
|
274
|
+
}
|
|
275
|
+
catch (error) {
|
|
276
|
+
console.error('[ConversationStreamingService] Error routing agent progress:', error);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Schedule a reconnection attempt after a delay
|
|
281
|
+
*/
|
|
282
|
+
scheduleReconnection() {
|
|
283
|
+
if (this.reconnectionTimeout) {
|
|
284
|
+
clearTimeout(this.reconnectionTimeout);
|
|
285
|
+
}
|
|
286
|
+
console.log('[ConversationStreamingService] Scheduling reconnection in 5 seconds...');
|
|
287
|
+
this.connectionStatus$.next('reconnecting');
|
|
288
|
+
this.reconnectionTimeout = setTimeout(() => {
|
|
289
|
+
console.log('[ConversationStreamingService] Attempting to reconnect...');
|
|
290
|
+
this.initialized = false; // Reset initialization flag
|
|
291
|
+
this.initialize();
|
|
292
|
+
}, 5000);
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Cleanup when service is destroyed
|
|
296
|
+
*/
|
|
297
|
+
ngOnDestroy() {
|
|
298
|
+
console.log('[ConversationStreamingService] Service destroying, cleaning up...');
|
|
299
|
+
if (this.reconnectionTimeout) {
|
|
300
|
+
clearTimeout(this.reconnectionTimeout);
|
|
301
|
+
}
|
|
302
|
+
if (this.pushStatusSubscription) {
|
|
303
|
+
this.pushStatusSubscription.unsubscribe();
|
|
304
|
+
this.pushStatusSubscription = undefined;
|
|
305
|
+
}
|
|
306
|
+
this.callbackRegistry.clear();
|
|
307
|
+
this.connectionStatus$.complete();
|
|
308
|
+
this.initialized = false;
|
|
309
|
+
}
|
|
310
|
+
static ɵfac = function ConversationStreamingService_Factory(t) { return new (t || ConversationStreamingService)(i0.ɵɵinject(i1.ActiveTasksService), i0.ɵɵinject(i2.DataCacheService)); };
|
|
311
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ConversationStreamingService, factory: ConversationStreamingService.ɵfac, providedIn: 'root' });
|
|
312
|
+
}
|
|
313
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ConversationStreamingService, [{
|
|
314
|
+
type: Injectable,
|
|
315
|
+
args: [{
|
|
316
|
+
providedIn: 'root'
|
|
317
|
+
}]
|
|
318
|
+
}], () => [{ type: i1.ActiveTasksService }, { type: i2.DataCacheService }], null); })();
|
|
319
|
+
//# sourceMappingURL=conversation-streaming.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-streaming.service.js","sourceRoot":"","sources":["../../../src/lib/services/conversation-streaming.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ export interface MentionSuggestion {
|
|
|
11
11
|
displayName: string;
|
|
12
12
|
description?: string;
|
|
13
13
|
avatarUrl?: string;
|
|
14
|
+
imageUrl?: string;
|
|
14
15
|
icon?: string;
|
|
15
16
|
}
|
|
16
17
|
/**
|
|
@@ -20,11 +21,17 @@ export declare class MentionAutocompleteService {
|
|
|
20
21
|
private agentsCache;
|
|
21
22
|
private usersCache;
|
|
22
23
|
private isInitialized;
|
|
24
|
+
private initializationPromise;
|
|
23
25
|
constructor();
|
|
24
26
|
/**
|
|
25
27
|
* Initialize the service by loading agents and users
|
|
28
|
+
* Prevents concurrent initialization with promise lock
|
|
26
29
|
*/
|
|
27
30
|
initialize(currentUser: UserInfo): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Internal initialization logic
|
|
33
|
+
*/
|
|
34
|
+
private _initializeInternal;
|
|
28
35
|
/**
|
|
29
36
|
* Get suggestions based on search query
|
|
30
37
|
* @param query The search text after @ symbol
|
|
@@ -51,6 +58,7 @@ export declare class MentionAutocompleteService {
|
|
|
51
58
|
getAvailableUsers(): UserInfo[];
|
|
52
59
|
/**
|
|
53
60
|
* Refresh the caches
|
|
61
|
+
* Resets initialization state and reloads agents
|
|
54
62
|
*/
|
|
55
63
|
refresh(currentUser: UserInfo): Promise<void>;
|
|
56
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<MentionAutocompleteService, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention-autocomplete.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/mention-autocomplete.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;;AAGhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAGa,0BAA0B;IACrC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,aAAa,CAAS;;
|
|
1
|
+
{"version":3,"file":"mention-autocomplete.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/mention-autocomplete.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;;AAGhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAGa,0BAA0B;IACrC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,qBAAqB,CAA8B;;IAI3D;;;OAGG;IACG,UAAU,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBtD;;OAEG;YACW,mBAAmB;IA6BjC;;;;;OAKG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,GAAE,OAAc,GAAG,iBAAiB,EAAE;IAmDhF;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,kBAAkB,IAAI,qBAAqB,EAAE;IAI7C;;OAEG;IACH,iBAAiB,IAAI,QAAQ,EAAE;IAI/B;;;OAGG;IACG,OAAO,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;yCA3LxC,0BAA0B;6CAA1B,0BAA0B;CAiMtC"}
|
|
@@ -8,26 +8,53 @@ export class MentionAutocompleteService {
|
|
|
8
8
|
agentsCache = [];
|
|
9
9
|
usersCache = [];
|
|
10
10
|
isInitialized = false;
|
|
11
|
+
initializationPromise = null;
|
|
11
12
|
constructor() { }
|
|
12
13
|
/**
|
|
13
14
|
* Initialize the service by loading agents and users
|
|
15
|
+
* Prevents concurrent initialization with promise lock
|
|
14
16
|
*/
|
|
15
17
|
async initialize(currentUser) {
|
|
16
|
-
|
|
18
|
+
// If already initialized, return immediately
|
|
19
|
+
if (this.isInitialized) {
|
|
17
20
|
return;
|
|
21
|
+
}
|
|
22
|
+
// If initialization is in progress, wait for it
|
|
23
|
+
if (this.initializationPromise) {
|
|
24
|
+
console.log('[MentionAutocomplete] Initialization already in progress, waiting...');
|
|
25
|
+
return this.initializationPromise;
|
|
26
|
+
}
|
|
27
|
+
// Create initialization promise and store it
|
|
28
|
+
this.initializationPromise = this._initializeInternal(currentUser);
|
|
29
|
+
try {
|
|
30
|
+
await this.initializationPromise;
|
|
31
|
+
}
|
|
32
|
+
finally {
|
|
33
|
+
this.initializationPromise = null;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Internal initialization logic
|
|
38
|
+
*/
|
|
39
|
+
async _initializeInternal(currentUser) {
|
|
18
40
|
try {
|
|
41
|
+
console.log('[MentionAutocomplete] Starting initialization...');
|
|
19
42
|
// Load agents from AIEngineBase
|
|
20
43
|
await AIEngineBase.Instance.Config(false);
|
|
21
|
-
|
|
44
|
+
const allAgents = AIEngineBase.Instance.Agents || [];
|
|
45
|
+
console.log('[MentionAutocomplete] AI Engine has', allAgents.length, 'total agents');
|
|
46
|
+
this.agentsCache = allAgents.filter(a => !a.ParentID && a.Status === 'Active' && a.InvocationMode !== 'Sub-Agent' && !a.IsRestricted);
|
|
22
47
|
console.log('[MentionAutocomplete] Initialized with agents:', this.agentsCache.map(a => a.Name));
|
|
23
|
-
console.log('[MentionAutocomplete]
|
|
48
|
+
console.log('[MentionAutocomplete] Filtered to', this.agentsCache.length, 'user-invocable agents');
|
|
24
49
|
// Load users from the system (optional - can be expanded later)
|
|
25
50
|
// For now, we'll just use the current user
|
|
26
51
|
this.usersCache = [currentUser];
|
|
27
52
|
this.isInitialized = true;
|
|
53
|
+
console.log('[MentionAutocomplete] Initialization complete');
|
|
28
54
|
}
|
|
29
55
|
catch (error) {
|
|
30
56
|
console.error('Failed to initialize MentionAutocompleteService:', error);
|
|
57
|
+
throw error;
|
|
31
58
|
}
|
|
32
59
|
}
|
|
33
60
|
/**
|
|
@@ -49,6 +76,7 @@ export class MentionAutocompleteService {
|
|
|
49
76
|
name: agent.Name || 'Unknown',
|
|
50
77
|
displayName: agent.Name || 'Unknown',
|
|
51
78
|
description: agent.Description || undefined,
|
|
79
|
+
imageUrl: agent.LogoURL || undefined, // Agent logo/avatar image
|
|
52
80
|
icon: this.getAgentIcon(agent)
|
|
53
81
|
});
|
|
54
82
|
}
|
|
@@ -143,9 +171,12 @@ export class MentionAutocompleteService {
|
|
|
143
171
|
}
|
|
144
172
|
/**
|
|
145
173
|
* Refresh the caches
|
|
174
|
+
* Resets initialization state and reloads agents
|
|
146
175
|
*/
|
|
147
176
|
async refresh(currentUser) {
|
|
177
|
+
console.log('[MentionAutocomplete] Refreshing cache...');
|
|
148
178
|
this.isInitialized = false;
|
|
179
|
+
this.initializationPromise = null;
|
|
149
180
|
await this.initialize(currentUser);
|
|
150
181
|
}
|
|
151
182
|
static ɵfac = function MentionAutocompleteService_Factory(t) { return new (t || MentionAutocompleteService)(); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mention-autocomplete.service.js","sourceRoot":"","sources":["../../../src/lib/services/mention-autocomplete.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;;
|
|
1
|
+
{"version":3,"file":"mention-autocomplete.service.js","sourceRoot":"","sources":["../../../src/lib/services/mention-autocomplete.service.ts"],"names":[],"mappings":"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"}
|
package/dist/public-api.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from './lib/services/artifact-state.service';
|
|
|
9
9
|
export * from './lib/services/agent-state.service';
|
|
10
10
|
export * from './lib/services/conversation-agent.service';
|
|
11
11
|
export * from './lib/services/active-tasks.service';
|
|
12
|
+
export * from './lib/services/conversation-streaming.service';
|
|
12
13
|
export * from './lib/services/dialog.service';
|
|
13
14
|
export * from './lib/services/export.service';
|
|
14
15
|
export * from './lib/services/notification.service';
|
|
@@ -30,6 +31,7 @@ export * from './lib/components/message/message-input.component';
|
|
|
30
31
|
export * from './lib/components/message/message-input-box.component';
|
|
31
32
|
export * from './lib/components/message/conversation-message-rating.component';
|
|
32
33
|
export * from './lib/components/mention/mention-dropdown.component';
|
|
34
|
+
export * from './lib/components/mention/mention-editor.component';
|
|
33
35
|
export * from './lib/components/collection/collection-tree.component';
|
|
34
36
|
export * from './lib/components/collection/collection-view.component';
|
|
35
37
|
export * from './lib/components/collection/collection-artifact-card.component';
|
package/dist/public-api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAKA,cAAc,4BAA4B,CAAC;AAG3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gDAAgD,CAAC;AAG/D,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAG7D,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,kEAAkE,CAAC;AACjF,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,sDAAsD,CAAC;AACrE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,wEAAwE,CAAC;AACvF,cAAc,8DAA8D,CAAC;AAC7E,cAAc,0DAA0D,CAAC;AACzE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC;AACvD,cAAc,4DAA4D,CAAC"}
|
|
1
|
+
{"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAKA,cAAc,4BAA4B,CAAC;AAG3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gDAAgD,CAAC;AAG/D,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAG7D,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,kEAAkE,CAAC;AACjF,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,sDAAsD,CAAC;AACrE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,wEAAwE,CAAC;AACvF,cAAc,8DAA8D,CAAC;AAC7E,cAAc,0DAA0D,CAAC;AACzE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC;AACvD,cAAc,4DAA4D,CAAC"}
|
package/dist/public-api.js
CHANGED
|
@@ -15,6 +15,7 @@ export * from './lib/services/artifact-state.service';
|
|
|
15
15
|
export * from './lib/services/agent-state.service';
|
|
16
16
|
export * from './lib/services/conversation-agent.service';
|
|
17
17
|
export * from './lib/services/active-tasks.service';
|
|
18
|
+
export * from './lib/services/conversation-streaming.service';
|
|
18
19
|
export * from './lib/services/dialog.service';
|
|
19
20
|
export * from './lib/services/export.service';
|
|
20
21
|
export * from './lib/services/notification.service';
|
|
@@ -37,6 +38,7 @@ export * from './lib/components/message/message-input.component';
|
|
|
37
38
|
export * from './lib/components/message/message-input-box.component';
|
|
38
39
|
export * from './lib/components/message/conversation-message-rating.component';
|
|
39
40
|
export * from './lib/components/mention/mention-dropdown.component';
|
|
41
|
+
export * from './lib/components/mention/mention-editor.component';
|
|
40
42
|
export * from './lib/components/collection/collection-tree.component';
|
|
41
43
|
export * from './lib/components/collection/collection-view.component';
|
|
42
44
|
export * from './lib/components/collection/collection-artifact-card.component';
|
package/dist/public-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-api.js","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,cAAc,4BAA4B,CAAC;AAE3C,SAAS;AACT,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gDAAgD,CAAC;AAE/D,mBAAmB;AACnB,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAE7D,aAAa;AACb,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,kEAAkE,CAAC;AACjF,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,sDAAsD,CAAC;AACrE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,wEAAwE,CAAC;AACvF,cAAc,8DAA8D,CAAC;AAC7E,cAAc,0DAA0D,CAAC;AACzE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC;AACvD,cAAc,4DAA4D,CAAC"}
|
|
1
|
+
{"version":3,"file":"public-api.js","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,cAAc,4BAA4B,CAAC;AAE3C,SAAS;AACT,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gDAAgD,CAAC;AAE/D,mBAAmB;AACnB,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8CAA8C,CAAC;AAE7D,aAAa;AACb,cAAc,6DAA6D,CAAC;AAC5E,cAAc,+DAA+D,CAAC;AAC9E,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,kEAAkE,CAAC;AACjF,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,sDAAsD,CAAC;AACrE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,wEAAwE,CAAC;AACvF,cAAc,8DAA8D,CAAC;AAC7E,cAAc,0DAA0D,CAAC;AACzE,cAAc,qDAAqD,CAAC;AACpE,cAAc,uDAAuD,CAAC;AACtE,cAAc,iDAAiD,CAAC;AAChE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,sDAAsD,CAAC;AACrE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,4DAA4D,CAAC;AAC3E,cAAc,wCAAwC,CAAC;AACvD,cAAc,4DAA4D,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ng-conversations",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.116.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,19 @@
|
|
|
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.116.0",
|
|
30
|
+
"@memberjunction/global": "2.116.0",
|
|
31
|
+
"@memberjunction/core-entities": "2.116.0",
|
|
32
|
+
"@memberjunction/graphql-dataprovider": "2.116.0",
|
|
33
|
+
"@memberjunction/ai-engine-base": "2.116.0",
|
|
34
|
+
"@memberjunction/ai": "2.116.0",
|
|
35
|
+
"@memberjunction/ai-core-plus": "2.116.0",
|
|
36
|
+
"@memberjunction/ng-base-types": "2.116.0",
|
|
37
|
+
"@memberjunction/ng-container-directives": "2.116.0",
|
|
38
|
+
"@memberjunction/ng-notifications": "2.116.0",
|
|
39
|
+
"@memberjunction/ng-code-editor": "2.116.0",
|
|
40
|
+
"@memberjunction/ng-tasks": "2.116.0",
|
|
41
|
+
"@memberjunction/ng-artifacts": "2.116.0",
|
|
42
42
|
"@progress/kendo-angular-dialog": "16.2.0",
|
|
43
43
|
"@progress/kendo-angular-buttons": "16.2.0",
|
|
44
44
|
"@progress/kendo-angular-inputs": "16.2.0",
|