@bitrix/cli
Bitrix CLI tools
Last updated 5 days ago by vovkabelov .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @bitrix/cli 
SYNC missed versions from official npm registry.

@bitrix/cli

@bitrix/cli — консольный инструмент Битрикс-разработчика, основная цель — упростить и автоматизировать разработку фронтенда для проектов на «Битрикс Управление Сайтом» и «Битрикс24».

npm version

Содержание

  1. Описание
  2. Установка
  3. Конфигурация
  4. Сборка
  5. Запуск тестов
  6. Создание экстеншна

Описание

@bitrix/cli — это набор консольных команд

  1. bitrix build для сборки и транспиляции ES6+ кода в кросс-браузерный ES5
  2. bitrix test для запуска Mocha тестов
  3. bitrix create для быстрого создания «экстеншна»

В первую очередь, @bitrix/cli предназначен для работы «экстеншнами», шаблонами сайта и шаблонами компонентов.

Установка

NPM

$ npm install -g @bitrix/cli

YARN

$ yarn global add @bitrix/cli

Конфигурация

Базовая конфигурация

module.exports = {
	input: './app.js', 
	output: './dist/app.bundle.js',
};

Все параметры

module.exports = {
	// Файл для которого необходимо выполнить сборку. 
	// Необходимо указать относительный путь 
	input: string, 
	
	// Путь к бандлу, который будет создан в результате сборки 
	// Обычно это ./dist/<extension_name>.bundle.js
	// Необходимо указать относительный путь 
	output: string || {js: string, css: string},
	
	// Неймспейс, в который будут добавлены все экспорты из файла указанного в input
	// Например 'BX.Main.Filter'
	namespace: string,
	
	// Списки файлов для принудительного объединения. 
	// Файлы будут объединены без проверок на дублирование кода. 
	// sourcemap's объединяются автоматически 
	// Необходимо указать относительные пути
	concat: {
		js: Array<string>,
		css: Array<string>,
	},
	
	// Разрешает или запрещает сборщику модифицировать config.php
	// По умолчанию true (разрешено)
	adjustConfigPhp: boolean,
	
	// Разрешает или запрещает сборщику удалять неиспользуемый код. 
	// По умолчанию true (включено).
	treeshake: boolean,
	
	// Разрешает или запрещает пересобирать бандлы 
	// если сборка запущена не в корне текущего экстеншна 
	// По умолчанию `false` (разрешено)
	'protected': boolean,
	
	plugins: {
		// Переопределяет параметры Babel.
		// Можно указать собственные параметры Babel
		// https://babeljs.io/docs/en/options
		// Если указать false, то код будет собран без транспиляции
		babel: boolean | Object,
		
		// Дополнительные плагины Rollup, 
		// которые будут выполняться при сборке бандлов 
		custom: Array<string | Function>,
	},
};

Сборка

Для запуска сборки выполните команду

$ bitrix build

Сборщик рекурсивно найдет все файлы bundle.config.js и выполнит для каждого конфига сборку и транспиляцию.

Дополнительные параметры

--watch, -w

Режим отслеживания изменений. Пересобирает бандлы после изменения исходных файлов.

$ bitrix build --watch

--test, -t

Режим непрерывного тестирования. Тесты запускаются после каждой сборки. Обратите внимание, сборка с параметром --test выводит в отчете только статус прохождения тестов — прошли или не прошли, полный отчет выводит только команда bitrix test.

$ bitrix build --test

--modules, -m

Сборка только указанных модулей. Параметр поддерживается только в корневой c модулями local/js и bitrix/modules. В значении укажите имена модулей через запятую, например:

$ bitrix build --modules main,ui,landing

--path, -p

Запуск сборки для указанной директории. В значении укажите относительный путь к директории, например:

$ bitrix build --path ./main/install/js/main/loader

Запуск тестов

```bash $ bitrix test ``` Команда запускает Mocha тесты и выводит подробный отчет о прохождении тестов. > Тестами считаются JS файлы, расположенные в директории `./test`, относительно файла `bundle.config.js`. В момент запуска тестов исходный код и код тестов, налету обрабатывается сборщиком и после чего выполняется. Поэтому тесты можно писать на ES6+

