Оптимизирована производительность 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:
@ -1,4 +1,4 @@
|
||||
import { gql } from "graphql-tag";
|
||||
import { gql } from 'graphql-tag'
|
||||
|
||||
// Запрос для получения заявок покупателей на возврат от Wildberries
|
||||
export const GET_WB_RETURN_CLAIMS = gql`
|
||||
@ -31,7 +31,7 @@ export const GET_WB_RETURN_CLAIMS = gql`
|
||||
total
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_ME = gql`
|
||||
query GetMe {
|
||||
@ -82,7 +82,7 @@ export const GET_ME = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_SERVICES = gql`
|
||||
query GetMyServices {
|
||||
@ -96,7 +96,7 @@ export const GET_MY_SERVICES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_SUPPLIES = gql`
|
||||
query GetMySupplies {
|
||||
@ -119,7 +119,7 @@ export const GET_MY_SUPPLIES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_FULFILLMENT_SUPPLIES = gql`
|
||||
query GetMyFulfillmentSupplies {
|
||||
@ -142,7 +142,7 @@ export const GET_MY_FULFILLMENT_SUPPLIES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_SELLER_SUPPLIES_ON_WAREHOUSE = gql`
|
||||
query GetSellerSuppliesOnWarehouse {
|
||||
@ -180,7 +180,7 @@ export const GET_SELLER_SUPPLIES_ON_WAREHOUSE = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_LOGISTICS = gql`
|
||||
query GetMyLogistics {
|
||||
@ -200,7 +200,7 @@ export const GET_MY_LOGISTICS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_LOGISTICS_PARTNERS = gql`
|
||||
query GetLogisticsPartners {
|
||||
@ -214,7 +214,7 @@ export const GET_LOGISTICS_PARTNERS = gql`
|
||||
emails
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_PRODUCTS = gql`
|
||||
query GetMyProducts {
|
||||
@ -249,7 +249,7 @@ export const GET_MY_PRODUCTS = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_WAREHOUSE_PRODUCTS = gql`
|
||||
query GetWarehouseProducts {
|
||||
@ -283,7 +283,7 @@ export const GET_WAREHOUSE_PRODUCTS = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для контрагентов
|
||||
export const SEARCH_ORGANIZATIONS = gql`
|
||||
@ -309,7 +309,7 @@ export const SEARCH_ORGANIZATIONS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_COUNTERPARTIES = gql`
|
||||
query GetMyCounterparties {
|
||||
@ -331,7 +331,7 @@ export const GET_MY_COUNTERPARTIES = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_SUPPLY_SUPPLIERS = gql`
|
||||
query GetSupplySuppliers {
|
||||
@ -347,7 +347,7 @@ export const GET_SUPPLY_SUPPLIERS = gql`
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_ORGANIZATION_LOGISTICS = gql`
|
||||
query GetOrganizationLogistics($organizationId: ID!) {
|
||||
@ -360,7 +360,7 @@ export const GET_ORGANIZATION_LOGISTICS = gql`
|
||||
description
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_INCOMING_REQUESTS = gql`
|
||||
query GetIncomingRequests {
|
||||
@ -397,7 +397,7 @@ export const GET_INCOMING_REQUESTS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_OUTGOING_REQUESTS = gql`
|
||||
query GetOutgoingRequests {
|
||||
@ -434,7 +434,7 @@ export const GET_OUTGOING_REQUESTS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_ORGANIZATION = gql`
|
||||
query GetOrganization($id: ID!) {
|
||||
@ -458,7 +458,7 @@ export const GET_ORGANIZATION = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для сообщений
|
||||
export const GET_MESSAGES = gql`
|
||||
@ -501,7 +501,7 @@ export const GET_MESSAGES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_CONVERSATIONS = gql`
|
||||
query GetConversations {
|
||||
@ -538,7 +538,7 @@ export const GET_CONVERSATIONS = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_CATEGORIES = gql`
|
||||
query GetCategories {
|
||||
@ -549,7 +549,7 @@ export const GET_CATEGORIES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_ALL_PRODUCTS = gql`
|
||||
query GetAllProducts($search: String, $category: String) {
|
||||
@ -593,7 +593,7 @@ export const GET_ALL_PRODUCTS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запрос товаров конкретной организации (для формы создания поставки)
|
||||
export const GET_ORGANIZATION_PRODUCTS = gql`
|
||||
@ -638,7 +638,7 @@ export const GET_ORGANIZATION_PRODUCTS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_CART = gql`
|
||||
query GetMyCart {
|
||||
@ -692,7 +692,7 @@ export const GET_MY_CART = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_FAVORITES = gql`
|
||||
query GetMyFavorites {
|
||||
@ -732,7 +732,7 @@ export const GET_MY_FAVORITES = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для сотрудников
|
||||
export const GET_MY_EMPLOYEES = gql`
|
||||
@ -767,7 +767,7 @@ export const GET_MY_EMPLOYEES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_EMPLOYEE = gql`
|
||||
query GetEmployee($id: ID!) {
|
||||
@ -796,7 +796,7 @@ export const GET_EMPLOYEE = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_EMPLOYEE_SCHEDULE = gql`
|
||||
query GetEmployeeSchedule($employeeId: ID!, $year: Int!, $month: Int!) {
|
||||
@ -811,7 +811,7 @@ export const GET_EMPLOYEE_SCHEDULE = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_MY_WILDBERRIES_SUPPLIES = gql`
|
||||
query GetMyWildberriesSupplies {
|
||||
@ -842,7 +842,7 @@ export const GET_MY_WILDBERRIES_SUPPLIES = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для получения услуг и расходников от конкретных организаций-контрагентов
|
||||
export const GET_COUNTERPARTY_SERVICES = gql`
|
||||
@ -857,7 +857,7 @@ export const GET_COUNTERPARTY_SERVICES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_COUNTERPARTY_SUPPLIES = gql`
|
||||
query GetCounterpartySupplies($organizationId: ID!) {
|
||||
@ -875,20 +875,12 @@ export const GET_COUNTERPARTY_SUPPLIES = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Wildberries запросы
|
||||
export const GET_WILDBERRIES_STATISTICS = gql`
|
||||
query GetWildberriesStatistics(
|
||||
$period: String
|
||||
$startDate: String
|
||||
$endDate: String
|
||||
) {
|
||||
getWildberriesStatistics(
|
||||
period: $period
|
||||
startDate: $startDate
|
||||
endDate: $endDate
|
||||
) {
|
||||
query GetWildberriesStatistics($period: String, $startDate: String, $endDate: String) {
|
||||
getWildberriesStatistics(period: $period, startDate: $startDate, endDate: $endDate) {
|
||||
success
|
||||
message
|
||||
data {
|
||||
@ -903,7 +895,7 @@ export const GET_WILDBERRIES_STATISTICS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_WILDBERRIES_CAMPAIGN_STATS = gql`
|
||||
query GetWildberriesCampaignStats($input: WildberriesCampaignStatsInput!) {
|
||||
@ -974,7 +966,7 @@ export const GET_WILDBERRIES_CAMPAIGN_STATS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_WILDBERRIES_CAMPAIGNS_LIST = gql`
|
||||
query GetWildberriesCampaignsList {
|
||||
@ -995,7 +987,7 @@ export const GET_WILDBERRIES_CAMPAIGNS_LIST = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_EXTERNAL_ADS = gql`
|
||||
query GetExternalAds($dateFrom: String!, $dateTo: String!) {
|
||||
@ -1016,7 +1008,7 @@ export const GET_EXTERNAL_ADS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Админ запросы
|
||||
export const ADMIN_ME = gql`
|
||||
@ -1031,7 +1023,7 @@ export const ADMIN_ME = gql`
|
||||
updatedAt
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const ALL_USERS = gql`
|
||||
query AllUsers($search: String, $limit: Int, $offset: Int) {
|
||||
@ -1057,7 +1049,7 @@ export const ALL_USERS = gql`
|
||||
hasMore
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_SUPPLY_ORDERS = gql`
|
||||
query GetSupplyOrders {
|
||||
@ -1117,7 +1109,7 @@ export const GET_SUPPLY_ORDERS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
export const GET_PENDING_SUPPLIES_COUNT = gql`
|
||||
query GetPendingSuppliesCount {
|
||||
@ -1130,7 +1122,7 @@ export const GET_PENDING_SUPPLIES_COUNT = gql`
|
||||
total
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для кеша склада WB
|
||||
export const GET_WB_WAREHOUSE_DATA = gql`
|
||||
@ -1152,15 +1144,11 @@ export const GET_WB_WAREHOUSE_DATA = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запросы для кеша статистики продаж
|
||||
export const GET_SELLER_STATS_CACHE = gql`
|
||||
query GetSellerStatsCache(
|
||||
$period: String!
|
||||
$dateFrom: String
|
||||
$dateTo: String
|
||||
) {
|
||||
query GetSellerStatsCache($period: String!, $dateFrom: String, $dateTo: String) {
|
||||
getSellerStatsCache(period: $period, dateFrom: $dateFrom, dateTo: $dateTo) {
|
||||
success
|
||||
message
|
||||
@ -1186,7 +1174,7 @@ export const GET_SELLER_STATS_CACHE = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
||||
// Запрос для получения статистики склада фулфилмента с изменениями за сутки
|
||||
export const GET_FULFILLMENT_WAREHOUSE_STATS = gql`
|
||||
@ -1224,4 +1212,4 @@ export const GET_FULFILLMENT_WAREHOUSE_STATS = gql`
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
`
|
||||
|
Reference in New Issue
Block a user