{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/mixins/form-selection.js","webpack:///./src/@core/components/b-card-code/index.js","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroup.vue?b840","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupBasic.vue?dc78","webpack:///./src/views/forms/form-element/form-input-group/code.js","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupBasic.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupBasic.vue?0307","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupBasic.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupMerged.vue?a3dc","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupMerged.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupMerged.vue?8720","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupMerged.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupCheckboxRadio.vue?2238","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupCheckboxRadio.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupCheckboxRadio.vue?586f","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupCheckboxRadio.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupSize.vue?da86","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupSize.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupSize.vue?f2ec","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupSize.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupButton.vue?49d5","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupButton.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupButton.vue?9528","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupButton.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupDropdown.vue?595c","webpack:///src/views/forms/form-element/form-input-group/FormInputGroupDropdown.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupDropdown.vue?f155","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroupDropdown.vue","webpack:///src/views/forms/form-element/form-input-group/FormInputGroup.vue","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroup.vue?a93e","webpack:///./src/views/forms/form-element/form-input-group/FormInputGroup.vue","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-validity.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-prepend.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-addon.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-input/form-input.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group.js","webpack:///./node_modules/bootstrap-vue/esm/directives/visible/visible.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-textarea/form-textarea.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-radio/form-radio.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-custom.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-size.js","webpack:///./src/@core/mixins/ui/forms.js","webpack:///./node_modules/bootstrap-vue/esm/components/form-checkbox/form-checkbox.js","webpack:///./node_modules/bootstrap-vue/esm/utils/loose-index-of.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-append.js","webpack:///./node_modules/bootstrap-vue/esm/components/input-group/input-group-text.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-radio-check.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-control.js"],"names":["formSelectionMixin","extend","computed","selectionStart","cache","get","this","$refs","input","set","val","selectionEnd","selectionDirection","methods","select","_this$$refs$input","apply","arguments","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","BCardCode","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","staticRenderFns","scopedSlots","_u","key","fn","_v","_s","codeBasic","proxy","passwordFieldType","passwordToggleIcon","on","togglePasswordVisibility","codeButton","codeCheckboxRadio","codeDropdown","codeSize","codeMerged","components","BFormTextarea","BInputGroup","BFormGroup","BFormInput","BInputGroupPrepend","BInputGroupAppend","mixins","data","component","model","value","callback","$$v","radio1","expression","BRow","BCol","BFormCheckbox","BFormRadio","BButton","BDropdownDivider","BDropdown","BDropdownItem","FormInputGroupBasic","FormInputGroupMerged","FormInputGroupCheckboxRadio","FormInputGroupSize","FormInputGroupButton","FormInputGroupDropdown","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","target","i","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","props","name","functional","h","_ref","children","append","_makeModelMixin","type","defaultValue","event","modelMixin","mixin","modelProps","MODEL_PROP_NAME","prop","MODEL_EVENT_NAME","ariaInvalid","autocomplete","debounce","formatter","lazy","lazyFormatter","number","placeholder","plaintext","readonly","trim","formTextMixin","localValue","vModelValue","modifyValue","computedClass","isRange","isColor","sizeFormClass","stateClass","computedDebounce","hasFormatter","watch","newValue","stringifyValue","modifiedValue","clearDebounce","created","$_inputDebounceTimer","mounted","$on","beforeDestroy","clearTimeout","formatValue","force","undefined","updateValue","_this","doUpdate","$emit","$input","setTimeout","onInput","composing","formattedValue","defaultPrevented","propagation","onChange","onBlur","focus","disabled","$el","blur","id","isText","tag","BInputGroupAddon","class","TYPES","list","max","min","noWheel","step","localType","computedAttrs","form","required","safeId","computedAriaInvalid","computedListeners","bvListeners","change","setWheelStopper","deactivated","activated","onWheelFocus","onWheelBlur","document","stopWheel","domProps","ref","appendHtml","prepend","prependHtml","size","slots","$scopedSlots","$slots","slotScope","$prepend","hasPrependSlot","$append","hasAppendSlot","concat","role","_classCallCheck","instance","Constructor","TypeError","_defineProperties","descriptor","_createClass","protoProps","staticProps","prototype","OBSERVER_PROP_NAME","VisibilityObserver","el","options","vnode","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","handler","bind","root","rootMargin","threshold","_unused","context","$nextTick","observe","entries","entry","isIntersecting","Boolean","intersectionRatio","disconnect","destroy","modifiers","mod","test","toLowerCase","_prevModifiers","componentUpdated","_ref2","oldValue","unbind","VBVisible","maxRows","noAutoShrink","noResize","rows","wrap","directives","heightInPx","computedStyle","styles","resize","computedRows","height","overflowY","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderTopWidth","borderBottomWidth","padding","paddingTop","paddingBottom","offset","minHeight","oldHeight","scrollHeight","contentRows","style","inject","bvGroup","from","default","computedLocalChecked","plain","formCustomMixin","custom","formSizeMixin","_objectSpread2","array","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","isChecked","checked","isRadio","setIndeterminate","computedLocalCheckedWatcher","indeterminate","handleChange","_ref$target","uncheckedValue","localChecked","index","slice","isGroup","state","BInputGroupText","_watch","_methods","ariaLabel","ariaLabelledby","button","buttonVariant","inline","formRadioCheckMixin","inheritAttrs","hasFocus","isBtnMode","buttons","isPlain","isCustom","isSwitch","switches","switch","isInline","isDisabled","isRequired","computedName","groupName","computedForm","computedSize","computedState","computedButtonVariant","buttonClasses","bvAttrs","$content","normalizeSlot","handleFocus","$button","$label","for","SELECTOR","autofocus","formControlMixin","handleAutofocus"],"mappings":"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","file":"js/chunk-48c942b5.2595ece0.js","sourcesContent":["import { Vue } from '../vue'; // @vue/component\n\nexport var formSelectionMixin = Vue.extend({\n computed: {\n selectionStart: {\n // Expose selectionStart for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionStart;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionStart = val;\n }\n },\n selectionEnd: {\n // Expose selectionEnd for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionEnd;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionEnd = val;\n }\n },\n selectionDirection: {\n // Expose selectionDirection for formatters, etc\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.selectionDirection;\n },\n\n /* istanbul ignore next */\n set: function set(val) {\n this.$refs.input.selectionDirection = val;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n select: function select() {\n var _this$$refs$input;\n\n // For external handler that may want a select() method\n (_this$$refs$input = this.$refs.input).select.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n setSelectionRange: function setSelectionRange() {\n var _this$$refs$input2;\n\n // For external handler that may want a setSelectionRange(a,b,c) method\n (_this$$refs$input2 = this.$refs.input).setSelectionRange.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n setRangeText: function setRangeText() {\n var _this$$refs$input3;\n\n // For external handler that may want a setRangeText(a,b,c) method\n (_this$$refs$input3 = this.$refs.input).setRangeText.apply(_this$$refs$input3, arguments);\n }\n }\n});","import BCardCode from './BCardCode.vue'\n\nexport default BCardCode\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-row',{staticClass:\"match-height\"},[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('form-input-group-basic')],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('form-input-group-merged')],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('form-input-group-size')],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('form-input-group-checkbox-radio')],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('form-input-group-button')],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('form-input-group-dropdown')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Basic\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeBasic)+\" \")]},proxy:true}])},[_c('div',{staticClass:\"demo-vertical-spacing\"},[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('feather-icon',{attrs:{\"icon\":\"SearchIcon\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Search\"}})],1),_c('b-form-group',[_c('label',{attrs:{\"for\":\"basic-password\"}},[_vm._v(\"Password\")]),_c('b-input-group',[_c('b-form-input',{attrs:{\"id\":\"basic-password\",\"type\":_vm.passwordFieldType,\"placeholder\":\"Your Password\"}}),_c('b-input-group-append',{attrs:{\"is-text\":\"\"}},[_c('feather-icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":_vm.passwordToggleIcon},on:{\"click\":_vm.togglePasswordVisibility}})],1)],1)],1),_c('b-input-group',{attrs:{\"prepend\":\"@\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Username\"}})],1),_c('b-input-group',{attrs:{\"append\":\"@example.com\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Recipient's username\"}})],1),_c('b-input-group',{attrs:{\"prepend\":\"https://example.com/users/\"}},[_c('b-form-input')],1),_c('b-input-group',{attrs:{\"prepend\":\"$\",\"append\":\".00\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"100\"}})],1),_c('b-input-group',{attrs:{\"prepend\":\"With textarea\"}},[_c('b-form-textarea')],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const codeAddons = `\n\n \n \n \n \n $\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n $\n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n`\n\nexport const codeBasic = `\n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n\n\n`\n\nexport const codeButton = `\n\n \n \n \n \n \n \n \n GO\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Search !\n \n \n \n \n \n\n\n\n`\n\nexport const codeCheckboxRadio = `\n\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n Custom checkbox and radio\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n`\n\nexport const codeDropdown = `\n\n \n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n\n \n \n \n\n\n\n`\n\nexport const codeSize = `\n\n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n\n\n`\n\nexport const codeMerged = `\n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n\n\n`\n","\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n \n {{ codeBasic }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupBasic.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupBasic.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupBasic.vue?vue&type=template&id=1efa28ec&\"\nimport script from \"./FormInputGroupBasic.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupBasic.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Merged\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeMerged)+\" \")]},proxy:true}])},[_c('div',{staticClass:\"demo-vertical-spacing\"},[_c('b-input-group',{staticClass:\"input-group-merge\"},[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('feather-icon',{attrs:{\"icon\":\"SearchIcon\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Search\"}})],1),_c('b-form-group',[_c('label',{attrs:{\"for\":\"basic-password1\"}},[_vm._v(\"Password\")]),_c('b-input-group',{staticClass:\"input-group-merge\"},[_c('b-form-input',{attrs:{\"id\":\"basic-password1\",\"type\":_vm.passwordFieldType,\"placeholder\":\"Your Password\"}}),_c('b-input-group-append',{attrs:{\"is-text\":\"\"}},[_c('feather-icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":_vm.passwordToggleIcon},on:{\"click\":_vm.togglePasswordVisibility}})],1)],1)],1),_c('b-input-group',{staticClass:\"input-group-merge\",attrs:{\"prepend\":\"@\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Username\"}})],1),_c('b-input-group',{staticClass:\"input-group-merge\",attrs:{\"append\":\"@example.com\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Recipient's username\"}})],1),_c('b-input-group',{staticClass:\"input-group-merge\",attrs:{\"prepend\":\"https://example.com/users/\"}},[_c('b-form-input')],1),_c('b-input-group',{staticClass:\"input-group-merge\",attrs:{\"prepend\":\"$\",\"append\":\".00\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"100\"}})],1),_c('b-input-group',{staticClass:\"input-group-merge\",attrs:{\"prepend\":\"With textarea\"}},[_c('b-form-textarea')],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n \n {{ codeMerged }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupMerged.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupMerged.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupMerged.vue?vue&type=template&id=60d686f4&\"\nimport script from \"./FormInputGroupMerged.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupMerged.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Checkbox and radio addons\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeCheckboxRadio)+\" \")]},proxy:true}])},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('b-form-checkbox',{attrs:{\"plain\":\"\",\"name\":\"checkbox-input\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Message\"}})],1)],1)],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('b-form-radio',{attrs:{\"value\":\"radio2\",\"plain\":\"\",\"name\":\"radio-input1\"},model:{value:(_vm.radio1),callback:function ($$v) {_vm.radio1=$$v},expression:\"radio1\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Message\"}})],1)],1)],1),_c('b-col',{staticClass:\" my-1\",attrs:{\"cols\":\"12\"}},[_c('small',{staticClass:\"font-weight-semibold\"},[_vm._v(\"Custom checkbox and radio\")])]),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('b-form-checkbox',{attrs:{\"name\":\"checkbox-input\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Message\"}})],1)],1)],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('b-form-radio',{attrs:{\"value\":\"radio2\",\"name\":\"radio-input1\"},model:{value:(_vm.radio1),callback:function ($$v) {_vm.radio1=$$v},expression:\"radio1\"}})],1),_c('b-form-input',{attrs:{\"placeholder\":\"Message\"}})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n Custom checkbox and radio\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n {{ codeCheckboxRadio }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupCheckboxRadio.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupCheckboxRadio.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupCheckboxRadio.vue?vue&type=template&id=509d36b8&\"\nimport script from \"./FormInputGroupCheckboxRadio.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupCheckboxRadio.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Sizing\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeSize)+\" \")]},proxy:true}])},[_c('div',{staticClass:\"demo-vertical-spacing\"},[_c('b-input-group',{attrs:{\"prepend\":\"@\",\"size\":\"lg\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Username\"}})],1),_c('b-input-group',{attrs:{\"prepend\":\"@\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Username\"}})],1),_c('b-input-group',{attrs:{\"size\":\"sm\",\"prepend\":\"@\"}},[_c('b-form-input',{attrs:{\"placeholder\":\"Username\"}})],1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n
\n\n \n {{ codeSize }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupSize.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupSize.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupSize.vue?vue&type=template&id=7421209b&\"\nimport script from \"./FormInputGroupSize.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupSize.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Input Groups with Buttons\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeButton)+\" \")]},proxy:true}])},[_c('b-row',[_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"6\"}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"placeholder\":\"Button on right\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" GO \")])],1)],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-input-group',[_c('b-input-group-prepend',[_c('b-button',{attrs:{\"variant\":\"outline-primary\"}},[_c('feather-icon',{attrs:{\"icon\":\"SearchIcon\"}})],1)],1),_c('b-form-input',{attrs:{\"placeholder\":\"Button on both side\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"variant\":\"outline-primary\"}},[_vm._v(\" Search ! \")])],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n \n GO\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Search !\n \n \n \n \n \n\n \n {{ codeButton }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupButton.vue?vue&type=template&id=4a6408f2&\"\nimport script from \"./FormInputGroupButton.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card-code',{attrs:{\"title\":\"Input Groups With Dropdown\"},scopedSlots:_vm._u([{key:\"code\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.codeDropdown)+\" \")]},proxy:true}])},[_c('b-row',[_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"6\"}},[_c('b-input-group',[_c('b-input-group-prepend',[_c('b-dropdown',{attrs:{\"text\":\"Action\",\"variant\":\"outline-primary\"}},[_c('b-dropdown-item',[_vm._v(\"Action \")]),_c('b-dropdown-item',[_vm._v(\"Another Action\")]),_c('b-dropdown-item',[_vm._v(\"Something else here\")]),_c('b-dropdown-divider'),_c('b-dropdown-item',[_vm._v(\"Separated link\")])],1)],1),_c('b-form-input',{attrs:{\"placeholder\":\"Dropdown on left\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-input-group',[_c('b-input-group-prepend',[_c('b-dropdown',{attrs:{\"variant\":\"outline-primary\"},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('feather-icon',{attrs:{\"icon\":\"Edit2Icon\"}})]},proxy:true}])},[_c('b-dropdown-item',[_vm._v(\"Action \")]),_c('b-dropdown-item',[_vm._v(\"Another Action\")]),_c('b-dropdown-item',[_vm._v(\"Something else here\")]),_c('b-dropdown-divider'),_c('b-dropdown-item',[_vm._v(\"Separated link\")])],1)],1),_c('b-form-input',{attrs:{\"placeholder\":\"Dropdown on both side\"}}),_c('b-input-group-append',[_c('b-dropdown',{attrs:{\"text\":\"Action\",\"variant\":\"outline-primary\",\"right\":\"\"}},[_c('b-dropdown-item',[_vm._v(\"Action \")]),_c('b-dropdown-item',[_vm._v(\"Another Action\")]),_c('b-dropdown-item',[_vm._v(\"Something else here\")]),_c('b-dropdown-divider'),_c('b-dropdown-item',[_vm._v(\"Separated link\")])],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n \n \n \n Action \n Another Action\n Something else here\n \n Separated link\n \n \n\n \n \n \n\n \n {{ codeDropdown }}\n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroupDropdown.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroupDropdown.vue?vue&type=template&id=e0a1f94a&\"\nimport script from \"./FormInputGroupDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroupDropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormInputGroup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormInputGroup.vue?vue&type=template&id=2858cc7a&\"\nimport script from \"./FormInputGroup.vue?vue&type=script&lang=js&\"\nexport * from \"./FormInputGroup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { Vue } from '../vue'; // @vue/component\n\nexport var formValidityMixin = Vue.extend({\n computed: {\n validity: {\n // Expose validity property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validity;\n }\n },\n validationMessage: {\n // Expose validationMessage property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.validationMessage;\n }\n },\n willValidate: {\n // Expose willValidate property\n cache: false,\n\n /* istanbul ignore next */\n get: function get() {\n return this.$refs.input.willValidate;\n }\n }\n },\n methods: {\n /* istanbul ignore next */\n setCustomValidity: function setCustomValidity() {\n var _this$$refs$input;\n\n // For external handler that may want a setCustomValidity(...) method\n return (_this$$refs$input = this.$refs.input).setCustomValidity.apply(_this$$refs$input, arguments);\n },\n\n /* istanbul ignore next */\n checkValidity: function checkValidity() {\n var _this$$refs$input2;\n\n // For external handler that may want a checkValidity(...) method\n return (_this$$refs$input2 = this.$refs.input).checkValidity.apply(_this$$refs$input2, arguments);\n },\n\n /* istanbul ignore next */\n reportValidity: function reportValidity() {\n var _this$$refs$input3;\n\n // For external handler that may want a reportValidity(...) method\n return (_this$$refs$input3 = this.$refs.input).reportValidity.apply(_this$$refs$input3, arguments);\n }\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_PREPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_PREPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupPrepend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_PREPEND,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: false\n })\n }), children);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../vue';\nimport { EVENT_NAME_BLUR, EVENT_NAME_CHANGE, EVENT_NAME_INPUT, EVENT_NAME_UPDATE, HOOK_EVENT_NAME_BEFORE_DESTROY } from '../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_FUNCTION, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../constants/props';\nimport { attemptBlur, attemptFocus } from '../utils/dom';\nimport { stopEvent } from '../utils/events';\nimport { mathMax } from '../utils/math';\nimport { makeModelMixin } from '../utils/model';\nimport { toInteger, toFloat } from '../utils/number';\nimport { sortKeys } from '../utils/object';\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../utils/props';\nimport { toString } from '../utils/string'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER_STRING,\n defaultValue: '',\n event: EVENT_NAME_UPDATE\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, modelProps), {}, {\n ariaInvalid: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n autocomplete: makeProp(PROP_TYPE_STRING),\n // Debounce timeout (in ms). Not applicable with `lazy` prop\n debounce: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n formatter: makeProp(PROP_TYPE_FUNCTION),\n // Only update the `v-model` on blur/change events\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n lazyFormatter: makeProp(PROP_TYPE_BOOLEAN, false),\n number: makeProp(PROP_TYPE_BOOLEAN, false),\n placeholder: makeProp(PROP_TYPE_STRING),\n plaintext: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n trim: makeProp(PROP_TYPE_BOOLEAN, false)\n})), 'formTextControls'); // --- Mixin ---\n// @vue/component\n\nexport var formTextMixin = Vue.extend({\n mixins: [modelMixin],\n props: props,\n data: function data() {\n var value = this[MODEL_PROP_NAME];\n return {\n localValue: toString(value),\n vModelValue: this.modifyValue(value)\n };\n },\n computed: {\n computedClass: function computedClass() {\n var plaintext = this.plaintext,\n type = this.type;\n var isRange = type === 'range';\n var isColor = type === 'color';\n return [{\n // Range input needs class `custom-range`\n 'custom-range': isRange,\n // `plaintext` not supported by `type=\"range\"` or `type=\"color\"`\n 'form-control-plaintext': plaintext && !isRange && !isColor,\n // `form-control` not used by `type=\"range\"` or `plaintext`\n // Always used by `type=\"color\"`\n 'form-control': isColor || !plaintext && !isRange\n }, this.sizeFormClass, this.stateClass];\n },\n computedDebounce: function computedDebounce() {\n // Ensure we have a positive number equal to or greater than 0\n return mathMax(toInteger(this.debounce, 0), 0);\n },\n hasFormatter: function hasFormatter() {\n return hasPropFunction(this.formatter);\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME, function (newValue) {\n var stringifyValue = toString(newValue);\n var modifiedValue = this.modifyValue(newValue);\n\n if (stringifyValue !== this.localValue || modifiedValue !== this.vModelValue) {\n // Clear any pending debounce timeout, as we are overwriting the user input\n this.clearDebounce(); // Update the local values\n\n this.localValue = stringifyValue;\n this.vModelValue = modifiedValue;\n }\n }),\n created: function created() {\n // Create private non-reactive props\n this.$_inputDebounceTimer = null;\n },\n mounted: function mounted() {\n // Set up destroy handler\n this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, this.clearDebounce);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearDebounce();\n },\n methods: {\n clearDebounce: function clearDebounce() {\n clearTimeout(this.$_inputDebounceTimer);\n this.$_inputDebounceTimer = null;\n },\n formatValue: function formatValue(value, event) {\n var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n value = toString(value);\n\n if (this.hasFormatter && (!this.lazyFormatter || force)) {\n value = this.formatter(value, event);\n }\n\n return value;\n },\n modifyValue: function modifyValue(value) {\n value = toString(value); // Emulate `.trim` modifier behaviour\n\n if (this.trim) {\n value = value.trim();\n } // Emulate `.number` modifier behaviour\n\n\n if (this.number) {\n value = toFloat(value, value);\n }\n\n return value;\n },\n updateValue: function updateValue(value) {\n var _this = this;\n\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var lazy = this.lazy;\n\n if (lazy && !force) {\n return;\n } // Make sure to always clear the debounce when `updateValue()`\n // is called, even when the v-model hasn't changed\n\n\n this.clearDebounce(); // Define the shared update logic in a method to be able to use\n // it for immediate and debounced value changes\n\n var doUpdate = function doUpdate() {\n value = _this.modifyValue(value);\n\n if (value !== _this.vModelValue) {\n _this.vModelValue = value;\n\n _this.$emit(MODEL_EVENT_NAME, value);\n } else if (_this.hasFormatter) {\n // When the `vModelValue` hasn't changed but the actual input value\n // is out of sync, make sure to change it to the given one\n // Usually caused by browser autocomplete and how it triggers the\n // change or input event, or depending on the formatter function\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2657\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3498\n\n /* istanbul ignore next: hard to test */\n var $input = _this.$refs.input;\n /* istanbul ignore if: hard to test out of sync value */\n\n if ($input && value !== $input.value) {\n $input.value = value;\n }\n }\n }; // Only debounce the value update when a value greater than `0`\n // is set and we are not in lazy mode or this is a forced update\n\n\n var debounce = this.computedDebounce;\n\n if (debounce > 0 && !lazy && !force) {\n this.$_inputDebounceTimer = setTimeout(doUpdate, debounce);\n } else {\n // Immediately update the v-model\n doUpdate();\n }\n },\n onInput: function onInput(event) {\n // `event.target.composing` is set by Vue\n // https://github.com/vuejs/vue/blob/dev/src/platforms/web/runtime/directives/model.js\n // TODO: Is this needed now with the latest Vue?\n\n /* istanbul ignore if: hard to test composition events */\n if (event.target.composing) {\n return;\n }\n\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue);\n this.$emit(EVENT_NAME_INPUT, formattedValue);\n },\n onChange: function onChange(event) {\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event); // Exit when the `formatter` function strictly returned `false`\n // or prevented the input event\n\n /* istanbul ignore next */\n\n if (formattedValue === false || event.defaultPrevented) {\n stopEvent(event, {\n propagation: false\n });\n return;\n }\n\n this.localValue = formattedValue;\n this.updateValue(formattedValue, true);\n this.$emit(EVENT_NAME_CHANGE, formattedValue);\n },\n onBlur: function onBlur(event) {\n // Apply the `localValue` on blur to prevent cursor jumps\n // on mobile browsers (e.g. caused by autocomplete)\n var value = event.target.value;\n var formattedValue = this.formatValue(value, event, true);\n\n if (formattedValue !== false) {\n // We need to use the modified value here to apply the\n // `.trim` and `.number` modifiers properly\n this.localValue = toString(this.modifyValue(formattedValue)); // We pass the formatted value here since the `updateValue` method\n // handles the modifiers itself\n\n this.updateValue(formattedValue, true);\n } // Emit native blur event\n\n\n this.$emit(EVENT_NAME_BLUR, event);\n },\n focus: function focus() {\n // For external handler that may want a focus method\n if (!this.disabled) {\n attemptFocus(this.$el);\n }\n },\n blur: function blur() {\n // For external handler that may want a blur method\n if (!this.disabled) {\n attemptBlur(this.$el);\n }\n }\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_ADDON } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n id: makeProp(PROP_TYPE_STRING),\n isText: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_ADDON); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAddon = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_ADDON,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var append = props.append;\n return h(props.tag, mergeData(data, {\n class: {\n 'input-group-append': append,\n 'input-group-prepend': !append\n },\n attrs: {\n id: props.id\n }\n }), props.isText ? [h(BInputGroupText, children)] : children);\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_FORM_INPUT } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { arrayIncludes } from '../../utils/array';\nimport { attemptBlur } from '../../utils/dom';\nimport { eventOn, eventOff, eventOnOff, stopEvent } from '../../utils/events';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { formSelectionMixin } from '../../mixins/form-selection';\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text';\nimport { formValidityMixin } from '../../mixins/form-validity';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { listenersMixin } from '../../mixins/listeners'; // --- Constants ---\n// Valid supported input types\n\nvar TYPES = ['text', 'password', 'email', 'number', 'url', 'tel', 'search', 'range', 'color', 'date', 'time', 'datetime', 'datetime-local', 'month', 'week']; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formSizeProps), formStateProps), formTextProps), {}, {\n list: makeProp(PROP_TYPE_STRING),\n max: makeProp(PROP_TYPE_NUMBER_STRING),\n min: makeProp(PROP_TYPE_NUMBER_STRING),\n // Disable mousewheel to prevent wheel from changing values (i.e. number/date)\n noWheel: makeProp(PROP_TYPE_BOOLEAN, false),\n step: makeProp(PROP_TYPE_NUMBER_STRING),\n type: makeProp(PROP_TYPE_STRING, 'text', function (type) {\n return arrayIncludes(TYPES, type);\n })\n})), NAME_FORM_INPUT); // --- Main component ---\n// @vue/component\n\nexport var BFormInput = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_INPUT,\n // Mixin order is important!\n mixins: [listenersMixin, idMixin, formControlMixin, formSizeMixin, formStateMixin, formTextMixin, formSelectionMixin, formValidityMixin],\n props: props,\n computed: {\n localType: function localType() {\n // We only allow certain types\n var type = this.type;\n return arrayIncludes(TYPES, type) ? type : 'text';\n },\n computedAttrs: function computedAttrs() {\n var type = this.localType,\n name = this.name,\n form = this.form,\n disabled = this.disabled,\n placeholder = this.placeholder,\n required = this.required,\n min = this.min,\n max = this.max,\n step = this.step;\n return {\n id: this.safeId(),\n name: name,\n form: form,\n type: type,\n disabled: disabled,\n placeholder: placeholder,\n required: required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n min: min,\n max: max,\n step: step,\n list: type !== 'password' ? this.list : null,\n 'aria-required': required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n };\n },\n computedListeners: function computedListeners() {\n return _objectSpread(_objectSpread({}, this.bvListeners), {}, {\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n });\n }\n },\n watch: {\n noWheel: function noWheel(newValue) {\n this.setWheelStopper(newValue);\n }\n },\n mounted: function mounted() {\n this.setWheelStopper(this.noWheel);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // Turn off listeners when keep-alive component deactivated\n\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n // Turn on listeners (if no-wheel) when keep-alive component activated\n\n /* istanbul ignore next */\n this.setWheelStopper(this.noWheel);\n },\n beforeDestroy: function beforeDestroy() {\n /* istanbul ignore next */\n this.setWheelStopper(false);\n },\n methods: {\n setWheelStopper: function setWheelStopper(on) {\n var input = this.$el; // We use native events, so that we don't interfere with propagation\n\n eventOnOff(on, input, 'focus', this.onWheelFocus);\n eventOnOff(on, input, 'blur', this.onWheelBlur);\n\n if (!on) {\n eventOff(document, 'wheel', this.stopWheel);\n }\n },\n onWheelFocus: function onWheelFocus() {\n eventOn(document, 'wheel', this.stopWheel);\n },\n onWheelBlur: function onWheelBlur() {\n eventOff(document, 'wheel', this.stopWheel);\n },\n stopWheel: function stopWheel(event) {\n stopEvent(event, {\n propagation: false\n });\n attemptBlur(this.$el);\n }\n },\n render: function render(h) {\n return h('input', {\n class: this.computedClass,\n attrs: this.computedAttrs,\n domProps: {\n value: this.localValue\n },\n on: this.computedListeners,\n ref: 'input'\n });\n }\n});","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_APPEND, SLOT_NAME_DEFAULT, SLOT_NAME_PREPEND } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAppend } from './input-group-append';\nimport { BInputGroupPrepend } from './input-group-prepend';\nimport { BInputGroupText } from './input-group-text'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n append: makeProp(PROP_TYPE_STRING),\n appendHtml: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n prepend: makeProp(PROP_TYPE_STRING),\n prependHtml: makeProp(PROP_TYPE_STRING),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP); // --- Main component ---\n// @vue/component\n\nexport var BInputGroup = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var prepend = props.prepend,\n prependHtml = props.prependHtml,\n append = props.append,\n appendHtml = props.appendHtml,\n size = props.size;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $prepend = h();\n var hasPrependSlot = hasNormalizedSlot(SLOT_NAME_PREPEND, $scopedSlots, $slots);\n\n if (hasPrependSlot || prepend || prependHtml) {\n $prepend = h(BInputGroupPrepend, [hasPrependSlot ? normalizeSlot(SLOT_NAME_PREPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(prependHtml, prepend)\n })]);\n }\n\n var $append = h();\n var hasAppendSlot = hasNormalizedSlot(SLOT_NAME_APPEND, $scopedSlots, $slots);\n\n if (hasAppendSlot || append || appendHtml) {\n $append = h(BInputGroupAppend, [hasAppendSlot ? normalizeSlot(SLOT_NAME_APPEND, slotScope, $scopedSlots, $slots) : h(BInputGroupText, {\n domProps: htmlOrText(appendHtml, append)\n })]);\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group',\n class: _defineProperty({}, \"input-group-\".concat(size), size),\n attrs: {\n id: props.id || null,\n role: 'group'\n }\n }), [$prepend, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots), $append]);\n }\n});","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n// v-b-visible\n// Private visibility check directive\n// Based on IntersectionObserver\n//\n// Usage:\n// v-b-visibility..=\"\"\n//\n// Value:\n// : method to be called when visibility state changes, receives one arg:\n// true: element is visible\n// false: element is not visible\n// null: IntersectionObserver not supported\n//\n// Modifiers:\n// : a positive decimal value of pixels away from viewport edge\n// before being considered \"visible\". default is 0\n// : keyword 'once', meaning when the element becomes visible and\n// callback is called observation/notification will stop.\n//\n// When used in a render function:\n// export default {\n// directives: { 'b-visible': VBVisible },\n// render(h) {\n// h(\n// 'div',\n// {\n// directives: [\n// { name: 'b-visible', value=this.callback, modifiers: { '123':true, 'once':true } }\n// ]\n// }\n// )\n// }\nimport { RX_DIGITS } from '../../constants/regex';\nimport { requestAF } from '../../utils/dom';\nimport { isFunction } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { clone, keys } from '../../utils/object';\nvar OBSERVER_PROP_NAME = '__bv__visibility_observer';\n\nvar VisibilityObserver = /*#__PURE__*/function () {\n function VisibilityObserver(el, options, vnode) {\n _classCallCheck(this, VisibilityObserver);\n\n this.el = el;\n this.callback = options.callback;\n this.margin = options.margin || 0;\n this.once = options.once || false;\n this.observer = null;\n this.visible = undefined;\n this.doneOnce = false; // Create the observer instance (if possible)\n\n this.createObserver(vnode);\n }\n\n _createClass(VisibilityObserver, [{\n key: \"createObserver\",\n value: function createObserver(vnode) {\n var _this = this;\n\n // Remove any previous observer\n if (this.observer) {\n /* istanbul ignore next */\n this.stop();\n } // Should only be called once and `callback` prop should be a function\n\n\n if (this.doneOnce || !isFunction(this.callback)) {\n /* istanbul ignore next */\n return;\n } // Create the observer instance\n\n\n try {\n // Future: Possibly add in other modifiers for left/right/top/bottom\n // offsets, root element reference, and thresholds\n this.observer = new IntersectionObserver(this.handler.bind(this), {\n // `null` = 'viewport'\n root: null,\n // Pixels away from view port to consider \"visible\"\n rootMargin: this.margin,\n // Intersection ratio of el and root (as a value from 0 to 1)\n threshold: 0\n });\n } catch (_unused) {\n // No IntersectionObserver support, so just stop trying to observe\n this.doneOnce = true;\n this.observer = undefined;\n this.callback(null);\n return;\n } // Start observing in a `$nextTick()` (to allow DOM to complete rendering)\n\n /* istanbul ignore next: IntersectionObserver not supported in JSDOM */\n\n\n vnode.context.$nextTick(function () {\n requestAF(function () {\n // Placed in an `if` just in case we were destroyed before\n // this `requestAnimationFrame` runs\n if (_this.observer) {\n _this.observer.observe(_this.el);\n }\n });\n });\n }\n /* istanbul ignore next */\n\n }, {\n key: \"handler\",\n value: function handler(entries) {\n var entry = entries ? entries[0] : {};\n var isIntersecting = Boolean(entry.isIntersecting || entry.intersectionRatio > 0.0);\n\n if (isIntersecting !== this.visible) {\n this.visible = isIntersecting;\n this.callback(isIntersecting);\n\n if (this.once && this.visible) {\n this.doneOnce = true;\n this.stop();\n }\n }\n }\n }, {\n key: \"stop\",\n value: function stop() {\n /* istanbul ignore next */\n this.observer && this.observer.disconnect();\n this.observer = null;\n }\n }]);\n\n return VisibilityObserver;\n}();\n\nvar destroy = function destroy(el) {\n var observer = el[OBSERVER_PROP_NAME];\n\n if (observer && observer.stop) {\n observer.stop();\n }\n\n delete el[OBSERVER_PROP_NAME];\n};\n\nvar bind = function bind(el, _ref, vnode) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n // `value` is the callback function\n var options = {\n margin: '0px',\n once: false,\n callback: value\n }; // Parse modifiers\n\n keys(modifiers).forEach(function (mod) {\n /* istanbul ignore else: Until is switched to use this directive */\n if (RX_DIGITS.test(mod)) {\n options.margin = \"\".concat(mod, \"px\");\n } else if (mod.toLowerCase() === 'once') {\n options.once = true;\n }\n }); // Destroy any previous observer\n\n destroy(el); // Create new observer\n\n el[OBSERVER_PROP_NAME] = new VisibilityObserver(el, options, vnode); // Store the current modifiers on the object (cloned)\n\n el[OBSERVER_PROP_NAME]._prevModifiers = clone(modifiers);\n}; // When the directive options may have been updated (or element)\n\n\nvar componentUpdated = function componentUpdated(el, _ref2, vnode) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n // Compare value/oldValue and modifiers to see if anything has changed\n // and if so, destroy old observer and create new observer\n\n /* istanbul ignore next */\n modifiers = clone(modifiers);\n /* istanbul ignore next */\n\n if (el && (value !== oldValue || !el[OBSERVER_PROP_NAME] || !looseEqual(modifiers, el[OBSERVER_PROP_NAME]._prevModifiers))) {\n // Re-bind on element\n bind(el, {\n value: value,\n modifiers: modifiers\n }, vnode);\n }\n}; // When directive un-binds from element\n\n\nvar unbind = function unbind(el) {\n // Remove the observer\n destroy(el);\n}; // Export the directive\n\n\nexport var VBVisible = {\n bind: bind,\n componentUpdated: componentUpdated,\n unbind: unbind\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_FORM_TEXTAREA } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { getCS, getStyle, isVisible, requestAF, setStyle } from '../../utils/dom';\nimport { isNull } from '../../utils/inspect';\nimport { mathCeil, mathMax, mathMin } from '../../utils/math';\nimport { toInteger, toFloat } from '../../utils/number';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { formSelectionMixin } from '../../mixins/form-selection';\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { formTextMixin, props as formTextProps } from '../../mixins/form-text';\nimport { formValidityMixin } from '../../mixins/form-validity';\nimport { idMixin, props as idProps } from '../../mixins/id';\nimport { listenOnRootMixin } from '../../mixins/listen-on-root';\nimport { listenersMixin } from '../../mixins/listeners';\nimport { VBVisible } from '../../directives/visible/visible'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formSizeProps), formStateProps), formTextProps), {}, {\n maxRows: makeProp(PROP_TYPE_NUMBER_STRING),\n // When in auto resize mode, disable shrinking to content height\n noAutoShrink: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable the resize handle of textarea\n noResize: makeProp(PROP_TYPE_BOOLEAN, false),\n rows: makeProp(PROP_TYPE_NUMBER_STRING, 2),\n // 'soft', 'hard' or 'off'\n // Browser default is 'soft'\n wrap: makeProp(PROP_TYPE_STRING, 'soft')\n})), NAME_FORM_TEXTAREA); // --- Main component ---\n// @vue/component\n\nexport var BFormTextarea = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_TEXTAREA,\n directives: {\n 'b-visible': VBVisible\n },\n // Mixin order is important!\n mixins: [listenersMixin, idMixin, listenOnRootMixin, formControlMixin, formSizeMixin, formStateMixin, formTextMixin, formSelectionMixin, formValidityMixin],\n props: props,\n data: function data() {\n return {\n heightInPx: null\n };\n },\n computed: {\n computedStyle: function computedStyle() {\n var styles = {\n // Setting `noResize` to true will disable the ability for the user to\n // manually resize the textarea. We also disable when in auto height mode\n resize: !this.computedRows || this.noResize ? 'none' : null\n };\n\n if (!this.computedRows) {\n // Conditionally set the computed CSS height when auto rows/height is enabled\n // We avoid setting the style to `null`, which can override user manual resize handle\n styles.height = this.heightInPx; // We always add a vertical scrollbar to the textarea when auto-height is\n // enabled so that the computed height calculation returns a stable value\n\n styles.overflowY = 'scroll';\n }\n\n return styles;\n },\n computedMinRows: function computedMinRows() {\n // Ensure rows is at least 2 and positive (2 is the native textarea value)\n // A value of 1 can cause issues in some browsers, and most browsers\n // only support 2 as the smallest value\n return mathMax(toInteger(this.rows, 2), 2);\n },\n computedMaxRows: function computedMaxRows() {\n return mathMax(this.computedMinRows, toInteger(this.maxRows, 0));\n },\n computedRows: function computedRows() {\n // This is used to set the attribute 'rows' on the textarea\n // If auto-height is enabled, then we return `null` as we use CSS to control height\n return this.computedMinRows === this.computedMaxRows ? this.computedMinRows : null;\n },\n computedAttrs: function computedAttrs() {\n var disabled = this.disabled,\n required = this.required;\n return {\n id: this.safeId(),\n name: this.name || null,\n form: this.form || null,\n disabled: disabled,\n placeholder: this.placeholder || null,\n required: required,\n autocomplete: this.autocomplete || null,\n readonly: this.readonly || this.plaintext,\n rows: this.computedRows,\n wrap: this.wrap || null,\n 'aria-required': this.required ? 'true' : null,\n 'aria-invalid': this.computedAriaInvalid\n };\n },\n computedListeners: function computedListeners() {\n return _objectSpread(_objectSpread({}, this.bvListeners), {}, {\n input: this.onInput,\n change: this.onChange,\n blur: this.onBlur\n });\n }\n },\n watch: {\n localValue: function localValue() {\n this.setHeight();\n }\n },\n mounted: function mounted() {\n this.setHeight();\n },\n methods: {\n // Called by intersection observer directive\n\n /* istanbul ignore next */\n visibleCallback: function visibleCallback(visible) {\n if (visible) {\n // We use a `$nextTick()` here just to make sure any\n // transitions or portalling have completed\n this.$nextTick(this.setHeight);\n }\n },\n setHeight: function setHeight() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n _this.heightInPx = _this.computeHeight();\n });\n });\n },\n\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n computeHeight: function computeHeight() {\n if (this.$isServer || !isNull(this.computedRows)) {\n return null;\n }\n\n var el = this.$el; // Element must be visible (not hidden) and in document\n // Must be checked after above checks\n\n if (!isVisible(el)) {\n return null;\n } // Get current computed styles\n\n\n var computedStyle = getCS(el); // Height of one line of text in px\n\n var lineHeight = toFloat(computedStyle.lineHeight, 1); // Calculate height of border and padding\n\n var border = toFloat(computedStyle.borderTopWidth, 0) + toFloat(computedStyle.borderBottomWidth, 0);\n var padding = toFloat(computedStyle.paddingTop, 0) + toFloat(computedStyle.paddingBottom, 0); // Calculate offset\n\n var offset = border + padding; // Minimum height for min rows (which must be 2 rows or greater for cross-browser support)\n\n var minHeight = lineHeight * this.computedMinRows + offset; // Get the current style height (with `px` units)\n\n var oldHeight = getStyle(el, 'height') || computedStyle.height; // Probe scrollHeight by temporarily changing the height to `auto`\n\n setStyle(el, 'height', 'auto');\n var scrollHeight = el.scrollHeight; // Place the original old height back on the element, just in case `computedProp`\n // returns the same value as before\n\n setStyle(el, 'height', oldHeight); // Calculate content height in 'rows' (scrollHeight includes padding but not border)\n\n var contentRows = mathMax((scrollHeight - padding) / lineHeight, 2); // Calculate number of rows to display (limited within min/max rows)\n\n var rows = mathMin(mathMax(contentRows, this.computedMinRows), this.computedMaxRows); // Calculate the required height of the textarea including border and padding (in pixels)\n\n var height = mathMax(mathCeil(rows * lineHeight + offset), minHeight); // Computed height remains the larger of `oldHeight` and new `height`,\n // when height is in `sticky` mode (prop `no-auto-shrink` is true)\n\n if (this.noAutoShrink && toFloat(oldHeight, 0) > height) {\n return oldHeight;\n } // Return the new computed CSS height in px units\n\n\n return \"\".concat(height, \"px\");\n }\n },\n render: function render(h) {\n return h('textarea', {\n class: this.computedClass,\n style: this.computedStyle,\n directives: [{\n name: 'b-visible',\n value: this.visibleCallback,\n // If textarea is within 640px of viewport, consider it visible\n modifiers: {\n '640': true\n }\n }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.localValue\n },\n on: this.computedListeners,\n ref: 'input'\n });\n }\n});","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_FORM_RADIO } from '../../constants/components';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { sortKeys } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { formControlMixin, props as formControlProps } from '../../mixins/form-control';\nimport { MODEL_EVENT_NAME, formRadioCheckMixin, props as formRadioCheckProps } from '../../mixins/form-radio-check';\nimport { formSizeMixin, props as formSizeProps } from '../../mixins/form-size';\nimport { formStateMixin, props as formStateProps } from '../../mixins/form-state';\nimport { idMixin, props as idProps } from '../../mixins/id'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), formControlProps), formRadioCheckProps), formSizeProps), formStateProps)), NAME_FORM_RADIO); // --- Main component ---\n// @vue/component\n\nexport var BFormRadio = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_RADIO,\n mixins: [idMixin, formRadioCheckMixin, // Includes shared render function\n formControlMixin, formSizeMixin, formStateMixin],\n inject: {\n bvGroup: {\n from: 'bvRadioGroup',\n default: false\n }\n },\n props: props,\n watch: {\n computedLocalChecked: function computedLocalChecked(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n plain: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formCustomMixin = Vue.extend({\n props: props,\n computed: {\n custom: function custom() {\n return !this.plain;\n }\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n size: makeProp(PROP_TYPE_STRING)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formSizeMixin = Vue.extend({\n props: props,\n computed: {\n sizeFormClass: function sizeFormClass() {\n return [this.size ? \"form-control-\".concat(this.size) : null];\n }\n }\n});","// We haven't added icon's computed property because it makes this mixin coupled with UI\nexport const togglePasswordVisibility = {\n data() {\n return {\n passwordFieldType: 'password',\n }\n },\n methods: {\n togglePasswordVisibility() {\n this.passwordFieldType = this.passwordFieldType === 'password' ? 'text' : 'password'\n },\n },\n}\n\nexport const _ = null\n","var _objectSpread2;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../../vue';\nimport { NAME_FORM_CHECKBOX } from '../../constants/components';\nimport { EVENT_NAME_CHANGE, MODEL_EVENT_NAME_PREFIX } from '../../constants/events';\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { isArray } from '../../utils/inspect';\nimport { looseEqual } from '../../utils/loose-equal';\nimport { looseIndexOf } from '../../utils/loose-index-of';\nimport { sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { MODEL_EVENT_NAME, formRadioCheckMixin, props as formRadioCheckProps } from '../../mixins/form-radio-check'; // --- Constants ---\n\nvar MODEL_PROP_NAME_INDETERMINATE = 'indeterminate';\nvar MODEL_EVENT_NAME_INDETERMINATE = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_INDETERMINATE; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, formRadioCheckProps), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, MODEL_PROP_NAME_INDETERMINATE, makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"switch\", makeProp(PROP_TYPE_BOOLEAN, false)), _defineProperty(_objectSpread2, \"uncheckedValue\", makeProp(PROP_TYPE_ANY, false)), _defineProperty(_objectSpread2, \"value\", makeProp(PROP_TYPE_ANY, true)), _objectSpread2))), NAME_FORM_CHECKBOX); // --- Main component ---\n// @vue/component\n\nexport var BFormCheckbox = /*#__PURE__*/Vue.extend({\n name: NAME_FORM_CHECKBOX,\n mixins: [formRadioCheckMixin],\n inject: {\n bvGroup: {\n from: 'bvCheckGroup',\n default: null\n }\n },\n props: props,\n computed: {\n isChecked: function isChecked() {\n var value = this.value,\n checked = this.computedLocalChecked;\n return isArray(checked) ? looseIndexOf(checked, value) > -1 : looseEqual(checked, value);\n },\n isRadio: function isRadio() {\n return false;\n }\n },\n watch: _defineProperty({}, MODEL_PROP_NAME_INDETERMINATE, function (newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.setIndeterminate(newValue);\n }\n }),\n mounted: function mounted() {\n // Set initial indeterminate state\n this.setIndeterminate(this[MODEL_PROP_NAME_INDETERMINATE]);\n },\n methods: {\n computedLocalCheckedWatcher: function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n var $input = this.$refs.input;\n\n if ($input) {\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, $input.indeterminate);\n }\n }\n },\n handleChange: function handleChange(_ref) {\n var _this = this;\n\n var _ref$target = _ref.target,\n checked = _ref$target.checked,\n indeterminate = _ref$target.indeterminate;\n var value = this.value,\n uncheckedValue = this.uncheckedValue; // Update `computedLocalChecked`\n\n var localChecked = this.computedLocalChecked;\n\n if (isArray(localChecked)) {\n var index = looseIndexOf(localChecked, value);\n\n if (checked && index < 0) {\n // Add value to array\n localChecked = localChecked.concat(value);\n } else if (!checked && index > -1) {\n // Remove value from array\n localChecked = localChecked.slice(0, index).concat(localChecked.slice(index + 1));\n }\n } else {\n localChecked = checked ? value : uncheckedValue;\n }\n\n this.computedLocalChecked = localChecked; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n\n _this.$emit(MODEL_EVENT_NAME_INDETERMINATE, indeterminate);\n });\n },\n setIndeterminate: function setIndeterminate(state) {\n // Indeterminate only supported in single checkbox mode\n if (isArray(this.computedLocalChecked)) {\n state = false;\n }\n\n var $input = this.$refs.input;\n\n if ($input) {\n $input.indeterminate = state; // Emit update event to prop\n\n this.$emit(MODEL_EVENT_NAME_INDETERMINATE, state);\n }\n }\n }\n});","import { looseEqual } from './loose-equal'; // Assumes that the first argument is an array\n\nexport var looseIndexOf = function looseIndexOf(array, value) {\n for (var i = 0; i < array.length; i++) {\n if (looseEqual(array[i], value)) {\n return i;\n }\n }\n\n return -1;\n};","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_APPEND } from '../../constants/components';\nimport { omit } from '../../utils/object';\nimport { makePropsConfigurable } from '../../utils/props';\nimport { BInputGroupAddon, props as BInputGroupAddonProps } from './input-group-addon'; // --- Props ---\n\nexport var props = makePropsConfigurable(omit(BInputGroupAddonProps, ['append']), NAME_INPUT_GROUP_APPEND); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupAppend = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_APPEND,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n // Pass all our data down to child, and set `append` to `true`\n return h(BInputGroupAddon, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n append: true\n })\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_INPUT_GROUP_TEXT } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_INPUT_GROUP_TEXT); // --- Main component ---\n// @vue/component\n\nexport var BInputGroupText = /*#__PURE__*/Vue.extend({\n name: NAME_INPUT_GROUP_TEXT,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.tag, mergeData(data, {\n staticClass: 'input-group-text'\n }), children);\n }\n});","var _watch, _methods;\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Vue } from '../vue';\nimport { PROP_TYPE_ANY, PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { EVENT_NAME_CHANGE } from '../constants/events';\nimport { attemptBlur, attemptFocus } from '../utils/dom';\nimport { isBoolean } from '../utils/inspect';\nimport { looseEqual } from '../utils/loose-equal';\nimport { makeModelMixin } from '../utils/model';\nimport { sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { attrsMixin } from './attrs';\nimport { formControlMixin, props as formControlProps } from './form-control';\nimport { formCustomMixin, props as formCustomProps } from './form-custom';\nimport { formSizeMixin, props as formSizeProps } from './form-size';\nimport { formStateMixin, props as formStateProps } from './form-state';\nimport { idMixin, props as idProps } from './id';\nimport { normalizeSlotMixin } from './normalize-slot'; // --- Constants ---\n\nvar _makeModelMixin = makeModelMixin('checked', {\n defaultValue: null\n}),\n modelMixin = _makeModelMixin.mixin,\n modelProps = _makeModelMixin.props,\n MODEL_PROP_NAME = _makeModelMixin.prop,\n MODEL_EVENT_NAME = _makeModelMixin.event;\n\nexport { MODEL_PROP_NAME, MODEL_EVENT_NAME }; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, idProps), modelProps), formControlProps), formSizeProps), formStateProps), formCustomProps), {}, {\n ariaLabel: makeProp(PROP_TYPE_STRING),\n ariaLabelledby: makeProp(PROP_TYPE_STRING),\n // Only applicable in standalone mode (non group)\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n // Only applicable when rendered with button style\n buttonVariant: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n value: makeProp(PROP_TYPE_ANY)\n})), 'formRadioCheckControls'); // --- Mixin ---\n// @vue/component\n\nexport var formRadioCheckMixin = Vue.extend({\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin, formControlMixin, formSizeMixin, formStateMixin, formCustomMixin],\n inheritAttrs: false,\n props: props,\n data: function data() {\n return {\n localChecked: this.isGroup ? this.bvGroup[MODEL_PROP_NAME] : this[MODEL_PROP_NAME],\n hasFocus: false\n };\n },\n computed: {\n computedLocalChecked: {\n get: function get() {\n return this.isGroup ? this.bvGroup.localChecked : this.localChecked;\n },\n set: function set(value) {\n if (this.isGroup) {\n this.bvGroup.localChecked = value;\n } else {\n this.localChecked = value;\n }\n }\n },\n isChecked: function isChecked() {\n return looseEqual(this.value, this.computedLocalChecked);\n },\n isRadio: function isRadio() {\n return true;\n },\n isGroup: function isGroup() {\n // Is this check/radio a child of check-group or radio-group?\n return !!this.bvGroup;\n },\n isBtnMode: function isBtnMode() {\n // Support button style in single input mode\n return this.isGroup ? this.bvGroup.buttons : this.button;\n },\n isPlain: function isPlain() {\n return this.isBtnMode ? false : this.isGroup ? this.bvGroup.plain : this.plain;\n },\n isCustom: function isCustom() {\n return this.isBtnMode ? false : !this.isPlain;\n },\n isSwitch: function isSwitch() {\n // Custom switch styling (checkboxes only)\n return this.isBtnMode || this.isRadio || this.isPlain ? false : this.isGroup ? this.bvGroup.switches : this.switch;\n },\n isInline: function isInline() {\n return this.isGroup ? this.bvGroup.inline : this.inline;\n },\n isDisabled: function isDisabled() {\n // Child can be disabled while parent isn't, but is always disabled if group is\n return this.isGroup ? this.bvGroup.disabled || this.disabled : this.disabled;\n },\n isRequired: function isRequired() {\n // Required only works when a name is provided for the input(s)\n // Child can only be required when parent is\n // Groups will always have a name (either user supplied or auto generated)\n return this.computedName && (this.isGroup ? this.bvGroup.required : this.required);\n },\n computedName: function computedName() {\n // Group name preferred over local name\n return (this.isGroup ? this.bvGroup.groupName : this.name) || null;\n },\n computedForm: function computedForm() {\n return (this.isGroup ? this.bvGroup.form : this.form) || null;\n },\n computedSize: function computedSize() {\n return (this.isGroup ? this.bvGroup.size : this.size) || '';\n },\n computedState: function computedState() {\n return this.isGroup ? this.bvGroup.computedState : isBoolean(this.state) ? this.state : null;\n },\n computedButtonVariant: function computedButtonVariant() {\n // Local variant preferred over group variant\n var buttonVariant = this.buttonVariant;\n\n if (buttonVariant) {\n return buttonVariant;\n }\n\n if (this.isGroup && this.bvGroup.buttonVariant) {\n return this.bvGroup.buttonVariant;\n }\n\n return 'secondary';\n },\n buttonClasses: function buttonClasses() {\n var _ref;\n\n var computedSize = this.computedSize;\n return ['btn', \"btn-\".concat(this.computedButtonVariant), (_ref = {}, _defineProperty(_ref, \"btn-\".concat(computedSize), computedSize), _defineProperty(_ref, \"disabled\", this.isDisabled), _defineProperty(_ref, \"active\", this.isChecked), _defineProperty(_ref, \"focus\", this.hasFocus), _ref)];\n },\n computedAttrs: function computedAttrs() {\n var disabled = this.isDisabled,\n required = this.isRequired;\n return _objectSpread(_objectSpread({}, this.bvAttrs), {}, {\n id: this.safeId(),\n type: this.isRadio ? 'radio' : 'checkbox',\n name: this.computedName,\n form: this.computedForm,\n disabled: disabled,\n required: required,\n 'aria-required': required || null,\n 'aria-label': this.ariaLabel || null,\n 'aria-labelledby': this.ariaLabelledby || null\n });\n }\n },\n watch: (_watch = {}, _defineProperty(_watch, MODEL_PROP_NAME, function () {\n this[\"\".concat(MODEL_PROP_NAME, \"Watcher\")].apply(this, arguments);\n }), _defineProperty(_watch, \"computedLocalChecked\", function computedLocalChecked() {\n this.computedLocalCheckedWatcher.apply(this, arguments);\n }), _watch),\n methods: (_methods = {}, _defineProperty(_methods, \"\".concat(MODEL_PROP_NAME, \"Watcher\"), function Watcher(newValue) {\n if (!looseEqual(newValue, this.computedLocalChecked)) {\n this.computedLocalChecked = newValue;\n }\n }), _defineProperty(_methods, \"computedLocalCheckedWatcher\", function computedLocalCheckedWatcher(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(MODEL_EVENT_NAME, newValue);\n }\n }), _defineProperty(_methods, \"handleChange\", function handleChange(_ref2) {\n var _this = this;\n\n var checked = _ref2.target.checked;\n var value = this.value;\n var localChecked = checked ? value : null;\n this.computedLocalChecked = value; // Fire events in a `$nextTick()` to ensure the `v-model` is updated\n\n this.$nextTick(function () {\n // Change is only emitted on user interaction\n _this.$emit(EVENT_NAME_CHANGE, localChecked); // If this is a child of a group, we emit a change event on it as well\n\n\n if (_this.isGroup) {\n _this.bvGroup.$emit(EVENT_NAME_CHANGE, localChecked);\n }\n });\n }), _defineProperty(_methods, \"handleFocus\", function handleFocus(event) {\n // When in buttons mode, we need to add 'focus' class to label when input focused\n // As it is the hidden input which has actual focus\n if (event.target) {\n if (event.type === 'focus') {\n this.hasFocus = true;\n } else if (event.type === 'blur') {\n this.hasFocus = false;\n }\n }\n }), _defineProperty(_methods, \"focus\", function focus() {\n if (!this.isDisabled) {\n attemptFocus(this.$refs.input);\n }\n }), _defineProperty(_methods, \"blur\", function blur() {\n if (!this.isDisabled) {\n attemptBlur(this.$refs.input);\n }\n }), _methods),\n render: function render(h) {\n var isRadio = this.isRadio,\n isBtnMode = this.isBtnMode,\n isPlain = this.isPlain,\n isCustom = this.isCustom,\n isInline = this.isInline,\n isSwitch = this.isSwitch,\n computedSize = this.computedSize,\n bvAttrs = this.bvAttrs;\n var $content = this.normalizeSlot();\n var $input = h('input', {\n class: [{\n 'form-check-input': isPlain,\n 'custom-control-input': isCustom,\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n 'position-static': isPlain && !$content\n }, isBtnMode ? '' : this.stateClass],\n directives: [{\n name: 'model',\n value: this.computedLocalChecked\n }],\n attrs: this.computedAttrs,\n domProps: {\n value: this.value,\n checked: this.isChecked\n },\n on: _objectSpread({\n change: this.handleChange\n }, isBtnMode ? {\n focus: this.handleFocus,\n blur: this.handleFocus\n } : {}),\n key: 'input',\n ref: 'input'\n });\n\n if (isBtnMode) {\n var $button = h('label', {\n class: this.buttonClasses\n }, [$input, $content]);\n\n if (!this.isGroup) {\n // Standalone button mode, so wrap in 'btn-group-toggle'\n // and flag it as inline-block to mimic regular buttons\n $button = h('div', {\n class: ['btn-group-toggle', 'd-inline-block']\n }, [$button]);\n }\n\n return $button;\n } // If no label content in plain mode we dont render the label\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/2911\n\n\n var $label = h();\n\n if (!(isPlain && !$content)) {\n $label = h('label', {\n class: {\n 'form-check-label': isPlain,\n 'custom-control-label': isCustom\n },\n attrs: {\n for: this.safeId()\n }\n }, $content);\n }\n\n return h('div', {\n class: [_defineProperty({\n 'form-check': isPlain,\n 'form-check-inline': isPlain && isInline,\n 'custom-control': isCustom,\n 'custom-control-inline': isCustom && isInline,\n 'custom-checkbox': isCustom && !isRadio && !isSwitch,\n 'custom-switch': isSwitch,\n 'custom-radio': isCustom && isRadio\n }, \"b-custom-control-\".concat(computedSize), computedSize && !isBtnMode), bvAttrs.class],\n style: bvAttrs.style\n }, [$input, $label]);\n }\n});","import { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { attemptFocus, isVisible, matches, requestAF, select } from '../utils/dom';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Constants ---\n\nvar SELECTOR = 'input, textarea, select'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n autofocus: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n form: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING),\n name: makeProp(PROP_TYPE_STRING),\n required: makeProp(PROP_TYPE_BOOLEAN, false)\n}, 'formControls'); // --- Mixin ---\n// @vue/component\n\nexport var formControlMixin = Vue.extend({\n props: props,\n mounted: function mounted() {\n this.handleAutofocus();\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.handleAutofocus();\n },\n methods: {\n handleAutofocus: function handleAutofocus() {\n var _this = this;\n\n this.$nextTick(function () {\n requestAF(function () {\n var el = _this.$el;\n\n if (_this.autofocus && isVisible(el)) {\n if (!matches(el, SELECTOR)) {\n el = select(SELECTOR, el);\n }\n\n attemptFocus(el);\n }\n });\n });\n }\n }\n});"],"sourceRoot":""}