map(); } /** * Define module routes. */ public function map(): void { $this->mapApiRoutes(); $this->mapWebRoutes(); } /** * Define web routes. */ protected function mapWebRoutes(): void { Route::middleware(['web']) ->prefix(config('helpdesk.route_prefix', 'helpdesk')) ->name('helpdesk.') ->get('/workflow/open/{token}', WorkflowOpenController::class) ->name('workflow.open'); Route::middleware(config('helpdesk.middleware', ['web', 'auth'])) ->prefix(config('helpdesk.route_prefix', 'helpdesk')) ->name('helpdesk.') ->group(module_path(ModuleInfo::name(), 'Routes/web.php')); // Native macOS authentication through Laravel Fortify. Route::middleware(['web', 'auth:web']) ->prefix('helpdesk/native') ->name('helpdesk.native.') ->group(function (): void { Route::get('/authorize', [NativeAuthorizationController::class, 'authorize']) ->name('authorize'); Route::post('/authorize', [NativeAuthorizationController::class, 'approve']) ->name('approve'); }); } /** * Define API routes. */ protected function mapApiRoutes(): void { Route::prefix('api/helpdesk') ->middleware('api') ->name('api.helpdesk.') ->group(module_path(ModuleInfo::name(), 'Routes/api.php')); Route::prefix('api/git') ->middleware('api') ->name('api.git.') ->post('/gitea/webhook', [GitWebhookController::class, 'gitea']) ->name('gitea.webhook'); } }