mirror of https://github.com/usememos/memos.git
parent
b8029c70ef
commit
34c341c88c
|
|
@ -22,13 +22,15 @@ interface Props {
|
|||
|
||||
function CreateUserDialog({ open, onOpenChange, user: initialUser, onSuccess }: Props) {
|
||||
const t = useTranslate();
|
||||
const [user, setUser] = useState(create(UserSchema, initialUser ? { username: initialUser.username, role: initialUser.role } : {}));
|
||||
const [user, setUser] = useState(
|
||||
create(UserSchema, initialUser ? { name: initialUser.name, username: initialUser.username, role: initialUser.role } : {}),
|
||||
);
|
||||
const requestState = useLoading(false);
|
||||
const isCreating = !initialUser;
|
||||
|
||||
useEffect(() => {
|
||||
if (initialUser) {
|
||||
setUser(create(UserSchema, { username: initialUser.username, role: initialUser.role }));
|
||||
setUser(create(UserSchema, { name: initialUser.name, username: initialUser.username, role: initialUser.role }));
|
||||
} else {
|
||||
setUser(create(UserSchema, {}));
|
||||
}
|
||||
|
|
@ -63,7 +65,8 @@ function CreateUserDialog({ open, onOpenChange, user: initialUser, onSuccess }:
|
|||
if (user.role !== initialUser?.role) {
|
||||
updateMask.push("role");
|
||||
}
|
||||
await userServiceClient.updateUser({ user, updateMask: create(FieldMaskSchema, { paths: updateMask }) });
|
||||
const userToUpdate = create(UserSchema, { ...user, name: initialUser?.name ?? user.name });
|
||||
await userServiceClient.updateUser({ user: userToUpdate, updateMask: create(FieldMaskSchema, { paths: updateMask }) });
|
||||
toast.success("Update user successfully");
|
||||
}
|
||||
requestState.setFinish();
|
||||
|
|
|
|||
Loading…
Reference in New Issue