feat(tgu-ui): бронирование слотов — виртуализация, автоподбор покрытия, эргономичный мультивыбор
Вкладка «Слоты» масштабирована под ~20k слотов/мес без торможения: - wktCache: контур слота парсится один раз (кэш по slotKey), не на каждый ререндер сцены - виртуализация таблицы (@tanstack/react-virtual): в DOM только видимое окно строк - автоподбор покрытия: проброс coverageStrategy (GREEDY/CONTINUOUS) в request-cover, результат — преднабор брони (solver не дублируется, используется бэкендный) - мультивыбор: Shift-диапазон по отсортированному списку, «все сутки»/«видимые», счётчик охвата выбора - бронь крупных наборов чанками (по 200) + подтверждение выше 500 + прогресс - отмена расчёта (AbortController), мягкая подсказка перегруза карты - чистая логика выбора/чанкинга вынесена в slotSelection.ts + юнит-тесты Тесты: 70/70 (17 новых). tsc -b и vite build чисто.
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
"@nstart/ui": "^0.4.0",
|
||||
"@phosphor-icons/react": "^2.1.10",
|
||||
"@tanstack/react-query": "^5.96.1",
|
||||
"@tanstack/react-virtual": "^3.14.2",
|
||||
"d3-geo": "^3.1.1",
|
||||
"react": "^19.2.4",
|
||||
"react-dom": "^19.2.4",
|
||||
|
||||
Reference in New Issue
Block a user