{{-- format-ignore-start --}} @props([ // name of the datepicker. This name is used when posting the form with the datepicker 'name' => defaultBladewindName(), 'hourLabel' => config('bladewind.timepicker.hour_label', __("bladewind::bladewind.timepicker_hour_label")), 'minuteLabel' => config('bladewind.timepicker.minute_label', __("bladewind::bladewind.timepicker_minute_label")), 'formatLabel' => config('bladewind.timepicker.format_label', __("bladewind::bladewind.timepicker_format_label")), 'required' => false, // what should the time hours be displayed as. Available options are 12, 24 'format' => config('bladewind.timepicker.format', '12'), 'selectedValue' => '', 'style' => config('bladewind.timepicker.style', 'popup'), 'label' => '', 'placeholder' => config('bladewind.timepicker.placeholder', __("bladewind::bladewind.timepicker_placeholder")), 'nonce' => config('bladewind.script.nonce', null), ]) @php $name = parseBladewindName($name); if(!empty($selectedValue)) { $selected_time_array = explode(':', str_replace(' ', '', $selectedValue)); $selected_hour = $selected_time_array[0]; $selected_minute = substr($selected_time_array[1], 0, 2); $selected_format = (strlen($selected_time_array[1]) > 2) ? strtoupper(substr($selected_time_array[1], 2, 2)) : ''; } @endphp {{-- format-ignore-end --}} @if($style == 'popup')
@once const clockIcon = domEl('.bw-timepicker-{{$name}} .suffix').innerHTML; const clearIcon = domEl('.clear-time').innerHTML; @endonce
@if($format == '12')
{{ __('bladewind::bladewind.timepicker_am') }}
{{ __('bladewind::bladewind.timepicker_pm') }}
@endif
@once @endonce @else
@for($hours=1; $hours < (($format=='12') ? 13:24); $hours++) @php $hours = (($format=='12') ? $hours : str_pad($hours, 2, '0', STR_PAD_LEFT)) @endphp @endfor @if($format !== '12') @endif
@for($minutes=1; $minutes < 60; $minutes++) @php $minutes = str_pad($minutes, 2, '0', STR_PAD_LEFT) @endphp @endfor
@if($format == '12')
@endif
const setTime_{{$name}} = () => { let field = domEl(`.bw-time-{{$name}}`); if (field) { let hour = domEl('.bw-{{$name}}_hh').value; let minute = ':' + domEl('.bw-{{$name}}_mm').value; let format = domEl('.bw-{{$name}}_format').value; let time = `${hour}${minute}${format ?? ''}`; if (time.length >= 4) { field.value = time; } } } @endif