Resolve alias webpack helper

Плагин для Payload, который добавляет алиасы в webpack resolve.alias, чтобы заглушить серверные модули при сборке админки.

Сообщество 7 1,9 тыс./нед MIT v0.1.0

Установка

pnpm add payload-plugin-resolve-alias

Описание

Плагин решает повторяющуюся ошибку сборки админки Payload, когда webpack 5 не может разрешить Node-модули вроде `util`, `express`, `express-session`, `passport` и `nodemailer`. Webpack 5 больше не полифилит node core modules по умолчанию, и сборка падает с сообщением "Can't resolve". Плагин добавляет записи в `resolve.alias`, указывая webpack создавать пустые модули вместо попытки подключить серверные зависимости для браузера. Плагин подключается через функцию `admin.webpack` в объекте конфигурации Payload. Сначала выполняется ваш текущий обработчик конфигурации, затем плагин добавляет алиасы, так что ранее заданные настройки сохраняются. Функция `resolveAlias` принимает аргументы разных форм: объект вида `{ module: false }`, массив строк с именами модулей или отдельные строки. Falsy-аргументы пропускаются, поэтому можно передавать условные алиасы в зависимости от переменных окружения. В комплекте идёт константа `serverOnlyModules` со списком типичных проблемных модулей: `express`, `express-session`, `nodemailer`, `passport`, `util`. Плагин написан на TypeScript и ориентирован на Payload 1.x. Он не добавляет поля, коллекции, хуки или эндпоинты. Единственное ограничение: плагин выбрасывает ошибку, если `resolve.alias` в конфиге webpack определён как массив, а не объект.

О пакете

Имя пакета
payload-plugin-resolve-alias
Последняя версия
0.1.0
Размер
7 кБ
Лицензия
MIT
Загрузок в неделю
1,9 тыс.
Последняя публикация
5 нояб. 2022 г.