Как и где SuiteCRM компилирует файлы scss в тему?

В настоящее время я работаю над настройкой пользовательской страницы администратора для конкретной задачи, которую мне нужно выполнить, и для этого требуется некоторый индивидуальный стиль в теме. Я зашел в папку themes/SuiteP/css и нашел admin.scss. После внесения изменений я предположил, что Suite будет динамически компилировать актив, поскольку я в режиме разработчика; однако этого не произошло.

Я решил поискать в коде любое место, которое смогло бы найти, связанное с компиляцией этих файлов в *.css, но такого места не нашел.

Мой вопрос включает в себя выяснение того, где происходит эта компиляция и/или как она происходит. Прямо сейчас кажется, что мне нужно вручную скомпилировать эти активы, что кажется бессмысленным, потому что это просто дополнительный шаг, который я должен сделать вручную, делая использование SCSS менее полезным по сравнению с CSS.

Прямо сейчас моим решением, вероятно, будет добавление файла CSS, который не имеет ничего общего с каким-либо существующим конвейером, но если я смогу использовать существующую функциональность, это было бы здорово.


person tuxagon91    schedule 16.03.2017    source источник


Ответы (1)


Из-за устаревших проблем с платформой SugarCRM SuiteCRM загружает style.css для текущей темы. Sass работа над SuiteCRM находится в переходном периоде. В настоящее время это ручной процесс, но мы надеемся автоматизировать его в будущем.

Мы используем Sass, чтобы позволить разработчикам настраивать тему SuiteP. У меня есть проект github, который предоставляет пользовательский интерфейс для создания для вас переменных.scss. Я надеюсь, что это будет принято в будущем выпуске.

Итак, что касается вашего рабочего процесса, вам нужно заботиться только о style.css.

Если вы хотите внести свой вклад в проект SuiteCRM, вам нужно будет использовать файлы sass в themes/SuiteP/css/.

Однако, если это только для вашего экземпляра SuiteCRM, вам нужно создать style.css в файле custom/themes/SuiteP/css/style.css. Как вы это измените, зависит от вас.

Я бы порекомендовал вам использовать Sass для создания style.css.

Вы можете добиться этого, скопировав файл style.scss custom/themes/SuiteP/css, а затем добавив в файл следующее:

@import ../../../../themes/SuiteP/css/style.scss

Примечание. Возможно, я немного ошибся в пути

или используйте инструменты командной строки для включения каталога themes/SuiteP/css/

Подробнее см.: SASS: импортировать файл из другого каталога?

SuiteCRM должен взять на себя всю остальную работу. В SuiteCRM 7.9 есть изменение, которое отменяет $sugarcrm_version в пользу $suitecrm_version. Это повлияет на тему themef.php.

Подробнее см. https://github.com/salesagility/SuiteCRM/pull/3233/files

Надеюсь, это ответит на ваш вопрос.

person Daniel Samson    schedule 16.03.2017
comment
Спасибо. Это то, что я понял, но я хотел посмотреть, есть ли что-то, что я упустил. - person tuxagon91; 17.03.2017