coolify/resources/views/components/inputs/button.blade.php

24 lines
921 B
PHP
Raw Normal View History

2023-05-03 14:09:10 +02:00
@props([
2023-05-03 15:02:21 +02:00
'isWarning' => null,
'defaultClass' => 'text-white bg-neutral-800 hover:bg-violet-600',
'defaultWarningClass' => 'text-white bg-red-500 hover:bg-red-600',
2023-05-03 14:09:10 +02:00
'confirm' => null,
'confirmAction' => null,
])
2023-05-03 15:02:21 +02:00
<button {{ $attributes }} @class([
$defaultClass => !$confirm && !$isWarning,
$defaultWarningClass => $confirm || $isWarning,
]) @if ($attributes->whereStartsWith('wire:click'))
wire:target="{{ $attributes->whereStartsWith('wire:click')->first() }}"
wire:loading.delay.class="text-black bg-green-500" wire:loading.delay.attr="disabled"
wire:loading.delay.class.remove="{{ $defaultClass }} {{ $attributes->whereStartsWith('class')->first() }}"
@endif
@isset($confirm)
x-on:click="toggleConfirmModal('{{ $confirm }}')"
@endisset
@isset($confirmAction)
@confirm.window="$wire.{{ $confirmAction }}()"
@endisset>
2023-05-03 14:09:10 +02:00
{{ $slot }}
</button>