sf-community
Назначение
Форум в виде трёх отдельных вкладок: разделы, темы одного раздела и обсуждение
одной темы. Открытие строки открывает вкладку рядом с текущей — нет экрана,
на котором одновременно отображались бы дерево разделов, таблица тем и ветка.
Граница ответственности
Отвечает за навигацию по форуму и экран темы. Сами сообщения принадлежат, который браузер читает напрямую; вложения принадлежат rp-threadsrp-files
через сообщение . Участники, роли и тикеты находятся за пределами этогоlink
модуля.
Как создаётся тема
в createTopic создаёт идентификаторы темы и ветки и фиксируетrp-community
автора из токена; затем эта поверхность регистрирует ветку и записывает
первый пост в . Разделение намеренное: идентификаторы, которыеrp-threads
может выбрать клиент, можно украсть, а вызов одним репозиторием другого — это
то, что запрещает архитектура.
Обновления в реальном времени
Ответы поступают через бизнес-канал Fujin () с помощью библиотекиpushrouter, а не посредством опроса. Push-сообщение содержит толькоthreads-state
идентификаторы; текст перечитывается из , где применяется предикатrp-threads
чтения.
Прямые зависимости модуля
,front-core,g-community,g-threads,signal-channelthreads-state
Членство в решении
communications
Исходный код
modules/surfaces/communications/sf-community