This commit is contained in:
parent
379313dde9
commit
07c0e5e145
|
|
@ -29,6 +29,8 @@ import { ContentType } from "@/types"
|
||||||
import { FC, useContext, useRef, useState } from "react"
|
import { FC, useContext, useRef, useState } from "react"
|
||||||
import { toast } from "sonner"
|
import { toast } from "sonner"
|
||||||
|
|
||||||
|
import { useTranslation } from 'react-i18next'
|
||||||
|
|
||||||
interface SidebarCreateItemProps {
|
interface SidebarCreateItemProps {
|
||||||
isOpen: boolean
|
isOpen: boolean
|
||||||
isTyping: boolean
|
isTyping: boolean
|
||||||
|
|
@ -46,6 +48,9 @@ export const SidebarCreateItem: FC<SidebarCreateItemProps> = ({
|
||||||
createState,
|
createState,
|
||||||
isTyping
|
isTyping
|
||||||
}) => {
|
}) => {
|
||||||
|
|
||||||
|
const { t, i18n } = useTranslation()
|
||||||
|
|
||||||
const {
|
const {
|
||||||
selectedWorkspace,
|
selectedWorkspace,
|
||||||
setChats,
|
setChats,
|
||||||
|
|
@ -215,6 +220,20 @@ export const SidebarCreateItem: FC<SidebarCreateItemProps> = ({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 判断是否需要首字母大写(且做 -1 截断)
|
||||||
|
const needsUpperCaseFirstLetter = (language: string) => {
|
||||||
|
const languagesRequiringUpperCase = ['en', 'de', 'fr', 'es', 'it'];
|
||||||
|
return languagesRequiringUpperCase.includes(language);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 处理翻译后的 contentType 文本
|
||||||
|
const getCapitalizedContentType = (translated: string, language: string) => {
|
||||||
|
if (needsUpperCaseFirstLetter(language)) {
|
||||||
|
return translated.charAt(0).toUpperCase() + translated.slice(1, -1); // ✅ 按你的要求保留 .slice(1, -1)
|
||||||
|
}
|
||||||
|
return translated;
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Sheet open={isOpen} onOpenChange={onOpenChange}>
|
<Sheet open={isOpen} onOpenChange={onOpenChange}>
|
||||||
<SheetContent
|
<SheetContent
|
||||||
|
|
@ -225,8 +244,13 @@ export const SidebarCreateItem: FC<SidebarCreateItemProps> = ({
|
||||||
<div className="grow overflow-auto">
|
<div className="grow overflow-auto">
|
||||||
<SheetHeader>
|
<SheetHeader>
|
||||||
<SheetTitle className="text-2xl font-bold">
|
<SheetTitle className="text-2xl font-bold">
|
||||||
Create{" "}
|
{/* Create{" "}
|
||||||
{contentType.charAt(0).toUpperCase() + contentType.slice(1, -1)}
|
{contentType.charAt(0).toUpperCase() + contentType.slice(1, -1)} */}
|
||||||
|
|
||||||
|
{t("side.sidebarCreateNew")}{" "}
|
||||||
|
{getCapitalizedContentType(t(`contentTypeLabel.${contentType}`), i18n.language)}
|
||||||
|
|
||||||
|
|
||||||
</SheetTitle>
|
</SheetTitle>
|
||||||
</SheetHeader>
|
</SheetHeader>
|
||||||
|
|
||||||
|
|
@ -240,11 +264,11 @@ export const SidebarCreateItem: FC<SidebarCreateItemProps> = ({
|
||||||
variant="outline"
|
variant="outline"
|
||||||
onClick={() => onOpenChange(false)}
|
onClick={() => onOpenChange(false)}
|
||||||
>
|
>
|
||||||
Cancel
|
{t("side.cancel")}
|
||||||
</Button>
|
</Button>
|
||||||
|
|
||||||
<Button disabled={creating} ref={buttonRef} onClick={handleCreate}>
|
<Button disabled={creating} ref={buttonRef} onClick={handleCreate}>
|
||||||
{creating ? "Creating..." : "Create"}
|
{creating ? t("side.creating") : t("side.create")}
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</SheetFooter>
|
</SheetFooter>
|
||||||
|
|
|
||||||
|
|
@ -151,6 +151,8 @@
|
||||||
"profileSettings": "Profile Settings",
|
"profileSettings": "Profile Settings",
|
||||||
"deleteChatTitle": "Delete",
|
"deleteChatTitle": "Delete",
|
||||||
"deleteChatConfirm": "Are you sure you want to delete this chat?",
|
"deleteChatConfirm": "Are you sure you want to delete this chat?",
|
||||||
|
"create": "Create",
|
||||||
|
"creating": "Creating...",
|
||||||
"delete": "Delete"
|
"delete": "Delete"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -150,6 +150,8 @@
|
||||||
"profileSettings": "プロフィール設定",
|
"profileSettings": "プロフィール設定",
|
||||||
"deleteChatTitle": "削除",
|
"deleteChatTitle": "削除",
|
||||||
"deleteChatConfirm": "このチャットを削除してもよろしいですか?",
|
"deleteChatConfirm": "このチャットを削除してもよろしいですか?",
|
||||||
|
"create": "作成",
|
||||||
|
"creating": "作成中...",
|
||||||
"delete": "削除"
|
"delete": "削除"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -150,6 +150,8 @@
|
||||||
"profileSettings": "个人资料设置",
|
"profileSettings": "个人资料设置",
|
||||||
"deleteChatTitle": "删除",
|
"deleteChatTitle": "删除",
|
||||||
"deleteChatConfirm": "您确定要删除此聊天记录吗?",
|
"deleteChatConfirm": "您确定要删除此聊天记录吗?",
|
||||||
|
"create": "创建",
|
||||||
|
"creating": "正在创建...",
|
||||||
"delete": "删除"
|
"delete": "删除"
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue