#!/usr/bin/env bash
# 仅当本次提交涉及 admin 源代码或配置时，运行 admin 构建（含 vue-tsc 类型检查）
# 通过检查暂存区是否有 zhican/admin/ 下的相关文件来决定

set -e

CHANGED=$(git diff --cached --name-only --diff-filter=ACMR \
  | grep -E '^zhican/admin/(src/|.*\.(json|ts|html))' || true)

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

echo "→ pre-commit: 检测到 admin 变更，运行 pnpm run build..."
cd "$(git rev-parse --show-toplevel)/zhican/admin"

if ! command -v pnpm >/dev/null 2>&1; then
  echo "pre-commit: 未找到 pnpm，跳过构建检查（请手动运行 pnpm run build 验证）" >&2
  exit 0
fi

pnpm run build
