{"version":3,"sources":["../src/utils/array.js","../src/utils/plugins.js","../src/utils/object.js","../src/utils/env.js","../src/utils/safe-types.js","../src/utils/inspect.js","../src/utils/clone-deep.js","../src/utils/identity.js","../src/utils/get.js","../src/utils/warn.js","../src/utils/config-defaults.js","../src/utils/config-set.js","../src/utils/memoize.js","../src/utils/config.js","../src/utils/number.js","../src/utils/string.js","../src/utils/dom.js","../node_modules/vue-functional-data-merge/dist/lib.esm.js","../src/utils/bv-transition.js","../src/utils/normalize-slot.js","../src/mixins/normalize-slot.js","../src/components/button/button-close.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/props.js","../src/utils/router.js","../src/utils/key-codes.js","../src/utils/cache.js","../src/mixins/attrs.js","../src/mixins/listeners.js","../src/components/link/link.js","../src/components/button/button.js","../src/icons/helpers/icon-base.js","../src/icons/helpers/make-icon.js","../src/icons/icons.js","../src/icons/icon.js","../src/components/avatar/avatar.js","../src/components/avatar/index.js","../src/components/avatar/avatar-group.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/utils/loose-equal.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/card/card-img.js","../src/components/card/card.js","../src/directives/visible/visible.js","../src/components/image/img.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/utils/events.js","../src/components/carousel/carousel.js","../src/components/carousel/carousel-slide.js","../src/components/carousel/index.js","../src/utils/bv-collapse.js","../src/mixins/listen-on-root.js","../src/directives/toggle/toggle.js","../src/components/collapse/collapse.js","../src/directives/toggle/index.js","../src/components/collapse/index.js","../node_modules/popper.js/dist/esm/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.js","../src/mixins/form-radio-check.js","../src/mixins/form-size.js","../src/mixins/form-state.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/utils/bv-form-btn-label-control.js","../src/components/form-datepicker/form-datepicker.js","../src/components/form-datepicker/index.js","../src/mixins/form-custom.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/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-body.js","../src/components/media/media-aside.js","../src/components/media/media.js","../src/components/media/index.js","../src/utils/transporter.js","../src/mixins/listen-on-document.js","../src/mixins/listen-on-window.js","../src/utils/get-scope-id.js","../src/mixins/scoped-style-attrs.js","../src/components/modal/helpers/modal-manager.js","../src/components/modal/helpers/bv-modal-event.class.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/utils/range.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/index.js","../src/components/progress/progress.js","../src/components/sidebar/sidebar.js","../src/components/sidebar/index.js","../src/components/spinner/index.js","../src/mixins/has-listener.js","../src/utils/startcase.js","../src/components/table/helpers/constants.js","../src/components/table/helpers/normalize-fields.js","../src/components/table/helpers/mixin-items.js","../src/components/table/helpers/mixin-stacked.js","../src/components/table/helpers/sanitize-row.js","../src/components/table/helpers/stringify-object-values.js","../src/components/table/helpers/mixin-filtering.js","../src/components/table/helpers/stringify-record-values.js","../src/utils/stable-sort.js","../src/components/table/helpers/mixin-sorting.js","../src/components/table/helpers/default-sort-compare.js","../src/components/table/helpers/mixin-pagination.js","../src/components/table/helpers/mixin-caption.js","../src/components/table/helpers/mixin-colgroup.js","../src/components/table/helpers/filter-event.js","../src/components/table/helpers/text-selection-active.js","../src/components/table/thead.js","../src/components/table/tfoot.js","../src/components/table/tr.js","../src/components/table/td.js","../src/components/table/th.js","../src/components/table/helpers/mixin-thead.js","../src/components/table/helpers/mixin-tfoot.js","../src/components/table/tbody.js","../src/components/table/helpers/mixin-tbody.js","../src/components/table/helpers/mixin-tbody-row.js","../src/components/table/helpers/mixin-empty.js","../src/components/table/helpers/mixin-top-row.js","../src/components/table/helpers/mixin-bottom-row.js","../src/components/table/helpers/mixin-busy.js","../src/components/table/helpers/mixin-selectable.js","../src/components/table/helpers/mixin-provider.js","../src/components/table/helpers/mixin-table-renderer.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/tabs/tabs.js","../src/components/tabs/index.js","../src/components/tabs/tab.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/scrollspy.class.js","../src/directives/scrollspy/scrollspy.js","../src/directives/index.js","../src/directives/scrollspy/index.js","../src/directives/visible/index.js","../src/index.js","../src/icons/iconstack.js","../src/browser.js"],"names":["checkMultipleVueWarned","MULTIPLE_VUE_WARNING","from","Array","apply","arguments","isArray","val","arrayIncludes","array","value","indexOf","concat","_len","length","args","_key","prototype","assign","Object","create","proto","optionalProps","defineProperties","obj","props","defineProperty","prop","descriptor","freeze","getOwnPropertyNames","keys","hasOwnProperty","call","isObject","_typeof","isPlainObject","toString","clone","_objectSpread2","pick","filter","key","reduce","result","_defineProperty","omit","hasWindowSupport","window","hasDocumentSupport","document","hasNavigatorSupport","navigator","hasPromiseSupport","Promise","hasMutationObserverSupport","MutationObserver","WebKitMutationObserver","MozMutationObserver","isBrowser","userAgent","toLowerCase","isJSDOM","hasPassiveEventSupport","test","passiveEventSupported","options","passive","addEventListener","removeEventListener","err","hasTouchSupport","documentElement","maxTouchPoints","hasPointerEventSupport","Boolean","PointerEvent","MSPointerEvent","hasIntersectionObserverSupport","IntersectionObserverEntry","getNoWarn","fallback","undefined","env","process","getEnv","w","Element","_Object","_inherits","_super","_createSuper","_classCallCheck","this","_wrapNativeSuper","HTMLElement","_Element","_super2","SVGElement","_Element2","_super3","File","_Object2","_super4","toType","isUndefined","isNull","isUndefinedOrNull","isFunction","isBoolean","isString","isNumber","isDate","Date","isEvent","Event","isRegExp","slice","toRawType","cloneDeep","defaultValue","_toConsumableArray","identity","x","RX_ARRAY_NOTATION","getRaw","path","join","steps","String","replace","split","every","step","get","warn","message","source","console","warnNotClient","warnNoPromiseSupport","DEFAULTS","deepFreeze","forEach","breakpoints","formControls","size","BAlert","dismissLabel","variant","BAvatar","badgeVariant","BBadge","BButton","BButtonClose","content","textVariant","ariaLabel","BCalendar","labelPrevDecade","labelPrevYear","labelPrevMonth","labelCurrentMonth","labelNextMonth","labelNextYear","labelNextDecade","labelToday","labelSelected","labelNoDateSelected","labelCalendar","labelNav","labelHelp","BCardSubTitle","subTitleTextVariant","BCarousel","labelPrev","labelNext","labelGotoSlide","labelIndicators","BDropdown","toggleText","splitVariant","BFormDatepicker","labelTodayButton","labelResetButton","labelCloseButton","BFormFile","browseText","placeholder","dropPlaceholder","BFormRating","color","BFormTag","removeLabel","BFormTags","addButtonText","addButtonVariant","duplicateTagText","invalidTagText","tagRemoveLabel","tagRemovedLabel","tagVariant","BFormText","BFormTimepicker","labelNoTimeSelected","labelHours","labelMinutes","labelSeconds","labelAmpm","labelAm","labelPm","labelDecrement","labelIncrement","labelNowButton","BFormSpinbutton","BImg","blankColor","BImgLazy","BInputGroup","BJumbotron","bgVariant","borderVariant","BLink","routerComponentName","BListGroupItem","BModal","titleTag","headerBgVariant","headerBorderVariant","headerTextVariant","headerCloseVariant","bodyBgVariant","bodyTextVariant","footerBgVariant","footerBorderVariant","footerTextVariant","cancelTitle","cancelVariant","okTitle","okVariant","headerCloseContent","headerCloseLabel","BNavbar","BNavbarToggle","label","BPagination","BPaginationNav","BPopover","boundary","boundaryPadding","customClass","delay","BProgress","BProgressBar","BSpinner","BSidebar","shadow","width","tag","backdropVariant","BTable","selectedVariant","headVariant","footVariant","BTime","BToast","toaster","autoHideDelay","toastClass","headerClass","bodyClass","BToaster","ariaLive","ariaAtomic","role","BTooltip","NAME","BvConfig","$_config","$_cachedBreakpoints","defaults","_this","config","configKeys","cmpName","cmpConfig","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","memoize","fn","cache","argsKey","JSON","stringify","VueProto","getConfigValue","getComponentConfig","getBreakpoints","_getBreakpointsCached","getBreakpointsUpCached","toInteger","NaN","integer","parseInt","isNaN","toFloat","float","parseFloat","toFixed","precision","RX_TRIM_LEFT","RX_REGEXP_REPLACE","RX_UN_KEBAB","RX_HYPHENATE","kebabCase","str","pascalCase","_","c","toUpperCase","charAt","upperFirst","trim","escapeRegExp","spaces","lowerCase","TABABLE_SELECTOR","map","s","d","elProto","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","isActiveElement","isVisible","contains","body","style","display","bcr","getBCR","height","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","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","_unused","attemptBlur","blur","_unused2","e","t","r","a","o","n","i","l","y","p","f","NO_FADE_PROPS","enterClass","enterActiveClass","enterToClass","leaveClass","leaveActiveClass","leaveToClass","FADE_PROPS","BVTransition","functional","noFade","type","default","appear","mode","transProps","render","h","children","data","appearClass","appearActiveClass","appearToClass","mergeData","css","hasNormalizedSlot","names","$scopedSlots","$slots","normalizeSlot","slot","scope","normalizeSlotMixin","methods","vNodes","slots","scopedSlots","componentData","staticClass","class","attrs","aria-label","on","click","evt","stopPropagation","preventDefault","domProps","innerHTML","parseCountDown","show","parseShow","isNumericLike","AlertPlugin","mixins","model","event","dismissible","Number","fade","countDown","countDownTimeout","localShow","watch","newVal","clearCountDownInterval","$emit","$nextTick","created","mounted","beforeDestroy","dismiss","clearTimeout","$alert","$dismissBtn","_uid","alert-dismissible","aria-live","aria-atomic","mathMin","Math","min","mathMax","max","mathAbs","abs","mathCeil","ceil","mathFloor","floor","mathPow","pow","mathRound","round","RX_ASPECT","RX_SEPARATOR","AspectPlugin","BAspect","aspect","computed","padding","ratio","_aspect$split$map2","_slicedToArray","v","$sizer","paddingBottom","$content","prefixPropName","prefix","unprefixPropName","suffixPropName","suffix","copyProps","transformFn","copied","pluckProps","keysToPluck","objToPluck","memo","commaRE","encodeReserveRE","plusRE","queryStartRE","encodeReserveReplacer","charCodeAt","encode","encodeURIComponent","decode","decodeURIComponent","stringifyQueryObj","query","results","val2","push","parseQuery","parsed","param","parts","shift","isLink","href","to","isRouterLink","computeHref","_ref3","toFallback","hash","KEY_CODES","SPACE","ENTER","ESC","LEFT","UP","RIGHT","DOWN","PAGEUP","PAGEDOWN","HOME","END","TAB","SHIFT","CTRL","BACKSPACE","ALT","PAUSE","BREAK","INSERT","INS","DELETE","makePropWatcher","propName","handler","oldVal","$delete","$data","$set","makePropCacheMixin","proxyPropName","attrsMixin","listenersMixin","routerLinkProps","append","activeClass","exact","exactActiveClass","routerTag","nuxtLinkProps","prefetch","noPrefetch","rel","target","active","inheritAttrs","computedTag","thisOrParent","hasRouter","$router","$nuxt","computeTag","computedRel","_ref2","computeRel","computedHref","computedProps","computedAttrs","bvAttrs","tabindex","aria-disabled","computedListeners","bvListeners","onClick","_arguments","evtIsEvent","suppliedHandler","stopImmediatePropagation","currentTarget","__vue__","$root","$el","linkProps","BLinkProps","block","pill","squared","pressed","handleFocus","isLinkStrict","isToggle","isButton","isNonStandardTag","computeClass","computeLinkProps","computeAttrs","button","link","toggle","nonStandardTag","hashLink","aria-pressed","autocomplete","listeners","keydown","keyCode","KeyCodes","focusin","focusout","commonIconProps","fontScale","scale","rotate","flipH","flipV","shiftH","shiftV","animation","baseAttrs","viewBox","focusable","stackedAttrs","BVIconBase","stacked","_class","hasScale","hasTransforms","hasShift","transforms","isStacked","hasContent","$inner","transform","fontSize","xmlns","fill","makeIcon","kebabName","iconName","iconNameClass","svgContent","BIconBlank","BIconCalendar","BIconCalendarFill","BIconChevronBarLeft","BIconChevronDoubleLeft","BIconChevronDown","BIconChevronLeft","BIconChevronUp","BIconCircleFill","BIconClock","BIconClockFill","BIconDash","BIconPersonFill","BIconPlus","BIconStar","BIconStarFill","BIconStarHalf","BIconX","RX_ICON_PREFIX","BIcon","icon","$options","RX_NUMBER","DEFAULT_SIZES","sm","md","lg","src","text","alt","square","rounded","buttonType","badge","badgeTop","badgeLeft","badgeOffset","computeSize","AvatarPlugin","inject","bvAvatarGroup","localSrc","computedSize","computedVariant","avatarGroup","computedRounded","fontStyle","marginStyle","overlapScale","marginRight","badgeStyle","bottom","right","newSrc","oldSrc","onImgError","_class2","error","aria-hidden","$badge","hasBadgeSlot","badgeText","BAvatarGroup","provide","overlap","paddingStyle","paddingLeft","paddingRight","badge-pill","BadgePlugin","RX_HTML_TAGS","stripTags","htmlOrText","textContent","html","ariaCurrent","BBreadcrumbLink","suppliedProps","aria-current","BBreadcrumbItem","items","BreadcrumbPlugin","BBreadcrumb","childNodes","activeDefined","item","idx","ButtonPlugin","BBtn","BBtnClose","vertical","ariaRole","BButtonGroup","btn-group","btn-group-vertical","ButtonGroupPlugin","BBtnGroup","ITEM_SELECTOR","BButtonToolbar","justify","keyNav","getItems","onFocusin","focusFirst","stop","onKeydown","shiftKey","focusPrev","focusLast","focusNext","index","reverse","justify-content-between","ButtonToolbarPlugin","BBtnToolbar","compareArrays","equal","looseEqual","aValidType","bValidType","getTime","aHasKey","bHasKey","RX_DATE","RX_DATE_SPLIT","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","RX_STRIP_MODS","isLocaleRTL","locale1","locale2","idMixin","localId_","safeId","valueAsDate","initialDate","readonly","dateDisabledFn","Function","startWeekday","direction","todayVariant","noHighlightToday","dateInfoFn","hideHeader","showDecadeNav","hidden","ariaControls","roleDescription","dateFormatOptions","weekday","weekdayHeaderFormat","validator","selected","selectedYMD","activeYMD","getToday","gridHasFocus","isLive","valueId","widgetId","navId","gridId","gridCaptionId","gridHelpId","activeId","selectedDate","activeDate","computedMin","computedMax","computedWeekStarts","computedLocale","locales","calendar","fmt","resolvedOptions","resolveLocale","calendarLocale","calendarYear","calendarMonth","calendarFirstDay","calendarDaysInMonth","computedTodayVariant","isRTL","dir","context","selectedFormatted","formatDateString","activeFormatted","dateDisabled","rtl","dateOutOfRange","rangeFn","disabledFn","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","weekOffset","currentDay","week","j","dayYMD","dayDisabled","dateInfo","isThisMonth","info","calendarHeadings","old","newYMD","oldYMD","setLive","_this2","activated","deactivated","$refs","grid","_this3","emitSelected","_this4","setGridFocusFlag","onKeydownWrapper","altKey","ctrlKey","checkDate","constrainedToday","onKeydownGrid","onClickDay","clickedDate","gotoPrevDecade","gotoPrevYear","gotoPrevMonth","gotoCurrentMonth","gotoNextMonth","gotoNextYear","gotoNextDecade","onHeaderClick","_this5","hideDecadeNav","todayYMD","highlightToday","$header","text-muted","for","data-selected","sr-only","title","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","ref","data-month","aria-roledescription","aria-labelledby","aria-describedby","aria-activedescendant","$slot","$widget","lang","d-block","CalendarPlugin","cardMixin","BCardTitle","subTitle","subTitleTag","bind","titleProps","subTitleProps","overlay","BCardBody","cardTitle","cardSubTitle","cardContent","bodyTag","card-img-overlay","bodyBorderVariant","header","headerHtml","BCardHeader","headerTag","footer","footerHtml","footerClass","BCardFooter","footerTag","required","start","end","BCardImg","baseClass","cardImgProps","imgProps","imgSrc","bodyProps","headerProps","footerProps","align","noBody","BCard","imgLeft","imgRight","imgStart","imgEnd","slotScope","$imgFirst","$imgLast","$img","imgBottom","hasHeaderSlot","$footer","flex-row","flex-row-reverse","OBSERVER_PROP_NAME","RX_ONLY_DIGITS","VisibilityObserver","vnode","callback","margin","once","observer","visible","doneOnce","createObserver","IntersectionObserver","rootMargin","threshold","observe","entries","entry","isIntersecting","intersectionRatio","disconnect","destroy","modifiers","mod","_prevModifiers","VBVisible","componentUpdated","oldValue","unbind","BLANK_TEMPLATE","srcset","sizes","fluid","fluidGrow","thumbnail","center","blank","makeBlankImgSrc","img-thumbnail","img-fluid","w-100","blankSrc","blankWidth","blankHeight","bVisible","isShown","computedSrc","computedBlank","computedWidth","computedHeight","computedSrcset","computedSizes","updateShowProp","doShow","_modifiers","imgLazyProps","textTag","deck","columns","CardPlugin","BCardImgLazy","lazyProps","BCardText","BCardGroup","noop","observeDom","obs","mutations","changed","mutation","TEXT_NODE","addedNodes","removedNodes","childList","subtree","EVENT_OPTIONS_PASSIVE","EVENT_OPTIONS_NO_CAPTURE","capture","parseEventOptions","eventOn","evtName","eventOff","eventOnOff","method","DIRECTION","next","dirClass","overlayClass","prev","PointerType","TOUCH","PEN","TransitionEndEvents","WebkitTransition","MozTransition","OTransition","transition","bvCarousel","interval","indicators","controls","noAnimation","noWrap","noTouch","noHoverPause","imgWidth","imgHeight","background","isSliding","transitionEndEvent","slides","isPaused","touchStartX","touchDeltaX","numSlides","setSlide","pause","doSlide","$_interval","$_animationTimeout","$_touchTimeout","$_observer","getTransitionEndEvent","updateSlides","setObserver","clearInterval","clearAnimationTimeout","clearTouchTimeout","_clearInterval","inner","attributes","attributeFilter","slide","visibilityState","$once","setInterval","restart","isCycling","calcDirection","currentSlide","nextSlide","called","onceTransEnd","curIndex","nextIndex","handleClick","handleSwipe","absDeltaX","touchStart","pointerType","clientX","touches","touchMove","touchEnd","prevHandler","nextHandler","rawName","expression","aria-owns","mouseenter","mouseleave","tagName","carousel-fade","pointer-event","aria-busy","imgAlt","imgBlank","imgBlankColor","contentVisibleUp","contentTag","caption","captionHtml","captionTag","textHtml","CarouselPlugin","BCarouselSlide","contentClasses","dragstart","$props","$contentChildren","$child","TRANSITION_PROPS","TRANSITION_HANDLERS","enter","scrollHeight","afterEnter","leave","afterLeave","BVCollapse","listenOnRootMixin","listenOnRoot","$on","$off","listenOnRootOnce","emitOnRoot","_this$$root","BV_BASE","BV_TOGGLE_ROOT_HANDLER","BV_TOGGLE_CLICK_HANDLER","BV_TOGGLE_STATE","BV_TOGGLE_TARGETS","EVENT_STATE","EVENT_STATE_SYNC","KEYDOWN_KEY_CODES","RX_HASH","RX_HASH_ID","RX_SPLIT_SEPARATOR","removeClickListener","removeRootListeners","setToggleState","state","resetProp","handleUpdate","binding","targets","arg","arr","getTargets","addClickListener","VBToggle","addRootListeners","updated","BCollapse","isNav","accordion","transitioning","classObject","navbar-collapse","collapse","emitState","handleToggleEvt","handleAccordionEvt","setWindowEvents","handleResize","emitSync","onEnter","onAfterEnter","onLeave","onAfterLeave","checkDisplayBlock","restore","isBlock","clickHandler","openedId","close","VBTogglePlugin","CollapsePlugin","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","sort","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","setupEventListeners","updateBound","scrollElement","attachToScrollParents","scrollParents","isBody","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","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","relatedTarget","vueTarget","componentId","defaultPrevented","clickOutMixin","listenForClickOut","newValue","clickOutElement","clickOutEventName","_clickOutHandler","beforeCreate","isClickOut","clickOutHandler","focusInMixin","listenForFocusIn","focusInElement","_focusInHandler","focusInHandler","ROOT_DROPDOWN_SHOWN","ROOT_DROPDOWN_HIDDEN","Selector","FORM_CHILD","AttachmentMap","commonProps","dropup","dropright","dropleft","noFlip","popperOpts","dropdownMixin","bvDropdown","bvNavbar","visibleChangePrevented","inNavbar","toggler","directionClass","bvEvt","menu","emitEvent","focusToggler","showMenu","hideMenu","$_popper","whileOpenListen","destroyPopper","createPopper","focusMenu","getPopperConfig","updatePopper","popperConfig","isOpen","rootCloseListener","vm","refocus","_evt","onMousedown","onEsc","onSplitClick","hideHandler","up","focusItem","menuClass","toggleTag","toggleClass","noCaret","splitHref","splitTo","splitClass","splitButtonType","lazy","dropdownClasses","d-flex","position-static","menuClasses","dropdown-menu-right","toggleClasses","dropdown-toggle-split","dropdown-toggle-no-caret","$buttonContent","buttonContentProps","$split","btnProps","$toggle","aria-haspopup","aria-expanded","mousedown","$menu","BDropdownItem","linkClass","closeDropdown","buttonClass","BDropdownItemButton","BDropdownHeader","$attrs","BDropdownDivider","aria-orientation","inline","novalidate","validated","BForm","form-inline","was-validated","BDropdownForm","formProps","formClass","$listeners","BDropdownText","headerVariant","headerClasses","ariaDescribedby","BDropdownGroup","headerId","adb","ariaDescribedBy","DropdownPlugin","BDd","BDdItem","BDropdownItemBtn","BDdItemButton","BDdItemBtn","BDdHeader","BDdDivider","BDdForm","BDdText","BDdGroup","EmbedPlugin","BEmbed","formOptionsMixin","valueField","textField","htmlField","disabledField","formOptions","normalizeOptions","normalizeOption","option","BFormDatalist","form-text","tooltip","forceShow","BFormInvalidFeedback","invalid-feedback","invalid-tooltip","BFormValidFeedback","valid-feedback","valid-tooltip","BFormRow","FormPlugin","BDatalist","BFormFeedback","looseIndexOf","formMixin","form","autofocus","handleAutofocus","formRadioCheckMixin","checked","plain","buttonVariant","ariaLabelledby","localChecked","isGroup","bvGroup","hasFocus","computedLocalChecked","set","isBtnMode","buttons","isPlain","isCustom","isSwitch","isRadio","switches","switch","isInline","getName","groupName","getForm","getState","computedState","getButtonVariant","buttonClasses","isChecked","aria-required","input","defaultSlot","change","handleChange","form-check-input","custom-control-input","is-valid","is-invalid","form-check-label","custom-control-label","form-check","form-check-inline","custom-control","custom-control-inline","custom-checkbox","isCheck","custom-switch","custom-radio","formSizeMixin","sizeFormClass","sizeBtnClass","formStateMixin","stateClass","BFormCheckbox","uncheckedValue","indeterminate","setIndeterminate","_ref$target","isArr","BFormRadio","formRadioCheckGroupMixin","ariaInvalid","groupClasses","computedAriaInvalid","$inputs","isRadioGroup","aria-invalid","BFormCheckboxGroup","bvCheckGroup","FormCheckboxPlugin","BCheckbox","BCheck","BCheckboxGroup","BCheckGroup","PROP","updateListeners","listener","_ref$value","hasListener","handlerChanged","createListener","VBHover","dropdownProps","BVFormBtnLabelControl","BHover","formattedValue","buttonOnly","isHovered","idButton","idLabel","idMenu","idWrapper","computedDir","setFocus","handleHover","hovered","stopEvent","btnScope","opened","$button","!focus","!blur","$hidden","aria-modal","$label","!click","form-control","aria-readonly","getConfigFallback","propsMixin","resetValue","noCloseOnSelect","calendarWidth","todayButton","todayButtonVariant","resetButton","resetButtonVariant","closeButton","closeButtonVariant","dark","localYMD","localLocale","calendarYM","calendarProps","computedLang","computedResetValue","control","setAndClose","onSelected","onInput","onContext","ctx","onTodayButton","onResetButton","onCloseButton","onShow","onShown","onHidden","defaultButtonFn","$createElement","justify-content-end","$calendar","bg-dark","text-light","shown","button-content","FormDatepickerPlugin","BDatepicker","formCustomMixin","custom","isValidValue","accept","multiple","directory","noTraverse","noDrop","fileNameFormatter","selectedFile","dragging","selectLabel","files","file","webkitdirectory","reset","focusHandler","$input","onFileChange","dataTransfer","setFiles","queue","webkitGetAsEntry","traverseFileTree","all","filesArr","filesArray","onReset","onDragover","dropEffect","onDragleave","onDrop","isFile","$path","isDirectory","createReader","readEntries","form-control-file","custom-file-input","data-browse","dragover","dragleave","drop","FormFilePlugin","BFile","escapeChar","cssEscape","firstCharCode","char","charCode","RX_COL_CLASS","strNum","computeBreakpointClass","breakpoint","breakpointPropMap","generateProps","breakpointCol","propMap","breakpointOffset","breakpointOrder","col","cols","alignSelf","BCol","_classList$push","hasColClasses","renderInvalidFeedback","invalidFeedback","invalidFeedbackId","feedbackAriaLive","renderValidFeedback","validFeedback","validFeedbackId","renderHelpText","description","descriptionId","makePropName","BFormGroup","BREAKPOINTS","bpLabelColProps","bpLabelAlignProps","labelFor","labelSize","labelSrOnly","labelClass","labelColProps","propVal","bColPropName","labelAlignClasses","classes","isHorizontal","labelId","hasInvalidFeedback","hasValidFeedback","describedByIds","setInputDescribedBy","legendClick","inputs","ids","isFieldset","isLegend","labelTag","renderLabel","FormGroupPlugin","BFormFieldset","formSelectionMixin","selectionStart","selectionEnd","selectionDirection","_this$$refs$input","setSelectionRange","_this$$refs$input2","setRangeText","_this$$refs$input3","formTextMixin","plaintext","formatter","lazyFormatter","number","localValue","vModelValue","computedClass","custom-range","form-control-plaintext","computedDebounce","hasFormatter","stringifyValue","clearDebounce","$_inputDebounceTimer","formatValue","force","modifyValue","updateValue","doUpdate","composing","onChange","onBlur","formValidityMixin","validity","validationMessage","willValidate","setCustomValidity","checkValidity","reportValidity","TYPES","BFormInput","noWheel","list","localType","setWheelStopper","onWheelFocus","onWheelBlur","stopWheel","FormInputPlugin","BInput","BFormRadioGroup","bvRadioGroup","FormRadioPlugin","BRadio","BRadioGroup","BVFormRatingStar","rating","star","focused","hasClear","minStar","b-rating-star-empty","b-rating-star-half","b-rating-star-full","computeStars","stars","clampValue","showValue","showValueMax","noBorder","iconEmpty","iconHalf","iconFull","iconClear","showClear","computedStars","computedRating","isInteractive","formattedRating","formatOptions","toLocaleString","amountRtl","onFocus","renderIcon","iconEmptyFn","iconHalfFn","iconFullFn","iconClearFn","$icon","empty","half","full","aria-valuemin","aria-valuemax","aria-valuenow","FormRatingPlugin","BRating","optionsMixin","labelField","optionsField","BFormSelectOption","BFormSelectOptionGroup","BFormSelect","selectSize","computedSelectSize","inputClass","selectedVal","_value","FormSelectPlugin","BSelect","BSelectOption","BSelectOptionGroup","wrap","formatterFn","repeatDelay","repeatInterval","repeatThreshold","repeatStepMultiplier","spinId","computedInline","computedReadonly","computedRequired","computedStep","computedDelay","computedInterval","computedThreshold","computedStepMultiplier","computedPrecision","computedMultiplier","valueAsFixed","computedRTL","defaultFormatter","useGrouping","computedFormatter","computedSpinAttrs","hasValue","aria-valuetext","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","keyup","FormSpinbuttonPlugin","BSpinbutton","onDelete","tagId","tagLabelId","$remove","$tag","RX_SPACES","cleanTags","tags","processEventValue","inputId","inputType","inputAttrs","tagClass","tagPills","tagValidator","separator","removeOnDelete","addOnChange","noAddOnEnter","noOuterFocus","ignoreInputFocusSelector","newTag","removedTags","tagsState","valid","invalid","duplicate","computedInputId","computedInputType","computedInputAttrs","computedInputHandlers","onInputInput","onInputChange","onInputKeydown","computedSeparator","computedSeparatorRegExp","RegExp","computedJoiner","joiner","computeIgnoreInputFocusSelector","disableAddButton","splitTags","validateTag","duplicateTags","hasDuplicateTags","invalidTags","hasInvalidTags","addTag","parseTags","getInput","invalidAndDuplicates","removeTag","separatorRe","ignoreFocusSelector","onFocusout","defaultRender","inputHandlers","isInvalid","isDuplicate","$tags","duplicateFeedbackId","outline","minWidth","invisible","tagListId","$field","$ul","$feedback","$invalid","$duplicate","_this6","$output","aria-relevant","$removed","FormTagsPlugin","BTags","BTag","BFormTextarea","b-visible","rows","maxRows","noResize","noAutoShrink","heightInPx","resize","computedRows","computedMinRows","computedMaxRows","setHeight","visibleCallback","computeHeight","$isServer","lineHeight","border","borderBottomWidth","paddingTop","minHeight","oldHeight","contentRows","640","FormTextareaPlugin","BTextarea","RE_TIME","padLeftZeros","num","parseHMS","hms","hh","mm","ss","_hms$split$map2","hours","minutes","seconds","ampm","showSeconds","hour12","secondsStep","minutesStep","modelHours","modelMinutes","modelSeconds","modelAmpm","computedHMS","requireSeconds","formatHMS","resolved","hourCycle","computedHourCycle","is12Hour","formatted","formattedTimeString","computedAriaLabelledby","timeFormatter","timeZone","numberFormatter","UTC","spinScopedSlots","increment","decrement","_parseHMS","newHours","oldHours","spinners","formatHours","formatMinutes","formatSeconds","formatAmpm","setHours","setMinutes","setSeconds","setAmpm","onSpinLeftRight","cmp","spinIds","makeSpinbutton","spinbuttonProps","refInFor","makeColon","$spinners","$value","nowButton","nowButtonVariant","noCloseButton","localHMS","timeProps","onNowButton","now","getHours","getMinutes","getSeconds","time","$time","FormTimepickerPlugin","BTimepicker","ImagePlugin","BInputGroupText","isText","BInputGroupAddon","input-group-append","input-group-prepend","BInputGroupAppend","BInputGroupPrepend","prepend","prependHtml","appendHtml","InputGroupPlugin","$prepend","hasPrependSlot","$append","hasAppendSlot","BContainer","container","container-fluid","containerFluid","headerLevel","lead","leadHtml","leadTag","JumbotronPlugin","$lead","hasLeadSlot","$children","jumbotron-fluid","COMMON_ALIGNMENT","computeRowColsClass","computeRowColsBreakpoint","rowColsPropList","rowColsProps","noGutters","alignV","alignH","alignContent","LayoutPlugin","BRow","no-gutters","LinkPlugin","flush","horizontal","BListGroup","list-group-flush","list-group-horizontal","actionTags","action","ListGroupPlugin","itemProps","BMediaBody","verticalAlign","BMediaAside","rightAlign","MediaPlugin","BMedia","$aside","$default","BTransporterTargetSingle","abstract","nodes","updatedNodes","destroyed","BTransporterSingle","immediate","unmountTarget","mountTarget","$_defaultFn","$_target","beforeMount","updateTarget","getContainer","createElement","appendChild","propsData","defaultFn","$destroy","listenOnDocumentMixin","listenDocument","listenOnDocument","listenOffDocument","listenOnWindowMixin","listenWindow","listenOnWindow","listenOffWindow","getScopeId","_scopeId","scopedStyleAttrsMixin","scopedStyleAttrs","scopeId","$parent","modalManager","modals","baseZIndex","scrollbarWidth","isBodyOverflowing","modalCount","modalsAreOpen","newCount","oldCount","getScrollbarWidth","checkScrollbar","setScrollbar","resetScrollbar","updateModals","registerModal","modal","unregisterModal","splice","_isBeingDestroyed","_isDestroyed","resetModal","getBaseZIndex","div","zIndex","isTop","_getBCR","_paddingChangedForModal","_marginChangedForModal","actualPadding","actualMargin","BvModalEvent","_assertThisInitialized","trigger","_get","_getPrototypeOf","OBSERVER_CONFIG","characterData","centered","scrollable","buttonSize","noStacking","noCloseOnBackdrop","noCloseOnEsc","noEnforceFocus","ignoreEnforceFocusSelector","titleHtml","titleClass","titleSrOnly","modalClass","dialogClass","contentClass","hideFooter","hideHeaderClose","hideBackdrop","okOnly","okDisabled","cancelDisabled","returnFocus","cancelTitleHtml","okTitleHtml","busy","static","autoFocusButton","isHidden","isTransitioning","isShow","isOpening","isClosing","ignoreBackdropClick","isModalOverflowing","return_focus","modalId","modalOuterId","modalHeaderId","modalBodyId","modalTitleId","modalContentId","modalFooterId","modalBackdropId","modalClasses","modalStyles","sbWidth","dialogClasses","titleClasses","bodyClasses","footerClasses","_ref4","modalOuterStyle","ok","onOk","cancel","onCancel","onClose","computeIgnoreEnforceFocusSelector","computedModalAttrs","showHandler","toggleHandler","modalListener","checkModalOverflow","updateModel","buildEvent","showEvt","hideEvt","triggerEl","onBeforeEnter","setResizeEvent","setEnforceFocus","onBeforeLeave","returnFocusTo","bvModalEvt","onDialogMousedown","onceModalMouseup","onClickOut","tabables","_this$$refs","bottomTrap","topTrap","preventScroll","autoFocus","makeModal","$modalHeader","$closeButton","$body","$modalFooter","$cancelButton","$modalContent","$tabTrapTop","$tabTrapBottom","$modalDialog","$modal","beforeEnter","beforeLeave","$backdrop","PROPERTY","getTarget","_ref$modifiers","getTriggerElement","setRole","oldProp","VBModal","inserted","BASE_PROPS","modalProps","defaultResolver","propsToSlots","msgBoxContent","filterOptions","ModalPlugin","BVModalPlugin","BMsgBox","extends","handleDestroy","self","$route","$watch","asyncMsgBox","resolver","msgBox","reject","Error","$mount","makeMsgBox","BvModal","_vm","_root","_createClass","_this$_root","_this$_root2","_len2","_key2","mixin","justified","tabs","pills","small","cardHeader","BNav","nav-tabs","nav-pills","card-header-tabs","card-header-pills","flex-column","nav-fill","nav-justified","BNavItem","linkAttrs","linkClasses","BNavText","BFormProps","BNavForm","_ref$listeners","$form","BDropdownProps","BNavItemDropdown","toggleId","NavPlugin","BNavItemDd","BNavDropdown","BNavDd","toggleable","fixed","sticky","print","breakpointClass","xs","d-print","sticky-top","BNavProps","BNavbarNav","BNavbarBrand","BToggle","toggleState","handleStateEvt","expanded","NavbarPlugin","BNavToggle","positionCover","OverlayPlugin","BOverlay","bgColor","opacity","noCenter","spinnerType","spinnerVariant","spinnerSmall","overlayTag","wrapTag","overlayScope","defaultOverlayFn","$overlay","$background","backgroundColor","backdropFilter","position-absolute","position-fixed","after-enter","after-leave","sanitizeLimit","limit","sanitizeCurrentPage","numberOfPages","page","onSpaceKey","paginationMixin","hideGotoEndButtons","labelFirstPage","firstText","firstNumber","firstClass","labelPrevPage","prevText","prevClass","labelNextPage","nextText","nextClass","labelLastPage","lastText","lastNumber","lastClass","labelPage","pageClass","hideEllipsis","ellipsisText","ellipsisClass","currentPage","localNumberOfPages","localLimit","btnSize","alignment","styleClass","computedCurrentPage","paginationParams","showFirstDots","showLastDots","numberOfLinks","startNumber","lastPageNumber","pageList","_this$paginationParam","pages","makePageArray","handleKeyNav","getButtons","btn","focusCurrent","_this7","pageNumbers","_this$paginationParam2","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","perPage","totalRows","sanitizePerPage","sanitizeTotalRows","PaginationPlugin","pageSizeNumberOfPages","pageNum","baseUrl","useRouter","linkGen","pageGen","noPageDetect","PaginationNavPlugin","computedValue","setNumberOfPages","guessCurrentPage","getPageInfo","makeLink","resolveLink","_link2","pathname","resolveRoute","route","guess","currRoute","loc","location","currLink","AUTO","TOP","BOTTOM","TOPLEFT","TOPRIGHT","RIGHTTOP","RIGHTBOTTOM","BOTTOMLEFT","BOTTOMRIGHT","LEFTTOP","LEFTBOTTOM","OffsetMap","BVPopper","fallbackPlacement","arrowPadding","attachment","getAttachment","templateType","getOffset","popperPlacementChange","popperCreate","arrowOffset","renderTemplate","BVTooltipTemplate","interactive","templateClasses","noninteractive","templateAttributes","templateListeners","$title","MODAL_SELECTOR","CONTAINER_SELECTOR","templateData","triggers","BVTooltip","activeTrigger","hover","computedId","computedTriggers","isWithActiveTrigger","computedTemplateData","newTriggers","oldTriggers","unListen","listen","handleTemplateUpdate","disable","enable","$_tip","$_hoverTimeout","$_hoverState","$_visibleInterval","$_enabled","$_noop","getScopId","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","evtTarget","_this10","_this11","localTitle","localContent","templateTitleContent","$_toolpop","updateContent","doOpen","doClose","Component","getComponent","$toolpop","onHide","onDisabled","onEnabled","setTitle","setContent","BVPopoverTemplate","titleDomProps","contentDomProps","BVPopover","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","bvProgress","labelHtml","striped","animated","showProgress","progressBarClasses","computedStriped","computedAnimated","progressBarStyles","computedProgress","computedShowProgress","computedShowValue","ProgressPlugin","progressHeight","renderHeader","noHeader","renderHeaderTitle","$close","noHeaderClose","closeLabel","renderHeaderClose","renderBody","renderFooter","renderContent","renderBackdrop","backdrop","onBackdropClick","SidebarPlugin","sidebarClass","noSlide","noCloseOnRouteChange","transitionProps","computedTile","titleId","fullPath","$_returnFocusEl","handleToggle","handleSync","onTopTrapFocus","onBottomTrapFocus","$sidebar","SpinnerPlugin","hasListenerMixin","$events","_events","RX_UNDERSCORE","RX_LOWER_UPPER","RX_START_SPACE_WORD","startCase","$1","$2","IGNORED_FIELD_KEYS","_rowVariant","_cellVariants","_showDetails","EVENT_FILTER","normalizeFields","origFields","fields","field","processField","sample","k","itemsMixin","primaryKey","localItems","computedFields","computedFieldsObj","computedItems","paginatedItems","sortedItems","filteredItems","localFilter","sortBy","localSortBy","sortDesc","localSortDesc","apiUrl","newItems","getFieldFormatter","stackedMixin","isStackedAlways","stackedTableClasses","b-table-stacked","sanitizeRow","row","ignoreFields","includeFields","fieldsObj","filterByFormatted","stringifyObjectValues","DEBOUNCE_DEPRECATED_MSG","filteringMixin","filterFunction","filterIgnoredFields","filterIncludedFields","filterDebounce","deprecated","isFiltered","filterSanitize","computedFilterIgnored","computedFilterIncluded","computedFilterDebounce","ms","localFiltering","hasProvider","noProviderFiltering","filteredCheck","localFilterFn","criteria","filterFn","filterFnFactory","defaultFilterFnFactory","$_filterTimer","clearFilterTimer","deep","newCriteria","timeout","regExp","pattern","lastIndex","stableSort","compareFn","sortingMixin","sortDirection","sortCompare","sortCompareOptions","numeric","sortCompareLocale","sortNullLast","noSortReset","labelSortAsc","labelSortDesc","labelSortClear","noLocalSorting","noFooterSorting","sortIconLeft","localSorting","noProviderSorting","isSortable","sortable","sortOptions","usage","sortLocale","nullLast","sortByFormatted","localeOpts","aa","bb","localeCompare","defaultSortCompare","handleSort","isFoot","sortChanged","toggleLocalSortDesc","sortTheadThClasses","b-table-sort-icon-left","sortTheadThAttrs","aria-sort","sortTheadThLabel","labelSorting","paginationMixin$1","localPaging","noProviderPaging","captionMixin","captionId","renderCaption","$caption","hasCaptionSlot","colgroupMixin","renderColgroup","$colgroup","TABLE_TAG_NAMES","filterEvent","textSelectionActive","containsNode","BThead","bvTableRowGroup","bvTable","isThead","isDark","isResponsive","isStickyHeader","stickyHeader","hasStickyHeader","tableVariant","theadClasses","theadAttrs","BTfoot","isTfoot","tfootClasses","tfootAttrs","BTr","bvTableTr","inTbody","isTbody","inThead","inTfoot","isRowDark","trClasses","trAttrs","parseSpan","spanValidator","colspan","rowspan","stackedHeading","stickyColumn","BTd","isStackedCell","isStickyColumn","rowVariant","computedColspan","computedRowspan","cellClasses","cellAttrs","headOrFoot","data-label","BTh","theadMixin","headRowVariant","theadClass","theadTrClass","fieldClasses","thClass","headClicked","stopIfBusy","renderThead","isSelectable","footRowVariant","hasHeadClickListener","selectAllRows","clearSelected","makeCell","colIndex","headerTitle","sortAttrs","sortClass","sortLabel","thStyle","abbr","headerAbbr","aria-colindex","getThValues","thAttr","slotNames","column","$srLabel","$trs","tfootTrClass","tfootClass","tfootMixin","footClone","renderTFootCustom","renderTfoot","tbodyTransitionProps","tbodyTransitionHandlers","BTbody","isTransitionGroup","tbodyAttrs","tbodyProps","nativeOn","tbodyMixin","tbodyTrClass","tbodyTrAttr","detailsTdClass","getTdValues","tdValue","defValue","thValue","getFormattedValue","toggleDetailsFactory","hasDetailsSlot","rowHovered","tbodyRowEvtStopped","emitTbodyRowEvent","rowUnhovered","renderTbodyRowCell","rowIndex","cellTag","isRowHeader","cellVariant","tdClass","tdAttr","unformatted","toggleDetails","detailsShowing","supportsSelectableRows","rowSelected","isRowSelected","selectRow","unselectRow","$_bodyFieldSlotNameCache","$childNodes","renderTbodyRow","tableStriped","rowShowDetails","hasRowClickHandler","hasSelectableRowClick","$rows","detailsId","$tds","ariaRowIndex","primaryKeyValue","rowKey","rowId","selectableClasses","selectableRowClasses","selectableAttrs","selectableRowAttrs","userTrClasses","userTrAttrs","data-pk","aria-details","aria-rowindex","detailsScope","$details","userDetailsTrClasses","userDetailsTrAttrs","tbodyClass","getTbodyTrs","refs","tbody","trs","itemRows","tr","getTbodyTrIndex","onTbodyRowKeydown","onTBodyRowClicked","onTbodyRowMiddleMouseRowClicked","which","onTbodyRowContextmenu","onTbodyRowDblClicked","renderTbody","$busy","renderBusy","defaultSlotName","fullName","lowerName","renderTopRow","renderEmpty","renderBottomRow","handlers","auxclick","contextmenu","dblclick","emptyMixin","showEmpty","emptyText","emptyHtml","emptyFilteredText","emptyFilteredHtml","$empty","computedBusy","topRowMixin","bottomRowMixin","busyMixin","localBusy","selectableMixin","selectable","selectMode","noSelectOnClick","selectedRows","selectedLastRow","selectableHasSelection","selectableIsMultiSelect","selectableTableClasses","b-table-selectable","selectableTableAttrs","aria-multiselectable","setSelectionHandlers","selectedLastClicked","b-table-row-selected","selectionHandler","providerMixin","providerTriggerContext","_providerUpdate","refresh","_providerSetLocal","catch","tableRendererMixin","bordered","borderless","outlined","responsive","noBorderCollapse","captionTop","tableClass","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","$table","BTableLite","BTableSimple","TablePlugin","TableLitePlugin","TableSimplePlugin","notDisabled","tab","BTabButtonHelper","bvTabs","posInSet","setSize","noKeyNav","handleEvt","localActive","titleLinkClass","activeNavItemClass","titleLinkAttributes","titleItemClass","TabsPlugin","BTabs","card","noNavStyle","navClass","navWrapperClass","activeTabClass","currentTab","registeredTabs","isMounted","localNavClass","activateTab","previousTab","nextTab","updateTabs","registerTab","unregisterTab","tabsContainer","getTabs","_isTab","getButtonForTab","updateButton","$forceUpdate","tabEvt","deactivateTab","focusButton","emitTabClick","clickTab","firstTab","currentIndex","lastTab","activeTab","fallbackTab","controlledBy","first","last","nav","card-header","card-footer","col-auto","card-body","BTab","buttonId","tabClasses","computedNoFade","computedLazy","activate","deactivate","TimePlugin","Symbol","iterator","arr2","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","inBrowser","acc","VuePlugin","transports","sources","wormhole","trackInstances","open","transport","passengers","_transport$order","Infinity","newTransport","$_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","temp","newPassengers","combinePassengers","noWrapper","vue-portal-target","_id$1","portalProps","targetProps","bail","mountTo","targetSlim","targetSlotProps","targetTag","portalTarget","mountEl","_props","DefaultTransition","doRender","dead","staticName","Wormhole","$toaster","b-dead-toaster","$target","isStatus","appendToast","noAutoHide","solid","isHiding","timer","dismissStarted","resumeDismiss","bToastClasses","b-toast-solid","b-toast-append","b-toast-prepend","computedDuration","computedToaster","transitionHandlers","ensureToaster","clearDismissTimer","setHoverHandler","startDismissTimer","onPause","onUnPause","passed","onLinkClick","hiddenEvt","makeToast","$headerContent","toastProps","toastContent","ToastPlugin","BVToastPlugin","BToastPop","toast","BvToast","BV_TOOLTIP","noninteractiveRE","applyTooltip","VBTooltipPlugin","VBTooltip","removeTooltip","componentsPlugin","TooltipPlugin","VBHoverPlugin","VBModalPlugin","Default","throttle","DefaultType","ClassName","ACTIVE","NAV_LIST_GROUP","NAV_LINKS","NAV_ITEMS","LIST_ITEMS","DROPDOWN","DROPDOWN_ITEMS","DROPDOWN_TOGGLE","OffsetMethod","HREF_REGEX","objectToString","ScrollSpy","$scroller","$selector","$offsets","$targets","$activeTarget","$scrollHeight","$resizeTimeout","$scrollerObserver","$targetsObserver","$config","updateConfig","unlisten","cfg","componentName","configTypes","expectedTypes","valueType","_isVue","typeCheckConfig","Name","scroller","getScroller","setObservers","autoMethod","methodFn","offsetBase","getScrollTop","getScrollHeight","maxScroll","getOffsetHeight","links","dropdown","setActiveState","sibling","previousElementSibling","BV_SCROLLSPY","onlyDigitsRE","applyScrollspy","directivesPlugin","VBScrollspyPlugin","VBScrollspy","dispose","removeScrollspy","VBVisiblePlugin","BootstrapVue"],"mappings":"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","sourcesContent":["// --- Static ---\n\nexport const from = (...args) => Array.from(...args)\nexport const isArray = val => Array.isArray(val)\n\n// --- Instance ---\n\nexport const arrayIncludes = (array, value) => array.indexOf(value) !== -1\nexport const concat = (...args) => Array.prototype.concat.apply([], args)\n","import OurVue from './vue'\nimport { setConfig } from './config-set'\nimport { hasWindowSupport, isJSDOM } from './env'\nimport { warn } from './warn'\n\n/**\n * Checks if there are multiple instances of Vue, and warns (once) about possible issues.\n * @param {object} Vue\n */\nexport const checkMultipleVue = (() => {\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 && !isJSDOM) {\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 (hasWindowSupport && window.Vue) {\n window.Vue.use(VuePlugin)\n }\n /* istanbul ignore next */\n if (hasWindowSupport && VuePlugin.NAME) {\n window[VuePlugin.NAME] = VuePlugin\n }\n}\n","import { isArray } from './array'\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/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n * Note object could be a complex type like array, date, etc.\n */\nexport const isObject = obj => obj !== null && typeof obj === 'object'\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nexport const isPlainObject = obj => Object.prototype.toString.call(obj) === '[object Object]'\n\n/**\n * Shallow copy an object. If the passed in object\n * is null or undefined, returns an empty object\n */\nexport const clone = obj => ({ ...obj })\n\n/**\n * Return a shallow copy of object with the specified properties only\n * @link https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n */\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/**\n * Return a shallow copy of object with the specified properties omitted\n * @link https://gist.github.com/bisubus/2da8af7e801ffd813fab7ac221aa7afc\n */\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/**\n * Convenience method to create a read-only descriptor\n */\nexport const readonlyDescriptor = () => ({ enumerable: true, configurable: false, writable: false })\n\n/**\n * Deep-freezes and object, making it immutable / read-only.\n * Returns the same object passed-in, but frozen.\n * Freezes inner object/array/values first.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze\n * Note: this method will not work for property values using Symbol() as a key\n */\nexport const deepFreeze = obj => {\n // Retrieve the property names defined on object/array\n // Note: `keys` will ignore properties that are keyed by a `Symbol()`\n const props = keys(obj)\n // Iterate over each prop and recursively freeze it\n props.forEach(prop => {\n const value = obj[prop]\n // If value is a plain object or array, we deepFreeze it\n obj[prop] = value && (isPlainObject(value) || isArray(value)) ? deepFreeze(value) : value\n })\n return freeze(obj)\n}\n","/**\n * Utilities to get information about the current environment\n */\n\n// --- Constants ---\n\nexport const hasWindowSupport = typeof window !== 'undefined'\nexport const hasDocumentSupport = typeof document !== 'undefined'\nexport const hasNavigatorSupport = typeof navigator !== 'undefined'\nexport const hasPromiseSupport = typeof Promise !== 'undefined'\n/* istanbul ignore next: JSDOM always returns false */\nexport const hasMutationObserverSupport =\n typeof MutationObserver !== 'undefined' ||\n typeof WebKitMutationObserver !== 'undefined' ||\n typeof MozMutationObserver !== 'undefined'\n\nexport const isBrowser = hasWindowSupport && hasDocumentSupport && hasNavigatorSupport\n\n// Browser type sniffing\nexport const userAgent = isBrowser ? window.navigator.userAgent.toLowerCase() : ''\n\nexport const isJSDOM = userAgent.indexOf('jsdom') > 0\nexport const isIE = /msie|trident/.test(userAgent)\n\n// Determine if the browser supports the option passive for events\nexport const hasPassiveEventSupport = (() => {\n let passiveEventSupported = false\n if (isBrowser) {\n try {\n const options = {\n get passive() {\n // This function will be called when the browser\n // attempts to access the passive property.\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 (err) {\n /* istanbul ignore next: will never be called in JSDOM */\n passiveEventSupported = false\n }\n }\n return passiveEventSupported\n})()\n\nexport const hasTouchSupport =\n isBrowser && ('ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0)\n\nexport const hasPointerEventSupport =\n isBrowser && Boolean(window.PointerEvent || window.MSPointerEvent)\n\n/* istanbul ignore next: JSDOM only checks for 'IntersectionObserver' */\nexport const hasIntersectionObserverSupport =\n isBrowser &&\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\n// --- Getters ---\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 = () => getEnv('BOOTSTRAP_VUE_NO_WARN')\n","/**\n * SSR safe types\n */\n\nimport { hasWindowSupport } from './env'\n\nconst w = hasWindowSupport ? window : {}\n\nexport const Element = hasWindowSupport ? w.Element : class Element extends Object {}\n\nexport const HTMLElement = hasWindowSupport ? w.HTMLElement : class HTMLElement extends Element {}\n\nexport const SVGElement = hasWindowSupport ? w.SVGElement : class SVGElement extends Element {}\n\nexport const File = hasWindowSupport ? w.File : class File extends Object {}\n","import { isArray } from './array'\nimport { isObject, isPlainObject } from './object'\nimport { File } from './safe-types'\n\n// --- Convenience inspection utilities ---\n\nexport const toType = val => typeof val\n\nexport const toRawType = val => Object.prototype.toString.call(val).slice(8, -1)\n\nexport const toRawTypeLC = val => toRawType(val).toLowerCase()\n\nexport const isUndefined = val => val === undefined\n\nexport const isNull = val => val === null\n\nexport const isEmptyString = val => val === ''\n\nexport const isUndefinedOrNull = val => isUndefined(val) || isNull(val)\n\nexport const isUndefinedOrNullOrEmpty = val => isUndefinedOrNull(val) || isEmptyString(val)\n\nexport const isFunction = val => toType(val) === 'function'\n\nexport const isBoolean = val => toType(val) === 'boolean'\n\nexport const isString = val => toType(val) === 'string'\n\nexport const isNumber = val => toType(val) === 'number'\n\nexport const isPrimitive = val => isBoolean(val) || isString(val) || isNumber(val)\n\nexport const isDate = val => val instanceof Date\n\nexport const isEvent = val => val instanceof Event\n\nexport const isFile = val => val instanceof File\n\nexport const isRegExp = val => toRawType(val) === 'RegExp'\n\nexport const isPromise = val =>\n !isUndefinedOrNull(val) && isFunction(val.then) && isFunction(val.catch)\n\n// Extra convenience named re-exports\nexport { isArray, isObject, isPlainObject }\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\nexport default cloneDeep\n","const identity = x => x\n\nexport default identity\n","import identity from './identity'\nimport { isArray, isNull, isObject, isUndefinedOrNull } from './inspect'\n\nconst RX_ARRAY_NOTATION = /\\[(\\d+)]/g\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 val = getRaw(obj, path)\n return isUndefinedOrNull(val) ? defaultValue : val\n}\n\nexport default get\n","import { isBrowser, hasPromiseSupport, hasMutationObserverSupport, 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 (isBrowser) {\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 (hasPromiseSupport) {\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 (hasMutationObserverSupport) {\n return false\n } else {\n warn(`${source}: Requires MutationObserver support.`)\n return true\n }\n}\n","import { deepFreeze } from './object'\n\n// --- General BootstrapVue configuration ---\n\n// NOTES\n//\n// The global config SHALL NOT be used to set defaults for Boolean props, as the props\n// would loose their semantic meaning, and force people writing 3rd party components to\n// explicitly set a true or false value using the v-bind syntax on boolean props\n//\n// Supported config values (depending on the prop's supported type(s)):\n// `String`, `Array`, `Object`, `null` or `undefined`\n\n// BREAKPOINT DEFINITIONS\n//\n// Some components (`` and ``) generate props based on breakpoints,\n// and this occurs when the component is first loaded (evaluated), which may happen\n// before the config is created/modified\n//\n// To get around this we make these components' props async (lazy evaluation)\n// The component definition is only called/executed when the first access to the\n// component is used (and cached on subsequent uses)\n\n// PROP DEFAULTS\n//\n// For default values on props, we use the default value factory function approach so\n// that the default values are pulled in at each component instantiation\n//\n// props: {\n// variant: {\n// type: String,\n// default: () => getConfigComponent('BAlert', 'variant')\n// }\n// }\n//\n// We also provide a cached getter for breakpoints, which are \"frozen\" on first access\n\n// prettier-ignore\nexport default deepFreeze({\n // Breakpoints\n breakpoints: ['xs', 'sm', 'md', 'lg', 'xl'],\n\n // Form controls\n formControls: {\n size: undefined\n },\n\n // Component specific defaults are keyed by the component\n // name (PascalCase) and prop name (camelCase)\n BAlert: {\n dismissLabel: 'Close',\n variant: 'info'\n },\n BAvatar: {\n variant: 'secondary',\n badgeVariant: 'primary'\n },\n BBadge: {\n variant: 'secondary'\n },\n BButton: {\n size: undefined,\n variant: 'secondary'\n },\n BButtonClose: {\n content: '×',\n // `textVariant` is `null` to inherit the current text color\n textVariant: undefined,\n ariaLabel: 'Close'\n },\n BCalendar: {\n // BFormDate will choose these first if not provided in BFormDate section\n labelPrevDecade: 'Previous decade',\n labelPrevYear: 'Previous year',\n labelPrevMonth: 'Previous month',\n labelCurrentMonth: 'Current month',\n labelNextMonth: 'Next month',\n labelNextYear: 'Next year',\n labelNextDecade: 'Next decade',\n labelToday: 'Today',\n labelSelected: 'Selected date',\n labelNoDateSelected: 'No date selected',\n labelCalendar: 'Calendar',\n labelNav: 'Calendar navigation',\n labelHelp: 'Use cursor keys to navigate calendar dates'\n },\n BCardSubTitle: {\n // `` and `` also inherit this prop\n subTitleTextVariant: 'muted'\n },\n BCarousel: {\n labelPrev: 'Previous Slide',\n labelNext: 'Next Slide',\n labelGotoSlide: 'Goto Slide',\n labelIndicators: 'Select a slide to display'\n },\n BDropdown: {\n toggleText: 'Toggle Dropdown',\n size: undefined,\n variant: 'secondary',\n splitVariant: undefined\n },\n BFormDatepicker: {\n // BFormDatepicker will choose from BCalendar first if not provided here\n labelPrevDecade: undefined,\n labelPrevYear: undefined,\n labelPrevMonth: undefined,\n labelCurrentMonth: undefined,\n labelNextMonth: undefined,\n labelNextYear: undefined,\n labelNextDecade: undefined,\n labelToday: undefined,\n labelSelected: undefined,\n labelNoDateSelected: undefined,\n labelCalendar: undefined,\n labelNav: undefined,\n labelHelp: undefined,\n // These props are specific to BFormDatepicker\n labelTodayButton: 'Select today',\n labelResetButton: 'Reset',\n labelCloseButton: 'Close'\n },\n BFormFile: {\n browseText: 'Browse',\n // Chrome default file prompt\n placeholder: 'No file chosen',\n dropPlaceholder: 'Drop files here'\n },\n BFormRating: {\n variant: null,\n color: null\n },\n BFormTag: {\n removeLabel: 'Remove tag',\n variant: 'secondary'\n },\n BFormTags: {\n addButtonText: 'Add',\n addButtonVariant: 'outline-secondary',\n duplicateTagText: 'Duplicate tag(s)',\n invalidTagText: 'Invalid tag(s)',\n placeholder: 'Add tag...',\n tagRemoveLabel: 'Remove tag',\n tagRemovedLabel: 'Tag removed',\n tagVariant: 'secondary'\n },\n BFormText: {\n textVariant: 'muted'\n },\n BFormTimepicker: {\n // Fallback to BTime\n labelNoTimeSelected: undefined,\n labelSelected: undefined,\n labelHours: undefined,\n labelMinutes: undefined,\n labelSeconds: undefined,\n labelAmpm: undefined,\n labelAm: undefined,\n labelPm: undefined,\n // Fallback to BTime then BFormSpinbutton\n labelDecrement: undefined,\n labelIncrement: undefined,\n // These props are specific to BFormTimepicker\n labelNowButton: 'Select now',\n labelResetButton: 'Reset',\n labelCloseButton: 'Close'\n },\n BFormSpinbutton: {\n labelDecrement: 'Decrement',\n labelIncrement: 'Increment'\n },\n BImg: {\n blankColor: 'transparent'\n },\n BImgLazy: {\n blankColor: 'transparent'\n },\n BInputGroup: {\n size: undefined\n },\n BJumbotron: {\n bgVariant: undefined,\n borderVariant: undefined,\n textVariant: undefined\n },\n BLink: {\n routerComponentName: undefined\n },\n BListGroupItem: {\n variant: undefined\n },\n BModal: {\n titleTag: 'h5',\n size: 'md',\n headerBgVariant: undefined,\n headerBorderVariant: undefined,\n headerTextVariant: undefined,\n headerCloseVariant: undefined,\n bodyBgVariant: undefined,\n bodyTextVariant: undefined,\n footerBgVariant: undefined,\n footerBorderVariant: undefined,\n footerTextVariant: undefined,\n cancelTitle: 'Cancel',\n cancelVariant: 'secondary',\n okTitle: 'OK',\n okVariant: 'primary',\n headerCloseContent: '×',\n headerCloseLabel: 'Close'\n },\n BNavbar: {\n variant: null\n },\n BNavbarToggle: {\n label: 'Toggle navigation'\n },\n BPagination: {\n size: undefined\n },\n BPaginationNav: {\n size: undefined\n },\n BPopover: {\n boundary: 'scrollParent',\n boundaryPadding: 5,\n customClass: undefined,\n delay: 50,\n variant: undefined\n },\n BProgress: {\n variant: undefined\n },\n BProgressBar: {\n variant: undefined\n },\n BSpinner: {\n variant: undefined\n },\n BSidebar: {\n bgVariant: 'light',\n textVariant: 'dark',\n shadow: false,\n width: undefined,\n tag: 'div',\n backdropVariant: 'dark'\n },\n BTable: {\n selectedVariant: 'active',\n headVariant: undefined,\n footVariant: undefined\n },\n BTime: {\n labelNoTimeSelected: 'No time selected',\n labelSelected: 'Selected time',\n labelHours: 'Hours',\n labelMinutes: 'Minutes',\n labelSeconds: 'Seconds',\n labelAmpm: 'AM/PM',\n // It would be nice to be able to get these from Intl.DateTimeFormat somehow\n labelAm: 'AM',\n labelPm: 'PM',\n // The following inherit from BFormSpinbutton if not provided\n labelIncrement: undefined,\n labelDecrement: undefined\n },\n BToast: {\n toaster: 'b-toaster-top-right',\n autoHideDelay: 5000,\n variant: undefined,\n toastClass: undefined,\n headerClass: undefined,\n bodyClass: undefined\n },\n BToaster: {\n ariaLive: undefined,\n ariaAtomic: undefined,\n role: undefined\n },\n BTooltip: {\n boundary: 'scrollParent',\n boundaryPadding: 5,\n customClass: undefined,\n delay: 50,\n variant: undefined\n }\n})\n","import OurVue from './vue'\nimport cloneDeep from './clone-deep'\nimport { getRaw } from './get'\nimport { isArray, isPlainObject, isString, isUndefined } from './inspect'\nimport { getOwnPropertyNames, hasOwnProperty } from './object'\nimport { warn } from './warn'\nimport DEFAULTS from './config-defaults'\n\n// --- Constants ---\n\nconst NAME = 'BvConfig'\nconst PROP_NAME = '$bvConfig'\n\n// Config manager class\nclass BvConfig {\n constructor() {\n // TODO: pre-populate with default config values (needs updated tests)\n // this.$_config = cloneDeep(DEFAULTS)\n this.$_config = {}\n this.$_cachedBreakpoints = null\n }\n\n /* istanbul ignore next */\n static get Defaults() /* istanbul ignore next */ {\n return DEFAULTS\n }\n\n /* istanbul ignore next */\n get defaults() /* istanbul ignore next */ {\n return DEFAULTS\n }\n\n // Returns the defaults\n /* istanbul ignore next */\n getDefaults() /* istanbul ignore next */ {\n return this.defaults\n }\n\n // Method to merge in user config parameters\n setConfig(config = {}) {\n if (!isPlainObject(config)) {\n /* istanbul ignore next */\n return\n }\n const configKeys = getOwnPropertyNames(config)\n configKeys.forEach(cmpName => {\n /* istanbul ignore next */\n if (!hasOwnProperty(DEFAULTS, cmpName)) {\n warn(`Unknown config property \"${cmpName}\"`, NAME)\n return\n }\n const cmpConfig = config[cmpName]\n if (cmpName === 'breakpoints') {\n // Special case for breakpoints\n const breakpoints = config.breakpoints\n /* istanbul ignore if */\n if (\n !isArray(breakpoints) ||\n breakpoints.length < 2 ||\n breakpoints.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.breakpoints = cloneDeep(breakpoints)\n }\n } else if (isPlainObject(cmpConfig)) {\n // Component prop defaults\n const props = getOwnPropertyNames(cmpConfig)\n props.forEach(prop => {\n /* istanbul ignore if */\n if (!hasOwnProperty(DEFAULTS[cmpName], prop)) {\n warn(`Unknown config property \"${cmpName}.${prop}\"`, NAME)\n } else {\n // TODO: If we pre-populate the config with defaults, we can skip this line\n this.$_config[cmpName] = this.$_config[cmpName] || {}\n if (!isUndefined(cmpConfig[prop])) {\n this.$_config[cmpName][prop] = cloneDeep(cmpConfig[prop])\n }\n }\n })\n }\n })\n }\n\n // Clear the config. For testing purposes only\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 getConfigValue(key) {\n // First we try the user config, and if key not found we fall back to default value\n // NOTE: If we deep clone DEFAULTS into config, then we can skip the fallback for get\n return cloneDeep(getRaw(this.$_config, key, getRaw(DEFAULTS, key)))\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. 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","import { create } from './object'\n\nconst 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\nexport default memoize\n","import Vue from './vue'\nimport cloneDeep from './clone-deep'\nimport { getRaw } from './get'\nimport memoize from './memoize'\nimport DEFAULTS from './config-defaults'\n\n// --- Constants ---\n\nconst PROP_NAME = '$bvConfig'\nconst VueProto = Vue.prototype\n\n// --- Getter methods ---\n// All methods return a deep clone (immutable) copy of the config\n// value, to prevent mutation of the user config object.\n\n// Get the current user config. For testing purposes only\nexport const getConfig = () => {\n return VueProto[PROP_NAME] ? VueProto[PROP_NAME].getConfig() : {}\n}\n\n// Method to grab a config value based on a dotted/array notation key\nexport const getConfigValue = key => {\n return VueProto[PROP_NAME]\n ? VueProto[PROP_NAME].getConfigValue(key)\n : cloneDeep(getRaw(DEFAULTS, key))\n}\n\n// Method to grab a config value for a particular component\nexport const getComponentConfig = (cmpName, key = null) => {\n // Return the particular config value for key for if specified,\n // otherwise we return the full config (or an empty object if not found)\n return key ? getConfigValue(`${cmpName}.${key}`) : getConfigValue(cmpName) || {}\n}\n\n// Convenience method for getting all breakpoint names\nexport const getBreakpoints = () => {\n return getConfigValue('breakpoints')\n}\n\n// Private function for caching / locking-in breakpoint names\nconst _getBreakpointsCached = memoize(() => {\n return getBreakpoints()\n})\n\n// Convenience method for getting all breakpoint names.\n// Caches the results after first access.\nexport const getBreakpointsCached = () => {\n return cloneDeep(_getBreakpointsCached())\n}\n\n// Convenience method for getting breakpoints with\n// 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// Convenience method for getting breakpoints with\n// the smallest breakpoint set as ''.\n// Useful for components that create breakpoint specific props.\n// Caches the results after first access.\nexport const getBreakpointsUpCached = memoize(() => {\n const breakpoints = getBreakpointsCached()\n breakpoints[0] = ''\n return breakpoints\n})\n\n// Convenience method for getting breakpoints with\n// the largest breakpoint set as ''.\n// Useful for components that create breakpoint specific props.\nexport const getBreakpointsDown = () => {\n const breakpoints = getBreakpoints()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\n\n// Convenience method for getting breakpoints with\n// the largest breakpoint set as ''.\n// Useful for components that create breakpoint specific props.\n// Caches the results after first access.\n/* istanbul ignore next: we don't use this method anywhere, yet */\nexport const getBreakpointsDownCached = () => /* istanbul ignore next */ {\n const breakpoints = getBreakpointsCached()\n breakpoints[breakpoints.length - 1] = ''\n return breakpoints\n}\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 { isArray, isPlainObject, isString, isUndefinedOrNull } from './inspect'\n\n// --- Constants ---\n\nconst RX_TRIM_LEFT = /^\\s+/\nconst RX_TRIM_RIGHT = /\\s+$/\nconst RX_REGEXP_REPLACE = /[-/\\\\^$*+?.()|[\\]{}]/g\nconst RX_UN_KEBAB = /-(\\w)/g\nconst RX_HYPHENATE = /\\B([A-Z])/g\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// 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 { from as arrayFrom } from './array'\nimport { hasWindowSupport, hasDocumentSupport } from './env'\nimport { isFunction, isNull } from './inspect'\nimport { toFloat } from './number'\nimport { toString } from './string'\n\n// --- Constants ---\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\nconst w = hasWindowSupport ? window : {}\nconst d = hasDocumentSupport ? document : {}\nconst elProto = typeof Element !== 'undefined' ? Element.prototype : {}\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 elProto.matches || elProto.msMatchesSelector || elProto.webkitMatchesSelector\n\n// See: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\n/* istanbul ignore next */\nexport const closestEl =\n elProto.closest ||\n function(sel) /* istanbul ignore next */ {\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 w.requestAnimationFrame ||\n w.webkitRequestAnimationFrame ||\n w.mozRequestAnimationFrame ||\n w.msRequestAnimationFrame ||\n w.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 w.MutationObserver || w.WebKitMutationObserver || w.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 = d.activeElement\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(d.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 (el.style.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 : d).querySelectorAll(selector))\n\n// Select a single element, returns `null` if not found\nexport const select = (selector, root) =>\n (isElement(root) ? root : d).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 => d.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, val) => {\n if (attr && isElement(el)) {\n el.setAttribute(attr, val)\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// 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 => (hasWindowSupport && isElement(el) ? w.getComputedStyle(el) : {})\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 = () => (hasWindowSupport && w.getSelection ? w.getSelection() : null)\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","var e=function(){return(e=Object.assign||function(e){for(var t,r=1,s=arguments.length;r {\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 */\nconst 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\n// Named exports\nexport { hasNormalizedSlot, normalizeSlot }\n\n// Default export (backwards compatibility)\nexport default normalizeSlot\n","import { hasNormalizedSlot, normalizeSlot } from '../utils/normalize-slot'\nimport { concat } from '../utils/array'\n\nexport default {\n methods: {\n hasNormalizedSlot(names) {\n // Returns true if the either a $scopedSlot or $slot exists with the specified name\n // `names` can be a string name or an array of names\n return hasNormalizedSlot(names, this.$scopedSlots, this.$slots)\n },\n normalizeSlot(names, scope = {}) {\n // Returns an array of rendered VNodes if slot found.\n // Returns undefined if not found.\n // `names` can be a string name or an array of names\n const vNodes = normalizeSlot(names, scope, this.$scopedSlots, this.$slots)\n return vNodes ? concat(vNodes) : vNodes\n }\n }\n}\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { getComponentConfig } from '../../utils/config'\nimport { isEvent } from '../../utils/inspect'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\n\nconst NAME = 'BButtonClose'\n\nconst props = {\n content: {\n type: String,\n default: () => getComponentConfig(NAME, 'content')\n },\n disabled: {\n type: Boolean,\n default: false\n },\n ariaLabel: {\n type: String,\n default: () => getComponentConfig(NAME, 'ariaLabel')\n },\n textVariant: {\n type: String,\n default: () => getComponentConfig(NAME, 'textVariant')\n }\n}\n\n// @vue/component\nexport const BButtonClose = /*#__PURE__*/ Vue.extend({\n name: NAME,\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(evt) {\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(evt)) {\n evt.stopPropagation()\n evt.preventDefault()\n }\n }\n }\n }\n // Careful not to override the default slot with innerHTML\n if (!hasNormalizedSlot('default', $scopedSlots, $slots)) {\n componentData.domProps = { innerHTML: props.content }\n }\n return h(\n 'button',\n mergeData(data, componentData),\n normalizeSlot('default', {}, $scopedSlots, $slots)\n )\n }\n})\n","import Vue from '../../utils/vue'\nimport { getComponentConfig } from '../../utils/config'\nimport { requestAF } from '../../utils/dom'\nimport { isBoolean } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport BVTransition from '../../utils/bv-transition'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BButtonClose } from '../button/button-close'\n\nconst NAME = 'BAlert'\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// Is a value number like (i.e. a number or a number as string)\nconst isNumericLike = value => !isNaN(toInteger(value))\n\n// @vue/component\nexport const BAlert = /*#__PURE__*/ Vue.extend({\n name: NAME,\n mixins: [normalizeSlotMixin],\n model: {\n prop: 'show',\n event: 'input'\n },\n props: {\n variant: {\n type: String,\n default: () => getComponentConfig(NAME, 'variant')\n },\n dismissible: {\n type: Boolean,\n default: false\n },\n dismissLabel: {\n type: String,\n default: () => getComponentConfig(NAME, 'dismissLabel')\n },\n show: {\n type: [Boolean, Number, String],\n default: false\n },\n fade: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n countDown: 0,\n countDownTimeout: null,\n // If initially shown, we need to set these for SSR\n localShow: parseShow(this.show)\n }\n },\n watch: {\n show(newVal) {\n this.countDown = parseCountDown(newVal)\n this.localShow = parseShow(newVal)\n },\n countDown(newVal) {\n this.clearCountDownInterval()\n if (isNumericLike(this.show)) {\n // Ignore if this.show transitions to a boolean value.\n this.$emit('dismiss-count-down', newVal)\n if (this.show !== newVal) {\n // Update the v-model if needed\n this.$emit('input', newVal)\n }\n if (newVal > 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(newVal) {\n if (!newVal && (this.dismissible || isNumericLike(this.show))) {\n // Only emit dismissed events for dismissible or auto dismissing alerts\n this.$emit('dismissed')\n }\n if (!isNumericLike(this.show) && this.show !== newVal) {\n // Only emit booleans if we weren't passed a number via `this.show`\n this.$emit('input', newVal)\n }\n }\n },\n created() {\n this.countDown = parseCountDown(this.show)\n this.localShow = parseShow(this.show)\n },\n mounted() {\n this.countDown = parseCountDown(this.show)\n this.localShow = parseShow(this.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 if (this.countDownTimeout) {\n clearTimeout(this.countDownTimeout)\n this.countDownTimeout = null\n }\n }\n },\n render(h) {\n let $alert // undefined\n if (this.localShow) {\n let $dismissBtn = h()\n if (this.dismissible) {\n // Add dismiss button\n $dismissBtn = h(\n BButtonClose,\n { attrs: { 'aria-label': this.dismissLabel }, on: { click: this.dismiss } },\n [this.normalizeSlot('dismiss')]\n )\n }\n $alert = h(\n 'div',\n {\n key: this._uid,\n staticClass: 'alert',\n class: {\n 'alert-dismissible': this.dismissible,\n [`alert-${this.variant}`]: this.variant\n },\n attrs: { role: 'alert', 'aria-live': 'polite', 'aria-atomic': true }\n },\n [$dismissBtn, this.normalizeSlot('default')]\n )\n $alert = [$alert]\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 '../../utils/vue'\nimport { mathAbs } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Constants ---\nconst NAME = 'BAspect'\nconst CLASS_NAME = 'b-aspect'\n\nconst RX_ASPECT = /^\\d+(\\.\\d*)?[/:]\\d+(\\.\\d*)?$/\nconst RX_SEPARATOR = /[/:]/\n\n// --- Main Component ---\nexport const BAspect = /*#__PURE__*/ Vue.extend({\n name: NAME,\n mixins: [normalizeSlotMixin],\n props: {\n aspect: {\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 type: [Number, String],\n default: '1:1'\n },\n tag: {\n type: String,\n default: 'div'\n }\n },\n computed: {\n padding() {\n const aspect = this.aspect\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_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 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('default')]\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 identity from './identity'\nimport { isArray, isObject } 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, str) => str + (suffix ? upperFirst(suffix) : '')\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","import { 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// Precompile RegExp\nconst commaRE = /%2C/g\nconst encodeReserveRE = /[!'()*]/g\nconst plusRE = /\\+/g\nconst queryStartRE = /^(\\?|#|&)/\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(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ',')\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 val = obj[key]\n if (isUndefined(val)) {\n return ''\n } else if (isNull(val)) {\n return encode(key)\n } else if (isArray(val)) {\n return val\n .reduce((results, val2) => {\n if (isNull(val2)) {\n results.push(encode(key))\n } else if (!isUndefined(val2)) {\n // Faster than string interpolation\n results.push(encode(key) + '=' + encode(val2))\n }\n return results\n }, [])\n .join('&')\n }\n // Faster than string interpolation\n return encode(key) + '=' + encode(val)\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(queryStartRE, '')\n\n if (!query) {\n return parsed\n }\n\n query.split('&').forEach(param => {\n const parts = param.replace(plusRE, ' ').split('=')\n const key = decode(parts.shift())\n const val = parts.length > 0 ? decode(parts.join('=')) : null\n\n if (isUndefined(parsed[key])) {\n parsed[key] = val\n } else if (isArray(parsed[key])) {\n parsed[key].push(val)\n } else {\n parsed[key] = [parsed[key], val]\n }\n })\n\n return parsed\n}\n\nexport const isLink = props => !!(props.href || props.to)\n\nexport const isRouterLink = tag => !isTag(tag, ANCHOR_TAG)\n\nexport const computeTag = ({ to, disabled, routerComponentName } = {}, thisOrParent) => {\n const hasRouter = thisOrParent.$router\n if (!hasRouter || (hasRouter && disabled) || (hasRouter && !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 if (target === '_blank' && isNull(rel)) {\n return 'noopener'\n }\n return rel || null\n}\n\nexport const computeHref = (\n { href, to } = {},\n tag = ANCHOR_TAG,\n fallback = '#',\n toFallback = '/'\n) => {\n // We've already checked the $router in computeTag(), so isRouterLink() indicates a live router.\n // When deferring to Vue Router's router-link, don't use the href attribute at all.\n // We return null, and then remove href from the attributes passed to router-link\n if (isRouterLink(tag)) {\n return null\n }\n\n // Return `href` when explicitly provided\n if (href) {\n return href\n }\n\n // Reconstruct `href` when `to` used, but no router\n if (to) {\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\n // If nothing is provided return the fallback\n return fallback\n}\n","/*\n * Key Codes (events)\n */\nimport { freeze } from './object'\n\nconst KEY_CODES = freeze({\n SPACE: 32,\n ENTER: 13,\n ESC: 27,\n LEFT: 37,\n UP: 38,\n RIGHT: 39,\n DOWN: 40,\n PAGEUP: 33,\n PAGEDOWN: 34,\n HOME: 36,\n END: 35,\n TAB: 9,\n SHIFT: 16,\n CTRL: 17,\n BACKSPACE: 8,\n ALT: 18,\n PAUSE: 19,\n BREAK: 19,\n INSERT: 45,\n INS: 45,\n DELETE: 46\n})\n\nexport default KEY_CODES\n","import { hasOwnProperty } from './object'\n\nexport const makePropWatcher = propName => ({\n handler(newVal, oldVal) {\n for (const key in oldVal) {\n if (!hasOwnProperty(newVal, key)) {\n this.$delete(this.$data[propName], key)\n }\n }\n for (const key in newVal) {\n this.$set(this.$data[propName], key, newVal[key])\n }\n }\n})\n\nexport const makePropCacheMixin = (propName, proxyPropName) => ({\n data() {\n return {\n [proxyPropName]: {}\n }\n },\n watch: {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n [propName]: makePropWatcher(proxyPropName)\n },\n created() {\n this[proxyPropName] = { ...this[propName] }\n }\n})\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport default makePropCacheMixin('$attrs', 'bvAttrs')\n","import { makePropCacheMixin } from '../utils/cache'\n\nexport default makePropCacheMixin('$listeners', 'bvListeners')\n","import Vue from '../../utils/vue'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { attemptBlur, attemptFocus } from '../../utils/dom'\nimport { isBoolean, isEvent, isFunction, isUndefined } from '../../utils/inspect'\nimport { pluckProps } from '../../utils/props'\nimport { computeHref, computeRel, computeTag, isRouterLink } from '../../utils/router'\nimport attrsMixin from '../../mixins/attrs'\nimport listenersMixin from '../../mixins/listeners'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Constants ---\n\nconst NAME = 'BLink'\n\n// --- Props ---\n\n// specific props\nexport const routerLinkProps = {\n to: {\n type: [String, Object],\n default: null\n },\n append: {\n type: Boolean,\n default: false\n },\n replace: {\n type: Boolean,\n default: false\n },\n event: {\n type: [String, Array],\n default: 'click'\n },\n activeClass: {\n type: String\n // default: undefined\n },\n exact: {\n type: Boolean,\n default: false\n },\n exactActiveClass: {\n type: String\n // default: undefined\n },\n routerTag: {\n type: String,\n default: 'a'\n }\n}\n\n// specific props\nexport const nuxtLinkProps = {\n prefetch: {\n type: Boolean,\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. Vue treats `undefined` as default of `false`\n // for Boolean props, so we must set it as `null` here to be a\n // true tri-state prop\n default: null\n },\n noPrefetch: {\n type: Boolean,\n default: false\n }\n}\n\nexport const props = {\n href: {\n type: String,\n default: null\n },\n rel: {\n type: String,\n // Must be `null` if no value provided\n default: null\n },\n target: {\n type: String,\n default: '_self'\n },\n active: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n ...routerLinkProps,\n ...nuxtLinkProps,\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: {\n type: String,\n default: () => getComponentConfig(NAME, 'routerComponentName')\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BLink = /*#__PURE__*/ Vue.extend({\n name: 'BLink',\n // Mixin order is important!\n mixins: [attrsMixin, listenersMixin, 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 return computeRel({ target: this.target, rel: this.rel })\n },\n computedHref() {\n // We don't pass `this` as the first arg as we need reactivity of the props\n return computeHref({ to: this.to, href: this.href }, this.computedTag)\n },\n computedProps() {\n const prefetch = this.prefetch\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 && routerTag !== 'a' && routerTag !== 'area' ? {} : { 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(evt) {\n const evtIsEvent = isEvent(evt)\n const isRouterLink = this.isRouterLink\n const suppliedHandler = this.bvListeners.click\n if (evtIsEvent && this.disabled) {\n // Stop event from bubbling up\n evt.stopPropagation()\n // Kill the event loop attached to this specific `EventTarget`\n // Needed to prevent `vue-router` for doing its thing\n evt.stopImmediatePropagation()\n } else {\n /* istanbul ignore next: difficult to test, but we know it works */\n if (isRouterLink && evt.currentTarget.__vue__) {\n // Router links do not emit instance `click` events, so we\n // add in an `$emit('click', evt)` on its Vue instance\n evt.currentTarget.__vue__.$emit('click', evt)\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.$root.$emit('clicked::link', evt)\n }\n // Stop scroll-to-top behavior or navigation on\n // regular links when href is just '#'\n if (evtIsEvent && (this.disabled || (!isRouterLink && this.computedHref === '#'))) {\n evt.preventDefault()\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('default')\n )\n }\n})\n","import { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport KeyCodes from '../../utils/key-codes'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { addClass, isTag, removeClass } from '../../utils/dom'\nimport { isBoolean, isEvent, isFunction } from '../../utils/inspect'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink as isLinkStrict } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst NAME = 'BButton'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nconst btnProps = {\n block: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n size: {\n type: String,\n default: () => getComponentConfig(NAME, 'size')\n },\n variant: {\n type: String,\n default: () => getComponentConfig(NAME, 'variant')\n },\n type: {\n type: String,\n default: 'button'\n },\n tag: {\n type: String,\n default: 'button'\n },\n pill: {\n type: Boolean,\n default: false\n },\n squared: {\n type: Boolean,\n default: false\n },\n pressed: {\n // Tri-state: `true`, `false` or `null`\n // => On, off, not a toggle\n type: Boolean,\n default: null\n }\n}\n\nexport const props = { ...btnProps, ...linkProps }\n\n// --- Helper methods ---\n\n// Focus handler for toggle buttons\n// Needs class of 'focus' when focused\nconst handleFocus = evt => {\n if (evt.type === 'focusin') {\n addClass(evt.target, 'focus')\n } else if (evt.type === 'focusout') {\n removeClass(evt.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 || getComponentConfig(NAME, 'variant')}`,\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// @vue/component\nexport const BButton = /*#__PURE__*/ Vue.extend({\n name: NAME,\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(evt) {\n // When the link is a `href=\"#\"` or a non-standard tag (has `role=\"button\"`),\n // we add a keydown handlers for SPACE/ENTER\n /* istanbul ignore next */\n if (props.disabled || !(nonStandardTag || hashLink)) {\n return\n }\n const { keyCode } = evt\n // Add SPACE handler for `href=\"#\"` and ENTER handler for non-standard tags\n if (keyCode === KeyCodes.SPACE || (keyCode === KeyCodes.ENTER && nonStandardTag)) {\n const target = evt.currentTarget || evt.target\n evt.preventDefault()\n target.click()\n }\n },\n click(evt) {\n /* istanbul ignore if: blink/button disabled should handle this */\n if (props.disabled && isEvent(evt)) {\n evt.stopPropagation()\n evt.preventDefault()\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 '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport identity from '../../utils/identity'\nimport { isUndefinedOrNull } from '../../utils/inspect'\nimport { mathMax } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\n\n// Common icon props (should be cloned/spread before using)\nexport const commonIconProps = {\n variant: {\n type: String,\n default: null\n },\n fontScale: {\n type: [Number, String],\n default: 1\n },\n scale: {\n type: [Number, String],\n default: 1\n },\n rotate: {\n type: [Number, String],\n default: 0\n },\n flipH: {\n type: Boolean,\n default: false\n },\n flipV: {\n type: Boolean,\n default: false\n },\n shiftH: {\n type: [Number, String],\n default: 0\n },\n shiftV: {\n type: [Number, String],\n default: 0\n },\n animation: {\n type: String,\n default: null\n }\n}\n\n// Base attributes needed on all icons\nconst baseAttrs = {\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 stackedAttrs = {\n width: null,\n height: null,\n focusable: null,\n role: null,\n 'aria-label': null\n}\n\n// Shared private base component to reduce bundle/runtime size\n// @vue/component\nexport const BVIconBase = /*#__PURE__*/ Vue.extend({\n name: 'BVIconBase',\n functional: true,\n props: {\n content: {\n type: String\n },\n stacked: {\n type: Boolean,\n default: false\n },\n ...commonIconProps\n },\n render(h, { data, props, children }) {\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 const flipH = props.flipH\n const flipV = props.flipV\n const animation = props.animation\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 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 // Handling stacked icons\n const isStacked = props.stacked\n const hasContent = !isUndefinedOrNull(props.content)\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: props.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 if (isStacked) {\n // Wrap in an additional `` for proper\n // animation handling if stacked\n $inner = h('g', {}, [$inner])\n }\n\n return h(\n 'svg',\n mergeData(\n {\n staticClass: 'b-icon bi',\n class: {\n [`text-${props.variant}`]: !!props.variant,\n [`b-icon-animation-${animation}`]: !!animation\n },\n attrs: baseAttrs,\n style: isStacked ? {} : { 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 isStacked ? { attrs: stackedAttrs } : {},\n // These cannot be overridden by users\n {\n attrs: {\n xmlns: isStacked ? null : 'http://www.w3.org/2000/svg',\n fill: 'currentColor'\n }\n }\n ),\n [$inner]\n )\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { kebabCase, pascalCase, trim } from '../../utils/string'\nimport { commonIconProps, BVIconBase } 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 svgContent = trim(content || '')\n // Return the icon component definition\n return /*#__PURE__*/ Vue.extend({\n name: iconName,\n functional: true,\n props: {\n ...commonIconProps,\n stacked: {\n type: Boolean,\n default: false\n }\n },\n render(h, { data, props }) {\n return h(\n BVIconBase,\n mergeData(data, {\n staticClass: iconNameClass,\n props: { ...props, content: svgContent },\n attrs: { 'aria-label': kebabName.replace(/-/g, ' ') }\n })\n )\n }\n })\n}\n","// --- BEGIN AUTO-GENERATED FILE ---\n//\n// @IconsVersion: 1.0.0-alpha5\n// @Generated: 2020-07-28T21:51:51.502Z\n//\n// This file is generated on each build. Do not edit this file!\n\n/*!\n * BootstrapVue Icons, generated from Bootstrap Icons 1.0.0-alpha5\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 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 BIconBagDash = /*#__PURE__*/ makeIcon(\n 'BagDash',\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 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 BIconBookmarkDash = /*#__PURE__*/ makeIcon(\n 'BookmarkDash',\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 BIconBookmarkPlus = /*#__PURE__*/ makeIcon(\n 'BookmarkPlus',\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 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 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 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 BIconCartDash = /*#__PURE__*/ makeIcon(\n 'CartDash',\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 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 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 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 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 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 BIconEmojiDizzy = /*#__PURE__*/ makeIcon(\n 'EmojiDizzy',\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 BIconEmojiFrown = /*#__PURE__*/ makeIcon(\n 'EmojiFrown',\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 BIconEmojiNeutral = /*#__PURE__*/ makeIcon(\n 'EmojiNeutral',\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 BIconEmojiSmileUpsideDown = /*#__PURE__*/ makeIcon(\n 'EmojiSmileUpsideDown',\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 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 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 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 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 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 BIconFileEarmarkFill = /*#__PURE__*/ makeIcon(\n 'FileEarmarkFill',\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 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 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 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 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 BIconFileFill = /*#__PURE__*/ makeIcon(\n 'FileFill',\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 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 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 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 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 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 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 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 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 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 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 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 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 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 BIconPatchCheckFll = /*#__PURE__*/ makeIcon(\n 'PatchCheckFll',\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 BIconPatchExclamationFll = /*#__PURE__*/ makeIcon(\n 'PatchExclamationFll',\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 BIconPatchMinusFll = /*#__PURE__*/ makeIcon(\n 'PatchMinusFll',\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 BIconPatchPlusFll = /*#__PURE__*/ makeIcon(\n 'PatchPlusFll',\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 BIconPatchQuestionFll = /*#__PURE__*/ makeIcon(\n 'PatchQuestionFll',\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 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 BIconPencil = /*#__PURE__*/ makeIcon(\n 'Pencil',\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 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 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 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 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 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 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 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 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 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 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 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 BIconSkipStartFill = /*#__PURE__*/ makeIcon(\n 'SkipStartFill',\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 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 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 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 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 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 BIconUiRadios = /*#__PURE__*/ makeIcon(\n 'UiRadios',\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 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 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 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 from '../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { pascalCase, trim } from '../utils/string'\nimport { BIconBlank } from './icons'\nimport { commonIconProps } from './helpers/icon-base'\n\nconst RX_ICON_PREFIX = /^BIcon/\n\n// Helper BIcon component\n// Requires the requested icon component to be installed\nexport const BIcon = /*#__PURE__*/ Vue.extend({\n name: 'BIcon',\n functional: true,\n props: {\n icon: {\n type: String,\n default: null\n },\n ...commonIconProps,\n stacked: {\n type: Boolean,\n default: false\n }\n },\n render(h, { data, props, parent }) {\n const icon = pascalCase(trim(props.icon || '')).replace(RX_ICON_PREFIX, '')\n const iconName = `BIcon${icon}`\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 const components = ((parent || {}).$options || {}).components\n const componentRefOrName =\n icon && components ? components[iconName] || BIconBlank : icon ? iconName : BIconBlank\n return h(componentRefOrName, mergeData(data, { props: { ...props, icon: null } }))\n }\n})\n","import Vue from '../../utils/vue'\nimport { getComponentConfig } from '../../utils/config'\nimport { isNumber, isString, isUndefinedOrNull } from '../../utils/inspect'\nimport { toFloat } from '../../utils/number'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BButton } from '../button/button'\nimport { BLink, props as BLinkProps } from '../link/link'\nimport { BIcon } from '../../icons/icon'\nimport { BIconPersonFill } from '../../icons/icons'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\n// --- Constants ---\nconst NAME = 'BAvatar'\nconst CLASS_NAME = 'b-avatar'\n\nconst RX_NUMBER = /^[0-9]*\\.?[0-9]+$/\n\nconst FONT_SIZE_SCALE = 0.4\nconst BADGE_FONT_SIZE_SCALE = FONT_SIZE_SCALE * 0.7\n\nconst DEFAULT_SIZES = {\n sm: '1.5em',\n md: '2.5em',\n lg: '3.5em'\n}\n\n// --- Props ---\nconst linkProps = omit(BLinkProps, ['active', 'event', 'routerTag'])\n\nconst props = {\n src: {\n type: String\n // default: null\n },\n text: {\n type: String\n // default: null\n },\n icon: {\n type: String\n // default: null\n },\n alt: {\n type: String,\n default: 'avatar'\n },\n variant: {\n type: String,\n default: () => getComponentConfig(NAME, 'variant')\n },\n size: {\n type: [Number, String],\n default: null\n },\n square: {\n type: Boolean,\n default: false\n },\n rounded: {\n type: [Boolean, String],\n default: false\n },\n button: {\n type: Boolean,\n default: false\n },\n buttonType: {\n type: String,\n default: 'button'\n },\n badge: {\n type: [Boolean, String],\n default: false\n },\n badgeVariant: {\n type: String,\n default: () => getComponentConfig(NAME, 'badgeVariant')\n },\n badgeTop: {\n type: Boolean,\n default: false\n },\n badgeLeft: {\n type: Boolean,\n default: false\n },\n badgeOffset: {\n type: String,\n default: '0px'\n },\n ...linkProps,\n ariaLabel: {\n type: String\n // default: null\n }\n}\n\n// --- Utility methods ---\nexport const computeSize = value => {\n // Default to `md` size when `null`, or parse to\n // number when value is a float-like string\n value =\n isUndefinedOrNull(value) || value === ''\n ? 'md'\n : isString(value) && RX_NUMBER.test(value)\n ? toFloat(value, 0)\n : value\n // Convert all numbers to pixel values\n // Handle default sizes when `sm`, `md` or `lg`\n // Or use value as is\n return isNumber(value) ? `${value}px` : DEFAULT_SIZES[value] || value\n}\n\n// --- Main component ---\n// @vue/component\nexport const BAvatar = /*#__PURE__*/ Vue.extend({\n name: NAME,\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 return computeSize(this.bvAvatarGroup ? this.bvAvatarGroup.size : this.size)\n },\n computedVariant() {\n // Prefer avatar-group variant if provided\n const avatarGroup = this.bvAvatarGroup\n return avatarGroup && avatarGroup.variant ? avatarGroup.variant : this.variant\n },\n computedRounded() {\n const avatarGroup = this.bvAvatarGroup\n const square = avatarGroup && avatarGroup.square ? true : this.square\n const rounded = avatarGroup && avatarGroup.rounded ? avatarGroup.rounded : this.rounded\n return square ? '0' : rounded === '' ? true : rounded || 'circle'\n },\n fontStyle() {\n let fontSize = this.computedSize\n fontSize = fontSize ? `calc(${fontSize} * ${FONT_SIZE_SCALE})` : null\n return fontSize ? { fontSize } : {}\n },\n marginStyle() {\n const avatarGroup = this.bvAvatarGroup\n const overlapScale = avatarGroup ? avatarGroup.overlapScale : 0\n const size = this.computedSize\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: size ? `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(newSrc, oldSrc) {\n if (newSrc !== oldSrc) {\n this.localSrc = newSrc || null\n }\n }\n },\n methods: {\n onImgError(evt) {\n this.localSrc = null\n this.$emit('img-error', evt)\n },\n onClick(evt) {\n this.$emit('click', evt)\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('default')) {\n // Default slot overrides props\n $content = h('span', { staticClass: 'b-avatar-custom' }, [this.normalizeSlot('default')])\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('span', { staticClass: 'b-avatar-text', style: fontStyle }, [h('span', text)])\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('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('badge') : badgeText]\n )\n }\n\n const componentData = {\n staticClass: CLASS_NAME,\n class: {\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: { width: size, height: size, ...marginStyle },\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 { 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 from '../../utils/vue'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { mathMax, mathMin } from '../../utils/math'\nimport { toFloat } from '../../utils/number'\nimport { computeSize } from './avatar'\n\n// --- Constants ---\nconst NAME = 'BAvatarGroup'\n\n// --- Main component ---\n// @vue/component\nexport const BAvatarGroup = /*#__PURE__*/ Vue.extend({\n name: NAME,\n mixins: [normalizeSlotMixin],\n provide() {\n return { bvAvatarGroup: this }\n },\n props: {\n variant: {\n // Child avatars will prefer this variant over their own\n type: String,\n default: null\n },\n size: {\n // Child avatars will always use this over their own size\n type: String,\n default: null\n },\n overlap: {\n type: [Number, String],\n default: 0.3\n },\n square: {\n // Child avatars will prefer this prop (if set) over their own\n type: Boolean,\n default: false\n },\n rounded: {\n // Child avatars will prefer this prop (if set) over their own\n type: [Boolean, String],\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n }\n },\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('div', { staticClass: 'b-avatar-group-inner', style: this.paddingStyle }, [\n this.normalizeSlot('default')\n ])\n\n return h(this.tag, { staticClass: 'b-avatar-group', attrs: { role: 'group' } }, [$inner])\n }\n})\n","import { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { getComponentConfig } from '../../utils/config'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { isLink } from '../../utils/router'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Constants ---\n\nconst NAME = 'BBadge'\n\n// --- Props ---\n\nconst linkProps = omit(BLinkProps, ['event', 'routerTag'])\ndelete linkProps.href.default\ndelete linkProps.to.default\n\nexport const props = {\n tag: {\n type: String,\n default: 'span'\n },\n variant: {\n type: String,\n default: () => getComponentConfig(NAME, 'variant')\n },\n pill: {\n type: Boolean,\n default: false\n },\n ...linkProps\n}\n\n// --- Main component ---\n// @vue/component\nexport const BBadge = /*#__PURE__*/ Vue.extend({\n name: NAME,\n functional: true,\n props,\n render(h, { props, data, children }) {\n const link = isLink(props)\n const tag = link ? BLink : props.tag\n\n const componentData = {\n staticClass: 'badge',\n class: [\n props.variant ? `badge-${props.variant}` : 'badge-secondary',\n {\n 'badge-pill': props.pill,\n active: props.active,\n disabled: props.disabled\n }\n ],\n props: link ? pluckProps(linkProps, props) : {}\n }\n\n return h(tag, mergeData(data, componentData), children)\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","const RX_HTML_TAGS = /(<([^>]+)>)/gi\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 return innerHTML ? { innerHTML } : textContent ? { textContent } : {}\n}\n","import { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { htmlOrText } from '../../utils/html'\nimport { omit } from '../../utils/object'\nimport { pluckProps } from '../../utils/props'\nimport { BLink, props as BLinkProps } from '../link/link'\n\n// --- Props ---\n\nexport const props = {\n text: {\n type: String,\n default: null\n },\n html: {\n type: String,\n default: null\n },\n ariaCurrent: {\n type: String,\n default: 'location'\n },\n ...omit(BLinkProps, ['event', 'routerTag'])\n}\n\n// --- Main component ---\n// @vue/component\nexport const BBreadcrumbLink = /*#__PURE__*/ Vue.extend({\n name: 'BBreadcrumbLink',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { BBreadcrumbLink, props } from './breadcrumb-link'\n\n// @vue/component\nexport const BBreadcrumbItem = /*#__PURE__*/ Vue.extend({\n name: 'BBreadcrumbItem',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { isArray, isObject } from '../../utils/inspect'\nimport { toString } from '../../utils/string'\nimport { BBreadcrumbItem } from './breadcrumb-item'\n\nexport const props = {\n items: {\n type: Array,\n default: null\n }\n}\n\n// @vue/component\nexport const BBreadcrumb = /*#__PURE__*/ Vue.extend({\n name: 'BBreadcrumb',\n functional: true,\n props,\n render(h, { props, data, children }) {\n let childNodes = children\n // Build child nodes from items if given.\n if (isArray(props.items)) {\n let activeDefined = false\n childNodes = props.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.active\n if (active) {\n activeDefined = true\n }\n if (!active && !activeDefined) {\n // Auto-detect active by position in list.\n active = idx + 1 === props.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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { getComponentConfig } from '../../utils/config'\n\nconst NAME = 'BButtonGroup'\n\nexport const props = {\n vertical: {\n type: Boolean,\n default: false\n },\n size: {\n type: String,\n default: () => getComponentConfig('BButton', 'size')\n },\n tag: {\n type: String,\n default: 'div'\n },\n ariaRole: {\n type: String,\n default: 'group'\n }\n}\n\n// @vue/component\nexport const BButtonGroup = /*#__PURE__*/ Vue.extend({\n name: NAME,\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 '../../utils/vue'\nimport KeyCodes from '../../utils/key-codes'\nimport { attemptFocus, isVisible, selectAll } from '../../utils/dom'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\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// @vue/component\nexport const BButtonToolbar = /*#__PURE__*/ Vue.extend({\n name: 'BButtonToolbar',\n mixins: [normalizeSlotMixin],\n props: {\n justify: {\n type: Boolean,\n default: false\n },\n keyNav: {\n type: Boolean,\n default: false\n }\n },\n mounted() {\n if (this.keyNav) {\n // Pre-set the tabindexes if the markup does not include tabindex=\"-1\" on the toolbar items\n this.getItems()\n }\n },\n methods: {\n onFocusin(evt) {\n if (evt.target === this.$el) {\n evt.preventDefault()\n evt.stopPropagation()\n this.focusFirst(evt)\n }\n },\n stop(evt) {\n evt.preventDefault()\n evt.stopPropagation()\n },\n onKeydown(evt) {\n if (!this.keyNav) {\n /* istanbul ignore next: should never happen */\n return\n }\n const key = evt.keyCode\n const shift = evt.shiftKey\n if (key === KeyCodes.UP || key === KeyCodes.LEFT) {\n this.stop(evt)\n shift ? this.focusFirst(evt) : this.focusPrev(evt)\n } else if (key === KeyCodes.DOWN || key === KeyCodes.RIGHT) {\n this.stop(evt)\n shift ? this.focusLast(evt) : this.focusNext(evt)\n }\n },\n focusFirst() {\n const items = this.getItems()\n attemptFocus(items[0])\n },\n focusPrev(evt) {\n let items = this.getItems()\n const index = items.indexOf(evt.target)\n if (index > -1) {\n items = items.slice(0, index).reverse()\n attemptFocus(items[0])\n }\n },\n focusNext(evt) {\n let items = this.getItems()\n const index = items.indexOf(evt.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 getItems() {\n const items = selectAll(ITEM_SELECTOR, this.$el)\n items.forEach(item => {\n // Ensure tabfocus is -1 on any new elements\n item.tabIndex = -1\n })\n return items.filter(el => isVisible(el))\n }\n },\n render(h) {\n return h(\n 'div',\n {\n staticClass: 'btn-toolbar',\n class: { 'justify-content-between': this.justify },\n attrs: {\n role: 'toolbar',\n tabindex: this.keyNav ? '0' : null\n },\n on: this.keyNav\n ? {\n focusin: this.onFocusin,\n keydown: this.onKeydown\n }\n : {}\n },\n [this.normalizeSlot('default')]\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","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 */\nconst 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\nexport default looseEqual\n","// Date utility functions\nimport identity from './identity'\nimport { concat } from './array'\nimport { isDate, isString } from './inspect'\nimport { toInteger } from './number'\n\n// --- Constants ---\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'\nconst RX_DATE = /^\\d+-\\d\\d?-\\d\\d?(?:\\s|T|$)/\n\n// Used to split off the date parts of the YYYY-MM-DD string\nconst RX_DATE_SPLIT = /-|\\s|T/\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 = 'gregory') => /* istanbul ignore next */ {\n locales = concat(locales).filter(identity)\n const fmt = new Intl.DateTimeFormat(locales, { calendar: 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 { 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// Precompile RegExpr\nconst RX_STRIP_MODS = /-u-.+/\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_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\n\n// @vue/component\nexport default {\n props: {\n id: {\n type: String\n // default: null\n }\n },\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._uid}`\n })\n }\n}\n","import Vue from '../../utils/vue'\nimport KeyCodes from '../../utils/key-codes'\nimport identity from '../../utils/identity'\nimport looseEqual from '../../utils/loose-equal'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\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 { isArray, isFunction, isPlainObject, isString } from '../../utils/inspect'\nimport { isLocaleRTL } from '../../utils/locale'\nimport { mathMax } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport attrsMixin from '../../mixins/attrs'\nimport idMixin 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 NAME = 'BCalendar'\n\n// Key Codes\nconst { UP, DOWN, LEFT, RIGHT, PAGEUP, PAGEDOWN, HOME, END, ENTER, SPACE } = KeyCodes\n\n// Common calendar option value strings\nexport const STR_GREGORY = 'gregory'\nexport const STR_NUMERIC = 'numeric'\nexport const STR_2_DIGIT = '2-digit'\nexport const STR_LONG = 'long'\nexport const STR_SHORT = 'short'\nexport const STR_NARROW = 'narrow'\n\n// --- BCalendar component ---\n\n// @vue/component\nexport const BCalendar = Vue.extend({\n name: NAME,\n // Mixin order is important!\n mixins: [attrsMixin, idMixin, normalizeSlotMixin],\n model: {\n // Even though this is the default that Vue assumes, we need\n // to add it for the docs to reflect that this is the model\n // And also for some validation libraries to work\n prop: 'value',\n event: 'input'\n },\n props: {\n value: {\n type: [String, Date]\n // default: null\n },\n valueAsDate: {\n // Always return the `v-model` value as a date object\n type: Boolean,\n default: false\n },\n initialDate: {\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 type: [String, Date]\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n min: {\n type: [String, Date]\n // default: null\n },\n max: {\n type: [String, Date]\n // default: null\n },\n dateDisabledFn: {\n type: Function\n // default: null\n },\n startWeekday: {\n // `0` (Sunday), `1` (Monday), ... `6` (Saturday)\n // Day of week to start calendar on\n type: [Number, String],\n default: 0\n },\n locale: {\n // Locale(s) to use\n // Default is to use page/browser default setting\n type: [String, Array]\n // default: null\n },\n direction: {\n // 'ltr', 'rtl', or `null` (for auto detect)\n type: String\n // default: null\n },\n selectedVariant: {\n // Variant color to use for the selected date\n type: String,\n default: 'primary'\n },\n todayVariant: {\n // Variant color to use for today's date (defaults to `variant`)\n type: String\n // default: null\n },\n noHighlightToday: {\n // Disable highlighting today's date\n type: Boolean,\n default: false\n },\n dateInfoFn: {\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 type: Function\n // default: null\n },\n width: {\n // Has no effect if prop `block` is set\n type: String,\n default: '270px'\n },\n block: {\n // Makes calendar the full width of its parent container\n type: Boolean,\n default: false\n },\n hideHeader: {\n // When true makes the selected date header `sr-only`\n type: Boolean,\n default: false\n },\n showDecadeNav: {\n // When `true` enables the decade navigation buttons\n type: Boolean,\n default: false\n },\n hidden: {\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 type: Boolean,\n default: false\n },\n ariaControls: {\n type: String\n // default: null\n },\n roleDescription: {\n type: String\n // default: null\n },\n // Labels for buttons and keyboard shortcuts\n labelPrevDecade: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelPrevDecade')\n },\n labelPrevYear: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelPrevYear')\n },\n labelPrevMonth: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelPrevMonth')\n },\n labelCurrentMonth: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelCurrentMonth')\n },\n labelNextMonth: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNextMonth')\n },\n labelNextYear: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNextYear')\n },\n labelNextDecade: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNextDecade')\n },\n labelToday: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelToday')\n },\n labelSelected: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelSelected')\n },\n labelNoDateSelected: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNoDateSelected')\n },\n labelCalendar: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelCalendar')\n },\n labelNav: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNav')\n },\n labelHelp: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelHelp')\n },\n dateFormatOptions: {\n // `Intl.DateTimeFormat` object\n // Note: This value is *not* to be placed in the global config\n type: Object,\n default: () => ({\n year: STR_NUMERIC,\n month: STR_LONG,\n day: STR_NUMERIC,\n weekday: STR_LONG\n })\n },\n weekdayHeaderFormat: {\n // Format of the weekday names at the top of the calendar\n // Note: This value is *not* to be placed in the global config\n type: String,\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 default: STR_SHORT,\n validator: value => arrayIncludes([STR_LONG, STR_SHORT, STR_NARROW], value)\n }\n },\n data() {\n const selected = formatYMD(this.value) || ''\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), STR_GREGORY)\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: STR_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 !== STR_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 return createDate(this.calendarYear, this.calendarMonth, 1)\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 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 = this.selectedYMD\n const selectedDate = parseYMD(selectedYMD)\n const activeYMD = this.activeYMD\n const activeDate = parseYMD(activeYMD)\n return {\n // The current value of the `v-model`\n selectedYMD: selectedYMD,\n selectedDate: selectedDate,\n selectedFormatted: selectedDate\n ? this.formatDateString(selectedDate)\n : this.labelNoDateSelected,\n // Which date cell is considered active due to navigation\n activeYMD: activeYMD,\n activeDate: activeDate,\n activeFormatted: activeDate ? this.formatDateString(activeDate) : '',\n // `true` if the date is disabled (when using keyboard navigation)\n disabled: this.dateDisabled(activeDate),\n // Locales used in formatting dates\n locale: this.computedLocale,\n calendarLocale: this.calendarLocale,\n rtl: this.isRTL\n }\n },\n // Computed props that return a function reference\n dateOutOfRange() {\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 min = this.computedMin\n const max = this.computedMax\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 const disabledFn = isFunction(this.dateDisabledFn) ? this.dateDisabledFn : () => false\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) || disabledFn(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: STR_NUMERIC,\n month: STR_2_DIGIT,\n day: STR_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: STR_GREGORY\n })\n },\n formatYearMonth() {\n // Returns a date formatter function\n return createDateFormatter(this.calendarLocale, {\n year: STR_NUMERIC,\n month: STR_LONG,\n calendar: STR_GREGORY\n })\n },\n formatWeekdayName() {\n // Long weekday name for weekday header aria-label\n return createDateFormatter(this.calendarLocale, {\n weekday: STR_LONG,\n calendar: STR_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 || STR_SHORT,\n calendar: STR_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 // TODO: Change `dateInfoFn` to handle events and notes as well as classes\n const dateInfoFn = isFunction(this.dateInfoFn) ? this.dateInfoFn : () => ({})\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 = dateInfoFn(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 value(newVal, oldVal) {\n const selected = formatYMD(newVal) || ''\n const old = formatYMD(oldVal) || ''\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('input', this.valueAsDate ? parseYMD(newYMD) || null : newYMD || '')\n }\n },\n context(newVal, oldVal) {\n if (!looseEqual(newVal, oldVal)) {\n this.$emit('context', newVal)\n }\n },\n hidden(newVal) {\n // Reset the active focused day when hidden\n this.activeYMD =\n this.selectedYMD ||\n formatYMD(this.value || this.constrainDate(this.initialDate || this.getToday()))\n // Enable/disable the live regions\n this.setLive(!newVal)\n }\n },\n created() {\n this.$nextTick(() => {\n this.$emit('context', this.context)\n })\n },\n mounted() {\n this.setLive(true)\n },\n /* istanbul ignore next */\n activated() /* istanbul ignore next */ {\n this.setLive(true)\n },\n /* istanbul ignore next */\n deactivated() /* istanbul ignore next */ {\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('selected', formatYMD(date) || '', parseYMD(date) || null)\n })\n },\n // Event handlers\n setGridFocusFlag(evt) {\n // Sets the gridHasFocus flag to make date \"button\" look focused\n this.gridHasFocus = !this.disabled && evt.type === 'focus'\n },\n onKeydownWrapper(evt) {\n // Calendar keyboard navigation\n // Handles PAGEUP/PAGEDOWN/END/HOME/LEFT/UP/RIGHT/DOWN\n // Focuses grid after updating\n const { altKey, ctrlKey, keyCode } = evt\n if (!arrayIncludes([PAGEUP, PAGEDOWN, END, HOME, LEFT, UP, RIGHT, DOWN], keyCode)) {\n /* istanbul ignore next */\n return\n }\n evt.preventDefault()\n evt.stopPropagation()\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 === 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 === 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 === 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 === 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 === UP) {\n // UP - Previous week\n activeDate.setDate(day - 7)\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === DOWN) {\n // DOWN - Next week\n activeDate.setDate(day + 7)\n activeDate = this.constrainDate(activeDate)\n checkDate = activeDate\n } else if (keyCode === HOME) {\n // HOME - Today\n activeDate = constrainedToday\n checkDate = activeDate\n } else if (keyCode === 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(evt) {\n // Pressing enter/space on grid to select active date\n const keyCode = evt.keyCode\n const activeDate = this.activeDate\n if (keyCode === ENTER || keyCode === SPACE) {\n evt.preventDefault()\n evt.stopPropagation()\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 = this.selectedDate\n const activeDate = this.activeDate\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 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': this.disabled, readonly: this.readonly || this.disabled },\n attrs: {\n id: valueId,\n for: gridId,\n role: 'status',\n tabindex: this.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('nav-prev-decade', navScope) ||\n h(BIconChevronBarLeft, { props: navPrevProps })\n const $prevYearIcon =\n this.normalizeSlot('nav-prev-year', navScope) ||\n h(BIconChevronDoubleLeft, { props: navPrevProps })\n const $prevMonthIcon =\n this.normalizeSlot('nav-prev-month', navScope) || h(BIconChevronLeft, { props: navPrevProps })\n const $thisMonthIcon =\n this.normalizeSlot('nav-this-month', navScope) || h(BIconCircleFill, { props: navProps })\n const $nextMonthIcon =\n this.normalizeSlot('nav-next-month', navScope) || h(BIconChevronLeft, { props: navNextProps })\n const $nextYearIcon =\n this.normalizeSlot('nav-next-year', navScope) ||\n h(BIconChevronDoubleLeft, { props: navNextProps })\n const $nextDecadeIcon =\n this.normalizeSlot('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 btn-outline-secondary border-0 flex-fill',\n class: { disabled: btnDisabled },\n attrs: {\n title: label || null,\n type: 'button',\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 'aria-hidden': this.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 key: 'grid-caption',\n staticClass: 'b-calendar-grid-caption text-center font-weight-bold',\n class: { 'text-muted': this.disabled },\n attrs: {\n id: gridCaptionId,\n 'aria-live': isLive ? 'polite' : null,\n 'aria-atomic': isLive ? 'true' : null\n }\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 key: idx,\n staticClass: 'col text-truncate',\n class: { 'text-muted': this.disabled },\n attrs: {\n title: d.label === d.text ? null : d.label,\n 'aria-label': d.label\n }\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 || this.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 key: dIndex,\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 || this.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 },\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('div', { key: week[0].ymd, staticClass: 'row no-gutters' }, $cells)\n })\n $gridBody = h(\n 'div',\n {\n // A key is only required on the body if we add in transition support\n // key: this.activeYMD.slice(0, -3),\n staticClass: 'b-calendar-grid-body',\n style: this.disabled ? { pointerEvents: 'none' } : {}\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 ref: 'grid',\n staticClass: 'b-calendar-grid form-control h-auto text-center',\n attrs: {\n id: gridId,\n role: 'application',\n tabindex: this.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 && !this.disabled ? 'true' : null,\n 'aria-disabled': this.disabled ? 'true' : null,\n 'aria-activedescendant': activeId\n },\n on: {\n keydown: this.onKeydownGrid,\n focus: this.setGridFocusFlag,\n blur: this.setGridFocusFlag\n }\n },\n [$gridCaption, $gridWeekDays, $gridBody, $gridHelp]\n )\n\n // Optional bottom slot\n let $slot = this.normalizeSlot('default')\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': this.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","// @vue/component\nexport default {\n props: {\n tag: {\n type: String,\n default: 'div'\n },\n bgVariant: {\n type: String\n // default: null\n },\n borderVariant: {\n type: String\n // default: null\n },\n textVariant: {\n type: String\n // default: null\n }\n }\n}\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { toString } from '../../utils/string'\n\nexport const props = {\n title: {\n type: String\n // default: null\n },\n titleTag: {\n type: String,\n default: 'h4'\n }\n}\n\n// @vue/component\nexport const BCardTitle = /*#__PURE__*/ Vue.extend({\n name: 'BCardTitle',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { getComponentConfig } from '../../utils/config'\nimport { toString } from '../../utils/string'\n\nconst NAME = 'BCardSubTitle'\n\nexport const props = {\n subTitle: {\n type: String\n // default: null\n },\n subTitleTag: {\n type: String,\n default: 'h6'\n },\n subTitleTextVariant: {\n type: String,\n default: () => getComponentConfig(NAME, 'subTitleTextVariant')\n }\n}\n\n// @vue/component\nexport const BCardSubTitle = /*#__PURE__*/ Vue.extend({\n name: NAME,\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 { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { copyProps, pluckProps, prefixPropName } from '../../utils/props'\nimport cardMixin from '../../mixins/card'\nimport { BCardTitle, props as titleProps } from './card-title'\nimport { BCardSubTitle, props as subTitleProps } from './card-sub-title'\n\nexport const props = {\n // Import common card props and prefix them with `body-`\n ...copyProps(cardMixin.props, prefixPropName.bind(null, 'body')),\n bodyClass: {\n type: [String, Object, Array]\n // default: null\n },\n ...titleProps,\n ...subTitleProps,\n overlay: {\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BCardBody = /*#__PURE__*/ Vue.extend({\n name: 'BCardBody',\n functional: true,\n props,\n render(h, { props, data, children }) {\n let cardTitle = h()\n let cardSubTitle = h()\n const cardContent = children || [h()]\n\n if (props.title) {\n cardTitle = h(BCardTitle, { props: pluckProps(titleProps, props) })\n }\n\n if (props.subTitle) {\n cardSubTitle = 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-${props.bodyBgVariant}`]: props.bodyBgVariant,\n [`border-${props.bodyBorderVariant}`]: props.bodyBorderVariant,\n [`text-${props.bodyTextVariant}`]: props.bodyTextVariant\n },\n props.bodyClass || {}\n ]\n }),\n [cardTitle, cardSubTitle, ...cardContent]\n )\n }\n})\n","import { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { htmlOrText } from '../../utils/html'\nimport { copyProps, prefixPropName } from '../../utils/props'\nimport cardMixin from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = {\n ...copyProps(cardMixin.props, prefixPropName.bind(null, 'header')),\n header: {\n type: String\n // default: null\n },\n headerHtml: {\n type: String\n // default: null\n },\n headerClass: {\n type: [String, Object, Array]\n // default: null\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BCardHeader = /*#__PURE__*/ Vue.extend({\n name: 'BCardHeader',\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 { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { htmlOrText } from '../../utils/html'\nimport { copyProps, prefixPropName } from '../../utils/props'\nimport cardMixin from '../../mixins/card'\n\n// --- Props ---\n\nexport const props = {\n ...copyProps(cardMixin.props, prefixPropName.bind(null, 'footer')),\n footer: {\n type: String\n // default: null\n },\n footerHtml: {\n type: String\n // default: null\n },\n footerClass: {\n type: [String, Object, Array]\n // default: null\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BCardFooter = /*#__PURE__*/ Vue.extend({\n name: 'BCardFooter',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n src: {\n type: String,\n required: true\n },\n alt: {\n type: String,\n default: null\n },\n top: {\n type: Boolean,\n default: false\n },\n bottom: {\n type: Boolean,\n default: false\n },\n start: {\n type: Boolean,\n default: false\n },\n left: {\n // alias of 'start'\n type: Boolean,\n default: false\n },\n end: {\n type: Boolean,\n default: false\n },\n right: {\n // alias of 'end'\n type: Boolean,\n default: false\n },\n height: {\n type: [Number, String]\n // default: null\n },\n width: {\n type: [Number, String]\n // default: null\n }\n}\n\n// @vue/component\nexport const BCardImg = /*#__PURE__*/ Vue.extend({\n name: 'BCardImg',\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 'img',\n mergeData(data, {\n class: [baseClass],\n attrs: {\n src: props.src || null,\n alt: props.alt,\n height: props.height || null,\n width: props.width || null\n }\n })\n )\n }\n})\n","import { mergeData } from 'vue-functional-data-merge'\nimport Vue from '../../utils/vue'\nimport { htmlOrText } from '../../utils/html'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport { copyProps, pluckProps, prefixPropName, unprefixPropName } from '../../utils/props'\nimport cardMixin from '../../mixins/card'\nimport { BCardBody, props as bodyProps } from './card-body'\nimport { BCardHeader, props as headerProps } from './card-header'\nimport { BCardFooter, props as footerProps } from './card-footer'\nimport { BCardImg, props as imgProps } from './card-img'\n\nconst cardImgProps = copyProps(imgProps, prefixPropName.bind(null, 'img'))\ncardImgProps.imgSrc.required = false\n\nexport const props = {\n ...bodyProps,\n ...headerProps,\n ...footerProps,\n ...cardImgProps,\n ...copyProps(cardMixin.props),\n align: {\n type: String\n // default: null\n },\n noBody: {\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BCard = /*#__PURE__*/ Vue.extend({\n name: 'BCard',\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const {\n imgLeft,\n imgRight,\n imgStart,\n imgEnd,\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 (props.imgSrc) {\n const $img = h(BCardImg, {\n props: pluckProps(cardImgProps, props, unprefixPropName.bind(null, 'img'))\n })\n\n if (props.imgBottom) {\n $imgLast = $img\n } else {\n $imgFirst = $img\n }\n }\n\n let $header = h()\n const hasHeaderSlot = hasNormalizedSlot('header', $scopedSlots, $slots)\n if (hasHeaderSlot || header || headerHtml) {\n $header = h(\n BCardHeader,\n {\n props: pluckProps(headerProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(headerHtml, header)\n },\n normalizeSlot('header', slotScope, $scopedSlots, $slots)\n )\n }\n\n let $content = normalizeSlot('default', slotScope, $scopedSlots, $slots)\n\n // Wrap content in when `noBody` prop set\n if (!props.noBody) {\n $content = h(BCardBody, { props: pluckProps(bodyProps, props) }, $content)\n }\n\n let $footer = h()\n const hasFooterSlot = hasNormalizedSlot('footer', $scopedSlots, $slots)\n if (hasFooterSlot || footer || footerHtml) {\n $footer = h(\n BCardFooter,\n {\n props: pluckProps(footerProps, props),\n domProps: hasHeaderSlot ? {} : htmlOrText(footerHtml, footer)\n },\n normalizeSlot('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 looseEqual from '../../utils/loose-equal'\nimport { requestAF } from '../../utils/dom'\nimport { isFunction } from '../../utils/inspect'\nimport { clone, keys } from '../../utils/object'\n\nconst OBSERVER_PROP_NAME = '__bv__visibility_observer'\n\nconst RX_ONLY_DIGITS = /^\\d+$/\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) /* istanbul ignore next: IntersectionObserver not supported in JSDOM */ {\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_ONLY_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 '../../utils/vue'\nimport identity from '../../utils/identity'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { isString } from '../../utils/inspect'\nimport { toInteger } from '../../utils/number'\nimport { toString } from '../../utils/string'\nimport { mergeData } from 'vue-functional-data-merge'\n\n// --- Constants --\n\nconst NAME = 'BImg'\n\n// Blank image with fill template\nconst BLANK_TEMPLATE =\n '' +\n '' +\n ''\n\nexport const props = {\n src: {\n type: String\n // default: null\n },\n srcset: {\n type: [String, Array]\n // default: null\n },\n sizes: {\n type: [String, Array]\n // default: null\n },\n alt: {\n type: String,\n default: null\n },\n width: {\n type: [Number, String]\n // default: null\n },\n height: {\n type: [Number, String]\n // default: null\n },\n block: {\n type: Boolean,\n default: false\n },\n fluid: {\n type: Boolean,\n default: false\n },\n fluidGrow: {\n // Gives fluid images class `w-100` to make them grow to fit container\n type: Boolean,\n default: false\n },\n rounded: {\n // rounded can be:\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 type: [Boolean, String],\n default: false\n },\n thumbnail: {\n type: Boolean,\n default: false\n },\n left: {\n type: Boolean,\n default: false\n },\n right: {\n type: Boolean,\n default: false\n },\n center: {\n type: Boolean,\n default: false\n },\n blank: {\n type: Boolean,\n default: false\n },\n blankColor: {\n type: String,\n default: () => getComponentConfig(NAME, 'blankColor')\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// @vue/component\nexport const BImg = /*#__PURE__*/ Vue.extend({\n name: NAME,\n functional: true,\n props,\n render(h, { props, data }) {\n let src = props.src\n let width = toInteger(props.width) || null\n let height = toInteger(props.height) || null\n let align = null\n let block = props.block\n let srcset = concat(props.srcset)\n .filter(identity)\n .join(',')\n let sizes = concat(props.sizes)\n .filter(identity)\n .join(',')\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 return h(\n 'img',\n mergeData(data, {\n attrs: {\n src: src,\n alt: props.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 || props.fluidGrow,\n 'w-100': props.fluidGrow,\n rounded: props.rounded === '' || props.rounded === true,\n [`rounded-${props.rounded}`]: isString(props.rounded) && props.rounded !== '',\n [align]: align,\n 'd-block': block\n }\n })\n )\n }\n})\n","import Vue from '../../utils/vue'\nimport identity from '../../utils/identity'\nimport { concat } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { hasIntersectionObserverSupport } from '../../utils/env'\nimport { toInteger } from '../../utils/number'\nimport { VBVisible } from '../../directives/visible/visible'\nimport { BImg } from './img'\n\nconst NAME = 'BImgLazy'\n\nexport const props = {\n src: {\n type: String,\n required: true\n },\n srcset: {\n type: [String, Array]\n // default: null\n },\n sizes: {\n type: [String, Array]\n // default: null\n },\n alt: {\n type: String\n // default: null\n },\n width: {\n type: [Number, String]\n // default: null\n },\n height: {\n type: [Number, String]\n // default: null\n },\n blankSrc: {\n // If null, a blank image is generated\n type: String,\n default: null\n },\n blankColor: {\n type: String,\n default: () => getComponentConfig(NAME, 'blankColor')\n },\n blankWidth: {\n type: [Number, String]\n // default: null\n },\n blankHeight: {\n type: [Number, String]\n // default: null\n },\n show: {\n type: Boolean,\n default: false\n },\n fluid: {\n type: Boolean,\n default: false\n },\n fluidGrow: {\n type: Boolean,\n default: false\n },\n block: {\n type: Boolean,\n default: false\n },\n thumbnail: {\n type: Boolean,\n default: false\n },\n rounded: {\n type: [Boolean, String],\n default: false\n },\n left: {\n type: Boolean,\n default: false\n },\n right: {\n type: Boolean,\n default: false\n },\n center: {\n type: Boolean,\n default: false\n },\n offset: {\n // Distance away from viewport (in pixels) before being\n // considered \"visible\"\n type: [Number, String],\n default: 360\n }\n}\n\n// @vue/component\nexport const BImgLazy = /*#__PURE__*/ Vue.extend({\n name: NAME,\n directives: {\n bVisible: VBVisible\n },\n props,\n data() {\n return {\n isShown: this.show\n }\n },\n computed: {\n computedSrc() {\n return !this.blankSrc || this.isShown ? this.src : this.blankSrc\n },\n computedBlank() {\n return !(this.isShown || this.blankSrc)\n },\n computedWidth() {\n return this.isShown ? this.width : this.blankWidth || this.width\n },\n computedHeight() {\n return this.isShown ? this.height : this.blankHeight || this.height\n },\n computedSrcset() {\n const srcset = concat(this.srcset)\n .filter(identity)\n .join(',')\n return !this.blankSrc || this.isShown ? srcset : null\n },\n computedSizes() {\n const sizes = concat(this.sizes)\n .filter(identity)\n .join(',')\n return !this.blankSrc || this.isShown ? sizes : null\n }\n },\n watch: {\n show(newVal, oldVal) {\n if (newVal !== oldVal) {\n // If IntersectionObserver support is not available, image is always shown\n const visible = hasIntersectionObserverSupport ? newVal : true\n this.isShown = visible\n if (visible !== newVal) {\n // Ensure the show prop is synced (when no IntersectionObserver)\n this.$nextTick(this.updateShowProp)\n }\n }\n },\n isShown(newVal, oldVal) {\n if (newVal !== oldVal) {\n // Update synched show prop\n this.updateShowProp()\n }\n }\n },\n mounted() {\n // If IntersectionObserver is not available, image is always shown\n this.isShown = hasIntersectionObserverSupport ? this.show : true\n },\n methods: {\n updateShowProp() {\n this.$emit('update: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 alt: this.alt,\n blankColor: this.blankColor,\n fluid: this.fluid,\n fluidGrow: this.fluidGrow,\n block: this.block,\n thumbnail: this.thumbnail,\n rounded: this.rounded,\n left: this.left,\n right: this.right,\n center: this.center\n }\n })\n }\n})\n","import Vue from '../../utils/vue'\nimport { omit } from '../../utils/object'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { BImgLazy, props as imgLazyProps } from '../image/img-lazy'\n\n// Copy of `` props, and remove conflicting/non-applicable props\n// The `omit()` util creates a new object, so we can just pass the original props\nconst lazyProps = omit(imgLazyProps, [\n 'left',\n 'right',\n 'center',\n 'block',\n 'rounded',\n 'thumbnail',\n 'fluid',\n 'fluidGrow'\n])\n\nexport const props = {\n ...lazyProps,\n top: {\n type: Boolean,\n default: false\n },\n bottom: {\n type: Boolean,\n default: false\n },\n start: {\n type: Boolean,\n default: false\n },\n left: {\n // alias of 'start'\n type: Boolean,\n default: false\n },\n end: {\n type: Boolean,\n default: false\n },\n right: {\n // alias of 'end'\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BCardImgLazy = /*#__PURE__*/ Vue.extend({\n name: 'BCardImgLazy',\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 // False out the left/center/right props before passing to b-img-lazy\n const lazyProps = { ...props, left: false, right: false, center: false }\n return h(\n BImgLazy,\n mergeData(data, {\n class: [baseClass],\n props: lazyProps\n })\n )\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n textTag: {\n type: String,\n default: 'p'\n }\n}\n\n// @vue/component\nexport const BCardText = /*#__PURE__*/ Vue.extend({\n name: 'BCardText',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n tag: {\n type: String,\n default: 'div'\n },\n deck: {\n type: Boolean,\n default: false\n },\n columns: {\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BCardGroup = /*#__PURE__*/ Vue.extend({\n name: 'BCardGroup',\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","const noop = () => {}\n\nexport default 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 */\nconst 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\nexport default observeDom\n","import { hasPassiveEventSupport } from './env'\nimport { isObject } from './inspect'\n\n// --- Constants ---\n\nexport const EVENT_OPTIONS_PASSIVE = { passive: true }\nexport const EVENT_OPTIONS_NO_CAPTURE = { passive: true, capture: false }\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 (hasPassiveEventSupport) {\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, evtName, handler, options) => {\n if (el && el.addEventListener) {\n el.addEventListener(evtName, handler, parseEventOptions(options))\n }\n}\n\n// Remove an event listener from an element\nexport const eventOff = (el, evtName, handler, options) => {\n if (el && el.removeEventListener) {\n el.removeEventListener(evtName, 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","import Vue from '../../utils/vue'\nimport KeyCodes from '../../utils/key-codes'\nimport noop from '../../utils/noop'\nimport observeDom from '../../utils/observe-dom'\nimport { getComponentConfig } from '../../utils/config'\nimport {\n addClass,\n getActiveElement,\n reflow,\n removeClass,\n selectAll,\n setAttr\n} from '../../utils/dom'\nimport { isBrowser, hasTouchSupport, hasPointerEventSupport } from '../../utils/env'\nimport { EVENT_OPTIONS_NO_CAPTURE, eventOn, eventOff } from '../../utils/events'\nimport { isUndefined } from '../../utils/inspect'\nimport { mathAbs, mathFloor, mathMax, mathMin } from '../../utils/math'\nimport { toInteger } from '../../utils/number'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nconst NAME = 'BCarousel'\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// 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// @vue/component\nexport const BCarousel = /*#__PURE__*/ Vue.extend({\n name: NAME,\n mixins: [idMixin, normalizeSlotMixin],\n provide() {\n return { bvCarousel: this }\n },\n model: {\n prop: 'value',\n event: 'input'\n },\n props: {\n labelPrev: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelPrev')\n },\n labelNext: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelNext')\n },\n labelGotoSlide: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelGotoSlide')\n },\n labelIndicators: {\n type: String,\n default: () => getComponentConfig(NAME, 'labelIndicators')\n },\n interval: {\n type: Number,\n default: 5000\n },\n indicators: {\n type: Boolean,\n default: false\n },\n controls: {\n type: Boolean,\n default: false\n },\n noAnimation: {\n // Disable slide/fade animation\n type: Boolean,\n default: false\n },\n fade: {\n // Enable cross-fade animation instead of slide animation\n type: Boolean,\n default: false\n },\n noWrap: {\n // Disable wrapping/looping when start/end is reached\n type: Boolean,\n default: false\n },\n noTouch: {\n // Sniffed by carousel-slide\n type: Boolean,\n default: false\n },\n noHoverPause: {\n // Disable pause on hover\n type: Boolean,\n default: false\n },\n imgWidth: {\n // Sniffed by carousel-slide\n type: [Number, String]\n // default: undefined\n },\n imgHeight: {\n // Sniffed by carousel-slide\n type: [Number, String]\n // default: undefined\n },\n background: {\n type: String\n // default: undefined\n },\n value: {\n type: Number,\n default: 0\n }\n },\n data() {\n return {\n index: this.value || 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 value(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.setSlide(toInteger(newVal, 0))\n }\n },\n interval(newVal, oldVal) {\n if (newVal === oldVal) {\n /* istanbul ignore next */\n return\n }\n if (!newVal) {\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(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.$emit(newVal ? 'paused' : 'unpaused')\n }\n },\n index(to, from) {\n if (to === from || this.isSliding) {\n /* istanbul ignore next */\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 (isBrowser && 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('sliding-end', () => this.setSlide(slide, direction))\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.value) {\n this.$emit('input', 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(evt) {\n if (!evt) {\n this.isPaused = true\n }\n this.clearInterval()\n },\n // Start auto rotate slides\n start(evt) {\n if (!evt) {\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() /* istanbul ignore next: difficult to test */ {\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('sliding-start', to)\n // Update v-model\n this.$emit('input', 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('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(evt => eventOff(nextSlide, evt, onceTransEnd, EVENT_OPTIONS_NO_CAPTURE))\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('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(evt, fn) {\n const keyCode = evt.keyCode\n if (evt.type === 'click' || keyCode === KeyCodes.SPACE || keyCode === KeyCodes.ENTER) {\n evt.preventDefault()\n evt.stopPropagation()\n fn()\n }\n },\n /* istanbul ignore next */\n handleSwipe() /* istanbul ignore next: JSDOM doesn't support touch events */ {\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 */\n touchStart(evt) /* istanbul ignore next: JSDOM doesn't support touch events */ {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchStartX = evt.clientX\n } else if (!hasPointerEventSupport) {\n this.touchStartX = evt.touches[0].clientX\n }\n },\n /* istanbul ignore next */\n touchMove(evt) /* istanbul ignore next: JSDOM doesn't support touch events */ {\n // Ensure swiping with one touch and not pinching\n if (evt.touches && evt.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = evt.touches[0].clientX - this.touchStartX\n }\n },\n /* istanbul ignore next */\n touchEnd(evt) /* istanbul ignore next: JSDOM doesn't support touch events */ {\n if (hasPointerEventSupport && PointerType[evt.pointerType.toUpperCase()]) {\n this.touchDeltaX = evt.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 // Wrapper for slides\n const inner = h(\n 'div',\n {\n ref: 'inner',\n class: ['carousel-inner'],\n attrs: {\n id: this.safeId('__BV_inner_'),\n role: 'list'\n }\n },\n [this.normalizeSlot('default')]\n )\n\n // Prev and next controls\n let controls = h()\n if (this.controls) {\n const prevHandler = evt => {\n /* istanbul ignore next */\n if (!this.isSliding) {\n this.handleClick(evt, this.prev)\n } else {\n evt.preventDefault()\n }\n }\n const nextHandler = evt => {\n /* istanbul ignore next */\n if (!this.isSliding) {\n this.handleClick(evt, this.next)\n } else {\n evt.preventDefault()\n }\n }\n controls = [\n h(\n 'a',\n {\n class: ['carousel-control-prev'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: prevHandler,\n keydown: prevHandler\n }\n },\n [\n h('span', { class: ['carousel-control-prev-icon'], attrs: { 'aria-hidden': 'true' } }),\n h('span', { class: ['sr-only'] }, [this.labelPrev])\n ]\n ),\n h(\n 'a',\n {\n class: ['carousel-control-next'],\n attrs: {\n href: '#',\n role: 'button',\n 'aria-controls': this.safeId('__BV_inner_'),\n 'aria-disabled': this.isSliding ? 'true' : null\n },\n on: {\n click: nextHandler,\n keydown: nextHandler\n }\n },\n [\n h('span', { class: ['carousel-control-next-icon'], attrs: { 'aria-hidden': 'true' } }),\n h('span', { class: ['sr-only'] }, [this.labelNext])\n ]\n )\n ]\n }\n\n // Indicators\n const indicators = h(\n 'ol',\n {\n class: ['carousel-indicators'],\n directives: [\n { name: 'show', rawName: 'v-show', value: this.indicators, expression: 'indicators' }\n ],\n attrs: {\n id: this.safeId('__BV_indicators_'),\n 'aria-hidden': this.indicators ? 'false' : 'true',\n 'aria-label': this.labelIndicators,\n 'aria-owns': this.safeId('__BV_inner_')\n }\n },\n this.slides.map((slide, n) => {\n return h('li', {\n key: `slide_${n}`,\n class: { active: n === this.index },\n attrs: {\n role: 'button',\n id: this.safeId(`__BV_indicator_${n + 1}_`),\n tabindex: this.indicators ? '0' : '-1',\n 'aria-current': n === this.index ? 'true' : 'false',\n 'aria-label': `${this.labelGotoSlide} ${n + 1}`,\n 'aria-describedby': this.slides[n].id || null,\n 'aria-controls': this.safeId('__BV_inner_')\n },\n on: {\n click: evt => {\n this.handleClick(evt, () => {\n this.setSlide(n)\n })\n },\n keydown: evt => {\n this.handleClick(evt, () => {\n this.setSlide(n)\n })\n }\n }\n })\n })\n )\n\n const on = {\n mouseenter: this.noHoverPause ? noop : this.pause,\n mouseleave: this.noHoverPause ? noop : this.restart,\n focusin: this.pause,\n focusout: this.restart,\n keydown: evt => {\n if (/input|textarea/i.test(evt.target.tagName)) {\n /* istanbul ignore next */\n return\n }\n const keyCode = evt.keyCode\n if (keyCode === KeyCodes.LEFT || keyCode === KeyCodes.RIGHT) {\n evt.preventDefault()\n evt.stopPropagation()\n this[keyCode === KeyCodes.LEFT ? 'prev' : 'next']()\n }\n }\n }\n // Touch support event handlers for environment\n if (!this.noTouch && hasTouchSupport) {\n // Attach appropriate listeners (prepend event name with '&' for passive mode)\n /* istanbul ignore next: JSDOM doesn't support touch events */\n if (hasPointerEventSupport) {\n on['&pointerdown'] = this.touchStart\n on['&pointerup'] = this.touchEnd\n } else {\n on['&touchstart'] = this.touchStart\n on['&touchmove'] = this.touchMove\n on['&touchend'] = this.touchEnd\n }\n }\n\n // Return the carousel\n return h(\n 'div',\n {\n staticClass: 'carousel',\n class: {\n slide: !this.noAnimation,\n 'carousel-fade': !this.noAnimation && this.fade,\n 'pointer-event': !this.noTouch && hasTouchSupport && hasPointerEventSupport\n },\n style: { background: this.background },\n attrs: {\n role: 'region',\n id: this.safeId(),\n 'aria-busy': this.isSliding ? 'true' : 'false'\n },\n on\n },\n [inner, controls, indicators]\n )\n }\n})\n","import Vue from '../../utils/vue'\nimport { hasTouchSupport } from '../../utils/env'\nimport { htmlOrText } from '../../utils/html'\nimport { pluckProps, unprefixPropName } from '../../utils/props'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BImg } from '../image/img'\n\n// --- Props ---\n\nconst imgProps = {\n imgSrc: {\n type: String\n // default: undefined\n },\n imgAlt: {\n type: String\n // default: undefined\n },\n imgWidth: {\n type: [Number, String]\n // default: undefined\n },\n imgHeight: {\n type: [Number, String]\n // default: undefined\n },\n imgBlank: {\n type: Boolean,\n default: false\n },\n imgBlankColor: {\n type: String,\n default: 'transparent'\n }\n}\n\nexport const props = {\n ...imgProps,\n contentVisibleUp: {\n type: String\n },\n contentTag: {\n type: String,\n default: 'div'\n },\n caption: {\n type: String\n },\n captionHtml: {\n type: String\n },\n captionTag: {\n type: String,\n default: 'h3'\n },\n text: {\n type: String\n },\n textHtml: {\n type: String\n },\n textTag: {\n type: String,\n default: 'p'\n },\n background: {\n type: String\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BCarouselSlide = /*#__PURE__*/ Vue.extend({\n name: 'BCarouselSlide',\n mixins: [idMixin, normalizeSlotMixin],\n inject: {\n bvCarousel: {\n default() {\n return {\n // Explicitly disable touch if not a child of carousel\n noTouch: true\n }\n }\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('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 && hasTouchSupport) {\n on.dragstart = evt => {\n evt.preventDefault()\n }\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('default') || false\n ]\n\n let $content = h()\n if ($contentChildren.some(Boolean)) {\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","// 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 from './vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { getBCR, reflow, requestAF } from './dom'\n\n// Transition event handler helpers\nconst onEnter = el => {\n el.style.height = 0\n // Animaton frame delay needed for `appear` to work\n requestAF(() => {\n reflow(el)\n el.style.height = `${el.scrollHeight}px`\n })\n}\n\nconst onAfterEnter = el => {\n el.style.height = null\n}\n\nconst onLeave = el => {\n el.style.height = 'auto'\n el.style.display = 'block'\n el.style.height = `${getBCR(el).height}px`\n reflow(el)\n el.style.height = 0\n}\n\nconst onAfterLeave = el => {\n el.style.height = null\n}\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// @vue/component\nexport const BVCollapse = /*#__PURE__*/ Vue.extend({\n name: 'BVCollapse',\n functional: true,\n props: {\n appear: {\n // If `true` (and `visible` is `true` on mount), animate initially visible\n type: Boolean,\n default: false\n }\n },\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","// @vue/component\nexport default {\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:beforeDestroy', () => {\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:beforeDestroy', () => {\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 KeyCodes from '../../utils/key-codes'\nimport looseEqual from '../../utils/loose-equal'\nimport { arrayIncludes, concat } from '../../utils/array'\nimport {\n addClass,\n getAttr,\n hasAttr,\n isDisabled,\n isTag,\n removeAttr,\n removeClass,\n setAttr\n} from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { eventOn, eventOff } from '../../utils/events'\nimport { isString } from '../../utils/inspect'\nimport { keys } from '../../utils/object'\n\n// --- Constants ---\n\nconst { ENTER, SPACE } = KeyCodes\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// Emitted control event for collapse (emitted to collapse)\nexport const EVENT_TOGGLE = 'bv::toggle::collapse'\n\n// Listen to event for toggle state update (emitted by collapse)\nexport const EVENT_STATE = 'bv::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\nexport const EVENT_STATE_SYNC = 'bv::collapse::sync::state'\n// Private event we send to collapse to request state update sync event\nexport const EVENT_STATE_REQUEST = 'bv::request::collapse::state'\n\nconst KEYDOWN_KEY_CODES = [ENTER, SPACE]\n\nconst RX_HASH = /^#/\nconst RX_HASH_ID = /^#[A-Za-z]+[\\w\\-:.]*$/\nconst RX_SPLIT_SEPARATOR = /\\s+/\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_SPLIT_SEPARATOR) : 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)\n eventOff(el, 'keydown', handler)\n }\n el[BV_TOGGLE_CLICK_HANDLER] = null\n}\n\nconst addClickListener = (el, vnode) => {\n removeClickListener(el)\n if (vnode.context) {\n const handler = evt => {\n if (\n !(evt.type === 'keydown' && !arrayIncludes(KEYDOWN_KEY_CODES, evt.keyCode)) &&\n !isDisabled(el)\n ) {\n const targets = el[BV_TOGGLE_TARGETS] || []\n targets.forEach(target => {\n vnode.context.$root.$emit(EVENT_TOGGLE, target)\n })\n }\n }\n el[BV_TOGGLE_CLICK_HANDLER] = handler\n eventOn(el, 'click', handler)\n if (isNonStandardTag(el)) {\n eventOn(el, 'keydown', handler)\n }\n }\n}\n\nconst removeRootListeners = (el, vnode) => {\n if (el[BV_TOGGLE_ROOT_HANDLER] && vnode.context) {\n vnode.context.$root.$off([EVENT_STATE, EVENT_STATE_SYNC], el[BV_TOGGLE_ROOT_HANDLER])\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([EVENT_STATE, EVENT_STATE_SYNC], 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 (!isBrowser || !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 /* istanbul ignore else */\n // Ensure the `aria-controls` hasn't been overwritten\n // or removed when vnode updates\n if (targets.length) {\n setAttr(el, ATTR_ARIA_CONTROLS, targets.join(' '))\n } else {\n removeAttr(el, ATTR_ARIA_CONTROLS)\n }\n\n // Add/Update our click listener(s)\n addClickListener(el, vnode)\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(EVENT_STATE_REQUEST, 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\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 }\n}\n","import Vue from '../../utils/vue'\nimport { BVCollapse } from '../../utils/bv-collapse'\nimport { addClass, hasClass, removeClass, closest, matches, getCS } from '../../utils/dom'\nimport { isBrowser } from '../../utils/env'\nimport { EVENT_OPTIONS_NO_CAPTURE, eventOnOff } from '../../utils/events'\nimport idMixin from '../../mixins/id'\nimport listenOnRootMixin from '../../mixins/listen-on-root'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport {\n EVENT_TOGGLE,\n EVENT_STATE,\n EVENT_STATE_REQUEST,\n EVENT_STATE_SYNC\n} from '../../directives/toggle/toggle'\n\n// --- Constants ---\n\n// Accordion event name we emit on `$root`\nconst EVENT_ACCORDION = 'bv::collapse::accordion'\n\n// --- Main component ---\n// @vue/component\nexport const BCollapse = /*#__PURE__*/ Vue.extend({\n name: 'BCollapse',\n mixins: [idMixin, listenOnRootMixin, normalizeSlotMixin],\n model: {\n prop: 'visible',\n event: 'input'\n },\n props: {\n isNav: {\n type: Boolean,\n default: false\n },\n accordion: {\n type: String\n // default: null\n },\n visible: {\n type: Boolean,\n default: false\n },\n tag: {\n type: String,\n default: 'div'\n },\n appear: {\n // If `true` (and `visible` is `true` on mount), animate initially visible\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n show: this.visible,\n transitioning: false\n }\n },\n computed: {\n classObject() {\n return {\n 'navbar-collapse': this.isNav,\n collapse: !this.transitioning,\n show: this.show && !this.transitioning\n }\n }\n },\n watch: {\n visible(newVal) {\n if (newVal !== this.show) {\n this.show = newVal\n }\n },\n show(newVal, oldVal) {\n if (newVal !== oldVal) {\n this.emitState()\n }\n }\n },\n created() {\n this.show = this.visible\n },\n mounted() {\n this.show = this.visible\n // Listen for toggle events to open/close us\n this.listenOnRoot(EVENT_TOGGLE, this.handleToggleEvt)\n // Listen to other collapses for accordion events\n this.listenOnRoot(EVENT_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(EVENT_STATE_REQUEST, 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() /* istanbul ignore next */ {\n if (this.isNav) {\n this.setWindowEvents(false)\n }\n },\n /* istanbul ignore next */\n activated() /* istanbul ignore next */ {\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 && isBrowser) {\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('show')\n },\n onAfterEnter() {\n this.transitioning = false\n this.$emit('shown')\n },\n onLeave() {\n this.transitioning = true\n // This should be moved out so we can add cancellable events\n this.$emit('hide')\n },\n onAfterLeave() {\n this.transitioning = false\n this.$emit('hidden')\n },\n emitState() {\n this.$emit('input', this.show)\n // Let `v-b-toggle` know the state of this collapse\n this.emitOnRoot(EVENT_STATE, this.safeId(), this.show)\n if (this.accordion && this.show) {\n // Tell the other collapses in this accordion to close\n this.emitOnRoot(EVENT_ACCORDION, this.safeId(), this.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(EVENT_STATE_SYNC, 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 restore = hasClass(this.$el, 'show')\n removeClass(this.$el, 'show')\n const isBlock = getCS(this.$el).display === 'block'\n if (restore) {\n addClass(this.$el, 'show')\n }\n return isBlock\n },\n clickHandler(evt) {\n // If we are in a nav/navbar, close the collapse when non-disabled link clicked\n const el = evt.target\n if (!this.isNav || !el || getCS(this.$el).display !== 'block') {\n /* istanbul ignore next: can't test getComputedStyle in JSDOM */\n return\n }\n if (matches(el, '.nav-link,.dropdown-item') || closest('.nav-link,.dropdown-item', el)) {\n if (!this.checkDisplayBlock()) {\n // Only close the collapse if it is not forced to be `display: block !important`\n this.show = false\n }\n }\n },\n handleToggleEvt(target) {\n if (target !== this.safeId()) {\n return\n }\n this.toggle()\n },\n handleAccordionEvt(openedId, accordion) {\n if (!this.accordion || accordion !== this.accordion) {\n return\n }\n if (openedId === this.safeId()) {\n // Open this collapse if not shown\n if (!this.show) {\n this.toggle()\n }\n } else {\n // Close this collapse if shown\n if (this.show) {\n this.toggle()\n }\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 scope = {\n visible: this.show,\n close: () => (this.show = false)\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('default', scope)]\n )\n return h(\n BVCollapse,\n {\n props: { appear: this.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 { 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","import { assign, defineProperty, defineProperties, readonlyDescriptor } from './object'\n\nclass 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\n// Named Exports\nexport { BvEvent }\n","import { contains } from '../utils/dom'\nimport { EVENT_OPTIONS_NO_CAPTURE, eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport default {\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() /* istanbul ignore next */ {\n eventOff(\n this.clickOutElement,\n this.clickOutEventName,\n this._clickOutHandler,\n EVENT_OPTIONS_NO_CAPTURE\n )\n },\n methods: {\n isClickOut(evt) {\n return !contains(this.$el, evt.target)\n },\n _clickOutHandler(evt) {\n if (this.clickOutHandler && this.isClickOut(evt)) {\n this.clickOutHandler(evt)\n }\n }\n }\n}\n","import { EVENT_OPTIONS_NO_CAPTURE, eventOn, eventOff } from '../utils/events'\n\n// @vue/component\nexport default {\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() /* istanbul ignore next */ {\n eventOff(this.focusInElement, 'focusin', this._focusInHandler, EVENT_OPTIONS_NO_CAPTURE)\n },\n methods: {\n _focusInHandler(evt) {\n if (this.focusInHandler) {\n this.focusInHandler(evt)\n }\n }\n }\n}\n","import Popper from 'popper.js'\nimport KeyCodes from '../utils/key-codes'\nimport { BvEvent } from '../utils/bv-event.class'\nimport { attemptFocus, closest, contains, isVisible, requestAF, selectAll } from '../utils/dom'\nimport { isNull } from '../utils/inspect'\nimport { HTMLElement } from '../utils/safe-types'\nimport { warn } from '../utils/warn'\nimport clickOutMixin from './click-out'\nimport focusInMixin from './focus-in'\nimport idMixin from './id'\n\n// Return an array of visible items\nconst filterVisibles = els => (els || []).filter(isVisible)\n\n// Root dropdown event names\nconst ROOT_DROPDOWN_PREFIX = 'bv::dropdown::'\nconst ROOT_DROPDOWN_SHOWN = `${ROOT_DROPDOWN_PREFIX}shown`\nconst ROOT_DROPDOWN_HIDDEN = `${ROOT_DROPDOWN_PREFIX}hidden`\n\n// Dropdown item CSS selectors\nconst Selector = {\n FORM_CHILD: '.dropdown form',\n ITEM_SELECTOR: ['.dropdown-item', '.b-dropdown-form']\n .map(selector => `${selector}:not(.disabled):not([disabled])`)\n .join(', ')\n}\n\n// Popper attachment positions\nconst AttachmentMap = {\n // Dropup left align\n TOP: 'top-start',\n // Dropup right align\n TOPEND: 'top-end',\n // Dropdown left align\n BOTTOM: 'bottom-start',\n // Dropdown right align\n BOTTOMEND: 'bottom-end',\n // Dropright left align\n RIGHT: 'right-start',\n // Dropright right align\n RIGHTEND: 'right-end',\n // Dropleft left align\n LEFT: 'left-start',\n // Dropleft right align\n LEFTEND: 'left-end'\n}\n\nexport const commonProps = {\n dropup: {\n // place on top if possible\n type: Boolean,\n default: false\n },\n dropright: {\n // place right if possible\n type: Boolean,\n default: false\n },\n dropleft: {\n // place left if possible\n type: Boolean,\n default: false\n },\n right: {\n // Right align menu (default is left align)\n type: Boolean,\n default: false\n },\n offset: {\n // Number of pixels to offset menu, or a CSS unit value (i.e. 1px, 1rem, etc)\n type: [Number, String],\n default: 0\n },\n noFlip: {\n // Disable auto-flipping of menu from bottom<=>top\n type: Boolean,\n default: false\n },\n popperOpts: {\n // type: Object,\n default: () => {}\n },\n boundary: {\n // String: `scrollParent`, `window` or `viewport`\n // HTMLElement: HTML Element reference\n type: [String, HTMLElement],\n default: 'scrollParent'\n }\n}\n\n// @vue/component\nexport default {\n mixins: [idMixin, clickOutMixin, focusInMixin],\n provide() {\n return { bvDropdown: this }\n },\n inject: {\n bvNavbar: { default: null }\n },\n props: {\n disabled: {\n type: Boolean,\n default: false\n },\n ...commonProps\n },\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.toggle\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 },\n watch: {\n visible(newValue, oldValue) {\n if (this.visibleChangePrevented) {\n this.visibleChangePrevented = false\n return\n }\n\n if (newValue !== oldValue) {\n const evtName = newValue ? 'show' : 'hide'\n const bvEvt = new BvEvent(evtName, {\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(bvEvt)\n if (bvEvt.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('hidden', this.focusToggler)\n return\n }\n if (evtName === 'show') {\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 },\n /* istanbul ignore next */\n deactivated() /* istanbul ignore next: not easy to test */ {\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 },\n methods: {\n // Event emitter\n emitEvent(bvEvt) {\n const { type } = bvEvt\n this.$emit(type, bvEvt)\n this.$root.$emit(`${ROOT_DROPDOWN_PREFIX}${type}`, bvEvt)\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', 'BDropdown')\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.$root.$emit(ROOT_DROPDOWN_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('shown')\n })\n },\n hideMenu() {\n this.whileOpenListen(false)\n this.$root.$emit(ROOT_DROPDOWN_HIDDEN, this)\n this.$emit('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() /* istanbul ignore next: not easy to test */ {\n try {\n this.$_popper.scheduleUpdate()\n } catch {}\n },\n getPopperConfig() {\n let placement = AttachmentMap.BOTTOM\n if (this.dropup) {\n placement = this.right ? AttachmentMap.TOPEND : AttachmentMap.TOP\n } else if (this.dropright) {\n placement = AttachmentMap.RIGHT\n } else if (this.dropleft) {\n placement = AttachmentMap.LEFT\n } else if (this.right) {\n placement = AttachmentMap.BOTTOMEND\n }\n const popperConfig = {\n placement,\n modifiers: {\n offset: { offset: this.offset || 0 },\n flip: { enabled: !this.noFlip }\n }\n }\n if (this.boundary) {\n popperConfig.modifiers.preventOverflow = { boundariesElement: this.boundary }\n }\n return { ...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_DROPDOWN_SHOWN, this.rootCloseListener)\n },\n rootCloseListener(vm) {\n if (vm !== this) {\n this.visible = false\n }\n },\n show() {\n // Public method to show dropdown\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 hide(refocus = false) {\n // Public method to hide dropdown\n if (this.disabled) {\n /* istanbul ignore next */\n return\n }\n this.visible = false\n if (refocus) {\n // Child element is closing the dropdown on click\n this.$once('hidden', this.focusToggler)\n }\n },\n // Called only by a button that toggles the menu\n toggle(evt) {\n evt = evt || {}\n // Early exit when not a click event or ENTER, SPACE or DOWN were pressed\n const { type, keyCode } = evt\n if (\n type !== 'click' &&\n !(\n type === 'keydown' &&\n [KeyCodes.ENTER, KeyCodes.SPACE, KeyCodes.DOWN].indexOf(keyCode) !== -1\n )\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('toggle', evt)\n evt.preventDefault()\n evt.stopPropagation()\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(evt) /* istanbul ignore next */ {\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 evt.preventDefault()\n },\n // Called from dropdown menu context\n onKeydown(evt) {\n const { keyCode } = evt\n if (keyCode === KeyCodes.ESC) {\n // Close on ESC\n this.onEsc(evt)\n } else if (keyCode === KeyCodes.DOWN) {\n // Down Arrow\n this.focusNext(evt, false)\n } else if (keyCode === KeyCodes.UP) {\n // Up Arrow\n this.focusNext(evt, true)\n }\n },\n // If user presses ESC, close the menu\n onEsc(evt) {\n if (this.visible) {\n this.visible = false\n evt.preventDefault()\n evt.stopPropagation()\n // Return focus to original trigger button\n this.$once('hidden', this.focusToggler)\n }\n },\n // Called only in split button mode, for the split button\n onSplitClick(evt) {\n /* istanbul ignore next */\n if (this.disabled) {\n this.visible = false\n return\n }\n this.$emit('click', evt)\n },\n // Shared hide handler between click-out and focus-in events\n hideHandler(evt) {\n const { target } = evt\n if (this.visible && !contains(this.$refs.menu, target) && !contains(this.toggler, target)) {\n this.hide()\n }\n },\n // Document click-out listener\n clickOutHandler(evt) {\n this.hideHandler(evt)\n },\n // Document focus-in listener\n focusInHandler(evt) {\n this.hideHandler(evt)\n },\n // Keyboard nav\n focusNext(evt, up) {\n // Ignore key up/down on form elements\n const { target } = evt\n if (!this.visible || (evt && closest(Selector.FORM_CHILD, target))) {\n /* istanbul ignore next: should never happen */\n return\n }\n evt.preventDefault()\n evt.stopPropagation()\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_SELECTOR, 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 '../../utils/vue'\nimport { arrayIncludes } from '../../utils/array'\nimport { getComponentConfig } from '../../utils/config'\nimport { htmlOrText } from '../../utils/html'\nimport dropdownMixin from '../../mixins/dropdown'\nimport idMixin from '../../mixins/id'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BButton } from '../button/button'\n\n// --- Constants ---\n\nconst NAME = 'BDropdown'\n\n// --- Props ---\n\nexport const props = {\n text: {\n // Button label\n type: String,\n default: ''\n },\n html: {\n // Button label\n type: String\n // default: undefined\n },\n variant: {\n type: String,\n default: () => getComponentConfig(NAME, 'variant')\n },\n size: {\n type: String,\n default: () => getComponentConfig(NAME, 'size')\n },\n block: {\n type: Boolean,\n default: false\n },\n menuClass: {\n type: [String, Array, Object]\n // default: null\n },\n toggleTag: {\n type: String,\n default: 'button'\n },\n toggleText: {\n // This really should be toggleLabel\n type: String,\n default: () => getComponentConfig(NAME, 'toggleText')\n },\n toggleClass: {\n type: [String, Array, Object]\n // default: null\n },\n noCaret: {\n type: Boolean,\n default: false\n },\n split: {\n type: Boolean,\n default: false\n },\n splitHref: {\n type: String\n // default: undefined\n },\n splitTo: {\n type: [String, Object]\n // default: undefined\n },\n splitVariant: {\n type: String,\n default: () => getComponentConfig(NAME, 'splitVariant')\n },\n splitClass: {\n type: [String, Array, Object]\n // default: null\n },\n splitButtonType: {\n type: String,\n default: 'button',\n validator: value => arrayIncludes(['button', 'submit', 'reset'], value)\n },\n lazy: {\n // If true, only render menu contents when open\n type: Boolean,\n default: false\n },\n role: {\n type: String,\n default: 'menu'\n }\n}\n\n// --- Main component ---\n// @vue/component\nexport const BDropdown = /*#__PURE__*/ Vue.extend({\n name: NAME,\n mixins: [idMixin, dropdownMixin, normalizeSlotMixin],\n props,\n computed: {\n dropdownClasses() {\n const { block, split, boundary } = this\n return [\n this.directionClass,\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 // 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 'position-static': boundary !== 'scrollParent' || !boundary\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 { variant, size, block, disabled, split, role } = this\n const commonProps = { variant, size, block, disabled }\n\n const $buttonContent = this.normalizeSlot('button-content')\n const buttonContentProps = this.hasNormalizedSlot('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 || this.variant\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 $split = h(\n BButton,\n {\n class: this.splitClass,\n attrs: { id: this.safeId('_BV_button_') },\n props: btnProps,\n domProps: buttonContentProps,\n on: { click: this.onSplitClick },\n ref: 'button'\n },\n [$buttonContent]\n )\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': this.visible ? 'true' : 'false'\n },\n props: {\n ...commonProps,\n tag: this.toggleTag,\n block: block && !split\n },\n domProps: split ? {} : buttonContentProps,\n on: {\n mousedown: this.onMousedown,\n click: this.toggle,\n keydown: this.toggle // Handle ENTER, SPACE and DOWN\n },\n ref: 'toggle'\n },\n [split ? h('span', { class: ['sr-only'] }, [this.toggleText]) : $buttonContent]\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 || this.visible ? this.normalizeSlot('default', { hide: this.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 '../../utils/vue'\nimport { requestAF } from '../../utils/dom'\nimport { omit } from '../../utils/object'\nimport attrsMixin from '../../mixins/attrs'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\nimport { BLink, props as BLinkProps } from '../link/link'\n\nexport const props = omit(BLinkProps, ['event', 'routerTag'])\n\n// @vue/component\nexport const BDropdownItem = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownItem',\n mixins: [attrsMixin, normalizeSlotMixin],\n inheritAttrs: false,\n inject: {\n bvDropdown: {\n default: null\n }\n },\n props: {\n ...props,\n linkClass: {\n type: [String, Array, Object],\n default: null\n },\n variant: {\n type: String,\n default: null\n }\n },\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(evt) {\n this.$emit('click', evt)\n this.closeDropdown()\n }\n },\n render(h) {\n return h('li', { attrs: { role: 'presentation' } }, [\n h(\n BLink,\n {\n props: this.$props,\n staticClass: 'dropdown-item',\n class: [\n this.linkClass,\n {\n [`text-${this.variant}`]: this.variant && !(this.active || this.disabled)\n }\n ],\n attrs: this.computedAttrs,\n on: { click: this.onClick },\n ref: 'item'\n },\n this.normalizeSlot('default')\n )\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport attrsMixin from '../../mixins/attrs'\nimport normalizeSlotMixin from '../../mixins/normalize-slot'\n\nexport const props = {\n active: {\n type: Boolean,\n default: false\n },\n activeClass: {\n type: String,\n default: 'active'\n },\n buttonClass: {\n type: [String, Array, Object]\n // default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n variant: {\n type: String\n // default: null\n }\n}\n\n// @vue/component\nexport const BDropdownItemButton = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownItemButton',\n mixins: [attrsMixin, normalizeSlotMixin],\n inheritAttrs: false,\n inject: {\n bvDropdown: {\n default: null\n }\n },\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(evt) {\n this.$emit('click', evt)\n this.closeDropdown()\n }\n },\n render(h) {\n return h('li', { attrs: { role: 'presentation' } }, [\n h(\n 'button',\n {\n staticClass: 'dropdown-item',\n class: [\n this.buttonClass,\n {\n [this.activeClass]: this.active,\n [`text-${this.variant}`]: this.variant && !(this.active || this.disabled)\n }\n ],\n attrs: this.computedAttrs,\n on: { click: this.onClick },\n ref: 'button'\n },\n this.normalizeSlot('default')\n )\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n id: {\n type: String\n // default: null\n },\n tag: {\n type: String,\n default: 'header'\n },\n variant: {\n type: String\n // default: null\n }\n}\n\n// @vue/component\nexport const BDropdownHeader = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownHeader',\n functional: true,\n props,\n render(h, { props, data, children }) {\n const $attrs = data.attrs || {}\n data.attrs = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n props.tag,\n {\n staticClass: 'dropdown-header',\n class: {\n [`text-${props.variant}`]: props.variant\n },\n attrs: {\n ...$attrs,\n id: props.id || null,\n role: 'heading'\n },\n ref: 'header'\n },\n children\n )\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n tag: {\n type: String,\n default: 'hr'\n }\n}\n\n// @vue/component\nexport const BDropdownDivider = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownDivider',\n functional: true,\n props,\n render(h, { props, data }) {\n const $attrs = data.attrs || {}\n data.attrs = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(props.tag, {\n staticClass: 'dropdown-divider',\n attrs: {\n ...$attrs,\n role: 'separator',\n 'aria-orientation': 'horizontal'\n },\n ref: 'divider'\n })\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\nexport const props = {\n id: {\n type: String\n // default: null\n },\n inline: {\n type: Boolean,\n default: false\n },\n novalidate: {\n type: Boolean,\n default: false\n },\n validated: {\n type: Boolean,\n default: false\n }\n}\n\n// @vue/component\nexport const BForm = /*#__PURE__*/ Vue.extend({\n name: 'BForm',\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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { BForm, props as formProps } from '../form/form'\n\n// @vue/component\nexport const BDropdownForm = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownForm',\n functional: true,\n props: {\n ...formProps,\n disabled: {\n type: Boolean,\n default: false\n },\n formClass: {\n type: [String, Object, Array]\n // default: null\n }\n },\n render(h, { props, data, children }) {\n const $attrs = data.attrs || {}\n const $listeners = data.on || {}\n data.attrs = {}\n data.on = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n BForm,\n {\n ref: 'form',\n staticClass: 'b-dropdown-form',\n class: [props.formClass, { disabled: props.disabled }],\n props,\n attrs: {\n ...$attrs,\n disabled: props.disabled,\n // Tab index of -1 for keyboard navigation\n tabindex: props.disabled ? null : '-1'\n },\n on: $listeners\n },\n children\n )\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\n\n// @vue/component\nexport const BDropdownText = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownText',\n functional: true,\n props: {\n tag: {\n type: String,\n default: 'p'\n },\n variant: {\n type: String\n // default: null\n }\n },\n render(h, { props, data, children }) {\n const $attrs = data.attrs || {}\n data.attrs = {}\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n h(\n props.tag,\n {\n staticClass: 'b-dropdown-text',\n class: {\n [`text-${props.variant}`]: props.variant\n },\n props,\n attrs: $attrs,\n ref: 'text'\n },\n children\n )\n ])\n }\n})\n","import Vue from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { hasNormalizedSlot, normalizeSlot } from '../../utils/normalize-slot'\nimport identity from '../../utils/identity'\n\nexport const props = {\n id: {\n type: String\n // default: null\n },\n header: {\n type: String\n // default: null\n },\n headerTag: {\n type: String,\n default: 'header'\n },\n headerVariant: {\n type: String\n // default: null\n },\n headerClasses: {\n type: [String, Array, Object]\n // default: null\n },\n ariaDescribedby: {\n type: String\n // default: null\n }\n}\n\n// @vue/component\nexport const BDropdownGroup = /*#__PURE__*/ Vue.extend({\n name: 'BDropdownGroup',\n functional: true,\n props,\n render(h, { props, data, slots, scopedSlots }) {\n const $slots = slots()\n const $scopedSlots = scopedSlots || {}\n const $attrs = data.attrs || {}\n data.attrs = {}\n let header\n let headerId = null\n\n if (hasNormalizedSlot('header', $scopedSlots, $slots) || props.header) {\n headerId = props.id ? `_bv_${props.id}_group_dd_header` : null\n header = h(\n props.headerTag,\n {\n staticClass: 'dropdown-header',\n class: [props.headerClasses, { [`text-${props.variant}`]: props.variant }],\n attrs: {\n id: headerId,\n role: 'heading'\n }\n },\n normalizeSlot('header', {}, $scopedSlots, $slots) || props.header\n )\n }\n\n const adb = [headerId, props.ariaDescribedBy]\n .filter(identity)\n .join(' ')\n .trim()\n\n return h('li', mergeData(data, { attrs: { role: 'presentation' } }), [\n header || h(),\n h(\n 'ul',\n {\n staticClass: 'list-unstyled',\n attrs: {\n ...$attrs,\n id: props.id || null,\n role: 'group',\n 'aria-describedby': adb || null\n }\n },\n normalizeSlot('default', {}, $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 from '../../utils/vue'\nimport { mergeData } from 'vue-functional-data-merge'\nimport { arrayIncludes } from '../../utils/array'\n\nexport const props = {\n type: {\n type: String,\n default: 'iframe',\n validator: str =>\n arrayIncludes(['iframe', 'embed', 'video', 'object', 'img', 'b-img', 'b-img-lazy'], str)\n },\n tag: {\n type: String,\n default: 'div'\n },\n aspect: {\n type: String,\n default: '16by9'\n }\n}\n\n// @vue/component\nexport const BEmbed = /*#__PURE__*/ Vue.extend({\n name: 'BEmbed',\n functional: true,\n props,\n render(h, { props, data, children }) {\n return h(\n props.tag,\n {\n ref: data.ref,\n staticClass: 'embed-responsive',\n class: {\n [`embed-responsive-${props.aspect}`]: props.aspect\n }\n },\n [h(props.type, mergeData(data, { ref: '', staticClass: 'embed-responsive-item' }), children)]\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 get from '../utils/get'\nimport { stripTags } from '../utils/html'\nimport { isArray, isPlainObject, isUndefined } from '../utils/inspect'\nimport { keys } from '../utils/object'\nimport { warn } from '../utils/warn'\n\nconst OPTIONS_OBJECT_DEPRECATED_MSG =\n 'Setting prop \"options\" to an object is deprecated. Use the array format instead.'\n\n// @vue/component\nexport default {\n props: {\n options: {\n type: [Array, Object],\n default: () => []\n },\n valueField: {\n type: String,\n default: 'value'\n },\n textField: {\n type: String,\n default: 'text'\n },\n htmlField: {\n type: String,\n default: 'html'\n },\n disabledField: {\n type: String,\n default: 'disabled'\n }\n },\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 `