| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | 
							- import { useTranslation } from 'react-i18next'
 - import Indicator from '../../indicator'
 - import type { Status } from './declarations'
 - 
 - type OperateProps = {
 -   isOpen: boolean
 -   status: Status
 -   disabled?: boolean
 -   onCancel: () => void
 -   onSave: () => void
 -   onAdd: () => void
 -   onEdit: () => void
 - }
 - 
 - const Operate = ({
 -   isOpen,
 -   status,
 -   disabled,
 -   onCancel,
 -   onSave,
 -   onAdd,
 -   onEdit,
 - }: OperateProps) => {
 -   const { t } = useTranslation()
 - 
 -   if (isOpen) {
 -     return (
 -       <div className='flex items-center'>
 -         <div className='
 -           flex items-center
 -           mr-[5px] px-3 h-7 rounded-md cursor-pointer
 -           text-xs font-medium text-gray-700
 -         ' onClick={onCancel} >
 -           {t('common.operation.cancel')}
 -         </div>
 -         <div className='
 -           flex items-center
 -           px-3 h-7 rounded-md cursor-pointer bg-primary-700
 -           text-xs font-medium text-white
 -         ' onClick={onSave}>
 -           {t('common.operation.save')}
 -         </div>
 -       </div>
 -     )
 -   }
 - 
 -   if (status === 'add') {
 -     return (
 -       <div className={
 -         `px-3 h-[28px] bg-white border border-gray-200 rounded-md cursor-pointer
 -         text-xs font-medium text-gray-700 flex items-center ${disabled && 'opacity-50 cursor-default'}}`
 -       } onClick={() => !disabled && onAdd()}>
 -         {t('common.provider.addKey')}
 -       </div>
 -     )
 -   }
 - 
 -   if (status === 'fail' || status === 'success') {
 -     return (
 -       <div className='flex items-center'>
 -         {
 -           status === 'fail' && (
 -             <div className='flex items-center mr-4'>
 -               <div className='text-xs text-[#D92D20]'>{t('common.provider.invalidApiKey')}</div>
 -               <Indicator color='red' className='ml-2' />
 -             </div>
 -           )
 -         }
 -         {
 -           status === 'success' && (
 -             <Indicator color='green' className='mr-4' />
 -           )
 -         }
 -         <div className={
 -           `px-3 h-[28px] bg-white border border-gray-200 rounded-md cursor-pointer
 -           text-xs font-medium text-gray-700 flex items-center ${disabled && 'opacity-50 cursor-default'}}`
 -         } onClick={() => !disabled && onEdit()}>
 -           {t('common.provider.editKey')}
 -         </div>
 -       </div>
 -     )
 -   }
 - 
 -   return null
 - }
 - 
 - export default Operate
 
 
  |