# Minuteur Dragodinde - Script de construction $ErrorActionPreference = 'Stop' $Host.UI.RawUI.WindowTitle = 'Minuteur Dragodinde - Construction' Write-Host '' Write-Host '================================================' -ForegroundColor Cyan Write-Host ' MINUTEUR DRAGODINDE - Construction du .exe' -ForegroundColor Cyan Write-Host '================================================' -ForegroundColor Cyan Write-Host '' Set-Location $PSScriptRoot # Verification Node.js try { $nodeVer = node -v 2>&1 Write-Host "[OK] Node.js : $nodeVer" -ForegroundColor Green } catch { Write-Host '[ERREUR] Node.js introuvable. Installez depuis https://nodejs.org' -ForegroundColor Red Start-Process 'https://nodejs.org' Read-Host 'Appuyez sur Entree pour fermer' exit 1 } # Verification npm try { $npmVer = npm -v 2>&1 Write-Host "[OK] npm : $npmVer" -ForegroundColor Green } catch { Write-Host '[ERREUR] npm introuvable.' -ForegroundColor Red Read-Host 'Appuyez sur Entree pour fermer' exit 1 } Write-Host '' Write-Host '[1/3] Installation des dependances (~150 Mo, premiere fois)...' -ForegroundColor Yellow Write-Host '' npm install if ($LASTEXITCODE -ne 0) { Write-Host '[ERREUR] npm install a echoue.' -ForegroundColor Red Read-Host 'Appuyez sur Entree pour fermer' exit 1 } Write-Host '' Write-Host '[OK] Dependances installees' -ForegroundColor Green Write-Host '' Write-Host '[2/3] Construction du logiciel Windows (2-5 minutes)...' -ForegroundColor Yellow Write-Host '' npm run build if ($LASTEXITCODE -ne 0) { Write-Host '[ERREUR] Build echoue - voir messages ci-dessus.' -ForegroundColor Red Read-Host 'Appuyez sur Entree pour fermer' exit 1 } Write-Host '' Write-Host '[3/3] Termine !' -ForegroundColor Green Write-Host '' Write-Host '================================================' -ForegroundColor Cyan Write-Host ' Installeur pret dans le dossier dist' -ForegroundColor Cyan Write-Host ' Minuteur Dragodinde Setup 1.0.0.exe' -ForegroundColor Cyan Write-Host '================================================' -ForegroundColor Cyan Write-Host '' if (Test-Path 'dist') { Invoke-Item 'dist' } Read-Host 'Appuyez sur Entree pour fermer'