UNPKG

@dialpad/dialtone-vue

Version:

Vue component library for Dialpad's design system Dialtone

77 lines (76 loc) 2.36 kB
import { validationMessageValidator as r } from "../../common/validators/index.js"; import { getValidationState as o, filterFormattedMessages as d, getUniqueString as l } from "../../common/utils/index.js"; import { n as g } from "../../_plugin-vue2_normalizer-DSLOjnn3.js"; const m = { name: "DtValidationMessages", props: { /** * The id of the validation message */ id: { type: String, default() { return l(); } }, /** * Array of validation messages. Each message has the following structure: * `{ message: "Some informative message", type: "error|warning|success"}` */ validationMessages: { type: Array, default: () => [], validator: (s) => r(s) }, /** * Show Validation messages * @values true, false */ showMessages: { type: Boolean, default: !0 } }, computed: { isFilteredValidationMessagesEmpty() { return this.filteredValidationMessages.length === 0; }, filteredValidationMessages() { return d(this.validationMessages); }, validationState() { return o(this.validationMessages); } }, methods: { getMessageKey(s, e) { return `validation-message-${s}-${e}-${this.id}`; }, messageTypeClass(s) { return { error: "base-input__message--error d-validation-message--error", warning: "base-input__message--warning d-validation-message--warning", success: "base-input__message--success d-validation-message--success" }[s]; } } }; var _ = function() { var e = this, a = e._self._c; return e.showMessages && !e.isFilteredValidationMessagesEmpty ? a("div", { staticClass: "base-input__messages d-validation-message__container", attrs: { "data-qa": "validation-messages-container" } }, e._l(e.filteredValidationMessages, function({ message: i, type: t }, n) { return a("div", { key: e.getMessageKey(t, n), class: [ "base-input__message", "d-validation-message", e.messageTypeClass(t) ], attrs: { role: "status", "aria-live": "polite", "data-qa": "validation-message" } }, [a("p", { domProps: { innerHTML: e._s(i) } })]); }), 0) : e._e(); }, p = [], u = /* @__PURE__ */ g( m, _, p ); const M = u.exports; export { M as default }; //# sourceMappingURL=validation-messages.js.map