retrofairie/resources/views/components/window/window.blade.php

66 lines
1.4 KiB
PHP
Raw Normal View History

2025-02-22 06:04:57 +00:00
@props([
'minimize' => true,
'maximize' => false,
'restore' => true,
'help' => false,
'close' => true,
2025-02-23 20:57:03 +00:00
'dismissible' => false,
2025-02-22 06:04:57 +00:00
])
2025-02-23 19:52:18 +00:00
@aware([
'title' => config('app.name', 'Laravel'),
])
2025-02-22 06:04:57 +00:00
@php
if ($restore) {
$maximize = false;
}
2025-02-23 20:57:03 +00:00
if ($dismissible) {
$close = true;
}
2025-02-22 06:04:57 +00:00
@endphp
2025-02-23 20:57:03 +00:00
<div
{{ $attributes->merge(['class' => 'window']) }}
{!! $dismissible ? 'x-data="{ show: true }" x-show="show"' : '' !!}
>
2025-02-22 06:04:57 +00:00
<div class="title-bar">
2025-02-23 19:52:18 +00:00
<div class="title-bar-text">{{ $title }}</div>
2025-02-22 06:04:57 +00:00
@if ($minimize || $maximize || $restore || $help || $close)
<div class="title-bar-controls">
@if ($minimize)
<button class="minimize" aria-hidden="true"></button>
@endif
@if ($maximize)
<button class="maximize" aria-hidden="true"></button>
@endif
@if ($restore)
<button class="restore" aria-hidden="true"></button>
@endif
@if ($help)
<button class="help" aria-hidden="true"></button>
@endif
@if ($close)
2025-02-23 20:57:03 +00:00
<button
class="close"
aria-hidden="true"
{!! $dismissible ? 'x-on:click="show = false"' : '' !!}
></button>
2025-02-22 06:04:57 +00:00
@endif
</div>
@endif
</div>
<div class="window-body">{{ $slot }}</div>
@isset($status_bar)
<div class="status-bar">{{ $status_bar }}</div>
@endisset
</div>