<?php

namespace Database\Seeders;

use App\Models\Translation;
use Illuminate\Database\Seeder;

class TranslationSeeder extends Seeder
{
    public function run(): void
    {
        $translations = [
            // Skills - Vue.js
            ['fr', 'skill.vuejs.name', 'Vue.js'],
            ['en', 'skill.vuejs.name', 'Vue.js'],
            ['fr', 'skill.vuejs.description', 'Framework JavaScript progressif pour construire des interfaces utilisateur'],
            ['en', 'skill.vuejs.description', 'Progressive JavaScript framework for building user interfaces'],

            // Skills - Nuxt
            ['fr', 'skill.nuxt.name', 'Nuxt'],
            ['en', 'skill.nuxt.name', 'Nuxt'],
            ['fr', 'skill.nuxt.description', 'Framework fullstack basé sur Vue.js avec rendu côté serveur'],
            ['en', 'skill.nuxt.description', 'Fullstack framework based on Vue.js with server-side rendering'],

            // Skills - TypeScript
            ['fr', 'skill.typescript.name', 'TypeScript'],
            ['en', 'skill.typescript.name', 'TypeScript'],
            ['fr', 'skill.typescript.description', 'Surensemble typé de JavaScript pour un code plus robuste'],
            ['en', 'skill.typescript.description', 'Typed superset of JavaScript for more robust code'],

            // Skills - TailwindCSS
            ['fr', 'skill.tailwindcss.name', 'TailwindCSS'],
            ['en', 'skill.tailwindcss.name', 'TailwindCSS'],
            ['fr', 'skill.tailwindcss.description', 'Framework CSS utilitaire pour un design rapide et personnalisable'],
            ['en', 'skill.tailwindcss.description', 'Utility-first CSS framework for rapid and customizable design'],

            // Skills - Laravel
            ['fr', 'skill.laravel.name', 'Laravel'],
            ['en', 'skill.laravel.name', 'Laravel'],
            ['fr', 'skill.laravel.description', 'Framework PHP élégant pour le développement web'],
            ['en', 'skill.laravel.description', 'Elegant PHP framework for web development'],

            // Skills - PHP
            ['fr', 'skill.php.name', 'PHP'],
            ['en', 'skill.php.name', 'PHP'],
            ['fr', 'skill.php.description', 'Langage de programmation côté serveur largement utilisé'],
            ['en', 'skill.php.description', 'Widely used server-side programming language'],

            // Skills - Node.js
            ['fr', 'skill.nodejs.name', 'Node.js'],
            ['en', 'skill.nodejs.name', 'Node.js'],
            ['fr', 'skill.nodejs.description', 'Environnement d\'exécution JavaScript côté serveur'],
            ['en', 'skill.nodejs.description', 'Server-side JavaScript runtime environment'],

            // Skills - Git
            ['fr', 'skill.git.name', 'Git'],
            ['en', 'skill.git.name', 'Git'],
            ['fr', 'skill.git.description', 'Système de contrôle de version distribué'],
            ['en', 'skill.git.description', 'Distributed version control system'],

            // Skills - Docker
            ['fr', 'skill.docker.name', 'Docker'],
            ['en', 'skill.docker.name', 'Docker'],
            ['fr', 'skill.docker.description', 'Plateforme de conteneurisation pour le déploiement d\'applications'],
            ['en', 'skill.docker.description', 'Containerization platform for application deployment'],

            // Skills - Communication
            ['fr', 'skill.communication.name', 'Communication'],
            ['en', 'skill.communication.name', 'Communication'],
            ['fr', 'skill.communication.description', 'Capacité à transmettre des idées clairement et efficacement'],
            ['en', 'skill.communication.description', 'Ability to convey ideas clearly and effectively'],

            // Projects - Skycel Portfolio
            ['fr', 'project.skycel-portfolio.title', 'Skycel Portfolio'],
            ['en', 'project.skycel-portfolio.title', 'Skycel Portfolio'],
            ['fr', 'project.skycel-portfolio.description', 'Portfolio gamifié avec système de progression et arbre de compétences interactif. Construit avec Nuxt 4 et Laravel 12.'],
            ['en', 'project.skycel-portfolio.description', 'Gamified portfolio with progression system and interactive skill tree. Built with Nuxt 4 and Laravel 12.'],
            ['fr', 'project.skycel-portfolio.short_description', 'Portfolio gamifié avec arbre de compétences'],
            ['en', 'project.skycel-portfolio.short_description', 'Gamified portfolio with skill tree'],

            // Projects - E-commerce
            ['fr', 'project.ecommerce-app.title', 'E-Commerce App'],
            ['en', 'project.ecommerce-app.title', 'E-Commerce App'],
            ['fr', 'project.ecommerce-app.description', 'Application e-commerce complète avec panier, paiement Stripe et gestion des commandes. Interface responsive et performante.'],
            ['en', 'project.ecommerce-app.description', 'Full e-commerce application with cart, Stripe payment and order management. Responsive and performant interface.'],
            ['fr', 'project.ecommerce-app.short_description', 'Application e-commerce avec paiement Stripe'],
            ['en', 'project.ecommerce-app.short_description', 'E-commerce app with Stripe payment'],

            // Projects - Dashboard
            ['fr', 'project.analytics-dashboard.title', 'Analytics Dashboard'],
            ['en', 'project.analytics-dashboard.title', 'Analytics Dashboard'],
            ['fr', 'project.analytics-dashboard.description', 'Tableau de bord analytique avec visualisations de données en temps réel, graphiques interactifs et export de rapports.'],
            ['en', 'project.analytics-dashboard.description', 'Analytics dashboard with real-time data visualizations, interactive charts and report export.'],
            ['fr', 'project.analytics-dashboard.short_description', 'Dashboard analytique avec données temps réel'],
            ['en', 'project.analytics-dashboard.short_description', 'Analytics dashboard with real-time data'],

            // Skill-Project level descriptions
            ['fr', 'skill_project.skycel-portfolio.vuejs.level_description', 'Utilisation avancée de Vue 3 avec Composition API et réactivité'],
            ['en', 'skill_project.skycel-portfolio.vuejs.level_description', 'Advanced use of Vue 3 with Composition API and reactivity'],
            ['fr', 'skill_project.skycel-portfolio.nuxt.level_description', 'Premier projet avec Nuxt 4 et SSR'],
            ['en', 'skill_project.skycel-portfolio.nuxt.level_description', 'First project with Nuxt 4 and SSR'],
            ['fr', 'skill_project.skycel-portfolio.laravel.level_description', 'API REST complète avec middleware et Eloquent'],
            ['en', 'skill_project.skycel-portfolio.laravel.level_description', 'Complete REST API with middleware and Eloquent'],
            ['fr', 'skill_project.skycel-portfolio.tailwindcss.level_description', 'Design system complet avec tokens personnalisés'],
            ['en', 'skill_project.skycel-portfolio.tailwindcss.level_description', 'Complete design system with custom tokens'],
            ['fr', 'skill_project.ecommerce-app.laravel.level_description', 'Backend e-commerce avec intégration Stripe'],
            ['en', 'skill_project.ecommerce-app.laravel.level_description', 'E-commerce backend with Stripe integration'],
            ['fr', 'skill_project.ecommerce-app.vuejs.level_description', 'Interface dynamique avec gestion du panier'],
            ['en', 'skill_project.ecommerce-app.vuejs.level_description', 'Dynamic interface with cart management'],
            ['fr', 'skill_project.analytics-dashboard.typescript.level_description', 'Typage strict pour la fiabilité des données'],
            ['en', 'skill_project.analytics-dashboard.typescript.level_description', 'Strict typing for data reliability'],
            ['fr', 'skill_project.analytics-dashboard.nodejs.level_description', 'API backend avec agrégation de données'],
            ['en', 'skill_project.analytics-dashboard.nodejs.level_description', 'Backend API with data aggregation'],
        ];

        foreach ($translations as [$lang, $key_name, $value]) {
            Translation::create([
                'lang' => $lang,
                'key_name' => $key_name,
                'value' => $value,
            ]);
        }
    }
}
