*/ public function share(Request $request): array { return [ ...parent::share($request), 'name' => config('app.name'), 'organisation' => $request->route('organisation') ? Organisation::with('applications.environments') ->withCount(['providers', 'sourceProviders', 'registries', 'servers', 'applications']) ->findOrFail($this->routeKey($request->route('organisation'))) : null, 'application' => $request->route('application') ? Application::with('environments')->findOrFail($this->routeKey($request->route('application'))) : null, 'flash' => [ 'server_credentials' => $request->session()->has('sudo_password') ? [ 'sudo_password' => $request->session()->get('sudo_password'), ] : null, ], 'auth' => [ 'user' => $request->user()?->load('organisations'), ], 'ziggy' => [ ...(new Ziggy)->toArray(), 'location' => $request->url(), ], ]; } private function routeKey(mixed $routeValue): mixed { return $routeValue instanceof Model ? $routeValue->getKey() : $routeValue; } }