exclude: 'node_modules|.git'
default_stages: [commit]
fail_fast: false


repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.3.0
    hooks:
      - id: trailing-whitespace
        files: "frappe.*"
        exclude: ".*json$|.*txt$|.*csv|.*md|.*svg"
      - id: check-yaml
      - id: no-commit-to-branch
        args: ['--branch', 'develop']
      - id: check-merge-conflict
      - id: check-ast
      - id: check-json
      - id: check-toml
      - id: check-yaml
      - id: debug-statements

  - repo: https://github.com/asottile/pyupgrade
    rev: v2.34.0
    hooks:
      - id: pyupgrade
        args: ['--py310-plus']

  - repo: https://github.com/adityahase/black
    rev: 9cb0a69f4d0030cdf687eddf314468b39ed54119
    hooks:
      - id: black
        additional_dependencies: ['click==8.0.4']

  - repo: https://github.com/pre-commit/mirrors-prettier
    rev: v2.7.1
    hooks:
      - id: prettier
        types_or: [javascript]
        # Ignore any files that might contain jinja / bundles
        exclude: |
            (?x)^(
                frappe/public/dist/.*|
                .*node_modules.*|
                .*boilerplate.*|
                frappe/www/website_script.js|
                frappe/templates/includes/.*|
                frappe/public/js/lib/.*
            )$


  - repo: https://github.com/timothycrosley/isort
    rev: 5.9.1
    hooks:
      - id: isort

  - repo: https://github.com/PyCQA/flake8
    rev: 5.0.4
    hooks:
      - id: flake8
        additional_dependencies: ['flake8-bugbear',]

ci:
    autoupdate_schedule: weekly
    skip: []
    submodules: false
