From cbbfb1c6adfa82f353da7818410bfd28fa2f3e9f Mon Sep 17 00:00:00 2001 From: smanylov Date: Thu, 23 Apr 2026 12:55:21 +0700 Subject: [PATCH] add pagination for last cases lists --- src/app/styles/pages-styles.scss | 2 +- .../violations/violations-last-combined-cases.tsx | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/app/styles/pages-styles.scss b/src/app/styles/pages-styles.scss index 8332575..942f254 100644 --- a/src/app/styles/pages-styles.scss +++ b/src/app/styles/pages-styles.scss @@ -2579,7 +2579,7 @@ .violations-my-cases-section { background: white; border-radius: 20px; - padding: 32px; + padding: 32px 32px 16px; margin-bottom: 24px; box-shadow: 0 10px 40px rgba(99, 102, 241, 0.1); max-width: calc(100vw - var(--side-bar-width) - 60px); diff --git a/src/app/ui/violations/violations-last-combined-cases.tsx b/src/app/ui/violations/violations-last-combined-cases.tsx index d534ec0..0e1d984 100644 --- a/src/app/ui/violations/violations-last-combined-cases.tsx +++ b/src/app/ui/violations/violations-last-combined-cases.tsx @@ -4,7 +4,7 @@ import { useLastComplaints } from '@/app/hooks/react-query/useLastComplaints'; import { useLastCases } from '@/app/hooks/react-query/useLastCases'; import { formatDate, formatDateTime } from '@/app/lib/formatDate'; import { useTranslations } from 'next-intl'; -import { useEffect, useState } from 'react'; +import { useEffect, useState, useRef } from 'react'; import { Swiper, SwiperSlide } from 'swiper/react'; import { Navigation, Pagination } from 'swiper/modules'; @@ -17,6 +17,7 @@ type FilterState = { }; export default function ViolationsLastCombinedCases() { + const swiperRef = useRef(null); const t = useTranslations('Global'); const [filters, setFilters] = useState({ complaints: true, @@ -123,6 +124,13 @@ export default function ViolationsLastCombinedCases() { } }, loop: filteredItems.length > 3, + pagination: { + el: '.custom-pagination-container', // Кастомный контейнер для пагинации + clickable: true, + }, + onSwiper: (swiper: any) => { + swiperRef.current = swiper; + } }; const isLoading = (!dataComplaint || !dataCases); @@ -226,6 +234,9 @@ export default function ViolationsLastCombinedCases() { )} + {!isNothingSelected && filteredItems.length > 0 && ( +
+ )} ); } \ No newline at end of file