| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <?php
- namespace App\Http\Middleware;
- use Illuminate\Http\Request;
- use Inertia\Middleware;
- class HandleInertiaRequests extends Middleware
- {
- /**
- * The root template that's loaded on the first page visit.
- *
- * @see https://inertiajs.com/server-side-setup#root-template
- *
- * @var string
- */
- protected $rootView = 'app';
- /**
- * Determines the current asset version.
- *
- * @see https://inertiajs.com/asset-versioning
- */
- public function version(Request $request): ?string
- {
- return parent::version($request);
- }
- /**
- * Define the props that are shared by default.
- *
- * @see https://inertiajs.com/shared-data
- *
- * @return array<string, mixed>
- */
- public function share(Request $request): array
- {
- $user = $request->user() ?? null;
- $user?->load('chats');
- return [
- ...parent::share($request),
- 'app' => [
- 'title' => config('app.name'),
- ],
- 'flush' => [
- 'success' => session('success'),
- 'json' => session('json')
- ],
- 'auth' => [
- 'user' => $user,
- 'chats' => fn() => $user?->chats->toResourceCollection(),
- ]
- ];
- }
- }
|