Files
2026-09-21 10:14:57 +01:00

35 lines
1.6 KiB
PHP
Executable File

@php
$fieldWrapperView = $getFieldWrapperView();
$id = $getId();
$isDisabled = $isDisabled();
$isMultiple = $isMultiple();
$statePath = $getStatePath();
$areButtonLabelsHidden = $areButtonLabelsHidden();
$wireModelAttribute = $applyStateBindingModifiers('wire:model');
$extraInputAttributeBag = $getExtraInputAttributeBag()->class(['fi-fo-toggle-buttons-input']);
@endphp
<x-dynamic-component :component="$fieldWrapperView" :field="$field" tabindex="-1" class="fi-fo-toggle-buttons-wrp">
<div {{ $getExtraAttributeBag()->class(['fi-fo-toggle-buttons fi-btn-group']) }}>
@foreach ($getOptions() as $value => $label)
@php
$inputId = "{$id}-{$value}";
$shouldOptionBeDisabled = $isDisabled || $isOptionDisabled($value, $label);
$color = $getColor($value);
$icon = $getIcon($value);
$tooltip = $getTooltip($value);
@endphp
<input @disabled($shouldOptionBeDisabled) id="{{ $inputId }}"
@if (!$isMultiple) name="{{ $id }}" @endif
type="{{ $isMultiple ? 'checkbox' : 'radio' }}" value="{{ $value }}" wire:loading.attr="disabled"
{{ $wireModelAttribute }}="{{ $statePath }}" {{ $extraInputAttributeBag }} />
<x-filament::button :color="$color" :disabled="$shouldOptionBeDisabled" :for="$inputId" grouped :icon="$icon"
:label-sr-only="$areButtonLabelsHidden" tag="label" :tooltip="$tooltip">
{{ $label }}
</x-filament::button>
@endforeach
</div>
</x-dynamic-component>