From 77950e48c76f4a3b29d01831d43039caba29888a Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期二, 18 十一月 2025 14:12:42 +0800
Subject: [PATCH] 修改
---
app/components/datasets/documents/detail/index.tsx | 54 +++++++++++++++++++++++++-----------------------------
1 files changed, 25 insertions(+), 29 deletions(-)
diff --git a/app/components/datasets/documents/detail/index.tsx b/app/components/datasets/documents/detail/index.tsx
index aff7403..2b65c19 100644
--- a/app/components/datasets/documents/detail/index.tsx
+++ b/app/components/datasets/documents/detail/index.tsx
@@ -4,12 +4,12 @@
import { createContext, useContext, useContextSelector } from 'use-context-selector'
import { useTranslation } from 'react-i18next'
import { useRouter } from 'next/navigation'
-import { RiArrowLeftLine, RiLayoutLeft2Line, RiLayoutRight2Line } from '@remixicon/react'
+import { RiArrowLeftLine, RiLayoutRight2Line } from '@remixicon/react'
import { OperationAction, StatusItem } from '../list'
import DocumentPicker from '../../common/document-picker'
import Completed from './completed'
import Embedding from './embedding'
-import Metadata from '@/app/components/datasets/metadata/metadata-document'
+import Metadata from './metadata'
import SegmentAdd, { ProcessStatus } from './segment-add'
import BatchModal from './batch-modal'
import style from './style.module.css'
@@ -21,8 +21,9 @@
import { useDatasetDetailContext } from '@/context/dataset-detail'
import FloatRightContainer from '@/app/components/base/float-right-container'
import useBreakpoints, { MediaType } from '@/hooks/use-breakpoints'
+import { LayoutRight2LineMod } from '@/app/components/base/icons/src/public/knowledge'
import { useCheckSegmentBatchImportProgress, useChildSegmentListKey, useSegmentBatchImport, useSegmentListKey } from '@/service/knowledge/use-segment'
-import { useDocumentDetail, useDocumentMetadata, useInvalidDocumentList } from '@/service/knowledge/use-document'
+import { useDocumentDetail, useDocumentMetadata } from '@/service/knowledge/use-document'
import { useInvalid } from '@/service/use-base'
type DocumentContextValue = {
@@ -53,7 +54,7 @@
export const DocumentTitle: FC<DocumentTitleProps> = ({ datasetId, extension, name, processMode, parent_mode, wrapperCls }) => {
const router = useRouter()
return (
- <div className={cn('flex flex-1 items-center justify-start', wrapperCls)}>
+ <div className={cn('flex items-center justify-start flex-1', wrapperCls)}>
<DocumentPicker
datasetId={datasetId}
value={{
@@ -134,7 +135,7 @@
params: { metadata: 'without' },
})
- const { data: documentMetadata } = useDocumentMetadata({
+ const { data: documentMetadata, error: metadataErr, refetch: metadataMutate } = useDocumentMetadata({
datasetId,
documentId,
params: { metadata: 'only' },
@@ -145,27 +146,23 @@
}
const isDetailLoading = !documentDetail && !error
+ const isMetadataLoading = !documentMetadata && !metadataErr
const embedding = ['queuing', 'indexing', 'paused'].includes((documentDetail?.display_status || '').toLowerCase())
const invalidChunkList = useInvalid(useSegmentListKey)
const invalidChildChunkList = useInvalid(useChildSegmentListKey)
- const invalidDocumentList = useInvalidDocumentList(datasetId)
const handleOperate = (operateName?: string) => {
- invalidDocumentList()
if (operateName === 'delete') {
backToPrev()
}
else {
detailMutate()
- // If operation is not rename, refresh the chunk list after 5 seconds
- if (operateName) {
- setTimeout(() => {
- invalidChunkList()
- invalidChildChunkList()
- }, 5000)
- }
+ setTimeout(() => {
+ invalidChunkList()
+ invalidChildChunkList()
+ }, 5000)
}
}
@@ -189,10 +186,10 @@
mode,
parentMode,
}}>
- <div className='flex h-full flex-col bg-background-default'>
- <div className='flex min-h-16 flex-wrap items-center justify-between border-b border-b-divider-subtle py-2.5 pl-3 pr-4'>
- <div onClick={backToPrev} className={'flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-full hover:bg-components-button-tertiary-bg'}>
- <RiArrowLeftLine className='h-4 w-4 text-components-button-ghost-text hover:text-text-tertiary' />
+ <div className='flex flex-col h-full bg-background-default'>
+ <div className='flex items-center justify-between flex-wrap min-h-16 pl-3 pr-4 py-2.5 border-b border-b-divider-subtle'>
+ <div onClick={backToPrev} className={'shrink-0 rounded-full w-8 h-8 flex justify-center items-center cursor-pointer hover:bg-components-button-tertiary-bg'}>
+ <RiArrowLeftLine className='text-components-button-ghost-text hover:text-text-tertiary w-4 h-4' />
</div>
<DocumentTitle
datasetId={datasetId}
@@ -202,7 +199,7 @@
parent_mode={parentMode}
processMode={mode}
/>
- <div className='flex flex-wrap items-center'>
+ <div className='flex items-center flex-wrap'>
{embeddingAvailable && documentDetail && !documentDetail.archived && !isFullDocMode && (
<>
<SegmentAdd
@@ -212,7 +209,7 @@
showBatchModal={showBatchModal}
embedding={embedding}
/>
- <Divider type='vertical' className='!mx-3 !h-[14px] !bg-divider-regular' />
+ <Divider type='vertical' className='!bg-divider-regular !h-[14px] !mx-3' />
</>
)}
<StatusItem
@@ -249,17 +246,17 @@
>
{
showMetadata
- ? <RiLayoutLeft2Line className='h-4 w-4 text-components-button-secondary-text' />
- : <RiLayoutRight2Line className='h-4 w-4 text-components-button-secondary-text' />
+ ? <LayoutRight2LineMod className='w-4 h-4 text-components-button-secondary-text' />
+ : <RiLayoutRight2Line className='w-4 h-4 text-components-button-secondary-text' />
}
</button>
</div>
</div>
- <div className='flex flex-1 flex-row' style={{ height: 'calc(100% - 4rem)' }}>
+ <div className='flex flex-row flex-1' style={{ height: 'calc(100% - 4rem)' }}>
{isDetailLoading
? <Loading type='app' />
- : <div className={cn('flex h-full min-w-0 grow flex-col',
- embedding ? '' : isFullDocMode ? 'relative pl-11 pr-11 pt-4' : 'relative pl-5 pr-11 pt-3',
+ : <div className={cn('h-full grow min-w-0 flex flex-col',
+ embedding ? '' : isFullDocMode ? 'relative pt-4 pr-11 pl-11' : 'relative pt-3 pr-11 pl-5',
)}>
{embedding
? <Embedding
@@ -277,12 +274,11 @@
}
</div>
}
- <FloatRightContainer showClose isOpen={showMetadata} onClose={() => setShowMetadata(false)} isMobile={isMobile} panelClassName='!justify-start' footer={null}>
+ <FloatRightContainer showClose isOpen={showMetadata} onClose={() => setShowMetadata(false)} isMobile={isMobile} panelClassname='!justify-start' footer={null}>
<Metadata
- className='mr-2 mt-3'
- datasetId={datasetId}
- documentId={documentId}
docDetail={{ ...documentDetail, ...documentMetadata, doc_type: documentMetadata?.doc_type === 'others' ? '' : documentMetadata?.doc_type } as any}
+ loading={isMetadataLoading}
+ onUpdate={metadataMutate}
/>
</FloatRightContainer>
</div>
--
Gitblit v1.8.0