*/ public array $overview = []; public function mount(WorkspaceOverviewBuilder $builder): void { $user = auth()->user(); if (! $user instanceof User) { abort(403); } $workspaceId = app(WorkspaceContext::class)->currentWorkspaceId(request()); if (! is_int($workspaceId)) { $this->redirect('/admin/choose-workspace'); return; } $workspace = Workspace::query()->whereKey($workspaceId)->first(); if (! $workspace instanceof Workspace) { abort(404); } /** @var WorkspaceCapabilityResolver $resolver */ $resolver = app(WorkspaceCapabilityResolver::class); if (! $resolver->isMember($user, $workspace)) { abort(404); } $this->overview = $builder->build($workspace, $user); } public static function navigationItem(): NavigationItem { return NavigationItem::make('Overview') ->url(fn (): string => route('admin.home')) ->icon('heroicon-o-home') ->sort(-100) ->isActiveWhen(fn (): bool => request()->routeIs('admin.home')); } }