SHA256
Связи (pixel-aquarium, 10.06): партия 2 (UI-фишки) — поиск, хлебные крошки, бейджи, цветовые кластеры
Всё в лаборатории (вариант 2: реальный путь /network-view не трогаем). - Поиск + телепорт: строка .fg-search; Enter → graph.findNode(имя) → камера летит к узлу (dive в «Вселенной», иначе перецентр). - Хлебные крошки: .fg-breadcrumb «Иван › Нина › Ада» (движок шлёт onDiveChange(path), API getDivePath); клик по корню — полный сброс, по предку — навигация на его уровень. - Бейдж числа связей: .fg-node-badge (degreeById → updateBadges; у центра — число связей 1-го уровня). - Цветовые кластеры: мягкая аура узла по типу связи (CSS is-family/friend/business/contact). Автопроверки расширены до 17 ассертов (добавлены поиск/крошки/бейдж) — прогон 17/17 PASS. Фикс: TDZ breadcrumbEl (объявлен до createForceGraph, т.к. onDiveChange вызывается при монтировании). Бамп client.version → 1.2.149. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -81,6 +81,27 @@ export async function runNetworkSelfTest(graph, deepChipEl) {
|
||||
check('D1 точки 3-го уровня → аватарки (LOD)', allFull, `full: ${t3.filter((n) => n.lod === 'full').length}/${t3.length}`);
|
||||
}
|
||||
|
||||
// === Тест F: поиск по имени находит узел (для строки поиска + телепорта) ===
|
||||
const named = st().nodes.find((n) => n.tier === 1 && n.id !== st().focusId);
|
||||
if (named && typeof graph.findNode === 'function') {
|
||||
const byId = graph.findNode(named.id);
|
||||
check('F1 поиск находит узел по логину', byId && byId.id === named.id, `найдено: ${byId && byId.id}`);
|
||||
}
|
||||
|
||||
// === Тест G: хлебные крошки — путь focus → … → цель (мы сейчас в t2withKids) ===
|
||||
if (typeof graph.getDivePath === 'function' && t2withKids) {
|
||||
const path = graph.getDivePath();
|
||||
const okPath = path.length >= 2 && path[0].isFocus && path[path.length - 1].id === t2withKids.id;
|
||||
check('G1 хлебные крошки строят путь к цели', okPath, `путь: ${path.map((p) => p.name).join(' › ')}`);
|
||||
}
|
||||
|
||||
// === Тест H: бейдж числа связей виден и числовой (DOM) ===
|
||||
if (typeof document !== 'undefined') {
|
||||
const fb = document.querySelector('.fg-node.is-focus .fg-node-badge');
|
||||
const fbOk = fb && !fb.hidden && Number(fb.textContent) > 0;
|
||||
check('H1 бейдж числа связей на центре', !!fbOk, `центр: ${fb ? fb.textContent : 'нет'}`);
|
||||
}
|
||||
|
||||
// === Тест E: выход — ВСЕ узлы возвращают 100% яркости, зум отъезжает ===
|
||||
graph.exitDive();
|
||||
graph.pumpForTest();
|
||||
|
||||
Reference in New Issue
Block a user