gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/modules/users/components/dialogs/settings/user-info/qrcode.tsx · v0.7.4
Source
1 e6e6467 Dawsh 2y ago import type { UserType } from "@marzneshin/modules/users";
2 857e289 Mrdn 2y ago import QRCode from "react-qr-code";
3 857e289 Mrdn 2y ago import { QrCodeIcon } from "lucide-react";
4 45e0190 Mrdn 2y ago import type { FC } from "react";
5 6955aba Mrdn 2y ago import {
6 6955aba Mrdn 2y ago Card,
7 6955aba Mrdn 2y ago CardContent,
8 6955aba Mrdn 2y ago CardHeader,
9 45e0190 Mrdn 2y ago CardTitle,
10 7389ad0 Mardin 2y ago } from "@marzneshin/common/components";
11 45e0190 Mrdn 2y ago import { useTranslation } from "react-i18next";
12 d636f3f Dawsh 2y ago import { getSubscriptionLink } from "@marzneshin/common/utils";
13 857e289 Mrdn 2y ago
14 45e0190 Mrdn 2y ago export interface QRCodeProps {
15 45e0190 Mrdn 2y ago entity: UserType;
16 857e289 Mrdn 2y ago }
17 857e289 Mrdn 2y ago
18 45e0190 Mrdn 2y ago export const QRCodeSection: FC<QRCodeProps> = ({ entity }) => {
19 912d3dc Mrdn 2y ago const subscribeQrLink = getSubscriptionLink(entity.subscription_url);
20 45e0190 Mrdn 2y ago const { t } = useTranslation();
21 857e289 Mrdn 2y ago return (
22 857e289 Mrdn 2y ago <Card>
23 6955aba Mrdn 2y ago <CardHeader className="flex flex-row justify-between items-center w-full">
24 857e289 Mrdn 2y ago <CardTitle className="flex flex-row gap-4 justify-start">
25 857e289 Mrdn 2y ago <QrCodeIcon />
26 45e0190 Mrdn 2y ago {t("subscription")} QRCode
27 857e289 Mrdn 2y ago </CardTitle>
28 857e289 Mrdn 2y ago </CardHeader>
29 45e0190 Mrdn 2y ago <CardContent className="flex flex-col justify-center items-center py-10 w-full h-full">
30 45b52bb Mardin 1y ago <QRCode size={150} className="size-2/3 bg-white p-4" value={subscribeQrLink} />
31 857e289 Mrdn 2y ago </CardContent>
32 857e289 Mrdn 2y ago </Card>
33 857e289 Mrdn 2y ago );
34 45e0190 Mrdn 2y ago };