mirror of
https://github.com/coaidev/coai.git
synced 2025-05-29 01:40:17 +09:00
add contact button
This commit is contained in:
parent
8f600d5c7d
commit
c2668212f6
BIN
app/public/source/qq.jpg
Normal file
BIN
app/public/source/qq.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 54 KiB |
@ -404,3 +404,10 @@
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.contact-image {
|
||||
margin-top: 0.75rem;
|
||||
max-width: min(60vw, 420px);
|
||||
max-height: 80vh;
|
||||
border-radius: var(--radius);
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ import { formatMessage } from "../../utils.ts";
|
||||
import ChatInterface from "./ChatInterface.tsx";
|
||||
import { Button } from "../ui/button.tsx";
|
||||
import router from "../../router.tsx";
|
||||
import { BookMarked, ChevronRight, FolderKanban, Globe } from "lucide-react";
|
||||
import {BookMarked, ChevronRight, FolderKanban, Globe, Users2} from "lucide-react";
|
||||
import {
|
||||
Tooltip,
|
||||
TooltipContent,
|
||||
@ -25,6 +25,15 @@ import { Toggle } from "../ui/toggle.tsx";
|
||||
import { Input } from "../ui/input.tsx";
|
||||
import EditorProvider from "../EditorProvider.tsx";
|
||||
import ModelSelector from "./ModelSelector.tsx";
|
||||
import {
|
||||
Dialog,
|
||||
DialogContent,
|
||||
DialogDescription,
|
||||
DialogFooter,
|
||||
DialogHeader,
|
||||
DialogTitle,
|
||||
DialogTrigger
|
||||
} from "../ui/dialog.tsx";
|
||||
|
||||
function ChatWrapper() {
|
||||
const { t } = useTranslation();
|
||||
@ -90,14 +99,37 @@ function ChatWrapper() {
|
||||
<ChatInterface />
|
||||
) : (
|
||||
<div className={`chat-product`}>
|
||||
<Button
|
||||
variant={`outline`}
|
||||
onClick={() => window.open("https://docs.chatnio.net", "_blank")}
|
||||
>
|
||||
<BookMarked className={`h-4 w-4 mr-1.5`} />
|
||||
{t("docs.title")}
|
||||
<ChevronRight className={`h-4 w-4 ml-2`} />
|
||||
</Button>
|
||||
<Dialog>
|
||||
<DialogTrigger asChild>
|
||||
<Button variant={`outline`}>
|
||||
<Users2 className={`h-4 w-4 mr-1.5`} />
|
||||
{t("contact.title")}
|
||||
<ChevronRight className={`h-4 w-4 ml-2`} />
|
||||
</Button>
|
||||
</DialogTrigger>
|
||||
<DialogContent>
|
||||
<DialogHeader>
|
||||
<DialogTitle>{t("contact.title")}</DialogTitle>
|
||||
<DialogDescription />
|
||||
<Button
|
||||
className={`mx-auto`}
|
||||
variant={`outline`}
|
||||
onClick={() => window.open("https://docs.chatnio.net", "_blank")}
|
||||
>
|
||||
<BookMarked className={`h-4 w-4 mr-1.5`} />
|
||||
{t("docs.title")}
|
||||
</Button>
|
||||
<a
|
||||
href={"http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=1oKfIbNVXmMNMVzW1NiFSTKDcT1qIEq5&authKey=uslxslIBZtLImf4BSxjDqfx4hiJA52YV7PFM38W%2BOArr%2BhE0jwVdQCRYs0%2FXKX7W&noverify=0&group_code=565902327"}
|
||||
target={"_blank"}
|
||||
className={`mx-auto`}
|
||||
>
|
||||
<img src={`/source/qq.jpg`} className={`contact-image`} alt={`QQ`} />
|
||||
</a>
|
||||
|
||||
</DialogHeader>
|
||||
</DialogContent>
|
||||
</Dialog>
|
||||
<Button
|
||||
variant={`outline`}
|
||||
onClick={() => router.navigate("/generate")}
|
||||
|
@ -130,9 +130,19 @@ function ShareManagement() {
|
||||
<DialogContent>
|
||||
<DialogHeader>
|
||||
<DialogTitle>{t("share.manage")}</DialogTitle>
|
||||
<DialogDescription className={`share-table`}>
|
||||
<ShareTable data={data} />
|
||||
</DialogDescription>
|
||||
{
|
||||
data.length > 0 ? (
|
||||
<DialogDescription className={`share-table`}>
|
||||
<ShareTable data={data} />
|
||||
</DialogDescription>
|
||||
) : (
|
||||
<DialogDescription>
|
||||
<p className={`text-center select-none mt-6 mb-2`}>
|
||||
{t("conversation.empty")}
|
||||
</p>
|
||||
</DialogDescription>
|
||||
)
|
||||
}
|
||||
</DialogHeader>
|
||||
<DialogFooter>
|
||||
<Button variant={`outline`} onClick={() => dispatch(closeDialog())}>
|
||||
|
@ -206,6 +206,9 @@ const resources = {
|
||||
"check-success": "Redeem Success",
|
||||
"check-success-description": "Redeem Success! You have received {{amount}} points, start your AI journey!",
|
||||
"check-failed": "Redeem Failed",
|
||||
},
|
||||
contact: {
|
||||
title: "Contact Us",
|
||||
}
|
||||
},
|
||||
},
|
||||
@ -399,7 +402,11 @@ const resources = {
|
||||
"check-success": "兑换成功",
|
||||
"check-success-description": "兑换成功!您已获得 {{amount}} 点数,开始您的 AI 之旅吧!",
|
||||
"check-failed": "兑换失败",
|
||||
}
|
||||
},
|
||||
contact: {
|
||||
title: "联系我们",
|
||||
},
|
||||
|
||||
},
|
||||
},
|
||||
ru: {
|
||||
@ -603,6 +610,9 @@ const resources = {
|
||||
"check-success": "Успешно",
|
||||
"check-success-description": "Успешно! Вы получили {{amount}} очков, начните свое путешествие в мир AI!",
|
||||
"check-failed": "Не удалось",
|
||||
},
|
||||
contact: {
|
||||
title: "Связаться с нами",
|
||||
}
|
||||
},
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user