23 lines
1.3 KiB
PHP
23 lines
1.3 KiB
PHP
@props(['closable' => true])
|
|
<div x-data="{
|
|
bannerVisible: false,
|
|
bannerVisibleAfter: 100,
|
|
}" x-show="bannerVisible" x-transition:enter="transition ease-out duration-200"
|
|
x-transition:enter-start="-translate-y-10" x-transition:enter-end="translate-y-0"
|
|
x-transition:leave="transition ease-in duration-100" x-transition:leave-start="translate-y-0"
|
|
x-transition:leave-end="-translate-y-10" x-init="setTimeout(() => { bannerVisible = true }, bannerVisibleAfter);"
|
|
class="relative z-50 w-full py-2 mx-auto duration-100 ease-out shadow-sm bg-coolgray-100 sm:py-0 sm:h-14" x-cloak>
|
|
<div class="flex items-center justify-between h-full px-3">
|
|
{{ $slot }}
|
|
@if ($closable)
|
|
<button @click="bannerVisible=false"
|
|
class="flex items-center flex-shrink-0 translate-x-1 ease-out duration-150 justify-center w-6 h-6 p-1.5 text-neutral-200 rounded-full hover:bg-coolgray-500">
|
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5"
|
|
stroke="currentColor" class="w-full h-full">
|
|
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
|
|
</svg>
|
|
</button>
|
|
@endif
|
|
</div>
|
|
</div>
|