Janitor
Находит осиротевшие файлы и документы без ссылок в Payload и удаляет только те записи, которые вы одобрили.
Установка
pnpm add @seshuk/payload-plugin-janitor Описание
Janitor ищет в проекте Payload файлы и документы, на которые больше никто не ссылается: объекты в хранилище, оставшиеся после удаления документа, битые загрузки и записи без связей с другими документами. Каждый найденный кандидат записывается в коллекцию `findings`, поэтому список просматривает человек в админке до того, как что-либо будет удалено. Удаление затрагивает только записи, помеченные как approved. Плагин добавляет в конфиг коллекции `findings` и `runs` (запуски сканирования) и оборачивает существующие upload-коллекции, чтобы отслеживать, какие файлы на них ссылаются. Задача janitor регистрируется в очереди jobs Payload и запускает сканирование по расписанию. Если включены опции админки, в ней появляются виджет на дашборде и подсветка полей. Сканирование можно запустить из кода: `runJanitor` и `startJanitor` запускают проверку, `scanStorage` проверяет хранилище, `purgeApproved` удаляет одобренные записи, а `buildUsageIndex` и `findUsage` помогают найти, где используется конкретный файл. Доступны адаптеры для S3, Cloudflare R2, Bunny, Azure Blob, Google Cloud Storage, UploadThing, Vercel Blob и локального диска. Для адаптера S3 нужно установить пакет `@aws-sdk/client-s3`. Плагин требует `payload` и `@payloadcms/ui` в диапазоне 4.0.0-beta или ^4.0.0, а также React 19. Параметр `enabled: false` оставляет схему и переводы, но отключает работу плагина во время выполнения. Текущая версия 1.0.0-beta.1 распространяется по лицензии MIT и требует Node 24.15 или новее. Имена опций и поведение могут измениться до стабильного релиза.
О пакете
- Имя пакета
@seshuk/payload-plugin-janitor- Последняя версия
0.1.0- Размер
- 1,6 МБ
- Лицензия
- MIT
- Последняя публикация
- 14 окт. 2026 г.
Ещё от maximseshuk
Профиль автораSitemap
Строит sitemap.xml из коллекций Payload и статических страниц и хранит файлы в любом storage adapter.
Shared plugin tooling
Dev-зависимость с общими конфигами lint, форматирования, TypeScript, сборки, тестовой БД и релиза для плагинов Payload.
OpenAPI
Создает спецификации OpenAPI 3.0/3.1/3.2 из конфигураций Payload CMS.
Bunny Storage Adapter
Адаптер хранилища Bunny.net для Payload CMS 3.x с дозагрузкой TUS, интеграцией Bunny Stream и очисткой кэша CDN.
Media Preview
Предварительный просмотр изображений, видео, аудио и документов в админ-панели Payload CMS.
Похожие плагины
Ещё в категории «Хранилище»Upstash KV adapter
Интегрирует Upstash в качестве хранилища ключей и значений для Payload.
Cloudinary storage adapter
Интеграция Cloudinary с Payload CMS для управления медиафайлами.
ISR revalidation
Интегрирует в Payload CMS механизм повторной проверки кеша в стиле ISR для Next.js.
Cloud Storage
Плагин для интеграции облачного хранилища в Payload CMS.
Nextcloud
Адаптер хранилища для Payload 3, загружающий файлы в Nextcloud по протоколу WebDAV с опциональным созданием публичных ссылок через OCS API.