113 lines
7.3 KiB
PHP
113 lines
7.3 KiB
PHP
|
|
<!DOCTYPE html>
|
||
|
|
<html
|
||
|
|
lang="{{ str_replace('_', '-', app()->getLocale()) }}"
|
||
|
|
x-data="{ darkMode: $persist(false) }"
|
||
|
|
:class="{'dark': darkMode}"
|
||
|
|
x-init="
|
||
|
|
if (!('darkMode' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||
|
|
localStorage.setItem('darkMode', JSON.stringify(true));
|
||
|
|
}
|
||
|
|
darkMode = JSON.parse(localStorage.getItem('darkMode'));
|
||
|
|
$watch('darkMode', value => localStorage.setItem('darkMode', JSON.stringify(value)))"
|
||
|
|
>
|
||
|
|
<head>
|
||
|
|
<meta charset="utf-8">
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
|
|
@vite('resources/css/app.css')
|
||
|
|
@vite('resources/js/app.js')
|
||
|
|
<title>{{ $title ?? config('app.name') }}</title>
|
||
|
|
</head>
|
||
|
|
<body class="bg-white dark:bg-gray-800 min-h-screen flex flex-col">
|
||
|
|
@persist('theme-switcher')
|
||
|
|
<x-theme-switcher />
|
||
|
|
@endpersist
|
||
|
|
{{ $slot }}
|
||
|
|
|
||
|
|
<x-menu />
|
||
|
|
<style>
|
||
|
|
#toaster[data-expanded="true"] {
|
||
|
|
height: var(--full-height);
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster > div {
|
||
|
|
--scale: var(--index) * 0.05 + 1;
|
||
|
|
transform: translate(var(--swipe-amount, 0px), calc(14px * var(--index) + var(--front-toast-height) - 100%)) scale(calc(-1 * var(--scale)));
|
||
|
|
touch-action: none;
|
||
|
|
will-change: transform, opacity;
|
||
|
|
cursor: grab;
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster > div[data-swiping="true"] {
|
||
|
|
cursor: grabbing;
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster > div[data-removed="true"],
|
||
|
|
#toaster > div[data-hidden="true"] {
|
||
|
|
opacity: 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster[data-expanded="true"] > div[data-hidden="true"] {
|
||
|
|
opacity: 100;
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster[data-expanded="true"] > div[data-front="true"],
|
||
|
|
#toaster:hover > div[data-front="true"] {
|
||
|
|
transform: translate(var(--swipe-amount, 0px), 0);
|
||
|
|
}
|
||
|
|
|
||
|
|
#toaster[data-expanded="true"] > div,
|
||
|
|
#toaster:hover > div {
|
||
|
|
transform: translate(var(--swipe-amount, 0px), calc(var(--index) * 14px + var(--offset))) scale(1);
|
||
|
|
}
|
||
|
|
</style>
|
||
|
|
<!--
|
||
|
|
<div id="toaster" class="fixed right-4 top-4 z-50 group">
|
||
|
|
<div class="absolute flex items-center w-full max-w-xs p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800" data-first="true" style="z-index: 3; --index: 0;" role="alert">
|
||
|
|
<div class="inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-green-500 bg-green-100 rounded-lg dark:bg-green-800 dark:text-green-200">
|
||
|
|
<svg class="w-5 h-5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
|
||
|
|
<path d="M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 8.207-4 4a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L9 10.586l3.293-3.293a1 1 0 0 1 1.414 1.414Z"/>
|
||
|
|
</svg>
|
||
|
|
<span class="sr-only">Check icon</span>
|
||
|
|
</div>
|
||
|
|
<div class="ms-3 text-sm font-normal">Item moved successfully.Item moved successfully.Item moved successfully.Item moved successfully.</div>
|
||
|
|
<button type="button" class="ms-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700" data-dismiss-target="#toast-success" aria-label="Close">
|
||
|
|
<span class="sr-only">Close</span>
|
||
|
|
<svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 14">
|
||
|
|
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
|
||
|
|
</svg>
|
||
|
|
</button>
|
||
|
|
</div>
|
||
|
|
<div class="absolute flex items-center w-full max-w-xs p-4 mb-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800" style="z-index: 2; --index: 1" role="alert">
|
||
|
|
<div class="inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-red-500 bg-red-100 rounded-lg dark:bg-red-800 dark:text-red-200">
|
||
|
|
<svg class="w-5 h-5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
|
||
|
|
<path d="M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5Zm3.707 11.793a1 1 0 1 1-1.414 1.414L10 11.414l-2.293 2.293a1 1 0 0 1-1.414-1.414L8.586 10 6.293 7.707a1 1 0 0 1 1.414-1.414L10 8.586l2.293-2.293a1 1 0 0 1 1.414 1.414L11.414 10l2.293 2.293Z"/>
|
||
|
|
</svg>
|
||
|
|
<span class="sr-only">Error icon</span>
|
||
|
|
</div>
|
||
|
|
<div class="ms-3 text-sm font-normal">Item has been deleted.</div>
|
||
|
|
<button type="button" class="ms-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700" data-dismiss-target="#toast-danger" aria-label="Close">
|
||
|
|
<span class="sr-only">Close</span>
|
||
|
|
<svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 14">
|
||
|
|
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
|
||
|
|
</svg>
|
||
|
|
</button>
|
||
|
|
</div>
|
||
|
|
<div class="flex items-center w-full max-w-xs p-4 text-gray-500 bg-white rounded-lg shadow dark:text-gray-400 dark:bg-gray-800" style="z-index: 1; --index: 2" role="alert">
|
||
|
|
<div class="inline-flex items-center justify-center flex-shrink-0 w-8 h-8 text-orange-500 bg-orange-100 rounded-lg dark:bg-orange-700 dark:text-orange-200">
|
||
|
|
<svg class="w-5 h-5" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 20 20">
|
||
|
|
<path d="M10 .5a9.5 9.5 0 1 0 9.5 9.5A9.51 9.51 0 0 0 10 .5ZM10 15a1 1 0 1 1 0-2 1 1 0 0 1 0 2Zm1-4a1 1 0 0 1-2 0V6a1 1 0 0 1 2 0v5Z"/>
|
||
|
|
</svg>
|
||
|
|
<span class="sr-only">Warning icon</span>
|
||
|
|
</div>
|
||
|
|
<div class="ms-3 text-sm font-normal">Improve password difficulty.</div>
|
||
|
|
<button type="button" class="ms-auto -mx-1.5 -my-1.5 bg-white text-gray-400 hover:text-gray-900 rounded-lg focus:ring-2 focus:ring-gray-300 p-1.5 hover:bg-gray-100 inline-flex items-center justify-center h-8 w-8 dark:text-gray-500 dark:hover:text-white dark:bg-gray-800 dark:hover:bg-gray-700" data-dismiss-target="#toast-warning" aria-label="Close">
|
||
|
|
<span class="sr-only">Close</span>
|
||
|
|
<svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 14 14">
|
||
|
|
<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"/>
|
||
|
|
</svg>
|
||
|
|
</button>
|
||
|
|
</div>
|
||
|
|
</div>-->
|
||
|
|
</body>
|
||
|
|
</html>
|