2024-09-23 23:49:17 +02:00
|
|
|
<?php
|
|
|
|
|
2024-10-13 21:00:47 +02:00
|
|
|
namespace App\View\Ui;
|
2024-09-23 23:49:17 +02:00
|
|
|
|
|
|
|
use Illuminate\View\Component;
|
|
|
|
|
|
|
|
class Box extends Component
|
|
|
|
{
|
|
|
|
|
|
|
|
public function __construct(
|
|
|
|
public string $containerClass = '',
|
|
|
|
public bool $second = false,
|
|
|
|
public string $title = '',
|
|
|
|
public string $inTitle = '',
|
|
|
|
) {
|
|
|
|
}
|
|
|
|
|
|
|
|
public function render()
|
|
|
|
{
|
|
|
|
return <<<'HTML'
|
|
|
|
<section {!! $attributes
|
|
|
|
->mergeWhen($second, 'class', 'bg-gray-700 group-[.is-popup]:bg-zinc-600')
|
|
|
|
->mergeWhen(!$second, 'class', 'bg-gray-800 group-[.is-popup]:bg-zinc-700')
|
|
|
|
->mergeWhen(true, 'class', 'p-3 rounded-lg flex flex-col')
|
|
|
|
!!}>
|
|
|
|
<div class="flex items-center">
|
|
|
|
@if($title)
|
|
|
|
<div class="col-span-full font-semibold text-gray-300 group-[.is-popup]:text-zinc-300">{{$title}}</div>
|
|
|
|
@endif
|
|
|
|
{{$inTitle}}
|
|
|
|
</div>
|
|
|
|
<main class="{{ $title ? 'mt-2' : '' }} {{ $containerClass }}">
|
|
|
|
{{ $slot }}
|
|
|
|
</main>
|
|
|
|
</section>
|
|
|
|
HTML;
|
|
|
|
}
|
|
|
|
}
|