@vertesia/ui 1.5.0-dev.20260905.011013Z → 1.5.0-dev.20260910.052912Z
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/lib/core/components/Avatar.d.ts.map +1 -1
- package/lib/core/components/Avatar.js +3 -3
- package/lib/core/components/Avatar.js.map +1 -1
- package/lib/core/components/ComboBox.js +1 -1
- package/lib/core/components/ComboBox.js.map +1 -1
- package/lib/core/components/FileUpload.js +1 -1
- package/lib/core/components/FileUpload.js.map +1 -1
- package/lib/core/components/Link.js +1 -1
- package/lib/core/components/Link.js.map +1 -1
- package/lib/core/components/SelectList.js +1 -1
- package/lib/core/components/SelectList.js.map +1 -1
- package/lib/core/components/SidePanel.js +1 -1
- package/lib/core/components/SidePanel.js.map +1 -1
- package/lib/core/components/Spinner.js +1 -1
- package/lib/core/components/Spinner.js.map +1 -1
- package/lib/core/components/TagsInput.js +8 -8
- package/lib/core/components/TagsInput.js.map +1 -1
- package/lib/core/components/shadcn/MessageBox.js +1 -1
- package/lib/core/components/shadcn/MessageBox.js.map +1 -1
- package/lib/core/components/shadcn/button.js +1 -1
- package/lib/core/components/shadcn/button.js.map +1 -1
- package/lib/core/components/shadcn/card.d.ts.map +1 -1
- package/lib/core/components/shadcn/card.js +1 -1
- package/lib/core/components/shadcn/card.js.map +1 -1
- package/lib/core/components/shadcn/command.js +5 -5
- package/lib/core/components/shadcn/command.js.map +1 -1
- package/lib/core/components/shadcn/filters/DynamicLabel.js +1 -1
- package/lib/core/components/shadcn/filters/DynamicLabel.js.map +1 -1
- package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js +3 -3
- package/lib/core/components/shadcn/filters/comboBox/DateCombobox.js.map +1 -1
- package/lib/core/components/shadcn/input.js +3 -3
- package/lib/core/components/shadcn/input.js.map +1 -1
- package/lib/core/components/shadcn/modal/ConfirmModal.js +1 -1
- package/lib/core/components/shadcn/modal/ConfirmModal.js.map +1 -1
- package/lib/core/components/shadcn/modal/dialog.d.ts.map +1 -1
- package/lib/core/components/shadcn/modal/dialog.js +2 -2
- package/lib/core/components/shadcn/modal/dialog.js.map +1 -1
- package/lib/core/components/shadcn/overflowTabs.js +2 -2
- package/lib/core/components/shadcn/overflowTabs.js.map +1 -1
- package/lib/core/components/shadcn/popover.js +1 -1
- package/lib/core/components/shadcn/popover.js.map +1 -1
- package/lib/core/components/shadcn/radioGroup.d.ts.map +1 -1
- package/lib/core/components/shadcn/radioGroup.js +3 -3
- package/lib/core/components/shadcn/radioGroup.js.map +1 -1
- package/lib/core/components/shadcn/selectBox.js +1 -1
- package/lib/core/components/shadcn/selectBox.js.map +1 -1
- package/lib/core/components/shadcn/tabs.d.ts.map +1 -1
- package/lib/core/components/shadcn/tabs.js +5 -2
- package/lib/core/components/shadcn/tabs.js.map +1 -1
- package/lib/core/components/styles.js +1 -1
- package/lib/core/components/styles.js.map +1 -1
- package/lib/core/components/table/index.js +1 -1
- package/lib/core/hooks/useFetch.d.ts.map +1 -1
- package/lib/core/hooks/useFetch.js +2 -0
- package/lib/core/hooks/useFetch.js.map +1 -1
- package/lib/features/activity-doc/ActivityDoc.js +8 -8
- package/lib/features/activity-doc/ActivityDoc.js.map +1 -1
- package/lib/features/agent/chat/AgentChart.js +1 -1
- package/lib/features/agent/chat/AgentChart.js.map +1 -1
- package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
- package/lib/features/agent/chat/AskUserWidget.js +13 -13
- package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
- package/lib/features/agent/chat/JumpingDots.js +1 -1
- package/lib/features/agent/chat/JumpingDots.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentConversation.js +1 -1
- package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +22 -9
- package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js +5 -5
- package/lib/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/Header.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/InlineSlideInPanel.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/InlineSlideInPanel.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +7 -7
- package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessagesContainer.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/MessagesContainer.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/PlanPanel.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/PlanPanel.js +10 -10
- package/lib/features/agent/chat/ModernAgentOutput/PlanPanel.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlideInPanel.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlideInPanel.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlidingMessages.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlidingMessages.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlidingMessages.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.js +17 -17
- package/lib/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/StreamingMessage.js +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/StreamingMessage.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js +14 -2
- package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js +15 -15
- package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.d.ts.map +1 -1
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js +18 -0
- package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js.map +1 -1
- package/lib/features/agent/chat/SlidingThinkingIndicator.d.ts.map +1 -1
- package/lib/features/agent/chat/SlidingThinkingIndicator.js +5 -2
- package/lib/features/agent/chat/SlidingThinkingIndicator.js.map +1 -1
- package/lib/features/agent/chat/VegaLiteChart.d.ts.map +1 -1
- package/lib/features/agent/chat/VegaLiteChart.js +6 -2
- package/lib/features/agent/chat/VegaLiteChart.js.map +1 -1
- package/lib/features/errors/RowErrorBoundary.js +1 -1
- package/lib/features/errors/RowErrorBoundary.js.map +1 -1
- package/lib/features/facets/AgentRunnerFacetsNav.js +1 -1
- package/lib/features/facets/AgentRunnerFacetsNav.js.map +1 -1
- package/lib/features/facets/utils/VInteractionFacet.d.ts +3 -5
- package/lib/features/facets/utils/VInteractionFacet.d.ts.map +1 -1
- package/lib/features/facets/utils/VInteractionFacet.js +10 -23
- package/lib/features/facets/utils/VInteractionFacet.js.map +1 -1
- package/lib/features/facets/utils/VUserFacet.js +1 -1
- package/lib/features/facets/utils/VUserFacet.js.map +1 -1
- package/lib/features/layout/GenericPageNavHeader.d.ts.map +1 -1
- package/lib/features/layout/GenericPageNavHeader.js +4 -1
- package/lib/features/layout/GenericPageNavHeader.js.map +1 -1
- package/lib/features/layout/NotFoundView.js +1 -1
- package/lib/features/layout/NotFoundView.js.map +1 -1
- package/lib/features/magic-pdf/AnnotatedImageSlider.js +4 -12
- package/lib/features/magic-pdf/AnnotatedImageSlider.js.map +1 -1
- package/lib/features/magic-pdf/ExtractedContentView.js +4 -4
- package/lib/features/magic-pdf/ExtractedContentView.js.map +1 -1
- package/lib/features/magic-pdf/MagicPdfView.js +1 -1
- package/lib/features/magic-pdf/MagicPdfView.js.map +1 -1
- package/lib/features/pdf-viewer/PdfPageRenderer.js +2 -2
- package/lib/features/pdf-viewer/PdfPageRenderer.js.map +1 -1
- package/lib/features/pdf-viewer/PdfPageSlider.js +3 -3
- package/lib/features/pdf-viewer/PdfPageSlider.js.map +1 -1
- package/lib/features/pdf-viewer/SimplePdfViewer.js +1 -1
- package/lib/features/pdf-viewer/SimplePdfViewer.js.map +1 -1
- package/lib/features/permissions/UserPermissionsProvider.d.ts +2 -1
- package/lib/features/permissions/UserPermissionsProvider.d.ts.map +1 -1
- package/lib/features/permissions/UserPermissionsProvider.js +35 -22
- package/lib/features/permissions/UserPermissionsProvider.js.map +1 -1
- package/lib/features/permissions/useRoleMappings.d.ts +19 -0
- package/lib/features/permissions/useRoleMappings.d.ts.map +1 -0
- package/lib/features/permissions/useRoleMappings.js +87 -0
- package/lib/features/permissions/useRoleMappings.js.map +1 -0
- package/lib/features/store/collections/SelectCollection.js +1 -1
- package/lib/features/store/collections/SelectCollection.js.map +1 -1
- package/lib/features/store/objects/DocumentPreviewPanel.d.ts.map +1 -1
- package/lib/features/store/objects/DocumentPreviewPanel.js +9 -9
- package/lib/features/store/objects/DocumentPreviewPanel.js.map +1 -1
- package/lib/features/store/objects/DocumentTable.js +1 -1
- package/lib/features/store/objects/DocumentTable.js.map +1 -1
- package/lib/features/store/objects/components/DocumentIcon.js +2 -2
- package/lib/features/store/objects/components/DocumentIcon.js.map +1 -1
- package/lib/features/store/objects/components/DocumentInput.js +1 -1
- package/lib/features/store/objects/components/DocumentInput.js.map +1 -1
- package/lib/features/store/objects/components/PropertiesEditorModal.js +1 -1
- package/lib/features/store/objects/components/PropertiesEditorModal.js.map +1 -1
- package/lib/features/store/objects/components/SaveVersionConfirmModal.js +1 -1
- package/lib/features/store/objects/components/SaveVersionConfirmModal.js.map +1 -1
- package/lib/features/store/objects/layout/documentLayout.d.ts.map +1 -1
- package/lib/features/store/objects/layout/documentLayout.js +2 -2
- package/lib/features/store/objects/layout/documentLayout.js.map +1 -1
- package/lib/features/store/objects/selection/SelectionActions.js +1 -1
- package/lib/features/store/objects/selection/SelectionActions.js.map +1 -1
- package/lib/features/store/types/IntakePolicyEditor.d.ts +10 -1
- package/lib/features/store/types/IntakePolicyEditor.d.ts.map +1 -1
- package/lib/features/store/types/IntakePolicyEditor.js +29 -19
- package/lib/features/store/types/IntakePolicyEditor.js.map +1 -1
- package/lib/features/store/types/IntakePolicyForm.d.ts +1 -1
- package/lib/features/store/types/IntakePolicyForm.d.ts.map +1 -1
- package/lib/features/store/types/IntakePolicyForm.js +5 -3
- package/lib/features/store/types/IntakePolicyForm.js.map +1 -1
- package/lib/features/store/types/SelectContentTypeModal.js +1 -1
- package/lib/features/store/types/SelectContentTypeModal.js.map +1 -1
- package/lib/features/user/UserAvatar.js +2 -2
- package/lib/features/user/UserAvatar.js.map +1 -1
- package/lib/features/user/UserInfo.d.ts.map +1 -1
- package/lib/features/user/UserInfo.js +7 -7
- package/lib/features/user/UserInfo.js.map +1 -1
- package/lib/features/utils/index.d.ts +1 -0
- package/lib/features/utils/index.d.ts.map +1 -1
- package/lib/features/utils/index.js +1 -0
- package/lib/features/utils/index.js.map +1 -1
- package/lib/features/utils/interaction.d.ts +55 -0
- package/lib/features/utils/interaction.d.ts.map +1 -0
- package/lib/features/utils/interaction.js +77 -0
- package/lib/features/utils/interaction.js.map +1 -0
- package/lib/features/views/ViewResults.js +2 -2
- package/lib/features/views/ViewResults.js.map +1 -1
- package/lib/i18n/locales/ar.json +7 -1
- package/lib/i18n/locales/de.json +7 -1
- package/lib/i18n/locales/en.json +7 -1
- package/lib/i18n/locales/es.json +7 -1
- package/lib/i18n/locales/fr.json +7 -1
- package/lib/i18n/locales/it.json +7 -1
- package/lib/i18n/locales/ja.json +7 -1
- package/lib/i18n/locales/ko.json +7 -1
- package/lib/i18n/locales/pt.json +7 -1
- package/lib/i18n/locales/ru.json +7 -1
- package/lib/i18n/locales/tr.json +7 -1
- package/lib/i18n/locales/zh-TW.json +7 -1
- package/lib/i18n/locales/zh.json +7 -1
- package/lib/layout/FullHeightLayout.js +2 -2
- package/lib/layout/FullHeightLayout.js.map +1 -1
- package/lib/layout/Navbar.js +4 -4
- package/lib/layout/Navbar.js.map +1 -1
- package/lib/layout/Sidebar.js +1 -1
- package/lib/layout/Sidebar.js.map +1 -1
- package/lib/session/UserSessionProvider.d.ts.map +1 -1
- package/lib/session/UserSessionProvider.js +2 -13
- package/lib/session/UserSessionProvider.js.map +1 -1
- package/lib/session/auth/authState.d.ts +13 -0
- package/lib/session/auth/authState.d.ts.map +1 -0
- package/lib/session/auth/authState.js +37 -0
- package/lib/session/auth/authState.js.map +1 -0
- package/lib/session/auth/domainRouting.d.ts +39 -0
- package/lib/session/auth/domainRouting.d.ts.map +1 -1
- package/lib/session/auth/domainRouting.js +85 -0
- package/lib/session/auth/domainRouting.js.map +1 -1
- package/lib/session/auth/useAuthState.d.ts +4 -7
- package/lib/session/auth/useAuthState.d.ts.map +1 -1
- package/lib/session/auth/useAuthState.js +5 -41
- package/lib/session/auth/useAuthState.js.map +1 -1
- package/lib/session/index.d.ts +1 -0
- package/lib/session/index.d.ts.map +1 -1
- package/lib/session/index.js +2 -0
- package/lib/session/index.js.map +1 -1
- package/lib/shell/SplashScreen.d.ts +1 -1
- package/lib/shell/SplashScreen.d.ts.map +1 -1
- package/lib/shell/SplashScreen.js +6 -2
- package/lib/shell/SplashScreen.js.map +1 -1
- package/lib/shell/VertesiaShell.js +1 -1
- package/lib/shell/VertesiaShell.js.map +1 -1
- package/lib/shell/apps/AppProjectSelector.js +1 -1
- package/lib/shell/apps/AppProjectSelector.js.map +1 -1
- package/lib/shell/apps/StandaloneApp.js +2 -2
- package/lib/shell/apps/StandaloneApp.js.map +1 -1
- package/lib/shell/login/SignInPrimitives.js +2 -2
- package/lib/shell/login/SignInPrimitives.js.map +1 -1
- package/lib/shell/login/SigninScreen.js +1 -1
- package/lib/shell/login/SigninScreen.js.map +1 -1
- package/lib/shell/login/SignupForm.js +1 -1
- package/lib/shell/login/SignupForm.js.map +1 -1
- package/lib/shell/login/TerminalLogin.js +2 -2
- package/lib/shell/login/TerminalLogin.js.map +1 -1
- package/lib/shell/login/UserInfo.d.ts.map +1 -1
- package/lib/shell/login/UserInfo.js +1 -1
- package/lib/shell/login/UserInfo.js.map +1 -1
- package/lib/shell/login/UserSessionMenu.js +1 -1
- package/lib/shell/login/UserSessionMenu.js.map +1 -1
- package/lib/vertesia-ui-core.js +7 -7
- package/lib/vertesia-ui-core.js.map +1 -1
- package/lib/vertesia-ui-features.js +179 -182
- package/lib/vertesia-ui-features.js.map +1 -1
- package/lib/vertesia-ui-i18n.BfN7iOHb.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.BfN7iOHb.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.BjH2zEZw.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.BjH2zEZw.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.BjSwAZXl.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.BjSwAZXl.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.C7PUm5Au.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.C7PUm5Au.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.CF_1mUS5.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.CF_1mUS5.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.ChfUl3_-.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.ChfUl3_-.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.D-Sk-5d1.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.D-Sk-5d1.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.D4rnu1_S.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.D4rnu1_S.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DDf0-laK.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DDf0-laK.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DN79y06J.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DN79y06J.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DWLIciYQ.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DWLIciYQ.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.DvF_YaAJ.chunk.js +5 -0
- package/lib/vertesia-ui-i18n.DvF_YaAJ.chunk.js.map +1 -0
- package/lib/vertesia-ui-i18n.js +2 -2
- package/lib/vertesia-ui-layout.js +1 -1
- package/lib/vertesia-ui-layout.js.map +1 -1
- package/lib/vertesia-ui-rich-text.js +24 -24
- package/lib/vertesia-ui-rich-text.js.map +1 -1
- package/lib/vertesia-ui-session.js +1 -1
- package/lib/vertesia-ui-session.js.map +1 -1
- package/lib/vertesia-ui-shell.js +3 -3
- package/lib/vertesia-ui-shell.js.map +1 -1
- package/lib/vertesia-ui-widgets.js +54 -54
- package/lib/vertesia-ui-widgets.js.map +1 -1
- package/lib/widgets/Progress.js +1 -1
- package/lib/widgets/Progress.js.map +1 -1
- package/lib/widgets/form/Form.js +2 -2
- package/lib/widgets/form/Form.js.map +1 -1
- package/lib/widgets/form/fields.js +2 -2
- package/lib/widgets/form/fields.js.map +1 -1
- package/lib/widgets/json-view/JSONView.js +1 -1
- package/lib/widgets/json-view/JSONView.js.map +1 -1
- package/lib/widgets/markdown/MermaidDiagram.js +1 -1
- package/lib/widgets/markdown/MermaidDiagram.js.map +1 -1
- package/lib/widgets/markdown/remarkDirectiveHandler.d.ts +7 -2
- package/lib/widgets/markdown/remarkDirectiveHandler.d.ts.map +1 -1
- package/lib/widgets/markdown/remarkDirectiveHandler.js +19 -4
- package/lib/widgets/markdown/remarkDirectiveHandler.js.map +1 -1
- package/lib/widgets/monacoEditor/MonacoEditor.d.ts.map +1 -1
- package/lib/widgets/monacoEditor/MonacoEditor.js +4 -2
- package/lib/widgets/monacoEditor/MonacoEditor.js.map +1 -1
- package/lib/widgets/monacoEditor/index.d.ts +1 -0
- package/lib/widgets/monacoEditor/index.d.ts.map +1 -1
- package/lib/widgets/monacoEditor/index.js +1 -0
- package/lib/widgets/monacoEditor/index.js.map +1 -1
- package/lib/widgets/monacoEditor/loadMonaco.d.ts +45 -0
- package/lib/widgets/monacoEditor/loadMonaco.d.ts.map +1 -0
- package/lib/widgets/monacoEditor/loadMonaco.js +62 -0
- package/lib/widgets/monacoEditor/loadMonaco.js.map +1 -0
- package/lib/widgets/properties/PropertiesView.js +1 -1
- package/lib/widgets/properties/PropertiesView.js.map +1 -1
- package/lib/widgets/schema-editor/editor/Editable.js +2 -2
- package/lib/widgets/schema-editor/editor/Editable.js.map +1 -1
- package/lib/widgets/schema-editor/editor/PropertyEditor.js +1 -1
- package/lib/widgets/schema-editor/editor/PropertyEditor.js.map +1 -1
- package/lib/widgets/schema-editor/editor/SchemaEditor.js +2 -2
- package/lib/widgets/schema-editor/editor/SchemaEditor.js.map +1 -1
- package/lib/widgets/upload/DropZone.js +1 -1
- package/lib/widgets/upload/DropZone.js.map +1 -1
- package/lib/widgets/upload/UploadResultCategory.d.ts +1 -1
- package/lib/widgets/upload/UploadResultCategory.d.ts.map +1 -1
- package/lib/widgets/upload/UploadResultCategory.js +3 -3
- package/lib/widgets/upload/UploadResultCategory.js.map +1 -1
- package/lib/widgets/upload/UploadSummary.js +1 -1
- package/lib/widgets/upload/UploadSummary.js.map +1 -1
- package/lib/widgets/xml-viewer/components/XMLViewer.d.ts.map +1 -1
- package/lib/widgets/xml-viewer/components/XMLViewer.js +7 -3
- package/lib/widgets/xml-viewer/components/XMLViewer.js.map +1 -1
- package/lib/widgets/xml-viewer/hooks/useCollapsible.d.ts +1 -1
- package/lib/widgets/xml-viewer/hooks/useXMLViewer.d.ts +11 -13
- package/lib/widgets/xml-viewer/hooks/useXMLViewer.d.ts.map +1 -1
- package/lib/widgets/xml-viewer/hooks/useXMLViewer.js +41 -14
- package/lib/widgets/xml-viewer/hooks/useXMLViewer.js.map +1 -1
- package/package.json +7 -7
- package/src/__tests__/contrast.test.ts +1 -0
- package/src/core/components/Avatar.tsx +3 -3
- package/src/core/components/ComboBox.tsx +1 -1
- package/src/core/components/FileUpload.tsx +4 -4
- package/src/core/components/Link.tsx +1 -1
- package/src/core/components/SelectList.tsx +1 -1
- package/src/core/components/SidePanel.tsx +1 -1
- package/src/core/components/Spinner.tsx +1 -1
- package/src/core/components/TagsInput.tsx +8 -8
- package/src/core/components/shadcn/MessageBox.tsx +1 -1
- package/src/core/components/shadcn/button.tsx +1 -1
- package/src/core/components/shadcn/card.tsx +1 -3
- package/src/core/components/shadcn/command.tsx +5 -5
- package/src/core/components/shadcn/filters/DynamicLabel.tsx +1 -1
- package/src/core/components/shadcn/filters/comboBox/DateCombobox.tsx +3 -3
- package/src/core/components/shadcn/input.tsx +3 -3
- package/src/core/components/shadcn/modal/ConfirmModal.tsx +3 -3
- package/src/core/components/shadcn/modal/dialog.tsx +2 -4
- package/src/core/components/shadcn/overflowTabs.tsx +2 -2
- package/src/core/components/shadcn/popover.tsx +1 -1
- package/src/core/components/shadcn/radioGroup.tsx +5 -7
- package/src/core/components/shadcn/selectBox.tsx +1 -1
- package/src/core/components/shadcn/tabs.tsx +4 -2
- package/src/core/components/styles.ts +1 -1
- package/src/core/components/table/index.tsx +1 -1
- package/src/core/hooks/useFetch.test.ts +20 -0
- package/src/core/hooks/useFetch.ts +2 -0
- package/src/css/base.css +1 -1
- package/src/css/color.css +4 -0
- package/src/css/theme.css +1 -0
- package/src/css/typography.css +2 -2
- package/src/features/activity-doc/ActivityDoc.tsx +11 -11
- package/src/features/agent/chat/AgentChart.tsx +1 -1
- package/src/features/agent/chat/AskUserWidget.tsx +19 -23
- package/src/features/agent/chat/JumpingDots.tsx +3 -3
- package/src/features/agent/chat/ModernAgentConversation.tsx +3 -3
- package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +60 -1
- package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +44 -24
- package/src/features/agent/chat/ModernAgentOutput/BatchProgressPanel.tsx +12 -12
- package/src/features/agent/chat/ModernAgentOutput/Header.tsx +1 -1
- package/src/features/agent/chat/ModernAgentOutput/InlineSlideInPanel.tsx +4 -4
- package/src/features/agent/chat/ModernAgentOutput/MessageInput.tsx +2 -2
- package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +7 -12
- package/src/features/agent/chat/ModernAgentOutput/MessagesContainer.tsx +1 -1
- package/src/features/agent/chat/ModernAgentOutput/PlanPanel.tsx +16 -22
- package/src/features/agent/chat/ModernAgentOutput/SlideInPanel.tsx +4 -4
- package/src/features/agent/chat/ModernAgentOutput/SlidingMessages.tsx +2 -4
- package/src/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.tsx +21 -21
- package/src/features/agent/chat/ModernAgentOutput/StreamingMessage.tsx +4 -4
- package/src/features/agent/chat/ModernAgentOutput/SummaryConversation.ts +16 -1
- package/src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx +19 -40
- package/src/features/agent/chat/ModernAgentOutput/requestInputMessages.test.ts +41 -0
- package/src/features/agent/chat/ModernAgentOutput/requestInputMessages.ts +19 -0
- package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +93 -0
- package/src/features/agent/chat/SlidingThinkingIndicator.tsx +5 -2
- package/src/features/agent/chat/VegaLiteChart.tsx +6 -2
- package/src/features/errors/RowErrorBoundary.tsx +1 -1
- package/src/features/facets/AgentRunnerFacetsNav.tsx +1 -1
- package/src/features/facets/utils/VInteractionFacet.tsx +22 -34
- package/src/features/facets/utils/VUserFacet.tsx +1 -1
- package/src/features/layout/GenericPageNavHeader.tsx +9 -1
- package/src/features/layout/NotFoundView.tsx +1 -1
- package/src/features/magic-pdf/AnnotatedImageSlider.tsx +8 -16
- package/src/features/magic-pdf/ExtractedContentView.tsx +4 -4
- package/src/features/magic-pdf/MagicPdfView.tsx +1 -1
- package/src/features/pdf-viewer/PdfPageRenderer.tsx +2 -2
- package/src/features/pdf-viewer/PdfPageSlider.tsx +4 -4
- package/src/features/pdf-viewer/SimplePdfViewer.tsx +1 -1
- package/src/features/permissions/UserPermissionsProvider.test.tsx +172 -0
- package/src/features/permissions/UserPermissionsProvider.tsx +68 -21
- package/src/features/permissions/useRoleMappings.ts +105 -0
- package/src/features/store/collections/SelectCollection.tsx +1 -1
- package/src/features/store/objects/DocumentPreviewPanel.tsx +43 -53
- package/src/features/store/objects/DocumentTable.tsx +2 -2
- package/src/features/store/objects/components/DocumentIcon.tsx +4 -4
- package/src/features/store/objects/components/DocumentInput.tsx +3 -3
- package/src/features/store/objects/components/PropertiesEditorModal.tsx +2 -2
- package/src/features/store/objects/components/SaveVersionConfirmModal.tsx +2 -2
- package/src/features/store/objects/layout/documentLayout.tsx +2 -4
- package/src/features/store/objects/selection/SelectionActions.tsx +1 -1
- package/src/features/store/types/IntakePolicyEditor.tsx +70 -36
- package/src/features/store/types/IntakePolicyForm.tsx +11 -3
- package/src/features/store/types/SelectContentTypeModal.tsx +1 -1
- package/src/features/user/UserAvatar.tsx +3 -3
- package/src/features/user/UserInfo.tsx +11 -16
- package/src/features/utils/index.ts +1 -0
- package/src/features/utils/interaction.test.tsx +93 -0
- package/src/features/utils/interaction.tsx +125 -0
- package/src/features/views/ViewResults.tsx +3 -3
- package/src/i18n/locales/ar.json +7 -1
- package/src/i18n/locales/de.json +7 -1
- package/src/i18n/locales/en.json +7 -1
- package/src/i18n/locales/es.json +7 -1
- package/src/i18n/locales/fr.json +7 -1
- package/src/i18n/locales/it.json +7 -1
- package/src/i18n/locales/ja.json +7 -1
- package/src/i18n/locales/ko.json +7 -1
- package/src/i18n/locales/pt.json +7 -1
- package/src/i18n/locales/ru.json +7 -1
- package/src/i18n/locales/tr.json +7 -1
- package/src/i18n/locales/zh-TW.json +7 -1
- package/src/i18n/locales/zh.json +7 -1
- package/src/layout/FullHeightLayout.tsx +2 -2
- package/src/layout/Navbar.tsx +5 -5
- package/src/layout/Sidebar.tsx +1 -1
- package/src/session/UserSessionProvider.tsx +2 -15
- package/src/session/auth/authState.test.ts +35 -0
- package/src/session/auth/authState.ts +42 -0
- package/src/session/auth/domainRouting.test.ts +169 -1
- package/src/session/auth/domainRouting.ts +89 -0
- package/src/session/auth/useAuthState.ts +5 -49
- package/src/session/index.ts +6 -0
- package/src/shell/SplashScreen.test.tsx +22 -0
- package/src/shell/SplashScreen.tsx +6 -2
- package/src/shell/VertesiaShell.tsx +1 -1
- package/src/shell/apps/AppProjectSelector.tsx +1 -1
- package/src/shell/apps/StandaloneApp.tsx +9 -9
- package/src/shell/login/SignInPrimitives.tsx +2 -2
- package/src/shell/login/SigninScreen.tsx +1 -1
- package/src/shell/login/SignupForm.tsx +2 -2
- package/src/shell/login/TerminalLogin.tsx +5 -5
- package/src/shell/login/UserInfo.tsx +2 -5
- package/src/shell/login/UserSessionMenu.tsx +2 -2
- package/src/widgets/Progress.tsx +2 -2
- package/src/widgets/form/Form.tsx +4 -4
- package/src/widgets/form/fields.tsx +2 -2
- package/src/widgets/json-view/JSONView.tsx +1 -6
- package/src/widgets/markdown/ArtifactEditingSurface.test.tsx +33 -29
- package/src/widgets/markdown/MarkdownRenderer.test.tsx +52 -0
- package/src/widgets/markdown/MermaidDiagram.tsx +2 -2
- package/src/widgets/markdown/remarkDirectiveHandler.ts +21 -5
- package/src/widgets/monacoEditor/MonacoEditor.tsx +4 -2
- package/src/widgets/monacoEditor/index.ts +1 -0
- package/src/widgets/monacoEditor/loadMonaco.test.ts +63 -0
- package/src/widgets/monacoEditor/loadMonaco.ts +70 -0
- package/src/widgets/properties/PropertiesView.tsx +1 -1
- package/src/widgets/schema-editor/editor/Editable.tsx +2 -2
- package/src/widgets/schema-editor/editor/PropertyEditor.tsx +1 -1
- package/src/widgets/schema-editor/editor/SchemaEditor.tsx +2 -2
- package/src/widgets/upload/DropZone.tsx +1 -1
- package/src/widgets/upload/UploadResultCategory.tsx +7 -7
- package/src/widgets/upload/UploadSummary.tsx +4 -4
- package/src/widgets/xml-viewer/components/XMLViewer.tsx +7 -3
- package/src/widgets/xml-viewer/hooks/useXMLViewer.test.ts +60 -7
- package/src/widgets/xml-viewer/hooks/useXMLViewer.ts +70 -16
- package/lib/vertesia-ui-i18n.3yHWompP.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.3yHWompP.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.4XKCcnL0.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.4XKCcnL0.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.78KG4J25.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.78KG4J25.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.BN06mpp1.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.BN06mpp1.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.CSzKLlHJ.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.CSzKLlHJ.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.Ccus7aRh.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.Ccus7aRh.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.D9j3c6gI.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.D9j3c6gI.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.DAUg4rrI.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.DAUg4rrI.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.DSxVZKXy.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.DSxVZKXy.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.aahVhHvR.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.aahVhHvR.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.nZ3xJ26v.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.nZ3xJ26v.chunk.js.map +0 -1
- package/lib/vertesia-ui-i18n.xPYbuFzT.chunk.js +0 -5
- package/lib/vertesia-ui-i18n.xPYbuFzT.chunk.js.map +0 -1
|
@@ -133,6 +133,41 @@ describe('AllMessagesMixed summary view', () => {
|
|
|
133
133
|
vi.useRealTimers();
|
|
134
134
|
});
|
|
135
135
|
|
|
136
|
+
it('keeps the draft accompanying ask_user visible outside collapsed work', () => {
|
|
137
|
+
renderSummary([
|
|
138
|
+
makeMessage({
|
|
139
|
+
timestamp: 1000,
|
|
140
|
+
message: '## Draft agenda\n9:00 Welcome\n9:15 Platform foundations',
|
|
141
|
+
details: {
|
|
142
|
+
event_class: 'activity',
|
|
143
|
+
display_role: 'tool_preamble',
|
|
144
|
+
tools: ['ask_user'],
|
|
145
|
+
activity_group_id: 'review-1',
|
|
146
|
+
streamed: true,
|
|
147
|
+
},
|
|
148
|
+
}),
|
|
149
|
+
makeMessage({
|
|
150
|
+
timestamp: 2000,
|
|
151
|
+
message: 'Waiting for review...',
|
|
152
|
+
details: {
|
|
153
|
+
tool: 'ask_user',
|
|
154
|
+
tool_status: 'running',
|
|
155
|
+
activity_group_id: 'review-1',
|
|
156
|
+
},
|
|
157
|
+
}),
|
|
158
|
+
makeMessage({
|
|
159
|
+
timestamp: 3000,
|
|
160
|
+
type: AgentMessageType.REQUEST_INPUT,
|
|
161
|
+
message: 'Does this agenda work?',
|
|
162
|
+
details: { tool: 'ask_user', request_id: 'ask-1' },
|
|
163
|
+
}),
|
|
164
|
+
]);
|
|
165
|
+
|
|
166
|
+
expect(screen.getByRole('heading', { name: 'Draft agenda' })).not.toBeNull();
|
|
167
|
+
expect(screen.getByText('Does this agenda work?')).not.toBeNull();
|
|
168
|
+
expect(screen.getByRole('button', { name: /Worked\s*for/ }).getAttribute('aria-expanded')).toBe('false');
|
|
169
|
+
});
|
|
170
|
+
|
|
136
171
|
it('renders delivery status on user bubbles in summary view', () => {
|
|
137
172
|
renderSummary([
|
|
138
173
|
makeMessage({
|
|
@@ -1109,7 +1144,9 @@ describe('AllMessagesMixed summary view', () => {
|
|
|
1109
1144
|
|
|
1110
1145
|
const columns = Array.from(screen.getByRole('table').querySelectorAll('col'));
|
|
1111
1146
|
const contentWidths = [columns[0], columns[2]].map((column) =>
|
|
1112
|
-
Number.parseFloat(
|
|
1147
|
+
Number.parseFloat(
|
|
1148
|
+
column.style.getPropertyValue('--agent-markdown-table-column-width').replace('calc(', ''),
|
|
1149
|
+
),
|
|
1113
1150
|
);
|
|
1114
1151
|
|
|
1115
1152
|
expect(columns).toHaveLength(3);
|
|
@@ -1117,6 +1154,28 @@ describe('AllMessagesMixed summary view', () => {
|
|
|
1117
1154
|
expect(contentWidths[1]).toBeGreaterThan(contentWidths[0]);
|
|
1118
1155
|
});
|
|
1119
1156
|
|
|
1157
|
+
it('reserves readable widths for agenda columns beside long descriptions', () => {
|
|
1158
|
+
renderSummary([
|
|
1159
|
+
makeMessage({
|
|
1160
|
+
type: AgentMessageType.ANSWER,
|
|
1161
|
+
message: [
|
|
1162
|
+
'| Time | Duration | Topic | Facilitator |',
|
|
1163
|
+
'| --- | --- | --- | --- |',
|
|
1164
|
+
'| 9:15 a.m. | 90 min | Advanced capabilities: sub-agents, workstreams, skills, tools and human review | Vertesia |',
|
|
1165
|
+
'| 10:45 a.m. | 15 min | Break | All |',
|
|
1166
|
+
].join('\n'),
|
|
1167
|
+
}),
|
|
1168
|
+
]);
|
|
1169
|
+
|
|
1170
|
+
const table = screen.getByRole('table');
|
|
1171
|
+
const widths = Array.from(table.querySelectorAll('col')).map((column) =>
|
|
1172
|
+
column.style.getPropertyValue('--agent-markdown-table-column-width'),
|
|
1173
|
+
);
|
|
1174
|
+
expect(widths).toEqual(['8rem', '8rem', 'calc(100.000% - 24.000rem)', '8rem']);
|
|
1175
|
+
expect(table.style.minWidth).toBe('32rem');
|
|
1176
|
+
expect(table.parentElement?.classList.contains('overflow-x-auto')).toBe(true);
|
|
1177
|
+
});
|
|
1178
|
+
|
|
1120
1179
|
it('merges legacy activity progress rows with different tool run ids', () => {
|
|
1121
1180
|
renderSummary(
|
|
1122
1181
|
[
|
|
@@ -475,11 +475,15 @@ function getTableColumnLayouts(node?: Element): AgentMarkdownTableColumnLayout[]
|
|
|
475
475
|
return clampNumber(avgLength * 0.7 + maxLength * 0.25 + longestTokenLength * 0.45, 18, 90);
|
|
476
476
|
});
|
|
477
477
|
|
|
478
|
-
const totalWeight = weights.reduce((sum, weight) => sum + weight, 0);
|
|
478
|
+
const totalWeight = weights.reduce((sum, weight, index) => sum + (compactColumns.has(index) ? 0 : weight), 0);
|
|
479
479
|
if (totalWeight <= 0) return [];
|
|
480
480
|
|
|
481
481
|
return weights.map((weight, columnIndex) => {
|
|
482
|
-
const
|
|
482
|
+
const share = weight / totalWeight;
|
|
483
|
+
// Reserve actual space for short values and headers before distributing prose columns.
|
|
484
|
+
const width = compactColumns.has(columnIndex)
|
|
485
|
+
? '8rem'
|
|
486
|
+
: `calc(${(share * 100).toFixed(3)}% - ${(compactColumns.size * 8 * share).toFixed(3)}rem)`;
|
|
483
487
|
return {
|
|
484
488
|
key: `agent-markdown-table-column-${columnIndex}`,
|
|
485
489
|
compact: compactColumns.has(columnIndex),
|
|
@@ -500,24 +504,30 @@ function AgentMarkdownTable({
|
|
|
500
504
|
const columnLayouts = getTableColumnLayouts(node);
|
|
501
505
|
|
|
502
506
|
return (
|
|
503
|
-
<
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
}
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
507
|
+
<div className="overflow-x-auto">
|
|
508
|
+
<table
|
|
509
|
+
{...props}
|
|
510
|
+
className={className}
|
|
511
|
+
style={{ minWidth: `${columnLayouts.length * 8}rem`, ...props.style }}
|
|
512
|
+
>
|
|
513
|
+
{columnLayouts.length > 0 ? (
|
|
514
|
+
<colgroup>
|
|
515
|
+
{columnLayouts.map((columnLayout) => (
|
|
516
|
+
<col
|
|
517
|
+
key={columnLayout.key}
|
|
518
|
+
className={columnLayout.compact ? 'agent-markdown-table-compact-col' : undefined}
|
|
519
|
+
style={
|
|
520
|
+
{
|
|
521
|
+
'--agent-markdown-table-column-width': columnLayout.width,
|
|
522
|
+
} as React.CSSProperties
|
|
523
|
+
}
|
|
524
|
+
/>
|
|
525
|
+
))}
|
|
526
|
+
</colgroup>
|
|
527
|
+
) : null}
|
|
528
|
+
{children}
|
|
529
|
+
</table>
|
|
530
|
+
</div>
|
|
521
531
|
);
|
|
522
532
|
}
|
|
523
533
|
|
|
@@ -1210,6 +1220,15 @@ function getToolTarget(details: Record<string, unknown>): string | undefined {
|
|
|
1210
1220
|
return undefined;
|
|
1211
1221
|
}
|
|
1212
1222
|
|
|
1223
|
+
/**
|
|
1224
|
+
* An approval decision that stopped the tool from running — a denial, a timeout, or a cancellation
|
|
1225
|
+
* — as opposed to one that released it. Unknown decisions count as blocking: every decision the
|
|
1226
|
+
* agent has ever emitted except `auto_approved` is one, so that is the safer default.
|
|
1227
|
+
*/
|
|
1228
|
+
function isBlockingApprovalDecision(decision: unknown): boolean {
|
|
1229
|
+
return typeof decision === 'string' && decision !== 'auto_approved';
|
|
1230
|
+
}
|
|
1231
|
+
|
|
1213
1232
|
function getApprovalDecisionLabel(decision: unknown, toolLabel: string): string | undefined {
|
|
1214
1233
|
switch (decision) {
|
|
1215
1234
|
case 'denied':
|
|
@@ -1221,6 +1240,8 @@ function getApprovalDecisionLabel(decision: unknown, toolLabel: string): string
|
|
|
1221
1240
|
return `Approval reviewer denied ${toolLabel}.`;
|
|
1222
1241
|
case 'cancelled_after_denial':
|
|
1223
1242
|
return `Cancelled ${toolLabel} after another tool was denied.`;
|
|
1243
|
+
case 'auto_approved':
|
|
1244
|
+
return `Approval no longer required for ${toolLabel}.`;
|
|
1224
1245
|
default:
|
|
1225
1246
|
return undefined;
|
|
1226
1247
|
}
|
|
@@ -1237,6 +1258,8 @@ function getApprovalDecisionStatusText(decision: unknown): string | undefined {
|
|
|
1237
1258
|
return 'Denied by reviewer';
|
|
1238
1259
|
case 'cancelled_after_denial':
|
|
1239
1260
|
return 'Cancelled after denial';
|
|
1261
|
+
case 'auto_approved':
|
|
1262
|
+
return 'Approved without asking';
|
|
1240
1263
|
default:
|
|
1241
1264
|
return undefined;
|
|
1242
1265
|
}
|
|
@@ -1467,7 +1490,7 @@ function getToolDetailSections(message: AgentMessage): SummaryToolDetailSection[
|
|
|
1467
1490
|
addSection(
|
|
1468
1491
|
'Output',
|
|
1469
1492
|
['output', 'stdout', 'result', 'results', 'content', 'result_summary', 'observation', 'display_message'],
|
|
1470
|
-
|
|
1493
|
+
isBlockingApprovalDecision(details.approval_decision) ? 'error' : undefined,
|
|
1471
1494
|
);
|
|
1472
1495
|
addSection('Files', ['files', 'outputFiles']);
|
|
1473
1496
|
addSection('Error', ['error', 'stderr'], 'error');
|
|
@@ -3322,9 +3345,6 @@ function AllMessagesMixedComponent({
|
|
|
3322
3345
|
.agent-markdown col {
|
|
3323
3346
|
width: var(--agent-markdown-table-column-width);
|
|
3324
3347
|
}
|
|
3325
|
-
.agent-markdown .agent-markdown-table-compact-col {
|
|
3326
|
-
width: clamp(4.75rem, var(--agent-markdown-table-column-width), 7rem);
|
|
3327
|
-
}
|
|
3328
3348
|
.agent-markdown tr:last-child td {
|
|
3329
3349
|
border-bottom: 0;
|
|
3330
3350
|
}
|
|
@@ -83,7 +83,7 @@ function BatchProgressPanelComponent({
|
|
|
83
83
|
if (overallStatus === 'error' || overallStatus === 'warning') {
|
|
84
84
|
return <AlertCircle className="size-4 text-destructive" />;
|
|
85
85
|
}
|
|
86
|
-
return <Layers className="size-4 text-
|
|
86
|
+
return <Layers className="size-4 text-done" />;
|
|
87
87
|
};
|
|
88
88
|
|
|
89
89
|
// Border color based on status
|
|
@@ -91,14 +91,14 @@ function BatchProgressPanelComponent({
|
|
|
91
91
|
if (overallStatus === 'completed') return 'border-s-success';
|
|
92
92
|
if (overallStatus === 'error') return 'border-s-destructive';
|
|
93
93
|
if (overallStatus === 'warning') return 'border-s-attention';
|
|
94
|
-
return 'border-s-
|
|
94
|
+
return 'border-s-info';
|
|
95
95
|
};
|
|
96
96
|
|
|
97
97
|
// Progress bar color
|
|
98
98
|
const getProgressColor = () => {
|
|
99
99
|
if (hasErrors) return 'bg-attention';
|
|
100
100
|
if (isComplete) return 'bg-success';
|
|
101
|
-
return 'bg-
|
|
101
|
+
return 'bg-primary';
|
|
102
102
|
};
|
|
103
103
|
|
|
104
104
|
const copyToClipboard = () => {
|
|
@@ -118,7 +118,7 @@ function BatchProgressPanelComponent({
|
|
|
118
118
|
return (
|
|
119
119
|
<div
|
|
120
120
|
className={cn(
|
|
121
|
-
'border-s-4 shadow-md overflow-hidden bg-white dark:bg-
|
|
121
|
+
'border-s-4 shadow-md overflow-hidden bg-white dark:bg-muted mb-5',
|
|
122
122
|
getBorderColor(),
|
|
123
123
|
className,
|
|
124
124
|
)}
|
|
@@ -130,7 +130,7 @@ function BatchProgressPanelComponent({
|
|
|
130
130
|
tabIndex={0}
|
|
131
131
|
aria-expanded={isExpanded}
|
|
132
132
|
className={cn(
|
|
133
|
-
'flex items-center justify-between px-4 py-2 border-b border-
|
|
133
|
+
'flex items-center justify-between px-4 py-2 border-b border-border/80 bg-info/50 dark:bg-info/10 cursor-pointer',
|
|
134
134
|
headerClassName,
|
|
135
135
|
)}
|
|
136
136
|
onClick={() => setIsExpanded(!isExpanded)}
|
|
@@ -139,7 +139,7 @@ function BatchProgressPanelComponent({
|
|
|
139
139
|
<div className="flex items-center gap-2">
|
|
140
140
|
{renderStatusIndicator()}
|
|
141
141
|
<span className={cn('text-xs font-medium text-muted', senderClassName)}>{t('agent.batch')}</span>
|
|
142
|
-
<span className="text-xs text-
|
|
142
|
+
<span className="text-xs text-info font-medium">{tool_name}</span>
|
|
143
143
|
<span className="text-xs text-muted">
|
|
144
144
|
{completed}/{total}
|
|
145
145
|
</span>
|
|
@@ -169,9 +169,9 @@ function BatchProgressPanelComponent({
|
|
|
169
169
|
</div>
|
|
170
170
|
|
|
171
171
|
{/* Progress bar */}
|
|
172
|
-
<div className={cn('px-4 py-2 bg-
|
|
172
|
+
<div className={cn('px-4 py-2 bg-muted/50 dark:bg-muted/30', progressBarClassName)}>
|
|
173
173
|
<div className="flex items-center gap-3">
|
|
174
|
-
<div className="flex-1 h-2 bg-
|
|
174
|
+
<div className="flex-1 h-2 bg-muted rounded-full overflow-hidden">
|
|
175
175
|
<div
|
|
176
176
|
className={`h-full ${getProgressColor()} transition-all duration-300 ease-out`}
|
|
177
177
|
style={{ width: `${progress}%` }}
|
|
@@ -191,7 +191,7 @@ function BatchProgressPanelComponent({
|
|
|
191
191
|
</span>
|
|
192
192
|
)}
|
|
193
193
|
{isRunning && completed < total && (
|
|
194
|
-
<span className="text-
|
|
194
|
+
<span className="text-info flex items-center gap-1">
|
|
195
195
|
<Loader2 className="size-3 animate-spin" />
|
|
196
196
|
{total - completed}
|
|
197
197
|
</span>
|
|
@@ -207,7 +207,7 @@ function BatchProgressPanelComponent({
|
|
|
207
207
|
<div
|
|
208
208
|
key={item.id}
|
|
209
209
|
className={cn(
|
|
210
|
-
'flex items-center gap-2 px-4 py-1.5 text-xs border-b border-
|
|
210
|
+
'flex items-center gap-2 px-4 py-1.5 text-xs border-b border-border last:border-b-0 hover:bg-muted',
|
|
211
211
|
itemClassName,
|
|
212
212
|
)}
|
|
213
213
|
>
|
|
@@ -215,9 +215,9 @@ function BatchProgressPanelComponent({
|
|
|
215
215
|
<div className="w-4 flex-shrink-0">
|
|
216
216
|
{item.status === 'success' && <CheckCircle className="size-3 text-success" />}
|
|
217
217
|
{item.status === 'error' && <AlertCircle className="size-3 text-destructive" />}
|
|
218
|
-
{item.status === 'running' && <Loader2 className="size-3 text-
|
|
218
|
+
{item.status === 'running' && <Loader2 className="size-3 text-info animate-spin" />}
|
|
219
219
|
{item.status === 'pending' && (
|
|
220
|
-
<div className="size-3 rounded-full border border-
|
|
220
|
+
<div className="size-3 rounded-full border border-border" />
|
|
221
221
|
)}
|
|
222
222
|
</div>
|
|
223
223
|
|
|
@@ -45,15 +45,15 @@ export default function InlineSlideInPanel({
|
|
|
45
45
|
|
|
46
46
|
return (
|
|
47
47
|
<div
|
|
48
|
-
className={`absolute top-12 end-0 bottom-0 z-40 bg-white dark:bg-
|
|
48
|
+
className={`absolute top-12 end-0 bottom-0 z-40 bg-white dark:bg-muted shadow-lg border-s border-border border-4 border-destructive`}
|
|
49
49
|
style={{ width, transform: 'none' }}
|
|
50
50
|
>
|
|
51
51
|
{/* Header */}
|
|
52
|
-
<div className="flex items-center justify-between p-3 border-b border-
|
|
53
|
-
<h3 className="font-medium text-
|
|
52
|
+
<div className="flex items-center justify-between p-3 border-b border-border">
|
|
53
|
+
<h3 className="font-medium text-foreground text-sm">{title}</h3>
|
|
54
54
|
<Button
|
|
55
55
|
variant="unstyled"
|
|
56
|
-
className="p-1 text-
|
|
56
|
+
className="p-1 text-muted hover:text-foreground rounded-full"
|
|
57
57
|
onClick={onClose}
|
|
58
58
|
aria-label="Close"
|
|
59
59
|
>
|
|
@@ -456,8 +456,8 @@ export default function MessageInput({
|
|
|
456
456
|
>
|
|
457
457
|
{/* Drag overlay */}
|
|
458
458
|
{isDragOver && canDropFiles && (
|
|
459
|
-
<div className="absolute inset-0 flex items-center justify-center bg-
|
|
460
|
-
<div className="text-
|
|
459
|
+
<div className="absolute inset-0 flex items-center justify-center bg-info/80 dark:bg-info/40 rounded-lg z-10 pointer-events-none">
|
|
460
|
+
<div className="text-info font-medium flex items-center gap-2">
|
|
461
461
|
<UploadIcon className="size-5" />
|
|
462
462
|
{t('agent.dropFilesToUpload')}
|
|
463
463
|
</div>
|
|
@@ -140,8 +140,8 @@ export const MESSAGE_STYLES: Record<AgentMessageType | 'default', MessageStyleCo
|
|
|
140
140
|
},
|
|
141
141
|
[AgentMessageType.QUESTION]: { borderColor: 'border-s-muted', iconColor: 'text-muted', sender: 'User', Icon: User },
|
|
142
142
|
[AgentMessageType.THOUGHT]: {
|
|
143
|
-
borderColor: 'border-s-
|
|
144
|
-
iconColor: 'text-
|
|
143
|
+
borderColor: 'border-s-done',
|
|
144
|
+
iconColor: 'text-done',
|
|
145
145
|
sender: 'Agent',
|
|
146
146
|
Icon: Bot,
|
|
147
147
|
},
|
|
@@ -183,8 +183,8 @@ export const MESSAGE_STYLES: Record<AgentMessageType | 'default', MessageStyleCo
|
|
|
183
183
|
Icon: Bot,
|
|
184
184
|
},
|
|
185
185
|
[AgentMessageType.BATCH_PROGRESS]: {
|
|
186
|
-
borderColor: 'border-s-
|
|
187
|
-
iconColor: 'text-
|
|
186
|
+
borderColor: 'border-s-info',
|
|
187
|
+
iconColor: 'text-info',
|
|
188
188
|
sender: 'Batch',
|
|
189
189
|
Icon: Layers,
|
|
190
190
|
},
|
|
@@ -412,7 +412,7 @@ function MessageItemComponent({
|
|
|
412
412
|
// Handle object content (JSON)
|
|
413
413
|
if (typeof content === 'object') {
|
|
414
414
|
return (
|
|
415
|
-
<pre className="text-xs font-mono whitespace-pre-wrap overflow-x-auto bg-
|
|
415
|
+
<pre className="text-xs font-mono whitespace-pre-wrap overflow-x-auto bg-muted p-2 rounded text-foreground">
|
|
416
416
|
{JSON.stringify(content, null, 2)}
|
|
417
417
|
</pre>
|
|
418
418
|
);
|
|
@@ -548,7 +548,7 @@ function MessageItemComponent({
|
|
|
548
548
|
<div className={cn('w-full max-w-full', resolvedStyle.className)}>
|
|
549
549
|
<div
|
|
550
550
|
className={cn(
|
|
551
|
-
'border-s-4 bg-white dark:bg-
|
|
551
|
+
'border-s-4 bg-white dark:bg-muted mb-4 w-full max-w-full overflow-hidden',
|
|
552
552
|
resolvedStyle.borderColor,
|
|
553
553
|
resolvedStyle.cardClassName,
|
|
554
554
|
)}
|
|
@@ -611,12 +611,7 @@ function MessageItemComponent({
|
|
|
611
611
|
</div>
|
|
612
612
|
|
|
613
613
|
{/* Message content */}
|
|
614
|
-
<div
|
|
615
|
-
className={cn(
|
|
616
|
-
'px-4 pb-3 bg-white dark:bg-gray-900 overflow-hidden',
|
|
617
|
-
resolvedStyle.contentClassName,
|
|
618
|
-
)}
|
|
619
|
-
>
|
|
614
|
+
<div className={cn('px-4 pb-3 bg-white dark:bg-muted overflow-hidden', resolvedStyle.contentClassName)}>
|
|
620
615
|
{/* Check for REQUEST_INPUT with UX config - render AskUserWidget instead of plain text */}
|
|
621
616
|
{askUserUx ? (
|
|
622
617
|
<AskUserWidget
|
|
@@ -50,7 +50,7 @@ export default function MessagesContainer({
|
|
|
50
50
|
>
|
|
51
51
|
{sortedMessages.length === 0 ? (
|
|
52
52
|
<div className={`flex items-center justify-center h-full text-center py-8 ${emptyClassName || ''}`}>
|
|
53
|
-
<div className="flex items-center px-4 py-3 text-
|
|
53
|
+
<div className="flex items-center px-4 py-3 text-muted">Waiting for agent response...</div>
|
|
54
54
|
</div>
|
|
55
55
|
) : (
|
|
56
56
|
<div className={`flex-1 flex flex-col justify-start h-full min-h-0 ${messagesClassName || ''}`}>
|
|
@@ -14,8 +14,8 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
14
14
|
if (!isVisible) return null;
|
|
15
15
|
|
|
16
16
|
return (
|
|
17
|
-
<div className="border-b border-
|
|
18
|
-
<div className="text-xs font-medium mb-2 text-
|
|
17
|
+
<div className="border-b border-border bg-muted p-3 shadow-sm transition-all duration-300 ease-in-out transform">
|
|
18
|
+
<div className="text-xs font-medium mb-2 text-foreground">{t('agent.agentPlan')}</div>
|
|
19
19
|
|
|
20
20
|
{/* Plan Steps */}
|
|
21
21
|
{plan.plan && plan.plan.length > 0 ? (
|
|
@@ -34,14 +34,14 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
34
34
|
|
|
35
35
|
// Determine status icon and style
|
|
36
36
|
let StatusIcon = Circle;
|
|
37
|
-
let statusColor = 'text-
|
|
37
|
+
let statusColor = 'text-muted';
|
|
38
38
|
|
|
39
39
|
if (status === 'in_progress') {
|
|
40
40
|
StatusIcon = Clock;
|
|
41
|
-
statusColor = 'text-
|
|
41
|
+
statusColor = 'text-info';
|
|
42
42
|
} else if (status === 'completed') {
|
|
43
43
|
StatusIcon = CheckCircle;
|
|
44
|
-
statusColor = 'text-
|
|
44
|
+
statusColor = 'text-success';
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
return (
|
|
@@ -50,8 +50,8 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
50
50
|
<StatusIcon className="h-3.5 w-3.5" />
|
|
51
51
|
</div>
|
|
52
52
|
<div className="text-xs">
|
|
53
|
-
<span className="text-
|
|
54
|
-
<span className="ms-1 bg-
|
|
53
|
+
<span className="text-foreground">{taskGoal}</span>
|
|
54
|
+
<span className="ms-1 bg-muted px-1 py-0.5 rounded text-[10px] font-mono">
|
|
55
55
|
{taskId}
|
|
56
56
|
</span>
|
|
57
57
|
</div>
|
|
@@ -60,18 +60,16 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
60
60
|
})}
|
|
61
61
|
</div>
|
|
62
62
|
) : (
|
|
63
|
-
<div className="text-xs text-
|
|
64
|
-
<AlertCircle className="h-3.5 w-3.5 me-1.5 text-
|
|
63
|
+
<div className="text-xs text-muted italic flex items-center">
|
|
64
|
+
<AlertCircle className="h-3.5 w-3.5 me-1.5 text-attention" />
|
|
65
65
|
{t('agent.noPlanDetected')}
|
|
66
66
|
</div>
|
|
67
67
|
)}
|
|
68
68
|
|
|
69
69
|
{/* Workstream Status Summary */}
|
|
70
70
|
{workstreamStatus.size > 1 && (
|
|
71
|
-
<div className="mt-3 pt-2 border-t border-
|
|
72
|
-
<div className="text-xs font-medium mb-1.5 text-
|
|
73
|
-
{t('agent.workstreams')}
|
|
74
|
-
</div>
|
|
71
|
+
<div className="mt-3 pt-2 border-t border-border">
|
|
72
|
+
<div className="text-xs font-medium mb-1.5 text-foreground">{t('agent.workstreams')}</div>
|
|
75
73
|
<div className="grid grid-cols-2 gap-1.5">
|
|
76
74
|
{Array.from(workstreamStatus.entries())
|
|
77
75
|
// Filter to only show real workstreams (main or those with valid names - not numeric IDs)
|
|
@@ -91,16 +89,16 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
91
89
|
})
|
|
92
90
|
.map(([id, status]) => {
|
|
93
91
|
let StatusIcon = Circle;
|
|
94
|
-
let statusColor = 'text-
|
|
92
|
+
let statusColor = 'text-muted';
|
|
95
93
|
let statusText = t('agent.pending');
|
|
96
94
|
|
|
97
95
|
if (status === 'in_progress') {
|
|
98
96
|
StatusIcon = Clock;
|
|
99
|
-
statusColor = 'text-
|
|
97
|
+
statusColor = 'text-info';
|
|
100
98
|
statusText = t('agent.inProgress');
|
|
101
99
|
} else if (status === 'completed') {
|
|
102
100
|
StatusIcon = CheckCircle;
|
|
103
|
-
statusColor = 'text-
|
|
101
|
+
statusColor = 'text-success';
|
|
104
102
|
statusText = t('agent.completed');
|
|
105
103
|
}
|
|
106
104
|
|
|
@@ -112,12 +110,8 @@ export default function PlanPanel({ plan, workstreamStatus, isVisible }: PlanPan
|
|
|
112
110
|
<div className={`me-1.5 ${statusColor}`}>
|
|
113
111
|
<StatusIcon className="h-3 w-3" />
|
|
114
112
|
</div>
|
|
115
|
-
<span className="text-[10px] font-medium text-
|
|
116
|
-
|
|
117
|
-
</span>
|
|
118
|
-
<span className="text-[10px] text-gray-500 dark:text-gray-500 ms-1">
|
|
119
|
-
{statusText}
|
|
120
|
-
</span>
|
|
113
|
+
<span className="text-[10px] font-medium text-muted">{displayId}</span>
|
|
114
|
+
<span className="text-[10px] text-muted ms-1">{statusText}</span>
|
|
121
115
|
</div>
|
|
122
116
|
);
|
|
123
117
|
})}
|
|
@@ -48,15 +48,15 @@ export default function SlideInPanel({ isOpen, onClose, title, children, width =
|
|
|
48
48
|
|
|
49
49
|
{/* Slide-in panel */}
|
|
50
50
|
<div
|
|
51
|
-
className={`fixed top-0 end-0 bottom-0 z-50 bg-white dark:bg-
|
|
51
|
+
className={`fixed top-0 end-0 bottom-0 z-50 bg-white dark:bg-muted shadow-lg border-s border-border transition-transform duration-300 ease-in-out ${panelTranslateClass}`}
|
|
52
52
|
style={{ width }}
|
|
53
53
|
>
|
|
54
54
|
{/* Header */}
|
|
55
|
-
<div className="flex items-center justify-between p-4 border-b border-
|
|
56
|
-
<h3 className="font-medium text-
|
|
55
|
+
<div className="flex items-center justify-between p-4 border-b border-border">
|
|
56
|
+
<h3 className="font-medium text-foreground">{title}</h3>
|
|
57
57
|
<Button
|
|
58
58
|
variant="unstyled"
|
|
59
|
-
className="p-1 text-
|
|
59
|
+
className="p-1 text-muted hover:text-foreground rounded-full"
|
|
60
60
|
onClick={onClose}
|
|
61
61
|
aria-label="Close"
|
|
62
62
|
>
|
|
@@ -82,10 +82,8 @@ export default function SlidingMessages({ messages, isCompleted }: SlidingMessag
|
|
|
82
82
|
{/* If no messages and not completed, show a placeholder thinking message */}
|
|
83
83
|
{messages.length === 0 && !isCompleted && (
|
|
84
84
|
<div className="flex items-center justify-center flex-1 text-center py-8">
|
|
85
|
-
<div className="flex items-center gap-3 bg-
|
|
86
|
-
<div className="text-sm text-
|
|
87
|
-
{ThinkingMessages[thinkingMessageIndex]}
|
|
88
|
-
</div>
|
|
85
|
+
<div className="flex items-center gap-3 bg-info rounded-lg border border-info px-4 py-3">
|
|
86
|
+
<div className="text-sm text-info font-medium">{ThinkingMessages[thinkingMessageIndex]}</div>
|
|
89
87
|
</div>
|
|
90
88
|
</div>
|
|
91
89
|
)}
|