@props([ 'wireModel', 'options', 'selected' => null, 'placeholder' => 'Select…', 'live' => true, 'idKey' => 'id', 'labelKey' => 'name', ]) @php $items = collect($options)->map(fn ($option) => [ 'id' => (string) data_get($option, $idKey), 'label' => (string) data_get($option, $labelKey), ])->values(); $selectedItem = $items->first(fn ($item) => $item['id'] === (string) $selected); @endphp