withRouting( web: __DIR__.'/../routes/web.php', api: __DIR__.'/../routes/api.php', commands: __DIR__.'/../routes/console.php', health: '/up', ) ->withMiddleware(function (Middleware $middleware): void { $middleware->alias([ 'auth.multi' => \App\Http\Middleware\MultiAuth::class, 'jwt.auth' => \PHPOpenSourceSaver\JWTAuth\Http\Middleware\Authenticate::class, 'jwt.refresh' => \PHPOpenSourceSaver\JWTAuth\Http\Middleware\RefreshToken::class, 'api.jwt' => \App\Http\Middleware\ApiJwtAuth::class, 'perm' => \App\Http\Middleware\RequirePermission::class, 'timezone' => \App\Http\Middleware\PrimeTimezone::class, 'cleanup.scheduler' => \App\Http\Middleware\CleanupScheduler::class, 'auth.docs' => \App\Http\Middleware\ApiDocsAuth::class, ]); $middleware->redirectGuestsTo(function (Request $request) { if ($request->is('api/*') || $request->expectsJson()) { return null; } return route('login'); }); }) ->withExceptions(function (Exceptions $exceptions): void { $exceptions->render(function (AuthenticationException $e, Request $request) { if ($request->is('api/*') || $request->expectsJson()) { return response()->json(['message' => 'Unauthorized.'], 401); } }); })->create();