import React from 'react' import cn from '@/utils/classnames' import { RiUploadCloud2Line } from '@remixicon/react' import { useTranslation } from 'react-i18next' import { useUpload } from '../hooks/use-upload' import { ACCEPT_TYPES } from '../constants' const ImageUploader = () => { const { t } = useTranslation() const { dragging, fileUploadConfig, dragRef, dropRef, uploaderRef, fileChangeHandle, selectHandle, } = useUpload() return (
`.${ext}`).join(',')} onChange={fileChangeHandle} />
{t('dataset.imageUploader.button')} {t('dataset.imageUploader.browse')}
{t('dataset.imageUploader.tip', { size: fileUploadConfig.imageFileSizeLimit, supportTypes: ACCEPT_TYPES.join(', '), batchCount: fileUploadConfig.imageFileBatchLimit, })}
{dragging &&
}
) } export default React.memo(ImageUploader)