gitscope
← marzneshin / master / dashboard/src/modules/admins/components/dialogs/settings/index.tsx
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/modules/admins/components/dialogs/settings/index.tsx · TypeScript
Blame Raw
 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>