gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/routes/_dashboard/users.lazy.tsx · v0.3.2
Source
1 0ef1346 Mrdn 2y ago import {
2 e5dcd82 Dawsh 2y ago Alert,
3 e5dcd82 Dawsh 2y ago AlertDescription,
4 e5dcd82 Dawsh 2y ago AlertTitle,
5 e5dcd82 Dawsh 2y ago Card,
6 e5dcd82 Dawsh 2y ago CardContent,
7 e5dcd82 Dawsh 2y ago CardFooter,
8 e5dcd82 Dawsh 2y ago CardHeader,
9 e5dcd82 Dawsh 2y ago CardTitle,
10 e5dcd82 Dawsh 2y ago Page,
11 03b3dbc Mardin 2y ago Loading,
12 0ef1346 Mrdn 2y ago } from '@marzneshin/components';
13 857e289 Mrdn 2y ago import { useServicesQuery } from '@marzneshin/features/services';
14 857e289 Mrdn 2y ago import { UsersTable } from '@marzneshin/features/users';
15 857e289 Mrdn 2y ago import { ExclamationTriangleIcon } from '@radix-ui/react-icons';
16 03b3dbc Mardin 2y ago import { Link, createFileRoute, Outlet } from '@tanstack/react-router'
17 03b3dbc Mardin 2y ago import { type FC, Suspense } from 'react';
18 3b7feef Mrdn 2y ago import { useTranslation } from 'react-i18next';
19 3b7feef Mrdn 2y ago
20 3b7feef Mrdn 2y ago export const UsersPage: FC = () => {
21 e5dcd82 Dawsh 2y ago const { data } = useServicesQuery({ page: 1, size: 10 });
22 e5dcd82 Dawsh 2y ago const { t } = useTranslation();
23 e5dcd82 Dawsh 2y ago return (
24 e5dcd82 Dawsh 2y ago <Page>
25 e5dcd82 Dawsh 2y ago <Card className="border-0 sm:w-screen md:w-full">
26 e5dcd82 Dawsh 2y ago <CardHeader>
27 e5dcd82 Dawsh 2y ago <CardTitle>
28 e5dcd82 Dawsh 2y ago {t('users')}
29 e5dcd82 Dawsh 2y ago </CardTitle>
30 e5dcd82 Dawsh 2y ago </CardHeader>
31 e5dcd82 Dawsh 2y ago <CardContent>
32 e5dcd82 Dawsh 2y ago <UsersTable />
33 03b3dbc Mardin 2y ago <Suspense fallback={<Loading />}>
34 03b3dbc Mardin 2y ago <Outlet />
35 03b3dbc Mardin 2y ago </Suspense>
36 e5dcd82 Dawsh 2y ago </CardContent>
37 e5dcd82 Dawsh 2y ago <CardFooter>
38 e5dcd82 Dawsh 2y ago {(data && data.pageCount === 0) && (
39 e5dcd82 Dawsh 2y ago <Alert>
40 e5dcd82 Dawsh 2y ago <ExclamationTriangleIcon className="mr-2" />
41 e5dcd82 Dawsh 2y ago <AlertTitle className="font-semibold text-primary">{t('page.users.services-alert.title')}</AlertTitle>
42 e5dcd82 Dawsh 2y ago <AlertDescription>
43 e5dcd82 Dawsh 2y ago {t('page.users.services-alert.desc')}
44 e5dcd82 Dawsh 2y ago <Link className="m-1 font-semibold text-secondary-foreground" to="/services">{t('page.nodes.certificate-alert.click')}</Link>
45 e5dcd82 Dawsh 2y ago </AlertDescription>
46 e5dcd82 Dawsh 2y ago </Alert>
47 e5dcd82 Dawsh 2y ago )}
48 e5dcd82 Dawsh 2y ago </CardFooter>
49 e5dcd82 Dawsh 2y ago </Card>
50 e5dcd82 Dawsh 2y ago </Page>
51 e5dcd82 Dawsh 2y ago )
52 3b7feef Mrdn 2y ago };
53 3b7feef Mrdn 2y ago
54 1eb203e Mrdn 2y ago
55 1eb203e Mrdn 2y ago export const Route = createFileRoute('/_dashboard/users')({
56 03b3dbc Mardin 2y ago component: () => <UsersPage />,
57 3b7feef Mrdn 2y ago })