@memberjunction/ng-conversations 5.36.0 → 5.38.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/README.md +2 -2
- package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts +47 -0
- package/dist/lib/components/conversation/conversation-agent-picker.component.d.ts.map +1 -0
- package/dist/lib/components/conversation/conversation-agent-picker.component.js +253 -0
- package/dist/lib/components/conversation/conversation-agent-picker.component.js.map +1 -0
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts +201 -4
- package/dist/lib/components/conversation/conversation-chat-area.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-chat-area.component.js +776 -263
- package/dist/lib/components/conversation/conversation-chat-area.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-empty-state.component.d.ts +2 -1
- package/dist/lib/components/conversation/conversation-empty-state.component.d.ts.map +1 -1
- package/dist/lib/components/conversation/conversation-empty-state.component.js +6 -3
- package/dist/lib/components/conversation/conversation-empty-state.component.js.map +1 -1
- package/dist/lib/components/conversation/conversation-mode-picker.component.d.ts +57 -0
- package/dist/lib/components/conversation/conversation-mode-picker.component.d.ts.map +1 -0
- package/dist/lib/components/conversation/conversation-mode-picker.component.js +252 -0
- package/dist/lib/components/conversation/conversation-mode-picker.component.js.map +1 -0
- package/dist/lib/components/dialogs/rating-dialog.component.d.ts +31 -0
- package/dist/lib/components/dialogs/rating-dialog.component.d.ts.map +1 -0
- package/dist/lib/components/dialogs/rating-dialog.component.js +290 -0
- package/dist/lib/components/dialogs/rating-dialog.component.js.map +1 -0
- package/dist/lib/components/mention/mention-editor.component.d.ts +1 -1
- package/dist/lib/components/mention/mention-editor.component.d.ts.map +1 -1
- package/dist/lib/components/mention/mention-editor.component.js +1 -0
- package/dist/lib/components/mention/mention-editor.component.js.map +1 -1
- package/dist/lib/components/message/conversation-message-rating.component.d.ts +43 -18
- package/dist/lib/components/message/conversation-message-rating.component.d.ts.map +1 -1
- package/dist/lib/components/message/conversation-message-rating.component.js +235 -193
- package/dist/lib/components/message/conversation-message-rating.component.js.map +1 -1
- package/dist/lib/components/message/message-input-box.component.d.ts +1 -1
- package/dist/lib/components/message/message-input-box.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input-box.component.js +1 -1
- package/dist/lib/components/message/message-input-box.component.js.map +1 -1
- package/dist/lib/components/message/message-input.component.d.ts +58 -4
- package/dist/lib/components/message/message-input.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-input.component.js +135 -21
- package/dist/lib/components/message/message-input.component.js.map +1 -1
- package/dist/lib/components/message/message-item.component.d.ts +0 -13
- package/dist/lib/components/message/message-item.component.d.ts.map +1 -1
- package/dist/lib/components/message/message-item.component.js +126 -152
- package/dist/lib/components/message/message-item.component.js.map +1 -1
- package/dist/lib/components/overlay/chat-overlay.component.d.ts +88 -5
- package/dist/lib/components/overlay/chat-overlay.component.d.ts.map +1 -1
- package/dist/lib/components/overlay/chat-overlay.component.js +296 -54
- package/dist/lib/components/overlay/chat-overlay.component.js.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts +11 -0
- package/dist/lib/components/workspace/conversation-workspace.component.d.ts.map +1 -1
- package/dist/lib/components/workspace/conversation-workspace.component.js +13 -3
- package/dist/lib/components/workspace/conversation-workspace.component.js.map +1 -1
- package/dist/lib/conversations.module.d.ts +59 -57
- package/dist/lib/conversations.module.d.ts.map +1 -1
- package/dist/lib/conversations.module.js +12 -4
- package/dist/lib/conversations.module.js.map +1 -1
- package/dist/lib/models/conversation-state.model.d.ts +0 -27
- package/dist/lib/models/conversation-state.model.d.ts.map +1 -1
- package/dist/lib/models/conversation-state.model.js.map +1 -1
- package/dist/lib/services/conversation-agent.service.d.ts +1 -9
- package/dist/lib/services/conversation-agent.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-agent.service.js +22 -121
- package/dist/lib/services/conversation-agent.service.js.map +1 -1
- package/dist/lib/services/conversation-attachment.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-attachment.service.js +5 -26
- package/dist/lib/services/conversation-attachment.service.js.map +1 -1
- package/dist/lib/services/conversation-bridge.service.d.ts +13 -0
- package/dist/lib/services/conversation-bridge.service.d.ts.map +1 -1
- package/dist/lib/services/conversation-bridge.service.js +15 -0
- package/dist/lib/services/conversation-bridge.service.js.map +1 -1
- package/dist/lib/services/data-cache.service.d.ts.map +1 -1
- package/dist/lib/services/data-cache.service.js +0 -1
- package/dist/lib/services/data-cache.service.js.map +1 -1
- package/dist/lib/services/dialog.service.d.ts +24 -0
- package/dist/lib/services/dialog.service.d.ts.map +1 -1
- package/dist/lib/services/dialog.service.js +45 -0
- package/dist/lib/services/dialog.service.js.map +1 -1
- package/package.json +23 -22
- package/dist/lib/components/message/suggested-responses.component.d.ts +0 -55
- package/dist/lib/components/message/suggested-responses.component.d.ts.map +0 -1
- package/dist/lib/components/message/suggested-responses.component.js +0 -207
- package/dist/lib/components/message/suggested-responses.component.js.map +0 -1
|
@@ -19,7 +19,6 @@ import { MessageItemComponent } from './components/message/message-item.componen
|
|
|
19
19
|
import { MessageListComponent } from './components/message/message-list.component';
|
|
20
20
|
import { MessageInputComponent } from './components/message/message-input.component';
|
|
21
21
|
import { MessageInputBoxComponent } from './components/message/message-input-box.component';
|
|
22
|
-
import { SuggestedResponsesComponent } from './components/message/suggested-responses.component';
|
|
23
22
|
import { DynamicFormsModule } from '@memberjunction/ng-forms';
|
|
24
23
|
import { ActionableCommandsComponent } from './components/message/actionable-commands.component';
|
|
25
24
|
import { MentionDropdownComponent } from './components/mention/mention-dropdown.component';
|
|
@@ -31,6 +30,8 @@ import { ConversationSidebarComponent } from './components/sidebar/conversation-
|
|
|
31
30
|
import { ConversationListComponent } from './components/conversation/conversation-list.component';
|
|
32
31
|
import { ConversationChatAreaComponent } from './components/conversation/conversation-chat-area.component';
|
|
33
32
|
import { ConversationEmptyStateComponent } from './components/conversation/conversation-empty-state.component';
|
|
33
|
+
import { ConversationAgentPickerComponent } from './components/conversation/conversation-agent-picker.component';
|
|
34
|
+
import { ConversationModePickerComponent } from './components/conversation/conversation-mode-picker.component';
|
|
34
35
|
import { ThreadPanelComponent } from './components/thread/thread-panel.component';
|
|
35
36
|
import { CollectionTreeComponent } from './components/collection/collection-tree.component';
|
|
36
37
|
import { CollectionViewComponent } from './components/collection/collection-view.component';
|
|
@@ -55,6 +56,7 @@ import { NotificationBadgeComponent } from './components/notification/notificati
|
|
|
55
56
|
import { ActivityIndicatorComponent } from './components/notification/activity-indicator.component';
|
|
56
57
|
import { ToastComponent } from './components/toast/toast.component';
|
|
57
58
|
import { InputDialogComponent } from './components/dialogs/input-dialog.component';
|
|
59
|
+
import { RatingDialogComponent } from './components/dialogs/rating-dialog.component';
|
|
58
60
|
import { CollectionShareModalComponent } from './components/collection/collection-share-modal.component';
|
|
59
61
|
import { UserPickerComponent } from './components/shared/user-picker.component';
|
|
60
62
|
import { ArtifactCollectionPickerModalComponent } from './components/collection/artifact-collection-picker-modal.component';
|
|
@@ -72,7 +74,6 @@ const COMPONENTS = [
|
|
|
72
74
|
MessageListComponent,
|
|
73
75
|
MessageInputComponent,
|
|
74
76
|
MessageInputBoxComponent,
|
|
75
|
-
SuggestedResponsesComponent,
|
|
76
77
|
ActionableCommandsComponent,
|
|
77
78
|
MentionDropdownComponent,
|
|
78
79
|
MentionEditorComponent,
|
|
@@ -83,6 +84,8 @@ const COMPONENTS = [
|
|
|
83
84
|
ConversationListComponent,
|
|
84
85
|
ConversationChatAreaComponent,
|
|
85
86
|
ConversationEmptyStateComponent,
|
|
87
|
+
ConversationAgentPickerComponent,
|
|
88
|
+
ConversationModePickerComponent,
|
|
86
89
|
ThreadPanelComponent,
|
|
87
90
|
CollectionTreeComponent,
|
|
88
91
|
CollectionViewComponent,
|
|
@@ -107,6 +110,7 @@ const COMPONENTS = [
|
|
|
107
110
|
ActivityIndicatorComponent,
|
|
108
111
|
ToastComponent,
|
|
109
112
|
InputDialogComponent,
|
|
113
|
+
RatingDialogComponent,
|
|
110
114
|
GlobalTasksPanelComponent,
|
|
111
115
|
ImageViewerComponent,
|
|
112
116
|
PinnedMessagesPanelComponent,
|
|
@@ -180,7 +184,6 @@ export class ConversationsModule {
|
|
|
180
184
|
MessageListComponent,
|
|
181
185
|
MessageInputComponent,
|
|
182
186
|
MessageInputBoxComponent,
|
|
183
|
-
SuggestedResponsesComponent,
|
|
184
187
|
ActionableCommandsComponent,
|
|
185
188
|
MentionDropdownComponent,
|
|
186
189
|
MentionEditorComponent,
|
|
@@ -191,6 +194,8 @@ export class ConversationsModule {
|
|
|
191
194
|
ConversationListComponent,
|
|
192
195
|
ConversationChatAreaComponent,
|
|
193
196
|
ConversationEmptyStateComponent,
|
|
197
|
+
ConversationAgentPickerComponent,
|
|
198
|
+
ConversationModePickerComponent,
|
|
194
199
|
ThreadPanelComponent,
|
|
195
200
|
CollectionTreeComponent,
|
|
196
201
|
CollectionViewComponent,
|
|
@@ -215,6 +220,7 @@ export class ConversationsModule {
|
|
|
215
220
|
ActivityIndicatorComponent,
|
|
216
221
|
ToastComponent,
|
|
217
222
|
InputDialogComponent,
|
|
223
|
+
RatingDialogComponent,
|
|
218
224
|
GlobalTasksPanelComponent,
|
|
219
225
|
ImageViewerComponent,
|
|
220
226
|
PinnedMessagesPanelComponent,
|
|
@@ -243,7 +249,6 @@ export class ConversationsModule {
|
|
|
243
249
|
MessageListComponent,
|
|
244
250
|
MessageInputComponent,
|
|
245
251
|
MessageInputBoxComponent,
|
|
246
|
-
SuggestedResponsesComponent,
|
|
247
252
|
ActionableCommandsComponent,
|
|
248
253
|
MentionDropdownComponent,
|
|
249
254
|
MentionEditorComponent,
|
|
@@ -254,6 +259,8 @@ export class ConversationsModule {
|
|
|
254
259
|
ConversationListComponent,
|
|
255
260
|
ConversationChatAreaComponent,
|
|
256
261
|
ConversationEmptyStateComponent,
|
|
262
|
+
ConversationAgentPickerComponent,
|
|
263
|
+
ConversationModePickerComponent,
|
|
257
264
|
ThreadPanelComponent,
|
|
258
265
|
CollectionTreeComponent,
|
|
259
266
|
CollectionViewComponent,
|
|
@@ -278,6 +285,7 @@ export class ConversationsModule {
|
|
|
278
285
|
ActivityIndicatorComponent,
|
|
279
286
|
ToastComponent,
|
|
280
287
|
InputDialogComponent,
|
|
288
|
+
RatingDialogComponent,
|
|
281
289
|
GlobalTasksPanelComponent,
|
|
282
290
|
ImageViewerComponent,
|
|
283
291
|
PinnedMessagesPanelComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversations.module.js","sourceRoot":"","sources":["../../src/lib/conversations.module.ts"],"names":[],"mappings":"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","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\n// MJ UI Components\nimport { MJButtonDirective, MJDatepickerComponent, MJDialogComponent, MJDialogActionsComponent } from '@memberjunction/ng-ui-components';\n\n// MemberJunction modules\nimport { ContainerDirectivesModule } from '@memberjunction/ng-container-directives';\nimport { CodeEditorModule } from '@memberjunction/ng-code-editor';\nimport { ArtifactsModule } from '@memberjunction/ng-artifacts';\nimport { TestingModule } from '@memberjunction/ng-testing';\nimport { SharedGenericModule } from '@memberjunction/ng-shared-generic';\n\n// Markdown module\nimport { MarkdownModule } from '@memberjunction/ng-markdown';\n\n// Resource permissions (generic share dialog)\nimport { ResourcePermissionsModule } from '@memberjunction/ng-resource-permissions';\n\n// Components\nimport { MessageItemComponent } from './components/message/message-item.component';\nimport { MessageListComponent } from './components/message/message-list.component';\nimport { MessageInputComponent } from './components/message/message-input.component';\nimport { MessageInputBoxComponent } from './components/message/message-input-box.component';\nimport { SuggestedResponsesComponent } from './components/message/suggested-responses.component';\nimport { DynamicFormsModule } from '@memberjunction/ng-forms';\nimport { ActionableCommandsComponent } from './components/message/actionable-commands.component';\nimport { MentionDropdownComponent } from './components/mention/mention-dropdown.component';\nimport { MentionEditorComponent } from './components/mention/mention-editor.component';\nimport { ConversationMessageRatingComponent } from './components/message/conversation-message-rating.component';\nimport { ConversationWorkspaceComponent } from './components/workspace/conversation-workspace.component';\nimport { ConversationNavigationComponent } from './components/navigation/conversation-navigation.component';\nimport { ConversationSidebarComponent } from './components/sidebar/conversation-sidebar.component';\nimport { ConversationListComponent } from './components/conversation/conversation-list.component';\nimport { ConversationChatAreaComponent } from './components/conversation/conversation-chat-area.component';\nimport { ConversationEmptyStateComponent } from './components/conversation/conversation-empty-state.component';\nimport { ThreadPanelComponent } from './components/thread/thread-panel.component';\nimport { CollectionTreeComponent } from './components/collection/collection-tree.component';\nimport { CollectionViewComponent } from './components/collection/collection-view.component';\nimport { CollectionArtifactCardComponent } from './components/collection/collection-artifact-card.component';\nimport { LibraryFullViewComponent } from './components/library/library-full-view.component';\nimport { CollectionFormModalComponent } from './components/collection/collection-form-modal.component';\nimport { ArtifactCreateModalComponent } from './components/collection/artifact-create-modal.component';\nimport { CollectionsFullViewComponent } from './components/collection/collections-full-view.component';\nimport { ProjectSelectorComponent } from './components/project/project-selector.component';\nimport { ProjectFormModalComponent } from './components/project/project-form-modal.component';\nimport { TasksFullViewComponent } from './components/task/tasks-full-view.component';\nimport { TasksDropdownComponent } from './components/tasks/tasks-dropdown.component';\nimport { TaskWidgetComponent } from './components/tasks/task-widget.component';\nimport { AgentProcessPanelComponent } from './components/agent/agent-process-panel.component';\nimport { ActiveAgentIndicatorComponent } from './components/agent/active-agent-indicator.component';\nimport { ActiveTasksPanelComponent } from './components/active-tasks/active-tasks-panel.component';\nimport { ShareModalComponent } from './components/share/share-modal.component';\nimport { MembersModalComponent } from './components/members/members-modal.component';\nimport { ExportModalComponent } from './components/export/export-modal.component';\nimport { SearchPanelComponent } from './components/search/search-panel.component';\nimport { NotificationBadgeComponent } from './components/notification/notification-badge.component';\nimport { ActivityIndicatorComponent } from './components/notification/activity-indicator.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport { InputDialogComponent } from './components/dialogs/input-dialog.component';\nimport { CollectionShareModalComponent } from './components/collection/collection-share-modal.component';\nimport { UserPickerComponent } from './components/shared/user-picker.component';\nimport { ArtifactCollectionPickerModalComponent } from './components/collection/artifact-collection-picker-modal.component';\nimport { ArtifactShareModalComponent } from './components/artifact/artifact-share-modal.component';\nimport { GlobalTasksPanelComponent } from './components/global-tasks/global-tasks-panel.component';\nimport { ImageViewerComponent } from './components/attachment/image-viewer.component';\nimport { PinnedMessagesPanelComponent } from './components/conversation/pinned-messages-panel.component';\nimport { ChatAgentsOverlayComponent } from './components/overlay/chat-overlay.component';\n\n// Directives\nimport { SearchShortcutDirective } from './directives/search-shortcut.directive';\n\n// Export all components (excluding standalone components)\nconst COMPONENTS = [\n MessageItemComponent,\n MessageListComponent,\n MessageInputComponent,\n MessageInputBoxComponent,\n SuggestedResponsesComponent,\n ActionableCommandsComponent,\n MentionDropdownComponent,\n MentionEditorComponent,\n ConversationMessageRatingComponent,\n ConversationWorkspaceComponent,\n ConversationNavigationComponent,\n ConversationSidebarComponent,\n ConversationListComponent,\n ConversationChatAreaComponent,\n ConversationEmptyStateComponent,\n ThreadPanelComponent,\n CollectionTreeComponent,\n CollectionViewComponent,\n CollectionArtifactCardComponent,\n LibraryFullViewComponent,\n CollectionFormModalComponent,\n ArtifactCreateModalComponent,\n CollectionsFullViewComponent,\n ProjectSelectorComponent,\n ProjectFormModalComponent,\n // TasksFullViewComponent - now standalone, imported below\n TasksDropdownComponent,\n TaskWidgetComponent,\n AgentProcessPanelComponent,\n ActiveAgentIndicatorComponent,\n ActiveTasksPanelComponent,\n ShareModalComponent,\n MembersModalComponent,\n ExportModalComponent,\n SearchPanelComponent,\n NotificationBadgeComponent,\n ActivityIndicatorComponent,\n ToastComponent,\n InputDialogComponent,\n GlobalTasksPanelComponent,\n ImageViewerComponent,\n PinnedMessagesPanelComponent,\n ChatAgentsOverlayComponent\n];\n\n@NgModule({\n declarations: [\n ...COMPONENTS,\n SearchShortcutDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n MJButtonDirective,\n MJDatepickerComponent,\n MJDialogComponent,\n MJDialogActionsComponent,\n ContainerDirectivesModule,\n CodeEditorModule,\n ArtifactsModule,\n TestingModule,\n SharedGenericModule,\n MarkdownModule,\n DynamicFormsModule,\n ResourcePermissionsModule,\n // Standalone components\n TasksFullViewComponent,\n CollectionShareModalComponent,\n UserPickerComponent,\n ArtifactCollectionPickerModalComponent,\n ArtifactShareModalComponent\n ],\n exports: [\n ...COMPONENTS,\n SearchShortcutDirective,\n // Standalone components\n TasksFullViewComponent\n ]\n})\nexport class ConversationsModule { }"]}
|
|
1
|
+
{"version":3,"file":"conversations.module.js","sourceRoot":"","sources":["../../src/lib/conversations.module.ts"],"names":[],"mappings":"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","sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\n// MJ UI Components\nimport { MJButtonDirective, MJDatepickerComponent, MJDialogComponent, MJDialogActionsComponent } from '@memberjunction/ng-ui-components';\n\n// MemberJunction modules\nimport { ContainerDirectivesModule } from '@memberjunction/ng-container-directives';\nimport { CodeEditorModule } from '@memberjunction/ng-code-editor';\nimport { ArtifactsModule } from '@memberjunction/ng-artifacts';\nimport { TestingModule } from '@memberjunction/ng-testing';\nimport { SharedGenericModule } from '@memberjunction/ng-shared-generic';\n\n// Markdown module\nimport { MarkdownModule } from '@memberjunction/ng-markdown';\n\n// Resource permissions (generic share dialog)\nimport { ResourcePermissionsModule } from '@memberjunction/ng-resource-permissions';\n\n// Components\nimport { MessageItemComponent } from './components/message/message-item.component';\nimport { MessageListComponent } from './components/message/message-list.component';\nimport { MessageInputComponent } from './components/message/message-input.component';\nimport { MessageInputBoxComponent } from './components/message/message-input-box.component';\nimport { DynamicFormsModule } from '@memberjunction/ng-forms';\nimport { ActionableCommandsComponent } from './components/message/actionable-commands.component';\nimport { MentionDropdownComponent } from './components/mention/mention-dropdown.component';\nimport { MentionEditorComponent } from './components/mention/mention-editor.component';\nimport { ConversationMessageRatingComponent } from './components/message/conversation-message-rating.component';\nimport { ConversationWorkspaceComponent } from './components/workspace/conversation-workspace.component';\nimport { ConversationNavigationComponent } from './components/navigation/conversation-navigation.component';\nimport { ConversationSidebarComponent } from './components/sidebar/conversation-sidebar.component';\nimport { ConversationListComponent } from './components/conversation/conversation-list.component';\nimport { ConversationChatAreaComponent } from './components/conversation/conversation-chat-area.component';\nimport { ConversationEmptyStateComponent } from './components/conversation/conversation-empty-state.component';\nimport { ConversationAgentPickerComponent } from './components/conversation/conversation-agent-picker.component';\nimport { ConversationModePickerComponent } from './components/conversation/conversation-mode-picker.component';\nimport { ThreadPanelComponent } from './components/thread/thread-panel.component';\nimport { CollectionTreeComponent } from './components/collection/collection-tree.component';\nimport { CollectionViewComponent } from './components/collection/collection-view.component';\nimport { CollectionArtifactCardComponent } from './components/collection/collection-artifact-card.component';\nimport { LibraryFullViewComponent } from './components/library/library-full-view.component';\nimport { CollectionFormModalComponent } from './components/collection/collection-form-modal.component';\nimport { ArtifactCreateModalComponent } from './components/collection/artifact-create-modal.component';\nimport { CollectionsFullViewComponent } from './components/collection/collections-full-view.component';\nimport { ProjectSelectorComponent } from './components/project/project-selector.component';\nimport { ProjectFormModalComponent } from './components/project/project-form-modal.component';\nimport { TasksFullViewComponent } from './components/task/tasks-full-view.component';\nimport { TasksDropdownComponent } from './components/tasks/tasks-dropdown.component';\nimport { TaskWidgetComponent } from './components/tasks/task-widget.component';\nimport { AgentProcessPanelComponent } from './components/agent/agent-process-panel.component';\nimport { ActiveAgentIndicatorComponent } from './components/agent/active-agent-indicator.component';\nimport { ActiveTasksPanelComponent } from './components/active-tasks/active-tasks-panel.component';\nimport { ShareModalComponent } from './components/share/share-modal.component';\nimport { MembersModalComponent } from './components/members/members-modal.component';\nimport { ExportModalComponent } from './components/export/export-modal.component';\nimport { SearchPanelComponent } from './components/search/search-panel.component';\nimport { NotificationBadgeComponent } from './components/notification/notification-badge.component';\nimport { ActivityIndicatorComponent } from './components/notification/activity-indicator.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport { InputDialogComponent } from './components/dialogs/input-dialog.component';\nimport { RatingDialogComponent } from './components/dialogs/rating-dialog.component';\nimport { CollectionShareModalComponent } from './components/collection/collection-share-modal.component';\nimport { UserPickerComponent } from './components/shared/user-picker.component';\nimport { ArtifactCollectionPickerModalComponent } from './components/collection/artifact-collection-picker-modal.component';\nimport { ArtifactShareModalComponent } from './components/artifact/artifact-share-modal.component';\nimport { GlobalTasksPanelComponent } from './components/global-tasks/global-tasks-panel.component';\nimport { ImageViewerComponent } from './components/attachment/image-viewer.component';\nimport { PinnedMessagesPanelComponent } from './components/conversation/pinned-messages-panel.component';\nimport { ChatAgentsOverlayComponent } from './components/overlay/chat-overlay.component';\n\n// Directives\nimport { SearchShortcutDirective } from './directives/search-shortcut.directive';\n\n// Export all components (excluding standalone components)\nconst COMPONENTS = [\n MessageItemComponent,\n MessageListComponent,\n MessageInputComponent,\n MessageInputBoxComponent,\n ActionableCommandsComponent,\n MentionDropdownComponent,\n MentionEditorComponent,\n ConversationMessageRatingComponent,\n ConversationWorkspaceComponent,\n ConversationNavigationComponent,\n ConversationSidebarComponent,\n ConversationListComponent,\n ConversationChatAreaComponent,\n ConversationEmptyStateComponent,\n ConversationAgentPickerComponent,\n ConversationModePickerComponent,\n ThreadPanelComponent,\n CollectionTreeComponent,\n CollectionViewComponent,\n CollectionArtifactCardComponent,\n LibraryFullViewComponent,\n CollectionFormModalComponent,\n ArtifactCreateModalComponent,\n CollectionsFullViewComponent,\n ProjectSelectorComponent,\n ProjectFormModalComponent,\n // TasksFullViewComponent - now standalone, imported below\n TasksDropdownComponent,\n TaskWidgetComponent,\n AgentProcessPanelComponent,\n ActiveAgentIndicatorComponent,\n ActiveTasksPanelComponent,\n ShareModalComponent,\n MembersModalComponent,\n ExportModalComponent,\n SearchPanelComponent,\n NotificationBadgeComponent,\n ActivityIndicatorComponent,\n ToastComponent,\n InputDialogComponent,\n RatingDialogComponent,\n GlobalTasksPanelComponent,\n ImageViewerComponent,\n PinnedMessagesPanelComponent,\n ChatAgentsOverlayComponent\n];\n\n@NgModule({\n declarations: [\n ...COMPONENTS,\n SearchShortcutDirective\n ],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n MJButtonDirective,\n MJDatepickerComponent,\n MJDialogComponent,\n MJDialogActionsComponent,\n ContainerDirectivesModule,\n CodeEditorModule,\n ArtifactsModule,\n TestingModule,\n SharedGenericModule,\n MarkdownModule,\n DynamicFormsModule,\n ResourcePermissionsModule,\n // Standalone components\n TasksFullViewComponent,\n CollectionShareModalComponent,\n UserPickerComponent,\n ArtifactCollectionPickerModalComponent,\n ArtifactShareModalComponent\n ],\n exports: [\n ...COMPONENTS,\n SearchShortcutDirective,\n // Standalone components\n TasksFullViewComponent\n ]\n})\nexport class ConversationsModule { }"]}
|
|
@@ -99,31 +99,4 @@ export interface MentionParseResult {
|
|
|
99
99
|
agentMention: Mention | null;
|
|
100
100
|
userMentions: Mention[];
|
|
101
101
|
}
|
|
102
|
-
/**
|
|
103
|
-
* Suggested response option for quick user replies
|
|
104
|
-
* These are displayed as interactive buttons below AI messages to streamline conversation flow
|
|
105
|
-
*/
|
|
106
|
-
export interface SuggestedResponse {
|
|
107
|
-
/** Display text for the button or input placeholder */
|
|
108
|
-
text: string;
|
|
109
|
-
/** Whether to show an input field (uses text as placeholder) instead of a button */
|
|
110
|
-
allowInput: boolean;
|
|
111
|
-
/** Optional Font Awesome icon class (e.g., "fa fa-leaf", "fa fa-pencil") */
|
|
112
|
-
iconClass?: string;
|
|
113
|
-
/** Optional data payload to include when response is selected */
|
|
114
|
-
data?: Record<string, any>;
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Parse result for suggested responses from a conversation detail
|
|
118
|
-
*/
|
|
119
|
-
export interface ParsedSuggestedResponses {
|
|
120
|
-
/** Array of suggested response objects */
|
|
121
|
-
responses: SuggestedResponse[];
|
|
122
|
-
/** Whether any response allows input */
|
|
123
|
-
hasInputOption: boolean;
|
|
124
|
-
/** The specific response that allows input (if any) */
|
|
125
|
-
inputResponse: SuggestedResponse | null;
|
|
126
|
-
/** All responses that are regular buttons (no input) */
|
|
127
|
-
regularResponses: SuggestedResponse[];
|
|
128
|
-
}
|
|
129
102
|
//# sourceMappingURL=conversation-state.model.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-state.model.d.ts","sourceRoot":"","sources":["../../../src/lib/models/conversation-state.model.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AAEtC;;;GAGG;AACH,MAAM,WAAW,gCAAgC;IAC/C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,0BAA0B,CAAC;IACtC,kEAAkE;IAClE,QAAQ,CAAC,EAAE;QACT,0BAA0B;QAC1B,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,2CAA2C;QAC3C,OAAO,EAAE,uBAAuB,CAAC;KAClC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAC7D,yDAAyD;IACzD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE;QAC/B,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,OAAO,EAAE,uBAAuB,CAAC;KAClC,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,aAAa,GAAG,OAAO,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,OAAO,EAAE,CAAC;CACzB
|
|
1
|
+
{"version":3,"file":"conversation-state.model.d.ts","sourceRoot":"","sources":["../../../src/lib/models/conversation-state.model.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AAEtC;;;GAGG;AACH,MAAM,WAAW,gCAAgC;IAC/C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,0BAA0B,CAAC;IACtC,kEAAkE;IAClE,QAAQ,CAAC,EAAE;QACT,0BAA0B;QAC1B,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,2CAA2C;QAC3C,OAAO,EAAE,uBAAuB,CAAC;KAClC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAC7D,yDAAyD;IACzD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE;QAC/B,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,OAAO,EAAE,uBAAuB,CAAC;KAClC,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,aAAa,GAAG,OAAO,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,OAAO,EAAE,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-state.model.js","sourceRoot":"","sources":["../../../src/lib/models/conversation-state.model.ts"],"names":[],"mappings":"","sourcesContent":["import {\n MJArtifactEntity,\n MJArtifactVersionEntity\n} from '@memberjunction/core-entities';\n\nimport {\n MJAIAgentRunEntityExtended\n} from \"@memberjunction/ai-core-plus\";\n\n/**\n * Peripheral data loaded for a conversation detail message\n * Contains related entities like agent runs and artifacts\n */\nexport interface ConversationDetailPeripheralData {\n /** Agent run information if this message was generated by an agent */\n agentRun?: MJAIAgentRunEntityExtended;\n /** Artifact information if this message has an output artifact */\n artifact?: {\n /** The artifact entity */\n artifact: MJArtifactEntity;\n /** The specific version of the artifact */\n version: MJArtifactVersionEntity;\n };\n}\n\n/**\n * Type-safe maps for peripheral data indexed by ConversationDetailID\n */\nexport interface PeripheralDataMaps {\n /** Map of ConversationDetailID -> AIAgentRun */\n agentRunsByDetailId: Map<string, MJAIAgentRunEntityExtended>;\n /** Map of ConversationDetailID -> {artifact, version} */\n artifactsByDetailId: Map<string, {\n artifact: MJArtifactEntity;\n version: MJArtifactVersionEntity;\n }>;\n}\n\n/**\n * Represents an active agent process\n */\nexport interface AgentProcess {\n id: string;\n agentId: string;\n agentName: string;\n agentColor: string;\n status: 'pending' | 'in_progress' | 'complete' | 'failed';\n message: string;\n progress?: number;\n startedAt: Date;\n}\n\n/**\n * Options for filtering tasks\n */\nexport interface TaskFilters {\n status?: string[];\n projectId?: string;\n assignedToUserId?: string;\n assignedToAgentId?: string;\n environmentId?: string;\n}\n\n/**\n * Options for creating public links\n */\nexport interface PublicLinkOptions {\n password?: string;\n expiresAt?: Date;\n maxViews?: number;\n}\n\n/**\n * Tab types for the main navigation\n */\nexport type NavigationTab = 'conversations' | 'collections' | 'tasks';\n\n/**\n * Layout modes for the workspace\n */\nexport type WorkspaceLayout = 'full' | 'compact' | 'embedded';\n\n/**\n * View modes for collections\n */\nexport type CollectionViewMode = 'grid' | 'list';\n\n/**\n * Sort options for artifacts\n */\nexport type ArtifactSortBy = 'name' | 'date' | 'type' | 'modified';\n\n/**\n * Grouping options for conversations\n */\nexport type ConversationGroupBy = 'project' | 'date' | 'none';\n\n/**\n * Type of entity being mentioned\n */\nexport type MentionType = 'agent' | 'user';\n\n/**\n * Represents a mention in a message (@Agent or @User)\n */\nexport interface Mention {\n type: MentionType;\n id: string;\n name: string;\n configurationId?: string; // Optional AI configuration preset ID for agents\n}\n\n/**\n * Result of parsing mentions from a message\n */\nexport interface MentionParseResult {\n mentions: Mention[];\n agentMention: Mention | null; // Single agent mention (first one found)\n userMentions: Mention[]; // All user mentions\n}
|
|
1
|
+
{"version":3,"file":"conversation-state.model.js","sourceRoot":"","sources":["../../../src/lib/models/conversation-state.model.ts"],"names":[],"mappings":"","sourcesContent":["import {\n MJArtifactEntity,\n MJArtifactVersionEntity\n} from '@memberjunction/core-entities';\n\nimport {\n MJAIAgentRunEntityExtended\n} from \"@memberjunction/ai-core-plus\";\n\n/**\n * Peripheral data loaded for a conversation detail message\n * Contains related entities like agent runs and artifacts\n */\nexport interface ConversationDetailPeripheralData {\n /** Agent run information if this message was generated by an agent */\n agentRun?: MJAIAgentRunEntityExtended;\n /** Artifact information if this message has an output artifact */\n artifact?: {\n /** The artifact entity */\n artifact: MJArtifactEntity;\n /** The specific version of the artifact */\n version: MJArtifactVersionEntity;\n };\n}\n\n/**\n * Type-safe maps for peripheral data indexed by ConversationDetailID\n */\nexport interface PeripheralDataMaps {\n /** Map of ConversationDetailID -> AIAgentRun */\n agentRunsByDetailId: Map<string, MJAIAgentRunEntityExtended>;\n /** Map of ConversationDetailID -> {artifact, version} */\n artifactsByDetailId: Map<string, {\n artifact: MJArtifactEntity;\n version: MJArtifactVersionEntity;\n }>;\n}\n\n/**\n * Represents an active agent process\n */\nexport interface AgentProcess {\n id: string;\n agentId: string;\n agentName: string;\n agentColor: string;\n status: 'pending' | 'in_progress' | 'complete' | 'failed';\n message: string;\n progress?: number;\n startedAt: Date;\n}\n\n/**\n * Options for filtering tasks\n */\nexport interface TaskFilters {\n status?: string[];\n projectId?: string;\n assignedToUserId?: string;\n assignedToAgentId?: string;\n environmentId?: string;\n}\n\n/**\n * Options for creating public links\n */\nexport interface PublicLinkOptions {\n password?: string;\n expiresAt?: Date;\n maxViews?: number;\n}\n\n/**\n * Tab types for the main navigation\n */\nexport type NavigationTab = 'conversations' | 'collections' | 'tasks';\n\n/**\n * Layout modes for the workspace\n */\nexport type WorkspaceLayout = 'full' | 'compact' | 'embedded';\n\n/**\n * View modes for collections\n */\nexport type CollectionViewMode = 'grid' | 'list';\n\n/**\n * Sort options for artifacts\n */\nexport type ArtifactSortBy = 'name' | 'date' | 'type' | 'modified';\n\n/**\n * Grouping options for conversations\n */\nexport type ConversationGroupBy = 'project' | 'date' | 'none';\n\n/**\n * Type of entity being mentioned\n */\nexport type MentionType = 'agent' | 'user';\n\n/**\n * Represents a mention in a message (@Agent or @User)\n */\nexport interface Mention {\n type: MentionType;\n id: string;\n name: string;\n configurationId?: string; // Optional AI configuration preset ID for agents\n}\n\n/**\n * Result of parsing mentions from a message\n */\nexport interface MentionParseResult {\n mentions: Mention[];\n agentMention: Mention | null; // Single agent mention (first one found)\n userMentions: Mention[]; // All user mentions\n}"]}
|
|
@@ -97,14 +97,6 @@ export declare class ConversationAgentService {
|
|
|
97
97
|
* Load artifacts for messages (OUTPUT direction only)
|
|
98
98
|
*/
|
|
99
99
|
private loadArtifactsForMessages;
|
|
100
|
-
/**
|
|
101
|
-
* Load attachments for messages and convert to AttachmentData format
|
|
102
|
-
*/
|
|
103
|
-
private loadAttachmentsForMessages;
|
|
104
|
-
/**
|
|
105
|
-
* Convert a MJConversationDetailAttachmentEntity to AttachmentData format
|
|
106
|
-
*/
|
|
107
|
-
private convertToAttachmentData;
|
|
108
100
|
/**
|
|
109
101
|
* Map ConversationDetail Role to agent message role
|
|
110
102
|
*/
|
|
@@ -132,7 +124,7 @@ export declare class ConversationAgentService {
|
|
|
132
124
|
* @param agentConfigurationPresetId Optional ID of the AIAgentConfiguration preset (will be mapped to AIConfigurationID)
|
|
133
125
|
* @returns The agent's execution result, or null if agent not found
|
|
134
126
|
*/
|
|
135
|
-
invokeSubAgent(agentName: string, conversationId: string, message: MJConversationDetailEntity, conversationHistory: MJConversationDetailEntity[], reasoning: string, conversationDetailId: string, payload?: unknown, onProgress?: AgentExecutionProgressCallback, sourceArtifactId?: string, sourceArtifactVersionId?: string, agentConfigurationPresetId?: string): Promise<ExecuteAgentResult | null>;
|
|
127
|
+
invokeSubAgent(agentName: string, conversationId: string, message: MJConversationDetailEntity, conversationHistory: MJConversationDetailEntity[], reasoning: string, conversationDetailId: string, payload?: unknown, onProgress?: AgentExecutionProgressCallback, sourceArtifactId?: string, sourceArtifactVersionId?: string, agentConfigurationPresetId?: string, appContext?: Record<string, unknown> | null): Promise<ExecuteAgentResult | null>;
|
|
136
128
|
/**
|
|
137
129
|
* Check if user's latest message should continue with the previous agent or route through Sage.
|
|
138
130
|
* Uses fast inference (<500ms) to determine intent and avoid unnecessary Sage overhead.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-agent.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/conversation-agent.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;AACnD,OAAO,EAAqB,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EAAE,kBAAkB,EAAE,8BAA8B,
|
|
1
|
+
{"version":3,"file":"conversation-agent.service.d.ts","sourceRoot":"","sources":["../../../src/lib/services/conversation-agent.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
import { Metadata, RunView } from '@memberjunction/core';
|
|
4
4
|
import { GraphQLAIClient } from '@memberjunction/graphql-dataprovider';
|
|
5
|
-
import { ConversationUtility } from '@memberjunction/ai-core-plus';
|
|
6
5
|
import { AIEngineBase, AIAgentPermissionHelper } from '@memberjunction/ai-engine-base';
|
|
7
6
|
import { MJNotificationService } from '@memberjunction/ng-notifications';
|
|
8
7
|
import { UUIDsEqual } from '@memberjunction/global';
|
|
@@ -238,57 +237,28 @@ export class ConversationAgentService {
|
|
|
238
237
|
const messageIds = recentHistory.map(msg => msg.ID).filter(id => id); // Filter out any undefined IDs
|
|
239
238
|
// Create lookup maps
|
|
240
239
|
const artifactsByDetailId = new Map(); // DetailID -> array of artifact JSON strings
|
|
241
|
-
|
|
240
|
+
// attachmentsByDetailId removed — artifact junction is the single source of truth
|
|
241
|
+
// after the backfill migration. Multimodal content handled server-side.
|
|
242
242
|
if (messageIds.length > 0) {
|
|
243
243
|
const rv = RunView.FromMetadataProvider(this.Provider);
|
|
244
|
-
// Load artifacts
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
244
|
+
// Load artifacts for messages. Since the backfill migration
|
|
245
|
+
// (V202605271400__Backfill_Attachment_Artifacts) converted all legacy
|
|
246
|
+
// ConversationDetailAttachment rows to artifact pairs, the artifact
|
|
247
|
+
// junction is the single source of truth. Multimodal content (images,
|
|
248
|
+
// audio, video) is handled server-side by the resolver's artifact path.
|
|
249
|
+
const artifactsLoaded = await this.loadArtifactsForMessages(rv, messageIds, artifactsByDetailId);
|
|
249
250
|
if (artifactsLoaded) {
|
|
250
251
|
console.log(`📦 Loaded ${artifactsByDetailId.size} artifact groups for ${messageIds.length} messages`);
|
|
251
252
|
}
|
|
252
|
-
if (attachmentsLoaded) {
|
|
253
|
-
console.log(`🖼️ Loaded ${attachmentsByDetailId.size} attachment groups for ${messageIds.length} messages`);
|
|
254
|
-
}
|
|
255
253
|
}
|
|
256
|
-
// Build messages with
|
|
254
|
+
// Build messages with artifact context
|
|
257
255
|
for (const msg of recentHistory) {
|
|
258
256
|
const messageText = msg.Message || '';
|
|
259
257
|
const artifacts = artifactsByDetailId.get(msg.ID);
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
// Use BuildChatMessageContent to create proper content blocks for multimodal
|
|
265
|
-
content = await ConversationUtility.BuildChatMessageContent(messageText, attachments);
|
|
266
|
-
// Append artifacts to text content if present
|
|
267
|
-
if (artifacts && artifacts.length > 0) {
|
|
268
|
-
const artifactText = artifacts.map(json => `\n\n# Artifact\n${json}\n`).join('');
|
|
269
|
-
if (typeof content === 'string') {
|
|
270
|
-
content = content + artifactText;
|
|
271
|
-
}
|
|
272
|
-
else if (Array.isArray(content)) {
|
|
273
|
-
// Find or create text block and append artifacts
|
|
274
|
-
const textBlock = content.find(b => b.type === 'text');
|
|
275
|
-
if (textBlock && textBlock.content) {
|
|
276
|
-
textBlock.content += artifactText;
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
content.push({ type: 'text', content: artifactText });
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
else {
|
|
285
|
-
// No attachments - use simple string content
|
|
286
|
-
content = messageText;
|
|
287
|
-
// Append artifacts
|
|
288
|
-
if (artifacts && artifacts.length > 0) {
|
|
289
|
-
for (const artifactJson of artifacts) {
|
|
290
|
-
content += `\n\n# Artifact\n${artifactJson}\n`;
|
|
291
|
-
}
|
|
258
|
+
let content = messageText;
|
|
259
|
+
if (artifacts && artifacts.length > 0) {
|
|
260
|
+
for (const artifactJson of artifacts) {
|
|
261
|
+
content += `\n\n# Artifact\n${artifactJson}\n`;
|
|
292
262
|
}
|
|
293
263
|
}
|
|
294
264
|
messages.push({
|
|
@@ -339,82 +309,6 @@ export class ConversationAgentService {
|
|
|
339
309
|
}
|
|
340
310
|
return false;
|
|
341
311
|
}
|
|
342
|
-
/**
|
|
343
|
-
* Load attachments for messages and convert to AttachmentData format
|
|
344
|
-
*/
|
|
345
|
-
async loadAttachmentsForMessages(rv, messageIds, attachmentsByDetailId) {
|
|
346
|
-
console.log('[AgentService] loadAttachmentsForMessages - querying for messageIds:', messageIds);
|
|
347
|
-
try {
|
|
348
|
-
const filter = `ConversationDetailID IN ('${messageIds.join("','")}')`;
|
|
349
|
-
console.log('[AgentService] loadAttachmentsForMessages - filter:', filter);
|
|
350
|
-
const attachmentResult = await rv.RunView({
|
|
351
|
-
EntityName: 'MJ: Conversation Detail Attachments',
|
|
352
|
-
ExtraFilter: filter,
|
|
353
|
-
OrderBy: 'DisplayOrder ASC, __mj_CreatedAt ASC',
|
|
354
|
-
ResultType: 'entity_object'
|
|
355
|
-
});
|
|
356
|
-
console.log('[AgentService] loadAttachmentsForMessages - query result:', {
|
|
357
|
-
success: attachmentResult.Success,
|
|
358
|
-
count: attachmentResult.Results?.length || 0,
|
|
359
|
-
error: attachmentResult.ErrorMessage
|
|
360
|
-
});
|
|
361
|
-
if (attachmentResult.Success && attachmentResult.Results && attachmentResult.Results.length > 0) {
|
|
362
|
-
for (const att of attachmentResult.Results) {
|
|
363
|
-
console.log('[AgentService] loadAttachmentsForMessages - processing attachment:', {
|
|
364
|
-
id: att.ID,
|
|
365
|
-
detailId: att.ConversationDetailID,
|
|
366
|
-
mimeType: att.MimeType,
|
|
367
|
-
hasInlineData: !!att.InlineData,
|
|
368
|
-
hasFileID: !!att.FileID
|
|
369
|
-
});
|
|
370
|
-
// Convert to AttachmentData format
|
|
371
|
-
const attachmentData = this.convertToAttachmentData(att);
|
|
372
|
-
if (attachmentData) {
|
|
373
|
-
const existing = attachmentsByDetailId.get(att.ConversationDetailID) || [];
|
|
374
|
-
existing.push(attachmentData);
|
|
375
|
-
attachmentsByDetailId.set(att.ConversationDetailID, existing);
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
return true;
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
catch (error) {
|
|
382
|
-
console.error('Error loading attachments for conversation context:', error);
|
|
383
|
-
}
|
|
384
|
-
return false;
|
|
385
|
-
}
|
|
386
|
-
/**
|
|
387
|
-
* Convert a MJConversationDetailAttachmentEntity to AttachmentData format
|
|
388
|
-
*/
|
|
389
|
-
convertToAttachmentData(att) {
|
|
390
|
-
// Get the content - either inline data or file URL
|
|
391
|
-
let content = null;
|
|
392
|
-
if (att.InlineData) {
|
|
393
|
-
// Create data URL from inline base64 data
|
|
394
|
-
content = `data:${att.MimeType};base64,${att.InlineData}`;
|
|
395
|
-
}
|
|
396
|
-
else if (att.FileID) {
|
|
397
|
-
// TODO: Get pre-authenticated URL from MJStorage
|
|
398
|
-
// For now, skip attachments stored in external storage
|
|
399
|
-
console.warn(`Attachment ${att.ID} uses FileID storage - external URLs not yet supported`);
|
|
400
|
-
return null;
|
|
401
|
-
}
|
|
402
|
-
if (!content) {
|
|
403
|
-
return null;
|
|
404
|
-
}
|
|
405
|
-
// Determine attachment type from modality or MIME type
|
|
406
|
-
const attachmentType = ConversationUtility.GetAttachmentTypeFromMime(att.MimeType);
|
|
407
|
-
return {
|
|
408
|
-
type: attachmentType,
|
|
409
|
-
mimeType: att.MimeType,
|
|
410
|
-
fileName: att.FileName ?? undefined,
|
|
411
|
-
sizeBytes: att.FileSizeBytes ?? undefined,
|
|
412
|
-
width: att.Width ?? undefined,
|
|
413
|
-
height: att.Height ?? undefined,
|
|
414
|
-
durationSeconds: att.DurationSeconds ?? undefined,
|
|
415
|
-
content: content
|
|
416
|
-
};
|
|
417
|
-
}
|
|
418
312
|
/**
|
|
419
313
|
* Map ConversationDetail Role to agent message role
|
|
420
314
|
*/
|
|
@@ -453,7 +347,7 @@ export class ConversationAgentService {
|
|
|
453
347
|
* @param agentConfigurationPresetId Optional ID of the AIAgentConfiguration preset (will be mapped to AIConfigurationID)
|
|
454
348
|
* @returns The agent's execution result, or null if agent not found
|
|
455
349
|
*/
|
|
456
|
-
async invokeSubAgent(agentName, conversationId, message, conversationHistory, reasoning, conversationDetailId, payload, onProgress, sourceArtifactId, sourceArtifactVersionId, agentConfigurationPresetId) {
|
|
350
|
+
async invokeSubAgent(agentName, conversationId, message, conversationHistory, reasoning, conversationDetailId, payload, onProgress, sourceArtifactId, sourceArtifactVersionId, agentConfigurationPresetId, appContext) {
|
|
457
351
|
try {
|
|
458
352
|
// Ensure AIEngineBase is configured
|
|
459
353
|
await AIEngineBase.Instance.Config(false);
|
|
@@ -491,7 +385,14 @@ export class ConversationAgentService {
|
|
|
491
385
|
Data: {
|
|
492
386
|
conversationId: conversationId,
|
|
493
387
|
latestMessageId: message.ID,
|
|
494
|
-
invocationReason: reasoning
|
|
388
|
+
invocationReason: reasoning,
|
|
389
|
+
// Pass the embedder's appContext through to the agent runtime
|
|
390
|
+
// so direct-routed sub-agents (e.g. Form Builder invoked via the
|
|
391
|
+
// cockpit's `defaultAgentId`) see the same `appContext` block in
|
|
392
|
+
// their system prompt that Sage-routed agents do. Without this,
|
|
393
|
+
// the ActiveForm/Schema/OverrideID context the embedder
|
|
394
|
+
// assembles is dropped on the floor for direct routing.
|
|
395
|
+
...(appContext ? { appContext } : {}),
|
|
495
396
|
},
|
|
496
397
|
...(payload ? { Payload: payload } : {}),
|
|
497
398
|
...(aiConfigurationId ? { ConfigurationId: aiConfigurationId } : {}),
|