| | |
| | | import { useState } from 'react'; |
| | | import { Button } from 'react-admin'; |
| | | import ImportModal from './ImportModal'; |
| | | import ImportTxtModal from './ImportTxtModal'; |
| | | import ImportXlsxModal from './ImportXlsxModal'; |
| | | |
| | | const ImportButton = (props) => { |
| | | const ImportButton = ({ |
| | | type = 'csv', // csv, txt, xlsx, |
| | | variant = 'text', |
| | | ...props |
| | | }) => { |
| | | const [modalOpen, setModalOpen] = useState(false); |
| | | |
| | | const handleOpenModal = () => { |
| | | const handleOpenModal = (e) => { |
| | | e.stopPropagation(); |
| | | setModalOpen(true); |
| | | }; |
| | | |
| | |
| | | return ( |
| | | <> |
| | | <Button |
| | | variant={variant} |
| | | startIcon={<UploadIcon />} |
| | | label="common.action.import.title" |
| | | onClick={handleOpenModal} |
| | | /> |
| | | |
| | | <ImportModal open={modalOpen} onClose={handleCloseModal} {...props} /> |
| | | {type === 'csv' && (<ImportModal open={modalOpen} onClose={handleCloseModal} {...props} />)} |
| | | {type === 'txt' && (<ImportTxtModal open={modalOpen} onClose={handleCloseModal} {...props} />)} |
| | | {type === 'xlsx' && (<ImportXlsxModal open={modalOpen} onClose={handleCloseModal} {...props} />)} |
| | | </> |
| | | ); |
| | | }; |