Add Quick NewChat Action

This commit is contained in:
Reekin 2024-03-18 05:17:55 +08:00
parent cc0eae7153
commit 2b5fbb7f18
3 changed files with 18 additions and 2 deletions

View File

@ -37,6 +37,7 @@ import AutoIcon from "../icons/auto.svg";
import BottomIcon from "../icons/bottom.svg";
import StopIcon from "../icons/pause.svg";
import RobotIcon from "../icons/robot.svg";
import AddIcon from "../icons/add.svg";
import {
ChatMessage,
@ -97,6 +98,8 @@ import { ExportMessageModal } from "./exporter";
import { getClientConfig } from "../config/client";
import { useAllModels } from "../utils/hooks";
import { MultimodalContent } from "../client/api";
import { InputRange } from "./input-range";
import { config } from "process";
const Markdown = dynamic(async () => (await import("./markdown")).Markdown, {
loading: () => <LoadingIcon />,
@ -555,6 +558,15 @@ export function ChatActions(props: {
icon={<RobotIcon />}
/>
<ChatAction
text={Locale.Chat.InputActions.NewChat}
icon={<AddIcon />}
onClick={() => {
chatStore.newSession(chatStore.currentSession().mask);
navigate(Path.Chat);
}}
/>
{showModelSelector && (
<Selector
defaultSelectedValue={currentModel}
@ -1104,7 +1116,9 @@ function _Chat() {
const handlePaste = useCallback(
async (event: React.ClipboardEvent<HTMLTextAreaElement>) => {
const currentModel = chatStore.currentSession().mask.modelConfig.model;
if(!isVisionModel(currentModel)){return;}
if (!isVisionModel(currentModel)) {
return;
}
const items = (event.clipboardData || window.clipboardData).items;
for (const item of items) {
if (item.kind === "file" && item.type.startsWith("image/")) {

View File

@ -62,6 +62,7 @@ const cn = {
Prompt: "快捷指令",
Masks: "所有面具",
Clear: "清除聊天",
NewChat: "另起聊天",
Settings: "对话设置",
UploadImage: "上传图片",
},

View File

@ -64,6 +64,7 @@ const en: LocaleType = {
Prompt: "Prompts",
Masks: "Masks",
Clear: "Clear Context",
NewChat: "New Chat",
Settings: "Settings",
UploadImage: "Upload Images",
},