*/ public function share(Request $request): array { $user = $request->user(); if ($user) { App::setLocale($user->language->code); } $currentWorkspace = $user?->currentWorkspace; $currentRole = null; if ($user && $currentWorkspace) { $currentRole = $user->workspaces() ->where('workspaces.id', $currentWorkspace->id) ->first() ?->pivot ?->role; } return [ ...parent::share($request), 'name' => config('app.name'), 'auth' => [ 'user' => $user, 'role' => $currentRole, ], 'currentWorkspace' => $currentWorkspace, 'workspaces' => $user ? $user->workspaces()->select('workspaces.id', 'workspaces.name')->get() : [], 'sidebarOpen' => ! $request->hasCookie('sidebar_state') || $request->cookie('sidebar_state') === 'true', 'flash' => $request->session()->get('flash', []), 'env' => config('app.env'), 'locale' => app()->getLocale(), 'selfHosted' => config('trypost.self_hosted'), 'languages' => Language::all(), ]; } }