import { t, Trans } from "@lingui/macro" import { Box, Button, Checkbox, Group, PasswordInput, Stack, TextInput } from "@mantine/core" import { useForm } from "@mantine/form" import { client, errorToStrings } from "app/client" import { UserModel } from "app/types" import { Alert } from "components/Alert" import { TbDeviceFloppy } from "react-icons/tb" import useMutation from "use-mutation" interface UserEditProps { user?: UserModel onCancel: () => void onSave: () => void } export function UserEdit(props: UserEditProps) { const form = useForm({ initialValues: props.user ?? ({ enabled: true } as UserModel), }) const [saveUser, saveUserResult] = useMutation(client.admin.saveUser, { onSuccess: props.onSave }) const errors = errorToStrings(saveUserResult.error) return ( <> {errors.length > 0 && ( )}
) }