@memberjunction/ng-conversations 2.115.0 → 2.117.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.
Files changed (37) hide show
  1. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +12 -0
  2. package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
  3. package/dist/lib/components/conversation/conversation-chat-area.component.js +141 -7
  4. package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
  5. package/dist/lib/components/conversation/conversation-list.component.d.ts +9 -3
  6. package/dist/lib/components/conversation/conversation-list.component.d.ts.map +1 -1
  7. package/dist/lib/components/conversation/conversation-list.component.js +398 -197
  8. package/dist/lib/components/conversation/conversation-list.component.js.map +1 -1
  9. package/dist/lib/components/message/message-input-box.component.d.ts +4 -0
  10. package/dist/lib/components/message/message-input-box.component.d.ts.map +1 -1
  11. package/dist/lib/components/message/message-input-box.component.js +9 -0
  12. package/dist/lib/components/message/message-input-box.component.js.map +1 -1
  13. package/dist/lib/components/message/message-input.component.d.ts +18 -15
  14. package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
  15. package/dist/lib/components/message/message-input.component.js +108 -93
  16. package/dist/lib/components/message/message-input.component.js.map +1 -1
  17. package/dist/lib/components/message/message-item.component.d.ts +1 -0
  18. package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
  19. package/dist/lib/components/message/message-item.component.js +8 -4
  20. package/dist/lib/components/message/message-item.component.js.map +1 -1
  21. package/dist/lib/components/workspace/conversation-workspace.component.d.ts +3 -1
  22. package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
  23. package/dist/lib/components/workspace/conversation-workspace.component.js +24 -17
  24. package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
  25. package/dist/lib/services/conversation-state.service.d.ts +14 -0
  26. package/dist/lib/services/conversation-state.service.d.ts.map +1 -1
  27. package/dist/lib/services/conversation-state.service.js +32 -0
  28. package/dist/lib/services/conversation-state.service.js.map +1 -1
  29. package/dist/lib/services/conversation-streaming.service.d.ts +101 -0
  30. package/dist/lib/services/conversation-streaming.service.d.ts.map +1 -0
  31. package/dist/lib/services/conversation-streaming.service.js +319 -0
  32. package/dist/lib/services/conversation-streaming.service.js.map +1 -0
  33. package/dist/public-api.d.ts +1 -0
  34. package/dist/public-api.d.ts.map +1 -1
  35. package/dist/public-api.js +1 -0
  36. package/dist/public-api.js.map +1 -1
  37. 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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"}
@@ -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';
@@ -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,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"}
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"}
@@ -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';
@@ -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,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"}
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.115.0",
3
+ "version": "2.117.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.115.0",
30
- "@memberjunction/global": "2.115.0",
31
- "@memberjunction/core-entities": "2.115.0",
32
- "@memberjunction/graphql-dataprovider": "2.115.0",
33
- "@memberjunction/ai-engine-base": "2.115.0",
34
- "@memberjunction/ai": "2.115.0",
35
- "@memberjunction/ai-core-plus": "2.115.0",
36
- "@memberjunction/ng-base-types": "2.115.0",
37
- "@memberjunction/ng-container-directives": "2.115.0",
38
- "@memberjunction/ng-notifications": "2.115.0",
39
- "@memberjunction/ng-code-editor": "2.115.0",
40
- "@memberjunction/ng-tasks": "2.115.0",
41
- "@memberjunction/ng-artifacts": "2.115.0",
29
+ "@memberjunction/core": "2.117.0",
30
+ "@memberjunction/global": "2.117.0",
31
+ "@memberjunction/core-entities": "2.117.0",
32
+ "@memberjunction/graphql-dataprovider": "2.117.0",
33
+ "@memberjunction/ai-engine-base": "2.117.0",
34
+ "@memberjunction/ai": "2.117.0",
35
+ "@memberjunction/ai-core-plus": "2.117.0",
36
+ "@memberjunction/ng-base-types": "2.117.0",
37
+ "@memberjunction/ng-container-directives": "2.117.0",
38
+ "@memberjunction/ng-notifications": "2.117.0",
39
+ "@memberjunction/ng-code-editor": "2.117.0",
40
+ "@memberjunction/ng-tasks": "2.117.0",
41
+ "@memberjunction/ng-artifacts": "2.117.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",