repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
  rev: v6.0.0
  hooks:
    - id: check-yaml
    - id: end-of-file-fixer
    - id: trailing-whitespace

- repo: https://github.com/shellcheck-py/shellcheck-py
  rev: v0.11.0.1
  hooks:
    - id: shellcheck

- repo: https://github.com/pre-commit/mirrors-eslint
  rev: v10.0.3
  hooks:
    - id: eslint
      files: "\\.(js|jsx|ts|tsx)$"
      exclude: node_modules/

# Use stylelint (local) instead of the deprecated scss-lint Ruby gem which
# cannot parse modern Sass `@use` and module syntax. This invokes the
# project's installed `stylelint` via `npx` so the devDependency is used.
- repo: local
  hooks:
    - id: stylelint
      name: stylelint
      entry: npx stylelint --fix
      language: system
      files: "\\.(scss|sass|css)$"
