Компилятор LESS/SASS/SCSS в css файлы


После установки модуля из Marketplace в системе будет доступен компонент olegpro:olegpro.csscompiler. Его нужно подключить в header.php шаблона сайта и настроить.

Пример вызова компонента:

<?$APPLICATION->IncludeComponent(
    "olegpro:olegpro.csscompiler",
    "",
    array(
        "PATH" => "/bitrix/templates/eshop_adapt_blue/scss/",
        "FILES" => array( 
            0 => "style.scss",
        ),
        "PATH_CSS" => "/bitrix/templates/eshop_adapt_blue/", 
        "CLASS_HANDLER" => "\\Olegpro\\Csscompiler\\SCSSCompiler", 
        "USE_SETADDITIONALCSS" => "Y",
        "REMOVE_OLD_CSS_FILES" => "Y", 
        "TARGET_FILE_MASK" => "styles_%s.css" 
    ),
    false,
    array(
        "HIDE_ICONS" => "Y"
    )
);?>

Чтобы реализовать компиляцию любым другим препроцессором, нужно написать класс, например, LessCompiler(пример класс SCSSCompiler).
Унаследовать его от класса \Olegpro\Csscompiler\Compiler, реализовать в нем метод toCss($file) и сохранить в папке lib модуля olegpro.csscompiler под одноименным названием, в нижнем регистре.
И в вызове компонента параметром CLASS_HANDLER указать \Olegpro\Csscompiler\LessCompiler.