mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-15 00:45:53 +08:00
Feat/add document status tooltip (#937)
This commit is contained in:
parent
4b53bb1a32
commit
f53242c081
@ -127,7 +127,7 @@ const DocumentDetail: FC<Props> = ({ datasetId, documentId }) => {
|
|||||||
</div>
|
</div>
|
||||||
<Divider className='!h-4' type='vertical' />
|
<Divider className='!h-4' type='vertical' />
|
||||||
<DocumentTitle extension={documentDetail?.data_source_info?.upload_file?.extension} name={documentDetail?.name} />
|
<DocumentTitle extension={documentDetail?.data_source_info?.upload_file?.extension} name={documentDetail?.name} />
|
||||||
<StatusItem status={documentDetail?.display_status || 'available'} scene='detail' />
|
<StatusItem status={documentDetail?.display_status || 'available'} scene='detail' errorMessage={documentDetail?.error || ''} />
|
||||||
{documentDetail && !documentDetail.archived && (
|
{documentDetail && !documentDetail.archived && (
|
||||||
<SegmentAdd
|
<SegmentAdd
|
||||||
importStatus={importStatus}
|
importStatus={importStatus}
|
||||||
|
@ -27,7 +27,8 @@ import NotionIcon from '@/app/components/base/notion-icon'
|
|||||||
import ProgressBar from '@/app/components/base/progress-bar'
|
import ProgressBar from '@/app/components/base/progress-bar'
|
||||||
import { DataSourceType, type DocumentDisplayStatus, type SimpleDocumentDetail } from '@/models/datasets'
|
import { DataSourceType, type DocumentDisplayStatus, type SimpleDocumentDetail } from '@/models/datasets'
|
||||||
import type { CommonResponse } from '@/models/common'
|
import type { CommonResponse } from '@/models/common'
|
||||||
import { DotsHorizontal } from '@/app/components/base/icons/src/vender/line/general'
|
import { FilePlus02 } from '@/app/components/base/icons/src/vender/line/files'
|
||||||
|
import { DotsHorizontal, HelpCircle } from '@/app/components/base/icons/src/vender/line/general'
|
||||||
|
|
||||||
export const SettingsIcon: FC<{ className?: string }> = ({ className }) => {
|
export const SettingsIcon: FC<{ className?: string }> = ({ className }) => {
|
||||||
return <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" className={className ?? ''}>
|
return <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" className={className ?? ''}>
|
||||||
@ -73,7 +74,8 @@ export const StatusItem: FC<{
|
|||||||
reverse?: boolean
|
reverse?: boolean
|
||||||
scene?: 'list' | 'detail'
|
scene?: 'list' | 'detail'
|
||||||
textCls?: string
|
textCls?: string
|
||||||
}> = ({ status, reverse = false, scene = 'list', textCls = '' }) => {
|
errorMessage?: string
|
||||||
|
}> = ({ status, reverse = false, scene = 'list', textCls = '', errorMessage }) => {
|
||||||
const DOC_INDEX_STATUS_MAP = useIndexStatus()
|
const DOC_INDEX_STATUS_MAP = useIndexStatus()
|
||||||
const localStatus = status.toLowerCase() as keyof typeof DOC_INDEX_STATUS_MAP
|
const localStatus = status.toLowerCase() as keyof typeof DOC_INDEX_STATUS_MAP
|
||||||
return <div className={
|
return <div className={
|
||||||
@ -83,6 +85,16 @@ export const StatusItem: FC<{
|
|||||||
}>
|
}>
|
||||||
<Indicator color={DOC_INDEX_STATUS_MAP[localStatus]?.color as IndicatorProps['color']} className={reverse ? 'ml-2' : 'mr-2'} />
|
<Indicator color={DOC_INDEX_STATUS_MAP[localStatus]?.color as IndicatorProps['color']} className={reverse ? 'ml-2' : 'mr-2'} />
|
||||||
<span className={cn('text-gray-700 text-sm', textCls)}>{DOC_INDEX_STATUS_MAP[localStatus]?.text}</span>
|
<span className={cn('text-gray-700 text-sm', textCls)}>{DOC_INDEX_STATUS_MAP[localStatus]?.text}</span>
|
||||||
|
{
|
||||||
|
errorMessage && (
|
||||||
|
<Tooltip
|
||||||
|
selector='dataset-document-detail-item-status'
|
||||||
|
content={errorMessage}
|
||||||
|
>
|
||||||
|
<HelpCircle className='ml-1 w-[14px] h-[14px] text-gray-700' />
|
||||||
|
</Tooltip>
|
||||||
|
)
|
||||||
|
}
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user