Webform объявляет множество библиотек, которые может использовать в webform.libraries.yml. Но устанавливать их предлагается так или иначе самостоятельно, т.к. их наличие ожидается в папке /libraries.
Использование merge плагина
Помимо описания списка библиотек для экосистемы Drapal, webform имеет описание библиотечных модулей для менеджера зависимостей — composer.libraries.json.
Потому одно из решений по развертыванию (скачиванию и поддержанию зависимостей) заключается в том, чтобы подключить это описание к основному composer.json проекта на Drupal.
Для этого нужно добавить плагин composer-merge-plugin и настроить его:
1 |
composer require wikimedia/composer-merge-plugin |
Настройка заключается в добавлении параметров в раздел «extra» файла composer.json:
1 2 3 4 5 6 7 |
"extra": { "merge-plugin": { "include": [ "web/modules/contrib/webform/composer.libraries.json" ] }, ... |
Теперь библиотеки будут устанавливаться совместо с прочими пакетами проекта. Это удобно, но Drupal считает плагин устаревшим подходом, и некоторые хостинги (например, pantheon.io) будут вставлять вам палки в колеса.
Установка через drush
Потому есть еще один подход — скачивание всех нужных библиотек командой drush. Выглядит она следующим образом:
1 |
drush webform:libraries:download |
И выполняет ровно то для чего сделана — скачивает все описанные webform библиотеки, размещая их в папке /libraries. Понятно, что отслежение обновлений придется производить в ручную. Например, если вы обновили webform, нужно скорее всего и запустить вновь команду для скачивания библиотек.