# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
exclude: |
    (?x)^(
        InvenTree/InvenTree/static/.*|
        InvenTree/locale/.*|
        src/frontend/src/locales/.*
    )$
repos:
-   repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.4.0
    hooks:
    -   id: trailing-whitespace
    -   id: end-of-file-fixer
    -   id: check-yaml
    -   id: mixed-line-ending
-   repo: https://github.com/pycqa/flake8
    rev: '6.0.0'
    hooks:
    -   id: flake8
        additional_dependencies: [
                'flake8-bugbear',
                'flake8-comprehensions',
                'flake8-docstrings',
                'flake8-string-format',
                'flake8-tidy-imports',
                'pep8-naming',
                'flake8-logging'
        ]
-   repo: https://github.com/pycqa/isort
    rev: '5.12.0'
    hooks:
    -   id: isort
-   repo: https://github.com/jazzband/pip-tools
    rev: 6.13.0
    hooks:
      - id: pip-compile
        name: pip-compile requirements-dev.in
        args: [requirements-dev.in, -o, requirements-dev.txt]
        files: ^requirements-dev\.(in|txt)$
      - id: pip-compile
        name: pip-compile requirements.txt
        args: [requirements.in, -o, requirements.txt]
        files: ^requirements\.(in|txt)$
-   repo: https://github.com/Riverside-Healthcare/djLint
    rev: v1.30.2
    hooks:
      - id: djlint-django
- repo: https://github.com/codespell-project/codespell
  rev: v2.2.4
  hooks:
  - id: codespell
    exclude: >
      (?x)^(
          docs/docs/stylesheets/.*|
          docs/docs/javascripts/.*|
          docs/docs/webfonts/.* |
          src/frontend/src/locales/.* |
      )$
- repo: https://github.com/pre-commit/mirrors-prettier
  rev: "v3.0.0-alpha.9-for-vscode"
  hooks:
    - id: prettier
      files: ^src/frontend/.*\.(js|jsx|ts|tsx)$
      additional_dependencies:
      - "prettier@^2.4.1"
      - "@trivago/prettier-plugin-sort-imports"
- repo: https://github.com/pre-commit/mirrors-eslint
  rev: "v8.42.0"
  hooks:
  - id: eslint
    additional_dependencies:
      - eslint@^8.41.0
      - eslint-config-google@^0.14.0
      - eslint-plugin-react@6.10.3
      - babel-eslint@6.1.2
      - "@typescript-eslint/eslint-plugin@latest"
      - "@typescript-eslint/parser"
    files: ^src/frontend/.*\.(js|jsx|ts|tsx)$
