🐛 fix(admin): refresh user list after balance update
This commit is contained in:
parent
9e0dd4c874
commit
7e1d5746d4
@ -68,7 +68,11 @@ export default function User() {
|
||||
action={ref}
|
||||
actions={{
|
||||
render: (row) => [
|
||||
<ProfileSheet key="profile" userId={row.id} />,
|
||||
<ProfileSheet
|
||||
key="profile"
|
||||
onUpdated={() => ref.current?.refresh()}
|
||||
userId={row.id}
|
||||
/>,
|
||||
<SubscriptionSheet key="subscription" userId={row.id} />,
|
||||
<ConfirmButton
|
||||
cancelText={t("cancel", "Cancel")}
|
||||
@ -291,7 +295,13 @@ export default function User() {
|
||||
);
|
||||
}
|
||||
|
||||
function ProfileSheet({ userId }: { userId: number }) {
|
||||
function ProfileSheet({
|
||||
userId,
|
||||
onUpdated,
|
||||
}: {
|
||||
userId: number;
|
||||
onUpdated?: () => void;
|
||||
}) {
|
||||
const { t } = useTranslation("user");
|
||||
const [open, setOpen] = useState(false);
|
||||
const { data: user, refetch } = useQuery({
|
||||
@ -302,6 +312,11 @@ function ProfileSheet({ userId }: { userId: number }) {
|
||||
return data.data as API.User;
|
||||
},
|
||||
});
|
||||
|
||||
const refetchAll = async () => {
|
||||
await refetch();
|
||||
onUpdated?.();
|
||||
};
|
||||
return (
|
||||
<Sheet onOpenChange={setOpen} open={open}>
|
||||
<SheetTrigger asChild>
|
||||
@ -331,13 +346,13 @@ function ProfileSheet({ userId }: { userId: number }) {
|
||||
</TabsTrigger>
|
||||
</TabsList>
|
||||
<TabsContent className="mt-0" value="basic">
|
||||
<BasicInfoForm refetch={refetch as any} user={user} />
|
||||
<BasicInfoForm refetch={refetchAll} user={user} />
|
||||
</TabsContent>
|
||||
<TabsContent className="mt-0" value="notify">
|
||||
<NotifySettingsForm refetch={refetch as any} user={user} />
|
||||
<NotifySettingsForm refetch={refetchAll} user={user} />
|
||||
</TabsContent>
|
||||
<TabsContent className="mt-0" value="auth">
|
||||
<AuthMethodsForm refetch={refetch as any} user={user} />
|
||||
<AuthMethodsForm refetch={refetchAll} user={user} />
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</ScrollArea>
|
||||
|
||||
@ -21,7 +21,7 @@ export function AuthMethodsForm({
|
||||
refetch,
|
||||
}: {
|
||||
user: API.User;
|
||||
refetch: () => void;
|
||||
refetch: () => void | Promise<unknown>;
|
||||
}) {
|
||||
const { t } = useTranslation("user");
|
||||
|
||||
|
||||
@ -47,7 +47,7 @@ export function BasicInfoForm({
|
||||
refetch,
|
||||
}: {
|
||||
user: API.User;
|
||||
refetch: () => void;
|
||||
refetch: () => void | Promise<unknown>;
|
||||
}) {
|
||||
const { t } = useTranslation("user");
|
||||
|
||||
|
||||
@ -34,7 +34,7 @@ export function NotifySettingsForm({
|
||||
refetch,
|
||||
}: {
|
||||
user: API.User;
|
||||
refetch: () => void;
|
||||
refetch: () => void | Promise<unknown>;
|
||||
}) {
|
||||
const { t } = useTranslation("user");
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user