@vertesia/ui 1.0.0-dev.20260305.083323Z → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/esm/core/components/SelectList.js +3 -1
- package/lib/esm/core/components/SelectList.js.map +1 -1
- package/lib/esm/core/components/SidePanel.js +2 -2
- package/lib/esm/core/components/SidePanel.js.map +1 -1
- package/lib/esm/core/components/index.js +0 -5
- package/lib/esm/core/components/index.js.map +1 -1
- package/lib/esm/core/components/shadcn/breadcrumb.js +11 -7
- package/lib/esm/core/components/shadcn/breadcrumb.js.map +1 -1
- package/lib/esm/core/components/shadcn/button.js +5 -3
- package/lib/esm/core/components/shadcn/button.js.map +1 -1
- package/lib/esm/core/components/shadcn/collaspible.js +14 -0
- package/lib/esm/core/components/shadcn/collaspible.js.map +1 -0
- package/lib/esm/core/components/shadcn/dropdown.js +61 -0
- package/lib/esm/core/components/shadcn/dropdown.js.map +1 -0
- package/lib/esm/core/components/shadcn/filters/comboBox/DateCombobox.js +3 -1
- package/lib/esm/core/components/shadcn/filters/comboBox/DateCombobox.js.map +1 -1
- package/lib/esm/core/components/shadcn/filters/comboBox/SelectCombobox.js +3 -1
- package/lib/esm/core/components/shadcn/filters/comboBox/SelectCombobox.js.map +1 -1
- package/lib/esm/core/components/shadcn/filters/comboBox/StringListCombobox.js +1 -1
- package/lib/esm/core/components/shadcn/filters/comboBox/StringListCombobox.js.map +1 -1
- package/lib/esm/core/components/shadcn/filters/filter/StringListFilter.js +1 -1
- package/lib/esm/core/components/shadcn/filters/filter/StringListFilter.js.map +1 -1
- package/lib/esm/core/components/shadcn/filters/filter/dateFilter.js +4 -2
- package/lib/esm/core/components/shadcn/filters/filter/dateFilter.js.map +1 -1
- package/lib/esm/core/components/shadcn/filters/filterBar.js +7 -4
- package/lib/esm/core/components/shadcn/filters/filterBar.js.map +1 -1
- package/lib/esm/core/components/shadcn/index.js +4 -0
- package/lib/esm/core/components/shadcn/index.js.map +1 -1
- package/lib/esm/core/components/shadcn/modal/ConfirmModal.js +4 -2
- package/lib/esm/core/components/shadcn/modal/ConfirmModal.js.map +1 -1
- package/lib/esm/core/components/shadcn/modal/DeleteModal.js +5 -3
- package/lib/esm/core/components/shadcn/modal/DeleteModal.js.map +1 -1
- package/lib/esm/core/components/shadcn/popover.js +11 -7
- package/lib/esm/core/components/shadcn/popover.js.map +1 -1
- package/lib/esm/core/components/shadcn/radioGroup.js +29 -0
- package/lib/esm/core/components/shadcn/radioGroup.js.map +1 -0
- package/lib/esm/core/components/shadcn/switch.js +19 -0
- package/lib/esm/core/components/shadcn/switch.js.map +1 -0
- package/lib/esm/core/components/shadcn/tabs.js +6 -6
- package/lib/esm/core/components/shadcn/tabs.js.map +1 -1
- package/lib/esm/core/components/shadcn/theme/ThemeSwitcher.js +7 -4
- package/lib/esm/core/components/shadcn/theme/ThemeSwitcher.js.map +1 -1
- package/lib/esm/core/components/toast/NotificationPanel.js +3 -3
- package/lib/esm/core/components/toast/NotificationPanel.js.map +1 -1
- package/lib/esm/env/index.js +11 -1
- package/lib/esm/env/index.js.map +1 -1
- package/lib/esm/features/agent/PayloadBuilder.js +87 -15
- package/lib/esm/features/agent/PayloadBuilder.js.map +1 -1
- package/lib/esm/features/agent/chat/AgentRightPanel.js +159 -0
- package/lib/esm/features/agent/chat/AgentRightPanel.js.map +1 -0
- package/lib/esm/features/agent/chat/ArtifactsTab.js +69 -0
- package/lib/esm/features/agent/chat/ArtifactsTab.js.map +1 -0
- package/lib/esm/features/agent/chat/AskUserWidget.js +12 -6
- package/lib/esm/features/agent/chat/AskUserWidget.js.map +1 -1
- package/lib/esm/features/agent/chat/DocumentPanel.js +6 -3
- package/lib/esm/features/agent/chat/DocumentPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/ImageLightbox.js +3 -1
- package/lib/esm/features/agent/chat/ImageLightbox.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentConversation.js +243 -106
- package/lib/esm/features/agent/chat/ModernAgentConversation.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +122 -52
- package/lib/esm/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js +5 -3
- package/lib/esm/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/Header.js +57 -18
- package/lib/esm/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.js +82 -83
- package/lib/esm/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/MessageInput.js +16 -14
- package/lib/esm/features/agent/chat/ModernAgentOutput/MessageInput.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/MessageItem.js +20 -5
- package/lib/esm/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/PlanPanel.js +8 -6
- package/lib/esm/features/agent/chat/ModernAgentOutput/PlanPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.js +12 -10
- package/lib/esm/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/StreamingMessage.js +5 -3
- package/lib/esm/features/agent/chat/ModernAgentOutput/StreamingMessage.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/ToolCallGroup.js +104 -13
- package/lib/esm/features/agent/chat/ModernAgentOutput/ToolCallGroup.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js +9 -5
- package/lib/esm/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js.map +1 -1
- package/lib/esm/features/agent/chat/ModernAgentOutput/utils.js +160 -76
- package/lib/esm/features/agent/chat/ModernAgentOutput/utils.js.map +1 -1
- package/lib/esm/features/agent/chat/SlidingThinkingIndicator.js +3 -1
- package/lib/esm/features/agent/chat/SlidingThinkingIndicator.js.map +1 -1
- package/lib/esm/features/agent/chat/VegaLiteChart.js +14 -2
- package/lib/esm/features/agent/chat/VegaLiteChart.js.map +1 -1
- package/lib/esm/features/agent/chat/hooks/useAgentPlans.js +3 -8
- package/lib/esm/features/agent/chat/hooks/useAgentPlans.js.map +1 -1
- package/lib/esm/features/agent/chat/hooks/useAgentStream.js +75 -16
- package/lib/esm/features/agent/chat/hooks/useAgentStream.js.map +1 -1
- package/lib/esm/features/agent/chat/hooks/useArtifacts.js +108 -0
- package/lib/esm/features/agent/chat/hooks/useArtifacts.js.map +1 -0
- package/lib/esm/features/agent/chat/hooks/useDocumentPanel.js +56 -5
- package/lib/esm/features/agent/chat/hooks/useDocumentPanel.js.map +1 -1
- package/lib/esm/features/agent/chat/hooks/useFileProcessing.js +12 -10
- package/lib/esm/features/agent/chat/hooks/useFileProcessing.js.map +1 -1
- package/lib/esm/features/errors/PanelErrorBoundary.js +3 -1
- package/lib/esm/features/errors/PanelErrorBoundary.js.map +1 -1
- package/lib/esm/features/facets/AgentRunnerFacetsNav.js +45 -33
- package/lib/esm/features/facets/AgentRunnerFacetsNav.js.map +1 -1
- package/lib/esm/features/facets/RunsFacetsNav.js +1 -1
- package/lib/esm/features/facets/RunsFacetsNav.js.map +1 -1
- package/lib/esm/features/facets/index.js +1 -1
- package/lib/esm/features/facets/index.js.map +1 -1
- package/lib/esm/features/layout/GenericPageNavHeader.js +40 -28
- package/lib/esm/features/layout/GenericPageNavHeader.js.map +1 -1
- package/lib/esm/features/layout/NotFoundView.js +3 -1
- package/lib/esm/features/layout/NotFoundView.js.map +1 -1
- package/lib/esm/features/magic-pdf/AnnotatedImageSlider.js +9 -5
- package/lib/esm/features/magic-pdf/AnnotatedImageSlider.js.map +1 -1
- package/lib/esm/features/magic-pdf/DownloadPopover.js +5 -4
- package/lib/esm/features/magic-pdf/DownloadPopover.js.map +1 -1
- package/lib/esm/features/magic-pdf/MagicPdfView.js +8 -5
- package/lib/esm/features/magic-pdf/MagicPdfView.js.map +1 -1
- package/lib/esm/features/pdf-viewer/PdfPageSlider.js +9 -5
- package/lib/esm/features/pdf-viewer/PdfPageSlider.js.map +1 -1
- package/lib/esm/features/pdf-viewer/SimplePdfViewer.js +5 -3
- package/lib/esm/features/pdf-viewer/SimplePdfViewer.js.map +1 -1
- package/lib/esm/features/permissions/UserPermissionsProvider.js +3 -1
- package/lib/esm/features/permissions/UserPermissionsProvider.js.map +1 -1
- package/lib/esm/features/store/collections/BrowseCollectionView.js +9 -1
- package/lib/esm/features/store/collections/BrowseCollectionView.js.map +1 -1
- package/lib/esm/features/store/collections/CollectionsTable.js +14 -7
- package/lib/esm/features/store/collections/CollectionsTable.js.map +1 -1
- package/lib/esm/features/store/collections/CreateCollection.js +12 -9
- package/lib/esm/features/store/collections/CreateCollection.js.map +1 -1
- package/lib/esm/features/store/collections/EditCollectionView.js +23 -19
- package/lib/esm/features/store/collections/EditCollectionView.js.map +1 -1
- package/lib/esm/features/store/collections/SelectCollection.js +25 -10
- package/lib/esm/features/store/collections/SelectCollection.js.map +1 -1
- package/lib/esm/features/store/collections/SharedPropsEditor.js +5 -3
- package/lib/esm/features/store/collections/SharedPropsEditor.js.map +1 -1
- package/lib/esm/features/store/collections/SyncMemberHeadsToggle.js +5 -3
- package/lib/esm/features/store/collections/SyncMemberHeadsToggle.js.map +1 -1
- package/lib/esm/features/store/objects/DocumentPreviewPanel.js +14 -12
- package/lib/esm/features/store/objects/DocumentPreviewPanel.js.map +1 -1
- package/lib/esm/features/store/objects/DocumentSearchResults.js +15 -5
- package/lib/esm/features/store/objects/DocumentSearchResults.js.map +1 -1
- package/lib/esm/features/store/objects/DocumentTable.js +10 -7
- package/lib/esm/features/store/objects/DocumentTable.js.map +1 -1
- package/lib/esm/features/store/objects/ExportPropertiesModal.js +5 -2
- package/lib/esm/features/store/objects/ExportPropertiesModal.js.map +1 -1
- package/lib/esm/features/store/objects/components/ContentDispositionButton.js +3 -1
- package/lib/esm/features/store/objects/components/ContentDispositionButton.js.map +1 -1
- package/lib/esm/features/store/objects/components/ContentOverview.js +55 -40
- package/lib/esm/features/store/objects/components/ContentOverview.js.map +1 -1
- package/lib/esm/features/store/objects/components/DocumentIcon.js +4 -3
- package/lib/esm/features/store/objects/components/DocumentIcon.js.map +1 -1
- package/lib/esm/features/store/objects/components/PropertiesEditorModal.js +13 -11
- package/lib/esm/features/store/objects/components/PropertiesEditorModal.js.map +1 -1
- package/lib/esm/features/store/objects/components/SaveVersionConfirmModal.js +15 -18
- package/lib/esm/features/store/objects/components/SaveVersionConfirmModal.js.map +1 -1
- package/lib/esm/features/store/objects/components/SelectDocument.js +9 -6
- package/lib/esm/features/store/objects/components/SelectDocument.js.map +1 -1
- package/lib/esm/features/store/objects/components/TextEditorPanel.js +97 -0
- package/lib/esm/features/store/objects/components/TextEditorPanel.js.map +1 -0
- package/lib/esm/features/store/objects/components/VectorSearchWidget.js +3 -1
- package/lib/esm/features/store/objects/components/VectorSearchWidget.js.map +1 -1
- package/lib/esm/features/store/objects/components/useContentPanelHooks.js +4 -2
- package/lib/esm/features/store/objects/components/useContentPanelHooks.js.map +1 -1
- package/lib/esm/features/store/objects/components/useDownloadFile.js +12 -10
- package/lib/esm/features/store/objects/components/useDownloadFile.js.map +1 -1
- package/lib/esm/features/store/objects/layout/documentLayout.js +10 -6
- package/lib/esm/features/store/objects/layout/documentLayout.js.map +1 -1
- package/lib/esm/features/store/objects/layout/renderers.js +10 -1
- package/lib/esm/features/store/objects/layout/renderers.js.map +1 -1
- package/lib/esm/features/store/objects/search/DocumentSearchContext.js +3 -2
- package/lib/esm/features/store/objects/search/DocumentSearchContext.js.map +1 -1
- package/lib/esm/features/store/objects/search/DocumentSearchProvider.js +3 -0
- package/lib/esm/features/store/objects/search/DocumentSearchProvider.js.map +1 -1
- package/lib/esm/features/store/objects/selection/ObjectsActionContext.js +22 -109
- package/lib/esm/features/store/objects/selection/ObjectsActionContext.js.map +1 -1
- package/lib/esm/features/store/objects/selection/ObjectsActionContextClass.js +50 -0
- package/lib/esm/features/store/objects/selection/ObjectsActionContextClass.js.map +1 -0
- package/lib/esm/features/store/objects/selection/ObjectsActionHooks.js +27 -0
- package/lib/esm/features/store/objects/selection/ObjectsActionHooks.js.map +1 -0
- package/lib/esm/features/store/objects/selection/SelectionActions.js +10 -6
- package/lib/esm/features/store/objects/selection/SelectionActions.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/AddToCollectionAction.js +17 -12
- package/lib/esm/features/store/objects/selection/actions/AddToCollectionAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/ChangeTypeAction.js +9 -5
- package/lib/esm/features/store/objects/selection/actions/ChangeTypeAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/ConfirmAction.js +4 -2
- package/lib/esm/features/store/objects/selection/actions/ConfirmAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/DeleteObjectsAction.js +24 -23
- package/lib/esm/features/store/objects/selection/actions/DeleteObjectsAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/ExportPropertiesAction.js +10 -5
- package/lib/esm/features/store/objects/selection/actions/ExportPropertiesAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/RemoveFromCollectionAction.js +13 -9
- package/lib/esm/features/store/objects/selection/actions/RemoveFromCollectionAction.js.map +1 -1
- package/lib/esm/features/store/objects/selection/actions/StartWorkflowComponent.js +14 -8
- package/lib/esm/features/store/objects/selection/actions/StartWorkflowComponent.js.map +1 -1
- package/lib/esm/features/store/objects/upload/DocumentUploadModal.js +42 -39
- package/lib/esm/features/store/objects/upload/DocumentUploadModal.js.map +1 -1
- package/lib/esm/features/store/objects/upload/useSmartFileUploadProcessing.js +4 -2
- package/lib/esm/features/store/objects/upload/useSmartFileUploadProcessing.js.map +1 -1
- package/lib/esm/features/store/objects/upload/useUploadHandler.js +9 -7
- package/lib/esm/features/store/objects/upload/useUploadHandler.js.map +1 -1
- package/lib/esm/features/store/types/ContentObjectTypesSearch.js +6 -4
- package/lib/esm/features/store/types/ContentObjectTypesSearch.js.map +1 -1
- package/lib/esm/features/store/types/ContentObjectTypesTable.js +3 -1
- package/lib/esm/features/store/types/ContentObjectTypesTable.js.map +1 -1
- package/lib/esm/features/store/types/CreateOrUpdateTypeModal.js +6 -7
- package/lib/esm/features/store/types/CreateOrUpdateTypeModal.js.map +1 -1
- package/lib/esm/features/store/types/ObjectSchemaEditor.js +9 -7
- package/lib/esm/features/store/types/ObjectSchemaEditor.js.map +1 -1
- package/lib/esm/features/store/types/SelectContentType.js +9 -7
- package/lib/esm/features/store/types/SelectContentType.js.map +1 -1
- package/lib/esm/features/store/types/SelectContentTypeModal.js +5 -2
- package/lib/esm/features/store/types/SelectContentTypeModal.js.map +1 -1
- package/lib/esm/features/store/types/TableLayoutEditor.js +6 -4
- package/lib/esm/features/store/types/TableLayoutEditor.js.map +1 -1
- package/lib/esm/features/user/UserInfo.js +40 -50
- package/lib/esm/features/user/UserInfo.js.map +1 -1
- package/lib/esm/i18n/index.js +31 -0
- package/lib/esm/i18n/index.js.map +1 -0
- package/lib/esm/i18n/instance.js +46 -0
- package/lib/esm/i18n/instance.js.map +1 -0
- package/lib/esm/i18n/locales/ar.json +694 -0
- package/lib/esm/i18n/locales/de.json +662 -0
- package/lib/esm/i18n/locales/en.json +663 -0
- package/lib/esm/i18n/locales/es.json +668 -0
- package/lib/esm/i18n/locales/fr.json +670 -0
- package/lib/esm/i18n/locales/it.json +668 -0
- package/lib/esm/i18n/locales/ja.json +662 -0
- package/lib/esm/i18n/locales/ko.json +662 -0
- package/lib/esm/i18n/locales/pt.json +668 -0
- package/lib/esm/i18n/locales/ru.json +678 -0
- package/lib/esm/i18n/locales/tr.json +662 -0
- package/lib/esm/i18n/locales/zh-TW.json +662 -0
- package/lib/esm/i18n/locales/zh.json +662 -0
- package/lib/esm/layout/FullHeightLayout.js +3 -0
- package/lib/esm/layout/FullHeightLayout.js.map +1 -1
- package/lib/esm/layout/Navbar.js +3 -1
- package/lib/esm/layout/Navbar.js.map +1 -1
- package/lib/esm/layout/RegionTag.js +15 -0
- package/lib/esm/layout/RegionTag.js.map +1 -0
- package/lib/esm/layout/Sidebar.js +2 -2
- package/lib/esm/layout/Sidebar.js.map +1 -1
- package/lib/esm/layout/index.js +1 -0
- package/lib/esm/layout/index.js.map +1 -1
- package/lib/esm/router/HistoryNavigator.js +1 -1
- package/lib/esm/router/HistoryNavigator.js.map +1 -1
- package/lib/esm/router/Nav.js +5 -3
- package/lib/esm/router/Nav.js.map +1 -1
- package/lib/esm/router/NestedNavigationContext.js +4 -0
- package/lib/esm/router/NestedNavigationContext.js.map +1 -1
- package/lib/esm/router/NestedRouterProvider.js +3 -1
- package/lib/esm/router/NestedRouterProvider.js.map +1 -1
- package/lib/esm/router/Router.js +21 -6
- package/lib/esm/router/Router.js.map +1 -1
- package/lib/esm/session/UserSession.js +23 -0
- package/lib/esm/session/UserSession.js.map +1 -1
- package/lib/esm/session/UserSessionProvider.js +4 -0
- package/lib/esm/session/UserSessionProvider.js.map +1 -1
- package/lib/esm/session/auth/composable.js +1 -1
- package/lib/esm/session/auth/composable.js.map +1 -1
- package/lib/esm/session/auth/firebase.js +1 -1
- package/lib/esm/session/auth/firebase.js.map +1 -1
- package/lib/esm/session/auth/useCurrentTenant.js +3 -1
- package/lib/esm/session/auth/useCurrentTenant.js.map +1 -1
- package/lib/esm/shell/SplashScreen.js +3 -7
- package/lib/esm/shell/SplashScreen.js.map +1 -1
- package/lib/esm/shell/apps/StandaloneApp.js +5 -2
- package/lib/esm/shell/apps/StandaloneApp.js.map +1 -1
- package/lib/esm/shell/login/EnterpriseSigninButton.js +5 -3
- package/lib/esm/shell/login/EnterpriseSigninButton.js.map +1 -1
- package/lib/esm/shell/login/GitHubSignInButton.js +3 -7
- package/lib/esm/shell/login/GitHubSignInButton.js.map +1 -1
- package/lib/esm/shell/login/GoogleSignInButton.js +3 -1
- package/lib/esm/shell/login/GoogleSignInButton.js.map +1 -1
- package/lib/esm/shell/login/InviteAcceptModal.js +5 -2
- package/lib/esm/shell/login/InviteAcceptModal.js.map +1 -1
- package/lib/esm/shell/login/MicrosoftSigninButton.js +4 -6
- package/lib/esm/shell/login/MicrosoftSigninButton.js.map +1 -1
- package/lib/esm/shell/login/SigninScreen.js +6 -2
- package/lib/esm/shell/login/SigninScreen.js.map +1 -1
- package/lib/esm/shell/login/SignupForm.js +36 -34
- package/lib/esm/shell/login/SignupForm.js.map +1 -1
- package/lib/esm/shell/login/TerminalLogin.js +28 -21
- package/lib/esm/shell/login/TerminalLogin.js.map +1 -1
- package/lib/esm/shell/login/UserInfo.js +6 -4
- package/lib/esm/shell/login/UserInfo.js.map +1 -1
- package/lib/esm/shell/login/UserSessionMenu.js +3 -4
- package/lib/esm/shell/login/UserSessionMenu.js.map +1 -1
- package/lib/esm/widgets/index.js +0 -1
- package/lib/esm/widgets/index.js.map +1 -1
- package/lib/esm/widgets/json-view/JSONCode.js +1 -1
- package/lib/esm/widgets/json-view/JSONCode.js.map +1 -1
- package/lib/esm/widgets/json-view/JSONDisplay.js +6 -2
- package/lib/esm/widgets/json-view/JSONDisplay.js.map +1 -1
- package/lib/esm/widgets/json-view/JSONSwitcher.js +6 -0
- package/lib/esm/widgets/json-view/JSONSwitcher.js.map +1 -0
- package/lib/esm/widgets/json-view/JSONView.js +1 -1
- package/lib/esm/widgets/json-view/JSONView.js.map +1 -1
- package/lib/esm/widgets/json-view/index.js +1 -0
- package/lib/esm/widgets/json-view/index.js.map +1 -1
- package/lib/esm/widgets/markdown/ArtifactContentRenderer.js +6 -5
- package/lib/esm/widgets/markdown/ArtifactContentRenderer.js.map +1 -1
- package/lib/esm/widgets/markdown/CodeBlockContext.js +11 -0
- package/lib/esm/widgets/markdown/CodeBlockContext.js.map +1 -0
- package/lib/esm/widgets/markdown/MarkdownRenderer.js +11 -10
- package/lib/esm/widgets/markdown/MarkdownRenderer.js.map +1 -1
- package/lib/esm/widgets/markdown/codeBlockHandlers.js +11 -12
- package/lib/esm/widgets/markdown/codeBlockHandlers.js.map +1 -1
- package/lib/esm/widgets/markdown/index.js +10 -9
- package/lib/esm/widgets/markdown/index.js.map +1 -1
- package/lib/esm/widgets/markdown/remarkDirectiveHandler.js +0 -1
- package/lib/esm/widgets/markdown/remarkDirectiveHandler.js.map +1 -1
- package/lib/esm/widgets/schema-editor/ManagedSchema.js +6 -5
- package/lib/esm/widgets/schema-editor/ManagedSchema.js.map +1 -1
- package/lib/esm/widgets/schema-editor/editor/PropertyEditor.js +7 -3
- package/lib/esm/widgets/schema-editor/editor/PropertyEditor.js.map +1 -1
- package/lib/esm/widgets/schema-editor/editor/SchemaEditor.js +3 -1
- package/lib/esm/widgets/schema-editor/editor/SchemaEditor.js.map +1 -1
- package/lib/esm/widgets/upload/DropZone.js +9 -11
- package/lib/esm/widgets/upload/DropZone.js.map +1 -1
- package/lib/esm/widgets/upload/UploadResultCategory.js +3 -1
- package/lib/esm/widgets/upload/UploadResultCategory.js.map +1 -1
- package/lib/esm/widgets/upload/UploadSummary.js +3 -1
- package/lib/esm/widgets/upload/UploadSummary.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/core/components/SelectList.d.ts.map +1 -1
- package/lib/types/core/components/SidePanel.d.ts +4 -2
- package/lib/types/core/components/SidePanel.d.ts.map +1 -1
- package/lib/types/core/components/index.d.ts +0 -5
- package/lib/types/core/components/index.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/badge.d.ts +2 -2
- package/lib/types/core/components/shadcn/breadcrumb.d.ts +1 -1
- package/lib/types/core/components/shadcn/breadcrumb.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/button.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/collaspible.d.ts +6 -0
- package/lib/types/core/components/shadcn/collaspible.d.ts.map +1 -0
- package/lib/types/core/components/shadcn/dropdown.d.ts +44 -0
- package/lib/types/core/components/shadcn/dropdown.d.ts.map +1 -0
- package/lib/types/core/components/shadcn/filters/comboBox/DateCombobox.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/filters/comboBox/SelectCombobox.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/filters/filter/dateFilter.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/filters/filterBar.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/index.d.ts +4 -0
- package/lib/types/core/components/shadcn/index.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/input.d.ts +1 -1
- package/lib/types/core/components/shadcn/modal/ConfirmModal.d.ts +2 -1
- package/lib/types/core/components/shadcn/modal/ConfirmModal.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/modal/DeleteModal.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/popover.d.ts +11 -3
- package/lib/types/core/components/shadcn/popover.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/radioGroup.d.ts +26 -0
- package/lib/types/core/components/shadcn/radioGroup.d.ts.map +1 -0
- package/lib/types/core/components/shadcn/switch.d.ts +12 -0
- package/lib/types/core/components/shadcn/switch.d.ts.map +1 -0
- package/lib/types/core/components/shadcn/tabs.d.ts +4 -2
- package/lib/types/core/components/shadcn/tabs.d.ts.map +1 -1
- package/lib/types/core/components/shadcn/theme/ThemeSwitcher.d.ts +3 -2
- package/lib/types/core/components/shadcn/theme/ThemeSwitcher.d.ts.map +1 -1
- package/lib/types/core/components/toast/NotificationPanel.d.ts.map +1 -1
- package/lib/types/env/index.d.ts +8 -1
- package/lib/types/env/index.d.ts.map +1 -1
- package/lib/types/features/agent/PayloadBuilder.d.ts +31 -3
- package/lib/types/features/agent/PayloadBuilder.d.ts.map +1 -1
- package/lib/types/features/agent/chat/AgentRightPanel.d.ts +50 -0
- package/lib/types/features/agent/chat/AgentRightPanel.d.ts.map +1 -0
- package/lib/types/features/agent/chat/ArtifactsTab.d.ts +9 -0
- package/lib/types/features/agent/chat/ArtifactsTab.d.ts.map +1 -0
- package/lib/types/features/agent/chat/AskUserWidget.d.ts.map +1 -1
- package/lib/types/features/agent/chat/DocumentPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ImageLightbox.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentConversation.d.ts +22 -9
- package/lib/types/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts +3 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/BatchProgressPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/Header.d.ts +12 -3
- package/lib/types/features/agent/chat/ModernAgentOutput/Header.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.d.ts +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/MessageInput.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/PlanPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/StreamingMessage.d.ts +3 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/StreamingMessage.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts +5 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/WorkstreamTabs.d.ts.map +1 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/utils.d.ts +16 -1
- package/lib/types/features/agent/chat/ModernAgentOutput/utils.d.ts.map +1 -1
- package/lib/types/features/agent/chat/SlidingThinkingIndicator.d.ts.map +1 -1
- package/lib/types/features/agent/chat/VegaLiteChart.d.ts.map +1 -1
- package/lib/types/features/agent/chat/hooks/useAgentPlans.d.ts.map +1 -1
- package/lib/types/features/agent/chat/hooks/useAgentStream.d.ts +3 -3
- package/lib/types/features/agent/chat/hooks/useAgentStream.d.ts.map +1 -1
- package/lib/types/features/agent/chat/hooks/useArtifacts.d.ts +18 -0
- package/lib/types/features/agent/chat/hooks/useArtifacts.d.ts.map +1 -0
- package/lib/types/features/agent/chat/hooks/useDocumentPanel.d.ts.map +1 -1
- package/lib/types/features/agent/chat/hooks/useFileProcessing.d.ts +4 -4
- package/lib/types/features/agent/chat/hooks/useFileProcessing.d.ts.map +1 -1
- package/lib/types/features/agent/chat/types/document.d.ts +2 -0
- package/lib/types/features/agent/chat/types/document.d.ts.map +1 -1
- package/lib/types/features/errors/PanelErrorBoundary.d.ts.map +1 -1
- package/lib/types/features/facets/AgentRunnerFacetsNav.d.ts +2 -1
- package/lib/types/features/facets/AgentRunnerFacetsNav.d.ts.map +1 -1
- package/lib/types/features/facets/index.d.ts +1 -1
- package/lib/types/features/facets/index.d.ts.map +1 -1
- package/lib/types/features/layout/GenericPageNavHeader.d.ts +2 -2
- package/lib/types/features/layout/GenericPageNavHeader.d.ts.map +1 -1
- package/lib/types/features/layout/NotFoundView.d.ts.map +1 -1
- package/lib/types/features/magic-pdf/AnnotatedImageSlider.d.ts.map +1 -1
- package/lib/types/features/magic-pdf/DownloadPopover.d.ts.map +1 -1
- package/lib/types/features/magic-pdf/MagicPdfView.d.ts.map +1 -1
- package/lib/types/features/pdf-viewer/PdfPageSlider.d.ts.map +1 -1
- package/lib/types/features/pdf-viewer/SimplePdfViewer.d.ts.map +1 -1
- package/lib/types/features/permissions/UserPermissionsProvider.d.ts.map +1 -1
- package/lib/types/features/store/collections/BrowseCollectionView.d.ts.map +1 -1
- package/lib/types/features/store/collections/CollectionsTable.d.ts +4 -0
- package/lib/types/features/store/collections/CollectionsTable.d.ts.map +1 -1
- package/lib/types/features/store/collections/CreateCollection.d.ts.map +1 -1
- package/lib/types/features/store/collections/EditCollectionView.d.ts.map +1 -1
- package/lib/types/features/store/collections/SelectCollection.d.ts.map +1 -1
- package/lib/types/features/store/collections/SharedPropsEditor.d.ts.map +1 -1
- package/lib/types/features/store/collections/SyncMemberHeadsToggle.d.ts.map +1 -1
- package/lib/types/features/store/objects/DocumentPreviewPanel.d.ts.map +1 -1
- package/lib/types/features/store/objects/DocumentSearchResults.d.ts.map +1 -1
- package/lib/types/features/store/objects/DocumentTable.d.ts.map +1 -1
- package/lib/types/features/store/objects/ExportPropertiesModal.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/ContentDispositionButton.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/ContentOverview.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/DocumentIcon.d.ts +2 -1
- package/lib/types/features/store/objects/components/DocumentIcon.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/PropertiesEditorModal.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/SaveVersionConfirmModal.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/SelectDocument.d.ts +3 -1
- package/lib/types/features/store/objects/components/SelectDocument.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/TextEditorPanel.d.ts +10 -0
- package/lib/types/features/store/objects/components/TextEditorPanel.d.ts.map +1 -0
- package/lib/types/features/store/objects/components/VectorSearchWidget.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/useContentPanelHooks.d.ts.map +1 -1
- package/lib/types/features/store/objects/components/useDownloadFile.d.ts.map +1 -1
- package/lib/types/features/store/objects/layout/documentLayout.d.ts +3 -2
- package/lib/types/features/store/objects/layout/documentLayout.d.ts.map +1 -1
- package/lib/types/features/store/objects/layout/renderers.d.ts.map +1 -1
- package/lib/types/features/store/objects/search/DocumentSearchContext.d.ts.map +1 -1
- package/lib/types/features/store/objects/search/DocumentSearchProvider.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/ObjectsActionContext.d.ts +3 -20
- package/lib/types/features/store/objects/selection/ObjectsActionContext.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/ObjectsActionContextClass.d.ts +16 -0
- package/lib/types/features/store/objects/selection/ObjectsActionContextClass.d.ts.map +1 -0
- package/lib/types/features/store/objects/selection/ObjectsActionHooks.d.ts +7 -0
- package/lib/types/features/store/objects/selection/ObjectsActionHooks.d.ts.map +1 -0
- package/lib/types/features/store/objects/selection/ObjectsActionSpec.d.ts +4 -1
- package/lib/types/features/store/objects/selection/ObjectsActionSpec.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/SelectionActions.d.ts +6 -1
- package/lib/types/features/store/objects/selection/SelectionActions.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/AddToCollectionAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/ChangeTypeAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/ConfirmAction.d.ts +1 -1
- package/lib/types/features/store/objects/selection/actions/ConfirmAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/DeleteObjectsAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/ExportPropertiesAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/RemoveFromCollectionAction.d.ts.map +1 -1
- package/lib/types/features/store/objects/selection/actions/StartWorkflowComponent.d.ts.map +1 -1
- package/lib/types/features/store/objects/upload/DocumentUploadModal.d.ts.map +1 -1
- package/lib/types/features/store/objects/upload/useSmartFileUploadProcessing.d.ts.map +1 -1
- package/lib/types/features/store/objects/upload/useUploadHandler.d.ts.map +1 -1
- package/lib/types/features/store/types/ContentObjectTypesSearch.d.ts.map +1 -1
- package/lib/types/features/store/types/ContentObjectTypesTable.d.ts.map +1 -1
- package/lib/types/features/store/types/CreateOrUpdateTypeModal.d.ts +2 -1
- package/lib/types/features/store/types/CreateOrUpdateTypeModal.d.ts.map +1 -1
- package/lib/types/features/store/types/ObjectSchemaEditor.d.ts.map +1 -1
- package/lib/types/features/store/types/SelectContentType.d.ts.map +1 -1
- package/lib/types/features/store/types/SelectContentTypeModal.d.ts.map +1 -1
- package/lib/types/features/store/types/TableLayoutEditor.d.ts.map +1 -1
- package/lib/types/features/user/UserInfo.d.ts +2 -2
- package/lib/types/features/user/UserInfo.d.ts.map +1 -1
- package/lib/types/i18n/index.d.ts +14 -0
- package/lib/types/i18n/index.d.ts.map +1 -0
- package/lib/types/i18n/instance.d.ts +5 -0
- package/lib/types/i18n/instance.d.ts.map +1 -0
- package/lib/types/layout/FullHeightLayout.d.ts +3 -0
- package/lib/types/layout/FullHeightLayout.d.ts.map +1 -1
- package/lib/types/layout/Navbar.d.ts.map +1 -1
- package/lib/types/layout/RegionTag.d.ts +4 -0
- package/lib/types/layout/RegionTag.d.ts.map +1 -0
- package/lib/types/layout/Sidebar.d.ts +2 -1
- package/lib/types/layout/Sidebar.d.ts.map +1 -1
- package/lib/types/layout/index.d.ts +1 -0
- package/lib/types/layout/index.d.ts.map +1 -1
- package/lib/types/router/Nav.d.ts +5 -1
- package/lib/types/router/Nav.d.ts.map +1 -1
- package/lib/types/router/NestedNavigationContext.d.ts.map +1 -1
- package/lib/types/router/NestedRouterProvider.d.ts.map +1 -1
- package/lib/types/router/Router.d.ts +2 -0
- package/lib/types/router/Router.d.ts.map +1 -1
- package/lib/types/session/UserSession.d.ts +1 -0
- package/lib/types/session/UserSession.d.ts.map +1 -1
- package/lib/types/session/UserSessionProvider.d.ts.map +1 -1
- package/lib/types/session/auth/useCurrentTenant.d.ts.map +1 -1
- package/lib/types/shell/SplashScreen.d.ts.map +1 -1
- package/lib/types/shell/apps/StandaloneApp.d.ts.map +1 -1
- package/lib/types/shell/login/EnterpriseSigninButton.d.ts.map +1 -1
- package/lib/types/shell/login/GitHubSignInButton.d.ts.map +1 -1
- package/lib/types/shell/login/GoogleSignInButton.d.ts.map +1 -1
- package/lib/types/shell/login/InviteAcceptModal.d.ts.map +1 -1
- package/lib/types/shell/login/MicrosoftSigninButton.d.ts +1 -1
- package/lib/types/shell/login/MicrosoftSigninButton.d.ts.map +1 -1
- package/lib/types/shell/login/SigninScreen.d.ts.map +1 -1
- package/lib/types/shell/login/SignupForm.d.ts.map +1 -1
- package/lib/types/shell/login/TerminalLogin.d.ts.map +1 -1
- package/lib/types/shell/login/UserInfo.d.ts.map +1 -1
- package/lib/types/shell/login/UserSessionMenu.d.ts.map +1 -1
- package/lib/types/widgets/index.d.ts +0 -1
- package/lib/types/widgets/index.d.ts.map +1 -1
- package/lib/types/widgets/json-view/JSONDisplay.d.ts.map +1 -1
- package/lib/types/widgets/json-view/JSONSwitcher.d.ts +6 -0
- package/lib/types/widgets/json-view/JSONSwitcher.d.ts.map +1 -0
- package/lib/types/widgets/json-view/index.d.ts +1 -0
- package/lib/types/widgets/json-view/index.d.ts.map +1 -1
- package/lib/types/widgets/markdown/ArtifactContentRenderer.d.ts.map +1 -1
- package/lib/types/widgets/markdown/CodeBlockContext.d.ts +21 -0
- package/lib/types/widgets/markdown/CodeBlockContext.d.ts.map +1 -0
- package/lib/types/widgets/markdown/MarkdownRenderer.d.ts.map +1 -1
- package/lib/types/widgets/markdown/codeBlockHandlers.d.ts +0 -12
- package/lib/types/widgets/markdown/codeBlockHandlers.d.ts.map +1 -1
- package/lib/types/widgets/markdown/index.d.ts +10 -9
- package/lib/types/widgets/markdown/index.d.ts.map +1 -1
- package/lib/types/widgets/schema-editor/ManagedSchema.d.ts +1 -1
- package/lib/types/widgets/schema-editor/ManagedSchema.d.ts.map +1 -1
- package/lib/types/widgets/schema-editor/editor/PropertyEditor.d.ts.map +1 -1
- package/lib/types/widgets/schema-editor/editor/SchemaEditor.d.ts.map +1 -1
- package/lib/types/widgets/upload/DropZone.d.ts.map +1 -1
- package/lib/types/widgets/upload/UploadResultCategory.d.ts.map +1 -1
- package/lib/types/widgets/upload/UploadSummary.d.ts.map +1 -1
- package/lib/vertesia-ui-core.js +1 -1
- package/lib/vertesia-ui-core.js.map +1 -1
- package/lib/vertesia-ui-env.js +1 -1
- package/lib/vertesia-ui-env.js.map +1 -1
- package/lib/vertesia-ui-features.js +1 -1
- package/lib/vertesia-ui-features.js.map +1 -1
- package/lib/vertesia-ui-i18n.js +2 -0
- package/lib/vertesia-ui-i18n.js.map +1 -0
- package/lib/vertesia-ui-layout.js +1 -1
- package/lib/vertesia-ui-layout.js.map +1 -1
- package/lib/vertesia-ui-router.js +1 -1
- package/lib/vertesia-ui-router.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 +1 -1
- package/lib/vertesia-ui-shell.js.map +1 -1
- package/lib/vertesia-ui-widgets.js +1 -1
- package/lib/vertesia-ui-widgets.js.map +1 -1
- package/package.json +36 -22
- package/src/core/components/SelectList.tsx +3 -1
- package/src/core/components/SidePanel.tsx +5 -4
- package/src/core/components/index.ts +0 -5
- package/src/core/components/shadcn/breadcrumb.tsx +16 -9
- package/src/core/components/shadcn/button.tsx +5 -3
- package/src/core/components/shadcn/collaspible.tsx +33 -0
- package/src/core/components/shadcn/dropdown.tsx +309 -0
- package/src/core/components/shadcn/filters/comboBox/DateCombobox.tsx +3 -1
- package/src/core/components/shadcn/filters/comboBox/SelectCombobox.tsx +3 -1
- package/src/core/components/shadcn/filters/comboBox/StringListCombobox.tsx +1 -1
- package/src/core/components/shadcn/filters/filter/StringListFilter.tsx +1 -1
- package/src/core/components/shadcn/filters/filter/dateFilter.tsx +5 -3
- package/src/core/components/shadcn/filters/filterBar.tsx +8 -5
- package/src/core/components/shadcn/index.ts +5 -1
- package/src/core/components/shadcn/modal/ConfirmModal.tsx +7 -3
- package/src/core/components/shadcn/modal/DeleteModal.tsx +5 -3
- package/src/core/components/shadcn/popover.tsx +12 -7
- package/src/core/components/shadcn/radioGroup.tsx +100 -0
- package/src/core/components/shadcn/switch.tsx +60 -0
- package/src/core/components/shadcn/tabs.tsx +29 -27
- package/src/core/components/shadcn/theme/ThemeSwitcher.tsx +13 -9
- package/src/core/components/toast/NotificationPanel.tsx +38 -44
- package/src/env/index.ts +16 -3
- package/src/features/agent/PayloadBuilder.tsx +100 -13
- package/src/features/agent/chat/AgentRightPanel.tsx +424 -0
- package/src/features/agent/chat/ArtifactsTab.tsx +197 -0
- package/src/features/agent/chat/AskUserWidget.tsx +14 -8
- package/src/features/agent/chat/DocumentPanel.tsx +24 -9
- package/src/features/agent/chat/ImageLightbox.tsx +6 -3
- package/src/features/agent/chat/ModernAgentConversation.tsx +461 -271
- package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +151 -55
- package/src/features/agent/chat/ModernAgentOutput/BatchProgressPanel.tsx +6 -4
- package/src/features/agent/chat/ModernAgentOutput/Header.tsx +126 -46
- package/src/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.tsx +21 -31
- package/src/features/agent/chat/ModernAgentOutput/MessageInput.tsx +119 -114
- package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +26 -9
- package/src/features/agent/chat/ModernAgentOutput/PlanPanel.tsx +9 -7
- package/src/features/agent/chat/ModernAgentOutput/SlidingPlanPanel.tsx +15 -13
- package/src/features/agent/chat/ModernAgentOutput/StreamingMessage.tsx +8 -3
- package/src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx +149 -49
- package/src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx +9 -5
- package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +229 -0
- package/src/features/agent/chat/ModernAgentOutput/utils.ts +202 -97
- package/src/features/agent/chat/SlidingThinkingIndicator.tsx +5 -3
- package/src/features/agent/chat/VegaLiteChart.tsx +20 -8
- package/src/features/agent/chat/hooks/useAgentPlans.ts +3 -9
- package/src/features/agent/chat/hooks/useAgentStream.ts +80 -19
- package/src/features/agent/chat/hooks/useArtifacts.ts +151 -0
- package/src/features/agent/chat/hooks/useDocumentPanel.ts +65 -5
- package/src/features/agent/chat/hooks/useFileProcessing.ts +14 -13
- package/src/features/agent/chat/types/document.ts +2 -0
- package/src/features/errors/PanelErrorBoundary.tsx +5 -3
- package/src/features/facets/AgentRunnerFacetsNav.tsx +54 -35
- package/src/features/facets/RunsFacetsNav.tsx +6 -6
- package/src/features/facets/index.ts +1 -1
- package/src/features/layout/GenericPageNavHeader.tsx +64 -41
- package/src/features/layout/NotFoundView.tsx +4 -1
- package/src/features/magic-pdf/AnnotatedImageSlider.tsx +12 -8
- package/src/features/magic-pdf/DownloadPopover.tsx +11 -10
- package/src/features/magic-pdf/MagicPdfView.tsx +10 -7
- package/src/features/pdf-viewer/PdfPageSlider.tsx +10 -6
- package/src/features/pdf-viewer/SimplePdfViewer.tsx +5 -3
- package/src/features/permissions/UserPermissionsProvider.tsx +3 -1
- package/src/features/store/collections/BrowseCollectionView.tsx +11 -1
- package/src/features/store/collections/CollectionsTable.tsx +20 -12
- package/src/features/store/collections/CreateCollection.tsx +14 -11
- package/src/features/store/collections/EditCollectionView.tsx +31 -28
- package/src/features/store/collections/SelectCollection.tsx +50 -14
- package/src/features/store/collections/SharedPropsEditor.tsx +7 -5
- package/src/features/store/collections/SyncMemberHeadsToggle.tsx +6 -4
- package/src/features/store/objects/DocumentPreviewPanel.tsx +30 -28
- package/src/features/store/objects/DocumentSearchResults.tsx +31 -21
- package/src/features/store/objects/DocumentTable.tsx +11 -5
- package/src/features/store/objects/ExportPropertiesModal.tsx +8 -5
- package/src/features/store/objects/components/ContentDispositionButton.tsx +3 -1
- package/src/features/store/objects/components/ContentOverview.tsx +96 -50
- package/src/features/store/objects/components/DocumentIcon.tsx +11 -3
- package/src/features/store/objects/components/PropertiesEditorModal.tsx +14 -12
- package/src/features/store/objects/components/SaveVersionConfirmModal.tsx +24 -37
- package/src/features/store/objects/components/SelectDocument.tsx +15 -6
- package/src/features/store/objects/components/TextEditorPanel.tsx +143 -0
- package/src/features/store/objects/components/VectorSearchWidget.tsx +11 -8
- package/src/features/store/objects/components/useContentPanelHooks.ts +4 -2
- package/src/features/store/objects/components/useDownloadFile.ts +12 -10
- package/src/features/store/objects/layout/documentLayout.tsx +16 -6
- package/src/features/store/objects/layout/renderers.tsx +27 -1
- package/src/features/store/objects/search/DocumentSearchContext.ts +3 -2
- package/src/features/store/objects/search/DocumentSearchProvider.tsx +3 -0
- package/src/features/store/objects/selection/ObjectsActionContext.tsx +26 -128
- package/src/features/store/objects/selection/ObjectsActionContextClass.ts +59 -0
- package/src/features/store/objects/selection/ObjectsActionHooks.ts +33 -0
- package/src/features/store/objects/selection/ObjectsActionSpec.ts +4 -1
- package/src/features/store/objects/selection/SelectionActions.tsx +14 -6
- package/src/features/store/objects/selection/actions/AddToCollectionAction.tsx +19 -14
- package/src/features/store/objects/selection/actions/ChangeTypeAction.tsx +9 -5
- package/src/features/store/objects/selection/actions/ConfirmAction.tsx +4 -3
- package/src/features/store/objects/selection/actions/DeleteObjectsAction.tsx +24 -23
- package/src/features/store/objects/selection/actions/ExportPropertiesAction.tsx +10 -5
- package/src/features/store/objects/selection/actions/RemoveFromCollectionAction.tsx +13 -9
- package/src/features/store/objects/selection/actions/StartWorkflowComponent.tsx +14 -8
- package/src/features/store/objects/upload/DocumentUploadModal.tsx +56 -55
- package/src/features/store/objects/upload/useSmartFileUploadProcessing.ts +4 -2
- package/src/features/store/objects/upload/useUploadHandler.ts +9 -7
- package/src/features/store/types/ContentObjectTypesSearch.tsx +10 -8
- package/src/features/store/types/ContentObjectTypesTable.tsx +6 -4
- package/src/features/store/types/CreateOrUpdateTypeModal.tsx +11 -12
- package/src/features/store/types/ObjectSchemaEditor.tsx +11 -9
- package/src/features/store/types/SelectContentType.tsx +15 -13
- package/src/features/store/types/SelectContentTypeModal.tsx +16 -13
- package/src/features/store/types/TableLayoutEditor.tsx +16 -12
- package/src/features/user/UserInfo.tsx +47 -56
- package/src/i18n/index.tsx +45 -0
- package/src/i18n/instance.ts +49 -0
- package/src/i18n/locales/ar.json +694 -0
- package/src/i18n/locales/de.json +662 -0
- package/src/i18n/locales/en.json +663 -0
- package/src/i18n/locales/es.json +668 -0
- package/src/i18n/locales/fr.json +670 -0
- package/src/i18n/locales/it.json +668 -0
- package/src/i18n/locales/ja.json +662 -0
- package/src/i18n/locales/ko.json +662 -0
- package/src/i18n/locales/pt.json +668 -0
- package/src/i18n/locales/ru.json +678 -0
- package/src/i18n/locales/tr.json +662 -0
- package/src/i18n/locales/zh-TW.json +662 -0
- package/src/i18n/locales/zh.json +662 -0
- package/src/layout/FullHeightLayout.tsx +8 -0
- package/src/layout/Navbar.tsx +4 -2
- package/src/layout/RegionTag.tsx +25 -0
- package/src/layout/Sidebar.tsx +4 -3
- package/src/layout/index.ts +2 -1
- package/src/router/HistoryNavigator.ts +10 -10
- package/src/router/Nav.tsx +9 -3
- package/src/router/NestedNavigationContext.tsx +4 -0
- package/src/router/NestedRouterProvider.tsx +3 -1
- package/src/router/Router.tsx +23 -7
- package/src/session/UserSession.ts +24 -0
- package/src/session/UserSessionProvider.tsx +4 -0
- package/src/session/auth/composable.ts +1 -1
- package/src/session/auth/firebase.ts +1 -1
- package/src/session/auth/useCurrentTenant.ts +3 -1
- package/src/shell/SplashScreen.tsx +22 -26
- package/src/shell/apps/StandaloneApp.tsx +9 -6
- package/src/shell/login/EnterpriseSigninButton.tsx +6 -4
- package/src/shell/login/GitHubSignInButton.tsx +3 -7
- package/src/shell/login/GoogleSignInButton.tsx +3 -1
- package/src/shell/login/InviteAcceptModal.tsx +5 -2
- package/src/shell/login/MicrosoftSigninButton.tsx +4 -6
- package/src/shell/login/SigninScreen.tsx +18 -13
- package/src/shell/login/SignupForm.tsx +46 -46
- package/src/shell/login/TerminalLogin.tsx +35 -31
- package/src/shell/login/UserInfo.tsx +15 -13
- package/src/shell/login/UserSessionMenu.tsx +28 -31
- package/src/widgets/index.ts +0 -1
- package/src/widgets/json-view/JSONCode.tsx +1 -1
- package/src/widgets/json-view/JSONDisplay.tsx +8 -3
- package/src/widgets/json-view/JSONSwitcher.tsx +24 -0
- package/src/widgets/json-view/JSONView.tsx +1 -1
- package/src/widgets/json-view/index.ts +1 -0
- package/src/widgets/markdown/ArtifactContentRenderer.tsx +15 -7
- package/src/widgets/markdown/CodeBlockContext.tsx +34 -0
- package/src/widgets/markdown/MarkdownRenderer.tsx +14 -13
- package/src/widgets/markdown/codeBlockHandlers.tsx +17 -36
- package/src/widgets/markdown/index.ts +27 -34
- package/src/widgets/markdown/remarkDirectiveHandler.ts +1 -1
- package/src/widgets/schema-editor/ManagedSchema.ts +6 -5
- package/src/widgets/schema-editor/editor/PropertyEditor.tsx +7 -3
- package/src/widgets/schema-editor/editor/SchemaEditor.tsx +3 -1
- package/src/widgets/upload/DropZone.tsx +10 -13
- package/src/widgets/upload/UploadResultCategory.tsx +3 -1
- package/src/widgets/upload/UploadSummary.tsx +13 -11
- package/tsconfig.dist.json +1 -1
- package/lib/esm/core/components/Dropdown.js +0 -16
- package/lib/esm/core/components/Dropdown.js.map +0 -1
- package/lib/esm/core/components/DropdownList.js +0 -9
- package/lib/esm/core/components/DropdownList.js.map +0 -1
- package/lib/esm/core/components/RadioGroup.js +0 -34
- package/lib/esm/core/components/RadioGroup.js.map +0 -1
- package/lib/esm/core/components/SelectStack.js +0 -8
- package/lib/esm/core/components/SelectStack.js.map +0 -1
- package/lib/esm/core/components/Switch.js +0 -12
- package/lib/esm/core/components/Switch.js.map +0 -1
- package/lib/esm/widgets/popover/Popover.js +0 -73
- package/lib/esm/widgets/popover/Popover.js.map +0 -1
- package/lib/esm/widgets/popover/context.js +0 -7
- package/lib/esm/widgets/popover/context.js.map +0 -1
- package/lib/esm/widgets/popover/index.js +0 -3
- package/lib/esm/widgets/popover/index.js.map +0 -1
- package/lib/esm/widgets/popover/slots.js +0 -22
- package/lib/esm/widgets/popover/slots.js.map +0 -1
- package/lib/types/core/components/Dropdown.d.ts +0 -15
- package/lib/types/core/components/Dropdown.d.ts.map +0 -1
- package/lib/types/core/components/DropdownList.d.ts +0 -13
- package/lib/types/core/components/DropdownList.d.ts.map +0 -1
- package/lib/types/core/components/RadioGroup.d.ts +0 -26
- package/lib/types/core/components/RadioGroup.d.ts.map +0 -1
- package/lib/types/core/components/SelectStack.d.ts +0 -13
- package/lib/types/core/components/SelectStack.d.ts.map +0 -1
- package/lib/types/core/components/Switch.d.ts +0 -11
- package/lib/types/core/components/Switch.d.ts.map +0 -1
- package/lib/types/widgets/popover/Popover.d.ts +0 -38
- package/lib/types/widgets/popover/Popover.d.ts.map +0 -1
- package/lib/types/widgets/popover/context.d.ts +0 -8
- package/lib/types/widgets/popover/context.d.ts.map +0 -1
- package/lib/types/widgets/popover/index.d.ts +0 -3
- package/lib/types/widgets/popover/index.d.ts.map +0 -1
- package/lib/types/widgets/popover/slots.d.ts +0 -5
- package/lib/types/widgets/popover/slots.d.ts.map +0 -1
- package/src/core/components/Dropdown.tsx +0 -63
- package/src/core/components/DropdownList.tsx +0 -72
- package/src/core/components/RadioGroup.tsx +0 -100
- package/src/core/components/SelectStack.tsx +0 -63
- package/src/core/components/Switch.tsx +0 -30
- package/src/widgets/popover/Popover.tsx +0 -171
- package/src/widgets/popover/context.ts +0 -15
- package/src/widgets/popover/index.ts +0 -2
- package/src/widgets/popover/slots.ts +0 -24
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { useUserSession } from '@vertesia/ui/session';
|
|
2
2
|
import { useState, useRef, useEffect } from 'react';
|
|
3
|
+
import { useUITranslation } from '../../../../i18n/index.js';
|
|
3
4
|
import {
|
|
4
5
|
Button,
|
|
5
6
|
Modal,
|
|
@@ -28,6 +29,7 @@ export interface PropertiesEditorModalProps {
|
|
|
28
29
|
export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: PropertiesEditorModalProps) {
|
|
29
30
|
const { client, store } = useUserSession();
|
|
30
31
|
const toast = useToast();
|
|
32
|
+
const { t } = useUITranslation();
|
|
31
33
|
const { theme } = useTheme();
|
|
32
34
|
const navigate = useNavigate();
|
|
33
35
|
const [isLoading, setIsLoading] = useState(false);
|
|
@@ -92,8 +94,8 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
92
94
|
} catch (err) {
|
|
93
95
|
toast({
|
|
94
96
|
status: 'error',
|
|
95
|
-
title: '
|
|
96
|
-
description: '
|
|
97
|
+
title: t('store.invalidJson'),
|
|
98
|
+
description: t('store.pleaseFixJsonSyntax'),
|
|
97
99
|
duration: 5000
|
|
98
100
|
});
|
|
99
101
|
}
|
|
@@ -127,8 +129,8 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
127
129
|
|
|
128
130
|
toast({
|
|
129
131
|
status: 'success',
|
|
130
|
-
title: '
|
|
131
|
-
description: '
|
|
132
|
+
title: t('store.newVersionCreated'),
|
|
133
|
+
description: t('store.newVersionCreatedDesc'),
|
|
132
134
|
duration: 2000
|
|
133
135
|
});
|
|
134
136
|
|
|
@@ -143,8 +145,8 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
143
145
|
navigate(`/objects/${response.id}`);
|
|
144
146
|
toast({
|
|
145
147
|
status: 'info',
|
|
146
|
-
title: '
|
|
147
|
-
description: versionLabel ?
|
|
148
|
+
title: t('store.viewingNewVersion'),
|
|
149
|
+
description: versionLabel ? t('store.viewingVersionLabel', { label: versionLabel }) : t('store.viewingNewVersionDefault'),
|
|
148
150
|
duration: 3000
|
|
149
151
|
});
|
|
150
152
|
}, 100);
|
|
@@ -157,8 +159,8 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
157
159
|
|
|
158
160
|
toast({
|
|
159
161
|
status: 'success',
|
|
160
|
-
title: '
|
|
161
|
-
description: '
|
|
162
|
+
title: t('store.propertiesUpdated'),
|
|
163
|
+
description: t('store.propertiesUpdatedDesc'),
|
|
162
164
|
duration: 2000
|
|
163
165
|
});
|
|
164
166
|
|
|
@@ -172,8 +174,8 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
172
174
|
} catch (error: any) {
|
|
173
175
|
toast({
|
|
174
176
|
status: 'error',
|
|
175
|
-
title: '
|
|
176
|
-
description: error.message || '
|
|
177
|
+
title: t('store.errorUpdatingProperties'),
|
|
178
|
+
description: error.message || t('store.errorUpdatingPropertiesDefault'),
|
|
177
179
|
duration: 5000
|
|
178
180
|
});
|
|
179
181
|
setIsLoading(false);
|
|
@@ -193,13 +195,13 @@ export function PropertiesEditorModal({ isOpen, onClose, object, refetch }: Prop
|
|
|
193
195
|
onClose={onClose}
|
|
194
196
|
className="sm:max-w-[90%] md:max-w-[80%] lg:max-w-[75%] xl:max-w-[70%]"
|
|
195
197
|
>
|
|
196
|
-
<ModalTitle>
|
|
198
|
+
<ModalTitle>{t('store.editProperties')}</ModalTitle>
|
|
197
199
|
<ModalBody>
|
|
198
200
|
<div className="mb-2 text-sm text-gray-500">
|
|
199
201
|
{object.type?.name ? (
|
|
200
202
|
<span>Editing properties for object type: <strong>{object.type.name}</strong></span>
|
|
201
203
|
) : (
|
|
202
|
-
<span>
|
|
204
|
+
<span>{t('store.editingGenericDocument')}</span>
|
|
203
205
|
)}
|
|
204
206
|
{jsonSchema && (
|
|
205
207
|
<span className="ml-2 text-green-600">(JSON schema validation enabled)</span>
|
|
@@ -7,9 +7,10 @@ import {
|
|
|
7
7
|
ModalTitle,
|
|
8
8
|
Input,
|
|
9
9
|
RadioGroup,
|
|
10
|
-
|
|
10
|
+
RadioGroupAdapter,
|
|
11
11
|
FormItem
|
|
12
12
|
} from '@vertesia/ui/core';
|
|
13
|
+
import { useUITranslation } from '@vertesia/ui/i18n';
|
|
13
14
|
|
|
14
15
|
export interface SaveVersionConfirmModalProps {
|
|
15
16
|
isOpen: boolean;
|
|
@@ -26,42 +27,29 @@ interface SaveOptionType {
|
|
|
26
27
|
description: string;
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
class SaveOptionAdapter extends
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
idOf(item: SaveOptionType): string {
|
|
35
|
-
return item.id;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
renderOption(item: SaveOptionType): React.ReactNode {
|
|
39
|
-
return (
|
|
40
|
-
<div>
|
|
41
|
-
<div className="font-medium">{item.label}</div>
|
|
42
|
-
<p className="text-sm text-gray-500 dark:text-gray-400 mt-1">
|
|
43
|
-
{item.description}
|
|
44
|
-
</p>
|
|
45
|
-
</div>
|
|
46
|
-
);
|
|
47
|
-
}
|
|
30
|
+
class SaveOptionAdapter extends RadioGroupAdapter<SaveOptionType> {
|
|
31
|
+
idOf(item: SaveOptionType): string { return item.id }
|
|
32
|
+
labelOf(item: SaveOptionType): string { return item.label }
|
|
33
|
+
descriptionOf(item: SaveOptionType): React.ReactNode { return item.description }
|
|
34
|
+
selectedClassName(_item: SaveOptionType): string { return 'border-3 border-primary' }
|
|
48
35
|
}
|
|
49
36
|
|
|
50
37
|
export function SaveVersionConfirmModal({ isOpen, onClose, onConfirm, isLoading, uploadedFileName }: SaveVersionConfirmModalProps) {
|
|
38
|
+
const { t } = useUITranslation();
|
|
51
39
|
const saveOptions: SaveOptionType[] = [
|
|
52
40
|
{
|
|
53
41
|
id: "update",
|
|
54
|
-
label:
|
|
42
|
+
label: t('modal.saveVersion.updateCurrent'),
|
|
55
43
|
description: uploadedFileName
|
|
56
|
-
?
|
|
57
|
-
:
|
|
44
|
+
? t('modal.saveVersion.updateWithFileDescription')
|
|
45
|
+
: t('modal.saveVersion.updateDescription')
|
|
58
46
|
},
|
|
59
47
|
{
|
|
60
48
|
id: "new-version",
|
|
61
|
-
label:
|
|
49
|
+
label: t('modal.saveVersion.createNew'),
|
|
62
50
|
description: uploadedFileName
|
|
63
|
-
?
|
|
64
|
-
:
|
|
51
|
+
? t('modal.saveVersion.createWithFileDescription')
|
|
52
|
+
: t('modal.saveVersion.createDescription')
|
|
65
53
|
}
|
|
66
54
|
];
|
|
67
55
|
|
|
@@ -91,38 +79,37 @@ export function SaveVersionConfirmModal({ isOpen, onClose, onConfirm, isLoading,
|
|
|
91
79
|
|
|
92
80
|
return (
|
|
93
81
|
<Modal isOpen={isOpen} onClose={onClose} className="sm:max-w-md">
|
|
94
|
-
<ModalTitle>
|
|
82
|
+
<ModalTitle>{t('modal.saveChanges')}</ModalTitle>
|
|
95
83
|
<ModalBody>
|
|
96
84
|
<div className="space-y-4">
|
|
97
85
|
{uploadedFileName && (
|
|
98
86
|
<div className="mb-4 p-3 bg-blue-50 dark:bg-blue-900/20 rounded-md">
|
|
99
87
|
<p className="text-sm text-blue-700 dark:text-blue-300 font-medium">
|
|
100
|
-
|
|
88
|
+
{t('modal.saveVersion.replaceFile')} <span className="font-bold">{uploadedFileName}</span>
|
|
101
89
|
</p>
|
|
102
90
|
</div>
|
|
103
91
|
)}
|
|
104
92
|
<p className="text-sm text-mixer-muted/5">
|
|
105
|
-
|
|
93
|
+
{t('modal.saveVersion.howToSave')}
|
|
106
94
|
</p>
|
|
107
95
|
|
|
108
96
|
<RadioGroup
|
|
109
97
|
adapter={optionAdapter}
|
|
110
98
|
options={saveOptions}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
gap="gap-4"
|
|
99
|
+
selected={selectedOption}
|
|
100
|
+
onSelect={handleOptionChange}
|
|
114
101
|
/>
|
|
115
102
|
|
|
116
103
|
{createVersion && (
|
|
117
104
|
<FormItem
|
|
118
|
-
label=
|
|
119
|
-
description=
|
|
105
|
+
label={t('modal.saveVersion.versionLabel')}
|
|
106
|
+
description={t('modal.saveVersion.versionLabelDescription')}
|
|
120
107
|
className="mt-3 pl-8"
|
|
121
108
|
>
|
|
122
109
|
<Input
|
|
123
110
|
value={versionLabel}
|
|
124
111
|
onChange={setVersionLabel}
|
|
125
|
-
placeholder=
|
|
112
|
+
placeholder={t('modal.saveVersion.versionLabelPlaceholder')}
|
|
126
113
|
className="w-full"
|
|
127
114
|
/>
|
|
128
115
|
</FormItem>
|
|
@@ -131,14 +118,14 @@ export function SaveVersionConfirmModal({ isOpen, onClose, onConfirm, isLoading,
|
|
|
131
118
|
</ModalBody>
|
|
132
119
|
<ModalFooter>
|
|
133
120
|
<Button variant="secondary" onClick={onClose} disabled={isLoading}>
|
|
134
|
-
|
|
121
|
+
{t('modal.cancel')}
|
|
135
122
|
</Button>
|
|
136
123
|
<Button
|
|
137
124
|
variant="primary"
|
|
138
125
|
onClick={handleConfirm}
|
|
139
126
|
isLoading={isLoading}
|
|
140
127
|
>
|
|
141
|
-
|
|
128
|
+
{t('modal.save')}
|
|
142
129
|
</Button>
|
|
143
130
|
</ModalFooter>
|
|
144
131
|
</Modal>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useEffect, useRef, useState } from "react";
|
|
1
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
2
|
|
|
3
3
|
import { clsx } from "clsx";
|
|
4
4
|
import { RefreshCw } from "lucide-react";
|
|
@@ -11,6 +11,7 @@ import { ContentDispositionButton } from "./ContentDispositionButton";
|
|
|
11
11
|
|
|
12
12
|
import { ColumnLayout, ContentObjectItem } from "@vertesia/common";
|
|
13
13
|
import { Button, ErrorBox, Spinner, useIntersectionObserver } from "@vertesia/ui/core";
|
|
14
|
+
import { useUITranslation } from '../../../../i18n/index.js';
|
|
14
15
|
|
|
15
16
|
const layout: ColumnLayout[] = [
|
|
16
17
|
{ "name": "Name", "field": "properties.title", "type": "string", "fallback": "name" },
|
|
@@ -25,23 +26,31 @@ interface SelectDocumentProps {
|
|
|
25
26
|
onChange: (value: ContentObjectItem) => void;
|
|
26
27
|
type?: string;
|
|
27
28
|
mimeType?: string;
|
|
29
|
+
/** IDs of already-selected documents — used to highlight rows */
|
|
30
|
+
selectedIds?: Set<string>;
|
|
28
31
|
}
|
|
29
|
-
export function SelectDocument({ onChange }: Readonly<SelectDocumentProps>) {
|
|
32
|
+
export function SelectDocument({ onChange, selectedIds }: Readonly<SelectDocumentProps>) {
|
|
30
33
|
const onRowClick = (selected: ContentObjectItem) => {
|
|
31
34
|
onChange(selected || undefined);
|
|
32
35
|
}
|
|
33
36
|
|
|
34
37
|
return (
|
|
35
38
|
<DocumentSearchProvider>
|
|
36
|
-
<SelectDocumentImpl onRowClick={onRowClick} />
|
|
39
|
+
<SelectDocumentImpl onRowClick={onRowClick} selectedIds={selectedIds} />
|
|
37
40
|
</DocumentSearchProvider>
|
|
38
41
|
)
|
|
39
42
|
}
|
|
40
43
|
|
|
41
44
|
interface SelectDocumentImplProps {
|
|
42
45
|
onRowClick: (selected: ContentObjectItem) => void;
|
|
46
|
+
selectedIds?: Set<string>;
|
|
43
47
|
}
|
|
44
|
-
function SelectDocumentImpl({ onRowClick }: Readonly<SelectDocumentImplProps>) {
|
|
48
|
+
function SelectDocumentImpl({ onRowClick, selectedIds }: Readonly<SelectDocumentImplProps>) {
|
|
49
|
+
const { t } = useUITranslation();
|
|
50
|
+
const highlightRow = useCallback(
|
|
51
|
+
(item: ContentObjectItem) => !!selectedIds?.has(item.id),
|
|
52
|
+
[selectedIds],
|
|
53
|
+
);
|
|
45
54
|
const [isReady, setIsReady] = useState(false);
|
|
46
55
|
const [isGridView, setIsGridView] = useState(localStorage.getItem(LAST_DISPLAYED_VIEW) === "grid");
|
|
47
56
|
const { search, isLoading, error, objects, hasMore } = useWatchDocumentSearchResult();
|
|
@@ -73,7 +82,7 @@ function SelectDocumentImpl({ onRowClick }: Readonly<SelectDocumentImplProps>) {
|
|
|
73
82
|
}
|
|
74
83
|
|
|
75
84
|
if (error) {
|
|
76
|
-
return <ErrorBox title=
|
|
85
|
+
return <ErrorBox title={t('store.searchFailed')}>{error.message}</ErrorBox>
|
|
77
86
|
}
|
|
78
87
|
|
|
79
88
|
return (
|
|
@@ -89,7 +98,7 @@ function SelectDocumentImpl({ onRowClick }: Readonly<SelectDocumentImplProps>) {
|
|
|
89
98
|
</div>
|
|
90
99
|
<div className="@container flex-1 overflow-y-auto">
|
|
91
100
|
{/* Documents Display Grid or Table */}
|
|
92
|
-
<DocumentTable objects={objects || []} isLoading={false} layout={layout} onRowClick={onRowClick} isGridView={isGridView} />
|
|
101
|
+
<DocumentTable objects={objects || []} isLoading={false} layout={layout} onRowClick={onRowClick} highlightRow={selectedIds?.size ? highlightRow : undefined} isGridView={isGridView} />
|
|
93
102
|
|
|
94
103
|
{/* Intersection observer target */}
|
|
95
104
|
<div ref={loadMoreRef} className="h-4 w-full" />
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { useState, useRef, useCallback } from 'react';
|
|
2
|
+
import { ContentObject } from '@vertesia/common';
|
|
3
|
+
import { Button, useToast, useTheme } from '@vertesia/ui/core';
|
|
4
|
+
import { useUserSession } from '@vertesia/ui/session';
|
|
5
|
+
import { useNavigate } from '@vertesia/ui/router';
|
|
6
|
+
import { MonacoEditor, IEditorApi } from '@vertesia/ui/widgets';
|
|
7
|
+
import { useUITranslation } from '../../../../i18n/index.js';
|
|
8
|
+
import { SaveVersionConfirmModal } from './SaveVersionConfirmModal.js';
|
|
9
|
+
|
|
10
|
+
interface TextEditorPanelProps {
|
|
11
|
+
object: ContentObject;
|
|
12
|
+
text: string;
|
|
13
|
+
onClose: () => void;
|
|
14
|
+
onSaved: () => void;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
function getMonacoLanguage(contentType?: string): string {
|
|
18
|
+
switch (contentType) {
|
|
19
|
+
case 'text/markdown':
|
|
20
|
+
return 'markdown';
|
|
21
|
+
case 'application/json':
|
|
22
|
+
return 'json';
|
|
23
|
+
case 'application/xml':
|
|
24
|
+
case 'text/xml':
|
|
25
|
+
return 'xml';
|
|
26
|
+
default:
|
|
27
|
+
return 'plaintext';
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function TextEditorPanel({ object, text, onClose, onSaved }: TextEditorPanelProps) {
|
|
32
|
+
const { store } = useUserSession();
|
|
33
|
+
const toast = useToast();
|
|
34
|
+
const { t } = useUITranslation();
|
|
35
|
+
const { theme } = useTheme();
|
|
36
|
+
const navigate = useNavigate();
|
|
37
|
+
const editorRef = useRef<IEditorApi | undefined>(undefined);
|
|
38
|
+
const [isDirty, setIsDirty] = useState(false);
|
|
39
|
+
const [isSaving, setIsSaving] = useState(false);
|
|
40
|
+
const [showConfirmation, setShowConfirmation] = useState(false);
|
|
41
|
+
|
|
42
|
+
const language = getMonacoLanguage(object.content?.type);
|
|
43
|
+
|
|
44
|
+
const handleEditorChange = useCallback(() => {
|
|
45
|
+
if (!isDirty) setIsDirty(true);
|
|
46
|
+
}, [isDirty]);
|
|
47
|
+
|
|
48
|
+
function handleSave() {
|
|
49
|
+
if (!editorRef.current) return;
|
|
50
|
+
setShowConfirmation(true);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
async function saveText(createVersion: boolean, versionLabel?: string) {
|
|
54
|
+
if (!editorRef.current) return;
|
|
55
|
+
|
|
56
|
+
const editorText = editorRef.current.getValue();
|
|
57
|
+
const contentType = object.content?.type || 'text/plain';
|
|
58
|
+
const fileName = object.content?.name || 'content.txt';
|
|
59
|
+
|
|
60
|
+
try {
|
|
61
|
+
setIsSaving(true);
|
|
62
|
+
|
|
63
|
+
const blob = new Blob([editorText], { type: contentType });
|
|
64
|
+
const file = new File([blob], fileName, { type: contentType });
|
|
65
|
+
|
|
66
|
+
const response = await store.objects.update(object.id, {
|
|
67
|
+
content: file as any,
|
|
68
|
+
}, {
|
|
69
|
+
createRevision: createVersion,
|
|
70
|
+
revisionLabel: versionLabel,
|
|
71
|
+
ifMatch: object.content?.etag,
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
toast({
|
|
75
|
+
status: 'success',
|
|
76
|
+
title: t('store.textSaved'),
|
|
77
|
+
duration: 2000,
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
setShowConfirmation(false);
|
|
81
|
+
|
|
82
|
+
if (createVersion && response.id !== object.id) {
|
|
83
|
+
onClose();
|
|
84
|
+
setTimeout(() => {
|
|
85
|
+
navigate(`/objects/${response.id}`);
|
|
86
|
+
}, 100);
|
|
87
|
+
} else {
|
|
88
|
+
onSaved();
|
|
89
|
+
}
|
|
90
|
+
} catch (error: any) {
|
|
91
|
+
const is412 = error?.status === 412 || error?.message?.includes('412');
|
|
92
|
+
toast({
|
|
93
|
+
status: 'error',
|
|
94
|
+
title: t('store.errorSavingText'),
|
|
95
|
+
description: is412
|
|
96
|
+
? t('store.textConflict')
|
|
97
|
+
: (error.message || t('store.errorSavingTextDefault')),
|
|
98
|
+
duration: 5000,
|
|
99
|
+
});
|
|
100
|
+
} finally {
|
|
101
|
+
setIsSaving(false);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
return (
|
|
106
|
+
<>
|
|
107
|
+
<div className="flex items-center gap-2 px-2 py-1 shrink-0">
|
|
108
|
+
{isDirty && (
|
|
109
|
+
<span className="text-xs text-attention">{t('store.unsavedChanges')}</span>
|
|
110
|
+
)}
|
|
111
|
+
<div className="flex-1" />
|
|
112
|
+
<Button variant="ghost" size="sm" onClick={onClose} disabled={isSaving}>
|
|
113
|
+
{t('store.cancelEdit')}
|
|
114
|
+
</Button>
|
|
115
|
+
<Button variant="outline" size="sm" onClick={handleSave} disabled={!isDirty} isLoading={isSaving}>
|
|
116
|
+
{t('store.saveText')}
|
|
117
|
+
</Button>
|
|
118
|
+
</div>
|
|
119
|
+
<div className="flex-1 min-h-0 border rounded-md overflow-hidden mx-2 mb-2">
|
|
120
|
+
<MonacoEditor
|
|
121
|
+
value={text}
|
|
122
|
+
language={language}
|
|
123
|
+
editorRef={editorRef}
|
|
124
|
+
onChange={handleEditorChange}
|
|
125
|
+
theme={theme === 'dark' ? 'vs-dark' : 'vs'}
|
|
126
|
+
options={{
|
|
127
|
+
wordWrap: 'on',
|
|
128
|
+
minimap: { enabled: false },
|
|
129
|
+
lineNumbers: 'on',
|
|
130
|
+
scrollBeyondLastLine: false,
|
|
131
|
+
}}
|
|
132
|
+
/>
|
|
133
|
+
</div>
|
|
134
|
+
|
|
135
|
+
<SaveVersionConfirmModal
|
|
136
|
+
isOpen={showConfirmation}
|
|
137
|
+
onClose={() => setShowConfirmation(false)}
|
|
138
|
+
onConfirm={saveText}
|
|
139
|
+
isLoading={isSaving}
|
|
140
|
+
/>
|
|
141
|
+
</>
|
|
142
|
+
);
|
|
143
|
+
}
|
|
@@ -5,6 +5,8 @@ import { Button, Checkbox, Input, Modal, ModalBody, ModalFooter, ModalTitle, Num
|
|
|
5
5
|
import { useUserSession } from '@vertesia/ui/session';
|
|
6
6
|
import { Settings } from 'lucide-react';
|
|
7
7
|
|
|
8
|
+
import { useUITranslation } from '../../../../i18n/index.js';
|
|
9
|
+
|
|
8
10
|
interface VectorSearchWidgetProps {
|
|
9
11
|
onChange: (query?: ComplexSearchQuery) => void;
|
|
10
12
|
className?: string;
|
|
@@ -19,6 +21,7 @@ const embeddingTypes = Object.values(SupportedEmbeddingTypes);
|
|
|
19
21
|
|
|
20
22
|
export function VectorSearchWidget({ onChange, isLoading, refresh, searchTypes }: VectorSearchWidgetProps) {
|
|
21
23
|
const { client, project } = useUserSession();
|
|
24
|
+
const { t } = useUITranslation();
|
|
22
25
|
const toast = useToast();
|
|
23
26
|
|
|
24
27
|
const [searchText, setSearchText] = useState<string | undefined>(undefined);
|
|
@@ -104,10 +107,10 @@ export function VectorSearchWidget({ onChange, isLoading, refresh, searchTypes }
|
|
|
104
107
|
|
|
105
108
|
return (
|
|
106
109
|
<div className="flex gap-1 items-center">
|
|
107
|
-
<Input placeholder=
|
|
108
|
-
<Button variant="ghost" onClick={() => setShowSettings(true)} alt=
|
|
110
|
+
<Input placeholder={t('store.searchPlaceholder')} value={searchText} onChange={setSearchText} onKeyDown={handleKeyPress} className='min-w-[200px]' />
|
|
111
|
+
<Button variant="ghost" onClick={() => setShowSettings(true)} alt={t('store.semanticSearchSettings')} className="ml-1"><Settings size={18} /></Button>
|
|
109
112
|
<Modal isOpen={showSettings} onClose={() => setShowSettings(false)}>
|
|
110
|
-
<ModalTitle>
|
|
113
|
+
<ModalTitle>{t('store.searchTypes')}</ModalTitle>
|
|
111
114
|
<ModalBody>
|
|
112
115
|
<div className="flex flex-col gap-2">
|
|
113
116
|
<label className="flex items-center gap-2">
|
|
@@ -115,9 +118,9 @@ export function VectorSearchWidget({ onChange, isLoading, refresh, searchTypes }
|
|
|
115
118
|
checked={selectedTypes.includes(SearchTypes.full_text)}
|
|
116
119
|
onCheckedChange={handleCheckboxChange(SearchTypes.full_text)}
|
|
117
120
|
/>
|
|
118
|
-
<span>
|
|
121
|
+
<span>{t('store.fullText')}</span>
|
|
119
122
|
</label>
|
|
120
|
-
<div className="font-semibold mt-2 mb-1">
|
|
123
|
+
<div className="font-semibold mt-2 mb-1">{t('store.embeddings')}</div>
|
|
121
124
|
{embeddingTypes.map(type => (
|
|
122
125
|
<label key={type} className="flex items-center gap-2">
|
|
123
126
|
<Checkbox
|
|
@@ -128,16 +131,16 @@ export function VectorSearchWidget({ onChange, isLoading, refresh, searchTypes }
|
|
|
128
131
|
</label>
|
|
129
132
|
))}
|
|
130
133
|
<div className="mt-3">
|
|
131
|
-
<span className="mr-2">
|
|
134
|
+
<span className="mr-2">{t('store.limit')}</span>
|
|
132
135
|
<NumberInput type="number" min={1} value={limit} onChange={v => setLimit(Number(v ?? 100))} style={{ width: 80 }} />
|
|
133
136
|
</div>
|
|
134
137
|
</div>
|
|
135
138
|
</ModalBody>
|
|
136
139
|
<ModalFooter>
|
|
137
|
-
<Button variant="outline" onClick={() => setShowSettings(false)}>
|
|
140
|
+
<Button variant="outline" onClick={() => setShowSettings(false)}>{t('store.close')}</Button>
|
|
138
141
|
</ModalFooter>
|
|
139
142
|
</Modal>
|
|
140
|
-
<Button variant="secondary" isLoading={isLoading} onClick={fireSearch} isDisabled={!isReady} alt=
|
|
143
|
+
<Button variant="secondary" isLoading={isLoading} onClick={fireSearch} isDisabled={!isReady} alt={t('store.semanticSearch')}>{t('store.search')}</Button>
|
|
141
144
|
</div>
|
|
142
145
|
);
|
|
143
146
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { DocAnalyzerProgress, DocProcessorOutputFormat, MarkdownRenditionFormat, WorkflowExecutionStatus } from "@vertesia/common";
|
|
2
2
|
import { useUserSession } from "@vertesia/ui/session";
|
|
3
3
|
import { useCallback, useEffect, useState } from "react";
|
|
4
|
+
import { i18nInstance, NAMESPACE } from '../../../../i18n/instance.js';
|
|
4
5
|
|
|
5
6
|
// Maximum text size before cropping (128K characters)
|
|
6
7
|
const MAX_TEXT_DISPLAY_SIZE = 128 * 1024;
|
|
@@ -136,6 +137,7 @@ export function usePdfProcessingStatus(objectId: string, shouldPoll: boolean) {
|
|
|
136
137
|
*/
|
|
137
138
|
export function useOfficePdfConversion(objectId: string, enabled: boolean) {
|
|
138
139
|
const { client } = useUserSession();
|
|
140
|
+
const t = i18nInstance.getFixedT(null, NAMESPACE);
|
|
139
141
|
|
|
140
142
|
const [pdfUrl, setPdfUrl] = useState<string | undefined>();
|
|
141
143
|
const [isConverting, setIsConverting] = useState(false);
|
|
@@ -163,12 +165,12 @@ export function useOfficePdfConversion(objectId: string, enabled: boolean) {
|
|
|
163
165
|
setPdfUrl(response.renditions[0]);
|
|
164
166
|
setIsConverting(false);
|
|
165
167
|
} else if (response.status === "failed") {
|
|
166
|
-
setError(
|
|
168
|
+
setError(t('store.pdfConversionFailed'));
|
|
167
169
|
setIsConverting(false);
|
|
168
170
|
}
|
|
169
171
|
} catch (err) {
|
|
170
172
|
console.error("Failed to convert Office document to PDF:", err);
|
|
171
|
-
setError(
|
|
173
|
+
setError(t('store.failedToConvertToPdf'));
|
|
172
174
|
setIsConverting(false);
|
|
173
175
|
}
|
|
174
176
|
};
|
|
@@ -2,6 +2,7 @@ import { VertesiaClient, ZenoClient } from "@vertesia/client";
|
|
|
2
2
|
import { MarkdownRenditionFormat, RenderMarkdownPayload } from "@vertesia/common";
|
|
3
3
|
import { useCallback, useState } from "react";
|
|
4
4
|
import { ToastFn } from "@vertesia/ui/core";
|
|
5
|
+
import { i18nInstance, NAMESPACE } from '../../../../i18n/instance.js';
|
|
5
6
|
|
|
6
7
|
export interface UseDownloadFileOptions {
|
|
7
8
|
client: VertesiaClient | ZenoClient;
|
|
@@ -37,6 +38,7 @@ export interface UseDownloadFileResult {
|
|
|
37
38
|
* Handles GCS URIs (via client.files API), direct URLs, and markdown rendering.
|
|
38
39
|
*/
|
|
39
40
|
export function useDownloadFile({ client, toast }: UseDownloadFileOptions): UseDownloadFileResult {
|
|
41
|
+
const t = i18nInstance.getFixedT(null, NAMESPACE);
|
|
40
42
|
const [isDownloading, setIsDownloading] = useState(false);
|
|
41
43
|
|
|
42
44
|
/**
|
|
@@ -57,8 +59,8 @@ export function useDownloadFile({ client, toast }: UseDownloadFileOptions): UseD
|
|
|
57
59
|
} catch (err) {
|
|
58
60
|
toast({
|
|
59
61
|
status: "error",
|
|
60
|
-
title:
|
|
61
|
-
description: err instanceof Error ? err.message :
|
|
62
|
+
title: t('store.downloadFailed'),
|
|
63
|
+
description: err instanceof Error ? err.message : t('store.failedToGetDownloadUrl'),
|
|
62
64
|
duration: 5000,
|
|
63
65
|
});
|
|
64
66
|
} finally {
|
|
@@ -120,15 +122,15 @@ export function useDownloadFile({ client, toast }: UseDownloadFileOptions): UseD
|
|
|
120
122
|
|
|
121
123
|
toast({
|
|
122
124
|
status: "success",
|
|
123
|
-
title:
|
|
124
|
-
description:
|
|
125
|
+
title: t('store.documentExported'),
|
|
126
|
+
description: t('store.successfullyExportedTo', { format: options.format.toUpperCase() }),
|
|
125
127
|
duration: 2000,
|
|
126
128
|
});
|
|
127
129
|
} catch (err) {
|
|
128
130
|
toast({
|
|
129
131
|
status: "error",
|
|
130
|
-
title:
|
|
131
|
-
description: err instanceof Error ? err.message :
|
|
132
|
+
title: t('store.exportFailed'),
|
|
133
|
+
description: err instanceof Error ? err.message : t('store.failedToExportDocument'),
|
|
132
134
|
duration: 5000,
|
|
133
135
|
});
|
|
134
136
|
} finally {
|
|
@@ -157,15 +159,15 @@ export function useDownloadFile({ client, toast }: UseDownloadFileOptions): UseD
|
|
|
157
159
|
|
|
158
160
|
toast({
|
|
159
161
|
status: "success",
|
|
160
|
-
title:
|
|
161
|
-
description:
|
|
162
|
+
title: t('store.contentExported'),
|
|
163
|
+
description: t('store.successfullyExportedTo', { format: options.format.toUpperCase() }),
|
|
162
164
|
duration: 2000,
|
|
163
165
|
});
|
|
164
166
|
} catch (err) {
|
|
165
167
|
toast({
|
|
166
168
|
status: "error",
|
|
167
|
-
title:
|
|
168
|
-
description: err instanceof Error ? err.message :
|
|
169
|
+
title: t('store.exportFailed'),
|
|
170
|
+
description: err instanceof Error ? err.message : t('store.failedToExportContent'),
|
|
169
171
|
duration: 5000,
|
|
170
172
|
});
|
|
171
173
|
} finally {
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ColumnLayout, ContentObjectItem } from "@vertesia/common";
|
|
2
2
|
import { Table, TBody } from "@vertesia/ui/core";
|
|
3
|
+
import { useUITranslation } from '../../../../i18n/index.js';
|
|
4
|
+
import { CheckIcon } from "lucide-react";
|
|
3
5
|
import { ChangeEvent } from "react";
|
|
4
6
|
import { DocumentIcon, DocumentIconSkeleton } from "../components/DocumentIcon";
|
|
5
7
|
import { DocumentSelection } from "../DocumentSelectionProvider";
|
|
@@ -10,6 +12,7 @@ interface ViewProps {
|
|
|
10
12
|
isLoading: boolean;
|
|
11
13
|
layout?: ColumnLayout[];
|
|
12
14
|
onRowClick?: (object: ContentObjectItem) => void;
|
|
15
|
+
highlightRow?: (item: ContentObjectItem) => boolean;
|
|
13
16
|
previewObject?: (objectId: string) => void;
|
|
14
17
|
selectedObject?: ContentObjectItem | null;
|
|
15
18
|
onSelectionChange: ((object: ContentObjectItem, ev: ChangeEvent<HTMLInputElement>) => void);
|
|
@@ -18,7 +21,8 @@ interface ViewProps {
|
|
|
18
21
|
columns: DocumentTableColumn[];
|
|
19
22
|
}
|
|
20
23
|
|
|
21
|
-
export function DocumentTableView({ objects, selection, isLoading, columns, onRowClick, selectedObject, toggleAll, onSelectionChange }: ViewProps) {
|
|
24
|
+
export function DocumentTableView({ objects, selection, isLoading, columns, onRowClick, highlightRow, selectedObject, toggleAll, onSelectionChange }: ViewProps) {
|
|
25
|
+
const { t } = useUITranslation();
|
|
22
26
|
return (
|
|
23
27
|
<Table className="w-full border-t">
|
|
24
28
|
<thead>
|
|
@@ -32,8 +36,9 @@ export function DocumentTableView({ objects, selection, isLoading, columns, onRo
|
|
|
32
36
|
<TBody isLoading={isLoading} columns={columns.length + 1}>
|
|
33
37
|
{
|
|
34
38
|
objects?.map((obj: ContentObjectItem) => {
|
|
39
|
+
const isHighlighted = highlightRow?.(obj);
|
|
35
40
|
return (
|
|
36
|
-
<tr key={obj.id} className={`cursor-pointer hover:bg-muted group ${selectedObject?.id === obj.id ? 'bg-muted' : ''}`} onClick={() => {
|
|
41
|
+
<tr key={obj.id} className={`cursor-pointer hover:bg-muted group ${selectedObject?.id === obj.id ? 'bg-muted' : ''} ${isHighlighted ? 'bg-blue-50 dark:bg-blue-900/20' : ''}`} onClick={() => {
|
|
37
42
|
onRowClick && onRowClick(obj)
|
|
38
43
|
}}>
|
|
39
44
|
{selection &&
|
|
@@ -43,27 +48,32 @@ export function DocumentTableView({ objects, selection, isLoading, columns, onRo
|
|
|
43
48
|
</td>
|
|
44
49
|
}
|
|
45
50
|
{columns.map((col, index) => col.render(obj, index))}
|
|
51
|
+
<td className="w-8 text-center">
|
|
52
|
+
{isHighlighted && (
|
|
53
|
+
<CheckIcon className="size-4 text-blue-600 dark:text-blue-400 inline-block" />
|
|
54
|
+
)}
|
|
55
|
+
</td>
|
|
46
56
|
</tr>
|
|
47
57
|
)
|
|
48
58
|
})
|
|
49
59
|
}
|
|
50
|
-
{objects.length === 0 && <tr><td colSpan={columns.length + (selection ? 1 : 0)} className="text-center">
|
|
60
|
+
{objects.length === 0 && <tr><td colSpan={columns.length + (selection ? 1 : 0)} className="text-center">{t('store.noObjectsDragAndDrop')}</td></tr>}
|
|
51
61
|
</TBody>
|
|
52
62
|
</Table>
|
|
53
63
|
)
|
|
54
64
|
}
|
|
55
65
|
|
|
56
|
-
export function DocumentGridView({ objects, selection, isLoading, onSelectionChange, onRowClick, previewObject, selectedObject }: ViewProps) {
|
|
66
|
+
export function DocumentGridView({ objects, selection, isLoading, onSelectionChange, onRowClick, highlightRow, previewObject, selectedObject }: ViewProps) {
|
|
57
67
|
return (
|
|
58
68
|
<>
|
|
59
69
|
<DocumentIconSkeleton isLoading={isLoading} />
|
|
60
70
|
<div className="w-full gap-2 grid xs:grid-cols-1 sm:grid-cols-2 md:grid-cols-4 lg:grid-cols-6 @xs:grid-cols-1 @sm:grid-cols-2 @md:grid-cols-3 @lg:grid-cols-4">
|
|
61
71
|
{
|
|
62
72
|
objects.map((document) => (
|
|
63
|
-
<DocumentIcon key={document.id} document={document} selection={selection} onSelectionChange={onSelectionChange} onRowClick={onRowClick} previewObject={previewObject} selectedObject={selectedObject} />
|
|
73
|
+
<DocumentIcon key={document.id} document={document} selection={selection} onSelectionChange={onSelectionChange} onRowClick={onRowClick} highlightRow={highlightRow} previewObject={previewObject} selectedObject={selectedObject} />
|
|
64
74
|
))
|
|
65
75
|
}
|
|
66
76
|
</div>
|
|
67
77
|
</>
|
|
68
78
|
)
|
|
69
|
-
}
|
|
79
|
+
}
|