import { useParams } from 'common' import { useRef, useState } from 'react' import { Button, Form, IconEye, IconEyeOff, Input, Modal } from 'ui' import { useSecretsCreateMutation } from 'data/secrets/secrets-create-mutation' import { useStore } from 'hooks' interface AddNewSecretModalProps { visible: boolean onClose: () => void } const AddNewSecretModal = ({ visible, onClose }: AddNewSecretModalProps) => { const { ui } = useStore() const { ref: projectRef } = useParams() const submitRef = useRef(null) const [showSecretValue, setShowSecretValue] = useState(false) const { mutate: createSecret, isLoading: isCreating } = useSecretsCreateMutation({ onSuccess: (res, variables) => { ui.setNotification({ category: 'success', message: `Successfully created new secret "${variables.secrets[0].name}"`, }) onClose() }, }) const validate = (values: any) => { const errors: any = {} if (values.name.length === 0) errors.name = 'Please provide a name for your secret' if (values.value.length === 0) errors.value = 'Please provide a value for your secret' return errors } const onSubmit = (values: any) => { createSecret({ projectRef, secrets: [values] }) } return ( } >
{() => ( <>