headplane/app/routes/users/dialogs/rename-user.tsx

35 lines
984 B
TypeScript
Raw Normal View History

2024-12-31 10:30:14 +05:30
import Dialog from '~/components/Dialog';
import Input from '~/components/Input';
2025-02-19 13:01:20 -05:00
import { User } from '~/types';
2024-05-15 21:52:19 -04:00
2025-04-01 12:27:44 -04:00
interface RenameProps {
2025-02-19 13:01:20 -05:00
user: User;
2025-04-01 12:27:44 -04:00
isOpen: boolean;
setIsOpen: (isOpen: boolean) => void;
2024-05-15 21:52:19 -04:00
}
// TODO: Server side validation before submitting
2025-04-01 12:27:44 -04:00
export default function RenameUser({ user, isOpen, setIsOpen }: RenameProps) {
2024-05-15 21:52:19 -04:00
return (
2025-04-01 12:27:44 -04:00
<Dialog isOpen={isOpen} onOpenChange={setIsOpen}>
<Dialog.Panel>
2025-02-19 13:01:20 -05:00
<Dialog.Title>Rename {user.name}?</Dialog.Title>
<Dialog.Text className="mb-6">
Enter a new username for {user.name}. Changing a username will not
update any ACL policies that may refer to this user by their old
username.
</Dialog.Text>
2025-02-19 13:01:20 -05:00
<input type="hidden" name="action_id" value="rename_user" />
<input type="hidden" name="user_id" value={user.id} />
<Input
isRequired
2025-02-19 13:01:20 -05:00
name="new_name"
label="Username"
placeholder="my-new-name"
2025-02-19 13:01:20 -05:00
defaultValue={user.name}
/>
</Dialog.Panel>
</Dialog>
2024-12-31 10:30:14 +05:30
);
2024-05-15 21:52:19 -04:00
}