← marzneshin
/
v0.7.4
/
dashboard/src/modules/admins/components/dialogs/settings/index.tsx
https://dev.kronoz.win/r/marzneshin.git
1import {
2 Awaiting,
3 SettingsInfoSkeleton,
4 SettingsDialogProps,
5 SettingsDialog,
6} from "@marzneshin/common/components";
7import { type AdminType } from "@marzneshin/modules/admins";
8import { type FC } from "react";
9import { AdminInfoTable } from "./admin-info";
10
11interface AdminsSettingsDialogProps extends SettingsDialogProps {
12 entity: AdminType | null;
13 onClose: () => void;
14 isPending: boolean;
15}
16
17export const AdminsSettingsDialog: FC<AdminsSettingsDialogProps> = ({
18 onOpenChange,
19 open,
20 entity,
21 onClose,
22 isPending,
23}) => {
24
25 return (
26 <SettingsDialog open={open} onClose={onClose} onOpenChange={onOpenChange}>
27 <Awaiting
28 Component={
29 entity ? (
30 <AdminInfoTable admin={entity} />
31 ) : (
32 <div>Not Found</div>
33 )
34 }
35 Skeleton={<SettingsInfoSkeleton />}
36 isFetching={isPending}
37 />
38 </SettingsDialog>
39 );
40};
41
42//
43// <Tabs defaultValue="info" className="w-full h-full">
44// <TabsList className="w-full bg-accent">
45// <TabsTrigger className="w-full" value="info">
46// {t("admin_info")}
47// </TabsTrigger>
48// <TabsTrigger className="w-full" value="services">
49// {t("services")}
50// </TabsTrigger>
51// <TabsTrigger className="w-full" value="subscription">
52// {t("users")}
53// </TabsTrigger>
54// </TabsList>
55// <TabsContent
56// value="info"
57// className="flex flex-col gap-2 w-full h-full"
58// >
59// <AdminInfoTable admin={entity} />
60// </TabsContent>
61// {/* <TabsContent value="services"> */}
62// {/* <AdminServicesTable admin={entity} /> */}
63// {/* </TabsContent> */}
64// {/* <TabsContent value="users">Users</TabsContent> */}
65// </Tabs>