{"version":3,"file":"assets/js/chunk-vendors-818dca85.479a8923.js","mappings":"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","sources":["webpack://privileges.ui/./node_modules/bootstrap-vue/dist/bootstrap-vue.esm.js"],"sourcesContent":["/*!\n * BootstrapVue 2.23.1\n *\n * @link https://bootstrap-vue.org\n * @source https://github.com/bootstrap-vue/bootstrap-vue\n * @copyright (c) 2016-2022 BootstrapVue\n * @license MIT\n * https://github.com/bootstrap-vue/bootstrap-vue/blob/master/LICENSE\n */\n\nimport Vue from 'vue';\nimport { mergeData } from 'vue-functional-data-merge';\nimport Popper from 'popper.js';\nimport { Wormhole, PortalTarget, Portal } from 'portal-vue';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2$3(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n Object.defineProperty(subClass, \"prototype\", {\n value: Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n }),\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (_isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = _getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nfunction _get() {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get;\n } else {\n _get = function _get(target, property, receiver) {\n var base = _superPropBase(target, property);\n\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(arguments.length < 3 ? target : receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get.apply(this, arguments);\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar COMPONENT_UID_KEY = '_uid';\nvar isVue3 = Vue.version.startsWith('3');\nvar REF_FOR_KEY = isVue3 ? 'ref_for' : 'refInFor';\nvar ALLOWED_FIELDS_IN_DATA = ['class', 'staticClass', 'style', 'attrs', 'props', 'domProps', 'on', 'nativeOn', 'directives', 'scopedSlots', 'slot', 'key', 'ref', 'refInFor'];\nvar extend = Vue.extend.bind(Vue);\n\nif (isVue3) {\n var originalExtend = Vue.extend;\n var KNOWN_COMPONENTS = ['router-link', 'transition', 'transition-group'];\n var originalVModelDynamicCreated = Vue.vModelDynamic.created;\n var originalVModelDynamicBeforeUpdate = Vue.vModelDynamic.beforeUpdate; // See https://github.com/vuejs/vue-next/pull/4121 for details\n\n Vue.vModelDynamic.created = function (el, binding, vnode) {\n originalVModelDynamicCreated.call(this, el, binding, vnode);\n\n if (!el._assign) {\n el._assign = function () {};\n }\n };\n\n Vue.vModelDynamic.beforeUpdate = function (el, binding, vnode) {\n originalVModelDynamicBeforeUpdate.call(this, el, binding, vnode);\n\n if (!el._assign) {\n el._assign = function () {};\n }\n };\n\n extend = function patchedBootstrapVueExtend(definition) {\n if (_typeof(definition) === 'object' && definition.render && !definition.__alreadyPatched) {\n var originalRender = definition.render;\n definition.__alreadyPatched = true;\n\n definition.render = function (h) {\n var patchedH = function patchedH(tag, dataObjOrChildren, rawSlots) {\n var slots = rawSlots === undefined ? [] : [Array.isArray(rawSlots) ? rawSlots.filter(Boolean) : rawSlots];\n var isTag = typeof tag === 'string' && !KNOWN_COMPONENTS.includes(tag);\n var isSecondArgumentDataObject = dataObjOrChildren && _typeof(dataObjOrChildren) === 'object' && !Array.isArray(dataObjOrChildren);\n\n if (!isSecondArgumentDataObject) {\n return h.apply(void 0, [tag, dataObjOrChildren].concat(slots));\n }\n\n var attrs = dataObjOrChildren.attrs,\n props = dataObjOrChildren.props,\n restData = _objectWithoutProperties(dataObjOrChildren, [\"attrs\", \"props\"]);\n\n var normalizedData = _objectSpread2$3(_objectSpread2$3({}, restData), {}, {\n attrs: attrs,\n props: isTag ? {} : props\n });\n\n if (tag === 'router-link' && !normalizedData.slots && !normalizedData.scopedSlots) {\n // terrible workaround to fix router-link rendering with compat vue-router\n normalizedData.scopedSlots = {\n $hasNormal: function $hasNormal() {}\n };\n }\n\n return h.apply(void 0, [tag, normalizedData].concat(slots));\n };\n\n if (definition.functional) {\n var _ctx$children, _ctx$children$default;\n\n var ctx = arguments[1];\n\n var patchedCtx = _objectSpread2$3({}, ctx);\n\n patchedCtx.data = {\n attrs: _objectSpread2$3({}, ctx.data.attrs || {}),\n props: _objectSpread2$3({}, ctx.data.props || {})\n };\n Object.keys(ctx.data || {}).forEach(function (key) {\n if (ALLOWED_FIELDS_IN_DATA.includes(key)) {\n patchedCtx.data[key] = ctx.data[key];\n } else if (key in ctx.props) {\n patchedCtx.data.props[key] = ctx.data[key];\n } else if (!key.startsWith('on')) {\n patchedCtx.data.attrs[key] = ctx.data[key];\n }\n });\n var IGNORED_CHILDREN_KEYS = ['_ctx'];\n var children = ((_ctx$children = ctx.children) === null || _ctx$children === void 0 ? void 0 : (_ctx$children$default = _ctx$children.default) === null || _ctx$children$default === void 0 ? void 0 : _ctx$children$default.call(_ctx$children)) || ctx.children;\n\n if (children && Object.keys(patchedCtx.children).filter(function (k) {\n return !IGNORED_CHILDREN_KEYS.includes(k);\n }).length === 0) {\n delete patchedCtx.children;\n } else {\n patchedCtx.children = children;\n }\n\n patchedCtx.data.on = ctx.listeners;\n return originalRender.call(this, patchedH, patchedCtx);\n }\n\n return originalRender.call(this, patchedH);\n };\n }\n\n return originalExtend.call(this, definition);\n }.bind(Vue);\n}\n\nvar nextTick = Vue.nextTick;\n\nvar HAS_WINDOW_SUPPORT = typeof window !== 'undefined';\nvar HAS_DOCUMENT_SUPPORT = typeof document !== 'undefined';\nvar HAS_NAVIGATOR_SUPPORT = typeof navigator !== 'undefined';\nvar HAS_PROMISE_SUPPORT = typeof Promise !== 'undefined';\n/* istanbul ignore next: JSDOM always returns false */\n\nvar HAS_MUTATION_OBSERVER_SUPPORT = typeof MutationObserver !== 'undefined' || typeof WebKitMutationObserver !== 'undefined' || typeof MozMutationObserver !== 'undefined';\nvar IS_BROWSER = HAS_WINDOW_SUPPORT && HAS_DOCUMENT_SUPPORT && HAS_NAVIGATOR_SUPPORT;\nvar WINDOW = HAS_WINDOW_SUPPORT ? window : {};\nvar DOCUMENT = HAS_DOCUMENT_SUPPORT ? document : {};\nvar NAVIGATOR = HAS_NAVIGATOR_SUPPORT ? navigator : {};\nvar USER_AGENT = (NAVIGATOR.userAgent || '').toLowerCase();\nvar IS_JSDOM = USER_AGENT.indexOf('jsdom') > 0;\n/msie|trident/.test(USER_AGENT); // Determine if the browser supports the option passive for events\n\nvar HAS_PASSIVE_EVENT_SUPPORT = function () {\n var passiveEventSupported = false;\n\n if (IS_BROWSER) {\n try {\n var options = {\n // This function will be called when the browser\n // attempts to access the passive property\n get passive() {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = true;\n }\n\n };\n WINDOW.addEventListener('test', options, options);\n WINDOW.removeEventListener('test', options, options);\n } catch (_unused) {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = false;\n }\n }\n\n return passiveEventSupported;\n}();\nvar HAS_TOUCH_SUPPORT = IS_BROWSER && ('ontouchstart' in DOCUMENT.documentElement || NAVIGATOR.maxTouchPoints > 0);\nvar HAS_POINTER_EVENT_SUPPORT = IS_BROWSER && Boolean(WINDOW.PointerEvent || WINDOW.MSPointerEvent);\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\n\nvar HAS_INTERACTION_OBSERVER_SUPPORT = IS_BROWSER && 'IntersectionObserver' in WINDOW && 'IntersectionObserverEntry' in WINDOW && // Edge 15 and UC Browser lack support for `isIntersecting`\n// but we an use `intersectionRatio > 0` instead\n// 'isIntersecting' in window.IntersectionObserverEntry.prototype &&\n'intersectionRatio' in WINDOW.IntersectionObserverEntry.prototype;\n\nvar NAME$2 = 'BvConfig';\nvar PROP_NAME$2 = '$bvConfig';\nvar DEFAULT_BREAKPOINT = ['xs', 'sm', 'md', 'lg', 'xl'];\n\n// --- General ---\nvar RX_ARRAY_NOTATION = /\\[(\\d+)]/g;\nvar RX_BV_PREFIX = /^(BV?)/;\nvar RX_DIGITS = /^\\d+$/;\nvar RX_EXTENSION = /^\\..+/;\nvar RX_HASH = /^#/;\nvar RX_HASH_ID = /^#[A-Za-z]+[\\w\\-:.]*$/;\nvar RX_HTML_TAGS = /(<([^>]+)>)/gi;\nvar RX_HYPHENATE = /\\B([A-Z])/g;\nvar RX_LOWER_UPPER = /([a-z])([A-Z])/g;\nvar RX_NUMBER = /^[0-9]*\\.?[0-9]+$/;\nvar RX_PLUS = /\\+/g;\nvar RX_REGEXP_REPLACE = /[-/\\\\^$*+?.()|[\\]{}]/g;\nvar RX_SPACES = /[\\s\\uFEFF\\xA0]+/g;\nvar RX_SPACE_SPLIT = /\\s+/;\nvar RX_STAR = /\\/\\*$/;\nvar RX_START_SPACE_WORD = /(\\s|^)(\\w)/g;\nvar RX_TRIM_LEFT = /^\\s+/;\nvar RX_UNDERSCORE = /_/g;\nvar RX_UN_KEBAB = /-(\\w)/g; // --- Date ---\n// Loose YYYY-MM-DD matching, ignores any appended time inforation\n// Matches '1999-12-20', '1999-1-1', '1999-01-20T22:51:49.118Z', '1999-01-02 13:00:00'\n\nvar RX_DATE = /^\\d+-\\d\\d?-\\d\\d?(?:\\s|T|$)/; // Used to split off the date parts of the YYYY-MM-DD string\n\nvar RX_DATE_SPLIT = /-|\\s|T/; // Time string RegEx (optional seconds)\n\nvar RX_TIME = /^([0-1]?[0-9]|2[0-3]):[0-5]?[0-9](:[0-5]?[0-9])?$/; // --- URL ---\n// HREFs must end with a hash followed by at least one non-hash character\n\nvar RX_HREF = /^.*(#[^#]+)$/;\nvar RX_ENCODED_COMMA = /%2C/g;\nvar RX_ENCODE_REVERSE = /[!'()*]/g;\nvar RX_QUERY_START = /^(\\?|#|&)/; // --- Aspect ---\n\nvar RX_ASPECT = /^\\d+(\\.\\d*)?[/:]\\d+(\\.\\d*)?$/;\nvar RX_ASPECT_SEPARATOR = /[/:]/; // --- Grid ---\n\nvar RX_COL_CLASS = /^col-/; // --- Icon ---\n\nvar RX_ICON_PREFIX = /^BIcon/; // --- Locale ---\n\nvar RX_STRIP_LOCALE_MODS = /-u-.+/;\n\n/* istanbul ignore next */\n\nvar Element = HAS_WINDOW_SUPPORT ? WINDOW.Element : /*#__PURE__*/function (_Object) {\n _inherits(Element, _Object);\n\n var _super = _createSuper(Element);\n\n function Element() {\n _classCallCheck(this, Element);\n\n return _super.apply(this, arguments);\n }\n\n return Element;\n}( /*#__PURE__*/_wrapNativeSuper(Object));\n/* istanbul ignore next */\n\nvar HTMLElement = HAS_WINDOW_SUPPORT ? WINDOW.HTMLElement : /*#__PURE__*/function (_Element) {\n _inherits(HTMLElement, _Element);\n\n var _super2 = _createSuper(HTMLElement);\n\n function HTMLElement() {\n _classCallCheck(this, HTMLElement);\n\n return _super2.apply(this, arguments);\n }\n\n return HTMLElement;\n}(Element);\n/* istanbul ignore next */\n\nvar SVGElement = HAS_WINDOW_SUPPORT ? WINDOW.SVGElement : /*#__PURE__*/function (_Element2) {\n _inherits(SVGElement, _Element2);\n\n var _super3 = _createSuper(SVGElement);\n\n function SVGElement() {\n _classCallCheck(this, SVGElement);\n\n return _super3.apply(this, arguments);\n }\n\n return SVGElement;\n}(Element);\n/* istanbul ignore next */\n\nvar File = HAS_WINDOW_SUPPORT ? WINDOW.File : /*#__PURE__*/function (_Object2) {\n _inherits(File, _Object2);\n\n var _super4 = _createSuper(File);\n\n function File() {\n _classCallCheck(this, File);\n\n return _super4.apply(this, arguments);\n }\n\n return File;\n}( /*#__PURE__*/_wrapNativeSuper(Object));\n\nvar toType$1 = function toType(value) {\n return _typeof(value);\n};\nvar toRawType = function toRawType(value) {\n return Object.prototype.toString.call(value).slice(8, -1);\n};\nvar isUndefined = function isUndefined(value) {\n return value === undefined;\n};\nvar isNull = function isNull(value) {\n return value === null;\n};\nvar isUndefinedOrNull = function isUndefinedOrNull(value) {\n return isUndefined(value) || isNull(value);\n};\nvar isFunction = function isFunction(value) {\n return toType$1(value) === 'function';\n};\nvar isBoolean = function isBoolean(value) {\n return toType$1(value) === 'boolean';\n};\nvar isString = function isString(value) {\n return toType$1(value) === 'string';\n};\nvar isNumber = function isNumber(value) {\n return toType$1(value) === 'number';\n};\nvar isNumeric = function isNumeric(value) {\n return RX_NUMBER.test(String(value));\n};\nvar isArray = function isArray(value) {\n return Array.isArray(value);\n}; // Quick object check\n// This is primarily used to tell Objects from primitive values\n// when we know the value is a JSON-compliant type\n// Note object could be a complex type like array, Date, etc.\n\nvar isObject = function isObject(obj) {\n return obj !== null && _typeof(obj) === 'object';\n}; // Strict object type check\n// Only returns true for plain JavaScript objects\n\nvar isPlainObject = function isPlainObject(obj) {\n return Object.prototype.toString.call(obj) === '[object Object]';\n};\nvar isDate = function isDate(value) {\n return value instanceof Date;\n};\nvar isEvent = function isEvent(value) {\n return value instanceof Event;\n};\nvar isFile = function isFile(value) {\n return value instanceof File;\n};\nvar isRegExp = function isRegExp(value) {\n return toRawType(value) === 'RegExp';\n};\nvar isPromise = function isPromise(value) {\n return !isUndefinedOrNull(value) && isFunction(value.then) && isFunction(value.catch);\n};\n\nvar assign = function assign() {\n return Object.assign.apply(Object, arguments);\n};\nvar create = function create(proto, optionalProps) {\n return Object.create(proto, optionalProps);\n};\nvar defineProperties = function defineProperties(obj, props) {\n return Object.defineProperties(obj, props);\n};\nvar defineProperty = function defineProperty(obj, prop, descriptor) {\n return Object.defineProperty(obj, prop, descriptor);\n};\nvar getOwnPropertyNames = function getOwnPropertyNames(obj) {\n return Object.getOwnPropertyNames(obj);\n};\nvar keys = function keys(obj) {\n return Object.keys(obj);\n}; // --- \"Instance\" ---\n\nvar hasOwnProperty = function hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n};\nvar toString$1 = function toString(obj) {\n return Object.prototype.toString.call(obj);\n}; // --- Utilities ---\n// Shallow copy an object\n\nvar clone = function clone(obj) {\n return _objectSpread2$3({}, obj);\n}; // Return a shallow copy of object with the specified properties only\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n\nvar pick = function pick(obj, props) {\n return keys(obj).filter(function (key) {\n return props.indexOf(key) !== -1;\n }).reduce(function (result, key) {\n return _objectSpread2$3(_objectSpread2$3({}, result), {}, _defineProperty({}, key, obj[key]));\n }, {});\n}; // Return a shallow copy of object with the specified properties omitted\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n\nvar omit = function omit(obj, props) {\n return keys(obj).filter(function (key) {\n return props.indexOf(key) === -1;\n }).reduce(function (result, key) {\n return _objectSpread2$3(_objectSpread2$3({}, result), {}, _defineProperty({}, key, obj[key]));\n }, {});\n}; // Merges two object deeply together\n// See: https://gist.github.com/Salakar/1d7137de9cb8b704e48a\n\nvar mergeDeep = function mergeDeep(target, source) {\n if (isObject(target) && isObject(source)) {\n keys(source).forEach(function (key) {\n if (isObject(source[key])) {\n if (!target[key] || !isObject(target[key])) {\n target[key] = source[key];\n }\n\n mergeDeep(target[key], source[key]);\n } else {\n assign(target, _defineProperty({}, key, source[key]));\n }\n });\n }\n\n return target;\n}; // Returns a shallow copy of the object with keys in sorted order\n\nvar sortKeys = function sortKeys(obj) {\n return keys(obj).sort().reduce(function (result, key) {\n return _objectSpread2$3(_objectSpread2$3({}, result), {}, _defineProperty({}, key, obj[key]));\n }, {});\n}; // Convenience method to create a read-only descriptor\n\nvar readonlyDescriptor = function readonlyDescriptor() {\n return {\n enumerable: true,\n configurable: false,\n writable: false\n };\n};\n\nvar cloneDeep = function cloneDeep(obj) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : obj;\n\n if (isArray(obj)) {\n return obj.reduce(function (result, val) {\n return [].concat(_toConsumableArray(result), [cloneDeep(val, val)]);\n }, []);\n }\n\n if (isPlainObject(obj)) {\n return keys(obj).reduce(function (result, key) {\n return _objectSpread2$3(_objectSpread2$3({}, result), {}, _defineProperty({}, key, cloneDeep(obj[key], obj[key])));\n }, {});\n }\n\n return defaultValue;\n};\n\nvar identity = function identity(x) {\n return x;\n};\n\n/**\n * Get property defined by dot/array notation in string, returns undefined if not found\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @return {*}\n */\n\nvar getRaw = function getRaw(obj, path) {\n var defaultValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n // Handle array of path values\n path = isArray(path) ? path.join('.') : path; // If no path or no object passed\n\n if (!path || !isObject(obj)) {\n return defaultValue;\n } // Handle edge case where user has dot(s) in top-level item field key\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2762\n // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n\n\n if (path in obj) {\n return obj[path];\n } // Handle string array notation (numeric indices only)\n\n\n path = String(path).replace(RX_ARRAY_NOTATION, '.$1');\n var steps = path.split('.').filter(identity); // Handle case where someone passes a string of only dots\n\n if (steps.length === 0) {\n return defaultValue;\n } // Traverse path in object to find result\n // Switched to `in` operator vs `hasOwnProperty` to handle obj.prototype getters\n // https://github.com/bootstrap-vue/bootstrap-vue/issues/3463\n\n\n return steps.every(function (step) {\n return isObject(obj) && step in obj && !isUndefinedOrNull(obj = obj[step]);\n }) ? obj : isNull(obj) ? null : defaultValue;\n};\n/**\n * Get property defined by dot/array notation in string.\n *\n * @link https://gist.github.com/jeneg/9767afdcca45601ea44930ea03e0febf#gistcomment-1935901\n *\n * @param {Object} obj\n * @param {string|Array} path\n * @param {*} defaultValue (optional)\n * @return {*}\n */\n\nvar get = function get(obj, path) {\n var defaultValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var value = getRaw(obj, path);\n return isUndefinedOrNull(value) ? defaultValue : value;\n};\n\n/**\n * Utilities to get information about the current environment\n */\nvar getEnv = function getEnv(key) {\n var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var env = typeof process !== 'undefined' && process ? process.env || {} : {};\n\n if (!key) {\n /* istanbul ignore next */\n return env;\n }\n\n return env[key] || fallback;\n};\nvar getNoWarn = function getNoWarn() {\n return getEnv('BOOTSTRAP_VUE_NO_WARN') || getEnv('NODE_ENV') === 'production';\n};\n\n/**\n * Log a warning message to the console with BootstrapVue formatting\n * @param {string} message\n */\n\nvar warn = function warn(message)\n/* istanbul ignore next */\n{\n var source = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (!getNoWarn()) {\n console.warn(\"[BootstrapVue warn]: \".concat(source ? \"\".concat(source, \" - \") : '').concat(message));\n }\n};\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\n\nvar warnNotClient = function warnNotClient(source) {\n /* istanbul ignore else */\n if (IS_BROWSER) {\n return false;\n } else {\n warn(\"\".concat(source, \": Can not be called during SSR.\"));\n return true;\n }\n};\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\n\nvar warnNoPromiseSupport = function warnNoPromiseSupport(source) {\n /* istanbul ignore else */\n if (HAS_PROMISE_SUPPORT) {\n return false;\n } else {\n warn(\"\".concat(source, \": Requires Promise support.\"));\n return true;\n }\n};\n/**\n * Warn when no MutationObserver support is given\n * @param {string} source\n * @returns {boolean} warned\n */\n\nvar warnNoMutationObserverSupport = function warnNoMutationObserverSupport(source) {\n /* istanbul ignore else */\n if (HAS_MUTATION_OBSERVER_SUPPORT) {\n return false;\n } else {\n warn(\"\".concat(source, \": Requires MutationObserver support.\"));\n return true;\n }\n};\n\nvar BvConfig = /*#__PURE__*/function () {\n function BvConfig() {\n _classCallCheck(this, BvConfig);\n\n this.$_config = {};\n } // Method to merge in user config parameters\n\n\n _createClass(BvConfig, [{\n key: \"setConfig\",\n value: function setConfig() {\n var _this = this;\n\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n /* istanbul ignore next */\n if (!isPlainObject(config)) {\n return;\n }\n\n var configKeys = getOwnPropertyNames(config);\n configKeys.forEach(function (key) {\n /* istanbul ignore next */\n var subConfig = config[key];\n\n if (key === 'breakpoints') {\n /* istanbul ignore if */\n if (!isArray(subConfig) || subConfig.length < 2 || subConfig.some(function (b) {\n return !isString(b) || b.length === 0;\n })) {\n warn('\"breakpoints\" must be an array of at least 2 breakpoint names', NAME$2);\n } else {\n _this.$_config[key] = cloneDeep(subConfig);\n }\n } else if (isPlainObject(subConfig)) {\n // Component prop defaults\n _this.$_config[key] = getOwnPropertyNames(subConfig).reduce(function (config, prop) {\n if (!isUndefined(subConfig[prop])) {\n config[prop] = cloneDeep(subConfig[prop]);\n }\n\n return config;\n }, _this.$_config[key] || {});\n }\n });\n } // Clear the config\n\n }, {\n key: \"resetConfig\",\n value: function resetConfig() {\n this.$_config = {};\n } // Returns a deep copy of the user config\n\n }, {\n key: \"getConfig\",\n value: function getConfig() {\n return cloneDeep(this.$_config);\n } // Returns a deep copy of the config value\n\n }, {\n key: \"getConfigValue\",\n value: function getConfigValue(key) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n return cloneDeep(getRaw(this.$_config, key, defaultValue));\n }\n }]);\n\n return BvConfig;\n}(); // Method for applying a global config\n\n\nvar setConfig = function setConfig() {\n var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var Vue$1 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Vue;\n // Ensure we have a `$bvConfig` Object on the Vue prototype\n // We set on Vue and OurVue just in case consumer has not set an alias of `vue`\n Vue$1.prototype[PROP_NAME$2] = Vue.prototype[PROP_NAME$2] = Vue$1.prototype[PROP_NAME$2] || Vue.prototype[PROP_NAME$2] || new BvConfig(); // Apply the config values\n\n Vue$1.prototype[PROP_NAME$2].setConfig(config);\n}; // Method for resetting the user config\n\n/**\n * Checks if there are multiple instances of Vue, and warns (once) about possible issues.\n * @param {object} Vue\n */\n\nvar checkMultipleVue = function () {\n var checkMultipleVueWarned = false;\n var MULTIPLE_VUE_WARNING = ['Multiple instances of Vue detected!', 'You may need to set up an alias for Vue in your bundler config.', 'See: https://bootstrap-vue.org/docs#using-module-bundlers'].join('\\n');\n return function (Vue$1) {\n /* istanbul ignore next */\n if (!checkMultipleVueWarned && Vue !== Vue$1 && !IS_JSDOM) {\n warn(MULTIPLE_VUE_WARNING);\n }\n\n checkMultipleVueWarned = true;\n };\n}();\n/**\n * Plugin install factory function.\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\n\nvar installFactory = function installFactory() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n components = _ref.components,\n directives = _ref.directives,\n plugins = _ref.plugins;\n\n var install = function install(Vue) {\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (install.installed) {\n /* istanbul ignore next */\n return;\n }\n\n install.installed = true;\n checkMultipleVue(Vue);\n setConfig(config, Vue);\n registerComponents(Vue, components);\n registerDirectives(Vue, directives);\n registerPlugins(Vue, plugins);\n };\n\n install.installed = false;\n return install;\n};\n/**\n * Plugin install factory function (no plugin config option).\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\n\nvar installFactoryNoConfig = function installFactoryNoConfig() {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n components = _ref2.components,\n directives = _ref2.directives,\n plugins = _ref2.plugins;\n\n var install = function install(Vue) {\n if (install.installed) {\n /* istanbul ignore next */\n return;\n }\n\n install.installed = true;\n checkMultipleVue(Vue);\n registerComponents(Vue, components);\n registerDirectives(Vue, directives);\n registerPlugins(Vue, plugins);\n };\n\n install.installed = false;\n return install;\n};\n/**\n * Plugin object factory function.\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\n\nvar pluginFactory = function pluginFactory() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var extend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _objectSpread2$3(_objectSpread2$3({}, extend), {}, {\n install: installFactory(options)\n });\n};\n/**\n * Plugin object factory function (no config option).\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\n\nvar pluginFactoryNoConfig = function pluginFactoryNoConfig() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var extend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _objectSpread2$3(_objectSpread2$3({}, extend), {}, {\n install: installFactoryNoConfig(options)\n });\n};\n/**\n * Load a group of plugins.\n * @param {object} Vue\n * @param {object} Plugin definitions\n */\n\nvar registerPlugins = function registerPlugins(Vue) {\n var plugins = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n for (var plugin in plugins) {\n if (plugin && plugins[plugin]) {\n Vue.use(plugins[plugin]);\n }\n }\n};\n/**\n * Load a component.\n * @param {object} Vue\n * @param {string} Component name\n * @param {object} Component definition\n */\n\nvar registerComponent = function registerComponent(Vue, name, def) {\n if (Vue && name && def) {\n Vue.component(name, def);\n }\n};\n/**\n * Load a group of components.\n * @param {object} Vue\n * @param {object} Object of component definitions\n */\n\nvar registerComponents = function registerComponents(Vue) {\n var components = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n for (var component in components) {\n registerComponent(Vue, component, components[component]);\n }\n};\n/**\n * Load a directive.\n * @param {object} Vue\n * @param {string} Directive name\n * @param {object} Directive definition\n */\n\nvar registerDirective = function registerDirective(Vue, name, def) {\n if (Vue && name && def) {\n // Ensure that any leading V is removed from the\n // name, as Vue adds it automatically\n Vue.directive(name.replace(/^VB/, 'B'), def);\n }\n};\n/**\n * Load a group of directives.\n * @param {object} Vue\n * @param {object} Object of directive definitions\n */\n\nvar registerDirectives = function registerDirectives(Vue) {\n var directives = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n for (var directive in directives) {\n registerDirective(Vue, directive, directives[directive]);\n }\n};\n\n// Component names\nvar NAME_ALERT = 'BAlert';\nvar NAME_ASPECT = 'BAspect';\nvar NAME_AVATAR = 'BAvatar';\nvar NAME_AVATAR_GROUP = 'BAvatarGroup';\nvar NAME_BADGE = 'BBadge';\nvar NAME_BREADCRUMB = 'BBreadcrumb';\nvar NAME_BREADCRUMB_ITEM = 'BBreadcrumbItem';\nvar NAME_BREADCRUMB_LINK = 'BBreadcrumbLink';\nvar NAME_BUTTON = 'BButton';\nvar NAME_BUTTON_CLOSE = 'BButtonClose';\nvar NAME_BUTTON_GROUP = 'BButtonGroup';\nvar NAME_BUTTON_TOOLBAR = 'BButtonToolbar';\nvar NAME_CALENDAR = 'BCalendar';\nvar NAME_CARD = 'BCard';\nvar NAME_CARD_BODY = 'BCardBody';\nvar NAME_CARD_FOOTER = 'BCardFooter';\nvar NAME_CARD_GROUP = 'BCardGroup';\nvar NAME_CARD_HEADER = 'BCardHeader';\nvar NAME_CARD_IMG = 'BCardImg';\nvar NAME_CARD_IMG_LAZY = 'BCardImgLazy';\nvar NAME_CARD_SUB_TITLE = 'BCardSubTitle';\nvar NAME_CARD_TEXT = 'BCardText';\nvar NAME_CARD_TITLE = 'BCardTitle';\nvar NAME_CAROUSEL = 'BCarousel';\nvar NAME_CAROUSEL_SLIDE = 'BCarouselSlide';\nvar NAME_COL = 'BCol';\nvar NAME_COLLAPSE = 'BCollapse';\nvar NAME_CONTAINER = 'BContainer';\nvar NAME_DROPDOWN = 'BDropdown';\nvar NAME_DROPDOWN_DIVIDER = 'BDropdownDivider';\nvar NAME_DROPDOWN_FORM = 'BDropdownForm';\nvar NAME_DROPDOWN_GROUP = 'BDropdownGroup';\nvar NAME_DROPDOWN_HEADER = 'BDropdownHeader';\nvar NAME_DROPDOWN_ITEM = 'BDropdownItem';\nvar NAME_DROPDOWN_ITEM_BUTTON = 'BDropdownItemButton';\nvar NAME_DROPDOWN_TEXT = 'BDropdownText';\nvar NAME_EMBED = 'BEmbed';\nvar NAME_FORM = 'BForm';\nvar NAME_FORM_CHECKBOX = 'BFormCheckbox';\nvar NAME_FORM_CHECKBOX_GROUP = 'BFormCheckboxGroup';\nvar NAME_FORM_DATALIST = 'BFormDatalist';\nvar NAME_FORM_DATEPICKER = 'BFormDatepicker';\nvar NAME_FORM_FILE = 'BFormFile';\nvar NAME_FORM_GROUP = 'BFormGroup';\nvar NAME_FORM_INPUT = 'BFormInput';\nvar NAME_FORM_INVALID_FEEDBACK = 'BFormInvalidFeedback';\nvar NAME_FORM_RADIO = 'BFormRadio';\nvar NAME_FORM_RADIO_GROUP = 'BFormRadioGroup';\nvar NAME_FORM_RATING = 'BFormRating';\nvar NAME_FORM_ROW = 'BFormRow';\nvar NAME_FORM_SELECT = 'BFormSelect';\nvar NAME_FORM_SELECT_OPTION = 'BFormSelectOption';\nvar NAME_FORM_SELECT_OPTION_GROUP = 'BFormSelectOptionGroup';\nvar NAME_FORM_SPINBUTTON = 'BFormSpinbutton';\nvar NAME_FORM_TAG = 'BFormTag';\nvar NAME_FORM_TAGS = 'BFormTags';\nvar NAME_FORM_TEXT = 'BFormText';\nvar NAME_FORM_TEXTAREA = 'BFormTextarea';\nvar NAME_FORM_TIMEPICKER = 'BFormTimepicker';\nvar NAME_FORM_VALID_FEEDBACK = 'BFormValidFeedback';\nvar NAME_ICON = 'BIcon';\nvar NAME_ICONSTACK = 'BIconstack';\nvar NAME_ICON_BASE = 'BIconBase';\nvar NAME_IMG = 'BImg';\nvar NAME_IMG_LAZY = 'BImgLazy';\nvar NAME_INPUT_GROUP = 'BInputGroup';\nvar NAME_INPUT_GROUP_ADDON = 'BInputGroupAddon';\nvar NAME_INPUT_GROUP_APPEND = 'BInputGroupAppend';\nvar NAME_INPUT_GROUP_PREPEND = 'BInputGroupPrepend';\nvar NAME_INPUT_GROUP_TEXT = 'BInputGroupText';\nvar NAME_JUMBOTRON = 'BJumbotron';\nvar NAME_LINK = 'BLink';\nvar NAME_LIST_GROUP = 'BListGroup';\nvar NAME_LIST_GROUP_ITEM = 'BListGroupItem';\nvar NAME_MEDIA = 'BMedia';\nvar NAME_MEDIA_ASIDE = 'BMediaAside';\nvar NAME_MEDIA_BODY = 'BMediaBody';\nvar NAME_MODAL = 'BModal';\nvar NAME_MSG_BOX = 'BMsgBox';\nvar NAME_NAV = 'BNav';\nvar NAME_NAVBAR = 'BNavbar';\nvar NAME_NAVBAR_BRAND = 'BNavbarBrand';\nvar NAME_NAVBAR_NAV = 'BNavbarNav';\nvar NAME_NAVBAR_TOGGLE = 'BNavbarToggle';\nvar NAME_NAV_FORM = 'BNavForm';\nvar NAME_NAV_ITEM = 'BNavItem';\nvar NAME_NAV_ITEM_DROPDOWN = 'BNavItemDropdown';\nvar NAME_NAV_TEXT = 'BNavText';\nvar NAME_OVERLAY = 'BOverlay';\nvar NAME_PAGINATION = 'BPagination';\nvar NAME_PAGINATION_NAV = 'BPaginationNav';\nvar NAME_POPOVER = 'BPopover';\nvar NAME_PROGRESS = 'BProgress';\nvar NAME_PROGRESS_BAR = 'BProgressBar';\nvar NAME_ROW = 'BRow';\nvar NAME_SIDEBAR = 'BSidebar';\nvar NAME_SKELETON = 'BSkeleton';\nvar NAME_SKELETON_ICON = 'BSkeletonIcon';\nvar NAME_SKELETON_IMG = 'BSkeletonImg';\nvar NAME_SKELETON_TABLE = 'BSkeletonTable';\nvar NAME_SKELETON_WRAPPER = 'BSkeletonWrapper';\nvar NAME_SPINNER = 'BSpinner';\nvar NAME_TAB = 'BTab';\nvar NAME_TABLE = 'BTable';\nvar NAME_TABLE_CELL = 'BTableCell';\nvar NAME_TABLE_LITE = 'BTableLite';\nvar NAME_TABLE_SIMPLE = 'BTableSimple';\nvar NAME_TABS = 'BTabs';\nvar NAME_TBODY = 'BTbody';\nvar NAME_TFOOT = 'BTfoot';\nvar NAME_TH = 'BTh';\nvar NAME_THEAD = 'BThead';\nvar NAME_TIME = 'BTime';\nvar NAME_TOAST = 'BToast';\nvar NAME_TOASTER = 'BToaster';\nvar NAME_TOOLTIP = 'BTooltip';\nvar NAME_TR = 'BTr'; // Helper component names\n\nvar NAME_COLLAPSE_HELPER = 'BVCollapse';\nvar NAME_FORM_BUTTON_LABEL_CONTROL = 'BVFormBtnLabelControl';\nvar NAME_FORM_RATING_STAR = 'BVFormRatingStar';\nvar NAME_POPOVER_HELPER = 'BVPopover';\nvar NAME_POPOVER_TEMPLATE = 'BVPopoverTemplate';\nvar NAME_POPPER = 'BVPopper';\nvar NAME_TAB_BUTTON_HELPER = 'BVTabButton';\nvar NAME_TOAST_POP = 'BVToastPop';\nvar NAME_TOOLTIP_HELPER = 'BVTooltip';\nvar NAME_TOOLTIP_TEMPLATE = 'BVTooltipTemplate';\nvar NAME_TRANSITION = 'BVTransition';\nvar NAME_TRANSPORTER = 'BVTransporter';\nvar NAME_TRANSPORTER_TARGET = 'BVTransporterTarget';\n\nvar EVENT_NAME_ACTIVATE_TAB = 'activate-tab';\nvar EVENT_NAME_BLUR = 'blur';\nvar EVENT_NAME_CANCEL = 'cancel';\nvar EVENT_NAME_CHANGE = 'change';\nvar EVENT_NAME_CHANGED = 'changed';\nvar EVENT_NAME_CLICK = 'click';\nvar EVENT_NAME_CLOSE = 'close';\nvar EVENT_NAME_CONTEXT = 'context';\nvar EVENT_NAME_CONTEXT_CHANGED = 'context-changed';\nvar EVENT_NAME_DESTROYED = 'destroyed';\nvar EVENT_NAME_DISABLE = 'disable';\nvar EVENT_NAME_DISABLED = 'disabled';\nvar EVENT_NAME_DISMISSED = 'dismissed';\nvar EVENT_NAME_DISMISS_COUNT_DOWN = 'dismiss-count-down';\nvar EVENT_NAME_ENABLE = 'enable';\nvar EVENT_NAME_ENABLED = 'enabled';\nvar EVENT_NAME_FILTERED = 'filtered';\nvar EVENT_NAME_FIRST = 'first';\nvar EVENT_NAME_FOCUS = 'focus';\nvar EVENT_NAME_FOCUSIN = 'focusin';\nvar EVENT_NAME_FOCUSOUT = 'focusout';\nvar EVENT_NAME_HEAD_CLICKED = 'head-clicked';\nvar EVENT_NAME_HIDDEN = 'hidden';\nvar EVENT_NAME_HIDE = 'hide';\nvar EVENT_NAME_IMG_ERROR = 'img-error';\nvar EVENT_NAME_INPUT = 'input';\nvar EVENT_NAME_LAST = 'last';\nvar EVENT_NAME_MOUSEENTER = 'mouseenter';\nvar EVENT_NAME_MOUSELEAVE = 'mouseleave';\nvar EVENT_NAME_NEXT = 'next';\nvar EVENT_NAME_OK = 'ok';\nvar EVENT_NAME_OPEN = 'open';\nvar EVENT_NAME_PAGE_CLICK = 'page-click';\nvar EVENT_NAME_PAUSED = 'paused';\nvar EVENT_NAME_PREV = 'prev';\nvar EVENT_NAME_REFRESH = 'refresh';\nvar EVENT_NAME_REFRESHED = 'refreshed';\nvar EVENT_NAME_REMOVE = 'remove';\nvar EVENT_NAME_ROW_CLICKED = 'row-clicked';\nvar EVENT_NAME_ROW_CONTEXTMENU = 'row-contextmenu';\nvar EVENT_NAME_ROW_DBLCLICKED = 'row-dblclicked';\nvar EVENT_NAME_ROW_HOVERED = 'row-hovered';\nvar EVENT_NAME_ROW_MIDDLE_CLICKED = 'row-middle-clicked';\nvar EVENT_NAME_ROW_SELECTED = 'row-selected';\nvar EVENT_NAME_ROW_UNHOVERED = 'row-unhovered';\nvar EVENT_NAME_SELECTED = 'selected';\nvar EVENT_NAME_SHOW = 'show';\nvar EVENT_NAME_SHOWN = 'shown';\nvar EVENT_NAME_SLIDING_END = 'sliding-end';\nvar EVENT_NAME_SLIDING_START = 'sliding-start';\nvar EVENT_NAME_SORT_CHANGED = 'sort-changed';\nvar EVENT_NAME_TAG_STATE = 'tag-state';\nvar EVENT_NAME_TOGGLE = 'toggle';\nvar EVENT_NAME_UNPAUSED = 'unpaused';\nvar EVENT_NAME_UPDATE = 'update';\nvar HOOK_EVENT_NAME_BEFORE_DESTROY = isVue3 ? 'vnodeBeforeUnmount' : 'hook:beforeDestroy';\nvar HOOK_EVENT_NAME_DESTROYED = isVue3 ? 'vNodeUnmounted' : 'hook:destroyed';\nvar MODEL_EVENT_NAME_PREFIX = 'update:';\nvar ROOT_EVENT_NAME_PREFIX = 'bv';\nvar ROOT_EVENT_NAME_SEPARATOR = '::';\nvar EVENT_OPTIONS_PASSIVE = {\n passive: true\n};\nvar EVENT_OPTIONS_NO_CAPTURE = {\n passive: true,\n capture: false\n};\n\n// General types\nvar PROP_TYPE_ANY = undefined;\nvar PROP_TYPE_ARRAY = Array;\nvar PROP_TYPE_BOOLEAN = Boolean;\nvar PROP_TYPE_DATE = Date;\nvar PROP_TYPE_FUNCTION = Function;\nvar PROP_TYPE_NUMBER = Number;\nvar PROP_TYPE_OBJECT = Object;\nvar PROP_TYPE_REG_EXP = RegExp;\nvar PROP_TYPE_STRING = String; // Multiple types\n\nvar PROP_TYPE_ARRAY_FUNCTION = [PROP_TYPE_ARRAY, PROP_TYPE_FUNCTION];\nvar PROP_TYPE_ARRAY_OBJECT = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT];\nvar PROP_TYPE_ARRAY_OBJECT_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT, PROP_TYPE_STRING];\nvar PROP_TYPE_ARRAY_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_STRING];\nvar PROP_TYPE_BOOLEAN_NUMBER = [PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER];\nvar PROP_TYPE_BOOLEAN_NUMBER_STRING = [PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER, PROP_TYPE_STRING];\nvar PROP_TYPE_BOOLEAN_STRING = [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING];\nvar PROP_TYPE_DATE_STRING = [PROP_TYPE_DATE, PROP_TYPE_STRING];\nvar PROP_TYPE_FUNCTION_STRING = [PROP_TYPE_FUNCTION, PROP_TYPE_STRING];\nvar PROP_TYPE_NUMBER_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_STRING];\nvar PROP_TYPE_NUMBER_OBJECT_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_OBJECT, PROP_TYPE_STRING];\nvar PROP_TYPE_OBJECT_FUNCTION = [PROP_TYPE_OBJECT, PROP_TYPE_FUNCTION];\nvar PROP_TYPE_OBJECT_STRING = [PROP_TYPE_OBJECT, PROP_TYPE_STRING];\n\nvar SLOT_NAME_ADD_BUTTON_TEXT = 'add-button-text';\nvar SLOT_NAME_APPEND = 'append';\nvar SLOT_NAME_ASIDE = 'aside';\nvar SLOT_NAME_BADGE = 'badge';\nvar SLOT_NAME_BOTTOM_ROW = 'bottom-row';\nvar SLOT_NAME_BUTTON_CONTENT = 'button-content';\nvar SLOT_NAME_CUSTOM_FOOT = 'custom-foot';\nvar SLOT_NAME_DECREMENT = 'decrement';\nvar SLOT_NAME_DEFAULT = 'default';\nvar SLOT_NAME_DESCRIPTION = 'description';\nvar SLOT_NAME_DISMISS = 'dismiss';\nvar SLOT_NAME_DROP_PLACEHOLDER = 'drop-placeholder';\nvar SLOT_NAME_ELLIPSIS_TEXT = 'ellipsis-text';\nvar SLOT_NAME_EMPTY = 'empty';\nvar SLOT_NAME_EMPTYFILTERED = 'emptyfiltered';\nvar SLOT_NAME_FILE_NAME = 'file-name';\nvar SLOT_NAME_FIRST = 'first';\nvar SLOT_NAME_FIRST_TEXT = 'first-text';\nvar SLOT_NAME_FOOTER = 'footer';\nvar SLOT_NAME_HEADER = 'header';\nvar SLOT_NAME_HEADER_CLOSE = 'header-close';\nvar SLOT_NAME_ICON_CLEAR = 'icon-clear';\nvar SLOT_NAME_ICON_EMPTY = 'icon-empty';\nvar SLOT_NAME_ICON_FULL = 'icon-full';\nvar SLOT_NAME_ICON_HALF = 'icon-half';\nvar SLOT_NAME_IMG = 'img';\nvar SLOT_NAME_INCREMENT = 'increment';\nvar SLOT_NAME_INVALID_FEEDBACK = 'invalid-feedback';\nvar SLOT_NAME_LABEL = 'label';\nvar SLOT_NAME_LAST_TEXT = 'last-text';\nvar SLOT_NAME_LEAD = 'lead';\nvar SLOT_NAME_LOADING = 'loading';\nvar SLOT_NAME_MODAL_BACKDROP = 'modal-backdrop';\nvar SLOT_NAME_MODAL_CANCEL = 'modal-cancel';\nvar SLOT_NAME_MODAL_FOOTER = 'modal-footer';\nvar SLOT_NAME_MODAL_HEADER = 'modal-header';\nvar SLOT_NAME_MODAL_HEADER_CLOSE = 'modal-header-close';\nvar SLOT_NAME_MODAL_OK = 'modal-ok';\nvar SLOT_NAME_MODAL_TITLE = 'modal-title';\nvar SLOT_NAME_NAV_NEXT_DECADE = 'nav-next-decade';\nvar SLOT_NAME_NAV_NEXT_MONTH = 'nav-next-month';\nvar SLOT_NAME_NAV_NEXT_YEAR = 'nav-next-year';\nvar SLOT_NAME_NAV_PEV_DECADE = 'nav-prev-decade';\nvar SLOT_NAME_NAV_PEV_MONTH = 'nav-prev-month';\nvar SLOT_NAME_NAV_PEV_YEAR = 'nav-prev-year';\nvar SLOT_NAME_NAV_THIS_MONTH = 'nav-this-month';\nvar SLOT_NAME_NEXT_TEXT = 'next-text';\nvar SLOT_NAME_OVERLAY = 'overlay';\nvar SLOT_NAME_PAGE = 'page';\nvar SLOT_NAME_PLACEHOLDER = 'placeholder';\nvar SLOT_NAME_PREPEND = 'prepend';\nvar SLOT_NAME_PREV_TEXT = 'prev-text';\nvar SLOT_NAME_ROW_DETAILS = 'row-details';\nvar SLOT_NAME_TABLE_BUSY = 'table-busy';\nvar SLOT_NAME_TABLE_CAPTION = 'table-caption';\nvar SLOT_NAME_TABLE_COLGROUP = 'table-colgroup';\nvar SLOT_NAME_TABS_END = 'tabs-end';\nvar SLOT_NAME_TABS_START = 'tabs-start';\nvar SLOT_NAME_TEXT = 'text';\nvar SLOT_NAME_THEAD_TOP = 'thead-top';\nvar SLOT_NAME_TITLE = 'title';\nvar SLOT_NAME_TOAST_TITLE = 'toast-title';\nvar SLOT_NAME_TOP_ROW = 'top-row';\nvar SLOT_NAME_VALID_FEEDBACK = 'valid-feedback';\n\nvar from = function from() {\n return Array.from.apply(Array, arguments);\n}; // --- Instance ---\n\nvar arrayIncludes = function arrayIncludes(array, value) {\n return array.indexOf(value) !== -1;\n};\nvar concat = function concat() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return Array.prototype.concat.apply([], args);\n}; // --- Utilities ---\n\nvar createArray = function createArray(length, fillFn) {\n var mapFn = isFunction(fillFn) ? fillFn : function () {\n return fillFn;\n };\n return Array.apply(null, {\n length: length\n }).map(mapFn);\n};\nvar flatten = function flatten(array) {\n return array.reduce(function (result, item) {\n return concat(result, item);\n }, []);\n};\nvar flattenDeep = function flattenDeep(array) {\n return array.reduce(function (result, item) {\n return concat(result, Array.isArray(item) ? flattenDeep(item) : item);\n }, []);\n};\n\n// In functional components, `slots` is a function so it must be called\n// first before passing to the below methods. `scopedSlots` is always an\n// object and may be undefined (for Vue < 2.6.x)\n\n/**\n * Returns true if either scoped or unscoped named slot exists\n *\n * @param {String, Array} name or name[]\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\n\nvar hasNormalizedSlot = function hasNormalizedSlot(names) {\n var $scopedSlots = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var $slots = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n // Ensure names is an array\n names = concat(names).filter(identity); // Returns true if the either a $scopedSlot or $slot exists with the specified name\n\n return names.some(function (name) {\n return $scopedSlots[name] || $slots[name];\n });\n};\n/**\n * Returns VNodes for named slot either scoped or unscoped\n *\n * @param {String, Array} name or name[]\n * @param {String} scope\n * @param {Object} scopedSlots\n * @param {Object} slots\n * @returns {Array|undefined} VNodes\n */\n\nvar normalizeSlot = function normalizeSlot(names) {\n var scope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var $scopedSlots = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var $slots = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n // Ensure names is an array\n names = concat(names).filter(identity);\n var slot;\n\n for (var i = 0; i < names.length && !slot; i++) {\n var name = names[i];\n slot = $scopedSlots[name] || $slots[name];\n } // Note: in Vue 2.6.x, all named slots are also scoped slots\n\n\n return isFunction(slot) ? slot(scope) : slot;\n};\n\nvar normalizeSlotMixin = extend({\n methods: {\n // Returns `true` if the either a `$scopedSlot` or `$slot` exists with the specified name\n // `name` can be a string name or an array of names\n hasNormalizedSlot: function hasNormalizedSlot$1() {\n var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : SLOT_NAME_DEFAULT;\n var scopedSlots = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.$scopedSlots;\n var slots = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.$slots;\n return hasNormalizedSlot(name, scopedSlots, slots);\n },\n // Returns an array of rendered VNodes if slot found, otherwise `undefined`\n // `name` can be a string name or an array of names\n normalizeSlot: function normalizeSlot$1() {\n var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : SLOT_NAME_DEFAULT;\n var scope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var scopedSlots = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.$scopedSlots;\n var slots = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : this.$slots;\n\n var vNodes = normalizeSlot(name, scope, scopedSlots, slots);\n\n return vNodes ? concat(vNodes) : vNodes;\n }\n }\n});\n\n// Number utilities\n// Converts a value (string, number, etc.) to an integer number\n// Assumes radix base 10\nvar toInteger = function toInteger(value) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : NaN;\n var integer = parseInt(value, 10);\n return isNaN(integer) ? defaultValue : integer;\n}; // Converts a value (string, number, etc.) to a number\n\nvar toFloat = function toFloat(value) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : NaN;\n var float = parseFloat(value);\n return isNaN(float) ? defaultValue : float;\n}; // Converts a value (string, number, etc.) to a string\n// representation with `precision` digits after the decimal\n// Returns the string 'NaN' if the value cannot be converted\n\nvar toFixed = function toFixed(val, precision) {\n return toFloat(val).toFixed(toInteger(precision, 0));\n};\n\n// String utilities\n// Converts PascalCase or camelCase to kebab-case\n\nvar kebabCase = function kebabCase(str) {\n return str.replace(RX_HYPHENATE, '-$1').toLowerCase();\n}; // Converts a kebab-case or camelCase string to PascalCase\n\nvar pascalCase = function pascalCase(str) {\n str = kebabCase(str).replace(RX_UN_KEBAB, function (_, c) {\n return c ? c.toUpperCase() : '';\n });\n return str.charAt(0).toUpperCase() + str.slice(1);\n}; // Converts a string, including strings in camelCase or snake_case, into Start Case\n// It keeps original single quote and hyphen in the word\n// https://github.com/UrbanCompass/to-start-case\n\nvar startCase = function startCase(str) {\n return str.replace(RX_UNDERSCORE, ' ').replace(RX_LOWER_UPPER, function (str, $1, $2) {\n return $1 + ' ' + $2;\n }).replace(RX_START_SPACE_WORD, function (str, $1, $2) {\n return $1 + $2.toUpperCase();\n });\n}; // Lowercases the first letter of a string and returns a new string\n\nvar lowerFirst = function lowerFirst(str) {\n str = isString(str) ? str.trim() : String(str);\n return str.charAt(0).toLowerCase() + str.slice(1);\n}; // Uppercases the first letter of a string and returns a new string\n\nvar upperFirst = function upperFirst(str) {\n str = isString(str) ? str.trim() : String(str);\n return str.charAt(0).toUpperCase() + str.slice(1);\n}; // Escape characters to be used in building a regular expression\n\nvar escapeRegExp = function escapeRegExp(str) {\n return str.replace(RX_REGEXP_REPLACE, '\\\\$&');\n}; // Convert a value to a string that can be rendered\n// `undefined`/`null` will be converted to `''`\n// Plain objects and arrays will be JSON stringified\n\nvar toString = function toString(val) {\n var spaces = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n return isUndefinedOrNull(val) ? '' : isArray(val) || isPlainObject(val) && val.toString === Object.prototype.toString ? JSON.stringify(val, null, spaces) : String(val);\n}; // Remove leading white space from a string\n\nvar trimLeft = function trimLeft(str) {\n return toString(str).replace(RX_TRIM_LEFT, '');\n}; // Remove Trailing white space from a string\n\nvar trim = function trim(str) {\n return toString(str).trim();\n}; // Lower case a string\n\nvar lowerCase = function lowerCase(str) {\n return toString(str).toLowerCase();\n}; // Upper case a string\n\nvar ELEMENT_PROTO = Element.prototype;\nvar TABABLE_SELECTOR = ['button', '[href]:not(.disabled)', 'input', 'select', 'textarea', '[tabindex]', '[contenteditable]'].map(function (s) {\n return \"\".concat(s, \":not(:disabled):not([disabled])\");\n}).join(', '); // --- Normalization utils ---\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n\n/* istanbul ignore next */\n\nvar matchesEl = ELEMENT_PROTO.matches || ELEMENT_PROTO.msMatchesSelector || ELEMENT_PROTO.webkitMatchesSelector; // See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n\n/* istanbul ignore next */\n\nvar closestEl = ELEMENT_PROTO.closest || function (sel) {\n var el = this;\n\n do {\n // Use our \"patched\" matches function\n if (matches(el, sel)) {\n return el;\n }\n\n el = el.parentElement || el.parentNode;\n } while (!isNull(el) && el.nodeType === Node.ELEMENT_NODE);\n\n return null;\n}; // `requestAnimationFrame()` convenience method\n\n/* istanbul ignore next: JSDOM always returns the first option */\n\nvar requestAF = (WINDOW.requestAnimationFrame || WINDOW.webkitRequestAnimationFrame || WINDOW.mozRequestAnimationFrame || WINDOW.msRequestAnimationFrame || WINDOW.oRequestAnimationFrame || // Fallback, but not a true polyfill\n// Only needed for Opera Mini\n\n/* istanbul ignore next */\nfunction (cb) {\n return setTimeout(cb, 16);\n}).bind(WINDOW);\nvar MutationObs = WINDOW.MutationObserver || WINDOW.WebKitMutationObserver || WINDOW.MozMutationObserver || null; // --- Utils ---\n// Remove a node from DOM\n\nvar removeNode = function removeNode(el) {\n return el && el.parentNode && el.parentNode.removeChild(el);\n}; // Determine if an element is an HTML element\n\nvar isElement = function isElement(el) {\n return !!(el && el.nodeType === Node.ELEMENT_NODE);\n}; // Get the currently active HTML element\n\nvar getActiveElement = function getActiveElement() {\n var excludes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var activeElement = DOCUMENT.activeElement;\n return activeElement && !excludes.some(function (el) {\n return el === activeElement;\n }) ? activeElement : null;\n}; // Returns `true` if a tag's name equals `name`\n\nvar isTag = function isTag(tag, name) {\n return toString(tag).toLowerCase() === toString(name).toLowerCase();\n}; // Determine if an HTML element is the currently active element\n\nvar isActiveElement = function isActiveElement(el) {\n return isElement(el) && el === getActiveElement();\n}; // Determine if an HTML element is visible - Faster than CSS check\n\nvar isVisible = function isVisible(el) {\n if (!isElement(el) || !el.parentNode || !contains(DOCUMENT.body, el)) {\n // Note this can fail for shadow dom elements since they\n // are not a direct descendant of document.body\n return false;\n }\n\n if (getStyle(el, 'display') === 'none') {\n // We do this check to help with vue-test-utils when using v-show\n\n /* istanbul ignore next */\n return false;\n } // All browsers support getBoundingClientRect(), except JSDOM as it returns all 0's for values :(\n // So any tests that need isVisible will fail in JSDOM\n // Except when we override the getBCR prototype in some tests\n\n\n var bcr = getBCR(el);\n return !!(bcr && bcr.height > 0 && bcr.width > 0);\n}; // Determine if an element is disabled\n\nvar isDisabled = function isDisabled(el) {\n return !isElement(el) || el.disabled || hasAttr(el, 'disabled') || hasClass(el, 'disabled');\n}; // Cause/wait-for an element to reflow its content (adjusting its height/width)\n\nvar reflow = function reflow(el) {\n // Requesting an elements offsetHight will trigger a reflow of the element content\n\n /* istanbul ignore next: reflow doesn't happen in JSDOM */\n return isElement(el) && el.offsetHeight;\n}; // Select all elements matching selector. Returns `[]` if none found\n\nvar selectAll = function selectAll(selector, root) {\n return from((isElement(root) ? root : DOCUMENT).querySelectorAll(selector));\n}; // Select a single element, returns `null` if not found\n\nvar select = function select(selector, root) {\n return (isElement(root) ? root : DOCUMENT).querySelector(selector) || null;\n}; // Determine if an element matches a selector\n\nvar matches = function matches(el, selector) {\n return isElement(el) ? matchesEl.call(el, selector) : false;\n}; // Finds closest element matching selector. Returns `null` if not found\n\nvar closest = function closest(selector, root) {\n var includeRoot = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n if (!isElement(root)) {\n return null;\n }\n\n var el = closestEl.call(root, selector); // Native closest behaviour when `includeRoot` is truthy,\n // else emulate jQuery closest and return `null` if match is\n // the passed in root element when `includeRoot` is falsey\n\n return includeRoot ? el : el === root ? null : el;\n}; // Returns true if the parent element contains the child element\n\nvar contains = function contains(parent, child) {\n return parent && isFunction(parent.contains) ? parent.contains(child) : false;\n}; // Get an element given an ID\n\nvar getById = function getById(id) {\n return DOCUMENT.getElementById(/^#/.test(id) ? id.slice(1) : id) || null;\n}; // Add a class to an element\n\nvar addClass = function addClass(el, className) {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.add(className);\n }\n}; // Remove a class from an element\n\nvar removeClass = function removeClass(el, className) {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n el.classList.remove(className);\n }\n}; // Test if an element has a class\n\nvar hasClass = function hasClass(el, className) {\n // We are checking for `el.classList` existence here since IE 11\n // returns `undefined` for some elements (e.g. SVG elements)\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/2713\n if (className && isElement(el) && el.classList) {\n return el.classList.contains(className);\n }\n\n return false;\n}; // Set an attribute on an element\n\nvar setAttr = function setAttr(el, attr, value) {\n if (attr && isElement(el)) {\n el.setAttribute(attr, value);\n }\n}; // Remove an attribute from an element\n\nvar removeAttr = function removeAttr(el, attr) {\n if (attr && isElement(el)) {\n el.removeAttribute(attr);\n }\n}; // Get an attribute value from an element\n// Returns `null` if not found\n\nvar getAttr = function getAttr(el, attr) {\n return attr && isElement(el) ? el.getAttribute(attr) : null;\n}; // Determine if an attribute exists on an element\n// Returns `true` or `false`, or `null` if element not found\n\nvar hasAttr = function hasAttr(el, attr) {\n return attr && isElement(el) ? el.hasAttribute(attr) : null;\n}; // Set an style property on an element\n\nvar setStyle = function setStyle(el, prop, value) {\n if (prop && isElement(el)) {\n el.style[prop] = value;\n }\n}; // Remove an style property from an element\n\nvar removeStyle = function removeStyle(el, prop) {\n if (prop && isElement(el)) {\n el.style[prop] = '';\n }\n}; // Get an style property value from an element\n// Returns `null` if not found\n\nvar getStyle = function getStyle(el, prop) {\n return prop && isElement(el) ? el.style[prop] || null : null;\n}; // Return the Bounding Client Rect of an element\n// Returns `null` if not an element\n\n/* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */\n\nvar getBCR = function getBCR(el) {\n return isElement(el) ? el.getBoundingClientRect() : null;\n}; // Get computed style object for an element\n\n/* istanbul ignore next: getComputedStyle() doesn't work in JSDOM */\n\nvar getCS = function getCS(el) {\n var getComputedStyle = WINDOW.getComputedStyle;\n return getComputedStyle && isElement(el) ? getComputedStyle(el) : {};\n}; // Returns a `Selection` object representing the range of text selected\n// Returns `null` if no window support is given\n\n/* istanbul ignore next: getSelection() doesn't work in JSDOM */\n\nvar getSel = function getSel() {\n var getSelection = WINDOW.getSelection;\n return getSelection ? WINDOW.getSelection() : null;\n}; // Return an element's offset with respect to document element\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.offset\n\nvar offset = function offset(el)\n/* istanbul ignore next: getBoundingClientRect(), getClientRects() doesn't work in JSDOM */\n{\n var _offset = {\n top: 0,\n left: 0\n };\n\n if (!isElement(el) || el.getClientRects().length === 0) {\n return _offset;\n }\n\n var bcr = getBCR(el);\n\n if (bcr) {\n var win = el.ownerDocument.defaultView;\n _offset.top = bcr.top + win.pageYOffset;\n _offset.left = bcr.left + win.pageXOffset;\n }\n\n return _offset;\n}; // Return an element's offset with respect to to its offsetParent\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.position\n\nvar position = function position(el)\n/* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */\n{\n var _offset = {\n top: 0,\n left: 0\n };\n\n if (!isElement(el)) {\n return _offset;\n }\n\n var parentOffset = {\n top: 0,\n left: 0\n };\n var elStyles = getCS(el);\n\n if (elStyles.position === 'fixed') {\n _offset = getBCR(el) || _offset;\n } else {\n _offset = offset(el);\n var doc = el.ownerDocument;\n var offsetParent = el.offsetParent || doc.documentElement;\n\n while (offsetParent && (offsetParent === doc.body || offsetParent === doc.documentElement) && getCS(offsetParent).position === 'static') {\n offsetParent = offsetParent.parentNode;\n }\n\n if (offsetParent && offsetParent !== el && offsetParent.nodeType === Node.ELEMENT_NODE) {\n parentOffset = offset(offsetParent);\n var offsetParentStyles = getCS(offsetParent);\n parentOffset.top += toFloat(offsetParentStyles.borderTopWidth, 0);\n parentOffset.left += toFloat(offsetParentStyles.borderLeftWidth, 0);\n }\n }\n\n return {\n top: _offset.top - parentOffset.top - toFloat(elStyles.marginTop, 0),\n left: _offset.left - parentOffset.left - toFloat(elStyles.marginLeft, 0)\n };\n}; // Find all tabable elements in the given element\n// Assumes users have not used `tabindex` > `0` on elements\n\nvar getTabables = function getTabables() {\n var rootEl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;\n return selectAll(TABABLE_SELECTOR, rootEl).filter(isVisible).filter(function (el) {\n return el.tabIndex > -1 && !el.disabled;\n });\n}; // Attempt to focus an element, and return `true` if successful\n\nvar attemptFocus = function attemptFocus(el) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n try {\n el.focus(options);\n } catch (_unused) {}\n\n return isActiveElement(el);\n}; // Attempt to blur an element, and return `true` if successful\n\nvar attemptBlur = function attemptBlur(el) {\n try {\n el.blur();\n } catch (_unused2) {}\n\n return !isActiveElement(el);\n};\n\nvar memoize = function memoize(fn) {\n var cache = create(null);\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var argsKey = JSON.stringify(args);\n return cache[argsKey] = cache[argsKey] || fn.apply(null, args);\n };\n};\n\nvar VueProto = Vue.prototype; // --- Getter methods ---\n\nvar getConfigValue = function getConfigValue(key) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n var bvConfig = VueProto[PROP_NAME$2];\n return bvConfig ? bvConfig.getConfigValue(key, defaultValue) : cloneDeep(defaultValue);\n}; // Method to grab a config value for a particular component\n\nvar getComponentConfig = function getComponentConfig(key) {\n var propKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var defaultValue = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n // Return the particular config value for key if specified,\n // otherwise we return the full config (or an empty object if not found)\n return propKey ? getConfigValue(\"\".concat(key, \".\").concat(propKey), defaultValue) : getConfigValue(key, {});\n}; // Get all breakpoint names\n\nvar getBreakpoints = function getBreakpoints() {\n return getConfigValue('breakpoints', DEFAULT_BREAKPOINT);\n}; // Private method for caching breakpoint names\n\nvar _getBreakpointsCached = memoize(function () {\n return getBreakpoints();\n}); // Get all breakpoint names (cached)\n\n\nvar getBreakpointsCached = function getBreakpointsCached() {\n return cloneDeep(_getBreakpointsCached());\n}; // Get breakpoints with the smallest breakpoint set as ''\n// Useful for components that create breakpoint specific props\n\nvar getBreakpointsUpCached = memoize(function () {\n var breakpoints = getBreakpointsCached();\n breakpoints[0] = '';\n return breakpoints;\n}); // Get breakpoints with the largest breakpoint set as ''\n\nvar prefixPropName = function prefixPropName(prefix, value) {\n return prefix + upperFirst(value);\n}; // Remove a prefix from a property\n\nvar unprefixPropName = function unprefixPropName(prefix, value) {\n return lowerFirst(value.replace(prefix, ''));\n}; // Suffix can be a falsey value so nothing is appended to string\n// (helps when looping over props & some shouldn't change)\n// Use data last parameters to allow for currying\n\nvar suffixPropName = function suffixPropName(suffix, value) {\n return value + (suffix ? upperFirst(suffix) : '');\n}; // Generates a prop object\n\nvar makeProp = function makeProp() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : PROP_TYPE_ANY;\n var value = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n var requiredOrValidator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;\n var validator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;\n var required = requiredOrValidator === true;\n validator = required ? validator : requiredOrValidator;\n return _objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, type ? {\n type: type\n } : {}), required ? {\n required: required\n } : isUndefined(value) ? {} : {\n default: isObject(value) ? function () {\n return value;\n } : value\n }), isUndefined(validator) ? {} : {\n validator: validator\n });\n}; // Copies props from one array/object to a new array/object\n// Prop values are also cloned as new references to prevent possible\n// mutation of original prop object values\n// Optionally accepts a function to transform the prop name\n\nvar copyProps = function copyProps(props) {\n var transformFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : identity;\n\n if (isArray(props)) {\n return props.map(transformFn);\n }\n\n var copied = {};\n\n for (var prop in props) {\n /* istanbul ignore else */\n if (hasOwnProperty(props, prop)) {\n // If the prop value is an object, do a shallow clone\n // to prevent potential mutations to the original object\n copied[transformFn(prop)] = isObject(props[prop]) ? clone(props[prop]) : props[prop];\n }\n }\n\n return copied;\n}; // Given an array of properties or an object of property keys,\n// plucks all the values off the target object, returning a new object\n// that has props that reference the original prop values\n\nvar pluckProps = function pluckProps(keysToPluck, objToPluck) {\n var transformFn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : identity;\n return (isArray(keysToPluck) ? keysToPluck.slice() : keys(keysToPluck)).reduce(function (memo, prop) {\n memo[transformFn(prop)] = objToPluck[prop];\n return memo;\n }, {});\n}; // Make a prop object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\n\nvar makePropConfigurable = function makePropConfigurable(prop, key, componentKey) {\n return _objectSpread2$3(_objectSpread2$3({}, cloneDeep(prop)), {}, {\n default: function bvConfigurablePropDefault() {\n var value = getComponentConfig(componentKey, key, prop.default);\n return isFunction(value) ? value() : value;\n }\n });\n}; // Make a props object configurable by global configuration\n// Replaces the current `default` key of each prop with a `getComponentConfig()`\n// call that falls back to the current default value of the prop\n\nvar makePropsConfigurable = function makePropsConfigurable(props, componentKey) {\n return keys(props).reduce(function (result, key) {\n return _objectSpread2$3(_objectSpread2$3({}, result), {}, _defineProperty({}, key, makePropConfigurable(props[key], key, componentKey)));\n }, {});\n}; // Get function name we use in `makePropConfigurable()`\n// for the prop default value override to compare\n// against in `hasPropFunction()`\n\nvar configurablePropDefaultFnName = makePropConfigurable({}, '', '').default.name; // Detect wether the given value is currently a function\n// and isn't the props default function\n\nvar hasPropFunction = function hasPropFunction(fn) {\n return isFunction(fn) && fn.name && fn.name !== configurablePropDefaultFnName;\n};\n\nvar makeModelMixin = function makeModelMixin(prop) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$type = _ref.type,\n type = _ref$type === void 0 ? PROP_TYPE_ANY : _ref$type,\n _ref$defaultValue = _ref.defaultValue,\n defaultValue = _ref$defaultValue === void 0 ? undefined : _ref$defaultValue,\n _ref$validator = _ref.validator,\n validator = _ref$validator === void 0 ? undefined : _ref$validator,\n _ref$event = _ref.event,\n event = _ref$event === void 0 ? EVENT_NAME_INPUT : _ref$event;\n\n var props = _defineProperty({}, prop, makeProp(type, defaultValue, validator)); // @vue/component\n\n\n var mixin = extend({\n model: {\n prop: prop,\n event: event\n },\n props: props\n });\n return {\n mixin: mixin,\n props: props,\n prop: prop,\n event: event\n };\n};\n\n// Normalize event options based on support of passive option\n// Exported only for testing purposes\n\nvar parseEventOptions = function parseEventOptions(options) {\n /* istanbul ignore else: can't test in JSDOM, as it supports passive */\n if (HAS_PASSIVE_EVENT_SUPPORT) {\n return isObject(options) ? options : {\n capture: !!options || false\n };\n } else {\n // Need to translate to actual Boolean value\n return !!(isObject(options) ? options.capture : options);\n }\n}; // Attach an event listener to an element\n\nvar eventOn = function eventOn(el, eventName, handler, options) {\n if (el && el.addEventListener) {\n el.addEventListener(eventName, handler, parseEventOptions(options));\n }\n}; // Remove an event listener from an element\n\nvar eventOff = function eventOff(el, eventName, handler, options) {\n if (el && el.removeEventListener) {\n el.removeEventListener(eventName, handler, parseEventOptions(options));\n }\n}; // Utility method to add/remove a event listener based on first argument (boolean)\n// It passes all other arguments to the `eventOn()` or `eventOff` method\n\nvar eventOnOff = function eventOnOff(on) {\n var method = on ? eventOn : eventOff;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n method.apply(void 0, args);\n}; // Utility method to prevent the default event handling and propagation\n\nvar stopEvent = function stopEvent(event) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$preventDefault = _ref.preventDefault,\n preventDefault = _ref$preventDefault === void 0 ? true : _ref$preventDefault,\n _ref$propagation = _ref.propagation,\n propagation = _ref$propagation === void 0 ? true : _ref$propagation,\n _ref$immediatePropaga = _ref.immediatePropagation,\n immediatePropagation = _ref$immediatePropaga === void 0 ? false : _ref$immediatePropaga;\n\n if (preventDefault) {\n event.preventDefault();\n }\n\n if (propagation) {\n event.stopPropagation();\n }\n\n if (immediatePropagation) {\n event.stopImmediatePropagation();\n }\n}; // Helper method to convert a component/directive name to a base event name\n// `getBaseEventName('BNavigationItem')` => 'navigation-item'\n// `getBaseEventName('BVToggle')` => 'toggle'\n\nvar getBaseEventName = function getBaseEventName(value) {\n return kebabCase(value.replace(RX_BV_PREFIX, ''));\n}; // Get a root event name by component/directive and event name\n// `getBaseEventName('BModal', 'show')` => 'bv::modal::show'\n\n\nvar getRootEventName = function getRootEventName(name, eventName) {\n return [ROOT_EVENT_NAME_PREFIX, getBaseEventName(name), eventName].join(ROOT_EVENT_NAME_SEPARATOR);\n}; // Get a root action event name by component/directive and action name\n// `getRootActionEventName('BModal', 'show')` => 'bv::show::modal'\n\nvar getRootActionEventName = function getRootActionEventName(name, actionName) {\n return [ROOT_EVENT_NAME_PREFIX, actionName, getBaseEventName(name)].join(ROOT_EVENT_NAME_SEPARATOR);\n};\n\nvar props$2m = makePropsConfigurable({\n ariaLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n content: makeProp(PROP_TYPE_STRING, '×'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n textVariant: makeProp(PROP_TYPE_STRING)\n}, NAME_BUTTON_CLOSE); // --- Main component ---\n// @vue/component\n\nvar BButtonClose = /*#__PURE__*/extend({\n name: NAME_BUTTON_CLOSE,\n functional: true,\n props: props$2m,\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 $slots = slots();\n var $scopedSlots = scopedSlots || {};\n var componentData = {\n staticClass: 'close',\n class: _defineProperty({}, \"text-\".concat(props.textVariant), props.textVariant),\n attrs: {\n type: 'button',\n disabled: props.disabled,\n 'aria-label': props.ariaLabel ? String(props.ariaLabel) : null\n },\n on: {\n click: function click(event) {\n // Ensure click on button HTML content is also disabled\n\n /* istanbul ignore if: bug in JSDOM still emits click on inner element */\n if (props.disabled && isEvent(event)) {\n stopEvent(event);\n }\n }\n }\n }; // Careful not to override the default slot with innerHTML\n\n if (!hasNormalizedSlot(SLOT_NAME_DEFAULT, $scopedSlots, $slots)) {\n componentData.domProps = {\n innerHTML: props.content\n };\n }\n\n return h('button', mergeData(data, componentData), normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots));\n }\n});\n\nvar NO_FADE_PROPS = {\n name: '',\n enterClass: '',\n enterActiveClass: '',\n enterToClass: 'show',\n leaveClass: 'show',\n leaveActiveClass: '',\n leaveToClass: ''\n};\n\nvar FADE_PROPS = _objectSpread2$3(_objectSpread2$3({}, NO_FADE_PROPS), {}, {\n enterActiveClass: 'fade',\n leaveActiveClass: 'fade'\n}); // --- Props ---\n\n\nvar props$2l = {\n // Has no effect if `trans-props` provided\n appear: makeProp(PROP_TYPE_BOOLEAN, false),\n // Can be overridden by user supplied `trans-props`\n mode: makeProp(PROP_TYPE_STRING),\n // Only applicable to the built in transition\n // Has no effect if `trans-props` provided\n noFade: makeProp(PROP_TYPE_BOOLEAN, false),\n // For user supplied transitions (if needed)\n transProps: makeProp(PROP_TYPE_OBJECT)\n}; // --- Main component ---\n// @vue/component\n\nvar BVTransition = /*#__PURE__*/extend({\n name: NAME_TRANSITION,\n functional: true,\n props: props$2l,\n render: function render(h, _ref) {\n var children = _ref.children,\n data = _ref.data,\n props = _ref.props;\n var transProps = props.transProps;\n\n if (!isPlainObject(transProps)) {\n transProps = props.noFade ? NO_FADE_PROPS : FADE_PROPS;\n\n if (props.appear) {\n // Default the appear classes to equal the enter classes\n transProps = _objectSpread2$3(_objectSpread2$3({}, transProps), {}, {\n appear: true,\n appearClass: transProps.enterClass,\n appearActiveClass: transProps.enterActiveClass,\n appearToClass: transProps.enterToClass\n });\n }\n }\n\n transProps = _objectSpread2$3(_objectSpread2$3({\n mode: props.mode\n }, transProps), {}, {\n // We always need `css` true\n css: true\n });\n\n var dataCopy = _objectSpread2$3({}, data);\n\n delete dataCopy.props;\n return h('transition', // Any transition event listeners will get merged here\n mergeData(dataCopy, {\n props: transProps\n }), children);\n }\n});\n\nvar _watch$k;\n\nvar _makeModelMixin$k = makeModelMixin('show', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: false\n}),\n modelMixin$j = _makeModelMixin$k.mixin,\n modelProps$j = _makeModelMixin$k.props,\n MODEL_PROP_NAME$j = _makeModelMixin$k.prop,\n MODEL_EVENT_NAME$j = _makeModelMixin$k.event; // --- Helper methods ---\n// Convert `show` value to a number\n\n\nvar parseCountDown = function parseCountDown(show) {\n if (show === '' || isBoolean(show)) {\n return 0;\n }\n\n show = toInteger(show, 0);\n return show > 0 ? show : 0;\n}; // Convert `show` value to a boolean\n\n\nvar parseShow = function parseShow(show) {\n if (show === '' || show === true) {\n return true;\n }\n\n if (toInteger(show, 0) < 1) {\n // Boolean will always return false for the above comparison\n return false;\n }\n\n return !!show;\n}; // --- Props ---\n\n\nvar props$2k = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, modelProps$j), {}, {\n dismissLabel: makeProp(PROP_TYPE_STRING, 'Close'),\n dismissible: makeProp(PROP_TYPE_BOOLEAN, false),\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING, 'info')\n})), NAME_ALERT); // --- Main component ---\n// @vue/component\n\nvar BAlert = /*#__PURE__*/extend({\n name: NAME_ALERT,\n mixins: [modelMixin$j, normalizeSlotMixin],\n props: props$2k,\n data: function data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this[MODEL_PROP_NAME$j])\n };\n },\n watch: (_watch$k = {}, _defineProperty(_watch$k, MODEL_PROP_NAME$j, function (newValue) {\n this.countDown = parseCountDown(newValue);\n this.localShow = parseShow(newValue);\n }), _defineProperty(_watch$k, \"countDown\", function countDown(newValue) {\n var _this = this;\n\n this.clearCountDownInterval();\n var show = this[MODEL_PROP_NAME$j]; // Ignore if `show` transitions to a boolean value\n\n if (isNumeric(show)) {\n this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue); // Update the v-model if needed\n\n if (show !== newValue) {\n this.$emit(MODEL_EVENT_NAME$j, newValue);\n }\n\n if (newValue > 0) {\n this.localShow = true;\n this.$_countDownTimeout = setTimeout(function () {\n _this.countDown--;\n }, 1000);\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(function () {\n requestAF(function () {\n _this.localShow = false;\n });\n });\n }\n }\n }), _defineProperty(_watch$k, \"localShow\", function localShow(newValue) {\n var show = this[MODEL_PROP_NAME$j]; // Only emit dismissed events for dismissible or auto-dismissing alerts\n\n if (!newValue && (this.dismissible || isNumeric(show))) {\n this.$emit(EVENT_NAME_DISMISSED);\n } // Only emit booleans if we weren't passed a number via v-model\n\n\n if (!isNumeric(show) && show !== newValue) {\n this.$emit(MODEL_EVENT_NAME$j, newValue);\n }\n }), _watch$k),\n created: function created() {\n // Create private non-reactive props\n this.$_filterTimer = null;\n var show = this[MODEL_PROP_NAME$j];\n this.countDown = parseCountDown(show);\n this.localShow = parseShow(show);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearCountDownInterval();\n },\n methods: {\n dismiss: function dismiss() {\n this.clearCountDownInterval();\n this.countDown = 0;\n this.localShow = false;\n },\n clearCountDownInterval: function clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout);\n this.$_countDownTimeout = null;\n }\n },\n render: function render(h) {\n var $alert = h();\n\n if (this.localShow) {\n var dismissible = this.dismissible,\n variant = this.variant;\n var $dismissButton = h();\n\n if (dismissible) {\n // Add dismiss button\n $dismissButton = h(BButtonClose, {\n attrs: {\n 'aria-label': this.dismissLabel\n },\n on: {\n click: this.dismiss\n }\n }, [this.normalizeSlot(SLOT_NAME_DISMISS)]);\n }\n\n $alert = h('div', {\n staticClass: 'alert',\n class: _defineProperty({\n 'alert-dismissible': dismissible\n }, \"alert-\".concat(variant), variant),\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-atomic': true\n },\n key: this[COMPONENT_UID_KEY]\n }, [$dismissButton, this.normalizeSlot()]);\n }\n\n return h(BVTransition, {\n props: {\n noFade: !this.fade\n }\n }, [$alert]);\n }\n});\n\nvar AlertPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BAlert: BAlert\n }\n});\n\n// Math utilty functions\nvar mathMin = Math.min;\nvar mathMax = Math.max;\nvar mathAbs = Math.abs;\nvar mathCeil = Math.ceil;\nvar mathFloor = Math.floor;\nvar mathPow = Math.pow;\nvar mathRound = Math.round;\n\nvar CLASS_NAME$3 = 'b-aspect'; // --- Props ---\n\nvar props$2j = makePropsConfigurable({\n // Accepts a number (i.e. `16 / 9`, `1`, `4 / 3`)\n // Or a string (i.e. '16/9', '16:9', '4:3' '1:1')\n aspect: makeProp(PROP_TYPE_NUMBER_STRING, '1:1'),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_ASPECT); // --- Main component ---\n// @vue/component\n\nvar BAspect = /*#__PURE__*/extend({\n name: NAME_ASPECT,\n mixins: [normalizeSlotMixin],\n props: props$2j,\n computed: {\n padding: function padding() {\n var aspect = this.aspect;\n var ratio = 1;\n\n if (RX_ASPECT.test(aspect)) {\n // Width and/or Height can be a decimal value below `1`, so\n // we only fallback to `1` if the value is `0` or `NaN`\n var _aspect$split$map = aspect.split(RX_ASPECT_SEPARATOR).map(function (v) {\n return toFloat(v) || 1;\n }),\n _aspect$split$map2 = _slicedToArray(_aspect$split$map, 2),\n width = _aspect$split$map2[0],\n height = _aspect$split$map2[1];\n\n ratio = width / height;\n } else {\n ratio = toFloat(aspect) || 1;\n }\n\n return \"\".concat(100 / mathAbs(ratio), \"%\");\n }\n },\n render: function render(h) {\n var $sizer = h('div', {\n staticClass: \"\".concat(CLASS_NAME$3, \"-sizer flex-grow-1\"),\n style: {\n paddingBottom: this.padding,\n height: 0\n }\n });\n var $content = h('div', {\n staticClass: \"\".concat(CLASS_NAME$3, \"-content flex-grow-1 w-100 mw-100\"),\n style: {\n marginLeft: '-100%'\n }\n }, this.normalizeSlot());\n return h(this.tag, {\n staticClass: \"\".concat(CLASS_NAME$3, \" d-flex\")\n }, [$sizer, $content]);\n }\n});\n\nvar AspectPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BAspect: BAspect\n }\n});\n\nfunction safeVueInstance(target) {\n if (!isVue3) {\n return target;\n }\n\n return new Proxy(target, {\n get: function get(target, prop) {\n return prop in target ? target[prop] : undefined;\n }\n });\n}\n\nvar ANCHOR_TAG = 'a'; // Method to replace reserved chars\n\nvar encodeReserveReplacer = function encodeReserveReplacer(c) {\n return '%' + c.charCodeAt(0).toString(16);\n}; // Fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\n\n\nvar encode = function encode(str) {\n return encodeURIComponent(toString(str)).replace(RX_ENCODE_REVERSE, encodeReserveReplacer).replace(RX_ENCODED_COMMA, ',');\n};\n\nvar decode = decodeURIComponent; // Stringifies an object of query parameters\n// See: https://github.com/vuejs/vue-router/blob/dev/src/util/query.js\n\nvar stringifyQueryObj = function stringifyQueryObj(obj) {\n if (!isPlainObject(obj)) {\n return '';\n }\n\n var query = keys(obj).map(function (key) {\n var value = obj[key];\n\n if (isUndefined(value)) {\n return '';\n } else if (isNull(value)) {\n return encode(key);\n } else if (isArray(value)) {\n return value.reduce(function (results, value2) {\n if (isNull(value2)) {\n results.push(encode(key));\n } else if (!isUndefined(value2)) {\n // Faster than string interpolation\n results.push(encode(key) + '=' + encode(value2));\n }\n\n return results;\n }, []).join('&');\n } // Faster than string interpolation\n\n\n return encode(key) + '=' + encode(value);\n })\n /* must check for length, as we only want to filter empty strings, not things that look falsey! */\n .filter(function (x) {\n return x.length > 0;\n }).join('&');\n return query ? \"?\".concat(query) : '';\n};\nvar parseQuery = function parseQuery(query) {\n var parsed = {};\n query = toString(query).trim().replace(RX_QUERY_START, '');\n\n if (!query) {\n return parsed;\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(RX_PLUS, ' ').split('=');\n var key = decode(parts.shift());\n var value = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (isUndefined(parsed[key])) {\n parsed[key] = value;\n } else if (isArray(parsed[key])) {\n parsed[key].push(value);\n } else {\n parsed[key] = [parsed[key], value];\n }\n });\n return parsed;\n};\nvar isLink$1 = function isLink(props) {\n return !!(props.href || props.to);\n};\nvar isRouterLink = function isRouterLink(tag) {\n return !!(tag && !isTag(tag, 'a'));\n};\nvar computeTag = function computeTag(_ref, thisOrParent) {\n var to = _ref.to,\n disabled = _ref.disabled,\n routerComponentName = _ref.routerComponentName;\n var hasRouter = !!safeVueInstance(thisOrParent).$router;\n var hasNuxt = !!safeVueInstance(thisOrParent).$nuxt;\n\n if (!hasRouter || hasRouter && (disabled || !to)) {\n return ANCHOR_TAG;\n } // TODO:\n // Check registered components for existence of user supplied router link component name\n // We would need to check PascalCase, kebab-case, and camelCase versions of name:\n // const name = routerComponentName\n // const names = [name, PascalCase(name), KebabCase(name), CamelCase(name)]\n // exists = names.some(name => !!thisOrParent.$options.components[name])\n // And may want to cache the result for performance or we just let the render fail\n // if the component is not registered\n\n\n return routerComponentName || (hasNuxt ? 'nuxt-link' : 'router-link');\n};\nvar computeRel = function computeRel() {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n target = _ref2.target,\n rel = _ref2.rel;\n\n return target === '_blank' && isNull(rel) ? 'noopener' : rel || null;\n};\nvar computeHref = function computeHref() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n href = _ref3.href,\n to = _ref3.to;\n\n var tag = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ANCHOR_TAG;\n var fallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '#';\n var toFallback = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '/';\n\n // Return `href` when explicitly provided\n if (href) {\n return href;\n } // We've checked for `$router` in `computeTag()`, so `isRouterLink()` indicates a live router\n // When deferring to Vue Router's ``, don't use the `href` attribute at all\n // We return `null`, and then remove `href` from the attributes passed to ``\n\n\n if (isRouterLink(tag)) {\n return null;\n } // Fallback to `to` prop (if `to` is a string)\n\n\n if (isString(to)) {\n return to || toFallback;\n } // Fallback to `to.path' + `to.query` + `to.hash` prop (if `to` is an object)\n\n\n if (isPlainObject(to) && (to.path || to.query || to.hash)) {\n var path = toString(to.path);\n var query = stringifyQueryObj(to.query);\n var hash = toString(to.hash);\n hash = !hash || hash.charAt(0) === '#' ? hash : \"#\".concat(hash);\n return \"\".concat(path).concat(query).concat(hash) || toFallback;\n } // If nothing is provided return the fallback\n\n\n return fallback;\n};\n\n// Base attributes needed on all icons\n\nvar BASE_ATTRS = {\n viewBox: '0 0 16 16',\n width: '1em',\n height: '1em',\n focusable: 'false',\n role: 'img',\n 'aria-label': 'icon'\n}; // Attributes that are nulled out when stacked\n\nvar STACKED_ATTRS = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}; // --- Props ---\n\nvar props$2i = {\n animation: makeProp(PROP_TYPE_STRING),\n content: makeProp(PROP_TYPE_STRING),\n flipH: makeProp(PROP_TYPE_BOOLEAN, false),\n flipV: makeProp(PROP_TYPE_BOOLEAN, false),\n fontScale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n rotate: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n scale: makeProp(PROP_TYPE_NUMBER_STRING, 1),\n shiftH: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n shiftV: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n stacked: makeProp(PROP_TYPE_BOOLEAN, false),\n title: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}; // --- Main component ---\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\n\nvar BVIconBase = /*#__PURE__*/extend({\n name: NAME_ICON_BASE,\n functional: true,\n props: props$2i,\n render: function render(h, _ref) {\n var _class;\n\n var data = _ref.data,\n props = _ref.props,\n children = _ref.children;\n var animation = props.animation,\n content = props.content,\n flipH = props.flipH,\n flipV = props.flipV,\n stacked = props.stacked,\n title = props.title,\n variant = props.variant;\n var fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1;\n var scale = mathMax(toFloat(props.scale, 1), 0) || 1;\n var rotate = toFloat(props.rotate, 0);\n var shiftH = toFloat(props.shiftH, 0);\n var shiftV = toFloat(props.shiftV, 0); // Compute the transforms\n // Note that order is important as SVG transforms are applied in order from\n // left to right and we want flipping/scale to occur before rotation\n // Note shifting is applied separately\n // Assumes that the viewbox is `0 0 16 16` (`8 8` is the center)\n\n var hasScale = flipH || flipV || scale !== 1;\n var hasTransforms = hasScale || rotate;\n var hasShift = shiftH || shiftV;\n var hasContent = !isUndefinedOrNull(content);\n var transforms = [hasTransforms ? 'translate(8 8)' : null, hasScale ? \"scale(\".concat((flipH ? -1 : 1) * scale, \" \").concat((flipV ? -1 : 1) * scale, \")\") : null, rotate ? \"rotate(\".concat(rotate, \")\") : null, hasTransforms ? 'translate(-8 -8)' : null].filter(identity); // We wrap the content in a `` for handling the transforms (except shift)\n\n var $inner = h('g', {\n attrs: {\n transform: transforms.join(' ') || null\n },\n domProps: hasContent ? {\n innerHTML: content || ''\n } : {}\n }, children); // If needed, we wrap in an additional `` in order to handle the shifting\n\n if (hasShift) {\n $inner = h('g', {\n attrs: {\n transform: \"translate(\".concat(16 * shiftH / 16, \" \").concat(-16 * shiftV / 16, \")\")\n }\n }, [$inner]);\n } // Wrap in an additional `` for proper animation handling if stacked\n\n\n if (stacked) {\n $inner = h('g', [$inner]);\n }\n\n var $title = title ? h('title', title) : null;\n var $content = [$title, $inner].filter(identity);\n return h('svg', mergeData({\n staticClass: 'b-icon bi',\n class: (_class = {}, _defineProperty(_class, \"text-\".concat(variant), variant), _defineProperty(_class, \"b-icon-animation-\".concat(animation), animation), _class),\n attrs: BASE_ATTRS,\n style: stacked ? {} : {\n fontSize: fontScale === 1 ? null : \"\".concat(fontScale * 100, \"%\")\n }\n }, // Merge in user supplied data\n data, // If icon is stacked, null-out some attrs\n stacked ? {\n attrs: STACKED_ATTRS\n } : {}, // These cannot be overridden by users\n {\n attrs: {\n xmlns: stacked ? null : 'http://www.w3.org/2000/svg',\n fill: 'currentColor'\n }\n }), $content);\n }\n});\n\nvar iconProps$1 = omit(props$2i, ['content']);\n/**\n * Icon component generator function\n *\n * @param {string} icon name (minus the leading `BIcon`)\n * @param {string} raw `innerHTML` for SVG\n * @return {VueComponent}\n */\n\nvar makeIcon = function makeIcon(name, content) {\n // For performance reason we pre-compute some values, so that\n // they are not computed on each render of the icon component\n var kebabName = kebabCase(name);\n var iconName = \"BIcon\".concat(pascalCase(name));\n var iconNameClass = \"bi-\".concat(kebabName);\n var iconTitle = kebabName.replace(/-/g, ' ');\n var svgContent = trim(content || '');\n return /*#__PURE__*/extend({\n name: iconName,\n functional: true,\n props: iconProps$1,\n render: function render(h, _ref) {\n var data = _ref.data,\n props = _ref.props;\n return h(BVIconBase, mergeData( // Defaults\n {\n props: {\n title: iconTitle\n },\n attrs: {\n 'aria-label': iconTitle\n }\n }, // User data\n data, // Required data\n {\n staticClass: iconNameClass,\n props: _objectSpread2$3(_objectSpread2$3({}, props), {}, {\n content: svgContent\n })\n }));\n }\n });\n};\n\n// --- BEGIN AUTO-GENERATED FILE ---\nvar BIconBlank=/*#__PURE__*/makeIcon('Blank','');// --- Bootstrap Icons ---\n// eslint-disable-next-line\nvar BIconAlarm=/*#__PURE__*/makeIcon('Alarm','');// eslint-disable-next-line\nvar BIconAlarmFill=/*#__PURE__*/makeIcon('AlarmFill','');// eslint-disable-next-line\nvar BIconAlignBottom=/*#__PURE__*/makeIcon('AlignBottom','');// eslint-disable-next-line\nvar BIconAlignCenter=/*#__PURE__*/makeIcon('AlignCenter','');// eslint-disable-next-line\nvar BIconAlignEnd=/*#__PURE__*/makeIcon('AlignEnd','');// eslint-disable-next-line\nvar BIconAlignMiddle=/*#__PURE__*/makeIcon('AlignMiddle','');// eslint-disable-next-line\nvar BIconAlignStart=/*#__PURE__*/makeIcon('AlignStart','');// eslint-disable-next-line\nvar BIconAlignTop=/*#__PURE__*/makeIcon('AlignTop','');// eslint-disable-next-line\nvar BIconAlt=/*#__PURE__*/makeIcon('Alt','');// eslint-disable-next-line\nvar BIconApp=/*#__PURE__*/makeIcon('App','');// eslint-disable-next-line\nvar BIconAppIndicator=/*#__PURE__*/makeIcon('AppIndicator','');// eslint-disable-next-line\nvar BIconArchive=/*#__PURE__*/makeIcon('Archive','');// eslint-disable-next-line\nvar BIconArchiveFill=/*#__PURE__*/makeIcon('ArchiveFill','');// eslint-disable-next-line\nvar BIconArrow90degDown=/*#__PURE__*/makeIcon('Arrow90degDown','');// eslint-disable-next-line\nvar BIconArrow90degLeft=/*#__PURE__*/makeIcon('Arrow90degLeft','');// eslint-disable-next-line\nvar BIconArrow90degRight=/*#__PURE__*/makeIcon('Arrow90degRight','');// eslint-disable-next-line\nvar BIconArrow90degUp=/*#__PURE__*/makeIcon('Arrow90degUp','');// eslint-disable-next-line\nvar BIconArrowBarDown=/*#__PURE__*/makeIcon('ArrowBarDown','');// eslint-disable-next-line\nvar BIconArrowBarLeft=/*#__PURE__*/makeIcon('ArrowBarLeft','');// eslint-disable-next-line\nvar BIconArrowBarRight=/*#__PURE__*/makeIcon('ArrowBarRight','');// eslint-disable-next-line\nvar BIconArrowBarUp=/*#__PURE__*/makeIcon('ArrowBarUp','');// eslint-disable-next-line\nvar BIconArrowClockwise=/*#__PURE__*/makeIcon('ArrowClockwise','');// eslint-disable-next-line\nvar BIconArrowCounterclockwise=/*#__PURE__*/makeIcon('ArrowCounterclockwise','');// eslint-disable-next-line\nvar BIconArrowDown=/*#__PURE__*/makeIcon('ArrowDown','');// eslint-disable-next-line\nvar BIconArrowDownCircle=/*#__PURE__*/makeIcon('ArrowDownCircle','');// eslint-disable-next-line\nvar BIconArrowDownCircleFill=/*#__PURE__*/makeIcon('ArrowDownCircleFill','');// eslint-disable-next-line\nvar BIconArrowDownLeft=/*#__PURE__*/makeIcon('ArrowDownLeft','');// eslint-disable-next-line\nvar BIconArrowDownLeftCircle=/*#__PURE__*/makeIcon('ArrowDownLeftCircle','');// eslint-disable-next-line\nvar BIconArrowDownLeftCircleFill=/*#__PURE__*/makeIcon('ArrowDownLeftCircleFill','');// eslint-disable-next-line\nvar BIconArrowDownLeftSquare=/*#__PURE__*/makeIcon('ArrowDownLeftSquare','');// eslint-disable-next-line\nvar BIconArrowDownLeftSquareFill=/*#__PURE__*/makeIcon('ArrowDownLeftSquareFill','');// eslint-disable-next-line\nvar BIconArrowDownRight=/*#__PURE__*/makeIcon('ArrowDownRight','');// eslint-disable-next-line\nvar BIconArrowDownRightCircle=/*#__PURE__*/makeIcon('ArrowDownRightCircle','');// eslint-disable-next-line\nvar BIconArrowDownRightCircleFill=/*#__PURE__*/makeIcon('ArrowDownRightCircleFill','');// eslint-disable-next-line\nvar BIconArrowDownRightSquare=/*#__PURE__*/makeIcon('ArrowDownRightSquare','');// eslint-disable-next-line\nvar BIconArrowDownRightSquareFill=/*#__PURE__*/makeIcon('ArrowDownRightSquareFill','');// eslint-disable-next-line\nvar BIconArrowDownShort=/*#__PURE__*/makeIcon('ArrowDownShort','');// eslint-disable-next-line\nvar BIconArrowDownSquare=/*#__PURE__*/makeIcon('ArrowDownSquare','');// eslint-disable-next-line\nvar BIconArrowDownSquareFill=/*#__PURE__*/makeIcon('ArrowDownSquareFill','');// eslint-disable-next-line\nvar BIconArrowDownUp=/*#__PURE__*/makeIcon('ArrowDownUp','');// eslint-disable-next-line\nvar BIconArrowLeft=/*#__PURE__*/makeIcon('ArrowLeft','');// eslint-disable-next-line\nvar BIconArrowLeftCircle=/*#__PURE__*/makeIcon('ArrowLeftCircle','');// eslint-disable-next-line\nvar BIconArrowLeftCircleFill=/*#__PURE__*/makeIcon('ArrowLeftCircleFill','');// eslint-disable-next-line\nvar BIconArrowLeftRight=/*#__PURE__*/makeIcon('ArrowLeftRight','');// eslint-disable-next-line\nvar BIconArrowLeftShort=/*#__PURE__*/makeIcon('ArrowLeftShort','');// eslint-disable-next-line\nvar BIconArrowLeftSquare=/*#__PURE__*/makeIcon('ArrowLeftSquare','');// eslint-disable-next-line\nvar BIconArrowLeftSquareFill=/*#__PURE__*/makeIcon('ArrowLeftSquareFill','');// eslint-disable-next-line\nvar BIconArrowRepeat=/*#__PURE__*/makeIcon('ArrowRepeat','');// eslint-disable-next-line\nvar BIconArrowReturnLeft=/*#__PURE__*/makeIcon('ArrowReturnLeft','');// eslint-disable-next-line\nvar BIconArrowReturnRight=/*#__PURE__*/makeIcon('ArrowReturnRight','');// eslint-disable-next-line\nvar BIconArrowRight=/*#__PURE__*/makeIcon('ArrowRight','');// eslint-disable-next-line\nvar BIconArrowRightCircle=/*#__PURE__*/makeIcon('ArrowRightCircle','');// eslint-disable-next-line\nvar BIconArrowRightCircleFill=/*#__PURE__*/makeIcon('ArrowRightCircleFill','');// eslint-disable-next-line\nvar BIconArrowRightShort=/*#__PURE__*/makeIcon('ArrowRightShort','');// eslint-disable-next-line\nvar BIconArrowRightSquare=/*#__PURE__*/makeIcon('ArrowRightSquare','');// eslint-disable-next-line\nvar BIconArrowRightSquareFill=/*#__PURE__*/makeIcon('ArrowRightSquareFill','');// eslint-disable-next-line\nvar BIconArrowUp=/*#__PURE__*/makeIcon('ArrowUp','');// eslint-disable-next-line\nvar BIconArrowUpCircle=/*#__PURE__*/makeIcon('ArrowUpCircle','');// eslint-disable-next-line\nvar BIconArrowUpCircleFill=/*#__PURE__*/makeIcon('ArrowUpCircleFill','');// eslint-disable-next-line\nvar BIconArrowUpLeft=/*#__PURE__*/makeIcon('ArrowUpLeft','');// eslint-disable-next-line\nvar BIconArrowUpLeftCircle=/*#__PURE__*/makeIcon('ArrowUpLeftCircle','');// eslint-disable-next-line\nvar BIconArrowUpLeftCircleFill=/*#__PURE__*/makeIcon('ArrowUpLeftCircleFill','');// eslint-disable-next-line\nvar BIconArrowUpLeftSquare=/*#__PURE__*/makeIcon('ArrowUpLeftSquare','');// eslint-disable-next-line\nvar BIconArrowUpLeftSquareFill=/*#__PURE__*/makeIcon('ArrowUpLeftSquareFill','');// eslint-disable-next-line\nvar BIconArrowUpRight=/*#__PURE__*/makeIcon('ArrowUpRight','');// eslint-disable-next-line\nvar BIconArrowUpRightCircle=/*#__PURE__*/makeIcon('ArrowUpRightCircle','');// eslint-disable-next-line\nvar BIconArrowUpRightCircleFill=/*#__PURE__*/makeIcon('ArrowUpRightCircleFill','');// eslint-disable-next-line\nvar BIconArrowUpRightSquare=/*#__PURE__*/makeIcon('ArrowUpRightSquare','');// eslint-disable-next-line\nvar BIconArrowUpRightSquareFill=/*#__PURE__*/makeIcon('ArrowUpRightSquareFill','');// eslint-disable-next-line\nvar BIconArrowUpShort=/*#__PURE__*/makeIcon('ArrowUpShort','');// eslint-disable-next-line\nvar BIconArrowUpSquare=/*#__PURE__*/makeIcon('ArrowUpSquare','');// eslint-disable-next-line\nvar BIconArrowUpSquareFill=/*#__PURE__*/makeIcon('ArrowUpSquareFill','');// eslint-disable-next-line\nvar BIconArrowsAngleContract=/*#__PURE__*/makeIcon('ArrowsAngleContract','');// eslint-disable-next-line\nvar BIconArrowsAngleExpand=/*#__PURE__*/makeIcon('ArrowsAngleExpand','');// eslint-disable-next-line\nvar BIconArrowsCollapse=/*#__PURE__*/makeIcon('ArrowsCollapse','');// eslint-disable-next-line\nvar BIconArrowsExpand=/*#__PURE__*/makeIcon('ArrowsExpand','');// eslint-disable-next-line\nvar BIconArrowsFullscreen=/*#__PURE__*/makeIcon('ArrowsFullscreen','');// eslint-disable-next-line\nvar BIconArrowsMove=/*#__PURE__*/makeIcon('ArrowsMove','');// eslint-disable-next-line\nvar BIconAspectRatio=/*#__PURE__*/makeIcon('AspectRatio','');// eslint-disable-next-line\nvar BIconAspectRatioFill=/*#__PURE__*/makeIcon('AspectRatioFill','');// eslint-disable-next-line\nvar BIconAsterisk=/*#__PURE__*/makeIcon('Asterisk','');// eslint-disable-next-line\nvar BIconAt=/*#__PURE__*/makeIcon('At','');// eslint-disable-next-line\nvar BIconAward=/*#__PURE__*/makeIcon('Award','');// eslint-disable-next-line\nvar BIconAwardFill=/*#__PURE__*/makeIcon('AwardFill','');// eslint-disable-next-line\nvar BIconBack=/*#__PURE__*/makeIcon('Back','');// eslint-disable-next-line\nvar BIconBackspace=/*#__PURE__*/makeIcon('Backspace','');// eslint-disable-next-line\nvar BIconBackspaceFill=/*#__PURE__*/makeIcon('BackspaceFill','');// eslint-disable-next-line\nvar BIconBackspaceReverse=/*#__PURE__*/makeIcon('BackspaceReverse','');// eslint-disable-next-line\nvar BIconBackspaceReverseFill=/*#__PURE__*/makeIcon('BackspaceReverseFill','');// eslint-disable-next-line\nvar BIconBadge3d=/*#__PURE__*/makeIcon('Badge3d','');// eslint-disable-next-line\nvar BIconBadge3dFill=/*#__PURE__*/makeIcon('Badge3dFill','');// eslint-disable-next-line\nvar BIconBadge4k=/*#__PURE__*/makeIcon('Badge4k','');// eslint-disable-next-line\nvar BIconBadge4kFill=/*#__PURE__*/makeIcon('Badge4kFill','');// eslint-disable-next-line\nvar BIconBadge8k=/*#__PURE__*/makeIcon('Badge8k','');// eslint-disable-next-line\nvar BIconBadge8kFill=/*#__PURE__*/makeIcon('Badge8kFill','');// eslint-disable-next-line\nvar BIconBadgeAd=/*#__PURE__*/makeIcon('BadgeAd','');// eslint-disable-next-line\nvar BIconBadgeAdFill=/*#__PURE__*/makeIcon('BadgeAdFill','');// eslint-disable-next-line\nvar BIconBadgeAr=/*#__PURE__*/makeIcon('BadgeAr','');// eslint-disable-next-line\nvar BIconBadgeArFill=/*#__PURE__*/makeIcon('BadgeArFill','');// eslint-disable-next-line\nvar BIconBadgeCc=/*#__PURE__*/makeIcon('BadgeCc','');// eslint-disable-next-line\nvar BIconBadgeCcFill=/*#__PURE__*/makeIcon('BadgeCcFill','');// eslint-disable-next-line\nvar BIconBadgeHd=/*#__PURE__*/makeIcon('BadgeHd','');// eslint-disable-next-line\nvar BIconBadgeHdFill=/*#__PURE__*/makeIcon('BadgeHdFill','');// eslint-disable-next-line\nvar BIconBadgeTm=/*#__PURE__*/makeIcon('BadgeTm','');// eslint-disable-next-line\nvar BIconBadgeTmFill=/*#__PURE__*/makeIcon('BadgeTmFill','');// eslint-disable-next-line\nvar BIconBadgeVo=/*#__PURE__*/makeIcon('BadgeVo','');// eslint-disable-next-line\nvar BIconBadgeVoFill=/*#__PURE__*/makeIcon('BadgeVoFill','');// eslint-disable-next-line\nvar BIconBadgeVr=/*#__PURE__*/makeIcon('BadgeVr','');// eslint-disable-next-line\nvar BIconBadgeVrFill=/*#__PURE__*/makeIcon('BadgeVrFill','');// eslint-disable-next-line\nvar BIconBadgeWc=/*#__PURE__*/makeIcon('BadgeWc','');// eslint-disable-next-line\nvar BIconBadgeWcFill=/*#__PURE__*/makeIcon('BadgeWcFill','');// eslint-disable-next-line\nvar BIconBag=/*#__PURE__*/makeIcon('Bag','');// eslint-disable-next-line\nvar BIconBagCheck=/*#__PURE__*/makeIcon('BagCheck','');// eslint-disable-next-line\nvar BIconBagCheckFill=/*#__PURE__*/makeIcon('BagCheckFill','');// eslint-disable-next-line\nvar BIconBagDash=/*#__PURE__*/makeIcon('BagDash','');// eslint-disable-next-line\nvar BIconBagDashFill=/*#__PURE__*/makeIcon('BagDashFill','');// eslint-disable-next-line\nvar BIconBagFill=/*#__PURE__*/makeIcon('BagFill','');// eslint-disable-next-line\nvar BIconBagPlus=/*#__PURE__*/makeIcon('BagPlus','');// eslint-disable-next-line\nvar BIconBagPlusFill=/*#__PURE__*/makeIcon('BagPlusFill','');// eslint-disable-next-line\nvar BIconBagX=/*#__PURE__*/makeIcon('BagX','');// eslint-disable-next-line\nvar BIconBagXFill=/*#__PURE__*/makeIcon('BagXFill','');// eslint-disable-next-line\nvar BIconBank=/*#__PURE__*/makeIcon('Bank','');// eslint-disable-next-line\nvar BIconBank2=/*#__PURE__*/makeIcon('Bank2','');// eslint-disable-next-line\nvar BIconBarChart=/*#__PURE__*/makeIcon('BarChart','');// eslint-disable-next-line\nvar BIconBarChartFill=/*#__PURE__*/makeIcon('BarChartFill','');// eslint-disable-next-line\nvar BIconBarChartLine=/*#__PURE__*/makeIcon('BarChartLine','');// eslint-disable-next-line\nvar BIconBarChartLineFill=/*#__PURE__*/makeIcon('BarChartLineFill','');// eslint-disable-next-line\nvar BIconBarChartSteps=/*#__PURE__*/makeIcon('BarChartSteps','');// eslint-disable-next-line\nvar BIconBasket=/*#__PURE__*/makeIcon('Basket','');// eslint-disable-next-line\nvar BIconBasket2=/*#__PURE__*/makeIcon('Basket2','');// eslint-disable-next-line\nvar BIconBasket2Fill=/*#__PURE__*/makeIcon('Basket2Fill','');// eslint-disable-next-line\nvar BIconBasket3=/*#__PURE__*/makeIcon('Basket3','');// eslint-disable-next-line\nvar BIconBasket3Fill=/*#__PURE__*/makeIcon('Basket3Fill','');// eslint-disable-next-line\nvar BIconBasketFill=/*#__PURE__*/makeIcon('BasketFill','');// eslint-disable-next-line\nvar BIconBattery=/*#__PURE__*/makeIcon('Battery','');// eslint-disable-next-line\nvar BIconBatteryCharging=/*#__PURE__*/makeIcon('BatteryCharging','');// eslint-disable-next-line\nvar BIconBatteryFull=/*#__PURE__*/makeIcon('BatteryFull','');// eslint-disable-next-line\nvar BIconBatteryHalf=/*#__PURE__*/makeIcon('BatteryHalf','');// eslint-disable-next-line\nvar BIconBell=/*#__PURE__*/makeIcon('Bell','');// eslint-disable-next-line\nvar BIconBellFill=/*#__PURE__*/makeIcon('BellFill','');// eslint-disable-next-line\nvar BIconBellSlash=/*#__PURE__*/makeIcon('BellSlash','');// eslint-disable-next-line\nvar BIconBellSlashFill=/*#__PURE__*/makeIcon('BellSlashFill','');// eslint-disable-next-line\nvar BIconBezier=/*#__PURE__*/makeIcon('Bezier','');// eslint-disable-next-line\nvar BIconBezier2=/*#__PURE__*/makeIcon('Bezier2','');// eslint-disable-next-line\nvar BIconBicycle=/*#__PURE__*/makeIcon('Bicycle','');// eslint-disable-next-line\nvar BIconBinoculars=/*#__PURE__*/makeIcon('Binoculars','');// eslint-disable-next-line\nvar BIconBinocularsFill=/*#__PURE__*/makeIcon('BinocularsFill','');// eslint-disable-next-line\nvar BIconBlockquoteLeft=/*#__PURE__*/makeIcon('BlockquoteLeft','');// eslint-disable-next-line\nvar BIconBlockquoteRight=/*#__PURE__*/makeIcon('BlockquoteRight','');// eslint-disable-next-line\nvar BIconBook=/*#__PURE__*/makeIcon('Book','');// eslint-disable-next-line\nvar BIconBookFill=/*#__PURE__*/makeIcon('BookFill','');// eslint-disable-next-line\nvar BIconBookHalf=/*#__PURE__*/makeIcon('BookHalf','');// eslint-disable-next-line\nvar BIconBookmark=/*#__PURE__*/makeIcon('Bookmark','');// eslint-disable-next-line\nvar BIconBookmarkCheck=/*#__PURE__*/makeIcon('BookmarkCheck','');// eslint-disable-next-line\nvar BIconBookmarkCheckFill=/*#__PURE__*/makeIcon('BookmarkCheckFill','');// eslint-disable-next-line\nvar BIconBookmarkDash=/*#__PURE__*/makeIcon('BookmarkDash','');// eslint-disable-next-line\nvar BIconBookmarkDashFill=/*#__PURE__*/makeIcon('BookmarkDashFill','');// eslint-disable-next-line\nvar BIconBookmarkFill=/*#__PURE__*/makeIcon('BookmarkFill','');// eslint-disable-next-line\nvar BIconBookmarkHeart=/*#__PURE__*/makeIcon('BookmarkHeart','');// eslint-disable-next-line\nvar BIconBookmarkHeartFill=/*#__PURE__*/makeIcon('BookmarkHeartFill','');// eslint-disable-next-line\nvar BIconBookmarkPlus=/*#__PURE__*/makeIcon('BookmarkPlus','');// eslint-disable-next-line\nvar BIconBookmarkPlusFill=/*#__PURE__*/makeIcon('BookmarkPlusFill','');// eslint-disable-next-line\nvar BIconBookmarkStar=/*#__PURE__*/makeIcon('BookmarkStar','');// eslint-disable-next-line\nvar BIconBookmarkStarFill=/*#__PURE__*/makeIcon('BookmarkStarFill','');// eslint-disable-next-line\nvar BIconBookmarkX=/*#__PURE__*/makeIcon('BookmarkX','');// eslint-disable-next-line\nvar BIconBookmarkXFill=/*#__PURE__*/makeIcon('BookmarkXFill','');// eslint-disable-next-line\nvar BIconBookmarks=/*#__PURE__*/makeIcon('Bookmarks','');// eslint-disable-next-line\nvar BIconBookmarksFill=/*#__PURE__*/makeIcon('BookmarksFill','');// eslint-disable-next-line\nvar BIconBookshelf=/*#__PURE__*/makeIcon('Bookshelf','');// eslint-disable-next-line\nvar BIconBootstrap=/*#__PURE__*/makeIcon('Bootstrap','');// eslint-disable-next-line\nvar BIconBootstrapFill=/*#__PURE__*/makeIcon('BootstrapFill','');// eslint-disable-next-line\nvar BIconBootstrapReboot=/*#__PURE__*/makeIcon('BootstrapReboot','');// eslint-disable-next-line\nvar BIconBorder=/*#__PURE__*/makeIcon('Border','');// eslint-disable-next-line\nvar BIconBorderAll=/*#__PURE__*/makeIcon('BorderAll','');// eslint-disable-next-line\nvar BIconBorderBottom=/*#__PURE__*/makeIcon('BorderBottom','');// eslint-disable-next-line\nvar BIconBorderCenter=/*#__PURE__*/makeIcon('BorderCenter','');// eslint-disable-next-line\nvar BIconBorderInner=/*#__PURE__*/makeIcon('BorderInner','');// eslint-disable-next-line\nvar BIconBorderLeft=/*#__PURE__*/makeIcon('BorderLeft','');// eslint-disable-next-line\nvar BIconBorderMiddle=/*#__PURE__*/makeIcon('BorderMiddle','');// eslint-disable-next-line\nvar BIconBorderOuter=/*#__PURE__*/makeIcon('BorderOuter','');// eslint-disable-next-line\nvar BIconBorderRight=/*#__PURE__*/makeIcon('BorderRight','');// eslint-disable-next-line\nvar BIconBorderStyle=/*#__PURE__*/makeIcon('BorderStyle','');// eslint-disable-next-line\nvar BIconBorderTop=/*#__PURE__*/makeIcon('BorderTop','');// eslint-disable-next-line\nvar BIconBorderWidth=/*#__PURE__*/makeIcon('BorderWidth','');// eslint-disable-next-line\nvar BIconBoundingBox=/*#__PURE__*/makeIcon('BoundingBox','');// eslint-disable-next-line\nvar BIconBoundingBoxCircles=/*#__PURE__*/makeIcon('BoundingBoxCircles','');// eslint-disable-next-line\nvar BIconBox=/*#__PURE__*/makeIcon('Box','');// eslint-disable-next-line\nvar BIconBoxArrowDown=/*#__PURE__*/makeIcon('BoxArrowDown','');// eslint-disable-next-line\nvar BIconBoxArrowDownLeft=/*#__PURE__*/makeIcon('BoxArrowDownLeft','');// eslint-disable-next-line\nvar BIconBoxArrowDownRight=/*#__PURE__*/makeIcon('BoxArrowDownRight','');// eslint-disable-next-line\nvar BIconBoxArrowInDown=/*#__PURE__*/makeIcon('BoxArrowInDown','');// eslint-disable-next-line\nvar BIconBoxArrowInDownLeft=/*#__PURE__*/makeIcon('BoxArrowInDownLeft','');// eslint-disable-next-line\nvar BIconBoxArrowInDownRight=/*#__PURE__*/makeIcon('BoxArrowInDownRight','');// eslint-disable-next-line\nvar BIconBoxArrowInLeft=/*#__PURE__*/makeIcon('BoxArrowInLeft','');// eslint-disable-next-line\nvar BIconBoxArrowInRight=/*#__PURE__*/makeIcon('BoxArrowInRight','');// eslint-disable-next-line\nvar BIconBoxArrowInUp=/*#__PURE__*/makeIcon('BoxArrowInUp','');// eslint-disable-next-line\nvar BIconBoxArrowInUpLeft=/*#__PURE__*/makeIcon('BoxArrowInUpLeft','');// eslint-disable-next-line\nvar BIconBoxArrowInUpRight=/*#__PURE__*/makeIcon('BoxArrowInUpRight','');// eslint-disable-next-line\nvar BIconBoxArrowLeft=/*#__PURE__*/makeIcon('BoxArrowLeft','');// eslint-disable-next-line\nvar BIconBoxArrowRight=/*#__PURE__*/makeIcon('BoxArrowRight','');// eslint-disable-next-line\nvar BIconBoxArrowUp=/*#__PURE__*/makeIcon('BoxArrowUp','');// eslint-disable-next-line\nvar BIconBoxArrowUpLeft=/*#__PURE__*/makeIcon('BoxArrowUpLeft','');// eslint-disable-next-line\nvar BIconBoxArrowUpRight=/*#__PURE__*/makeIcon('BoxArrowUpRight','');// eslint-disable-next-line\nvar BIconBoxSeam=/*#__PURE__*/makeIcon('BoxSeam','');// eslint-disable-next-line\nvar BIconBraces=/*#__PURE__*/makeIcon('Braces','');// eslint-disable-next-line\nvar BIconBricks=/*#__PURE__*/makeIcon('Bricks','');// eslint-disable-next-line\nvar BIconBriefcase=/*#__PURE__*/makeIcon('Briefcase','');// eslint-disable-next-line\nvar BIconBriefcaseFill=/*#__PURE__*/makeIcon('BriefcaseFill','');// eslint-disable-next-line\nvar BIconBrightnessAltHigh=/*#__PURE__*/makeIcon('BrightnessAltHigh','');// eslint-disable-next-line\nvar BIconBrightnessAltHighFill=/*#__PURE__*/makeIcon('BrightnessAltHighFill','');// eslint-disable-next-line\nvar BIconBrightnessAltLow=/*#__PURE__*/makeIcon('BrightnessAltLow','');// eslint-disable-next-line\nvar BIconBrightnessAltLowFill=/*#__PURE__*/makeIcon('BrightnessAltLowFill','');// eslint-disable-next-line\nvar BIconBrightnessHigh=/*#__PURE__*/makeIcon('BrightnessHigh','');// eslint-disable-next-line\nvar BIconBrightnessHighFill=/*#__PURE__*/makeIcon('BrightnessHighFill','');// eslint-disable-next-line\nvar BIconBrightnessLow=/*#__PURE__*/makeIcon('BrightnessLow','');// eslint-disable-next-line\nvar BIconBrightnessLowFill=/*#__PURE__*/makeIcon('BrightnessLowFill','');// eslint-disable-next-line\nvar BIconBroadcast=/*#__PURE__*/makeIcon('Broadcast','');// eslint-disable-next-line\nvar BIconBroadcastPin=/*#__PURE__*/makeIcon('BroadcastPin','');// eslint-disable-next-line\nvar BIconBrush=/*#__PURE__*/makeIcon('Brush','');// eslint-disable-next-line\nvar BIconBrushFill=/*#__PURE__*/makeIcon('BrushFill','');// eslint-disable-next-line\nvar BIconBucket=/*#__PURE__*/makeIcon('Bucket','');// eslint-disable-next-line\nvar BIconBucketFill=/*#__PURE__*/makeIcon('BucketFill','');// eslint-disable-next-line\nvar BIconBug=/*#__PURE__*/makeIcon('Bug','');// eslint-disable-next-line\nvar BIconBugFill=/*#__PURE__*/makeIcon('BugFill','');// eslint-disable-next-line\nvar BIconBuilding=/*#__PURE__*/makeIcon('Building','');// eslint-disable-next-line\nvar BIconBullseye=/*#__PURE__*/makeIcon('Bullseye','');// eslint-disable-next-line\nvar BIconCalculator=/*#__PURE__*/makeIcon('Calculator','');// eslint-disable-next-line\nvar BIconCalculatorFill=/*#__PURE__*/makeIcon('CalculatorFill','');// eslint-disable-next-line\nvar BIconCalendar=/*#__PURE__*/makeIcon('Calendar','');// eslint-disable-next-line\nvar BIconCalendar2=/*#__PURE__*/makeIcon('Calendar2','');// eslint-disable-next-line\nvar BIconCalendar2Check=/*#__PURE__*/makeIcon('Calendar2Check','');// eslint-disable-next-line\nvar BIconCalendar2CheckFill=/*#__PURE__*/makeIcon('Calendar2CheckFill','');// eslint-disable-next-line\nvar BIconCalendar2Date=/*#__PURE__*/makeIcon('Calendar2Date','');// eslint-disable-next-line\nvar BIconCalendar2DateFill=/*#__PURE__*/makeIcon('Calendar2DateFill','');// eslint-disable-next-line\nvar BIconCalendar2Day=/*#__PURE__*/makeIcon('Calendar2Day','');// eslint-disable-next-line\nvar BIconCalendar2DayFill=/*#__PURE__*/makeIcon('Calendar2DayFill','');// eslint-disable-next-line\nvar BIconCalendar2Event=/*#__PURE__*/makeIcon('Calendar2Event','');// eslint-disable-next-line\nvar BIconCalendar2EventFill=/*#__PURE__*/makeIcon('Calendar2EventFill','');// eslint-disable-next-line\nvar BIconCalendar2Fill=/*#__PURE__*/makeIcon('Calendar2Fill','');// eslint-disable-next-line\nvar BIconCalendar2Minus=/*#__PURE__*/makeIcon('Calendar2Minus','');// eslint-disable-next-line\nvar BIconCalendar2MinusFill=/*#__PURE__*/makeIcon('Calendar2MinusFill','');// eslint-disable-next-line\nvar BIconCalendar2Month=/*#__PURE__*/makeIcon('Calendar2Month','');// eslint-disable-next-line\nvar BIconCalendar2MonthFill=/*#__PURE__*/makeIcon('Calendar2MonthFill','');// eslint-disable-next-line\nvar BIconCalendar2Plus=/*#__PURE__*/makeIcon('Calendar2Plus','');// eslint-disable-next-line\nvar BIconCalendar2PlusFill=/*#__PURE__*/makeIcon('Calendar2PlusFill','');// eslint-disable-next-line\nvar BIconCalendar2Range=/*#__PURE__*/makeIcon('Calendar2Range','');// eslint-disable-next-line\nvar BIconCalendar2RangeFill=/*#__PURE__*/makeIcon('Calendar2RangeFill','');// eslint-disable-next-line\nvar BIconCalendar2Week=/*#__PURE__*/makeIcon('Calendar2Week','');// eslint-disable-next-line\nvar BIconCalendar2WeekFill=/*#__PURE__*/makeIcon('Calendar2WeekFill','');// eslint-disable-next-line\nvar BIconCalendar2X=/*#__PURE__*/makeIcon('Calendar2X','');// eslint-disable-next-line\nvar BIconCalendar2XFill=/*#__PURE__*/makeIcon('Calendar2XFill','');// eslint-disable-next-line\nvar BIconCalendar3=/*#__PURE__*/makeIcon('Calendar3','');// eslint-disable-next-line\nvar BIconCalendar3Event=/*#__PURE__*/makeIcon('Calendar3Event','');// eslint-disable-next-line\nvar BIconCalendar3EventFill=/*#__PURE__*/makeIcon('Calendar3EventFill','');// eslint-disable-next-line\nvar BIconCalendar3Fill=/*#__PURE__*/makeIcon('Calendar3Fill','');// eslint-disable-next-line\nvar BIconCalendar3Range=/*#__PURE__*/makeIcon('Calendar3Range','');// eslint-disable-next-line\nvar BIconCalendar3RangeFill=/*#__PURE__*/makeIcon('Calendar3RangeFill','');// eslint-disable-next-line\nvar BIconCalendar3Week=/*#__PURE__*/makeIcon('Calendar3Week','');// eslint-disable-next-line\nvar BIconCalendar3WeekFill=/*#__PURE__*/makeIcon('Calendar3WeekFill','');// eslint-disable-next-line\nvar BIconCalendar4=/*#__PURE__*/makeIcon('Calendar4','');// eslint-disable-next-line\nvar BIconCalendar4Event=/*#__PURE__*/makeIcon('Calendar4Event','');// eslint-disable-next-line\nvar BIconCalendar4Range=/*#__PURE__*/makeIcon('Calendar4Range','');// eslint-disable-next-line\nvar BIconCalendar4Week=/*#__PURE__*/makeIcon('Calendar4Week','');// eslint-disable-next-line\nvar BIconCalendarCheck=/*#__PURE__*/makeIcon('CalendarCheck','');// eslint-disable-next-line\nvar BIconCalendarCheckFill=/*#__PURE__*/makeIcon('CalendarCheckFill','');// eslint-disable-next-line\nvar BIconCalendarDate=/*#__PURE__*/makeIcon('CalendarDate','');// eslint-disable-next-line\nvar BIconCalendarDateFill=/*#__PURE__*/makeIcon('CalendarDateFill','');// eslint-disable-next-line\nvar BIconCalendarDay=/*#__PURE__*/makeIcon('CalendarDay','');// eslint-disable-next-line\nvar BIconCalendarDayFill=/*#__PURE__*/makeIcon('CalendarDayFill','');// eslint-disable-next-line\nvar BIconCalendarEvent=/*#__PURE__*/makeIcon('CalendarEvent','');// eslint-disable-next-line\nvar BIconCalendarEventFill=/*#__PURE__*/makeIcon('CalendarEventFill','');// eslint-disable-next-line\nvar BIconCalendarFill=/*#__PURE__*/makeIcon('CalendarFill','');// eslint-disable-next-line\nvar BIconCalendarMinus=/*#__PURE__*/makeIcon('CalendarMinus','');// eslint-disable-next-line\nvar BIconCalendarMinusFill=/*#__PURE__*/makeIcon('CalendarMinusFill','');// eslint-disable-next-line\nvar BIconCalendarMonth=/*#__PURE__*/makeIcon('CalendarMonth','');// eslint-disable-next-line\nvar BIconCalendarMonthFill=/*#__PURE__*/makeIcon('CalendarMonthFill','');// eslint-disable-next-line\nvar BIconCalendarPlus=/*#__PURE__*/makeIcon('CalendarPlus','');// eslint-disable-next-line\nvar BIconCalendarPlusFill=/*#__PURE__*/makeIcon('CalendarPlusFill','');// eslint-disable-next-line\nvar BIconCalendarRange=/*#__PURE__*/makeIcon('CalendarRange','');// eslint-disable-next-line\nvar BIconCalendarRangeFill=/*#__PURE__*/makeIcon('CalendarRangeFill','');// eslint-disable-next-line\nvar BIconCalendarWeek=/*#__PURE__*/makeIcon('CalendarWeek','');// eslint-disable-next-line\nvar BIconCalendarWeekFill=/*#__PURE__*/makeIcon('CalendarWeekFill','');// eslint-disable-next-line\nvar BIconCalendarX=/*#__PURE__*/makeIcon('CalendarX','');// eslint-disable-next-line\nvar BIconCalendarXFill=/*#__PURE__*/makeIcon('CalendarXFill','');// eslint-disable-next-line\nvar BIconCamera=/*#__PURE__*/makeIcon('Camera','');// eslint-disable-next-line\nvar BIconCamera2=/*#__PURE__*/makeIcon('Camera2','');// eslint-disable-next-line\nvar BIconCameraFill=/*#__PURE__*/makeIcon('CameraFill','');// eslint-disable-next-line\nvar BIconCameraReels=/*#__PURE__*/makeIcon('CameraReels','');// eslint-disable-next-line\nvar BIconCameraReelsFill=/*#__PURE__*/makeIcon('CameraReelsFill','');// eslint-disable-next-line\nvar BIconCameraVideo=/*#__PURE__*/makeIcon('CameraVideo','');// eslint-disable-next-line\nvar BIconCameraVideoFill=/*#__PURE__*/makeIcon('CameraVideoFill','');// eslint-disable-next-line\nvar BIconCameraVideoOff=/*#__PURE__*/makeIcon('CameraVideoOff','');// eslint-disable-next-line\nvar BIconCameraVideoOffFill=/*#__PURE__*/makeIcon('CameraVideoOffFill','');// eslint-disable-next-line\nvar BIconCapslock=/*#__PURE__*/makeIcon('Capslock','');// eslint-disable-next-line\nvar BIconCapslockFill=/*#__PURE__*/makeIcon('CapslockFill','');// eslint-disable-next-line\nvar BIconCardChecklist=/*#__PURE__*/makeIcon('CardChecklist','');// eslint-disable-next-line\nvar BIconCardHeading=/*#__PURE__*/makeIcon('CardHeading','');// eslint-disable-next-line\nvar BIconCardImage=/*#__PURE__*/makeIcon('CardImage','');// eslint-disable-next-line\nvar BIconCardList=/*#__PURE__*/makeIcon('CardList','');// eslint-disable-next-line\nvar BIconCardText=/*#__PURE__*/makeIcon('CardText','');// eslint-disable-next-line\nvar BIconCaretDown=/*#__PURE__*/makeIcon('CaretDown','');// eslint-disable-next-line\nvar BIconCaretDownFill=/*#__PURE__*/makeIcon('CaretDownFill','');// eslint-disable-next-line\nvar BIconCaretDownSquare=/*#__PURE__*/makeIcon('CaretDownSquare','');// eslint-disable-next-line\nvar BIconCaretDownSquareFill=/*#__PURE__*/makeIcon('CaretDownSquareFill','');// eslint-disable-next-line\nvar BIconCaretLeft=/*#__PURE__*/makeIcon('CaretLeft','');// eslint-disable-next-line\nvar BIconCaretLeftFill=/*#__PURE__*/makeIcon('CaretLeftFill','');// eslint-disable-next-line\nvar BIconCaretLeftSquare=/*#__PURE__*/makeIcon('CaretLeftSquare','');// eslint-disable-next-line\nvar BIconCaretLeftSquareFill=/*#__PURE__*/makeIcon('CaretLeftSquareFill','');// eslint-disable-next-line\nvar BIconCaretRight=/*#__PURE__*/makeIcon('CaretRight','');// eslint-disable-next-line\nvar BIconCaretRightFill=/*#__PURE__*/makeIcon('CaretRightFill','');// eslint-disable-next-line\nvar BIconCaretRightSquare=/*#__PURE__*/makeIcon('CaretRightSquare','');// eslint-disable-next-line\nvar BIconCaretRightSquareFill=/*#__PURE__*/makeIcon('CaretRightSquareFill','');// eslint-disable-next-line\nvar BIconCaretUp=/*#__PURE__*/makeIcon('CaretUp','');// eslint-disable-next-line\nvar BIconCaretUpFill=/*#__PURE__*/makeIcon('CaretUpFill','');// eslint-disable-next-line\nvar BIconCaretUpSquare=/*#__PURE__*/makeIcon('CaretUpSquare','');// eslint-disable-next-line\nvar BIconCaretUpSquareFill=/*#__PURE__*/makeIcon('CaretUpSquareFill','');// eslint-disable-next-line\nvar BIconCart=/*#__PURE__*/makeIcon('Cart','');// eslint-disable-next-line\nvar BIconCart2=/*#__PURE__*/makeIcon('Cart2','');// eslint-disable-next-line\nvar BIconCart3=/*#__PURE__*/makeIcon('Cart3','');// eslint-disable-next-line\nvar BIconCart4=/*#__PURE__*/makeIcon('Cart4','');// eslint-disable-next-line\nvar BIconCartCheck=/*#__PURE__*/makeIcon('CartCheck','');// eslint-disable-next-line\nvar BIconCartCheckFill=/*#__PURE__*/makeIcon('CartCheckFill','');// eslint-disable-next-line\nvar BIconCartDash=/*#__PURE__*/makeIcon('CartDash','');// eslint-disable-next-line\nvar BIconCartDashFill=/*#__PURE__*/makeIcon('CartDashFill','');// eslint-disable-next-line\nvar BIconCartFill=/*#__PURE__*/makeIcon('CartFill','');// eslint-disable-next-line\nvar BIconCartPlus=/*#__PURE__*/makeIcon('CartPlus','');// eslint-disable-next-line\nvar BIconCartPlusFill=/*#__PURE__*/makeIcon('CartPlusFill','');// eslint-disable-next-line\nvar BIconCartX=/*#__PURE__*/makeIcon('CartX','');// eslint-disable-next-line\nvar BIconCartXFill=/*#__PURE__*/makeIcon('CartXFill','');// eslint-disable-next-line\nvar BIconCash=/*#__PURE__*/makeIcon('Cash','');// eslint-disable-next-line\nvar BIconCashCoin=/*#__PURE__*/makeIcon('CashCoin','');// eslint-disable-next-line\nvar BIconCashStack=/*#__PURE__*/makeIcon('CashStack','');// eslint-disable-next-line\nvar BIconCast=/*#__PURE__*/makeIcon('Cast','');// eslint-disable-next-line\nvar BIconChat=/*#__PURE__*/makeIcon('Chat','');// eslint-disable-next-line\nvar BIconChatDots=/*#__PURE__*/makeIcon('ChatDots','');// eslint-disable-next-line\nvar BIconChatDotsFill=/*#__PURE__*/makeIcon('ChatDotsFill','');// eslint-disable-next-line\nvar BIconChatFill=/*#__PURE__*/makeIcon('ChatFill','');// eslint-disable-next-line\nvar BIconChatLeft=/*#__PURE__*/makeIcon('ChatLeft','');// eslint-disable-next-line\nvar BIconChatLeftDots=/*#__PURE__*/makeIcon('ChatLeftDots','');// eslint-disable-next-line\nvar BIconChatLeftDotsFill=/*#__PURE__*/makeIcon('ChatLeftDotsFill','');// eslint-disable-next-line\nvar BIconChatLeftFill=/*#__PURE__*/makeIcon('ChatLeftFill','');// eslint-disable-next-line\nvar BIconChatLeftQuote=/*#__PURE__*/makeIcon('ChatLeftQuote','');// eslint-disable-next-line\nvar BIconChatLeftQuoteFill=/*#__PURE__*/makeIcon('ChatLeftQuoteFill','');// eslint-disable-next-line\nvar BIconChatLeftText=/*#__PURE__*/makeIcon('ChatLeftText','');// eslint-disable-next-line\nvar BIconChatLeftTextFill=/*#__PURE__*/makeIcon('ChatLeftTextFill','');// eslint-disable-next-line\nvar BIconChatQuote=/*#__PURE__*/makeIcon('ChatQuote','');// eslint-disable-next-line\nvar BIconChatQuoteFill=/*#__PURE__*/makeIcon('ChatQuoteFill','');// eslint-disable-next-line\nvar BIconChatRight=/*#__PURE__*/makeIcon('ChatRight','');// eslint-disable-next-line\nvar BIconChatRightDots=/*#__PURE__*/makeIcon('ChatRightDots','');// eslint-disable-next-line\nvar BIconChatRightDotsFill=/*#__PURE__*/makeIcon('ChatRightDotsFill','');// eslint-disable-next-line\nvar BIconChatRightFill=/*#__PURE__*/makeIcon('ChatRightFill','');// eslint-disable-next-line\nvar BIconChatRightQuote=/*#__PURE__*/makeIcon('ChatRightQuote','');// eslint-disable-next-line\nvar BIconChatRightQuoteFill=/*#__PURE__*/makeIcon('ChatRightQuoteFill','');// eslint-disable-next-line\nvar BIconChatRightText=/*#__PURE__*/makeIcon('ChatRightText','');// eslint-disable-next-line\nvar BIconChatRightTextFill=/*#__PURE__*/makeIcon('ChatRightTextFill','');// eslint-disable-next-line\nvar BIconChatSquare=/*#__PURE__*/makeIcon('ChatSquare','');// eslint-disable-next-line\nvar BIconChatSquareDots=/*#__PURE__*/makeIcon('ChatSquareDots','');// eslint-disable-next-line\nvar BIconChatSquareDotsFill=/*#__PURE__*/makeIcon('ChatSquareDotsFill','');// eslint-disable-next-line\nvar BIconChatSquareFill=/*#__PURE__*/makeIcon('ChatSquareFill','');// eslint-disable-next-line\nvar BIconChatSquareQuote=/*#__PURE__*/makeIcon('ChatSquareQuote','');// eslint-disable-next-line\nvar BIconChatSquareQuoteFill=/*#__PURE__*/makeIcon('ChatSquareQuoteFill','');// eslint-disable-next-line\nvar BIconChatSquareText=/*#__PURE__*/makeIcon('ChatSquareText','');// eslint-disable-next-line\nvar BIconChatSquareTextFill=/*#__PURE__*/makeIcon('ChatSquareTextFill','');// eslint-disable-next-line\nvar BIconChatText=/*#__PURE__*/makeIcon('ChatText','');// eslint-disable-next-line\nvar BIconChatTextFill=/*#__PURE__*/makeIcon('ChatTextFill','');// eslint-disable-next-line\nvar BIconCheck=/*#__PURE__*/makeIcon('Check','');// eslint-disable-next-line\nvar BIconCheck2=/*#__PURE__*/makeIcon('Check2','');// eslint-disable-next-line\nvar BIconCheck2All=/*#__PURE__*/makeIcon('Check2All','');// eslint-disable-next-line\nvar BIconCheck2Circle=/*#__PURE__*/makeIcon('Check2Circle','');// eslint-disable-next-line\nvar BIconCheck2Square=/*#__PURE__*/makeIcon('Check2Square','');// eslint-disable-next-line\nvar BIconCheckAll=/*#__PURE__*/makeIcon('CheckAll','');// eslint-disable-next-line\nvar BIconCheckCircle=/*#__PURE__*/makeIcon('CheckCircle','');// eslint-disable-next-line\nvar BIconCheckCircleFill=/*#__PURE__*/makeIcon('CheckCircleFill','');// eslint-disable-next-line\nvar BIconCheckLg=/*#__PURE__*/makeIcon('CheckLg','');// eslint-disable-next-line\nvar BIconCheckSquare=/*#__PURE__*/makeIcon('CheckSquare','');// eslint-disable-next-line\nvar BIconCheckSquareFill=/*#__PURE__*/makeIcon('CheckSquareFill','');// eslint-disable-next-line\nvar BIconChevronBarContract=/*#__PURE__*/makeIcon('ChevronBarContract','');// eslint-disable-next-line\nvar BIconChevronBarDown=/*#__PURE__*/makeIcon('ChevronBarDown','');// eslint-disable-next-line\nvar BIconChevronBarExpand=/*#__PURE__*/makeIcon('ChevronBarExpand','');// eslint-disable-next-line\nvar BIconChevronBarLeft=/*#__PURE__*/makeIcon('ChevronBarLeft','');// eslint-disable-next-line\nvar BIconChevronBarRight=/*#__PURE__*/makeIcon('ChevronBarRight','');// eslint-disable-next-line\nvar BIconChevronBarUp=/*#__PURE__*/makeIcon('ChevronBarUp','');// eslint-disable-next-line\nvar BIconChevronCompactDown=/*#__PURE__*/makeIcon('ChevronCompactDown','');// eslint-disable-next-line\nvar BIconChevronCompactLeft=/*#__PURE__*/makeIcon('ChevronCompactLeft','');// eslint-disable-next-line\nvar BIconChevronCompactRight=/*#__PURE__*/makeIcon('ChevronCompactRight','');// eslint-disable-next-line\nvar BIconChevronCompactUp=/*#__PURE__*/makeIcon('ChevronCompactUp','');// eslint-disable-next-line\nvar BIconChevronContract=/*#__PURE__*/makeIcon('ChevronContract','');// eslint-disable-next-line\nvar BIconChevronDoubleDown=/*#__PURE__*/makeIcon('ChevronDoubleDown','');// eslint-disable-next-line\nvar BIconChevronDoubleLeft=/*#__PURE__*/makeIcon('ChevronDoubleLeft','');// eslint-disable-next-line\nvar BIconChevronDoubleRight=/*#__PURE__*/makeIcon('ChevronDoubleRight','');// eslint-disable-next-line\nvar BIconChevronDoubleUp=/*#__PURE__*/makeIcon('ChevronDoubleUp','');// eslint-disable-next-line\nvar BIconChevronDown=/*#__PURE__*/makeIcon('ChevronDown','');// eslint-disable-next-line\nvar BIconChevronExpand=/*#__PURE__*/makeIcon('ChevronExpand','');// eslint-disable-next-line\nvar BIconChevronLeft=/*#__PURE__*/makeIcon('ChevronLeft','');// eslint-disable-next-line\nvar BIconChevronRight=/*#__PURE__*/makeIcon('ChevronRight','');// eslint-disable-next-line\nvar BIconChevronUp=/*#__PURE__*/makeIcon('ChevronUp','');// eslint-disable-next-line\nvar BIconCircle=/*#__PURE__*/makeIcon('Circle','');// eslint-disable-next-line\nvar BIconCircleFill=/*#__PURE__*/makeIcon('CircleFill','');// eslint-disable-next-line\nvar BIconCircleHalf=/*#__PURE__*/makeIcon('CircleHalf','');// eslint-disable-next-line\nvar BIconCircleSquare=/*#__PURE__*/makeIcon('CircleSquare','');// eslint-disable-next-line\nvar BIconClipboard=/*#__PURE__*/makeIcon('Clipboard','');// eslint-disable-next-line\nvar BIconClipboardCheck=/*#__PURE__*/makeIcon('ClipboardCheck','');// eslint-disable-next-line\nvar BIconClipboardData=/*#__PURE__*/makeIcon('ClipboardData','');// eslint-disable-next-line\nvar BIconClipboardMinus=/*#__PURE__*/makeIcon('ClipboardMinus','');// eslint-disable-next-line\nvar BIconClipboardPlus=/*#__PURE__*/makeIcon('ClipboardPlus','');// eslint-disable-next-line\nvar BIconClipboardX=/*#__PURE__*/makeIcon('ClipboardX','');// eslint-disable-next-line\nvar BIconClock=/*#__PURE__*/makeIcon('Clock','');// eslint-disable-next-line\nvar BIconClockFill=/*#__PURE__*/makeIcon('ClockFill','');// eslint-disable-next-line\nvar BIconClockHistory=/*#__PURE__*/makeIcon('ClockHistory','');// eslint-disable-next-line\nvar BIconCloud=/*#__PURE__*/makeIcon('Cloud','');// eslint-disable-next-line\nvar BIconCloudArrowDown=/*#__PURE__*/makeIcon('CloudArrowDown','');// eslint-disable-next-line\nvar BIconCloudArrowDownFill=/*#__PURE__*/makeIcon('CloudArrowDownFill','');// eslint-disable-next-line\nvar BIconCloudArrowUp=/*#__PURE__*/makeIcon('CloudArrowUp','');// eslint-disable-next-line\nvar BIconCloudArrowUpFill=/*#__PURE__*/makeIcon('CloudArrowUpFill','');// eslint-disable-next-line\nvar BIconCloudCheck=/*#__PURE__*/makeIcon('CloudCheck','');// eslint-disable-next-line\nvar BIconCloudCheckFill=/*#__PURE__*/makeIcon('CloudCheckFill','');// eslint-disable-next-line\nvar BIconCloudDownload=/*#__PURE__*/makeIcon('CloudDownload','');// eslint-disable-next-line\nvar BIconCloudDownloadFill=/*#__PURE__*/makeIcon('CloudDownloadFill','');// eslint-disable-next-line\nvar BIconCloudDrizzle=/*#__PURE__*/makeIcon('CloudDrizzle','');// eslint-disable-next-line\nvar BIconCloudDrizzleFill=/*#__PURE__*/makeIcon('CloudDrizzleFill','');// eslint-disable-next-line\nvar BIconCloudFill=/*#__PURE__*/makeIcon('CloudFill','');// eslint-disable-next-line\nvar BIconCloudFog=/*#__PURE__*/makeIcon('CloudFog','');// eslint-disable-next-line\nvar BIconCloudFog2=/*#__PURE__*/makeIcon('CloudFog2','');// eslint-disable-next-line\nvar BIconCloudFog2Fill=/*#__PURE__*/makeIcon('CloudFog2Fill','');// eslint-disable-next-line\nvar BIconCloudFogFill=/*#__PURE__*/makeIcon('CloudFogFill','');// eslint-disable-next-line\nvar BIconCloudHail=/*#__PURE__*/makeIcon('CloudHail','');// eslint-disable-next-line\nvar BIconCloudHailFill=/*#__PURE__*/makeIcon('CloudHailFill','');// eslint-disable-next-line\nvar BIconCloudHaze=/*#__PURE__*/makeIcon('CloudHaze','');// eslint-disable-next-line\nvar BIconCloudHaze1=/*#__PURE__*/makeIcon('CloudHaze1','');// eslint-disable-next-line\nvar BIconCloudHaze2Fill=/*#__PURE__*/makeIcon('CloudHaze2Fill','');// eslint-disable-next-line\nvar BIconCloudHazeFill=/*#__PURE__*/makeIcon('CloudHazeFill','');// eslint-disable-next-line\nvar BIconCloudLightning=/*#__PURE__*/makeIcon('CloudLightning','');// eslint-disable-next-line\nvar BIconCloudLightningFill=/*#__PURE__*/makeIcon('CloudLightningFill','');// eslint-disable-next-line\nvar BIconCloudLightningRain=/*#__PURE__*/makeIcon('CloudLightningRain','');// eslint-disable-next-line\nvar BIconCloudLightningRainFill=/*#__PURE__*/makeIcon('CloudLightningRainFill','');// eslint-disable-next-line\nvar BIconCloudMinus=/*#__PURE__*/makeIcon('CloudMinus','');// eslint-disable-next-line\nvar BIconCloudMinusFill=/*#__PURE__*/makeIcon('CloudMinusFill','');// eslint-disable-next-line\nvar BIconCloudMoon=/*#__PURE__*/makeIcon('CloudMoon','');// eslint-disable-next-line\nvar BIconCloudMoonFill=/*#__PURE__*/makeIcon('CloudMoonFill','');// eslint-disable-next-line\nvar BIconCloudPlus=/*#__PURE__*/makeIcon('CloudPlus','');// eslint-disable-next-line\nvar BIconCloudPlusFill=/*#__PURE__*/makeIcon('CloudPlusFill','');// eslint-disable-next-line\nvar BIconCloudRain=/*#__PURE__*/makeIcon('CloudRain','');// eslint-disable-next-line\nvar BIconCloudRainFill=/*#__PURE__*/makeIcon('CloudRainFill','');// eslint-disable-next-line\nvar BIconCloudRainHeavy=/*#__PURE__*/makeIcon('CloudRainHeavy','');// eslint-disable-next-line\nvar BIconCloudRainHeavyFill=/*#__PURE__*/makeIcon('CloudRainHeavyFill','');// eslint-disable-next-line\nvar BIconCloudSlash=/*#__PURE__*/makeIcon('CloudSlash','');// eslint-disable-next-line\nvar BIconCloudSlashFill=/*#__PURE__*/makeIcon('CloudSlashFill','');// eslint-disable-next-line\nvar BIconCloudSleet=/*#__PURE__*/makeIcon('CloudSleet','');// eslint-disable-next-line\nvar BIconCloudSleetFill=/*#__PURE__*/makeIcon('CloudSleetFill','');// eslint-disable-next-line\nvar BIconCloudSnow=/*#__PURE__*/makeIcon('CloudSnow','');// eslint-disable-next-line\nvar BIconCloudSnowFill=/*#__PURE__*/makeIcon('CloudSnowFill','');// eslint-disable-next-line\nvar BIconCloudSun=/*#__PURE__*/makeIcon('CloudSun','');// eslint-disable-next-line\nvar BIconCloudSunFill=/*#__PURE__*/makeIcon('CloudSunFill','');// eslint-disable-next-line\nvar BIconCloudUpload=/*#__PURE__*/makeIcon('CloudUpload','');// eslint-disable-next-line\nvar BIconCloudUploadFill=/*#__PURE__*/makeIcon('CloudUploadFill','');// eslint-disable-next-line\nvar BIconClouds=/*#__PURE__*/makeIcon('Clouds','');// eslint-disable-next-line\nvar BIconCloudsFill=/*#__PURE__*/makeIcon('CloudsFill','');// eslint-disable-next-line\nvar BIconCloudy=/*#__PURE__*/makeIcon('Cloudy','');// eslint-disable-next-line\nvar BIconCloudyFill=/*#__PURE__*/makeIcon('CloudyFill','');// eslint-disable-next-line\nvar BIconCode=/*#__PURE__*/makeIcon('Code','');// eslint-disable-next-line\nvar BIconCodeSlash=/*#__PURE__*/makeIcon('CodeSlash','');// eslint-disable-next-line\nvar BIconCodeSquare=/*#__PURE__*/makeIcon('CodeSquare','');// eslint-disable-next-line\nvar BIconCoin=/*#__PURE__*/makeIcon('Coin','');// eslint-disable-next-line\nvar BIconCollection=/*#__PURE__*/makeIcon('Collection','');// eslint-disable-next-line\nvar BIconCollectionFill=/*#__PURE__*/makeIcon('CollectionFill','');// eslint-disable-next-line\nvar BIconCollectionPlay=/*#__PURE__*/makeIcon('CollectionPlay','');// eslint-disable-next-line\nvar BIconCollectionPlayFill=/*#__PURE__*/makeIcon('CollectionPlayFill','');// eslint-disable-next-line\nvar BIconColumns=/*#__PURE__*/makeIcon('Columns','');// eslint-disable-next-line\nvar BIconColumnsGap=/*#__PURE__*/makeIcon('ColumnsGap','');// eslint-disable-next-line\nvar BIconCommand=/*#__PURE__*/makeIcon('Command','');// eslint-disable-next-line\nvar BIconCompass=/*#__PURE__*/makeIcon('Compass','');// eslint-disable-next-line\nvar BIconCompassFill=/*#__PURE__*/makeIcon('CompassFill','');// eslint-disable-next-line\nvar BIconCone=/*#__PURE__*/makeIcon('Cone','');// eslint-disable-next-line\nvar BIconConeStriped=/*#__PURE__*/makeIcon('ConeStriped','');// eslint-disable-next-line\nvar BIconController=/*#__PURE__*/makeIcon('Controller','');// eslint-disable-next-line\nvar BIconCpu=/*#__PURE__*/makeIcon('Cpu','');// eslint-disable-next-line\nvar BIconCpuFill=/*#__PURE__*/makeIcon('CpuFill','');// eslint-disable-next-line\nvar BIconCreditCard=/*#__PURE__*/makeIcon('CreditCard','');// eslint-disable-next-line\nvar BIconCreditCard2Back=/*#__PURE__*/makeIcon('CreditCard2Back','');// eslint-disable-next-line\nvar BIconCreditCard2BackFill=/*#__PURE__*/makeIcon('CreditCard2BackFill','');// eslint-disable-next-line\nvar BIconCreditCard2Front=/*#__PURE__*/makeIcon('CreditCard2Front','');// eslint-disable-next-line\nvar BIconCreditCard2FrontFill=/*#__PURE__*/makeIcon('CreditCard2FrontFill','');// eslint-disable-next-line\nvar BIconCreditCardFill=/*#__PURE__*/makeIcon('CreditCardFill','');// eslint-disable-next-line\nvar BIconCrop=/*#__PURE__*/makeIcon('Crop','');// eslint-disable-next-line\nvar BIconCup=/*#__PURE__*/makeIcon('Cup','');// eslint-disable-next-line\nvar BIconCupFill=/*#__PURE__*/makeIcon('CupFill','');// eslint-disable-next-line\nvar BIconCupStraw=/*#__PURE__*/makeIcon('CupStraw','');// eslint-disable-next-line\nvar BIconCurrencyBitcoin=/*#__PURE__*/makeIcon('CurrencyBitcoin','');// eslint-disable-next-line\nvar BIconCurrencyDollar=/*#__PURE__*/makeIcon('CurrencyDollar','');// eslint-disable-next-line\nvar BIconCurrencyEuro=/*#__PURE__*/makeIcon('CurrencyEuro','');// eslint-disable-next-line\nvar BIconCurrencyExchange=/*#__PURE__*/makeIcon('CurrencyExchange','');// eslint-disable-next-line\nvar BIconCurrencyPound=/*#__PURE__*/makeIcon('CurrencyPound','');// eslint-disable-next-line\nvar BIconCurrencyYen=/*#__PURE__*/makeIcon('CurrencyYen','');// eslint-disable-next-line\nvar BIconCursor=/*#__PURE__*/makeIcon('Cursor','');// eslint-disable-next-line\nvar BIconCursorFill=/*#__PURE__*/makeIcon('CursorFill','');// eslint-disable-next-line\nvar BIconCursorText=/*#__PURE__*/makeIcon('CursorText','');// eslint-disable-next-line\nvar BIconDash=/*#__PURE__*/makeIcon('Dash','');// eslint-disable-next-line\nvar BIconDashCircle=/*#__PURE__*/makeIcon('DashCircle','');// eslint-disable-next-line\nvar BIconDashCircleDotted=/*#__PURE__*/makeIcon('DashCircleDotted','');// eslint-disable-next-line\nvar BIconDashCircleFill=/*#__PURE__*/makeIcon('DashCircleFill','');// eslint-disable-next-line\nvar BIconDashLg=/*#__PURE__*/makeIcon('DashLg','');// eslint-disable-next-line\nvar BIconDashSquare=/*#__PURE__*/makeIcon('DashSquare','');// eslint-disable-next-line\nvar BIconDashSquareDotted=/*#__PURE__*/makeIcon('DashSquareDotted','');// eslint-disable-next-line\nvar BIconDashSquareFill=/*#__PURE__*/makeIcon('DashSquareFill','');// eslint-disable-next-line\nvar BIconDiagram2=/*#__PURE__*/makeIcon('Diagram2','');// eslint-disable-next-line\nvar BIconDiagram2Fill=/*#__PURE__*/makeIcon('Diagram2Fill','');// eslint-disable-next-line\nvar BIconDiagram3=/*#__PURE__*/makeIcon('Diagram3','');// eslint-disable-next-line\nvar BIconDiagram3Fill=/*#__PURE__*/makeIcon('Diagram3Fill','');// eslint-disable-next-line\nvar BIconDiamond=/*#__PURE__*/makeIcon('Diamond','');// eslint-disable-next-line\nvar BIconDiamondFill=/*#__PURE__*/makeIcon('DiamondFill','');// eslint-disable-next-line\nvar BIconDiamondHalf=/*#__PURE__*/makeIcon('DiamondHalf','');// eslint-disable-next-line\nvar BIconDice1=/*#__PURE__*/makeIcon('Dice1','');// eslint-disable-next-line\nvar BIconDice1Fill=/*#__PURE__*/makeIcon('Dice1Fill','');// eslint-disable-next-line\nvar BIconDice2=/*#__PURE__*/makeIcon('Dice2','');// eslint-disable-next-line\nvar BIconDice2Fill=/*#__PURE__*/makeIcon('Dice2Fill','');// eslint-disable-next-line\nvar BIconDice3=/*#__PURE__*/makeIcon('Dice3','');// eslint-disable-next-line\nvar BIconDice3Fill=/*#__PURE__*/makeIcon('Dice3Fill','');// eslint-disable-next-line\nvar BIconDice4=/*#__PURE__*/makeIcon('Dice4','');// eslint-disable-next-line\nvar BIconDice4Fill=/*#__PURE__*/makeIcon('Dice4Fill','');// eslint-disable-next-line\nvar BIconDice5=/*#__PURE__*/makeIcon('Dice5','');// eslint-disable-next-line\nvar BIconDice5Fill=/*#__PURE__*/makeIcon('Dice5Fill','');// eslint-disable-next-line\nvar BIconDice6=/*#__PURE__*/makeIcon('Dice6','');// eslint-disable-next-line\nvar BIconDice6Fill=/*#__PURE__*/makeIcon('Dice6Fill','');// eslint-disable-next-line\nvar BIconDisc=/*#__PURE__*/makeIcon('Disc','');// eslint-disable-next-line\nvar BIconDiscFill=/*#__PURE__*/makeIcon('DiscFill','');// eslint-disable-next-line\nvar BIconDiscord=/*#__PURE__*/makeIcon('Discord','');// eslint-disable-next-line\nvar BIconDisplay=/*#__PURE__*/makeIcon('Display','');// eslint-disable-next-line\nvar BIconDisplayFill=/*#__PURE__*/makeIcon('DisplayFill','');// eslint-disable-next-line\nvar BIconDistributeHorizontal=/*#__PURE__*/makeIcon('DistributeHorizontal','');// eslint-disable-next-line\nvar BIconDistributeVertical=/*#__PURE__*/makeIcon('DistributeVertical','');// eslint-disable-next-line\nvar BIconDoorClosed=/*#__PURE__*/makeIcon('DoorClosed','');// eslint-disable-next-line\nvar BIconDoorClosedFill=/*#__PURE__*/makeIcon('DoorClosedFill','');// eslint-disable-next-line\nvar BIconDoorOpen=/*#__PURE__*/makeIcon('DoorOpen','');// eslint-disable-next-line\nvar BIconDoorOpenFill=/*#__PURE__*/makeIcon('DoorOpenFill','');// eslint-disable-next-line\nvar BIconDot=/*#__PURE__*/makeIcon('Dot','');// eslint-disable-next-line\nvar BIconDownload=/*#__PURE__*/makeIcon('Download','');// eslint-disable-next-line\nvar BIconDroplet=/*#__PURE__*/makeIcon('Droplet','');// eslint-disable-next-line\nvar BIconDropletFill=/*#__PURE__*/makeIcon('DropletFill','');// eslint-disable-next-line\nvar BIconDropletHalf=/*#__PURE__*/makeIcon('DropletHalf','');// eslint-disable-next-line\nvar BIconEarbuds=/*#__PURE__*/makeIcon('Earbuds','');// eslint-disable-next-line\nvar BIconEasel=/*#__PURE__*/makeIcon('Easel','');// eslint-disable-next-line\nvar BIconEaselFill=/*#__PURE__*/makeIcon('EaselFill','');// eslint-disable-next-line\nvar BIconEgg=/*#__PURE__*/makeIcon('Egg','');// eslint-disable-next-line\nvar BIconEggFill=/*#__PURE__*/makeIcon('EggFill','');// eslint-disable-next-line\nvar BIconEggFried=/*#__PURE__*/makeIcon('EggFried','');// eslint-disable-next-line\nvar BIconEject=/*#__PURE__*/makeIcon('Eject','');// eslint-disable-next-line\nvar BIconEjectFill=/*#__PURE__*/makeIcon('EjectFill','');// eslint-disable-next-line\nvar BIconEmojiAngry=/*#__PURE__*/makeIcon('EmojiAngry','');// eslint-disable-next-line\nvar BIconEmojiAngryFill=/*#__PURE__*/makeIcon('EmojiAngryFill','');// eslint-disable-next-line\nvar BIconEmojiDizzy=/*#__PURE__*/makeIcon('EmojiDizzy','');// eslint-disable-next-line\nvar BIconEmojiDizzyFill=/*#__PURE__*/makeIcon('EmojiDizzyFill','');// eslint-disable-next-line\nvar BIconEmojiExpressionless=/*#__PURE__*/makeIcon('EmojiExpressionless','');// eslint-disable-next-line\nvar BIconEmojiExpressionlessFill=/*#__PURE__*/makeIcon('EmojiExpressionlessFill','');// eslint-disable-next-line\nvar BIconEmojiFrown=/*#__PURE__*/makeIcon('EmojiFrown','');// eslint-disable-next-line\nvar BIconEmojiFrownFill=/*#__PURE__*/makeIcon('EmojiFrownFill','');// eslint-disable-next-line\nvar BIconEmojiHeartEyes=/*#__PURE__*/makeIcon('EmojiHeartEyes','');// eslint-disable-next-line\nvar BIconEmojiHeartEyesFill=/*#__PURE__*/makeIcon('EmojiHeartEyesFill','');// eslint-disable-next-line\nvar BIconEmojiLaughing=/*#__PURE__*/makeIcon('EmojiLaughing','');// eslint-disable-next-line\nvar BIconEmojiLaughingFill=/*#__PURE__*/makeIcon('EmojiLaughingFill','');// eslint-disable-next-line\nvar BIconEmojiNeutral=/*#__PURE__*/makeIcon('EmojiNeutral','');// eslint-disable-next-line\nvar BIconEmojiNeutralFill=/*#__PURE__*/makeIcon('EmojiNeutralFill','');// eslint-disable-next-line\nvar BIconEmojiSmile=/*#__PURE__*/makeIcon('EmojiSmile','');// eslint-disable-next-line\nvar BIconEmojiSmileFill=/*#__PURE__*/makeIcon('EmojiSmileFill','');// eslint-disable-next-line\nvar BIconEmojiSmileUpsideDown=/*#__PURE__*/makeIcon('EmojiSmileUpsideDown','');// eslint-disable-next-line\nvar BIconEmojiSmileUpsideDownFill=/*#__PURE__*/makeIcon('EmojiSmileUpsideDownFill','');// eslint-disable-next-line\nvar BIconEmojiSunglasses=/*#__PURE__*/makeIcon('EmojiSunglasses','');// eslint-disable-next-line\nvar BIconEmojiSunglassesFill=/*#__PURE__*/makeIcon('EmojiSunglassesFill','');// eslint-disable-next-line\nvar BIconEmojiWink=/*#__PURE__*/makeIcon('EmojiWink','');// eslint-disable-next-line\nvar BIconEmojiWinkFill=/*#__PURE__*/makeIcon('EmojiWinkFill','');// eslint-disable-next-line\nvar BIconEnvelope=/*#__PURE__*/makeIcon('Envelope','');// eslint-disable-next-line\nvar BIconEnvelopeFill=/*#__PURE__*/makeIcon('EnvelopeFill','');// eslint-disable-next-line\nvar BIconEnvelopeOpen=/*#__PURE__*/makeIcon('EnvelopeOpen','');// eslint-disable-next-line\nvar BIconEnvelopeOpenFill=/*#__PURE__*/makeIcon('EnvelopeOpenFill','');// eslint-disable-next-line\nvar BIconEraser=/*#__PURE__*/makeIcon('Eraser','');// eslint-disable-next-line\nvar BIconEraserFill=/*#__PURE__*/makeIcon('EraserFill','');// eslint-disable-next-line\nvar BIconExclamation=/*#__PURE__*/makeIcon('Exclamation','');// eslint-disable-next-line\nvar BIconExclamationCircle=/*#__PURE__*/makeIcon('ExclamationCircle','');// eslint-disable-next-line\nvar BIconExclamationCircleFill=/*#__PURE__*/makeIcon('ExclamationCircleFill','');// eslint-disable-next-line\nvar BIconExclamationDiamond=/*#__PURE__*/makeIcon('ExclamationDiamond','');// eslint-disable-next-line\nvar BIconExclamationDiamondFill=/*#__PURE__*/makeIcon('ExclamationDiamondFill','');// eslint-disable-next-line\nvar BIconExclamationLg=/*#__PURE__*/makeIcon('ExclamationLg','');// eslint-disable-next-line\nvar BIconExclamationOctagon=/*#__PURE__*/makeIcon('ExclamationOctagon','');// eslint-disable-next-line\nvar BIconExclamationOctagonFill=/*#__PURE__*/makeIcon('ExclamationOctagonFill','');// eslint-disable-next-line\nvar BIconExclamationSquare=/*#__PURE__*/makeIcon('ExclamationSquare','');// eslint-disable-next-line\nvar BIconExclamationSquareFill=/*#__PURE__*/makeIcon('ExclamationSquareFill','');// eslint-disable-next-line\nvar BIconExclamationTriangle=/*#__PURE__*/makeIcon('ExclamationTriangle','');// eslint-disable-next-line\nvar BIconExclamationTriangleFill=/*#__PURE__*/makeIcon('ExclamationTriangleFill','');// eslint-disable-next-line\nvar BIconExclude=/*#__PURE__*/makeIcon('Exclude','');// eslint-disable-next-line\nvar BIconEye=/*#__PURE__*/makeIcon('Eye','');// eslint-disable-next-line\nvar BIconEyeFill=/*#__PURE__*/makeIcon('EyeFill','');// eslint-disable-next-line\nvar BIconEyeSlash=/*#__PURE__*/makeIcon('EyeSlash','');// eslint-disable-next-line\nvar BIconEyeSlashFill=/*#__PURE__*/makeIcon('EyeSlashFill','');// eslint-disable-next-line\nvar BIconEyedropper=/*#__PURE__*/makeIcon('Eyedropper','');// eslint-disable-next-line\nvar BIconEyeglasses=/*#__PURE__*/makeIcon('Eyeglasses','');// eslint-disable-next-line\nvar BIconFacebook=/*#__PURE__*/makeIcon('Facebook','');// eslint-disable-next-line\nvar BIconFile=/*#__PURE__*/makeIcon('File','');// eslint-disable-next-line\nvar BIconFileArrowDown=/*#__PURE__*/makeIcon('FileArrowDown','');// eslint-disable-next-line\nvar BIconFileArrowDownFill=/*#__PURE__*/makeIcon('FileArrowDownFill','');// eslint-disable-next-line\nvar BIconFileArrowUp=/*#__PURE__*/makeIcon('FileArrowUp','');// eslint-disable-next-line\nvar BIconFileArrowUpFill=/*#__PURE__*/makeIcon('FileArrowUpFill','');// eslint-disable-next-line\nvar BIconFileBarGraph=/*#__PURE__*/makeIcon('FileBarGraph','');// eslint-disable-next-line\nvar BIconFileBarGraphFill=/*#__PURE__*/makeIcon('FileBarGraphFill','');// eslint-disable-next-line\nvar BIconFileBinary=/*#__PURE__*/makeIcon('FileBinary','');// eslint-disable-next-line\nvar BIconFileBinaryFill=/*#__PURE__*/makeIcon('FileBinaryFill','');// eslint-disable-next-line\nvar BIconFileBreak=/*#__PURE__*/makeIcon('FileBreak','');// eslint-disable-next-line\nvar BIconFileBreakFill=/*#__PURE__*/makeIcon('FileBreakFill','');// eslint-disable-next-line\nvar BIconFileCheck=/*#__PURE__*/makeIcon('FileCheck','');// eslint-disable-next-line\nvar BIconFileCheckFill=/*#__PURE__*/makeIcon('FileCheckFill','');// eslint-disable-next-line\nvar BIconFileCode=/*#__PURE__*/makeIcon('FileCode','');// eslint-disable-next-line\nvar BIconFileCodeFill=/*#__PURE__*/makeIcon('FileCodeFill','');// eslint-disable-next-line\nvar BIconFileDiff=/*#__PURE__*/makeIcon('FileDiff','');// eslint-disable-next-line\nvar BIconFileDiffFill=/*#__PURE__*/makeIcon('FileDiffFill','');// eslint-disable-next-line\nvar BIconFileEarmark=/*#__PURE__*/makeIcon('FileEarmark','');// eslint-disable-next-line\nvar BIconFileEarmarkArrowDown=/*#__PURE__*/makeIcon('FileEarmarkArrowDown','');// eslint-disable-next-line\nvar BIconFileEarmarkArrowDownFill=/*#__PURE__*/makeIcon('FileEarmarkArrowDownFill','');// eslint-disable-next-line\nvar BIconFileEarmarkArrowUp=/*#__PURE__*/makeIcon('FileEarmarkArrowUp','');// eslint-disable-next-line\nvar BIconFileEarmarkArrowUpFill=/*#__PURE__*/makeIcon('FileEarmarkArrowUpFill','');// eslint-disable-next-line\nvar BIconFileEarmarkBarGraph=/*#__PURE__*/makeIcon('FileEarmarkBarGraph','');// eslint-disable-next-line\nvar BIconFileEarmarkBarGraphFill=/*#__PURE__*/makeIcon('FileEarmarkBarGraphFill','');// eslint-disable-next-line\nvar BIconFileEarmarkBinary=/*#__PURE__*/makeIcon('FileEarmarkBinary','');// eslint-disable-next-line\nvar BIconFileEarmarkBinaryFill=/*#__PURE__*/makeIcon('FileEarmarkBinaryFill','');// eslint-disable-next-line\nvar BIconFileEarmarkBreak=/*#__PURE__*/makeIcon('FileEarmarkBreak','');// eslint-disable-next-line\nvar BIconFileEarmarkBreakFill=/*#__PURE__*/makeIcon('FileEarmarkBreakFill','');// eslint-disable-next-line\nvar BIconFileEarmarkCheck=/*#__PURE__*/makeIcon('FileEarmarkCheck','');// eslint-disable-next-line\nvar BIconFileEarmarkCheckFill=/*#__PURE__*/makeIcon('FileEarmarkCheckFill','');// eslint-disable-next-line\nvar BIconFileEarmarkCode=/*#__PURE__*/makeIcon('FileEarmarkCode','');// eslint-disable-next-line\nvar BIconFileEarmarkCodeFill=/*#__PURE__*/makeIcon('FileEarmarkCodeFill','');// eslint-disable-next-line\nvar BIconFileEarmarkDiff=/*#__PURE__*/makeIcon('FileEarmarkDiff','');// eslint-disable-next-line\nvar BIconFileEarmarkDiffFill=/*#__PURE__*/makeIcon('FileEarmarkDiffFill','');// eslint-disable-next-line\nvar BIconFileEarmarkEasel=/*#__PURE__*/makeIcon('FileEarmarkEasel','');// eslint-disable-next-line\nvar BIconFileEarmarkEaselFill=/*#__PURE__*/makeIcon('FileEarmarkEaselFill','');// eslint-disable-next-line\nvar BIconFileEarmarkExcel=/*#__PURE__*/makeIcon('FileEarmarkExcel','');// eslint-disable-next-line\nvar BIconFileEarmarkExcelFill=/*#__PURE__*/makeIcon('FileEarmarkExcelFill','');// eslint-disable-next-line\nvar BIconFileEarmarkFill=/*#__PURE__*/makeIcon('FileEarmarkFill','');// eslint-disable-next-line\nvar BIconFileEarmarkFont=/*#__PURE__*/makeIcon('FileEarmarkFont','');// eslint-disable-next-line\nvar BIconFileEarmarkFontFill=/*#__PURE__*/makeIcon('FileEarmarkFontFill','');// eslint-disable-next-line\nvar BIconFileEarmarkImage=/*#__PURE__*/makeIcon('FileEarmarkImage','');// eslint-disable-next-line\nvar BIconFileEarmarkImageFill=/*#__PURE__*/makeIcon('FileEarmarkImageFill','');// eslint-disable-next-line\nvar BIconFileEarmarkLock=/*#__PURE__*/makeIcon('FileEarmarkLock','');// eslint-disable-next-line\nvar BIconFileEarmarkLock2=/*#__PURE__*/makeIcon('FileEarmarkLock2','');// eslint-disable-next-line\nvar BIconFileEarmarkLock2Fill=/*#__PURE__*/makeIcon('FileEarmarkLock2Fill','');// eslint-disable-next-line\nvar BIconFileEarmarkLockFill=/*#__PURE__*/makeIcon('FileEarmarkLockFill','');// eslint-disable-next-line\nvar BIconFileEarmarkMedical=/*#__PURE__*/makeIcon('FileEarmarkMedical','');// eslint-disable-next-line\nvar BIconFileEarmarkMedicalFill=/*#__PURE__*/makeIcon('FileEarmarkMedicalFill','');// eslint-disable-next-line\nvar BIconFileEarmarkMinus=/*#__PURE__*/makeIcon('FileEarmarkMinus','');// eslint-disable-next-line\nvar BIconFileEarmarkMinusFill=/*#__PURE__*/makeIcon('FileEarmarkMinusFill','');// eslint-disable-next-line\nvar BIconFileEarmarkMusic=/*#__PURE__*/makeIcon('FileEarmarkMusic','');// eslint-disable-next-line\nvar BIconFileEarmarkMusicFill=/*#__PURE__*/makeIcon('FileEarmarkMusicFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPdf=/*#__PURE__*/makeIcon('FileEarmarkPdf','');// eslint-disable-next-line\nvar BIconFileEarmarkPdfFill=/*#__PURE__*/makeIcon('FileEarmarkPdfFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPerson=/*#__PURE__*/makeIcon('FileEarmarkPerson','');// eslint-disable-next-line\nvar BIconFileEarmarkPersonFill=/*#__PURE__*/makeIcon('FileEarmarkPersonFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPlay=/*#__PURE__*/makeIcon('FileEarmarkPlay','');// eslint-disable-next-line\nvar BIconFileEarmarkPlayFill=/*#__PURE__*/makeIcon('FileEarmarkPlayFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPlus=/*#__PURE__*/makeIcon('FileEarmarkPlus','');// eslint-disable-next-line\nvar BIconFileEarmarkPlusFill=/*#__PURE__*/makeIcon('FileEarmarkPlusFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPost=/*#__PURE__*/makeIcon('FileEarmarkPost','');// eslint-disable-next-line\nvar BIconFileEarmarkPostFill=/*#__PURE__*/makeIcon('FileEarmarkPostFill','');// eslint-disable-next-line\nvar BIconFileEarmarkPpt=/*#__PURE__*/makeIcon('FileEarmarkPpt','');// eslint-disable-next-line\nvar BIconFileEarmarkPptFill=/*#__PURE__*/makeIcon('FileEarmarkPptFill','');// eslint-disable-next-line\nvar BIconFileEarmarkRichtext=/*#__PURE__*/makeIcon('FileEarmarkRichtext','');// eslint-disable-next-line\nvar BIconFileEarmarkRichtextFill=/*#__PURE__*/makeIcon('FileEarmarkRichtextFill','');// eslint-disable-next-line\nvar BIconFileEarmarkRuled=/*#__PURE__*/makeIcon('FileEarmarkRuled','');// eslint-disable-next-line\nvar BIconFileEarmarkRuledFill=/*#__PURE__*/makeIcon('FileEarmarkRuledFill','');// eslint-disable-next-line\nvar BIconFileEarmarkSlides=/*#__PURE__*/makeIcon('FileEarmarkSlides','');// eslint-disable-next-line\nvar BIconFileEarmarkSlidesFill=/*#__PURE__*/makeIcon('FileEarmarkSlidesFill','');// eslint-disable-next-line\nvar BIconFileEarmarkSpreadsheet=/*#__PURE__*/makeIcon('FileEarmarkSpreadsheet','');// eslint-disable-next-line\nvar BIconFileEarmarkSpreadsheetFill=/*#__PURE__*/makeIcon('FileEarmarkSpreadsheetFill','');// eslint-disable-next-line\nvar BIconFileEarmarkText=/*#__PURE__*/makeIcon('FileEarmarkText','');// eslint-disable-next-line\nvar BIconFileEarmarkTextFill=/*#__PURE__*/makeIcon('FileEarmarkTextFill','');// eslint-disable-next-line\nvar BIconFileEarmarkWord=/*#__PURE__*/makeIcon('FileEarmarkWord','');// eslint-disable-next-line\nvar BIconFileEarmarkWordFill=/*#__PURE__*/makeIcon('FileEarmarkWordFill','');// eslint-disable-next-line\nvar BIconFileEarmarkX=/*#__PURE__*/makeIcon('FileEarmarkX','');// eslint-disable-next-line\nvar BIconFileEarmarkXFill=/*#__PURE__*/makeIcon('FileEarmarkXFill','');// eslint-disable-next-line\nvar BIconFileEarmarkZip=/*#__PURE__*/makeIcon('FileEarmarkZip','');// eslint-disable-next-line\nvar BIconFileEarmarkZipFill=/*#__PURE__*/makeIcon('FileEarmarkZipFill','');// eslint-disable-next-line\nvar BIconFileEasel=/*#__PURE__*/makeIcon('FileEasel','');// eslint-disable-next-line\nvar BIconFileEaselFill=/*#__PURE__*/makeIcon('FileEaselFill','');// eslint-disable-next-line\nvar BIconFileExcel=/*#__PURE__*/makeIcon('FileExcel','');// eslint-disable-next-line\nvar BIconFileExcelFill=/*#__PURE__*/makeIcon('FileExcelFill','');// eslint-disable-next-line\nvar BIconFileFill=/*#__PURE__*/makeIcon('FileFill','');// eslint-disable-next-line\nvar BIconFileFont=/*#__PURE__*/makeIcon('FileFont','');// eslint-disable-next-line\nvar BIconFileFontFill=/*#__PURE__*/makeIcon('FileFontFill','');// eslint-disable-next-line\nvar BIconFileImage=/*#__PURE__*/makeIcon('FileImage','');// eslint-disable-next-line\nvar BIconFileImageFill=/*#__PURE__*/makeIcon('FileImageFill','');// eslint-disable-next-line\nvar BIconFileLock=/*#__PURE__*/makeIcon('FileLock','');// eslint-disable-next-line\nvar BIconFileLock2=/*#__PURE__*/makeIcon('FileLock2','');// eslint-disable-next-line\nvar BIconFileLock2Fill=/*#__PURE__*/makeIcon('FileLock2Fill','');// eslint-disable-next-line\nvar BIconFileLockFill=/*#__PURE__*/makeIcon('FileLockFill','');// eslint-disable-next-line\nvar BIconFileMedical=/*#__PURE__*/makeIcon('FileMedical','');// eslint-disable-next-line\nvar BIconFileMedicalFill=/*#__PURE__*/makeIcon('FileMedicalFill','');// eslint-disable-next-line\nvar BIconFileMinus=/*#__PURE__*/makeIcon('FileMinus','');// eslint-disable-next-line\nvar BIconFileMinusFill=/*#__PURE__*/makeIcon('FileMinusFill','');// eslint-disable-next-line\nvar BIconFileMusic=/*#__PURE__*/makeIcon('FileMusic','');// eslint-disable-next-line\nvar BIconFileMusicFill=/*#__PURE__*/makeIcon('FileMusicFill','');// eslint-disable-next-line\nvar BIconFilePdf=/*#__PURE__*/makeIcon('FilePdf','');// eslint-disable-next-line\nvar BIconFilePdfFill=/*#__PURE__*/makeIcon('FilePdfFill','');// eslint-disable-next-line\nvar BIconFilePerson=/*#__PURE__*/makeIcon('FilePerson','');// eslint-disable-next-line\nvar BIconFilePersonFill=/*#__PURE__*/makeIcon('FilePersonFill','');// eslint-disable-next-line\nvar BIconFilePlay=/*#__PURE__*/makeIcon('FilePlay','');// eslint-disable-next-line\nvar BIconFilePlayFill=/*#__PURE__*/makeIcon('FilePlayFill','');// eslint-disable-next-line\nvar BIconFilePlus=/*#__PURE__*/makeIcon('FilePlus','');// eslint-disable-next-line\nvar BIconFilePlusFill=/*#__PURE__*/makeIcon('FilePlusFill','');// eslint-disable-next-line\nvar BIconFilePost=/*#__PURE__*/makeIcon('FilePost','');// eslint-disable-next-line\nvar BIconFilePostFill=/*#__PURE__*/makeIcon('FilePostFill','');// eslint-disable-next-line\nvar BIconFilePpt=/*#__PURE__*/makeIcon('FilePpt','');// eslint-disable-next-line\nvar BIconFilePptFill=/*#__PURE__*/makeIcon('FilePptFill','');// eslint-disable-next-line\nvar BIconFileRichtext=/*#__PURE__*/makeIcon('FileRichtext','');// eslint-disable-next-line\nvar BIconFileRichtextFill=/*#__PURE__*/makeIcon('FileRichtextFill','');// eslint-disable-next-line\nvar BIconFileRuled=/*#__PURE__*/makeIcon('FileRuled','');// eslint-disable-next-line\nvar BIconFileRuledFill=/*#__PURE__*/makeIcon('FileRuledFill','');// eslint-disable-next-line\nvar BIconFileSlides=/*#__PURE__*/makeIcon('FileSlides','');// eslint-disable-next-line\nvar BIconFileSlidesFill=/*#__PURE__*/makeIcon('FileSlidesFill','');// eslint-disable-next-line\nvar BIconFileSpreadsheet=/*#__PURE__*/makeIcon('FileSpreadsheet','');// eslint-disable-next-line\nvar BIconFileSpreadsheetFill=/*#__PURE__*/makeIcon('FileSpreadsheetFill','');// eslint-disable-next-line\nvar BIconFileText=/*#__PURE__*/makeIcon('FileText','');// eslint-disable-next-line\nvar BIconFileTextFill=/*#__PURE__*/makeIcon('FileTextFill','');// eslint-disable-next-line\nvar BIconFileWord=/*#__PURE__*/makeIcon('FileWord','');// eslint-disable-next-line\nvar BIconFileWordFill=/*#__PURE__*/makeIcon('FileWordFill','');// eslint-disable-next-line\nvar BIconFileX=/*#__PURE__*/makeIcon('FileX','');// eslint-disable-next-line\nvar BIconFileXFill=/*#__PURE__*/makeIcon('FileXFill','');// eslint-disable-next-line\nvar BIconFileZip=/*#__PURE__*/makeIcon('FileZip','');// eslint-disable-next-line\nvar BIconFileZipFill=/*#__PURE__*/makeIcon('FileZipFill','');// eslint-disable-next-line\nvar BIconFiles=/*#__PURE__*/makeIcon('Files','');// eslint-disable-next-line\nvar BIconFilesAlt=/*#__PURE__*/makeIcon('FilesAlt','');// eslint-disable-next-line\nvar BIconFilm=/*#__PURE__*/makeIcon('Film','');// eslint-disable-next-line\nvar BIconFilter=/*#__PURE__*/makeIcon('Filter','');// eslint-disable-next-line\nvar BIconFilterCircle=/*#__PURE__*/makeIcon('FilterCircle','');// eslint-disable-next-line\nvar BIconFilterCircleFill=/*#__PURE__*/makeIcon('FilterCircleFill','');// eslint-disable-next-line\nvar BIconFilterLeft=/*#__PURE__*/makeIcon('FilterLeft','');// eslint-disable-next-line\nvar BIconFilterRight=/*#__PURE__*/makeIcon('FilterRight','');// eslint-disable-next-line\nvar BIconFilterSquare=/*#__PURE__*/makeIcon('FilterSquare','');// eslint-disable-next-line\nvar BIconFilterSquareFill=/*#__PURE__*/makeIcon('FilterSquareFill','');// eslint-disable-next-line\nvar BIconFlag=/*#__PURE__*/makeIcon('Flag','');// eslint-disable-next-line\nvar BIconFlagFill=/*#__PURE__*/makeIcon('FlagFill','');// eslint-disable-next-line\nvar BIconFlower1=/*#__PURE__*/makeIcon('Flower1','');// eslint-disable-next-line\nvar BIconFlower2=/*#__PURE__*/makeIcon('Flower2','');// eslint-disable-next-line\nvar BIconFlower3=/*#__PURE__*/makeIcon('Flower3','');// eslint-disable-next-line\nvar BIconFolder=/*#__PURE__*/makeIcon('Folder','');// eslint-disable-next-line\nvar BIconFolder2=/*#__PURE__*/makeIcon('Folder2','');// eslint-disable-next-line\nvar BIconFolder2Open=/*#__PURE__*/makeIcon('Folder2Open','');// eslint-disable-next-line\nvar BIconFolderCheck=/*#__PURE__*/makeIcon('FolderCheck','');// eslint-disable-next-line\nvar BIconFolderFill=/*#__PURE__*/makeIcon('FolderFill','');// eslint-disable-next-line\nvar BIconFolderMinus=/*#__PURE__*/makeIcon('FolderMinus','');// eslint-disable-next-line\nvar BIconFolderPlus=/*#__PURE__*/makeIcon('FolderPlus','');// eslint-disable-next-line\nvar BIconFolderSymlink=/*#__PURE__*/makeIcon('FolderSymlink','');// eslint-disable-next-line\nvar BIconFolderSymlinkFill=/*#__PURE__*/makeIcon('FolderSymlinkFill','');// eslint-disable-next-line\nvar BIconFolderX=/*#__PURE__*/makeIcon('FolderX','');// eslint-disable-next-line\nvar BIconFonts=/*#__PURE__*/makeIcon('Fonts','');// eslint-disable-next-line\nvar BIconForward=/*#__PURE__*/makeIcon('Forward','');// eslint-disable-next-line\nvar BIconForwardFill=/*#__PURE__*/makeIcon('ForwardFill','');// eslint-disable-next-line\nvar BIconFront=/*#__PURE__*/makeIcon('Front','');// eslint-disable-next-line\nvar BIconFullscreen=/*#__PURE__*/makeIcon('Fullscreen','');// eslint-disable-next-line\nvar BIconFullscreenExit=/*#__PURE__*/makeIcon('FullscreenExit','');// eslint-disable-next-line\nvar BIconFunnel=/*#__PURE__*/makeIcon('Funnel','');// eslint-disable-next-line\nvar BIconFunnelFill=/*#__PURE__*/makeIcon('FunnelFill','');// eslint-disable-next-line\nvar BIconGear=/*#__PURE__*/makeIcon('Gear','');// eslint-disable-next-line\nvar BIconGearFill=/*#__PURE__*/makeIcon('GearFill','');// eslint-disable-next-line\nvar BIconGearWide=/*#__PURE__*/makeIcon('GearWide','');// eslint-disable-next-line\nvar BIconGearWideConnected=/*#__PURE__*/makeIcon('GearWideConnected','');// eslint-disable-next-line\nvar BIconGem=/*#__PURE__*/makeIcon('Gem','');// eslint-disable-next-line\nvar BIconGenderAmbiguous=/*#__PURE__*/makeIcon('GenderAmbiguous','');// eslint-disable-next-line\nvar BIconGenderFemale=/*#__PURE__*/makeIcon('GenderFemale','');// eslint-disable-next-line\nvar BIconGenderMale=/*#__PURE__*/makeIcon('GenderMale','');// eslint-disable-next-line\nvar BIconGenderTrans=/*#__PURE__*/makeIcon('GenderTrans','');// eslint-disable-next-line\nvar BIconGeo=/*#__PURE__*/makeIcon('Geo','');// eslint-disable-next-line\nvar BIconGeoAlt=/*#__PURE__*/makeIcon('GeoAlt','');// eslint-disable-next-line\nvar BIconGeoAltFill=/*#__PURE__*/makeIcon('GeoAltFill','');// eslint-disable-next-line\nvar BIconGeoFill=/*#__PURE__*/makeIcon('GeoFill','');// eslint-disable-next-line\nvar BIconGift=/*#__PURE__*/makeIcon('Gift','');// eslint-disable-next-line\nvar BIconGiftFill=/*#__PURE__*/makeIcon('GiftFill','');// eslint-disable-next-line\nvar BIconGithub=/*#__PURE__*/makeIcon('Github','');// eslint-disable-next-line\nvar BIconGlobe=/*#__PURE__*/makeIcon('Globe','');// eslint-disable-next-line\nvar BIconGlobe2=/*#__PURE__*/makeIcon('Globe2','');// eslint-disable-next-line\nvar BIconGoogle=/*#__PURE__*/makeIcon('Google','');// eslint-disable-next-line\nvar BIconGraphDown=/*#__PURE__*/makeIcon('GraphDown','');// eslint-disable-next-line\nvar BIconGraphUp=/*#__PURE__*/makeIcon('GraphUp','');// eslint-disable-next-line\nvar BIconGrid=/*#__PURE__*/makeIcon('Grid','');// eslint-disable-next-line\nvar BIconGrid1x2=/*#__PURE__*/makeIcon('Grid1x2','');// eslint-disable-next-line\nvar BIconGrid1x2Fill=/*#__PURE__*/makeIcon('Grid1x2Fill','');// eslint-disable-next-line\nvar BIconGrid3x2=/*#__PURE__*/makeIcon('Grid3x2','');// eslint-disable-next-line\nvar BIconGrid3x2Gap=/*#__PURE__*/makeIcon('Grid3x2Gap','');// eslint-disable-next-line\nvar BIconGrid3x2GapFill=/*#__PURE__*/makeIcon('Grid3x2GapFill','');// eslint-disable-next-line\nvar BIconGrid3x3=/*#__PURE__*/makeIcon('Grid3x3','');// eslint-disable-next-line\nvar BIconGrid3x3Gap=/*#__PURE__*/makeIcon('Grid3x3Gap','');// eslint-disable-next-line\nvar BIconGrid3x3GapFill=/*#__PURE__*/makeIcon('Grid3x3GapFill','');// eslint-disable-next-line\nvar BIconGridFill=/*#__PURE__*/makeIcon('GridFill','');// eslint-disable-next-line\nvar BIconGripHorizontal=/*#__PURE__*/makeIcon('GripHorizontal','');// eslint-disable-next-line\nvar BIconGripVertical=/*#__PURE__*/makeIcon('GripVertical','');// eslint-disable-next-line\nvar BIconHammer=/*#__PURE__*/makeIcon('Hammer','');// eslint-disable-next-line\nvar BIconHandIndex=/*#__PURE__*/makeIcon('HandIndex','');// eslint-disable-next-line\nvar BIconHandIndexFill=/*#__PURE__*/makeIcon('HandIndexFill','');// eslint-disable-next-line\nvar BIconHandIndexThumb=/*#__PURE__*/makeIcon('HandIndexThumb','');// eslint-disable-next-line\nvar BIconHandIndexThumbFill=/*#__PURE__*/makeIcon('HandIndexThumbFill','');// eslint-disable-next-line\nvar BIconHandThumbsDown=/*#__PURE__*/makeIcon('HandThumbsDown','');// eslint-disable-next-line\nvar BIconHandThumbsDownFill=/*#__PURE__*/makeIcon('HandThumbsDownFill','');// eslint-disable-next-line\nvar BIconHandThumbsUp=/*#__PURE__*/makeIcon('HandThumbsUp','');// eslint-disable-next-line\nvar BIconHandThumbsUpFill=/*#__PURE__*/makeIcon('HandThumbsUpFill','');// eslint-disable-next-line\nvar BIconHandbag=/*#__PURE__*/makeIcon('Handbag','');// eslint-disable-next-line\nvar BIconHandbagFill=/*#__PURE__*/makeIcon('HandbagFill','');// eslint-disable-next-line\nvar BIconHash=/*#__PURE__*/makeIcon('Hash','');// eslint-disable-next-line\nvar BIconHdd=/*#__PURE__*/makeIcon('Hdd','');// eslint-disable-next-line\nvar BIconHddFill=/*#__PURE__*/makeIcon('HddFill','');// eslint-disable-next-line\nvar BIconHddNetwork=/*#__PURE__*/makeIcon('HddNetwork','');// eslint-disable-next-line\nvar BIconHddNetworkFill=/*#__PURE__*/makeIcon('HddNetworkFill','');// eslint-disable-next-line\nvar BIconHddRack=/*#__PURE__*/makeIcon('HddRack','');// eslint-disable-next-line\nvar BIconHddRackFill=/*#__PURE__*/makeIcon('HddRackFill','');// eslint-disable-next-line\nvar BIconHddStack=/*#__PURE__*/makeIcon('HddStack','');// eslint-disable-next-line\nvar BIconHddStackFill=/*#__PURE__*/makeIcon('HddStackFill','');// eslint-disable-next-line\nvar BIconHeadphones=/*#__PURE__*/makeIcon('Headphones','');// eslint-disable-next-line\nvar BIconHeadset=/*#__PURE__*/makeIcon('Headset','');// eslint-disable-next-line\nvar BIconHeadsetVr=/*#__PURE__*/makeIcon('HeadsetVr','');// eslint-disable-next-line\nvar BIconHeart=/*#__PURE__*/makeIcon('Heart','');// eslint-disable-next-line\nvar BIconHeartFill=/*#__PURE__*/makeIcon('HeartFill','');// eslint-disable-next-line\nvar BIconHeartHalf=/*#__PURE__*/makeIcon('HeartHalf','');// eslint-disable-next-line\nvar BIconHeptagon=/*#__PURE__*/makeIcon('Heptagon','');// eslint-disable-next-line\nvar BIconHeptagonFill=/*#__PURE__*/makeIcon('HeptagonFill','');// eslint-disable-next-line\nvar BIconHeptagonHalf=/*#__PURE__*/makeIcon('HeptagonHalf','');// eslint-disable-next-line\nvar BIconHexagon=/*#__PURE__*/makeIcon('Hexagon','');// eslint-disable-next-line\nvar BIconHexagonFill=/*#__PURE__*/makeIcon('HexagonFill','');// eslint-disable-next-line\nvar BIconHexagonHalf=/*#__PURE__*/makeIcon('HexagonHalf','');// eslint-disable-next-line\nvar BIconHourglass=/*#__PURE__*/makeIcon('Hourglass','');// eslint-disable-next-line\nvar BIconHourglassBottom=/*#__PURE__*/makeIcon('HourglassBottom','');// eslint-disable-next-line\nvar BIconHourglassSplit=/*#__PURE__*/makeIcon('HourglassSplit','');// eslint-disable-next-line\nvar BIconHourglassTop=/*#__PURE__*/makeIcon('HourglassTop','');// eslint-disable-next-line\nvar BIconHouse=/*#__PURE__*/makeIcon('House','');// eslint-disable-next-line\nvar BIconHouseDoor=/*#__PURE__*/makeIcon('HouseDoor','');// eslint-disable-next-line\nvar BIconHouseDoorFill=/*#__PURE__*/makeIcon('HouseDoorFill','');// eslint-disable-next-line\nvar BIconHouseFill=/*#__PURE__*/makeIcon('HouseFill','');// eslint-disable-next-line\nvar BIconHr=/*#__PURE__*/makeIcon('Hr','');// eslint-disable-next-line\nvar BIconHurricane=/*#__PURE__*/makeIcon('Hurricane','');// eslint-disable-next-line\nvar BIconImage=/*#__PURE__*/makeIcon('Image','');// eslint-disable-next-line\nvar BIconImageAlt=/*#__PURE__*/makeIcon('ImageAlt','');// eslint-disable-next-line\nvar BIconImageFill=/*#__PURE__*/makeIcon('ImageFill','');// eslint-disable-next-line\nvar BIconImages=/*#__PURE__*/makeIcon('Images','');// eslint-disable-next-line\nvar BIconInbox=/*#__PURE__*/makeIcon('Inbox','');// eslint-disable-next-line\nvar BIconInboxFill=/*#__PURE__*/makeIcon('InboxFill','');// eslint-disable-next-line\nvar BIconInboxes=/*#__PURE__*/makeIcon('Inboxes','');// eslint-disable-next-line\nvar BIconInboxesFill=/*#__PURE__*/makeIcon('InboxesFill','');// eslint-disable-next-line\nvar BIconInfo=/*#__PURE__*/makeIcon('Info','');// eslint-disable-next-line\nvar BIconInfoCircle=/*#__PURE__*/makeIcon('InfoCircle','');// eslint-disable-next-line\nvar BIconInfoCircleFill=/*#__PURE__*/makeIcon('InfoCircleFill','');// eslint-disable-next-line\nvar BIconInfoLg=/*#__PURE__*/makeIcon('InfoLg','');// eslint-disable-next-line\nvar BIconInfoSquare=/*#__PURE__*/makeIcon('InfoSquare','');// eslint-disable-next-line\nvar BIconInfoSquareFill=/*#__PURE__*/makeIcon('InfoSquareFill','');// eslint-disable-next-line\nvar BIconInputCursor=/*#__PURE__*/makeIcon('InputCursor','');// eslint-disable-next-line\nvar BIconInputCursorText=/*#__PURE__*/makeIcon('InputCursorText','');// eslint-disable-next-line\nvar BIconInstagram=/*#__PURE__*/makeIcon('Instagram','');// eslint-disable-next-line\nvar BIconIntersect=/*#__PURE__*/makeIcon('Intersect','');// eslint-disable-next-line\nvar BIconJournal=/*#__PURE__*/makeIcon('Journal','');// eslint-disable-next-line\nvar BIconJournalAlbum=/*#__PURE__*/makeIcon('JournalAlbum','');// eslint-disable-next-line\nvar BIconJournalArrowDown=/*#__PURE__*/makeIcon('JournalArrowDown','');// eslint-disable-next-line\nvar BIconJournalArrowUp=/*#__PURE__*/makeIcon('JournalArrowUp','');// eslint-disable-next-line\nvar BIconJournalBookmark=/*#__PURE__*/makeIcon('JournalBookmark','');// eslint-disable-next-line\nvar BIconJournalBookmarkFill=/*#__PURE__*/makeIcon('JournalBookmarkFill','');// eslint-disable-next-line\nvar BIconJournalCheck=/*#__PURE__*/makeIcon('JournalCheck','');// eslint-disable-next-line\nvar BIconJournalCode=/*#__PURE__*/makeIcon('JournalCode','');// eslint-disable-next-line\nvar BIconJournalMedical=/*#__PURE__*/makeIcon('JournalMedical','');// eslint-disable-next-line\nvar BIconJournalMinus=/*#__PURE__*/makeIcon('JournalMinus','');// eslint-disable-next-line\nvar BIconJournalPlus=/*#__PURE__*/makeIcon('JournalPlus','');// eslint-disable-next-line\nvar BIconJournalRichtext=/*#__PURE__*/makeIcon('JournalRichtext','');// eslint-disable-next-line\nvar BIconJournalText=/*#__PURE__*/makeIcon('JournalText','');// eslint-disable-next-line\nvar BIconJournalX=/*#__PURE__*/makeIcon('JournalX','');// eslint-disable-next-line\nvar BIconJournals=/*#__PURE__*/makeIcon('Journals','');// eslint-disable-next-line\nvar BIconJoystick=/*#__PURE__*/makeIcon('Joystick','');// eslint-disable-next-line\nvar BIconJustify=/*#__PURE__*/makeIcon('Justify','');// eslint-disable-next-line\nvar BIconJustifyLeft=/*#__PURE__*/makeIcon('JustifyLeft','');// eslint-disable-next-line\nvar BIconJustifyRight=/*#__PURE__*/makeIcon('JustifyRight','');// eslint-disable-next-line\nvar BIconKanban=/*#__PURE__*/makeIcon('Kanban','');// eslint-disable-next-line\nvar BIconKanbanFill=/*#__PURE__*/makeIcon('KanbanFill','');// eslint-disable-next-line\nvar BIconKey=/*#__PURE__*/makeIcon('Key','');// eslint-disable-next-line\nvar BIconKeyFill=/*#__PURE__*/makeIcon('KeyFill','');// eslint-disable-next-line\nvar BIconKeyboard=/*#__PURE__*/makeIcon('Keyboard','');// eslint-disable-next-line\nvar BIconKeyboardFill=/*#__PURE__*/makeIcon('KeyboardFill','');// eslint-disable-next-line\nvar BIconLadder=/*#__PURE__*/makeIcon('Ladder','');// eslint-disable-next-line\nvar BIconLamp=/*#__PURE__*/makeIcon('Lamp','');// eslint-disable-next-line\nvar BIconLampFill=/*#__PURE__*/makeIcon('LampFill','');// eslint-disable-next-line\nvar BIconLaptop=/*#__PURE__*/makeIcon('Laptop','');// eslint-disable-next-line\nvar BIconLaptopFill=/*#__PURE__*/makeIcon('LaptopFill','');// eslint-disable-next-line\nvar BIconLayerBackward=/*#__PURE__*/makeIcon('LayerBackward','');// eslint-disable-next-line\nvar BIconLayerForward=/*#__PURE__*/makeIcon('LayerForward','');// eslint-disable-next-line\nvar BIconLayers=/*#__PURE__*/makeIcon('Layers','');// eslint-disable-next-line\nvar BIconLayersFill=/*#__PURE__*/makeIcon('LayersFill','');// eslint-disable-next-line\nvar BIconLayersHalf=/*#__PURE__*/makeIcon('LayersHalf','');// eslint-disable-next-line\nvar BIconLayoutSidebar=/*#__PURE__*/makeIcon('LayoutSidebar','');// eslint-disable-next-line\nvar BIconLayoutSidebarInset=/*#__PURE__*/makeIcon('LayoutSidebarInset','');// eslint-disable-next-line\nvar BIconLayoutSidebarInsetReverse=/*#__PURE__*/makeIcon('LayoutSidebarInsetReverse','');// eslint-disable-next-line\nvar BIconLayoutSidebarReverse=/*#__PURE__*/makeIcon('LayoutSidebarReverse','');// eslint-disable-next-line\nvar BIconLayoutSplit=/*#__PURE__*/makeIcon('LayoutSplit','');// eslint-disable-next-line\nvar BIconLayoutTextSidebar=/*#__PURE__*/makeIcon('LayoutTextSidebar','');// eslint-disable-next-line\nvar BIconLayoutTextSidebarReverse=/*#__PURE__*/makeIcon('LayoutTextSidebarReverse','');// eslint-disable-next-line\nvar BIconLayoutTextWindow=/*#__PURE__*/makeIcon('LayoutTextWindow','');// eslint-disable-next-line\nvar BIconLayoutTextWindowReverse=/*#__PURE__*/makeIcon('LayoutTextWindowReverse','');// eslint-disable-next-line\nvar BIconLayoutThreeColumns=/*#__PURE__*/makeIcon('LayoutThreeColumns','');// eslint-disable-next-line\nvar BIconLayoutWtf=/*#__PURE__*/makeIcon('LayoutWtf','');// eslint-disable-next-line\nvar BIconLifePreserver=/*#__PURE__*/makeIcon('LifePreserver','');// eslint-disable-next-line\nvar BIconLightbulb=/*#__PURE__*/makeIcon('Lightbulb','');// eslint-disable-next-line\nvar BIconLightbulbFill=/*#__PURE__*/makeIcon('LightbulbFill','');// eslint-disable-next-line\nvar BIconLightbulbOff=/*#__PURE__*/makeIcon('LightbulbOff','');// eslint-disable-next-line\nvar BIconLightbulbOffFill=/*#__PURE__*/makeIcon('LightbulbOffFill','');// eslint-disable-next-line\nvar BIconLightning=/*#__PURE__*/makeIcon('Lightning','');// eslint-disable-next-line\nvar BIconLightningCharge=/*#__PURE__*/makeIcon('LightningCharge','');// eslint-disable-next-line\nvar BIconLightningChargeFill=/*#__PURE__*/makeIcon('LightningChargeFill','');// eslint-disable-next-line\nvar BIconLightningFill=/*#__PURE__*/makeIcon('LightningFill','');// eslint-disable-next-line\nvar BIconLink=/*#__PURE__*/makeIcon('Link','');// eslint-disable-next-line\nvar BIconLink45deg=/*#__PURE__*/makeIcon('Link45deg','');// eslint-disable-next-line\nvar BIconLinkedin=/*#__PURE__*/makeIcon('Linkedin','');// eslint-disable-next-line\nvar BIconList=/*#__PURE__*/makeIcon('List','');// eslint-disable-next-line\nvar BIconListCheck=/*#__PURE__*/makeIcon('ListCheck','');// eslint-disable-next-line\nvar BIconListNested=/*#__PURE__*/makeIcon('ListNested','');// eslint-disable-next-line\nvar BIconListOl=/*#__PURE__*/makeIcon('ListOl','');// eslint-disable-next-line\nvar BIconListStars=/*#__PURE__*/makeIcon('ListStars','');// eslint-disable-next-line\nvar BIconListTask=/*#__PURE__*/makeIcon('ListTask','');// eslint-disable-next-line\nvar BIconListUl=/*#__PURE__*/makeIcon('ListUl','');// eslint-disable-next-line\nvar BIconLock=/*#__PURE__*/makeIcon('Lock','');// eslint-disable-next-line\nvar BIconLockFill=/*#__PURE__*/makeIcon('LockFill','');// eslint-disable-next-line\nvar BIconMailbox=/*#__PURE__*/makeIcon('Mailbox','');// eslint-disable-next-line\nvar BIconMailbox2=/*#__PURE__*/makeIcon('Mailbox2','');// eslint-disable-next-line\nvar BIconMap=/*#__PURE__*/makeIcon('Map','');// eslint-disable-next-line\nvar BIconMapFill=/*#__PURE__*/makeIcon('MapFill','');// eslint-disable-next-line\nvar BIconMarkdown=/*#__PURE__*/makeIcon('Markdown','');// eslint-disable-next-line\nvar BIconMarkdownFill=/*#__PURE__*/makeIcon('MarkdownFill','');// eslint-disable-next-line\nvar BIconMask=/*#__PURE__*/makeIcon('Mask','');// eslint-disable-next-line\nvar BIconMastodon=/*#__PURE__*/makeIcon('Mastodon','');// eslint-disable-next-line\nvar BIconMegaphone=/*#__PURE__*/makeIcon('Megaphone','');// eslint-disable-next-line\nvar BIconMegaphoneFill=/*#__PURE__*/makeIcon('MegaphoneFill','');// eslint-disable-next-line\nvar BIconMenuApp=/*#__PURE__*/makeIcon('MenuApp','');// eslint-disable-next-line\nvar BIconMenuAppFill=/*#__PURE__*/makeIcon('MenuAppFill','');// eslint-disable-next-line\nvar BIconMenuButton=/*#__PURE__*/makeIcon('MenuButton','');// eslint-disable-next-line\nvar BIconMenuButtonFill=/*#__PURE__*/makeIcon('MenuButtonFill','');// eslint-disable-next-line\nvar BIconMenuButtonWide=/*#__PURE__*/makeIcon('MenuButtonWide','');// eslint-disable-next-line\nvar BIconMenuButtonWideFill=/*#__PURE__*/makeIcon('MenuButtonWideFill','');// eslint-disable-next-line\nvar BIconMenuDown=/*#__PURE__*/makeIcon('MenuDown','');// eslint-disable-next-line\nvar BIconMenuUp=/*#__PURE__*/makeIcon('MenuUp','');// eslint-disable-next-line\nvar BIconMessenger=/*#__PURE__*/makeIcon('Messenger','');// eslint-disable-next-line\nvar BIconMic=/*#__PURE__*/makeIcon('Mic','');// eslint-disable-next-line\nvar BIconMicFill=/*#__PURE__*/makeIcon('MicFill','');// eslint-disable-next-line\nvar BIconMicMute=/*#__PURE__*/makeIcon('MicMute','');// eslint-disable-next-line\nvar BIconMicMuteFill=/*#__PURE__*/makeIcon('MicMuteFill','');// eslint-disable-next-line\nvar BIconMinecart=/*#__PURE__*/makeIcon('Minecart','');// eslint-disable-next-line\nvar BIconMinecartLoaded=/*#__PURE__*/makeIcon('MinecartLoaded','');// eslint-disable-next-line\nvar BIconMoisture=/*#__PURE__*/makeIcon('Moisture','');// eslint-disable-next-line\nvar BIconMoon=/*#__PURE__*/makeIcon('Moon','');// eslint-disable-next-line\nvar BIconMoonFill=/*#__PURE__*/makeIcon('MoonFill','');// eslint-disable-next-line\nvar BIconMoonStars=/*#__PURE__*/makeIcon('MoonStars','');// eslint-disable-next-line\nvar BIconMoonStarsFill=/*#__PURE__*/makeIcon('MoonStarsFill','');// eslint-disable-next-line\nvar BIconMouse=/*#__PURE__*/makeIcon('Mouse','');// eslint-disable-next-line\nvar BIconMouse2=/*#__PURE__*/makeIcon('Mouse2','');// eslint-disable-next-line\nvar BIconMouse2Fill=/*#__PURE__*/makeIcon('Mouse2Fill','');// eslint-disable-next-line\nvar BIconMouse3=/*#__PURE__*/makeIcon('Mouse3','');// eslint-disable-next-line\nvar BIconMouse3Fill=/*#__PURE__*/makeIcon('Mouse3Fill','');// eslint-disable-next-line\nvar BIconMouseFill=/*#__PURE__*/makeIcon('MouseFill','');// eslint-disable-next-line\nvar BIconMusicNote=/*#__PURE__*/makeIcon('MusicNote','');// eslint-disable-next-line\nvar BIconMusicNoteBeamed=/*#__PURE__*/makeIcon('MusicNoteBeamed','');// eslint-disable-next-line\nvar BIconMusicNoteList=/*#__PURE__*/makeIcon('MusicNoteList','');// eslint-disable-next-line\nvar BIconMusicPlayer=/*#__PURE__*/makeIcon('MusicPlayer','');// eslint-disable-next-line\nvar BIconMusicPlayerFill=/*#__PURE__*/makeIcon('MusicPlayerFill','');// eslint-disable-next-line\nvar BIconNewspaper=/*#__PURE__*/makeIcon('Newspaper','');// eslint-disable-next-line\nvar BIconNodeMinus=/*#__PURE__*/makeIcon('NodeMinus','');// eslint-disable-next-line\nvar BIconNodeMinusFill=/*#__PURE__*/makeIcon('NodeMinusFill','');// eslint-disable-next-line\nvar BIconNodePlus=/*#__PURE__*/makeIcon('NodePlus','');// eslint-disable-next-line\nvar BIconNodePlusFill=/*#__PURE__*/makeIcon('NodePlusFill','');// eslint-disable-next-line\nvar BIconNut=/*#__PURE__*/makeIcon('Nut','');// eslint-disable-next-line\nvar BIconNutFill=/*#__PURE__*/makeIcon('NutFill','');// eslint-disable-next-line\nvar BIconOctagon=/*#__PURE__*/makeIcon('Octagon','');// eslint-disable-next-line\nvar BIconOctagonFill=/*#__PURE__*/makeIcon('OctagonFill','');// eslint-disable-next-line\nvar BIconOctagonHalf=/*#__PURE__*/makeIcon('OctagonHalf','');// eslint-disable-next-line\nvar BIconOption=/*#__PURE__*/makeIcon('Option','');// eslint-disable-next-line\nvar BIconOutlet=/*#__PURE__*/makeIcon('Outlet','');// eslint-disable-next-line\nvar BIconPaintBucket=/*#__PURE__*/makeIcon('PaintBucket','');// eslint-disable-next-line\nvar BIconPalette=/*#__PURE__*/makeIcon('Palette','');// eslint-disable-next-line\nvar BIconPalette2=/*#__PURE__*/makeIcon('Palette2','');// eslint-disable-next-line\nvar BIconPaletteFill=/*#__PURE__*/makeIcon('PaletteFill','');// eslint-disable-next-line\nvar BIconPaperclip=/*#__PURE__*/makeIcon('Paperclip','');// eslint-disable-next-line\nvar BIconParagraph=/*#__PURE__*/makeIcon('Paragraph','');// eslint-disable-next-line\nvar BIconPatchCheck=/*#__PURE__*/makeIcon('PatchCheck','');// eslint-disable-next-line\nvar BIconPatchCheckFill=/*#__PURE__*/makeIcon('PatchCheckFill','');// eslint-disable-next-line\nvar BIconPatchExclamation=/*#__PURE__*/makeIcon('PatchExclamation','');// eslint-disable-next-line\nvar BIconPatchExclamationFill=/*#__PURE__*/makeIcon('PatchExclamationFill','');// eslint-disable-next-line\nvar BIconPatchMinus=/*#__PURE__*/makeIcon('PatchMinus','');// eslint-disable-next-line\nvar BIconPatchMinusFill=/*#__PURE__*/makeIcon('PatchMinusFill','');// eslint-disable-next-line\nvar BIconPatchPlus=/*#__PURE__*/makeIcon('PatchPlus','');// eslint-disable-next-line\nvar BIconPatchPlusFill=/*#__PURE__*/makeIcon('PatchPlusFill','');// eslint-disable-next-line\nvar BIconPatchQuestion=/*#__PURE__*/makeIcon('PatchQuestion','');// eslint-disable-next-line\nvar BIconPatchQuestionFill=/*#__PURE__*/makeIcon('PatchQuestionFill','');// eslint-disable-next-line\nvar BIconPause=/*#__PURE__*/makeIcon('Pause','');// eslint-disable-next-line\nvar BIconPauseBtn=/*#__PURE__*/makeIcon('PauseBtn','');// eslint-disable-next-line\nvar BIconPauseBtnFill=/*#__PURE__*/makeIcon('PauseBtnFill','');// eslint-disable-next-line\nvar BIconPauseCircle=/*#__PURE__*/makeIcon('PauseCircle','');// eslint-disable-next-line\nvar BIconPauseCircleFill=/*#__PURE__*/makeIcon('PauseCircleFill','');// eslint-disable-next-line\nvar BIconPauseFill=/*#__PURE__*/makeIcon('PauseFill','');// eslint-disable-next-line\nvar BIconPeace=/*#__PURE__*/makeIcon('Peace','');// eslint-disable-next-line\nvar BIconPeaceFill=/*#__PURE__*/makeIcon('PeaceFill','');// eslint-disable-next-line\nvar BIconPen=/*#__PURE__*/makeIcon('Pen','');// eslint-disable-next-line\nvar BIconPenFill=/*#__PURE__*/makeIcon('PenFill','');// eslint-disable-next-line\nvar BIconPencil=/*#__PURE__*/makeIcon('Pencil','');// eslint-disable-next-line\nvar BIconPencilFill=/*#__PURE__*/makeIcon('PencilFill','');// eslint-disable-next-line\nvar BIconPencilSquare=/*#__PURE__*/makeIcon('PencilSquare','');// eslint-disable-next-line\nvar BIconPentagon=/*#__PURE__*/makeIcon('Pentagon','');// eslint-disable-next-line\nvar BIconPentagonFill=/*#__PURE__*/makeIcon('PentagonFill','');// eslint-disable-next-line\nvar BIconPentagonHalf=/*#__PURE__*/makeIcon('PentagonHalf','');// eslint-disable-next-line\nvar BIconPeople=/*#__PURE__*/makeIcon('People','');// eslint-disable-next-line\nvar BIconPeopleFill=/*#__PURE__*/makeIcon('PeopleFill','');// eslint-disable-next-line\nvar BIconPercent=/*#__PURE__*/makeIcon('Percent','');// eslint-disable-next-line\nvar BIconPerson=/*#__PURE__*/makeIcon('Person','');// eslint-disable-next-line\nvar BIconPersonBadge=/*#__PURE__*/makeIcon('PersonBadge','');// eslint-disable-next-line\nvar BIconPersonBadgeFill=/*#__PURE__*/makeIcon('PersonBadgeFill','');// eslint-disable-next-line\nvar BIconPersonBoundingBox=/*#__PURE__*/makeIcon('PersonBoundingBox','');// eslint-disable-next-line\nvar BIconPersonCheck=/*#__PURE__*/makeIcon('PersonCheck','');// eslint-disable-next-line\nvar BIconPersonCheckFill=/*#__PURE__*/makeIcon('PersonCheckFill','');// eslint-disable-next-line\nvar BIconPersonCircle=/*#__PURE__*/makeIcon('PersonCircle','');// eslint-disable-next-line\nvar BIconPersonDash=/*#__PURE__*/makeIcon('PersonDash','');// eslint-disable-next-line\nvar BIconPersonDashFill=/*#__PURE__*/makeIcon('PersonDashFill','');// eslint-disable-next-line\nvar BIconPersonFill=/*#__PURE__*/makeIcon('PersonFill','');// eslint-disable-next-line\nvar BIconPersonLinesFill=/*#__PURE__*/makeIcon('PersonLinesFill','');// eslint-disable-next-line\nvar BIconPersonPlus=/*#__PURE__*/makeIcon('PersonPlus','');// eslint-disable-next-line\nvar BIconPersonPlusFill=/*#__PURE__*/makeIcon('PersonPlusFill','');// eslint-disable-next-line\nvar BIconPersonSquare=/*#__PURE__*/makeIcon('PersonSquare','');// eslint-disable-next-line\nvar BIconPersonX=/*#__PURE__*/makeIcon('PersonX','');// eslint-disable-next-line\nvar BIconPersonXFill=/*#__PURE__*/makeIcon('PersonXFill','');// eslint-disable-next-line\nvar BIconPhone=/*#__PURE__*/makeIcon('Phone','');// eslint-disable-next-line\nvar BIconPhoneFill=/*#__PURE__*/makeIcon('PhoneFill','');// eslint-disable-next-line\nvar BIconPhoneLandscape=/*#__PURE__*/makeIcon('PhoneLandscape','');// eslint-disable-next-line\nvar BIconPhoneLandscapeFill=/*#__PURE__*/makeIcon('PhoneLandscapeFill','');// eslint-disable-next-line\nvar BIconPhoneVibrate=/*#__PURE__*/makeIcon('PhoneVibrate','');// eslint-disable-next-line\nvar BIconPhoneVibrateFill=/*#__PURE__*/makeIcon('PhoneVibrateFill','');// eslint-disable-next-line\nvar BIconPieChart=/*#__PURE__*/makeIcon('PieChart','');// eslint-disable-next-line\nvar BIconPieChartFill=/*#__PURE__*/makeIcon('PieChartFill','');// eslint-disable-next-line\nvar BIconPiggyBank=/*#__PURE__*/makeIcon('PiggyBank','');// eslint-disable-next-line\nvar BIconPiggyBankFill=/*#__PURE__*/makeIcon('PiggyBankFill','');// eslint-disable-next-line\nvar BIconPin=/*#__PURE__*/makeIcon('Pin','');// eslint-disable-next-line\nvar BIconPinAngle=/*#__PURE__*/makeIcon('PinAngle','');// eslint-disable-next-line\nvar BIconPinAngleFill=/*#__PURE__*/makeIcon('PinAngleFill','');// eslint-disable-next-line\nvar BIconPinFill=/*#__PURE__*/makeIcon('PinFill','');// eslint-disable-next-line\nvar BIconPinMap=/*#__PURE__*/makeIcon('PinMap','');// eslint-disable-next-line\nvar BIconPinMapFill=/*#__PURE__*/makeIcon('PinMapFill','');// eslint-disable-next-line\nvar BIconPip=/*#__PURE__*/makeIcon('Pip','');// eslint-disable-next-line\nvar BIconPipFill=/*#__PURE__*/makeIcon('PipFill','');// eslint-disable-next-line\nvar BIconPlay=/*#__PURE__*/makeIcon('Play','');// eslint-disable-next-line\nvar BIconPlayBtn=/*#__PURE__*/makeIcon('PlayBtn','');// eslint-disable-next-line\nvar BIconPlayBtnFill=/*#__PURE__*/makeIcon('PlayBtnFill','');// eslint-disable-next-line\nvar BIconPlayCircle=/*#__PURE__*/makeIcon('PlayCircle','');// eslint-disable-next-line\nvar BIconPlayCircleFill=/*#__PURE__*/makeIcon('PlayCircleFill','');// eslint-disable-next-line\nvar BIconPlayFill=/*#__PURE__*/makeIcon('PlayFill','');// eslint-disable-next-line\nvar BIconPlug=/*#__PURE__*/makeIcon('Plug','');// eslint-disable-next-line\nvar BIconPlugFill=/*#__PURE__*/makeIcon('PlugFill','');// eslint-disable-next-line\nvar BIconPlus=/*#__PURE__*/makeIcon('Plus','');// eslint-disable-next-line\nvar BIconPlusCircle=/*#__PURE__*/makeIcon('PlusCircle','');// eslint-disable-next-line\nvar BIconPlusCircleDotted=/*#__PURE__*/makeIcon('PlusCircleDotted','');// eslint-disable-next-line\nvar BIconPlusCircleFill=/*#__PURE__*/makeIcon('PlusCircleFill','');// eslint-disable-next-line\nvar BIconPlusLg=/*#__PURE__*/makeIcon('PlusLg','');// eslint-disable-next-line\nvar BIconPlusSquare=/*#__PURE__*/makeIcon('PlusSquare','');// eslint-disable-next-line\nvar BIconPlusSquareDotted=/*#__PURE__*/makeIcon('PlusSquareDotted','');// eslint-disable-next-line\nvar BIconPlusSquareFill=/*#__PURE__*/makeIcon('PlusSquareFill','');// eslint-disable-next-line\nvar BIconPower=/*#__PURE__*/makeIcon('Power','');// eslint-disable-next-line\nvar BIconPrinter=/*#__PURE__*/makeIcon('Printer','');// eslint-disable-next-line\nvar BIconPrinterFill=/*#__PURE__*/makeIcon('PrinterFill','');// eslint-disable-next-line\nvar BIconPuzzle=/*#__PURE__*/makeIcon('Puzzle','');// eslint-disable-next-line\nvar BIconPuzzleFill=/*#__PURE__*/makeIcon('PuzzleFill','');// eslint-disable-next-line\nvar BIconQuestion=/*#__PURE__*/makeIcon('Question','');// eslint-disable-next-line\nvar BIconQuestionCircle=/*#__PURE__*/makeIcon('QuestionCircle','');// eslint-disable-next-line\nvar BIconQuestionCircleFill=/*#__PURE__*/makeIcon('QuestionCircleFill','');// eslint-disable-next-line\nvar BIconQuestionDiamond=/*#__PURE__*/makeIcon('QuestionDiamond','');// eslint-disable-next-line\nvar BIconQuestionDiamondFill=/*#__PURE__*/makeIcon('QuestionDiamondFill','');// eslint-disable-next-line\nvar BIconQuestionLg=/*#__PURE__*/makeIcon('QuestionLg','');// eslint-disable-next-line\nvar BIconQuestionOctagon=/*#__PURE__*/makeIcon('QuestionOctagon','');// eslint-disable-next-line\nvar BIconQuestionOctagonFill=/*#__PURE__*/makeIcon('QuestionOctagonFill','');// eslint-disable-next-line\nvar BIconQuestionSquare=/*#__PURE__*/makeIcon('QuestionSquare','');// eslint-disable-next-line\nvar BIconQuestionSquareFill=/*#__PURE__*/makeIcon('QuestionSquareFill','');// eslint-disable-next-line\nvar BIconRainbow=/*#__PURE__*/makeIcon('Rainbow','');// eslint-disable-next-line\nvar BIconReceipt=/*#__PURE__*/makeIcon('Receipt','');// eslint-disable-next-line\nvar BIconReceiptCutoff=/*#__PURE__*/makeIcon('ReceiptCutoff','');// eslint-disable-next-line\nvar BIconReception0=/*#__PURE__*/makeIcon('Reception0','');// eslint-disable-next-line\nvar BIconReception1=/*#__PURE__*/makeIcon('Reception1','');// eslint-disable-next-line\nvar BIconReception2=/*#__PURE__*/makeIcon('Reception2','');// eslint-disable-next-line\nvar BIconReception3=/*#__PURE__*/makeIcon('Reception3','');// eslint-disable-next-line\nvar BIconReception4=/*#__PURE__*/makeIcon('Reception4','');// eslint-disable-next-line\nvar BIconRecord=/*#__PURE__*/makeIcon('Record','');// eslint-disable-next-line\nvar BIconRecord2=/*#__PURE__*/makeIcon('Record2','');// eslint-disable-next-line\nvar BIconRecord2Fill=/*#__PURE__*/makeIcon('Record2Fill','');// eslint-disable-next-line\nvar BIconRecordBtn=/*#__PURE__*/makeIcon('RecordBtn','');// eslint-disable-next-line\nvar BIconRecordBtnFill=/*#__PURE__*/makeIcon('RecordBtnFill','');// eslint-disable-next-line\nvar BIconRecordCircle=/*#__PURE__*/makeIcon('RecordCircle','');// eslint-disable-next-line\nvar BIconRecordCircleFill=/*#__PURE__*/makeIcon('RecordCircleFill','');// eslint-disable-next-line\nvar BIconRecordFill=/*#__PURE__*/makeIcon('RecordFill','');// eslint-disable-next-line\nvar BIconRecycle=/*#__PURE__*/makeIcon('Recycle','');// eslint-disable-next-line\nvar BIconReddit=/*#__PURE__*/makeIcon('Reddit','');// eslint-disable-next-line\nvar BIconReply=/*#__PURE__*/makeIcon('Reply','');// eslint-disable-next-line\nvar BIconReplyAll=/*#__PURE__*/makeIcon('ReplyAll','');// eslint-disable-next-line\nvar BIconReplyAllFill=/*#__PURE__*/makeIcon('ReplyAllFill','');// eslint-disable-next-line\nvar BIconReplyFill=/*#__PURE__*/makeIcon('ReplyFill','');// eslint-disable-next-line\nvar BIconRss=/*#__PURE__*/makeIcon('Rss','');// eslint-disable-next-line\nvar BIconRssFill=/*#__PURE__*/makeIcon('RssFill','');// eslint-disable-next-line\nvar BIconRulers=/*#__PURE__*/makeIcon('Rulers','');// eslint-disable-next-line\nvar BIconSafe=/*#__PURE__*/makeIcon('Safe','');// eslint-disable-next-line\nvar BIconSafe2=/*#__PURE__*/makeIcon('Safe2','');// eslint-disable-next-line\nvar BIconSafe2Fill=/*#__PURE__*/makeIcon('Safe2Fill','');// eslint-disable-next-line\nvar BIconSafeFill=/*#__PURE__*/makeIcon('SafeFill','');// eslint-disable-next-line\nvar BIconSave=/*#__PURE__*/makeIcon('Save','');// eslint-disable-next-line\nvar BIconSave2=/*#__PURE__*/makeIcon('Save2','');// eslint-disable-next-line\nvar BIconSave2Fill=/*#__PURE__*/makeIcon('Save2Fill','');// eslint-disable-next-line\nvar BIconSaveFill=/*#__PURE__*/makeIcon('SaveFill','');// eslint-disable-next-line\nvar BIconScissors=/*#__PURE__*/makeIcon('Scissors','');// eslint-disable-next-line\nvar BIconScrewdriver=/*#__PURE__*/makeIcon('Screwdriver','');// eslint-disable-next-line\nvar BIconSdCard=/*#__PURE__*/makeIcon('SdCard','');// eslint-disable-next-line\nvar BIconSdCardFill=/*#__PURE__*/makeIcon('SdCardFill','');// eslint-disable-next-line\nvar BIconSearch=/*#__PURE__*/makeIcon('Search','');// eslint-disable-next-line\nvar BIconSegmentedNav=/*#__PURE__*/makeIcon('SegmentedNav','');// eslint-disable-next-line\nvar BIconServer=/*#__PURE__*/makeIcon('Server','');// eslint-disable-next-line\nvar BIconShare=/*#__PURE__*/makeIcon('Share','');// eslint-disable-next-line\nvar BIconShareFill=/*#__PURE__*/makeIcon('ShareFill','');// eslint-disable-next-line\nvar BIconShield=/*#__PURE__*/makeIcon('Shield','');// eslint-disable-next-line\nvar BIconShieldCheck=/*#__PURE__*/makeIcon('ShieldCheck','');// eslint-disable-next-line\nvar BIconShieldExclamation=/*#__PURE__*/makeIcon('ShieldExclamation','');// eslint-disable-next-line\nvar BIconShieldFill=/*#__PURE__*/makeIcon('ShieldFill','');// eslint-disable-next-line\nvar BIconShieldFillCheck=/*#__PURE__*/makeIcon('ShieldFillCheck','');// eslint-disable-next-line\nvar BIconShieldFillExclamation=/*#__PURE__*/makeIcon('ShieldFillExclamation','');// eslint-disable-next-line\nvar BIconShieldFillMinus=/*#__PURE__*/makeIcon('ShieldFillMinus','');// eslint-disable-next-line\nvar BIconShieldFillPlus=/*#__PURE__*/makeIcon('ShieldFillPlus','');// eslint-disable-next-line\nvar BIconShieldFillX=/*#__PURE__*/makeIcon('ShieldFillX','');// eslint-disable-next-line\nvar BIconShieldLock=/*#__PURE__*/makeIcon('ShieldLock','');// eslint-disable-next-line\nvar BIconShieldLockFill=/*#__PURE__*/makeIcon('ShieldLockFill','');// eslint-disable-next-line\nvar BIconShieldMinus=/*#__PURE__*/makeIcon('ShieldMinus','');// eslint-disable-next-line\nvar BIconShieldPlus=/*#__PURE__*/makeIcon('ShieldPlus','');// eslint-disable-next-line\nvar BIconShieldShaded=/*#__PURE__*/makeIcon('ShieldShaded','');// eslint-disable-next-line\nvar BIconShieldSlash=/*#__PURE__*/makeIcon('ShieldSlash','');// eslint-disable-next-line\nvar BIconShieldSlashFill=/*#__PURE__*/makeIcon('ShieldSlashFill','');// eslint-disable-next-line\nvar BIconShieldX=/*#__PURE__*/makeIcon('ShieldX','');// eslint-disable-next-line\nvar BIconShift=/*#__PURE__*/makeIcon('Shift','');// eslint-disable-next-line\nvar BIconShiftFill=/*#__PURE__*/makeIcon('ShiftFill','');// eslint-disable-next-line\nvar BIconShop=/*#__PURE__*/makeIcon('Shop','');// eslint-disable-next-line\nvar BIconShopWindow=/*#__PURE__*/makeIcon('ShopWindow','');// eslint-disable-next-line\nvar BIconShuffle=/*#__PURE__*/makeIcon('Shuffle','');// eslint-disable-next-line\nvar BIconSignpost=/*#__PURE__*/makeIcon('Signpost','');// eslint-disable-next-line\nvar BIconSignpost2=/*#__PURE__*/makeIcon('Signpost2','');// eslint-disable-next-line\nvar BIconSignpost2Fill=/*#__PURE__*/makeIcon('Signpost2Fill','');// eslint-disable-next-line\nvar BIconSignpostFill=/*#__PURE__*/makeIcon('SignpostFill','');// eslint-disable-next-line\nvar BIconSignpostSplit=/*#__PURE__*/makeIcon('SignpostSplit','');// eslint-disable-next-line\nvar BIconSignpostSplitFill=/*#__PURE__*/makeIcon('SignpostSplitFill','');// eslint-disable-next-line\nvar BIconSim=/*#__PURE__*/makeIcon('Sim','');// eslint-disable-next-line\nvar BIconSimFill=/*#__PURE__*/makeIcon('SimFill','');// eslint-disable-next-line\nvar BIconSkipBackward=/*#__PURE__*/makeIcon('SkipBackward','');// eslint-disable-next-line\nvar BIconSkipBackwardBtn=/*#__PURE__*/makeIcon('SkipBackwardBtn','');// eslint-disable-next-line\nvar BIconSkipBackwardBtnFill=/*#__PURE__*/makeIcon('SkipBackwardBtnFill','');// eslint-disable-next-line\nvar BIconSkipBackwardCircle=/*#__PURE__*/makeIcon('SkipBackwardCircle','');// eslint-disable-next-line\nvar BIconSkipBackwardCircleFill=/*#__PURE__*/makeIcon('SkipBackwardCircleFill','');// eslint-disable-next-line\nvar BIconSkipBackwardFill=/*#__PURE__*/makeIcon('SkipBackwardFill','');// eslint-disable-next-line\nvar BIconSkipEnd=/*#__PURE__*/makeIcon('SkipEnd','');// eslint-disable-next-line\nvar BIconSkipEndBtn=/*#__PURE__*/makeIcon('SkipEndBtn','');// eslint-disable-next-line\nvar BIconSkipEndBtnFill=/*#__PURE__*/makeIcon('SkipEndBtnFill','');// eslint-disable-next-line\nvar BIconSkipEndCircle=/*#__PURE__*/makeIcon('SkipEndCircle','');// eslint-disable-next-line\nvar BIconSkipEndCircleFill=/*#__PURE__*/makeIcon('SkipEndCircleFill','');// eslint-disable-next-line\nvar BIconSkipEndFill=/*#__PURE__*/makeIcon('SkipEndFill','');// eslint-disable-next-line\nvar BIconSkipForward=/*#__PURE__*/makeIcon('SkipForward','');// eslint-disable-next-line\nvar BIconSkipForwardBtn=/*#__PURE__*/makeIcon('SkipForwardBtn','');// eslint-disable-next-line\nvar BIconSkipForwardBtnFill=/*#__PURE__*/makeIcon('SkipForwardBtnFill','');// eslint-disable-next-line\nvar BIconSkipForwardCircle=/*#__PURE__*/makeIcon('SkipForwardCircle','');// eslint-disable-next-line\nvar BIconSkipForwardCircleFill=/*#__PURE__*/makeIcon('SkipForwardCircleFill','');// eslint-disable-next-line\nvar BIconSkipForwardFill=/*#__PURE__*/makeIcon('SkipForwardFill','');// eslint-disable-next-line\nvar BIconSkipStart=/*#__PURE__*/makeIcon('SkipStart','');// eslint-disable-next-line\nvar BIconSkipStartBtn=/*#__PURE__*/makeIcon('SkipStartBtn','');// eslint-disable-next-line\nvar BIconSkipStartBtnFill=/*#__PURE__*/makeIcon('SkipStartBtnFill','');// eslint-disable-next-line\nvar BIconSkipStartCircle=/*#__PURE__*/makeIcon('SkipStartCircle','');// eslint-disable-next-line\nvar BIconSkipStartCircleFill=/*#__PURE__*/makeIcon('SkipStartCircleFill','');// eslint-disable-next-line\nvar BIconSkipStartFill=/*#__PURE__*/makeIcon('SkipStartFill','');// eslint-disable-next-line\nvar BIconSkype=/*#__PURE__*/makeIcon('Skype','');// eslint-disable-next-line\nvar BIconSlack=/*#__PURE__*/makeIcon('Slack','');// eslint-disable-next-line\nvar BIconSlash=/*#__PURE__*/makeIcon('Slash','');// eslint-disable-next-line\nvar BIconSlashCircle=/*#__PURE__*/makeIcon('SlashCircle','');// eslint-disable-next-line\nvar BIconSlashCircleFill=/*#__PURE__*/makeIcon('SlashCircleFill','');// eslint-disable-next-line\nvar BIconSlashLg=/*#__PURE__*/makeIcon('SlashLg','');// eslint-disable-next-line\nvar BIconSlashSquare=/*#__PURE__*/makeIcon('SlashSquare','');// eslint-disable-next-line\nvar BIconSlashSquareFill=/*#__PURE__*/makeIcon('SlashSquareFill','');// eslint-disable-next-line\nvar BIconSliders=/*#__PURE__*/makeIcon('Sliders','');// eslint-disable-next-line\nvar BIconSmartwatch=/*#__PURE__*/makeIcon('Smartwatch','');// eslint-disable-next-line\nvar BIconSnow=/*#__PURE__*/makeIcon('Snow','');// eslint-disable-next-line\nvar BIconSnow2=/*#__PURE__*/makeIcon('Snow2','');// eslint-disable-next-line\nvar BIconSnow3=/*#__PURE__*/makeIcon('Snow3','');// eslint-disable-next-line\nvar BIconSortAlphaDown=/*#__PURE__*/makeIcon('SortAlphaDown','');// eslint-disable-next-line\nvar BIconSortAlphaDownAlt=/*#__PURE__*/makeIcon('SortAlphaDownAlt','');// eslint-disable-next-line\nvar BIconSortAlphaUp=/*#__PURE__*/makeIcon('SortAlphaUp','');// eslint-disable-next-line\nvar BIconSortAlphaUpAlt=/*#__PURE__*/makeIcon('SortAlphaUpAlt','');// eslint-disable-next-line\nvar BIconSortDown=/*#__PURE__*/makeIcon('SortDown','');// eslint-disable-next-line\nvar BIconSortDownAlt=/*#__PURE__*/makeIcon('SortDownAlt','');// eslint-disable-next-line\nvar BIconSortNumericDown=/*#__PURE__*/makeIcon('SortNumericDown','');// eslint-disable-next-line\nvar BIconSortNumericDownAlt=/*#__PURE__*/makeIcon('SortNumericDownAlt','');// eslint-disable-next-line\nvar BIconSortNumericUp=/*#__PURE__*/makeIcon('SortNumericUp','');// eslint-disable-next-line\nvar BIconSortNumericUpAlt=/*#__PURE__*/makeIcon('SortNumericUpAlt','');// eslint-disable-next-line\nvar BIconSortUp=/*#__PURE__*/makeIcon('SortUp','');// eslint-disable-next-line\nvar BIconSortUpAlt=/*#__PURE__*/makeIcon('SortUpAlt','');// eslint-disable-next-line\nvar BIconSoundwave=/*#__PURE__*/makeIcon('Soundwave','');// eslint-disable-next-line\nvar BIconSpeaker=/*#__PURE__*/makeIcon('Speaker','');// eslint-disable-next-line\nvar BIconSpeakerFill=/*#__PURE__*/makeIcon('SpeakerFill','');// eslint-disable-next-line\nvar BIconSpeedometer=/*#__PURE__*/makeIcon('Speedometer','');// eslint-disable-next-line\nvar BIconSpeedometer2=/*#__PURE__*/makeIcon('Speedometer2','');// eslint-disable-next-line\nvar BIconSpellcheck=/*#__PURE__*/makeIcon('Spellcheck','');// eslint-disable-next-line\nvar BIconSquare=/*#__PURE__*/makeIcon('Square','');// eslint-disable-next-line\nvar BIconSquareFill=/*#__PURE__*/makeIcon('SquareFill','');// eslint-disable-next-line\nvar BIconSquareHalf=/*#__PURE__*/makeIcon('SquareHalf','');// eslint-disable-next-line\nvar BIconStack=/*#__PURE__*/makeIcon('Stack','');// eslint-disable-next-line\nvar BIconStar=/*#__PURE__*/makeIcon('Star','');// eslint-disable-next-line\nvar BIconStarFill=/*#__PURE__*/makeIcon('StarFill','');// eslint-disable-next-line\nvar BIconStarHalf=/*#__PURE__*/makeIcon('StarHalf','');// eslint-disable-next-line\nvar BIconStars=/*#__PURE__*/makeIcon('Stars','');// eslint-disable-next-line\nvar BIconStickies=/*#__PURE__*/makeIcon('Stickies','');// eslint-disable-next-line\nvar BIconStickiesFill=/*#__PURE__*/makeIcon('StickiesFill','');// eslint-disable-next-line\nvar BIconSticky=/*#__PURE__*/makeIcon('Sticky','');// eslint-disable-next-line\nvar BIconStickyFill=/*#__PURE__*/makeIcon('StickyFill','');// eslint-disable-next-line\nvar BIconStop=/*#__PURE__*/makeIcon('Stop','');// eslint-disable-next-line\nvar BIconStopBtn=/*#__PURE__*/makeIcon('StopBtn','');// eslint-disable-next-line\nvar BIconStopBtnFill=/*#__PURE__*/makeIcon('StopBtnFill','');// eslint-disable-next-line\nvar BIconStopCircle=/*#__PURE__*/makeIcon('StopCircle','');// eslint-disable-next-line\nvar BIconStopCircleFill=/*#__PURE__*/makeIcon('StopCircleFill','');// eslint-disable-next-line\nvar BIconStopFill=/*#__PURE__*/makeIcon('StopFill','');// eslint-disable-next-line\nvar BIconStoplights=/*#__PURE__*/makeIcon('Stoplights','');// eslint-disable-next-line\nvar BIconStoplightsFill=/*#__PURE__*/makeIcon('StoplightsFill','');// eslint-disable-next-line\nvar BIconStopwatch=/*#__PURE__*/makeIcon('Stopwatch','');// eslint-disable-next-line\nvar BIconStopwatchFill=/*#__PURE__*/makeIcon('StopwatchFill','');// eslint-disable-next-line\nvar BIconSubtract=/*#__PURE__*/makeIcon('Subtract','');// eslint-disable-next-line\nvar BIconSuitClub=/*#__PURE__*/makeIcon('SuitClub','');// eslint-disable-next-line\nvar BIconSuitClubFill=/*#__PURE__*/makeIcon('SuitClubFill','');// eslint-disable-next-line\nvar BIconSuitDiamond=/*#__PURE__*/makeIcon('SuitDiamond','');// eslint-disable-next-line\nvar BIconSuitDiamondFill=/*#__PURE__*/makeIcon('SuitDiamondFill','');// eslint-disable-next-line\nvar BIconSuitHeart=/*#__PURE__*/makeIcon('SuitHeart','');// eslint-disable-next-line\nvar BIconSuitHeartFill=/*#__PURE__*/makeIcon('SuitHeartFill','');// eslint-disable-next-line\nvar BIconSuitSpade=/*#__PURE__*/makeIcon('SuitSpade','');// eslint-disable-next-line\nvar BIconSuitSpadeFill=/*#__PURE__*/makeIcon('SuitSpadeFill','');// eslint-disable-next-line\nvar BIconSun=/*#__PURE__*/makeIcon('Sun','');// eslint-disable-next-line\nvar BIconSunFill=/*#__PURE__*/makeIcon('SunFill','');// eslint-disable-next-line\nvar BIconSunglasses=/*#__PURE__*/makeIcon('Sunglasses','');// eslint-disable-next-line\nvar BIconSunrise=/*#__PURE__*/makeIcon('Sunrise','');// eslint-disable-next-line\nvar BIconSunriseFill=/*#__PURE__*/makeIcon('SunriseFill','');// eslint-disable-next-line\nvar BIconSunset=/*#__PURE__*/makeIcon('Sunset','');// eslint-disable-next-line\nvar BIconSunsetFill=/*#__PURE__*/makeIcon('SunsetFill','');// eslint-disable-next-line\nvar BIconSymmetryHorizontal=/*#__PURE__*/makeIcon('SymmetryHorizontal','');// eslint-disable-next-line\nvar BIconSymmetryVertical=/*#__PURE__*/makeIcon('SymmetryVertical','');// eslint-disable-next-line\nvar BIconTable=/*#__PURE__*/makeIcon('Table','');// eslint-disable-next-line\nvar BIconTablet=/*#__PURE__*/makeIcon('Tablet','');// eslint-disable-next-line\nvar BIconTabletFill=/*#__PURE__*/makeIcon('TabletFill','');// eslint-disable-next-line\nvar BIconTabletLandscape=/*#__PURE__*/makeIcon('TabletLandscape','');// eslint-disable-next-line\nvar BIconTabletLandscapeFill=/*#__PURE__*/makeIcon('TabletLandscapeFill','');// eslint-disable-next-line\nvar BIconTag=/*#__PURE__*/makeIcon('Tag','');// eslint-disable-next-line\nvar BIconTagFill=/*#__PURE__*/makeIcon('TagFill','');// eslint-disable-next-line\nvar BIconTags=/*#__PURE__*/makeIcon('Tags','');// eslint-disable-next-line\nvar BIconTagsFill=/*#__PURE__*/makeIcon('TagsFill','');// eslint-disable-next-line\nvar BIconTelegram=/*#__PURE__*/makeIcon('Telegram','');// eslint-disable-next-line\nvar BIconTelephone=/*#__PURE__*/makeIcon('Telephone','');// eslint-disable-next-line\nvar BIconTelephoneFill=/*#__PURE__*/makeIcon('TelephoneFill','');// eslint-disable-next-line\nvar BIconTelephoneForward=/*#__PURE__*/makeIcon('TelephoneForward','');// eslint-disable-next-line\nvar BIconTelephoneForwardFill=/*#__PURE__*/makeIcon('TelephoneForwardFill','');// eslint-disable-next-line\nvar BIconTelephoneInbound=/*#__PURE__*/makeIcon('TelephoneInbound','');// eslint-disable-next-line\nvar BIconTelephoneInboundFill=/*#__PURE__*/makeIcon('TelephoneInboundFill','');// eslint-disable-next-line\nvar BIconTelephoneMinus=/*#__PURE__*/makeIcon('TelephoneMinus','');// eslint-disable-next-line\nvar BIconTelephoneMinusFill=/*#__PURE__*/makeIcon('TelephoneMinusFill','');// eslint-disable-next-line\nvar BIconTelephoneOutbound=/*#__PURE__*/makeIcon('TelephoneOutbound','');// eslint-disable-next-line\nvar BIconTelephoneOutboundFill=/*#__PURE__*/makeIcon('TelephoneOutboundFill','');// eslint-disable-next-line\nvar BIconTelephonePlus=/*#__PURE__*/makeIcon('TelephonePlus','');// eslint-disable-next-line\nvar BIconTelephonePlusFill=/*#__PURE__*/makeIcon('TelephonePlusFill','');// eslint-disable-next-line\nvar BIconTelephoneX=/*#__PURE__*/makeIcon('TelephoneX','');// eslint-disable-next-line\nvar BIconTelephoneXFill=/*#__PURE__*/makeIcon('TelephoneXFill','');// eslint-disable-next-line\nvar BIconTerminal=/*#__PURE__*/makeIcon('Terminal','');// eslint-disable-next-line\nvar BIconTerminalFill=/*#__PURE__*/makeIcon('TerminalFill','');// eslint-disable-next-line\nvar BIconTextCenter=/*#__PURE__*/makeIcon('TextCenter','');// eslint-disable-next-line\nvar BIconTextIndentLeft=/*#__PURE__*/makeIcon('TextIndentLeft','');// eslint-disable-next-line\nvar BIconTextIndentRight=/*#__PURE__*/makeIcon('TextIndentRight','');// eslint-disable-next-line\nvar BIconTextLeft=/*#__PURE__*/makeIcon('TextLeft','');// eslint-disable-next-line\nvar BIconTextParagraph=/*#__PURE__*/makeIcon('TextParagraph','');// eslint-disable-next-line\nvar BIconTextRight=/*#__PURE__*/makeIcon('TextRight','');// eslint-disable-next-line\nvar BIconTextarea=/*#__PURE__*/makeIcon('Textarea','');// eslint-disable-next-line\nvar BIconTextareaResize=/*#__PURE__*/makeIcon('TextareaResize','');// eslint-disable-next-line\nvar BIconTextareaT=/*#__PURE__*/makeIcon('TextareaT','');// eslint-disable-next-line\nvar BIconThermometer=/*#__PURE__*/makeIcon('Thermometer','');// eslint-disable-next-line\nvar BIconThermometerHalf=/*#__PURE__*/makeIcon('ThermometerHalf','');// eslint-disable-next-line\nvar BIconThermometerHigh=/*#__PURE__*/makeIcon('ThermometerHigh','');// eslint-disable-next-line\nvar BIconThermometerLow=/*#__PURE__*/makeIcon('ThermometerLow','');// eslint-disable-next-line\nvar BIconThermometerSnow=/*#__PURE__*/makeIcon('ThermometerSnow','');// eslint-disable-next-line\nvar BIconThermometerSun=/*#__PURE__*/makeIcon('ThermometerSun','');// eslint-disable-next-line\nvar BIconThreeDots=/*#__PURE__*/makeIcon('ThreeDots','');// eslint-disable-next-line\nvar BIconThreeDotsVertical=/*#__PURE__*/makeIcon('ThreeDotsVertical','');// eslint-disable-next-line\nvar BIconToggle2Off=/*#__PURE__*/makeIcon('Toggle2Off','');// eslint-disable-next-line\nvar BIconToggle2On=/*#__PURE__*/makeIcon('Toggle2On','');// eslint-disable-next-line\nvar BIconToggleOff=/*#__PURE__*/makeIcon('ToggleOff','');// eslint-disable-next-line\nvar BIconToggleOn=/*#__PURE__*/makeIcon('ToggleOn','');// eslint-disable-next-line\nvar BIconToggles=/*#__PURE__*/makeIcon('Toggles','');// eslint-disable-next-line\nvar BIconToggles2=/*#__PURE__*/makeIcon('Toggles2','');// eslint-disable-next-line\nvar BIconTools=/*#__PURE__*/makeIcon('Tools','');// eslint-disable-next-line\nvar BIconTornado=/*#__PURE__*/makeIcon('Tornado','');// eslint-disable-next-line\nvar BIconTranslate=/*#__PURE__*/makeIcon('Translate','');// eslint-disable-next-line\nvar BIconTrash=/*#__PURE__*/makeIcon('Trash','');// eslint-disable-next-line\nvar BIconTrash2=/*#__PURE__*/makeIcon('Trash2','');// eslint-disable-next-line\nvar BIconTrash2Fill=/*#__PURE__*/makeIcon('Trash2Fill','');// eslint-disable-next-line\nvar BIconTrashFill=/*#__PURE__*/makeIcon('TrashFill','');// eslint-disable-next-line\nvar BIconTree=/*#__PURE__*/makeIcon('Tree','');// eslint-disable-next-line\nvar BIconTreeFill=/*#__PURE__*/makeIcon('TreeFill','');// eslint-disable-next-line\nvar BIconTriangle=/*#__PURE__*/makeIcon('Triangle','');// eslint-disable-next-line\nvar BIconTriangleFill=/*#__PURE__*/makeIcon('TriangleFill','');// eslint-disable-next-line\nvar BIconTriangleHalf=/*#__PURE__*/makeIcon('TriangleHalf','');// eslint-disable-next-line\nvar BIconTrophy=/*#__PURE__*/makeIcon('Trophy','');// eslint-disable-next-line\nvar BIconTrophyFill=/*#__PURE__*/makeIcon('TrophyFill','');// eslint-disable-next-line\nvar BIconTropicalStorm=/*#__PURE__*/makeIcon('TropicalStorm','');// eslint-disable-next-line\nvar BIconTruck=/*#__PURE__*/makeIcon('Truck','');// eslint-disable-next-line\nvar BIconTruckFlatbed=/*#__PURE__*/makeIcon('TruckFlatbed','');// eslint-disable-next-line\nvar BIconTsunami=/*#__PURE__*/makeIcon('Tsunami','');// eslint-disable-next-line\nvar BIconTv=/*#__PURE__*/makeIcon('Tv','');// eslint-disable-next-line\nvar BIconTvFill=/*#__PURE__*/makeIcon('TvFill','');// eslint-disable-next-line\nvar BIconTwitch=/*#__PURE__*/makeIcon('Twitch','');// eslint-disable-next-line\nvar BIconTwitter=/*#__PURE__*/makeIcon('Twitter','');// eslint-disable-next-line\nvar BIconType=/*#__PURE__*/makeIcon('Type','');// eslint-disable-next-line\nvar BIconTypeBold=/*#__PURE__*/makeIcon('TypeBold','');// eslint-disable-next-line\nvar BIconTypeH1=/*#__PURE__*/makeIcon('TypeH1','');// eslint-disable-next-line\nvar BIconTypeH2=/*#__PURE__*/makeIcon('TypeH2','');// eslint-disable-next-line\nvar BIconTypeH3=/*#__PURE__*/makeIcon('TypeH3','');// eslint-disable-next-line\nvar BIconTypeItalic=/*#__PURE__*/makeIcon('TypeItalic','');// eslint-disable-next-line\nvar BIconTypeStrikethrough=/*#__PURE__*/makeIcon('TypeStrikethrough','');// eslint-disable-next-line\nvar BIconTypeUnderline=/*#__PURE__*/makeIcon('TypeUnderline','');// eslint-disable-next-line\nvar BIconUiChecks=/*#__PURE__*/makeIcon('UiChecks','');// eslint-disable-next-line\nvar BIconUiChecksGrid=/*#__PURE__*/makeIcon('UiChecksGrid','');// eslint-disable-next-line\nvar BIconUiRadios=/*#__PURE__*/makeIcon('UiRadios','');// eslint-disable-next-line\nvar BIconUiRadiosGrid=/*#__PURE__*/makeIcon('UiRadiosGrid','');// eslint-disable-next-line\nvar BIconUmbrella=/*#__PURE__*/makeIcon('Umbrella','');// eslint-disable-next-line\nvar BIconUmbrellaFill=/*#__PURE__*/makeIcon('UmbrellaFill','');// eslint-disable-next-line\nvar BIconUnion=/*#__PURE__*/makeIcon('Union','');// eslint-disable-next-line\nvar BIconUnlock=/*#__PURE__*/makeIcon('Unlock','');// eslint-disable-next-line\nvar BIconUnlockFill=/*#__PURE__*/makeIcon('UnlockFill','');// eslint-disable-next-line\nvar BIconUpc=/*#__PURE__*/makeIcon('Upc','');// eslint-disable-next-line\nvar BIconUpcScan=/*#__PURE__*/makeIcon('UpcScan','');// eslint-disable-next-line\nvar BIconUpload=/*#__PURE__*/makeIcon('Upload','');// eslint-disable-next-line\nvar BIconVectorPen=/*#__PURE__*/makeIcon('VectorPen','');// eslint-disable-next-line\nvar BIconViewList=/*#__PURE__*/makeIcon('ViewList','');// eslint-disable-next-line\nvar BIconViewStacked=/*#__PURE__*/makeIcon('ViewStacked','');// eslint-disable-next-line\nvar BIconVinyl=/*#__PURE__*/makeIcon('Vinyl','');// eslint-disable-next-line\nvar BIconVinylFill=/*#__PURE__*/makeIcon('VinylFill','');// eslint-disable-next-line\nvar BIconVoicemail=/*#__PURE__*/makeIcon('Voicemail','');// eslint-disable-next-line\nvar BIconVolumeDown=/*#__PURE__*/makeIcon('VolumeDown','');// eslint-disable-next-line\nvar BIconVolumeDownFill=/*#__PURE__*/makeIcon('VolumeDownFill','');// eslint-disable-next-line\nvar BIconVolumeMute=/*#__PURE__*/makeIcon('VolumeMute','');// eslint-disable-next-line\nvar BIconVolumeMuteFill=/*#__PURE__*/makeIcon('VolumeMuteFill','');// eslint-disable-next-line\nvar BIconVolumeOff=/*#__PURE__*/makeIcon('VolumeOff','');// eslint-disable-next-line\nvar BIconVolumeOffFill=/*#__PURE__*/makeIcon('VolumeOffFill','');// eslint-disable-next-line\nvar BIconVolumeUp=/*#__PURE__*/makeIcon('VolumeUp','');// eslint-disable-next-line\nvar BIconVolumeUpFill=/*#__PURE__*/makeIcon('VolumeUpFill','');// eslint-disable-next-line\nvar BIconVr=/*#__PURE__*/makeIcon('Vr','');// eslint-disable-next-line\nvar BIconWallet=/*#__PURE__*/makeIcon('Wallet','');// eslint-disable-next-line\nvar BIconWallet2=/*#__PURE__*/makeIcon('Wallet2','');// eslint-disable-next-line\nvar BIconWalletFill=/*#__PURE__*/makeIcon('WalletFill','');// eslint-disable-next-line\nvar BIconWatch=/*#__PURE__*/makeIcon('Watch','');// eslint-disable-next-line\nvar BIconWater=/*#__PURE__*/makeIcon('Water','');// eslint-disable-next-line\nvar BIconWhatsapp=/*#__PURE__*/makeIcon('Whatsapp','');// eslint-disable-next-line\nvar BIconWifi=/*#__PURE__*/makeIcon('Wifi','');// eslint-disable-next-line\nvar BIconWifi1=/*#__PURE__*/makeIcon('Wifi1','');// eslint-disable-next-line\nvar BIconWifi2=/*#__PURE__*/makeIcon('Wifi2','');// eslint-disable-next-line\nvar BIconWifiOff=/*#__PURE__*/makeIcon('WifiOff','');// eslint-disable-next-line\nvar BIconWind=/*#__PURE__*/makeIcon('Wind','');// eslint-disable-next-line\nvar BIconWindow=/*#__PURE__*/makeIcon('Window','');// eslint-disable-next-line\nvar BIconWindowDock=/*#__PURE__*/makeIcon('WindowDock','');// eslint-disable-next-line\nvar BIconWindowSidebar=/*#__PURE__*/makeIcon('WindowSidebar','');// eslint-disable-next-line\nvar BIconWrench=/*#__PURE__*/makeIcon('Wrench','');// eslint-disable-next-line\nvar BIconX=/*#__PURE__*/makeIcon('X','');// eslint-disable-next-line\nvar BIconXCircle=/*#__PURE__*/makeIcon('XCircle','');// eslint-disable-next-line\nvar BIconXCircleFill=/*#__PURE__*/makeIcon('XCircleFill','');// eslint-disable-next-line\nvar BIconXDiamond=/*#__PURE__*/makeIcon('XDiamond','');// eslint-disable-next-line\nvar BIconXDiamondFill=/*#__PURE__*/makeIcon('XDiamondFill','');// eslint-disable-next-line\nvar BIconXLg=/*#__PURE__*/makeIcon('XLg','');// eslint-disable-next-line\nvar BIconXOctagon=/*#__PURE__*/makeIcon('XOctagon','');// eslint-disable-next-line\nvar BIconXOctagonFill=/*#__PURE__*/makeIcon('XOctagonFill','');// eslint-disable-next-line\nvar BIconXSquare=/*#__PURE__*/makeIcon('XSquare','');// eslint-disable-next-line\nvar BIconXSquareFill=/*#__PURE__*/makeIcon('XSquareFill','');// eslint-disable-next-line\nvar BIconYoutube=/*#__PURE__*/makeIcon('Youtube','');// eslint-disable-next-line\nvar BIconZoomIn=/*#__PURE__*/makeIcon('ZoomIn','');// eslint-disable-next-line\nvar BIconZoomOut=/*#__PURE__*/makeIcon('ZoomOut','');// --- END AUTO-GENERATED FILE ---\n\nvar findIconComponent = function findIconComponent(ctx, iconName) {\n if (!ctx) {\n return Vue.component(iconName);\n }\n\n var components = (ctx.$options || {}).components;\n var iconComponent = components && components[iconName];\n return iconComponent || findIconComponent(ctx.$parent, iconName);\n}; // --- Props ---\n\n\nvar iconProps = omit(props$2i, ['content']);\nvar props$2h = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, iconProps), {}, {\n icon: makeProp(PROP_TYPE_STRING)\n})), NAME_ICON); // --- Main component ---\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\n\nvar BIcon = /*#__PURE__*/extend({\n name: NAME_ICON,\n functional: true,\n props: props$2h,\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: pluckProps(iconProps, props)\n }));\n }\n});\n\nvar CODE_BACKSPACE = 8;\nvar CODE_DELETE = 46;\nvar CODE_DOWN = 40;\nvar CODE_END = 35;\nvar CODE_ENTER = 13;\nvar CODE_ESC = 27;\nvar CODE_HOME = 36;\nvar CODE_LEFT = 37;\nvar CODE_PAGEDOWN = 34;\nvar CODE_PAGEUP = 33;\nvar CODE_RIGHT = 39;\nvar CODE_SPACE = 32;\nvar CODE_UP = 38;\n\n// Handles when arrays are \"sparse\" (array.every(...) doesn't handle sparse)\n\nvar compareArrays = function compareArrays(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n\n var equal = true;\n\n for (var i = 0; equal && i < a.length; i++) {\n equal = looseEqual(a[i], b[i]);\n }\n\n return equal;\n};\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n * Returns boolean true or false\n */\n\n\nvar looseEqual = function looseEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n var aValidType = isDate(a);\n var bValidType = isDate(b);\n\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false;\n }\n\n aValidType = isArray(a);\n bValidType = isArray(b);\n\n if (aValidType || bValidType) {\n return aValidType && bValidType ? compareArrays(a, b) : false;\n }\n\n aValidType = isObject(a);\n bValidType = isObject(b);\n\n if (aValidType || bValidType) {\n /* istanbul ignore if: this if will probably never be called */\n if (!aValidType || !bValidType) {\n return false;\n }\n\n var aKeysCount = keys(a).length;\n var bKeysCount = keys(b).length;\n\n if (aKeysCount !== bKeysCount) {\n return false;\n }\n\n for (var key in a) {\n var aHasKey = hasOwnProperty(a, key);\n var bHasKey = hasOwnProperty(b, key);\n\n if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) {\n return false;\n }\n }\n }\n\n return String(a) === String(b);\n};\n\nvar isEmpty = function isEmpty(value) {\n return !value || keys(value).length === 0;\n};\n\nvar makePropWatcher = function makePropWatcher(propName) {\n return {\n handler: function handler(newValue, oldValue) {\n if (looseEqual(newValue, oldValue)) {\n return;\n }\n\n if (isEmpty(newValue) || isEmpty(oldValue)) {\n this[propName] = cloneDeep(newValue);\n return;\n }\n\n for (var key in oldValue) {\n if (!hasOwnProperty(newValue, key)) {\n this.$delete(this.$data[propName], key);\n }\n }\n\n for (var _key in newValue) {\n this.$set(this.$data[propName], _key, newValue[_key]);\n }\n }\n };\n};\nvar makePropCacheMixin = function makePropCacheMixin(propName, proxyPropName) {\n return extend({\n data: function data() {\n return _defineProperty({}, proxyPropName, cloneDeep(this[propName]));\n },\n watch: _defineProperty({}, propName, makePropWatcher(proxyPropName))\n });\n};\n\nvar attrsMixinVue2 = makePropCacheMixin('$attrs', 'bvAttrs');\nvar attrsMixinVue3 = extend({\n computed: {\n bvAttrs: function bvAttrs() {\n var bvAttrs = _objectSpread2$3({}, this.$attrs);\n\n Object.keys(bvAttrs).forEach(function (key) {\n if (bvAttrs[key] === undefined) {\n delete bvAttrs[key];\n }\n });\n return bvAttrs;\n }\n }\n});\nvar attrsMixin = isVue3 ? attrsMixinVue3 : attrsMixinVue2;\n\nvar getEventRoot = function getEventRoot(vm) {\n return vm.$root.$options.bvEventRoot || vm.$root;\n};\n\nvar PROP$3 = '$_rootListeners'; // --- Mixin ---\n// @vue/component\n\nvar listenOnRootMixin = extend({\n computed: {\n bvEventRoot: function bvEventRoot() {\n return getEventRoot(this);\n }\n },\n created: function created() {\n // Define non-reactive property\n // Object of arrays, keyed by event name,\n // where value is an array of callbacks\n this[PROP$3] = {};\n },\n beforeDestroy: function beforeDestroy() {\n var _this = this;\n\n // Unregister all registered listeners\n keys(this[PROP$3] || {}).forEach(function (event) {\n _this[PROP$3][event].forEach(function (callback) {\n _this.listenOffRoot(event, callback);\n });\n });\n this[PROP$3] = null;\n },\n methods: {\n registerRootListener: function registerRootListener(event, callback) {\n if (this[PROP$3]) {\n this[PROP$3][event] = this[PROP$3][event] || [];\n\n if (!arrayIncludes(this[PROP$3][event], callback)) {\n this[PROP$3][event].push(callback);\n }\n }\n },\n unregisterRootListener: function unregisterRootListener(event, callback) {\n if (this[PROP$3] && this[PROP$3][event]) {\n this[PROP$3][event] = this[PROP$3][event].filter(function (cb) {\n return cb !== callback;\n });\n }\n },\n\n /**\n * Safely register event listeners on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on `$root` and is destroyed,\n * this orphans a callback because the node is gone, but the `$root`\n * does not clear the callback\n *\n * When registering a `$root` listener, it also registers the listener\n * to be removed in the component's `beforeDestroy()` hook\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRoot: function listenOnRoot(event, callback) {\n if (this.bvEventRoot) {\n this.bvEventRoot.$on(event, callback);\n this.registerRootListener(event, callback);\n }\n },\n\n /**\n * Safely register a `$once()` event listener on the root Vue node\n * While Vue automatically removes listeners for individual components,\n * when a component registers a listener on `$root` and is destroyed,\n * this orphans a callback because the node is gone, but the `$root`\n * does not clear the callback\n *\n * When registering a `$root` listener, it also registers the listener\n * to be removed in the component's `beforeDestroy()` hook\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRootOnce: function listenOnRootOnce(event, callback) {\n var _this2 = this;\n\n if (this.bvEventRoot) {\n var _callback = function _callback() {\n _this2.unregisterRootListener(_callback); // eslint-disable-next-line node/no-callback-literal\n\n\n callback.apply(void 0, arguments);\n };\n\n this.bvEventRoot.$once(event, _callback);\n this.registerRootListener(event, _callback);\n }\n },\n\n /**\n * Safely unregister event listeners from the root Vue node\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOffRoot: function listenOffRoot(event, callback) {\n this.unregisterRootListener(event, callback);\n\n if (this.bvEventRoot) {\n this.bvEventRoot.$off(event, callback);\n }\n },\n\n /**\n * Convenience method for calling `vm.$emit()` on `$root`\n *\n * @param {string} event\n * @param {*} args\n */\n emitOnRoot: function emitOnRoot(event) {\n if (this.bvEventRoot) {\n var _this$bvEventRoot;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n (_this$bvEventRoot = this.bvEventRoot).$emit.apply(_this$bvEventRoot, [event].concat(args));\n }\n }\n }\n});\n\nvar listenersMixinVue2 = makePropCacheMixin('$listeners', 'bvListeners');\nvar listenersMixinVue3 = extend({\n data: function data() {\n return {\n bvListeners: {}\n };\n },\n created: function created() {\n this.bvListeners = _objectSpread2$3({}, this.$listeners);\n },\n beforeUpdate: function beforeUpdate() {\n this.bvListeners = _objectSpread2$3({}, this.$listeners);\n }\n});\nvar listenersMixin = isVue3 ? listenersMixinVue3 : listenersMixinVue2;\n\nvar ROOT_EVENT_NAME_CLICKED = getRootEventName(NAME_LINK, 'clicked'); // --- Props ---\n// `` specific props\n\nvar routerLinkProps = {\n activeClass: makeProp(PROP_TYPE_STRING),\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n event: makeProp(PROP_TYPE_ARRAY_STRING),\n exact: makeProp(PROP_TYPE_BOOLEAN, false),\n exactActiveClass: makeProp(PROP_TYPE_STRING),\n exactPath: makeProp(PROP_TYPE_BOOLEAN, false),\n exactPathActiveClass: makeProp(PROP_TYPE_STRING),\n replace: makeProp(PROP_TYPE_BOOLEAN, false),\n routerTag: makeProp(PROP_TYPE_STRING),\n to: makeProp(PROP_TYPE_OBJECT_STRING)\n}; // `` specific props\n\nvar nuxtLinkProps = {\n noPrefetch: makeProp(PROP_TYPE_BOOLEAN, false),\n // Must be `null` to fall back to the value defined in the\n // `nuxt.config.js` configuration file for `router.prefetchLinks`\n // We convert `null` to `undefined`, so that Nuxt.js will use the\n // compiled default\n // Vue treats `undefined` as default of `false` for Boolean props,\n // so we must set it as `null` here to be a true tri-state prop\n prefetch: makeProp(PROP_TYPE_BOOLEAN, null)\n}; // All `` props\n\nvar props$2g = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, nuxtLinkProps), routerLinkProps), {}, {\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n href: makeProp(PROP_TYPE_STRING),\n // Must be `null` if no value provided\n rel: makeProp(PROP_TYPE_STRING, null),\n // To support 3rd party router links based on `` (i.e. `g-link` for Gridsome)\n // Default is to auto choose between `` and ``\n // Gridsome doesn't provide a mechanism to auto detect and has caveats\n // such as not supporting FQDN URLs or hash only URLs\n routerComponentName: makeProp(PROP_TYPE_STRING),\n target: makeProp(PROP_TYPE_STRING, '_self')\n})), NAME_LINK); // --- Main component ---\n// @vue/component\n\nvar BLink = /*#__PURE__*/extend({\n name: NAME_LINK,\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props: props$2g,\n computed: {\n computedTag: function computedTag() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n var to = this.to,\n disabled = this.disabled,\n routerComponentName = this.routerComponentName;\n return computeTag({\n to: to,\n disabled: disabled,\n routerComponentName: routerComponentName\n }, this);\n },\n isRouterLink: function isRouterLink$1() {\n return isRouterLink(this.computedTag);\n },\n computedRel: function computedRel() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n var target = this.target,\n rel = this.rel;\n return computeRel({\n target: target,\n rel: rel\n });\n },\n computedHref: function computedHref() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n var to = this.to,\n href = this.href;\n return computeHref({\n to: to,\n href: href\n }, this.computedTag);\n },\n computedProps: function computedProps() {\n var event = this.event,\n prefetch = this.prefetch,\n routerTag = this.routerTag;\n return this.isRouterLink ? _objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, pluckProps(omit(_objectSpread2$3(_objectSpread2$3({}, routerLinkProps), this.computedTag === 'nuxt-link' ? nuxtLinkProps : {}), ['event', 'prefetch', 'routerTag']), this)), event ? {\n event: event\n } : {}), isBoolean(prefetch) ? {\n prefetch: prefetch\n } : {}), routerTag ? {\n tag: routerTag\n } : {}) : {};\n },\n computedAttrs: function computedAttrs() {\n var bvAttrs = this.bvAttrs,\n href = this.computedHref,\n rel = this.computedRel,\n disabled = this.disabled,\n target = this.target,\n routerTag = this.routerTag,\n isRouterLink = this.isRouterLink;\n return _objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, bvAttrs), href ? {\n href: href\n } : {}), isRouterLink && routerTag && !isTag(routerTag, 'a') ? {} : {\n rel: rel,\n target: target\n }), {}, {\n tabindex: disabled ? '-1' : isUndefined(bvAttrs.tabindex) ? null : bvAttrs.tabindex,\n 'aria-disabled': disabled ? 'true' : null\n });\n },\n computedListeners: function computedListeners() {\n return _objectSpread2$3(_objectSpread2$3({}, this.bvListeners), {}, {\n // We want to overwrite any click handler since our callback\n // will invoke the user supplied handler(s) if `!this.disabled`\n click: this.onClick\n });\n }\n },\n methods: {\n onClick: function onClick(event) {\n var _arguments = arguments;\n var eventIsEvent = isEvent(event);\n var isRouterLink = this.isRouterLink;\n var suppliedHandler = this.bvListeners.click;\n\n if (eventIsEvent && this.disabled) {\n // Stop event from bubbling up\n // Kill the event loop attached to this specific `EventTarget`\n // Needed to prevent `vue-router` for doing its thing\n stopEvent(event, {\n immediatePropagation: true\n });\n } else {\n // Router links do not emit instance `click` events, so we\n // add in an `$emit('click', event)` on its Vue instance\n //\n // seems not to be required for Vue3 compat build\n\n /* istanbul ignore next: difficult to test, but we know it works */\n if (isRouterLink) {\n var _event$currentTarget$;\n\n (_event$currentTarget$ = event.currentTarget.__vue__) === null || _event$currentTarget$ === void 0 ? void 0 : _event$currentTarget$.$emit(EVENT_NAME_CLICK, event);\n } // Call the suppliedHandler(s), if any provided\n\n\n concat(suppliedHandler).filter(function (h) {\n return isFunction(h);\n }).forEach(function (handler) {\n handler.apply(void 0, _toConsumableArray(_arguments));\n }); // Emit the global `$root` click event\n\n this.emitOnRoot(ROOT_EVENT_NAME_CLICKED, event); // TODO: Remove deprecated 'clicked::link' event with next major release\n\n this.emitOnRoot('clicked::link', event);\n } // Stop scroll-to-top behavior or navigation on\n // regular links when href is just '#'\n\n\n if (eventIsEvent && !isRouterLink && this.computedHref === '#') {\n stopEvent(event, {\n propagation: false\n });\n }\n },\n focus: function focus() {\n attemptFocus(this.$el);\n },\n blur: function blur() {\n attemptBlur(this.$el);\n }\n },\n render: function render(h) {\n var active = this.active,\n disabled = this.disabled;\n return h(this.computedTag, _defineProperty({\n class: {\n active: active,\n disabled: disabled\n },\n attrs: this.computedAttrs,\n props: this.computedProps\n }, this.isRouterLink ? 'nativeOn' : 'on', this.computedListeners), this.normalizeSlot());\n }\n});\n\nvar linkProps$7 = omit(props$2g, ['event', 'routerTag']);\ndelete linkProps$7.href.default;\ndelete linkProps$7.to.default;\nvar props$2f = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, linkProps$7), {}, {\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n // Tri-state: `true`, `false` or `null`\n // => On, off, not a toggle\n pressed: makeProp(PROP_TYPE_BOOLEAN, null),\n size: makeProp(PROP_TYPE_STRING),\n squared: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'button'),\n type: makeProp(PROP_TYPE_STRING, 'button'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_BUTTON); // --- Helper methods ---\n// Focus handler for toggle buttons\n// Needs class of 'focus' when focused\n\nvar handleFocus = function handleFocus(event) {\n if (event.type === 'focusin') {\n addClass(event.target, 'focus');\n } else if (event.type === 'focusout') {\n removeClass(event.target, 'focus');\n }\n}; // Is the requested button a link?\n// If tag prop is set to `a`, we use a to get proper disabled handling\n\n\nvar isLink = function isLink(props) {\n return isLink$1(props) || isTag(props.tag, 'a');\n}; // Is the button to be a toggle button?\n\n\nvar isToggle = function isToggle(props) {\n return isBoolean(props.pressed);\n}; // Is the button \"really\" a button?\n\n\nvar isButton = function isButton(props) {\n return !(isLink(props) || props.tag && !isTag(props.tag, 'button'));\n}; // Is the requested tag not a button or link?\n\n\nvar isNonStandardTag$1 = function isNonStandardTag(props) {\n return !isLink(props) && !isButton(props);\n}; // Compute required classes (non static classes)\n\n\nvar computeClass = function computeClass(props) {\n var _ref;\n\n return [\"btn-\".concat(props.variant || 'secondary'), (_ref = {}, _defineProperty(_ref, \"btn-\".concat(props.size), props.size), _defineProperty(_ref, 'btn-block', props.block), _defineProperty(_ref, 'rounded-pill', props.pill), _defineProperty(_ref, 'rounded-0', props.squared && !props.pill), _defineProperty(_ref, \"disabled\", props.disabled), _defineProperty(_ref, \"active\", props.pressed), _ref)];\n}; // Compute the link props to pass to b-link (if required)\n\n\nvar computeLinkProps = function computeLinkProps(props) {\n return isLink(props) ? pluckProps(linkProps$7, props) : {};\n}; // Compute the attributes for a button\n\n\nvar computeAttrs = function computeAttrs(props, data) {\n var button = isButton(props);\n var link = isLink(props);\n var toggle = isToggle(props);\n var nonStandardTag = isNonStandardTag$1(props);\n var hashLink = link && props.href === '#';\n var role = data.attrs && data.attrs.role ? data.attrs.role : null;\n var tabindex = data.attrs ? data.attrs.tabindex : null;\n\n if (nonStandardTag || hashLink) {\n tabindex = '0';\n }\n\n return {\n // Type only used for \"real\" buttons\n type: button && !link ? props.type : null,\n // Disabled only set on \"real\" buttons\n disabled: button ? props.disabled : null,\n // We add a role of button when the tag is not a link or button for ARIA\n // Don't bork any role provided in `data.attrs` when `isLink` or `isButton`\n // Except when link has `href` of `#`\n role: nonStandardTag || hashLink ? 'button' : role,\n // We set the `aria-disabled` state for non-standard tags\n 'aria-disabled': nonStandardTag ? String(props.disabled) : null,\n // For toggles, we need to set the pressed state for ARIA\n 'aria-pressed': toggle ? String(props.pressed) : null,\n // `autocomplete=\"off\"` is needed in toggle mode to prevent some browsers\n // from remembering the previous setting when using the back button\n autocomplete: toggle ? 'off' : null,\n // `tabindex` is used when the component is not a button\n // Links are tabbable, but don't allow disabled, while non buttons or links\n // are not tabbable, so we mimic that functionality by disabling tabbing\n // when disabled, and adding a `tabindex=\"0\"` to non buttons or non links\n tabindex: props.disabled && !button ? '-1' : tabindex\n };\n}; // --- Main component ---\n// @vue/component\n\n\nvar BButton = /*#__PURE__*/extend({\n name: NAME_BUTTON,\n functional: true,\n props: props$2f,\n render: function render(h, _ref2) {\n var props = _ref2.props,\n data = _ref2.data,\n listeners = _ref2.listeners,\n children = _ref2.children;\n var toggle = isToggle(props);\n var link = isLink(props);\n var nonStandardTag = isNonStandardTag$1(props);\n var hashLink = link && props.href === '#';\n var on = {\n keydown: function keydown(event) {\n // When the link is a `href=\"#\"` or a non-standard tag (has `role=\"button\"`),\n // we add a keydown handlers for CODE_SPACE/CODE_ENTER\n\n /* istanbul ignore next */\n if (props.disabled || !(nonStandardTag || hashLink)) {\n return;\n }\n\n var keyCode = event.keyCode; // Add CODE_SPACE handler for `href=\"#\"` and CODE_ENTER handler for non-standard tags\n\n if (keyCode === CODE_SPACE || keyCode === CODE_ENTER && nonStandardTag) {\n var target = event.currentTarget || event.target;\n stopEvent(event, {\n propagation: false\n });\n target.click();\n }\n },\n click: function click(event) {\n /* istanbul ignore if: blink/button disabled should handle this */\n if (props.disabled && isEvent(event)) {\n stopEvent(event);\n } else if (toggle && listeners && listeners['update:pressed']) {\n // Send `.sync` updates to any \"pressed\" prop (if `.sync` listeners)\n // `concat()` will normalize the value to an array without\n // double wrapping an array value in an array\n concat(listeners['update:pressed']).forEach(function (fn) {\n if (isFunction(fn)) {\n fn(!props.pressed);\n }\n });\n }\n }\n };\n\n if (toggle) {\n on.focusin = handleFocus;\n on.focusout = handleFocus;\n }\n\n var componentData = {\n staticClass: 'btn',\n class: computeClass(props),\n props: computeLinkProps(props),\n attrs: computeAttrs(props, data),\n on: on\n };\n return h(link ? BLink : props.tag, mergeData(_objectSpread2$3(_objectSpread2$3({}, data), {}, {\n props: undefined\n }), componentData), children);\n }\n});\n\nvar CLASS_NAME$2 = '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\nvar 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$6 = omit(props$2g, ['active', 'event', 'routerTag']);\nvar props$2e = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, linkProps$6), {}, {\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\nvar BAvatar = /*#__PURE__*/extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n getBvAvatarGroup: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n props: props$2e,\n data: function data() {\n return {\n localSrc: this.src || null\n };\n },\n computed: {\n bvAvatarGroup: function bvAvatarGroup() {\n return this.getBvAvatarGroup();\n },\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$1(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$2,\n class: (_class2 = {}, _defineProperty(_class2, \"\".concat(CLASS_NAME$2, \"-\").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: _objectSpread2$3(_objectSpread2$3({}, 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$6, this) : {},\n on: button || link ? {\n click: this.onClick\n } : {}\n };\n return h(tag, componentData, [$content, $badge]);\n }\n});\n\nvar props$2d = makePropsConfigurable({\n overlap: makeProp(PROP_TYPE_NUMBER_STRING, 0.3),\n // Child avatars will prefer this prop (if set) over their own\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n // Child avatars will always use this over their own size\n size: makeProp(PROP_TYPE_STRING),\n // Child avatars will prefer this prop (if set) over their own\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n // Child avatars will prefer this variant over their own\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_AVATAR_GROUP); // --- Main component ---\n// @vue/component\n\nvar BAvatarGroup = /*#__PURE__*/extend({\n name: NAME_AVATAR_GROUP,\n mixins: [normalizeSlotMixin],\n provide: function provide() {\n var _this = this;\n\n return {\n getBvAvatarGroup: function getBvAvatarGroup() {\n return _this;\n }\n };\n },\n props: props$2d,\n computed: {\n computedSize: function computedSize() {\n return computeSize(this.size);\n },\n overlapScale: function overlapScale() {\n return mathMin(mathMax(toFloat(this.overlap, 0), 0), 1) / 2;\n },\n paddingStyle: function paddingStyle() {\n var value = this.computedSize;\n value = value ? \"calc(\".concat(value, \" * \").concat(this.overlapScale, \")\") : null;\n return value ? {\n paddingLeft: value,\n paddingRight: value\n } : {};\n }\n },\n render: function render(h) {\n var $inner = h('div', {\n staticClass: 'b-avatar-group-inner',\n style: this.paddingStyle\n }, this.normalizeSlot());\n return h(this.tag, {\n staticClass: 'b-avatar-group',\n attrs: {\n role: 'group'\n }\n }, [$inner]);\n }\n});\n\nvar AvatarPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BAvatar: BAvatar,\n BAvatarGroup: BAvatarGroup\n }\n});\n\nvar linkProps$5 = omit(props$2g, ['event', 'routerTag']);\ndelete linkProps$5.href.default;\ndelete linkProps$5.to.default;\nvar props$2c = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, linkProps$5), {}, {\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_BADGE); // --- Main component ---\n// @vue/component\n\nvar BBadge = /*#__PURE__*/extend({\n name: NAME_BADGE,\n functional: true,\n props: props$2c,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var active = props.active,\n disabled = props.disabled;\n var link = isLink$1(props);\n var tag = link ? BLink : props.tag;\n var variant = props.variant || 'secondary';\n return h(tag, mergeData(data, {\n staticClass: 'badge',\n class: [\"badge-\".concat(variant), {\n 'badge-pill': props.pill,\n active: active,\n disabled: disabled\n }],\n props: link ? pluckProps(linkProps$5, props) : {}\n }), children);\n }\n});\n\nvar BadgePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BBadge: BBadge\n }\n});\n\nvar stripTags = function stripTags() {\n var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return String(text).replace(RX_HTML_TAGS, '');\n}; // Generate a `domProps` object for either `innerHTML`, `textContent` or an empty object\n\nvar htmlOrText = function htmlOrText(innerHTML, textContent) {\n return innerHTML ? {\n innerHTML: innerHTML\n } : textContent ? {\n textContent: textContent\n } : {};\n};\n\nvar props$2b = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, omit(props$2g, ['event', 'routerTag'])), {}, {\n ariaCurrent: makeProp(PROP_TYPE_STRING, 'location'),\n html: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING)\n})), NAME_BREADCRUMB_LINK); // --- Main component ---\n// @vue/component\n\nvar BBreadcrumbLink = /*#__PURE__*/extend({\n name: NAME_BREADCRUMB_LINK,\n functional: true,\n props: props$2b,\n render: function render(h, _ref) {\n var suppliedProps = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var active = suppliedProps.active;\n var tag = active ? 'span' : BLink;\n var componentData = {\n attrs: {\n 'aria-current': active ? suppliedProps.ariaCurrent : null\n },\n props: pluckProps(props$2b, suppliedProps)\n };\n\n if (!children) {\n componentData.domProps = htmlOrText(suppliedProps.html, suppliedProps.text);\n }\n\n return h(tag, mergeData(data, componentData), children);\n }\n});\n\nvar props$2a = makePropsConfigurable(props$2b, NAME_BREADCRUMB_ITEM); // --- Main component ---\n// @vue/component\n\nvar BBreadcrumbItem = /*#__PURE__*/extend({\n name: NAME_BREADCRUMB_ITEM,\n functional: true,\n props: props$2a,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h('li', mergeData(data, {\n staticClass: 'breadcrumb-item',\n class: {\n active: props.active\n }\n }), [h(BBreadcrumbLink, {\n props: props\n }, children)]);\n }\n});\n\nvar props$29 = makePropsConfigurable({\n items: makeProp(PROP_TYPE_ARRAY)\n}, NAME_BREADCRUMB); // --- Main component ---\n// @vue/component\n\nvar BBreadcrumb = /*#__PURE__*/extend({\n name: NAME_BREADCRUMB,\n functional: true,\n props: props$29,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var items = props.items; // Build child nodes from items, if given\n\n var childNodes = children;\n\n if (isArray(items)) {\n var activeDefined = false;\n childNodes = items.map(function (item, idx) {\n if (!isObject(item)) {\n item = {\n text: toString(item)\n };\n } // Copy the value here so we can normalize it\n\n\n var _item = item,\n active = _item.active;\n\n if (active) {\n activeDefined = true;\n } // Auto-detect active by position in list\n\n\n if (!active && !activeDefined) {\n active = idx + 1 === items.length;\n }\n\n return h(BBreadcrumbItem, {\n props: _objectSpread2$3(_objectSpread2$3({}, item), {}, {\n active: active\n })\n });\n });\n }\n\n return h('ol', mergeData(data, {\n staticClass: 'breadcrumb'\n }), childNodes);\n }\n});\n\nvar BreadcrumbPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BBreadcrumb: BBreadcrumb,\n BBreadcrumbItem: BBreadcrumbItem,\n BBreadcrumbLink: BBreadcrumbLink\n }\n});\n\nvar ButtonPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BButton: BButton,\n BBtn: BButton,\n BButtonClose: BButtonClose,\n BBtnClose: BButtonClose\n }\n});\n\nvar props$28 = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, pick(props$2f, ['size'])), {}, {\n ariaRole: makeProp(PROP_TYPE_STRING, 'group'),\n size: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n vertical: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_BUTTON_GROUP); // --- Main component ---\n// @vue/component\n\nvar BButtonGroup = /*#__PURE__*/extend({\n name: NAME_BUTTON_GROUP,\n functional: true,\n props: props$28,\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 class: _defineProperty({\n 'btn-group': !props.vertical,\n 'btn-group-vertical': props.vertical\n }, \"btn-group-\".concat(props.size), props.size),\n attrs: {\n role: props.ariaRole\n }\n }), children);\n }\n});\n\nvar ButtonGroupPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BButtonGroup: BButtonGroup,\n BBtnGroup: BButtonGroup\n }\n});\n\nvar ITEM_SELECTOR = ['.btn:not(.disabled):not([disabled]):not(.dropdown-item)', '.form-control:not(.disabled):not([disabled])', 'select:not(.disabled):not([disabled])', 'input[type=\"checkbox\"]:not(.disabled)', 'input[type=\"radio\"]:not(.disabled)'].join(','); // --- Props ---\n\nvar props$27 = makePropsConfigurable({\n justify: makeProp(PROP_TYPE_BOOLEAN, false),\n keyNav: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_BUTTON_TOOLBAR); // --- Main component ---\n// @vue/component\n\nvar BButtonToolbar = /*#__PURE__*/extend({\n name: NAME_BUTTON_TOOLBAR,\n mixins: [normalizeSlotMixin],\n props: props$27,\n mounted: function mounted() {\n // Pre-set the tabindexes if the markup does not include\n // `tabindex=\"-1\"` on the toolbar items\n if (this.keyNav) {\n this.getItems();\n }\n },\n methods: {\n getItems: function getItems() {\n var items = selectAll(ITEM_SELECTOR, this.$el); // Ensure `tabindex=\"-1\"` is set on every item\n\n items.forEach(function (item) {\n item.tabIndex = -1;\n });\n return items.filter(function (el) {\n return isVisible(el);\n });\n },\n focusFirst: function focusFirst() {\n var items = this.getItems();\n attemptFocus(items[0]);\n },\n focusPrev: function focusPrev(event) {\n var items = this.getItems();\n var index = items.indexOf(event.target);\n\n if (index > -1) {\n items = items.slice(0, index).reverse();\n attemptFocus(items[0]);\n }\n },\n focusNext: function focusNext(event) {\n var items = this.getItems();\n var index = items.indexOf(event.target);\n\n if (index > -1) {\n items = items.slice(index + 1);\n attemptFocus(items[0]);\n }\n },\n focusLast: function focusLast() {\n var items = this.getItems().reverse();\n attemptFocus(items[0]);\n },\n onFocusin: function onFocusin(event) {\n var $el = this.$el;\n\n if (event.target === $el && !contains($el, event.relatedTarget)) {\n stopEvent(event);\n this.focusFirst(event);\n }\n },\n onKeydown: function onKeydown(event) {\n var keyCode = event.keyCode,\n shiftKey = event.shiftKey;\n\n if (keyCode === CODE_UP || keyCode === CODE_LEFT) {\n stopEvent(event);\n shiftKey ? this.focusFirst(event) : this.focusPrev(event);\n } else if (keyCode === CODE_DOWN || keyCode === CODE_RIGHT) {\n stopEvent(event);\n shiftKey ? this.focusLast(event) : this.focusNext(event);\n }\n }\n },\n render: function render(h) {\n var keyNav = this.keyNav;\n return h('div', {\n staticClass: 'btn-toolbar',\n class: {\n 'justify-content-between': this.justify\n },\n attrs: {\n role: 'toolbar',\n tabindex: keyNav ? '0' : null\n },\n on: keyNav ? {\n focusin: this.onFocusin,\n keydown: this.onKeydown\n } : {}\n }, [this.normalizeSlot()]);\n }\n});\n\nvar ButtonToolbarPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BButtonToolbar: BButtonToolbar,\n BBtnToolbar: BButtonToolbar\n }\n});\n\nvar CALENDAR_GREGORY = 'gregory';\nvar CALENDAR_LONG = 'long';\nvar CALENDAR_NARROW = 'narrow';\nvar CALENDAR_SHORT = 'short';\nvar DATE_FORMAT_2_DIGIT = '2-digit';\nvar DATE_FORMAT_NUMERIC = 'numeric';\n\n// Create or clone a date (`new Date(...)` shortcut)\n\nvar createDate = function createDate() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _construct(Date, args);\n}; // Parse a date sting, or Date object, into a Date object (with no time information)\n\nvar parseYMD = function parseYMD(date) {\n if (isString(date) && RX_DATE.test(date.trim())) {\n var _date$split$map = date.split(RX_DATE_SPLIT).map(function (v) {\n return toInteger(v, 1);\n }),\n _date$split$map2 = _slicedToArray(_date$split$map, 3),\n year = _date$split$map2[0],\n month = _date$split$map2[1],\n day = _date$split$map2[2];\n\n return createDate(year, month - 1, day);\n } else if (isDate(date)) {\n return createDate(date.getFullYear(), date.getMonth(), date.getDate());\n }\n\n return null;\n}; // Format a date object as `YYYY-MM-DD` format\n\nvar formatYMD = function formatYMD(date) {\n date = parseYMD(date);\n\n if (!date) {\n return null;\n }\n\n var year = date.getFullYear();\n var month = \"0\".concat(date.getMonth() + 1).slice(-2);\n var day = \"0\".concat(date.getDate()).slice(-2);\n return \"\".concat(year, \"-\").concat(month, \"-\").concat(day);\n}; // Given a locale (or locales), resolve the browser available locale\n\nvar resolveLocale = function resolveLocale(locales)\n/* istanbul ignore next */\n{\n var calendar = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : CALENDAR_GREGORY;\n locales = concat(locales).filter(identity);\n var fmt = new Intl.DateTimeFormat(locales, {\n calendar: calendar\n });\n return fmt.resolvedOptions().locale;\n}; // Create a `Intl.DateTimeFormat` formatter function\n\nvar createDateFormatter = function createDateFormatter(locale, options)\n/* istanbul ignore next */\n{\n var dtf = new Intl.DateTimeFormat(locale, options);\n return dtf.format;\n}; // Determine if two dates are the same date (ignoring time portion)\n\nvar datesEqual = function datesEqual(date1, date2) {\n // Returns true of the date portion of two date objects are equal\n // We don't compare the time portion\n return formatYMD(date1) === formatYMD(date2);\n}; // --- Date \"math\" utility methods (for BCalendar component mainly) ---\n\nvar firstDateOfMonth = function firstDateOfMonth(date) {\n date = createDate(date);\n date.setDate(1);\n return date;\n};\nvar lastDateOfMonth = function lastDateOfMonth(date) {\n date = createDate(date);\n date.setMonth(date.getMonth() + 1);\n date.setDate(0);\n return date;\n};\nvar addYears = function addYears(date, numberOfYears) {\n date = createDate(date);\n var month = date.getMonth();\n date.setFullYear(date.getFullYear() + numberOfYears); // Handle Feb 29th for leap years\n\n if (date.getMonth() !== month) {\n date.setDate(0);\n }\n\n return date;\n};\nvar oneMonthAgo = function oneMonthAgo(date) {\n date = createDate(date);\n var month = date.getMonth();\n date.setMonth(month - 1); // Handle when days in month are different\n\n if (date.getMonth() === month) {\n date.setDate(0);\n }\n\n return date;\n};\nvar oneMonthAhead = function oneMonthAhead(date) {\n date = createDate(date);\n var month = date.getMonth();\n date.setMonth(month + 1); // Handle when days in month are different\n\n if (date.getMonth() === (month + 2) % 12) {\n date.setDate(0);\n }\n\n return date;\n};\nvar oneYearAgo = function oneYearAgo(date) {\n return addYears(date, -1);\n};\nvar oneYearAhead = function oneYearAhead(date) {\n return addYears(date, 1);\n};\nvar oneDecadeAgo = function oneDecadeAgo(date) {\n return addYears(date, -10);\n};\nvar oneDecadeAhead = function oneDecadeAhead(date) {\n return addYears(date, 10);\n}; // Helper function to constrain a date between two values\n// Always returns a `Date` object or `null` if no date passed\n\nvar constrainDate = function constrainDate(date) {\n var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n // Ensure values are `Date` objects (or `null`)\n date = parseYMD(date);\n min = parseYMD(min) || date;\n max = parseYMD(max) || date; // Return a new `Date` object (or `null`)\n\n return date ? date < min ? min : date > max ? max : date : null;\n};\n\n// Localization utilities\n\nvar RTL_LANGS = ['ar', 'az', 'ckb', 'fa', 'he', 'ks', 'lrc', 'mzn', 'ps', 'sd', 'te', 'ug', 'ur', 'yi'].map(function (locale) {\n return locale.toLowerCase();\n}); // Returns true if the locale is RTL\n\nvar isLocaleRTL = function isLocaleRTL(locale) {\n // Determines if the locale is RTL (only single locale supported)\n var parts = toString(locale).toLowerCase().replace(RX_STRIP_LOCALE_MODS, '').split('-');\n var locale1 = parts.slice(0, 2).join('-');\n var locale2 = parts[0];\n return arrayIncludes(RTL_LANGS, locale1) || arrayIncludes(RTL_LANGS, locale2);\n};\n\n// SSR safe client-side ID attribute generation\n\nvar props$26 = {\n id: makeProp(PROP_TYPE_STRING)\n}; // --- Mixin ---\n// @vue/component\n\nvar idMixin = extend({\n props: props$26,\n data: function data() {\n return {\n localId_: null\n };\n },\n computed: {\n safeId: function safeId() {\n // Computed property that returns a dynamic function for creating the ID\n // Reacts to changes in both `.id` and `.localId_` and regenerates a new function\n var id = this.id || this.localId_; // We return a function that accepts an optional suffix string\n // So this computed prop looks and works like a method\n // but benefits from Vue's computed prop caching\n\n var fn = function fn(suffix) {\n if (!id) {\n return null;\n }\n\n suffix = String(suffix || '').replace(/\\s+/g, '_');\n return suffix ? id + '_' + suffix : id;\n };\n\n return fn;\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n // `mounted()` only occurs client-side\n this.$nextTick(function () {\n // Update DOM with auto-generated ID after mount\n // to prevent SSR hydration errors\n _this.localId_ = \"__BVID__\".concat(_this[COMPONENT_UID_KEY]);\n });\n }\n});\n\nvar _watch$j;\n\nvar _makeModelMixin$j = makeModelMixin('value', {\n type: PROP_TYPE_DATE_STRING\n}),\n modelMixin$i = _makeModelMixin$j.mixin,\n modelProps$i = _makeModelMixin$j.props,\n MODEL_PROP_NAME$i = _makeModelMixin$j.prop,\n MODEL_EVENT_NAME$i = _makeModelMixin$j.event; // --- Props ---\n\n\nvar props$25 = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$26), modelProps$i), {}, {\n ariaControls: makeProp(PROP_TYPE_STRING),\n // Makes calendar the full width of its parent container\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n dateDisabledFn: makeProp(PROP_TYPE_FUNCTION),\n // `Intl.DateTimeFormat` object\n dateFormatOptions: makeProp(PROP_TYPE_OBJECT, {\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n day: DATE_FORMAT_NUMERIC,\n weekday: CALENDAR_LONG\n }),\n // Function to set a class of (classes) on the date cell\n // if passed a string or an array\n // TODO:\n // If the function returns an object, look for class prop for classes,\n // and other props for handling events/details/descriptions\n dateInfoFn: makeProp(PROP_TYPE_FUNCTION),\n // 'ltr', 'rtl', or `null` (for auto detect)\n direction: makeProp(PROP_TYPE_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n // When `true`, renders a comment node, but keeps the component instance active\n // Mainly for , so that we can get the component's value and locale\n // But we might just use separate date formatters, using the resolved locale\n // (adjusted for the gregorian calendar)\n hidden: makeProp(PROP_TYPE_BOOLEAN, false),\n // When `true` makes the selected date header `sr-only`\n hideHeader: makeProp(PROP_TYPE_BOOLEAN, false),\n // This specifies the calendar year/month/day that will be shown when\n // first opening the datepicker if no v-model value is provided\n // Default is the current date (or `min`/`max`)\n initialDate: makeProp(PROP_TYPE_DATE_STRING),\n // Labels for buttons and keyboard shortcuts\n labelCalendar: makeProp(PROP_TYPE_STRING, 'Calendar'),\n labelCurrentMonth: makeProp(PROP_TYPE_STRING, 'Current month'),\n labelHelp: makeProp(PROP_TYPE_STRING, 'Use cursor keys to navigate calendar dates'),\n labelNav: makeProp(PROP_TYPE_STRING, 'Calendar navigation'),\n labelNextDecade: makeProp(PROP_TYPE_STRING, 'Next decade'),\n labelNextMonth: makeProp(PROP_TYPE_STRING, 'Next month'),\n labelNextYear: makeProp(PROP_TYPE_STRING, 'Next year'),\n labelNoDateSelected: makeProp(PROP_TYPE_STRING, 'No date selected'),\n labelPrevDecade: makeProp(PROP_TYPE_STRING, 'Previous decade'),\n labelPrevMonth: makeProp(PROP_TYPE_STRING, 'Previous month'),\n labelPrevYear: makeProp(PROP_TYPE_STRING, 'Previous year'),\n labelSelected: makeProp(PROP_TYPE_STRING, 'Selected date'),\n labelToday: makeProp(PROP_TYPE_STRING, 'Today'),\n // Locale(s) to use\n // Default is to use page/browser default setting\n locale: makeProp(PROP_TYPE_ARRAY_STRING),\n max: makeProp(PROP_TYPE_DATE_STRING),\n min: makeProp(PROP_TYPE_DATE_STRING),\n // Variant color to use for the navigation buttons\n navButtonVariant: makeProp(PROP_TYPE_STRING, 'secondary'),\n // Disable highlighting today's date\n noHighlightToday: makeProp(PROP_TYPE_BOOLEAN, false),\n noKeyNav: makeProp(PROP_TYPE_BOOLEAN, false),\n readonly: makeProp(PROP_TYPE_BOOLEAN, false),\n roleDescription: makeProp(PROP_TYPE_STRING),\n // Variant color to use for the selected date\n selectedVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n // When `true` enables the decade navigation buttons\n showDecadeNav: makeProp(PROP_TYPE_BOOLEAN, false),\n // Day of week to start calendar on\n // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n startWeekday: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n // Variant color to use for today's date (defaults to `selectedVariant`)\n todayVariant: makeProp(PROP_TYPE_STRING),\n // Always return the `v-model` value as a date object\n valueAsDate: makeProp(PROP_TYPE_BOOLEAN, false),\n // Format of the weekday names at the top of the calendar\n // `short` is typically a 3 letter abbreviation,\n // `narrow` is typically a single letter\n // `long` is the full week day name\n // Although some locales may override this (i.e `ar`, etc.)\n weekdayHeaderFormat: makeProp(PROP_TYPE_STRING, CALENDAR_SHORT, function (value) {\n return arrayIncludes([CALENDAR_LONG, CALENDAR_SHORT, CALENDAR_NARROW], value);\n }),\n // Has no effect if prop `block` is set\n width: makeProp(PROP_TYPE_STRING, '270px')\n})), NAME_CALENDAR); // --- Main component ---\n// @vue/component\n\nvar BCalendar = extend({\n name: NAME_CALENDAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, modelMixin$i, normalizeSlotMixin],\n props: props$25,\n data: function data() {\n var selected = formatYMD(this[MODEL_PROP_NAME$i]) || '';\n return {\n // Selected date\n selectedYMD: selected,\n // Date in calendar grid that has `tabindex` of `0`\n activeYMD: selected || formatYMD(constrainDate(this.initialDate || this.getToday()), this.min, this.max),\n // Will be true if the calendar grid has/contains focus\n gridHasFocus: false,\n // Flag to enable the `aria-live` region(s) after mount\n // to prevent screen reader \"outbursts\" when mounting\n isLive: false\n };\n },\n computed: {\n valueId: function valueId() {\n return this.safeId();\n },\n widgetId: function widgetId() {\n return this.safeId('_calendar-wrapper_');\n },\n navId: function navId() {\n return this.safeId('_calendar-nav_');\n },\n gridId: function gridId() {\n return this.safeId('_calendar-grid_');\n },\n gridCaptionId: function gridCaptionId() {\n return this.safeId('_calendar-grid-caption_');\n },\n gridHelpId: function gridHelpId() {\n return this.safeId('_calendar-grid-help_');\n },\n activeId: function activeId() {\n return this.activeYMD ? this.safeId(\"_cell-\".concat(this.activeYMD, \"_\")) : null;\n },\n // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n selectedDate: function selectedDate() {\n // Selected as a `Date` object\n return parseYMD(this.selectedYMD);\n },\n activeDate: function activeDate() {\n // Active as a `Date` object\n return parseYMD(this.activeYMD);\n },\n computedMin: function computedMin() {\n return parseYMD(this.min);\n },\n computedMax: function computedMax() {\n return parseYMD(this.max);\n },\n computedWeekStarts: function computedWeekStarts() {\n // `startWeekday` is a prop (constrained to `0` through `6`)\n return mathMax(toInteger(this.startWeekday, 0), 0) % 7;\n },\n computedLocale: function computedLocale() {\n // Returns the resolved locale used by the calendar\n return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY);\n },\n computedDateDisabledFn: function computedDateDisabledFn() {\n var dateDisabledFn = this.dateDisabledFn;\n return hasPropFunction(dateDisabledFn) ? dateDisabledFn : function () {\n return false;\n };\n },\n // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n computedDateInfoFn: function computedDateInfoFn() {\n var dateInfoFn = this.dateInfoFn;\n return hasPropFunction(dateInfoFn) ? dateInfoFn : function () {\n return {};\n };\n },\n calendarLocale: function calendarLocale() {\n // This locale enforces the gregorian calendar (for use in formatter functions)\n // Needed because IE 11 resolves `ar-IR` as islamic-civil calendar\n // and IE 11 (and some other browsers) do not support the `calendar` option\n // And we currently only support the gregorian calendar\n var fmt = new Intl.DateTimeFormat(this.computedLocale, {\n calendar: CALENDAR_GREGORY\n });\n var calendar = fmt.resolvedOptions().calendar;\n var locale = fmt.resolvedOptions().locale;\n /* istanbul ignore if: mainly for IE 11 and a few other browsers, hard to test in JSDOM */\n\n if (calendar !== CALENDAR_GREGORY) {\n // Ensure the locale requests the gregorian calendar\n // Mainly for IE 11, and currently we can't handle non-gregorian calendars\n // TODO: Should we always return this value?\n locale = locale.replace(/-u-.+$/i, '').concat('-u-ca-gregory');\n }\n\n return locale;\n },\n calendarYear: function calendarYear() {\n return this.activeDate.getFullYear();\n },\n calendarMonth: function calendarMonth() {\n return this.activeDate.getMonth();\n },\n calendarFirstDay: function calendarFirstDay() {\n // We set the time for this date to 12pm to work around\n // date formatting issues in Firefox and Safari\n // See: https://github.com/bootstrap-vue/bootstrap-vue/issues/5818\n return createDate(this.calendarYear, this.calendarMonth, 1, 12);\n },\n calendarDaysInMonth: function calendarDaysInMonth() {\n // We create a new date as to not mutate the original\n var date = createDate(this.calendarFirstDay);\n date.setMonth(date.getMonth() + 1, 0);\n return date.getDate();\n },\n computedVariant: function computedVariant() {\n return \"btn-\".concat(this.selectedVariant || 'primary');\n },\n computedTodayVariant: function computedTodayVariant() {\n return \"btn-outline-\".concat(this.todayVariant || this.selectedVariant || 'primary');\n },\n computedNavButtonVariant: function computedNavButtonVariant() {\n return \"btn-outline-\".concat(this.navButtonVariant || 'primary');\n },\n isRTL: function isRTL() {\n // `true` if the language requested is RTL\n var dir = toString(this.direction).toLowerCase();\n\n if (dir === 'rtl') {\n /* istanbul ignore next */\n return true;\n } else if (dir === 'ltr') {\n /* istanbul ignore next */\n return false;\n }\n\n return isLocaleRTL(this.computedLocale);\n },\n context: function context() {\n var selectedYMD = this.selectedYMD,\n activeYMD = this.activeYMD;\n var selectedDate = parseYMD(selectedYMD);\n var activeDate = parseYMD(activeYMD);\n return {\n // The current value of the `v-model`\n selectedYMD: selectedYMD,\n selectedDate: selectedDate,\n selectedFormatted: selectedDate ? this.formatDateString(selectedDate) : this.labelNoDateSelected,\n // Which date cell is considered active due to navigation\n activeYMD: activeYMD,\n activeDate: activeDate,\n activeFormatted: activeDate ? this.formatDateString(activeDate) : '',\n // `true` if the date is disabled (when using keyboard navigation)\n disabled: this.dateDisabled(activeDate),\n // Locales used in formatting dates\n locale: this.computedLocale,\n calendarLocale: this.calendarLocale,\n rtl: this.isRTL\n };\n },\n // Computed props that return a function reference\n dateOutOfRange: function dateOutOfRange() {\n // Check whether a date is within the min/max range\n // Returns a new function ref if the pops change\n // We do this as we need to trigger the calendar computed prop\n // to update when these props update\n var min = this.computedMin,\n max = this.computedMax;\n return function (date) {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date);\n return min && date < min || max && date > max;\n };\n },\n dateDisabled: function dateDisabled() {\n var _this = this;\n\n // Returns a function for validating if a date is within range\n // We grab this variables first to ensure a new function ref\n // is generated when the props value changes\n // We do this as we need to trigger the calendar computed prop\n // to update when these props update\n var rangeFn = this.dateOutOfRange; // Return the function ref\n\n return function (date) {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date);\n var ymd = formatYMD(date);\n return !!(rangeFn(date) || _this.computedDateDisabledFn(ymd, date));\n };\n },\n // Computed props that return date formatter functions\n formatDateString: function formatDateString() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, _objectSpread2$3(_objectSpread2$3({\n // Ensure we have year, month, day shown for screen readers/ARIA\n // If users really want to leave one of these out, they can\n // pass `undefined` for the property value\n year: DATE_FORMAT_NUMERIC,\n month: DATE_FORMAT_2_DIGIT,\n day: DATE_FORMAT_2_DIGIT\n }, this.dateFormatOptions), {}, {\n // Ensure hours/minutes/seconds are not shown\n // As we do not support the time portion (yet)\n hour: undefined,\n minute: undefined,\n second: undefined,\n // Ensure calendar is gregorian\n calendar: CALENDAR_GREGORY\n }));\n },\n formatYearMonth: function formatYearMonth() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, {\n year: DATE_FORMAT_NUMERIC,\n month: CALENDAR_LONG,\n calendar: CALENDAR_GREGORY\n });\n },\n formatWeekdayName: function formatWeekdayName() {\n // Long weekday name for weekday header aria-label\n return createDateFormatter(this.calendarLocale, {\n weekday: CALENDAR_LONG,\n calendar: CALENDAR_GREGORY\n });\n },\n formatWeekdayNameShort: function formatWeekdayNameShort() {\n // Weekday header cell format\n // defaults to 'short' 3 letter days, where possible\n return createDateFormatter(this.calendarLocale, {\n weekday: this.weekdayHeaderFormat || CALENDAR_SHORT,\n calendar: CALENDAR_GREGORY\n });\n },\n formatDay: function formatDay() {\n // Calendar grid day number formatter\n // We don't use DateTimeFormatter here as it can place extra\n // character(s) after the number (i.e the `zh` locale)\n var nf = new Intl.NumberFormat([this.computedLocale], {\n style: 'decimal',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n notation: 'standard'\n }); // Return a formatter function instance\n\n return function (date) {\n return nf.format(date.getDate());\n };\n },\n // Disabled states for the nav buttons\n prevDecadeDisabled: function prevDecadeDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneDecadeAgo(this.activeDate)) < min;\n },\n prevYearDisabled: function prevYearDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneYearAgo(this.activeDate)) < min;\n },\n prevMonthDisabled: function prevMonthDisabled() {\n var min = this.computedMin;\n return this.disabled || min && lastDateOfMonth(oneMonthAgo(this.activeDate)) < min;\n },\n thisMonthDisabled: function thisMonthDisabled() {\n // TODO: We could/should check if today is out of range\n return this.disabled;\n },\n nextMonthDisabled: function nextMonthDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneMonthAhead(this.activeDate)) > max;\n },\n nextYearDisabled: function nextYearDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneYearAhead(this.activeDate)) > max;\n },\n nextDecadeDisabled: function nextDecadeDisabled() {\n var max = this.computedMax;\n return this.disabled || max && firstDateOfMonth(oneDecadeAhead(this.activeDate)) > max;\n },\n // Calendar dates generation\n calendar: function calendar() {\n var matrix = [];\n var firstDay = this.calendarFirstDay;\n var calendarYear = firstDay.getFullYear();\n var calendarMonth = firstDay.getMonth();\n var daysInMonth = this.calendarDaysInMonth;\n var startIndex = firstDay.getDay(); // `0`..`6`\n\n var weekOffset = (this.computedWeekStarts > startIndex ? 7 : 0) - this.computedWeekStarts; // Build the calendar matrix\n\n var currentDay = 0 - weekOffset - startIndex;\n\n for (var week = 0; week < 6 && currentDay < daysInMonth; week++) {\n // For each week\n matrix[week] = []; // The following could be a map function\n\n for (var j = 0; j < 7; j++) {\n // For each day in week\n currentDay++;\n var date = createDate(calendarYear, calendarMonth, currentDay);\n var month = date.getMonth();\n var dayYMD = formatYMD(date);\n var dayDisabled = this.dateDisabled(date); // TODO: This could be a normalizer method\n\n var dateInfo = this.computedDateInfoFn(dayYMD, parseYMD(dayYMD));\n dateInfo = isString(dateInfo) || isArray(dateInfo) ?\n /* istanbul ignore next */\n {\n class: dateInfo\n } : isPlainObject(dateInfo) ? _objectSpread2$3({\n class: ''\n }, dateInfo) :\n /* istanbul ignore next */\n {\n class: ''\n };\n matrix[week].push({\n ymd: dayYMD,\n // Cell content\n day: this.formatDay(date),\n label: this.formatDateString(date),\n // Flags for styling\n isThisMonth: month === calendarMonth,\n isDisabled: dayDisabled,\n // TODO: Handle other dateInfo properties such as notes/events\n info: dateInfo\n });\n }\n }\n\n return matrix;\n },\n calendarHeadings: function calendarHeadings() {\n var _this2 = this;\n\n return this.calendar[0].map(function (d) {\n return {\n text: _this2.formatWeekdayNameShort(parseYMD(d.ymd)),\n label: _this2.formatWeekdayName(parseYMD(d.ymd))\n };\n });\n }\n },\n watch: (_watch$j = {}, _defineProperty(_watch$j, MODEL_PROP_NAME$i, function (newValue, oldValue) {\n var selected = formatYMD(newValue) || '';\n var old = formatYMD(oldValue) || '';\n\n if (!datesEqual(selected, old)) {\n this.activeYMD = selected || this.activeYMD;\n this.selectedYMD = selected;\n }\n }), _defineProperty(_watch$j, \"selectedYMD\", function selectedYMD(newYMD, oldYMD) {\n // TODO:\n // Should we compare to `formatYMD(this.value)` and emit\n // only if they are different?\n if (newYMD !== oldYMD) {\n this.$emit(MODEL_EVENT_NAME$i, this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '');\n }\n }), _defineProperty(_watch$j, \"context\", function context(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT, newValue);\n }\n }), _defineProperty(_watch$j, \"hidden\", function hidden(newValue) {\n // Reset the active focused day when hidden\n this.activeYMD = this.selectedYMD || formatYMD(this[MODEL_PROP_NAME$i] || this.constrainDate(this.initialDate || this.getToday())); // Enable/disable the live regions\n\n this.setLive(!newValue);\n }), _watch$j),\n created: function created() {\n var _this3 = this;\n\n this.$nextTick(function () {\n _this3.$emit(EVENT_NAME_CONTEXT, _this3.context);\n });\n },\n mounted: function mounted() {\n this.setLive(true);\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n this.setLive(true);\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n this.setLive(false);\n },\n beforeDestroy: function beforeDestroy() {\n this.setLive(false);\n },\n methods: {\n // Public method(s)\n focus: function focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.grid);\n }\n },\n blur: function blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.grid);\n }\n },\n // Private methods\n setLive: function setLive(on) {\n var _this4 = this;\n\n if (on) {\n this.$nextTick(function () {\n requestAF(function () {\n _this4.isLive = true;\n });\n });\n } else {\n this.isLive = false;\n }\n },\n getToday: function getToday() {\n return parseYMD(createDate());\n },\n constrainDate: function constrainDate$1(date) {\n // Constrains a date between min and max\n // returns a new `Date` object instance\n return constrainDate(date, this.computedMin, this.computedMax);\n },\n emitSelected: function emitSelected(date) {\n var _this5 = this;\n\n // Performed in a `$nextTick()` to (probably) ensure\n // the input event has emitted first\n this.$nextTick(function () {\n _this5.$emit(EVENT_NAME_SELECTED, formatYMD(date) || '', parseYMD(date) || null);\n });\n },\n // Event handlers\n setGridFocusFlag: function setGridFocusFlag(event) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && event.type === 'focus';\n },\n onKeydownWrapper: function onKeydownWrapper(event) {\n // Calendar keyboard navigation\n // Handles PAGEUP/PAGEDOWN/END/HOME/LEFT/UP/RIGHT/DOWN\n // Focuses grid after updating\n if (this.noKeyNav) {\n /* istanbul ignore next */\n return;\n }\n\n var altKey = event.altKey,\n ctrlKey = event.ctrlKey,\n keyCode = event.keyCode;\n\n if (!arrayIncludes([CODE_PAGEUP, CODE_PAGEDOWN, CODE_END, CODE_HOME, CODE_LEFT, CODE_UP, CODE_RIGHT, CODE_DOWN], keyCode)) {\n /* istanbul ignore next */\n return;\n }\n\n stopEvent(event);\n var activeDate = createDate(this.activeDate);\n var checkDate = createDate(this.activeDate);\n var day = activeDate.getDate();\n var constrainedToday = this.constrainDate(this.getToday());\n var isRTL = this.isRTL;\n\n if (keyCode === CODE_PAGEUP) {\n // PAGEUP - Previous month/year\n activeDate = (altKey ? ctrlKey ? oneDecadeAgo : oneYearAgo : oneMonthAgo)(activeDate); // We check the first day of month to be in rage\n\n checkDate = createDate(activeDate);\n checkDate.setDate(1);\n } else if (keyCode === CODE_PAGEDOWN) {\n // PAGEDOWN - Next month/year\n activeDate = (altKey ? ctrlKey ? oneDecadeAhead : oneYearAhead : oneMonthAhead)(activeDate); // We check the last day of month to be in rage\n\n checkDate = createDate(activeDate);\n checkDate.setMonth(checkDate.getMonth() + 1);\n checkDate.setDate(0);\n } else if (keyCode === CODE_LEFT) {\n // LEFT - Previous day (or next day for RTL)\n activeDate.setDate(day + (isRTL ? 1 : -1));\n activeDate = this.constrainDate(activeDate);\n checkDate = activeDate;\n } else if (keyCode === CODE_RIGHT) {\n // RIGHT - Next day (or previous day for RTL)\n activeDate.setDate(day + (isRTL ? -1 : 1));\n activeDate = this.constrainDate(activeDate);\n checkDate = activeDate;\n } else if (keyCode === CODE_UP) {\n // UP - Previous week\n activeDate.setDate(day - 7);\n activeDate = this.constrainDate(activeDate);\n checkDate = activeDate;\n } else if (keyCode === CODE_DOWN) {\n // DOWN - Next week\n activeDate.setDate(day + 7);\n activeDate = this.constrainDate(activeDate);\n checkDate = activeDate;\n } else if (keyCode === CODE_HOME) {\n // HOME - Today\n activeDate = constrainedToday;\n checkDate = activeDate;\n } else if (keyCode === CODE_END) {\n // END - Selected date, or today if no selected date\n activeDate = parseYMD(this.selectedDate) || constrainedToday;\n checkDate = activeDate;\n }\n\n if (!this.dateOutOfRange(checkDate) && !datesEqual(activeDate, this.activeDate)) {\n // We only jump to date if within min/max\n // We don't check for individual disabled dates though (via user function)\n this.activeYMD = formatYMD(activeDate);\n } // Ensure grid is focused\n\n\n this.focus();\n },\n onKeydownGrid: function onKeydownGrid(event) {\n // Pressing enter/space on grid to select active date\n var keyCode = event.keyCode;\n var activeDate = this.activeDate;\n\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n stopEvent(event);\n\n if (!this.disabled && !this.readonly && !this.dateDisabled(activeDate)) {\n this.selectedYMD = formatYMD(activeDate);\n this.emitSelected(activeDate);\n } // Ensure grid is focused\n\n\n this.focus();\n }\n },\n onClickDay: function onClickDay(day) {\n // Clicking on a date \"button\" to select it\n var selectedDate = this.selectedDate,\n activeDate = this.activeDate;\n var clickedDate = parseYMD(day.ymd);\n\n if (!this.disabled && !day.isDisabled && !this.dateDisabled(clickedDate)) {\n if (!this.readonly) {\n // If readonly mode, we don't set the selected date, just the active date\n // If the clicked date is equal to the already selected date, we don't update the model\n this.selectedYMD = formatYMD(datesEqual(clickedDate, selectedDate) ? selectedDate : clickedDate);\n this.emitSelected(clickedDate);\n }\n\n this.activeYMD = formatYMD(datesEqual(clickedDate, activeDate) ? activeDate : createDate(clickedDate)); // Ensure grid is focused\n\n this.focus();\n }\n },\n gotoPrevDecade: function gotoPrevDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAgo(this.activeDate)));\n },\n gotoPrevYear: function gotoPrevYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAgo(this.activeDate)));\n },\n gotoPrevMonth: function gotoPrevMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAgo(this.activeDate)));\n },\n gotoCurrentMonth: function gotoCurrentMonth() {\n // TODO: Maybe this goto date should be configurable?\n this.activeYMD = formatYMD(this.constrainDate(this.getToday()));\n },\n gotoNextMonth: function gotoNextMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAhead(this.activeDate)));\n },\n gotoNextYear: function gotoNextYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAhead(this.activeDate)));\n },\n gotoNextDecade: function gotoNextDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAhead(this.activeDate)));\n },\n onHeaderClick: function onHeaderClick() {\n if (!this.disabled) {\n this.activeYMD = this.selectedYMD || formatYMD(this.getToday());\n this.focus();\n }\n }\n },\n render: function render(h) {\n var _this6 = this;\n\n // If `hidden` prop is set, render just a placeholder node\n if (this.hidden) {\n return h();\n }\n\n var valueId = this.valueId,\n widgetId = this.widgetId,\n navId = this.navId,\n gridId = this.gridId,\n gridCaptionId = this.gridCaptionId,\n gridHelpId = this.gridHelpId,\n activeId = this.activeId,\n disabled = this.disabled,\n noKeyNav = this.noKeyNav,\n isLive = this.isLive,\n isRTL = this.isRTL,\n activeYMD = this.activeYMD,\n selectedYMD = this.selectedYMD,\n safeId = this.safeId;\n var hideDecadeNav = !this.showDecadeNav;\n var todayYMD = formatYMD(this.getToday());\n var highlightToday = !this.noHighlightToday; // Header showing current selected date\n\n var $header = h('output', {\n staticClass: 'form-control form-control-sm text-center',\n class: {\n 'text-muted': disabled,\n readonly: this.readonly || disabled\n },\n attrs: {\n id: valueId,\n for: gridId,\n role: 'status',\n tabindex: disabled ? null : '-1',\n // Mainly for testing purposes, as we do not know\n // the exact format `Intl` will format the date string\n 'data-selected': toString(selectedYMD),\n // We wait until after mount to enable `aria-live`\n // to prevent initial announcement on page render\n 'aria-live': isLive ? 'polite' : 'off',\n 'aria-atomic': isLive ? 'true' : null\n },\n on: {\n // Transfer focus/click to focus grid\n // and focus active date (or today if no selection)\n click: this.onHeaderClick,\n focus: this.onHeaderClick\n }\n }, this.selectedDate ? [// We use `bdi` elements here in case the label doesn't match the locale\n // Although IE 11 does not deal with at all (equivalent to a span)\n h('bdi', {\n staticClass: 'sr-only'\n }, \" (\".concat(toString(this.labelSelected), \") \")), h('bdi', this.formatDateString(this.selectedDate))] : this.labelNoDateSelected || \"\\xA0\" // ' '\n );\n $header = h(this.headerTag, {\n staticClass: 'b-calendar-header',\n class: {\n 'sr-only': this.hideHeader\n },\n attrs: {\n title: this.selectedDate ? this.labelSelected || null : null\n }\n }, [$header]); // Content for the date navigation buttons\n\n var navScope = {\n isRTL: isRTL\n };\n var navProps = {\n shiftV: 0.5\n };\n\n var navPrevProps = _objectSpread2$3(_objectSpread2$3({}, navProps), {}, {\n flipH: isRTL\n });\n\n var navNextProps = _objectSpread2$3(_objectSpread2$3({}, navProps), {}, {\n flipH: !isRTL\n });\n\n var $prevDecadeIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_DECADE, navScope) || h(BIconChevronBarLeft, {\n props: navPrevProps\n });\n var $prevYearIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_YEAR, navScope) || h(BIconChevronDoubleLeft, {\n props: navPrevProps\n });\n var $prevMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_PEV_MONTH, navScope) || h(BIconChevronLeft, {\n props: navPrevProps\n });\n var $thisMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_THIS_MONTH, navScope) || h(BIconCircleFill, {\n props: navProps\n });\n var $nextMonthIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_MONTH, navScope) || h(BIconChevronLeft, {\n props: navNextProps\n });\n var $nextYearIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_YEAR, navScope) || h(BIconChevronDoubleLeft, {\n props: navNextProps\n });\n var $nextDecadeIcon = this.normalizeSlot(SLOT_NAME_NAV_NEXT_DECADE, navScope) || h(BIconChevronBarLeft, {\n props: navNextProps\n }); // Utility to create the date navigation buttons\n\n var makeNavBtn = function makeNavBtn(content, label, handler, btnDisabled, shortcut) {\n return h('button', {\n staticClass: 'btn btn-sm border-0 flex-fill',\n class: [_this6.computedNavButtonVariant, {\n disabled: btnDisabled\n }],\n attrs: {\n title: label || null,\n type: 'button',\n tabindex: noKeyNav ? '-1' : null,\n 'aria-label': label || null,\n 'aria-disabled': btnDisabled ? 'true' : null,\n 'aria-keyshortcuts': shortcut || null\n },\n on: btnDisabled ? {} : {\n click: handler\n }\n }, [h('div', {\n attrs: {\n 'aria-hidden': 'true'\n }\n }, [content])]);\n }; // Generate the date navigation buttons\n\n\n var $nav = h('div', {\n staticClass: 'b-calendar-nav d-flex',\n attrs: {\n id: navId,\n role: 'group',\n tabindex: noKeyNav ? '-1' : null,\n 'aria-hidden': disabled ? 'true' : null,\n 'aria-label': this.labelNav || null,\n 'aria-controls': gridId\n }\n }, [hideDecadeNav ? h() : makeNavBtn($prevDecadeIcon, this.labelPrevDecade, this.gotoPrevDecade, this.prevDecadeDisabled, 'Ctrl+Alt+PageDown'), makeNavBtn($prevYearIcon, this.labelPrevYear, this.gotoPrevYear, this.prevYearDisabled, 'Alt+PageDown'), makeNavBtn($prevMonthIcon, this.labelPrevMonth, this.gotoPrevMonth, this.prevMonthDisabled, 'PageDown'), makeNavBtn($thisMonthIcon, this.labelCurrentMonth, this.gotoCurrentMonth, this.thisMonthDisabled, 'Home'), makeNavBtn($nextMonthIcon, this.labelNextMonth, this.gotoNextMonth, this.nextMonthDisabled, 'PageUp'), makeNavBtn($nextYearIcon, this.labelNextYear, this.gotoNextYear, this.nextYearDisabled, 'Alt+PageUp'), hideDecadeNav ? h() : makeNavBtn($nextDecadeIcon, this.labelNextDecade, this.gotoNextDecade, this.nextDecadeDisabled, 'Ctrl+Alt+PageUp')]); // Caption for calendar grid\n\n var $gridCaption = h('div', {\n staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n class: {\n 'text-muted': disabled\n },\n attrs: {\n id: gridCaptionId,\n 'aria-live': isLive ? 'polite' : null,\n 'aria-atomic': isLive ? 'true' : null\n },\n key: 'grid-caption'\n }, this.formatYearMonth(this.calendarFirstDay)); // Calendar weekday headings\n\n var $gridWeekDays = h('div', {\n staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n attrs: {\n 'aria-hidden': 'true'\n }\n }, this.calendarHeadings.map(function (d, idx) {\n return h('small', {\n staticClass: 'col text-truncate',\n class: {\n 'text-muted': disabled\n },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n },\n key: idx\n }, d.text);\n })); // Calendar day grid\n\n var $gridBody = this.calendar.map(function (week) {\n var $cells = week.map(function (day, dIndex) {\n var _class;\n\n var isSelected = day.ymd === selectedYMD;\n var isActive = day.ymd === activeYMD;\n var isToday = day.ymd === todayYMD;\n var idCell = safeId(\"_cell-\".concat(day.ymd, \"_\")); // \"fake\" button\n\n var $btn = h('span', {\n staticClass: 'btn border-0 rounded-circle text-nowrap',\n // Should we add some classes to signify if today/selected/etc?\n class: (_class = {\n // Give the fake button a focus ring\n focus: isActive && _this6.gridHasFocus,\n // Styling\n disabled: day.isDisabled || disabled,\n active: isSelected\n }, _defineProperty(_class, _this6.computedVariant, isSelected), _defineProperty(_class, _this6.computedTodayVariant, isToday && highlightToday && !isSelected && day.isThisMonth), _defineProperty(_class, 'btn-outline-light', !(isToday && highlightToday) && !isSelected && !isActive), _defineProperty(_class, 'btn-light', !(isToday && highlightToday) && !isSelected && isActive), _defineProperty(_class, 'text-muted', !day.isThisMonth && !isSelected), _defineProperty(_class, 'text-dark', !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth), _defineProperty(_class, 'font-weight-bold', (isSelected || day.isThisMonth) && !day.isDisabled), _class),\n on: {\n click: function click() {\n return _this6.onClickDay(day);\n }\n }\n }, day.day);\n return h('div', // Cell with button\n {\n staticClass: 'col p-0',\n class: day.isDisabled ? 'bg-light' : day.info.class || '',\n attrs: {\n id: idCell,\n role: 'button',\n 'data-date': day.ymd,\n // Primarily for testing purposes\n // Only days in the month are presented as buttons to screen readers\n 'aria-hidden': day.isThisMonth ? null : 'true',\n 'aria-disabled': day.isDisabled || disabled ? 'true' : null,\n 'aria-label': [day.label, isSelected ? \"(\".concat(_this6.labelSelected, \")\") : null, isToday ? \"(\".concat(_this6.labelToday, \")\") : null].filter(identity).join(' '),\n // NVDA doesn't convey `aria-selected`, but does `aria-current`,\n // ChromeVox doesn't convey `aria-current`, but does `aria-selected`,\n // so we set both attributes for robustness\n 'aria-selected': isSelected ? 'true' : null,\n 'aria-current': isSelected ? 'date' : null\n },\n key: dIndex\n }, [$btn]);\n }); // Return the week \"row\"\n // We use the first day of the weeks YMD value as a\n // key for efficient DOM patching / element re-use\n\n return h('div', {\n staticClass: 'row no-gutters',\n key: week[0].ymd\n }, $cells);\n });\n $gridBody = h('div', {\n // A key is only required on the body if we add in transition support\n staticClass: 'b-calendar-grid-body',\n style: disabled ? {\n pointerEvents: 'none'\n } : {} // key: this.activeYMD.slice(0, -3)\n\n }, $gridBody);\n var $gridHelp = h('div', {\n staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n attrs: {\n id: gridHelpId\n }\n }, [h('div', {\n staticClass: 'small'\n }, this.labelHelp)]);\n var $grid = h('div', {\n staticClass: 'b-calendar-grid form-control h-auto text-center',\n attrs: {\n id: gridId,\n role: 'application',\n tabindex: noKeyNav ? '-1' : disabled ? null : '0',\n 'data-month': activeYMD.slice(0, -3),\n // `YYYY-MM`, mainly for testing\n 'aria-roledescription': this.labelCalendar || null,\n 'aria-labelledby': gridCaptionId,\n 'aria-describedby': gridHelpId,\n // `aria-readonly` is not considered valid on `role=\"application\"`\n // https://www.w3.org/TR/wai-aria-1.1/#aria-readonly\n // 'aria-readonly': this.readonly && !disabled ? 'true' : null,\n 'aria-disabled': disabled ? 'true' : null,\n 'aria-activedescendant': activeId\n },\n on: {\n keydown: this.onKeydownGrid,\n focus: this.setGridFocusFlag,\n blur: this.setGridFocusFlag\n },\n ref: 'grid'\n }, [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]); // Optional bottom slot\n\n var $slot = this.normalizeSlot();\n $slot = $slot ? h('footer', {\n staticClass: 'b-calendar-footer'\n }, $slot) : h();\n var $widget = h('div', {\n staticClass: 'b-calendar-inner',\n style: this.block ? {} : {\n width: this.width\n },\n attrs: {\n id: widgetId,\n dir: isRTL ? 'rtl' : 'ltr',\n lang: this.computedLocale || null,\n role: 'group',\n 'aria-disabled': disabled ? 'true' : null,\n // If datepicker controls an input, this will specify the ID of the input\n 'aria-controls': this.ariaControls || null,\n // This should be a prop (so it can be changed to Date picker, etc, localized\n 'aria-roledescription': this.roleDescription || null,\n 'aria-describedby': [// Should the attr (if present) go last?\n // Or should this attr be a prop?\n this.bvAttrs['aria-describedby'], valueId, gridHelpId].filter(identity).join(' ')\n },\n on: {\n keydown: this.onKeydownWrapper\n }\n }, [$header, $nav, $grid, $slot]); // Wrap in an outer div that can be styled\n\n return h('div', {\n staticClass: 'b-calendar',\n class: {\n 'd-block': this.block\n }\n }, [$widget]);\n }\n});\n\nvar CalendarPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BCalendar: BCalendar\n }\n});\n\nvar props$24 = 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\nextend({\n props: props$24\n});\n\nvar props$23 = makePropsConfigurable({\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n}, NAME_CARD_TITLE); // --- Main component ---\n// @vue/component\n\nvar BCardTitle = /*#__PURE__*/extend({\n name: NAME_CARD_TITLE,\n functional: true,\n props: props$23,\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});\n\nvar props$22 = 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\nvar BCardSubTitle = /*#__PURE__*/extend({\n name: NAME_CARD_SUB_TITLE,\n functional: true,\n props: props$22,\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});\n\nvar props$21 = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$23), props$22), copyProps(props$24, 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\nvar BCardBody = /*#__PURE__*/extend({\n name: NAME_CARD_BODY,\n functional: true,\n props: props$21,\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(props$23, props)\n });\n }\n\n var $subTitle = h();\n\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(props$22, 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});\n\nvar props$20 = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, copyProps(props$24, 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\nvar BCardHeader = /*#__PURE__*/extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props: props$20,\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});\n\nvar props$1$ = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, copyProps(props$24, 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\nvar BCardFooter = /*#__PURE__*/extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props: props$1$,\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});\n\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\nvar props$1_ = 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\nvar BImg = /*#__PURE__*/extend({\n name: NAME_IMG,\n functional: true,\n props: props$1_,\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});\n\nvar props$1Z = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, pick(props$1_, ['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\nvar BCardImg = /*#__PURE__*/extend({\n name: NAME_CARD_IMG,\n functional: true,\n props: props$1Z,\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});\n\nvar cardImgProps = copyProps(props$1Z, prefixPropName.bind(null, 'img'));\ncardImgProps.imgSrc.required = false;\nvar props$1Y = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$21), props$20), props$1$), cardImgProps), props$24), {}, {\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CARD); // --- Main component ---\n// @vue/component\n\nvar BCard = /*#__PURE__*/extend({\n name: NAME_CARD,\n functional: true,\n props: props$1Y,\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(props$20, 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(props$21, 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(props$1$, 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});\n\nvar OBSERVER_PROP_NAME = '__bv__visibility_observer';\n\nvar VisibilityObserver = /*#__PURE__*/function () {\n function VisibilityObserver(el, options) {\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();\n }\n\n _createClass(VisibilityObserver, [{\n key: \"createObserver\",\n value: function createObserver() {\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 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$1 = function bind(el, _ref) {\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); // 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$1 = 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$1(el, {\n value: value,\n modifiers: modifiers\n });\n }\n}; // When directive un-binds from element\n\n\nvar unbind$1 = function unbind(el) {\n // Remove the observer\n destroy(el);\n}; // Export the directive\n\n\nvar VBVisible = {\n bind: bind$1,\n componentUpdated: componentUpdated$1,\n unbind: unbind$1\n};\n\nvar _watch$i;\n\nvar MODEL_PROP_NAME_SHOW$1 = 'show';\nvar MODEL_EVENT_NAME_SHOW$1 = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW$1; // --- Props ---\n\nvar imgProps$1 = omit(props$1_, ['blank']);\nvar props$1X = makePropsConfigurable(_objectSpread2$3(_objectSpread2$3({}, imgProps$1), {}, _defineProperty({\n blankHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n // If `null`, a blank image is generated\n blankSrc: makeProp(PROP_TYPE_STRING, null),\n blankWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n // Distance away from viewport (in pixels)\n // before being considered \"visible\"\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 360)\n}, MODEL_PROP_NAME_SHOW$1, makeProp(PROP_TYPE_BOOLEAN, false))), NAME_IMG_LAZY); // --- Main component ---\n// @vue/component\n\nvar BImgLazy = /*#__PURE__*/extend({\n name: NAME_IMG_LAZY,\n directives: {\n 'b-visible': VBVisible\n },\n props: props$1X,\n data: function data() {\n return {\n isShown: this[MODEL_PROP_NAME_SHOW$1]\n };\n },\n computed: {\n computedSrc: function computedSrc() {\n var blankSrc = this.blankSrc;\n return !blankSrc || this.isShown ? this.src : blankSrc;\n },\n computedBlank: function computedBlank() {\n return !(this.isShown || this.blankSrc);\n },\n computedWidth: function computedWidth() {\n var width = this.width;\n return this.isShown ? width : this.blankWidth || width;\n },\n computedHeight: function computedHeight() {\n var height = this.height;\n return this.isShown ? height : this.blankHeight || height;\n },\n computedSrcset: function computedSrcset() {\n var srcset = concat(this.srcset).filter(identity).join(',');\n return srcset && (!this.blankSrc || this.isShown) ? srcset : null;\n },\n computedSizes: function computedSizes() {\n var sizes = concat(this.sizes).filter(identity).join(',');\n return sizes && (!this.blankSrc || this.isShown) ? sizes : null;\n }\n },\n watch: (_watch$i = {}, _defineProperty(_watch$i, MODEL_PROP_NAME_SHOW$1, function (newValue, oldValue) {\n if (newValue !== oldValue) {\n // If `IntersectionObserver` support is not available, image is always shown\n var visible = HAS_INTERACTION_OBSERVER_SUPPORT ? newValue : true;\n this.isShown = visible; // Ensure the show prop is synced (when no `IntersectionObserver`)\n\n if (newValue !== visible) {\n this.$nextTick(this.updateShowProp);\n }\n }\n }), _defineProperty(_watch$i, \"isShown\", function isShown(newValue, oldValue) {\n // Update synched show prop\n if (newValue !== oldValue) {\n this.updateShowProp();\n }\n }), _watch$i),\n mounted: function mounted() {\n var _this = this;\n\n // If `IntersectionObserver` is not available, image is always shown\n this.$nextTick(function () {\n _this.isShown = HAS_INTERACTION_OBSERVER_SUPPORT ? _this[MODEL_PROP_NAME_SHOW$1] : true;\n });\n },\n methods: {\n updateShowProp: function updateShowProp() {\n this.$emit(MODEL_EVENT_NAME_SHOW$1, this.isShown);\n },\n doShow: function doShow(visible) {\n var _this2 = this;\n\n // If IntersectionObserver is not supported, the callback\n // will be called with `null` rather than `true` or `false`\n if ((visible || visible === null) && !this.isShown) {\n // In a `requestAF()` to render the `blank` placeholder properly\n // for fast loading images in some browsers (i.e. Firefox)\n requestAF(function () {\n _this2.isShown = true;\n });\n }\n }\n },\n render: function render(h) {\n var directives = [];\n\n if (!this.isShown) {\n var _modifiers;\n\n // We only add the visible directive if we are not shown\n directives.push({\n // Visible directive will silently do nothing if\n // `IntersectionObserver` is not supported\n name: 'b-visible',\n // Value expects a callback (passed one arg of `visible` = `true` or `false`)\n value: this.doShow,\n modifiers: (_modifiers = {}, _defineProperty(_modifiers, \"\".concat(toInteger(this.offset, 0)), true), _defineProperty(_modifiers, \"once\", true), _modifiers)\n });\n }\n\n return h(BImg, {\n directives: directives,\n props: _objectSpread2$3(_objectSpread2$3({}, pluckProps(imgProps$1, this.$props)), {}, {\n // Computed value props\n src: this.computedSrc,\n blank: this.computedBlank,\n width: this.computedWidth,\n height: this.computedHeight,\n srcset: this.computedSrcset,\n sizes: this.computedSizes\n })\n });\n }\n});\n\nvar props$1W = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, omit(props$1X, keys(props$1_))), omit(props$1Z, ['src', 'alt', 'width', 'height']))), NAME_CARD_IMG_LAZY); // --- Main component ---\n// @vue/component\n\nvar BCardImgLazy = /*#__PURE__*/extend({\n name: NAME_CARD_IMG_LAZY,\n functional: true,\n props: props$1W,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\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(BImgLazy, mergeData(data, {\n class: [baseClass],\n // Exclude `left` and `right` props before passing to ``\n props: omit(props, ['left', 'right'])\n }));\n }\n});\n\nvar props$1V = makePropsConfigurable({\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n}, NAME_CARD_TEXT); // --- Main component ---\n// @vue/component\n\nvar BCardText = /*#__PURE__*/extend({\n name: NAME_CARD_TEXT,\n functional: true,\n props: props$1V,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h(props.textTag, mergeData(data, {\n staticClass: 'card-text'\n }), children);\n }\n});\n\nvar props$1U = makePropsConfigurable({\n columns: makeProp(PROP_TYPE_BOOLEAN, false),\n deck: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n}, NAME_CARD_GROUP); // --- Main component ---\n// @vue/component\n\nvar BCardGroup = /*#__PURE__*/extend({\n name: NAME_CARD_GROUP,\n functional: true,\n props: props$1U,\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 class: props.deck ? 'card-deck' : props.columns ? 'card-columns' : 'card-group'\n }), children);\n }\n});\n\nvar CardPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BCard: BCard,\n BCardHeader: BCardHeader,\n BCardBody: BCardBody,\n BCardTitle: BCardTitle,\n BCardSubTitle: BCardSubTitle,\n BCardFooter: BCardFooter,\n BCardImg: BCardImg,\n BCardImgLazy: BCardImgLazy,\n BCardText: BCardText,\n BCardGroup: BCardGroup\n }\n});\n\nvar noop = function noop() {};\n\n/**\n * Observe a DOM element changes, falls back to eventListener mode\n * @param {Element} el The DOM element to observe\n * @param {Function} callback callback to be called on change\n * @param {object} [options={childList: true, subtree: true}] observe options\n * @see https://stackoverflow.com/questions/3219758\n */\n\nvar observeDom = function observeDom(el, callback, options)\n/* istanbul ignore next: difficult to test in JSDOM */\n{\n // Handle cases where we might be passed a Vue instance\n el = el ? el.$el || el : null; // Early exit when we have no element\n\n /* istanbul ignore next: difficult to test in JSDOM */\n\n if (!isElement(el)) {\n return null;\n } // Exit and throw a warning when `MutationObserver` isn't available\n\n\n if (warnNoMutationObserverSupport('observeDom')) {\n return null;\n } // Define a new observer\n\n\n var obs = new MutationObs(function (mutations) {\n var changed = false; // A mutation can contain several change records, so we loop\n // through them to see what has changed\n // We break out of the loop early if any \"significant\" change\n // has been detected\n\n for (var i = 0; i < mutations.length && !changed; i++) {\n // The mutation record\n var mutation = mutations[i]; // Mutation type\n\n var type = mutation.type; // DOM node (could be any DOM node type - HTMLElement, Text, comment, etc.)\n\n var target = mutation.target; // Detect whether a change happened based on type and target\n\n if (type === 'characterData' && target.nodeType === Node.TEXT_NODE) {\n // We ignore nodes that are not TEXT (i.e. comments, etc.)\n // as they don't change layout\n changed = true;\n } else if (type === 'attributes') {\n changed = true;\n } else if (type === 'childList' && (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0)) {\n // This includes HTMLElement and text nodes being\n // added/removed/re-arranged\n changed = true;\n }\n } // We only call the callback if a change that could affect\n // layout/size truly happened\n\n\n if (changed) {\n callback();\n }\n }); // Have the observer observe foo for changes in children, etc\n\n obs.observe(el, _objectSpread2$3({\n childList: true,\n subtree: true\n }, options)); // We return a reference to the observer so that `obs.disconnect()`\n // can be called if necessary\n // To reduce overhead when the root element is hidden\n\n return obs;\n};\n\nvar _watch$h;\n\nvar _makeModelMixin$i = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER,\n defaultValue: 0\n}),\n modelMixin$h = _makeModelMixin$i.mixin,\n modelProps$h = _makeModelMixin$i.props,\n MODEL_PROP_NAME$h = _makeModelMixin$i.prop,\n MODEL_EVENT_NAME$h = _makeModelMixin$i.event; // Slide directional classes\n\n\nvar DIRECTION = {\n next: {\n dirClass: 'carousel-item-left',\n overlayClass: 'carousel-item-next'\n },\n prev: {\n dirClass: 'carousel-item-right',\n overlayClass: 'carousel-item-prev'\n }\n}; // Fallback Transition duration (with a little buffer) in ms\n\nvar TRANS_DURATION = 600 + 50; // Time for mouse compat events to fire after touch\n\nvar TOUCH_EVENT_COMPAT_WAIT = 500; // Number of pixels to consider touch move a swipe\n\nvar SWIPE_THRESHOLD = 40; // PointerEvent pointer types\n\nvar PointerType = {\n TOUCH: 'touch',\n PEN: 'pen'\n}; // Transition Event names\n\nvar TransitionEndEvents$1 = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'otransitionend oTransitionEnd',\n transition: 'transitionend'\n}; // --- Helper methods ---\n// Return the browser specific transitionEnd event name\n\nvar getTransitionEndEvent = function getTransitionEndEvent(el) {\n for (var name in TransitionEndEvents$1) {\n if (!isUndefined(el.style[name])) {\n return TransitionEndEvents$1[name];\n }\n } // Fallback\n\n /* istanbul ignore next */\n\n\n return null;\n}; // --- Props ---\n\n\nvar props$1T = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$26), modelProps$h), {}, {\n background: makeProp(PROP_TYPE_STRING),\n controls: makeProp(PROP_TYPE_BOOLEAN, false),\n // Enable cross-fade animation instead of slide animation\n fade: makeProp(PROP_TYPE_BOOLEAN, false),\n // Sniffed by carousel-slide\n imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n // Sniffed by carousel-slide\n imgWidth: makeProp(PROP_TYPE_NUMBER_STRING),\n indicators: makeProp(PROP_TYPE_BOOLEAN, false),\n interval: makeProp(PROP_TYPE_NUMBER, 5000),\n labelGotoSlide: makeProp(PROP_TYPE_STRING, 'Goto slide'),\n labelIndicators: makeProp(PROP_TYPE_STRING, 'Select a slide to display'),\n labelNext: makeProp(PROP_TYPE_STRING, 'Next slide'),\n labelPrev: makeProp(PROP_TYPE_STRING, 'Previous slide'),\n // Disable slide/fade animation\n noAnimation: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable pause on hover\n noHoverPause: makeProp(PROP_TYPE_BOOLEAN, false),\n // Sniffed by carousel-slide\n noTouch: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable wrapping/looping when start/end is reached\n noWrap: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_CAROUSEL); // --- Main component ---\n// @vue/component\n\nvar BCarousel = /*#__PURE__*/extend({\n name: NAME_CAROUSEL,\n mixins: [idMixin, modelMixin$h, normalizeSlotMixin],\n provide: function provide() {\n var _this = this;\n\n return {\n getBvCarousel: function getBvCarousel() {\n return _this;\n }\n };\n },\n props: props$1T,\n data: function data() {\n return {\n index: this[MODEL_PROP_NAME$h] || 0,\n isSliding: false,\n transitionEndEvent: null,\n slides: [],\n direction: null,\n isPaused: !(toInteger(this.interval, 0) > 0),\n // Touch event handling values\n touchStartX: 0,\n touchDeltaX: 0\n };\n },\n computed: {\n numSlides: function numSlides() {\n return this.slides.length;\n }\n },\n watch: (_watch$h = {}, _defineProperty(_watch$h, MODEL_PROP_NAME$h, function (newValue, oldValue) {\n if (newValue !== oldValue) {\n this.setSlide(toInteger(newValue, 0));\n }\n }), _defineProperty(_watch$h, \"interval\", function interval(newValue, oldValue) {\n /* istanbul ignore next */\n if (newValue === oldValue) {\n return;\n }\n\n if (!newValue) {\n // Pausing slide show\n this.pause(false);\n } else {\n // Restarting or Changing interval\n this.pause(true);\n this.start(false);\n }\n }), _defineProperty(_watch$h, \"isPaused\", function isPaused(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(newValue ? EVENT_NAME_PAUSED : EVENT_NAME_UNPAUSED);\n }\n }), _defineProperty(_watch$h, \"index\", function index(to, from) {\n /* istanbul ignore next */\n if (to === from || this.isSliding) {\n return;\n }\n\n this.doSlide(to, from);\n }), _watch$h),\n created: function created() {\n // Create private non-reactive props\n this.$_interval = null;\n this.$_animationTimeout = null;\n this.$_touchTimeout = null;\n this.$_observer = null; // Set initial paused state\n\n this.isPaused = !(toInteger(this.interval, 0) > 0);\n },\n mounted: function mounted() {\n // Cache current browser transitionend event name\n this.transitionEndEvent = getTransitionEndEvent(this.$el) || null; // Get all slides\n\n this.updateSlides(); // Observe child changes so we can update slide list\n\n this.setObserver(true);\n },\n beforeDestroy: function beforeDestroy() {\n this.clearInterval();\n this.clearAnimationTimeout();\n this.clearTouchTimeout();\n this.setObserver(false);\n },\n methods: {\n clearInterval: function (_clearInterval) {\n function clearInterval() {\n return _clearInterval.apply(this, arguments);\n }\n\n clearInterval.toString = function () {\n return _clearInterval.toString();\n };\n\n return clearInterval;\n }(function () {\n clearInterval(this.$_interval);\n this.$_interval = null;\n }),\n clearAnimationTimeout: function clearAnimationTimeout() {\n clearTimeout(this.$_animationTimeout);\n this.$_animationTimeout = null;\n },\n clearTouchTimeout: function clearTouchTimeout() {\n clearTimeout(this.$_touchTimeout);\n this.$_touchTimeout = null;\n },\n setObserver: function setObserver() {\n var on = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n this.$_observer && this.$_observer.disconnect();\n this.$_observer = null;\n\n if (on) {\n this.$_observer = observeDom(this.$refs.inner, this.updateSlides.bind(this), {\n subtree: false,\n childList: true,\n attributes: true,\n attributeFilter: ['id']\n });\n }\n },\n // Set slide\n setSlide: function setSlide(slide) {\n var _this2 = this;\n\n var direction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n // Don't animate when page is not visible\n\n /* istanbul ignore if: difficult to test */\n if (IS_BROWSER && document.visibilityState && document.hidden) {\n return;\n }\n\n var noWrap = this.noWrap;\n var numSlides = this.numSlides; // Make sure we have an integer (you never know!)\n\n slide = mathFloor(slide); // Don't do anything if nothing to slide to\n\n if (numSlides === 0) {\n return;\n } // Don't change slide while transitioning, wait until transition is done\n\n\n if (this.isSliding) {\n // Schedule slide after sliding complete\n this.$once(EVENT_NAME_SLIDING_END, function () {\n // Wrap in `requestAF()` to allow the slide to properly finish to avoid glitching\n requestAF(function () {\n return _this2.setSlide(slide, direction);\n });\n });\n return;\n }\n\n this.direction = direction; // Set new slide index\n // Wrap around if necessary (if no-wrap not enabled)\n\n this.index = slide >= numSlides ? noWrap ? numSlides - 1 : 0 : slide < 0 ? noWrap ? 0 : numSlides - 1 : slide; // Ensure the v-model is synched up if no-wrap is enabled\n // and user tried to slide pass either ends\n\n if (noWrap && this.index !== slide && this.index !== this[MODEL_PROP_NAME$h]) {\n this.$emit(MODEL_EVENT_NAME$h, this.index);\n }\n },\n // Previous slide\n prev: function prev() {\n this.setSlide(this.index - 1, 'prev');\n },\n // Next slide\n next: function next() {\n this.setSlide(this.index + 1, 'next');\n },\n // Pause auto rotation\n pause: function pause(event) {\n if (!event) {\n this.isPaused = true;\n }\n\n this.clearInterval();\n },\n // Start auto rotate slides\n start: function start(event) {\n if (!event) {\n this.isPaused = false;\n }\n /* istanbul ignore next: most likely will never happen, but just in case */\n\n\n this.clearInterval(); // Don't start if no interval, or less than 2 slides\n\n if (this.interval && this.numSlides > 1) {\n this.$_interval = setInterval(this.next, mathMax(1000, this.interval));\n }\n },\n // Restart auto rotate slides when focus/hover leaves the carousel\n\n /* istanbul ignore next */\n restart: function restart() {\n if (!this.$el.contains(getActiveElement())) {\n this.start();\n }\n },\n doSlide: function doSlide(to, from) {\n var _this3 = this;\n\n var isCycling = Boolean(this.interval); // Determine sliding direction\n\n var direction = this.calcDirection(this.direction, from, to);\n var overlayClass = direction.overlayClass;\n var dirClass = direction.dirClass; // Determine current and next slides\n\n var currentSlide = this.slides[from];\n var nextSlide = this.slides[to]; // Don't do anything if there aren't any slides to slide to\n\n if (!currentSlide || !nextSlide) {\n /* istanbul ignore next */\n return;\n } // Start animating\n\n\n this.isSliding = true;\n\n if (isCycling) {\n this.pause(false);\n }\n\n this.$emit(EVENT_NAME_SLIDING_START, to); // Update v-model\n\n this.$emit(MODEL_EVENT_NAME$h, this.index);\n\n if (this.noAnimation) {\n addClass(nextSlide, 'active');\n removeClass(currentSlide, 'active');\n this.isSliding = false; // Notify ourselves that we're done sliding (slid)\n\n this.$nextTick(function () {\n return _this3.$emit(EVENT_NAME_SLIDING_END, to);\n });\n } else {\n addClass(nextSlide, overlayClass); // Trigger a reflow of next slide\n\n reflow(nextSlide);\n addClass(currentSlide, dirClass);\n addClass(nextSlide, dirClass); // Transition End handler\n\n var called = false;\n /* istanbul ignore next: difficult to test */\n\n var onceTransEnd = function onceTransEnd() {\n if (called) {\n return;\n }\n\n called = true;\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n\n if (_this3.transitionEndEvent) {\n var events = _this3.transitionEndEvent.split(/\\s+/);\n\n events.forEach(function (event) {\n return eventOff(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE);\n });\n }\n\n _this3.clearAnimationTimeout();\n\n removeClass(nextSlide, dirClass);\n removeClass(nextSlide, overlayClass);\n addClass(nextSlide, 'active');\n removeClass(currentSlide, 'active');\n removeClass(currentSlide, dirClass);\n removeClass(currentSlide, overlayClass);\n setAttr(currentSlide, 'aria-current', 'false');\n setAttr(nextSlide, 'aria-current', 'true');\n setAttr(currentSlide, 'aria-hidden', 'true');\n setAttr(nextSlide, 'aria-hidden', 'false');\n _this3.isSliding = false;\n _this3.direction = null; // Notify ourselves that we're done sliding (slid)\n\n _this3.$nextTick(function () {\n return _this3.$emit(EVENT_NAME_SLIDING_END, to);\n });\n }; // Set up transitionend handler\n\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n\n\n if (this.transitionEndEvent) {\n var events = this.transitionEndEvent.split(/\\s+/);\n events.forEach(function (event) {\n return eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE);\n });\n } // Fallback to setTimeout()\n\n\n this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION);\n }\n\n if (isCycling) {\n this.start(false);\n }\n },\n // Update slide list\n updateSlides: function updateSlides() {\n this.pause(true); // Get all slides as DOM elements\n\n this.slides = selectAll('.carousel-item', this.$refs.inner);\n var numSlides = this.slides.length; // Keep slide number in range\n\n var index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1));\n this.slides.forEach(function (slide, idx) {\n var n = idx + 1;\n\n if (idx === index) {\n addClass(slide, 'active');\n setAttr(slide, 'aria-current', 'true');\n } else {\n removeClass(slide, 'active');\n setAttr(slide, 'aria-current', 'false');\n }\n\n setAttr(slide, 'aria-posinset', String(n));\n setAttr(slide, 'aria-setsize', String(numSlides));\n }); // Set slide as active\n\n this.setSlide(index);\n this.start(this.isPaused);\n },\n calcDirection: function calcDirection() {\n var direction = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var curIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var nextIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n if (!direction) {\n return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev;\n }\n\n return DIRECTION[direction];\n },\n handleClick: function handleClick(event, fn) {\n var keyCode = event.keyCode;\n\n if (event.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n stopEvent(event);\n fn();\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n handleSwipe: function handleSwipe() {\n var absDeltaX = mathAbs(this.touchDeltaX);\n\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n\n var direction = absDeltaX / this.touchDeltaX; // Reset touch delta X\n // https://github.com/twbs/bootstrap/pull/28558\n\n this.touchDeltaX = 0;\n\n if (direction > 0) {\n // Swipe left\n this.prev();\n } else if (direction < 0) {\n // Swipe right\n this.next();\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchStart: function touchStart(event) {\n if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n this.touchStartX = event.clientX;\n } else if (!HAS_POINTER_EVENT_SUPPORT) {\n this.touchStartX = event.touches[0].clientX;\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchMove: function touchMove(event) {\n // Ensure swiping with one touch and not pinching\n if (event.touches && event.touches.length > 1) {\n this.touchDeltaX = 0;\n } else {\n this.touchDeltaX = event.touches[0].clientX - this.touchStartX;\n }\n },\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n touchEnd: function touchEnd(event) {\n if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.clientX - this.touchStartX;\n }\n\n this.handleSwipe(); // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause(false);\n this.clearTouchTimeout();\n this.$_touchTimeout = setTimeout(this.start, TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval));\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var indicators = this.indicators,\n background = this.background,\n noAnimation = this.noAnimation,\n noHoverPause = this.noHoverPause,\n noTouch = this.noTouch,\n index = this.index,\n isSliding = this.isSliding,\n pause = this.pause,\n restart = this.restart,\n touchStart = this.touchStart,\n touchEnd = this.touchEnd;\n var idInner = this.safeId('__BV_inner_'); // Wrapper for slides\n\n var $inner = h('div', {\n staticClass: 'carousel-inner',\n attrs: {\n id: idInner,\n role: 'list'\n },\n ref: 'inner'\n }, [this.normalizeSlot()]); // Prev and next controls\n\n var $controls = h();\n\n if (this.controls) {\n var makeControl = function makeControl(direction, label, handler) {\n var handlerWrapper = function handlerWrapper(event) {\n /* istanbul ignore next */\n if (!isSliding) {\n _this4.handleClick(event, handler);\n } else {\n stopEvent(event, {\n propagation: false\n });\n }\n };\n\n return h('a', {\n staticClass: \"carousel-control-\".concat(direction),\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': idInner,\n 'aria-disabled': isSliding ? 'true' : null\n },\n on: {\n click: handlerWrapper,\n keydown: handlerWrapper\n }\n }, [h('span', {\n staticClass: \"carousel-control-\".concat(direction, \"-icon\"),\n attrs: {\n 'aria-hidden': 'true'\n }\n }), h('span', {\n class: 'sr-only'\n }, [label])]);\n };\n\n $controls = [makeControl('prev', this.labelPrev, this.prev), makeControl('next', this.labelNext, this.next)];\n } // Indicators\n\n\n var $indicators = h('ol', {\n staticClass: 'carousel-indicators',\n directives: [{\n name: 'show',\n value: indicators\n }],\n attrs: {\n id: this.safeId('__BV_indicators_'),\n 'aria-hidden': indicators ? 'false' : 'true',\n 'aria-label': this.labelIndicators,\n 'aria-owns': idInner\n }\n }, this.slides.map(function (slide, i) {\n var handler = function handler(event) {\n _this4.handleClick(event, function () {\n _this4.setSlide(i);\n });\n };\n\n return h('li', {\n class: {\n active: i === index\n },\n attrs: {\n role: 'button',\n id: _this4.safeId(\"__BV_indicator_\".concat(i + 1, \"_\")),\n tabindex: indicators ? '0' : '-1',\n 'aria-current': i === index ? 'true' : 'false',\n 'aria-label': \"\".concat(_this4.labelGotoSlide, \" \").concat(i + 1),\n 'aria-describedby': slide.id || null,\n 'aria-controls': idInner\n },\n on: {\n click: handler,\n keydown: handler\n },\n key: \"slide_\".concat(i)\n });\n }));\n var on = {\n mouseenter: noHoverPause ? noop : pause,\n mouseleave: noHoverPause ? noop : restart,\n focusin: pause,\n focusout: restart,\n keydown: function keydown(event) {\n /* istanbul ignore next */\n if (/input|textarea/i.test(event.target.tagName)) {\n return;\n }\n\n var keyCode = event.keyCode;\n\n if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n stopEvent(event);\n\n _this4[keyCode === CODE_LEFT ? 'prev' : 'next']();\n }\n }\n }; // Touch support event handlers for environment\n\n if (HAS_TOUCH_SUPPORT && !noTouch) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\n\n /* istanbul ignore next: JSDOM doesn't support touch events */\n if (HAS_POINTER_EVENT_SUPPORT) {\n on['&pointerdown'] = touchStart;\n on['&pointerup'] = touchEnd;\n } else {\n on['&touchstart'] = touchStart;\n on['&touchmove'] = this.touchMove;\n on['&touchend'] = touchEnd;\n }\n } // Return the carousel\n\n\n return h('div', {\n staticClass: 'carousel',\n class: {\n slide: !noAnimation,\n 'carousel-fade': !noAnimation && this.fade,\n 'pointer-event': HAS_TOUCH_SUPPORT && HAS_POINTER_EVENT_SUPPORT && !noTouch\n },\n style: {\n background: background\n },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': isSliding ? 'true' : 'false'\n },\n on: on\n }, [$inner, $controls, $indicators]);\n }\n});\n\nvar imgProps = {\n imgAlt: makeProp(PROP_TYPE_STRING),\n imgBlank: makeProp(PROP_TYPE_BOOLEAN, false),\n imgBlankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\n imgHeight: makeProp(PROP_TYPE_NUMBER_STRING),\n imgSrc: makeProp(PROP_TYPE_STRING),\n imgWidth: makeProp(PROP_TYPE_NUMBER_STRING)\n};\nvar props$1S = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$26), imgProps), {}, {\n background: makeProp(PROP_TYPE_STRING),\n caption: makeProp(PROP_TYPE_STRING),\n captionHtml: makeProp(PROP_TYPE_STRING),\n captionTag: makeProp(PROP_TYPE_STRING, 'h3'),\n contentTag: makeProp(PROP_TYPE_STRING, 'div'),\n contentVisibleUp: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n textHtml: makeProp(PROP_TYPE_STRING),\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n})), NAME_CAROUSEL_SLIDE); // --- Main component ---\n// @vue/component\n\nvar BCarouselSlide = /*#__PURE__*/extend({\n name: NAME_CAROUSEL_SLIDE,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n getBvCarousel: {\n // Explicitly disable touch if not a child of carousel\n default: function _default() {\n return function () {\n return {\n noTouch: true\n };\n };\n }\n }\n },\n props: props$1S,\n computed: {\n bvCarousel: function bvCarousel() {\n return this.getBvCarousel();\n },\n contentClasses: function contentClasses() {\n return [this.contentVisibleUp ? 'd-none' : '', this.contentVisibleUp ? \"d-\".concat(this.contentVisibleUp, \"-block\") : ''];\n },\n computedWidth: function computedWidth() {\n // Use local width, or try parent width\n return this.imgWidth || this.bvCarousel.imgWidth || null;\n },\n computedHeight: function computedHeight() {\n // Use local height, or try parent height\n return this.imgHeight || this.bvCarousel.imgHeight || null;\n }\n },\n render: function render(h) {\n var $img = this.normalizeSlot(SLOT_NAME_IMG);\n\n if (!$img && (this.imgSrc || this.imgBlank)) {\n var on = {}; // Touch support event handler\n\n /* istanbul ignore if: difficult to test in JSDOM */\n\n if (!this.bvCarousel.noTouch && HAS_TOUCH_SUPPORT) {\n on.dragstart = function (event) {\n return stopEvent(event, {\n propagation: false\n });\n };\n }\n\n $img = h(BImg, {\n props: _objectSpread2$3(_objectSpread2$3({}, pluckProps(imgProps, this.$props, unprefixPropName.bind(null, 'img'))), {}, {\n width: this.computedWidth,\n height: this.computedHeight,\n fluidGrow: true,\n block: true\n }),\n on: on\n });\n }\n\n var $contentChildren = [// Caption\n this.caption || this.captionHtml ? h(this.captionTag, {\n domProps: htmlOrText(this.captionHtml, this.caption)\n }) : false, // Text\n this.text || this.textHtml ? h(this.textTag, {\n domProps: htmlOrText(this.textHtml, this.text)\n }) : false, // Children\n this.normalizeSlot() || false];\n var $content = h();\n\n if ($contentChildren.some(identity)) {\n $content = h(this.contentTag, {\n staticClass: 'carousel-caption',\n class: this.contentClasses\n }, $contentChildren.map(function ($child) {\n return $child || h();\n }));\n }\n\n return h('div', {\n staticClass: 'carousel-item',\n style: {\n background: this.background || this.bvCarousel.background || null\n },\n attrs: {\n id: this.safeId(),\n role: 'listitem'\n }\n }, [$img, $content]);\n }\n});\n\nvar CarouselPlugin =\n/*#__PURE*/\npluginFactory({\n components: {\n BCarousel: BCarousel,\n BCarouselSlide: BCarouselSlide\n }\n});\n\nvar CLASS_NAME_SHOW = 'show';\n\n// Generic collapse transion helper component\n// Transition event handler helpers\n\nvar onEnter = function onEnter(el) {\n setStyle(el, 'height', 0); // In a `requestAF()` for `appear` to work\n\n requestAF(function () {\n reflow(el);\n setStyle(el, 'height', \"\".concat(el.scrollHeight, \"px\"));\n });\n};\n\nvar onAfterEnter = function onAfterEnter(el) {\n removeStyle(el, 'height');\n};\n\nvar onLeave = function onLeave(el) {\n setStyle(el, 'height', 'auto');\n setStyle(el, 'display', 'block');\n setStyle(el, 'height', \"\".concat(getBCR(el).height, \"px\"));\n reflow(el);\n setStyle(el, 'height', 0);\n};\n\nvar onAfterLeave = function onAfterLeave(el) {\n removeStyle(el, 'height');\n}; // --- Constants ---\n// Default transition props\n// `appear` will use the enter classes\n\n\nvar TRANSITION_PROPS = {\n css: true,\n enterClass: '',\n enterActiveClass: 'collapsing',\n enterToClass: 'collapse show',\n leaveClass: 'collapse show',\n leaveActiveClass: 'collapsing',\n leaveToClass: 'collapse'\n}; // Default transition handlers\n// `appear` will use the enter handlers\n\nvar TRANSITION_HANDLERS = {\n enter: onEnter,\n afterEnter: onAfterEnter,\n leave: onLeave,\n afterLeave: onAfterLeave\n}; // --- Main component ---\n\nvar props$1R = {\n // // If `true` (and `visible` is `true` on mount), animate initially visible\n appear: makeProp(PROP_TYPE_BOOLEAN, false)\n}; // --- Main component ---\n// @vue/component\n\nvar BVCollapse = /*#__PURE__*/extend({\n name: NAME_COLLAPSE_HELPER,\n functional: true,\n props: props$1R,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h('transition', // We merge in the `appear` prop last\n mergeData(data, {\n props: TRANSITION_PROPS,\n on: TRANSITION_HANDLERS\n }, {\n props: props\n }), // Note: `` supports a single root element only\n children);\n }\n});\n\nvar _watch$g;\n\nvar ROOT_ACTION_EVENT_NAME_TOGGLE$2 = getRootActionEventName(NAME_COLLAPSE, 'toggle');\nvar ROOT_ACTION_EVENT_NAME_REQUEST_STATE$2 = getRootActionEventName(NAME_COLLAPSE, 'request-state');\nvar ROOT_EVENT_NAME_ACCORDION = getRootEventName(NAME_COLLAPSE, 'accordion');\nvar ROOT_EVENT_NAME_STATE$3 = getRootEventName(NAME_COLLAPSE, 'state');\nvar ROOT_EVENT_NAME_SYNC_STATE$3 = getRootEventName(NAME_COLLAPSE, 'sync-state');\n\nvar _makeModelMixin$h = makeModelMixin('visible', {\n type: PROP_TYPE_BOOLEAN,\n defaultValue: false\n}),\n modelMixin$g = _makeModelMixin$h.mixin,\n modelProps$g = _makeModelMixin$h.props,\n MODEL_PROP_NAME$g = _makeModelMixin$h.prop,\n MODEL_EVENT_NAME$g = _makeModelMixin$h.event; // --- Props ---\n\n\nvar props$1Q = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$26), modelProps$g), {}, {\n // If `true` (and `visible` is `true` on mount), animate initially visible\n accordion: makeProp(PROP_TYPE_STRING),\n appear: makeProp(PROP_TYPE_BOOLEAN, false),\n isNav: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n})), NAME_COLLAPSE); // --- Main component ---\n// @vue/component\n\nvar BCollapse = /*#__PURE__*/extend({\n name: NAME_COLLAPSE,\n mixins: [idMixin, modelMixin$g, normalizeSlotMixin, listenOnRootMixin],\n props: props$1Q,\n data: function data() {\n return {\n show: this[MODEL_PROP_NAME$g],\n transitioning: false\n };\n },\n computed: {\n classObject: function classObject() {\n var transitioning = this.transitioning;\n return {\n 'navbar-collapse': this.isNav,\n collapse: !transitioning,\n show: this.show && !transitioning\n };\n },\n slotScope: function slotScope() {\n var _this = this;\n\n return {\n visible: this.show,\n close: function close() {\n _this.show = false;\n }\n };\n }\n },\n watch: (_watch$g = {}, _defineProperty(_watch$g, MODEL_PROP_NAME$g, function (newValue) {\n if (newValue !== this.show) {\n this.show = newValue;\n }\n }), _defineProperty(_watch$g, \"show\", function show(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.emitState();\n }\n }), _watch$g),\n created: function created() {\n this.show = this[MODEL_PROP_NAME$g];\n },\n mounted: function mounted() {\n var _this2 = this;\n\n this.show = this[MODEL_PROP_NAME$g]; // Listen for toggle events to open/close us\n\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE$2, this.handleToggleEvent); // Listen to other collapses for accordion events\n\n this.listenOnRoot(ROOT_EVENT_NAME_ACCORDION, this.handleAccordionEvent);\n\n if (this.isNav) {\n // Set up handlers\n this.setWindowEvents(true);\n this.handleResize();\n }\n\n this.$nextTick(function () {\n _this2.emitState();\n }); // Listen for \"Sync state\" requests from `v-b-toggle`\n\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE$2, function (id) {\n if (id === _this2.safeId()) {\n _this2.$nextTick(_this2.emitSync);\n }\n });\n },\n updated: function updated() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitSync();\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n if (this.isNav) {\n this.setWindowEvents(false);\n }\n },\n\n /* istanbul ignore next */\n activated: function activated() {\n if (this.isNav) {\n this.setWindowEvents(true);\n }\n\n this.emitSync();\n },\n beforeDestroy: function beforeDestroy() {\n // Trigger state emit if needed\n this.show = false;\n\n if (this.isNav && IS_BROWSER) {\n this.setWindowEvents(false);\n }\n },\n methods: {\n setWindowEvents: function setWindowEvents(on) {\n eventOnOff(on, window, 'resize', this.handleResize, EVENT_OPTIONS_NO_CAPTURE);\n eventOnOff(on, window, 'orientationchange', this.handleResize, EVENT_OPTIONS_NO_CAPTURE);\n },\n toggle: function toggle() {\n this.show = !this.show;\n },\n onEnter: function onEnter() {\n this.transitioning = true; // This should be moved out so we can add cancellable events\n\n this.$emit(EVENT_NAME_SHOW);\n },\n onAfterEnter: function onAfterEnter() {\n this.transitioning = false;\n this.$emit(EVENT_NAME_SHOWN);\n },\n onLeave: function onLeave() {\n this.transitioning = true; // This should be moved out so we can add cancellable events\n\n this.$emit(EVENT_NAME_HIDE);\n },\n onAfterLeave: function onAfterLeave() {\n this.transitioning = false;\n this.$emit(EVENT_NAME_HIDDEN);\n },\n emitState: function emitState() {\n var show = this.show,\n accordion = this.accordion;\n var id = this.safeId();\n this.$emit(MODEL_EVENT_NAME$g, show); // Let `v-b-toggle` know the state of this collapse\n\n this.emitOnRoot(ROOT_EVENT_NAME_STATE$3, id, show);\n\n if (accordion && show) {\n // Tell the other collapses in this accordion to close\n this.emitOnRoot(ROOT_EVENT_NAME_ACCORDION, id, accordion);\n }\n },\n emitSync: function emitSync() {\n // Emit a private event every time this component updates to ensure\n // the toggle button is in sync with the collapse's state\n // It is emitted regardless if the visible state changes\n this.emitOnRoot(ROOT_EVENT_NAME_SYNC_STATE$3, this.safeId(), this.show);\n },\n checkDisplayBlock: function checkDisplayBlock() {\n // Check to see if the collapse has `display: block !important` set\n // We can't set `display: none` directly on `this.$el`, as it would\n // trigger a new transition to start (or cancel a current one)\n var $el = this.$el;\n var restore = hasClass($el, CLASS_NAME_SHOW);\n removeClass($el, CLASS_NAME_SHOW);\n var isBlock = getCS($el).display === 'block';\n\n if (restore) {\n addClass($el, CLASS_NAME_SHOW);\n }\n\n return isBlock;\n },\n clickHandler: function clickHandler(event) {\n var el = event.target; // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n\n /* istanbul ignore next: can't test `getComputedStyle()` in JSDOM */\n\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n return;\n } // Only close the collapse if it is not forced to be `display: block !important`\n\n\n if ((matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) && !this.checkDisplayBlock()) {\n this.show = false;\n }\n },\n handleToggleEvent: function handleToggleEvent(id) {\n if (id === this.safeId()) {\n this.toggle();\n }\n },\n handleAccordionEvent: function handleAccordionEvent(openedId, openAccordion) {\n var accordion = this.accordion,\n show = this.show;\n\n if (!accordion || accordion !== openAccordion) {\n return;\n }\n\n var isThis = openedId === this.safeId(); // Open this collapse if not shown or\n // close this collapse if shown\n\n if (isThis && !show || !isThis && show) {\n this.toggle();\n }\n },\n handleResize: function handleResize() {\n // Handler for orientation/resize to set collapsed state in nav/navbar\n this.show = getCS(this.$el).display === 'block';\n }\n },\n render: function render(h) {\n var appear = this.appear;\n var $content = h(this.tag, {\n class: this.classObject,\n directives: [{\n name: 'show',\n value: this.show\n }],\n attrs: {\n id: this.safeId()\n },\n on: {\n click: this.clickHandler\n }\n }, this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope));\n return h(BVCollapse, {\n props: {\n appear: appear\n },\n on: {\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n }, [$content]);\n }\n});\n\nvar getInstanceFromDirective = function getInstanceFromDirective(vnode, bindings) {\n return isVue3 ? bindings.instance : vnode.context;\n};\n\n// Classes to apply to trigger element\n\nvar CLASS_BV_TOGGLE_COLLAPSED = 'collapsed';\nvar CLASS_BV_TOGGLE_NOT_COLLAPSED = 'not-collapsed'; // Property key for handler storage\n\nvar BV_BASE = '__BV_toggle'; // Root event listener property (Function)\n\nvar BV_TOGGLE_ROOT_HANDLER = \"\".concat(BV_BASE, \"_HANDLER__\"); // Trigger element click handler property (Function)\n\nvar BV_TOGGLE_CLICK_HANDLER = \"\".concat(BV_BASE, \"_CLICK__\"); // Target visibility state property (Boolean)\n\nvar BV_TOGGLE_STATE = \"\".concat(BV_BASE, \"_STATE__\"); // Target ID list property (Array)\n\nvar BV_TOGGLE_TARGETS = \"\".concat(BV_BASE, \"_TARGETS__\"); // Commonly used strings\n\nvar STRING_FALSE = 'false';\nvar STRING_TRUE = 'true'; // Commonly used attribute names\n\nvar ATTR_ARIA_CONTROLS = 'aria-controls';\nvar ATTR_ARIA_EXPANDED = 'aria-expanded';\nvar ATTR_ROLE = 'role';\nvar ATTR_TABINDEX = 'tabindex'; // Commonly used style properties\n\nvar STYLE_OVERFLOW_ANCHOR = 'overflow-anchor'; // Emitted control event for collapse (emitted to collapse)\n\nvar ROOT_ACTION_EVENT_NAME_TOGGLE$1 = getRootActionEventName(NAME_COLLAPSE, 'toggle'); // Listen to event for toggle state update (emitted by collapse)\n\nvar ROOT_EVENT_NAME_STATE$2 = getRootEventName(NAME_COLLAPSE, 'state'); // Private event emitted on `$root` to ensure the toggle state is always synced\n// Gets emitted even if the state of b-collapse has not changed\n// This event is NOT to be documented as people should not be using it\n\nvar ROOT_EVENT_NAME_SYNC_STATE$2 = getRootEventName(NAME_COLLAPSE, 'sync-state'); // Private event we send to collapse to request state update sync event\n\nvar ROOT_ACTION_EVENT_NAME_REQUEST_STATE$1 = getRootActionEventName(NAME_COLLAPSE, 'request-state');\nvar KEYDOWN_KEY_CODES = [CODE_ENTER, CODE_SPACE]; // --- Helper methods ---\n\nvar isNonStandardTag = function isNonStandardTag(el) {\n return !arrayIncludes(['button', 'a'], el.tagName.toLowerCase());\n};\n\nvar getTargets = function getTargets(_ref, el) {\n var modifiers = _ref.modifiers,\n arg = _ref.arg,\n value = _ref.value;\n // Any modifiers are considered target IDs\n var targets = keys(modifiers || {}); // If value is a string, split out individual targets (if space delimited)\n\n value = isString(value) ? value.split(RX_SPACE_SPLIT) : value; // Support target ID as link href (`href=\"#id\"`)\n\n if (isTag(el.tagName, 'a')) {\n var href = getAttr(el, 'href') || '';\n\n if (RX_HASH_ID.test(href)) {\n targets.push(href.replace(RX_HASH, ''));\n }\n } // Add ID from `arg` (if provided), and support value\n // as a single string ID or an array of string IDs\n // If `value` is not an array or string, then it gets filtered out\n\n\n concat(arg, value).forEach(function (t) {\n return isString(t) && targets.push(t);\n }); // Return only unique and truthy target IDs\n\n return targets.filter(function (t, index, arr) {\n return t && arr.indexOf(t) === index;\n });\n};\n\nvar removeClickListener = function removeClickListener(el) {\n var handler = el[BV_TOGGLE_CLICK_HANDLER];\n\n if (handler) {\n eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE);\n eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE);\n }\n\n el[BV_TOGGLE_CLICK_HANDLER] = null;\n};\n\nvar addClickListener = function addClickListener(el, instance) {\n removeClickListener(el);\n\n if (instance) {\n var handler = function handler(event) {\n if (!(event.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, event.keyCode)) && !isDisabled(el)) {\n var targets = el[BV_TOGGLE_TARGETS] || [];\n targets.forEach(function (target) {\n getEventRoot(instance).$emit(ROOT_ACTION_EVENT_NAME_TOGGLE$1, target);\n });\n }\n };\n\n el[BV_TOGGLE_CLICK_HANDLER] = handler;\n eventOn(el, 'click', handler, EVENT_OPTIONS_PASSIVE);\n\n if (isNonStandardTag(el)) {\n eventOn(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE);\n }\n }\n};\n\nvar removeRootListeners = function removeRootListeners(el, instance) {\n if (el[BV_TOGGLE_ROOT_HANDLER] && instance) {\n getEventRoot(instance).$off([ROOT_EVENT_NAME_STATE$2, ROOT_EVENT_NAME_SYNC_STATE$2], el[BV_TOGGLE_ROOT_HANDLER]);\n }\n\n el[BV_TOGGLE_ROOT_HANDLER] = null;\n};\n\nvar addRootListeners = function addRootListeners(el, instance) {\n removeRootListeners(el, instance);\n\n if (instance) {\n var handler = function handler(id, state) {\n // `state` will be `true` if target is expanded\n if (arrayIncludes(el[BV_TOGGLE_TARGETS] || [], id)) {\n // Set/Clear 'collapsed' visibility class state\n el[BV_TOGGLE_STATE] = state; // Set `aria-expanded` and class state on trigger element\n\n setToggleState(el, state);\n }\n };\n\n el[BV_TOGGLE_ROOT_HANDLER] = handler; // Listen for toggle state changes (public) and sync (private)\n\n getEventRoot(instance).$on([ROOT_EVENT_NAME_STATE$2, ROOT_EVENT_NAME_SYNC_STATE$2], handler);\n }\n};\n\nvar setToggleState = function setToggleState(el, state) {\n // State refers to the visibility of the collapse/sidebar\n if (state) {\n removeClass(el, CLASS_BV_TOGGLE_COLLAPSED);\n addClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED);\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_TRUE);\n } else {\n removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED);\n addClass(el, CLASS_BV_TOGGLE_COLLAPSED);\n setAttr(el, ATTR_ARIA_EXPANDED, STRING_FALSE);\n }\n}; // Reset and remove a property from the provided element\n\n\nvar resetProp = function resetProp(el, prop) {\n el[prop] = null;\n delete el[prop];\n}; // Handle directive updates\n\n\nvar handleUpdate = function handleUpdate(el, binding, vnode) {\n /* istanbul ignore next: should never happen */\n if (!IS_BROWSER || !getInstanceFromDirective(vnode, binding)) {\n return;\n } // If element is not a button or link, we add `role=\"button\"`\n // and `tabindex=\"0\"` for accessibility reasons\n\n\n if (isNonStandardTag(el)) {\n if (!hasAttr(el, ATTR_ROLE)) {\n setAttr(el, ATTR_ROLE, 'button');\n }\n\n if (!hasAttr(el, ATTR_TABINDEX)) {\n setAttr(el, ATTR_TABINDEX, '0');\n }\n } // Ensure the collapse class and `aria-*` attributes persist\n // after element is updated (either by parent re-rendering\n // or changes to this element or its contents)\n\n\n setToggleState(el, el[BV_TOGGLE_STATE]); // Parse list of target IDs\n\n var targets = getTargets(binding, el); // Ensure the `aria-controls` hasn't been overwritten\n // or removed when vnode updates\n // Also ensure to set `overflow-anchor` to `none` to prevent\n // the browser's scroll anchoring behavior\n\n /* istanbul ignore else */\n\n if (targets.length > 0) {\n setAttr(el, ATTR_ARIA_CONTROLS, targets.join(' '));\n setStyle(el, STYLE_OVERFLOW_ANCHOR, 'none');\n } else {\n removeAttr(el, ATTR_ARIA_CONTROLS);\n removeStyle(el, STYLE_OVERFLOW_ANCHOR);\n } // Add/Update our click listener(s)\n // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n\n\n requestAF(function () {\n addClickListener(el, getInstanceFromDirective(vnode, binding));\n }); // If targets array has changed, update\n\n if (!looseEqual(targets, el[BV_TOGGLE_TARGETS])) {\n // Update targets array to element storage\n el[BV_TOGGLE_TARGETS] = targets; // Ensure `aria-controls` is up to date\n // Request a state update from targets so that we can\n // ensure expanded state is correct (in most cases)\n\n targets.forEach(function (target) {\n getEventRoot(getInstanceFromDirective(vnode, binding)).$emit(ROOT_ACTION_EVENT_NAME_REQUEST_STATE$1, target);\n });\n }\n};\n/*\n * Export our directive\n */\n\n\nvar VBToggle = {\n bind: function bind(el, binding, vnode) {\n // State is initially collapsed until we receive a state event\n el[BV_TOGGLE_STATE] = false; // Assume no targets initially\n\n el[BV_TOGGLE_TARGETS] = []; // Add our root listeners\n\n addRootListeners(el, getInstanceFromDirective(vnode, binding)); // Initial update of trigger\n\n handleUpdate(el, binding, vnode);\n },\n componentUpdated: handleUpdate,\n updated: handleUpdate,\n unbind: function unbind(el, binding, vnode) {\n removeClickListener(el); // Remove our $root listener\n\n removeRootListeners(el, getInstanceFromDirective(vnode, binding)); // Reset custom props\n\n resetProp(el, BV_TOGGLE_ROOT_HANDLER);\n resetProp(el, BV_TOGGLE_CLICK_HANDLER);\n resetProp(el, BV_TOGGLE_STATE);\n resetProp(el, BV_TOGGLE_TARGETS); // Reset classes/attrs/styles\n\n removeClass(el, CLASS_BV_TOGGLE_COLLAPSED);\n removeClass(el, CLASS_BV_TOGGLE_NOT_COLLAPSED);\n removeAttr(el, ATTR_ARIA_EXPANDED);\n removeAttr(el, ATTR_ARIA_CONTROLS);\n removeAttr(el, ATTR_ROLE);\n removeStyle(el, STYLE_OVERFLOW_ANCHOR);\n }\n};\n\nvar VBTogglePlugin = /*#__PURE__*/pluginFactory({\n directives: {\n VBToggle: VBToggle\n }\n});\n\nvar CollapsePlugin = /*#__PURE__*/pluginFactory({\n components: {\n BCollapse: BCollapse\n },\n plugins: {\n VBTogglePlugin: VBTogglePlugin\n }\n});\n\nvar PLACEMENT_TOP_START = 'top-start';\nvar PLACEMENT_TOP_END = 'top-end';\nvar PLACEMENT_BOTTOM_START = 'bottom-start';\nvar PLACEMENT_BOTTOM_END = 'bottom-end';\nvar PLACEMENT_RIGHT_START = 'right-start';\nvar PLACEMENT_LEFT_START = 'left-start';\n\nvar BvEvent = /*#__PURE__*/function () {\n function BvEvent(type) {\n var eventInit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, BvEvent);\n\n // Start by emulating native Event constructor\n if (!type) {\n /* istanbul ignore next */\n throw new TypeError(\"Failed to construct '\".concat(this.constructor.name, \"'. 1 argument required, \").concat(arguments.length, \" given.\"));\n } // Merge defaults first, the eventInit, and the type last\n // so it can't be overwritten\n\n\n assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, {\n type: type\n }); // Freeze some props as readonly, but leave them enumerable\n\n defineProperties(this, {\n type: readonlyDescriptor(),\n cancelable: readonlyDescriptor(),\n nativeEvent: readonlyDescriptor(),\n target: readonlyDescriptor(),\n relatedTarget: readonlyDescriptor(),\n vueTarget: readonlyDescriptor(),\n componentId: readonlyDescriptor()\n }); // Create a private variable using closure scoping\n\n var defaultPrevented = false; // Recreate preventDefault method. One way setter\n\n this.preventDefault = function preventDefault() {\n if (this.cancelable) {\n defaultPrevented = true;\n }\n }; // Create `defaultPrevented` publicly accessible prop that\n // can only be altered by the preventDefault method\n\n\n defineProperty(this, 'defaultPrevented', {\n enumerable: true,\n get: function get() {\n return defaultPrevented;\n }\n });\n }\n\n _createClass(BvEvent, null, [{\n key: \"Defaults\",\n get: function get() {\n return {\n type: '',\n cancelable: true,\n nativeEvent: null,\n target: null,\n relatedTarget: null,\n vueTarget: null,\n componentId: null\n };\n }\n }]);\n\n return BvEvent;\n}();\n\nvar clickOutMixin = extend({\n data: function data() {\n return {\n listenForClickOut: false\n };\n },\n watch: {\n listenForClickOut: function listenForClickOut(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n\n if (newValue) {\n eventOn(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n }\n }\n },\n beforeCreate: function beforeCreate() {\n // Declare non-reactive properties\n this.clickOutElement = null;\n this.clickOutEventName = null;\n },\n mounted: function mounted() {\n if (!this.clickOutElement) {\n this.clickOutElement = document;\n }\n\n if (!this.clickOutEventName) {\n this.clickOutEventName = 'click';\n }\n\n if (this.listenForClickOut) {\n eventOn(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n },\n beforeDestroy: function beforeDestroy() {\n eventOff(this.clickOutElement, this.clickOutEventName, this._clickOutHandler, EVENT_OPTIONS_NO_CAPTURE);\n },\n methods: {\n isClickOut: function isClickOut(event) {\n return !contains(this.$el, event.target);\n },\n _clickOutHandler: function _clickOutHandler(event) {\n if (this.clickOutHandler && this.isClickOut(event)) {\n this.clickOutHandler(event);\n }\n }\n }\n});\n\nvar focusInMixin = extend({\n data: function data() {\n return {\n listenForFocusIn: false\n };\n },\n watch: {\n listenForFocusIn: function listenForFocusIn(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n\n if (newValue) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n }\n }\n },\n beforeCreate: function beforeCreate() {\n // Declare non-reactive properties\n this.focusInElement = null;\n },\n mounted: function mounted() {\n if (!this.focusInElement) {\n this.focusInElement = document;\n }\n\n if (this.listenForFocusIn) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n }\n },\n beforeDestroy: function beforeDestroy() {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE);\n },\n methods: {\n _focusInHandler: function _focusInHandler(event) {\n if (this.focusInHandler) {\n this.focusInHandler(event);\n }\n }\n }\n});\n\nvar registry = null;\n\nif (isVue3) {\n registry = new WeakMap();\n}\n\nvar registerElementToInstance = function registerElementToInstance(element, instance) {\n if (!isVue3) {\n return;\n }\n\n registry.set(element, instance);\n};\nvar removeElementToInstance = function removeElementToInstance(element) {\n if (!isVue3) {\n return;\n }\n\n registry.delete(element);\n};\nvar getInstanceFromElement = function getInstanceFromElement(element) {\n if (!isVue3) {\n return element.__vue__;\n }\n\n var currentElement = element;\n\n while (currentElement) {\n if (registry.has(currentElement)) {\n /* istanbul ignore next */\n return registry.get(currentElement);\n }\n\n currentElement = currentElement.parentNode;\n }\n\n return null;\n};\n\nvar ROOT_EVENT_NAME_SHOWN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_SHOWN);\nvar ROOT_EVENT_NAME_HIDDEN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_HIDDEN); // CSS selectors\n\nvar SELECTOR_FORM_CHILD = '.dropdown form';\nvar SELECTOR_ITEM = ['.dropdown-item', '.b-dropdown-form'].map(function (selector) {\n return \"\".concat(selector, \":not(.disabled):not([disabled])\");\n}).join(', '); // --- Helper methods ---\n// Return an array of visible items\n\nvar filterVisibles = function filterVisibles(els) {\n return (els || []).filter(isVisible);\n}; // --- Props ---\n\n\nvar props$1P = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, props$26), {}, {\n // String: `scrollParent`, `window` or `viewport`\n // HTMLElement: HTML Element reference\n boundary: makeProp([HTMLElement, PROP_TYPE_STRING], 'scrollParent'),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place left if possible\n dropleft: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place right if possible\n dropright: makeProp(PROP_TYPE_BOOLEAN, false),\n // Place on top if possible\n dropup: makeProp(PROP_TYPE_BOOLEAN, false),\n // Disable auto-flipping of menu from bottom <=> top\n noFlip: makeProp(PROP_TYPE_BOOLEAN, false),\n // Number of pixels or a CSS unit value to offset menu\n // (i.e. `1px`, `1rem`, etc.)\n offset: makeProp(PROP_TYPE_NUMBER_STRING, 0),\n popperOpts: makeProp(PROP_TYPE_OBJECT, {}),\n // Right align menu (default is left align)\n right: makeProp(PROP_TYPE_BOOLEAN, false)\n})), NAME_DROPDOWN); // --- Mixin ---\n// @vue/component\n\nvar dropdownMixin = extend({\n mixins: [idMixin, listenOnRootMixin, clickOutMixin, focusInMixin],\n provide: function provide() {\n var _this = this;\n\n return {\n getBvDropdown: function getBvDropdown() {\n return _this;\n }\n };\n },\n inject: {\n getBvNavbar: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n props: props$1P,\n data: function data() {\n return {\n visible: false,\n visibleChangePrevented: false\n };\n },\n computed: {\n bvNavbar: function bvNavbar() {\n return this.getBvNavbar();\n },\n inNavbar: function inNavbar() {\n return !isNull(this.bvNavbar);\n },\n toggler: function toggler() {\n var toggle = this.$refs.toggle;\n return toggle ? toggle.$el || toggle : null;\n },\n directionClass: function directionClass() {\n if (this.dropup) {\n return 'dropup';\n } else if (this.dropright) {\n return 'dropright';\n } else if (this.dropleft) {\n return 'dropleft';\n }\n\n return '';\n },\n boundaryClass: function boundaryClass() {\n // Position `static` is needed to allow menu to \"breakout\" of the `scrollParent`\n // boundaries when boundary is anything other than `scrollParent`\n // See: https://github.com/twbs/bootstrap/issues/24251#issuecomment-341413786\n return this.boundary !== 'scrollParent' && !this.inNavbar ? 'position-static' : '';\n },\n hideDelay: function hideDelay() {\n return this.inNavbar ? HAS_TOUCH_SUPPORT ? 300 : 50 : 0;\n }\n },\n watch: {\n visible: function visible(newValue, oldValue) {\n if (this.visibleChangePrevented) {\n this.visibleChangePrevented = false;\n return;\n }\n\n if (newValue !== oldValue) {\n var eventName = newValue ? EVENT_NAME_SHOW : EVENT_NAME_HIDE;\n var bvEvent = new BvEvent(eventName, {\n cancelable: true,\n vueTarget: this,\n target: this.$refs.menu,\n relatedTarget: null,\n componentId: this.safeId ? this.safeId() : this.id || null\n });\n this.emitEvent(bvEvent);\n\n if (bvEvent.defaultPrevented) {\n // Reset value and exit if canceled\n this.visibleChangePrevented = true;\n this.visible = oldValue; // Just in case a child element triggered `this.hide(true)`\n\n this.$off(EVENT_NAME_HIDDEN, this.focusToggler);\n return;\n }\n\n if (newValue) {\n this.showMenu();\n } else {\n this.hideMenu();\n }\n }\n },\n disabled: function disabled(newValue, oldValue) {\n if (newValue !== oldValue && newValue && this.visible) {\n // Hide dropdown if disabled changes to true\n this.visible = false;\n }\n }\n },\n created: function created() {\n // Create private non-reactive props\n this.$_popper = null;\n this.$_hideTimeout = null;\n },\n\n /* istanbul ignore next */\n deactivated: function deactivated() {\n // In case we are inside a ``\n this.visible = false;\n this.whileOpenListen(false);\n this.destroyPopper();\n },\n mounted: function mounted() {\n registerElementToInstance(this.$el, this);\n },\n beforeDestroy: function beforeDestroy() {\n this.visible = false;\n this.whileOpenListen(false);\n this.destroyPopper();\n this.clearHideTimeout();\n removeElementToInstance(this.$el);\n },\n methods: {\n // Event emitter\n emitEvent: function emitEvent(bvEvent) {\n var type = bvEvent.type;\n this.emitOnRoot(getRootEventName(NAME_DROPDOWN, type), bvEvent);\n this.$emit(type, bvEvent);\n },\n showMenu: function showMenu() {\n var _this2 = this;\n\n if (this.disabled) {\n /* istanbul ignore next */\n return;\n } // Only instantiate Popper.js when dropdown is not in ``\n\n\n if (!this.inNavbar) {\n if (typeof Popper === 'undefined') {\n /* istanbul ignore next */\n warn('Popper.js not found. Falling back to CSS positioning', NAME_DROPDOWN);\n } else {\n // For dropup with alignment we use the parent element as popper container\n var el = this.dropup && this.right || this.split ? this.$el : this.$refs.toggle; // Make sure we have a reference to an element, not a component!\n\n el = el.$el || el; // Instantiate Popper.js\n\n this.createPopper(el);\n }\n } // Ensure other menus are closed\n\n\n this.emitOnRoot(ROOT_EVENT_NAME_SHOWN, this); // Enable listeners\n\n this.whileOpenListen(true); // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n\n this.$nextTick(function () {\n // Focus on the menu container on show\n _this2.focusMenu(); // Emit the shown event\n\n\n _this2.$emit(EVENT_NAME_SHOWN);\n });\n },\n hideMenu: function hideMenu() {\n this.whileOpenListen(false);\n this.emitOnRoot(ROOT_EVENT_NAME_HIDDEN, this);\n this.$emit(EVENT_NAME_HIDDEN);\n this.destroyPopper();\n },\n createPopper: function createPopper(element) {\n this.destroyPopper();\n this.$_popper = new Popper(element, this.$refs.menu, this.getPopperConfig());\n },\n // Ensure popper event listeners are removed cleanly\n destroyPopper: function destroyPopper() {\n this.$_popper && this.$_popper.destroy();\n this.$_popper = null;\n },\n // Instructs popper to re-computes the dropdown position\n // useful if the content changes size\n updatePopper: function updatePopper() {\n try {\n this.$_popper.scheduleUpdate();\n } catch (_unused) {}\n },\n clearHideTimeout: function clearHideTimeout() {\n clearTimeout(this.$_hideTimeout);\n this.$_hideTimeout = null;\n },\n getPopperConfig: function getPopperConfig() {\n var placement = PLACEMENT_BOTTOM_START;\n\n if (this.dropup) {\n placement = this.right ? PLACEMENT_TOP_END : PLACEMENT_TOP_START;\n } else if (this.dropright) {\n placement = PLACEMENT_RIGHT_START;\n } else if (this.dropleft) {\n placement = PLACEMENT_LEFT_START;\n } else if (this.right) {\n placement = PLACEMENT_BOTTOM_END;\n }\n\n var popperConfig = {\n placement: placement,\n modifiers: {\n offset: {\n offset: this.offset || 0\n },\n flip: {\n enabled: !this.noFlip\n }\n }\n };\n var boundariesElement = this.boundary;\n\n if (boundariesElement) {\n popperConfig.modifiers.preventOverflow = {\n boundariesElement: boundariesElement\n };\n }\n\n return mergeDeep(popperConfig, this.popperOpts || {});\n },\n // Turn listeners on/off while open\n whileOpenListen: function whileOpenListen(isOpen) {\n // Hide the dropdown when clicked outside\n this.listenForClickOut = isOpen; // Hide the dropdown when it loses focus\n\n this.listenForFocusIn = isOpen; // Hide the dropdown when another dropdown is opened\n\n var method = isOpen ? 'listenOnRoot' : 'listenOffRoot';\n this[method](ROOT_EVENT_NAME_SHOWN, this.rootCloseListener);\n },\n rootCloseListener: function rootCloseListener(vm) {\n if (vm !== this) {\n this.visible = false;\n }\n },\n // Public method to show dropdown\n show: function show() {\n var _this3 = this;\n\n if (this.disabled) {\n return;\n } // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n\n\n requestAF(function () {\n _this3.visible = true;\n });\n },\n // Public method to hide dropdown\n hide: function hide() {\n var refocus = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n /* istanbul ignore next */\n if (this.disabled) {\n return;\n }\n\n this.visible = false;\n\n if (refocus) {\n // Child element is closing the dropdown on click\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler);\n }\n },\n // Called only by a button that toggles the menu\n toggle: function toggle(event) {\n event = event || {}; // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n\n var _event = event,\n type = _event.type,\n keyCode = _event.keyCode;\n\n if (type !== 'click' && !(type === 'keydown' && [CODE_ENTER, CODE_SPACE, CODE_DOWN].indexOf(keyCode) !== -1)) {\n /* istanbul ignore next */\n return;\n }\n /* istanbul ignore next */\n\n\n if (this.disabled) {\n this.visible = false;\n return;\n }\n\n this.$emit(EVENT_NAME_TOGGLE, event);\n stopEvent(event); // Toggle visibility\n\n if (this.visible) {\n this.hide(true);\n } else {\n this.show();\n }\n },\n // Mousedown handler for the toggle\n\n /* istanbul ignore next */\n onMousedown: function onMousedown(event) {\n // We prevent the 'mousedown' event for the toggle to stop the\n // 'focusin' event from being fired\n // The event would otherwise be picked up by the global 'focusin'\n // listener and there is no cross-browser solution to detect it\n // relates to the toggle click\n // The 'click' event will still be fired and we handle closing\n // other dropdowns there too\n // See https://github.com/bootstrap-vue/bootstrap-vue/issues/4328\n stopEvent(event, {\n propagation: false\n });\n },\n // Called from dropdown menu context\n onKeydown: function onKeydown(event) {\n var keyCode = event.keyCode;\n\n if (keyCode === CODE_ESC) {\n // Close on ESC\n this.onEsc(event);\n } else if (keyCode === CODE_DOWN) {\n // Down Arrow\n this.focusNext(event, false);\n } else if (keyCode === CODE_UP) {\n // Up Arrow\n this.focusNext(event, true);\n }\n },\n // If user presses ESC, close the menu\n onEsc: function onEsc(event) {\n if (this.visible) {\n this.visible = false;\n stopEvent(event); // Return focus to original trigger button\n\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler);\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick: function onSplitClick(event) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false;\n return;\n }\n\n this.$emit(EVENT_NAME_CLICK, event);\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler: function hideHandler(event) {\n var _this4 = this;\n\n var target = event.target;\n\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.clearHideTimeout();\n this.$_hideTimeout = setTimeout(function () {\n return _this4.hide();\n }, this.hideDelay);\n }\n },\n // Document click-out listener\n clickOutHandler: function clickOutHandler(event) {\n this.hideHandler(event);\n },\n // Document focus-in listener\n focusInHandler: function focusInHandler(event) {\n this.hideHandler(event);\n },\n // Keyboard nav\n focusNext: function focusNext(event, up) {\n var _this5 = this;\n\n // Ignore key up/down on form elements\n var target = event.target;\n\n if (!this.visible || event && closest(SELECTOR_FORM_CHILD, target)) {\n /* istanbul ignore next: should never happen */\n return;\n }\n\n stopEvent(event);\n this.$nextTick(function () {\n var items = _this5.getItems();\n\n if (items.length < 1) {\n /* istanbul ignore next: should never happen */\n return;\n }\n\n var index = items.indexOf(target);\n\n if (up && index > 0) {\n index--;\n } else if (!up && index < items.length - 1) {\n index++;\n }\n\n if (index < 0) {\n /* istanbul ignore next: should never happen */\n index = 0;\n }\n\n _this5.focusItem(index, items);\n });\n },\n focusItem: function focusItem(index, items) {\n var el = items.find(function (el, i) {\n return i === index;\n });\n attemptFocus(el);\n },\n getItems: function getItems() {\n // Get all items\n return filterVisibles(selectAll(SELECTOR_ITEM, this.$refs.menu));\n },\n focusMenu: function focusMenu() {\n attemptFocus(this.$refs.menu);\n },\n focusToggler: function focusToggler() {\n var _this6 = this;\n\n this.$nextTick(function () {\n attemptFocus(_this6.toggler);\n });\n }\n }\n});\n\nvar props$1O = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3(_objectSpread2$3({}, props$26), props$1P), {}, {\n block: makeProp(PROP_TYPE_BOOLEAN, false),\n html: makeProp(PROP_TYPE_STRING),\n // If `true`, only render menu contents when open\n lazy: makeProp(PROP_TYPE_BOOLEAN, false),\n menuClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n noCaret: makeProp(PROP_TYPE_BOOLEAN, false),\n role: makeProp(PROP_TYPE_STRING, 'menu'),\n size: makeProp(PROP_TYPE_STRING),\n split: makeProp(PROP_TYPE_BOOLEAN, false),\n splitButtonType: makeProp(PROP_TYPE_STRING, 'button', function (value) {\n return arrayIncludes(['button', 'submit', 'reset'], value);\n }),\n splitClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n splitHref: makeProp(PROP_TYPE_STRING),\n splitTo: makeProp(PROP_TYPE_OBJECT_STRING),\n splitVariant: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n toggleAttrs: makeProp(PROP_TYPE_OBJECT, {}),\n toggleClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n toggleTag: makeProp(PROP_TYPE_STRING, 'button'),\n // TODO: This really should be `toggleLabel`\n toggleText: makeProp(PROP_TYPE_STRING, 'Toggle dropdown'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n})), NAME_DROPDOWN); // --- Main component ---\n// @vue/component\n\nvar BDropdown = /*#__PURE__*/extend({\n name: NAME_DROPDOWN,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props: props$1O,\n computed: {\n dropdownClasses: function dropdownClasses() {\n var block = this.block,\n split = this.split;\n return [this.directionClass, this.boundaryClass, {\n show: this.visible,\n // The 'btn-group' class is required in `split` mode for button alignment\n // It needs also to be applied when `block` is disabled to allow multiple\n // dropdowns to be aligned one line\n 'btn-group': split || !block,\n // When `block` is enabled and we are in `split` mode the 'd-flex' class\n // needs to be applied to allow the buttons to stretch to full width\n 'd-flex': block && split\n }];\n },\n menuClasses: function menuClasses() {\n return [this.menuClass, {\n 'dropdown-menu-right': this.right,\n show: this.visible\n }];\n },\n toggleClasses: function toggleClasses() {\n var split = this.split;\n return [this.toggleClass, {\n 'dropdown-toggle-split': split,\n 'dropdown-toggle-no-caret': this.noCaret && !split\n }];\n }\n },\n render: function render(h) {\n var visible = this.visible,\n variant = this.variant,\n size = this.size,\n block = this.block,\n disabled = this.disabled,\n split = this.split,\n role = this.role,\n hide = this.hide,\n toggle = this.toggle;\n var commonProps = {\n variant: variant,\n size: size,\n block: block,\n disabled: disabled\n };\n var $buttonChildren = this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT);\n var buttonContentDomProps = this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT) ? {} : htmlOrText(this.html, this.text);\n var $split = h();\n\n if (split) {\n var splitTo = this.splitTo,\n splitHref = this.splitHref,\n splitButtonType = this.splitButtonType;\n\n var btnProps = _objectSpread2$3(_objectSpread2$3({}, commonProps), {}, {\n variant: this.splitVariant || variant\n }); // We add these as needed due to issues with\n // defined property with `undefined`/`null` values\n\n\n if (splitTo) {\n btnProps.to = splitTo;\n } else if (splitHref) {\n btnProps.href = splitHref;\n } else if (splitButtonType) {\n btnProps.type = splitButtonType;\n }\n\n $split = h(BButton, {\n class: this.splitClass,\n attrs: {\n id: this.safeId('_BV_button_')\n },\n props: btnProps,\n domProps: buttonContentDomProps,\n on: {\n click: this.onSplitClick\n },\n ref: 'button'\n }, $buttonChildren); // Overwrite button content for the toggle when in `split` mode\n\n $buttonChildren = [h('span', {\n class: ['sr-only']\n }, [this.toggleText])];\n buttonContentDomProps = {};\n }\n\n var ariaHasPopupRoles = ['menu', 'listbox', 'tree', 'grid', 'dialog'];\n var $toggle = h(BButton, {\n staticClass: 'dropdown-toggle',\n class: this.toggleClasses,\n attrs: _objectSpread2$3(_objectSpread2$3({}, this.toggleAttrs), {}, {\n // Must have attributes\n id: this.safeId('_BV_toggle_'),\n 'aria-haspopup': ariaHasPopupRoles.includes(role) ? role : 'false',\n 'aria-expanded': toString(visible)\n }),\n props: _objectSpread2$3(_objectSpread2$3({}, commonProps), {}, {\n tag: this.toggleTag,\n block: block && !split\n }),\n domProps: buttonContentDomProps,\n on: {\n mousedown: this.onMousedown,\n click: toggle,\n keydown: toggle // Handle ENTER, SPACE and DOWN\n\n },\n ref: 'toggle'\n }, $buttonChildren);\n var $menu = h('ul', {\n staticClass: 'dropdown-menu',\n class: this.menuClasses,\n attrs: {\n role: role,\n tabindex: '-1',\n 'aria-labelledby': this.safeId(split ? '_BV_button_' : '_BV_toggle_')\n },\n on: {\n keydown: this.onKeydown // Handle UP, DOWN and ESC\n\n },\n ref: 'menu'\n }, [!this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, {\n hide: hide\n }) : h()]);\n return h('div', {\n staticClass: 'dropdown b-dropdown',\n class: this.dropdownClasses,\n attrs: {\n id: this.safeId()\n }\n }, [$split, $toggle, $menu]);\n }\n});\n\nvar linkProps$4 = omit(props$2g, ['event', 'routerTag']);\nvar props$1N = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, linkProps$4), {}, {\n linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n})), NAME_DROPDOWN_ITEM); // --- Main component ---\n// @vue/component\n\nvar BDropdownItem = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n inheritAttrs: false,\n props: props$1N,\n computed: {\n bvDropdown: function bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs: function computedAttrs() {\n return _objectSpread2$3(_objectSpread2$3({}, this.bvAttrs), {}, {\n role: 'menuitem'\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n var _this = this;\n\n // Close on next animation frame to allow time to process\n requestAF(function () {\n if (_this.bvDropdown) {\n _this.bvDropdown.hide(true);\n }\n });\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var linkClass = this.linkClass,\n variant = this.variant,\n active = this.active,\n disabled = this.disabled,\n onClick = this.onClick,\n bvAttrs = this.bvAttrs;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h(BLink, {\n staticClass: 'dropdown-item',\n class: [linkClass, _defineProperty({}, \"text-\".concat(variant), variant && !(active || disabled))],\n props: pluckProps(linkProps$4, this.$props),\n attrs: this.computedAttrs,\n on: {\n click: onClick\n },\n ref: 'item'\n }, this.normalizeSlot())]);\n }\n});\n\nvar props$1M = makePropsConfigurable({\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n activeClass: makeProp(PROP_TYPE_STRING, 'active'),\n buttonClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_ITEM_BUTTON); // --- Main component ---\n// @vue/component\n\nvar BDropdownItemButton = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: function _default() {\n return function () {\n return null;\n };\n }\n }\n },\n inheritAttrs: false,\n props: props$1M,\n computed: {\n bvDropdown: function bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs: function computedAttrs() {\n return _objectSpread2$3(_objectSpread2$3({}, this.bvAttrs), {}, {\n role: 'menuitem',\n type: 'button',\n disabled: this.disabled\n });\n }\n },\n methods: {\n closeDropdown: function closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true);\n }\n },\n onClick: function onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render: function render(h) {\n var _ref;\n\n var active = this.active,\n variant = this.variant,\n bvAttrs = this.bvAttrs;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h('button', {\n staticClass: 'dropdown-item',\n class: [this.buttonClass, (_ref = {}, _defineProperty(_ref, this.activeClass, active), _defineProperty(_ref, \"text-\".concat(variant), variant && !(active || this.disabled)), _ref)],\n attrs: this.computedAttrs,\n on: {\n click: this.onClick\n },\n ref: 'button'\n }, this.normalizeSlot())]);\n }\n});\n\nvar props$1L = makePropsConfigurable({\n id: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'header'),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_HEADER); // --- Main component ---\n// @vue/component\n\nvar BDropdownHeader = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_HEADER,\n functional: true,\n props: props$1L,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tag = props.tag,\n variant = props.variant;\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(tag, {\n staticClass: 'dropdown-header',\n class: _defineProperty({}, \"text-\".concat(variant), variant),\n attrs: _objectSpread2$3(_objectSpread2$3({}, data.attrs || {}), {}, {\n id: props.id || null,\n role: isTag(tag, 'header') ? null : 'heading'\n }),\n ref: 'header'\n }, children)]);\n }\n});\n\nvar props$1K = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'hr')\n}, NAME_DROPDOWN_DIVIDER); // --- Main component ---\n// @vue/component\n\nvar BDropdownDivider = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_DIVIDER,\n functional: true,\n props: props$1K,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data;\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: _objectSpread2$3(_objectSpread2$3({}, data.attrs || {}), {}, {\n role: 'separator',\n 'aria-orientation': 'horizontal'\n }),\n ref: 'divider'\n })]);\n }\n});\n\nvar props$1J = makePropsConfigurable({\n id: makeProp(PROP_TYPE_STRING),\n inline: makeProp(PROP_TYPE_BOOLEAN, false),\n novalidate: makeProp(PROP_TYPE_BOOLEAN, false),\n validated: makeProp(PROP_TYPE_BOOLEAN, false)\n}, NAME_FORM); // --- Main component ---\n// @vue/component\n\nvar BForm = /*#__PURE__*/extend({\n name: NAME_FORM,\n functional: true,\n props: props$1J,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n return h('form', mergeData(data, {\n class: {\n 'form-inline': props.inline,\n 'was-validated': props.validated\n },\n attrs: {\n id: props.id,\n novalidate: props.novalidate\n }\n }), children);\n }\n});\n\nvar props$1I = makePropsConfigurable(sortKeys(_objectSpread2$3(_objectSpread2$3({}, props$1J), {}, {\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n})), NAME_DROPDOWN_FORM); // --- Main component ---\n// @vue/component\n\nvar BDropdownForm = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_FORM,\n functional: true,\n props: props$1I,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n listeners = _ref.listeners,\n children = _ref.children;\n return h('li', mergeData(omit(data, ['attrs', 'on']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(BForm, {\n staticClass: 'b-dropdown-form',\n class: [props.formClass, {\n disabled: props.disabled\n }],\n props: props,\n attrs: _objectSpread2$3(_objectSpread2$3({}, data.attrs || {}), {}, {\n disabled: props.disabled,\n // Tab index of -1 for keyboard navigation\n tabindex: props.disabled ? null : '-1'\n }),\n on: listeners,\n ref: 'form'\n }, children)]);\n }\n});\n\nvar props$1H = makePropsConfigurable({\n tag: makeProp(PROP_TYPE_STRING, 'p'),\n textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_TEXT); // --- Main component ---\n// @vue/component\n\nvar BDropdownText = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props: props$1H,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var tag = props.tag,\n textClass = props.textClass,\n variant = props.variant;\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [h(tag, {\n staticClass: 'b-dropdown-text',\n class: [textClass, _defineProperty({}, \"text-\".concat(variant), variant)],\n props: props,\n attrs: data.attrs || {},\n ref: 'text'\n }, children)]);\n }\n});\n\nvar props$1G = makePropsConfigurable({\n ariaDescribedby: makeProp(PROP_TYPE_STRING),\n header: makeProp(PROP_TYPE_STRING),\n headerClasses: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerTag: makeProp(PROP_TYPE_STRING, 'header'),\n headerVariant: makeProp(PROP_TYPE_STRING),\n id: makeProp(PROP_TYPE_STRING)\n}, NAME_DROPDOWN_GROUP); // --- Main component ---\n// @vue/component\n\nvar BDropdownGroup = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_GROUP,\n functional: true,\n props: props$1G,\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 id = props.id,\n variant = props.variant,\n header = props.header,\n headerTag = props.headerTag;\n var $slots = slots();\n var $scopedSlots = scopedSlots || {};\n var slotScope = {};\n var headerId = id ? \"_bv_\".concat(id, \"_group_dd_header\") : null;\n var $header = h();\n\n if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || header) {\n $header = h(headerTag, {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, _defineProperty({}, \"text-\".concat(variant), variant)],\n attrs: {\n id: headerId,\n role: isTag(headerTag, 'header') ? null : 'heading'\n }\n }, normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots) || header);\n }\n\n return h('li', mergeData(omit(data, ['attrs']), {\n attrs: {\n role: 'presentation'\n }\n }), [$header, h('ul', {\n staticClass: 'list-unstyled',\n attrs: _objectSpread2$3(_objectSpread2$3({}, data.attrs || {}), {}, {\n id: id,\n role: 'group',\n 'aria-describedby': [headerId, props.ariaDescribedBy].filter(identity).join(' ').trim() || null\n })\n }, normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots))]);\n }\n});\n\nvar DropdownPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BDropdown: BDropdown,\n BDd: BDropdown,\n BDropdownItem: BDropdownItem,\n BDdItem: BDropdownItem,\n BDropdownItemButton: BDropdownItemButton,\n BDropdownItemBtn: BDropdownItemButton,\n BDdItemButton: BDropdownItemButton,\n BDdItemBtn: BDropdownItemButton,\n BDropdownHeader: BDropdownHeader,\n BDdHeader: BDropdownHeader,\n BDropdownDivider: BDropdownDivider,\n BDdDivider: BDropdownDivider,\n BDropdownForm: BDropdownForm,\n BDdForm: BDropdownForm,\n BDropdownText: BDropdownText,\n BDdText: BDropdownText,\n BDropdownGroup: BDropdownGroup,\n BDdGroup: BDropdownGroup\n }\n});\n\nvar TYPES$2 = ['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy']; // --- Props ---\n\nvar props$1F = makePropsConfigurable({\n aspect: makeProp(PROP_TYPE_STRING, '16by9'),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n type: makeProp(PROP_TYPE_STRING, 'iframe', function (value) {\n return arrayIncludes(TYPES$2, value);\n })\n}, NAME_EMBED); // --- Main component ---\n// @vue/component\n\nvar BEmbed = /*#__PURE__*/extend({\n name: NAME_EMBED,\n functional: true,\n props: props$1F,\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n var aspect = props.aspect;\n return h(props.tag, {\n staticClass: 'embed-responsive',\n class: _defineProperty({}, \"embed-responsive-\".concat(aspect), aspect),\n ref: data.ref\n }, [h(props.type, mergeData(omit(data, ['ref']), {\n staticClass: 'embed-responsive-item'\n }), children)]);\n }\n});\n\nvar EmbedPlugin = /*#__PURE__*/pluginFactory({\n components: {\n BEmbed: BEmbed\n }\n});\n\nvar OPTIONS_OBJECT_DEPRECATED_MSG = 'Setting prop \"options\" to an object is deprecated. Use the array format instead.'; // --- Props ---\n\nvar props$1E = makePropsConfigurable({\n disabledField: makeProp(PROP_TYPE_STRING, 'disabled'),\n htmlField: makeProp(PROP_TYPE_STRING, 'html'),\n options: makeProp(PROP_TYPE_ARRAY_OBJECT, []),\n textField: makeProp(PROP_TYPE_STRING, 'text'),\n valueField: makeProp(PROP_TYPE_STRING, 'value')\n}, 'formOptionControls'); // --- Mixin ---\n// @vue/component\n\nvar formOptionsMixin = extend({\n props: props$1E,\n computed: {\n formOptions: function formOptions() {\n return this.normalizeOptions(this.options);\n }\n },\n methods: {\n normalizeOption: function normalizeOption(option) {\n var key = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n // When the option is an object, normalize it\n if (isPlainObject(option)) {\n var value = get(option, this.valueField);\n var text = get(option, this.textField);\n return {\n value: isUndefined(value) ? key || text : value,\n text: stripTags(String(isUndefined(text) ? key : text)),\n html: get(option, this.htmlField),\n disabled: Boolean(get(option, this.disabledField))\n };\n } // Otherwise create an `