open-index/open-npm huggingface dataset:
npm package: @hh.ru/hh-frontend-hooks
Description: hhru frontend hooks repo
Latest version: 2.0.5

# Git hooks repo2

Репозиторий содержащий скрипты для установки git хуков.

На данный момент используются хуки проверки JavaScript и python. csslint удален, как некорректный.

## Зависимости

1.  [pep8](https://pypi.python.org/pypi/pep8).
    ```
    sudo pip install pep8
    ```

2.  [pyflakes](https://pypi.python.org/pypi/pyflakes).
    ```
    sudo pip install pyflakes
    ```

## Установка хуков в xhh и bloko

Запустить в проекте:
    ```
    npm install
    ```

## Установить хуки вручную

    cd ~/hh.sites.main/.git/hooks
    cp ~/hh-frontend-hooks/hooks/{pre-commit*} .
    chmod +x {pre-commit*}

## Несколько хуков на одно действие

`pre-commit` запускает по очереди скрипты, начинающиеся с того же имени и дефиса.
Поскольку он используется через символическую ссылку `pre-commit`, при коммите будут запускаться все скрипты, начинающиеся с `pre-commit` (кроме `pre-commit.sample`):

    pre-commit-eslint
    pre-commit-pep8
    pre-commit-pyflakes
    …

Перед запуском каждого хука в консоль будет выведено сообщение:

    Running hook: pre-commit-eslint

Если хук сообщает об ошибке (код возврата != 0), цепочка останавливается.

## См. также

[Git Hooks](http://git-scm.com/book/en/Customizing-Git-Git-Hooks).


## История изменений

### 2.0.5
- Поправлен линт длины строк в xslt для совместимости с Linux 

### 2.0.4
- `git diff` больше не вызывается в интерактивном режиме, при поиске изменений

### 2.0.3
- Добавлен хук для проверки соответсвия yarn.lock и package.json

### 2.0.2
- Изменено имя пакета, поправлено README

### 2.0.1
- Удаляем неиспользуемую зависимость

### 2.0.0
- `jscs` и `jshint` заменены на [`eslint`](https://github.com/hhru/eslint-config-hh-es5)

### 1.2.0
- Добавлен хук для проверки длины строки в XSL.

### 1.1.0
- Относительный путь до `jscs` и `jshint` заменён на путь возвращаемый командой `npm bin`
- Хуки теперь совместимы с npm@3.*

### 1.0.1

- Из инструкции убраны указания по установке модулей jscs и jshint
- Модули jscs и jshint добавлены в зависимости к самому модулю, в хуках прописаны пути для запуска модулей


### 1.0.0

- Первоначальный релиз
npm package: @hh.ru/js-module-dependency-extrator
Description: ## Описание
Latest version: 0.2.0

# js-module-dependency-extrator

## Описание

Плагин парсит js файлы, и извлекает зависимости amd модулей, по call expression "define"

```
extractModuleDependenciesFromGlob([
    файлы для парсинга
], {
    saveFileName: - имя файла
    saveFilePath: - путь, куда сохранять список зависимостей
    saveFileExt: - расширение файла
    modulesPath: - путь до корня модулей
    template: Функция которая возвращает шаблон контента(string), в качестве аргумента передается массив зависимостей, если не передать контентом сохраненного файла будет JSON представление.',
});
```

## Зачем

Нужно правильно формировать чанки, потому что webpack-у необходим список полных зависимостей. А анонимный чанк содержит только рутовые компоненты. Иначе нам нужно это делать в ручную.

## Установка

```sh
$ yarn install js-module-dependency-extrator
```

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

 ```sh
 $ yarn test
 ```

## Пример использования в Node окружении

```javascript
const extractStaticValueFromGlob = require('babel-parser-parse-static-trl');

extractStaticValueFromGlob(['/Component/*.jsx'], {
    staticPropName: 'customProps',
    saveFileName: 'Component',
    saveFilePath: 'customPath',
    saveFileExt: 'js',
});
```