Collaborative Comments

Добавляет комментарии на уровне документов и полей в админку Payload, с упоминаниями, email-уведомлениями, разрешением, мультитенантностью и фильтрацией по локали.

Сообщество 26 3,1 тыс./нед MIT v1.11.3

Установка

pnpm add @focus-reactive/payload-plugin-comments

Описание

Плагин встраивает систему комментариев в админ-панель Payload v3 и предоставляет три рабочих поверхности. На метке каждого поля появляется бейдж со счётчиком, который открывает всплывающее окно для добавления комментария. Боковой drawer на уровне документа показывает все комментарии, привязанные к текущему документу. Глобальная кнопка в шапке открывает drawer со всеми комментариями во всех коллекциях и глобалах. Сами комментарии хранятся в автоматически создаваемой, скрытой из сайдбара коллекции `comments` (плюс коллекция `commentReads`). Каждая запись хранит `collectionSlug` или `globalSlug`, `documentId`, `fieldPath` в dot-нотации, `locale`, автора, упоминания и статус резолвации. Регистрация выполняется через стандартный вызов `commentsPlugin()`. Плагин добавляет admin-провайдеры, кнопку в шапку и кастомные компоненты меток полей в конфиг Payload, а также мерджит свои i18n-переводы в существующий namespace. Для SQL-адаптеров потребуется миграция новой коллекции, для MongoDB нет. Конфигурация позволяет указать, какое поле отображать как заголовок документа для каждой коллекции, переопределить `access`, `hooks` и `fields` коллекции `comments`, а также задать `usernameFieldPath` в виде dot-нотации для коллекции `users`. Упоминания работают через автодополнение по коллекции `users`, токены сохраняются как `@(userId)`. Упомянутым пользователям уходят email-уведомления через Resend. Для включения отправки задаются переменные окружения `RESEND_API_KEY` и `RESEND_FROM_EMAIL`; если они не заданы, отправка тихо пропускается, но упоминания продолжают работать. Комментарии можно закрывать и открывать заново, в drawer на уровне документа есть фильтры: Open, Resolved и Mentioned. Мультитенантность опциональна и реализуется через `@payloadcms/plugin-multi-tenant`: `collectionSlug` тенанта и поле документа с идентификатором тенанта конфигурируются. Комментарии на уровне поля привязаны к локали, а на уровне документа отображаются во всех локалях. При удалении родительского документа его комментарии удаляются автоматически через collection hook. UI обновляется оптимистично: новые комментарии появляются ещё до подтверждения сервера.

О пакете

Имя пакета
@focus-reactive/payload-plugin-comments
Последняя версия
1.11.3
Размер
625 кБ
Лицензия
MIT
Загрузок в неделю
3,1 тыс.
Последняя публикация
12 окт. 2026 г.

Ещё от focusreactive

Профиль автора