"""
Configuration centrale de Web Sentinel
=====================================

Paramètres par défaut et configuration de l'application.
"""

import os
from pathlib import Path

# Chemins de base
ROOT_DIR = Path(__file__).parent.parent
SRC_DIR = ROOT_DIR / "src"
ASSETS_DIR = ROOT_DIR / "assets" 
RESOURCES_DIR = ROOT_DIR / "resources"
CONFIG_DIR = ROOT_DIR / "config"

# Configuration de l'application
APP_CONFIG = {
    "name": "Web Sentinel",
    "version": "2.0.0",
    "author": "Taaazzz-prog",
    "description": "Scanner de Sécurité Web Professionnel",
    "gui": {
        "title": "🛡️ Web Sentinel - Scanner de Sécurité",
        "geometry": "1400x900",
        "min_size": (1200, 700),
        "banner_image": ASSETS_DIR / "images" / "web-sentinel.png"
    },
    "scanning": {
        "timeout": 30,
        "max_concurrent": 10,
        "default_modules": ["tls", "headers", "injection", "static_analysis"]
    },
    "localization": {
        "default_language": "fr",
        "supported_languages": ["fr", "en"],
        "translations_dir": RESOURCES_DIR / "localization"
    }
}

# Configuration des modules
MODULES_CONFIG = {
    "tls": {"timeout": 10, "verify_chain": True},
    "headers": {"security_headers": ["HSTS", "CSP", "X-Frame-Options"]},
    "injection": {"payloads_file": RESOURCES_DIR / "payloads.json"},
    "static_analysis": {"max_files": 1000, "excluded_dirs": [".git", "node_modules"]}
}

# Configuration des exports
EXPORT_CONFIG = {
    "templates_dir": ASSETS_DIR / "templates",
    "output_dir": ROOT_DIR / "reports",
    "formats": ["html", "json", "pdf"],
    "history_file": Path.home() / ".web-sentinel" / "history.json"
}