@stack-spot/ai-chat-widget 1.36.1-betacitric.1 → 1.36.1
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/CHANGELOG.md +36 -0
- package/dist/StackspotAIWidget.d.ts.map +1 -1
- package/dist/StackspotAIWidget.js +7 -6
- package/dist/StackspotAIWidget.js.map +1 -1
- package/dist/app-metadata.json +17 -13
- package/dist/chat-interceptors/quick-commands.d.ts.map +1 -1
- package/dist/chat-interceptors/quick-commands.js +9 -3
- package/dist/chat-interceptors/quick-commands.js.map +1 -1
- package/dist/components/Accordion.d.ts +20 -0
- package/dist/components/Accordion.d.ts.map +1 -0
- package/dist/components/Accordion.js +51 -0
- package/dist/components/Accordion.js.map +1 -0
- package/dist/components/AdaptiveTextArea.d.ts +1 -1
- package/dist/components/AdaptiveTextArea.d.ts.map +1 -1
- package/dist/components/AdaptiveTextArea.js +1 -1
- package/dist/components/AdaptiveTextArea.js.map +1 -1
- package/dist/components/AgentCard/AgentCardCreate.d.ts.map +1 -1
- package/dist/components/AgentCard/AgentCardCreate.js +3 -3
- package/dist/components/AgentCard/AgentCardCreate.js.map +1 -1
- package/dist/components/AgentCard/index.d.ts.map +1 -1
- package/dist/components/AgentCard/index.js +6 -5
- package/dist/components/AgentCard/index.js.map +1 -1
- package/dist/components/ButtonFavorite.d.ts +7 -8
- package/dist/components/ButtonFavorite.d.ts.map +1 -1
- package/dist/components/ButtonFavorite.js +14 -5
- package/dist/components/ButtonFavorite.js.map +1 -1
- package/dist/components/Code.d.ts.map +1 -1
- package/dist/components/Code.js +9 -11
- package/dist/components/Code.js.map +1 -1
- package/dist/components/ComponentNavigator.d.ts.map +1 -1
- package/dist/components/ComponentNavigator.js +4 -2
- package/dist/components/ComponentNavigator.js.map +1 -1
- package/dist/components/FadingOverflow.d.ts.map +1 -1
- package/dist/components/FadingOverflow.js +4 -3
- package/dist/components/FadingOverflow.js.map +1 -1
- package/dist/components/FallbackBoundary/ErrorBoundary.d.ts +33 -0
- package/dist/components/FallbackBoundary/ErrorBoundary.d.ts.map +1 -0
- package/dist/components/FallbackBoundary/ErrorBoundary.js +52 -0
- package/dist/components/FallbackBoundary/ErrorBoundary.js.map +1 -0
- package/dist/components/FallbackBoundary/Loading.d.ts +2 -0
- package/dist/components/FallbackBoundary/Loading.d.ts.map +1 -0
- package/dist/components/FallbackBoundary/Loading.js +12 -0
- package/dist/components/FallbackBoundary/Loading.js.map +1 -0
- package/dist/components/FallbackBoundary/index.d.ts +17 -0
- package/dist/components/FallbackBoundary/index.d.ts.map +1 -0
- package/dist/components/FallbackBoundary/index.js +9 -0
- package/dist/components/FallbackBoundary/index.js.map +1 -0
- package/dist/components/FileDescription.d.ts.map +1 -1
- package/dist/components/FileDescription.js +4 -3
- package/dist/components/FileDescription.js.map +1 -1
- package/dist/components/HistoryList.js +1 -1
- package/dist/components/HistoryList.js.map +1 -1
- package/dist/components/IconInput.d.ts +10 -0
- package/dist/components/IconInput.d.ts.map +1 -0
- package/dist/components/IconInput.js +61 -0
- package/dist/components/IconInput.js.map +1 -0
- package/dist/components/ListResource.js +3 -3
- package/dist/components/ListResource.js.map +1 -1
- package/dist/components/Markdown.js +1 -1
- package/dist/components/Markdown.js.map +1 -1
- package/dist/components/Modal.d.ts.map +1 -1
- package/dist/components/Modal.js +4 -2
- package/dist/components/Modal.js.map +1 -1
- package/dist/components/OverlayMenu.d.ts +21 -0
- package/dist/components/OverlayMenu.d.ts.map +1 -0
- package/dist/components/OverlayMenu.js +79 -0
- package/dist/components/OverlayMenu.js.map +1 -0
- package/dist/components/ProgressBar.d.ts +37 -0
- package/dist/components/ProgressBar.d.ts.map +1 -0
- package/dist/components/ProgressBar.js +131 -0
- package/dist/components/ProgressBar.js.map +1 -0
- package/dist/components/QuickStartButton.d.ts +3 -2
- package/dist/components/QuickStartButton.d.ts.map +1 -1
- package/dist/components/QuickStartButton.js +3 -4
- package/dist/components/QuickStartButton.js.map +1 -1
- package/dist/components/RightPanelForm.d.ts.map +1 -1
- package/dist/components/RightPanelForm.js +13 -20
- package/dist/components/RightPanelForm.js.map +1 -1
- package/dist/components/RightPanelTabs.d.ts +4 -1
- package/dist/components/RightPanelTabs.d.ts.map +1 -1
- package/dist/components/RightPanelTabs.js +16 -4
- package/dist/components/RightPanelTabs.js.map +1 -1
- package/dist/components/Selector/index.d.ts.map +1 -1
- package/dist/components/Selector/index.js +8 -5
- package/dist/components/Selector/index.js.map +1 -1
- package/dist/components/Selector/styled.d.ts.map +1 -1
- package/dist/components/Selector/styled.js +5 -8
- package/dist/components/Selector/styled.js.map +1 -1
- package/dist/components/StackedBadge.js +5 -5
- package/dist/components/StackedBadge.js.map +1 -1
- package/dist/components/TabManager.d.ts.map +1 -1
- package/dist/components/TabManager.js +30 -5
- package/dist/components/TabManager.js.map +1 -1
- package/dist/components/ToolBadge.d.ts +8 -3
- package/dist/components/ToolBadge.d.ts.map +1 -1
- package/dist/components/ToolBadge.js +99 -21
- package/dist/components/ToolBadge.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +37 -0
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/Tooltip/Tooltip.js +30 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -0
- package/dist/components/Tooltip/TooltipAPI.d.ts +29 -0
- package/dist/components/Tooltip/TooltipAPI.d.ts.map +1 -0
- package/dist/components/Tooltip/TooltipAPI.js +107 -0
- package/dist/components/Tooltip/TooltipAPI.js.map +1 -0
- package/dist/components/Tooltip/context.d.ts +5 -0
- package/dist/components/Tooltip/context.d.ts.map +1 -0
- package/dist/components/Tooltip/context.js +18 -0
- package/dist/components/Tooltip/context.js.map +1 -0
- package/dist/components/Tooltip/index.d.ts +3 -0
- package/dist/components/Tooltip/index.d.ts.map +1 -0
- package/dist/components/Tooltip/index.js +3 -0
- package/dist/components/Tooltip/index.js.map +1 -0
- package/dist/components/Tooltip/style.d.ts +4 -0
- package/dist/components/Tooltip/style.d.ts.map +1 -0
- package/dist/components/Tooltip/style.js +22 -0
- package/dist/components/Tooltip/style.js.map +1 -0
- package/dist/components/Tooltip/types.d.ts +27 -0
- package/dist/components/Tooltip/types.d.ts.map +1 -0
- package/dist/components/Tooltip/types.js +2 -0
- package/dist/components/Tooltip/types.js.map +1 -0
- package/dist/components/WorkspaceTabNavigator.d.ts.map +1 -1
- package/dist/components/WorkspaceTabNavigator.js +9 -7
- package/dist/components/WorkspaceTabNavigator.js.map +1 -1
- package/dist/components/form/DescribedCheckboxGroup.d.ts +2 -24
- package/dist/components/form/DescribedCheckboxGroup.d.ts.map +1 -1
- package/dist/components/form/DescribedCheckboxGroup.js +29 -46
- package/dist/components/form/DescribedCheckboxGroup.js.map +1 -1
- package/dist/components/form/DescribedRadioGroup.d.ts +4 -24
- package/dist/components/form/DescribedRadioGroup.d.ts.map +1 -1
- package/dist/components/form/DescribedRadioGroup.js +18 -39
- package/dist/components/form/DescribedRadioGroup.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/layout.css +26 -0
- package/dist/right-panel/DefaultPanel.d.ts.map +1 -1
- package/dist/right-panel/DefaultPanel.js +4 -2
- package/dist/right-panel/DefaultPanel.js.map +1 -1
- package/dist/state/ChatEntry.d.ts +4 -3
- package/dist/state/ChatEntry.d.ts.map +1 -1
- package/dist/state/ChatEntry.js.map +1 -1
- package/dist/state/constants.js +2 -2
- package/dist/state/constants.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/tools.d.ts +2 -1
- package/dist/utils/tools.d.ts.map +1 -1
- package/dist/utils/tools.js +12 -1
- package/dist/utils/tools.js.map +1 -1
- package/dist/utils/upload/FileUpload.d.ts.map +1 -1
- package/dist/utils/upload/FileUpload.js +1 -2
- package/dist/utils/upload/FileUpload.js.map +1 -1
- package/dist/views/Agents/AgentDescription.d.ts.map +1 -1
- package/dist/views/Agents/AgentDescription.js +6 -5
- package/dist/views/Agents/AgentDescription.js.map +1 -1
- package/dist/views/Agents/AgentsPanel.d.ts.map +1 -1
- package/dist/views/Agents/AgentsPanel.js +7 -7
- package/dist/views/Agents/AgentsPanel.js.map +1 -1
- package/dist/views/Agents/AgentsTab.d.ts.map +1 -1
- package/dist/views/Agents/AgentsTab.js +28 -29
- package/dist/views/Agents/AgentsTab.js.map +1 -1
- package/dist/views/Agents/dictionary.d.ts +1 -1
- package/dist/views/Chat/AgentInfo.d.ts.map +1 -1
- package/dist/views/Chat/AgentInfo.js +5 -3
- package/dist/views/Chat/AgentInfo.js.map +1 -1
- package/dist/views/Chat/ChatMessage.d.ts.map +1 -1
- package/dist/views/Chat/ChatMessage.js +36 -28
- package/dist/views/Chat/ChatMessage.js.map +1 -1
- package/dist/views/Chat/StepsList.d.ts.map +1 -1
- package/dist/views/Chat/StepsList.js +10 -10
- package/dist/views/Chat/StepsList.js.map +1 -1
- package/dist/views/Chat/styled.d.ts.map +1 -1
- package/dist/views/Chat/styled.js +2 -8
- package/dist/views/Chat/styled.js.map +1 -1
- package/dist/views/ChatHistory/HistoryItem.d.ts.map +1 -1
- package/dist/views/ChatHistory/HistoryItem.js +14 -7
- package/dist/views/ChatHistory/HistoryItem.js.map +1 -1
- package/dist/views/ChatHistory/index.js +1 -1
- package/dist/views/ChatHistory/index.js.map +1 -1
- package/dist/views/ChatHistory/styled.d.ts.map +1 -1
- package/dist/views/ChatHistory/styled.js +5 -3
- package/dist/views/ChatHistory/styled.js.map +1 -1
- package/dist/views/ChatTabSelection.d.ts.map +1 -1
- package/dist/views/ChatTabSelection.js +3 -2
- package/dist/views/ChatTabSelection.js.map +1 -1
- package/dist/views/Editor.d.ts.map +1 -1
- package/dist/views/Editor.js +12 -6
- package/dist/views/Editor.js.map +1 -1
- package/dist/views/Home/BuiltInAgent.d.ts.map +1 -1
- package/dist/views/Home/BuiltInAgent.js +3 -2
- package/dist/views/Home/BuiltInAgent.js.map +1 -1
- package/dist/views/Home/CustomAgent.js +3 -3
- package/dist/views/Home/CustomAgent.js.map +1 -1
- package/dist/views/Home/index.js +1 -1
- package/dist/views/Home/index.js.map +1 -1
- package/dist/views/Home/styled.d.ts.map +1 -1
- package/dist/views/Home/styled.js +22 -21
- package/dist/views/Home/styled.js.map +1 -1
- package/dist/views/KSDocument.d.ts.map +1 -1
- package/dist/views/KSDocument.js +4 -3
- package/dist/views/KSDocument.js.map +1 -1
- package/dist/views/KnowledgeSources.d.ts.map +1 -1
- package/dist/views/KnowledgeSources.js +36 -14
- package/dist/views/KnowledgeSources.js.map +1 -1
- package/dist/views/MessageInput/AgentSelector.d.ts.map +1 -1
- package/dist/views/MessageInput/AgentSelector.js +5 -7
- package/dist/views/MessageInput/AgentSelector.js.map +1 -1
- package/dist/views/MessageInput/ButtonAgent.d.ts.map +1 -1
- package/dist/views/MessageInput/ButtonAgent.js +5 -4
- package/dist/views/MessageInput/ButtonAgent.js.map +1 -1
- package/dist/views/MessageInput/ButtonBar.d.ts.map +1 -1
- package/dist/views/MessageInput/ButtonBar.js +4 -2
- package/dist/views/MessageInput/ButtonBar.js.map +1 -1
- package/dist/views/MessageInput/ContextBar.d.ts.map +1 -1
- package/dist/views/MessageInput/ContextBar.js +6 -4
- package/dist/views/MessageInput/ContextBar.js.map +1 -1
- package/dist/views/MessageInput/QuickCommandSelector.js +2 -2
- package/dist/views/MessageInput/QuickCommandSelector.js.map +1 -1
- package/dist/views/MessageInput/SelectContent.d.ts.map +1 -1
- package/dist/views/MessageInput/SelectContent.js +35 -30
- package/dist/views/MessageInput/SelectContent.js.map +1 -1
- package/dist/views/MessageInput/UploadBar.d.ts.map +1 -1
- package/dist/views/MessageInput/UploadBar.js +24 -2
- package/dist/views/MessageInput/UploadBar.js.map +1 -1
- package/dist/views/MessageInput/UploadDragNDrop.d.ts.map +1 -1
- package/dist/views/MessageInput/UploadDragNDrop.js +3 -2
- package/dist/views/MessageInput/UploadDragNDrop.js.map +1 -1
- package/dist/views/MessageInput/dictionary.d.ts +1 -1
- package/dist/views/MessageInput/dictionary.d.ts.map +1 -1
- package/dist/views/MessageInput/dictionary.js +4 -0
- package/dist/views/MessageInput/dictionary.js.map +1 -1
- package/dist/views/MessageInput/index.d.ts.map +1 -1
- package/dist/views/MessageInput/index.js +4 -3
- package/dist/views/MessageInput/index.js.map +1 -1
- package/dist/views/MessageInput/styled.d.ts +3 -1
- package/dist/views/MessageInput/styled.d.ts.map +1 -1
- package/dist/views/MessageInput/styled.js +27 -11
- package/dist/views/MessageInput/styled.js.map +1 -1
- package/dist/views/MinimizedHeader.d.ts.map +1 -1
- package/dist/views/MinimizedHeader.js +4 -2
- package/dist/views/MinimizedHeader.js.map +1 -1
- package/dist/views/Stacks.d.ts.map +1 -1
- package/dist/views/Stacks.js +28 -23
- package/dist/views/Stacks.js.map +1 -1
- package/dist/views/Steps/FlowChart/NodeStep.d.ts.map +1 -1
- package/dist/views/Steps/FlowChart/NodeStep.js +3 -3
- package/dist/views/Steps/FlowChart/NodeStep.js.map +1 -1
- package/dist/views/Steps/StepModal.d.ts.map +1 -1
- package/dist/views/Steps/StepModal.js +6 -4
- package/dist/views/Steps/StepModal.js.map +1 -1
- package/dist/views/Steps/dictionary.d.ts +1 -1
- package/dist/views/Steps/index.d.ts.map +1 -1
- package/dist/views/Steps/index.js +4 -3
- package/dist/views/Steps/index.js.map +1 -1
- package/dist/views/Steps/utils.d.ts +1 -2
- package/dist/views/Steps/utils.d.ts.map +1 -1
- package/dist/views/Steps/utils.js +8 -8
- package/dist/views/Steps/utils.js.map +1 -1
- package/dist/views/Tools.js +4 -2
- package/dist/views/Tools.js.map +1 -1
- package/dist/views/Workspaces/WorkspacesTab.d.ts.map +1 -1
- package/dist/views/Workspaces/WorkspacesTab.js +10 -7
- package/dist/views/Workspaces/WorkspacesTab.js.map +1 -1
- package/dist/views/Workspaces/index.js +2 -4
- package/dist/views/Workspaces/index.js.map +1 -1
- package/package.json +13 -12
- package/src/StackspotAIWidget.tsx +33 -30
- package/src/app-metadata.json +17 -13
- package/src/chat-interceptors/quick-commands.ts +11 -5
- package/src/components/Accordion.tsx +75 -0
- package/src/components/AdaptiveTextArea.tsx +1 -1
- package/src/components/AgentCard/AgentCardCreate.tsx +5 -3
- package/src/components/AgentCard/index.tsx +7 -7
- package/src/components/ButtonFavorite.tsx +47 -20
- package/src/components/Code.tsx +36 -31
- package/src/components/ComponentNavigator.tsx +8 -4
- package/src/components/FadingOverflow.tsx +7 -6
- package/src/components/FallbackBoundary/ErrorBoundary.tsx +71 -0
- package/src/components/FallbackBoundary/Loading.tsx +14 -0
- package/src/components/FallbackBoundary/index.tsx +26 -0
- package/src/components/FileDescription.tsx +10 -14
- package/src/components/HistoryList.tsx +1 -1
- package/src/components/IconInput.tsx +73 -0
- package/src/components/ListResource.tsx +5 -5
- package/src/components/Markdown.tsx +1 -1
- package/src/components/Modal.tsx +4 -2
- package/src/components/OverlayMenu.tsx +133 -0
- package/src/components/ProgressBar.tsx +183 -0
- package/src/components/QuickStartButton.tsx +4 -5
- package/src/components/RightPanelForm.tsx +13 -20
- package/src/components/RightPanelTabs.tsx +32 -4
- package/src/components/Selector/index.tsx +13 -17
- package/src/components/Selector/styled.ts +5 -8
- package/src/components/StackedBadge.tsx +5 -5
- package/src/components/TabManager.tsx +36 -8
- package/src/components/ToolBadge.tsx +129 -39
- package/src/components/Tooltip/Tooltip.tsx +78 -0
- package/src/components/Tooltip/TooltipAPI.ts +101 -0
- package/src/components/Tooltip/context.tsx +24 -0
- package/src/components/Tooltip/index.ts +2 -0
- package/src/components/Tooltip/style.tsx +24 -0
- package/src/components/Tooltip/types.ts +28 -0
- package/src/components/WorkspaceTabNavigator.tsx +25 -22
- package/src/components/form/DescribedCheckboxGroup.tsx +65 -90
- package/src/components/form/DescribedRadioGroup.tsx +46 -79
- package/src/index.ts +2 -1
- package/src/layout.css +26 -0
- package/src/right-panel/DefaultPanel.tsx +7 -3
- package/src/state/ChatEntry.ts +4 -3
- package/src/state/constants.ts +2 -2
- package/src/types.ts +3 -4
- package/src/utils/tools.ts +23 -2
- package/src/utils/upload/FileUpload.ts +1 -2
- package/src/views/Agents/AgentDescription.tsx +7 -6
- package/src/views/Agents/AgentsPanel.tsx +12 -11
- package/src/views/Agents/AgentsTab.tsx +56 -37
- package/src/views/Chat/AgentInfo.tsx +6 -7
- package/src/views/Chat/ChatMessage.tsx +118 -109
- package/src/views/Chat/StepsList.tsx +11 -10
- package/src/views/Chat/styled.ts +2 -8
- package/src/views/ChatHistory/HistoryItem.tsx +19 -12
- package/src/views/ChatHistory/index.tsx +1 -1
- package/src/views/ChatHistory/styled.ts +5 -3
- package/src/views/ChatTabSelection.tsx +3 -2
- package/src/views/Editor.tsx +14 -9
- package/src/views/Home/BuiltInAgent.tsx +8 -7
- package/src/views/Home/CustomAgent.tsx +3 -3
- package/src/views/Home/index.tsx +1 -1
- package/src/views/Home/styled.ts +22 -21
- package/src/views/KSDocument.tsx +8 -7
- package/src/views/KnowledgeSources.tsx +66 -24
- package/src/views/MessageInput/AgentSelector.tsx +8 -10
- package/src/views/MessageInput/ButtonAgent.tsx +12 -24
- package/src/views/MessageInput/ButtonBar.tsx +21 -25
- package/src/views/MessageInput/ContextBar.tsx +14 -12
- package/src/views/MessageInput/QuickCommandSelector.tsx +2 -2
- package/src/views/MessageInput/SelectContent.tsx +68 -39
- package/src/views/MessageInput/UploadBar.tsx +34 -2
- package/src/views/MessageInput/UploadDragNDrop.tsx +5 -2
- package/src/views/MessageInput/dictionary.ts +4 -0
- package/src/views/MessageInput/index.tsx +7 -5
- package/src/views/MessageInput/styled.ts +28 -12
- package/src/views/MinimizedHeader.tsx +7 -4
- package/src/views/Stacks.tsx +54 -31
- package/src/views/Steps/FlowChart/NodeStep.tsx +4 -6
- package/src/views/Steps/StepModal.tsx +18 -14
- package/src/views/Steps/index.tsx +5 -4
- package/src/views/Steps/utils.tsx +9 -9
- package/src/views/Tools.tsx +19 -12
- package/src/views/Workspaces/WorkspacesTab.tsx +21 -17
- package/src/views/Workspaces/index.tsx +2 -4
package/dist/state/constants.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export const acceptedFileTypes = [
|
|
2
|
-
'json', 'yaml', 'txt', 'md', 'json', 'yaml', 'pdf', /*'xls'
|
|
2
|
+
'json', 'yaml', 'txt', 'md', 'json', 'yaml', 'pdf', /*'xls',*/ 'xlsx', 'csv', 'cbl', 'cpp', 'cxx', 'cc', 'c', 'hpp', 'hxx', 'hh', 'h',
|
|
3
3
|
'cs', 'go', 'html', 'htm', 'kt', 'kts', 'md', 'php', 'proto', 'py', 'java', 'js', 'jsx', 'ts', 'tsx', 'rst', 'rb', 'rs', 'scala', 'swift',
|
|
4
4
|
'sql', 'yaml', 'yml', 'tf', 'sh', 'ps1', 'psd1', 'psm1', 'bat', 'cmd', 'rego', 'f', 'for', 'r', 'pl', 'vb', 'dart', 'hs', 'lua',
|
|
5
|
-
'asm', 'groovy', 'gvy', 'gy', 'mat', 'clj', 'lisp', 'm', 'cls', 'css', 'scss', 'json', 'jpg', 'jpeg', 'png',
|
|
5
|
+
'asm', 'groovy', 'gvy', 'gy', 'mat', 'clj', 'lisp', 'm', 'cls', 'css', 'scss', 'json', 'jpg', 'jpeg', 'png', 'docx', 'pptx',
|
|
6
6
|
];
|
|
7
7
|
export const maxFileSize = { value: 10, unit: 'MB' };
|
|
8
8
|
export const maxUploadItems = 5;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/state/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/state/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG;IACrI,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO;IACzI,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAC/H,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM;CAC5H,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { WithIcon } from '@stack-spot/citric-icons';
|
|
2
1
|
import { WithStyle } from '@stack-spot/portal-theme';
|
|
3
2
|
export interface WithChildren<T = React.ReactNode> {
|
|
4
3
|
children?: T;
|
|
5
4
|
}
|
|
6
5
|
export type PropsOf<T extends React.FunctionComponent> = T extends React.FunctionComponent<infer P> ? P : never;
|
|
7
|
-
export
|
|
6
|
+
export interface ButtonAction extends WithStyle {
|
|
7
|
+
icon?: React.ReactElement;
|
|
8
8
|
color?: string;
|
|
9
9
|
label?: string;
|
|
10
10
|
ariaLabel?: string;
|
|
11
11
|
onClick: () => any;
|
|
12
|
-
}
|
|
12
|
+
}
|
|
13
13
|
export interface MinimizedActions {
|
|
14
14
|
/**
|
|
15
15
|
* When the chat is minimized, a button to collapse the window is rendered. This function is called whenever this button is clicked.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS;IAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC;CACd;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,KAAK,CAAC,iBAAiB,IAAI,CAAC,SAAS,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAE/G,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB"}
|
package/dist/utils/tools.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { BuiltinToolkitResponse, BuiltinToolResponse } from '@stack-spot/portal-network/api/agent';
|
|
2
|
+
import { CustomToolkitDto } from '@stack-spot/portal-network/api/agent-tools';
|
|
2
3
|
export type ToolWithImage = BuiltinToolResponse & {
|
|
3
4
|
id: string;
|
|
4
5
|
image?: string;
|
|
5
6
|
};
|
|
6
|
-
export declare function toolById(id: string, toolkits: BuiltinToolkitResponse[] | undefined): ToolWithImage | undefined;
|
|
7
|
+
export declare function toolById(id: string, toolkits: (BuiltinToolkitResponse | CustomToolkitDto)[] | undefined): ToolWithImage | undefined;
|
|
7
8
|
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAG7E,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAShF,wBAAgB,QAAQ,CACtB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,sBAAsB,GAAG,gBAAgB,CAAC,EAAE,GAAG,SAAS,GAClE,aAAa,GAAG,SAAS,CAa3B"}
|
package/dist/utils/tools.js
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
import { keyBy } from 'lodash';
|
|
2
|
+
function isBuiltinToolkit(toolkit) {
|
|
3
|
+
return 'image_url' in toolkit;
|
|
4
|
+
}
|
|
2
5
|
export function toolById(id, toolkits) {
|
|
3
|
-
const tools = toolkits
|
|
6
|
+
const tools = toolkits
|
|
7
|
+
?.map((toolkit) => toolkit.tools?.map((tool) => ({
|
|
8
|
+
...tool,
|
|
9
|
+
id: tool.id,
|
|
10
|
+
image: isBuiltinToolkit(toolkit)
|
|
11
|
+
? toolkit.image_url ?? undefined
|
|
12
|
+
: toolkit.avatar ?? undefined,
|
|
13
|
+
})))
|
|
14
|
+
.flat();
|
|
4
15
|
return keyBy(tools, 'id')[id];
|
|
5
16
|
}
|
|
6
17
|
//# sourceMappingURL=tools.js.map
|
package/dist/utils/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/utils/tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAI9B,SAAS,gBAAgB,CACvB,OAAkD;IAElD,OAAO,WAAW,IAAI,OAAO,CAAA;AAC/B,CAAC;AAGD,MAAM,UAAU,QAAQ,CACtB,EAAU,EACV,QAAmE;IAEnE,MAAM,KAAK,GAAG,QAAQ;QACpB,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAChB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5B,GAAG,IAAI;QACP,EAAE,EAAE,IAAI,CAAC,EAAG;QACZ,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC;YAC9B,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,SAAS;YAChC,CAAC,CAAE,OAA4B,CAAC,MAAM,IAAI,SAAS;KACtD,CAAC,CAAC,CACJ;SACA,IAAI,EAAE,CAAA;IACT,OAAO,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUpload.d.ts","sourceRoot":"","sources":["../../../src/utils/upload/FileUpload.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"FileUpload.d.ts","sourceRoot":"","sources":["../../../src/utils/upload/FileUpload.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,MAAM,MAAM,wBAAwB,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAA;AAEzE,qBAAa,UAAU;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,MAAM,EAAE,gBAAgB,CAAY;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,eAAe,CAAwB;gBAEnC,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,cAA0B;IAOxD,OAAO,CAAC,YAAY;YAIN,MAAM;IAYpB,IAAI;IAIJ,KAAK;IAOL,QAAQ,CAAC,QAAQ,EAAE,wBAAwB;IAO3C,OAAO;CAIR"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { dataIntegrationClient } from '@stack-spot/portal-network';
|
|
2
2
|
import { pull } from 'lodash';
|
|
3
|
-
import { getFileId } from './utils.js';
|
|
4
3
|
export class FileUpload {
|
|
5
4
|
file;
|
|
6
5
|
status = 'pending';
|
|
@@ -12,8 +11,8 @@ export class FileUpload {
|
|
|
12
11
|
abortController = new AbortController();
|
|
13
12
|
constructor(file, type = 'CONTEXT') {
|
|
14
13
|
this.file = file;
|
|
15
|
-
this.id = getFileId(file);
|
|
16
14
|
this.type = type;
|
|
15
|
+
this.id = `${Date.now()}-${Math.random()}`;
|
|
17
16
|
this.upload();
|
|
18
17
|
}
|
|
19
18
|
runListeners() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUpload.js","sourceRoot":"","sources":["../../../src/utils/upload/FileUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"FileUpload.js","sourceRoot":"","sources":["../../../src/utils/upload/FileUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAK7B,MAAM,OAAO,UAAU;IACZ,IAAI,CAAM;IACnB,MAAM,GAAqB,SAAS,CAAA;IAC3B,EAAE,CAAQ;IACV,IAAI,CAAgB;IAC7B,KAAK,CAAM;IACX,QAAQ,CAAS;IACT,SAAS,GAA+B,EAAE,CAAA;IAC1C,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;IAE/C,YAAY,IAAU,EAAE,OAAuB,SAAS;QACtD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAA;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAA;IACf,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7C,CAAC;IAEO,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,qBAAqB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;YACjI,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;YAClB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO;YAAE,OAAM;QAClC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACvB,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,MAAM,EAAE,CAAA;IACf,CAAC;IAED,QAAQ,CAAC,QAAkC;QACzC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC7B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAChC,CAAC,CAAA;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;QACnB,IAAI,CAAC,IAAI,EAAE,CAAA;IACb,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentDescription.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentDescription.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AgentDescription.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentDescription.tsx"],"names":[],"mappings":"AASA,eAAO,MAAM,gBAAgB,gBAAiB;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,4CAmEjE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { Text } from '@citric/core';
|
|
3
|
+
import { Badge, Skeleton } from '@citric/ui';
|
|
3
4
|
import { agentToolsClient } from '@stack-spot/portal-network';
|
|
4
5
|
import { useMemo } from 'react';
|
|
5
6
|
import { ToolBadge } from '../../components/ToolBadge.js';
|
|
@@ -10,12 +11,12 @@ export const AgentDescription = ({ agentId }) => {
|
|
|
10
11
|
const t = useAgentsDictionary();
|
|
11
12
|
const [agent, , , { isLoading }] = agentToolsClient.agent.useStatefulQuery({ agentId: agentId }, { enabled: !!agentId });
|
|
12
13
|
const [toolKits, , , { isLoading: isLoadingToolKit }] = agentToolsClient.tools.useStatefulQuery({});
|
|
13
|
-
const numberOfKnowledgeSources = agent?.
|
|
14
|
-
const knowledgeSources = useMemo(() => agent?.
|
|
14
|
+
const numberOfKnowledgeSources = agent?.knowledge_sources_config?.knowledge_sources.length ?? 0;
|
|
15
|
+
const knowledgeSources = useMemo(() => agent?.knowledge_sources_config?.knowledge_sources_details?.map((ks, index) => (_jsx("li", { children: _jsx(Badge, { palette: "teal", appearance: "square", children: ks.name }) }, index))), [agent]);
|
|
15
16
|
const skeleton = useMemo(() => {
|
|
16
17
|
const loadingKS = [];
|
|
17
18
|
for (let i = 0; i < numberOfKnowledgeSources; i++) {
|
|
18
|
-
loadingKS.push(_jsx("li", { children: _jsx(Badge, {
|
|
19
|
+
loadingKS.push(_jsx("li", { children: _jsx(Badge, { palette: "teal", appearance: "square", children: _jsx(Skeleton, { className: "ks-skeleton" }) }) }, i));
|
|
19
20
|
}
|
|
20
21
|
return loadingKS;
|
|
21
22
|
}, [numberOfKnowledgeSources]);
|
|
@@ -34,6 +35,6 @@ export const AgentDescription = ({ agentId }) => {
|
|
|
34
35
|
}
|
|
35
36
|
return result;
|
|
36
37
|
}, [agent]);
|
|
37
|
-
return (_jsxs(AgentDescriptionBox, { children: [agent?.description && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: t.description }), _jsx(Text, { children: agent?.description })] }), (!!numberOfKnowledgeSources || !!knowledgeSources?.length) && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: "Knowledge sources" }), _jsx("ul", { children: isLoading || isLoadingToolKit ? skeleton : knowledgeSources })] }), !!tools.length && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: t.tools }), _jsx("ul", { children: tools })] }), agent?.model_name && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: "LLM" }), _jsx(Badge, {
|
|
38
|
+
return (_jsxs(AgentDescriptionBox, { children: [agent?.description && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: t.description }), _jsx(Text, { children: agent?.description })] }), (!!numberOfKnowledgeSources || !!knowledgeSources?.length) && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: "Knowledge sources" }), _jsx("ul", { children: isLoading || isLoadingToolKit ? skeleton : knowledgeSources })] }), !!tools.length && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: t.tools }), _jsx("ul", { children: tools })] }), agent?.model_name && _jsxs("section", { children: [_jsx(Text, { appearance: "microtext1", className: "title", children: "LLM" }), _jsx(Badge, { palette: "orange", appearance: "square", children: agent?.model_name })] })] }));
|
|
38
39
|
};
|
|
39
40
|
//# sourceMappingURL=AgentDescription.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentDescription.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentDescription.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"AgentDescription.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentDescription.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentsPanel.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentsPanel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AgentsPanel.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentsPanel.tsx"],"names":[],"mappings":"AAYA;;GAEG;AACH,eAAO,MAAM,WAAW,+CA0CvB,CAAA"}
|
|
@@ -25,12 +25,12 @@ export const AgentsPanel = () => {
|
|
|
25
25
|
}
|
|
26
26
|
}, [chat]);
|
|
27
27
|
const allTabsMap = {
|
|
28
|
-
favorite: {
|
|
29
|
-
builtin: {
|
|
30
|
-
personal: {
|
|
31
|
-
shared: {
|
|
32
|
-
workspace: {
|
|
33
|
-
account: {
|
|
28
|
+
favorite: { title: t.favorites, content: _jsx(AgentsTab, { visibility: "favorite", agent: agent }, "favorite") },
|
|
29
|
+
builtin: { title: t.builtin, content: _jsx(AgentsTab, { visibility: "built_in", agent: agent }, "builtin") },
|
|
30
|
+
personal: { title: t.personal, content: _jsx(AgentsTab, { visibility: "personal", agent: agent }, "personal") },
|
|
31
|
+
shared: { title: t.shared, content: _jsx(AgentsTab, { visibility: "shared", agent: agent }, "shared") },
|
|
32
|
+
workspace: { title: t.spots, content: _jsx(AgentsTabWorkspace, { visibility: "workspace", agent: agent }, "workspace") },
|
|
33
|
+
account: { title: t.account, content: _jsx(AgentsTab, { visibility: "account", agent: agent }, "account") },
|
|
34
34
|
};
|
|
35
35
|
const defaultScopes = ['favorite', 'builtin', 'personal', 'shared', 'workspace', 'account'];
|
|
36
36
|
const rawScopes = scopes?.length ? scopes : defaultScopes;
|
|
@@ -38,7 +38,7 @@ export const AgentsPanel = () => {
|
|
|
38
38
|
? ['favorite', 'builtin', 'personal']
|
|
39
39
|
: rawScopes;
|
|
40
40
|
const tabs = scopesToRender
|
|
41
|
-
.map(scope =>
|
|
41
|
+
.map(scope => allTabsMap[scope])
|
|
42
42
|
.filter(Boolean);
|
|
43
43
|
return (isGroupResourcesByScope ? (_jsx(RightPanelTabs, { tabs: tabs }, chat.id)) : (_jsx(RightPanelContentList, { children: _jsx(AgentsTab, { workspaceId: spotId, agent: agent }) })));
|
|
44
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentsPanel.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentsPanel.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"AgentsPanel.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentsPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentsTab.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentsTab.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AgentsTab.d.ts","sourceRoot":"","sources":["../../../src/views/Agents/AgentsTab.tsx"],"names":[],"mappings":"AAIA,OAAO,EAA8C,oBAAoB,EAAqB,MAAM,4BAA4B,CAAA;AAUhI,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAMtD,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,SAAS,yDAAiE,aAAa,4CAyEnG,CAAA;AAED,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,aAAa,2CASxF"}
|
|
@@ -1,54 +1,53 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { Button, IconBox, Text } from '@citric/core';
|
|
3
|
+
import { Agent, Search } from '@citric/icons';
|
|
4
4
|
import { Placeholder } from '@stack-spot/portal-components/Placeholder';
|
|
5
|
+
import { MiniLogo } from '@stack-spot/portal-components/svg';
|
|
5
6
|
import { agentToolsClient, workspaceAiClient } from '@stack-spot/portal-network';
|
|
6
|
-
import { useMemo, useState } from 'react';
|
|
7
|
+
import { useCallback, useMemo, useState } from 'react';
|
|
8
|
+
import { ButtonFavorite } from '../../components/ButtonFavorite.js';
|
|
7
9
|
import { DescribedRadioGroup } from '../../components/form/DescribedRadioGroup.js';
|
|
10
|
+
import { IconInput } from '../../components/IconInput.js';
|
|
8
11
|
import { WorkspaceTabNavigator } from '../../components/WorkspaceTabNavigator.js';
|
|
9
12
|
import { useCurrentChat } from '../../context/hooks.js';
|
|
10
13
|
import { useRightPanel } from '../../right-panel/hooks.js';
|
|
11
14
|
import { AgentDescription } from './AgentDescription.js';
|
|
12
15
|
import { useAgentsDictionary } from './dictionary.js';
|
|
16
|
+
import { AgentLabel } from './styled.js';
|
|
13
17
|
import { useAgentFavorites } from './useAgentFavorites.js';
|
|
14
18
|
export const AgentsTab = ({ visibility, workspaceId, agent, showSubmitButton = true }) => {
|
|
15
19
|
const t = useAgentsDictionary();
|
|
16
20
|
const { close } = useRightPanel();
|
|
17
21
|
const chat = useCurrentChat();
|
|
22
|
+
const [filter, setFilter] = useState('');
|
|
18
23
|
const { useFavorites, onAddFavorite, onRemoveFavorite } = useAgentFavorites();
|
|
19
|
-
const [submitEnabled, setSubmitEnabled] = useState(false);
|
|
20
24
|
const listFavorites = useFavorites();
|
|
21
25
|
const agentDefault = agentToolsClient.agentDefault.useQuery();
|
|
22
26
|
const agents = workspaceId
|
|
23
27
|
? workspaceAiClient.getAgentFromWorkspaceAi.useQuery({ workspaceId })
|
|
24
28
|
: agentToolsClient.agents.useQuery({ visibility });
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
return initial;
|
|
32
|
-
}, [agents]);
|
|
29
|
+
const [value, setValue] = useState(agent.current
|
|
30
|
+
? agents.find(a => a.id === agent.current?.id)
|
|
31
|
+
: chat.get('agent') ? agents.find(a => a.id === chat.get('agent')?.id) : agentDefault);
|
|
32
|
+
const filtered = useMemo(
|
|
33
|
+
// Recreate the list so that the favorites list is taken into account
|
|
34
|
+
() => filter ? agents.filter(a => a === value || a.name.toLocaleLowerCase().includes(filter.toLocaleLowerCase())) : [...agents], [agents, filter, value, listFavorites]);
|
|
33
35
|
function submit() {
|
|
34
|
-
if (
|
|
35
|
-
chat.set('agent',
|
|
36
|
+
if (value) {
|
|
37
|
+
chat.set('agent', { id: value.id, label: value.name, image: value.avatar, builtIn: value.visibility_level === 'built_in', slug: value.slug });
|
|
38
|
+
}
|
|
36
39
|
close();
|
|
37
40
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
listFavorites,
|
|
49
|
-
onAddFavorite,
|
|
50
|
-
onRemoveFavorite,
|
|
51
|
-
}), emptyResults: _jsx(Placeholder, { title: t.noSearchResults, description: t.noSearchResultsDescription, className: "no-data-placeholder" }), emptyDataset: _jsx(Placeholder, { title: t.noData, description: t.noDataDescription }) }) }), !!agents.length && showSubmitButton && _jsx(Button, { onClick: submit, disabled: !submitEnabled, children: t.apply })] }));
|
|
41
|
+
const onChange = useCallback((newValue) => {
|
|
42
|
+
setValue(newValue);
|
|
43
|
+
agent.current = { ...newValue, label: newValue.name, builtIn: newValue.visibility_level === 'built_in' };
|
|
44
|
+
}, []);
|
|
45
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "content", children: [_jsx(IconInput, { icon: _jsx(Search, {}), value: filter, onChange: setFilter, className: "search" }), !!filtered.length && _jsx(DescribedRadioGroup, { options: filtered, renderAfterElement: ({ id }) => (_jsx(ButtonFavorite, { favorite: {
|
|
46
|
+
idOrSlug: id, listFavorites, onAddFavorite, onRemoveFavorite,
|
|
47
|
+
} })), keygen: a => a.id, value: value, onChange: onChange, renderLabel: ({ name, avatar, id }) => (_jsxs(AgentLabel, { children: [id ? (avatar ? _jsx("img", { src: avatar }) : _jsx(IconBox, { size: "xs", children: _jsx(Agent, {}) })) : _jsx(MiniLogo, {}), _jsx(Text, { children: name })] })), renderDescription: a => _jsx(AgentDescription, { agentId: a.id }), optionClassName: a => (a === value && filter && !a.name.toLocaleLowerCase().includes(filter.toLocaleLowerCase()))
|
|
48
|
+
? 'filtered-out'
|
|
49
|
+
: '', className: "option-list" }), !!agents.length && !filtered.length &&
|
|
50
|
+
_jsx(Placeholder, { title: t.noSearchResults, description: t.noSearchResultsDescription, className: "no-data-placeholder" }), !agents.length && _jsx(Placeholder, { title: t.noData, description: t.noDataDescription })] }), !!filtered.length && showSubmitButton && _jsx(Button, { onClick: submit, disabled: !value, children: t.apply })] }));
|
|
52
51
|
};
|
|
53
52
|
export function AgentsTabWorkspace({ agent, visibility, showSubmitButton }) {
|
|
54
53
|
const workspaceTabComponents = useMemo(() => ({ agent: AgentsTab }), [agent]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentsTab.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentsTab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"AgentsTab.js","sourceRoot":"","sources":["../../../src/views/Agents/AgentsTab.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const useAgentsDictionary: () => Record<"
|
|
1
|
+
export declare const useAgentsDictionary: () => Record<"title" | "description" | "builtin" | "personal" | "shared" | "account" | "tools" | "noSearchResults" | "noSearchResultsDescription" | "noData" | "noDataDescription" | "apply" | "subtitle" | "defaultAgentDescription" | "favorites" | "spots", string>;
|
|
2
2
|
//# sourceMappingURL=dictionary.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentInfo.d.ts","sourceRoot":"","sources":["../../../src/views/Chat/AgentInfo.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,UAAU,KAAK;IACb,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oBAAqB,KAAK,
|
|
1
|
+
{"version":3,"file":"AgentInfo.d.ts","sourceRoot":"","sources":["../../../src/views/Chat/AgentInfo.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEpD,UAAU,KAAK;IACb,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oBAAqB,KAAK,4CAQ/C,CAAA"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { IconBox, Text } from '@citric/core';
|
|
3
|
+
import { Agent } from '@citric/icons';
|
|
4
4
|
/**
|
|
5
5
|
* Renders the avatar of an agent in a message.
|
|
6
6
|
*/
|
|
7
|
-
export const AgentInfo = ({ agent, icon }) => (_jsxs(_Fragment, { children: [
|
|
7
|
+
export const AgentInfo = ({ agent, icon }) => (_jsxs(_Fragment, { children: [agent?.image
|
|
8
|
+
? _jsx("img", { src: agent.image, className: "custom-agent-image" })
|
|
9
|
+
: _jsx(IconBox, { className: "default-image-wrapper", colorIcon: "light.700", children: icon ?? _jsx(Agent, { className: "agent-image" }) }), _jsx(Text, { appearance: "body2", children: agent?.label })] }));
|
|
8
10
|
//# sourceMappingURL=AgentInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentInfo.js","sourceRoot":"","sources":["../../../src/views/Chat/AgentInfo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"AgentInfo.js","sourceRoot":"","sources":["../../../src/views/Chat/AgentInfo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAQrC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAS,EAAE,EAAE,CAAC,CACnD,8BACG,KAAK,EAAE,KAAK;YACX,CAAC,CAAC,cAAK,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAC,oBAAoB,GAAG;YAC1D,CAAC,CAAC,KAAC,OAAO,IAAC,SAAS,EAAC,uBAAuB,EAAC,SAAS,EAAC,WAAW,YAAE,IAAI,IAAI,KAAC,KAAK,IAAC,SAAS,EAAC,aAAa,GAAG,GAAW,EAE1H,KAAC,IAAI,IAAC,UAAU,EAAC,OAAO,YAAE,KAAK,EAAE,KAAK,GAAQ,IAC7C,CACJ,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatMessage.d.ts","sourceRoot":"","sources":["../../../src/views/Chat/ChatMessage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChatMessage.d.ts","sourceRoot":"","sources":["../../../src/views/Chat/ChatMessage.tsx"],"names":[],"mappings":"AASA,OAAO,qCAAqC,CAAA;AAK5C,OAAO,EAAE,SAAS,EAAqC,MAAM,uBAAuB,CAAA;AAQpF,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IACjD;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;CACjD;AAED,UAAU,KAAM,SAAQ,aAAa;IACnC;;OAEG;IACH,OAAO,EAAE,SAAS,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAmID;;GAEG;AACH,eAAO,MAAM,WAAW,qDAAsD,KAAK,iEAsQlF,CAAA"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Box, Button, Checkbox, Flex, IconBox, Input, Label, Radio, Text } from '@citric/core';
|
|
3
|
+
import { Check, Cog, Copy, Dislike, DislikeFill, Like, LikeFill, TimesCircle } from '@citric/icons';
|
|
4
|
+
import { Badge, IconButton, Tooltip } from '@citric/ui';
|
|
4
5
|
import { agentToolsClient } from '@stack-spot/portal-network';
|
|
5
|
-
import { listToClass
|
|
6
|
+
import { listToClass } from '@stack-spot/portal-theme';
|
|
6
7
|
import { useTranslate } from '@stack-spot/portal-translate';
|
|
7
8
|
import { groupBy } from 'lodash';
|
|
8
9
|
import { createElement, useCallback, useMemo, useRef, useState } from 'react';
|
|
@@ -21,55 +22,62 @@ import { onCopyAll, onCopyCode, onLikeOrDislike } from './events.js';
|
|
|
21
22
|
import { StepsList } from './StepsList.js';
|
|
22
23
|
const RenderInputsEntry = ({ isLast, entry, value, setValue, labels, setLabels }) => {
|
|
23
24
|
const chat = useCurrentChat();
|
|
24
|
-
const [radioValue, setRadioValue] = useState();
|
|
25
|
-
const [checkboxValue, setCheckboxValue] = useState([]);
|
|
26
25
|
const renderInputs = () => {
|
|
27
26
|
if (entry.type === 'input-text') {
|
|
28
|
-
return _jsx(Input, { name: entry.name, value: value[0] ?? '',
|
|
27
|
+
return _jsx(Input, { name: entry.name, value: value[0] ?? '', sx: { maxWidth: '500px' }, autoFocus: true, ...entry.validations, onChange: (data) => setValue([data.target.value]), required: entry.required });
|
|
29
28
|
}
|
|
30
29
|
if (entry.type === 'input-radio') {
|
|
31
|
-
return _jsx(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
return _jsx(Flex, { className: "radio-group", children: entry.options?.map((option) => (_jsx(Box, { w: 6, className: "radio-item", children: _jsxs(Flex, { alignItems: "center", children: [_jsxs(Label, { htmlFor: option.value, colorScheme: "light.contrastText", children: [_jsx(Radio, { name: entry.name, id: option.value, onChange: (data) => {
|
|
31
|
+
if (data.target.checked) {
|
|
32
|
+
setValue([option.label]);
|
|
33
|
+
option.value && setLabels([option.value]);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
setValue([]);
|
|
37
|
+
}
|
|
38
|
+
} }), _jsx(Text, { ml: 3, children: option.label })] }), option.hasInput && option.value && labels.findIndex((label) => label === option.value) !== -1 &&
|
|
39
|
+
_jsx(Box, { w: 4, ml: 2, children: _jsx(Input, { name: entry.name, onChange: (data) => setValue([data.target.value]), required: true, sx: { height: '30px' } }) })] }) }, option.value))) });
|
|
37
40
|
}
|
|
38
41
|
if (entry.type === 'button-list') {
|
|
39
|
-
return _jsx(
|
|
42
|
+
return _jsx(Flex, { className: "button-group", style: { gap: '8px' }, children: entry.options?.map((item) => _jsx(Button, { colorScheme: item.color, style: { margin: 0 }, onClick: () => {
|
|
40
43
|
item.value && chat.pushMessage(ChatEntry.createUserEntry(item.value, false, entry.name, item?.label ? [item?.label] : undefined));
|
|
41
44
|
}, children: item.label }, item.label)) });
|
|
42
45
|
}
|
|
43
46
|
if (entry.type === 'input-checkbox') {
|
|
44
|
-
return _jsx(
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
return _jsx(Flex, { className: "checkbox-group", children: entry.options?.map((option) => (_jsxs(Flex, { as: "label", w: 6, alignItems: "center", className: "checkbox-item", children: [_jsx(Checkbox, { name: entry.name, onChange: (data) => {
|
|
48
|
+
if (data.target.checked) {
|
|
49
|
+
setValue([...value, option.label]);
|
|
50
|
+
option.value && setLabels([...labels, option.value]);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const newValue = value.filter(((item) => item !== option.label));
|
|
54
|
+
setValue([...newValue]);
|
|
55
|
+
}
|
|
56
|
+
} }, option.label), _jsx(Text, { ml: 3, children: option.label }), option.hasInput && option.value && labels.findIndex((label) => label === option.value) !== -1 &&
|
|
57
|
+
_jsx(Box, { w: 4, ml: 2, children: _jsx(Input, { name: entry.name, ...entry.validations, onChange: (data) => {
|
|
50
58
|
const customIndex = value.findIndex(v => !entry.options?.map(o => o.label).includes(v));
|
|
51
59
|
if (customIndex === -1) {
|
|
52
|
-
setValue([...value,
|
|
60
|
+
setValue([...value, data.target.value]);
|
|
53
61
|
}
|
|
54
62
|
else {
|
|
55
63
|
const newValue = [...value];
|
|
56
|
-
newValue[customIndex] =
|
|
64
|
+
newValue[customIndex] = data.target.value;
|
|
57
65
|
setValue(newValue);
|
|
58
66
|
}
|
|
59
|
-
}, required: true,
|
|
67
|
+
}, required: true, sx: { height: '30px' } }) })] }, option.label))) });
|
|
60
68
|
}
|
|
61
69
|
if (entry.type === 'input-phone') {
|
|
62
70
|
return (_jsx(PhoneInput, { defaultCountry: "br", value: value[0], onChange: (phone) => setValue([phone]), className: "input-phone", placeholder: "11961234567" }));
|
|
63
71
|
}
|
|
64
72
|
return _jsx("p", { className: "plain-text", children: entry.content });
|
|
65
73
|
};
|
|
66
|
-
return _jsxs(
|
|
74
|
+
return _jsxs(Flex, { flexDirection: "column", children: [_jsx(Text, { appearance: "body2", mb: 4, children: entry.content }), isLast && renderInputs()] });
|
|
67
75
|
};
|
|
68
76
|
const UserInfo = ({ entry }) => {
|
|
69
77
|
switch (entry.agentType) {
|
|
70
78
|
case 'user': return;
|
|
71
79
|
case 'bot': return _jsx(AgentInfo, { agent: entry.agent });
|
|
72
|
-
case 'system': return _jsx(AgentInfo, { agent: { id: 'system', label: 'System' }, icon: _jsx(
|
|
80
|
+
case 'system': return _jsx(AgentInfo, { agent: { id: 'system', label: 'System' }, icon: _jsx(Cog, {}) });
|
|
73
81
|
}
|
|
74
82
|
};
|
|
75
83
|
/**
|
|
@@ -157,16 +165,16 @@ export const ChatMessage = ({ message, isLast, beforeMessage, afterMessage }) =>
|
|
|
157
165
|
if (entry.type === 'text') {
|
|
158
166
|
return _jsxs(_Fragment, { children: [_jsx("p", { className: "plain-text", children: entry.content }), renderUploads(), renderActions()] });
|
|
159
167
|
}
|
|
160
|
-
return _jsxs("form", { children: [_jsx(RenderInputsEntry, { entry: entry, isLast: isLast, value: value, setValue: setValue, setLabels: setLabels, labels: labels }), _jsx(
|
|
168
|
+
return _jsxs("form", { children: [_jsx(RenderInputsEntry, { entry: entry, isLast: isLast, value: value, setValue: setValue, setLabels: setLabels, labels: labels }), _jsx(Box, { mt: "4", children: renderActions() })] });
|
|
161
169
|
};
|
|
162
170
|
function openToolsPanel() {
|
|
163
171
|
widget.set('currentMessageInPanel', { chatId: chat.id, messageId: message.id });
|
|
164
172
|
widget.set('panel', 'tools');
|
|
165
173
|
}
|
|
166
|
-
return (entry.content || entry.error || !!entry.steps?.length || entry.upload?.length) && (_jsx("li", { className: entry.agentType, ref: ref, children: _jsxs("div", { className: "chat-message-container", onMouseEnter: entry.agentType === 'user' ? () => setShowUserButtonCopy(true) : undefined, onMouseLeave: entry.agentType === 'user' ? () => setShowUserButtonCopy(false) : undefined, children: [_jsxs("div", { className: "chat-message", ref: chatRef, onKeyDown: handleKeyDown, tabIndex: 0, children: [_jsx("div", { className: `user-info ${entry.agentType}`, children: _jsx(UserInfo, { entry: entry }) }), beforeMessage && createElement(beforeMessage, { message }), (entry.content || entry.steps || entry.upload?.length) && (_jsxs("div", { className: listToClass(['message-content', entry.card && 'card', entry.type]), children: [!!entry.badges?.length && _jsx("div", { className: "badges", children: entry.badges.map((b, index) => _jsx(Badge, {
|
|
174
|
+
return (entry.content || entry.error || !!entry.steps?.length || entry.upload?.length) && (_jsx("li", { className: entry.agentType, ref: ref, children: _jsxs("div", { className: "chat-message-container", onMouseEnter: entry.agentType === 'user' ? () => setShowUserButtonCopy(true) : undefined, onMouseLeave: entry.agentType === 'user' ? () => setShowUserButtonCopy(false) : undefined, children: [_jsxs("div", { className: "chat-message", ref: chatRef, onKeyDown: handleKeyDown, tabIndex: 0, children: [_jsx("div", { className: `user-info ${entry.agentType}`, children: _jsx(UserInfo, { entry: entry }) }), beforeMessage && createElement(beforeMessage, { message }), (entry.content || entry.steps || entry.upload?.length) && (_jsxs("div", { className: listToClass(['message-content', entry.card && 'card', entry.type]), children: [!!entry.badges?.length && _jsx("div", { className: "badges", children: entry.badges.map((b, index) => _jsx(Badge, { palette: b.color ?? 'cyan', appearance: "square", children: b.label }, index)) }), renderContent(), !!entry.steps?.length && _jsx(StepsList, { steps: entry.steps, chatId: chat.id, messageId: message.id })] })), entry.error && (_jsxs("div", { className: "error", children: [_jsx(IconBox, { size: "xs", children: _jsx(TimesCircle, {}) }), _jsx(Text, { appearance: "microtext1", children: entry.error })] }))] }), afterMessage && createElement(afterMessage, { message }), !!entry.tools?.length && _jsx(StackedBadge, { "aria-label": t.openToolsPanel, title: t.openToolsPanel, tabIndex: 0, role: "button", className: "tools-badge", label: t.tools, images: entry.tools.slice(0, 3).map((id) => {
|
|
167
175
|
const tool = toolById(id, toolKits);
|
|
168
|
-
return { key: id, name: tool?.name || id, icon: _jsx(
|
|
169
|
-
}), onClick: openToolsPanel
|
|
176
|
+
return { key: id, name: tool?.name || id, icon: _jsx(Cog, {}), url: tool?.image };
|
|
177
|
+
}), onClick: openToolsPanel }), !!entry.knowledgeSources?.length && _jsxs("div", { className: "ks-box", children: [_jsx(Text, { appearance: "microtext1", colorScheme: "light.700", children: "Knowledge Sources:" }), _jsx("ul", { children: entry.knowledgeSources.map((ks, index) => (_jsx("li", { children: _jsx(Button, { size: "sm", colorScheme: "light", onClick: () => detailKS(ks), children: ks.name }) }, index))) })] }), shouldShowFooter && _jsxs("div", { className: "message-footer", children: [entry.agentType === 'bot' && !entry.error && _jsxs("div", { className: "message-actions", children: [entry.type === 'md' && (copied ? (_jsx(Tooltip, { text: t.copied, position: 'right', children: _jsx(IconButton, { appearance: "square", colorBg: "light", title: t.copied, "aria-label": t.copied, onClick: handleCopy, children: _jsx(Check, {}) }) })) : (_jsx(IconButton, { appearance: "square", color: "light", title: t.copy, "aria-label": t.copy, onClick: handleCopy, children: _jsx(Copy, {}) }))), entry.messageId && (_jsxs(_Fragment, { children: [_jsx(IconButton, { appearance: "square", color: "light", title: t.like, "aria-label": t.like, onClick: like, children: liked === true ? _jsx(LikeFill, {}) : _jsx(Like, {}) }), _jsx(IconButton, { appearance: "square", color: "light", title: t.dislike, "aria-label": t.dislike, onClick: dislike, children: liked === false ? _jsx(DislikeFill, {}) : _jsx(Dislike, {}) })] }))] }), entry.agentType === 'user' && (_jsx("div", { className: "message-actions", children: copied ? (_jsx(Tooltip, { text: t.copied, position: 'left', children: _jsx(IconButton, { appearance: "square", colorBg: "light", title: t.copied, "aria-label": t.copied, size: "sm", children: _jsx(Check, {}) }) })) : (showUserButtonCopy && (_jsx("div", { className: "action-bar", children: _jsx(IconButton, { appearance: "square", color: "light", title: t.copy, "aria-label": t.copy, onClick: handleCopy, size: "sm", children: _jsx(Copy, { className: "copy-btn" }) }) }))) })), _jsx(Text, { as: "label", appearance: "microtext1", className: "chat-date", children: dateFormatter.formatForChatMessage(date) })] })] }) }, entry.messageId));
|
|
170
178
|
};
|
|
171
179
|
const dictionary = {
|
|
172
180
|
en: {
|