feat: optimize i18n implementation for better localization (#2062)

* feat: optimize i18n implementation for better localization

* delete i18n-ally-custom-framework.yml

* update common key
This commit is contained in:
jingyang
2024-07-16 17:56:27 +08:00
committed by GitHub
parent 1e4ffc2481
commit fc96bb99cc
206 changed files with 1360 additions and 1277 deletions

View File

@@ -67,7 +67,7 @@ const CollectionPageContextProvider = ({ children }: { children: ReactNode }) =>
// website config
const { openConfirm: openWebSyncConfirm, ConfirmModal: ConfirmWebSyncModal } = useConfirm({
content: t('core.dataset.collection.Start Sync Tip')
content: t('common:core.dataset.collection.Start Sync Tip')
});
const {
isOpen: isOpenWebsiteModal,
@@ -84,14 +84,14 @@ const CollectionPageContextProvider = ({ children }: { children: ReactNode }) =>
status: DatasetStatusEnum.syncing
});
const billId = await postCreateTrainingUsage({
name: t('core.dataset.training.Website Sync'),
name: t('common:core.dataset.training.Website Sync'),
datasetId: datasetId
});
await postWebsiteSync({ datasetId: datasetId, billId });
return;
},
errorToast: t('common.Update Failed')
errorToast: t('common:common.Update Failed')
});
// collection list

View File

