- import { getExtension } from '@/utils/document-util';
 - import SvgIcon from '../svg-icon';
 - 
 - import { useFetchDocumentThumbnailsByIds } from '@/hooks/document-hooks';
 - import { useEffect } from 'react';
 - import styles from './index.less';
 - 
 - interface IProps {
 -   name: string;
 -   id: string;
 - }
 - 
 - const FileIcon = ({ name, id }: IProps) => {
 -   const fileExtension = getExtension(name);
 - 
 -   const { data: fileThumbnails, setDocumentIds } =
 -     useFetchDocumentThumbnailsByIds();
 -   const fileThumbnail = fileThumbnails[id];
 - 
 -   useEffect(() => {
 -     setDocumentIds([id]);
 -   }, [id, setDocumentIds]);
 - 
 -   return fileThumbnail ? (
 -     <img src={fileThumbnail} className={styles.thumbnailImg}></img>
 -   ) : (
 -     <SvgIcon name={`file-icon/${fileExtension}`} width={24}></SvgIcon>
 -   );
 - };
 - 
 - export default FileIcon;
 
 
  |