From 7ae2787596070b0a4cd3b323cdbf463cc14a1f2c Mon Sep 17 00:00:00 2001 From: Fringg Date: Wed, 13 May 2026 11:26:03 +0300 Subject: [PATCH] fix(build): drop redundant dynamic import of branding api MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Vite warned that `api/branding.ts` was dynamically imported from `useAnalyticsCounters.ts` while also being statically imported by 18 other files. The mixed static+dynamic pattern blocked Vite from splitting the module into a separate chunk — the dynamic import was a no-op for bundle size and only added an extra Promise hop. The same file already had `import { brandingApi } from '../api/branding'` at the top. Inlined the storeYandexCid call to use it directly. --- src/hooks/useAnalyticsCounters.ts | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/hooks/useAnalyticsCounters.ts b/src/hooks/useAnalyticsCounters.ts index 2b5ee7f..f2e9f51 100644 --- a/src/hooks/useAnalyticsCounters.ts +++ b/src/hooks/useAnalyticsCounters.ts @@ -136,21 +136,21 @@ function syncYandexCid(counterId: string) { if (!token) return; // Route through brandingApi (apiClient) so baseURL, auth refresh, and // error handling all flow through the same interceptors as every other - // cabinet API call. - import('../api/branding').then(({ brandingApi: api }) => { - api - .storeYandexCid(cid) - .then(() => { - try { - localStorage.setItem(SENT_KEY, '1'); - } catch { - /* ignore */ - } - }) - .catch(() => { - /* swallow -- non-critical, will retry on next login */ - }); - }); + // cabinet API call. brandingApi уже импортирован статически — динамический + // import('../api/branding') ломал code-splitting (Vite warning о том, что + // модуль не может быть вынесен в отдельный chunk при mixed static+dynamic). + brandingApi + .storeYandexCid(cid) + .then(() => { + try { + localStorage.setItem(SENT_KEY, '1'); + } catch { + /* ignore */ + } + }) + .catch(() => { + /* swallow -- non-critical, will retry on next login */ + }); }); } catch { /* ignore */