feat: refine AI Assistant sidebar layout - reserve space for sidebar, default to dock mode from navbar, and ensure fixed positioning
This commit is contained in:
parent
6a2c183827
commit
835c628ea8
@ -5,16 +5,25 @@ import { ThemeProvider } from '../components/theme'
|
||||
import { LanguageProvider } from '../i18n/LanguageProvider'
|
||||
import { AskAIDialog } from '../components/AskAIDialog'
|
||||
import { useMoltbotStore } from '../lib/moltbotStore'
|
||||
import { cn } from '../lib/utils'
|
||||
|
||||
export function AppProviders({ children }: { children: ReactNode }) {
|
||||
const { isOpen, setIsOpen, setMinimized, close } = useMoltbotStore()
|
||||
const { isOpen, isMinimized, setIsOpen, setMinimized, close, mode } = useMoltbotStore()
|
||||
|
||||
// Reserve space only in sidebar modes, not in overlay/float mode
|
||||
const reserveSpace = isOpen && !isMinimized && mode !== 'overlay'
|
||||
|
||||
return (
|
||||
<ThemeProvider>
|
||||
<LanguageProvider>
|
||||
<div className="flex flex-col min-h-screen">
|
||||
<div className="flex-1 flex flex-col relative w-full overflow-hidden">
|
||||
{children}
|
||||
<div className={cn(
|
||||
"flex-1 flex flex-col relative w-full overflow-hidden transition-[padding] duration-300 ease-in-out",
|
||||
reserveSpace ? "pr-[400px]" : ""
|
||||
)}>
|
||||
<div className="flex-1 flex flex-col w-full relative">
|
||||
{children}
|
||||
</div>
|
||||
<AskAIDialog
|
||||
open={isOpen}
|
||||
onMinimize={() => {
|
||||
|
||||
@ -220,7 +220,7 @@ export default function UnifiedNavigation() {
|
||||
key={item.key}
|
||||
onClick={() => {
|
||||
setIsOpen(true);
|
||||
setMode('overlay');
|
||||
setMode('right-sidebar');
|
||||
}}
|
||||
className={`flex items-center gap-1.5 px-2 py-1.5 rounded-lg transition-colors whitespace-nowrap ${active
|
||||
? "bg-primary/10 text-primary"
|
||||
@ -405,7 +405,7 @@ export default function UnifiedNavigation() {
|
||||
key={item.key}
|
||||
onClick={() => {
|
||||
setIsOpen(true);
|
||||
setMode('overlay');
|
||||
setMode('right-sidebar');
|
||||
setMenuOpen(false);
|
||||
}}
|
||||
className={`flex w-full items-center px-4 py-3 rounded-xl text-sm font-medium transition-colors ${active
|
||||
|
||||
Loading…
Reference in New Issue
Block a user