gitscope
← marzneshin / v0.3.0 / dashboard/src/features/users/dialogs/settings/user-info/subcription-link-button.tsx
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/features/users/dialogs/settings/user-info/subcription-link-button.tsx · TypeScript
Blame Raw
 1import { useTranslation } from "react-i18next";
 2import { CopyToClipboardButton } from "@marzneshin/components";
 3import type { FC } from "react";
 4import { SquareCode } from "lucide-react";
 5import { getSubscriptionLink } from "@marzneshin/utils";
 6
 7interface SubscriptionLinkButtonProps {
 8  subscriptionLink: string;
 9}
10
11export const SubscriptionLinkButton: FC<SubscriptionLinkButtonProps> = ({
12  subscriptionLink,
13}) => {
14  const { t } = useTranslation();
15
16  return (
17    <CopyToClipboardButton
18      text={getSubscriptionLink(subscriptionLink)}
19      successMessage={t("page.users.settings.subscription_link.copied")}
20      copyLabel={t("page.users.settings.subscription_link.copy")}
21      errorLabel={t("page.users.settings.subscription_link.error")}
22      copyIcon={SquareCode}
23      className="w-full"
24    />
25  );
26};