@props([
'name',
'show' => false,
'maWidth' => '2l'
])
@php
$maWidth = [
'sm' => 'sm:max-w-sm',
'md' => 'sm:max-w-md',
'lg' => 'sm:max-w-lg',
'l' => 'sm:max-w-l',
'2l' => 'sm:max-w-2l',
][$maWidth];
@endphp
{
if (value) {
document.body.classList.add('overflow-y-hidden');
{{ $attributes->has('focusable') ? 'setTimeout(() => firstFocusable().focus(), 100)' : '' }}
} else {
document.body.classList.remove('overflow-y-hidden');
}
})"
-on:open-modal.window="$event.detail == '{{ $name }}' ? show = true : null"
-on:close.stop="show = false"
-on:keydown.escape.window="show = false"
-on:keydown.tab.prevent="$event.shiftKey || netFocusable().focus()"
-on:keydown.shift.tab.prevent="prevFocusable().focus()"
x-show="show"
class="fixed inset-0 overflow-y-auto p-4 py-6 sm:p-0 z-50"
style="display: {{ $show ? 'block' : 'none' }};"
>
{{ $slot }}