enb-bem
Установка:
$ npm install --save-dev enb-bem
Для работы модуля требуется зависимость от пакета enb версии 0.13.0
или выше.
Технологии
levels
provide-bemdecl
bemdecl-from-bemjson
bemdecl-from-deps-by-tech
merge-bemdecl
deps
deps-old
provide-deps
merge-deps
subtract-deps
files
levels
Собирает информацию об уровнях переопределения проекта, предоставляет ?.levels
. Результат выполнения этой
технологии необходим технологиям enb/techs/deps
, enb/techs/deps-old
и enb/techs/files
.
Опции
- String target — Результирующий таргет. По умолчанию —
?.levels
. - (String|Object)[] levels — Уровни переопределения. Полные пути к папкам с уровнями переопределения.
Вместо строки с путем к уровню может использоваться объект вида
{path: '/home/user/www/proj/lego/blocks-desktop', check: false}
для того, чтобы закэшировать содержимое тех уровней переопределения, которые не модифицируются в рамках проекта.
Пример
nodeConfig;
provide-bemdecl
Копирует bemdecl
в текущую ноду под нужным именем из другой ноды. Может понадобиться, например, для объединения bemdecl'ов.
Опции
- String node — Путь исходной ноды с нужным bemdecl'ом. Обязательная опция.
- String source — Исходный bemdecl, который будет копироваться. По умолчанию —
?.bemdecl.js
(демаскируется в рамках исходной ноды). - String target — Результирующий bemdecl-таргет. По умолчанию —
?.bemdecl.js
(демаскируется в рамках текущей ноды).
Пример
nodeConfig;
bemdecl-from-bemjson
Формирует bemdecl
на основе ?.bemjson.js
.
Опции
- String source — Исходный bemjson-таргет. По умолчанию —
?.bemjson.js
. - String target — Результирующий bemdecl-таргет. По умолчанию —
?.bemdecl.js
.
Пример
nodeConfig;
bemdecl-from-deps-by-tech
Формирует bemdecl
на основе depsByTech-информации из ?.deps.js
.
Опции
- String sourceTech — Имя исходной технологии. Обязательная опция.
- String destTech — Имя конечной технологии. Обязательная опция.
- String filesTarget — files-таргет, на основе которого получается список исходных файлов (его предоставляет технология
files
). По умолчанию —?.files
. - String sourceSuffixes — суффиксы файлов, по которым строится
files
-таргет. По умолчанию —'deps.js'
. - String target — Результирующий bemdecl-таргет. По умолчанию —
?.bemdecl.js
.
Пример
nodeConfig;
merge-bemdecl
Формирует bemdecl
с помощью объединения других bemdecl-файлов.
Опции
- String[] sources — Исходные bemdecl-таргеты. Обязательная опция.
- String target — Результирующий bemdecl-таргет. По умолчанию —
?.bemdecl.js
.
Пример
nodeConfig;
deps
Раскрывает зависимости. Сохраняет в виде ?.deps.js
.
Опции
- String sourceDepsFile — Файл с исходными зависимостями. По умолчанию —
?.bemdecl.js
. - String sourceDepsFormat — Формат исходных зависимостей. По умолчанию —
bemdecl.js
. - String levelsTarget — Исходный levels. По умолчанию —
?.levels
. - String target — Результирующий deps. По умолчанию —
?.deps.js
.
Пример
Обычное использование:
nodeConfig;
Сборка специфического deps:
nodeConfig;
deps-old
Раскрывает зависимости. Сохраняет в виде ?.deps.js
. Использует алгоритм, заимствованный из bem-tools.
Опции
- String sourceDepsFile — Файл с исходными зависимостями. По умолчанию —
?.bemdecl.js
. - String sourceDepsFormat — Формат исходных зависимостей. По умолчанию —
bemdecl.js
. - String levelsTarget — Исходный levels. По умолчанию —
?.levels
. - String target — Результирующий deps. По умолчанию —
?.deps.js
.
Пример
Обычное использование:
nodeConfig;
Сборка специфического deps:
nodeConfig;
provide-deps
Копирует deps
в текущую ноду под нужным именем из другой ноды.
Может понадобиться, например, для объединения deps'ов.
Опции
- String node — Путь исходной ноды с нужным deps'ом. Обязательная опция.
- String source — Исходный deps, который будет копироваться.
По умолчанию —
?.deps.js
(демаскируется в рамках исходной ноды). - String target — Результирующий deps-таргет.
По умолчанию —
?.deps.js
(демаскируется в рамках текущей ноды).
Пример
nodeConfig;
merge-deps
Формирует deps
с помощью объединения других deps-файлов.
Опции
- String[] sources — Исходные deps-таргеты. Обязательная опция.
- String target — Результирующий deps-таргет. По умолчанию —
?.deps.js
.
Пример
nodeConfig;
subtract-deps
Формирует deps
с помощью вычитания одного deps-файла из другого.
Может применяться в паре с provide-deps
для получения deps для bembundle.
Опции
- String from — Таргет, из которого вычитать. Обязательная опция.
- String what — Таргет, который вычитать. Обязательная опция.
- String target — Результирующий deps-таргет. По умолчанию —
?.deps.js
.
Пример
nodeConfig;
files
Собирает список исходных файлов для сборки на основе deps и levels, предоставляет ?.files
и ?.dirs
.
Используется многими технологиями, которые объединяют множество файлов из различных уровней переопределения в один.
Опции
- String depsFile — Исходный deps-таргет. По умолчанию —
?.deps.js
. - String depsFormat — Формат зависимостей. По умолчанию —
deps.js
. - String levelsTarget — Исходный levels. По умолчанию —
?.levels
. - String filesTarget — Результирующий files-таргет. По умолчанию —
?.files
. - String dirsTarget — Результирующий dirs-таргет. По умолчанию —
?.dirs
.
Пример
nodeConfig;