Laravel-mix. Возможна ли раздельная сборка ресурсов для фронта и админки?
Здравствуйте.
Есть публичная часть сайта (далее frontend) и административная (backend).
Ресурсы (css, js) собираются через laravel-mix. Микс шестой версии.
На выходе хочу получить примерно такую структуру директорий: public/assets/frontend/js/ - с файлами, относящимися к фронту, и public/assets/backend/js/ - с файлами бэка.
При этом, ключевой момент, чтобы для фронта и бэка генерировались собственные manifest.js и vendor.js.
К сожалению, никак не могу добиться такого результата.
Наиболее рабочий вариант, который у меня получился, это разбить общий webpack.mix.js на отдельные webpack.mix.frontend.js и webpack.mix.backend.js. А в package.json прописать отдельные скрипты для сборки с явным указанием --mix-config: --mix-config webpack.mix.frontend и --mix-config webpack.mix.backend соответственно.
Такое даже работает. Но при этом ожидаемо переписывается mix-manifest.json, что мне не особо подходит. Имею ввиду, что если собираю ресурсы для бэка, то в mix-manifest.json будут только они, а записи для фронта теряются.
Вообще, насколько реально осуществить то, что я хочу, в рамках laravel-mix?
по поводу разных манифестов только одна мысль — переписать конфигурацию webpack, а именно настройку плагина Manifest. Т.е. через метод API .override() попробовать задавать разные имена для манифестов.