@@ -16,31 +16,31 @@ const EmptyCollectionTip = () => {
<>
{(datasetDetail.type === DatasetTypeEnum.dataset ||
datasetDetail.type === DatasetTypeEnum.externalFile) && (
<EmptyTip text={t('core.dataset.collection.Empty Tip')} />
<EmptyTip text={t('common:core.dataset.collection.Empty Tip')} />
)}
{datasetDetail.type === DatasetTypeEnum.websiteDataset && (
<EmptyTip
text={
<Flex>
{datasetDetail.status === DatasetStatusEnum.syncing && (
<>{t('core.dataset.status.syncing')}</>
<>{t('common:core.dataset.status.syncing')}</>
)}
{datasetDetail.status === DatasetStatusEnum.active && (
<>
{!datasetDetail?.websiteConfig?.url ? (
<>
{t('core.dataset.collection.Website Empty Tip')}
{t('common:core.dataset.collection.Website Empty Tip')}
{', '}
<Box
textDecoration={'underline'}
cursor={'pointer'}
onClick={onOpenWebsiteModal}
>
{t('core.dataset.collection.Click top config website')}
{t('common:core.dataset.collection.Click top config website')}
</Box>
</>
) : (
<>{t('core.dataset.website.UnValid Website Tip')}</>
<>{t('common:core.dataset.website.UnValid Website Tip')}</>
)}
</>
)}

View File

@@ -65,8 +65,8 @@ const Header = ({}: {}) => {
const { editFolderData, setEditFolderData } = useEditFolder();
const { onOpenModal: onOpenCreateVirtualFileModal, EditModal: EditCreateVirtualFileModal } =
useEditTitle({
title: t('dataset.Create manual collection'),
tip: t('dataset.Manual collection Tip'),
title: t('common:dataset.Create manual collection'),
tip: t('common:dataset.Manual collection Tip'),
canEmpty: false
});
const {
@@ -106,8 +106,8 @@ const Header = ({}: {}) => {
setLoading(false);
},
successToast: t('common.Create Success'),
errorToast: t('common.Create Failed')
successToast: t('common:common.Create Success'),
errorToast: t('common:common.Create Failed')
});
return (
@@ -125,7 +125,7 @@ const Header = ({}: {}) => {
</Box>
{datasetDetail?.websiteConfig?.url && (
<Flex fontSize={'sm'}>
{t('core.dataset.website.Base Url')}:
{t('common:core.dataset.website.Base Url')}:
<Link
href={datasetDetail.websiteConfig.url}
target="_blank"
@@ -158,7 +158,7 @@ const Header = ({}: {}) => {
w={['100%', '250px']}
size={'sm'}
h={'36px'}
placeholder={t('common.Search') || ''}
placeholder={t('common:common.Search') || ''}
value={searchText}
leftIcon={
<MyIcon
@@ -211,7 +211,7 @@ const Header = ({}: {}) => {
h={['28px', '35px']}
>
<MyIcon name={'common/importLight'} mr={2} w={'14px'} />
<Box>{t('dataset.collections.Create And Import')}</Box>
<Box>{t('common:dataset.collections.Create And Import')}</Box>
</Flex>
</MenuButton>
}
@@ -222,7 +222,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'common/folderFill'} w={'20px'} mr={2} />
{t('Folder')}
{t('common:Folder')}
</Flex>
),
onClick: () => setEditFolderData({})
@@ -231,7 +231,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'core/dataset/manualCollection'} mr={2} w={'20px'} />
{t('core.dataset.Manual collection')}
{t('common:core.dataset.Manual collection')}
</Flex>
),
onClick: () => {
@@ -247,7 +247,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'core/dataset/fileCollection'} mr={2} w={'20px'} />
{t('core.dataset.Text collection')}
{t('common:core.dataset.Text collection')}
</Flex>
),
onClick: onOpenFileSourceSelector
@@ -256,7 +256,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'core/dataset/tableCollection'} mr={2} w={'20px'} />
{t('core.dataset.Table collection')}
{t('common:core.dataset.Table collection')}
</Flex>
),
onClick: () =>
@@ -278,7 +278,7 @@ const Header = ({}: {}) => {
{datasetDetail?.websiteConfig?.url ? (
<Flex alignItems={'center'}>
{datasetDetail.status === DatasetStatusEnum.active && (
<Button onClick={onOpenWebsiteModal}>{t('common.Config')}</Button>
<Button onClick={onOpenWebsiteModal}>{t('common:common.Config')}</Button>
)}
{datasetDetail.status === DatasetStatusEnum.syncing && (
<Flex
@@ -298,13 +298,15 @@ const Header = ({}: {}) => {
mt={'1px'}
></Box>
<Box ml={2} color={'myGray.600'}>
{t('core.dataset.status.syncing')}
{t('common:core.dataset.status.syncing')}
</Box>
</Flex>
)}
</Flex>
) : (
<Button onClick={onOpenWebsiteModal}>{t('core.dataset.Set Website Config')}</Button>
<Button onClick={onOpenWebsiteModal}>
{t('common:core.dataset.Set Website Config')}
</Button>
)}
</>
)}
@@ -330,7 +332,7 @@ const Header = ({}: {}) => {
h={['28px', '35px']}
>
<MyIcon name={'common/importLight'} mr={2} w={'14px'} />
<Box>{t('dataset.collections.Create And Import')}</Box>
<Box>{t('common:dataset.collections.Create And Import')}</Box>
</Flex>
</MenuButton>
}
@@ -341,7 +343,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'common/folderFill'} w={'20px'} mr={2} />
{t('Folder')}
{t('common:Folder')}
</Flex>
),
onClick: () => setEditFolderData({})
@@ -350,7 +352,7 @@ const Header = ({}: {}) => {
label: (
<Flex>
<MyIcon name={'core/dataset/fileCollection'} mr={2} w={'20px'} />
{t('core.dataset.Text collection')}
{t('common:core.dataset.Text collection')}
</Flex>
),
onClick: () =>

View File

@@ -34,8 +34,8 @@ const WebsiteConfigModal = ({
});
const isEdit = !!defaultValue.url;
const confirmTip = isEdit
? t('core.dataset.website.Confirm Update Tips')
: t('core.dataset.website.Confirm Create Tips');
? t('common:core.dataset.website.Confirm Update Tips')
: t('common:core.dataset.website.Confirm Create Tips');
const { ConfirmModal, openConfirm } = useConfirm({
type: 'common'
@@ -45,13 +45,13 @@ const WebsiteConfigModal = ({
<MyModal
isOpen
iconSrc="core/dataset/websiteDataset"
title={t('core.dataset.website.Config')}
title={t('common:core.dataset.website.Config')}
onClose={onClose}
maxW={'500px'}
>
<ModalBody>
<Box fontSize={'sm'} color={'myGray.600'}>
{t('core.dataset.website.Config Description')}
{t('common:core.dataset.website.Config Description')}
{feConfigs?.docUrl && (
<Link
href={getDocPath('/docs/course/websync')}
@@ -59,14 +59,14 @@ const WebsiteConfigModal = ({
textDecoration={'underline'}
fontWeight={'bold'}
>
{t('common.course.Read Course')}
{t('common:common.course.Read Course')}
</Link>
)}
</Box>
<Box mt={2}>
<Box>{t('core.dataset.website.Base Url')}</Box>
<Box>{t('common:core.dataset.website.Base Url')}</Box>
<Input
placeholder={t('core.dataset.collection.Website Link')}
placeholder={t('common:core.dataset.collection.Website Link')}
{...register('url', {
required: true
})}
@@ -74,14 +74,14 @@ const WebsiteConfigModal = ({
</Box>
<Box mt={3}>
<Box>
{t('core.dataset.website.Selector')}({t('common.choosable')})
{t('common:core.dataset.website.Selector')}({t('common:common.choosable')})
</Box>
<Input {...register('selector')} placeholder="body .content #document" />
</Box>
</ModalBody>
<ModalFooter>
<Button variant={'whiteBase'} onClick={onClose}>
{t('common.Close')}
{t('common:common.Close')}
</Button>
<Button
ml={2}
@@ -91,7 +91,7 @@ const WebsiteConfigModal = ({
if (!strIsLink(data.url)) {
return toast({
status: 'warning',
title: t('common.link.UnValid')
title: t('common:common.link.UnValid')
});
}
openConfirm(
@@ -103,7 +103,7 @@ const WebsiteConfigModal = ({
)();
})}
>
{t('core.dataset.website.Start Sync')}
{t('common:core.dataset.website.Start Sync')}
</Button>
</ModalFooter>
<ConfirmModal />

View File

@@ -62,15 +62,15 @@ const CollectionCard = () => {
const { datasetDetail, loadDatasetDetail } = useContextSelector(DatasetPageContext, (v) => v);
const { openConfirm: openDeleteConfirm, ConfirmModal: ConfirmDeleteModal } = useConfirm({
content: t('dataset.Confirm to delete the file'),
content: t('common:dataset.Confirm to delete the file'),
type: 'delete'
});
const { openConfirm: openSyncConfirm, ConfirmModal: ConfirmSyncModal } = useConfirm({
content: t('core.dataset.collection.Start Sync Tip')
content: t('common:core.dataset.collection.Start Sync Tip')
});
const { onOpenModal: onOpenEditTitleModal, EditModal: EditTitleModal } = useEditTitle({
title: t('Rename')
title: t('common:Rename')
});
const [moveCollectionData, setMoveCollectionData] = useState<{ collectionId: string }>();
@@ -93,7 +93,7 @@ const CollectionCard = () => {
};
}
return {
statusText: t('core.dataset.collection.status.active'),
statusText: t('common:core.dataset.collection.status.active'),
colorSchema: 'green'
};
})();
@@ -113,7 +113,7 @@ const CollectionCard = () => {
onSuccess() {
getData(pageNum);
},
successToast: t('common.Update Success')
successToast: t('common:common.Update Success')
}
);
const { mutate: onDelCollection, isLoading: isDeleting } = useRequest({
@@ -125,8 +125,8 @@ const CollectionCard = () => {
onSuccess() {
getData(pageNum);
},
successToast: t('common.Delete Success'),
errorToast: t('common.Delete Failed')
successToast: t('common:common.Delete Success'),
errorToast: t('common:common.Delete Failed')
});
const { mutate: onclickStartSync, isLoading: isSyncing } = useRequest({
@@ -140,7 +140,7 @@ const CollectionCard = () => {
title: t(DatasetCollectionSyncResultMap[res]?.label)
});
},
errorToast: t('core.dataset.error.Start Sync Failed')
errorToast: t('common:core.dataset.error.Start Sync Failed')
});
const hasTrainingData = useMemo(
@@ -192,11 +192,11 @@ const CollectionCard = () => {
<Table variant={'simple'} draggable={false}>
<Thead draggable={false}>
<Tr>
<Th py={4}>{t('common.Name')}</Th>
<Th py={4}>{t('common:common.Name')}</Th>
<Th py={4}>{datasetT('collection.Training type')}</Th>
<Th py={4}>{t('dataset.collections.Data Amount')}</Th>
<Th py={4}>{t('common:dataset.collections.Data Amount')}</Th>
<Th py={4}>{datasetT('collection.Create update time')}</Th>
<Th py={4}>{t('common.Status')}</Th>
<Th py={4}>{t('common:common.Status')}</Th>
<Th py={4}>{datasetT('Enable')}</Th>
<Th py={4} />
</Tr>
@@ -235,7 +235,10 @@ const CollectionCard = () => {
<Td minW={'150px'} maxW={['200px', '300px']} draggable py={2}>
<Flex alignItems={'center'}>
<MyIcon name={collection.icon as any} w={'16px'} mr={2} />
<MyTooltip label={t('common.folder.Drag Tip')} shouldWrapChildren={false}>
<MyTooltip
label={t('common:common.folder.Drag Tip')}
shouldWrapChildren={false}
>
<Box color={'myGray.900'} className="textEllipsis">
{collection.name}
</Box>
@@ -309,7 +312,7 @@ const CollectionCard = () => {
label: (
<Flex alignItems={'center'}>
<MyIcon name={'common/refreshLight'} w={'14px'} mr={2} />
{t('core.dataset.collection.Sync')}
{t('common:core.dataset.collection.Sync')}
</Flex>
),
onClick: () =>
@@ -323,7 +326,7 @@ const CollectionCard = () => {
label: (
<Flex alignItems={'center'}>
<MyIcon name={'common/file/move'} w={'14px'} mr={2} />
{t('Move')}
{t('common:Move')}
</Flex>
),
onClick: () =>
@@ -333,7 +336,7 @@ const CollectionCard = () => {
label: (
<Flex alignItems={'center'}>
<MyIcon name={'edit'} w={'14px'} mr={2} />
{t('Rename')}
{t('common:Rename')}
</Flex>
),
onClick: () =>
@@ -359,7 +362,7 @@ const CollectionCard = () => {
w={'14px'}
_hover={{ color: 'red.600' }}
/>
<Box>{t('common.Delete')}</Box>
<Box>{t('common:common.Delete')}</Box>
</Flex>
),
type: 'danger',
@@ -370,8 +373,8 @@ const CollectionCard = () => {
},
undefined,
collection.type === DatasetCollectionTypeEnum.folder
? t('dataset.collections.Confirm to delete the folder')
: t('dataset.Confirm to delete the file')
? t('common:dataset.collections.Confirm to delete the folder')
: t('common:dataset.Confirm to delete the file')
)()
}
]
@@ -411,7 +414,7 @@ const CollectionCard = () => {
setMoveCollectionData(undefined);
toast({
status: 'success',
title: t('common.folder.Move Success')
title: t('common:common.folder.Move Success')
});
}}
/>

View File

@@ -72,7 +72,7 @@ const DataCard = () => {
const [searchText, setSearchText] = useState('');
const { toast } = useToast();
const { openConfirm, ConfirmModal } = useConfirm({
content: t('dataset.Confirm to delete the data'),
content: t('common:dataset.Confirm to delete the data'),
type: 'delete'
});
const { isOpen, onOpen, onClose } = useDisclosure();
@@ -141,41 +141,41 @@ const DataCard = () => {
return [
{
label: t('core.dataset.collection.metadata.source'),
label: t('common:core.dataset.collection.metadata.source'),
value: t(DatasetCollectionTypeMap[collection.type]?.name)
},
{
label: t('core.dataset.collection.metadata.source name'),
label: t('common:core.dataset.collection.metadata.source name'),
value: collection.file?.filename || collection?.rawLink || collection?.name
},
{
label: t('core.dataset.collection.metadata.source size'),
label: t('common:core.dataset.collection.metadata.source size'),
value: collection.file ? formatFileSize(collection.file.length) : '-'
},
{
label: t('core.dataset.collection.metadata.Createtime'),
label: t('common:core.dataset.collection.metadata.Createtime'),
value: formatTime2YMDHM(collection.createTime)
},
{
label: t('core.dataset.collection.metadata.Updatetime'),
label: t('common:core.dataset.collection.metadata.Updatetime'),
value: formatTime2YMDHM(collection.updateTime)
},
{
label: t('core.dataset.collection.metadata.Raw text length'),
label: t('common:core.dataset.collection.metadata.Raw text length'),
value: collection.rawTextLength ?? '-'
},
{
label: t('core.dataset.collection.metadata.Training Type'),
label: t('common:core.dataset.collection.metadata.Training Type'),
value: t(TrainingTypeMap[collection.trainingType]?.label)
},
{
label: t('core.dataset.collection.metadata.Chunk Size'),
label: t('common:core.dataset.collection.metadata.Chunk Size'),
value: collection.chunkSize || '-'
},
...(webSelector
? [
{
label: t('core.dataset.collection.metadata.Web page selector'),
label: t('common:core.dataset.collection.metadata.Web page selector'),
value: webSelector
}
]
@@ -235,7 +235,7 @@ const DataCard = () => {
/>
)}
<Box fontSize={'sm'} color={'myGray.500'}>
{t('core.dataset.collection.id')}:{' '}
{t('common:core.dataset.collection.id')}:{' '}
<Box as={'span'} userSelect={'all'}>
{collection?._id}
</Box>
@@ -253,12 +253,12 @@ const DataCard = () => {
setEditDataId('');
}}
>
{t('dataset.Insert Data')}
{t('common:dataset.Insert Data')}
</Button>
</Box>
)}
{isPc && (
<MyTooltip label={t('core.dataset.collection.metadata.Read Metadata')}>
<MyTooltip label={t('common:core.dataset.collection.metadata.Read Metadata')}>
<IconButton
variant={'whiteBase'}
size={['sm', 'md']}
@@ -286,7 +286,7 @@ const DataCard = () => {
/>
}
w={['200px', '300px']}
placeholder={t('core.dataset.data.Search data placeholder')}
placeholder={t('common:core.dataset.data.Search data placeholder')}
value={searchText}
onChange={(e) => {
setSearchText(e.target.value);
@@ -438,7 +438,7 @@ const DataCard = () => {
<Pagination />
</Flex>
)}
{total === 0 && <EmptyTip text={t('core.dataset.data.Empty Tip')}></EmptyTip>}
{total === 0 && <EmptyTip text={t('common:core.dataset.data.Empty Tip')}></EmptyTip>}
</Box>
</Flex>
@@ -447,7 +447,7 @@ const DataCard = () => {
<DrawerOverlay />
<DrawerContent>
<DrawerHeader fontSize={'lg'}>
{t('core.dataset.collection.metadata.metadata')}
{t('common:core.dataset.collection.metadata.metadata')}
</DrawerHeader>
<DrawerBody>
@@ -461,14 +461,14 @@ const DataCard = () => {
))}
{collection?.sourceId && (
<Button variant={'whitePrimary'} onClick={readSource}>
{t('core.dataset.collection.metadata.read source')}
{t('common:core.dataset.collection.metadata.read source')}
</Button>
)}
</DrawerBody>
<DrawerFooter>
<Button variant={'whitePrimary'} onClick={onClose}>
{t('common.Close')}
{t('common:common.Close')}
</Button>
</DrawerFooter>
</DrawerContent>

View File

@@ -87,57 +87,57 @@ const DatasetImportContextProvider = ({ children }: { children: React.ReactNode
const modeSteps: Record<ImportDataSourceEnum, { title: string }[]> = {
[ImportDataSourceEnum.fileLocal]: [
{
title: t('core.dataset.import.Select file')
title: t('common:core.dataset.import.Select file')
},
{
title: t('core.dataset.import.Data Preprocessing')
title: t('common:core.dataset.import.Data Preprocessing')
},
{
title: t('core.dataset.import.Upload data')
title: t('common:core.dataset.import.Upload data')
}
],
[ImportDataSourceEnum.fileLink]: [
{
title: t('core.dataset.import.Select file')
title: t('common:core.dataset.import.Select file')
},
{
title: t('core.dataset.import.Data Preprocessing')
title: t('common:core.dataset.import.Data Preprocessing')
},
{
title: t('core.dataset.import.Upload data')
title: t('common:core.dataset.import.Upload data')
}
],
[ImportDataSourceEnum.fileCustom]: [
{
title: t('core.dataset.import.Select file')
title: t('common:core.dataset.import.Select file')
},
{
title: t('core.dataset.import.Data Preprocessing')
title: t('common:core.dataset.import.Data Preprocessing')
},
{
title: t('core.dataset.import.Upload data')
title: t('common:core.dataset.import.Upload data')
}
],
[ImportDataSourceEnum.csvTable]: [
{
title: t('core.dataset.import.Select file')
title: t('common:core.dataset.import.Select file')
},
{
title: t('core.dataset.import.Data Preprocessing')
title: t('common:core.dataset.import.Data Preprocessing')
},
{
title: t('core.dataset.import.Upload data')
title: t('common:core.dataset.import.Upload data')
}
],
[ImportDataSourceEnum.externalFile]: [
{
title: t('core.dataset.import.Select file')
title: t('common:core.dataset.import.Select file')
},
{
title: t('core.dataset.import.Data Preprocessing')
title: t('common:core.dataset.import.Data Preprocessing')
},
{
title: t('core.dataset.import.Upload data')
title: t('common:core.dataset.import.Upload data')
}
]
};
@@ -266,7 +266,7 @@ const DatasetImportContextProvider = ({ children }: { children: React.ReactNode
})
}
/>
{t('common.Exit')}
{t('common:common.Exit')}
</Flex>
) : (
<Button
@@ -274,7 +274,7 @@ const DatasetImportContextProvider = ({ children }: { children: React.ReactNode
leftIcon={<MyIcon name={'common/backFill'} w={'14px'} />}
onClick={goToPrevious}
>
{t('common.Last Step')}
{t('common:common.Last Step')}
</Button>
)}
<Box flex={1} />

View File

@@ -65,7 +65,7 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
if (!feConfigs?.isPlus && !TrainingTypeMap[e]?.openSource) {
return toast({
status: 'warning',
title: t('common.system.Commercial version function')
title: t('common:common.system.Commercial version function')
});
}
setValue('mode', e);
@@ -78,11 +78,11 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
<Box flex={'1 0 0'} minW={['auto', '540px']} maxW={'600px'}>
<Flex alignItems={'center'}>
<MyIcon name={'common/settingLight'} w={'20px'} />
<Box fontSize={'md'}>{t('core.dataset.import.Data process params')}</Box>
<Box fontSize={'md'}>{t('common:core.dataset.import.Data process params')}</Box>
</Flex>
<Box display={['block', 'flex']} mt={4} alignItems={'center'}>
<FormLabel flex={'0 0 100px'}>{t('core.dataset.import.Training mode')}</FormLabel>
<FormLabel flex={'0 0 100px'}>{t('common:core.dataset.import.Training mode')}</FormLabel>
<LeftRadio
list={trainingModeList.map(([key, value]) => ({
title: t(value.label),
@@ -100,25 +100,27 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
/>
</Box>
<Box display={['block', 'flex']} mt={5}>
<FormLabel flex={'0 0 100px'}>{t('core.dataset.import.Process way')}</FormLabel>
<FormLabel flex={'0 0 100px'}>{t('common:core.dataset.import.Process way')}</FormLabel>
<LeftRadio
list={[
{
title: t('core.dataset.import.Auto process'),
desc: t('core.dataset.import.Auto process desc'),
title: t('common:core.dataset.import.Auto process'),
desc: t('common:core.dataset.import.Auto process desc'),
value: ImportProcessWayEnum.auto
},
{
title: t('core.dataset.import.Custom process'),
desc: t('core.dataset.import.Custom process desc'),
title: t('common:core.dataset.import.Custom process'),
desc: t('common:core.dataset.import.Custom process desc'),
value: ImportProcessWayEnum.custom,
children: way === ImportProcessWayEnum.custom && (
<Box mt={5}>
{showChunkInput && chunkSizeField && (
<Box>
<Flex alignItems={'center'}>
<Box>{t('core.dataset.import.Ideal chunk length')}</Box>
<MyTooltip label={t('core.dataset.import.Ideal chunk length Tips')}>
<Box>{t('common:core.dataset.import.Ideal chunk length')}</Box>
<MyTooltip
label={t('common:core.dataset.import.Ideal chunk length Tips')}
>
<MyIcon
name={'common/questionLight'}
ml={1}
@@ -171,8 +173,8 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
<Box mt={3}>
<Box>
{t('core.dataset.import.Custom split char')}
<MyTooltip label={t('core.dataset.import.Custom split char Tips')}>
{t('common:core.dataset.import.Custom split char')}
<MyTooltip label={t('common:core.dataset.import.Custom split char Tips')}>
<MyIcon
name={'common/questionLight'}
ml={1}
@@ -194,7 +196,7 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
{showPromptInput && (
<Box mt={3}>
<Box>{t('core.dataset.collection.QA Prompt')}</Box>
<Box>{t('common:core.dataset.collection.QA Prompt')}</Box>
<Box
position={'relative'}
py={2}
@@ -237,7 +239,7 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
bottom={2}
onClick={onOpenCustomPrompt}
>
{t('core.dataset.import.Custom prompt')}
{t('common:core.dataset.import.Custom prompt')}
</Button>
</Box>
</Box>
@@ -273,7 +275,7 @@ function DataProcess({ showPreviewChunks = true }: { showPreviewChunks: boolean
goToNext();
}}
>
{t('common.Next Step')}
{t('common:common.Next Step')}
</Button>
</Flex>
</Box>
@@ -311,7 +313,7 @@ const PromptTextarea = ({
return (
<MyModal
isOpen
title={t('core.dataset.import.Custom prompt')}
title={t('common:core.dataset.import.Custom prompt')}
iconSrc="modal/edit"
w={'600px'}
onClose={onClose}
@@ -328,7 +330,7 @@ const PromptTextarea = ({
onClose();
}}
>
{t('common.Confirm')}
{t('common:common.Confirm')}
</Button>
</ModalFooter>
</MyModal>

View File

@@ -15,7 +15,7 @@ const PreviewData = ({ showPreviewChunks }: { showPreviewChunks: boolean }) => {
<Preview showPreviewChunks={showPreviewChunks} />
</Box>
<Flex mt={2} justifyContent={'flex-end'}>
<Button onClick={goToNext}>{t('common.Next Step')}</Button>
<Button onClick={goToNext}>{t('common:common.Next Step')}</Button>
</Flex>
</Flex>
);

View File

@@ -118,7 +118,7 @@ const Upload = () => {
},
onSuccess() {
toast({
title: t('core.dataset.import.Import success'),
title: t('common:core.dataset.import.Import success'),
status: 'success'
});
@@ -152,10 +152,10 @@ const Upload = () => {
<Thead draggable={false}>
<Tr bg={'myGray.100'} mb={2}>
<Th borderLeftRadius={'md'} overflow={'hidden'} borderBottom={'none'} py={4}>
{t('core.dataset.import.Source name')}
{t('common:core.dataset.import.Source name')}
</Th>
<Th borderBottom={'none'} py={4}>
{t('core.dataset.import.Upload status')}
{t('common:core.dataset.import.Upload status')}
</Th>
</Tr>
</Thead>
@@ -173,13 +173,13 @@ const Upload = () => {
<Td>
<Box display={'inline-block'}>
{item.createStatus === 'waiting' && (
<MyTag colorSchema={'gray'}>{t('common.Waiting')}</MyTag>
<MyTag colorSchema={'gray'}>{t('common:common.Waiting')}</MyTag>
)}
{item.createStatus === 'creating' && (
<MyTag colorSchema={'blue'}>{t('common.Creating')}</MyTag>
<MyTag colorSchema={'blue'}>{t('common:common.Creating')}</MyTag>
)}
{item.createStatus === 'finish' && (
<MyTag colorSchema={'green'}>{t('common.Finish')}</MyTag>
<MyTag colorSchema={'green'}>{t('common:common.Finish')}</MyTag>
)}
</Box>
</Td>
@@ -194,7 +194,7 @@ const Upload = () => {
{sources.length > 0
? `${t('core.dataset.import.Total files', { total: sources.length })} | `
: ''}
{t('core.dataset.import.Start upload')}
{t('common:core.dataset.import.Start upload')}
</Button>
</Flex>
</Box>

View File

@@ -17,25 +17,25 @@ const FileModeSelector = ({ onClose }: { onClose: () => void }) => {
isOpen
onClose={onClose}
iconSrc="modal/selectSource"
title={t('core.dataset.import.Select source')}
title={t('common:core.dataset.import.Select source')}
w={'600px'}
>
<ModalBody px={6} py={4}>
<LeftRadio
list={[
{
title: t('core.dataset.import.Local file'),
desc: t('core.dataset.import.Local file desc'),
title: t('common:core.dataset.import.Local file'),
desc: t('common:core.dataset.import.Local file desc'),
value: ImportDataSourceEnum.fileLocal
},
{
title: t('core.dataset.import.Web link'),
desc: t('core.dataset.import.Web link desc'),
title: t('common:core.dataset.import.Web link'),
desc: t('common:core.dataset.import.Web link desc'),
value: ImportDataSourceEnum.fileLink
},
{
title: t('core.dataset.import.Custom text'),
desc: t('core.dataset.import.Custom text desc'),
title: t('common:core.dataset.import.Custom text'),
desc: t('common:core.dataset.import.Custom text desc'),
value: ImportDataSourceEnum.fileCustom
}
]}
@@ -55,7 +55,7 @@ const FileModeSelector = ({ onClose }: { onClose: () => void }) => {
})
}
>
{t('common.Confirm')}
{t('common:common.Confirm')}
</Button>
</ModalFooter>
</MyModal>

View File

@@ -22,7 +22,7 @@ const Preview = ({ showPreviewChunks }: { showPreviewChunks: boolean }) => {
<Box h={'100%'} display={['block', 'flex']} flexDirection={'column'}>
<Flex alignItems={'center'}>
<MyIcon name={'core/dataset/fileCollection'} w={'20px'} />
<Box fontSize={'md'}>{t('core.dataset.import.Sources list')}</Box>
<Box fontSize={'md'}>{t('common:core.dataset.import.Sources list')}</Box>
</Flex>
<Box mt={3} flex={'1 0 0'} width={'100%'} overflow={'auto'}>
{sources.map((source) => (
@@ -59,7 +59,7 @@ const Preview = ({ showPreviewChunks }: { showPreviewChunks: boolean }) => {
label: (
<Flex alignItems={'center'}>
<MyIcon name={'core/dataset/fileCollection'} w={'14px'} mr={2} />
{t('core.dataset.import.Preview raw text')}
{t('common:core.dataset.import.Preview raw text')}
</Flex>
),
onClick: () => setPreviewRawTextSource(source)
@@ -68,7 +68,7 @@ const Preview = ({ showPreviewChunks }: { showPreviewChunks: boolean }) => {
label: (
<Flex alignItems={'center'}>
<MyIcon name={'core/dataset/splitLight'} w={'14px'} mr={2} />
{t('core.dataset.import.Preview chunks')}
{t('common:core.dataset.import.Preview chunks')}
</Flex>
),
onClick: () => setPreviewChunkSource(source)

View File

@@ -43,13 +43,13 @@ export const RenderUploadFiles = ({
{fileT('File Name')}
</Th>
<Th borderBottom={'none'} py={4}>
{t('core.dataset.import.Upload file progress')}
{t('common:core.dataset.import.Upload file progress')}
</Th>
<Th borderBottom={'none'} py={4}>
{fileT('File Size')}
</Th>
<Th borderRightRadius={'md'} borderBottom={'none'} py={4}>
{t('common.Action')}
{t('common:common.Action')}
</Th>
</Tr>
</Thead>
@@ -85,7 +85,7 @@ export const RenderUploadFiles = ({
{!item.isUploading && (
<Flex alignItems={'center'} gap={4}>
{showPreviewContent && (
<MyTooltip label={t('core.dataset.import.Preview raw text')}>
<MyTooltip label={t('common:core.dataset.import.Preview raw text')}>
<IconButton
variant={'whitePrimary'}
size={'sm'}

View File

@@ -180,7 +180,7 @@ const CustomLinkInput = () => {
goToNext();
})}
>
{t('common.Next Step')}
{t('common:common.Next Step')}
</Button>
</Flex>
</Box>

View File

@@ -69,7 +69,7 @@ const CustomTextInput = () => {
<Box maxW={['100%', '800px']}>
<Box display={['block', 'flex']} alignItems={'center'}>
<Box flex={'0 0 120px'} fontSize={'sm'}>
{t('core.dataset.collection.Collection name')}
{t('common:core.dataset.collection.Collection name')}
</Box>
<Input
flex={'1 0 0'}
@@ -77,19 +77,19 @@ const CustomTextInput = () => {
{...register('name', {
required: true
})}
placeholder={t('core.dataset.collection.Collection name')}
placeholder={t('common:core.dataset.collection.Collection name')}
bg={'myGray.50'}
/>
</Box>
<Box display={['block', 'flex']} alignItems={'flex-start'} mt={5}>
<Box flex={'0 0 120px'} fontSize={'sm'}>
{t('core.dataset.collection.Collection raw text')}
{t('common:core.dataset.collection.Collection raw text')}
</Box>
<Textarea
flex={'1 0 0'}
w={'100%'}
rows={15}
placeholder={t('core.dataset.collection.Collection raw text')}
placeholder={t('common:core.dataset.collection.Collection raw text')}
{...register('value', {
required: true
})}
@@ -97,7 +97,9 @@ const CustomTextInput = () => {
/>
</Box>
<Flex mt={5} justifyContent={'flex-end'}>
<Button onClick={handleSubmit((data) => onSubmit(data))}>{t('common.Next Step')}</Button>
<Button onClick={handleSubmit((data) => onSubmit(data))}>
{t('common:common.Next Step')}
</Button>
</Flex>
</Box>
);

View File

@@ -60,13 +60,13 @@ const CustomLinkImport = () => {
<Box maxW={['100%', '800px']}>
<Box display={['block', 'flex']} alignItems={'flex-start'} mt={1}>
<Box flex={'0 0 100px'} fontSize={'sm'}>
{t('core.dataset.import.Link name')}
{t('common:core.dataset.import.Link name')}
</Box>
<Textarea
flex={'1 0 0'}
w={'100%'}
rows={10}
placeholder={t('core.dataset.import.Link name placeholder')}
placeholder={t('common:core.dataset.import.Link name placeholder')}
bg={'myGray.50'}
overflowX={'auto'}
whiteSpace={'nowrap'}
@@ -77,11 +77,11 @@ const CustomLinkImport = () => {
</Box>
<Box display={['block', 'flex']} alignItems={'center'} mt={4}>
<Box flex={'0 0 100px'} fontSize={'sm'}>
{t('core.dataset.website.Selector')}
{t('common:core.dataset.website.Selector')}
<Box color={'myGray.500'} fontSize={'sm'}>
{feConfigs?.docUrl && (
<Link href={getDocPath('/docs/course/websync/#选择器如何使用')} target="_blank">
{t('core.dataset.website.Selector Course')}
{t('common:core.dataset.website.Selector Course')}
</Link>
)}
</Box>
@@ -142,7 +142,7 @@ const CustomLinkImport = () => {
goToNext();
})}
>
{t('common.Next Step')}
{t('common:common.Next Step')}
</Button>
</Flex>
</Box>

View File

@@ -71,7 +71,7 @@ const SelectFile = React.memo(function SelectFile() {
{selectFiles.length > 0
? `${t('core.dataset.import.Total files', { total: selectFiles.length })} | `
: ''}
{t('common.Next Step')}
{t('common:common.Next Step')}
</Button>
</Box>
</Box>

View File

@@ -76,7 +76,7 @@ const SelectFile = React.memo(function SelectFile() {
})
}
>
{t('core.dataset.import.Down load csv template')}
{t('common:core.dataset.import.Down load csv template')}
</Box>
{/* render files */}
@@ -93,7 +93,7 @@ const SelectFile = React.memo(function SelectFile() {
{selectFiles.length > 0
? `${t('core.dataset.import.Total files', { total: selectFiles.length })} | `
: ''}
{t('common.Next Step')}
{t('common:common.Next Step')}
</Button>
</Box>
</Box>

View File

@@ -61,11 +61,11 @@ const Info = ({ datasetId }: { datasetId: string }) => {
const router = useRouter();
const { openConfirm: onOpenConfirmDel, ConfirmModal: ConfirmDelModal } = useConfirm({
content: t('core.dataset.Delete Confirm'),
content: t('common:core.dataset.Delete Confirm'),
type: 'delete'
});
const { openConfirm: onOpenConfirmRebuild, ConfirmModal: ConfirmRebuildModal } = useConfirm({
title: t('common.confirm.Common Tip'),
title: t('common:common.confirm.Common Tip'),
content: datasetT('Confirm to rebuild embedding tip'),
type: 'delete'
});
@@ -83,8 +83,8 @@ const Info = ({ datasetId }: { datasetId: string }) => {
onSuccess() {
router.replace(`/dataset/list`);
},
successToast: t('common.Delete Success'),
errorToast: t('common.Delete Failed')
successToast: t('common:common.Delete Success'),
errorToast: t('common:common.Delete Failed')
});
const { mutate: onclickSave, isLoading: isSaving } = useRequest({
@@ -94,8 +94,8 @@ const Info = ({ datasetId }: { datasetId: string }) => {
...data
});
},
successToast: t('common.Update Success'),
errorToast: t('common.Update Failed')
successToast: t('common:common.Update Success'),
errorToast: t('common:common.Update Failed')
});
const { mutate: onSelectFile, isLoading: isSelecting } = useRequest({
@@ -114,7 +114,7 @@ const Info = ({ datasetId }: { datasetId: string }) => {
setValue('avatar', src);
}
},
errorToast: t('common.avatar.Select Failed')
errorToast: t('common:common.avatar.Select Failed')
});
const { mutate: onRebuilding, isLoading: isRebuilding } = useRequest({
@@ -129,7 +129,7 @@ const Info = ({ datasetId }: { datasetId: string }) => {
loadDatasetDetail(datasetId);
},
successToast: datasetT('Rebuild embedding start tip'),
errorToast: t('common.Update Failed')
errorToast: t('common:common.Update Failed')
});
const btnLoading = isSelecting || isDeleting || isSaving || isRebuilding;
@@ -138,13 +138,13 @@ const Info = ({ datasetId }: { datasetId: string }) => {
<Box py={5} px={[5, 10]}>
<Flex mt={5} w={'100%'} alignItems={'center'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.dataset.Dataset ID')}
{t('common:core.dataset.Dataset ID')}
</FormLabel>
<Box flex={1}>{datasetDetail._id}</Box>
</Flex>
<Flex mt={8} w={'100%'} alignItems={'center'} flexWrap={'wrap'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.ai.model.Vector Model')}
{t('common:core.ai.model.Vector Model')}
</FormLabel>
<Box flex={[1, '0 0 320px']}>
<AIModelSelector
@@ -172,13 +172,13 @@ const Info = ({ datasetId }: { datasetId: string }) => {
</Flex>
<Flex mt={8} w={'100%'} alignItems={'center'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.Max Token')}
{t('common:core.Max Token')}
</FormLabel>
<Box flex={[1, '0 0 320px']}>{vectorModel.maxToken}</Box>
</Flex>
<Flex mt={6} alignItems={'center'} flexWrap={'wrap'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.ai.model.Dataset Agent Model')}
{t('common:core.ai.model.Dataset Agent Model')}
</FormLabel>
<Box flex={[1, '0 0 320px']}>
<AIModelSelector
@@ -224,10 +224,10 @@ const Info = ({ datasetId }: { datasetId: string }) => {
<Flex mt={5} w={'100%'} alignItems={'center'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.dataset.Avatar')}
{t('common:core.dataset.Avatar')}
</FormLabel>
<Box flex={[1, '0 0 320px']}>
<MyTooltip label={t('common.avatar.Select Avatar')}>
<MyTooltip label={t('common:common.avatar.Select Avatar')}>
<Avatar
m={'auto'}
src={avatar}
@@ -241,13 +241,17 @@ const Info = ({ datasetId }: { datasetId: string }) => {
</Flex>
<Flex mt={8} w={'100%'} alignItems={'center'}>
<FormLabel flex={['0 0 90px', '0 0 160px']} w={0}>
{t('core.dataset.Name')}
{t('common:core.dataset.Name')}
</FormLabel>
<Input flex={[1, '0 0 320px']} maxLength={30} {...register('name')} />
</Flex>
<Flex mt={8} alignItems={'center'} w={'100%'}>
<FormLabel flex={['0 0 90px', '0 0 160px']}>{t('common.Intro')}</FormLabel>
<Textarea flex={[1, '0 0 320px']} {...register('intro')} placeholder={t('common.Intro')} />
<FormLabel flex={['0 0 90px', '0 0 160px']}>{t('common:common.Intro')}</FormLabel>
<Textarea
flex={[1, '0 0 320px']}
{...register('intro')}
placeholder={t('common:common.Intro')}
/>
</Flex>
{datasetDetail.permission.hasManagePer && (
@@ -301,7 +305,7 @@ const Info = ({ datasetId }: { datasetId: string }) => {
w={'100px'}
onClick={handleSubmit((data) => onclickSave(data))}
>
{t('common.Save')}
{t('common:common.Save')}
</Button>
{datasetDetail.permission.isOwner && (
<IconButton

View File

@@ -75,20 +75,24 @@ const InputDataModal = ({
});
const tabList = [
{ label: t('dataset.data.edit.Content'), value: TabEnum.content, icon: 'common/overviewLight' },
{
label: t('common:dataset.data.edit.Content'),
value: TabEnum.content,
icon: 'common/overviewLight'
},
{
label: t('dataset.data.edit.Index', { amount: indexes.length }),
value: TabEnum.index,
icon: 'kbTest'
},
...(dataId
? [{ label: t('dataset.data.edit.Delete'), value: TabEnum.delete, icon: 'delete' }]
? [{ label: t('common:dataset.data.edit.Delete'), value: TabEnum.delete, icon: 'delete' }]
: []),
{ label: t('dataset.data.edit.Course'), value: TabEnum.doc, icon: 'common/courseLight' }
{ label: t('common:dataset.data.edit.Course'), value: TabEnum.doc, icon: 'common/courseLight' }
];
const { ConfirmModal, openConfirm } = useConfirm({
content: t('dataset.data.Delete Tip'),
content: t('common:dataset.data.Delete Tip'),
type: 'delete'
});
@@ -142,12 +146,12 @@ const InputDataModal = ({
mutationFn: async (e: InputDataType) => {
if (!e.q) {
setCurrentTab(TabEnum.content);
return Promise.reject(t('dataset.data.input is empty'));
return Promise.reject(t('common:dataset.data.input is empty'));
}
const totalLength = e.q.length + (e.a?.length || 0);
if (totalLength >= maxToken * 1.4) {
return Promise.reject(t('core.dataset.data.Too Long'));
return Promise.reject(t('common:core.dataset.data.Too Long'));
}
const data = { ...e };
@@ -169,7 +173,7 @@ const InputDataModal = ({
dataId
};
},
successToast: t('dataset.data.Input Success Tip'),
successToast: t('common:dataset.data.Input Success Tip'),
onSuccess(e) {
reset({
...e,
@@ -180,13 +184,13 @@ const InputDataModal = ({
onSuccess(e);
},
errorToast: t('common.error.unKnow')
errorToast: t('common:common.error.unKnow')
});
// update
const { runAsync: onUpdateData, loading: isUpdating } = useRequest2(
async (e: InputDataType) => {
if (!dataId) return Promise.reject(t('common.error.unKnow'));
if (!dataId) return Promise.reject(t('common:common.error.unKnow'));
// not exactly same
await putDatasetDataById({
@@ -204,7 +208,7 @@ const InputDataModal = ({
};
},
{
successToast: t('dataset.data.Update Success Tip'),
successToast: t('common:dataset.data.Update Success Tip'),
onSuccess(data) {
onSuccess(data);
onClose();
@@ -222,8 +226,8 @@ const InputDataModal = ({
onDelete();
onClose();
},
successToast: t('common.Delete Success'),
errorToast: t('common.error.unKnow')
successToast: t('common:common.Delete Success'),
errorToast: t('common:common.error.unKnow')
});
const isLoading = isFetchingData || isDeleting;
@@ -259,9 +263,13 @@ const InputDataModal = ({
<Flex flexDirection={'column'} pb={8} flex={1} h={'100%'}>
<Box fontSize={'md'} px={5} py={3} fontWeight={'medium'}>
{currentTab === TabEnum.content && (
<>{dataId ? t('dataset.data.Update Data') : t('dataset.data.Input Data')}</>
<>
{dataId
? t('common:dataset.data.Update Data')
: t('common:dataset.data.Input Data')}
</>
)}
{currentTab === TabEnum.index && <> {t('dataset.data.Index Edit')}</>}
{currentTab === TabEnum.index && <> {t('common:dataset.data.Index Edit')}</>}
</Box>
<Box flex={1} px={9} overflow={'auto'}>
{currentTab === TabEnum.content && <InputTab maxToken={maxToken} register={register} />}
@@ -291,7 +299,7 @@ const InputDataModal = ({
color={index.defaultIndex ? 'primary.700' : 'myGray.900'}
>
{index.defaultIndex
? t('dataset.data.Default Index')
? t('common:dataset.data.Default Index')
: t('dataset.data.Custom Index Number', { number: i })}
</Box>
<DeleteIcon
@@ -305,7 +313,7 @@ const InputDataModal = ({
</Flex>
{index.defaultIndex ? (
<Box fontSize={'sm'} fontWeight={'medium'} color={'myGray.600'}>
{t('core.dataset.data.Default Index Tip')}
{t('common:core.dataset.data.Default Index Tip')}
</Box>
) : (
<Textarea
@@ -321,7 +329,7 @@ const InputDataModal = ({
boxShadow: '0px 0px 0px 2.4px rgba(51, 112, 255, 0.15)',
bg: 'white'
}}
placeholder={t('dataset.data.Index Placeholder')}
placeholder={t('common:dataset.data.Index Placeholder')}
{...register(`indexes.${i}.text`, {
required: true
})}
@@ -354,7 +362,7 @@ const InputDataModal = ({
}
>
<MyIcon name={'common/addLight'} w={'18px'} mr={1.5} />
<Box>{t('dataset.data.Add Index')}</Box>
<Box>{t('common:dataset.data.Add Index')}</Box>
</Flex>
</Grid>
)}
@@ -362,10 +370,10 @@ const InputDataModal = ({
{/* footer */}
<Flex justifyContent={'flex-end'} px={9} mt={6}>
<Button variant={'whiteBase'} mr={3} onClick={onClose}>
{t('common.Close')}
{t('common:common.Close')}
</Button>
<MyTooltip
label={collection.permission.hasWritePer ? '' : t('dataset.data.Can not edit')}
label={collection.permission.hasWritePer ? '' : t('common:dataset.data.Can not edit')}
>
<Button
isDisabled={!collection.permission.hasWritePer}
@@ -373,7 +381,7 @@ const InputDataModal = ({
// @ts-ignore
onClick={handleSubmit(dataId ? onUpdateData : sureImportData)}
>
{dataId ? t('common.Confirm Update') : t('common.Confirm Import')}
{dataId ? t('common:common.Confirm Update') : t('common:common.Confirm Import')}
</Button>
</MyTooltip>
</Flex>
@@ -400,8 +408,8 @@ const InputTab = ({
<Flex flexDirection={'column'} w={'50%'} h={'100%'}>
<Flex pt={3} pb={2} fontWeight={'medium'} fontSize={'md'} alignItems={'center'}>
<Box color={'red.600'}>*</Box>
<Box color={'myGray.900'}>{t('core.dataset.data.Main Content')}</Box>
<QuestionTip label={t('core.dataset.data.Data Content Tip')} ml={1} />
<Box color={'myGray.900'}>{t('common:core.dataset.data.Main Content')}</Box>
<QuestionTip label={t('common:core.dataset.data.Data Content Tip')} ml={1} />
</Flex>
<Box flex={'1 0 0'}>
<Textarea
@@ -418,8 +426,8 @@ const InputTab = ({
</Flex>
<Flex flexDirection={'column'} w={'50%'} h={'100%'}>
<Flex pt={3} pb={2} fontWeight={'medium'} fontSize={'md'} alignItems={'center'}>
<Box color={'myGray.900'}>{t('core.dataset.data.Auxiliary Data')}</Box>
<QuestionTip label={t('core.dataset.data.Auxiliary Data Tip')} ml={1} />
<Box color={'myGray.900'}>{t('common:core.dataset.data.Auxiliary Data')}</Box>
<QuestionTip label={t('common:core.dataset.data.Auxiliary Data Tip')} ml={1} />
</Flex>
<Box flex={'1 0 0'}>
<Textarea

View File

@@ -34,13 +34,13 @@ const Slider = ({ currentTab }: { currentTab: TabEnum }) => {
const tabList = [
{
label: t('core.dataset.Collection'),
label: t('common:core.dataset.Collection'),
value: TabEnum.collectionCard,
icon: 'common/overviewLight'
},
{ label: t('core.dataset.test.Search Test'), value: TabEnum.test, icon: 'kbTest' },
{ label: t('common:core.dataset.test.Search Test'), value: TabEnum.test, icon: 'kbTest' },
...(datasetDetail.permission.hasManagePer
? [{ label: t('common.Config'), value: TabEnum.info, icon: 'common/settingLight' }]
? [{ label: t('common:common.Config'), value: TabEnum.info, icon: 'common/settingLight' }]
: [])
];
@@ -98,7 +98,7 @@ const Slider = ({ currentTab }: { currentTab: TabEnum }) => {
)}
<Box mb={3}>
<Box fontSize={'sm'}>
{t('core.dataset.training.Agent queue')}({agentTrainingMap.tip})
{t('common:core.dataset.training.Agent queue')}({agentTrainingMap.tip})
</Box>
<Progress
value={100}
@@ -111,7 +111,7 @@ const Slider = ({ currentTab }: { currentTab: TabEnum }) => {
</Box>
<Box mb={3}>
<Box fontSize={'sm'}>
{t('core.dataset.training.Vector queue')}({vectorTrainingMap.tip})
{t('common:core.dataset.training.Vector queue')}({vectorTrainingMap.tip})
</Box>
<Progress
value={100}
@@ -143,7 +143,7 @@ const Slider = ({ currentTab }: { currentTab: TabEnum }) => {
borderRadius={'50%'}
aria-label={''}
/>
{t('core.dataset.All Dataset')}
{t('common:core.dataset.All Dataset')}
</Flex>
</Flex>
) : (

View File

@@ -93,7 +93,7 @@ const Test = ({ datasetId }: { datasetId: string }) => {
if (!res || res.list.length === 0) {
return toast({
status: 'warning',
title: t('dataset.test.noResult')
title: t('common:dataset.test.noResult')
});
}
@@ -168,7 +168,7 @@ const Test = ({ datasetId }: { datasetId: string }) => {
<Flex alignItems={'center'}>
<MyIcon mr={2} name={'text'} w={'14px'} color={'primary.600'} />
<Box fontSize={'sm'} fontWeight={'bold'} flex={1}>
{t('core.dataset.test.Test Text')}
{t('common:core.dataset.test.Test Text')}
</Box>
</Flex>
),
@@ -179,7 +179,7 @@ const Test = ({ datasetId }: { datasetId: string }) => {
// <Flex alignItems={'center'}>
// <MyIcon mr={2} name={'file/csv'} w={'14px'} color={'primary.600'} />
// <Box fontSize={'sm'} fontWeight={'bold'} flex={1}>
// {t('core.dataset.test.Batch test')}
// {t('common:core.dataset.test.Batch test')}
// </Box>
// </Flex>
// ),
@@ -207,7 +207,7 @@ const Test = ({ datasetId }: { datasetId: string }) => {
resize={'none'}
variant={'unstyled'}
maxLength={datasetDetail.vectorModel?.maxToken}
placeholder={t('core.dataset.test.Test Text Placeholder')}
placeholder={t('common:core.dataset.test.Test Text Placeholder')}
onFocus={() => setIsFocus(true)}
{...register('inputText', {
required: true,
@@ -237,7 +237,9 @@ const Test = ({ datasetId }: { datasetId: string }) => {
>
<MyIcon mr={2} name={'file/csv'} w={'24px'} />
<Box>
{selectFile ? selectFile.name : t('core.dataset.test.Batch test Placeholder')}
{selectFile
? selectFile.name
: t('common:core.dataset.test.Batch test Placeholder')}
</Box>
</Flex>
<Box mt={3} fontSize={'sm'}>
@@ -274,7 +276,7 @@ const Test = ({ datasetId }: { datasetId: string }) => {
}
}}
>
{t('core.dataset.test.Test')}
{t('common:core.dataset.test.Test')}
</Button>
</Flex>
</Box>
@@ -332,7 +334,7 @@ const TestHistories = React.memo(function TestHistories({
<>
<Flex alignItems={'center'} color={'myGray.900'}>
<MyIcon mr={2} name={'history'} w={'18px'} h={'18px'} color={'myGray.900'} />
<Box fontSize={'md'}>{t('core.dataset.test.test history')}</Box>
<Box fontSize={'md'}>{t('common:core.dataset.test.test history')}</Box>
</Flex>
<Box mt={2}>
{testHistories.map((item) => (
@@ -383,7 +385,7 @@ const TestHistories = React.memo(function TestHistories({
? t(formatTimeToChatTime(item.time))
: formatTimeToChatTime(item.time)}
</Box>
<MyTooltip label={t('core.dataset.test.delete test history')}>
<MyTooltip label={t('common:core.dataset.test.delete test history')}>
<Box w={'14px'} h={'14px'}>
<MyIcon
className="delete"
@@ -417,12 +419,12 @@ const TestResults = React.memo(function TestResults({
return (
<>
{!datasetTestItem?.results || datasetTestItem.results.length === 0 ? (
<EmptyTip text={t('core.dataset.test.test result placeholder')} mt={[10, '20vh']} />
<EmptyTip text={t('common:core.dataset.test.test result placeholder')} mt={[10, '20vh']} />
) : (
<>
<Flex fontSize={'md'} color={'myGray.900'} alignItems={'center'}>
<MyIcon name={'common/paramsLight'} w={'18px'} mr={2} />
{t('core.dataset.test.Test params')}
{t('common:core.dataset.test.Test params')}
</Flex>
<Box mt={3}>
<SearchParamsTip
@@ -437,9 +439,9 @@ const TestResults = React.memo(function TestResults({
<Flex mt={5} mb={3} alignItems={'center'}>
<Flex fontSize={'md'} color={'myGray.900'} alignItems={'center'}>
<MyIcon name={'common/resultLight'} w={'18px'} mr={2} />
{t('core.dataset.test.Test Result')}
{t('common:core.dataset.test.Test Result')}
</Flex>
<QuestionTip ml={1} label={t('core.dataset.test.test result tip')} />
<QuestionTip ml={1} label={t('common:core.dataset.test.test result tip')} />
<Box ml={2}>({datasetTestItem.duration})</Box>
</Flex>
<Box mt={1} gap={4}>

View File

@@ -45,7 +45,7 @@ const Detail = ({ datasetId, currentTab }: Props) => {
onError(err: any) {
router.replace(`/dataset/list`);
toast({
title: t(getErrText(err, t('common.Load Failed'))),
title: t(getErrText(err, t('common:common.Load Failed'))),
status: 'error'
});
}