diff --git a/package.json b/package.json index cf8a32c..2e90991 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "no-copy-frontend", - "version": "0.34.0", + "version": "0.35.0", "private": true, "scripts": { "dev": "next dev -p 2999", diff --git a/src/app/[locale]/pages/marking-document/page.tsx b/src/app/[locale]/pages/marking-document/page.tsx index ce05821..dc51914 100644 --- a/src/app/[locale]/pages/marking-document/page.tsx +++ b/src/app/[locale]/pages/marking-document/page.tsx @@ -1,49 +1,29 @@ -import ProtectionSummary from '@/app/ui/marking-page/protection-summary'; import FilesTable from '@/app/ui/dashboard/files-table'; -import PageTitle from '@/app/ui/page-title'; import UploadSectionFile from '@/app/components/UploadSectionFile'; import { getAllowedFilesExtensions } from '@/app/actions/fileUpload'; -import { StackedBarChart } from '@/app/components/StackedBarChart'; import PageTitleColorFrame from '@/app/ui/page-title-color-frame'; import ProtectionStatistic from '@/app/ui/marking-page/new/protection-statistic'; - -const data = [ - { - name: 'File A', - checks: 4, - violations: 2 - }, - { - name: 'File B', - checks: 8, - violations: 4 - }, - { - name: 'File C', - checks: 2, - violations: 1 - }, - { - name: 'File D', - checks: 7, - violations: 1 - }, - { - name: 'File E', - checks: 5, - violations: 4 - }, - { - name: 'File F', - checks: 5, - violations: 3 - } -]; +import { fetchReferralUserStats } from '@/app/actions/referralsActions'; +import { getQueryClient } from '@/app/providers/getQueryClient'; export default async function Page() { const FILE_TYPE = "document"; const { file_extension, max_file_size } = await getAllowedFilesExtensions(FILE_TYPE); + const queryClient = getQueryClient(); + + try { + const data = await queryClient.fetchQuery({ + queryKey: ['referralUserStats'], + queryFn: fetchReferralUserStats, + }); + if (data?.referralLink) { + return null; + } + } catch (error) { + console.error('Ошибка загрузки статистики рефералов:', error); + } + return (
-{/*
- -
- -
-
*/} - +
- ) + ); } \ No newline at end of file diff --git a/src/app/actions/referralsActions.ts b/src/app/actions/referralsActions.ts index b1bfdc5..5b40846 100644 --- a/src/app/actions/referralsActions.ts +++ b/src/app/actions/referralsActions.ts @@ -27,7 +27,10 @@ export async function fetchReferralsLevels() { let parsed = await response.json(); if (parsed.message_code === 0) { - return parsed.message_body.length ? parsed.message_body : parsed; + return { + referrals: parsed.message_body, + error: null + } } else { throw parsed; } @@ -37,6 +40,7 @@ export async function fetchReferralsLevels() { } catch (error) { return { + referrals: [], error: error } } diff --git a/src/app/ui/navigation/nav-link-dropdown.tsx b/src/app/ui/navigation/nav-link-dropdown.tsx index 6dea497..7c899ad 100644 --- a/src/app/ui/navigation/nav-link-dropdown.tsx +++ b/src/app/ui/navigation/nav-link-dropdown.tsx @@ -5,7 +5,9 @@ import { usePathname } from 'next/navigation'; import { useTranslations } from 'next-intl'; import { useSideMenuStore } from '@/app/stores/sideMenuStore'; -export default function DropDownList() { +export default function DropDownList( + { referralLink }: { referralLink: string | null } +) { const pathname = usePathname().replace('/en/', '/').replace('/ru/', '/'); const [dropDownExpanded, setDropDownExpanded] = useState(false); const t = useTranslations('Global'); @@ -17,19 +19,19 @@ export default function DropDownList() { const links = [ { - name: t('photo-marking'), + name: 'photo-marking', href: '/pages/marking-images' }, { - name: t('video-marking'), + name: 'video-marking', href: '/pages/marking-video' }, { - name: t('audio-marking'), + name: 'audio-marking', href: '/pages/marking-audio' }, { - name: t('document-marking'), + name: 'document-marking', href: '/pages/marking-document' } ]; @@ -54,6 +56,9 @@ export default function DropDownList() {