Пакет предоставляет следующие технологии:
@import
'ов из исходных CSS-файлов.Собирает исходные CSS-файлы блоков со стилями.
Результатом сборки является CSS-файл. Для обработки итогового CSS используется CSS-построцессор postcss.
Тип: String
. По умолчанию: ?.css
.
Имя файла, куда будет записан результат сборки необходимых .css
-файлов проекта.
Тип: String
. По умолчанию: ?.files
.
Имя таргета, откуда будет доступен список исходных файлов для сборки. Список файлов предоставляет технология files пакета enb-bem-techs.
Тип: String | String[]
. По умолчанию: ['css']
.
Суффиксы, по которым отбираются файлы стилей для дальнейшей сборки.
Тип: String | Boolean
. По умолчанию: false
.
Построение карт кода (sourcemap) с информацией об исходных файлах.
Допустимые значения:
.map
. base64
. Тип: Object | Boolean
. По умолчанию: false
.
Добавление вендорных префиксов с помощью autoprefixer.
Допустимые значения:
autoprefixer
.browsers: String[]: задание конфигурации в случае, если требуется передать точный список поддерживаемых браузеров.
Пример
{
autoprefixer: { browsers: ['Explorer 10', 'Opera 12'] }
}
Подробнее в документации autoprefixer.
Тип: Boolean
. По умолчанию: false
.
Минификация CSS-кода. Используется csswring.
Поддерживает карты кода (sourcemap).
var CSSTech = require('enb-css/techs/css'),
FileProvideTech = require('enb/techs/file-provider'),
bemTechs = require('enb-bem-techs');
module.exports = function(config) {
config.node('bundle', function(node) {
// Получаем имена файлов (FileList)
node.addTechs([
[FileProvideTech, { target: '?.bemdecl.js' }],
[bemTechs.levels, { levels: ['blocks'] }],
[bemTechs.deps],
[bemTechs.files]
]);
// Создаем CSS-файлы
node.addTech([CSSTech, { /* опции */ }]);
node.addTarget('?.css');
});
};
Состовляет список @import
'ов из исходных CSS-файлов блоков.
Тип: String
. По умолчанию: ?.css
.
Имя файла, куда будет записан результат сборки необходимых .css
-файлов проекта.
Тип: String
. По умолчанию: ?.files
.
Имя таргета, откуда будет доступен список исходных файлов для сборки. Список файлов предоставляет технология files пакета enb-bem-techs.
Тип: String | String[]
. По умолчанию: ['css']
.
Суффиксы, по которым отбираются файлы стилей для дальнейшей сборки.
var CSSImportsTech = require('enb-css/techs/imports'),
FileProvideTech = require('enb/techs/file-provider'),
bemTechs = require('enb-bem-techs');
module.exports = function(config) {
config.node('bundle', function(node) {
// Получаем имена файлов (FileList)
node.addTechs([
[FileProvideTech, { target: '?.bemdecl.js' }],
[bemTechs.levels, { levels: ['blocks'] }],
[bemTechs.deps],
[bemTechs.files]
]);
// Создаем CSS-файлы
node.addTech([CSSImportsTech, { /* опции */ }]);
node.addTarget('?.css');
});
};