Revert "fix: move hardcoded text to language settings (#16990) (#17133)"

This reverts commit 16c722d1d87c8e75ceced96fcc6a1aa7c09d362d.
This commit is contained in:
crazywoola 2025-04-05 11:36:03 +08:00 committed by GitHub
parent fcd5fcca83
commit 80a50633ea
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 14 additions and 40 deletions

View File

@ -52,7 +52,6 @@ from core.rag.retrieval.template_prompts import (
METADATA_FILTER_USER_PROMPT_2, METADATA_FILTER_USER_PROMPT_2,
METADATA_FILTER_USER_PROMPT_3, METADATA_FILTER_USER_PROMPT_3,
) )
from core.tools.entities.common_entities import I18nObject
from core.tools.utils.dataset_retriever.dataset_retriever_base_tool import DatasetRetrieverBaseTool from core.tools.utils.dataset_retriever.dataset_retriever_base_tool import DatasetRetrieverBaseTool
from extensions.ext_database import db from extensions.ext_database import db
from libs.json_in_md_parser import parse_and_check_json_markdown from libs.json_in_md_parser import parse_and_check_json_markdown
@ -295,10 +294,7 @@ class DatasetRetrieval:
for dataset in available_datasets: for dataset in available_datasets:
description = dataset.description description = dataset.description
if not description: if not description:
description = I18nObject( description = "useful for when you want to answer queries about the " + dataset.name
en_US="useful for when you want to answer queries about the " + dataset.name,
zh_Hans="用于回答关于 " + dataset.name + " 的查询",
)
description = description.replace("\n", "").replace("\r", "") description = description.replace("\n", "").replace("\r", "")
message_tool = PromptMessageTool( message_tool = PromptMessageTool(

View File

@ -6,7 +6,6 @@ from core.rag.datasource.retrieval_service import RetrievalService
from core.rag.entities.context_entities import DocumentContext from core.rag.entities.context_entities import DocumentContext
from core.rag.models.document import Document as RetrievalDocument from core.rag.models.document import Document as RetrievalDocument
from core.rag.retrieval.retrieval_methods import RetrievalMethod from core.rag.retrieval.retrieval_methods import RetrievalMethod
from core.tools.entities.common_entities import I18nObject
from core.tools.utils.dataset_retriever.dataset_retriever_base_tool import DatasetRetrieverBaseTool from core.tools.utils.dataset_retriever.dataset_retriever_base_tool import DatasetRetrieverBaseTool
from extensions.ext_database import db from extensions.ext_database import db
from models.dataset import Dataset from models.dataset import Dataset
@ -39,10 +38,7 @@ class DatasetRetrieverTool(DatasetRetrieverBaseTool):
def from_dataset(cls, dataset: Dataset, **kwargs): def from_dataset(cls, dataset: Dataset, **kwargs):
description = dataset.description description = dataset.description
if not description: if not description:
description = I18nObject( description = "useful for when you want to answer queries about the " + dataset.name
en_US="useful for when you want to answer queries about the " + dataset.name,
zh_Hans="用于回答关于 " + dataset.name + " 的查询",
)
description = description.replace("\n", "").replace("\r", "") description = description.replace("\n", "").replace("\r", "")
return cls( return cls(

View File

@ -21,7 +21,6 @@ from core.plugin.entities.plugin import ModelProviderID
from core.rag.index_processor.constant.built_in_field import BuiltInField from core.rag.index_processor.constant.built_in_field import BuiltInField
from core.rag.index_processor.constant.index_type import IndexType from core.rag.index_processor.constant.index_type import IndexType
from core.rag.retrieval.retrieval_methods import RetrievalMethod from core.rag.retrieval.retrieval_methods import RetrievalMethod
from core.tools.entities.common_entities import I18nObject
from events.dataset_event import dataset_was_deleted from events.dataset_event import dataset_was_deleted
from events.document_event import document_was_deleted from events.document_event import document_was_deleted
from extensions.ext_database import db from extensions.ext_database import db
@ -1379,10 +1378,7 @@ class DocumentService:
cut_length = 18 cut_length = 18
cut_name = documents[0].name[:cut_length] cut_name = documents[0].name[:cut_length]
dataset.name = cut_name + "..." dataset.name = cut_name + "..."
dataset.description = I18nObject( dataset.description = "useful for when you want to answer queries about the " + documents[0].name
en_US="useful for when you want to answer queries about the " + documents[0].name,
zh_Hans="用于回答关于 " + documents[0].name + " 的查询",
)
db.session.commit() db.session.commit()
return dataset, documents, batch return dataset, documents, batch

View File

@ -38,8 +38,6 @@ const Container = () => {
const { showExternalApiPanel, setShowExternalApiPanel } = useExternalApiPanel() const { showExternalApiPanel, setShowExternalApiPanel } = useExternalApiPanel()
const [includeAll, { toggle: toggleIncludeAll }] = useBoolean(false) const [includeAll, { toggle: toggleIncludeAll }] = useBoolean(false)
document.title = `${t('dataset.knowledge')} - Dify`
const options = useMemo(() => { const options = useMemo(() => {
return [ return [
{ value: 'dataset', text: t('dataset.datasets') }, { value: 'dataset', text: t('dataset.datasets') },

View File

@ -4,4 +4,8 @@ const AppList = async () => {
return <Container /> return <Container />
} }
export const metadata = {
title: 'Datasets - Dify',
}
export default AppList export default AppList

View File

@ -13,4 +13,8 @@ const PluginList = async () => {
) )
} }
export const metadata = {
title: 'Plugins - Dify',
}
export default PluginList export default PluginList

View File

@ -4,7 +4,6 @@ import type { ChangeEvent, FC } from 'react'
import { createRef, useEffect, useState } from 'react' import { createRef, useEffect, useState } from 'react'
import Cropper, { type Area, type CropperProps } from 'react-easy-crop' import Cropper, { type Area, type CropperProps } from 'react-easy-crop'
import classNames from 'classnames' import classNames from 'classnames'
import { useTranslation } from 'react-i18next'
import { ImagePlus } from '../icons/src/vender/line/images' import { ImagePlus } from '../icons/src/vender/line/images'
import { useDraggableUploader } from './hooks' import { useDraggableUploader } from './hooks'
@ -27,7 +26,6 @@ const ImageInput: FC<UploaderProps> = ({
cropShape, cropShape,
onImageInput, onImageInput,
}) => { }) => {
const { t } = useTranslation()
const [inputImage, setInputImage] = useState<{ file: File; url: string }>() const [inputImage, setInputImage] = useState<{ file: File; url: string }>()
const [isAnimatedImage, setIsAnimatedImage] = useState<boolean>(false) const [isAnimatedImage, setIsAnimatedImage] = useState<boolean>(false)
useEffect(() => { useEffect(() => {
@ -105,8 +103,8 @@ const ImageInput: FC<UploaderProps> = ({
? <> ? <>
<ImagePlus className="pointer-events-none mb-3 h-[30px] w-[30px]" /> <ImagePlus className="pointer-events-none mb-3 h-[30px] w-[30px]" />
<div className="mb-[2px] text-sm font-medium"> <div className="mb-[2px] text-sm font-medium">
<span className="pointer-events-none">{t('common.imageInput.dropImageHere')}&nbsp;</span> <span className="pointer-events-none">Drop your image here, or&nbsp;</span>
<button className="text-components-button-primary-bg" onClick={() => inputRef.current?.click()}>{t('common.imageInput.browse')}</button> <button className="text-components-button-primary-bg" onClick={() => inputRef.current?.click()}>browse</button>
<input <input
ref={inputRef} type="file" className="hidden" ref={inputRef} type="file" className="hidden"
onClick={e => ((e.target as HTMLInputElement).value = '')} onClick={e => ((e.target as HTMLInputElement).value = '')}
@ -114,7 +112,7 @@ const ImageInput: FC<UploaderProps> = ({
onChange={handleLocalFileInput} onChange={handleLocalFileInput}
/> />
</div> </div>
<div className="pointer-events-none">{t('common.imageInput.supportedFormats')}</div> <div className="pointer-events-none text-xs">Supports PNG, JPG, JPEG, WEBP and GIF</div>
</> </>
: handleShowImage() : handleShowImage()
} }

View File

@ -56,8 +56,6 @@ const PluginPage = ({
const searchParams = useSearchParams() const searchParams = useSearchParams()
const { replace } = useRouter() const { replace } = useRouter()
document.title = `${t('plugin.metadata.title')} - Dify`
// just support install one package now // just support install one package now
const packageId = useMemo(() => { const packageId = useMemo(() => {
const idStrings = searchParams.get(PACKAGE_IDS_KEY) const idStrings = searchParams.get(PACKAGE_IDS_KEY)

View File

@ -652,11 +652,6 @@ const translation = {
pagination: { pagination: {
perPage: 'Items per page', perPage: 'Items per page',
}, },
imageInput: {
dropImageHere: 'Drop your image here, or',
browse: 'browse',
supportedFormats: 'Supports PNG, JPG, JPEG, WEBP and GIF',
},
} }
export default translation export default translation

View File

@ -1,7 +1,4 @@
const translation = { const translation = {
metadata: {
title: 'Plugins',
},
category: { category: {
all: 'All', all: 'All',
models: 'Models', models: 'Models',

View File

@ -652,11 +652,6 @@ const translation = {
pagination: { pagination: {
perPage: '每页显示', perPage: '每页显示',
}, },
imageInput: {
dropImageHere: '将图片拖放到此处,或',
browse: '浏览',
supportedFormats: '支持PNG、JPG、JPEG、WEBP和GIF格式',
},
} }
export default translation export default translation

View File

@ -1,7 +1,4 @@
const translation = { const translation = {
metadata: {
title: '插件',
},
category: { category: {
all: '全部', all: '全部',
models: '模型', models: '模型',