mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-11-02 02:40:15 +00:00
### What problem does this PR solve? fix: reference file with 'docx' type can not open #844 ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
36 lines
1.1 KiB
TypeScript
36 lines
1.1 KiB
TypeScript
import { Images } from '@/constants/common';
|
|
import { api_host } from '@/utils/api';
|
|
import { Flex, Image } from 'antd';
|
|
import { useParams, useSearchParams } from 'umi';
|
|
import Docx from './docx';
|
|
import Excel from './excel';
|
|
import Pdf from './pdf';
|
|
|
|
import styles from './index.less';
|
|
|
|
// TODO: The interface returns an incorrect content-type for the SVG.
|
|
|
|
const DocumentViewer = () => {
|
|
const { id: documentId } = useParams();
|
|
const [currentQueryParameters] = useSearchParams();
|
|
const ext = currentQueryParameters.get('ext');
|
|
const prefix = currentQueryParameters.get('prefix');
|
|
const api = `${api_host}/${prefix || 'file'}/get/${documentId}`;
|
|
|
|
return (
|
|
<section className={styles.viewerWrapper}>
|
|
{Images.includes(ext!) && (
|
|
<Flex className={styles.image} align="center" justify="center">
|
|
<Image src={api} preview={false}></Image>
|
|
</Flex>
|
|
)}
|
|
{ext === 'pdf' && <Pdf url={api}></Pdf>}
|
|
{(ext === 'xlsx' || ext === 'xls') && <Excel filePath={api}></Excel>}
|
|
|
|
{ext === 'docx' && <Docx filePath={api}></Docx>}
|
|
</section>
|
|
);
|
|
};
|
|
|
|
export default DocumentViewer;
|