attributes->get('workspace_model'); if (! $workspace instanceof Workspace) { return $next($request); } return $this->routeWorkspaceRequest($request, $workspace); } protected function routeWorkspaceRequest(Request $request, Workspace $workspace): Response { $path = trim($request->path(), '/'); $method = $request->method(); // Home if ($path === '' || $path === '/') { return response($this->render->home($request)); } // Blog listing if ($path === 'blog') { return response($this->render->blog($request)); } // Blog post if (str_starts_with($path, 'blog/')) { $slug = substr($path, 5); return response($this->render->post($request, $slug)); } // Subscribe (waitlist) if ($path === 'subscribe' && $method === 'POST') { $result = $this->render->subscribe($request); return $result instanceof Response ? $result : response($result); } // Static page (catch-all) return response($this->render->page($request, $path)); } }