feat(input): Setting validation status and message. (#172)

* feat(input): Setting validation status and message.

* Update src/components/Input/composables/useInputClasses.ts

* Update docs/components/input/examples/InputValidationExample.vue

* Update docs/components/input/examples/InputValidationExample.vue

* Update docs/components/input.md

* Update docs/components/input.md

---------

Co-authored-by: Ilya Artamonov <ilya.sosidka@gmail.com>
This commit is contained in:
Nguyễn Hồng Quân
2023-09-09 00:07:48 +07:00
committed by GitHub
parent df27de24d6
commit 580bf14504
9 changed files with 82 additions and 12 deletions

View File

@@ -6,6 +6,7 @@ import InputHelperExample from './input/examples/InputHelperExample.vue';
import InputPrefixExample from './input/examples/InputPrefixExample.vue';
import InputSuffixExample from './input/examples/InputSuffixExample.vue'
import InputRequiredExample from './input/examples/InputRequiredExample.vue'
import InputValidationExample from './input/examples/InputValidationExample.vue'
</script>
# Vue Input - Flowbite
@@ -124,3 +125,24 @@ import { Input, Button } from 'flowbite-vue'
```
<InputSuffixExample />
## Slot - Validation
- Set validation status via `validationStatus` props, which accepts `'success'` or `'error'`.
- Add validation message via `validationMessage` slot.
```vue
<script setup>
import { Input } from 'flowbite-vue'
</script>
<template>
<Input v-model='email' required placeholder="enter your email address" label="Email" validation-status='success' />
<Input v-model='email' required placeholder="enter your email address" label="Email" validation-status='error'>
<template #validationMessage>
Please enter a valid email address
</template>
</Input>
</template>
```
<InputValidationExample />