mirror of
https://github.com/mokuappio/serverless-invoices.git
synced 2025-10-29 00:41:08 -04:00
Init commit
This commit is contained in:
61
src/components/form/AppTextarea.vue
Normal file
61
src/components/form/AppTextarea.vue
Normal file
@ -0,0 +1,61 @@
|
||||
<template>
|
||||
<div class="form-group">
|
||||
<label :for="field" v-if="label" :class="labelClasses">{{ label }}</label>
|
||||
<div :class="containerClasses">
|
||||
<textarea :disabled="disabled"
|
||||
:id="field"
|
||||
:placeholder="placeholder"
|
||||
class="form-control"
|
||||
:rows="rows"
|
||||
:class="[
|
||||
errors && errors.has(field) ? 'is-invalid' : '',
|
||||
size ? 'form-control-' + size : '',
|
||||
...inputClasses,
|
||||
]"
|
||||
:autocomplete="autocomplete"
|
||||
:maxlength="max"
|
||||
:value="value"
|
||||
@input="$emit('input', $event.target.value)"
|
||||
@change="$emit('change', $event.target.value)"
|
||||
@keydown.self.enter.exact="$emit('submit', $event.target.value)"
|
||||
:ref="field"
|
||||
>
|
||||
</textarea>
|
||||
</div>
|
||||
<slot></slot>
|
||||
<AppError v-if="errors" :errors="errors" :field="field"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AppError from '@/components/form/AppError';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
AppError,
|
||||
},
|
||||
props: {
|
||||
errors: {},
|
||||
label: {},
|
||||
value: {},
|
||||
field: {},
|
||||
type: {},
|
||||
max: {},
|
||||
rows: {},
|
||||
disabled: {},
|
||||
placeholder: {},
|
||||
size: {},
|
||||
labelClasses: {},
|
||||
inputClasses: {},
|
||||
containerClasses: {},
|
||||
autocomplete: {
|
||||
default: 'on',
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
focus() {
|
||||
this.$refs[this.field].focus();
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
Reference in New Issue
Block a user