Дополнительные параметры

--watch, -w

Режим отслеживания изменений. Запускает тесты после изменения исходных файлов и кода тестов.

$ bitrix test --watch

--modules, -m

Тестирование только указанных модулей. Параметр поддерживается только в корневой директории репозитория. В значении укажите имена модулей через запятую, например:

$ bitrix test --modules main,ui,landing

--path, -p

Запуск тестов для указанной директории. В значении укажите относительный путь к директории, например:

$ bitrix test --path ./main/install/js/main/loader

Создание «экстеншна»

Для создания «экстеншна»

  1. Перейдите в директорию local/js/{module}
  2. Выполните команду bitrix create
  3. Ответьте на вопросы мастера

Current Tags

  • 2.3.4                                ...           latest (5 days ago)

66 Versions

  • 2.3.4                                ...           5 days ago
  • 2.3.2                                ...           8 days ago
  • 2.3.1                                ...           20 days ago
  • 2.3.0                                ...           20 days ago
  • 2.2.7                                ...           3 months ago
  • 2.2.6                                ...           3 months ago
  • 2.2.5                                ...           3 months ago
  • 2.2.4                                ...           3 months ago
  • 2.2.3                                ...           3 months ago
  • 2.2.2                                ...           3 months ago
  • 2.2.1                                ...           3 months ago
  • 2.2.0                                ...           3 months ago
  • 2.1.23                                ...           3 months ago
  • 2.1.22                                ...           4 months ago
  • 2.1.21                                ...           4 months ago
  • 2.1.20                                ...           5 months ago
  • 2.1.19                                ...           5 months ago
  • 2.1.18                                ...           5 months ago
  • 2.1.17                                ...           5 months ago
  • 2.1.16                                ...           6 months ago
  • 2.1.15                                ...           6 months ago
  • 2.1.14                                ...           6 months ago
  • 2.1.13                                ...           6 months ago
  • 2.1.12                                ...           6 months ago
  • 2.1.11                                ...           6 months ago
  • 2.1.10                                ...           6 months ago
  • 2.1.9                                ...           6 months ago
  • 2.1.8                                ...           6 months ago
  • 2.1.7-beta.0                                ...           6 months ago
  • 2.1.6                                ...           6 months ago
  • 2.1.5                                ...           6 months ago
  • 2.1.4                                ...           6 months ago
  • 2.1.3                                ...           7 months ago
  • 2.1.2                                ...           7 months ago
  • 2.1.1                                ...           7 months ago
  • 2.1.0                                ...           7 months ago
  • 2.0.10                                ...           7 months ago
  • 2.0.9                                ...           7 months ago
  • 2.0.8                                ...           7 months ago
  • 2.0.7                                ...           7 months ago
  • 2.0.6                                ...           8 months ago
  • 2.0.5                                ...           8 months ago
  • 2.0.4                                ...           8 months ago
  • 2.0.3                                ...           8 months ago
  • 2.0.2                                ...           8 months ago
  • 2.0.1                                ...           8 months ago
  • 2.0.0                                ...           8 months ago
  • 1.1.11                                ...           8 months ago
  • 1.1.10                                ...           8 months ago
  • 1.1.9                                ...           8 months ago
  • 1.1.8                                ...           8 months ago
  • 1.1.7                                ...           8 months ago
  • 1.1.6                                ...           8 months ago
  • 1.1.5                                ...           8 months ago
  • 1.1.4                                ...           8 months ago
  • 1.1.3                                ...           8 months ago
  • 1.1.2                                ...           8 months ago
  • 1.1.1                                ...           8 months ago
  • 1.1.0                                ...           8 months ago
  • 1.0.6                                ...           9 months ago
  • 1.0.5                                ...           9 months ago
  • 1.0.4                                ...           9 months ago
  • 1.0.3                                ...           9 months ago
  • 1.0.2                                ...           9 months ago
  • 1.0.1                                ...           9 months ago
  • 1.0.0                                ...           9 months ago
Maintainers (1)
Downloads
Today 0
This Week 1
This Month 97
Last Day 1
Last Week 95
Last Month 49
Dev Dependencies (4)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |