Dev (#50)
* update * cleanup * fixing linting and tests errors * Refactor API Parameter Handling and Update Email Transport ✅ Updated API Route Parameters: - Changed parameter type from `{ id: string }` to `Promise<{ id: string }>` in PUT and DELETE methods for better async handling. ✅ Fixed Email Transport Creation: - Updated `nodemailer.createTransporter` to `nodemailer.createTransport` for correct transport configuration. ✅ Refactored AnalyticsDashboard Component: - Changed export from default to named export for better modularity. ✅ Enhanced Email Responder Toast: - Updated toast structure to include additional properties for better user feedback. 🎯 Overall Improvements: - Improved async handling in API routes. - Ensured correct usage of nodemailer. - Enhanced component exports and user notifications.
This commit is contained in:
97
scripts/pre-push-quick.sh
Executable file
97
scripts/pre-push-quick.sh
Executable file
@@ -0,0 +1,97 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Quick Pre-Push Hook Script
|
||||
# Minimal checks for quick fixes and small changes
|
||||
# Use this for: styling, text changes, minor bug fixes
|
||||
|
||||
set -e # Exit on any error
|
||||
|
||||
echo "⚡ Running QUICK Pre-Push Checks..."
|
||||
echo "==================================="
|
||||
|
||||
# Colors for output
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# Function to print colored output
|
||||
print_status() {
|
||||
echo -e "${BLUE}[INFO]${NC} $1"
|
||||
}
|
||||
|
||||
print_success() {
|
||||
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
||||
}
|
||||
|
||||
print_warning() {
|
||||
echo -e "${YELLOW}[WARNING]${NC} $1"
|
||||
}
|
||||
|
||||
print_error() {
|
||||
echo -e "${RED}[ERROR]${NC} $1"
|
||||
}
|
||||
|
||||
# Check if we're in a git repository
|
||||
if ! git rev-parse --git-dir > /dev/null 2>&1; then
|
||||
print_error "Not in a git repository!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Get current branch
|
||||
CURRENT_BRANCH=$(git branch --show-current)
|
||||
print_status "Current branch: $CURRENT_BRANCH"
|
||||
|
||||
# Check if there are uncommitted changes
|
||||
if ! git diff-index --quiet HEAD --; then
|
||||
print_error "You have uncommitted changes. Please commit or stash them first."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 1. Quick ESLint check (only on changed files)
|
||||
print_status "Running ESLint on changed files..."
|
||||
CHANGED_FILES=$(git diff --name-only --cached | grep -E '\.(ts|tsx|js|jsx)$' || true)
|
||||
if [ -n "$CHANGED_FILES" ]; then
|
||||
if ! npx eslint $CHANGED_FILES; then
|
||||
print_error "ESLint failed on changed files! Please fix the errors."
|
||||
exit 1
|
||||
fi
|
||||
print_success "ESLint passed on changed files"
|
||||
else
|
||||
print_status "No TypeScript/JavaScript files changed, skipping ESLint"
|
||||
fi
|
||||
|
||||
# 2. Quick Type Check (only on changed files)
|
||||
print_status "Running TypeScript type check on changed files..."
|
||||
if [ -n "$CHANGED_FILES" ]; then
|
||||
if ! npx tsc --noEmit --skipLibCheck; then
|
||||
print_error "TypeScript type check failed!"
|
||||
exit 1
|
||||
fi
|
||||
print_success "TypeScript type check passed"
|
||||
else
|
||||
print_status "No TypeScript files changed, skipping type check"
|
||||
fi
|
||||
|
||||
# 3. Check for obvious syntax errors (very fast)
|
||||
print_status "Checking for syntax errors..."
|
||||
if ! node -c package.json 2>/dev/null; then
|
||||
print_error "Package.json syntax error!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "==================================="
|
||||
print_success "Quick pre-push checks passed! ⚡"
|
||||
print_status "Ready to push to $CURRENT_BRANCH"
|
||||
print_warning "Note: Full tests and build will run in CI/CD"
|
||||
echo "==================================="
|
||||
|
||||
# Show what will be pushed
|
||||
echo ""
|
||||
print_status "Files to be pushed:"
|
||||
git diff --name-only origin/$CURRENT_BRANCH..HEAD 2>/dev/null || git diff --name-only HEAD~1..HEAD
|
||||
|
||||
echo ""
|
||||
print_status "Proceeding with quick push..."
|
||||
Reference in New Issue
Block a user