gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/features/users/dialogs/settings/index.tsx · v0.3.0-alpha9
Source
1 857e289 Mrdn 2y ago import {
2 857e289 Mrdn 2y ago ScrollArea,
3 857e289 Mrdn 2y ago Sheet,
4 857e289 Mrdn 2y ago SheetContent,
5 857e289 Mrdn 2y ago SheetHeader,
6 857e289 Mrdn 2y ago SheetTitle,
7 857e289 Mrdn 2y ago Tabs,
8 857e289 Mrdn 2y ago TabsContent,
9 857e289 Mrdn 2y ago TabsList,
10 857e289 Mrdn 2y ago TabsTrigger,
11 857e289 Mrdn 2y ago } from "@marzneshin/components"
12 857e289 Mrdn 2y ago import { FC } from "react"
13 857e289 Mrdn 2y ago import { useTranslation } from "react-i18next"
14 857e289 Mrdn 2y ago import { UserServicesTable, UserType } from "@marzneshin/features/users"
15 857e289 Mrdn 2y ago import { UserInfoTable, QRCodeSection } from "./user-info"
16 857e289 Mrdn 2y ago
17 857e289 Mrdn 2y ago interface UsersSettingsDialogProps {
18 857e289 Mrdn 2y ago onOpenChange: (state: boolean) => void
19 857e289 Mrdn 2y ago open: boolean
20 857e289 Mrdn 2y ago entity: UserType | null
21 857e289 Mrdn 2y ago }
22 857e289 Mrdn 2y ago
23 857e289 Mrdn 2y ago export const UsersSettingsDialog: FC<UsersSettingsDialogProps> = ({ onOpenChange, open, entity }) => {
24 857e289 Mrdn 2y ago const { t } = useTranslation();
25 857e289 Mrdn 2y ago
26 857e289 Mrdn 2y ago if (entity) {
27 857e289 Mrdn 2y ago return (
28 857e289 Mrdn 2y ago <Sheet open={open} onOpenChange={onOpenChange}>
29 857e289 Mrdn 2y ago <SheetContent className="sm:min-w-full md:min-w-[700px]" >
30 857e289 Mrdn 2y ago <SheetHeader>
31 857e289 Mrdn 2y ago <SheetTitle>
32 857e289 Mrdn 2y ago {t('settings')}
33 857e289 Mrdn 2y ago </SheetTitle>
34 857e289 Mrdn 2y ago </SheetHeader>
35 857e289 Mrdn 2y ago <ScrollArea className="flex flex-col gap-4 m-3 h-full">
36 857e289 Mrdn 2y ago <Tabs defaultValue="info" className="w-full h-full">
37 857e289 Mrdn 2y ago <TabsList className="w-full bg-accent">
38 857e289 Mrdn 2y ago <TabsTrigger className="w-full" value="info"> {t('user_info')} </TabsTrigger>
39 857e289 Mrdn 2y ago <TabsTrigger className="w-full" value="services"> {t('services')} </TabsTrigger>
40 857e289 Mrdn 2y ago </TabsList>
41 857e289 Mrdn 2y ago <TabsContent value="info" className="flex flex-col gap-4">
42 857e289 Mrdn 2y ago <UserInfoTable entity={entity} />
43 857e289 Mrdn 2y ago <QRCodeSection entity={entity} />
44 857e289 Mrdn 2y ago </TabsContent>
45 857e289 Mrdn 2y ago <TabsContent value="services">
46 857e289 Mrdn 2y ago <UserServicesTable user={entity} />
47 857e289 Mrdn 2y ago </TabsContent>
48 857e289 Mrdn 2y ago </Tabs>
49 857e289 Mrdn 2y ago </ScrollArea>
50 857e289 Mrdn 2y ago </SheetContent>
51 857e289 Mrdn 2y ago </Sheet>
52 857e289 Mrdn 2y ago )
53 857e289 Mrdn 2y ago }
54 857e289 Mrdn 2y ago }