import React from 'react'; import { Navigate, Outlet } from 'react-router-dom'; import { AppShellContext } from '../appShellContext'; import DropOverlay from './DropOverlay'; import UploadQueueOverlay from './UploadQueueOverlay'; import useDocumentsWorkspace from '../hooks/documents/useDocumentsWorkspace'; import { useDocumentsPreferences } from './useDocumentsPreferences'; import SettingsRoute from './SettingsRoute'; const AppLayout = () => { const documentsPreferences = useDocumentsPreferences(); const { appStatus, location, shellRef, dropOverlayState, managementModals, contextValue, settingsOpen, closeSettings, } = useDocumentsWorkspace({ documentsViewMode: documentsPreferences.documentsViewMode, documentsSortField: documentsPreferences.documentsSortField, documentsSortDirection: documentsPreferences.documentsSortDirection, documentsSortFieldRef: documentsPreferences.documentsSortFieldRef, documentsSortDirectionRef: documentsPreferences.documentsSortDirectionRef, onDocumentsViewModeChange: documentsPreferences.handleDocumentsViewModeChange, onDocumentsSortFieldChange: documentsPreferences.handleDocumentsSortFieldChange, onDocumentsSortDirectionToggle: documentsPreferences.handleDocumentsSortDirectionToggle, searchIncludeDescendants: documentsPreferences.searchIncludeDescendants, onToggleSearchIncludeDescendants: documentsPreferences.toggleSearchIncludeDescendants, onSetSearchIncludeDescendants: documentsPreferences.setSearchIncludeDescendants, sortRefreshReadyRef: documentsPreferences.sortRefreshReadyRef, handleDeskExit: documentsPreferences.handleDeskExit, }); if (['logged-out', 'authenticating', 'selecting-tenant'].includes(appStatus)) { const shouldRememberLastLocation = appStatus !== 'logged-out'; return ( ); } return (
{managementModals} {settingsOpen ? ( ) : null}
); }; export default AppLayout;