feat: Add BetaTag to Copilot resume chat label in SettingsOther component

This commit is contained in:
n4ze3m 2024-05-25 10:16:13 +05:30
parent 3104409558
commit 014565a14e
3 changed files with 120 additions and 121 deletions

View File

@ -10,7 +10,6 @@ import { useTranslation } from "react-i18next"
import { Link, useLocation } from "react-router-dom"
import { OllamaIcon } from "../Icons/Ollama"
import { Tag } from "antd"
import { BetaTag } from "../Common/Beta"
function classNames(...classes: string[]) {
return classes.filter(Boolean).join(" ")
@ -82,7 +81,6 @@ export const SettingsLayout = ({ children }: { children: React.ReactNode }) => {
name={
<div className="inline-flex items-center gap-2">
{t("manageKnowledge.title")}
<BetaTag />
</div>
}
icon={BlocksIcon}

View File

@ -91,125 +91,123 @@ export const ModelsBody = () => {
{status === "pending" && <Skeleton paragraph={{ rows: 8 }} />}
{status === "success" && (
<div
className="overflow-x-auto"
>
<div className="overflow-x-auto">
<Table
columns={[
{
title: t("manageModels.columns.name"),
dataIndex: "name",
key: "name"
},
{
title: t("manageModels.columns.digest"),
dataIndex: "digest",
key: "digest",
render: (text: string) => (
<Tooltip title={text}>
<Tag
className="cursor-pointer"
color="blue">{`${text?.slice(0, 5)}...${text?.slice(-4)}`}</Tag>
</Tooltip>
)
},
{
title: t("manageModels.columns.modifiedAt"),
dataIndex: "modified_at",
key: "modified_at",
render: (text: string) => dayjs(text).fromNow(true)
},
{
title: t("manageModels.columns.size"),
dataIndex: "size",
key: "size",
render: (text: number) => bytePerSecondFormatter(text)
},
{
title: t("manageModels.columns.actions"),
render: (_, record) => (
<div className="flex gap-4">
<Tooltip title={t("manageModels.tooltip.delete")}>
<button
onClick={() => {
if (
window.confirm(t("manageModels.confirm.delete"))
) {
deleteOllamaModel(record.model)
columns={[
{
title: t("manageModels.columns.name"),
dataIndex: "name",
key: "name"
},
{
title: t("manageModels.columns.digest"),
dataIndex: "digest",
key: "digest",
render: (text: string) => (
<Tooltip title={text}>
<Tag
className="cursor-pointer"
color="blue">{`${text?.slice(0, 5)}...${text?.slice(-4)}`}</Tag>
</Tooltip>
)
},
{
title: t("manageModels.columns.modifiedAt"),
dataIndex: "modified_at",
key: "modified_at",
render: (text: string) => dayjs(text).fromNow(true)
},
{
title: t("manageModels.columns.size"),
dataIndex: "size",
key: "size",
render: (text: number) => bytePerSecondFormatter(text)
},
{
title: t("manageModels.columns.actions"),
render: (_, record) => (
<div className="flex gap-4">
<Tooltip title={t("manageModels.tooltip.delete")}>
<button
onClick={() => {
if (
selectedModel &&
selectedModel === record.model
window.confirm(t("manageModels.confirm.delete"))
) {
setSelectedModel(null)
deleteOllamaModel(record.model)
if (
selectedModel &&
selectedModel === record.model
) {
setSelectedModel(null)
}
}
}
}}
className="text-red-500 dark:text-red-400">
<Trash2 className="w-5 h-5" />
</button>
</Tooltip>
<Tooltip title={t("manageModels.tooltip.repull")}>
<button
onClick={() => {
if (
window.confirm(t("manageModels.confirm.repull"))
) {
pullOllamaModel(record.model)
}
}}
className="text-gray-500 dark:text-gray-400">
<RotateCcw className="w-5 h-5" />
</button>
</Tooltip>
</div>
)
}
]}
expandable={{
expandedRowRender: (record) => (
<Table
pagination={false}
columns={[
{
title: t("manageModels.expandedColumns.parentModel"),
key: "parent_model",
dataIndex: "parent_model"
},
{
title: t("manageModels.expandedColumns.format"),
key: "format",
dataIndex: "format"
},
{
title: t("manageModels.expandedColumns.family"),
key: "family",
dataIndex: "family"
},
{
title: t("manageModels.expandedColumns.parameterSize"),
key: "parameter_size",
dataIndex: "parameter_size"
},
{
title: t(
"manageModels.expandedColumns.quantizationLevel"
),
key: "quantization_level",
dataIndex: "quantization_level"
}
]}
dataSource={[record.details]}
locale={{
emptyText: t("common:noData")
}}
/>
),
defaultExpandAllRows: false
}}
bordered
dataSource={data}
rowKey={(record) => `${record.model}-${record.digest}`}
/>
}}
className="text-red-500 dark:text-red-400">
<Trash2 className="w-5 h-5" />
</button>
</Tooltip>
<Tooltip title={t("manageModels.tooltip.repull")}>
<button
onClick={() => {
if (
window.confirm(t("manageModels.confirm.repull"))
) {
pullOllamaModel(record.model)
}
}}
className="text-gray-500 dark:text-gray-400">
<RotateCcw className="w-5 h-5" />
</button>
</Tooltip>
</div>
)
}
]}
expandable={{
expandedRowRender: (record) => (
<Table
pagination={false}
columns={[
{
title: t("manageModels.expandedColumns.parentModel"),
key: "parent_model",
dataIndex: "parent_model"
},
{
title: t("manageModels.expandedColumns.format"),
key: "format",
dataIndex: "format"
},
{
title: t("manageModels.expandedColumns.family"),
key: "family",
dataIndex: "family"
},
{
title: t("manageModels.expandedColumns.parameterSize"),
key: "parameter_size",
dataIndex: "parameter_size"
},
{
title: t(
"manageModels.expandedColumns.quantizationLevel"
),
key: "quantization_level",
dataIndex: "quantization_level"
}
]}
dataSource={[record.details]}
locale={{
emptyText: t("common:noData")
}}
/>
),
defaultExpandAllRows: false
}}
bordered
dataSource={data}
rowKey={(record) => `${record.model}-${record.digest}`}
/>
</div>
)}
</div>
@ -223,6 +221,7 @@ export const ModelsBody = () => {
onSubmit={form.onSubmit((values) => pullOllamaModel(values.model))}>
<Input
{...form.getInputProps("model")}
required
placeholder={t("manageModels.modal.placeholder")}
size="large"
/>

View File

@ -86,10 +86,12 @@ export const SettingOther = () => {
/>
</div>
<div className="flex flex-row justify-between">
<span className="text-gray-500 dark:text-neutral-50">
{t("generalSettings.settings.copilotResumeLastChat.label")}
</span>
<div className="inline-flex items-center gap-2">
<BetaTag />
<span className="text-gray-500 dark:text-neutral-50">
{t("generalSettings.settings.copilotResumeLastChat.label")}
</span>
</div>
<Switch
checked={copilotResumeLastChat}
onChange={(checked) => setCopilotResumeLastChat(checked)}