withRouting( api: __DIR__.'/../routes/api.php', web: __DIR__.'/../routes/web.php', commands: __DIR__.'/../routes/console.php', health: '/up', ) ->withMiddleware(function (Middleware $middleware) { $middleware->throttleApi(); $middleware->validateCsrfTokens(except: [ '/dav', '/dav/*', '/telegram/webhook/*', ]); $middleware->alias([ 'abilities' => CheckAbilities::class, 'ability' => CheckForAnyAbility::class, 'webauthn' => WebauthnMiddleware::class, 'monica.signup_is_enabled' => EnsureSignupIsEnabled::class, ]); $middleware->web(remove: [ \Illuminate\Routing\Middleware\SubstituteBindings::class, ]); $middleware->web(append: [ \CodeZero\Localizer\Middleware\SetLocale::class, \Illuminate\Routing\Middleware\SubstituteBindings::class, \App\Http\Middleware\HandleInertiaRequests::class, \Illuminate\Http\Middleware\AddLinkHeadersForPreloadedAssets::class, ]); $middleware->api(prepend: [ \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, ]); }) ->withExceptions(function (Exceptions $exceptions) { Integration::handles($exceptions); }) ->create();