#!/bin/sh
# pre-commit hook: 对暂存的文件运行 Biome 检查
# 仅检查 src/ 下的 .ts/.tsx/.js/.jsx 文件

STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACM | grep -E '^src/.*\.(ts|tsx|js|jsx)$')

if [ -z "$STAGED_FILES" ]; then
  exit 0
fi

echo "Running Biome lint on staged files..."

# 使用 biome lint 对暂存文件进行检查（仅 lint，不格式化，不自动修复）
echo "$STAGED_FILES" | xargs bunx biome lint --no-errors-on-unmatched

if [ $? -ne 0 ]; then
  echo ""
  echo "Biome lint failed. Fix errors or use --no-verify to bypass."
  exit 1
fi

exit 0
