{"version":3,"sources":["../node_modules/vue-functional-data-merge/dist/lib.esm.js","../src/vue.js","../src/utils/plugins.js","../src/constants/env.js","../src/constants/config.js","../src/constants/regex.js","../src/constants/safe-types.js","../src/utils/inspect.js","../src/utils/object.js","../src/utils/clone-deep.js","../src/utils/identity.js","../src/utils/get.js","../src/utils/env.js","../src/utils/warn.js","../src/utils/config-set.js","../src/constants/components.js","../src/constants/events.js","../src/constants/props.js","../src/constants/slots.js","../src/utils/array.js","../src/utils/number.js","../src/utils/string.js","../src/utils/dom.js","../src/utils/memoize.js","../src/utils/config.js","../src/utils/props.js","../src/utils/model.js","../src/utils/normalize-slot.js","../src/mixins/normalize-slot.js","../src/utils/events.js","../src/components/button/button-close.js","../src/components/transition/bv-transition.js","../src/components/alert/alert.js","../src/components/alert/index.js","../src/utils/math.js","../src/components/aspect/aspect.js","../src/components/aspect/index.js","../src/utils/router.js","../src/icons/helpers/icon-base.js","../src/icons/helpers/make-icon.js","../src/icons/icons.js","../src/icons/icon.js","../src/constants/key-codes.js","../src/utils/loose-equal.js","../src/utils/cache.js","../src/mixins/attrs.js","../src/mixins/listen-on-root.js","../src/mixins/listeners.js","../src/components/link/link.js","../src/components/button/button.js","../src/components/avatar/avatar.js","../src/components/avatar/avatar-group.js","../src/components/avatar/index.js","../src/components/badge/badge.js","../src/components/badge/index.js","../src/utils/html.js","../src/components/breadcrumb/breadcrumb-link.js","../src/components/breadcrumb/breadcrumb-item.js","../src/components/breadcrumb/breadcrumb.js","../src/components/breadcrumb/index.js","../src/components/button/index.js","../src/components/button-group/button-group.js","../src/components/button-group/index.js","../src/components/button-toolbar/button-toolbar.js","../src/components/button-toolbar/index.js","../src/constants/date.js","../src/utils/date.js","../src/utils/locale.js","../src/mixins/id.js","../src/components/calendar/calendar.js","../src/components/calendar/index.js","../src/mixins/card.js","../src/components/card/card-title.js","../src/components/card/card-sub-title.js","../src/components/card/card-body.js","../src/components/card/card-header.js","../src/components/card/card-footer.js","../src/components/image/img.js","../src/components/card/card-img.js","../src/components/card/card.js","../src/directives/visible/visible.js","../src/components/image/img-lazy.js","../src/components/card/card-img-lazy.js","../src/components/card/card-text.js","../src/components/card/card-group.js","../src/components/card/index.js","../src/utils/noop.js","../src/utils/observe-dom.js","../src/components/carousel/carousel.js","../src/components/carousel/carousel-slide.js","../src/components/carousel/index.js","../src/constants/classes.js","../src/components/collapse/helpers/bv-collapse.js","../src/components/collapse/collapse.js","../src/directives/toggle/toggle.js","../src/directives/toggle/index.js","../src/components/collapse/index.js","../node_modules/popper.js/dist/esm/popper.js","../src/constants/popper.js","../src/utils/bv-event.class.js","../src/mixins/click-out.js","../src/mixins/focus-in.js","../src/mixins/dropdown.js","../src/components/dropdown/dropdown.js","../src/components/dropdown/dropdown-item.js","../src/components/dropdown/dropdown-item-button.js","../src/components/dropdown/dropdown-header.js","../src/components/dropdown/dropdown-divider.js","../src/components/form/form.js","../src/components/dropdown/dropdown-form.js","../src/components/dropdown/dropdown-text.js","../src/components/dropdown/dropdown-group.js","../src/components/dropdown/index.js","../src/components/embed/embed.js","../src/components/embed/index.js","../src/mixins/form-options.js","../src/components/form/form-datalist.js","../src/components/form/form-text.js","../src/components/form/form-invalid-feedback.js","../src/components/form/form-valid-feedback.js","../src/components/layout/form-row.js","../src/components/form/index.js","../src/utils/loose-index-of.js","../src/mixins/form-control.js","../src/mixins/form-custom.js","../src/mixins/form-size.js","../src/mixins/form-state.js","../src/mixins/form-radio-check.js","../src/components/form-checkbox/form-checkbox.js","../src/components/form-radio/form-radio.js","../src/mixins/form-radio-check-group.js","../src/components/form-checkbox/form-checkbox-group.js","../src/components/form-checkbox/index.js","../src/directives/hover/hover.js","../src/components/form-btn-label-control/bv-form-btn-label-control.js","../src/components/form-datepicker/form-datepicker.js","../src/components/form-datepicker/index.js","../src/components/form-file/form-file.js","../src/components/form-file/index.js","../src/utils/css-escape.js","../src/components/layout/col.js","../src/components/form-group/form-group.js","../src/components/form-group/index.js","../src/mixins/form-selection.js","../src/mixins/form-text.js","../src/mixins/form-validity.js","../src/components/form-input/form-input.js","../src/components/form-input/index.js","../src/components/form-radio/form-radio-group.js","../src/components/form-radio/index.js","../src/components/form-rating/form-rating.js","../src/components/form-rating/index.js","../src/mixins/model.js","../src/components/form-select/helpers/mixin-options.js","../src/components/form-select/form-select-option.js","../src/components/form-select/form-select-option-group.js","../src/components/form-select/form-select.js","../src/components/form-select/index.js","../src/components/form-spinbutton/form-spinbutton.js","../src/components/form-spinbutton/index.js","../src/components/form-tags/form-tag.js","../src/components/form-tags/form-tags.js","../src/components/form-tags/index.js","../src/components/form-textarea/form-textarea.js","../src/components/form-textarea/index.js","../src/components/time/time.js","../src/components/form-timepicker/form-timepicker.js","../src/components/form-timepicker/index.js","../src/components/image/index.js","../src/components/input-group/input-group-text.js","../src/components/input-group/input-group-addon.js","../src/components/input-group/input-group-append.js","../src/components/input-group/input-group-prepend.js","../src/components/input-group/input-group.js","../src/components/input-group/index.js","../src/components/layout/container.js","../src/components/jumbotron/jumbotron.js","../src/components/jumbotron/index.js","../src/components/layout/row.js","../src/components/layout/index.js","../src/components/link/index.js","../src/components/list-group/list-group.js","../src/components/list-group/list-group-item.js","../src/components/list-group/index.js","../src/components/media/media-aside.js","../src/components/media/media-body.js","../src/components/media/media.js","../src/components/media/index.js","../src/mixins/listen-on-document.js","../src/mixins/listen-on-window.js","../src/utils/get-scope-id.js","../src/mixins/scoped-style.js","../src/components/transporter/transporter.js","../src/components/modal/helpers/bv-modal-event.class.js","../src/components/modal/helpers/modal-manager.js","../src/components/modal/modal.js","../src/directives/modal/modal.js","../src/components/modal/helpers/bv-modal.js","../src/components/modal/index.js","../src/components/nav/nav.js","../src/components/nav/nav-item.js","../src/components/nav/nav-text.js","../src/components/nav/nav-form.js","../src/components/nav/nav-item-dropdown.js","../src/components/nav/index.js","../src/components/navbar/navbar.js","../src/components/navbar/navbar-nav.js","../src/components/navbar/navbar-brand.js","../src/components/navbar/navbar-toggle.js","../src/components/navbar/index.js","../src/components/spinner/spinner.js","../src/components/overlay/overlay.js","../src/components/overlay/index.js","../src/mixins/pagination.js","../src/components/pagination/pagination.js","../src/components/pagination/index.js","../src/components/pagination-nav/pagination-nav.js","../src/components/pagination-nav/index.js","../src/components/tooltip/helpers/bv-popper.js","../src/components/tooltip/helpers/bv-tooltip-template.js","../src/components/tooltip/helpers/bv-tooltip.js","../src/components/tooltip/tooltip.js","../src/components/popover/helpers/bv-popover-template.js","../src/components/popover/helpers/bv-popover.js","../src/components/popover/popover.js","../src/directives/popover/popover.js","../src/directives/popover/index.js","../src/components/popover/index.js","../src/components/progress/progress-bar.js","../src/components/progress/progress.js","../src/components/progress/index.js","../src/components/sidebar/sidebar.js","../src/components/sidebar/index.js","../src/components/skeleton/skeleton.js","../src/components/skeleton/skeleton-icon.js","../src/icons/iconstack.js","../src/components/skeleton/skeleton-img.js","../src/mixins/has-listener.js","../src/components/table/tr.js","../src/components/table/helpers/mixin-bottom-row.js","../src/components/table/td.js","../src/components/table/helpers/mixin-busy.js","../src/components/table/helpers/mixin-caption.js","../src/components/table/helpers/mixin-colgroup.js","../src/components/table/helpers/mixin-empty.js","../src/utils/stringify-object-values.js","../src/components/table/helpers/constants.js","../src/components/table/helpers/sanitize-row.js","../src/components/table/helpers/mixin-filtering.js","../src/components/table/helpers/stringify-record-values.js","../src/components/table/helpers/normalize-fields.js","../src/components/table/helpers/mixin-items.js","../src/components/table/helpers/mixin-pagination.js","../src/components/table/helpers/mixin-provider.js","../src/components/table/helpers/mixin-selectable.js","../src/utils/stable-sort.js","../src/components/table/helpers/default-sort-compare.js","../src/components/table/helpers/mixin-sorting.js","../src/components/table/helpers/mixin-stacked.js","../src/components/table/helpers/mixin-table-renderer.js","../src/components/table/tbody.js","../src/components/table/helpers/filter-event.js","../src/components/table/helpers/text-selection-active.js","../src/components/table/th.js","../src/components/table/helpers/mixin-tbody-row.js","../src/components/table/helpers/mixin-tbody.js","../src/components/table/tfoot.js","../src/components/table/helpers/mixin-tfoot.js","../src/components/table/thead.js","../src/components/table/helpers/mixin-thead.js","../src/components/table/helpers/mixin-top-row.js","../src/components/table/table.js","../src/components/table/table-lite.js","../src/components/table/table-simple.js","../src/components/table/index.js","../src/components/skeleton/skeleton-table.js","../src/components/skeleton/skeleton-wrapper.js","../src/components/skeleton/index.js","../src/components/spinner/index.js","../src/components/tabs/tabs.js","../src/components/tabs/tab.js","../src/components/tabs/index.js","../src/components/time/index.js","../node_modules/portal-vue/dist/portal-vue.esm.js","../src/components/toast/toaster.js","../src/components/toast/toast.js","../src/components/toast/helpers/bv-toast.js","../src/components/toast/index.js","../src/directives/tooltip/tooltip.js","../src/directives/tooltip/index.js","../src/components/index.js","../src/components/tooltip/index.js","../src/directives/hover/index.js","../src/directives/modal/index.js","../src/directives/scrollspy/helpers/bv-scrollspy.class.js","../src/directives/scrollspy/scrollspy.js","../src/index.js","../src/directives/index.js","../src/directives/scrollspy/index.js","../src/directives/visible/index.js","../src/browser.js"],"names":["e","Object","assign","t","r","s","arguments","length","a","prototype","hasOwnProperty","call","apply","this","toUpperCase","c","o","split","n","i","l","trim","replace","keys","Array","isArray","style","y","concat","p","f","checkMultipleVueWarned","MULTIPLE_VUE_WARNING","HAS_WINDOW_SUPPORT","window","HAS_DOCUMENT_SUPPORT","document","HAS_NAVIGATOR_SUPPORT","navigator","HAS_PROMISE_SUPPORT","Promise","HAS_MUTATION_OBSERVER_SUPPORT","MutationObserver","WebKitMutationObserver","MozMutationObserver","IS_BROWSER","WINDOW","DOCUMENT","NAVIGATOR","USER_AGENT","userAgent","toLowerCase","IS_JSDOM","indexOf","HAS_PASSIVE_EVENT_SUPPORT","test","passiveEventSupported","options","passive","addEventListener","removeEventListener","_unused","HAS_TOUCH_SUPPORT","documentElement","maxTouchPoints","HAS_POINTER_EVENT_SUPPORT","Boolean","PointerEvent","MSPointerEvent","HAS_INTERACTION_OBSERVER_SUPPORT","IntersectionObserverEntry","NAME","DEFAULT_BREAKPOINT","RX_ARRAY_NOTATION","RX_BV_PREFIX","RX_DIGITS","RX_EXTENSION","RX_HASH","RX_HASH_ID","RX_HTML_TAGS","RX_HYPHENATE","RX_LOWER_UPPER","RX_NUMBER","RX_PLUS","RX_REGEXP_REPLACE","RX_SPACES","RX_SPACE_SPLIT","RX_STAR","RX_START_SPACE_WORD","RX_TRIM_LEFT","RX_UNDERSCORE","RX_UN_KEBAB","RX_DATE","RX_DATE_SPLIT","RX_TIME","RX_HREF","RX_ENCODED_COMMA","RX_ENCODE_REVERSE","RX_QUERY_START","RX_ASPECT","RX_ASPECT_SEPARATOR","RX_COL_CLASS","RX_ICON_PREFIX","RX_STRIP_LOCALE_MODS","Element","_Object","_inherits","_super","_createSuper","_classCallCheck","_wrapNativeSuper","HTMLElement","_Element","_super2","SVGElement","_Element2","_super3","File","_Object2","_super4","toType","value","_typeof","isUndefined","undefined","isNull","isUndefinedOrNull","isFunction","isBoolean","isString","isNumber","isNumeric","String","isObject","obj","isPlainObject","toString","isDate","Date","isEvent","Event","isRegExp","slice","toRawType","create","proto","optionalProps","defineProperties","props","defineProperty","prop","descriptor","getOwnPropertyNames","clone","_objectSpread2","pick","filter","key","reduce","result","_defineProperty","omit","mergeDeep","target","source","forEach","sortKeys","sort","cloneDeep","defaultValue","val","_toConsumableArray","identity","x","getRaw","path","join","steps","every","step","get","getEnv","fallback","env","process","getNoWarn","warn","message","console","warnNotClient","warnNoPromiseSupport","BvConfig","$_config","_this","config","configKeys","subConfig","some","b","setConfig","Vue","OurVue","checkMultipleVue","installFactory","_ref","components","directives","plugins","install","installed","registerComponents","registerDirectives","registerPlugins","pluginFactory","extend","plugin","use","registerComponent","name","def","component","registerDirective","directive","NAME_ALERT","NAME_ASPECT","NAME_AVATAR","NAME_AVATAR_GROUP","NAME_BADGE","NAME_BREADCRUMB","NAME_BREADCRUMB_ITEM","NAME_BREADCRUMB_LINK","NAME_BUTTON","NAME_BUTTON_CLOSE","NAME_BUTTON_GROUP","NAME_BUTTON_TOOLBAR","NAME_CALENDAR","NAME_CARD","NAME_CARD_BODY","NAME_CARD_FOOTER","NAME_CARD_GROUP","NAME_CARD_HEADER","NAME_CARD_IMG","NAME_CARD_IMG_LAZY","NAME_CARD_SUB_TITLE","NAME_CARD_TEXT","NAME_CARD_TITLE","NAME_CAROUSEL","NAME_CAROUSEL_SLIDE","NAME_COL","NAME_COLLAPSE","NAME_CONTAINER","NAME_DROPDOWN","NAME_DROPDOWN_DIVIDER","NAME_DROPDOWN_FORM","NAME_DROPDOWN_GROUP","NAME_DROPDOWN_HEADER","NAME_DROPDOWN_ITEM","NAME_DROPDOWN_ITEM_BUTTON","NAME_DROPDOWN_TEXT","NAME_EMBED","NAME_FORM","NAME_FORM_CHECKBOX","NAME_FORM_CHECKBOX_GROUP","NAME_FORM_DATALIST","NAME_FORM_DATEPICKER","NAME_FORM_FILE","NAME_FORM_GROUP","NAME_FORM_INPUT","NAME_FORM_INVALID_FEEDBACK","NAME_FORM_RADIO","NAME_FORM_RADIO_GROUP","NAME_FORM_RATING","NAME_FORM_ROW","NAME_FORM_SELECT","NAME_FORM_SELECT_OPTION","NAME_FORM_SELECT_OPTION_GROUP","NAME_FORM_SPINBUTTON","NAME_FORM_TAG","NAME_FORM_TAGS","NAME_FORM_TEXT","NAME_FORM_TEXTAREA","NAME_FORM_TIMEPICKER","NAME_FORM_VALID_FEEDBACK","NAME_ICON","NAME_IMG","NAME_IMG_LAZY","NAME_INPUT_GROUP","NAME_INPUT_GROUP_ADDON","NAME_INPUT_GROUP_APPEND","NAME_INPUT_GROUP_PREPEND","NAME_INPUT_GROUP_TEXT","NAME_JUMBOTRON","NAME_LINK","NAME_LIST_GROUP","NAME_LIST_GROUP_ITEM","NAME_MEDIA","NAME_MEDIA_ASIDE","NAME_MEDIA_BODY","NAME_MODAL","NAME_NAV","NAME_NAVBAR","NAME_NAVBAR_BRAND","NAME_NAVBAR_NAV","NAME_NAVBAR_TOGGLE","NAME_NAV_FORM","NAME_NAV_ITEM","NAME_NAV_ITEM_DROPDOWN","NAME_OVERLAY","NAME_PAGINATION","NAME_PAGINATION_NAV","NAME_POPOVER","NAME_PROGRESS","NAME_PROGRESS_BAR","NAME_ROW","NAME_SIDEBAR","NAME_SKELETON","NAME_SKELETON_ICON","NAME_SKELETON_IMG","NAME_SKELETON_TABLE","NAME_SKELETON_WRAPPER","NAME_SPINNER","NAME_TAB","NAME_TABLE","NAME_TABLE_CELL","NAME_TABLE_LITE","NAME_TABLE_SIMPLE","NAME_TABS","NAME_TBODY","NAME_TFOOT","NAME_THEAD","NAME_TIME","NAME_TOAST","NAME_TOASTER","NAME_TOOLTIP","EVENT_NAME_CANCEL","EVENT_NAME_CHANGE","EVENT_NAME_CLICK","EVENT_NAME_CLOSE","EVENT_NAME_CONTEXT","EVENT_NAME_CONTEXT_CHANGED","EVENT_NAME_DESTROYED","EVENT_NAME_DISABLE","EVENT_NAME_DISABLED","EVENT_NAME_ENABLE","EVENT_NAME_ENABLED","EVENT_NAME_FILTERED","EVENT_NAME_FIRST","EVENT_NAME_FOCUSIN","EVENT_NAME_FOCUSOUT","EVENT_NAME_HEAD_CLICKED","EVENT_NAME_HIDDEN","EVENT_NAME_HIDE","EVENT_NAME_INPUT","EVENT_NAME_LAST","EVENT_NAME_MOUSEENTER","EVENT_NAME_MOUSELEAVE","EVENT_NAME_NEXT","EVENT_NAME_OPEN","EVENT_NAME_PAGE_CLICK","EVENT_NAME_PREV","EVENT_NAME_REFRESHED","EVENT_NAME_ROW_CLICKED","EVENT_NAME_SELECTED","EVENT_NAME_SHOW","EVENT_NAME_SHOWN","EVENT_NAME_SLIDING_END","EVENT_NAME_TOGGLE","HOOK_EVENT_NAME_BEFORE_DESTROY","HOOK_EVENT_NAME_DESTROYED","ROOT_EVENT_NAME_PREFIX","EVENT_OPTIONS_PASSIVE","EVENT_OPTIONS_NO_CAPTURE","capture","PROP_TYPE_ANY","PROP_TYPE_ARRAY","PROP_TYPE_BOOLEAN","PROP_TYPE_DATE","PROP_TYPE_FUNCTION","Function","PROP_TYPE_NUMBER","Number","PROP_TYPE_OBJECT","PROP_TYPE_REG_EXP","RegExp","PROP_TYPE_STRING","PROP_TYPE_ARRAY_FUNCTION","PROP_TYPE_ARRAY_OBJECT","PROP_TYPE_ARRAY_OBJECT_STRING","PROP_TYPE_ARRAY_STRING","PROP_TYPE_BOOLEAN_NUMBER","PROP_TYPE_BOOLEAN_NUMBER_STRING","PROP_TYPE_BOOLEAN_STRING","PROP_TYPE_DATE_STRING","PROP_TYPE_FUNCTION_STRING","PROP_TYPE_NUMBER_STRING","PROP_TYPE_NUMBER_OBJECT_STRING","PROP_TYPE_OBJECT_FUNCTION","PROP_TYPE_OBJECT_STRING","SLOT_NAME_APPEND","SLOT_NAME_BADGE","SLOT_NAME_BOTTOM_ROW","SLOT_NAME_BUTTON_CONTENT","SLOT_NAME_CUSTOM_FOOT","SLOT_NAME_DEFAULT","SLOT_NAME_EMPTY","SLOT_NAME_FILE_NAME","SLOT_NAME_FIRST","SLOT_NAME_FOOTER","SLOT_NAME_HEADER","SLOT_NAME_LABEL","SLOT_NAME_LEAD","SLOT_NAME_MODAL_CANCEL","SLOT_NAME_MODAL_OK","SLOT_NAME_MODAL_TITLE","SLOT_NAME_PREPEND","SLOT_NAME_ROW_DETAILS","SLOT_NAME_TABLE_BUSY","SLOT_NAME_TABLE_CAPTION","SLOT_NAME_TABLE_COLGROUP","SLOT_NAME_THEAD_TOP","SLOT_NAME_TITLE","SLOT_NAME_TOP_ROW","from","arrayIncludes","array","_len","args","_key","createArray","fillFn","mapFn","map","flatten","item","flattenDeep","toInteger","NaN","integer","parseInt","isNaN","toFloat","float","parseFloat","toFixed","precision","kebabCase","str","pascalCase","_","charAt","startCase","$1","$2","upperFirst","escapeRegExp","spaces","JSON","stringify","lowerCase","ELEMENT_PROTO","TABABLE_SELECTOR","matchesEl","matches","msMatchesSelector","webkitMatchesSelector","closestEl","closest","sel","el","parentElement","parentNode","nodeType","Node","ELEMENT_NODE","requestAF","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","msRequestAnimationFrame","oRequestAnimationFrame","cb","setTimeout","MutationObs","isElement","getActiveElement","excludes","activeElement","isTag","tag","isActiveElement","isVisible","contains","body","getStyle","bcr","getBCR","height","width","isDisabled","disabled","hasAttr","hasClass","reflow","offsetHeight","selectAll","selector","root","arrayFrom","querySelectorAll","select","querySelector","includeRoot","parent","child","getById","id","getElementById","addClass","className","classList","add","removeClass","remove","setAttr","attr","setAttribute","removeAttr","removeAttribute","getAttr","getAttribute","hasAttribute","setStyle","removeStyle","getBoundingClientRect","getCS","getComputedStyle","getSel","getSelection","offset","_offset","top","left","getClientRects","win","ownerDocument","defaultView","pageYOffset","pageXOffset","position","parentOffset","elStyles","doc","offsetParent","offsetParentStyles","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getTabables","rootEl","tabIndex","attemptFocus","focus","attemptBlur","blur","_unused2","memoize","fn","cache","argsKey","VueProto","getConfigValue","bvConfig","getComponentConfig","propKey","getBreakpoints","_getBreakpointsCached","getBreakpointsUpCached","breakpoints","prefixPropName","prefix","unprefixPropName","suffixPropName","suffix","makeProp","type","requiredOrValidator","validator","required","default","copyProps","transformFn","copied","pluckProps","keysToPluck","objToPluck","memo","makePropConfigurable","componentKey","makePropsConfigurable","configurablePropDefaultFnName","hasPropFunction","makeModelMixin","_ref$type","_ref$defaultValue","_ref$validator","_ref$event","event","mixin","model","hasNormalizedSlot","names","$scopedSlots","$slots","normalizeSlot","slot","scope","normalizeSlotMixin","methods","scopedSlots","slots","vNodes","parseEventOptions","eventOn","eventName","handler","eventOff","eventOnOff","on","method","stopEvent","_ref$preventDefault","preventDefault","_ref$propagation","propagation","_ref$immediatePropaga","immediatePropagation","stopPropagation","stopImmediatePropagation","getBaseEventName","getRootEventName","getRootActionEventName","actionName","ariaLabel","content","textVariant","BButtonClose","functional","render","h","data","componentData","staticClass","class","attrs","aria-label","click","domProps","innerHTML","mergeData","NO_FADE_PROPS","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","FADE_PROPS","appear","mode","noFade","transProps","BVTransition","children","appearClass","appearActiveClass","appearToClass","css","modelMixin","modelProps","MODEL_PROP_NAME","MODEL_EVENT_NAME","parseCountDown","show","parseShow","dismissLabel","dismissible","fade","variant","AlertPlugin","BAlert","mixins","countDown","localShow","watch","_watch","newValue","clearCountDownInterval","$emit","$_countDownTimeout","$nextTick","created","$_filterTimer","beforeDestroy","dismiss","clearTimeout","$alert","$dismissButton","alert-dismissible","role","aria-live","aria-atomic","mathMin","Math","min","mathMax","max","mathAbs","abs","mathCeil","ceil","mathFloor","floor","mathPow","pow","mathRound","round","CLASS_NAME","aspect","BAspect","computed","padding","ratio","_aspect$split$map2","_slicedToArray","v","$sizer","paddingBottom","$content","AspectPlugin","encodeReserveReplacer","charCodeAt","encode","encodeURIComponent","decode","decodeURIComponent","stringifyQueryObj","query","results","value2","push","parseQuery","parsed","param","parts","shift","isLink","href","to","isRouterLink","computeHref","_ref3","toFallback","hash","BASE_ATTRS","viewBox","focusable","STACKED_ATTRS","animation","flipH","flipV","fontScale","rotate","scale","shiftH","shiftV","stacked","title","BVIconBase","_class","hasScale","hasTransforms","hasShift","hasContent","$inner","transform","fontSize","xmlns","fill","makeIcon","kebabName","iconName","iconNameClass","iconTitle","svgContent","BVIconBaseProps","BIconBlank","BIconCalendar","BIconCalendarFill","BIconChevronBarLeft","BIconChevronDoubleLeft","BIconChevronDown","BIconChevronLeft","BIconChevronUp","BIconCircleFill","BIconClock","BIconClockFill","BIconDash","BIconPersonFill","BIconPlus","BIconStar","BIconStarFill","BIconStarHalf","BIconX","findIconComponent","ctx","$options","$parent","iconProps","icon","BIcon","CODE_DOWN","CODE_END","CODE_ENTER","CODE_HOME","CODE_LEFT","CODE_RIGHT","CODE_SPACE","CODE_UP","compareArrays","equal","looseEqual","aValidType","bValidType","getTime","aHasKey","bHasKey","isEmpty","makePropWatcher","propName","oldValue","$delete","$data","$set","makePropCacheMixin","proxyPropName","attrsMixin","listenOnRootMixin","listenOnRoot","callback","$root","$on","$off","listenOnRootOnce","_this2","$once","emitOnRoot","_this$$root","listenersMixin","ROOT_EVENT_NAME_CLICKED","routerLinkProps","activeClass","append","exact","exactActiveClass","routerTag","nuxtLinkProps","noPrefetch","prefetch","active","rel","routerComponentName","BLink","inheritAttrs","computedTag","thisOrParent","hasRouter","$router","$nuxt","computeTag","computedRel","_ref2","computeRel","computedHref","computedProps","computedAttrs","bvAttrs","tabindex","aria-disabled","computedListeners","bvListeners","onClick","_arguments","eventIsEvent","suppliedHandler","currentTarget","__vue__","$el","linkProps","BLinkProps","block","pill","pressed","size","squared","handleFocus","isLinkStrict","isToggle","isButton","isNonStandardTag","computeClass","computeLinkProps","computeAttrs","button","link","toggle","nonStandardTag","hashLink","aria-pressed","autocomplete","BButton","listeners","keydown","keyCode","focusin","focusout","SIZES","computeSize","alt","badge","badgeLeft","badgeOffset","badgeTop","badgeVariant","buttonType","rounded","square","src","text","BAvatar","inject","bvAvatarGroup","localSrc","computedSize","computedVariant","computedRounded","fontStyle","marginStyle","overlapScale","marginRight","badgeStyle","FONT_SIZE_SCALE","bottom","right","onImgError","_class2","error","aria-hidden","$badge","hasBadgeSlot","badgeText","overlap","AvatarPlugin","BAvatarGroup","provide","paddingStyle","paddingLeft","paddingRight","BBadge","badge-pill","BadgePlugin","stripTags","htmlOrText","textContent","ariaCurrent","html","BBreadcrumbLink","suppliedProps","aria-current","BBreadcrumbLinkProps","BBreadcrumbItem","items","BreadcrumbPlugin","BBreadcrumb","childNodes","activeDefined","idx","ButtonPlugin","BBtn","BBtnClose","buttonProps","ariaRole","vertical","BButtonGroup","btn-group","btn-group-vertical","ButtonGroupPlugin","BBtnGroup","ITEM_SELECTOR","justify","keyNav","BButtonToolbar","mounted","getItems","focusFirst","focusPrev","index","reverse","focusNext","focusLast","onFocusin","relatedTarget","onKeydown","shiftKey","justify-content-between","ButtonToolbarPlugin","BBtnToolbar","CALENDAR_GREGORY","CALENDAR_LONG","CALENDAR_SHORT","DATE_FORMAT_2_DIGIT","DATE_FORMAT_NUMERIC","createDate","_construct","parseYMD","date","_date$split$map2","year","month","day","getFullYear","getMonth","getDate","formatYMD","createDateFormatter","locale","Intl","DateTimeFormat","format","datesEqual","date1","date2","firstDateOfMonth","setDate","lastDateOfMonth","setMonth","addYears","numberOfYears","setFullYear","oneMonthAgo","oneMonthAhead","oneYearAgo","oneYearAhead","oneDecadeAgo","oneDecadeAhead","constrainDate","RTL_LANGS","isLocaleRTL","locale1","locale2","idMixin","localId_","safeId","idProps","ariaControls","dateDisabledFn","dateFormatOptions","weekday","dateInfoFn","direction","hidden","hideHeader","initialDate","labelCalendar","labelCurrentMonth","labelHelp","labelNav","labelNextDecade","labelNextMonth","labelNextYear","labelNoDateSelected","labelPrevDecade","labelPrevMonth","labelPrevYear","labelSelected","labelToday","navButtonVariant","noHighlightToday","noKeyNav","readonly","roleDescription","selectedVariant","showDecadeNav","startWeekday","todayVariant","valueAsDate","weekdayHeaderFormat","BCalendar","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","locales","calendar","resolvedOptions","resolveLocale","computedDateDisabledFn","computedDateInfoFn","calendarLocale","fmt","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedTodayVariant","computedNavButtonVariant","isRTL","dir","context","selectedFormatted","formatDateString","activeFormatted","dateDisabled","rtl","dateOutOfRange","rangeFn","ymd","hour","minute","second","formatYearMonth","formatWeekdayName","formatWeekdayNameShort","formatDay","nf","NumberFormat","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","notation","prevDecadeDisabled","prevYearDisabled","prevMonthDisabled","thisMonthDisabled","nextMonthDisabled","nextYearDisabled","nextDecadeDisabled","matrix","firstDay","daysInMonth","startIndex","getDay","currentDay","week","j","dayYMD","dayDisabled","dateInfo","label","isThisMonth","info","calendarHeadings","d","_watch$1","old","newYMD","oldYMD","setLive","_this3","activated","deactivated","$refs","grid","_this4","emitSelected","_this5","setGridFocusFlag","onKeydownWrapper","altKey","ctrlKey","checkDate","constrainedToday","onKeydownGrid","onClickDay","clickedDate","gotoPrevDecade","gotoPrevYear","gotoPrevMonth","gotoCurrentMonth","gotoNextMonth","gotoNextYear","gotoNextDecade","onHeaderClick","_this6","hideDecadeNav","todayYMD","highlightToday","$header","text-muted","for","data-selected","sr-only","labelSelectedDate","navScope","navProps","navPrevProps","navNextProps","$prevDecadeIcon","$prevYearIcon","$prevMonthIcon","$thisMonthIcon","$nextMonthIcon","$nextYearIcon","$nextDecadeIcon","makeNavBtn","btnDisabled","shortcut","aria-keyshortcuts","$nav","aria-controls","$gridCaption","$gridWeekDays","$gridBody","$cells","dIndex","isSelected","isActive","isToday","idCell","$btn","data-date","aria-selected","pointerEvents","$gridHelp","$grid","data-month","aria-roledescription","aria-labelledby","aria-describedby","aria-activedescendant","ref","$slot","$widget","lang","d-block","CalendarPlugin","bgVariant","borderVariant","titleTag","BCardTitle","subTitle","subTitleTag","subTitleTextVariant","BCardSubTitle","titleProps","subTitleProps","cardProps","bind","bodyClass","overlay","BCardBody","bodyBgVariant","bodyBorderVariant","bodyTextVariant","$title","$subTitle","bodyTag","card-img-overlay","BCardProps","header","headerClass","headerHtml","BCardHeader","headerBgVariant","headerBorderVariant","headerTextVariant","headerTag","footer","footerClass","footerHtml","BCardFooter","footerBgVariant","footerBorderVariant","footerTextVariant","footerTag","BLANK_TEMPLATE","blank","blankColor","center","fluid","fluidGrow","sizes","srcset","thumbnail","BImg","align","color","makeBlankImgSrc","img-thumbnail","img-fluid","w-100","BImgProps","end","start","BCardImg","baseClass","cardImgProps","BCardImgProps","imgSrc","BCardBodyProps","BCardHeaderProps","BCardFooterProps","noBody","BCard","imgLeft","imgRight","imgStart","imgEnd","imgBottom","slotScope","$imgFirst","$imgLast","$img","hasHeaderSlot","$footer","flex-row","flex-row-reverse","OBSERVER_PROP_NAME","VisibilityObserver","vnode","margin","once","observer","visible","doneOnce","createObserver","stop","IntersectionObserver","rootMargin","threshold","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","_prevModifiers","VBVisible","componentUpdated","unbind","MODEL_PROP_NAME_SHOW","imgProps","blankHeight","blankSrc","blankWidth","BImgLazy","b-visible","isShown","computedSrc","computedBlank","computedWidth","computedHeight","computedSrcset","computedSizes","_watch$2","updateShowProp","MODEL_EVENT_NAME_PREFIX","doShow","_modifiers","$props","BImgLazyProps","BCardImgLazy","textTag","BCardText","columns","deck","CardPlugin","BCardGroup","noop","observeDom","obs","mutations","changed","mutation","TEXT_NODE","addedNodes","removedNodes","childList","subtree","DIRECTION","next","dirClass","overlayClass","prev","PointerType","TOUCH","PEN","TransitionEndEvents","WebkitTransition","MozTransition","OTransition","transition","background","controls","imgHeight","imgWidth","indicators","interval","labelGotoSlide","labelIndicators","labelNext","labelPrev","noAnimation","noHoverPause","noTouch","noWrap","BCarousel","bvCarousel","isSliding","transitionEndEvent","slides","isPaused","touchStartX","touchDeltaX","numSlides","_watch$3","setSlide","pause","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","getTransitionEndEvent","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","inner","attributes","attributeFilter","slide","visibilityState","setInterval","restart","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","curIndex","nextIndex","handleClick","handleSwipe","absDeltaX","touchStart","pointerType","clientX","touches","touchMove","touchEnd","idInner","$controls","makeControl","handlerWrapper","$indicators","aria-owns","mouseenter","mouseleave","tagName","carousel-fade","pointer-event","aria-busy","imgAlt","imgBlank","imgBlankColor","caption","captionHtml","captionTag","contentTag","contentVisibleUp","textHtml","CarouselPlugin","BCarouselSlide","contentClasses","dragstart","$contentChildren","$child","CLASS_NAME_SHOW","TRANSITION_PROPS","TRANSITION_HANDLERS","enter","scrollHeight","afterEnter","leave","afterLeave","BVCollapse","ROOT_ACTION_EVENT_NAME_TOGGLE","ROOT_ACTION_EVENT_NAME_REQUEST_STATE","ROOT_EVENT_NAME_ACCORDION","ROOT_EVENT_NAME_STATE","ROOT_EVENT_NAME_SYNC_STATE","accordion","isNav","BCollapse","transitioning","classObject","navbar-collapse","collapse","close","_watch$4","emitState","handleToggleEvt","handleAccordionEvt","setWindowEvents","handleResize","emitSync","updated","onEnter","onAfterEnter","onLeave","onAfterLeave","checkDisplayBlock","restore","isBlock","display","clickHandler","openedId","openAccordion","isThis","CLASS_BV_TOGGLE_COLLAPSED","CLASS_BV_TOGGLE_NOT_COLLAPSED","BV_BASE","BV_TOGGLE_ROOT_HANDLER","BV_TOGGLE_CLICK_HANDLER","BV_TOGGLE_STATE","BV_TOGGLE_TARGETS","ATTR_ARIA_CONTROLS","ATTR_ARIA_EXPANDED","ATTR_ROLE","ATTR_TABINDEX","STYLE_OVERFLOW_ANCHOR","KEYDOWN_KEY_CODES","removeClickListener","removeRootListeners","setToggleState","state","resetProp","handleUpdate","binding","targets","arg","arr","getTargets","addClickListener","VBToggle","addRootListeners","VBTogglePlugin","CollapsePlugin","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","resolve","then","scheduled","functionToCheck","getStyleComputedProperty","element","property","getParentNode","nodeName","host","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","version","getOffsetParent","noOffsetParent","nextElementSibling","getRoot","node","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","getBordersSize","styles","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","instance","Constructor","TypeError","createClass","enumerable","configurable","writable","protoProps","staticProps","_extends","getClientRect","offsets","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","computeAutoPlacement","placement","refRect","rects","sortedAreas","area","filteredAreas","computedPlacement","variation","getReferenceOffsets","commonOffsetParent","getOuterSizes","marginBottom","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","find","check","runModifiers","ends","findIndex","cur","match","enabled","update","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","removeChild","getWindow","attachToScrollParents","scrollParents","isBody","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isFinite","setStyles","unit","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","counter","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","search","splitRegex","ops","op","mergeWithPrevious","toValue","index2","Defaults","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","priority","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","len","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","subtractLength","hide","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","x-placement","applyStyle","onLoad","modifierOptions","Popper","jquery","Utils","global","PopperUtils","BvEvent","eventInit","constructor","cancelable","nativeEvent","vueTarget","componentId","defaultPrevented","_createClass","clickOutMixin","listenForClickOut","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_EVENT_NAME_SHOWN","ROOT_EVENT_NAME_HIDDEN","SELECTOR_ITEM","boundary","dropleft","dropright","dropup","noFlip","popperOpts","dropdownMixin","bvDropdown","bvNavbar","visibleChangePrevented","inNavbar","toggler","directionClass","boundaryClass","bvEvent","menu","emitEvent","focusToggler","showMenu","hideMenu","$_popper","$_hideTimeout","whileOpenListen","destroyPopper","clearHideTimeout","createPopper","focusMenu","getPopperConfig","updatePopper","popperConfig","isOpen","rootCloseListener","vm","refocus","_event","onMousedown","onEsc","onSplitClick","hideHandler","up","focusItem","dropdownProps","lazy","menuClass","noCaret","splitButtonType","splitClass","splitHref","splitTo","splitVariant","toggleClass","toggleTag","toggleText","BDropdown","dropdownClasses","d-flex","menuClasses","dropdown-menu-right","toggleClasses","dropdown-toggle-split","dropdown-toggle-no-caret","commonProps","$buttonChildren","buttonContentDomProps","$split","btnProps","$toggle","aria-haspopup","aria-expanded","mousedown","$menu","linkClass","BDropdownItem","closeDropdown","buttonClass","BDropdownItemButton","BDropdownHeader","BDropdownDivider","aria-orientation","inline","novalidate","validated","BForm","form-inline","was-validated","formControlProps","formClass","BDropdownForm","textClass","BDropdownText","ariaDescribedby","headerClasses","headerVariant","BDropdownGroup","headerId","ariaDescribedBy","DropdownPlugin","BDd","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDdDivider","BDdForm","BDdText","BDdGroup","TYPES","BEmbed","EmbedPlugin","disabledField","htmlField","textField","valueField","formOptionsMixin","formOptions","normalizeOptions","normalizeOption","option","formOptionsProps","BFormDatalist","BFormText","form-text","ariaLive","forceShow","tooltip","BFormInvalidFeedback","invalid-feedback","invalid-tooltip","BFormValidFeedback","valid-feedback","valid-tooltip","BFormRow","FormPlugin","BDatalist","BFormFeedback","looseIndexOf","SELECTOR","autofocus","form","formControlMixin","handleAutofocus","plain","formCustomMixin","custom","formSizeMixin","sizeFormClass","formStateMixin","computedState","stateClass","computedAriaInvalid","ariaInvalid","formSizeProps","formStateProps","formCustomProps","ariaLabelledby","buttonVariant","formRadioCheckMixin","localChecked","isGroup","bvGroup","hasFocus","computedLocalChecked","set","isChecked","isRadio","isBtnMode","buttons","isPlain","isCustom","isSwitch","switches","switch","isInline","computedName","groupName","computedForm","computedButtonVariant","buttonClasses","aria-required","_watch$5","computedLocalCheckedWatcher","_methods","checked","input","$input","form-check-input","custom-control-input","position-static","change","handleChange","$button","$label","form-check-label","custom-control-label","form-check","form-check-inline","custom-control","custom-control-inline","custom-checkbox","custom-switch","custom-radio","MODEL_PROP_NAME_INDETERMINATE","MODEL_EVENT_NAME_INDETERMINATE","formRadioCheckProps","_objectSpread2$1","BFormCheckbox","setIndeterminate","indeterminate","_ref$target","uncheckedValue","BFormRadio","PASS_DOWN_ATTRS","formRadioCheckGroupMixin","groupClasses","classes","_watch$6","isRadioGroup","$attrs","optionComponent","$inputs","aria-invalid","formRadioCheckGroupProps","_objectSpread2$2","BFormCheckboxGroup","bvCheckGroup","FormCheckboxPlugin","BCheckbox","BCheck","BCheckboxGroup","BCheckGroup","PROP","MOUSEENTER","updateListeners","listener","_ref$value","hasListener","handlerChanged","createListener","VBHover","buttonOnly","formattedValue","placeholder","BVFormBtnLabelControl","b-hover","isHovered","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","invalid","btnScope","opened","!focus","!blur","$hidden","aria-modal","!click","form-control","is-valid","is-invalid","aria-readonly","calendarProps","BCalendarProps","formBtnLabelControlProps","BVFormBtnLabelControlProps","calendarWidth","closeButton","closeButtonVariant","dark","labelCloseButton","labelResetButton","labelTodayButton","noCloseOnSelect","resetButton","resetButtonVariant","resetValue","todayButton","todayButtonVariant","BFormDatepicker","localYMD","localLocale","calendarYM","computedLang","computedResetValue","_watch$7","control","setAndClose","onSelected","onInput","onContext","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$createElement","justify-content-end","$calendar","bg-dark","text-light","shown","FormDatepickerPlugin","BDatepicker","VALUE_EMPTY_DEPRECATED_MSG","isValidValue","isFile","getDataTransferItemEntry","getAsEntry","webkitGetAsEntry","getAllFileEntriesInDirectory","directoryReader","entryPromises","readDirectoryEntries","readEntries","all","isDirectory","createReader","file","$path","accept","browseText","directory","dropPlaceholder","fileNameFormatter","multiple","noDrop","noDropPlaceholder","noTraverse","BFormFile","files","dragging","dropAllowed","computedAccept","extOrType","startMatch","endMatch","rx","computedCapture","webkitdirectory","computedFileNameFormatter","defaultFileNameFormatter","clonedFiles","flattenedFiles","fileNames","labelContent","allowed","filesTraversed","_watch$8","reset","$_form","$form","isFileValid","isFilesArrayValid","setFiles","setInputFiles","dataTransfer","ClipboardEvent","clipboardData","DataTransfer","handleFiles","isDrop","filteredFiles","focusHandler","onChange","_event$dataTransfer","dataTransferItemList","traverseDirectories","kind","getAllFileEntries","webkitRelativePath","onDragenter","_event$dataTransfer2","dropEffect","onDragover","_event$dataTransfer3","onDragleave","onDrop","form-control-file","custom-file-input","zIndex","data-browse","dragenter","dragover","dragleave","drop","FormFilePlugin","BFile","escapeChar","cssEscape","firstCharCode","char","charCode","ALIGN_SELF_VALUES","computeBreakpointClass","breakpoint","breakpointPropMap","BCol","breakpointCol","breakpointOffset","breakpointOrder","col","alignSelf","cols","_classList$push","hasColClasses","INPUTS","INPUT_SELECTOR","LEGEND_INTERACTIVE_ELEMENTS","BFormGroup","description","feedbackAriaLive","invalidFeedback","labelClass","labelFor","labelSize","labelSrOnly","validFeedback","contentColProps","getColProps","labelAlignClasses","getAlignClasses","labelColProps","isHorizontal","updateAriaDescribedby","propValue","newIds","oldIds","ids","onLegendClick","inputs","isFieldset","labelId","labelTag","$invalidFeedback","invalidFeedbackContent","invalidFeedbackId","$validFeedback","validFeedbackContent","validFeedbackId","$description","descriptionContent","descriptionId","FormGroupPlugin","BFormFieldset","formSelectionMixin","selectionStart","selectionEnd","selectionDirection","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","formatter","lazyFormatter","number","plaintext","formTextMixin","localValue","vModelValue","modifyValue","computedClass","isRange","isColor","custom-range","form-control-plaintext","computedDebounce","hasFormatter","stringifyValue","modifiedValue","clearDebounce","$_inputDebounceTimer","formatValue","force","updateValue","doUpdate","composing","onBlur","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","formTextProps","list","noWheel","BFormInput","localType","setWheelStopper","onWheelFocus","onWheelBlur","stopWheel","FormInputPlugin","BInput","BFormRadioGroup","bvRadioGroup","FormRadioPlugin","BRadio","BRadioGroup","computeStars","stars","clampValue","BVFormRatingStar","focused","hasClear","rating","star","minStar","b-rating-star-empty","b-rating-star-half","b-rating-star-full","iconClear","iconEmpty","iconFull","iconHalf","noBorder","showClear","showValue","showValueMax","BFormRating","computedStars","computedRating","isInteractive","formattedRating","formatOptions","toLocaleString","_watch$9","amountRtl","onFocus","renderIcon","iconEmptyFn","iconHalfFn","iconFullFn","iconClearFn","$icon","empty","half","full","d-inline-flex","border-0","aria-valuemin","aria-valuemax","aria-valuenow","FormRatingPlugin","BRating","labelField","optionsField","optionsMixin","BFormSelectOption","BFormSelectOptionGroup","selectSize","BFormSelect","computedSelectSize","inputClass","selectedValue","_value","FormSelectPlugin","BSelect","BSelectOption","BSelectOptionGroup","KEY_CODES","formatterFn","labelDecrement","labelIncrement","repeatDelay","repeatInterval","repeatStepMultiplier","repeatThreshold","wrap","BFormSpinbutton","spinId","computedInline","computedReadonly","computedRequired","computedStep","computedDelay","delay","computedInterval","computedThreshold","computedStepMultiplier","computedPrecision","computedMultiplier","valueAsFixed","computedRTL","defaultFormatter","useGrouping","computedFormatter","computedSpinAttrs","hasValue","aria-valuetext","_watch$a","clearRepeat","$_autoDelayTimer","$_autoRepeatTimer","$_keyIsDown","spinner","emitChange","stepValue","multiplier","onFocusBlur","stepUp","stepDown","metaKey","resetTimers","handleStepRepeat","onKeyup","stepper","count","onMouseup","setMouseup","makeButton","IconCmp","keyRef","slotName","py-0","touchstart","$increment","$decrement","$spin","align-self-center","align-items-center","border-top","border-bottom","border-left","border-right","align-items-stretch","flex-column","keyup","FormSpinbuttonPlugin","BSpinbutton","noRemove","removeLabel","BFormTag","onRemove","tagId","tagLabelId","$remove","$tag","DEFAULT_INPUT_FOCUS_SELECTOR","cleanTags","tags","processEventValue","addButtonText","addButtonVariant","addOnChange","duplicateTagText","ignoreInputFocusSelector","inputAttrs","inputId","inputType","invalidTagText","limit","limitTagsText","noAddOnEnter","noOuterFocus","noTagRemove","removeOnDelete","separator","tagClass","tagPills","tagRemoveLabel","tagRemovedLabel","tagValidator","tagVariant","BFormTags","newTag","removedTags","tagsState","valid","duplicate","computedInputId","computedInputType","computedInputAttrs","computedInputHandlers","onInputInput","onInputChange","onInputKeydown","computedSeparator","computedSeparatorRegExp","computedJoiner","joiner","computeIgnoreInputFocusSelector","disableAddButton","splitTags","validateTag","duplicateTags","hasDuplicateTags","invalidTags","hasInvalidTags","isLimitReached","_watch$b","addTag","parseTags","getInput","invalidAndDuplicates","removeTag","separatorRe","ignoreFocusSelector","onFocusout","_this7","defaultRender","inputHandlers","isDuplicate","isInvalid","$tags","duplicateFeedbackId","limitFeedbackId","outline","minWidth","invisible","tagListId","$field","$ul","$feedback","$invalid","$duplicate","$limit","$output","aria-relevant","$removed","hasTags","FormTagsPlugin","BTags","BTag","maxRows","noAutoShrink","noResize","rows","BFormTextarea","heightInPx","resize","computedRows","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderBottomWidth","paddingTop","minHeight","oldHeight","contentRows","640","FormTextareaPlugin","BTextarea","NUMERIC","padLeftZeros","parseHMS","hh","mm","ss","_value$split$map2","hours","minutes","seconds","ampm","BFormSpinbuttonProps","hour12","labelAm","labelAmpm","labelHours","labelMinutes","labelNoTimeSelected","labelPm","labelSeconds","minutesStep","secondsStep","showSeconds","BTime","modelHours","modelMinutes","modelSeconds","modelAmpm","computedHMS","requireSeconds","formatHMS","resolved","hourCycle","computedHourCycle","is12Hour","formatted","formattedTimeString","computedAriaLabelledby","timeFormatter","timeZone","numberFormatter","UTC","spinScopedSlots","increment","decrement","_watch$c","_parseHMS","newHours","oldHours","spinners","formatHours","formatMinutes","formatSeconds","formatAmpm","setHours","setMinutes","setSeconds","setAmpm","onSpinLeftRight","cmp","spinIds","makeSpinbutton","spinbuttonProps","refInFor","makeColon","$spinners","$value","timeProps","BTimeProps","labelNowButton","noCloseButton","nowButton","nowButtonVariant","BFormTimepicker","localHMS","_watch$d","hms","onNowButton","now","getHours","getMinutes","getSeconds","time","$time","FormTimepickerPlugin","BTimepicker","ImagePlugin","BInputGroupText","isText","BInputGroupAddon","input-group-append","input-group-prepend","BInputGroupAddonProps","BInputGroupAppend","BInputGroupPrepend","appendHtml","prepend","prependHtml","InputGroupPlugin","BInputGroup","$prepend","hasPrependSlot","$append","hasAppendSlot","BContainer","container","container-fluid","containerFluid","headerLevel","lead","leadHtml","leadTag","JumbotronPlugin","BJumbotron","$lead","hasLeadSlot","$children","jumbotron-fluid","COMMON_ALIGNMENT","computeRowColsClass","computeRowColsBreakpoint","rowColsPropList","LayoutPlugin","BRow","rowColsProps","alignContent","alignH","alignV","noGutters","no-gutters","LinkPlugin","flush","horizontal","BListGroup","list-group-flush","list-group-horizontal","actionTags","action","ListGroupPlugin","BListGroupItem","itemProps","verticalAlign","BMediaAside","media-aside-right","BMediaBody","rightAlign","MediaPlugin","BMedia","$aside","listenOnDocumentMixin","listenDocument","listenOnDocument","listenOffDocument","listenOnWindowMixin","listenWindow","listenOnWindow","listenOffWindow","getScopeId","_scopeId","scopedStyleMixin","scopedStyleAttrs","scopeId","BVTransporterTarget","abstract","nodes","updatedNodes","destroyed","$nodes","BVTransporter","immediate","unmountTarget","mountTarget","$_defaultFn","$_target","beforeMount","updateTarget","getContainer","$container","createElement","appendChild","propsData","defaultFn","$destroy","BvModalEvent","_assertThisInitialized","trigger","_get","_getPrototypeOf","modalManager","modals","baseZIndex","scrollbarWidth","isBodyOverflowing","modalCount","modalsAreOpen","newCount","oldCount","getScrollbarWidth","checkScrollbar","setScrollbar","resetScrollbar","updateModals","registerModal","modal","unregisterModal","splice","_isBeingDestroyed","_isDestroyed","resetModal","getBaseZIndex","div","isTop","_getBCR","_paddingChangedForModal","_marginChangedForModal","actualPadding","actualMargin","TRIGGER_FORCE","BUTTON_CANCEL","BUTTON_CLOSE","BUTTON_OK","BUTTONS","OBSERVER_CONFIG","characterData","autoFocusButton","busy","buttonSize","cancelDisabled","cancelTitle","cancelTitleHtml","cancelVariant","centered","contentClass","dialogClass","headerCloseContent","headerCloseLabel","headerCloseVariant","hideBackdrop","hideFooter","hideHeaderClose","ignoreEnforceFocusSelector","modalClass","noCloseOnBackdrop","noCloseOnEsc","noEnforceFocus","noStacking","okDisabled","okOnly","okTitle","okTitleHtml","okVariant","returnFocus","scrollable","static","titleClass","titleHtml","titleSrOnly","BModal","isHidden","isTransitioning","isShow","isOpening","isClosing","ignoreBackdropClick","isModalOverflowing","modalId","modalOuterId","modalHeaderId","modalBodyId","modalTitleId","modalContentId","modalFooterId","modalBackdropId","modalClasses","modalStyles","sbWidth","dialogClasses","titleClasses","bodyClasses","footerClasses","_ref4","modalOuterStyle","cancel","onCancel","onClose","ok","onOk","computeIgnoreEnforceFocusSelector","computedModalAttrs","$_returnFocus","showHandler","toggleHandler","modalListener","checkModalOverflow","updateModel","buildEvent","showEvt","hideEvt","triggerEl","onBeforeEnter","setResizeEvent","setEnforceFocus","onBeforeLeave","returnFocusTo","onDialogMousedown","onceModalMouseup","onClickOut","tabables","bottomTrap","topTrap","preventScroll","autoFocus","makeModal","$modalHeader","$closeButton","$body","$modalFooter","$cancelButton","$modalContent","$tabTrapTop","$tabTrapBottom","$modalDialog","$modal","beforeEnter","beforeLeave","$backdrop","ROOT_ACTION_EVENT_NAME_SHOW","PROPERTY","getTarget","_ref$modifiers","getTriggerElement","setRole","oldProp","VBModal","inserted","PROP_NAME","BASE_PROPS","modalProps","defaultResolver","propsToSlots","msgBoxContent","filterOptions","ModalPlugin","BVModalPlugin","BMsgBox","extends","handleDestroy","$route","$watch","asyncMsgBox","resolver","msgBox","reject","Error","bvModalEvt","$mount","makeMsgBox","BvModal","_vm","_root","_this$_root","_this$_root2","_len2","_key2","cardHeader","justified","pills","small","tabs","BNav","nav-tabs","nav-pills","card-header-tabs","card-header-pills","nav-fill","nav-justified","linkAttrs","linkClasses","BNavItem","BNavText","formProps","BFormProps","BNavForm","BDropdownProps","BNavItemDropdown","toggleId","NavPlugin","BNavItemDd","BNavDropdown","BNavDd","fixed","print","sticky","toggleable","BNavbar","breakpointClass","xs","d-print","sticky-top","BNavProps","BNavbarNav","BNavbarBrand","BNavbarToggle","toggleState","handleStateEvt","expanded","NavbarPlugin","BNavToggle","BSpinner","POSITION_COVER","bgColor","noCenter","opacity","overlayTag","spinnerSmall","spinnerType","spinnerVariant","wrapTag","BOverlay","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","position-absolute","position-fixed","after-enter","after-leave","OverlayPlugin","sanitizeLimit","sanitizeCurrentPage","numberOfPages","page","onSpaceKey","ellipsisClass","ellipsisText","firstClass","firstNumber","firstText","hideEllipsis","hideGotoEndButtons","labelFirstPage","labelLastPage","labelNextPage","labelPage","labelPrevPage","lastClass","lastNumber","lastText","nextClass","nextText","pageClass","prevClass","prevText","paginationMixin","currentPage","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","startNumber","lastPageNumber","pageList","_this$paginationParam","pages","makePageArray","_watch$e","handleKeyNav","getButtons","btn","focusCurrent","pageNumbers","_this$paginationParam2","$buttons","isActivePage","pageNumber","noCurrentPage","makeEndBtn","linkTo","btnSlot","btnText","btnClass","pageTest","$btnContent","flex-grow-1","flex-fill","makeEllipsis","isLast","makePageButton","aria-checked","aria-posinset","aria-setsize","btnContent","makePage","$firstPageBtn","$lastPageBtn","$pagination","sanitizePerPage","sanitizeTotalRows","paginationProps","perPage","totalRows","BPagination","pageSizeNumberOfPages","clickEvt","pageNum","PaginationPlugin","baseUrl","linkGen","noPageDetect","pageGen","useRouter","BPaginationNav","computedValue","setNumberOfPages","guessCurrentPage","getPageInfo","makeLink","resolveLink","_link2","pathname","resolveRoute","route","guess","currentRoute","loc","location","currentLink","PaginationNavPlugin","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","arrowPadding","boundaryPadding","fallbackPlacement","BVPopper","attachment","getAttachment","templateType","getOffset","popperPlacementChange","popperCreate","arrowOffset","renderTemplate","BVTooltipTemplate","customClass","interactive","templateClasses","noninteractive","templateAttributes","templateListeners","MODAL_SELECTOR","ROOT_EVENT_NAME_MODAL_HIDDEN","CONTAINER_SELECTOR","DATA_TITLE_ATTR","templateData","triggers","BVTooltip","activeTrigger","hover","computedId","computedTriggers","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","listen","handleTemplateUpdate","disable","enable","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","forceHide","setWhileOpenListeners","clearHoverTimeout","clearVisibilityInterval","destroyTemplate","getTemplate","updateData","titleUpdated","fixTitle","createTemplateAndShow","Template","$tip","getPlacementTarget","getBoundary","onTemplateShow","onTemplateShown","onTemplateHide","onTemplateHidden","handleEvent","hideTemplate","clearActiveTriggers","localPlacementTarget","removeAriaDescribedby","restoreTitle","getTemplateElement","dropdownOpen","addAriaDescribedby","tip","prevHoverState","getTargetId","isInModal","isDropdown","desc","setRootListener","doHide","doDisable","doEnable","setModalListener","setDropdownListener","visibleCheck","setOnTouchStartListener","_this8","_this9","eventTarget","_this10","_this11","MODEL_PROP_NAME_ENABLED","MODEL_EVENT_NAME_ENABLED","_makePropsConfigurabl","BTooltip","localTitle","localContent","templateTitleContent","_watch$f","$_toolpop","updateContent","doOpen","doClose","Component","getComponent","$toolpop","onHide","onDisabled","onEnabled","setTitle","setContent","BVPopoverTemplate","titleDomProps","contentDomProps","BVPopover","BTooltipProps","BPopover","BV_POPOVER","validTriggers","manual","htmlRE","noFadeRE","placementRE","boundaryRE","delayRE","delayShowRE","delayHideRE","offsetRE","variantRE","spacesRE","applyPopover","bindings","selectedTriggers","parseBindings","__bv_prev_data__","oldData","newData","VBPopoverPlugin","VBPopover","removePopover","PopoverPlugin","animated","labelHtml","showProgress","striped","BProgressBar","bvProgress","progressBarClasses","computedAnimated","computedStriped","progressBarStyles","computedProgress","computedShowProgress","computedShowValue","progressBarProps","BProgressBarProps","ProgressPlugin","BProgress","progressHeight","$childNodes","backdrop","backdropVariant","closeLabel","noCloseOnRouteChange","noHeader","noHeaderClose","noSlide","shadow","sidebarClass","renderHeader","renderHeaderTitle","$close","renderHeaderClose","renderBody","renderFooter","renderContent","renderBackdrop","onBackdropClick","SidebarPlugin","BSidebar","transitionProps","hasTitle","titleId","_watch$g","fullPath","$_returnFocusEl","handleToggle","handleSync","onTopTrapFocus","enforceFocus","onBottomTrapFocus","$sidebar","BSkeleton","BSkeletonIcon","cardImg","noAspect","BSkeletonImg","hasListenerMixin","$listeners","$events","_events","LIGHT","DARK","BTr","bvTableTr","bvTableRowGroup","inTbody","isTbody","inThead","isThead","inTfoot","isTfoot","isDark","isStacked","isResponsive","isStickyHeader","hasStickyHeader","tableVariant","headVariant","footVariant","isRowDark","trClasses","trAttrs","bottomRowMixin","renderBottomRow","fields","computedFields","tbodyTrClass","tbodyTrAttr","parseSpan","spanValidator","colspan","rowspan","stackedHeading","stickyColumn","BTd","isStackedCell","isStickyColumn","rowVariant","computedColspan","computedRowspan","cellClasses","cellAttrs","headOrFoot","data-label","MODEL_PROP_NAME_BUSY","busyMixin","localBusy","computedBusy","stopIfBusy","renderBusy","captionMixin","captionId","renderCaption","$caption","hasCaptionSlot","colgroupMixin","renderColgroup","$colgroup","emptyFilteredHtml","emptyFilteredText","emptyHtml","emptyText","showEmpty","emptyMixin","renderEmpty","computedItems","$empty","isFiltered","stringifyObjectValues","k","FIELD_KEY_CELL_VARIANT","FIELD_KEY_ROW_VARIANT","FIELD_KEY_SHOW_DETAILS","IGNORED_FIELD_KEYS","EVENT_FILTER","sanitizeRow","row","ignoreFields","includeFields","fieldsObj","formattedRow","field","filterByFormatted","allowedKeys","filterDebounce","filterFunction","filterIgnoredFields","filterIncludedFields","filteringMixin","localFilter","filterSanitize","computedFilterIgnored","computedFilterIncluded","computedFilterDebounce","ms","localFiltering","hasProvider","noProviderFiltering","filteredCheck","filteredItems","localItems","localFilterFn","criteria","filterFn","filterFnFactory","defaultFilterFnFactory","clearFilterTimer","deep","newCriteria","timeout","regExp","pattern","lastIndex","computedFieldsObj","normalizeFields","origFields","processField","sample","primaryKey","itemsMixin","paginatedItems","sortedItems","sortBy","localSortBy","sortDesc","localSortDesc","apiUrl","getFieldFormatter","localPaging","noProviderPaging","ROOT_EVENT_NAME_REFRESHED","ROOT_ACTION_EVENT_NAME_REFRESH","noProviderSorting","providerMixin","providerTriggerContext","_providerUpdate","refresh","clearSelected","_providerSetLocal","catch","SELECT_MODES","noSelectOnClick","selectMode","selectable","selectableMixin","selectedRows","selectedLastRow","isSelectable","hasSelectableRowClick","supportsSelectableRows","selectableHasSelection","selectableIsMultiSelect","selectableTableClasses","b-table-selectable","selectableTableAttrs","aria-multiselectable","setSelectionHandlers","selectRow","isRowSelected","selectedLastClicked","unselectRow","selectAllRows","selectableRowClasses","b-table-row-selected","selectableRowAttrs","selectionHandler","stableSort","compareFn","normalizeValue","MODEL_PROP_NAME_SORT_BY","MODEL_PROP_NAME_SORT_DESC","SORT_DIRECTION_ASC","SORT_DIRECTION_DESC","SORT_DIRECTIONS","_props","labelSortAsc","labelSortClear","labelSortDesc","noFooterSorting","noLocalSorting","noSortReset","numeric","sortingMixin","localSorting","isSortable","sortable","sortCompareLocale","nullLast","sortNullLast","sortCompare","localeOptions","sortCompareOptions","usage","sortByFormatted","_ref$sortBy","_ref$formatter","_ref$locale","_ref$localeOptions","_ref$nullLast","aa","bb","localeCompare","defaultSortCompare","_watch$h","handleSort","isFoot","sortChanged","toggleLocalSortDesc","sortDirection","sortKey","sortTheadThClasses","b-table-sort-icon-left","sortIconLeft","sortTheadThAttrs","aria-sort","sortTheadThLabel","labelSorting","stackedMixin","isStackedAlways","stackedTableClasses","b-table-stacked","bordered","borderless","captionTop","noBorderCollapse","outlined","responsive","stickyHeader","tableClass","tableRendererMixin","bvTable","wrapperClasses","wrapperStyles","maxHeight","tableClasses","isTableSimple","table-striped","table-hover","table-dark","table-bordered","table-borderless","table-sm","b-table-fixed","b-table-caption-top","b-table-no-border-collapse","tableAttrs","ariaAttrs","aria-colcount","aria-rowcount","renderThead","renderTbody","renderTfoot","$table","tbodyTransitionHandlers","tbodyTransitionProps","BTbody","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","TABLE_TAG_NAMES","filterEvent","textSelectionActive","containsNode","BTdProps","BTh","detailsTdClass","tbodyRowMixin","getTdValues","tdValue","getThValues","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","rowHovered","tbodyRowEvtStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","colIndex","rowIndex","isRowHeader","cellTag","cellVariant","tdClass","aria-colindex","thAttr","tdAttr","unformatted","toggleDetails","detailsShowing","rowSelected","$_bodyFieldSlotNameCache","renderTbodyRow","rowShowDetails","hasRowClickHandler","$rows","detailsId","$tds","ariaRowIndex","primaryKeyValue","rowKey","rowId","selectableClasses","selectableAttrs","userTrClasses","userTrAttrs","data-pk","aria-details","aria-rowindex","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","getCellSlotName","BTbodyProps","tbodyRowProps","tbodyClass","tbodyMixin","getTbodyTrs","tbody","trs","tr","getTbodyTrIndex","onTbodyRowKeydown","onTBodyRowClicked","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","renderTopRow","$busy","defaultSlotName","lowercaseSlotName","handlers","auxclick","contextmenu","dblclick","BTfoot","tfootClasses","tfootAttrs","footClone","footRowVariant","tfootClass","tfootTrClass","tfootMixin","renderTFootCustom","BThead","theadClasses","theadAttrs","getHeadSlotName","getFootSlotName","headRowVariant","theadClass","theadTrClass","theadMixin","fieldClasses","thClass","headClicked","hasHeadClickListener","makeCell","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","slotNames","column","$srLabel","$trs","topRowMixin","bottomRowProps","busyProps","captionProps","colgroupProps","emptyProps","filteringProps","itemsProps","providerProps","selectableProps","sortingProps","stackedProps","tableRendererProps","tfootProps","theadProps","BTable","BTableLite","BTableSimple","TablePlugin","TableLitePlugin","TableSimplePlugin","isPositiveNumber","showFooter","tableProps","BSkeletonTable","$th","$thTr","$td","$tdTr","$tbody","$thead","$tfoot","loading","SkeletonPlugin","BSkeletonWrapper","SpinnerPlugin","notDisabled","tab","BVTabButton","bvTabs","posInSet","setSize","handleEvt","_this$tab","localActive","titleItemClass","titleLinkClass","titleLinkAttributes","$link","activeNavItemClass","activeTabClass","card","navClass","navWrapperClass","noNavStyle","BTabs","currentTab","registeredTabs","localNavClass","_watch$i","$tab","activateTab","previousTab","nextTab","updateTabs","registerTab","unregisterTab","$t","getTabs","$tabs","_isTab","getButtonForTab","updateButton","$forceUpdate","tabEvent","deactivateTab","focusButton","emitTabClick","clickTab","firstTab","currentIndex","lastTab","$activeTab","$fallbackTab","_on","controlledBy","card-header","card-footer","col-auto","card-body","MODEL_PROP_NAME_ACTIVE","MODEL_EVENT_NAME_ACTIVE","_objectSpread2$3","TabsPlugin","BTab","tabClasses","buttonId","computedNoFade","computedLazy","_watch$j","activate","deactivate","TimePlugin","Symbol","iterator","arr2","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","inBrowser","acc","VuePlugin","transports","sources","wormhole","trackInstances","open","transport","passengers","_transport$order","Infinity","newTransport","freeze","$_getTransportIndex","newTransports","registerTarget","unregisterTarget","registerSource","unregisterSource","hasTarget","hasSource","hasContentFor","_id","Portal","slim","slotProps","random","sendUpdate","clear","closer","normalizeSlots","normalizeOwnChildren","slotContent","Tag","v-portal","PortalTarget","firstRender","ownTransports","newVal","oldVal","temp","newPassengers","combinePassengers","noWrapper","vue-portal-target","_id$1","portalProps","targetProps","DefaultTransition","bail","mountTo","targetSlim","targetSlotProps","targetTag","portalTarget","mountEl","ariaAtomic","BToaster","doRender","dead","staticName","Wormhole","$toaster","b-dead-toaster","$target","appendToast","autoHideDelay","isStatus","noAutoHide","solid","toastClass","toaster","BToast","isMounted","isHiding","dismissStarted","resumeDismiss","toastClasses","b-toast-solid","b-toast-append","b-toast-prepend","computedDuration","computedToaster","transitionHandlers","_watch$k","ensureToaster","$_dismissTimer","clearDismissTimer","setHoverHandler","startDismissTimer","onPause","onUnPause","passed","onLinkClick","hiddenEvt","makeToast","$headerContent","isStatic","$toast","toastProps","toastContent","ToastPlugin","BVToastPlugin","BVToastPop","toast","BvToast","BV_TOOLTIP","noninteractiveRE","applyTooltip","VBTooltipPlugin","VBTooltip","removeTooltip","componentsPlugin","TooltipPlugin","VBHoverPlugin","VBModalPlugin","CLASS_NAME_ACTIVE","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN_ITEMS","ROOT_EVENT_NAME_ACTIVATE","METHOD_POSITION","Default","throttle","DefaultType","objectToString","BVScrollSpy","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","componentName","configTypes","expectedTypes","valueType","_isVue","typeCheckConfig","Name","self","scroller","getScroller","setObservers","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","maxScroll","getOffsetHeight","links","dropdown","setActiveState","sibling","previousElementSibling","BV_SCROLLSPY","onlyDigitsRE","applyScrollspy","BootstrapVue","directivesPlugin","VBScrollspyPlugin","VBScrollspy","dispose","removeScrollspy","VBVisiblePlugin"],"mappings":"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","sourcesContent":["var e=function(){return(e=Object.assign||function(e){for(var t,r=1,s=arguments.length;r {\n let checkMultipleVueWarned = false\n\n const MULTIPLE_VUE_WARNING = [\n 'Multiple instances of Vue detected!',\n 'You may need to set up an alias for Vue in your bundler config.',\n 'See: https://bootstrap-vue.org/docs#using-module-bundlers'\n ].join('\\n')\n\n return Vue => {\n /* istanbul ignore next */\n if (!checkMultipleVueWarned && OurVue !== Vue && !IS_JSDOM) {\n warn(MULTIPLE_VUE_WARNING)\n }\n checkMultipleVueWarned = true\n }\n})()\n\n/**\n * Plugin install factory function.\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactory = ({ components, directives, plugins } = {}) => {\n const install = (Vue, config = {}) => {\n if (install.installed) {\n /* istanbul ignore next */\n return\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\n return install\n}\n\n/**\n * Plugin install factory function (no plugin config option).\n * @param {object} { components, directives }\n * @returns {function} plugin install function\n */\nexport const installFactoryNoConfig = ({ components, directives, plugins } = {}) => {\n const install = Vue => {\n if (install.installed) {\n /* istanbul ignore next */\n return\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\n return install\n}\n\n/**\n * Plugin object factory function.\n * @param {object} { components, directives, plugins }\n * @returns {object} plugin install object\n */\nexport const pluginFactory = (options = {}, extend = {}) => ({\n ...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 */\nexport const pluginFactoryNoConfig = (options = {}, extend = {}) => ({\n ...extend,\n install: installFactoryNoConfig(options)\n})\n\n/**\n * Load a group of plugins.\n * @param {object} Vue\n * @param {object} Plugin definitions\n */\nexport const registerPlugins = (Vue, plugins = {}) => {\n for (const plugin in plugins) {\n if (plugin && plugins[plugin]) {\n Vue.use(plugins[plugin])\n }\n }\n}\n\n/**\n * Load a component.\n * @param {object} Vue\n * @param {string} Component name\n * @param {object} Component definition\n */\nexport const registerComponent = (Vue, name, def) => {\n if (Vue && name && def) {\n Vue.component(name, def)\n }\n}\n\n/**\n * Load a group of components.\n * @param {object} Vue\n * @param {object} Object of component definitions\n */\nexport const registerComponents = (Vue, components = {}) => {\n for (const component in components) {\n registerComponent(Vue, component, components[component])\n }\n}\n\n/**\n * Load a directive.\n * @param {object} Vue\n * @param {string} Directive name\n * @param {object} Directive definition\n */\nexport const 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/**\n * Load a group of directives.\n * @param {object} Vue\n * @param {object} Object of directive definitions\n */\nexport const registerDirectives = (Vue, directives = {}) => {\n for (const directive in directives) {\n registerDirective(Vue, directive, directives[directive])\n }\n}\n\n/**\n * Install plugin if window.Vue available\n * @param {object} Plugin definition\n */\nexport const vueUse = VuePlugin => {\n /* istanbul ignore next */\n if (HAS_WINDOW_SUPPORT && window.Vue) {\n window.Vue.use(VuePlugin)\n }\n /* istanbul ignore next */\n if (HAS_WINDOW_SUPPORT && VuePlugin.NAME) {\n window[VuePlugin.NAME] = VuePlugin\n }\n}\n","export const HAS_WINDOW_SUPPORT = typeof window !== 'undefined'\nexport const HAS_DOCUMENT_SUPPORT = typeof document !== 'undefined'\nexport const HAS_NAVIGATOR_SUPPORT = typeof navigator !== 'undefined'\nexport const HAS_PROMISE_SUPPORT = typeof Promise !== 'undefined'\n/* istanbul ignore next: JSDOM always returns false */\nexport const HAS_MUTATION_OBSERVER_SUPPORT =\n typeof MutationObserver !== 'undefined' ||\n typeof WebKitMutationObserver !== 'undefined' ||\n typeof MozMutationObserver !== 'undefined'\n\nexport const IS_BROWSER = HAS_WINDOW_SUPPORT && HAS_DOCUMENT_SUPPORT && HAS_NAVIGATOR_SUPPORT\n\nexport const WINDOW = HAS_WINDOW_SUPPORT ? window : {}\nexport const DOCUMENT = HAS_DOCUMENT_SUPPORT ? document : {}\nexport const NAVIGATOR = HAS_NAVIGATOR_SUPPORT ? navigator : {}\nexport const USER_AGENT = (NAVIGATOR.userAgent || '').toLowerCase()\n\nexport const IS_JSDOM = USER_AGENT.indexOf('jsdom') > 0\nexport const IS_IE = /msie|trident/.test(USER_AGENT)\n\n// Determine if the browser supports the option passive for events\nexport const HAS_PASSIVE_EVENT_SUPPORT = (() => {\n let passiveEventSupported = false\n if (IS_BROWSER) {\n try {\n const 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 WINDOW.addEventListener('test', options, options)\n WINDOW.removeEventListener('test', options, options)\n } catch {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = false\n }\n }\n return passiveEventSupported\n})()\n\nexport const HAS_TOUCH_SUPPORT =\n IS_BROWSER && ('ontouchstart' in DOCUMENT.documentElement || NAVIGATOR.maxTouchPoints > 0)\n\nexport const HAS_POINTER_EVENT_SUPPORT =\n IS_BROWSER && Boolean(WINDOW.PointerEvent || WINDOW.MSPointerEvent)\n\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\nexport const HAS_INTERACTION_OBSERVER_SUPPORT =\n IS_BROWSER &&\n 'IntersectionObserver' in WINDOW &&\n 'IntersectionObserverEntry' in WINDOW &&\n // 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","export const NAME = 'BvConfig'\nexport const PROP_NAME = '$bvConfig'\n\nexport const DEFAULT_BREAKPOINT = ['xs', 'sm', 'md', 'lg', 'xl']\n","// --- General ---\n\nexport const RX_ARRAY_NOTATION = /\\[(\\d+)]/g\nexport const RX_BV_PREFIX = /^(BV?)/\nexport const RX_DIGITS = /^\\d+$/\nexport const RX_EXTENSION = /^\\..+/\nexport const RX_HASH = /^#/\nexport const RX_HASH_ID = /^#[A-Za-z]+[\\w\\-:.]*$/\nexport const RX_HTML_TAGS = /(<([^>]+)>)/gi\nexport const RX_HYPHENATE = /\\B([A-Z])/g\nexport const RX_LOWER_UPPER = /([a-z])([A-Z])/g\nexport const RX_NUMBER = /^[0-9]*\\.?[0-9]+$/\nexport const RX_PLUS = /\\+/g\nexport const RX_REGEXP_REPLACE = /[-/\\\\^$*+?.()|[\\]{}]/g\nexport const RX_SPACES = /[\\s\\uFEFF\\xA0]+/g\nexport const RX_SPACE_SPLIT = /\\s+/\nexport const RX_STAR = /\\/\\*$/\nexport const RX_START_SPACE_WORD = /(\\s|^)(\\w)/g\nexport const RX_TRIM_LEFT = /^\\s+/\nexport const RX_TRIM_RIGHT = /\\s+$/\nexport const RX_UNDERSCORE = /_/g\nexport const RX_UN_KEBAB = /-(\\w)/g\n\n// --- Date ---\n\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'\nexport const RX_DATE = /^\\d+-\\d\\d?-\\d\\d?(?:\\s|T|$)/\n\n// Used to split off the date parts of the YYYY-MM-DD string\nexport const RX_DATE_SPLIT = /-|\\s|T/\n\n// Time string RegEx (optional seconds)\nexport const RX_TIME = /^([0-1]?[0-9]|2[0-3]):[0-5]?[0-9](:[0-5]?[0-9])?$/\n\n// --- URL ---\n\n// HREFs must end with a hash followed by at least one non-hash character\nexport const RX_HREF = /^.*(#[^#]+)$/\n\nexport const RX_ENCODED_COMMA = /%2C/g\nexport const RX_ENCODE_REVERSE = /[!'()*]/g\nexport const RX_QUERY_START = /^(\\?|#|&)/\n\n// --- Aspect ---\n\nexport const RX_ASPECT = /^\\d+(\\.\\d*)?[/:]\\d+(\\.\\d*)?$/\nexport const RX_ASPECT_SEPARATOR = /[/:]/\n\n// --- Grid ---\n\nexport const RX_COL_CLASS = /^col-/\n\n// --- Icon ---\n\nexport const RX_ICON_PREFIX = /^BIcon/\n\n// --- Locale ---\n\nexport const RX_STRIP_LOCALE_MODS = /-u-.+/\n","import { HAS_WINDOW_SUPPORT, WINDOW } from './env'\n\n/* istanbul ignore next */\nexport const Element = HAS_WINDOW_SUPPORT ? WINDOW.Element : class Element extends Object {}\n\n/* istanbul ignore next */\nexport const HTMLElement = HAS_WINDOW_SUPPORT\n ? WINDOW.HTMLElement\n : class HTMLElement extends Element {}\n\n/* istanbul ignore next */\nexport const SVGElement = HAS_WINDOW_SUPPORT\n ? WINDOW.SVGElement\n : class SVGElement extends Element {}\n\n/* istanbul ignore next */\nexport const File = HAS_WINDOW_SUPPORT ? WINDOW.File : class File extends Object {}\n","import { RX_NUMBER } from '../constants/regex'\nimport { File } from '../constants/safe-types'\n\n// --- Convenience inspection utilities ---\n\nexport const toType = value => typeof value\n\nexport const toRawType = value => Object.prototype.toString.call(value).slice(8, -1)\n\nexport const toRawTypeLC = value => toRawType(value).toLowerCase()\n\nexport const isUndefined = value => value === undefined\n\nexport const isNull = value => value === null\n\nexport const isEmptyString = value => value === ''\n\nexport const isUndefinedOrNull = value => isUndefined(value) || isNull(value)\n\nexport const isUndefinedOrNullOrEmpty = value => isUndefinedOrNull(value) || isEmptyString(value)\n\nexport const isFunction = value => toType(value) === 'function'\n\nexport const isBoolean = value => toType(value) === 'boolean'\n\nexport const isString = value => toType(value) === 'string'\n\nexport const isNumber = value => toType(value) === 'number'\n\nexport const isNumeric = value => RX_NUMBER.test(String(value))\n\nexport const isPrimitive = value => isBoolean(value) || isString(value) || isNumber(value)\n\nexport const isArray = value => Array.isArray(value)\n\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.\nexport const isObject = obj => obj !== null && typeof obj === 'object'\n\n// Strict object type check\n// Only returns true for plain JavaScript objects\nexport const isPlainObject = obj => Object.prototype.toString.call(obj) === '[object Object]'\n\nexport const isDate = value => value instanceof Date\n\nexport const isEvent = value => value instanceof Event\n\nexport const isFile = value => value instanceof File\n\nexport const isRegExp = value => toRawType(value) === 'RegExp'\n\nexport const isPromise = value =>\n !isUndefinedOrNull(value) && isFunction(value.then) && isFunction(value.catch)\n","import { isObject } from './inspect'\n\n// --- Static ---\n\nexport const assign = (...args) => Object.assign(...args)\nexport const create = (proto, optionalProps) => Object.create(proto, optionalProps)\nexport const defineProperties = (obj, props) => Object.defineProperties(obj, props)\nexport const defineProperty = (obj, prop, descriptor) =>\n Object.defineProperty(obj, prop, descriptor)\nexport const freeze = obj => Object.freeze(obj)\nexport const getOwnPropertyNames = obj => Object.getOwnPropertyNames(obj)\nexport const getOwnPropertyDescriptor = (obj, prop) => Object.getOwnPropertyDescriptor(obj, prop)\nexport const getOwnPropertySymbols = obj => Object.getOwnPropertySymbols(obj)\nexport const getPrototypeOf = obj => Object.getPrototypeOf(obj)\nexport const is = (value1, value2) => Object.is(value1, value2)\nexport const isFrozen = obj => Object.isFrozen(obj)\nexport const keys = obj => Object.keys(obj)\n\n// --- \"Instance\" ---\n\nexport const hasOwnProperty = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)\nexport const toString = obj => Object.prototype.toString.call(obj)\n\n// --- Utilities ---\n\n// Shallow copy an object\nexport const clone = obj => ({ ...obj })\n\n// Return a shallow copy of object with the specified properties only\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const pick = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) !== -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Return a shallow copy of object with the specified properties omitted\n// See: https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\nexport const omit = (obj, props) =>\n keys(obj)\n .filter(key => props.indexOf(key) === -1)\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Merges two object deeply together\n// See: https://gist.github.com/Salakar/1d7137de9cb8b704e48a\nexport const mergeDeep = (target, source) => {\n if (isObject(target) && isObject(source)) {\n keys(source).forEach(key => {\n if (isObject(source[key])) {\n if (!target[key] || !isObject(target[key])) {\n target[key] = source[key]\n }\n mergeDeep(target[key], source[key])\n } else {\n assign(target, { [key]: source[key] })\n }\n })\n }\n return target\n}\n\n// Returns a shallow copy of the object with keys in sorted order\nexport const sortKeys = obj =>\n keys(obj)\n .sort()\n .reduce((result, key) => ({ ...result, [key]: obj[key] }), {})\n\n// Convenience method to create a read-only descriptor\nexport const readonlyDescriptor = () => ({ enumerable: true, configurable: false, writable: false })\n","import { isArray, isPlainObject } from './inspect'\nimport { keys } from './object'\n\nexport const cloneDeep = (obj, defaultValue = obj) => {\n if (isArray(obj)) {\n return obj.reduce((result, val) => [...result, cloneDeep(val, val)], [])\n }\n if (isPlainObject(obj)) {\n return keys(obj).reduce(\n (result, key) => ({ ...result, [key]: cloneDeep(obj[key], obj[key]) }),\n {}\n )\n }\n return defaultValue\n}\n","export const identity = x => x\n","import { RX_ARRAY_NOTATION } from '../constants/regex'\nimport { identity } from './identity'\nimport { isArray, isNull, isObject, isUndefinedOrNull } from './inspect'\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 */\nexport const getRaw = (obj, path, defaultValue = undefined) => {\n // Handle array of path values\n path = isArray(path) ? path.join('.') : path\n\n // If no path or no object passed\n if (!path || !isObject(obj)) {\n return defaultValue\n }\n\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 if (path in obj) {\n return obj[path]\n }\n\n // Handle string array notation (numeric indices only)\n path = String(path).replace(RX_ARRAY_NOTATION, '.$1')\n\n const steps = path.split('.').filter(identity)\n\n // Handle case where someone passes a string of only dots\n if (steps.length === 0) {\n return defaultValue\n }\n\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 return steps.every(step => isObject(obj) && step in obj && !isUndefinedOrNull((obj = obj[step])))\n ? obj\n : isNull(obj)\n ? null\n : defaultValue\n}\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 */\nexport const get = (obj, path, defaultValue = null) => {\n const value = getRaw(obj, path)\n return isUndefinedOrNull(value) ? defaultValue : value\n}\n","/**\n * Utilities to get information about the current environment\n */\n\nexport const getEnv = (key, fallback = null) => {\n const env = typeof process !== 'undefined' && process ? process.env || {} : {}\n if (!key) {\n /* istanbul ignore next */\n return env\n }\n return env[key] || fallback\n}\n\nexport const getNoWarn = () =>\n getEnv('BOOTSTRAP_VUE_NO_WARN') || getEnv('NODE_ENV') === 'production'\n","import { IS_BROWSER, HAS_PROMISE_SUPPORT, HAS_MUTATION_OBSERVER_SUPPORT } from '../constants/env'\nimport { getNoWarn } from './env'\n\n/**\n * Log a warning message to the console with BootstrapVue formatting\n * @param {string} message\n */\nexport const warn = (message, source = null) => /* istanbul ignore next */ {\n if (!getNoWarn()) {\n console.warn(`[BootstrapVue warn]: ${source ? `${source} - ` : ''}${message}`)\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNotClient = source => {\n /* istanbul ignore else */\n if (IS_BROWSER) {\n return false\n } else {\n warn(`${source}: Can not be called during SSR.`)\n return true\n }\n}\n\n/**\n * Warn when no Promise support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoPromiseSupport = source => {\n /* istanbul ignore else */\n if (HAS_PROMISE_SUPPORT) {\n return false\n } else {\n warn(`${source}: Requires Promise support.`)\n return true\n }\n}\n\n/**\n * Warn when no MutationObserver support is given\n * @param {string} source\n * @returns {boolean} warned\n */\nexport const warnNoMutationObserverSupport = source => {\n /* istanbul ignore else */\n if (HAS_MUTATION_OBSERVER_SUPPORT) {\n return false\n } else {\n warn(`${source}: Requires MutationObserver support.`)\n return true\n }\n}\n","import { Vue as OurVue } from '../vue'\nimport { NAME, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { getRaw } from './get'\nimport { isArray, isPlainObject, isString, isUndefined } from './inspect'\nimport { getOwnPropertyNames } from './object'\nimport { warn } from './warn'\n\n// Config manager class\nclass BvConfig {\n constructor() {\n this.$_config = {}\n }\n\n // Method to merge in user config parameters\n setConfig(config = {}) {\n /* istanbul ignore next */\n if (!isPlainObject(config)) {\n return\n }\n const configKeys = getOwnPropertyNames(config)\n configKeys.forEach(key => {\n /* istanbul ignore next */\n const subConfig = config[key]\n if (key === 'breakpoints') {\n /* istanbul ignore if */\n if (\n !isArray(subConfig) ||\n subConfig.length < 2 ||\n subConfig.some(b => !isString(b) || b.length === 0)\n ) {\n warn('\"breakpoints\" must be an array of at least 2 breakpoint names', NAME)\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((config, prop) => {\n if (!isUndefined(subConfig[prop])) {\n config[prop] = cloneDeep(subConfig[prop])\n }\n return config\n }, this.$_config[key] || {})\n }\n })\n }\n\n // Clear the config\n resetConfig() {\n this.$_config = {}\n }\n\n // Returns a deep copy of the user config\n getConfig() {\n return cloneDeep(this.$_config)\n }\n\n // Returns a deep copy of the config value\n getConfigValue(key, defaultValue = undefined) {\n return cloneDeep(getRaw(this.$_config, key, defaultValue))\n }\n}\n\n// Method for applying a global config\nexport const setConfig = (config = {}, Vue = OurVue) => {\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.prototype[PROP_NAME] = OurVue.prototype[PROP_NAME] =\n Vue.prototype[PROP_NAME] || OurVue.prototype[PROP_NAME] || new BvConfig()\n // Apply the config values\n Vue.prototype[PROP_NAME].setConfig(config)\n}\n\n// Method for resetting the user config\n// Exported for testing purposes only\nexport const resetConfig = () => {\n if (OurVue.prototype[PROP_NAME] && OurVue.prototype[PROP_NAME].resetConfig) {\n OurVue.prototype[PROP_NAME].resetConfig()\n }\n}\n","// Component names\nexport const NAME_ALERT = 'BAlert'\nexport const NAME_ASPECT = 'BAspect'\nexport const NAME_AVATAR = 'BAvatar'\nexport const NAME_AVATAR_GROUP = 'BAvatarGroup'\nexport const NAME_BADGE = 'BBadge'\nexport const NAME_BREADCRUMB = 'BBreadcrumb'\nexport const NAME_BREADCRUMB_ITEM = 'BBreadcrumbItem'\nexport const NAME_BREADCRUMB_LINK = 'BBreadcrumbLink'\nexport const NAME_BUTTON = 'BButton'\nexport const NAME_BUTTON_CLOSE = 'BButtonClose'\nexport const NAME_BUTTON_GROUP = 'BButtonGroup'\nexport const NAME_BUTTON_TOOLBAR = 'BButtonToolbar'\nexport const NAME_CALENDAR = 'BCalendar'\nexport const NAME_CARD = 'BCard'\nexport const NAME_CARD_BODY = 'BCardBody'\nexport const NAME_CARD_FOOTER = 'BCardFooter'\nexport const NAME_CARD_GROUP = 'BCardGroup'\nexport const NAME_CARD_HEADER = 'BCardHeader'\nexport const NAME_CARD_IMG = 'BCardImg'\nexport const NAME_CARD_IMG_LAZY = 'BCardImgLazy'\nexport const NAME_CARD_SUB_TITLE = 'BCardSubTitle'\nexport const NAME_CARD_TEXT = 'BCardText'\nexport const NAME_CARD_TITLE = 'BCardTitle'\nexport const NAME_CAROUSEL = 'BCarousel'\nexport const NAME_CAROUSEL_SLIDE = 'BCarouselSlide'\nexport const NAME_COL = 'BCol'\nexport const NAME_COLLAPSE = 'BCollapse'\nexport const NAME_CONTAINER = 'BContainer'\nexport const NAME_DROPDOWN = 'BDropdown'\nexport const NAME_DROPDOWN_DIVIDER = 'BDropdownDivider'\nexport const NAME_DROPDOWN_FORM = 'BDropdownForm'\nexport const NAME_DROPDOWN_GROUP = 'BDropdownGroup'\nexport const NAME_DROPDOWN_HEADER = 'BDropdownHeader'\nexport const NAME_DROPDOWN_ITEM = 'BDropdownItem'\nexport const NAME_DROPDOWN_ITEM_BUTTON = 'BDropdownItemButton'\nexport const NAME_DROPDOWN_TEXT = 'BDropdownText'\nexport const NAME_EMBED = 'BEmbed'\nexport const NAME_FORM = 'BForm'\nexport const NAME_FORM_CHECKBOX = 'BFormCheckbox'\nexport const NAME_FORM_CHECKBOX_GROUP = 'BFormCheckboxGroup'\nexport const NAME_FORM_DATALIST = 'BFormDatalist'\nexport const NAME_FORM_DATEPICKER = 'BFormDatepicker'\nexport const NAME_FORM_FILE = 'BFormFile'\nexport const NAME_FORM_GROUP = 'BFormGroup'\nexport const NAME_FORM_INPUT = 'BFormInput'\nexport const NAME_FORM_INVALID_FEEDBACK = 'BFormInvalidFeedback'\nexport const NAME_FORM_RADIO = 'BFormRadio'\nexport const NAME_FORM_RADIO_GROUP = 'BFormRadioGroup'\nexport const NAME_FORM_RATING = 'BFormRating'\nexport const NAME_FORM_ROW = 'BFormRow'\nexport const NAME_FORM_SELECT = 'BFormSelect'\nexport const NAME_FORM_SELECT_OPTION = 'BFormSelectOption'\nexport const NAME_FORM_SELECT_OPTION_GROUP = 'BFormSelectOptionGroup'\nexport const NAME_FORM_SPINBUTTON = 'BFormSpinbutton'\nexport const NAME_FORM_TAG = 'BFormTag'\nexport const NAME_FORM_TAGS = 'BFormTags'\nexport const NAME_FORM_TEXT = 'BFormText'\nexport const NAME_FORM_TEXTAREA = 'BFormTextarea'\nexport const NAME_FORM_TIMEPICKER = 'BFormTimepicker'\nexport const NAME_FORM_VALID_FEEDBACK = 'BFormValidFeedback'\nexport const NAME_ICON = 'BIcon'\nexport const NAME_ICONSTACK = 'BIconstack'\nexport const NAME_ICON_BASE = 'BIconBase'\nexport const NAME_IMG = 'BImg'\nexport const NAME_IMG_LAZY = 'BImgLazy'\nexport const NAME_INPUT_GROUP = 'BInputGroup'\nexport const NAME_INPUT_GROUP_ADDON = 'BInputGroupAddon'\nexport const NAME_INPUT_GROUP_APPEND = 'BInputGroupAppend'\nexport const NAME_INPUT_GROUP_PREPEND = 'BInputGroupPrepend'\nexport const NAME_INPUT_GROUP_TEXT = 'BInputGroupText'\nexport const NAME_JUMBOTRON = 'BJumbotron'\nexport const NAME_LINK = 'BLink'\nexport const NAME_LIST_GROUP = 'BListGroup'\nexport const NAME_LIST_GROUP_ITEM = 'BListGroupItem'\nexport const NAME_MEDIA = 'BMedia'\nexport const NAME_MEDIA_ASIDE = 'BMediaAside'\nexport const NAME_MEDIA_BODY = 'BMediaBody'\nexport const NAME_MODAL = 'BModal'\nexport const NAME_MSG_BOX = 'BMsgBox'\nexport const NAME_NAV = 'BNav'\nexport const NAME_NAVBAR = 'BNavbar'\nexport const NAME_NAVBAR_BRAND = 'BNavbarBrand'\nexport const NAME_NAVBAR_NAV = 'BNavbarNav'\nexport const NAME_NAVBAR_TOGGLE = 'BNavbarToggle'\nexport const NAME_NAV_FORM = 'BNavForm'\nexport const NAME_NAV_ITEM = 'BNavItem'\nexport const NAME_NAV_ITEM_DROPDOWN = 'BNavItemDropdown'\nexport const NAME_NAV_TEXT = 'BNavText'\nexport const NAME_OVERLAY = 'BOverlay'\nexport const NAME_PAGINATION = 'BPagination'\nexport const NAME_PAGINATION_NAV = 'BPaginationNav'\nexport const NAME_POPOVER = 'BPopover'\nexport const NAME_PROGRESS = 'BProgress'\nexport const NAME_PROGRESS_BAR = 'BProgressBar'\nexport const NAME_ROW = 'BRow'\nexport const NAME_SIDEBAR = 'BSidebar'\nexport const NAME_SKELETON = 'BSkeleton'\nexport const NAME_SKELETON_ICON = 'BSkeletonIcon'\nexport const NAME_SKELETON_IMG = 'BSkeletonImg'\nexport const NAME_SKELETON_TABLE = 'BSkeletonTable'\nexport const NAME_SKELETON_WRAPPER = 'BSkeletonWrapper'\nexport const NAME_SPINNER = 'BSpinner'\nexport const NAME_TAB = 'BTab'\nexport const NAME_TABLE = 'BTable'\nexport const NAME_TABLE_CELL = 'BTableCell'\nexport const NAME_TABLE_LITE = 'BTableLite'\nexport const NAME_TABLE_SIMPLE = 'BTableSimple'\nexport const NAME_TABS = 'BTabs'\nexport const NAME_TBODY = 'BTbody'\nexport const NAME_TFOOT = 'BTfoot'\nexport const NAME_TH = 'BTh'\nexport const NAME_THEAD = 'BThead'\nexport const NAME_TIME = 'BTime'\nexport const NAME_TOAST = 'BToast'\nexport const NAME_TOASTER = 'BToaster'\nexport const NAME_TOOLTIP = 'BTooltip'\nexport const NAME_TR = 'BTr'\n\n// Helper component names\nexport const NAME_COLLAPSE_HELPER = 'BVCollapse'\nexport const NAME_FORM_BUTTON_LABEL_CONTROL = 'BVFormBtnLabelControl'\nexport const NAME_FORM_RATING_STAR = 'BVFormRatingStar'\nexport const NAME_POPOVER_HELPER = 'BVPopover'\nexport const NAME_POPOVER_TEMPLATE = 'BVPopoverTemplate'\nexport const NAME_POPPER = 'BVPopper'\nexport const NAME_TAB_BUTTON_HELPER = 'BVTabButton'\nexport const NAME_TOAST_POP = 'BVToastPop'\nexport const NAME_TOOLTIP_HELPER = 'BVTooltip'\nexport const NAME_TOOLTIP_TEMPLATE = 'BVTooltipTemplate'\nexport const NAME_TRANSITION = 'BVTransition'\nexport const NAME_TRANSPORTER = 'BVTransporter'\nexport const NAME_TRANSPORTER_TARGET = 'BVTransporterTarget'\n","export const EVENT_NAME_ACTIVATE_TAB = 'activate-tab'\nexport const EVENT_NAME_BLUR = 'blur'\nexport const EVENT_NAME_CANCEL = 'cancel'\nexport const EVENT_NAME_CHANGE = 'change'\nexport const EVENT_NAME_CHANGED = 'changed'\nexport const EVENT_NAME_CLICK = 'click'\nexport const EVENT_NAME_CLOSE = 'close'\nexport const EVENT_NAME_CONTEXT = 'context'\nexport const EVENT_NAME_CONTEXT_CHANGED = 'context-changed'\nexport const EVENT_NAME_DESTROYED = 'destroyed'\nexport const EVENT_NAME_DISABLE = 'disable'\nexport const EVENT_NAME_DISABLED = 'disabled'\nexport const EVENT_NAME_DISMISSED = 'dismissed'\nexport const EVENT_NAME_DISMISS_COUNT_DOWN = 'dismiss-count-down'\nexport const EVENT_NAME_ENABLE = 'enable'\nexport const EVENT_NAME_ENABLED = 'enabled'\nexport const EVENT_NAME_FILTERED = 'filtered'\nexport const EVENT_NAME_FIRST = 'first'\nexport const EVENT_NAME_FOCUSIN = 'focusin'\nexport const EVENT_NAME_FOCUSOUT = 'focusout'\nexport const EVENT_NAME_HEAD_CLICKED = 'head-clicked'\nexport const EVENT_NAME_HIDDEN = 'hidden'\nexport const EVENT_NAME_HIDE = 'hide'\nexport const EVENT_NAME_IMG_ERROR = 'img-error'\nexport const EVENT_NAME_INPUT = 'input'\nexport const EVENT_NAME_LAST = 'last'\nexport const EVENT_NAME_MOUSEENTER = 'mouseenter'\nexport const EVENT_NAME_MOUSELEAVE = 'mouseleave'\nexport const EVENT_NAME_NEXT = 'next'\nexport const EVENT_NAME_OK = 'ok'\nexport const EVENT_NAME_OPEN = 'open'\nexport const EVENT_NAME_PAGE_CLICK = 'page-click'\nexport const EVENT_NAME_PAUSED = 'paused'\nexport const EVENT_NAME_PREV = 'prev'\nexport const EVENT_NAME_REFRESH = 'refresh'\nexport const EVENT_NAME_REFRESHED = 'refreshed'\nexport const EVENT_NAME_REMOVE = 'remove'\nexport const EVENT_NAME_ROW_CLICKED = 'row-clicked'\nexport const EVENT_NAME_ROW_CONTEXTMENU = 'row-contextmenu'\nexport const EVENT_NAME_ROW_DBLCLICKED = 'row-dblclicked'\nexport const EVENT_NAME_ROW_HOVERED = 'row-hovered'\nexport const EVENT_NAME_ROW_MIDDLE_CLICKED = 'row-middle-clicked'\nexport const EVENT_NAME_ROW_SELECTED = 'row-selected'\nexport const EVENT_NAME_ROW_UNHOVERED = 'row-unhovered'\nexport const EVENT_NAME_SELECTED = 'selected'\nexport const EVENT_NAME_SHOW = 'show'\nexport const EVENT_NAME_SHOWN = 'shown'\nexport const EVENT_NAME_SLIDING_END = 'sliding-end'\nexport const EVENT_NAME_SLIDING_START = 'sliding-start'\nexport const EVENT_NAME_SORT_CHANGED = 'sort-changed'\nexport const EVENT_NAME_TAG_STATE = 'tag-state'\nexport const EVENT_NAME_TOGGLE = 'toggle'\nexport const EVENT_NAME_UNPAUSED = 'unpaused'\nexport const EVENT_NAME_UPDATE = 'update'\n\nexport const HOOK_EVENT_NAME_BEFORE_DESTROY = 'hook:beforeDestroy'\nexport const HOOK_EVENT_NAME_DESTROYED = 'hook:destroyed'\n\nexport const MODEL_EVENT_NAME_PREFIX = 'update:'\n\nexport const ROOT_EVENT_NAME_PREFIX = 'bv'\nexport const ROOT_EVENT_NAME_SEPARATOR = '::'\n\nexport const EVENT_OPTIONS_PASSIVE = { passive: true }\nexport const EVENT_OPTIONS_NO_CAPTURE = { passive: true, capture: false }\n","// General types\nexport const PROP_TYPE_ANY = undefined\nexport const PROP_TYPE_ARRAY = Array\nexport const PROP_TYPE_BOOLEAN = Boolean\nexport const PROP_TYPE_DATE = Date\nexport const PROP_TYPE_FUNCTION = Function\nexport const PROP_TYPE_NUMBER = Number\nexport const PROP_TYPE_OBJECT = Object\nexport const PROP_TYPE_REG_EXP = RegExp\nexport const PROP_TYPE_STRING = String\n\n// Multiple types\nexport const PROP_TYPE_ARRAY_FUNCTION = [PROP_TYPE_ARRAY, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_ARRAY_OBJECT = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT]\nexport const PROP_TYPE_ARRAY_OBJECT_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_ARRAY_STRING = [PROP_TYPE_ARRAY, PROP_TYPE_STRING]\nexport const PROP_TYPE_BOOLEAN_NUMBER = [PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER]\nexport const PROP_TYPE_BOOLEAN_NUMBER_STRING = [\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_STRING\n]\nexport const PROP_TYPE_BOOLEAN_STRING = [PROP_TYPE_BOOLEAN, PROP_TYPE_STRING]\nexport const PROP_TYPE_DATE_STRING = [PROP_TYPE_DATE, PROP_TYPE_STRING]\nexport const PROP_TYPE_FUNCTION_STRING = [PROP_TYPE_FUNCTION, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_STRING]\nexport const PROP_TYPE_NUMBER_OBJECT_STRING = [PROP_TYPE_NUMBER, PROP_TYPE_OBJECT, PROP_TYPE_STRING]\nexport const PROP_TYPE_OBJECT_FUNCTION = [PROP_TYPE_OBJECT, PROP_TYPE_FUNCTION]\nexport const PROP_TYPE_OBJECT_STRING = [PROP_TYPE_OBJECT, PROP_TYPE_STRING]\n","export const SLOT_NAME_ADD_BUTTON_TEXT = 'add-button-text'\nexport const SLOT_NAME_APPEND = 'append'\nexport const SLOT_NAME_ASIDE = 'aside'\nexport const SLOT_NAME_BADGE = 'badge'\nexport const SLOT_NAME_BOTTOM_ROW = 'bottom-row'\nexport const SLOT_NAME_BUTTON_CONTENT = 'button-content'\nexport const SLOT_NAME_CUSTOM_FOOT = 'custom-foot'\nexport const SLOT_NAME_DECREMENT = 'decrement'\nexport const SLOT_NAME_DEFAULT = 'default'\nexport const SLOT_NAME_DESCRIPTION = 'description'\nexport const SLOT_NAME_DISMISS = 'dismiss'\nexport const SLOT_NAME_DROP_PLACEHOLDER = 'drop-placeholder'\nexport const SLOT_NAME_ELLIPSIS_TEXT = 'ellipsis-text'\nexport const SLOT_NAME_EMPTY = 'empty'\nexport const SLOT_NAME_EMPTYFILTERED = 'emptyfiltered'\nexport const SLOT_NAME_FILE_NAME = 'file-name'\nexport const SLOT_NAME_FIRST = 'first'\nexport const SLOT_NAME_FIRST_TEXT = 'first-text'\nexport const SLOT_NAME_FOOTER = 'footer'\nexport const SLOT_NAME_HEADER = 'header'\nexport const SLOT_NAME_HEADER_CLOSE = 'header-close'\nexport const SLOT_NAME_ICON_CLEAR = 'icon-clear'\nexport const SLOT_NAME_ICON_EMPTY = 'icon-empty'\nexport const SLOT_NAME_ICON_FULL = 'icon-full'\nexport const SLOT_NAME_ICON_HALF = 'icon-half'\nexport const SLOT_NAME_IMG = 'img'\nexport const SLOT_NAME_INCREMENT = 'increment'\nexport const SLOT_NAME_INVALID_FEEDBACK = 'invalid-feedback'\nexport const SLOT_NAME_LABEL = 'label'\nexport const SLOT_NAME_LAST_TEXT = 'last-text'\nexport const SLOT_NAME_LEAD = 'lead'\nexport const SLOT_NAME_LOADING = 'loading'\nexport const SLOT_NAME_MODAL_BACKDROP = 'modal-backdrop'\nexport const SLOT_NAME_MODAL_CANCEL = 'modal-cancel'\nexport const SLOT_NAME_MODAL_FOOTER = 'modal-footer'\nexport const SLOT_NAME_MODAL_HEADER = 'modal-header'\nexport const SLOT_NAME_MODAL_HEADER_CLOSE = 'modal-header-close'\nexport const SLOT_NAME_MODAL_OK = 'modal-ok'\nexport const SLOT_NAME_MODAL_TITLE = 'modal-title'\nexport const SLOT_NAME_NAV_NEXT_DECADE = 'nav-next-decade'\nexport const SLOT_NAME_NAV_NEXT_MONTH = 'nav-next-month'\nexport const SLOT_NAME_NAV_NEXT_YEAR = 'nav-next-year'\nexport const SLOT_NAME_NAV_PEV_DECADE = 'nav-prev-decade'\nexport const SLOT_NAME_NAV_PEV_MONTH = 'nav-prev-month'\nexport const SLOT_NAME_NAV_PEV_YEAR = 'nav-prev-year'\nexport const SLOT_NAME_NAV_THIS_MONTH = 'nav-this-month'\nexport const SLOT_NAME_NEXT_TEXT = 'next-text'\nexport const SLOT_NAME_OVERLAY = 'overlay'\nexport const SLOT_NAME_PAGE = 'page'\nexport const SLOT_NAME_PLACEHOLDER = 'placeholder'\nexport const SLOT_NAME_PREPEND = 'prepend'\nexport const SLOT_NAME_PREV_TEXT = 'prev-text'\nexport const SLOT_NAME_ROW_DETAILS = 'row-details'\nexport const SLOT_NAME_TABLE_BUSY = 'table-busy'\nexport const SLOT_NAME_TABLE_CAPTION = 'table-caption'\nexport const SLOT_NAME_TABLE_COLGROUP = 'table-colgroup'\nexport const SLOT_NAME_TABS_END = 'tabs-end'\nexport const SLOT_NAME_TABS_START = 'tabs-start'\nexport const SLOT_NAME_TEXT = 'text'\nexport const SLOT_NAME_THEAD_TOP = 'thead-top'\nexport const SLOT_NAME_TITLE = 'title'\nexport const SLOT_NAME_TOAST_TITLE = 'toast-title'\nexport const SLOT_NAME_TOP_ROW = 'top-row'\nexport const SLOT_NAME_VALID_FEEDBACK = 'valid-feedback'\n","import { isFunction } from './inspect'\n\n// --- Static ---\n\nexport const from = (...args) => Array.from(...args)\n\n// --- Instance ---\n\nexport const arrayIncludes = (array, value) => array.indexOf(value) !== -1\nexport const concat = (...args) => Array.prototype.concat.apply([], args)\n\n// --- Utilities ---\n\nexport const createArray = (length, fillFn) => {\n const mapFn = isFunction(fillFn) ? fillFn : () => fillFn\n return Array.apply(null, { length }).map(mapFn)\n}\n\nexport const flatten = array => array.reduce((result, item) => concat(result, item), [])\n\nexport const flattenDeep = array =>\n array.reduce((result, item) => concat(result, Array.isArray(item) ? flattenDeep(item) : item), [])\n","// Number utilities\n\n// Converts a value (string, number, etc.) to an integer number\n// Assumes radix base 10\nexport const toInteger = (value, defaultValue = NaN) => {\n const integer = parseInt(value, 10)\n return isNaN(integer) ? defaultValue : integer\n}\n\n// Converts a value (string, number, etc.) to a number\nexport const toFloat = (value, defaultValue = NaN) => {\n const float = parseFloat(value)\n return isNaN(float) ? defaultValue : float\n}\n\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\nexport const toFixed = (val, precision) => toFloat(val).toFixed(toInteger(precision, 0))\n","// String utilities\nimport {\n RX_HYPHENATE,\n RX_LOWER_UPPER,\n RX_REGEXP_REPLACE,\n RX_START_SPACE_WORD,\n RX_TRIM_LEFT,\n RX_TRIM_RIGHT,\n RX_UNDERSCORE,\n RX_UN_KEBAB\n} from '../constants/regex'\nimport { isArray, isPlainObject, isString, isUndefinedOrNull } from './inspect'\n\n// --- Utilities ---\n\n// Converts PascalCase or camelCase to kebab-case\nexport const kebabCase = str => {\n return str.replace(RX_HYPHENATE, '-$1').toLowerCase()\n}\n\n// Converts a kebab-case or camelCase string to PascalCase\nexport const pascalCase = str => {\n str = kebabCase(str).replace(RX_UN_KEBAB, (_, c) => (c ? c.toUpperCase() : ''))\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\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\nexport const startCase = str =>\n str\n .replace(RX_UNDERSCORE, ' ')\n .replace(RX_LOWER_UPPER, (str, $1, $2) => $1 + ' ' + $2)\n .replace(RX_START_SPACE_WORD, (str, $1, $2) => $1 + $2.toUpperCase())\n\n// Lowercases the first letter of a string and returns a new string\nexport const lowerFirst = str => {\n str = isString(str) ? str.trim() : String(str)\n return str.charAt(0).toLowerCase() + str.slice(1)\n}\n\n// Uppercases the first letter of a string and returns a new string\nexport const upperFirst = str => {\n str = isString(str) ? str.trim() : String(str)\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\n// Escape characters to be used in building a regular expression\nexport const escapeRegExp = str => str.replace(RX_REGEXP_REPLACE, '\\\\$&')\n\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\nexport const toString = (val, spaces = 2) => {\n return isUndefinedOrNull(val)\n ? ''\n : isArray(val) || (isPlainObject(val) && val.toString === Object.prototype.toString)\n ? JSON.stringify(val, null, spaces)\n : String(val)\n}\n\n// Remove leading white space from a string\nexport const trimLeft = str => toString(str).replace(RX_TRIM_LEFT, '')\n\n// Remove Trailing white space from a string\nexport const trimRight = str => toString(str).replace(RX_TRIM_RIGHT, '')\n\n// Remove leading and trailing white space from a string\nexport const trim = str => toString(str).trim()\n\n// Lower case a string\nexport const lowerCase = str => toString(str).toLowerCase()\n\n// Upper case a string\nexport const upperCase = str => toString(str).toUpperCase()\n","import { DOCUMENT, WINDOW } from '../constants/env'\nimport { Element } from '../constants/safe-types'\nimport { from as arrayFrom } from './array'\nimport { isFunction, isNull } from './inspect'\nimport { toFloat } from './number'\nimport { toString } from './string'\n\n// --- Constants ---\n\nconst ELEMENT_PROTO = Element.prototype\n\nconst TABABLE_SELECTOR = [\n 'button',\n '[href]:not(.disabled)',\n 'input',\n 'select',\n 'textarea',\n '[tabindex]',\n '[contenteditable]'\n]\n .map(s => `${s}:not(:disabled):not([disabled])`)\n .join(', ')\n\n// --- Normalization utils ---\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n/* istanbul ignore next */\nexport const matchesEl =\n ELEMENT_PROTO.matches || ELEMENT_PROTO.msMatchesSelector || ELEMENT_PROTO.webkitMatchesSelector\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n/* istanbul ignore next */\nexport const closestEl =\n ELEMENT_PROTO.closest ||\n function(sel) {\n let el = this\n do {\n // Use our \"patched\" matches function\n if (matches(el, sel)) {\n return el\n }\n el = el.parentElement || el.parentNode\n } while (!isNull(el) && el.nodeType === Node.ELEMENT_NODE)\n return null\n }\n\n// `requestAnimationFrame()` convenience method\n/* istanbul ignore next: JSDOM always returns the first option */\nexport const requestAF =\n WINDOW.requestAnimationFrame ||\n WINDOW.webkitRequestAnimationFrame ||\n WINDOW.mozRequestAnimationFrame ||\n WINDOW.msRequestAnimationFrame ||\n WINDOW.oRequestAnimationFrame ||\n // Fallback, but not a true polyfill\n // Only needed for Opera Mini\n /* istanbul ignore next */\n (cb => setTimeout(cb, 16))\n\nexport const MutationObs =\n WINDOW.MutationObserver || WINDOW.WebKitMutationObserver || WINDOW.MozMutationObserver || null\n\n// --- Utils ---\n\n// Remove a node from DOM\nexport const removeNode = el => el && el.parentNode && el.parentNode.removeChild(el)\n\n// Determine if an element is an HTML element\nexport const isElement = el => !!(el && el.nodeType === Node.ELEMENT_NODE)\n\n// Get the currently active HTML element\nexport const getActiveElement = (excludes = []) => {\n const { activeElement } = DOCUMENT\n return activeElement && !excludes.some(el => el === activeElement) ? activeElement : null\n}\n\n// Returns `true` if a tag's name equals `name`\nexport const isTag = (tag, name) => toString(tag).toLowerCase() === toString(name).toLowerCase()\n\n// Determine if an HTML element is the currently active element\nexport const isActiveElement = el => isElement(el) && el === getActiveElement()\n\n// Determine if an HTML element is visible - Faster than CSS check\nexport const 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 if (getStyle(el, 'display') === 'none') {\n // We do this check to help with vue-test-utils when using v-show\n /* istanbul ignore next */\n return false\n }\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 const bcr = getBCR(el)\n return !!(bcr && bcr.height > 0 && bcr.width > 0)\n}\n\n// Determine if an element is disabled\nexport const isDisabled = el =>\n !isElement(el) || el.disabled || hasAttr(el, 'disabled') || hasClass(el, 'disabled')\n\n// Cause/wait-for an element to reflow its content (adjusting its height/width)\nexport const reflow = el => {\n // Requesting an elements offsetHight will trigger a reflow of the element content\n /* istanbul ignore next: reflow doesn't happen in JSDOM */\n return isElement(el) && el.offsetHeight\n}\n\n// Select all elements matching selector. Returns `[]` if none found\nexport const selectAll = (selector, root) =>\n arrayFrom((isElement(root) ? root : DOCUMENT).querySelectorAll(selector))\n\n// Select a single element, returns `null` if not found\nexport const select = (selector, root) =>\n (isElement(root) ? root : DOCUMENT).querySelector(selector) || null\n\n// Determine if an element matches a selector\nexport const matches = (el, selector) => (isElement(el) ? matchesEl.call(el, selector) : false)\n\n// Finds closest element matching selector. Returns `null` if not found\nexport const closest = (selector, root, includeRoot = false) => {\n if (!isElement(root)) {\n return null\n }\n const el = closestEl.call(root, selector)\n\n // 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 return includeRoot ? el : el === root ? null : el\n}\n\n// Returns true if the parent element contains the child element\nexport const contains = (parent, child) =>\n parent && isFunction(parent.contains) ? parent.contains(child) : false\n\n// Get an element given an ID\nexport const getById = id => DOCUMENT.getElementById(/^#/.test(id) ? id.slice(1) : id) || null\n\n// Add a class to an element\nexport const 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}\n\n// Remove a class from an element\nexport const 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}\n\n// Test if an element has a class\nexport const 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 return false\n}\n\n// Set an attribute on an element\nexport const setAttr = (el, attr, value) => {\n if (attr && isElement(el)) {\n el.setAttribute(attr, value)\n }\n}\n\n// Remove an attribute from an element\nexport const removeAttr = (el, attr) => {\n if (attr && isElement(el)) {\n el.removeAttribute(attr)\n }\n}\n\n// Get an attribute value from an element\n// Returns `null` if not found\nexport const getAttr = (el, attr) => (attr && isElement(el) ? el.getAttribute(attr) : null)\n\n// Determine if an attribute exists on an element\n// Returns `true` or `false`, or `null` if element not found\nexport const hasAttr = (el, attr) => (attr && isElement(el) ? el.hasAttribute(attr) : null)\n\n// Set an style property on an element\nexport const setStyle = (el, prop, value) => {\n if (prop && isElement(el)) {\n el.style[prop] = value\n }\n}\n\n// Remove an style property from an element\nexport const removeStyle = (el, prop) => {\n if (prop && isElement(el)) {\n el.style[prop] = ''\n }\n}\n\n// Get an style property value from an element\n// Returns `null` if not found\nexport const getStyle = (el, prop) => (prop && isElement(el) ? el.style[prop] || null : null)\n\n// Return the Bounding Client Rect of an element\n// Returns `null` if not an element\n/* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */\nexport const getBCR = el => (isElement(el) ? el.getBoundingClientRect() : null)\n\n// Get computed style object for an element\n/* istanbul ignore next: getComputedStyle() doesn't work in JSDOM */\nexport const getCS = el => {\n const { getComputedStyle } = WINDOW\n return getComputedStyle && isElement(el) ? getComputedStyle(el) : {}\n}\n\n// Returns a `Selection` object representing the range of text selected\n// Returns `null` if no window support is given\n/* istanbul ignore next: getSelection() doesn't work in JSDOM */\nexport const getSel = () => {\n const { getSelection } = WINDOW\n return getSelection ? WINDOW.getSelection() : null\n}\n\n// Return an element's offset with respect to document element\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.offset\nexport const offset = el => /* istanbul ignore next: getBoundingClientRect(), getClientRects() doesn't work in JSDOM */ {\n const _offset = { top: 0, left: 0 }\n if (!isElement(el) || el.getClientRects().length === 0) {\n return _offset\n }\n const bcr = getBCR(el)\n if (bcr) {\n const win = el.ownerDocument.defaultView\n _offset.top = bcr.top + win.pageYOffset\n _offset.left = bcr.left + win.pageXOffset\n }\n return _offset\n}\n\n// Return an element's offset with respect to to its offsetParent\n// https://j11y.io/jquery/#v=git&fn=jQuery.fn.position\nexport const position = el => /* istanbul ignore next: getBoundingClientRect() doesn't work in JSDOM */ {\n let _offset = { top: 0, left: 0 }\n if (!isElement(el)) {\n return _offset\n }\n let parentOffset = { top: 0, left: 0 }\n const elStyles = getCS(el)\n if (elStyles.position === 'fixed') {\n _offset = getBCR(el) || _offset\n } else {\n _offset = offset(el)\n const doc = el.ownerDocument\n let offsetParent = el.offsetParent || doc.documentElement\n while (\n offsetParent &&\n (offsetParent === doc.body || offsetParent === doc.documentElement) &&\n getCS(offsetParent).position === 'static'\n ) {\n offsetParent = offsetParent.parentNode\n }\n if (offsetParent && offsetParent !== el && offsetParent.nodeType === Node.ELEMENT_NODE) {\n parentOffset = offset(offsetParent)\n const offsetParentStyles = getCS(offsetParent)\n parentOffset.top += toFloat(offsetParentStyles.borderTopWidth, 0)\n parentOffset.left += toFloat(offsetParentStyles.borderLeftWidth, 0)\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}\n\n// Find all tabable elements in the given element\n// Assumes users have not used `tabindex` > `0` on elements\nexport const getTabables = (rootEl = document) =>\n selectAll(TABABLE_SELECTOR, rootEl)\n .filter(isVisible)\n .filter(el => el.tabIndex > -1 && !el.disabled)\n\n// Attempt to focus an element, and return `true` if successful\nexport const attemptFocus = (el, options = {}) => {\n try {\n el.focus(options)\n } catch {}\n return isActiveElement(el)\n}\n\n// Attempt to blur an element, and return `true` if successful\nexport const attemptBlur = el => {\n try {\n el.blur()\n } catch {}\n return !isActiveElement(el)\n}\n","import { create } from './object'\n\nexport const memoize = fn => {\n const cache = create(null)\n\n return (...args) => {\n const argsKey = JSON.stringify(args)\n return (cache[argsKey] = cache[argsKey] || fn.apply(null, args))\n }\n}\n","import { Vue } from '../vue'\nimport { DEFAULT_BREAKPOINT, PROP_NAME } from '../constants/config'\nimport { cloneDeep } from './clone-deep'\nimport { memoize } from './memoize'\n\n// --- Constants ---\n\nconst VueProto = Vue.prototype\n\n// --- Getter methods ---\n// All methods return a deep clone (immutable) copy of the config value,\n// to prevent mutation of the user config object\n\n// Get the current config\nexport const getConfig = () => {\n const bvConfig = VueProto[PROP_NAME]\n return bvConfig ? bvConfig.getConfig() : {}\n}\n\n// Method to grab a config value based on a dotted/array notation key\nexport const getConfigValue = (key, defaultValue = undefined) => {\n const bvConfig = VueProto[PROP_NAME]\n return bvConfig ? bvConfig.getConfigValue(key, defaultValue) : cloneDeep(defaultValue)\n}\n\n// Method to grab a config value for a particular component\nexport const getComponentConfig = (key, propKey = null, defaultValue = 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(`${key}.${propKey}`, defaultValue) : getConfigValue(key, {})\n}\n\n// Get all breakpoint names\nexport const getBreakpoints = () => getConfigValue('breakpoints', DEFAULT_BREAKPOINT)\n\n// Private method for caching breakpoint names\nconst _getBreakpointsCached = memoize(() => getBreakpoints())\n\n// Get all breakpoint names (cached)\nexport const getBreakpointsCached = () => cloneDeep(_getBreakpointsCached())\n\n// Get breakpoints with the smallest breakpoint set as ''\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUp = () => {\n const breakpoints = getBreakpoints()\n breakpoints[0] = ''\n return breakpoints\n}\n\n// Get breakpoints with the smallest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\nexport const getBreakpointsUpCached = memoize(() => {\n const breakpoints = getBreakpointsCached()\n breakpoints[0] = ''\n return breakpoints\n})\n\n// Get breakpoints with the largest breakpoint set as ''\nexport const getBreakpointsDown = () => {\n const breakpoints = getBreakpoints()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\n\n// Get breakpoints with the largest breakpoint set as '' (cached)\n// Useful for components that create breakpoint specific props\n/* istanbul ignore next: we don't use this method anywhere, yet */\nexport const getBreakpointsDownCached = () => {\n const breakpoints = getBreakpointsCached()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\n","import { PROP_TYPE_ANY } from '../constants/props'\nimport { cloneDeep } from './clone-deep'\nimport { getComponentConfig } from './config'\nimport { identity } from './identity'\nimport { isArray, isFunction, isObject, isUndefined } from './inspect'\nimport { clone, hasOwnProperty, keys } from './object'\nimport { lowerFirst, upperFirst } from './string'\n\n// Prefix a property\nexport const prefixPropName = (prefix, value) => prefix + upperFirst(value)\n\n// Remove a prefix from a property\nexport const unprefixPropName = (prefix, value) => lowerFirst(value.replace(prefix, ''))\n\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\nexport const suffixPropName = (suffix, value) => value + (suffix ? upperFirst(suffix) : '')\n\n// Generates a prop object\nexport const makeProp = (\n type = PROP_TYPE_ANY,\n value = undefined,\n requiredOrValidator = undefined,\n validator = undefined\n) => {\n const required = requiredOrValidator === true\n validator = required ? validator : requiredOrValidator\n\n return {\n ...(type ? { type } : {}),\n ...(required\n ? { required }\n : isUndefined(value)\n ? {}\n : { default: isObject(value) ? () => value : value }),\n ...(isUndefined(validator) ? {} : { validator })\n }\n}\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\nexport const copyProps = (props, transformFn = identity) => {\n if (isArray(props)) {\n return props.map(transformFn)\n }\n const copied = {}\n for (const 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 return copied\n}\n\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\nexport const pluckProps = (keysToPluck, objToPluck, transformFn = identity) =>\n (isArray(keysToPluck) ? keysToPluck.slice() : keys(keysToPluck)).reduce((memo, prop) => {\n memo[transformFn(prop)] = objToPluck[prop]\n return memo\n }, {})\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\nexport const makePropConfigurable = (prop, key, componentKey) => ({\n ...cloneDeep(prop),\n default: function bvConfigurablePropDefault() {\n const value = getComponentConfig(componentKey, key, prop.default)\n return isFunction(value) ? value() : value\n }\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\nexport const makePropsConfigurable = (props, componentKey) =>\n keys(props).reduce(\n (result, key) => ({ ...result, [key]: makePropConfigurable(props[key], key, componentKey) }),\n {}\n )\n\n// Get function name we use in `makePropConfigurable()`\n// for the prop default value override to compare\n// against in `hasPropFunction()`\nconst configurablePropDefaultFnName = makePropConfigurable({}, '', '').default.name\n\n// Detect wether the given value is currently a function\n// and isn't the props default function\nexport const hasPropFunction = fn => isFunction(fn) && fn.name !== configurablePropDefaultFnName\n","import { Vue } from '../vue'\nimport { EVENT_NAME_INPUT } from '../constants/events'\nimport { PROP_TYPE_ANY } from '../constants/props'\nimport { makeProp } from './props'\n\nexport const makeModelMixin = (\n prop,\n {\n type = PROP_TYPE_ANY,\n defaultValue = undefined,\n validator = undefined,\n event = EVENT_NAME_INPUT\n } = {}\n) => {\n const props = {\n [prop]: makeProp(type, defaultValue, validator)\n }\n\n // @vue/component\n const mixin = Vue.extend({\n model: {\n prop,\n event\n },\n props\n })\n\n return { mixin, props, prop, event }\n}\n","import { concat } from './array'\nimport { identity } from './identity'\nimport { isFunction } from './inspect'\n\n// Note for functional components:\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 */\nexport const hasNormalizedSlot = (names, $scopedSlots = {}, $slots = {}) => {\n // Ensure names is an array\n names = concat(names).filter(identity)\n // Returns true if the either a $scopedSlot or $slot exists with the specified name\n return names.some(name => $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 */\nexport const normalizeSlot = (names, scope = {}, $scopedSlots = {}, $slots = {}) => {\n // Ensure names is an array\n names = concat(names).filter(identity)\n let slot\n for (let i = 0; i < names.length && !slot; i++) {\n const name = names[i]\n slot = $scopedSlots[name] || $slots[name]\n }\n // Note: in Vue 2.6.x, all named slots are also scoped slots\n return isFunction(slot) ? slot(scope) : slot\n}\n","import { Vue } from '../vue'\nimport { SLOT_NAME_DEFAULT } from '../constants/slots'\nimport { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'\nimport { concat } from '../utils/array'\n\n// @vue/component\nexport const normalizeSlotMixin = Vue.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(\n name = SLOT_NAME_DEFAULT,\n scopedSlots = this.$scopedSlots,\n slots = this.$slots\n ) {\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(\n name = SLOT_NAME_DEFAULT,\n scope = {},\n scopedSlots = this.$scopedSlots,\n slots = this.$slots\n ) {\n const vNodes = normalizeSlot(name, scope, scopedSlots, slots)\n return vNodes ? concat(vNodes) : vNodes\n }\n }\n})\n","import { HAS_PASSIVE_EVENT_SUPPORT } from '../constants/env'\nimport { ROOT_EVENT_NAME_PREFIX, ROOT_EVENT_NAME_SEPARATOR } from '../constants/events'\nimport { RX_BV_PREFIX } from '../constants/regex'\nimport { isObject } from './inspect'\nimport { kebabCase } from './string'\n\n// --- Utils ---\n\n// Normalize event options based on support of passive option\n// Exported only for testing purposes\nexport const 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 : { capture: !!options || false }\n } else {\n // Need to translate to actual Boolean value\n return !!(isObject(options) ? options.capture : options)\n }\n}\n\n// Attach an event listener to an element\nexport const eventOn = (el, eventName, handler, options) => {\n if (el && el.addEventListener) {\n el.addEventListener(eventName, handler, parseEventOptions(options))\n }\n}\n\n// Remove an event listener from an element\nexport const eventOff = (el, eventName, handler, options) => {\n if (el && el.removeEventListener) {\n el.removeEventListener(eventName, handler, parseEventOptions(options))\n }\n}\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\nexport const eventOnOff = (on, ...args) => {\n const method = on ? eventOn : eventOff\n method(...args)\n}\n\n// Utility method to prevent the default event handling and propagation\nexport const stopEvent = (\n event,\n { preventDefault = true, propagation = true, immediatePropagation = false } = {}\n) => {\n if (preventDefault) {\n event.preventDefault()\n }\n if (propagation) {\n event.stopPropagation()\n }\n if (immediatePropagation) {\n event.stopImmediatePropagation()\n }\n}\n\n// Helper method to convert a component/directive name to a base event name\n// `getBaseEventName('BNavigationItem')` => 'navigation-item'\n// `getBaseEventName('BVToggle')` => 'toggle'\nconst getBaseEventName = value => kebabCase(value.replace(RX_BV_PREFIX, ''))\n\n// Get a root event name by component/directive and event name\n// `getBaseEventName('BModal', 'show')` => 'bv::modal::show'\nexport const getRootEventName = (name, eventName) =>\n [ROOT_EVENT_NAME_PREFIX, getBaseEventName(name), eventName].join(ROOT_EVENT_NAME_SEPARATOR)\n\n// Get a root action event name by component/directive and action name\n// `getRootActionEventName('BModal', 'show')` => 'bv::show::modal'\nexport const getRootActionEventName = (name, actionName) =>\n [ROOT_EVENT_NAME_PREFIX, actionName, getBaseEventName(name)].join(ROOT_EVENT_NAME_SEPARATOR)\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_CLOSE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { isEvent } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_BUTTON_CLOSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonClose = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_CLOSE,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n\n const componentData = {\n staticClass: 'close',\n class: {\n [`text-${props.textVariant}`]: props.textVariant\n },\n attrs: {\n type: 'button',\n disabled: props.disabled,\n 'aria-label': props.ariaLabel ? String(props.ariaLabel) : null\n },\n on: {\n click(event) {\n // Ensure click on button HTML content is also disabled\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 }\n\n // Careful not to override the default slot with innerHTML\n if (!hasNormalizedSlot(SLOT_NAME_DEFAULT, $scopedSlots, $slots)) {\n componentData.domProps = { innerHTML: props.content }\n }\n\n return h(\n 'button',\n mergeData(data, componentData),\n normalizeSlot(SLOT_NAME_DEFAULT, {}, $scopedSlots, $slots)\n )\n }\n})\n","// Generic Bootstrap v4 fade (no-fade) transition component\n//\n// Assumes that `show` class is not required when\n// the transition has finished the enter transition\n// (show and fade classes are only applied during transition)\n\nimport { Vue, mergeData } from '../../vue'\nimport { NAME_TRANSITION } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_OBJECT, PROP_TYPE_STRING } from '../../constants/props'\nimport { isPlainObject } from '../../utils/inspect'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\nconst NO_FADE_PROPS = {\n name: '',\n enterClass: '',\n enterActiveClass: '',\n enterToClass: 'show',\n leaveClass: 'show',\n leaveActiveClass: '',\n leaveToClass: ''\n}\n\nconst FADE_PROPS = {\n ...NO_FADE_PROPS,\n enterActiveClass: 'fade',\n leaveActiveClass: 'fade'\n}\n\n// --- Props ---\n\nexport const props = {\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}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVTransition = /*#__PURE__*/ Vue.extend({\n name: NAME_TRANSITION,\n functional: true,\n props,\n render(h, { children, data, props }) {\n let transProps = props.transProps\n if (!isPlainObject(transProps)) {\n transProps = props.noFade ? NO_FADE_PROPS : FADE_PROPS\n if (props.appear) {\n // Default the appear classes to equal the enter classes\n transProps = {\n ...transProps,\n appear: true,\n appearClass: transProps.enterClass,\n appearActiveClass: transProps.enterActiveClass,\n appearToClass: transProps.enterToClass\n }\n }\n }\n transProps = {\n mode: props.mode,\n ...transProps,\n // We always need `css` true\n css: true\n }\n return h(\n 'transition',\n // Any transition event listeners will get merged here\n mergeData(data, { props: transProps }),\n children\n )\n }\n})\n","import { COMPONENT_UID_KEY, Vue } from '../../vue'\nimport { NAME_ALERT } from '../../constants/components'\nimport { EVENT_NAME_DISMISSED, EVENT_NAME_DISMISS_COUNT_DOWN } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_DISMISS } from '../../constants/slots'\nimport { requestAF } from '../../utils/dom'\nimport { isBoolean, isNumeric } from '../../utils/inspect'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButtonClose } from '../button/button-close'\nimport { BVTransition } from '../transition/bv-transition'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('show', {\n type: PROP_TYPE_BOOLEAN_NUMBER_STRING,\n defaultValue: false\n})\n\n// --- Helper methods ---\n\n// Convert `show` value to a number\nconst parseCountDown = show => {\n if (show === '' || isBoolean(show)) {\n return 0\n }\n show = toInteger(show, 0)\n return show > 0 ? show : 0\n}\n\n// Convert `show` value to a boolean\nconst parseShow = show => {\n if (show === '' || show === true) {\n return true\n }\n if (toInteger(show, 0) < 1) {\n // Boolean will always return false for the above comparison\n return false\n }\n return !!show\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...modelProps,\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 }),\n NAME_ALERT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAlert = /*#__PURE__*/ Vue.extend({\n name: NAME_ALERT,\n mixins: [modelMixin, normalizeSlotMixin],\n props,\n data() {\n return {\n countDown: 0,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this[MODEL_PROP_NAME])\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n this.countDown = parseCountDown(newValue)\n this.localShow = parseShow(newValue)\n },\n countDown(newValue) {\n this.clearCountDownInterval()\n const show = this[MODEL_PROP_NAME]\n // Ignore if `show` transitions to a boolean value\n if (isNumeric(show)) {\n this.$emit(EVENT_NAME_DISMISS_COUNT_DOWN, newValue)\n // Update the v-model if needed\n if (show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n if (newValue > 0) {\n this.localShow = true\n this.$_countDownTimeout = setTimeout(() => {\n this.countDown--\n }, 1000)\n } else {\n // Slightly delay the hide to allow any UI updates\n this.$nextTick(() => {\n requestAF(() => {\n this.localShow = false\n })\n })\n }\n }\n },\n localShow(newValue) {\n const show = this[MODEL_PROP_NAME]\n // Only emit dismissed events for dismissible or auto-dismissing alerts\n if (!newValue && (this.dismissible || isNumeric(show))) {\n this.$emit(EVENT_NAME_DISMISSED)\n }\n // Only emit booleans if we weren't passed a number via v-model\n if (!isNumeric(show) && show !== newValue) {\n this.$emit(MODEL_EVENT_NAME, newValue)\n }\n }\n },\n created() {\n // Create private non-reactive props\n this.$_filterTimer = null\n\n const show = this[MODEL_PROP_NAME]\n this.countDown = parseCountDown(show)\n this.localShow = parseShow(show)\n },\n beforeDestroy() {\n this.clearCountDownInterval()\n },\n methods: {\n dismiss() {\n this.clearCountDownInterval()\n this.countDown = 0\n this.localShow = false\n },\n clearCountDownInterval() {\n clearTimeout(this.$_countDownTimeout)\n this.$_countDownTimeout = null\n }\n },\n render(h) {\n let $alert = h()\n if (this.localShow) {\n const { dismissible, variant } = this\n\n let $dismissButton = h()\n if (dismissible) {\n // Add dismiss button\n $dismissButton = h(\n BButtonClose,\n {\n attrs: { 'aria-label': this.dismissLabel },\n on: { click: this.dismiss }\n },\n [this.normalizeSlot(SLOT_NAME_DISMISS)]\n )\n }\n\n $alert = h(\n 'div',\n {\n staticClass: 'alert',\n class: {\n 'alert-dismissible': dismissible,\n [`alert-${variant}`]: variant\n },\n attrs: {\n role: 'alert',\n 'aria-live': 'polite',\n 'aria-atomic': true\n },\n key: this[COMPONENT_UID_KEY]\n },\n [$dismissButton, this.normalizeSlot()]\n )\n }\n\n return h(BVTransition, { props: { noFade: !this.fade } }, [$alert])\n }\n})\n","import { BAlert } from './alert'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AlertPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAlert }\n})\n\nexport { AlertPlugin, BAlert }\n","// Math utilty functions\n\nexport const mathMin = Math.min\n\nexport const mathMax = Math.max\n\nexport const mathAbs = Math.abs\n\nexport const mathCeil = Math.ceil\n\nexport const mathFloor = Math.floor\n\nexport const mathPow = Math.pow\n\nexport const mathRound = Math.round\n","import { Vue } from '../../vue'\nimport { NAME_ASPECT } from '../../constants/components'\nimport { PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { RX_ASPECT, RX_ASPECT_SEPARATOR } from '../../constants/regex'\nimport { mathAbs } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-aspect'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_ASPECT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAspect = /*#__PURE__*/ Vue.extend({\n name: NAME_ASPECT,\n mixins: [normalizeSlotMixin],\n props,\n computed: {\n padding() {\n const { aspect } = this\n let ratio = 1\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 const [width, height] = aspect.split(RX_ASPECT_SEPARATOR).map(v => toFloat(v) || 1)\n ratio = width / height\n } else {\n ratio = toFloat(aspect) || 1\n }\n return `${100 / mathAbs(ratio)}%`\n }\n },\n render(h) {\n const $sizer = h('div', {\n staticClass: `${CLASS_NAME}-sizer flex-grow-1`,\n style: { paddingBottom: this.padding, height: 0 }\n })\n\n const $content = h(\n 'div',\n {\n staticClass: `${CLASS_NAME}-content flex-grow-1 w-100 mw-100`,\n style: { marginLeft: '-100%' }\n },\n this.normalizeSlot()\n )\n\n return h(this.tag, { staticClass: `${CLASS_NAME} d-flex` }, [$sizer, $content])\n }\n})\n","import { BAspect } from './aspect'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AspectPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAspect }\n})\n\nexport { AspectPlugin, BAspect }\n","import { RX_ENCODED_COMMA, RX_ENCODE_REVERSE, RX_PLUS, RX_QUERY_START } from '../constants/regex'\nimport { isTag } from './dom'\nimport { isArray, isNull, isPlainObject, isString, isUndefined } from './inspect'\nimport { keys } from './object'\nimport { toString } from './string'\n\nconst ANCHOR_TAG = 'a'\n\n// Method to replace reserved chars\nconst encodeReserveReplacer = c => '%' + c.charCodeAt(0).toString(16)\n\n// Fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nconst encode = str =>\n encodeURIComponent(toString(str))\n .replace(RX_ENCODE_REVERSE, encodeReserveReplacer)\n .replace(RX_ENCODED_COMMA, ',')\n\nconst decode = decodeURIComponent\n\n// Stringifies an object of query parameters\n// See: https://github.com/vuejs/vue-router/blob/dev/src/util/query.js\nexport const stringifyQueryObj = obj => {\n if (!isPlainObject(obj)) {\n return ''\n }\n\n const query = keys(obj)\n .map(key => {\n const value = obj[key]\n if (isUndefined(value)) {\n return ''\n } else if (isNull(value)) {\n return encode(key)\n } else if (isArray(value)) {\n return value\n .reduce((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 return results\n }, [])\n .join('&')\n }\n // Faster than string interpolation\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(x => x.length > 0)\n .join('&')\n\n return query ? `?${query}` : ''\n}\n\nexport const parseQuery = query => {\n const parsed = {}\n query = toString(query)\n .trim()\n .replace(RX_QUERY_START, '')\n\n if (!query) {\n return parsed\n }\n\n query.split('&').forEach(param => {\n const parts = param.replace(RX_PLUS, ' ').split('=')\n const key = decode(parts.shift())\n const 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\n return parsed\n}\n\nexport const isLink = props => !!(props.href || props.to)\n\nexport const isRouterLink = tag => !!(tag && !isTag(tag, 'a'))\n\nexport const computeTag = ({ to, disabled, routerComponentName }, thisOrParent) => {\n const hasRouter = !!thisOrParent.$router\n if (!hasRouter || (hasRouter && (disabled || !to))) {\n return ANCHOR_TAG\n }\n\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 return routerComponentName || (thisOrParent.$nuxt ? 'nuxt-link' : 'router-link')\n}\n\nexport const computeRel = ({ target, rel } = {}) =>\n target === '_blank' && isNull(rel) ? 'noopener' : rel || null\n\nexport const computeHref = (\n { href, to } = {},\n tag = ANCHOR_TAG,\n fallback = '#',\n toFallback = '/'\n) => {\n // Return `href` when explicitly provided\n if (href) {\n return href\n }\n\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 if (isRouterLink(tag)) {\n return null\n }\n\n // Fallback to `to` prop (if `to` is a string)\n if (isString(to)) {\n return to || toFallback\n }\n // Fallback to `to.path' + `to.query` + `to.hash` prop (if `to` is an object)\n if (isPlainObject(to) && (to.path || to.query || to.hash)) {\n const path = toString(to.path)\n const query = stringifyQueryObj(to.query)\n let hash = toString(to.hash)\n hash = !hash || hash.charAt(0) === '#' ? hash : `#${hash}`\n return `${path}${query}${hash}` || toFallback\n }\n\n // If nothing is provided return the fallback\n return fallback\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_ICON_BASE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { identity } from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp } from '../../utils/props'\n\n// --- Constants ---\n\n// Base attributes needed on all icons\nconst 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}\n\n// Attributes that are nulled out when stacked\nconst STACKED_ATTRS = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}\n\n// --- Props ---\n\nexport const props = {\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}\n\n// --- Main component ---\n\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\nexport const BVIconBase = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON_BASE,\n functional: true,\n props,\n render(h, { data, props, children }) {\n const { animation, content, flipH, flipV, stacked, title, variant } = props\n const fontScale = mathMax(toFloat(props.fontScale, 1), 0) || 1\n const scale = mathMax(toFloat(props.scale, 1), 0) || 1\n const rotate = toFloat(props.rotate, 0)\n const shiftH = toFloat(props.shiftH, 0)\n const shiftV = toFloat(props.shiftV, 0)\n // 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 const hasScale = flipH || flipV || scale !== 1\n const hasTransforms = hasScale || rotate\n const hasShift = shiftH || shiftV\n const hasContent = !isUndefinedOrNull(content)\n const transforms = [\n hasTransforms ? 'translate(8 8)' : null,\n hasScale ? `scale(${(flipH ? -1 : 1) * scale} ${(flipV ? -1 : 1) * scale})` : null,\n rotate ? `rotate(${rotate})` : null,\n hasTransforms ? 'translate(-8 -8)' : null\n ].filter(identity)\n\n // We wrap the content in a `` for handling the transforms (except shift)\n let $inner = h(\n 'g',\n {\n attrs: { transform: transforms.join(' ') || null },\n domProps: hasContent ? { innerHTML: content || '' } : {}\n },\n children\n )\n\n // If needed, we wrap in an additional `` in order to handle the shifting\n if (hasShift) {\n $inner = h(\n 'g',\n { attrs: { transform: `translate(${(16 * shiftH) / 16} ${(-16 * shiftV) / 16})` } },\n [$inner]\n )\n }\n\n // Wrap in an additional `` for proper animation handling if stacked\n if (stacked) {\n $inner = h('g', [$inner])\n }\n\n const $title = title ? h('title', title) : null\n\n const $content = [$title, $inner].filter(identity)\n\n return h(\n 'svg',\n mergeData(\n {\n staticClass: 'b-icon bi',\n class: {\n [`text-${variant}`]: variant,\n [`b-icon-animation-${animation}`]: animation\n },\n attrs: BASE_ATTRS,\n style: stacked ? {} : { fontSize: fontScale === 1 ? null : `${fontScale * 100}%` }\n },\n // Merge in user supplied data\n data,\n // If icon is stacked, null-out some attrs\n stacked ? { 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 }\n ),\n $content\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { omit } from '../../utils/object'\nimport { kebabCase, pascalCase, trim } from '../../utils/string'\nimport { BVIconBase, props as BVIconBaseProps } from './icon-base'\n\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 */\nexport const 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 const kebabName = kebabCase(name)\n const iconName = `BIcon${pascalCase(name)}`\n const iconNameClass = `bi-${kebabName}`\n const iconTitle = kebabName.replace(/-/g, ' ')\n const svgContent = trim(content || '')\n\n return /*#__PURE__*/ Vue.extend({\n name: iconName,\n functional: true,\n props: omit(BVIconBaseProps, ['content']),\n render(h, { data, props }) {\n return h(\n BVIconBase,\n mergeData(\n // Defaults\n {\n props: { title: iconTitle },\n attrs: { 'aria-label': iconTitle }\n },\n // User data\n data,\n // Required data\n {\n staticClass: iconNameClass,\n props: { ...props, content: svgContent }\n }\n )\n )\n }\n })\n}\n","// --- BEGIN AUTO-GENERATED FILE ---\n//\n// @IconsVersion: 1.2.2\n// @Generated: 2021-01-01T00:29:10.157Z\n//\n// This file is generated on each build. Do not edit this file!\n\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.2.2\n *\n * @link https://icons.getbootstrap.com/\n * @license MIT\n * https://github.com/twbs/icons/blob/master/LICENSE.md\n */\n\nimport { makeIcon } from './helpers/make-icon'\n\n// --- BootstrapVue custom icons ---\n\nexport const BIconBlank = /*#__PURE__*/ makeIcon('Blank', '')\n\n// --- Bootstrap Icons ---\n\n// eslint-disable-next-line\nexport const BIconAlarm = /*#__PURE__*/ makeIcon(\n 'Alarm',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlarmFill = /*#__PURE__*/ makeIcon(\n 'AlarmFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignBottom = /*#__PURE__*/ makeIcon(\n 'AlignBottom',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignCenter = /*#__PURE__*/ makeIcon(\n 'AlignCenter',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignEnd = /*#__PURE__*/ makeIcon(\n 'AlignEnd',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignMiddle = /*#__PURE__*/ makeIcon(\n 'AlignMiddle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignStart = /*#__PURE__*/ makeIcon(\n 'AlignStart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlignTop = /*#__PURE__*/ makeIcon(\n 'AlignTop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAlt = /*#__PURE__*/ makeIcon(\n 'Alt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconApp = /*#__PURE__*/ makeIcon(\n 'App',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAppIndicator = /*#__PURE__*/ makeIcon(\n 'AppIndicator',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArchive = /*#__PURE__*/ makeIcon(\n 'Archive',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArchiveFill = /*#__PURE__*/ makeIcon(\n 'ArchiveFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degDown = /*#__PURE__*/ makeIcon(\n 'Arrow90degDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degLeft = /*#__PURE__*/ makeIcon(\n 'Arrow90degLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degRight = /*#__PURE__*/ makeIcon(\n 'Arrow90degRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrow90degUp = /*#__PURE__*/ makeIcon(\n 'Arrow90degUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarDown = /*#__PURE__*/ makeIcon(\n 'ArrowBarDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarLeft = /*#__PURE__*/ makeIcon(\n 'ArrowBarLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarRight = /*#__PURE__*/ makeIcon(\n 'ArrowBarRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowBarUp = /*#__PURE__*/ makeIcon(\n 'ArrowBarUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowClockwise = /*#__PURE__*/ makeIcon(\n 'ArrowClockwise',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowCounterclockwise = /*#__PURE__*/ makeIcon(\n 'ArrowCounterclockwise',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDown = /*#__PURE__*/ makeIcon(\n 'ArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownCircle = /*#__PURE__*/ makeIcon(\n 'ArrowDownCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeft = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftCircle = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftSquare = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownLeftSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRight = /*#__PURE__*/ makeIcon(\n 'ArrowDownRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightCircle = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquare = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownRightSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownShort = /*#__PURE__*/ makeIcon(\n 'ArrowDownShort',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownSquare = /*#__PURE__*/ makeIcon(\n 'ArrowDownSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowDownSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowDownUp = /*#__PURE__*/ makeIcon(\n 'ArrowDownUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeft = /*#__PURE__*/ makeIcon(\n 'ArrowLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftCircle = /*#__PURE__*/ makeIcon(\n 'ArrowLeftCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowLeftCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftRight = /*#__PURE__*/ makeIcon(\n 'ArrowLeftRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftShort = /*#__PURE__*/ makeIcon(\n 'ArrowLeftShort',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftSquare = /*#__PURE__*/ makeIcon(\n 'ArrowLeftSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowLeftSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRepeat = /*#__PURE__*/ makeIcon(\n 'ArrowRepeat',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowReturnLeft = /*#__PURE__*/ makeIcon(\n 'ArrowReturnLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowReturnRight = /*#__PURE__*/ makeIcon(\n 'ArrowReturnRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRight = /*#__PURE__*/ makeIcon(\n 'ArrowRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightCircle = /*#__PURE__*/ makeIcon(\n 'ArrowRightCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowRightCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightShort = /*#__PURE__*/ makeIcon(\n 'ArrowRightShort',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightSquare = /*#__PURE__*/ makeIcon(\n 'ArrowRightSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowRightSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUp = /*#__PURE__*/ makeIcon(\n 'ArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpCircle = /*#__PURE__*/ makeIcon(\n 'ArrowUpCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeft = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftCircle = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquare = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpLeftSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRight = /*#__PURE__*/ makeIcon(\n 'ArrowUpRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightCircle = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightCircleFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquare = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpRightSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpRightSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpShort = /*#__PURE__*/ makeIcon(\n 'ArrowUpShort',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpSquare = /*#__PURE__*/ makeIcon(\n 'ArrowUpSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowUpSquareFill = /*#__PURE__*/ makeIcon(\n 'ArrowUpSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsAngleContract = /*#__PURE__*/ makeIcon(\n 'ArrowsAngleContract',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsAngleExpand = /*#__PURE__*/ makeIcon(\n 'ArrowsAngleExpand',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsCollapse = /*#__PURE__*/ makeIcon(\n 'ArrowsCollapse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsExpand = /*#__PURE__*/ makeIcon(\n 'ArrowsExpand',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsFullscreen = /*#__PURE__*/ makeIcon(\n 'ArrowsFullscreen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconArrowsMove = /*#__PURE__*/ makeIcon(\n 'ArrowsMove',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAspectRatio = /*#__PURE__*/ makeIcon(\n 'AspectRatio',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAspectRatioFill = /*#__PURE__*/ makeIcon(\n 'AspectRatioFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAsterisk = /*#__PURE__*/ makeIcon(\n 'Asterisk',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAt = /*#__PURE__*/ makeIcon(\n 'At',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAward = /*#__PURE__*/ makeIcon(\n 'Award',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconAwardFill = /*#__PURE__*/ makeIcon(\n 'AwardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBack = /*#__PURE__*/ makeIcon(\n 'Back',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBackspace = /*#__PURE__*/ makeIcon(\n 'Backspace',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceFill = /*#__PURE__*/ makeIcon(\n 'BackspaceFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceReverse = /*#__PURE__*/ makeIcon(\n 'BackspaceReverse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBackspaceReverseFill = /*#__PURE__*/ makeIcon(\n 'BackspaceReverseFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadge4k = /*#__PURE__*/ makeIcon(\n 'Badge4k',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadge4kFill = /*#__PURE__*/ makeIcon(\n 'Badge4kFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadge8k = /*#__PURE__*/ makeIcon(\n 'Badge8k',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadge8kFill = /*#__PURE__*/ makeIcon(\n 'Badge8kFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeAd = /*#__PURE__*/ makeIcon(\n 'BadgeAd',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeAdFill = /*#__PURE__*/ makeIcon(\n 'BadgeAdFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeCc = /*#__PURE__*/ makeIcon(\n 'BadgeCc',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeCcFill = /*#__PURE__*/ makeIcon(\n 'BadgeCcFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeHd = /*#__PURE__*/ makeIcon(\n 'BadgeHd',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeHdFill = /*#__PURE__*/ makeIcon(\n 'BadgeHdFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeTm = /*#__PURE__*/ makeIcon(\n 'BadgeTm',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeTmFill = /*#__PURE__*/ makeIcon(\n 'BadgeTmFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeVo = /*#__PURE__*/ makeIcon(\n 'BadgeVo',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBadgeVoFill = /*#__PURE__*/ makeIcon(\n 'BadgeVoFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBag = /*#__PURE__*/ makeIcon(\n 'Bag',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheck = /*#__PURE__*/ makeIcon(\n 'BagCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagCheckFill = /*#__PURE__*/ makeIcon(\n 'BagCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagDash = /*#__PURE__*/ makeIcon(\n 'BagDash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagDashFill = /*#__PURE__*/ makeIcon(\n 'BagDashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagFill = /*#__PURE__*/ makeIcon(\n 'BagFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagPlus = /*#__PURE__*/ makeIcon(\n 'BagPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagPlusFill = /*#__PURE__*/ makeIcon(\n 'BagPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagX = /*#__PURE__*/ makeIcon(\n 'BagX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBagXFill = /*#__PURE__*/ makeIcon(\n 'BagXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBarChart = /*#__PURE__*/ makeIcon(\n 'BarChart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartFill = /*#__PURE__*/ makeIcon(\n 'BarChartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartLine = /*#__PURE__*/ makeIcon(\n 'BarChartLine',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartLineFill = /*#__PURE__*/ makeIcon(\n 'BarChartLineFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBarChartSteps = /*#__PURE__*/ makeIcon(\n 'BarChartSteps',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasket = /*#__PURE__*/ makeIcon(\n 'Basket',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasket2 = /*#__PURE__*/ makeIcon(\n 'Basket2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasket2Fill = /*#__PURE__*/ makeIcon(\n 'Basket2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasket3 = /*#__PURE__*/ makeIcon(\n 'Basket3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasket3Fill = /*#__PURE__*/ makeIcon(\n 'Basket3Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBasketFill = /*#__PURE__*/ makeIcon(\n 'BasketFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBattery = /*#__PURE__*/ makeIcon(\n 'Battery',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryCharging = /*#__PURE__*/ makeIcon(\n 'BatteryCharging',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryFull = /*#__PURE__*/ makeIcon(\n 'BatteryFull',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBatteryHalf = /*#__PURE__*/ makeIcon(\n 'BatteryHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBell = /*#__PURE__*/ makeIcon(\n 'Bell',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBellFill = /*#__PURE__*/ makeIcon(\n 'BellFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBezier = /*#__PURE__*/ makeIcon(\n 'Bezier',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBezier2 = /*#__PURE__*/ makeIcon(\n 'Bezier2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBicycle = /*#__PURE__*/ makeIcon(\n 'Bicycle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBinoculars = /*#__PURE__*/ makeIcon(\n 'Binoculars',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBinocularsFill = /*#__PURE__*/ makeIcon(\n 'BinocularsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBlockquoteLeft = /*#__PURE__*/ makeIcon(\n 'BlockquoteLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBlockquoteRight = /*#__PURE__*/ makeIcon(\n 'BlockquoteRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBook = /*#__PURE__*/ makeIcon(\n 'Book',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookFill = /*#__PURE__*/ makeIcon(\n 'BookFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookHalf = /*#__PURE__*/ makeIcon(\n 'BookHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmark = /*#__PURE__*/ makeIcon(\n 'Bookmark',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkCheck = /*#__PURE__*/ makeIcon(\n 'BookmarkCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkCheckFill = /*#__PURE__*/ makeIcon(\n 'BookmarkCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkDash = /*#__PURE__*/ makeIcon(\n 'BookmarkDash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkDashFill = /*#__PURE__*/ makeIcon(\n 'BookmarkDashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkFill = /*#__PURE__*/ makeIcon(\n 'BookmarkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkHeart = /*#__PURE__*/ makeIcon(\n 'BookmarkHeart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkHeartFill = /*#__PURE__*/ makeIcon(\n 'BookmarkHeartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkPlus = /*#__PURE__*/ makeIcon(\n 'BookmarkPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkPlusFill = /*#__PURE__*/ makeIcon(\n 'BookmarkPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkStar = /*#__PURE__*/ makeIcon(\n 'BookmarkStar',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkStarFill = /*#__PURE__*/ makeIcon(\n 'BookmarkStarFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkX = /*#__PURE__*/ makeIcon(\n 'BookmarkX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarkXFill = /*#__PURE__*/ makeIcon(\n 'BookmarkXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarks = /*#__PURE__*/ makeIcon(\n 'Bookmarks',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookmarksFill = /*#__PURE__*/ makeIcon(\n 'BookmarksFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBookshelf = /*#__PURE__*/ makeIcon(\n 'Bookshelf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrap = /*#__PURE__*/ makeIcon(\n 'Bootstrap',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapFill = /*#__PURE__*/ makeIcon(\n 'BootstrapFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBootstrapReboot = /*#__PURE__*/ makeIcon(\n 'BootstrapReboot',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBorderStyle = /*#__PURE__*/ makeIcon(\n 'BorderStyle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBorderWidth = /*#__PURE__*/ makeIcon(\n 'BorderWidth',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoundingBox = /*#__PURE__*/ makeIcon(\n 'BoundingBox',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoundingBoxCircles = /*#__PURE__*/ makeIcon(\n 'BoundingBoxCircles',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBox = /*#__PURE__*/ makeIcon(\n 'Box',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDown = /*#__PURE__*/ makeIcon(\n 'BoxArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDownLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowDownLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowDownRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowDownRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDown = /*#__PURE__*/ makeIcon(\n 'BoxArrowInDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDownLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowInDownLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInDownRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowInDownRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowInLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowInRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUp = /*#__PURE__*/ makeIcon(\n 'BoxArrowInUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUpLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowInUpLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowInUpRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowInUpRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUp = /*#__PURE__*/ makeIcon(\n 'BoxArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUpLeft = /*#__PURE__*/ makeIcon(\n 'BoxArrowUpLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxArrowUpRight = /*#__PURE__*/ makeIcon(\n 'BoxArrowUpRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBoxSeam = /*#__PURE__*/ makeIcon(\n 'BoxSeam',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBraces = /*#__PURE__*/ makeIcon(\n 'Braces',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBricks = /*#__PURE__*/ makeIcon(\n 'Bricks',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBriefcase = /*#__PURE__*/ makeIcon(\n 'Briefcase',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBriefcaseFill = /*#__PURE__*/ makeIcon(\n 'BriefcaseFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHigh = /*#__PURE__*/ makeIcon(\n 'BrightnessAltHigh',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltHighFill = /*#__PURE__*/ makeIcon(\n 'BrightnessAltHighFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltLow = /*#__PURE__*/ makeIcon(\n 'BrightnessAltLow',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessAltLowFill = /*#__PURE__*/ makeIcon(\n 'BrightnessAltLowFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessHigh = /*#__PURE__*/ makeIcon(\n 'BrightnessHigh',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessHighFill = /*#__PURE__*/ makeIcon(\n 'BrightnessHighFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessLow = /*#__PURE__*/ makeIcon(\n 'BrightnessLow',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrightnessLowFill = /*#__PURE__*/ makeIcon(\n 'BrightnessLowFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBroadcast = /*#__PURE__*/ makeIcon(\n 'Broadcast',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBroadcastPin = /*#__PURE__*/ makeIcon(\n 'BroadcastPin',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrush = /*#__PURE__*/ makeIcon(\n 'Brush',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBrushFill = /*#__PURE__*/ makeIcon(\n 'BrushFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBucket = /*#__PURE__*/ makeIcon(\n 'Bucket',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBucketFill = /*#__PURE__*/ makeIcon(\n 'BucketFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBug = /*#__PURE__*/ makeIcon(\n 'Bug',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBugFill = /*#__PURE__*/ makeIcon(\n 'BugFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBuilding = /*#__PURE__*/ makeIcon(\n 'Building',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconBullseye = /*#__PURE__*/ makeIcon(\n 'Bullseye',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalculator = /*#__PURE__*/ makeIcon(\n 'Calculator',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalculatorFill = /*#__PURE__*/ makeIcon(\n 'CalculatorFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar = /*#__PURE__*/ makeIcon(\n 'Calendar',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2 = /*#__PURE__*/ makeIcon(\n 'Calendar2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Check = /*#__PURE__*/ makeIcon(\n 'Calendar2Check',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2CheckFill = /*#__PURE__*/ makeIcon(\n 'Calendar2CheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Date = /*#__PURE__*/ makeIcon(\n 'Calendar2Date',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2DateFill = /*#__PURE__*/ makeIcon(\n 'Calendar2DateFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Day = /*#__PURE__*/ makeIcon(\n 'Calendar2Day',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2DayFill = /*#__PURE__*/ makeIcon(\n 'Calendar2DayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Event = /*#__PURE__*/ makeIcon(\n 'Calendar2Event',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2EventFill = /*#__PURE__*/ makeIcon(\n 'Calendar2EventFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Fill = /*#__PURE__*/ makeIcon(\n 'Calendar2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Minus = /*#__PURE__*/ makeIcon(\n 'Calendar2Minus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2MinusFill = /*#__PURE__*/ makeIcon(\n 'Calendar2MinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Month = /*#__PURE__*/ makeIcon(\n 'Calendar2Month',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2MonthFill = /*#__PURE__*/ makeIcon(\n 'Calendar2MonthFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Plus = /*#__PURE__*/ makeIcon(\n 'Calendar2Plus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2PlusFill = /*#__PURE__*/ makeIcon(\n 'Calendar2PlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Range = /*#__PURE__*/ makeIcon(\n 'Calendar2Range',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2RangeFill = /*#__PURE__*/ makeIcon(\n 'Calendar2RangeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2Week = /*#__PURE__*/ makeIcon(\n 'Calendar2Week',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2WeekFill = /*#__PURE__*/ makeIcon(\n 'Calendar2WeekFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2X = /*#__PURE__*/ makeIcon(\n 'Calendar2X',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar2XFill = /*#__PURE__*/ makeIcon(\n 'Calendar2XFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3 = /*#__PURE__*/ makeIcon(\n 'Calendar3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Event = /*#__PURE__*/ makeIcon(\n 'Calendar3Event',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3EventFill = /*#__PURE__*/ makeIcon(\n 'Calendar3EventFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Fill = /*#__PURE__*/ makeIcon(\n 'Calendar3Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Range = /*#__PURE__*/ makeIcon(\n 'Calendar3Range',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3RangeFill = /*#__PURE__*/ makeIcon(\n 'Calendar3RangeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3Week = /*#__PURE__*/ makeIcon(\n 'Calendar3Week',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar3WeekFill = /*#__PURE__*/ makeIcon(\n 'Calendar3WeekFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4 = /*#__PURE__*/ makeIcon(\n 'Calendar4',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Event = /*#__PURE__*/ makeIcon(\n 'Calendar4Event',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Range = /*#__PURE__*/ makeIcon(\n 'Calendar4Range',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendar4Week = /*#__PURE__*/ makeIcon(\n 'Calendar4Week',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarCheck = /*#__PURE__*/ makeIcon(\n 'CalendarCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarCheckFill = /*#__PURE__*/ makeIcon(\n 'CalendarCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDate = /*#__PURE__*/ makeIcon(\n 'CalendarDate',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDateFill = /*#__PURE__*/ makeIcon(\n 'CalendarDateFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDay = /*#__PURE__*/ makeIcon(\n 'CalendarDay',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarDayFill = /*#__PURE__*/ makeIcon(\n 'CalendarDayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarEvent = /*#__PURE__*/ makeIcon(\n 'CalendarEvent',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarEventFill = /*#__PURE__*/ makeIcon(\n 'CalendarEventFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarFill = /*#__PURE__*/ makeIcon(\n 'CalendarFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMinus = /*#__PURE__*/ makeIcon(\n 'CalendarMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMinusFill = /*#__PURE__*/ makeIcon(\n 'CalendarMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMonth = /*#__PURE__*/ makeIcon(\n 'CalendarMonth',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarMonthFill = /*#__PURE__*/ makeIcon(\n 'CalendarMonthFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarPlus = /*#__PURE__*/ makeIcon(\n 'CalendarPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarPlusFill = /*#__PURE__*/ makeIcon(\n 'CalendarPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarRange = /*#__PURE__*/ makeIcon(\n 'CalendarRange',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarRangeFill = /*#__PURE__*/ makeIcon(\n 'CalendarRangeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarWeek = /*#__PURE__*/ makeIcon(\n 'CalendarWeek',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarWeekFill = /*#__PURE__*/ makeIcon(\n 'CalendarWeekFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarX = /*#__PURE__*/ makeIcon(\n 'CalendarX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCalendarXFill = /*#__PURE__*/ makeIcon(\n 'CalendarXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCamera = /*#__PURE__*/ makeIcon(\n 'Camera',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCamera2 = /*#__PURE__*/ makeIcon(\n 'Camera2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraFill = /*#__PURE__*/ makeIcon(\n 'CameraFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraReels = /*#__PURE__*/ makeIcon(\n 'CameraReels',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraReelsFill = /*#__PURE__*/ makeIcon(\n 'CameraReelsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideo = /*#__PURE__*/ makeIcon(\n 'CameraVideo',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoFill = /*#__PURE__*/ makeIcon(\n 'CameraVideoFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoOff = /*#__PURE__*/ makeIcon(\n 'CameraVideoOff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCameraVideoOffFill = /*#__PURE__*/ makeIcon(\n 'CameraVideoOffFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCapslock = /*#__PURE__*/ makeIcon(\n 'Capslock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCapslockFill = /*#__PURE__*/ makeIcon(\n 'CapslockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCardChecklist = /*#__PURE__*/ makeIcon(\n 'CardChecklist',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCardHeading = /*#__PURE__*/ makeIcon(\n 'CardHeading',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCardImage = /*#__PURE__*/ makeIcon(\n 'CardImage',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCardList = /*#__PURE__*/ makeIcon(\n 'CardList',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCardText = /*#__PURE__*/ makeIcon(\n 'CardText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDown = /*#__PURE__*/ makeIcon(\n 'CaretDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownFill = /*#__PURE__*/ makeIcon(\n 'CaretDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownSquare = /*#__PURE__*/ makeIcon(\n 'CaretDownSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretDownSquareFill = /*#__PURE__*/ makeIcon(\n 'CaretDownSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeft = /*#__PURE__*/ makeIcon(\n 'CaretLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftFill = /*#__PURE__*/ makeIcon(\n 'CaretLeftFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftSquare = /*#__PURE__*/ makeIcon(\n 'CaretLeftSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretLeftSquareFill = /*#__PURE__*/ makeIcon(\n 'CaretLeftSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRight = /*#__PURE__*/ makeIcon(\n 'CaretRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightFill = /*#__PURE__*/ makeIcon(\n 'CaretRightFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightSquare = /*#__PURE__*/ makeIcon(\n 'CaretRightSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretRightSquareFill = /*#__PURE__*/ makeIcon(\n 'CaretRightSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUp = /*#__PURE__*/ makeIcon(\n 'CaretUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpFill = /*#__PURE__*/ makeIcon(\n 'CaretUpFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpSquare = /*#__PURE__*/ makeIcon(\n 'CaretUpSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCaretUpSquareFill = /*#__PURE__*/ makeIcon(\n 'CaretUpSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCart = /*#__PURE__*/ makeIcon(\n 'Cart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCart2 = /*#__PURE__*/ makeIcon(\n 'Cart2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCart3 = /*#__PURE__*/ makeIcon(\n 'Cart3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCart4 = /*#__PURE__*/ makeIcon(\n 'Cart4',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartCheck = /*#__PURE__*/ makeIcon(\n 'CartCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartCheckFill = /*#__PURE__*/ makeIcon(\n 'CartCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartDash = /*#__PURE__*/ makeIcon(\n 'CartDash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartDashFill = /*#__PURE__*/ makeIcon(\n 'CartDashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartFill = /*#__PURE__*/ makeIcon(\n 'CartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlus = /*#__PURE__*/ makeIcon(\n 'CartPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartPlusFill = /*#__PURE__*/ makeIcon(\n 'CartPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartX = /*#__PURE__*/ makeIcon(\n 'CartX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCartXFill = /*#__PURE__*/ makeIcon(\n 'CartXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCash = /*#__PURE__*/ makeIcon(\n 'Cash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCashStack = /*#__PURE__*/ makeIcon(\n 'CashStack',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCast = /*#__PURE__*/ makeIcon(\n 'Cast',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChat = /*#__PURE__*/ makeIcon(\n 'Chat',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatDots = /*#__PURE__*/ makeIcon(\n 'ChatDots',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatDotsFill = /*#__PURE__*/ makeIcon(\n 'ChatDotsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatFill = /*#__PURE__*/ makeIcon(\n 'ChatFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeft = /*#__PURE__*/ makeIcon(\n 'ChatLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftDots = /*#__PURE__*/ makeIcon(\n 'ChatLeftDots',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftDotsFill = /*#__PURE__*/ makeIcon(\n 'ChatLeftDotsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftFill = /*#__PURE__*/ makeIcon(\n 'ChatLeftFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftQuote = /*#__PURE__*/ makeIcon(\n 'ChatLeftQuote',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftQuoteFill = /*#__PURE__*/ makeIcon(\n 'ChatLeftQuoteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftText = /*#__PURE__*/ makeIcon(\n 'ChatLeftText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatLeftTextFill = /*#__PURE__*/ makeIcon(\n 'ChatLeftTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatQuote = /*#__PURE__*/ makeIcon(\n 'ChatQuote',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatQuoteFill = /*#__PURE__*/ makeIcon(\n 'ChatQuoteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRight = /*#__PURE__*/ makeIcon(\n 'ChatRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightDots = /*#__PURE__*/ makeIcon(\n 'ChatRightDots',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightDotsFill = /*#__PURE__*/ makeIcon(\n 'ChatRightDotsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightFill = /*#__PURE__*/ makeIcon(\n 'ChatRightFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightQuote = /*#__PURE__*/ makeIcon(\n 'ChatRightQuote',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightQuoteFill = /*#__PURE__*/ makeIcon(\n 'ChatRightQuoteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightText = /*#__PURE__*/ makeIcon(\n 'ChatRightText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatRightTextFill = /*#__PURE__*/ makeIcon(\n 'ChatRightTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquare = /*#__PURE__*/ makeIcon(\n 'ChatSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareDots = /*#__PURE__*/ makeIcon(\n 'ChatSquareDots',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareDotsFill = /*#__PURE__*/ makeIcon(\n 'ChatSquareDotsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareFill = /*#__PURE__*/ makeIcon(\n 'ChatSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareQuote = /*#__PURE__*/ makeIcon(\n 'ChatSquareQuote',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareQuoteFill = /*#__PURE__*/ makeIcon(\n 'ChatSquareQuoteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareText = /*#__PURE__*/ makeIcon(\n 'ChatSquareText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatSquareTextFill = /*#__PURE__*/ makeIcon(\n 'ChatSquareTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatText = /*#__PURE__*/ makeIcon(\n 'ChatText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChatTextFill = /*#__PURE__*/ makeIcon(\n 'ChatTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheck = /*#__PURE__*/ makeIcon(\n 'Check',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2 = /*#__PURE__*/ makeIcon(\n 'Check2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2All = /*#__PURE__*/ makeIcon(\n 'Check2All',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Circle = /*#__PURE__*/ makeIcon(\n 'Check2Circle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheck2Square = /*#__PURE__*/ makeIcon(\n 'Check2Square',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheckAll = /*#__PURE__*/ makeIcon(\n 'CheckAll',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheckCircle = /*#__PURE__*/ makeIcon(\n 'CheckCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheckCircleFill = /*#__PURE__*/ makeIcon(\n 'CheckCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquare = /*#__PURE__*/ makeIcon(\n 'CheckSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCheckSquareFill = /*#__PURE__*/ makeIcon(\n 'CheckSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarContract = /*#__PURE__*/ makeIcon(\n 'ChevronBarContract',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarDown = /*#__PURE__*/ makeIcon(\n 'ChevronBarDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarExpand = /*#__PURE__*/ makeIcon(\n 'ChevronBarExpand',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarLeft = /*#__PURE__*/ makeIcon(\n 'ChevronBarLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarRight = /*#__PURE__*/ makeIcon(\n 'ChevronBarRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronBarUp = /*#__PURE__*/ makeIcon(\n 'ChevronBarUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactDown = /*#__PURE__*/ makeIcon(\n 'ChevronCompactDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactLeft = /*#__PURE__*/ makeIcon(\n 'ChevronCompactLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactRight = /*#__PURE__*/ makeIcon(\n 'ChevronCompactRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronCompactUp = /*#__PURE__*/ makeIcon(\n 'ChevronCompactUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronContract = /*#__PURE__*/ makeIcon(\n 'ChevronContract',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleDown = /*#__PURE__*/ makeIcon(\n 'ChevronDoubleDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleLeft = /*#__PURE__*/ makeIcon(\n 'ChevronDoubleLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleRight = /*#__PURE__*/ makeIcon(\n 'ChevronDoubleRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDoubleUp = /*#__PURE__*/ makeIcon(\n 'ChevronDoubleUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronDown = /*#__PURE__*/ makeIcon(\n 'ChevronDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronExpand = /*#__PURE__*/ makeIcon(\n 'ChevronExpand',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronLeft = /*#__PURE__*/ makeIcon(\n 'ChevronLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronRight = /*#__PURE__*/ makeIcon(\n 'ChevronRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconChevronUp = /*#__PURE__*/ makeIcon(\n 'ChevronUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCircle = /*#__PURE__*/ makeIcon(\n 'Circle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCircleFill = /*#__PURE__*/ makeIcon(\n 'CircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCircleHalf = /*#__PURE__*/ makeIcon(\n 'CircleHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCircleSquare = /*#__PURE__*/ makeIcon(\n 'CircleSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboard = /*#__PURE__*/ makeIcon(\n 'Clipboard',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardCheck = /*#__PURE__*/ makeIcon(\n 'ClipboardCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardData = /*#__PURE__*/ makeIcon(\n 'ClipboardData',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardMinus = /*#__PURE__*/ makeIcon(\n 'ClipboardMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardPlus = /*#__PURE__*/ makeIcon(\n 'ClipboardPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClipboardX = /*#__PURE__*/ makeIcon(\n 'ClipboardX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClock = /*#__PURE__*/ makeIcon(\n 'Clock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClockFill = /*#__PURE__*/ makeIcon(\n 'ClockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconClockHistory = /*#__PURE__*/ makeIcon(\n 'ClockHistory',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloud = /*#__PURE__*/ makeIcon(\n 'Cloud',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowDown = /*#__PURE__*/ makeIcon(\n 'CloudArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowDownFill = /*#__PURE__*/ makeIcon(\n 'CloudArrowDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowUp = /*#__PURE__*/ makeIcon(\n 'CloudArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudArrowUpFill = /*#__PURE__*/ makeIcon(\n 'CloudArrowUpFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudCheck = /*#__PURE__*/ makeIcon(\n 'CloudCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudCheckFill = /*#__PURE__*/ makeIcon(\n 'CloudCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDownload = /*#__PURE__*/ makeIcon(\n 'CloudDownload',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudDownloadFill = /*#__PURE__*/ makeIcon(\n 'CloudDownloadFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudFill = /*#__PURE__*/ makeIcon(\n 'CloudFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMinus = /*#__PURE__*/ makeIcon(\n 'CloudMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudMinusFill = /*#__PURE__*/ makeIcon(\n 'CloudMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudPlus = /*#__PURE__*/ makeIcon(\n 'CloudPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudPlusFill = /*#__PURE__*/ makeIcon(\n 'CloudPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSlash = /*#__PURE__*/ makeIcon(\n 'CloudSlash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudSlashFill = /*#__PURE__*/ makeIcon(\n 'CloudSlashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudUpload = /*#__PURE__*/ makeIcon(\n 'CloudUpload',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCloudUploadFill = /*#__PURE__*/ makeIcon(\n 'CloudUploadFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCode = /*#__PURE__*/ makeIcon(\n 'Code',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSlash = /*#__PURE__*/ makeIcon(\n 'CodeSlash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCodeSquare = /*#__PURE__*/ makeIcon(\n 'CodeSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCollection = /*#__PURE__*/ makeIcon(\n 'Collection',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionFill = /*#__PURE__*/ makeIcon(\n 'CollectionFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionPlay = /*#__PURE__*/ makeIcon(\n 'CollectionPlay',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCollectionPlayFill = /*#__PURE__*/ makeIcon(\n 'CollectionPlayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconColumns = /*#__PURE__*/ makeIcon(\n 'Columns',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconColumnsGap = /*#__PURE__*/ makeIcon(\n 'ColumnsGap',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCommand = /*#__PURE__*/ makeIcon(\n 'Command',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCompass = /*#__PURE__*/ makeIcon(\n 'Compass',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCompassFill = /*#__PURE__*/ makeIcon(\n 'CompassFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCone = /*#__PURE__*/ makeIcon(\n 'Cone',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconConeStriped = /*#__PURE__*/ makeIcon(\n 'ConeStriped',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconController = /*#__PURE__*/ makeIcon(\n 'Controller',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCpu = /*#__PURE__*/ makeIcon(\n 'Cpu',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCpuFill = /*#__PURE__*/ makeIcon(\n 'CpuFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard = /*#__PURE__*/ makeIcon(\n 'CreditCard',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2Back = /*#__PURE__*/ makeIcon(\n 'CreditCard2Back',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2BackFill = /*#__PURE__*/ makeIcon(\n 'CreditCard2BackFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2Front = /*#__PURE__*/ makeIcon(\n 'CreditCard2Front',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCard2FrontFill = /*#__PURE__*/ makeIcon(\n 'CreditCard2FrontFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCreditCardFill = /*#__PURE__*/ makeIcon(\n 'CreditCardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCrop = /*#__PURE__*/ makeIcon(\n 'Crop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCup = /*#__PURE__*/ makeIcon(\n 'Cup',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCupFill = /*#__PURE__*/ makeIcon(\n 'CupFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCupStraw = /*#__PURE__*/ makeIcon(\n 'CupStraw',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCursor = /*#__PURE__*/ makeIcon(\n 'Cursor',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCursorFill = /*#__PURE__*/ makeIcon(\n 'CursorFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconCursorText = /*#__PURE__*/ makeIcon(\n 'CursorText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDash = /*#__PURE__*/ makeIcon(\n 'Dash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDashCircle = /*#__PURE__*/ makeIcon(\n 'DashCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDashCircleFill = /*#__PURE__*/ makeIcon(\n 'DashCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDashSquare = /*#__PURE__*/ makeIcon(\n 'DashSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDashSquareFill = /*#__PURE__*/ makeIcon(\n 'DashSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram2 = /*#__PURE__*/ makeIcon(\n 'Diagram2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram2Fill = /*#__PURE__*/ makeIcon(\n 'Diagram2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram3 = /*#__PURE__*/ makeIcon(\n 'Diagram3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiagram3Fill = /*#__PURE__*/ makeIcon(\n 'Diagram3Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiamond = /*#__PURE__*/ makeIcon(\n 'Diamond',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiamondFill = /*#__PURE__*/ makeIcon(\n 'DiamondFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiamondHalf = /*#__PURE__*/ makeIcon(\n 'DiamondHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice1 = /*#__PURE__*/ makeIcon(\n 'Dice1',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice1Fill = /*#__PURE__*/ makeIcon(\n 'Dice1Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice2 = /*#__PURE__*/ makeIcon(\n 'Dice2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice2Fill = /*#__PURE__*/ makeIcon(\n 'Dice2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice3 = /*#__PURE__*/ makeIcon(\n 'Dice3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice3Fill = /*#__PURE__*/ makeIcon(\n 'Dice3Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice4 = /*#__PURE__*/ makeIcon(\n 'Dice4',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice4Fill = /*#__PURE__*/ makeIcon(\n 'Dice4Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice5 = /*#__PURE__*/ makeIcon(\n 'Dice5',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice5Fill = /*#__PURE__*/ makeIcon(\n 'Dice5Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice6 = /*#__PURE__*/ makeIcon(\n 'Dice6',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDice6Fill = /*#__PURE__*/ makeIcon(\n 'Dice6Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDisc = /*#__PURE__*/ makeIcon(\n 'Disc',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiscFill = /*#__PURE__*/ makeIcon(\n 'DiscFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDiscord = /*#__PURE__*/ makeIcon(\n 'Discord',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDisplay = /*#__PURE__*/ makeIcon(\n 'Display',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDisplayFill = /*#__PURE__*/ makeIcon(\n 'DisplayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDistributeHorizontal = /*#__PURE__*/ makeIcon(\n 'DistributeHorizontal',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDistributeVertical = /*#__PURE__*/ makeIcon(\n 'DistributeVertical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDoorClosed = /*#__PURE__*/ makeIcon(\n 'DoorClosed',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDoorClosedFill = /*#__PURE__*/ makeIcon(\n 'DoorClosedFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDoorOpen = /*#__PURE__*/ makeIcon(\n 'DoorOpen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDoorOpenFill = /*#__PURE__*/ makeIcon(\n 'DoorOpenFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDot = /*#__PURE__*/ makeIcon(\n 'Dot',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDownload = /*#__PURE__*/ makeIcon(\n 'Download',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDroplet = /*#__PURE__*/ makeIcon(\n 'Droplet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDropletFill = /*#__PURE__*/ makeIcon(\n 'DropletFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconDropletHalf = /*#__PURE__*/ makeIcon(\n 'DropletHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEarbuds = /*#__PURE__*/ makeIcon(\n 'Earbuds',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEasel = /*#__PURE__*/ makeIcon(\n 'Easel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEaselFill = /*#__PURE__*/ makeIcon(\n 'EaselFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEgg = /*#__PURE__*/ makeIcon(\n 'Egg',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEggFill = /*#__PURE__*/ makeIcon(\n 'EggFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEggFried = /*#__PURE__*/ makeIcon(\n 'EggFried',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEject = /*#__PURE__*/ makeIcon(\n 'Eject',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEjectFill = /*#__PURE__*/ makeIcon(\n 'EjectFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiAngry = /*#__PURE__*/ makeIcon(\n 'EmojiAngry',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiAngryFill = /*#__PURE__*/ makeIcon(\n 'EmojiAngryFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiDizzy = /*#__PURE__*/ makeIcon(\n 'EmojiDizzy',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiDizzyFill = /*#__PURE__*/ makeIcon(\n 'EmojiDizzyFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiExpressionless = /*#__PURE__*/ makeIcon(\n 'EmojiExpressionless',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiExpressionlessFill = /*#__PURE__*/ makeIcon(\n 'EmojiExpressionlessFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiFrown = /*#__PURE__*/ makeIcon(\n 'EmojiFrown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiFrownFill = /*#__PURE__*/ makeIcon(\n 'EmojiFrownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiHeartEyes = /*#__PURE__*/ makeIcon(\n 'EmojiHeartEyes',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiHeartEyesFill = /*#__PURE__*/ makeIcon(\n 'EmojiHeartEyesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiLaughing = /*#__PURE__*/ makeIcon(\n 'EmojiLaughing',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiLaughingFill = /*#__PURE__*/ makeIcon(\n 'EmojiLaughingFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutral = /*#__PURE__*/ makeIcon(\n 'EmojiNeutral',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiNeutralFill = /*#__PURE__*/ makeIcon(\n 'EmojiNeutralFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmile = /*#__PURE__*/ makeIcon(\n 'EmojiSmile',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileFill = /*#__PURE__*/ makeIcon(\n 'EmojiSmileFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileUpsideDown = /*#__PURE__*/ makeIcon(\n 'EmojiSmileUpsideDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSmileUpsideDownFill = /*#__PURE__*/ makeIcon(\n 'EmojiSmileUpsideDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglasses = /*#__PURE__*/ makeIcon(\n 'EmojiSunglasses',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiSunglassesFill = /*#__PURE__*/ makeIcon(\n 'EmojiSunglassesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiWink = /*#__PURE__*/ makeIcon(\n 'EmojiWink',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEmojiWinkFill = /*#__PURE__*/ makeIcon(\n 'EmojiWinkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelope = /*#__PURE__*/ makeIcon(\n 'Envelope',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeFill = /*#__PURE__*/ makeIcon(\n 'EnvelopeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeOpen = /*#__PURE__*/ makeIcon(\n 'EnvelopeOpen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEnvelopeOpenFill = /*#__PURE__*/ makeIcon(\n 'EnvelopeOpenFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamation = /*#__PURE__*/ makeIcon(\n 'Exclamation',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationCircle = /*#__PURE__*/ makeIcon(\n 'ExclamationCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationCircleFill = /*#__PURE__*/ makeIcon(\n 'ExclamationCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationDiamond = /*#__PURE__*/ makeIcon(\n 'ExclamationDiamond',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationDiamondFill = /*#__PURE__*/ makeIcon(\n 'ExclamationDiamondFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationOctagon = /*#__PURE__*/ makeIcon(\n 'ExclamationOctagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationOctagonFill = /*#__PURE__*/ makeIcon(\n 'ExclamationOctagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationSquare = /*#__PURE__*/ makeIcon(\n 'ExclamationSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationSquareFill = /*#__PURE__*/ makeIcon(\n 'ExclamationSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationTriangle = /*#__PURE__*/ makeIcon(\n 'ExclamationTriangle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclamationTriangleFill = /*#__PURE__*/ makeIcon(\n 'ExclamationTriangleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconExclude = /*#__PURE__*/ makeIcon(\n 'Exclude',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEye = /*#__PURE__*/ makeIcon(\n 'Eye',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEyeFill = /*#__PURE__*/ makeIcon(\n 'EyeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEyeSlash = /*#__PURE__*/ makeIcon(\n 'EyeSlash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEyeSlashFill = /*#__PURE__*/ makeIcon(\n 'EyeSlashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconEyeglasses = /*#__PURE__*/ makeIcon(\n 'Eyeglasses',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFacebook = /*#__PURE__*/ makeIcon(\n 'Facebook',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFile = /*#__PURE__*/ makeIcon(\n 'File',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDown = /*#__PURE__*/ makeIcon(\n 'FileArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowDownFill = /*#__PURE__*/ makeIcon(\n 'FileArrowDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowUp = /*#__PURE__*/ makeIcon(\n 'FileArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileArrowUpFill = /*#__PURE__*/ makeIcon(\n 'FileArrowUpFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraph = /*#__PURE__*/ makeIcon(\n 'FileBarGraph',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBarGraphFill = /*#__PURE__*/ makeIcon(\n 'FileBarGraphFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBinary = /*#__PURE__*/ makeIcon(\n 'FileBinary',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBinaryFill = /*#__PURE__*/ makeIcon(\n 'FileBinaryFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBreak = /*#__PURE__*/ makeIcon(\n 'FileBreak',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileBreakFill = /*#__PURE__*/ makeIcon(\n 'FileBreakFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheck = /*#__PURE__*/ makeIcon(\n 'FileCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileCheckFill = /*#__PURE__*/ makeIcon(\n 'FileCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileCode = /*#__PURE__*/ makeIcon(\n 'FileCode',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileCodeFill = /*#__PURE__*/ makeIcon(\n 'FileCodeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiff = /*#__PURE__*/ makeIcon(\n 'FileDiff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileDiffFill = /*#__PURE__*/ makeIcon(\n 'FileDiffFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmark = /*#__PURE__*/ makeIcon(\n 'FileEarmark',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDown = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowDownFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUp = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkArrowUpFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkArrowUpFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBarGraph = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBarGraph',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBarGraphFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBarGraphFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBinary = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBinary',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBinaryFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBinaryFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBreak = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBreak',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkBreakFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkBreakFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheck = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCheckFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCode = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCode',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkCodeFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkCodeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiff = /*#__PURE__*/ makeIcon(\n 'FileEarmarkDiff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkDiffFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkDiffFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkEasel = /*#__PURE__*/ makeIcon(\n 'FileEarmarkEasel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkEaselFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkEaselFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcel = /*#__PURE__*/ makeIcon(\n 'FileEarmarkExcel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkExcelFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkExcelFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFont = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFont',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkFontFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFontFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkImage = /*#__PURE__*/ makeIcon(\n 'FileEarmarkImage',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkImageFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkImageFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2 = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLock2Fill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLock2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkLockFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkLockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMedical = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMedical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMedicalFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMedicalFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinus = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMinusFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusic = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMusic',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkMusicFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkMusicFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPerson = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPerson',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPersonFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPersonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlay = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlay',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlayFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlus = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPlusFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPost = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPost',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPostFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPostFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPpt = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPpt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkPptFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkPptFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRichtext = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRichtext',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRichtextFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRichtextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuled = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRuled',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkRuledFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkRuledFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlides = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSlides',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSlidesFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSlidesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheet = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSpreadsheet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkSpreadsheetFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkSpreadsheetFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkText = /*#__PURE__*/ makeIcon(\n 'FileEarmarkText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkTextFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWord = /*#__PURE__*/ makeIcon(\n 'FileEarmarkWord',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkWordFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkWordFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkX = /*#__PURE__*/ makeIcon(\n 'FileEarmarkX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkXFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZip = /*#__PURE__*/ makeIcon(\n 'FileEarmarkZip',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEarmarkZipFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkZipFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEasel = /*#__PURE__*/ makeIcon(\n 'FileEasel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileEaselFill = /*#__PURE__*/ makeIcon(\n 'FileEaselFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcel = /*#__PURE__*/ makeIcon(\n 'FileExcel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileExcelFill = /*#__PURE__*/ makeIcon(\n 'FileExcelFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileFill = /*#__PURE__*/ makeIcon(\n 'FileFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileFont = /*#__PURE__*/ makeIcon(\n 'FileFont',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileFontFill = /*#__PURE__*/ makeIcon(\n 'FileFontFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileImage = /*#__PURE__*/ makeIcon(\n 'FileImage',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileImageFill = /*#__PURE__*/ makeIcon(\n 'FileImageFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock = /*#__PURE__*/ makeIcon(\n 'FileLock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2 = /*#__PURE__*/ makeIcon(\n 'FileLock2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileLock2Fill = /*#__PURE__*/ makeIcon(\n 'FileLock2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileLockFill = /*#__PURE__*/ makeIcon(\n 'FileLockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMedical = /*#__PURE__*/ makeIcon(\n 'FileMedical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMedicalFill = /*#__PURE__*/ makeIcon(\n 'FileMedicalFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinus = /*#__PURE__*/ makeIcon(\n 'FileMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMinusFill = /*#__PURE__*/ makeIcon(\n 'FileMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusic = /*#__PURE__*/ makeIcon(\n 'FileMusic',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileMusicFill = /*#__PURE__*/ makeIcon(\n 'FileMusicFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePerson = /*#__PURE__*/ makeIcon(\n 'FilePerson',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePersonFill = /*#__PURE__*/ makeIcon(\n 'FilePersonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlay = /*#__PURE__*/ makeIcon(\n 'FilePlay',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlayFill = /*#__PURE__*/ makeIcon(\n 'FilePlayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlus = /*#__PURE__*/ makeIcon(\n 'FilePlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePlusFill = /*#__PURE__*/ makeIcon(\n 'FilePlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePost = /*#__PURE__*/ makeIcon(\n 'FilePost',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePostFill = /*#__PURE__*/ makeIcon(\n 'FilePostFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePpt = /*#__PURE__*/ makeIcon(\n 'FilePpt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilePptFill = /*#__PURE__*/ makeIcon(\n 'FilePptFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtext = /*#__PURE__*/ makeIcon(\n 'FileRichtext',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileRichtextFill = /*#__PURE__*/ makeIcon(\n 'FileRichtextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileRuled = /*#__PURE__*/ makeIcon(\n 'FileRuled',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileRuledFill = /*#__PURE__*/ makeIcon(\n 'FileRuledFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileSlides = /*#__PURE__*/ makeIcon(\n 'FileSlides',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileSlidesFill = /*#__PURE__*/ makeIcon(\n 'FileSlidesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileSpreadsheet = /*#__PURE__*/ makeIcon(\n 'FileSpreadsheet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileSpreadsheetFill = /*#__PURE__*/ makeIcon(\n 'FileSpreadsheetFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileText = /*#__PURE__*/ makeIcon(\n 'FileText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileTextFill = /*#__PURE__*/ makeIcon(\n 'FileTextFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileWord = /*#__PURE__*/ makeIcon(\n 'FileWord',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileWordFill = /*#__PURE__*/ makeIcon(\n 'FileWordFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileX = /*#__PURE__*/ makeIcon(\n 'FileX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileXFill = /*#__PURE__*/ makeIcon(\n 'FileXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileZip = /*#__PURE__*/ makeIcon(\n 'FileZip',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFileZipFill = /*#__PURE__*/ makeIcon(\n 'FileZipFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFiles = /*#__PURE__*/ makeIcon(\n 'Files',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilesAlt = /*#__PURE__*/ makeIcon(\n 'FilesAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilm = /*#__PURE__*/ makeIcon(\n 'Film',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilter = /*#__PURE__*/ makeIcon(\n 'Filter',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterCircle = /*#__PURE__*/ makeIcon(\n 'FilterCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterCircleFill = /*#__PURE__*/ makeIcon(\n 'FilterCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterLeft = /*#__PURE__*/ makeIcon(\n 'FilterLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterRight = /*#__PURE__*/ makeIcon(\n 'FilterRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterSquare = /*#__PURE__*/ makeIcon(\n 'FilterSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFilterSquareFill = /*#__PURE__*/ makeIcon(\n 'FilterSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFlag = /*#__PURE__*/ makeIcon(\n 'Flag',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFlagFill = /*#__PURE__*/ makeIcon(\n 'FlagFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFlower1 = /*#__PURE__*/ makeIcon(\n 'Flower1',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFlower2 = /*#__PURE__*/ makeIcon(\n 'Flower2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFlower3 = /*#__PURE__*/ makeIcon(\n 'Flower3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolder = /*#__PURE__*/ makeIcon(\n 'Folder',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolder2 = /*#__PURE__*/ makeIcon(\n 'Folder2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolder2Open = /*#__PURE__*/ makeIcon(\n 'Folder2Open',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderCheck = /*#__PURE__*/ makeIcon(\n 'FolderCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderFill = /*#__PURE__*/ makeIcon(\n 'FolderFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderMinus = /*#__PURE__*/ makeIcon(\n 'FolderMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderPlus = /*#__PURE__*/ makeIcon(\n 'FolderPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderSymlink = /*#__PURE__*/ makeIcon(\n 'FolderSymlink',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderSymlinkFill = /*#__PURE__*/ makeIcon(\n 'FolderSymlinkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFolderX = /*#__PURE__*/ makeIcon(\n 'FolderX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFonts = /*#__PURE__*/ makeIcon(\n 'Fonts',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconForward = /*#__PURE__*/ makeIcon(\n 'Forward',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconForwardFill = /*#__PURE__*/ makeIcon(\n 'ForwardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFront = /*#__PURE__*/ makeIcon(\n 'Front',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFullscreen = /*#__PURE__*/ makeIcon(\n 'Fullscreen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFullscreenExit = /*#__PURE__*/ makeIcon(\n 'FullscreenExit',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFunnel = /*#__PURE__*/ makeIcon(\n 'Funnel',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconFunnelFill = /*#__PURE__*/ makeIcon(\n 'FunnelFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGear = /*#__PURE__*/ makeIcon(\n 'Gear',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGearFill = /*#__PURE__*/ makeIcon(\n 'GearFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGearWide = /*#__PURE__*/ makeIcon(\n 'GearWide',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGearWideConnected = /*#__PURE__*/ makeIcon(\n 'GearWideConnected',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGem = /*#__PURE__*/ makeIcon(\n 'Gem',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGeo = /*#__PURE__*/ makeIcon(\n 'Geo',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGeoAlt = /*#__PURE__*/ makeIcon(\n 'GeoAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGeoAltFill = /*#__PURE__*/ makeIcon(\n 'GeoAltFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGeoFill = /*#__PURE__*/ makeIcon(\n 'GeoFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGift = /*#__PURE__*/ makeIcon(\n 'Gift',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGiftFill = /*#__PURE__*/ makeIcon(\n 'GiftFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGithub = /*#__PURE__*/ makeIcon(\n 'Github',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe = /*#__PURE__*/ makeIcon(\n 'Globe',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGlobe2 = /*#__PURE__*/ makeIcon(\n 'Globe2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGoogle = /*#__PURE__*/ makeIcon(\n 'Google',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGraphDown = /*#__PURE__*/ makeIcon(\n 'GraphDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGraphUp = /*#__PURE__*/ makeIcon(\n 'GraphUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid = /*#__PURE__*/ makeIcon(\n 'Grid',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid1x2 = /*#__PURE__*/ makeIcon(\n 'Grid1x2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid1x2Fill = /*#__PURE__*/ makeIcon(\n 'Grid1x2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2 = /*#__PURE__*/ makeIcon(\n 'Grid3x2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2Gap = /*#__PURE__*/ makeIcon(\n 'Grid3x2Gap',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x2GapFill = /*#__PURE__*/ makeIcon(\n 'Grid3x2GapFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3 = /*#__PURE__*/ makeIcon(\n 'Grid3x3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3Gap = /*#__PURE__*/ makeIcon(\n 'Grid3x3Gap',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGrid3x3GapFill = /*#__PURE__*/ makeIcon(\n 'Grid3x3GapFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGridFill = /*#__PURE__*/ makeIcon(\n 'GridFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGripHorizontal = /*#__PURE__*/ makeIcon(\n 'GripHorizontal',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconGripVertical = /*#__PURE__*/ makeIcon(\n 'GripVertical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHammer = /*#__PURE__*/ makeIcon(\n 'Hammer',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndex = /*#__PURE__*/ makeIcon(\n 'HandIndex',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandIndexThumb = /*#__PURE__*/ makeIcon(\n 'HandIndexThumb',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsDown = /*#__PURE__*/ makeIcon(\n 'HandThumbsDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandThumbsUp = /*#__PURE__*/ makeIcon(\n 'HandThumbsUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandbag = /*#__PURE__*/ makeIcon(\n 'Handbag',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHandbagFill = /*#__PURE__*/ makeIcon(\n 'HandbagFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHash = /*#__PURE__*/ makeIcon(\n 'Hash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHdd = /*#__PURE__*/ makeIcon(\n 'Hdd',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddFill = /*#__PURE__*/ makeIcon(\n 'HddFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddNetwork = /*#__PURE__*/ makeIcon(\n 'HddNetwork',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddNetworkFill = /*#__PURE__*/ makeIcon(\n 'HddNetworkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddRack = /*#__PURE__*/ makeIcon(\n 'HddRack',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddRackFill = /*#__PURE__*/ makeIcon(\n 'HddRackFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddStack = /*#__PURE__*/ makeIcon(\n 'HddStack',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHddStackFill = /*#__PURE__*/ makeIcon(\n 'HddStackFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeadphones = /*#__PURE__*/ makeIcon(\n 'Headphones',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeadset = /*#__PURE__*/ makeIcon(\n 'Headset',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeart = /*#__PURE__*/ makeIcon(\n 'Heart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeartFill = /*#__PURE__*/ makeIcon(\n 'HeartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeartHalf = /*#__PURE__*/ makeIcon(\n 'HeartHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagon = /*#__PURE__*/ makeIcon(\n 'Heptagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagonFill = /*#__PURE__*/ makeIcon(\n 'HeptagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHeptagonHalf = /*#__PURE__*/ makeIcon(\n 'HeptagonHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHexagon = /*#__PURE__*/ makeIcon(\n 'Hexagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHexagonFill = /*#__PURE__*/ makeIcon(\n 'HexagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHexagonHalf = /*#__PURE__*/ makeIcon(\n 'HexagonHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHourglass = /*#__PURE__*/ makeIcon(\n 'Hourglass',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassBottom = /*#__PURE__*/ makeIcon(\n 'HourglassBottom',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassSplit = /*#__PURE__*/ makeIcon(\n 'HourglassSplit',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHourglassTop = /*#__PURE__*/ makeIcon(\n 'HourglassTop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHouse = /*#__PURE__*/ makeIcon(\n 'House',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHouseDoor = /*#__PURE__*/ makeIcon(\n 'HouseDoor',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHouseDoorFill = /*#__PURE__*/ makeIcon(\n 'HouseDoorFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHouseFill = /*#__PURE__*/ makeIcon(\n 'HouseFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconHr = /*#__PURE__*/ makeIcon(\n 'Hr',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconImage = /*#__PURE__*/ makeIcon(\n 'Image',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconImageAlt = /*#__PURE__*/ makeIcon(\n 'ImageAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconImageFill = /*#__PURE__*/ makeIcon(\n 'ImageFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconImages = /*#__PURE__*/ makeIcon(\n 'Images',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInbox = /*#__PURE__*/ makeIcon(\n 'Inbox',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInboxFill = /*#__PURE__*/ makeIcon(\n 'InboxFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInboxes = /*#__PURE__*/ makeIcon(\n 'Inboxes',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInboxesFill = /*#__PURE__*/ makeIcon(\n 'InboxesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInfo = /*#__PURE__*/ makeIcon(\n 'Info',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircle = /*#__PURE__*/ makeIcon(\n 'InfoCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInfoCircleFill = /*#__PURE__*/ makeIcon(\n 'InfoCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquare = /*#__PURE__*/ makeIcon(\n 'InfoSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInfoSquareFill = /*#__PURE__*/ makeIcon(\n 'InfoSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursor = /*#__PURE__*/ makeIcon(\n 'InputCursor',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInputCursorText = /*#__PURE__*/ makeIcon(\n 'InputCursorText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconInstagram = /*#__PURE__*/ makeIcon(\n 'Instagram',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconIntersect = /*#__PURE__*/ makeIcon(\n 'Intersect',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournal = /*#__PURE__*/ makeIcon(\n 'Journal',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalAlbum = /*#__PURE__*/ makeIcon(\n 'JournalAlbum',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalArrowDown = /*#__PURE__*/ makeIcon(\n 'JournalArrowDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalArrowUp = /*#__PURE__*/ makeIcon(\n 'JournalArrowUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalBookmark = /*#__PURE__*/ makeIcon(\n 'JournalBookmark',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalBookmarkFill = /*#__PURE__*/ makeIcon(\n 'JournalBookmarkFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalCheck = /*#__PURE__*/ makeIcon(\n 'JournalCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalCode = /*#__PURE__*/ makeIcon(\n 'JournalCode',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalMedical = /*#__PURE__*/ makeIcon(\n 'JournalMedical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalMinus = /*#__PURE__*/ makeIcon(\n 'JournalMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalPlus = /*#__PURE__*/ makeIcon(\n 'JournalPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalRichtext = /*#__PURE__*/ makeIcon(\n 'JournalRichtext',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalText = /*#__PURE__*/ makeIcon(\n 'JournalText',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournalX = /*#__PURE__*/ makeIcon(\n 'JournalX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJournals = /*#__PURE__*/ makeIcon(\n 'Journals',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJoystick = /*#__PURE__*/ makeIcon(\n 'Joystick',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJustify = /*#__PURE__*/ makeIcon(\n 'Justify',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJustifyLeft = /*#__PURE__*/ makeIcon(\n 'JustifyLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconJustifyRight = /*#__PURE__*/ makeIcon(\n 'JustifyRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKanban = /*#__PURE__*/ makeIcon(\n 'Kanban',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKanbanFill = /*#__PURE__*/ makeIcon(\n 'KanbanFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKey = /*#__PURE__*/ makeIcon(\n 'Key',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKeyFill = /*#__PURE__*/ makeIcon(\n 'KeyFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKeyboard = /*#__PURE__*/ makeIcon(\n 'Keyboard',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconKeyboardFill = /*#__PURE__*/ makeIcon(\n 'KeyboardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLadder = /*#__PURE__*/ makeIcon(\n 'Ladder',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLamp = /*#__PURE__*/ makeIcon(\n 'Lamp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLampFill = /*#__PURE__*/ makeIcon(\n 'LampFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLaptop = /*#__PURE__*/ makeIcon(\n 'Laptop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLaptopFill = /*#__PURE__*/ makeIcon(\n 'LaptopFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayers = /*#__PURE__*/ makeIcon(\n 'Layers',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayersFill = /*#__PURE__*/ makeIcon(\n 'LayersFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayersHalf = /*#__PURE__*/ makeIcon(\n 'LayersHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebar = /*#__PURE__*/ makeIcon(\n 'LayoutSidebar',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarInset = /*#__PURE__*/ makeIcon(\n 'LayoutSidebarInset',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarInsetReverse = /*#__PURE__*/ makeIcon(\n 'LayoutSidebarInsetReverse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSidebarReverse = /*#__PURE__*/ makeIcon(\n 'LayoutSidebarReverse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutSplit = /*#__PURE__*/ makeIcon(\n 'LayoutSplit',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebar = /*#__PURE__*/ makeIcon(\n 'LayoutTextSidebar',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextSidebarReverse = /*#__PURE__*/ makeIcon(\n 'LayoutTextSidebarReverse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindow = /*#__PURE__*/ makeIcon(\n 'LayoutTextWindow',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutTextWindowReverse = /*#__PURE__*/ makeIcon(\n 'LayoutTextWindowReverse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutThreeColumns = /*#__PURE__*/ makeIcon(\n 'LayoutThreeColumns',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLayoutWtf = /*#__PURE__*/ makeIcon(\n 'LayoutWtf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLifePreserver = /*#__PURE__*/ makeIcon(\n 'LifePreserver',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLightning = /*#__PURE__*/ makeIcon(\n 'Lightning',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLightningFill = /*#__PURE__*/ makeIcon(\n 'LightningFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLink = /*#__PURE__*/ makeIcon(\n 'Link',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLink45deg = /*#__PURE__*/ makeIcon(\n 'Link45deg',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLinkedin = /*#__PURE__*/ makeIcon(\n 'Linkedin',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconList = /*#__PURE__*/ makeIcon(\n 'List',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListCheck = /*#__PURE__*/ makeIcon(\n 'ListCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListNested = /*#__PURE__*/ makeIcon(\n 'ListNested',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListOl = /*#__PURE__*/ makeIcon(\n 'ListOl',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListStars = /*#__PURE__*/ makeIcon(\n 'ListStars',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListTask = /*#__PURE__*/ makeIcon(\n 'ListTask',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconListUl = /*#__PURE__*/ makeIcon(\n 'ListUl',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLock = /*#__PURE__*/ makeIcon(\n 'Lock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconLockFill = /*#__PURE__*/ makeIcon(\n 'LockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMailbox = /*#__PURE__*/ makeIcon(\n 'Mailbox',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMailbox2 = /*#__PURE__*/ makeIcon(\n 'Mailbox2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMap = /*#__PURE__*/ makeIcon(\n 'Map',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMapFill = /*#__PURE__*/ makeIcon(\n 'MapFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMarkdown = /*#__PURE__*/ makeIcon(\n 'Markdown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMarkdownFill = /*#__PURE__*/ makeIcon(\n 'MarkdownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuApp = /*#__PURE__*/ makeIcon(\n 'MenuApp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuAppFill = /*#__PURE__*/ makeIcon(\n 'MenuAppFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButton = /*#__PURE__*/ makeIcon(\n 'MenuButton',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonFill = /*#__PURE__*/ makeIcon(\n 'MenuButtonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonWide = /*#__PURE__*/ makeIcon(\n 'MenuButtonWide',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuButtonWideFill = /*#__PURE__*/ makeIcon(\n 'MenuButtonWideFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuDown = /*#__PURE__*/ makeIcon(\n 'MenuDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMenuUp = /*#__PURE__*/ makeIcon(\n 'MenuUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMic = /*#__PURE__*/ makeIcon(\n 'Mic',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMicFill = /*#__PURE__*/ makeIcon(\n 'MicFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMicMute = /*#__PURE__*/ makeIcon(\n 'MicMute',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMicMuteFill = /*#__PURE__*/ makeIcon(\n 'MicMuteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMinecart = /*#__PURE__*/ makeIcon(\n 'Minecart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMinecartLoaded = /*#__PURE__*/ makeIcon(\n 'MinecartLoaded',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMoon = /*#__PURE__*/ makeIcon(\n 'Moon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMouse = /*#__PURE__*/ makeIcon(\n 'Mouse',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMouse2 = /*#__PURE__*/ makeIcon(\n 'Mouse2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMouse3 = /*#__PURE__*/ makeIcon(\n 'Mouse3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNote = /*#__PURE__*/ makeIcon(\n 'MusicNote',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNoteBeamed = /*#__PURE__*/ makeIcon(\n 'MusicNoteBeamed',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMusicNoteList = /*#__PURE__*/ makeIcon(\n 'MusicNoteList',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMusicPlayer = /*#__PURE__*/ makeIcon(\n 'MusicPlayer',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconMusicPlayerFill = /*#__PURE__*/ makeIcon(\n 'MusicPlayerFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNewspaper = /*#__PURE__*/ makeIcon(\n 'Newspaper',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNodeMinus = /*#__PURE__*/ makeIcon(\n 'NodeMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNodeMinusFill = /*#__PURE__*/ makeIcon(\n 'NodeMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNodePlus = /*#__PURE__*/ makeIcon(\n 'NodePlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNodePlusFill = /*#__PURE__*/ makeIcon(\n 'NodePlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNut = /*#__PURE__*/ makeIcon(\n 'Nut',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconNutFill = /*#__PURE__*/ makeIcon(\n 'NutFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconOctagon = /*#__PURE__*/ makeIcon(\n 'Octagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconOctagonFill = /*#__PURE__*/ makeIcon(\n 'OctagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconOctagonHalf = /*#__PURE__*/ makeIcon(\n 'OctagonHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconOption = /*#__PURE__*/ makeIcon(\n 'Option',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconOutlet = /*#__PURE__*/ makeIcon(\n 'Outlet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPaperclip = /*#__PURE__*/ makeIcon(\n 'Paperclip',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconParagraph = /*#__PURE__*/ makeIcon(\n 'Paragraph',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchCheck = /*#__PURE__*/ makeIcon(\n 'PatchCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchCheckFill = /*#__PURE__*/ makeIcon(\n 'PatchCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchExclamation = /*#__PURE__*/ makeIcon(\n 'PatchExclamation',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchExclamationFill = /*#__PURE__*/ makeIcon(\n 'PatchExclamationFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchMinus = /*#__PURE__*/ makeIcon(\n 'PatchMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchMinusFill = /*#__PURE__*/ makeIcon(\n 'PatchMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchPlus = /*#__PURE__*/ makeIcon(\n 'PatchPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchPlusFill = /*#__PURE__*/ makeIcon(\n 'PatchPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestion = /*#__PURE__*/ makeIcon(\n 'PatchQuestion',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPatchQuestionFill = /*#__PURE__*/ makeIcon(\n 'PatchQuestionFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPause = /*#__PURE__*/ makeIcon(\n 'Pause',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtn = /*#__PURE__*/ makeIcon(\n 'PauseBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPauseBtnFill = /*#__PURE__*/ makeIcon(\n 'PauseBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircle = /*#__PURE__*/ makeIcon(\n 'PauseCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPauseCircleFill = /*#__PURE__*/ makeIcon(\n 'PauseCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPauseFill = /*#__PURE__*/ makeIcon(\n 'PauseFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPeace = /*#__PURE__*/ makeIcon(\n 'Peace',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPeaceFill = /*#__PURE__*/ makeIcon(\n 'PeaceFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPen = /*#__PURE__*/ makeIcon(\n 'Pen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPenFill = /*#__PURE__*/ makeIcon(\n 'PenFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPencil = /*#__PURE__*/ makeIcon(\n 'Pencil',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPencilFill = /*#__PURE__*/ makeIcon(\n 'PencilFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPencilSquare = /*#__PURE__*/ makeIcon(\n 'PencilSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPentagon = /*#__PURE__*/ makeIcon(\n 'Pentagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPentagonFill = /*#__PURE__*/ makeIcon(\n 'PentagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPentagonHalf = /*#__PURE__*/ makeIcon(\n 'PentagonHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPeople = /*#__PURE__*/ makeIcon(\n 'People',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPeopleFill = /*#__PURE__*/ makeIcon(\n 'PeopleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPercent = /*#__PURE__*/ makeIcon(\n 'Percent',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPerson = /*#__PURE__*/ makeIcon(\n 'Person',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBadge = /*#__PURE__*/ makeIcon(\n 'PersonBadge',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBadgeFill = /*#__PURE__*/ makeIcon(\n 'PersonBadgeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonBoundingBox = /*#__PURE__*/ makeIcon(\n 'PersonBoundingBox',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCheck = /*#__PURE__*/ makeIcon(\n 'PersonCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCheckFill = /*#__PURE__*/ makeIcon(\n 'PersonCheckFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonCircle = /*#__PURE__*/ makeIcon(\n 'PersonCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonDash = /*#__PURE__*/ makeIcon(\n 'PersonDash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonDashFill = /*#__PURE__*/ makeIcon(\n 'PersonDashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonFill = /*#__PURE__*/ makeIcon(\n 'PersonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonLinesFill = /*#__PURE__*/ makeIcon(\n 'PersonLinesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonPlus = /*#__PURE__*/ makeIcon(\n 'PersonPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonPlusFill = /*#__PURE__*/ makeIcon(\n 'PersonPlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonSquare = /*#__PURE__*/ makeIcon(\n 'PersonSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonX = /*#__PURE__*/ makeIcon(\n 'PersonX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPersonXFill = /*#__PURE__*/ makeIcon(\n 'PersonXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPhone = /*#__PURE__*/ makeIcon(\n 'Phone',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneFill = /*#__PURE__*/ makeIcon(\n 'PhoneFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneLandscape = /*#__PURE__*/ makeIcon(\n 'PhoneLandscape',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneLandscapeFill = /*#__PURE__*/ makeIcon(\n 'PhoneLandscapeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPhoneVibrate = /*#__PURE__*/ makeIcon(\n 'PhoneVibrate',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPieChart = /*#__PURE__*/ makeIcon(\n 'PieChart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPieChartFill = /*#__PURE__*/ makeIcon(\n 'PieChartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPip = /*#__PURE__*/ makeIcon(\n 'Pip',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPipFill = /*#__PURE__*/ makeIcon(\n 'PipFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlay = /*#__PURE__*/ makeIcon(\n 'Play',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtn = /*#__PURE__*/ makeIcon(\n 'PlayBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlayBtnFill = /*#__PURE__*/ makeIcon(\n 'PlayBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircle = /*#__PURE__*/ makeIcon(\n 'PlayCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlayCircleFill = /*#__PURE__*/ makeIcon(\n 'PlayCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlayFill = /*#__PURE__*/ makeIcon(\n 'PlayFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlug = /*#__PURE__*/ makeIcon(\n 'Plug',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlugFill = /*#__PURE__*/ makeIcon(\n 'PlugFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlus = /*#__PURE__*/ makeIcon(\n 'Plus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlusCircle = /*#__PURE__*/ makeIcon(\n 'PlusCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlusCircleFill = /*#__PURE__*/ makeIcon(\n 'PlusCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlusSquare = /*#__PURE__*/ makeIcon(\n 'PlusSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPlusSquareFill = /*#__PURE__*/ makeIcon(\n 'PlusSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPower = /*#__PURE__*/ makeIcon(\n 'Power',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPrinter = /*#__PURE__*/ makeIcon(\n 'Printer',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPrinterFill = /*#__PURE__*/ makeIcon(\n 'PrinterFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPuzzle = /*#__PURE__*/ makeIcon(\n 'Puzzle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconPuzzleFill = /*#__PURE__*/ makeIcon(\n 'PuzzleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestion = /*#__PURE__*/ makeIcon(\n 'Question',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionCircle = /*#__PURE__*/ makeIcon(\n 'QuestionCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionCircleFill = /*#__PURE__*/ makeIcon(\n 'QuestionCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionDiamond = /*#__PURE__*/ makeIcon(\n 'QuestionDiamond',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionDiamondFill = /*#__PURE__*/ makeIcon(\n 'QuestionDiamondFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionOctagon = /*#__PURE__*/ makeIcon(\n 'QuestionOctagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionOctagonFill = /*#__PURE__*/ makeIcon(\n 'QuestionOctagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionSquare = /*#__PURE__*/ makeIcon(\n 'QuestionSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconQuestionSquareFill = /*#__PURE__*/ makeIcon(\n 'QuestionSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReceipt = /*#__PURE__*/ makeIcon(\n 'Receipt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReceiptCutoff = /*#__PURE__*/ makeIcon(\n 'ReceiptCutoff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReception0 = /*#__PURE__*/ makeIcon(\n 'Reception0',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReception1 = /*#__PURE__*/ makeIcon(\n 'Reception1',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReception2 = /*#__PURE__*/ makeIcon(\n 'Reception2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReception3 = /*#__PURE__*/ makeIcon(\n 'Reception3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReception4 = /*#__PURE__*/ makeIcon(\n 'Reception4',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecord = /*#__PURE__*/ makeIcon(\n 'Record',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2 = /*#__PURE__*/ makeIcon(\n 'Record2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecord2Fill = /*#__PURE__*/ makeIcon(\n 'Record2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtn = /*#__PURE__*/ makeIcon(\n 'RecordBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecordBtnFill = /*#__PURE__*/ makeIcon(\n 'RecordBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircle = /*#__PURE__*/ makeIcon(\n 'RecordCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecordCircleFill = /*#__PURE__*/ makeIcon(\n 'RecordCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRecordFill = /*#__PURE__*/ makeIcon(\n 'RecordFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReply = /*#__PURE__*/ makeIcon(\n 'Reply',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAll = /*#__PURE__*/ makeIcon(\n 'ReplyAll',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReplyAllFill = /*#__PURE__*/ makeIcon(\n 'ReplyAllFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconReplyFill = /*#__PURE__*/ makeIcon(\n 'ReplyFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRss = /*#__PURE__*/ makeIcon(\n 'Rss',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconRssFill = /*#__PURE__*/ makeIcon(\n 'RssFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconScissors = /*#__PURE__*/ makeIcon(\n 'Scissors',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconScrewdriver = /*#__PURE__*/ makeIcon(\n 'Screwdriver',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSearch = /*#__PURE__*/ makeIcon(\n 'Search',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSegmentedNav = /*#__PURE__*/ makeIcon(\n 'SegmentedNav',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconServer = /*#__PURE__*/ makeIcon(\n 'Server',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShare = /*#__PURE__*/ makeIcon(\n 'Share',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShareFill = /*#__PURE__*/ makeIcon(\n 'ShareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShield = /*#__PURE__*/ makeIcon(\n 'Shield',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldCheck = /*#__PURE__*/ makeIcon(\n 'ShieldCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldExclamation = /*#__PURE__*/ makeIcon(\n 'ShieldExclamation',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFill = /*#__PURE__*/ makeIcon(\n 'ShieldFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillCheck = /*#__PURE__*/ makeIcon(\n 'ShieldFillCheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillExclamation = /*#__PURE__*/ makeIcon(\n 'ShieldFillExclamation',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillMinus = /*#__PURE__*/ makeIcon(\n 'ShieldFillMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillPlus = /*#__PURE__*/ makeIcon(\n 'ShieldFillPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldFillX = /*#__PURE__*/ makeIcon(\n 'ShieldFillX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldLock = /*#__PURE__*/ makeIcon(\n 'ShieldLock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldLockFill = /*#__PURE__*/ makeIcon(\n 'ShieldLockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldMinus = /*#__PURE__*/ makeIcon(\n 'ShieldMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldPlus = /*#__PURE__*/ makeIcon(\n 'ShieldPlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldShaded = /*#__PURE__*/ makeIcon(\n 'ShieldShaded',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlash = /*#__PURE__*/ makeIcon(\n 'ShieldSlash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldSlashFill = /*#__PURE__*/ makeIcon(\n 'ShieldSlashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShieldX = /*#__PURE__*/ makeIcon(\n 'ShieldX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShift = /*#__PURE__*/ makeIcon(\n 'Shift',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShiftFill = /*#__PURE__*/ makeIcon(\n 'ShiftFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShop = /*#__PURE__*/ makeIcon(\n 'Shop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShopWindow = /*#__PURE__*/ makeIcon(\n 'ShopWindow',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconShuffle = /*#__PURE__*/ makeIcon(\n 'Shuffle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost = /*#__PURE__*/ makeIcon(\n 'Signpost',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2 = /*#__PURE__*/ makeIcon(\n 'Signpost2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpost2Fill = /*#__PURE__*/ makeIcon(\n 'Signpost2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostFill = /*#__PURE__*/ makeIcon(\n 'SignpostFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostSplit = /*#__PURE__*/ makeIcon(\n 'SignpostSplit',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSignpostSplitFill = /*#__PURE__*/ makeIcon(\n 'SignpostSplitFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSim = /*#__PURE__*/ makeIcon(\n 'Sim',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSimFill = /*#__PURE__*/ makeIcon(\n 'SimFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackward = /*#__PURE__*/ makeIcon(\n 'SkipBackward',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtn = /*#__PURE__*/ makeIcon(\n 'SkipBackwardBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircle = /*#__PURE__*/ makeIcon(\n 'SkipBackwardCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipBackwardFill = /*#__PURE__*/ makeIcon(\n 'SkipBackwardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEnd = /*#__PURE__*/ makeIcon(\n 'SkipEnd',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtn = /*#__PURE__*/ makeIcon(\n 'SkipEndBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipEndBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircle = /*#__PURE__*/ makeIcon(\n 'SkipEndCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipEndCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipEndFill = /*#__PURE__*/ makeIcon(\n 'SkipEndFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForward = /*#__PURE__*/ makeIcon(\n 'SkipForward',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtn = /*#__PURE__*/ makeIcon(\n 'SkipForwardBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircle = /*#__PURE__*/ makeIcon(\n 'SkipForwardCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipForwardFill = /*#__PURE__*/ makeIcon(\n 'SkipForwardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStart = /*#__PURE__*/ makeIcon(\n 'SkipStart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtn = /*#__PURE__*/ makeIcon(\n 'SkipStartBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartBtnFill = /*#__PURE__*/ makeIcon(\n 'SkipStartBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircle = /*#__PURE__*/ makeIcon(\n 'SkipStartCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartCircleFill = /*#__PURE__*/ makeIcon(\n 'SkipStartCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSkipStartFill = /*#__PURE__*/ makeIcon(\n 'SkipStartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlack = /*#__PURE__*/ makeIcon(\n 'Slack',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlash = /*#__PURE__*/ makeIcon(\n 'Slash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlashCircle = /*#__PURE__*/ makeIcon(\n 'SlashCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlashCircleFill = /*#__PURE__*/ makeIcon(\n 'SlashCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlashSquare = /*#__PURE__*/ makeIcon(\n 'SlashSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSlashSquareFill = /*#__PURE__*/ makeIcon(\n 'SlashSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSliders = /*#__PURE__*/ makeIcon(\n 'Sliders',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSmartwatch = /*#__PURE__*/ makeIcon(\n 'Smartwatch',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDown = /*#__PURE__*/ makeIcon(\n 'SortAlphaDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaDownAlt = /*#__PURE__*/ makeIcon(\n 'SortAlphaDownAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUp = /*#__PURE__*/ makeIcon(\n 'SortAlphaUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortAlphaUpAlt = /*#__PURE__*/ makeIcon(\n 'SortAlphaUpAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortDown = /*#__PURE__*/ makeIcon(\n 'SortDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortDownAlt = /*#__PURE__*/ makeIcon(\n 'SortDownAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDown = /*#__PURE__*/ makeIcon(\n 'SortNumericDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericDownAlt = /*#__PURE__*/ makeIcon(\n 'SortNumericDownAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUp = /*#__PURE__*/ makeIcon(\n 'SortNumericUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortNumericUpAlt = /*#__PURE__*/ makeIcon(\n 'SortNumericUpAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortUp = /*#__PURE__*/ makeIcon(\n 'SortUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSortUpAlt = /*#__PURE__*/ makeIcon(\n 'SortUpAlt',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSoundwave = /*#__PURE__*/ makeIcon(\n 'Soundwave',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSpeaker = /*#__PURE__*/ makeIcon(\n 'Speaker',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSpeakerFill = /*#__PURE__*/ makeIcon(\n 'SpeakerFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSpellcheck = /*#__PURE__*/ makeIcon(\n 'Spellcheck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSquare = /*#__PURE__*/ makeIcon(\n 'Square',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSquareFill = /*#__PURE__*/ makeIcon(\n 'SquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSquareHalf = /*#__PURE__*/ makeIcon(\n 'SquareHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStar = /*#__PURE__*/ makeIcon(\n 'Star',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStarFill = /*#__PURE__*/ makeIcon(\n 'StarFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStarHalf = /*#__PURE__*/ makeIcon(\n 'StarHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStickies = /*#__PURE__*/ makeIcon(\n 'Stickies',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStickiesFill = /*#__PURE__*/ makeIcon(\n 'StickiesFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSticky = /*#__PURE__*/ makeIcon(\n 'Sticky',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStickyFill = /*#__PURE__*/ makeIcon(\n 'StickyFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStop = /*#__PURE__*/ makeIcon(\n 'Stop',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtn = /*#__PURE__*/ makeIcon(\n 'StopBtn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopBtnFill = /*#__PURE__*/ makeIcon(\n 'StopBtnFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircle = /*#__PURE__*/ makeIcon(\n 'StopCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopCircleFill = /*#__PURE__*/ makeIcon(\n 'StopCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopFill = /*#__PURE__*/ makeIcon(\n 'StopFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStoplights = /*#__PURE__*/ makeIcon(\n 'Stoplights',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStoplightsFill = /*#__PURE__*/ makeIcon(\n 'StoplightsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatch = /*#__PURE__*/ makeIcon(\n 'Stopwatch',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconStopwatchFill = /*#__PURE__*/ makeIcon(\n 'StopwatchFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSubtract = /*#__PURE__*/ makeIcon(\n 'Subtract',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitClub = /*#__PURE__*/ makeIcon(\n 'SuitClub',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitClubFill = /*#__PURE__*/ makeIcon(\n 'SuitClubFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitDiamond = /*#__PURE__*/ makeIcon(\n 'SuitDiamond',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitDiamondFill = /*#__PURE__*/ makeIcon(\n 'SuitDiamondFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitHeart = /*#__PURE__*/ makeIcon(\n 'SuitHeart',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitHeartFill = /*#__PURE__*/ makeIcon(\n 'SuitHeartFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitSpade = /*#__PURE__*/ makeIcon(\n 'SuitSpade',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSuitSpadeFill = /*#__PURE__*/ makeIcon(\n 'SuitSpadeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSun = /*#__PURE__*/ makeIcon(\n 'Sun',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconSunglasses = /*#__PURE__*/ makeIcon(\n 'Sunglasses',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTable = /*#__PURE__*/ makeIcon(\n 'Table',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTablet = /*#__PURE__*/ makeIcon(\n 'Tablet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTabletFill = /*#__PURE__*/ makeIcon(\n 'TabletFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTabletLandscape = /*#__PURE__*/ makeIcon(\n 'TabletLandscape',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTabletLandscapeFill = /*#__PURE__*/ makeIcon(\n 'TabletLandscapeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTag = /*#__PURE__*/ makeIcon(\n 'Tag',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTagFill = /*#__PURE__*/ makeIcon(\n 'TagFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTags = /*#__PURE__*/ makeIcon(\n 'Tags',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTagsFill = /*#__PURE__*/ makeIcon(\n 'TagsFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephone = /*#__PURE__*/ makeIcon(\n 'Telephone',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneFill = /*#__PURE__*/ makeIcon(\n 'TelephoneFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneForward = /*#__PURE__*/ makeIcon(\n 'TelephoneForward',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneForwardFill = /*#__PURE__*/ makeIcon(\n 'TelephoneForwardFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneInbound = /*#__PURE__*/ makeIcon(\n 'TelephoneInbound',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneInboundFill = /*#__PURE__*/ makeIcon(\n 'TelephoneInboundFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneMinus = /*#__PURE__*/ makeIcon(\n 'TelephoneMinus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneMinusFill = /*#__PURE__*/ makeIcon(\n 'TelephoneMinusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneOutbound = /*#__PURE__*/ makeIcon(\n 'TelephoneOutbound',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneOutboundFill = /*#__PURE__*/ makeIcon(\n 'TelephoneOutboundFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephonePlus = /*#__PURE__*/ makeIcon(\n 'TelephonePlus',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephonePlusFill = /*#__PURE__*/ makeIcon(\n 'TelephonePlusFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneX = /*#__PURE__*/ makeIcon(\n 'TelephoneX',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTelephoneXFill = /*#__PURE__*/ makeIcon(\n 'TelephoneXFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTerminal = /*#__PURE__*/ makeIcon(\n 'Terminal',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTerminalFill = /*#__PURE__*/ makeIcon(\n 'TerminalFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextCenter = /*#__PURE__*/ makeIcon(\n 'TextCenter',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextIndentLeft = /*#__PURE__*/ makeIcon(\n 'TextIndentLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextIndentRight = /*#__PURE__*/ makeIcon(\n 'TextIndentRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextLeft = /*#__PURE__*/ makeIcon(\n 'TextLeft',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextParagraph = /*#__PURE__*/ makeIcon(\n 'TextParagraph',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextRight = /*#__PURE__*/ makeIcon(\n 'TextRight',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextarea = /*#__PURE__*/ makeIcon(\n 'Textarea',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextareaResize = /*#__PURE__*/ makeIcon(\n 'TextareaResize',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTextareaT = /*#__PURE__*/ makeIcon(\n 'TextareaT',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconThermometer = /*#__PURE__*/ makeIcon(\n 'Thermometer',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconThermometerHalf = /*#__PURE__*/ makeIcon(\n 'ThermometerHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconThreeDots = /*#__PURE__*/ makeIcon(\n 'ThreeDots',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconThreeDotsVertical = /*#__PURE__*/ makeIcon(\n 'ThreeDotsVertical',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggle2Off = /*#__PURE__*/ makeIcon(\n 'Toggle2Off',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggle2On = /*#__PURE__*/ makeIcon(\n 'Toggle2On',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggleOff = /*#__PURE__*/ makeIcon(\n 'ToggleOff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggleOn = /*#__PURE__*/ makeIcon(\n 'ToggleOn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggles = /*#__PURE__*/ makeIcon(\n 'Toggles',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconToggles2 = /*#__PURE__*/ makeIcon(\n 'Toggles2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTools = /*#__PURE__*/ makeIcon(\n 'Tools',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrash = /*#__PURE__*/ makeIcon(\n 'Trash',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrash2 = /*#__PURE__*/ makeIcon(\n 'Trash2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrash2Fill = /*#__PURE__*/ makeIcon(\n 'Trash2Fill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrashFill = /*#__PURE__*/ makeIcon(\n 'TrashFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTree = /*#__PURE__*/ makeIcon(\n 'Tree',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTreeFill = /*#__PURE__*/ makeIcon(\n 'TreeFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTriangle = /*#__PURE__*/ makeIcon(\n 'Triangle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTriangleFill = /*#__PURE__*/ makeIcon(\n 'TriangleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTriangleHalf = /*#__PURE__*/ makeIcon(\n 'TriangleHalf',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrophy = /*#__PURE__*/ makeIcon(\n 'Trophy',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTrophyFill = /*#__PURE__*/ makeIcon(\n 'TrophyFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTruck = /*#__PURE__*/ makeIcon(\n 'Truck',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTruckFlatbed = /*#__PURE__*/ makeIcon(\n 'TruckFlatbed',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTv = /*#__PURE__*/ makeIcon(\n 'Tv',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTvFill = /*#__PURE__*/ makeIcon(\n 'TvFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTwitch = /*#__PURE__*/ makeIcon(\n 'Twitch',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTwitter = /*#__PURE__*/ makeIcon(\n 'Twitter',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconType = /*#__PURE__*/ makeIcon(\n 'Type',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeBold = /*#__PURE__*/ makeIcon(\n 'TypeBold',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH1 = /*#__PURE__*/ makeIcon(\n 'TypeH1',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH2 = /*#__PURE__*/ makeIcon(\n 'TypeH2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeH3 = /*#__PURE__*/ makeIcon(\n 'TypeH3',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeItalic = /*#__PURE__*/ makeIcon(\n 'TypeItalic',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeStrikethrough = /*#__PURE__*/ makeIcon(\n 'TypeStrikethrough',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconTypeUnderline = /*#__PURE__*/ makeIcon(\n 'TypeUnderline',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUiChecks = /*#__PURE__*/ makeIcon(\n 'UiChecks',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUiChecksGrid = /*#__PURE__*/ makeIcon(\n 'UiChecksGrid',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUiRadios = /*#__PURE__*/ makeIcon(\n 'UiRadios',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUiRadiosGrid = /*#__PURE__*/ makeIcon(\n 'UiRadiosGrid',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUnion = /*#__PURE__*/ makeIcon(\n 'Union',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUnlock = /*#__PURE__*/ makeIcon(\n 'Unlock',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUnlockFill = /*#__PURE__*/ makeIcon(\n 'UnlockFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUpc = /*#__PURE__*/ makeIcon(\n 'Upc',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUpcScan = /*#__PURE__*/ makeIcon(\n 'UpcScan',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconUpload = /*#__PURE__*/ makeIcon(\n 'Upload',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVectorPen = /*#__PURE__*/ makeIcon(\n 'VectorPen',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconViewList = /*#__PURE__*/ makeIcon(\n 'ViewList',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconViewStacked = /*#__PURE__*/ makeIcon(\n 'ViewStacked',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVinyl = /*#__PURE__*/ makeIcon(\n 'Vinyl',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVinylFill = /*#__PURE__*/ makeIcon(\n 'VinylFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVoicemail = /*#__PURE__*/ makeIcon(\n 'Voicemail',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDown = /*#__PURE__*/ makeIcon(\n 'VolumeDown',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeDownFill = /*#__PURE__*/ makeIcon(\n 'VolumeDownFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMute = /*#__PURE__*/ makeIcon(\n 'VolumeMute',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeMuteFill = /*#__PURE__*/ makeIcon(\n 'VolumeMuteFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeOff = /*#__PURE__*/ makeIcon(\n 'VolumeOff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeOffFill = /*#__PURE__*/ makeIcon(\n 'VolumeOffFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeUp = /*#__PURE__*/ makeIcon(\n 'VolumeUp',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVolumeUpFill = /*#__PURE__*/ makeIcon(\n 'VolumeUpFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconVr = /*#__PURE__*/ makeIcon(\n 'Vr',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWallet = /*#__PURE__*/ makeIcon(\n 'Wallet',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWallet2 = /*#__PURE__*/ makeIcon(\n 'Wallet2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWalletFill = /*#__PURE__*/ makeIcon(\n 'WalletFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWatch = /*#__PURE__*/ makeIcon(\n 'Watch',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWifi = /*#__PURE__*/ makeIcon(\n 'Wifi',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWifi1 = /*#__PURE__*/ makeIcon(\n 'Wifi1',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWifi2 = /*#__PURE__*/ makeIcon(\n 'Wifi2',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWifiOff = /*#__PURE__*/ makeIcon(\n 'WifiOff',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWindow = /*#__PURE__*/ makeIcon(\n 'Window',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconWrench = /*#__PURE__*/ makeIcon(\n 'Wrench',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconX = /*#__PURE__*/ makeIcon(\n 'X',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXCircle = /*#__PURE__*/ makeIcon(\n 'XCircle',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXCircleFill = /*#__PURE__*/ makeIcon(\n 'XCircleFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXDiamond = /*#__PURE__*/ makeIcon(\n 'XDiamond',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXDiamondFill = /*#__PURE__*/ makeIcon(\n 'XDiamondFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXOctagon = /*#__PURE__*/ makeIcon(\n 'XOctagon',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXOctagonFill = /*#__PURE__*/ makeIcon(\n 'XOctagonFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXSquare = /*#__PURE__*/ makeIcon(\n 'XSquare',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconXSquareFill = /*#__PURE__*/ makeIcon(\n 'XSquareFill',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconYoutube = /*#__PURE__*/ makeIcon(\n 'Youtube',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconZoomIn = /*#__PURE__*/ makeIcon(\n 'ZoomIn',\n ''\n)\n\n// eslint-disable-next-line\nexport const BIconZoomOut = /*#__PURE__*/ makeIcon(\n 'ZoomOut',\n ''\n)\n\n// --- END AUTO-GENERATED FILE ---\n","import { Vue, mergeData } from '../vue'\nimport { NAME_ICON } from '../constants/components'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { RX_ICON_PREFIX } from '../constants/regex'\nimport { omit, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../utils/props'\nimport { pascalCase, trim } from '../utils/string'\nimport { BIconBlank } from './icons'\nimport { props as BVIconBaseProps } from './helpers/icon-base'\n\n// --- Helper methods ---\n\nconst findIconComponent = (ctx, iconName) => {\n if (!ctx) {\n return null\n }\n const components = (ctx.$options || {}).components\n const iconComponent = components[iconName]\n return iconComponent || findIconComponent(ctx.$parent, iconName)\n}\n\n// --- Props ---\n\nconst iconProps = omit(BVIconBaseProps, ['content'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...iconProps,\n icon: makeProp(PROP_TYPE_STRING)\n }),\n NAME_ICON\n)\n\n// --- Main component ---\n\n// Helper BIcon component\n// Requires the requested icon component to be installed\n// @vue/component\nexport const BIcon = /*#__PURE__*/ Vue.extend({\n name: NAME_ICON,\n functional: true,\n props,\n render(h, { data, props, parent }) {\n const icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, '')\n\n // 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 return h(\n icon ? findIconComponent(parent, `BIcon${icon}`) || BIconBlank : BIconBlank,\n mergeData(data, { props: pluckProps(iconProps, props) })\n )\n }\n})\n","export const CODE_BACKSPACE = 8\nexport const CODE_BREAK = 19\nexport const CODE_DELETE = 46\nexport const CODE_DOWN = 40\nexport const CODE_END = 35\nexport const CODE_ENTER = 13\nexport const CODE_ESC = 27\nexport const CODE_HOME = 36\nexport const CODE_LEFT = 37\nexport const CODE_PAGEDOWN = 34\nexport const CODE_PAGEUP = 33\nexport const CODE_RIGHT = 39\nexport const CODE_SPACE = 32\nexport const CODE_UP = 38\n","import { hasOwnProperty, keys } from './object'\nimport { isArray, isDate, isObject } from './inspect'\n\n// Assumes both a and b are arrays!\n// Handles when arrays are \"sparse\" (array.every(...) doesn't handle sparse)\nconst compareArrays = (a, b) => {\n if (a.length !== b.length) {\n return false\n }\n let equal = true\n for (let i = 0; equal && i < a.length; i++) {\n equal = looseEqual(a[i], b[i])\n }\n return equal\n}\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 */\nexport const looseEqual = (a, b) => {\n if (a === b) {\n return true\n }\n let aValidType = isDate(a)\n let bValidType = isDate(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? a.getTime() === b.getTime() : false\n }\n aValidType = isArray(a)\n bValidType = isArray(b)\n if (aValidType || bValidType) {\n return aValidType && bValidType ? compareArrays(a, b) : false\n }\n aValidType = isObject(a)\n bValidType = isObject(b)\n if (aValidType || bValidType) {\n /* istanbul ignore if: this if will probably never be called */\n if (!aValidType || !bValidType) {\n return false\n }\n const aKeysCount = keys(a).length\n const bKeysCount = keys(b).length\n if (aKeysCount !== bKeysCount) {\n return false\n }\n for (const key in a) {\n const aHasKey = hasOwnProperty(a, key)\n const bHasKey = hasOwnProperty(b, key)\n if ((aHasKey && !bHasKey) || (!aHasKey && bHasKey) || !looseEqual(a[key], b[key])) {\n return false\n }\n }\n }\n return String(a) === String(b)\n}\n","import { Vue } from '../vue'\nimport { cloneDeep } from './clone-deep'\nimport { looseEqual } from './loose-equal'\nimport { hasOwnProperty, keys } from './object'\n\nconst isEmpty = value => !value || keys(value).length === 0\n\nexport const makePropWatcher = propName => ({\n handler(newValue, oldValue) {\n if (looseEqual(newValue, oldValue)) {\n return\n }\n if (isEmpty(newValue) || isEmpty(oldValue)) {\n this[propName] = cloneDeep(newValue)\n return\n }\n for (const key in oldValue) {\n if (!hasOwnProperty(newValue, key)) {\n this.$delete(this.$data[propName], key)\n }\n }\n for (const key in newValue) {\n this.$set(this.$data[propName], key, newValue[key])\n }\n }\n})\n\nexport const makePropCacheMixin = (propName, proxyPropName) =>\n Vue.extend({\n data() {\n return { [proxyPropName]: cloneDeep(this[propName]) }\n },\n watch: {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n [propName]: makePropWatcher(proxyPropName)\n }\n })\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const attrsMixin = makePropCacheMixin('$attrs', 'bvAttrs')\n","import { Vue } from '../vue'\nimport { HOOK_EVENT_NAME_BEFORE_DESTROY } from '../constants/events'\n\n// @vue/component\nexport const listenOnRootMixin = Vue.extend({\n methods: {\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,\n * but the root does not clear the callback\n *\n * When registering a `$root` listener, it also registers a listener on\n * the component's `beforeDestroy()` hook to automatically remove the\n * event listener from the `$root` instance\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRoot(event, callback) {\n this.$root.$on(event, callback)\n this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n this.$root.$off(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,\n * but the root does not clear the callback\n *\n * When registering a $root listener, it also registers a listener on\n * the component's `beforeDestroy` hook to automatically remove the\n * event listener from the $root instance.\n *\n * @param {string} event\n * @param {function} callback\n */\n listenOnRootOnce(event, callback) {\n this.$root.$once(event, callback)\n this.$on(HOOK_EVENT_NAME_BEFORE_DESTROY, () => {\n this.$root.$off(event, callback)\n })\n },\n\n /**\n * Convenience method for calling `vm.$emit()` on `vm.$root`\n *\n * @param {string} event\n * @param {*} args\n */\n emitOnRoot(event, ...args) {\n this.$root.$emit(event, ...args)\n }\n }\n})\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport const listenersMixin = makePropCacheMixin('$listeners', 'bvListeners')\n","import { Vue } from '../../vue'\nimport { NAME_LINK } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { attemptBlur, attemptFocus, isTag } from '../../utils/dom'\nimport { getRootEventName, stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction, isUndefined } from '../../utils/inspect'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { computeHref, computeRel, computeTag, isRouterLink } from '../../utils/router'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { listenersMixin } from '../../mixins/listeners'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_CLICKED = getRootEventName(NAME_LINK, 'clicked')\n\n// --- Props ---\n\n// `` specific props\nexport const routerLinkProps = {\n activeClass: makeProp(PROP_TYPE_STRING),\n append: makeProp(PROP_TYPE_BOOLEAN, false),\n event: makeProp(PROP_TYPE_ARRAY_STRING, EVENT_NAME_CLICK),\n exact: makeProp(PROP_TYPE_BOOLEAN, false),\n exactActiveClass: makeProp(PROP_TYPE_STRING),\n replace: makeProp(PROP_TYPE_BOOLEAN, false),\n routerTag: makeProp(PROP_TYPE_STRING, 'a'),\n to: makeProp(PROP_TYPE_OBJECT_STRING)\n}\n\n// `` specific props\nexport const 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}\n\n// All `` props\nexport const props = makePropsConfigurable(\n sortKeys({\n ...nuxtLinkProps,\n ...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 }),\n NAME_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BLink = /*#__PURE__*/ Vue.extend({\n name: NAME_LINK,\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, listenOnRootMixin, normalizeSlotMixin],\n inheritAttrs: false,\n props,\n computed: {\n computedTag() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { to, disabled, routerComponentName } = this\n return computeTag({ to, disabled, routerComponentName }, this)\n },\n isRouterLink() {\n return isRouterLink(this.computedTag)\n },\n computedRel() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { target, rel } = this\n return computeRel({ target, rel })\n },\n computedHref() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n const { to, href } = this\n return computeHref({ to, href }, this.computedTag)\n },\n computedProps() {\n const { prefetch } = this\n return this.isRouterLink\n ? {\n ...pluckProps({ ...routerLinkProps, ...nuxtLinkProps }, this),\n // Coerce `prefetch` value `null` to be `undefined`\n prefetch: isBoolean(prefetch) ? prefetch : undefined,\n // Pass `router-tag` as `tag` prop\n tag: this.routerTag\n }\n : {}\n },\n computedAttrs() {\n const {\n bvAttrs,\n computedHref: href,\n computedRel: rel,\n disabled,\n target,\n routerTag,\n isRouterLink\n } = this\n\n return {\n ...bvAttrs,\n // If `href` attribute exists on `` (even `undefined` or `null`)\n // it fails working on SSR, so we explicitly add it here if needed\n // (i.e. if `computedHref` is truthy)\n ...(href ? { href } : {}),\n // We don't render `rel` or `target` on non link tags when using `vue-router`\n ...(isRouterLink && !isTag(routerTag, 'a') ? {} : { rel, target }),\n tabindex: disabled ? '-1' : isUndefined(bvAttrs.tabindex) ? null : bvAttrs.tabindex,\n 'aria-disabled': disabled ? 'true' : null\n }\n },\n computedListeners() {\n return {\n // Transfer all listeners (native) to the root element\n ...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(event) {\n const eventIsEvent = isEvent(event)\n const isRouterLink = this.isRouterLink\n const suppliedHandler = this.bvListeners.click\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, { immediatePropagation: true })\n } else {\n /* istanbul ignore next: difficult to test, but we know it works */\n if (isRouterLink && event.currentTarget.__vue__) {\n // Router links do not emit instance `click` events, so we\n // add in an `$emit('click', event)` on its Vue instance\n event.currentTarget.__vue__.$emit(EVENT_NAME_CLICK, event)\n }\n // Call the suppliedHandler(s), if any provided\n concat(suppliedHandler)\n .filter(h => isFunction(h))\n .forEach(handler => {\n handler(...arguments)\n })\n // Emit the global `$root` click event\n this.emitOnRoot(ROOT_EVENT_NAME_CLICKED, event)\n // TODO: Remove deprecated 'clicked::link' event with next major release\n this.emitOnRoot('clicked::link', event)\n }\n // Stop scroll-to-top behavior or navigation on\n // regular links when href is just '#'\n if (eventIsEvent && !isRouterLink && this.computedHref === '#') {\n stopEvent(event, { propagation: false })\n }\n },\n focus() {\n attemptFocus(this.$el)\n },\n blur() {\n attemptBlur(this.$el)\n }\n },\n render(h) {\n const { active, disabled } = this\n\n return h(\n this.computedTag,\n {\n class: { active, disabled },\n attrs: this.computedAttrs,\n props: this.computedProps,\n // We must use `nativeOn` for ``/`` instead of `on`\n [this.isRouterLink ? 'nativeOn' : 'on']: this.computedListeners\n },\n this.normalizeSlot()\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON } from '../../constants/components'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { addClass, isTag, removeClass } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { isBoolean, isEvent, isFunction } from '../../utils/inspect'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink as isLinkStrict } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\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 }),\n NAME_BUTTON\n)\n\n// --- Helper methods ---\n\n// Focus handler for toggle buttons\n// Needs class of 'focus' when focused\nconst 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}\n\n// Is the requested button a link?\n// If tag prop is set to `a`, we use a to get proper disabled handling\nconst isLink = props => isLinkStrict(props) || isTag(props.tag, 'a')\n\n// Is the button to be a toggle button?\nconst isToggle = props => isBoolean(props.pressed)\n\n// Is the button \"really\" a button?\nconst isButton = props => !(isLink(props) || (props.tag && !isTag(props.tag, 'button')))\n\n// Is the requested tag not a button or link?\nconst isNonStandardTag = props => !isLink(props) && !isButton(props)\n\n// Compute required classes (non static classes)\nconst computeClass = props => [\n `btn-${props.variant || 'secondary'}`,\n {\n [`btn-${props.size}`]: props.size,\n 'btn-block': props.block,\n 'rounded-pill': props.pill,\n 'rounded-0': props.squared && !props.pill,\n disabled: props.disabled,\n active: props.pressed\n }\n]\n\n// Compute the link props to pass to b-link (if required)\nconst computeLinkProps = props => (isLink(props) ? pluckProps(linkProps, props) : {})\n\n// Compute the attributes for a button\nconst computeAttrs = (props, data) => {\n const button = isButton(props)\n const link = isLink(props)\n const toggle = isToggle(props)\n const nonStandardTag = isNonStandardTag(props)\n const hashLink = link && props.href === '#'\n const role = data.attrs && data.attrs.role ? data.attrs.role : null\n let tabindex = data.attrs ? data.attrs.tabindex : null\n if (nonStandardTag || hashLink) {\n tabindex = '0'\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}\n\n// --- Main component ---\n\n// @vue/component\nexport const BButton = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON,\n functional: true,\n props,\n render(h, { props, data, listeners, children }) {\n const toggle = isToggle(props)\n const link = isLink(props)\n const nonStandardTag = isNonStandardTag(props)\n const hashLink = link && props.href === '#'\n const on = {\n 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 /* istanbul ignore next */\n if (props.disabled || !(nonStandardTag || hashLink)) {\n return\n }\n const { keyCode } = event\n // Add CODE_SPACE handler for `href=\"#\"` and CODE_ENTER handler for non-standard tags\n if (keyCode === CODE_SPACE || (keyCode === CODE_ENTER && nonStandardTag)) {\n const target = event.currentTarget || event.target\n stopEvent(event, { propagation: false })\n target.click()\n }\n },\n 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(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 const componentData = {\n staticClass: 'btn',\n class: computeClass(props),\n props: computeLinkProps(props),\n attrs: computeAttrs(props, data),\n on\n }\n\n return h(link ? BLink : props.tag, mergeData(data, componentData), children)\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR } from '../../constants/components'\nimport { EVENT_NAME_CLICK, EVENT_NAME_IMG_ERROR } from '../../constants/events'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BADGE } from '../../constants/slots'\nimport { isNumber, isNumeric, isString } from '../../utils/inspect'\nimport { toFloat } from '../../utils/number'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BIcon } from '../../icons/icon'\nimport { BIconPersonFill } from '../../icons/icons'\nimport { BButton } from '../button/button'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst CLASS_NAME = 'b-avatar'\n\nconst SIZES = ['sm', null, 'lg']\n\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\n// --- Helper methods ---\n\nexport const computeSize = value => {\n // Parse to number when value is a float-like string\n value = isString(value) && isNumeric(value) ? toFloat(value, 0) : value\n // Convert all numbers to pixel values\n return isNumber(value) ? `${value}px` : value || null\n}\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['active', 'event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n alt: makeProp(PROP_TYPE_STRING, 'avatar'),\n ariaLabel: makeProp(PROP_TYPE_STRING),\n badge: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n badgeLeft: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeOffset: makeProp(PROP_TYPE_STRING),\n badgeTop: makeProp(PROP_TYPE_BOOLEAN, false),\n badgeVariant: makeProp(PROP_TYPE_STRING, 'primary'),\n button: makeProp(PROP_TYPE_BOOLEAN, false),\n buttonType: makeProp(PROP_TYPE_STRING, 'button'),\n icon: makeProp(PROP_TYPE_STRING),\n rounded: makeProp(PROP_TYPE_BOOLEAN_STRING, false),\n size: makeProp(PROP_TYPE_NUMBER_STRING),\n square: makeProp(PROP_TYPE_BOOLEAN, false),\n src: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_AVATAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatar = /*#__PURE__*/ Vue.extend({\n name: NAME_AVATAR,\n mixins: [normalizeSlotMixin],\n inject: {\n bvAvatarGroup: { default: null }\n },\n props,\n data() {\n return {\n localSrc: this.src || null\n }\n },\n computed: {\n computedSize() {\n // Always use the avatar group size\n const { bvAvatarGroup } = this\n return computeSize(bvAvatarGroup ? bvAvatarGroup.size : this.size)\n },\n computedVariant() {\n const { bvAvatarGroup } = this\n return bvAvatarGroup && bvAvatarGroup.variant ? bvAvatarGroup.variant : this.variant\n },\n computedRounded() {\n const { bvAvatarGroup } = this\n const square = bvAvatarGroup && bvAvatarGroup.square ? true : this.square\n const rounded = bvAvatarGroup && bvAvatarGroup.rounded ? bvAvatarGroup.rounded : this.rounded\n return square ? '0' : rounded === '' ? true : rounded || 'circle'\n },\n fontStyle() {\n const { computedSize: size } = this\n const fontSize = SIZES.indexOf(size) === -1 ? `calc(${size} * ${FONT_SIZE_SCALE})` : null\n return fontSize ? { fontSize } : {}\n },\n marginStyle() {\n const { computedSize: size, bvAvatarGroup } = this\n const overlapScale = bvAvatarGroup ? bvAvatarGroup.overlapScale : 0\n const value = size && overlapScale ? `calc(${size} * -${overlapScale})` : null\n return value ? { marginLeft: value, marginRight: value } : {}\n },\n badgeStyle() {\n const { computedSize: size, badgeTop, badgeLeft, badgeOffset } = this\n const offset = badgeOffset || '0px'\n return {\n fontSize: SIZES.indexOf(size) === -1 ? `calc(${size} * ${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(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.localSrc = newValue || null\n }\n }\n },\n methods: {\n onImgError(event) {\n this.localSrc = null\n this.$emit(EVENT_NAME_IMG_ERROR, event)\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n }\n },\n render(h) {\n const {\n computedVariant: variant,\n disabled,\n computedRounded: rounded,\n icon,\n localSrc: src,\n text,\n fontStyle,\n marginStyle,\n computedSize: size,\n button,\n buttonType: type,\n badge,\n badgeVariant,\n badgeStyle\n } = this\n const link = !button && isLink(this)\n const tag = button ? BButton : link ? BLink : 'span'\n const alt = this.alt\n const ariaLabel = this.ariaLabel || null\n\n let $content = null\n if (this.hasNormalizedSlot()) {\n // Default slot overrides props\n $content = h('span', { staticClass: 'b-avatar-custom' }, [this.normalizeSlot()])\n } else if (src) {\n $content = h('img', {\n style: variant ? {} : { width: '100%', height: '100%' },\n attrs: { src, alt },\n on: { error: this.onImgError }\n })\n $content = h('span', { staticClass: 'b-avatar-img' }, [$content])\n } else if (icon) {\n $content = h(BIcon, {\n props: { icon },\n attrs: { 'aria-hidden': 'true', alt }\n })\n } else if (text) {\n $content = h(\n 'span',\n {\n staticClass: 'b-avatar-text',\n style: fontStyle\n },\n [h('span', text)]\n )\n } else {\n // Fallback default avatar content\n $content = h(BIconPersonFill, { attrs: { 'aria-hidden': 'true', alt } })\n }\n\n let $badge = h()\n const hasBadgeSlot = this.hasNormalizedSlot(SLOT_NAME_BADGE)\n if (badge || badge === '' || hasBadgeSlot) {\n const badgeText = badge === true ? '' : badge\n $badge = h(\n 'span',\n {\n staticClass: 'b-avatar-badge',\n class: { [`badge-${badgeVariant}`]: badgeVariant },\n style: badgeStyle\n },\n [hasBadgeSlot ? this.normalizeSlot(SLOT_NAME_BADGE) : badgeText]\n )\n }\n\n const componentData = {\n staticClass: CLASS_NAME,\n class: {\n // Apply size class\n [`${CLASS_NAME}-${size}`]: size && SIZES.indexOf(size) !== -1,\n // We use badge styles for theme variants when not rendering `BButton`\n [`badge-${variant}`]: !button && variant,\n // Rounding/Square\n rounded: rounded === true,\n [`rounded-${rounded}`]: rounded && rounded !== true,\n // Other classes\n disabled\n },\n style: { ...marginStyle, width: size, height: size },\n attrs: { 'aria-label': ariaLabel || null },\n props: button ? { variant, disabled, type } : link ? pluckProps(linkProps, this) : {},\n on: button || link ? { click: this.onClick } : {}\n }\n\n return h(tag, componentData, [$content, $badge])\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_AVATAR_GROUP } from '../../constants/components'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { computeSize } from './avatar'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_AVATAR_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BAvatarGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_AVATAR_GROUP,\n mixins: [normalizeSlotMixin],\n provide() {\n return { bvAvatarGroup: this }\n },\n props,\n computed: {\n computedSize() {\n return computeSize(this.size)\n },\n overlapScale() {\n return mathMin(mathMax(toFloat(this.overlap, 0), 0), 1) / 2\n },\n paddingStyle() {\n let value = this.computedSize\n value = value ? `calc(${value} * ${this.overlapScale})` : null\n return value ? { paddingLeft: value, paddingRight: value } : {}\n }\n },\n render(h) {\n const $inner = h(\n 'div',\n {\n staticClass: 'b-avatar-group-inner',\n style: this.paddingStyle\n },\n this.normalizeSlot()\n )\n\n return h(\n this.tag,\n {\n staticClass: 'b-avatar-group',\n attrs: { role: 'group' }\n },\n [$inner]\n )\n }\n})\n","import { BAvatar } from './avatar'\nimport { BAvatarGroup } from './avatar-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst AvatarPlugin = /*#__PURE__*/ pluginFactory({\n components: { BAvatar, BAvatarGroup }\n})\n\nexport { AvatarPlugin, BAvatar, BAvatarGroup }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BADGE } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n pill: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'span'),\n variant: makeProp(PROP_TYPE_STRING, 'secondary')\n }),\n NAME_BADGE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBadge = /*#__PURE__*/ Vue.extend({\n name: NAME_BADGE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { active, disabled } = props\n const link = isLink(props)\n const tag = link ? BLink : props.tag\n const variant = props.variant || 'secondary'\n\n return h(\n tag,\n mergeData(data, {\n staticClass: 'badge',\n class: [\n `badge-${variant}`,\n {\n 'badge-pill': props.pill,\n active,\n disabled\n }\n ],\n props: link ? pluckProps(linkProps, props) : {}\n }),\n children\n )\n }\n})\n","import { BBadge } from './badge'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BadgePlugin = /*#__PURE__*/ pluginFactory({\n components: { BBadge }\n})\n\nexport { BadgePlugin, BBadge }\n","import { RX_HTML_TAGS } from '../constants/regex'\n\n// Removes anything that looks like an HTML tag from the supplied string\nexport const stripTags = (text = '') => String(text).replace(RX_HTML_TAGS, '')\n\n// Generate a `domProps` object for either `innerHTML`, `textContent` or an empty object\nexport const htmlOrText = (innerHTML, textContent) =>\n innerHTML ? { innerHTML } : textContent ? { textContent } : {}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_LINK } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...omit(BLinkProps, ['event', 'routerTag']),\n ariaCurrent: makeProp(PROP_TYPE_STRING, 'location'),\n html: makeProp(PROP_TYPE_STRING),\n text: makeProp(PROP_TYPE_STRING)\n }),\n NAME_BREADCRUMB_LINK\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbLink = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB_LINK,\n functional: true,\n props,\n render(h, { props: suppliedProps, data, children }) {\n const { active } = suppliedProps\n const tag = active ? 'span' : BLink\n\n const componentData = {\n attrs: { 'aria-current': active ? suppliedProps.ariaCurrent : null },\n props: pluckProps(props, 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","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB_ITEM } from '../../constants/components'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { BBreadcrumbLink, props as BBreadcrumbLinkProps } from './breadcrumb-link'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(BBreadcrumbLinkProps, NAME_BREADCRUMB_ITEM)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumbItem = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB_ITEM,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'li',\n mergeData(data, {\n staticClass: 'breadcrumb-item',\n class: { active: props.active }\n }),\n [h(BBreadcrumbLink, { props }, children)]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BREADCRUMB } from '../../constants/components'\nimport { PROP_TYPE_ARRAY } from '../../constants/props'\nimport { isArray, isObject } from '../../utils/inspect'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { BBreadcrumbItem } from './breadcrumb-item'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n items: makeProp(PROP_TYPE_ARRAY)\n },\n NAME_BREADCRUMB\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BBreadcrumb = /*#__PURE__*/ Vue.extend({\n name: NAME_BREADCRUMB,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { items } = props\n\n // Build child nodes from items, if given\n let childNodes = children\n if (isArray(items)) {\n let activeDefined = false\n childNodes = items.map((item, idx) => {\n if (!isObject(item)) {\n item = { text: toString(item) }\n }\n // Copy the value here so we can normalize it\n let { active } = item\n if (active) {\n activeDefined = true\n }\n // Auto-detect active by position in list\n if (!active && !activeDefined) {\n active = idx + 1 === items.length\n }\n\n return h(BBreadcrumbItem, { props: { ...item, active } })\n })\n }\n\n return h('ol', mergeData(data, { staticClass: 'breadcrumb' }), childNodes)\n }\n})\n","import { BBreadcrumb } from './breadcrumb'\nimport { BBreadcrumbItem } from './breadcrumb-item'\nimport { BBreadcrumbLink } from './breadcrumb-link'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst BreadcrumbPlugin = /*#__PURE__*/ pluginFactory({\n components: { BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n})\n\nexport { BreadcrumbPlugin, BBreadcrumb, BBreadcrumbItem, BBreadcrumbLink }\n","import { BButton } from './button'\nimport { BButtonClose } from './button-close'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButton,\n BBtn: BButton,\n BButtonClose,\n BBtnClose: BButtonClose\n }\n})\n\nexport { ButtonPlugin, BButton, BButtonClose }\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_BUTTON_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as buttonProps } from '../button/button'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...pick(buttonProps, ['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 }),\n NAME_BUTTON_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_GROUP,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: {\n 'btn-group': !props.vertical,\n 'btn-group-vertical': props.vertical,\n [`btn-group-${props.size}`]: props.size\n },\n attrs: { role: props.ariaRole }\n }),\n children\n )\n }\n})\n","import { BButtonGroup } from './button-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonGroupPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButtonGroup,\n BBtnGroup: BButtonGroup\n }\n})\n\nexport { ButtonGroupPlugin, BButtonGroup }\n","import { Vue } from '../../vue'\nimport { NAME_BUTTON_TOOLBAR } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { CODE_DOWN, CODE_LEFT, CODE_RIGHT, CODE_UP } from '../../constants/key-codes'\nimport { attemptFocus, contains, isVisible, selectAll } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst ITEM_SELECTOR = [\n '.btn:not(.disabled):not([disabled]):not(.dropdown-item)',\n '.form-control:not(.disabled):not([disabled])',\n 'select:not(.disabled):not([disabled])',\n 'input[type=\"checkbox\"]:not(.disabled)',\n 'input[type=\"radio\"]:not(.disabled)'\n].join(',')\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n justify: makeProp(PROP_TYPE_BOOLEAN, false),\n keyNav: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_BUTTON_TOOLBAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BButtonToolbar = /*#__PURE__*/ Vue.extend({\n name: NAME_BUTTON_TOOLBAR,\n mixins: [normalizeSlotMixin],\n props,\n 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() {\n const items = selectAll(ITEM_SELECTOR, this.$el)\n // Ensure `tabindex=\"-1\"` is set on every item\n items.forEach(item => {\n item.tabIndex = -1\n })\n return items.filter(el => isVisible(el))\n },\n focusFirst() {\n const items = this.getItems()\n attemptFocus(items[0])\n },\n focusPrev(event) {\n let items = this.getItems()\n const index = items.indexOf(event.target)\n if (index > -1) {\n items = items.slice(0, index).reverse()\n attemptFocus(items[0])\n }\n },\n focusNext(event) {\n let items = this.getItems()\n const index = items.indexOf(event.target)\n if (index > -1) {\n items = items.slice(index + 1)\n attemptFocus(items[0])\n }\n },\n focusLast() {\n const items = this.getItems().reverse()\n attemptFocus(items[0])\n },\n onFocusin(event) {\n const { $el } = this\n if (event.target === $el && !contains($el, event.relatedTarget)) {\n stopEvent(event)\n this.focusFirst(event)\n }\n },\n onKeydown(event) {\n const { keyCode, shiftKey } = event\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(h) {\n const { keyNav } = this\n\n return h(\n 'div',\n {\n staticClass: 'btn-toolbar',\n class: { 'justify-content-between': this.justify },\n attrs: {\n role: 'toolbar',\n tabindex: keyNav ? '0' : null\n },\n on: keyNav\n ? {\n focusin: this.onFocusin,\n keydown: this.onKeydown\n }\n : {}\n },\n [this.normalizeSlot()]\n )\n }\n})\n","import { BButtonToolbar } from './button-toolbar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst ButtonToolbarPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BButtonToolbar,\n BBtnToolbar: BButtonToolbar\n }\n})\n\nexport { ButtonToolbarPlugin, BButtonToolbar }\n","export const CALENDAR_GREGORY = 'gregory'\nexport const CALENDAR_LONG = 'long'\nexport const CALENDAR_NARROW = 'narrow'\nexport const CALENDAR_SHORT = 'short'\n\nexport const DATE_FORMAT_2_DIGIT = '2-digit'\nexport const DATE_FORMAT_NUMERIC = 'numeric'\n","// Date utility functions\nimport { CALENDAR_GREGORY } from '../constants/date'\nimport { RX_DATE, RX_DATE_SPLIT } from '../constants/regex'\nimport { concat } from './array'\nimport { identity } from './identity'\nimport { isDate, isString } from './inspect'\nimport { toInteger } from './number'\n\n// --- Date utility methods ---\n\n// Create or clone a date (`new Date(...)` shortcut)\nexport const createDate = (...args) => new Date(...args)\n\n// Parse a date sting, or Date object, into a Date object (with no time information)\nexport const parseYMD = date => {\n if (isString(date) && RX_DATE.test(date.trim())) {\n const [year, month, day] = date.split(RX_DATE_SPLIT).map(v => toInteger(v, 1))\n return createDate(year, month - 1, day)\n } else if (isDate(date)) {\n return createDate(date.getFullYear(), date.getMonth(), date.getDate())\n }\n return null\n}\n\n// Format a date object as `YYYY-MM-DD` format\nexport const formatYMD = date => {\n date = parseYMD(date)\n if (!date) {\n return null\n }\n const year = date.getFullYear()\n const month = `0${date.getMonth() + 1}`.slice(-2)\n const day = `0${date.getDate()}`.slice(-2)\n return `${year}-${month}-${day}`\n}\n\n// Given a locale (or locales), resolve the browser available locale\nexport const resolveLocale = (locales, calendar = CALENDAR_GREGORY) => /* istanbul ignore next */ {\n locales = concat(locales).filter(identity)\n const fmt = new Intl.DateTimeFormat(locales, { calendar })\n return fmt.resolvedOptions().locale\n}\n\n// Create a `Intl.DateTimeFormat` formatter function\nexport const createDateFormatter = (locale, options) => /* istanbul ignore next */ {\n const dtf = new Intl.DateTimeFormat(locale, options)\n return dtf.format\n}\n\n// Determine if two dates are the same date (ignoring time portion)\nexport const 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}\n\n// --- Date \"math\" utility methods (for BCalendar component mainly) ---\n\nexport const firstDateOfMonth = date => {\n date = createDate(date)\n date.setDate(1)\n return date\n}\n\nexport const lastDateOfMonth = date => {\n date = createDate(date)\n date.setMonth(date.getMonth() + 1)\n date.setDate(0)\n return date\n}\n\nexport const addYears = (date, numberOfYears) => {\n date = createDate(date)\n const month = date.getMonth()\n date.setFullYear(date.getFullYear() + numberOfYears)\n // Handle Feb 29th for leap years\n if (date.getMonth() !== month) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneMonthAgo = date => {\n date = createDate(date)\n const month = date.getMonth()\n date.setMonth(month - 1)\n // Handle when days in month are different\n if (date.getMonth() === month) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneMonthAhead = date => {\n date = createDate(date)\n const month = date.getMonth()\n date.setMonth(month + 1)\n // Handle when days in month are different\n if (date.getMonth() === (month + 2) % 12) {\n date.setDate(0)\n }\n return date\n}\n\nexport const oneYearAgo = date => {\n return addYears(date, -1)\n}\n\nexport const oneYearAhead = date => {\n return addYears(date, 1)\n}\n\nexport const oneDecadeAgo = date => {\n return addYears(date, -10)\n}\n\nexport const oneDecadeAhead = date => {\n return addYears(date, 10)\n}\n\n// Helper function to constrain a date between two values\n// Always returns a `Date` object or `null` if no date passed\nexport const constrainDate = (date, min = null, max = null) => {\n // Ensure values are `Date` objects (or `null`)\n date = parseYMD(date)\n min = parseYMD(min) || date\n max = parseYMD(max) || date\n // Return a new `Date` object (or `null`)\n return date ? (date < min ? min : date > max ? max : date) : null\n}\n","// Localization utilities\nimport { RX_STRIP_LOCALE_MODS } from '../constants/regex'\nimport { arrayIncludes } from './array'\nimport { toString } from './string'\n\n// Languages that are RTL\nconst RTL_LANGS = [\n 'ar',\n 'az',\n 'ckb',\n 'fa',\n 'he',\n 'ks',\n 'lrc',\n 'mzn',\n 'ps',\n 'sd',\n 'te',\n 'ug',\n 'ur',\n 'yi'\n].map(locale => locale.toLowerCase())\n\n// Returns true if the locale is RTL\nexport const isLocaleRTL = locale => {\n // Determines if the locale is RTL (only single locale supported)\n const parts = toString(locale)\n .toLowerCase()\n .replace(RX_STRIP_LOCALE_MODS, '')\n .split('-')\n const locale1 = parts.slice(0, 2).join('-')\n const locale2 = parts[0]\n return arrayIncludes(RTL_LANGS, locale1) || arrayIncludes(RTL_LANGS, locale2)\n}\n","// SSR safe client-side ID attribute generation\n// ID's can only be generated client-side, after mount\n// `this._uid` is not synched between server and client\nimport { COMPONENT_UID_KEY, Vue } from '../vue'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp } from '../utils/props'\n\n// --- Props ---\n\nexport const props = {\n id: makeProp(PROP_TYPE_STRING)\n}\n\n// --- Mixin ---\n\n// @vue/component\nexport const idMixin = Vue.extend({\n props,\n data() {\n return {\n localId_: null\n }\n },\n computed: {\n 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 const id = this.id || this.localId_\n\n // 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 const fn = suffix => {\n if (!id) {\n return null\n }\n suffix = String(suffix || '').replace(/\\s+/g, '_')\n return suffix ? id + '_' + suffix : id\n }\n return fn\n }\n },\n mounted() {\n // `mounted()` only occurs client-side\n this.$nextTick(() => {\n // Update DOM with auto-generated ID after mount\n // to prevent SSR hydration errors\n this.localId_ = `__BVID__${this[COMPONENT_UID_KEY]}`\n })\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CALENDAR } from '../../constants/components'\nimport {\n CALENDAR_GREGORY,\n CALENDAR_LONG,\n CALENDAR_NARROW,\n CALENDAR_SHORT,\n DATE_FORMAT_2_DIGIT,\n DATE_FORMAT_NUMERIC\n} from '../../constants/date'\nimport { EVENT_NAME_CONTEXT, EVENT_NAME_SELECTED } from '../../constants/events'\nimport {\n CODE_DOWN,\n CODE_END,\n CODE_ENTER,\n CODE_HOME,\n CODE_LEFT,\n CODE_PAGEDOWN,\n CODE_PAGEUP,\n CODE_RIGHT,\n CODE_SPACE,\n CODE_UP\n} from '../../constants/key-codes'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_DATE_STRING,\n PROP_TYPE_FUNCTION,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n SLOT_NAME_NAV_NEXT_DECADE,\n SLOT_NAME_NAV_NEXT_MONTH,\n SLOT_NAME_NAV_NEXT_YEAR,\n SLOT_NAME_NAV_PEV_DECADE,\n SLOT_NAME_NAV_PEV_MONTH,\n SLOT_NAME_NAV_PEV_YEAR,\n SLOT_NAME_NAV_THIS_MONTH\n} from '../../constants/slots'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n createDate,\n createDateFormatter,\n constrainDate,\n datesEqual,\n firstDateOfMonth,\n formatYMD,\n lastDateOfMonth,\n oneMonthAgo,\n oneMonthAhead,\n oneYearAgo,\n oneYearAhead,\n oneDecadeAgo,\n oneDecadeAhead,\n parseYMD,\n resolveLocale\n} from '../../utils/date'\nimport { attemptBlur, attemptFocus, requestAF } from '../../utils/dom'\nimport { stopEvent } from '../../utils/events'\nimport { identity } from '../../utils/identity'\nimport { isArray, isPlainObject, isString } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { mathMax } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { sortKeys } from '../../utils/object'\nimport { hasPropFunction, makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport {\n BIconChevronLeft,\n BIconChevronDoubleLeft,\n BIconChevronBarLeft,\n BIconCircleFill\n} from '../../icons/icons'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', { type: PROP_TYPE_DATE_STRING })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\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 // 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, 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 }),\n NAME_CALENDAR\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCalendar = Vue.extend({\n name: NAME_CALENDAR,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, modelMixin, normalizeSlotMixin],\n props,\n data() {\n const selected = formatYMD(this[MODEL_PROP_NAME]) || ''\n return {\n // Selected date\n selectedYMD: selected,\n // Date in calendar grid that has `tabindex` of `0`\n activeYMD:\n selected ||\n 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() {\n return this.safeId()\n },\n widgetId() {\n return this.safeId('_calendar-wrapper_')\n },\n navId() {\n return this.safeId('_calendar-nav_')\n },\n gridId() {\n return this.safeId('_calendar-grid_')\n },\n gridCaptionId() {\n return this.safeId('_calendar-grid-caption_')\n },\n gridHelpId() {\n return this.safeId('_calendar-grid-help_')\n },\n activeId() {\n return this.activeYMD ? this.safeId(`_cell-${this.activeYMD}_`) : null\n },\n // TODO: Use computed props to convert `YYYY-MM-DD` to `Date` object\n selectedDate() {\n // Selected as a `Date` object\n return parseYMD(this.selectedYMD)\n },\n activeDate() {\n // Active as a `Date` object\n return parseYMD(this.activeYMD)\n },\n computedMin() {\n return parseYMD(this.min)\n },\n computedMax() {\n return parseYMD(this.max)\n },\n computedWeekStarts() {\n // `startWeekday` is a prop (constrained to `0` through `6`)\n return mathMax(toInteger(this.startWeekday, 0), 0) % 7\n },\n computedLocale() {\n // Returns the resolved locale used by the calendar\n return resolveLocale(concat(this.locale).filter(identity), CALENDAR_GREGORY)\n },\n computedDateDisabledFn() {\n const { dateDisabledFn } = this\n return hasPropFunction(dateDisabledFn) ? dateDisabledFn : () => false\n },\n // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n computedDateInfoFn() {\n const { dateInfoFn } = this\n return hasPropFunction(dateInfoFn) ? dateInfoFn : () => ({})\n },\n 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 const fmt = new Intl.DateTimeFormat(this.computedLocale, { calendar: CALENDAR_GREGORY })\n const calendar = fmt.resolvedOptions().calendar\n let locale = fmt.resolvedOptions().locale\n /* istanbul ignore if: mainly for IE 11 and a few other browsers, hard to test in JSDOM */\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 return locale\n },\n calendarYear() {\n return this.activeDate.getFullYear()\n },\n calendarMonth() {\n return this.activeDate.getMonth()\n },\n 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() {\n // We create a new date as to not mutate the original\n const date = createDate(this.calendarFirstDay)\n date.setMonth(date.getMonth() + 1, 0)\n return date.getDate()\n },\n computedVariant() {\n return `btn-${this.selectedVariant || 'primary'}`\n },\n computedTodayVariant() {\n return `btn-outline-${this.todayVariant || this.selectedVariant || 'primary'}`\n },\n computedNavButtonVariant() {\n return `btn-outline-${this.navButtonVariant || 'primary'}`\n },\n isRTL() {\n // `true` if the language requested is RTL\n const dir = toString(this.direction).toLowerCase()\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 return isLocaleRTL(this.computedLocale)\n },\n context() {\n const { selectedYMD, activeYMD } = this\n const selectedDate = parseYMD(selectedYMD)\n const activeDate = parseYMD(activeYMD)\n return {\n // The current value of the `v-model`\n selectedYMD,\n selectedDate,\n selectedFormatted: selectedDate\n ? this.formatDateString(selectedDate)\n : this.labelNoDateSelected,\n // Which date cell is considered active due to navigation\n activeYMD,\n 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() {\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 const { computedMin: min, computedMax: max } = this\n return 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() {\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 const rangeFn = this.dateOutOfRange\n // Return the function ref\n return date => {\n // Handle both `YYYY-MM-DD` and `Date` objects\n date = parseYMD(date)\n const ymd = formatYMD(date)\n return !!(rangeFn(date) || this.computedDateDisabledFn(ymd, date))\n }\n },\n // Computed props that return date formatter functions\n formatDateString() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, {\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 // Merge in user supplied options\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() {\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() {\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() {\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() {\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 const nf = new Intl.NumberFormat([this.computedLocale], {\n style: 'decimal',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n notation: 'standard'\n })\n // Return a formatter function instance\n return date => nf.format(date.getDate())\n },\n // Disabled states for the nav buttons\n prevDecadeDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneDecadeAgo(this.activeDate)) < min)\n },\n prevYearDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneYearAgo(this.activeDate)) < min)\n },\n prevMonthDisabled() {\n const min = this.computedMin\n return this.disabled || (min && lastDateOfMonth(oneMonthAgo(this.activeDate)) < min)\n },\n thisMonthDisabled() {\n // TODO: We could/should check if today is out of range\n return this.disabled\n },\n nextMonthDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneMonthAhead(this.activeDate)) > max)\n },\n nextYearDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneYearAhead(this.activeDate)) > max)\n },\n nextDecadeDisabled() {\n const max = this.computedMax\n return this.disabled || (max && firstDateOfMonth(oneDecadeAhead(this.activeDate)) > max)\n },\n // Calendar dates generation\n calendar() {\n const matrix = []\n const firstDay = this.calendarFirstDay\n const calendarYear = firstDay.getFullYear()\n const calendarMonth = firstDay.getMonth()\n const daysInMonth = this.calendarDaysInMonth\n const startIndex = firstDay.getDay() // `0`..`6`\n const weekOffset = (this.computedWeekStarts > startIndex ? 7 : 0) - this.computedWeekStarts\n // Build the calendar matrix\n let currentDay = 0 - weekOffset - startIndex\n for (let week = 0; week < 6 && currentDay < daysInMonth; week++) {\n // For each week\n matrix[week] = []\n // The following could be a map function\n for (let j = 0; j < 7; j++) {\n // For each day in week\n currentDay++\n const date = createDate(calendarYear, calendarMonth, currentDay)\n const month = date.getMonth()\n const dayYMD = formatYMD(date)\n const dayDisabled = this.dateDisabled(date)\n // TODO: This could be a normalizer method\n let dateInfo = this.computedDateInfoFn(dayYMD, parseYMD(dayYMD))\n dateInfo =\n isString(dateInfo) || isArray(dateInfo)\n ? /* istanbul ignore next */ { class: dateInfo }\n : isPlainObject(dateInfo)\n ? { class: '', ...dateInfo }\n : /* istanbul ignore next */ { class: '' }\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 return matrix\n },\n calendarHeadings() {\n return this.calendar[0].map(d => {\n return {\n text: this.formatWeekdayNameShort(parseYMD(d.ymd)),\n label: this.formatWeekdayName(parseYMD(d.ymd))\n }\n })\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n const selected = formatYMD(newValue) || ''\n const old = formatYMD(oldValue) || ''\n if (!datesEqual(selected, old)) {\n this.activeYMD = selected || this.activeYMD\n this.selectedYMD = selected\n }\n },\n 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, this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '')\n }\n },\n context(newValue, oldValue) {\n if (!looseEqual(newValue, oldValue)) {\n this.$emit(EVENT_NAME_CONTEXT, newValue)\n }\n },\n hidden(newValue) {\n // Reset the active focused day when hidden\n this.activeYMD =\n this.selectedYMD ||\n formatYMD(this[MODEL_PROP_NAME] || this.constrainDate(this.initialDate || this.getToday()))\n // Enable/disable the live regions\n this.setLive(!newValue)\n }\n },\n created() {\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_CONTEXT, this.context)\n })\n },\n mounted() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n activated() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n deactivated() {\n this.setLive(false)\n },\n beforeDestroy() {\n this.setLive(false)\n },\n methods: {\n // Public method(s)\n focus() {\n if (!this.disabled) {\n attemptFocus(this.$refs.grid)\n }\n },\n blur() {\n if (!this.disabled) {\n attemptBlur(this.$refs.grid)\n }\n },\n // Private methods\n setLive(on) {\n if (on) {\n this.$nextTick(() => {\n requestAF(() => {\n this.isLive = true\n })\n })\n } else {\n this.isLive = false\n }\n },\n getToday() {\n return parseYMD(createDate())\n },\n constrainDate(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(date) {\n // Performed in a `$nextTick()` to (probably) ensure\n // the input event has emitted first\n this.$nextTick(() => {\n this.$emit(EVENT_NAME_SELECTED, formatYMD(date) || '', parseYMD(date) || null)\n })\n },\n // Event handlers\n setGridFocusFlag(event) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && event.type === 'focus'\n },\n 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 const { altKey, ctrlKey, keyCode } = event\n if (\n !arrayIncludes(\n [\n CODE_PAGEUP,\n CODE_PAGEDOWN,\n CODE_END,\n CODE_HOME,\n CODE_LEFT,\n CODE_UP,\n CODE_RIGHT,\n CODE_DOWN\n ],\n keyCode\n )\n ) {\n /* istanbul ignore next */\n return\n }\n stopEvent(event)\n let activeDate = createDate(this.activeDate)\n let checkDate = createDate(this.activeDate)\n const day = activeDate.getDate()\n const constrainedToday = this.constrainDate(this.getToday())\n const isRTL = this.isRTL\n if (keyCode === CODE_PAGEUP) {\n // PAGEUP - Previous month/year\n activeDate = (altKey ? (ctrlKey ? oneDecadeAgo : oneYearAgo) : oneMonthAgo)(activeDate)\n // We check the first day of month to be in rage\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)(\n activeDate\n )\n // We check the last day of month to be in rage\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 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 }\n // Ensure grid is focused\n this.focus()\n },\n onKeydownGrid(event) {\n // Pressing enter/space on grid to select active date\n const keyCode = event.keyCode\n const activeDate = this.activeDate\n if (keyCode === CODE_ENTER || keyCode === CODE_SPACE) {\n stopEvent(event)\n if (!this.disabled && !this.readonly && !this.dateDisabled(activeDate)) {\n this.selectedYMD = formatYMD(activeDate)\n this.emitSelected(activeDate)\n }\n // Ensure grid is focused\n this.focus()\n }\n },\n onClickDay(day) {\n // Clicking on a date \"button\" to select it\n const { selectedDate, activeDate } = this\n const clickedDate = parseYMD(day.ymd)\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(\n datesEqual(clickedDate, selectedDate) ? selectedDate : clickedDate\n )\n this.emitSelected(clickedDate)\n }\n this.activeYMD = formatYMD(\n datesEqual(clickedDate, activeDate) ? activeDate : createDate(clickedDate)\n )\n // Ensure grid is focused\n this.focus()\n }\n },\n gotoPrevDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAgo(this.activeDate)))\n },\n gotoPrevYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAgo(this.activeDate)))\n },\n gotoPrevMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAgo(this.activeDate)))\n },\n gotoCurrentMonth() {\n // TODO: Maybe this goto date should be configurable?\n this.activeYMD = formatYMD(this.constrainDate(this.getToday()))\n },\n gotoNextMonth() {\n this.activeYMD = formatYMD(this.constrainDate(oneMonthAhead(this.activeDate)))\n },\n gotoNextYear() {\n this.activeYMD = formatYMD(this.constrainDate(oneYearAhead(this.activeDate)))\n },\n gotoNextDecade() {\n this.activeYMD = formatYMD(this.constrainDate(oneDecadeAhead(this.activeDate)))\n },\n onHeaderClick() {\n if (!this.disabled) {\n this.activeYMD = this.selectedYMD || formatYMD(this.getToday())\n this.focus()\n }\n }\n },\n render(h) {\n // If `hidden` prop is set, render just a placeholder node\n if (this.hidden) {\n return h()\n }\n\n const {\n valueId,\n widgetId,\n navId,\n gridId,\n gridCaptionId,\n gridHelpId,\n activeId,\n disabled,\n noKeyNav,\n isLive,\n isRTL,\n activeYMD,\n selectedYMD,\n safeId\n } = this\n const hideDecadeNav = !this.showDecadeNav\n const todayYMD = formatYMD(this.getToday())\n const highlightToday = !this.noHighlightToday\n\n // Header showing current selected date\n let $header = h(\n 'output',\n {\n staticClass: 'form-control form-control-sm text-center',\n class: { 'text-muted': disabled, readonly: this.readonly || disabled },\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 },\n this.selectedDate\n ? [\n // 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', { staticClass: 'sr-only' }, ` (${toString(this.labelSelected)}) `),\n h('bdi', this.formatDateString(this.selectedDate))\n ]\n : this.labelNoDateSelected || '\\u00a0' // ' '\n )\n $header = h(\n 'header',\n {\n staticClass: 'b-calendar-header',\n class: { 'sr-only': this.hideHeader },\n attrs: { title: this.selectedDate ? this.labelSelectedDate || null : null }\n },\n [$header]\n )\n\n // Content for the date navigation buttons\n const navScope = { isRTL }\n const navProps = { shiftV: 0.5 }\n const navPrevProps = { ...navProps, flipH: isRTL }\n const navNextProps = { ...navProps, flipH: !isRTL }\n const $prevDecadeIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_DECADE, navScope) ||\n h(BIconChevronBarLeft, { props: navPrevProps })\n const $prevYearIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_YEAR, navScope) ||\n h(BIconChevronDoubleLeft, { props: navPrevProps })\n const $prevMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_PEV_MONTH, navScope) ||\n h(BIconChevronLeft, { props: navPrevProps })\n const $thisMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_THIS_MONTH, navScope) ||\n h(BIconCircleFill, { props: navProps })\n const $nextMonthIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_MONTH, navScope) ||\n h(BIconChevronLeft, { props: navNextProps })\n const $nextYearIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_YEAR, navScope) ||\n h(BIconChevronDoubleLeft, { props: navNextProps })\n const $nextDecadeIcon =\n this.normalizeSlot(SLOT_NAME_NAV_NEXT_DECADE, navScope) ||\n h(BIconChevronBarLeft, { props: navNextProps })\n\n // Utility to create the date navigation buttons\n const makeNavBtn = (content, label, handler, btnDisabled, shortcut) => {\n return h(\n 'button',\n {\n staticClass: 'btn btn-sm border-0 flex-fill',\n class: [this.computedNavButtonVariant, { disabled: btnDisabled }],\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 ? {} : { click: handler }\n },\n [h('div', { attrs: { 'aria-hidden': 'true' } }, [content])]\n )\n }\n\n // Generate the date navigation buttons\n const $nav = h(\n 'div',\n {\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 },\n [\n hideDecadeNav\n ? h()\n : makeNavBtn(\n $prevDecadeIcon,\n this.labelPrevDecade,\n this.gotoPrevDecade,\n this.prevDecadeDisabled,\n 'Ctrl+Alt+PageDown'\n ),\n makeNavBtn(\n $prevYearIcon,\n this.labelPrevYear,\n this.gotoPrevYear,\n this.prevYearDisabled,\n 'Alt+PageDown'\n ),\n makeNavBtn(\n $prevMonthIcon,\n this.labelPrevMonth,\n this.gotoPrevMonth,\n this.prevMonthDisabled,\n 'PageDown'\n ),\n makeNavBtn(\n $thisMonthIcon,\n this.labelCurrentMonth,\n this.gotoCurrentMonth,\n this.thisMonthDisabled,\n 'Home'\n ),\n makeNavBtn(\n $nextMonthIcon,\n this.labelNextMonth,\n this.gotoNextMonth,\n this.nextMonthDisabled,\n 'PageUp'\n ),\n makeNavBtn(\n $nextYearIcon,\n this.labelNextYear,\n this.gotoNextYear,\n this.nextYearDisabled,\n 'Alt+PageUp'\n ),\n hideDecadeNav\n ? h()\n : makeNavBtn(\n $nextDecadeIcon,\n this.labelNextDecade,\n this.gotoNextDecade,\n this.nextDecadeDisabled,\n 'Ctrl+Alt+PageUp'\n )\n ]\n )\n\n // Caption for calendar grid\n const $gridCaption = h(\n 'header',\n {\n staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n class: { 'text-muted': disabled },\n attrs: {\n id: gridCaptionId,\n 'aria-live': isLive ? 'polite' : null,\n 'aria-atomic': isLive ? 'true' : null\n },\n key: 'grid-caption'\n },\n this.formatYearMonth(this.calendarFirstDay)\n )\n\n // Calendar weekday headings\n const $gridWeekDays = h(\n 'div',\n {\n staticClass: 'b-calendar-grid-weekdays row no-gutters border-bottom',\n attrs: { 'aria-hidden': 'true' }\n },\n this.calendarHeadings.map((d, idx) => {\n return h(\n 'small',\n {\n staticClass: 'col text-truncate',\n class: { 'text-muted': disabled },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n },\n key: idx\n },\n d.text\n )\n })\n )\n\n // Calendar day grid\n let $gridBody = this.calendar.map(week => {\n const $cells = week.map((day, dIndex) => {\n const isSelected = day.ymd === selectedYMD\n const isActive = day.ymd === activeYMD\n const isToday = day.ymd === todayYMD\n const idCell = safeId(`_cell-${day.ymd}_`)\n // \"fake\" button\n const $btn = h(\n 'span',\n {\n staticClass: 'btn border-0 rounded-circle text-nowrap',\n // Should we add some classes to signify if today/selected/etc?\n class: {\n // Give the fake button a focus ring\n focus: isActive && this.gridHasFocus,\n // Styling\n disabled: day.isDisabled || disabled,\n active: isSelected, // makes the button look \"pressed\"\n // Selected date style (need to computed from variant)\n [this.computedVariant]: isSelected,\n // Today day style (if not selected), same variant color as selected date\n [this.computedTodayVariant]:\n isToday && highlightToday && !isSelected && day.isThisMonth,\n // Non selected/today styling\n 'btn-outline-light': !(isToday && highlightToday) && !isSelected && !isActive,\n 'btn-light': !(isToday && highlightToday) && !isSelected && isActive,\n // Text styling\n 'text-muted': !day.isThisMonth && !isSelected,\n 'text-dark':\n !(isToday && highlightToday) && !isSelected && !isActive && day.isThisMonth,\n 'font-weight-bold': (isSelected || day.isThisMonth) && !day.isDisabled\n },\n on: { click: () => this.onClickDay(day) }\n },\n day.day\n )\n return h(\n '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, // 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': [\n day.label,\n isSelected ? `(${this.labelSelected})` : null,\n isToday ? `(${this.labelToday})` : null\n ]\n .filter(identity)\n .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 },\n [$btn]\n )\n })\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 return h(\n 'div',\n {\n staticClass: 'row no-gutters',\n key: week[0].ymd\n },\n $cells\n )\n })\n $gridBody = h(\n 'div',\n {\n // A key is only required on the body if we add in transition support\n staticClass: 'b-calendar-grid-body',\n style: disabled ? { pointerEvents: 'none' } : {}\n // key: this.activeYMD.slice(0, -3)\n },\n $gridBody\n )\n\n const $gridHelp = h(\n 'footer',\n {\n staticClass: 'b-calendar-grid-help border-top small text-muted text-center bg-light',\n attrs: {\n id: gridHelpId\n }\n },\n [h('div', { staticClass: 'small' }, this.labelHelp)]\n )\n\n const $grid = h(\n 'div',\n {\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), // `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 },\n [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]\n )\n\n // Optional bottom slot\n let $slot = this.normalizeSlot()\n $slot = $slot ? h('footer', { staticClass: 'b-calendar-footer' }, $slot) : h()\n\n const $widget = h(\n 'div',\n {\n staticClass: 'b-calendar-inner',\n style: this.block ? {} : { width: this.width },\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': [\n // Should the attr (if present) go last?\n // Or should this attr be a prop?\n this.bvAttrs['aria-describedby'],\n valueId,\n gridHelpId\n ]\n .filter(identity)\n .join(' ')\n },\n on: {\n keydown: this.onKeydownWrapper\n }\n },\n [$header, $nav, $grid, $slot]\n )\n\n // Wrap in an outer div that can be styled\n return h('div', { staticClass: 'b-calendar', class: { 'd-block': this.block } }, [$widget])\n }\n})\n","import { BCalendar } from './calendar'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CalendarPlugin = /*#__PURE__*/ pluginFactory({\n components: { BCalendar }\n})\n\nexport { CalendarPlugin, BCalendar }\n","import { Vue } from '../vue'\nimport { NAME_CARD } from '../constants/components'\nimport { PROP_TYPE_STRING } from '../constants/props'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_CARD\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const cardMixin = Vue.extend({\n props\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n title: makeProp(PROP_TYPE_STRING),\n titleTag: makeProp(PROP_TYPE_STRING, 'h4')\n },\n NAME_CARD_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardTitle = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_TITLE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.titleTag,\n mergeData(data, {\n staticClass: 'card-title'\n }),\n children || toString(props.title)\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_SUB_TITLE } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n subTitle: makeProp(PROP_TYPE_STRING),\n subTitleTag: makeProp(PROP_TYPE_STRING, 'h6'),\n subTitleTextVariant: makeProp(PROP_TYPE_STRING, 'muted')\n },\n NAME_CARD_SUB_TITLE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardSubTitle = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_SUB_TITLE,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.subTitleTag,\n mergeData(data, {\n staticClass: 'card-subtitle',\n class: [props.subTitleTextVariant ? `text-${props.subTitleTextVariant}` : null]\n }),\n children || toString(props.subTitle)\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_BODY } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { sortKeys } from '../../utils/object'\nimport {\n copyProps,\n makeProp,\n makePropsConfigurable,\n pluckProps,\n prefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardTitle, props as titleProps } from './card-title'\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...titleProps,\n ...subTitleProps,\n ...copyProps(cardProps, prefixPropName.bind(null, 'body')),\n bodyClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n overlay: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD_BODY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardBody = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_BODY,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { bodyBgVariant, bodyBorderVariant, bodyTextVariant } = props\n\n let $title = h()\n if (props.title) {\n $title = h(BCardTitle, { props: pluckProps(titleProps, props) })\n }\n\n let $subTitle = h()\n if (props.subTitle) {\n $subTitle = h(BCardSubTitle, {\n props: pluckProps(subTitleProps, props),\n class: ['mb-2']\n })\n }\n\n return h(\n props.bodyTag,\n mergeData(data, {\n staticClass: 'card-body',\n class: [\n {\n 'card-img-overlay': props.overlay,\n [`bg-${bodyBgVariant}`]: bodyBgVariant,\n [`border-${bodyBorderVariant}`]: bodyBorderVariant,\n [`text-${bodyTextVariant}`]: bodyTextVariant\n },\n props.bodyClass\n ]\n }),\n [$title, $subTitle, children]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_HEADER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...copyProps(BCardProps, prefixPropName.bind(null, 'header')),\n header: makeProp(PROP_TYPE_STRING),\n headerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n headerHtml: makeProp(PROP_TYPE_STRING)\n }),\n NAME_CARD_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardHeader = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_HEADER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { headerBgVariant, headerBorderVariant, headerTextVariant } = props\n\n return h(\n props.headerTag,\n mergeData(data, {\n staticClass: 'card-header',\n class: [\n props.headerClass,\n {\n [`bg-${headerBgVariant}`]: headerBgVariant,\n [`border-${headerBorderVariant}`]: headerBorderVariant,\n [`text-${headerTextVariant}`]: headerTextVariant\n }\n ],\n domProps: children ? {} : htmlOrText(props.headerHtml, props.header)\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_FOOTER } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { htmlOrText } from '../../utils/html'\nimport { sortKeys } from '../../utils/object'\nimport { copyProps, makeProp, makePropsConfigurable, prefixPropName } from '../../utils/props'\nimport { props as BCardProps } from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...copyProps(BCardProps, prefixPropName.bind(null, 'footer')),\n footer: makeProp(PROP_TYPE_STRING),\n footerClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n footerHtml: makeProp(PROP_TYPE_STRING)\n }),\n NAME_CARD_FOOTER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardFooter = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_FOOTER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { footerBgVariant, footerBorderVariant, footerTextVariant } = props\n\n return h(\n props.footerTag,\n mergeData(data, {\n staticClass: 'card-footer',\n class: [\n props.footerClass,\n {\n [`bg-${footerBgVariant}`]: footerBgVariant,\n [`border-${footerBorderVariant}`]: footerBorderVariant,\n [`text-${footerTextVariant}`]: footerTextVariant\n }\n ],\n domProps: children ? {} : htmlOrText(props.footerHtml, props.footer)\n }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_IMG } from '../../constants/components'\nimport {\n PROP_TYPE_ARRAY_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_BOOLEAN_STRING,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { identity } from '../../utils/identity'\nimport { isString } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\n\n// --- Constants --\n\n// Blank image with fill template\nconst BLANK_TEMPLATE =\n '' +\n '' +\n ''\n\n// --- Helper methods ---\n\nconst makeBlankImgSrc = (width, height, color) => {\n const src = encodeURIComponent(\n BLANK_TEMPLATE.replace('%{w}', toString(width))\n .replace('%{h}', toString(height))\n .replace('%{f}', color)\n )\n return `data:image/svg+xml;charset=UTF-8,${src}`\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImg = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG,\n functional: true,\n props,\n render(h, { props, data }) {\n let { alt, src, block, fluidGrow, rounded } = props\n let width = toInteger(props.width) || null\n let height = toInteger(props.height) || null\n let align = null\n let srcset = concat(props.srcset)\n .filter(identity)\n .join(',')\n let sizes = concat(props.sizes)\n .filter(identity)\n .join(',')\n\n if (props.blank) {\n if (!height && width) {\n height = width\n } else if (!width && height) {\n width = height\n }\n if (!width && !height) {\n width = 1\n height = 1\n }\n // Make a blank SVG image\n src = makeBlankImgSrc(width, height, props.blankColor || 'transparent')\n // Disable srcset and sizes\n srcset = null\n sizes = null\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(\n 'img',\n mergeData(data, {\n attrs: {\n src,\n alt,\n width: width ? toString(width) : null,\n height: height ? toString(height) : null,\n srcset: srcset || null,\n sizes: sizes || null\n },\n class: {\n 'img-thumbnail': props.thumbnail,\n 'img-fluid': props.fluid || fluidGrow,\n 'w-100': fluidGrow,\n rounded: rounded === '' || rounded === true,\n [`rounded-${rounded}`]: isString(rounded) && rounded !== '',\n [align]: align,\n 'd-block': block\n }\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { pick, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...pick(BImgProps, ['src', 'alt', 'width', 'height', 'left', 'right']),\n bottom: makeProp(PROP_TYPE_BOOLEAN, false),\n end: makeProp(PROP_TYPE_BOOLEAN, false),\n start: makeProp(PROP_TYPE_BOOLEAN, false),\n top: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD_IMG\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImg = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_IMG,\n functional: true,\n props,\n render(h, { props, data }) {\n const { src, alt, width, height } = props\n\n let baseClass = 'card-img'\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(\n 'img',\n mergeData(data, {\n class: baseClass,\n attrs: { src, alt, width, height }\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_FOOTER, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { sortKeys } from '../../utils/object'\nimport {\n copyProps,\n makeProp,\n makePropsConfigurable,\n pluckProps,\n prefixPropName,\n unprefixPropName\n} from '../../utils/props'\nimport { props as cardProps } from '../../mixins/card'\nimport { BCardBody, props as BCardBodyProps } from './card-body'\nimport { BCardHeader, props as BCardHeaderProps } from './card-header'\nimport { BCardFooter, props as BCardFooterProps } from './card-footer'\nimport { BCardImg, props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nconst cardImgProps = copyProps(BCardImgProps, prefixPropName.bind(null, 'img'))\ncardImgProps.imgSrc.required = false\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...BCardBodyProps,\n ...BCardHeaderProps,\n ...BCardFooterProps,\n ...cardImgProps,\n ...cardProps,\n align: makeProp(PROP_TYPE_STRING),\n noBody: makeProp(PROP_TYPE_BOOLEAN, false)\n }),\n NAME_CARD\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCard = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const {\n imgSrc,\n imgLeft,\n imgRight,\n imgStart,\n imgEnd,\n imgBottom,\n header,\n headerHtml,\n footer,\n footerHtml,\n align,\n textVariant,\n bgVariant,\n borderVariant\n } = props\n const $scopedSlots = scopedSlots || {}\n const $slots = slots()\n const slotScope = {}\n\n let $imgFirst = h()\n let $imgLast = h()\n if (imgSrc) {\n const $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 let $header = h()\n const hasHeaderSlot = hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots)\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(\n BCardHeader,\n {\n props: pluckProps(BCardHeaderProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n },\n normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots)\n )\n }\n\n let $content = normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n\n // Wrap content in `` when `noBody` prop set\n if (!props.noBody) {\n $content = h(BCardBody, { props: pluckProps(BCardBodyProps, props) }, $content)\n\n // 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 if (props.overlay && imgSrc) {\n $content = h('div', { staticClass: 'position-relative' }, [$imgFirst, $content, $imgLast])\n // Reset image variables since they are already in the wrapper\n $imgFirst = h()\n $imgLast = h()\n }\n }\n\n let $footer = h()\n const hasFooterSlot = hasNormalizedSlot(SLOT_NAME_FOOTER, $scopedSlots, $slots)\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(\n BCardFooter,\n {\n props: pluckProps(BCardFooterProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n },\n normalizeSlot(SLOT_NAME_FOOTER, slotScope, $scopedSlots, $slots)\n )\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'card',\n class: {\n 'flex-row': imgLeft || imgStart,\n 'flex-row-reverse': (imgRight || imgEnd) && !(imgLeft || imgStart),\n [`text-${align}`]: align,\n [`bg-${bgVariant}`]: bgVariant,\n [`border-${borderVariant}`]: borderVariant,\n [`text-${textVariant}`]: textVariant\n }\n }),\n [$imgFirst, $header, $content, $footer, $imgLast]\n )\n }\n})\n","// v-b-visible\n// Private visibility check directive\n// Based on IntersectionObserver\n//\n// Usage:\n// v-b-visibility..=\"\"\n//\n// Value:\n// : method to be called when visibility state changes, receives one arg:\n// true: element is visible\n// false: element is not visible\n// null: IntersectionObserver not supported\n//\n// Modifiers:\n// : a positive decimal value of pixels away from viewport edge\n// before being considered \"visible\". default is 0\n// : keyword 'once', meaning when the element becomes visible and\n// callback is called observation/notification will stop.\n//\n// When used in a render function:\n// export default {\n// directives: { 'b-visible': VBVisible },\n// render(h) {\n// h(\n// 'div',\n// {\n// directives: [\n// { name: 'b-visible', value=this.callback, modifiers: { '123':true, 'once':true } }\n// ]\n// }\n// )\n// }\n\nimport { RX_DIGITS } from '../../constants/regex'\nimport { requestAF } from '../../utils/dom'\nimport { isFunction } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { clone, keys } from '../../utils/object'\n\nconst OBSERVER_PROP_NAME = '__bv__visibility_observer'\n\nclass VisibilityObserver {\n constructor(el, options, vnode) {\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\n // Create the observer instance (if possible)\n this.createObserver(vnode)\n }\n\n createObserver(vnode) {\n // Remove any previous observer\n if (this.observer) {\n /* istanbul ignore next */\n this.stop()\n }\n\n // Should only be called once and `callback` prop should be a function\n if (this.doneOnce || !isFunction(this.callback)) {\n /* istanbul ignore next */\n return\n }\n\n // Create the observer instance\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 {\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 }\n\n // Start observing in a `$nextTick()` (to allow DOM to complete rendering)\n /* istanbul ignore next: IntersectionObserver not supported in JSDOM */\n vnode.context.$nextTick(() => {\n requestAF(() => {\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\n /* istanbul ignore next */\n handler(entries) {\n const entry = entries ? entries[0] : {}\n const isIntersecting = Boolean(entry.isIntersecting || entry.intersectionRatio > 0.0)\n if (isIntersecting !== this.visible) {\n this.visible = isIntersecting\n this.callback(isIntersecting)\n if (this.once && this.visible) {\n this.doneOnce = true\n this.stop()\n }\n }\n }\n\n stop() {\n /* istanbul ignore next */\n this.observer && this.observer.disconnect()\n this.observer = null\n }\n}\n\nconst destroy = el => {\n const observer = el[OBSERVER_PROP_NAME]\n if (observer && observer.stop) {\n observer.stop()\n }\n delete el[OBSERVER_PROP_NAME]\n}\n\nconst bind = (el, { value, modifiers }, vnode) => {\n // `value` is the callback function\n const options = {\n margin: '0px',\n once: false,\n callback: value\n }\n // Parse modifiers\n keys(modifiers).forEach(mod => {\n /* istanbul ignore else: Until is switched to use this directive */\n if (RX_DIGITS.test(mod)) {\n options.margin = `${mod}px`\n } else if (mod.toLowerCase() === 'once') {\n options.once = true\n }\n })\n // Destroy any previous observer\n destroy(el)\n // Create new observer\n el[OBSERVER_PROP_NAME] = new VisibilityObserver(el, options, vnode)\n // Store the current modifiers on the object (cloned)\n el[OBSERVER_PROP_NAME]._prevModifiers = clone(modifiers)\n}\n\n// When the directive options may have been updated (or element)\nconst componentUpdated = (el, { value, oldValue, modifiers }, vnode) => {\n // Compare value/oldValue and modifiers to see if anything has changed\n // and if so, destroy old observer and create new observer\n /* istanbul ignore next */\n modifiers = clone(modifiers)\n /* istanbul ignore next */\n if (\n el &&\n (value !== oldValue ||\n !el[OBSERVER_PROP_NAME] ||\n !looseEqual(modifiers, el[OBSERVER_PROP_NAME]._prevModifiers))\n ) {\n // Re-bind on element\n bind(el, { value, modifiers }, vnode)\n }\n}\n\n// When directive un-binds from element\nconst unbind = el => {\n // Remove the observer\n destroy(el)\n}\n\n// Export the directive\nexport const VBVisible = {\n bind,\n componentUpdated,\n unbind\n}\n","import { Vue } from '../../vue'\nimport { NAME_IMG_LAZY } from '../../constants/components'\nimport { HAS_INTERACTION_OBSERVER_SUPPORT } from '../../constants/env'\nimport { MODEL_EVENT_NAME_PREFIX } from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { concat } from '../../utils/array'\nimport { identity } from '../../utils/identity'\nimport { toInteger } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { VBVisible } from '../../directives/visible/visible'\nimport { BImg, props as BImgProps } from './img'\n\n// --- Constants ---\n\nconst MODEL_PROP_NAME_SHOW = 'show'\nconst MODEL_EVENT_NAME_SHOW = MODEL_EVENT_NAME_PREFIX + MODEL_PROP_NAME_SHOW\n\n// --- Props ---\n\nconst imgProps = omit(BImgProps, ['blank'])\n\nexport const props = makePropsConfigurable(\n {\n ...imgProps,\n blankColor: makeProp(PROP_TYPE_STRING, 'transparent'),\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]: makeProp(PROP_TYPE_BOOLEAN, false)\n },\n NAME_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME_IMG_LAZY,\n directives: {\n 'b-visible': VBVisible\n },\n props,\n data() {\n return {\n isShown: this[MODEL_PROP_NAME_SHOW]\n }\n },\n computed: {\n computedSrc() {\n const { blankSrc } = this\n return !blankSrc || this.isShown ? this.src : blankSrc\n },\n computedBlank() {\n return !(this.isShown || this.blankSrc)\n },\n computedWidth() {\n const { width } = this\n return this.isShown ? width : this.blankWidth || width\n },\n computedHeight() {\n const { height } = this\n return this.isShown ? height : this.blankHeight || height\n },\n computedSrcset() {\n const srcset = concat(this.srcset)\n .filter(identity)\n .join(',')\n\n return !this.blankSrc || this.isShown ? srcset : null\n },\n computedSizes() {\n const sizes = concat(this.sizes)\n .filter(identity)\n .join(',')\n\n return !this.blankSrc || this.isShown ? sizes : null\n }\n },\n watch: {\n [MODEL_PROP_NAME_SHOW](newValue, oldValue) {\n if (newValue !== oldValue) {\n // If `IntersectionObserver` support is not available, image is always shown\n const visible = HAS_INTERACTION_OBSERVER_SUPPORT ? newValue : true\n\n this.isShown = visible\n\n // Ensure the show prop is synced (when no `IntersectionObserver`)\n if (visible !== newValue) {\n this.$nextTick(this.updateShowProp)\n }\n }\n },\n isShown(newValue, oldValue) {\n // Update synched show prop\n if (newValue !== oldValue) {\n this.updateShowProp()\n }\n }\n },\n mounted() {\n // If `IntersectionObserver` is not available, image is always shown\n this.isShown = HAS_INTERACTION_OBSERVER_SUPPORT ? this[MODEL_PROP_NAME_SHOW] : true\n },\n methods: {\n updateShowProp() {\n this.$emit(MODEL_EVENT_NAME_SHOW, this.isShown)\n },\n doShow(visible) {\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 this.isShown = true\n }\n }\n },\n render(h) {\n const directives = []\n if (!this.isShown) {\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: {\n // Root margin from viewport\n [`${toInteger(this.offset, 0)}`]: true,\n // Once the image is shown, stop observing\n once: true\n }\n })\n }\n\n return h(BImg, {\n directives,\n 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 || null,\n sizes: this.computedSizes || null,\n // Passthrough props\n ...pluckProps(imgProps, this.$props)\n }\n })\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_IMG_LAZY } from '../../constants/components'\nimport { keys, omit, sortKeys } from '../../utils/object'\nimport { makePropsConfigurable } from '../../utils/props'\nimport { props as BImgProps } from '../image/img'\nimport { BImgLazy, props as BImgLazyProps } from '../image/img-lazy'\nimport { props as BCardImgProps } from './card-img'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...omit(BImgLazyProps, keys(BImgProps)),\n ...omit(BCardImgProps, ['src', 'alt', 'width', 'height'])\n }),\n NAME_CARD_IMG_LAZY\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_IMG_LAZY,\n functional: true,\n props,\n render(h, { props, data }) {\n let baseClass = 'card-img'\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(\n BImgLazy,\n mergeData(data, {\n class: [baseClass],\n // Exclude `left` and `right` props before passing to ``\n props: omit(props, ['left', 'right'])\n })\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_TEXT } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n textTag: makeProp(PROP_TYPE_STRING, 'p')\n },\n NAME_CARD_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardText = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(props.textTag, mergeData(data, { staticClass: 'card-text' }), children)\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_CARD_GROUP } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n columns: makeProp(PROP_TYPE_BOOLEAN, false),\n deck: makeProp(PROP_TYPE_BOOLEAN, false),\n tag: makeProp(PROP_TYPE_STRING, 'div')\n },\n NAME_CARD_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCardGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_CARD_GROUP,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n mergeData(data, {\n class: props.deck ? 'card-deck' : props.columns ? 'card-columns' : 'card-group'\n }),\n children\n )\n }\n})\n","import { BCard } from './card'\nimport { BCardHeader } from './card-header'\nimport { BCardBody } from './card-body'\nimport { BCardTitle } from './card-title'\nimport { BCardSubTitle } from './card-sub-title'\nimport { BCardFooter } from './card-footer'\nimport { BCardImg } from './card-img'\nimport { BCardImgLazy } from './card-img-lazy'\nimport { BCardText } from './card-text'\nimport { BCardGroup } from './card-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CardPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BCard,\n BCardHeader,\n BCardBody,\n BCardTitle,\n BCardSubTitle,\n BCardFooter,\n BCardImg,\n BCardImgLazy,\n BCardText,\n BCardGroup\n }\n})\n\nexport {\n CardPlugin,\n BCard,\n BCardHeader,\n BCardBody,\n BCardTitle,\n BCardSubTitle,\n BCardFooter,\n BCardImg,\n BCardImgLazy,\n BCardText,\n BCardGroup\n}\n","export const noop = () => {}\n","import { MutationObs, isElement } from './dom'\nimport { warnNoMutationObserverSupport } from './warn'\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 */\nexport const observeDom = (\n el,\n callback,\n options\n) => /* istanbul ignore next: difficult to test in JSDOM */ {\n // Handle cases where we might be passed a Vue instance\n el = el ? el.$el || el : null\n\n // Early exit when we have no element\n /* istanbul ignore next: difficult to test in JSDOM */\n if (!isElement(el)) {\n return null\n }\n\n // Exit and throw a warning when `MutationObserver` isn't available\n if (warnNoMutationObserverSupport('observeDom')) {\n return null\n }\n\n // Define a new observer\n const obs = new MutationObs(mutations => {\n let changed = false\n\n // 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 for (let i = 0; i < mutations.length && !changed; i++) {\n // The mutation record\n const mutation = mutations[i]\n // Mutation type\n const type = mutation.type\n // DOM node (could be any DOM node type - HTMLElement, Text, comment, etc.)\n const target = mutation.target\n\n // Detect whether a change happened based on type and target\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 (\n type === 'childList' &&\n (mutation.addedNodes.length > 0 || mutation.removedNodes.length > 0)\n ) {\n // This includes HTMLElement and text nodes being\n // added/removed/re-arranged\n changed = true\n }\n }\n\n // We only call the callback if a change that could affect\n // layout/size truly happened\n if (changed) {\n callback()\n }\n })\n\n // Have the observer observe foo for changes in children, etc\n obs.observe(el, { childList: true, subtree: true, ...options })\n\n // 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 return obs\n}\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL } from '../../constants/components'\nimport { IS_BROWSER, HAS_POINTER_EVENT_SUPPORT, HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport {\n EVENT_NAME_PAUSED,\n EVENT_NAME_SLIDING_END,\n EVENT_NAME_SLIDING_START,\n EVENT_NAME_UNPAUSED,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { CODE_ENTER, CODE_LEFT, CODE_RIGHT, CODE_SPACE } from '../../constants/key-codes'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport {\n addClass,\n getActiveElement,\n reflow,\n removeClass,\n requestAF,\n selectAll,\n setAttr\n} from '../../utils/dom'\nimport { eventOn, eventOff, stopEvent } from '../../utils/events'\nimport { isUndefined } from '../../utils/inspect'\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math'\nimport { makeModelMixin } from '../../utils/model'\nimport { toInteger } from '../../utils/number'\nimport { noop } from '../../utils/noop'\nimport { sortKeys } from '../../utils/object'\nimport { observeDom } from '../../utils/observe-dom'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('value', {\n type: PROP_TYPE_NUMBER,\n defaultValue: 0\n})\n\n// Slide directional classes\nconst 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}\n\n// Fallback Transition duration (with a little buffer) in ms\nconst TRANS_DURATION = 600 + 50\n\n// Time for mouse compat events to fire after touch\nconst TOUCH_EVENT_COMPAT_WAIT = 500\n\n// Number of pixels to consider touch move a swipe\nconst SWIPE_THRESHOLD = 40\n\n// PointerEvent pointer types\nconst PointerType = {\n TOUCH: 'touch',\n PEN: 'pen'\n}\n\n// Transition Event names\nconst TransitionEndEvents = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'otransitionend oTransitionEnd',\n transition: 'transitionend'\n}\n\n// --- Helper methods ---\n\n// Return the browser specific transitionEnd event name\nconst getTransitionEndEvent = el => {\n for (const name in TransitionEndEvents) {\n if (!isUndefined(el.style[name])) {\n return TransitionEndEvents[name]\n }\n }\n // Fallback\n /* istanbul ignore next */\n return null\n}\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\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 }),\n NAME_CAROUSEL\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarousel = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL,\n mixins: [idMixin, modelMixin, normalizeSlotMixin],\n provide() {\n return { bvCarousel: this }\n },\n props,\n data() {\n return {\n index: this[MODEL_PROP_NAME] || 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() {\n return this.slides.length\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue, oldValue) {\n if (newValue !== oldValue) {\n this.setSlide(toInteger(newValue, 0))\n }\n },\n interval(newValue, oldValue) {\n /* istanbul ignore next */\n if (newValue === oldValue) {\n return\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 },\n isPaused(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.$emit(newValue ? EVENT_NAME_PAUSED : EVENT_NAME_UNPAUSED)\n }\n },\n index(to, from) {\n /* istanbul ignore next */\n if (to === from || this.isSliding) {\n return\n }\n this.doSlide(to, from)\n }\n },\n created() {\n // Create private non-reactive props\n this.$_interval = null\n this.$_animationTimeout = null\n this.$_touchTimeout = null\n this.$_observer = null\n // Set initial paused state\n this.isPaused = !(toInteger(this.interval, 0) > 0)\n },\n mounted() {\n // Cache current browser transitionend event name\n this.transitionEndEvent = getTransitionEndEvent(this.$el) || null\n // Get all slides\n this.updateSlides()\n // Observe child changes so we can update slide list\n this.setObserver(true)\n },\n beforeDestroy() {\n this.clearInterval()\n this.clearAnimationTimeout()\n this.clearTouchTimeout()\n this.setObserver(false)\n },\n methods: {\n clearInterval() {\n clearInterval(this.$_interval)\n this.$_interval = null\n },\n clearAnimationTimeout() {\n clearTimeout(this.$_animationTimeout)\n this.$_animationTimeout = null\n },\n clearTouchTimeout() {\n clearTimeout(this.$_touchTimeout)\n this.$_touchTimeout = null\n },\n setObserver(on = false) {\n this.$_observer && this.$_observer.disconnect()\n this.$_observer = null\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(slide, direction = null) {\n // Don't animate when page is not visible\n /* istanbul ignore if: difficult to test */\n if (IS_BROWSER && document.visibilityState && document.hidden) {\n return\n }\n const noWrap = this.noWrap\n const numSlides = this.numSlides\n // Make sure we have an integer (you never know!)\n slide = mathFloor(slide)\n // Don't do anything if nothing to slide to\n if (numSlides === 0) {\n return\n }\n // Don't change slide while transitioning, wait until transition is done\n if (this.isSliding) {\n // Schedule slide after sliding complete\n this.$once(EVENT_NAME_SLIDING_END, () => {\n // Wrap in `requestAF()` to allow the slide to properly finish to avoid glitching\n requestAF(() => this.setSlide(slide, direction))\n })\n return\n }\n this.direction = direction\n // Set new slide index\n // Wrap around if necessary (if no-wrap not enabled)\n this.index =\n slide >= numSlides\n ? noWrap\n ? numSlides - 1\n : 0\n : slide < 0\n ? noWrap\n ? 0\n : numSlides - 1\n : slide\n // Ensure the v-model is synched up if no-wrap is enabled\n // and user tried to slide pass either ends\n if (noWrap && this.index !== slide && this.index !== this[MODEL_PROP_NAME]) {\n this.$emit(MODEL_EVENT_NAME, this.index)\n }\n },\n // Previous slide\n prev() {\n this.setSlide(this.index - 1, 'prev')\n },\n // Next slide\n next() {\n this.setSlide(this.index + 1, 'next')\n },\n // Pause auto rotation\n pause(event) {\n if (!event) {\n this.isPaused = true\n }\n this.clearInterval()\n },\n // Start auto rotate slides\n start(event) {\n if (!event) {\n this.isPaused = false\n }\n /* istanbul ignore next: most likely will never happen, but just in case */\n this.clearInterval()\n // Don't start if no interval, or less than 2 slides\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 /* istanbul ignore next */\n restart() {\n if (!this.$el.contains(getActiveElement())) {\n this.start()\n }\n },\n doSlide(to, from) {\n const isCycling = Boolean(this.interval)\n // Determine sliding direction\n const direction = this.calcDirection(this.direction, from, to)\n const overlayClass = direction.overlayClass\n const dirClass = direction.dirClass\n // Determine current and next slides\n const currentSlide = this.slides[from]\n const nextSlide = this.slides[to]\n // Don't do anything if there aren't any slides to slide to\n if (!currentSlide || !nextSlide) {\n /* istanbul ignore next */\n return\n }\n // Start animating\n this.isSliding = true\n if (isCycling) {\n this.pause(false)\n }\n this.$emit(EVENT_NAME_SLIDING_START, to)\n // Update v-model\n this.$emit(MODEL_EVENT_NAME, this.index)\n if (this.noAnimation) {\n addClass(nextSlide, 'active')\n removeClass(currentSlide, 'active')\n this.isSliding = false\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n } else {\n addClass(nextSlide, overlayClass)\n // Trigger a reflow of next slide\n reflow(nextSlide)\n addClass(currentSlide, dirClass)\n addClass(nextSlide, dirClass)\n // Transition End handler\n let called = false\n /* istanbul ignore next: difficult to test */\n const onceTransEnd = () => {\n if (called) {\n return\n }\n called = true\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(event =>\n eventOff(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE)\n )\n }\n this.clearAnimationTimeout()\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 this.isSliding = false\n this.direction = null\n // Notify ourselves that we're done sliding (slid)\n this.$nextTick(() => this.$emit(EVENT_NAME_SLIDING_END, to))\n }\n // Set up transitionend handler\n /* istanbul ignore if: transition events cant be tested in JSDOM */\n if (this.transitionEndEvent) {\n const events = this.transitionEndEvent.split(/\\s+/)\n events.forEach(event => eventOn(nextSlide, event, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\n }\n // Fallback to setTimeout()\n this.$_animationTimeout = setTimeout(onceTransEnd, TRANS_DURATION)\n }\n if (isCycling) {\n this.start(false)\n }\n },\n // Update slide list\n updateSlides() {\n this.pause(true)\n // Get all slides as DOM elements\n this.slides = selectAll('.carousel-item', this.$refs.inner)\n const numSlides = this.slides.length\n // Keep slide number in range\n const index = mathMax(0, mathMin(mathFloor(this.index), numSlides - 1))\n this.slides.forEach((slide, idx) => {\n const n = idx + 1\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 setAttr(slide, 'aria-posinset', String(n))\n setAttr(slide, 'aria-setsize', String(numSlides))\n })\n // Set slide as active\n this.setSlide(index)\n this.start(this.isPaused)\n },\n calcDirection(direction = null, curIndex = 0, nextIndex = 0) {\n if (!direction) {\n return nextIndex > curIndex ? DIRECTION.next : DIRECTION.prev\n }\n return DIRECTION[direction]\n },\n handleClick(event, fn) {\n const keyCode = event.keyCode\n if (event.type === 'click' || keyCode === CODE_SPACE || keyCode === CODE_ENTER) {\n stopEvent(event)\n fn()\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n handleSwipe() {\n const absDeltaX = mathAbs(this.touchDeltaX)\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return\n }\n const direction = absDeltaX / this.touchDeltaX\n // Reset touch delta X\n // https://github.com/twbs/bootstrap/pull/28558\n this.touchDeltaX = 0\n if (direction > 0) {\n // Swipe left\n this.prev()\n } else if (direction < 0) {\n // Swipe right\n this.next()\n }\n },\n /* istanbul ignore next: JSDOM doesn't support touch events */\n 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 /* istanbul ignore next: JSDOM doesn't support touch events */\n 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 /* istanbul ignore next: JSDOM doesn't support touch events */\n touchEnd(event) {\n if (HAS_POINTER_EVENT_SUPPORT && PointerType[event.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n this.handleSwipe()\n // 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 this.pause(false)\n this.clearTouchTimeout()\n this.$_touchTimeout = setTimeout(\n this.start,\n TOUCH_EVENT_COMPAT_WAIT + mathMax(1000, this.interval)\n )\n }\n },\n render(h) {\n const {\n indicators,\n background,\n noAnimation,\n noHoverPause,\n noTouch,\n index,\n isSliding,\n pause,\n restart,\n touchStart,\n touchEnd\n } = this\n const idInner = this.safeId('__BV_inner_')\n\n // Wrapper for slides\n const $inner = h(\n 'div',\n {\n staticClass: 'carousel-inner',\n attrs: {\n id: idInner,\n role: 'list'\n },\n ref: 'inner'\n },\n [this.normalizeSlot()]\n )\n\n // Prev and next controls\n let $controls = h()\n if (this.controls) {\n const makeControl = (direction, label, handler) => {\n const handlerWrapper = event => {\n /* istanbul ignore next */\n if (!isSliding) {\n this.handleClick(event, handler)\n } else {\n stopEvent(event, { propagation: false })\n }\n }\n\n return h(\n 'a',\n {\n staticClass: `carousel-control-${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 },\n [\n h('span', {\n staticClass: `carousel-control-${direction}-icon`,\n attrs: { 'aria-hidden': 'true' }\n }),\n h('span', { class: 'sr-only' }, [label])\n ]\n )\n }\n\n $controls = [\n makeControl('prev', this.labelPrev, this.prev),\n makeControl('next', this.labelNext, this.next)\n ]\n }\n\n // Indicators\n const $indicators = h(\n 'ol',\n {\n staticClass: 'carousel-indicators',\n directives: [{ name: 'show', value: indicators }],\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 },\n this.slides.map((slide, i) => {\n const handler = event => {\n this.handleClick(event, () => {\n this.setSlide(i)\n })\n }\n\n return h('li', {\n class: { active: i === index },\n attrs: {\n role: 'button',\n id: this.safeId(`__BV_indicator_${i + 1}_`),\n tabindex: indicators ? '0' : '-1',\n 'aria-current': i === index ? 'true' : 'false',\n 'aria-label': `${this.labelGotoSlide} ${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_${i}`\n })\n })\n )\n\n const on = {\n mouseenter: noHoverPause ? noop : pause,\n mouseleave: noHoverPause ? noop : restart,\n focusin: pause,\n focusout: restart,\n keydown: event => {\n /* istanbul ignore next */\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n const { keyCode } = event\n if (keyCode === CODE_LEFT || keyCode === CODE_RIGHT) {\n stopEvent(event)\n this[keyCode === CODE_LEFT ? 'prev' : 'next']()\n }\n }\n }\n // Touch support event handlers for environment\n if (HAS_TOUCH_SUPPORT && !noTouch) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\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 }\n\n // Return the carousel\n return h(\n 'div',\n {\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: { background },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': isSliding ? 'true' : 'false'\n },\n on\n },\n [$inner, $controls, $indicators]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_CAROUSEL_SLIDE } from '../../constants/components'\nimport { HAS_TOUCH_SUPPORT } from '../../constants/env'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_NUMBER_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_IMG } from '../../constants/slots'\nimport { stopEvent } from '../../utils/events'\nimport { htmlOrText } from '../../utils/html'\nimport { identity } from '../../utils/identity'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps, unprefixPropName } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BImg } from '../image/img'\n\n// --- Props ---\n\nconst 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}\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...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 }),\n NAME_CAROUSEL_SLIDE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCarouselSlide = /*#__PURE__*/ Vue.extend({\n name: NAME_CAROUSEL_SLIDE,\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvCarousel: {\n // Explicitly disable touch if not a child of carousel\n default: () => ({ noTouch: true })\n }\n },\n props,\n computed: {\n contentClasses() {\n return [\n this.contentVisibleUp ? 'd-none' : '',\n this.contentVisibleUp ? `d-${this.contentVisibleUp}-block` : ''\n ]\n },\n computedWidth() {\n // Use local width, or try parent width\n return this.imgWidth || this.bvCarousel.imgWidth || null\n },\n computedHeight() {\n // Use local height, or try parent height\n return this.imgHeight || this.bvCarousel.imgHeight || null\n }\n },\n render(h) {\n let $img = this.normalizeSlot(SLOT_NAME_IMG)\n if (!$img && (this.imgSrc || this.imgBlank)) {\n const on = {}\n // Touch support event handler\n /* istanbul ignore if: difficult to test in JSDOM */\n if (!this.bvCarousel.noTouch && HAS_TOUCH_SUPPORT) {\n on.dragstart = event => stopEvent(event, { propagation: false })\n }\n\n $img = h(BImg, {\n props: {\n ...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\n })\n }\n\n const $contentChildren = [\n // Caption\n this.caption || this.captionHtml\n ? h(this.captionTag, { domProps: htmlOrText(this.captionHtml, this.caption) })\n : false,\n // Text\n this.text || this.textHtml\n ? h(this.textTag, { domProps: htmlOrText(this.textHtml, this.text) })\n : false,\n // Children\n this.normalizeSlot() || false\n ]\n\n let $content = h()\n if ($contentChildren.some(identity)) {\n $content = h(\n this.contentTag,\n {\n staticClass: 'carousel-caption',\n class: this.contentClasses\n },\n $contentChildren.map($child => $child || h())\n )\n }\n\n return h(\n 'div',\n {\n staticClass: 'carousel-item',\n style: { background: this.background || this.bvCarousel.background || null },\n attrs: { id: this.safeId(), role: 'listitem' }\n },\n [$img, $content]\n )\n }\n})\n","import { BCarousel } from './carousel'\nimport { BCarouselSlide } from './carousel-slide'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CarouselPlugin = /*#__PURE*/ pluginFactory({\n components: {\n BCarousel,\n BCarouselSlide\n }\n})\n\nexport { CarouselPlugin, BCarousel, BCarouselSlide }\n","export const CLASS_NAME_SHOW = 'show'\nexport const CLASS_NAME_FADE = 'fade'\n","// Generic collapse transion helper component\n//\n// Note:\n// Applies the classes `collapse`, `show` and `collapsing`\n// during the enter/leave transition phases only\n// Although it appears that Vue may be leaving the classes\n// in-place after the transition completes\nimport { Vue, mergeData } from '../../../vue'\nimport { NAME_COLLAPSE_HELPER } from '../../../constants/components'\nimport { PROP_TYPE_BOOLEAN } from '../../../constants/props'\nimport { getBCR, reflow, removeStyle, requestAF, setStyle } from '../../../utils/dom'\nimport { makeProp } from '../../../utils/props'\n\n// --- Helper methods ---\n\n// Transition event handler helpers\nconst onEnter = el => {\n setStyle(el, 'height', 0)\n // In a `requestAF()` for `appear` to work\n requestAF(() => {\n reflow(el)\n setStyle(el, 'height', `${el.scrollHeight}px`)\n })\n}\n\nconst onAfterEnter = el => {\n removeStyle(el, 'height')\n}\n\nconst onLeave = el => {\n setStyle(el, 'height', 'auto')\n setStyle(el, 'display', 'block')\n setStyle(el, 'height', `${getBCR(el).height}px`)\n reflow(el)\n setStyle(el, 'height', 0)\n}\n\nconst onAfterLeave = el => {\n removeStyle(el, 'height')\n}\n\n// --- Constants ---\n\n// Default transition props\n// `appear` will use the enter classes\nconst 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}\n\n// Default transition handlers\n// `appear` will use the enter handlers\nconst TRANSITION_HANDLERS = {\n enter: onEnter,\n afterEnter: onAfterEnter,\n leave: onLeave,\n afterLeave: onAfterLeave\n}\n\n// --- Main component ---\n\nexport const props = {\n // // If `true` (and `visible` is `true` on mount), animate initially visible\n appear: makeProp(PROP_TYPE_BOOLEAN, false)\n}\n\n// --- Main component ---\n\n// @vue/component\nexport const BVCollapse = /*#__PURE__*/ Vue.extend({\n name: NAME_COLLAPSE_HELPER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'transition',\n // We merge in the `appear` prop last\n mergeData(data, { props: TRANSITION_PROPS, on: TRANSITION_HANDLERS }, { props }),\n // Note: `` supports a single root element only\n children\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_COLLAPSE } from '../../constants/components'\nimport { CLASS_NAME_SHOW } from '../../constants/classes'\nimport { IS_BROWSER } from '../../constants/env'\nimport {\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_OPTIONS_NO_CAPTURE\n} from '../../constants/events'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOnOff } from '../../utils/events'\nimport { makeModelMixin } from '../../utils/model'\nimport { sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { listenOnRootMixin } from '../../mixins/listen-on-root'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BVCollapse } from './helpers/bv-collapse'\n\n// --- Constants ---\n\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst ROOT_EVENT_NAME_ACCORDION = getRootEventName(NAME_COLLAPSE, 'accordion')\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\nconst {\n mixin: modelMixin,\n props: modelProps,\n prop: MODEL_PROP_NAME,\n event: MODEL_EVENT_NAME\n} = makeModelMixin('visible', { type: PROP_TYPE_BOOLEAN, defaultValue: false })\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...modelProps,\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 }),\n NAME_COLLAPSE\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BCollapse = /*#__PURE__*/ Vue.extend({\n name: NAME_COLLAPSE,\n mixins: [idMixin, modelMixin, normalizeSlotMixin, listenOnRootMixin],\n props,\n data() {\n return {\n show: this[MODEL_PROP_NAME],\n transitioning: false\n }\n },\n computed: {\n classObject() {\n const { transitioning } = this\n\n return {\n 'navbar-collapse': this.isNav,\n collapse: !transitioning,\n show: this.show && !transitioning\n }\n },\n slotScope() {\n return {\n visible: this.show,\n close: () => {\n this.show = false\n }\n }\n }\n },\n watch: {\n [MODEL_PROP_NAME](newValue) {\n if (newValue !== this.show) {\n this.show = newValue\n }\n },\n show(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.emitState()\n }\n }\n },\n created() {\n this.show = this[MODEL_PROP_NAME]\n },\n mounted() {\n this.show = this[MODEL_PROP_NAME]\n // Listen for toggle events to open/close us\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_TOGGLE, this.handleToggleEvt)\n // Listen to other collapses for accordion events\n this.listenOnRoot(ROOT_EVENT_NAME_ACCORDION, this.handleAccordionEvt)\n if (this.isNav) {\n // Set up handlers\n this.setWindowEvents(true)\n this.handleResize()\n }\n this.$nextTick(() => {\n this.emitState()\n })\n // Listen for \"Sync state\" requests from `v-b-toggle`\n this.listenOnRoot(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, id => {\n if (id === this.safeId()) {\n this.$nextTick(this.emitSync)\n }\n })\n },\n 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 /* istanbul ignore next */\n deactivated() {\n if (this.isNav) {\n this.setWindowEvents(false)\n }\n },\n /* istanbul ignore next */\n activated() {\n if (this.isNav) {\n this.setWindowEvents(true)\n }\n this.emitSync()\n },\n beforeDestroy() {\n // Trigger state emit if needed\n this.show = false\n if (this.isNav && IS_BROWSER) {\n this.setWindowEvents(false)\n }\n },\n methods: {\n 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() {\n this.show = !this.show\n },\n onEnter() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit(EVENT_NAME_SHOW)\n },\n onAfterEnter() {\n this.transitioning = false\n this.$emit(EVENT_NAME_SHOWN)\n },\n onLeave() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit(EVENT_NAME_HIDE)\n },\n onAfterLeave() {\n this.transitioning = false\n this.$emit(EVENT_NAME_HIDDEN)\n },\n emitState() {\n const { show, accordion } = this\n const id = this.safeId()\n\n this.$emit(MODEL_EVENT_NAME, show)\n\n // Let `v-b-toggle` know the state of this collapse\n this.emitOnRoot(ROOT_EVENT_NAME_STATE, id, show)\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() {\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, this.safeId(), this.show)\n },\n 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 const { $el } = this\n const restore = hasClass($el, CLASS_NAME_SHOW)\n removeClass($el, CLASS_NAME_SHOW)\n const isBlock = getCS($el).display === 'block'\n if (restore) {\n addClass($el, CLASS_NAME_SHOW)\n }\n return isBlock\n },\n clickHandler(event) {\n const { target: el } = event\n // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n /* istanbul ignore next: can't test `getComputedStyle()` in JSDOM */\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n return\n }\n // Only close the collapse if it is not forced to be `display: block !important`\n if (\n (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) &&\n !this.checkDisplayBlock()\n ) {\n this.show = false\n }\n },\n handleToggleEvt(id) {\n if (id === this.safeId()) {\n this.toggle()\n }\n },\n handleAccordionEvt(openedId, openAccordion) {\n const { accordion, show } = this\n if (!accordion || accordion !== openAccordion) {\n return\n }\n const isThis = openedId === this.safeId()\n // Open this collapse if not shown or\n // close this collapse if shown\n if ((isThis && !show) || (!isThis && show)) {\n this.toggle()\n }\n },\n 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(h) {\n const { appear } = this\n\n const $content = h(\n this.tag,\n {\n class: this.classObject,\n directives: [{ name: 'show', value: this.show }],\n attrs: { id: this.safeId() },\n on: { click: this.clickHandler }\n },\n this.normalizeSlot(SLOT_NAME_DEFAULT, this.slotScope)\n )\n\n return h(\n BVCollapse,\n {\n props: { appear },\n on: {\n enter: this.onEnter,\n afterEnter: this.onAfterEnter,\n leave: this.onLeave,\n afterLeave: this.onAfterLeave\n }\n },\n [$content]\n )\n }\n})\n","import { NAME_COLLAPSE } from '../../constants/components'\nimport { IS_BROWSER } from '../../constants/env'\nimport { EVENT_OPTIONS_PASSIVE } from '../../constants/events'\nimport { CODE_ENTER, CODE_SPACE } from '../../constants/key-codes'\nimport { RX_HASH, RX_HASH_ID, RX_SPACE_SPLIT } from '../../constants/regex'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n addClass,\n getAttr,\n hasAttr,\n isDisabled,\n isTag,\n removeAttr,\n removeClass,\n removeStyle,\n requestAF,\n setAttr,\n setStyle\n} from '../../utils/dom'\nimport { getRootActionEventName, getRootEventName, eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { looseEqual } from '../../utils/loose-equal'\nimport { keys } from '../../utils/object'\n\n// --- Constants ---\n\n// Classes to apply to trigger element\nconst CLASS_BV_TOGGLE_COLLAPSED = 'collapsed'\nconst CLASS_BV_TOGGLE_NOT_COLLAPSED = 'not-collapsed'\n\n// Property key for handler storage\nconst BV_BASE = '__BV_toggle'\n// Root event listener property (Function)\nconst BV_TOGGLE_ROOT_HANDLER = `${BV_BASE}_HANDLER__`\n// Trigger element click handler property (Function)\nconst BV_TOGGLE_CLICK_HANDLER = `${BV_BASE}_CLICK__`\n// Target visibility state property (Boolean)\nconst BV_TOGGLE_STATE = `${BV_BASE}_STATE__`\n// Target ID list property (Array)\nconst BV_TOGGLE_TARGETS = `${BV_BASE}_TARGETS__`\n\n// Commonly used strings\nconst STRING_FALSE = 'false'\nconst STRING_TRUE = 'true'\n\n// Commonly used attribute names\nconst ATTR_ARIA_CONTROLS = 'aria-controls'\nconst ATTR_ARIA_EXPANDED = 'aria-expanded'\nconst ATTR_ROLE = 'role'\nconst ATTR_TABINDEX = 'tabindex'\n\n// Commonly used style properties\nconst STYLE_OVERFLOW_ANCHOR = 'overflow-anchor'\n\n// Emitted control event for collapse (emitted to collapse)\nconst ROOT_ACTION_EVENT_NAME_TOGGLE = getRootActionEventName(NAME_COLLAPSE, 'toggle')\n\n// Listen to event for toggle state update (emitted by collapse)\nconst ROOT_EVENT_NAME_STATE = getRootEventName(NAME_COLLAPSE, 'state')\n\n// 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\nconst ROOT_EVENT_NAME_SYNC_STATE = getRootEventName(NAME_COLLAPSE, 'sync-state')\n\n// Private event we send to collapse to request state update sync event\nconst ROOT_ACTION_EVENT_NAME_REQUEST_STATE = getRootActionEventName(NAME_COLLAPSE, 'request-state')\n\nconst KEYDOWN_KEY_CODES = [CODE_ENTER, CODE_SPACE]\n\n// --- Helper methods ---\n\nconst isNonStandardTag = el => !arrayIncludes(['button', 'a'], el.tagName.toLowerCase())\n\nconst getTargets = ({ modifiers, arg, value }, el) => {\n // Any modifiers are considered target IDs\n const targets = keys(modifiers || {})\n\n // If value is a string, split out individual targets (if space delimited)\n value = isString(value) ? value.split(RX_SPACE_SPLIT) : value\n\n // Support target ID as link href (`href=\"#id\"`)\n if (isTag(el.tagName, 'a')) {\n const href = getAttr(el, 'href') || ''\n if (RX_HASH_ID.test(href)) {\n targets.push(href.replace(RX_HASH, ''))\n }\n }\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 concat(arg, value).forEach(t => isString(t) && targets.push(t))\n\n // Return only unique and truthy target IDs\n return targets.filter((t, index, arr) => t && arr.indexOf(t) === index)\n}\n\nconst removeClickListener = el => {\n const handler = el[BV_TOGGLE_CLICK_HANDLER]\n if (handler) {\n eventOff(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n eventOff(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n el[BV_TOGGLE_CLICK_HANDLER] = null\n}\n\nconst addClickListener = (el, vnode) => {\n removeClickListener(el)\n if (vnode.context) {\n const handler = event => {\n if (\n !(event.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, event.keyCode)) &&\n !isDisabled(el)\n ) {\n const targets = el[BV_TOGGLE_TARGETS] || []\n targets.forEach(target => {\n vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_TOGGLE, target)\n })\n }\n }\n el[BV_TOGGLE_CLICK_HANDLER] = handler\n eventOn(el, 'click', handler, EVENT_OPTIONS_PASSIVE)\n if (isNonStandardTag(el)) {\n eventOn(el, 'keydown', handler, EVENT_OPTIONS_PASSIVE)\n }\n }\n}\n\nconst removeRootListeners = (el, vnode) => {\n if (el[BV_TOGGLE_ROOT_HANDLER] && vnode.context) {\n vnode.context.$root.$off(\n [ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE],\n el[BV_TOGGLE_ROOT_HANDLER]\n )\n }\n el[BV_TOGGLE_ROOT_HANDLER] = null\n}\n\nconst addRootListeners = (el, vnode) => {\n removeRootListeners(el, vnode)\n if (vnode.context) {\n const 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\n // Set `aria-expanded` and class state on trigger element\n setToggleState(el, state)\n }\n }\n el[BV_TOGGLE_ROOT_HANDLER] = handler\n // Listen for toggle state changes (public) and sync (private)\n vnode.context.$root.$on([ROOT_EVENT_NAME_STATE, ROOT_EVENT_NAME_SYNC_STATE], handler)\n }\n}\n\nconst 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}\n\n// Reset and remove a property from the provided element\nconst resetProp = (el, prop) => {\n el[prop] = null\n delete el[prop]\n}\n\n// Handle directive updates\nconst handleUpdate = (el, binding, vnode) => {\n /* istanbul ignore next: should never happen */\n if (!IS_BROWSER || !vnode.context) {\n return\n }\n\n // If element is not a button or link, we add `role=\"button\"`\n // and `tabindex=\"0\"` for accessibility reasons\n if (isNonStandardTag(el)) {\n if (!hasAttr(el, ATTR_ROLE)) {\n setAttr(el, ATTR_ROLE, 'button')\n }\n if (!hasAttr(el, ATTR_TABINDEX)) {\n setAttr(el, ATTR_TABINDEX, '0')\n }\n }\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 setToggleState(el, el[BV_TOGGLE_STATE])\n\n // Parse list of target IDs\n const targets = getTargets(binding, el)\n\n // 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 /* istanbul ignore else */\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 }\n\n // Add/Update our click listener(s)\n // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n requestAF(() => {\n addClickListener(el, vnode)\n })\n\n // If targets array has changed, update\n if (!looseEqual(targets, el[BV_TOGGLE_TARGETS])) {\n // Update targets array to element storage\n el[BV_TOGGLE_TARGETS] = targets\n // 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 targets.forEach(target => {\n vnode.context.$root.$emit(ROOT_ACTION_EVENT_NAME_REQUEST_STATE, target)\n })\n }\n}\n\n/*\n * Export our directive\n */\nexport const VBToggle = {\n bind(el, binding, vnode) {\n // State is initially collapsed until we receive a state event\n el[BV_TOGGLE_STATE] = false\n // Assume no targets initially\n el[BV_TOGGLE_TARGETS] = []\n // Add our root listeners\n addRootListeners(el, vnode)\n // Initial update of trigger\n handleUpdate(el, binding, vnode)\n },\n componentUpdated: handleUpdate,\n updated: handleUpdate,\n unbind(el, binding, vnode) {\n removeClickListener(el)\n // Remove our $root listener\n removeRootListeners(el, vnode)\n // Reset custom props\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)\n // Reset classes/attrs/styles\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","import { VBToggle } from './toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst VBTogglePlugin = /*#__PURE__*/ pluginFactory({\n directives: { VBToggle }\n})\n\nexport { VBTogglePlugin, VBToggle }\n","import { BCollapse } from './collapse'\nimport { VBTogglePlugin } from '../../directives/toggle'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst CollapsePlugin = /*#__PURE__*/ pluginFactory({\n components: { BCollapse },\n plugins: { VBTogglePlugin }\n})\n\nexport { CollapsePlugin, BCollapse }\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function 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\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (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\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
\n * It will read the variation of the `placement` property.
\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.
\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
\n * These can be overridden using the `options` argument of Popper.js.
\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","export const PLACEMENT_TOP_START = 'top-start'\nexport const PLACEMENT_TOP_END = 'top-end'\nexport const PLACEMENT_BOTTOM_START = 'bottom-start'\nexport const PLACEMENT_BOTTOM_END = 'bottom-end'\nexport const PLACEMENT_RIGHT_START = 'right-start'\nexport const PLACEMENT_RIGHT_END = 'right-end'\nexport const PLACEMENT_LEFT_START = 'left-start'\nexport const PLACEMENT_LEFT_END = 'left-end'\n","import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object'\n\nexport class BvEvent {\n constructor(type, eventInit = {}) {\n // Start by emulating native Event constructor\n if (!type) {\n /* istanbul ignore next */\n throw new TypeError(\n `Failed to construct '${this.constructor.name}'. 1 argument required, ${\n arguments.length\n } given.`\n )\n }\n\n // Merge defaults first, the eventInit, and the type last\n // so it can't be overwritten\n assign(this, BvEvent.Defaults, this.constructor.Defaults, eventInit, { type })\n\n // Freeze some props as readonly, but leave them enumerable\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 })\n\n // Create a private variable using closure scoping\n let defaultPrevented = false\n // Recreate preventDefault method. One way setter\n this.preventDefault = function preventDefault() {\n if (this.cancelable) {\n defaultPrevented = true\n }\n }\n\n // Create `defaultPrevented` publicly accessible prop that\n // can only be altered by the preventDefault method\n defineProperty(this, 'defaultPrevented', {\n enumerable: true,\n get() {\n return defaultPrevented\n }\n })\n }\n\n static get Defaults() {\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","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { contains } from '../utils/dom'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const clickOutMixin = Vue.extend({\n data() {\n return {\n listenForClickOut: false\n }\n },\n watch: {\n listenForClickOut(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n if (newValue) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.clickOutElement = null\n this.clickOutEventName = null\n },\n mounted() {\n if (!this.clickOutElement) {\n this.clickOutElement = document\n }\n if (!this.clickOutEventName) {\n this.clickOutEventName = 'click'\n }\n if (this.listenForClickOut) {\n eventOn(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n }\n },\n beforeDestroy() {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n },\n methods: {\n isClickOut(event) {\n return !contains(this.$el, event.target)\n },\n _clickOutHandler(event) {\n if (this.clickOutHandler && this.isClickOut(event)) {\n this.clickOutHandler(event)\n }\n }\n }\n})\n","import { Vue } from '../vue'\nimport { EVENT_OPTIONS_NO_CAPTURE } from '../constants/events'\nimport { eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport const focusInMixin = Vue.extend({\n data() {\n return {\n listenForFocusIn: false\n }\n },\n watch: {\n listenForFocusIn(newValue, oldValue) {\n if (newValue !== oldValue) {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n if (newValue) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n }\n }\n },\n beforeCreate() {\n // Declare non-reactive properties\n this.focusInElement = null\n },\n mounted() {\n if (!this.focusInElement) {\n this.focusInElement = document\n }\n if (this.listenForFocusIn) {\n eventOn(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n }\n },\n beforeDestroy() {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n },\n methods: {\n _focusInHandler(event) {\n if (this.focusInHandler) {\n this.focusInHandler(event)\n }\n }\n }\n})\n","import Popper from 'popper.js'\nimport { Vue } from '../vue'\nimport { NAME_DROPDOWN } from '../constants/components'\nimport {\n EVENT_NAME_CLICK,\n EVENT_NAME_HIDDEN,\n EVENT_NAME_HIDE,\n EVENT_NAME_SHOW,\n EVENT_NAME_SHOWN,\n EVENT_NAME_TOGGLE\n} from '../constants/events'\nimport { CODE_DOWN, CODE_ENTER, CODE_ESC, CODE_SPACE, CODE_UP } from '../constants/key-codes'\nimport {\n PLACEMENT_TOP_START,\n PLACEMENT_TOP_END,\n PLACEMENT_BOTTOM_START,\n PLACEMENT_BOTTOM_END,\n PLACEMENT_RIGHT_START,\n PLACEMENT_LEFT_START\n} from '../constants/popper'\nimport {\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_NUMBER_STRING,\n PROP_TYPE_OBJECT,\n PROP_TYPE_STRING\n} from '../constants/props'\nimport { HTMLElement } from '../constants/safe-types'\nimport { BvEvent } from '../utils/bv-event.class'\nimport { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'\nimport { getRootEventName, stopEvent } from '../utils/events'\nimport { isNull } from '../utils/inspect'\nimport { mergeDeep, sortKeys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\nimport { clickOutMixin } from './click-out'\nimport { focusInMixin } from './focus-in'\nimport { idMixin, props as idProps } from './id'\nimport { listenOnRootMixin } from './listen-on-root'\n\n// --- Constants ---\n\nconst ROOT_EVENT_NAME_SHOWN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_SHOWN)\nconst ROOT_EVENT_NAME_HIDDEN = getRootEventName(NAME_DROPDOWN, EVENT_NAME_HIDDEN)\n\n// CSS selectors\nconst SELECTOR_FORM_CHILD = '.dropdown form'\nconst SELECTOR_ITEM = ['.dropdown-item', '.b-dropdown-form']\n .map(selector => `${selector}:not(.disabled):not([disabled])`)\n .join(', ')\n\n// --- Helper methods ---\n\n// Return an array of visible items\nconst filterVisibles = els => (els || []).filter(isVisible)\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\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 }),\n NAME_DROPDOWN\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const dropdownMixin = Vue.extend({\n mixins: [idMixin, listenOnRootMixin, clickOutMixin, focusInMixin],\n provide() {\n return { bvDropdown: this }\n },\n inject: {\n bvNavbar: { default: null }\n },\n props,\n data() {\n return {\n visible: false,\n visibleChangePrevented: false\n }\n },\n computed: {\n inNavbar() {\n return !isNull(this.bvNavbar)\n },\n toggler() {\n const { toggle } = this.$refs\n return toggle ? toggle.$el || toggle : null\n },\n 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 return ''\n },\n 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 },\n watch: {\n visible(newValue, oldValue) {\n if (this.visibleChangePrevented) {\n this.visibleChangePrevented = false\n return\n }\n\n if (newValue !== oldValue) {\n const eventName = newValue ? EVENT_NAME_SHOW : EVENT_NAME_HIDE\n const 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 if (bvEvent.defaultPrevented) {\n // Reset value and exit if canceled\n this.visibleChangePrevented = true\n this.visible = oldValue\n // Just in case a child element triggered `this.hide(true)`\n this.$off(EVENT_NAME_HIDDEN, this.focusToggler)\n return\n }\n if (newValue) {\n this.showMenu()\n } else {\n this.hideMenu()\n }\n }\n },\n 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() {\n // Create private non-reactive props\n this.$_popper = null\n this.$_hideTimeout = null\n },\n /* istanbul ignore next */\n deactivated() {\n // In case we are inside a ``\n this.visible = false\n this.whileOpenListen(false)\n this.destroyPopper()\n },\n beforeDestroy() {\n this.visible = false\n this.whileOpenListen(false)\n this.destroyPopper()\n this.clearHideTimeout()\n },\n methods: {\n // Event emitter\n emitEvent(bvEvent) {\n const { type } = bvEvent\n this.emitOnRoot(getRootEventName(NAME_DROPDOWN, type), bvEvent)\n this.$emit(type, bvEvent)\n },\n showMenu() {\n if (this.disabled) {\n /* istanbul ignore next */\n return\n }\n\n // Only instantiate Popper.js when dropdown is not in ``\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 let el = (this.dropup && this.right) || this.split ? this.$el : this.$refs.toggle\n // Make sure we have a reference to an element, not a component!\n el = el.$el || el\n // Instantiate Popper.js\n this.createPopper(el)\n }\n }\n\n // Ensure other menus are closed\n this.emitOnRoot(ROOT_EVENT_NAME_SHOWN, this)\n\n // Enable listeners\n this.whileOpenListen(true)\n\n // Wrap in `$nextTick()` to ensure menu is fully rendered/shown\n this.$nextTick(() => {\n // Focus on the menu container on show\n this.focusMenu()\n // Emit the shown event\n this.$emit(EVENT_NAME_SHOWN)\n })\n },\n 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(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() {\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() {\n try {\n this.$_popper.scheduleUpdate()\n } catch {}\n },\n clearHideTimeout() {\n clearTimeout(this.$_hideTimeout)\n this.$_hideTimeout = null\n },\n getPopperConfig() {\n let placement = PLACEMENT_BOTTOM_START\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 const popperConfig = {\n placement,\n modifiers: {\n offset: { offset: this.offset || 0 },\n flip: { enabled: !this.noFlip }\n }\n }\n const boundariesElement = this.boundary\n if (boundariesElement) {\n popperConfig.modifiers.preventOverflow = { boundariesElement }\n }\n return mergeDeep(popperConfig, this.popperOpts || {})\n },\n // Turn listeners on/off while open\n whileOpenListen(isOpen) {\n // Hide the dropdown when clicked outside\n this.listenForClickOut = isOpen\n // Hide the dropdown when it loses focus\n this.listenForFocusIn = isOpen\n // Hide the dropdown when another dropdown is opened\n const method = isOpen ? '$on' : '$off'\n this.$root[method](ROOT_EVENT_NAME_SHOWN, this.rootCloseListener)\n },\n rootCloseListener(vm) {\n if (vm !== this) {\n this.visible = false\n }\n },\n // Public method to show dropdown\n show() {\n if (this.disabled) {\n return\n }\n // Wrap in a `requestAF()` to allow any previous\n // click handling to occur first\n requestAF(() => {\n this.visible = true\n })\n },\n // Public method to hide dropdown\n hide(refocus = false) {\n /* istanbul ignore next */\n if (this.disabled) {\n return\n }\n this.visible = false\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(event) {\n event = event || {}\n // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n const { type, keyCode } = event\n if (\n type !== 'click' &&\n !(type === 'keydown' && [CODE_ENTER, CODE_SPACE, CODE_DOWN].indexOf(keyCode) !== -1)\n ) {\n /* istanbul ignore next */\n return\n }\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit(EVENT_NAME_TOGGLE, event)\n stopEvent(event)\n // Toggle visibility\n if (this.visible) {\n this.hide(true)\n } else {\n this.show()\n }\n },\n // Mousedown handler for the toggle\n /* istanbul ignore next */\n 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, { propagation: false })\n },\n // Called from dropdown menu context\n onKeydown(event) {\n const { keyCode } = event\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(event) {\n if (this.visible) {\n this.visible = false\n stopEvent(event)\n // Return focus to original trigger button\n this.$once(EVENT_NAME_HIDDEN, this.focusToggler)\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick(event) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit(EVENT_NAME_CLICK, event)\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler(event) {\n const { target } = event\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.clearHideTimeout()\n this.$_hideTimeout = setTimeout(() => this.hide(), this.inNavbar ? 300 : 0)\n }\n },\n // Document click-out listener\n clickOutHandler(event) {\n this.hideHandler(event)\n },\n // Document focus-in listener\n focusInHandler(event) {\n this.hideHandler(event)\n },\n // Keyboard nav\n focusNext(event, up) {\n // Ignore key up/down on form elements\n const { target } = event\n if (!this.visible || (event && closest(SELECTOR_FORM_CHILD, target))) {\n /* istanbul ignore next: should never happen */\n return\n }\n stopEvent(event)\n this.$nextTick(() => {\n const items = this.getItems()\n if (items.length < 1) {\n /* istanbul ignore next: should never happen */\n return\n }\n let index = items.indexOf(target)\n if (up && index > 0) {\n index--\n } else if (!up && index < items.length - 1) {\n index++\n }\n if (index < 0) {\n /* istanbul ignore next: should never happen */\n index = 0\n }\n this.focusItem(index, items)\n })\n },\n focusItem(index, items) {\n const el = items.find((el, i) => i === index)\n attemptFocus(el)\n },\n getItems() {\n // Get all items\n return filterVisibles(selectAll(SELECTOR_ITEM, this.$refs.menu))\n },\n focusMenu() {\n attemptFocus(this.$refs.menu)\n },\n focusToggler() {\n this.$nextTick(() => {\n attemptFocus(this.toggler)\n })\n }\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN } from '../../constants/components'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_OBJECT_STRING,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { SLOT_NAME_BUTTON_CONTENT, SLOT_NAME_DEFAULT } from '../../constants/slots'\nimport { arrayIncludes } from '../../utils/array'\nimport { htmlOrText } from '../../utils/html'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { toString } from '../../utils/string'\nimport { dropdownMixin, props as dropdownProps } from '../../mixins/dropdown'\nimport { idMixin, props as idProps } from '../../mixins/id'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\nimport { sortKeys } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...idProps,\n ...dropdownProps,\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', 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 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 }),\n NAME_DROPDOWN\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdown = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props,\n computed: {\n dropdownClasses() {\n const { block, split } = this\n return [\n this.directionClass,\n this.boundaryClass,\n {\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 },\n menuClasses() {\n return [\n this.menuClass,\n {\n 'dropdown-menu-right': this.right,\n show: this.visible\n }\n ]\n },\n toggleClasses() {\n const { split } = this\n return [\n this.toggleClass,\n {\n 'dropdown-toggle-split': split,\n 'dropdown-toggle-no-caret': this.noCaret && !split\n }\n ]\n }\n },\n render(h) {\n const { visible, variant, size, block, disabled, split, role, hide, toggle } = this\n const commonProps = { variant, size, block, disabled }\n\n let $buttonChildren = this.normalizeSlot(SLOT_NAME_BUTTON_CONTENT)\n let buttonContentDomProps = this.hasNormalizedSlot(SLOT_NAME_BUTTON_CONTENT)\n ? {}\n : htmlOrText(this.html, this.text)\n\n let $split = h()\n if (split) {\n const { splitTo, splitHref, splitButtonType } = this\n const btnProps = {\n ...commonProps,\n variant: this.splitVariant || variant\n }\n\n // We add these as needed due to issues with\n // defined property with `undefined`/`null` values\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(\n BButton,\n {\n class: this.splitClass,\n attrs: { id: this.safeId('_BV_button_') },\n props: btnProps,\n domProps: buttonContentDomProps,\n on: { click: this.onSplitClick },\n ref: 'button'\n },\n $buttonChildren\n )\n\n // Overwrite button content for the toggle when in `split` mode\n $buttonChildren = [h('span', { class: ['sr-only'] }, [this.toggleText])]\n buttonContentDomProps = {}\n }\n\n const $toggle = h(\n BButton,\n {\n staticClass: 'dropdown-toggle',\n class: this.toggleClasses,\n attrs: {\n id: this.safeId('_BV_toggle_'),\n 'aria-haspopup': 'true',\n 'aria-expanded': toString(visible)\n },\n props: {\n ...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 ref: 'toggle'\n },\n $buttonChildren\n )\n\n const $menu = h(\n 'ul',\n {\n staticClass: 'dropdown-menu',\n class: this.menuClasses,\n attrs: {\n 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 ref: 'menu'\n },\n [!this.lazy || visible ? this.normalizeSlot(SLOT_NAME_DEFAULT, { hide }) : h()]\n )\n\n return h(\n 'div',\n {\n staticClass: 'dropdown b-dropdown',\n class: this.dropdownClasses,\n attrs: { id: this.safeId() }\n },\n [$split, $toggle, $menu]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { requestAF } from '../../utils/dom'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable, pluckProps } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...linkProps,\n linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n }),\n NAME_DROPDOWN_ITEM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItem = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: { default: null }\n },\n inheritAttrs: false,\n props,\n computed: {\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem'\n }\n }\n },\n methods: {\n closeDropdown() {\n // Close on next animation frame to allow time to process\n requestAF(() => {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true)\n }\n })\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n this.closeDropdown()\n }\n },\n render(h) {\n const { linkClass, variant, active, disabled, onClick, bvAttrs } = this\n\n return h(\n 'li',\n {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: { role: 'presentation' }\n },\n [\n h(\n BLink,\n {\n staticClass: 'dropdown-item',\n class: [linkClass, { [`text-${variant}`]: variant && !(active || disabled) }],\n props: pluckProps(linkProps, this.$props),\n attrs: this.computedAttrs,\n on: { click: onClick },\n ref: 'item'\n },\n this.normalizeSlot()\n )\n ]\n )\n }\n})\n","import { Vue } from '../../vue'\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components'\nimport { EVENT_NAME_CLICK } from '../../constants/events'\nimport {\n PROP_TYPE_ARRAY_OBJECT_STRING,\n PROP_TYPE_BOOLEAN,\n PROP_TYPE_STRING\n} from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { attrsMixin } from '../../mixins/attrs'\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_DROPDOWN_ITEM_BUTTON\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownItemButton = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n bvDropdown: { default: null }\n },\n inheritAttrs: false,\n props,\n computed: {\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem',\n type: 'button',\n disabled: this.disabled\n }\n }\n },\n methods: {\n closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true)\n }\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event)\n this.closeDropdown()\n }\n },\n render(h) {\n const { active, variant, bvAttrs } = this\n\n return h(\n 'li',\n {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: { role: 'presentation' }\n },\n [\n h(\n 'button',\n {\n staticClass: 'dropdown-item',\n class: [\n this.buttonClass,\n {\n [this.activeClass]: active,\n [`text-${variant}`]: variant && !(active || this.disabled)\n }\n ],\n attrs: this.computedAttrs,\n on: { click: this.onClick },\n ref: 'button'\n },\n this.normalizeSlot()\n )\n ]\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_HEADER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { isTag } from '../../utils/dom'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n id: makeProp(PROP_TYPE_STRING),\n tag: makeProp(PROP_TYPE_STRING, 'header'),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_HEADER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownHeader = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_HEADER,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tag, variant } = props\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(\n tag,\n {\n staticClass: 'dropdown-header',\n class: { [`text-${variant}`]: variant },\n attrs: {\n ...(data.attrs || {}),\n id: props.id || null,\n role: isTag(tag, 'header') ? null : 'heading'\n },\n ref: 'header'\n },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_DIVIDER } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { omit } from '../../utils/object'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'hr')\n },\n NAME_DROPDOWN_DIVIDER\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownDivider = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_DIVIDER,\n functional: true,\n props,\n render(h, { props, data }) {\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: {\n ...(data.attrs || {}),\n role: 'separator',\n 'aria-orientation': 'horizontal'\n },\n ref: 'divider'\n })\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_FORM } from '../../constants/components'\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING } from '../../constants/props'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BForm = /*#__PURE__*/ Vue.extend({\n name: NAME_FORM,\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n 'form',\n 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 }),\n children\n )\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_FORM } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_BOOLEAN } from '../../constants/props'\nimport { omit, sortKeys } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\nimport { BForm, props as formControlProps } from '../form/form'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n sortKeys({\n ...formControlProps,\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n formClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING)\n }),\n NAME_DROPDOWN_FORM\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownForm = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_FORM,\n functional: true,\n props,\n render(h, { props, data, listeners, children }) {\n return h('li', mergeData(omit(data, ['attrs', 'on']), { attrs: { role: 'presentation' } }), [\n h(\n BForm,\n {\n staticClass: 'b-dropdown-form',\n class: [props.formClass, { disabled: props.disabled }],\n props,\n attrs: {\n ...(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 },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_TEXT } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n tag: makeProp(PROP_TYPE_STRING, 'p'),\n textClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n },\n NAME_DROPDOWN_TEXT\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownText = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_TEXT,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { tag, textClass, variant } = props\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n h(\n tag,\n {\n staticClass: 'b-dropdown-text',\n class: [textClass, { [`text-${variant}`]: variant }],\n props,\n attrs: data.attrs || {},\n ref: 'text'\n },\n children\n )\n ])\n }\n})\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_DROPDOWN_GROUP } from '../../constants/components'\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props'\nimport { SLOT_NAME_DEFAULT, SLOT_NAME_HEADER } from '../../constants/slots'\nimport { isTag } from '../../utils/dom'\nimport { identity } from '../../utils/identity'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n NAME_DROPDOWN_GROUP\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BDropdownGroup = /*#__PURE__*/ Vue.extend({\n name: NAME_DROPDOWN_GROUP,\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const { id, variant, header, headerTag } = props\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n const slotScope = {}\n const headerId = id ? `_bv_${id}_group_dd_header` : null\n\n let $header = h()\n if (hasNormalizedSlot(SLOT_NAME_HEADER, $scopedSlots, $slots) || header) {\n $header = h(\n headerTag,\n {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, { [`text-${variant}`]: variant }],\n attrs: {\n id: headerId,\n role: isTag(headerTag, 'header') ? null : 'heading'\n }\n },\n normalizeSlot(SLOT_NAME_HEADER, slotScope, $scopedSlots, $slots) || header\n )\n }\n\n return h('li', mergeData(omit(data, ['attrs']), { attrs: { role: 'presentation' } }), [\n $header,\n h(\n 'ul',\n {\n staticClass: 'list-unstyled',\n attrs: {\n ...(data.attrs || {}),\n id,\n role: 'group',\n 'aria-describedby':\n [headerId, props.ariaDescribedBy]\n .filter(identity)\n .join(' ')\n .trim() || null\n }\n },\n normalizeSlot(SLOT_NAME_DEFAULT, slotScope, $scopedSlots, $slots)\n )\n ])\n }\n})\n","import { BDropdown } from './dropdown'\nimport { BDropdownItem } from './dropdown-item'\nimport { BDropdownItemButton } from './dropdown-item-button'\nimport { BDropdownHeader } from './dropdown-header'\nimport { BDropdownDivider } from './dropdown-divider'\nimport { BDropdownForm } from './dropdown-form'\nimport { BDropdownText } from './dropdown-text'\nimport { BDropdownGroup } from './dropdown-group'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst DropdownPlugin = /*#__PURE__*/ pluginFactory({\n components: {\n BDropdown,\n BDd: BDropdown,\n BDropdownItem,\n BDdItem: BDropdownItem,\n BDropdownItemButton,\n BDropdownItemBtn: BDropdownItemButton,\n BDdItemButton: BDropdownItemButton,\n BDdItemBtn: BDropdownItemButton,\n BDropdownHeader,\n BDdHeader: BDropdownHeader,\n BDropdownDivider,\n BDdDivider: BDropdownDivider,\n BDropdownForm,\n BDdForm: BDropdownForm,\n BDropdownText,\n BDdText: BDropdownText,\n BDropdownGroup,\n BDdGroup: BDropdownGroup\n }\n})\n\nexport {\n DropdownPlugin,\n BDropdown,\n BDropdownItem,\n BDropdownItemButton,\n BDropdownHeader,\n BDropdownDivider,\n BDropdownForm,\n BDropdownText,\n BDropdownGroup\n}\n","import { Vue, mergeData } from '../../vue'\nimport { NAME_EMBED } from '../../constants/components'\nimport { PROP_TYPE_STRING } from '../../constants/props'\nimport { arrayIncludes } from '../../utils/array'\nimport { omit } from '../../utils/object'\nimport { makeProp, makePropsConfigurable } from '../../utils/props'\n\n// --- Constants ---\n\nconst TYPES = ['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy']\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\n aspect: makeProp(PROP_TYPE_STRING, '16by9'),\n tag: makeProp(PROP_TYPE_STRING, 'div'),\n type: makeProp(PROP_TYPE_STRING, 'iframe', value => {\n return arrayIncludes(TYPES, value)\n })\n },\n NAME_EMBED\n)\n\n// --- Main component ---\n\n// @vue/component\nexport const BEmbed = /*#__PURE__*/ Vue.extend({\n name: NAME_EMBED,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const { aspect } = props\n\n return h(\n props.tag,\n {\n staticClass: 'embed-responsive',\n class: { [`embed-responsive-${aspect}`]: aspect },\n ref: data.ref\n },\n [\n h(\n props.type,\n mergeData(omit(data, ['ref']), { staticClass: 'embed-responsive-item' }),\n children\n )\n ]\n )\n }\n})\n","import { BEmbed } from './embed'\nimport { pluginFactory } from '../../utils/plugins'\n\nconst EmbedPlugin = /*#__PURE__*/ pluginFactory({\n components: { BEmbed }\n})\n\nexport { EmbedPlugin, BEmbed }\n","import { Vue } from '../vue'\nimport { PROP_TYPE_ARRAY_OBJECT, PROP_TYPE_STRING } from '../constants/props'\nimport { get } from '../utils/get'\nimport { stripTags } from '../utils/html'\nimport { isArray, isPlainObject, isUndefined } from '../utils/inspect'\nimport { keys } from '../utils/object'\nimport { makeProp, makePropsConfigurable } from '../utils/props'\nimport { warn } from '../utils/warn'\n\n// --- Constants ---\n\nconst OPTIONS_OBJECT_DEPRECATED_MSG =\n 'Setting prop \"options\" to an object is deprecated. Use the array format instead.'\n\n// --- Props ---\n\nexport const props = makePropsConfigurable(\n {\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 },\n 'formOptionControls'\n)\n\n// --- Mixin ---\n\n// @vue/component\nexport const formOptionsMixin = Vue.extend({\n props,\n computed: {\n formOptions() {\n return this.normalizeOptions(this.options)\n }\n },\n methods: {\n normalizeOption(option, key = null) {\n // When the option is an object, normalize it\n if (isPlainObject(option)) {\n const value = get(option, this.valueField)\n const 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 }\n // Otherwise create an `