| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| import React, { useState } from 'react'; |
| import { Button, Space } from '@douyinfe/semi-ui'; |
| import { showError } from '../../../helpers'; |
| import CopyTokensModal from './modals/CopyTokensModal'; |
| import DeleteTokensModal from './modals/DeleteTokensModal'; |
|
|
| const TokensActions = ({ |
| selectedKeys, |
| setEditingToken, |
| setShowEdit, |
| batchCopyTokens, |
| batchDeleteTokens, |
| t, |
| }) => { |
| |
| const [showCopyModal, setShowCopyModal] = useState(false); |
| const [showDeleteModal, setShowDeleteModal] = useState(false); |
|
|
| |
| const handleCopySelectedTokens = () => { |
| if (selectedKeys.length === 0) { |
| showError(t('请至少选择一个令牌!')); |
| return; |
| } |
| setShowCopyModal(true); |
| }; |
|
|
| |
| const handleDeleteSelectedTokens = () => { |
| if (selectedKeys.length === 0) { |
| showError(t('请至少选择一个令牌!')); |
| return; |
| } |
| setShowDeleteModal(true); |
| }; |
|
|
| |
| const handleConfirmDelete = () => { |
| batchDeleteTokens(); |
| setShowDeleteModal(false); |
| }; |
|
|
| return ( |
| <> |
| <div className='flex flex-wrap gap-2 w-full md:w-auto order-2 md:order-1'> |
| <Button |
| type='primary' |
| className='flex-1 md:flex-initial' |
| onClick={() => { |
| setEditingToken({ |
| id: undefined, |
| }); |
| setShowEdit(true); |
| }} |
| size='small' |
| > |
| {t('添加令牌')} |
| </Button> |
| |
| <Button |
| type='tertiary' |
| className='flex-1 md:flex-initial' |
| onClick={handleCopySelectedTokens} |
| size='small' |
| > |
| {t('复制所选令牌')} |
| </Button> |
| |
| <Button |
| type='danger' |
| className='w-full md:w-auto' |
| onClick={handleDeleteSelectedTokens} |
| size='small' |
| > |
| {t('删除所选令牌')} |
| </Button> |
| </div> |
| |
| <CopyTokensModal |
| visible={showCopyModal} |
| onCancel={() => setShowCopyModal(false)} |
| batchCopyTokens={batchCopyTokens} |
| t={t} |
| /> |
| |
| <DeleteTokensModal |
| visible={showDeleteModal} |
| onCancel={() => setShowDeleteModal(false)} |
| onConfirm={handleConfirmDelete} |
| selectedKeys={selectedKeys} |
| t={t} |
| /> |
| </> |
| ); |
| }; |
|
|
| export default TokensActions; |
|
|