@props([ 'name', 'label', 'options' => [], 'selected' => null, 'valueKey' => 'id', 'labelKey' => 'name', 'placeholder' => null, 'required' => false, 'col' => 'col-md-6', 'searchable' => true, ]) @php $current = old($name, $selected); // Accepts an Eloquent collection, or a plain [value => label] / [value, …] array. $items = collect($options)->map(function ($option) use ($valueKey, $labelKey) { if (is_object($option)) { return ['value' => $option->{$valueKey}, 'label' => (string) $option->{$labelKey}]; } return ['value' => $option, 'label' => (string) $option]; }); @endphp
@error($name)
{{ $message }}
@enderror