Implement community sharing
Что сделано
Реализован функционал «Поделиться» для сообщества.
- Добавлено модальное окно, которое открывается по кнопке с плюсом возле подписчиков сообщества.
- Добавлен выбор способа отправки: «На своей странице» или «В личном сообщении».
- При выборе личного сообщения отображаются подписчики сообщества.
- Реализованы поиск подписчиков по имени и фамилии, тултип и выбор получателя по аватарке.
- Добавлена валидация обязательного выбора получателя.
- При изменении поискового запроса ранее выбранный получатель сбрасывается.
- Комментарий объединяется с автоматически сформированной ссылкой на сообщество.
- Реализовано создание поста на личной странице.
- Реализованы поиск существующего чата, создание нового чата и отправка сообщения через WebSocket.
- Добавлены состояния отправки и блокировка повторного взаимодействия во время запроса.
- Реализовано отображение кликабельных ссылок на сообщество в постах и сообщениях.
- Скорректированы цвета ссылок для входящих и исходящих сообщений.
Проверено
- создание поста с комментарием и без комментария;
- отправка сообщения в существующий чат;
- создание нового чата и отправка сообщения;
- валидация при отсутствии выбранного получателя;
- сброс получателя при изменении поиска;
- закрытие модального окна после подтверждения WebSocket;
- отображение ошибки при отключённом WebSocket;
- отображение и переход по ссылкам в постах и сообщениях.