#!/usr/bin/env sh # comando sh ../.agent/verificar-linhas.sh [diretorio] || exit 1 LIMITE=250 ALVO="${1:-.}" if [ ! -d "$ALVO" ]; then printf "❌ Erro: Diretório alvo '%s' não encontrado.\n" "$ALVO" exit 1 fi RESULTADO=$( find "$ALVO" \ -type d \( \ -name node_modules -o \ -name .git -o \ -name dist -o \ -name build \ \) -prune \ -o \ -type f \( \ -name "*.ts" -o \ -name "*.tsx" -o \ -name "*.vue" -o \ -name "*.css" \ \) \ -print | while IFS= read -r arquivo; do linhas=$(wc -l < "$arquivo" | tr -d ' ') if [ "$linhas" -gt "$LIMITE" ]; then printf "%5s linhas -> %s\n" "$linhas" "$arquivo" fi done ) if [ -n "$RESULTADO" ]; then echo "$RESULTADO" VIOLACOES=$(printf '%s\n' "$RESULTADO" | wc -l | tr -d ' ') printf "\n❌ %s arquivo(s) violam o limite de %s linhas.\n" "$VIOLACOES" "$LIMITE" printf "\n Resolva usando ag-refatorar\n\n" exit 1 fi printf "✅ Todos os arquivos dentro do limite de %s linhas.\n" "$LIMITE"