route()?->getName() ?? ''; return str_starts_with($name, 'user.') ? 'user' : 'admin'; } protected function isAgentPortal(): bool { return $this->portal() === 'user'; } protected function agent(): ?User { if (! $this->isAgentPortal()) { return null; } /** @var User|null $user */ $user = auth('agent')->user(); return $user; } /** @return array{0: string|null, 1: int|null} */ protected function viewerActor(): array { if ($this->isAgentPortal()) { $agent = $this->agent(); return $agent ? ['agent', (int) $agent->id] : [null, null]; } $admin = auth('admin')->user(); return $admin ? ['admin', (int) $admin->id] : [null, null]; } protected function routeName(string $suffix): string { return $this->portal().'.'.$suffix; } }