- show external links in listings - refactor image-input.blade.php to display image while update - refactor image-input.js to show selected image after user clicks submit - refactor components to accept default value - add FileService to handle image update and delete
40 lines
1.0 KiB
PHP
40 lines
1.0 KiB
PHP
@props([
|
|
'options' => [],
|
|
'name' => '',
|
|
'placeholder' => '',
|
|
'labelKey' => 'label',
|
|
'valueKey' => 'value',
|
|
'label' => '',
|
|
'required' => false,
|
|
'selected' => ''
|
|
]
|
|
)
|
|
<div class="flex flex-col space-y-2">
|
|
|
|
@if($label !== '')
|
|
<label class="text-sm font-bold" for="{{$name}}">
|
|
{{$label}}
|
|
@if($required)
|
|
*
|
|
@endif
|
|
</label>
|
|
@endif
|
|
|
|
<select
|
|
name="{{$name}}"
|
|
required="{{$required?'required':''}}"
|
|
class="bg-[#F3F3F5] py-2 px-4 rounded-lg text-sm font-bold invalid:text-accent-600 text-black"
|
|
>
|
|
@if($placeholder !== '')
|
|
<option {{old($name) === ''? 'selected' : ''}} disabled>{{$placeholder}}</option>
|
|
@endif
|
|
|
|
@foreach($options as $option)
|
|
<option
|
|
value="{{$option[$valueKey]}}" {{$option[$valueKey] == old($name, $selected) ? 'selected' : ''}}> {{$option[$labelKey]}} </option>
|
|
@endforeach
|
|
</select>
|
|
|
|
<x-ui.inline-error :name="$name"/>
|
|
</div>
|