*/ public function share(Request $request): array { return [ ...parent::share($request), 'name' => config('app.name'), 'auth' => [ 'user' => $request->user(), ], 'fallbackLocale' => (string) config('app.fallback_locale'), 'locale' => app()->getLocale(), 'sidebarOpen' => ! $request->hasCookie('sidebar_state') || $request->cookie('sidebar_state') === 'true', 'translations' => fn () => $this->translations(), ]; } /** * @return array */ private function translations(): array { $fallbackLocale = (string) config('app.fallback_locale'); $locale = app()->getLocale(); return [ ...$this->jsonTranslations($fallbackLocale), ...$this->jsonTranslations($locale), ]; } /** * @return array */ private function jsonTranslations(string $locale): array { $path = lang_path("{$locale}.json"); if (! is_file($path)) { return []; } $translations = json_decode((string) file_get_contents($path), true); return is_array($translations) ? $translations : []; } }