import { Button, Modal, ModalContent, ModalHeader, ModalBody, ModalFooter, Input } from '@heroui/react'; import { useState } from 'react'; import { isValidPassword } from '../account/validate'; import { AdminMessages } from '@/types/user'; type Props = { isOpen: boolean; onCancel: () => void; onReset: (newPassword: string) => void; messages: AdminMessages; }; export default function PasswordResetDialog({ isOpen, onCancel, onReset, messages }: Props) { const [newPassword, setNewPassword] = useState(''); const [confirmPassword, setConfirmPassword] = useState(''); const [errorMessage, setErrorMessage] = useState(''); const validate = async () => { if (newPassword !== confirmPassword) { setErrorMessage(messages.passwordNotMatch); return; } if (!isValidPassword(newPassword)) { setErrorMessage(messages.invalidPassword); return; } onReset(newPassword); }; return ( { onCancel(); }} > {messages.resetPassword}
{errorMessage &&
{errorMessage}
} setNewPassword(e.target.value)} autoComplete="new-password" /> setConfirmPassword(e.target.value)} autoComplete="new-password" className="mt-3" />
); }