From 904dcd8260b124282aa8e7aaa44aa202df64a6ad Mon Sep 17 00:00:00 2001 From: ANDJ Date: Wed, 28 Jan 2026 17:10:36 +0100 Subject: [PATCH] fix: TypeScript errors & build fixes for Control Panel Redesign - Fix unused imports (Trash, Filter, Bell, CategoryAdvanced) - Fix undefined checks for cleanup settings - Fix cleanupPreview undefined checks - Fix useTheme unused parameter - Fix companyLabels type safety - Build erfolgreich durchgefuehrt --- COMMIT_COMMANDS.txt | 9 ++++- DEPLOYMENT_INSTRUCTIONS.md | 51 ++++++++++++++++++++++++++++ FINAL_COMMIT.bat | 62 +++++++++++++++++++++++++++++++++++ client/src/hooks/useTheme.ts | 2 +- client/src/pages/Settings.tsx | 20 +++++------ deploy-build.js | 31 ++++++++++++++++++ git-commit-fix.bat | 17 ++++++++++ 7 files changed, 178 insertions(+), 14 deletions(-) create mode 100644 DEPLOYMENT_INSTRUCTIONS.md create mode 100644 FINAL_COMMIT.bat create mode 100644 deploy-build.js create mode 100644 git-commit-fix.bat diff --git a/COMMIT_COMMANDS.txt b/COMMIT_COMMANDS.txt index 455fe37..900ffa6 100644 --- a/COMMIT_COMMANDS.txt +++ b/COMMIT_COMMANDS.txt @@ -2,5 +2,12 @@ Führe diese Befehle in deinem Git Bash oder Terminal aus: cd c:\Users\User\Documents\GitHub\ANDJJJJJJ git add . -git commit -m "feat: Control Panel Redesign v2.0 - Card-basiertes Layout, Side Panels, Dark Mode Fixes, Volle Breite Layout" +git commit -m "fix: TypeScript errors & build fixes for Control Panel Redesign + +- Fix unused imports (Trash, Filter, Bell, CategoryAdvanced) +- Fix undefined checks for cleanup settings +- Fix cleanupPreview undefined checks +- Fix useTheme unused parameter +- Fix companyLabels type safety +- Build erfolgreich durchgeführt" git push diff --git a/DEPLOYMENT_INSTRUCTIONS.md b/DEPLOYMENT_INSTRUCTIONS.md new file mode 100644 index 0000000..4214d3e --- /dev/null +++ b/DEPLOYMENT_INSTRUCTIONS.md @@ -0,0 +1,51 @@ +# Deployment-Anleitung + +## Status +✅ **Build erfolgreich erstellt** - `client/dist` ist bereit für Deployment + +## Git Commit & Push +Da Git nicht automatisch gefunden werden kann, führe bitte diese Befehle manuell aus: + +```bash +cd c:\Users\User\Documents\GitHub\ANDJJJJJJ +git add . +git commit -m "fix: TypeScript errors & build fixes for Control Panel Redesign + +- Fix unused imports (Trash, Filter, Bell, CategoryAdvanced) +- Fix undefined checks for cleanup settings +- Fix cleanupPreview undefined checks +- Fix useTheme unused parameter +- Fix companyLabels type safety +- Build erfolgreich durchgeführt" +git push +``` + +## Deployment des Builds + +### Option 1: Manuelles Upload +1. Öffne den Ordner: `c:\Users\User\Documents\GitHub\ANDJJJJJJ\client\dist` +2. Kopiere alle Dateien aus diesem Ordner +3. Lade sie auf deinen Web-Server hoch (z.B. via FTP/SFTP zu `emailsorter.webklar.com`) + +### Option 2: SSH/SCP (falls verfügbar) +```bash +scp -r client/dist/* user@webklar.com:/path/to/webserver/emailsorter/ +``` + +### Option 3: GitHub Actions / CI/CD +Falls du CI/CD eingerichtet hast, sollte der Push automatisch deployen. + +## Nach dem Deployment +1. Leere den Browser-Cache (Strg+Shift+R) +2. Prüfe die Website: https://emailsorter.webklar.com +3. Teste die neuen Features: + - Control Panel mit Card-Layout + - Side Panels für Category Configuration + - Cleanup Tab mit Slidern + - Labels Tab mit Tabelle + - Dark Mode Verbesserungen + +## Wichtige Hinweise +- Stelle sicher, dass `.env.production` die richtigen Production-URLs hat +- Backend-Server muss laufen +- Appwrite CORS muss für `https://emailsorter.webklar.com` konfiguriert sein diff --git a/FINAL_COMMIT.bat b/FINAL_COMMIT.bat new file mode 100644 index 0000000..8d21096 --- /dev/null +++ b/FINAL_COMMIT.bat @@ -0,0 +1,62 @@ +@echo off +REM Finaler Commit und Push - Führe dieses Skript als Administrator aus + +cd /d "%~dp0" + +echo ======================================== +echo Git Commit und Push +echo ======================================== +echo. + +REM Versuche Git zu finden +set GIT_PATH= +if exist "C:\Program Files\Git\cmd\git.exe" set GIT_PATH=C:\Program Files\Git\cmd\git.exe +if exist "C:\Program Files (x86)\Git\cmd\git.exe" set GIT_PATH=C:\Program Files (x86)\Git\cmd\git.exe +if exist "%LOCALAPPDATA%\Programs\Git\cmd\git.exe" set GIT_PATH=%LOCALAPPDATA%\Programs\Git\cmd\git.exe + +if "%GIT_PATH%"=="" ( + echo Git wurde nicht gefunden! + echo. + echo Bitte führe diese Befehle manuell in Git Bash aus: + echo cd c:\Users\User\Documents\GitHub\ANDJJJJJJ + echo git add . + echo git commit -m "fix: TypeScript errors & build fixes for Control Panel Redesign" + echo git push + pause + exit /b 1 +) + +echo Git gefunden: %GIT_PATH% +echo. + +echo [1/3] Staging aller Aenderungen... +"%GIT_PATH%" add . +if errorlevel 1 ( + echo Fehler beim Staging! + pause + exit /b 1 +) + +echo [2/3] Erstelle Commit... +"%GIT_PATH%" commit -m "fix: TypeScript errors & build fixes for Control Panel Redesign" -m "- Fix unused imports (Trash, Filter, Bell, CategoryAdvanced)" -m "- Fix undefined checks for cleanup settings" -m "- Fix cleanupPreview undefined checks" -m "- Fix useTheme unused parameter" -m "- Fix companyLabels type safety" -m "- Build erfolgreich durchgefuehrt" +if errorlevel 1 ( + echo Fehler beim Commit! + pause + exit /b 1 +) + +echo [3/3] Pushe Aenderungen... +"%GIT_PATH%" push +if errorlevel 1 ( + echo Fehler beim Push! + pause + exit /b 1 +) + +echo. +echo ======================================== +echo Erfolgreich committed und gepusht! +echo ======================================== +echo. +echo Naechster Schritt: Deploye client/dist auf den Server +pause diff --git a/client/src/hooks/useTheme.ts b/client/src/hooks/useTheme.ts index f90a758..738ff73 100644 --- a/client/src/hooks/useTheme.ts +++ b/client/src/hooks/useTheme.ts @@ -98,7 +98,7 @@ export function useTheme() { // Listen for system preference changes const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)') - const handleSystemPreferenceChange = (e: MediaQueryListEvent) => { + const handleSystemPreferenceChange = () => { updateTheme() } diff --git a/client/src/pages/Settings.tsx b/client/src/pages/Settings.tsx index a1a8463..58c7f3f 100644 --- a/client/src/pages/Settings.tsx +++ b/client/src/pages/Settings.tsx @@ -39,9 +39,7 @@ import { Lock, Copy, AlertTriangle, - Trash, Search, - Filter, Download, Upload, ChevronDown, @@ -52,12 +50,11 @@ import { Camera, Globe, Clock, - Bell, Palette, Save, Edit2, } from 'lucide-react' -import type { AIControlSettings, CompanyLabel, CategoryInfo, CategoryAdvanced, CleanupStatus } from '@/types/settings' +import type { AIControlSettings, CompanyLabel, CategoryInfo, CleanupStatus } from '@/types/settings' import { PrivacySecurity } from '@/components/PrivacySecurity' type TabType = 'profile' | 'accounts' | 'vip' | 'ai-control' | 'subscription' | 'privacy' | 'referrals' @@ -141,7 +138,6 @@ export function Settings() { }) const [categories, setCategories] = useState([]) const [companyLabels, setCompanyLabels] = useState([]) - const [newCompanyLabel, setNewCompanyLabel] = useState({ name: '', condition: '', category: 'promotions' }) const [referralData, setReferralData] = useState<{ referralCode: string; referralCount: number } | null>(null) const [loadingReferral, setLoadingReferral] = useState(false) @@ -1357,7 +1353,7 @@ export function Settings() { }, }) }} - className={`w-12 h-6 rounded-full transition-colors flex-shrink-0 ${aiControlSettings.cleanup?.promotions.enabled ? 'bg-primary-500 dark:bg-primary-600' : 'bg-slate-300 dark:bg-slate-600'}`} + className={`w-12 h-6 rounded-full transition-colors flex-shrink-0 ${aiControlSettings.cleanup?.promotions?.enabled ? 'bg-primary-500 dark:bg-primary-600' : 'bg-slate-300 dark:bg-slate-600'}`} >
(
- {cleanupPreview.length > 0 && ( + {cleanupPreview && cleanupPreview.length > 0 && (
{cleanupPreview.slice(0, 10).map((item) => (
@@ -2064,7 +2060,7 @@ export function Settings() { const saved = await api.saveCompanyLabel(user.$id, editingLabel) if (saved.data) { if (editingLabel.id) { - setCompanyLabels(companyLabels.map(l => l.id === editingLabel.id ? saved.data : l)) + setCompanyLabels(companyLabels.map(l => l.id === editingLabel.id ? (saved.data || l) : l)) showMessage('success', 'Label updated!') } else { setCompanyLabels([...companyLabels, saved.data]) diff --git a/deploy-build.js b/deploy-build.js new file mode 100644 index 0000000..81acfce --- /dev/null +++ b/deploy-build.js @@ -0,0 +1,31 @@ +// Node.js Script zum Ausführen von Git-Befehlen +const { execSync } = require('child_process'); +const fs = require('fs'); +const path = require('path'); + +const projectRoot = __dirname; + +try { + console.log('📦 Staging aller Änderungen...'); + execSync('git add .', { cwd: projectRoot, stdio: 'inherit' }); + + console.log('💾 Erstelle Commit...'); + const commitMessage = `fix: TypeScript errors & build fixes for Control Panel Redesign + +- Fix unused imports (Trash, Filter, Bell, CategoryAdvanced) +- Fix undefined checks for cleanup settings +- Fix cleanupPreview undefined checks +- Fix useTheme unused parameter +- Fix companyLabels type safety +- Build erfolgreich durchgeführt`; + + execSync(`git commit -m "${commitMessage.replace(/"/g, '\\"')}"`, { cwd: projectRoot, stdio: 'inherit' }); + + console.log('🚀 Pushe Änderungen...'); + execSync('git push', { cwd: projectRoot, stdio: 'inherit' }); + + console.log('\n✅ Erfolgreich committed und gepusht!'); +} catch (error) { + console.error('❌ Fehler:', error.message); + process.exit(1); +} diff --git a/git-commit-fix.bat b/git-commit-fix.bat new file mode 100644 index 0000000..9622936 --- /dev/null +++ b/git-commit-fix.bat @@ -0,0 +1,17 @@ +@echo off +REM Git Commit Script für TypeScript Fixes + +cd /d c:\Users\User\Documents\GitHub\ANDJJJJJJ + +echo Staging aller Aenderungen... +git add . + +echo Erstelle Commit... +git commit -m "fix: TypeScript errors & build fixes for Control Panel Redesign" -m "- Fix unused imports (Trash, Filter, Bell, CategoryAdvanced)" -m "- Fix undefined checks for cleanup settings" -m "- Fix cleanupPreview undefined checks" -m "- Fix useTheme unused parameter" -m "- Fix companyLabels type safety" -m "- Build erfolgreich durchgefuehrt" + +echo Pushe Aenderungen... +git push + +echo. +echo Erfolgreich committed und gepusht! +pause