🐛 fix(deps): Update clipboard

This commit is contained in:
web@ppanel 2024-12-07 23:15:14 +07:00
parent a3b45b455d
commit 55727103b8
6 changed files with 2748 additions and 7940 deletions

View File

@ -11,6 +11,7 @@ import { toast } from '@shadcn/ui/lib/sonner';
import { Copy } from 'lucide-react';
import { useTranslations } from 'next-intl';
import { useState } from 'react';
import { CopyToClipboard } from 'react-copy-to-clipboard';
export default function Page() {
const t = useTranslations('affiliate');
@ -44,18 +45,19 @@ export default function Page() {
<code className='bg-muted rounded px-2 py-1 text-2xl font-bold'>
{user?.refer_code}
</code>
<Button
variant='secondary'
size='sm'
className='gap-2'
onClick={() => {
navigator.clipboard.writeText(`${location.origin}/auth?invite=${user?.refer_code}`);
toast.success(t('copySuccess'));
<CopyToClipboard
text={`${location.origin}/auth?invite=${user?.refer_code}`}
onCopy={(text, result) => {
if (result) {
toast.success(t('copySuccess'));
}
}}
>
<Copy className='h-4 w-4' />
{t('copyInviteLink')}
</Button>
<Button variant='secondary' size='sm' className='gap-2'>
<Copy className='h-4 w-4' />
{t('copyInviteLink')}
</Button>
</CopyToClipboard>
</div>
</CardContent>
</Card>

View File

@ -32,6 +32,7 @@ import { useState } from 'react';
import useGlobalStore from '@/config/use-global';
import { getStat } from '@/services/common/common';
import CopyToClipboard from 'react-copy-to-clipboard';
import Renewal from '../order/renewal';
import ResetTraffic from '../order/reset-traffic';
import Subscribe from '../subscribe/page';
@ -198,16 +199,24 @@ export default function Page() {
<CardTitle className='text-sm font-medium'>
{t('subscriptionUrl')} {index + 1}
</CardTitle>
<span
className='text-primary hover:bg-accent mr-4 flex cursor-pointer rounded p-2 text-sm'
onClick={(e) => {
e.stopPropagation();
handleCopy(url);
<CopyToClipboard
text={url}
onCopy={(text, result) => {
if (result) {
toast.success(t('copySuccess'));
}
}}
>
<Icon icon='uil:copy' className='mr-2 size-5' />
{t('copy')}
</span>
<span
className='text-primary hover:bg-accent mr-4 flex cursor-pointer rounded p-2 text-sm'
onClick={(e) => {
e.stopPropagation();
}}
>
<Icon icon='uil:copy' className='mr-2 size-5' />
{t('copy')}
</span>
</CopyToClipboard>
</div>
</AccordionTrigger>
<AccordionContent>

View File

@ -8,6 +8,7 @@ import { toast } from '@shadcn/ui/lib/sonner';
import { Sidebar, SidebarContent } from '@shadcn/ui/sidebar';
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@shadcn/ui/tooltip';
import { useTranslations } from 'next-intl';
import CopyToClipboard from 'react-copy-to-clipboard';
import Recharge from './order/recharge';
export function SidebarRight({ ...props }: React.ComponentProps<typeof Sidebar>) {
@ -31,18 +32,18 @@ export function SidebarRight({ ...props }: React.ComponentProps<typeof Sidebar>)
<TooltipProvider>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant='ghost'
className='size-5 p-0'
onClick={() => {
navigator.clipboard.writeText(
`${location.origin}/auth?invite=${user?.refer_code}`,
);
toast.success(t('copySuccess'));
<CopyToClipboard
text={`${location.origin}/auth?invite=${user?.refer_code}`}
onCopy={(text, result) => {
if (result) {
toast.success(t('copySuccess'));
}
}}
>
<Icon icon='mdi:content-copy' className='text-primary text-2xl' />
</Button>
<Button variant='ghost' className='size-5 p-0'>
<Icon icon='mdi:content-copy' className='text-primary text-2xl' />
</Button>
</CopyToClipboard>
</TooltipTrigger>
<TooltipContent>{t('copyInviteLink')}</TooltipContent>
</Tooltip>

View File

@ -64,7 +64,6 @@ export default async function RootLayout({ children }: { children: React.ReactNo
try {
config = await getGlobalConfig({ skipErrorHandler: true }).then((res) => res.data.data);
console.log(config);
} catch (error) {
/* empty */
}

View File

@ -31,6 +31,7 @@
"qrcode.react": "^4.1.0",
"radash": "^12.1.0",
"react": "rc",
"react-copy-to-clipboard": "^5.1.0",
"react-dom": "rc",
"react-turnstile": "^1.1.4",
"universal-cookie": "^7.2.2",
@ -41,6 +42,7 @@
"@repo/typescript-config": "workspace:*",
"@types/node": "^22.10.0",
"@types/react": "^18.3.12",
"@types/react-copy-to-clipboard": "^5.0.7",
"@types/react-dom": "^18.3.1",
"typescript": "^5.7.2"
}

10617
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff