Spaces:
Build error
Build error
'use client' | |
import type { FC } from 'react' | |
import React from 'react' | |
import { | |
useCSVDownloader, | |
} from 'react-papaparse' | |
import { useTranslation } from 'react-i18next' | |
import cn from '@/utils/classnames' | |
import { Download02 as DownloadIcon } from '@/app/components/base/icons/src/vender/solid/general' | |
import Button from '@/app/components/base/button' | |
export type IResDownloadProps = { | |
isMobile: boolean | |
values: Record<string, string>[] | |
} | |
const ResDownload: FC<IResDownloadProps> = ({ | |
isMobile, | |
values, | |
}) => { | |
const { t } = useTranslation() | |
const { CSVDownloader, Type } = useCSVDownloader() | |
return ( | |
<CSVDownloader | |
className="block cursor-pointer" | |
type={Type.Link} | |
filename={'result'} | |
bom={true} | |
config={{ | |
// delimiter: ';', | |
}} | |
data={values} | |
> | |
<Button className={cn('space-x-2 bg-white', isMobile ? '!p-0 !w-8 justify-center' : '')}> | |
<DownloadIcon className='w-4 h-4 text-[#155EEF]' /> | |
{!isMobile && <span className='text-[#155EEF]'>{t('common.operation.download')}</span>} | |
</Button> | |
</CSVDownloader> | |
) | |
} | |
export default React.memo(ResDownload) | |