Skip to content

Commit 9ee40cd

Browse files
authored
πŸ› Fix chat sidebar and main area scroll height
2 parents ea542c5 + 3b17869 commit 9ee40cd

File tree

10 files changed

+236
-184
lines changed

10 files changed

+236
-184
lines changed

β€Žfrontend/app/[locale]/chat/components/chatHeader.tsxβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ export function ChatHeader({ title, onRename }: ChatHeaderProps) {
111111

112112
return (
113113
<>
114-
<header className="border-b border-transparent bg-background z-10">
114+
<header className="border-b border-transparent bg-background">
115115
<div className="p-3 pb-1">
116116
<div className="relative flex flex-1">
117117
<div className="absolute left-0 top-1/2 transform -translate-y-1/2">

β€Žfrontend/app/[locale]/chat/components/chatRightPanel.tsxβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { ExternalLink, Database, X } from "lucide-react";
55
import { Button } from "@/components/ui/button";
66
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs";
77
import { StaticScrollArea } from "@/components/ui/scrollArea";
8-
import { ChatMessageType, ImageItem, ChatRightPanelProps, SearchResult } from "@/types/chat";
8+
import { ImageItem, ChatRightPanelProps, SearchResult } from "@/types/chat";
99
import { API_ENDPOINTS } from "@/services/api";
1010
import { formatDate, formatUrl } from "@/lib/utils";
1111
import log from "@/lib/logger";

β€Žfrontend/app/[locale]/chat/internal/ChatContent.tsxβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export function ChatContent() {
5858
}
5959

6060
return (
61-
<div className="flex h-full w-full flex-col">
61+
<div className="flex h-full w-full flex-col overflow-hidden">
6262
<ChatInterface />
6363
</div>
6464
);

β€Žfrontend/app/[locale]/page.tsxβ€Ž

Lines changed: 20 additions & 166 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
"use client";
22

33
import { useState, useEffect } from "react";
4-
import { useTranslation, Trans } from "react-i18next";
4+
import { useTranslation } from "react-i18next";
55
import { Button } from "@/components/ui/button";
66
import { NavigationLayout } from "@/components/navigation/NavigationLayout";
77
import { HomepageContent } from "@/components/homepage/HomepageContent";
8+
import { AuthDialogs } from "@/components/homepage/AuthDialogs";
89
import { LoginModal } from "@/components/auth/loginModal";
910
import { RegisterModal } from "@/components/auth/registerModal";
1011
import { useAuth } from "@/hooks/useAuth";
11-
import { Modal, ConfigProvider, App } from "antd";
12+
import { ConfigProvider, App } from "antd";
1213
import modelEngineService from "@/services/modelEngineService";
1314
import { CONNECTION_STATUS, ConnectionStatus } from "@/const/modelConfig";
1415
import log from "@/lib/logger";
@@ -472,176 +473,29 @@ export default function Home() {
472473
>
473474
{renderContent()}
474475

475-
{/* Login prompt dialog - only shown in full version */}
476-
{!isSpeedMode && (
477-
<Modal
478-
title={t("page.loginPrompt.title")}
479-
open={loginPromptOpen}
480-
onCancel={handleCloseLoginPrompt}
481-
footer={[
482-
<Button
483-
key="register"
484-
variant="link"
485-
onClick={handleRegisterClick}
486-
className="bg-white mr-2"
487-
>
488-
{t("page.loginPrompt.register")}
489-
</Button>,
490-
<Button
491-
key="login"
492-
onClick={handleLoginClick}
493-
className="bg-blue-600 text-white hover:bg-blue-700"
494-
>
495-
{t("page.loginPrompt.login")}
496-
</Button>,
497-
]}
498-
centered
499-
>
500-
<div className="py-2">
501-
<h3 className="text-base font-medium mb-2">
502-
{t("page.loginPrompt.header")}
503-
</h3>
504-
<p className="text-gray-600 mb-3">
505-
{t("page.loginPrompt.intro")}
506-
</p>
507-
508-
<div className="rounded-md mb-6 mt-3">
509-
<h3 className="text-base font-medium mb-1">
510-
{t("page.loginPrompt.benefitsTitle")}
511-
</h3>
512-
<ul className="text-gray-600 pl-5 list-disc">
513-
{(
514-
t("page.loginPrompt.benefits", {
515-
returnObjects: true,
516-
}) as string[]
517-
).map((benefit, i) => (
518-
<li key={i}>{benefit}</li>
519-
))}
520-
</ul>
521-
</div>
522-
523-
<div className="mt-4">
524-
<p className="text-base font-medium">
525-
<Trans i18nKey="page.loginPrompt.githubSupport">
526-
⭐️ Nexent is still growing, please help me by starring on{" "}
527-
<a
528-
href="https://github.com/ModelEngine-Group/nexent"
529-
target="_blank"
530-
rel="noopener noreferrer"
531-
className="text-blue-600 hover:text-blue-700 font-bold"
532-
>
533-
GitHub
534-
</a>
535-
, thank you.
536-
</Trans>
537-
</p>
538-
</div>
539-
<br />
540-
541-
<p className="text-gray-500 text-xs">
542-
{t("page.loginPrompt.noAccount")}
543-
</p>
544-
</div>
545-
</Modal>
546-
)}
547-
548-
{/* Login and register modals - only shown in full version */}
476+
{/* Auth dialogs - only shown in full version */}
549477
{!isSpeedMode && (
550478
<>
479+
<AuthDialogs
480+
loginPromptOpen={loginPromptOpen}
481+
adminPromptOpen={adminRequiredPromptOpen}
482+
onCloseLoginPrompt={handleCloseLoginPrompt}
483+
onCloseAdminPrompt={handleCloseAdminPrompt}
484+
onLoginClick={() => {
485+
setLoginPromptOpen(false);
486+
setAdminRequiredPromptOpen(false);
487+
openLoginModal();
488+
}}
489+
onRegisterClick={() => {
490+
setLoginPromptOpen(false);
491+
setAdminRequiredPromptOpen(false);
492+
openRegisterModal();
493+
}}
494+
/>
551495
<LoginModal />
552496
<RegisterModal />
553497
</>
554498
)}
555-
556-
{/* Admin prompt dialog - only shown in full version */}
557-
{!isSpeedMode && (
558-
<Modal
559-
title={t("page.adminPrompt.title")}
560-
open={adminRequiredPromptOpen}
561-
onCancel={handleCloseAdminPrompt}
562-
footer={[
563-
<Button
564-
key="register"
565-
variant="link"
566-
onClick={() => {
567-
setAdminRequiredPromptOpen(false);
568-
openRegisterModal();
569-
}}
570-
className="bg-white mr-2"
571-
>
572-
{t("page.loginPrompt.register")}
573-
</Button>,
574-
<Button
575-
key="login"
576-
onClick={() => {
577-
setAdminRequiredPromptOpen(false);
578-
openLoginModal();
579-
}}
580-
className="bg-blue-600 text-white hover:bg-blue-700"
581-
>
582-
{t("page.loginPrompt.login")}
583-
</Button>,
584-
]}
585-
centered
586-
>
587-
<div className="py-2">
588-
<p className="text-gray-600">{t("page.adminPrompt.intro")}</p>
589-
</div>
590-
<div className="py-2">
591-
<h3 className="text-base font-medium mb-2">
592-
{t("page.adminPrompt.unlockHeader")}
593-
</h3>
594-
<p className="text-gray-600 mb-3">
595-
{t("page.adminPrompt.unlockIntro")}
596-
</p>
597-
<div className="rounded-md mb-6 mt-3">
598-
<h3 className="text-base font-medium mb-1">
599-
{t("page.adminPrompt.permissionsTitle")}
600-
</h3>
601-
<ul className="text-gray-600 pl-5 list-disc">
602-
{(
603-
t("page.adminPrompt.permissions", {
604-
returnObjects: true,
605-
}) as string[]
606-
).map((permission, i) => (
607-
<li key={i}>{permission}</li>
608-
))}
609-
</ul>
610-
</div>
611-
<div className="mt-4">
612-
<p className="text-base font-medium">
613-
<Trans i18nKey="page.adminPrompt.githubSupport">
614-
⭐️ Nexent is still growing, please help me by starring on{" "}
615-
<a
616-
href="https://github.com/ModelEngine-Group/nexent"
617-
target="_blank"
618-
rel="noopener noreferrer"
619-
className="text-blue-600 hover:text-blue-700 font-bold"
620-
>
621-
GitHub
622-
</a>
623-
, thank you.
624-
</Trans>
625-
<br />
626-
<br />
627-
<Trans i18nKey="page.adminPrompt.becomeAdmin">
628-
πŸ’‘ Want to become an administrator? Please visit the{" "}
629-
<a
630-
href="http://nexent.tech/contact"
631-
target="_blank"
632-
rel="noopener noreferrer"
633-
className="text-blue-600 hover:text-blue-700 font-bold"
634-
>
635-
official contact page
636-
</a>{" "}
637-
to apply for an administrator account.
638-
</Trans>
639-
</p>
640-
</div>
641-
<br />
642-
</div>
643-
</Modal>
644-
)}
645499
</NavigationLayout>
646500
);
647501
}

β€Žfrontend/app/[locale]/space/components/SpaceContent.tsxβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export function SpaceContent({
5858
onChatNavigate(agentId);
5959
} else {
6060
// Fallback to URL navigation if callback not provided
61-
router.push(`/chat?agent=${agentId}`);
61+
router.push(`/chat?agent=${agentId}`);
6262
}
6363
};
6464

0 commit comments

Comments
Β (0)