@props([ 'name' => '', 'label' => '', 'errors', 'value', 'editing' => '0', 'required' => '0', 'type' => 'text', 'currency' => 'HK$', 'isMinus' => '0', 'class' => '', 'displayValueClass' => '', 'formGroupClass' => '', ]) @php $_class = $class . ' form-control ' . ((isset($errors) && $errors->has($name))? 'is-invalid' : ''); $_value = (isset($value) && strlen($value) > 0)? $value : old($name); $_displayValue = isset($_value)? $_value : __('cms.na'); $_attr = [ 'id' => $name, 'name' => $name, 'class' => $_class, 'type' => $type, 'value' => $_value, ]; $_prepend = null; switch ($type) { case 'number': $_attr['min'] = '0'; break; case 'amount': $_attr['type'] = 'number'; $_attr['min'] = '0'; $_attr['step'] = '0.01'; $_prepend = $currency; break; case 'date': $_attr['type'] = 'text'; $_attr['class'] = $_attr['class'] . ' datetimepicker-input'; $_attr['data-toggle'] = 'datetimepicker'; $_attr['data-target'] = '#' . $name; $_prepend = ''; break; case 'toggle': $_attr['type'] = 'button'; $_attr['class'] = 'btn btn-sm btn-toggle stock_toggle mx-0 mt-2'; if($_attr['value'] == 'ON'){ $_attr['class'] .= ' active'; } $_attr['autocomplete'] = false; $_attr['aria-pressed'] = $_attr['value'] == 'ON'?'true': 'false'; break; default: # code... break; } @endphp
@isset($_prepend)
{!! $_prepend !!}
@endisset @if($type =='toggle') @endif @if($type !== 'toggle') merge($_attr) }} > @endif