@inkline/inkline
Version:
Inkline is the Vue.js UI/UX Library built for creating your next design system
35 lines (34 loc) • 1.18 kB
HTML
<div class="input-wrapper" :class="classes">
<div class="input-prepend" v-if="$slots.prepend">
<slot name="prepend" />
</div>
<div class="input">
<span class="input-prefix" v-if="$slots.prefix">
<slot name="prefix" />
</span>
<textarea
v-bind="$attrs"
:value="value"
ref="input"
role="textbox"
:name="name"
:id="id"
:tabindex="tabIndex"
:disabled="isDisabled"
:aria-disabled="isDisabled ? 'true' : false"
:readonly="isReadonly"
:aria-readonly="isReadonly ? 'true' : false"
aria-multiline="true"
@input="onInput"
@blur="onBlur" />
<span class="input-suffix" v-if="$slots.suffix || clearable && isClearable">
<slot name="clearable" :clear="onClear">
<i class="input-clear" aria-label="Clear" v-show="isClearable" @click="onClear"></i>
</slot>
<slot name="suffix" />
</span>
</div>
<div class="input-append" v-if="$slots.append">
<slot name="append" />
</div>
</div>