mirror of
https://github.com/langgenius/dify.git
synced 2026-05-12 15:58:19 +08:00
Co-authored-by: CodingOnStar <hanxujiang@dify.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: yyh <yuanyouhuilyz@gmail.com> Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com>
57 lines
1.9 KiB
TypeScript
57 lines
1.9 KiB
TypeScript
'use client'
|
|
import type { CreateApiKeyResponse } from '@/models/app'
|
|
import { XMarkIcon } from '@heroicons/react/20/solid'
|
|
import { Button } from '@langgenius/dify-ui/button'
|
|
import { cn } from '@langgenius/dify-ui/cn'
|
|
import { Dialog, DialogContent, DialogTitle } from '@langgenius/dify-ui/dialog'
|
|
import { useTranslation } from 'react-i18next'
|
|
import InputCopy from './input-copy'
|
|
import s from './style.module.css'
|
|
|
|
type ISecretKeyGenerateModalProps = {
|
|
isShow: boolean
|
|
onClose: () => void
|
|
newKey?: CreateApiKeyResponse
|
|
className?: string
|
|
}
|
|
|
|
const SecretKeyGenerateModal = ({
|
|
isShow = false,
|
|
onClose,
|
|
newKey,
|
|
className,
|
|
}: ISecretKeyGenerateModalProps) => {
|
|
const { t } = useTranslation()
|
|
return (
|
|
<Dialog
|
|
open={isShow}
|
|
onOpenChange={(open) => {
|
|
if (!open)
|
|
onClose()
|
|
}}
|
|
>
|
|
<DialogContent className={cn('w-full max-w-[480px] overflow-hidden! border-none px-8 text-left align-middle', className)}>
|
|
<DialogTitle className="title-2xl-semi-bold text-text-primary">
|
|
{`${t('apiKeyModal.apiSecretKey', { ns: 'appApi' })}`}
|
|
</DialogTitle>
|
|
|
|
<div className="-mt-6 -mr-2 mb-4 flex justify-end">
|
|
<XMarkIcon className="h-6 w-6 cursor-pointer text-text-tertiary" onClick={onClose} />
|
|
</div>
|
|
<p className="mt-1 text-[13px] leading-5 font-normal text-text-tertiary">{t('apiKeyModal.generateTips', { ns: 'appApi' })}</p>
|
|
<div className="my-4">
|
|
<InputCopy className="w-full" value={newKey?.token} />
|
|
</div>
|
|
<div className="my-4 flex justify-end">
|
|
<Button className={`shrink-0 ${s.w64}`} onClick={onClose}>
|
|
<span className="text-xs font-medium text-text-secondary">{t('actionMsg.ok', { ns: 'appApi' })}</span>
|
|
</Button>
|
|
</div>
|
|
|
|
</DialogContent>
|
|
</Dialog>
|
|
)
|
|
}
|
|
|
|
export default SecretKeyGenerateModal
|