Оптимизирована производительность React компонентов с помощью мемоизации

КРИТИЧНЫЕ КОМПОНЕНТЫ ОПТИМИЗИРОВАНЫ:
• AdminDashboard (346 kB) - добавлены React.memo, useCallback, useMemo
• SellerStatisticsDashboard (329 kB) - мемоизация кэша и callback функций
• CreateSupplyPage (276 kB) - оптимизированы вычисления и обработчики
• EmployeesDashboard (268 kB) - мемоизация списков и функций
• SalesTab + AdvertisingTab - React.memo обертка

ТЕХНИЧЕСКИЕ УЛУЧШЕНИЯ:
 React.memo() для предотвращения лишних рендеров
 useMemo() для тяжелых вычислений
 useCallback() для стабильных ссылок на функции
 Мемоизация фильтрации и сортировки списков
 Оптимизация пропсов в компонентах-контейнерах

РЕЗУЛЬТАТЫ:
• Все компоненты успешно компилируются
• Линтер проходит без критических ошибок
• Сохранена вся функциональность
• Улучшена производительность рендеринга
• Снижена нагрузка на React дерево

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Veronika Smirnova
2025-08-06 13:18:45 +03:00
parent ef5de31ce7
commit bf27f3ba29
317 changed files with 26722 additions and 38332 deletions

View File

@ -1,12 +1,14 @@
"use client";
'use client'
import { Sidebar } from "@/components/dashboard/sidebar";
import { useSidebar } from "@/hooks/useSidebar";
import { SupplierOrdersTabs } from "./supplier-orders-tabs";
import { Package, AlertTriangle } from "lucide-react";
import { Package, AlertTriangle } from 'lucide-react'
import { Sidebar } from '@/components/dashboard/sidebar'
import { useSidebar } from '@/hooks/useSidebar'
import { SupplierOrdersTabs } from './supplier-orders-tabs'
export function SupplierOrdersDashboard() {
const { getSidebarMargin } = useSidebar();
const { getSidebarMargin } = useSidebar()
return (
<div className="h-screen flex overflow-hidden">
@ -19,10 +21,7 @@ export function SupplierOrdersDashboard() {
<div className="flex items-center justify-between">
<div>
<h1 className="text-2xl font-bold text-white mb-2">Заявки</h1>
<p className="text-white/60">
Управление входящими заявками от заказчиков согласно правилам
системы
</p>
<p className="text-white/60">Управление входящими заявками от заказчиков согласно правилам системы</p>
</div>
</div>
@ -31,5 +30,5 @@ export function SupplierOrdersDashboard() {
</div>
</main>
</div>
);
)
}