Идея
Добавить на граф возможность объединять связанные сущности в визуальные группы и сворачивать/раскрывать целые участки графа, чтобы большие паутины оставались читаемыми.
Что продумать
- ручное создание групп из выбранных сущностей;
- возможность группировать по типу, тегу, категории или другому признаку;
- свернутая группа отображается как один компактный узел/контейнер;
- у свернутой группы должно быть понятно количество скрытых сущностей и наличие внешних связей;
- связи между группой и внешними сущностями не должны теряться визуально;
- быстрое раскрытие группы обратно без потери расположения;
- сохранение состояния группировки между открытиями проекта;
- корректная работа вместе с поиском, фильтрами, фокусом и будущей сеткой/snap-to-grid;
- предусмотреть вложенные группы, но не усложнять первую версию без необходимости.
UX-цель
Пользователь должен иметь возможность превратить большой граф из десятков и сотен узлов в несколько понятных смысловых блоков, а затем раскрывать только тот фрагмент, с которым работает сейчас.
Acceptance criteria
- несколько сущностей можно объединить в одну группу;
- группу можно свернуть и раскрыть в один-два действия;
- внешние связи группы остаются понятными;
- позиции узлов после раскрытия не ломаются;
- группировка не мешает базовым действиям с графом: выбору, перемещению, поиску, фильтрации и открытию сущностей.