62 lines
2.4 KiB
PHP
62 lines
2.4 KiB
PHP
@stack($name . '_input_start')
|
|
<div
|
|
@class([
|
|
'relative',
|
|
$formGroupClass,
|
|
'required' => $required,
|
|
'readonly' => $readonly,
|
|
'disabled' => $disabled,
|
|
])
|
|
|
|
@if (isset($attributes['v-show']))
|
|
v-if="{{ $attributes['v-show'] }}"
|
|
@endif
|
|
|
|
@if (isset($attributes['v-disabled']) || isset($attributes['v-bind:disabled']))
|
|
:class="[
|
|
{'disabled' : {{ (isset($attributes['v-disabled'])) ? $attributes['v-disabled'] : $attributes['v-bind:disabled'] }}},
|
|
{'has-error': {{ isset($attributes['v-error']) ? $attributes['v-error'] : 'form.errors.get("' . $name . '")' }}}
|
|
]"
|
|
@else
|
|
:class="[
|
|
{'has-error': {{ isset($attributes['v-error']) ? $attributes['v-error'] : 'form.errors.get("' . $name . '")' }}}
|
|
]"
|
|
@endif
|
|
>
|
|
@if (! $attributes->has('label') && ! empty($label->contents))
|
|
{!! $label ?? '' !!}
|
|
@elseif (! empty($label))
|
|
<x-form.label for="{{ $name }}" :required="$required">{!! $label !!}</x-form.label>
|
|
@endif
|
|
|
|
@php
|
|
$vue_key = '@input';
|
|
$vue_value = !empty($attributes['v-model']) ? $attributes['v-model'] . ' = $event.target.value' : (!empty($attributes['data-field']) ? 'form.' . $attributes['data-field'] . '.'. $name . ' = $event.target.value' : 'form.' . $name . ' = $event.target.value');
|
|
|
|
if (!empty($attributes['enable-v-model'])) {
|
|
$vue_key = 'v-model';
|
|
$vue_value = !empty($attributes['v-model']) ? $attributes['v-model'] : (!empty($attributes['data-field']) ? 'form.' . $attributes['data-field'] . '.'. $name : 'form.' . $name);
|
|
}
|
|
|
|
$custom_attributes = array_merge([$vue_key => $vue_value], $custom_attributes);
|
|
$rows = !empty($rows) ? $rows : 3;
|
|
@endphp
|
|
|
|
<x-form.input.textarea
|
|
name="{{ $name }}"
|
|
id="{{ $id }}"
|
|
value="{!! $value !!}"
|
|
placeholder="{{ $placeholder }}"
|
|
rows="{{ $rows }}"
|
|
:disabled="$disabled"
|
|
{{ $attributes->merge($custom_attributes) }}
|
|
/>
|
|
|
|
@if (! $attributes->has('error') && ! empty($error->contents))
|
|
{!! $error ?? '' !!}
|
|
@else
|
|
<x-form.error name="{{ $name }}" {{ $attributes }} />
|
|
@endif
|
|
</div>
|
|
@stack($name . '_input_end')
|