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