default_language_version:
  node: system
  python: python3
repos:
  - repo: https://github.com/psf/black
    rev: 22.3.0
    hooks:
      - id: black
        language_version: python3
        args: ['--target-version', 'py38']

  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: 'v0.0.272'
    hooks:
      - id: ruff
        args: [--fix, --exit-non-zero-on-fix]

  - repo: https://github.com/pre-commit/mirrors-prettier
    rev: v2.5.1
    hooks:
      - id: prettier
        types_or: [css, scss, javascript, ts, tsx, json, yaml]
  - repo: https://github.com/pre-commit/mirrors-eslint
    rev: v8.8.0
    hooks:
      - id: eslint
        types: [file]
        files: \.(js|ts|tsx)$
        args: [--report-unused-disable-directives]
        additional_dependencies:
          - eslint@8.8.0
          - '@typescript-eslint/eslint-plugin@5.10.1'
          - '@typescript-eslint/parser@5.10.1'
          - '@wagtail/eslint-config-wagtail@0.4.0'
  - repo: https://github.com/thibaudcolas/pre-commit-stylelint
    rev: v14.2.0
    hooks:
      - id: stylelint
        files: \.scss$
        additional_dependencies:
          - stylelint@14.2.0
          - '@wagtail/stylelint-config-wagtail@0.3.2'
  - repo: https://github.com/thibaudcolas/curlylint
    rev: v0.13.1
    hooks:
      - id: curlylint
        args: ['--parse-only']
  - repo: https://github.com/rtts/djhtml
    rev: v1.5.2
    hooks:
      - id: djhtml
  - repo: https://github.com/returntocorp/semgrep
    rev: v1.3.0
    hooks:
      - id: semgrep
        args: ['--config', '.semgrep.yml', '--error']