#!/bin/sh
# Pre-commit hook for Spotlight Dimmer
# Automatically installed by cargo-husky when running cargo test/build
# Runs clippy and format checks before allowing commits

set -e

echo "Running pre-commit checks..."

# Check formatting
echo "Checking code formatting..."
if ! cargo fmt --all -- --check; then
    echo "❌ Code formatting check failed!"
    echo "Run 'cargo fmt --all' to fix formatting issues."
    exit 1
fi
echo "✅ Code formatting check passed"

# Run clippy (only on Windows, as this is a Windows-only codebase)
OS="$(uname -s)"
case "$OS" in
    MINGW*|MSYS*|CYGWIN*|Windows_NT)
        echo "Running clippy..."
        if ! cargo clippy --all-targets --all-features -- -W clippy::all -A dead_code; then
            echo "❌ Clippy check failed!"
            echo "Fix the clippy warnings before committing."
            exit 1
        fi
        echo "✅ Clippy check passed"
        ;;
    *)
        echo "⏭️  Skipping clippy (Windows-only codebase, CI will check on Windows)"
        ;;
esac

echo "✅ All pre-commit checks passed!"
exit 0
