UNPKG

@coreui/vue

Version:

UI Components Library for Vue.js

80 lines (76 loc) 2.58 kB
'use strict'; var vue = require('vue'); var CFormFeedback = require('./CFormFeedback.js'); const CFormControlValidation = vue.defineComponent({ name: 'CFormControlValidation', inheritAttrs: false, props: { /** * @ignore */ describedby: String, /** * Provide valuable, actionable feedback. * * @since 4.3.0 */ feedback: String, /** * Provide valuable, actionable feedback. * * @since 4.3.0 */ feedbackInvalid: String, /** * Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, `:invalid` and `:valid`. * * @since 4.3.0 */ feedbackValid: String, /** * Set component validation state to invalid. */ invalid: Boolean, /** * Display validation feedback in a styled tooltip. * * @since 4.3.0 */ tooltipFeedback: Boolean, /** * Set component validation state to valid. */ valid: Boolean, }, setup(props, { slots }) { return () => [ props.feedback && (props.valid || props.invalid) && vue.h(CFormFeedback.CFormFeedback, { ...(props.invalid && { id: props.describedby }), invalid: props.invalid, tooltip: props.tooltipFeedback, valid: props.valid, }, { default: () => (slots.feedback && slots.feedback()) || props.feedback, }), (props.feedbackInvalid || slots.feedbackInvalid) && vue.h(CFormFeedback.CFormFeedback, { id: props.describedby, invalid: true, tooltip: props.tooltipFeedback, }, { default: () => (slots.feedbackInvalid && slots.feedbackInvalid()) || props.feedbackInvalid, }), (props.feedbackValid || slots.feedbackValid) && vue.h(CFormFeedback.CFormFeedback, { tooltip: props.tooltipFeedback, valid: true, }, { default: () => (slots.feedbackValid && slots.feedbackValid()) || props.feedbackValid, }), ]; }, }); exports.CFormControlValidation = CFormControlValidation; //# sourceMappingURL=CFormControlValidation.js.map