{"version":3,"sources":["webpack:///./node_modules/bootstrap-vue/esm/mixins/form-selection.js","webpack:///./node_modules/bootstrap-vue/esm/icons/icon.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-validity.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-text.js","webpack:///./node_modules/bootstrap-vue/esm/components/image/img.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-title.js","webpack:///./src/views/desafios/components/Quiz.vue?fbb3","webpack:///src/views/desafios/components/Quiz.vue","webpack:///./src/views/desafios/components/Quiz.vue?8246","webpack:///./src/views/desafios/components/Quiz.vue","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-body.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-footer.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/layout/row.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-size.js","webpack:///./node_modules/bootstrap-vue/esm/components/layout/col.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-header.js","webpack:///./node_modules/bootstrap-vue/esm/components/card/card-sub-title.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-state.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/card.js","webpack:///./node_modules/bootstrap-vue/esm/mixins/form-control.js","webpack:///./node_modules/bootstrap-vue/esm/components/avatar/avatar.js","webpack:///./src/views/desafios/components/Quiz.vue?6bde"],"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","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","target","i","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","configurable","writable","findIconComponent","ctx","iconName","components","$options","iconComponent","$parent","props","icon","stacked","BIcon","name","functional","render","h","_ref","data","parent","replace","concat","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","bottom","end","start","top","BCardImg","src","alt","width","height","baseClass","right","left","class","attrs","cardImgProps","bind","imgSrc","required","card","align","noBody","BCard","_class","slots","scopedSlots","imgLeft","imgRight","imgStart","imgEnd","imgBottom","header","headerHtml","footer","footerHtml","textVariant","bgVariant","borderVariant","$scopedSlots","$slots","slotScope","$imgFirst","$imgLast","$img","$header","hasHeaderSlot","domProps","html","$content","overlay","staticClass","$footer","hasFooterSlot","tag","_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","mixins","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","BLANK_TEMPLATE","makeBlankImgSrc","color","encodeURIComponent","blank","blankColor","block","center","fluid","fluidGrow","rounded","sizes","srcset","thumbnail","BImg","join","title","titleTag","BCardTitle","children","_vm","_h","$createElement","_c","_self","_v","_l","form","questions","question","index","$store","state","appConfig","isRTL","option","dificuldadeOptions","model","dificuldade","callback","$$v","$set","expression","options","letter","isAnswer","on","$event","setCorrectQuestion","_s","description","directives","rawName","modifiers","removeQuestion","_e","addNewQuestion","staticRenderFns","BRow","BCol","BButton","BFormTextarea","BAvatar","vSelect","Ripple","splice","console","log","correctAnswer","q","component","bodyClass","BCardBody","_ref2","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","subTitle","bodyTag","footerClass","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","_classCallCheck","instance","Constructor","TypeError","_defineProperties","descriptor","_createClass","protoProps","staticProps","prototype","OBSERVER_PROP_NAME","VisibilityObserver","el","vnode","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","handler","root","rootMargin","threshold","_unused","context","$nextTick","observe","entries","entry","isIntersecting","Boolean","intersectionRatio","disconnect","destroy","mod","test","toLowerCase","_prevModifiers","componentUpdated","oldValue","unbind","VBVisible","maxRows","noAutoShrink","noResize","rows","wrap","heightInPx","computedStyle","styles","resize","computedRows","overflowY","computedMinRows","computedMaxRows","computedAttrs","id","safeId","computedAriaInvalid","computedListeners","bvListeners","change","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderTopWidth","borderBottomWidth","padding","paddingTop","paddingBottom","offset","minHeight","oldHeight","scrollHeight","contentRows","style","ref","COMMON_ALIGNMENT","computeRowColsClass","breakpoint","cols","computeRowColsBreakpoint","rowColsPropList","generateProps","rowColsProps","reduce","alignContent","alignH","alignV","noGutters","_classList$push","classList","c","size","formSizeMixin","ALIGN_SELF_VALUES","computeBreakpoint","className","computeBreakpointClass","breakpointPropMap","breakpoints","breakpointCol","breakpointOffset","breakpointOrder","col","order","alignSelf","_keys","hasColClasses","some","headerClass","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","subTitleTag","subTitleTextVariant","BCardSubTitle","formStateMixin","computedState","SELECTOR","autofocus","formControlMixin","handleAutofocus","activated","CLASS_NAME","SIZES","FONT_SIZE_SCALE","BADGE_FONT_SIZE_SCALE","computeSize","linkProps","ariaLabel","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","button","buttonType","square","text","variant","inject","bvAvatarGroup","default","localSrc","computedSize","computedVariant","computedRounded","fontStyle","fontSize","indexOf","marginStyle","overlapScale","marginLeft","marginRight","badgeStyle","onImgError","onClick","_class2","link","hasNormalizedSlot","normalizeSlot","error","$badge","hasBadgeSlot","badgeText","componentData","click"],"mappings":"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","file":"js/chunk-2d76db31.9506a3ef.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});","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_ICON } from '../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../constants/props';\nimport { RX_ICON_PREFIX } from '../constants/regex';\nimport { omit, sortKeys } from '../utils/object';\nimport { makeProp, makePropsConfigurable } from '../utils/props';\nimport { pascalCase, trim } from '../utils/string';\nimport { BIconBlank } from './icons';\nimport { props as BVIconBaseProps } from './helpers/icon-base'; // --- Helper methods ---\n\nvar findIconComponent = function findIconComponent(ctx, iconName) {\n if (!ctx) {\n return null;\n }\n\n var components = (ctx.$options || {}).components;\n var iconComponent = components[iconName];\n return iconComponent || findIconComponent(ctx.$parent, iconName);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, omit(BVIconBaseProps, ['content', 'stacked'])), {}, {\n icon: makeProp(PROP_TYPE_STRING),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_ICON); // --- Main component ---\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\n\nexport var BIcon = /*#__PURE__*/Vue.extend({\n name: NAME_ICON,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props,\n parent = _ref.parent;\n var icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, ''); // If parent context exists, we check to see if the icon has been registered\n // either locally in the parent component, or globally at the `$root` level\n // If not registered, we render a blank icon\n\n return h(icon ? findIconComponent(parent, \"BIcon\".concat(icon)) || BIconBlank : BIconBlank, mergeData(data, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n icon: null\n })\n }));\n }\n});","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_CARD_IMG } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { pick, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { props as BImgProps } from '../image/img'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, pick(BImgProps, ['src', 'alt', 'width', 'height', 'left', 'right'])), {}, {\n bottom: makeProp(PROP_TYPE_BOOLEAN, false),\n end: makeProp(PROP_TYPE_BOOLEAN, false),\n start: makeProp(PROP_TYPE_BOOLEAN, false),\n top: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD_IMG); // --- Main component ---\n// @vue/component\n\nexport var BCardImg = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_IMG,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\n var src = props.src,\n alt = props.alt,\n width = props.width,\n height = props.height;\n var baseClass = 'card-img';\n\n if (props.top) {\n baseClass += '-top';\n } else if (props.right || props.end) {\n baseClass += '-right';\n } else if (props.bottom) {\n baseClass += '-bottom';\n } else if (props.left || props.start) {\n baseClass += '-left';\n }\n\n return h('img', mergeData(data, {\n class: baseClass,\n attrs: {\n src: src,\n alt: alt,\n width: width,\n height: height\n }\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_CARD } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slots';\nimport { htmlOrText } from '../../utils/html';\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName, unprefixPropName } from '../../utils/props';\nimport { props as cardProps } from '../../mixins/card';\nimport { BCardBody, props as BCardBodyProps } from './card-body';\nimport { BCardHeader, props as BCardHeaderProps } from './card-header';\nimport { BCardFooter, props as BCardFooterProps } from './card-footer';\nimport { BCardImg, props as BCardImgProps } from './card-img'; // --- Props ---\n\nvar cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'));\ncardImgProps.imgSrc.required = false;\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, BCardBodyProps), BCardHeaderProps), BCardFooterProps), cardImgProps), cardProps), {}, {\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD); // --- Main component ---\n// @vue/component\n\nexport var BCard = /*#__PURE__*/Vue.extend({\n name: NAME_CARD,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var props = _ref.props,\n data = _ref.data,\n slots = _ref.slots,\n scopedSlots = _ref.scopedSlots;\n var imgSrc = props.imgSrc,\n imgLeft = props.imgLeft,\n imgRight = props.imgRight,\n imgStart = props.imgStart,\n imgEnd = props.imgEnd,\n imgBottom = props.imgBottom,\n header = props.header,\n headerHtml = props.headerHtml,\n footer = props.footer,\n footerHtml = props.footerHtml,\n align = props.align,\n textVariant = props.textVariant,\n bgVariant = props.bgVariant,\n borderVariant = props.borderVariant;\n var $scopedSlots = scopedSlots || {};\n var $slots = slots();\n var slotScope = {};\n var $imgFirst = h();\n var $imgLast = h();\n\n if (imgSrc) {\n var $img = h(BCardImg, {\n props: pluckProps(cardImgProps, props, unprefixPropName.bind(null, 'img'))\n });\n\n if (imgBottom) {\n $imgLast = $img;\n } else {\n $imgFirst = $img;\n }\n }\n\n var $header = h();\n var hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots);\n\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(BCardHeader, {\n props: pluckProps(BCardHeaderProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n }, normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots));\n }\n\n var $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots); // Wrap content in `` when `noBody` prop set\n\n if (!props.noBody) {\n $content = h(BCardBody, {\n props: pluckProps(BCardBodyProps, props)\n }, $content); // When the `overlap` prop is set we need to wrap the `` and ``\n // into a relative positioned wrapper to don't distract a potential header or footer\n\n if (props.overlay && imgSrc) {\n $content = h('div', {\n staticClass: 'position-relative'\n }, [$imgFirst, $content, $imgLast]); // Reset image variables since they are already in the wrapper\n\n $imgFirst = h();\n $imgLast = h();\n }\n }\n\n var $footer = h();\n var hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots);\n\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(BCardFooter, {\n props: pluckProps(BCardFooterProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n }, normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots));\n }\n\n return h(props.tag, mergeData(data, {\n staticClass: 'card',\n class: (_class = {\n 'flex-row': imgLeft || imgStart,\n 'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart)\n }, _defineProperty(_class, \"text-\".concat(align), align), _defineProperty(_class, \"bg-\".concat(bgVariant), bgVariant), _defineProperty(_class, \"border-\".concat(borderVariant), borderVariant), _defineProperty(_class, \"text-\".concat(textVariant), textVariant), _class)\n }), [$imgFirst, $header, $content, $footer, $imgLast]);\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});","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_IMG } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_STRING, PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { concat } from '../../utils/array';\nimport { identity } from '../../utils/identity';\nimport { isString } from '../../utils/inspect';\nimport { toInteger } from '../../utils/number';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Constants --\n// Blank image with fill template\n\nvar BLANK_TEMPLATE = '' + '' + ''; // --- Helper methods ---\n\nvar makeBlankImgSrc = function makeBlankImgSrc(width, height, color) {\n var src = encodeURIComponent(BLANK_TEMPLATE.replace('%{w}', toString(width)).replace('%{h}', toString(height)).replace('%{f}', color));\n return \"data:image/svg+xml;charset=UTF-8,\".concat(src);\n}; // --- Props ---\n\n\nexport var props = makePropsConfigurable({\n alt: makeProp(PROP_TYPE_STRING),\n blank: makeProp(PROP_TYPE_BOOLEAN, false),\n blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n center: makeProp(PROP_TYPE_BOOLEAN, false),\n fluid: makeProp(PROP_TYPE_BOOLEAN, false),\n // Gives fluid images class `w-100` to make them grow to fit container\n fluidGrow: makeProp(PROP_TYPE_BOOLEAN, false),\n height: makeProp(PROP_TYPE_NUMBER_STRING),\n left: makeProp(PROP_TYPE_BOOLEAN, false),\n right: makeProp(PROP_TYPE_BOOLEAN, false),\n // Possible values:\n // `false`: no rounding of corners\n // `true`: slightly rounded corners\n // 'top': top corners rounded\n // 'right': right corners rounded\n // 'bottom': bottom corners rounded\n // 'left': left corners rounded\n // 'circle': circle/oval\n // '0': force rounding off\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n sizes: makeProp(PROP_TYPE_ARRAY_STRING),\n src: makeProp(PROP_TYPE_STRING),\n srcset: makeProp(PROP_TYPE_ARRAY_STRING),\n thumbnail: makeProp(PROP_TYPE_BOOLEAN, false),\n width: makeProp(PROP_TYPE_NUMBER_STRING)\n}, NAME_IMG); // --- Main component ---\n// @vue/component\n\nexport var BImg = /*#__PURE__*/Vue.extend({\n name: NAME_IMG,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _class;\n\n var props = _ref.props,\n data = _ref.data;\n var alt = props.alt,\n src = props.src,\n block = props.block,\n fluidGrow = props.fluidGrow,\n rounded = props.rounded;\n var width = toInteger(props.width) || null;\n var height = toInteger(props.height) || null;\n var align = null;\n var srcset = concat(props.srcset).filter(identity).join(',');\n var sizes = concat(props.sizes).filter(identity).join(',');\n\n if (props.blank) {\n if (!height && width) {\n height = width;\n } else if (!width && height) {\n width = height;\n }\n\n if (!width && !height) {\n width = 1;\n height = 1;\n } // Make a blank SVG image\n\n\n src = makeBlankImgSrc(width, height, props.blankColor || 'transparent'); // Disable srcset and sizes\n\n srcset = null;\n sizes = null;\n }\n\n if (props.left) {\n align = 'float-left';\n } else if (props.right) {\n align = 'float-right';\n } else if (props.center) {\n align = 'mx-auto';\n block = true;\n }\n\n return h('img', mergeData(data, {\n attrs: {\n src: src,\n alt: alt,\n width: width ? toString(width) : null,\n height: height ? toString(height) : null,\n srcset: srcset || null,\n sizes: sizes || null\n },\n class: (_class = {\n 'img-thumbnail': props.thumbnail,\n 'img-fluid': props.fluid || fluidGrow,\n 'w-100': fluidGrow,\n rounded: rounded === '' || rounded === true\n }, _defineProperty(_class, \"rounded-\".concat(rounded), isString(rounded) && rounded !== ''), _defineProperty(_class, align, align), _defineProperty(_class, 'd-block', block), _class)\n }));\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_TITLE } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n}, NAME_CARD_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_TITLE,\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.titleTag, mergeData(data, {\n staticClass: 'card-title'\n }), children || toString(props.title));\n }\n});","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n attrs: {\n \"id\": \"quiz\"\n }\n }, [_c('b-row', [_c('b-col', [_c('h2', {\n staticClass: \"mt-1\"\n }, [_c('feather-icon', {\n staticClass: \"mr-50\",\n attrs: {\n \"icon\": \"SettingsIcon\",\n \"size\": \"30\"\n }\n }), _vm._v(\" Quiz \")], 1)])], 1), _vm._l(_vm.form.questions, function (question, index) {\n return _c('b-row', {\n key: index,\n staticClass: \"mt-1\"\n }, [_c('b-col', [_c('b-card', [_c('b-card', {\n staticClass: \"card-quiz-pre\"\n }, [_c('b-row', [_c('b-col', {\n attrs: {\n \"cols\": \"6\"\n }\n }, [_c('label', {\n attrs: {\n \"for\": \"textarea-default\"\n }\n }, [_vm._v(\"Dificuldade\")]), _c('v-select', {\n staticClass: \"mb-3\",\n attrs: {\n \"id\": \"dificuldade\",\n \"dir\": _vm.$store.state.appConfig.isRTL ? 'rtl' : 'ltr',\n \"selectable\": function selectable(option) {\n return option.value != null;\n },\n \"options\": _vm.dificuldadeOptions,\n \"item-value\": \"value\",\n \"item-text\": \"name\"\n },\n model: {\n value: question.dificuldade,\n callback: function callback($$v) {\n _vm.$set(question, \"dificuldade\", $$v);\n },\n expression: \"question.dificuldade\"\n }\n })], 1), _c('b-col', {\n attrs: {\n \"cols\": \"12\"\n }\n }, [_c('label', {\n attrs: {\n \"for\": \"textarea-default\"\n }\n }, [_vm._v(\"Conteúdo da pergunta\")]), _c('b-form-textarea', {\n staticClass: \"mb-3\",\n attrs: {\n \"id\": \"textarea-default\",\n \"placeholder\": \"Inserir texto\",\n \"rows\": \"3\"\n },\n model: {\n value: question.question,\n callback: function callback($$v) {\n _vm.$set(question, \"question\", $$v);\n },\n expression: \"question.question\"\n }\n })], 1)], 1), _vm._l(question.options, function (option) {\n return _c('b-row', {\n key: option.letter\n }, [_c('b-col', {\n attrs: {\n \"lg\": \"0\"\n }\n }, [_c('b-button', {\n staticClass: \"button-option\",\n attrs: {\n \"variant\": option.isAnswer ? 'primary' : ''\n },\n on: {\n \"click\": function click($event) {\n return _vm.setCorrectQuestion(question, option.letter);\n }\n }\n }, [_c('span', [_vm._v(_vm._s(option.letter))])])], 1), _c('b-col', [_c('label', {\n attrs: {\n \"for\": \"textarea-default\"\n }\n }, [_vm._v(\"Conteúdo da alternativa\")]), _c('b-form-textarea', {\n attrs: {\n \"id\": \"textarea-default\",\n \"placeholder\": \"Inserir texto\",\n \"rows\": \"3\"\n },\n model: {\n value: option.description,\n callback: function callback($$v) {\n _vm.$set(option, \"description\", $$v);\n },\n expression: \"option.description\"\n }\n })], 1)], 1);\n }), index > 0 ? _c('b-button', {\n directives: [{\n name: \"ripple\",\n rawName: \"v-ripple.400\",\n value: 'rgba(113, 102, 240, 0.15)',\n expression: \"'rgba(113, 102, 240, 0.15)'\",\n modifiers: {\n \"400\": true\n }\n }],\n staticClass: \"button-right mt-2\",\n attrs: {\n \"variant\": \"outline-primary\"\n },\n on: {\n \"click\": function click($event) {\n return _vm.removeQuestion(index);\n }\n }\n }, [_c('feather-icon', {\n staticClass: \"mr-50\",\n attrs: {\n \"icon\": \"MinusIcon\"\n }\n }), _c('span', {\n staticClass: \"align-middle\"\n }, [_vm._v(\"Remover\")])], 1) : _vm._e()], 2)], 1)], 1)], 1);\n }), _c('b-row', {\n staticClass: \"mt-2\"\n }, [_c('b-col', [_c('b-button', {\n directives: [{\n name: \"ripple\",\n rawName: \"v-ripple.400\",\n value: 'rgba(255, 255, 255, 0.15)',\n expression: \"'rgba(255, 255, 255, 0.15)'\",\n modifiers: {\n \"400\": true\n }\n }],\n staticClass: \"button-right\",\n attrs: {\n \"variant\": \"primary\"\n }\n }, [_c('feather-icon', {\n staticClass: \"mr-50\",\n attrs: {\n \"icon\": \"ListIcon\"\n }\n }), _c('span', {\n staticClass: \"align-middle\",\n on: {\n \"click\": function click($event) {\n return _vm.addNewQuestion();\n }\n }\n }, [_vm._v(\"Adicionar Questão\")])], 1)], 1)], 1)], 2);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Quiz.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Quiz.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Quiz.vue?vue&type=template&id=79b33933&\"\nimport script from \"./Quiz.vue?vue&type=script&lang=js&\"\nexport * from \"./Quiz.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Quiz.vue?vue&type=style&index=0&lang=scss&\"\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","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_CARD_BODY } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, pluckProps, prefixPropName } from '../../utils/props';\nimport { props as cardProps } from '../../mixins/card';\nimport { BCardTitle, props as titleProps } from './card-title';\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, titleProps), subTitleProps), copyProps(cardProps, prefixPropName.bind(null, 'body'))), {}, {\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD_BODY); // --- Main component ---\n// @vue/component\n\nexport var BCardBody = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_BODY,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var bodyBgVariant = props.bodyBgVariant,\n bodyBorderVariant = props.bodyBorderVariant,\n bodyTextVariant = props.bodyTextVariant;\n var $title = h();\n\n if (props.title) {\n $title = h(BCardTitle, {\n props: pluckProps(titleProps, props)\n });\n }\n\n var $subTitle = h();\n\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n });\n }\n\n return h(props.bodyTag, mergeData(data, {\n staticClass: 'card-body',\n class: [(_ref2 = {\n 'card-img-overlay': props.overlay\n }, _defineProperty(_ref2, \"bg-\".concat(bodyBgVariant), bodyBgVariant), _defineProperty(_ref2, \"border-\".concat(bodyBorderVariant), bodyBorderVariant), _defineProperty(_ref2, \"text-\".concat(bodyTextVariant), bodyTextVariant), _ref2), props.bodyClass]\n }), [$title, $subTitle, 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, mergeData } from '../../vue';\nimport { NAME_CARD_FOOTER } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { htmlOrText } from '../../utils/html';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props';\nimport { props as BCardProps } from '../../mixins/card'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, copyProps(BCardProps, prefixPropName.bind(null, 'footer'))), {}, {\n footer: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerHtml: makeProp(PROP_TYPE_STRING)\n})), NAME_CARD_FOOTER); // --- Main component ---\n// @vue/component\n\nexport var BCardFooter = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var footerBgVariant = props.footerBgVariant,\n footerBorderVariant = props.footerBorderVariant,\n footerTextVariant = props.footerTextVariant;\n return h(props.footerTag, mergeData(data, {\n staticClass: 'card-footer',\n class: [props.footerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(footerBgVariant), footerBgVariant), _defineProperty(_ref2, \"border-\".concat(footerBorderVariant), footerBorderVariant), _defineProperty(_ref2, \"text-\".concat(footerTextVariant), footerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n }), children);\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 { mergeData } from '../../vue';\nimport { NAME_ROW } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { arrayIncludes, concat } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { memoize } from '../../utils/memoize';\nimport { create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase, toString, trim } from '../../utils/string'; // --- Constants ---\n\nvar COMMON_ALIGNMENT = ['start', 'end', 'center']; // --- Helper methods ---\n// Compute a `row-cols-{breakpoint}-{cols}` class name\n// Memoized function for better performance on generating class names\n\nvar computeRowColsClass = memoize(function (breakpoint, cols) {\n cols = trim(toString(cols));\n return cols ? lowerCase(['row-cols', breakpoint, cols].filter(identity).join('-')) : null;\n}); // Get the breakpoint name from the `rowCols` prop name\n// Memoized function for better performance on extracting breakpoint names\n\nvar computeRowColsBreakpoint = memoize(function (prop) {\n return lowerCase(prop.replace('cols', ''));\n}); // Cached copy of the `row-cols` breakpoint prop names\n// Will be populated when the props are generated\n\nvar rowColsPropList = []; // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // i.e. 'row-cols-2', 'row-cols-md-4', 'row-cols-xl-6', ...\n var rowColsProps = getBreakpointsUpCached().reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'cols')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // Cache the row-cols prop names\n\n rowColsPropList = keys(rowColsProps); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, rowColsProps), {}, {\n alignContent: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around', 'stretch'), value);\n }),\n alignH: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'between', 'around'), value);\n }),\n alignV: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(concat(COMMON_ALIGNMENT, 'baseline', 'stretch'), value);\n }),\n noGutters: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_ROW);\n}; // --- Main component ---\n// We do not use `Vue.extend()` here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BRow = {\n name: NAME_ROW,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props;\n this.props = generateProps();\n return this.props;\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var alignV = props.alignV,\n alignH = props.alignH,\n alignContent = props.alignContent; // Loop through row-cols breakpoint props and generate the classes\n\n var classList = [];\n rowColsPropList.forEach(function (prop) {\n var c = computeRowColsClass(computeRowColsBreakpoint(prop), props[prop]); // If a class is returned, push it onto the array\n\n if (c) {\n classList.push(c);\n }\n });\n classList.push((_classList$push = {\n 'no-gutters': props.noGutters\n }, _defineProperty(_classList$push, \"align-items-\".concat(alignV), alignV), _defineProperty(_classList$push, \"justify-content-\".concat(alignH), alignH), _defineProperty(_classList$push, \"align-content-\".concat(alignContent), alignContent), _classList$push));\n return h(props.tag, mergeData(data, {\n staticClass: 'row',\n class: classList\n }), children);\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});","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 { mergeData } from '../../vue';\nimport { NAME_COL } from '../../constants/components';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_NUMBER_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { RX_COL_CLASS } from '../../constants/regex';\nimport { arrayIncludes } from '../../utils/array';\nimport { getBreakpointsUpCached } from '../../utils/config';\nimport { identity } from '../../utils/identity';\nimport { isUndefinedOrNull } from '../../utils/inspect';\nimport { memoize } from '../../utils/memoize';\nimport { assign, create, keys, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, suffixPropName } from '../../utils/props';\nimport { lowerCase } from '../../utils/string'; // --- Constants ---\n\nvar ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch']; // --- Helper methods ---\n// Compute a breakpoint class name\n\nvar computeBreakpoint = function computeBreakpoint(type, breakpoint, value) {\n var className = type;\n\n if (isUndefinedOrNull(value) || value === false) {\n return undefined;\n }\n\n if (breakpoint) {\n className += \"-\".concat(breakpoint);\n } // Handling the boolean style prop when accepting `[Boolean, String, Number]`\n // means Vue will not convert `` to `sm: true` for us\n // Since the default is `false`, '' indicates the prop's presence\n\n\n if (type === 'col' && (value === '' || value === true)) {\n // .col-md\n return lowerCase(className);\n } // .order-md-6\n\n\n className += \"-\".concat(value);\n return lowerCase(className);\n}; // Memoized function for better performance on generating class names\n\n\nvar computeBreakpointClass = memoize(computeBreakpoint); // Cached copy of the breakpoint prop names\n\nvar breakpointPropMap = create(null); // --- Props ---\n// Prop generator for lazy generation of props\n\nexport var generateProps = function generateProps() {\n // Grab the breakpoints from the cached config (exclude the '' (xs) breakpoint)\n var breakpoints = getBreakpointsUpCached().filter(identity); // i.e. 'col-sm', 'col-md-6', 'col-lg-auto', ...\n\n var breakpointCol = breakpoints.reduce(function (props, breakpoint) {\n props[breakpoint] = makeProp(PROP_TYPE_BOOLEAN_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'offset-md-1', 'offset-lg-12', ...\n\n var breakpointOffset = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'offset')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // i.e. 'order-md-1', 'order-lg-12', ...\n\n var breakpointOrder = breakpoints.reduce(function (props, breakpoint) {\n props[suffixPropName(breakpoint, 'order')] = makeProp(PROP_TYPE_NUMBER_STRING);\n return props;\n }, create(null)); // For loop doesn't need to check `.hasOwnProperty()`\n // when using an object created from `null`\n\n breakpointPropMap = assign(create(null), {\n col: keys(breakpointCol),\n offset: keys(breakpointOffset),\n order: keys(breakpointOrder)\n }); // Return the generated props\n\n return makePropsConfigurable(sortKeys(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, breakpointCol), breakpointOffset), breakpointOrder), {}, {\n // Flex alignment\n alignSelf: makeProp(PROP_TYPE_STRING, null, function (value) {\n return arrayIncludes(ALIGN_SELF_VALUES, value);\n }),\n // Generic flexbox 'col' (xs)\n col: makeProp(PROP_TYPE_BOOLEAN, false),\n // i.e. 'col-1', 'col-2', 'col-auto', ...\n cols: makeProp(PROP_TYPE_NUMBER_STRING),\n offset: makeProp(PROP_TYPE_NUMBER_STRING),\n order: makeProp(PROP_TYPE_NUMBER_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n })), NAME_COL);\n}; // --- Main component ---\n// We do not use Vue.extend here as that would evaluate the props\n// immediately, which we do not want to happen\n// @vue/component\n\nexport var BCol = {\n name: NAME_COL,\n functional: true,\n\n get props() {\n // Allow props to be lazy evaled on first access and\n // then they become a non-getter afterwards.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get#Smart_self-overwriting_lazy_getters\n delete this.props; // eslint-disable-next-line no-return-assign\n\n return this.props = generateProps();\n },\n\n render: function render(h, _ref) {\n var _classList$push;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var cols = props.cols,\n offset = props.offset,\n order = props.order,\n alignSelf = props.alignSelf;\n var classList = []; // Loop through `col`, `offset`, `order` breakpoint props\n\n for (var type in breakpointPropMap) {\n // Returns colSm, offset, offsetSm, orderMd, etc.\n var _keys = breakpointPropMap[type];\n\n for (var i = 0; i < _keys.length; i++) {\n // computeBreakpoint(col, colSm => Sm, value=[String, Number, Boolean])\n var c = computeBreakpointClass(type, _keys[i].replace(type, ''), props[_keys[i]]); // If a class is returned, push it onto the array.\n\n if (c) {\n classList.push(c);\n }\n }\n }\n\n var hasColClasses = classList.some(function (className) {\n return RX_COL_CLASS.test(className);\n });\n classList.push((_classList$push = {\n // Default to .col if no other col-{bp}-* classes generated nor `cols` specified.\n col: props.col || !hasColClasses && !cols\n }, _defineProperty(_classList$push, \"col-\".concat(cols), cols), _defineProperty(_classList$push, \"offset-\".concat(offset), offset), _defineProperty(_classList$push, \"order-\".concat(order), order), _defineProperty(_classList$push, \"align-self-\".concat(alignSelf), alignSelf), _classList$push));\n return h(props.tag, mergeData(data, {\n class: classList\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, mergeData } from '../../vue';\nimport { NAME_CARD_HEADER } from '../../constants/components';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { htmlOrText } from '../../utils/html';\nimport { sortKeys } from '../../utils/object';\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props';\nimport { props as BCardProps } from '../../mixins/card'; // --- Props ---\n\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, copyProps(BCardProps, prefixPropName.bind(null, 'header'))), {}, {\n header: makeProp(PROP_TYPE_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerHtml: makeProp(PROP_TYPE_STRING)\n})), NAME_CARD_HEADER); // --- Main component ---\n// @vue/component\n\nexport var BCardHeader = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props: props,\n render: function render(h, _ref) {\n var _ref2;\n\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var headerBgVariant = props.headerBgVariant,\n headerBorderVariant = props.headerBorderVariant,\n headerTextVariant = props.headerTextVariant;\n return h(props.headerTag, mergeData(data, {\n staticClass: 'card-header',\n class: [props.headerClass, (_ref2 = {}, _defineProperty(_ref2, \"bg-\".concat(headerBgVariant), headerBgVariant), _defineProperty(_ref2, \"border-\".concat(headerBorderVariant), headerBorderVariant), _defineProperty(_ref2, \"text-\".concat(headerTextVariant), headerTextVariant), _ref2)],\n domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n }), children);\n }\n});","import { Vue, mergeData } from '../../vue';\nimport { NAME_CARD_SUB_TITLE } from '../../constants/components';\nimport { PROP_TYPE_STRING } from '../../constants/props';\nimport { makeProp, makePropsConfigurable } from '../../utils/props';\nimport { toString } from '../../utils/string'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n subTitle: makeProp(PROP_TYPE_STRING),\n subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n}, NAME_CARD_SUB_TITLE); // --- Main component ---\n// @vue/component\n\nexport var BCardSubTitle = /*#__PURE__*/Vue.extend({\n name: NAME_CARD_SUB_TITLE,\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.subTitleTag, mergeData(data, {\n staticClass: 'card-subtitle',\n class: [props.subTitleTextVariant ? \"text-\".concat(props.subTitleTextVariant) : null]\n }), children || toString(props.subTitle));\n }\n});","/* Form control contextual state class computation\n *\n * Returned class is either 'is-valid' or 'is-invalid' based on the 'state' prop\n * state can be one of five values:\n * - true for is-valid\n * - false for is-invalid\n * - null for no contextual state\n */\nimport { Vue } from '../vue';\nimport { PROP_TYPE_BOOLEAN } from '../constants/props';\nimport { isBoolean } from '../utils/inspect';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n // Tri-state prop: true, false, null (or undefined)\n state: makeProp(PROP_TYPE_BOOLEAN, null)\n}, 'formState'); // --- Mixin ---\n// @vue/component\n\nexport var formStateMixin = Vue.extend({\n props: props,\n computed: {\n computedState: function computedState() {\n // If not a boolean, ensure that value is null\n return isBoolean(this.state) ? this.state : null;\n },\n stateClass: function stateClass() {\n var state = this.computedState;\n return state === true ? 'is-valid' : state === false ? 'is-invalid' : null;\n },\n computedAriaInvalid: function computedAriaInvalid() {\n var ariaInvalid = this.ariaInvalid;\n\n if (ariaInvalid === true || ariaInvalid === 'true' || ariaInvalid === '') {\n return 'true';\n }\n\n return this.computedState === false ? 'true' : ariaInvalid;\n }\n }\n});","import { Vue } from '../vue';\nimport { NAME_CARD } from '../constants/components';\nimport { PROP_TYPE_STRING } from '../constants/props';\nimport { makeProp, makePropsConfigurable } from '../utils/props'; // --- Props ---\n\nexport var props = makePropsConfigurable({\n bgVariant: makeProp(PROP_TYPE_STRING),\n borderVariant: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n textVariant: makeProp(PROP_TYPE_STRING)\n}, NAME_CARD); // --- Mixin ---\n// @vue/component\n\nexport var cardMixin = Vue.extend({\n props: props\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});","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_AVATAR } from '../../constants/components';\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_BOOLEAN_STRING, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { SLOT_NAME_BADGE } from '../../constants/slots';\nimport { isNumber, isNumeric, isString } from '../../utils/inspect';\nimport { toFloat } from '../../utils/number';\nimport { omit, sortKeys } from '../../utils/object';\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props';\nimport { isLink } from '../../utils/router';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { BIcon } from '../../icons/icon';\nimport { BIconPersonFill } from '../../icons/icons';\nimport { BButton } from '../button/button';\nimport { BLink, props as BLinkProps } from '../link/link'; // --- Constants ---\n\nvar CLASS_NAME = 'b-avatar';\nvar SIZES = ['sm', null, 'lg'];\nvar FONT_SIZE_SCALE = 0.4;\nvar BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7; // --- Helper methods ---\n\nexport var computeSize = function computeSize(value) {\n // Parse to number when value is a float-like string\n value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value; // Convert all numbers to pixel values\n\n return isNumber(value) ? \"\".concat(value, \"px\") : value || null;\n}; // --- Props ---\n\nvar linkProps = omit(BLinkProps, ['active', 'event', 'routerTag']);\nexport var props = makePropsConfigurable(sortKeys(_objectSpread(_objectSpread({}, linkProps), {}, {\n alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeOffset: makeProp(PROP_TYPE_STRING),\n badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n icon: makeProp(PROP_TYPE_STRING),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n size: makeProp(PROP_TYPE_NUMBER_STRING),\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n src: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_AVATAR); // --- Main component ---\n// @vue/component\n\nexport var BAvatar = /*#__PURE__*/Vue.extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvAvatarGroup: {\n default: null\n }\n },\n props: props,\n data: function data() {\n return {\n localSrc: this.src || null\n };\n },\n computed: {\n computedSize: function computedSize() {\n // Always use the avatar group size\n var bvAvatarGroup = this.bvAvatarGroup;\n return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size);\n },\n computedVariant: function computedVariant() {\n var bvAvatarGroup = this.bvAvatarGroup;\n return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant;\n },\n computedRounded: function computedRounded() {\n var bvAvatarGroup = this.bvAvatarGroup;\n var square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square;\n var rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded;\n return square ? '0' : rounded === '' ? true : rounded || 'circle';\n },\n fontStyle: function fontStyle() {\n var size = this.computedSize;\n var fontSize = SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(FONT_SIZE_SCALE, \")\") : null;\n return fontSize ? {\n fontSize: fontSize\n } : {};\n },\n marginStyle: function marginStyle() {\n var size = this.computedSize,\n bvAvatarGroup = this.bvAvatarGroup;\n var overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0;\n var value = size && overlapScale ? \"calc(\".concat(size, \" * -\").concat(overlapScale, \")\") : null;\n return value ? {\n marginLeft: value,\n marginRight: value\n } : {};\n },\n badgeStyle: function badgeStyle() {\n var size = this.computedSize,\n badgeTop = this.badgeTop,\n badgeLeft = this.badgeLeft,\n badgeOffset = this.badgeOffset;\n var offset = badgeOffset || '0px';\n return {\n fontSize: SIZES.indexOf(size) === -1 ? \"calc(\".concat(size, \" * \").concat(BADGE_FONT_SIZE_SCALE, \" )\") : null,\n top: badgeTop ? offset : null,\n bottom: badgeTop ? null : offset,\n left: badgeLeft ? offset : null,\n right: badgeLeft ? null : offset\n };\n }\n },\n watch: {\n src: function src(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localSrc = newValue || null;\n }\n }\n },\n methods: {\n onImgError: function onImgError(event) {\n this.localSrc = null;\n this.$emit(EVENT_NAME_IMG_ERROR, event);\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n }\n },\n render: function render(h) {\n var _class2;\n\n var variant = this.computedVariant,\n disabled = this.disabled,\n rounded = this.computedRounded,\n icon = this.icon,\n src = this.localSrc,\n text = this.text,\n fontStyle = this.fontStyle,\n marginStyle = this.marginStyle,\n size = this.computedSize,\n button = this.button,\n type = this.buttonType,\n badge = this.badge,\n badgeVariant = this.badgeVariant,\n badgeStyle = this.badgeStyle;\n var link = !button && isLink(this);\n var tag = button ? BButton : link ? BLink : 'span';\n var alt = this.alt;\n var ariaLabel = this.ariaLabel || null;\n var $content = null;\n\n if (this.hasNormalizedSlot()) {\n // Default slot overrides props\n $content = h('span', {\n staticClass: 'b-avatar-custom'\n }, [this.normalizeSlot()]);\n } else if (src) {\n $content = h('img', {\n style: variant ? {} : {\n width: '100%',\n height: '100%'\n },\n attrs: {\n src: src,\n alt: alt\n },\n on: {\n error: this.onImgError\n }\n });\n $content = h('span', {\n staticClass: 'b-avatar-img'\n }, [$content]);\n } else if (icon) {\n $content = h(BIcon, {\n props: {\n icon: icon\n },\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n } else if (text) {\n $content = h('span', {\n staticClass: 'b-avatar-text',\n style: fontStyle\n }, [h('span', text)]);\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, {\n attrs: {\n 'aria-hidden': 'true',\n alt: alt\n }\n });\n }\n\n var $badge = h();\n var hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE);\n\n if (badge || badge === '' || hasBadgeSlot) {\n var badgeText = badge === true ? '' : badge;\n $badge = h('span', {\n staticClass: 'b-avatar-badge',\n class: _defineProperty({}, \"badge-\".concat(badgeVariant), badgeVariant),\n style: badgeStyle\n }, [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]);\n }\n\n var componentData = {\n staticClass: CLASS_NAME,\n class: (_class2 = {}, _defineProperty(_class2, \"\".concat(CLASS_NAME, \"-\").concat(size), size && SIZES.indexOf(size) !== -1), _defineProperty(_class2, \"badge-\".concat(variant), !button && variant), _defineProperty(_class2, \"rounded\", rounded === true), _defineProperty(_class2, \"rounded-\".concat(rounded), rounded && rounded !== true), _defineProperty(_class2, \"disabled\", disabled), _class2),\n style: _objectSpread(_objectSpread({}, marginStyle), {}, {\n width: size,\n height: size\n }),\n attrs: {\n 'aria-label': ariaLabel || null\n },\n props: button ? {\n variant: variant,\n disabled: disabled,\n type: type\n } : link ? pluckProps(linkProps, this) : {},\n on: button || link ? {\n click: this.onClick\n } : {}\n };\n return h(tag, componentData, [$content, $badge]);\n }\n});","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Quiz.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""}