generated from thegrind/laravel-dockerized
124 lines
5.1 KiB
PHP
124 lines
5.1 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}" class="dark">
|
|
|
|
<head>
|
|
@include('partials.head')
|
|
</head>
|
|
|
|
<body class="min-h-screen bg-stone-200 dark:bg-zinc-800">
|
|
<flux:header container class="border-b border-zinc-200 bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900">
|
|
<flux:sidebar.toggle class="lg:hidden" icon="bars-2" inset="left" />
|
|
|
|
<a href="{{ route('dashboard') }}" class="ms-2 me-5 flex items-center space-x-2 rtl:space-x-reverse lg:ms-0"
|
|
wire:navigate>
|
|
<x-app-logo />
|
|
</a>
|
|
|
|
<flux:navbar class="-mb-px max-lg:hidden">
|
|
<flux:navbar.item icon="layout-grid" :href="route('dashboard')" :current="request()->routeIs('dashboard')"
|
|
wire:navigate>
|
|
{{ __('Apps') }}
|
|
</flux:navbar.item>
|
|
<flux:navbar.item icon="key" :href="route('tokens')" :current="request()->routeIs('tokens')"
|
|
wire:navigate>
|
|
{{ __('Tokens') }}
|
|
</flux:navbar.item>
|
|
@can('viewAny', App\Models\User::class)
|
|
<flux:navbar.item icon="users" :href="route('admin.users')" :current="request()->routeIs('admin.users')"
|
|
wire:navigate>
|
|
{{ __('User Management') }}
|
|
</flux:navbar.item>
|
|
@endcan
|
|
</flux:navbar>
|
|
|
|
<flux:spacer />
|
|
|
|
<flux:navbar>
|
|
<flux:radio.group x-data variant="segmented" x-model="$flux.appearance" size="sm">
|
|
<flux:radio value="light" icon="sun" />
|
|
<flux:radio value="dark" icon="moon" />
|
|
<flux:radio value="system" icon="computer-desktop" />
|
|
</flux:radio.group>
|
|
</flux:navbar>
|
|
|
|
<!-- Desktop User Menu -->
|
|
<flux:dropdown position="top" align="end">
|
|
<flux:profile class="cursor-pointer" :initials="auth()->user()->initials()" />
|
|
|
|
<flux:menu>
|
|
<flux:menu.radio.group>
|
|
<div class="p-0 text-sm font-normal">
|
|
<div class="flex items-center gap-2 px-1 py-1.5 text-start text-sm">
|
|
<span class="relative flex h-8 w-8 shrink-0 overflow-hidden rounded-lg">
|
|
<span
|
|
class="flex h-full w-full items-center justify-center rounded-lg bg-neutral-200 text-black dark:bg-neutral-700 dark:text-white">
|
|
{{ auth()->user()->initials() }}
|
|
</span>
|
|
</span>
|
|
|
|
<div class="grid flex-1 text-start text-sm leading-tight">
|
|
<span class="truncate font-semibold">{{ auth()->user()->name }}</span>
|
|
<span class="truncate text-xs">{{ auth()->user()->email }}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</flux:menu.radio.group>
|
|
|
|
<flux:menu.separator />
|
|
|
|
<flux:menu.radio.group>
|
|
<flux:modal.trigger name="user-profile">
|
|
<flux:menu.item>{{ __('Edit your profile') }}
|
|
</flux:menu.item>
|
|
</flux:modal.trigger>
|
|
</flux:menu.radio.group>
|
|
|
|
<flux:menu.separator />
|
|
|
|
<form method="POST" action="{{ route('logout') }}" class="w-full">
|
|
@csrf
|
|
<flux:menu.item as="button" type="submit" icon="arrow-right-start-on-rectangle" class="w-full">
|
|
{{ __('Log Out') }}
|
|
</flux:menu.item>
|
|
</form>
|
|
</flux:menu>
|
|
</flux:dropdown>
|
|
</flux:header>
|
|
|
|
<!-- Mobile Menu -->
|
|
<flux:sidebar stashable sticky
|
|
class="lg:hidden border-e border-zinc-200 bg-zinc-50 dark:border-zinc-700 dark:bg-zinc-900">
|
|
<flux:sidebar.toggle class="lg:hidden" icon="x-mark" />
|
|
|
|
<a href="{{ route('dashboard') }}" class="ms-1 flex items-center space-x-2 rtl:space-x-reverse" wire:navigate>
|
|
<x-app-logo />
|
|
</a>
|
|
|
|
<flux:navlist variant="outline">
|
|
<flux:navlist.group :heading="__('Platform')">
|
|
<flux:navlist.item icon="layout-grid" :href="route('dashboard')"
|
|
:current="request()->routeIs('dashboard')" wire:navigate>
|
|
{{ __('Dashboard') }}
|
|
</flux:navlist.item>
|
|
<flux:navlist.item icon="key" :href="route('tokens')"
|
|
:current="request()->routeIs('tokens')" wire:navigate>
|
|
{{ __('Tokens') }}
|
|
</flux:navlist.item>
|
|
@can('viewAny', App\Models\User::class)
|
|
<flux:navlist.item icon="users" :href="route('admin.users')"
|
|
:current="request()->routeIs('admin.users')" wire:navigate>
|
|
{{ __('User Management') }}
|
|
</flux:navlist.item>
|
|
@endcan
|
|
</flux:navlist.group>
|
|
</flux:navlist>
|
|
|
|
<flux:spacer />
|
|
</flux:sidebar>
|
|
|
|
{{ $slot }}
|
|
|
|
@fluxScripts
|
|
</body>
|
|
|
|
</html> |