<?php

use Illuminate\Foundation\Application;

return Application::configure(basePath: dirname(__DIR__))
    ->withRouting(web: __DIR__.'/../routes/web.php', api: __DIR__.'/../routes/api.php', commands: __DIR__.'/../routes/console.php', health: '/up')
    ->withMiddleware(function (\Illuminate\Foundation\Configuration\Middleware $middleware): void {
        $middleware->alias(['active' => \App\Http\Middleware\EnsureActiveUser::class]);
        $middleware->alias(['superadmin-2fa' => \App\Http\Middleware\RequireSuperAdminTwoFactor::class]);
        $middleware->web(append: [\App\Http\Middleware\SetLocale::class]);
        $middleware->append(\App\Http\Middleware\SecurityHeaders::class);
    })
    ->withCommands([\App\Console\Commands\PruneTemporaryFiles::class, \App\Console\Commands\RunEncryptedBackup::class, \App\Console\Commands\CreateSuperAdmin::class, \App\Console\Commands\RestoreEncryptedBackup::class])
    ->create();
