ragflow/web/src/components/icon-font.tsx
balibabu 21ddcd3c39
Feat: Adjust the style of the note node #3221 (#9167)
### What problem does this PR solve?

Feat: Adjust the style of the note node #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
2025-08-01 20:21:19 +08:00

29 lines
679 B
TypeScript

import { FileIconMap } from '@/constants/file';
import { cn } from '@/lib/utils';
import { getExtension } from '@/utils/document-util';
type IconFontType = {
name: string;
className?: string;
};
export const IconFont = ({ name, className }: IconFontType) => (
<svg className={cn('size-4', className)}>
<use xlinkHref={`#icon-${name}`} />
</svg>
);
export function FileIcon({
name,
className,
type,
}: IconFontType & { type?: string }) {
const isFolder = type === 'folder';
return (
<span className={cn('size-4', className)}>
<IconFont
name={isFolder ? 'file-sub' : FileIconMap[getExtension(name)]}
></IconFont>
</span>
);
}