UNPKG

@dialpad/dialtone

Version:

Dialpad's Dialtone design system monorepo

84 lines (83 loc) 2.74 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const input_group = require("../../common/mixins/input_group.cjs"); const _pluginVue2_normalizer = require("../../_virtual/_plugin-vue2_normalizer.cjs"); const validation_messages = require("../validation_messages/validation_messages.vue.cjs"); const _sfc_main = { name: "DtInputGroup", components: { DtValidationMessages: validation_messages.default }, mixins: [input_group.InputGroupMixin], props: { /** * A data qa tag for the input group */ dataQaGroup: { type: String, default: "input-group" }, /** * A data qa tag for the input group legend */ dataQaGroupLegend: { type: String, default: "input-group-legend" }, /** * A data qa tag for the input group messages */ dataQaGroupMessages: { type: String, default: "input-group-messages" } }, emits: [ /** * Native input event * * @event input */ "input" ], data() { return { internalValue: this.value, // wrap values in object to make reactive provideObj: { value: this.value } }; }, watch: { value(newValue) { this.internalValue = newValue; }, /* * watching value to support 2 way binding for slotted inputs. * need this to pass value to slotted inputs if modified outside * input group. */ internalValue(newInternalValue) { this.provideObj.value = newInternalValue; } }, methods: { getMessageKey(type, index) { return `input-group-message-${type}-${index}-${this.id}`; } } }; var _sfc_render = function render() { var _vm = this, _c = _vm._self._c; return _c("fieldset", { staticClass: "d-input-group__fieldset", attrs: { "data-qa": _vm.dataQaGroup } }, [_vm.$slots.legend || _vm.legend ? _c("legend", _vm._b({ class: ["d-label", _vm.legendClass], attrs: { "data-qa": _vm.dataQaGroupLegend } }, "legend", _vm.legendChildProps, false), [_vm._t("legend", function() { return [_vm._v(" " + _vm._s(_vm.legend) + " ")]; })], 2) : _vm._e(), _vm._t("default"), _c("dt-validation-messages", _vm._b({ class: _vm.messagesClass, attrs: { "validation-messages": _vm.formattedMessages, "show-messages": _vm.showMessages, "data-qa": _vm.dataQaGroupMessages } }, "dt-validation-messages", _vm.messagesChildProps, false))], 2); }; var _sfc_staticRenderFns = []; var __component__ = /* @__PURE__ */ _pluginVue2_normalizer.default( _sfc_main, _sfc_render, _sfc_staticRenderFns ); const DtInputGroup = __component__.exports; exports.default = DtInputGroup; //# sourceMappingURL=input_group.vue.cjs.map