Files
dify/web/app/components/develop/secret-key/secret-key-button.tsx
7709d9df20 Chore: frontend infrastructure upgrade (#16420)
Co-authored-by: NFish <[email protected]>
Co-authored-by: zxhlyh <[email protected]>
Co-authored-by: twwu <[email protected]>
Co-authored-by: jZonG <[email protected]>
2025-03-21 17:41:03 +08:00

36 lines
1.1 KiB
TypeScript

'use client'
import { useState } from 'react'
import { useTranslation } from 'react-i18next'
import { RiKey2Line } from '@remixicon/react'
import Button from '@/app/components/base/button'
import SecretKeyModal from '@/app/components/develop/secret-key/secret-key-modal'
type ISecretKeyButtonProps = {
className?: string
appId?: string
textCls?: string
}
const SecretKeyButton = ({ className, appId, textCls }: ISecretKeyButtonProps) => {
const [isVisible, setVisible] = useState(false)
const { t } = useTranslation()
return (
<>
<Button
className={`px-3 ${className}`}
onClick={() => setVisible(true)}
size='small'
variant='ghost'
>
<div className={'flex h-3.5 w-3.5 items-center justify-center'}>
<RiKey2Line className='h-3.5 w-3.5 text-text-tertiary' />
</div>
<div className={`system-xs-medium px-[3px] text-text-tertiary ${textCls}`}>{t('appApi.apiKey')}</div>
</Button>
<SecretKeyModal isShow={isVisible} onClose={() => setVisible(false)} appId={appId} />
</>
)
}
export default SecretKeyButton