| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- <?php
-
- namespace App\Http\Middleware;
-
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Auth;
- 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
- * @param \Illuminate\Http\Request $request
- * @return string|null
- */
- public function version(Request $request): ?string
- {
- return parent::version($request);
- }
-
- /**
- * Defines the props that are shared by default.
- *
- * @see https://inertiajs.com/shared-data
- * @param \Illuminate\Http\Request $request
- * @return array
- */
- public function share(Request $request): array
- {
- return array_merge(parent::share($request), [
- 'auth.user' => fn() => $request->user() ? $request->user()->only('id', 'name', 'email') : null,
- 'flash' => function () use ($request) {
- return [
- 'success' => $request->session()->get('success'),
- 'error' => $request->session()->get('error'),
- ];
- },
- 'isAdmin' => fn() => Auth::check() ? Auth::user()->hasRole('Admin') : null,
- ]);
- }
- }
|